diff --git a/superpage/package-lock.json b/superpage/package-lock.json
index 6a7b463..588c157 100644
--- a/superpage/package-lock.json
+++ b/superpage/package-lock.json
@@ -24,6 +24,7 @@
"react": "^19.1.0",
"react-dom": "^19.1.0",
"react-hook-form": "^7.56.0",
+ "react-number-format": "^5.4.4",
"smartypants": "^0.2.2",
"tailwindcss": "^4.1.5",
"vanilla-cookieconsent": "^3.1.0",
@@ -6769,6 +6770,16 @@
"react": "^16.8.0 || ^17 || ^18 || ^19"
}
},
+ "node_modules/react-number-format": {
+ "version": "5.4.4",
+ "resolved": "https://registry.npmjs.org/react-number-format/-/react-number-format-5.4.4.tgz",
+ "integrity": "sha512-wOmoNZoOpvMminhifQYiYSTCLUDOiUbBunrMrMjA+dV52sY+vck1S4UhR6PkgnoCquvvMSeJjErXZ4qSaWCliA==",
+ "license": "MIT",
+ "peerDependencies": {
+ "react": "^0.14 || ^15.0.0 || ^16.0.0 || ^17.0.0 || ^18.0.0 || ^19.0.0",
+ "react-dom": "^0.14 || ^15.0.0 || ^16.0.0 || ^17.0.0 || ^18.0.0 || ^19.0.0"
+ }
+ },
"node_modules/react-refresh": {
"version": "0.17.0",
"resolved": "https://registry.npmjs.org/react-refresh/-/react-refresh-0.17.0.tgz",
diff --git a/superpage/package.json b/superpage/package.json
index f765d3e..93bede9 100644
--- a/superpage/package.json
+++ b/superpage/package.json
@@ -25,6 +25,7 @@
"react": "^19.1.0",
"react-dom": "^19.1.0",
"react-hook-form": "^7.56.0",
+ "react-number-format": "^5.4.4",
"smartypants": "^0.2.2",
"tailwindcss": "^4.1.5",
"vanilla-cookieconsent": "^3.1.0",
diff --git a/superpage/src/components/Course/FlyoutMenu.astro b/superpage/src/components/Course/FlyoutMenu.astro
index a672949..97afe0c 100644
--- a/superpage/src/components/Course/FlyoutMenu.astro
+++ b/superpage/src/components/Course/FlyoutMenu.astro
@@ -46,7 +46,7 @@ const relatedCourses = data?.relatedCourses
-
-
-
diff --git a/superpage/src/components/Features.astro b/superpage/src/components/Features.astro
index 7df3420..76593de 100644
--- a/superpage/src/components/Features.astro
+++ b/superpage/src/components/Features.astro
@@ -52,12 +52,14 @@ import homemdenegocios from "~/assets/homem-de-negocios.png";
diff --git a/superpage/src/components/Modal.astro b/superpage/src/components/Modal.astro
index 101f11b..5904624 100644
--- a/superpage/src/components/Modal.astro
+++ b/superpage/src/components/Modal.astro
@@ -24,6 +24,9 @@ import { Icon } from "astro-icon/components";
const modals = document.querySelectorAll(
"[data-toggle=modal]",
) as NodeListOf;
+ const buttons = document.querySelectorAll(
+ "[data-toggle=modal]",
+ ) as NodeListOf;
function openModal(modal: HTMLDialogElement) {
const close = modal.querySelector("[data-dismiss]");
@@ -57,6 +60,19 @@ import { Icon } from "astro-icon/components";
el.addEventListener("click", () => openModal(modal));
});
+ buttons.forEach((e) => {
+ e.addEventListener("click", (e) => {
+ const button = e.target as HTMLButtonElement;
+ // Dispatch a custom event with the selected solution,
+ // so a React component can listen to it using `window.addEventListener`.
+ window.dispatchEvent(
+ new CustomEvent("custom_event:react_form", {
+ detail: button.dataset.detail,
+ }),
+ );
+ });
+ });
+
window.addEventListener("modal:open", function (event: Event) {
const customEvent = event as CustomEvent;
const modal = customEvent.detail;
diff --git a/superpage/src/pages/index.astro b/superpage/src/pages/index.astro
index b1eeb34..9660ee8 100644
--- a/superpage/src/pages/index.astro
+++ b/superpage/src/pages/index.astro
@@ -23,7 +23,7 @@ import mulhercomepi from "~/assets/mulher-com-epi.png";
class="w-full xl:w-4/6 max-xl:p-5 space-y-6 lg:space-y-12"
>
-
+