diff --git a/app/Http/Controllers/MemberAreaAppController.php b/app/Http/Controllers/MemberAreaAppController.php index dd6f3591..6fa679df 100644 --- a/app/Http/Controllers/MemberAreaAppController.php +++ b/app/Http/Controllers/MemberAreaAppController.php @@ -2,13 +2,13 @@ namespace App\Http\Controllers; +use App\Models\MemberActivityLog; use App\Models\MemberCertificateIssued; use App\Models\MemberComment; use App\Models\MemberCommunityPage; use App\Models\MemberCommunityPost; use App\Models\MemberCommunityPostComment; use App\Models\MemberCommunityPostLike; -use App\Models\MemberActivityLog; use App\Models\MemberInternalProduct; use App\Models\MemberLesson; use App\Models\MemberLessonLike; @@ -32,7 +32,6 @@ use Illuminate\Http\Request; use Illuminate\Support\Carbon; use Illuminate\Support\Facades\DB; -use Illuminate\Support\Facades\Http; use Inertia\Inertia; use Inertia\Response; use Symfony\Component\HttpFoundation\Response as SymfonyResponse; @@ -74,7 +73,7 @@ public function show(Request $request, string $slug): Response $user = $request->user(); $this->logMemberActivity($request, $product, $user, 'member_area.open', [ - 'path' => '/' . ltrim($request->path(), '/'), + 'path' => '/'.ltrim($request->path(), '/'), ]); $accessStartAt = $this->userAccessStartAt($product, $user); @@ -375,6 +374,7 @@ public function lesson(Request $request, string $slug, MemberLesson $lesson): Re return redirect()->route($this->memberAreaModuleRouteName($request), ['slug' => $slug, 'module' => $moduleRouteId]) ->with('error', $lessonLock['lock_message'] ?? 'Aula ainda não liberada.'); } + return redirect()->route($this->memberAreaModulosRouteName($request), ['slug' => $slug]) ->with('error', $lessonLock['lock_message'] ?? 'Aula ainda não liberada.'); } @@ -1450,6 +1450,7 @@ public function openRelatedProduct(Request $request): RedirectResponse if (! $user instanceof User) { // In host-based member areas, GET /login is handled by the platform login controller. $isHost = str_ends_with(($request->route()?->getName() ?? ''), '.host'); + return $isHost ? redirect()->to('/login')->with('error', 'Faça login para acessar a área de membros.') : redirect()->route('member-area.login', ['slug' => $slug])->with('error', 'Faça login para acessar a área de membros.'); @@ -1507,6 +1508,7 @@ public function openRelatedProductDeliverable(Request $request): RedirectRespons if (! $user instanceof User) { $isHost = str_ends_with(($request->route()?->getName() ?? ''), '.host'); + return $isHost ? redirect()->to('/login')->with('error', 'Faça login para acessar a área de membros.') : redirect()->route('member-area.login', ['slug' => $slug])->with('error', 'Faça login para acessar a área de membros.'); @@ -1552,8 +1554,9 @@ public function openRelatedProductDeliverable(Request $request): RedirectRespons if ($link !== '') { return str_starts_with($link, 'http://') || str_starts_with($link, 'https://') ? redirect()->away($link) - : redirect('/' . ltrim($link, '/')); + : redirect('/'.ltrim($link, '/')); } + return redirect()->to($this->baseUrlForRequest($host, $request)) ->with('error', 'Este produto está como tipo Link, mas o link de entrega não foi configurado.'); } @@ -1567,12 +1570,14 @@ public function openRelatedProductDeliverable(Request $request): RedirectRespons private function memberAreaProductsOpenRouteName(Request $request): string { $name = $request->route()?->getName() ?? ''; + return str_ends_with($name, '.host') ? 'member-area-app.products.open.host' : 'member-area-app.products.open'; } private function memberAreaProductsDeliverableRouteName(Request $request): string { $name = $request->route()?->getName() ?? ''; + return str_ends_with($name, '.host') ? 'member-area-app.products.deliverable.host' : 'member-area-app.products.deliverable'; } @@ -1582,6 +1587,7 @@ private function memberAreaProductsDeliverableRouteName(Request $request): strin private function memberAreaProductsRouteParams(Request $request, string $slug, string $productId): array { $isHost = str_ends_with(($request->route()?->getName() ?? ''), '.host'); + return $isHost ? ['relatedProduct' => $productId] : ['slug' => $slug, 'relatedProduct' => $productId]; } @@ -1591,6 +1597,7 @@ private function memberAreaProductsRouteParams(Request $request, string $slug, s private function memberAreaModuleRouteParams(Request $request, string $slug, string $moduleId): array { $isHost = str_ends_with(($request->route()?->getName() ?? ''), '.host'); + return $isHost ? ['module' => $moduleId] : ['slug' => $slug, 'module' => $moduleId]; } @@ -1659,7 +1666,7 @@ private function assertEmbeddedProductLinkAccess(MemberModule $wrapper, User $us if ($link !== '') { return str_starts_with($link, 'http://') || str_starts_with($link, 'https://') ? redirect()->away($link) - : redirect('/' . ltrim($link, '/')); + : redirect('/'.ltrim($link, '/')); } } @@ -1789,6 +1796,7 @@ private function userAccessStartAt(Product $product, User $user): Carbon if ($createdAt) { return Carbon::parse($createdAt); } + return now(); } @@ -1803,6 +1811,7 @@ private function scheduleMeta(?int $afterDays, mixed $atDate, Carbon $accessStar if (is_int($afterDays) && $afterDays > 0) { return ['available_at' => $accessStartAt->copy()->addDays($afterDays), 'mode' => 'days']; } + return ['available_at' => null, 'mode' => null]; } @@ -1848,12 +1857,14 @@ private function lockPayload(?Carbon $availableAt, ?Carbon $expiresAt, Carbon $n } else { $message = 'Disponível em '.$availableAt->format('d/m/Y H:i'); } + return [ ...$payload, 'is_locked' => true, 'lock_message' => $message, 'lock_reason' => 'scheduled', ]; + } /** @@ -1972,7 +1983,12 @@ private function moduleLockPayload(MemberModule $module, Carbon $accessStartAt, $meta = $this->scheduleMeta($module->release_after_days, $module->release_at_date, $accessStartAt); - return $this->lockPayload($meta['available_at'], $expiresAt, $now, $meta['mode']); + $scheduleLock = $this->lockPayload($meta['available_at'], $expiresAt, $now, $meta['mode']); + if (($scheduleLock['is_locked'] ?? false) === true) { + return $scheduleLock; + } + + return $scheduleLock; } /** @@ -2035,7 +2051,37 @@ private function lessonLockPayload(MemberLesson $lesson, ?MemberModule $module, } } - return $this->lockPayload($availableAt, $expiresAt, $now, $mode); + $scheduleLock = $this->lockPayload($availableAt, $expiresAt, $now, $mode); + if (($scheduleLock['is_locked'] ?? false) === true) { + return $scheduleLock; + } + + $user = request()->user(); + if (! $user instanceof User) { + return $scheduleLock; + } + $dependencies = $lesson->releaseDependencies()->with('requiredLesson')->get(); + if ($dependencies->isEmpty()) { + return $scheduleLock; + } + $completedIds = MemberLessonProgress::query() + ->where('user_id', $user->id) + ->whereNotNull('completed_at') + ->whereIn('member_lesson_id', $dependencies->pluck('required_member_lesson_id')) + ->pluck('member_lesson_id') + ->flip(); + foreach ($dependencies as $dependency) { + if (! isset($completedIds[$dependency->required_member_lesson_id])) { + return [ + ...$scheduleLock, + 'is_locked' => true, + 'lock_message' => 'Conclua a aula '.($dependency->requiredLesson?->title ?? 'anterior').' para liberar esta aula.', + 'lock_reason' => 'prerequisite', + ]; + } + } + + return $scheduleLock; } private function moduleThumbnailUrl(MemberModule $module, Product $product, ?MemberModule $fallback = null): ?string diff --git a/app/Http/Controllers/MemberBuilderController.php b/app/Http/Controllers/MemberBuilderController.php index 79a26557..6d485cac 100644 --- a/app/Http/Controllers/MemberBuilderController.php +++ b/app/Http/Controllers/MemberBuilderController.php @@ -5,40 +5,39 @@ use App\Models\MemberAreaDomain; use App\Models\MemberComment; use App\Models\MemberCommunityPage; -use App\Models\MemberCommunityPost; use App\Models\MemberInternalProduct; use App\Models\MemberLesson; use App\Models\MemberLessonProgress; use App\Models\MemberModule; +use App\Models\MemberNotification; +use App\Models\MemberPushSubscription; use App\Models\MemberSection; use App\Models\MemberTurma; use App\Models\Product; use App\Models\User; -use App\Models\MemberNotification; -use App\Models\MemberPushSubscription; use App\Rules\StorageOrHttpUrl; -use App\Support\StoredFileUrl; -use Illuminate\Support\Facades\Hash; +use App\Services\GamificationService; use App\Services\MemberAreaResolver; use App\Services\MemberCommentService; -use App\Services\StorageService; -use App\Services\GamificationService; use App\Services\MemberProgressService; +use App\Services\StorageService; use App\Services\TeamAccessService; +use App\Support\StoredFileUrl; +use App\Support\VapidKeyGenerator; +use Illuminate\Database\QueryException; use Illuminate\Http\JsonResponse; use Illuminate\Http\RedirectResponse; use Illuminate\Http\Request; -use Illuminate\Database\QueryException; use Illuminate\Support\Facades\DB; +use Illuminate\Support\Facades\Hash; use Illuminate\Support\Facades\Log; use Illuminate\Validation\Rule; use Illuminate\Validation\ValidationException; use Illuminate\View\View; use Inertia\Inertia; use Inertia\Response; -use App\Support\VapidKeyGenerator; -use Minishlink\WebPush\WebPush; use Minishlink\WebPush\Subscription; +use Minishlink\WebPush\WebPush; class MemberBuilderController extends Controller { @@ -55,6 +54,7 @@ private function normalizeLessonContentFiles(mixed $input): array if ($url !== '' && StoredFileUrl::isValid($url)) { $out[] = ['url' => StoredFileUrl::normalize($url), 'name' => 'Material']; } + continue; } if (! is_array($item)) { @@ -116,6 +116,7 @@ public function index(Product $produto): View|RedirectResponse $produto->load([ 'memberAreaDomain', 'memberSections.modules.lessons', + 'memberSections.modules.lessons.releaseDependencies', 'memberSections.modules.relatedProduct', 'memberInternalProducts.relatedProduct', 'memberTurmas.users:id,name,email', @@ -230,6 +231,7 @@ public function index(Product $produto): View|RedirectResponse 'release_after_days' => $l->release_after_days, 'release_at_date' => $l->release_at_date?->format('Y-m-d'), 'access_duration_days' => $l->access_duration_days, + 'release_dependency_lesson_ids' => $l->releaseDependencies->pluck('required_member_lesson_id')->map(fn ($id) => (int) $id)->values()->all(), 'content_text' => \App\Support\HtmlSanitizer::sanitize($l->content_text), 'duration_seconds' => $l->duration_seconds, 'is_free' => $l->is_free, @@ -247,6 +249,7 @@ public function index(Product $produto): View|RedirectResponse 'image_url' => $m->relatedProduct->image ? app(StorageService::class)->url($m->relatedProduct->image) : null, ] : null, ]); + return array_merge($base, $extra); })->values()->all(), ])->values()->all(), @@ -374,6 +377,7 @@ public function updateConfig(Request $request, Product $produto): JsonResponse|R 'message' => 'O segmento do path deve ter entre 6 e 16 caracteres (apenas letras minúsculas e números).', ], 422); } + return back()->with('error', 'O segmento do path deve ter entre 6 e 16 caracteres (apenas letras minúsculas e números).'); } $conflictProduct = Product::where('checkout_slug', $pathSegment) @@ -390,6 +394,7 @@ public function updateConfig(Request $request, Product $produto): JsonResponse|R 'message' => 'Este segmento de URL já está em uso por outra área de membros.', ], 422); } + return back()->with('error', 'Este segmento de URL já está em uso por outra área de membros.'); } } @@ -467,6 +472,7 @@ public function updateConfig(Request $request, Product $produto): JsonResponse|R 'message' => 'Informe um domínio ou subdomínio válido (apenas o host, sem https:// e sem /path).', ], 422); } + return back()->with('error', 'Informe um domínio ou subdomínio válido (apenas o host, sem https:// e sem /path).'); } $conflictCustom = MemberAreaDomain::where('type', MemberAreaDomain::TYPE_CUSTOM) @@ -479,6 +485,7 @@ public function updateConfig(Request $request, Product $produto): JsonResponse|R 'message' => 'Este domínio já está vinculado a outra área de membros.', ], 422); } + return back()->with('error', 'Este domínio já está vinculado a outra área de membros.'); } } @@ -493,6 +500,7 @@ public function updateConfig(Request $request, Product $produto): JsonResponse|R if ($vapidWarning !== null) { $json['warning'] = $vapidWarning; } + return response()->json($json); } @@ -511,7 +519,8 @@ public function uploadImage(Request $request, Product $produto): JsonResponse 'file.max' => 'A imagem deve ter no máximo '.(int) max(1, floor($maxKb / 1024)).' MB.', ]); $storage = app(StorageService::class); - $path = $storage->putFile('member-area/' . $produto->id, $request->file('file')); + $path = $storage->putFile('member-area/'.$produto->id, $request->file('file')); + return response()->json(['url' => $storage->url($path), 'path' => $path]); } @@ -528,9 +537,10 @@ public function uploadPdf(Request $request, Product $produto): JsonResponse ]); $file = $request->file('file'); $name = $file->getClientOriginalName(); - $safeName = preg_replace('/[^a-zA-Z0-9._-]/', '_', pathinfo($name, PATHINFO_FILENAME)) . '.pdf'; + $safeName = preg_replace('/[^a-zA-Z0-9._-]/', '_', pathinfo($name, PATHINFO_FILENAME)).'.pdf'; $storage = app(StorageService::class); - $path = $storage->putFileAs('member-area/' . $produto->id, $file, $safeName); + $path = $storage->putFileAs('member-area/'.$produto->id, $file, $safeName); + return response()->json(['url' => $storage->url($path), 'path' => $path]); } @@ -549,7 +559,8 @@ public function uploadBadge(Request $request, Product $produto): JsonResponse 'file.max' => 'A imagem da badge deve ter no máximo '.(int) max(1, floor($maxKb / 1024)).' MB.', ]); $storage = app(StorageService::class); - $path = $storage->putFile('member-area-gamification/' . $produto->id . '/badges', $request->file('file')); + $path = $storage->putFile('member-area-gamification/'.$produto->id.'/badges', $request->file('file')); + return response()->json(['url' => $storage->url($path), 'path' => $path]); } @@ -573,6 +584,7 @@ public function storeSection(Request $request, Product $produto): JsonResponse|R if ($request->expectsJson()) { return response()->json(['message' => 'Seção criada.']); } + return back()->with('success', 'Seção criada.'); } @@ -592,6 +604,7 @@ public function updateSection(Request $request, Product $produto, MemberSection if ($request->expectsJson()) { return response()->json(['message' => 'Seção atualizada.']); } + return back()->with('success', 'Seção atualizada.'); } @@ -605,6 +618,7 @@ public function destroySection(Request $request, Product $produto, MemberSection if ($request->expectsJson()) { return response()->json(['message' => 'Seção removida.']); } + return back()->with('success', 'Seção removida.'); } @@ -706,6 +720,7 @@ private function applyMemberSectionReorder(Product $produto, array $orderedIds): foreach ($orderedIds as $index => $id) { MemberSection::query()->where('product_id', $produto->id)->whereKey($id)->update(['position' => $index + 1]); } + } /** @param array $orderedIds */ @@ -731,6 +746,7 @@ private function applyMemberModuleReorder(Product $produto, int $sectionId, arra ->whereKey($id) ->update(['position' => $index + 1]); } + } /** @param array $orderedIds */ @@ -756,6 +772,24 @@ private function applyMemberLessonReorder(Product $produto, int $moduleId, array ->whereKey($id) ->update(['position' => $index + 1]); } + + $this->pruneInvalidLessonReleaseDependencies($module); + } + + private function pruneInvalidLessonReleaseDependencies(MemberModule $module): void + { + $previousLessonIds = []; + + foreach ($module->lessons()->orderBy('position')->get() as $lesson) { + $dependencies = $lesson->releaseDependencies(); + if ($previousLessonIds === []) { + $dependencies->delete(); + } else { + $dependencies->whereNotIn('required_member_lesson_id', $previousLessonIds)->delete(); + } + + $previousLessonIds[] = (int) $lesson->id; + } } /** @@ -831,6 +865,7 @@ public function storeModule(Request $request, Product $produto, MemberSection $s if ($request->expectsJson()) { return response()->json(['message' => 'Não é possível referenciar o próprio produto.'], 422); } + return back()->with('error', 'Não é possível referenciar o próprio produto.'); } $max = MemberModule::where('member_section_id', $section->id)->max('position') ?? 0; @@ -927,6 +962,7 @@ public function storeModule(Request $request, Product $produto, MemberSection $s return response()->json(['message' => 'Módulo criado.', 'module' => $payload, 'modules' => [$payload]]); } + return back()->with('success', 'Módulo criado.'); } @@ -981,6 +1017,57 @@ private function moduleJsonPayloadForStore(MemberModule $module): array return $payload; } + /** @return \Illuminate\Support\Collection */ + private function orderedCourseModules(Product $product): \Illuminate\Support\Collection + { + return $product->memberSections() + ->where('section_type', 'courses') + ->orderBy('position') + ->with(['modules' => fn ($query) => $query->orderBy('position')]) + ->get() + ->flatMap(fn (MemberSection $section) => $section->modules) + ->values(); + } + + /** @param array $dependencyIds */ + private function syncLessonReleaseDependencies(MemberModule $module, MemberLesson $lesson, array $dependencyIds): void + { + $this->assertLessonReleaseDependenciesAreValid($module, $lesson, $dependencyIds); + + $ids = array_values(array_unique(array_map('intval', $dependencyIds))); + $lesson->releaseDependencies()->delete(); + $lesson->releaseDependencies()->createMany(array_map(fn (int $id) => [ + 'required_member_lesson_id' => $id, + ], $ids)); + } + + /** @param array $dependencyIds */ + private function assertLessonReleaseDependenciesAreValid(MemberModule $module, MemberLesson $lesson, array $dependencyIds): void + { + $ids = array_values(array_unique(array_map('intval', $dependencyIds))); + $orderedLessons = $module->lessons()->orderBy('position')->get(); + $currentIndex = $orderedLessons->search(fn (MemberLesson $candidate) => $candidate->id === $lesson->id); + $allowedIds = $currentIndex === false ? [] : $orderedLessons->take($currentIndex)->pluck('id')->map(fn ($id) => (int) $id)->all(); + if ($ids !== [] && array_diff($ids, $allowedIds) !== []) { + throw ValidationException::withMessages([ + 'release_dependency_lesson_ids' => ['Selecione apenas aulas anteriores deste módulo.'], + ]); + } + } + + /** @param array $dependencyIds */ + private function assertNewLessonReleaseDependenciesAreValid(MemberModule $module, array $dependencyIds): void + { + $ids = array_values(array_unique(array_map('intval', $dependencyIds))); + $allowedIds = $module->lessons()->pluck('id')->map(fn ($id) => (int) $id)->all(); + + if ($ids !== [] && array_diff($ids, $allowedIds) !== []) { + throw ValidationException::withMessages([ + 'release_dependency_lesson_ids' => ['Selecione apenas aulas anteriores deste módulo.'], + ]); + } + } + public function updateModule(Request $request, Product $produto, MemberModule $module): JsonResponse|RedirectResponse { $this->authorizeProduct($produto); @@ -1028,6 +1115,7 @@ public function updateModule(Request $request, Product $produto, MemberModule $m if ($request->expectsJson()) { return response()->json(['message' => 'Não é possível referenciar o próprio produto.'], 422); } + return back()->with('error', 'Não é possível referenciar o próprio produto.'); } } @@ -1044,6 +1132,7 @@ public function updateModule(Request $request, Product $produto, MemberModule $m if ($request->expectsJson()) { return response()->json(['message' => 'Módulo atualizado.']); } + return back()->with('success', 'Módulo atualizado.'); } @@ -1057,6 +1146,7 @@ public function destroyModule(Request $request, Product $produto, MemberModule $ if ($request->expectsJson()) { return response()->json(['message' => 'Módulo removido.']); } + return back()->with('success', 'Módulo removido.'); } @@ -1110,17 +1200,19 @@ public function storeLesson(Request $request, Product $produto, MemberModule $mo 'content_url' => ['nullable', 'string', 'max:2000'], 'link_title' => ['nullable', 'string', 'max:255'], 'content_files' => ['nullable', 'array', 'max:30'], - 'content_files.*.url' => ['nullable', 'string', 'max:2000', new StorageOrHttpUrl()], + 'content_files.*.url' => ['nullable', 'string', 'max:2000', new StorageOrHttpUrl], 'content_files.*.name' => ['nullable', 'string', 'max:255'], 'support_files' => ['nullable', 'array', 'max:30'], - 'support_files.*.url' => ['nullable', 'string', 'max:2000', new StorageOrHttpUrl()], + 'support_files.*.url' => ['nullable', 'string', 'max:2000', new StorageOrHttpUrl], 'support_files.*.name' => ['nullable', 'string', 'max:255'], 'useful_links' => ['nullable', 'array', 'max:20'], 'useful_links.*.title' => ['nullable', 'string', 'max:255'], - 'useful_links.*.url' => ['nullable', 'string', 'max:2000', new StorageOrHttpUrl()], + 'useful_links.*.url' => ['nullable', 'string', 'max:2000', new StorageOrHttpUrl], 'release_after_days' => ['nullable', 'integer', 'min:1', 'max:3650'], 'release_at_date' => ['nullable', 'date_format:Y-m-d'], 'access_duration_days' => ['nullable', 'integer', 'min:1', 'max:3650'], + 'release_dependency_lesson_ids' => ['nullable', 'array'], + 'release_dependency_lesson_ids.*' => ['integer', 'distinct'], 'content_text' => ['nullable', 'string'], 'duration_seconds' => ['nullable', 'integer', 'min:0'], 'is_free' => ['boolean'], @@ -1163,8 +1255,12 @@ public function storeLesson(Request $request, Product $produto, MemberModule $mo 'is_free' => $request->boolean('is_free', false), 'watermark_enabled' => $request->boolean('watermark_enabled', false), ]); + $dependencyLessonIds = $validated['release_dependency_lesson_ids'] ?? []; + $this->assertNewLessonReleaseDependenciesAreValid($module, $dependencyLessonIds); + try { - MemberLesson::create($attributes); + $lesson = MemberLesson::create($attributes); + $this->syncLessonReleaseDependencies($module, $lesson, $dependencyLessonIds); } catch (QueryException $e) { Log::warning('member_lesson create failed', ['error' => $e->getMessage(), 'product_id' => $produto->id]); @@ -1178,6 +1274,7 @@ public function storeLesson(Request $request, Product $produto, MemberModule $mo if ($request->expectsJson()) { return response()->json(['message' => 'Aula criada.']); } + return back()->with('success', 'Aula criada.'); } @@ -1194,17 +1291,19 @@ public function updateLesson(Request $request, Product $produto, MemberLesson $l 'content_url' => ['nullable', 'string', 'max:2000'], 'link_title' => ['nullable', 'string', 'max:255'], 'content_files' => ['nullable', 'array', 'max:30'], - 'content_files.*.url' => ['nullable', 'string', 'max:2000', new StorageOrHttpUrl()], + 'content_files.*.url' => ['nullable', 'string', 'max:2000', new StorageOrHttpUrl], 'content_files.*.name' => ['nullable', 'string', 'max:255'], 'support_files' => ['nullable', 'array', 'max:30'], - 'support_files.*.url' => ['nullable', 'string', 'max:2000', new StorageOrHttpUrl()], + 'support_files.*.url' => ['nullable', 'string', 'max:2000', new StorageOrHttpUrl], 'support_files.*.name' => ['nullable', 'string', 'max:255'], 'useful_links' => ['nullable', 'array', 'max:20'], 'useful_links.*.title' => ['nullable', 'string', 'max:255'], - 'useful_links.*.url' => ['nullable', 'string', 'max:2000', new StorageOrHttpUrl()], + 'useful_links.*.url' => ['nullable', 'string', 'max:2000', new StorageOrHttpUrl], 'release_after_days' => ['nullable', 'integer', 'min:1', 'max:3650'], 'release_at_date' => ['nullable', 'date_format:Y-m-d'], 'access_duration_days' => ['nullable', 'integer', 'min:1', 'max:3650'], + 'release_dependency_lesson_ids' => ['nullable', 'array'], + 'release_dependency_lesson_ids.*' => ['integer', 'distinct'], 'content_text' => ['nullable', 'string'], 'duration_seconds' => ['nullable', 'integer', 'min:0'], 'is_free' => ['boolean'], @@ -1254,8 +1353,17 @@ public function updateLesson(Request $request, Product $produto, MemberLesson $l if ($request->has('useful_links')) { $validated['useful_links'] = $usefulLinks !== [] ? $usefulLinks : null; } + $dependencyLessonIds = $validated['release_dependency_lesson_ids'] ?? null; + if ($dependencyLessonIds !== null) { + $this->assertLessonReleaseDependenciesAreValid($lesson->module, $lesson, $dependencyLessonIds); + } + unset($validated['release_dependency_lesson_ids']); + try { $lesson->update(MemberLesson::onlyExistingColumns($validated)); + if ($dependencyLessonIds !== null) { + $this->syncLessonReleaseDependencies($lesson->module, $lesson, $dependencyLessonIds); + } } catch (QueryException $e) { Log::warning('member_lesson update failed', ['error' => $e->getMessage(), 'lesson_id' => $lesson->id]); @@ -1269,6 +1377,7 @@ public function updateLesson(Request $request, Product $produto, MemberLesson $l if ($request->expectsJson()) { return response()->json(['message' => 'Aula atualizada.']); } + return back()->with('success', 'Aula atualizada.'); } @@ -1282,6 +1391,7 @@ public function destroyLesson(Request $request, Product $produto, MemberLesson $ if ($request->expectsJson()) { return response()->json(['message' => 'Aula removida.']); } + return back()->with('success', 'Aula removida.'); } @@ -1329,6 +1439,7 @@ public function storeInternalProduct(Request $request, Product $produto): Redire ['product_id' => $produto->id, 'related_product_id' => $validated['related_product_id']], ['position' => $max + 1] ); + return back()->with('success', 'Produto adicionado à loja interna.'); } @@ -1339,6 +1450,7 @@ public function destroyInternalProduct(Product $produto, MemberInternalProduct $ abort(404); } $internalProduct->delete(); + return back()->with('success', 'Produto removido da loja interna.'); } @@ -1361,6 +1473,7 @@ public function storeTurma(Request $request, Product $produto): RedirectResponse 'end_date' => $validated['end_date'] ?? null, 'position' => $max + 1, ]); + return back()->with('success', 'Turma criada.'); } @@ -1378,6 +1491,7 @@ public function updateTurma(Request $request, Product $produto, MemberTurma $tur 'position' => ['sometimes', 'integer', 'min:0'], ]); $turma->update($validated); + return back()->with('success', 'Turma atualizada.'); } @@ -1388,6 +1502,7 @@ public function destroyTurma(Product $produto, MemberTurma $turma): RedirectResp abort(404); } $turma->delete(); + return back()->with('success', 'Turma removida.'); } @@ -1402,6 +1517,7 @@ public function attachTurmaUser(Request $request, Product $produto, MemberTurma if ($request->expectsJson()) { return response()->json(['message' => 'Aluno adicionado à turma.']); } + return back()->with('success', 'Aluno adicionado à turma.'); } @@ -1415,6 +1531,7 @@ public function detachTurmaUser(Product $produto, MemberTurma $turma, int $userI if ($request->expectsJson()) { return response()->json(['message' => 'Aluno removido da turma.']); } + return back()->with('success', 'Aluno removido da turma.'); } @@ -1437,6 +1554,7 @@ public function storeNewAluno(Request $request, Product $produto): JsonResponse| if ($request->expectsJson()) { return response()->json(['message' => 'Turma inválida.'], 422); } + return back()->with('error', 'Turma inválida.'); } } @@ -1450,6 +1568,7 @@ public function storeNewAluno(Request $request, Product $produto): JsonResponse| if ($request->expectsJson()) { return response()->json(['message' => $msg, 'errors' => ['email' => [$msg]]], 422); } + return back()->with('error', $msg); } if (! $existing->isAluno()) { @@ -1457,6 +1576,7 @@ public function storeNewAluno(Request $request, Product $produto): JsonResponse| if ($request->expectsJson()) { return response()->json(['message' => $msg, 'errors' => ['email' => [$msg]]], 422); } + return back()->with('error', $msg); } @@ -1482,6 +1602,7 @@ public function storeNewAluno(Request $request, Product $produto): JsonResponse| if ($request->expectsJson()) { return response()->json(['message' => $msg, 'errors' => ['password' => [$msg]]], 422); } + return back()->with('error', $msg); } @@ -1503,6 +1624,7 @@ public function storeNewAluno(Request $request, Product $produto): JsonResponse| 'user' => ['id' => $user->id, 'name' => $user->name, 'email' => $user->email], ]); } + return back()->with('success', 'Aluno criado e adicionado.'); } @@ -1516,6 +1638,7 @@ public function commentsIndex(Request $request, Product $produto): Response ->with(['user:id,name,email', 'lesson:id,title', 'reviewer:id,name']) ->latest() ->paginate(20); + return Inertia::render('Produtos/MemberBuilder/Comments', [ 'produto' => ['id' => $produto->id, 'name' => $produto->name], 'comments' => $comments, @@ -1539,6 +1662,7 @@ public function updateComment(Request $request, Product $produto, MemberComment if ($request->expectsJson()) { return response()->json(['success' => true, 'message' => 'Comentário atualizado.']); } + return back()->with('success', 'Comentário atualizado.'); } @@ -1577,6 +1701,7 @@ public function storeCommunityPage(Request $request, Product $produto): JsonResp 'community_pages' => $this->buildCommunityPagesPayload($produto), ]); } + return back()->with('success', 'Página da comunidade criada.'); } @@ -1607,6 +1732,7 @@ public function updateCommunityPage(Request $request, Product $produto, MemberCo 'community_pages' => $this->buildCommunityPagesPayload($produto), ]); } + return back()->with('success', 'Página atualizada.'); } @@ -1624,6 +1750,7 @@ public function destroyCommunityPage(Request $request, Product $produto, MemberC 'community_pages' => $this->buildCommunityPagesPayload($produto), ]); } + return back()->with('success', 'Página removida.'); } @@ -1633,6 +1760,7 @@ public function destroyCommunityPage(Request $request, Product $produto, MemberC private function buildCommunityPagesPayload(Product $produto): array { $produto->load('memberCommunityPages'); + return $produto->memberCommunityPages->map(fn (MemberCommunityPage $p) => [ 'id' => $p->id, 'title' => $p->title, @@ -1669,7 +1797,7 @@ public function sendPushNotification(Request $request, Product $produto): JsonRe } $subscriptions = MemberPushSubscription::where('product_id', $produto->id)->get(); $sent = 0; - $subject = 'mailto:' . (config('mail.from.address') ?: 'noreply@' . parse_url(config('app.url'), PHP_URL_HOST)); + $subject = 'mailto:'.(config('mail.from.address') ?: 'noreply@'.parse_url(config('app.url'), PHP_URL_HOST)); $auth = [ 'VAPID' => [ 'subject' => $subject, @@ -1716,8 +1844,9 @@ public function sendPushNotification(Request $request, Product $produto): JsonRe ]); } } catch (\Throwable $e) { - return response()->json(['message' => 'Erro ao enviar: ' . $e->getMessage()], 500); + return response()->json(['message' => 'Erro ao enviar: '.$e->getMessage()], 500); } + return response()->json([ 'success' => true, 'sent' => $sent, @@ -1736,6 +1865,7 @@ private function normalizeBase64KeyForPush(string $key): string if (str_contains($key, '+') || str_contains($key, '/')) { return strtr($key, ['+' => '-', '/' => '_']); } + return $key; } @@ -1810,7 +1940,7 @@ private function ipInCidr(string $ip, string $cidr): bool $mask = $bitsInt === 0 ? 0 : (-1 << (32 - $bitsInt)); - return (($ipLong & $mask) === ($subnetLong & $mask)); + return ($ipLong & $mask) === ($subnetLong & $mask); } /** Para o front: exibe só "path" ou "custom". Subdomínio vira custom com valor = host completo. */ @@ -1825,8 +1955,10 @@ private function memberAreaDomainValueForFront(MemberAreaDomain $domain, Product if ($domain->type === MemberAreaDomain::TYPE_SUBDOMAIN && config('members.subdomain_enabled')) { $base = config('members.subdomain_base', ''); $slug = $domain->value ?: $product->checkout_slug; - return $base !== '' ? $slug . '.' . $base : (string) $domain->value; + + return $base !== '' ? $slug.'.'.$base : (string) $domain->value; } + return (string) ($domain->value ?? ''); } @@ -1916,6 +2048,8 @@ private function duplicateMemberLessonRecord( */ private function serializeMemberLessonForBuilder(MemberLesson $lesson): array { + $lesson->loadMissing('releaseDependencies'); + return [ 'id' => $lesson->id, 'title' => $lesson->title, @@ -1929,6 +2063,7 @@ private function serializeMemberLessonForBuilder(MemberLesson $lesson): array 'release_after_days' => $lesson->release_after_days, 'release_at_date' => $lesson->release_at_date?->format('Y-m-d'), 'access_duration_days' => $lesson->access_duration_days, + 'release_dependency_lesson_ids' => $lesson->releaseDependencies->pluck('required_member_lesson_id')->map(fn ($id) => (int) $id)->values()->all(), 'content_text' => \App\Support\HtmlSanitizer::sanitize($lesson->content_text), 'duration_seconds' => $lesson->duration_seconds, 'is_free' => (bool) $lesson->is_free, @@ -1941,7 +2076,7 @@ private function serializeMemberLessonForBuilder(MemberLesson $lesson): array */ private function serializeMemberModuleForBuilder(MemberModule $module): array { - $module->loadMissing(['lessons' => fn ($q) => $q->orderBy('position'), 'relatedProduct']); + $module->loadMissing(['lessons' => fn ($q) => $q->orderBy('position'), 'lessons.releaseDependencies', 'relatedProduct']); $payload = [ 'id' => $module->id, diff --git a/app/Models/MemberLesson.php b/app/Models/MemberLesson.php index 920073f2..a0728336 100644 --- a/app/Models/MemberLesson.php +++ b/app/Models/MemberLesson.php @@ -10,12 +10,17 @@ class MemberLesson extends Model { public const TYPE_VIDEO = 'video'; + public const TYPE_LINK = 'link'; + public const TYPE_PDF = 'pdf'; + /** Slides / leitura em tela com navegação por páginas (pdf.js), distinto de "Material" (download). */ public const TYPE_PDF_PRESENTATION = 'pdf_presentation'; + /** Leitor de PDF completo (marcações, miniaturas, curtidas) — mesma origem de arquivo que pdf_presentation. */ public const TYPE_PDF_READER = 'pdf_reader'; + public const TYPE_TEXT = 'text'; protected $fillable = [ @@ -80,6 +85,11 @@ public function pdfAnnotations(): HasMany return $this->hasMany(MemberLessonPdfAnnotation::class, 'member_lesson_id'); } + public function releaseDependencies(): HasMany + { + return $this->hasMany(MemberLessonReleaseDependency::class, 'member_lesson_id'); + } + /** * @param array $attributes * @return array diff --git a/app/Models/MemberLessonReleaseDependency.php b/app/Models/MemberLessonReleaseDependency.php new file mode 100644 index 00000000..3a55834f --- /dev/null +++ b/app/Models/MemberLessonReleaseDependency.php @@ -0,0 +1,16 @@ +belongsTo(MemberLesson::class, 'required_member_lesson_id'); + } +} diff --git a/app/Models/MemberModule.php b/app/Models/MemberModule.php index 370bb8ae..25acf967 100644 --- a/app/Models/MemberModule.php +++ b/app/Models/MemberModule.php @@ -63,4 +63,5 @@ public function lessons(): HasMany { return $this->hasMany(MemberLesson::class, 'member_module_id')->orderBy('position'); } + } diff --git a/database/migrations/2026_07_31_000001_create_member_module_release_dependencies_table.php b/database/migrations/2026_07_31_000001_create_member_module_release_dependencies_table.php new file mode 100644 index 00000000..fd25aa09 --- /dev/null +++ b/database/migrations/2026_07_31_000001_create_member_module_release_dependencies_table.php @@ -0,0 +1,34 @@ +id(); + $table->foreignId('member_module_id'); + $table->foreignId('required_member_module_id'); + $table->unsignedTinyInteger('minimum_progress_percent')->default(100); + $table->timestamps(); + + $table->unique(['member_module_id', 'required_member_module_id'], 'member_module_release_dependency_unique'); + $table->foreign('member_module_id', 'mm_release_dep_module_fk') + ->references('id')->on('member_modules')->cascadeOnDelete(); + $table->foreign('required_member_module_id', 'mm_release_dep_required_fk') + ->references('id')->on('member_modules')->cascadeOnDelete(); + }); + } + + public function down(): void + { + Schema::dropIfExists('member_module_release_dependencies'); + } +}; diff --git a/database/migrations/2026_07_31_000002_create_member_lesson_release_dependencies_table.php b/database/migrations/2026_07_31_000002_create_member_lesson_release_dependencies_table.php new file mode 100644 index 00000000..e3af6b80 --- /dev/null +++ b/database/migrations/2026_07_31_000002_create_member_lesson_release_dependencies_table.php @@ -0,0 +1,27 @@ +id(); + $table->foreignId('member_lesson_id'); + $table->foreignId('required_member_lesson_id'); + $table->timestamps(); + $table->unique(['member_lesson_id', 'required_member_lesson_id'], 'ml_release_dependency_unique'); + $table->foreign('member_lesson_id', 'ml_release_dep_lesson_fk')->references('id')->on('member_lessons')->cascadeOnDelete(); + $table->foreign('required_member_lesson_id', 'ml_release_dep_required_fk')->references('id')->on('member_lessons')->cascadeOnDelete(); + }); + } + + public function down(): void + { + Schema::dropIfExists('member_lesson_release_dependencies'); + } +}; diff --git a/database/migrations/2026_08_14_000000_drop_member_module_release_dependencies_table.php b/database/migrations/2026_08_14_000000_drop_member_module_release_dependencies_table.php new file mode 100644 index 00000000..5195cff2 --- /dev/null +++ b/database/migrations/2026_08_14_000000_drop_member_module_release_dependencies_table.php @@ -0,0 +1,34 @@ +id(); + $table->foreignId('member_module_id'); + $table->foreignId('required_member_module_id'); + $table->unsignedTinyInteger('minimum_progress_percent')->default(100); + $table->timestamps(); + + $table->unique(['member_module_id', 'required_member_module_id'], 'member_module_release_dependency_unique'); + $table->foreign('member_module_id', 'mm_release_dep_module_fk') + ->references('id')->on('member_modules')->cascadeOnDelete(); + $table->foreign('required_member_module_id', 'mm_release_dep_required_fk') + ->references('id')->on('member_modules')->cascadeOnDelete(); + }); + } +}; diff --git a/public/build/assets/Affiliates-CZcIY6hu.js b/public/build/assets/Affiliates-DFbpPYVO.js similarity index 96% rename from public/build/assets/Affiliates-CZcIY6hu.js rename to public/build/assets/Affiliates-DFbpPYVO.js index 938ce8ce..00da9914 100644 --- a/public/build/assets/Affiliates-CZcIY6hu.js +++ b/public/build/assets/Affiliates-DFbpPYVO.js @@ -1 +1 @@ -import{l as p,b as m,r as x}from"./Toggle-BD3dflqy.js";import{_ as j}from"./app-CKysWbKx.js";import{_ as A}from"./ProdutosTabs-CmQIbd5Z.js";import{_ as w}from"./ProductPartnersTable-YFqRcSS_.js";import{o as i,c as r,a as o,g as u,h as f,F as _,f as N,u as k,i as y,d as s,t as n,y as B,n as b}from"./runtime-dom.esm-bundler-OrSu0e66.js";import"./HorizontalScrollTabs-B3gLPvR5.js";import"./handshake-ChMiz3jx.js";import"./user-plus-Ci3SykZs.js";import"./ellipsis-vertical-DayR1-An.js";const V={class:"space-y-6"},L=["onClick"],O=["onClick"],T=["onClick"],F={key:0,class:"rounded-xl border border-zinc-200 bg-zinc-50/50 dark:border-zinc-700 dark:bg-zinc-900/30"},P={class:"cursor-pointer px-4 py-3 text-sm font-medium text-zinc-700 dark:text-zinc-300"},R={class:"divide-y border-t border-zinc-200 dark:divide-zinc-700 dark:border-zinc-700"},q={class:"font-medium text-zinc-900 dark:text-white"},D={class:"text-xs text-zinc-500"},U=Object.assign({layout:j},{__name:"Affiliates",props:{affiliates:{type:Object,required:!0},programs:{type:Array,default:()=>[]},products:{type:Array,default:()=>[]},filters:{type:Object,default:()=>({})}},setup(d){const g=d,v=b(()=>g.affiliates?.data??[]),h=b(()=>v.value.map(e=>({id:e.id,created_at:e.created_at,name:e.user?.name??null,email:e.user?.email??null,product_name:e.product_name,commission_percent:e.commission_percent,status:e.status,product_id:e.product_id,affiliate_link:e.affiliate_link})));async function z(e,a){await m.put(`/produtos/${a}/affiliates/${e}`,{status:"approved"}),x.reload({only:["affiliates"]})}async function C(e,a){await m.put(`/produtos/${a}/affiliates/${e}`,{status:"rejected"}),x.reload({only:["affiliates"]})}function $(e){e&&navigator.clipboard?.writeText(e)}return(e,a)=>(i(),r("div",V,[a[2]||(a[2]=o("div",null,[o("h1",{class:"text-2xl font-bold text-zinc-900 dark:text-white"},"Afiliados"),o("p",{class:"mt-1 text-sm text-zinc-500"}," Todos os afiliados da conta. Para configurar comissão e página pública, abra o produto. ")],-1)),u(A),u(w,{rows:h.value,"empty-label":"Nenhum afiliado encontrado."},{menu:f(({row:t,close:l})=>[t?(i(),r(_,{key:0},[t.product_id?(i(),N(k(p),{key:0,href:`/produtos/${t.product_id}/edit?tab=afiliados`,class:"flex w-full px-3 py-2 text-left text-sm text-zinc-700 hover:bg-zinc-100 dark:text-zinc-300 dark:hover:bg-zinc-800",onClick:c=>l()},{default:f(()=>[...a[0]||(a[0]=[y(" Configurar programa ",-1)])]),_:1},8,["href","onClick"])):s("",!0),t.affiliate_link?(i(),r("button",{key:1,type:"button",class:"flex w-full px-3 py-2 text-left text-sm text-zinc-700 hover:bg-zinc-100 dark:text-zinc-300 dark:hover:bg-zinc-800",onClick:c=>{$(t.affiliate_link),l()}}," Copiar link ",8,L)):s("",!0),t.status==="pending"?(i(),r("button",{key:2,type:"button",class:"flex w-full px-3 py-2 text-left text-sm text-emerald-700 hover:bg-emerald-50 dark:text-emerald-300 dark:hover:bg-emerald-900/20",onClick:c=>{z(t.id,t.product_id),l()}}," Aprovar ",8,O)):s("",!0),t.status==="pending"?(i(),r("button",{key:3,type:"button",class:"flex w-full px-3 py-2 text-left text-sm text-zinc-700 hover:bg-zinc-100 dark:text-zinc-300 dark:hover:bg-zinc-800",onClick:c=>{C(t.id,t.product_id),l()}}," Rejeitar ",8,T)):s("",!0)],64)):s("",!0)]),_:1},8,["rows"]),d.programs.length?(i(),r("details",F,[o("summary",P," Programas por produto ("+n(d.programs.length)+") ",1),o("ul",R,[(i(!0),r(_,null,B(d.programs,t=>(i(),r("li",{key:t.product_id,class:"flex flex-wrap items-center justify-between gap-2 px-4 py-3 text-sm"},[o("div",null,[o("p",q,n(t.product_name),1),o("p",D,n(t.enabled?"Ativo":"Inativo")+" · "+n(t.affiliates_count)+" aprovados · "+n(t.pending_count)+" pendentes ",1)]),u(k(p),{href:`/produtos/${t.product_id}/edit?tab=afiliados`,class:"text-[var(--color-primary)] hover:underline"},{default:f(()=>[...a[1]||(a[1]=[y(" Configurar ",-1)])]),_:1},8,["href"])]))),128))])])):s("",!0)]))}});export{U as default}; +import{l as p,b as m,r as x}from"./Toggle-BD3dflqy.js";import{_ as j}from"./app-CT8pqccC.js";import{_ as A}from"./ProdutosTabs-DsnePWTy.js";import{_ as w}from"./ProductPartnersTable-YFqRcSS_.js";import{o as i,c as r,a as o,g as u,h as f,F as _,f as N,u as k,i as y,d as s,t as n,y as B,n as b}from"./runtime-dom.esm-bundler-OrSu0e66.js";import"./HorizontalScrollTabs-B3gLPvR5.js";import"./handshake-ChMiz3jx.js";import"./user-plus-Ci3SykZs.js";import"./ellipsis-vertical-DayR1-An.js";const V={class:"space-y-6"},L=["onClick"],O=["onClick"],T=["onClick"],F={key:0,class:"rounded-xl border border-zinc-200 bg-zinc-50/50 dark:border-zinc-700 dark:bg-zinc-900/30"},P={class:"cursor-pointer px-4 py-3 text-sm font-medium text-zinc-700 dark:text-zinc-300"},R={class:"divide-y border-t border-zinc-200 dark:divide-zinc-700 dark:border-zinc-700"},q={class:"font-medium text-zinc-900 dark:text-white"},D={class:"text-xs text-zinc-500"},U=Object.assign({layout:j},{__name:"Affiliates",props:{affiliates:{type:Object,required:!0},programs:{type:Array,default:()=>[]},products:{type:Array,default:()=>[]},filters:{type:Object,default:()=>({})}},setup(d){const g=d,v=b(()=>g.affiliates?.data??[]),h=b(()=>v.value.map(e=>({id:e.id,created_at:e.created_at,name:e.user?.name??null,email:e.user?.email??null,product_name:e.product_name,commission_percent:e.commission_percent,status:e.status,product_id:e.product_id,affiliate_link:e.affiliate_link})));async function z(e,a){await m.put(`/produtos/${a}/affiliates/${e}`,{status:"approved"}),x.reload({only:["affiliates"]})}async function C(e,a){await m.put(`/produtos/${a}/affiliates/${e}`,{status:"rejected"}),x.reload({only:["affiliates"]})}function $(e){e&&navigator.clipboard?.writeText(e)}return(e,a)=>(i(),r("div",V,[a[2]||(a[2]=o("div",null,[o("h1",{class:"text-2xl font-bold text-zinc-900 dark:text-white"},"Afiliados"),o("p",{class:"mt-1 text-sm text-zinc-500"}," Todos os afiliados da conta. Para configurar comissão e página pública, abra o produto. ")],-1)),u(A),u(w,{rows:h.value,"empty-label":"Nenhum afiliado encontrado."},{menu:f(({row:t,close:l})=>[t?(i(),r(_,{key:0},[t.product_id?(i(),N(k(p),{key:0,href:`/produtos/${t.product_id}/edit?tab=afiliados`,class:"flex w-full px-3 py-2 text-left text-sm text-zinc-700 hover:bg-zinc-100 dark:text-zinc-300 dark:hover:bg-zinc-800",onClick:c=>l()},{default:f(()=>[...a[0]||(a[0]=[y(" Configurar programa ",-1)])]),_:1},8,["href","onClick"])):s("",!0),t.affiliate_link?(i(),r("button",{key:1,type:"button",class:"flex w-full px-3 py-2 text-left text-sm text-zinc-700 hover:bg-zinc-100 dark:text-zinc-300 dark:hover:bg-zinc-800",onClick:c=>{$(t.affiliate_link),l()}}," Copiar link ",8,L)):s("",!0),t.status==="pending"?(i(),r("button",{key:2,type:"button",class:"flex w-full px-3 py-2 text-left text-sm text-emerald-700 hover:bg-emerald-50 dark:text-emerald-300 dark:hover:bg-emerald-900/20",onClick:c=>{z(t.id,t.product_id),l()}}," Aprovar ",8,O)):s("",!0),t.status==="pending"?(i(),r("button",{key:3,type:"button",class:"flex w-full px-3 py-2 text-left text-sm text-zinc-700 hover:bg-zinc-100 dark:text-zinc-300 dark:hover:bg-zinc-800",onClick:c=>{C(t.id,t.product_id),l()}}," Rejeitar ",8,T)):s("",!0)],64)):s("",!0)]),_:1},8,["rows"]),d.programs.length?(i(),r("details",F,[o("summary",P," Programas por produto ("+n(d.programs.length)+") ",1),o("ul",R,[(i(!0),r(_,null,B(d.programs,t=>(i(),r("li",{key:t.product_id,class:"flex flex-wrap items-center justify-between gap-2 px-4 py-3 text-sm"},[o("div",null,[o("p",q,n(t.product_name),1),o("p",D,n(t.enabled?"Ativo":"Inativo")+" · "+n(t.affiliates_count)+" aprovados · "+n(t.pending_count)+" pendentes ",1)]),u(k(p),{href:`/produtos/${t.product_id}/edit?tab=afiliados`,class:"text-[var(--color-primary)] hover:underline"},{default:f(()=>[...a[1]||(a[1]=[y(" Configurar ",-1)])]),_:1},8,["href"])]))),128))])])):s("",!0)]))}});export{U as default}; diff --git a/public/build/assets/AfiliarLayout-C4Gw_6Op.js b/public/build/assets/AfiliarLayout-B0S_PtE8.js similarity index 96% rename from public/build/assets/AfiliarLayout-C4Gw_6Op.js rename to public/build/assets/AfiliarLayout-B0S_PtE8.js index 38b769c8..c01bc205 100644 --- a/public/build/assets/AfiliarLayout-C4Gw_6Op.js +++ b/public/build/assets/AfiliarLayout-B0S_PtE8.js @@ -1 +1 @@ -import{l as p,d as u}from"./Toggle-BD3dflqy.js";import{d as m}from"./app-CKysWbKx.js";import{o as _,c as g,a as e,x as l,g as n,h as x,u as h,D as b,n as t}from"./runtime-dom.esm-bundler-OrSu0e66.js";const v={class:"relative z-10 border-b border-zinc-200/80 bg-white/80 backdrop-blur-md dark:border-zinc-800 dark:bg-zinc-900/80"},f={class:"mx-auto flex h-14 max-w-3xl items-center justify-between px-4 sm:px-6"},k=["src","alt"],y=["src","alt"],z={class:"relative z-10 mx-auto max-w-3xl px-4 py-8 sm:px-6 sm:py-10"},D={__name:"AfiliarLayout",setup(w){const c=u(),a=t(()=>c.props.public_branding??{}),o=t(()=>a.value.theme_primary||"#00cc00"),s=t(()=>a.value.app_name||"Getfy"),r=t(()=>a.value.app_logo||a.value.app_logo_icon||"https://cdn.getfy.cloud/collapsed-logo.png"),i=t(()=>a.value.app_logo_dark||a.value.app_logo_icon_dark||r.value);return(d,j)=>(_(),g("div",{class:"min-h-screen bg-zinc-50 text-zinc-900 transition-colors dark:bg-zinc-950 dark:text-zinc-100",style:l({"--color-primary":o.value})},[e("div",{class:"pointer-events-none fixed inset-x-0 top-0 h-64 opacity-30 blur-3xl dark:opacity-20",style:l({background:`linear-gradient(180deg, color-mix(in srgb, ${o.value} 35%, transparent), transparent)`}),"aria-hidden":"true"},null,4),e("header",v,[e("div",f,[n(h(p),{href:"/",class:"flex items-center gap-2"},{default:x(()=>[e("img",{src:r.value,alt:s.value,class:"h-8 max-w-[140px] object-contain dark:hidden"},null,8,k),e("img",{src:i.value,alt:s.value,class:"hidden h-8 max-w-[140px] object-contain dark:block"},null,8,y)]),_:1}),n(m)])]),e("main",z,[b(d.$slots,"default")])],4))}};export{D as _}; +import{l as p,d as u}from"./Toggle-BD3dflqy.js";import{d as m}from"./app-CT8pqccC.js";import{o as _,c as g,a as e,x as l,g as n,h as x,u as h,D as b,n as t}from"./runtime-dom.esm-bundler-OrSu0e66.js";const v={class:"relative z-10 border-b border-zinc-200/80 bg-white/80 backdrop-blur-md dark:border-zinc-800 dark:bg-zinc-900/80"},f={class:"mx-auto flex h-14 max-w-3xl items-center justify-between px-4 sm:px-6"},k=["src","alt"],y=["src","alt"],z={class:"relative z-10 mx-auto max-w-3xl px-4 py-8 sm:px-6 sm:py-10"},D={__name:"AfiliarLayout",setup(w){const c=u(),a=t(()=>c.props.public_branding??{}),o=t(()=>a.value.theme_primary||"#00cc00"),s=t(()=>a.value.app_name||"Getfy"),r=t(()=>a.value.app_logo||a.value.app_logo_icon||"https://cdn.getfy.cloud/collapsed-logo.png"),i=t(()=>a.value.app_logo_dark||a.value.app_logo_icon_dark||r.value);return(d,j)=>(_(),g("div",{class:"min-h-screen bg-zinc-50 text-zinc-900 transition-colors dark:bg-zinc-950 dark:text-zinc-100",style:l({"--color-primary":o.value})},[e("div",{class:"pointer-events-none fixed inset-x-0 top-0 h-64 opacity-30 blur-3xl dark:opacity-20",style:l({background:`linear-gradient(180deg, color-mix(in srgb, ${o.value} 35%, transparent), transparent)`}),"aria-hidden":"true"},null,4),e("header",v,[e("div",f,[n(h(p),{href:"/",class:"flex items-center gap-2"},{default:x(()=>[e("img",{src:r.value,alt:s.value,class:"h-8 max-w-[140px] object-contain dark:hidden"},null,8,k),e("img",{src:i.value,alt:s.value,class:"hidden h-8 max-w-[140px] object-contain dark:block"},null,8,y)]),_:1}),n(m)])]),e("main",z,[b(d.$slots,"default")])],4))}};export{D as _}; diff --git a/public/build/assets/ApiPagamentos-DXvChhRM.js b/public/build/assets/ApiPagamentos-Derb9cUe.js similarity index 99% rename from public/build/assets/ApiPagamentos-DXvChhRM.js rename to public/build/assets/ApiPagamentos-Derb9cUe.js index e47056e0..59685836 100644 --- a/public/build/assets/ApiPagamentos-DXvChhRM.js +++ b/public/build/assets/ApiPagamentos-Derb9cUe.js @@ -1,4 +1,4 @@ -import{o as i,c as n,t as m,d as I,D as z,a as e,s as q,u as f,f as N,r as S,F as w,y as C,i as t,z as $,k as W,aN as Z,g as a,w as Q,ac as Y,h as s}from"./runtime-dom.esm-bundler-OrSu0e66.js";import{_ as ee}from"./LayoutDoc-Dtbbp7KD.js";import{_ as A}from"./_plugin-vue_export-helper-DlAUqK2U.js";import{C as te}from"./copy-CAHk-g6g.js";import{L as oe}from"./lightbulb-DY_5Q5ej.js";import{C as ae}from"./circle-alert-B_GEMyiN.js";import{I as O}from"./info-wvqULVyO.js";import{c as D,X as se}from"./Toggle-BD3dflqy.js";import{C as ie}from"./chevron-right-BDfXxPVC.js";import{B as de}from"./book-open-DHA14jdk.js";import{L as re}from"./layers-R-sja8g7.js";import{S as ne,F as le}from"./app-CKysWbKx.js";import{C as ce}from"./credit-card-BEa3N8tE.js";import{M as pe}from"./menu-DBS2lHgI.js";import"./arrow-left-t2xJ2JaZ.js";const ue=D("key",[["path",{d:"m15.5 7.5 2.3 2.3a1 1 0 0 0 1.4 0l2.1-2.1a1 1 0 0 0 0-1.4L19 4",key:"g0fldk"}],["path",{d:"m21 2-9.6 9.6",key:"1j0ho8"}],["circle",{cx:"7.5",cy:"15.5",r:"5.5",key:"yqb3hr"}]]);const me=D("webhook",[["path",{d:"M18 16.98h-5.99c-1.1 0-1.95.94-2.48 1.9A4 4 0 0 1 2 17c.01-.7.2-1.4.57-2",key:"q3hayz"}],["path",{d:"m6 17 3.13-5.78c.53-.97.1-2.18-.5-3.1a4 4 0 1 1 6.89-4.06",key:"1go1hn"}],["path",{d:"m12 6 3.13 5.73C15.66 12.7 16.9 13 18 13a4 4 0 0 1 0 8",key:"qlwsc0"}]]),ye=["id"],xe={key:0,class:"doc-section-title"},ge={__name:"DocSection",props:{id:{type:String,default:""},title:{type:String,default:""}},setup(d){return(l,y)=>d.id||l.$slots.default?(i(),n("section",{key:0,id:d.id,class:"doc-section scroll-mt-28"},[d.title?(i(),n("h2",xe,m(d.title),1)):I("",!0),z(l.$slots,"default",{},void 0,!0)],8,ye)):I("",!0)}},r=A(ge,[["__scopeId","data-v-cd0d52e9"]]),be={class:"doc-endpoint my-10 rounded-xl border border-white/10 bg-white/[0.02] border-l-4 border-l-teal-500/50"},fe={class:"doc-endpoint-header flex flex-wrap items-center gap-2 border-b border-white/10 px-5 py-3"},he={class:"font-mono text-sm text-zinc-300"},ve={class:"px-5 py-6"},ke={key:0,class:"mb-6 text-zinc-400 leading-relaxed"},we={__name:"DocEndpoint",props:{method:{type:String,required:!0},path:{type:String,required:!0},description:{type:String,default:""}},setup(d){const y=d.method?.toUpperCase()==="GET"?"doc-endpoint-method-get":"doc-endpoint-method-post";return(p,x)=>(i(),n("div",be,[e("div",fe,[e("span",{class:q(["doc-endpoint-method rounded px-2 py-0.5 text-xs font-bold uppercase tracking-wider",f(y)])},m(d.method),3),e("span",he,m(d.path),1)]),e("div",ve,[d.description?(i(),n("p",ke,m(d.description),1)):I("",!0),z(p.$slots,"default",{},void 0,!0)])]))}},P=A(we,[["__scopeId","data-v-6f297a11"]]),_e={class:"doc-code relative my-6 overflow-hidden rounded-xl border border-white/10 bg-zinc-950/80"},Pe={class:"doc-code-label"},Se={key:1,class:"text-emerald-400"},Ce={class:"doc-code-pre"},Ie={__name:"DocCode",props:{label:{type:String,default:"json"}},setup(d){const l=S(null),y=S(!1);async function p(){const c=l.value?.textContent?.trim()??"";if(!c)return;let h=!1;if(navigator.clipboard?.writeText)try{await navigator.clipboard.writeText(c),h=!0}catch{}if(!h)try{const g=document.createElement("textarea");g.value=c,g.setAttribute("readonly",""),g.style.position="absolute",g.style.left="-9999px",document.body.appendChild(g),g.select(),h=document.execCommand("copy"),document.body.removeChild(g)}catch{}h&&(y.value=!0,setTimeout(()=>{y.value=!1},2e3))}return(x,c)=>(i(),n("div",_e,[e("span",Pe,m(d.label),1),e("button",{type:"button",class:"doc-code-copy",title:"Copiar",onClick:p},[y.value?(i(),n("span",Se,"Copiado!")):(i(),N(f(te),{key:0,class:"h-3.5 w-3.5"}))]),e("pre",Ce,[e("code",{ref_key:"codeRef",ref:l,class:"block overflow-x-auto p-4 pt-10 pr-12 text-sm text-zinc-300"},[z(x.$slots,"default",{},void 0,!0)],512)])]))}},k=A(Ie,[["__scopeId","data-v-dd1f24af"]]),ze={class:"my-8 overflow-hidden rounded-xl border border-white/10 text-sm"},qe={class:"w-full border-collapse"},b={__name:"DocTable",props:{columns:{type:Array,default:()=>[]},rows:{type:Array,default:()=>[]}},setup(d){return(l,y)=>(i(),n("div",ze,[e("table",qe,[e("thead",null,[e("tr",null,[(i(!0),n(w,null,C(d.columns,p=>(i(),n("th",{key:p.key,class:"border-b border-white/10 bg-white/5 px-4 py-3 text-left font-semibold text-zinc-200"},m(p.label),1))),128))])]),e("tbody",null,[(i(!0),n(w,null,C(d.rows,(p,x)=>(i(),n("tr",{key:x,class:"transition hover:bg-white/[0.02]"},[(i(!0),n(w,null,C(d.columns,c=>(i(),n("td",{key:c.key,class:"border-b border-white/5 px-4 py-3 text-zinc-400"},[l.$slots.cell?z(l.$slots,"cell",{key:0,column:c,row:p,value:p[c.key]},()=>[t(m(p[c.key]),1)]):(i(),n(w,{key:1},[t(m(p[c.key]),1)],64))]))),128))]))),128))])])]))}},Ae={class:"flex gap-3"},Te={class:"min-w-0 flex-1"},Ne={key:0,class:"font-semibold mb-1"},Oe={class:"text-sm leading-relaxed text-zinc-300"},R={__name:"DocCallout",props:{type:{type:String,default:"info"},title:{type:String,default:""}},setup(d){const l=d,y={info:O,warning:ae,tip:oe},p={info:"border-teal-500/30 bg-teal-500/10 text-teal-400/90",warning:"border-amber-500/30 bg-amber-500/10 text-amber-400/90",tip:"border-sky-500/30 bg-sky-500/10 text-sky-400/90"},x=y[l.type]||O,c=p[l.type]||p.info;return(h,g)=>(i(),n("div",{class:q(["doc-callout my-6 rounded-xl border px-4 py-4",f(c)])},[e("div",Ae,[(i(),N($(f(x)),{class:"h-5 w-5 shrink-0 mt-0.5"})),e("div",Te,[d.title?(i(),n("p",Ne,m(d.title),1)):I("",!0),e("div",Oe,[z(h.$slots,"default")])])])],2))}},Re={class:"api-docs relative flex min-h-0 flex-col lg:flex-row lg:gap-12"},$e={class:"flex h-14 items-center justify-between border-b border-white/5 px-4 lg:hidden"},De={class:"overflow-y-auto py-6 pl-4 pr-3 lg:sticky lg:top-20 lg:max-h-[calc(100vh-6rem)]"},Ee={class:"space-y-8"},Be={class:"flex items-center gap-2 px-2 pb-1"},Ue={class:"text-xs font-semibold uppercase tracking-wider text-zinc-500"},Ge={class:"space-y-0.5"},Xe=["href","onClick"],Le={class:"sticky top-14 z-30 flex items-center justify-between border-b border-white/5 bg-zinc-900/95 px-4 py-3 backdrop-blur-sm lg:hidden"},je={class:"mx-auto max-w-3xl px-4 pt-8 lg:px-0"},Me={class:"rounded-xl border border-teal-500/30 bg-teal-500/10 px-4 py-4"},Ve={class:"flex flex-wrap items-baseline gap-x-4 gap-y-1"},Fe={class:"text-sm text-zinc-200"},Je={class:"mt-2 flex flex-wrap gap-4"},Ke={class:"api-docs-content mx-auto max-w-3xl px-4 pb-24 pt-8 lg:px-6"},He=Object.assign({layout:ee},{__name:"ApiPagamentos",props:{baseUrl:{type:String,default:""}},setup(d){const l=d,y=[{title:"Introdução",icon:de,items:[{title:"Início rápido",id:"inicio-rapido"},{title:"Visão geral",id:"visao-geral"},{title:"Quando usar cada um",id:"quando-usar"}]},{title:"Autenticação",icon:ue,items:[{title:"Envio da API key",id:"envio-api-key"},{title:"Obtenção da API key",id:"obtencao-api-key"},{title:"Segurança",id:"seguranca"}]},{title:"Aplicações",icon:re,items:[{title:"O que é uma aplicação",id:"o-que-e-aplicacao"},{title:"Configuração",id:"configuracao"}]},{title:"Checkout Pro",icon:ne,items:[{title:"POST /checkout/sessions",id:"post-checkout-sessions"}]},{title:"Checkout Transparente",icon:ce,items:[{title:"Dados comuns (customer)",id:"dados-comuns-customer"},{title:"POST /payments/pix",id:"post-payments-pix"},{title:"POST /payments/card",id:"post-payments-card"},{title:"POST /payments/boleto",id:"post-payments-boleto"},{title:"GET /payments/{order_id}",id:"get-payments-order-id"},{title:"Idempotência",id:"idempotencia"}]},{title:"Webhooks",icon:me,items:[{title:"Eventos",id:"webhooks-eventos"},{title:"Formato do payload",id:"webhooks-formato"},{title:"Assinatura (X-Getfy-Signature)",id:"webhooks-assinatura"},{title:"Boas práticas",id:"webhooks-boas-praticas"}]},{title:"Referência",icon:le,items:[{title:"Códigos de erro",id:"codigos-de-erro"},{title:"Boas práticas gerais",id:"boas-praticas"},{title:"Resumo de endpoints",id:"resumo-endpoints"}]}],p=S(null),x=S(""),c=S(!1);function h(_){const o=document.getElementById(_);o&&o.scrollIntoView({behavior:"smooth",block:"start"}),c.value=!1}function g(){if(!p.value)return;const _=p.value.querySelectorAll("[id]");[..._].map(u=>u.id).filter(Boolean);const o=new IntersectionObserver(u=>{for(const v of u){if(!v.isIntersecting)continue;const T=v.target.id;T&&(x.value=T)}},{rootMargin:"-80px 0px -70% 0px",threshold:0});_.forEach(u=>u.id&&o.observe(u))}W(()=>{Z(g)});const E=l.baseUrl?`${l.baseUrl.replace(/\/$/,"")}/api/v1`:"/api/v1",B=l.baseUrl?l.baseUrl.replace(/^https?:\/\//,"").replace(/\/$/,""):"sua-instancia.getfy.com",U=l.baseUrl?l.baseUrl.replace(/\/$/,""):"https://sua-instancia.getfy.com",G=[{method:"POST",endpoint:"/api/v1/checkout/sessions",desc:"Criar sessão Checkout Pro (retorna link)"},{method:"POST",endpoint:"/api/v1/payments/pix",desc:"Criar pagamento PIX"},{method:"POST",endpoint:"/api/v1/payments/card",desc:"Criar pagamento com cartão"},{method:"POST",endpoint:"/api/v1/payments/boleto",desc:"Criar pagamento com boleto"},{method:"GET",endpoint:"/api/v1/payments/{order_id}",desc:"Consultar status do pedido"}],X=[{cenario:"Redirecionar o cliente para uma página de pagamento da Getfy",sugestao:"Checkout Pro"},{cenario:"Manter checkout no seu site (iframe, SPA, app)",sugestao:"Checkout Transparente"},{cenario:"Apenas processar pagamento (sem produto Getfy)",sugestao:"Ambos suportam amount/currency sem product_id"}],L=[{key:"field",label:"Campo"},{key:"type",label:"Tipo"},{key:"required",label:"Obrigatório"},{key:"desc",label:"Descrição"}],j=[{field:"customer",type:"objeto",required:"Sim",desc:"Dados do cliente"},{field:"customer.email",type:"string",required:"Sim",desc:"E-mail"},{field:"customer.name",type:"string",required:"Não",desc:"Nome (default: email)"},{field:"customer.cpf",type:"string",required:"Não",desc:"CPF"},{field:"customer.phone",type:"string",required:"Não",desc:"Telefone"},{field:"amount",type:"number",required:"Sim",desc:"Valor (ex.: 97.90)"},{field:"currency",type:"string",required:"Não",desc:"BRL, USD ou EUR (default: BRL)"},{field:"product_id",type:"string (UUID)",required:"Não",desc:"ID do produto Getfy; se informado, o pedido fica vinculado e o acesso é concedido ao concluir"},{field:"product_offer_id",type:"integer",required:"Não",desc:"ID da oferta do produto"},{field:"subscription_plan_id",type:"integer",required:"Não",desc:"ID do plano de assinatura"},{field:"metadata",type:"objeto",required:"Não",desc:"Dados livres (ex.: external_id) para uso no webhook"},{field:"return_url",type:"string",required:"Não",desc:"URL final para voltar ao seu site após concluir; se omitida, usa a URL de retorno padrão da aplicação"},{field:"expires_in",type:"integer",required:"Não",desc:"Minutos até expirar a sessão (5–1440; default: 30)"}],M=[{key:"field",label:"Campo"},{key:"type",label:"Tipo"},{key:"required",label:"Obrigatório"},{key:"desc",label:"Descrição"}],V=[{field:"customer",type:"objeto",required:"Sim",desc:"Dados do cliente"},{field:"customer.email",type:"string",required:"Sim",desc:"E-mail"},{field:"customer.name",type:"string",required:"Não",desc:"Nome"},{field:"customer.cpf",type:"string",required:"Não",desc:"CPF"},{field:"customer.phone",type:"string",required:"Não",desc:"Telefone"}],F=[{key:"code",label:"Código"},{key:"meaning",label:"Significado"}],J=[{code:"401",meaning:"Chave de API ausente ou inválida (header Bearer / X-API-Key)."},{code:"403",meaning:"Aplicação inativa ou IP não permitido."},{code:"404",meaning:"Recurso não encontrado (ex.: pedido que não pertence à aplicação)."},{code:"422",meaning:"Validação falhou (dados inválidos, produto não encontrado, etc.). O body pode incluir message e detalhes."},{code:"429",meaning:"Muitas requisições (rate limit). Tente novamente após o tempo indicado nos headers de resposta."},{code:"500",meaning:"Erro interno do servidor."}],K=[{key:"event",label:"Evento"},{key:"desc",label:"Descrição"}],H=[{event:"order.completed",desc:"Pagamento concluído (pedido pago)"},{event:"order.pending",desc:"Pedido criado ou aguardando pagamento (ex.: PIX/boleto gerados)"},{event:"order.refunded",desc:"Pedido estornado"}];return(_,o)=>(i(),n("div",Re,[c.value?(i(),n("div",{key:0,class:"fixed inset-0 z-40 bg-black/60 backdrop-blur-sm lg:hidden","aria-hidden":"true",onClick:o[0]||(o[0]=u=>c.value=!1)})):I("",!0),e("aside",{class:q(["api-docs-sidebar fixed left-0 top-0 z-50 h-full w-72 shrink-0 border-r border-white/5 bg-zinc-900/98 shadow-2xl transition-transform duration-200 lg:static lg:z-auto lg:h-auto lg:w-64 lg:translate-x-0 lg:border-r lg:border-white/5 lg:bg-transparent lg:shadow-none",c.value?"translate-x-0":"-translate-x-full lg:translate-x-0"])},[e("div",$e,[o[4]||(o[4]=e("span",{class:"text-sm font-semibold text-white"},"Menu",-1)),e("button",{type:"button",class:"rounded-lg p-2 text-zinc-400 hover:bg-white/5 hover:text-white","aria-label":"Fechar menu",onClick:o[1]||(o[1]=u=>c.value=!1)},[a(f(se),{class:"h-5 w-5"})])]),e("nav",De,[e("div",Ee,[(i(),n(w,null,C(y,u=>e("div",{key:u.title,class:"space-y-2"},[e("div",Be,[(i(),N($(u.icon),{class:"h-4 w-4 shrink-0 text-teal-400/90"})),e("span",Ue,m(u.title),1)]),e("ul",Ge,[(i(!0),n(w,null,C(u.items,v=>(i(),n("li",{key:v.id},[e("a",{href:`#${v.id}`,class:q(["doc-nav-link flex cursor-pointer items-center justify-between rounded-lg px-3 py-2 text-sm font-medium transition",x.value===v.id?"bg-teal-500/15 text-teal-300":"text-zinc-300 hover:bg-white/5 hover:text-white"]),onClick:Q(T=>h(v.id),["prevent"])},[t(m(v.title)+" ",1),a(f(ie),{class:"h-3.5 w-3.5 shrink-0 opacity-70"})],10,Xe)]))),128))])])),64))])])],2),e("div",{ref_key:"contentRef",ref:p,class:"min-w-0 flex-1 lg:pl-0"},[e("div",Le,[e("button",{type:"button",class:"flex items-center gap-2 rounded-lg px-3 py-2 text-sm font-medium text-zinc-300 hover:bg-white/5 hover:text-white",onClick:o[2]||(o[2]=u=>c.value=!0)},[a(f(pe),{class:"h-5 w-5"}),o[5]||(o[5]=t(" Menu ",-1))])]),o[54]||(o[54]=Y('

API de Pagamentos

Integre pagamentos (PIX, cartão, boleto) na sua plataforma usando os gateways configurados na Getfy. Checkout hospedado ou transparente - você escolhe.

RESTBearer / X-API-KeyJSON
',1)),e("div",je,[e("div",Me,[e("div",Ve,[o[6]||(o[6]=e("span",{class:"text-xs font-semibold uppercase tracking-wider text-teal-400/90"},"Base URL",-1)),e("code",Fe,m(f(E)),1)]),o[7]||(o[7]=e("p",{class:"mt-2 text-sm text-zinc-400"},[t(" Autenticação: "),e("code",{class:"rounded bg-white/10 px-1.5 py-0.5 text-teal-300"},"Authorization: Bearer "),t(" ou header "),e("code",{class:"rounded bg-white/10 px-1.5 py-0.5 text-teal-300"},"X-API-Key"),t(". ")],-1)),e("div",Je,[e("button",{type:"button",class:"text-left text-sm font-medium text-teal-400 hover:text-teal-300",onClick:o[3]||(o[3]=u=>h("envio-api-key"))}," Ver detalhes da autenticação → ")])])]),e("article",Ke,[a(r,{id:"inicio-rapido",title:"Início rápido"},{default:s(()=>[o[8]||(o[8]=e("p",{class:"text-zinc-400 leading-relaxed mb-4"},[e("strong",{class:"text-zinc-200"},"Base URL:"),t(" Todas as rotas estão sob "),e("code",{class:"rounded bg-white/10 px-1.5 py-0.5 text-teal-300"},"/api/v1"),t(". ")],-1)),o[9]||(o[9]=e("p",{class:"text-zinc-400 leading-relaxed mb-4"},[e("strong",{class:"text-zinc-200"},"Autenticação:"),t(" Envie a API key no header "),e("code",{class:"rounded bg-white/10 px-1.5 py-0.5 text-teal-300"},"Authorization: Bearer "),t(" ou "),e("code",{class:"rounded bg-white/10 px-1.5 py-0.5 text-teal-300"},"X-API-Key: "),t(". ")],-1)),o[10]||(o[10]=e("h3",{class:"doc-h3"},"Resumo dos endpoints",-1)),a(b,{columns:[{key:"method",label:"Método"},{key:"endpoint",label:"Endpoint"},{key:"desc",label:"Descrição"}],rows:G})]),_:1}),a(r,{id:"visao-geral",title:"Visão geral"},{default:s(()=>[...o[11]||(o[11]=[e("h3",{class:"doc-h3"},"Checkout Pro (hospedado)",-1),e("ul",{class:"doc-ul"},[e("li",null,"Sua plataforma envia os dados do cliente e do valor para a API."),e("li",null,[t("A API devolve um "),e("strong",null,"link de checkout"),t(" que o usuário final abre no navegador.")]),e("li",null,[t("Na Getfy o usuário "),e("strong",null,"só escolhe o método"),t(" (PIX, boleto) e conclui o pagamento; não preenche nome, e-mail, CPF (já vêm da sessão).")]),e("li",null,"Ideal quando você quer delegar toda a tela de pagamento à Getfy.")],-1),e("h3",{class:"doc-h3"},"Checkout Transparente",-1),e("ul",{class:"doc-ul"},[e("li",null,[t("Sua plataforma mantém a "),e("strong",null,"própria UI"),t(" (formulário de cartão, exibição de PIX, etc.).")]),e("li",null,[t("Você chama a API para "),e("strong",null,"criar a cobrança"),t(" e recebe os dados (QR code PIX, link do boleto, resultado do cartão, etc.).")]),e("li",null,[t("Pode consultar o status do pagamento via "),e("code",{class:"rounded bg-white/10 px-1.5 py-0.5 text-teal-300"},"GET /api/v1/payments/{order_id}"),t(".")]),e("li",null,"Ideal quando o fluxo de compra e a identidade visual ficam no seu site/app.")],-1)])]),_:1}),a(r,{id:"quando-usar",title:"Quando usar cada um"},{default:s(()=>[a(b,{columns:[{key:"cenario",label:"Cenário"},{key:"sugestao",label:"Sugestão"}],rows:X})]),_:1}),a(r,{id:"envio-api-key",title:"Envio da API key"},{default:s(()=>[o[12]||(o[12]=e("p",{class:"text-zinc-400 leading-relaxed mb-4"},[t(" Todas as requisições à API devem incluir a "),e("strong",{class:"text-zinc-200"},"API key"),t(" da aplicação. ")],-1)),o[13]||(o[13]=e("ul",{class:"doc-ul mb-6"},[e("li",null,[e("strong",{class:"text-zinc-200"},"Header preferido:"),t(),e("code",{class:"rounded bg-white/10 px-1.5 py-0.5 text-teal-300"},"Authorization: Bearer ")]),e("li",null,[e("strong",{class:"text-zinc-200"},"Alternativa:"),t(),e("code",{class:"rounded bg-white/10 px-1.5 py-0.5 text-teal-300"},"X-API-Key: ")])],-1)),o[14]||(o[14]=e("p",{class:"text-zinc-400 text-sm mb-2"},"Exemplo:",-1)),a(k,{label:"http"},{default:s(()=>[t(" POST /api/v1/checkout/sessions HTTP/1.1 Host: "+m(f(B))+" Authorization: Bearer getfy_xxxxxxxx_yyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyy Content-Type: application/json ",1)]),_:1})]),_:1}),a(r,{id:"obtencao-api-key",title:"Obtenção da API key"},{default:s(()=>[...o[15]||(o[15]=[e("ol",{class:"doc-ol"},[e("li",null,[t("No painel Getfy, acesse "),e("strong",null,"API Pagamentos"),t(" (ou "),e("strong",null,"Aplicações"),t(").")]),e("li",null,"Crie uma nova aplicação ou edite uma existente."),e("li",null,[t("Na criação, a API key é exibida "),e("strong",null,"uma única vez"),t("; copie e guarde em local seguro.")]),e("li",null,[t("Em edição, use "),e("strong",null,"Gerar nova API key"),t(" se precisar de uma nova (a anterior deixa de funcionar).")])],-1)])]),_:1}),a(r,{id:"seguranca",title:"Segurança"},{default:s(()=>[...o[16]||(o[16]=[e("ul",{class:"doc-ul"},[e("li",null,[e("strong",{class:"text-zinc-200"},"Nunca"),t(" exponha a API key em frontend público (JavaScript, apps móveis sem proteção). Use sempre um backend seu para chamar a API.")]),e("li",null,[t("Em produção, utilize "),e("strong",{class:"text-zinc-200"},"HTTPS"),t(" em todas as requisições.")]),e("li",null,"A API key é armazenada apenas como hash no servidor; não é possível recuperá-la depois. Se perder, gere uma nova.")],-1)])]),_:1}),a(r,{id:"o-que-e-aplicacao",title:"O que é uma aplicação"},{default:s(()=>[...o[17]||(o[17]=[e("p",{class:"text-zinc-400 leading-relaxed"},[t(" Cada "),e("strong",{class:"text-zinc-200"},"Aplicação"),t(" representa um cliente da API (ex.: sua loja, seu SaaS). A API atua como roteador de pagamentos: você autentica com uma aplicação (API key), escolhe o modo de checkout e os pagamentos são processados com a ordem e redundância de gateways definidas por aplicação. ")],-1)])]),_:1}),a(r,{id:"configuracao",title:"Configuração"},{default:s(()=>[...o[18]||(o[18]=[e("p",{class:"text-zinc-400 leading-relaxed mb-4"},"Na aplicação você configura:",-1),e("ul",{class:"doc-ul"},[e("li",null,[e("strong",{class:"text-zinc-200"},"Nome"),t(" e identificação (slug).")]),e("li",null,[e("strong",{class:"text-zinc-200"},"Gateways por método:"),t(" PIX, cartão, boleto (e opcionalmente PIX automático, cripto), com "),e("strong",null,"redundância"),t(" (ordem de fallback).")]),e("li",null,[e("strong",{class:"text-zinc-200"},"Webhook URL"),t(" (opcional): URL que receberá notificações de pagamento (order.completed, order.pending, order.refunded).")]),e("li",null,[e("strong",{class:"text-zinc-200"},"URL de retorno padrão"),t(" (opcional): usada no Checkout Pro quando a sessão não enviar "),e("code",{class:"rounded bg-white/10 px-1.5 py-0.5 text-teal-300"},"return_url"),t(".")]),e("li",null,[e("strong",{class:"text-zinc-200"},"Webhook secret"),t(" (opcional): usado para assinar o body do webhook (header "),e("code",{class:"rounded bg-white/10 px-1.5 py-0.5 text-teal-300"},"X-Getfy-Signature"),t("). Recomendado em produção.")]),e("li",null,[e("strong",{class:"text-zinc-200"},"IPs permitidos"),t(" (opcional): lista de IPs que podem usar a API key; vazio = todos permitidos.")]),e("li",null,[e("strong",{class:"text-zinc-200"},"Ativo:"),t(" aplicações inativas retornam 403.")])],-1),e("p",{class:"text-zinc-400 leading-relaxed mt-4"}," A ordem e redundância dos gateways são aplicadas a todos os pagamentos criados por essa aplicação (Checkout Pro e Transparente). ",-1)])]),_:1}),a(r,{id:"post-checkout-sessions"},{default:s(()=>[a(P,{method:"POST",path:"/api/v1/checkout/sessions",description:"Cria uma sessão e retorna a URL para o usuário final concluir o pagamento."},{default:s(()=>[o[19]||(o[19]=e("h4",{class:"doc-h4"},"Body (JSON)",-1)),a(b,{columns:L,rows:j}),o[20]||(o[20]=e("h4",{class:"doc-h4"},"Resposta 201",-1)),a(k,{label:"json"},{default:s(()=>[t(m(`{ +import{o as i,c as n,t as m,d as I,D as z,a as e,s as q,u as f,f as N,r as S,F as w,y as C,i as t,z as $,k as W,aN as Z,g as a,w as Q,ac as Y,h as s}from"./runtime-dom.esm-bundler-OrSu0e66.js";import{_ as ee}from"./LayoutDoc-Dtbbp7KD.js";import{_ as A}from"./_plugin-vue_export-helper-DlAUqK2U.js";import{C as te}from"./copy-CAHk-g6g.js";import{L as oe}from"./lightbulb-DY_5Q5ej.js";import{C as ae}from"./circle-alert-B_GEMyiN.js";import{I as O}from"./info-wvqULVyO.js";import{c as D,X as se}from"./Toggle-BD3dflqy.js";import{C as ie}from"./chevron-right-BDfXxPVC.js";import{B as de}from"./book-open-DHA14jdk.js";import{L as re}from"./layers-R-sja8g7.js";import{S as ne,F as le}from"./app-CT8pqccC.js";import{C as ce}from"./credit-card-BEa3N8tE.js";import{M as pe}from"./menu-DBS2lHgI.js";import"./arrow-left-t2xJ2JaZ.js";const ue=D("key",[["path",{d:"m15.5 7.5 2.3 2.3a1 1 0 0 0 1.4 0l2.1-2.1a1 1 0 0 0 0-1.4L19 4",key:"g0fldk"}],["path",{d:"m21 2-9.6 9.6",key:"1j0ho8"}],["circle",{cx:"7.5",cy:"15.5",r:"5.5",key:"yqb3hr"}]]);const me=D("webhook",[["path",{d:"M18 16.98h-5.99c-1.1 0-1.95.94-2.48 1.9A4 4 0 0 1 2 17c.01-.7.2-1.4.57-2",key:"q3hayz"}],["path",{d:"m6 17 3.13-5.78c.53-.97.1-2.18-.5-3.1a4 4 0 1 1 6.89-4.06",key:"1go1hn"}],["path",{d:"m12 6 3.13 5.73C15.66 12.7 16.9 13 18 13a4 4 0 0 1 0 8",key:"qlwsc0"}]]),ye=["id"],xe={key:0,class:"doc-section-title"},ge={__name:"DocSection",props:{id:{type:String,default:""},title:{type:String,default:""}},setup(d){return(l,y)=>d.id||l.$slots.default?(i(),n("section",{key:0,id:d.id,class:"doc-section scroll-mt-28"},[d.title?(i(),n("h2",xe,m(d.title),1)):I("",!0),z(l.$slots,"default",{},void 0,!0)],8,ye)):I("",!0)}},r=A(ge,[["__scopeId","data-v-cd0d52e9"]]),be={class:"doc-endpoint my-10 rounded-xl border border-white/10 bg-white/[0.02] border-l-4 border-l-teal-500/50"},fe={class:"doc-endpoint-header flex flex-wrap items-center gap-2 border-b border-white/10 px-5 py-3"},he={class:"font-mono text-sm text-zinc-300"},ve={class:"px-5 py-6"},ke={key:0,class:"mb-6 text-zinc-400 leading-relaxed"},we={__name:"DocEndpoint",props:{method:{type:String,required:!0},path:{type:String,required:!0},description:{type:String,default:""}},setup(d){const y=d.method?.toUpperCase()==="GET"?"doc-endpoint-method-get":"doc-endpoint-method-post";return(p,x)=>(i(),n("div",be,[e("div",fe,[e("span",{class:q(["doc-endpoint-method rounded px-2 py-0.5 text-xs font-bold uppercase tracking-wider",f(y)])},m(d.method),3),e("span",he,m(d.path),1)]),e("div",ve,[d.description?(i(),n("p",ke,m(d.description),1)):I("",!0),z(p.$slots,"default",{},void 0,!0)])]))}},P=A(we,[["__scopeId","data-v-6f297a11"]]),_e={class:"doc-code relative my-6 overflow-hidden rounded-xl border border-white/10 bg-zinc-950/80"},Pe={class:"doc-code-label"},Se={key:1,class:"text-emerald-400"},Ce={class:"doc-code-pre"},Ie={__name:"DocCode",props:{label:{type:String,default:"json"}},setup(d){const l=S(null),y=S(!1);async function p(){const c=l.value?.textContent?.trim()??"";if(!c)return;let h=!1;if(navigator.clipboard?.writeText)try{await navigator.clipboard.writeText(c),h=!0}catch{}if(!h)try{const g=document.createElement("textarea");g.value=c,g.setAttribute("readonly",""),g.style.position="absolute",g.style.left="-9999px",document.body.appendChild(g),g.select(),h=document.execCommand("copy"),document.body.removeChild(g)}catch{}h&&(y.value=!0,setTimeout(()=>{y.value=!1},2e3))}return(x,c)=>(i(),n("div",_e,[e("span",Pe,m(d.label),1),e("button",{type:"button",class:"doc-code-copy",title:"Copiar",onClick:p},[y.value?(i(),n("span",Se,"Copiado!")):(i(),N(f(te),{key:0,class:"h-3.5 w-3.5"}))]),e("pre",Ce,[e("code",{ref_key:"codeRef",ref:l,class:"block overflow-x-auto p-4 pt-10 pr-12 text-sm text-zinc-300"},[z(x.$slots,"default",{},void 0,!0)],512)])]))}},k=A(Ie,[["__scopeId","data-v-dd1f24af"]]),ze={class:"my-8 overflow-hidden rounded-xl border border-white/10 text-sm"},qe={class:"w-full border-collapse"},b={__name:"DocTable",props:{columns:{type:Array,default:()=>[]},rows:{type:Array,default:()=>[]}},setup(d){return(l,y)=>(i(),n("div",ze,[e("table",qe,[e("thead",null,[e("tr",null,[(i(!0),n(w,null,C(d.columns,p=>(i(),n("th",{key:p.key,class:"border-b border-white/10 bg-white/5 px-4 py-3 text-left font-semibold text-zinc-200"},m(p.label),1))),128))])]),e("tbody",null,[(i(!0),n(w,null,C(d.rows,(p,x)=>(i(),n("tr",{key:x,class:"transition hover:bg-white/[0.02]"},[(i(!0),n(w,null,C(d.columns,c=>(i(),n("td",{key:c.key,class:"border-b border-white/5 px-4 py-3 text-zinc-400"},[l.$slots.cell?z(l.$slots,"cell",{key:0,column:c,row:p,value:p[c.key]},()=>[t(m(p[c.key]),1)]):(i(),n(w,{key:1},[t(m(p[c.key]),1)],64))]))),128))]))),128))])])]))}},Ae={class:"flex gap-3"},Te={class:"min-w-0 flex-1"},Ne={key:0,class:"font-semibold mb-1"},Oe={class:"text-sm leading-relaxed text-zinc-300"},R={__name:"DocCallout",props:{type:{type:String,default:"info"},title:{type:String,default:""}},setup(d){const l=d,y={info:O,warning:ae,tip:oe},p={info:"border-teal-500/30 bg-teal-500/10 text-teal-400/90",warning:"border-amber-500/30 bg-amber-500/10 text-amber-400/90",tip:"border-sky-500/30 bg-sky-500/10 text-sky-400/90"},x=y[l.type]||O,c=p[l.type]||p.info;return(h,g)=>(i(),n("div",{class:q(["doc-callout my-6 rounded-xl border px-4 py-4",f(c)])},[e("div",Ae,[(i(),N($(f(x)),{class:"h-5 w-5 shrink-0 mt-0.5"})),e("div",Te,[d.title?(i(),n("p",Ne,m(d.title),1)):I("",!0),e("div",Oe,[z(h.$slots,"default")])])])],2))}},Re={class:"api-docs relative flex min-h-0 flex-col lg:flex-row lg:gap-12"},$e={class:"flex h-14 items-center justify-between border-b border-white/5 px-4 lg:hidden"},De={class:"overflow-y-auto py-6 pl-4 pr-3 lg:sticky lg:top-20 lg:max-h-[calc(100vh-6rem)]"},Ee={class:"space-y-8"},Be={class:"flex items-center gap-2 px-2 pb-1"},Ue={class:"text-xs font-semibold uppercase tracking-wider text-zinc-500"},Ge={class:"space-y-0.5"},Xe=["href","onClick"],Le={class:"sticky top-14 z-30 flex items-center justify-between border-b border-white/5 bg-zinc-900/95 px-4 py-3 backdrop-blur-sm lg:hidden"},je={class:"mx-auto max-w-3xl px-4 pt-8 lg:px-0"},Me={class:"rounded-xl border border-teal-500/30 bg-teal-500/10 px-4 py-4"},Ve={class:"flex flex-wrap items-baseline gap-x-4 gap-y-1"},Fe={class:"text-sm text-zinc-200"},Je={class:"mt-2 flex flex-wrap gap-4"},Ke={class:"api-docs-content mx-auto max-w-3xl px-4 pb-24 pt-8 lg:px-6"},He=Object.assign({layout:ee},{__name:"ApiPagamentos",props:{baseUrl:{type:String,default:""}},setup(d){const l=d,y=[{title:"Introdução",icon:de,items:[{title:"Início rápido",id:"inicio-rapido"},{title:"Visão geral",id:"visao-geral"},{title:"Quando usar cada um",id:"quando-usar"}]},{title:"Autenticação",icon:ue,items:[{title:"Envio da API key",id:"envio-api-key"},{title:"Obtenção da API key",id:"obtencao-api-key"},{title:"Segurança",id:"seguranca"}]},{title:"Aplicações",icon:re,items:[{title:"O que é uma aplicação",id:"o-que-e-aplicacao"},{title:"Configuração",id:"configuracao"}]},{title:"Checkout Pro",icon:ne,items:[{title:"POST /checkout/sessions",id:"post-checkout-sessions"}]},{title:"Checkout Transparente",icon:ce,items:[{title:"Dados comuns (customer)",id:"dados-comuns-customer"},{title:"POST /payments/pix",id:"post-payments-pix"},{title:"POST /payments/card",id:"post-payments-card"},{title:"POST /payments/boleto",id:"post-payments-boleto"},{title:"GET /payments/{order_id}",id:"get-payments-order-id"},{title:"Idempotência",id:"idempotencia"}]},{title:"Webhooks",icon:me,items:[{title:"Eventos",id:"webhooks-eventos"},{title:"Formato do payload",id:"webhooks-formato"},{title:"Assinatura (X-Getfy-Signature)",id:"webhooks-assinatura"},{title:"Boas práticas",id:"webhooks-boas-praticas"}]},{title:"Referência",icon:le,items:[{title:"Códigos de erro",id:"codigos-de-erro"},{title:"Boas práticas gerais",id:"boas-praticas"},{title:"Resumo de endpoints",id:"resumo-endpoints"}]}],p=S(null),x=S(""),c=S(!1);function h(_){const o=document.getElementById(_);o&&o.scrollIntoView({behavior:"smooth",block:"start"}),c.value=!1}function g(){if(!p.value)return;const _=p.value.querySelectorAll("[id]");[..._].map(u=>u.id).filter(Boolean);const o=new IntersectionObserver(u=>{for(const v of u){if(!v.isIntersecting)continue;const T=v.target.id;T&&(x.value=T)}},{rootMargin:"-80px 0px -70% 0px",threshold:0});_.forEach(u=>u.id&&o.observe(u))}W(()=>{Z(g)});const E=l.baseUrl?`${l.baseUrl.replace(/\/$/,"")}/api/v1`:"/api/v1",B=l.baseUrl?l.baseUrl.replace(/^https?:\/\//,"").replace(/\/$/,""):"sua-instancia.getfy.com",U=l.baseUrl?l.baseUrl.replace(/\/$/,""):"https://sua-instancia.getfy.com",G=[{method:"POST",endpoint:"/api/v1/checkout/sessions",desc:"Criar sessão Checkout Pro (retorna link)"},{method:"POST",endpoint:"/api/v1/payments/pix",desc:"Criar pagamento PIX"},{method:"POST",endpoint:"/api/v1/payments/card",desc:"Criar pagamento com cartão"},{method:"POST",endpoint:"/api/v1/payments/boleto",desc:"Criar pagamento com boleto"},{method:"GET",endpoint:"/api/v1/payments/{order_id}",desc:"Consultar status do pedido"}],X=[{cenario:"Redirecionar o cliente para uma página de pagamento da Getfy",sugestao:"Checkout Pro"},{cenario:"Manter checkout no seu site (iframe, SPA, app)",sugestao:"Checkout Transparente"},{cenario:"Apenas processar pagamento (sem produto Getfy)",sugestao:"Ambos suportam amount/currency sem product_id"}],L=[{key:"field",label:"Campo"},{key:"type",label:"Tipo"},{key:"required",label:"Obrigatório"},{key:"desc",label:"Descrição"}],j=[{field:"customer",type:"objeto",required:"Sim",desc:"Dados do cliente"},{field:"customer.email",type:"string",required:"Sim",desc:"E-mail"},{field:"customer.name",type:"string",required:"Não",desc:"Nome (default: email)"},{field:"customer.cpf",type:"string",required:"Não",desc:"CPF"},{field:"customer.phone",type:"string",required:"Não",desc:"Telefone"},{field:"amount",type:"number",required:"Sim",desc:"Valor (ex.: 97.90)"},{field:"currency",type:"string",required:"Não",desc:"BRL, USD ou EUR (default: BRL)"},{field:"product_id",type:"string (UUID)",required:"Não",desc:"ID do produto Getfy; se informado, o pedido fica vinculado e o acesso é concedido ao concluir"},{field:"product_offer_id",type:"integer",required:"Não",desc:"ID da oferta do produto"},{field:"subscription_plan_id",type:"integer",required:"Não",desc:"ID do plano de assinatura"},{field:"metadata",type:"objeto",required:"Não",desc:"Dados livres (ex.: external_id) para uso no webhook"},{field:"return_url",type:"string",required:"Não",desc:"URL final para voltar ao seu site após concluir; se omitida, usa a URL de retorno padrão da aplicação"},{field:"expires_in",type:"integer",required:"Não",desc:"Minutos até expirar a sessão (5–1440; default: 30)"}],M=[{key:"field",label:"Campo"},{key:"type",label:"Tipo"},{key:"required",label:"Obrigatório"},{key:"desc",label:"Descrição"}],V=[{field:"customer",type:"objeto",required:"Sim",desc:"Dados do cliente"},{field:"customer.email",type:"string",required:"Sim",desc:"E-mail"},{field:"customer.name",type:"string",required:"Não",desc:"Nome"},{field:"customer.cpf",type:"string",required:"Não",desc:"CPF"},{field:"customer.phone",type:"string",required:"Não",desc:"Telefone"}],F=[{key:"code",label:"Código"},{key:"meaning",label:"Significado"}],J=[{code:"401",meaning:"Chave de API ausente ou inválida (header Bearer / X-API-Key)."},{code:"403",meaning:"Aplicação inativa ou IP não permitido."},{code:"404",meaning:"Recurso não encontrado (ex.: pedido que não pertence à aplicação)."},{code:"422",meaning:"Validação falhou (dados inválidos, produto não encontrado, etc.). O body pode incluir message e detalhes."},{code:"429",meaning:"Muitas requisições (rate limit). Tente novamente após o tempo indicado nos headers de resposta."},{code:"500",meaning:"Erro interno do servidor."}],K=[{key:"event",label:"Evento"},{key:"desc",label:"Descrição"}],H=[{event:"order.completed",desc:"Pagamento concluído (pedido pago)"},{event:"order.pending",desc:"Pedido criado ou aguardando pagamento (ex.: PIX/boleto gerados)"},{event:"order.refunded",desc:"Pedido estornado"}];return(_,o)=>(i(),n("div",Re,[c.value?(i(),n("div",{key:0,class:"fixed inset-0 z-40 bg-black/60 backdrop-blur-sm lg:hidden","aria-hidden":"true",onClick:o[0]||(o[0]=u=>c.value=!1)})):I("",!0),e("aside",{class:q(["api-docs-sidebar fixed left-0 top-0 z-50 h-full w-72 shrink-0 border-r border-white/5 bg-zinc-900/98 shadow-2xl transition-transform duration-200 lg:static lg:z-auto lg:h-auto lg:w-64 lg:translate-x-0 lg:border-r lg:border-white/5 lg:bg-transparent lg:shadow-none",c.value?"translate-x-0":"-translate-x-full lg:translate-x-0"])},[e("div",$e,[o[4]||(o[4]=e("span",{class:"text-sm font-semibold text-white"},"Menu",-1)),e("button",{type:"button",class:"rounded-lg p-2 text-zinc-400 hover:bg-white/5 hover:text-white","aria-label":"Fechar menu",onClick:o[1]||(o[1]=u=>c.value=!1)},[a(f(se),{class:"h-5 w-5"})])]),e("nav",De,[e("div",Ee,[(i(),n(w,null,C(y,u=>e("div",{key:u.title,class:"space-y-2"},[e("div",Be,[(i(),N($(u.icon),{class:"h-4 w-4 shrink-0 text-teal-400/90"})),e("span",Ue,m(u.title),1)]),e("ul",Ge,[(i(!0),n(w,null,C(u.items,v=>(i(),n("li",{key:v.id},[e("a",{href:`#${v.id}`,class:q(["doc-nav-link flex cursor-pointer items-center justify-between rounded-lg px-3 py-2 text-sm font-medium transition",x.value===v.id?"bg-teal-500/15 text-teal-300":"text-zinc-300 hover:bg-white/5 hover:text-white"]),onClick:Q(T=>h(v.id),["prevent"])},[t(m(v.title)+" ",1),a(f(ie),{class:"h-3.5 w-3.5 shrink-0 opacity-70"})],10,Xe)]))),128))])])),64))])])],2),e("div",{ref_key:"contentRef",ref:p,class:"min-w-0 flex-1 lg:pl-0"},[e("div",Le,[e("button",{type:"button",class:"flex items-center gap-2 rounded-lg px-3 py-2 text-sm font-medium text-zinc-300 hover:bg-white/5 hover:text-white",onClick:o[2]||(o[2]=u=>c.value=!0)},[a(f(pe),{class:"h-5 w-5"}),o[5]||(o[5]=t(" Menu ",-1))])]),o[54]||(o[54]=Y('

API de Pagamentos

Integre pagamentos (PIX, cartão, boleto) na sua plataforma usando os gateways configurados na Getfy. Checkout hospedado ou transparente - você escolhe.

RESTBearer / X-API-KeyJSON
',1)),e("div",je,[e("div",Me,[e("div",Ve,[o[6]||(o[6]=e("span",{class:"text-xs font-semibold uppercase tracking-wider text-teal-400/90"},"Base URL",-1)),e("code",Fe,m(f(E)),1)]),o[7]||(o[7]=e("p",{class:"mt-2 text-sm text-zinc-400"},[t(" Autenticação: "),e("code",{class:"rounded bg-white/10 px-1.5 py-0.5 text-teal-300"},"Authorization: Bearer "),t(" ou header "),e("code",{class:"rounded bg-white/10 px-1.5 py-0.5 text-teal-300"},"X-API-Key"),t(". ")],-1)),e("div",Je,[e("button",{type:"button",class:"text-left text-sm font-medium text-teal-400 hover:text-teal-300",onClick:o[3]||(o[3]=u=>h("envio-api-key"))}," Ver detalhes da autenticação → ")])])]),e("article",Ke,[a(r,{id:"inicio-rapido",title:"Início rápido"},{default:s(()=>[o[8]||(o[8]=e("p",{class:"text-zinc-400 leading-relaxed mb-4"},[e("strong",{class:"text-zinc-200"},"Base URL:"),t(" Todas as rotas estão sob "),e("code",{class:"rounded bg-white/10 px-1.5 py-0.5 text-teal-300"},"/api/v1"),t(". ")],-1)),o[9]||(o[9]=e("p",{class:"text-zinc-400 leading-relaxed mb-4"},[e("strong",{class:"text-zinc-200"},"Autenticação:"),t(" Envie a API key no header "),e("code",{class:"rounded bg-white/10 px-1.5 py-0.5 text-teal-300"},"Authorization: Bearer "),t(" ou "),e("code",{class:"rounded bg-white/10 px-1.5 py-0.5 text-teal-300"},"X-API-Key: "),t(". ")],-1)),o[10]||(o[10]=e("h3",{class:"doc-h3"},"Resumo dos endpoints",-1)),a(b,{columns:[{key:"method",label:"Método"},{key:"endpoint",label:"Endpoint"},{key:"desc",label:"Descrição"}],rows:G})]),_:1}),a(r,{id:"visao-geral",title:"Visão geral"},{default:s(()=>[...o[11]||(o[11]=[e("h3",{class:"doc-h3"},"Checkout Pro (hospedado)",-1),e("ul",{class:"doc-ul"},[e("li",null,"Sua plataforma envia os dados do cliente e do valor para a API."),e("li",null,[t("A API devolve um "),e("strong",null,"link de checkout"),t(" que o usuário final abre no navegador.")]),e("li",null,[t("Na Getfy o usuário "),e("strong",null,"só escolhe o método"),t(" (PIX, boleto) e conclui o pagamento; não preenche nome, e-mail, CPF (já vêm da sessão).")]),e("li",null,"Ideal quando você quer delegar toda a tela de pagamento à Getfy.")],-1),e("h3",{class:"doc-h3"},"Checkout Transparente",-1),e("ul",{class:"doc-ul"},[e("li",null,[t("Sua plataforma mantém a "),e("strong",null,"própria UI"),t(" (formulário de cartão, exibição de PIX, etc.).")]),e("li",null,[t("Você chama a API para "),e("strong",null,"criar a cobrança"),t(" e recebe os dados (QR code PIX, link do boleto, resultado do cartão, etc.).")]),e("li",null,[t("Pode consultar o status do pagamento via "),e("code",{class:"rounded bg-white/10 px-1.5 py-0.5 text-teal-300"},"GET /api/v1/payments/{order_id}"),t(".")]),e("li",null,"Ideal quando o fluxo de compra e a identidade visual ficam no seu site/app.")],-1)])]),_:1}),a(r,{id:"quando-usar",title:"Quando usar cada um"},{default:s(()=>[a(b,{columns:[{key:"cenario",label:"Cenário"},{key:"sugestao",label:"Sugestão"}],rows:X})]),_:1}),a(r,{id:"envio-api-key",title:"Envio da API key"},{default:s(()=>[o[12]||(o[12]=e("p",{class:"text-zinc-400 leading-relaxed mb-4"},[t(" Todas as requisições à API devem incluir a "),e("strong",{class:"text-zinc-200"},"API key"),t(" da aplicação. ")],-1)),o[13]||(o[13]=e("ul",{class:"doc-ul mb-6"},[e("li",null,[e("strong",{class:"text-zinc-200"},"Header preferido:"),t(),e("code",{class:"rounded bg-white/10 px-1.5 py-0.5 text-teal-300"},"Authorization: Bearer ")]),e("li",null,[e("strong",{class:"text-zinc-200"},"Alternativa:"),t(),e("code",{class:"rounded bg-white/10 px-1.5 py-0.5 text-teal-300"},"X-API-Key: ")])],-1)),o[14]||(o[14]=e("p",{class:"text-zinc-400 text-sm mb-2"},"Exemplo:",-1)),a(k,{label:"http"},{default:s(()=>[t(" POST /api/v1/checkout/sessions HTTP/1.1 Host: "+m(f(B))+" Authorization: Bearer getfy_xxxxxxxx_yyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyy Content-Type: application/json ",1)]),_:1})]),_:1}),a(r,{id:"obtencao-api-key",title:"Obtenção da API key"},{default:s(()=>[...o[15]||(o[15]=[e("ol",{class:"doc-ol"},[e("li",null,[t("No painel Getfy, acesse "),e("strong",null,"API Pagamentos"),t(" (ou "),e("strong",null,"Aplicações"),t(").")]),e("li",null,"Crie uma nova aplicação ou edite uma existente."),e("li",null,[t("Na criação, a API key é exibida "),e("strong",null,"uma única vez"),t("; copie e guarde em local seguro.")]),e("li",null,[t("Em edição, use "),e("strong",null,"Gerar nova API key"),t(" se precisar de uma nova (a anterior deixa de funcionar).")])],-1)])]),_:1}),a(r,{id:"seguranca",title:"Segurança"},{default:s(()=>[...o[16]||(o[16]=[e("ul",{class:"doc-ul"},[e("li",null,[e("strong",{class:"text-zinc-200"},"Nunca"),t(" exponha a API key em frontend público (JavaScript, apps móveis sem proteção). Use sempre um backend seu para chamar a API.")]),e("li",null,[t("Em produção, utilize "),e("strong",{class:"text-zinc-200"},"HTTPS"),t(" em todas as requisições.")]),e("li",null,"A API key é armazenada apenas como hash no servidor; não é possível recuperá-la depois. Se perder, gere uma nova.")],-1)])]),_:1}),a(r,{id:"o-que-e-aplicacao",title:"O que é uma aplicação"},{default:s(()=>[...o[17]||(o[17]=[e("p",{class:"text-zinc-400 leading-relaxed"},[t(" Cada "),e("strong",{class:"text-zinc-200"},"Aplicação"),t(" representa um cliente da API (ex.: sua loja, seu SaaS). A API atua como roteador de pagamentos: você autentica com uma aplicação (API key), escolhe o modo de checkout e os pagamentos são processados com a ordem e redundância de gateways definidas por aplicação. ")],-1)])]),_:1}),a(r,{id:"configuracao",title:"Configuração"},{default:s(()=>[...o[18]||(o[18]=[e("p",{class:"text-zinc-400 leading-relaxed mb-4"},"Na aplicação você configura:",-1),e("ul",{class:"doc-ul"},[e("li",null,[e("strong",{class:"text-zinc-200"},"Nome"),t(" e identificação (slug).")]),e("li",null,[e("strong",{class:"text-zinc-200"},"Gateways por método:"),t(" PIX, cartão, boleto (e opcionalmente PIX automático, cripto), com "),e("strong",null,"redundância"),t(" (ordem de fallback).")]),e("li",null,[e("strong",{class:"text-zinc-200"},"Webhook URL"),t(" (opcional): URL que receberá notificações de pagamento (order.completed, order.pending, order.refunded).")]),e("li",null,[e("strong",{class:"text-zinc-200"},"URL de retorno padrão"),t(" (opcional): usada no Checkout Pro quando a sessão não enviar "),e("code",{class:"rounded bg-white/10 px-1.5 py-0.5 text-teal-300"},"return_url"),t(".")]),e("li",null,[e("strong",{class:"text-zinc-200"},"Webhook secret"),t(" (opcional): usado para assinar o body do webhook (header "),e("code",{class:"rounded bg-white/10 px-1.5 py-0.5 text-teal-300"},"X-Getfy-Signature"),t("). Recomendado em produção.")]),e("li",null,[e("strong",{class:"text-zinc-200"},"IPs permitidos"),t(" (opcional): lista de IPs que podem usar a API key; vazio = todos permitidos.")]),e("li",null,[e("strong",{class:"text-zinc-200"},"Ativo:"),t(" aplicações inativas retornam 403.")])],-1),e("p",{class:"text-zinc-400 leading-relaxed mt-4"}," A ordem e redundância dos gateways são aplicadas a todos os pagamentos criados por essa aplicação (Checkout Pro e Transparente). ",-1)])]),_:1}),a(r,{id:"post-checkout-sessions"},{default:s(()=>[a(P,{method:"POST",path:"/api/v1/checkout/sessions",description:"Cria uma sessão e retorna a URL para o usuário final concluir o pagamento."},{default:s(()=>[o[19]||(o[19]=e("h4",{class:"doc-h4"},"Body (JSON)",-1)),a(b,{columns:L,rows:j}),o[20]||(o[20]=e("h4",{class:"doc-h4"},"Resposta 201",-1)),a(k,{label:"json"},{default:s(()=>[t(m(`{ "session_id": "123", "checkout_url": "${f(U)}/api-checkout/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", "expires_at": "2026-03-09T12:30:00.000000Z" diff --git a/public/build/assets/ApiPagamentosTestar-BwNTZSCN.js b/public/build/assets/ApiPagamentosTestar-CEyGk8U2.js similarity index 99% rename from public/build/assets/ApiPagamentosTestar-BwNTZSCN.js rename to public/build/assets/ApiPagamentosTestar-CEyGk8U2.js index 4913f21a..9a87aa54 100644 --- a/public/build/assets/ApiPagamentosTestar-BwNTZSCN.js +++ b/public/build/assets/ApiPagamentosTestar-CEyGk8U2.js @@ -1 +1 @@ -import{o as a,c as y,a as t,g as v,h as B,i as o,u as s,b as n,v as r,bF as E,f as p,t as C,s as G,d as V,r as g,n as J}from"./runtime-dom.esm-bundler-OrSu0e66.js";import{c as j,l as R}from"./Toggle-BD3dflqy.js";import{_ as K}from"./LayoutDoc-Dtbbp7KD.js";import{S as X}from"./app-CKysWbKx.js";import{L as f}from"./loader-circle-CWooIS5S.js";import{C as L}from"./credit-card-BEa3N8tE.js";import{B as H}from"./banknote-CmiuBY2y.js";import{S as W}from"./search-5WwcWNIL.js";import{F as Q}from"./file-text-CNhd5y-T.js";import"./arrow-left-t2xJ2JaZ.js";const S=j("flask-conical",[["path",{d:"M14 2v6a2 2 0 0 0 .245.96l5.51 10.08A2 2 0 0 1 18 22H6a2 2 0 0 1-1.755-2.96l5.51-10.08A2 2 0 0 0 10 8V2",key:"18mbvz"}],["path",{d:"M6.453 15h11.094",key:"3shlmq"}],["path",{d:"M8.5 2h7",key:"csnxdl"}]]),Y={class:"py-8"},Z={class:"mb-8 flex flex-wrap items-center gap-4"},_={class:"mb-8 rounded-xl border border-amber-500/30 bg-amber-500/10 px-4 py-3 text-sm text-amber-200/90"},ee={class:"mb-8 grid gap-4 sm:grid-cols-2"},te=["value"],le={class:"space-y-8"},oe={class:"rounded-xl border border-white/10 bg-white/[0.02] p-6"},se={class:"mb-4 flex items-center gap-2"},ne={class:"mb-4 grid gap-4 sm:grid-cols-2 lg:grid-cols-4"},ie=["disabled"],ae={class:"rounded-xl border border-white/10 bg-white/[0.02] p-6"},re={class:"mb-4 flex items-center gap-2"},de={class:"mb-4 grid gap-4 sm:grid-cols-2 lg:grid-cols-4"},ue=["disabled"],pe={class:"rounded-xl border border-white/10 bg-white/[0.02] p-6"},me={class:"mb-4 flex items-center gap-2"},be={class:"mb-4 grid gap-4 sm:grid-cols-2 lg:grid-cols-4"},xe=["disabled"],ce={class:"rounded-xl border border-white/10 bg-white/[0.02] p-6"},ve={class:"mb-4 flex items-center gap-2"},ge={class:"mb-4 grid gap-4 sm:grid-cols-2 lg:grid-cols-4"},we=["disabled"],ye={class:"rounded-xl border border-white/10 bg-white/[0.02] p-6"},fe={class:"mb-4 flex items-center gap-2"},ke={class:"mb-4 flex flex-wrap items-end gap-4"},he={class:"min-w-[120px]"},ze=["disabled"],Ue={key:0,class:"mt-10 rounded-xl border border-white/10 bg-zinc-900/80 p-6"},Ce={key:0,class:"mb-2 font-mono text-sm text-zinc-400"},Ve={key:1,class:"mb-3 text-sm text-red-400"},Se={class:"overflow-x-auto rounded-lg border border-white/10 bg-zinc-950 p-4 font-mono text-xs text-zinc-300"},Ae=Object.assign({layout:K},{__name:"ApiPagamentosTestar",props:{baseUrl:{type:String,default:""}},setup(D){const O=D,k=g(""),d=g(""),i=g({endpoint:"",status:null,data:null,error:null}),I=J(()=>O.baseUrl?`${O.baseUrl.replace(/\/$/,"")}/api/v1`:"/api/v1");function N(){const u={"Content-Type":"application/json"};return k.value.trim()&&(u.Authorization=`Bearer ${k.value.trim()}`),u}async function w(u,e,l=null){i.value={endpoint:"",status:null,data:null,error:null},d.value=e;try{const h={method:u,headers:N()};l&&(u==="POST"||u==="PUT")&&(h.body=JSON.stringify(l));const z=await fetch(I.value+e,h),T=await z.text();let U=null;try{U=T?JSON.parse(T):null}catch{U=T}i.value={endpoint:u+" "+e,status:z.status,data:U,error:z.ok?null:U?.message||z.statusText}}catch(h){i.value={endpoint:u+" "+e,status:null,data:null,error:h.message||"Erro de rede"}}finally{d.value=""}}const m=g({customer:{email:"teste@exemplo.com",name:"Cliente Teste",cpf:"",phone:""},amount:10,currency:"BRL",expires_in:30});function A(){w("POST","/checkout/sessions",m.value)}const b=g({customer:{email:"teste@exemplo.com",name:"Cliente Teste",cpf:"",phone:""},amount:5,currency:"BRL"});function F(){w("POST","/payments/pix",b.value)}const x=g({customer:{email:"teste@exemplo.com",name:"Cliente Teste",cpf:"",phone:""},amount:25,currency:"BRL"});function M(){w("POST","/payments/boleto",x.value)}const c=g({customer:{email:"teste@exemplo.com",name:"Cliente Teste",cpf:"",phone:""},amount:15,currency:"BRL",card:{payment_token:"",card_mask:"**** 1234"}});function $(){w("POST","/payments/card",c.value)}const P=g("");function q(){const u=P.value.trim();if(!u){i.value={endpoint:"",status:null,data:null,error:"Informe o ID do pedido."};return}w("GET",`/payments/${encodeURIComponent(u)}`)}return(u,e)=>(a(),y("div",Y,[t("div",Z,[v(s(R),{href:"/docs/api-pagamentos",class:"inline-flex items-center gap-2 rounded-lg border border-white/10 bg-white/5 px-3 py-2 text-sm font-medium text-zinc-400 transition hover:border-teal-500/30 hover:bg-white/10 hover:text-white"},{default:B(()=>[...e[18]||(e[18]=[o(" ← Documentação ",-1)])]),_:1}),v(s(R),{href:"/aplicacoes-api",class:"inline-flex items-center gap-2 rounded-lg border border-white/10 bg-white/5 px-3 py-2 text-sm font-medium text-zinc-400 transition hover:border-teal-500/30 hover:bg-white/10 hover:text-white"},{default:B(()=>[...e[19]||(e[19]=[o(" Aplicações API ",-1)])]),_:1})]),t("div",_,[e[21]||(e[21]=t("strong",null,"Teste provisório.",-1)),e[22]||(e[22]=o(" Use uma aplicação ativa em ",-1)),v(s(R),{href:"/aplicacoes-api",class:"underline hover:text-amber-100"},{default:B(()=>[...e[20]||(e[20]=[o("Aplicações API",-1)])]),_:1}),e[23]||(e[23]=o(" e cole a API key abaixo. Deixe ",-1)),e[24]||(e[24]=t("strong",null,"IPs permitidos",-1)),e[25]||(e[25]=o(" vazio ou inclua seu IP para não receber 403. ",-1))]),t("div",ee,[t("div",null,[e[26]||(e[26]=t("label",{class:"mb-1 block text-xs font-semibold uppercase tracking-wider text-zinc-500"},"API Key",-1)),n(t("input",{"onUpdate:modelValue":e[0]||(e[0]=l=>k.value=l),type:"password",placeholder:"getfy_xxxx...",class:"w-full rounded-lg border border-white/10 bg-white/5 px-3 py-2 font-mono text-sm text-white placeholder-zinc-500 focus:border-teal-500/50 focus:outline-none focus:ring-1 focus:ring-teal-500/30",autocomplete:"off"},null,512),[[r,k.value]])]),t("div",null,[e[27]||(e[27]=t("label",{class:"mb-1 block text-xs font-semibold uppercase tracking-wider text-zinc-500"},"Base URL",-1)),t("input",{value:I.value,readonly:"",class:"w-full rounded-lg border border-white/10 bg-zinc-900/80 px-3 py-2 font-mono text-sm text-zinc-400"},null,8,te)])]),t("div",le,[t("section",oe,[t("div",se,[v(s(X),{class:"h-5 w-5 text-teal-400"}),e[28]||(e[28]=t("h2",{class:"text-lg font-semibold text-white"},"Checkout Pro – Criar sessão",-1))]),e[35]||(e[35]=t("p",{class:"mb-4 text-sm text-zinc-400"},[o(" POST /checkout/sessions — retorna "),t("code",{class:"rounded bg-white/10 px-1 py-0.5"},"checkout_url"),o(" para o cliente concluir o pagamento. ")],-1)),t("div",ne,[t("div",null,[e[29]||(e[29]=t("label",{class:"mb-1 block text-xs text-zinc-500"},"E-mail",-1)),n(t("input",{"onUpdate:modelValue":e[1]||(e[1]=l=>m.value.customer.email=l),type:"email",class:"input-doc w-full rounded-lg border border-white/10 bg-white/5 px-3 py-2 text-sm text-white"},null,512),[[r,m.value.customer.email]])]),t("div",null,[e[30]||(e[30]=t("label",{class:"mb-1 block text-xs text-zinc-500"},"Nome",-1)),n(t("input",{"onUpdate:modelValue":e[2]||(e[2]=l=>m.value.customer.name=l),type:"text",class:"input-doc w-full rounded-lg border border-white/10 bg-white/5 px-3 py-2 text-sm text-white"},null,512),[[r,m.value.customer.name]])]),t("div",null,[e[31]||(e[31]=t("label",{class:"mb-1 block text-xs text-zinc-500"},"Valor",-1)),n(t("input",{"onUpdate:modelValue":e[3]||(e[3]=l=>m.value.amount=l),type:"number",step:"0.01",class:"input-doc w-full rounded-lg border border-white/10 bg-white/5 px-3 py-2 text-sm text-white"},null,512),[[r,m.value.amount,void 0,{number:!0}]])]),t("div",null,[e[33]||(e[33]=t("label",{class:"mb-1 block text-xs text-zinc-500"},"Moeda",-1)),n(t("select",{"onUpdate:modelValue":e[4]||(e[4]=l=>m.value.currency=l),class:"input-doc w-full rounded-lg border border-white/10 bg-white/5 px-3 py-2 text-sm text-white"},[...e[32]||(e[32]=[t("option",{value:"BRL"},"BRL",-1),t("option",{value:"USD"},"USD",-1),t("option",{value:"EUR"},"EUR",-1)])],512),[[E,m.value.currency]])])]),t("button",{type:"button",class:"inline-flex items-center gap-2 rounded-lg bg-teal-600 px-4 py-2 text-sm font-medium text-white hover:bg-teal-500 disabled:opacity-50",disabled:!!d.value,onClick:A},[d.value==="/checkout/sessions"?(a(),p(s(f),{key:0,class:"h-4 w-4 animate-spin"})):(a(),p(s(S),{key:1,class:"h-4 w-4"})),e[34]||(e[34]=o(" Enviar ",-1))],8,ie)]),t("section",ae,[t("div",re,[v(s(L),{class:"h-5 w-5 text-teal-400"}),e[36]||(e[36]=t("h2",{class:"text-lg font-semibold text-white"},"PIX – Criar cobrança",-1))]),e[43]||(e[43]=t("p",{class:"mb-4 text-sm text-zinc-400"},[o(" POST /payments/pix — retorna "),t("code",{class:"rounded bg-white/10 px-1 py-0.5"},"qrcode"),o(" e "),t("code",{class:"rounded bg-white/10 px-1 py-0.5"},"copy_paste"),o(". ")],-1)),t("div",de,[t("div",null,[e[37]||(e[37]=t("label",{class:"mb-1 block text-xs text-zinc-500"},"E-mail",-1)),n(t("input",{"onUpdate:modelValue":e[5]||(e[5]=l=>b.value.customer.email=l),type:"email",class:"input-doc w-full rounded-lg border border-white/10 bg-white/5 px-3 py-2 text-sm text-white"},null,512),[[r,b.value.customer.email]])]),t("div",null,[e[38]||(e[38]=t("label",{class:"mb-1 block text-xs text-zinc-500"},"Nome",-1)),n(t("input",{"onUpdate:modelValue":e[6]||(e[6]=l=>b.value.customer.name=l),type:"text",class:"input-doc w-full rounded-lg border border-white/10 bg-white/5 px-3 py-2 text-sm text-white"},null,512),[[r,b.value.customer.name]])]),t("div",null,[e[39]||(e[39]=t("label",{class:"mb-1 block text-xs text-zinc-500"},"Valor",-1)),n(t("input",{"onUpdate:modelValue":e[7]||(e[7]=l=>b.value.amount=l),type:"number",step:"0.01",class:"input-doc w-full rounded-lg border border-white/10 bg-white/5 px-3 py-2 text-sm text-white"},null,512),[[r,b.value.amount,void 0,{number:!0}]])]),t("div",null,[e[41]||(e[41]=t("label",{class:"mb-1 block text-xs text-zinc-500"},"Moeda",-1)),n(t("select",{"onUpdate:modelValue":e[8]||(e[8]=l=>b.value.currency=l),class:"input-doc w-full rounded-lg border border-white/10 bg-white/5 px-3 py-2 text-sm text-white"},[...e[40]||(e[40]=[t("option",{value:"BRL"},"BRL",-1),t("option",{value:"USD"},"USD",-1),t("option",{value:"EUR"},"EUR",-1)])],512),[[E,b.value.currency]])])]),t("button",{type:"button",class:"inline-flex items-center gap-2 rounded-lg bg-teal-600 px-4 py-2 text-sm font-medium text-white hover:bg-teal-500 disabled:opacity-50",disabled:!!d.value,onClick:F},[d.value==="/payments/pix"?(a(),p(s(f),{key:0,class:"h-4 w-4 animate-spin"})):(a(),p(s(S),{key:1,class:"h-4 w-4"})),e[42]||(e[42]=o(" Enviar ",-1))],8,ue)]),t("section",pe,[t("div",me,[v(s(H),{class:"h-5 w-5 text-teal-400"}),e[44]||(e[44]=t("h2",{class:"text-lg font-semibold text-white"},"Boleto – Criar cobrança",-1))]),e[51]||(e[51]=t("p",{class:"mb-4 text-sm text-zinc-400"},[o(" POST /payments/boleto — retorna "),t("code",{class:"rounded bg-white/10 px-1 py-0.5"},"barcode"),o(", "),t("code",{class:"rounded bg-white/10 px-1 py-0.5"},"pdf_url"),o(", "),t("code",{class:"rounded bg-white/10 px-1 py-0.5"},"expire_at"),o(". ")],-1)),t("div",be,[t("div",null,[e[45]||(e[45]=t("label",{class:"mb-1 block text-xs text-zinc-500"},"E-mail",-1)),n(t("input",{"onUpdate:modelValue":e[9]||(e[9]=l=>x.value.customer.email=l),type:"email",class:"input-doc w-full rounded-lg border border-white/10 bg-white/5 px-3 py-2 text-sm text-white"},null,512),[[r,x.value.customer.email]])]),t("div",null,[e[46]||(e[46]=t("label",{class:"mb-1 block text-xs text-zinc-500"},"Nome",-1)),n(t("input",{"onUpdate:modelValue":e[10]||(e[10]=l=>x.value.customer.name=l),type:"text",class:"input-doc w-full rounded-lg border border-white/10 bg-white/5 px-3 py-2 text-sm text-white"},null,512),[[r,x.value.customer.name]])]),t("div",null,[e[47]||(e[47]=t("label",{class:"mb-1 block text-xs text-zinc-500"},"Valor",-1)),n(t("input",{"onUpdate:modelValue":e[11]||(e[11]=l=>x.value.amount=l),type:"number",step:"0.01",class:"input-doc w-full rounded-lg border border-white/10 bg-white/5 px-3 py-2 text-sm text-white"},null,512),[[r,x.value.amount,void 0,{number:!0}]])]),t("div",null,[e[49]||(e[49]=t("label",{class:"mb-1 block text-xs text-zinc-500"},"Moeda",-1)),n(t("select",{"onUpdate:modelValue":e[12]||(e[12]=l=>x.value.currency=l),class:"input-doc w-full rounded-lg border border-white/10 bg-white/5 px-3 py-2 text-sm text-white"},[...e[48]||(e[48]=[t("option",{value:"BRL"},"BRL",-1),t("option",{value:"USD"},"USD",-1),t("option",{value:"EUR"},"EUR",-1)])],512),[[E,x.value.currency]])])]),t("button",{type:"button",class:"inline-flex items-center gap-2 rounded-lg bg-teal-600 px-4 py-2 text-sm font-medium text-white hover:bg-teal-500 disabled:opacity-50",disabled:!!d.value,onClick:M},[d.value==="/payments/boleto"?(a(),p(s(f),{key:0,class:"h-4 w-4 animate-spin"})):(a(),p(s(S),{key:1,class:"h-4 w-4"})),e[50]||(e[50]=o(" Enviar ",-1))],8,xe)]),t("section",ce,[t("div",ve,[v(s(L),{class:"h-5 w-5 text-teal-400"}),e[52]||(e[52]=t("h2",{class:"text-lg font-semibold text-white"},"Cartão – Criar pagamento",-1))]),e[58]||(e[58]=t("p",{class:"mb-4 text-sm text-zinc-400"},[o(" POST /payments/card — exige "),t("code",{class:"rounded bg-white/10 px-1 py-0.5"},"card.payment_token"),o(" (token do gateway). Para teste real use o checkout que gera o token. ")],-1)),t("div",ge,[t("div",null,[e[53]||(e[53]=t("label",{class:"mb-1 block text-xs text-zinc-500"},"E-mail",-1)),n(t("input",{"onUpdate:modelValue":e[13]||(e[13]=l=>c.value.customer.email=l),type:"email",class:"input-doc w-full rounded-lg border border-white/10 bg-white/5 px-3 py-2 text-sm text-white"},null,512),[[r,c.value.customer.email]])]),t("div",null,[e[54]||(e[54]=t("label",{class:"mb-1 block text-xs text-zinc-500"},"Nome",-1)),n(t("input",{"onUpdate:modelValue":e[14]||(e[14]=l=>c.value.customer.name=l),type:"text",class:"input-doc w-full rounded-lg border border-white/10 bg-white/5 px-3 py-2 text-sm text-white"},null,512),[[r,c.value.customer.name]])]),t("div",null,[e[55]||(e[55]=t("label",{class:"mb-1 block text-xs text-zinc-500"},"Valor",-1)),n(t("input",{"onUpdate:modelValue":e[15]||(e[15]=l=>c.value.amount=l),type:"number",step:"0.01",class:"input-doc w-full rounded-lg border border-white/10 bg-white/5 px-3 py-2 text-sm text-white"},null,512),[[r,c.value.amount,void 0,{number:!0}]])]),t("div",null,[e[56]||(e[56]=t("label",{class:"mb-1 block text-xs text-zinc-500"},"Payment token (gateway)",-1)),n(t("input",{"onUpdate:modelValue":e[16]||(e[16]=l=>c.value.card.payment_token=l),type:"text",placeholder:"Opcional para testar 422",class:"input-doc w-full rounded-lg border border-white/10 bg-white/5 px-3 py-2 font-mono text-sm text-white placeholder-zinc-500"},null,512),[[r,c.value.card.payment_token]])])]),t("button",{type:"button",class:"inline-flex items-center gap-2 rounded-lg bg-teal-600 px-4 py-2 text-sm font-medium text-white hover:bg-teal-500 disabled:opacity-50",disabled:!!d.value,onClick:$},[d.value==="/payments/card"?(a(),p(s(f),{key:0,class:"h-4 w-4 animate-spin"})):(a(),p(s(S),{key:1,class:"h-4 w-4"})),e[57]||(e[57]=o(" Enviar ",-1))],8,we)]),t("section",ye,[t("div",fe,[v(s(W),{class:"h-5 w-5 text-teal-400"}),e[59]||(e[59]=t("h2",{class:"text-lg font-semibold text-white"},"Consultar status do pedido",-1))]),e[62]||(e[62]=t("p",{class:"mb-4 text-sm text-zinc-400"},[o(" GET /payments/{order_id} — use o "),t("code",{class:"rounded bg-white/10 px-1 py-0.5"},"order_id"),o(" retornado em PIX/Boleto/Cartão. ")],-1)),t("div",ke,[t("div",he,[e[60]||(e[60]=t("label",{class:"mb-1 block text-xs text-zinc-500"},"Order ID",-1)),n(t("input",{"onUpdate:modelValue":e[17]||(e[17]=l=>P.value=l),type:"text",placeholder:"Ex: 123",class:"input-doc w-full rounded-lg border border-white/10 bg-white/5 px-3 py-2 font-mono text-sm text-white placeholder-zinc-500"},null,512),[[r,P.value]])]),t("button",{type:"button",class:"inline-flex items-center gap-2 rounded-lg bg-teal-600 px-4 py-2 text-sm font-medium text-white hover:bg-teal-500 disabled:opacity-50",disabled:!!d.value,onClick:q},[d.value&&d.value.startsWith("/payments/")&&!["/payments/pix","/payments/card","/payments/boleto"].includes(d.value)?(a(),p(s(f),{key:0,class:"h-4 w-4 animate-spin"})):(a(),p(s(Q),{key:1,class:"h-4 w-4"})),e[61]||(e[61]=o(" Consultar ",-1))],8,ze)])])]),i.value.endpoint||i.value.error?(a(),y("section",Ue,[e[63]||(e[63]=t("h3",{class:"mb-3 text-sm font-semibold uppercase tracking-wider text-zinc-500"},"Resposta",-1)),i.value.endpoint?(a(),y("p",Ce,[o(C(i.value.endpoint)+" ",1),i.value.status!==null?(a(),y("span",{key:0,class:G(["ml-2",i.value.status>=200&&i.value.status<300?"text-emerald-400":"text-amber-400"])},C(i.value.status),3)):V("",!0)])):V("",!0),i.value.error?(a(),y("p",Ve,C(i.value.error),1)):V("",!0),t("pre",Se,C(i.value.data!==null?JSON.stringify(i.value.data,null,2):"—"),1)])):V("",!0)]))}});export{Ae as default}; +import{o as a,c as y,a as t,g as v,h as B,i as o,u as s,b as n,v as r,bF as E,f as p,t as C,s as G,d as V,r as g,n as J}from"./runtime-dom.esm-bundler-OrSu0e66.js";import{c as j,l as R}from"./Toggle-BD3dflqy.js";import{_ as K}from"./LayoutDoc-Dtbbp7KD.js";import{S as X}from"./app-CT8pqccC.js";import{L as f}from"./loader-circle-CWooIS5S.js";import{C as L}from"./credit-card-BEa3N8tE.js";import{B as H}from"./banknote-CmiuBY2y.js";import{S as W}from"./search-5WwcWNIL.js";import{F as Q}from"./file-text-CNhd5y-T.js";import"./arrow-left-t2xJ2JaZ.js";const S=j("flask-conical",[["path",{d:"M14 2v6a2 2 0 0 0 .245.96l5.51 10.08A2 2 0 0 1 18 22H6a2 2 0 0 1-1.755-2.96l5.51-10.08A2 2 0 0 0 10 8V2",key:"18mbvz"}],["path",{d:"M6.453 15h11.094",key:"3shlmq"}],["path",{d:"M8.5 2h7",key:"csnxdl"}]]),Y={class:"py-8"},Z={class:"mb-8 flex flex-wrap items-center gap-4"},_={class:"mb-8 rounded-xl border border-amber-500/30 bg-amber-500/10 px-4 py-3 text-sm text-amber-200/90"},ee={class:"mb-8 grid gap-4 sm:grid-cols-2"},te=["value"],le={class:"space-y-8"},oe={class:"rounded-xl border border-white/10 bg-white/[0.02] p-6"},se={class:"mb-4 flex items-center gap-2"},ne={class:"mb-4 grid gap-4 sm:grid-cols-2 lg:grid-cols-4"},ie=["disabled"],ae={class:"rounded-xl border border-white/10 bg-white/[0.02] p-6"},re={class:"mb-4 flex items-center gap-2"},de={class:"mb-4 grid gap-4 sm:grid-cols-2 lg:grid-cols-4"},ue=["disabled"],pe={class:"rounded-xl border border-white/10 bg-white/[0.02] p-6"},me={class:"mb-4 flex items-center gap-2"},be={class:"mb-4 grid gap-4 sm:grid-cols-2 lg:grid-cols-4"},xe=["disabled"],ce={class:"rounded-xl border border-white/10 bg-white/[0.02] p-6"},ve={class:"mb-4 flex items-center gap-2"},ge={class:"mb-4 grid gap-4 sm:grid-cols-2 lg:grid-cols-4"},we=["disabled"],ye={class:"rounded-xl border border-white/10 bg-white/[0.02] p-6"},fe={class:"mb-4 flex items-center gap-2"},ke={class:"mb-4 flex flex-wrap items-end gap-4"},he={class:"min-w-[120px]"},ze=["disabled"],Ue={key:0,class:"mt-10 rounded-xl border border-white/10 bg-zinc-900/80 p-6"},Ce={key:0,class:"mb-2 font-mono text-sm text-zinc-400"},Ve={key:1,class:"mb-3 text-sm text-red-400"},Se={class:"overflow-x-auto rounded-lg border border-white/10 bg-zinc-950 p-4 font-mono text-xs text-zinc-300"},Ae=Object.assign({layout:K},{__name:"ApiPagamentosTestar",props:{baseUrl:{type:String,default:""}},setup(D){const O=D,k=g(""),d=g(""),i=g({endpoint:"",status:null,data:null,error:null}),I=J(()=>O.baseUrl?`${O.baseUrl.replace(/\/$/,"")}/api/v1`:"/api/v1");function N(){const u={"Content-Type":"application/json"};return k.value.trim()&&(u.Authorization=`Bearer ${k.value.trim()}`),u}async function w(u,e,l=null){i.value={endpoint:"",status:null,data:null,error:null},d.value=e;try{const h={method:u,headers:N()};l&&(u==="POST"||u==="PUT")&&(h.body=JSON.stringify(l));const z=await fetch(I.value+e,h),T=await z.text();let U=null;try{U=T?JSON.parse(T):null}catch{U=T}i.value={endpoint:u+" "+e,status:z.status,data:U,error:z.ok?null:U?.message||z.statusText}}catch(h){i.value={endpoint:u+" "+e,status:null,data:null,error:h.message||"Erro de rede"}}finally{d.value=""}}const m=g({customer:{email:"teste@exemplo.com",name:"Cliente Teste",cpf:"",phone:""},amount:10,currency:"BRL",expires_in:30});function A(){w("POST","/checkout/sessions",m.value)}const b=g({customer:{email:"teste@exemplo.com",name:"Cliente Teste",cpf:"",phone:""},amount:5,currency:"BRL"});function F(){w("POST","/payments/pix",b.value)}const x=g({customer:{email:"teste@exemplo.com",name:"Cliente Teste",cpf:"",phone:""},amount:25,currency:"BRL"});function M(){w("POST","/payments/boleto",x.value)}const c=g({customer:{email:"teste@exemplo.com",name:"Cliente Teste",cpf:"",phone:""},amount:15,currency:"BRL",card:{payment_token:"",card_mask:"**** 1234"}});function $(){w("POST","/payments/card",c.value)}const P=g("");function q(){const u=P.value.trim();if(!u){i.value={endpoint:"",status:null,data:null,error:"Informe o ID do pedido."};return}w("GET",`/payments/${encodeURIComponent(u)}`)}return(u,e)=>(a(),y("div",Y,[t("div",Z,[v(s(R),{href:"/docs/api-pagamentos",class:"inline-flex items-center gap-2 rounded-lg border border-white/10 bg-white/5 px-3 py-2 text-sm font-medium text-zinc-400 transition hover:border-teal-500/30 hover:bg-white/10 hover:text-white"},{default:B(()=>[...e[18]||(e[18]=[o(" ← Documentação ",-1)])]),_:1}),v(s(R),{href:"/aplicacoes-api",class:"inline-flex items-center gap-2 rounded-lg border border-white/10 bg-white/5 px-3 py-2 text-sm font-medium text-zinc-400 transition hover:border-teal-500/30 hover:bg-white/10 hover:text-white"},{default:B(()=>[...e[19]||(e[19]=[o(" Aplicações API ",-1)])]),_:1})]),t("div",_,[e[21]||(e[21]=t("strong",null,"Teste provisório.",-1)),e[22]||(e[22]=o(" Use uma aplicação ativa em ",-1)),v(s(R),{href:"/aplicacoes-api",class:"underline hover:text-amber-100"},{default:B(()=>[...e[20]||(e[20]=[o("Aplicações API",-1)])]),_:1}),e[23]||(e[23]=o(" e cole a API key abaixo. Deixe ",-1)),e[24]||(e[24]=t("strong",null,"IPs permitidos",-1)),e[25]||(e[25]=o(" vazio ou inclua seu IP para não receber 403. ",-1))]),t("div",ee,[t("div",null,[e[26]||(e[26]=t("label",{class:"mb-1 block text-xs font-semibold uppercase tracking-wider text-zinc-500"},"API Key",-1)),n(t("input",{"onUpdate:modelValue":e[0]||(e[0]=l=>k.value=l),type:"password",placeholder:"getfy_xxxx...",class:"w-full rounded-lg border border-white/10 bg-white/5 px-3 py-2 font-mono text-sm text-white placeholder-zinc-500 focus:border-teal-500/50 focus:outline-none focus:ring-1 focus:ring-teal-500/30",autocomplete:"off"},null,512),[[r,k.value]])]),t("div",null,[e[27]||(e[27]=t("label",{class:"mb-1 block text-xs font-semibold uppercase tracking-wider text-zinc-500"},"Base URL",-1)),t("input",{value:I.value,readonly:"",class:"w-full rounded-lg border border-white/10 bg-zinc-900/80 px-3 py-2 font-mono text-sm text-zinc-400"},null,8,te)])]),t("div",le,[t("section",oe,[t("div",se,[v(s(X),{class:"h-5 w-5 text-teal-400"}),e[28]||(e[28]=t("h2",{class:"text-lg font-semibold text-white"},"Checkout Pro – Criar sessão",-1))]),e[35]||(e[35]=t("p",{class:"mb-4 text-sm text-zinc-400"},[o(" POST /checkout/sessions — retorna "),t("code",{class:"rounded bg-white/10 px-1 py-0.5"},"checkout_url"),o(" para o cliente concluir o pagamento. ")],-1)),t("div",ne,[t("div",null,[e[29]||(e[29]=t("label",{class:"mb-1 block text-xs text-zinc-500"},"E-mail",-1)),n(t("input",{"onUpdate:modelValue":e[1]||(e[1]=l=>m.value.customer.email=l),type:"email",class:"input-doc w-full rounded-lg border border-white/10 bg-white/5 px-3 py-2 text-sm text-white"},null,512),[[r,m.value.customer.email]])]),t("div",null,[e[30]||(e[30]=t("label",{class:"mb-1 block text-xs text-zinc-500"},"Nome",-1)),n(t("input",{"onUpdate:modelValue":e[2]||(e[2]=l=>m.value.customer.name=l),type:"text",class:"input-doc w-full rounded-lg border border-white/10 bg-white/5 px-3 py-2 text-sm text-white"},null,512),[[r,m.value.customer.name]])]),t("div",null,[e[31]||(e[31]=t("label",{class:"mb-1 block text-xs text-zinc-500"},"Valor",-1)),n(t("input",{"onUpdate:modelValue":e[3]||(e[3]=l=>m.value.amount=l),type:"number",step:"0.01",class:"input-doc w-full rounded-lg border border-white/10 bg-white/5 px-3 py-2 text-sm text-white"},null,512),[[r,m.value.amount,void 0,{number:!0}]])]),t("div",null,[e[33]||(e[33]=t("label",{class:"mb-1 block text-xs text-zinc-500"},"Moeda",-1)),n(t("select",{"onUpdate:modelValue":e[4]||(e[4]=l=>m.value.currency=l),class:"input-doc w-full rounded-lg border border-white/10 bg-white/5 px-3 py-2 text-sm text-white"},[...e[32]||(e[32]=[t("option",{value:"BRL"},"BRL",-1),t("option",{value:"USD"},"USD",-1),t("option",{value:"EUR"},"EUR",-1)])],512),[[E,m.value.currency]])])]),t("button",{type:"button",class:"inline-flex items-center gap-2 rounded-lg bg-teal-600 px-4 py-2 text-sm font-medium text-white hover:bg-teal-500 disabled:opacity-50",disabled:!!d.value,onClick:A},[d.value==="/checkout/sessions"?(a(),p(s(f),{key:0,class:"h-4 w-4 animate-spin"})):(a(),p(s(S),{key:1,class:"h-4 w-4"})),e[34]||(e[34]=o(" Enviar ",-1))],8,ie)]),t("section",ae,[t("div",re,[v(s(L),{class:"h-5 w-5 text-teal-400"}),e[36]||(e[36]=t("h2",{class:"text-lg font-semibold text-white"},"PIX – Criar cobrança",-1))]),e[43]||(e[43]=t("p",{class:"mb-4 text-sm text-zinc-400"},[o(" POST /payments/pix — retorna "),t("code",{class:"rounded bg-white/10 px-1 py-0.5"},"qrcode"),o(" e "),t("code",{class:"rounded bg-white/10 px-1 py-0.5"},"copy_paste"),o(". ")],-1)),t("div",de,[t("div",null,[e[37]||(e[37]=t("label",{class:"mb-1 block text-xs text-zinc-500"},"E-mail",-1)),n(t("input",{"onUpdate:modelValue":e[5]||(e[5]=l=>b.value.customer.email=l),type:"email",class:"input-doc w-full rounded-lg border border-white/10 bg-white/5 px-3 py-2 text-sm text-white"},null,512),[[r,b.value.customer.email]])]),t("div",null,[e[38]||(e[38]=t("label",{class:"mb-1 block text-xs text-zinc-500"},"Nome",-1)),n(t("input",{"onUpdate:modelValue":e[6]||(e[6]=l=>b.value.customer.name=l),type:"text",class:"input-doc w-full rounded-lg border border-white/10 bg-white/5 px-3 py-2 text-sm text-white"},null,512),[[r,b.value.customer.name]])]),t("div",null,[e[39]||(e[39]=t("label",{class:"mb-1 block text-xs text-zinc-500"},"Valor",-1)),n(t("input",{"onUpdate:modelValue":e[7]||(e[7]=l=>b.value.amount=l),type:"number",step:"0.01",class:"input-doc w-full rounded-lg border border-white/10 bg-white/5 px-3 py-2 text-sm text-white"},null,512),[[r,b.value.amount,void 0,{number:!0}]])]),t("div",null,[e[41]||(e[41]=t("label",{class:"mb-1 block text-xs text-zinc-500"},"Moeda",-1)),n(t("select",{"onUpdate:modelValue":e[8]||(e[8]=l=>b.value.currency=l),class:"input-doc w-full rounded-lg border border-white/10 bg-white/5 px-3 py-2 text-sm text-white"},[...e[40]||(e[40]=[t("option",{value:"BRL"},"BRL",-1),t("option",{value:"USD"},"USD",-1),t("option",{value:"EUR"},"EUR",-1)])],512),[[E,b.value.currency]])])]),t("button",{type:"button",class:"inline-flex items-center gap-2 rounded-lg bg-teal-600 px-4 py-2 text-sm font-medium text-white hover:bg-teal-500 disabled:opacity-50",disabled:!!d.value,onClick:F},[d.value==="/payments/pix"?(a(),p(s(f),{key:0,class:"h-4 w-4 animate-spin"})):(a(),p(s(S),{key:1,class:"h-4 w-4"})),e[42]||(e[42]=o(" Enviar ",-1))],8,ue)]),t("section",pe,[t("div",me,[v(s(H),{class:"h-5 w-5 text-teal-400"}),e[44]||(e[44]=t("h2",{class:"text-lg font-semibold text-white"},"Boleto – Criar cobrança",-1))]),e[51]||(e[51]=t("p",{class:"mb-4 text-sm text-zinc-400"},[o(" POST /payments/boleto — retorna "),t("code",{class:"rounded bg-white/10 px-1 py-0.5"},"barcode"),o(", "),t("code",{class:"rounded bg-white/10 px-1 py-0.5"},"pdf_url"),o(", "),t("code",{class:"rounded bg-white/10 px-1 py-0.5"},"expire_at"),o(". ")],-1)),t("div",be,[t("div",null,[e[45]||(e[45]=t("label",{class:"mb-1 block text-xs text-zinc-500"},"E-mail",-1)),n(t("input",{"onUpdate:modelValue":e[9]||(e[9]=l=>x.value.customer.email=l),type:"email",class:"input-doc w-full rounded-lg border border-white/10 bg-white/5 px-3 py-2 text-sm text-white"},null,512),[[r,x.value.customer.email]])]),t("div",null,[e[46]||(e[46]=t("label",{class:"mb-1 block text-xs text-zinc-500"},"Nome",-1)),n(t("input",{"onUpdate:modelValue":e[10]||(e[10]=l=>x.value.customer.name=l),type:"text",class:"input-doc w-full rounded-lg border border-white/10 bg-white/5 px-3 py-2 text-sm text-white"},null,512),[[r,x.value.customer.name]])]),t("div",null,[e[47]||(e[47]=t("label",{class:"mb-1 block text-xs text-zinc-500"},"Valor",-1)),n(t("input",{"onUpdate:modelValue":e[11]||(e[11]=l=>x.value.amount=l),type:"number",step:"0.01",class:"input-doc w-full rounded-lg border border-white/10 bg-white/5 px-3 py-2 text-sm text-white"},null,512),[[r,x.value.amount,void 0,{number:!0}]])]),t("div",null,[e[49]||(e[49]=t("label",{class:"mb-1 block text-xs text-zinc-500"},"Moeda",-1)),n(t("select",{"onUpdate:modelValue":e[12]||(e[12]=l=>x.value.currency=l),class:"input-doc w-full rounded-lg border border-white/10 bg-white/5 px-3 py-2 text-sm text-white"},[...e[48]||(e[48]=[t("option",{value:"BRL"},"BRL",-1),t("option",{value:"USD"},"USD",-1),t("option",{value:"EUR"},"EUR",-1)])],512),[[E,x.value.currency]])])]),t("button",{type:"button",class:"inline-flex items-center gap-2 rounded-lg bg-teal-600 px-4 py-2 text-sm font-medium text-white hover:bg-teal-500 disabled:opacity-50",disabled:!!d.value,onClick:M},[d.value==="/payments/boleto"?(a(),p(s(f),{key:0,class:"h-4 w-4 animate-spin"})):(a(),p(s(S),{key:1,class:"h-4 w-4"})),e[50]||(e[50]=o(" Enviar ",-1))],8,xe)]),t("section",ce,[t("div",ve,[v(s(L),{class:"h-5 w-5 text-teal-400"}),e[52]||(e[52]=t("h2",{class:"text-lg font-semibold text-white"},"Cartão – Criar pagamento",-1))]),e[58]||(e[58]=t("p",{class:"mb-4 text-sm text-zinc-400"},[o(" POST /payments/card — exige "),t("code",{class:"rounded bg-white/10 px-1 py-0.5"},"card.payment_token"),o(" (token do gateway). Para teste real use o checkout que gera o token. ")],-1)),t("div",ge,[t("div",null,[e[53]||(e[53]=t("label",{class:"mb-1 block text-xs text-zinc-500"},"E-mail",-1)),n(t("input",{"onUpdate:modelValue":e[13]||(e[13]=l=>c.value.customer.email=l),type:"email",class:"input-doc w-full rounded-lg border border-white/10 bg-white/5 px-3 py-2 text-sm text-white"},null,512),[[r,c.value.customer.email]])]),t("div",null,[e[54]||(e[54]=t("label",{class:"mb-1 block text-xs text-zinc-500"},"Nome",-1)),n(t("input",{"onUpdate:modelValue":e[14]||(e[14]=l=>c.value.customer.name=l),type:"text",class:"input-doc w-full rounded-lg border border-white/10 bg-white/5 px-3 py-2 text-sm text-white"},null,512),[[r,c.value.customer.name]])]),t("div",null,[e[55]||(e[55]=t("label",{class:"mb-1 block text-xs text-zinc-500"},"Valor",-1)),n(t("input",{"onUpdate:modelValue":e[15]||(e[15]=l=>c.value.amount=l),type:"number",step:"0.01",class:"input-doc w-full rounded-lg border border-white/10 bg-white/5 px-3 py-2 text-sm text-white"},null,512),[[r,c.value.amount,void 0,{number:!0}]])]),t("div",null,[e[56]||(e[56]=t("label",{class:"mb-1 block text-xs text-zinc-500"},"Payment token (gateway)",-1)),n(t("input",{"onUpdate:modelValue":e[16]||(e[16]=l=>c.value.card.payment_token=l),type:"text",placeholder:"Opcional para testar 422",class:"input-doc w-full rounded-lg border border-white/10 bg-white/5 px-3 py-2 font-mono text-sm text-white placeholder-zinc-500"},null,512),[[r,c.value.card.payment_token]])])]),t("button",{type:"button",class:"inline-flex items-center gap-2 rounded-lg bg-teal-600 px-4 py-2 text-sm font-medium text-white hover:bg-teal-500 disabled:opacity-50",disabled:!!d.value,onClick:$},[d.value==="/payments/card"?(a(),p(s(f),{key:0,class:"h-4 w-4 animate-spin"})):(a(),p(s(S),{key:1,class:"h-4 w-4"})),e[57]||(e[57]=o(" Enviar ",-1))],8,we)]),t("section",ye,[t("div",fe,[v(s(W),{class:"h-5 w-5 text-teal-400"}),e[59]||(e[59]=t("h2",{class:"text-lg font-semibold text-white"},"Consultar status do pedido",-1))]),e[62]||(e[62]=t("p",{class:"mb-4 text-sm text-zinc-400"},[o(" GET /payments/{order_id} — use o "),t("code",{class:"rounded bg-white/10 px-1 py-0.5"},"order_id"),o(" retornado em PIX/Boleto/Cartão. ")],-1)),t("div",ke,[t("div",he,[e[60]||(e[60]=t("label",{class:"mb-1 block text-xs text-zinc-500"},"Order ID",-1)),n(t("input",{"onUpdate:modelValue":e[17]||(e[17]=l=>P.value=l),type:"text",placeholder:"Ex: 123",class:"input-doc w-full rounded-lg border border-white/10 bg-white/5 px-3 py-2 font-mono text-sm text-white placeholder-zinc-500"},null,512),[[r,P.value]])]),t("button",{type:"button",class:"inline-flex items-center gap-2 rounded-lg bg-teal-600 px-4 py-2 text-sm font-medium text-white hover:bg-teal-500 disabled:opacity-50",disabled:!!d.value,onClick:q},[d.value&&d.value.startsWith("/payments/")&&!["/payments/pix","/payments/card","/payments/boleto"].includes(d.value)?(a(),p(s(f),{key:0,class:"h-4 w-4 animate-spin"})):(a(),p(s(Q),{key:1,class:"h-4 w-4"})),e[61]||(e[61]=o(" Consultar ",-1))],8,ze)])])]),i.value.endpoint||i.value.error?(a(),y("section",Ue,[e[63]||(e[63]=t("h3",{class:"mb-3 text-sm font-semibold uppercase tracking-wider text-zinc-500"},"Resposta",-1)),i.value.endpoint?(a(),y("p",Ce,[o(C(i.value.endpoint)+" ",1),i.value.status!==null?(a(),y("span",{key:0,class:G(["ml-2",i.value.status>=200&&i.value.status<300?"text-emerald-400":"text-amber-400"])},C(i.value.status),3)):V("",!0)])):V("",!0),i.value.error?(a(),y("p",Ve,C(i.value.error),1)):V("",!0),t("pre",Se,C(i.value.data!==null?JSON.stringify(i.value.data,null,2):"—"),1)])):V("",!0)]))}});export{Ae as default}; diff --git a/public/build/assets/Boleto-TdxBil4R.js b/public/build/assets/Boleto-vDeH1ZRF.js similarity index 99% rename from public/build/assets/Boleto-TdxBil4R.js rename to public/build/assets/Boleto-vDeH1ZRF.js index 1c21acdc..2aea0f7d 100644 --- a/public/build/assets/Boleto-TdxBil4R.js +++ b/public/build/assets/Boleto-vDeH1ZRF.js @@ -1 +1 @@ -import{k as O,b as W,r as _}from"./Toggle-BD3dflqy.js";import{c as G}from"./confetti.module-oQXWb4Lk.js";import{_ as M,s as q}from"./ConversionPixels-BHgntlY3.js";import{r as D,f as E}from"./useConversionPurchase-CCQbvMOY.js";import{C as L}from"./copy-CAHk-g6g.js";import{F as S}from"./file-text-CNhd5y-T.js";import{C as U}from"./app-CKysWbKx.js";import{k as z,l as H,o as a,c as i,g as m,h as J,a as e,u as f,t as n,i as b,d as l,s as K,f as Q,F as X,r as d,n as h}from"./runtime-dom.esm-bundler-OrSu0e66.js";const Y={class:"min-h-screen bg-gray-100 px-4 py-6 sm:py-8 pb-12"},Z={class:"mx-auto w-full max-w-md"},ee={class:"overflow-hidden rounded-2xl border border-gray-200 bg-white shadow-lg"},te={class:"px-5 sm:px-6 pt-6 pb-6"},se={class:"mb-4 space-y-3 rounded-xl border-2 border-dashed border-gray-200 bg-gray-50 p-4"},oe={class:"flex justify-between items-center text-sm"},re={class:"font-bold text-gray-900"},ne={class:"flex justify-between items-center text-sm"},ae={class:"font-medium text-gray-900"},ie=["value"],le={class:"flex flex-col sm:flex-row gap-3 mb-4"},de={class:"mt-4 w-full max-w-md overflow-hidden rounded-2xl border border-gray-200 bg-white shadow-lg"},ue={class:"p-5 sm:p-6"},ce={class:"mb-3 space-y-2"},me={key:0,class:"flex items-start justify-between gap-2 text-xs"},fe={class:"font-medium text-gray-900 text-right"},pe={class:"flex items-center justify-between text-xs"},xe={class:"font-medium text-gray-900"},ye={class:"mt-3 border-t border-dashed border-gray-200 pt-3"},ge={class:"flex items-center justify-between text-sm"},_e={class:"font-bold text-gray-900"},be={key:0,class:"mt-4 w-full max-w-md overflow-hidden rounded-2xl border border-gray-200 bg-white shadow-lg"},he={class:"p-5 sm:p-6"},ve={class:"space-y-3 text-sm"},we={key:0,class:"flex items-center justify-between"},ke={class:"ml-2 break-all text-right font-medium text-gray-900"},Ce={key:1,class:"flex items-center justify-between"},Pe={class:"ml-2 break-all text-right font-medium text-gray-900"},Be={key:2,class:"flex items-center justify-between"},Se={class:"font-medium text-gray-900"},je={class:"mt-4 w-full max-w-md overflow-hidden rounded-2xl border border-gray-200 bg-white shadow-lg"},Re={class:"p-5 sm:p-6"},Te={class:"flex items-center justify-between"},Fe={class:"flex items-center gap-3"},Ae={class:"flex h-10 w-10 shrink-0 items-center justify-center rounded-full border border-gray-200 bg-gray-100"},qe=Object.assign({layout:null},{__name:"Boleto",props:{token:{type:String,required:!0},order_id:{type:Number,required:!0},amount:{type:Number,default:0},amount_formatted:{type:String,default:"R$ 0,00"},expire_at:{type:String,default:null},barcode:{type:String,default:""},pdf_url:{type:String,default:null},product_name:{type:String,default:""},checkout_slug:{type:String,default:""},redirect_after_purchase:{type:String,default:null},customer_name:{type:String,default:null},customer_email:{type:String,default:null},customer_phone:{type:String,default:null},conversion_pixels:{type:Object,default:()=>({})},meta_purchase_event_id:{type:String,default:""},purchase_contents:{type:Array,default:()=>[]}},setup(r){const p=d(null),j=d(!1),v=d(!1),g=d(null),x=d(null),o=r,y=d("Copiar código"),c=d("pending");let u=null;const R=h(()=>{const s=o.expire_at;if(!s)return"—";const t=s.match(/^(\d{4})-(\d{2})-(\d{2})/);return t?`${t[3]}/${t[2]}/${t[1]}`:s}),T=h(()=>(o.customer_name||"")!==""||(o.customer_email||"")!==""||(o.customer_phone||"")!==""),w=h(()=>({checkout_slug:o.checkout_slug??"",product_name:o.product_name??"",page_path:typeof window<"u"?window.location.pathname:""}));async function F(){if(v.value)return;const s=p.value;if(s){if(s.firePaymentGenerated?.("boleto",o.amount,"BRL",String(o.order_id),w.value),q(o.conversion_pixels)){const t=k({});await E(s,t,{maxWaitMs:3e3,triggerType:"boleto",pixels:o.conversion_pixels})}v.value=!0}}function k(s){const t=s?.order_id??o.order_id;return{order_id:t,amount:typeof s?.amount=="number"?s.amount:o.amount,currency:typeof s?.currency=="string"&&s.currency?s.currency:"BRL",meta_event_id:typeof s?.meta_purchase_event_id=="string"&&s.meta_purchase_event_id?s.meta_purchase_event_id:(o.meta_purchase_event_id||"").trim()||`getfy_purchase_${t}`,purchase_contents:Array.isArray(s?.purchase_contents)&&s.purchase_contents.length>0?s.purchase_contents:o.purchase_contents}}function C(s){s.startsWith("http")||s.startsWith("//")?window.location.href=s:_.visit(s)}async function P(){const s=x.value;if(!s)return;const t=g.value;x.value=null,g.value=null;const B=p.value;if(t&&B){await D(B,t,()=>C(s),{maxWaitMs:3e3,redirectDelayMs:0,triggerType:"approved",pixels:o.conversion_pixels});return}C(s)}async function A(){try{const{data:s}=await W.get("/checkout/order-status",{params:{token:o.token}});if(s.status==="completed"){c.value="completed",u&&(clearInterval(u),u=null),g.value=k(s);const t=s.redirect_url||o.redirect_after_purchase||"/meus-produtos";x.value=t,P()}return s}catch{return{status:"pending"}}}function V(){j.value=!0;const s=p.value;s?.firePageView&&s.firePageView(o.amount,"BRL"),F(),x.value&&P()}async function I(){const s=o.barcode||"";if(s)try{await navigator.clipboard.writeText(s),y.value="Copiado!",setTimeout(()=>y.value="Copiar código",2e3)}catch{y.value="Copiar código"}}function $(){const s=o.pdf_url;s&&window.open(s,"_blank","noopener,noreferrer")}function N(){o.checkout_slug?_.visit(`/c/${o.checkout_slug}`):_.visit("/")}return z(()=>{G({particleCount:120,spread:70,origin:{y:.6}}),u=setInterval(()=>{c.value!=="completed"&&A()},15e3)}),H(()=>{u&&clearInterval(u)}),(s,t)=>(a(),i(X,null,[m(M,{ref_key:"conversionPixelsRef",ref:p,pixels:o.conversion_pixels,"tracking-context":w.value,onReady:V},null,8,["pixels","tracking-context"]),m(f(O),null,{default:J(()=>[...t[0]||(t[0]=[e("title",null,"Boleto gerado",-1)])]),_:1}),e("div",Y,[e("div",Z,[e("div",ee,[e("div",te,[t[4]||(t[4]=e("h1",{class:"mb-3 text-center text-lg font-bold text-gray-900 sm:text-xl"},"Boleto gerado",-1)),t[5]||(t[5]=e("p",{class:"mb-5 text-center text-xs text-gray-500 sm:text-sm"}," O acesso ao produto digital será enviado via e-mail depois que o boleto for pago. A confirmação do pagamento pode levar até 48 horas. ",-1)),e("div",se,[e("div",oe,[t[1]||(t[1]=e("span",{class:"text-gray-600"},"Valor do boleto",-1)),e("span",re,n(r.amount_formatted),1)]),e("div",ne,[t[2]||(t[2]=e("span",{class:"text-gray-600"},"Data de vencimento",-1)),e("span",ae,n(R.value),1)])]),t[6]||(t[6]=e("p",{class:"mb-2 text-xs text-gray-500"},"Código do Boleto",-1)),e("input",{type:"text",value:r.barcode,readonly:"",class:"mb-3 w-full rounded-xl border border-gray-200 bg-gray-50 px-3 py-2.5 text-base text-gray-800 focus:outline-none font-mono"},null,8,ie),e("div",le,[e("button",{type:"button",class:"flex flex-1 items-center justify-center gap-1.5 rounded-xl bg-gray-900 px-4 py-3 text-sm font-semibold text-white transition-opacity hover:opacity-90",onClick:I},[m(f(L),{class:"h-4 w-4"}),b(" "+n(y.value),1)]),r.pdf_url?(a(),i("button",{key:0,type:"button",class:"flex flex-1 items-center justify-center gap-1.5 rounded-xl border-2 border-gray-200 bg-white px-4 py-3 text-sm font-semibold text-gray-900 transition-colors hover:bg-gray-50",onClick:$},[m(f(S),{class:"h-4 w-4"}),t[3]||(t[3]=b(" Imprimir boleto ",-1))])):l("",!0)])])]),e("div",de,[e("div",ue,[t[10]||(t[10]=e("h3",{class:"mb-4 text-sm font-bold text-gray-900"},"Resumo da compra",-1)),e("div",ce,[r.product_name?(a(),i("div",me,[t[7]||(t[7]=e("span",{class:"text-gray-600 shrink-0"},"Produto",-1)),e("span",fe,n(r.product_name),1)])):l("",!0),e("div",pe,[t[8]||(t[8]=e("span",{class:"text-gray-700"},"Pagamento Boleto",-1)),e("span",xe,n(r.amount_formatted),1)])]),e("div",ye,[e("div",ge,[t[9]||(t[9]=e("span",{class:"font-bold text-gray-900"},"Total",-1)),e("span",_e,n(r.amount_formatted),1)])])])]),T.value?(a(),i("div",be,[e("div",he,[t[14]||(t[14]=e("h3",{class:"mb-4 text-sm font-bold text-gray-900"},"Informações",-1)),e("div",ve,[r.customer_name?(a(),i("div",we,[t[11]||(t[11]=e("span",{class:"text-gray-600"},"Cliente",-1)),e("span",ke,n(r.customer_name),1)])):l("",!0),r.customer_email?(a(),i("div",Ce,[t[12]||(t[12]=e("span",{class:"text-gray-600"},"E-mail",-1)),e("span",Pe,n(r.customer_email),1)])):l("",!0),r.customer_phone?(a(),i("div",Be,[t[13]||(t[13]=e("span",{class:"text-gray-600"},"Telefone",-1)),e("span",Se,n(r.customer_phone),1)])):l("",!0)])])])):l("",!0),e("div",je,[e("div",Re,[e("div",Te,[e("div",Fe,[e("div",Ae,[m(f(S),{class:"h-5 w-5 text-gray-700"})]),t[15]||(t[15]=e("span",{class:"text-sm font-medium text-gray-900"},"Boleto",-1))]),e("span",{class:K(["inline-flex items-center gap-1.5 rounded-full border px-3 py-1.5 text-xs font-semibold",c.value==="completed"?"border-green-200 bg-green-100 text-green-800":"border-amber-200 bg-amber-100 text-amber-800"])},[c.value==="completed"?(a(),Q(f(U),{key:0,class:"h-3.5 w-3.5"})):l("",!0),b(" "+n(c.value==="completed"?"Pago":"Pendente"),1)],2)])])]),e("div",{class:"mt-6 text-center"},[e("button",{type:"button",class:"text-sm font-medium text-gray-600 underline underline-offset-2 hover:text-gray-900",onClick:N}," Voltar ao checkout ")])])])],64))}});export{qe as default}; +import{k as O,b as W,r as _}from"./Toggle-BD3dflqy.js";import{c as G}from"./confetti.module-oQXWb4Lk.js";import{_ as M,s as q}from"./ConversionPixels-BHgntlY3.js";import{r as D,f as E}from"./useConversionPurchase-CCQbvMOY.js";import{C as L}from"./copy-CAHk-g6g.js";import{F as S}from"./file-text-CNhd5y-T.js";import{C as U}from"./app-CT8pqccC.js";import{k as z,l as H,o as a,c as i,g as m,h as J,a as e,u as f,t as n,i as b,d as l,s as K,f as Q,F as X,r as d,n as h}from"./runtime-dom.esm-bundler-OrSu0e66.js";const Y={class:"min-h-screen bg-gray-100 px-4 py-6 sm:py-8 pb-12"},Z={class:"mx-auto w-full max-w-md"},ee={class:"overflow-hidden rounded-2xl border border-gray-200 bg-white shadow-lg"},te={class:"px-5 sm:px-6 pt-6 pb-6"},se={class:"mb-4 space-y-3 rounded-xl border-2 border-dashed border-gray-200 bg-gray-50 p-4"},oe={class:"flex justify-between items-center text-sm"},re={class:"font-bold text-gray-900"},ne={class:"flex justify-between items-center text-sm"},ae={class:"font-medium text-gray-900"},ie=["value"],le={class:"flex flex-col sm:flex-row gap-3 mb-4"},de={class:"mt-4 w-full max-w-md overflow-hidden rounded-2xl border border-gray-200 bg-white shadow-lg"},ue={class:"p-5 sm:p-6"},ce={class:"mb-3 space-y-2"},me={key:0,class:"flex items-start justify-between gap-2 text-xs"},fe={class:"font-medium text-gray-900 text-right"},pe={class:"flex items-center justify-between text-xs"},xe={class:"font-medium text-gray-900"},ye={class:"mt-3 border-t border-dashed border-gray-200 pt-3"},ge={class:"flex items-center justify-between text-sm"},_e={class:"font-bold text-gray-900"},be={key:0,class:"mt-4 w-full max-w-md overflow-hidden rounded-2xl border border-gray-200 bg-white shadow-lg"},he={class:"p-5 sm:p-6"},ve={class:"space-y-3 text-sm"},we={key:0,class:"flex items-center justify-between"},ke={class:"ml-2 break-all text-right font-medium text-gray-900"},Ce={key:1,class:"flex items-center justify-between"},Pe={class:"ml-2 break-all text-right font-medium text-gray-900"},Be={key:2,class:"flex items-center justify-between"},Se={class:"font-medium text-gray-900"},je={class:"mt-4 w-full max-w-md overflow-hidden rounded-2xl border border-gray-200 bg-white shadow-lg"},Re={class:"p-5 sm:p-6"},Te={class:"flex items-center justify-between"},Fe={class:"flex items-center gap-3"},Ae={class:"flex h-10 w-10 shrink-0 items-center justify-center rounded-full border border-gray-200 bg-gray-100"},qe=Object.assign({layout:null},{__name:"Boleto",props:{token:{type:String,required:!0},order_id:{type:Number,required:!0},amount:{type:Number,default:0},amount_formatted:{type:String,default:"R$ 0,00"},expire_at:{type:String,default:null},barcode:{type:String,default:""},pdf_url:{type:String,default:null},product_name:{type:String,default:""},checkout_slug:{type:String,default:""},redirect_after_purchase:{type:String,default:null},customer_name:{type:String,default:null},customer_email:{type:String,default:null},customer_phone:{type:String,default:null},conversion_pixels:{type:Object,default:()=>({})},meta_purchase_event_id:{type:String,default:""},purchase_contents:{type:Array,default:()=>[]}},setup(r){const p=d(null),j=d(!1),v=d(!1),g=d(null),x=d(null),o=r,y=d("Copiar código"),c=d("pending");let u=null;const R=h(()=>{const s=o.expire_at;if(!s)return"—";const t=s.match(/^(\d{4})-(\d{2})-(\d{2})/);return t?`${t[3]}/${t[2]}/${t[1]}`:s}),T=h(()=>(o.customer_name||"")!==""||(o.customer_email||"")!==""||(o.customer_phone||"")!==""),w=h(()=>({checkout_slug:o.checkout_slug??"",product_name:o.product_name??"",page_path:typeof window<"u"?window.location.pathname:""}));async function F(){if(v.value)return;const s=p.value;if(s){if(s.firePaymentGenerated?.("boleto",o.amount,"BRL",String(o.order_id),w.value),q(o.conversion_pixels)){const t=k({});await E(s,t,{maxWaitMs:3e3,triggerType:"boleto",pixels:o.conversion_pixels})}v.value=!0}}function k(s){const t=s?.order_id??o.order_id;return{order_id:t,amount:typeof s?.amount=="number"?s.amount:o.amount,currency:typeof s?.currency=="string"&&s.currency?s.currency:"BRL",meta_event_id:typeof s?.meta_purchase_event_id=="string"&&s.meta_purchase_event_id?s.meta_purchase_event_id:(o.meta_purchase_event_id||"").trim()||`getfy_purchase_${t}`,purchase_contents:Array.isArray(s?.purchase_contents)&&s.purchase_contents.length>0?s.purchase_contents:o.purchase_contents}}function C(s){s.startsWith("http")||s.startsWith("//")?window.location.href=s:_.visit(s)}async function P(){const s=x.value;if(!s)return;const t=g.value;x.value=null,g.value=null;const B=p.value;if(t&&B){await D(B,t,()=>C(s),{maxWaitMs:3e3,redirectDelayMs:0,triggerType:"approved",pixels:o.conversion_pixels});return}C(s)}async function A(){try{const{data:s}=await W.get("/checkout/order-status",{params:{token:o.token}});if(s.status==="completed"){c.value="completed",u&&(clearInterval(u),u=null),g.value=k(s);const t=s.redirect_url||o.redirect_after_purchase||"/meus-produtos";x.value=t,P()}return s}catch{return{status:"pending"}}}function V(){j.value=!0;const s=p.value;s?.firePageView&&s.firePageView(o.amount,"BRL"),F(),x.value&&P()}async function I(){const s=o.barcode||"";if(s)try{await navigator.clipboard.writeText(s),y.value="Copiado!",setTimeout(()=>y.value="Copiar código",2e3)}catch{y.value="Copiar código"}}function $(){const s=o.pdf_url;s&&window.open(s,"_blank","noopener,noreferrer")}function N(){o.checkout_slug?_.visit(`/c/${o.checkout_slug}`):_.visit("/")}return z(()=>{G({particleCount:120,spread:70,origin:{y:.6}}),u=setInterval(()=>{c.value!=="completed"&&A()},15e3)}),H(()=>{u&&clearInterval(u)}),(s,t)=>(a(),i(X,null,[m(M,{ref_key:"conversionPixelsRef",ref:p,pixels:o.conversion_pixels,"tracking-context":w.value,onReady:V},null,8,["pixels","tracking-context"]),m(f(O),null,{default:J(()=>[...t[0]||(t[0]=[e("title",null,"Boleto gerado",-1)])]),_:1}),e("div",Y,[e("div",Z,[e("div",ee,[e("div",te,[t[4]||(t[4]=e("h1",{class:"mb-3 text-center text-lg font-bold text-gray-900 sm:text-xl"},"Boleto gerado",-1)),t[5]||(t[5]=e("p",{class:"mb-5 text-center text-xs text-gray-500 sm:text-sm"}," O acesso ao produto digital será enviado via e-mail depois que o boleto for pago. A confirmação do pagamento pode levar até 48 horas. ",-1)),e("div",se,[e("div",oe,[t[1]||(t[1]=e("span",{class:"text-gray-600"},"Valor do boleto",-1)),e("span",re,n(r.amount_formatted),1)]),e("div",ne,[t[2]||(t[2]=e("span",{class:"text-gray-600"},"Data de vencimento",-1)),e("span",ae,n(R.value),1)])]),t[6]||(t[6]=e("p",{class:"mb-2 text-xs text-gray-500"},"Código do Boleto",-1)),e("input",{type:"text",value:r.barcode,readonly:"",class:"mb-3 w-full rounded-xl border border-gray-200 bg-gray-50 px-3 py-2.5 text-base text-gray-800 focus:outline-none font-mono"},null,8,ie),e("div",le,[e("button",{type:"button",class:"flex flex-1 items-center justify-center gap-1.5 rounded-xl bg-gray-900 px-4 py-3 text-sm font-semibold text-white transition-opacity hover:opacity-90",onClick:I},[m(f(L),{class:"h-4 w-4"}),b(" "+n(y.value),1)]),r.pdf_url?(a(),i("button",{key:0,type:"button",class:"flex flex-1 items-center justify-center gap-1.5 rounded-xl border-2 border-gray-200 bg-white px-4 py-3 text-sm font-semibold text-gray-900 transition-colors hover:bg-gray-50",onClick:$},[m(f(S),{class:"h-4 w-4"}),t[3]||(t[3]=b(" Imprimir boleto ",-1))])):l("",!0)])])]),e("div",de,[e("div",ue,[t[10]||(t[10]=e("h3",{class:"mb-4 text-sm font-bold text-gray-900"},"Resumo da compra",-1)),e("div",ce,[r.product_name?(a(),i("div",me,[t[7]||(t[7]=e("span",{class:"text-gray-600 shrink-0"},"Produto",-1)),e("span",fe,n(r.product_name),1)])):l("",!0),e("div",pe,[t[8]||(t[8]=e("span",{class:"text-gray-700"},"Pagamento Boleto",-1)),e("span",xe,n(r.amount_formatted),1)])]),e("div",ye,[e("div",ge,[t[9]||(t[9]=e("span",{class:"font-bold text-gray-900"},"Total",-1)),e("span",_e,n(r.amount_formatted),1)])])])]),T.value?(a(),i("div",be,[e("div",he,[t[14]||(t[14]=e("h3",{class:"mb-4 text-sm font-bold text-gray-900"},"Informações",-1)),e("div",ve,[r.customer_name?(a(),i("div",we,[t[11]||(t[11]=e("span",{class:"text-gray-600"},"Cliente",-1)),e("span",ke,n(r.customer_name),1)])):l("",!0),r.customer_email?(a(),i("div",Ce,[t[12]||(t[12]=e("span",{class:"text-gray-600"},"E-mail",-1)),e("span",Pe,n(r.customer_email),1)])):l("",!0),r.customer_phone?(a(),i("div",Be,[t[13]||(t[13]=e("span",{class:"text-gray-600"},"Telefone",-1)),e("span",Se,n(r.customer_phone),1)])):l("",!0)])])])):l("",!0),e("div",je,[e("div",Re,[e("div",Te,[e("div",Fe,[e("div",Ae,[m(f(S),{class:"h-5 w-5 text-gray-700"})]),t[15]||(t[15]=e("span",{class:"text-sm font-medium text-gray-900"},"Boleto",-1))]),e("span",{class:K(["inline-flex items-center gap-1.5 rounded-full border px-3 py-1.5 text-xs font-semibold",c.value==="completed"?"border-green-200 bg-green-100 text-green-800":"border-amber-200 bg-amber-100 text-amber-800"])},[c.value==="completed"?(a(),Q(f(U),{key:0,class:"h-3.5 w-3.5"})):l("",!0),b(" "+n(c.value==="completed"?"Pago":"Pendente"),1)],2)])])]),e("div",{class:"mt-6 text-center"},[e("button",{type:"button",class:"text-sm font-medium text-gray-600 underline underline-offset-2 hover:text-gray-900",onClick:N}," Voltar ao checkout ")])])])],64))}});export{qe as default}; diff --git a/public/build/assets/Builder-BXvInCwy.js b/public/build/assets/Builder-CCfo-mlJ.js similarity index 99% rename from public/build/assets/Builder-BXvInCwy.js rename to public/build/assets/Builder-CCfo-mlJ.js index 2eadfcac..6c9b739f 100644 --- a/public/build/assets/Builder-BXvInCwy.js +++ b/public/build/assets/Builder-CCfo-mlJ.js @@ -1,5 +1,5 @@ const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/CheckoutCodeEditor-CJlBXg_F.js","assets/runtime-dom.esm-bundler-OrSu0e66.js"])))=>i.map(i=>d[i]); -import{_ as Ae,u as Ee,e as _e,a as De}from"./app-CKysWbKx.js";import{bx as Ie,r as T,A as be,o as p,c as k,a as t,g as s,h as M,i as y,d as P,F as j,y as oe,s as c,u as d,t as A,aL as we,n as F,J as Pe,k as je,aN as Be,l as Le,b as i,bG as _,f as z,v,bF as ce,bD as ve,ac as Me,G as Re,bm as qe}from"./runtime-dom.esm-bundler-OrSu0e66.js";import{c as $e,_ as X,u as Fe,l as he,i as S,B as Ne,j as ge,S as Oe}from"./Toggle-BD3dflqy.js";import{_ as G,T as He,S as Ge}from"./ImageUpload-CiL4KycK.js";import{n as Ve,T as Je,a as We,I as Qe,b as Xe,i as Ye}from"./checkoutContentFormats-02OMn5WP.js";import{G as ke}from"./grip-vertical-BH6FRwTK.js";import{C as ze}from"./chevron-up-LCq4Peo3.js";import{C as U}from"./chevron-down-Cr9wcM6o.js";import{T as ye}from"./trash-2-Bxek5XZ9.js";import{I as Ce}from"./image-Aikc9zug.js";import{_ as Ke}from"./HorizontalScrollTabs-B3gLPvR5.js";import{U as Ue,P as Ze,a as et,b as tt,c as ot,d as nt}from"./checkoutEmbed-C8FwFg9u.js";import{C as I}from"./chevron-right-BDfXxPVC.js";import{C as lt}from"./credit-card-BEa3N8tE.js";import{P as st}from"./palette-Bdslkkzt.js";import{C as it}from"./clock-BPm9yiQC.js";import{V as at}from"./video-BKkbUnD_.js";import{B as rt}from"./book-open-DHA14jdk.js";import{M as dt}from"./monitor-CiyAoutz.js";import{R as ut}from"./refresh-cw-hI9usXzv.js";import"./loader-circle-CWooIS5S.js";import"./upload-CCMGWz9e.js";const pt=$e("dollar-sign",[["line",{x1:"12",x2:"12",y1:"2",y2:"22",key:"7eqyqh"}],["path",{d:"M17 5H9.5a3.5 3.5 0 0 0 0 7h5a3.5 3.5 0 0 1 0 7H6",key:"1b0p4s"}]]);const ct=$e("phone",[["path",{d:"M13.832 16.568a1 1 0 0 0 1.213-.303l.355-.465A2 2 0 0 1 17 15h3a2 2 0 0 1 2 2v3a2 2 0 0 1-2 2A18 18 0 0 1 2 4a2 2 0 0 1 2-2h3a2 2 0 0 1 2 2v3a2 2 0 0 1-.8 1.6l-.468.351a1 1 0 0 0-.292 1.233 14 14 0 0 0 6.392 6.384",key:"9njp5v"}]]),mt={class:"space-y-6"},bt={class:"rounded-xl border border-zinc-200 p-4 dark:border-zinc-700"},xt={class:"mb-3 flex items-center justify-between gap-2"},ft={key:0,class:"rounded-lg border border-dashed border-zinc-200 px-3 py-6 text-center text-xs text-zinc-500 dark:border-zinc-600"},vt=["onDragover","onDrop"],gt={class:"flex items-center justify-between gap-2"},kt={class:"flex min-w-0 items-center gap-2"},zt=["onDragstart"],yt={class:"truncate text-xs font-semibold uppercase tracking-wide text-zinc-500"},_t={class:"flex shrink-0 items-center gap-1"},wt=["disabled","onClick"],ht=["disabled","onClick"],Vt=["onClick"],Ct={class:"rounded-xl border border-zinc-200 p-4 dark:border-zinc-700"},Ut={class:"mb-3 flex flex-wrap items-center justify-between gap-2"},$t={class:"flex flex-wrap gap-2"},St={key:0,class:"rounded-lg border border-dashed border-zinc-200 px-3 py-6 text-center text-xs text-zinc-500 dark:border-zinc-600"},Tt=["onDragover","onDrop"],At={class:"flex items-center justify-between gap-2"},Et={class:"flex min-w-0 items-center gap-2"},Dt=["onDragstart"],It={class:"truncate text-xs font-semibold uppercase tracking-wide text-zinc-500"},Pt={class:"flex shrink-0 items-center gap-1"},jt=["disabled","onClick"],Bt=["disabled","onClick"],Lt=["onClick"],Mt=["value","onInput"],Rt=["value","onInput"],qt=["value","onChange"],Ft=["value"],Nt=["value","onChange"],Ot=["value","onInput"],Ht={class:"rounded-xl border border-zinc-200 p-4 dark:border-zinc-700"},Gt={class:"mb-3 flex items-center justify-between gap-2"},Jt={key:0,class:"rounded-lg border border-dashed border-zinc-200 px-3 py-6 text-center text-xs text-zinc-500 dark:border-zinc-600"},Wt=["onDragover","onDrop"],Qt={class:"flex items-center justify-between gap-2"},Xt={class:"flex min-w-0 items-center gap-2"},Yt=["onDragstart"],Kt={class:"truncate text-xs font-semibold uppercase tracking-wide text-zinc-500"},Zt={class:"flex shrink-0 items-center gap-1"},eo=["disabled","onClick"],to=["disabled","onClick"],oo=["onClick"],me="w-full rounded-xl border border-zinc-200 bg-white px-3 py-2 text-sm text-zinc-900 dark:border-zinc-600 dark:bg-zinc-800 dark:text-zinc-100",no={__name:"CheckoutContentBlocksEditor",props:we({uploadUrl:{type:String,required:!0}},{modelValue:{type:Array,default:()=>[]},modelModifiers:{}}),emits:we(["changed"],["update:modelValue"]),setup(B,{emit:ne}){const l=Ie(B,"modelValue"),h=ne,f=T(Ve(l.value)),V=T(null),n=T(null);be(l,a=>{f.value=Ve(a)},{deep:!0});function R(a){f.value=a,l.value=a,h("changed")}function ae(a){return a.type==="text"?"Bloco de texto":Qe[a.format]?.label??"Imagem"}function le(a,u="main"){R([...f.value,We(a,u)])}function xe(){R([...f.value,Xe()])}function ue(a){const u=[...f.value];u.splice(a,1),R(u)}function Y(a,u,x){const m=f.value.map((H,ie)=>({block:H,index:ie})).filter(({block:H})=>x(H)),r=m.findIndex(({index:H})=>H===a);if(r<0)return;const O=r+u;O<0||O>=m.length||E(m[r].index,m[O].index,x)}function E(a,u,x){if(a===u||a<0||u<0)return;const m=f.value.map((w,te)=>({block:w,index:te})).filter(({block:w})=>x(w)),r=m.findIndex(({index:w})=>w===a),O=m.findIndex(({index:w})=>w===u);if(r<0||O<0||r===O)return;const H=m.map(({index:w})=>w),ie=m.map(({index:w})=>f.value[w]),[fe]=ie.splice(r,1);ie.splice(O,0,fe);const q=[...f.value];H.forEach((w,te)=>{q[w]=ie[te]}),R(q)}function $(a,u){const x=[...f.value];x[a]={...x[a],...u},R(x)}const K=T(null),J=a=>a.type==="image"&&a.format==="hero",W=a=>a.type==="text"||a.type==="image"&&a.placement==="main"&&a.format!=="hero",se=a=>a.type==="image"&&a.placement==="sidebar";function pe(a,u,x){V.value=a,n.value=a,K.value=x,u.dataTransfer&&(u.dataTransfer.effectAllowed="move",u.dataTransfer.setData("text/plain",String(a)))}function re(a,u,x){K.value===x&&(u.preventDefault(),u.dataTransfer&&(u.dataTransfer.dropEffect="move"),n.value=a)}function de(a,u,x){if(K.value!==x)return;u.preventDefault();const m=V.value;m!=null&&m!==a&&E(m,a,x),V.value=null,n.value=null,K.value=null}function Z(){V.value=null,n.value=null,K.value=null}function L(a){return["mb-4 space-y-3 rounded-lg bg-zinc-50 p-3 transition dark:bg-zinc-800/50",n.value===a&&V.value!==a?"ring-2 ring-[var(--color-primary)] ring-offset-1 dark:ring-offset-zinc-900":"",V.value===a?"opacity-50":""]}const Q=F(()=>f.value.map((a,u)=>({block:a,index:u})).filter(({block:a})=>a.type==="image"&&a.format==="hero")),N=F(()=>f.value.map((a,u)=>({block:a,index:u})).filter(({block:a})=>a.type==="text"||a.type==="image"&&a.placement==="main"&&a.format!=="hero")),ee=F(()=>f.value.map((a,u)=>({block:a,index:u})).filter(({block:a})=>a.type==="image"&&a.placement==="sidebar"));return(a,u)=>(p(),k("div",mt,[t("div",bt,[t("div",xt,[u[5]||(u[5]=t("div",null,[t("h4",{class:"text-sm font-semibold text-zinc-900 dark:text-white"},"Topo (Hero)"),t("p",{class:"text-xs text-zinc-500 dark:text-zinc-400"},"Recomendado 1200×400 px (3:1) — a imagem aparece inteira, sem corte")],-1)),s(X,{type:"button",variant:"secondary",size:"sm",onClick:u[0]||(u[0]=x=>le("hero","main"))},{default:M(()=>[...u[4]||(u[4]=[y(" + Hero ",-1)])]),_:1})]),Q.value.length?P("",!0):(p(),k("div",ft," Nenhum banner no topo. ")),(p(!0),k(j,null,oe(Q.value,({block:x,index:m})=>(p(),k("div",{key:x.id,class:c(L(m)),onDragover:r=>re(m,r,J),onDrop:r=>de(m,r,J)},[t("div",gt,[t("div",kt,[t("button",{type:"button",class:"cursor-grab touch-none rounded p-1 text-zinc-400 hover:bg-zinc-200 active:cursor-grabbing dark:hover:bg-zinc-700",draggable:"true",title:"Arrastar para reordenar",onDragstart:r=>pe(m,r,J),onDragend:Z},[s(d(ke),{class:"h-4 w-4"})],40,zt),t("span",yt,A(ae(x)),1)]),t("div",_t,[t("button",{type:"button",class:"rounded p-1 text-zinc-500 hover:bg-zinc-200 disabled:opacity-30 dark:hover:bg-zinc-700",disabled:Q.value.findIndex(r=>r.index===m)===0,onClick:r=>Y(m,-1,J)},[s(d(ze),{class:"h-4 w-4"})],8,wt),t("button",{type:"button",class:"rounded p-1 text-zinc-500 hover:bg-zinc-200 disabled:opacity-30 dark:hover:bg-zinc-700",disabled:Q.value.findIndex(r=>r.index===m)>=Q.value.length-1,onClick:r=>Y(m,1,J)},[s(d(U),{class:"h-4 w-4"})],8,ht),t("button",{type:"button",class:"rounded p-1 text-red-500 hover:bg-red-50 dark:hover:bg-red-950/30",onClick:r=>ue(m)},[s(d(ye),{class:"h-4 w-4"})],8,Vt)])]),s(G,{"model-value":x.url,"upload-url":B.uploadUrl,label:"Imagem hero","aspect-format":"hero","soft-validate-ratio":"","onUpdate:modelValue":r=>$(m,{url:r})},null,8,["model-value","upload-url","onUpdate:modelValue"])],42,vt))),128))]),t("div",Ct,[t("div",Ut,[u[9]||(u[9]=t("div",null,[t("h4",{class:"text-sm font-semibold text-zinc-900 dark:text-white"},"Conteúdo principal"),t("p",{class:"text-xs text-zinc-500 dark:text-zinc-400"},"Banners e textos acima do formulário — arraste pelo ícone ≡ para reordenar")],-1)),t("div",$t,[s(X,{type:"button",variant:"secondary",size:"sm",onClick:u[1]||(u[1]=x=>le("wide","main"))},{default:M(()=>[s(d(Ce),{class:"h-3.5 w-3.5"}),u[6]||(u[6]=y(" Largo ",-1))]),_:1}),s(X,{type:"button",variant:"secondary",size:"sm",onClick:u[2]||(u[2]=x=>le("square","main"))},{default:M(()=>[s(d(Ce),{class:"h-3.5 w-3.5"}),u[7]||(u[7]=y(" Quadrado ",-1))]),_:1}),s(X,{type:"button",variant:"secondary",size:"sm",onClick:xe},{default:M(()=>[s(d(He),{class:"h-3.5 w-3.5"}),u[8]||(u[8]=y(" Texto ",-1))]),_:1})])]),N.value.length?P("",!0):(p(),k("div",St," Adicione banners ou textos acima do formulário de pagamento. ")),(p(!0),k(j,null,oe(N.value,({block:x,index:m})=>(p(),k("div",{key:x.id,class:c(L(m)),onDragover:r=>re(m,r,W),onDrop:r=>de(m,r,W)},[t("div",At,[t("div",Et,[t("button",{type:"button",class:"cursor-grab touch-none rounded p-1 text-zinc-400 hover:bg-zinc-200 active:cursor-grabbing dark:hover:bg-zinc-700",draggable:"true",title:"Arrastar para reordenar",onDragstart:r=>pe(m,r,W),onDragend:Z},[s(d(ke),{class:"h-4 w-4"})],40,Dt),t("span",It,A(ae(x)),1)]),t("div",Pt,[t("button",{type:"button",class:"rounded p-1 text-zinc-500 hover:bg-zinc-200 disabled:opacity-30 dark:hover:bg-zinc-700",disabled:N.value.findIndex(r=>r.index===m)===0,onClick:r=>Y(m,-1,W)},[s(d(ze),{class:"h-4 w-4"})],8,jt),t("button",{type:"button",class:"rounded p-1 text-zinc-500 hover:bg-zinc-200 disabled:opacity-30 dark:hover:bg-zinc-700",disabled:N.value.findIndex(r=>r.index===m)>=N.value.length-1,onClick:r=>Y(m,1,W)},[s(d(U),{class:"h-4 w-4"})],8,Bt),t("button",{type:"button",class:"rounded p-1 text-red-500 hover:bg-red-50 dark:hover:bg-red-950/30",onClick:r=>ue(m)},[s(d(ye),{class:"h-4 w-4"})],8,Lt)])]),x.type==="text"?(p(),k(j,{key:0},[t("div",null,[u[10]||(u[10]=t("label",{class:"mb-1 block text-xs font-medium text-zinc-600 dark:text-zinc-400"},"Título",-1)),t("input",{value:x.title,type:"text",class:c(me),placeholder:"Título do bloco",onInput:r=>$(m,{title:r.target.value})},null,40,Mt)]),t("div",null,[u[11]||(u[11]=t("label",{class:"mb-1 block text-xs font-medium text-zinc-600 dark:text-zinc-400"},"Texto",-1)),t("textarea",{value:x.body,rows:"4",class:c(me),placeholder:"Descrição, benefícios, garantia...",onInput:r=>$(m,{body:r.target.value})},null,40,Rt)]),t("div",null,[u[12]||(u[12]=t("label",{class:"mb-1 block text-xs font-medium text-zinc-600 dark:text-zinc-400"},"Alinhamento",-1)),t("select",{value:x.align,class:c(me),onChange:r=>$(m,{align:r.target.value})},[(p(!0),k(j,null,oe(d(Je),r=>(p(),k("option",{key:r.id,value:r.id},A(r.label),9,Ft))),128))],40,qt)])],64)):(p(),k(j,{key:1},[t("div",null,[u[14]||(u[14]=t("label",{class:"mb-1 block text-xs font-medium text-zinc-600 dark:text-zinc-400"},"Formato",-1)),t("select",{value:x.format,class:c(me),onChange:r=>$(m,{format:r.target.value})},[...u[13]||(u[13]=[t("option",{value:"wide"},"Largo (16:9)",-1),t("option",{value:"square"},"Quadrado (1:1)",-1)])],40,Nt)]),s(G,{"model-value":x.url,"upload-url":B.uploadUrl,label:ae(x),"aspect-format":x.format,"soft-validate-ratio":"","onUpdate:modelValue":r=>$(m,{url:r})},null,8,["model-value","upload-url","label","aspect-format","onUpdate:modelValue"]),t("div",null,[u[15]||(u[15]=t("label",{class:"mb-1 block text-xs font-medium text-zinc-600 dark:text-zinc-400"},"Link (opcional)",-1)),t("input",{value:x.link,type:"url",class:c(me),placeholder:"https://",onInput:r=>$(m,{link:r.target.value})},null,40,Ot)])],64))],42,Tt))),128))]),t("div",Ht,[t("div",Gt,[u[17]||(u[17]=t("div",null,[t("h4",{class:"text-sm font-semibold text-zinc-900 dark:text-white"},"Banners laterais"),t("p",{class:"text-xs text-zinc-500 dark:text-zinc-400"},"Ideal 400×600 px (2:3) — a imagem aparece inteira na lateral, sem corte")],-1)),s(X,{type:"button",variant:"secondary",size:"sm",onClick:u[3]||(u[3]=x=>le("portrait","sidebar"))},{default:M(()=>[...u[16]||(u[16]=[y(" + Lateral ",-1)])]),_:1})]),ee.value.length?P("",!0):(p(),k("div",Jt," Nenhum banner lateral. ")),(p(!0),k(j,null,oe(ee.value,({block:x,index:m})=>(p(),k("div",{key:x.id,class:c([L(m),"max-w-xs"]),onDragover:r=>re(m,r,se),onDrop:r=>de(m,r,se)},[t("div",Qt,[t("div",Xt,[t("button",{type:"button",class:"cursor-grab touch-none rounded p-1 text-zinc-400 hover:bg-zinc-200 active:cursor-grabbing dark:hover:bg-zinc-700",draggable:"true",title:"Arrastar para reordenar",onDragstart:r=>pe(m,r,se),onDragend:Z},[s(d(ke),{class:"h-4 w-4"})],40,Yt),t("span",Kt,A(ae(x)),1)]),t("div",Zt,[t("button",{type:"button",class:"rounded p-1 text-zinc-500 hover:bg-zinc-200 disabled:opacity-30 dark:hover:bg-zinc-700",disabled:ee.value.findIndex(r=>r.index===m)===0,onClick:r=>Y(m,-1,se)},[s(d(ze),{class:"h-4 w-4"})],8,eo),t("button",{type:"button",class:"rounded p-1 text-zinc-500 hover:bg-zinc-200 disabled:opacity-30 dark:hover:bg-zinc-700",disabled:ee.value.findIndex(r=>r.index===m)>=ee.value.length-1,onClick:r=>Y(m,1,se)},[s(d(U),{class:"h-4 w-4"})],8,to),t("button",{type:"button",class:"rounded p-1 text-red-500 hover:bg-red-50 dark:hover:bg-red-950/30",onClick:r=>ue(m)},[s(d(ye),{class:"h-4 w-4"})],8,oo)])]),s(G,{"model-value":x.url,"upload-url":B.uploadUrl,label:"Banner lateral","aspect-format":"portrait","soft-validate-ratio":"","onUpdate:modelValue":r=>$(m,{url:r})},null,8,["model-value","upload-url","onUpdate:modelValue"])],42,Wt))),128))])]))}},lo={class:"flex h-[calc(100dvh-10rem)] min-h-0 flex-col gap-3"},so={class:"shrink-0"},io={class:"text-sm text-zinc-500 dark:text-zinc-400","aria-label":"Breadcrumb"},ao={class:"text-zinc-900 dark:text-white"},ro={class:"flex min-h-0 flex-1 gap-4 lg:flex-row"},uo={class:"min-h-0 w-full shrink-0 space-y-4 overflow-y-auto lg:w-[380px] lg:max-h-full"},po={class:"space-y-4"},co={class:"panel-card-lg"},mo={class:"flex items-center gap-2"},bo={class:"border-t border-zinc-200 px-4 py-4 dark:border-zinc-700"},xo={class:"space-y-4"},fo={class:"space-y-2 rounded-xl border border-zinc-200 p-3 dark:border-zinc-700"},vo={class:"panel-card-lg"},go={class:"flex items-center gap-2"},ko={class:"border-t border-zinc-200 px-4 py-4 dark:border-zinc-700"},zo={class:"space-y-4"},yo={class:"flex items-center justify-between rounded-xl border border-zinc-100 bg-zinc-50/50 px-4 py-3 dark:border-zinc-700 dark:bg-zinc-800/50"},_o={class:"flex items-center gap-2 text-sm font-medium text-zinc-700 dark:text-zinc-300"},wo={class:"flex items-center justify-between rounded-xl border border-zinc-100 bg-zinc-50/50 px-4 py-3 dark:border-zinc-700 dark:bg-zinc-800/50"},ho={class:"flex items-center gap-2 text-sm font-medium text-zinc-700 dark:text-zinc-300"},Vo={class:"flex items-center justify-between rounded-xl border border-zinc-100 bg-zinc-50/50 px-4 py-3 dark:border-zinc-700 dark:bg-zinc-800/50"},Co={class:"flex items-center gap-2 text-sm font-medium text-zinc-700 dark:text-zinc-300"},Uo={class:"flex items-center justify-between rounded-xl border border-zinc-100 bg-zinc-50/50 px-4 py-3 dark:border-zinc-700 dark:bg-zinc-800/50"},$o={class:"panel-card-lg"},So={class:"flex items-center gap-2"},To={class:"border-t border-zinc-200 px-4 py-4 dark:border-zinc-700"},Ao={class:"space-y-4"},Eo={class:"flex gap-2"},Do={class:"flex gap-2"},Io={class:"flex gap-2"},Po={class:"panel-card-lg"},jo={class:"flex items-center gap-2"},Bo={class:"border-t border-zinc-200 px-4 py-4 dark:border-zinc-700"},Lo={class:"space-y-4"},Mo={class:"grid grid-cols-2 gap-3"},Ro={class:"mt-3 grid grid-cols-2 gap-2"},qo={class:"pt-2"},Fo={class:"panel-card-lg"},No={class:"flex items-center gap-2"},Oo={class:"border-t border-zinc-200 px-4 py-4 dark:border-zinc-700"},Ho={class:"space-y-4"},Go=["placeholder"],Jo={class:"grid grid-cols-2 gap-2"},Wo={class:"panel-card-lg"},Qo={class:"flex items-center gap-2"},Xo={class:"border-t border-zinc-200 px-4 py-4 dark:border-zinc-700"},Yo={class:"space-y-4"},Ko={class:"panel-card-lg"},Zo={class:"border-t border-zinc-200 px-4 py-4 dark:border-zinc-700"},en={class:"space-y-4"},tn={class:"panel-card-lg"},on={class:"flex items-center gap-2"},nn={class:"border-t border-zinc-200 px-4 py-4 dark:border-zinc-700"},ln={class:"space-y-4"},sn={key:0,class:"mt-4 space-y-2"},an=["value"],rn={class:"flex flex-wrap items-center gap-2"},dn=["href"],un={class:"space-y-4"},pn={class:"panel-card-lg"},cn={class:"border-t border-zinc-200 px-4 py-4 dark:border-zinc-700"},mn={class:"space-y-4"},bn={class:"panel-card-lg"},xn={class:"border-t border-zinc-200 px-4 py-4 dark:border-zinc-700"},fn={class:"space-y-4"},vn={class:"panel-card-lg"},gn={class:"border-t border-zinc-200 px-4 py-4 dark:border-zinc-700"},kn={class:"space-y-4"},zn={class:"flex gap-2"},yn={class:"panel-card-lg"},_n={class:"border-t border-zinc-200 px-4 py-4 dark:border-zinc-700"},wn={class:"space-y-4"},hn={class:"space-y-2 rounded-xl border border-zinc-100 bg-zinc-50/50 p-3 dark:border-zinc-700 dark:bg-zinc-800/50"},Vn={class:"flex items-center gap-2"},Cn={class:"flex items-center gap-2"},Un={class:"flex items-center gap-2"},$n={class:"flex items-center gap-2 pt-1"},Sn=["value"],Tn={class:"space-y-4"},An={class:"panel-card-lg p-4"},En={class:"space-y-4"},Dn={class:"panel-card-lg"},In={class:"grid gap-3 sm:grid-cols-2"},Pn=["onClick"],jn={class:"text-sm font-semibold text-zinc-900 dark:text-white"},Bn={key:0,class:"text-xs text-zinc-500 dark:text-zinc-400"},Ln={key:1,class:"mt-1 text-xs font-medium text-emerald-600 dark:text-emerald-400"},Mn={class:"space-y-4"},Rn={class:"panel-card-lg"},qn={class:"border-t border-zinc-200 px-4 py-4 dark:border-zinc-700"},Fn={class:"space-y-4"},Nn={class:"mb-3 flex items-center justify-between"},On={class:"text-sm font-medium text-zinc-700 dark:text-zinc-300"},Hn={class:"space-y-3"},Gn=["onUpdate:modelValue"],Jn=["onUpdate:modelValue"],Wn=["onUpdate:modelValue"],Qn={class:"flex items-center justify-between"},Xn={class:"space-y-4"},Yn={class:"rounded-xl border border-zinc-200 bg-white dark:border-zinc-700 dark:bg-zinc-800"},Kn={class:"flex items-center gap-2"},Zn={class:"space-y-3 border-t border-zinc-200 px-4 py-3 text-xs text-zinc-600 dark:border-zinc-700 dark:text-zinc-400"},el=["href"],tl={class:"flex flex-wrap gap-1 rounded-xl border border-zinc-200 bg-zinc-50 p-1 dark:border-zinc-700 dark:bg-zinc-900/50"},ol=["onClick"],nl={class:"rounded-xl border border-zinc-200 bg-white p-2 dark:border-zinc-700 dark:bg-zinc-800"},ll={class:"panel-table flex min-h-0 min-w-0 flex-1 flex-col overflow-hidden"},sl={class:"flex shrink-0 flex-wrap items-center justify-between gap-2 border-b border-zinc-200 px-4 py-2 dark:border-zinc-700"},il={class:"text-xs text-zinc-500 dark:text-zinc-400"},al={key:0,class:"ml-1 inline-flex items-center gap-1 text-emerald-600 dark:text-emerald-400"},rl={class:"flex items-center gap-2"},dl={class:"flex rounded-lg border border-zinc-200 bg-white p-0.5 dark:border-zinc-600 dark:bg-zinc-700"},ul=["disabled"],pl=["href"],cl={class:"flex min-h-0 flex-1 flex-col overflow-hidden p-3"},ml=["src"],bl={key:1,class:"flex min-h-0 flex-1 items-center justify-center rounded-xl border border-zinc-200 bg-zinc-100/80 text-sm text-zinc-500 dark:border-zinc-600 dark:bg-zinc-800/80 dark:text-zinc-400"},g="block w-full rounded-xl border-2 border-zinc-200 bg-white px-4 py-2.5 text-zinc-900 placeholder-zinc-400 transition focus:border-[var(--color-primary)] focus:outline-none focus:ring-2 focus:ring-[var(--color-primary)]/20 dark:border-zinc-600 dark:bg-zinc-800 dark:text-white dark:placeholder-zinc-500",Bl=Object.assign({layout:Ae},{__name:"Builder",props:{produto:{type:Object,required:!0},config:{type:Object,default:()=>({})},checkout_scope:{type:Object,default:()=>({type:"main",offer_id:null,plan_id:null,checkout_slug:null,label:""})},cupons:{type:Array,default:()=>[]},plugin_checkout_templates:{type:Array,default:()=>[]}},setup(B){const ne=Re(()=>De(()=>import("./CheckoutCodeEditor-CJlBXg_F.js"),__vite__mapDeps([0,1]))),l=B,h=T("geral"),f=T({price:!0,customer_fields:!0,appearance:!0,timer:!0,notification:!0,video:!0,redirect:!0,embed:!0,seo:!0,support_button:!0,footer:!0,exit_popup:!0});function V(b){f.value[b]=!f.value[b]}const n=Pe({summary:{previous_price:l.config?.summary?.previous_price??null,discount_text:l.config?.summary?.discount_text??"",show_description:l.config?.summary?.show_description!==!1,mobile_sticky_footer:l.config?.summary?.mobile_sticky_footer!==!1,mobile_sticky_icon_url:l.config?.summary?.mobile_sticky_icon_url??""},appearance:{background_color:l.config?.appearance?.background_color??"#E3E3E3",primary_color:l.config?.appearance?.primary_color??"#0ea5e9",order_bump_color:l.config?.appearance?.order_bump_color??"#F59E0B",banners:Array.isArray(l.config?.appearance?.banners)?[...l.config.appearance.banners]:[],side_banners:Array.isArray(l.config?.appearance?.side_banners)?[...l.config.appearance.side_banners]:[],content_blocks:Ye(l.config?.appearance)},timer:{enabled:l.config?.timer?.enabled??!1,text:l.config?.timer?.text??"Esta oferta expira em:",hours:l.config?.timer?.hours??0,minutes:l.config?.timer?.minutes??15,background_color:l.config?.timer?.background_color??"#000000",text_color:l.config?.timer?.text_color??"#FFFFFF",sticky:l.config?.timer?.sticky!==!1},sales_notification:{enabled:l.config?.sales_notification?.enabled??!1,title:l.config?.sales_notification?.title??"acabou de comprar",names_per_line:l.config?.sales_notification?.names_per_line??1,names:l.config?.sales_notification?.names??"",product_label:l.config?.sales_notification?.product_label??l.produto?.name??"",display_seconds:l.config?.sales_notification?.display_seconds??5,interval_seconds:l.config?.sales_notification?.interval_seconds??10},customer_fields:{name:l.config?.customer_fields?.name!==!1,cpf:l.config?.customer_fields?.cpf===!0,phone:l.config?.customer_fields?.phone===!0,coupon:l.config?.customer_fields?.coupon===!0},template:l.config?.template??"original",youtube_url:l.config?.youtube_url??null,youtube_position:l.config?.youtube_position??"top",redirect_after_purchase:l.config?.redirect_after_purchase??"",back_redirect:{enabled:l.config?.back_redirect?.enabled??!1,url:l.config?.back_redirect?.url??""},embed:{enabled:l.config?.embed?.enabled??!1,allowed_origins:Array.isArray(l.config?.embed?.allowed_origins)?[...l.config.embed.allowed_origins]:[]},seo:{title:l.config?.seo?.title??"",description:l.config?.seo?.description??"",og_image:l.config?.seo?.og_image??null,favicon:l.config?.seo?.favicon??null},support_button:{enabled:l.config?.support_button?.enabled??!1,text:l.config?.support_button?.text??"Suporte",icon:l.config?.support_button?.icon??"whatsapp",position:l.config?.support_button?.position??"bottom-right",url:l.config?.support_button?.url??"",color:l.config?.support_button?.color??"#25D366"},footer:{enabled:l.config?.footer?.enabled??!1,logo_url:l.config?.footer?.logo_url??"",support_email:l.config?.footer?.support_email??"",text:l.config?.footer?.text??""},exit_popup:{enabled:l.config?.exit_popup?.enabled??!1,triggers:{back_button:l.config?.exit_popup?.triggers?.back_button??!0,tab_switch:l.config?.exit_popup?.triggers?.tab_switch??!0,mouse_leave_top:l.config?.exit_popup?.triggers?.mouse_leave_top??!1,timer_seconds:l.config?.exit_popup?.triggers?.timer_seconds??null},coupon_id:l.config?.exit_popup?.coupon_id??null,image:l.config?.exit_popup?.image??null,frequency_per_session:l.config?.exit_popup?.frequency_per_session??1,title:l.config?.exit_popup?.title??"Espere! Temos um desconto para você",description:l.config?.exit_popup?.description??"Use o cupom abaixo na próxima etapa",button_accept:l.config?.exit_popup?.button_accept??"Quero o desconto",button_decline:l.config?.exit_popup?.button_decline??"Não, obrigado"},reviews:Array.isArray(l.config?.reviews)?l.config.reviews.map(b=>({photo:b.photo??"",author:b.author??"",description:b.description??"",stars:Math.min(5,Math.max(1,Number(b.stars)||5)),verified_badge:!!b.verified_badge,testimonial_image:b.testimonial_image??""})):[],advanced:{custom_css:l.config?.advanced?.custom_css??"",custom_head_html:l.config?.advanced?.custom_head_html??"",custom_body_start_html:l.config?.advanced?.custom_body_start_html??"",custom_body_end_html:l.config?.advanced?.custom_body_end_html??"",custom_js:l.config?.advanced?.custom_js??""}}),R=Fe({config:l.config??{},offer_id:null,plan_id:null});function ae(){const b=JSON.parse(JSON.stringify(n));le(b),l.config?.upsell&&(b.upsell=l.config.upsell),l.config?.downsell&&(b.downsell=l.config.downsell),R.config=b,R.offer_id=l.checkout_scope?.offer_id??null,R.plan_id=l.checkout_scope?.plan_id??null,R.put(`/produtos/${l.produto.id}/checkout-config`,{onSuccess:()=>re()})}function le(b){const e=b?.appearance?.content_blocks??[];b.appearance.banners=e.filter(o=>o?.type==="image"&&o.format==="hero"&&o.placement!=="sidebar"&&o.url).map(o=>o.url),b.appearance.side_banners=e.filter(o=>o?.type==="image"&&o.placement==="sidebar"&&o.url).map(o=>o.url)}function xe(){return{photo:"",author:"",description:"",stars:5,verified_badge:!1,testimonial_image:""}}function ue(){n.reviews.push(xe())}function Y(b){n.reviews.splice(b,1)}const E=F(()=>{if(typeof window>"u")return null;const b=l.checkout_scope||{},e=(b.checkout_slug||"").trim(),o=(l.produto?.checkout_slug||"").trim(),D=e||o;if(!D)return null;const C=new URL(`${window.location.origin}/c/${D}`);return b.type==="offer"&&b.offer_id!=null&&!e&&C.searchParams.set("offer_id",String(b.offer_id)),b.type==="plan"&&b.plan_id!=null&&!e&&C.searchParams.set("plan_id",String(b.plan_id)),C.toString()}),$=F(()=>{if(!E.value)return null;const b=new URL(E.value);return b.searchParams.set("preview","1"),b.toString()}),K=F({get:()=>(n.embed.allowed_origins||[]).join(` +import{_ as Ae,u as Ee,e as _e,a as De}from"./app-CT8pqccC.js";import{bx as Ie,r as T,A as be,o as p,c as k,a as t,g as s,h as M,i as y,d as P,F as j,y as oe,s as c,u as d,t as A,aL as we,n as F,J as Pe,k as je,aN as Be,l as Le,b as i,bG as _,f as z,v,bF as ce,bD as ve,ac as Me,G as Re,bm as qe}from"./runtime-dom.esm-bundler-OrSu0e66.js";import{c as $e,_ as X,u as Fe,l as he,i as S,B as Ne,j as ge,S as Oe}from"./Toggle-BD3dflqy.js";import{_ as G,T as He,S as Ge}from"./ImageUpload-CiL4KycK.js";import{n as Ve,T as Je,a as We,I as Qe,b as Xe,i as Ye}from"./checkoutContentFormats-02OMn5WP.js";import{G as ke}from"./grip-vertical-BH6FRwTK.js";import{C as ze}from"./chevron-up-LCq4Peo3.js";import{C as U}from"./chevron-down-Cr9wcM6o.js";import{T as ye}from"./trash-2-Bxek5XZ9.js";import{I as Ce}from"./image-Aikc9zug.js";import{_ as Ke}from"./HorizontalScrollTabs-B3gLPvR5.js";import{U as Ue,P as Ze,a as et,b as tt,c as ot,d as nt}from"./checkoutEmbed-C8FwFg9u.js";import{C as I}from"./chevron-right-BDfXxPVC.js";import{C as lt}from"./credit-card-BEa3N8tE.js";import{P as st}from"./palette-Bdslkkzt.js";import{C as it}from"./clock-BPm9yiQC.js";import{V as at}from"./video-BKkbUnD_.js";import{B as rt}from"./book-open-DHA14jdk.js";import{M as dt}from"./monitor-CiyAoutz.js";import{R as ut}from"./refresh-cw-hI9usXzv.js";import"./loader-circle-CWooIS5S.js";import"./upload-CCMGWz9e.js";const pt=$e("dollar-sign",[["line",{x1:"12",x2:"12",y1:"2",y2:"22",key:"7eqyqh"}],["path",{d:"M17 5H9.5a3.5 3.5 0 0 0 0 7h5a3.5 3.5 0 0 1 0 7H6",key:"1b0p4s"}]]);const ct=$e("phone",[["path",{d:"M13.832 16.568a1 1 0 0 0 1.213-.303l.355-.465A2 2 0 0 1 17 15h3a2 2 0 0 1 2 2v3a2 2 0 0 1-2 2A18 18 0 0 1 2 4a2 2 0 0 1 2-2h3a2 2 0 0 1 2 2v3a2 2 0 0 1-.8 1.6l-.468.351a1 1 0 0 0-.292 1.233 14 14 0 0 0 6.392 6.384",key:"9njp5v"}]]),mt={class:"space-y-6"},bt={class:"rounded-xl border border-zinc-200 p-4 dark:border-zinc-700"},xt={class:"mb-3 flex items-center justify-between gap-2"},ft={key:0,class:"rounded-lg border border-dashed border-zinc-200 px-3 py-6 text-center text-xs text-zinc-500 dark:border-zinc-600"},vt=["onDragover","onDrop"],gt={class:"flex items-center justify-between gap-2"},kt={class:"flex min-w-0 items-center gap-2"},zt=["onDragstart"],yt={class:"truncate text-xs font-semibold uppercase tracking-wide text-zinc-500"},_t={class:"flex shrink-0 items-center gap-1"},wt=["disabled","onClick"],ht=["disabled","onClick"],Vt=["onClick"],Ct={class:"rounded-xl border border-zinc-200 p-4 dark:border-zinc-700"},Ut={class:"mb-3 flex flex-wrap items-center justify-between gap-2"},$t={class:"flex flex-wrap gap-2"},St={key:0,class:"rounded-lg border border-dashed border-zinc-200 px-3 py-6 text-center text-xs text-zinc-500 dark:border-zinc-600"},Tt=["onDragover","onDrop"],At={class:"flex items-center justify-between gap-2"},Et={class:"flex min-w-0 items-center gap-2"},Dt=["onDragstart"],It={class:"truncate text-xs font-semibold uppercase tracking-wide text-zinc-500"},Pt={class:"flex shrink-0 items-center gap-1"},jt=["disabled","onClick"],Bt=["disabled","onClick"],Lt=["onClick"],Mt=["value","onInput"],Rt=["value","onInput"],qt=["value","onChange"],Ft=["value"],Nt=["value","onChange"],Ot=["value","onInput"],Ht={class:"rounded-xl border border-zinc-200 p-4 dark:border-zinc-700"},Gt={class:"mb-3 flex items-center justify-between gap-2"},Jt={key:0,class:"rounded-lg border border-dashed border-zinc-200 px-3 py-6 text-center text-xs text-zinc-500 dark:border-zinc-600"},Wt=["onDragover","onDrop"],Qt={class:"flex items-center justify-between gap-2"},Xt={class:"flex min-w-0 items-center gap-2"},Yt=["onDragstart"],Kt={class:"truncate text-xs font-semibold uppercase tracking-wide text-zinc-500"},Zt={class:"flex shrink-0 items-center gap-1"},eo=["disabled","onClick"],to=["disabled","onClick"],oo=["onClick"],me="w-full rounded-xl border border-zinc-200 bg-white px-3 py-2 text-sm text-zinc-900 dark:border-zinc-600 dark:bg-zinc-800 dark:text-zinc-100",no={__name:"CheckoutContentBlocksEditor",props:we({uploadUrl:{type:String,required:!0}},{modelValue:{type:Array,default:()=>[]},modelModifiers:{}}),emits:we(["changed"],["update:modelValue"]),setup(B,{emit:ne}){const l=Ie(B,"modelValue"),h=ne,f=T(Ve(l.value)),V=T(null),n=T(null);be(l,a=>{f.value=Ve(a)},{deep:!0});function R(a){f.value=a,l.value=a,h("changed")}function ae(a){return a.type==="text"?"Bloco de texto":Qe[a.format]?.label??"Imagem"}function le(a,u="main"){R([...f.value,We(a,u)])}function xe(){R([...f.value,Xe()])}function ue(a){const u=[...f.value];u.splice(a,1),R(u)}function Y(a,u,x){const m=f.value.map((H,ie)=>({block:H,index:ie})).filter(({block:H})=>x(H)),r=m.findIndex(({index:H})=>H===a);if(r<0)return;const O=r+u;O<0||O>=m.length||E(m[r].index,m[O].index,x)}function E(a,u,x){if(a===u||a<0||u<0)return;const m=f.value.map((w,te)=>({block:w,index:te})).filter(({block:w})=>x(w)),r=m.findIndex(({index:w})=>w===a),O=m.findIndex(({index:w})=>w===u);if(r<0||O<0||r===O)return;const H=m.map(({index:w})=>w),ie=m.map(({index:w})=>f.value[w]),[fe]=ie.splice(r,1);ie.splice(O,0,fe);const q=[...f.value];H.forEach((w,te)=>{q[w]=ie[te]}),R(q)}function $(a,u){const x=[...f.value];x[a]={...x[a],...u},R(x)}const K=T(null),J=a=>a.type==="image"&&a.format==="hero",W=a=>a.type==="text"||a.type==="image"&&a.placement==="main"&&a.format!=="hero",se=a=>a.type==="image"&&a.placement==="sidebar";function pe(a,u,x){V.value=a,n.value=a,K.value=x,u.dataTransfer&&(u.dataTransfer.effectAllowed="move",u.dataTransfer.setData("text/plain",String(a)))}function re(a,u,x){K.value===x&&(u.preventDefault(),u.dataTransfer&&(u.dataTransfer.dropEffect="move"),n.value=a)}function de(a,u,x){if(K.value!==x)return;u.preventDefault();const m=V.value;m!=null&&m!==a&&E(m,a,x),V.value=null,n.value=null,K.value=null}function Z(){V.value=null,n.value=null,K.value=null}function L(a){return["mb-4 space-y-3 rounded-lg bg-zinc-50 p-3 transition dark:bg-zinc-800/50",n.value===a&&V.value!==a?"ring-2 ring-[var(--color-primary)] ring-offset-1 dark:ring-offset-zinc-900":"",V.value===a?"opacity-50":""]}const Q=F(()=>f.value.map((a,u)=>({block:a,index:u})).filter(({block:a})=>a.type==="image"&&a.format==="hero")),N=F(()=>f.value.map((a,u)=>({block:a,index:u})).filter(({block:a})=>a.type==="text"||a.type==="image"&&a.placement==="main"&&a.format!=="hero")),ee=F(()=>f.value.map((a,u)=>({block:a,index:u})).filter(({block:a})=>a.type==="image"&&a.placement==="sidebar"));return(a,u)=>(p(),k("div",mt,[t("div",bt,[t("div",xt,[u[5]||(u[5]=t("div",null,[t("h4",{class:"text-sm font-semibold text-zinc-900 dark:text-white"},"Topo (Hero)"),t("p",{class:"text-xs text-zinc-500 dark:text-zinc-400"},"Recomendado 1200×400 px (3:1) — a imagem aparece inteira, sem corte")],-1)),s(X,{type:"button",variant:"secondary",size:"sm",onClick:u[0]||(u[0]=x=>le("hero","main"))},{default:M(()=>[...u[4]||(u[4]=[y(" + Hero ",-1)])]),_:1})]),Q.value.length?P("",!0):(p(),k("div",ft," Nenhum banner no topo. ")),(p(!0),k(j,null,oe(Q.value,({block:x,index:m})=>(p(),k("div",{key:x.id,class:c(L(m)),onDragover:r=>re(m,r,J),onDrop:r=>de(m,r,J)},[t("div",gt,[t("div",kt,[t("button",{type:"button",class:"cursor-grab touch-none rounded p-1 text-zinc-400 hover:bg-zinc-200 active:cursor-grabbing dark:hover:bg-zinc-700",draggable:"true",title:"Arrastar para reordenar",onDragstart:r=>pe(m,r,J),onDragend:Z},[s(d(ke),{class:"h-4 w-4"})],40,zt),t("span",yt,A(ae(x)),1)]),t("div",_t,[t("button",{type:"button",class:"rounded p-1 text-zinc-500 hover:bg-zinc-200 disabled:opacity-30 dark:hover:bg-zinc-700",disabled:Q.value.findIndex(r=>r.index===m)===0,onClick:r=>Y(m,-1,J)},[s(d(ze),{class:"h-4 w-4"})],8,wt),t("button",{type:"button",class:"rounded p-1 text-zinc-500 hover:bg-zinc-200 disabled:opacity-30 dark:hover:bg-zinc-700",disabled:Q.value.findIndex(r=>r.index===m)>=Q.value.length-1,onClick:r=>Y(m,1,J)},[s(d(U),{class:"h-4 w-4"})],8,ht),t("button",{type:"button",class:"rounded p-1 text-red-500 hover:bg-red-50 dark:hover:bg-red-950/30",onClick:r=>ue(m)},[s(d(ye),{class:"h-4 w-4"})],8,Vt)])]),s(G,{"model-value":x.url,"upload-url":B.uploadUrl,label:"Imagem hero","aspect-format":"hero","soft-validate-ratio":"","onUpdate:modelValue":r=>$(m,{url:r})},null,8,["model-value","upload-url","onUpdate:modelValue"])],42,vt))),128))]),t("div",Ct,[t("div",Ut,[u[9]||(u[9]=t("div",null,[t("h4",{class:"text-sm font-semibold text-zinc-900 dark:text-white"},"Conteúdo principal"),t("p",{class:"text-xs text-zinc-500 dark:text-zinc-400"},"Banners e textos acima do formulário — arraste pelo ícone ≡ para reordenar")],-1)),t("div",$t,[s(X,{type:"button",variant:"secondary",size:"sm",onClick:u[1]||(u[1]=x=>le("wide","main"))},{default:M(()=>[s(d(Ce),{class:"h-3.5 w-3.5"}),u[6]||(u[6]=y(" Largo ",-1))]),_:1}),s(X,{type:"button",variant:"secondary",size:"sm",onClick:u[2]||(u[2]=x=>le("square","main"))},{default:M(()=>[s(d(Ce),{class:"h-3.5 w-3.5"}),u[7]||(u[7]=y(" Quadrado ",-1))]),_:1}),s(X,{type:"button",variant:"secondary",size:"sm",onClick:xe},{default:M(()=>[s(d(He),{class:"h-3.5 w-3.5"}),u[8]||(u[8]=y(" Texto ",-1))]),_:1})])]),N.value.length?P("",!0):(p(),k("div",St," Adicione banners ou textos acima do formulário de pagamento. ")),(p(!0),k(j,null,oe(N.value,({block:x,index:m})=>(p(),k("div",{key:x.id,class:c(L(m)),onDragover:r=>re(m,r,W),onDrop:r=>de(m,r,W)},[t("div",At,[t("div",Et,[t("button",{type:"button",class:"cursor-grab touch-none rounded p-1 text-zinc-400 hover:bg-zinc-200 active:cursor-grabbing dark:hover:bg-zinc-700",draggable:"true",title:"Arrastar para reordenar",onDragstart:r=>pe(m,r,W),onDragend:Z},[s(d(ke),{class:"h-4 w-4"})],40,Dt),t("span",It,A(ae(x)),1)]),t("div",Pt,[t("button",{type:"button",class:"rounded p-1 text-zinc-500 hover:bg-zinc-200 disabled:opacity-30 dark:hover:bg-zinc-700",disabled:N.value.findIndex(r=>r.index===m)===0,onClick:r=>Y(m,-1,W)},[s(d(ze),{class:"h-4 w-4"})],8,jt),t("button",{type:"button",class:"rounded p-1 text-zinc-500 hover:bg-zinc-200 disabled:opacity-30 dark:hover:bg-zinc-700",disabled:N.value.findIndex(r=>r.index===m)>=N.value.length-1,onClick:r=>Y(m,1,W)},[s(d(U),{class:"h-4 w-4"})],8,Bt),t("button",{type:"button",class:"rounded p-1 text-red-500 hover:bg-red-50 dark:hover:bg-red-950/30",onClick:r=>ue(m)},[s(d(ye),{class:"h-4 w-4"})],8,Lt)])]),x.type==="text"?(p(),k(j,{key:0},[t("div",null,[u[10]||(u[10]=t("label",{class:"mb-1 block text-xs font-medium text-zinc-600 dark:text-zinc-400"},"Título",-1)),t("input",{value:x.title,type:"text",class:c(me),placeholder:"Título do bloco",onInput:r=>$(m,{title:r.target.value})},null,40,Mt)]),t("div",null,[u[11]||(u[11]=t("label",{class:"mb-1 block text-xs font-medium text-zinc-600 dark:text-zinc-400"},"Texto",-1)),t("textarea",{value:x.body,rows:"4",class:c(me),placeholder:"Descrição, benefícios, garantia...",onInput:r=>$(m,{body:r.target.value})},null,40,Rt)]),t("div",null,[u[12]||(u[12]=t("label",{class:"mb-1 block text-xs font-medium text-zinc-600 dark:text-zinc-400"},"Alinhamento",-1)),t("select",{value:x.align,class:c(me),onChange:r=>$(m,{align:r.target.value})},[(p(!0),k(j,null,oe(d(Je),r=>(p(),k("option",{key:r.id,value:r.id},A(r.label),9,Ft))),128))],40,qt)])],64)):(p(),k(j,{key:1},[t("div",null,[u[14]||(u[14]=t("label",{class:"mb-1 block text-xs font-medium text-zinc-600 dark:text-zinc-400"},"Formato",-1)),t("select",{value:x.format,class:c(me),onChange:r=>$(m,{format:r.target.value})},[...u[13]||(u[13]=[t("option",{value:"wide"},"Largo (16:9)",-1),t("option",{value:"square"},"Quadrado (1:1)",-1)])],40,Nt)]),s(G,{"model-value":x.url,"upload-url":B.uploadUrl,label:ae(x),"aspect-format":x.format,"soft-validate-ratio":"","onUpdate:modelValue":r=>$(m,{url:r})},null,8,["model-value","upload-url","label","aspect-format","onUpdate:modelValue"]),t("div",null,[u[15]||(u[15]=t("label",{class:"mb-1 block text-xs font-medium text-zinc-600 dark:text-zinc-400"},"Link (opcional)",-1)),t("input",{value:x.link,type:"url",class:c(me),placeholder:"https://",onInput:r=>$(m,{link:r.target.value})},null,40,Ot)])],64))],42,Tt))),128))]),t("div",Ht,[t("div",Gt,[u[17]||(u[17]=t("div",null,[t("h4",{class:"text-sm font-semibold text-zinc-900 dark:text-white"},"Banners laterais"),t("p",{class:"text-xs text-zinc-500 dark:text-zinc-400"},"Ideal 400×600 px (2:3) — a imagem aparece inteira na lateral, sem corte")],-1)),s(X,{type:"button",variant:"secondary",size:"sm",onClick:u[3]||(u[3]=x=>le("portrait","sidebar"))},{default:M(()=>[...u[16]||(u[16]=[y(" + Lateral ",-1)])]),_:1})]),ee.value.length?P("",!0):(p(),k("div",Jt," Nenhum banner lateral. ")),(p(!0),k(j,null,oe(ee.value,({block:x,index:m})=>(p(),k("div",{key:x.id,class:c([L(m),"max-w-xs"]),onDragover:r=>re(m,r,se),onDrop:r=>de(m,r,se)},[t("div",Qt,[t("div",Xt,[t("button",{type:"button",class:"cursor-grab touch-none rounded p-1 text-zinc-400 hover:bg-zinc-200 active:cursor-grabbing dark:hover:bg-zinc-700",draggable:"true",title:"Arrastar para reordenar",onDragstart:r=>pe(m,r,se),onDragend:Z},[s(d(ke),{class:"h-4 w-4"})],40,Yt),t("span",Kt,A(ae(x)),1)]),t("div",Zt,[t("button",{type:"button",class:"rounded p-1 text-zinc-500 hover:bg-zinc-200 disabled:opacity-30 dark:hover:bg-zinc-700",disabled:ee.value.findIndex(r=>r.index===m)===0,onClick:r=>Y(m,-1,se)},[s(d(ze),{class:"h-4 w-4"})],8,eo),t("button",{type:"button",class:"rounded p-1 text-zinc-500 hover:bg-zinc-200 disabled:opacity-30 dark:hover:bg-zinc-700",disabled:ee.value.findIndex(r=>r.index===m)>=ee.value.length-1,onClick:r=>Y(m,1,se)},[s(d(U),{class:"h-4 w-4"})],8,to),t("button",{type:"button",class:"rounded p-1 text-red-500 hover:bg-red-50 dark:hover:bg-red-950/30",onClick:r=>ue(m)},[s(d(ye),{class:"h-4 w-4"})],8,oo)])]),s(G,{"model-value":x.url,"upload-url":B.uploadUrl,label:"Banner lateral","aspect-format":"portrait","soft-validate-ratio":"","onUpdate:modelValue":r=>$(m,{url:r})},null,8,["model-value","upload-url","onUpdate:modelValue"])],42,Wt))),128))])]))}},lo={class:"flex h-[calc(100dvh-10rem)] min-h-0 flex-col gap-3"},so={class:"shrink-0"},io={class:"text-sm text-zinc-500 dark:text-zinc-400","aria-label":"Breadcrumb"},ao={class:"text-zinc-900 dark:text-white"},ro={class:"flex min-h-0 flex-1 gap-4 lg:flex-row"},uo={class:"min-h-0 w-full shrink-0 space-y-4 overflow-y-auto lg:w-[380px] lg:max-h-full"},po={class:"space-y-4"},co={class:"panel-card-lg"},mo={class:"flex items-center gap-2"},bo={class:"border-t border-zinc-200 px-4 py-4 dark:border-zinc-700"},xo={class:"space-y-4"},fo={class:"space-y-2 rounded-xl border border-zinc-200 p-3 dark:border-zinc-700"},vo={class:"panel-card-lg"},go={class:"flex items-center gap-2"},ko={class:"border-t border-zinc-200 px-4 py-4 dark:border-zinc-700"},zo={class:"space-y-4"},yo={class:"flex items-center justify-between rounded-xl border border-zinc-100 bg-zinc-50/50 px-4 py-3 dark:border-zinc-700 dark:bg-zinc-800/50"},_o={class:"flex items-center gap-2 text-sm font-medium text-zinc-700 dark:text-zinc-300"},wo={class:"flex items-center justify-between rounded-xl border border-zinc-100 bg-zinc-50/50 px-4 py-3 dark:border-zinc-700 dark:bg-zinc-800/50"},ho={class:"flex items-center gap-2 text-sm font-medium text-zinc-700 dark:text-zinc-300"},Vo={class:"flex items-center justify-between rounded-xl border border-zinc-100 bg-zinc-50/50 px-4 py-3 dark:border-zinc-700 dark:bg-zinc-800/50"},Co={class:"flex items-center gap-2 text-sm font-medium text-zinc-700 dark:text-zinc-300"},Uo={class:"flex items-center justify-between rounded-xl border border-zinc-100 bg-zinc-50/50 px-4 py-3 dark:border-zinc-700 dark:bg-zinc-800/50"},$o={class:"panel-card-lg"},So={class:"flex items-center gap-2"},To={class:"border-t border-zinc-200 px-4 py-4 dark:border-zinc-700"},Ao={class:"space-y-4"},Eo={class:"flex gap-2"},Do={class:"flex gap-2"},Io={class:"flex gap-2"},Po={class:"panel-card-lg"},jo={class:"flex items-center gap-2"},Bo={class:"border-t border-zinc-200 px-4 py-4 dark:border-zinc-700"},Lo={class:"space-y-4"},Mo={class:"grid grid-cols-2 gap-3"},Ro={class:"mt-3 grid grid-cols-2 gap-2"},qo={class:"pt-2"},Fo={class:"panel-card-lg"},No={class:"flex items-center gap-2"},Oo={class:"border-t border-zinc-200 px-4 py-4 dark:border-zinc-700"},Ho={class:"space-y-4"},Go=["placeholder"],Jo={class:"grid grid-cols-2 gap-2"},Wo={class:"panel-card-lg"},Qo={class:"flex items-center gap-2"},Xo={class:"border-t border-zinc-200 px-4 py-4 dark:border-zinc-700"},Yo={class:"space-y-4"},Ko={class:"panel-card-lg"},Zo={class:"border-t border-zinc-200 px-4 py-4 dark:border-zinc-700"},en={class:"space-y-4"},tn={class:"panel-card-lg"},on={class:"flex items-center gap-2"},nn={class:"border-t border-zinc-200 px-4 py-4 dark:border-zinc-700"},ln={class:"space-y-4"},sn={key:0,class:"mt-4 space-y-2"},an=["value"],rn={class:"flex flex-wrap items-center gap-2"},dn=["href"],un={class:"space-y-4"},pn={class:"panel-card-lg"},cn={class:"border-t border-zinc-200 px-4 py-4 dark:border-zinc-700"},mn={class:"space-y-4"},bn={class:"panel-card-lg"},xn={class:"border-t border-zinc-200 px-4 py-4 dark:border-zinc-700"},fn={class:"space-y-4"},vn={class:"panel-card-lg"},gn={class:"border-t border-zinc-200 px-4 py-4 dark:border-zinc-700"},kn={class:"space-y-4"},zn={class:"flex gap-2"},yn={class:"panel-card-lg"},_n={class:"border-t border-zinc-200 px-4 py-4 dark:border-zinc-700"},wn={class:"space-y-4"},hn={class:"space-y-2 rounded-xl border border-zinc-100 bg-zinc-50/50 p-3 dark:border-zinc-700 dark:bg-zinc-800/50"},Vn={class:"flex items-center gap-2"},Cn={class:"flex items-center gap-2"},Un={class:"flex items-center gap-2"},$n={class:"flex items-center gap-2 pt-1"},Sn=["value"],Tn={class:"space-y-4"},An={class:"panel-card-lg p-4"},En={class:"space-y-4"},Dn={class:"panel-card-lg"},In={class:"grid gap-3 sm:grid-cols-2"},Pn=["onClick"],jn={class:"text-sm font-semibold text-zinc-900 dark:text-white"},Bn={key:0,class:"text-xs text-zinc-500 dark:text-zinc-400"},Ln={key:1,class:"mt-1 text-xs font-medium text-emerald-600 dark:text-emerald-400"},Mn={class:"space-y-4"},Rn={class:"panel-card-lg"},qn={class:"border-t border-zinc-200 px-4 py-4 dark:border-zinc-700"},Fn={class:"space-y-4"},Nn={class:"mb-3 flex items-center justify-between"},On={class:"text-sm font-medium text-zinc-700 dark:text-zinc-300"},Hn={class:"space-y-3"},Gn=["onUpdate:modelValue"],Jn=["onUpdate:modelValue"],Wn=["onUpdate:modelValue"],Qn={class:"flex items-center justify-between"},Xn={class:"space-y-4"},Yn={class:"rounded-xl border border-zinc-200 bg-white dark:border-zinc-700 dark:bg-zinc-800"},Kn={class:"flex items-center gap-2"},Zn={class:"space-y-3 border-t border-zinc-200 px-4 py-3 text-xs text-zinc-600 dark:border-zinc-700 dark:text-zinc-400"},el=["href"],tl={class:"flex flex-wrap gap-1 rounded-xl border border-zinc-200 bg-zinc-50 p-1 dark:border-zinc-700 dark:bg-zinc-900/50"},ol=["onClick"],nl={class:"rounded-xl border border-zinc-200 bg-white p-2 dark:border-zinc-700 dark:bg-zinc-800"},ll={class:"panel-table flex min-h-0 min-w-0 flex-1 flex-col overflow-hidden"},sl={class:"flex shrink-0 flex-wrap items-center justify-between gap-2 border-b border-zinc-200 px-4 py-2 dark:border-zinc-700"},il={class:"text-xs text-zinc-500 dark:text-zinc-400"},al={key:0,class:"ml-1 inline-flex items-center gap-1 text-emerald-600 dark:text-emerald-400"},rl={class:"flex items-center gap-2"},dl={class:"flex rounded-lg border border-zinc-200 bg-white p-0.5 dark:border-zinc-600 dark:bg-zinc-700"},ul=["disabled"],pl=["href"],cl={class:"flex min-h-0 flex-1 flex-col overflow-hidden p-3"},ml=["src"],bl={key:1,class:"flex min-h-0 flex-1 items-center justify-center rounded-xl border border-zinc-200 bg-zinc-100/80 text-sm text-zinc-500 dark:border-zinc-600 dark:bg-zinc-800/80 dark:text-zinc-400"},g="block w-full rounded-xl border-2 border-zinc-200 bg-white px-4 py-2.5 text-zinc-900 placeholder-zinc-400 transition focus:border-[var(--color-primary)] focus:outline-none focus:ring-2 focus:ring-[var(--color-primary)]/20 dark:border-zinc-600 dark:bg-zinc-800 dark:text-white dark:placeholder-zinc-500",Bl=Object.assign({layout:Ae},{__name:"Builder",props:{produto:{type:Object,required:!0},config:{type:Object,default:()=>({})},checkout_scope:{type:Object,default:()=>({type:"main",offer_id:null,plan_id:null,checkout_slug:null,label:""})},cupons:{type:Array,default:()=>[]},plugin_checkout_templates:{type:Array,default:()=>[]}},setup(B){const ne=Re(()=>De(()=>import("./CheckoutCodeEditor-CJlBXg_F.js"),__vite__mapDeps([0,1]))),l=B,h=T("geral"),f=T({price:!0,customer_fields:!0,appearance:!0,timer:!0,notification:!0,video:!0,redirect:!0,embed:!0,seo:!0,support_button:!0,footer:!0,exit_popup:!0});function V(b){f.value[b]=!f.value[b]}const n=Pe({summary:{previous_price:l.config?.summary?.previous_price??null,discount_text:l.config?.summary?.discount_text??"",show_description:l.config?.summary?.show_description!==!1,mobile_sticky_footer:l.config?.summary?.mobile_sticky_footer!==!1,mobile_sticky_icon_url:l.config?.summary?.mobile_sticky_icon_url??""},appearance:{background_color:l.config?.appearance?.background_color??"#E3E3E3",primary_color:l.config?.appearance?.primary_color??"#0ea5e9",order_bump_color:l.config?.appearance?.order_bump_color??"#F59E0B",banners:Array.isArray(l.config?.appearance?.banners)?[...l.config.appearance.banners]:[],side_banners:Array.isArray(l.config?.appearance?.side_banners)?[...l.config.appearance.side_banners]:[],content_blocks:Ye(l.config?.appearance)},timer:{enabled:l.config?.timer?.enabled??!1,text:l.config?.timer?.text??"Esta oferta expira em:",hours:l.config?.timer?.hours??0,minutes:l.config?.timer?.minutes??15,background_color:l.config?.timer?.background_color??"#000000",text_color:l.config?.timer?.text_color??"#FFFFFF",sticky:l.config?.timer?.sticky!==!1},sales_notification:{enabled:l.config?.sales_notification?.enabled??!1,title:l.config?.sales_notification?.title??"acabou de comprar",names_per_line:l.config?.sales_notification?.names_per_line??1,names:l.config?.sales_notification?.names??"",product_label:l.config?.sales_notification?.product_label??l.produto?.name??"",display_seconds:l.config?.sales_notification?.display_seconds??5,interval_seconds:l.config?.sales_notification?.interval_seconds??10},customer_fields:{name:l.config?.customer_fields?.name!==!1,cpf:l.config?.customer_fields?.cpf===!0,phone:l.config?.customer_fields?.phone===!0,coupon:l.config?.customer_fields?.coupon===!0},template:l.config?.template??"original",youtube_url:l.config?.youtube_url??null,youtube_position:l.config?.youtube_position??"top",redirect_after_purchase:l.config?.redirect_after_purchase??"",back_redirect:{enabled:l.config?.back_redirect?.enabled??!1,url:l.config?.back_redirect?.url??""},embed:{enabled:l.config?.embed?.enabled??!1,allowed_origins:Array.isArray(l.config?.embed?.allowed_origins)?[...l.config.embed.allowed_origins]:[]},seo:{title:l.config?.seo?.title??"",description:l.config?.seo?.description??"",og_image:l.config?.seo?.og_image??null,favicon:l.config?.seo?.favicon??null},support_button:{enabled:l.config?.support_button?.enabled??!1,text:l.config?.support_button?.text??"Suporte",icon:l.config?.support_button?.icon??"whatsapp",position:l.config?.support_button?.position??"bottom-right",url:l.config?.support_button?.url??"",color:l.config?.support_button?.color??"#25D366"},footer:{enabled:l.config?.footer?.enabled??!1,logo_url:l.config?.footer?.logo_url??"",support_email:l.config?.footer?.support_email??"",text:l.config?.footer?.text??""},exit_popup:{enabled:l.config?.exit_popup?.enabled??!1,triggers:{back_button:l.config?.exit_popup?.triggers?.back_button??!0,tab_switch:l.config?.exit_popup?.triggers?.tab_switch??!0,mouse_leave_top:l.config?.exit_popup?.triggers?.mouse_leave_top??!1,timer_seconds:l.config?.exit_popup?.triggers?.timer_seconds??null},coupon_id:l.config?.exit_popup?.coupon_id??null,image:l.config?.exit_popup?.image??null,frequency_per_session:l.config?.exit_popup?.frequency_per_session??1,title:l.config?.exit_popup?.title??"Espere! Temos um desconto para você",description:l.config?.exit_popup?.description??"Use o cupom abaixo na próxima etapa",button_accept:l.config?.exit_popup?.button_accept??"Quero o desconto",button_decline:l.config?.exit_popup?.button_decline??"Não, obrigado"},reviews:Array.isArray(l.config?.reviews)?l.config.reviews.map(b=>({photo:b.photo??"",author:b.author??"",description:b.description??"",stars:Math.min(5,Math.max(1,Number(b.stars)||5)),verified_badge:!!b.verified_badge,testimonial_image:b.testimonial_image??""})):[],advanced:{custom_css:l.config?.advanced?.custom_css??"",custom_head_html:l.config?.advanced?.custom_head_html??"",custom_body_start_html:l.config?.advanced?.custom_body_start_html??"",custom_body_end_html:l.config?.advanced?.custom_body_end_html??"",custom_js:l.config?.advanced?.custom_js??""}}),R=Fe({config:l.config??{},offer_id:null,plan_id:null});function ae(){const b=JSON.parse(JSON.stringify(n));le(b),l.config?.upsell&&(b.upsell=l.config.upsell),l.config?.downsell&&(b.downsell=l.config.downsell),R.config=b,R.offer_id=l.checkout_scope?.offer_id??null,R.plan_id=l.checkout_scope?.plan_id??null,R.put(`/produtos/${l.produto.id}/checkout-config`,{onSuccess:()=>re()})}function le(b){const e=b?.appearance?.content_blocks??[];b.appearance.banners=e.filter(o=>o?.type==="image"&&o.format==="hero"&&o.placement!=="sidebar"&&o.url).map(o=>o.url),b.appearance.side_banners=e.filter(o=>o?.type==="image"&&o.placement==="sidebar"&&o.url).map(o=>o.url)}function xe(){return{photo:"",author:"",description:"",stars:5,verified_badge:!1,testimonial_image:""}}function ue(){n.reviews.push(xe())}function Y(b){n.reviews.splice(b,1)}const E=F(()=>{if(typeof window>"u")return null;const b=l.checkout_scope||{},e=(b.checkout_slug||"").trim(),o=(l.produto?.checkout_slug||"").trim(),D=e||o;if(!D)return null;const C=new URL(`${window.location.origin}/c/${D}`);return b.type==="offer"&&b.offer_id!=null&&!e&&C.searchParams.set("offer_id",String(b.offer_id)),b.type==="plan"&&b.plan_id!=null&&!e&&C.searchParams.set("plan_id",String(b.plan_id)),C.toString()}),$=F(()=>{if(!E.value)return null;const b=new URL(E.value);return b.searchParams.set("preview","1"),b.toString()}),K=F({get:()=>(n.embed.allowed_origins||[]).join(` `),set:b=>{n.embed.allowed_origins=String(b||"").split(/[\r\n,]+/).map(e=>e.trim()).filter(Boolean)}}),J=F(()=>!E.value||!n.embed.enabled?"":nt(E.value)),W=T(!1);async function se(){if(J.value)try{await navigator.clipboard.writeText(J.value),W.value=!0,setTimeout(()=>{W.value=!1},2e3)}catch{}}const pe=F(()=>{if(!$.value)return null;const b=new URL($.value);return Q.value>0&&b.searchParams.set("_r",String(Q.value)),b.toString()});function re(){$.value&&(N.value=!0,Z.value=null,Q.value=Date.now())}const de=T(null),Z=T(null),L=T("desktop"),Q=T(0),N=T(!1);let ee=0,a=null;function u(){const b=JSON.parse(JSON.stringify(qe(n)));return le(b),l.config?.upsell&&(b.upsell=l.config.upsell),l.config?.downsell&&(b.downsell=l.config.downsell),b}function x(){const e=de.value?.contentWindow;if(!e||!$.value)return;ee+=1;const o={type:tt,config:u(),previewViewport:L.value,seq:ee};try{const D=e[et];typeof D=="function"&&D(o)}catch{}try{e.postMessage(o,"*")}catch{}ot(o)}function m(){a!=null&&(cancelAnimationFrame(a),a=null),x()}function r(b){b?.data?.type===Ze&&(Z.value=b.data.at??Date.now())}function O(){a==null&&(a=requestAnimationFrame(()=>{a=null,x()}))}be(n,()=>O(),{deep:!0}),be(()=>n.appearance.content_blocks,()=>m(),{deep:!0}),be(L,()=>m());const H=F(()=>Z.value?new Date(Z.value).toLocaleTimeString(void 0,{hour:"2-digit",minute:"2-digit",second:"2-digit"}):null),{setExpanded:ie}=Ee();function fe(){N.value=!1,x(),[30,120,400].forEach(b=>setTimeout(()=>x(),b))}je(()=>{ie(!1),typeof window<"u"&&window.addEventListener("message",r),O(),Be(()=>x())}),Le(()=>{typeof window<"u"&&window.removeEventListener("message",r)});const q=F(()=>`/produtos/${l.produto?.id}/checkout-upload`),w=T("css"),te=T(!0),Se=[{id:"css",label:"CSS"},{id:"head_html",label:"HTML (head)"},{id:"body_start_html",label:"HTML início"},{id:"body_end_html",label:"HTML fim"},{id:"js",label:"JavaScript"}],Te=F(()=>{const b=[{id:"original",name:"Original",description:"Layout padrão do checkout (resumo, formulário e sidebar)."}],e=(l.plugin_checkout_templates||[]).map(o=>({id:o.id,name:o.name,description:o.description||"",plugin_slug:o.plugin_slug}));return[...b,...e]});return(b,e)=>(p(),k("div",lo,[t("div",so,[t("nav",io,[s(d(he),{href:"/produtos",class:"hover:text-zinc-700 dark:hover:text-zinc-300"},{default:M(()=>[...e[89]||(e[89]=[y("Produtos",-1)])]),_:1}),e[90]||(e[90]=t("span",{class:"mx-1"},"/",-1)),s(d(he),{href:`/produtos/${B.produto.id}/edit`,class:"hover:text-zinc-700 dark:hover:text-zinc-300"},{default:M(()=>[y(A(B.produto.name),1)]),_:1},8,["href"]),e[91]||(e[91]=t("span",{class:"mx-1"},"/",-1)),t("span",ao,"Editar checkout"+A(B.checkout_scope?.label?` — ${B.checkout_scope.label}`:""),1)])]),t("div",ro,[t("div",uo,[s(Ke,{"aria-label":"Abas do checkout",bleed:!1,"nav-class":"gap-1 rounded-xl border border-zinc-200 bg-white p-1 dark:border-zinc-700 dark:bg-zinc-800"},{default:M(()=>[t("button",{type:"button",class:c(["rounded-lg px-3 py-2 text-xs font-medium transition sm:text-sm",h.value==="geral"?"bg-zinc-900 text-white dark:bg-zinc-100 dark:text-zinc-900":"text-zinc-600 hover:bg-zinc-100 dark:text-zinc-400 dark:hover:bg-zinc-700"]),onClick:e[0]||(e[0]=o=>h.value="geral")}," Geral ",2),t("button",{type:"button",class:c(["rounded-lg px-3 py-2 text-xs font-medium transition sm:text-sm",h.value==="recursos"?"bg-zinc-900 text-white dark:bg-zinc-100 dark:text-zinc-900":"text-zinc-600 hover:bg-zinc-100 dark:text-zinc-400 dark:hover:bg-zinc-700"]),onClick:e[1]||(e[1]=o=>h.value="recursos")}," Recursos ",2),t("button",{type:"button",class:c(["rounded-lg px-3 py-2 text-xs font-medium transition sm:text-sm",h.value==="vendas"?"bg-zinc-900 text-white dark:bg-zinc-100 dark:text-zinc-900":"text-zinc-600 hover:bg-zinc-100 dark:text-zinc-400 dark:hover:bg-zinc-700"]),onClick:e[2]||(e[2]=o=>h.value="vendas")}," Conteúdo ",2),t("button",{type:"button",class:c(["rounded-lg px-3 py-2 text-xs font-medium transition sm:text-sm",h.value==="template"?"bg-zinc-900 text-white dark:bg-zinc-100 dark:text-zinc-900":"text-zinc-600 hover:bg-zinc-100 dark:text-zinc-400 dark:hover:bg-zinc-700"]),onClick:e[3]||(e[3]=o=>h.value="template")}," Template ",2),t("button",{type:"button",class:c(["rounded-lg px-3 py-2 text-xs font-medium transition sm:text-sm",h.value==="social"?"bg-zinc-900 text-white dark:bg-zinc-100 dark:text-zinc-900":"text-zinc-600 hover:bg-zinc-100 dark:text-zinc-400 dark:hover:bg-zinc-700"]),onClick:e[4]||(e[4]=o=>h.value="social")}," Social ",2),t("button",{type:"button",class:c(["flex items-center gap-1 rounded-lg px-3 py-2 text-xs font-medium transition sm:text-sm",h.value==="avancado"?"bg-zinc-900 text-white dark:bg-zinc-100 dark:text-zinc-900":"text-zinc-600 hover:bg-zinc-100 dark:text-zinc-400 dark:hover:bg-zinc-700"]),onClick:e[5]||(e[5]=o=>h.value="avancado")},[s(d(_e),{class:"h-3.5 w-3.5 shrink-0 opacity-80"}),e[92]||(e[92]=y(" Avançado ",-1))],2)]),_:1}),i(t("div",po,[t("div",co,[t("button",{type:"button",class:"flex w-full items-center justify-between gap-2 px-4 py-3 text-left font-semibold text-zinc-900 dark:text-white",onClick:e[6]||(e[6]=o=>V("price"))},[t("span",mo,[s(d(pt),{class:"h-5 w-5 text-zinc-500"}),e[93]||(e[93]=y(" Preço / Desconto ",-1))]),f.value.price?(p(),z(d(U),{key:0,class:"h-5 w-5 shrink-0"})):(p(),z(d(I),{key:1,class:"h-5 w-5 shrink-0"}))]),i(t("div",bo,[t("div",xo,[t("div",null,[e[94]||(e[94]=t("label",{class:"mb-1.5 block text-sm font-medium text-zinc-700 dark:text-zinc-300"}," Preço anterior ",-1)),i(t("input",{"onUpdate:modelValue":e[7]||(e[7]=o=>n.summary.previous_price=o),type:"number",step:"0.01",min:"0",class:c(g),placeholder:"0.00"},null,512),[[v,n.summary.previous_price,void 0,{number:!0}]])]),t("div",null,[e[95]||(e[95]=t("label",{class:"mb-1.5 block text-sm font-medium text-zinc-700 dark:text-zinc-300"}," Texto de desconto (ex.: 50% OFF) ",-1)),i(t("input",{"onUpdate:modelValue":e[8]||(e[8]=o=>n.summary.discount_text=o),type:"text",class:c(g),placeholder:"50% OFF"},null,512),[[v,n.summary.discount_text]])]),s(S,{modelValue:n.summary.show_description,"onUpdate:modelValue":e[9]||(e[9]=o=>n.summary.show_description=o),label:"Exibir descrição do produto no resumo"},null,8,["modelValue"]),s(S,{modelValue:n.summary.mobile_sticky_footer,"onUpdate:modelValue":e[10]||(e[10]=o=>n.summary.mobile_sticky_footer=o),label:"Resumo fixo no rodapé (somente mobile)"},null,8,["modelValue"]),e[98]||(e[98]=t("p",{class:"text-xs text-zinc-500 dark:text-zinc-400"}," Mostra um resumo expansível do pedido fixo na parte inferior da tela em celulares. ",-1)),i(t("div",fo,[e[96]||(e[96]=t("label",{class:"block text-sm font-medium text-zinc-700 dark:text-zinc-300"}," Ícone do resumo (opcional) ",-1)),e[97]||(e[97]=t("p",{class:"text-xs text-zinc-500 dark:text-zinc-400"}," Sem imagem, usa o ícone padrão de sacola. Envie uma imagem quadrada para personalizar. ",-1)),s(G,{modelValue:n.summary.mobile_sticky_icon_url,"onUpdate:modelValue":e[11]||(e[11]=o=>n.summary.mobile_sticky_icon_url=o),"upload-url":q.value,label:"Imagem do ícone","recommended-size":"128×128 px (quadrada)","aspect-format":"square"},null,8,["modelValue","upload-url"])],512),[[_,n.summary.mobile_sticky_footer]])])],512),[[_,f.value.price]])]),t("div",vo,[t("button",{type:"button",class:"flex w-full items-center justify-between gap-2 px-4 py-3 text-left font-semibold text-zinc-900 dark:text-white",onClick:e[12]||(e[12]=o=>V("customer_fields"))},[t("span",go,[s(d(Ue),{class:"h-5 w-5 text-zinc-500"}),e[99]||(e[99]=y(" Campos do formulário ",-1))]),f.value.customer_fields?(p(),z(d(U),{key:0,class:"h-5 w-5 shrink-0"})):(p(),z(d(I),{key:1,class:"h-5 w-5 shrink-0"}))]),i(t("div",ko,[e[104]||(e[104]=t("p",{class:"mb-4 text-sm text-zinc-600 dark:text-zinc-400"}," Escolha quais campos exibir no checkout. E-mail é sempre obrigatório. ",-1)),t("div",zo,[t("div",yo,[t("span",_o,[s(d(Ue),{class:"h-4 w-4 text-zinc-500"}),e[100]||(e[100]=y(" Nome ",-1))]),s(S,{modelValue:n.customer_fields.name,"onUpdate:modelValue":e[13]||(e[13]=o=>n.customer_fields.name=o)},null,8,["modelValue"])]),t("div",wo,[t("span",ho,[s(d(lt),{class:"h-4 w-4 text-zinc-500"}),e[101]||(e[101]=y(" CPF ",-1))]),s(S,{modelValue:n.customer_fields.cpf,"onUpdate:modelValue":e[14]||(e[14]=o=>n.customer_fields.cpf=o)},null,8,["modelValue"])]),t("div",Vo,[t("span",Co,[s(d(ct),{class:"h-4 w-4 text-zinc-500"}),e[102]||(e[102]=y(" Telefone (com código do país) ",-1))]),s(S,{modelValue:n.customer_fields.phone,"onUpdate:modelValue":e[15]||(e[15]=o=>n.customer_fields.phone=o)},null,8,["modelValue"])]),t("div",Uo,[e[103]||(e[103]=t("span",{class:"flex items-center gap-2 text-sm font-medium text-zinc-700 dark:text-zinc-300"}," Cupom / desconto ",-1)),s(S,{modelValue:n.customer_fields.coupon,"onUpdate:modelValue":e[16]||(e[16]=o=>n.customer_fields.coupon=o)},null,8,["modelValue"])])])],512),[[_,f.value.customer_fields]])]),t("div",$o,[t("button",{type:"button",class:"flex w-full items-center justify-between gap-2 px-4 py-3 text-left font-semibold text-zinc-900 dark:text-white",onClick:e[17]||(e[17]=o=>V("appearance"))},[t("span",So,[s(d(st),{class:"h-5 w-5 text-zinc-500"}),e[105]||(e[105]=y(" Aparência ",-1))]),f.value.appearance?(p(),z(d(U),{key:0,class:"h-5 w-5 shrink-0"})):(p(),z(d(I),{key:1,class:"h-5 w-5 shrink-0"}))]),i(t("div",To,[t("div",Ao,[t("div",null,[e[106]||(e[106]=t("label",{class:"mb-1.5 block text-sm font-medium text-zinc-700 dark:text-zinc-300"}," Cor de fundo ",-1)),t("div",Eo,[i(t("input",{"onUpdate:modelValue":e[18]||(e[18]=o=>n.appearance.background_color=o),type:"color",class:"h-10 w-14 cursor-pointer rounded-lg border border-zinc-200 p-0.5 dark:border-zinc-600"},null,512),[[v,n.appearance.background_color]]),i(t("input",{"onUpdate:modelValue":e[19]||(e[19]=o=>n.appearance.background_color=o),type:"text",class:c(g+" flex-1")},null,2),[[v,n.appearance.background_color]])])]),t("div",null,[e[107]||(e[107]=t("label",{class:"mb-1.5 block text-sm font-medium text-zinc-700 dark:text-zinc-300"}," Cor primária ",-1)),t("div",Do,[i(t("input",{"onUpdate:modelValue":e[20]||(e[20]=o=>n.appearance.primary_color=o),type:"color",class:"h-10 w-14 cursor-pointer rounded-lg border border-zinc-200 p-0.5 dark:border-zinc-600"},null,512),[[v,n.appearance.primary_color]]),i(t("input",{"onUpdate:modelValue":e[21]||(e[21]=o=>n.appearance.primary_color=o),type:"text",class:c(g+" flex-1")},null,2),[[v,n.appearance.primary_color]])])]),t("div",null,[e[108]||(e[108]=t("label",{class:"mb-1.5 block text-sm font-medium text-zinc-700 dark:text-zinc-300"}," Cor do order bump ",-1)),t("div",Io,[i(t("input",{"onUpdate:modelValue":e[22]||(e[22]=o=>n.appearance.order_bump_color=o),type:"color",class:"h-10 w-14 cursor-pointer rounded-lg border border-zinc-200 p-0.5 dark:border-zinc-600"},null,512),[[v,n.appearance.order_bump_color]]),i(t("input",{"onUpdate:modelValue":e[23]||(e[23]=o=>n.appearance.order_bump_color=o),type:"text",class:c(g+" flex-1")},null,2),[[v,n.appearance.order_bump_color]])]),e[109]||(e[109]=t("p",{class:"mt-1 text-xs text-zinc-500 dark:text-zinc-400"},'Cor da borda, fundo e tag "Oferta especial" dos produtos sugeridos.',-1))])])],512),[[_,f.value.appearance]])]),t("div",Po,[t("button",{type:"button",class:"flex w-full items-center justify-between gap-2 px-4 py-3 text-left font-semibold text-zinc-900 dark:text-white",onClick:e[24]||(e[24]=o=>V("timer"))},[t("span",jo,[s(d(it),{class:"h-5 w-5 text-zinc-500"}),e[110]||(e[110]=y(" Cronômetro ",-1))]),f.value.timer?(p(),z(d(U),{key:0,class:"h-5 w-5 shrink-0"})):(p(),z(d(I),{key:1,class:"h-5 w-5 shrink-0"}))]),i(t("div",Bo,[t("div",Lo,[s(S,{modelValue:n.timer.enabled,"onUpdate:modelValue":e[25]||(e[25]=o=>n.timer.enabled=o),label:"Ativar cronômetro"},null,8,["modelValue"]),i(t("div",null,[t("div",null,[e[111]||(e[111]=t("label",{class:"mb-1.5 block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Texto",-1)),i(t("input",{"onUpdate:modelValue":e[26]||(e[26]=o=>n.timer.text=o),type:"text",class:c(g)},null,512),[[v,n.timer.text]])]),t("div",Mo,[t("div",null,[e[112]||(e[112]=t("label",{class:"mb-1.5 block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Horas",-1)),i(t("input",{"onUpdate:modelValue":e[27]||(e[27]=o=>n.timer.hours=o),type:"number",min:"0",max:"168",class:c(g)},null,512),[[v,n.timer.hours,void 0,{number:!0}]])]),t("div",null,[e[113]||(e[113]=t("label",{class:"mb-1.5 block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Minutos",-1)),i(t("input",{"onUpdate:modelValue":e[28]||(e[28]=o=>n.timer.minutes=o),type:"number",min:"0",max:"999",class:c(g)},null,512),[[v,n.timer.minutes,void 0,{number:!0}]])])]),e[116]||(e[116]=t("p",{class:"mt-1.5 text-xs text-zinc-500 dark:text-zinc-400"}," Ex.: 5 horas e 30 minutos. Se alterar o tempo, o cronômetro reinicia no checkout. ",-1)),t("div",Ro,[t("div",null,[e[114]||(e[114]=t("label",{class:"mb-1 block text-xs text-zinc-500"},"Fundo",-1)),i(t("input",{"onUpdate:modelValue":e[29]||(e[29]=o=>n.timer.background_color=o),type:"color",class:"h-9 w-full cursor-pointer rounded border"},null,512),[[v,n.timer.background_color]])]),t("div",null,[e[115]||(e[115]=t("label",{class:"mb-1 block text-xs text-zinc-500"},"Texto",-1)),i(t("input",{"onUpdate:modelValue":e[30]||(e[30]=o=>n.timer.text_color=o),type:"color",class:"h-9 w-full cursor-pointer rounded border"},null,512),[[v,n.timer.text_color]])])]),t("div",qo,[s(S,{modelValue:n.timer.sticky,"onUpdate:modelValue":e[31]||(e[31]=o=>n.timer.sticky=o),label:"Fixar no topo ao rolar"},null,8,["modelValue"])])],512),[[_,n.timer.enabled]])])],512),[[_,f.value.timer]])]),t("div",Fo,[t("button",{type:"button",class:"flex w-full items-center justify-between gap-2 px-4 py-3 text-left font-semibold text-zinc-900 dark:text-white",onClick:e[32]||(e[32]=o=>V("notification"))},[t("span",No,[s(d(Ne),{class:"h-5 w-5 text-zinc-500"}),e[117]||(e[117]=y(" Notificações ",-1))]),f.value.notification?(p(),z(d(U),{key:0,class:"h-5 w-5 shrink-0"})):(p(),z(d(I),{key:1,class:"h-5 w-5 shrink-0"}))]),i(t("div",Oo,[t("div",Ho,[s(S,{modelValue:n.sales_notification.enabled,"onUpdate:modelValue":e[33]||(e[33]=o=>n.sales_notification.enabled=o),label:"Ativar notificações"},null,8,["modelValue"]),i(t("div",null,[t("div",null,[e[118]||(e[118]=t("label",{class:"mb-1.5 block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Texto após o nome (ex.: acabou de comprar)",-1)),i(t("input",{"onUpdate:modelValue":e[34]||(e[34]=o=>n.sales_notification.title=o),type:"text",class:c(g),placeholder:"acabou de comprar"},null,512),[[v,n.sales_notification.title]]),e[119]||(e[119]=t("p",{class:"mt-1 text-xs text-zinc-500 dark:text-zinc-400"},[y("Exibido como: "),t("strong",null,"Nome, [este texto]")],-1))]),t("div",null,[e[120]||(e[120]=t("label",{class:"mb-1.5 block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Nomes (um por linha)",-1)),i(t("textarea",{"onUpdate:modelValue":e[35]||(e[35]=o=>n.sales_notification.names=o),rows:"4",class:c(g),placeholder:`Maria João Ana`},null,512),[[v,n.sales_notification.names]])]),t("div",null,[e[121]||(e[121]=t("label",{class:"mb-1.5 block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Texto do produto na notificação (descrição)",-1)),i(t("input",{"onUpdate:modelValue":e[36]||(e[36]=o=>n.sales_notification.product_label=o),type:"text",class:c(g),placeholder:B.produto.name},null,8,Go),[[v,n.sales_notification.product_label]]),e[122]||(e[122]=t("p",{class:"mt-1 text-xs text-zinc-500 dark:text-zinc-400"},"Por padrão usa o nome do produto.",-1))]),t("div",Jo,[t("div",null,[e[123]||(e[123]=t("label",{class:"mb-1.5 block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Tempo de exibição (s)",-1)),i(t("input",{"onUpdate:modelValue":e[37]||(e[37]=o=>n.sales_notification.display_seconds=o),type:"number",min:"0",step:"0.5",class:c(g)},null,512),[[v,n.sales_notification.display_seconds,void 0,{number:!0}]])]),t("div",null,[e[124]||(e[124]=t("label",{class:"mb-1.5 block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Intervalo (s)",-1)),i(t("input",{"onUpdate:modelValue":e[38]||(e[38]=o=>n.sales_notification.interval_seconds=o),type:"number",min:"0",step:"0.5",class:c(g)},null,512),[[v,n.sales_notification.interval_seconds,void 0,{number:!0}]])])])],512),[[_,n.sales_notification.enabled]])])],512),[[_,f.value.notification]])]),t("div",Wo,[t("button",{type:"button",class:"flex w-full items-center justify-between gap-2 px-4 py-3 text-left font-semibold text-zinc-900 dark:text-white",onClick:e[39]||(e[39]=o=>V("video"))},[t("span",Qo,[s(d(at),{class:"h-5 w-5 text-zinc-500"}),e[125]||(e[125]=y(" Vídeo YouTube ",-1))]),f.value.video?(p(),z(d(U),{key:0,class:"h-5 w-5 shrink-0"})):(p(),z(d(I),{key:1,class:"h-5 w-5 shrink-0"}))]),i(t("div",Xo,[t("div",Yo,[t("div",null,[e[126]||(e[126]=t("label",{class:"mb-1.5 block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"URL do vídeo",-1)),i(t("input",{"onUpdate:modelValue":e[40]||(e[40]=o=>n.youtube_url=o),type:"url",class:c(g),placeholder:"https://www.youtube.com/watch?v=..."},null,512),[[v,n.youtube_url]])]),t("div",null,[e[128]||(e[128]=t("label",{class:"mb-1.5 block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Posição do vídeo",-1)),i(t("select",{"onUpdate:modelValue":e[41]||(e[41]=o=>n.youtube_position=o),class:c(g)},[...e[127]||(e[127]=[t("option",{value:"top"},"No topo da página",-1),t("option",{value:"bottom"},"Em baixo da página",-1)])],512),[[ce,n.youtube_position]])])])],512),[[_,f.value.video]])]),t("div",Ko,[t("button",{type:"button",class:"flex w-full items-center justify-between gap-2 px-4 py-3 text-left font-semibold text-zinc-900 dark:text-white",onClick:e[42]||(e[42]=o=>V("redirect"))},[e[129]||(e[129]=t("span",{class:"flex items-center gap-2"},"Redirecionamento",-1)),f.value.redirect?(p(),z(d(U),{key:0,class:"h-5 w-5 shrink-0"})):(p(),z(d(I),{key:1,class:"h-5 w-5 shrink-0"}))]),i(t("div",Zo,[t("div",en,[t("div",null,[e[130]||(e[130]=t("label",{class:"mb-1.5 block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Redirecionar após compra (URL)",-1)),i(t("input",{"onUpdate:modelValue":e[43]||(e[43]=o=>n.redirect_after_purchase=o),type:"url",class:c(g),placeholder:"https://... ou /obrigado"},null,512),[[v,n.redirect_after_purchase]])]),s(S,{modelValue:n.back_redirect.enabled,"onUpdate:modelValue":e[44]||(e[44]=o=>n.back_redirect.enabled=o),label:"Ativar back redirect"},null,8,["modelValue"]),i(t("div",null,[e[131]||(e[131]=t("label",{class:"mb-1.5 block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"URL ao clicar voltar",-1)),i(t("input",{"onUpdate:modelValue":e[45]||(e[45]=o=>n.back_redirect.url=o),type:"url",class:c(g),placeholder:"https://..."},null,512),[[v,n.back_redirect.url]])],512),[[_,n.back_redirect.enabled]])])],512),[[_,f.value.redirect]])]),t("div",tn,[t("button",{type:"button",class:"flex w-full items-center justify-between gap-2 px-4 py-3 text-left font-semibold text-zinc-900 dark:text-white",onClick:e[46]||(e[46]=o=>V("embed"))},[t("span",on,[s(d(_e),{class:"h-4 w-4 text-zinc-500"}),e[132]||(e[132]=y(" Incorporar em iframe ",-1))]),f.value.embed?(p(),z(d(U),{key:0,class:"h-5 w-5 shrink-0"})):(p(),z(d(I),{key:1,class:"h-5 w-5 shrink-0"}))]),i(t("div",nn,[t("div",ln,[s(S,{modelValue:n.embed.enabled,"onUpdate:modelValue":e[47]||(e[47]=o=>n.embed.enabled=o),label:"Permitir carregar o checkout em iframe em páginas externas"},null,8,["modelValue"]),e[137]||(e[137]=t("p",{class:"text-xs text-zinc-500 dark:text-zinc-400"}," Quando ativo, o checkout pode ser embutido no seu site de vendas, landing page ou blog. Requer HTTPS em produção para pagamentos com cartão e carteiras digitais. ",-1)),i(t("div",null,[e[135]||(e[135]=t("label",{class:"mb-1.5 block text-sm font-medium text-zinc-700 dark:text-zinc-300"}," Domínios permitidos (opcional) ",-1)),i(t("textarea",{"onUpdate:modelValue":e[48]||(e[48]=o=>K.value=o),rows:"3",class:c(g),placeholder:`https://meusite.com.br diff --git a/public/build/assets/Cadastro-CxBfovNN.js b/public/build/assets/Cadastro-DK8SaVRy.js similarity index 95% rename from public/build/assets/Cadastro-CxBfovNN.js rename to public/build/assets/Cadastro-DK8SaVRy.js index 39c3f867..5059f0a9 100644 --- a/public/build/assets/Cadastro-CxBfovNN.js +++ b/public/build/assets/Cadastro-DK8SaVRy.js @@ -1 +1 @@ -import{o as n,c as l,g as d,h as b,u as r,i as m,a as t,t as a,w as v,d as u,b as c,v as p,s as x,n as h}from"./runtime-dom.esm-bundler-OrSu0e66.js";import{u as _,l as k,_ as q,d as C}from"./Toggle-BD3dflqy.js";import{_ as V}from"./AfiliarLayout-C4Gw_6Op.js";import{A as S}from"./arrow-left-t2xJ2JaZ.js";import"./app-CKysWbKx.js";const j={class:"space-y-6"},N={class:"overflow-hidden rounded-2xl border border-zinc-200 bg-white shadow-sm dark:border-zinc-800 dark:bg-zinc-900"},U={class:"flex items-center gap-4 border-b border-zinc-100 p-5 dark:border-zinc-800 sm:p-6"},A=["src","alt"],B={key:1,class:"flex h-16 w-16 shrink-0 items-center justify-center rounded-xl bg-zinc-100 text-xl font-bold text-zinc-400 dark:bg-zinc-800"},E={class:"min-w-0"},O={class:"truncate text-lg font-bold text-zinc-900 dark:text-white"},$={class:"text-sm text-zinc-500"},D={key:0,class:"rounded-xl border border-red-200 bg-red-50 px-4 py-3 text-sm text-red-700 dark:border-red-900/50 dark:bg-red-950/40 dark:text-red-300"},M={key:0,class:"mt-1 text-xs text-red-600"},T={key:0,class:"mt-1 text-xs text-red-600"},F={key:0,class:"mt-1 text-xs text-red-600"},J={class:"text-center text-sm text-zinc-500 dark:text-zinc-400"},f="w-full rounded-xl border border-zinc-200 bg-white px-4 py-2.5 text-sm text-zinc-900 outline-none transition focus:border-[var(--color-primary)] focus:ring-2 focus:ring-[color-mix(in_srgb,var(--color-primary)_25%,transparent)] dark:border-zinc-700 dark:bg-zinc-800 dark:text-white",Q=Object.assign({layout:V},{__name:"Cadastro",props:{program:{type:Object,required:!0},product:{type:Object,required:!0},slug:{type:String,required:!0},login_url:{type:String,required:!0},landing_url:{type:String,required:!0}},setup(o){const w=o,y=C(),g=h(()=>y.props.errors??{}),s=_({name:"",email:"",password:"",password_confirmation:""});function z(){s.post(`/afiliar/${w.slug}/cadastro`)}return(L,e)=>(n(),l("div",j,[d(r(k),{href:o.landing_url,class:"inline-flex items-center gap-1.5 text-sm font-medium text-zinc-500 transition hover:text-[var(--color-primary)] dark:text-zinc-400"},{default:b(()=>[d(r(S),{class:"h-4 w-4"}),e[4]||(e[4]=m(" Voltar ao programa ",-1))]),_:1},8,["href"]),t("div",N,[t("div",U,[o.product.image_url?(n(),l("img",{key:0,src:o.product.image_url,alt:o.product.name,class:"h-16 w-16 shrink-0 rounded-xl object-cover"},null,8,A)):(n(),l("div",B,a(o.product.name?.charAt(0)),1)),t("div",E,[e[5]||(e[5]=t("p",{class:"text-xs font-medium uppercase tracking-wide text-[var(--color-primary)]"},"Cadastro de afiliado",-1)),t("h1",O,a(o.product.name),1),t("p",$," Comissão de "+a(o.program.default_commission_percent)+"% (líquido) ",1)])]),t("form",{class:"space-y-4 p-5 sm:p-6",onSubmit:v(z,["prevent"])},[g.value.email?(n(),l("p",D,a(g.value.email),1)):u("",!0),t("div",null,[e[6]||(e[6]=t("label",{class:"mb-1.5 block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Nome completo",-1)),c(t("input",{"onUpdate:modelValue":e[0]||(e[0]=i=>r(s).name=i),type:"text",required:"",autocomplete:"name",class:x(f)},null,512),[[p,r(s).name]]),r(s).errors.name?(n(),l("p",M,a(r(s).errors.name),1)):u("",!0)]),t("div",null,[e[7]||(e[7]=t("label",{class:"mb-1.5 block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"E-mail",-1)),c(t("input",{"onUpdate:modelValue":e[1]||(e[1]=i=>r(s).email=i),type:"email",required:"",autocomplete:"email",class:x(f)},null,512),[[p,r(s).email]]),r(s).errors.email?(n(),l("p",T,a(r(s).errors.email),1)):u("",!0)]),t("div",null,[e[8]||(e[8]=t("label",{class:"mb-1.5 block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Senha",-1)),c(t("input",{"onUpdate:modelValue":e[2]||(e[2]=i=>r(s).password=i),type:"password",required:"",autocomplete:"new-password",class:x(f)},null,512),[[p,r(s).password]]),r(s).errors.password?(n(),l("p",F,a(r(s).errors.password),1)):u("",!0)]),t("div",null,[e[9]||(e[9]=t("label",{class:"mb-1.5 block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Confirmar senha",-1)),c(t("input",{"onUpdate:modelValue":e[3]||(e[3]=i=>r(s).password_confirmation=i),type:"password",required:"",autocomplete:"new-password",class:x(f)},null,512),[[p,r(s).password_confirmation]])]),d(q,{type:"submit",variant:"primary",class:"w-full py-3",disabled:r(s).processing},{default:b(()=>[m(a(o.program.manual_approval?"Solicitar afiliação":"Criar conta e afiliar"),1)]),_:1},8,["disabled"]),t("p",J,[e[11]||(e[11]=m(" Já tem conta? ",-1)),d(r(k),{href:o.login_url,class:"font-medium text-[var(--color-primary)] hover:underline"},{default:b(()=>[...e[10]||(e[10]=[m(" Entrar e afiliar automaticamente ",-1)])]),_:1},8,["href"])])],32)])]))}});export{Q as default}; +import{o as n,c as l,g as d,h as b,u as r,i as m,a as t,t as a,w as v,d as u,b as c,v as p,s as x,n as h}from"./runtime-dom.esm-bundler-OrSu0e66.js";import{u as _,l as k,_ as q,d as C}from"./Toggle-BD3dflqy.js";import{_ as V}from"./AfiliarLayout-B0S_PtE8.js";import{A as S}from"./arrow-left-t2xJ2JaZ.js";import"./app-CT8pqccC.js";const j={class:"space-y-6"},N={class:"overflow-hidden rounded-2xl border border-zinc-200 bg-white shadow-sm dark:border-zinc-800 dark:bg-zinc-900"},U={class:"flex items-center gap-4 border-b border-zinc-100 p-5 dark:border-zinc-800 sm:p-6"},A=["src","alt"],B={key:1,class:"flex h-16 w-16 shrink-0 items-center justify-center rounded-xl bg-zinc-100 text-xl font-bold text-zinc-400 dark:bg-zinc-800"},E={class:"min-w-0"},O={class:"truncate text-lg font-bold text-zinc-900 dark:text-white"},$={class:"text-sm text-zinc-500"},D={key:0,class:"rounded-xl border border-red-200 bg-red-50 px-4 py-3 text-sm text-red-700 dark:border-red-900/50 dark:bg-red-950/40 dark:text-red-300"},M={key:0,class:"mt-1 text-xs text-red-600"},T={key:0,class:"mt-1 text-xs text-red-600"},F={key:0,class:"mt-1 text-xs text-red-600"},J={class:"text-center text-sm text-zinc-500 dark:text-zinc-400"},f="w-full rounded-xl border border-zinc-200 bg-white px-4 py-2.5 text-sm text-zinc-900 outline-none transition focus:border-[var(--color-primary)] focus:ring-2 focus:ring-[color-mix(in_srgb,var(--color-primary)_25%,transparent)] dark:border-zinc-700 dark:bg-zinc-800 dark:text-white",Q=Object.assign({layout:V},{__name:"Cadastro",props:{program:{type:Object,required:!0},product:{type:Object,required:!0},slug:{type:String,required:!0},login_url:{type:String,required:!0},landing_url:{type:String,required:!0}},setup(o){const w=o,y=C(),g=h(()=>y.props.errors??{}),s=_({name:"",email:"",password:"",password_confirmation:""});function z(){s.post(`/afiliar/${w.slug}/cadastro`)}return(L,e)=>(n(),l("div",j,[d(r(k),{href:o.landing_url,class:"inline-flex items-center gap-1.5 text-sm font-medium text-zinc-500 transition hover:text-[var(--color-primary)] dark:text-zinc-400"},{default:b(()=>[d(r(S),{class:"h-4 w-4"}),e[4]||(e[4]=m(" Voltar ao programa ",-1))]),_:1},8,["href"]),t("div",N,[t("div",U,[o.product.image_url?(n(),l("img",{key:0,src:o.product.image_url,alt:o.product.name,class:"h-16 w-16 shrink-0 rounded-xl object-cover"},null,8,A)):(n(),l("div",B,a(o.product.name?.charAt(0)),1)),t("div",E,[e[5]||(e[5]=t("p",{class:"text-xs font-medium uppercase tracking-wide text-[var(--color-primary)]"},"Cadastro de afiliado",-1)),t("h1",O,a(o.product.name),1),t("p",$," Comissão de "+a(o.program.default_commission_percent)+"% (líquido) ",1)])]),t("form",{class:"space-y-4 p-5 sm:p-6",onSubmit:v(z,["prevent"])},[g.value.email?(n(),l("p",D,a(g.value.email),1)):u("",!0),t("div",null,[e[6]||(e[6]=t("label",{class:"mb-1.5 block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Nome completo",-1)),c(t("input",{"onUpdate:modelValue":e[0]||(e[0]=i=>r(s).name=i),type:"text",required:"",autocomplete:"name",class:x(f)},null,512),[[p,r(s).name]]),r(s).errors.name?(n(),l("p",M,a(r(s).errors.name),1)):u("",!0)]),t("div",null,[e[7]||(e[7]=t("label",{class:"mb-1.5 block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"E-mail",-1)),c(t("input",{"onUpdate:modelValue":e[1]||(e[1]=i=>r(s).email=i),type:"email",required:"",autocomplete:"email",class:x(f)},null,512),[[p,r(s).email]]),r(s).errors.email?(n(),l("p",T,a(r(s).errors.email),1)):u("",!0)]),t("div",null,[e[8]||(e[8]=t("label",{class:"mb-1.5 block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Senha",-1)),c(t("input",{"onUpdate:modelValue":e[2]||(e[2]=i=>r(s).password=i),type:"password",required:"",autocomplete:"new-password",class:x(f)},null,512),[[p,r(s).password]]),r(s).errors.password?(n(),l("p",F,a(r(s).errors.password),1)):u("",!0)]),t("div",null,[e[9]||(e[9]=t("label",{class:"mb-1.5 block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Confirmar senha",-1)),c(t("input",{"onUpdate:modelValue":e[3]||(e[3]=i=>r(s).password_confirmation=i),type:"password",required:"",autocomplete:"new-password",class:x(f)},null,512),[[p,r(s).password_confirmation]])]),d(q,{type:"submit",variant:"primary",class:"w-full py-3",disabled:r(s).processing},{default:b(()=>[m(a(o.program.manual_approval?"Solicitar afiliação":"Criar conta e afiliar"),1)]),_:1},8,["disabled"]),t("p",J,[e[11]||(e[11]=m(" Já tem conta? ",-1)),d(r(k),{href:o.login_url,class:"font-medium text-[var(--color-primary)] hover:underline"},{default:b(()=>[...e[10]||(e[10]=[m(" Entrar e afiliar automaticamente ",-1)])]),_:1},8,["href"])])],32)])]))}});export{Q as default}; diff --git a/public/build/assets/CardConfirm-BxIZZQ7_.js b/public/build/assets/CardConfirm-99hmFdKU.js similarity index 96% rename from public/build/assets/CardConfirm-BxIZZQ7_.js rename to public/build/assets/CardConfirm-99hmFdKU.js index 40f9ef25..0a2e826c 100644 --- a/public/build/assets/CardConfirm-BxIZZQ7_.js +++ b/public/build/assets/CardConfirm-99hmFdKU.js @@ -1 +1 @@ -import{a as m}from"./app-CKysWbKx.js";import{k as _}from"./Toggle-BD3dflqy.js";import{k as f,o as s,c as l,g as p,u as g,a as n,t as y,d as w,F as h,r as u}from"./runtime-dom.esm-bundler-OrSu0e66.js";const v={class:"min-h-screen bg-gray-100 flex flex-col items-center justify-center p-6"},b={class:"w-full max-w-sm rounded-2xl border border-gray-200 bg-white p-8 shadow-lg text-center"},k={class:"text-gray-700 font-medium"},x={key:0,class:"mt-4 flex justify-center"},P=Object.assign({layout:null},{__name:"CardConfirm",props:{client_secret:{type:String,required:!0},return_url:{type:String,default:"/"},stripe_publishable_key:{type:String,default:""}},setup(c){const e=c,r=u("loading"),t=u("Confirmando pagamento...");return f(async()=>{if(!e.stripe_publishable_key?.trim()||!e.client_secret?.trim()){r.value="error",t.value="Configuração inválida. Redirecionando.",setTimeout(()=>{window.location.href=e.return_url||"/"},2e3);return}try{const{loadStripe:o}=await m(async()=>{const{loadStripe:d}=await import("./index-BGiJ-87v.js");return{loadStripe:d}},[]),a=await o(e.stripe_publishable_key.trim());if(!a)throw new Error("Stripe não carregou");const{error:i}=await a.confirmCardPayment(e.client_secret);if(i){t.value=i.message||"Falha na confirmação.",r.value="error",setTimeout(()=>{window.location.href=e.return_url||"/"},3e3);return}r.value="success",t.value="Pagamento confirmado! Redirecionando...",window.location.href=e.return_url||"/"}catch(o){r.value="error",t.value=o?.message||"Erro ao confirmar. Redirecionando.",setTimeout(()=>{window.location.href=e.return_url||"/"},3e3)}}),(o,a)=>(s(),l(h,null,[p(g(_),{title:"Confirmar pagamento"}),n("div",v,[n("div",b,[n("p",k,y(t.value),1),r.value==="loading"?(s(),l("div",x,[...a[0]||(a[0]=[n("span",{class:"inline-block h-8 w-8 animate-spin rounded-full border-2 border-gray-300 border-t-gray-600"},null,-1)])])):w("",!0)])])],64))}});export{P as default}; +import{a as m}from"./app-CT8pqccC.js";import{k as _}from"./Toggle-BD3dflqy.js";import{k as f,o as s,c as l,g as p,u as g,a as n,t as y,d as w,F as h,r as u}from"./runtime-dom.esm-bundler-OrSu0e66.js";const v={class:"min-h-screen bg-gray-100 flex flex-col items-center justify-center p-6"},b={class:"w-full max-w-sm rounded-2xl border border-gray-200 bg-white p-8 shadow-lg text-center"},k={class:"text-gray-700 font-medium"},x={key:0,class:"mt-4 flex justify-center"},P=Object.assign({layout:null},{__name:"CardConfirm",props:{client_secret:{type:String,required:!0},return_url:{type:String,default:"/"},stripe_publishable_key:{type:String,default:""}},setup(c){const e=c,r=u("loading"),t=u("Confirmando pagamento...");return f(async()=>{if(!e.stripe_publishable_key?.trim()||!e.client_secret?.trim()){r.value="error",t.value="Configuração inválida. Redirecionando.",setTimeout(()=>{window.location.href=e.return_url||"/"},2e3);return}try{const{loadStripe:o}=await m(async()=>{const{loadStripe:d}=await import("./index-BGiJ-87v.js");return{loadStripe:d}},[]),a=await o(e.stripe_publishable_key.trim());if(!a)throw new Error("Stripe não carregou");const{error:i}=await a.confirmCardPayment(e.client_secret);if(i){t.value=i.message||"Falha na confirmação.",r.value="error",setTimeout(()=>{window.location.href=e.return_url||"/"},3e3);return}r.value="success",t.value="Pagamento confirmado! Redirecionando...",window.location.href=e.return_url||"/"}catch(o){r.value="error",t.value=o?.message||"Erro ao confirmar. Redirecionando.",setTimeout(()=>{window.location.href=e.return_url||"/"},3e3)}}),(o,a)=>(s(),l(h,null,[p(g(_),{title:"Confirmar pagamento"}),n("div",v,[n("div",b,[n("p",k,y(t.value),1),r.value==="loading"?(s(),l("div",x,[...a[0]||(a[0]=[n("span",{class:"inline-block h-8 w-8 animate-spin rounded-full border-2 border-gray-300 border-t-gray-600"},null,-1)])])):w("",!0)])])],64))}});export{P as default}; diff --git a/public/build/assets/Certificado-DYfFfqoi.js b/public/build/assets/Certificado-D50U71W5.js similarity index 98% rename from public/build/assets/Certificado-DYfFfqoi.js rename to public/build/assets/Certificado-D50U71W5.js index e2bd614e..4f5b7eb4 100644 --- a/public/build/assets/Certificado-DYfFfqoi.js +++ b/public/build/assets/Certificado-D50U71W5.js @@ -1,4 +1,4 @@ -import{_ as B}from"./MemberAreaAppLayout-2Kf_Hl8a.js";import{l as N}from"./Toggle-BD3dflqy.js";import{k as P,l as V,o as s,c,f as D,h as z,i as d,t as n,z as E,d as u,a as e,x as v,ac as I,F as M,g as T,u as U,n as i,r as H}from"./runtime-dom.esm-bundler-OrSu0e66.js";import"./PwaInstallPrompt-Bx_29grZ.js";import"./app-CKysWbKx.js";import"./menu-DBS2lHgI.js";import"./trophy-Cc2RPtC5.js";import"./circle-check-big-C5hhRDlp.js";import"./chevron-down-Cr9wcM6o.js";import"./user-BffYsEsr.js";import"./camera-WyeImfIU.js";import"./circle-alert-B_GEMyiN.js";import"./lock-W0G6cbcG.js";const L={class:"print-certificate-wrapper space-y-8"},W=["href"],R={key:0,class:"pointer-events-none absolute inset-0 z-20 flex flex-col items-center justify-center rounded-2xl bg-black/60 p-6 print:hidden","aria-hidden":"true"},G={class:"flex flex-col items-center gap-3 rounded-xl bg-zinc-900/95 px-6 py-5 text-center shadow-xl"},J={class:"max-w-xs text-sm text-zinc-300"},K={class:"pointer-events-none absolute inset-0 flex items-center justify-center opacity-[0.06]",style:{"z-index":"0"}},Q={class:"text-6xl font-bold whitespace-nowrap",style:{color:"var(--cert-primary)",transform:"rotate(-35deg)"}},X={class:"certificate-inner relative flex flex-col",style:{"z-index":"1"}},Y={class:"mt-6 text-center text-2xl font-bold certificate-body",style:{color:"var(--cert-title)"}},Z={class:"certificate-body mt-8 text-center",style:{color:"var(--cert-text)"}},tt={class:"mt-2"},et={class:"inline-block border-b-2 px-1 font-bold",style:{"border-color":"var(--cert-primary)",color:"var(--cert-text)"}},rt={class:"mt-3"},ot={key:0,class:"mt-2",style:{color:"var(--cert-text)",opacity:"0.9"}},it={key:1,class:"mt-2 print:hidden",style:{color:"var(--cert-text)",opacity:"0.8"}},at={class:"certificate-footer mt-12 grid grid-cols-2 gap-8 border-t pt-8",style:{"border-color":"rgba(0,0,0,0.12)",color:"var(--cert-text)"}},nt={class:"text-right"},lt={class:"font-semibold"},st={class:"flex flex-wrap justify-center gap-4 print:hidden"},wt=Object.assign({layout:B},{__name:"Certificado",props:{product:{type:Object,required:!0},config:{type:Object,default:()=>({})},certificate:{type:Object,required:!0},recipient_name:{type:String,default:""},slug:{type:String,required:!0},certificate_available:{type:Boolean,default:!1},progress_percent:{type:Number,default:0},completion_required_percent:{type:Number,default:100}},setup(r){const o=r,m=H(null),A=i(()=>o.certificate?.title||o.product?.name||""),p=i(()=>o.certificate?.platform_name||""),y=i(()=>o.certificate?.issued_at_full||o.certificate?.issued_at||""),b=i(()=>o.certificate?.primary_color||"var(--ma-primary)"),l=i(()=>o.certificate?.background_image_url||null),j=i(()=>o.certificate?.text_color||"#262626"),x=i(()=>o.certificate?.signature_font_family||"Dancing Script"),g=i(()=>{const a=x.value;return a?`https://fonts.googleapis.com/css2?family=${encodeURIComponent(a).replace(/%20/g,"+")}&display=swap`:null}),S=i(()=>l.value&&o.certificate?.background_overlay_enabled),$=i(()=>o.certificate?.background_overlay_color||"#000000"),F=i(()=>{const a=o.certificate?.background_overlay_opacity??50;return(a<=1?a*100:a)/100}),O=i(()=>m.value||(o.certificate?.print_format==="A3"?"A3":"A4")),h=i(()=>{const t=O.value==="A3",f=t?"420mm":"297mm",q=t?"297mm":"210mm",_=t?"400mm":"277mm",C=t?"277mm":"190mm";return` +import{_ as B}from"./MemberAreaAppLayout-Bhr9jm99.js";import{l as N}from"./Toggle-BD3dflqy.js";import{k as P,l as V,o as s,c,f as D,h as z,i as d,t as n,z as E,d as u,a as e,x as v,ac as I,F as M,g as T,u as U,n as i,r as H}from"./runtime-dom.esm-bundler-OrSu0e66.js";import"./PwaInstallPrompt-RkwxpbLw.js";import"./app-CT8pqccC.js";import"./menu-DBS2lHgI.js";import"./trophy-Cc2RPtC5.js";import"./circle-check-big-C5hhRDlp.js";import"./chevron-down-Cr9wcM6o.js";import"./user-BffYsEsr.js";import"./camera-WyeImfIU.js";import"./circle-alert-B_GEMyiN.js";import"./lock-W0G6cbcG.js";const L={class:"print-certificate-wrapper space-y-8"},W=["href"],R={key:0,class:"pointer-events-none absolute inset-0 z-20 flex flex-col items-center justify-center rounded-2xl bg-black/60 p-6 print:hidden","aria-hidden":"true"},G={class:"flex flex-col items-center gap-3 rounded-xl bg-zinc-900/95 px-6 py-5 text-center shadow-xl"},J={class:"max-w-xs text-sm text-zinc-300"},K={class:"pointer-events-none absolute inset-0 flex items-center justify-center opacity-[0.06]",style:{"z-index":"0"}},Q={class:"text-6xl font-bold whitespace-nowrap",style:{color:"var(--cert-primary)",transform:"rotate(-35deg)"}},X={class:"certificate-inner relative flex flex-col",style:{"z-index":"1"}},Y={class:"mt-6 text-center text-2xl font-bold certificate-body",style:{color:"var(--cert-title)"}},Z={class:"certificate-body mt-8 text-center",style:{color:"var(--cert-text)"}},tt={class:"mt-2"},et={class:"inline-block border-b-2 px-1 font-bold",style:{"border-color":"var(--cert-primary)",color:"var(--cert-text)"}},rt={class:"mt-3"},ot={key:0,class:"mt-2",style:{color:"var(--cert-text)",opacity:"0.9"}},it={key:1,class:"mt-2 print:hidden",style:{color:"var(--cert-text)",opacity:"0.8"}},at={class:"certificate-footer mt-12 grid grid-cols-2 gap-8 border-t pt-8",style:{"border-color":"rgba(0,0,0,0.12)",color:"var(--cert-text)"}},nt={class:"text-right"},lt={class:"font-semibold"},st={class:"flex flex-wrap justify-center gap-4 print:hidden"},wt=Object.assign({layout:B},{__name:"Certificado",props:{product:{type:Object,required:!0},config:{type:Object,default:()=>({})},certificate:{type:Object,required:!0},recipient_name:{type:String,default:""},slug:{type:String,required:!0},certificate_available:{type:Boolean,default:!1},progress_percent:{type:Number,default:0},completion_required_percent:{type:Number,default:100}},setup(r){const o=r,m=H(null),A=i(()=>o.certificate?.title||o.product?.name||""),p=i(()=>o.certificate?.platform_name||""),y=i(()=>o.certificate?.issued_at_full||o.certificate?.issued_at||""),b=i(()=>o.certificate?.primary_color||"var(--ma-primary)"),l=i(()=>o.certificate?.background_image_url||null),j=i(()=>o.certificate?.text_color||"#262626"),x=i(()=>o.certificate?.signature_font_family||"Dancing Script"),g=i(()=>{const a=x.value;return a?`https://fonts.googleapis.com/css2?family=${encodeURIComponent(a).replace(/%20/g,"+")}&display=swap`:null}),S=i(()=>l.value&&o.certificate?.background_overlay_enabled),$=i(()=>o.certificate?.background_overlay_color||"#000000"),F=i(()=>{const a=o.certificate?.background_overlay_opacity??50;return(a<=1?a*100:a)/100}),O=i(()=>m.value||(o.certificate?.print_format==="A3"?"A3":"A4")),h=i(()=>{const t=O.value==="A3",f=t?"420mm":"297mm",q=t?"297mm":"210mm",_=t?"400mm":"277mm",C=t?"277mm":"190mm";return` @media print { @page { size: ${f} ${q}; diff --git a/public/build/assets/Checkbox-UjOITAEK.js b/public/build/assets/Checkbox-CXmg9tb9.js similarity index 92% rename from public/build/assets/Checkbox-UjOITAEK.js rename to public/build/assets/Checkbox-CXmg9tb9.js index c3f6a8a1..34ab30e7 100644 --- a/public/build/assets/Checkbox-UjOITAEK.js +++ b/public/build/assets/Checkbox-CXmg9tb9.js @@ -1 +1 @@ -import{o,c as r,a as m,f as b,u as l,d as f,bN as s,w as i,s as n,t as k,D as h}from"./runtime-dom.esm-bundler-OrSu0e66.js";import{q as y}from"./Toggle-BD3dflqy.js";import{C as v}from"./app-CKysWbKx.js";const g=["aria-checked","aria-label","onKeydown"],p={key:0,class:"select-none"},B={__name:"Checkbox",props:{modelValue:{type:Boolean,default:!1},label:{type:String,default:""},disabled:{type:Boolean,default:!1},class:{type:[String,Object,Array],default:""}},emits:["update:modelValue"],setup(e,{emit:c}){const a=e,d=c;function t(){a.disabled||d("update:modelValue",!a.modelValue)}return(u,w)=>(o(),r("label",{class:n(["flex w-full cursor-pointer items-center gap-3 text-sm text-zinc-700 dark:text-zinc-300 transition-colors",e.disabled&&"cursor-not-allowed opacity-60",l(y)(a.class)]),onClick:t},[m("span",{role:"checkbox","aria-checked":e.modelValue,"aria-label":e.label||(e.modelValue?"Marcado":"Desmarcado"),class:n(["relative flex h-5 w-5 shrink-0 items-center justify-center rounded-md border-2 transition-all duration-200","focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[var(--color-primary)] focus-visible:ring-offset-2 dark:focus-visible:ring-offset-zinc-900",e.modelValue?"border-[var(--color-primary)] bg-[var(--color-primary)] text-white":"border-zinc-300 bg-white hover:border-zinc-400 dark:border-zinc-600 dark:bg-zinc-800 dark:hover:border-zinc-500",e.disabled&&"pointer-events-none"]),tabindex:"0",onKeydown:[s(i(t,["prevent"]),["enter"]),s(i(t,["prevent"]),["space"])]},[e.modelValue?(o(),b(l(v),{key:0,class:"h-3 w-3 stroke-[2.5]"})):f("",!0)],42,g),e.label?(o(),r("span",p,k(e.label),1)):h(u.$slots,"default",{key:1})],2))}};export{B as _}; +import{o,c as r,a as m,f as b,u as l,d as f,bN as s,w as i,s as n,t as k,D as h}from"./runtime-dom.esm-bundler-OrSu0e66.js";import{q as y}from"./Toggle-BD3dflqy.js";import{C as v}from"./app-CT8pqccC.js";const g=["aria-checked","aria-label","onKeydown"],p={key:0,class:"select-none"},B={__name:"Checkbox",props:{modelValue:{type:Boolean,default:!1},label:{type:String,default:""},disabled:{type:Boolean,default:!1},class:{type:[String,Object,Array],default:""}},emits:["update:modelValue"],setup(e,{emit:c}){const a=e,d=c;function t(){a.disabled||d("update:modelValue",!a.modelValue)}return(u,w)=>(o(),r("label",{class:n(["flex w-full cursor-pointer items-center gap-3 text-sm text-zinc-700 dark:text-zinc-300 transition-colors",e.disabled&&"cursor-not-allowed opacity-60",l(y)(a.class)]),onClick:t},[m("span",{role:"checkbox","aria-checked":e.modelValue,"aria-label":e.label||(e.modelValue?"Marcado":"Desmarcado"),class:n(["relative flex h-5 w-5 shrink-0 items-center justify-center rounded-md border-2 transition-all duration-200","focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[var(--color-primary)] focus-visible:ring-offset-2 dark:focus-visible:ring-offset-zinc-900",e.modelValue?"border-[var(--color-primary)] bg-[var(--color-primary)] text-white":"border-zinc-300 bg-white hover:border-zinc-400 dark:border-zinc-600 dark:bg-zinc-800 dark:hover:border-zinc-500",e.disabled&&"pointer-events-none"]),tabindex:"0",onKeydown:[s(i(t,["prevent"]),["enter"]),s(i(t,["prevent"]),["space"])]},[e.modelValue?(o(),b(l(v),{key:0,class:"h-3 w-3 stroke-[2.5]"})):f("",!0)],42,g),e.label?(o(),r("span",p,k(e.label),1)):h(u.$slots,"default",{key:1})],2))}};export{B as _}; diff --git a/public/build/assets/Comments-BuIR4mJh.js b/public/build/assets/Comments-CeX4S56X.js similarity index 98% rename from public/build/assets/Comments-BuIR4mJh.js rename to public/build/assets/Comments-CeX4S56X.js index 1269fd65..6f215eaa 100644 --- a/public/build/assets/Comments-BuIR4mJh.js +++ b/public/build/assets/Comments-CeX4S56X.js @@ -1 +1 @@ -import{l as m,_ as b,r as p}from"./Toggle-BD3dflqy.js";import{_ as $}from"./app-CKysWbKx.js";import{o as n,c as o,a as r,g as x,h as l,i as u,u as f,t as a,F as k,y as _,s as w,d,f as g}from"./runtime-dom.esm-bundler-OrSu0e66.js";const S={class:"space-y-6"},B={class:"flex items-center justify-between"},N={class:"text-zinc-600 dark:text-zinc-400"},V={class:"flex gap-2"},A=["onClick"],O={class:"panel-table"},q={class:"divide-y divide-zinc-200 dark:divide-zinc-700"},F={class:"flex items-start justify-between gap-4"},P={class:"min-w-0 flex-1"},R={class:"font-medium text-zinc-900 dark:text-white"},T={key:0,class:"mt-1 text-sm text-zinc-500 dark:text-zinc-400"},D={class:"mt-2 text-zinc-700 dark:text-zinc-300"},E={class:"mt-2 text-xs text-zinc-500 dark:text-zinc-400"},L={key:0,class:"flex shrink-0 gap-2"},M={key:0,class:"p-8 text-center text-zinc-500 dark:text-zinc-400"},G={key:0,class:"flex justify-center gap-2"},K=Object.assign({layout:$},{__name:"Comments",props:{produto:{type:Object,required:!0},comments:{type:Object,required:!0},status_filter:{type:String,default:"pending"}},setup(t){const c=t,z=[{value:"pending",label:"Pendentes"},{value:"approved",label:"Aprovados"},{value:"rejected",label:"Rejeitados"},{value:"all",label:"Todos"}],y=()=>`/produtos/${c.produto.id}/member-builder/comments`;function h(i){p.get(y(),{status:i},{preserveState:!0})}function j(i){p.put(`/produtos/${c.produto.id}/member-builder/comments/${i}`,{status:"approved"},{preserveScroll:!0})}function C(i){p.put(`/produtos/${c.produto.id}/member-builder/comments/${i}`,{status:"rejected"},{preserveScroll:!0})}return(i,s)=>(n(),o("div",S,[r("div",B,[s[1]||(s[1]=r("h1",{class:"text-2xl font-bold text-zinc-900 dark:text-white"},"Comentários",-1)),x(f(m),{href:`/produtos/${t.produto.id}/member-builder`,class:"text-sm text-[var(--color-primary)] hover:underline"},{default:l(()=>[...s[0]||(s[0]=[u("Voltar ao Member Builder",-1)])]),_:1},8,["href"])]),r("p",N,a(t.produto.name),1),r("div",V,[(n(),o(k,null,_(z,e=>r("button",{key:e.value,type:"button",class:w(["rounded-lg px-3 py-2 text-sm font-medium transition",t.status_filter===e.value?"bg-[var(--color-primary)] text-white":"bg-zinc-100 text-zinc-700 hover:bg-zinc-200 dark:bg-zinc-700 dark:text-zinc-300 dark:hover:bg-zinc-600"]),onClick:v=>h(e.value)},a(e.label),11,A)),64))]),r("div",O,[r("ul",q,[(n(!0),o(k,null,_(t.comments.data,e=>(n(),o("li",{key:e.id,class:"p-4"},[r("div",F,[r("div",P,[r("p",R,a(e.user?.name)+" ("+a(e.user?.email)+")",1),e.lesson?(n(),o("p",T,"Aula: "+a(e.lesson.title),1)):d("",!0),r("p",D,a(e.content),1),r("p",E,a(e.status)+" · "+a(e.created_at),1)]),e.status==="pending"?(n(),o("div",L,[x(b,{size:"sm",onClick:v=>j(e.id)},{default:l(()=>[...s[2]||(s[2]=[u("Aprovar",-1)])]),_:1},8,["onClick"]),x(b,{size:"sm",variant:"outline",onClick:v=>C(e.id)},{default:l(()=>[...s[3]||(s[3]=[u("Rejeitar",-1)])]),_:1},8,["onClick"])])):d("",!0)])]))),128))]),t.comments.data?.length?d("",!0):(n(),o("div",M," Nenhum comentário encontrado. "))]),t.comments.prev_page_url||t.comments.next_page_url?(n(),o("div",G,[t.comments.prev_page_url?(n(),g(f(m),{key:0,href:t.comments.prev_page_url,class:"rounded-lg border border-zinc-200 px-4 py-2 text-sm dark:border-zinc-600"},{default:l(()=>[...s[4]||(s[4]=[u("Anterior",-1)])]),_:1},8,["href"])):d("",!0),t.comments.next_page_url?(n(),g(f(m),{key:1,href:t.comments.next_page_url,class:"rounded-lg border border-zinc-200 px-4 py-2 text-sm dark:border-zinc-600"},{default:l(()=>[...s[5]||(s[5]=[u("Próxima",-1)])]),_:1},8,["href"])):d("",!0)])):d("",!0)]))}});export{K as default}; +import{l as m,_ as b,r as p}from"./Toggle-BD3dflqy.js";import{_ as $}from"./app-CT8pqccC.js";import{o as n,c as o,a as r,g as x,h as l,i as u,u as f,t as a,F as k,y as _,s as w,d,f as g}from"./runtime-dom.esm-bundler-OrSu0e66.js";const S={class:"space-y-6"},B={class:"flex items-center justify-between"},N={class:"text-zinc-600 dark:text-zinc-400"},V={class:"flex gap-2"},A=["onClick"],O={class:"panel-table"},q={class:"divide-y divide-zinc-200 dark:divide-zinc-700"},F={class:"flex items-start justify-between gap-4"},P={class:"min-w-0 flex-1"},R={class:"font-medium text-zinc-900 dark:text-white"},T={key:0,class:"mt-1 text-sm text-zinc-500 dark:text-zinc-400"},D={class:"mt-2 text-zinc-700 dark:text-zinc-300"},E={class:"mt-2 text-xs text-zinc-500 dark:text-zinc-400"},L={key:0,class:"flex shrink-0 gap-2"},M={key:0,class:"p-8 text-center text-zinc-500 dark:text-zinc-400"},G={key:0,class:"flex justify-center gap-2"},K=Object.assign({layout:$},{__name:"Comments",props:{produto:{type:Object,required:!0},comments:{type:Object,required:!0},status_filter:{type:String,default:"pending"}},setup(t){const c=t,z=[{value:"pending",label:"Pendentes"},{value:"approved",label:"Aprovados"},{value:"rejected",label:"Rejeitados"},{value:"all",label:"Todos"}],y=()=>`/produtos/${c.produto.id}/member-builder/comments`;function h(i){p.get(y(),{status:i},{preserveState:!0})}function j(i){p.put(`/produtos/${c.produto.id}/member-builder/comments/${i}`,{status:"approved"},{preserveScroll:!0})}function C(i){p.put(`/produtos/${c.produto.id}/member-builder/comments/${i}`,{status:"rejected"},{preserveScroll:!0})}return(i,s)=>(n(),o("div",S,[r("div",B,[s[1]||(s[1]=r("h1",{class:"text-2xl font-bold text-zinc-900 dark:text-white"},"Comentários",-1)),x(f(m),{href:`/produtos/${t.produto.id}/member-builder`,class:"text-sm text-[var(--color-primary)] hover:underline"},{default:l(()=>[...s[0]||(s[0]=[u("Voltar ao Member Builder",-1)])]),_:1},8,["href"])]),r("p",N,a(t.produto.name),1),r("div",V,[(n(),o(k,null,_(z,e=>r("button",{key:e.value,type:"button",class:w(["rounded-lg px-3 py-2 text-sm font-medium transition",t.status_filter===e.value?"bg-[var(--color-primary)] text-white":"bg-zinc-100 text-zinc-700 hover:bg-zinc-200 dark:bg-zinc-700 dark:text-zinc-300 dark:hover:bg-zinc-600"]),onClick:v=>h(e.value)},a(e.label),11,A)),64))]),r("div",O,[r("ul",q,[(n(!0),o(k,null,_(t.comments.data,e=>(n(),o("li",{key:e.id,class:"p-4"},[r("div",F,[r("div",P,[r("p",R,a(e.user?.name)+" ("+a(e.user?.email)+")",1),e.lesson?(n(),o("p",T,"Aula: "+a(e.lesson.title),1)):d("",!0),r("p",D,a(e.content),1),r("p",E,a(e.status)+" · "+a(e.created_at),1)]),e.status==="pending"?(n(),o("div",L,[x(b,{size:"sm",onClick:v=>j(e.id)},{default:l(()=>[...s[2]||(s[2]=[u("Aprovar",-1)])]),_:1},8,["onClick"]),x(b,{size:"sm",variant:"outline",onClick:v=>C(e.id)},{default:l(()=>[...s[3]||(s[3]=[u("Rejeitar",-1)])]),_:1},8,["onClick"])])):d("",!0)])]))),128))]),t.comments.data?.length?d("",!0):(n(),o("div",M," Nenhum comentário encontrado. "))]),t.comments.prev_page_url||t.comments.next_page_url?(n(),o("div",G,[t.comments.prev_page_url?(n(),g(f(m),{key:0,href:t.comments.prev_page_url,class:"rounded-lg border border-zinc-200 px-4 py-2 text-sm dark:border-zinc-600"},{default:l(()=>[...s[4]||(s[4]=[u("Anterior",-1)])]),_:1},8,["href"])):d("",!0),t.comments.next_page_url?(n(),g(f(m),{key:1,href:t.comments.next_page_url,class:"rounded-lg border border-zinc-200 px-4 py-2 text-sm dark:border-zinc-600"},{default:l(()=>[...s[5]||(s[5]=[u("Próxima",-1)])]),_:1},8,["href"])):d("",!0)])):d("",!0)]))}});export{K as default}; diff --git a/public/build/assets/Comunidade-CFpEJV53.js b/public/build/assets/Comunidade-DMKhp7AG.js similarity index 94% rename from public/build/assets/Comunidade-CFpEJV53.js rename to public/build/assets/Comunidade-DMKhp7AG.js index 12a55ba2..144a4b50 100644 --- a/public/build/assets/Comunidade-CFpEJV53.js +++ b/public/build/assets/Comunidade-DMKhp7AG.js @@ -1 +1 @@ -import{l as f}from"./Toggle-BD3dflqy.js";import{_}from"./MemberAreaAppLayout-2Kf_Hl8a.js";import{_ as h,a as y}from"./MemberCommunityRightRail-CR1sfr8K.js";import{g as l}from"./communityPageIcons-BeAPBliZ.js";import{c as v,a as x,M as b}from"./communityBanner-DDtEvAY_.js";import{o as t,f as n,h as m,a,c as s,F as p,y as k,u as i,s as d,d as C,z as w,t as u,g}from"./runtime-dom.esm-bundler-OrSu0e66.js";import"./PwaInstallPrompt-Bx_29grZ.js";import"./app-CKysWbKx.js";import"./menu-DBS2lHgI.js";import"./trophy-Cc2RPtC5.js";import"./circle-check-big-C5hhRDlp.js";import"./chevron-down-Cr9wcM6o.js";import"./user-BffYsEsr.js";import"./camera-WyeImfIU.js";import"./circle-alert-B_GEMyiN.js";import"./lock-W0G6cbcG.js";import"./heart-Bg_TTudX.js";import"./message-circle-ovGBKj3h.js";import"./star-C9RUxtqu.js";import"./info-wvqULVyO.js";import"./video-BKkbUnD_.js";import"./image-Aikc9zug.js";import"./search-5WwcWNIL.js";import"./send-nq3aR65q.js";import"./share-2-BMarUb6G.js";import"./zap-BagaW96t.js";import"./book-open-DHA14jdk.js";import"./globe-cWRIpuWi.js";import"./trash-2-Bxek5XZ9.js";import"./calendar-DS_Dw1pU.js";import"./file-text-CNhd5y-T.js";import"./lightbulb-DY_5Q5ej.js";import"./circle-question-mark-BPZlRLnJ.js";import"./megaphone-DPTNqOeO.js";const A={class:"grid gap-4 sm:grid-cols-2"},N=["src","alt"],S={class:"flex items-center gap-3 p-4"},j={key:0,class:"flex h-10 w-10 shrink-0 items-center justify-center rounded-xl bg-[var(--ma-primary)]/15"},z={key:1,class:"flex h-10 w-10 shrink-0 items-center justify-center rounded-xl bg-[var(--ma-primary)]/15 text-xl"},M=["src","alt"],B={key:2,class:"flex h-10 w-10 shrink-0 items-center justify-center rounded-xl bg-[var(--ma-primary)]/15"},E={class:"font-semibold text-zinc-200 transition group-hover:text-white"},fe=Object.assign({layout:_},{__name:"Comunidade",props:{product:{type:Object,required:!0},config:{type:Object,default:()=>({})},pages:{type:Array,default:()=>[]},featured_posts:{type:Array,default:()=>[]},featured_pages:{type:Array,default:()=>[]},cross_page_posts:{type:Array,default:()=>[]},active_members:{type:Array,default:()=>[]},slug:{type:String,required:!0}},setup(r){const o=`/m/${r.slug}/comunidade`;return(O,c)=>(t(),n(y,{pages:r.pages,"base-path":o},{right:m(()=>[g(h,{pages:r.pages,"base-path":o,"featured-posts":r.featured_posts,"featured-pages":r.featured_pages,"cross-page-posts":r.cross_page_posts,"active-members":r.active_members},null,8,["pages","featured-posts","featured-pages","cross-page-posts","active-members"])]),default:m(()=>[c[0]||(c[0]=a("div",null,[a("h1",{class:"text-2xl font-bold tracking-tight text-white"},"Comunidade"),a("p",{class:"mt-1.5 text-sm text-zinc-400"},"Escolha uma página ao lado ou acesse diretamente:")],-1)),a("div",A,[(t(!0),s(p,null,k(r.pages,e=>(t(),n(i(f),{key:e.id,href:`${o}/${e.slug}`,class:"group overflow-hidden rounded-2xl bg-zinc-950/60 ring-1 ring-zinc-800/60 transition hover:ring-[var(--ma-primary)]/30"},{default:m(()=>[e.banner_url?(t(),s("div",{key:0,class:d([i(v),"relative w-full overflow-hidden bg-zinc-900/80"])},[a("img",{src:e.banner_url,alt:e.title,class:d([i(x),"transition duration-300 group-hover:scale-[1.02]"])},null,10,N)],2)):C("",!0),a("div",S,[e.icon?(t(),s(p,{key:0},[i(l)(e.icon)?(t(),s("span",j,[(t(),n(w(i(l)(e.icon)),{class:"h-5 w-5 text-[var(--ma-primary)]"}))])):(t(),s("span",z,u(e.icon),1))],64)):e.banner_url?(t(),s("img",{key:1,src:e.banner_url,alt:e.title,class:"h-10 w-10 shrink-0 rounded-xl object-cover"},null,8,M)):(t(),s("div",B,[g(i(b),{class:"h-5 w-5 text-[var(--ma-primary)]"})])),a("span",E,u(e.title),1)])]),_:2},1032,["href"]))),128))])]),_:1},8,["pages"]))}});export{fe as default}; +import{l as f}from"./Toggle-BD3dflqy.js";import{_}from"./MemberAreaAppLayout-Bhr9jm99.js";import{_ as h,a as y}from"./MemberCommunityRightRail-CR1sfr8K.js";import{g as l}from"./communityPageIcons-BeAPBliZ.js";import{c as v,a as x,M as b}from"./communityBanner-DDtEvAY_.js";import{o as t,f as n,h as m,a,c as s,F as p,y as k,u as i,s as d,d as C,z as w,t as u,g}from"./runtime-dom.esm-bundler-OrSu0e66.js";import"./PwaInstallPrompt-RkwxpbLw.js";import"./app-CT8pqccC.js";import"./menu-DBS2lHgI.js";import"./trophy-Cc2RPtC5.js";import"./circle-check-big-C5hhRDlp.js";import"./chevron-down-Cr9wcM6o.js";import"./user-BffYsEsr.js";import"./camera-WyeImfIU.js";import"./circle-alert-B_GEMyiN.js";import"./lock-W0G6cbcG.js";import"./heart-Bg_TTudX.js";import"./message-circle-ovGBKj3h.js";import"./star-C9RUxtqu.js";import"./info-wvqULVyO.js";import"./video-BKkbUnD_.js";import"./image-Aikc9zug.js";import"./search-5WwcWNIL.js";import"./send-nq3aR65q.js";import"./share-2-BMarUb6G.js";import"./zap-BagaW96t.js";import"./book-open-DHA14jdk.js";import"./globe-cWRIpuWi.js";import"./trash-2-Bxek5XZ9.js";import"./calendar-DS_Dw1pU.js";import"./file-text-CNhd5y-T.js";import"./lightbulb-DY_5Q5ej.js";import"./circle-question-mark-BPZlRLnJ.js";import"./megaphone-DPTNqOeO.js";const A={class:"grid gap-4 sm:grid-cols-2"},N=["src","alt"],S={class:"flex items-center gap-3 p-4"},j={key:0,class:"flex h-10 w-10 shrink-0 items-center justify-center rounded-xl bg-[var(--ma-primary)]/15"},z={key:1,class:"flex h-10 w-10 shrink-0 items-center justify-center rounded-xl bg-[var(--ma-primary)]/15 text-xl"},M=["src","alt"],B={key:2,class:"flex h-10 w-10 shrink-0 items-center justify-center rounded-xl bg-[var(--ma-primary)]/15"},E={class:"font-semibold text-zinc-200 transition group-hover:text-white"},fe=Object.assign({layout:_},{__name:"Comunidade",props:{product:{type:Object,required:!0},config:{type:Object,default:()=>({})},pages:{type:Array,default:()=>[]},featured_posts:{type:Array,default:()=>[]},featured_pages:{type:Array,default:()=>[]},cross_page_posts:{type:Array,default:()=>[]},active_members:{type:Array,default:()=>[]},slug:{type:String,required:!0}},setup(r){const o=`/m/${r.slug}/comunidade`;return(O,c)=>(t(),n(y,{pages:r.pages,"base-path":o},{right:m(()=>[g(h,{pages:r.pages,"base-path":o,"featured-posts":r.featured_posts,"featured-pages":r.featured_pages,"cross-page-posts":r.cross_page_posts,"active-members":r.active_members},null,8,["pages","featured-posts","featured-pages","cross-page-posts","active-members"])]),default:m(()=>[c[0]||(c[0]=a("div",null,[a("h1",{class:"text-2xl font-bold tracking-tight text-white"},"Comunidade"),a("p",{class:"mt-1.5 text-sm text-zinc-400"},"Escolha uma página ao lado ou acesse diretamente:")],-1)),a("div",A,[(t(!0),s(p,null,k(r.pages,e=>(t(),n(i(f),{key:e.id,href:`${o}/${e.slug}`,class:"group overflow-hidden rounded-2xl bg-zinc-950/60 ring-1 ring-zinc-800/60 transition hover:ring-[var(--ma-primary)]/30"},{default:m(()=>[e.banner_url?(t(),s("div",{key:0,class:d([i(v),"relative w-full overflow-hidden bg-zinc-900/80"])},[a("img",{src:e.banner_url,alt:e.title,class:d([i(x),"transition duration-300 group-hover:scale-[1.02]"])},null,10,N)],2)):C("",!0),a("div",S,[e.icon?(t(),s(p,{key:0},[i(l)(e.icon)?(t(),s("span",j,[(t(),n(w(i(l)(e.icon)),{class:"h-5 w-5 text-[var(--ma-primary)]"}))])):(t(),s("span",z,u(e.icon),1))],64)):e.banner_url?(t(),s("img",{key:1,src:e.banner_url,alt:e.title,class:"h-10 w-10 shrink-0 rounded-xl object-cover"},null,8,M)):(t(),s("div",B,[g(i(b),{class:"h-5 w-5 text-[var(--ma-primary)]"})])),a("span",E,u(e.title),1)])]),_:2},1032,["href"]))),128))])]),_:1},8,["pages"]))}});export{fe as default}; diff --git a/public/build/assets/ComunidadePage-BS7xDDn1.js b/public/build/assets/ComunidadePage-DhFS0Mzj.js similarity index 98% rename from public/build/assets/ComunidadePage-BS7xDDn1.js rename to public/build/assets/ComunidadePage-DhFS0Mzj.js index ef469e26..e48d862c 100644 --- a/public/build/assets/ComunidadePage-BS7xDDn1.js +++ b/public/build/assets/ComunidadePage-DhFS0Mzj.js @@ -1 +1 @@ -import{X as Q,_ as R,d as J,u as Z,b as N,r as ee}from"./Toggle-BD3dflqy.js";import{_ as te}from"./MemberAreaAppLayout-2Kf_Hl8a.js";import{g as L,s as ne,_ as se,a as ae}from"./MemberCommunityRightRail-CR1sfr8K.js";import{g as P}from"./communityPageIcons-BeAPBliZ.js";import{a as ie,C as oe,M as re}from"./communityBanner-DDtEvAY_.js";import{o as t,c as n,a as s,s as A,u as r,F as I,f as $,z as D,t as c,d as g,n as z,y as T,i as U,g as b,h as E,w as q,r as w,A as V,bN as le,k as ce}from"./runtime-dom.esm-bundler-OrSu0e66.js";import{I as de}from"./image-plus-gfW5Gl1m.js";import{T as ue}from"./trash-2-Bxek5XZ9.js";import{H as me}from"./heart-Bg_TTudX.js";import{M as pe}from"./message-circle-ovGBKj3h.js";import"./PwaInstallPrompt-Bx_29grZ.js";import"./app-CKysWbKx.js";import"./menu-DBS2lHgI.js";import"./trophy-Cc2RPtC5.js";import"./circle-check-big-C5hhRDlp.js";import"./chevron-down-Cr9wcM6o.js";import"./user-BffYsEsr.js";import"./camera-WyeImfIU.js";import"./circle-alert-B_GEMyiN.js";import"./lock-W0G6cbcG.js";import"./star-C9RUxtqu.js";import"./info-wvqULVyO.js";import"./video-BKkbUnD_.js";import"./image-Aikc9zug.js";import"./search-5WwcWNIL.js";import"./send-nq3aR65q.js";import"./share-2-BMarUb6G.js";import"./zap-BagaW96t.js";import"./book-open-DHA14jdk.js";import"./globe-cWRIpuWi.js";import"./calendar-DS_Dw1pU.js";import"./file-text-CNhd5y-T.js";import"./lightbulb-DY_5Q5ej.js";import"./circle-question-mark-BPZlRLnJ.js";import"./megaphone-DPTNqOeO.js";const ge=["src","alt"],fe={class:"absolute bottom-3 left-4 z-10 flex items-center gap-3 sm:bottom-4"},ve={key:0,class:"flex h-10 w-10 items-center justify-center rounded-xl bg-black/30 backdrop-blur-sm"},xe={key:1,class:"text-3xl drop-shadow"},ye={class:"text-xl font-bold tracking-tight text-white drop-shadow-sm sm:text-2xl"},he={key:1,class:"flex items-center gap-3"},be={key:0,class:"flex h-12 w-12 items-center justify-center rounded-xl bg-[var(--ma-primary)]/15"},ke={key:1,class:"flex h-12 w-12 items-center justify-center rounded-xl bg-[var(--ma-primary)]/15 text-2xl"},_e={class:"text-2xl font-bold tracking-tight text-white"},we={__name:"MemberCommunityBanner",props:{page:{type:Object,required:!0}},setup(e){return(d,i)=>e.page.banner_url?(t(),n("div",{key:0,class:A(r(oe))},[s("img",{src:e.page.banner_url,alt:e.page.title,class:A(r(ie))},null,10,ge),i[0]||(i[0]=s("div",{class:"pointer-events-none absolute inset-0 bg-gradient-to-t from-zinc-950/70 via-transparent to-transparent"},null,-1)),s("div",fe,[e.page.icon?(t(),n(I,{key:0},[r(P)(e.page.icon)?(t(),n("span",ve,[(t(),$(D(r(P)(e.page.icon)),{class:"h-6 w-6 text-white"}))])):(t(),n("span",xe,c(e.page.icon),1))],64)):g("",!0),s("h1",ye,c(e.page.title),1)])],2)):(t(),n("div",he,[e.page.icon?(t(),n(I,{key:0},[r(P)(e.page.icon)?(t(),n("span",be,[(t(),$(D(r(P)(e.page.icon)),{class:"h-6 w-6 text-[var(--ma-primary)]"}))])):(t(),n("span",ke,c(e.page.icon),1))],64)):g("",!0),s("h1",_e,c(e.page.title),1)]))}},M={"1:1":{label:"1:1",description:"Quadrado",class:"aspect-square"},"4:5":{label:"4:5",description:"Retrato",class:"aspect-[4/5]"},"9:16":{label:"9:16",description:"Vídeo vertical",class:"aspect-[9/16]"}},Ce=["1:1","4:5"],O="9:16",$e="1080×1920 px (9:16)";function ze(e){return M[e]?.class??M["4:5"].class}function Me(e,d=!1){return d?O:e&&M[e]?e:"4:5"}const Ae=["src"],Se=["src"],F={__name:"MemberCommunityPostMedia",props:{imageUrl:{type:String,default:null},videoUrl:{type:String,default:null},mediaAspect:{type:String,default:null},compact:{type:Boolean,default:!1}},setup(e){const d=e,i=z(()=>ze(Me(d.mediaAspect,!!d.videoUrl))),a=z(()=>!!(d.imageUrl||d.videoUrl));return(v,k)=>a.value?(t(),n("div",{key:0,class:A(["overflow-hidden rounded-xl bg-zinc-900/80 ring-1 ring-zinc-800/60",i.value,e.compact?"max-w-[120px]":"w-full"])},[e.imageUrl?(t(),n("img",{key:0,src:e.imageUrl,alt:"",class:"h-full w-full object-contain object-center"},null,8,Ae)):e.videoUrl?(t(),n("video",{key:1,src:e.videoUrl,controls:"",playsinline:"",preload:"metadata",class:"h-full w-full object-contain object-center"},null,8,Se)):g("",!0)],2)):g("",!0)}},je={class:"flex gap-3"},Ie={class:"flex h-10 w-10 shrink-0 items-center justify-center overflow-hidden rounded-full bg-[var(--ma-primary)]/15 text-sm font-semibold text-[var(--ma-primary)]"},Pe=["src","alt"],Ue={key:1},Ee={class:"min-w-0 flex-1 space-y-3"},Ne=["value"],Oe={class:"flex flex-wrap gap-2"},Te=["disabled","onClick"],Be={class:"ml-1 hidden sm:inline"},Ke={key:0,class:"inline-flex items-center rounded-lg bg-[var(--ma-primary)]/15 px-3 py-1.5 text-xs font-medium text-[var(--ma-primary)] ring-1 ring-[var(--ma-primary)]/40"},Le={class:"text-[11px] leading-relaxed text-zinc-600"},De={class:"flex flex-wrap items-end gap-3"},Re={key:0,class:"relative max-w-[220px] flex-1"},qe={key:0,class:"text-sm text-red-400"},Ve={key:1,class:"text-sm text-red-400"},Fe={key:2,class:"text-sm text-red-400"},Ye={key:3,class:"text-sm text-red-400"},Xe={__name:"MemberCommunityComposer",props:{content:{type:String,default:""},processing:{type:Boolean,default:!1},mediaAspect:{type:String,default:"4:5"},mediaPreviewUrl:{type:String,default:""},mediaKind:{type:String,default:null},errors:{type:Object,default:()=>({})}},emits:["update:content","update:media-aspect","submit","media-change","clear-media"],setup(e,{emit:d}){const i=e,a=d,v=w(null),k=J(),_=z(()=>k.props.auth?.user??k.props.user??null),y=z(()=>i.mediaKind==="video"?O:i.mediaAspect),u=z(()=>i.mediaKind==="video"?`Vídeo vertical recomendado: ${$e}`:"Imagens em 1:1 (quadrado) ou 4:5 (retrato), estilo Instagram.");function m(C){return C&&C.split(/\s+/).map(x=>x[0]).slice(0,2).join("").toUpperCase()||"A"}function S(C){i.mediaKind!=="video"&&a("update:media-aspect",C)}function j(){v.value?.click()}return(C,x)=>(t(),n("form",{class:"rounded-2xl bg-zinc-950/60 p-5 shadow-xl shadow-black/20 ring-1 ring-zinc-800/80",onSubmit:x[3]||(x[3]=q(f=>a("submit"),["prevent"]))},[s("div",je,[s("div",Ie,[_.value?.avatar_url?(t(),n("img",{key:0,src:_.value.avatar_url,alt:_.value.name,class:"h-full w-full object-cover"},null,8,Pe)):(t(),n("span",Ue,c(m(_.value?.name)),1))]),s("div",Ee,[s("textarea",{value:e.content,rows:"3",class:"w-full resize-none rounded-xl border-0 bg-zinc-800/80 px-4 py-3 text-sm text-white placeholder-zinc-500 ring-1 ring-zinc-700/60 transition focus:outline-none focus:ring-[var(--ma-primary)]",placeholder:"Escreva um post...",required:"",onInput:x[0]||(x[0]=f=>a("update:content",f.target.value))},null,40,Ne),s("div",Oe,[(t(!0),n(I,null,T(r(Ce),f=>(t(),n("button",{key:f,type:"button",disabled:e.mediaKind==="video",class:A(["rounded-lg px-3 py-1.5 text-xs font-medium transition ring-1",e.mediaAspect===f&&e.mediaKind!=="video"?"bg-[var(--ma-primary)]/15 text-[var(--ma-primary)] ring-[var(--ma-primary)]/40":"bg-zinc-800/60 text-zinc-400 ring-zinc-700/60 hover:text-zinc-200 disabled:opacity-40"]),onClick:B=>S(f)},[U(c(r(M)[f].label)+" ",1),s("span",Be,c(r(M)[f].description),1)],10,Te))),128)),e.mediaKind==="video"?(t(),n("span",Ke,c(r(M)[r(O)].label)+" · Vídeo ",1)):g("",!0)]),s("p",Le,c(u.value),1),s("div",De,[s("input",{ref_key:"mediaInputRef",ref:v,type:"file",accept:"image/*,video/mp4,video/webm,video/quicktime",class:"hidden",onChange:x[1]||(x[1]=f=>a("media-change",f))},null,544),s("button",{type:"button",class:"flex h-9 w-9 shrink-0 items-center justify-center rounded-lg bg-zinc-800/60 text-zinc-300 transition hover:bg-zinc-800 hover:text-white",title:"Anexar imagem ou vídeo","aria-label":"Anexar imagem ou vídeo",onClick:j},[b(r(de),{class:"h-5 w-5"})]),e.mediaPreviewUrl?(t(),n("div",Re,[b(F,{"image-url":e.mediaKind==="image"?e.mediaPreviewUrl:null,"video-url":e.mediaKind==="video"?e.mediaPreviewUrl:null,"media-aspect":y.value},null,8,["image-url","video-url","media-aspect"]),s("button",{type:"button",class:"absolute -right-1 -top-1 rounded-full bg-zinc-800 p-1 text-zinc-200 ring-1 ring-zinc-700 hover:bg-zinc-700","aria-label":"Remover mídia",onClick:x[2]||(x[2]=f=>a("clear-media"))},[b(r(Q),{class:"h-3.5 w-3.5"})])])):g("",!0),b(R,{type:"submit",class:"ml-auto",disabled:e.processing},{default:E(()=>[U(c(e.processing?"Publicando…":"Publicar"),1)]),_:1},8,["disabled"])]),e.errors.content?(t(),n("p",qe,c(e.errors.content),1)):g("",!0),e.errors.image?(t(),n("p",Ve,c(e.errors.image),1)):g("",!0),e.errors.video?(t(),n("p",Fe,c(e.errors.video),1)):g("",!0),e.errors.media_aspect?(t(),n("p",Ye,c(e.errors.media_aspect),1)):g("",!0)])])],32))}},He=["id"],Ge={class:"flex items-start justify-between gap-3"},We={class:"flex min-w-0 flex-1 items-center gap-3"},Qe={class:"flex h-10 w-10 shrink-0 items-center justify-center overflow-hidden rounded-full bg-[var(--ma-primary)]/15 text-sm font-semibold text-[var(--ma-primary)]"},Je=["src","alt"],Ze={key:1},et={class:"min-w-0"},tt={class:"font-semibold text-zinc-100"},nt={class:"text-xs text-zinc-500"},st={class:"mt-3 whitespace-pre-wrap text-sm leading-relaxed text-zinc-200"},at={class:"mt-4 flex items-center gap-2 border-t border-zinc-800/80 pt-3"},it=["disabled"],ot={key:1,class:"mt-3 space-y-2 border-t border-zinc-800/80 pt-3"},rt={class:"flex h-7 w-7 shrink-0 items-center justify-center overflow-hidden rounded-full bg-zinc-800 text-xs font-medium text-zinc-300"},lt=["src","alt"],ct={key:1},dt={class:"min-w-0 flex-1"},ut={class:"text-xs font-medium text-zinc-500"},mt={class:"text-sm text-zinc-300"},pt={class:"flex gap-2 pt-1"},gt=["value"],ft={__name:"MemberCommunityPost",props:{post:{type:Object,required:!0},canDelete:{type:Boolean,default:!1},likeLoading:{type:Boolean,default:!1},commentLoading:{type:Boolean,default:!1},commentContent:{type:String,default:""}},emits:["delete","toggle-like","update:comment-content","submit-comment"],setup(e,{emit:d}){const i=e,a=d,v=w((i.post.comments??[]).length>0);V(()=>(i.post.comments??[]).length,y=>{y>0&&(v.value=!0)});const k=z(()=>(i.post.comments??[]).length);function _(y){return y?new Date(y).toLocaleString("pt-BR",{day:"2-digit",month:"2-digit",year:"numeric",hour:"2-digit",minute:"2-digit"}):""}return(y,u)=>(t(),n("article",{id:`post-${e.post.id}`,class:"scroll-mt-4 rounded-2xl bg-zinc-950/60 p-5 ring-1 ring-zinc-800/60"},[s("div",Ge,[s("div",We,[s("div",Qe,[e.post.user?.avatar_url?(t(),n("img",{key:0,src:e.post.user.avatar_url,alt:e.post.user.name,class:"h-full w-full object-cover"},null,8,Je)):(t(),n("span",Ze,c(r(L)(e.post.user?.name)),1))]),s("div",et,[s("p",tt,c(e.post.user?.name),1),s("p",nt,c(_(e.post.created_at)),1)])]),e.canDelete?(t(),n("button",{key:0,type:"button",class:"shrink-0 rounded-lg p-1.5 text-zinc-500 transition hover:bg-zinc-800/60 hover:text-red-400",title:"Excluir postagem","aria-label":"Excluir postagem",onClick:u[0]||(u[0]=m=>a("delete",e.post))},[b(r(ue),{class:"h-4 w-4"})])):g("",!0)]),s("p",st,c(e.post.content),1),e.post.image_url||e.post.video_url?(t(),$(F,{key:0,class:"mt-3","image-url":e.post.image_url,"video-url":e.post.video_url,"media-aspect":e.post.media_aspect},null,8,["image-url","video-url","media-aspect"])):g("",!0),s("div",at,[s("button",{type:"button",class:A(["inline-flex items-center gap-1.5 rounded-lg px-3 py-1.5 text-sm font-medium transition",e.post.user_has_liked?"bg-red-500/10 text-red-400":"text-zinc-400 hover:bg-zinc-800/60 hover:text-zinc-200"]),disabled:e.likeLoading,onClick:u[1]||(u[1]=m=>a("toggle-like",e.post))},[b(r(me),{class:A(["h-4 w-4",e.post.user_has_liked?"fill-current":""])},null,8,["class"]),s("span",null,c(e.post.likes_count??0),1)],10,it),s("button",{type:"button",class:"inline-flex items-center gap-1.5 rounded-lg px-3 py-1.5 text-sm font-medium text-zinc-400 transition hover:bg-zinc-800/60 hover:text-zinc-200",onClick:u[2]||(u[2]=m=>v.value=!v.value)},[b(r(pe),{class:"h-4 w-4"}),U(" Comentários ("+c(k.value)+") ",1)])]),v.value?(t(),n("div",ot,[(t(!0),n(I,null,T(e.post.comments??[],m=>(t(),n("div",{key:m.id,class:"flex gap-2"},[s("div",rt,[m.user?.avatar_url?(t(),n("img",{key:0,src:m.user.avatar_url,alt:m.user.name,class:"h-full w-full object-cover"},null,8,lt)):(t(),n("span",ct,c(r(L)(m.user?.name)),1))]),s("div",dt,[s("p",ut,c(m.user?.name)+" · "+c(m.created_at),1),s("p",mt,c(m.content),1)])]))),128)),s("div",pt,[s("input",{value:e.commentContent,type:"text",class:"min-w-0 flex-1 rounded-xl border-0 bg-zinc-800/80 px-3 py-2 text-sm text-white placeholder-zinc-500 ring-1 ring-zinc-700/60 focus:outline-none focus:ring-[var(--ma-primary)]",placeholder:"Escreva um comentário...",onInput:u[3]||(u[3]=m=>a("update:comment-content",m.target.value)),onKeydown:u[4]||(u[4]=le(q(m=>a("submit-comment",e.post),["prevent"]),["enter"]))},null,40,gt),b(R,{size:"sm",disabled:e.commentLoading||!e.commentContent?.trim(),onClick:u[5]||(u[5]=m=>a("submit-comment",e.post))},{default:E(()=>[...u[6]||(u[6]=[U(" Comentar ",-1)])]),_:1},8,["disabled"])])])):g("",!0)],8,He))}},vt={class:"rounded-2xl bg-zinc-900/50 px-6 py-12 text-center"},xt={class:"mx-auto mb-3 flex h-12 w-12 items-center justify-center rounded-xl bg-[var(--ma-primary)]/15"},yt={__name:"MemberCommunityEmpty",setup(e){return(d,i)=>(t(),n("div",vt,[s("span",xt,[b(r(re),{class:"h-6 w-6 text-[var(--ma-primary)]"})]),i[0]||(i[0]=s("p",{class:"text-sm font-medium text-zinc-300"},"Nenhuma publicação ainda",-1)),i[1]||(i[1]=s("p",{class:"mt-1 text-xs text-zinc-500"},"Seja o primeiro a compartilhar algo nesta página.",-1))]))}},ht={key:1,class:"rounded-2xl bg-zinc-950/60 px-4 py-3 text-sm text-zinc-500 ring-1 ring-zinc-800/60"},bt={key:2,class:"space-y-4"},kt={key:4,class:"flex gap-2"},_t=["href"],wt=["href"],on=Object.assign({layout:te},{__name:"ComunidadePage",props:{product:{type:Object,required:!0},config:{type:Object,default:()=>({})},auth_user_id:{type:Number,default:null},can_delete_any_post:{type:Boolean,default:!1},community_users_can_delete_own_posts:{type:Boolean,default:!0},pages:{type:Array,default:()=>[]},page:{type:Object,required:!0},posts:{type:Object,required:!0},featured_posts:{type:Array,default:()=>[]},featured_pages:{type:Array,default:()=>[]},cross_page_posts:{type:Array,default:()=>[]},active_members:{type:Array,default:()=>[]},slug:{type:String,required:!0}},setup(e){const d=e,i=w(d.posts?.data?[...d.posts.data]:[]);V(()=>d.posts?.data,o=>{i.value=o?[...o]:[]},{immediate:!0});const a=Z({content:"",image:null,video:null,media_aspect:"4:5"}),v=w(""),k=w(null),_=w(null),y=w(null),u=w({}),m=`/m/${d.slug}/comunidade`,S=()=>`${m}/${d.page.slug}/posts`,j=()=>document.querySelector('meta[name="csrf-token"]')?.content??"";ce(()=>{const o=window.location.hash;if(o.startsWith("#post-")){const l=o.replace("#post-","");l&&setTimeout(()=>ne(l),300)}});function C(o){return!!(d.can_delete_any_post||o.user_id===d.auth_user_id&&d.community_users_can_delete_own_posts)}function x(o){const l=o.target?.files?.[0];l&&(l.type.startsWith("video/")?(a.video=l,a.image=null,a.media_aspect="9:16",k.value="video"):(a.image=l,a.video=null,k.value="image",a.media_aspect==="9:16"&&(a.media_aspect="4:5")),v.value=URL.createObjectURL(l),o.target.value="")}function f(){a.image=null,a.video=null,v.value="",k.value=null}function B(){a.post(`/m/${d.slug}/comunidade/${d.page.slug}/posts`,{preserveScroll:!0,forceFormData:!0,onSuccess:()=>{a.reset("content","image","video"),a.media_aspect="4:5",f()}})}function Y(o){confirm("Excluir esta postagem?")&&ee.delete(`${S()}/${o.id}`,{preserveScroll:!0})}async function X(o){const l=i.value.findIndex(p=>p.id===o.id);if(!(l<0)){_.value=o.id;try{const p=`${S()}/${o.id}/like`;if(o.user_has_liked){const{data:h}=await N.delete(p,{headers:{"X-CSRF-TOKEN":j(),Accept:"application/json"}});i.value[l]={...i.value[l],likes_count:h.likes_count,user_has_liked:h.user_has_liked}}else{const{data:h}=await N.post(p,{},{headers:{"X-CSRF-TOKEN":j(),Accept:"application/json"}});i.value[l]={...i.value[l],likes_count:h.likes_count,user_has_liked:h.user_has_liked}}}finally{_.value=null}}}function H(o){return u.value[o]??""}function K(o,l){u.value[o]=l}async function G(o){const l=(u.value[o.id]??"").trim();if(!l)return;const p=i.value.findIndex(h=>h.id===o.id);if(!(p<0)){y.value=o.id;try{const{data:h}=await N.post(`${S()}/${o.id}/comments`,{content:l},{headers:{"X-CSRF-TOKEN":j(),Accept:"application/json"}}),W=[...i.value[p].comments??[],h.comment];i.value[p]={...i.value[p],comments:W},K(o.id,"")}finally{y.value=null}}}return(o,l)=>(t(),$(ae,{pages:e.pages,"base-path":m,"active-slug":e.page.slug},{right:E(()=>[b(se,{pages:e.pages,"base-path":m,"active-slug":e.page.slug,"featured-posts":e.featured_posts,"featured-pages":e.featured_pages,"cross-page-posts":e.cross_page_posts,"active-members":e.active_members},null,8,["pages","active-slug","featured-posts","featured-pages","cross-page-posts","active-members"])]),default:E(()=>[b(we,{page:e.page},null,8,["page"]),e.page.is_public_posting?(t(),$(Xe,{key:0,content:r(a).content,processing:r(a).processing,"media-aspect":r(a).media_aspect,"media-preview-url":v.value,"media-kind":k.value,errors:r(a).errors,"onUpdate:content":l[0]||(l[0]=p=>r(a).content=p),"onUpdate:mediaAspect":l[1]||(l[1]=p=>r(a).media_aspect=p),onSubmit:B,onMediaChange:x,onClearMedia:f},null,8,["content","processing","media-aspect","media-preview-url","media-kind","errors"])):(t(),n("p",ht," Apenas o instrutor pode publicar nesta página. ")),i.value.length?(t(),n("div",bt,[(t(!0),n(I,null,T(i.value,p=>(t(),$(ft,{key:p.id,post:p,"can-delete":C(p),"like-loading":_.value===p.id,"comment-loading":y.value===p.id,"comment-content":H(p.id),onDelete:Y,onToggleLike:X,"onUpdate:commentContent":h=>K(p.id,h),onSubmitComment:G},null,8,["post","can-delete","like-loading","comment-loading","comment-content","onUpdate:commentContent"]))),128))])):(t(),$(yt,{key:3})),e.posts.prev_page_url||e.posts.next_page_url?(t(),n("div",kt,[e.posts.prev_page_url?(t(),n("a",{key:0,href:e.posts.prev_page_url,class:"rounded-xl bg-zinc-800/60 px-4 py-2 text-sm text-zinc-300 transition hover:bg-zinc-800"}," Anterior ",8,_t)):g("",!0),e.posts.next_page_url?(t(),n("a",{key:1,href:e.posts.next_page_url,class:"rounded-xl bg-zinc-800/60 px-4 py-2 text-sm text-zinc-300 transition hover:bg-zinc-800"}," Próxima ",8,wt)):g("",!0)])):g("",!0)]),_:1},8,["pages","active-slug"]))}});export{on as default}; +import{X as Q,_ as R,d as J,u as Z,b as N,r as ee}from"./Toggle-BD3dflqy.js";import{_ as te}from"./MemberAreaAppLayout-Bhr9jm99.js";import{g as L,s as ne,_ as se,a as ae}from"./MemberCommunityRightRail-CR1sfr8K.js";import{g as P}from"./communityPageIcons-BeAPBliZ.js";import{a as ie,C as oe,M as re}from"./communityBanner-DDtEvAY_.js";import{o as t,c as n,a as s,s as A,u as r,F as I,f as $,z as D,t as c,d as g,n as z,y as T,i as U,g as b,h as E,w as q,r as w,A as V,bN as le,k as ce}from"./runtime-dom.esm-bundler-OrSu0e66.js";import{I as de}from"./image-plus-gfW5Gl1m.js";import{T as ue}from"./trash-2-Bxek5XZ9.js";import{H as me}from"./heart-Bg_TTudX.js";import{M as pe}from"./message-circle-ovGBKj3h.js";import"./PwaInstallPrompt-RkwxpbLw.js";import"./app-CT8pqccC.js";import"./menu-DBS2lHgI.js";import"./trophy-Cc2RPtC5.js";import"./circle-check-big-C5hhRDlp.js";import"./chevron-down-Cr9wcM6o.js";import"./user-BffYsEsr.js";import"./camera-WyeImfIU.js";import"./circle-alert-B_GEMyiN.js";import"./lock-W0G6cbcG.js";import"./star-C9RUxtqu.js";import"./info-wvqULVyO.js";import"./video-BKkbUnD_.js";import"./image-Aikc9zug.js";import"./search-5WwcWNIL.js";import"./send-nq3aR65q.js";import"./share-2-BMarUb6G.js";import"./zap-BagaW96t.js";import"./book-open-DHA14jdk.js";import"./globe-cWRIpuWi.js";import"./calendar-DS_Dw1pU.js";import"./file-text-CNhd5y-T.js";import"./lightbulb-DY_5Q5ej.js";import"./circle-question-mark-BPZlRLnJ.js";import"./megaphone-DPTNqOeO.js";const ge=["src","alt"],fe={class:"absolute bottom-3 left-4 z-10 flex items-center gap-3 sm:bottom-4"},ve={key:0,class:"flex h-10 w-10 items-center justify-center rounded-xl bg-black/30 backdrop-blur-sm"},xe={key:1,class:"text-3xl drop-shadow"},ye={class:"text-xl font-bold tracking-tight text-white drop-shadow-sm sm:text-2xl"},he={key:1,class:"flex items-center gap-3"},be={key:0,class:"flex h-12 w-12 items-center justify-center rounded-xl bg-[var(--ma-primary)]/15"},ke={key:1,class:"flex h-12 w-12 items-center justify-center rounded-xl bg-[var(--ma-primary)]/15 text-2xl"},_e={class:"text-2xl font-bold tracking-tight text-white"},we={__name:"MemberCommunityBanner",props:{page:{type:Object,required:!0}},setup(e){return(d,i)=>e.page.banner_url?(t(),n("div",{key:0,class:A(r(oe))},[s("img",{src:e.page.banner_url,alt:e.page.title,class:A(r(ie))},null,10,ge),i[0]||(i[0]=s("div",{class:"pointer-events-none absolute inset-0 bg-gradient-to-t from-zinc-950/70 via-transparent to-transparent"},null,-1)),s("div",fe,[e.page.icon?(t(),n(I,{key:0},[r(P)(e.page.icon)?(t(),n("span",ve,[(t(),$(D(r(P)(e.page.icon)),{class:"h-6 w-6 text-white"}))])):(t(),n("span",xe,c(e.page.icon),1))],64)):g("",!0),s("h1",ye,c(e.page.title),1)])],2)):(t(),n("div",he,[e.page.icon?(t(),n(I,{key:0},[r(P)(e.page.icon)?(t(),n("span",be,[(t(),$(D(r(P)(e.page.icon)),{class:"h-6 w-6 text-[var(--ma-primary)]"}))])):(t(),n("span",ke,c(e.page.icon),1))],64)):g("",!0),s("h1",_e,c(e.page.title),1)]))}},M={"1:1":{label:"1:1",description:"Quadrado",class:"aspect-square"},"4:5":{label:"4:5",description:"Retrato",class:"aspect-[4/5]"},"9:16":{label:"9:16",description:"Vídeo vertical",class:"aspect-[9/16]"}},Ce=["1:1","4:5"],O="9:16",$e="1080×1920 px (9:16)";function ze(e){return M[e]?.class??M["4:5"].class}function Me(e,d=!1){return d?O:e&&M[e]?e:"4:5"}const Ae=["src"],Se=["src"],F={__name:"MemberCommunityPostMedia",props:{imageUrl:{type:String,default:null},videoUrl:{type:String,default:null},mediaAspect:{type:String,default:null},compact:{type:Boolean,default:!1}},setup(e){const d=e,i=z(()=>ze(Me(d.mediaAspect,!!d.videoUrl))),a=z(()=>!!(d.imageUrl||d.videoUrl));return(v,k)=>a.value?(t(),n("div",{key:0,class:A(["overflow-hidden rounded-xl bg-zinc-900/80 ring-1 ring-zinc-800/60",i.value,e.compact?"max-w-[120px]":"w-full"])},[e.imageUrl?(t(),n("img",{key:0,src:e.imageUrl,alt:"",class:"h-full w-full object-contain object-center"},null,8,Ae)):e.videoUrl?(t(),n("video",{key:1,src:e.videoUrl,controls:"",playsinline:"",preload:"metadata",class:"h-full w-full object-contain object-center"},null,8,Se)):g("",!0)],2)):g("",!0)}},je={class:"flex gap-3"},Ie={class:"flex h-10 w-10 shrink-0 items-center justify-center overflow-hidden rounded-full bg-[var(--ma-primary)]/15 text-sm font-semibold text-[var(--ma-primary)]"},Pe=["src","alt"],Ue={key:1},Ee={class:"min-w-0 flex-1 space-y-3"},Ne=["value"],Oe={class:"flex flex-wrap gap-2"},Te=["disabled","onClick"],Be={class:"ml-1 hidden sm:inline"},Ke={key:0,class:"inline-flex items-center rounded-lg bg-[var(--ma-primary)]/15 px-3 py-1.5 text-xs font-medium text-[var(--ma-primary)] ring-1 ring-[var(--ma-primary)]/40"},Le={class:"text-[11px] leading-relaxed text-zinc-600"},De={class:"flex flex-wrap items-end gap-3"},Re={key:0,class:"relative max-w-[220px] flex-1"},qe={key:0,class:"text-sm text-red-400"},Ve={key:1,class:"text-sm text-red-400"},Fe={key:2,class:"text-sm text-red-400"},Ye={key:3,class:"text-sm text-red-400"},Xe={__name:"MemberCommunityComposer",props:{content:{type:String,default:""},processing:{type:Boolean,default:!1},mediaAspect:{type:String,default:"4:5"},mediaPreviewUrl:{type:String,default:""},mediaKind:{type:String,default:null},errors:{type:Object,default:()=>({})}},emits:["update:content","update:media-aspect","submit","media-change","clear-media"],setup(e,{emit:d}){const i=e,a=d,v=w(null),k=J(),_=z(()=>k.props.auth?.user??k.props.user??null),y=z(()=>i.mediaKind==="video"?O:i.mediaAspect),u=z(()=>i.mediaKind==="video"?`Vídeo vertical recomendado: ${$e}`:"Imagens em 1:1 (quadrado) ou 4:5 (retrato), estilo Instagram.");function m(C){return C&&C.split(/\s+/).map(x=>x[0]).slice(0,2).join("").toUpperCase()||"A"}function S(C){i.mediaKind!=="video"&&a("update:media-aspect",C)}function j(){v.value?.click()}return(C,x)=>(t(),n("form",{class:"rounded-2xl bg-zinc-950/60 p-5 shadow-xl shadow-black/20 ring-1 ring-zinc-800/80",onSubmit:x[3]||(x[3]=q(f=>a("submit"),["prevent"]))},[s("div",je,[s("div",Ie,[_.value?.avatar_url?(t(),n("img",{key:0,src:_.value.avatar_url,alt:_.value.name,class:"h-full w-full object-cover"},null,8,Pe)):(t(),n("span",Ue,c(m(_.value?.name)),1))]),s("div",Ee,[s("textarea",{value:e.content,rows:"3",class:"w-full resize-none rounded-xl border-0 bg-zinc-800/80 px-4 py-3 text-sm text-white placeholder-zinc-500 ring-1 ring-zinc-700/60 transition focus:outline-none focus:ring-[var(--ma-primary)]",placeholder:"Escreva um post...",required:"",onInput:x[0]||(x[0]=f=>a("update:content",f.target.value))},null,40,Ne),s("div",Oe,[(t(!0),n(I,null,T(r(Ce),f=>(t(),n("button",{key:f,type:"button",disabled:e.mediaKind==="video",class:A(["rounded-lg px-3 py-1.5 text-xs font-medium transition ring-1",e.mediaAspect===f&&e.mediaKind!=="video"?"bg-[var(--ma-primary)]/15 text-[var(--ma-primary)] ring-[var(--ma-primary)]/40":"bg-zinc-800/60 text-zinc-400 ring-zinc-700/60 hover:text-zinc-200 disabled:opacity-40"]),onClick:B=>S(f)},[U(c(r(M)[f].label)+" ",1),s("span",Be,c(r(M)[f].description),1)],10,Te))),128)),e.mediaKind==="video"?(t(),n("span",Ke,c(r(M)[r(O)].label)+" · Vídeo ",1)):g("",!0)]),s("p",Le,c(u.value),1),s("div",De,[s("input",{ref_key:"mediaInputRef",ref:v,type:"file",accept:"image/*,video/mp4,video/webm,video/quicktime",class:"hidden",onChange:x[1]||(x[1]=f=>a("media-change",f))},null,544),s("button",{type:"button",class:"flex h-9 w-9 shrink-0 items-center justify-center rounded-lg bg-zinc-800/60 text-zinc-300 transition hover:bg-zinc-800 hover:text-white",title:"Anexar imagem ou vídeo","aria-label":"Anexar imagem ou vídeo",onClick:j},[b(r(de),{class:"h-5 w-5"})]),e.mediaPreviewUrl?(t(),n("div",Re,[b(F,{"image-url":e.mediaKind==="image"?e.mediaPreviewUrl:null,"video-url":e.mediaKind==="video"?e.mediaPreviewUrl:null,"media-aspect":y.value},null,8,["image-url","video-url","media-aspect"]),s("button",{type:"button",class:"absolute -right-1 -top-1 rounded-full bg-zinc-800 p-1 text-zinc-200 ring-1 ring-zinc-700 hover:bg-zinc-700","aria-label":"Remover mídia",onClick:x[2]||(x[2]=f=>a("clear-media"))},[b(r(Q),{class:"h-3.5 w-3.5"})])])):g("",!0),b(R,{type:"submit",class:"ml-auto",disabled:e.processing},{default:E(()=>[U(c(e.processing?"Publicando…":"Publicar"),1)]),_:1},8,["disabled"])]),e.errors.content?(t(),n("p",qe,c(e.errors.content),1)):g("",!0),e.errors.image?(t(),n("p",Ve,c(e.errors.image),1)):g("",!0),e.errors.video?(t(),n("p",Fe,c(e.errors.video),1)):g("",!0),e.errors.media_aspect?(t(),n("p",Ye,c(e.errors.media_aspect),1)):g("",!0)])])],32))}},He=["id"],Ge={class:"flex items-start justify-between gap-3"},We={class:"flex min-w-0 flex-1 items-center gap-3"},Qe={class:"flex h-10 w-10 shrink-0 items-center justify-center overflow-hidden rounded-full bg-[var(--ma-primary)]/15 text-sm font-semibold text-[var(--ma-primary)]"},Je=["src","alt"],Ze={key:1},et={class:"min-w-0"},tt={class:"font-semibold text-zinc-100"},nt={class:"text-xs text-zinc-500"},st={class:"mt-3 whitespace-pre-wrap text-sm leading-relaxed text-zinc-200"},at={class:"mt-4 flex items-center gap-2 border-t border-zinc-800/80 pt-3"},it=["disabled"],ot={key:1,class:"mt-3 space-y-2 border-t border-zinc-800/80 pt-3"},rt={class:"flex h-7 w-7 shrink-0 items-center justify-center overflow-hidden rounded-full bg-zinc-800 text-xs font-medium text-zinc-300"},lt=["src","alt"],ct={key:1},dt={class:"min-w-0 flex-1"},ut={class:"text-xs font-medium text-zinc-500"},mt={class:"text-sm text-zinc-300"},pt={class:"flex gap-2 pt-1"},gt=["value"],ft={__name:"MemberCommunityPost",props:{post:{type:Object,required:!0},canDelete:{type:Boolean,default:!1},likeLoading:{type:Boolean,default:!1},commentLoading:{type:Boolean,default:!1},commentContent:{type:String,default:""}},emits:["delete","toggle-like","update:comment-content","submit-comment"],setup(e,{emit:d}){const i=e,a=d,v=w((i.post.comments??[]).length>0);V(()=>(i.post.comments??[]).length,y=>{y>0&&(v.value=!0)});const k=z(()=>(i.post.comments??[]).length);function _(y){return y?new Date(y).toLocaleString("pt-BR",{day:"2-digit",month:"2-digit",year:"numeric",hour:"2-digit",minute:"2-digit"}):""}return(y,u)=>(t(),n("article",{id:`post-${e.post.id}`,class:"scroll-mt-4 rounded-2xl bg-zinc-950/60 p-5 ring-1 ring-zinc-800/60"},[s("div",Ge,[s("div",We,[s("div",Qe,[e.post.user?.avatar_url?(t(),n("img",{key:0,src:e.post.user.avatar_url,alt:e.post.user.name,class:"h-full w-full object-cover"},null,8,Je)):(t(),n("span",Ze,c(r(L)(e.post.user?.name)),1))]),s("div",et,[s("p",tt,c(e.post.user?.name),1),s("p",nt,c(_(e.post.created_at)),1)])]),e.canDelete?(t(),n("button",{key:0,type:"button",class:"shrink-0 rounded-lg p-1.5 text-zinc-500 transition hover:bg-zinc-800/60 hover:text-red-400",title:"Excluir postagem","aria-label":"Excluir postagem",onClick:u[0]||(u[0]=m=>a("delete",e.post))},[b(r(ue),{class:"h-4 w-4"})])):g("",!0)]),s("p",st,c(e.post.content),1),e.post.image_url||e.post.video_url?(t(),$(F,{key:0,class:"mt-3","image-url":e.post.image_url,"video-url":e.post.video_url,"media-aspect":e.post.media_aspect},null,8,["image-url","video-url","media-aspect"])):g("",!0),s("div",at,[s("button",{type:"button",class:A(["inline-flex items-center gap-1.5 rounded-lg px-3 py-1.5 text-sm font-medium transition",e.post.user_has_liked?"bg-red-500/10 text-red-400":"text-zinc-400 hover:bg-zinc-800/60 hover:text-zinc-200"]),disabled:e.likeLoading,onClick:u[1]||(u[1]=m=>a("toggle-like",e.post))},[b(r(me),{class:A(["h-4 w-4",e.post.user_has_liked?"fill-current":""])},null,8,["class"]),s("span",null,c(e.post.likes_count??0),1)],10,it),s("button",{type:"button",class:"inline-flex items-center gap-1.5 rounded-lg px-3 py-1.5 text-sm font-medium text-zinc-400 transition hover:bg-zinc-800/60 hover:text-zinc-200",onClick:u[2]||(u[2]=m=>v.value=!v.value)},[b(r(pe),{class:"h-4 w-4"}),U(" Comentários ("+c(k.value)+") ",1)])]),v.value?(t(),n("div",ot,[(t(!0),n(I,null,T(e.post.comments??[],m=>(t(),n("div",{key:m.id,class:"flex gap-2"},[s("div",rt,[m.user?.avatar_url?(t(),n("img",{key:0,src:m.user.avatar_url,alt:m.user.name,class:"h-full w-full object-cover"},null,8,lt)):(t(),n("span",ct,c(r(L)(m.user?.name)),1))]),s("div",dt,[s("p",ut,c(m.user?.name)+" · "+c(m.created_at),1),s("p",mt,c(m.content),1)])]))),128)),s("div",pt,[s("input",{value:e.commentContent,type:"text",class:"min-w-0 flex-1 rounded-xl border-0 bg-zinc-800/80 px-3 py-2 text-sm text-white placeholder-zinc-500 ring-1 ring-zinc-700/60 focus:outline-none focus:ring-[var(--ma-primary)]",placeholder:"Escreva um comentário...",onInput:u[3]||(u[3]=m=>a("update:comment-content",m.target.value)),onKeydown:u[4]||(u[4]=le(q(m=>a("submit-comment",e.post),["prevent"]),["enter"]))},null,40,gt),b(R,{size:"sm",disabled:e.commentLoading||!e.commentContent?.trim(),onClick:u[5]||(u[5]=m=>a("submit-comment",e.post))},{default:E(()=>[...u[6]||(u[6]=[U(" Comentar ",-1)])]),_:1},8,["disabled"])])])):g("",!0)],8,He))}},vt={class:"rounded-2xl bg-zinc-900/50 px-6 py-12 text-center"},xt={class:"mx-auto mb-3 flex h-12 w-12 items-center justify-center rounded-xl bg-[var(--ma-primary)]/15"},yt={__name:"MemberCommunityEmpty",setup(e){return(d,i)=>(t(),n("div",vt,[s("span",xt,[b(r(re),{class:"h-6 w-6 text-[var(--ma-primary)]"})]),i[0]||(i[0]=s("p",{class:"text-sm font-medium text-zinc-300"},"Nenhuma publicação ainda",-1)),i[1]||(i[1]=s("p",{class:"mt-1 text-xs text-zinc-500"},"Seja o primeiro a compartilhar algo nesta página.",-1))]))}},ht={key:1,class:"rounded-2xl bg-zinc-950/60 px-4 py-3 text-sm text-zinc-500 ring-1 ring-zinc-800/60"},bt={key:2,class:"space-y-4"},kt={key:4,class:"flex gap-2"},_t=["href"],wt=["href"],on=Object.assign({layout:te},{__name:"ComunidadePage",props:{product:{type:Object,required:!0},config:{type:Object,default:()=>({})},auth_user_id:{type:Number,default:null},can_delete_any_post:{type:Boolean,default:!1},community_users_can_delete_own_posts:{type:Boolean,default:!0},pages:{type:Array,default:()=>[]},page:{type:Object,required:!0},posts:{type:Object,required:!0},featured_posts:{type:Array,default:()=>[]},featured_pages:{type:Array,default:()=>[]},cross_page_posts:{type:Array,default:()=>[]},active_members:{type:Array,default:()=>[]},slug:{type:String,required:!0}},setup(e){const d=e,i=w(d.posts?.data?[...d.posts.data]:[]);V(()=>d.posts?.data,o=>{i.value=o?[...o]:[]},{immediate:!0});const a=Z({content:"",image:null,video:null,media_aspect:"4:5"}),v=w(""),k=w(null),_=w(null),y=w(null),u=w({}),m=`/m/${d.slug}/comunidade`,S=()=>`${m}/${d.page.slug}/posts`,j=()=>document.querySelector('meta[name="csrf-token"]')?.content??"";ce(()=>{const o=window.location.hash;if(o.startsWith("#post-")){const l=o.replace("#post-","");l&&setTimeout(()=>ne(l),300)}});function C(o){return!!(d.can_delete_any_post||o.user_id===d.auth_user_id&&d.community_users_can_delete_own_posts)}function x(o){const l=o.target?.files?.[0];l&&(l.type.startsWith("video/")?(a.video=l,a.image=null,a.media_aspect="9:16",k.value="video"):(a.image=l,a.video=null,k.value="image",a.media_aspect==="9:16"&&(a.media_aspect="4:5")),v.value=URL.createObjectURL(l),o.target.value="")}function f(){a.image=null,a.video=null,v.value="",k.value=null}function B(){a.post(`/m/${d.slug}/comunidade/${d.page.slug}/posts`,{preserveScroll:!0,forceFormData:!0,onSuccess:()=>{a.reset("content","image","video"),a.media_aspect="4:5",f()}})}function Y(o){confirm("Excluir esta postagem?")&&ee.delete(`${S()}/${o.id}`,{preserveScroll:!0})}async function X(o){const l=i.value.findIndex(p=>p.id===o.id);if(!(l<0)){_.value=o.id;try{const p=`${S()}/${o.id}/like`;if(o.user_has_liked){const{data:h}=await N.delete(p,{headers:{"X-CSRF-TOKEN":j(),Accept:"application/json"}});i.value[l]={...i.value[l],likes_count:h.likes_count,user_has_liked:h.user_has_liked}}else{const{data:h}=await N.post(p,{},{headers:{"X-CSRF-TOKEN":j(),Accept:"application/json"}});i.value[l]={...i.value[l],likes_count:h.likes_count,user_has_liked:h.user_has_liked}}}finally{_.value=null}}}function H(o){return u.value[o]??""}function K(o,l){u.value[o]=l}async function G(o){const l=(u.value[o.id]??"").trim();if(!l)return;const p=i.value.findIndex(h=>h.id===o.id);if(!(p<0)){y.value=o.id;try{const{data:h}=await N.post(`${S()}/${o.id}/comments`,{content:l},{headers:{"X-CSRF-TOKEN":j(),Accept:"application/json"}}),W=[...i.value[p].comments??[],h.comment];i.value[p]={...i.value[p],comments:W},K(o.id,"")}finally{y.value=null}}}return(o,l)=>(t(),$(ae,{pages:e.pages,"base-path":m,"active-slug":e.page.slug},{right:E(()=>[b(se,{pages:e.pages,"base-path":m,"active-slug":e.page.slug,"featured-posts":e.featured_posts,"featured-pages":e.featured_pages,"cross-page-posts":e.cross_page_posts,"active-members":e.active_members},null,8,["pages","active-slug","featured-posts","featured-pages","cross-page-posts","active-members"])]),default:E(()=>[b(we,{page:e.page},null,8,["page"]),e.page.is_public_posting?(t(),$(Xe,{key:0,content:r(a).content,processing:r(a).processing,"media-aspect":r(a).media_aspect,"media-preview-url":v.value,"media-kind":k.value,errors:r(a).errors,"onUpdate:content":l[0]||(l[0]=p=>r(a).content=p),"onUpdate:mediaAspect":l[1]||(l[1]=p=>r(a).media_aspect=p),onSubmit:B,onMediaChange:x,onClearMedia:f},null,8,["content","processing","media-aspect","media-preview-url","media-kind","errors"])):(t(),n("p",ht," Apenas o instrutor pode publicar nesta página. ")),i.value.length?(t(),n("div",bt,[(t(!0),n(I,null,T(i.value,p=>(t(),$(ft,{key:p.id,post:p,"can-delete":C(p),"like-loading":_.value===p.id,"comment-loading":y.value===p.id,"comment-content":H(p.id),onDelete:Y,onToggleLike:X,"onUpdate:commentContent":h=>K(p.id,h),onSubmitComment:G},null,8,["post","can-delete","like-loading","comment-loading","comment-content","onUpdate:commentContent"]))),128))])):(t(),$(yt,{key:3})),e.posts.prev_page_url||e.posts.next_page_url?(t(),n("div",kt,[e.posts.prev_page_url?(t(),n("a",{key:0,href:e.posts.prev_page_url,class:"rounded-xl bg-zinc-800/60 px-4 py-2 text-sm text-zinc-300 transition hover:bg-zinc-800"}," Anterior ",8,_t)):g("",!0),e.posts.next_page_url?(t(),n("a",{key:1,href:e.posts.next_page_url,class:"rounded-xl bg-zinc-800/60 px-4 py-2 text-sm text-zinc-300 transition hover:bg-zinc-800"}," Próxima ",8,wt)):g("",!0)])):g("",!0)]),_:1},8,["pages","active-slug"]))}});export{on as default}; diff --git a/public/build/assets/CoproducaoCadastro-EqTvxd-L.js b/public/build/assets/CoproducaoCadastro-CUsY2hWg.js similarity index 97% rename from public/build/assets/CoproducaoCadastro-EqTvxd-L.js rename to public/build/assets/CoproducaoCadastro-CUsY2hWg.js index ae8e6b0d..173d6d08 100644 --- a/public/build/assets/CoproducaoCadastro-EqTvxd-L.js +++ b/public/build/assets/CoproducaoCadastro-CUsY2hWg.js @@ -1 +1 @@ -import{o as n,c as d,g as b,h as g,u as r,i as l,a as t,t as i,w as y,d as m,b as u,v as c,s as p,n as z}from"./runtime-dom.esm-bundler-OrSu0e66.js";import{u as h,l as q,_,d as C}from"./Toggle-BD3dflqy.js";import{_ as V}from"./AfiliarLayout-C4Gw_6Op.js";import{A as S}from"./arrow-left-t2xJ2JaZ.js";import"./app-CKysWbKx.js";const j={class:"space-y-6"},A={class:"overflow-hidden rounded-2xl border border-zinc-200 bg-white shadow-sm dark:border-zinc-800 dark:bg-zinc-900"},N={class:"flex items-center gap-4 border-b border-zinc-100 p-5 dark:border-zinc-800 sm:p-6"},U=["src","alt"],B={key:1,class:"flex h-16 w-16 shrink-0 items-center justify-center rounded-xl bg-zinc-100 text-xl font-bold text-zinc-400 dark:bg-zinc-800"},O={class:"min-w-0"},$={class:"truncate text-lg font-bold text-zinc-900 dark:text-white"},D={class:"text-sm text-zinc-500"},E={key:0,class:"rounded-xl border border-red-200 bg-red-50 px-4 py-3 text-sm text-red-700 dark:border-red-900/50 dark:bg-red-950/40 dark:text-red-300"},M={class:"text-sm text-zinc-600 dark:text-zinc-400"},T=["href"],F={key:0,class:"mt-1 text-xs text-red-600"},L={key:0,class:"mt-1 text-xs text-red-600"},P={key:0,class:"mt-1 text-xs text-red-600"},x="w-full rounded-xl border border-zinc-200 bg-white px-4 py-2.5 text-sm text-zinc-900 outline-none transition focus:border-[var(--color-primary)] focus:ring-2 focus:ring-[color-mix(in_srgb,var(--color-primary)_25%,transparent)] dark:border-zinc-700 dark:bg-zinc-800 dark:text-white",R=Object.assign({layout:V},{__name:"CoproducaoCadastro",props:{invite:{type:Object,required:!0},product:{type:Object,required:!0},token:{type:String,required:!0},login_url:{type:String,required:!0},landing_url:{type:String,required:!0}},setup(s){const f=s,v=C(),k=z(()=>v.props.errors??{}),o=h({name:"",email:f.invite.email,password:"",password_confirmation:""});function w(){o.post(`/convite/co-producao/${f.token}`)}return(G,e)=>(n(),d("div",j,[b(r(q),{href:s.landing_url,class:"inline-flex items-center gap-1.5 text-sm font-medium text-zinc-500 transition hover:text-[var(--color-primary)] dark:text-zinc-400"},{default:g(()=>[b(r(S),{class:"h-4 w-4"}),e[4]||(e[4]=l(" Voltar ao convite ",-1))]),_:1},8,["href"]),t("div",A,[t("div",N,[s.product.image_url?(n(),d("img",{key:0,src:s.product.image_url,alt:s.product.name,class:"h-16 w-16 shrink-0 rounded-xl object-cover"},null,8,U)):(n(),d("div",B,i(s.product.name?.charAt(0)),1)),t("div",O,[e[5]||(e[5]=t("p",{class:"text-xs font-medium uppercase tracking-wide text-[var(--color-primary)]"},"Co-produção",-1)),t("h1",$,i(s.product.name),1),t("p",D," Comissão de "+i(s.invite.commission_percent)+"% (líquido) ",1)])]),t("form",{class:"space-y-4 p-5 sm:p-6",onSubmit:y(w,["prevent"])},[k.value.email?(n(),d("p",E,i(k.value.email),1)):m("",!0),t("p",M,[e[6]||(e[6]=l(" Use o e-mail ",-1)),t("strong",null,i(s.invite.email),1),e[7]||(e[7]=l(". Se você já é membro da equipe ou infoprodutor, ",-1)),t("a",{href:s.login_url,class:"font-medium text-[var(--color-primary)] hover:underline"},"entre na sua conta",8,T),e[8]||(e[8]=l(" para aceitar sem criar senha nova. ",-1))]),t("div",null,[e[9]||(e[9]=t("label",{class:"mb-1.5 block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Nome completo",-1)),u(t("input",{"onUpdate:modelValue":e[0]||(e[0]=a=>r(o).name=a),type:"text",required:"",autocomplete:"name",class:p(x)},null,512),[[c,r(o).name]]),r(o).errors.name?(n(),d("p",F,i(r(o).errors.name),1)):m("",!0)]),t("div",null,[e[10]||(e[10]=t("label",{class:"mb-1.5 block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"E-mail",-1)),u(t("input",{"onUpdate:modelValue":e[1]||(e[1]=a=>r(o).email=a),type:"email",required:"",readonly:"",class:p(x+" opacity-80")},null,2),[[c,r(o).email]]),r(o).errors.email?(n(),d("p",L,i(r(o).errors.email),1)):m("",!0)]),t("div",null,[e[11]||(e[11]=t("label",{class:"mb-1.5 block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Senha",-1)),u(t("input",{"onUpdate:modelValue":e[2]||(e[2]=a=>r(o).password=a),type:"password",required:"",autocomplete:"new-password",class:p(x)},null,512),[[c,r(o).password]]),r(o).errors.password?(n(),d("p",P,i(r(o).errors.password),1)):m("",!0)]),t("div",null,[e[12]||(e[12]=t("label",{class:"mb-1.5 block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Confirmar senha",-1)),u(t("input",{"onUpdate:modelValue":e[3]||(e[3]=a=>r(o).password_confirmation=a),type:"password",required:"",autocomplete:"new-password",class:p(x)},null,512),[[c,r(o).password_confirmation]])]),b(_,{type:"submit",variant:"primary",class:"w-full py-3",disabled:r(o).processing},{default:g(()=>[l(i(r(o).processing?"Aceitando…":"Aceitar e criar conta"),1)]),_:1},8,["disabled"])],32)])]))}});export{R as default}; +import{o as n,c as d,g as b,h as g,u as r,i as l,a as t,t as i,w as y,d as m,b as u,v as c,s as p,n as z}from"./runtime-dom.esm-bundler-OrSu0e66.js";import{u as h,l as q,_,d as C}from"./Toggle-BD3dflqy.js";import{_ as V}from"./AfiliarLayout-B0S_PtE8.js";import{A as S}from"./arrow-left-t2xJ2JaZ.js";import"./app-CT8pqccC.js";const j={class:"space-y-6"},A={class:"overflow-hidden rounded-2xl border border-zinc-200 bg-white shadow-sm dark:border-zinc-800 dark:bg-zinc-900"},N={class:"flex items-center gap-4 border-b border-zinc-100 p-5 dark:border-zinc-800 sm:p-6"},U=["src","alt"],B={key:1,class:"flex h-16 w-16 shrink-0 items-center justify-center rounded-xl bg-zinc-100 text-xl font-bold text-zinc-400 dark:bg-zinc-800"},O={class:"min-w-0"},$={class:"truncate text-lg font-bold text-zinc-900 dark:text-white"},D={class:"text-sm text-zinc-500"},E={key:0,class:"rounded-xl border border-red-200 bg-red-50 px-4 py-3 text-sm text-red-700 dark:border-red-900/50 dark:bg-red-950/40 dark:text-red-300"},M={class:"text-sm text-zinc-600 dark:text-zinc-400"},T=["href"],F={key:0,class:"mt-1 text-xs text-red-600"},L={key:0,class:"mt-1 text-xs text-red-600"},P={key:0,class:"mt-1 text-xs text-red-600"},x="w-full rounded-xl border border-zinc-200 bg-white px-4 py-2.5 text-sm text-zinc-900 outline-none transition focus:border-[var(--color-primary)] focus:ring-2 focus:ring-[color-mix(in_srgb,var(--color-primary)_25%,transparent)] dark:border-zinc-700 dark:bg-zinc-800 dark:text-white",R=Object.assign({layout:V},{__name:"CoproducaoCadastro",props:{invite:{type:Object,required:!0},product:{type:Object,required:!0},token:{type:String,required:!0},login_url:{type:String,required:!0},landing_url:{type:String,required:!0}},setup(s){const f=s,v=C(),k=z(()=>v.props.errors??{}),o=h({name:"",email:f.invite.email,password:"",password_confirmation:""});function w(){o.post(`/convite/co-producao/${f.token}`)}return(G,e)=>(n(),d("div",j,[b(r(q),{href:s.landing_url,class:"inline-flex items-center gap-1.5 text-sm font-medium text-zinc-500 transition hover:text-[var(--color-primary)] dark:text-zinc-400"},{default:g(()=>[b(r(S),{class:"h-4 w-4"}),e[4]||(e[4]=l(" Voltar ao convite ",-1))]),_:1},8,["href"]),t("div",A,[t("div",N,[s.product.image_url?(n(),d("img",{key:0,src:s.product.image_url,alt:s.product.name,class:"h-16 w-16 shrink-0 rounded-xl object-cover"},null,8,U)):(n(),d("div",B,i(s.product.name?.charAt(0)),1)),t("div",O,[e[5]||(e[5]=t("p",{class:"text-xs font-medium uppercase tracking-wide text-[var(--color-primary)]"},"Co-produção",-1)),t("h1",$,i(s.product.name),1),t("p",D," Comissão de "+i(s.invite.commission_percent)+"% (líquido) ",1)])]),t("form",{class:"space-y-4 p-5 sm:p-6",onSubmit:y(w,["prevent"])},[k.value.email?(n(),d("p",E,i(k.value.email),1)):m("",!0),t("p",M,[e[6]||(e[6]=l(" Use o e-mail ",-1)),t("strong",null,i(s.invite.email),1),e[7]||(e[7]=l(". Se você já é membro da equipe ou infoprodutor, ",-1)),t("a",{href:s.login_url,class:"font-medium text-[var(--color-primary)] hover:underline"},"entre na sua conta",8,T),e[8]||(e[8]=l(" para aceitar sem criar senha nova. ",-1))]),t("div",null,[e[9]||(e[9]=t("label",{class:"mb-1.5 block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Nome completo",-1)),u(t("input",{"onUpdate:modelValue":e[0]||(e[0]=a=>r(o).name=a),type:"text",required:"",autocomplete:"name",class:p(x)},null,512),[[c,r(o).name]]),r(o).errors.name?(n(),d("p",F,i(r(o).errors.name),1)):m("",!0)]),t("div",null,[e[10]||(e[10]=t("label",{class:"mb-1.5 block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"E-mail",-1)),u(t("input",{"onUpdate:modelValue":e[1]||(e[1]=a=>r(o).email=a),type:"email",required:"",readonly:"",class:p(x+" opacity-80")},null,2),[[c,r(o).email]]),r(o).errors.email?(n(),d("p",L,i(r(o).errors.email),1)):m("",!0)]),t("div",null,[e[11]||(e[11]=t("label",{class:"mb-1.5 block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Senha",-1)),u(t("input",{"onUpdate:modelValue":e[2]||(e[2]=a=>r(o).password=a),type:"password",required:"",autocomplete:"new-password",class:p(x)},null,512),[[c,r(o).password]]),r(o).errors.password?(n(),d("p",P,i(r(o).errors.password),1)):m("",!0)]),t("div",null,[e[12]||(e[12]=t("label",{class:"mb-1.5 block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Confirmar senha",-1)),u(t("input",{"onUpdate:modelValue":e[3]||(e[3]=a=>r(o).password_confirmation=a),type:"password",required:"",autocomplete:"new-password",class:p(x)},null,512),[[c,r(o).password_confirmation]])]),b(_,{type:"submit",variant:"primary",class:"w-full py-3",disabled:r(o).processing},{default:g(()=>[l(i(r(o).processing?"Aceitando…":"Aceitar e criar conta"),1)]),_:1},8,["disabled"])],32)])]))}});export{R as default}; diff --git a/public/build/assets/CoproducaoShow-Cqd-F4Gp.js b/public/build/assets/CoproducaoShow-Ycp3U7KB.js similarity index 96% rename from public/build/assets/CoproducaoShow-Cqd-F4Gp.js rename to public/build/assets/CoproducaoShow-Ycp3U7KB.js index 77a53c6d..c592773f 100644 --- a/public/build/assets/CoproducaoShow-Cqd-F4Gp.js +++ b/public/build/assets/CoproducaoShow-Ycp3U7KB.js @@ -1 +1 @@ -import{_ as f,l as p}from"./Toggle-BD3dflqy.js";import{_ as h}from"./AfiliarLayout-C4Gw_6Op.js";import{P as v}from"./percent-BwYsL6F0.js";import{C as g}from"./clock-BPm9yiQC.js";import{H as k}from"./handshake-ChMiz3jx.js";import{A as _}from"./arrow-right-C14j21V-.js";import{o,c as r,a as t,t as n,i,g as a,u as c,F as l,h as m,n as y}from"./runtime-dom.esm-bundler-OrSu0e66.js";import"./app-CKysWbKx.js";const z={class:"overflow-hidden rounded-2xl border border-zinc-200 bg-white shadow-sm dark:border-zinc-800 dark:bg-zinc-900"},b={key:0,class:"aspect-[16/9] w-full bg-zinc-100 dark:bg-zinc-800"},w=["src","alt"],C={key:1,class:"flex aspect-[16/9] w-full items-center justify-center bg-zinc-100 dark:bg-zinc-800"},q={class:"text-4xl font-bold text-zinc-300 dark:text-zinc-600"},j={class:"p-6 sm:p-8"},S={class:"mt-2 text-2xl font-bold tracking-tight text-zinc-900 dark:text-white sm:text-3xl"},A={class:"mt-2 text-sm text-zinc-500"},B={class:"text-zinc-700 dark:text-zinc-300"},N={class:"mt-6 space-y-3"},O={class:"flex items-start gap-3 text-sm text-zinc-700 dark:text-zinc-300"},P={class:"text-zinc-900 dark:text-white"},V={class:"flex items-start gap-3 text-sm text-zinc-700 dark:text-zinc-300"},$={class:"flex items-start gap-3 text-sm text-zinc-700 dark:text-zinc-300"},E={class:"mt-8 space-y-3"},F={class:"text-center text-xs text-zinc-500"},H=["href"],M=Object.assign({layout:h},{__name:"CoproducaoShow",props:{invite:{type:Object,required:!0},product:{type:Object,required:!0},token:{type:String,required:!0},cadastro_url:{type:String,required:!0},login_url:{type:String,required:!0}},setup(e){const u=e,x=y(()=>{const d=u.invite.duration_days;return d?`${d} dias de co-produção`:"Prazo indeterminado"});return(d,s)=>(o(),r("article",z,[e.product.image_url?(o(),r("div",b,[t("img",{src:e.product.image_url,alt:e.product.name,class:"h-full w-full object-cover"},null,8,w)])):(o(),r("div",C,[t("span",q,n(e.product.name?.charAt(0)),1)])),t("div",j,[s[6]||(s[6]=t("p",{class:"text-xs font-semibold uppercase tracking-wider text-[var(--color-primary)]"}," Convite de co-produção ",-1)),t("h1",S,n(e.product.name),1),t("p",A,[s[0]||(s[0]=i(" Convite para: ",-1)),t("strong",B,n(e.invite.email),1)]),t("ul",N,[t("li",O,[a(c(v),{class:"mt-0.5 h-4 w-4 shrink-0 text-[var(--color-primary)]"}),t("span",null,[t("strong",P,n(e.invite.commission_percent)+"%",1),s[1]||(s[1]=i(" de comissão sobre o valor líquido (após taxas do gateway) ",-1))])]),t("li",V,[a(c(g),{class:"mt-0.5 h-4 w-4 shrink-0 text-[var(--color-primary)]"}),t("span",null,n(x.value),1)]),t("li",$,[a(c(k),{class:"mt-0.5 h-4 w-4 shrink-0 text-[var(--color-primary)]"}),t("span",null,[s[2]||(s[2]=i(" Comissão em ",-1)),e.invite.commission_on_producer_sales&&e.invite.commission_on_affiliate_sales?(o(),r(l,{key:0},[i(" vendas diretas e de afiliados ")],64)):e.invite.commission_on_producer_sales?(o(),r(l,{key:1},[i("vendas diretas do produtor")],64)):e.invite.commission_on_affiliate_sales?(o(),r(l,{key:2},[i("vendas de afiliados")],64)):(o(),r(l,{key:3},[i("nenhum canal (revise com o produtor)")],64))])])]),t("div",E,[a(c(p),{href:e.cadastro_url,class:"block"},{default:m(()=>[a(f,{type:"button",variant:"primary",class:"w-full gap-2 py-3 text-base"},{default:m(()=>[s[3]||(s[3]=i(" Aceitar convite ",-1)),a(c(_),{class:"h-4 w-4"})]),_:1})]),_:1},8,["href"]),t("p",F,[s[4]||(s[4]=i(" Já tem conta? ",-1)),t("a",{href:e.login_url,class:"font-medium text-[var(--color-primary)] hover:underline"},"Entrar",8,H),s[5]||(s[5]=i(" e concluir em um passo. ",-1))])])])]))}});export{M as default}; +import{_ as f,l as p}from"./Toggle-BD3dflqy.js";import{_ as h}from"./AfiliarLayout-B0S_PtE8.js";import{P as v}from"./percent-BwYsL6F0.js";import{C as g}from"./clock-BPm9yiQC.js";import{H as k}from"./handshake-ChMiz3jx.js";import{A as _}from"./arrow-right-C14j21V-.js";import{o,c as r,a as t,t as n,i,g as a,u as c,F as l,h as m,n as y}from"./runtime-dom.esm-bundler-OrSu0e66.js";import"./app-CT8pqccC.js";const z={class:"overflow-hidden rounded-2xl border border-zinc-200 bg-white shadow-sm dark:border-zinc-800 dark:bg-zinc-900"},b={key:0,class:"aspect-[16/9] w-full bg-zinc-100 dark:bg-zinc-800"},w=["src","alt"],C={key:1,class:"flex aspect-[16/9] w-full items-center justify-center bg-zinc-100 dark:bg-zinc-800"},q={class:"text-4xl font-bold text-zinc-300 dark:text-zinc-600"},j={class:"p-6 sm:p-8"},S={class:"mt-2 text-2xl font-bold tracking-tight text-zinc-900 dark:text-white sm:text-3xl"},A={class:"mt-2 text-sm text-zinc-500"},B={class:"text-zinc-700 dark:text-zinc-300"},N={class:"mt-6 space-y-3"},O={class:"flex items-start gap-3 text-sm text-zinc-700 dark:text-zinc-300"},P={class:"text-zinc-900 dark:text-white"},V={class:"flex items-start gap-3 text-sm text-zinc-700 dark:text-zinc-300"},$={class:"flex items-start gap-3 text-sm text-zinc-700 dark:text-zinc-300"},E={class:"mt-8 space-y-3"},F={class:"text-center text-xs text-zinc-500"},H=["href"],M=Object.assign({layout:h},{__name:"CoproducaoShow",props:{invite:{type:Object,required:!0},product:{type:Object,required:!0},token:{type:String,required:!0},cadastro_url:{type:String,required:!0},login_url:{type:String,required:!0}},setup(e){const u=e,x=y(()=>{const d=u.invite.duration_days;return d?`${d} dias de co-produção`:"Prazo indeterminado"});return(d,s)=>(o(),r("article",z,[e.product.image_url?(o(),r("div",b,[t("img",{src:e.product.image_url,alt:e.product.name,class:"h-full w-full object-cover"},null,8,w)])):(o(),r("div",C,[t("span",q,n(e.product.name?.charAt(0)),1)])),t("div",j,[s[6]||(s[6]=t("p",{class:"text-xs font-semibold uppercase tracking-wider text-[var(--color-primary)]"}," Convite de co-produção ",-1)),t("h1",S,n(e.product.name),1),t("p",A,[s[0]||(s[0]=i(" Convite para: ",-1)),t("strong",B,n(e.invite.email),1)]),t("ul",N,[t("li",O,[a(c(v),{class:"mt-0.5 h-4 w-4 shrink-0 text-[var(--color-primary)]"}),t("span",null,[t("strong",P,n(e.invite.commission_percent)+"%",1),s[1]||(s[1]=i(" de comissão sobre o valor líquido (após taxas do gateway) ",-1))])]),t("li",V,[a(c(g),{class:"mt-0.5 h-4 w-4 shrink-0 text-[var(--color-primary)]"}),t("span",null,n(x.value),1)]),t("li",$,[a(c(k),{class:"mt-0.5 h-4 w-4 shrink-0 text-[var(--color-primary)]"}),t("span",null,[s[2]||(s[2]=i(" Comissão em ",-1)),e.invite.commission_on_producer_sales&&e.invite.commission_on_affiliate_sales?(o(),r(l,{key:0},[i(" vendas diretas e de afiliados ")],64)):e.invite.commission_on_producer_sales?(o(),r(l,{key:1},[i("vendas diretas do produtor")],64)):e.invite.commission_on_affiliate_sales?(o(),r(l,{key:2},[i("vendas de afiliados")],64)):(o(),r(l,{key:3},[i("nenhum canal (revise com o produtor)")],64))])])]),t("div",E,[a(c(p),{href:e.cadastro_url,class:"block"},{default:m(()=>[a(f,{type:"button",variant:"primary",class:"w-full gap-2 py-3 text-base"},{default:m(()=>[s[3]||(s[3]=i(" Aceitar convite ",-1)),a(c(_),{class:"h-4 w-4"})]),_:1})]),_:1},8,["href"]),t("p",F,[s[4]||(s[4]=i(" Já tem conta? ",-1)),t("a",{href:e.login_url,class:"font-medium text-[var(--color-primary)] hover:underline"},"Entrar",8,H),s[5]||(s[5]=i(" e concluir em um passo. ",-1))])])])]))}});export{M as default}; diff --git a/public/build/assets/Coproducers-B5D0143z.js b/public/build/assets/Coproducers-DbiqwjFv.js similarity index 96% rename from public/build/assets/Coproducers-B5D0143z.js rename to public/build/assets/Coproducers-DbiqwjFv.js index 2f0fed47..bb998951 100644 --- a/public/build/assets/Coproducers-B5D0143z.js +++ b/public/build/assets/Coproducers-DbiqwjFv.js @@ -1 +1 @@ -import{l as m}from"./Toggle-BD3dflqy.js";import{_ as l}from"./app-CKysWbKx.js";import{_}from"./ProdutosTabs-CmQIbd5Z.js";import{_ as f}from"./ProductPartnersTable-YFqRcSS_.js";import{o as a,c as x,a as o,g as s,h as d,f as k,u as v,i as b,d as g,n as h}from"./runtime-dom.esm-bundler-OrSu0e66.js";import"./HorizontalScrollTabs-B3gLPvR5.js";import"./handshake-ChMiz3jx.js";import"./user-plus-Ci3SykZs.js";import"./ellipsis-vertical-DayR1-An.js";const C={class:"space-y-6"},R=Object.assign({layout:l},{__name:"Coproducers",props:{coproducers:{type:Object,required:!0}},setup(i){const n=i,c={active:"Ativo",pending:"Convite pendente",revoked:"Revogado",expired:"Expirado"},p=h(()=>(n.coproducers?.data??[]).map(e=>({id:e.id,created_at:e.created_at,name:e.user?.name??null,email:e.user?.email??e.email??null,product_name:e.product_name??e.product?.name,commission_percent:e.commission_percent,status:e.status,product_id:e.product_id??e.product?.id})));return(e,t)=>(a(),x("div",C,[t[1]||(t[1]=o("div",null,[o("h1",{class:"text-2xl font-bold text-zinc-900 dark:text-white"},"Co-produtores"),o("p",{class:"mt-1 text-sm text-zinc-500"},"Visão geral de todos os co-produtores da conta.")],-1)),s(_),s(f,{rows:p.value,"status-labels":c,"empty-label":"Nenhum co-produtor encontrado."},{menu:d(({row:r,close:u})=>[r?.product_id?(a(),k(v(m),{key:0,href:`/produtos/${r.product_id}/edit?tab=coproducao`,class:"flex w-full px-3 py-2 text-left text-sm text-zinc-700 hover:bg-zinc-100 dark:text-zinc-300 dark:hover:bg-zinc-800",onClick:y=>u()},{default:d(()=>[...t[0]||(t[0]=[b(" Gerenciar no produto ",-1)])]),_:1},8,["href","onClick"])):g("",!0)]),_:1},8,["rows"])]))}});export{R as default}; +import{l as m}from"./Toggle-BD3dflqy.js";import{_ as l}from"./app-CT8pqccC.js";import{_}from"./ProdutosTabs-DsnePWTy.js";import{_ as f}from"./ProductPartnersTable-YFqRcSS_.js";import{o as a,c as x,a as o,g as s,h as d,f as k,u as v,i as b,d as g,n as h}from"./runtime-dom.esm-bundler-OrSu0e66.js";import"./HorizontalScrollTabs-B3gLPvR5.js";import"./handshake-ChMiz3jx.js";import"./user-plus-Ci3SykZs.js";import"./ellipsis-vertical-DayR1-An.js";const C={class:"space-y-6"},R=Object.assign({layout:l},{__name:"Coproducers",props:{coproducers:{type:Object,required:!0}},setup(i){const n=i,c={active:"Ativo",pending:"Convite pendente",revoked:"Revogado",expired:"Expirado"},p=h(()=>(n.coproducers?.data??[]).map(e=>({id:e.id,created_at:e.created_at,name:e.user?.name??null,email:e.user?.email??e.email??null,product_name:e.product_name??e.product?.name,commission_percent:e.commission_percent,status:e.status,product_id:e.product_id??e.product?.id})));return(e,t)=>(a(),x("div",C,[t[1]||(t[1]=o("div",null,[o("h1",{class:"text-2xl font-bold text-zinc-900 dark:text-white"},"Co-produtores"),o("p",{class:"mt-1 text-sm text-zinc-500"},"Visão geral de todos os co-produtores da conta.")],-1)),s(_),s(f,{rows:p.value,"status-labels":c,"empty-label":"Nenhum co-produtor encontrado."},{menu:d(({row:r,close:u})=>[r?.product_id?(a(),k(v(m),{key:0,href:`/produtos/${r.product_id}/edit?tab=coproducao`,class:"flex w-full px-3 py-2 text-left text-sm text-zinc-700 hover:bg-zinc-100 dark:text-zinc-300 dark:hover:bg-zinc-800",onClick:y=>u()},{default:d(()=>[...t[0]||(t[0]=[b(" Gerenciar no produto ",-1)])]),_:1},8,["href","onClick"])):g("",!0)]),_:1},8,["rows"])]))}});export{R as default}; diff --git a/public/build/assets/Create-BuAKAtx0.js b/public/build/assets/Create-BmskNs5L.js similarity index 98% rename from public/build/assets/Create-BuAKAtx0.js rename to public/build/assets/Create-BmskNs5L.js index 155d3748..33d65b74 100644 --- a/public/build/assets/Create-BuAKAtx0.js +++ b/public/build/assets/Create-BmskNs5L.js @@ -1 +1 @@ -import{b8 as x,o as n,c as d,a as t,b as i,v as l,u as o,t as a,d as m,bF as k,bD as g,g as p,h as u,i as b,w as z}from"./runtime-dom.esm-bundler-OrSu0e66.js";import{u as f,_ as v}from"./Toggle-BD3dflqy.js";import{_ as y}from"./app-CKysWbKx.js";const w={class:"space-y-4"},V={key:0,class:"mt-1 text-sm text-red-600"},_={class:"grid gap-4 sm:grid-cols-2"},C={key:0,class:"mt-1 text-sm text-red-600"},U={class:"flex items-center gap-2"},N={class:"flex gap-2"},L=Object.assign({layout:y},{__name:"Create",setup(S){const r=f({name:"",slug:"",description:"",type:"area_membros",price:0,is_active:!0});return(D,e)=>{const c=x("Link");return n(),d("div",w,[t("form",{class:"max-w-xl space-y-4",onSubmit:e[6]||(e[6]=z(s=>o(r).post("/produtos"),["prevent"]))},[t("div",null,[e[7]||(e[7]=t("label",{class:"block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Nome",-1)),i(t("input",{"onUpdate:modelValue":e[0]||(e[0]=s=>o(r).name=s),type:"text",required:"",class:"mt-1 block w-full rounded-lg border border-zinc-300 dark:border-zinc-600 bg-white dark:bg-zinc-900 px-3 py-2"},null,512),[[l,o(r).name]]),o(r).errors.name?(n(),d("p",V,a(o(r).errors.name),1)):m("",!0)]),t("div",null,[e[8]||(e[8]=t("label",{class:"block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Slug (opcional)",-1)),i(t("input",{"onUpdate:modelValue":e[1]||(e[1]=s=>o(r).slug=s),type:"text",class:"mt-1 block w-full rounded-lg border border-zinc-300 dark:border-zinc-600 bg-white dark:bg-zinc-900 px-3 py-2"},null,512),[[l,o(r).slug]])]),t("div",null,[e[9]||(e[9]=t("label",{class:"block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Descrição",-1)),i(t("textarea",{"onUpdate:modelValue":e[2]||(e[2]=s=>o(r).description=s),rows:"3",class:"mt-1 block w-full rounded-lg border border-zinc-300 dark:border-zinc-600 bg-white dark:bg-zinc-900 px-3 py-2"},null,512),[[l,o(r).description]])]),t("div",_,[t("div",null,[e[11]||(e[11]=t("label",{class:"block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Tipo",-1)),i(t("select",{"onUpdate:modelValue":e[3]||(e[3]=s=>o(r).type=s),class:"mt-1 block w-full rounded-lg border border-zinc-300 dark:border-zinc-600 bg-white dark:bg-zinc-900 px-3 py-2"},[...e[10]||(e[10]=[t("option",{value:"area_membros"},"Área de membros",-1),t("option",{value:"area_membros_externa"},"Área de membros externa",-1),t("option",{value:"link"},"Link",-1),t("option",{value:"link_pagamento"},"Somente link de pagamento",-1)])],512),[[k,o(r).type]])]),t("div",null,[e[12]||(e[12]=t("label",{class:"block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Preço (R$)",-1)),i(t("input",{"onUpdate:modelValue":e[4]||(e[4]=s=>o(r).price=s),type:"number",step:"0.01",min:"0",required:"",class:"mt-1 block w-full rounded-lg border border-zinc-300 dark:border-zinc-600 bg-white dark:bg-zinc-900 px-3 py-2"},null,512),[[l,o(r).price]]),o(r).errors.price?(n(),d("p",C,a(o(r).errors.price),1)):m("",!0)])]),t("div",U,[i(t("input",{"onUpdate:modelValue":e[5]||(e[5]=s=>o(r).is_active=s),type:"checkbox",id:"is_active",class:"h-4 w-4 rounded border-zinc-300"},null,512),[[g,o(r).is_active]]),e[13]||(e[13]=t("label",{for:"is_active",class:"text-sm text-zinc-700 dark:text-zinc-300"},"Ativo",-1))]),t("div",N,[p(v,{type:"submit",disabled:o(r).processing},{default:u(()=>[...e[14]||(e[14]=[b("Criar",-1)])]),_:1},8,["disabled"]),p(c,{href:"/produtos",class:"inline-flex items-center rounded-lg border border-zinc-300 dark:border-zinc-600 px-4 py-2 text-sm font-medium"},{default:u(()=>[...e[15]||(e[15]=[b("Cancelar",-1)])]),_:1})])],32)])}}});export{L as default}; +import{b8 as x,o as n,c as d,a as t,b as i,v as l,u as o,t as a,d as m,bF as k,bD as g,g as p,h as u,i as b,w as z}from"./runtime-dom.esm-bundler-OrSu0e66.js";import{u as f,_ as v}from"./Toggle-BD3dflqy.js";import{_ as y}from"./app-CT8pqccC.js";const w={class:"space-y-4"},V={key:0,class:"mt-1 text-sm text-red-600"},_={class:"grid gap-4 sm:grid-cols-2"},C={key:0,class:"mt-1 text-sm text-red-600"},U={class:"flex items-center gap-2"},N={class:"flex gap-2"},L=Object.assign({layout:y},{__name:"Create",setup(S){const r=f({name:"",slug:"",description:"",type:"area_membros",price:0,is_active:!0});return(D,e)=>{const c=x("Link");return n(),d("div",w,[t("form",{class:"max-w-xl space-y-4",onSubmit:e[6]||(e[6]=z(s=>o(r).post("/produtos"),["prevent"]))},[t("div",null,[e[7]||(e[7]=t("label",{class:"block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Nome",-1)),i(t("input",{"onUpdate:modelValue":e[0]||(e[0]=s=>o(r).name=s),type:"text",required:"",class:"mt-1 block w-full rounded-lg border border-zinc-300 dark:border-zinc-600 bg-white dark:bg-zinc-900 px-3 py-2"},null,512),[[l,o(r).name]]),o(r).errors.name?(n(),d("p",V,a(o(r).errors.name),1)):m("",!0)]),t("div",null,[e[8]||(e[8]=t("label",{class:"block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Slug (opcional)",-1)),i(t("input",{"onUpdate:modelValue":e[1]||(e[1]=s=>o(r).slug=s),type:"text",class:"mt-1 block w-full rounded-lg border border-zinc-300 dark:border-zinc-600 bg-white dark:bg-zinc-900 px-3 py-2"},null,512),[[l,o(r).slug]])]),t("div",null,[e[9]||(e[9]=t("label",{class:"block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Descrição",-1)),i(t("textarea",{"onUpdate:modelValue":e[2]||(e[2]=s=>o(r).description=s),rows:"3",class:"mt-1 block w-full rounded-lg border border-zinc-300 dark:border-zinc-600 bg-white dark:bg-zinc-900 px-3 py-2"},null,512),[[l,o(r).description]])]),t("div",_,[t("div",null,[e[11]||(e[11]=t("label",{class:"block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Tipo",-1)),i(t("select",{"onUpdate:modelValue":e[3]||(e[3]=s=>o(r).type=s),class:"mt-1 block w-full rounded-lg border border-zinc-300 dark:border-zinc-600 bg-white dark:bg-zinc-900 px-3 py-2"},[...e[10]||(e[10]=[t("option",{value:"area_membros"},"Área de membros",-1),t("option",{value:"area_membros_externa"},"Área de membros externa",-1),t("option",{value:"link"},"Link",-1),t("option",{value:"link_pagamento"},"Somente link de pagamento",-1)])],512),[[k,o(r).type]])]),t("div",null,[e[12]||(e[12]=t("label",{class:"block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Preço (R$)",-1)),i(t("input",{"onUpdate:modelValue":e[4]||(e[4]=s=>o(r).price=s),type:"number",step:"0.01",min:"0",required:"",class:"mt-1 block w-full rounded-lg border border-zinc-300 dark:border-zinc-600 bg-white dark:bg-zinc-900 px-3 py-2"},null,512),[[l,o(r).price]]),o(r).errors.price?(n(),d("p",C,a(o(r).errors.price),1)):m("",!0)])]),t("div",U,[i(t("input",{"onUpdate:modelValue":e[5]||(e[5]=s=>o(r).is_active=s),type:"checkbox",id:"is_active",class:"h-4 w-4 rounded border-zinc-300"},null,512),[[g,o(r).is_active]]),e[13]||(e[13]=t("label",{for:"is_active",class:"text-sm text-zinc-700 dark:text-zinc-300"},"Ativo",-1))]),t("div",N,[p(v,{type:"submit",disabled:o(r).processing},{default:u(()=>[...e[14]||(e[14]=[b("Criar",-1)])]),_:1},8,["disabled"]),p(c,{href:"/produtos",class:"inline-flex items-center rounded-lg border border-zinc-300 dark:border-zinc-600 px-4 py-2 text-sm font-medium"},{default:u(()=>[...e[15]||(e[15]=[b("Cancelar",-1)])]),_:1})])],32)])}}});export{L as default}; diff --git a/public/build/assets/Create-CyXDaiPJ.js b/public/build/assets/Create-Cw4ijRhd.js similarity index 98% rename from public/build/assets/Create-CyXDaiPJ.js rename to public/build/assets/Create-Cw4ijRhd.js index 86d8cf9b..968b53ec 100644 --- a/public/build/assets/Create-CyXDaiPJ.js +++ b/public/build/assets/Create-Cw4ijRhd.js @@ -1 +1 @@ -import{o as n,c as d,a as t,b as i,v as b,u as a,t as u,d as m,g as x,i as p,h as g,F as z,y as h,bF as P,f as R,bD as M,w as N,r as A}from"./runtime-dom.esm-bundler-OrSu0e66.js";import{u as B,_ as k}from"./Toggle-BD3dflqy.js";import{_ as I}from"./app-CKysWbKx.js";import{_ as L}from"./GatewayRedundancySidebar-DyzB1XM0.js";import{P as O}from"./palette-Bdslkkzt.js";import{S as $}from"./settings-2-DcGSmOYd.js";import"./chevron-up-LCq4Peo3.js";import"./chevron-down-Cr9wcM6o.js";import"./trash-2-Bxek5XZ9.js";import"./plus-C8Znz4zD.js";const j={class:"space-y-6"},q={key:0,class:"mt-1 text-sm text-red-600"},D={class:"panel-card-sm"},E={class:"flex items-center gap-2 text-sm font-semibold text-zinc-900 dark:text-white"},F={class:"mt-4 flex flex-wrap items-center gap-4"},X=["value","title"],G={key:0,class:"mt-2 text-sm text-red-600"},T={class:"panel-card-sm"},H={class:"flex items-center gap-2 text-sm font-semibold text-zinc-900 dark:text-white"},W={class:"mt-4 space-y-3"},Y={class:"w-24 text-sm font-medium text-zinc-700 dark:text-zinc-300"},Z=["onUpdate:modelValue"],J=["value"],K={key:0,class:"mt-1 text-sm text-red-600"},Q={key:0,class:"mt-1 text-sm text-red-600"},ee={key:0,class:"mt-1 text-sm text-red-600"},te={key:0,class:"mt-1 text-sm text-red-600"},ae={class:"flex items-center gap-2"},oe={class:"flex gap-2"},ye=Object.assign({layout:I},{__name:"Create",props:{gateways_by_method:{type:Object,default:()=>({})},default_payment_gateways:{type:Object,default:()=>({})}},setup(f){const w=f,s=w.default_payment_gateways||{},o=B({name:"",payment_gateways:{pix:s.pix??"",pix_redundancy:Array.isArray(s.pix_redundancy)?s.pix_redundancy:[],card:s.card??"",card_redundancy:Array.isArray(s.card_redundancy)?s.card_redundancy:[],boleto:s.boleto??"",boleto_redundancy:Array.isArray(s.boleto_redundancy)?s.boleto_redundancy:[],pix_auto:s.pix_auto??"",pix_auto_redundancy:Array.isArray(s.pix_auto_redundancy)?s.pix_auto_redundancy:[],apple_pay:s.apple_pay??"",apple_pay_redundancy:Array.isArray(s.apple_pay_redundancy)?s.apple_pay_redundancy:[],google_pay:s.google_pay??"",google_pay_redundancy:Array.isArray(s.google_pay_redundancy)?s.google_pay_redundancy:[],crypto:s.crypto??"",crypto_redundancy:Array.isArray(s.crypto_redundancy)?s.crypto_redundancy:[]},webhook_url:"",default_return_url:"",webhook_secret:"",allowed_ips:"",is_active:!0,checkout_sidebar_bg:""});function C(c){const e=w.gateways_by_method?.[c]??[];return[{value:"",label:"Nenhum"},...e.map(r=>({value:r.slug,label:r.name}))]}const v={pix:"PIX",card:"Cartão",boleto:"Boleto",pix_auto:"PIX automático",apple_pay:"Apple Pay",google_pay:"Google Pay",crypto:"Criptomoeda"},_=A(!1),l=A(null);function U(c){l.value=c,_.value=!0}function V(c){return c!==""&&c!=null}function S(){o.post("/aplicacoes-api")}return(c,e)=>(n(),d("div",j,[e[29]||(e[29]=t("div",null,[t("h1",{class:"text-2xl font-bold tracking-tight text-zinc-900 dark:text-white"},"Nova aplicação API"),t("p",{class:"mt-1 text-sm text-zinc-500 dark:text-zinc-400"}," Configure os gateways que esta aplicação poderá usar para processar pagamentos. ")],-1)),t("form",{class:"max-w-2xl space-y-6",onSubmit:N(S,["prevent"])},[t("div",null,[e[12]||(e[12]=t("label",{class:"block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Nome",-1)),i(t("input",{"onUpdate:modelValue":e[0]||(e[0]=r=>a(o).name=r),type:"text",required:"",class:"mt-1 block w-full rounded-lg border border-zinc-300 dark:border-zinc-600 bg-white dark:bg-zinc-900 px-3 py-2",placeholder:"Ex.: Loja XYZ"},null,512),[[b,a(o).name]]),a(o).errors.name?(n(),d("p",q,u(a(o).errors.name),1)):m("",!0)]),t("div",D,[t("h2",E,[x(a(O),{class:"h-4 w-4"}),e[13]||(e[13]=p(" Cor de fundo do checkout ",-1))]),e[15]||(e[15]=t("p",{class:"mt-1 text-xs text-zinc-500 dark:text-zinc-400"},"Cor da coluna esquerda (resumo) no Checkout Pro.",-1)),t("div",F,[t("input",{value:a(o).checkout_sidebar_bg||"#18181b",type:"color",class:"h-10 w-14 cursor-pointer rounded border border-zinc-300 bg-white p-1 dark:border-zinc-600",title:a(o).checkout_sidebar_bg||"#18181b",onInput:e[1]||(e[1]=r=>a(o).checkout_sidebar_bg=r.target.value)},null,40,X),i(t("input",{"onUpdate:modelValue":e[2]||(e[2]=r=>a(o).checkout_sidebar_bg=r),type:"text",class:"rounded-lg border border-zinc-300 dark:border-zinc-600 bg-white dark:bg-zinc-900 px-3 py-2 font-mono text-sm w-28",placeholder:"#18181b",maxlength:"7"},null,512),[[b,a(o).checkout_sidebar_bg]]),x(k,{type:"button",variant:"outline",size:"sm",onClick:e[3]||(e[3]=r=>a(o).checkout_sidebar_bg="")},{default:g(()=>[...e[14]||(e[14]=[p(" Restaurar padrão ",-1)])]),_:1})]),a(o).errors.checkout_sidebar_bg?(n(),d("p",G,u(a(o).errors.checkout_sidebar_bg),1)):m("",!0)]),t("div",T,[t("h2",H,[x(a($),{class:"h-4 w-4"}),e[16]||(e[16]=p(" Gateways por método de pagamento ",-1))]),e[18]||(e[18]=t("p",{class:"mt-1 text-sm text-zinc-500 dark:text-zinc-400"}," Selecione o gateway principal e a ordem de redundância para cada método. ",-1)),t("div",W,[(n(),d(z,null,h(["pix","card","boleto","apple_pay","google_pay","pix_auto","crypto"],r=>t("div",{key:r,class:"flex flex-wrap items-center gap-2"},[t("span",Y,u(v[r]||r),1),i(t("select",{"onUpdate:modelValue":y=>a(o).payment_gateways[r]=y,class:"rounded-lg border border-zinc-300 dark:border-zinc-600 bg-white dark:bg-zinc-900 px-3 py-2 text-sm min-w-[160px]"},[(n(!0),d(z,null,h(C(r),y=>(n(),d("option",{key:y.value,value:y.value},u(y.label),9,J))),128))],8,Z),[[P,a(o).payment_gateways[r]]]),V(a(o).payment_gateways[r])?(n(),R(k,{key:0,type:"button",variant:"outline",size:"sm",onClick:y=>U(r)},{default:g(()=>[...e[17]||(e[17]=[p(" Redundância ",-1)])]),_:1},8,["onClick"])):m("",!0)])),64))])]),t("div",null,[e[19]||(e[19]=t("label",{class:"block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"URL do webhook (opcional)",-1)),i(t("input",{"onUpdate:modelValue":e[4]||(e[4]=r=>a(o).webhook_url=r),type:"url",class:"mt-1 block w-full rounded-lg border border-zinc-300 dark:border-zinc-600 bg-white dark:bg-zinc-900 px-3 py-2",placeholder:"https://..."},null,512),[[b,a(o).webhook_url]]),e[20]||(e[20]=t("p",{class:"mt-1 text-xs text-zinc-500 dark:text-zinc-400"},"Receberá notificações de pagamento (order.completed, etc.).",-1)),a(o).errors.webhook_url?(n(),d("p",K,u(a(o).errors.webhook_url),1)):m("",!0)]),t("div",null,[e[21]||(e[21]=t("label",{class:"block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"URL de retorno padrão (opcional)",-1)),i(t("input",{"onUpdate:modelValue":e[5]||(e[5]=r=>a(o).default_return_url=r),type:"url",class:"mt-1 block w-full rounded-lg border border-zinc-300 dark:border-zinc-600 bg-white dark:bg-zinc-900 px-3 py-2",placeholder:"https://..."},null,512),[[b,a(o).default_return_url]]),e[22]||(e[22]=t("p",{class:"mt-1 text-xs text-zinc-500 dark:text-zinc-400"},[p(" Usada no Checkout Pro quando a sessão não enviar "),t("span",{class:"font-mono"},"return_url"),p(". ")],-1)),a(o).errors.default_return_url?(n(),d("p",Q,u(a(o).errors.default_return_url),1)):m("",!0)]),t("div",null,[e[23]||(e[23]=t("label",{class:"block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Webhook secret (opcional)",-1)),i(t("input",{"onUpdate:modelValue":e[6]||(e[6]=r=>a(o).webhook_secret=r),type:"password",autocomplete:"off",class:"mt-1 block w-full rounded-lg border border-zinc-300 dark:border-zinc-600 bg-white dark:bg-zinc-900 px-3 py-2",placeholder:"Secret para validar assinatura HMAC"},null,512),[[b,a(o).webhook_secret]]),e[24]||(e[24]=t("p",{class:"mt-1 text-xs text-zinc-500 dark:text-zinc-400"},"Usado para assinar o body do webhook (X-Getfy-Signature). Recomendado para produção.",-1)),a(o).errors.webhook_secret?(n(),d("p",ee,u(a(o).errors.webhook_secret),1)):m("",!0)]),t("div",null,[e[25]||(e[25]=t("label",{class:"block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"IPs permitidos (opcional)",-1)),i(t("textarea",{"onUpdate:modelValue":e[7]||(e[7]=r=>a(o).allowed_ips=r),rows:"3",class:"mt-1 block w-full rounded-lg border border-zinc-300 dark:border-zinc-600 bg-white dark:bg-zinc-900 px-3 py-2",placeholder:"Um IP por linha ou separados por vírgula. Vazio = todos permitidos."},null,512),[[b,a(o).allowed_ips]]),a(o).errors.allowed_ips?(n(),d("p",te,u(a(o).errors.allowed_ips),1)):m("",!0)]),t("div",ae,[i(t("input",{"onUpdate:modelValue":e[8]||(e[8]=r=>a(o).is_active=r),type:"checkbox",id:"is_active",class:"h-4 w-4 rounded border-zinc-300"},null,512),[[M,a(o).is_active]]),e[26]||(e[26]=t("label",{for:"is_active",class:"text-sm text-zinc-700 dark:text-zinc-300"},"Aplicação ativa",-1))]),t("div",oe,[x(k,{type:"submit",disabled:a(o).processing},{default:g(()=>[...e[27]||(e[27]=[p("Criar aplicação",-1)])]),_:1},8,["disabled"]),x(k,{as:"a",href:"/aplicacoes-api",variant:"outline"},{default:g(()=>[...e[28]||(e[28]=[p("Cancelar",-1)])]),_:1})])],32),x(L,{open:_.value,method:l.value,"method-label":v[l.value]||l.value,"primary-slug":l.value&&a(o).payment_gateways[l.value]||"",gateways:f.gateways_by_method[l.value]||[],"model-value":l.value?a(o).payment_gateways[l.value+"_redundancy"]||[]:[],"onUpdate:modelValue":e[9]||(e[9]=r=>l.value&&(a(o).payment_gateways[l.value+"_redundancy"]=r)),onSave:e[10]||(e[10]=r=>{l.value&&(a(o).payment_gateways[l.value+"_redundancy"]=r),_.value=!1}),onClose:e[11]||(e[11]=r=>_.value=!1)},null,8,["open","method","method-label","primary-slug","gateways","model-value"])]))}});export{ye as default}; +import{o as n,c as d,a as t,b as i,v as b,u as a,t as u,d as m,g as x,i as p,h as g,F as z,y as h,bF as P,f as R,bD as M,w as N,r as A}from"./runtime-dom.esm-bundler-OrSu0e66.js";import{u as B,_ as k}from"./Toggle-BD3dflqy.js";import{_ as I}from"./app-CT8pqccC.js";import{_ as L}from"./GatewayRedundancySidebar-DyzB1XM0.js";import{P as O}from"./palette-Bdslkkzt.js";import{S as $}from"./settings-2-DcGSmOYd.js";import"./chevron-up-LCq4Peo3.js";import"./chevron-down-Cr9wcM6o.js";import"./trash-2-Bxek5XZ9.js";import"./plus-C8Znz4zD.js";const j={class:"space-y-6"},q={key:0,class:"mt-1 text-sm text-red-600"},D={class:"panel-card-sm"},E={class:"flex items-center gap-2 text-sm font-semibold text-zinc-900 dark:text-white"},F={class:"mt-4 flex flex-wrap items-center gap-4"},X=["value","title"],G={key:0,class:"mt-2 text-sm text-red-600"},T={class:"panel-card-sm"},H={class:"flex items-center gap-2 text-sm font-semibold text-zinc-900 dark:text-white"},W={class:"mt-4 space-y-3"},Y={class:"w-24 text-sm font-medium text-zinc-700 dark:text-zinc-300"},Z=["onUpdate:modelValue"],J=["value"],K={key:0,class:"mt-1 text-sm text-red-600"},Q={key:0,class:"mt-1 text-sm text-red-600"},ee={key:0,class:"mt-1 text-sm text-red-600"},te={key:0,class:"mt-1 text-sm text-red-600"},ae={class:"flex items-center gap-2"},oe={class:"flex gap-2"},ye=Object.assign({layout:I},{__name:"Create",props:{gateways_by_method:{type:Object,default:()=>({})},default_payment_gateways:{type:Object,default:()=>({})}},setup(f){const w=f,s=w.default_payment_gateways||{},o=B({name:"",payment_gateways:{pix:s.pix??"",pix_redundancy:Array.isArray(s.pix_redundancy)?s.pix_redundancy:[],card:s.card??"",card_redundancy:Array.isArray(s.card_redundancy)?s.card_redundancy:[],boleto:s.boleto??"",boleto_redundancy:Array.isArray(s.boleto_redundancy)?s.boleto_redundancy:[],pix_auto:s.pix_auto??"",pix_auto_redundancy:Array.isArray(s.pix_auto_redundancy)?s.pix_auto_redundancy:[],apple_pay:s.apple_pay??"",apple_pay_redundancy:Array.isArray(s.apple_pay_redundancy)?s.apple_pay_redundancy:[],google_pay:s.google_pay??"",google_pay_redundancy:Array.isArray(s.google_pay_redundancy)?s.google_pay_redundancy:[],crypto:s.crypto??"",crypto_redundancy:Array.isArray(s.crypto_redundancy)?s.crypto_redundancy:[]},webhook_url:"",default_return_url:"",webhook_secret:"",allowed_ips:"",is_active:!0,checkout_sidebar_bg:""});function C(c){const e=w.gateways_by_method?.[c]??[];return[{value:"",label:"Nenhum"},...e.map(r=>({value:r.slug,label:r.name}))]}const v={pix:"PIX",card:"Cartão",boleto:"Boleto",pix_auto:"PIX automático",apple_pay:"Apple Pay",google_pay:"Google Pay",crypto:"Criptomoeda"},_=A(!1),l=A(null);function U(c){l.value=c,_.value=!0}function V(c){return c!==""&&c!=null}function S(){o.post("/aplicacoes-api")}return(c,e)=>(n(),d("div",j,[e[29]||(e[29]=t("div",null,[t("h1",{class:"text-2xl font-bold tracking-tight text-zinc-900 dark:text-white"},"Nova aplicação API"),t("p",{class:"mt-1 text-sm text-zinc-500 dark:text-zinc-400"}," Configure os gateways que esta aplicação poderá usar para processar pagamentos. ")],-1)),t("form",{class:"max-w-2xl space-y-6",onSubmit:N(S,["prevent"])},[t("div",null,[e[12]||(e[12]=t("label",{class:"block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Nome",-1)),i(t("input",{"onUpdate:modelValue":e[0]||(e[0]=r=>a(o).name=r),type:"text",required:"",class:"mt-1 block w-full rounded-lg border border-zinc-300 dark:border-zinc-600 bg-white dark:bg-zinc-900 px-3 py-2",placeholder:"Ex.: Loja XYZ"},null,512),[[b,a(o).name]]),a(o).errors.name?(n(),d("p",q,u(a(o).errors.name),1)):m("",!0)]),t("div",D,[t("h2",E,[x(a(O),{class:"h-4 w-4"}),e[13]||(e[13]=p(" Cor de fundo do checkout ",-1))]),e[15]||(e[15]=t("p",{class:"mt-1 text-xs text-zinc-500 dark:text-zinc-400"},"Cor da coluna esquerda (resumo) no Checkout Pro.",-1)),t("div",F,[t("input",{value:a(o).checkout_sidebar_bg||"#18181b",type:"color",class:"h-10 w-14 cursor-pointer rounded border border-zinc-300 bg-white p-1 dark:border-zinc-600",title:a(o).checkout_sidebar_bg||"#18181b",onInput:e[1]||(e[1]=r=>a(o).checkout_sidebar_bg=r.target.value)},null,40,X),i(t("input",{"onUpdate:modelValue":e[2]||(e[2]=r=>a(o).checkout_sidebar_bg=r),type:"text",class:"rounded-lg border border-zinc-300 dark:border-zinc-600 bg-white dark:bg-zinc-900 px-3 py-2 font-mono text-sm w-28",placeholder:"#18181b",maxlength:"7"},null,512),[[b,a(o).checkout_sidebar_bg]]),x(k,{type:"button",variant:"outline",size:"sm",onClick:e[3]||(e[3]=r=>a(o).checkout_sidebar_bg="")},{default:g(()=>[...e[14]||(e[14]=[p(" Restaurar padrão ",-1)])]),_:1})]),a(o).errors.checkout_sidebar_bg?(n(),d("p",G,u(a(o).errors.checkout_sidebar_bg),1)):m("",!0)]),t("div",T,[t("h2",H,[x(a($),{class:"h-4 w-4"}),e[16]||(e[16]=p(" Gateways por método de pagamento ",-1))]),e[18]||(e[18]=t("p",{class:"mt-1 text-sm text-zinc-500 dark:text-zinc-400"}," Selecione o gateway principal e a ordem de redundância para cada método. ",-1)),t("div",W,[(n(),d(z,null,h(["pix","card","boleto","apple_pay","google_pay","pix_auto","crypto"],r=>t("div",{key:r,class:"flex flex-wrap items-center gap-2"},[t("span",Y,u(v[r]||r),1),i(t("select",{"onUpdate:modelValue":y=>a(o).payment_gateways[r]=y,class:"rounded-lg border border-zinc-300 dark:border-zinc-600 bg-white dark:bg-zinc-900 px-3 py-2 text-sm min-w-[160px]"},[(n(!0),d(z,null,h(C(r),y=>(n(),d("option",{key:y.value,value:y.value},u(y.label),9,J))),128))],8,Z),[[P,a(o).payment_gateways[r]]]),V(a(o).payment_gateways[r])?(n(),R(k,{key:0,type:"button",variant:"outline",size:"sm",onClick:y=>U(r)},{default:g(()=>[...e[17]||(e[17]=[p(" Redundância ",-1)])]),_:1},8,["onClick"])):m("",!0)])),64))])]),t("div",null,[e[19]||(e[19]=t("label",{class:"block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"URL do webhook (opcional)",-1)),i(t("input",{"onUpdate:modelValue":e[4]||(e[4]=r=>a(o).webhook_url=r),type:"url",class:"mt-1 block w-full rounded-lg border border-zinc-300 dark:border-zinc-600 bg-white dark:bg-zinc-900 px-3 py-2",placeholder:"https://..."},null,512),[[b,a(o).webhook_url]]),e[20]||(e[20]=t("p",{class:"mt-1 text-xs text-zinc-500 dark:text-zinc-400"},"Receberá notificações de pagamento (order.completed, etc.).",-1)),a(o).errors.webhook_url?(n(),d("p",K,u(a(o).errors.webhook_url),1)):m("",!0)]),t("div",null,[e[21]||(e[21]=t("label",{class:"block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"URL de retorno padrão (opcional)",-1)),i(t("input",{"onUpdate:modelValue":e[5]||(e[5]=r=>a(o).default_return_url=r),type:"url",class:"mt-1 block w-full rounded-lg border border-zinc-300 dark:border-zinc-600 bg-white dark:bg-zinc-900 px-3 py-2",placeholder:"https://..."},null,512),[[b,a(o).default_return_url]]),e[22]||(e[22]=t("p",{class:"mt-1 text-xs text-zinc-500 dark:text-zinc-400"},[p(" Usada no Checkout Pro quando a sessão não enviar "),t("span",{class:"font-mono"},"return_url"),p(". ")],-1)),a(o).errors.default_return_url?(n(),d("p",Q,u(a(o).errors.default_return_url),1)):m("",!0)]),t("div",null,[e[23]||(e[23]=t("label",{class:"block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Webhook secret (opcional)",-1)),i(t("input",{"onUpdate:modelValue":e[6]||(e[6]=r=>a(o).webhook_secret=r),type:"password",autocomplete:"off",class:"mt-1 block w-full rounded-lg border border-zinc-300 dark:border-zinc-600 bg-white dark:bg-zinc-900 px-3 py-2",placeholder:"Secret para validar assinatura HMAC"},null,512),[[b,a(o).webhook_secret]]),e[24]||(e[24]=t("p",{class:"mt-1 text-xs text-zinc-500 dark:text-zinc-400"},"Usado para assinar o body do webhook (X-Getfy-Signature). Recomendado para produção.",-1)),a(o).errors.webhook_secret?(n(),d("p",ee,u(a(o).errors.webhook_secret),1)):m("",!0)]),t("div",null,[e[25]||(e[25]=t("label",{class:"block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"IPs permitidos (opcional)",-1)),i(t("textarea",{"onUpdate:modelValue":e[7]||(e[7]=r=>a(o).allowed_ips=r),rows:"3",class:"mt-1 block w-full rounded-lg border border-zinc-300 dark:border-zinc-600 bg-white dark:bg-zinc-900 px-3 py-2",placeholder:"Um IP por linha ou separados por vírgula. Vazio = todos permitidos."},null,512),[[b,a(o).allowed_ips]]),a(o).errors.allowed_ips?(n(),d("p",te,u(a(o).errors.allowed_ips),1)):m("",!0)]),t("div",ae,[i(t("input",{"onUpdate:modelValue":e[8]||(e[8]=r=>a(o).is_active=r),type:"checkbox",id:"is_active",class:"h-4 w-4 rounded border-zinc-300"},null,512),[[M,a(o).is_active]]),e[26]||(e[26]=t("label",{for:"is_active",class:"text-sm text-zinc-700 dark:text-zinc-300"},"Aplicação ativa",-1))]),t("div",oe,[x(k,{type:"submit",disabled:a(o).processing},{default:g(()=>[...e[27]||(e[27]=[p("Criar aplicação",-1)])]),_:1},8,["disabled"]),x(k,{as:"a",href:"/aplicacoes-api",variant:"outline"},{default:g(()=>[...e[28]||(e[28]=[p("Cancelar",-1)])]),_:1})])],32),x(L,{open:_.value,method:l.value,"method-label":v[l.value]||l.value,"primary-slug":l.value&&a(o).payment_gateways[l.value]||"",gateways:f.gateways_by_method[l.value]||[],"model-value":l.value?a(o).payment_gateways[l.value+"_redundancy"]||[]:[],"onUpdate:modelValue":e[9]||(e[9]=r=>l.value&&(a(o).payment_gateways[l.value+"_redundancy"]=r)),onSave:e[10]||(e[10]=r=>{l.value&&(a(o).payment_gateways[l.value+"_redundancy"]=r),_.value=!1}),onClose:e[11]||(e[11]=r=>_.value=!1)},null,8,["open","method","method-label","primary-slug","gateways","model-value"])]))}});export{ye as default}; diff --git a/public/build/assets/Create-CNBcioc9.js b/public/build/assets/Create-DJroNf7_.js similarity index 97% rename from public/build/assets/Create-CNBcioc9.js rename to public/build/assets/Create-DJroNf7_.js index c494804a..14295437 100644 --- a/public/build/assets/Create-CNBcioc9.js +++ b/public/build/assets/Create-DJroNf7_.js @@ -1 +1 @@ -import{o as r,c as o,a as t,g as d,h as u,i,u as s,d as m,b as p,v as g,t as n,bE as w,bF as M,F as C,y as V,w as N,r as v}from"./runtime-dom.esm-bundler-OrSu0e66.js";import{u as S,l as _,_ as y,b as q}from"./Toggle-BD3dflqy.js";import{_ as R}from"./app-CKysWbKx.js";const T={class:"mx-auto max-w-4xl space-y-6"},B={class:"flex items-center justify-between"},D={key:0,class:"rounded-xl border border-amber-200 bg-amber-50 p-4 dark:border-amber-800 dark:bg-amber-950/30"},F={class:"text-sm font-medium text-amber-800 dark:text-amber-200"},A={key:0,class:"mt-1 text-sm text-red-600"},E={key:0,class:"mt-1 text-sm text-red-600"},L={class:"flex items-center justify-between"},$={key:0,class:"mt-1 text-sm text-red-600"},H={class:"mt-2 space-y-2"},X={class:"flex items-center gap-2"},O={class:"flex items-center gap-2"},W={key:0,class:"ml-6 mt-2"},G=["value"],I={class:"mt-3"},J={key:0,class:"ml-2 text-sm text-zinc-600 dark:text-zinc-400"},K={key:1,class:"mt-2 list-inside list-disc text-xs text-zinc-500 dark:text-zinc-400"},P={class:"flex flex-wrap items-center gap-3 border-t border-zinc-200 pt-4 dark:border-zinc-700"},ee=Object.assign({layout:R},{__name:"Create",props:{email_configured:{type:Boolean,default:!1},products:{type:Array,default:()=>[]},default_body_html:{type:String,default:""}},setup(k){const z=k,l=S({name:"",subject:"",body_html:z.default_body_html||"",filter_config:{all_customers:!0,product_ids:[]}}),f=v(null),b=v([]),x=v(!1);function j(){l.body_html=z.default_body_html||""}async function U(){x.value=!0,f.value=null,b.value=[];try{const c=await q.post("/email-marketing/preview-recipients",{filter_config:l.filter_config},{headers:{"X-Requested-With":"XMLHttpRequest",Accept:"application/json"}});c&&c.data&&(f.value=c.data.count,b.value=c.data.sample||[])}catch{f.value=0}finally{x.value=!1}}return(c,e)=>(r(),o("div",T,[t("div",B,[e[8]||(e[8]=t("h1",{class:"text-2xl font-bold text-zinc-900 dark:text-white"},"Nova campanha",-1)),d(s(_),{href:"/email-marketing",class:"text-sm text-zinc-600 hover:underline dark:text-zinc-400"},{default:u(()=>[...e[7]||(e[7]=[i("Voltar",-1)])]),_:1})]),k.email_configured?m("",!0):(r(),o("div",D,[t("p",F,[e[10]||(e[10]=i(" Configure o e-mail em ",-1)),d(s(_),{href:"/configuracoes",class:"underline"},{default:u(()=>[...e[9]||(e[9]=[i("Configurações > E-mail",-1)])]),_:1}),e[11]||(e[11]=i(" antes de disparar. ",-1))])])),t("form",{class:"panel-card-lg space-y-6",onSubmit:e[6]||(e[6]=N(a=>s(l).post("/email-marketing"),["prevent"]))},[t("div",null,[e[12]||(e[12]=t("label",{class:"block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Nome da campanha",-1)),p(t("input",{"onUpdate:modelValue":e[0]||(e[0]=a=>s(l).name=a),type:"text",required:"",class:"mt-1 block w-full rounded-lg border border-zinc-300 dark:border-zinc-600 bg-white dark:bg-zinc-900 px-3 py-2"},null,512),[[g,s(l).name]]),s(l).errors.name?(r(),o("p",A,n(s(l).errors.name),1)):m("",!0)]),t("div",null,[e[13]||(e[13]=t("label",{class:"block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Assunto do e-mail",-1)),p(t("input",{"onUpdate:modelValue":e[1]||(e[1]=a=>s(l).subject=a),type:"text",required:"",class:"mt-1 block w-full rounded-lg border border-zinc-300 dark:border-zinc-600 bg-white dark:bg-zinc-900 px-3 py-2"},null,512),[[g,s(l).subject]]),s(l).errors.subject?(r(),o("p",E,n(s(l).errors.subject),1)):m("",!0)]),t("div",null,[t("div",L,[e[15]||(e[15]=t("label",{class:"block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Corpo do e-mail (HTML)",-1)),d(y,{type:"button",variant:"secondary",size:"sm",onClick:j},{default:u(()=>[...e[14]||(e[14]=[i("Usar template padrão",-1)])]),_:1})]),e[16]||(e[16]=t("p",{class:"mt-0.5 text-xs text-zinc-500 dark:text-zinc-400"},"Use {nome} e {email} para personalizar.",-1)),p(t("textarea",{"onUpdate:modelValue":e[2]||(e[2]=a=>s(l).body_html=a),rows:"14",required:"",class:"mt-1 block w-full rounded-lg border border-zinc-300 dark:border-zinc-600 bg-white dark:bg-zinc-900 px-3 py-2 font-mono text-sm"},null,512),[[g,s(l).body_html]]),s(l).errors.body_html?(r(),o("p",$,n(s(l).errors.body_html),1)):m("",!0)]),t("div",null,[e[19]||(e[19]=t("label",{class:"block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Destinatários",-1)),t("div",H,[t("label",X,[p(t("input",{"onUpdate:modelValue":e[3]||(e[3]=a=>s(l).filter_config.all_customers=a),type:"radio",value:!0,class:"h-4 w-4"},null,512),[[w,s(l).filter_config.all_customers]]),e[17]||(e[17]=t("span",{class:"text-sm"},"Todos os compradores",-1))]),t("label",O,[p(t("input",{"onUpdate:modelValue":e[4]||(e[4]=a=>s(l).filter_config.all_customers=a),type:"radio",value:!1,class:"h-4 w-4"},null,512),[[w,s(l).filter_config.all_customers]]),e[18]||(e[18]=t("span",{class:"text-sm"},"Compradores de produto(s) específico(s)",-1))]),s(l).filter_config.all_customers===!1?(r(),o("div",W,[p(t("select",{"onUpdate:modelValue":e[5]||(e[5]=a=>s(l).filter_config.product_ids=a),multiple:"",class:"block w-full max-w-md rounded-lg border border-zinc-300 dark:border-zinc-600 bg-white dark:bg-zinc-900 px-3 py-2 text-sm"},[(r(!0),o(C,null,V(k.products,a=>(r(),o("option",{key:a.id,value:a.id},n(a.name),9,G))),128))],512),[[M,s(l).filter_config.product_ids]])])):m("",!0)]),t("div",I,[d(y,{type:"button",variant:"secondary",size:"sm",disabled:x.value,onClick:U},{default:u(()=>[i(n(x.value?"Carregando...":"Ver destinatários"),1)]),_:1},8,["disabled"]),f.value!==null?(r(),o("span",J,n(f.value)+" destinatário(s) ",1)):m("",!0),b.value.length?(r(),o("ul",K,[(r(!0),o(C,null,V(b.value,(a,h)=>(r(),o("li",{key:h},n(a.email)+" ("+n(a.name)+")",1))),128))])):m("",!0)])]),t("div",P,[d(y,{type:"submit",variant:"primary",disabled:s(l).processing},{default:u(()=>[...e[20]||(e[20]=[i("Salvar rascunho",-1)])]),_:1},8,["disabled"]),d(s(_),{href:"/email-marketing"},{default:u(()=>[d(y,{type:"button",variant:"outline"},{default:u(()=>[...e[21]||(e[21]=[i("Cancelar",-1)])]),_:1})]),_:1})])],32)]))}});export{ee as default}; +import{o as r,c as o,a as t,g as d,h as u,i,u as s,d as m,b as p,v as g,t as n,bE as w,bF as M,F as C,y as V,w as N,r as v}from"./runtime-dom.esm-bundler-OrSu0e66.js";import{u as S,l as _,_ as y,b as q}from"./Toggle-BD3dflqy.js";import{_ as R}from"./app-CT8pqccC.js";const T={class:"mx-auto max-w-4xl space-y-6"},B={class:"flex items-center justify-between"},D={key:0,class:"rounded-xl border border-amber-200 bg-amber-50 p-4 dark:border-amber-800 dark:bg-amber-950/30"},F={class:"text-sm font-medium text-amber-800 dark:text-amber-200"},A={key:0,class:"mt-1 text-sm text-red-600"},E={key:0,class:"mt-1 text-sm text-red-600"},L={class:"flex items-center justify-between"},$={key:0,class:"mt-1 text-sm text-red-600"},H={class:"mt-2 space-y-2"},X={class:"flex items-center gap-2"},O={class:"flex items-center gap-2"},W={key:0,class:"ml-6 mt-2"},G=["value"],I={class:"mt-3"},J={key:0,class:"ml-2 text-sm text-zinc-600 dark:text-zinc-400"},K={key:1,class:"mt-2 list-inside list-disc text-xs text-zinc-500 dark:text-zinc-400"},P={class:"flex flex-wrap items-center gap-3 border-t border-zinc-200 pt-4 dark:border-zinc-700"},ee=Object.assign({layout:R},{__name:"Create",props:{email_configured:{type:Boolean,default:!1},products:{type:Array,default:()=>[]},default_body_html:{type:String,default:""}},setup(k){const z=k,l=S({name:"",subject:"",body_html:z.default_body_html||"",filter_config:{all_customers:!0,product_ids:[]}}),f=v(null),b=v([]),x=v(!1);function j(){l.body_html=z.default_body_html||""}async function U(){x.value=!0,f.value=null,b.value=[];try{const c=await q.post("/email-marketing/preview-recipients",{filter_config:l.filter_config},{headers:{"X-Requested-With":"XMLHttpRequest",Accept:"application/json"}});c&&c.data&&(f.value=c.data.count,b.value=c.data.sample||[])}catch{f.value=0}finally{x.value=!1}}return(c,e)=>(r(),o("div",T,[t("div",B,[e[8]||(e[8]=t("h1",{class:"text-2xl font-bold text-zinc-900 dark:text-white"},"Nova campanha",-1)),d(s(_),{href:"/email-marketing",class:"text-sm text-zinc-600 hover:underline dark:text-zinc-400"},{default:u(()=>[...e[7]||(e[7]=[i("Voltar",-1)])]),_:1})]),k.email_configured?m("",!0):(r(),o("div",D,[t("p",F,[e[10]||(e[10]=i(" Configure o e-mail em ",-1)),d(s(_),{href:"/configuracoes",class:"underline"},{default:u(()=>[...e[9]||(e[9]=[i("Configurações > E-mail",-1)])]),_:1}),e[11]||(e[11]=i(" antes de disparar. ",-1))])])),t("form",{class:"panel-card-lg space-y-6",onSubmit:e[6]||(e[6]=N(a=>s(l).post("/email-marketing"),["prevent"]))},[t("div",null,[e[12]||(e[12]=t("label",{class:"block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Nome da campanha",-1)),p(t("input",{"onUpdate:modelValue":e[0]||(e[0]=a=>s(l).name=a),type:"text",required:"",class:"mt-1 block w-full rounded-lg border border-zinc-300 dark:border-zinc-600 bg-white dark:bg-zinc-900 px-3 py-2"},null,512),[[g,s(l).name]]),s(l).errors.name?(r(),o("p",A,n(s(l).errors.name),1)):m("",!0)]),t("div",null,[e[13]||(e[13]=t("label",{class:"block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Assunto do e-mail",-1)),p(t("input",{"onUpdate:modelValue":e[1]||(e[1]=a=>s(l).subject=a),type:"text",required:"",class:"mt-1 block w-full rounded-lg border border-zinc-300 dark:border-zinc-600 bg-white dark:bg-zinc-900 px-3 py-2"},null,512),[[g,s(l).subject]]),s(l).errors.subject?(r(),o("p",E,n(s(l).errors.subject),1)):m("",!0)]),t("div",null,[t("div",L,[e[15]||(e[15]=t("label",{class:"block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Corpo do e-mail (HTML)",-1)),d(y,{type:"button",variant:"secondary",size:"sm",onClick:j},{default:u(()=>[...e[14]||(e[14]=[i("Usar template padrão",-1)])]),_:1})]),e[16]||(e[16]=t("p",{class:"mt-0.5 text-xs text-zinc-500 dark:text-zinc-400"},"Use {nome} e {email} para personalizar.",-1)),p(t("textarea",{"onUpdate:modelValue":e[2]||(e[2]=a=>s(l).body_html=a),rows:"14",required:"",class:"mt-1 block w-full rounded-lg border border-zinc-300 dark:border-zinc-600 bg-white dark:bg-zinc-900 px-3 py-2 font-mono text-sm"},null,512),[[g,s(l).body_html]]),s(l).errors.body_html?(r(),o("p",$,n(s(l).errors.body_html),1)):m("",!0)]),t("div",null,[e[19]||(e[19]=t("label",{class:"block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Destinatários",-1)),t("div",H,[t("label",X,[p(t("input",{"onUpdate:modelValue":e[3]||(e[3]=a=>s(l).filter_config.all_customers=a),type:"radio",value:!0,class:"h-4 w-4"},null,512),[[w,s(l).filter_config.all_customers]]),e[17]||(e[17]=t("span",{class:"text-sm"},"Todos os compradores",-1))]),t("label",O,[p(t("input",{"onUpdate:modelValue":e[4]||(e[4]=a=>s(l).filter_config.all_customers=a),type:"radio",value:!1,class:"h-4 w-4"},null,512),[[w,s(l).filter_config.all_customers]]),e[18]||(e[18]=t("span",{class:"text-sm"},"Compradores de produto(s) específico(s)",-1))]),s(l).filter_config.all_customers===!1?(r(),o("div",W,[p(t("select",{"onUpdate:modelValue":e[5]||(e[5]=a=>s(l).filter_config.product_ids=a),multiple:"",class:"block w-full max-w-md rounded-lg border border-zinc-300 dark:border-zinc-600 bg-white dark:bg-zinc-900 px-3 py-2 text-sm"},[(r(!0),o(C,null,V(k.products,a=>(r(),o("option",{key:a.id,value:a.id},n(a.name),9,G))),128))],512),[[M,s(l).filter_config.product_ids]])])):m("",!0)]),t("div",I,[d(y,{type:"button",variant:"secondary",size:"sm",disabled:x.value,onClick:U},{default:u(()=>[i(n(x.value?"Carregando...":"Ver destinatários"),1)]),_:1},8,["disabled"]),f.value!==null?(r(),o("span",J,n(f.value)+" destinatário(s) ",1)):m("",!0),b.value.length?(r(),o("ul",K,[(r(!0),o(C,null,V(b.value,(a,h)=>(r(),o("li",{key:h},n(a.email)+" ("+n(a.name)+")",1))),128))])):m("",!0)])]),t("div",P,[d(y,{type:"submit",variant:"primary",disabled:s(l).processing},{default:u(()=>[...e[20]||(e[20]=[i("Salvar rascunho",-1)])]),_:1},8,["disabled"]),d(s(_),{href:"/email-marketing"},{default:u(()=>[d(y,{type:"button",variant:"outline"},{default:u(()=>[...e[21]||(e[21]=[i("Cancelar",-1)])]),_:1})]),_:1})])],32)]))}});export{ee as default}; diff --git a/public/build/assets/Create-Dh96_fBK.js b/public/build/assets/Create-DRVaT4wK.js similarity index 98% rename from public/build/assets/Create-Dh96_fBK.js rename to public/build/assets/Create-DRVaT4wK.js index 4b0697e7..2f59b27b 100644 --- a/public/build/assets/Create-Dh96_fBK.js +++ b/public/build/assets/Create-DRVaT4wK.js @@ -1 +1 @@ -import{o as i,c as a,a as t,b as d,v as n,u as r,t as l,d as m,g as u,h as p,i as x,w as c}from"./runtime-dom.esm-bundler-OrSu0e66.js";import{u as b,_ as f,l as k}from"./Toggle-BD3dflqy.js";import{_ as z}from"./app-CKysWbKx.js";const w={class:"space-y-6"},g={key:0,class:"mt-1 text-sm text-red-600 dark:text-red-400"},y={key:0,class:"mt-1 text-sm text-red-600 dark:text-red-400"},v={key:0,class:"mt-1 text-sm text-red-600 dark:text-red-400"},V={class:"flex gap-2"},B=Object.assign({layout:z},{__name:"Create",setup(_){const o=b({name:"",email:"",password:"",password_confirmation:""});return(C,e)=>(i(),a("div",w,[e[11]||(e[11]=t("div",null,[t("h1",{class:"text-2xl font-bold tracking-tight text-zinc-900 dark:text-white"}," Novo infoprodutor "),t("p",{class:"mt-1 text-sm text-zinc-500 dark:text-zinc-400"}," Cadastre um novo usuário com acesso ao painel como infoprodutor. ")],-1)),t("form",{class:"max-w-xl space-y-4",onSubmit:e[4]||(e[4]=c(s=>r(o).post("/usuarios"),["prevent"]))},[t("div",null,[e[5]||(e[5]=t("label",{for:"name",class:"block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Nome",-1)),d(t("input",{id:"name","onUpdate:modelValue":e[0]||(e[0]=s=>r(o).name=s),type:"text",required:"",class:"mt-1 block w-full rounded-lg border border-zinc-300 dark:border-zinc-600 bg-white dark:bg-zinc-900 px-3 py-2 text-zinc-900 dark:text-zinc-100"},null,512),[[n,r(o).name]]),r(o).errors.name?(i(),a("p",g,l(r(o).errors.name),1)):m("",!0)]),t("div",null,[e[6]||(e[6]=t("label",{for:"email",class:"block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"E-mail",-1)),d(t("input",{id:"email","onUpdate:modelValue":e[1]||(e[1]=s=>r(o).email=s),type:"email",required:"",class:"mt-1 block w-full rounded-lg border border-zinc-300 dark:border-zinc-600 bg-white dark:bg-zinc-900 px-3 py-2 text-zinc-900 dark:text-zinc-100"},null,512),[[n,r(o).email]]),r(o).errors.email?(i(),a("p",y,l(r(o).errors.email),1)):m("",!0)]),t("div",null,[e[7]||(e[7]=t("label",{for:"password",class:"block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Senha",-1)),d(t("input",{id:"password","onUpdate:modelValue":e[2]||(e[2]=s=>r(o).password=s),type:"password",required:"",minlength:"8",class:"mt-1 block w-full rounded-lg border border-zinc-300 dark:border-zinc-600 bg-white dark:bg-zinc-900 px-3 py-2 text-zinc-900 dark:text-zinc-100"},null,512),[[n,r(o).password]]),r(o).errors.password?(i(),a("p",v,l(r(o).errors.password),1)):m("",!0)]),t("div",null,[e[8]||(e[8]=t("label",{for:"password_confirmation",class:"block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Confirmar senha",-1)),d(t("input",{id:"password_confirmation","onUpdate:modelValue":e[3]||(e[3]=s=>r(o).password_confirmation=s),type:"password",required:"",minlength:"8",class:"mt-1 block w-full rounded-lg border border-zinc-300 dark:border-zinc-600 bg-white dark:bg-zinc-900 px-3 py-2 text-zinc-900 dark:text-zinc-100"},null,512),[[n,r(o).password_confirmation]])]),t("div",V,[u(f,{type:"submit",disabled:r(o).processing},{default:p(()=>[...e[9]||(e[9]=[x(" Cadastrar ",-1)])]),_:1},8,["disabled"]),u(r(k),{href:"/usuarios",class:"inline-flex items-center rounded-lg border border-zinc-300 dark:border-zinc-600 px-4 py-2 text-sm font-medium text-zinc-700 dark:text-zinc-300 hover:bg-zinc-50 dark:hover:bg-zinc-800"},{default:p(()=>[...e[10]||(e[10]=[x(" Cancelar ",-1)])]),_:1})])],32)]))}});export{B as default}; +import{o as i,c as a,a as t,b as d,v as n,u as r,t as l,d as m,g as u,h as p,i as x,w as c}from"./runtime-dom.esm-bundler-OrSu0e66.js";import{u as b,_ as f,l as k}from"./Toggle-BD3dflqy.js";import{_ as z}from"./app-CT8pqccC.js";const w={class:"space-y-6"},g={key:0,class:"mt-1 text-sm text-red-600 dark:text-red-400"},y={key:0,class:"mt-1 text-sm text-red-600 dark:text-red-400"},v={key:0,class:"mt-1 text-sm text-red-600 dark:text-red-400"},V={class:"flex gap-2"},B=Object.assign({layout:z},{__name:"Create",setup(_){const o=b({name:"",email:"",password:"",password_confirmation:""});return(C,e)=>(i(),a("div",w,[e[11]||(e[11]=t("div",null,[t("h1",{class:"text-2xl font-bold tracking-tight text-zinc-900 dark:text-white"}," Novo infoprodutor "),t("p",{class:"mt-1 text-sm text-zinc-500 dark:text-zinc-400"}," Cadastre um novo usuário com acesso ao painel como infoprodutor. ")],-1)),t("form",{class:"max-w-xl space-y-4",onSubmit:e[4]||(e[4]=c(s=>r(o).post("/usuarios"),["prevent"]))},[t("div",null,[e[5]||(e[5]=t("label",{for:"name",class:"block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Nome",-1)),d(t("input",{id:"name","onUpdate:modelValue":e[0]||(e[0]=s=>r(o).name=s),type:"text",required:"",class:"mt-1 block w-full rounded-lg border border-zinc-300 dark:border-zinc-600 bg-white dark:bg-zinc-900 px-3 py-2 text-zinc-900 dark:text-zinc-100"},null,512),[[n,r(o).name]]),r(o).errors.name?(i(),a("p",g,l(r(o).errors.name),1)):m("",!0)]),t("div",null,[e[6]||(e[6]=t("label",{for:"email",class:"block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"E-mail",-1)),d(t("input",{id:"email","onUpdate:modelValue":e[1]||(e[1]=s=>r(o).email=s),type:"email",required:"",class:"mt-1 block w-full rounded-lg border border-zinc-300 dark:border-zinc-600 bg-white dark:bg-zinc-900 px-3 py-2 text-zinc-900 dark:text-zinc-100"},null,512),[[n,r(o).email]]),r(o).errors.email?(i(),a("p",y,l(r(o).errors.email),1)):m("",!0)]),t("div",null,[e[7]||(e[7]=t("label",{for:"password",class:"block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Senha",-1)),d(t("input",{id:"password","onUpdate:modelValue":e[2]||(e[2]=s=>r(o).password=s),type:"password",required:"",minlength:"8",class:"mt-1 block w-full rounded-lg border border-zinc-300 dark:border-zinc-600 bg-white dark:bg-zinc-900 px-3 py-2 text-zinc-900 dark:text-zinc-100"},null,512),[[n,r(o).password]]),r(o).errors.password?(i(),a("p",v,l(r(o).errors.password),1)):m("",!0)]),t("div",null,[e[8]||(e[8]=t("label",{for:"password_confirmation",class:"block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Confirmar senha",-1)),d(t("input",{id:"password_confirmation","onUpdate:modelValue":e[3]||(e[3]=s=>r(o).password_confirmation=s),type:"password",required:"",minlength:"8",class:"mt-1 block w-full rounded-lg border border-zinc-300 dark:border-zinc-600 bg-white dark:bg-zinc-900 px-3 py-2 text-zinc-900 dark:text-zinc-100"},null,512),[[n,r(o).password_confirmation]])]),t("div",V,[u(f,{type:"submit",disabled:r(o).processing},{default:p(()=>[...e[9]||(e[9]=[x(" Cadastrar ",-1)])]),_:1},8,["disabled"]),u(r(k),{href:"/usuarios",class:"inline-flex items-center rounded-lg border border-zinc-300 dark:border-zinc-600 px-4 py-2 text-sm font-medium text-zinc-700 dark:text-zinc-300 hover:bg-zinc-50 dark:hover:bg-zinc-800"},{default:p(()=>[...e[10]||(e[10]=[x(" Cancelar ",-1)])]),_:1})])],32)]))}});export{B as default}; diff --git a/public/build/assets/Cupons-QghHjTHF.js b/public/build/assets/Cupons-CrtSgRbD.js similarity index 99% rename from public/build/assets/Cupons-QghHjTHF.js rename to public/build/assets/Cupons-CrtSgRbD.js index 2416ae71..67de561e 100644 --- a/public/build/assets/Cupons-QghHjTHF.js +++ b/public/build/assets/Cupons-CrtSgRbD.js @@ -1 +1 @@ -import{c as F,u as O,X as A,i as B,_ as h,r as L}from"./Toggle-BD3dflqy.js";import{C as q,_ as R}from"./app-CKysWbKx.js";import{_ as I}from"./ProdutosTabs-CmQIbd5Z.js";import{k as G,l as H,A as X,o as a,f as j,c,a as e,t as l,g as u,u as i,w as D,b as k,v as g,d as p,bF as Z,s as E,bG as J,F as N,y as P,i as x,h as w,T as U,n as M,r as C}from"./runtime-dom.esm-bundler-OrSu0e66.js";import{C as K}from"./chevron-down-Cr9wcM6o.js";import{P as Q}from"./pencil-De6Ibr3Z.js";import{T as W}from"./trash-2-Bxek5XZ9.js";import"./HorizontalScrollTabs-B3gLPvR5.js";import"./handshake-ChMiz3jx.js";import"./user-plus-Ci3SykZs.js";const Y=F("ticket",[["path",{d:"M2 9a3 3 0 0 1 0 6v2a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2v-2a3 3 0 0 1 0-6V7a2 2 0 0 0-2-2H4a2 2 0 0 0-2 2Z",key:"qn84l0"}],["path",{d:"M13 5v2",key:"dyzc3o"}],["path",{d:"M13 17v2",key:"1ont0d"}],["path",{d:"M13 11v2",key:"1wjjxi"}]]),ee=["aria-labelledby"],te={class:"flex shrink-0 items-center justify-between rounded-tl-2xl border-b border-zinc-200 px-4 py-3 dark:border-zinc-800"},oe=["id"],re={class:"flex-1 overflow-y-auto px-4 py-4"},ie={key:0,class:"mt-1 text-sm text-red-600 dark:text-red-400"},ne=["placeholder"],se={key:0,class:"mt-1 text-sm text-red-600 dark:text-red-400"},de={class:"relative mt-1","data-cupom-products-dropdown":""},le=["aria-expanded"],ae={class:"truncate"},ce={class:"absolute left-0 right-0 top-full z-50 mt-1 max-h-56 overflow-auto rounded-xl border border-zinc-200 bg-white py-1 shadow-lg dark:border-zinc-700 dark:bg-zinc-800",role:"listbox"},ue=["aria-selected","onClick"],pe={key:0,class:"px-3 py-2 text-sm text-zinc-500 dark:text-zinc-400"},me={key:0,class:"mt-1 text-sm text-red-600 dark:text-red-400"},xe={key:0,class:"mt-1 text-sm text-red-600 dark:text-red-400"},fe={key:0,class:"mt-1 text-sm text-red-600 dark:text-red-400"},be={class:"flex items-center gap-2"},ve={class:"flex gap-2 pt-2"},ke={__name:"CupomSidebar",props:{open:{type:Boolean,default:!1},produtos:{type:Array,default:()=>[]},coupon:{type:Object,default:null}},emits:["close","success"],setup(f,{emit:_}){const n=f,m=_,b=M(()=>!!n.coupon),v=C(!1),t=O({code:"",type:"percent",value:"",product_ids:[],min_amount:"",max_uses:"",valid_from:"",valid_until:"",is_active:!0});function V(r){t.product_ids.indexOf(r)===-1?t.product_ids=[...t.product_ids,r]:t.product_ids=t.product_ids.filter(s=>s!==r)}function z(r){return t.product_ids.includes(r)}const S=M(()=>{if(!t.product_ids.length||t.product_ids.length===n.produtos.length)return"Todos os produtos";if(t.product_ids.length===1){const r=n.produtos.find(o=>o.id===t.product_ids[0]);return r?r.name:"1 produto"}return`${t.product_ids.length} produtos selecionados`});function T(){v.value=!1}function $(r){const o=document.querySelector("[data-cupom-products-dropdown]");o&&!o.contains(r.target)&&T()}G(()=>{document.addEventListener("click",$)}),H(()=>{document.removeEventListener("click",$)});function y(){t.reset(),m("close")}function d(){const r={code:t.code,type:t.type,value:parseFloat(t.value)||0,product_ids:t.product_ids,min_amount:t.min_amount?parseFloat(t.min_amount):null,max_uses:t.max_uses?parseInt(t.max_uses,10):null,valid_from:t.valid_from||null,valid_until:t.valid_until||null,is_active:t.is_active};b.value?t.transform(()=>r).put(`/produtos/cupons/${n.coupon.id}`,{onSuccess:()=>{y(),m("success")}}):t.transform(()=>r).post("/produtos/cupons",{onSuccess:()=>{y(),m("success")}})}return X(()=>[n.open,n.coupon],()=>{n.open&&n.coupon?(t.code=n.coupon.code,t.type=n.coupon.type,t.value=String(n.coupon.value??""),t.product_ids=Array.isArray(n.coupon.product_ids)?[...n.coupon.product_ids]:n.coupon.product_id?[n.coupon.product_id]:[],t.min_amount=n.coupon.min_amount!=null?String(n.coupon.min_amount):"",t.max_uses=n.coupon.max_uses!=null?String(n.coupon.max_uses):"",t.valid_from=n.coupon.valid_from?n.coupon.valid_from.slice(0,16):"",t.valid_until=n.coupon.valid_until?n.coupon.valid_until.slice(0,16):"",t.is_active=!!n.coupon.is_active):n.open&&!n.coupon&&(t.reset(),t.type="percent",t.is_active=!0,t.product_ids=[])},{immediate:!0}),(r,o)=>(a(),j(U,{to:"body"},[f.open?(a(),c("div",{key:0,class:"fixed inset-0 z-[100000] flex justify-end","aria-modal":"true",role:"dialog","aria-labelledby":b.value?"sidebar-edit-cupom":"sidebar-new-cupom"},[e("div",{class:"fixed inset-0 bg-zinc-900/50 dark:bg-zinc-950/70","aria-hidden":"true",onClick:y}),e("aside",{class:"relative z-[100001] flex h-full w-full max-w-md flex-col rounded-l-2xl bg-white shadow-xl dark:bg-zinc-900 sm:w-[420px]",onClick:o[9]||(o[9]=D(()=>{},["stop"]))},[e("div",te,[e("h2",{id:b.value?"sidebar-edit-cupom":"sidebar-new-cupom",class:"text-lg font-semibold text-zinc-900 dark:text-white"},l(b.value?"Editar cupom":"Novo cupom"),9,oe),e("button",{type:"button",class:"rounded-lg p-2 text-zinc-500 transition-colors hover:bg-zinc-100 hover:text-zinc-700 dark:hover:bg-zinc-800 dark:hover:text-zinc-300","aria-label":"Fechar",onClick:y},[u(i(A),{class:"h-5 w-5"})])]),e("div",re,[e("form",{class:"space-y-4",onSubmit:D(d,["prevent"])},[e("div",null,[o[10]||(o[10]=e("label",{class:"block text-sm font-medium text-zinc-700 dark:text-zinc-300"}," Código * ",-1)),k(e("input",{"onUpdate:modelValue":o[0]||(o[0]=s=>i(t).code=s),type:"text",required:"",class:"mt-1 block w-full rounded-lg border border-zinc-300 bg-white px-3 py-2 text-zinc-900 placeholder-zinc-400 focus:border-[var(--color-primary)] focus:outline-none focus:ring-1 focus:ring-[var(--color-primary)] dark:border-zinc-600 dark:bg-zinc-800 dark:text-white dark:placeholder-zinc-500",placeholder:"Ex: PROMO20"},null,512),[[g,i(t).code]]),i(t).errors.code?(a(),c("p",ie,l(i(t).errors.code),1)):p("",!0)]),e("div",null,[o[12]||(o[12]=e("label",{class:"block text-sm font-medium text-zinc-700 dark:text-zinc-300"}," Tipo * ",-1)),k(e("select",{"onUpdate:modelValue":o[1]||(o[1]=s=>i(t).type=s),required:"",class:"mt-1 block w-full rounded-lg border border-zinc-300 bg-white px-3 py-2 text-zinc-900 focus:border-[var(--color-primary)] focus:outline-none focus:ring-1 focus:ring-[var(--color-primary)] dark:border-zinc-600 dark:bg-zinc-800 dark:text-white"},[...o[11]||(o[11]=[e("option",{value:"percent"},"Percentual (%)",-1),e("option",{value:"fixed"},"Valor fixo (R$)",-1)])],512),[[Z,i(t).type]])]),e("div",null,[o[13]||(o[13]=e("label",{class:"block text-sm font-medium text-zinc-700 dark:text-zinc-300"}," Valor * ",-1)),k(e("input",{"onUpdate:modelValue":o[2]||(o[2]=s=>i(t).value=s),type:"number",step:"0.01",min:"0",required:"",class:"mt-1 block w-full rounded-lg border border-zinc-300 bg-white px-3 py-2 text-zinc-900 placeholder-zinc-400 focus:border-[var(--color-primary)] focus:outline-none focus:ring-1 focus:ring-[var(--color-primary)] dark:border-zinc-600 dark:bg-zinc-800 dark:text-white dark:placeholder-zinc-500",placeholder:i(t).type==="percent"?"0–100":"0,00"},null,8,ne),[[g,i(t).value]]),i(t).errors.value?(a(),c("p",se,l(i(t).errors.value),1)):p("",!0)]),e("div",null,[o[14]||(o[14]=e("label",{class:"block text-sm font-medium text-zinc-700 dark:text-zinc-300"}," Produtos ",-1)),e("div",de,[e("button",{type:"button",class:"flex w-full items-center justify-between rounded-lg border border-zinc-300 bg-white px-3 py-2 text-left text-zinc-900 focus:border-[var(--color-primary)] focus:outline-none focus:ring-1 focus:ring-[var(--color-primary)] dark:border-zinc-600 dark:bg-zinc-800 dark:text-white","aria-haspopup":"listbox","aria-expanded":v.value,onClick:o[3]||(o[3]=s=>v.value=!v.value)},[e("span",ae,l(S.value),1),u(i(K),{class:E(["h-4 w-4 shrink-0 transition-transform",{"rotate-180":v.value}])},null,8,["class"])],8,le),k(e("div",ce,[(a(!0),c(N,null,P(f.produtos,s=>(a(),c("button",{key:s.id,type:"button",role:"option","aria-selected":z(s.id),class:"flex w-full items-center gap-2 px-3 py-2 text-left text-sm text-zinc-700 hover:bg-zinc-100 dark:text-zinc-300 dark:hover:bg-zinc-700",onClick:qe=>V(s.id)},[e("span",{class:E(["flex h-4 w-4 shrink-0 items-center justify-center rounded border border-zinc-300 dark:border-zinc-600",z(s.id)?"bg-[var(--color-primary)] border-[var(--color-primary)] text-white":"bg-white dark:bg-zinc-800"])},[z(s.id)?(a(),j(i(q),{key:0,class:"h-3 w-3","stroke-width":"3"})):p("",!0)],2),x(" "+l(s.name),1)],8,ue))),128)),f.produtos.length?p("",!0):(a(),c("p",pe," Nenhum produto cadastrado. "))],512),[[J,v.value]])]),o[15]||(o[15]=e("p",{class:"mt-1 text-xs text-zinc-500 dark:text-zinc-400"}," Nenhum selecionado = cupom vale para todos os produtos. ",-1))]),e("div",null,[o[16]||(o[16]=e("label",{class:"block text-sm font-medium text-zinc-700 dark:text-zinc-300"}," Pedido mínimo (R$) ",-1)),k(e("input",{"onUpdate:modelValue":o[4]||(o[4]=s=>i(t).min_amount=s),type:"number",step:"0.01",min:"0",class:"mt-1 block w-full rounded-lg border border-zinc-300 bg-white px-3 py-2 text-zinc-900 placeholder-zinc-400 focus:border-[var(--color-primary)] focus:outline-none focus:ring-1 focus:ring-[var(--color-primary)] dark:border-zinc-600 dark:bg-zinc-800 dark:text-white dark:placeholder-zinc-500",placeholder:"Opcional"},null,512),[[g,i(t).min_amount]]),i(t).errors.min_amount?(a(),c("p",me,l(i(t).errors.min_amount),1)):p("",!0)]),e("div",null,[o[17]||(o[17]=e("label",{class:"block text-sm font-medium text-zinc-700 dark:text-zinc-300"}," Máximo de usos ",-1)),k(e("input",{"onUpdate:modelValue":o[5]||(o[5]=s=>i(t).max_uses=s),type:"number",min:"1",class:"mt-1 block w-full rounded-lg border border-zinc-300 bg-white px-3 py-2 text-zinc-900 placeholder-zinc-400 focus:border-[var(--color-primary)] focus:outline-none focus:ring-1 focus:ring-[var(--color-primary)] dark:border-zinc-600 dark:bg-zinc-800 dark:text-white dark:placeholder-zinc-500",placeholder:"Ilimitado"},null,512),[[g,i(t).max_uses]]),i(t).errors.max_uses?(a(),c("p",xe,l(i(t).errors.max_uses),1)):p("",!0)]),e("div",null,[o[18]||(o[18]=e("label",{class:"block text-sm font-medium text-zinc-700 dark:text-zinc-300"}," Válido de ",-1)),k(e("input",{"onUpdate:modelValue":o[6]||(o[6]=s=>i(t).valid_from=s),type:"datetime-local",class:"mt-1 block w-full rounded-lg border border-zinc-300 bg-white px-3 py-2 text-zinc-900 focus:border-[var(--color-primary)] focus:outline-none focus:ring-1 focus:ring-[var(--color-primary)] dark:border-zinc-600 dark:bg-zinc-800 dark:text-white"},null,512),[[g,i(t).valid_from]])]),e("div",null,[o[19]||(o[19]=e("label",{class:"block text-sm font-medium text-zinc-700 dark:text-zinc-300"}," Válido até ",-1)),k(e("input",{"onUpdate:modelValue":o[7]||(o[7]=s=>i(t).valid_until=s),type:"datetime-local",class:"mt-1 block w-full rounded-lg border border-zinc-300 bg-white px-3 py-2 text-zinc-900 focus:border-[var(--color-primary)] focus:outline-none focus:ring-1 focus:ring-[var(--color-primary)] dark:border-zinc-600 dark:bg-zinc-800 dark:text-white"},null,512),[[g,i(t).valid_until]]),i(t).errors.valid_until?(a(),c("p",fe,l(i(t).errors.valid_until),1)):p("",!0)]),e("div",be,[u(B,{modelValue:i(t).is_active,"onUpdate:modelValue":o[8]||(o[8]=s=>i(t).is_active=s),label:"Cupom ativo"},null,8,["modelValue"])]),e("div",ve,[u(h,{type:"submit",disabled:i(t).processing},{default:w(()=>[x(l(b.value?"Salvar":"Criar cupom"),1)]),_:1},8,["disabled"]),u(h,{type:"button",variant:"outline",onClick:y},{default:w(()=>[...o[20]||(o[20]=[x(" Cancelar ",-1)])]),_:1})])],32)])])],8,ee)):p("",!0)]))}},ze={class:"space-y-6"},ye={class:"flex justify-end"},_e={class:"panel-table"},ge={class:"overflow-x-auto"},he={class:"min-w-full divide-y divide-zinc-200 dark:divide-zinc-700"},we={class:"divide-y divide-zinc-200 dark:divide-zinc-700"},$e={class:"whitespace-nowrap px-4 py-3 text-sm font-medium text-zinc-900 dark:text-white"},Ce={class:"whitespace-nowrap px-4 py-3 text-sm text-zinc-600 dark:text-zinc-400"},Ve={class:"whitespace-nowrap px-4 py-3 text-sm text-zinc-900 dark:text-white"},Se={class:"whitespace-nowrap px-4 py-3 text-sm text-zinc-600 dark:text-zinc-400"},Te={class:"whitespace-nowrap px-4 py-3 text-sm text-zinc-600 dark:text-zinc-400"},je={class:"whitespace-nowrap px-4 py-3 text-sm text-zinc-600 dark:text-zinc-400"},Ee={class:"whitespace-nowrap px-4 py-3"},Ne={class:"whitespace-nowrap px-4 py-3"},De={class:"flex items-center gap-1"},Me=["onClick"],Pe=["onClick"],Ue={key:0,class:"flex flex-col items-center justify-center py-16"},Fe={key:0,class:"fixed inset-0 z-[100002] flex items-center justify-center p-4",role:"dialog","aria-modal":"true","aria-labelledby":"delete-cupom-title"},Oe={class:"relative w-full max-w-sm rounded-xl border border-zinc-200 bg-white p-5 shadow-xl dark:border-zinc-700 dark:bg-zinc-800"},Ae={class:"mt-2 text-sm text-zinc-600 dark:text-zinc-400"},Be={class:"text-zinc-900 dark:text-white"},Le={class:"mt-5 flex gap-3 justify-end"},Ye=Object.assign({layout:R},{__name:"Cupons",props:{cupons:{type:Array,default:()=>[]},produtos:{type:Array,default:()=>[]}},setup(f){const _=C(!1),n=C(null),m=C(null);function b(){n.value=null,_.value=!0}function v(d){n.value=d,_.value=!0}function t(){_.value=!1,n.value=null}function V(d){m.value=d}function z(){m.value=null}function S(){const d=m.value;d&&(L.delete(`/produtos/cupons/${d.id}`,{preserveScroll:!0}),z())}function T(d){return d.type==="percent"?`${Number(d.value)}%`:new Intl.NumberFormat("pt-BR",{style:"currency",currency:"BRL"}).format(d.value??0)}function $(d){return d?new Date(d).toLocaleDateString("pt-BR",{day:"2-digit",month:"2-digit",year:"numeric"}):"—"}function y(d){return d.max_uses==null?`${d.used_count} usos`:`${d.used_count} / ${d.max_uses}`}return(d,r)=>(a(),c(N,null,[e("div",ze,[u(I),e("div",ye,[u(h,{onClick:b},{default:w(()=>[...r[0]||(r[0]=[x(" Novo cupom ",-1)])]),_:1})]),e("div",_e,[e("div",ge,[e("table",he,[r[1]||(r[1]=e("thead",{class:"bg-zinc-50 dark:bg-zinc-800/80"},[e("tr",null,[e("th",{scope:"col",class:"px-4 py-3 text-left text-xs font-medium uppercase tracking-wider text-zinc-600 dark:text-zinc-400"}," Código "),e("th",{scope:"col",class:"px-4 py-3 text-left text-xs font-medium uppercase tracking-wider text-zinc-600 dark:text-zinc-400"}," Tipo "),e("th",{scope:"col",class:"px-4 py-3 text-left text-xs font-medium uppercase tracking-wider text-zinc-600 dark:text-zinc-400"}," Valor "),e("th",{scope:"col",class:"px-4 py-3 text-left text-xs font-medium uppercase tracking-wider text-zinc-600 dark:text-zinc-400"}," Produto "),e("th",{scope:"col",class:"px-4 py-3 text-left text-xs font-medium uppercase tracking-wider text-zinc-600 dark:text-zinc-400"}," Usos "),e("th",{scope:"col",class:"px-4 py-3 text-left text-xs font-medium uppercase tracking-wider text-zinc-600 dark:text-zinc-400"}," Validade "),e("th",{scope:"col",class:"px-4 py-3 text-left text-xs font-medium uppercase tracking-wider text-zinc-600 dark:text-zinc-400"}," Ativo "),e("th",{scope:"col",class:"relative px-4 py-3"},[e("span",{class:"sr-only"},"Ações")])])],-1)),e("tbody",we,[(a(!0),c(N,null,P(f.cupons,o=>(a(),c("tr",{key:o.id,class:"bg-white dark:bg-zinc-800"},[e("td",$e,l(o.code),1),e("td",Ce,l(o.type==="percent"?"Percentual":"Fixo"),1),e("td",Ve,l(T(o)),1),e("td",Se,l(o.product_name??"Todos"),1),e("td",Te,l(y(o)),1),e("td",je,l($(o.valid_from))+" – "+l($(o.valid_until)),1),e("td",Ee,[e("span",{class:E(["inline-block rounded px-2 py-0.5 text-xs font-medium",o.is_active?"bg-emerald-100 text-emerald-700 dark:bg-emerald-900/40 dark:text-emerald-300":"bg-zinc-100 text-zinc-500 dark:bg-zinc-700 dark:text-zinc-400"])},l(o.is_active?"Sim":"Não"),3)]),e("td",Ne,[e("div",De,[e("button",{type:"button",class:"rounded-lg p-2 text-zinc-500 transition hover:bg-zinc-100 hover:text-zinc-700 dark:hover:bg-zinc-700 dark:hover:text-zinc-200","aria-label":"Editar cupom",onClick:s=>v(o)},[u(i(Q),{class:"h-4 w-4"})],8,Me),e("button",{type:"button",class:"rounded-lg p-2 text-zinc-500 transition hover:bg-red-50 hover:text-red-600 dark:hover:bg-red-900/20 dark:hover:text-red-400","aria-label":"Excluir cupom",onClick:s=>V(o)},[u(i(W),{class:"h-4 w-4"})],8,Pe)])])]))),128))])])]),f.cupons.length?p("",!0):(a(),c("div",Ue,[u(i(Y),{class:"h-14 w-14 text-zinc-400 dark:text-zinc-500"}),r[3]||(r[3]=e("p",{class:"mt-3 text-zinc-600 dark:text-zinc-400"},"Nenhum cupom ainda.",-1)),u(h,{class:"mt-4",onClick:b},{default:w(()=>[...r[2]||(r[2]=[x(" Criar primeiro cupom ",-1)])]),_:1})]))])]),(a(),j(U,{to:"body"},[m.value?(a(),c("div",Fe,[e("div",{class:"fixed inset-0 bg-zinc-900/60 dark:bg-zinc-950/70","aria-hidden":"true",onClick:z}),e("div",Oe,[r[8]||(r[8]=e("h2",{id:"delete-cupom-title",class:"text-lg font-semibold text-zinc-900 dark:text-white"}," Excluir cupom? ",-1)),e("p",Ae,[r[4]||(r[4]=x(" Tem certeza que deseja excluir o cupom ",-1)),e("strong",Be,'"'+l(m.value?.code)+'"',1),r[5]||(r[5]=x("? Esta ação não pode ser desfeita. ",-1))]),e("div",Le,[u(h,{variant:"outline",onClick:z},{default:w(()=>[...r[6]||(r[6]=[x(" Cancelar ",-1)])]),_:1}),u(h,{variant:"destructive",onClick:S},{default:w(()=>[...r[7]||(r[7]=[x(" Excluir ",-1)])]),_:1})])])])):p("",!0)])),u(ke,{open:_.value,produtos:f.produtos,coupon:n.value,onClose:t,onSuccess:t},null,8,["open","produtos","coupon"])],64))}});export{Ye as default}; +import{c as F,u as O,X as A,i as B,_ as h,r as L}from"./Toggle-BD3dflqy.js";import{C as q,_ as R}from"./app-CT8pqccC.js";import{_ as I}from"./ProdutosTabs-DsnePWTy.js";import{k as G,l as H,A as X,o as a,f as j,c,a as e,t as l,g as u,u as i,w as D,b as k,v as g,d as p,bF as Z,s as E,bG as J,F as N,y as P,i as x,h as w,T as U,n as M,r as C}from"./runtime-dom.esm-bundler-OrSu0e66.js";import{C as K}from"./chevron-down-Cr9wcM6o.js";import{P as Q}from"./pencil-De6Ibr3Z.js";import{T as W}from"./trash-2-Bxek5XZ9.js";import"./HorizontalScrollTabs-B3gLPvR5.js";import"./handshake-ChMiz3jx.js";import"./user-plus-Ci3SykZs.js";const Y=F("ticket",[["path",{d:"M2 9a3 3 0 0 1 0 6v2a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2v-2a3 3 0 0 1 0-6V7a2 2 0 0 0-2-2H4a2 2 0 0 0-2 2Z",key:"qn84l0"}],["path",{d:"M13 5v2",key:"dyzc3o"}],["path",{d:"M13 17v2",key:"1ont0d"}],["path",{d:"M13 11v2",key:"1wjjxi"}]]),ee=["aria-labelledby"],te={class:"flex shrink-0 items-center justify-between rounded-tl-2xl border-b border-zinc-200 px-4 py-3 dark:border-zinc-800"},oe=["id"],re={class:"flex-1 overflow-y-auto px-4 py-4"},ie={key:0,class:"mt-1 text-sm text-red-600 dark:text-red-400"},ne=["placeholder"],se={key:0,class:"mt-1 text-sm text-red-600 dark:text-red-400"},de={class:"relative mt-1","data-cupom-products-dropdown":""},le=["aria-expanded"],ae={class:"truncate"},ce={class:"absolute left-0 right-0 top-full z-50 mt-1 max-h-56 overflow-auto rounded-xl border border-zinc-200 bg-white py-1 shadow-lg dark:border-zinc-700 dark:bg-zinc-800",role:"listbox"},ue=["aria-selected","onClick"],pe={key:0,class:"px-3 py-2 text-sm text-zinc-500 dark:text-zinc-400"},me={key:0,class:"mt-1 text-sm text-red-600 dark:text-red-400"},xe={key:0,class:"mt-1 text-sm text-red-600 dark:text-red-400"},fe={key:0,class:"mt-1 text-sm text-red-600 dark:text-red-400"},be={class:"flex items-center gap-2"},ve={class:"flex gap-2 pt-2"},ke={__name:"CupomSidebar",props:{open:{type:Boolean,default:!1},produtos:{type:Array,default:()=>[]},coupon:{type:Object,default:null}},emits:["close","success"],setup(f,{emit:_}){const n=f,m=_,b=M(()=>!!n.coupon),v=C(!1),t=O({code:"",type:"percent",value:"",product_ids:[],min_amount:"",max_uses:"",valid_from:"",valid_until:"",is_active:!0});function V(r){t.product_ids.indexOf(r)===-1?t.product_ids=[...t.product_ids,r]:t.product_ids=t.product_ids.filter(s=>s!==r)}function z(r){return t.product_ids.includes(r)}const S=M(()=>{if(!t.product_ids.length||t.product_ids.length===n.produtos.length)return"Todos os produtos";if(t.product_ids.length===1){const r=n.produtos.find(o=>o.id===t.product_ids[0]);return r?r.name:"1 produto"}return`${t.product_ids.length} produtos selecionados`});function T(){v.value=!1}function $(r){const o=document.querySelector("[data-cupom-products-dropdown]");o&&!o.contains(r.target)&&T()}G(()=>{document.addEventListener("click",$)}),H(()=>{document.removeEventListener("click",$)});function y(){t.reset(),m("close")}function d(){const r={code:t.code,type:t.type,value:parseFloat(t.value)||0,product_ids:t.product_ids,min_amount:t.min_amount?parseFloat(t.min_amount):null,max_uses:t.max_uses?parseInt(t.max_uses,10):null,valid_from:t.valid_from||null,valid_until:t.valid_until||null,is_active:t.is_active};b.value?t.transform(()=>r).put(`/produtos/cupons/${n.coupon.id}`,{onSuccess:()=>{y(),m("success")}}):t.transform(()=>r).post("/produtos/cupons",{onSuccess:()=>{y(),m("success")}})}return X(()=>[n.open,n.coupon],()=>{n.open&&n.coupon?(t.code=n.coupon.code,t.type=n.coupon.type,t.value=String(n.coupon.value??""),t.product_ids=Array.isArray(n.coupon.product_ids)?[...n.coupon.product_ids]:n.coupon.product_id?[n.coupon.product_id]:[],t.min_amount=n.coupon.min_amount!=null?String(n.coupon.min_amount):"",t.max_uses=n.coupon.max_uses!=null?String(n.coupon.max_uses):"",t.valid_from=n.coupon.valid_from?n.coupon.valid_from.slice(0,16):"",t.valid_until=n.coupon.valid_until?n.coupon.valid_until.slice(0,16):"",t.is_active=!!n.coupon.is_active):n.open&&!n.coupon&&(t.reset(),t.type="percent",t.is_active=!0,t.product_ids=[])},{immediate:!0}),(r,o)=>(a(),j(U,{to:"body"},[f.open?(a(),c("div",{key:0,class:"fixed inset-0 z-[100000] flex justify-end","aria-modal":"true",role:"dialog","aria-labelledby":b.value?"sidebar-edit-cupom":"sidebar-new-cupom"},[e("div",{class:"fixed inset-0 bg-zinc-900/50 dark:bg-zinc-950/70","aria-hidden":"true",onClick:y}),e("aside",{class:"relative z-[100001] flex h-full w-full max-w-md flex-col rounded-l-2xl bg-white shadow-xl dark:bg-zinc-900 sm:w-[420px]",onClick:o[9]||(o[9]=D(()=>{},["stop"]))},[e("div",te,[e("h2",{id:b.value?"sidebar-edit-cupom":"sidebar-new-cupom",class:"text-lg font-semibold text-zinc-900 dark:text-white"},l(b.value?"Editar cupom":"Novo cupom"),9,oe),e("button",{type:"button",class:"rounded-lg p-2 text-zinc-500 transition-colors hover:bg-zinc-100 hover:text-zinc-700 dark:hover:bg-zinc-800 dark:hover:text-zinc-300","aria-label":"Fechar",onClick:y},[u(i(A),{class:"h-5 w-5"})])]),e("div",re,[e("form",{class:"space-y-4",onSubmit:D(d,["prevent"])},[e("div",null,[o[10]||(o[10]=e("label",{class:"block text-sm font-medium text-zinc-700 dark:text-zinc-300"}," Código * ",-1)),k(e("input",{"onUpdate:modelValue":o[0]||(o[0]=s=>i(t).code=s),type:"text",required:"",class:"mt-1 block w-full rounded-lg border border-zinc-300 bg-white px-3 py-2 text-zinc-900 placeholder-zinc-400 focus:border-[var(--color-primary)] focus:outline-none focus:ring-1 focus:ring-[var(--color-primary)] dark:border-zinc-600 dark:bg-zinc-800 dark:text-white dark:placeholder-zinc-500",placeholder:"Ex: PROMO20"},null,512),[[g,i(t).code]]),i(t).errors.code?(a(),c("p",ie,l(i(t).errors.code),1)):p("",!0)]),e("div",null,[o[12]||(o[12]=e("label",{class:"block text-sm font-medium text-zinc-700 dark:text-zinc-300"}," Tipo * ",-1)),k(e("select",{"onUpdate:modelValue":o[1]||(o[1]=s=>i(t).type=s),required:"",class:"mt-1 block w-full rounded-lg border border-zinc-300 bg-white px-3 py-2 text-zinc-900 focus:border-[var(--color-primary)] focus:outline-none focus:ring-1 focus:ring-[var(--color-primary)] dark:border-zinc-600 dark:bg-zinc-800 dark:text-white"},[...o[11]||(o[11]=[e("option",{value:"percent"},"Percentual (%)",-1),e("option",{value:"fixed"},"Valor fixo (R$)",-1)])],512),[[Z,i(t).type]])]),e("div",null,[o[13]||(o[13]=e("label",{class:"block text-sm font-medium text-zinc-700 dark:text-zinc-300"}," Valor * ",-1)),k(e("input",{"onUpdate:modelValue":o[2]||(o[2]=s=>i(t).value=s),type:"number",step:"0.01",min:"0",required:"",class:"mt-1 block w-full rounded-lg border border-zinc-300 bg-white px-3 py-2 text-zinc-900 placeholder-zinc-400 focus:border-[var(--color-primary)] focus:outline-none focus:ring-1 focus:ring-[var(--color-primary)] dark:border-zinc-600 dark:bg-zinc-800 dark:text-white dark:placeholder-zinc-500",placeholder:i(t).type==="percent"?"0–100":"0,00"},null,8,ne),[[g,i(t).value]]),i(t).errors.value?(a(),c("p",se,l(i(t).errors.value),1)):p("",!0)]),e("div",null,[o[14]||(o[14]=e("label",{class:"block text-sm font-medium text-zinc-700 dark:text-zinc-300"}," Produtos ",-1)),e("div",de,[e("button",{type:"button",class:"flex w-full items-center justify-between rounded-lg border border-zinc-300 bg-white px-3 py-2 text-left text-zinc-900 focus:border-[var(--color-primary)] focus:outline-none focus:ring-1 focus:ring-[var(--color-primary)] dark:border-zinc-600 dark:bg-zinc-800 dark:text-white","aria-haspopup":"listbox","aria-expanded":v.value,onClick:o[3]||(o[3]=s=>v.value=!v.value)},[e("span",ae,l(S.value),1),u(i(K),{class:E(["h-4 w-4 shrink-0 transition-transform",{"rotate-180":v.value}])},null,8,["class"])],8,le),k(e("div",ce,[(a(!0),c(N,null,P(f.produtos,s=>(a(),c("button",{key:s.id,type:"button",role:"option","aria-selected":z(s.id),class:"flex w-full items-center gap-2 px-3 py-2 text-left text-sm text-zinc-700 hover:bg-zinc-100 dark:text-zinc-300 dark:hover:bg-zinc-700",onClick:qe=>V(s.id)},[e("span",{class:E(["flex h-4 w-4 shrink-0 items-center justify-center rounded border border-zinc-300 dark:border-zinc-600",z(s.id)?"bg-[var(--color-primary)] border-[var(--color-primary)] text-white":"bg-white dark:bg-zinc-800"])},[z(s.id)?(a(),j(i(q),{key:0,class:"h-3 w-3","stroke-width":"3"})):p("",!0)],2),x(" "+l(s.name),1)],8,ue))),128)),f.produtos.length?p("",!0):(a(),c("p",pe," Nenhum produto cadastrado. "))],512),[[J,v.value]])]),o[15]||(o[15]=e("p",{class:"mt-1 text-xs text-zinc-500 dark:text-zinc-400"}," Nenhum selecionado = cupom vale para todos os produtos. ",-1))]),e("div",null,[o[16]||(o[16]=e("label",{class:"block text-sm font-medium text-zinc-700 dark:text-zinc-300"}," Pedido mínimo (R$) ",-1)),k(e("input",{"onUpdate:modelValue":o[4]||(o[4]=s=>i(t).min_amount=s),type:"number",step:"0.01",min:"0",class:"mt-1 block w-full rounded-lg border border-zinc-300 bg-white px-3 py-2 text-zinc-900 placeholder-zinc-400 focus:border-[var(--color-primary)] focus:outline-none focus:ring-1 focus:ring-[var(--color-primary)] dark:border-zinc-600 dark:bg-zinc-800 dark:text-white dark:placeholder-zinc-500",placeholder:"Opcional"},null,512),[[g,i(t).min_amount]]),i(t).errors.min_amount?(a(),c("p",me,l(i(t).errors.min_amount),1)):p("",!0)]),e("div",null,[o[17]||(o[17]=e("label",{class:"block text-sm font-medium text-zinc-700 dark:text-zinc-300"}," Máximo de usos ",-1)),k(e("input",{"onUpdate:modelValue":o[5]||(o[5]=s=>i(t).max_uses=s),type:"number",min:"1",class:"mt-1 block w-full rounded-lg border border-zinc-300 bg-white px-3 py-2 text-zinc-900 placeholder-zinc-400 focus:border-[var(--color-primary)] focus:outline-none focus:ring-1 focus:ring-[var(--color-primary)] dark:border-zinc-600 dark:bg-zinc-800 dark:text-white dark:placeholder-zinc-500",placeholder:"Ilimitado"},null,512),[[g,i(t).max_uses]]),i(t).errors.max_uses?(a(),c("p",xe,l(i(t).errors.max_uses),1)):p("",!0)]),e("div",null,[o[18]||(o[18]=e("label",{class:"block text-sm font-medium text-zinc-700 dark:text-zinc-300"}," Válido de ",-1)),k(e("input",{"onUpdate:modelValue":o[6]||(o[6]=s=>i(t).valid_from=s),type:"datetime-local",class:"mt-1 block w-full rounded-lg border border-zinc-300 bg-white px-3 py-2 text-zinc-900 focus:border-[var(--color-primary)] focus:outline-none focus:ring-1 focus:ring-[var(--color-primary)] dark:border-zinc-600 dark:bg-zinc-800 dark:text-white"},null,512),[[g,i(t).valid_from]])]),e("div",null,[o[19]||(o[19]=e("label",{class:"block text-sm font-medium text-zinc-700 dark:text-zinc-300"}," Válido até ",-1)),k(e("input",{"onUpdate:modelValue":o[7]||(o[7]=s=>i(t).valid_until=s),type:"datetime-local",class:"mt-1 block w-full rounded-lg border border-zinc-300 bg-white px-3 py-2 text-zinc-900 focus:border-[var(--color-primary)] focus:outline-none focus:ring-1 focus:ring-[var(--color-primary)] dark:border-zinc-600 dark:bg-zinc-800 dark:text-white"},null,512),[[g,i(t).valid_until]]),i(t).errors.valid_until?(a(),c("p",fe,l(i(t).errors.valid_until),1)):p("",!0)]),e("div",be,[u(B,{modelValue:i(t).is_active,"onUpdate:modelValue":o[8]||(o[8]=s=>i(t).is_active=s),label:"Cupom ativo"},null,8,["modelValue"])]),e("div",ve,[u(h,{type:"submit",disabled:i(t).processing},{default:w(()=>[x(l(b.value?"Salvar":"Criar cupom"),1)]),_:1},8,["disabled"]),u(h,{type:"button",variant:"outline",onClick:y},{default:w(()=>[...o[20]||(o[20]=[x(" Cancelar ",-1)])]),_:1})])],32)])])],8,ee)):p("",!0)]))}},ze={class:"space-y-6"},ye={class:"flex justify-end"},_e={class:"panel-table"},ge={class:"overflow-x-auto"},he={class:"min-w-full divide-y divide-zinc-200 dark:divide-zinc-700"},we={class:"divide-y divide-zinc-200 dark:divide-zinc-700"},$e={class:"whitespace-nowrap px-4 py-3 text-sm font-medium text-zinc-900 dark:text-white"},Ce={class:"whitespace-nowrap px-4 py-3 text-sm text-zinc-600 dark:text-zinc-400"},Ve={class:"whitespace-nowrap px-4 py-3 text-sm text-zinc-900 dark:text-white"},Se={class:"whitespace-nowrap px-4 py-3 text-sm text-zinc-600 dark:text-zinc-400"},Te={class:"whitespace-nowrap px-4 py-3 text-sm text-zinc-600 dark:text-zinc-400"},je={class:"whitespace-nowrap px-4 py-3 text-sm text-zinc-600 dark:text-zinc-400"},Ee={class:"whitespace-nowrap px-4 py-3"},Ne={class:"whitespace-nowrap px-4 py-3"},De={class:"flex items-center gap-1"},Me=["onClick"],Pe=["onClick"],Ue={key:0,class:"flex flex-col items-center justify-center py-16"},Fe={key:0,class:"fixed inset-0 z-[100002] flex items-center justify-center p-4",role:"dialog","aria-modal":"true","aria-labelledby":"delete-cupom-title"},Oe={class:"relative w-full max-w-sm rounded-xl border border-zinc-200 bg-white p-5 shadow-xl dark:border-zinc-700 dark:bg-zinc-800"},Ae={class:"mt-2 text-sm text-zinc-600 dark:text-zinc-400"},Be={class:"text-zinc-900 dark:text-white"},Le={class:"mt-5 flex gap-3 justify-end"},Ye=Object.assign({layout:R},{__name:"Cupons",props:{cupons:{type:Array,default:()=>[]},produtos:{type:Array,default:()=>[]}},setup(f){const _=C(!1),n=C(null),m=C(null);function b(){n.value=null,_.value=!0}function v(d){n.value=d,_.value=!0}function t(){_.value=!1,n.value=null}function V(d){m.value=d}function z(){m.value=null}function S(){const d=m.value;d&&(L.delete(`/produtos/cupons/${d.id}`,{preserveScroll:!0}),z())}function T(d){return d.type==="percent"?`${Number(d.value)}%`:new Intl.NumberFormat("pt-BR",{style:"currency",currency:"BRL"}).format(d.value??0)}function $(d){return d?new Date(d).toLocaleDateString("pt-BR",{day:"2-digit",month:"2-digit",year:"numeric"}):"—"}function y(d){return d.max_uses==null?`${d.used_count} usos`:`${d.used_count} / ${d.max_uses}`}return(d,r)=>(a(),c(N,null,[e("div",ze,[u(I),e("div",ye,[u(h,{onClick:b},{default:w(()=>[...r[0]||(r[0]=[x(" Novo cupom ",-1)])]),_:1})]),e("div",_e,[e("div",ge,[e("table",he,[r[1]||(r[1]=e("thead",{class:"bg-zinc-50 dark:bg-zinc-800/80"},[e("tr",null,[e("th",{scope:"col",class:"px-4 py-3 text-left text-xs font-medium uppercase tracking-wider text-zinc-600 dark:text-zinc-400"}," Código "),e("th",{scope:"col",class:"px-4 py-3 text-left text-xs font-medium uppercase tracking-wider text-zinc-600 dark:text-zinc-400"}," Tipo "),e("th",{scope:"col",class:"px-4 py-3 text-left text-xs font-medium uppercase tracking-wider text-zinc-600 dark:text-zinc-400"}," Valor "),e("th",{scope:"col",class:"px-4 py-3 text-left text-xs font-medium uppercase tracking-wider text-zinc-600 dark:text-zinc-400"}," Produto "),e("th",{scope:"col",class:"px-4 py-3 text-left text-xs font-medium uppercase tracking-wider text-zinc-600 dark:text-zinc-400"}," Usos "),e("th",{scope:"col",class:"px-4 py-3 text-left text-xs font-medium uppercase tracking-wider text-zinc-600 dark:text-zinc-400"}," Validade "),e("th",{scope:"col",class:"px-4 py-3 text-left text-xs font-medium uppercase tracking-wider text-zinc-600 dark:text-zinc-400"}," Ativo "),e("th",{scope:"col",class:"relative px-4 py-3"},[e("span",{class:"sr-only"},"Ações")])])],-1)),e("tbody",we,[(a(!0),c(N,null,P(f.cupons,o=>(a(),c("tr",{key:o.id,class:"bg-white dark:bg-zinc-800"},[e("td",$e,l(o.code),1),e("td",Ce,l(o.type==="percent"?"Percentual":"Fixo"),1),e("td",Ve,l(T(o)),1),e("td",Se,l(o.product_name??"Todos"),1),e("td",Te,l(y(o)),1),e("td",je,l($(o.valid_from))+" – "+l($(o.valid_until)),1),e("td",Ee,[e("span",{class:E(["inline-block rounded px-2 py-0.5 text-xs font-medium",o.is_active?"bg-emerald-100 text-emerald-700 dark:bg-emerald-900/40 dark:text-emerald-300":"bg-zinc-100 text-zinc-500 dark:bg-zinc-700 dark:text-zinc-400"])},l(o.is_active?"Sim":"Não"),3)]),e("td",Ne,[e("div",De,[e("button",{type:"button",class:"rounded-lg p-2 text-zinc-500 transition hover:bg-zinc-100 hover:text-zinc-700 dark:hover:bg-zinc-700 dark:hover:text-zinc-200","aria-label":"Editar cupom",onClick:s=>v(o)},[u(i(Q),{class:"h-4 w-4"})],8,Me),e("button",{type:"button",class:"rounded-lg p-2 text-zinc-500 transition hover:bg-red-50 hover:text-red-600 dark:hover:bg-red-900/20 dark:hover:text-red-400","aria-label":"Excluir cupom",onClick:s=>V(o)},[u(i(W),{class:"h-4 w-4"})],8,Pe)])])]))),128))])])]),f.cupons.length?p("",!0):(a(),c("div",Ue,[u(i(Y),{class:"h-14 w-14 text-zinc-400 dark:text-zinc-500"}),r[3]||(r[3]=e("p",{class:"mt-3 text-zinc-600 dark:text-zinc-400"},"Nenhum cupom ainda.",-1)),u(h,{class:"mt-4",onClick:b},{default:w(()=>[...r[2]||(r[2]=[x(" Criar primeiro cupom ",-1)])]),_:1})]))])]),(a(),j(U,{to:"body"},[m.value?(a(),c("div",Fe,[e("div",{class:"fixed inset-0 bg-zinc-900/60 dark:bg-zinc-950/70","aria-hidden":"true",onClick:z}),e("div",Oe,[r[8]||(r[8]=e("h2",{id:"delete-cupom-title",class:"text-lg font-semibold text-zinc-900 dark:text-white"}," Excluir cupom? ",-1)),e("p",Ae,[r[4]||(r[4]=x(" Tem certeza que deseja excluir o cupom ",-1)),e("strong",Be,'"'+l(m.value?.code)+'"',1),r[5]||(r[5]=x("? Esta ação não pode ser desfeita. ",-1))]),e("div",Le,[u(h,{variant:"outline",onClick:z},{default:w(()=>[...r[6]||(r[6]=[x(" Cancelar ",-1)])]),_:1}),u(h,{variant:"destructive",onClick:S},{default:w(()=>[...r[7]||(r[7]=[x(" Excluir ",-1)])]),_:1})])])])):p("",!0)])),u(ke,{open:_.value,produtos:f.produtos,coupon:n.value,onClose:t,onSuccess:t},null,8,["open","produtos","coupon"])],64))}});export{Ye as default}; diff --git a/public/build/assets/Dashboard-Cw00hges.js b/public/build/assets/Dashboard-oaSMJW7w.js similarity index 98% rename from public/build/assets/Dashboard-Cw00hges.js rename to public/build/assets/Dashboard-oaSMJW7w.js index d4b60f6b..12449928 100644 --- a/public/build/assets/Dashboard-Cw00hges.js +++ b/public/build/assets/Dashboard-oaSMJW7w.js @@ -1 +1 @@ -import{E,a as L,l as x,r as R,d as $}from"./Toggle-BD3dflqy.js";import{x as q}from"./vue3-apexcharts-DfLoMYvF.js";import{_ as M,f as O,S as z,W as k,P as T}from"./app-CKysWbKx.js";import{_ as I}from"./DashboardPeriodFilter-Bg1OC7lO.js";import{A as y}from"./arrow-right-C14j21V-.js";import{C as W}from"./clock-BPm9yiQC.js";import{k as H,o as n,c,a as t,g as i,h as m,f as w,u as o,t as d,i as u,F as U,y as Y,d as S,r as N,n as v}from"./runtime-dom.esm-bundler-OrSu0e66.js";import"./index-C9D62LIC.js";import"./floating-ui.dom-RhtQlTMy.js";import"./chevron-down-Cr9wcM6o.js";import"./calendar-DS_Dw1pU.js";const G={class:"space-y-6"},J=["aria-label"],K={class:"grid gap-3 sm:grid-cols-2 lg:grid-cols-4"},Q={class:"panel-card-md"},X={class:"flex items-center gap-2 text-zinc-500 dark:text-zinc-400"},Z={class:"dash-metric-icon-sm"},tt={class:"mt-2 text-xl font-bold text-zinc-900 dark:text-white"},et={class:"mt-0.5 text-xs text-zinc-500"},st={class:"panel-card-md"},at={class:"flex items-center gap-2 text-zinc-500 dark:text-zinc-400"},ot={class:"dash-metric-icon-sm"},it={class:"mt-2 text-xl font-bold text-zinc-900 dark:text-white"},rt={class:"panel-card-md"},nt={class:"flex items-center gap-2 text-zinc-500 dark:text-zinc-400"},dt={class:"dash-metric-icon-sm"},lt={class:"mt-2 text-xl font-bold text-zinc-900 dark:text-white"},ct={class:"panel-card-md"},mt={class:"flex items-center gap-2 text-zinc-500 dark:text-zinc-400"},ut={class:"dash-metric-icon-sm"},pt={class:"mt-2 text-xl font-bold text-zinc-900 dark:text-white"},xt={class:"grid gap-4 lg:grid-cols-3"},ft={class:"panel-card-md lg:col-span-2"},ht={key:0,class:"mt-4 -mx-1"},yt={key:1,class:"mt-6 py-8 text-center text-sm text-zinc-500"},_t={class:"panel-card-md flex flex-col"},vt={class:"mt-4 space-y-2"},gt={class:"flex items-center gap-2 text-zinc-700 dark:text-zinc-300"},bt={class:"font-medium text-zinc-900 dark:text-white"},zt={class:"flex items-center gap-2 text-zinc-700 dark:text-zinc-300"},kt={class:"flex items-center gap-2 text-zinc-700 dark:text-zinc-300"},wt={class:"panel-card-md"},St={class:"flex items-center justify-between gap-2"},Nt={key:0,class:"mt-4 divide-y divide-zinc-200 dark:divide-zinc-700"},Ct={class:"min-w-0"},Vt={class:"truncate text-sm font-medium text-zinc-900 dark:text-white"},jt={key:0,class:"truncate text-xs text-zinc-500"},Dt={key:0,class:"text-zinc-400"},Pt={class:"text-xs text-zinc-500"},Bt={class:"text-right"},At={class:"text-sm font-semibold text-zinc-900 dark:text-white"},Ft={class:"text-[11px] text-zinc-500"},Et={key:1,class:"mt-6 py-6 text-center text-sm text-zinc-500"},Yt=Object.assign({layout:M},{__name:"Dashboard",props:{period:{type:String,default:"hoje"},comissao_total:{type:Number,default:0},quantidade_vendas:{type:Number,default:0},ticket_medio_comissao:{type:Number,default:0},saldo_pendente:{type:Number,default:0},saldo_disponivel:{type:Number,default:0},quantidade_produtos:{type:Number,default:0},grafico_comissoes:{type:Array,default:()=>[]},vendas_recentes:{type:Array,default:()=>[]}},setup(r){const C=$(),l=N(!0),_=N(!1);H(()=>{_.value=document.documentElement.classList.contains("dark")});const p=r;function V(s){R.get("/parceiro",{period:s},{preserveState:!1})}function h(s){return new Intl.NumberFormat("pt-BR",{style:"currency",currency:"BRL"}).format(s??0)}function f(s){return l.value?h(s):"••••••"}function j(s){return l.value?String(s):"—"}function D(s){if(!s)return"—";try{return new Intl.DateTimeFormat("pt-BR",{dateStyle:"short",timeStyle:"short"}).format(new Date(s))}catch{return s}}function P(s){return s==="pending"?"Pendente":s==="available"?"Disponível":s==="paid"?"Pago":s||""}const B=v(()=>{const s=C.props.appSettings?.theme_primary;if(typeof s=="string"&&s.trim()!=="")return s.trim();if(typeof document<"u"){const e=getComputedStyle(document.documentElement).getPropertyValue("--color-primary").trim();if(e)return e}return"#0ea5e9"}),A=v(()=>[{name:"Comissões",data:l.value?p.grafico_comissoes.map(s=>s.total):p.grafico_comissoes.map(()=>0)}]),F=v(()=>{const s=B.value,e=p.period==="hoje"||p.period==="ontem";return{chart:{type:"area",toolbar:{show:!1},zoom:{enabled:!1},fontFamily:"inherit",animations:{enabled:!0,speed:600}},colors:[s],dataLabels:{enabled:!0,formatter:a=>l.value&&a>0?h(a):"",style:{fontSize:"10px",colors:[s]},offsetY:-4},stroke:{curve:"smooth",width:2},fill:{type:"gradient",gradient:{shadeIntensity:1,opacityFrom:.45,opacityTo:0,stops:[0,100]}},xaxis:{categories:e?p.grafico_comissoes.map(a=>`${Number(a.data)}h`):p.grafico_comissoes.map(a=>{const[,g,b]=(a.data||"").split("-");return b&&g?`${b}/${g}`:a.data}),labels:{style:{colors:"#71717a",fontSize:"11px"}}},yaxis:{labels:{style:{colors:"#71717a",fontSize:"11px"},formatter:a=>h(a)}},grid:{borderColor:_.value?"#27272a":"#e4e4e7",strokeDashArray:4},tooltip:{theme:_.value?"dark":"light",y:{formatter:a=>l.value?h(a):"••••••"}}}});return(s,e)=>(n(),c("div",G,[e[15]||(e[15]=t("div",null,[t("h1",{class:"text-2xl font-bold text-zinc-900 dark:text-white"},"Dashboard"),t("p",{class:"mt-1 text-sm text-zinc-500 dark:text-zinc-400"}," Resumo das suas comissões e vendas como parceiro. ")],-1)),i(I,{"model-value":r.period,"onUpdate:modelValue":V},{trailing:m(()=>[t("button",{type:"button","aria-label":l.value?"Ocultar valores":"Mostrar valores",class:"flex h-11 w-11 shrink-0 items-center justify-center rounded-2xl border border-zinc-200/80 bg-zinc-100/90 text-zinc-500 transition-colors hover:text-zinc-800 dark:border-zinc-700/80 dark:bg-zinc-800/50 dark:text-zinc-400 dark:hover:text-zinc-200",onClick:e[0]||(e[0]=a=>l.value=!l.value)},[l.value?(n(),w(o(E),{key:0,class:"h-5 w-5"})):(n(),w(o(L),{key:1,class:"h-5 w-5"}))],8,J)]),_:1},8,["model-value"]),t("div",K,[t("div",Q,[t("div",X,[t("div",Z,[i(o(O),{class:"h-4 w-4"})]),e[1]||(e[1]=t("span",{class:"text-xs font-medium"},"Comissões no período",-1))]),t("p",tt,d(f(r.comissao_total)),1),t("p",et,"Ticket médio: "+d(f(r.ticket_medio_comissao)),1)]),t("div",st,[t("div",at,[t("div",ot,[i(o(z),{class:"h-4 w-4"})]),e[2]||(e[2]=t("span",{class:"text-xs font-medium"},"Vendas no período",-1))]),t("p",it,d(j(r.quantidade_vendas)),1),i(o(x),{href:"/parceiro/vendas",class:"mt-0.5 inline-flex items-center gap-1 text-xs text-[var(--color-primary)] hover:underline"},{default:m(()=>[e[3]||(e[3]=u(" Ver todas ",-1)),i(o(y),{class:"h-3 w-3"})]),_:1})]),t("div",rt,[t("div",nt,[t("div",dt,[i(o(W),{class:"h-4 w-4"})]),e[4]||(e[4]=t("span",{class:"text-xs font-medium"},"Saldo pendente",-1))]),t("p",lt,d(f(r.saldo_pendente)),1),e[5]||(e[5]=t("p",{class:"mt-0.5 text-xs text-zinc-500"},"Aguardando liberação",-1))]),t("div",ct,[t("div",mt,[t("div",ut,[i(o(k),{class:"h-4 w-4"})]),e[6]||(e[6]=t("span",{class:"text-xs font-medium"},"Saldo disponível",-1))]),t("p",pt,d(f(r.saldo_disponivel)),1),i(o(x),{href:"/parceiro/financeiro",class:"mt-0.5 inline-flex items-center gap-1 text-xs text-[var(--color-primary)] hover:underline"},{default:m(()=>[e[7]||(e[7]=u(" Sacar ",-1)),i(o(y),{class:"h-3 w-3"})]),_:1})])]),t("div",xt,[t("div",ft,[e[8]||(e[8]=t("h2",{class:"text-sm font-semibold text-zinc-900 dark:text-white"},"Comissões no período",-1)),r.grafico_comissoes.length?(n(),c("div",ht,[i(o(q),{type:"area",height:"260",options:F.value,series:A.value},null,8,["options","series"])])):(n(),c("p",yt,"Nenhuma comissão neste período."))]),t("div",_t,[e[12]||(e[12]=t("div",{class:"flex items-center justify-between gap-2"},[t("h2",{class:"text-sm font-semibold text-zinc-900 dark:text-white"},"Atalhos")],-1)),t("ul",vt,[t("li",null,[i(o(x),{href:"/parceiro/produtos",class:"flex items-center justify-between rounded-lg border border-zinc-200/80 px-3 py-2.5 text-sm transition hover:bg-zinc-50 dark:border-zinc-700 dark:hover:bg-zinc-800/80"},{default:m(()=>[t("span",gt,[i(o(T),{class:"h-4 w-4 text-[var(--color-primary)]"}),e[9]||(e[9]=u(" Meus produtos ",-1))]),t("span",bt,d(r.quantidade_produtos),1)]),_:1})]),t("li",null,[i(o(x),{href:"/parceiro/vendas",class:"flex items-center justify-between rounded-lg border border-zinc-200/80 px-3 py-2.5 text-sm transition hover:bg-zinc-50 dark:border-zinc-700 dark:hover:bg-zinc-800/80"},{default:m(()=>[t("span",zt,[i(o(z),{class:"h-4 w-4 text-[var(--color-primary)]"}),e[10]||(e[10]=u(" Vendas ",-1))]),i(o(y),{class:"h-4 w-4 text-zinc-400"})]),_:1})]),t("li",null,[i(o(x),{href:"/parceiro/financeiro",class:"flex items-center justify-between rounded-lg border border-zinc-200/80 px-3 py-2.5 text-sm transition hover:bg-zinc-50 dark:border-zinc-700 dark:hover:bg-zinc-800/80"},{default:m(()=>[t("span",kt,[i(o(k),{class:"h-4 w-4 text-[var(--color-primary)]"}),e[11]||(e[11]=u(" Financeiro ",-1))]),i(o(y),{class:"h-4 w-4 text-zinc-400"})]),_:1})])])])]),t("div",wt,[t("div",St,[e[14]||(e[14]=t("h2",{class:"text-sm font-semibold text-zinc-900 dark:text-white"},"Vendas recentes",-1)),i(o(x),{href:"/parceiro/vendas",class:"text-xs font-medium text-[var(--color-primary)] hover:underline"},{default:m(()=>[...e[13]||(e[13]=[u(" Ver todas ",-1)])]),_:1})]),r.vendas_recentes.length?(n(),c("ul",Nt,[(n(!0),c(U,null,Y(r.vendas_recentes,a=>(n(),c("li",{key:a.id,class:"flex flex-wrap items-center justify-between gap-2 py-3 first:pt-0 last:pb-0"},[t("div",Ct,[t("p",Vt,d(a.product_name||"Produto"),1),a.buyer_name||a.buyer_email?(n(),c("p",jt,[u(d(a.buyer_name||a.buyer_email)+" ",1),a.buyer_masked?(n(),c("span",Dt," (mascarado)")):S("",!0)])):S("",!0),t("p",Pt,d(D(a.created_at)),1)]),t("div",Bt,[t("p",At,d(f(a.commission_amount)),1),t("p",Ft,d(P(a.commission_status)),1)])]))),128))])):(n(),c("p",Et,"Nenhuma venda registrada ainda."))])]))}});export{Yt as default}; +import{E,a as L,l as x,r as R,d as $}from"./Toggle-BD3dflqy.js";import{x as q}from"./vue3-apexcharts-DcmUIG46.js";import{_ as M,f as O,S as z,W as k,P as T}from"./app-CT8pqccC.js";import{_ as I}from"./DashboardPeriodFilter-9Z3FV-BM.js";import{A as y}from"./arrow-right-C14j21V-.js";import{C as W}from"./clock-BPm9yiQC.js";import{k as H,o as n,c,a as t,g as i,h as m,f as w,u as o,t as d,i as u,F as U,y as Y,d as S,r as N,n as v}from"./runtime-dom.esm-bundler-OrSu0e66.js";import"./index-C9D62LIC.js";import"./floating-ui.dom-RhtQlTMy.js";import"./chevron-down-Cr9wcM6o.js";import"./calendar-DS_Dw1pU.js";const G={class:"space-y-6"},J=["aria-label"],K={class:"grid gap-3 sm:grid-cols-2 lg:grid-cols-4"},Q={class:"panel-card-md"},X={class:"flex items-center gap-2 text-zinc-500 dark:text-zinc-400"},Z={class:"dash-metric-icon-sm"},tt={class:"mt-2 text-xl font-bold text-zinc-900 dark:text-white"},et={class:"mt-0.5 text-xs text-zinc-500"},st={class:"panel-card-md"},at={class:"flex items-center gap-2 text-zinc-500 dark:text-zinc-400"},ot={class:"dash-metric-icon-sm"},it={class:"mt-2 text-xl font-bold text-zinc-900 dark:text-white"},rt={class:"panel-card-md"},nt={class:"flex items-center gap-2 text-zinc-500 dark:text-zinc-400"},dt={class:"dash-metric-icon-sm"},lt={class:"mt-2 text-xl font-bold text-zinc-900 dark:text-white"},ct={class:"panel-card-md"},mt={class:"flex items-center gap-2 text-zinc-500 dark:text-zinc-400"},ut={class:"dash-metric-icon-sm"},pt={class:"mt-2 text-xl font-bold text-zinc-900 dark:text-white"},xt={class:"grid gap-4 lg:grid-cols-3"},ft={class:"panel-card-md lg:col-span-2"},ht={key:0,class:"mt-4 -mx-1"},yt={key:1,class:"mt-6 py-8 text-center text-sm text-zinc-500"},_t={class:"panel-card-md flex flex-col"},vt={class:"mt-4 space-y-2"},gt={class:"flex items-center gap-2 text-zinc-700 dark:text-zinc-300"},bt={class:"font-medium text-zinc-900 dark:text-white"},zt={class:"flex items-center gap-2 text-zinc-700 dark:text-zinc-300"},kt={class:"flex items-center gap-2 text-zinc-700 dark:text-zinc-300"},wt={class:"panel-card-md"},St={class:"flex items-center justify-between gap-2"},Nt={key:0,class:"mt-4 divide-y divide-zinc-200 dark:divide-zinc-700"},Ct={class:"min-w-0"},Vt={class:"truncate text-sm font-medium text-zinc-900 dark:text-white"},jt={key:0,class:"truncate text-xs text-zinc-500"},Dt={key:0,class:"text-zinc-400"},Pt={class:"text-xs text-zinc-500"},Bt={class:"text-right"},At={class:"text-sm font-semibold text-zinc-900 dark:text-white"},Ft={class:"text-[11px] text-zinc-500"},Et={key:1,class:"mt-6 py-6 text-center text-sm text-zinc-500"},Yt=Object.assign({layout:M},{__name:"Dashboard",props:{period:{type:String,default:"hoje"},comissao_total:{type:Number,default:0},quantidade_vendas:{type:Number,default:0},ticket_medio_comissao:{type:Number,default:0},saldo_pendente:{type:Number,default:0},saldo_disponivel:{type:Number,default:0},quantidade_produtos:{type:Number,default:0},grafico_comissoes:{type:Array,default:()=>[]},vendas_recentes:{type:Array,default:()=>[]}},setup(r){const C=$(),l=N(!0),_=N(!1);H(()=>{_.value=document.documentElement.classList.contains("dark")});const p=r;function V(s){R.get("/parceiro",{period:s},{preserveState:!1})}function h(s){return new Intl.NumberFormat("pt-BR",{style:"currency",currency:"BRL"}).format(s??0)}function f(s){return l.value?h(s):"••••••"}function j(s){return l.value?String(s):"—"}function D(s){if(!s)return"—";try{return new Intl.DateTimeFormat("pt-BR",{dateStyle:"short",timeStyle:"short"}).format(new Date(s))}catch{return s}}function P(s){return s==="pending"?"Pendente":s==="available"?"Disponível":s==="paid"?"Pago":s||""}const B=v(()=>{const s=C.props.appSettings?.theme_primary;if(typeof s=="string"&&s.trim()!=="")return s.trim();if(typeof document<"u"){const e=getComputedStyle(document.documentElement).getPropertyValue("--color-primary").trim();if(e)return e}return"#0ea5e9"}),A=v(()=>[{name:"Comissões",data:l.value?p.grafico_comissoes.map(s=>s.total):p.grafico_comissoes.map(()=>0)}]),F=v(()=>{const s=B.value,e=p.period==="hoje"||p.period==="ontem";return{chart:{type:"area",toolbar:{show:!1},zoom:{enabled:!1},fontFamily:"inherit",animations:{enabled:!0,speed:600}},colors:[s],dataLabels:{enabled:!0,formatter:a=>l.value&&a>0?h(a):"",style:{fontSize:"10px",colors:[s]},offsetY:-4},stroke:{curve:"smooth",width:2},fill:{type:"gradient",gradient:{shadeIntensity:1,opacityFrom:.45,opacityTo:0,stops:[0,100]}},xaxis:{categories:e?p.grafico_comissoes.map(a=>`${Number(a.data)}h`):p.grafico_comissoes.map(a=>{const[,g,b]=(a.data||"").split("-");return b&&g?`${b}/${g}`:a.data}),labels:{style:{colors:"#71717a",fontSize:"11px"}}},yaxis:{labels:{style:{colors:"#71717a",fontSize:"11px"},formatter:a=>h(a)}},grid:{borderColor:_.value?"#27272a":"#e4e4e7",strokeDashArray:4},tooltip:{theme:_.value?"dark":"light",y:{formatter:a=>l.value?h(a):"••••••"}}}});return(s,e)=>(n(),c("div",G,[e[15]||(e[15]=t("div",null,[t("h1",{class:"text-2xl font-bold text-zinc-900 dark:text-white"},"Dashboard"),t("p",{class:"mt-1 text-sm text-zinc-500 dark:text-zinc-400"}," Resumo das suas comissões e vendas como parceiro. ")],-1)),i(I,{"model-value":r.period,"onUpdate:modelValue":V},{trailing:m(()=>[t("button",{type:"button","aria-label":l.value?"Ocultar valores":"Mostrar valores",class:"flex h-11 w-11 shrink-0 items-center justify-center rounded-2xl border border-zinc-200/80 bg-zinc-100/90 text-zinc-500 transition-colors hover:text-zinc-800 dark:border-zinc-700/80 dark:bg-zinc-800/50 dark:text-zinc-400 dark:hover:text-zinc-200",onClick:e[0]||(e[0]=a=>l.value=!l.value)},[l.value?(n(),w(o(E),{key:0,class:"h-5 w-5"})):(n(),w(o(L),{key:1,class:"h-5 w-5"}))],8,J)]),_:1},8,["model-value"]),t("div",K,[t("div",Q,[t("div",X,[t("div",Z,[i(o(O),{class:"h-4 w-4"})]),e[1]||(e[1]=t("span",{class:"text-xs font-medium"},"Comissões no período",-1))]),t("p",tt,d(f(r.comissao_total)),1),t("p",et,"Ticket médio: "+d(f(r.ticket_medio_comissao)),1)]),t("div",st,[t("div",at,[t("div",ot,[i(o(z),{class:"h-4 w-4"})]),e[2]||(e[2]=t("span",{class:"text-xs font-medium"},"Vendas no período",-1))]),t("p",it,d(j(r.quantidade_vendas)),1),i(o(x),{href:"/parceiro/vendas",class:"mt-0.5 inline-flex items-center gap-1 text-xs text-[var(--color-primary)] hover:underline"},{default:m(()=>[e[3]||(e[3]=u(" Ver todas ",-1)),i(o(y),{class:"h-3 w-3"})]),_:1})]),t("div",rt,[t("div",nt,[t("div",dt,[i(o(W),{class:"h-4 w-4"})]),e[4]||(e[4]=t("span",{class:"text-xs font-medium"},"Saldo pendente",-1))]),t("p",lt,d(f(r.saldo_pendente)),1),e[5]||(e[5]=t("p",{class:"mt-0.5 text-xs text-zinc-500"},"Aguardando liberação",-1))]),t("div",ct,[t("div",mt,[t("div",ut,[i(o(k),{class:"h-4 w-4"})]),e[6]||(e[6]=t("span",{class:"text-xs font-medium"},"Saldo disponível",-1))]),t("p",pt,d(f(r.saldo_disponivel)),1),i(o(x),{href:"/parceiro/financeiro",class:"mt-0.5 inline-flex items-center gap-1 text-xs text-[var(--color-primary)] hover:underline"},{default:m(()=>[e[7]||(e[7]=u(" Sacar ",-1)),i(o(y),{class:"h-3 w-3"})]),_:1})])]),t("div",xt,[t("div",ft,[e[8]||(e[8]=t("h2",{class:"text-sm font-semibold text-zinc-900 dark:text-white"},"Comissões no período",-1)),r.grafico_comissoes.length?(n(),c("div",ht,[i(o(q),{type:"area",height:"260",options:F.value,series:A.value},null,8,["options","series"])])):(n(),c("p",yt,"Nenhuma comissão neste período."))]),t("div",_t,[e[12]||(e[12]=t("div",{class:"flex items-center justify-between gap-2"},[t("h2",{class:"text-sm font-semibold text-zinc-900 dark:text-white"},"Atalhos")],-1)),t("ul",vt,[t("li",null,[i(o(x),{href:"/parceiro/produtos",class:"flex items-center justify-between rounded-lg border border-zinc-200/80 px-3 py-2.5 text-sm transition hover:bg-zinc-50 dark:border-zinc-700 dark:hover:bg-zinc-800/80"},{default:m(()=>[t("span",gt,[i(o(T),{class:"h-4 w-4 text-[var(--color-primary)]"}),e[9]||(e[9]=u(" Meus produtos ",-1))]),t("span",bt,d(r.quantidade_produtos),1)]),_:1})]),t("li",null,[i(o(x),{href:"/parceiro/vendas",class:"flex items-center justify-between rounded-lg border border-zinc-200/80 px-3 py-2.5 text-sm transition hover:bg-zinc-50 dark:border-zinc-700 dark:hover:bg-zinc-800/80"},{default:m(()=>[t("span",zt,[i(o(z),{class:"h-4 w-4 text-[var(--color-primary)]"}),e[10]||(e[10]=u(" Vendas ",-1))]),i(o(y),{class:"h-4 w-4 text-zinc-400"})]),_:1})]),t("li",null,[i(o(x),{href:"/parceiro/financeiro",class:"flex items-center justify-between rounded-lg border border-zinc-200/80 px-3 py-2.5 text-sm transition hover:bg-zinc-50 dark:border-zinc-700 dark:hover:bg-zinc-800/80"},{default:m(()=>[t("span",kt,[i(o(k),{class:"h-4 w-4 text-[var(--color-primary)]"}),e[11]||(e[11]=u(" Financeiro ",-1))]),i(o(y),{class:"h-4 w-4 text-zinc-400"})]),_:1})])])])]),t("div",wt,[t("div",St,[e[14]||(e[14]=t("h2",{class:"text-sm font-semibold text-zinc-900 dark:text-white"},"Vendas recentes",-1)),i(o(x),{href:"/parceiro/vendas",class:"text-xs font-medium text-[var(--color-primary)] hover:underline"},{default:m(()=>[...e[13]||(e[13]=[u(" Ver todas ",-1)])]),_:1})]),r.vendas_recentes.length?(n(),c("ul",Nt,[(n(!0),c(U,null,Y(r.vendas_recentes,a=>(n(),c("li",{key:a.id,class:"flex flex-wrap items-center justify-between gap-2 py-3 first:pt-0 last:pb-0"},[t("div",Ct,[t("p",Vt,d(a.product_name||"Produto"),1),a.buyer_name||a.buyer_email?(n(),c("p",jt,[u(d(a.buyer_name||a.buyer_email)+" ",1),a.buyer_masked?(n(),c("span",Dt," (mascarado)")):S("",!0)])):S("",!0),t("p",Pt,d(D(a.created_at)),1)]),t("div",Bt,[t("p",At,d(f(a.commission_amount)),1),t("p",Ft,d(P(a.commission_status)),1)])]))),128))])):(n(),c("p",Et,"Nenhuma venda registrada ainda."))])]))}});export{Yt as default}; diff --git a/public/build/assets/DashboardPeriodFilter-Bg1OC7lO.js b/public/build/assets/DashboardPeriodFilter-9Z3FV-BM.js similarity index 98% rename from public/build/assets/DashboardPeriodFilter-Bg1OC7lO.js rename to public/build/assets/DashboardPeriodFilter-9Z3FV-BM.js index a157165a..877930cc 100644 --- a/public/build/assets/DashboardPeriodFilter-Bg1OC7lO.js +++ b/public/build/assets/DashboardPeriodFilter-9Z3FV-BM.js @@ -1 +1 @@ -import{H as N,a as O,W as $,j as L,Q as P,q as E,J as F,Y as T,K as A}from"./index-C9D62LIC.js";import{C as J}from"./chevron-down-Cr9wcM6o.js";import{c as m}from"./Toggle-BD3dflqy.js";import{C as K}from"./calendar-DS_Dw1pU.js";import{C as Q}from"./app-CKysWbKx.js";import{k as U,aN as C,aS as W,A as Y,o as n,c as h,a as i,g as a,h as o,u as r,f as k,z as b,F as x,y as V,i as G,t as R,D as j,x as X,d as Z,s as B,r as g,n as q}from"./runtime-dom.esm-bundler-OrSu0e66.js";const ee=m("calendar-clock",[["path",{d:"M16 14v2.2l1.6 1",key:"fo4ql5"}],["path",{d:"M16 2v4",key:"4m81vk"}],["path",{d:"M21 7.5V6a2 2 0 0 0-2-2H5a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h3.5",key:"1osxxc"}],["path",{d:"M3 10h5",key:"r794hk"}],["path",{d:"M8 2v4",key:"1cmpym"}],["circle",{cx:"16",cy:"16",r:"6",key:"qoo3c4"}]]);const te=m("calendar-range",[["rect",{width:"18",height:"18",x:"3",y:"4",rx:"2",key:"1hopcy"}],["path",{d:"M16 2v4",key:"4m81vk"}],["path",{d:"M3 10h18",key:"8toen8"}],["path",{d:"M8 2v4",key:"1cmpym"}],["path",{d:"M17 14h-6",key:"bkmgh3"}],["path",{d:"M13 18H7",key:"bb0bb7"}],["path",{d:"M7 14h.01",key:"1qa3f1"}],["path",{d:"M17 18h.01",key:"1bdyru"}]]);const ae=m("infinity",[["path",{d:"M6 16c5 0 7-8 12-8a4 4 0 0 1 0 8c-5 0-7-8-12-8a4 4 0 1 0 0 8",key:"18ogeb"}]]);const re=m("moon",[["path",{d:"M20.985 12.486a9 9 0 1 1-9.473-9.472c.405-.022.617.46.402.803a6 6 0 0 0 8.268 8.268c.344-.215.825-.004.803.401",key:"kfwtm"}]]);const ne=m("sun",[["circle",{cx:"12",cy:"12",r:"4",key:"4exip2"}],["path",{d:"M12 2v2",key:"tus03m"}],["path",{d:"M12 20v2",key:"1lh1kg"}],["path",{d:"m4.93 4.93 1.41 1.41",key:"149t6j"}],["path",{d:"m17.66 17.66 1.41 1.41",key:"ptbguv"}],["path",{d:"M2 12h2",key:"1t8f8n"}],["path",{d:"M20 12h2",key:"1q8mjw"}],["path",{d:"m6.34 17.66-1.41 1.41",key:"1m8zz5"}],["path",{d:"m19.07 4.93-1.41 1.41",key:"1shlcs"}]]),ie={class:"w-full max-w-full lg:w-fit"},oe={class:"flex items-center gap-2 lg:hidden"},le={class:"flex min-w-0 items-center gap-2 truncate text-zinc-900 dark:text-white"},se={class:"hidden items-center gap-2 lg:flex"},de={key:0,class:"mx-0.5 h-7 w-px shrink-0 self-center bg-gradient-to-b from-transparent via-zinc-300 to-transparent dark:via-zinc-600","aria-hidden":"true"},ce=["aria-selected","onClick"],ue={class:"whitespace-nowrap"},ke={__name:"DashboardPeriodFilter",props:{modelValue:{type:String,required:!0}},emits:["update:modelValue"],setup(s,{emit:S}){const p=s,D=S,d=[{value:"hoje",label:"Hoje",icon:ne},{value:"ontem",label:"Ontem",icon:re},{value:"7dias",label:"7 dias",icon:te},{value:"mes",label:"Mês",icon:K},{value:"ano",label:"Ano",icon:ee},{value:"total",label:"Total",icon:ae}],f=g(null),w=g([]),v=g({left:0,width:0,opacity:0}),z=q(()=>d.find(e=>e.value===p.modelValue)??d[0]),H=q(()=>Math.max(0,d.findIndex(e=>e.value===p.modelValue)));function I(e,l){e&&(w.value[l]=e)}function c(){if(typeof window<"u"&&!window.matchMedia("(min-width: 1024px)").matches)return;const e=f.value,l=w.value[H.value];if(!e||!l)return;const t=e.getBoundingClientRect(),u=l.getBoundingClientRect();v.value={left:u.left-t.left,width:u.width,opacity:1}}function M(e){e!==p.modelValue&&D("update:modelValue",e)}let y;return U(()=>{C(c),y=new ResizeObserver(()=>c()),f.value&&y.observe(f.value),window.addEventListener("resize",c)}),W(()=>{y?.disconnect(),window.removeEventListener("resize",c)}),Y(()=>p.modelValue,()=>C(c)),(e,l)=>(n(),h("div",ie,[l[0]||(l[0]=i("p",{class:"mb-2 text-[10px] font-semibold uppercase tracking-[0.2em] text-zinc-400 dark:text-zinc-500"}," Período ",-1)),i("div",oe,[a(r(A),{"model-value":s.modelValue,"onUpdate:modelValue":M},{default:o(()=>[a(r(N),{type:"button","aria-label":"Período",class:"flex h-11 min-w-0 flex-1 cursor-pointer items-center justify-between gap-2 rounded-2xl border border-zinc-200/80 bg-zinc-100/90 px-4 py-2 text-left text-sm font-medium transition hover:border-zinc-300 focus:outline-none focus:ring-2 focus:ring-[var(--color-primary)]/20 focus:ring-offset-0 dark:border-zinc-700/80 dark:bg-zinc-800/50 dark:text-white dark:hover:border-zinc-600"},{default:o(()=>[i("span",le,[(n(),k(b(z.value.icon),{class:"h-4 w-4 shrink-0 text-[var(--color-primary)]","aria-hidden":"true"})),a(r(O),{placeholder:z.value.label},null,8,["placeholder"])]),a(r(J),{class:"h-4 w-4 shrink-0 text-zinc-400 dark:text-zinc-500","aria-hidden":"true"})]),_:1}),a(r($),{to:"body"},{default:o(()=>[a(r(L),{class:"z-[9999] min-w-[var(--radix-select-trigger-width)] overflow-hidden rounded-2xl border border-zinc-200 bg-white py-1 shadow-xl dark:border-zinc-700 dark:bg-zinc-800","side-offset":6,position:"popper","avoid-collisions":!0},{default:o(()=>[a(r(P),{class:"p-1"},{default:o(()=>[(n(),h(x,null,V(d,t=>a(r(E),{key:t.value,value:t.value,class:"relative flex cursor-pointer select-none items-center gap-2 rounded-xl py-2.5 pl-3 pr-10 text-sm outline-none transition data-[highlighted]:bg-[var(--color-primary)]/10 data-[highlighted]:text-[var(--color-primary)] data-[state=checked]:bg-[var(--color-primary)]/10 data-[state=checked]:text-[var(--color-primary)] dark:data-[highlighted]:bg-[var(--color-primary)]/20 dark:data-[state=checked]:bg-[var(--color-primary)]/20"},{default:o(()=>[(n(),k(b(t.icon),{class:"h-4 w-4 shrink-0 opacity-70","aria-hidden":"true"})),a(r(F),null,{default:o(()=>[G(R(t.label),1)]),_:2},1024),a(r(T),{class:"absolute right-3 flex h-4 w-4 items-center justify-center"},{default:o(()=>[a(r(Q),{class:"h-4 w-4 text-[var(--color-primary)]"})]),_:1})]),_:2},1032,["value"])),64))]),_:1})]),_:1})]),_:1})]),_:1},8,["model-value"]),j(e.$slots,"trailing")]),i("div",se,[i("div",{ref_key:"trackRef",ref:f,class:"relative inline-flex w-max items-center gap-0.5 rounded-2xl border border-zinc-200/80 bg-zinc-100/90 p-1 dark:border-zinc-700/80 dark:bg-zinc-800/50",role:"tablist","aria-label":"Período do dashboard"},[i("div",{class:"pointer-events-none absolute top-1 bottom-1 z-0 rounded-xl bg-white shadow-sm ring-1 ring-zinc-200/80 transition-[left,width,opacity] duration-300 ease-[cubic-bezier(0.34,1.2,0.64,1)] dark:bg-zinc-700 dark:shadow-none dark:ring-zinc-600/80",style:X({left:`${v.value.left}px`,width:`${v.value.width}px`,opacity:v.value.opacity}),"aria-hidden":"true"},null,4),(n(),h(x,null,V(d,(t,u)=>(n(),h(x,{key:t.value},[u===3?(n(),h("div",de)):Z("",!0),i("button",{ref_for:!0,ref:_=>I(_,u),type:"button",role:"tab","aria-selected":s.modelValue===t.value,class:B(["relative z-10 flex shrink-0 items-center gap-1.5 rounded-xl px-3.5 py-2 text-sm font-medium transition-colors duration-200",s.modelValue===t.value?"text-[var(--color-primary)]":"text-zinc-500 hover:text-zinc-800 dark:text-zinc-400 dark:hover:text-zinc-200"]),onClick:_=>M(t.value)},[(n(),k(b(t.icon),{class:B(["h-4 w-4 shrink-0 transition-transform duration-200",s.modelValue===t.value?"scale-110":"opacity-70"]),"aria-hidden":"true"},null,8,["class"])),i("span",ue,R(t.label),1)],10,ce)],64))),64))],512),j(e.$slots,"trailing")])]))}};export{ke as _}; +import{H as N,a as O,W as $,j as L,Q as P,q as E,J as F,Y as T,K as A}from"./index-C9D62LIC.js";import{C as J}from"./chevron-down-Cr9wcM6o.js";import{c as m}from"./Toggle-BD3dflqy.js";import{C as K}from"./calendar-DS_Dw1pU.js";import{C as Q}from"./app-CT8pqccC.js";import{k as U,aN as C,aS as W,A as Y,o as n,c as h,a as i,g as a,h as o,u as r,f as k,z as b,F as x,y as V,i as G,t as R,D as j,x as X,d as Z,s as B,r as g,n as q}from"./runtime-dom.esm-bundler-OrSu0e66.js";const ee=m("calendar-clock",[["path",{d:"M16 14v2.2l1.6 1",key:"fo4ql5"}],["path",{d:"M16 2v4",key:"4m81vk"}],["path",{d:"M21 7.5V6a2 2 0 0 0-2-2H5a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h3.5",key:"1osxxc"}],["path",{d:"M3 10h5",key:"r794hk"}],["path",{d:"M8 2v4",key:"1cmpym"}],["circle",{cx:"16",cy:"16",r:"6",key:"qoo3c4"}]]);const te=m("calendar-range",[["rect",{width:"18",height:"18",x:"3",y:"4",rx:"2",key:"1hopcy"}],["path",{d:"M16 2v4",key:"4m81vk"}],["path",{d:"M3 10h18",key:"8toen8"}],["path",{d:"M8 2v4",key:"1cmpym"}],["path",{d:"M17 14h-6",key:"bkmgh3"}],["path",{d:"M13 18H7",key:"bb0bb7"}],["path",{d:"M7 14h.01",key:"1qa3f1"}],["path",{d:"M17 18h.01",key:"1bdyru"}]]);const ae=m("infinity",[["path",{d:"M6 16c5 0 7-8 12-8a4 4 0 0 1 0 8c-5 0-7-8-12-8a4 4 0 1 0 0 8",key:"18ogeb"}]]);const re=m("moon",[["path",{d:"M20.985 12.486a9 9 0 1 1-9.473-9.472c.405-.022.617.46.402.803a6 6 0 0 0 8.268 8.268c.344-.215.825-.004.803.401",key:"kfwtm"}]]);const ne=m("sun",[["circle",{cx:"12",cy:"12",r:"4",key:"4exip2"}],["path",{d:"M12 2v2",key:"tus03m"}],["path",{d:"M12 20v2",key:"1lh1kg"}],["path",{d:"m4.93 4.93 1.41 1.41",key:"149t6j"}],["path",{d:"m17.66 17.66 1.41 1.41",key:"ptbguv"}],["path",{d:"M2 12h2",key:"1t8f8n"}],["path",{d:"M20 12h2",key:"1q8mjw"}],["path",{d:"m6.34 17.66-1.41 1.41",key:"1m8zz5"}],["path",{d:"m19.07 4.93-1.41 1.41",key:"1shlcs"}]]),ie={class:"w-full max-w-full lg:w-fit"},oe={class:"flex items-center gap-2 lg:hidden"},le={class:"flex min-w-0 items-center gap-2 truncate text-zinc-900 dark:text-white"},se={class:"hidden items-center gap-2 lg:flex"},de={key:0,class:"mx-0.5 h-7 w-px shrink-0 self-center bg-gradient-to-b from-transparent via-zinc-300 to-transparent dark:via-zinc-600","aria-hidden":"true"},ce=["aria-selected","onClick"],ue={class:"whitespace-nowrap"},ke={__name:"DashboardPeriodFilter",props:{modelValue:{type:String,required:!0}},emits:["update:modelValue"],setup(s,{emit:S}){const p=s,D=S,d=[{value:"hoje",label:"Hoje",icon:ne},{value:"ontem",label:"Ontem",icon:re},{value:"7dias",label:"7 dias",icon:te},{value:"mes",label:"Mês",icon:K},{value:"ano",label:"Ano",icon:ee},{value:"total",label:"Total",icon:ae}],f=g(null),w=g([]),v=g({left:0,width:0,opacity:0}),z=q(()=>d.find(e=>e.value===p.modelValue)??d[0]),H=q(()=>Math.max(0,d.findIndex(e=>e.value===p.modelValue)));function I(e,l){e&&(w.value[l]=e)}function c(){if(typeof window<"u"&&!window.matchMedia("(min-width: 1024px)").matches)return;const e=f.value,l=w.value[H.value];if(!e||!l)return;const t=e.getBoundingClientRect(),u=l.getBoundingClientRect();v.value={left:u.left-t.left,width:u.width,opacity:1}}function M(e){e!==p.modelValue&&D("update:modelValue",e)}let y;return U(()=>{C(c),y=new ResizeObserver(()=>c()),f.value&&y.observe(f.value),window.addEventListener("resize",c)}),W(()=>{y?.disconnect(),window.removeEventListener("resize",c)}),Y(()=>p.modelValue,()=>C(c)),(e,l)=>(n(),h("div",ie,[l[0]||(l[0]=i("p",{class:"mb-2 text-[10px] font-semibold uppercase tracking-[0.2em] text-zinc-400 dark:text-zinc-500"}," Período ",-1)),i("div",oe,[a(r(A),{"model-value":s.modelValue,"onUpdate:modelValue":M},{default:o(()=>[a(r(N),{type:"button","aria-label":"Período",class:"flex h-11 min-w-0 flex-1 cursor-pointer items-center justify-between gap-2 rounded-2xl border border-zinc-200/80 bg-zinc-100/90 px-4 py-2 text-left text-sm font-medium transition hover:border-zinc-300 focus:outline-none focus:ring-2 focus:ring-[var(--color-primary)]/20 focus:ring-offset-0 dark:border-zinc-700/80 dark:bg-zinc-800/50 dark:text-white dark:hover:border-zinc-600"},{default:o(()=>[i("span",le,[(n(),k(b(z.value.icon),{class:"h-4 w-4 shrink-0 text-[var(--color-primary)]","aria-hidden":"true"})),a(r(O),{placeholder:z.value.label},null,8,["placeholder"])]),a(r(J),{class:"h-4 w-4 shrink-0 text-zinc-400 dark:text-zinc-500","aria-hidden":"true"})]),_:1}),a(r($),{to:"body"},{default:o(()=>[a(r(L),{class:"z-[9999] min-w-[var(--radix-select-trigger-width)] overflow-hidden rounded-2xl border border-zinc-200 bg-white py-1 shadow-xl dark:border-zinc-700 dark:bg-zinc-800","side-offset":6,position:"popper","avoid-collisions":!0},{default:o(()=>[a(r(P),{class:"p-1"},{default:o(()=>[(n(),h(x,null,V(d,t=>a(r(E),{key:t.value,value:t.value,class:"relative flex cursor-pointer select-none items-center gap-2 rounded-xl py-2.5 pl-3 pr-10 text-sm outline-none transition data-[highlighted]:bg-[var(--color-primary)]/10 data-[highlighted]:text-[var(--color-primary)] data-[state=checked]:bg-[var(--color-primary)]/10 data-[state=checked]:text-[var(--color-primary)] dark:data-[highlighted]:bg-[var(--color-primary)]/20 dark:data-[state=checked]:bg-[var(--color-primary)]/20"},{default:o(()=>[(n(),k(b(t.icon),{class:"h-4 w-4 shrink-0 opacity-70","aria-hidden":"true"})),a(r(F),null,{default:o(()=>[G(R(t.label),1)]),_:2},1024),a(r(T),{class:"absolute right-3 flex h-4 w-4 items-center justify-center"},{default:o(()=>[a(r(Q),{class:"h-4 w-4 text-[var(--color-primary)]"})]),_:1})]),_:2},1032,["value"])),64))]),_:1})]),_:1})]),_:1})]),_:1},8,["model-value"]),j(e.$slots,"trailing")]),i("div",se,[i("div",{ref_key:"trackRef",ref:f,class:"relative inline-flex w-max items-center gap-0.5 rounded-2xl border border-zinc-200/80 bg-zinc-100/90 p-1 dark:border-zinc-700/80 dark:bg-zinc-800/50",role:"tablist","aria-label":"Período do dashboard"},[i("div",{class:"pointer-events-none absolute top-1 bottom-1 z-0 rounded-xl bg-white shadow-sm ring-1 ring-zinc-200/80 transition-[left,width,opacity] duration-300 ease-[cubic-bezier(0.34,1.2,0.64,1)] dark:bg-zinc-700 dark:shadow-none dark:ring-zinc-600/80",style:X({left:`${v.value.left}px`,width:`${v.value.width}px`,opacity:v.value.opacity}),"aria-hidden":"true"},null,4),(n(),h(x,null,V(d,(t,u)=>(n(),h(x,{key:t.value},[u===3?(n(),h("div",de)):Z("",!0),i("button",{ref_for:!0,ref:_=>I(_,u),type:"button",role:"tab","aria-selected":s.modelValue===t.value,class:B(["relative z-10 flex shrink-0 items-center gap-1.5 rounded-xl px-3.5 py-2 text-sm font-medium transition-colors duration-200",s.modelValue===t.value?"text-[var(--color-primary)]":"text-zinc-500 hover:text-zinc-800 dark:text-zinc-400 dark:hover:text-zinc-200"]),onClick:_=>M(t.value)},[(n(),k(b(t.icon),{class:B(["h-4 w-4 shrink-0 transition-transform duration-200",s.modelValue===t.value?"scale-110":"opacity-70"]),"aria-hidden":"true"},null,8,["class"])),i("span",ue,R(t.label),1)],10,ce)],64))),64))],512),j(e.$slots,"trailing")])]))}};export{ke as _}; diff --git a/public/build/assets/DownsellPageEditor-0gHtgxaR.js b/public/build/assets/DownsellPageEditor-CTwp67Aa.js similarity index 99% rename from public/build/assets/DownsellPageEditor-0gHtgxaR.js rename to public/build/assets/DownsellPageEditor-CTwp67Aa.js index 71bf07d8..1073588d 100644 --- a/public/build/assets/DownsellPageEditor-0gHtgxaR.js +++ b/public/build/assets/DownsellPageEditor-CTwp67Aa.js @@ -1 +1 @@ -import{J as B,o as i,c as k,a as t,g as u,h as V,i as g,u as d,t as m,f as v,b as a,bG as U,s as p,v as s,d as y,x as E,r as C,n as X}from"./runtime-dom.esm-bundler-OrSu0e66.js";import{l as O,i as I,_ as L,b as F,r as H}from"./Toggle-BD3dflqy.js";import{_ as K,u as M,P as G}from"./app-CKysWbKx.js";import{T as J,_ as S,S as W}from"./ImageUpload-CiL4KycK.js";import{C as T}from"./chevron-down-Cr9wcM6o.js";import{C as j}from"./chevron-right-BDfXxPVC.js";import{P as Y}from"./palette-Bdslkkzt.js";import"./checkoutContentFormats-02OMn5WP.js";import"./loader-circle-CWooIS5S.js";import"./upload-CCMGWz9e.js";const Q={class:"flex h-[calc(100vh-4.5rem)] min-h-0 flex-col gap-6"},Z={class:"shrink-0"},ee={class:"text-sm text-zinc-500 dark:text-zinc-400","aria-label":"Breadcrumb"},te={class:"flex min-h-0 flex-1 flex-col gap-6 lg:flex-row"},oe={class:"min-h-0 w-full flex-1 space-y-4 overflow-y-auto lg:flex-none lg:shrink-0 lg:w-[380px]"},le={class:"panel-card-lg"},ae={class:"flex items-center gap-2"},re={class:"space-y-4 border-t border-zinc-200 px-4 py-4 dark:border-zinc-700"},se={class:"flex gap-2"},ne={class:"panel-card-lg"},de={class:"flex items-center gap-2"},ie={class:"space-y-4 border-t border-zinc-200 px-4 py-4 dark:border-zinc-700"},ue={class:"flex gap-2"},pe={class:"panel-card-lg"},ce={class:"flex items-center gap-2"},me={class:"space-y-4 border-t border-zinc-200 px-4 py-4 dark:border-zinc-700"},fe={class:"text-sm font-medium text-zinc-700 dark:text-zinc-300"},xe={key:0,class:"mb-3 rounded-lg bg-red-50 px-3 py-2 text-sm text-red-700 dark:bg-red-900/30 dark:text-red-400"},be={class:"min-h-0 flex-1 overflow-auto rounded-2xl border border-zinc-200 bg-zinc-100 dark:border-zinc-700 dark:bg-zinc-900"},ge={class:"p-6"},ve={key:0,class:"aspect-video w-full overflow-hidden bg-zinc-200"},ke=["src"],_e={class:"p-6 sm:p-8"},ye={class:"mb-4 text-sm text-zinc-600"},ze={key:0,class:"mb-4 whitespace-pre-wrap text-sm text-zinc-700"},we={class:"flex flex-col gap-3 rounded-xl border-2 border-zinc-200 bg-gray-50/50 p-4 sm:flex-row sm:items-center"},he={class:"shrink-0"},Ve=["src"],Ue={class:"min-w-0 flex-1"},Ce={class:"font-semibold text-zinc-900"},Se={key:0,class:"mt-1 text-sm text-zinc-600"},c="block w-full rounded-xl border-2 border-zinc-200 bg-white px-4 py-2.5 text-zinc-900 placeholder-zinc-400 transition focus:border-[var(--color-primary)] focus:outline-none focus:ring-2 focus:ring-[var(--color-primary)]/20 dark:border-zinc-600 dark:bg-zinc-800 dark:text-white dark:placeholder-zinc-500",Ae=Object.assign({layout:K},{__name:"DownsellPageEditor",props:{produto:{type:Object,required:!0},config:{type:Object,default:()=>({})},products_for_upsell:{type:Array,default:()=>[]},type:{type:String,default:"downsell"}},setup(z){const r=z,f=C({page:!0,appearance:!0,offer:!0});function w(n){f.value[n]=!f.value[n]}const P={headline:"Última chance com desconto",subheadline:"Uma oferta que não pode ficar de fora",body_text:"",hero_image:null,hero_video_url:null,background_color:"#f3f4f6",background_image:null,show_product_just_bought:!0},D={title:"Última chance com desconto",subtitle:"Uma oferta que não pode ficar de fora",primary_color:"#0ea5e9",button_accept:"Aceitar oferta",button_decline:"Não, obrigado"},o=B({page:{...P,...r.config?.page||{}},appearance:{...D,...r.config?.appearance||{}},title_override:r.config?.title_override??"",description:r.config?.description??"",image_url:r.config?.image_url??"",video_url:r.config?.video_url??""});function $(){const n=r.config?.product_id,e=r.config?.product_offer_id;if(!n)return"Selecione o produto na aba Upsell / Downsell do produto";const l=r.products_for_upsell.find(b=>b.id===n);if(!l)return`Produto #${n}`;if(e){const b=l.offers?.find(A=>A.id===e);return b?`${l.name} — ${b.name}`:l.name}return l.name}const h=X(()=>`/produtos/${r.produto?.id}/checkout-upload`),_=C(!1),x=C("");function R(){const n=document.cookie.match(/XSRF-TOKEN=([^;]+)/);return n?decodeURIComponent(n[1]):""}async function q(){_.value=!0,x.value="";const n={config:{enabled:r.config?.enabled??!1,product_id:r.config?.product_id??null,product_offer_id:r.config?.product_offer_id??null,title_override:o.title_override||void 0,description:o.description||void 0,image_url:o.image_url||void 0,video_url:o.video_url||void 0,page:{...o.page},appearance:{...o.appearance}}};try{const e=await F.post(`/produtos/${r.produto.id}/downsell-page/config`,n,{headers:{"Content-Type":"application/json",Accept:"application/json","X-Requested-With":"XMLHttpRequest","X-XSRF-TOKEN":R()},validateStatus:()=>!0}),l=e.data;if(l?.success===!0){H.reload({preserveScroll:!0});return}if(e.status===422&&l?.errors){const b=Object.values(l.errors).flat()[0];x.value=b||l.message||"Erro de validação."}else x.value=l?.message||"Erro ao salvar."}catch(e){x.value=e.response?.data?.message||e.message||"Erro ao salvar."}finally{_.value=!1}}const{setExpanded:N}=M();return N(!1),(n,e)=>(i(),k("div",Q,[t("div",Z,[t("nav",ee,[u(d(O),{href:"/produtos",class:"hover:text-zinc-700 dark:hover:text-zinc-300"},{default:V(()=>[...e[20]||(e[20]=[g("Produtos",-1)])]),_:1}),e[21]||(e[21]=t("span",{class:"mx-1"},"/",-1)),u(d(O),{href:`/produtos/${z.produto.id}/edit`,class:"hover:text-zinc-700 dark:hover:text-zinc-300"},{default:V(()=>[g(m(z.produto.name),1)]),_:1},8,["href"]),e[22]||(e[22]=t("span",{class:"mx-1"},"/",-1)),e[23]||(e[23]=t("span",{class:"text-zinc-900 dark:text-white"},"Editar página downsell",-1))])]),t("div",te,[t("div",oe,[t("div",le,[t("button",{type:"button",class:"flex w-full items-center justify-between gap-2 px-4 py-3 text-left font-semibold text-zinc-900 dark:text-white",onClick:e[0]||(e[0]=l=>w("page"))},[t("span",ae,[u(d(J),{class:"h-5 w-5 text-zinc-500"}),e[24]||(e[24]=g(" Conteúdo da página ",-1))]),f.value.page?(i(),v(d(T),{key:0,class:"h-5 w-5 shrink-0"})):(i(),v(d(j),{key:1,class:"h-5 w-5 shrink-0"}))]),a(t("div",re,[t("div",null,[e[25]||(e[25]=t("label",{class:"mb-1.5 block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Título principal",-1)),a(t("input",{"onUpdate:modelValue":e[1]||(e[1]=l=>o.page.headline=l),type:"text",class:p(c),placeholder:"Última chance com desconto"},null,512),[[s,o.page.headline]])]),t("div",null,[e[26]||(e[26]=t("label",{class:"mb-1.5 block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Subtítulo",-1)),a(t("input",{"onUpdate:modelValue":e[2]||(e[2]=l=>o.page.subheadline=l),type:"text",class:p(c),placeholder:"Uma oferta que não pode ficar de fora"},null,512),[[s,o.page.subheadline]])]),t("div",null,[e[27]||(e[27]=t("label",{class:"mb-1.5 block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Texto adicional (opcional)",-1)),a(t("textarea",{"onUpdate:modelValue":e[3]||(e[3]=l=>o.page.body_text=l),rows:"3",class:p(c),placeholder:"Conteúdo extra de persuasão..."},null,512),[[s,o.page.body_text]])]),t("div",null,[u(S,{modelValue:o.page.hero_image,"onUpdate:modelValue":e[4]||(e[4]=l=>o.page.hero_image=l),"upload-url":h.value,label:"Imagem de topo (hero)","recommended-size":"1200×400 px"},null,8,["modelValue","upload-url"])]),t("div",null,[e[28]||(e[28]=t("label",{class:"mb-1.5 block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Vídeo (URL YouTube)",-1)),a(t("input",{"onUpdate:modelValue":e[5]||(e[5]=l=>o.page.hero_video_url=l),type:"url",class:p(c),placeholder:"https://www.youtube.com/watch?v=..."},null,512),[[s,o.page.hero_video_url]])]),t("div",null,[e[29]||(e[29]=t("label",{class:"mb-1.5 block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Cor de fundo",-1)),t("div",se,[a(t("input",{"onUpdate:modelValue":e[6]||(e[6]=l=>o.page.background_color=l),type:"color",class:"h-10 w-14 cursor-pointer rounded-lg border border-zinc-200 p-0.5 dark:border-zinc-600"},null,512),[[s,o.page.background_color]]),a(t("input",{"onUpdate:modelValue":e[7]||(e[7]=l=>o.page.background_color=l),type:"text",class:p(c+" flex-1")},null,2),[[s,o.page.background_color]])])]),t("div",null,[u(S,{modelValue:o.page.background_image,"onUpdate:modelValue":e[8]||(e[8]=l=>o.page.background_image=l),"upload-url":h.value,label:"Imagem de fundo (opcional)"},null,8,["modelValue","upload-url"])]),u(I,{modelValue:o.page.show_product_just_bought,"onUpdate:modelValue":e[9]||(e[9]=l=>o.page.show_product_just_bought=l),label:"Exibir bloco “Compra aprovada”"},null,8,["modelValue"])],512),[[U,f.value.page]])]),t("div",ne,[t("button",{type:"button",class:"flex w-full items-center justify-between gap-2 px-4 py-3 text-left font-semibold text-zinc-900 dark:text-white",onClick:e[10]||(e[10]=l=>w("appearance"))},[t("span",de,[u(d(Y),{class:"h-5 w-5 text-zinc-500"}),e[30]||(e[30]=g(" Aparência e botões ",-1))]),f.value.appearance?(i(),v(d(T),{key:0,class:"h-5 w-5 shrink-0"})):(i(),v(d(j),{key:1,class:"h-5 w-5 shrink-0"}))]),a(t("div",ie,[t("div",null,[e[31]||(e[31]=t("label",{class:"mb-1.5 block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Cor primária",-1)),t("div",ue,[a(t("input",{"onUpdate:modelValue":e[11]||(e[11]=l=>o.appearance.primary_color=l),type:"color",class:"h-10 w-14 cursor-pointer rounded-lg border border-zinc-200 p-0.5 dark:border-zinc-600"},null,512),[[s,o.appearance.primary_color]]),a(t("input",{"onUpdate:modelValue":e[12]||(e[12]=l=>o.appearance.primary_color=l),type:"text",class:p(c+" flex-1")},null,2),[[s,o.appearance.primary_color]])])]),t("div",null,[e[32]||(e[32]=t("label",{class:"mb-1.5 block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Texto botão aceitar",-1)),a(t("input",{"onUpdate:modelValue":e[13]||(e[13]=l=>o.appearance.button_accept=l),type:"text",class:p(c)},null,512),[[s,o.appearance.button_accept]])]),t("div",null,[e[33]||(e[33]=t("label",{class:"mb-1.5 block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Texto botão recusar",-1)),a(t("input",{"onUpdate:modelValue":e[14]||(e[14]=l=>o.appearance.button_decline=l),type:"text",class:p(c)},null,512),[[s,o.appearance.button_decline]])])],512),[[U,f.value.appearance]])]),t("div",pe,[t("button",{type:"button",class:"flex w-full items-center justify-between gap-2 px-4 py-3 text-left font-semibold text-zinc-900 dark:text-white",onClick:e[15]||(e[15]=l=>w("offer"))},[t("span",ce,[u(d(G),{class:"h-5 w-5 text-zinc-500"}),e[34]||(e[34]=g(" Conteúdo da oferta ",-1))]),f.value.offer?(i(),v(d(T),{key:0,class:"h-5 w-5 shrink-0"})):(i(),v(d(j),{key:1,class:"h-5 w-5 shrink-0"}))]),a(t("div",me,[e[38]||(e[38]=t("p",{class:"text-xs text-zinc-500 dark:text-zinc-400"}," O produto da oferta é definido na aba Upsell / Downsell. Aqui você personaliza título, descrição, imagem e vídeo. ",-1)),t("p",fe,m($()),1),t("div",null,[e[35]||(e[35]=t("label",{class:"mb-0.5 block text-xs font-medium text-zinc-600 dark:text-zinc-400"},"Título (override)",-1)),a(t("input",{"onUpdate:modelValue":e[16]||(e[16]=l=>o.title_override=l),type:"text",class:p(c),placeholder:"Deixe vazio para usar nome do produto"},null,512),[[s,o.title_override]])]),t("div",null,[e[36]||(e[36]=t("label",{class:"mb-0.5 block text-xs font-medium text-zinc-600 dark:text-zinc-400"},"Descrição / copy",-1)),a(t("textarea",{"onUpdate:modelValue":e[17]||(e[17]=l=>o.description=l),rows:"3",class:p(c),placeholder:"Texto de persuasão para esta oferta"},null,512),[[s,o.description]])]),t("div",null,[u(S,{modelValue:o.image_url,"onUpdate:modelValue":e[18]||(e[18]=l=>o.image_url=l),"upload-url":h.value,label:"Imagem da oferta","recommended-size":"400×400 px"},null,8,["modelValue","upload-url"])]),t("div",null,[e[37]||(e[37]=t("label",{class:"mb-0.5 block text-xs font-medium text-zinc-600 dark:text-zinc-400"},"Vídeo (URL)",-1)),a(t("input",{"onUpdate:modelValue":e[19]||(e[19]=l=>o.video_url=l),type:"url",class:p(c),placeholder:"https://youtube.com/..."},null,512),[[s,o.video_url]])])],512),[[U,f.value.offer]])]),x.value?(i(),k("p",xe,m(x.value),1)):y("",!0),u(L,{type:"button",class:"w-full rounded-xl",disabled:_.value,onClick:q},{default:V(()=>[u(d(W),{class:"mr-2 h-4 w-4"}),g(" "+m(_.value?"Salvando...":"Salvar página downsell"),1)]),_:1},8,["disabled"])]),t("div",be,[t("div",ge,[e[39]||(e[39]=t("p",{class:"mb-4 text-sm font-medium text-zinc-600 dark:text-zinc-400"},"Preview (estático)",-1)),t("div",{class:"mx-auto max-w-2xl overflow-hidden rounded-2xl border border-zinc-200 bg-white shadow-lg",style:E({backgroundColor:o.page.background_color||"#f3f4f6"})},[o.page.hero_image?(i(),k("div",ve,[t("img",{src:o.page.hero_image,alt:"Hero",class:"h-full w-full object-cover"},null,8,ke)])):y("",!0),t("div",_e,[t("h2",{class:"mb-1 text-xl font-bold",style:E({color:o.appearance.primary_color})},m(o.page.headline||"Título"),5),t("p",ye,m(o.page.subheadline||"Subtítulo"),1),o.page.body_text?(i(),k("p",ze,m(o.page.body_text),1)):y("",!0),t("div",we,[t("div",he,[t("img",{src:o.image_url||"https://placehold.co/96x96/e2e8f0/64748b?text=Oferta",alt:"",class:"h-24 w-24 rounded-lg object-cover"},null,8,Ve)]),t("div",Ue,[t("h3",Ce,m(o.title_override||$()),1),o.description?(i(),k("p",Se,m(o.description),1)):y("",!0)])])])],4)])])])]))}});export{Ae as default}; +import{J as B,o as i,c as k,a as t,g as u,h as V,i as g,u as d,t as m,f as v,b as a,bG as U,s as p,v as s,d as y,x as E,r as C,n as X}from"./runtime-dom.esm-bundler-OrSu0e66.js";import{l as O,i as I,_ as L,b as F,r as H}from"./Toggle-BD3dflqy.js";import{_ as K,u as M,P as G}from"./app-CT8pqccC.js";import{T as J,_ as S,S as W}from"./ImageUpload-CiL4KycK.js";import{C as T}from"./chevron-down-Cr9wcM6o.js";import{C as j}from"./chevron-right-BDfXxPVC.js";import{P as Y}from"./palette-Bdslkkzt.js";import"./checkoutContentFormats-02OMn5WP.js";import"./loader-circle-CWooIS5S.js";import"./upload-CCMGWz9e.js";const Q={class:"flex h-[calc(100vh-4.5rem)] min-h-0 flex-col gap-6"},Z={class:"shrink-0"},ee={class:"text-sm text-zinc-500 dark:text-zinc-400","aria-label":"Breadcrumb"},te={class:"flex min-h-0 flex-1 flex-col gap-6 lg:flex-row"},oe={class:"min-h-0 w-full flex-1 space-y-4 overflow-y-auto lg:flex-none lg:shrink-0 lg:w-[380px]"},le={class:"panel-card-lg"},ae={class:"flex items-center gap-2"},re={class:"space-y-4 border-t border-zinc-200 px-4 py-4 dark:border-zinc-700"},se={class:"flex gap-2"},ne={class:"panel-card-lg"},de={class:"flex items-center gap-2"},ie={class:"space-y-4 border-t border-zinc-200 px-4 py-4 dark:border-zinc-700"},ue={class:"flex gap-2"},pe={class:"panel-card-lg"},ce={class:"flex items-center gap-2"},me={class:"space-y-4 border-t border-zinc-200 px-4 py-4 dark:border-zinc-700"},fe={class:"text-sm font-medium text-zinc-700 dark:text-zinc-300"},xe={key:0,class:"mb-3 rounded-lg bg-red-50 px-3 py-2 text-sm text-red-700 dark:bg-red-900/30 dark:text-red-400"},be={class:"min-h-0 flex-1 overflow-auto rounded-2xl border border-zinc-200 bg-zinc-100 dark:border-zinc-700 dark:bg-zinc-900"},ge={class:"p-6"},ve={key:0,class:"aspect-video w-full overflow-hidden bg-zinc-200"},ke=["src"],_e={class:"p-6 sm:p-8"},ye={class:"mb-4 text-sm text-zinc-600"},ze={key:0,class:"mb-4 whitespace-pre-wrap text-sm text-zinc-700"},we={class:"flex flex-col gap-3 rounded-xl border-2 border-zinc-200 bg-gray-50/50 p-4 sm:flex-row sm:items-center"},he={class:"shrink-0"},Ve=["src"],Ue={class:"min-w-0 flex-1"},Ce={class:"font-semibold text-zinc-900"},Se={key:0,class:"mt-1 text-sm text-zinc-600"},c="block w-full rounded-xl border-2 border-zinc-200 bg-white px-4 py-2.5 text-zinc-900 placeholder-zinc-400 transition focus:border-[var(--color-primary)] focus:outline-none focus:ring-2 focus:ring-[var(--color-primary)]/20 dark:border-zinc-600 dark:bg-zinc-800 dark:text-white dark:placeholder-zinc-500",Ae=Object.assign({layout:K},{__name:"DownsellPageEditor",props:{produto:{type:Object,required:!0},config:{type:Object,default:()=>({})},products_for_upsell:{type:Array,default:()=>[]},type:{type:String,default:"downsell"}},setup(z){const r=z,f=C({page:!0,appearance:!0,offer:!0});function w(n){f.value[n]=!f.value[n]}const P={headline:"Última chance com desconto",subheadline:"Uma oferta que não pode ficar de fora",body_text:"",hero_image:null,hero_video_url:null,background_color:"#f3f4f6",background_image:null,show_product_just_bought:!0},D={title:"Última chance com desconto",subtitle:"Uma oferta que não pode ficar de fora",primary_color:"#0ea5e9",button_accept:"Aceitar oferta",button_decline:"Não, obrigado"},o=B({page:{...P,...r.config?.page||{}},appearance:{...D,...r.config?.appearance||{}},title_override:r.config?.title_override??"",description:r.config?.description??"",image_url:r.config?.image_url??"",video_url:r.config?.video_url??""});function $(){const n=r.config?.product_id,e=r.config?.product_offer_id;if(!n)return"Selecione o produto na aba Upsell / Downsell do produto";const l=r.products_for_upsell.find(b=>b.id===n);if(!l)return`Produto #${n}`;if(e){const b=l.offers?.find(A=>A.id===e);return b?`${l.name} — ${b.name}`:l.name}return l.name}const h=X(()=>`/produtos/${r.produto?.id}/checkout-upload`),_=C(!1),x=C("");function R(){const n=document.cookie.match(/XSRF-TOKEN=([^;]+)/);return n?decodeURIComponent(n[1]):""}async function q(){_.value=!0,x.value="";const n={config:{enabled:r.config?.enabled??!1,product_id:r.config?.product_id??null,product_offer_id:r.config?.product_offer_id??null,title_override:o.title_override||void 0,description:o.description||void 0,image_url:o.image_url||void 0,video_url:o.video_url||void 0,page:{...o.page},appearance:{...o.appearance}}};try{const e=await F.post(`/produtos/${r.produto.id}/downsell-page/config`,n,{headers:{"Content-Type":"application/json",Accept:"application/json","X-Requested-With":"XMLHttpRequest","X-XSRF-TOKEN":R()},validateStatus:()=>!0}),l=e.data;if(l?.success===!0){H.reload({preserveScroll:!0});return}if(e.status===422&&l?.errors){const b=Object.values(l.errors).flat()[0];x.value=b||l.message||"Erro de validação."}else x.value=l?.message||"Erro ao salvar."}catch(e){x.value=e.response?.data?.message||e.message||"Erro ao salvar."}finally{_.value=!1}}const{setExpanded:N}=M();return N(!1),(n,e)=>(i(),k("div",Q,[t("div",Z,[t("nav",ee,[u(d(O),{href:"/produtos",class:"hover:text-zinc-700 dark:hover:text-zinc-300"},{default:V(()=>[...e[20]||(e[20]=[g("Produtos",-1)])]),_:1}),e[21]||(e[21]=t("span",{class:"mx-1"},"/",-1)),u(d(O),{href:`/produtos/${z.produto.id}/edit`,class:"hover:text-zinc-700 dark:hover:text-zinc-300"},{default:V(()=>[g(m(z.produto.name),1)]),_:1},8,["href"]),e[22]||(e[22]=t("span",{class:"mx-1"},"/",-1)),e[23]||(e[23]=t("span",{class:"text-zinc-900 dark:text-white"},"Editar página downsell",-1))])]),t("div",te,[t("div",oe,[t("div",le,[t("button",{type:"button",class:"flex w-full items-center justify-between gap-2 px-4 py-3 text-left font-semibold text-zinc-900 dark:text-white",onClick:e[0]||(e[0]=l=>w("page"))},[t("span",ae,[u(d(J),{class:"h-5 w-5 text-zinc-500"}),e[24]||(e[24]=g(" Conteúdo da página ",-1))]),f.value.page?(i(),v(d(T),{key:0,class:"h-5 w-5 shrink-0"})):(i(),v(d(j),{key:1,class:"h-5 w-5 shrink-0"}))]),a(t("div",re,[t("div",null,[e[25]||(e[25]=t("label",{class:"mb-1.5 block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Título principal",-1)),a(t("input",{"onUpdate:modelValue":e[1]||(e[1]=l=>o.page.headline=l),type:"text",class:p(c),placeholder:"Última chance com desconto"},null,512),[[s,o.page.headline]])]),t("div",null,[e[26]||(e[26]=t("label",{class:"mb-1.5 block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Subtítulo",-1)),a(t("input",{"onUpdate:modelValue":e[2]||(e[2]=l=>o.page.subheadline=l),type:"text",class:p(c),placeholder:"Uma oferta que não pode ficar de fora"},null,512),[[s,o.page.subheadline]])]),t("div",null,[e[27]||(e[27]=t("label",{class:"mb-1.5 block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Texto adicional (opcional)",-1)),a(t("textarea",{"onUpdate:modelValue":e[3]||(e[3]=l=>o.page.body_text=l),rows:"3",class:p(c),placeholder:"Conteúdo extra de persuasão..."},null,512),[[s,o.page.body_text]])]),t("div",null,[u(S,{modelValue:o.page.hero_image,"onUpdate:modelValue":e[4]||(e[4]=l=>o.page.hero_image=l),"upload-url":h.value,label:"Imagem de topo (hero)","recommended-size":"1200×400 px"},null,8,["modelValue","upload-url"])]),t("div",null,[e[28]||(e[28]=t("label",{class:"mb-1.5 block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Vídeo (URL YouTube)",-1)),a(t("input",{"onUpdate:modelValue":e[5]||(e[5]=l=>o.page.hero_video_url=l),type:"url",class:p(c),placeholder:"https://www.youtube.com/watch?v=..."},null,512),[[s,o.page.hero_video_url]])]),t("div",null,[e[29]||(e[29]=t("label",{class:"mb-1.5 block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Cor de fundo",-1)),t("div",se,[a(t("input",{"onUpdate:modelValue":e[6]||(e[6]=l=>o.page.background_color=l),type:"color",class:"h-10 w-14 cursor-pointer rounded-lg border border-zinc-200 p-0.5 dark:border-zinc-600"},null,512),[[s,o.page.background_color]]),a(t("input",{"onUpdate:modelValue":e[7]||(e[7]=l=>o.page.background_color=l),type:"text",class:p(c+" flex-1")},null,2),[[s,o.page.background_color]])])]),t("div",null,[u(S,{modelValue:o.page.background_image,"onUpdate:modelValue":e[8]||(e[8]=l=>o.page.background_image=l),"upload-url":h.value,label:"Imagem de fundo (opcional)"},null,8,["modelValue","upload-url"])]),u(I,{modelValue:o.page.show_product_just_bought,"onUpdate:modelValue":e[9]||(e[9]=l=>o.page.show_product_just_bought=l),label:"Exibir bloco “Compra aprovada”"},null,8,["modelValue"])],512),[[U,f.value.page]])]),t("div",ne,[t("button",{type:"button",class:"flex w-full items-center justify-between gap-2 px-4 py-3 text-left font-semibold text-zinc-900 dark:text-white",onClick:e[10]||(e[10]=l=>w("appearance"))},[t("span",de,[u(d(Y),{class:"h-5 w-5 text-zinc-500"}),e[30]||(e[30]=g(" Aparência e botões ",-1))]),f.value.appearance?(i(),v(d(T),{key:0,class:"h-5 w-5 shrink-0"})):(i(),v(d(j),{key:1,class:"h-5 w-5 shrink-0"}))]),a(t("div",ie,[t("div",null,[e[31]||(e[31]=t("label",{class:"mb-1.5 block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Cor primária",-1)),t("div",ue,[a(t("input",{"onUpdate:modelValue":e[11]||(e[11]=l=>o.appearance.primary_color=l),type:"color",class:"h-10 w-14 cursor-pointer rounded-lg border border-zinc-200 p-0.5 dark:border-zinc-600"},null,512),[[s,o.appearance.primary_color]]),a(t("input",{"onUpdate:modelValue":e[12]||(e[12]=l=>o.appearance.primary_color=l),type:"text",class:p(c+" flex-1")},null,2),[[s,o.appearance.primary_color]])])]),t("div",null,[e[32]||(e[32]=t("label",{class:"mb-1.5 block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Texto botão aceitar",-1)),a(t("input",{"onUpdate:modelValue":e[13]||(e[13]=l=>o.appearance.button_accept=l),type:"text",class:p(c)},null,512),[[s,o.appearance.button_accept]])]),t("div",null,[e[33]||(e[33]=t("label",{class:"mb-1.5 block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Texto botão recusar",-1)),a(t("input",{"onUpdate:modelValue":e[14]||(e[14]=l=>o.appearance.button_decline=l),type:"text",class:p(c)},null,512),[[s,o.appearance.button_decline]])])],512),[[U,f.value.appearance]])]),t("div",pe,[t("button",{type:"button",class:"flex w-full items-center justify-between gap-2 px-4 py-3 text-left font-semibold text-zinc-900 dark:text-white",onClick:e[15]||(e[15]=l=>w("offer"))},[t("span",ce,[u(d(G),{class:"h-5 w-5 text-zinc-500"}),e[34]||(e[34]=g(" Conteúdo da oferta ",-1))]),f.value.offer?(i(),v(d(T),{key:0,class:"h-5 w-5 shrink-0"})):(i(),v(d(j),{key:1,class:"h-5 w-5 shrink-0"}))]),a(t("div",me,[e[38]||(e[38]=t("p",{class:"text-xs text-zinc-500 dark:text-zinc-400"}," O produto da oferta é definido na aba Upsell / Downsell. Aqui você personaliza título, descrição, imagem e vídeo. ",-1)),t("p",fe,m($()),1),t("div",null,[e[35]||(e[35]=t("label",{class:"mb-0.5 block text-xs font-medium text-zinc-600 dark:text-zinc-400"},"Título (override)",-1)),a(t("input",{"onUpdate:modelValue":e[16]||(e[16]=l=>o.title_override=l),type:"text",class:p(c),placeholder:"Deixe vazio para usar nome do produto"},null,512),[[s,o.title_override]])]),t("div",null,[e[36]||(e[36]=t("label",{class:"mb-0.5 block text-xs font-medium text-zinc-600 dark:text-zinc-400"},"Descrição / copy",-1)),a(t("textarea",{"onUpdate:modelValue":e[17]||(e[17]=l=>o.description=l),rows:"3",class:p(c),placeholder:"Texto de persuasão para esta oferta"},null,512),[[s,o.description]])]),t("div",null,[u(S,{modelValue:o.image_url,"onUpdate:modelValue":e[18]||(e[18]=l=>o.image_url=l),"upload-url":h.value,label:"Imagem da oferta","recommended-size":"400×400 px"},null,8,["modelValue","upload-url"])]),t("div",null,[e[37]||(e[37]=t("label",{class:"mb-0.5 block text-xs font-medium text-zinc-600 dark:text-zinc-400"},"Vídeo (URL)",-1)),a(t("input",{"onUpdate:modelValue":e[19]||(e[19]=l=>o.video_url=l),type:"url",class:p(c),placeholder:"https://youtube.com/..."},null,512),[[s,o.video_url]])])],512),[[U,f.value.offer]])]),x.value?(i(),k("p",xe,m(x.value),1)):y("",!0),u(L,{type:"button",class:"w-full rounded-xl",disabled:_.value,onClick:q},{default:V(()=>[u(d(W),{class:"mr-2 h-4 w-4"}),g(" "+m(_.value?"Salvando...":"Salvar página downsell"),1)]),_:1},8,["disabled"])]),t("div",be,[t("div",ge,[e[39]||(e[39]=t("p",{class:"mb-4 text-sm font-medium text-zinc-600 dark:text-zinc-400"},"Preview (estático)",-1)),t("div",{class:"mx-auto max-w-2xl overflow-hidden rounded-2xl border border-zinc-200 bg-white shadow-lg",style:E({backgroundColor:o.page.background_color||"#f3f4f6"})},[o.page.hero_image?(i(),k("div",ve,[t("img",{src:o.page.hero_image,alt:"Hero",class:"h-full w-full object-cover"},null,8,ke)])):y("",!0),t("div",_e,[t("h2",{class:"mb-1 text-xl font-bold",style:E({color:o.appearance.primary_color})},m(o.page.headline||"Título"),5),t("p",ye,m(o.page.subheadline||"Subtítulo"),1),o.page.body_text?(i(),k("p",ze,m(o.page.body_text),1)):y("",!0),t("div",we,[t("div",he,[t("img",{src:o.image_url||"https://placehold.co/96x96/e2e8f0/64748b?text=Oferta",alt:"",class:"h-24 w-24 rounded-lg object-cover"},null,8,Ve)]),t("div",Ue,[t("h3",Ce,m(o.title_override||$()),1),o.description?(i(),k("p",Se,m(o.description),1)):y("",!0)])])])],4)])])])]))}});export{Ae as default}; diff --git a/public/build/assets/Edit-wYXp4qv5.js b/public/build/assets/Edit-C1N4dHMf.js similarity index 99% rename from public/build/assets/Edit-wYXp4qv5.js rename to public/build/assets/Edit-C1N4dHMf.js index c4b3437b..4a59d749 100644 --- a/public/build/assets/Edit-wYXp4qv5.js +++ b/public/build/assets/Edit-C1N4dHMf.js @@ -1,5 +1,5 @@ -const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/FlowCanvasEditor-Ce7pIxz8.js","assets/runtime-dom.esm-bundler-OrSu0e66.js","assets/Toggle-BD3dflqy.js","assets/trash-2-Bxek5XZ9.js","assets/FlowCanvasEditor-B0og28R1.css","assets/Index-BdJciqB2.js","assets/app-CKysWbKx.js","assets/IntegrationsSidebar-g5vQahAQ.js","assets/ProductPanel-By9st8ds.js","assets/Index-NHtIiekS.js","assets/SettingsTab-BdcPaOEh.js","assets/upload-CCMGWz9e.js","assets/copy-CAHk-g6g.js"])))=>i.map(i=>d[i]); -import{C as Zt,W as wo,_ as Co,u as $o,g as fa,P as $t,L as So,S as Po,c as Vo,a as De}from"./app-CKysWbKx.js";import{o as s,f as L,h as v,g as d,u as o,s as g,c as l,F as z,y as I,i as c,t as p,n as N,A as at,b as x,bG as nt,a as t,d as m,v as $,T as ot,r as C,k as ea,bF as Z,bD as We,w as ae,l as Uo,J as jo,z as qe,ac as we,B as Fe,bE as St,bN as ga}from"./runtime-dom.esm-bundler-OrSu0e66.js";import{c as ta,q as Ao,b as de,X as rt,_ as E,U as jt,M as wa,l as Y,u as et,i as me,S as Wt,h as Pt,r as ie,d as Eo}from"./Toggle-BD3dflqy.js";import{_ as Io}from"./HorizontalScrollTabs-B3gLPvR5.js";import{_ as Qt}from"./Checkbox-UjOITAEK.js";import{H as Ro,a as Mo,W as Lo,j as No,Q as To,q as Oo,Y as Bo,J as Do,K as qo}from"./index-C9D62LIC.js";import{C as At}from"./chevron-down-Cr9wcM6o.js";import{_ as Fo}from"./GatewayRedundancySidebar-DyzB1XM0.js";import{L as He}from"./loader-circle-CWooIS5S.js";import{_ as Ca}from"./ProductPartnersTable-YFqRcSS_.js";import{Z as _a}from"./zap-BagaW96t.js";import{I as Go}from"./info-wvqULVyO.js";import{S as Xo}from"./search-5WwcWNIL.js";import{_ as Ho}from"./PluginSlotHost-C8FGeyJc.js";import{_ as Wo}from"./PluginRenderZone-DOCYgizh.js";import{_ as Qo}from"./_plugin-vue_export-helper-DlAUqK2U.js";import{a as ka}from"./conversionPixels-CP63ox30.js";import{u as Jo}from"./usePluginComponentResolver-B3LOy7xR.js";import{I as za}from"./image-Aikc9zug.js";import{L as be}from"./layers-R-sja8g7.js";import{L as Ge}from"./link-2-CaG2dTr0.js";import{P as Xe}from"./pencil-De6Ibr3Z.js";import{T as Vt}from"./trash-2-Bxek5XZ9.js";import{P as tt}from"./plus-C8Znz4zD.js";import{M as Jt}from"./map-pin-Cnsc9Gjd.js";import{C as Ko}from"./credit-card-BEa3N8tE.js";import{C as ha}from"./copy-CAHk-g6g.js";import{H as Yo}from"./handshake-ChMiz3jx.js";import"./floating-ui.dom-RhtQlTMy.js";import"./chevron-up-LCq4Peo3.js";import"./ellipsis-vertical-DayR1-An.js";const Zo=ta("arrow-up-down",[["path",{d:"m21 16-4 4-4-4",key:"f6ql7i"}],["path",{d:"M17 20V4",key:"1ejh1v"}],["path",{d:"m3 8 4-4 4 4",key:"11wl7u"}],["path",{d:"M7 4v16",key:"1glfcx"}]]);const er=ta("layout-grid",[["rect",{width:"7",height:"7",x:"3",y:"3",rx:"1",key:"1g98yp"}],["rect",{width:"7",height:"7",x:"14",y:"3",rx:"1",key:"6d4xhi"}],["rect",{width:"7",height:"7",x:"14",y:"14",rx:"1",key:"nxv5o0"}],["rect",{width:"7",height:"7",x:"3",y:"14",rx:"1",key:"1bb6yr"}]]);const tr=ta("sliders-horizontal",[["path",{d:"M10 5H3",key:"1qgfaw"}],["path",{d:"M12 19H3",key:"yhmn1j"}],["path",{d:"M14 3v4",key:"1sua03"}],["path",{d:"M16 17v4",key:"1q0r14"}],["path",{d:"M21 12h-9",key:"1o4lsq"}],["path",{d:"M21 19h-5",key:"1rlt1p"}],["path",{d:"M21 5h-7",key:"1oszz2"}],["path",{d:"M8 10v4",key:"tgpxqk"}],["path",{d:"M8 12H3",key:"a7s4jb"}]]),Kt="__none__",ke={__name:"GatewaySelect",props:{modelValue:{type:String,default:""},options:{type:Array,default:()=>[]},placeholder:{type:String,default:"Selecione..."},label:{type:String,default:""},disabled:{type:Boolean,default:!1}},emits:["update:modelValue"],setup(k,{emit:W}){const B=k,T=W,j=N({get:()=>B.modelValue===""?Kt:B.modelValue,set:h=>T("update:modelValue",h===Kt?"":h)}),R=N(()=>B.options.map(h=>({value:h.value===""?Kt:h.value,label:h.label}))),M=Ao("flex h-12 w-full cursor-pointer items-center justify-between gap-2 rounded-xl border-2 border-zinc-200 bg-white px-4 py-3 text-left text-sm transition","hover:border-zinc-300 focus:outline-none focus:ring-2 focus:ring-[var(--color-primary)]/20 focus:ring-offset-0","data-[placeholder]:text-zinc-500","dark:border-zinc-600 dark:bg-zinc-800 dark:text-white dark:hover:border-zinc-500 dark:data-[placeholder]:text-zinc-400");return(h,oe)=>(s(),L(o(qo),{modelValue:j.value,"onUpdate:modelValue":oe[0]||(oe[0]=ee=>j.value=ee),disabled:k.disabled},{default:v(()=>[d(o(Ro),{class:g(o(M)),type:"button","aria-label":k.label||k.placeholder},{default:v(()=>[d(o(Mo),{placeholder:k.placeholder},null,8,["placeholder"]),d(o(At),{class:"h-5 w-5 shrink-0 text-zinc-400 dark:text-zinc-500","aria-hidden":"true"})]),_:1},8,["class","aria-label"]),d(o(Lo),{to:"body"},{default:v(()=>[d(o(No),{class:"z-[9999] min-w-[var(--radix-select-trigger-width)] overflow-hidden rounded-xl border border-zinc-200 bg-white py-1 shadow-xl dark:border-zinc-600 dark:bg-zinc-800","side-offset":4,position:"popper","avoid-collisions":!0},{default:v(()=>[d(o(To),{class:"p-1"},{default:v(()=>[(s(!0),l(z,null,I(R.value,ee=>(s(),L(o(Oo),{key:String(ee.value),value:ee.value,class:"relative flex cursor-pointer select-none items-center rounded-lg py-2.5 pl-10 pr-4 text-sm outline-none transition data-[highlighted]:bg-[var(--color-primary)]/10 data-[highlighted]:text-[var(--color-primary)] data-[state=checked]:bg-[var(--color-primary)]/10 data-[state=checked]:text-[var(--color-primary)] dark:data-[highlighted]:bg-[var(--color-primary)]/20 dark:data-[state=checked]:bg-[var(--color-primary)]/20"},{default:v(()=>[d(o(Bo),{class:"absolute left-3 flex h-4 w-4 items-center justify-center"},{default:v(()=>[d(o(Zt),{class:"h-4 w-4 text-[var(--color-primary)]"})]),_:1}),d(o(Do),null,{default:v(()=>[c(p(ee.label),1)]),_:2},1024)]),_:2},1032,["value"]))),128))]),_:1})]),_:1})]),_:1})]),_:1},8,["modelValue","disabled"]))}},ar={class:"fixed inset-0 z-[100000] flex justify-end","aria-modal":"true",role:"dialog"},or={class:"relative flex h-full w-full max-w-md flex-col rounded-l-2xl bg-white shadow-xl dark:bg-zinc-900"},rr={class:"flex items-center justify-between rounded-tl-2xl border-b border-zinc-200 px-4 py-4 dark:border-zinc-700"},nr={class:"flex flex-1 flex-col overflow-y-auto p-4"},sr={key:0,class:"mb-4 flex items-center gap-2 text-sm text-zinc-500"},lr={key:1,class:"mb-4 rounded-lg border border-amber-200 bg-amber-50 px-3 py-2 text-xs text-amber-800 dark:border-amber-800 dark:bg-amber-950/40 dark:text-amber-200"},ir={key:2,class:"mb-4 rounded-lg border border-zinc-200 bg-zinc-50 px-3 py-2 text-xs text-zinc-600 dark:border-zinc-600 dark:bg-zinc-800/50 dark:text-zinc-300"},dr={class:"space-y-4"},ur={class:"grid grid-cols-2 gap-3"},cr=["value"],pr=["value"],mr=["value"],br=["value"],xr=["value"],yr={class:"border-t border-zinc-200 p-4 dark:border-zinc-700"},vr={__name:"PixParceladoRulesSidebar",props:{open:{type:Boolean,default:!1},productId:{type:[String,Number],required:!0},priceBrl:{type:Number,default:0},modelValue:{type:Object,default:()=>({})}},emits:["close","update:modelValue","save"],setup(k,{emit:W}){const B=k,T=W,j=C({}),R=C(!1),M=C(""),h=C(null),oe=C({});function ee(){return{max_installments:null,down_payment_cents:null,min_down_payment_bps:null,max_down_payment_bps:null,early_payment_discount_bps:0,payoff_discount_bps:0,overdue_payoff_discount_bps:0}}at(()=>[B.open,B.modelValue],([_,w])=>{_&&(j.value={...ee(),...w&&typeof w=="object"?w:{}},oe.value={},F())},{immediate:!0});async function F(){R.value=!0,M.value="";try{const{data:_}=await de.get(`/produtos/${B.productId}/pix-parcelado/platform-rules`);h.value=_?.merged??_}catch(_){M.value=_?.response?.data?.message||"Não foi possível carregar regras da plataforma.",h.value=null}finally{R.value=!1}}const re=N(()=>{const _=h.value?.platform_max_installments??h.value?.max_installments;return _?`${_}x`:"—"});function ne(_){return _==null||_===""?"":String(Number(_)/100)}function se(_){if(_===""||_==null)return null;const w=parseFloat(String(_).replace(",","."));return Number.isNaN(w)?null:Math.round(w*100)}function le(_){return _==null||_===""?"":(Number(_)/100).toFixed(2).replace(".",",")}function ze(_){if(_===""||_==null)return null;const w=parseFloat(String(_).replace(/\./g,"").replace(",","."));return Number.isNaN(w)?null:Math.round(w*100)}const G=N({get:()=>le(j.value.down_payment_cents),set:_=>{j.value.down_payment_cents=ze(_)}});function u(){oe.value={},T("update:modelValue",{...j.value}),T("save",{...j.value}),T("close")}function f(){T("close")}return(_,w)=>(s(),L(ot,{to:"body"},[x(t("div",ar,[t("div",{class:"fixed inset-0 bg-zinc-900/50 dark:bg-zinc-950/60","aria-hidden":"true",onClick:f}),t("aside",or,[t("div",rr,[w[7]||(w[7]=t("h2",{class:"text-lg font-semibold text-zinc-900 dark:text-white"},"Regras PIX Parcelado",-1)),t("button",{type:"button",class:"rounded-lg p-2 text-zinc-500 hover:bg-zinc-100 dark:hover:bg-zinc-800","aria-label":"Fechar",onClick:f},[d(o(rt),{class:"h-5 w-5"})])]),t("div",nr,[w[17]||(w[17]=t("p",{class:"mb-4 text-sm text-zinc-600 dark:text-zinc-400"}," Configure entrada, parcelas e descontos congelados no plano CajuPay. Valor mínimo R$ 50,00. ",-1)),R.value?(s(),l("div",sr,[d(o(He),{class:"h-4 w-4 animate-spin"}),w[8]||(w[8]=c(" Carregando faixas da plataforma… ",-1))])):M.value?(s(),l("p",lr,p(M.value),1)):h.value?(s(),l("p",ir,[c(" Com preço R$ "+p(k.priceBrl.toFixed(2).replace(".",","))+", a plataforma permite até ",1),t("strong",null,p(re.value),1),w[9]||(w[9]=c(" parcelas. ",-1))])):m("",!0),t("div",dr,[t("div",null,[w[10]||(w[10]=t("label",{class:"mb-1.5 block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Máximo de parcelas (opcional)",-1)),x(t("input",{"onUpdate:modelValue":w[0]||(w[0]=X=>j.value.max_installments=X),type:"number",min:"1",max:"24",placeholder:"Usar só limite da plataforma",class:"w-full rounded-lg border border-zinc-300 bg-white px-3 py-2.5 text-sm dark:border-zinc-600 dark:bg-zinc-800 dark:text-zinc-100"},null,512),[[$,j.value.max_installments,void 0,{number:!0}]])]),t("div",null,[w[11]||(w[11]=t("label",{class:"mb-1.5 block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Entrada fixa (R$)",-1)),x(t("input",{"onUpdate:modelValue":w[1]||(w[1]=X=>G.value=X),type:"text",inputmode:"decimal",placeholder:"Opcional",class:"w-full rounded-lg border border-zinc-300 bg-white px-3 py-2.5 text-sm dark:border-zinc-600 dark:bg-zinc-800 dark:text-zinc-100"},null,512),[[$,G.value]])]),t("div",ur,[t("div",null,[w[12]||(w[12]=t("label",{class:"mb-1.5 block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Entrada mínima (%)",-1)),t("input",{value:ne(j.value.min_down_payment_bps),type:"text",inputmode:"decimal",placeholder:"Ex.: 20",class:"w-full rounded-lg border border-zinc-300 bg-white px-3 py-2.5 text-sm dark:border-zinc-600 dark:bg-zinc-800 dark:text-zinc-100",onInput:w[2]||(w[2]=X=>j.value.min_down_payment_bps=se(X.target.value))},null,40,cr)]),t("div",null,[w[13]||(w[13]=t("label",{class:"mb-1.5 block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Entrada máxima (%)",-1)),t("input",{value:ne(j.value.max_down_payment_bps),type:"text",inputmode:"decimal",placeholder:"Ex.: 60",class:"w-full rounded-lg border border-zinc-300 bg-white px-3 py-2.5 text-sm dark:border-zinc-600 dark:bg-zinc-800 dark:text-zinc-100",onInput:w[3]||(w[3]=X=>j.value.max_down_payment_bps=se(X.target.value))},null,40,pr)])]),t("div",null,[w[14]||(w[14]=t("label",{class:"mb-1.5 block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Desconto antecipação (%)",-1)),t("input",{value:ne(j.value.early_payment_discount_bps),type:"text",inputmode:"decimal",class:"w-full rounded-lg border border-zinc-300 bg-white px-3 py-2.5 text-sm dark:border-zinc-600 dark:bg-zinc-800 dark:text-zinc-100",onInput:w[4]||(w[4]=X=>j.value.early_payment_discount_bps=se(X.target.value)??0)},null,40,mr)]),t("div",null,[w[15]||(w[15]=t("label",{class:"mb-1.5 block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Desconto quitação (%)",-1)),t("input",{value:ne(j.value.payoff_discount_bps),type:"text",inputmode:"decimal",class:"w-full rounded-lg border border-zinc-300 bg-white px-3 py-2.5 text-sm dark:border-zinc-600 dark:bg-zinc-800 dark:text-zinc-100",onInput:w[5]||(w[5]=X=>j.value.payoff_discount_bps=se(X.target.value)??0)},null,40,br)]),t("div",null,[w[16]||(w[16]=t("label",{class:"mb-1.5 block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Desconto quitação em atraso (%)",-1)),t("input",{value:ne(j.value.overdue_payoff_discount_bps),type:"text",inputmode:"decimal",class:"w-full rounded-lg border border-zinc-300 bg-white px-3 py-2.5 text-sm dark:border-zinc-600 dark:bg-zinc-800 dark:text-zinc-100",onInput:w[6]||(w[6]=X=>j.value.overdue_payoff_discount_bps=se(X.target.value)??0)},null,40,xr)])])]),t("div",yr,[d(E,{type:"button",class:"w-full",onClick:u},{default:v(()=>[...w[18]||(w[18]=[c("Salvar regras",-1)])]),_:1})])])],512),[[nt,k.open]])]))}},fr={class:"panel-card-lg space-y-8"},gr={class:"rounded-xl border border-zinc-200 bg-zinc-50/80 p-4 dark:border-zinc-700 dark:bg-zinc-900/40"},_r={class:"flex flex-wrap items-start justify-between gap-3"},kr={class:"flex items-start gap-2"},zr=["aria-checked","disabled"],hr={key:0,class:"mt-3 text-xs text-amber-700 dark:text-amber-400"},wr={class:"grid gap-4 md:grid-cols-2"},Cr={class:"rounded-xl border border-zinc-200 p-4 dark:border-zinc-700"},$r={class:"flex items-center gap-2 text-sm font-medium text-zinc-900 dark:text-white"},Sr={class:"rounded-xl border border-zinc-200 p-4 dark:border-zinc-700"},Pr={class:"flex items-center gap-2 text-sm font-medium text-zinc-900 dark:text-white"},Vr={class:"flex gap-2 rounded-lg border border-blue-200/80 bg-blue-50/50 px-3 py-2.5 text-xs text-blue-900 dark:border-blue-900/50 dark:bg-blue-950/30 dark:text-blue-200"},Ur={class:"mt-4 flex flex-wrap gap-2"},jr={class:"grid gap-4 md:grid-cols-2"},Ar={class:"md:col-span-2"},Er=["disabled"],Ir=["disabled"],Rr={key:0,class:"md:col-span-2"},Mr={class:"flex flex-col justify-end gap-2 text-sm md:col-span-2"},Lr={class:"flex items-center gap-2"},Nr={class:"flex items-center gap-2"},Tr={key:0,class:"space-y-4 rounded-xl border border-zinc-200 p-4 dark:border-zinc-700"},Or={class:"relative"},Br={key:0,class:"max-h-56 divide-y overflow-y-auto rounded-lg border border-zinc-100 dark:divide-zinc-800 dark:border-zinc-800"},Dr=["onClick"],qr={class:"min-w-0"},Fr={class:"truncate text-sm font-medium text-zinc-900 dark:text-white"},Gr={class:"truncate text-xs text-zinc-500"},Xr={class:"shrink-0 rounded-full bg-zinc-100 px-2 py-0.5 text-xs text-zinc-600 dark:bg-zinc-800 dark:text-zinc-400"},Hr={key:1,class:"text-sm text-zinc-500"},Wr=["disabled"],Qr={key:0},Jr={key:2,class:"text-sm text-zinc-600 dark:text-zinc-400"},Kr={class:"w-full max-w-md rounded-xl bg-white p-6 shadow-xl dark:bg-zinc-900"},Yr={class:"mt-1 text-sm text-zinc-500"},Zr={class:"mt-4 space-y-3"},en=["disabled"],tn={key:0},an={class:"mt-6 flex justify-end gap-2"},on={key:0,class:"mt-2 text-sm text-zinc-500"},rn=["onClick"],nn=["onClick"],sn=["onClick"],ln={__name:"ProductCoproducaoTab",props:{productId:{type:String,required:!0}},setup(k){const W=k,B=C(!0),T=C(!1),j=C(!1),R=C("member"),M=C([]),h=C([]),oe=C(""),ee=C(null),F=C(""),re=C(!1),ne=C(!1),se=C(null),le=C({commission_percent:10,payout_method:"internal",cajupay_split_id:"",commission_on_producer_sales:!0,commission_on_affiliate_sales:!0}),ze=()=>({commission_percent:10,duration_days:null,commission_on_producer_sales:!0,commission_on_affiliate_sales:!0,settlement_days_pix:null,settlement_days_card:null,settlement_days_boleto:null,payout_method:"internal",cajupay_split_id:""}),G=C(ze()),u=C({email:"",...ze()}),f=N(()=>re.value&&ne.value);let _=null;function w(S){const b={...S};return S.payout_method!=="cajupay_split"?(b.payout_method="internal",b.cajupay_split_id=null):b.cajupay_split_id=(S.cajupay_split_id||"").trim()||null,b}async function X(){B.value=!0;try{const{data:S}=await de.get(`/produtos/${W.productId}/coproducers`);M.value=S.coproducers??[],re.value=!!S.cajupay_split_payout_enabled,ne.value=!!S.cajupay_connected}finally{B.value=!1}}async function st(){if(!ne.value&&!re.value){F.value="Conecte o CajuPay em Integrações antes de ativar split.";return}j.value=!0,F.value="";try{const{data:S}=await de.patch(`/produtos/${W.productId}/coproduction-settings`,{cajupay_split_payout_enabled:!re.value});re.value=!!S.cajupay_split_payout_enabled,F.value=re.value?"Repasse via split ativado neste produto.":"Repasse via split desativado. Novos co-produtores usarão conta única."}catch(S){F.value=S.response?.data?.message||"Erro ao salvar configuração."}finally{j.value=!1}}async function H(){try{const{data:S}=await de.get(`/produtos/${W.productId}/coproducers/candidates`,{params:{q:oe.value.trim()||void 0}});h.value=S.candidates??[]}catch{h.value=[]}}function lt(){_&&clearTimeout(_),_=setTimeout(H,350)}function it(S){ee.value=S.id}const Qe={active:"Ativo",pending:"Convite pendente",revoked:"Revogado",expired:"Expirado"},ce=N(()=>M.value.map(S=>({id:S.id,created_at:S.created_at,name:S.user?.name??null,email:S.user?.email??S.email??null,product_name:S.product_name,commission_percent:S.commission_percent,status:S.status})));function Et(S){se.value=S,le.value={commission_percent:S.commission_percent,payout_method:S.payout_method||"internal",cajupay_split_id:S.cajupay_split_id||"",commission_on_producer_sales:S.commission_on_producer_sales,commission_on_affiliate_sales:S.commission_on_affiliate_sales}}function Ce(){se.value=null}async function It(){if(se.value){T.value=!0,F.value="";try{await de.patch(`/produtos/${W.productId}/coproducers/${se.value.id}`,w(le.value)),F.value="Co-produtor atualizado.",Ce(),await X()}catch(S){const b=S.response?.data?.errors;F.value=S.response?.data?.message||b?.cajupay_split_id?.[0]||b?.payout_method?.[0]||"Erro ao salvar."}finally{T.value=!1}}}async function dt(){if(!ee.value){F.value="Selecione um membro da lista.";return}T.value=!0,F.value="";try{await de.post(`/produtos/${W.productId}/coproducers/assign`,{user_id:ee.value,...w(G.value)}),F.value="Co-produtor adicionado.",ee.value=null,oe.value="",await X(),await H()}catch(S){const b=S.response?.data?.errors;F.value=S.response?.data?.message||b?.user_id?.[0]||b?.cajupay_split_id?.[0]||"Erro ao adicionar."}finally{T.value=!1}}async function O(){T.value=!0,F.value="";try{const{data:S}=await de.post(`/produtos/${W.productId}/coproducers/invite`,{email:u.value.email,...w(u.value)});F.value=S.warning||"Convite enviado.",u.value.email="",await X()}catch(S){const b=S.response?.data?.errors;F.value=S.response?.data?.message||b?.cajupay_split_id?.[0]||"Erro ao enviar convite."}finally{T.value=!1}}async function Ie(S){confirm("Revogar este co-produtor?")&&(await de.post(`/produtos/${W.productId}/coproducers/${S}/revoke`),F.value="Co-produtor revogado.",await X(),await H())}async function ut(S){await de.post(`/produtos/${W.productId}/coproducers/${S}/resend`),F.value="Convite reenviado."}return ea(async()=>{await X(),await H()}),(S,b)=>(s(),l("div",fr,[b[48]||(b[48]=t("div",null,[t("h2",{class:"text-base font-semibold text-zinc-900 dark:text-white"},"Co-produção"),t("p",{class:"mt-1 text-sm text-zinc-500"}," Comissão sobre o valor líquido (após taxas do gateway). Adicione alguém da sua equipe ou envie convite por e-mail. ")],-1)),t("div",gr,[t("div",_r,[t("div",kr,[d(o(_a),{class:"mt-0.5 h-5 w-5 shrink-0 text-[var(--color-primary)]"}),b[16]||(b[16]=t("div",null,[t("p",{class:"text-sm font-medium text-zinc-900 dark:text-white"}," Repasse automático via split CajuPay "),t("p",{class:"mt-1 text-xs text-zinc-500"}," Permite que parte da venda vá direto para a conta CajuPay do co-produtor (PIX com split). ")],-1))]),t("button",{type:"button",role:"switch","aria-checked":re.value,disabled:j.value||!ne.value&&!re.value,class:g(["relative inline-flex h-7 w-12 shrink-0 cursor-pointer rounded-full border-2 border-transparent transition disabled:cursor-not-allowed disabled:opacity-50",re.value?"bg-[var(--color-primary)]":"bg-zinc-300 dark:bg-zinc-600"]),onClick:st},[t("span",{class:g(["pointer-events-none inline-block h-6 w-6 transform rounded-full bg-white shadow transition",re.value?"translate-x-5":"translate-x-0"])},null,2)],10,zr)]),ne.value?m("",!0):(s(),l("p",hr," Conecte o gateway CajuPay em Integrações para usar split. "))]),t("div",wr,[t("div",Cr,[t("div",$r,[d(o(wo),{class:"h-4 w-4 text-zinc-500"}),b[17]||(b[17]=c(" Conta única (padrão) ",-1))]),b[18]||(b[18]=t("p",{class:"mt-2 text-xs leading-relaxed text-zinc-500"},[c(" Todo o pagamento cai na "),t("strong",null,"sua"),c(" conta CajuPay. O Getfy registra a comissão do co-produtor; ele acompanha vendas aqui e saca pelo "),t("strong",null,"Financeiro do parceiro"),c(" quando o saldo liberar. ")],-1))]),t("div",Sr,[t("div",Pr,[d(o(_a),{class:"h-4 w-4 text-[var(--color-primary)]"}),b[19]||(b[19]=c(" Split direto na CajuPay ",-1))]),b[20]||(b[20]=t("p",{class:"mt-2 text-xs leading-relaxed text-zinc-500"},[c(" Cada co-produtor pode ter "),t("strong",null,"seu próprio UUID"),c(" (cadastre um por pessoa na lista abaixo). Na venda PIX, a CajuPay reparte o líquido para a conta dele. O percentual do split é configurado "),t("strong",null,"no painel CajuPay"),c(" (o Getfy só guarda o ID). ")],-1))])]),t("div",Vr,[d(o(Go),{class:"h-4 w-4 shrink-0 mt-0.5"}),b[21]||(b[21]=t("p",null,[c(" A CajuPay aceita "),t("strong",null,"um split por cobrança PIX"),c(". Você pode ter vários co-produtores com split (cada um com seu UUID); em cada venda, o split na cobrança vai para "),t("strong",null,"um"),c(" co-produtor (o de maior % naquela venda; os demais co-produtores com split recebem pelo Financeiro do parceiro). "),t("strong",null,"Venda com afiliado:"),c(" o afiliado continua na conta única; o co-produtor com split "),t("strong",null,"pode"),c(" receber repasse direto na CajuPay normalmente. ")],-1))]),t("div",null,[t("div",Ur,[t("button",{type:"button",class:g(["inline-flex items-center gap-2 rounded-xl px-4 py-2 text-sm font-medium transition",R.value==="member"?"bg-[var(--color-primary)] text-white":"bg-zinc-100 text-zinc-700 hover:bg-zinc-200 dark:bg-zinc-800 dark:text-zinc-300"]),onClick:b[0]||(b[0]=V=>R.value="member")},[d(o(jt),{class:"h-4 w-4"}),b[22]||(b[22]=c(" Equipe / conta ",-1))],2),t("button",{type:"button",class:g(["inline-flex items-center gap-2 rounded-xl px-4 py-2 text-sm font-medium transition",R.value==="invite"?"bg-[var(--color-primary)] text-white":"bg-zinc-100 text-zinc-700 hover:bg-zinc-200 dark:bg-zinc-800 dark:text-zinc-300"]),onClick:b[1]||(b[1]=V=>R.value="invite")},[d(o(wa),{class:"h-4 w-4"}),b[23]||(b[23]=c(" Convite por e-mail ",-1))],2)])]),t("div",jr,[t("div",null,[b[24]||(b[24]=t("label",{class:"text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Comissão (%)",-1)),x(t("input",{"onUpdate:modelValue":b[2]||(b[2]=V=>G.value.commission_percent=V),type:"number",min:"0",max:"100",step:"0.01",class:"mt-1 w-full rounded-lg border border-zinc-300 px-3 py-2 text-sm dark:border-zinc-600 dark:bg-zinc-900"},null,512),[[$,G.value.commission_percent,void 0,{number:!0}]])]),t("div",null,[b[26]||(b[26]=t("label",{class:"text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Duração",-1)),x(t("select",{"onUpdate:modelValue":b[3]||(b[3]=V=>G.value.duration_days=V),class:"mt-1 w-full rounded-lg border border-zinc-300 px-3 py-2 text-sm dark:border-zinc-600 dark:bg-zinc-900"},[...b[25]||(b[25]=[t("option",{value:null},"Indeterminado",-1),t("option",{value:30},"30 dias",-1),t("option",{value:60},"60 dias",-1),t("option",{value:90},"90 dias",-1),t("option",{value:120},"120 dias",-1)])],512),[[Z,G.value.duration_days]])]),t("div",Ar,[b[28]||(b[28]=t("label",{class:"text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Como o co-produtor recebe?",-1)),x(t("select",{"onUpdate:modelValue":b[4]||(b[4]=V=>G.value.payout_method=V),class:"mt-1 w-full rounded-lg border border-zinc-300 px-3 py-2 text-sm dark:border-zinc-600 dark:bg-zinc-900",disabled:!f.value&&G.value.payout_method!=="cajupay_split"},[b[27]||(b[27]=t("option",{value:"internal"},"Conta única (Getfy / sua CajuPay)",-1)),t("option",{value:"cajupay_split",disabled:!f.value},"Split direto na CajuPay",8,Ir)],8,Er),[[Z,G.value.payout_method]])]),G.value.payout_method==="cajupay_split"?(s(),l("div",Rr,[b[29]||(b[29]=t("label",{class:"text-sm font-medium text-zinc-700 dark:text-zinc-300"},"ID do split (UUID) — painel CajuPay",-1)),x(t("input",{"onUpdate:modelValue":b[5]||(b[5]=V=>G.value.cajupay_split_id=V),type:"text",placeholder:"550e8400-e29b-41d4-a716-446655440000",class:"mt-1 w-full rounded-lg border border-zinc-300 px-3 py-2 font-mono text-sm dark:border-zinc-600 dark:bg-zinc-900"},null,512),[[$,G.value.cajupay_split_id]]),b[30]||(b[30]=t("p",{class:"mt-1 text-xs text-zinc-500"}," O co-produtor cria o split na conta CajuPay dele e envia este código para você colar aqui. ",-1))])):m("",!0),t("div",Mr,[t("label",Lr,[x(t("input",{"onUpdate:modelValue":b[6]||(b[6]=V=>G.value.commission_on_producer_sales=V),type:"checkbox"},null,512),[[We,G.value.commission_on_producer_sales]]),b[31]||(b[31]=c(" Vendas do produtor (checkout direto) ",-1))]),t("label",Nr,[x(t("input",{"onUpdate:modelValue":b[7]||(b[7]=V=>G.value.commission_on_affiliate_sales=V),type:"checkbox"},null,512),[[We,G.value.commission_on_affiliate_sales]]),b[32]||(b[32]=c(" Vendas de afiliados ",-1))])])]),R.value==="member"?(s(),l("div",Tr,[t("div",Or,[d(o(Xo),{class:"pointer-events-none absolute left-3 top-1/2 h-4 w-4 -translate-y-1/2 text-zinc-400"}),x(t("input",{"onUpdate:modelValue":b[8]||(b[8]=V=>oe.value=V),type:"search",placeholder:"Buscar por nome ou e-mail…",class:"w-full rounded-lg border border-zinc-300 py-2 pl-10 pr-3 text-sm dark:border-zinc-600 dark:bg-zinc-900",onInput:lt},null,544),[[$,oe.value]])]),b[33]||(b[33]=t("p",{class:"text-xs text-zinc-500"}," Lista infoprodutores e membros da equipe desta conta que ainda não são co-produtores deste produto. ",-1)),h.value.length?(s(),l("ul",Br,[(s(!0),l(z,null,I(h.value,V=>(s(),l("li",{key:V.id,class:g(["flex cursor-pointer items-center justify-between gap-2 px-3 py-2.5 transition hover:bg-zinc-50 dark:hover:bg-zinc-800/50",ee.value===V.id?"bg-[color-mix(in_srgb,var(--color-primary)_12%,transparent)]":""]),onClick:Re=>it(V)},[t("div",qr,[t("p",Fr,p(V.name),1),t("p",Gr,p(V.email),1)]),t("span",Xr,p(V.role_label),1)],10,Dr))),128))])):(s(),l("p",Hr,"Nenhum membro disponível para adicionar.")),d(E,{type:"button",disabled:T.value||!ee.value,onClick:dt},{default:v(()=>[c(p(T.value?"Adicionando…":"Adicionar co-produtor"),1)]),_:1},8,["disabled"])])):(s(),l("form",{key:1,class:"space-y-4 rounded-xl border border-zinc-200 p-4 dark:border-zinc-700",onSubmit:ae(O,["prevent"])},[t("div",null,[b[34]||(b[34]=t("label",{class:"text-sm font-medium text-zinc-700 dark:text-zinc-300"},"E-mail do convidado",-1)),x(t("input",{"onUpdate:modelValue":b[9]||(b[9]=V=>u.value.email=V),type:"email",required:"",placeholder:"pessoa@email.com",class:"mt-1 w-full rounded-lg border border-zinc-300 px-3 py-2 text-sm dark:border-zinc-600 dark:bg-zinc-900"},null,512),[[$,u.value.email]])]),t("div",null,[b[35]||(b[35]=t("label",{class:"text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Comissão (%)",-1)),x(t("input",{"onUpdate:modelValue":b[10]||(b[10]=V=>u.value.commission_percent=V),type:"number",min:"0",max:"100",step:"0.01",class:"mt-1 w-full rounded-lg border border-zinc-300 px-3 py-2 text-sm dark:border-zinc-600 dark:bg-zinc-900"},null,512),[[$,u.value.commission_percent,void 0,{number:!0}]])]),t("div",null,[b[37]||(b[37]=t("label",{class:"text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Como o co-produtor recebe?",-1)),x(t("select",{"onUpdate:modelValue":b[11]||(b[11]=V=>u.value.payout_method=V),class:"mt-1 w-full rounded-lg border border-zinc-300 px-3 py-2 text-sm dark:border-zinc-600 dark:bg-zinc-900"},[b[36]||(b[36]=t("option",{value:"internal"},"Conta única (Getfy)",-1)),t("option",{value:"cajupay_split",disabled:!f.value},"Split direto na CajuPay",8,Wr)],512),[[Z,u.value.payout_method]])]),u.value.payout_method==="cajupay_split"?(s(),l("div",Qr,[b[38]||(b[38]=t("label",{class:"text-sm font-medium text-zinc-700 dark:text-zinc-300"},"ID do split (UUID)",-1)),x(t("input",{"onUpdate:modelValue":b[12]||(b[12]=V=>u.value.cajupay_split_id=V),type:"text",required:"",placeholder:"UUID do painel CajuPay",class:"mt-1 w-full rounded-lg border border-zinc-300 px-3 py-2 font-mono text-sm dark:border-zinc-600 dark:bg-zinc-900"},null,512),[[$,u.value.cajupay_split_id]])])):m("",!0),b[39]||(b[39]=t("p",{class:"text-xs text-zinc-500"}," A pessoa receberá um link para aceitar o convite (mesmo estilo da página de afiliados). ",-1)),d(E,{type:"submit",disabled:T.value},{default:v(()=>[c(p(T.value?"Enviando…":"Enviar convite por e-mail"),1)]),_:1},8,["disabled"])],32)),F.value?(s(),l("p",Jr,p(F.value),1)):m("",!0),se.value?(s(),l("div",{key:3,class:"fixed inset-0 z-50 flex items-center justify-center bg-black/40 p-4",onClick:ae(Ce,["self"])},[t("div",Kr,[b[46]||(b[46]=t("h3",{class:"text-base font-semibold text-zinc-900 dark:text-white"},"Editar repasse",-1)),t("p",Yr,p(se.value.user?.name||se.value.email),1),t("div",Zr,[t("div",null,[b[40]||(b[40]=t("label",{class:"text-sm font-medium"},"Comissão (%)",-1)),x(t("input",{"onUpdate:modelValue":b[13]||(b[13]=V=>le.value.commission_percent=V),type:"number",min:"0",max:"100",class:"mt-1 w-full rounded-lg border px-3 py-2 text-sm dark:border-zinc-600 dark:bg-zinc-800"},null,512),[[$,le.value.commission_percent,void 0,{number:!0}]])]),t("div",null,[b[42]||(b[42]=t("label",{class:"text-sm font-medium"},"Forma de repasse",-1)),x(t("select",{"onUpdate:modelValue":b[14]||(b[14]=V=>le.value.payout_method=V),class:"mt-1 w-full rounded-lg border px-3 py-2 text-sm dark:border-zinc-600 dark:bg-zinc-800"},[b[41]||(b[41]=t("option",{value:"internal"},"Conta única",-1)),t("option",{value:"cajupay_split",disabled:!f.value},"Split CajuPay",8,en)],512),[[Z,le.value.payout_method]])]),le.value.payout_method==="cajupay_split"?(s(),l("div",tn,[b[43]||(b[43]=t("label",{class:"text-sm font-medium"},"ID do split (UUID)",-1)),x(t("input",{"onUpdate:modelValue":b[15]||(b[15]=V=>le.value.cajupay_split_id=V),type:"text",class:"mt-1 w-full rounded-lg border px-3 py-2 font-mono text-sm dark:border-zinc-600 dark:bg-zinc-800"},null,512),[[$,le.value.cajupay_split_id]])])):m("",!0)]),t("div",an,[d(E,{type:"button",variant:"outline",onClick:Ce},{default:v(()=>[...b[44]||(b[44]=[c("Cancelar",-1)])]),_:1}),d(E,{type:"button",disabled:T.value,onClick:It},{default:v(()=>[...b[45]||(b[45]=[c("Salvar",-1)])]),_:1},8,["disabled"])])])])):m("",!0),t("div",null,[b[47]||(b[47]=t("h3",{class:"text-sm font-semibold text-zinc-900 dark:text-white"},"Co-produtores",-1)),B.value?(s(),l("p",on,"Carregando…")):(s(),L(Ca,{key:1,class:"mt-4",rows:ce.value,"status-labels":Qe,"show-product-column":!1,"empty-label":"Nenhum co-produtor ainda."},{menu:v(({row:V,close:Re})=>[V?(s(),l(z,{key:0},[V.status==="active"?(s(),l("button",{key:0,type:"button",class:"flex w-full px-3 py-2 text-left text-sm text-zinc-700 hover:bg-zinc-100 dark:text-zinc-300 dark:hover:bg-zinc-800",onClick:ue=>{Et(M.value.find(Rt=>Rt.id===V.id)),Re()}}," Editar repasse ",8,rn)):m("",!0),V.status==="pending"?(s(),l("button",{key:1,type:"button",class:"flex w-full px-3 py-2 text-left text-sm text-zinc-700 hover:bg-zinc-100 dark:text-zinc-300 dark:hover:bg-zinc-800",onClick:ue=>{ut(V.id),Re()}}," Reenviar convite ",8,nn)):m("",!0),V.status!=="revoked"?(s(),l("button",{key:2,type:"button",class:"flex w-full px-3 py-2 text-left text-sm text-red-700 hover:bg-red-50 dark:text-red-300 dark:hover:bg-red-900/20",onClick:ue=>{Ie(V.id),Re()}}," Revogar ",8,sn)):m("",!0)],64)):m("",!0)]),_:1},8,["rows"]))])]))}},dn={class:"panel-card-lg space-y-8"},un={class:"flex items-center gap-2 text-sm"},cn={class:"grid gap-4 md:grid-cols-2"},pn={class:"flex items-center gap-2 text-sm md:col-span-2"},mn={class:"flex items-center gap-2 text-sm md:col-span-2"},bn={class:"grid gap-4 md:grid-cols-3"},xn={key:0,class:"rounded-lg bg-zinc-50 p-3 text-sm dark:bg-zinc-800"},yn=["href"],vn={key:1,class:"rounded-lg border border-amber-200/80 bg-amber-50 px-3 py-2.5 text-sm text-amber-950 dark:border-amber-900/40 dark:bg-amber-950/25 dark:text-amber-100"},fn={class:"text-xs"},gn={key:2,class:"text-sm text-zinc-500"},_n={key:0,class:"mt-3 text-sm text-zinc-500"},kn=["onClick"],zn=["onClick"],hn=["onClick"],wn=["onClick"],Cn={__name:"ProductAfiliadosTab",props:{productId:{type:String,required:!0}},setup(k){const W=k,B=C(!0),T=C(!1),j=C(null),R=C([]),M=C(""),h=C({enabled:!1,default_commission_percent:10,manual_approval:!0,share_buyer_data:!1,public_slug:"",support_email:"",description:"",settlement_days_pix:0,settlement_days_card:30,settlement_days_boleto:2});async function oe(){B.value=!0;try{const{data:u}=await de.get(`/produtos/${W.productId}/affiliate-program`);j.value=u.program,R.value=u.affiliates??[],ee(u.program??{})}finally{B.value=!1}}function ee(u){h.value={enabled:!!u.enabled,default_commission_percent:Number(u.default_commission_percent??10),manual_approval:u.manual_approval!==!1,share_buyer_data:!!u.share_buyer_data,public_slug:u.public_slug??"",support_email:u.support_email??"",description:u.description??"",settlement_days_pix:Number(u.settlement_days_pix??0),settlement_days_card:Number(u.settlement_days_card??30),settlement_days_boleto:Number(u.settlement_days_boleto??2)}}function F(){const u=h.value;return{enabled:!!u.enabled,default_commission_percent:Number(u.default_commission_percent),manual_approval:!!u.manual_approval,share_buyer_data:!!u.share_buyer_data,public_slug:u.public_slug?.trim()||null,support_email:u.support_email?.trim()||null,description:u.description?.trim()||null,settlement_days_pix:Number(u.settlement_days_pix??0),settlement_days_card:Number(u.settlement_days_card??30),settlement_days_boleto:Number(u.settlement_days_boleto??2)}}async function re(){T.value=!0,M.value="";try{const u=F();let f;try{({data:f}=await de.put(`/produtos/${W.productId}/affiliate-program`,u))}catch(_){if(_.response?.status===405||_.response?.status===501)({data:f}=await de.post(`/produtos/${W.productId}/affiliate-program`,u));else throw _}j.value=f.program,ee(f.program??{}),M.value=f.program?.enabled?"Programa salvo e afiliação ativada.":"Programa salvo."}catch(u){const f=u.response?.data?.errors;M.value=f?Object.values(f).flat().join(" "):u.response?.data?.message||"Erro ao salvar."}finally{T.value=!1}}async function ne(u,f){await de.put(`/produtos/${W.productId}/affiliates/${u.id}`,f),await oe()}function se(u){navigator.clipboard?.writeText(u),M.value="Link copiado."}const le=N(()=>h.value.enabled?j.value?.public_page_url||(h.value.public_slug?`/afiliar/${h.value.public_slug}`:""):""),ze=N(()=>R.value.map(u=>({id:u.id,created_at:u.created_at,name:u.user?.name??null,email:u.user?.email??null,product_name:u.product_name,commission_percent:u.commission_percent??h.value.default_commission_percent??null,status:u.status,_raw:u})));function G(u){return R.value.find(f=>f.id===u)}return ea(oe),(u,f)=>(s(),l("div",dn,[t("div",null,[f[26]||(f[26]=t("h2",{class:"text-base font-semibold text-zinc-900 dark:text-white"},"Programa de afiliados",-1)),t("form",{class:"mt-4 space-y-4",onSubmit:ae(re,["prevent"])},[t("label",un,[x(t("input",{"onUpdate:modelValue":f[0]||(f[0]=_=>h.value.enabled=_),type:"checkbox"},null,512),[[We,h.value.enabled]]),f[10]||(f[10]=c(" Ativar afiliação para este produto ",-1))]),t("div",cn,[t("div",null,[f[11]||(f[11]=t("label",{class:"text-sm font-medium"},"Comissão padrão (%)",-1)),x(t("input",{"onUpdate:modelValue":f[1]||(f[1]=_=>h.value.default_commission_percent=_),type:"number",min:"0",max:"100",class:"mt-1 w-full rounded-lg border border-zinc-300 px-3 py-2 text-sm dark:border-zinc-600 dark:bg-zinc-900"},null,512),[[$,h.value.default_commission_percent,void 0,{number:!0}]])]),t("div",null,[f[12]||(f[12]=t("label",{class:"text-sm font-medium"},"Slug da página pública",-1)),x(t("input",{"onUpdate:modelValue":f[2]||(f[2]=_=>h.value.public_slug=_),type:"text",class:"mt-1 w-full rounded-lg border border-zinc-300 px-3 py-2 text-sm dark:border-zinc-600 dark:bg-zinc-900"},null,512),[[$,h.value.public_slug]])]),t("div",null,[f[13]||(f[13]=t("label",{class:"text-sm font-medium"},"E-mail de suporte",-1)),x(t("input",{"onUpdate:modelValue":f[3]||(f[3]=_=>h.value.support_email=_),type:"email",class:"mt-1 w-full rounded-lg border border-zinc-300 px-3 py-2 text-sm dark:border-zinc-600 dark:bg-zinc-900"},null,512),[[$,h.value.support_email]])]),t("label",pn,[x(t("input",{"onUpdate:modelValue":f[4]||(f[4]=_=>h.value.manual_approval=_),type:"checkbox"},null,512),[[We,h.value.manual_approval]]),f[14]||(f[14]=c(" Aprovar afiliados manualmente ",-1))]),t("label",mn,[x(t("input",{"onUpdate:modelValue":f[5]||(f[5]=_=>h.value.share_buyer_data=_),type:"checkbox"},null,512),[[We,h.value.share_buyer_data]]),f[15]||(f[15]=c(" Compartilhar dados do comprador com afiliados (nome, e-mail e telefone nas vendas) ",-1))]),f[16]||(f[16]=t("p",{class:"text-xs text-zinc-500 md:col-span-2"}," Se desativado, afiliados veem os dados mascarados na listagem de vendas. ",-1))]),t("div",null,[f[17]||(f[17]=t("label",{class:"text-sm font-medium"},"Descrição (página de afiliação)",-1)),x(t("textarea",{"onUpdate:modelValue":f[6]||(f[6]=_=>h.value.description=_),rows:"3",class:"mt-1 w-full rounded-lg border border-zinc-300 px-3 py-2 text-sm dark:border-zinc-600 dark:bg-zinc-900"},null,512),[[$,h.value.description]])]),t("div",bn,[t("div",null,[f[18]||(f[18]=t("label",{class:"text-xs font-medium"},"Liberação PIX (dias)",-1)),x(t("input",{"onUpdate:modelValue":f[7]||(f[7]=_=>h.value.settlement_days_pix=_),type:"number",min:"0",class:"mt-1 w-full rounded-lg border px-3 py-2 text-sm dark:border-zinc-600 dark:bg-zinc-900"},null,512),[[$,h.value.settlement_days_pix,void 0,{number:!0}]])]),t("div",null,[f[19]||(f[19]=t("label",{class:"text-xs font-medium"},"Cartão (dias)",-1)),x(t("input",{"onUpdate:modelValue":f[8]||(f[8]=_=>h.value.settlement_days_card=_),type:"number",min:"0",class:"mt-1 w-full rounded-lg border px-3 py-2 text-sm dark:border-zinc-600 dark:bg-zinc-900"},null,512),[[$,h.value.settlement_days_card,void 0,{number:!0}]])]),t("div",null,[f[20]||(f[20]=t("label",{class:"text-xs font-medium"},"Boleto (dias)",-1)),x(t("input",{"onUpdate:modelValue":f[9]||(f[9]=_=>h.value.settlement_days_boleto=_),type:"number",min:"0",class:"mt-1 w-full rounded-lg border px-3 py-2 text-sm dark:border-zinc-600 dark:bg-zinc-900"},null,512),[[$,h.value.settlement_days_boleto,void 0,{number:!0}]])])]),le.value?(s(),l("div",xn,[f[21]||(f[21]=t("p",{class:"font-medium"},"Página de cadastro de afiliados",-1)),t("a",{href:le.value,class:"text-[var(--color-primary)] break-all",target:"_blank",rel:"noopener"},p(le.value),9,yn)])):h.value.public_slug?(s(),l("p",vn,[f[22]||(f[22]=c(" Marque ",-1)),f[23]||(f[23]=t("strong",null,"Ativar afiliação para este produto",-1)),f[24]||(f[24]=c(" e salve para liberar o link de cadastro (",-1)),t("code",fn,"/afiliar/"+p(h.value.public_slug),1),f[25]||(f[25]=c("). ",-1))])):m("",!0),d(E,{type:"submit",disabled:T.value},{default:v(()=>[c(p(T.value?"Salvando…":"Salvar programa"),1)]),_:1},8,["disabled"]),M.value?(s(),l("p",gn,p(M.value),1)):m("",!0)],32)]),t("div",null,[f[27]||(f[27]=t("h3",{class:"mt-2 text-sm font-semibold text-zinc-900 dark:text-white"},"Afiliados",-1)),B.value?(s(),l("p",_n,"Carregando…")):(s(),L(Ca,{key:1,class:"mt-4",rows:ze.value,"show-product-column":!1,"empty-label":"Nenhum afiliado cadastrado."},{menu:v(({row:_,close:w})=>[_?(s(),l(z,{key:0},[G(_.id)?.affiliate_link?(s(),l("button",{key:0,type:"button",class:"flex w-full px-3 py-2 text-left text-sm text-zinc-700 hover:bg-zinc-100 dark:text-zinc-300 dark:hover:bg-zinc-800",onClick:X=>{se(G(_.id).affiliate_link),w()}}," Copiar link ",8,kn)):m("",!0),_.status==="pending"?(s(),l("button",{key:1,type:"button",class:"flex w-full px-3 py-2 text-left text-sm text-emerald-700 hover:bg-emerald-50 dark:text-emerald-300 dark:hover:bg-emerald-900/20",onClick:X=>{ne(G(_.id),{status:"approved"}),w()}}," Aprovar ",8,zn)):m("",!0),_.status==="pending"?(s(),l("button",{key:2,type:"button",class:"flex w-full px-3 py-2 text-left text-sm text-zinc-700 hover:bg-zinc-100 dark:text-zinc-300 dark:hover:bg-zinc-800",onClick:X=>{ne(G(_.id),{status:"rejected"}),w()}}," Rejeitar ",8,hn)):m("",!0),_.status==="approved"?(s(),l("button",{key:3,type:"button",class:"flex w-full px-3 py-2 text-left text-sm text-red-700 hover:bg-red-50 dark:text-red-300 dark:hover:bg-red-900/20",onClick:X=>{ne(G(_.id),{status:"removed"}),w()}}," Remover ",8,wn)):m("",!0)],64)):m("",!0)]),_:1},8,["rows"]))])]))}},$n={class:"rounded-xl border border-zinc-200 bg-zinc-50/80 dark:border-zinc-600 dark:bg-zinc-900/80 overflow-hidden shadow-inner"},Sn={class:"p-3 bg-white dark:bg-zinc-800/90 min-h-[200px] overflow-auto max-h-[520px]"},Pn={class:"text-xs text-zinc-500 dark:text-zinc-400 space-y-1 mb-3 pb-2 border-b border-zinc-100 dark:border-zinc-700"},Vn={key:0,class:"flex gap-2"},Un={class:"text-zinc-700 dark:text-zinc-300 truncate"},jn={key:1,class:"flex gap-2"},An={class:"text-zinc-800 dark:text-zinc-200 font-medium truncate"},En={key:0,class:"mb-3 flex justify-center"},In=["src"],Rn=["innerHTML"],Mn={__name:"EmailTemplatePreview",props:{logoUrl:{type:String,default:""},subject:{type:String,default:""},bodyHtml:{type:String,default:""},fromName:{type:String,default:""}},setup(k){const W=k,B={nome_cliente:"Maria Silva",nome_produto:"Meu Curso",link_acesso:"https://exemplo.com/m/xxxxx",email_cliente:"maria@exemplo.com"};function T(M){return!M||typeof M!="string"?"":M.replace(/\{nome_cliente\}/g,B.nome_cliente).replace(/\{nome_produto\}/g,B.nome_produto).replace(/\{link_acesso\}/g,B.link_acesso).replace(/\{email_cliente\}/g,B.email_cliente)}const j=N(()=>T(W.subject)),R=N(()=>T(W.bodyHtml));return(M,h)=>(s(),l("div",$n,[h[3]||(h[3]=t("div",{class:"border-b border-zinc-200 bg-white px-3 py-2 flex items-center gap-2 dark:border-zinc-600 dark:bg-zinc-800"},[t("span",{class:"text-[10px] uppercase tracking-wider text-zinc-400 dark:text-zinc-500 font-medium"},"Preview"),t("span",{class:"text-zinc-300 dark:text-zinc-600"},"·"),t("span",{class:"text-xs text-zinc-500 dark:text-zinc-400"},"dados de exemplo")],-1)),t("div",Sn,[t("div",Pn,[k.fromName?(s(),l("div",Vn,[h[1]||(h[1]=t("span",{class:"text-zinc-400 shrink-0"},"De:",-1)),t("span",Un,p(k.fromName),1)])):m("",!0),j.value?(s(),l("div",jn,[h[2]||(h[2]=t("span",{class:"text-zinc-400 shrink-0"},"Assunto:",-1)),t("span",An,p(j.value),1)])):m("",!0)]),k.logoUrl?(s(),l("div",En,[t("img",{src:k.logoUrl,alt:"Logo",class:"max-h-10 w-auto object-contain mx-auto",onError:h[0]||(h[0]=oe=>oe.target.style.display="none")},null,40,In)])):m("",!0),t("div",{class:"email-preview-body text-sm text-zinc-700 dark:text-zinc-300 font-sans max-w-none break-words",innerHTML:R.value},null,8,Rn)])]))}},Ln=Qo(Mn,[["__scopeId","data-v-a50615d6"]]),Nn={class:"space-y-4"},Tn={class:"text-sm text-zinc-600 dark:text-zinc-400"},On={key:0,class:"space-y-4"},Bn={class:"mb-2 text-sm font-semibold text-zinc-900 dark:text-white"},Dn={class:"space-y-2"},qn={class:"font-medium text-zinc-900 dark:text-white"},Fn={class:"block text-xs text-zinc-500"},Gn={key:1,class:"rounded-xl border border-dashed border-zinc-300 px-4 py-6 text-center text-sm text-zinc-500 dark:border-zinc-600 dark:text-zinc-400"},Xn={__name:"ProductConversionPixelsInfo",props:{integrations:{type:Array,default:()=>[]}},setup(k){const W=k,B=N(()=>{const j={};for(const R of ka)j[R.id]=[];for(const R of W.integrations||[]){const M=R.platform||"meta";j[M]||(j[M]=[]),j[M].push(R)}return j}),T=N(()=>(W.integrations||[]).length>0);return(j,R)=>(s(),l("div",Nn,[t("p",Tn,[R[1]||(R[1]=c(" Os pixels são cadastrados em ",-1)),d(o(Y),{href:"/integracoes",class:"font-medium text-[var(--color-primary)] underline"},{default:v(()=>[...R[0]||(R[0]=[c("Integrações → Pixels e rastreamento",-1)])]),_:1}),R[2]||(R[2]=c(". Marque os produtos em cada pixel (como nos webhooks). ",-1))]),T.value?(s(),l("div",On,[(s(!0),l(z,null,I(o(ka),M=>x((s(),l("div",{key:M.id,class:"rounded-xl border border-zinc-200 bg-zinc-50/50 p-4 dark:border-zinc-700 dark:bg-zinc-800/30"},[t("h3",Bn,p(M.label),1),t("ul",Dn,[(s(!0),l(z,null,I(B.value[M.id],h=>(s(),l("li",{key:h.id,class:"rounded-lg border border-zinc-200 bg-white px-3 py-2 text-sm dark:border-zinc-600 dark:bg-zinc-900"},[t("span",qn,p(h.name),1),t("span",Fn,p(h.summary),1),t("span",{class:g(["mt-1 inline-block text-xs",h.is_active?"text-emerald-600":"text-zinc-400"])},p(h.is_active?"Ativo":"Inativo"),3)]))),128))])])),[[nt,B.value[M.id]?.length]])),128))])):(s(),l("p",Gn,[R[4]||(R[4]=c(" Nenhum pixel vinculado a este produto. ",-1)),d(o(Y),{href:"/integracoes",class:"mt-1 block font-medium text-[var(--color-primary)] underline"},{default:v(()=>[...R[3]||(R[3]=[c(" Configurar em Integrações ",-1)])]),_:1})]))]))}},Hn={class:"flex min-w-0 flex-col space-y-6 lg:flex-row lg:gap-6 lg:space-y-0 lg:pl-2"},Wn={class:"hidden lg:flex lg:flex-col w-56 shrink-0 rounded-xl bg-zinc-50 dark:bg-zinc-800/50 p-2","aria-label":"Menu de edição do produto"},Qn={class:"flex flex-col gap-0.5"},Jn=["href"],Kn=["aria-current","onClick"],Yn={class:"flex min-w-0 flex-1 items-center gap-1.5"},Zn={class:"truncate"},es=["href"],ts=["aria-current","onClick"],as={class:"flex items-center gap-1.5"},os={class:"flex-1 min-w-0 space-y-6"},rs={class:"grid grid-cols-1 gap-8 xl:grid-cols-2"},ns={class:"panel-table"},ss={class:"p-6"},ls={class:"grid gap-6 lg:grid-cols-[1fr,auto]"},is={class:"space-y-5"},ds={key:0,class:"mt-1.5 text-sm text-red-600 dark:text-red-400"},us={key:0,class:"mt-1.5 text-sm text-red-600 dark:text-red-400"},cs={class:"flex flex-wrap items-center gap-4 pt-1"},ps={class:"flex flex-col items-start lg:pt-0"},ms={class:"relative flex h-28 w-28 shrink-0 cursor-pointer flex-col items-center justify-center overflow-hidden rounded-xl border-2 border-dashed border-zinc-200 bg-zinc-50/80 transition hover:border-[var(--color-primary)]/50 hover:bg-[var(--color-primary)]/5 dark:border-zinc-600 dark:bg-zinc-800/80 dark:hover:border-[var(--color-primary)]/40 dark:hover:bg-[var(--color-primary)]/10"},bs=["src"],xs={class:"mt-1 text-center text-xs font-medium text-zinc-600 dark:text-zinc-400"},ys={class:"panel-table xl:min-h-0"},vs={class:"p-6 space-y-6"},fs={class:"grid gap-3 sm:grid-cols-2"},gs=["onClick"],_s={class:"max-w-2xl space-y-4"},ks={class:"flex flex-col gap-3 sm:flex-row sm:items-end"},zs={class:"min-w-0 flex-1 max-w-xs"},hs={class:"mt-1.5 text-xs text-zinc-500 dark:text-zinc-400"},ws={key:0,class:"mt-1.5 text-sm text-red-600 dark:text-red-400"},Cs={class:"min-w-0 w-full flex-1 sm:max-w-md"},$s={class:"mb-2 flex items-center gap-1.5 text-sm font-medium text-zinc-700 dark:text-zinc-300"},Ss={key:0,class:"text-xs text-zinc-500 dark:text-zinc-400"},Ps=["aria-expanded"],Vs={class:"min-w-0 flex-1 truncate font-normal"},Us={class:"text-sm leading-snug text-zinc-700 dark:text-zinc-300"},js={key:2,class:"mt-1 text-sm text-red-600 dark:text-red-400"},As={class:"rounded-xl border border-zinc-200/80 bg-zinc-50/50 p-4 dark:border-zinc-600/80 dark:bg-zinc-900/20"},Es={class:"flex flex-wrap gap-2"},Is={key:0,class:"mt-4 max-w-xs"},Rs=["value"],Ms={key:0,class:"mt-1 text-sm text-red-600 dark:text-red-400"},Ls={key:0},Ns={key:1,class:"rounded-xl border border-zinc-200/80 bg-zinc-50/50 p-4 dark:border-zinc-600/80 dark:bg-zinc-900/20 sm:col-span-2"},Ts={class:"mt-4 grid gap-4 sm:grid-cols-3"},Os={class:"border-t border-zinc-200/80 pt-6 dark:border-zinc-600/80"},Bs={class:"mb-3 text-sm font-medium text-zinc-700 dark:text-zinc-300"},Ds={class:"mb-4 text-xs text-zinc-500 dark:text-zinc-400"},qs={class:"mb-4 space-y-2"},Fs={class:"min-w-0 flex-1"},Gs={class:"font-medium text-zinc-900 dark:text-white"},Xs={class:"ml-2 text-sm text-zinc-500 dark:text-zinc-400"},Hs=["href"],Ws={class:"flex gap-1.5"},Qs={key:0,class:"rounded-lg border border-dashed border-zinc-200 py-4 text-center text-xs text-zinc-500 dark:border-zinc-600 dark:text-zinc-400"},Js={class:"mb-3 text-sm font-medium text-zinc-700 dark:text-zinc-300"},Ks={class:"grid gap-3 sm:grid-cols-[1fr,1fr,auto]"},Ys={class:"mt-3"},Zs={class:"mb-1 flex items-center gap-1 text-xs font-medium text-zinc-600 dark:text-zinc-400"},el={key:0,class:"text-xs text-zinc-500 dark:text-zinc-400"},tl=["aria-expanded"],al={class:"min-w-0 flex-1 truncate font-normal"},ol={class:"text-sm leading-snug text-zinc-700 dark:text-zinc-300"},rl={key:0,class:"mt-1 text-sm text-red-600 dark:text-red-400"},nl={class:"mt-3 flex gap-2"},sl={class:"mb-4 space-y-2"},ll={class:"min-w-0 flex-1"},il={class:"font-medium text-zinc-900 dark:text-white"},dl={class:"ml-2 text-sm text-zinc-500 dark:text-zinc-400"},ul=["href"],cl={class:"flex gap-1.5"},pl={key:0,class:"rounded-lg border border-dashed border-zinc-200 py-4 text-center text-xs text-zinc-500 dark:border-zinc-600 dark:text-zinc-400"},ml={class:"mb-3 text-sm font-medium text-zinc-700 dark:text-zinc-300"},bl={class:"grid gap-3 sm:grid-cols-2"},xl={class:"mb-1 flex items-center gap-1 text-xs font-medium text-zinc-600 dark:text-zinc-400"},yl={key:0,class:"text-xs text-zinc-500 dark:text-zinc-400"},vl=["aria-expanded"],fl={class:"min-w-0 flex-1 truncate font-normal"},gl={class:"text-sm leading-snug text-zinc-700 dark:text-zinc-300"},_l={key:0,class:"mt-1 text-sm text-red-600 dark:text-red-400"},kl={class:"mt-3 flex gap-2"},zl={class:"panel-table xl:min-h-0"},hl={class:"space-y-6 p-6"},wl={class:"panel-card-sm"},Cl={key:0,class:"mt-4 max-w-xs"},$l={key:0,class:"mt-1 text-sm text-red-600 dark:text-red-400"},Sl={class:"panel-card-sm"},Pl={class:"mt-2 text-xs text-zinc-500 dark:text-zinc-400"},Vl={key:0,class:"mt-4 space-y-4"},Ul={key:0,class:"text-sm text-zinc-600 dark:text-zinc-400"},jl={key:1,class:"text-xs text-zinc-500 dark:text-zinc-400"},Al={class:"max-h-96 space-y-4 overflow-y-auto pr-1"},El={class:"mb-2 block text-sm font-medium text-zinc-700 dark:text-zinc-300"},Il=["onUpdate:modelValue","placeholder"],Rl={key:2,class:"text-sm text-red-600 dark:text-red-400"},Ml={class:"flex flex-wrap items-center gap-3"},Ll={key:0,class:"mx-auto w-full max-w-3xl xl:max-w-6xl"},Nl={class:"panel-table"},Tl={class:"p-6"},Ol={class:"grid gap-5 sm:grid-cols-2 xl:grid-cols-4"},Bl={class:"panel-card-md"},Dl={class:"flex flex-col gap-3"},ql={class:"flex items-center gap-3"},Fl={class:"flex h-12 w-12 shrink-0 items-center justify-center rounded-xl bg-white p-2 shadow-sm dark:bg-zinc-700/50"},Gl={key:1,class:"text-xs text-zinc-500 dark:text-zinc-400"},Xl={key:0,class:"panel-card-md"},Hl={class:"flex flex-col gap-3"},Wl={key:2,class:"rounded-lg border border-amber-200 bg-amber-50 px-3 py-2 text-xs text-amber-800 dark:border-amber-800 dark:bg-amber-950/40 dark:text-amber-200"},Ql={key:3,class:"text-xs text-zinc-500 dark:text-zinc-400"},Jl={class:"panel-card-md"},Kl={class:"flex flex-col gap-3"},Yl={class:"flex items-center gap-3"},Zl={class:"flex h-12 w-12 shrink-0 items-center justify-center rounded-xl bg-white p-2 shadow-sm dark:bg-zinc-700/50"},ei={key:2,class:"text-xs text-zinc-500 dark:text-zinc-400"},ti={key:3,class:"mt-3 space-y-3 border-t border-zinc-200/80 pt-3 dark:border-zinc-600/80"},ai={class:"flex items-center justify-between rounded-xl border border-zinc-100 bg-white px-4 py-3 dark:border-zinc-700 dark:bg-zinc-800/50"},oi={class:"min-w-0"},ri={class:"mt-0.5 text-xs text-zinc-500 dark:text-zinc-400"},ni={key:0,class:"rounded-xl border border-zinc-100 bg-white p-4 dark:border-zinc-700 dark:bg-zinc-800/50"},si=["value"],li={class:"mt-1.5 text-xs text-zinc-500 dark:text-zinc-400"},ii={key:4,class:"mt-3 space-y-3 border-t border-zinc-200/80 pt-3 dark:border-zinc-600/80"},di={class:"flex items-center justify-between rounded-xl border border-zinc-100 bg-white px-4 py-3 dark:border-zinc-700 dark:bg-zinc-800/50"},ui={class:"panel-card-md"},ci={class:"flex flex-col gap-3"},pi={class:"flex items-center gap-3"},mi={class:"flex h-12 w-12 shrink-0 items-center justify-center rounded-xl bg-white p-2 shadow-sm dark:bg-zinc-700/50"},bi={key:2,class:"text-xs text-zinc-500 dark:text-zinc-400"},xi={class:"panel-card-md"},yi={class:"flex flex-col gap-3"},vi={key:1,class:"text-xs text-zinc-500 dark:text-zinc-400"},fi={class:"panel-card-md"},gi={class:"flex flex-col gap-3"},_i={key:1,class:"text-xs text-zinc-500 dark:text-zinc-400"},ki={class:"panel-card-md"},zi={class:"flex flex-col gap-3"},hi={class:"flex items-center gap-3"},wi={class:"flex h-12 w-12 shrink-0 items-center justify-center rounded-xl bg-white p-2 shadow-sm dark:bg-zinc-700/50"},Ci={class:"flex cursor-pointer items-start gap-2.5 rounded-lg border border-zinc-200 px-3 py-2.5 dark:border-zinc-600"},$i={key:2,class:"text-xs text-zinc-500 dark:text-zinc-400"},Si={key:1,class:"panel-card-md"},Pi={class:"flex flex-col gap-3"},Vi={class:"flex items-center gap-3"},Ui={class:"flex h-12 w-12 shrink-0 items-center justify-center rounded-xl bg-white p-2 shadow-sm dark:bg-zinc-700/50"},ji={key:1,class:"text-xs text-zinc-500 dark:text-zinc-400"},Ai={class:"panel-card-md"},Ei={class:"flex flex-col gap-3"},Ii={class:"flex items-center gap-3"},Ri={class:"flex h-12 w-12 shrink-0 items-center justify-center rounded-xl bg-white p-2 shadow-sm dark:bg-zinc-700/50"},Mi={key:1,class:"text-xs text-zinc-500 dark:text-zinc-400"},Li={class:"panel-table"},Ni={class:"p-6"},Ti={class:"grid gap-3 grid-cols-1 sm:grid-cols-2 md:grid-cols-3 lg:grid-cols-4"},Oi=["disabled","onClick"],Bi={class:"min-w-0 flex-1"},Di={class:"font-medium text-zinc-900 dark:text-white"},qi={key:0,class:"ml-1 text-xs text-zinc-500"},Fi={key:0,class:"mt-2 text-sm text-red-600 dark:text-red-400"},Gi={key:0,class:"panel-table"},Xi={class:"p-6 space-y-4"},Hi={class:"grid gap-4 sm:grid-cols-2"},Wi=["value"],Qi={key:0,class:"mt-1 text-xs text-zinc-500 dark:text-zinc-400"},Ji={class:"space-y-2"},Ki=["onUpdate:modelValue"],Yi={class:"space-y-2"},Zi={class:"flex gap-2"},ed=["disabled"],td=["value"],ad=["disabled"],od=["disabled"],rd={key:0,class:"text-xs text-red-600 dark:text-red-400"},nd={key:1,class:"text-xs text-zinc-500 dark:text-zinc-400"},sd={class:"flex items-end"},ld={key:0,class:"rounded-lg bg-red-100 px-3 py-2 text-sm text-red-700 dark:bg-red-900/30 dark:text-red-300"},id={class:"flex shrink-0 items-center justify-between border-b border-zinc-200 px-4 py-3 dark:border-zinc-700"},dd={class:"flex items-center gap-2"},ud={class:"flex-1 overflow-y-auto p-4"},cd={key:0,class:"mt-1.5 text-sm text-red-600 dark:text-red-400"},pd={class:"shrink-0 border-t border-zinc-200 p-4 flex gap-2 dark:border-zinc-700"},md={class:"flex shrink-0 items-center justify-between border-b border-zinc-200 px-4 py-3 dark:border-zinc-700"},bd={class:"flex items-center gap-2"},xd={class:"flex-1 space-y-4 overflow-y-auto p-4"},yd={class:"panel-card p-3 space-y-2"},vd={class:"flex cursor-pointer items-start gap-3 rounded-lg border border-zinc-200 bg-white p-3 dark:border-zinc-600 dark:bg-zinc-900/80"},fd={class:"flex cursor-pointer items-start gap-3 rounded-lg border border-zinc-200 bg-white p-3 dark:border-zinc-600 dark:bg-zinc-900/80"},gd={key:0,class:"text-sm text-red-600 dark:text-red-400"},_d={class:"flex gap-2"},kd=["value"],zd={key:1},hd={key:0,class:"mt-1 text-xs text-amber-600 dark:text-amber-400"},wd={class:"grid grid-cols-2 gap-3"},Cd={class:"flex shrink-0 gap-2 border-t border-zinc-200 p-4 dark:border-zinc-700"},$d={class:"panel-table"},Sd={class:"p-6"},Pd={class:"flex flex-wrap items-center gap-3"},Vd={class:"grid grid-cols-1 gap-8 xl:grid-cols-2"},Ud={class:"panel-table"},jd={class:"p-6 space-y-5"},Ad={class:"flex flex-col sm:flex-row gap-4 items-start"},Ed=["src"],Id={key:0,class:"mt-2 text-sm text-red-600 dark:text-red-400"},Rd={class:"panel-table"},Md={class:"border-b border-zinc-200/80 bg-gradient-to-r from-zinc-50/90 to-zinc-100/50 px-6 py-5 dark:from-zinc-800/80 dark:to-zinc-800/50"},Ld={class:"flex items-start justify-between gap-4"},Nd={class:"p-6 space-y-6"},Td={class:"panel-card-sm space-y-3 dark:bg-zinc-900/20"},Od=["disabled"],Bd=["disabled"],Dd={class:"panel-card-sm space-y-3 dark:bg-zinc-900/20"},qd=["disabled"],Fd=["disabled"],Gd={class:"panel-card-sm space-y-3 dark:bg-zinc-900/20"},Xd=["disabled"],Hd=["disabled"],Wd={class:"panel-table xl:sticky xl:top-6"},Qd={class:"p-6"},Jd={class:"flex flex-wrap items-center gap-3"},Kd={class:"rounded-xl border border-amber-200 bg-amber-50 px-4 py-3 text-sm text-amber-900 dark:border-amber-800/50 dark:bg-amber-950/30 dark:text-amber-100"},Yd={key:0,class:"rounded-xl border border-red-200 bg-red-50 px-4 py-3 text-sm text-red-800 dark:border-red-800/50 dark:bg-red-950/30 dark:text-red-200"},Zd={class:"panel-table"},eu={class:"border-b border-zinc-200/80 bg-gradient-to-r from-zinc-50/90 to-zinc-100/50 px-6 py-5 dark:from-zinc-800/80 dark:to-zinc-800/50"},tu={class:"flex items-start justify-between gap-4"},au={class:"p-6 space-y-3"},ou=["disabled"],ru={class:"panel-table"},nu={class:"border-b border-zinc-200/80 bg-gradient-to-r from-zinc-50/90 to-zinc-100/50 px-6 py-5 dark:from-zinc-800/80 dark:to-zinc-800/50"},su={class:"flex items-start justify-between gap-4"},lu={class:"p-6 space-y-3"},iu=["disabled"],du={class:"panel-table"},uu={class:"border-b border-zinc-200/80 bg-gradient-to-r from-zinc-50/90 to-zinc-100/50 px-6 py-5 dark:from-zinc-800/80 dark:to-zinc-800/50"},cu={class:"flex items-start justify-between gap-4"},pu={class:"p-6 space-y-6"},mu=["value","disabled"],bu=["value"],xu={class:"flex flex-wrap items-start justify-between gap-3"},yu={class:"text-sm font-semibold text-zinc-900 dark:text-white"},vu={class:"mt-0.5 text-xs font-medium text-[var(--color-primary)]"},fu=["disabled","onClick"],gu={class:"flex flex-wrap items-center gap-2"},_u=["onUpdate:modelValue","disabled","onInput"],ku=["onUpdate:modelValue","disabled","onChange"],zu=["value"],hu={class:"mt-3 flex flex-wrap gap-2"},wu=["disabled","onClick"],Cu=["onUpdate:modelValue","disabled"],$u=["disabled"],Su={class:"flex flex-wrap items-center gap-3"},Pu={class:"w-full space-y-6"},Vu={class:"relative panel-table"},Uu={class:"border-b border-zinc-200/80 bg-gradient-to-r from-[var(--color-primary)]/10 via-zinc-50/90 to-zinc-100/50 px-6 py-5 dark:from-[var(--color-primary)]/15 dark:via-zinc-800/80 dark:to-zinc-800/50"},ju={class:"relative flex flex-wrap items-center justify-between gap-4"},Au={key:0,class:"flex flex-col items-center justify-center rounded-2xl border-2 border-dashed border-zinc-200 bg-zinc-50/50 px-6 py-16 text-center dark:border-zinc-600 dark:bg-zinc-800/30"},Eu={class:"flex h-14 w-14 items-center justify-center rounded-2xl bg-zinc-200/80 text-zinc-400 dark:bg-zinc-700/80 dark:text-zinc-500"},Iu={key:1,class:"space-y-4"},Ru={class:"flex flex-wrap items-start gap-4 p-4 sm:flex-nowrap"},Mu={class:"flex h-16 w-16 shrink-0 overflow-hidden rounded-lg bg-zinc-100 dark:bg-zinc-700"},Lu=["src","alt"],Nu={key:1,class:"flex h-full w-full items-center justify-center text-zinc-400 dark:text-zinc-500"},Tu={class:"min-w-0 flex-1"},Ou={class:"font-semibold text-zinc-900 dark:text-white"},Bu={class:"mt-0.5 text-sm text-zinc-500 dark:text-zinc-400"},Du={key:0,class:"mt-1 line-clamp-2 text-sm text-zinc-600 dark:text-zinc-300"},qu={class:"mt-2 text-sm font-medium text-[var(--color-primary)]"},Fu={key:0,class:"mr-2 inline-flex items-center rounded-full bg-emerald-100 px-2 py-0.5 text-xs font-semibold text-emerald-700 dark:bg-emerald-900/40 dark:text-emerald-300"},Gu={class:"font-normal text-zinc-500 dark:text-zinc-400"},Xu={class:"flex shrink-0 gap-2"},Hu={class:"relative max-h-[90vh] w-full max-w-lg overflow-y-auto rounded-2xl border border-zinc-200 bg-white p-6 shadow-xl dark:border-zinc-700 dark:bg-zinc-800",role:"document"},Wu={class:"flex items-center justify-between gap-4"},Qu={class:"text-lg font-semibold text-zinc-900 dark:text-white"},Ju=["value"],Ku={key:0},Yu=["value"],Zu={key:1},ec=["value"],tc={key:0,class:"mt-1 text-sm text-red-600 dark:text-red-400"},ac={class:"rounded-xl border border-zinc-200 p-3 dark:border-zinc-700"},oc={key:2},rc={class:"flex flex-wrap gap-2 pt-2"},nc={key:5,class:"w-full space-y-6"},sc={class:"relative panel-table"},lc={class:"border-b border-zinc-200/80 bg-gradient-to-r from-[var(--color-primary)]/10 via-zinc-50/90 to-zinc-100/50 px-6 py-5 dark:from-[var(--color-primary)]/15 dark:via-zinc-800/80 dark:to-zinc-800/50"},ic={class:"flex flex-wrap items-center justify-between gap-4"},dc={class:"flex flex-wrap items-center gap-3"},uc={class:"panel-card-lg space-y-6"},cc={class:"min-w-[140px] flex-1"},pc=["onUpdate:modelValue"],mc=["value"],bc={class:"min-w-[140px] flex-1"},xc=["onUpdate:modelValue"],yc=["value"],vc=["onClick"],fc={class:"border-t border-zinc-200 pt-6 dark:border-zinc-700"},gc={key:0,class:"mt-1 text-xs text-amber-600 dark:text-amber-400"},_c={key:1,class:"mt-1 text-xs text-zinc-500 dark:text-zinc-400"},kc={class:"mt-3 flex flex-wrap items-end gap-2"},zc={class:"min-w-[140px] flex-1"},hc=["value"],wc={class:"min-w-[140px] flex-1"},Cc=["value"],$c={class:"w-full space-y-6"},Sc={class:"relative panel-table"},Pc={class:"border-b border-zinc-200/80 bg-gradient-to-r from-[var(--color-primary)]/10 via-zinc-50/90 to-zinc-100/50 px-6 py-5 dark:from-[var(--color-primary)]/15 dark:via-zinc-800/80 dark:to-zinc-800/50"},Vc={class:"relative flex flex-wrap items-center justify-between gap-4"},Uc={class:"flex flex-wrap items-center gap-3"},jc={class:"grid gap-4 sm:grid-cols-2 lg:grid-cols-3 xl:grid-cols-4"},Ac={class:"flex flex-1 flex-col gap-3 p-4"},Ec={class:"flex items-center gap-2"},Ic={class:"truncate text-sm font-medium text-zinc-900 dark:text-white"},Rc=["title"],Mc={class:"mt-auto flex flex-wrap items-center gap-2"},Lc=["onClick"],Nc=["href"],Tc=["onClick"],Oc=["title"],Bc={class:"relative w-full max-w-md rounded-2xl border border-zinc-200 bg-white p-6 shadow-xl dark:border-zinc-700 dark:bg-zinc-800",role:"document"},Dc={class:"flex items-center justify-between gap-4"},qc={class:"mt-4 space-y-2"},Fc={class:"text-sm font-medium text-zinc-900 dark:text-white"},Gc={key:0,class:"mt-4 rounded-xl bg-zinc-100 px-4 py-3 text-sm text-zinc-600 dark:bg-zinc-700/50 dark:text-zinc-400"},Xc={class:"mt-5 flex justify-end"},Hc={key:7,class:"w-full"},Wc={class:"relative overflow-hidden rounded-2xl bg-gradient-to-br from-[var(--color-primary)]/10 via-zinc-50 to-zinc-100/80 px-6 py-8 dark:from-[var(--color-primary)]/15 dark:via-zinc-800/80 dark:to-zinc-900/80"},Qc={class:"relative flex items-start gap-4"},Jc={class:"flex h-12 w-12 shrink-0 items-center justify-center rounded-xl bg-[var(--color-primary)]/20 text-[var(--color-primary)] dark:bg-[var(--color-primary)]/30"},Kc={class:"mt-6"},Yc={key:0,class:"flex flex-col items-center justify-center rounded-2xl border-2 border-dashed border-zinc-200 bg-zinc-50/50 px-6 py-16 text-center dark:border-zinc-600 dark:bg-zinc-800/30"},Zc={class:"flex h-14 w-14 items-center justify-center rounded-2xl bg-zinc-200/80 text-zinc-400 dark:bg-zinc-700/80 dark:text-zinc-500"},ep={key:1,class:"space-y-3"},tp={class:"flex flex-col gap-3 p-4 sm:flex-row sm:items-center sm:justify-between sm:gap-4"},ap={class:"min-w-0 flex-1"},op={class:"flex flex-wrap items-center gap-2"},rp={class:"text-sm font-medium text-zinc-900 dark:text-white"},np=["title"],sp={class:"flex shrink-0 items-center gap-2"},lp=["href"],ip=["onClick"],dp={key:9,class:"panel-card-lg"},up={class:"mt-6 flex items-center justify-between gap-4 border-t border-zinc-100 pt-5 dark:border-zinc-700"},cp={key:0,class:"mt-6 space-y-5 border-t border-zinc-100 pt-5 dark:border-zinc-700"},pp={class:"mt-2 space-y-2"},mp={class:"flex cursor-pointer items-start gap-2"},bp={class:"flex cursor-pointer items-start gap-2"},xp={class:"mt-8 flex items-center gap-3 border-t border-zinc-100 pt-5 dark:border-zinc-700"},yp={key:0,class:"text-sm text-red-600 dark:text-red-400"},vp={key:0,class:"panel-table"},fp={class:"border-b border-zinc-200/80 px-6 py-4 dark:border-zinc-700/80"},gp={class:"text-base font-semibold text-zinc-900 dark:text-white"},_p={class:"p-6"},kp={key:1,class:"rounded-lg border border-dashed border-zinc-300 p-3 text-sm text-zinc-600 dark:border-zinc-700 dark:text-zinc-400"},Ut=160,Yt=5,U="block w-full rounded-xl border-2 border-zinc-200 bg-white px-4 py-2.5 text-zinc-900 placeholder-zinc-400 transition focus:border-[var(--color-primary)] focus:outline-none focus:ring-2 focus:ring-[var(--color-primary)]/20 dark:border-zinc-600 dark:bg-zinc-800 dark:text-white dark:placeholder-zinc-500",Zp=Object.assign({layout:Co},{__name:"Edit",props:{produto:{type:Object,required:!0},productTypes:{type:Array,default:()=>[]},billingTypes:{type:Array,default:()=>[]},exchange_rates:{type:Object,default:()=>({brl_eur:.16,brl_usd:.18})},cademi_integrations:{type:Array,default:()=>[]},product_pixel_integrations:{type:Array,default:()=>[]},gateways_by_method:{type:Object,default:()=>({pix:[],card:[],boleto:[],pix_auto:[],apple_pay:[],google_pay:[],paypal:[],pix_parcelado:[],crypto:[]})},cajupay_parcelado_enrollment:{type:Object,default:null},plugin_product_panels:{type:Array,default:()=>[]},plugin_form_sections:{type:Array,default:()=>[]},tenant_currencies:{type:Array,default:()=>[]}},setup(k){function W(){const n=document.cookie.match(/XSRF-TOKEN=([^;]+)/);if(n)try{return decodeURIComponent(n[1])}catch{}return""}const B={logo_url:"",from_name:"",subject:"Seu acesso a {nome_produto}",body_text:`Olá, {nome_cliente}! +const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/FlowCanvasEditor-Ce7pIxz8.js","assets/runtime-dom.esm-bundler-OrSu0e66.js","assets/Toggle-BD3dflqy.js","assets/trash-2-Bxek5XZ9.js","assets/FlowCanvasEditor-B0og28R1.css","assets/Index-C8hflPKm.js","assets/app-CT8pqccC.js","assets/IntegrationsSidebar-g5vQahAQ.js","assets/ProductPanel-By9st8ds.js","assets/Index-DJaBHjKX.js","assets/SettingsTab-BdcPaOEh.js","assets/upload-CCMGWz9e.js","assets/copy-CAHk-g6g.js"])))=>i.map(i=>d[i]); +import{C as Zt,W as wo,_ as Co,u as $o,g as fa,P as $t,L as So,S as Po,c as Vo,a as De}from"./app-CT8pqccC.js";import{o as s,f as L,h as v,g as d,u as o,s as g,c as l,F as z,y as I,i as c,t as p,n as N,A as at,b as x,bG as nt,a as t,d as m,v as $,T as ot,r as C,k as ea,bF as Z,bD as We,w as ae,l as Uo,J as jo,z as qe,ac as we,B as Fe,bE as St,bN as ga}from"./runtime-dom.esm-bundler-OrSu0e66.js";import{c as ta,q as Ao,b as de,X as rt,_ as E,U as jt,M as wa,l as Y,u as et,i as me,S as Wt,h as Pt,r as ie,d as Eo}from"./Toggle-BD3dflqy.js";import{_ as Io}from"./HorizontalScrollTabs-B3gLPvR5.js";import{_ as Qt}from"./Checkbox-CXmg9tb9.js";import{H as Ro,a as Mo,W as Lo,j as No,Q as To,q as Oo,Y as Bo,J as Do,K as qo}from"./index-C9D62LIC.js";import{C as At}from"./chevron-down-Cr9wcM6o.js";import{_ as Fo}from"./GatewayRedundancySidebar-DyzB1XM0.js";import{L as He}from"./loader-circle-CWooIS5S.js";import{_ as Ca}from"./ProductPartnersTable-YFqRcSS_.js";import{Z as _a}from"./zap-BagaW96t.js";import{I as Go}from"./info-wvqULVyO.js";import{S as Xo}from"./search-5WwcWNIL.js";import{_ as Ho}from"./PluginSlotHost-Unw4TU2b.js";import{_ as Wo}from"./PluginRenderZone-Bd8lWCDV.js";import{_ as Qo}from"./_plugin-vue_export-helper-DlAUqK2U.js";import{a as ka}from"./conversionPixels-CP63ox30.js";import{u as Jo}from"./usePluginComponentResolver-CB2198wG.js";import{I as za}from"./image-Aikc9zug.js";import{L as be}from"./layers-R-sja8g7.js";import{L as Ge}from"./link-2-CaG2dTr0.js";import{P as Xe}from"./pencil-De6Ibr3Z.js";import{T as Vt}from"./trash-2-Bxek5XZ9.js";import{P as tt}from"./plus-C8Znz4zD.js";import{M as Jt}from"./map-pin-Cnsc9Gjd.js";import{C as Ko}from"./credit-card-BEa3N8tE.js";import{C as ha}from"./copy-CAHk-g6g.js";import{H as Yo}from"./handshake-ChMiz3jx.js";import"./floating-ui.dom-RhtQlTMy.js";import"./chevron-up-LCq4Peo3.js";import"./ellipsis-vertical-DayR1-An.js";const Zo=ta("arrow-up-down",[["path",{d:"m21 16-4 4-4-4",key:"f6ql7i"}],["path",{d:"M17 20V4",key:"1ejh1v"}],["path",{d:"m3 8 4-4 4 4",key:"11wl7u"}],["path",{d:"M7 4v16",key:"1glfcx"}]]);const er=ta("layout-grid",[["rect",{width:"7",height:"7",x:"3",y:"3",rx:"1",key:"1g98yp"}],["rect",{width:"7",height:"7",x:"14",y:"3",rx:"1",key:"6d4xhi"}],["rect",{width:"7",height:"7",x:"14",y:"14",rx:"1",key:"nxv5o0"}],["rect",{width:"7",height:"7",x:"3",y:"14",rx:"1",key:"1bb6yr"}]]);const tr=ta("sliders-horizontal",[["path",{d:"M10 5H3",key:"1qgfaw"}],["path",{d:"M12 19H3",key:"yhmn1j"}],["path",{d:"M14 3v4",key:"1sua03"}],["path",{d:"M16 17v4",key:"1q0r14"}],["path",{d:"M21 12h-9",key:"1o4lsq"}],["path",{d:"M21 19h-5",key:"1rlt1p"}],["path",{d:"M21 5h-7",key:"1oszz2"}],["path",{d:"M8 10v4",key:"tgpxqk"}],["path",{d:"M8 12H3",key:"a7s4jb"}]]),Kt="__none__",ke={__name:"GatewaySelect",props:{modelValue:{type:String,default:""},options:{type:Array,default:()=>[]},placeholder:{type:String,default:"Selecione..."},label:{type:String,default:""},disabled:{type:Boolean,default:!1}},emits:["update:modelValue"],setup(k,{emit:W}){const B=k,T=W,j=N({get:()=>B.modelValue===""?Kt:B.modelValue,set:h=>T("update:modelValue",h===Kt?"":h)}),R=N(()=>B.options.map(h=>({value:h.value===""?Kt:h.value,label:h.label}))),M=Ao("flex h-12 w-full cursor-pointer items-center justify-between gap-2 rounded-xl border-2 border-zinc-200 bg-white px-4 py-3 text-left text-sm transition","hover:border-zinc-300 focus:outline-none focus:ring-2 focus:ring-[var(--color-primary)]/20 focus:ring-offset-0","data-[placeholder]:text-zinc-500","dark:border-zinc-600 dark:bg-zinc-800 dark:text-white dark:hover:border-zinc-500 dark:data-[placeholder]:text-zinc-400");return(h,oe)=>(s(),L(o(qo),{modelValue:j.value,"onUpdate:modelValue":oe[0]||(oe[0]=ee=>j.value=ee),disabled:k.disabled},{default:v(()=>[d(o(Ro),{class:g(o(M)),type:"button","aria-label":k.label||k.placeholder},{default:v(()=>[d(o(Mo),{placeholder:k.placeholder},null,8,["placeholder"]),d(o(At),{class:"h-5 w-5 shrink-0 text-zinc-400 dark:text-zinc-500","aria-hidden":"true"})]),_:1},8,["class","aria-label"]),d(o(Lo),{to:"body"},{default:v(()=>[d(o(No),{class:"z-[9999] min-w-[var(--radix-select-trigger-width)] overflow-hidden rounded-xl border border-zinc-200 bg-white py-1 shadow-xl dark:border-zinc-600 dark:bg-zinc-800","side-offset":4,position:"popper","avoid-collisions":!0},{default:v(()=>[d(o(To),{class:"p-1"},{default:v(()=>[(s(!0),l(z,null,I(R.value,ee=>(s(),L(o(Oo),{key:String(ee.value),value:ee.value,class:"relative flex cursor-pointer select-none items-center rounded-lg py-2.5 pl-10 pr-4 text-sm outline-none transition data-[highlighted]:bg-[var(--color-primary)]/10 data-[highlighted]:text-[var(--color-primary)] data-[state=checked]:bg-[var(--color-primary)]/10 data-[state=checked]:text-[var(--color-primary)] dark:data-[highlighted]:bg-[var(--color-primary)]/20 dark:data-[state=checked]:bg-[var(--color-primary)]/20"},{default:v(()=>[d(o(Bo),{class:"absolute left-3 flex h-4 w-4 items-center justify-center"},{default:v(()=>[d(o(Zt),{class:"h-4 w-4 text-[var(--color-primary)]"})]),_:1}),d(o(Do),null,{default:v(()=>[c(p(ee.label),1)]),_:2},1024)]),_:2},1032,["value"]))),128))]),_:1})]),_:1})]),_:1})]),_:1},8,["modelValue","disabled"]))}},ar={class:"fixed inset-0 z-[100000] flex justify-end","aria-modal":"true",role:"dialog"},or={class:"relative flex h-full w-full max-w-md flex-col rounded-l-2xl bg-white shadow-xl dark:bg-zinc-900"},rr={class:"flex items-center justify-between rounded-tl-2xl border-b border-zinc-200 px-4 py-4 dark:border-zinc-700"},nr={class:"flex flex-1 flex-col overflow-y-auto p-4"},sr={key:0,class:"mb-4 flex items-center gap-2 text-sm text-zinc-500"},lr={key:1,class:"mb-4 rounded-lg border border-amber-200 bg-amber-50 px-3 py-2 text-xs text-amber-800 dark:border-amber-800 dark:bg-amber-950/40 dark:text-amber-200"},ir={key:2,class:"mb-4 rounded-lg border border-zinc-200 bg-zinc-50 px-3 py-2 text-xs text-zinc-600 dark:border-zinc-600 dark:bg-zinc-800/50 dark:text-zinc-300"},dr={class:"space-y-4"},ur={class:"grid grid-cols-2 gap-3"},cr=["value"],pr=["value"],mr=["value"],br=["value"],xr=["value"],yr={class:"border-t border-zinc-200 p-4 dark:border-zinc-700"},vr={__name:"PixParceladoRulesSidebar",props:{open:{type:Boolean,default:!1},productId:{type:[String,Number],required:!0},priceBrl:{type:Number,default:0},modelValue:{type:Object,default:()=>({})}},emits:["close","update:modelValue","save"],setup(k,{emit:W}){const B=k,T=W,j=C({}),R=C(!1),M=C(""),h=C(null),oe=C({});function ee(){return{max_installments:null,down_payment_cents:null,min_down_payment_bps:null,max_down_payment_bps:null,early_payment_discount_bps:0,payoff_discount_bps:0,overdue_payoff_discount_bps:0}}at(()=>[B.open,B.modelValue],([_,w])=>{_&&(j.value={...ee(),...w&&typeof w=="object"?w:{}},oe.value={},F())},{immediate:!0});async function F(){R.value=!0,M.value="";try{const{data:_}=await de.get(`/produtos/${B.productId}/pix-parcelado/platform-rules`);h.value=_?.merged??_}catch(_){M.value=_?.response?.data?.message||"Não foi possível carregar regras da plataforma.",h.value=null}finally{R.value=!1}}const re=N(()=>{const _=h.value?.platform_max_installments??h.value?.max_installments;return _?`${_}x`:"—"});function ne(_){return _==null||_===""?"":String(Number(_)/100)}function se(_){if(_===""||_==null)return null;const w=parseFloat(String(_).replace(",","."));return Number.isNaN(w)?null:Math.round(w*100)}function le(_){return _==null||_===""?"":(Number(_)/100).toFixed(2).replace(".",",")}function ze(_){if(_===""||_==null)return null;const w=parseFloat(String(_).replace(/\./g,"").replace(",","."));return Number.isNaN(w)?null:Math.round(w*100)}const G=N({get:()=>le(j.value.down_payment_cents),set:_=>{j.value.down_payment_cents=ze(_)}});function u(){oe.value={},T("update:modelValue",{...j.value}),T("save",{...j.value}),T("close")}function f(){T("close")}return(_,w)=>(s(),L(ot,{to:"body"},[x(t("div",ar,[t("div",{class:"fixed inset-0 bg-zinc-900/50 dark:bg-zinc-950/60","aria-hidden":"true",onClick:f}),t("aside",or,[t("div",rr,[w[7]||(w[7]=t("h2",{class:"text-lg font-semibold text-zinc-900 dark:text-white"},"Regras PIX Parcelado",-1)),t("button",{type:"button",class:"rounded-lg p-2 text-zinc-500 hover:bg-zinc-100 dark:hover:bg-zinc-800","aria-label":"Fechar",onClick:f},[d(o(rt),{class:"h-5 w-5"})])]),t("div",nr,[w[17]||(w[17]=t("p",{class:"mb-4 text-sm text-zinc-600 dark:text-zinc-400"}," Configure entrada, parcelas e descontos congelados no plano CajuPay. Valor mínimo R$ 50,00. ",-1)),R.value?(s(),l("div",sr,[d(o(He),{class:"h-4 w-4 animate-spin"}),w[8]||(w[8]=c(" Carregando faixas da plataforma… ",-1))])):M.value?(s(),l("p",lr,p(M.value),1)):h.value?(s(),l("p",ir,[c(" Com preço R$ "+p(k.priceBrl.toFixed(2).replace(".",","))+", a plataforma permite até ",1),t("strong",null,p(re.value),1),w[9]||(w[9]=c(" parcelas. ",-1))])):m("",!0),t("div",dr,[t("div",null,[w[10]||(w[10]=t("label",{class:"mb-1.5 block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Máximo de parcelas (opcional)",-1)),x(t("input",{"onUpdate:modelValue":w[0]||(w[0]=X=>j.value.max_installments=X),type:"number",min:"1",max:"24",placeholder:"Usar só limite da plataforma",class:"w-full rounded-lg border border-zinc-300 bg-white px-3 py-2.5 text-sm dark:border-zinc-600 dark:bg-zinc-800 dark:text-zinc-100"},null,512),[[$,j.value.max_installments,void 0,{number:!0}]])]),t("div",null,[w[11]||(w[11]=t("label",{class:"mb-1.5 block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Entrada fixa (R$)",-1)),x(t("input",{"onUpdate:modelValue":w[1]||(w[1]=X=>G.value=X),type:"text",inputmode:"decimal",placeholder:"Opcional",class:"w-full rounded-lg border border-zinc-300 bg-white px-3 py-2.5 text-sm dark:border-zinc-600 dark:bg-zinc-800 dark:text-zinc-100"},null,512),[[$,G.value]])]),t("div",ur,[t("div",null,[w[12]||(w[12]=t("label",{class:"mb-1.5 block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Entrada mínima (%)",-1)),t("input",{value:ne(j.value.min_down_payment_bps),type:"text",inputmode:"decimal",placeholder:"Ex.: 20",class:"w-full rounded-lg border border-zinc-300 bg-white px-3 py-2.5 text-sm dark:border-zinc-600 dark:bg-zinc-800 dark:text-zinc-100",onInput:w[2]||(w[2]=X=>j.value.min_down_payment_bps=se(X.target.value))},null,40,cr)]),t("div",null,[w[13]||(w[13]=t("label",{class:"mb-1.5 block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Entrada máxima (%)",-1)),t("input",{value:ne(j.value.max_down_payment_bps),type:"text",inputmode:"decimal",placeholder:"Ex.: 60",class:"w-full rounded-lg border border-zinc-300 bg-white px-3 py-2.5 text-sm dark:border-zinc-600 dark:bg-zinc-800 dark:text-zinc-100",onInput:w[3]||(w[3]=X=>j.value.max_down_payment_bps=se(X.target.value))},null,40,pr)])]),t("div",null,[w[14]||(w[14]=t("label",{class:"mb-1.5 block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Desconto antecipação (%)",-1)),t("input",{value:ne(j.value.early_payment_discount_bps),type:"text",inputmode:"decimal",class:"w-full rounded-lg border border-zinc-300 bg-white px-3 py-2.5 text-sm dark:border-zinc-600 dark:bg-zinc-800 dark:text-zinc-100",onInput:w[4]||(w[4]=X=>j.value.early_payment_discount_bps=se(X.target.value)??0)},null,40,mr)]),t("div",null,[w[15]||(w[15]=t("label",{class:"mb-1.5 block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Desconto quitação (%)",-1)),t("input",{value:ne(j.value.payoff_discount_bps),type:"text",inputmode:"decimal",class:"w-full rounded-lg border border-zinc-300 bg-white px-3 py-2.5 text-sm dark:border-zinc-600 dark:bg-zinc-800 dark:text-zinc-100",onInput:w[5]||(w[5]=X=>j.value.payoff_discount_bps=se(X.target.value)??0)},null,40,br)]),t("div",null,[w[16]||(w[16]=t("label",{class:"mb-1.5 block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Desconto quitação em atraso (%)",-1)),t("input",{value:ne(j.value.overdue_payoff_discount_bps),type:"text",inputmode:"decimal",class:"w-full rounded-lg border border-zinc-300 bg-white px-3 py-2.5 text-sm dark:border-zinc-600 dark:bg-zinc-800 dark:text-zinc-100",onInput:w[6]||(w[6]=X=>j.value.overdue_payoff_discount_bps=se(X.target.value)??0)},null,40,xr)])])]),t("div",yr,[d(E,{type:"button",class:"w-full",onClick:u},{default:v(()=>[...w[18]||(w[18]=[c("Salvar regras",-1)])]),_:1})])])],512),[[nt,k.open]])]))}},fr={class:"panel-card-lg space-y-8"},gr={class:"rounded-xl border border-zinc-200 bg-zinc-50/80 p-4 dark:border-zinc-700 dark:bg-zinc-900/40"},_r={class:"flex flex-wrap items-start justify-between gap-3"},kr={class:"flex items-start gap-2"},zr=["aria-checked","disabled"],hr={key:0,class:"mt-3 text-xs text-amber-700 dark:text-amber-400"},wr={class:"grid gap-4 md:grid-cols-2"},Cr={class:"rounded-xl border border-zinc-200 p-4 dark:border-zinc-700"},$r={class:"flex items-center gap-2 text-sm font-medium text-zinc-900 dark:text-white"},Sr={class:"rounded-xl border border-zinc-200 p-4 dark:border-zinc-700"},Pr={class:"flex items-center gap-2 text-sm font-medium text-zinc-900 dark:text-white"},Vr={class:"flex gap-2 rounded-lg border border-blue-200/80 bg-blue-50/50 px-3 py-2.5 text-xs text-blue-900 dark:border-blue-900/50 dark:bg-blue-950/30 dark:text-blue-200"},Ur={class:"mt-4 flex flex-wrap gap-2"},jr={class:"grid gap-4 md:grid-cols-2"},Ar={class:"md:col-span-2"},Er=["disabled"],Ir=["disabled"],Rr={key:0,class:"md:col-span-2"},Mr={class:"flex flex-col justify-end gap-2 text-sm md:col-span-2"},Lr={class:"flex items-center gap-2"},Nr={class:"flex items-center gap-2"},Tr={key:0,class:"space-y-4 rounded-xl border border-zinc-200 p-4 dark:border-zinc-700"},Or={class:"relative"},Br={key:0,class:"max-h-56 divide-y overflow-y-auto rounded-lg border border-zinc-100 dark:divide-zinc-800 dark:border-zinc-800"},Dr=["onClick"],qr={class:"min-w-0"},Fr={class:"truncate text-sm font-medium text-zinc-900 dark:text-white"},Gr={class:"truncate text-xs text-zinc-500"},Xr={class:"shrink-0 rounded-full bg-zinc-100 px-2 py-0.5 text-xs text-zinc-600 dark:bg-zinc-800 dark:text-zinc-400"},Hr={key:1,class:"text-sm text-zinc-500"},Wr=["disabled"],Qr={key:0},Jr={key:2,class:"text-sm text-zinc-600 dark:text-zinc-400"},Kr={class:"w-full max-w-md rounded-xl bg-white p-6 shadow-xl dark:bg-zinc-900"},Yr={class:"mt-1 text-sm text-zinc-500"},Zr={class:"mt-4 space-y-3"},en=["disabled"],tn={key:0},an={class:"mt-6 flex justify-end gap-2"},on={key:0,class:"mt-2 text-sm text-zinc-500"},rn=["onClick"],nn=["onClick"],sn=["onClick"],ln={__name:"ProductCoproducaoTab",props:{productId:{type:String,required:!0}},setup(k){const W=k,B=C(!0),T=C(!1),j=C(!1),R=C("member"),M=C([]),h=C([]),oe=C(""),ee=C(null),F=C(""),re=C(!1),ne=C(!1),se=C(null),le=C({commission_percent:10,payout_method:"internal",cajupay_split_id:"",commission_on_producer_sales:!0,commission_on_affiliate_sales:!0}),ze=()=>({commission_percent:10,duration_days:null,commission_on_producer_sales:!0,commission_on_affiliate_sales:!0,settlement_days_pix:null,settlement_days_card:null,settlement_days_boleto:null,payout_method:"internal",cajupay_split_id:""}),G=C(ze()),u=C({email:"",...ze()}),f=N(()=>re.value&&ne.value);let _=null;function w(S){const b={...S};return S.payout_method!=="cajupay_split"?(b.payout_method="internal",b.cajupay_split_id=null):b.cajupay_split_id=(S.cajupay_split_id||"").trim()||null,b}async function X(){B.value=!0;try{const{data:S}=await de.get(`/produtos/${W.productId}/coproducers`);M.value=S.coproducers??[],re.value=!!S.cajupay_split_payout_enabled,ne.value=!!S.cajupay_connected}finally{B.value=!1}}async function st(){if(!ne.value&&!re.value){F.value="Conecte o CajuPay em Integrações antes de ativar split.";return}j.value=!0,F.value="";try{const{data:S}=await de.patch(`/produtos/${W.productId}/coproduction-settings`,{cajupay_split_payout_enabled:!re.value});re.value=!!S.cajupay_split_payout_enabled,F.value=re.value?"Repasse via split ativado neste produto.":"Repasse via split desativado. Novos co-produtores usarão conta única."}catch(S){F.value=S.response?.data?.message||"Erro ao salvar configuração."}finally{j.value=!1}}async function H(){try{const{data:S}=await de.get(`/produtos/${W.productId}/coproducers/candidates`,{params:{q:oe.value.trim()||void 0}});h.value=S.candidates??[]}catch{h.value=[]}}function lt(){_&&clearTimeout(_),_=setTimeout(H,350)}function it(S){ee.value=S.id}const Qe={active:"Ativo",pending:"Convite pendente",revoked:"Revogado",expired:"Expirado"},ce=N(()=>M.value.map(S=>({id:S.id,created_at:S.created_at,name:S.user?.name??null,email:S.user?.email??S.email??null,product_name:S.product_name,commission_percent:S.commission_percent,status:S.status})));function Et(S){se.value=S,le.value={commission_percent:S.commission_percent,payout_method:S.payout_method||"internal",cajupay_split_id:S.cajupay_split_id||"",commission_on_producer_sales:S.commission_on_producer_sales,commission_on_affiliate_sales:S.commission_on_affiliate_sales}}function Ce(){se.value=null}async function It(){if(se.value){T.value=!0,F.value="";try{await de.patch(`/produtos/${W.productId}/coproducers/${se.value.id}`,w(le.value)),F.value="Co-produtor atualizado.",Ce(),await X()}catch(S){const b=S.response?.data?.errors;F.value=S.response?.data?.message||b?.cajupay_split_id?.[0]||b?.payout_method?.[0]||"Erro ao salvar."}finally{T.value=!1}}}async function dt(){if(!ee.value){F.value="Selecione um membro da lista.";return}T.value=!0,F.value="";try{await de.post(`/produtos/${W.productId}/coproducers/assign`,{user_id:ee.value,...w(G.value)}),F.value="Co-produtor adicionado.",ee.value=null,oe.value="",await X(),await H()}catch(S){const b=S.response?.data?.errors;F.value=S.response?.data?.message||b?.user_id?.[0]||b?.cajupay_split_id?.[0]||"Erro ao adicionar."}finally{T.value=!1}}async function O(){T.value=!0,F.value="";try{const{data:S}=await de.post(`/produtos/${W.productId}/coproducers/invite`,{email:u.value.email,...w(u.value)});F.value=S.warning||"Convite enviado.",u.value.email="",await X()}catch(S){const b=S.response?.data?.errors;F.value=S.response?.data?.message||b?.cajupay_split_id?.[0]||"Erro ao enviar convite."}finally{T.value=!1}}async function Ie(S){confirm("Revogar este co-produtor?")&&(await de.post(`/produtos/${W.productId}/coproducers/${S}/revoke`),F.value="Co-produtor revogado.",await X(),await H())}async function ut(S){await de.post(`/produtos/${W.productId}/coproducers/${S}/resend`),F.value="Convite reenviado."}return ea(async()=>{await X(),await H()}),(S,b)=>(s(),l("div",fr,[b[48]||(b[48]=t("div",null,[t("h2",{class:"text-base font-semibold text-zinc-900 dark:text-white"},"Co-produção"),t("p",{class:"mt-1 text-sm text-zinc-500"}," Comissão sobre o valor líquido (após taxas do gateway). Adicione alguém da sua equipe ou envie convite por e-mail. ")],-1)),t("div",gr,[t("div",_r,[t("div",kr,[d(o(_a),{class:"mt-0.5 h-5 w-5 shrink-0 text-[var(--color-primary)]"}),b[16]||(b[16]=t("div",null,[t("p",{class:"text-sm font-medium text-zinc-900 dark:text-white"}," Repasse automático via split CajuPay "),t("p",{class:"mt-1 text-xs text-zinc-500"}," Permite que parte da venda vá direto para a conta CajuPay do co-produtor (PIX com split). ")],-1))]),t("button",{type:"button",role:"switch","aria-checked":re.value,disabled:j.value||!ne.value&&!re.value,class:g(["relative inline-flex h-7 w-12 shrink-0 cursor-pointer rounded-full border-2 border-transparent transition disabled:cursor-not-allowed disabled:opacity-50",re.value?"bg-[var(--color-primary)]":"bg-zinc-300 dark:bg-zinc-600"]),onClick:st},[t("span",{class:g(["pointer-events-none inline-block h-6 w-6 transform rounded-full bg-white shadow transition",re.value?"translate-x-5":"translate-x-0"])},null,2)],10,zr)]),ne.value?m("",!0):(s(),l("p",hr," Conecte o gateway CajuPay em Integrações para usar split. "))]),t("div",wr,[t("div",Cr,[t("div",$r,[d(o(wo),{class:"h-4 w-4 text-zinc-500"}),b[17]||(b[17]=c(" Conta única (padrão) ",-1))]),b[18]||(b[18]=t("p",{class:"mt-2 text-xs leading-relaxed text-zinc-500"},[c(" Todo o pagamento cai na "),t("strong",null,"sua"),c(" conta CajuPay. O Getfy registra a comissão do co-produtor; ele acompanha vendas aqui e saca pelo "),t("strong",null,"Financeiro do parceiro"),c(" quando o saldo liberar. ")],-1))]),t("div",Sr,[t("div",Pr,[d(o(_a),{class:"h-4 w-4 text-[var(--color-primary)]"}),b[19]||(b[19]=c(" Split direto na CajuPay ",-1))]),b[20]||(b[20]=t("p",{class:"mt-2 text-xs leading-relaxed text-zinc-500"},[c(" Cada co-produtor pode ter "),t("strong",null,"seu próprio UUID"),c(" (cadastre um por pessoa na lista abaixo). Na venda PIX, a CajuPay reparte o líquido para a conta dele. O percentual do split é configurado "),t("strong",null,"no painel CajuPay"),c(" (o Getfy só guarda o ID). ")],-1))])]),t("div",Vr,[d(o(Go),{class:"h-4 w-4 shrink-0 mt-0.5"}),b[21]||(b[21]=t("p",null,[c(" A CajuPay aceita "),t("strong",null,"um split por cobrança PIX"),c(". Você pode ter vários co-produtores com split (cada um com seu UUID); em cada venda, o split na cobrança vai para "),t("strong",null,"um"),c(" co-produtor (o de maior % naquela venda; os demais co-produtores com split recebem pelo Financeiro do parceiro). "),t("strong",null,"Venda com afiliado:"),c(" o afiliado continua na conta única; o co-produtor com split "),t("strong",null,"pode"),c(" receber repasse direto na CajuPay normalmente. ")],-1))]),t("div",null,[t("div",Ur,[t("button",{type:"button",class:g(["inline-flex items-center gap-2 rounded-xl px-4 py-2 text-sm font-medium transition",R.value==="member"?"bg-[var(--color-primary)] text-white":"bg-zinc-100 text-zinc-700 hover:bg-zinc-200 dark:bg-zinc-800 dark:text-zinc-300"]),onClick:b[0]||(b[0]=V=>R.value="member")},[d(o(jt),{class:"h-4 w-4"}),b[22]||(b[22]=c(" Equipe / conta ",-1))],2),t("button",{type:"button",class:g(["inline-flex items-center gap-2 rounded-xl px-4 py-2 text-sm font-medium transition",R.value==="invite"?"bg-[var(--color-primary)] text-white":"bg-zinc-100 text-zinc-700 hover:bg-zinc-200 dark:bg-zinc-800 dark:text-zinc-300"]),onClick:b[1]||(b[1]=V=>R.value="invite")},[d(o(wa),{class:"h-4 w-4"}),b[23]||(b[23]=c(" Convite por e-mail ",-1))],2)])]),t("div",jr,[t("div",null,[b[24]||(b[24]=t("label",{class:"text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Comissão (%)",-1)),x(t("input",{"onUpdate:modelValue":b[2]||(b[2]=V=>G.value.commission_percent=V),type:"number",min:"0",max:"100",step:"0.01",class:"mt-1 w-full rounded-lg border border-zinc-300 px-3 py-2 text-sm dark:border-zinc-600 dark:bg-zinc-900"},null,512),[[$,G.value.commission_percent,void 0,{number:!0}]])]),t("div",null,[b[26]||(b[26]=t("label",{class:"text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Duração",-1)),x(t("select",{"onUpdate:modelValue":b[3]||(b[3]=V=>G.value.duration_days=V),class:"mt-1 w-full rounded-lg border border-zinc-300 px-3 py-2 text-sm dark:border-zinc-600 dark:bg-zinc-900"},[...b[25]||(b[25]=[t("option",{value:null},"Indeterminado",-1),t("option",{value:30},"30 dias",-1),t("option",{value:60},"60 dias",-1),t("option",{value:90},"90 dias",-1),t("option",{value:120},"120 dias",-1)])],512),[[Z,G.value.duration_days]])]),t("div",Ar,[b[28]||(b[28]=t("label",{class:"text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Como o co-produtor recebe?",-1)),x(t("select",{"onUpdate:modelValue":b[4]||(b[4]=V=>G.value.payout_method=V),class:"mt-1 w-full rounded-lg border border-zinc-300 px-3 py-2 text-sm dark:border-zinc-600 dark:bg-zinc-900",disabled:!f.value&&G.value.payout_method!=="cajupay_split"},[b[27]||(b[27]=t("option",{value:"internal"},"Conta única (Getfy / sua CajuPay)",-1)),t("option",{value:"cajupay_split",disabled:!f.value},"Split direto na CajuPay",8,Ir)],8,Er),[[Z,G.value.payout_method]])]),G.value.payout_method==="cajupay_split"?(s(),l("div",Rr,[b[29]||(b[29]=t("label",{class:"text-sm font-medium text-zinc-700 dark:text-zinc-300"},"ID do split (UUID) — painel CajuPay",-1)),x(t("input",{"onUpdate:modelValue":b[5]||(b[5]=V=>G.value.cajupay_split_id=V),type:"text",placeholder:"550e8400-e29b-41d4-a716-446655440000",class:"mt-1 w-full rounded-lg border border-zinc-300 px-3 py-2 font-mono text-sm dark:border-zinc-600 dark:bg-zinc-900"},null,512),[[$,G.value.cajupay_split_id]]),b[30]||(b[30]=t("p",{class:"mt-1 text-xs text-zinc-500"}," O co-produtor cria o split na conta CajuPay dele e envia este código para você colar aqui. ",-1))])):m("",!0),t("div",Mr,[t("label",Lr,[x(t("input",{"onUpdate:modelValue":b[6]||(b[6]=V=>G.value.commission_on_producer_sales=V),type:"checkbox"},null,512),[[We,G.value.commission_on_producer_sales]]),b[31]||(b[31]=c(" Vendas do produtor (checkout direto) ",-1))]),t("label",Nr,[x(t("input",{"onUpdate:modelValue":b[7]||(b[7]=V=>G.value.commission_on_affiliate_sales=V),type:"checkbox"},null,512),[[We,G.value.commission_on_affiliate_sales]]),b[32]||(b[32]=c(" Vendas de afiliados ",-1))])])]),R.value==="member"?(s(),l("div",Tr,[t("div",Or,[d(o(Xo),{class:"pointer-events-none absolute left-3 top-1/2 h-4 w-4 -translate-y-1/2 text-zinc-400"}),x(t("input",{"onUpdate:modelValue":b[8]||(b[8]=V=>oe.value=V),type:"search",placeholder:"Buscar por nome ou e-mail…",class:"w-full rounded-lg border border-zinc-300 py-2 pl-10 pr-3 text-sm dark:border-zinc-600 dark:bg-zinc-900",onInput:lt},null,544),[[$,oe.value]])]),b[33]||(b[33]=t("p",{class:"text-xs text-zinc-500"}," Lista infoprodutores e membros da equipe desta conta que ainda não são co-produtores deste produto. ",-1)),h.value.length?(s(),l("ul",Br,[(s(!0),l(z,null,I(h.value,V=>(s(),l("li",{key:V.id,class:g(["flex cursor-pointer items-center justify-between gap-2 px-3 py-2.5 transition hover:bg-zinc-50 dark:hover:bg-zinc-800/50",ee.value===V.id?"bg-[color-mix(in_srgb,var(--color-primary)_12%,transparent)]":""]),onClick:Re=>it(V)},[t("div",qr,[t("p",Fr,p(V.name),1),t("p",Gr,p(V.email),1)]),t("span",Xr,p(V.role_label),1)],10,Dr))),128))])):(s(),l("p",Hr,"Nenhum membro disponível para adicionar.")),d(E,{type:"button",disabled:T.value||!ee.value,onClick:dt},{default:v(()=>[c(p(T.value?"Adicionando…":"Adicionar co-produtor"),1)]),_:1},8,["disabled"])])):(s(),l("form",{key:1,class:"space-y-4 rounded-xl border border-zinc-200 p-4 dark:border-zinc-700",onSubmit:ae(O,["prevent"])},[t("div",null,[b[34]||(b[34]=t("label",{class:"text-sm font-medium text-zinc-700 dark:text-zinc-300"},"E-mail do convidado",-1)),x(t("input",{"onUpdate:modelValue":b[9]||(b[9]=V=>u.value.email=V),type:"email",required:"",placeholder:"pessoa@email.com",class:"mt-1 w-full rounded-lg border border-zinc-300 px-3 py-2 text-sm dark:border-zinc-600 dark:bg-zinc-900"},null,512),[[$,u.value.email]])]),t("div",null,[b[35]||(b[35]=t("label",{class:"text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Comissão (%)",-1)),x(t("input",{"onUpdate:modelValue":b[10]||(b[10]=V=>u.value.commission_percent=V),type:"number",min:"0",max:"100",step:"0.01",class:"mt-1 w-full rounded-lg border border-zinc-300 px-3 py-2 text-sm dark:border-zinc-600 dark:bg-zinc-900"},null,512),[[$,u.value.commission_percent,void 0,{number:!0}]])]),t("div",null,[b[37]||(b[37]=t("label",{class:"text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Como o co-produtor recebe?",-1)),x(t("select",{"onUpdate:modelValue":b[11]||(b[11]=V=>u.value.payout_method=V),class:"mt-1 w-full rounded-lg border border-zinc-300 px-3 py-2 text-sm dark:border-zinc-600 dark:bg-zinc-900"},[b[36]||(b[36]=t("option",{value:"internal"},"Conta única (Getfy)",-1)),t("option",{value:"cajupay_split",disabled:!f.value},"Split direto na CajuPay",8,Wr)],512),[[Z,u.value.payout_method]])]),u.value.payout_method==="cajupay_split"?(s(),l("div",Qr,[b[38]||(b[38]=t("label",{class:"text-sm font-medium text-zinc-700 dark:text-zinc-300"},"ID do split (UUID)",-1)),x(t("input",{"onUpdate:modelValue":b[12]||(b[12]=V=>u.value.cajupay_split_id=V),type:"text",required:"",placeholder:"UUID do painel CajuPay",class:"mt-1 w-full rounded-lg border border-zinc-300 px-3 py-2 font-mono text-sm dark:border-zinc-600 dark:bg-zinc-900"},null,512),[[$,u.value.cajupay_split_id]])])):m("",!0),b[39]||(b[39]=t("p",{class:"text-xs text-zinc-500"}," A pessoa receberá um link para aceitar o convite (mesmo estilo da página de afiliados). ",-1)),d(E,{type:"submit",disabled:T.value},{default:v(()=>[c(p(T.value?"Enviando…":"Enviar convite por e-mail"),1)]),_:1},8,["disabled"])],32)),F.value?(s(),l("p",Jr,p(F.value),1)):m("",!0),se.value?(s(),l("div",{key:3,class:"fixed inset-0 z-50 flex items-center justify-center bg-black/40 p-4",onClick:ae(Ce,["self"])},[t("div",Kr,[b[46]||(b[46]=t("h3",{class:"text-base font-semibold text-zinc-900 dark:text-white"},"Editar repasse",-1)),t("p",Yr,p(se.value.user?.name||se.value.email),1),t("div",Zr,[t("div",null,[b[40]||(b[40]=t("label",{class:"text-sm font-medium"},"Comissão (%)",-1)),x(t("input",{"onUpdate:modelValue":b[13]||(b[13]=V=>le.value.commission_percent=V),type:"number",min:"0",max:"100",class:"mt-1 w-full rounded-lg border px-3 py-2 text-sm dark:border-zinc-600 dark:bg-zinc-800"},null,512),[[$,le.value.commission_percent,void 0,{number:!0}]])]),t("div",null,[b[42]||(b[42]=t("label",{class:"text-sm font-medium"},"Forma de repasse",-1)),x(t("select",{"onUpdate:modelValue":b[14]||(b[14]=V=>le.value.payout_method=V),class:"mt-1 w-full rounded-lg border px-3 py-2 text-sm dark:border-zinc-600 dark:bg-zinc-800"},[b[41]||(b[41]=t("option",{value:"internal"},"Conta única",-1)),t("option",{value:"cajupay_split",disabled:!f.value},"Split CajuPay",8,en)],512),[[Z,le.value.payout_method]])]),le.value.payout_method==="cajupay_split"?(s(),l("div",tn,[b[43]||(b[43]=t("label",{class:"text-sm font-medium"},"ID do split (UUID)",-1)),x(t("input",{"onUpdate:modelValue":b[15]||(b[15]=V=>le.value.cajupay_split_id=V),type:"text",class:"mt-1 w-full rounded-lg border px-3 py-2 font-mono text-sm dark:border-zinc-600 dark:bg-zinc-800"},null,512),[[$,le.value.cajupay_split_id]])])):m("",!0)]),t("div",an,[d(E,{type:"button",variant:"outline",onClick:Ce},{default:v(()=>[...b[44]||(b[44]=[c("Cancelar",-1)])]),_:1}),d(E,{type:"button",disabled:T.value,onClick:It},{default:v(()=>[...b[45]||(b[45]=[c("Salvar",-1)])]),_:1},8,["disabled"])])])])):m("",!0),t("div",null,[b[47]||(b[47]=t("h3",{class:"text-sm font-semibold text-zinc-900 dark:text-white"},"Co-produtores",-1)),B.value?(s(),l("p",on,"Carregando…")):(s(),L(Ca,{key:1,class:"mt-4",rows:ce.value,"status-labels":Qe,"show-product-column":!1,"empty-label":"Nenhum co-produtor ainda."},{menu:v(({row:V,close:Re})=>[V?(s(),l(z,{key:0},[V.status==="active"?(s(),l("button",{key:0,type:"button",class:"flex w-full px-3 py-2 text-left text-sm text-zinc-700 hover:bg-zinc-100 dark:text-zinc-300 dark:hover:bg-zinc-800",onClick:ue=>{Et(M.value.find(Rt=>Rt.id===V.id)),Re()}}," Editar repasse ",8,rn)):m("",!0),V.status==="pending"?(s(),l("button",{key:1,type:"button",class:"flex w-full px-3 py-2 text-left text-sm text-zinc-700 hover:bg-zinc-100 dark:text-zinc-300 dark:hover:bg-zinc-800",onClick:ue=>{ut(V.id),Re()}}," Reenviar convite ",8,nn)):m("",!0),V.status!=="revoked"?(s(),l("button",{key:2,type:"button",class:"flex w-full px-3 py-2 text-left text-sm text-red-700 hover:bg-red-50 dark:text-red-300 dark:hover:bg-red-900/20",onClick:ue=>{Ie(V.id),Re()}}," Revogar ",8,sn)):m("",!0)],64)):m("",!0)]),_:1},8,["rows"]))])]))}},dn={class:"panel-card-lg space-y-8"},un={class:"flex items-center gap-2 text-sm"},cn={class:"grid gap-4 md:grid-cols-2"},pn={class:"flex items-center gap-2 text-sm md:col-span-2"},mn={class:"flex items-center gap-2 text-sm md:col-span-2"},bn={class:"grid gap-4 md:grid-cols-3"},xn={key:0,class:"rounded-lg bg-zinc-50 p-3 text-sm dark:bg-zinc-800"},yn=["href"],vn={key:1,class:"rounded-lg border border-amber-200/80 bg-amber-50 px-3 py-2.5 text-sm text-amber-950 dark:border-amber-900/40 dark:bg-amber-950/25 dark:text-amber-100"},fn={class:"text-xs"},gn={key:2,class:"text-sm text-zinc-500"},_n={key:0,class:"mt-3 text-sm text-zinc-500"},kn=["onClick"],zn=["onClick"],hn=["onClick"],wn=["onClick"],Cn={__name:"ProductAfiliadosTab",props:{productId:{type:String,required:!0}},setup(k){const W=k,B=C(!0),T=C(!1),j=C(null),R=C([]),M=C(""),h=C({enabled:!1,default_commission_percent:10,manual_approval:!0,share_buyer_data:!1,public_slug:"",support_email:"",description:"",settlement_days_pix:0,settlement_days_card:30,settlement_days_boleto:2});async function oe(){B.value=!0;try{const{data:u}=await de.get(`/produtos/${W.productId}/affiliate-program`);j.value=u.program,R.value=u.affiliates??[],ee(u.program??{})}finally{B.value=!1}}function ee(u){h.value={enabled:!!u.enabled,default_commission_percent:Number(u.default_commission_percent??10),manual_approval:u.manual_approval!==!1,share_buyer_data:!!u.share_buyer_data,public_slug:u.public_slug??"",support_email:u.support_email??"",description:u.description??"",settlement_days_pix:Number(u.settlement_days_pix??0),settlement_days_card:Number(u.settlement_days_card??30),settlement_days_boleto:Number(u.settlement_days_boleto??2)}}function F(){const u=h.value;return{enabled:!!u.enabled,default_commission_percent:Number(u.default_commission_percent),manual_approval:!!u.manual_approval,share_buyer_data:!!u.share_buyer_data,public_slug:u.public_slug?.trim()||null,support_email:u.support_email?.trim()||null,description:u.description?.trim()||null,settlement_days_pix:Number(u.settlement_days_pix??0),settlement_days_card:Number(u.settlement_days_card??30),settlement_days_boleto:Number(u.settlement_days_boleto??2)}}async function re(){T.value=!0,M.value="";try{const u=F();let f;try{({data:f}=await de.put(`/produtos/${W.productId}/affiliate-program`,u))}catch(_){if(_.response?.status===405||_.response?.status===501)({data:f}=await de.post(`/produtos/${W.productId}/affiliate-program`,u));else throw _}j.value=f.program,ee(f.program??{}),M.value=f.program?.enabled?"Programa salvo e afiliação ativada.":"Programa salvo."}catch(u){const f=u.response?.data?.errors;M.value=f?Object.values(f).flat().join(" "):u.response?.data?.message||"Erro ao salvar."}finally{T.value=!1}}async function ne(u,f){await de.put(`/produtos/${W.productId}/affiliates/${u.id}`,f),await oe()}function se(u){navigator.clipboard?.writeText(u),M.value="Link copiado."}const le=N(()=>h.value.enabled?j.value?.public_page_url||(h.value.public_slug?`/afiliar/${h.value.public_slug}`:""):""),ze=N(()=>R.value.map(u=>({id:u.id,created_at:u.created_at,name:u.user?.name??null,email:u.user?.email??null,product_name:u.product_name,commission_percent:u.commission_percent??h.value.default_commission_percent??null,status:u.status,_raw:u})));function G(u){return R.value.find(f=>f.id===u)}return ea(oe),(u,f)=>(s(),l("div",dn,[t("div",null,[f[26]||(f[26]=t("h2",{class:"text-base font-semibold text-zinc-900 dark:text-white"},"Programa de afiliados",-1)),t("form",{class:"mt-4 space-y-4",onSubmit:ae(re,["prevent"])},[t("label",un,[x(t("input",{"onUpdate:modelValue":f[0]||(f[0]=_=>h.value.enabled=_),type:"checkbox"},null,512),[[We,h.value.enabled]]),f[10]||(f[10]=c(" Ativar afiliação para este produto ",-1))]),t("div",cn,[t("div",null,[f[11]||(f[11]=t("label",{class:"text-sm font-medium"},"Comissão padrão (%)",-1)),x(t("input",{"onUpdate:modelValue":f[1]||(f[1]=_=>h.value.default_commission_percent=_),type:"number",min:"0",max:"100",class:"mt-1 w-full rounded-lg border border-zinc-300 px-3 py-2 text-sm dark:border-zinc-600 dark:bg-zinc-900"},null,512),[[$,h.value.default_commission_percent,void 0,{number:!0}]])]),t("div",null,[f[12]||(f[12]=t("label",{class:"text-sm font-medium"},"Slug da página pública",-1)),x(t("input",{"onUpdate:modelValue":f[2]||(f[2]=_=>h.value.public_slug=_),type:"text",class:"mt-1 w-full rounded-lg border border-zinc-300 px-3 py-2 text-sm dark:border-zinc-600 dark:bg-zinc-900"},null,512),[[$,h.value.public_slug]])]),t("div",null,[f[13]||(f[13]=t("label",{class:"text-sm font-medium"},"E-mail de suporte",-1)),x(t("input",{"onUpdate:modelValue":f[3]||(f[3]=_=>h.value.support_email=_),type:"email",class:"mt-1 w-full rounded-lg border border-zinc-300 px-3 py-2 text-sm dark:border-zinc-600 dark:bg-zinc-900"},null,512),[[$,h.value.support_email]])]),t("label",pn,[x(t("input",{"onUpdate:modelValue":f[4]||(f[4]=_=>h.value.manual_approval=_),type:"checkbox"},null,512),[[We,h.value.manual_approval]]),f[14]||(f[14]=c(" Aprovar afiliados manualmente ",-1))]),t("label",mn,[x(t("input",{"onUpdate:modelValue":f[5]||(f[5]=_=>h.value.share_buyer_data=_),type:"checkbox"},null,512),[[We,h.value.share_buyer_data]]),f[15]||(f[15]=c(" Compartilhar dados do comprador com afiliados (nome, e-mail e telefone nas vendas) ",-1))]),f[16]||(f[16]=t("p",{class:"text-xs text-zinc-500 md:col-span-2"}," Se desativado, afiliados veem os dados mascarados na listagem de vendas. ",-1))]),t("div",null,[f[17]||(f[17]=t("label",{class:"text-sm font-medium"},"Descrição (página de afiliação)",-1)),x(t("textarea",{"onUpdate:modelValue":f[6]||(f[6]=_=>h.value.description=_),rows:"3",class:"mt-1 w-full rounded-lg border border-zinc-300 px-3 py-2 text-sm dark:border-zinc-600 dark:bg-zinc-900"},null,512),[[$,h.value.description]])]),t("div",bn,[t("div",null,[f[18]||(f[18]=t("label",{class:"text-xs font-medium"},"Liberação PIX (dias)",-1)),x(t("input",{"onUpdate:modelValue":f[7]||(f[7]=_=>h.value.settlement_days_pix=_),type:"number",min:"0",class:"mt-1 w-full rounded-lg border px-3 py-2 text-sm dark:border-zinc-600 dark:bg-zinc-900"},null,512),[[$,h.value.settlement_days_pix,void 0,{number:!0}]])]),t("div",null,[f[19]||(f[19]=t("label",{class:"text-xs font-medium"},"Cartão (dias)",-1)),x(t("input",{"onUpdate:modelValue":f[8]||(f[8]=_=>h.value.settlement_days_card=_),type:"number",min:"0",class:"mt-1 w-full rounded-lg border px-3 py-2 text-sm dark:border-zinc-600 dark:bg-zinc-900"},null,512),[[$,h.value.settlement_days_card,void 0,{number:!0}]])]),t("div",null,[f[20]||(f[20]=t("label",{class:"text-xs font-medium"},"Boleto (dias)",-1)),x(t("input",{"onUpdate:modelValue":f[9]||(f[9]=_=>h.value.settlement_days_boleto=_),type:"number",min:"0",class:"mt-1 w-full rounded-lg border px-3 py-2 text-sm dark:border-zinc-600 dark:bg-zinc-900"},null,512),[[$,h.value.settlement_days_boleto,void 0,{number:!0}]])])]),le.value?(s(),l("div",xn,[f[21]||(f[21]=t("p",{class:"font-medium"},"Página de cadastro de afiliados",-1)),t("a",{href:le.value,class:"text-[var(--color-primary)] break-all",target:"_blank",rel:"noopener"},p(le.value),9,yn)])):h.value.public_slug?(s(),l("p",vn,[f[22]||(f[22]=c(" Marque ",-1)),f[23]||(f[23]=t("strong",null,"Ativar afiliação para este produto",-1)),f[24]||(f[24]=c(" e salve para liberar o link de cadastro (",-1)),t("code",fn,"/afiliar/"+p(h.value.public_slug),1),f[25]||(f[25]=c("). ",-1))])):m("",!0),d(E,{type:"submit",disabled:T.value},{default:v(()=>[c(p(T.value?"Salvando…":"Salvar programa"),1)]),_:1},8,["disabled"]),M.value?(s(),l("p",gn,p(M.value),1)):m("",!0)],32)]),t("div",null,[f[27]||(f[27]=t("h3",{class:"mt-2 text-sm font-semibold text-zinc-900 dark:text-white"},"Afiliados",-1)),B.value?(s(),l("p",_n,"Carregando…")):(s(),L(Ca,{key:1,class:"mt-4",rows:ze.value,"show-product-column":!1,"empty-label":"Nenhum afiliado cadastrado."},{menu:v(({row:_,close:w})=>[_?(s(),l(z,{key:0},[G(_.id)?.affiliate_link?(s(),l("button",{key:0,type:"button",class:"flex w-full px-3 py-2 text-left text-sm text-zinc-700 hover:bg-zinc-100 dark:text-zinc-300 dark:hover:bg-zinc-800",onClick:X=>{se(G(_.id).affiliate_link),w()}}," Copiar link ",8,kn)):m("",!0),_.status==="pending"?(s(),l("button",{key:1,type:"button",class:"flex w-full px-3 py-2 text-left text-sm text-emerald-700 hover:bg-emerald-50 dark:text-emerald-300 dark:hover:bg-emerald-900/20",onClick:X=>{ne(G(_.id),{status:"approved"}),w()}}," Aprovar ",8,zn)):m("",!0),_.status==="pending"?(s(),l("button",{key:2,type:"button",class:"flex w-full px-3 py-2 text-left text-sm text-zinc-700 hover:bg-zinc-100 dark:text-zinc-300 dark:hover:bg-zinc-800",onClick:X=>{ne(G(_.id),{status:"rejected"}),w()}}," Rejeitar ",8,hn)):m("",!0),_.status==="approved"?(s(),l("button",{key:3,type:"button",class:"flex w-full px-3 py-2 text-left text-sm text-red-700 hover:bg-red-50 dark:text-red-300 dark:hover:bg-red-900/20",onClick:X=>{ne(G(_.id),{status:"removed"}),w()}}," Remover ",8,wn)):m("",!0)],64)):m("",!0)]),_:1},8,["rows"]))])]))}},$n={class:"rounded-xl border border-zinc-200 bg-zinc-50/80 dark:border-zinc-600 dark:bg-zinc-900/80 overflow-hidden shadow-inner"},Sn={class:"p-3 bg-white dark:bg-zinc-800/90 min-h-[200px] overflow-auto max-h-[520px]"},Pn={class:"text-xs text-zinc-500 dark:text-zinc-400 space-y-1 mb-3 pb-2 border-b border-zinc-100 dark:border-zinc-700"},Vn={key:0,class:"flex gap-2"},Un={class:"text-zinc-700 dark:text-zinc-300 truncate"},jn={key:1,class:"flex gap-2"},An={class:"text-zinc-800 dark:text-zinc-200 font-medium truncate"},En={key:0,class:"mb-3 flex justify-center"},In=["src"],Rn=["innerHTML"],Mn={__name:"EmailTemplatePreview",props:{logoUrl:{type:String,default:""},subject:{type:String,default:""},bodyHtml:{type:String,default:""},fromName:{type:String,default:""}},setup(k){const W=k,B={nome_cliente:"Maria Silva",nome_produto:"Meu Curso",link_acesso:"https://exemplo.com/m/xxxxx",email_cliente:"maria@exemplo.com"};function T(M){return!M||typeof M!="string"?"":M.replace(/\{nome_cliente\}/g,B.nome_cliente).replace(/\{nome_produto\}/g,B.nome_produto).replace(/\{link_acesso\}/g,B.link_acesso).replace(/\{email_cliente\}/g,B.email_cliente)}const j=N(()=>T(W.subject)),R=N(()=>T(W.bodyHtml));return(M,h)=>(s(),l("div",$n,[h[3]||(h[3]=t("div",{class:"border-b border-zinc-200 bg-white px-3 py-2 flex items-center gap-2 dark:border-zinc-600 dark:bg-zinc-800"},[t("span",{class:"text-[10px] uppercase tracking-wider text-zinc-400 dark:text-zinc-500 font-medium"},"Preview"),t("span",{class:"text-zinc-300 dark:text-zinc-600"},"·"),t("span",{class:"text-xs text-zinc-500 dark:text-zinc-400"},"dados de exemplo")],-1)),t("div",Sn,[t("div",Pn,[k.fromName?(s(),l("div",Vn,[h[1]||(h[1]=t("span",{class:"text-zinc-400 shrink-0"},"De:",-1)),t("span",Un,p(k.fromName),1)])):m("",!0),j.value?(s(),l("div",jn,[h[2]||(h[2]=t("span",{class:"text-zinc-400 shrink-0"},"Assunto:",-1)),t("span",An,p(j.value),1)])):m("",!0)]),k.logoUrl?(s(),l("div",En,[t("img",{src:k.logoUrl,alt:"Logo",class:"max-h-10 w-auto object-contain mx-auto",onError:h[0]||(h[0]=oe=>oe.target.style.display="none")},null,40,In)])):m("",!0),t("div",{class:"email-preview-body text-sm text-zinc-700 dark:text-zinc-300 font-sans max-w-none break-words",innerHTML:R.value},null,8,Rn)])]))}},Ln=Qo(Mn,[["__scopeId","data-v-a50615d6"]]),Nn={class:"space-y-4"},Tn={class:"text-sm text-zinc-600 dark:text-zinc-400"},On={key:0,class:"space-y-4"},Bn={class:"mb-2 text-sm font-semibold text-zinc-900 dark:text-white"},Dn={class:"space-y-2"},qn={class:"font-medium text-zinc-900 dark:text-white"},Fn={class:"block text-xs text-zinc-500"},Gn={key:1,class:"rounded-xl border border-dashed border-zinc-300 px-4 py-6 text-center text-sm text-zinc-500 dark:border-zinc-600 dark:text-zinc-400"},Xn={__name:"ProductConversionPixelsInfo",props:{integrations:{type:Array,default:()=>[]}},setup(k){const W=k,B=N(()=>{const j={};for(const R of ka)j[R.id]=[];for(const R of W.integrations||[]){const M=R.platform||"meta";j[M]||(j[M]=[]),j[M].push(R)}return j}),T=N(()=>(W.integrations||[]).length>0);return(j,R)=>(s(),l("div",Nn,[t("p",Tn,[R[1]||(R[1]=c(" Os pixels são cadastrados em ",-1)),d(o(Y),{href:"/integracoes",class:"font-medium text-[var(--color-primary)] underline"},{default:v(()=>[...R[0]||(R[0]=[c("Integrações → Pixels e rastreamento",-1)])]),_:1}),R[2]||(R[2]=c(". Marque os produtos em cada pixel (como nos webhooks). ",-1))]),T.value?(s(),l("div",On,[(s(!0),l(z,null,I(o(ka),M=>x((s(),l("div",{key:M.id,class:"rounded-xl border border-zinc-200 bg-zinc-50/50 p-4 dark:border-zinc-700 dark:bg-zinc-800/30"},[t("h3",Bn,p(M.label),1),t("ul",Dn,[(s(!0),l(z,null,I(B.value[M.id],h=>(s(),l("li",{key:h.id,class:"rounded-lg border border-zinc-200 bg-white px-3 py-2 text-sm dark:border-zinc-600 dark:bg-zinc-900"},[t("span",qn,p(h.name),1),t("span",Fn,p(h.summary),1),t("span",{class:g(["mt-1 inline-block text-xs",h.is_active?"text-emerald-600":"text-zinc-400"])},p(h.is_active?"Ativo":"Inativo"),3)]))),128))])])),[[nt,B.value[M.id]?.length]])),128))])):(s(),l("p",Gn,[R[4]||(R[4]=c(" Nenhum pixel vinculado a este produto. ",-1)),d(o(Y),{href:"/integracoes",class:"mt-1 block font-medium text-[var(--color-primary)] underline"},{default:v(()=>[...R[3]||(R[3]=[c(" Configurar em Integrações ",-1)])]),_:1})]))]))}},Hn={class:"flex min-w-0 flex-col space-y-6 lg:flex-row lg:gap-6 lg:space-y-0 lg:pl-2"},Wn={class:"hidden lg:flex lg:flex-col w-56 shrink-0 rounded-xl bg-zinc-50 dark:bg-zinc-800/50 p-2","aria-label":"Menu de edição do produto"},Qn={class:"flex flex-col gap-0.5"},Jn=["href"],Kn=["aria-current","onClick"],Yn={class:"flex min-w-0 flex-1 items-center gap-1.5"},Zn={class:"truncate"},es=["href"],ts=["aria-current","onClick"],as={class:"flex items-center gap-1.5"},os={class:"flex-1 min-w-0 space-y-6"},rs={class:"grid grid-cols-1 gap-8 xl:grid-cols-2"},ns={class:"panel-table"},ss={class:"p-6"},ls={class:"grid gap-6 lg:grid-cols-[1fr,auto]"},is={class:"space-y-5"},ds={key:0,class:"mt-1.5 text-sm text-red-600 dark:text-red-400"},us={key:0,class:"mt-1.5 text-sm text-red-600 dark:text-red-400"},cs={class:"flex flex-wrap items-center gap-4 pt-1"},ps={class:"flex flex-col items-start lg:pt-0"},ms={class:"relative flex h-28 w-28 shrink-0 cursor-pointer flex-col items-center justify-center overflow-hidden rounded-xl border-2 border-dashed border-zinc-200 bg-zinc-50/80 transition hover:border-[var(--color-primary)]/50 hover:bg-[var(--color-primary)]/5 dark:border-zinc-600 dark:bg-zinc-800/80 dark:hover:border-[var(--color-primary)]/40 dark:hover:bg-[var(--color-primary)]/10"},bs=["src"],xs={class:"mt-1 text-center text-xs font-medium text-zinc-600 dark:text-zinc-400"},ys={class:"panel-table xl:min-h-0"},vs={class:"p-6 space-y-6"},fs={class:"grid gap-3 sm:grid-cols-2"},gs=["onClick"],_s={class:"max-w-2xl space-y-4"},ks={class:"flex flex-col gap-3 sm:flex-row sm:items-end"},zs={class:"min-w-0 flex-1 max-w-xs"},hs={class:"mt-1.5 text-xs text-zinc-500 dark:text-zinc-400"},ws={key:0,class:"mt-1.5 text-sm text-red-600 dark:text-red-400"},Cs={class:"min-w-0 w-full flex-1 sm:max-w-md"},$s={class:"mb-2 flex items-center gap-1.5 text-sm font-medium text-zinc-700 dark:text-zinc-300"},Ss={key:0,class:"text-xs text-zinc-500 dark:text-zinc-400"},Ps=["aria-expanded"],Vs={class:"min-w-0 flex-1 truncate font-normal"},Us={class:"text-sm leading-snug text-zinc-700 dark:text-zinc-300"},js={key:2,class:"mt-1 text-sm text-red-600 dark:text-red-400"},As={class:"rounded-xl border border-zinc-200/80 bg-zinc-50/50 p-4 dark:border-zinc-600/80 dark:bg-zinc-900/20"},Es={class:"flex flex-wrap gap-2"},Is={key:0,class:"mt-4 max-w-xs"},Rs=["value"],Ms={key:0,class:"mt-1 text-sm text-red-600 dark:text-red-400"},Ls={key:0},Ns={key:1,class:"rounded-xl border border-zinc-200/80 bg-zinc-50/50 p-4 dark:border-zinc-600/80 dark:bg-zinc-900/20 sm:col-span-2"},Ts={class:"mt-4 grid gap-4 sm:grid-cols-3"},Os={class:"border-t border-zinc-200/80 pt-6 dark:border-zinc-600/80"},Bs={class:"mb-3 text-sm font-medium text-zinc-700 dark:text-zinc-300"},Ds={class:"mb-4 text-xs text-zinc-500 dark:text-zinc-400"},qs={class:"mb-4 space-y-2"},Fs={class:"min-w-0 flex-1"},Gs={class:"font-medium text-zinc-900 dark:text-white"},Xs={class:"ml-2 text-sm text-zinc-500 dark:text-zinc-400"},Hs=["href"],Ws={class:"flex gap-1.5"},Qs={key:0,class:"rounded-lg border border-dashed border-zinc-200 py-4 text-center text-xs text-zinc-500 dark:border-zinc-600 dark:text-zinc-400"},Js={class:"mb-3 text-sm font-medium text-zinc-700 dark:text-zinc-300"},Ks={class:"grid gap-3 sm:grid-cols-[1fr,1fr,auto]"},Ys={class:"mt-3"},Zs={class:"mb-1 flex items-center gap-1 text-xs font-medium text-zinc-600 dark:text-zinc-400"},el={key:0,class:"text-xs text-zinc-500 dark:text-zinc-400"},tl=["aria-expanded"],al={class:"min-w-0 flex-1 truncate font-normal"},ol={class:"text-sm leading-snug text-zinc-700 dark:text-zinc-300"},rl={key:0,class:"mt-1 text-sm text-red-600 dark:text-red-400"},nl={class:"mt-3 flex gap-2"},sl={class:"mb-4 space-y-2"},ll={class:"min-w-0 flex-1"},il={class:"font-medium text-zinc-900 dark:text-white"},dl={class:"ml-2 text-sm text-zinc-500 dark:text-zinc-400"},ul=["href"],cl={class:"flex gap-1.5"},pl={key:0,class:"rounded-lg border border-dashed border-zinc-200 py-4 text-center text-xs text-zinc-500 dark:border-zinc-600 dark:text-zinc-400"},ml={class:"mb-3 text-sm font-medium text-zinc-700 dark:text-zinc-300"},bl={class:"grid gap-3 sm:grid-cols-2"},xl={class:"mb-1 flex items-center gap-1 text-xs font-medium text-zinc-600 dark:text-zinc-400"},yl={key:0,class:"text-xs text-zinc-500 dark:text-zinc-400"},vl=["aria-expanded"],fl={class:"min-w-0 flex-1 truncate font-normal"},gl={class:"text-sm leading-snug text-zinc-700 dark:text-zinc-300"},_l={key:0,class:"mt-1 text-sm text-red-600 dark:text-red-400"},kl={class:"mt-3 flex gap-2"},zl={class:"panel-table xl:min-h-0"},hl={class:"space-y-6 p-6"},wl={class:"panel-card-sm"},Cl={key:0,class:"mt-4 max-w-xs"},$l={key:0,class:"mt-1 text-sm text-red-600 dark:text-red-400"},Sl={class:"panel-card-sm"},Pl={class:"mt-2 text-xs text-zinc-500 dark:text-zinc-400"},Vl={key:0,class:"mt-4 space-y-4"},Ul={key:0,class:"text-sm text-zinc-600 dark:text-zinc-400"},jl={key:1,class:"text-xs text-zinc-500 dark:text-zinc-400"},Al={class:"max-h-96 space-y-4 overflow-y-auto pr-1"},El={class:"mb-2 block text-sm font-medium text-zinc-700 dark:text-zinc-300"},Il=["onUpdate:modelValue","placeholder"],Rl={key:2,class:"text-sm text-red-600 dark:text-red-400"},Ml={class:"flex flex-wrap items-center gap-3"},Ll={key:0,class:"mx-auto w-full max-w-3xl xl:max-w-6xl"},Nl={class:"panel-table"},Tl={class:"p-6"},Ol={class:"grid gap-5 sm:grid-cols-2 xl:grid-cols-4"},Bl={class:"panel-card-md"},Dl={class:"flex flex-col gap-3"},ql={class:"flex items-center gap-3"},Fl={class:"flex h-12 w-12 shrink-0 items-center justify-center rounded-xl bg-white p-2 shadow-sm dark:bg-zinc-700/50"},Gl={key:1,class:"text-xs text-zinc-500 dark:text-zinc-400"},Xl={key:0,class:"panel-card-md"},Hl={class:"flex flex-col gap-3"},Wl={key:2,class:"rounded-lg border border-amber-200 bg-amber-50 px-3 py-2 text-xs text-amber-800 dark:border-amber-800 dark:bg-amber-950/40 dark:text-amber-200"},Ql={key:3,class:"text-xs text-zinc-500 dark:text-zinc-400"},Jl={class:"panel-card-md"},Kl={class:"flex flex-col gap-3"},Yl={class:"flex items-center gap-3"},Zl={class:"flex h-12 w-12 shrink-0 items-center justify-center rounded-xl bg-white p-2 shadow-sm dark:bg-zinc-700/50"},ei={key:2,class:"text-xs text-zinc-500 dark:text-zinc-400"},ti={key:3,class:"mt-3 space-y-3 border-t border-zinc-200/80 pt-3 dark:border-zinc-600/80"},ai={class:"flex items-center justify-between rounded-xl border border-zinc-100 bg-white px-4 py-3 dark:border-zinc-700 dark:bg-zinc-800/50"},oi={class:"min-w-0"},ri={class:"mt-0.5 text-xs text-zinc-500 dark:text-zinc-400"},ni={key:0,class:"rounded-xl border border-zinc-100 bg-white p-4 dark:border-zinc-700 dark:bg-zinc-800/50"},si=["value"],li={class:"mt-1.5 text-xs text-zinc-500 dark:text-zinc-400"},ii={key:4,class:"mt-3 space-y-3 border-t border-zinc-200/80 pt-3 dark:border-zinc-600/80"},di={class:"flex items-center justify-between rounded-xl border border-zinc-100 bg-white px-4 py-3 dark:border-zinc-700 dark:bg-zinc-800/50"},ui={class:"panel-card-md"},ci={class:"flex flex-col gap-3"},pi={class:"flex items-center gap-3"},mi={class:"flex h-12 w-12 shrink-0 items-center justify-center rounded-xl bg-white p-2 shadow-sm dark:bg-zinc-700/50"},bi={key:2,class:"text-xs text-zinc-500 dark:text-zinc-400"},xi={class:"panel-card-md"},yi={class:"flex flex-col gap-3"},vi={key:1,class:"text-xs text-zinc-500 dark:text-zinc-400"},fi={class:"panel-card-md"},gi={class:"flex flex-col gap-3"},_i={key:1,class:"text-xs text-zinc-500 dark:text-zinc-400"},ki={class:"panel-card-md"},zi={class:"flex flex-col gap-3"},hi={class:"flex items-center gap-3"},wi={class:"flex h-12 w-12 shrink-0 items-center justify-center rounded-xl bg-white p-2 shadow-sm dark:bg-zinc-700/50"},Ci={class:"flex cursor-pointer items-start gap-2.5 rounded-lg border border-zinc-200 px-3 py-2.5 dark:border-zinc-600"},$i={key:2,class:"text-xs text-zinc-500 dark:text-zinc-400"},Si={key:1,class:"panel-card-md"},Pi={class:"flex flex-col gap-3"},Vi={class:"flex items-center gap-3"},Ui={class:"flex h-12 w-12 shrink-0 items-center justify-center rounded-xl bg-white p-2 shadow-sm dark:bg-zinc-700/50"},ji={key:1,class:"text-xs text-zinc-500 dark:text-zinc-400"},Ai={class:"panel-card-md"},Ei={class:"flex flex-col gap-3"},Ii={class:"flex items-center gap-3"},Ri={class:"flex h-12 w-12 shrink-0 items-center justify-center rounded-xl bg-white p-2 shadow-sm dark:bg-zinc-700/50"},Mi={key:1,class:"text-xs text-zinc-500 dark:text-zinc-400"},Li={class:"panel-table"},Ni={class:"p-6"},Ti={class:"grid gap-3 grid-cols-1 sm:grid-cols-2 md:grid-cols-3 lg:grid-cols-4"},Oi=["disabled","onClick"],Bi={class:"min-w-0 flex-1"},Di={class:"font-medium text-zinc-900 dark:text-white"},qi={key:0,class:"ml-1 text-xs text-zinc-500"},Fi={key:0,class:"mt-2 text-sm text-red-600 dark:text-red-400"},Gi={key:0,class:"panel-table"},Xi={class:"p-6 space-y-4"},Hi={class:"grid gap-4 sm:grid-cols-2"},Wi=["value"],Qi={key:0,class:"mt-1 text-xs text-zinc-500 dark:text-zinc-400"},Ji={class:"space-y-2"},Ki=["onUpdate:modelValue"],Yi={class:"space-y-2"},Zi={class:"flex gap-2"},ed=["disabled"],td=["value"],ad=["disabled"],od=["disabled"],rd={key:0,class:"text-xs text-red-600 dark:text-red-400"},nd={key:1,class:"text-xs text-zinc-500 dark:text-zinc-400"},sd={class:"flex items-end"},ld={key:0,class:"rounded-lg bg-red-100 px-3 py-2 text-sm text-red-700 dark:bg-red-900/30 dark:text-red-300"},id={class:"flex shrink-0 items-center justify-between border-b border-zinc-200 px-4 py-3 dark:border-zinc-700"},dd={class:"flex items-center gap-2"},ud={class:"flex-1 overflow-y-auto p-4"},cd={key:0,class:"mt-1.5 text-sm text-red-600 dark:text-red-400"},pd={class:"shrink-0 border-t border-zinc-200 p-4 flex gap-2 dark:border-zinc-700"},md={class:"flex shrink-0 items-center justify-between border-b border-zinc-200 px-4 py-3 dark:border-zinc-700"},bd={class:"flex items-center gap-2"},xd={class:"flex-1 space-y-4 overflow-y-auto p-4"},yd={class:"panel-card p-3 space-y-2"},vd={class:"flex cursor-pointer items-start gap-3 rounded-lg border border-zinc-200 bg-white p-3 dark:border-zinc-600 dark:bg-zinc-900/80"},fd={class:"flex cursor-pointer items-start gap-3 rounded-lg border border-zinc-200 bg-white p-3 dark:border-zinc-600 dark:bg-zinc-900/80"},gd={key:0,class:"text-sm text-red-600 dark:text-red-400"},_d={class:"flex gap-2"},kd=["value"],zd={key:1},hd={key:0,class:"mt-1 text-xs text-amber-600 dark:text-amber-400"},wd={class:"grid grid-cols-2 gap-3"},Cd={class:"flex shrink-0 gap-2 border-t border-zinc-200 p-4 dark:border-zinc-700"},$d={class:"panel-table"},Sd={class:"p-6"},Pd={class:"flex flex-wrap items-center gap-3"},Vd={class:"grid grid-cols-1 gap-8 xl:grid-cols-2"},Ud={class:"panel-table"},jd={class:"p-6 space-y-5"},Ad={class:"flex flex-col sm:flex-row gap-4 items-start"},Ed=["src"],Id={key:0,class:"mt-2 text-sm text-red-600 dark:text-red-400"},Rd={class:"panel-table"},Md={class:"border-b border-zinc-200/80 bg-gradient-to-r from-zinc-50/90 to-zinc-100/50 px-6 py-5 dark:from-zinc-800/80 dark:to-zinc-800/50"},Ld={class:"flex items-start justify-between gap-4"},Nd={class:"p-6 space-y-6"},Td={class:"panel-card-sm space-y-3 dark:bg-zinc-900/20"},Od=["disabled"],Bd=["disabled"],Dd={class:"panel-card-sm space-y-3 dark:bg-zinc-900/20"},qd=["disabled"],Fd=["disabled"],Gd={class:"panel-card-sm space-y-3 dark:bg-zinc-900/20"},Xd=["disabled"],Hd=["disabled"],Wd={class:"panel-table xl:sticky xl:top-6"},Qd={class:"p-6"},Jd={class:"flex flex-wrap items-center gap-3"},Kd={class:"rounded-xl border border-amber-200 bg-amber-50 px-4 py-3 text-sm text-amber-900 dark:border-amber-800/50 dark:bg-amber-950/30 dark:text-amber-100"},Yd={key:0,class:"rounded-xl border border-red-200 bg-red-50 px-4 py-3 text-sm text-red-800 dark:border-red-800/50 dark:bg-red-950/30 dark:text-red-200"},Zd={class:"panel-table"},eu={class:"border-b border-zinc-200/80 bg-gradient-to-r from-zinc-50/90 to-zinc-100/50 px-6 py-5 dark:from-zinc-800/80 dark:to-zinc-800/50"},tu={class:"flex items-start justify-between gap-4"},au={class:"p-6 space-y-3"},ou=["disabled"],ru={class:"panel-table"},nu={class:"border-b border-zinc-200/80 bg-gradient-to-r from-zinc-50/90 to-zinc-100/50 px-6 py-5 dark:from-zinc-800/80 dark:to-zinc-800/50"},su={class:"flex items-start justify-between gap-4"},lu={class:"p-6 space-y-3"},iu=["disabled"],du={class:"panel-table"},uu={class:"border-b border-zinc-200/80 bg-gradient-to-r from-zinc-50/90 to-zinc-100/50 px-6 py-5 dark:from-zinc-800/80 dark:to-zinc-800/50"},cu={class:"flex items-start justify-between gap-4"},pu={class:"p-6 space-y-6"},mu=["value","disabled"],bu=["value"],xu={class:"flex flex-wrap items-start justify-between gap-3"},yu={class:"text-sm font-semibold text-zinc-900 dark:text-white"},vu={class:"mt-0.5 text-xs font-medium text-[var(--color-primary)]"},fu=["disabled","onClick"],gu={class:"flex flex-wrap items-center gap-2"},_u=["onUpdate:modelValue","disabled","onInput"],ku=["onUpdate:modelValue","disabled","onChange"],zu=["value"],hu={class:"mt-3 flex flex-wrap gap-2"},wu=["disabled","onClick"],Cu=["onUpdate:modelValue","disabled"],$u=["disabled"],Su={class:"flex flex-wrap items-center gap-3"},Pu={class:"w-full space-y-6"},Vu={class:"relative panel-table"},Uu={class:"border-b border-zinc-200/80 bg-gradient-to-r from-[var(--color-primary)]/10 via-zinc-50/90 to-zinc-100/50 px-6 py-5 dark:from-[var(--color-primary)]/15 dark:via-zinc-800/80 dark:to-zinc-800/50"},ju={class:"relative flex flex-wrap items-center justify-between gap-4"},Au={key:0,class:"flex flex-col items-center justify-center rounded-2xl border-2 border-dashed border-zinc-200 bg-zinc-50/50 px-6 py-16 text-center dark:border-zinc-600 dark:bg-zinc-800/30"},Eu={class:"flex h-14 w-14 items-center justify-center rounded-2xl bg-zinc-200/80 text-zinc-400 dark:bg-zinc-700/80 dark:text-zinc-500"},Iu={key:1,class:"space-y-4"},Ru={class:"flex flex-wrap items-start gap-4 p-4 sm:flex-nowrap"},Mu={class:"flex h-16 w-16 shrink-0 overflow-hidden rounded-lg bg-zinc-100 dark:bg-zinc-700"},Lu=["src","alt"],Nu={key:1,class:"flex h-full w-full items-center justify-center text-zinc-400 dark:text-zinc-500"},Tu={class:"min-w-0 flex-1"},Ou={class:"font-semibold text-zinc-900 dark:text-white"},Bu={class:"mt-0.5 text-sm text-zinc-500 dark:text-zinc-400"},Du={key:0,class:"mt-1 line-clamp-2 text-sm text-zinc-600 dark:text-zinc-300"},qu={class:"mt-2 text-sm font-medium text-[var(--color-primary)]"},Fu={key:0,class:"mr-2 inline-flex items-center rounded-full bg-emerald-100 px-2 py-0.5 text-xs font-semibold text-emerald-700 dark:bg-emerald-900/40 dark:text-emerald-300"},Gu={class:"font-normal text-zinc-500 dark:text-zinc-400"},Xu={class:"flex shrink-0 gap-2"},Hu={class:"relative max-h-[90vh] w-full max-w-lg overflow-y-auto rounded-2xl border border-zinc-200 bg-white p-6 shadow-xl dark:border-zinc-700 dark:bg-zinc-800",role:"document"},Wu={class:"flex items-center justify-between gap-4"},Qu={class:"text-lg font-semibold text-zinc-900 dark:text-white"},Ju=["value"],Ku={key:0},Yu=["value"],Zu={key:1},ec=["value"],tc={key:0,class:"mt-1 text-sm text-red-600 dark:text-red-400"},ac={class:"rounded-xl border border-zinc-200 p-3 dark:border-zinc-700"},oc={key:2},rc={class:"flex flex-wrap gap-2 pt-2"},nc={key:5,class:"w-full space-y-6"},sc={class:"relative panel-table"},lc={class:"border-b border-zinc-200/80 bg-gradient-to-r from-[var(--color-primary)]/10 via-zinc-50/90 to-zinc-100/50 px-6 py-5 dark:from-[var(--color-primary)]/15 dark:via-zinc-800/80 dark:to-zinc-800/50"},ic={class:"flex flex-wrap items-center justify-between gap-4"},dc={class:"flex flex-wrap items-center gap-3"},uc={class:"panel-card-lg space-y-6"},cc={class:"min-w-[140px] flex-1"},pc=["onUpdate:modelValue"],mc=["value"],bc={class:"min-w-[140px] flex-1"},xc=["onUpdate:modelValue"],yc=["value"],vc=["onClick"],fc={class:"border-t border-zinc-200 pt-6 dark:border-zinc-700"},gc={key:0,class:"mt-1 text-xs text-amber-600 dark:text-amber-400"},_c={key:1,class:"mt-1 text-xs text-zinc-500 dark:text-zinc-400"},kc={class:"mt-3 flex flex-wrap items-end gap-2"},zc={class:"min-w-[140px] flex-1"},hc=["value"],wc={class:"min-w-[140px] flex-1"},Cc=["value"],$c={class:"w-full space-y-6"},Sc={class:"relative panel-table"},Pc={class:"border-b border-zinc-200/80 bg-gradient-to-r from-[var(--color-primary)]/10 via-zinc-50/90 to-zinc-100/50 px-6 py-5 dark:from-[var(--color-primary)]/15 dark:via-zinc-800/80 dark:to-zinc-800/50"},Vc={class:"relative flex flex-wrap items-center justify-between gap-4"},Uc={class:"flex flex-wrap items-center gap-3"},jc={class:"grid gap-4 sm:grid-cols-2 lg:grid-cols-3 xl:grid-cols-4"},Ac={class:"flex flex-1 flex-col gap-3 p-4"},Ec={class:"flex items-center gap-2"},Ic={class:"truncate text-sm font-medium text-zinc-900 dark:text-white"},Rc=["title"],Mc={class:"mt-auto flex flex-wrap items-center gap-2"},Lc=["onClick"],Nc=["href"],Tc=["onClick"],Oc=["title"],Bc={class:"relative w-full max-w-md rounded-2xl border border-zinc-200 bg-white p-6 shadow-xl dark:border-zinc-700 dark:bg-zinc-800",role:"document"},Dc={class:"flex items-center justify-between gap-4"},qc={class:"mt-4 space-y-2"},Fc={class:"text-sm font-medium text-zinc-900 dark:text-white"},Gc={key:0,class:"mt-4 rounded-xl bg-zinc-100 px-4 py-3 text-sm text-zinc-600 dark:bg-zinc-700/50 dark:text-zinc-400"},Xc={class:"mt-5 flex justify-end"},Hc={key:7,class:"w-full"},Wc={class:"relative overflow-hidden rounded-2xl bg-gradient-to-br from-[var(--color-primary)]/10 via-zinc-50 to-zinc-100/80 px-6 py-8 dark:from-[var(--color-primary)]/15 dark:via-zinc-800/80 dark:to-zinc-900/80"},Qc={class:"relative flex items-start gap-4"},Jc={class:"flex h-12 w-12 shrink-0 items-center justify-center rounded-xl bg-[var(--color-primary)]/20 text-[var(--color-primary)] dark:bg-[var(--color-primary)]/30"},Kc={class:"mt-6"},Yc={key:0,class:"flex flex-col items-center justify-center rounded-2xl border-2 border-dashed border-zinc-200 bg-zinc-50/50 px-6 py-16 text-center dark:border-zinc-600 dark:bg-zinc-800/30"},Zc={class:"flex h-14 w-14 items-center justify-center rounded-2xl bg-zinc-200/80 text-zinc-400 dark:bg-zinc-700/80 dark:text-zinc-500"},ep={key:1,class:"space-y-3"},tp={class:"flex flex-col gap-3 p-4 sm:flex-row sm:items-center sm:justify-between sm:gap-4"},ap={class:"min-w-0 flex-1"},op={class:"flex flex-wrap items-center gap-2"},rp={class:"text-sm font-medium text-zinc-900 dark:text-white"},np=["title"],sp={class:"flex shrink-0 items-center gap-2"},lp=["href"],ip=["onClick"],dp={key:9,class:"panel-card-lg"},up={class:"mt-6 flex items-center justify-between gap-4 border-t border-zinc-100 pt-5 dark:border-zinc-700"},cp={key:0,class:"mt-6 space-y-5 border-t border-zinc-100 pt-5 dark:border-zinc-700"},pp={class:"mt-2 space-y-2"},mp={class:"flex cursor-pointer items-start gap-2"},bp={class:"flex cursor-pointer items-start gap-2"},xp={class:"mt-8 flex items-center gap-3 border-t border-zinc-100 pt-5 dark:border-zinc-700"},yp={key:0,class:"text-sm text-red-600 dark:text-red-400"},vp={key:0,class:"panel-table"},fp={class:"border-b border-zinc-200/80 px-6 py-4 dark:border-zinc-700/80"},gp={class:"text-base font-semibold text-zinc-900 dark:text-white"},_p={class:"p-6"},kp={key:1,class:"rounded-lg border border-dashed border-zinc-300 p-3 text-sm text-zinc-600 dark:border-zinc-700 dark:text-zinc-400"},Ut=160,Yt=5,U="block w-full rounded-xl border-2 border-zinc-200 bg-white px-4 py-2.5 text-zinc-900 placeholder-zinc-400 transition focus:border-[var(--color-primary)] focus:outline-none focus:ring-2 focus:ring-[var(--color-primary)]/20 dark:border-zinc-600 dark:bg-zinc-800 dark:text-white dark:placeholder-zinc-500",Zp=Object.assign({layout:Co},{__name:"Edit",props:{produto:{type:Object,required:!0},productTypes:{type:Array,default:()=>[]},billingTypes:{type:Array,default:()=>[]},exchange_rates:{type:Object,default:()=>({brl_eur:.16,brl_usd:.18})},cademi_integrations:{type:Array,default:()=>[]},product_pixel_integrations:{type:Array,default:()=>[]},gateways_by_method:{type:Object,default:()=>({pix:[],card:[],boleto:[],pix_auto:[],apple_pay:[],google_pay:[],paypal:[],pix_parcelado:[],crypto:[]})},cajupay_parcelado_enrollment:{type:Object,default:null},plugin_product_panels:{type:Array,default:()=>[]},plugin_form_sections:{type:Array,default:()=>[]},tenant_currencies:{type:Array,default:()=>[]}},setup(k){function W(){const n=document.cookie.match(/XSRF-TOKEN=([^;]+)/);if(n)try{return decodeURIComponent(n[1])}catch{}return""}const B={logo_url:"",from_name:"",subject:"Seu acesso a {nome_produto}",body_text:`Olá, {nome_cliente}! Obrigado por adquirir {nome_produto}. @@ -25,4 +25,4 @@ Se teve algum erro no pagamento, basta tentar novamente pelo link.`},"24h":{subj Deixando aqui seu link para concluir a compra de {nome_produto} quando for melhor: {link_checkout} -Se você já concluiu, pode ignorar este e-mail.`}}},j={access_delivery:{enabled:!1,body_text:"Ola {nome_cliente}! Seu acesso a {nome_produto}: {link_acesso}"},pix_generated:{enabled:!1,body_text:"PIX de {nome_produto} ({valor}). Pague: {link_pix}"},cart_recovery:{enabled:!1,deadline_hours:48,stages:[{delay_minutes:10,body_text:"Ola {nome_cliente}! Retome {nome_produto}: {link_checkout}"},{delay_minutes:300,body_text:"{nome_cliente}, ainda da tempo: {link_checkout}"},{delay_minutes:1440,body_text:"Ultimo lembrete {nome_produto}: {link_checkout}"}]}},R=[{id:"minutes",label:"minutos",singular:"minuto"},{id:"hours",label:"horas",singular:"hora"},{id:"days",label:"dias",singular:"dia"}],M=[{label:"10 min",minutes:10},{label:"30 min",minutes:30},{label:"1 hora",minutes:60},{label:"5 horas",minutes:300},{label:"24 horas",minutes:1440},{label:"2 dias",minutes:2880}],h=[{label:"1 dia",hours:24},{label:"2 dias",hours:48},{label:"3 dias",hours:72},{label:"5 dias",hours:120},{label:"7 dias",hours:168}];function oe(n){const e=Math.max(1,Math.round(Number(n)||10));return e>=1440&&e%1440===0?{value:e/1440,unit:"days"}:e>=60&&e%60===0?{value:e/60,unit:"hours"}:{value:e,unit:"minutes"}}function ee(n,e){const a=Math.max(1,Math.round(Number(n)||1));return e==="days"?a*1440:e==="hours"?a*60:a}function F(n){const e=Math.max(1,Number(n?.delay_minutes??10)),{value:a,unit:i}=oe(e);return{delay_minutes:e,delay_value:a,delay_unit:i,body_text:String(n?.body_text??"")}}function re(n){const e=r.sms.cart_recovery.stages?.[n];if(!e||typeof e!="object")return;const a=ee(e.delay_value,e.delay_unit);r.sms.cart_recovery.stages[n]={...e,delay_minutes:a}}function ne(n,e){const a=r.sms.cart_recovery.stages?.[n];if(!a||typeof a!="object")return;const{value:i,unit:y}=oe(e);r.sms.cart_recovery.stages[n]={...a,delay_value:i,delay_unit:y,delay_minutes:e}}function se(n){const e=Math.min(168,Math.max(1,parseInt(n,10)||48));r.sms.cart_recovery={...r.sms.cart_recovery,deadline_hours:e}}function le(n,e){return Number(n?.delay_minutes)===Number(e)}function ze(n){const e=Math.max(1,Math.round(Number(n?.delay_value)||1)),a=n?.delay_unit||"minutes",i=R.find(q=>q.id===a)||R[0],y=e===1?i.singular:i.label;return`Enviar ${e} ${y} após o abandono`}const G=[{id:"geral",label:"Geral",icon:So},{id:"configuracoes",label:"Configurações",icon:Pt},{id:"email",label:"E-mail",icon:wa},{id:"sms",label:"SMS",icon:Wt},{id:"order_bump",label:"Order Bump",icon:$t},{id:"upsell_downsell",label:"Upsell / Downsell",icon:Zo},{id:"checkout",label:"Checkout",icon:Po},{id:"links",label:"Links",icon:Ge},{id:"coproducao",label:"Co-produção",icon:Yo,beta:!0},{id:"afiliados",label:"Afiliados",icon:jt,beta:!0},{id:"member_builder",label:"Member Builder",icon:er,linkOnly:!0},{id:"reembolso",label:"Reembolso",icon:Vo,showForType:"area_membros"}],u=k,f=N(()=>(Array.isArray(u.plugin_product_panels)?u.plugin_product_panels:[]).filter(e=>e&&typeof e=="object"&&e.id&&e.label&&e.component).map(e=>({id:`plugin_${String(e.id)}`,label:String(e.label),icon:Wt,pluginPanel:e}))),_=N(()=>[...G,...f.value]),w=Object.assign({"../../PluginPages/AutoZap/FlowCanvasEditor.vue":()=>De(()=>import("./FlowCanvasEditor-Ce7pIxz8.js"),__vite__mapDeps([0,1,2,3,4])),"../../PluginPages/AutoZap/Index.vue":()=>De(()=>import("./Index-BdJciqB2.js"),__vite__mapDeps([5,6,1,2])),"../../PluginPages/AutoZap/IntegrationsSidebar.vue":()=>De(()=>import("./IntegrationsSidebar-g5vQahAQ.js"),__vite__mapDeps([7,1,2])),"../../PluginPages/AutoZap/ProductPanel.vue":()=>De(()=>import("./ProductPanel-By9st8ds.js"),__vite__mapDeps([8,1,2,0,3,4])),"../../PluginPages/Example/Index.vue":()=>De(()=>import("./Index-NHtIiekS.js"),__vite__mapDeps([9,6,1,2])),"../../PluginPages/WhiteLabel/SettingsTab.vue":()=>De(()=>import("./SettingsTab-BdcPaOEh.js"),__vite__mapDeps([10,1,2,3,11,12]))}),{resolve:X}=Jo(N(()=>st.props.plugin_ui),w),st=Eo(),H=N(()=>{const n=st.url,e=n.indexOf("?"),a=e!==-1?n.slice(e):"",y=new URLSearchParams(a).get("tab");return _.value.some(q=>q.id===y)?y:"geral"});function lt(n){ie.get(`/produtos/${u.produto.id}/edit?tab=${n}`,{},{preserveState:!0})}function it(n){return!(n.linkOnly||n.showWhen&&u.produto.billing_type!==n.showWhen||n.showForType&&u.produto.type!==n.showForType)}const Qe=u.produto.member_area_refund??u.produto.member_area_config?.refund??{},ce=et({enabled:!!Qe.enabled,days:Math.min(365,Math.max(1,Number(Qe.days)||7)),mode:Qe.mode==="auto"?"auto":"manual"});function Et(){ce.put(`/produtos/${u.produto.id}/member-area-refund`,{preserveScroll:!0})}function Ce(){window.location.href=`/produtos/${u.produto.id}/member-builder`}const{setExpanded:It}=$o(),dt=C(null);at(H,()=>{setTimeout(()=>{dt.value?.scrollIntoView({behavior:"smooth",block:"nearest",inline:"center"})},50)});const O=u.produto.checkout_config?.payment_gateways??{},Ie=u.produto.checkout_config?.email_template??{},ut=u.produto.checkout_config?.card_installments??{enabled:!1,max:1},S=u.produto.checkout_config?.pix_parcelado??{},b={max_installments:S.max_installments??null,down_payment_cents:S.down_payment_cents??null,min_down_payment_bps:S.min_down_payment_bps??null,max_down_payment_bps:S.max_down_payment_bps??null,early_payment_discount_bps:S.early_payment_discount_bps??0,payoff_discount_bps:S.payoff_discount_bps??0,overdue_payoff_discount_bps:S.overdue_payoff_discount_bps??0},V=u.produto.checkout_config?.cart_recovery_email,Re={...T,...V&&typeof V=="object"?V:{},stages:{...T.stages,...V?.stages&&typeof V.stages=="object"?V.stages:{}}},ue=u.produto.checkout_config?.sms,Rt={access_delivery:{...j.access_delivery,...ue?.access_delivery&&typeof ue.access_delivery=="object"?ue.access_delivery:{}},pix_generated:{...j.pix_generated,...ue?.pix_generated&&typeof ue.pix_generated=="object"?ue.pix_generated:{}},cart_recovery:{...j.cart_recovery,...ue?.cart_recovery&&typeof ue.cart_recovery=="object"?ue.cart_recovery:{},deadline_hours:Math.min(168,Math.max(1,parseInt(ue?.cart_recovery?.deadline_hours,10)||j.cart_recovery.deadline_hours)),stages:Array.isArray(ue?.cart_recovery?.stages)&&ue.cart_recovery.stages.length>0?ue.cart_recovery.stages.map(n=>F(n)):j.cart_recovery.stages.map(n=>F(n))}},aa={mode:"customer",company_address:{zipcode:"",street:"",number:"",neighborhood:"",city:"",state:""}},Me=u.produto.checkout_config?.pagarme_billing,$a={...aa,...Me&&typeof Me=="object"?Me:{},company_address:{...aa.company_address,...Me?.company_address&&typeof Me.company_address=="object"?Me.company_address:{}}},oa=u.produto.checkout_config?.stripe_link_enabled,Le=u.produto.checkout_config?.checkout_force??{},Sa={enabled:!!Le.enabled,locale:["pt_BR","en","es"].includes(Le.locale)?Le.locale:"pt_BR"},Je=u.produto.checkout_config?.checkout_currency??{},Pa=Je.mode==="fixed"||Je.mode==="global"?{mode:Je.mode,currency:Je.currency?String(Je.currency).toUpperCase():"BRL"}:Le.enabled&&Le.currency?{mode:"fixed",currency:String(Le.currency).toUpperCase()}:{mode:"global",currency:"BRL"},Mt=u.produto.checkout_config?.subscription??{},Va={grace_period_days:Number(Mt.grace_period_days??0),notify_days_before:Number(Mt.notify_days_before??3),renewal_window_days:Number(Mt.renewal_window_days??7)};function Ua(){const n=u.produto.checkout_config?.custom_prices_by_currency?.amounts,e={},a=Array.isArray(u.tenant_currencies)?u.tenant_currencies:[];for(const i of a){const y=String(i?.code||"").toUpperCase();if(!y||y==="BRL")continue;const q=n&&Object.prototype.hasOwnProperty.call(n,y)?n[y]:n?.[y];e[y]=q!=null&&q!==""?String(q):""}return e}const Lt=N(()=>(u.tenant_currencies||[]).filter(n=>n&&String(n.code||"").toUpperCase()!=="BRL")),r=et({name:u.produto.name,slug:u.produto.slug,description:u.produto.description??"",type:u.produto.type,billing_type:u.produto.billing_type??"one_time",price:u.produto.price_brl??u.produto.price,combo_product_ids:Array.isArray(u.produto.combo_product_ids)?[...u.produto.combo_product_ids]:[],base_interval:u.produto.base_interval??u.produto.subscription_plans?.sort((n,e)=>(n.position??0)-(e.position??0))[0]?.interval??"monthly",currency:u.produto.currency??"BRL",is_active:u.produto.is_active,image:null,deliverable_link:u.produto.checkout_config?.deliverable_link??"",payment_gateways:(()=>{let n=O.card??"",e=Array.isArray(O.card_redundancy)?[...O.card_redundancy]:[],a=O.paypal??"",i=Array.isArray(O.paypal_redundancy)?[...O.paypal_redundancy]:[];return n==="paypal"&&(a||(a="paypal"),n="",e=e.filter(y=>y!=="paypal")),e=e.filter(y=>y!=="paypal"),{pix:O.pix??"",pix_redundancy:Array.isArray(O.pix_redundancy)?O.pix_redundancy:[],card:n,card_redundancy:e,boleto:O.boleto??"",boleto_redundancy:Array.isArray(O.boleto_redundancy)?O.boleto_redundancy:[],pix_auto:O.pix_auto??"",pix_auto_redundancy:Array.isArray(O.pix_auto_redundancy)?O.pix_auto_redundancy:[],apple_pay:O.apple_pay??"",apple_pay_redundancy:Array.isArray(O.apple_pay_redundancy)?O.apple_pay_redundancy:[],google_pay:O.google_pay??"",google_pay_redundancy:Array.isArray(O.google_pay_redundancy)?O.google_pay_redundancy:[],paypal:a,paypal_redundancy:i,paypal_display_as:O.paypal_display_as==="card"?"card":"paypal",paypal_show_wallet:!!O.paypal_show_wallet,crypto:O.crypto??"",crypto_redundancy:Array.isArray(O.crypto_redundancy)?O.crypto_redundancy:[],pix_parcelado:O.pix_parcelado??"",pix_parcelado_redundancy:Array.isArray(O.pix_parcelado_redundancy)?O.pix_parcelado_redundancy:[]}})(),pix_parcelado:{...b},card_installments:{enabled:!!ut.enabled,max:Math.min(12,Math.max(1,parseInt(ut.max,10)||1))},stripe_link_enabled:oa!==!1&&oa!=="0",email_template:{logo_url:Ie.logo_url??B.logo_url,from_name:Ie.from_name??B.from_name,subject:Ie.subject??B.subject,body_text:Ie.body_text??B.body_text},cart_recovery_email:Re,sms:Rt,pagarme_billing:$a,checkout_force:{...Sa},checkout_currency:{...Pa},subscription:{...Va},custom_prices_by_currency:{enabled:!!u.produto.checkout_config?.custom_prices_by_currency?.enabled,amounts:Ua()}}),Ke=N(()=>parseFloat(r.price)||0);function ct(n){return String(n??"").length}function Ne(n,e=!0){return e?ct(n)>Ut:!1}const pt=N(()=>{const n=r.sms;if(!n||typeof n!="object")return null;if(Ne(n.access_delivery?.body_text,n.access_delivery?.enabled))return"O texto de envio de acesso excede 160 caracteres.";if(Ne(n.pix_generated?.body_text,n.pix_generated?.enabled))return"O texto de PIX gerado excede 160 caracteres.";if(n.cart_recovery?.enabled&&Array.isArray(n.cart_recovery.stages)){for(let e=0;e{const n=Math.min(168,Math.max(1,parseInt(r.sms?.cart_recovery?.deadline_hours,10)||48)),e=[...h];return e.some(a=>a.hours===n)||(e.push({label:`${n} horas`,hours:n}),e.sort((a,i)=>a.hours-i.hours)),e});function Aa(){const n=Array.isArray(r.sms.cart_recovery.stages)?r.sms.cart_recovery.stages:[];r.sms.cart_recovery.stages=[...n,F({delay_minutes:60,body_text:"Retome sua compra: {link_checkout}"})]}function Ea(n){Array.isArray(r.sms.cart_recovery.stages)&&(r.sms.cart_recovery.stages.length<=1||r.sms.cart_recovery.stages.splice(n,1))}function ra(){const n=r.sms&&typeof r.sms=="object"?r.sms:{},e=Array.isArray(n.cart_recovery?.stages)?n.cart_recovery.stages:[];return{access_delivery:{enabled:!!n.access_delivery?.enabled,body_text:String(n.access_delivery?.body_text??"")},pix_generated:{enabled:!!n.pix_generated?.enabled,body_text:String(n.pix_generated?.body_text??"")},cart_recovery:{enabled:!!n.cart_recovery?.enabled,deadline_hours:Math.min(168,Math.max(1,parseInt(n.cart_recovery?.deadline_hours,10)||48)),stages:e.map(a=>({delay_minutes:ee(a.delay_value,a.delay_unit),body_text:String(a?.body_text??"")}))}}}const Ia=N(()=>(Ke.value*(u.exchange_rates.brl_eur??.16)).toFixed(2)),Ra=N(()=>(Ke.value*(u.exchange_rates.brl_usd??.18)).toFixed(2)),Nt=N(()=>{const n=Ke.value;return!n||n{r.card_installments.max>n&&(r.card_installments.max=n)},{immediate:!0});const na=N(()=>r.image&&typeof r.image=="object"&&r.image instanceof File?URL.createObjectURL(r.image):u.produto.image_url??null),Tt=C(!1),mt=C(""),bt=C(null),$e=C(!1),he=C(!1),xt=C(!1),Te=C(""),yt=C(!1),Ye=C(""),Se=C(!1),vt=C(""),Oe=C([]),ft=C(""),Q=C({integration_id:u.produto?.external_member_area?.integration_id??"",cademi_tag_id:u.produto?.external_member_area?.cademi_tag_id??"",cademi_produto_ids:Array.isArray(u.produto?.external_member_area?.cademi_produto_ids)?u.produto.external_member_area.cademi_produto_ids.map(n=>String(n)):u.produto?.external_member_area?.cademi_produto_id?[String(u.produto.external_member_area.cademi_produto_id)]:[""]}),Ma=N(()=>{const n=(ft.value||"").trim().toLowerCase();return n?(Oe.value||[]).filter(e=>String(e.nome||"").toLowerCase().includes(n)):Oe.value});async function sa(){vt.value="",Oe.value=[];const n=Q.value.integration_id;if(n){Se.value=!0;try{const{data:e}=await de.get(`/integracoes/cademi/${n}/tags`);Oe.value=Array.isArray(e?.tags)?e.tags:[]}catch(e){vt.value=e.response?.data?.message||"Não foi possível listar as TAGs da Cademí."}finally{Se.value=!1}}}at(()=>Q.value.integration_id,()=>{ft.value="",sa()});async function La(){Ye.value="";const e=(Q.value.cademi_produto_ids||[]).map(a=>String(a||"").trim()).filter(a=>a!=="").map(a=>parseInt(a,10)).filter(a=>Number.isFinite(a)&&a>0);if(Q.value.integration_id&&e.length===0){Ye.value="Informe ao menos 1 Produto ID da Cademí.";return}yt.value=!0;try{await de.put(`/produtos/${u.produto.id}/external-member-area`,{cademi_integration_id:Q.value.integration_id||null,cademi_tag_id:Q.value.cademi_tag_id?parseInt(Q.value.cademi_tag_id,10):null,cademi_produto_ids:e}),ie.reload({only:["produto","cademi_integrations"]})}catch(a){Ye.value=a.response?.data?.message||"Erro ao salvar configuração da Cademí."}finally{yt.value=!1}}async function Na(n){if(!(!n||!n.type.startsWith("image/"))){mt.value="",Tt.value=!0;try{const e=new FormData;e.append("logo",n);const{data:a}=await de.post(`/produtos/${u.produto.id}/email-template-logo`,e,{headers:{"X-XSRF-TOKEN":W(),Accept:"application/json","X-Requested-With":"XMLHttpRequest"},withCredentials:!0});r.email_template.logo_url=a.logo_url??""}catch(e){const a=e.response?.data?.message||e.response?.data?.errors?.logo?.[0]||"Falha no envio. Use uma imagem (PNG, JPG) até 2 MB.";mt.value=a}finally{Tt.value=!1,bt.value&&(bt.value.value="")}}}function Ta(n){const e=n.target?.files?.[0];e&&Na(e)}function xe(n){return typeof window>"u"||!n?"":`${window.location.origin}/c/${n}`}function Oa(n){return n?.public_id?`offer=${n.public_id}`:n?.id!=null?`offer_id=${n.id}`:""}function Ba(n){return n?.public_id?`plan=${n.public_id}`:n?.id!=null?`plan_id=${n.id}`:""}const Da={weekly:"Semanal",monthly:"Mensal",quarterly:"Trimestral",semi_annual:"Semestral",annual:"Anual",lifetime:"Vitalício"};function qa(n){return Da[n]||n}const Pe=N(()=>u.produto.available_products_for_combo||[]);function Ot(n,e,a){const i=n==="main"?r:n==="offer"?J:D,y="combo_product_ids",q=[...i[y]||[]];if(a)q.includes(e)||q.push(e);else{const Ct=q.indexOf(e);Ct!==-1&&q.splice(Ct,1)}i[y]=q}const te=C(null),la=C(null),ia=C(null),da=C(null);function Bt(n){te.value=te.value===n?null:n}function Dt(n){const e=n.combo_product_ids||[],a=e.length,i=Pe.value;if(a===0)return"Nenhum — abrir para escolher";if(a===1){const y=i.find(q=>q.id===e[0]);return y?y.name:"1 produto"}return`${a} produtos`}function ua(n){if(!te.value)return;const e=te.value==="main"?la.value:te.value==="offer"?ia.value:da.value;e&&!e.contains(n.target)&&(te.value=null)}ea(()=>{It(!1),document.addEventListener("pointerdown",ua,!0)}),Uo(()=>{document.removeEventListener("pointerdown",ua,!0)});const gt=C(!1),Ve=C(null),J=et({name:"",price:"",currency:"BRL",combo_product_ids:[]});function Fa(){Ve.value=null,J.reset(),J.name="",J.price="",J.currency=u.produto.currency||"BRL",J.combo_product_ids=[],gt.value=!0}function Ga(n){Ve.value=n,J.name=n.name,J.price=n.price,J.currency=n.currency||"BRL",J.combo_product_ids=Array.isArray(n.combo_product_ids)?[...n.combo_product_ids]:[],gt.value=!0}function qt(){te.value==="offer"&&(te.value=null),gt.value=!1,Ve.value=null,J.reset()}function Xa(){Ve.value?J.put(`/produtos/${u.produto.id}/offers/${Ve.value.id}`,{preserveScroll:!0,onSuccess:()=>{qt(),ie.reload()}}):J.post(`/produtos/${u.produto.id}/offers`,{preserveScroll:!0,onSuccess:()=>{qt(),ie.reload()}})}function Ha(n){window.confirm(`Remover a oferta "${n.name}"?`)&&ie.delete(`/produtos/${u.produto.id}/offers/${n.id}`,{preserveScroll:!0,onSuccess:()=>ie.reload()})}const _t=C(!1),Ue=C(null),D=et({name:"",price:"",currency:"BRL",interval:"monthly",combo_product_ids:[]});function Wa(){Ue.value=null,D.reset(),D.name="",D.price="",D.currency=u.produto.currency||"BRL",D.interval="monthly",D.combo_product_ids=[],_t.value=!0}function Qa(n){Ue.value=n,D.name=n.name,D.price=n.price,D.currency=n.currency||"BRL",D.interval=n.interval,D.combo_product_ids=Array.isArray(n.combo_product_ids)?[...n.combo_product_ids]:[],_t.value=!0}function Ft(){te.value==="plan"&&(te.value=null),_t.value=!1,Ue.value=null,D.reset()}function Ja(){Ue.value?D.put(`/produtos/${u.produto.id}/subscription-plans/${Ue.value.id}`,{preserveScroll:!0,onSuccess:()=>{Ft(),ie.reload()}}):D.post(`/produtos/${u.produto.id}/subscription-plans`,{preserveScroll:!0,onSuccess:()=>{Ft(),ie.reload()}})}function Ka(n){window.confirm(`Remover o plano "${n.name}"?`)&&ie.delete(`/produtos/${u.produto.id}/subscription-plans/${n.id}`,{preserveScroll:!0,onSuccess:()=>ie.reload()})}const kt=C(!1),je=C(null),P=et({target_product_id:"",target_product_offer_id:"",target_subscription_plan_id:"",title:"",description:"",price_override:"",is_free:!1,cta_title:"Sim, quero esta oferta!"}),ye=N(()=>{const n=P.target_product_id;return n?(u.produto.available_products_for_bump||[]).find(e=>e.id===n):null});function Ya(n){const e=n.currency||"BRL",a=Number(n.price??0).toFixed(2);return n.billing_type==="subscription"?`${n.name} (Assinatura) — ${e} ${a}`:`${n.name} — ${e} ${a}`}function Za(){P.target_product_offer_id="",P.target_subscription_plan_id=""}function ca(){je.value=null,P.reset(),P.target_product_id="",P.target_product_offer_id="",P.target_subscription_plan_id="",P.title="",P.description="",P.price_override="",P.is_free=!1,P.cta_title="Sim, quero esta oferta!",kt.value=!0}function eo(n){je.value=n,P.target_product_id=n.target_product_id,P.target_product_offer_id=n.target_product_offer_id!=null?String(n.target_product_offer_id):"",P.target_subscription_plan_id=n.target_subscription_plan_id!=null?String(n.target_subscription_plan_id):"",P.title=n.title,P.description=n.description??"",P.is_free=!!n.is_free,P.price_override=n.is_free?"0":n.price_override!=null?String(n.price_override):"",P.cta_title=n.cta_title,kt.value=!0}function Be(){kt.value=!1,je.value=null,P.reset()}function to(){const n=!!P.is_free,e={target_product_id:P.target_product_id,target_product_offer_id:P.target_product_offer_id||null,target_subscription_plan_id:P.target_subscription_plan_id||null,title:P.title,description:P.description||null,is_free:n,price_override:n?0:P.price_override?parseFloat(P.price_override):null,cta_title:P.cta_title};je.value?P.transform(()=>e).put(`/produtos/${u.produto.id}/order-bumps/${je.value.id}`,{preserveScroll:!0,onSuccess:()=>{Be(),ie.reload()}}):P.transform(()=>e).post(`/produtos/${u.produto.id}/order-bumps`,{preserveScroll:!0,onSuccess:()=>{Be(),ie.reload()}})}function ao(n){window.confirm(`Remover o order bump "${n.title}"?`)&&ie.delete(`/produtos/${u.produto.id}/order-bumps/${n.id}`,{preserveScroll:!0,onSuccess:()=>ie.reload()})}const oo={headline:"Quer levar isso também?",subheadline:"Oferta especial só para você",body_text:"",hero_image:null,hero_video_url:null,background_color:"#f3f4f6",background_image:null,show_product_just_bought:!0},ro={headline:"Última chance com desconto",subheadline:"Uma oferta que não pode ficar de fora",body_text:"",hero_image:null,hero_video_url:null,background_color:"#f3f4f6",background_image:null,show_product_just_bought:!0};function no(){const n=u.produto.checkout_config||{},e=n.upsell||{},a=n.downsell||{};return{upsell:{enabled:!!e.enabled,products:Array.isArray(e.products)?e.products.map(i=>({product_id:i.product_id!=null?String(i.product_id):null,product_offer_id:i.product_offer_id??null,title_override:i.title_override??"",description:i.description??"",image_url:i.image_url??"",video_url:i.video_url??""})):[],page:{...oo,...e.page||{}},appearance:{title:e.appearance?.title??"Quer levar isso também?",subtitle:e.appearance?.subtitle??"Oferta especial só para você",primary_color:e.appearance?.primary_color??"#0ea5e9",button_accept:e.appearance?.button_accept??"Sim, quero aproveitar",button_decline:e.appearance?.button_decline??"Não, obrigado"}},downsell:{enabled:!!e.enabled&&!!a.enabled,product_id:a.product_id!=null?String(a.product_id):null,product_offer_id:a.product_offer_id??null,title_override:a.title_override??"",description:a.description??"",image_url:a.image_url??"",video_url:a.video_url??"",page:{...ro,...a.page||{}},appearance:{title:a.appearance?.title??"Última chance com desconto",subtitle:a.appearance?.subtitle??"Uma oferta que não pode ficar de fora",primary_color:a.appearance?.primary_color??"#0ea5e9",button_accept:a.appearance?.button_accept??"Aceitar oferta",button_decline:a.appearance?.button_decline??"Não, obrigado"}}}}const K=jo(no()),zt=C(!1);at(()=>K.upsell.enabled,n=>{n||(K.downsell.enabled=!1)});async function so(){zt.value=!0;const n=u.produto.checkout_config||{},e={...n,upsell:{...n.upsell||{},enabled:K.upsell.enabled,products:K.upsell.products},downsell:{...n.downsell||{},enabled:K.downsell.enabled,product_id:K.downsell.product_id??null,product_offer_id:K.downsell.product_offer_id??null}};try{await de.put(`/produtos/${u.produto.id}/checkout-config`,{config:e,offer_id:null,plan_id:null},{headers:{"Content-Type":"application/json",Accept:"application/json","X-Requested-With":"XMLHttpRequest"}}),ie.reload({preserveScroll:!0})}finally{zt.value=!1}}const ve=C(null);function pa(n){return!n||typeof n!="string"?Promise.resolve(!1):navigator.clipboard&&typeof navigator.clipboard.writeText=="function"?navigator.clipboard.writeText(n).then(()=>!0).catch(()=>ma(n)):Promise.resolve(ma(n))}function ma(n){try{const e=document.createElement("textarea");e.value=n,e.setAttribute("readonly",""),e.style.position="fixed",e.style.top="0",e.style.left="0",e.style.width="2em",e.style.height="2em",e.style.padding="0",e.style.border="none",e.style.outline="none",e.style.boxShadow="none",e.style.background="transparent",e.style.opacity="0",document.body.appendChild(e),e.focus(),e.select();const a=document.execCommand("copy");return document.body.removeChild(e),a}catch{return!1}}function lo(n){const e=xe(n);e&&pa(e).then(a=>{a&&(ve.value=n,setTimeout(()=>{ve.value=null},2e3))})}function io(n){const e=Ze(n);e&&pa(e).then(a=>{a&&(ve.value=n.id,setTimeout(()=>{ve.value=null},2e3))})}const uo=N(()=>{const n=u.produto.billing_type??r.billing_type,e=[];return e.push({id:"main",label:"Produto (preço base)",type:"main",slug:u.produto.checkout_slug||null,offerId:null,planId:null}),n==="one_time"&&(u.produto.offers||[]).forEach(a=>{a.checkout_slug&&e.push({id:`offer-${a.id}`,label:a.name,type:"offer",slug:a.checkout_slug,offerId:a.id,planId:null})}),n==="subscription"&&(u.produto.subscription_plans||[]).forEach(a=>{a.checkout_slug&&e.push({id:`plan-${a.id}`,label:a.name,type:"plan",slug:a.checkout_slug,offerId:null,planId:a.id})}),e}),Gt=N(()=>{const n=u.produto.billing_type??r.billing_type,e=[];return n==="one_time"&&(u.produto.offers||[]).forEach(a=>{a.checkout_slug||e.push({id:`offer-${a.id}`,label:a.name,type:"offer",offerId:a.id,planId:null})}),n==="subscription"&&(u.produto.subscription_plans||[]).forEach(a=>{a.checkout_slug||e.push({id:`plan-${a.id}`,label:a.name,type:"plan",offerId:null,planId:a.id})}),e}),ba=N(()=>{const n=u.produto.billing_type??r.billing_type,e=u.produto.checkout_slug||null,a=[];return e&&a.push({id:"main",label:"Preço base",slug:e,type:"main",offer_public_id:null,plan_public_id:null,offer_id:null,plan_id:null}),n==="one_time"&&(u.produto.offers||[]).forEach(i=>{const y=i.checkout_slug||e;y&&a.push({id:`offer-${i.id}`,label:i.name,slug:y,type:"offer",offer_public_id:i.checkout_slug?null:i.public_id,plan_public_id:null,offer_id:i.checkout_slug?null:i.id,plan_id:null})}),n==="subscription"&&(u.produto.subscription_plans||[]).forEach(i=>{const y=i.checkout_slug||e;y&&a.push({id:`plan-${i.id}`,label:i.name,slug:y,type:"plan",offer_public_id:null,plan_public_id:i.checkout_slug?null:i.public_id,offer_id:null,plan_id:i.checkout_slug?null:i.id})}),a});function Ze(n){const e=xe(n.slug);return e?n.offer_public_id?`${e}?offer=${n.offer_public_id}`:n.plan_public_id?`${e}?plan=${n.plan_public_id}`:n.offer_id!=null?`${e}?offer_id=${n.offer_id}`:n.plan_id!=null?`${e}?plan_id=${n.plan_id}`:e:""}function xa(n){if(n.checkout_slug)return xe(n.checkout_slug);const e=u.produto.checkout_slug,a=Oa(n);return e&&a?`${xe(e)}?${a}`:""}function ya(n){if(n.checkout_slug)return xe(n.checkout_slug);const e=u.produto.checkout_slug,a=Ba(n);return e&&a?`${xe(e)}?${a}`:""}function Xt(n){const e={type:n.type};n.type==="offer"&&n.offerId!=null&&(e.offer_id=n.offerId),n.type==="plan"&&n.planId!=null&&(e.plan_id=n.planId),ie.post(`/produtos/${u.produto.id}/checkout/ensure-slug`,e)}function co(n){if(n.type==="main")return;const e=n.type==="offer"?`Oferta: ${n.label}`:`Plano: ${n.label}`;if(!confirm(`Remover o checkout exclusivo de "${e}"? Ela passará a usar o checkout principal.`))return;const a={type:n.type};n.type==="offer"&&(a.offer_id=n.offerId),n.type==="plan"&&(a.plan_id=n.planId),ie.delete(`/produtos/${u.produto.id}/checkout/remove-slug`,{data:a})}function po(n){const e=`/produtos/${u.produto.id}/checkout/edit`;return n.type==="offer"&&n.offerId!=null?`${e}?offer_id=${n.offerId}`:n.type==="plan"&&n.planId!=null?`${e}?plan_id=${n.planId}`:e}const Ae=C(!1);function mo(n){const e=n.target.files?.[0];r.image=e||null}function fe(n){const e=u.gateways_by_method?.[n]??[];return[{value:"",label:"Nenhum"},...e.map(a=>({value:a.slug,label:a.name}))]}const ht=C(!1),pe=C(null),bo={pix:"PIX",card:"Cartão",boleto:"Boleto",pix_auto:"PIX automático",apple_pay:"Apple Pay",google_pay:"Google Pay",paypal:"PayPal",pix_parcelado:"PIX Parcelado",crypto:"Criptomoeda"},wt=C(!1),xo=N(()=>String(u.cajupay_parcelado_enrollment?.status||"").toLowerCase()||"unknown"),yo=N(()=>r.payment_gateways.pix_parcelado==="cajupay"&&xo.value!=="active");function ge(n){pe.value=n,ht.value=!0}function _e(n){return n!==""&&n!==null&&n!==void 0}const vo=["pagarme","efi"];function va(n){return vo.includes(String(n||"").toLowerCase())}const fo=["efi","asaas","pagarme"];function go(n){return fo.includes(String(n||"").toLowerCase())}function _o(n){const e=String(n||"").toLowerCase();return e==="efi"?"Efí":e==="asaas"?"Asaas":e==="pagarme"?"Pagar.me":"cartão"}function ko(n){const e=(n.target.value||"").replace(/\D/g,"").slice(0,8);r.pagarme_billing.company_address.zipcode=e.length>5?`${e.slice(0,5)}-${e.slice(5)}`:e}async function zo(){const n=(r.pagarme_billing.company_address.zipcode||"").replace(/\D/g,"").slice(0,8);if(!(n.length<8)){xt.value=!0,Te.value="";try{const e=new AbortController,a=setTimeout(()=>e.abort(),8e3),i=await fetch(`https://viacep.com.br/ws/${n}/json/`,{signal:e.signal});if(clearTimeout(a),!i.ok){Te.value="Não foi possível buscar o CEP.";return}const y=await i.json().catch(()=>null);if(!y||y.erro){Te.value="CEP não encontrado.";return}y.logradouro&&(r.pagarme_billing.company_address.street=y.logradouro),y.bairro&&(r.pagarme_billing.company_address.neighborhood=y.bairro),y.localidade&&(r.pagarme_billing.company_address.city=y.localidade),y.uf&&(r.pagarme_billing.company_address.state=y.uf)}catch{Te.value="Não foi possível buscar o CEP agora."}finally{xt.value=!1}}}const ho={aplicativo:Wt,area_membros:jt,area_membros_externa:jt,link:Ge,link_pagamento:Ko};function Ee(){if(pt.value)return;const n=`/produtos/${u.produto.id}`,e=H.value&&H.value!=="geral"?`?tab=${H.value}`:"",a=n+e;if(r.image){const i=new FormData;i.append("name",r.name),i.append("slug",r.slug),i.append("description",r.description),i.append("type",r.type),i.append("billing_type",r.billing_type),i.append("price",r.price),(r.combo_product_ids||[]).forEach(A=>i.append("combo_product_ids[]",A)),r.billing_type==="subscription"&&i.append("base_interval",r.base_interval||"monthly"),i.append("currency",r.currency),i.append("is_active",r.is_active?"1":"0");const y=r.cart_recovery_email&&typeof r.cart_recovery_email=="object"?r.cart_recovery_email:{},q=y?.stages&&typeof y.stages=="object"?y.stages:{},Ct={enabled:!!y.enabled,stages:{"10m":{subject:String(q?.["10m"]?.subject??""),body_text:String(q?.["10m"]?.body_text??""),body_html:""},"5h":{subject:String(q?.["5h"]?.subject??""),body_text:String(q?.["5h"]?.body_text??""),body_html:""},"24h":{subject:String(q?.["24h"]?.subject??""),body_text:String(q?.["24h"]?.body_text??""),body_html:""}}};if(i.append("cart_recovery_email",JSON.stringify(Ct)),i.append("sms",JSON.stringify(ra())),r.payment_gateways&&(i.append("payment_gateways[pix]",r.payment_gateways.pix||""),(r.payment_gateways.pix_redundancy||[]).forEach(A=>i.append("payment_gateways[pix_redundancy][]",A)),i.append("payment_gateways[card]",r.payment_gateways.card||""),(r.payment_gateways.card_redundancy||[]).forEach(A=>i.append("payment_gateways[card_redundancy][]",A)),i.append("payment_gateways[boleto]",r.payment_gateways.boleto||""),(r.payment_gateways.boleto_redundancy||[]).forEach(A=>i.append("payment_gateways[boleto_redundancy][]",A)),i.append("payment_gateways[apple_pay]",r.payment_gateways.apple_pay||""),(r.payment_gateways.apple_pay_redundancy||[]).forEach(A=>i.append("payment_gateways[apple_pay_redundancy][]",A)),i.append("payment_gateways[google_pay]",r.payment_gateways.google_pay||""),(r.payment_gateways.google_pay_redundancy||[]).forEach(A=>i.append("payment_gateways[google_pay_redundancy][]",A)),i.append("payment_gateways[paypal]",r.payment_gateways.paypal||""),(r.payment_gateways.paypal_redundancy||[]).forEach(A=>i.append("payment_gateways[paypal_redundancy][]",A)),i.append("payment_gateways[paypal_display_as]",r.payment_gateways.paypal_display_as||"paypal"),i.append("payment_gateways[paypal_show_wallet]",r.payment_gateways.paypal_show_wallet?"1":"0"),i.append("payment_gateways[crypto]",r.payment_gateways.crypto||""),(r.payment_gateways.crypto_redundancy||[]).forEach(A=>i.append("payment_gateways[crypto_redundancy][]",A)),r.billing_type==="one_time"&&(i.append("payment_gateways[pix_parcelado]",r.payment_gateways.pix_parcelado||""),(r.payment_gateways.pix_parcelado_redundancy||[]).forEach(A=>i.append("payment_gateways[pix_parcelado_redundancy][]",A))),r.billing_type==="subscription"&&(i.append("payment_gateways[pix_auto]",r.payment_gateways.pix_auto||""),(r.payment_gateways.pix_auto_redundancy||[]).forEach(A=>i.append("payment_gateways[pix_auto_redundancy][]",A)))),r.card_installments&&(i.append("card_installments[enabled]",r.card_installments.enabled?"1":"0"),i.append("card_installments[max]",String(Math.min(12,Math.max(1,r.card_installments.max||1))))),r.payment_gateways.pix_parcelado==="cajupay"&&r.pix_parcelado){const A=r.pix_parcelado;A.max_installments!=null&&A.max_installments!==""&&i.append("pix_parcelado[max_installments]",String(A.max_installments)),A.down_payment_cents!=null&&A.down_payment_cents!==""&&i.append("pix_parcelado[down_payment_cents]",String(A.down_payment_cents)),A.min_down_payment_bps!=null&&A.min_down_payment_bps!==""&&i.append("pix_parcelado[min_down_payment_bps]",String(A.min_down_payment_bps)),A.max_down_payment_bps!=null&&A.max_down_payment_bps!==""&&i.append("pix_parcelado[max_down_payment_bps]",String(A.max_down_payment_bps)),i.append("pix_parcelado[early_payment_discount_bps]",String(A.early_payment_discount_bps??0)),i.append("pix_parcelado[payoff_discount_bps]",String(A.payoff_discount_bps??0)),i.append("pix_parcelado[overdue_payoff_discount_bps]",String(A.overdue_payoff_discount_bps??0))}if(typeof r.stripe_link_enabled=="boolean"&&i.append("stripe_link_enabled",r.stripe_link_enabled?"1":"0"),r.email_template&&(i.append("email_template[logo_url]",r.email_template.logo_url||""),i.append("email_template[from_name]",r.email_template.from_name||""),i.append("email_template[subject]",r.email_template.subject||""),i.append("email_template[body_text]",r.email_template.body_text||""),i.append("email_template[body_html]","")),i.append("deliverable_link",r.deliverable_link||""),r.billing_type==="subscription"&&r.subscription&&(i.append("subscription[grace_period_days]",String(Math.max(0,r.subscription.grace_period_days??0))),i.append("subscription[notify_days_before]",String(Math.max(0,r.subscription.notify_days_before??3))),i.append("subscription[renewal_window_days]",String(Math.max(0,r.subscription.renewal_window_days??7)))),i.append("checkout_force[enabled]",r.checkout_force?.enabled?"1":"0"),r.checkout_force?.enabled&&i.append("checkout_force[locale]",r.checkout_force.locale||""),i.append("checkout_currency[mode]",r.checkout_currency?.mode==="fixed"?"fixed":"global"),r.checkout_currency?.mode==="fixed"&&i.append("checkout_currency[currency]",r.checkout_currency.currency||"BRL"),i.append("custom_prices_by_currency[enabled]",r.custom_prices_by_currency?.enabled?"1":"0"),r.custom_prices_by_currency?.enabled&&r.custom_prices_by_currency.amounts)for(const[A,Ht]of Object.entries(r.custom_prices_by_currency.amounts))Ht===""||Ht==null||i.append(`custom_prices_by_currency[amounts][${A}]`,String(Ht));if(r.pagarme_billing){i.append("pagarme_billing[mode]",r.pagarme_billing.mode||"customer");const A=r.pagarme_billing.company_address||{};i.append("pagarme_billing[company_address][zipcode]",A.zipcode||""),i.append("pagarme_billing[company_address][street]",A.street||""),i.append("pagarme_billing[company_address][number]",A.number||""),i.append("pagarme_billing[company_address][neighborhood]",A.neighborhood||""),i.append("pagarme_billing[company_address][city]",A.city||""),i.append("pagarme_billing[company_address][state]",String(A.state||"").slice(0,2))}i.append("_method","PUT"),i.append("image",r.image),r.transform(()=>i).post(a,{forceFormData:!0})}else r.transform(i=>(i.billing_type==="subscription"?(i.base_interval=i.base_interval||"monthly",i.subscription={grace_period_days:Math.max(0,Number(i.subscription?.grace_period_days??0)),notify_days_before:Math.max(0,Number(i.subscription?.notify_days_before??3)),renewal_window_days:Math.max(0,Number(i.subscription?.renewal_window_days??7))}):delete i.subscription,i.sms=ra(),i)).put(a)}return(n,e)=>(s(),l("div",Hn,[t("aside",Wn,[t("nav",Qn,[(s(!0),l(z,null,I(_.value,a=>(s(),l(z,{key:a.id},[a.linkOnly&&a.id==="member_builder"&&k.produto.type==="area_membros"?(s(),l("a",{key:0,href:`/produtos/${k.produto.id}/member-builder`,class:g(["flex items-center gap-2.5 rounded-lg px-3 py-2.5 text-sm font-medium transition-all duration-200","text-zinc-600 hover:bg-zinc-200/80 hover:text-zinc-900 dark:text-zinc-400 dark:hover:bg-zinc-700/80 dark:hover:text-white"]),onClick:ae(Ce,["prevent"])},[(s(),L(qe(a.icon),{class:"h-4 w-4 shrink-0","aria-hidden":"true"})),c(" "+p(a.label),1)],8,Jn)):it(a)?(s(),l("button",{key:1,type:"button",class:g(["flex w-full items-center gap-2.5 rounded-lg px-3 py-2.5 text-left text-sm font-medium transition-all duration-200",H.value===a.id?"bg-white text-[var(--color-primary)] shadow-sm dark:bg-zinc-700 dark:text-[var(--color-primary)]":"text-zinc-600 hover:bg-zinc-200/80 hover:text-zinc-900 dark:text-zinc-400 dark:hover:bg-zinc-700/80 dark:hover:text-white"]),"aria-current":H.value===a.id?"page":void 0,onClick:i=>lt(a.id)},[(s(),L(qe(a.icon),{class:"h-4 w-4 shrink-0","aria-hidden":"true"})),t("span",Yn,[t("span",Zn,p(a.label),1),a.beta?(s(),L(fa,{key:0,size:"xs"})):m("",!0)])],10,Kn)):m("",!0)],64))),128))])]),d(Io,{"aria-label":"Abas de edição do produto","wrapper-class":"pb-2 lg:hidden","nav-class":"gap-2 snap-x snap-mandatory rounded-xl bg-zinc-100/80 p-1 dark:bg-zinc-800/80"},{default:v(()=>[(s(!0),l(z,null,I(_.value,a=>(s(),l(z,{key:a.id},[a.linkOnly&&a.id==="member_builder"&&k.produto.type==="area_membros"?(s(),l("a",{key:0,href:`/produtos/${k.produto.id}/member-builder`,class:g(["flex snap-center items-center gap-2 rounded-lg px-3 py-2 text-sm font-medium transition-all duration-200","text-zinc-600 hover:text-zinc-900 dark:text-zinc-400 dark:hover:text-white"]),onClick:ae(Ce,["prevent"])},[(s(),L(qe(a.icon),{class:"h-4 w-4 shrink-0","aria-hidden":"true"})),c(" "+p(a.label),1)],8,es)):it(a)?(s(),l("button",{key:1,type:"button",ref_for:!0,ref:H.value===a.id?dt.value:void 0,class:g(["flex snap-center items-center gap-2 rounded-lg px-3 py-2 text-sm font-medium transition-all duration-200",H.value===a.id?"bg-white text-[var(--color-primary)] shadow-sm dark:bg-zinc-700 dark:text-[var(--color-primary)]":"text-zinc-600 hover:text-zinc-900 dark:text-zinc-400 dark:hover:text-white"]),"aria-current":H.value===a.id?"page":void 0,onClick:i=>lt(a.id)},[(s(),L(qe(a.icon),{class:"h-4 w-4 shrink-0","aria-hidden":"true"})),t("span",as,[c(p(a.label)+" ",1),a.beta?(s(),L(fa,{key:0,size:"xs"})):m("",!0)])],10,ts)):m("",!0)],64))),128))]),_:1}),t("div",os,[H.value==="geral"?(s(),l(z,{key:0},[t("form",{class:"mx-auto w-full max-w-3xl space-y-8 xl:max-w-6xl",onSubmit:ae(Ee,["prevent"])},[t("div",rs,[t("section",ns,[e[138]||(e[138]=t("div",{class:"border-b border-zinc-200/80 bg-zinc-50/80 px-6 py-4 dark:border-zinc-700/80 dark:bg-zinc-800/50"},[t("h2",{class:"text-base font-semibold text-zinc-900 dark:text-white"},"Informações básicas"),t("p",{class:"mt-0.5 text-sm text-zinc-500 dark:text-zinc-400"},"Nome, identificador e imagem do produto.")],-1)),t("div",ss,[t("div",ls,[t("div",is,[t("div",null,[e[131]||(e[131]=t("label",{class:"mb-1.5 block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Nome do produto *",-1)),x(t("input",{"onUpdate:modelValue":e[0]||(e[0]=a=>o(r).name=a),type:"text",required:"",placeholder:"Ex: Curso Completo de X",class:g(U)},null,512),[[$,o(r).name]]),o(r).errors.name?(s(),l("p",ds,p(o(r).errors.name),1)):m("",!0)]),t("div",null,[e[132]||(e[132]=t("label",{class:"mb-1.5 block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Slug (URL) *",-1)),x(t("input",{"onUpdate:modelValue":e[1]||(e[1]=a=>o(r).slug=a),type:"text",required:"",placeholder:"curso-completo-x",class:g(U)},null,512),[[$,o(r).slug]]),o(r).errors.slug?(s(),l("p",us,p(o(r).errors.slug),1)):m("",!0),e[133]||(e[133]=t("p",{class:"mt-1 text-xs text-zinc-500 dark:text-zinc-400"},"Usado em URLs e área de membros. Apenas letras minúsculas, números e hífens.",-1))]),t("div",null,[e[134]||(e[134]=t("label",{class:"mb-1.5 block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Descrição",-1)),x(t("textarea",{"onUpdate:modelValue":e[2]||(e[2]=a=>o(r).description=a),rows:"3",placeholder:"Breve descrição do produto...",class:g(U)},null,512),[[$,o(r).description]])]),t("div",cs,[d(me,{modelValue:o(r).is_active,"onUpdate:modelValue":e[3]||(e[3]=a=>o(r).is_active=a),label:"Produto ativo"},null,8,["modelValue"])])]),t("div",ps,[e[136]||(e[136]=t("label",{class:"mb-2 block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Imagem do produto",-1)),e[137]||(e[137]=t("p",{class:"mb-2 text-xs text-zinc-500 dark:text-zinc-400"},"1:1, ex.: 400×400 px.",-1)),t("label",ms,[na.value?(s(),l(z,{key:0},[t("img",{src:na.value,alt:"Preview",class:"h-full w-full object-cover"},null,8,bs),e[135]||(e[135]=t("span",{class:"absolute inset-0 flex items-center justify-center bg-black/40 opacity-0 transition opacity hover:opacity-100"},[t("span",{class:"rounded-lg bg-white/90 px-2 py-1 text-xs font-medium text-zinc-800 dark:bg-zinc-900 dark:text-white"},"Trocar")],-1))],64)):(s(),l(z,{key:1},[d(o(za),{class:"h-8 w-8 text-zinc-400 dark:text-zinc-500"}),t("span",xs,p(o(r).image?.name||"Enviar"),1)],64)),t("input",{type:"file",accept:"image/*",class:"hidden",onChange:mo},null,32)])])])])]),t("section",ys,[e[168]||(e[168]=t("div",{class:"border-b border-zinc-200/80 bg-zinc-50/80 px-6 py-4 dark:border-zinc-700/80 dark:bg-zinc-800/50"},[t("h2",{class:"text-base font-semibold text-zinc-900 dark:text-white"},"Preço e cobrança"),t("p",{class:"mt-0.5 text-sm text-zinc-500 dark:text-zinc-400"},"Defina como o produto será cobrado e o valor base.")],-1)),t("div",vs,[t("div",null,[e[139]||(e[139]=t("label",{class:"mb-2 block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Tipo de cobrança *",-1)),t("div",fs,[(s(!0),l(z,null,I(k.billingTypes,a=>(s(),l("button",{key:a.value,type:"button",class:g(["flex items-center justify-center rounded-xl border-2 px-4 py-3.5 text-sm font-medium transition-all duration-200",o(r).billing_type===a.value?"border-[var(--color-primary)] bg-[var(--color-primary)]/10 text-[var(--color-primary)] shadow-sm dark:bg-[var(--color-primary)]/20 dark:text-[var(--color-primary)]":"border-zinc-200 bg-zinc-50/50 text-zinc-600 hover:border-zinc-300 hover:bg-zinc-100 dark:border-zinc-600 dark:bg-zinc-800/50 dark:text-zinc-400 dark:hover:border-zinc-500 dark:hover:bg-zinc-700/50"]),onClick:i=>o(r).billing_type=a.value},p(a.label),11,gs))),128))])]),t("div",_s,[t("div",ks,[t("div",zs,[e[140]||(e[140]=t("label",{class:"mb-2 block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Preço base (BRL) *",-1)),x(t("input",{"onUpdate:modelValue":e[4]||(e[4]=a=>o(r).price=a),type:"number",step:"0.01",min:"0",required:"",placeholder:"0,00",class:g(U)},null,512),[[$,o(r).price]]),t("p",hs,"Aproximado: € "+p(Ia.value)+" · US$ "+p(Ra.value),1),o(r).errors.price?(s(),l("p",ws,p(o(r).errors.price),1)):m("",!0)]),t("div",Cs,[t("label",$s,[d(o(be),{class:"h-3.5 w-3.5 text-zinc-400","aria-hidden":"true"}),e[141]||(e[141]=c(" Combo ",-1))]),Pe.value.length?(s(),l("div",{key:1,ref_key:"comboDropdownMainEl",ref:la,class:"relative"},[t("button",{type:"button",class:"flex w-full items-center justify-between gap-2 rounded-xl border border-zinc-200 bg-white px-3 py-2.5 text-left text-sm text-zinc-800 shadow-sm transition hover:border-zinc-300 dark:border-zinc-600 dark:bg-zinc-900 dark:text-zinc-100 dark:hover:border-zinc-500","aria-expanded":te.value==="main",onClick:e[5]||(e[5]=a=>Bt("main"))},[t("span",Vs,p(Dt(o(r))),1),d(o(At),{class:g(["h-4 w-4 shrink-0 text-zinc-500 transition-transform dark:text-zinc-400",te.value==="main"?"rotate-180":""]),"aria-hidden":"true"},null,8,["class"])],8,Ps),x(t("div",{class:"absolute left-0 right-0 z-50 mt-1 max-h-56 space-y-1 overflow-y-auto rounded-xl border border-zinc-200 bg-white p-2 shadow-lg dark:border-zinc-600 dark:bg-zinc-900",role:"listbox",onClick:e[6]||(e[6]=ae(()=>{},["stop"]))},[(s(!0),l(z,null,I(Pe.value,a=>(s(),L(Qt,{key:a.id,"model-value":o(r).combo_product_ids.includes(a.id),class:"!w-full !items-start !gap-2 py-1","onUpdate:modelValue":i=>Ot("main",a.id,i)},{default:v(()=>[t("span",Us,p(a.name),1)]),_:2},1032,["model-value","onUpdate:modelValue"]))),128))],512),[[nt,te.value==="main"]])],512)):(s(),l("p",Ss,"Nenhum outro produto ativo no tenant para vincular.")),e[142]||(e[142]=t("p",{class:"mt-1.5 text-xs text-zinc-500 dark:text-zinc-400"},"Abra a lista e marque um ou mais produtos — acesso extra sem alterar o valor do pedido.",-1)),o(r).errors.combo_product_ids?(s(),l("p",js,p(o(r).errors.combo_product_ids),1)):m("",!0)])]),t("div",As,[e[144]||(e[144]=t("label",{class:"mb-2 block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Moeda no checkout",-1)),e[145]||(e[145]=t("p",{class:"mb-3 text-xs text-zinc-500 dark:text-zinc-400"}," Global permite que o cliente escolha a moeda (com detecção por país). Moeda única oculta o seletor e usa só a moeda escolhida. ",-1)),t("div",Es,[t("button",{type:"button",class:g(["rounded-xl border-2 px-4 py-2.5 text-sm font-medium transition-all",o(r).checkout_currency.mode==="global"?"border-[var(--color-primary)] bg-[var(--color-primary)]/10 text-[var(--color-primary)]":"border-zinc-200 bg-white text-zinc-600 hover:border-zinc-300 dark:border-zinc-600 dark:bg-zinc-900 dark:text-zinc-400"]),onClick:e[7]||(e[7]=a=>o(r).checkout_currency.mode="global")}," Global (multimoeda) ",2),t("button",{type:"button",class:g(["rounded-xl border-2 px-4 py-2.5 text-sm font-medium transition-all",o(r).checkout_currency.mode==="fixed"?"border-[var(--color-primary)] bg-[var(--color-primary)]/10 text-[var(--color-primary)]":"border-zinc-200 bg-white text-zinc-600 hover:border-zinc-300 dark:border-zinc-600 dark:bg-zinc-900 dark:text-zinc-400"]),onClick:e[8]||(e[8]=a=>o(r).checkout_currency.mode="fixed")}," Moeda única ",2)]),o(r).checkout_currency.mode==="fixed"?(s(),l("div",Is,[e[143]||(e[143]=t("label",{class:"mb-2 block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Moeda fixa *",-1)),x(t("select",{"onUpdate:modelValue":e[9]||(e[9]=a=>o(r).checkout_currency.currency=a),required:"",class:g(U)},[(s(!0),l(z,null,I(k.tenant_currencies,a=>(s(),l("option",{key:a.code,value:String(a.code).toUpperCase()},p(a.label||a.code)+" ("+p(String(a.code).toUpperCase())+") ",9,Rs))),128))],512),[[Z,o(r).checkout_currency.currency]]),o(r).errors["checkout_currency.currency"]?(s(),l("p",Ms,p(o(r).errors["checkout_currency.currency"]),1)):m("",!0)])):m("",!0)]),o(r).billing_type==="subscription"?(s(),l("div",Ls,[e[147]||(e[147]=t("label",{class:"mb-2 block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Recorrência *",-1)),x(t("select",{"onUpdate:modelValue":e[10]||(e[10]=a=>o(r).base_interval=a),required:"",class:g(U)},[...e[146]||(e[146]=[we('',6)])],512),[[Z,o(r).base_interval]]),e[148]||(e[148]=t("p",{class:"mt-1.5 text-xs text-zinc-500 dark:text-zinc-400"},"Intervalo da cobrança recorrente do preço base.",-1))])):m("",!0),o(r).billing_type==="subscription"?(s(),l("div",Ns,[e[155]||(e[155]=t("h3",{class:"text-sm font-semibold text-zinc-900 dark:text-white"},"Assinatura e renovação",-1)),e[156]||(e[156]=t("p",{class:"mt-1 text-xs text-zinc-500 dark:text-zinc-400"}," Lembretes por e-mail com link de renovação. O cliente paga manualmente em /renovar. ",-1)),t("div",Ts,[t("div",null,[e[149]||(e[149]=t("label",{class:"mb-1 block text-xs font-medium text-zinc-600 dark:text-zinc-400"},"Carência (dias após vencer)",-1)),x(t("input",{"onUpdate:modelValue":e[11]||(e[11]=a=>o(r).subscription.grace_period_days=a),type:"number",min:"0",max:"365",class:g(U)},null,512),[[$,o(r).subscription.grace_period_days,void 0,{number:!0}]]),e[150]||(e[150]=t("p",{class:"mt-1 text-[11px] text-zinc-500"},"Acesso continua após o vencimento.",-1))]),t("div",null,[e[151]||(e[151]=t("label",{class:"mb-1 block text-xs font-medium text-zinc-600 dark:text-zinc-400"},"Avisar antes (dias)",-1)),x(t("input",{"onUpdate:modelValue":e[12]||(e[12]=a=>o(r).subscription.notify_days_before=a),type:"number",min:"0",max:"90",class:g(U)},null,512),[[$,o(r).subscription.notify_days_before,void 0,{number:!0}]]),e[152]||(e[152]=t("p",{class:"mt-1 text-[11px] text-zinc-500"},"1 e-mail por dia até renovar.",-1))]),t("div",null,[e[153]||(e[153]=t("label",{class:"mb-1 block text-xs font-medium text-zinc-600 dark:text-zinc-400"},"Janela de renovação (dias)",-1)),x(t("input",{"onUpdate:modelValue":e[13]||(e[13]=a=>o(r).subscription.renewal_window_days=a),type:"number",min:"0",max:"365",class:g(U)},null,512),[[$,o(r).subscription.renewal_window_days,void 0,{number:!0}]]),e[154]||(e[154]=t("p",{class:"mt-1 text-[11px] text-zinc-500"},"Dias após vencer em que o link /renovar funciona.",-1))])])])):m("",!0)]),t("div",Os,[t("p",Bs,p(o(r).billing_type==="one_time"?"Ofertas extras":"Planos de assinatura"),1),t("p",Ds,[o(r).billing_type==="one_time"?(s(),l(z,{key:0},[c(" Múltiplas ofertas (preços). Cada uma tem seu próprio link de checkout. ")],64)):(s(),l(z,{key:1},[c(" Cadastre os planos (preço e periodicidade). Cada plano tem seu próprio link. ")],64))]),o(r).billing_type==="one_time"?(s(),l(z,{key:0},[t("ul",qs,[(s(!0),l(z,null,I(k.produto.offers||[],a=>(s(),l("li",{key:a.id,class:"panel-card flex flex-wrap items-center gap-3 px-3 py-2.5"},[t("div",Fs,[t("span",Gs,p(a.name),1),t("span",Xs,p(a.currency)+" "+p(Number(a.price).toFixed(2)),1),(s(!0),l(z,null,I(a.combo_product_names||[],(i,y)=>(s(),l("span",{key:"oc-"+a.id+"-"+y,class:"ml-1 inline-block rounded-md bg-zinc-200/80 px-1.5 py-0.5 text-[10px] font-medium text-zinc-600 dark:bg-zinc-700 dark:text-zinc-300"}," + "+p(i),1))),128)),xa(a)?(s(),l("a",{key:0,href:xa(a),target:"_blank",rel:"noopener noreferrer",class:"ml-2 inline-flex items-center gap-1 text-xs text-[var(--color-primary)] hover:underline"},[d(o(Ge),{class:"h-3 w-3"}),e[157]||(e[157]=c(" Link ",-1))],8,Hs)):m("",!0)]),t("div",Ws,[d(E,{size:"sm",variant:"outline",class:"h-8 w-8 p-0",onClick:i=>Ga(a)},{default:v(()=>[d(o(Xe),{class:"h-3.5 w-3.5"})]),_:1},8,["onClick"]),d(E,{size:"sm",variant:"outline",class:"h-8 w-8 p-0 text-red-600 hover:bg-red-50 dark:text-red-400 dark:hover:bg-red-950/30",onClick:i=>Ha(a)},{default:v(()=>[d(o(Vt),{class:"h-3.5 w-3.5"})]),_:1},8,["onClick"])])]))),128)),!k.produto.offers||!k.produto.offers.length?(s(),l("li",Qs," Nenhuma oferta. Adicione abaixo ou use apenas o preço base. ")):m("",!0)]),gt.value?(s(),l("form",{key:0,class:"panel-card-sm",onSubmit:ae(Xa,["prevent"])},[t("p",Js,p(Ve.value?"Editar oferta":"Nova oferta"),1),t("div",Ks,[x(t("input",{"onUpdate:modelValue":e[14]||(e[14]=a=>o(J).name=a),type:"text",required:"",class:g(U),placeholder:"Nome (ex: Básico)"},null,512),[[$,o(J).name]]),x(t("input",{"onUpdate:modelValue":e[15]||(e[15]=a=>o(J).price=a),type:"number",step:"0.01",min:"0",required:"",class:g(U),placeholder:"Preço"},null,512),[[$,o(J).price]]),x(t("select",{"onUpdate:modelValue":e[16]||(e[16]=a=>o(J).currency=a),class:g(U+" min-w-0")},[...e[158]||(e[158]=[t("option",{value:"BRL"},"BRL",-1),t("option",{value:"EUR"},"EUR",-1),t("option",{value:"USD"},"USD",-1)])],2),[[Z,o(J).currency]])]),t("div",Ys,[t("label",Zs,[d(o(be),{class:"h-3 w-3","aria-hidden":"true"}),e[159]||(e[159]=c(" Combo ",-1))]),Pe.value.length?(s(),l("div",{key:1,ref_key:"comboDropdownOfferEl",ref:ia,class:"relative"},[t("button",{type:"button",class:"flex w-full items-center justify-between gap-2 rounded-xl border border-zinc-200 bg-white px-3 py-2 text-left text-sm text-zinc-800 shadow-sm transition hover:border-zinc-300 dark:border-zinc-600 dark:bg-zinc-900 dark:text-zinc-100 dark:hover:border-zinc-500","aria-expanded":te.value==="offer",onClick:e[17]||(e[17]=a=>Bt("offer"))},[t("span",al,p(Dt(o(J))),1),d(o(At),{class:g(["h-4 w-4 shrink-0 text-zinc-500 transition-transform dark:text-zinc-400",te.value==="offer"?"rotate-180":""]),"aria-hidden":"true"},null,8,["class"])],8,tl),x(t("div",{class:"absolute left-0 right-0 z-50 mt-1 max-h-52 space-y-1 overflow-y-auto rounded-xl border border-zinc-200 bg-white p-2 shadow-lg dark:border-zinc-600 dark:bg-zinc-900",role:"listbox",onClick:e[18]||(e[18]=ae(()=>{},["stop"]))},[(s(!0),l(z,null,I(Pe.value,a=>(s(),L(Qt,{key:"of-"+a.id,"model-value":o(J).combo_product_ids.includes(a.id),class:"!w-full !items-start !gap-2 py-1","onUpdate:modelValue":i=>Ot("offer",a.id,i)},{default:v(()=>[t("span",ol,p(a.name),1)]),_:2},1032,["model-value","onUpdate:modelValue"]))),128))],512),[[nt,te.value==="offer"]])],512)):(s(),l("p",el,"Nenhum outro produto disponível."))]),o(J).errors.combo_product_ids?(s(),l("p",rl,p(o(J).errors.combo_product_ids),1)):m("",!0),t("div",nl,[d(E,{type:"submit",size:"sm",disabled:o(J).processing},{default:v(()=>[c(p(Ve.value?"Atualizar":"Adicionar"),1)]),_:1},8,["disabled"]),d(E,{type:"button",size:"sm",variant:"outline",onClick:qt},{default:v(()=>[...e[160]||(e[160]=[c("Cancelar",-1)])]),_:1})])],32)):(s(),L(E,{key:1,type:"button",size:"sm",variant:"outline",class:"mt-1",onClick:Fa},{default:v(()=>[d(o(tt),{class:"mr-1.5 h-3.5 w-3.5"}),e[161]||(e[161]=c(" Adicionar oferta ",-1))]),_:1}))],64)):(s(),l(z,{key:1},[t("ul",sl,[(s(!0),l(z,null,I(k.produto.subscription_plans||[],a=>(s(),l("li",{key:a.id,class:"panel-card flex flex-wrap items-center gap-3 px-3 py-2.5"},[t("div",ll,[t("span",il,p(a.name),1),t("span",dl,p(a.currency)+" "+p(Number(a.price).toFixed(2))+" · "+p(qa(a.interval)),1),(s(!0),l(z,null,I(a.combo_product_names||[],(i,y)=>(s(),l("span",{key:"pc-"+a.id+"-"+y,class:"ml-1 inline-block rounded-md bg-zinc-200/80 px-1.5 py-0.5 text-[10px] font-medium text-zinc-600 dark:bg-zinc-700 dark:text-zinc-300"}," + "+p(i),1))),128)),ya(a)?(s(),l("a",{key:0,href:ya(a),target:"_blank",rel:"noopener noreferrer",class:"ml-2 inline-flex items-center gap-1 text-xs text-[var(--color-primary)] hover:underline"},[d(o(Ge),{class:"h-3 w-3"}),e[162]||(e[162]=c(" Link ",-1))],8,ul)):m("",!0)]),t("div",cl,[d(E,{size:"sm",variant:"outline",class:"h-8 w-8 p-0",onClick:i=>Qa(a)},{default:v(()=>[d(o(Xe),{class:"h-3.5 w-3.5"})]),_:1},8,["onClick"]),d(E,{size:"sm",variant:"outline",class:"h-8 w-8 p-0 text-red-600 hover:bg-red-50 dark:text-red-400 dark:hover:bg-red-950/30",onClick:i=>Ka(a)},{default:v(()=>[d(o(Vt),{class:"h-3.5 w-3.5"})]),_:1},8,["onClick"])])]))),128)),!k.produto.subscription_plans||!k.produto.subscription_plans.length?(s(),l("li",pl," Nenhum plano. Adicione abaixo. ")):m("",!0)]),_t.value?(s(),l("form",{key:0,class:"panel-card-sm",onSubmit:ae(Ja,["prevent"])},[t("p",ml,p(Ue.value?"Editar plano":"Novo plano"),1),t("div",bl,[x(t("input",{"onUpdate:modelValue":e[19]||(e[19]=a=>o(D).name=a),type:"text",required:"",class:g(U),placeholder:"Nome (ex: Mensal)"},null,512),[[$,o(D).name]]),x(t("input",{"onUpdate:modelValue":e[20]||(e[20]=a=>o(D).price=a),type:"number",step:"0.01",min:"0",required:"",class:g(U),placeholder:"Preço"},null,512),[[$,o(D).price]]),x(t("select",{"onUpdate:modelValue":e[21]||(e[21]=a=>o(D).currency=a),class:g(U)},[...e[163]||(e[163]=[t("option",{value:"BRL"},"BRL",-1),t("option",{value:"EUR"},"EUR",-1),t("option",{value:"USD"},"USD",-1)])],512),[[Z,o(D).currency]]),x(t("select",{"onUpdate:modelValue":e[22]||(e[22]=a=>o(D).interval=a),required:"",class:g(U)},[...e[164]||(e[164]=[we('',6)])],512),[[Z,o(D).interval]]),t("div",{ref_key:"comboDropdownPlanEl",ref:da,class:"relative sm:col-span-2"},[t("label",xl,[d(o(be),{class:"h-3 w-3","aria-hidden":"true"}),e[165]||(e[165]=c(" Combo ",-1))]),Pe.value.length?(s(),l(z,{key:1},[t("button",{type:"button",class:"flex w-full items-center justify-between gap-2 rounded-xl border border-zinc-200 bg-white px-3 py-2 text-left text-sm text-zinc-800 shadow-sm transition hover:border-zinc-300 dark:border-zinc-600 dark:bg-zinc-900 dark:text-zinc-100 dark:hover:border-zinc-500","aria-expanded":te.value==="plan",onClick:e[23]||(e[23]=a=>Bt("plan"))},[t("span",fl,p(Dt(o(D))),1),d(o(At),{class:g(["h-4 w-4 shrink-0 text-zinc-500 transition-transform dark:text-zinc-400",te.value==="plan"?"rotate-180":""]),"aria-hidden":"true"},null,8,["class"])],8,vl),x(t("div",{class:"absolute left-0 right-0 z-50 mt-1 max-h-52 space-y-1 overflow-y-auto rounded-xl border border-zinc-200 bg-white p-2 shadow-lg dark:border-zinc-600 dark:bg-zinc-900",role:"listbox",onClick:e[24]||(e[24]=ae(()=>{},["stop"]))},[(s(!0),l(z,null,I(Pe.value,a=>(s(),L(Qt,{key:"pf-"+a.id,"model-value":o(D).combo_product_ids.includes(a.id),class:"!w-full !items-start !gap-2 py-1","onUpdate:modelValue":i=>Ot("plan",a.id,i)},{default:v(()=>[t("span",gl,p(a.name),1)]),_:2},1032,["model-value","onUpdate:modelValue"]))),128))],512),[[nt,te.value==="plan"]])],64)):(s(),l("p",yl,"Nenhum outro produto disponível."))],512)]),o(D).errors.combo_product_ids?(s(),l("p",_l,p(o(D).errors.combo_product_ids),1)):m("",!0),t("div",kl,[d(E,{type:"submit",size:"sm",disabled:o(D).processing},{default:v(()=>[c(p(Ue.value?"Atualizar":"Adicionar"),1)]),_:1},8,["disabled"]),d(E,{type:"button",size:"sm",variant:"outline",onClick:Ft},{default:v(()=>[...e[166]||(e[166]=[c("Cancelar",-1)])]),_:1})])],32)):(s(),L(E,{key:1,type:"button",size:"sm",variant:"outline",class:"mt-1",onClick:Wa},{default:v(()=>[d(o(tt),{class:"mr-1.5 h-3.5 w-3.5"}),e[167]||(e[167]=c(" Adicionar plano ",-1))]),_:1}))],64))])])]),t("section",zl,[e[180]||(e[180]=t("div",{class:"border-b border-zinc-200/80 bg-zinc-50/80 px-6 py-4 dark:border-zinc-700/80 dark:bg-zinc-800/50"},[t("h2",{class:"text-base font-semibold text-zinc-900 dark:text-white"},"Checkout público"),t("p",{class:"mt-0.5 text-sm text-zinc-500 dark:text-zinc-400"},[c(" Idioma e moeda exibidos no link de checkout, e valores fixos em outras moedas (opcional). Com "),t("strong",{class:"font-medium text-zinc-700 dark:text-zinc-300"},"CajuPay"),c(" (cartão e wallets), a cobrança é feita na moeda escolhida pelo cliente. ")])],-1)),t("div",hl,[t("div",wl,[d(me,{modelValue:o(r).checkout_force.enabled,"onUpdate:modelValue":e[25]||(e[25]=a=>o(r).checkout_force.enabled=a),label:"Forçar idioma no checkout"},null,8,["modelValue"]),e[171]||(e[171]=t("p",{class:"mt-2 text-xs text-zinc-500 dark:text-zinc-400"}," Quando ativo, ignora a sugestão de idioma por país (geo) até o visitante mudar manualmente no checkout. ",-1)),o(r).checkout_force.enabled?(s(),l("div",Cl,[e[170]||(e[170]=t("label",{class:"mb-2 block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Idioma *",-1)),x(t("select",{"onUpdate:modelValue":e[26]||(e[26]=a=>o(r).checkout_force.locale=a),required:"",class:g(U)},[...e[169]||(e[169]=[t("option",{value:"pt_BR"},"Português (Brasil)",-1),t("option",{value:"en"},"English",-1),t("option",{value:"es"},"Español",-1)])],512),[[Z,o(r).checkout_force.locale]]),o(r).errors["checkout_force.locale"]?(s(),l("p",$l,p(o(r).errors["checkout_force.locale"]),1)):m("",!0)])):m("",!0)]),t("div",Sl,[d(me,{modelValue:o(r).custom_prices_by_currency.enabled,"onUpdate:modelValue":e[27]||(e[27]=a=>o(r).custom_prices_by_currency.enabled=a),label:"Personalizar preço exibido/cobrado por moeda"},null,8,["modelValue"]),e[179]||(e[179]=t("p",{class:"mt-2 text-xs text-zinc-500 dark:text-zinc-400"},[c(" Aplica-se apenas ao "),t("strong",{class:"font-medium text-zinc-700 dark:text-zinc-300"},"preço base do produto"),c(" (sem oferta nem plano). Order bumps seguem em BRL e são convertidos pela taxa. ")],-1)),t("p",Pl,[e[173]||(e[173]=c(" Valores em moeda estrangeira com preço customizado são cobrados ",-1)),e[174]||(e[174]=t("strong",{class:"font-medium"},"naquela moeda",-1)),e[175]||(e[175]=c(" via CajuPay. Sem preço customizado, o valor em BRL é convertido pela taxa ",-1)),e[176]||(e[176]=t("code",{class:"rounded bg-zinc-200/80 px-1 dark:bg-zinc-700"},"rate_to_brl",-1)),e[177]||(e[177]=c(" de cada moeda nas ",-1)),d(o(Y),{href:"/configuracoes?tab=moedas",class:"text-[var(--color-primary)] hover:underline"},{default:v(()=>[...e[172]||(e[172]=[c("Configurações → Moedas",-1)])]),_:1}),e[178]||(e[178]=c(". ",-1))]),o(r).custom_prices_by_currency.enabled?(s(),l("div",Vl,[Lt.value.length?(s(),l("p",jl,p(Lt.value.length)+" moeda(s) habilitada(s) no checkout — preencha apenas as que deseja cobrar com valor fixo. ",1)):(s(),l("p",Ul," Nenhuma moeda extra além de BRL. Adicione moedas em Configurações para preencher valores aqui. ")),t("div",Al,[(s(!0),l(z,null,I(Lt.value,a=>(s(),l("div",{key:a.code,class:"max-w-xs"},[t("label",El,p(a.label||a.code)+" ("+p(String(a.code).toUpperCase())+") — opcional ",1),x(t("input",{"onUpdate:modelValue":i=>o(r).custom_prices_by_currency.amounts[String(a.code).toUpperCase()]=i,type:"number",step:"0.01",min:"0",placeholder:`Ex.: 10.00 em ${String(a.code).toUpperCase()}`,class:g(U)},null,8,Il),[[$,o(r).custom_prices_by_currency.amounts[String(a.code).toUpperCase()]]])]))),128))]),o(r).errors["custom_prices_by_currency.amounts"]?(s(),l("p",Rl,p(o(r).errors["custom_prices_by_currency.amounts"]),1)):m("",!0)])):m("",!0)])])])]),t("div",Ml,[d(E,{type:"submit",disabled:o(r).processing},{default:v(()=>[...e[181]||(e[181]=[c("Salvar alterações",-1)])]),_:1},8,["disabled"]),d(o(Y),{href:"/produtos",class:"inline-flex items-center rounded-xl border border-zinc-200 px-4 py-2.5 text-sm font-medium text-zinc-700 transition hover:bg-zinc-50 dark:border-zinc-600 dark:text-zinc-300 dark:hover:bg-zinc-800"},{default:v(()=>[...e[182]||(e[182]=[c(" Cancelar ",-1)])]),_:1})])],32),k.plugin_form_sections?.length?(s(),l("div",Ll,[d(Ho,{layout:"stack",items:k.plugin_form_sections,context:{produto:k.produto,product:k.produto}},null,8,["items","context"]),d(Wo,{zone:"produtos.edit.after_form",context:{produto:k.produto,product:k.produto}},null,8,["context"])])):m("",!0)],64)):m("",!0),H.value==="configuracoes"?(s(),l("form",{key:1,class:"w-full space-y-8",onSubmit:ae(Ee,["prevent"])},[t("section",Nl,[e[223]||(e[223]=t("div",{class:"border-b border-zinc-200/80 px-6 py-4 dark:border-zinc-700/80"},[t("h2",{class:"text-base font-semibold text-zinc-900 dark:text-white"},"Métodos de pagamento"),t("p",{class:"mt-0.5 text-sm text-zinc-500 dark:text-zinc-400"}," Selecione o gateway para cada forma de pagamento no checkout. ")],-1)),t("div",Tl,[t("div",Ol,[t("div",Bl,[t("div",Dl,[t("div",ql,[t("div",Fl,[t("img",{src:"/images/payment-methods/pix.svg",alt:"PIX",class:"h-7 w-7 object-contain",onError:e[28]||(e[28]=a=>a.target&&(a.target.style.display="none"))},null,32)]),e[183]||(e[183]=t("div",null,[t("p",{class:"font-semibold text-zinc-900 dark:text-white"},"PIX"),t("p",{class:"text-xs text-zinc-500 dark:text-zinc-400"},"Pagamento instantâneo")],-1))]),d(ke,{modelValue:o(r).payment_gateways.pix,"onUpdate:modelValue":e[29]||(e[29]=a=>o(r).payment_gateways.pix=a),options:fe("pix"),placeholder:"Nenhum",label:"Gateway PIX"},null,8,["modelValue","options"]),_e(o(r).payment_gateways.pix)?(s(),l("button",{key:0,type:"button",class:"inline-flex items-center gap-1.5 rounded-lg border border-zinc-200 px-3 py-2 text-sm font-medium text-zinc-700 transition hover:border-[var(--color-primary)] hover:bg-[var(--color-primary)]/10 hover:text-[var(--color-primary)] dark:border-zinc-600 dark:text-zinc-300 dark:hover:border-[var(--color-primary)] dark:hover:bg-[var(--color-primary)]/20",onClick:e[30]||(e[30]=a=>ge("pix"))},[d(o(be),{class:"h-4 w-4"}),e[184]||(e[184]=c(" Redundância ",-1))])):m("",!0),k.gateways_by_method.pix.length===0?(s(),l("p",Gl,[d(o(Y),{href:"/integracoes?tab=gateways",class:"text-[var(--color-primary)] hover:underline"},{default:v(()=>[...e[185]||(e[185]=[c("Conectar gateway",-1)])]),_:1})])):m("",!0)])]),o(r).billing_type==="one_time"?(s(),l("div",Xl,[t("div",Hl,[e[192]||(e[192]=we('
PIX Parcelado

PIX Parcelado

Entrada + parcelas (CajuPay)

BRL · pagamento único
',1)),d(ke,{modelValue:o(r).payment_gateways.pix_parcelado,"onUpdate:modelValue":e[31]||(e[31]=a=>o(r).payment_gateways.pix_parcelado=a),options:fe("pix_parcelado"),placeholder:"Nenhum",label:"Gateway PIX Parcelado"},null,8,["modelValue","options"]),o(r).payment_gateways.pix_parcelado==="cajupay"?(s(),l("button",{key:0,type:"button",class:"inline-flex items-center gap-1.5 rounded-lg border border-zinc-200 px-3 py-2 text-sm font-medium text-zinc-700 transition hover:border-[var(--color-primary)] hover:bg-[var(--color-primary)]/10 hover:text-[var(--color-primary)] dark:border-zinc-600 dark:text-zinc-300",onClick:e[32]||(e[32]=a=>wt.value=!0)},[d(o(tr),{class:"h-4 w-4"}),e[186]||(e[186]=c(" Definir regras ",-1))])):m("",!0),_e(o(r).payment_gateways.pix_parcelado)?(s(),l("button",{key:1,type:"button",class:"inline-flex items-center gap-1.5 rounded-lg border border-zinc-200 px-3 py-2 text-sm font-medium text-zinc-700 transition hover:border-[var(--color-primary)] hover:bg-[var(--color-primary)]/10 hover:text-[var(--color-primary)] dark:border-zinc-600 dark:text-zinc-300",onClick:e[33]||(e[33]=a=>ge("pix_parcelado"))},[d(o(be),{class:"h-4 w-4"}),e[187]||(e[187]=c(" Redundância ",-1))])):m("",!0),yo.value?(s(),l("p",Wl,[e[189]||(e[189]=c(" Aceite o contrato PIX Parcelado na ",-1)),d(o(Y),{href:"/integracoes?tab=gateways&gateway=cajupay",class:"font-medium underline"},{default:v(()=>[...e[188]||(e[188]=[c("configuração CajuPay",-1)])]),_:1}),e[190]||(e[190]=c(" antes de usar no checkout. ",-1))])):m("",!0),(k.gateways_by_method.pix_parcelado||[]).length===0?(s(),l("p",Ql,[d(o(Y),{href:"/integracoes?tab=gateways",class:"text-[var(--color-primary)] hover:underline"},{default:v(()=>[...e[191]||(e[191]=[c("Conectar CajuPay",-1)])]),_:1})])):m("",!0)])])):m("",!0),t("div",Jl,[t("div",Kl,[t("div",Yl,[t("div",Zl,[t("img",{src:"/images/payment-methods/card.png",alt:"Cartão",class:"h-7 w-7 object-contain",onError:e[34]||(e[34]=a=>a.target&&(a.target.style.display="none"))},null,32)]),e[193]||(e[193]=t("div",null,[t("p",{class:"font-semibold text-zinc-900 dark:text-white"},"Cartão"),t("p",{class:"text-xs text-zinc-500 dark:text-zinc-400"},"Crédito e débito")],-1))]),d(ke,{modelValue:o(r).payment_gateways.card,"onUpdate:modelValue":e[35]||(e[35]=a=>o(r).payment_gateways.card=a),options:fe("card"),placeholder:"Nenhum",label:"Gateway Cartão"},null,8,["modelValue","options"]),_e(o(r).payment_gateways.card)?(s(),l("button",{key:0,type:"button",class:"inline-flex items-center gap-1.5 rounded-lg border border-zinc-200 px-3 py-2 text-sm font-medium text-zinc-700 transition hover:border-[var(--color-primary)] hover:bg-[var(--color-primary)]/10 hover:text-[var(--color-primary)] dark:border-zinc-600 dark:text-zinc-300 dark:hover:border-[var(--color-primary)] dark:hover:bg-[var(--color-primary)]/20",onClick:e[36]||(e[36]=a=>ge("card"))},[d(o(be),{class:"h-4 w-4"}),e[194]||(e[194]=c(" Redundância ",-1))])):m("",!0),va(o(r).payment_gateways.card)?(s(),l("button",{key:1,type:"button",class:"inline-flex items-center gap-1.5 rounded-lg border border-zinc-200 px-3 py-2 text-sm font-medium text-zinc-700 transition hover:border-[var(--color-primary)] hover:bg-[var(--color-primary)]/10 hover:text-[var(--color-primary)] dark:border-zinc-600 dark:text-zinc-300 dark:hover:border-[var(--color-primary)] dark:hover:bg-[var(--color-primary)]/20",onClick:e[37]||(e[37]=a=>he.value=!0)},[d(o(Jt),{class:"h-4 w-4"}),e[195]||(e[195]=c(" Configurar endereço (checkout) ",-1))])):m("",!0),k.gateways_by_method.card.length===0?(s(),l("p",ei,[d(o(Y),{href:"/integracoes?tab=gateways",class:"text-[var(--color-primary)] hover:underline"},{default:v(()=>[...e[196]||(e[196]=[c("Conectar gateway",-1)])]),_:1})])):m("",!0),go(o(r).payment_gateways.card)?(s(),l("div",ti,[t("div",ai,[t("div",oi,[e[197]||(e[197]=t("p",{class:"text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Permitir parcelamento",-1)),t("p",ri,"Cliente poderá parcelar no cartão de crédito ("+p(_o(o(r).payment_gateways.card))+")",1)]),d(me,{modelValue:o(r).card_installments.enabled,"onUpdate:modelValue":e[38]||(e[38]=a=>o(r).card_installments.enabled=a),class:"shrink-0"},null,8,["modelValue"])]),o(r).card_installments.enabled?(s(),l("div",ni,[e[198]||(e[198]=t("label",{for:"card-installments-max",class:"mb-2 block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Até quantas parcelas",-1)),x(t("select",{id:"card-installments-max","onUpdate:modelValue":e[39]||(e[39]=a=>o(r).card_installments.max=a),class:"w-full rounded-lg border border-zinc-300 bg-white px-3 py-2.5 text-sm text-zinc-900 shadow-sm focus:border-[var(--color-primary)] focus:outline-none focus:ring-1 focus:ring-[var(--color-primary)] dark:border-zinc-600 dark:bg-zinc-700 dark:text-zinc-100"},[(s(!0),l(z,null,I(Nt.value,a=>(s(),l("option",{key:a,value:a},p(a)+"x",9,si))),128))],512),[[Z,o(r).card_installments.max,void 0,{number:!0}]]),t("p",li,"Com o preço de R$ "+p(Ke.value.toFixed(2))+", até "+p(Nt.value)+"x (mín. R$ "+p(Yt)+",00 por parcela).",1)])):m("",!0)])):m("",!0),o(r).payment_gateways.card==="stripe"?(s(),l("div",ii,[t("div",di,[e[199]||(e[199]=t("div",{class:"min-w-0"},[t("p",{class:"text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Usar Stripe Link"),t("p",{class:"mt-0.5 text-xs text-zinc-500 dark:text-zinc-400"},"Permitir que o cliente use Link para preencher dados do cartão (Stripe)")],-1)),d(me,{modelValue:o(r).stripe_link_enabled,"onUpdate:modelValue":e[40]||(e[40]=a=>o(r).stripe_link_enabled=a),class:"shrink-0"},null,8,["modelValue"])])])):m("",!0)])]),t("div",ui,[t("div",ci,[t("div",pi,[t("div",mi,[t("img",{src:"/images/payment-methods/boleto.png",alt:"Boleto",class:"h-7 w-7 object-contain",onError:e[41]||(e[41]=a=>a.target&&(a.target.style.display="none"))},null,32)]),e[200]||(e[200]=t("div",null,[t("p",{class:"font-semibold text-zinc-900 dark:text-white"},"Boleto"),t("p",{class:"text-xs text-zinc-500 dark:text-zinc-400"},"Pagamento bancário")],-1))]),d(ke,{modelValue:o(r).payment_gateways.boleto,"onUpdate:modelValue":e[42]||(e[42]=a=>o(r).payment_gateways.boleto=a),options:fe("boleto"),placeholder:"Nenhum",label:"Gateway Boleto"},null,8,["modelValue","options"]),_e(o(r).payment_gateways.boleto)?(s(),l("button",{key:0,type:"button",class:"inline-flex items-center gap-1.5 rounded-lg border border-zinc-200 px-3 py-2 text-sm font-medium text-zinc-700 transition hover:border-[var(--color-primary)] hover:bg-[var(--color-primary)]/10 hover:text-[var(--color-primary)] dark:border-zinc-600 dark:text-zinc-300 dark:hover:border-[var(--color-primary)] dark:hover:bg-[var(--color-primary)]/20",onClick:e[43]||(e[43]=a=>ge("boleto"))},[d(o(be),{class:"h-4 w-4"}),e[201]||(e[201]=c(" Redundância ",-1))])):m("",!0),va(o(r).payment_gateways.boleto)?(s(),l("button",{key:1,type:"button",class:"inline-flex items-center gap-1.5 rounded-lg border border-zinc-200 px-3 py-2 text-sm font-medium text-zinc-700 transition hover:border-[var(--color-primary)] hover:bg-[var(--color-primary)]/10 hover:text-[var(--color-primary)] dark:border-zinc-600 dark:text-zinc-300 dark:hover:border-[var(--color-primary)] dark:hover:bg-[var(--color-primary)]/20",onClick:e[44]||(e[44]=a=>he.value=!0)},[d(o(Jt),{class:"h-4 w-4"}),e[202]||(e[202]=c(" Configurar endereço (checkout) ",-1))])):m("",!0),k.gateways_by_method.boleto.length===0?(s(),l("p",bi,[d(o(Y),{href:"/integracoes?tab=gateways",class:"text-[var(--color-primary)] hover:underline"},{default:v(()=>[...e[203]||(e[203]=[c("Conectar gateway",-1)])]),_:1})])):m("",!0)])]),t("div",xi,[t("div",yi,[e[206]||(e[206]=we('

Apple Pay

Carteira digital

Somente dispositivos iOS
',1)),d(ke,{modelValue:o(r).payment_gateways.apple_pay,"onUpdate:modelValue":e[45]||(e[45]=a=>o(r).payment_gateways.apple_pay=a),options:fe("apple_pay"),placeholder:"Nenhum",label:"Gateway Apple Pay"},null,8,["modelValue","options"]),_e(o(r).payment_gateways.apple_pay)?(s(),l("button",{key:0,type:"button",class:"inline-flex items-center gap-1.5 rounded-lg border border-zinc-200 px-3 py-2 text-sm font-medium text-zinc-700 transition hover:border-[var(--color-primary)] hover:bg-[var(--color-primary)]/10 hover:text-[var(--color-primary)] dark:border-zinc-600 dark:text-zinc-300 dark:hover:border-[var(--color-primary)] dark:hover:bg-[var(--color-primary)]/20",onClick:e[46]||(e[46]=a=>ge("apple_pay"))},[d(o(be),{class:"h-4 w-4"}),e[204]||(e[204]=c(" Redundância ",-1))])):m("",!0),(k.gateways_by_method.apple_pay||[]).length===0?(s(),l("p",vi,[d(o(Y),{href:"/integracoes?tab=gateways",class:"text-[var(--color-primary)] hover:underline"},{default:v(()=>[...e[205]||(e[205]=[c("Conectar gateway compatível (CajuPay)",-1)])]),_:1})])):m("",!0)])]),t("div",fi,[t("div",gi,[e[209]||(e[209]=we('

Google Pay

Carteira digital

Somente Android ou desktop
',1)),d(ke,{modelValue:o(r).payment_gateways.google_pay,"onUpdate:modelValue":e[47]||(e[47]=a=>o(r).payment_gateways.google_pay=a),options:fe("google_pay"),placeholder:"Nenhum",label:"Gateway Google Pay"},null,8,["modelValue","options"]),_e(o(r).payment_gateways.google_pay)?(s(),l("button",{key:0,type:"button",class:"inline-flex items-center gap-1.5 rounded-lg border border-zinc-200 px-3 py-2 text-sm font-medium text-zinc-700 transition hover:border-[var(--color-primary)] hover:bg-[var(--color-primary)]/10 hover:text-[var(--color-primary)] dark:border-zinc-600 dark:text-zinc-300 dark:hover:border-[var(--color-primary)] dark:hover:bg-[var(--color-primary)]/20",onClick:e[48]||(e[48]=a=>ge("google_pay"))},[d(o(be),{class:"h-4 w-4"}),e[207]||(e[207]=c(" Redundância ",-1))])):m("",!0),(k.gateways_by_method.google_pay||[]).length===0?(s(),l("p",_i,[d(o(Y),{href:"/integracoes?tab=gateways",class:"text-[var(--color-primary)] hover:underline"},{default:v(()=>[...e[208]||(e[208]=[c("Conectar gateway compatível (CajuPay)",-1)])]),_:1})])):m("",!0)])]),t("div",ki,[t("div",zi,[t("div",hi,[t("div",wi,[t("img",{src:"/images/gateways/paypal.png",alt:"PayPal",class:"h-7 w-7 object-contain",onError:e[49]||(e[49]=a=>a.target&&(a.target.style.display="none"))},null,32)]),e[210]||(e[210]=t("div",{class:"min-w-0 flex-1"},[t("p",{class:"font-semibold text-zinc-900 dark:text-white"},"PayPal"),t("p",{class:"mt-0.5 text-xs text-zinc-500 dark:text-zinc-400"},"Carteira / cartão via PayPal")],-1))]),d(ke,{modelValue:o(r).payment_gateways.paypal,"onUpdate:modelValue":e[50]||(e[50]=a=>o(r).payment_gateways.paypal=a),options:fe("paypal"),placeholder:"Nenhum",label:"Gateway PayPal"},null,8,["modelValue","options"]),o(r).payment_gateways.paypal?(s(),l(z,{key:0},[t("div",null,[e[212]||(e[212]=t("label",{class:"mb-1.5 block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Exibir no checkout como",-1)),x(t("select",{"onUpdate:modelValue":e[51]||(e[51]=a=>o(r).payment_gateways.paypal_display_as=a),class:"w-full rounded-lg border border-zinc-200 bg-white px-3 py-2 text-sm text-zinc-900 shadow-sm focus:border-[var(--color-primary)] focus:outline-none focus:ring-1 focus:ring-[var(--color-primary)] dark:border-zinc-600 dark:bg-zinc-800 dark:text-white"},[...e[211]||(e[211]=[t("option",{value:"paypal"},"PayPal",-1),t("option",{value:"card"},"Cartão",-1)])],512),[[Z,o(r).payment_gateways.paypal_display_as]]),e[213]||(e[213]=t("p",{class:"mt-1 text-xs text-zinc-500 dark:text-zinc-400"}," “Cartão” usa o mesmo fluxo PayPal com rótulo de cartão. Se já houver outro Cartão, aparece como “Cartão PayPal”. ",-1))]),t("label",Ci,[x(t("input",{"onUpdate:modelValue":e[52]||(e[52]=a=>o(r).payment_gateways.paypal_show_wallet=a),type:"checkbox",class:"mt-0.5 h-4 w-4 rounded border-zinc-300 text-[var(--color-primary)] focus:ring-[var(--color-primary)]"},null,512),[[We,o(r).payment_gateways.paypal_show_wallet]]),e[214]||(e[214]=t("span",{class:"min-w-0"},[t("span",{class:"block text-sm font-medium text-zinc-800 dark:text-zinc-200"},"Mostrar também botão da conta PayPal"),t("span",{class:"mt-0.5 block text-xs text-zinc-500 dark:text-zinc-400"},"Abre o popup da carteira PayPal, além do pagamento com cartão.")],-1))])],64)):m("",!0),_e(o(r).payment_gateways.paypal)?(s(),l("button",{key:1,type:"button",class:"inline-flex items-center gap-1.5 rounded-lg border border-zinc-200 px-3 py-2 text-sm font-medium text-zinc-700 transition hover:border-[var(--color-primary)] hover:bg-[var(--color-primary)]/10 hover:text-[var(--color-primary)] dark:border-zinc-600 dark:text-zinc-300 dark:hover:border-[var(--color-primary)] dark:hover:bg-[var(--color-primary)]/20",onClick:e[53]||(e[53]=a=>ge("paypal"))},[d(o(be),{class:"h-4 w-4"}),e[215]||(e[215]=c(" Redundância ",-1))])):m("",!0),(k.gateways_by_method.paypal||[]).length===0?(s(),l("p",$i,[d(o(Y),{href:"/integracoes?tab=gateways",class:"text-[var(--color-primary)] hover:underline"},{default:v(()=>[...e[216]||(e[216]=[c("Conectar PayPal",-1)])]),_:1})])):m("",!0)])]),o(r).billing_type==="subscription"?(s(),l("div",Si,[t("div",Pi,[t("div",Vi,[t("div",Ui,[t("img",{src:"/images/gateways/pix-automatico.png",alt:"PIX automático",class:"h-7 w-7 object-contain",onError:e[54]||(e[54]=a=>a.target&&(a.target.style.display="none"))},null,32)]),e[217]||(e[217]=t("div",null,[t("p",{class:"font-semibold text-zinc-900 dark:text-white"},"PIX automático"),t("p",{class:"text-xs text-zinc-500 dark:text-zinc-400"},"Renovação automática (assinaturas)")],-1))]),d(ke,{modelValue:o(r).payment_gateways.pix_auto,"onUpdate:modelValue":e[55]||(e[55]=a=>o(r).payment_gateways.pix_auto=a),options:fe("pix_auto"),placeholder:"Nenhum",label:"Gateway PIX automático"},null,8,["modelValue","options"]),_e(o(r).payment_gateways.pix_auto)?(s(),l("button",{key:0,type:"button",class:"inline-flex items-center gap-1.5 rounded-lg border border-zinc-200 px-3 py-2 text-sm font-medium text-zinc-700 transition hover:border-[var(--color-primary)] hover:bg-[var(--color-primary)]/10 hover:text-[var(--color-primary)] dark:border-zinc-600 dark:text-zinc-300 dark:hover:border-[var(--color-primary)] dark:hover:bg-[var(--color-primary)]/20",onClick:e[56]||(e[56]=a=>ge("pix_auto"))},[d(o(be),{class:"h-4 w-4"}),e[218]||(e[218]=c(" Redundância ",-1))])):m("",!0),(k.gateways_by_method.pix_auto||[]).length===0?(s(),l("p",ji,[d(o(Y),{href:"/integracoes?tab=gateways",class:"text-[var(--color-primary)] hover:underline"},{default:v(()=>[...e[219]||(e[219]=[c("Conectar gateway Efí",-1)])]),_:1})])):m("",!0)])])):m("",!0),t("div",Ai,[t("div",Ei,[t("div",Ii,[t("div",Ri,[t("img",{src:"/images/payment-methods/cripto.png",alt:"Criptomoeda",class:"h-7 w-7 object-contain",onError:e[57]||(e[57]=a=>a.target&&(a.target.style.display="none"))},null,32)]),e[220]||(e[220]=t("div",null,[t("p",{class:"font-semibold text-zinc-900 dark:text-white"},"Criptomoeda"),t("p",{class:"text-xs text-zinc-500 dark:text-zinc-400"},"Bitcoin e outras")],-1))]),d(ke,{modelValue:o(r).payment_gateways.crypto,"onUpdate:modelValue":e[58]||(e[58]=a=>o(r).payment_gateways.crypto=a),options:fe("crypto"),placeholder:"Nenhum",label:"Gateway Criptomoeda"},null,8,["modelValue","options"]),_e(o(r).payment_gateways.crypto)?(s(),l("button",{key:0,type:"button",class:"inline-flex items-center gap-1.5 rounded-lg border border-zinc-200 px-3 py-2 text-sm font-medium text-zinc-700 transition hover:border-[var(--color-primary)] hover:bg-[var(--color-primary)]/10 hover:text-[var(--color-primary)] dark:border-zinc-600 dark:text-zinc-300 dark:hover:border-[var(--color-primary)] dark:hover:bg-[var(--color-primary)]/20",onClick:e[59]||(e[59]=a=>ge("crypto"))},[d(o(be),{class:"h-4 w-4"}),e[221]||(e[221]=c(" Redundância ",-1))])):m("",!0),(k.gateways_by_method.crypto||[]).length===0?(s(),l("p",Mi,[d(o(Y),{href:"/integracoes?tab=gateways",class:"text-[var(--color-primary)] hover:underline"},{default:v(()=>[...e[222]||(e[222]=[c("Conectar gateway",-1)])]),_:1})])):m("",!0)])])])])]),t("section",Li,[e[224]||(e[224]=t("div",{class:"border-b border-zinc-200/80 bg-zinc-50/80 px-6 py-4 dark:border-zinc-700/80 dark:bg-zinc-800/50"},[t("h2",{class:"text-base font-semibold text-zinc-900 dark:text-white"},"Tipo de entrega"),t("p",{class:"mt-0.5 text-sm text-zinc-500 dark:text-zinc-400"},"Como o cliente recebe o produto após a compra.")],-1)),t("div",Ni,[t("div",Ti,[(s(!0),l(z,null,I(k.productTypes,a=>(s(),l("button",{key:a.value,type:"button",disabled:!a.available,class:g(["flex items-start gap-3 rounded-xl border-2 p-4 text-left transition",o(r).type===a.value?"border-[var(--color-primary)] bg-[var(--color-primary)]/10 dark:bg-[var(--color-primary)]/20":"border-zinc-200 bg-zinc-50 hover:border-zinc-300 hover:bg-zinc-100 dark:border-zinc-600 dark:bg-zinc-800 dark:hover:border-zinc-500 dark:hover:bg-zinc-700",!a.available&&"cursor-not-allowed opacity-60"]),onClick:i=>a.available&&(o(r).type=a.value)},[(s(),L(qe(ho[a.value]||o($t)),{class:"mt-0.5 h-5 w-5 shrink-0 text-zinc-500 dark:text-zinc-400"})),t("div",Bi,[t("span",Di,p(a.label),1),a.available?m("",!0):(s(),l("span",qi,"(em breve)"))]),a.available&&a.value==="link"&&o(r).type===a.value?(s(),l("button",{key:0,type:"button",class:"shrink-0 rounded-lg p-1.5 text-zinc-500 transition hover:bg-zinc-200 hover:text-zinc-700 dark:text-zinc-400 dark:hover:bg-zinc-600 dark:hover:text-white",title:"Configurar link do entregável","aria-label":"Configurar link do entregável",onClick:e[60]||(e[60]=ae(i=>$e.value=!0,["stop"]))},[d(o(Pt),{class:"h-4 w-4","aria-hidden":"true"})])):m("",!0),a.available&&a.value==="area_membros"&&o(r).type===a.value?(s(),l("button",{key:1,type:"button",class:"shrink-0 rounded-lg p-1.5 text-zinc-500 transition hover:bg-zinc-200 hover:text-zinc-700 dark:text-zinc-400 dark:hover:bg-zinc-600 dark:hover:text-white",title:"Abrir Member Builder","aria-label":"Abrir Member Builder",onClick:ae(Ce,["stop"])},[d(o(Pt),{class:"h-4 w-4","aria-hidden":"true"})])):m("",!0)],10,Oi))),128))]),o(r).errors.type?(s(),l("p",Fi,p(o(r).errors.type),1)):m("",!0)])]),o(r).type==="area_membros_externa"?(s(),l("section",Gi,[e[239]||(e[239]=t("div",{class:"border-b border-zinc-200/80 bg-zinc-50/80 px-6 py-4 dark:border-zinc-700/80 dark:bg-zinc-800/50"},[t("h2",{class:"text-base font-semibold text-zinc-900 dark:text-white"},"Área de membros externa (Cademí)"),t("p",{class:"mt-0.5 text-sm text-zinc-500 dark:text-zinc-400"}," Se este produto for entregue via Cademí, configure aqui qual integração e qual TAG o aluno receberá após o pagamento. ")],-1)),t("div",Xi,[t("div",Hi,[t("div",null,[e[229]||(e[229]=t("label",{class:"mb-1 block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Integração Cademí",-1)),x(t("select",{"onUpdate:modelValue":e[61]||(e[61]=a=>Q.value.integration_id=a),class:"w-full rounded-lg border border-zinc-300 bg-white px-3 py-2 text-sm text-zinc-900 focus:border-[var(--color-primary)] focus:outline-none focus:ring-1 focus:ring-[var(--color-primary)] dark:border-zinc-600 dark:bg-zinc-800 dark:text-white"},[e[225]||(e[225]=t("option",{value:""},"(desconectado)",-1)),(s(!0),l(z,null,I(k.cademi_integrations,a=>(s(),l("option",{key:a.id,value:String(a.id)},p(a.name),9,Wi))),128))],512),[[Z,Q.value.integration_id]]),k.cademi_integrations.length===0?(s(),l("p",Qi,[e[227]||(e[227]=c(" Nenhuma integração Cademí cadastrada. Vá em ",-1)),d(o(Y),{href:"/integracoes",class:"text-[var(--color-primary)] hover:underline"},{default:v(()=>[...e[226]||(e[226]=[c("/integracoes",-1)])]),_:1}),e[228]||(e[228]=c(" e crie uma. ",-1))])):m("",!0)]),t("div",null,[e[232]||(e[232]=t("label",{class:"mb-1 block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Produto ID (Cademí)",-1)),t("div",Ji,[(s(!0),l(z,null,I(Q.value.cademi_produto_ids,(a,i)=>(s(),l("div",{key:i,class:"flex gap-2"},[x(t("input",{"onUpdate:modelValue":y=>Q.value.cademi_produto_ids[i]=y,type:"number",min:"1",placeholder:"Ex: 231",class:"w-full rounded-lg border border-zinc-300 bg-white px-3 py-2 text-sm text-zinc-900 focus:border-[var(--color-primary)] focus:outline-none focus:ring-1 focus:ring-[var(--color-primary)] dark:border-zinc-600 dark:bg-zinc-800 dark:text-white"},null,8,Ki),[[$,Q.value.cademi_produto_ids[i]]]),d(E,{type:"button",variant:"outline",disabled:Q.value.cademi_produto_ids.length<=1,onClick:y=>Q.value.cademi_produto_ids.splice(i,1)},{default:v(()=>[...e[230]||(e[230]=[c(" Remover ",-1)])]),_:1},8,["disabled","onClick"])]))),128)),d(E,{type:"button",variant:"outline",onClick:e[62]||(e[62]=a=>Q.value.cademi_produto_ids.push(""))},{default:v(()=>[...e[231]||(e[231]=[c(" Adicionar Produto ID ",-1)])]),_:1})]),e[233]||(e[233]=t("p",{class:"mt-1 text-xs text-zinc-500 dark:text-zinc-400"}," Obrigatório para conceder acesso na Cademí. ",-1))]),t("div",null,[e[236]||(e[236]=t("label",{class:"mb-1 block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"TAG ID (Cademí) (opcional)",-1)),t("div",Yi,[t("div",Zi,[x(t("select",{"onUpdate:modelValue":e[63]||(e[63]=a=>Q.value.cademi_tag_id=a),class:"w-full rounded-lg border border-zinc-300 bg-white px-3 py-2 text-sm text-zinc-900 focus:border-[var(--color-primary)] focus:outline-none focus:ring-1 focus:ring-[var(--color-primary)] dark:border-zinc-600 dark:bg-zinc-800 dark:text-white",disabled:!Q.value.integration_id||Se.value},[e[234]||(e[234]=t("option",{value:""},"Selecione uma TAG",-1)),(s(!0),l(z,null,I(Ma.value,a=>(s(),l("option",{key:a.id,value:String(a.id)},p(a.nome?`${a.nome} (#${a.id})`:`#${a.id}`),9,td))),128))],8,ed),[[Z,Q.value.cademi_tag_id]]),d(E,{type:"button",variant:"outline",disabled:!Q.value.integration_id||Se.value,onClick:sa},{default:v(()=>[Se.value?(s(),L(o(He),{key:0,class:"mr-2 h-4 w-4 animate-spin"})):m("",!0),e[235]||(e[235]=c(" Atualizar ",-1))]),_:1},8,["disabled"])]),x(t("input",{"onUpdate:modelValue":e[64]||(e[64]=a=>ft.value=a),type:"text",placeholder:"Buscar TAG pelo nome…",class:"w-full rounded-lg border border-zinc-300 bg-white px-3 py-2 text-sm text-zinc-900 focus:border-[var(--color-primary)] focus:outline-none focus:ring-1 focus:ring-[var(--color-primary)] dark:border-zinc-600 dark:bg-zinc-800 dark:text-white",disabled:!Q.value.integration_id||Se.value||(Oe.value||[]).length===0},null,8,ad),[[$,ft.value]]),x(t("input",{"onUpdate:modelValue":e[65]||(e[65]=a=>Q.value.cademi_tag_id=a),type:"number",min:"1",placeholder:"Ou cole o TAG ID (ex: 472)",class:"w-full rounded-lg border border-zinc-300 bg-white px-3 py-2 text-sm text-zinc-900 focus:border-[var(--color-primary)] focus:outline-none focus:ring-1 focus:ring-[var(--color-primary)] dark:border-zinc-600 dark:bg-zinc-800 dark:text-white",disabled:!Q.value.integration_id},null,8,od),[[$,Q.value.cademi_tag_id]]),vt.value?(s(),l("p",rd,p(vt.value),1)):Q.value.integration_id&&!Se.value&&(Oe.value||[]).length===0?(s(),l("p",nd," Nenhuma TAG retornada pela Cademí (ou integração ainda não carregada). ")):m("",!0)]),e[237]||(e[237]=t("p",{class:"mt-1 text-xs text-zinc-500 dark:text-zinc-400"}," Dica: selecione pelo nome (recomendado). Se necessário, cole o ID manualmente no campo acima. ",-1))])]),t("div",sd,[d(E,{type:"button",class:"w-full",disabled:yt.value,onClick:La},{default:v(()=>[yt.value?(s(),L(o(He),{key:0,class:"mr-2 h-4 w-4 animate-spin"})):m("",!0),e[238]||(e[238]=c(" Salvar configuração Cademí ",-1))]),_:1},8,["disabled"])]),Ye.value?(s(),l("p",ld,p(Ye.value),1)):m("",!0)])])):m("",!0),(s(),L(ot,{to:"body"},[d(Fe,{"enter-active-class":"transition-opacity duration-200","enter-from-class":"opacity-0","enter-to-class":"opacity-100","leave-active-class":"transition-opacity duration-200","leave-from-class":"opacity-100","leave-to-class":"opacity-0"},{default:v(()=>[$e.value?(s(),l("div",{key:0,class:"fixed inset-0 z-[100000] bg-black/30","aria-hidden":"true",onClick:e[66]||(e[66]=a=>$e.value=!1)})):m("",!0)]),_:1}),d(Fe,{"enter-active-class":"transition-transform duration-300 ease-out","enter-from-class":"translate-x-full","enter-to-class":"translate-x-0","leave-active-class":"transition-transform duration-300 ease-in","leave-from-class":"translate-x-0","leave-to-class":"translate-x-full"},{default:v(()=>[$e.value?(s(),l("aside",{key:0,class:"fixed top-0 right-0 h-full w-full max-w-md bg-white dark:bg-zinc-900 shadow-2xl z-[100001] flex flex-col",role:"dialog","aria-labelledby":"deliverable-link-sidebar-title",onClick:e[71]||(e[71]=ae(()=>{},["stop"]))},[t("div",id,[t("div",dd,[d(o(Pt),{class:"h-5 w-5 text-zinc-500 dark:text-white","aria-hidden":"true"}),e[240]||(e[240]=t("h2",{id:"deliverable-link-sidebar-title",class:"text-lg font-semibold text-zinc-900 dark:text-white"},"Link do entregável",-1))]),t("button",{type:"button",class:"rounded-lg p-2 text-zinc-500 transition hover:bg-zinc-100 hover:text-zinc-700 dark:text-zinc-400 dark:hover:bg-zinc-800 dark:hover:text-white","aria-label":"Fechar",onClick:e[67]||(e[67]=a=>$e.value=!1)},[d(o(rt),{class:"h-5 w-5"})])]),t("div",ud,[e[242]||(e[242]=t("p",{class:"mb-4 text-sm text-zinc-600 dark:text-zinc-400"}," URL enviada por e-mail ao cliente após a compra. O link deve apontar para o conteúdo (página, arquivo, etc.). ",-1)),t("div",null,[e[241]||(e[241]=t("label",{class:"mb-1.5 block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"URL do entregável",-1)),x(t("input",{"onUpdate:modelValue":e[68]||(e[68]=a=>o(r).deliverable_link=a),type:"url",placeholder:"https://...",class:g(U)},null,512),[[$,o(r).deliverable_link]]),o(r).errors.deliverable_link?(s(),l("p",cd,p(o(r).errors.deliverable_link),1)):m("",!0)])]),t("div",pd,[d(E,{type:"button",class:"flex-1",disabled:o(r).processing,onClick:e[69]||(e[69]=a=>{Ee(),$e.value=!1})},{default:v(()=>[...e[243]||(e[243]=[c(" Salvar ",-1)])]),_:1},8,["disabled"]),d(E,{type:"button",variant:"outline",class:"flex-1",onClick:e[70]||(e[70]=a=>$e.value=!1)},{default:v(()=>[...e[244]||(e[244]=[c(" Fechar ",-1)])]),_:1})])])):m("",!0)]),_:1})])),d(Fo,{open:ht.value,method:pe.value,"method-label":bo[pe.value]||pe.value,"primary-slug":pe.value&&o(r).payment_gateways[pe.value]||"",gateways:k.gateways_by_method[pe.value]||[],"model-value":pe.value?o(r).payment_gateways[pe.value+"_redundancy"]||[]:[],"onUpdate:modelValue":e[72]||(e[72]=a=>pe.value&&(o(r).payment_gateways[pe.value+"_redundancy"]=a)),onSave:e[73]||(e[73]=a=>{pe.value&&(o(r).payment_gateways[pe.value+"_redundancy"]=a,Ee()),ht.value=!1}),onClose:e[74]||(e[74]=a=>ht.value=!1)},null,8,["open","method","method-label","primary-slug","gateways","model-value"]),d(vr,{open:wt.value,"product-id":k.produto.id,"price-brl":Ke.value,modelValue:o(r).pix_parcelado,"onUpdate:modelValue":e[75]||(e[75]=a=>o(r).pix_parcelado=a),onClose:e[76]||(e[76]=a=>wt.value=!1),onSave:e[77]||(e[77]=()=>{wt.value=!1})},null,8,["open","product-id","price-brl","modelValue"]),(s(),L(ot,{to:"body"},[d(Fe,{"enter-active-class":"transition-opacity duration-200","enter-from-class":"opacity-0","enter-to-class":"opacity-100","leave-active-class":"transition-opacity duration-200","leave-from-class":"opacity-100","leave-to-class":"opacity-0"},{default:v(()=>[he.value?(s(),l("div",{key:0,class:"fixed inset-0 z-[100000] bg-black/30","aria-hidden":"true",onClick:e[78]||(e[78]=a=>he.value=!1)})):m("",!0)]),_:1}),d(Fe,{"enter-active-class":"transition-transform duration-300 ease-out","enter-from-class":"translate-x-full","enter-to-class":"translate-x-0","leave-active-class":"transition-transform duration-300 ease-in","leave-from-class":"translate-x-0","leave-to-class":"translate-x-full"},{default:v(()=>[he.value?(s(),l("aside",{key:0,class:"fixed top-0 right-0 z-[100001] flex h-full w-full max-w-md flex-col bg-white shadow-2xl dark:bg-zinc-900",role:"dialog","aria-labelledby":"pagarme-billing-sidebar-title",onClick:e[90]||(e[90]=ae(()=>{},["stop"]))},[t("div",md,[t("div",bd,[d(o(Jt),{class:"h-5 w-5 text-zinc-500 dark:text-white","aria-hidden":"true"}),e[245]||(e[245]=t("h2",{id:"pagarme-billing-sidebar-title",class:"text-lg font-semibold text-zinc-900 dark:text-white"}," Cobrança — endereço (Pagar.me / Efí) ",-1))]),t("button",{type:"button",class:"rounded-lg p-2 text-zinc-500 transition hover:bg-zinc-100 hover:text-zinc-700 dark:text-zinc-400 dark:hover:bg-zinc-800 dark:hover:text-white","aria-label":"Fechar",onClick:e[79]||(e[79]=a=>he.value=!1)},[d(o(rt),{class:"h-5 w-5"})])]),t("div",xd,[e[255]||(e[255]=t("p",{class:"text-sm text-zinc-600 dark:text-zinc-400"},[c(" Quando usar "),t("strong",null,"Pagar.me"),c(" ou "),t("strong",null,"Efí"),c(" no cartão e/ou no boleto, defina se o checkout pede o endereço do cliente ou usa o endereço da empresa (fatura/antifraude). No modo empresa, preencha o endereço abaixo (CEP com 8 dígitos, UF com 2 letras). ")],-1)),t("div",yd,[e[248]||(e[248]=t("p",{class:"text-xs font-medium text-zinc-700 dark:text-zinc-300"},"Modo no checkout",-1)),t("label",vd,[x(t("input",{"onUpdate:modelValue":e[80]||(e[80]=a=>o(r).pagarme_billing.mode=a),type:"radio",class:"mt-0.5",value:"customer"},null,512),[[St,o(r).pagarme_billing.mode]]),e[246]||(e[246]=t("span",null,[t("span",{class:"text-sm font-medium text-zinc-800 dark:text-zinc-200"},"Solicitar endereço do cliente"),t("span",{class:"mt-0.5 block text-xs text-zinc-500 dark:text-zinc-400"},"O checkout exibe o bloco de CEP/endereço.")],-1))]),t("label",fd,[x(t("input",{"onUpdate:modelValue":e[81]||(e[81]=a=>o(r).pagarme_billing.mode=a),type:"radio",class:"mt-0.5",value:"company"},null,512),[[St,o(r).pagarme_billing.mode]]),e[247]||(e[247]=t("span",null,[t("span",{class:"text-sm font-medium text-zinc-800 dark:text-zinc-200"},"Usar endereço da empresa"),t("span",{class:"mt-0.5 block text-xs text-zinc-500 dark:text-zinc-400"},"O checkout não pede endereço; usamos os dados abaixo na cobrança.")],-1))])]),o(r).errors["pagarme_billing.company_address"]?(s(),l("p",gd,p(o(r).errors["pagarme_billing.company_address"]),1)):m("",!0),e[256]||(e[256]=t("p",{class:"text-xs font-medium text-zinc-700 dark:text-zinc-300"},"Endereço da empresa",-1)),t("div",null,[e[249]||(e[249]=t("label",{class:"mb-1.5 block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"CEP",-1)),t("div",_d,[t("input",{value:o(r).pagarme_billing.company_address.zipcode,type:"text",inputmode:"numeric",maxlength:"9",placeholder:"00000-000",class:g(U),onInput:ko},null,40,kd),d(E,{type:"button",variant:"outline",disabled:xt.value||(o(r).pagarme_billing.company_address.zipcode||"").replace(/\D/g,"").length<8,onClick:zo},{default:v(()=>[xt.value?(s(),L(o(He),{key:0,class:"h-4 w-4 animate-spin"})):(s(),l("span",zd,"Buscar"))]),_:1},8,["disabled"])]),Te.value?(s(),l("p",hd,p(Te.value),1)):m("",!0)]),t("div",null,[e[250]||(e[250]=t("label",{class:"mb-1.5 block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Rua",-1)),x(t("input",{"onUpdate:modelValue":e[82]||(e[82]=a=>o(r).pagarme_billing.company_address.street=a),type:"text",class:g(U)},null,512),[[$,o(r).pagarme_billing.company_address.street]])]),t("div",wd,[t("div",null,[e[251]||(e[251]=t("label",{class:"mb-1.5 block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Número",-1)),x(t("input",{"onUpdate:modelValue":e[83]||(e[83]=a=>o(r).pagarme_billing.company_address.number=a),type:"text",class:g(U)},null,512),[[$,o(r).pagarme_billing.company_address.number]])]),t("div",null,[e[252]||(e[252]=t("label",{class:"mb-1.5 block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"UF",-1)),x(t("input",{"onUpdate:modelValue":e[84]||(e[84]=a=>o(r).pagarme_billing.company_address.state=a),type:"text",maxlength:"2",class:g(["uppercase",U]),onBlur:e[85]||(e[85]=a=>o(r).pagarme_billing.company_address.state=(o(r).pagarme_billing.company_address.state||"").toUpperCase().slice(0,2))},null,544),[[$,o(r).pagarme_billing.company_address.state]])])]),t("div",null,[e[253]||(e[253]=t("label",{class:"mb-1.5 block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Bairro",-1)),x(t("input",{"onUpdate:modelValue":e[86]||(e[86]=a=>o(r).pagarme_billing.company_address.neighborhood=a),type:"text",class:g(U)},null,512),[[$,o(r).pagarme_billing.company_address.neighborhood]])]),t("div",null,[e[254]||(e[254]=t("label",{class:"mb-1.5 block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Cidade",-1)),x(t("input",{"onUpdate:modelValue":e[87]||(e[87]=a=>o(r).pagarme_billing.company_address.city=a),type:"text",class:g(U)},null,512),[[$,o(r).pagarme_billing.company_address.city]])])]),t("div",Cd,[d(E,{type:"button",class:"flex-1",disabled:o(r).processing,onClick:e[88]||(e[88]=a=>{Ee(),he.value=!1})},{default:v(()=>[...e[257]||(e[257]=[c(" Salvar ",-1)])]),_:1},8,["disabled"]),d(E,{type:"button",variant:"outline",class:"flex-1",onClick:e[89]||(e[89]=a=>he.value=!1)},{default:v(()=>[...e[258]||(e[258]=[c("Fechar",-1)])]),_:1})])])):m("",!0)]),_:1})])),t("section",$d,[e[259]||(e[259]=t("div",{class:"border-b border-zinc-200/80 bg-gradient-to-r from-zinc-50/90 to-zinc-100/50 px-6 py-5 dark:from-zinc-800/80 dark:to-zinc-800/50"},[t("h2",{class:"text-base font-semibold text-zinc-900 dark:text-white"},"Pixels de conversão"),t("p",{class:"mt-1 text-sm text-zinc-500 dark:text-zinc-400"}," Pixels vinculados a este produto (configurados em Integrações). ")],-1)),t("div",Sd,[d(Xn,{integrations:k.product_pixel_integrations},null,8,["integrations"])])]),t("div",Pd,[d(E,{type:"submit",disabled:o(r).processing},{default:v(()=>[...e[260]||(e[260]=[c("Salvar alterações",-1)])]),_:1},8,["disabled"]),d(o(Y),{href:"/produtos",class:"inline-flex items-center rounded-xl border border-zinc-200 px-4 py-2.5 text-sm font-medium text-zinc-700 transition hover:bg-zinc-50 dark:border-zinc-600 dark:text-zinc-300 dark:hover:bg-zinc-800"},{default:v(()=>[...e[261]||(e[261]=[c(" Cancelar ",-1)])]),_:1})])],32)):m("",!0),H.value==="email"?(s(),l("form",{key:2,class:"mx-auto w-full max-w-3xl space-y-8 xl:max-w-6xl",onSubmit:ae(Ee,["prevent"])},[t("div",Vd,[t("section",Ud,[e[272]||(e[272]=t("div",{class:"border-b border-zinc-200/80 bg-gradient-to-r from-zinc-50/90 to-zinc-100/50 px-6 py-5 dark:from-zinc-800/80 dark:to-zinc-800/50"},[t("h2",{class:"text-base font-semibold text-zinc-900 dark:text-white"},"Template do e-mail de acesso"),t("p",{class:"mt-1 text-sm text-zinc-500 dark:text-zinc-400"}," Personalize o e-mail enviado ao cliente após a compra. Use os placeholders; eles serão substituídos pelos dados reais no envio. ")],-1)),t("div",jd,[t("div",null,[e[266]||(e[266]=t("label",{class:"mb-2 block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Logo do e-mail",-1)),t("div",Ad,[t("div",{class:"flex flex-col items-center justify-center rounded-xl border-2 border-dashed border-zinc-300 bg-zinc-50 dark:border-zinc-600 dark:bg-zinc-800/80 w-full sm:w-44 h-32 shrink-0 cursor-pointer transition hover:border-[var(--color-primary)] hover:bg-[var(--color-primary)]/5",onClick:e[92]||(e[92]=a=>bt.value?.click())},[t("input",{ref_key:"logoInputRef",ref:bt,type:"file",accept:"image/*",class:"hidden",onChange:Ta},null,544),Tt.value?(s(),l(z,{key:0},[d(o(He),{class:"h-8 w-8 text-[var(--color-primary)] animate-spin"}),e[262]||(e[262]=t("span",{class:"mt-2 text-xs text-zinc-500"},"Enviando...",-1))],64)):o(r).email_template.logo_url?(s(),l(z,{key:1},[t("img",{src:o(r).email_template.logo_url,alt:"Logo",class:"max-h-20 w-auto object-contain px-2",onError:e[91]||(e[91]=a=>a.target.style.display="none")},null,40,Ed),e[263]||(e[263]=t("span",{class:"mt-2 text-xs text-zinc-500"},"Clique para trocar",-1))],64)):(s(),l(z,{key:2},[d(o(za),{class:"h-8 w-8 text-zinc-400 dark:text-zinc-500"}),e[264]||(e[264]=t("span",{class:"mt-2 text-xs text-zinc-500"},"Clique para enviar",-1))],64))]),e[265]||(e[265]=t("p",{class:"text-xs text-zinc-500 dark:text-zinc-400 sm:pt-2"},"PNG ou JPG, até 2 MB. Exibida no topo do e-mail.",-1))]),mt.value?(s(),l("p",Id,p(mt.value),1)):m("",!0)]),t("div",null,[e[267]||(e[267]=t("label",{class:"mb-1.5 block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Nome do remetente (opcional)",-1)),x(t("input",{"onUpdate:modelValue":e[93]||(e[93]=a=>o(r).email_template.from_name=a),type:"text",placeholder:"Ex: Minha Marca",class:g(U)},null,512),[[$,o(r).email_template.from_name]]),e[268]||(e[268]=t("p",{class:"mt-1 text-xs text-zinc-500 dark:text-zinc-400"},"Se vazio, usa o nome das Configurações gerais.",-1))]),t("div",null,[e[269]||(e[269]=t("label",{class:"mb-1.5 block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Assunto do e-mail",-1)),x(t("input",{"onUpdate:modelValue":e[94]||(e[94]=a=>o(r).email_template.subject=a),type:"text",placeholder:"Seu acesso a {nome_produto}",class:g(U)},null,512),[[$,o(r).email_template.subject]])]),t("div",null,[e[270]||(e[270]=t("label",{class:"mb-1.5 block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Mensagem (texto)",-1)),x(t("textarea",{"onUpdate:modelValue":e[95]||(e[95]=a=>o(r).email_template.body_text=a),rows:"14",class:g(U),placeholder:"Digite a mensagem (texto simples)..."},null,512),[[$,o(r).email_template.body_text]]),e[271]||(e[271]=we('

Placeholders: {nome_cliente}, {nome_produto}, {link_acesso}, {email_cliente}, {senha} (preenchido apenas para área de membros quando uma senha é enviada ao cliente).

',1))])])]),t("section",Rd,[t("div",Md,[t("div",Ld,[e[273]||(e[273]=t("div",null,[t("h2",{class:"text-base font-semibold text-zinc-900 dark:text-white"},"Recuperação de carrinho (e-mail)"),t("p",{class:"mt-1 text-sm text-zinc-500 dark:text-zinc-400"}," Envia lembretes automáticos para sessões abandonadas e pedidos pendentes (PIX/Boleto) nos tempos de 10m, 5h e 24h. ")],-1)),d(me,{modelValue:o(r).cart_recovery_email.enabled,"onUpdate:modelValue":e[96]||(e[96]=a=>o(r).cart_recovery_email.enabled=a)},null,8,["modelValue"])])]),t("div",Nd,[e[283]||(e[283]=we('

Placeholders disponíveis: {nome_cliente}, {email_cliente}, {nome_produto}, {valor}, {link_checkout}

',1)),t("div",Td,[e[276]||(e[276]=t("div",{class:"flex items-center justify-between gap-3"},[t("h3",{class:"text-sm font-semibold text-zinc-900 dark:text-white"},"Etapa 1 — 10 minutos")],-1)),t("div",null,[e[274]||(e[274]=t("label",{class:"mb-1.5 block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Assunto",-1)),x(t("input",{"onUpdate:modelValue":e[97]||(e[97]=a=>o(r).cart_recovery_email.stages["10m"].subject=a),disabled:!o(r).cart_recovery_email.enabled,type:"text",class:g(U),placeholder:"Você ainda quer garantir {nome_produto}?"},null,8,Od),[[$,o(r).cart_recovery_email.stages["10m"].subject]])]),t("div",null,[e[275]||(e[275]=t("label",{class:"mb-1.5 block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Mensagem (texto)",-1)),x(t("textarea",{"onUpdate:modelValue":e[98]||(e[98]=a=>o(r).cart_recovery_email.stages["10m"].body_text=a),disabled:!o(r).cart_recovery_email.enabled,rows:"10",class:g(U),placeholder:"Digite a mensagem (texto simples)..."},null,8,Bd),[[$,o(r).cart_recovery_email.stages["10m"].body_text]])])]),t("div",Dd,[e[279]||(e[279]=t("div",{class:"flex items-center justify-between gap-3"},[t("h3",{class:"text-sm font-semibold text-zinc-900 dark:text-white"},"Etapa 2 — 5 horas")],-1)),t("div",null,[e[277]||(e[277]=t("label",{class:"mb-1.5 block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Assunto",-1)),x(t("input",{"onUpdate:modelValue":e[99]||(e[99]=a=>o(r).cart_recovery_email.stages["5h"].subject=a),disabled:!o(r).cart_recovery_email.enabled,type:"text",class:g(U),placeholder:"Última chance de garantir {nome_produto}"},null,8,qd),[[$,o(r).cart_recovery_email.stages["5h"].subject]])]),t("div",null,[e[278]||(e[278]=t("label",{class:"mb-1.5 block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Mensagem (texto)",-1)),x(t("textarea",{"onUpdate:modelValue":e[100]||(e[100]=a=>o(r).cart_recovery_email.stages["5h"].body_text=a),disabled:!o(r).cart_recovery_email.enabled,rows:"10",class:g(U),placeholder:"Digite a mensagem (texto simples)..."},null,8,Fd),[[$,o(r).cart_recovery_email.stages["5h"].body_text]])])]),t("div",Gd,[e[282]||(e[282]=t("div",{class:"flex items-center justify-between gap-3"},[t("h3",{class:"text-sm font-semibold text-zinc-900 dark:text-white"},"Etapa 3 — 24 horas")],-1)),t("div",null,[e[280]||(e[280]=t("label",{class:"mb-1.5 block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Assunto",-1)),x(t("input",{"onUpdate:modelValue":e[101]||(e[101]=a=>o(r).cart_recovery_email.stages["24h"].subject=a),disabled:!o(r).cart_recovery_email.enabled,type:"text",class:g(U),placeholder:"Seu link para {nome_produto} (caso ainda queira)"},null,8,Xd),[[$,o(r).cart_recovery_email.stages["24h"].subject]])]),t("div",null,[e[281]||(e[281]=t("label",{class:"mb-1.5 block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Mensagem (texto)",-1)),x(t("textarea",{"onUpdate:modelValue":e[102]||(e[102]=a=>o(r).cart_recovery_email.stages["24h"].body_text=a),disabled:!o(r).cart_recovery_email.enabled,rows:"10",class:g(U),placeholder:"Digite a mensagem (texto simples)..."},null,8,Hd),[[$,o(r).cart_recovery_email.stages["24h"].body_text]])])])])]),t("section",Wd,[e[284]||(e[284]=t("div",{class:"border-b border-zinc-200/80 bg-zinc-50/80 px-6 py-4 dark:border-zinc-700/80 dark:bg-zinc-800/50"},[t("h2",{class:"text-base font-semibold text-zinc-900 dark:text-white"},"Preview do e-mail"),t("p",{class:"mt-0.5 text-sm text-zinc-500 dark:text-zinc-400"},"Como o e-mail será exibido para o cliente.")],-1)),t("div",Qd,[d(Ln,{"logo-url":o(r).email_template.logo_url,subject:o(r).email_template.subject,"body-html":(o(r).email_template.body_text||"").replace(/&/g,"&").replace(//g,">").split("\\n\\n").filter(a=>a.trim()).map(a=>`

${a.replace(/\\n/g,"
")}

`).join(""),"from-name":o(r).email_template.from_name},null,8,["logo-url","subject","body-html","from-name"])])])]),t("div",Jd,[d(E,{type:"submit",disabled:o(r).processing},{default:v(()=>[...e[285]||(e[285]=[c("Salvar alterações",-1)])]),_:1},8,["disabled"]),d(o(Y),{href:"/produtos",class:"inline-flex items-center rounded-xl border border-zinc-200 px-4 py-2.5 text-sm font-medium text-zinc-700 transition hover:bg-zinc-50 dark:border-zinc-600 dark:text-zinc-300 dark:hover:bg-zinc-800"},{default:v(()=>[...e[286]||(e[286]=[c(" Cancelar ",-1)])]),_:1})])],32)):m("",!0),H.value==="sms"?(s(),l("form",{key:3,class:"w-full space-y-6",onSubmit:ae(Ee,["prevent"])},[t("div",Kd,[e[288]||(e[288]=c(" Os SMS são enviados pela integração ",-1)),d(o(Y),{href:"/integracoes?tab=apps",class:"font-medium text-[var(--color-primary)] underline"},{default:v(()=>[...e[287]||(e[287]=[c("IntegraX",-1)])]),_:1}),e[289]||(e[289]=c(" (token ativo em Integrações). Mensagens limitadas a 160 caracteres. ",-1))]),pt.value?(s(),l("div",Yd,p(pt.value),1)):m("",!0),t("section",Zd,[t("div",eu,[t("div",tu,[e[290]||(e[290]=t("div",null,[t("h2",{class:"text-base font-semibold text-zinc-900 dark:text-white"},"Envio de acesso"),t("p",{class:"mt-1 text-sm text-zinc-500 dark:text-zinc-400"},"SMS após compra aprovada com link de acesso.")],-1)),d(me,{modelValue:o(r).sms.access_delivery.enabled,"onUpdate:modelValue":e[103]||(e[103]=a=>o(r).sms.access_delivery.enabled=a)},null,8,["modelValue"])])]),t("div",au,[x(t("textarea",{"onUpdate:modelValue":e[104]||(e[104]=a=>o(r).sms.access_delivery.body_text=a),disabled:!o(r).sms.access_delivery.enabled,rows:"4",maxlength:"200",class:g(U),placeholder:"Ola {nome_cliente}! Seu acesso: {link_acesso}"},null,8,ou),[[$,o(r).sms.access_delivery.body_text]]),t("p",{class:g(["text-xs",Ne(o(r).sms.access_delivery.body_text,o(r).sms.access_delivery.enabled)?"text-red-600":"text-zinc-500"])},p(ct(o(r).sms.access_delivery.body_text))+"/"+p(Ut)+" caracteres ",3),e[291]||(e[291]=we('

Placeholders: {nome_cliente}, {nome_produto}, {link_acesso}, {senha}, {email_cliente}

',1))])]),t("section",ru,[t("div",nu,[t("div",su,[e[292]||(e[292]=t("div",null,[t("h2",{class:"text-base font-semibold text-zinc-900 dark:text-white"},"PIX gerado"),t("p",{class:"mt-1 text-sm text-zinc-500 dark:text-zinc-400"},"SMS quando o cliente gera um PIX no checkout.")],-1)),d(me,{modelValue:o(r).sms.pix_generated.enabled,"onUpdate:modelValue":e[105]||(e[105]=a=>o(r).sms.pix_generated.enabled=a)},null,8,["modelValue"])])]),t("div",lu,[x(t("textarea",{"onUpdate:modelValue":e[106]||(e[106]=a=>o(r).sms.pix_generated.body_text=a),disabled:!o(r).sms.pix_generated.enabled,rows:"4",maxlength:"200",class:g(U),placeholder:"PIX de {nome_produto}. Pague: {link_pix}"},null,8,iu),[[$,o(r).sms.pix_generated.body_text]]),t("p",{class:g(["text-xs",Ne(o(r).sms.pix_generated.body_text,o(r).sms.pix_generated.enabled)?"text-red-600":"text-zinc-500"])},p(ct(o(r).sms.pix_generated.body_text))+"/"+p(Ut)+" caracteres ",3),e[293]||(e[293]=t("p",{class:"text-xs text-zinc-500"},[c(" Placeholders: "),t("code",{class:"rounded bg-zinc-100 px-1 dark:bg-zinc-700"},"{link_pix}"),c(", "),t("code",{class:"rounded bg-zinc-100 px-1 dark:bg-zinc-700"},"{nome_produto}"),c(", "),t("code",{class:"rounded bg-zinc-100 px-1 dark:bg-zinc-700"},"{valor}")],-1))])]),t("section",du,[t("div",uu,[t("div",cu,[e[294]||(e[294]=t("div",null,[t("h2",{class:"text-base font-semibold text-zinc-900 dark:text-white"},"Recuperação de carrinho (SMS)"),t("p",{class:"mt-1 text-sm text-zinc-500 dark:text-zinc-400"},"Etapas configuráveis para sessões abandonadas e pedidos pendentes.")],-1)),d(me,{modelValue:o(r).sms.cart_recovery.enabled,"onUpdate:modelValue":e[107]||(e[107]=a=>o(r).sms.cart_recovery.enabled=a)},null,8,["modelValue"])])]),t("div",pu,[t("div",null,[e[295]||(e[295]=t("label",{class:"mb-1.5 block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Por quanto tempo tentar recuperar?",-1)),e[296]||(e[296]=t("p",{class:"mb-2 text-xs text-zinc-500 dark:text-zinc-400"}," Após esse prazo, nenhum SMS de recuperação será enviado para o mesmo abandono. ",-1)),t("select",{value:Number(o(r).sms.cart_recovery.deadline_hours)||48,disabled:!o(r).sms.cart_recovery.enabled,class:g([U,"max-w-xs"]),onChange:e[108]||(e[108]=a=>se(a.target.value))},[(s(!0),l(z,null,I(ja.value,a=>(s(),l("option",{key:a.hours,value:a.hours},p(a.label),9,bu))),128))],40,mu)]),(s(!0),l(z,null,I(o(r).sms.cart_recovery.stages,(a,i)=>(s(),l("div",{key:`sms-stage-${i}-${a.delay_minutes}`,class:"panel-card-sm space-y-4 dark:bg-zinc-900/20"},[t("div",xu,[t("div",null,[t("h3",yu,"Etapa "+p(i+1),1),t("p",vu,p(ze(a)),1)]),o(r).sms.cart_recovery.stages.length>1?(s(),l("button",{key:0,type:"button",class:"text-xs font-medium text-red-600 hover:underline",disabled:!o(r).sms.cart_recovery.enabled,onClick:y=>Ea(i)}," Remover ",8,fu)):m("",!0)]),t("div",null,[e[299]||(e[299]=t("label",{class:"mb-1.5 block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Quando enviar?",-1)),t("div",gu,[x(t("input",{"onUpdate:modelValue":y=>o(r).sms.cart_recovery.stages[i].delay_value=y,disabled:!o(r).sms.cart_recovery.enabled,type:"number",min:"1",class:g([U,"w-20 shrink-0"]),onInput:y=>re(i)},null,40,_u),[[$,o(r).sms.cart_recovery.stages[i].delay_value,void 0,{number:!0}]]),x(t("select",{"onUpdate:modelValue":y=>o(r).sms.cart_recovery.stages[i].delay_unit=y,disabled:!o(r).sms.cart_recovery.enabled,class:g([U,"min-w-[7rem] flex-1"]),onChange:y=>re(i)},[(s(),l(z,null,I(R,y=>t("option",{key:y.id,value:y.id},p(y.label),9,zu)),64))],40,ku),[[Z,o(r).sms.cart_recovery.stages[i].delay_unit]]),e[297]||(e[297]=t("span",{class:"text-xs text-zinc-500 dark:text-zinc-400"},"após o abandono",-1))]),t("div",hu,[e[298]||(e[298]=t("span",{class:"w-full text-xs text-zinc-500 dark:text-zinc-400"},"Atalhos:",-1)),(s(),l(z,null,I(M,y=>t("button",{key:y.minutes,type:"button",disabled:!o(r).sms.cart_recovery.enabled,class:g(["rounded-lg px-2.5 py-1 text-xs font-medium transition",le(a,y.minutes)?"bg-[var(--color-primary)] text-white shadow-sm":"bg-zinc-100 text-zinc-700 hover:bg-zinc-200 dark:bg-zinc-800 dark:text-zinc-300 dark:hover:bg-zinc-700"]),onClick:q=>ne(i,y.minutes)},p(y.label),11,wu)),64))])]),t("div",null,[e[300]||(e[300]=t("label",{class:"mb-1.5 block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Mensagem do SMS",-1)),x(t("textarea",{"onUpdate:modelValue":y=>o(r).sms.cart_recovery.stages[i].body_text=y,disabled:!o(r).sms.cart_recovery.enabled,rows:"3",maxlength:"200",class:g(U),placeholder:"Ex.: Ola {nome_cliente}! Retome {nome_produto}: {link_checkout}"},null,8,Cu),[[$,o(r).sms.cart_recovery.stages[i].body_text]]),t("p",{class:g(["mt-1 text-xs",Ne(a.body_text,o(r).sms.cart_recovery.enabled)?"text-red-600":"text-zinc-500"])},p(ct(a.body_text))+"/"+p(Ut)+" caracteres ",3)])]))),128)),t("button",{type:"button",class:"text-sm font-medium text-[var(--color-primary)] hover:underline",disabled:!o(r).sms.cart_recovery.enabled,onClick:Aa}," + Adicionar etapa ",8,$u),e[301]||(e[301]=t("p",{class:"text-xs text-zinc-500"},[c(" Placeholders: "),t("code",{class:"rounded bg-zinc-100 px-1 dark:bg-zinc-700"},"{nome_cliente}"),c(", "),t("code",{class:"rounded bg-zinc-100 px-1 dark:bg-zinc-700"},"{nome_produto}"),c(", "),t("code",{class:"rounded bg-zinc-100 px-1 dark:bg-zinc-700"},"{link_checkout}")],-1))])]),t("div",Su,[d(E,{type:"submit",disabled:o(r).processing||!!pt.value},{default:v(()=>[...e[302]||(e[302]=[c("Salvar alterações",-1)])]),_:1},8,["disabled"]),d(o(Y),{href:"/produtos",class:"inline-flex items-center rounded-xl border border-zinc-200 px-4 py-2.5 text-sm font-medium text-zinc-700 transition hover:bg-zinc-50 dark:border-zinc-600 dark:text-zinc-300 dark:hover:bg-zinc-800"},{default:v(()=>[...e[303]||(e[303]=[c(" Cancelar ",-1)])]),_:1})])],32)):m("",!0),H.value==="order_bump"?(s(),l(z,{key:4},[t("div",Pu,[t("div",Vu,[t("div",Uu,[t("div",ju,[e[305]||(e[305]=t("div",null,[t("h2",{class:"text-base font-semibold text-zinc-900 dark:text-white"},"Order Bump"),t("p",{class:"mt-1 text-sm text-zinc-500 dark:text-zinc-400"}," Ofereça outros produtos no checkout para o cliente comprar junto. Escolha o produto, personalize título, descrição e preço. ")],-1)),d(E,{type:"button",class:"inline-flex items-center gap-2 rounded-xl",onClick:ca},{default:v(()=>[d(o(tt),{class:"h-4 w-4"}),e[304]||(e[304]=c(" Adicionar order bump ",-1))]),_:1})])])]),!k.produto.order_bumps||!k.produto.order_bumps.length?(s(),l("div",Au,[t("span",Eu,[d(o($t),{class:"h-7 w-7"})]),e[307]||(e[307]=t("p",{class:"mt-4 font-medium text-zinc-700 dark:text-zinc-300"},"Nenhum order bump",-1)),e[308]||(e[308]=t("p",{class:"mt-1 max-w-sm text-sm text-zinc-500 dark:text-zinc-400"}," Adicione produtos que aparecerão no checkout como oferta especial para comprar junto. ",-1)),d(E,{type:"button",class:"mt-4 rounded-xl",onClick:ca},{default:v(()=>[d(o(tt),{class:"mr-2 h-4 w-4"}),e[306]||(e[306]=c(" Adicionar order bump ",-1))]),_:1})])):(s(),l("ul",Iu,[(s(!0),l(z,null,I(k.produto.order_bumps,a=>(s(),l("li",{key:a.id,class:"panel-card flex flex-col overflow-hidden transition hover:border-zinc-200 dark:hover:border-zinc-600"},[t("div",Ru,[t("div",Mu,[a.target_image_url?(s(),l("img",{key:0,src:a.target_image_url,alt:a.target_name,class:"h-full w-full object-cover"},null,8,Lu)):(s(),l("div",Nu,[d(o($t),{class:"h-8 w-8"})]))]),t("div",Tu,[t("h3",Ou,p(a.title),1),t("p",Bu,"Produto: "+p(a.target_name),1),a.description?(s(),l("p",Du,p(a.description),1)):m("",!0),t("p",qu,[a.is_free?(s(),l("span",Fu," Grátis ")):(s(),l(z,{key:1},[c(p(a.price_override!=null?`R$ ${Number(a.price_override).toFixed(2)}`:`R$ ${Number(a.effective_amount_brl).toFixed(2)}`),1)],64)),t("span",Gu," · CTA: "+p(a.cta_title),1)])]),t("div",Xu,[d(E,{size:"sm",variant:"outline",class:"h-9 w-9 p-0",onClick:i=>eo(a)},{default:v(()=>[d(o(Xe),{class:"h-4 w-4"})]),_:1},8,["onClick"]),d(E,{size:"sm",variant:"outline",class:"h-9 w-9 p-0 text-red-600 hover:bg-red-50 dark:text-red-400 dark:hover:bg-red-900/20",onClick:i=>ao(a)},{default:v(()=>[d(o(Vt),{class:"h-4 w-4"})]),_:1},8,["onClick"])])])]))),128))]))]),(s(),L(ot,{to:"body"},[d(Fe,{"enter-active-class":"transition duration-200 ease-out","enter-from-class":"opacity-0","enter-to-class":"opacity-100","leave-active-class":"transition duration-150 ease-in","leave-from-class":"opacity-100","leave-to-class":"opacity-0"},{default:v(()=>[kt.value?(s(),l("div",{key:0,class:"fixed inset-0 z-50 flex items-center justify-center p-4","aria-modal":"true",role:"dialog",onKeydown:ga(Be,["escape"])},[t("div",{class:"absolute inset-0 bg-zinc-900/60 dark:bg-zinc-950/70","aria-hidden":"true",onClick:Be}),t("div",Hu,[t("div",Wu,[t("h3",Qu,p(je.value?"Editar order bump":"Adicionar order bump"),1),t("button",{type:"button",class:"rounded-lg p-1.5 text-zinc-500 transition hover:bg-zinc-100 hover:text-zinc-700 dark:hover:bg-zinc-700 dark:hover:text-zinc-300","aria-label":"Fechar",onClick:Be},[d(o(rt),{class:"h-5 w-5"})])]),t("form",{class:"mt-5 space-y-4",onSubmit:ae(to,["prevent"])},[t("div",null,[e[310]||(e[310]=t("label",{class:"mb-1.5 block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Produto",-1)),x(t("select",{"onUpdate:modelValue":e[109]||(e[109]=a=>o(P).target_product_id=a),required:"",class:g([U,"w-full"]),onChange:Za},[e[309]||(e[309]=t("option",{value:""},"Selecione o produto",-1)),(s(!0),l(z,null,I(k.produto.available_products_for_bump||[],a=>(s(),l("option",{key:a.id,value:a.id},p(Ya(a)),9,Ju))),128))],544),[[Z,o(P).target_product_id]])]),ye.value&&ye.value.billing_type!=="subscription"&&ye.value.offers&&ye.value.offers.length?(s(),l("div",Ku,[e[312]||(e[312]=t("label",{class:"mb-1.5 block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Oferta (opcional)",-1)),x(t("select",{"onUpdate:modelValue":e[110]||(e[110]=a=>o(P).target_product_offer_id=a),class:g([U,"w-full"])},[e[311]||(e[311]=t("option",{value:""},"Preço base do produto",-1)),(s(!0),l(z,null,I(ye.value.offers,a=>(s(),l("option",{key:a.id,value:a.id},p(a.name)+" — "+p(a.currency)+" "+p(Number(a.price).toFixed(2)),9,Yu))),128))],512),[[Z,o(P).target_product_offer_id]])])):m("",!0),ye.value&&ye.value.billing_type==="subscription"&&ye.value.subscription_plans&&ye.value.subscription_plans.length?(s(),l("div",Zu,[e[314]||(e[314]=t("label",{class:"mb-1.5 block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Plano (opcional)",-1)),x(t("select",{"onUpdate:modelValue":e[111]||(e[111]=a=>o(P).target_subscription_plan_id=a),class:g([U,"w-full"])},[e[313]||(e[313]=t("option",{value:""},"Menor preço entre os planos",-1)),(s(!0),l(z,null,I(ye.value.subscription_plans,a=>(s(),l("option",{key:a.id,value:a.id},p(a.name)+" — "+p(a.currency)+" "+p(Number(a.price).toFixed(2)),9,ec))),128))],512),[[Z,o(P).target_subscription_plan_id]])])):m("",!0),t("div",null,[e[315]||(e[315]=t("label",{class:"mb-1.5 block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Título",-1)),x(t("input",{"onUpdate:modelValue":e[112]||(e[112]=a=>o(P).title=a),type:"text",required:"",class:g(U),placeholder:"Ex: Módulo Extra"},null,512),[[$,o(P).title]]),o(P).errors.title?(s(),l("p",tc,p(o(P).errors.title),1)):m("",!0)]),t("div",null,[e[316]||(e[316]=t("label",{class:"mb-1.5 block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Descrição",-1)),x(t("textarea",{"onUpdate:modelValue":e[113]||(e[113]=a=>o(P).description=a),rows:"3",class:g(U),placeholder:"Descreva o benefício da oferta"},null,512),[[$,o(P).description]])]),t("div",ac,[d(me,{modelValue:o(P).is_free,"onUpdate:modelValue":e[114]||(e[114]=a=>o(P).is_free=a),label:"Grátis (pré-selecionado no checkout)"},null,8,["modelValue"]),e[317]||(e[317]=t("p",{class:"mt-1.5 text-xs text-zinc-500 dark:text-zinc-400"}," O cliente vê “Grátis” no checkout e o bump já vem marcado. O acesso ao produto é liberado junto com a compra principal. ",-1))]),o(P).is_free?m("",!0):(s(),l("div",oc,[e[318]||(e[318]=t("label",{class:"mb-1.5 block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Preço com desconto (opcional)",-1)),x(t("input",{"onUpdate:modelValue":e[115]||(e[115]=a=>o(P).price_override=a),type:"number",step:"0.01",min:"0",class:g(U),placeholder:"Deixe vazio para usar o preço do produto"},null,512),[[$,o(P).price_override]]),e[319]||(e[319]=t("p",{class:"mt-1 text-xs text-zinc-500 dark:text-zinc-400"},"Se não preencher, será usado o preço do produto ou da oferta selecionada.",-1))])),t("div",null,[e[320]||(e[320]=t("label",{class:"mb-1.5 block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Texto do botão / CTA",-1)),x(t("input",{"onUpdate:modelValue":e[116]||(e[116]=a=>o(P).cta_title=a),type:"text",required:"",class:g(U),placeholder:"Ex: Sim, quero esta oferta!"},null,512),[[$,o(P).cta_title]])]),t("div",rc,[d(E,{type:"submit",disabled:o(P).processing},{default:v(()=>[c(p(je.value?"Atualizar":"Adicionar"),1)]),_:1},8,["disabled"]),d(E,{type:"button",variant:"outline",onClick:Be},{default:v(()=>[...e[321]||(e[321]=[c("Cancelar",-1)])]),_:1})])],32)])],32)):m("",!0)]),_:1})]))],64)):m("",!0),H.value==="upsell_downsell"?(s(),l("div",nc,[t("div",sc,[t("div",lc,[t("div",ic,[e[325]||(e[325]=t("div",null,[t("h2",{class:"text-base font-semibold text-zinc-900 dark:text-white"},"Upsell / Downsell"),t("p",{class:"mt-1 text-sm text-zinc-500 dark:text-zinc-400"}," Ofertas exibidas após a compra aprovada. Upsell: ofertas extras; Downsell: oferta alternativa se o cliente recusar. ")],-1)),t("div",dc,[d(o(Y),{href:`/produtos/${k.produto.id}/upsell-page/edit`,class:"inline-flex items-center gap-2 rounded-xl border border-zinc-300 bg-white px-4 py-2 text-sm font-medium text-zinc-700 transition hover:bg-zinc-50 dark:border-zinc-600 dark:bg-zinc-800 dark:text-zinc-300 dark:hover:bg-zinc-700"},{default:v(()=>[d(o(Xe),{class:"h-4 w-4"}),e[322]||(e[322]=c(" Editar página upsell ",-1))]),_:1},8,["href"]),d(o(Y),{href:`/produtos/${k.produto.id}/downsell-page/edit`,class:"inline-flex items-center gap-2 rounded-xl border border-zinc-300 bg-white px-4 py-2 text-sm font-medium text-zinc-700 transition hover:bg-zinc-50 dark:border-zinc-600 dark:bg-zinc-800 dark:text-zinc-300 dark:hover:bg-zinc-700"},{default:v(()=>[d(o(Xe),{class:"h-4 w-4"}),e[323]||(e[323]=c(" Editar página downsell ",-1))]),_:1},8,["href"]),d(E,{type:"button",class:"rounded-xl",disabled:zt.value,onClick:so},{default:v(()=>[zt.value?(s(),L(o(He),{key:0,class:"mr-2 h-4 w-4 animate-spin"})):m("",!0),e[324]||(e[324]=c(" Salvar configuração ",-1))]),_:1},8,["disabled"])])])])]),t("div",uc,[t("div",null,[d(me,{modelValue:K.upsell.enabled,"onUpdate:modelValue":e[117]||(e[117]=a=>K.upsell.enabled=a),label:"Ativar upsell (após compra aprovada)"},null,8,["modelValue"]),e[332]||(e[332]=t("p",{class:"mt-1 text-xs text-zinc-500 dark:text-zinc-400"},"Exibe ofertas extras antes da página de obrigado.",-1)),K.upsell.enabled?(s(),l(z,{key:0},[e[330]||(e[330]=t("label",{class:"mt-3 block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Ofertas de upsell",-1)),e[331]||(e[331]=t("p",{class:"mt-0.5 text-xs text-zinc-500 dark:text-zinc-400"},"Títulos, cores e textos são editados em « Editar página upsell ».",-1)),(s(!0),l(z,null,I(K.upsell.products,(a,i)=>(s(),l("div",{key:"u-"+i,class:"mt-2 panel-card flex flex-wrap items-end gap-2 p-3"},[t("div",cc,[e[327]||(e[327]=t("label",{class:"mb-0.5 block text-xs font-medium text-zinc-600 dark:text-zinc-400"},"Produto",-1)),x(t("select",{"onUpdate:modelValue":y=>a.product_id=y,class:g([U,"py-2"])},[e[326]||(e[326]=t("option",{value:null},"Selecione",-1)),(s(!0),l(z,null,I(k.produto.products_for_upsell||[],y=>(s(),l("option",{key:y.id,value:y.id},p(y.name),9,mc))),128))],8,pc),[[Z,a.product_id]])]),t("div",bc,[e[329]||(e[329]=t("label",{class:"mb-0.5 block text-xs font-medium text-zinc-600 dark:text-zinc-400"},"Oferta (opcional)",-1)),x(t("select",{"onUpdate:modelValue":y=>a.product_offer_id=y,class:g([U,"py-2"])},[e[328]||(e[328]=t("option",{value:null},"Preço base",-1)),(s(!0),l(z,null,I(k.produto.products_for_upsell||[],y=>(s(),l(z,{key:y.id},[y.id===a.product_id?(s(!0),l(z,{key:0},I(y.offers,q=>(s(),l("option",{key:q.id,value:q.id},p(q.name)+" (R$ "+p(q.price?.toFixed(2))+")",9,yc))),128)):m("",!0)],64))),128))],8,xc),[[Z,a.product_offer_id,void 0,{number:!0}]])]),t("button",{type:"button",class:"rounded-lg border border-red-200 px-2 py-1.5 text-xs font-medium text-red-700 hover:bg-red-50 dark:border-red-800 dark:text-red-400 dark:hover:bg-red-900/30",onClick:y=>K.upsell.products.splice(i,1)},"Remover",8,vc)]))),128)),t("button",{type:"button",class:"mt-2 rounded-xl border-2 border-dashed border-zinc-300 px-3 py-2 text-sm font-medium text-zinc-600 hover:border-[var(--color-primary)] hover:text-[var(--color-primary)] dark:border-zinc-600 dark:text-zinc-400 dark:hover:border-[var(--color-primary)]",onClick:e[118]||(e[118]=a=>K.upsell.products.push({product_id:null,product_offer_id:null,title_override:"",description:"",image_url:"",video_url:""}))},"+ Adicionar oferta")],64)):m("",!0)]),t("div",fc,[d(me,{modelValue:K.downsell.enabled,"onUpdate:modelValue":e[119]||(e[119]=a=>K.downsell.enabled=a),disabled:!K.upsell.enabled,label:"Ativar downsell (após recusar upsell)"},null,8,["modelValue","disabled"]),K.upsell.enabled?(s(),l("p",_c,"Uma oferta alternativa se o cliente recusar o upsell.")):(s(),l("p",gc," Ative o upsell acima para habilitar o downsell. ")),K.downsell.enabled?(s(),l(z,{key:2},[e[337]||(e[337]=t("p",{class:"mt-1 text-xs text-zinc-500 dark:text-zinc-400"},"Títulos, cores e textos são editados em « Editar página downsell ».",-1)),t("div",kc,[t("div",zc,[e[334]||(e[334]=t("label",{class:"mb-0.5 block text-xs font-medium text-zinc-600 dark:text-zinc-400"},"Produto",-1)),x(t("select",{"onUpdate:modelValue":e[120]||(e[120]=a=>K.downsell.product_id=a),class:g([U,"py-2"])},[e[333]||(e[333]=t("option",{value:null},"Selecione",-1)),(s(!0),l(z,null,I(k.produto.products_for_upsell||[],a=>(s(),l("option",{key:a.id,value:a.id},p(a.name),9,hc))),128))],512),[[Z,K.downsell.product_id]])]),t("div",wc,[e[336]||(e[336]=t("label",{class:"mb-0.5 block text-xs font-medium text-zinc-600 dark:text-zinc-400"},"Oferta (opcional)",-1)),x(t("select",{"onUpdate:modelValue":e[121]||(e[121]=a=>K.downsell.product_offer_id=a),class:g([U,"py-2"])},[e[335]||(e[335]=t("option",{value:null},"Preço base",-1)),(s(!0),l(z,null,I(k.produto.products_for_upsell||[],a=>(s(),l(z,{key:a.id},[a.id===K.downsell.product_id?(s(!0),l(z,{key:0},I(a.offers,i=>(s(),l("option",{key:i.id,value:i.id},p(i.name)+" (R$ "+p(i.price?.toFixed(2))+")",9,Cc))),128)):m("",!0)],64))),128))],512),[[Z,K.downsell.product_offer_id,void 0,{number:!0}]])])])],64)):m("",!0)])])])):m("",!0),H.value==="checkout"?(s(),l(z,{key:6},[t("div",$c,[t("div",Sc,[t("div",Pc,[t("div",Vc,[e[339]||(e[339]=t("div",null,[t("h2",{class:"text-base font-semibold text-zinc-900 dark:text-white"},"Checkouts"),t("p",{class:"mt-1 text-sm text-zinc-500 dark:text-zinc-400"}," Ofertas e planos usam o checkout principal por padrão. Crie um checkout exclusivo só quando quiser um link direto para uma oferta ou plano. ")],-1)),t("div",Uc,[Gt.value.length>0?(s(),L(E,{key:0,type:"button",class:"inline-flex items-center gap-2 rounded-xl",onClick:e[122]||(e[122]=a=>Ae.value=!0)},{default:v(()=>[d(o(tt),{class:"h-4 w-4"}),e[338]||(e[338]=c(" Criar novo checkout ",-1))]),_:1})):m("",!0)])])])]),t("div",jc,[(s(!0),l(z,null,I(uo.value,a=>(s(),l("div",{key:a.id,class:"panel-card flex flex-col overflow-hidden transition hover:border-zinc-200 dark:hover:border-zinc-600 dark:hover:border-zinc-500/50"},[t("div",Ac,[t("div",Ec,[t("span",{class:g(["inline-flex rounded-md px-2 py-0.5 text-xs font-medium",a.type==="main"?"bg-[var(--color-primary)]/20 text-[var(--color-primary)]":a.type==="offer"?"bg-emerald-100 text-emerald-700 dark:bg-emerald-900/40 dark:text-emerald-300":"bg-blue-100 text-blue-700 dark:bg-blue-900/40 dark:text-blue-300"])},p(a.type==="main"?"Principal":a.type==="offer"?"Oferta":"Plano"),3),t("span",Ic,p(a.type==="main"?"Preço base":a.label),1)]),a.slug?(s(),l(z,{key:0},[t("p",{class:"truncate font-mono text-xs text-zinc-500 dark:text-zinc-400",title:xe(a.slug)},p(xe(a.slug)),9,Rc),t("div",Mc,[t("button",{type:"button",class:g(["inline-flex items-center gap-1.5 rounded-lg px-2.5 py-1.5 text-xs font-medium transition",ve.value===a.slug?"bg-emerald-100 text-emerald-700 dark:bg-emerald-900/40 dark:text-emerald-300":"bg-zinc-100 text-zinc-700 hover:bg-zinc-200 dark:bg-zinc-700 dark:text-zinc-300 dark:hover:bg-zinc-600"]),onClick:i=>lo(a.slug)},[ve.value===a.slug?(s(),L(o(Zt),{key:0,class:"h-3.5 w-3.5"})):(s(),L(o(ha),{key:1,class:"h-3.5 w-3.5"})),c(" "+p(ve.value===a.slug?"Copiado":"Copiar"),1)],10,Lc),t("a",{href:xe(a.slug),target:"_blank",rel:"noopener noreferrer",class:"inline-flex items-center gap-1.5 rounded-lg border border-zinc-200 px-2.5 py-1.5 text-xs font-medium text-zinc-600 transition hover:bg-zinc-50 dark:border-zinc-600 dark:text-zinc-400 dark:hover:bg-zinc-700"}," Abrir ",8,Nc),d(o(Y),{href:po(a),class:"inline-flex items-center gap-1.5 rounded-lg border border-[var(--color-primary)]/50 bg-[var(--color-primary)]/10 px-2.5 py-1.5 text-xs font-medium text-[var(--color-primary)] transition hover:bg-[var(--color-primary)]/20 dark:border-[var(--color-primary)]/50 dark:bg-[var(--color-primary)]/20 dark:hover:bg-[var(--color-primary)]/30"},{default:v(()=>[d(o(Xe),{class:"h-3.5 w-3.5"}),e[340]||(e[340]=c(" Editar ",-1))]),_:1},8,["href"]),a.type==="offer"||a.type==="plan"?(s(),l("button",{key:0,type:"button",class:"inline-flex items-center gap-1.5 rounded-lg px-2.5 py-1.5 text-xs font-medium text-red-600 transition hover:bg-red-50 dark:text-red-400 dark:hover:bg-red-900/20",onClick:i=>co(a)},[d(o(Vt),{class:"h-3.5 w-3.5"}),e[341]||(e[341]=c(" Excluir ",-1))],8,Tc)):m("",!0)])],64)):(s(),l(z,{key:1},[a.type==="main"?(s(),l(z,{key:0},[e[343]||(e[343]=t("p",{class:"text-xs text-zinc-500 dark:text-zinc-400"},"Salve o produto para gerar o link do checkout.",-1)),d(E,{type:"button",variant:"outline",size:"sm",class:"mt-auto w-fit rounded-lg",onClick:i=>Xt(a)},{default:v(()=>[...e[342]||(e[342]=[c(" Gerar link ",-1)])]),_:1},8,["onClick"])],64)):(s(),l(z,{key:1},[e[345]||(e[345]=t("p",{class:"text-xs text-zinc-500 dark:text-zinc-400"},"Usa o checkout principal.",-1)),u.produto.checkout_slug?(s(),l("p",{key:0,class:"truncate font-mono text-xs text-zinc-400 dark:text-zinc-500",title:xe(u.produto.checkout_slug)},p(xe(u.produto.checkout_slug)),9,Oc)):m("",!0),d(E,{type:"button",variant:"outline",size:"sm",class:"mt-auto w-fit rounded-lg",onClick:i=>Xt(a)},{default:v(()=>[...e[344]||(e[344]=[c(" Criar checkout exclusivo ",-1)])]),_:1},8,["onClick"])],64))],64))])]))),128))])]),(s(),L(ot,{to:"body"},[d(Fe,{"enter-active-class":"transition duration-200 ease-out","enter-from-class":"opacity-0","enter-to-class":"opacity-100","leave-active-class":"transition duration-150 ease-in","leave-from-class":"opacity-100","leave-to-class":"opacity-0"},{default:v(()=>[Ae.value?(s(),l("div",{key:0,class:"fixed inset-0 z-50 flex items-center justify-center p-4","aria-modal":"true",role:"dialog",onKeydown:e[126]||(e[126]=ga(a=>Ae.value=!1,["escape"]))},[t("div",{class:"absolute inset-0 bg-zinc-900/60 dark:bg-zinc-950/70","aria-hidden":"true",onClick:e[123]||(e[123]=a=>Ae.value=!1)}),t("div",Bc,[t("div",Dc,[e[346]||(e[346]=t("h3",{class:"text-lg font-semibold text-zinc-900 dark:text-white"},"Criar novo checkout",-1)),t("button",{type:"button",class:"rounded-lg p-1.5 text-zinc-500 transition hover:bg-zinc-100 hover:text-zinc-700 dark:hover:bg-zinc-700 dark:hover:text-zinc-300","aria-label":"Fechar",onClick:e[124]||(e[124]=a=>Ae.value=!1)},[d(o(rt),{class:"h-5 w-5"})])]),e[349]||(e[349]=t("p",{class:"mt-1 text-sm text-zinc-500 dark:text-zinc-400"}," Crie um link direto para uma oferta ou plano. Caso contrário, eles usam o checkout principal. ",-1)),t("ul",qc,[(s(!0),l(z,null,I(Gt.value,a=>(s(),l("li",{key:a.id,class:"panel-card flex items-center justify-between gap-3 px-4 py-3"},[t("span",Fc,p(a.type==="offer"?`Oferta: ${a.label}`:`Plano: ${a.label}`),1),d(E,{type:"button",size:"sm",class:"shrink-0 rounded-lg",onClick:i=>{Xt(a),Ae.value=!1}},{default:v(()=>[...e[347]||(e[347]=[c(" Criar checkout exclusivo ",-1)])]),_:1},8,["onClick"])]))),128))]),Gt.value.length===0?(s(),l("p",Gc," Todas as ofertas e planos já possuem checkout exclusivo ou usam o principal. ")):m("",!0),t("div",Xc,[d(E,{variant:"outline",class:"rounded-xl",onClick:e[125]||(e[125]=a=>Ae.value=!1)},{default:v(()=>[...e[348]||(e[348]=[c("Fechar",-1)])]),_:1})])])],32)):m("",!0)]),_:1})]))],64)):m("",!0),H.value==="links"?(s(),l("div",Hc,[t("div",Wc,[e[351]||(e[351]=t("div",{class:"absolute right-0 top-0 h-32 w-32 translate-x-8 -translate-y-8 rounded-full bg-[var(--color-primary)]/10 dark:bg-[var(--color-primary)]/20","aria-hidden":"true"},null,-1)),t("div",Qc,[t("span",Jc,[d(o(Ge),{class:"h-6 w-6","aria-hidden":"true"})]),e[350]||(e[350]=t("div",null,[t("h2",{class:"text-lg font-semibold text-zinc-900 dark:text-white"},"Links de checkout"),t("p",{class:"mt-1 max-w-xl text-sm leading-relaxed text-zinc-600 dark:text-zinc-400"}," Compartilhe estes links em campanhas, e-mails ou redes sociais. Cada link leva direto ao checkout correspondente. ")],-1))])]),t("div",Kc,[ba.value.length===0?(s(),l("div",Yc,[t("span",Zc,[d(o(Ge),{class:"h-7 w-7"})]),e[352]||(e[352]=t("p",{class:"mt-4 font-medium text-zinc-700 dark:text-zinc-300"},"Nenhum link disponível",-1)),e[353]||(e[353]=t("p",{class:"mt-1 max-w-sm text-sm text-zinc-500 dark:text-zinc-400"}," Salve o produto na aba Geral para gerar o link. Ofertas e planos configurados aparecerão aqui. ",-1))])):(s(),l("ul",ep,[(s(!0),l(z,null,I(ba.value,(a,i)=>(s(),l("li",{key:a.id,class:"group relative panel-card flex flex-col overflow-hidden transition hover:border-zinc-200 dark:hover:border-zinc-600 dark:hover:border-zinc-500/50"},[t("div",tp,[t("div",ap,[t("div",op,[t("span",{class:g(["inline-flex rounded-md px-2 py-0.5 text-xs font-medium",a.id==="main"?"bg-[var(--color-primary)]/20 text-[var(--color-primary)] dark:bg-[var(--color-primary)]/30":"bg-zinc-200/80 text-zinc-600 dark:bg-zinc-600/80 dark:text-zinc-400"])},p(a.id==="main"?"Principal":a.id.startsWith("offer")?"Oferta":"Plano"),3),t("span",rp,p(a.id==="main"?"Preço base":a.label),1)]),t("p",{class:"mt-1.5 truncate font-mono text-xs text-zinc-500 dark:text-zinc-400",title:Ze(a)},p(Ze(a)),9,np)]),t("div",sp,[Ze(a)?(s(),l("a",{key:0,href:Ze(a),target:"_blank",rel:"noopener noreferrer",class:"inline-flex items-center gap-1.5 rounded-lg border border-zinc-200 px-3 py-2 text-xs font-medium text-zinc-600 transition hover:bg-zinc-50 hover:text-zinc-900 dark:border-zinc-600 dark:text-zinc-400 dark:hover:bg-zinc-700 dark:hover:text-white"}," Abrir ",8,lp)):m("",!0),t("button",{type:"button",class:g(["inline-flex items-center gap-1.5 rounded-lg px-3 py-2 text-xs font-medium transition",ve.value===a.id?"bg-emerald-100 text-emerald-700 dark:bg-emerald-900/40 dark:text-emerald-300":"bg-[var(--color-primary)]/10 text-[var(--color-primary)] hover:bg-[var(--color-primary)]/20 dark:bg-[var(--color-primary)]/20 dark:hover:bg-[var(--color-primary)]/30"]),onClick:y=>io(a)},[ve.value===a.id?(s(),L(o(Zt),{key:0,class:"h-3.5 w-3.5"})):(s(),L(o(ha),{key:1,class:"h-3.5 w-3.5"})),c(" "+p(ve.value===a.id?"Copiado!":"Copiar"),1)],10,ip)])])]))),128))]))])])):m("",!0),H.value==="coproducao"?(s(),L(ln,{key:8,"product-id":k.produto.id},null,8,["product-id"])):m("",!0),H.value==="reembolso"&&k.produto.type==="area_membros"?(s(),l("div",dp,[e[359]||(e[359]=t("h2",{class:"text-base font-semibold text-zinc-900 dark:text-white"},"Reembolso na área de membros",-1)),e[360]||(e[360]=t("p",{class:"mt-1 text-sm text-zinc-600 dark:text-zinc-400"},[c(" Permite que o aluno solicite reembolso pelo menu da conta no header da área de membros. Aprovações e histórico ficam em "),t("strong",null,"Reembolsos"),c(" no menu do painel. ")],-1)),t("div",up,[e[354]||(e[354]=t("label",{class:"text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Habilitar solicitação de reembolso",-1)),d(me,{modelValue:o(ce).enabled,"onUpdate:modelValue":e[127]||(e[127]=a=>o(ce).enabled=a)},null,8,["modelValue"])]),o(ce).enabled?(s(),l("div",cp,[t("div",null,[e[355]||(e[355]=t("label",{class:"block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Prazo (dias após liberação do acesso)",-1)),x(t("input",{"onUpdate:modelValue":e[128]||(e[128]=a=>o(ce).days=a),type:"number",min:"1",max:"365",class:"mt-1 w-full max-w-[120px] rounded-lg border border-zinc-300 bg-white px-3 py-2 text-sm dark:border-zinc-600 dark:bg-zinc-900"},null,512),[[$,o(ce).days,void 0,{number:!0}]])]),t("div",null,[e[358]||(e[358]=t("p",{class:"text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Modo de processamento",-1)),t("div",pp,[t("label",mp,[x(t("input",{"onUpdate:modelValue":e[129]||(e[129]=a=>o(ce).mode=a),type:"radio",value:"auto",class:"mt-1"},null,512),[[St,o(ce).mode]]),e[356]||(e[356]=t("span",null,[t("span",{class:"text-sm font-medium text-zinc-800 dark:text-zinc-200"},"Automático"),t("span",{class:"mt-0.5 block text-xs text-zinc-500 dark:text-zinc-400"}," Estorno imediato via API apenas para pagamentos PIX na CajuPay. Cartão e outros gateways entram em fila manual. ")],-1))]),t("label",bp,[x(t("input",{"onUpdate:modelValue":e[130]||(e[130]=a=>o(ce).mode=a),type:"radio",value:"manual",class:"mt-1"},null,512),[[St,o(ce).mode]]),e[357]||(e[357]=t("span",null,[t("span",{class:"text-sm font-medium text-zinc-800 dark:text-zinc-200"},"Aprovação manual"),t("span",{class:"mt-0.5 block text-xs text-zinc-500 dark:text-zinc-400"}," Solicitações aparecem no menu Reembolsos do painel para você aprovar ou rejeitar. ")],-1))])])])])):m("",!0),t("div",xp,[d(E,{type:"button",disabled:o(ce).processing,onClick:Et},{default:v(()=>[c(p(o(ce).processing?"Salvando…":"Salvar"),1)]),_:1},8,["disabled"]),o(ce).hasErrors?(s(),l("p",yp," Verifique os campos e tente novamente. ")):m("",!0)])])):m("",!0),H.value==="afiliados"?(s(),L(Cn,{key:10,"product-id":k.produto.id},null,8,["product-id"])):m("",!0),(s(!0),l(z,null,I(f.value,a=>(s(),l(z,{key:a.id},[H.value===a.id?(s(),l("div",vp,[t("div",fp,[t("h2",gp,p(a.label),1),e[361]||(e[361]=t("p",{class:"mt-0.5 text-sm text-zinc-500 dark:text-zinc-400"}," Configurações específicas deste produto via plugin. ",-1))]),t("div",_p,[a.pluginPanel&&o(X)(a.pluginPanel)?(s(),L(qe(o(X)(a.pluginPanel)),{key:0,produto:k.produto},null,8,["produto"])):(s(),l("div",kp," Não foi possível carregar este painel do plugin. "))])])):m("",!0)],64))),128))])]))}});export{Zp as default}; +Se você já concluiu, pode ignorar este e-mail.`}}},j={access_delivery:{enabled:!1,body_text:"Ola {nome_cliente}! Seu acesso a {nome_produto}: {link_acesso}"},pix_generated:{enabled:!1,body_text:"PIX de {nome_produto} ({valor}). Pague: {link_pix}"},cart_recovery:{enabled:!1,deadline_hours:48,stages:[{delay_minutes:10,body_text:"Ola {nome_cliente}! Retome {nome_produto}: {link_checkout}"},{delay_minutes:300,body_text:"{nome_cliente}, ainda da tempo: {link_checkout}"},{delay_minutes:1440,body_text:"Ultimo lembrete {nome_produto}: {link_checkout}"}]}},R=[{id:"minutes",label:"minutos",singular:"minuto"},{id:"hours",label:"horas",singular:"hora"},{id:"days",label:"dias",singular:"dia"}],M=[{label:"10 min",minutes:10},{label:"30 min",minutes:30},{label:"1 hora",minutes:60},{label:"5 horas",minutes:300},{label:"24 horas",minutes:1440},{label:"2 dias",minutes:2880}],h=[{label:"1 dia",hours:24},{label:"2 dias",hours:48},{label:"3 dias",hours:72},{label:"5 dias",hours:120},{label:"7 dias",hours:168}];function oe(n){const e=Math.max(1,Math.round(Number(n)||10));return e>=1440&&e%1440===0?{value:e/1440,unit:"days"}:e>=60&&e%60===0?{value:e/60,unit:"hours"}:{value:e,unit:"minutes"}}function ee(n,e){const a=Math.max(1,Math.round(Number(n)||1));return e==="days"?a*1440:e==="hours"?a*60:a}function F(n){const e=Math.max(1,Number(n?.delay_minutes??10)),{value:a,unit:i}=oe(e);return{delay_minutes:e,delay_value:a,delay_unit:i,body_text:String(n?.body_text??"")}}function re(n){const e=r.sms.cart_recovery.stages?.[n];if(!e||typeof e!="object")return;const a=ee(e.delay_value,e.delay_unit);r.sms.cart_recovery.stages[n]={...e,delay_minutes:a}}function ne(n,e){const a=r.sms.cart_recovery.stages?.[n];if(!a||typeof a!="object")return;const{value:i,unit:y}=oe(e);r.sms.cart_recovery.stages[n]={...a,delay_value:i,delay_unit:y,delay_minutes:e}}function se(n){const e=Math.min(168,Math.max(1,parseInt(n,10)||48));r.sms.cart_recovery={...r.sms.cart_recovery,deadline_hours:e}}function le(n,e){return Number(n?.delay_minutes)===Number(e)}function ze(n){const e=Math.max(1,Math.round(Number(n?.delay_value)||1)),a=n?.delay_unit||"minutes",i=R.find(q=>q.id===a)||R[0],y=e===1?i.singular:i.label;return`Enviar ${e} ${y} após o abandono`}const G=[{id:"geral",label:"Geral",icon:So},{id:"configuracoes",label:"Configurações",icon:Pt},{id:"email",label:"E-mail",icon:wa},{id:"sms",label:"SMS",icon:Wt},{id:"order_bump",label:"Order Bump",icon:$t},{id:"upsell_downsell",label:"Upsell / Downsell",icon:Zo},{id:"checkout",label:"Checkout",icon:Po},{id:"links",label:"Links",icon:Ge},{id:"coproducao",label:"Co-produção",icon:Yo,beta:!0},{id:"afiliados",label:"Afiliados",icon:jt,beta:!0},{id:"member_builder",label:"Member Builder",icon:er,linkOnly:!0},{id:"reembolso",label:"Reembolso",icon:Vo,showForType:"area_membros"}],u=k,f=N(()=>(Array.isArray(u.plugin_product_panels)?u.plugin_product_panels:[]).filter(e=>e&&typeof e=="object"&&e.id&&e.label&&e.component).map(e=>({id:`plugin_${String(e.id)}`,label:String(e.label),icon:Wt,pluginPanel:e}))),_=N(()=>[...G,...f.value]),w=Object.assign({"../../PluginPages/AutoZap/FlowCanvasEditor.vue":()=>De(()=>import("./FlowCanvasEditor-Ce7pIxz8.js"),__vite__mapDeps([0,1,2,3,4])),"../../PluginPages/AutoZap/Index.vue":()=>De(()=>import("./Index-C8hflPKm.js"),__vite__mapDeps([5,6,1,2])),"../../PluginPages/AutoZap/IntegrationsSidebar.vue":()=>De(()=>import("./IntegrationsSidebar-g5vQahAQ.js"),__vite__mapDeps([7,1,2])),"../../PluginPages/AutoZap/ProductPanel.vue":()=>De(()=>import("./ProductPanel-By9st8ds.js"),__vite__mapDeps([8,1,2,0,3,4])),"../../PluginPages/Example/Index.vue":()=>De(()=>import("./Index-DJaBHjKX.js"),__vite__mapDeps([9,6,1,2])),"../../PluginPages/WhiteLabel/SettingsTab.vue":()=>De(()=>import("./SettingsTab-BdcPaOEh.js"),__vite__mapDeps([10,1,2,3,11,12]))}),{resolve:X}=Jo(N(()=>st.props.plugin_ui),w),st=Eo(),H=N(()=>{const n=st.url,e=n.indexOf("?"),a=e!==-1?n.slice(e):"",y=new URLSearchParams(a).get("tab");return _.value.some(q=>q.id===y)?y:"geral"});function lt(n){ie.get(`/produtos/${u.produto.id}/edit?tab=${n}`,{},{preserveState:!0})}function it(n){return!(n.linkOnly||n.showWhen&&u.produto.billing_type!==n.showWhen||n.showForType&&u.produto.type!==n.showForType)}const Qe=u.produto.member_area_refund??u.produto.member_area_config?.refund??{},ce=et({enabled:!!Qe.enabled,days:Math.min(365,Math.max(1,Number(Qe.days)||7)),mode:Qe.mode==="auto"?"auto":"manual"});function Et(){ce.put(`/produtos/${u.produto.id}/member-area-refund`,{preserveScroll:!0})}function Ce(){window.location.href=`/produtos/${u.produto.id}/member-builder`}const{setExpanded:It}=$o(),dt=C(null);at(H,()=>{setTimeout(()=>{dt.value?.scrollIntoView({behavior:"smooth",block:"nearest",inline:"center"})},50)});const O=u.produto.checkout_config?.payment_gateways??{},Ie=u.produto.checkout_config?.email_template??{},ut=u.produto.checkout_config?.card_installments??{enabled:!1,max:1},S=u.produto.checkout_config?.pix_parcelado??{},b={max_installments:S.max_installments??null,down_payment_cents:S.down_payment_cents??null,min_down_payment_bps:S.min_down_payment_bps??null,max_down_payment_bps:S.max_down_payment_bps??null,early_payment_discount_bps:S.early_payment_discount_bps??0,payoff_discount_bps:S.payoff_discount_bps??0,overdue_payoff_discount_bps:S.overdue_payoff_discount_bps??0},V=u.produto.checkout_config?.cart_recovery_email,Re={...T,...V&&typeof V=="object"?V:{},stages:{...T.stages,...V?.stages&&typeof V.stages=="object"?V.stages:{}}},ue=u.produto.checkout_config?.sms,Rt={access_delivery:{...j.access_delivery,...ue?.access_delivery&&typeof ue.access_delivery=="object"?ue.access_delivery:{}},pix_generated:{...j.pix_generated,...ue?.pix_generated&&typeof ue.pix_generated=="object"?ue.pix_generated:{}},cart_recovery:{...j.cart_recovery,...ue?.cart_recovery&&typeof ue.cart_recovery=="object"?ue.cart_recovery:{},deadline_hours:Math.min(168,Math.max(1,parseInt(ue?.cart_recovery?.deadline_hours,10)||j.cart_recovery.deadline_hours)),stages:Array.isArray(ue?.cart_recovery?.stages)&&ue.cart_recovery.stages.length>0?ue.cart_recovery.stages.map(n=>F(n)):j.cart_recovery.stages.map(n=>F(n))}},aa={mode:"customer",company_address:{zipcode:"",street:"",number:"",neighborhood:"",city:"",state:""}},Me=u.produto.checkout_config?.pagarme_billing,$a={...aa,...Me&&typeof Me=="object"?Me:{},company_address:{...aa.company_address,...Me?.company_address&&typeof Me.company_address=="object"?Me.company_address:{}}},oa=u.produto.checkout_config?.stripe_link_enabled,Le=u.produto.checkout_config?.checkout_force??{},Sa={enabled:!!Le.enabled,locale:["pt_BR","en","es"].includes(Le.locale)?Le.locale:"pt_BR"},Je=u.produto.checkout_config?.checkout_currency??{},Pa=Je.mode==="fixed"||Je.mode==="global"?{mode:Je.mode,currency:Je.currency?String(Je.currency).toUpperCase():"BRL"}:Le.enabled&&Le.currency?{mode:"fixed",currency:String(Le.currency).toUpperCase()}:{mode:"global",currency:"BRL"},Mt=u.produto.checkout_config?.subscription??{},Va={grace_period_days:Number(Mt.grace_period_days??0),notify_days_before:Number(Mt.notify_days_before??3),renewal_window_days:Number(Mt.renewal_window_days??7)};function Ua(){const n=u.produto.checkout_config?.custom_prices_by_currency?.amounts,e={},a=Array.isArray(u.tenant_currencies)?u.tenant_currencies:[];for(const i of a){const y=String(i?.code||"").toUpperCase();if(!y||y==="BRL")continue;const q=n&&Object.prototype.hasOwnProperty.call(n,y)?n[y]:n?.[y];e[y]=q!=null&&q!==""?String(q):""}return e}const Lt=N(()=>(u.tenant_currencies||[]).filter(n=>n&&String(n.code||"").toUpperCase()!=="BRL")),r=et({name:u.produto.name,slug:u.produto.slug,description:u.produto.description??"",type:u.produto.type,billing_type:u.produto.billing_type??"one_time",price:u.produto.price_brl??u.produto.price,combo_product_ids:Array.isArray(u.produto.combo_product_ids)?[...u.produto.combo_product_ids]:[],base_interval:u.produto.base_interval??u.produto.subscription_plans?.sort((n,e)=>(n.position??0)-(e.position??0))[0]?.interval??"monthly",currency:u.produto.currency??"BRL",is_active:u.produto.is_active,image:null,deliverable_link:u.produto.checkout_config?.deliverable_link??"",payment_gateways:(()=>{let n=O.card??"",e=Array.isArray(O.card_redundancy)?[...O.card_redundancy]:[],a=O.paypal??"",i=Array.isArray(O.paypal_redundancy)?[...O.paypal_redundancy]:[];return n==="paypal"&&(a||(a="paypal"),n="",e=e.filter(y=>y!=="paypal")),e=e.filter(y=>y!=="paypal"),{pix:O.pix??"",pix_redundancy:Array.isArray(O.pix_redundancy)?O.pix_redundancy:[],card:n,card_redundancy:e,boleto:O.boleto??"",boleto_redundancy:Array.isArray(O.boleto_redundancy)?O.boleto_redundancy:[],pix_auto:O.pix_auto??"",pix_auto_redundancy:Array.isArray(O.pix_auto_redundancy)?O.pix_auto_redundancy:[],apple_pay:O.apple_pay??"",apple_pay_redundancy:Array.isArray(O.apple_pay_redundancy)?O.apple_pay_redundancy:[],google_pay:O.google_pay??"",google_pay_redundancy:Array.isArray(O.google_pay_redundancy)?O.google_pay_redundancy:[],paypal:a,paypal_redundancy:i,paypal_display_as:O.paypal_display_as==="card"?"card":"paypal",paypal_show_wallet:!!O.paypal_show_wallet,crypto:O.crypto??"",crypto_redundancy:Array.isArray(O.crypto_redundancy)?O.crypto_redundancy:[],pix_parcelado:O.pix_parcelado??"",pix_parcelado_redundancy:Array.isArray(O.pix_parcelado_redundancy)?O.pix_parcelado_redundancy:[]}})(),pix_parcelado:{...b},card_installments:{enabled:!!ut.enabled,max:Math.min(12,Math.max(1,parseInt(ut.max,10)||1))},stripe_link_enabled:oa!==!1&&oa!=="0",email_template:{logo_url:Ie.logo_url??B.logo_url,from_name:Ie.from_name??B.from_name,subject:Ie.subject??B.subject,body_text:Ie.body_text??B.body_text},cart_recovery_email:Re,sms:Rt,pagarme_billing:$a,checkout_force:{...Sa},checkout_currency:{...Pa},subscription:{...Va},custom_prices_by_currency:{enabled:!!u.produto.checkout_config?.custom_prices_by_currency?.enabled,amounts:Ua()}}),Ke=N(()=>parseFloat(r.price)||0);function ct(n){return String(n??"").length}function Ne(n,e=!0){return e?ct(n)>Ut:!1}const pt=N(()=>{const n=r.sms;if(!n||typeof n!="object")return null;if(Ne(n.access_delivery?.body_text,n.access_delivery?.enabled))return"O texto de envio de acesso excede 160 caracteres.";if(Ne(n.pix_generated?.body_text,n.pix_generated?.enabled))return"O texto de PIX gerado excede 160 caracteres.";if(n.cart_recovery?.enabled&&Array.isArray(n.cart_recovery.stages)){for(let e=0;e{const n=Math.min(168,Math.max(1,parseInt(r.sms?.cart_recovery?.deadline_hours,10)||48)),e=[...h];return e.some(a=>a.hours===n)||(e.push({label:`${n} horas`,hours:n}),e.sort((a,i)=>a.hours-i.hours)),e});function Aa(){const n=Array.isArray(r.sms.cart_recovery.stages)?r.sms.cart_recovery.stages:[];r.sms.cart_recovery.stages=[...n,F({delay_minutes:60,body_text:"Retome sua compra: {link_checkout}"})]}function Ea(n){Array.isArray(r.sms.cart_recovery.stages)&&(r.sms.cart_recovery.stages.length<=1||r.sms.cart_recovery.stages.splice(n,1))}function ra(){const n=r.sms&&typeof r.sms=="object"?r.sms:{},e=Array.isArray(n.cart_recovery?.stages)?n.cart_recovery.stages:[];return{access_delivery:{enabled:!!n.access_delivery?.enabled,body_text:String(n.access_delivery?.body_text??"")},pix_generated:{enabled:!!n.pix_generated?.enabled,body_text:String(n.pix_generated?.body_text??"")},cart_recovery:{enabled:!!n.cart_recovery?.enabled,deadline_hours:Math.min(168,Math.max(1,parseInt(n.cart_recovery?.deadline_hours,10)||48)),stages:e.map(a=>({delay_minutes:ee(a.delay_value,a.delay_unit),body_text:String(a?.body_text??"")}))}}}const Ia=N(()=>(Ke.value*(u.exchange_rates.brl_eur??.16)).toFixed(2)),Ra=N(()=>(Ke.value*(u.exchange_rates.brl_usd??.18)).toFixed(2)),Nt=N(()=>{const n=Ke.value;return!n||n{r.card_installments.max>n&&(r.card_installments.max=n)},{immediate:!0});const na=N(()=>r.image&&typeof r.image=="object"&&r.image instanceof File?URL.createObjectURL(r.image):u.produto.image_url??null),Tt=C(!1),mt=C(""),bt=C(null),$e=C(!1),he=C(!1),xt=C(!1),Te=C(""),yt=C(!1),Ye=C(""),Se=C(!1),vt=C(""),Oe=C([]),ft=C(""),Q=C({integration_id:u.produto?.external_member_area?.integration_id??"",cademi_tag_id:u.produto?.external_member_area?.cademi_tag_id??"",cademi_produto_ids:Array.isArray(u.produto?.external_member_area?.cademi_produto_ids)?u.produto.external_member_area.cademi_produto_ids.map(n=>String(n)):u.produto?.external_member_area?.cademi_produto_id?[String(u.produto.external_member_area.cademi_produto_id)]:[""]}),Ma=N(()=>{const n=(ft.value||"").trim().toLowerCase();return n?(Oe.value||[]).filter(e=>String(e.nome||"").toLowerCase().includes(n)):Oe.value});async function sa(){vt.value="",Oe.value=[];const n=Q.value.integration_id;if(n){Se.value=!0;try{const{data:e}=await de.get(`/integracoes/cademi/${n}/tags`);Oe.value=Array.isArray(e?.tags)?e.tags:[]}catch(e){vt.value=e.response?.data?.message||"Não foi possível listar as TAGs da Cademí."}finally{Se.value=!1}}}at(()=>Q.value.integration_id,()=>{ft.value="",sa()});async function La(){Ye.value="";const e=(Q.value.cademi_produto_ids||[]).map(a=>String(a||"").trim()).filter(a=>a!=="").map(a=>parseInt(a,10)).filter(a=>Number.isFinite(a)&&a>0);if(Q.value.integration_id&&e.length===0){Ye.value="Informe ao menos 1 Produto ID da Cademí.";return}yt.value=!0;try{await de.put(`/produtos/${u.produto.id}/external-member-area`,{cademi_integration_id:Q.value.integration_id||null,cademi_tag_id:Q.value.cademi_tag_id?parseInt(Q.value.cademi_tag_id,10):null,cademi_produto_ids:e}),ie.reload({only:["produto","cademi_integrations"]})}catch(a){Ye.value=a.response?.data?.message||"Erro ao salvar configuração da Cademí."}finally{yt.value=!1}}async function Na(n){if(!(!n||!n.type.startsWith("image/"))){mt.value="",Tt.value=!0;try{const e=new FormData;e.append("logo",n);const{data:a}=await de.post(`/produtos/${u.produto.id}/email-template-logo`,e,{headers:{"X-XSRF-TOKEN":W(),Accept:"application/json","X-Requested-With":"XMLHttpRequest"},withCredentials:!0});r.email_template.logo_url=a.logo_url??""}catch(e){const a=e.response?.data?.message||e.response?.data?.errors?.logo?.[0]||"Falha no envio. Use uma imagem (PNG, JPG) até 2 MB.";mt.value=a}finally{Tt.value=!1,bt.value&&(bt.value.value="")}}}function Ta(n){const e=n.target?.files?.[0];e&&Na(e)}function xe(n){return typeof window>"u"||!n?"":`${window.location.origin}/c/${n}`}function Oa(n){return n?.public_id?`offer=${n.public_id}`:n?.id!=null?`offer_id=${n.id}`:""}function Ba(n){return n?.public_id?`plan=${n.public_id}`:n?.id!=null?`plan_id=${n.id}`:""}const Da={weekly:"Semanal",monthly:"Mensal",quarterly:"Trimestral",semi_annual:"Semestral",annual:"Anual",lifetime:"Vitalício"};function qa(n){return Da[n]||n}const Pe=N(()=>u.produto.available_products_for_combo||[]);function Ot(n,e,a){const i=n==="main"?r:n==="offer"?J:D,y="combo_product_ids",q=[...i[y]||[]];if(a)q.includes(e)||q.push(e);else{const Ct=q.indexOf(e);Ct!==-1&&q.splice(Ct,1)}i[y]=q}const te=C(null),la=C(null),ia=C(null),da=C(null);function Bt(n){te.value=te.value===n?null:n}function Dt(n){const e=n.combo_product_ids||[],a=e.length,i=Pe.value;if(a===0)return"Nenhum — abrir para escolher";if(a===1){const y=i.find(q=>q.id===e[0]);return y?y.name:"1 produto"}return`${a} produtos`}function ua(n){if(!te.value)return;const e=te.value==="main"?la.value:te.value==="offer"?ia.value:da.value;e&&!e.contains(n.target)&&(te.value=null)}ea(()=>{It(!1),document.addEventListener("pointerdown",ua,!0)}),Uo(()=>{document.removeEventListener("pointerdown",ua,!0)});const gt=C(!1),Ve=C(null),J=et({name:"",price:"",currency:"BRL",combo_product_ids:[]});function Fa(){Ve.value=null,J.reset(),J.name="",J.price="",J.currency=u.produto.currency||"BRL",J.combo_product_ids=[],gt.value=!0}function Ga(n){Ve.value=n,J.name=n.name,J.price=n.price,J.currency=n.currency||"BRL",J.combo_product_ids=Array.isArray(n.combo_product_ids)?[...n.combo_product_ids]:[],gt.value=!0}function qt(){te.value==="offer"&&(te.value=null),gt.value=!1,Ve.value=null,J.reset()}function Xa(){Ve.value?J.put(`/produtos/${u.produto.id}/offers/${Ve.value.id}`,{preserveScroll:!0,onSuccess:()=>{qt(),ie.reload()}}):J.post(`/produtos/${u.produto.id}/offers`,{preserveScroll:!0,onSuccess:()=>{qt(),ie.reload()}})}function Ha(n){window.confirm(`Remover a oferta "${n.name}"?`)&&ie.delete(`/produtos/${u.produto.id}/offers/${n.id}`,{preserveScroll:!0,onSuccess:()=>ie.reload()})}const _t=C(!1),Ue=C(null),D=et({name:"",price:"",currency:"BRL",interval:"monthly",combo_product_ids:[]});function Wa(){Ue.value=null,D.reset(),D.name="",D.price="",D.currency=u.produto.currency||"BRL",D.interval="monthly",D.combo_product_ids=[],_t.value=!0}function Qa(n){Ue.value=n,D.name=n.name,D.price=n.price,D.currency=n.currency||"BRL",D.interval=n.interval,D.combo_product_ids=Array.isArray(n.combo_product_ids)?[...n.combo_product_ids]:[],_t.value=!0}function Ft(){te.value==="plan"&&(te.value=null),_t.value=!1,Ue.value=null,D.reset()}function Ja(){Ue.value?D.put(`/produtos/${u.produto.id}/subscription-plans/${Ue.value.id}`,{preserveScroll:!0,onSuccess:()=>{Ft(),ie.reload()}}):D.post(`/produtos/${u.produto.id}/subscription-plans`,{preserveScroll:!0,onSuccess:()=>{Ft(),ie.reload()}})}function Ka(n){window.confirm(`Remover o plano "${n.name}"?`)&&ie.delete(`/produtos/${u.produto.id}/subscription-plans/${n.id}`,{preserveScroll:!0,onSuccess:()=>ie.reload()})}const kt=C(!1),je=C(null),P=et({target_product_id:"",target_product_offer_id:"",target_subscription_plan_id:"",title:"",description:"",price_override:"",is_free:!1,cta_title:"Sim, quero esta oferta!"}),ye=N(()=>{const n=P.target_product_id;return n?(u.produto.available_products_for_bump||[]).find(e=>e.id===n):null});function Ya(n){const e=n.currency||"BRL",a=Number(n.price??0).toFixed(2);return n.billing_type==="subscription"?`${n.name} (Assinatura) — ${e} ${a}`:`${n.name} — ${e} ${a}`}function Za(){P.target_product_offer_id="",P.target_subscription_plan_id=""}function ca(){je.value=null,P.reset(),P.target_product_id="",P.target_product_offer_id="",P.target_subscription_plan_id="",P.title="",P.description="",P.price_override="",P.is_free=!1,P.cta_title="Sim, quero esta oferta!",kt.value=!0}function eo(n){je.value=n,P.target_product_id=n.target_product_id,P.target_product_offer_id=n.target_product_offer_id!=null?String(n.target_product_offer_id):"",P.target_subscription_plan_id=n.target_subscription_plan_id!=null?String(n.target_subscription_plan_id):"",P.title=n.title,P.description=n.description??"",P.is_free=!!n.is_free,P.price_override=n.is_free?"0":n.price_override!=null?String(n.price_override):"",P.cta_title=n.cta_title,kt.value=!0}function Be(){kt.value=!1,je.value=null,P.reset()}function to(){const n=!!P.is_free,e={target_product_id:P.target_product_id,target_product_offer_id:P.target_product_offer_id||null,target_subscription_plan_id:P.target_subscription_plan_id||null,title:P.title,description:P.description||null,is_free:n,price_override:n?0:P.price_override?parseFloat(P.price_override):null,cta_title:P.cta_title};je.value?P.transform(()=>e).put(`/produtos/${u.produto.id}/order-bumps/${je.value.id}`,{preserveScroll:!0,onSuccess:()=>{Be(),ie.reload()}}):P.transform(()=>e).post(`/produtos/${u.produto.id}/order-bumps`,{preserveScroll:!0,onSuccess:()=>{Be(),ie.reload()}})}function ao(n){window.confirm(`Remover o order bump "${n.title}"?`)&&ie.delete(`/produtos/${u.produto.id}/order-bumps/${n.id}`,{preserveScroll:!0,onSuccess:()=>ie.reload()})}const oo={headline:"Quer levar isso também?",subheadline:"Oferta especial só para você",body_text:"",hero_image:null,hero_video_url:null,background_color:"#f3f4f6",background_image:null,show_product_just_bought:!0},ro={headline:"Última chance com desconto",subheadline:"Uma oferta que não pode ficar de fora",body_text:"",hero_image:null,hero_video_url:null,background_color:"#f3f4f6",background_image:null,show_product_just_bought:!0};function no(){const n=u.produto.checkout_config||{},e=n.upsell||{},a=n.downsell||{};return{upsell:{enabled:!!e.enabled,products:Array.isArray(e.products)?e.products.map(i=>({product_id:i.product_id!=null?String(i.product_id):null,product_offer_id:i.product_offer_id??null,title_override:i.title_override??"",description:i.description??"",image_url:i.image_url??"",video_url:i.video_url??""})):[],page:{...oo,...e.page||{}},appearance:{title:e.appearance?.title??"Quer levar isso também?",subtitle:e.appearance?.subtitle??"Oferta especial só para você",primary_color:e.appearance?.primary_color??"#0ea5e9",button_accept:e.appearance?.button_accept??"Sim, quero aproveitar",button_decline:e.appearance?.button_decline??"Não, obrigado"}},downsell:{enabled:!!e.enabled&&!!a.enabled,product_id:a.product_id!=null?String(a.product_id):null,product_offer_id:a.product_offer_id??null,title_override:a.title_override??"",description:a.description??"",image_url:a.image_url??"",video_url:a.video_url??"",page:{...ro,...a.page||{}},appearance:{title:a.appearance?.title??"Última chance com desconto",subtitle:a.appearance?.subtitle??"Uma oferta que não pode ficar de fora",primary_color:a.appearance?.primary_color??"#0ea5e9",button_accept:a.appearance?.button_accept??"Aceitar oferta",button_decline:a.appearance?.button_decline??"Não, obrigado"}}}}const K=jo(no()),zt=C(!1);at(()=>K.upsell.enabled,n=>{n||(K.downsell.enabled=!1)});async function so(){zt.value=!0;const n=u.produto.checkout_config||{},e={...n,upsell:{...n.upsell||{},enabled:K.upsell.enabled,products:K.upsell.products},downsell:{...n.downsell||{},enabled:K.downsell.enabled,product_id:K.downsell.product_id??null,product_offer_id:K.downsell.product_offer_id??null}};try{await de.put(`/produtos/${u.produto.id}/checkout-config`,{config:e,offer_id:null,plan_id:null},{headers:{"Content-Type":"application/json",Accept:"application/json","X-Requested-With":"XMLHttpRequest"}}),ie.reload({preserveScroll:!0})}finally{zt.value=!1}}const ve=C(null);function pa(n){return!n||typeof n!="string"?Promise.resolve(!1):navigator.clipboard&&typeof navigator.clipboard.writeText=="function"?navigator.clipboard.writeText(n).then(()=>!0).catch(()=>ma(n)):Promise.resolve(ma(n))}function ma(n){try{const e=document.createElement("textarea");e.value=n,e.setAttribute("readonly",""),e.style.position="fixed",e.style.top="0",e.style.left="0",e.style.width="2em",e.style.height="2em",e.style.padding="0",e.style.border="none",e.style.outline="none",e.style.boxShadow="none",e.style.background="transparent",e.style.opacity="0",document.body.appendChild(e),e.focus(),e.select();const a=document.execCommand("copy");return document.body.removeChild(e),a}catch{return!1}}function lo(n){const e=xe(n);e&&pa(e).then(a=>{a&&(ve.value=n,setTimeout(()=>{ve.value=null},2e3))})}function io(n){const e=Ze(n);e&&pa(e).then(a=>{a&&(ve.value=n.id,setTimeout(()=>{ve.value=null},2e3))})}const uo=N(()=>{const n=u.produto.billing_type??r.billing_type,e=[];return e.push({id:"main",label:"Produto (preço base)",type:"main",slug:u.produto.checkout_slug||null,offerId:null,planId:null}),n==="one_time"&&(u.produto.offers||[]).forEach(a=>{a.checkout_slug&&e.push({id:`offer-${a.id}`,label:a.name,type:"offer",slug:a.checkout_slug,offerId:a.id,planId:null})}),n==="subscription"&&(u.produto.subscription_plans||[]).forEach(a=>{a.checkout_slug&&e.push({id:`plan-${a.id}`,label:a.name,type:"plan",slug:a.checkout_slug,offerId:null,planId:a.id})}),e}),Gt=N(()=>{const n=u.produto.billing_type??r.billing_type,e=[];return n==="one_time"&&(u.produto.offers||[]).forEach(a=>{a.checkout_slug||e.push({id:`offer-${a.id}`,label:a.name,type:"offer",offerId:a.id,planId:null})}),n==="subscription"&&(u.produto.subscription_plans||[]).forEach(a=>{a.checkout_slug||e.push({id:`plan-${a.id}`,label:a.name,type:"plan",offerId:null,planId:a.id})}),e}),ba=N(()=>{const n=u.produto.billing_type??r.billing_type,e=u.produto.checkout_slug||null,a=[];return e&&a.push({id:"main",label:"Preço base",slug:e,type:"main",offer_public_id:null,plan_public_id:null,offer_id:null,plan_id:null}),n==="one_time"&&(u.produto.offers||[]).forEach(i=>{const y=i.checkout_slug||e;y&&a.push({id:`offer-${i.id}`,label:i.name,slug:y,type:"offer",offer_public_id:i.checkout_slug?null:i.public_id,plan_public_id:null,offer_id:i.checkout_slug?null:i.id,plan_id:null})}),n==="subscription"&&(u.produto.subscription_plans||[]).forEach(i=>{const y=i.checkout_slug||e;y&&a.push({id:`plan-${i.id}`,label:i.name,slug:y,type:"plan",offer_public_id:null,plan_public_id:i.checkout_slug?null:i.public_id,offer_id:null,plan_id:i.checkout_slug?null:i.id})}),a});function Ze(n){const e=xe(n.slug);return e?n.offer_public_id?`${e}?offer=${n.offer_public_id}`:n.plan_public_id?`${e}?plan=${n.plan_public_id}`:n.offer_id!=null?`${e}?offer_id=${n.offer_id}`:n.plan_id!=null?`${e}?plan_id=${n.plan_id}`:e:""}function xa(n){if(n.checkout_slug)return xe(n.checkout_slug);const e=u.produto.checkout_slug,a=Oa(n);return e&&a?`${xe(e)}?${a}`:""}function ya(n){if(n.checkout_slug)return xe(n.checkout_slug);const e=u.produto.checkout_slug,a=Ba(n);return e&&a?`${xe(e)}?${a}`:""}function Xt(n){const e={type:n.type};n.type==="offer"&&n.offerId!=null&&(e.offer_id=n.offerId),n.type==="plan"&&n.planId!=null&&(e.plan_id=n.planId),ie.post(`/produtos/${u.produto.id}/checkout/ensure-slug`,e)}function co(n){if(n.type==="main")return;const e=n.type==="offer"?`Oferta: ${n.label}`:`Plano: ${n.label}`;if(!confirm(`Remover o checkout exclusivo de "${e}"? Ela passará a usar o checkout principal.`))return;const a={type:n.type};n.type==="offer"&&(a.offer_id=n.offerId),n.type==="plan"&&(a.plan_id=n.planId),ie.delete(`/produtos/${u.produto.id}/checkout/remove-slug`,{data:a})}function po(n){const e=`/produtos/${u.produto.id}/checkout/edit`;return n.type==="offer"&&n.offerId!=null?`${e}?offer_id=${n.offerId}`:n.type==="plan"&&n.planId!=null?`${e}?plan_id=${n.planId}`:e}const Ae=C(!1);function mo(n){const e=n.target.files?.[0];r.image=e||null}function fe(n){const e=u.gateways_by_method?.[n]??[];return[{value:"",label:"Nenhum"},...e.map(a=>({value:a.slug,label:a.name}))]}const ht=C(!1),pe=C(null),bo={pix:"PIX",card:"Cartão",boleto:"Boleto",pix_auto:"PIX automático",apple_pay:"Apple Pay",google_pay:"Google Pay",paypal:"PayPal",pix_parcelado:"PIX Parcelado",crypto:"Criptomoeda"},wt=C(!1),xo=N(()=>String(u.cajupay_parcelado_enrollment?.status||"").toLowerCase()||"unknown"),yo=N(()=>r.payment_gateways.pix_parcelado==="cajupay"&&xo.value!=="active");function ge(n){pe.value=n,ht.value=!0}function _e(n){return n!==""&&n!==null&&n!==void 0}const vo=["pagarme","efi"];function va(n){return vo.includes(String(n||"").toLowerCase())}const fo=["efi","asaas","pagarme"];function go(n){return fo.includes(String(n||"").toLowerCase())}function _o(n){const e=String(n||"").toLowerCase();return e==="efi"?"Efí":e==="asaas"?"Asaas":e==="pagarme"?"Pagar.me":"cartão"}function ko(n){const e=(n.target.value||"").replace(/\D/g,"").slice(0,8);r.pagarme_billing.company_address.zipcode=e.length>5?`${e.slice(0,5)}-${e.slice(5)}`:e}async function zo(){const n=(r.pagarme_billing.company_address.zipcode||"").replace(/\D/g,"").slice(0,8);if(!(n.length<8)){xt.value=!0,Te.value="";try{const e=new AbortController,a=setTimeout(()=>e.abort(),8e3),i=await fetch(`https://viacep.com.br/ws/${n}/json/`,{signal:e.signal});if(clearTimeout(a),!i.ok){Te.value="Não foi possível buscar o CEP.";return}const y=await i.json().catch(()=>null);if(!y||y.erro){Te.value="CEP não encontrado.";return}y.logradouro&&(r.pagarme_billing.company_address.street=y.logradouro),y.bairro&&(r.pagarme_billing.company_address.neighborhood=y.bairro),y.localidade&&(r.pagarme_billing.company_address.city=y.localidade),y.uf&&(r.pagarme_billing.company_address.state=y.uf)}catch{Te.value="Não foi possível buscar o CEP agora."}finally{xt.value=!1}}}const ho={aplicativo:Wt,area_membros:jt,area_membros_externa:jt,link:Ge,link_pagamento:Ko};function Ee(){if(pt.value)return;const n=`/produtos/${u.produto.id}`,e=H.value&&H.value!=="geral"?`?tab=${H.value}`:"",a=n+e;if(r.image){const i=new FormData;i.append("name",r.name),i.append("slug",r.slug),i.append("description",r.description),i.append("type",r.type),i.append("billing_type",r.billing_type),i.append("price",r.price),(r.combo_product_ids||[]).forEach(A=>i.append("combo_product_ids[]",A)),r.billing_type==="subscription"&&i.append("base_interval",r.base_interval||"monthly"),i.append("currency",r.currency),i.append("is_active",r.is_active?"1":"0");const y=r.cart_recovery_email&&typeof r.cart_recovery_email=="object"?r.cart_recovery_email:{},q=y?.stages&&typeof y.stages=="object"?y.stages:{},Ct={enabled:!!y.enabled,stages:{"10m":{subject:String(q?.["10m"]?.subject??""),body_text:String(q?.["10m"]?.body_text??""),body_html:""},"5h":{subject:String(q?.["5h"]?.subject??""),body_text:String(q?.["5h"]?.body_text??""),body_html:""},"24h":{subject:String(q?.["24h"]?.subject??""),body_text:String(q?.["24h"]?.body_text??""),body_html:""}}};if(i.append("cart_recovery_email",JSON.stringify(Ct)),i.append("sms",JSON.stringify(ra())),r.payment_gateways&&(i.append("payment_gateways[pix]",r.payment_gateways.pix||""),(r.payment_gateways.pix_redundancy||[]).forEach(A=>i.append("payment_gateways[pix_redundancy][]",A)),i.append("payment_gateways[card]",r.payment_gateways.card||""),(r.payment_gateways.card_redundancy||[]).forEach(A=>i.append("payment_gateways[card_redundancy][]",A)),i.append("payment_gateways[boleto]",r.payment_gateways.boleto||""),(r.payment_gateways.boleto_redundancy||[]).forEach(A=>i.append("payment_gateways[boleto_redundancy][]",A)),i.append("payment_gateways[apple_pay]",r.payment_gateways.apple_pay||""),(r.payment_gateways.apple_pay_redundancy||[]).forEach(A=>i.append("payment_gateways[apple_pay_redundancy][]",A)),i.append("payment_gateways[google_pay]",r.payment_gateways.google_pay||""),(r.payment_gateways.google_pay_redundancy||[]).forEach(A=>i.append("payment_gateways[google_pay_redundancy][]",A)),i.append("payment_gateways[paypal]",r.payment_gateways.paypal||""),(r.payment_gateways.paypal_redundancy||[]).forEach(A=>i.append("payment_gateways[paypal_redundancy][]",A)),i.append("payment_gateways[paypal_display_as]",r.payment_gateways.paypal_display_as||"paypal"),i.append("payment_gateways[paypal_show_wallet]",r.payment_gateways.paypal_show_wallet?"1":"0"),i.append("payment_gateways[crypto]",r.payment_gateways.crypto||""),(r.payment_gateways.crypto_redundancy||[]).forEach(A=>i.append("payment_gateways[crypto_redundancy][]",A)),r.billing_type==="one_time"&&(i.append("payment_gateways[pix_parcelado]",r.payment_gateways.pix_parcelado||""),(r.payment_gateways.pix_parcelado_redundancy||[]).forEach(A=>i.append("payment_gateways[pix_parcelado_redundancy][]",A))),r.billing_type==="subscription"&&(i.append("payment_gateways[pix_auto]",r.payment_gateways.pix_auto||""),(r.payment_gateways.pix_auto_redundancy||[]).forEach(A=>i.append("payment_gateways[pix_auto_redundancy][]",A)))),r.card_installments&&(i.append("card_installments[enabled]",r.card_installments.enabled?"1":"0"),i.append("card_installments[max]",String(Math.min(12,Math.max(1,r.card_installments.max||1))))),r.payment_gateways.pix_parcelado==="cajupay"&&r.pix_parcelado){const A=r.pix_parcelado;A.max_installments!=null&&A.max_installments!==""&&i.append("pix_parcelado[max_installments]",String(A.max_installments)),A.down_payment_cents!=null&&A.down_payment_cents!==""&&i.append("pix_parcelado[down_payment_cents]",String(A.down_payment_cents)),A.min_down_payment_bps!=null&&A.min_down_payment_bps!==""&&i.append("pix_parcelado[min_down_payment_bps]",String(A.min_down_payment_bps)),A.max_down_payment_bps!=null&&A.max_down_payment_bps!==""&&i.append("pix_parcelado[max_down_payment_bps]",String(A.max_down_payment_bps)),i.append("pix_parcelado[early_payment_discount_bps]",String(A.early_payment_discount_bps??0)),i.append("pix_parcelado[payoff_discount_bps]",String(A.payoff_discount_bps??0)),i.append("pix_parcelado[overdue_payoff_discount_bps]",String(A.overdue_payoff_discount_bps??0))}if(typeof r.stripe_link_enabled=="boolean"&&i.append("stripe_link_enabled",r.stripe_link_enabled?"1":"0"),r.email_template&&(i.append("email_template[logo_url]",r.email_template.logo_url||""),i.append("email_template[from_name]",r.email_template.from_name||""),i.append("email_template[subject]",r.email_template.subject||""),i.append("email_template[body_text]",r.email_template.body_text||""),i.append("email_template[body_html]","")),i.append("deliverable_link",r.deliverable_link||""),r.billing_type==="subscription"&&r.subscription&&(i.append("subscription[grace_period_days]",String(Math.max(0,r.subscription.grace_period_days??0))),i.append("subscription[notify_days_before]",String(Math.max(0,r.subscription.notify_days_before??3))),i.append("subscription[renewal_window_days]",String(Math.max(0,r.subscription.renewal_window_days??7)))),i.append("checkout_force[enabled]",r.checkout_force?.enabled?"1":"0"),r.checkout_force?.enabled&&i.append("checkout_force[locale]",r.checkout_force.locale||""),i.append("checkout_currency[mode]",r.checkout_currency?.mode==="fixed"?"fixed":"global"),r.checkout_currency?.mode==="fixed"&&i.append("checkout_currency[currency]",r.checkout_currency.currency||"BRL"),i.append("custom_prices_by_currency[enabled]",r.custom_prices_by_currency?.enabled?"1":"0"),r.custom_prices_by_currency?.enabled&&r.custom_prices_by_currency.amounts)for(const[A,Ht]of Object.entries(r.custom_prices_by_currency.amounts))Ht===""||Ht==null||i.append(`custom_prices_by_currency[amounts][${A}]`,String(Ht));if(r.pagarme_billing){i.append("pagarme_billing[mode]",r.pagarme_billing.mode||"customer");const A=r.pagarme_billing.company_address||{};i.append("pagarme_billing[company_address][zipcode]",A.zipcode||""),i.append("pagarme_billing[company_address][street]",A.street||""),i.append("pagarme_billing[company_address][number]",A.number||""),i.append("pagarme_billing[company_address][neighborhood]",A.neighborhood||""),i.append("pagarme_billing[company_address][city]",A.city||""),i.append("pagarme_billing[company_address][state]",String(A.state||"").slice(0,2))}i.append("_method","PUT"),i.append("image",r.image),r.transform(()=>i).post(a,{forceFormData:!0})}else r.transform(i=>(i.billing_type==="subscription"?(i.base_interval=i.base_interval||"monthly",i.subscription={grace_period_days:Math.max(0,Number(i.subscription?.grace_period_days??0)),notify_days_before:Math.max(0,Number(i.subscription?.notify_days_before??3)),renewal_window_days:Math.max(0,Number(i.subscription?.renewal_window_days??7))}):delete i.subscription,i.sms=ra(),i)).put(a)}return(n,e)=>(s(),l("div",Hn,[t("aside",Wn,[t("nav",Qn,[(s(!0),l(z,null,I(_.value,a=>(s(),l(z,{key:a.id},[a.linkOnly&&a.id==="member_builder"&&k.produto.type==="area_membros"?(s(),l("a",{key:0,href:`/produtos/${k.produto.id}/member-builder`,class:g(["flex items-center gap-2.5 rounded-lg px-3 py-2.5 text-sm font-medium transition-all duration-200","text-zinc-600 hover:bg-zinc-200/80 hover:text-zinc-900 dark:text-zinc-400 dark:hover:bg-zinc-700/80 dark:hover:text-white"]),onClick:ae(Ce,["prevent"])},[(s(),L(qe(a.icon),{class:"h-4 w-4 shrink-0","aria-hidden":"true"})),c(" "+p(a.label),1)],8,Jn)):it(a)?(s(),l("button",{key:1,type:"button",class:g(["flex w-full items-center gap-2.5 rounded-lg px-3 py-2.5 text-left text-sm font-medium transition-all duration-200",H.value===a.id?"bg-white text-[var(--color-primary)] shadow-sm dark:bg-zinc-700 dark:text-[var(--color-primary)]":"text-zinc-600 hover:bg-zinc-200/80 hover:text-zinc-900 dark:text-zinc-400 dark:hover:bg-zinc-700/80 dark:hover:text-white"]),"aria-current":H.value===a.id?"page":void 0,onClick:i=>lt(a.id)},[(s(),L(qe(a.icon),{class:"h-4 w-4 shrink-0","aria-hidden":"true"})),t("span",Yn,[t("span",Zn,p(a.label),1),a.beta?(s(),L(fa,{key:0,size:"xs"})):m("",!0)])],10,Kn)):m("",!0)],64))),128))])]),d(Io,{"aria-label":"Abas de edição do produto","wrapper-class":"pb-2 lg:hidden","nav-class":"gap-2 snap-x snap-mandatory rounded-xl bg-zinc-100/80 p-1 dark:bg-zinc-800/80"},{default:v(()=>[(s(!0),l(z,null,I(_.value,a=>(s(),l(z,{key:a.id},[a.linkOnly&&a.id==="member_builder"&&k.produto.type==="area_membros"?(s(),l("a",{key:0,href:`/produtos/${k.produto.id}/member-builder`,class:g(["flex snap-center items-center gap-2 rounded-lg px-3 py-2 text-sm font-medium transition-all duration-200","text-zinc-600 hover:text-zinc-900 dark:text-zinc-400 dark:hover:text-white"]),onClick:ae(Ce,["prevent"])},[(s(),L(qe(a.icon),{class:"h-4 w-4 shrink-0","aria-hidden":"true"})),c(" "+p(a.label),1)],8,es)):it(a)?(s(),l("button",{key:1,type:"button",ref_for:!0,ref:H.value===a.id?dt.value:void 0,class:g(["flex snap-center items-center gap-2 rounded-lg px-3 py-2 text-sm font-medium transition-all duration-200",H.value===a.id?"bg-white text-[var(--color-primary)] shadow-sm dark:bg-zinc-700 dark:text-[var(--color-primary)]":"text-zinc-600 hover:text-zinc-900 dark:text-zinc-400 dark:hover:text-white"]),"aria-current":H.value===a.id?"page":void 0,onClick:i=>lt(a.id)},[(s(),L(qe(a.icon),{class:"h-4 w-4 shrink-0","aria-hidden":"true"})),t("span",as,[c(p(a.label)+" ",1),a.beta?(s(),L(fa,{key:0,size:"xs"})):m("",!0)])],10,ts)):m("",!0)],64))),128))]),_:1}),t("div",os,[H.value==="geral"?(s(),l(z,{key:0},[t("form",{class:"mx-auto w-full max-w-3xl space-y-8 xl:max-w-6xl",onSubmit:ae(Ee,["prevent"])},[t("div",rs,[t("section",ns,[e[138]||(e[138]=t("div",{class:"border-b border-zinc-200/80 bg-zinc-50/80 px-6 py-4 dark:border-zinc-700/80 dark:bg-zinc-800/50"},[t("h2",{class:"text-base font-semibold text-zinc-900 dark:text-white"},"Informações básicas"),t("p",{class:"mt-0.5 text-sm text-zinc-500 dark:text-zinc-400"},"Nome, identificador e imagem do produto.")],-1)),t("div",ss,[t("div",ls,[t("div",is,[t("div",null,[e[131]||(e[131]=t("label",{class:"mb-1.5 block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Nome do produto *",-1)),x(t("input",{"onUpdate:modelValue":e[0]||(e[0]=a=>o(r).name=a),type:"text",required:"",placeholder:"Ex: Curso Completo de X",class:g(U)},null,512),[[$,o(r).name]]),o(r).errors.name?(s(),l("p",ds,p(o(r).errors.name),1)):m("",!0)]),t("div",null,[e[132]||(e[132]=t("label",{class:"mb-1.5 block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Slug (URL) *",-1)),x(t("input",{"onUpdate:modelValue":e[1]||(e[1]=a=>o(r).slug=a),type:"text",required:"",placeholder:"curso-completo-x",class:g(U)},null,512),[[$,o(r).slug]]),o(r).errors.slug?(s(),l("p",us,p(o(r).errors.slug),1)):m("",!0),e[133]||(e[133]=t("p",{class:"mt-1 text-xs text-zinc-500 dark:text-zinc-400"},"Usado em URLs e área de membros. Apenas letras minúsculas, números e hífens.",-1))]),t("div",null,[e[134]||(e[134]=t("label",{class:"mb-1.5 block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Descrição",-1)),x(t("textarea",{"onUpdate:modelValue":e[2]||(e[2]=a=>o(r).description=a),rows:"3",placeholder:"Breve descrição do produto...",class:g(U)},null,512),[[$,o(r).description]])]),t("div",cs,[d(me,{modelValue:o(r).is_active,"onUpdate:modelValue":e[3]||(e[3]=a=>o(r).is_active=a),label:"Produto ativo"},null,8,["modelValue"])])]),t("div",ps,[e[136]||(e[136]=t("label",{class:"mb-2 block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Imagem do produto",-1)),e[137]||(e[137]=t("p",{class:"mb-2 text-xs text-zinc-500 dark:text-zinc-400"},"1:1, ex.: 400×400 px.",-1)),t("label",ms,[na.value?(s(),l(z,{key:0},[t("img",{src:na.value,alt:"Preview",class:"h-full w-full object-cover"},null,8,bs),e[135]||(e[135]=t("span",{class:"absolute inset-0 flex items-center justify-center bg-black/40 opacity-0 transition opacity hover:opacity-100"},[t("span",{class:"rounded-lg bg-white/90 px-2 py-1 text-xs font-medium text-zinc-800 dark:bg-zinc-900 dark:text-white"},"Trocar")],-1))],64)):(s(),l(z,{key:1},[d(o(za),{class:"h-8 w-8 text-zinc-400 dark:text-zinc-500"}),t("span",xs,p(o(r).image?.name||"Enviar"),1)],64)),t("input",{type:"file",accept:"image/*",class:"hidden",onChange:mo},null,32)])])])])]),t("section",ys,[e[168]||(e[168]=t("div",{class:"border-b border-zinc-200/80 bg-zinc-50/80 px-6 py-4 dark:border-zinc-700/80 dark:bg-zinc-800/50"},[t("h2",{class:"text-base font-semibold text-zinc-900 dark:text-white"},"Preço e cobrança"),t("p",{class:"mt-0.5 text-sm text-zinc-500 dark:text-zinc-400"},"Defina como o produto será cobrado e o valor base.")],-1)),t("div",vs,[t("div",null,[e[139]||(e[139]=t("label",{class:"mb-2 block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Tipo de cobrança *",-1)),t("div",fs,[(s(!0),l(z,null,I(k.billingTypes,a=>(s(),l("button",{key:a.value,type:"button",class:g(["flex items-center justify-center rounded-xl border-2 px-4 py-3.5 text-sm font-medium transition-all duration-200",o(r).billing_type===a.value?"border-[var(--color-primary)] bg-[var(--color-primary)]/10 text-[var(--color-primary)] shadow-sm dark:bg-[var(--color-primary)]/20 dark:text-[var(--color-primary)]":"border-zinc-200 bg-zinc-50/50 text-zinc-600 hover:border-zinc-300 hover:bg-zinc-100 dark:border-zinc-600 dark:bg-zinc-800/50 dark:text-zinc-400 dark:hover:border-zinc-500 dark:hover:bg-zinc-700/50"]),onClick:i=>o(r).billing_type=a.value},p(a.label),11,gs))),128))])]),t("div",_s,[t("div",ks,[t("div",zs,[e[140]||(e[140]=t("label",{class:"mb-2 block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Preço base (BRL) *",-1)),x(t("input",{"onUpdate:modelValue":e[4]||(e[4]=a=>o(r).price=a),type:"number",step:"0.01",min:"0",required:"",placeholder:"0,00",class:g(U)},null,512),[[$,o(r).price]]),t("p",hs,"Aproximado: € "+p(Ia.value)+" · US$ "+p(Ra.value),1),o(r).errors.price?(s(),l("p",ws,p(o(r).errors.price),1)):m("",!0)]),t("div",Cs,[t("label",$s,[d(o(be),{class:"h-3.5 w-3.5 text-zinc-400","aria-hidden":"true"}),e[141]||(e[141]=c(" Combo ",-1))]),Pe.value.length?(s(),l("div",{key:1,ref_key:"comboDropdownMainEl",ref:la,class:"relative"},[t("button",{type:"button",class:"flex w-full items-center justify-between gap-2 rounded-xl border border-zinc-200 bg-white px-3 py-2.5 text-left text-sm text-zinc-800 shadow-sm transition hover:border-zinc-300 dark:border-zinc-600 dark:bg-zinc-900 dark:text-zinc-100 dark:hover:border-zinc-500","aria-expanded":te.value==="main",onClick:e[5]||(e[5]=a=>Bt("main"))},[t("span",Vs,p(Dt(o(r))),1),d(o(At),{class:g(["h-4 w-4 shrink-0 text-zinc-500 transition-transform dark:text-zinc-400",te.value==="main"?"rotate-180":""]),"aria-hidden":"true"},null,8,["class"])],8,Ps),x(t("div",{class:"absolute left-0 right-0 z-50 mt-1 max-h-56 space-y-1 overflow-y-auto rounded-xl border border-zinc-200 bg-white p-2 shadow-lg dark:border-zinc-600 dark:bg-zinc-900",role:"listbox",onClick:e[6]||(e[6]=ae(()=>{},["stop"]))},[(s(!0),l(z,null,I(Pe.value,a=>(s(),L(Qt,{key:a.id,"model-value":o(r).combo_product_ids.includes(a.id),class:"!w-full !items-start !gap-2 py-1","onUpdate:modelValue":i=>Ot("main",a.id,i)},{default:v(()=>[t("span",Us,p(a.name),1)]),_:2},1032,["model-value","onUpdate:modelValue"]))),128))],512),[[nt,te.value==="main"]])],512)):(s(),l("p",Ss,"Nenhum outro produto ativo no tenant para vincular.")),e[142]||(e[142]=t("p",{class:"mt-1.5 text-xs text-zinc-500 dark:text-zinc-400"},"Abra a lista e marque um ou mais produtos — acesso extra sem alterar o valor do pedido.",-1)),o(r).errors.combo_product_ids?(s(),l("p",js,p(o(r).errors.combo_product_ids),1)):m("",!0)])]),t("div",As,[e[144]||(e[144]=t("label",{class:"mb-2 block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Moeda no checkout",-1)),e[145]||(e[145]=t("p",{class:"mb-3 text-xs text-zinc-500 dark:text-zinc-400"}," Global permite que o cliente escolha a moeda (com detecção por país). Moeda única oculta o seletor e usa só a moeda escolhida. ",-1)),t("div",Es,[t("button",{type:"button",class:g(["rounded-xl border-2 px-4 py-2.5 text-sm font-medium transition-all",o(r).checkout_currency.mode==="global"?"border-[var(--color-primary)] bg-[var(--color-primary)]/10 text-[var(--color-primary)]":"border-zinc-200 bg-white text-zinc-600 hover:border-zinc-300 dark:border-zinc-600 dark:bg-zinc-900 dark:text-zinc-400"]),onClick:e[7]||(e[7]=a=>o(r).checkout_currency.mode="global")}," Global (multimoeda) ",2),t("button",{type:"button",class:g(["rounded-xl border-2 px-4 py-2.5 text-sm font-medium transition-all",o(r).checkout_currency.mode==="fixed"?"border-[var(--color-primary)] bg-[var(--color-primary)]/10 text-[var(--color-primary)]":"border-zinc-200 bg-white text-zinc-600 hover:border-zinc-300 dark:border-zinc-600 dark:bg-zinc-900 dark:text-zinc-400"]),onClick:e[8]||(e[8]=a=>o(r).checkout_currency.mode="fixed")}," Moeda única ",2)]),o(r).checkout_currency.mode==="fixed"?(s(),l("div",Is,[e[143]||(e[143]=t("label",{class:"mb-2 block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Moeda fixa *",-1)),x(t("select",{"onUpdate:modelValue":e[9]||(e[9]=a=>o(r).checkout_currency.currency=a),required:"",class:g(U)},[(s(!0),l(z,null,I(k.tenant_currencies,a=>(s(),l("option",{key:a.code,value:String(a.code).toUpperCase()},p(a.label||a.code)+" ("+p(String(a.code).toUpperCase())+") ",9,Rs))),128))],512),[[Z,o(r).checkout_currency.currency]]),o(r).errors["checkout_currency.currency"]?(s(),l("p",Ms,p(o(r).errors["checkout_currency.currency"]),1)):m("",!0)])):m("",!0)]),o(r).billing_type==="subscription"?(s(),l("div",Ls,[e[147]||(e[147]=t("label",{class:"mb-2 block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Recorrência *",-1)),x(t("select",{"onUpdate:modelValue":e[10]||(e[10]=a=>o(r).base_interval=a),required:"",class:g(U)},[...e[146]||(e[146]=[we('',6)])],512),[[Z,o(r).base_interval]]),e[148]||(e[148]=t("p",{class:"mt-1.5 text-xs text-zinc-500 dark:text-zinc-400"},"Intervalo da cobrança recorrente do preço base.",-1))])):m("",!0),o(r).billing_type==="subscription"?(s(),l("div",Ns,[e[155]||(e[155]=t("h3",{class:"text-sm font-semibold text-zinc-900 dark:text-white"},"Assinatura e renovação",-1)),e[156]||(e[156]=t("p",{class:"mt-1 text-xs text-zinc-500 dark:text-zinc-400"}," Lembretes por e-mail com link de renovação. O cliente paga manualmente em /renovar. ",-1)),t("div",Ts,[t("div",null,[e[149]||(e[149]=t("label",{class:"mb-1 block text-xs font-medium text-zinc-600 dark:text-zinc-400"},"Carência (dias após vencer)",-1)),x(t("input",{"onUpdate:modelValue":e[11]||(e[11]=a=>o(r).subscription.grace_period_days=a),type:"number",min:"0",max:"365",class:g(U)},null,512),[[$,o(r).subscription.grace_period_days,void 0,{number:!0}]]),e[150]||(e[150]=t("p",{class:"mt-1 text-[11px] text-zinc-500"},"Acesso continua após o vencimento.",-1))]),t("div",null,[e[151]||(e[151]=t("label",{class:"mb-1 block text-xs font-medium text-zinc-600 dark:text-zinc-400"},"Avisar antes (dias)",-1)),x(t("input",{"onUpdate:modelValue":e[12]||(e[12]=a=>o(r).subscription.notify_days_before=a),type:"number",min:"0",max:"90",class:g(U)},null,512),[[$,o(r).subscription.notify_days_before,void 0,{number:!0}]]),e[152]||(e[152]=t("p",{class:"mt-1 text-[11px] text-zinc-500"},"1 e-mail por dia até renovar.",-1))]),t("div",null,[e[153]||(e[153]=t("label",{class:"mb-1 block text-xs font-medium text-zinc-600 dark:text-zinc-400"},"Janela de renovação (dias)",-1)),x(t("input",{"onUpdate:modelValue":e[13]||(e[13]=a=>o(r).subscription.renewal_window_days=a),type:"number",min:"0",max:"365",class:g(U)},null,512),[[$,o(r).subscription.renewal_window_days,void 0,{number:!0}]]),e[154]||(e[154]=t("p",{class:"mt-1 text-[11px] text-zinc-500"},"Dias após vencer em que o link /renovar funciona.",-1))])])])):m("",!0)]),t("div",Os,[t("p",Bs,p(o(r).billing_type==="one_time"?"Ofertas extras":"Planos de assinatura"),1),t("p",Ds,[o(r).billing_type==="one_time"?(s(),l(z,{key:0},[c(" Múltiplas ofertas (preços). Cada uma tem seu próprio link de checkout. ")],64)):(s(),l(z,{key:1},[c(" Cadastre os planos (preço e periodicidade). Cada plano tem seu próprio link. ")],64))]),o(r).billing_type==="one_time"?(s(),l(z,{key:0},[t("ul",qs,[(s(!0),l(z,null,I(k.produto.offers||[],a=>(s(),l("li",{key:a.id,class:"panel-card flex flex-wrap items-center gap-3 px-3 py-2.5"},[t("div",Fs,[t("span",Gs,p(a.name),1),t("span",Xs,p(a.currency)+" "+p(Number(a.price).toFixed(2)),1),(s(!0),l(z,null,I(a.combo_product_names||[],(i,y)=>(s(),l("span",{key:"oc-"+a.id+"-"+y,class:"ml-1 inline-block rounded-md bg-zinc-200/80 px-1.5 py-0.5 text-[10px] font-medium text-zinc-600 dark:bg-zinc-700 dark:text-zinc-300"}," + "+p(i),1))),128)),xa(a)?(s(),l("a",{key:0,href:xa(a),target:"_blank",rel:"noopener noreferrer",class:"ml-2 inline-flex items-center gap-1 text-xs text-[var(--color-primary)] hover:underline"},[d(o(Ge),{class:"h-3 w-3"}),e[157]||(e[157]=c(" Link ",-1))],8,Hs)):m("",!0)]),t("div",Ws,[d(E,{size:"sm",variant:"outline",class:"h-8 w-8 p-0",onClick:i=>Ga(a)},{default:v(()=>[d(o(Xe),{class:"h-3.5 w-3.5"})]),_:1},8,["onClick"]),d(E,{size:"sm",variant:"outline",class:"h-8 w-8 p-0 text-red-600 hover:bg-red-50 dark:text-red-400 dark:hover:bg-red-950/30",onClick:i=>Ha(a)},{default:v(()=>[d(o(Vt),{class:"h-3.5 w-3.5"})]),_:1},8,["onClick"])])]))),128)),!k.produto.offers||!k.produto.offers.length?(s(),l("li",Qs," Nenhuma oferta. Adicione abaixo ou use apenas o preço base. ")):m("",!0)]),gt.value?(s(),l("form",{key:0,class:"panel-card-sm",onSubmit:ae(Xa,["prevent"])},[t("p",Js,p(Ve.value?"Editar oferta":"Nova oferta"),1),t("div",Ks,[x(t("input",{"onUpdate:modelValue":e[14]||(e[14]=a=>o(J).name=a),type:"text",required:"",class:g(U),placeholder:"Nome (ex: Básico)"},null,512),[[$,o(J).name]]),x(t("input",{"onUpdate:modelValue":e[15]||(e[15]=a=>o(J).price=a),type:"number",step:"0.01",min:"0",required:"",class:g(U),placeholder:"Preço"},null,512),[[$,o(J).price]]),x(t("select",{"onUpdate:modelValue":e[16]||(e[16]=a=>o(J).currency=a),class:g(U+" min-w-0")},[...e[158]||(e[158]=[t("option",{value:"BRL"},"BRL",-1),t("option",{value:"EUR"},"EUR",-1),t("option",{value:"USD"},"USD",-1)])],2),[[Z,o(J).currency]])]),t("div",Ys,[t("label",Zs,[d(o(be),{class:"h-3 w-3","aria-hidden":"true"}),e[159]||(e[159]=c(" Combo ",-1))]),Pe.value.length?(s(),l("div",{key:1,ref_key:"comboDropdownOfferEl",ref:ia,class:"relative"},[t("button",{type:"button",class:"flex w-full items-center justify-between gap-2 rounded-xl border border-zinc-200 bg-white px-3 py-2 text-left text-sm text-zinc-800 shadow-sm transition hover:border-zinc-300 dark:border-zinc-600 dark:bg-zinc-900 dark:text-zinc-100 dark:hover:border-zinc-500","aria-expanded":te.value==="offer",onClick:e[17]||(e[17]=a=>Bt("offer"))},[t("span",al,p(Dt(o(J))),1),d(o(At),{class:g(["h-4 w-4 shrink-0 text-zinc-500 transition-transform dark:text-zinc-400",te.value==="offer"?"rotate-180":""]),"aria-hidden":"true"},null,8,["class"])],8,tl),x(t("div",{class:"absolute left-0 right-0 z-50 mt-1 max-h-52 space-y-1 overflow-y-auto rounded-xl border border-zinc-200 bg-white p-2 shadow-lg dark:border-zinc-600 dark:bg-zinc-900",role:"listbox",onClick:e[18]||(e[18]=ae(()=>{},["stop"]))},[(s(!0),l(z,null,I(Pe.value,a=>(s(),L(Qt,{key:"of-"+a.id,"model-value":o(J).combo_product_ids.includes(a.id),class:"!w-full !items-start !gap-2 py-1","onUpdate:modelValue":i=>Ot("offer",a.id,i)},{default:v(()=>[t("span",ol,p(a.name),1)]),_:2},1032,["model-value","onUpdate:modelValue"]))),128))],512),[[nt,te.value==="offer"]])],512)):(s(),l("p",el,"Nenhum outro produto disponível."))]),o(J).errors.combo_product_ids?(s(),l("p",rl,p(o(J).errors.combo_product_ids),1)):m("",!0),t("div",nl,[d(E,{type:"submit",size:"sm",disabled:o(J).processing},{default:v(()=>[c(p(Ve.value?"Atualizar":"Adicionar"),1)]),_:1},8,["disabled"]),d(E,{type:"button",size:"sm",variant:"outline",onClick:qt},{default:v(()=>[...e[160]||(e[160]=[c("Cancelar",-1)])]),_:1})])],32)):(s(),L(E,{key:1,type:"button",size:"sm",variant:"outline",class:"mt-1",onClick:Fa},{default:v(()=>[d(o(tt),{class:"mr-1.5 h-3.5 w-3.5"}),e[161]||(e[161]=c(" Adicionar oferta ",-1))]),_:1}))],64)):(s(),l(z,{key:1},[t("ul",sl,[(s(!0),l(z,null,I(k.produto.subscription_plans||[],a=>(s(),l("li",{key:a.id,class:"panel-card flex flex-wrap items-center gap-3 px-3 py-2.5"},[t("div",ll,[t("span",il,p(a.name),1),t("span",dl,p(a.currency)+" "+p(Number(a.price).toFixed(2))+" · "+p(qa(a.interval)),1),(s(!0),l(z,null,I(a.combo_product_names||[],(i,y)=>(s(),l("span",{key:"pc-"+a.id+"-"+y,class:"ml-1 inline-block rounded-md bg-zinc-200/80 px-1.5 py-0.5 text-[10px] font-medium text-zinc-600 dark:bg-zinc-700 dark:text-zinc-300"}," + "+p(i),1))),128)),ya(a)?(s(),l("a",{key:0,href:ya(a),target:"_blank",rel:"noopener noreferrer",class:"ml-2 inline-flex items-center gap-1 text-xs text-[var(--color-primary)] hover:underline"},[d(o(Ge),{class:"h-3 w-3"}),e[162]||(e[162]=c(" Link ",-1))],8,ul)):m("",!0)]),t("div",cl,[d(E,{size:"sm",variant:"outline",class:"h-8 w-8 p-0",onClick:i=>Qa(a)},{default:v(()=>[d(o(Xe),{class:"h-3.5 w-3.5"})]),_:1},8,["onClick"]),d(E,{size:"sm",variant:"outline",class:"h-8 w-8 p-0 text-red-600 hover:bg-red-50 dark:text-red-400 dark:hover:bg-red-950/30",onClick:i=>Ka(a)},{default:v(()=>[d(o(Vt),{class:"h-3.5 w-3.5"})]),_:1},8,["onClick"])])]))),128)),!k.produto.subscription_plans||!k.produto.subscription_plans.length?(s(),l("li",pl," Nenhum plano. Adicione abaixo. ")):m("",!0)]),_t.value?(s(),l("form",{key:0,class:"panel-card-sm",onSubmit:ae(Ja,["prevent"])},[t("p",ml,p(Ue.value?"Editar plano":"Novo plano"),1),t("div",bl,[x(t("input",{"onUpdate:modelValue":e[19]||(e[19]=a=>o(D).name=a),type:"text",required:"",class:g(U),placeholder:"Nome (ex: Mensal)"},null,512),[[$,o(D).name]]),x(t("input",{"onUpdate:modelValue":e[20]||(e[20]=a=>o(D).price=a),type:"number",step:"0.01",min:"0",required:"",class:g(U),placeholder:"Preço"},null,512),[[$,o(D).price]]),x(t("select",{"onUpdate:modelValue":e[21]||(e[21]=a=>o(D).currency=a),class:g(U)},[...e[163]||(e[163]=[t("option",{value:"BRL"},"BRL",-1),t("option",{value:"EUR"},"EUR",-1),t("option",{value:"USD"},"USD",-1)])],512),[[Z,o(D).currency]]),x(t("select",{"onUpdate:modelValue":e[22]||(e[22]=a=>o(D).interval=a),required:"",class:g(U)},[...e[164]||(e[164]=[we('',6)])],512),[[Z,o(D).interval]]),t("div",{ref_key:"comboDropdownPlanEl",ref:da,class:"relative sm:col-span-2"},[t("label",xl,[d(o(be),{class:"h-3 w-3","aria-hidden":"true"}),e[165]||(e[165]=c(" Combo ",-1))]),Pe.value.length?(s(),l(z,{key:1},[t("button",{type:"button",class:"flex w-full items-center justify-between gap-2 rounded-xl border border-zinc-200 bg-white px-3 py-2 text-left text-sm text-zinc-800 shadow-sm transition hover:border-zinc-300 dark:border-zinc-600 dark:bg-zinc-900 dark:text-zinc-100 dark:hover:border-zinc-500","aria-expanded":te.value==="plan",onClick:e[23]||(e[23]=a=>Bt("plan"))},[t("span",fl,p(Dt(o(D))),1),d(o(At),{class:g(["h-4 w-4 shrink-0 text-zinc-500 transition-transform dark:text-zinc-400",te.value==="plan"?"rotate-180":""]),"aria-hidden":"true"},null,8,["class"])],8,vl),x(t("div",{class:"absolute left-0 right-0 z-50 mt-1 max-h-52 space-y-1 overflow-y-auto rounded-xl border border-zinc-200 bg-white p-2 shadow-lg dark:border-zinc-600 dark:bg-zinc-900",role:"listbox",onClick:e[24]||(e[24]=ae(()=>{},["stop"]))},[(s(!0),l(z,null,I(Pe.value,a=>(s(),L(Qt,{key:"pf-"+a.id,"model-value":o(D).combo_product_ids.includes(a.id),class:"!w-full !items-start !gap-2 py-1","onUpdate:modelValue":i=>Ot("plan",a.id,i)},{default:v(()=>[t("span",gl,p(a.name),1)]),_:2},1032,["model-value","onUpdate:modelValue"]))),128))],512),[[nt,te.value==="plan"]])],64)):(s(),l("p",yl,"Nenhum outro produto disponível."))],512)]),o(D).errors.combo_product_ids?(s(),l("p",_l,p(o(D).errors.combo_product_ids),1)):m("",!0),t("div",kl,[d(E,{type:"submit",size:"sm",disabled:o(D).processing},{default:v(()=>[c(p(Ue.value?"Atualizar":"Adicionar"),1)]),_:1},8,["disabled"]),d(E,{type:"button",size:"sm",variant:"outline",onClick:Ft},{default:v(()=>[...e[166]||(e[166]=[c("Cancelar",-1)])]),_:1})])],32)):(s(),L(E,{key:1,type:"button",size:"sm",variant:"outline",class:"mt-1",onClick:Wa},{default:v(()=>[d(o(tt),{class:"mr-1.5 h-3.5 w-3.5"}),e[167]||(e[167]=c(" Adicionar plano ",-1))]),_:1}))],64))])])]),t("section",zl,[e[180]||(e[180]=t("div",{class:"border-b border-zinc-200/80 bg-zinc-50/80 px-6 py-4 dark:border-zinc-700/80 dark:bg-zinc-800/50"},[t("h2",{class:"text-base font-semibold text-zinc-900 dark:text-white"},"Checkout público"),t("p",{class:"mt-0.5 text-sm text-zinc-500 dark:text-zinc-400"},[c(" Idioma e moeda exibidos no link de checkout, e valores fixos em outras moedas (opcional). Com "),t("strong",{class:"font-medium text-zinc-700 dark:text-zinc-300"},"CajuPay"),c(" (cartão e wallets), a cobrança é feita na moeda escolhida pelo cliente. ")])],-1)),t("div",hl,[t("div",wl,[d(me,{modelValue:o(r).checkout_force.enabled,"onUpdate:modelValue":e[25]||(e[25]=a=>o(r).checkout_force.enabled=a),label:"Forçar idioma no checkout"},null,8,["modelValue"]),e[171]||(e[171]=t("p",{class:"mt-2 text-xs text-zinc-500 dark:text-zinc-400"}," Quando ativo, ignora a sugestão de idioma por país (geo) até o visitante mudar manualmente no checkout. ",-1)),o(r).checkout_force.enabled?(s(),l("div",Cl,[e[170]||(e[170]=t("label",{class:"mb-2 block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Idioma *",-1)),x(t("select",{"onUpdate:modelValue":e[26]||(e[26]=a=>o(r).checkout_force.locale=a),required:"",class:g(U)},[...e[169]||(e[169]=[t("option",{value:"pt_BR"},"Português (Brasil)",-1),t("option",{value:"en"},"English",-1),t("option",{value:"es"},"Español",-1)])],512),[[Z,o(r).checkout_force.locale]]),o(r).errors["checkout_force.locale"]?(s(),l("p",$l,p(o(r).errors["checkout_force.locale"]),1)):m("",!0)])):m("",!0)]),t("div",Sl,[d(me,{modelValue:o(r).custom_prices_by_currency.enabled,"onUpdate:modelValue":e[27]||(e[27]=a=>o(r).custom_prices_by_currency.enabled=a),label:"Personalizar preço exibido/cobrado por moeda"},null,8,["modelValue"]),e[179]||(e[179]=t("p",{class:"mt-2 text-xs text-zinc-500 dark:text-zinc-400"},[c(" Aplica-se apenas ao "),t("strong",{class:"font-medium text-zinc-700 dark:text-zinc-300"},"preço base do produto"),c(" (sem oferta nem plano). Order bumps seguem em BRL e são convertidos pela taxa. ")],-1)),t("p",Pl,[e[173]||(e[173]=c(" Valores em moeda estrangeira com preço customizado são cobrados ",-1)),e[174]||(e[174]=t("strong",{class:"font-medium"},"naquela moeda",-1)),e[175]||(e[175]=c(" via CajuPay. Sem preço customizado, o valor em BRL é convertido pela taxa ",-1)),e[176]||(e[176]=t("code",{class:"rounded bg-zinc-200/80 px-1 dark:bg-zinc-700"},"rate_to_brl",-1)),e[177]||(e[177]=c(" de cada moeda nas ",-1)),d(o(Y),{href:"/configuracoes?tab=moedas",class:"text-[var(--color-primary)] hover:underline"},{default:v(()=>[...e[172]||(e[172]=[c("Configurações → Moedas",-1)])]),_:1}),e[178]||(e[178]=c(". ",-1))]),o(r).custom_prices_by_currency.enabled?(s(),l("div",Vl,[Lt.value.length?(s(),l("p",jl,p(Lt.value.length)+" moeda(s) habilitada(s) no checkout — preencha apenas as que deseja cobrar com valor fixo. ",1)):(s(),l("p",Ul," Nenhuma moeda extra além de BRL. Adicione moedas em Configurações para preencher valores aqui. ")),t("div",Al,[(s(!0),l(z,null,I(Lt.value,a=>(s(),l("div",{key:a.code,class:"max-w-xs"},[t("label",El,p(a.label||a.code)+" ("+p(String(a.code).toUpperCase())+") — opcional ",1),x(t("input",{"onUpdate:modelValue":i=>o(r).custom_prices_by_currency.amounts[String(a.code).toUpperCase()]=i,type:"number",step:"0.01",min:"0",placeholder:`Ex.: 10.00 em ${String(a.code).toUpperCase()}`,class:g(U)},null,8,Il),[[$,o(r).custom_prices_by_currency.amounts[String(a.code).toUpperCase()]]])]))),128))]),o(r).errors["custom_prices_by_currency.amounts"]?(s(),l("p",Rl,p(o(r).errors["custom_prices_by_currency.amounts"]),1)):m("",!0)])):m("",!0)])])])]),t("div",Ml,[d(E,{type:"submit",disabled:o(r).processing},{default:v(()=>[...e[181]||(e[181]=[c("Salvar alterações",-1)])]),_:1},8,["disabled"]),d(o(Y),{href:"/produtos",class:"inline-flex items-center rounded-xl border border-zinc-200 px-4 py-2.5 text-sm font-medium text-zinc-700 transition hover:bg-zinc-50 dark:border-zinc-600 dark:text-zinc-300 dark:hover:bg-zinc-800"},{default:v(()=>[...e[182]||(e[182]=[c(" Cancelar ",-1)])]),_:1})])],32),k.plugin_form_sections?.length?(s(),l("div",Ll,[d(Ho,{layout:"stack",items:k.plugin_form_sections,context:{produto:k.produto,product:k.produto}},null,8,["items","context"]),d(Wo,{zone:"produtos.edit.after_form",context:{produto:k.produto,product:k.produto}},null,8,["context"])])):m("",!0)],64)):m("",!0),H.value==="configuracoes"?(s(),l("form",{key:1,class:"w-full space-y-8",onSubmit:ae(Ee,["prevent"])},[t("section",Nl,[e[223]||(e[223]=t("div",{class:"border-b border-zinc-200/80 px-6 py-4 dark:border-zinc-700/80"},[t("h2",{class:"text-base font-semibold text-zinc-900 dark:text-white"},"Métodos de pagamento"),t("p",{class:"mt-0.5 text-sm text-zinc-500 dark:text-zinc-400"}," Selecione o gateway para cada forma de pagamento no checkout. ")],-1)),t("div",Tl,[t("div",Ol,[t("div",Bl,[t("div",Dl,[t("div",ql,[t("div",Fl,[t("img",{src:"/images/payment-methods/pix.svg",alt:"PIX",class:"h-7 w-7 object-contain",onError:e[28]||(e[28]=a=>a.target&&(a.target.style.display="none"))},null,32)]),e[183]||(e[183]=t("div",null,[t("p",{class:"font-semibold text-zinc-900 dark:text-white"},"PIX"),t("p",{class:"text-xs text-zinc-500 dark:text-zinc-400"},"Pagamento instantâneo")],-1))]),d(ke,{modelValue:o(r).payment_gateways.pix,"onUpdate:modelValue":e[29]||(e[29]=a=>o(r).payment_gateways.pix=a),options:fe("pix"),placeholder:"Nenhum",label:"Gateway PIX"},null,8,["modelValue","options"]),_e(o(r).payment_gateways.pix)?(s(),l("button",{key:0,type:"button",class:"inline-flex items-center gap-1.5 rounded-lg border border-zinc-200 px-3 py-2 text-sm font-medium text-zinc-700 transition hover:border-[var(--color-primary)] hover:bg-[var(--color-primary)]/10 hover:text-[var(--color-primary)] dark:border-zinc-600 dark:text-zinc-300 dark:hover:border-[var(--color-primary)] dark:hover:bg-[var(--color-primary)]/20",onClick:e[30]||(e[30]=a=>ge("pix"))},[d(o(be),{class:"h-4 w-4"}),e[184]||(e[184]=c(" Redundância ",-1))])):m("",!0),k.gateways_by_method.pix.length===0?(s(),l("p",Gl,[d(o(Y),{href:"/integracoes?tab=gateways",class:"text-[var(--color-primary)] hover:underline"},{default:v(()=>[...e[185]||(e[185]=[c("Conectar gateway",-1)])]),_:1})])):m("",!0)])]),o(r).billing_type==="one_time"?(s(),l("div",Xl,[t("div",Hl,[e[192]||(e[192]=we('
PIX Parcelado

PIX Parcelado

Entrada + parcelas (CajuPay)

BRL · pagamento único
',1)),d(ke,{modelValue:o(r).payment_gateways.pix_parcelado,"onUpdate:modelValue":e[31]||(e[31]=a=>o(r).payment_gateways.pix_parcelado=a),options:fe("pix_parcelado"),placeholder:"Nenhum",label:"Gateway PIX Parcelado"},null,8,["modelValue","options"]),o(r).payment_gateways.pix_parcelado==="cajupay"?(s(),l("button",{key:0,type:"button",class:"inline-flex items-center gap-1.5 rounded-lg border border-zinc-200 px-3 py-2 text-sm font-medium text-zinc-700 transition hover:border-[var(--color-primary)] hover:bg-[var(--color-primary)]/10 hover:text-[var(--color-primary)] dark:border-zinc-600 dark:text-zinc-300",onClick:e[32]||(e[32]=a=>wt.value=!0)},[d(o(tr),{class:"h-4 w-4"}),e[186]||(e[186]=c(" Definir regras ",-1))])):m("",!0),_e(o(r).payment_gateways.pix_parcelado)?(s(),l("button",{key:1,type:"button",class:"inline-flex items-center gap-1.5 rounded-lg border border-zinc-200 px-3 py-2 text-sm font-medium text-zinc-700 transition hover:border-[var(--color-primary)] hover:bg-[var(--color-primary)]/10 hover:text-[var(--color-primary)] dark:border-zinc-600 dark:text-zinc-300",onClick:e[33]||(e[33]=a=>ge("pix_parcelado"))},[d(o(be),{class:"h-4 w-4"}),e[187]||(e[187]=c(" Redundância ",-1))])):m("",!0),yo.value?(s(),l("p",Wl,[e[189]||(e[189]=c(" Aceite o contrato PIX Parcelado na ",-1)),d(o(Y),{href:"/integracoes?tab=gateways&gateway=cajupay",class:"font-medium underline"},{default:v(()=>[...e[188]||(e[188]=[c("configuração CajuPay",-1)])]),_:1}),e[190]||(e[190]=c(" antes de usar no checkout. ",-1))])):m("",!0),(k.gateways_by_method.pix_parcelado||[]).length===0?(s(),l("p",Ql,[d(o(Y),{href:"/integracoes?tab=gateways",class:"text-[var(--color-primary)] hover:underline"},{default:v(()=>[...e[191]||(e[191]=[c("Conectar CajuPay",-1)])]),_:1})])):m("",!0)])])):m("",!0),t("div",Jl,[t("div",Kl,[t("div",Yl,[t("div",Zl,[t("img",{src:"/images/payment-methods/card.png",alt:"Cartão",class:"h-7 w-7 object-contain",onError:e[34]||(e[34]=a=>a.target&&(a.target.style.display="none"))},null,32)]),e[193]||(e[193]=t("div",null,[t("p",{class:"font-semibold text-zinc-900 dark:text-white"},"Cartão"),t("p",{class:"text-xs text-zinc-500 dark:text-zinc-400"},"Crédito e débito")],-1))]),d(ke,{modelValue:o(r).payment_gateways.card,"onUpdate:modelValue":e[35]||(e[35]=a=>o(r).payment_gateways.card=a),options:fe("card"),placeholder:"Nenhum",label:"Gateway Cartão"},null,8,["modelValue","options"]),_e(o(r).payment_gateways.card)?(s(),l("button",{key:0,type:"button",class:"inline-flex items-center gap-1.5 rounded-lg border border-zinc-200 px-3 py-2 text-sm font-medium text-zinc-700 transition hover:border-[var(--color-primary)] hover:bg-[var(--color-primary)]/10 hover:text-[var(--color-primary)] dark:border-zinc-600 dark:text-zinc-300 dark:hover:border-[var(--color-primary)] dark:hover:bg-[var(--color-primary)]/20",onClick:e[36]||(e[36]=a=>ge("card"))},[d(o(be),{class:"h-4 w-4"}),e[194]||(e[194]=c(" Redundância ",-1))])):m("",!0),va(o(r).payment_gateways.card)?(s(),l("button",{key:1,type:"button",class:"inline-flex items-center gap-1.5 rounded-lg border border-zinc-200 px-3 py-2 text-sm font-medium text-zinc-700 transition hover:border-[var(--color-primary)] hover:bg-[var(--color-primary)]/10 hover:text-[var(--color-primary)] dark:border-zinc-600 dark:text-zinc-300 dark:hover:border-[var(--color-primary)] dark:hover:bg-[var(--color-primary)]/20",onClick:e[37]||(e[37]=a=>he.value=!0)},[d(o(Jt),{class:"h-4 w-4"}),e[195]||(e[195]=c(" Configurar endereço (checkout) ",-1))])):m("",!0),k.gateways_by_method.card.length===0?(s(),l("p",ei,[d(o(Y),{href:"/integracoes?tab=gateways",class:"text-[var(--color-primary)] hover:underline"},{default:v(()=>[...e[196]||(e[196]=[c("Conectar gateway",-1)])]),_:1})])):m("",!0),go(o(r).payment_gateways.card)?(s(),l("div",ti,[t("div",ai,[t("div",oi,[e[197]||(e[197]=t("p",{class:"text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Permitir parcelamento",-1)),t("p",ri,"Cliente poderá parcelar no cartão de crédito ("+p(_o(o(r).payment_gateways.card))+")",1)]),d(me,{modelValue:o(r).card_installments.enabled,"onUpdate:modelValue":e[38]||(e[38]=a=>o(r).card_installments.enabled=a),class:"shrink-0"},null,8,["modelValue"])]),o(r).card_installments.enabled?(s(),l("div",ni,[e[198]||(e[198]=t("label",{for:"card-installments-max",class:"mb-2 block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Até quantas parcelas",-1)),x(t("select",{id:"card-installments-max","onUpdate:modelValue":e[39]||(e[39]=a=>o(r).card_installments.max=a),class:"w-full rounded-lg border border-zinc-300 bg-white px-3 py-2.5 text-sm text-zinc-900 shadow-sm focus:border-[var(--color-primary)] focus:outline-none focus:ring-1 focus:ring-[var(--color-primary)] dark:border-zinc-600 dark:bg-zinc-700 dark:text-zinc-100"},[(s(!0),l(z,null,I(Nt.value,a=>(s(),l("option",{key:a,value:a},p(a)+"x",9,si))),128))],512),[[Z,o(r).card_installments.max,void 0,{number:!0}]]),t("p",li,"Com o preço de R$ "+p(Ke.value.toFixed(2))+", até "+p(Nt.value)+"x (mín. R$ "+p(Yt)+",00 por parcela).",1)])):m("",!0)])):m("",!0),o(r).payment_gateways.card==="stripe"?(s(),l("div",ii,[t("div",di,[e[199]||(e[199]=t("div",{class:"min-w-0"},[t("p",{class:"text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Usar Stripe Link"),t("p",{class:"mt-0.5 text-xs text-zinc-500 dark:text-zinc-400"},"Permitir que o cliente use Link para preencher dados do cartão (Stripe)")],-1)),d(me,{modelValue:o(r).stripe_link_enabled,"onUpdate:modelValue":e[40]||(e[40]=a=>o(r).stripe_link_enabled=a),class:"shrink-0"},null,8,["modelValue"])])])):m("",!0)])]),t("div",ui,[t("div",ci,[t("div",pi,[t("div",mi,[t("img",{src:"/images/payment-methods/boleto.png",alt:"Boleto",class:"h-7 w-7 object-contain",onError:e[41]||(e[41]=a=>a.target&&(a.target.style.display="none"))},null,32)]),e[200]||(e[200]=t("div",null,[t("p",{class:"font-semibold text-zinc-900 dark:text-white"},"Boleto"),t("p",{class:"text-xs text-zinc-500 dark:text-zinc-400"},"Pagamento bancário")],-1))]),d(ke,{modelValue:o(r).payment_gateways.boleto,"onUpdate:modelValue":e[42]||(e[42]=a=>o(r).payment_gateways.boleto=a),options:fe("boleto"),placeholder:"Nenhum",label:"Gateway Boleto"},null,8,["modelValue","options"]),_e(o(r).payment_gateways.boleto)?(s(),l("button",{key:0,type:"button",class:"inline-flex items-center gap-1.5 rounded-lg border border-zinc-200 px-3 py-2 text-sm font-medium text-zinc-700 transition hover:border-[var(--color-primary)] hover:bg-[var(--color-primary)]/10 hover:text-[var(--color-primary)] dark:border-zinc-600 dark:text-zinc-300 dark:hover:border-[var(--color-primary)] dark:hover:bg-[var(--color-primary)]/20",onClick:e[43]||(e[43]=a=>ge("boleto"))},[d(o(be),{class:"h-4 w-4"}),e[201]||(e[201]=c(" Redundância ",-1))])):m("",!0),va(o(r).payment_gateways.boleto)?(s(),l("button",{key:1,type:"button",class:"inline-flex items-center gap-1.5 rounded-lg border border-zinc-200 px-3 py-2 text-sm font-medium text-zinc-700 transition hover:border-[var(--color-primary)] hover:bg-[var(--color-primary)]/10 hover:text-[var(--color-primary)] dark:border-zinc-600 dark:text-zinc-300 dark:hover:border-[var(--color-primary)] dark:hover:bg-[var(--color-primary)]/20",onClick:e[44]||(e[44]=a=>he.value=!0)},[d(o(Jt),{class:"h-4 w-4"}),e[202]||(e[202]=c(" Configurar endereço (checkout) ",-1))])):m("",!0),k.gateways_by_method.boleto.length===0?(s(),l("p",bi,[d(o(Y),{href:"/integracoes?tab=gateways",class:"text-[var(--color-primary)] hover:underline"},{default:v(()=>[...e[203]||(e[203]=[c("Conectar gateway",-1)])]),_:1})])):m("",!0)])]),t("div",xi,[t("div",yi,[e[206]||(e[206]=we('

Apple Pay

Carteira digital

Somente dispositivos iOS
',1)),d(ke,{modelValue:o(r).payment_gateways.apple_pay,"onUpdate:modelValue":e[45]||(e[45]=a=>o(r).payment_gateways.apple_pay=a),options:fe("apple_pay"),placeholder:"Nenhum",label:"Gateway Apple Pay"},null,8,["modelValue","options"]),_e(o(r).payment_gateways.apple_pay)?(s(),l("button",{key:0,type:"button",class:"inline-flex items-center gap-1.5 rounded-lg border border-zinc-200 px-3 py-2 text-sm font-medium text-zinc-700 transition hover:border-[var(--color-primary)] hover:bg-[var(--color-primary)]/10 hover:text-[var(--color-primary)] dark:border-zinc-600 dark:text-zinc-300 dark:hover:border-[var(--color-primary)] dark:hover:bg-[var(--color-primary)]/20",onClick:e[46]||(e[46]=a=>ge("apple_pay"))},[d(o(be),{class:"h-4 w-4"}),e[204]||(e[204]=c(" Redundância ",-1))])):m("",!0),(k.gateways_by_method.apple_pay||[]).length===0?(s(),l("p",vi,[d(o(Y),{href:"/integracoes?tab=gateways",class:"text-[var(--color-primary)] hover:underline"},{default:v(()=>[...e[205]||(e[205]=[c("Conectar gateway compatível (CajuPay)",-1)])]),_:1})])):m("",!0)])]),t("div",fi,[t("div",gi,[e[209]||(e[209]=we('

Google Pay

Carteira digital

Somente Android ou desktop
',1)),d(ke,{modelValue:o(r).payment_gateways.google_pay,"onUpdate:modelValue":e[47]||(e[47]=a=>o(r).payment_gateways.google_pay=a),options:fe("google_pay"),placeholder:"Nenhum",label:"Gateway Google Pay"},null,8,["modelValue","options"]),_e(o(r).payment_gateways.google_pay)?(s(),l("button",{key:0,type:"button",class:"inline-flex items-center gap-1.5 rounded-lg border border-zinc-200 px-3 py-2 text-sm font-medium text-zinc-700 transition hover:border-[var(--color-primary)] hover:bg-[var(--color-primary)]/10 hover:text-[var(--color-primary)] dark:border-zinc-600 dark:text-zinc-300 dark:hover:border-[var(--color-primary)] dark:hover:bg-[var(--color-primary)]/20",onClick:e[48]||(e[48]=a=>ge("google_pay"))},[d(o(be),{class:"h-4 w-4"}),e[207]||(e[207]=c(" Redundância ",-1))])):m("",!0),(k.gateways_by_method.google_pay||[]).length===0?(s(),l("p",_i,[d(o(Y),{href:"/integracoes?tab=gateways",class:"text-[var(--color-primary)] hover:underline"},{default:v(()=>[...e[208]||(e[208]=[c("Conectar gateway compatível (CajuPay)",-1)])]),_:1})])):m("",!0)])]),t("div",ki,[t("div",zi,[t("div",hi,[t("div",wi,[t("img",{src:"/images/gateways/paypal.png",alt:"PayPal",class:"h-7 w-7 object-contain",onError:e[49]||(e[49]=a=>a.target&&(a.target.style.display="none"))},null,32)]),e[210]||(e[210]=t("div",{class:"min-w-0 flex-1"},[t("p",{class:"font-semibold text-zinc-900 dark:text-white"},"PayPal"),t("p",{class:"mt-0.5 text-xs text-zinc-500 dark:text-zinc-400"},"Carteira / cartão via PayPal")],-1))]),d(ke,{modelValue:o(r).payment_gateways.paypal,"onUpdate:modelValue":e[50]||(e[50]=a=>o(r).payment_gateways.paypal=a),options:fe("paypal"),placeholder:"Nenhum",label:"Gateway PayPal"},null,8,["modelValue","options"]),o(r).payment_gateways.paypal?(s(),l(z,{key:0},[t("div",null,[e[212]||(e[212]=t("label",{class:"mb-1.5 block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Exibir no checkout como",-1)),x(t("select",{"onUpdate:modelValue":e[51]||(e[51]=a=>o(r).payment_gateways.paypal_display_as=a),class:"w-full rounded-lg border border-zinc-200 bg-white px-3 py-2 text-sm text-zinc-900 shadow-sm focus:border-[var(--color-primary)] focus:outline-none focus:ring-1 focus:ring-[var(--color-primary)] dark:border-zinc-600 dark:bg-zinc-800 dark:text-white"},[...e[211]||(e[211]=[t("option",{value:"paypal"},"PayPal",-1),t("option",{value:"card"},"Cartão",-1)])],512),[[Z,o(r).payment_gateways.paypal_display_as]]),e[213]||(e[213]=t("p",{class:"mt-1 text-xs text-zinc-500 dark:text-zinc-400"}," “Cartão” usa o mesmo fluxo PayPal com rótulo de cartão. Se já houver outro Cartão, aparece como “Cartão PayPal”. ",-1))]),t("label",Ci,[x(t("input",{"onUpdate:modelValue":e[52]||(e[52]=a=>o(r).payment_gateways.paypal_show_wallet=a),type:"checkbox",class:"mt-0.5 h-4 w-4 rounded border-zinc-300 text-[var(--color-primary)] focus:ring-[var(--color-primary)]"},null,512),[[We,o(r).payment_gateways.paypal_show_wallet]]),e[214]||(e[214]=t("span",{class:"min-w-0"},[t("span",{class:"block text-sm font-medium text-zinc-800 dark:text-zinc-200"},"Mostrar também botão da conta PayPal"),t("span",{class:"mt-0.5 block text-xs text-zinc-500 dark:text-zinc-400"},"Abre o popup da carteira PayPal, além do pagamento com cartão.")],-1))])],64)):m("",!0),_e(o(r).payment_gateways.paypal)?(s(),l("button",{key:1,type:"button",class:"inline-flex items-center gap-1.5 rounded-lg border border-zinc-200 px-3 py-2 text-sm font-medium text-zinc-700 transition hover:border-[var(--color-primary)] hover:bg-[var(--color-primary)]/10 hover:text-[var(--color-primary)] dark:border-zinc-600 dark:text-zinc-300 dark:hover:border-[var(--color-primary)] dark:hover:bg-[var(--color-primary)]/20",onClick:e[53]||(e[53]=a=>ge("paypal"))},[d(o(be),{class:"h-4 w-4"}),e[215]||(e[215]=c(" Redundância ",-1))])):m("",!0),(k.gateways_by_method.paypal||[]).length===0?(s(),l("p",$i,[d(o(Y),{href:"/integracoes?tab=gateways",class:"text-[var(--color-primary)] hover:underline"},{default:v(()=>[...e[216]||(e[216]=[c("Conectar PayPal",-1)])]),_:1})])):m("",!0)])]),o(r).billing_type==="subscription"?(s(),l("div",Si,[t("div",Pi,[t("div",Vi,[t("div",Ui,[t("img",{src:"/images/gateways/pix-automatico.png",alt:"PIX automático",class:"h-7 w-7 object-contain",onError:e[54]||(e[54]=a=>a.target&&(a.target.style.display="none"))},null,32)]),e[217]||(e[217]=t("div",null,[t("p",{class:"font-semibold text-zinc-900 dark:text-white"},"PIX automático"),t("p",{class:"text-xs text-zinc-500 dark:text-zinc-400"},"Renovação automática (assinaturas)")],-1))]),d(ke,{modelValue:o(r).payment_gateways.pix_auto,"onUpdate:modelValue":e[55]||(e[55]=a=>o(r).payment_gateways.pix_auto=a),options:fe("pix_auto"),placeholder:"Nenhum",label:"Gateway PIX automático"},null,8,["modelValue","options"]),_e(o(r).payment_gateways.pix_auto)?(s(),l("button",{key:0,type:"button",class:"inline-flex items-center gap-1.5 rounded-lg border border-zinc-200 px-3 py-2 text-sm font-medium text-zinc-700 transition hover:border-[var(--color-primary)] hover:bg-[var(--color-primary)]/10 hover:text-[var(--color-primary)] dark:border-zinc-600 dark:text-zinc-300 dark:hover:border-[var(--color-primary)] dark:hover:bg-[var(--color-primary)]/20",onClick:e[56]||(e[56]=a=>ge("pix_auto"))},[d(o(be),{class:"h-4 w-4"}),e[218]||(e[218]=c(" Redundância ",-1))])):m("",!0),(k.gateways_by_method.pix_auto||[]).length===0?(s(),l("p",ji,[d(o(Y),{href:"/integracoes?tab=gateways",class:"text-[var(--color-primary)] hover:underline"},{default:v(()=>[...e[219]||(e[219]=[c("Conectar gateway Efí",-1)])]),_:1})])):m("",!0)])])):m("",!0),t("div",Ai,[t("div",Ei,[t("div",Ii,[t("div",Ri,[t("img",{src:"/images/payment-methods/cripto.png",alt:"Criptomoeda",class:"h-7 w-7 object-contain",onError:e[57]||(e[57]=a=>a.target&&(a.target.style.display="none"))},null,32)]),e[220]||(e[220]=t("div",null,[t("p",{class:"font-semibold text-zinc-900 dark:text-white"},"Criptomoeda"),t("p",{class:"text-xs text-zinc-500 dark:text-zinc-400"},"Bitcoin e outras")],-1))]),d(ke,{modelValue:o(r).payment_gateways.crypto,"onUpdate:modelValue":e[58]||(e[58]=a=>o(r).payment_gateways.crypto=a),options:fe("crypto"),placeholder:"Nenhum",label:"Gateway Criptomoeda"},null,8,["modelValue","options"]),_e(o(r).payment_gateways.crypto)?(s(),l("button",{key:0,type:"button",class:"inline-flex items-center gap-1.5 rounded-lg border border-zinc-200 px-3 py-2 text-sm font-medium text-zinc-700 transition hover:border-[var(--color-primary)] hover:bg-[var(--color-primary)]/10 hover:text-[var(--color-primary)] dark:border-zinc-600 dark:text-zinc-300 dark:hover:border-[var(--color-primary)] dark:hover:bg-[var(--color-primary)]/20",onClick:e[59]||(e[59]=a=>ge("crypto"))},[d(o(be),{class:"h-4 w-4"}),e[221]||(e[221]=c(" Redundância ",-1))])):m("",!0),(k.gateways_by_method.crypto||[]).length===0?(s(),l("p",Mi,[d(o(Y),{href:"/integracoes?tab=gateways",class:"text-[var(--color-primary)] hover:underline"},{default:v(()=>[...e[222]||(e[222]=[c("Conectar gateway",-1)])]),_:1})])):m("",!0)])])])])]),t("section",Li,[e[224]||(e[224]=t("div",{class:"border-b border-zinc-200/80 bg-zinc-50/80 px-6 py-4 dark:border-zinc-700/80 dark:bg-zinc-800/50"},[t("h2",{class:"text-base font-semibold text-zinc-900 dark:text-white"},"Tipo de entrega"),t("p",{class:"mt-0.5 text-sm text-zinc-500 dark:text-zinc-400"},"Como o cliente recebe o produto após a compra.")],-1)),t("div",Ni,[t("div",Ti,[(s(!0),l(z,null,I(k.productTypes,a=>(s(),l("button",{key:a.value,type:"button",disabled:!a.available,class:g(["flex items-start gap-3 rounded-xl border-2 p-4 text-left transition",o(r).type===a.value?"border-[var(--color-primary)] bg-[var(--color-primary)]/10 dark:bg-[var(--color-primary)]/20":"border-zinc-200 bg-zinc-50 hover:border-zinc-300 hover:bg-zinc-100 dark:border-zinc-600 dark:bg-zinc-800 dark:hover:border-zinc-500 dark:hover:bg-zinc-700",!a.available&&"cursor-not-allowed opacity-60"]),onClick:i=>a.available&&(o(r).type=a.value)},[(s(),L(qe(ho[a.value]||o($t)),{class:"mt-0.5 h-5 w-5 shrink-0 text-zinc-500 dark:text-zinc-400"})),t("div",Bi,[t("span",Di,p(a.label),1),a.available?m("",!0):(s(),l("span",qi,"(em breve)"))]),a.available&&a.value==="link"&&o(r).type===a.value?(s(),l("button",{key:0,type:"button",class:"shrink-0 rounded-lg p-1.5 text-zinc-500 transition hover:bg-zinc-200 hover:text-zinc-700 dark:text-zinc-400 dark:hover:bg-zinc-600 dark:hover:text-white",title:"Configurar link do entregável","aria-label":"Configurar link do entregável",onClick:e[60]||(e[60]=ae(i=>$e.value=!0,["stop"]))},[d(o(Pt),{class:"h-4 w-4","aria-hidden":"true"})])):m("",!0),a.available&&a.value==="area_membros"&&o(r).type===a.value?(s(),l("button",{key:1,type:"button",class:"shrink-0 rounded-lg p-1.5 text-zinc-500 transition hover:bg-zinc-200 hover:text-zinc-700 dark:text-zinc-400 dark:hover:bg-zinc-600 dark:hover:text-white",title:"Abrir Member Builder","aria-label":"Abrir Member Builder",onClick:ae(Ce,["stop"])},[d(o(Pt),{class:"h-4 w-4","aria-hidden":"true"})])):m("",!0)],10,Oi))),128))]),o(r).errors.type?(s(),l("p",Fi,p(o(r).errors.type),1)):m("",!0)])]),o(r).type==="area_membros_externa"?(s(),l("section",Gi,[e[239]||(e[239]=t("div",{class:"border-b border-zinc-200/80 bg-zinc-50/80 px-6 py-4 dark:border-zinc-700/80 dark:bg-zinc-800/50"},[t("h2",{class:"text-base font-semibold text-zinc-900 dark:text-white"},"Área de membros externa (Cademí)"),t("p",{class:"mt-0.5 text-sm text-zinc-500 dark:text-zinc-400"}," Se este produto for entregue via Cademí, configure aqui qual integração e qual TAG o aluno receberá após o pagamento. ")],-1)),t("div",Xi,[t("div",Hi,[t("div",null,[e[229]||(e[229]=t("label",{class:"mb-1 block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Integração Cademí",-1)),x(t("select",{"onUpdate:modelValue":e[61]||(e[61]=a=>Q.value.integration_id=a),class:"w-full rounded-lg border border-zinc-300 bg-white px-3 py-2 text-sm text-zinc-900 focus:border-[var(--color-primary)] focus:outline-none focus:ring-1 focus:ring-[var(--color-primary)] dark:border-zinc-600 dark:bg-zinc-800 dark:text-white"},[e[225]||(e[225]=t("option",{value:""},"(desconectado)",-1)),(s(!0),l(z,null,I(k.cademi_integrations,a=>(s(),l("option",{key:a.id,value:String(a.id)},p(a.name),9,Wi))),128))],512),[[Z,Q.value.integration_id]]),k.cademi_integrations.length===0?(s(),l("p",Qi,[e[227]||(e[227]=c(" Nenhuma integração Cademí cadastrada. Vá em ",-1)),d(o(Y),{href:"/integracoes",class:"text-[var(--color-primary)] hover:underline"},{default:v(()=>[...e[226]||(e[226]=[c("/integracoes",-1)])]),_:1}),e[228]||(e[228]=c(" e crie uma. ",-1))])):m("",!0)]),t("div",null,[e[232]||(e[232]=t("label",{class:"mb-1 block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Produto ID (Cademí)",-1)),t("div",Ji,[(s(!0),l(z,null,I(Q.value.cademi_produto_ids,(a,i)=>(s(),l("div",{key:i,class:"flex gap-2"},[x(t("input",{"onUpdate:modelValue":y=>Q.value.cademi_produto_ids[i]=y,type:"number",min:"1",placeholder:"Ex: 231",class:"w-full rounded-lg border border-zinc-300 bg-white px-3 py-2 text-sm text-zinc-900 focus:border-[var(--color-primary)] focus:outline-none focus:ring-1 focus:ring-[var(--color-primary)] dark:border-zinc-600 dark:bg-zinc-800 dark:text-white"},null,8,Ki),[[$,Q.value.cademi_produto_ids[i]]]),d(E,{type:"button",variant:"outline",disabled:Q.value.cademi_produto_ids.length<=1,onClick:y=>Q.value.cademi_produto_ids.splice(i,1)},{default:v(()=>[...e[230]||(e[230]=[c(" Remover ",-1)])]),_:1},8,["disabled","onClick"])]))),128)),d(E,{type:"button",variant:"outline",onClick:e[62]||(e[62]=a=>Q.value.cademi_produto_ids.push(""))},{default:v(()=>[...e[231]||(e[231]=[c(" Adicionar Produto ID ",-1)])]),_:1})]),e[233]||(e[233]=t("p",{class:"mt-1 text-xs text-zinc-500 dark:text-zinc-400"}," Obrigatório para conceder acesso na Cademí. ",-1))]),t("div",null,[e[236]||(e[236]=t("label",{class:"mb-1 block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"TAG ID (Cademí) (opcional)",-1)),t("div",Yi,[t("div",Zi,[x(t("select",{"onUpdate:modelValue":e[63]||(e[63]=a=>Q.value.cademi_tag_id=a),class:"w-full rounded-lg border border-zinc-300 bg-white px-3 py-2 text-sm text-zinc-900 focus:border-[var(--color-primary)] focus:outline-none focus:ring-1 focus:ring-[var(--color-primary)] dark:border-zinc-600 dark:bg-zinc-800 dark:text-white",disabled:!Q.value.integration_id||Se.value},[e[234]||(e[234]=t("option",{value:""},"Selecione uma TAG",-1)),(s(!0),l(z,null,I(Ma.value,a=>(s(),l("option",{key:a.id,value:String(a.id)},p(a.nome?`${a.nome} (#${a.id})`:`#${a.id}`),9,td))),128))],8,ed),[[Z,Q.value.cademi_tag_id]]),d(E,{type:"button",variant:"outline",disabled:!Q.value.integration_id||Se.value,onClick:sa},{default:v(()=>[Se.value?(s(),L(o(He),{key:0,class:"mr-2 h-4 w-4 animate-spin"})):m("",!0),e[235]||(e[235]=c(" Atualizar ",-1))]),_:1},8,["disabled"])]),x(t("input",{"onUpdate:modelValue":e[64]||(e[64]=a=>ft.value=a),type:"text",placeholder:"Buscar TAG pelo nome…",class:"w-full rounded-lg border border-zinc-300 bg-white px-3 py-2 text-sm text-zinc-900 focus:border-[var(--color-primary)] focus:outline-none focus:ring-1 focus:ring-[var(--color-primary)] dark:border-zinc-600 dark:bg-zinc-800 dark:text-white",disabled:!Q.value.integration_id||Se.value||(Oe.value||[]).length===0},null,8,ad),[[$,ft.value]]),x(t("input",{"onUpdate:modelValue":e[65]||(e[65]=a=>Q.value.cademi_tag_id=a),type:"number",min:"1",placeholder:"Ou cole o TAG ID (ex: 472)",class:"w-full rounded-lg border border-zinc-300 bg-white px-3 py-2 text-sm text-zinc-900 focus:border-[var(--color-primary)] focus:outline-none focus:ring-1 focus:ring-[var(--color-primary)] dark:border-zinc-600 dark:bg-zinc-800 dark:text-white",disabled:!Q.value.integration_id},null,8,od),[[$,Q.value.cademi_tag_id]]),vt.value?(s(),l("p",rd,p(vt.value),1)):Q.value.integration_id&&!Se.value&&(Oe.value||[]).length===0?(s(),l("p",nd," Nenhuma TAG retornada pela Cademí (ou integração ainda não carregada). ")):m("",!0)]),e[237]||(e[237]=t("p",{class:"mt-1 text-xs text-zinc-500 dark:text-zinc-400"}," Dica: selecione pelo nome (recomendado). Se necessário, cole o ID manualmente no campo acima. ",-1))])]),t("div",sd,[d(E,{type:"button",class:"w-full",disabled:yt.value,onClick:La},{default:v(()=>[yt.value?(s(),L(o(He),{key:0,class:"mr-2 h-4 w-4 animate-spin"})):m("",!0),e[238]||(e[238]=c(" Salvar configuração Cademí ",-1))]),_:1},8,["disabled"])]),Ye.value?(s(),l("p",ld,p(Ye.value),1)):m("",!0)])])):m("",!0),(s(),L(ot,{to:"body"},[d(Fe,{"enter-active-class":"transition-opacity duration-200","enter-from-class":"opacity-0","enter-to-class":"opacity-100","leave-active-class":"transition-opacity duration-200","leave-from-class":"opacity-100","leave-to-class":"opacity-0"},{default:v(()=>[$e.value?(s(),l("div",{key:0,class:"fixed inset-0 z-[100000] bg-black/30","aria-hidden":"true",onClick:e[66]||(e[66]=a=>$e.value=!1)})):m("",!0)]),_:1}),d(Fe,{"enter-active-class":"transition-transform duration-300 ease-out","enter-from-class":"translate-x-full","enter-to-class":"translate-x-0","leave-active-class":"transition-transform duration-300 ease-in","leave-from-class":"translate-x-0","leave-to-class":"translate-x-full"},{default:v(()=>[$e.value?(s(),l("aside",{key:0,class:"fixed top-0 right-0 h-full w-full max-w-md bg-white dark:bg-zinc-900 shadow-2xl z-[100001] flex flex-col",role:"dialog","aria-labelledby":"deliverable-link-sidebar-title",onClick:e[71]||(e[71]=ae(()=>{},["stop"]))},[t("div",id,[t("div",dd,[d(o(Pt),{class:"h-5 w-5 text-zinc-500 dark:text-white","aria-hidden":"true"}),e[240]||(e[240]=t("h2",{id:"deliverable-link-sidebar-title",class:"text-lg font-semibold text-zinc-900 dark:text-white"},"Link do entregável",-1))]),t("button",{type:"button",class:"rounded-lg p-2 text-zinc-500 transition hover:bg-zinc-100 hover:text-zinc-700 dark:text-zinc-400 dark:hover:bg-zinc-800 dark:hover:text-white","aria-label":"Fechar",onClick:e[67]||(e[67]=a=>$e.value=!1)},[d(o(rt),{class:"h-5 w-5"})])]),t("div",ud,[e[242]||(e[242]=t("p",{class:"mb-4 text-sm text-zinc-600 dark:text-zinc-400"}," URL enviada por e-mail ao cliente após a compra. O link deve apontar para o conteúdo (página, arquivo, etc.). ",-1)),t("div",null,[e[241]||(e[241]=t("label",{class:"mb-1.5 block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"URL do entregável",-1)),x(t("input",{"onUpdate:modelValue":e[68]||(e[68]=a=>o(r).deliverable_link=a),type:"url",placeholder:"https://...",class:g(U)},null,512),[[$,o(r).deliverable_link]]),o(r).errors.deliverable_link?(s(),l("p",cd,p(o(r).errors.deliverable_link),1)):m("",!0)])]),t("div",pd,[d(E,{type:"button",class:"flex-1",disabled:o(r).processing,onClick:e[69]||(e[69]=a=>{Ee(),$e.value=!1})},{default:v(()=>[...e[243]||(e[243]=[c(" Salvar ",-1)])]),_:1},8,["disabled"]),d(E,{type:"button",variant:"outline",class:"flex-1",onClick:e[70]||(e[70]=a=>$e.value=!1)},{default:v(()=>[...e[244]||(e[244]=[c(" Fechar ",-1)])]),_:1})])])):m("",!0)]),_:1})])),d(Fo,{open:ht.value,method:pe.value,"method-label":bo[pe.value]||pe.value,"primary-slug":pe.value&&o(r).payment_gateways[pe.value]||"",gateways:k.gateways_by_method[pe.value]||[],"model-value":pe.value?o(r).payment_gateways[pe.value+"_redundancy"]||[]:[],"onUpdate:modelValue":e[72]||(e[72]=a=>pe.value&&(o(r).payment_gateways[pe.value+"_redundancy"]=a)),onSave:e[73]||(e[73]=a=>{pe.value&&(o(r).payment_gateways[pe.value+"_redundancy"]=a,Ee()),ht.value=!1}),onClose:e[74]||(e[74]=a=>ht.value=!1)},null,8,["open","method","method-label","primary-slug","gateways","model-value"]),d(vr,{open:wt.value,"product-id":k.produto.id,"price-brl":Ke.value,modelValue:o(r).pix_parcelado,"onUpdate:modelValue":e[75]||(e[75]=a=>o(r).pix_parcelado=a),onClose:e[76]||(e[76]=a=>wt.value=!1),onSave:e[77]||(e[77]=()=>{wt.value=!1})},null,8,["open","product-id","price-brl","modelValue"]),(s(),L(ot,{to:"body"},[d(Fe,{"enter-active-class":"transition-opacity duration-200","enter-from-class":"opacity-0","enter-to-class":"opacity-100","leave-active-class":"transition-opacity duration-200","leave-from-class":"opacity-100","leave-to-class":"opacity-0"},{default:v(()=>[he.value?(s(),l("div",{key:0,class:"fixed inset-0 z-[100000] bg-black/30","aria-hidden":"true",onClick:e[78]||(e[78]=a=>he.value=!1)})):m("",!0)]),_:1}),d(Fe,{"enter-active-class":"transition-transform duration-300 ease-out","enter-from-class":"translate-x-full","enter-to-class":"translate-x-0","leave-active-class":"transition-transform duration-300 ease-in","leave-from-class":"translate-x-0","leave-to-class":"translate-x-full"},{default:v(()=>[he.value?(s(),l("aside",{key:0,class:"fixed top-0 right-0 z-[100001] flex h-full w-full max-w-md flex-col bg-white shadow-2xl dark:bg-zinc-900",role:"dialog","aria-labelledby":"pagarme-billing-sidebar-title",onClick:e[90]||(e[90]=ae(()=>{},["stop"]))},[t("div",md,[t("div",bd,[d(o(Jt),{class:"h-5 w-5 text-zinc-500 dark:text-white","aria-hidden":"true"}),e[245]||(e[245]=t("h2",{id:"pagarme-billing-sidebar-title",class:"text-lg font-semibold text-zinc-900 dark:text-white"}," Cobrança — endereço (Pagar.me / Efí) ",-1))]),t("button",{type:"button",class:"rounded-lg p-2 text-zinc-500 transition hover:bg-zinc-100 hover:text-zinc-700 dark:text-zinc-400 dark:hover:bg-zinc-800 dark:hover:text-white","aria-label":"Fechar",onClick:e[79]||(e[79]=a=>he.value=!1)},[d(o(rt),{class:"h-5 w-5"})])]),t("div",xd,[e[255]||(e[255]=t("p",{class:"text-sm text-zinc-600 dark:text-zinc-400"},[c(" Quando usar "),t("strong",null,"Pagar.me"),c(" ou "),t("strong",null,"Efí"),c(" no cartão e/ou no boleto, defina se o checkout pede o endereço do cliente ou usa o endereço da empresa (fatura/antifraude). No modo empresa, preencha o endereço abaixo (CEP com 8 dígitos, UF com 2 letras). ")],-1)),t("div",yd,[e[248]||(e[248]=t("p",{class:"text-xs font-medium text-zinc-700 dark:text-zinc-300"},"Modo no checkout",-1)),t("label",vd,[x(t("input",{"onUpdate:modelValue":e[80]||(e[80]=a=>o(r).pagarme_billing.mode=a),type:"radio",class:"mt-0.5",value:"customer"},null,512),[[St,o(r).pagarme_billing.mode]]),e[246]||(e[246]=t("span",null,[t("span",{class:"text-sm font-medium text-zinc-800 dark:text-zinc-200"},"Solicitar endereço do cliente"),t("span",{class:"mt-0.5 block text-xs text-zinc-500 dark:text-zinc-400"},"O checkout exibe o bloco de CEP/endereço.")],-1))]),t("label",fd,[x(t("input",{"onUpdate:modelValue":e[81]||(e[81]=a=>o(r).pagarme_billing.mode=a),type:"radio",class:"mt-0.5",value:"company"},null,512),[[St,o(r).pagarme_billing.mode]]),e[247]||(e[247]=t("span",null,[t("span",{class:"text-sm font-medium text-zinc-800 dark:text-zinc-200"},"Usar endereço da empresa"),t("span",{class:"mt-0.5 block text-xs text-zinc-500 dark:text-zinc-400"},"O checkout não pede endereço; usamos os dados abaixo na cobrança.")],-1))])]),o(r).errors["pagarme_billing.company_address"]?(s(),l("p",gd,p(o(r).errors["pagarme_billing.company_address"]),1)):m("",!0),e[256]||(e[256]=t("p",{class:"text-xs font-medium text-zinc-700 dark:text-zinc-300"},"Endereço da empresa",-1)),t("div",null,[e[249]||(e[249]=t("label",{class:"mb-1.5 block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"CEP",-1)),t("div",_d,[t("input",{value:o(r).pagarme_billing.company_address.zipcode,type:"text",inputmode:"numeric",maxlength:"9",placeholder:"00000-000",class:g(U),onInput:ko},null,40,kd),d(E,{type:"button",variant:"outline",disabled:xt.value||(o(r).pagarme_billing.company_address.zipcode||"").replace(/\D/g,"").length<8,onClick:zo},{default:v(()=>[xt.value?(s(),L(o(He),{key:0,class:"h-4 w-4 animate-spin"})):(s(),l("span",zd,"Buscar"))]),_:1},8,["disabled"])]),Te.value?(s(),l("p",hd,p(Te.value),1)):m("",!0)]),t("div",null,[e[250]||(e[250]=t("label",{class:"mb-1.5 block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Rua",-1)),x(t("input",{"onUpdate:modelValue":e[82]||(e[82]=a=>o(r).pagarme_billing.company_address.street=a),type:"text",class:g(U)},null,512),[[$,o(r).pagarme_billing.company_address.street]])]),t("div",wd,[t("div",null,[e[251]||(e[251]=t("label",{class:"mb-1.5 block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Número",-1)),x(t("input",{"onUpdate:modelValue":e[83]||(e[83]=a=>o(r).pagarme_billing.company_address.number=a),type:"text",class:g(U)},null,512),[[$,o(r).pagarme_billing.company_address.number]])]),t("div",null,[e[252]||(e[252]=t("label",{class:"mb-1.5 block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"UF",-1)),x(t("input",{"onUpdate:modelValue":e[84]||(e[84]=a=>o(r).pagarme_billing.company_address.state=a),type:"text",maxlength:"2",class:g(["uppercase",U]),onBlur:e[85]||(e[85]=a=>o(r).pagarme_billing.company_address.state=(o(r).pagarme_billing.company_address.state||"").toUpperCase().slice(0,2))},null,544),[[$,o(r).pagarme_billing.company_address.state]])])]),t("div",null,[e[253]||(e[253]=t("label",{class:"mb-1.5 block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Bairro",-1)),x(t("input",{"onUpdate:modelValue":e[86]||(e[86]=a=>o(r).pagarme_billing.company_address.neighborhood=a),type:"text",class:g(U)},null,512),[[$,o(r).pagarme_billing.company_address.neighborhood]])]),t("div",null,[e[254]||(e[254]=t("label",{class:"mb-1.5 block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Cidade",-1)),x(t("input",{"onUpdate:modelValue":e[87]||(e[87]=a=>o(r).pagarme_billing.company_address.city=a),type:"text",class:g(U)},null,512),[[$,o(r).pagarme_billing.company_address.city]])])]),t("div",Cd,[d(E,{type:"button",class:"flex-1",disabled:o(r).processing,onClick:e[88]||(e[88]=a=>{Ee(),he.value=!1})},{default:v(()=>[...e[257]||(e[257]=[c(" Salvar ",-1)])]),_:1},8,["disabled"]),d(E,{type:"button",variant:"outline",class:"flex-1",onClick:e[89]||(e[89]=a=>he.value=!1)},{default:v(()=>[...e[258]||(e[258]=[c("Fechar",-1)])]),_:1})])])):m("",!0)]),_:1})])),t("section",$d,[e[259]||(e[259]=t("div",{class:"border-b border-zinc-200/80 bg-gradient-to-r from-zinc-50/90 to-zinc-100/50 px-6 py-5 dark:from-zinc-800/80 dark:to-zinc-800/50"},[t("h2",{class:"text-base font-semibold text-zinc-900 dark:text-white"},"Pixels de conversão"),t("p",{class:"mt-1 text-sm text-zinc-500 dark:text-zinc-400"}," Pixels vinculados a este produto (configurados em Integrações). ")],-1)),t("div",Sd,[d(Xn,{integrations:k.product_pixel_integrations},null,8,["integrations"])])]),t("div",Pd,[d(E,{type:"submit",disabled:o(r).processing},{default:v(()=>[...e[260]||(e[260]=[c("Salvar alterações",-1)])]),_:1},8,["disabled"]),d(o(Y),{href:"/produtos",class:"inline-flex items-center rounded-xl border border-zinc-200 px-4 py-2.5 text-sm font-medium text-zinc-700 transition hover:bg-zinc-50 dark:border-zinc-600 dark:text-zinc-300 dark:hover:bg-zinc-800"},{default:v(()=>[...e[261]||(e[261]=[c(" Cancelar ",-1)])]),_:1})])],32)):m("",!0),H.value==="email"?(s(),l("form",{key:2,class:"mx-auto w-full max-w-3xl space-y-8 xl:max-w-6xl",onSubmit:ae(Ee,["prevent"])},[t("div",Vd,[t("section",Ud,[e[272]||(e[272]=t("div",{class:"border-b border-zinc-200/80 bg-gradient-to-r from-zinc-50/90 to-zinc-100/50 px-6 py-5 dark:from-zinc-800/80 dark:to-zinc-800/50"},[t("h2",{class:"text-base font-semibold text-zinc-900 dark:text-white"},"Template do e-mail de acesso"),t("p",{class:"mt-1 text-sm text-zinc-500 dark:text-zinc-400"}," Personalize o e-mail enviado ao cliente após a compra. Use os placeholders; eles serão substituídos pelos dados reais no envio. ")],-1)),t("div",jd,[t("div",null,[e[266]||(e[266]=t("label",{class:"mb-2 block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Logo do e-mail",-1)),t("div",Ad,[t("div",{class:"flex flex-col items-center justify-center rounded-xl border-2 border-dashed border-zinc-300 bg-zinc-50 dark:border-zinc-600 dark:bg-zinc-800/80 w-full sm:w-44 h-32 shrink-0 cursor-pointer transition hover:border-[var(--color-primary)] hover:bg-[var(--color-primary)]/5",onClick:e[92]||(e[92]=a=>bt.value?.click())},[t("input",{ref_key:"logoInputRef",ref:bt,type:"file",accept:"image/*",class:"hidden",onChange:Ta},null,544),Tt.value?(s(),l(z,{key:0},[d(o(He),{class:"h-8 w-8 text-[var(--color-primary)] animate-spin"}),e[262]||(e[262]=t("span",{class:"mt-2 text-xs text-zinc-500"},"Enviando...",-1))],64)):o(r).email_template.logo_url?(s(),l(z,{key:1},[t("img",{src:o(r).email_template.logo_url,alt:"Logo",class:"max-h-20 w-auto object-contain px-2",onError:e[91]||(e[91]=a=>a.target.style.display="none")},null,40,Ed),e[263]||(e[263]=t("span",{class:"mt-2 text-xs text-zinc-500"},"Clique para trocar",-1))],64)):(s(),l(z,{key:2},[d(o(za),{class:"h-8 w-8 text-zinc-400 dark:text-zinc-500"}),e[264]||(e[264]=t("span",{class:"mt-2 text-xs text-zinc-500"},"Clique para enviar",-1))],64))]),e[265]||(e[265]=t("p",{class:"text-xs text-zinc-500 dark:text-zinc-400 sm:pt-2"},"PNG ou JPG, até 2 MB. Exibida no topo do e-mail.",-1))]),mt.value?(s(),l("p",Id,p(mt.value),1)):m("",!0)]),t("div",null,[e[267]||(e[267]=t("label",{class:"mb-1.5 block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Nome do remetente (opcional)",-1)),x(t("input",{"onUpdate:modelValue":e[93]||(e[93]=a=>o(r).email_template.from_name=a),type:"text",placeholder:"Ex: Minha Marca",class:g(U)},null,512),[[$,o(r).email_template.from_name]]),e[268]||(e[268]=t("p",{class:"mt-1 text-xs text-zinc-500 dark:text-zinc-400"},"Se vazio, usa o nome das Configurações gerais.",-1))]),t("div",null,[e[269]||(e[269]=t("label",{class:"mb-1.5 block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Assunto do e-mail",-1)),x(t("input",{"onUpdate:modelValue":e[94]||(e[94]=a=>o(r).email_template.subject=a),type:"text",placeholder:"Seu acesso a {nome_produto}",class:g(U)},null,512),[[$,o(r).email_template.subject]])]),t("div",null,[e[270]||(e[270]=t("label",{class:"mb-1.5 block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Mensagem (texto)",-1)),x(t("textarea",{"onUpdate:modelValue":e[95]||(e[95]=a=>o(r).email_template.body_text=a),rows:"14",class:g(U),placeholder:"Digite a mensagem (texto simples)..."},null,512),[[$,o(r).email_template.body_text]]),e[271]||(e[271]=we('

Placeholders: {nome_cliente}, {nome_produto}, {link_acesso}, {email_cliente}, {senha} (preenchido apenas para área de membros quando uma senha é enviada ao cliente).

',1))])])]),t("section",Rd,[t("div",Md,[t("div",Ld,[e[273]||(e[273]=t("div",null,[t("h2",{class:"text-base font-semibold text-zinc-900 dark:text-white"},"Recuperação de carrinho (e-mail)"),t("p",{class:"mt-1 text-sm text-zinc-500 dark:text-zinc-400"}," Envia lembretes automáticos para sessões abandonadas e pedidos pendentes (PIX/Boleto) nos tempos de 10m, 5h e 24h. ")],-1)),d(me,{modelValue:o(r).cart_recovery_email.enabled,"onUpdate:modelValue":e[96]||(e[96]=a=>o(r).cart_recovery_email.enabled=a)},null,8,["modelValue"])])]),t("div",Nd,[e[283]||(e[283]=we('

Placeholders disponíveis: {nome_cliente}, {email_cliente}, {nome_produto}, {valor}, {link_checkout}

',1)),t("div",Td,[e[276]||(e[276]=t("div",{class:"flex items-center justify-between gap-3"},[t("h3",{class:"text-sm font-semibold text-zinc-900 dark:text-white"},"Etapa 1 — 10 minutos")],-1)),t("div",null,[e[274]||(e[274]=t("label",{class:"mb-1.5 block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Assunto",-1)),x(t("input",{"onUpdate:modelValue":e[97]||(e[97]=a=>o(r).cart_recovery_email.stages["10m"].subject=a),disabled:!o(r).cart_recovery_email.enabled,type:"text",class:g(U),placeholder:"Você ainda quer garantir {nome_produto}?"},null,8,Od),[[$,o(r).cart_recovery_email.stages["10m"].subject]])]),t("div",null,[e[275]||(e[275]=t("label",{class:"mb-1.5 block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Mensagem (texto)",-1)),x(t("textarea",{"onUpdate:modelValue":e[98]||(e[98]=a=>o(r).cart_recovery_email.stages["10m"].body_text=a),disabled:!o(r).cart_recovery_email.enabled,rows:"10",class:g(U),placeholder:"Digite a mensagem (texto simples)..."},null,8,Bd),[[$,o(r).cart_recovery_email.stages["10m"].body_text]])])]),t("div",Dd,[e[279]||(e[279]=t("div",{class:"flex items-center justify-between gap-3"},[t("h3",{class:"text-sm font-semibold text-zinc-900 dark:text-white"},"Etapa 2 — 5 horas")],-1)),t("div",null,[e[277]||(e[277]=t("label",{class:"mb-1.5 block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Assunto",-1)),x(t("input",{"onUpdate:modelValue":e[99]||(e[99]=a=>o(r).cart_recovery_email.stages["5h"].subject=a),disabled:!o(r).cart_recovery_email.enabled,type:"text",class:g(U),placeholder:"Última chance de garantir {nome_produto}"},null,8,qd),[[$,o(r).cart_recovery_email.stages["5h"].subject]])]),t("div",null,[e[278]||(e[278]=t("label",{class:"mb-1.5 block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Mensagem (texto)",-1)),x(t("textarea",{"onUpdate:modelValue":e[100]||(e[100]=a=>o(r).cart_recovery_email.stages["5h"].body_text=a),disabled:!o(r).cart_recovery_email.enabled,rows:"10",class:g(U),placeholder:"Digite a mensagem (texto simples)..."},null,8,Fd),[[$,o(r).cart_recovery_email.stages["5h"].body_text]])])]),t("div",Gd,[e[282]||(e[282]=t("div",{class:"flex items-center justify-between gap-3"},[t("h3",{class:"text-sm font-semibold text-zinc-900 dark:text-white"},"Etapa 3 — 24 horas")],-1)),t("div",null,[e[280]||(e[280]=t("label",{class:"mb-1.5 block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Assunto",-1)),x(t("input",{"onUpdate:modelValue":e[101]||(e[101]=a=>o(r).cart_recovery_email.stages["24h"].subject=a),disabled:!o(r).cart_recovery_email.enabled,type:"text",class:g(U),placeholder:"Seu link para {nome_produto} (caso ainda queira)"},null,8,Xd),[[$,o(r).cart_recovery_email.stages["24h"].subject]])]),t("div",null,[e[281]||(e[281]=t("label",{class:"mb-1.5 block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Mensagem (texto)",-1)),x(t("textarea",{"onUpdate:modelValue":e[102]||(e[102]=a=>o(r).cart_recovery_email.stages["24h"].body_text=a),disabled:!o(r).cart_recovery_email.enabled,rows:"10",class:g(U),placeholder:"Digite a mensagem (texto simples)..."},null,8,Hd),[[$,o(r).cart_recovery_email.stages["24h"].body_text]])])])])]),t("section",Wd,[e[284]||(e[284]=t("div",{class:"border-b border-zinc-200/80 bg-zinc-50/80 px-6 py-4 dark:border-zinc-700/80 dark:bg-zinc-800/50"},[t("h2",{class:"text-base font-semibold text-zinc-900 dark:text-white"},"Preview do e-mail"),t("p",{class:"mt-0.5 text-sm text-zinc-500 dark:text-zinc-400"},"Como o e-mail será exibido para o cliente.")],-1)),t("div",Qd,[d(Ln,{"logo-url":o(r).email_template.logo_url,subject:o(r).email_template.subject,"body-html":(o(r).email_template.body_text||"").replace(/&/g,"&").replace(//g,">").split("\\n\\n").filter(a=>a.trim()).map(a=>`

${a.replace(/\\n/g,"
")}

`).join(""),"from-name":o(r).email_template.from_name},null,8,["logo-url","subject","body-html","from-name"])])])]),t("div",Jd,[d(E,{type:"submit",disabled:o(r).processing},{default:v(()=>[...e[285]||(e[285]=[c("Salvar alterações",-1)])]),_:1},8,["disabled"]),d(o(Y),{href:"/produtos",class:"inline-flex items-center rounded-xl border border-zinc-200 px-4 py-2.5 text-sm font-medium text-zinc-700 transition hover:bg-zinc-50 dark:border-zinc-600 dark:text-zinc-300 dark:hover:bg-zinc-800"},{default:v(()=>[...e[286]||(e[286]=[c(" Cancelar ",-1)])]),_:1})])],32)):m("",!0),H.value==="sms"?(s(),l("form",{key:3,class:"w-full space-y-6",onSubmit:ae(Ee,["prevent"])},[t("div",Kd,[e[288]||(e[288]=c(" Os SMS são enviados pela integração ",-1)),d(o(Y),{href:"/integracoes?tab=apps",class:"font-medium text-[var(--color-primary)] underline"},{default:v(()=>[...e[287]||(e[287]=[c("IntegraX",-1)])]),_:1}),e[289]||(e[289]=c(" (token ativo em Integrações). Mensagens limitadas a 160 caracteres. ",-1))]),pt.value?(s(),l("div",Yd,p(pt.value),1)):m("",!0),t("section",Zd,[t("div",eu,[t("div",tu,[e[290]||(e[290]=t("div",null,[t("h2",{class:"text-base font-semibold text-zinc-900 dark:text-white"},"Envio de acesso"),t("p",{class:"mt-1 text-sm text-zinc-500 dark:text-zinc-400"},"SMS após compra aprovada com link de acesso.")],-1)),d(me,{modelValue:o(r).sms.access_delivery.enabled,"onUpdate:modelValue":e[103]||(e[103]=a=>o(r).sms.access_delivery.enabled=a)},null,8,["modelValue"])])]),t("div",au,[x(t("textarea",{"onUpdate:modelValue":e[104]||(e[104]=a=>o(r).sms.access_delivery.body_text=a),disabled:!o(r).sms.access_delivery.enabled,rows:"4",maxlength:"200",class:g(U),placeholder:"Ola {nome_cliente}! Seu acesso: {link_acesso}"},null,8,ou),[[$,o(r).sms.access_delivery.body_text]]),t("p",{class:g(["text-xs",Ne(o(r).sms.access_delivery.body_text,o(r).sms.access_delivery.enabled)?"text-red-600":"text-zinc-500"])},p(ct(o(r).sms.access_delivery.body_text))+"/"+p(Ut)+" caracteres ",3),e[291]||(e[291]=we('

Placeholders: {nome_cliente}, {nome_produto}, {link_acesso}, {senha}, {email_cliente}

',1))])]),t("section",ru,[t("div",nu,[t("div",su,[e[292]||(e[292]=t("div",null,[t("h2",{class:"text-base font-semibold text-zinc-900 dark:text-white"},"PIX gerado"),t("p",{class:"mt-1 text-sm text-zinc-500 dark:text-zinc-400"},"SMS quando o cliente gera um PIX no checkout.")],-1)),d(me,{modelValue:o(r).sms.pix_generated.enabled,"onUpdate:modelValue":e[105]||(e[105]=a=>o(r).sms.pix_generated.enabled=a)},null,8,["modelValue"])])]),t("div",lu,[x(t("textarea",{"onUpdate:modelValue":e[106]||(e[106]=a=>o(r).sms.pix_generated.body_text=a),disabled:!o(r).sms.pix_generated.enabled,rows:"4",maxlength:"200",class:g(U),placeholder:"PIX de {nome_produto}. Pague: {link_pix}"},null,8,iu),[[$,o(r).sms.pix_generated.body_text]]),t("p",{class:g(["text-xs",Ne(o(r).sms.pix_generated.body_text,o(r).sms.pix_generated.enabled)?"text-red-600":"text-zinc-500"])},p(ct(o(r).sms.pix_generated.body_text))+"/"+p(Ut)+" caracteres ",3),e[293]||(e[293]=t("p",{class:"text-xs text-zinc-500"},[c(" Placeholders: "),t("code",{class:"rounded bg-zinc-100 px-1 dark:bg-zinc-700"},"{link_pix}"),c(", "),t("code",{class:"rounded bg-zinc-100 px-1 dark:bg-zinc-700"},"{nome_produto}"),c(", "),t("code",{class:"rounded bg-zinc-100 px-1 dark:bg-zinc-700"},"{valor}")],-1))])]),t("section",du,[t("div",uu,[t("div",cu,[e[294]||(e[294]=t("div",null,[t("h2",{class:"text-base font-semibold text-zinc-900 dark:text-white"},"Recuperação de carrinho (SMS)"),t("p",{class:"mt-1 text-sm text-zinc-500 dark:text-zinc-400"},"Etapas configuráveis para sessões abandonadas e pedidos pendentes.")],-1)),d(me,{modelValue:o(r).sms.cart_recovery.enabled,"onUpdate:modelValue":e[107]||(e[107]=a=>o(r).sms.cart_recovery.enabled=a)},null,8,["modelValue"])])]),t("div",pu,[t("div",null,[e[295]||(e[295]=t("label",{class:"mb-1.5 block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Por quanto tempo tentar recuperar?",-1)),e[296]||(e[296]=t("p",{class:"mb-2 text-xs text-zinc-500 dark:text-zinc-400"}," Após esse prazo, nenhum SMS de recuperação será enviado para o mesmo abandono. ",-1)),t("select",{value:Number(o(r).sms.cart_recovery.deadline_hours)||48,disabled:!o(r).sms.cart_recovery.enabled,class:g([U,"max-w-xs"]),onChange:e[108]||(e[108]=a=>se(a.target.value))},[(s(!0),l(z,null,I(ja.value,a=>(s(),l("option",{key:a.hours,value:a.hours},p(a.label),9,bu))),128))],40,mu)]),(s(!0),l(z,null,I(o(r).sms.cart_recovery.stages,(a,i)=>(s(),l("div",{key:`sms-stage-${i}-${a.delay_minutes}`,class:"panel-card-sm space-y-4 dark:bg-zinc-900/20"},[t("div",xu,[t("div",null,[t("h3",yu,"Etapa "+p(i+1),1),t("p",vu,p(ze(a)),1)]),o(r).sms.cart_recovery.stages.length>1?(s(),l("button",{key:0,type:"button",class:"text-xs font-medium text-red-600 hover:underline",disabled:!o(r).sms.cart_recovery.enabled,onClick:y=>Ea(i)}," Remover ",8,fu)):m("",!0)]),t("div",null,[e[299]||(e[299]=t("label",{class:"mb-1.5 block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Quando enviar?",-1)),t("div",gu,[x(t("input",{"onUpdate:modelValue":y=>o(r).sms.cart_recovery.stages[i].delay_value=y,disabled:!o(r).sms.cart_recovery.enabled,type:"number",min:"1",class:g([U,"w-20 shrink-0"]),onInput:y=>re(i)},null,40,_u),[[$,o(r).sms.cart_recovery.stages[i].delay_value,void 0,{number:!0}]]),x(t("select",{"onUpdate:modelValue":y=>o(r).sms.cart_recovery.stages[i].delay_unit=y,disabled:!o(r).sms.cart_recovery.enabled,class:g([U,"min-w-[7rem] flex-1"]),onChange:y=>re(i)},[(s(),l(z,null,I(R,y=>t("option",{key:y.id,value:y.id},p(y.label),9,zu)),64))],40,ku),[[Z,o(r).sms.cart_recovery.stages[i].delay_unit]]),e[297]||(e[297]=t("span",{class:"text-xs text-zinc-500 dark:text-zinc-400"},"após o abandono",-1))]),t("div",hu,[e[298]||(e[298]=t("span",{class:"w-full text-xs text-zinc-500 dark:text-zinc-400"},"Atalhos:",-1)),(s(),l(z,null,I(M,y=>t("button",{key:y.minutes,type:"button",disabled:!o(r).sms.cart_recovery.enabled,class:g(["rounded-lg px-2.5 py-1 text-xs font-medium transition",le(a,y.minutes)?"bg-[var(--color-primary)] text-white shadow-sm":"bg-zinc-100 text-zinc-700 hover:bg-zinc-200 dark:bg-zinc-800 dark:text-zinc-300 dark:hover:bg-zinc-700"]),onClick:q=>ne(i,y.minutes)},p(y.label),11,wu)),64))])]),t("div",null,[e[300]||(e[300]=t("label",{class:"mb-1.5 block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Mensagem do SMS",-1)),x(t("textarea",{"onUpdate:modelValue":y=>o(r).sms.cart_recovery.stages[i].body_text=y,disabled:!o(r).sms.cart_recovery.enabled,rows:"3",maxlength:"200",class:g(U),placeholder:"Ex.: Ola {nome_cliente}! Retome {nome_produto}: {link_checkout}"},null,8,Cu),[[$,o(r).sms.cart_recovery.stages[i].body_text]]),t("p",{class:g(["mt-1 text-xs",Ne(a.body_text,o(r).sms.cart_recovery.enabled)?"text-red-600":"text-zinc-500"])},p(ct(a.body_text))+"/"+p(Ut)+" caracteres ",3)])]))),128)),t("button",{type:"button",class:"text-sm font-medium text-[var(--color-primary)] hover:underline",disabled:!o(r).sms.cart_recovery.enabled,onClick:Aa}," + Adicionar etapa ",8,$u),e[301]||(e[301]=t("p",{class:"text-xs text-zinc-500"},[c(" Placeholders: "),t("code",{class:"rounded bg-zinc-100 px-1 dark:bg-zinc-700"},"{nome_cliente}"),c(", "),t("code",{class:"rounded bg-zinc-100 px-1 dark:bg-zinc-700"},"{nome_produto}"),c(", "),t("code",{class:"rounded bg-zinc-100 px-1 dark:bg-zinc-700"},"{link_checkout}")],-1))])]),t("div",Su,[d(E,{type:"submit",disabled:o(r).processing||!!pt.value},{default:v(()=>[...e[302]||(e[302]=[c("Salvar alterações",-1)])]),_:1},8,["disabled"]),d(o(Y),{href:"/produtos",class:"inline-flex items-center rounded-xl border border-zinc-200 px-4 py-2.5 text-sm font-medium text-zinc-700 transition hover:bg-zinc-50 dark:border-zinc-600 dark:text-zinc-300 dark:hover:bg-zinc-800"},{default:v(()=>[...e[303]||(e[303]=[c(" Cancelar ",-1)])]),_:1})])],32)):m("",!0),H.value==="order_bump"?(s(),l(z,{key:4},[t("div",Pu,[t("div",Vu,[t("div",Uu,[t("div",ju,[e[305]||(e[305]=t("div",null,[t("h2",{class:"text-base font-semibold text-zinc-900 dark:text-white"},"Order Bump"),t("p",{class:"mt-1 text-sm text-zinc-500 dark:text-zinc-400"}," Ofereça outros produtos no checkout para o cliente comprar junto. Escolha o produto, personalize título, descrição e preço. ")],-1)),d(E,{type:"button",class:"inline-flex items-center gap-2 rounded-xl",onClick:ca},{default:v(()=>[d(o(tt),{class:"h-4 w-4"}),e[304]||(e[304]=c(" Adicionar order bump ",-1))]),_:1})])])]),!k.produto.order_bumps||!k.produto.order_bumps.length?(s(),l("div",Au,[t("span",Eu,[d(o($t),{class:"h-7 w-7"})]),e[307]||(e[307]=t("p",{class:"mt-4 font-medium text-zinc-700 dark:text-zinc-300"},"Nenhum order bump",-1)),e[308]||(e[308]=t("p",{class:"mt-1 max-w-sm text-sm text-zinc-500 dark:text-zinc-400"}," Adicione produtos que aparecerão no checkout como oferta especial para comprar junto. ",-1)),d(E,{type:"button",class:"mt-4 rounded-xl",onClick:ca},{default:v(()=>[d(o(tt),{class:"mr-2 h-4 w-4"}),e[306]||(e[306]=c(" Adicionar order bump ",-1))]),_:1})])):(s(),l("ul",Iu,[(s(!0),l(z,null,I(k.produto.order_bumps,a=>(s(),l("li",{key:a.id,class:"panel-card flex flex-col overflow-hidden transition hover:border-zinc-200 dark:hover:border-zinc-600"},[t("div",Ru,[t("div",Mu,[a.target_image_url?(s(),l("img",{key:0,src:a.target_image_url,alt:a.target_name,class:"h-full w-full object-cover"},null,8,Lu)):(s(),l("div",Nu,[d(o($t),{class:"h-8 w-8"})]))]),t("div",Tu,[t("h3",Ou,p(a.title),1),t("p",Bu,"Produto: "+p(a.target_name),1),a.description?(s(),l("p",Du,p(a.description),1)):m("",!0),t("p",qu,[a.is_free?(s(),l("span",Fu," Grátis ")):(s(),l(z,{key:1},[c(p(a.price_override!=null?`R$ ${Number(a.price_override).toFixed(2)}`:`R$ ${Number(a.effective_amount_brl).toFixed(2)}`),1)],64)),t("span",Gu," · CTA: "+p(a.cta_title),1)])]),t("div",Xu,[d(E,{size:"sm",variant:"outline",class:"h-9 w-9 p-0",onClick:i=>eo(a)},{default:v(()=>[d(o(Xe),{class:"h-4 w-4"})]),_:1},8,["onClick"]),d(E,{size:"sm",variant:"outline",class:"h-9 w-9 p-0 text-red-600 hover:bg-red-50 dark:text-red-400 dark:hover:bg-red-900/20",onClick:i=>ao(a)},{default:v(()=>[d(o(Vt),{class:"h-4 w-4"})]),_:1},8,["onClick"])])])]))),128))]))]),(s(),L(ot,{to:"body"},[d(Fe,{"enter-active-class":"transition duration-200 ease-out","enter-from-class":"opacity-0","enter-to-class":"opacity-100","leave-active-class":"transition duration-150 ease-in","leave-from-class":"opacity-100","leave-to-class":"opacity-0"},{default:v(()=>[kt.value?(s(),l("div",{key:0,class:"fixed inset-0 z-50 flex items-center justify-center p-4","aria-modal":"true",role:"dialog",onKeydown:ga(Be,["escape"])},[t("div",{class:"absolute inset-0 bg-zinc-900/60 dark:bg-zinc-950/70","aria-hidden":"true",onClick:Be}),t("div",Hu,[t("div",Wu,[t("h3",Qu,p(je.value?"Editar order bump":"Adicionar order bump"),1),t("button",{type:"button",class:"rounded-lg p-1.5 text-zinc-500 transition hover:bg-zinc-100 hover:text-zinc-700 dark:hover:bg-zinc-700 dark:hover:text-zinc-300","aria-label":"Fechar",onClick:Be},[d(o(rt),{class:"h-5 w-5"})])]),t("form",{class:"mt-5 space-y-4",onSubmit:ae(to,["prevent"])},[t("div",null,[e[310]||(e[310]=t("label",{class:"mb-1.5 block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Produto",-1)),x(t("select",{"onUpdate:modelValue":e[109]||(e[109]=a=>o(P).target_product_id=a),required:"",class:g([U,"w-full"]),onChange:Za},[e[309]||(e[309]=t("option",{value:""},"Selecione o produto",-1)),(s(!0),l(z,null,I(k.produto.available_products_for_bump||[],a=>(s(),l("option",{key:a.id,value:a.id},p(Ya(a)),9,Ju))),128))],544),[[Z,o(P).target_product_id]])]),ye.value&&ye.value.billing_type!=="subscription"&&ye.value.offers&&ye.value.offers.length?(s(),l("div",Ku,[e[312]||(e[312]=t("label",{class:"mb-1.5 block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Oferta (opcional)",-1)),x(t("select",{"onUpdate:modelValue":e[110]||(e[110]=a=>o(P).target_product_offer_id=a),class:g([U,"w-full"])},[e[311]||(e[311]=t("option",{value:""},"Preço base do produto",-1)),(s(!0),l(z,null,I(ye.value.offers,a=>(s(),l("option",{key:a.id,value:a.id},p(a.name)+" — "+p(a.currency)+" "+p(Number(a.price).toFixed(2)),9,Yu))),128))],512),[[Z,o(P).target_product_offer_id]])])):m("",!0),ye.value&&ye.value.billing_type==="subscription"&&ye.value.subscription_plans&&ye.value.subscription_plans.length?(s(),l("div",Zu,[e[314]||(e[314]=t("label",{class:"mb-1.5 block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Plano (opcional)",-1)),x(t("select",{"onUpdate:modelValue":e[111]||(e[111]=a=>o(P).target_subscription_plan_id=a),class:g([U,"w-full"])},[e[313]||(e[313]=t("option",{value:""},"Menor preço entre os planos",-1)),(s(!0),l(z,null,I(ye.value.subscription_plans,a=>(s(),l("option",{key:a.id,value:a.id},p(a.name)+" — "+p(a.currency)+" "+p(Number(a.price).toFixed(2)),9,ec))),128))],512),[[Z,o(P).target_subscription_plan_id]])])):m("",!0),t("div",null,[e[315]||(e[315]=t("label",{class:"mb-1.5 block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Título",-1)),x(t("input",{"onUpdate:modelValue":e[112]||(e[112]=a=>o(P).title=a),type:"text",required:"",class:g(U),placeholder:"Ex: Módulo Extra"},null,512),[[$,o(P).title]]),o(P).errors.title?(s(),l("p",tc,p(o(P).errors.title),1)):m("",!0)]),t("div",null,[e[316]||(e[316]=t("label",{class:"mb-1.5 block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Descrição",-1)),x(t("textarea",{"onUpdate:modelValue":e[113]||(e[113]=a=>o(P).description=a),rows:"3",class:g(U),placeholder:"Descreva o benefício da oferta"},null,512),[[$,o(P).description]])]),t("div",ac,[d(me,{modelValue:o(P).is_free,"onUpdate:modelValue":e[114]||(e[114]=a=>o(P).is_free=a),label:"Grátis (pré-selecionado no checkout)"},null,8,["modelValue"]),e[317]||(e[317]=t("p",{class:"mt-1.5 text-xs text-zinc-500 dark:text-zinc-400"}," O cliente vê “Grátis” no checkout e o bump já vem marcado. O acesso ao produto é liberado junto com a compra principal. ",-1))]),o(P).is_free?m("",!0):(s(),l("div",oc,[e[318]||(e[318]=t("label",{class:"mb-1.5 block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Preço com desconto (opcional)",-1)),x(t("input",{"onUpdate:modelValue":e[115]||(e[115]=a=>o(P).price_override=a),type:"number",step:"0.01",min:"0",class:g(U),placeholder:"Deixe vazio para usar o preço do produto"},null,512),[[$,o(P).price_override]]),e[319]||(e[319]=t("p",{class:"mt-1 text-xs text-zinc-500 dark:text-zinc-400"},"Se não preencher, será usado o preço do produto ou da oferta selecionada.",-1))])),t("div",null,[e[320]||(e[320]=t("label",{class:"mb-1.5 block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Texto do botão / CTA",-1)),x(t("input",{"onUpdate:modelValue":e[116]||(e[116]=a=>o(P).cta_title=a),type:"text",required:"",class:g(U),placeholder:"Ex: Sim, quero esta oferta!"},null,512),[[$,o(P).cta_title]])]),t("div",rc,[d(E,{type:"submit",disabled:o(P).processing},{default:v(()=>[c(p(je.value?"Atualizar":"Adicionar"),1)]),_:1},8,["disabled"]),d(E,{type:"button",variant:"outline",onClick:Be},{default:v(()=>[...e[321]||(e[321]=[c("Cancelar",-1)])]),_:1})])],32)])],32)):m("",!0)]),_:1})]))],64)):m("",!0),H.value==="upsell_downsell"?(s(),l("div",nc,[t("div",sc,[t("div",lc,[t("div",ic,[e[325]||(e[325]=t("div",null,[t("h2",{class:"text-base font-semibold text-zinc-900 dark:text-white"},"Upsell / Downsell"),t("p",{class:"mt-1 text-sm text-zinc-500 dark:text-zinc-400"}," Ofertas exibidas após a compra aprovada. Upsell: ofertas extras; Downsell: oferta alternativa se o cliente recusar. ")],-1)),t("div",dc,[d(o(Y),{href:`/produtos/${k.produto.id}/upsell-page/edit`,class:"inline-flex items-center gap-2 rounded-xl border border-zinc-300 bg-white px-4 py-2 text-sm font-medium text-zinc-700 transition hover:bg-zinc-50 dark:border-zinc-600 dark:bg-zinc-800 dark:text-zinc-300 dark:hover:bg-zinc-700"},{default:v(()=>[d(o(Xe),{class:"h-4 w-4"}),e[322]||(e[322]=c(" Editar página upsell ",-1))]),_:1},8,["href"]),d(o(Y),{href:`/produtos/${k.produto.id}/downsell-page/edit`,class:"inline-flex items-center gap-2 rounded-xl border border-zinc-300 bg-white px-4 py-2 text-sm font-medium text-zinc-700 transition hover:bg-zinc-50 dark:border-zinc-600 dark:bg-zinc-800 dark:text-zinc-300 dark:hover:bg-zinc-700"},{default:v(()=>[d(o(Xe),{class:"h-4 w-4"}),e[323]||(e[323]=c(" Editar página downsell ",-1))]),_:1},8,["href"]),d(E,{type:"button",class:"rounded-xl",disabled:zt.value,onClick:so},{default:v(()=>[zt.value?(s(),L(o(He),{key:0,class:"mr-2 h-4 w-4 animate-spin"})):m("",!0),e[324]||(e[324]=c(" Salvar configuração ",-1))]),_:1},8,["disabled"])])])])]),t("div",uc,[t("div",null,[d(me,{modelValue:K.upsell.enabled,"onUpdate:modelValue":e[117]||(e[117]=a=>K.upsell.enabled=a),label:"Ativar upsell (após compra aprovada)"},null,8,["modelValue"]),e[332]||(e[332]=t("p",{class:"mt-1 text-xs text-zinc-500 dark:text-zinc-400"},"Exibe ofertas extras antes da página de obrigado.",-1)),K.upsell.enabled?(s(),l(z,{key:0},[e[330]||(e[330]=t("label",{class:"mt-3 block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Ofertas de upsell",-1)),e[331]||(e[331]=t("p",{class:"mt-0.5 text-xs text-zinc-500 dark:text-zinc-400"},"Títulos, cores e textos são editados em « Editar página upsell ».",-1)),(s(!0),l(z,null,I(K.upsell.products,(a,i)=>(s(),l("div",{key:"u-"+i,class:"mt-2 panel-card flex flex-wrap items-end gap-2 p-3"},[t("div",cc,[e[327]||(e[327]=t("label",{class:"mb-0.5 block text-xs font-medium text-zinc-600 dark:text-zinc-400"},"Produto",-1)),x(t("select",{"onUpdate:modelValue":y=>a.product_id=y,class:g([U,"py-2"])},[e[326]||(e[326]=t("option",{value:null},"Selecione",-1)),(s(!0),l(z,null,I(k.produto.products_for_upsell||[],y=>(s(),l("option",{key:y.id,value:y.id},p(y.name),9,mc))),128))],8,pc),[[Z,a.product_id]])]),t("div",bc,[e[329]||(e[329]=t("label",{class:"mb-0.5 block text-xs font-medium text-zinc-600 dark:text-zinc-400"},"Oferta (opcional)",-1)),x(t("select",{"onUpdate:modelValue":y=>a.product_offer_id=y,class:g([U,"py-2"])},[e[328]||(e[328]=t("option",{value:null},"Preço base",-1)),(s(!0),l(z,null,I(k.produto.products_for_upsell||[],y=>(s(),l(z,{key:y.id},[y.id===a.product_id?(s(!0),l(z,{key:0},I(y.offers,q=>(s(),l("option",{key:q.id,value:q.id},p(q.name)+" (R$ "+p(q.price?.toFixed(2))+")",9,yc))),128)):m("",!0)],64))),128))],8,xc),[[Z,a.product_offer_id,void 0,{number:!0}]])]),t("button",{type:"button",class:"rounded-lg border border-red-200 px-2 py-1.5 text-xs font-medium text-red-700 hover:bg-red-50 dark:border-red-800 dark:text-red-400 dark:hover:bg-red-900/30",onClick:y=>K.upsell.products.splice(i,1)},"Remover",8,vc)]))),128)),t("button",{type:"button",class:"mt-2 rounded-xl border-2 border-dashed border-zinc-300 px-3 py-2 text-sm font-medium text-zinc-600 hover:border-[var(--color-primary)] hover:text-[var(--color-primary)] dark:border-zinc-600 dark:text-zinc-400 dark:hover:border-[var(--color-primary)]",onClick:e[118]||(e[118]=a=>K.upsell.products.push({product_id:null,product_offer_id:null,title_override:"",description:"",image_url:"",video_url:""}))},"+ Adicionar oferta")],64)):m("",!0)]),t("div",fc,[d(me,{modelValue:K.downsell.enabled,"onUpdate:modelValue":e[119]||(e[119]=a=>K.downsell.enabled=a),disabled:!K.upsell.enabled,label:"Ativar downsell (após recusar upsell)"},null,8,["modelValue","disabled"]),K.upsell.enabled?(s(),l("p",_c,"Uma oferta alternativa se o cliente recusar o upsell.")):(s(),l("p",gc," Ative o upsell acima para habilitar o downsell. ")),K.downsell.enabled?(s(),l(z,{key:2},[e[337]||(e[337]=t("p",{class:"mt-1 text-xs text-zinc-500 dark:text-zinc-400"},"Títulos, cores e textos são editados em « Editar página downsell ».",-1)),t("div",kc,[t("div",zc,[e[334]||(e[334]=t("label",{class:"mb-0.5 block text-xs font-medium text-zinc-600 dark:text-zinc-400"},"Produto",-1)),x(t("select",{"onUpdate:modelValue":e[120]||(e[120]=a=>K.downsell.product_id=a),class:g([U,"py-2"])},[e[333]||(e[333]=t("option",{value:null},"Selecione",-1)),(s(!0),l(z,null,I(k.produto.products_for_upsell||[],a=>(s(),l("option",{key:a.id,value:a.id},p(a.name),9,hc))),128))],512),[[Z,K.downsell.product_id]])]),t("div",wc,[e[336]||(e[336]=t("label",{class:"mb-0.5 block text-xs font-medium text-zinc-600 dark:text-zinc-400"},"Oferta (opcional)",-1)),x(t("select",{"onUpdate:modelValue":e[121]||(e[121]=a=>K.downsell.product_offer_id=a),class:g([U,"py-2"])},[e[335]||(e[335]=t("option",{value:null},"Preço base",-1)),(s(!0),l(z,null,I(k.produto.products_for_upsell||[],a=>(s(),l(z,{key:a.id},[a.id===K.downsell.product_id?(s(!0),l(z,{key:0},I(a.offers,i=>(s(),l("option",{key:i.id,value:i.id},p(i.name)+" (R$ "+p(i.price?.toFixed(2))+")",9,Cc))),128)):m("",!0)],64))),128))],512),[[Z,K.downsell.product_offer_id,void 0,{number:!0}]])])])],64)):m("",!0)])])])):m("",!0),H.value==="checkout"?(s(),l(z,{key:6},[t("div",$c,[t("div",Sc,[t("div",Pc,[t("div",Vc,[e[339]||(e[339]=t("div",null,[t("h2",{class:"text-base font-semibold text-zinc-900 dark:text-white"},"Checkouts"),t("p",{class:"mt-1 text-sm text-zinc-500 dark:text-zinc-400"}," Ofertas e planos usam o checkout principal por padrão. Crie um checkout exclusivo só quando quiser um link direto para uma oferta ou plano. ")],-1)),t("div",Uc,[Gt.value.length>0?(s(),L(E,{key:0,type:"button",class:"inline-flex items-center gap-2 rounded-xl",onClick:e[122]||(e[122]=a=>Ae.value=!0)},{default:v(()=>[d(o(tt),{class:"h-4 w-4"}),e[338]||(e[338]=c(" Criar novo checkout ",-1))]),_:1})):m("",!0)])])])]),t("div",jc,[(s(!0),l(z,null,I(uo.value,a=>(s(),l("div",{key:a.id,class:"panel-card flex flex-col overflow-hidden transition hover:border-zinc-200 dark:hover:border-zinc-600 dark:hover:border-zinc-500/50"},[t("div",Ac,[t("div",Ec,[t("span",{class:g(["inline-flex rounded-md px-2 py-0.5 text-xs font-medium",a.type==="main"?"bg-[var(--color-primary)]/20 text-[var(--color-primary)]":a.type==="offer"?"bg-emerald-100 text-emerald-700 dark:bg-emerald-900/40 dark:text-emerald-300":"bg-blue-100 text-blue-700 dark:bg-blue-900/40 dark:text-blue-300"])},p(a.type==="main"?"Principal":a.type==="offer"?"Oferta":"Plano"),3),t("span",Ic,p(a.type==="main"?"Preço base":a.label),1)]),a.slug?(s(),l(z,{key:0},[t("p",{class:"truncate font-mono text-xs text-zinc-500 dark:text-zinc-400",title:xe(a.slug)},p(xe(a.slug)),9,Rc),t("div",Mc,[t("button",{type:"button",class:g(["inline-flex items-center gap-1.5 rounded-lg px-2.5 py-1.5 text-xs font-medium transition",ve.value===a.slug?"bg-emerald-100 text-emerald-700 dark:bg-emerald-900/40 dark:text-emerald-300":"bg-zinc-100 text-zinc-700 hover:bg-zinc-200 dark:bg-zinc-700 dark:text-zinc-300 dark:hover:bg-zinc-600"]),onClick:i=>lo(a.slug)},[ve.value===a.slug?(s(),L(o(Zt),{key:0,class:"h-3.5 w-3.5"})):(s(),L(o(ha),{key:1,class:"h-3.5 w-3.5"})),c(" "+p(ve.value===a.slug?"Copiado":"Copiar"),1)],10,Lc),t("a",{href:xe(a.slug),target:"_blank",rel:"noopener noreferrer",class:"inline-flex items-center gap-1.5 rounded-lg border border-zinc-200 px-2.5 py-1.5 text-xs font-medium text-zinc-600 transition hover:bg-zinc-50 dark:border-zinc-600 dark:text-zinc-400 dark:hover:bg-zinc-700"}," Abrir ",8,Nc),d(o(Y),{href:po(a),class:"inline-flex items-center gap-1.5 rounded-lg border border-[var(--color-primary)]/50 bg-[var(--color-primary)]/10 px-2.5 py-1.5 text-xs font-medium text-[var(--color-primary)] transition hover:bg-[var(--color-primary)]/20 dark:border-[var(--color-primary)]/50 dark:bg-[var(--color-primary)]/20 dark:hover:bg-[var(--color-primary)]/30"},{default:v(()=>[d(o(Xe),{class:"h-3.5 w-3.5"}),e[340]||(e[340]=c(" Editar ",-1))]),_:1},8,["href"]),a.type==="offer"||a.type==="plan"?(s(),l("button",{key:0,type:"button",class:"inline-flex items-center gap-1.5 rounded-lg px-2.5 py-1.5 text-xs font-medium text-red-600 transition hover:bg-red-50 dark:text-red-400 dark:hover:bg-red-900/20",onClick:i=>co(a)},[d(o(Vt),{class:"h-3.5 w-3.5"}),e[341]||(e[341]=c(" Excluir ",-1))],8,Tc)):m("",!0)])],64)):(s(),l(z,{key:1},[a.type==="main"?(s(),l(z,{key:0},[e[343]||(e[343]=t("p",{class:"text-xs text-zinc-500 dark:text-zinc-400"},"Salve o produto para gerar o link do checkout.",-1)),d(E,{type:"button",variant:"outline",size:"sm",class:"mt-auto w-fit rounded-lg",onClick:i=>Xt(a)},{default:v(()=>[...e[342]||(e[342]=[c(" Gerar link ",-1)])]),_:1},8,["onClick"])],64)):(s(),l(z,{key:1},[e[345]||(e[345]=t("p",{class:"text-xs text-zinc-500 dark:text-zinc-400"},"Usa o checkout principal.",-1)),u.produto.checkout_slug?(s(),l("p",{key:0,class:"truncate font-mono text-xs text-zinc-400 dark:text-zinc-500",title:xe(u.produto.checkout_slug)},p(xe(u.produto.checkout_slug)),9,Oc)):m("",!0),d(E,{type:"button",variant:"outline",size:"sm",class:"mt-auto w-fit rounded-lg",onClick:i=>Xt(a)},{default:v(()=>[...e[344]||(e[344]=[c(" Criar checkout exclusivo ",-1)])]),_:1},8,["onClick"])],64))],64))])]))),128))])]),(s(),L(ot,{to:"body"},[d(Fe,{"enter-active-class":"transition duration-200 ease-out","enter-from-class":"opacity-0","enter-to-class":"opacity-100","leave-active-class":"transition duration-150 ease-in","leave-from-class":"opacity-100","leave-to-class":"opacity-0"},{default:v(()=>[Ae.value?(s(),l("div",{key:0,class:"fixed inset-0 z-50 flex items-center justify-center p-4","aria-modal":"true",role:"dialog",onKeydown:e[126]||(e[126]=ga(a=>Ae.value=!1,["escape"]))},[t("div",{class:"absolute inset-0 bg-zinc-900/60 dark:bg-zinc-950/70","aria-hidden":"true",onClick:e[123]||(e[123]=a=>Ae.value=!1)}),t("div",Bc,[t("div",Dc,[e[346]||(e[346]=t("h3",{class:"text-lg font-semibold text-zinc-900 dark:text-white"},"Criar novo checkout",-1)),t("button",{type:"button",class:"rounded-lg p-1.5 text-zinc-500 transition hover:bg-zinc-100 hover:text-zinc-700 dark:hover:bg-zinc-700 dark:hover:text-zinc-300","aria-label":"Fechar",onClick:e[124]||(e[124]=a=>Ae.value=!1)},[d(o(rt),{class:"h-5 w-5"})])]),e[349]||(e[349]=t("p",{class:"mt-1 text-sm text-zinc-500 dark:text-zinc-400"}," Crie um link direto para uma oferta ou plano. Caso contrário, eles usam o checkout principal. ",-1)),t("ul",qc,[(s(!0),l(z,null,I(Gt.value,a=>(s(),l("li",{key:a.id,class:"panel-card flex items-center justify-between gap-3 px-4 py-3"},[t("span",Fc,p(a.type==="offer"?`Oferta: ${a.label}`:`Plano: ${a.label}`),1),d(E,{type:"button",size:"sm",class:"shrink-0 rounded-lg",onClick:i=>{Xt(a),Ae.value=!1}},{default:v(()=>[...e[347]||(e[347]=[c(" Criar checkout exclusivo ",-1)])]),_:1},8,["onClick"])]))),128))]),Gt.value.length===0?(s(),l("p",Gc," Todas as ofertas e planos já possuem checkout exclusivo ou usam o principal. ")):m("",!0),t("div",Xc,[d(E,{variant:"outline",class:"rounded-xl",onClick:e[125]||(e[125]=a=>Ae.value=!1)},{default:v(()=>[...e[348]||(e[348]=[c("Fechar",-1)])]),_:1})])])],32)):m("",!0)]),_:1})]))],64)):m("",!0),H.value==="links"?(s(),l("div",Hc,[t("div",Wc,[e[351]||(e[351]=t("div",{class:"absolute right-0 top-0 h-32 w-32 translate-x-8 -translate-y-8 rounded-full bg-[var(--color-primary)]/10 dark:bg-[var(--color-primary)]/20","aria-hidden":"true"},null,-1)),t("div",Qc,[t("span",Jc,[d(o(Ge),{class:"h-6 w-6","aria-hidden":"true"})]),e[350]||(e[350]=t("div",null,[t("h2",{class:"text-lg font-semibold text-zinc-900 dark:text-white"},"Links de checkout"),t("p",{class:"mt-1 max-w-xl text-sm leading-relaxed text-zinc-600 dark:text-zinc-400"}," Compartilhe estes links em campanhas, e-mails ou redes sociais. Cada link leva direto ao checkout correspondente. ")],-1))])]),t("div",Kc,[ba.value.length===0?(s(),l("div",Yc,[t("span",Zc,[d(o(Ge),{class:"h-7 w-7"})]),e[352]||(e[352]=t("p",{class:"mt-4 font-medium text-zinc-700 dark:text-zinc-300"},"Nenhum link disponível",-1)),e[353]||(e[353]=t("p",{class:"mt-1 max-w-sm text-sm text-zinc-500 dark:text-zinc-400"}," Salve o produto na aba Geral para gerar o link. Ofertas e planos configurados aparecerão aqui. ",-1))])):(s(),l("ul",ep,[(s(!0),l(z,null,I(ba.value,(a,i)=>(s(),l("li",{key:a.id,class:"group relative panel-card flex flex-col overflow-hidden transition hover:border-zinc-200 dark:hover:border-zinc-600 dark:hover:border-zinc-500/50"},[t("div",tp,[t("div",ap,[t("div",op,[t("span",{class:g(["inline-flex rounded-md px-2 py-0.5 text-xs font-medium",a.id==="main"?"bg-[var(--color-primary)]/20 text-[var(--color-primary)] dark:bg-[var(--color-primary)]/30":"bg-zinc-200/80 text-zinc-600 dark:bg-zinc-600/80 dark:text-zinc-400"])},p(a.id==="main"?"Principal":a.id.startsWith("offer")?"Oferta":"Plano"),3),t("span",rp,p(a.id==="main"?"Preço base":a.label),1)]),t("p",{class:"mt-1.5 truncate font-mono text-xs text-zinc-500 dark:text-zinc-400",title:Ze(a)},p(Ze(a)),9,np)]),t("div",sp,[Ze(a)?(s(),l("a",{key:0,href:Ze(a),target:"_blank",rel:"noopener noreferrer",class:"inline-flex items-center gap-1.5 rounded-lg border border-zinc-200 px-3 py-2 text-xs font-medium text-zinc-600 transition hover:bg-zinc-50 hover:text-zinc-900 dark:border-zinc-600 dark:text-zinc-400 dark:hover:bg-zinc-700 dark:hover:text-white"}," Abrir ",8,lp)):m("",!0),t("button",{type:"button",class:g(["inline-flex items-center gap-1.5 rounded-lg px-3 py-2 text-xs font-medium transition",ve.value===a.id?"bg-emerald-100 text-emerald-700 dark:bg-emerald-900/40 dark:text-emerald-300":"bg-[var(--color-primary)]/10 text-[var(--color-primary)] hover:bg-[var(--color-primary)]/20 dark:bg-[var(--color-primary)]/20 dark:hover:bg-[var(--color-primary)]/30"]),onClick:y=>io(a)},[ve.value===a.id?(s(),L(o(Zt),{key:0,class:"h-3.5 w-3.5"})):(s(),L(o(ha),{key:1,class:"h-3.5 w-3.5"})),c(" "+p(ve.value===a.id?"Copiado!":"Copiar"),1)],10,ip)])])]))),128))]))])])):m("",!0),H.value==="coproducao"?(s(),L(ln,{key:8,"product-id":k.produto.id},null,8,["product-id"])):m("",!0),H.value==="reembolso"&&k.produto.type==="area_membros"?(s(),l("div",dp,[e[359]||(e[359]=t("h2",{class:"text-base font-semibold text-zinc-900 dark:text-white"},"Reembolso na área de membros",-1)),e[360]||(e[360]=t("p",{class:"mt-1 text-sm text-zinc-600 dark:text-zinc-400"},[c(" Permite que o aluno solicite reembolso pelo menu da conta no header da área de membros. Aprovações e histórico ficam em "),t("strong",null,"Reembolsos"),c(" no menu do painel. ")],-1)),t("div",up,[e[354]||(e[354]=t("label",{class:"text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Habilitar solicitação de reembolso",-1)),d(me,{modelValue:o(ce).enabled,"onUpdate:modelValue":e[127]||(e[127]=a=>o(ce).enabled=a)},null,8,["modelValue"])]),o(ce).enabled?(s(),l("div",cp,[t("div",null,[e[355]||(e[355]=t("label",{class:"block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Prazo (dias após liberação do acesso)",-1)),x(t("input",{"onUpdate:modelValue":e[128]||(e[128]=a=>o(ce).days=a),type:"number",min:"1",max:"365",class:"mt-1 w-full max-w-[120px] rounded-lg border border-zinc-300 bg-white px-3 py-2 text-sm dark:border-zinc-600 dark:bg-zinc-900"},null,512),[[$,o(ce).days,void 0,{number:!0}]])]),t("div",null,[e[358]||(e[358]=t("p",{class:"text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Modo de processamento",-1)),t("div",pp,[t("label",mp,[x(t("input",{"onUpdate:modelValue":e[129]||(e[129]=a=>o(ce).mode=a),type:"radio",value:"auto",class:"mt-1"},null,512),[[St,o(ce).mode]]),e[356]||(e[356]=t("span",null,[t("span",{class:"text-sm font-medium text-zinc-800 dark:text-zinc-200"},"Automático"),t("span",{class:"mt-0.5 block text-xs text-zinc-500 dark:text-zinc-400"}," Estorno imediato via API apenas para pagamentos PIX na CajuPay. Cartão e outros gateways entram em fila manual. ")],-1))]),t("label",bp,[x(t("input",{"onUpdate:modelValue":e[130]||(e[130]=a=>o(ce).mode=a),type:"radio",value:"manual",class:"mt-1"},null,512),[[St,o(ce).mode]]),e[357]||(e[357]=t("span",null,[t("span",{class:"text-sm font-medium text-zinc-800 dark:text-zinc-200"},"Aprovação manual"),t("span",{class:"mt-0.5 block text-xs text-zinc-500 dark:text-zinc-400"}," Solicitações aparecem no menu Reembolsos do painel para você aprovar ou rejeitar. ")],-1))])])])])):m("",!0),t("div",xp,[d(E,{type:"button",disabled:o(ce).processing,onClick:Et},{default:v(()=>[c(p(o(ce).processing?"Salvando…":"Salvar"),1)]),_:1},8,["disabled"]),o(ce).hasErrors?(s(),l("p",yp," Verifique os campos e tente novamente. ")):m("",!0)])])):m("",!0),H.value==="afiliados"?(s(),L(Cn,{key:10,"product-id":k.produto.id},null,8,["product-id"])):m("",!0),(s(!0),l(z,null,I(f.value,a=>(s(),l(z,{key:a.id},[H.value===a.id?(s(),l("div",vp,[t("div",fp,[t("h2",gp,p(a.label),1),e[361]||(e[361]=t("p",{class:"mt-0.5 text-sm text-zinc-500 dark:text-zinc-400"}," Configurações específicas deste produto via plugin. ",-1))]),t("div",_p,[a.pluginPanel&&o(X)(a.pluginPanel)?(s(),L(qe(o(X)(a.pluginPanel)),{key:0,produto:k.produto},null,8,["produto"])):(s(),l("div",kp," Não foi possível carregar este painel do plugin. "))])])):m("",!0)],64))),128))])]))}});export{Zp as default}; diff --git a/public/build/assets/Edit-DC16N3Ay.js b/public/build/assets/Edit-DqmRrq7w.js similarity index 99% rename from public/build/assets/Edit-DC16N3Ay.js rename to public/build/assets/Edit-DqmRrq7w.js index 510827ec..8b897d44 100644 --- a/public/build/assets/Edit-DC16N3Ay.js +++ b/public/build/assets/Edit-DqmRrq7w.js @@ -1 +1 @@ -import{o as l,c as i,a as t,g as c,h as n,i as o,u as s,d,b as f,v,t as u,bE as w,bF as D,F as C,y as V,f as M,w as h,r as _}from"./runtime-dom.esm-bundler-OrSu0e66.js";import{u as B,l as z,_ as g,b as E,r as N}from"./Toggle-BD3dflqy.js";import{_ as R}from"./app-CKysWbKx.js";const T={class:"mx-auto max-w-4xl space-y-6"},$={class:"flex items-center justify-between"},F={key:0,class:"rounded-xl border border-amber-200 bg-amber-50 p-4 dark:border-amber-800 dark:bg-amber-950/30"},A={class:"text-sm font-medium text-amber-800 dark:text-amber-200"},L={key:0,class:"mt-1 text-sm text-red-600"},O={key:0,class:"mt-1 text-sm text-red-600"},H={class:"flex items-center justify-between"},X={key:0,class:"mt-1 text-sm text-red-600"},W={class:"mt-2 space-y-2"},G={class:"flex items-center gap-2"},I={class:"flex items-center gap-2"},J={key:0,class:"ml-6 mt-2"},K=["value"],P={class:"mt-3"},Q={key:0,class:"ml-2 text-sm text-zinc-600 dark:text-zinc-400"},Y={key:1,class:"mt-2 list-inside list-disc text-xs text-zinc-500 dark:text-zinc-400"},Z={class:"flex flex-wrap items-center gap-3 border-t border-zinc-200 pt-4 dark:border-zinc-700"},ae=Object.assign({layout:R},{__name:"Edit",props:{campaign:{type:Object,required:!0},email_configured:{type:Boolean,default:!1},products:{type:Array,default:()=>[]},default_body_html:{type:String,default:""}},setup(b){const m=b,a=B({name:m.campaign.name,subject:m.campaign.subject,body_html:m.campaign.body_html||"",filter_config:m.campaign.filter_config||{all_customers:!0,product_ids:[]}}),x=_(null),y=_([]),k=_(!1);function j(){a.body_html=m.default_body_html||""}async function U(){k.value=!0,x.value=null,y.value=[];try{const p=await E.post("/email-marketing/preview-recipients",{filter_config:a.filter_config},{headers:{"X-Requested-With":"XMLHttpRequest",Accept:"application/json"}});p&&p.data&&(x.value=p.data.count,y.value=p.data.sample||[])}catch{x.value=0}finally{k.value=!1}}function S(){m.email_configured&&confirm("Disparar esta campanha? Os e-mails serão enviados em lotes de 30 por minuto.")&&N.post(`/email-marketing/${m.campaign.id}/send`)}return(p,e)=>(l(),i("div",T,[t("div",$,[e[8]||(e[8]=t("h1",{class:"text-2xl font-bold text-zinc-900 dark:text-white"},"Editar campanha",-1)),c(s(z),{href:"/email-marketing",class:"text-sm text-zinc-600 hover:underline dark:text-zinc-400"},{default:n(()=>[...e[7]||(e[7]=[o("Voltar",-1)])]),_:1})]),b.email_configured?d("",!0):(l(),i("div",F,[t("p",A,[e[10]||(e[10]=o(" Configure o e-mail em ",-1)),c(s(z),{href:"/configuracoes",class:"underline"},{default:n(()=>[...e[9]||(e[9]=[o("Configurações > E-mail",-1)])]),_:1}),e[11]||(e[11]=o(" antes de disparar. ",-1))])])),t("form",{class:"panel-card-lg space-y-6",onSubmit:e[6]||(e[6]=h(r=>s(a).put(`/email-marketing/${b.campaign.id}`),["prevent"]))},[t("div",null,[e[12]||(e[12]=t("label",{class:"block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Nome da campanha",-1)),f(t("input",{"onUpdate:modelValue":e[0]||(e[0]=r=>s(a).name=r),type:"text",required:"",class:"mt-1 block w-full rounded-lg border border-zinc-300 dark:border-zinc-600 bg-white dark:bg-zinc-900 px-3 py-2"},null,512),[[v,s(a).name]]),s(a).errors.name?(l(),i("p",L,u(s(a).errors.name),1)):d("",!0)]),t("div",null,[e[13]||(e[13]=t("label",{class:"block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Assunto do e-mail",-1)),f(t("input",{"onUpdate:modelValue":e[1]||(e[1]=r=>s(a).subject=r),type:"text",required:"",class:"mt-1 block w-full rounded-lg border border-zinc-300 dark:border-zinc-600 bg-white dark:bg-zinc-900 px-3 py-2"},null,512),[[v,s(a).subject]]),s(a).errors.subject?(l(),i("p",O,u(s(a).errors.subject),1)):d("",!0)]),t("div",null,[t("div",H,[e[15]||(e[15]=t("label",{class:"block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Corpo do e-mail (HTML)",-1)),c(g,{type:"button",variant:"secondary",size:"sm",onClick:j},{default:n(()=>[...e[14]||(e[14]=[o("Usar template padrão",-1)])]),_:1})]),e[16]||(e[16]=t("p",{class:"mt-0.5 text-xs text-zinc-500 dark:text-zinc-400"},"Use {nome} e {email} para personalizar.",-1)),f(t("textarea",{"onUpdate:modelValue":e[2]||(e[2]=r=>s(a).body_html=r),rows:"14",required:"",class:"mt-1 block w-full rounded-lg border border-zinc-300 dark:border-zinc-600 bg-white dark:bg-zinc-900 px-3 py-2 font-mono text-sm"},null,512),[[v,s(a).body_html]]),s(a).errors.body_html?(l(),i("p",X,u(s(a).errors.body_html),1)):d("",!0)]),t("div",null,[e[19]||(e[19]=t("label",{class:"block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Destinatários",-1)),t("div",W,[t("label",G,[f(t("input",{"onUpdate:modelValue":e[3]||(e[3]=r=>s(a).filter_config.all_customers=r),type:"radio",value:!0,class:"h-4 w-4"},null,512),[[w,s(a).filter_config.all_customers]]),e[17]||(e[17]=t("span",{class:"text-sm"},"Todos os compradores",-1))]),t("label",I,[f(t("input",{"onUpdate:modelValue":e[4]||(e[4]=r=>s(a).filter_config.all_customers=r),type:"radio",value:!1,class:"h-4 w-4"},null,512),[[w,s(a).filter_config.all_customers]]),e[18]||(e[18]=t("span",{class:"text-sm"},"Compradores de produto(s) específico(s)",-1))]),s(a).filter_config.all_customers===!1?(l(),i("div",J,[f(t("select",{"onUpdate:modelValue":e[5]||(e[5]=r=>s(a).filter_config.product_ids=r),multiple:"",class:"block w-full max-w-md rounded-lg border border-zinc-300 dark:border-zinc-600 bg-white dark:bg-zinc-900 px-3 py-2 text-sm"},[(l(!0),i(C,null,V(b.products,r=>(l(),i("option",{key:r.id,value:r.id},u(r.name),9,K))),128))],512),[[D,s(a).filter_config.product_ids]])])):d("",!0)]),t("div",P,[c(g,{type:"button",variant:"secondary",size:"sm",disabled:k.value,onClick:U},{default:n(()=>[o(u(k.value?"Carregando...":"Ver destinatários"),1)]),_:1},8,["disabled"]),x.value!==null?(l(),i("span",Q,u(x.value)+" destinatário(s) ",1)):d("",!0),y.value.length?(l(),i("ul",Y,[(l(!0),i(C,null,V(y.value,(r,q)=>(l(),i("li",{key:q},u(r.email)+" ("+u(r.name)+")",1))),128))])):d("",!0)])]),t("div",Z,[c(g,{type:"submit",variant:"primary",disabled:s(a).processing},{default:n(()=>[...e[20]||(e[20]=[o("Salvar",-1)])]),_:1},8,["disabled"]),b.email_configured?(l(),M(g,{key:0,type:"button",variant:"primary",disabled:s(a).processing,onClick:S},{default:n(()=>[...e[21]||(e[21]=[o(" Disparar campanha ",-1)])]),_:1},8,["disabled"])):d("",!0),c(s(z),{href:"/email-marketing"},{default:n(()=>[c(g,{type:"button",variant:"outline"},{default:n(()=>[...e[22]||(e[22]=[o("Cancelar",-1)])]),_:1})]),_:1})])],32)]))}});export{ae as default}; +import{o as l,c as i,a as t,g as c,h as n,i as o,u as s,d,b as f,v,t as u,bE as w,bF as D,F as C,y as V,f as M,w as h,r as _}from"./runtime-dom.esm-bundler-OrSu0e66.js";import{u as B,l as z,_ as g,b as E,r as N}from"./Toggle-BD3dflqy.js";import{_ as R}from"./app-CT8pqccC.js";const T={class:"mx-auto max-w-4xl space-y-6"},$={class:"flex items-center justify-between"},F={key:0,class:"rounded-xl border border-amber-200 bg-amber-50 p-4 dark:border-amber-800 dark:bg-amber-950/30"},A={class:"text-sm font-medium text-amber-800 dark:text-amber-200"},L={key:0,class:"mt-1 text-sm text-red-600"},O={key:0,class:"mt-1 text-sm text-red-600"},H={class:"flex items-center justify-between"},X={key:0,class:"mt-1 text-sm text-red-600"},W={class:"mt-2 space-y-2"},G={class:"flex items-center gap-2"},I={class:"flex items-center gap-2"},J={key:0,class:"ml-6 mt-2"},K=["value"],P={class:"mt-3"},Q={key:0,class:"ml-2 text-sm text-zinc-600 dark:text-zinc-400"},Y={key:1,class:"mt-2 list-inside list-disc text-xs text-zinc-500 dark:text-zinc-400"},Z={class:"flex flex-wrap items-center gap-3 border-t border-zinc-200 pt-4 dark:border-zinc-700"},ae=Object.assign({layout:R},{__name:"Edit",props:{campaign:{type:Object,required:!0},email_configured:{type:Boolean,default:!1},products:{type:Array,default:()=>[]},default_body_html:{type:String,default:""}},setup(b){const m=b,a=B({name:m.campaign.name,subject:m.campaign.subject,body_html:m.campaign.body_html||"",filter_config:m.campaign.filter_config||{all_customers:!0,product_ids:[]}}),x=_(null),y=_([]),k=_(!1);function j(){a.body_html=m.default_body_html||""}async function U(){k.value=!0,x.value=null,y.value=[];try{const p=await E.post("/email-marketing/preview-recipients",{filter_config:a.filter_config},{headers:{"X-Requested-With":"XMLHttpRequest",Accept:"application/json"}});p&&p.data&&(x.value=p.data.count,y.value=p.data.sample||[])}catch{x.value=0}finally{k.value=!1}}function S(){m.email_configured&&confirm("Disparar esta campanha? Os e-mails serão enviados em lotes de 30 por minuto.")&&N.post(`/email-marketing/${m.campaign.id}/send`)}return(p,e)=>(l(),i("div",T,[t("div",$,[e[8]||(e[8]=t("h1",{class:"text-2xl font-bold text-zinc-900 dark:text-white"},"Editar campanha",-1)),c(s(z),{href:"/email-marketing",class:"text-sm text-zinc-600 hover:underline dark:text-zinc-400"},{default:n(()=>[...e[7]||(e[7]=[o("Voltar",-1)])]),_:1})]),b.email_configured?d("",!0):(l(),i("div",F,[t("p",A,[e[10]||(e[10]=o(" Configure o e-mail em ",-1)),c(s(z),{href:"/configuracoes",class:"underline"},{default:n(()=>[...e[9]||(e[9]=[o("Configurações > E-mail",-1)])]),_:1}),e[11]||(e[11]=o(" antes de disparar. ",-1))])])),t("form",{class:"panel-card-lg space-y-6",onSubmit:e[6]||(e[6]=h(r=>s(a).put(`/email-marketing/${b.campaign.id}`),["prevent"]))},[t("div",null,[e[12]||(e[12]=t("label",{class:"block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Nome da campanha",-1)),f(t("input",{"onUpdate:modelValue":e[0]||(e[0]=r=>s(a).name=r),type:"text",required:"",class:"mt-1 block w-full rounded-lg border border-zinc-300 dark:border-zinc-600 bg-white dark:bg-zinc-900 px-3 py-2"},null,512),[[v,s(a).name]]),s(a).errors.name?(l(),i("p",L,u(s(a).errors.name),1)):d("",!0)]),t("div",null,[e[13]||(e[13]=t("label",{class:"block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Assunto do e-mail",-1)),f(t("input",{"onUpdate:modelValue":e[1]||(e[1]=r=>s(a).subject=r),type:"text",required:"",class:"mt-1 block w-full rounded-lg border border-zinc-300 dark:border-zinc-600 bg-white dark:bg-zinc-900 px-3 py-2"},null,512),[[v,s(a).subject]]),s(a).errors.subject?(l(),i("p",O,u(s(a).errors.subject),1)):d("",!0)]),t("div",null,[t("div",H,[e[15]||(e[15]=t("label",{class:"block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Corpo do e-mail (HTML)",-1)),c(g,{type:"button",variant:"secondary",size:"sm",onClick:j},{default:n(()=>[...e[14]||(e[14]=[o("Usar template padrão",-1)])]),_:1})]),e[16]||(e[16]=t("p",{class:"mt-0.5 text-xs text-zinc-500 dark:text-zinc-400"},"Use {nome} e {email} para personalizar.",-1)),f(t("textarea",{"onUpdate:modelValue":e[2]||(e[2]=r=>s(a).body_html=r),rows:"14",required:"",class:"mt-1 block w-full rounded-lg border border-zinc-300 dark:border-zinc-600 bg-white dark:bg-zinc-900 px-3 py-2 font-mono text-sm"},null,512),[[v,s(a).body_html]]),s(a).errors.body_html?(l(),i("p",X,u(s(a).errors.body_html),1)):d("",!0)]),t("div",null,[e[19]||(e[19]=t("label",{class:"block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Destinatários",-1)),t("div",W,[t("label",G,[f(t("input",{"onUpdate:modelValue":e[3]||(e[3]=r=>s(a).filter_config.all_customers=r),type:"radio",value:!0,class:"h-4 w-4"},null,512),[[w,s(a).filter_config.all_customers]]),e[17]||(e[17]=t("span",{class:"text-sm"},"Todos os compradores",-1))]),t("label",I,[f(t("input",{"onUpdate:modelValue":e[4]||(e[4]=r=>s(a).filter_config.all_customers=r),type:"radio",value:!1,class:"h-4 w-4"},null,512),[[w,s(a).filter_config.all_customers]]),e[18]||(e[18]=t("span",{class:"text-sm"},"Compradores de produto(s) específico(s)",-1))]),s(a).filter_config.all_customers===!1?(l(),i("div",J,[f(t("select",{"onUpdate:modelValue":e[5]||(e[5]=r=>s(a).filter_config.product_ids=r),multiple:"",class:"block w-full max-w-md rounded-lg border border-zinc-300 dark:border-zinc-600 bg-white dark:bg-zinc-900 px-3 py-2 text-sm"},[(l(!0),i(C,null,V(b.products,r=>(l(),i("option",{key:r.id,value:r.id},u(r.name),9,K))),128))],512),[[D,s(a).filter_config.product_ids]])])):d("",!0)]),t("div",P,[c(g,{type:"button",variant:"secondary",size:"sm",disabled:k.value,onClick:U},{default:n(()=>[o(u(k.value?"Carregando...":"Ver destinatários"),1)]),_:1},8,["disabled"]),x.value!==null?(l(),i("span",Q,u(x.value)+" destinatário(s) ",1)):d("",!0),y.value.length?(l(),i("ul",Y,[(l(!0),i(C,null,V(y.value,(r,q)=>(l(),i("li",{key:q},u(r.email)+" ("+u(r.name)+")",1))),128))])):d("",!0)])]),t("div",Z,[c(g,{type:"submit",variant:"primary",disabled:s(a).processing},{default:n(()=>[...e[20]||(e[20]=[o("Salvar",-1)])]),_:1},8,["disabled"]),b.email_configured?(l(),M(g,{key:0,type:"button",variant:"primary",disabled:s(a).processing,onClick:S},{default:n(()=>[...e[21]||(e[21]=[o(" Disparar campanha ",-1)])]),_:1},8,["disabled"])):d("",!0),c(s(z),{href:"/email-marketing"},{default:n(()=>[c(g,{type:"button",variant:"outline"},{default:n(()=>[...e[22]||(e[22]=[o("Cancelar",-1)])]),_:1})]),_:1})])],32)]))}});export{ae as default}; diff --git a/public/build/assets/Edit-C121uWYG.js b/public/build/assets/Edit-Dwg8f1WB.js similarity index 99% rename from public/build/assets/Edit-C121uWYG.js rename to public/build/assets/Edit-Dwg8f1WB.js index 381b5259..092cab40 100644 --- a/public/build/assets/Edit-C121uWYG.js +++ b/public/build/assets/Edit-Dwg8f1WB.js @@ -1 +1 @@ -import{r as A,A as W,o as a,c as d,a as t,t as k,g as u,h as y,u as s,i as r,w as le,b as x,v as f,d as g,F as U,y as j,bF as re,f as M,bD as R,bG as de,T as ce}from"./runtime-dom.esm-bundler-OrSu0e66.js";import{u as ue,_ as v,X as pe,r as xe}from"./Toggle-BD3dflqy.js";import{_ as me,C as _e}from"./app-CKysWbKx.js";import{_ as be}from"./GatewayRedundancySidebar-DyzB1XM0.js";import{R as ye}from"./refresh-cw-hI9usXzv.js";import{I as ge}from"./image-plus-gfW5Gl1m.js";import{T as ve}from"./trash-2-Bxek5XZ9.js";import{P as ke}from"./palette-Bdslkkzt.js";import{S as Y}from"./settings-2-DcGSmOYd.js";import{K as fe}from"./key-round-CTi61UPQ.js";import{C as ze}from"./copy-CAHk-g6g.js";import"./chevron-up-LCq4Peo3.js";import"./chevron-down-Cr9wcM6o.js";import"./plus-C8Znz4zD.js";const we={class:"space-y-6"},he={class:"flex flex-col gap-4 sm:flex-row sm:items-center sm:justify-between"},Ce={class:"mt-1 text-sm text-zinc-500 dark:text-zinc-400"},Ae={key:0,class:"mt-1 text-sm text-red-600"},Se={class:"rounded-xl border border-zinc-200 dark:border-zinc-700 bg-zinc-50/50 dark:bg-zinc-800/50 p-4"},Ue={class:"flex items-center gap-2 text-sm font-semibold text-zinc-900 dark:text-white"},Ve={class:"mt-4 flex flex-wrap items-center gap-4"},je={key:0,class:"flex items-center gap-3"},Ee=["src"],Pe={class:"flex items-center gap-2"},Re={key:0,class:"mt-2 text-sm text-red-600"},Xe={class:"rounded-xl border border-zinc-200 dark:border-zinc-700 bg-zinc-50/50 dark:bg-zinc-800/50 p-4"},Ie={class:"flex items-center gap-2 text-sm font-semibold text-zinc-900 dark:text-white"},Ne={class:"mt-4 flex flex-wrap items-center gap-4"},$e=["value","title"],Te={key:0,class:"mt-2 text-sm text-red-600"},Me={class:"rounded-xl border border-zinc-200 dark:border-zinc-700 bg-zinc-50/50 dark:bg-zinc-800/50 p-4"},De={class:"flex items-center gap-2 text-sm font-semibold text-zinc-900 dark:text-white"},Ge={class:"mt-4 space-y-3"},Le={class:"w-24 text-sm font-medium text-zinc-700 dark:text-zinc-300"},Fe=["onUpdate:modelValue"],Oe=["value"],qe={class:"rounded-xl border border-zinc-200 dark:border-zinc-700 bg-zinc-50/50 dark:bg-zinc-800/50 p-4 space-y-4"},Ke={class:"flex items-center gap-2 text-sm font-semibold text-zinc-900 dark:text-white"},Be={class:"space-y-4"},He={class:"panel-card-sm space-y-3 dark:bg-zinc-900"},Je={class:"flex items-center justify-between gap-3"},We={class:"flex items-center gap-2 text-sm text-zinc-700 dark:text-zinc-300"},Ye={key:0,class:"space-y-3"},Qe={class:"flex justify-end"},Ze={key:0,class:"text-sm text-zinc-500 dark:text-zinc-400"},et=["onUpdate:modelValue"],tt=["onUpdate:modelValue"],ot={class:"sm:col-span-2 flex justify-end"},st={class:"panel-card-sm space-y-3 dark:bg-zinc-900"},nt={class:"flex items-center justify-between gap-3"},it={class:"flex items-center gap-2 text-sm text-zinc-700 dark:text-zinc-300"},at={key:0,class:"space-y-3"},lt={class:"flex justify-end"},rt={key:0,class:"text-sm text-zinc-500 dark:text-zinc-400"},dt=["onUpdate:modelValue"],ct=["onUpdate:modelValue"],ut={class:"sm:col-span-2 flex justify-end"},pt={class:"panel-card-sm space-y-3 dark:bg-zinc-900"},xt={class:"flex items-center justify-between gap-3"},mt={class:"flex items-center gap-2 text-sm text-zinc-700 dark:text-zinc-300"},_t={key:0,class:"space-y-3"},bt={class:"flex justify-end"},yt={key:0,class:"text-sm text-zinc-500 dark:text-zinc-400"},gt=["onUpdate:modelValue"],vt=["onUpdate:modelValue"],kt={class:"sm:col-span-2 flex justify-end"},ft={class:"panel-card-sm space-y-3 dark:bg-zinc-900"},zt={class:"flex items-center justify-between gap-3"},wt={class:"flex items-center gap-2 text-sm text-zinc-700 dark:text-zinc-300"},ht={key:0,class:"space-y-3"},Ct={class:"flex justify-end"},At={key:0,class:"text-sm text-zinc-500 dark:text-zinc-400"},St=["onUpdate:modelValue"],Ut={class:"sm:col-span-2 flex justify-end"},Vt={class:"panel-card-sm space-y-3 dark:bg-zinc-900"},jt={class:"flex items-center justify-between gap-3"},Et={key:0,class:"text-sm text-zinc-500 dark:text-zinc-400"},Pt={class:"grid grid-cols-1 gap-3 sm:grid-cols-2"},Rt=["onUpdate:modelValue"],Xt={class:"sm:col-span-2"},It=["onUpdate:modelValue"],Nt={class:"sm:col-span-2 flex justify-end"},$t={key:0,class:"mt-1 text-sm text-red-600"},Tt={key:0,class:"mt-1 text-sm text-red-600"},Mt={key:0,class:"mt-1 text-sm text-red-600"},Dt={key:0,class:"mt-1 text-sm text-red-600"},Gt={key:0,class:"mt-1 text-sm text-red-600"},Lt={class:"flex items-center gap-2"},Ft={class:"flex gap-2"},Ot={class:"fixed inset-0 z-[100000] flex items-center justify-center p-4","aria-modal":"true",role:"dialog"},qt={class:"relative max-w-lg w-full rounded-2xl border border-zinc-200 bg-white p-6 shadow-xl dark:border-zinc-700 dark:bg-zinc-900"},Kt={class:"flex items-center justify-between gap-2"},Bt={class:"flex items-center gap-2 text-lg font-semibold text-zinc-900 dark:text-white"},Ht={class:"mt-4 panel-card flex items-center gap-2 p-3"},Jt={class:"min-w-0 flex-1 truncate text-sm font-mono text-zinc-800 dark:text-zinc-200"},uo=Object.assign({layout:me},{__name:"Edit",props:{application:{type:Object,required:!0},gateways_by_method:{type:Object,default:()=>({})},api_key_reveal:{type:String,default:null},webhook_secret_mask:{type:String,default:""}},setup(X){const p=X;function w(){try{return crypto?.randomUUID?.()||Math.random().toString(36).slice(2)}catch{return Math.random().toString(36).slice(2)}}const I={fire_purchase_on_pix:!0,fire_purchase_on_boleto:!0,disable_order_bump_events:!1};function L(){return{id:w(),pixel_id:"",access_token:"",...I}}function F(){return{id:w(),pixel_id:"",access_token:"",...I}}function O(){return{id:w(),conversion_id:"",conversion_label:"",...I}}function q(){return{id:w(),measurement_id:"",...I}}const K={meta:{enabled:!1,entries:[]},tiktok:{enabled:!1,entries:[]},google_ads:{enabled:!1,entries:[]},google_analytics:{enabled:!1,entries:[]},custom_script:[]};function Q(i){if(!i||typeof i!="object")return JSON.parse(JSON.stringify(K));const e=JSON.parse(JSON.stringify(K));function o(l,h){const C=!!l?.enabled;if(Array.isArray(l?.entries))return{enabled:C,entries:l.entries.filter(b=>b&&typeof b=="object").map(b=>({...h(),...b,id:b.id||w()}))};if(l?.pixel_id!=null||l?.access_token!=null){const b=String(l.pixel_id??"").trim(),J=String(l.access_token??"").trim();if(b||J)return{enabled:C,entries:[{id:w(),pixel_id:b,access_token:J,fire_purchase_on_pix:l.fire_purchase_on_pix!==!1,fire_purchase_on_boleto:l.fire_purchase_on_boleto!==!1,disable_order_bump_events:!!l.disable_order_bump_events}]}}return{enabled:C,entries:[]}}function _(l){const h=!!l?.enabled;if(Array.isArray(l?.entries))return{enabled:h,entries:l.entries.filter(b=>b&&typeof b=="object").map(b=>({...O(),...b,id:b.id||w()}))};const C=String(l?.conversion_id??"").trim();return C?{enabled:h,entries:[{id:w(),conversion_id:C,conversion_label:String(l.conversion_label??"").trim(),fire_purchase_on_pix:l.fire_purchase_on_pix!==!1,fire_purchase_on_boleto:l.fire_purchase_on_boleto!==!1,disable_order_bump_events:!!l.disable_order_bump_events}]}:{enabled:h,entries:[]}}function c(l){const h=!!l?.enabled;if(Array.isArray(l?.entries))return{enabled:h,entries:l.entries.filter(b=>b&&typeof b=="object").map(b=>({...q(),...b,id:b.id||w()}))};const C=String(l?.measurement_id??"").trim();return C?{enabled:h,entries:[{id:w(),measurement_id:C,fire_purchase_on_pix:l.fire_purchase_on_pix!==!1,fire_purchase_on_boleto:l.fire_purchase_on_boleto!==!1,disable_order_bump_events:!!l.disable_order_bump_events}]}:{enabled:h,entries:[]}}return i.meta&&typeof i.meta=="object"&&(e.meta=o(i.meta,L)),i.tiktok&&typeof i.tiktok=="object"&&(e.tiktok=o(i.tiktok,F)),i.google_ads&&typeof i.google_ads=="object"&&(e.google_ads=_(i.google_ads)),i.google_analytics&&typeof i.google_analytics=="object"&&(e.google_analytics=c(i.google_analytics)),e.custom_script=Array.isArray(i.custom_script)?i.custom_script.filter(l=>l&&typeof l=="object").map(l=>({id:l.id||w(),name:l.name||"",script:l.script||""})):[],e}const m=p.application.payment_gateways||{},n=ue({name:p.application.name,conversion_pixels:Q(p.application.conversion_pixels),payment_gateways:{pix:m.pix??"",pix_redundancy:Array.isArray(m.pix_redundancy)?m.pix_redundancy:[],card:m.card??"",card_redundancy:Array.isArray(m.card_redundancy)?m.card_redundancy:[],boleto:m.boleto??"",boleto_redundancy:Array.isArray(m.boleto_redundancy)?m.boleto_redundancy:[],pix_auto:m.pix_auto??"",pix_auto_redundancy:Array.isArray(m.pix_auto_redundancy)?m.pix_auto_redundancy:[],apple_pay:m.apple_pay??"",apple_pay_redundancy:Array.isArray(m.apple_pay_redundancy)?m.apple_pay_redundancy:[],google_pay:m.google_pay??"",google_pay_redundancy:Array.isArray(m.google_pay_redundancy)?m.google_pay_redundancy:[],crypto:m.crypto??"",crypto_redundancy:Array.isArray(m.crypto_redundancy)?m.crypto_redundancy:[]},webhook_url:p.application.webhook_url??"",default_return_url:p.application.default_return_url??"",webhook_secret:p.application.webhook_secret??"",allowed_ips:p.application.allowed_ips??"",is_active:p.application.is_active!==!1,checkout_sidebar_bg:p.application.checkout_sidebar_bg??""}),D=A(!!p.api_key_reveal),N=A(p.api_key_reveal??""),E=A(!1),V=A(p.application.logo_url??null),P=A(!1),S=A(null),$=A(null);W(()=>p.application.logo_url,i=>{V.value=i??null},{immediate:!0});function B(){return document.querySelector('meta[name="csrf-token"]')?.getAttribute("content")??""}async function Z(i){const e=i.target?.files?.[0];if(e){S.value=null,P.value=!0;try{const o=new FormData;o.append("image",e);const _=await fetch(`/aplicacoes-api/${p.application.id}/logo`,{method:"POST",body:o,headers:{"X-Requested-With":"XMLHttpRequest",Accept:"application/json","X-CSRF-TOKEN":B()},credentials:"same-origin"}),c=await _.json().catch(()=>({}));if(!_.ok){S.value=c.message||"Falha ao enviar a logo.";return}V.value=c.url??null}catch(o){S.value=o?.message||"Erro ao enviar a logo."}finally{P.value=!1,$.value&&($.value.value="")}}}async function ee(){if(V.value){S.value=null,P.value=!0;try{const i=await fetch(`/aplicacoes-api/${p.application.id}/logo`,{method:"DELETE",headers:{"X-Requested-With":"XMLHttpRequest",Accept:"application/json","X-CSRF-TOKEN":B()},credentials:"same-origin"});if(!i.ok){const e=await i.json().catch(()=>({}));S.value=e.message||"Falha ao remover a logo.";return}V.value=null}catch(i){S.value=i?.message||"Erro ao remover a logo."}finally{P.value=!1}}}W(()=>p.api_key_reveal,i=>{i&&(N.value=i,D.value=!0,E.value=!1)},{immediate:!1});function te(i){const e=p.gateways_by_method?.[i]??[];return[{value:"",label:"Nenhum"},...e.map(o=>({value:o.slug,label:o.name}))]}const H={pix:"PIX",card:"Cartão",boleto:"Boleto",pix_auto:"PIX automático",apple_pay:"Apple Pay",google_pay:"Google Pay",crypto:"Criptomoeda"},T=A(!1),z=A(null);function oe(i){z.value=i,T.value=!0}function se(i){return i!==""&&i!=null}function ne(){const i=n.webhook_secret;p.webhook_secret_mask&&i===p.webhook_secret_mask&&(n.webhook_secret=""),n.put(`/aplicacoes-api/${p.application.id}`,{preserveScroll:!0,onError:()=>{p.webhook_secret_mask&&i===p.webhook_secret_mask&&(n.webhook_secret=p.webhook_secret_mask)},onSuccess:()=>{p.webhook_secret_mask&&i&&i!==""&&(n.webhook_secret=p.webhook_secret_mask)}})}async function ie(){const i=N.value;if(i)try{if(navigator.clipboard&&window.isSecureContext)await navigator.clipboard.writeText(i);else{const e=document.createElement("textarea");e.value=i,e.style.position="fixed",e.style.left="-9999px",e.style.top="0",document.body.appendChild(e),e.focus(),e.select(),document.execCommand("copy"),document.body.removeChild(e)}E.value=!0,setTimeout(()=>{E.value=!1},2e3)}catch{E.value=!1}}function G(){D.value=!1}function ae(){window.confirm("Gerar uma nova API key? A key atual deixará de funcionar imediatamente.")&&xe.post(`/aplicacoes-api/${p.application.id}/regenerate-key`,{},{preserveScroll:!0})}return(i,e)=>(a(),d(U,null,[t("div",we,[t("div",he,[t("div",null,[e[22]||(e[22]=t("h1",{class:"text-2xl font-bold tracking-tight text-zinc-900 dark:text-white"},"Editar aplicação",-1)),t("p",Ce,k(X.application.name)+" ("+k(X.application.slug)+")",1)]),u(v,{variant:"outline",size:"sm",class:"inline-flex items-center gap-2",onClick:ae},{default:y(()=>[u(s(ye),{class:"h-4 w-4"}),e[23]||(e[23]=r(" Gerar nova API key ",-1))]),_:1})]),t("form",{class:"max-w-2xl space-y-6",onSubmit:le(ne,["prevent"])},[t("div",null,[e[24]||(e[24]=t("label",{class:"block text-sm font-medium text-zinc-700 dark:text-zinc-300"},"Nome",-1)),x(t("input",{"onUpdate:modelValue":e[0]||(e[0]=o=>s(n).name=o),type:"text",required:"",class:"mt-1 block w-full rounded-lg border border-zinc-300 dark:border-zinc-600 bg-white dark:bg-zinc-900 px-3 py-2"},null,512),[[f,s(n).name]]),s(n).errors.name?(a(),d("p",Ae,k(s(n).errors.name),1)):g("",!0)]),t("div",Se,[t("h2",Ue,[u(s(ge),{class:"h-4 w-4"}),e[25]||(e[25]=r(" Logo do checkout ",-1))]),e[27]||(e[27]=t("p",{class:"mt-1 text-xs text-zinc-500 dark:text-zinc-400"},"Exibida no Checkout Pro (página de pagamento hospedada).",-1)),t("div",Ve,[V.value?(a(),d("div",je,[t("img",{src:V.value,alt:"Logo",class:"h-14 w-auto max-w-[180px] rounded-lg border border-zinc-200 object-contain dark:border-zinc-600"},null,8,Ee),u(v,{type:"button",variant:"outline",size:"sm",class:"text-red-600 hover:bg-red-50 dark:hover:bg-red-900/20",disabled:P.value,onClick:ee},{default:y(()=>[u(s(ve),{class:"h-4 w-4"}),e[26]||(e[26]=r(" Remover logo ",-1))]),_:1},8,["disabled"])])):g("",!0),t("div",Pe,[t("input",{ref_key:"logoInputRef",ref:$,type:"file",accept:"image/*",class:"hidden",onChange:Z},null,544),u(v,{type:"button",variant:"outline",size:"sm",disabled:P.value,onClick:e[1]||(e[1]=o=>$.value?.click())},{default:y(()=>[r(k(V.value?"Trocar logo":"Enviar logo"),1)]),_:1},8,["disabled"])])]),S.value?(a(),d("p",Re,k(S.value),1)):g("",!0)]),t("div",Xe,[t("h2",Ie,[u(s(ke),{class:"h-4 w-4"}),e[28]||(e[28]=r(" Cor de fundo do checkout ",-1))]),e[30]||(e[30]=t("p",{class:"mt-1 text-xs text-zinc-500 dark:text-zinc-400"},"Cor da coluna esquerda (resumo) no Checkout Pro.",-1)),t("div",Ne,[t("input",{value:s(n).checkout_sidebar_bg||"#18181b",type:"color",class:"h-10 w-14 cursor-pointer rounded border border-zinc-300 bg-white p-1 dark:border-zinc-600",title:s(n).checkout_sidebar_bg||"#18181b",onInput:e[2]||(e[2]=o=>s(n).checkout_sidebar_bg=o.target.value)},null,40,$e),x(t("input",{"onUpdate:modelValue":e[3]||(e[3]=o=>s(n).checkout_sidebar_bg=o),type:"text",class:"rounded-lg border border-zinc-300 dark:border-zinc-600 bg-white dark:bg-zinc-900 px-3 py-2 font-mono text-sm w-28",placeholder:"#18181b",maxlength:"7"},null,512),[[f,s(n).checkout_sidebar_bg]]),u(v,{type:"button",variant:"outline",size:"sm",onClick:e[4]||(e[4]=o=>s(n).checkout_sidebar_bg="")},{default:y(()=>[...e[29]||(e[29]=[r(" Restaurar padrão ",-1)])]),_:1})]),s(n).errors.checkout_sidebar_bg?(a(),d("p",Te,k(s(n).errors.checkout_sidebar_bg),1)):g("",!0)]),t("div",Me,[t("h2",De,[u(s(Y),{class:"h-4 w-4"}),e[31]||(e[31]=r(" Gateways por método ",-1))]),t("div",Ge,[(a(),d(U,null,j(["pix","card","boleto","apple_pay","google_pay","pix_auto","crypto"],o=>t("div",{key:o,class:"flex flex-wrap items-center gap-2"},[t("span",Le,k(H[o]||o),1),x(t("select",{"onUpdate:modelValue":_=>s(n).payment_gateways[o]=_,class:"rounded-lg border border-zinc-300 dark:border-zinc-600 bg-white dark:bg-zinc-900 px-3 py-2 text-sm min-w-[160px]"},[(a(!0),d(U,null,j(te(o),_=>(a(),d("option",{key:_.value,value:_.value},k(_.label),9,Oe))),128))],8,Fe),[[re,s(n).payment_gateways[o]]]),se(s(n).payment_gateways[o])?(a(),M(v,{key:0,type:"button",variant:"outline",size:"sm",onClick:_=>oe(o)},{default:y(()=>[...e[32]||(e[32]=[r(" Redundância ",-1)])]),_:1},8,["onClick"])):g("",!0)])),64))])]),t("div",qe,[t("h2",Ke,[u(s(Y),{class:"h-4 w-4"}),e[33]||(e[33]=r(" Pixels de conversão (Checkout Pro) ",-1))]),e[62]||(e[62]=t("p",{class:"text-xs text-zinc-500 dark:text-zinc-400"},[r(" Esses pixels serão usados no checkout hospedado ("),t("span",{class:"font-mono"},"/api-checkout"),r(") desta aplicação. ")],-1)),t("div",Be,[t("div",He,[t("div",Je,[e[35]||(e[35]=t("div",null,[t("p",{class:"text-sm font-semibold text-zinc-900 dark:text-white"},"Meta Pixel"),t("p",{class:"text-xs text-zinc-500 dark:text-zinc-400"},"Dispara PageView e Purchase quando configurado.")],-1)),t("label",We,[x(t("input",{"onUpdate:modelValue":e[5]||(e[5]=o=>s(n).conversion_pixels.meta.enabled=o),type:"checkbox",class:"h-4 w-4 rounded border-zinc-300"},null,512),[[R,s(n).conversion_pixels.meta.enabled]]),e[34]||(e[34]=r(" Ativo ",-1))])]),s(n).conversion_pixels.meta.enabled?(a(),d("div",Ye,[t("div",Qe,[u(v,{type:"button",variant:"outline",size:"sm",onClick:e[6]||(e[6]=o=>s(n).conversion_pixels.meta.entries.push(L()))},{default:y(()=>[...e[36]||(e[36]=[r("Adicionar pixel",-1)])]),_:1})]),s(n).conversion_pixels.meta.entries.length===0?(a(),d("div",Ze,"Nenhum pixel adicionado.")):g("",!0),(a(!0),d(U,null,j(s(n).conversion_pixels.meta.entries,(o,_)=>(a(),d("div",{key:o.id,class:"grid grid-cols-1 gap-3 sm:grid-cols-2"},[t("div",null,[e[37]||(e[37]=t("label",{class:"block text-xs font-medium text-zinc-700 dark:text-zinc-300"},"Pixel ID",-1)),x(t("input",{"onUpdate:modelValue":c=>o.pixel_id=c,type:"text",class:"mt-1 block w-full rounded-lg border border-zinc-300 dark:border-zinc-600 bg-white dark:bg-zinc-900 px-3 py-2 text-sm",placeholder:"1234567890"},null,8,et),[[f,o.pixel_id]])]),t("div",null,[e[38]||(e[38]=t("label",{class:"block text-xs font-medium text-zinc-700 dark:text-zinc-300"},"Access token (opcional)",-1)),x(t("input",{"onUpdate:modelValue":c=>o.access_token=c,type:"text",class:"mt-1 block w-full rounded-lg border border-zinc-300 dark:border-zinc-600 bg-white dark:bg-zinc-900 px-3 py-2 text-sm",placeholder:"EAAB..."},null,8,tt),[[f,o.access_token]])]),t("div",ot,[u(v,{type:"button",variant:"outline",size:"sm",class:"text-red-600",onClick:c=>s(n).conversion_pixels.meta.entries.splice(_,1)},{default:y(()=>[...e[39]||(e[39]=[r("Remover",-1)])]),_:1},8,["onClick"])])]))),128))])):g("",!0)]),t("div",st,[t("div",nt,[e[41]||(e[41]=t("div",null,[t("p",{class:"text-sm font-semibold text-zinc-900 dark:text-white"},"TikTok Pixel"),t("p",{class:"text-xs text-zinc-500 dark:text-zinc-400"},"Dispara PageView e Purchase quando configurado.")],-1)),t("label",it,[x(t("input",{"onUpdate:modelValue":e[7]||(e[7]=o=>s(n).conversion_pixels.tiktok.enabled=o),type:"checkbox",class:"h-4 w-4 rounded border-zinc-300"},null,512),[[R,s(n).conversion_pixels.tiktok.enabled]]),e[40]||(e[40]=r(" Ativo ",-1))])]),s(n).conversion_pixels.tiktok.enabled?(a(),d("div",at,[t("div",lt,[u(v,{type:"button",variant:"outline",size:"sm",onClick:e[8]||(e[8]=o=>s(n).conversion_pixels.tiktok.entries.push(F()))},{default:y(()=>[...e[42]||(e[42]=[r("Adicionar pixel",-1)])]),_:1})]),s(n).conversion_pixels.tiktok.entries.length===0?(a(),d("div",rt,"Nenhum pixel adicionado.")):g("",!0),(a(!0),d(U,null,j(s(n).conversion_pixels.tiktok.entries,(o,_)=>(a(),d("div",{key:o.id,class:"grid grid-cols-1 gap-3 sm:grid-cols-2"},[t("div",null,[e[43]||(e[43]=t("label",{class:"block text-xs font-medium text-zinc-700 dark:text-zinc-300"},"Pixel ID",-1)),x(t("input",{"onUpdate:modelValue":c=>o.pixel_id=c,type:"text",class:"mt-1 block w-full rounded-lg border border-zinc-300 dark:border-zinc-600 bg-white dark:bg-zinc-900 px-3 py-2 text-sm",placeholder:"Cxxxxxxxx"},null,8,dt),[[f,o.pixel_id]])]),t("div",null,[e[44]||(e[44]=t("label",{class:"block text-xs font-medium text-zinc-700 dark:text-zinc-300"},"Access token (opcional)",-1)),x(t("input",{"onUpdate:modelValue":c=>o.access_token=c,type:"text",class:"mt-1 block w-full rounded-lg border border-zinc-300 dark:border-zinc-600 bg-white dark:bg-zinc-900 px-3 py-2 text-sm",placeholder:"xxxx"},null,8,ct),[[f,o.access_token]])]),t("div",ut,[u(v,{type:"button",variant:"outline",size:"sm",class:"text-red-600",onClick:c=>s(n).conversion_pixels.tiktok.entries.splice(_,1)},{default:y(()=>[...e[45]||(e[45]=[r("Remover",-1)])]),_:1},8,["onClick"])])]))),128))])):g("",!0)]),t("div",pt,[t("div",xt,[e[47]||(e[47]=t("div",null,[t("p",{class:"text-sm font-semibold text-zinc-900 dark:text-white"},"Google Ads"),t("p",{class:"text-xs text-zinc-500 dark:text-zinc-400"},"Usa gtag (conversion_id / conversion_label).")],-1)),t("label",mt,[x(t("input",{"onUpdate:modelValue":e[9]||(e[9]=o=>s(n).conversion_pixels.google_ads.enabled=o),type:"checkbox",class:"h-4 w-4 rounded border-zinc-300"},null,512),[[R,s(n).conversion_pixels.google_ads.enabled]]),e[46]||(e[46]=r(" Ativo ",-1))])]),s(n).conversion_pixels.google_ads.enabled?(a(),d("div",_t,[t("div",bt,[u(v,{type:"button",variant:"outline",size:"sm",onClick:e[10]||(e[10]=o=>s(n).conversion_pixels.google_ads.entries.push(O()))},{default:y(()=>[...e[48]||(e[48]=[r("Adicionar conversão",-1)])]),_:1})]),s(n).conversion_pixels.google_ads.entries.length===0?(a(),d("div",yt,"Nenhuma conversão adicionada.")):g("",!0),(a(!0),d(U,null,j(s(n).conversion_pixels.google_ads.entries,(o,_)=>(a(),d("div",{key:o.id,class:"grid grid-cols-1 gap-3 sm:grid-cols-2"},[t("div",null,[e[49]||(e[49]=t("label",{class:"block text-xs font-medium text-zinc-700 dark:text-zinc-300"},"Conversion ID",-1)),x(t("input",{"onUpdate:modelValue":c=>o.conversion_id=c,type:"text",class:"mt-1 block w-full rounded-lg border border-zinc-300 dark:border-zinc-600 bg-white dark:bg-zinc-900 px-3 py-2 text-sm",placeholder:"AW-XXXX"},null,8,gt),[[f,o.conversion_id]])]),t("div",null,[e[50]||(e[50]=t("label",{class:"block text-xs font-medium text-zinc-700 dark:text-zinc-300"},"Conversion label",-1)),x(t("input",{"onUpdate:modelValue":c=>o.conversion_label=c,type:"text",class:"mt-1 block w-full rounded-lg border border-zinc-300 dark:border-zinc-600 bg-white dark:bg-zinc-900 px-3 py-2 text-sm",placeholder:"abcdEFGH"},null,8,vt),[[f,o.conversion_label]])]),t("div",kt,[u(v,{type:"button",variant:"outline",size:"sm",class:"text-red-600",onClick:c=>s(n).conversion_pixels.google_ads.entries.splice(_,1)},{default:y(()=>[...e[51]||(e[51]=[r("Remover",-1)])]),_:1},8,["onClick"])])]))),128))])):g("",!0)]),t("div",ft,[t("div",zt,[e[53]||(e[53]=t("div",null,[t("p",{class:"text-sm font-semibold text-zinc-900 dark:text-white"},"Google Analytics (GA4)"),t("p",{class:"text-xs text-zinc-500 dark:text-zinc-400"},"Measurement IDs (G-XXXX).")],-1)),t("label",wt,[x(t("input",{"onUpdate:modelValue":e[11]||(e[11]=o=>s(n).conversion_pixels.google_analytics.enabled=o),type:"checkbox",class:"h-4 w-4 rounded border-zinc-300"},null,512),[[R,s(n).conversion_pixels.google_analytics.enabled]]),e[52]||(e[52]=r(" Ativo ",-1))])]),s(n).conversion_pixels.google_analytics.enabled?(a(),d("div",ht,[t("div",Ct,[u(v,{type:"button",variant:"outline",size:"sm",onClick:e[12]||(e[12]=o=>s(n).conversion_pixels.google_analytics.entries.push(q()))},{default:y(()=>[...e[54]||(e[54]=[r("Adicionar",-1)])]),_:1})]),s(n).conversion_pixels.google_analytics.entries.length===0?(a(),d("div",At,"Nenhuma propriedade adicionada.")):g("",!0),(a(!0),d(U,null,j(s(n).conversion_pixels.google_analytics.entries,(o,_)=>(a(),d("div",{key:o.id,class:"grid grid-cols-1 gap-3 sm:grid-cols-2"},[t("div",null,[e[55]||(e[55]=t("label",{class:"block text-xs font-medium text-zinc-700 dark:text-zinc-300"},"Measurement ID",-1)),x(t("input",{"onUpdate:modelValue":c=>o.measurement_id=c,type:"text",class:"mt-1 block w-full rounded-lg border border-zinc-300 dark:border-zinc-600 bg-white dark:bg-zinc-900 px-3 py-2 text-sm",placeholder:"G-XXXX"},null,8,St),[[f,o.measurement_id]])]),t("div",Ut,[u(v,{type:"button",variant:"outline",size:"sm",class:"text-red-600",onClick:c=>s(n).conversion_pixels.google_analytics.entries.splice(_,1)},{default:y(()=>[...e[56]||(e[56]=[r("Remover",-1)])]),_:1},8,["onClick"])])]))),128))])):g("",!0)]),t("div",Vt,[t("div",jt,[e[58]||(e[58]=t("div",null,[t("p",{class:"text-sm font-semibold text-zinc-900 dark:text-white"},"Script personalizado"),t("p",{class:"text-xs text-zinc-500 dark:text-zinc-400"},[r("Inserido no "),t("span",{class:"font-mono"},""),r(" do checkout.")])],-1)),u(v,{type:"button",variant:"outline",size:"sm",onClick:e[13]||(e[13]=o=>s(n).conversion_pixels.custom_script.push({id:w(),name:"",script:""}))},{default:y(()=>[...e[57]||(e[57]=[r("Adicionar",-1)])]),_:1})]),s(n).conversion_pixels.custom_script.length===0?(a(),d("div",Et,"Nenhum script adicionado.")):g("",!0),(a(!0),d(U,null,j(s(n).conversion_pixels.custom_script,(o,_)=>(a(),d("div",{key:o.id,class:"panel-card-sm space-y-3"},[t("div",Pt,[t("div",null,[e[59]||(e[59]=t("label",{class:"block text-xs font-medium text-zinc-700 dark:text-zinc-300"},"Nome",-1)),x(t("input",{"onUpdate:modelValue":c=>o.name=c,type:"text",class:"mt-1 block w-full rounded-lg border border-zinc-300 dark:border-zinc-600 bg-white dark:bg-zinc-900 px-3 py-2 text-sm",placeholder:"Meu pixel"},null,8,Rt),[[f,o.name]])]),t("div",Xt,[e[60]||(e[60]=t("label",{class:"block text-xs font-medium text-zinc-700 dark:text-zinc-300"},"Script",-1)),x(t("textarea",{"onUpdate:modelValue":c=>o.script=c,rows:"4",class:"mt-1 block w-full rounded-lg border border-zinc-300 dark:border-zinc-600 bg-white dark:bg-zinc-900 px-3 py-2 font-mono text-xs",placeholder:" diff --git a/resources/js/components/member-builder/MemberBuilderModulesTab.vue b/resources/js/components/member-builder/MemberBuilderModulesTab.vue index 72145786..339fd28f 100644 --- a/resources/js/components/member-builder/MemberBuilderModulesTab.vue +++ b/resources/js/components/member-builder/MemberBuilderModulesTab.vue @@ -21,6 +21,7 @@ const props = defineProps({ sectionTypeLabel: { type: Function, required: true }, lessonForm: { type: Object, default: null }, lessonFormSaving: { type: Boolean, default: false }, + moduleFormSaving: { type: Boolean, default: false }, lessonPdfUploading: { type: Boolean, default: false }, lessonSupportUploading: { type: Boolean, default: false }, isLessonPdfContentType: { type: Function, required: true }, @@ -438,6 +439,7 @@ const columnClass = (step) => [ :editing-access-duration-days="editingModuleAccessDurationDays" :editing-thumbnail="editingModuleThumbnail" :thumbnail-uploading="moduleThumbnailUploading" + :saving="moduleFormSaving" @update:editing-title="emit('update:editingModuleTitle', $event)" @update:editing-show-title-on-cover="emit('update:editingModuleShowTitleOnCover', $event)" @update:editing-related-product-id="emit('update:editingModuleRelatedProductId', $event)" diff --git a/tests/Feature/MemberLessonReleaseDependencyTest.php b/tests/Feature/MemberLessonReleaseDependencyTest.php new file mode 100644 index 00000000..cf638796 --- /dev/null +++ b/tests/Feature/MemberLessonReleaseDependencyTest.php @@ -0,0 +1,95 @@ +withoutMiddleware(EnsureInstalled::class); + + $owner = User::factory()->create(['role' => User::ROLE_INFOPRODUTOR, 'tenant_id' => 1]); + $student = User::factory()->create(['role' => User::ROLE_ALUNO, 'tenant_id' => 1]); + $product = $this->createTestProduct([ + 'type' => Product::TYPE_AREA_MEMBROS, + 'checkout_slug' => 'lesson-rel-'.substr(uniqid('', true), -5), + ]); + $section = MemberSection::create([ + 'product_id' => $product->id, + 'title' => 'Aulas', + 'position' => 1, + 'section_type' => 'courses', + ]); + $module = MemberModule::create([ + 'member_section_id' => $section->id, + 'product_id' => $product->id, + 'title' => 'Módulo imediato', + 'position' => 1, + ]); + $firstLesson = MemberLesson::create([ + 'member_module_id' => $module->id, + 'product_id' => $product->id, + 'title' => 'Primeira aula', + 'position' => 1, + 'type' => MemberLesson::TYPE_TEXT, + 'content_text' => '

Conteúdo

', + ]); + $secondLesson = MemberLesson::create([ + 'member_module_id' => $module->id, + 'product_id' => $product->id, + 'title' => 'Segunda aula', + 'position' => 2, + 'type' => MemberLesson::TYPE_TEXT, + 'content_text' => '

Conteúdo

', + ]); + + $this->actingAs($owner)->putJson( + route('member-builder.lessons.update', ['produto' => $product, 'lesson' => $secondLesson]), + ['release_dependency_lesson_ids' => [$firstLesson->id]], + )->assertOk(); + + $this->assertDatabaseHas('member_lesson_release_dependencies', [ + 'member_lesson_id' => $secondLesson->id, + 'required_member_lesson_id' => $firstLesson->id, + ]); + + $product->users()->attach($student->id); + $locked = $this->actingAs($student)->get('/m/'.$product->checkout_slug); + $locked->assertOk()->assertInertia(fn ($page) => $page + ->where('sections.0.modules.0.lessons.1.is_locked', true) + ->where('sections.0.modules.0.lessons.1.lock_message', 'Conclua a aula Primeira aula para liberar esta aula.')); + + $this->actingAs($student)->postJson('/m/'.$product->checkout_slug.'/aula/'.$firstLesson->id.'/complete') + ->assertOk() + ->assertJsonPath('success', true); + + $unlocked = $this->actingAs($student)->get('/m/'.$product->checkout_slug); + $unlocked->assertOk()->assertInertia(fn ($page) => $page + ->where('sections.0.modules.0.lessons.1.is_locked', false)); + } + + public function test_lesson_cannot_depend_on_itself_or_a_later_lesson(): void + { + $this->withoutMiddleware(EnsureInstalled::class); + + $owner = User::factory()->create(['role' => User::ROLE_INFOPRODUTOR, 'tenant_id' => 1]); + $product = $this->createTestProduct(['type' => Product::TYPE_AREA_MEMBROS]); + $section = MemberSection::create(['product_id' => $product->id, 'title' => 'Aulas', 'position' => 1, 'section_type' => 'courses']); + $module = MemberModule::create(['member_section_id' => $section->id, 'product_id' => $product->id, 'title' => 'Módulo', 'position' => 1]); + $firstLesson = MemberLesson::create(['member_module_id' => $module->id, 'product_id' => $product->id, 'title' => 'Primeira', 'position' => 1, 'type' => MemberLesson::TYPE_TEXT]); + $secondLesson = MemberLesson::create(['member_module_id' => $module->id, 'product_id' => $product->id, 'title' => 'Segunda', 'position' => 2, 'type' => MemberLesson::TYPE_TEXT]); + + $this->actingAs($owner)->putJson( + route('member-builder.lessons.update', ['produto' => $product, 'lesson' => $firstLesson]), + ['release_dependency_lesson_ids' => [$secondLesson->id]], + )->assertUnprocessable()->assertJsonValidationErrors('release_dependency_lesson_ids'); + } +} diff --git a/tests/Feature/MemberReleaseDependencyMatrixTest.php b/tests/Feature/MemberReleaseDependencyMatrixTest.php new file mode 100644 index 00000000..578736fa --- /dev/null +++ b/tests/Feature/MemberReleaseDependencyMatrixTest.php @@ -0,0 +1,145 @@ +withoutMiddleware(EnsureInstalled::class); + } + + public function test_lesson_schedule_and_previous_lesson_completion_are_both_required(): void + { + [$product, $section, $student] = $this->course(); + $module = $this->module($product, $section, 'Aulas', 1, 2); + [$first, $second] = $module->lessons->all(); + $second->update(['release_at_date' => now()->addDay()->format('Y-m-d')]); + $second->releaseDependencies()->create(['required_member_lesson_id' => $first->id]); + $this->complete($product, $student, $first); + + $this->actingAs($student)->get('/m/'.$product->checkout_slug) + ->assertOk() + ->assertInertia(fn ($page) => $page + ->where('sections.0.modules.0.lessons.1.is_locked', true) + ->where('sections.0.modules.0.lessons.1.lock_message', fn ($message) => str_contains((string) $message, 'Disponível em'))); + + $second->update(['release_at_date' => now()->subDay()->format('Y-m-d')]); + + $this->actingAs($student)->get('/m/'.$product->checkout_slug) + ->assertOk() + ->assertInertia(fn ($page) => $page->where('sections.0.modules.0.lessons.1.is_locked', false)); + } + + public function test_reordering_lessons_removes_dependencies_that_are_no_longer_previous(): void + { + [$product, $section, $owner] = $this->course(owner: true); + $module = $this->module($product, $section, 'Módulo', 1, 2); + [$first, $second] = $module->lessons->all(); + $second->releaseDependencies()->create(['required_member_lesson_id' => $first->id]); + + $this->actingAs($owner)->postJson(route('member-builder.reorder', $product), [ + 'scope' => 'lessons', + 'module_id' => $module->id, + 'ordered_ids' => [$second->id, $first->id], + ])->assertOk(); + + $this->assertDatabaseMissing('member_lesson_release_dependencies', [ + 'member_lesson_id' => $second->id, + 'required_member_lesson_id' => $first->id, + ]); + } + + /** @return array{Product, MemberSection, User} */ + private function course($accessStartedAt = null, bool $owner = false): array + { + $user = User::factory()->create([ + 'role' => $owner ? User::ROLE_INFOPRODUTOR : User::ROLE_ALUNO, + 'tenant_id' => 1, + ]); + $product = $this->createTestProduct([ + 'type' => Product::TYPE_AREA_MEMBROS, + 'checkout_slug' => 'matrix-'.substr(uniqid('', true), -8), + ]); + $section = MemberSection::create([ + 'product_id' => $product->id, + 'title' => 'Trilha', + 'position' => 1, + 'section_type' => 'courses', + ]); + if (! $owner) { + $timestamp = $accessStartedAt ?? now(); + $product->users()->attach($user->id, ['created_at' => $timestamp, 'updated_at' => $timestamp]); + } + + return [$product, $section, $user]; + } + + private function module( + Product $product, + MemberSection $section, + string $title, + int $position, + int $lessonCount, + ?int $releaseAfterDays = null, + ): MemberModule { + $module = MemberModule::create([ + 'member_section_id' => $section->id, + 'product_id' => $product->id, + 'title' => $title, + 'position' => $position, + 'release_after_days' => $releaseAfterDays, + ]); + for ($position = 1; $position <= $lessonCount; $position++) { + MemberLesson::create([ + 'member_module_id' => $module->id, + 'product_id' => $product->id, + 'title' => $title.' - Aula '.$position, + 'position' => $position, + 'type' => MemberLesson::TYPE_TEXT, + 'content_text' => '

Conteúdo

', + ]); + } + + return $module->load('lessons'); + } + + private function complete(Product $product, User $student, MemberLesson $lesson): void + { + MemberLessonProgress::updateOrCreate( + ['user_id' => $student->id, 'member_lesson_id' => $lesson->id], + ['product_id' => $product->id, 'completed_at' => now(), 'progress_percent' => 100], + ); + } + + private function assertModuleLocked( + Product $product, + User $student, + int $moduleIndex, + bool $locked, + ?string $messageContains = null, + ): void { + $assertion = fn ($page) => $page->where("sections.0.modules.{$moduleIndex}.is_locked", $locked); + if ($messageContains !== null) { + $assertion = fn ($page) => $page + ->where("sections.0.modules.{$moduleIndex}.is_locked", $locked) + ->where("sections.0.modules.{$moduleIndex}.lock_message", fn ($message) => str_contains((string) $message, $messageContains)); + } + + $this->actingAs($student) + ->get('/m/'.$product->checkout_slug) + ->assertOk() + ->assertInertia($assertion); + } +}