From 3c9e2f7598b9d463d500f871fb91306981369052 Mon Sep 17 00:00:00 2001 From: Tran Van Quyet Date: Sat, 10 Jan 2026 05:36:11 +0700 Subject: [PATCH 1/2] AiMBA: refactor --- src/aimba/slider/Slider.js | 19 ++++++------------- 1 file changed, 6 insertions(+), 13 deletions(-) diff --git a/src/aimba/slider/Slider.js b/src/aimba/slider/Slider.js index 8d691e7..9dab3b3 100644 --- a/src/aimba/slider/Slider.js +++ b/src/aimba/slider/Slider.js @@ -9,8 +9,13 @@ export let Slider = ({ infinite = false, children = renderContent }) => { + let buffer = 2; let slideAreas = infinite ? ['head', 'body', 'tail'] : ['body']; - + let scrollViewRef = useRef(null); + let scrollingEndDebounceRef = useRef(null); + let [scrollable, setScrollable] = useState(false); + let [scrolling, setScrolling] = useState(false); + let [paused, setPaused] = useState(false); let [slideStates, setSlideStates] = useState(() => { let states = {}; for (let area of slideAreas) { @@ -25,18 +30,6 @@ export let Slider = ({ return states; }); - let scrollViewRef = useRef(null); - - let [scrollable, setScrollable] = useState(false); - - let [scrolling, setScrolling] = useState(false); - - let [paused, setPaused] = useState(false); - - let scrollingEndDebounceRef = useRef(null); - - let buffer = 2; - let getSlideMargin = () => { let scrollView = scrollViewRef.current; if (scrollView == null) { From 74ad13198b9ceb26f995035eb374012bcb465efd Mon Sep 17 00:00:00 2001 From: quyettvq Date: Mon, 12 Jan 2026 16:06:47 +0700 Subject: [PATCH 2/2] AiMBA: hide dialog after registration success --- src/aimba/registration/Registration.js | 3 ++- src/aimba/registration/RegistrationForm.js | 7 +++++-- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/src/aimba/registration/Registration.js b/src/aimba/registration/Registration.js index 6af13ac..b1d207e 100644 --- a/src/aimba/registration/Registration.js +++ b/src/aimba/registration/Registration.js @@ -5,6 +5,7 @@ import {PromoCountdown} from './PromoCountdown'; import {RegistrationForm} from './RegistrationForm'; export let Registration = ({ + setDialog, onRegistrationFormSubmit, contents: { registration: {backgroundImage} @@ -63,7 +64,7 @@ export let Registration = ({
Ưu đãi có hạn, đăng ký ngay để không bỏ lỡ
- + diff --git a/src/aimba/registration/RegistrationForm.js b/src/aimba/registration/RegistrationForm.js index f876af1..d171f9e 100644 --- a/src/aimba/registration/RegistrationForm.js +++ b/src/aimba/registration/RegistrationForm.js @@ -2,7 +2,7 @@ import './RegistrationForm.less'; import {useState} from 'fiddlehead'; import {fbqEmit} from '../tracking'; -export let RegistrationForm = ({onSubmit}) => { +export let RegistrationForm = ({onSubmit, setDialog}) => { let [feedback, setFeedback] = useState(null); let handleSubmit = (event) => { @@ -14,10 +14,13 @@ export let RegistrationForm = ({onSubmit}) => { setFeedback(feedback); if (feedback.type === 'success') { form.reset(); + fbqEmit('track', 'Lead'); + setTimeout(() => { + setDialog(null); + }, 2000); } }; onSubmit({formData, onFeedback}); - fbqEmit('track', 'Lead'); }; let handleChange = () => {