修复:Alpine 组件恢复静态导入,消除 321 处表达式报错
将 13 个有 x-data 引用的 Alpine 组件模块恢复为静态导入,保留 27 个非 Alpine 模块懒加载。 chat.js 体积:170 KB(原 308 KB,↓45%) vendor 独立分包:108 KB 非 Alpine 模块仍保持按需代码分割
This commit is contained in:
+116
-308
@@ -132,17 +132,9 @@ export { bindChatEvents } from "./chat-room/chat-events.js";
|
|||||||
export { leaveRoom, notifyExpiredLeave, saveExp, startHeartbeat, stopHeartbeat, HEARTBEAT_INTERVAL, MAX_HEARTBEAT_FAILS } from "./chat-room/heartbeat.js";
|
export { leaveRoom, notifyExpiredLeave, saveExp, startHeartbeat, stopHeartbeat, HEARTBEAT_INTERVAL, MAX_HEARTBEAT_FAILS } from "./chat-room/heartbeat.js";
|
||||||
|
|
||||||
// ─── 懒加载工具 ──────────────────────────────────────
|
// ─── 懒加载工具 ──────────────────────────────────────
|
||||||
import { createLazyModule, createLazyAlpineComponent } from "./chat-room/lazy-loader.js";
|
import { createLazyModule } from "./chat-room/lazy-loader.js";
|
||||||
|
|
||||||
// ─── 游戏模块(按需懒加载)──────────────────────────
|
// ─── 游戏模块(按需懒加载)──────────────────────────
|
||||||
const _baccaratPanel = createLazyModule(
|
|
||||||
() => import("./chat-room/baccarat-panel.js"),
|
|
||||||
(mod) => mod.bindBaccaratPanelControls()
|
|
||||||
);
|
|
||||||
const _baccaratFab = createLazyModule(
|
|
||||||
() => import("./chat-room/baccarat-fab.js"),
|
|
||||||
(mod) => mod.bindBaccaratFabControls()
|
|
||||||
);
|
|
||||||
const _baccaratEvents = createLazyModule(
|
const _baccaratEvents = createLazyModule(
|
||||||
() => import("./chat-room/baccarat-events.js"),
|
() => import("./chat-room/baccarat-events.js"),
|
||||||
(mod) => mod.bindBaccaratEvents()
|
(mod) => mod.bindBaccaratEvents()
|
||||||
@@ -155,22 +147,10 @@ const _baccaratLossCover = createLazyModule(
|
|||||||
() => import("./chat-room/baccarat-loss-cover.js"),
|
() => import("./chat-room/baccarat-loss-cover.js"),
|
||||||
(mod) => mod.bindBaccaratLossCoverControls()
|
(mod) => mod.bindBaccaratLossCoverControls()
|
||||||
);
|
);
|
||||||
const _gomokuPanel = createLazyModule(
|
|
||||||
() => import("./chat-room/gomoku-panel.js"),
|
|
||||||
(mod) => mod.bindGomokuPanelControls()
|
|
||||||
);
|
|
||||||
const _gomokuControls = createLazyModule(
|
const _gomokuControls = createLazyModule(
|
||||||
() => import("./chat-room/gomoku-controls.js"),
|
() => import("./chat-room/gomoku-controls.js"),
|
||||||
(mod) => mod.bindGomokuControls()
|
(mod) => mod.bindGomokuControls()
|
||||||
);
|
);
|
||||||
const _horseRacePanel = createLazyModule(
|
|
||||||
() => import("./chat-room/horse-race-panel.js"),
|
|
||||||
(mod) => mod.bindHorseRacePanelControls()
|
|
||||||
);
|
|
||||||
const _horseRaceFab = createLazyModule(
|
|
||||||
() => import("./chat-room/horse-race-fab.js"),
|
|
||||||
(mod) => mod.bindHorseRaceFabControls()
|
|
||||||
);
|
|
||||||
const _horseRaceEvents = createLazyModule(
|
const _horseRaceEvents = createLazyModule(
|
||||||
() => import("./chat-room/horse-race-events.js"),
|
() => import("./chat-room/horse-race-events.js"),
|
||||||
(mod) => mod.bindHorseRaceEvents()
|
(mod) => mod.bindHorseRaceEvents()
|
||||||
@@ -179,18 +159,6 @@ const _fishing = createLazyModule(
|
|||||||
() => import("./chat-room/fishing.js"),
|
() => import("./chat-room/fishing.js"),
|
||||||
(mod) => mod.bindFishingControls()
|
(mod) => mod.bindFishingControls()
|
||||||
);
|
);
|
||||||
const _slotMachine = createLazyModule(
|
|
||||||
() => import("./chat-room/slot-machine.js"),
|
|
||||||
(mod) => mod.bindSlotMachineControls()
|
|
||||||
);
|
|
||||||
const _fortunePanel = createLazyModule(
|
|
||||||
() => import("./chat-room/fortune-panel.js"),
|
|
||||||
(mod) => mod.bindFortunePanelControls()
|
|
||||||
);
|
|
||||||
const _lotteryPanel = createLazyModule(
|
|
||||||
() => import("./chat-room/lottery-panel.js"),
|
|
||||||
(mod) => mod.bindLotteryPanelControls()
|
|
||||||
);
|
|
||||||
const _gameHall = createLazyModule(
|
const _gameHall = createLazyModule(
|
||||||
() => import("./chat-room/game-hall.js"),
|
() => import("./chat-room/game-hall.js"),
|
||||||
(mod) => mod.bindGameHallControls()
|
(mod) => mod.bindGameHallControls()
|
||||||
@@ -217,10 +185,6 @@ const _bank = createLazyModule(
|
|||||||
() => import("./chat-room/bank-modal.js"),
|
() => import("./chat-room/bank-modal.js"),
|
||||||
(mod) => mod.bindBankControls()
|
(mod) => mod.bindBankControls()
|
||||||
);
|
);
|
||||||
const _marriageModals = createLazyModule(
|
|
||||||
() => import("./chat-room/marriage-modals.js"),
|
|
||||||
(mod) => mod.bindMarriageModalControls()
|
|
||||||
);
|
|
||||||
const _marriageStatus = createLazyModule(
|
const _marriageStatus = createLazyModule(
|
||||||
() => import("./chat-room/marriage-status.js"),
|
() => import("./chat-room/marriage-status.js"),
|
||||||
(mod) => mod.bindMarriageStatusControls()
|
(mod) => mod.bindMarriageStatusControls()
|
||||||
@@ -229,10 +193,6 @@ const _profile = createLazyModule(
|
|||||||
() => import("./chat-room/profile-controls.js"),
|
() => import("./chat-room/profile-controls.js"),
|
||||||
(mod) => mod.bindProfileControls()
|
(mod) => mod.bindProfileControls()
|
||||||
);
|
);
|
||||||
const _userCard = createLazyModule(
|
|
||||||
() => import("./chat-room/user-card.js"),
|
|
||||||
(mod) => mod.bindUserCardControls()
|
|
||||||
);
|
|
||||||
const _userTargetActions = createLazyModule(
|
const _userTargetActions = createLazyModule(
|
||||||
() => import("./chat-room/user-target-actions.js"),
|
() => import("./chat-room/user-target-actions.js"),
|
||||||
(mod) => mod.bindUserTargetActions()
|
(mod) => mod.bindUserTargetActions()
|
||||||
@@ -245,18 +205,6 @@ const _redPacket = createLazyModule(
|
|||||||
() => import("./chat-room/red-packet-panel.js"),
|
() => import("./chat-room/red-packet-panel.js"),
|
||||||
(mod) => mod.bindRedPacketPanelControls()
|
(mod) => mod.bindRedPacketPanelControls()
|
||||||
);
|
);
|
||||||
const _holiday = createLazyModule(
|
|
||||||
() => import("./chat-room/holiday-modal.js"),
|
|
||||||
(mod) => mod.bindHolidayModalControls()
|
|
||||||
);
|
|
||||||
const _reward = createLazyModule(
|
|
||||||
() => import("./chat-room/reward-modal.js"),
|
|
||||||
(mod) => mod.bindRewardModalControls()
|
|
||||||
);
|
|
||||||
const _earn = createLazyModule(
|
|
||||||
() => import("./chat-room/earn-panel.js"),
|
|
||||||
(mod) => mod.bindEarnPanelControls()
|
|
||||||
);
|
|
||||||
const _dailySignIn = createLazyModule(
|
const _dailySignIn = createLazyModule(
|
||||||
() => import("./chat-room/daily-sign-in.js"),
|
() => import("./chat-room/daily-sign-in.js"),
|
||||||
(mod) => mod.bindDailySignInControls()
|
(mod) => mod.bindDailySignInControls()
|
||||||
@@ -313,6 +261,34 @@ const _chatBot = createLazyModule(
|
|||||||
(mod) => mod.bindChatBotControls()
|
(mod) => mod.bindChatBotControls()
|
||||||
);
|
);
|
||||||
|
|
||||||
|
// ─── 静态导入的 Alpine 组件模块(Blade 中通过 x-data 引用,必须同步可用)──
|
||||||
|
import { userCardComponent, bindUserCardControls } from "./chat-room/user-card.js";
|
||||||
|
import {
|
||||||
|
marriageProposeModal,
|
||||||
|
marriageIncomingModal,
|
||||||
|
marriageAcceptedModal,
|
||||||
|
marriageDivorcedModal,
|
||||||
|
divorceConfirmModal,
|
||||||
|
divorceRequestModal,
|
||||||
|
weddingSetupModal,
|
||||||
|
weddingEnvelopeModal,
|
||||||
|
appendSystemMessage,
|
||||||
|
openProposeModal,
|
||||||
|
openWeddingSetupModal,
|
||||||
|
bindMarriageModalControls,
|
||||||
|
} from "./chat-room/marriage-modals.js";
|
||||||
|
import { holidayEventModal, bindHolidayModalControls, buildHolidayClaimActionButton, buildHolidaySystemMessage, openHolidayRunFromSystemMessage } from "./chat-room/holiday-modal.js";
|
||||||
|
import { rewardModal, bindRewardModalControls, openRewardModal } from "./chat-room/reward-modal.js";
|
||||||
|
import { createEarnPanelData, bindEarnPanelControls } from "./chat-room/earn-panel.js";
|
||||||
|
import { baccaratPanel, bindBaccaratPanelControls } from "./chat-room/baccarat-panel.js";
|
||||||
|
import { baccaratFab, bindBaccaratFabControls } from "./chat-room/baccarat-fab.js";
|
||||||
|
import { horseRacePanel, bindHorseRacePanelControls, requestHorseRaceJson } from "./chat-room/horse-race-panel.js";
|
||||||
|
import { horseRaceFab, bindHorseRaceFabControls } from "./chat-room/horse-race-fab.js";
|
||||||
|
import { slotPanel, slotFab, bindSlotMachineControls } from "./chat-room/slot-machine.js";
|
||||||
|
import { fortunePanel, bindFortunePanelControls } from "./chat-room/fortune-panel.js";
|
||||||
|
import { lotteryPanel, bindLotteryPanelControls, closeLotteryPanel, openLotteryPanel, showLotteryMsg } from "./chat-room/lottery-panel.js";
|
||||||
|
import { gomokuPanel, bindGomokuPanelControls } from "./chat-room/gomoku-panel.js";
|
||||||
|
|
||||||
// ─── 轻量核心模块(保持静态导入)────────────────────
|
// ─── 轻量核心模块(保持静态导入)────────────────────
|
||||||
import { escapeHtml, escapeHtmlWithLineBreaks, normalizeSafeChatUrl } from "./chat-room/html.js";
|
import { escapeHtml, escapeHtmlWithLineBreaks, normalizeSafeChatUrl } from "./chat-room/html.js";
|
||||||
import { bindGlobalDialogControls } from "./chat-room/dialog.js";
|
import { bindGlobalDialogControls } from "./chat-room/dialog.js";
|
||||||
@@ -458,17 +434,11 @@ if (typeof window !== "undefined") {
|
|||||||
clearChatBotContext: (...args) => _chatBot.wrap('clearChatBotContext')(...args),
|
clearChatBotContext: (...args) => _chatBot.wrap('clearChatBotContext')(...args),
|
||||||
sendToChatBot: (...args) => _chatBot.wrap('sendToChatBot')(...args),
|
sendToChatBot: (...args) => _chatBot.wrap('sendToChatBot')(...args),
|
||||||
bindDailySignInControls: (...args) => _dailySignIn.wrap('bindDailySignInControls')(...args),
|
bindDailySignInControls: (...args) => _dailySignIn.wrap('bindDailySignInControls')(...args),
|
||||||
bindEarnPanelControls: (...args) => _earn.wrap('bindEarnPanelControls')(...args),
|
|
||||||
createEarnPanelData: (...args) => _earn.wrap('createEarnPanelData')(...args),
|
|
||||||
applyFontSize: (...args) => _fontSize.wrap('applyFontSize')(...args),
|
applyFontSize: (...args) => _fontSize.wrap('applyFontSize')(...args),
|
||||||
bindChatFontSizeControl: (...args) => _fontSize.wrap('bindChatFontSizeControl')(...args),
|
bindChatFontSizeControl: (...args) => _fontSize.wrap('bindChatFontSizeControl')(...args),
|
||||||
CHAT_FONT_SIZE_STORAGE_KEY: undefined, // 静态常量,通过模块直接导入或 window 上取
|
CHAT_FONT_SIZE_STORAGE_KEY: undefined,
|
||||||
restoreChatFontSize: (...args) => _fontSize.wrap('restoreChatFontSize')(...args),
|
restoreChatFontSize: (...args) => _fontSize.wrap('restoreChatFontSize')(...args),
|
||||||
bindChatImageUploadControl: (...args) => _imageUpload.wrap('bindChatImageUploadControl')(...args),
|
bindChatImageUploadControl: (...args) => _imageUpload.wrap('bindChatImageUploadControl')(...args),
|
||||||
bindLotteryPanelControls: (...args) => _lotteryPanel.wrap('bindLotteryPanelControls')(...args),
|
|
||||||
closeLotteryPanel: (...args) => _lotteryPanel.wrap('closeLotteryPanel')(...args),
|
|
||||||
openLotteryPanel: (...args) => _lotteryPanel.wrap('openLotteryPanel')(...args),
|
|
||||||
showLotteryMsg: (...args) => _lotteryPanel.wrap('showLotteryMsg')(...args),
|
|
||||||
bindFriendPanelControls: (...args) => _friendPanel.wrap('bindFriendPanelControls')(...args),
|
bindFriendPanelControls: (...args) => _friendPanel.wrap('bindFriendPanelControls')(...args),
|
||||||
bindFriendNotificationControls: (...args) => _friendNotifications.wrap('bindFriendNotificationControls')(...args),
|
bindFriendNotificationControls: (...args) => _friendNotifications.wrap('bindFriendNotificationControls')(...args),
|
||||||
closeFriendPanel: (...args) => _friendPanel.wrap('closeFriendPanel')(...args),
|
closeFriendPanel: (...args) => _friendPanel.wrap('closeFriendPanel')(...args),
|
||||||
@@ -487,14 +457,11 @@ if (typeof window !== "undefined") {
|
|||||||
renderMobileUserList: (...args) => _mobileDrawer.wrap('renderMobileUserList')(...args),
|
renderMobileUserList: (...args) => _mobileDrawer.wrap('renderMobileUserList')(...args),
|
||||||
scheduleRenderMobileUserList: (...args) => _mobileDrawer.wrap('scheduleRenderMobileUserList')(...args),
|
scheduleRenderMobileUserList: (...args) => _mobileDrawer.wrap('scheduleRenderMobileUserList')(...args),
|
||||||
switchMobileTab: (...args) => _mobileDrawer.wrap('switchMobileTab')(...args),
|
switchMobileTab: (...args) => _mobileDrawer.wrap('switchMobileTab')(...args),
|
||||||
bindUserCardControls: (...args) => _userCard.wrap('bindUserCardControls')(...args),
|
|
||||||
bindUserTargetActions: (...args) => _userTargetActions.wrap('bindUserTargetActions')(...args),
|
bindUserTargetActions: (...args) => _userTargetActions.wrap('bindUserTargetActions')(...args),
|
||||||
openUserCard: (...args) => _userTargetActions.wrap('openUserCard')(...args),
|
openUserCard: (...args) => _userTargetActions.wrap('openUserCard')(...args),
|
||||||
switchTarget: (...args) => _userTargetActions.wrap('switchTarget')(...args),
|
switchTarget: (...args) => _userTargetActions.wrap('switchTarget')(...args),
|
||||||
bindWelcomeMenuControls: (...args) => _welcomeMenu.wrap('bindWelcomeMenuControls')(...args),
|
bindWelcomeMenuControls: (...args) => _welcomeMenu.wrap('bindWelcomeMenuControls')(...args),
|
||||||
bindAdminMenuControls: (...args) => _adminMenu.wrap('bindAdminMenuControls')(...args),
|
bindAdminMenuControls: (...args) => _adminMenu.wrap('bindAdminMenuControls')(...args),
|
||||||
bindBaccaratPanelControls: (...args) => _baccaratPanel.wrap('bindBaccaratPanelControls')(...args),
|
|
||||||
bindBaccaratFabControls: (...args) => _baccaratFab.wrap('bindBaccaratFabControls')(...args),
|
|
||||||
bindBaccaratEvents: (...args) => _baccaratEvents.wrap('bindBaccaratEvents')(...args),
|
bindBaccaratEvents: (...args) => _baccaratEvents.wrap('bindBaccaratEvents')(...args),
|
||||||
bindBaccaratLossCoverAdminControls: (...args) => _baccaratLossCoverAdmin.wrap('bindBaccaratLossCoverAdminControls')(...args),
|
bindBaccaratLossCoverAdminControls: (...args) => _baccaratLossCoverAdmin.wrap('bindBaccaratLossCoverAdminControls')(...args),
|
||||||
closeAdminBaccaratLossCoverModal: (...args) => _baccaratLossCoverAdmin.wrap('closeAdminBaccaratLossCoverModal')(...args),
|
closeAdminBaccaratLossCoverModal: (...args) => _baccaratLossCoverAdmin.wrap('closeAdminBaccaratLossCoverModal')(...args),
|
||||||
@@ -513,18 +480,14 @@ if (typeof window !== "undefined") {
|
|||||||
bindGameBootstrapControls: (...args) => _gameBootstrap.wrap('bindGameBootstrapControls')(...args),
|
bindGameBootstrapControls: (...args) => _gameBootstrap.wrap('bindGameBootstrapControls')(...args),
|
||||||
deferChatGameBootstrap: (...args) => _gameBootstrap.wrap('deferChatGameBootstrap')(...args),
|
deferChatGameBootstrap: (...args) => _gameBootstrap.wrap('deferChatGameBootstrap')(...args),
|
||||||
bindGamePanelControls: (...args) => _gamePanels.wrap('bindGamePanelControls')(...args),
|
bindGamePanelControls: (...args) => _gamePanels.wrap('bindGamePanelControls')(...args),
|
||||||
bindGomokuPanelControls: (...args) => _gomokuPanel.wrap('bindGomokuPanelControls')(...args),
|
|
||||||
acceptGomokuInvite: (...args) => _gomokuControls.wrap('acceptGomokuInvite')(...args),
|
acceptGomokuInvite: (...args) => _gomokuControls.wrap('acceptGomokuInvite')(...args),
|
||||||
bindGomokuControls: (...args) => _gomokuControls.wrap('bindGomokuControls')(...args),
|
bindGomokuControls: (...args) => _gomokuControls.wrap('bindGomokuControls')(...args),
|
||||||
openGomokuPanel: (...args) => _gomokuControls.wrap('openGomokuPanel')(...args),
|
openGomokuPanel: (...args) => _gomokuControls.wrap('openGomokuPanel')(...args),
|
||||||
bindHorseRacePanelControls: (...args) => _horseRacePanel.wrap('bindHorseRacePanelControls')(...args),
|
requestHorseRaceJson: requestHorseRaceJson,
|
||||||
requestHorseRaceJson: (...args) => _horseRacePanel.wrap('requestHorseRaceJson')(...args),
|
|
||||||
bindHorseRaceFabControls: (...args) => _horseRaceFab.wrap('bindHorseRaceFabControls')(...args),
|
|
||||||
bindHorseRaceEvents: (...args) => _horseRaceEvents.wrap('bindHorseRaceEvents')(...args),
|
bindHorseRaceEvents: (...args) => _horseRaceEvents.wrap('bindHorseRaceEvents')(...args),
|
||||||
bindHolidayModalControls: (...args) => _holiday.wrap('bindHolidayModalControls')(...args),
|
buildHolidayClaimActionButton: buildHolidayClaimActionButton,
|
||||||
buildHolidayClaimActionButton: (...args) => _holiday.wrap('buildHolidayClaimActionButton')(...args),
|
buildHolidaySystemMessage: buildHolidaySystemMessage,
|
||||||
buildHolidaySystemMessage: (...args) => _holiday.wrap('buildHolidaySystemMessage')(...args),
|
openHolidayRunFromSystemMessage: openHolidayRunFromSystemMessage,
|
||||||
openHolidayRunFromSystemMessage: (...args) => _holiday.wrap('openHolidayRunFromSystemMessage')(...args),
|
|
||||||
bankAction: (...args) => _bank.wrap('bankAction')(...args),
|
bankAction: (...args) => _bank.wrap('bankAction')(...args),
|
||||||
bankLoadInfo: (...args) => _bank.wrap('bankLoadInfo')(...args),
|
bankLoadInfo: (...args) => _bank.wrap('bankLoadInfo')(...args),
|
||||||
bankShowMsg: (...args) => _bank.wrap('bankShowMsg')(...args),
|
bankShowMsg: (...args) => _bank.wrap('bankShowMsg')(...args),
|
||||||
@@ -542,7 +505,6 @@ if (typeof window !== "undefined") {
|
|||||||
resetFishingBtn: (...args) => _fishing.wrap('resetFishingBtn')(...args),
|
resetFishingBtn: (...args) => _fishing.wrap('resetFishingBtn')(...args),
|
||||||
startFishing: (...args) => _fishing.wrap('startFishing')(...args),
|
startFishing: (...args) => _fishing.wrap('startFishing')(...args),
|
||||||
stopAutoFishing: (...args) => _fishing.wrap('stopAutoFishing')(...args),
|
stopAutoFishing: (...args) => _fishing.wrap('stopAutoFishing')(...args),
|
||||||
bindFortunePanelControls: (...args) => _fortunePanel.wrap('bindFortunePanelControls')(...args),
|
|
||||||
bindProfileControls: (...args) => _profile.wrap('bindProfileControls')(...args),
|
bindProfileControls: (...args) => _profile.wrap('bindProfileControls')(...args),
|
||||||
closeAvatarPicker: (...args) => _profile.wrap('closeAvatarPicker')(...args),
|
closeAvatarPicker: (...args) => _profile.wrap('closeAvatarPicker')(...args),
|
||||||
closeSettingsModal: (...args) => _profile.wrap('closeSettingsModal')(...args),
|
closeSettingsModal: (...args) => _profile.wrap('closeSettingsModal')(...args),
|
||||||
@@ -560,23 +522,11 @@ if (typeof window !== "undefined") {
|
|||||||
showInlineMsg: (...args) => _profile.wrap('showInlineMsg')(...args),
|
showInlineMsg: (...args) => _profile.wrap('showInlineMsg')(...args),
|
||||||
unbindWechat: (...args) => _profile.wrap('unbindWechat')(...args),
|
unbindWechat: (...args) => _profile.wrap('unbindWechat')(...args),
|
||||||
bindMarriageStatusControls: (...args) => _marriageStatus.wrap('bindMarriageStatusControls')(...args),
|
bindMarriageStatusControls: (...args) => _marriageStatus.wrap('bindMarriageStatusControls')(...args),
|
||||||
appendSystemMessage: (...args) => _marriageModals.wrap('appendSystemMessage')(...args),
|
|
||||||
bindMarriageModalControls: (...args) => _marriageModals.wrap('bindMarriageModalControls')(...args),
|
|
||||||
divorceConfirmModal: (...args) => _marriageModals.wrap('divorceConfirmModal')(...args),
|
|
||||||
divorceRequestModal: (...args) => _marriageModals.wrap('divorceRequestModal')(...args),
|
|
||||||
marriageAcceptedModal: (...args) => _marriageModals.wrap('marriageAcceptedModal')(...args),
|
|
||||||
marriageDivorcedModal: (...args) => _marriageModals.wrap('marriageDivorcedModal')(...args),
|
|
||||||
marriageIncomingModal: (...args) => _marriageModals.wrap('marriageIncomingModal')(...args),
|
|
||||||
marriageProposeModal: (...args) => _marriageModals.wrap('marriageProposeModal')(...args),
|
|
||||||
closeMarriageStatusModal: (...args) => _marriageStatus.wrap('closeMarriageStatusModal')(...args),
|
closeMarriageStatusModal: (...args) => _marriageStatus.wrap('closeMarriageStatusModal')(...args),
|
||||||
fetchMarriedList: (...args) => _marriageStatus.wrap('fetchMarriedList')(...args),
|
fetchMarriedList: (...args) => _marriageStatus.wrap('fetchMarriedList')(...args),
|
||||||
fetchMyMarriageStatus: (...args) => _marriageStatus.wrap('fetchMyMarriageStatus')(...args),
|
fetchMyMarriageStatus: (...args) => _marriageStatus.wrap('fetchMyMarriageStatus')(...args),
|
||||||
marriageAction: (...args) => _marriageStatus.wrap('marriageAction')(...args),
|
marriageAction: (...args) => _marriageStatus.wrap('marriageAction')(...args),
|
||||||
openMarriageStatusModal: (...args) => _marriageStatus.wrap('openMarriageStatusModal')(...args),
|
openMarriageStatusModal: (...args) => _marriageStatus.wrap('openMarriageStatusModal')(...args),
|
||||||
openProposeModal: (...args) => _marriageModals.wrap('openProposeModal')(...args),
|
|
||||||
openWeddingSetupModal: (...args) => _marriageModals.wrap('openWeddingSetupModal')(...args),
|
|
||||||
weddingEnvelopeModal: (...args) => _marriageModals.wrap('weddingEnvelopeModal')(...args),
|
|
||||||
weddingSetupModal: (...args) => _marriageModals.wrap('weddingSetupModal')(...args),
|
|
||||||
renderMarriedList: (...args) => _marriageStatus.wrap('renderMarriedList')(...args),
|
renderMarriedList: (...args) => _marriageStatus.wrap('renderMarriedList')(...args),
|
||||||
renderMarriageStatus: (...args) => _marriageStatus.wrap('renderMarriageStatus')(...args),
|
renderMarriageStatus: (...args) => _marriageStatus.wrap('renderMarriageStatus')(...args),
|
||||||
switchMarriageTab: (...args) => _marriageStatus.wrap('switchMarriageTab')(...args),
|
switchMarriageTab: (...args) => _marriageStatus.wrap('switchMarriageTab')(...args),
|
||||||
@@ -604,7 +554,6 @@ if (typeof window !== "undefined") {
|
|||||||
renderCompactShop: (...args) => _compactShop.wrap('renderCompactShop')(...args),
|
renderCompactShop: (...args) => _compactShop.wrap('renderCompactShop')(...args),
|
||||||
showCompactShopToast: (...args) => _compactShop.wrap('showCompactShopToast')(...args),
|
showCompactShopToast: (...args) => _compactShop.wrap('showCompactShopToast')(...args),
|
||||||
submitCompactRename: (...args) => _compactShop.wrap('submitCompactRename')(...args),
|
submitCompactRename: (...args) => _compactShop.wrap('submitCompactRename')(...args),
|
||||||
bindSlotMachineControls: (...args) => _slotMachine.wrap('bindSlotMachineControls')(...args),
|
|
||||||
bindVipControls: (...args) => _vip.wrap('bindVipControls')(...args),
|
bindVipControls: (...args) => _vip.wrap('bindVipControls')(...args),
|
||||||
buyVip: (...args) => _vip.wrap('buyVip')(...args),
|
buyVip: (...args) => _vip.wrap('buyVip')(...args),
|
||||||
closeVipModal: (...args) => _vip.wrap('closeVipModal')(...args),
|
closeVipModal: (...args) => _vip.wrap('closeVipModal')(...args),
|
||||||
@@ -621,8 +570,6 @@ if (typeof window !== "undefined") {
|
|||||||
renderRoomsOnlineStatus: (...args) => _rooms.wrap('renderRoomsOnlineStatus')(...args),
|
renderRoomsOnlineStatus: (...args) => _rooms.wrap('renderRoomsOnlineStatus')(...args),
|
||||||
renderRoomsOnlineStatusToContainer: (...args) => _rooms.wrap('renderRoomsOnlineStatusToContainer')(...args),
|
renderRoomsOnlineStatusToContainer: (...args) => _rooms.wrap('renderRoomsOnlineStatusToContainer')(...args),
|
||||||
resolveRoomUrl: (...args) => _rooms.wrap('resolveRoomUrl')(...args),
|
resolveRoomUrl: (...args) => _rooms.wrap('resolveRoomUrl')(...args),
|
||||||
bindRewardModalControls: (...args) => _reward.wrap('bindRewardModalControls')(...args),
|
|
||||||
openRewardModal: (...args) => _reward.wrap('openRewardModal')(...args),
|
|
||||||
bindRedPacketPanelControls: (...args) => _redPacket.wrap('bindRedPacketPanelControls')(...args),
|
bindRedPacketPanelControls: (...args) => _redPacket.wrap('bindRedPacketPanelControls')(...args),
|
||||||
claimRedPacket: (...args) => _redPacket.wrap('claimRedPacket')(...args),
|
claimRedPacket: (...args) => _redPacket.wrap('claimRedPacket')(...args),
|
||||||
closeRedPacketModal: (...args) => _redPacket.wrap('closeRedPacketModal')(...args),
|
closeRedPacketModal: (...args) => _redPacket.wrap('closeRedPacketModal')(...args),
|
||||||
@@ -630,43 +577,49 @@ if (typeof window !== "undefined") {
|
|||||||
showRedPacketModal: (...args) => _redPacket.wrap('showRedPacketModal')(...args),
|
showRedPacketModal: (...args) => _redPacket.wrap('showRedPacketModal')(...args),
|
||||||
updateRedPacketClaimsUI: (...args) => _redPacket.wrap('updateRedPacketClaimsUI')(...args),
|
updateRedPacketClaimsUI: (...args) => _redPacket.wrap('updateRedPacketClaimsUI')(...args),
|
||||||
|
|
||||||
// ── 游戏模块 Alpine 对象(懒加载 Proxy) ──
|
// ── 静态导入的 Alpine 组件模块 ──
|
||||||
lotteryPanel: new Proxy({}, {
|
// 这些模块已通过静态导入编译到主包,直接引用导出
|
||||||
get(_, prop) { return (...args) => _lotteryPanel.load().then(m => { const v = m.lotteryPanel; return typeof v[prop] === 'function' ? v[prop](...args) : v[prop]; }); }
|
userCardComponent,
|
||||||
}),
|
bindUserCardControls,
|
||||||
baccaratPanel: new Proxy({}, {
|
marriageProposeModal,
|
||||||
get(_, prop) { return (...args) => _baccaratPanel.load().then(m => { const v = m.baccaratPanel; return typeof v[prop] === 'function' ? v[prop](...args) : v[prop]; }); }
|
marriageIncomingModal,
|
||||||
}),
|
marriageAcceptedModal,
|
||||||
baccaratFab: new Proxy({}, {
|
marriageDivorcedModal,
|
||||||
get(_, prop) { return (...args) => _baccaratFab.load().then(m => { const v = m.baccaratFab; return typeof v[prop] === 'function' ? v[prop](...args) : v[prop]; }); }
|
divorceConfirmModal,
|
||||||
}),
|
divorceRequestModal,
|
||||||
gomokuPanel: new Proxy({}, {
|
weddingSetupModal,
|
||||||
get(_, prop) { return (...args) => _gomokuPanel.load().then(m => { const v = m.gomokuPanel; return typeof v[prop] === 'function' ? v[prop](...args) : v[prop]; }); }
|
weddingEnvelopeModal,
|
||||||
}),
|
appendSystemMessage,
|
||||||
horseRacePanel: new Proxy({}, {
|
openProposeModal,
|
||||||
get(_, prop) { return (...args) => _horseRacePanel.load().then(m => { const v = m.horseRacePanel; return typeof v[prop] === 'function' ? v[prop](...args) : v[prop]; }); }
|
openWeddingSetupModal,
|
||||||
}),
|
bindMarriageModalControls,
|
||||||
horseRaceFab: new Proxy({}, {
|
holidayEventModal,
|
||||||
get(_, prop) { return (...args) => _horseRaceFab.load().then(m => { const v = m.horseRaceFab; return typeof v[prop] === 'function' ? v[prop](...args) : v[prop]; }); }
|
bindHolidayModalControls,
|
||||||
}),
|
rewardModal,
|
||||||
slotFab: new Proxy({}, {
|
bindRewardModalControls,
|
||||||
get(_, prop) { return (...args) => _slotMachine.load().then(m => { const v = m.slotFab; return typeof v[prop] === 'function' ? v[prop](...args) : v[prop]; }); }
|
openRewardModal,
|
||||||
}),
|
createEarnPanelData,
|
||||||
slotPanel: new Proxy({}, {
|
bindEarnPanelControls,
|
||||||
get(_, prop) { return (...args) => _slotMachine.load().then(m => { const v = m.slotPanel; return typeof v[prop] === 'function' ? v[prop](...args) : v[prop]; }); }
|
baccaratPanel,
|
||||||
}),
|
bindBaccaratPanelControls,
|
||||||
fortunePanel: new Proxy({}, {
|
baccaratFab,
|
||||||
get(_, prop) { return (...args) => _fortunePanel.load().then(m => { const v = m.fortunePanel; return typeof v[prop] === 'function' ? v[prop](...args) : v[prop]; }); }
|
bindBaccaratFabControls,
|
||||||
}),
|
horseRacePanel,
|
||||||
rewardModal: new Proxy({}, {
|
bindHorseRacePanelControls,
|
||||||
get(_, prop) { return (...args) => _reward.load().then(m => { const v = m.rewardModal; return typeof v[prop] === 'function' ? v[prop](...args) : v[prop]; }); }
|
horseRaceFab,
|
||||||
}),
|
bindHorseRaceFabControls,
|
||||||
userCardComponent: new Proxy({}, {
|
slotPanel,
|
||||||
get(_, prop) { return (...args) => _userCard.load().then(m => { const v = m.userCardComponent; return typeof v[prop] === 'function' ? v[prop](...args) : v[prop]; }); }
|
slotFab,
|
||||||
}),
|
bindSlotMachineControls,
|
||||||
holidayEventModal: new Proxy({}, {
|
fortunePanel,
|
||||||
get(_, prop) { return (...args) => _holiday.load().then(m => { const v = m.holidayEventModal; return typeof v[prop] === 'function' ? v[prop](...args) : v[prop]; }); }
|
bindFortunePanelControls,
|
||||||
}),
|
lotteryPanel,
|
||||||
|
bindLotteryPanelControls,
|
||||||
|
closeLotteryPanel,
|
||||||
|
openLotteryPanel,
|
||||||
|
showLotteryMsg,
|
||||||
|
gomokuPanel,
|
||||||
|
bindGomokuPanelControls,
|
||||||
};
|
};
|
||||||
|
|
||||||
// 直接挂载只服务暂未迁移的 Blade 调用点;新代码优先通过模块导入或 ChatRoomTools 复用。
|
// 直接挂载只服务暂未迁移的 Blade 调用点;新代码优先通过模块导入或 ChatRoomTools 复用。
|
||||||
@@ -692,7 +645,6 @@ if (typeof window !== "undefined") {
|
|||||||
window.loadMobileRoomList = (...args) => _mobileDrawer.wrap('loadMobileRoomList')(...args);
|
window.loadMobileRoomList = (...args) => _mobileDrawer.wrap('loadMobileRoomList')(...args);
|
||||||
window.openMobileDrawer = (...args) => _mobileDrawer.wrap('openMobileDrawer')(...args);
|
window.openMobileDrawer = (...args) => _mobileDrawer.wrap('openMobileDrawer')(...args);
|
||||||
window.openUserCard = (...args) => _userTargetActions.wrap('openUserCard')(...args);
|
window.openUserCard = (...args) => _userTargetActions.wrap('openUserCard')(...args);
|
||||||
window.openRewardModal = (...args) => _reward.wrap('openRewardModal')(...args);
|
|
||||||
window.renderMobileRoomList = (...args) => _mobileDrawer.wrap('renderMobileRoomList')(...args);
|
window.renderMobileRoomList = (...args) => _mobileDrawer.wrap('renderMobileRoomList')(...args);
|
||||||
window.renderMobileUserList = (...args) => _mobileDrawer.wrap('renderMobileUserList')(...args);
|
window.renderMobileUserList = (...args) => _mobileDrawer.wrap('renderMobileUserList')(...args);
|
||||||
window.scheduleRenderMobileUserList = (...args) => _mobileDrawer.wrap('scheduleRenderMobileUserList')(...args);
|
window.scheduleRenderMobileUserList = (...args) => _mobileDrawer.wrap('scheduleRenderMobileUserList')(...args);
|
||||||
@@ -702,9 +654,6 @@ if (typeof window !== "undefined") {
|
|||||||
window.sendToChatBot = (...args) => _chatBot.wrap('sendToChatBot')(...args);
|
window.sendToChatBot = (...args) => _chatBot.wrap('sendToChatBot')(...args);
|
||||||
window.runFeatureShortcut = runFeatureShortcut;
|
window.runFeatureShortcut = runFeatureShortcut;
|
||||||
window.runToolbarAction = runToolbarAction;
|
window.runToolbarAction = runToolbarAction;
|
||||||
window.buildHolidayClaimActionButton = (...args) => _holiday.wrap('buildHolidayClaimActionButton')(...args);
|
|
||||||
window.buildHolidaySystemMessage = (...args) => _holiday.wrap('buildHolidaySystemMessage')(...args);
|
|
||||||
window.openHolidayRunFromSystemMessage = (...args) => _holiday.wrap('openHolidayRunFromSystemMessage')(...args);
|
|
||||||
window.closeAdminBaccaratLossCoverModal = (...args) => _baccaratLossCoverAdmin.wrap('closeAdminBaccaratLossCoverModal')(...args);
|
window.closeAdminBaccaratLossCoverModal = (...args) => _baccaratLossCoverAdmin.wrap('closeAdminBaccaratLossCoverModal')(...args);
|
||||||
window.closeCurrentBaccaratLossCoverEvent = (...args) => _baccaratLossCoverAdmin.wrap('closeCurrentBaccaratLossCoverEvent')(...args);
|
window.closeCurrentBaccaratLossCoverEvent = (...args) => _baccaratLossCoverAdmin.wrap('closeCurrentBaccaratLossCoverEvent')(...args);
|
||||||
window.claimBaccaratLossCover = (...args) => _baccaratLossCover.wrap('claimBaccaratLossCover')(...args);
|
window.claimBaccaratLossCover = (...args) => _baccaratLossCover.wrap('claimBaccaratLossCover')(...args);
|
||||||
@@ -719,15 +668,11 @@ if (typeof window !== "undefined") {
|
|||||||
window.closeBankModal = (...args) => _bank.wrap('closeBankModal')(...args);
|
window.closeBankModal = (...args) => _bank.wrap('closeBankModal')(...args);
|
||||||
window.closeGameHall = (...args) => _gameHall.wrap('closeGameHall')(...args);
|
window.closeGameHall = (...args) => _gameHall.wrap('closeGameHall')(...args);
|
||||||
window.fetchBankRanking = (...args) => _bank.wrap('fetchBankRanking')(...args);
|
window.fetchBankRanking = (...args) => _bank.wrap('fetchBankRanking')(...args);
|
||||||
window.closeLotteryPanel = (...args) => _lotteryPanel.wrap('closeLotteryPanel')(...args);
|
|
||||||
window.createEarnPanelData = (...args) => _earn.wrap('createEarnPanelData')(...args);
|
|
||||||
window.deferChatGameBootstrap = (...args) => _gameBootstrap.wrap('deferChatGameBootstrap')(...args);
|
window.deferChatGameBootstrap = (...args) => _gameBootstrap.wrap('deferChatGameBootstrap')(...args);
|
||||||
window.openGameHall = (...args) => _gameHall.wrap('openGameHall')(...args);
|
window.openGameHall = (...args) => _gameHall.wrap('openGameHall')(...args);
|
||||||
window.acceptGomokuInvite = (...args) => _gomokuControls.wrap('acceptGomokuInvite')(...args);
|
window.acceptGomokuInvite = (...args) => _gomokuControls.wrap('acceptGomokuInvite')(...args);
|
||||||
window.openGomokuPanel = (...args) => _gomokuControls.wrap('openGomokuPanel')(...args);
|
window.openGomokuPanel = (...args) => _gomokuControls.wrap('openGomokuPanel')(...args);
|
||||||
window.openLotteryPanel = (...args) => _lotteryPanel.wrap('openLotteryPanel')(...args);
|
|
||||||
window.openBankModal = (...args) => _bank.wrap('openBankModal')(...args);
|
window.openBankModal = (...args) => _bank.wrap('openBankModal')(...args);
|
||||||
window.showLotteryMsg = (...args) => _lotteryPanel.wrap('showLotteryMsg')(...args);
|
|
||||||
window.checkAndAutoStartFishing = (...args) => _fishing.wrap('checkAndAutoStartFishing')(...args);
|
window.checkAndAutoStartFishing = (...args) => _fishing.wrap('checkAndAutoStartFishing')(...args);
|
||||||
window.createBobber = (...args) => _fishing.wrap('createBobber')(...args);
|
window.createBobber = (...args) => _fishing.wrap('createBobber')(...args);
|
||||||
window.reelFish = (...args) => _fishing.wrap('reelFish')(...args);
|
window.reelFish = (...args) => _fishing.wrap('reelFish')(...args);
|
||||||
@@ -768,50 +713,6 @@ if (typeof window !== "undefined") {
|
|||||||
window.fetchMyMarriageStatus = (...args) => _marriageStatus.wrap('fetchMyMarriageStatus')(...args);
|
window.fetchMyMarriageStatus = (...args) => _marriageStatus.wrap('fetchMyMarriageStatus')(...args);
|
||||||
window.marriageAction = (...args) => _marriageStatus.wrap('marriageAction')(...args);
|
window.marriageAction = (...args) => _marriageStatus.wrap('marriageAction')(...args);
|
||||||
window.openMarriageStatusModal = (...args) => _marriageStatus.wrap('openMarriageStatusModal')(...args);
|
window.openMarriageStatusModal = (...args) => _marriageStatus.wrap('openMarriageStatusModal')(...args);
|
||||||
window.appendSystemMessage = (...args) => _marriageModals.wrap('appendSystemMessage')(...args);
|
|
||||||
window.openProposeModal = (...args) => _marriageModals.wrap('openProposeModal')(...args);
|
|
||||||
window.openWeddingSetupModal = (...args) => _marriageModals.wrap('openWeddingSetupModal')(...args);
|
|
||||||
// ── 婚姻弹窗 Alpine 组件(createLazyAlpineComponent 懒加载) ──
|
|
||||||
window.marriageProposeModal = createLazyAlpineComponent(
|
|
||||||
() => import("./chat-room/marriage-modals.js"),
|
|
||||||
"marriageProposeModal",
|
|
||||||
{ show: false, targetUsername: "", error: "", loading: false, rings: [], selectedRing: null, selectedTier: null, tiers: [], selectedTierId: null, canAfford: false, sending: false, doPropose: () => {} }
|
|
||||||
);
|
|
||||||
window.marriageIncomingModal = createLazyAlpineComponent(
|
|
||||||
() => import("./chat-room/marriage-modals.js"),
|
|
||||||
"marriageIncomingModal",
|
|
||||||
{ show: false }
|
|
||||||
);
|
|
||||||
window.marriageAcceptedModal = createLazyAlpineComponent(
|
|
||||||
() => import("./chat-room/marriage-modals.js"),
|
|
||||||
"marriageAcceptedModal",
|
|
||||||
{ show: false }
|
|
||||||
);
|
|
||||||
window.marriageDivorcedModal = createLazyAlpineComponent(
|
|
||||||
() => import("./chat-room/marriage-modals.js"),
|
|
||||||
"marriageDivorcedModal",
|
|
||||||
{ show: false }
|
|
||||||
);
|
|
||||||
window.divorceConfirmModal = createLazyAlpineComponent(
|
|
||||||
() => import("./chat-room/marriage-modals.js"),
|
|
||||||
"divorceConfirmModal",
|
|
||||||
{ show: false }
|
|
||||||
);
|
|
||||||
window.divorceRequestModal = createLazyAlpineComponent(
|
|
||||||
() => import("./chat-room/marriage-modals.js"),
|
|
||||||
"divorceRequestModal",
|
|
||||||
{ show: false }
|
|
||||||
);
|
|
||||||
window.weddingSetupModal = createLazyAlpineComponent(
|
|
||||||
() => import("./chat-room/marriage-modals.js"),
|
|
||||||
"weddingSetupModal",
|
|
||||||
{ show: false }
|
|
||||||
);
|
|
||||||
window.weddingEnvelopeModal = createLazyAlpineComponent(
|
|
||||||
() => import("./chat-room/marriage-modals.js"),
|
|
||||||
"weddingEnvelopeModal",
|
|
||||||
{ show: false }
|
|
||||||
);
|
|
||||||
window.renderMarriedList = (...args) => _marriageStatus.wrap('renderMarriedList')(...args);
|
window.renderMarriedList = (...args) => _marriageStatus.wrap('renderMarriedList')(...args);
|
||||||
window.renderMarriageStatus = (...args) => _marriageStatus.wrap('renderMarriageStatus')(...args);
|
window.renderMarriageStatus = (...args) => _marriageStatus.wrap('renderMarriageStatus')(...args);
|
||||||
window.switchMarriageTab = (...args) => _marriageStatus.wrap('switchMarriageTab')(...args);
|
window.switchMarriageTab = (...args) => _marriageStatus.wrap('switchMarriageTab')(...args);
|
||||||
@@ -830,138 +731,30 @@ if (typeof window !== "undefined") {
|
|||||||
window.showShopToast = (...args) => _shop.wrap('showShopToast')(...args);
|
window.showShopToast = (...args) => _shop.wrap('showShopToast')(...args);
|
||||||
window.submitRename = (...args) => _shop.wrap('submitRename')(...args);
|
window.submitRename = (...args) => _shop.wrap('submitRename')(...args);
|
||||||
|
|
||||||
// ── Alpine 组件懒加载(createLazyAlpineComponent:$watch 触发时才加载真实模块) ──
|
// ── Alpine 组件(静态导入,Blade 中 x-data 引用时同步可用) ──
|
||||||
window.baccaratPanel = createLazyAlpineComponent(
|
window.userCardComponent = userCardComponent;
|
||||||
() => import("./chat-room/baccarat-panel.js"),
|
window.marriageProposeModal = marriageProposeModal;
|
||||||
"baccaratPanel",
|
window.marriageIncomingModal = marriageIncomingModal;
|
||||||
{ show: false }
|
window.marriageAcceptedModal = marriageAcceptedModal;
|
||||||
);
|
window.marriageDivorcedModal = marriageDivorcedModal;
|
||||||
window.baccaratFab = createLazyAlpineComponent(
|
window.divorceConfirmModal = divorceConfirmModal;
|
||||||
() => import("./chat-room/baccarat-fab.js"),
|
window.divorceRequestModal = divorceRequestModal;
|
||||||
"baccaratFab",
|
window.weddingSetupModal = weddingSetupModal;
|
||||||
{ show: false }
|
window.weddingEnvelopeModal = weddingEnvelopeModal;
|
||||||
);
|
window.appendSystemMessage = appendSystemMessage;
|
||||||
window.slotFab = createLazyAlpineComponent(
|
window.openProposeModal = openProposeModal;
|
||||||
() => import("./chat-room/slot-machine.js"),
|
window.openWeddingSetupModal = openWeddingSetupModal;
|
||||||
"slotFab",
|
window.holidayEventModal = holidayEventModal;
|
||||||
{ show: false }
|
window.rewardModal = rewardModal;
|
||||||
);
|
window.baccaratPanel = baccaratPanel;
|
||||||
window.slotPanel = createLazyAlpineComponent(
|
window.baccaratFab = baccaratFab;
|
||||||
() => import("./chat-room/slot-machine.js"),
|
window.slotFab = slotFab;
|
||||||
"slotPanel",
|
window.slotPanel = slotPanel;
|
||||||
{ show: false }
|
window.fortunePanel = fortunePanel;
|
||||||
);
|
window.lotteryPanel = lotteryPanel;
|
||||||
window.userCardComponent = createLazyAlpineComponent(
|
window.gomokuPanel = gomokuPanel;
|
||||||
() => import("./chat-room/user-card.js"),
|
window.horseRacePanel = horseRacePanel;
|
||||||
"userCardComponent",
|
window.horseRaceFab = horseRaceFab;
|
||||||
{
|
|
||||||
showUserModal: false,
|
|
||||||
showOriginalLightbox: false,
|
|
||||||
userInfo: {},
|
|
||||||
isMuting: false,
|
|
||||||
muteDuration: 5,
|
|
||||||
showWhispers: false,
|
|
||||||
whisperList: [],
|
|
||||||
showAnnounce: false,
|
|
||||||
announceText: "",
|
|
||||||
is_friend: false,
|
|
||||||
friendLoading: false,
|
|
||||||
gifts: [],
|
|
||||||
selectedGiftId: 0,
|
|
||||||
giftCount: 1,
|
|
||||||
sendingGift: false,
|
|
||||||
showGiftPanel: false,
|
|
||||||
showGiftGoldPanel: false,
|
|
||||||
giftGoldAmount: "",
|
|
||||||
giftGoldSending: false,
|
|
||||||
rewardAmount: 0,
|
|
||||||
sendingReward: false,
|
|
||||||
showRewardPanel: false,
|
|
||||||
showAppointPanel: false,
|
|
||||||
appointPositions: [],
|
|
||||||
selectedPositionId: null,
|
|
||||||
appointRemark: "",
|
|
||||||
appointLoading: false,
|
|
||||||
showAdminView: false,
|
|
||||||
showPositionHistory: false,
|
|
||||||
showAdminPanel: false,
|
|
||||||
targetMarriage: null,
|
|
||||||
marriageLoading: false,
|
|
||||||
mySex: "",
|
|
||||||
// 方法存根(防止 Alpine with(scope) 表达式找不到方法而报错)
|
|
||||||
hasPositionPermission: () => false,
|
|
||||||
canManageTargetByDuty: () => false,
|
|
||||||
assetValueLabel: () => "",
|
|
||||||
canRevealAssetValue: () => false,
|
|
||||||
displayAssetValue: () => "",
|
|
||||||
assetValueTitle: () => "",
|
|
||||||
assetValueStyle: () => "",
|
|
||||||
revealAssetValue: () => {},
|
|
||||||
displayBankBalance: () => "",
|
|
||||||
bankBalanceTitle: () => "",
|
|
||||||
bankBalanceStyle: () => "",
|
|
||||||
revealBankBalance: () => {},
|
|
||||||
toggleFriend: () => {},
|
|
||||||
handleConfirmDivorce: () => {},
|
|
||||||
doDivorce: () => {},
|
|
||||||
fetchUser: () => {},
|
|
||||||
_loadPositions: () => {},
|
|
||||||
doAppoint: () => {},
|
|
||||||
doRevoke: () => {},
|
|
||||||
kickUser: () => {},
|
|
||||||
muteUser: () => {},
|
|
||||||
warnUser: () => {},
|
|
||||||
banUser: () => {},
|
|
||||||
banIpUser: () => {},
|
|
||||||
loadWhispers: () => {},
|
|
||||||
sendAnnounce: () => {},
|
|
||||||
sendGift: () => {},
|
|
||||||
toggleGiftPanel: () => {},
|
|
||||||
toggleGiftGoldPanel: () => {},
|
|
||||||
sendGiftGold: () => {},
|
|
||||||
sendReward: () => {},
|
|
||||||
_headers: () => ({}),
|
|
||||||
$alert: (...args) => window.chatDialog?.alert(...args),
|
|
||||||
$confirm: (...args) => window.chatDialog?.confirm(...args),
|
|
||||||
$prompt: (...args) => window.chatDialog?.prompt(...args),
|
|
||||||
},
|
|
||||||
"showUserModal"
|
|
||||||
);
|
|
||||||
window.holidayEventModal = createLazyAlpineComponent(
|
|
||||||
() => import("./chat-room/holiday-modal.js"),
|
|
||||||
"holidayEventModal",
|
|
||||||
{ show: false }
|
|
||||||
);
|
|
||||||
window.fortunePanel = createLazyAlpineComponent(
|
|
||||||
() => import("./chat-room/fortune-panel.js"),
|
|
||||||
"fortunePanel",
|
|
||||||
{ show: false }
|
|
||||||
);
|
|
||||||
window.lotteryPanel = createLazyAlpineComponent(
|
|
||||||
() => import("./chat-room/lottery-panel.js"),
|
|
||||||
"lotteryPanel",
|
|
||||||
{ show: false }
|
|
||||||
);
|
|
||||||
window.gomokuPanel = createLazyAlpineComponent(
|
|
||||||
() => import("./chat-room/gomoku-panel.js"),
|
|
||||||
"gomokuPanel",
|
|
||||||
{ show: false }
|
|
||||||
);
|
|
||||||
window.horseRacePanel = createLazyAlpineComponent(
|
|
||||||
() => import("./chat-room/horse-race-panel.js"),
|
|
||||||
"horseRacePanel",
|
|
||||||
{ show: false }
|
|
||||||
);
|
|
||||||
window.horseRaceFab = createLazyAlpineComponent(
|
|
||||||
() => import("./chat-room/horse-race-fab.js"),
|
|
||||||
"horseRaceFab",
|
|
||||||
{ show: false }
|
|
||||||
);
|
|
||||||
window.rewardModal = createLazyAlpineComponent(
|
|
||||||
() => import("./chat-room/reward-modal.js"),
|
|
||||||
"rewardModal",
|
|
||||||
{ show: false }
|
|
||||||
);
|
|
||||||
|
|
||||||
// 聊天室核心引擎 window 挂载
|
// 聊天室核心引擎 window 挂载
|
||||||
window.bindChatEvents = bindChatEvents;
|
window.bindChatEvents = bindChatEvents;
|
||||||
@@ -982,4 +775,19 @@ if (typeof window !== "undefined") {
|
|||||||
bindChatEvents();
|
bindChatEvents();
|
||||||
startBadgeRotation();
|
startBadgeRotation();
|
||||||
startHeartbeat();
|
startHeartbeat();
|
||||||
|
|
||||||
|
// ── 静态导入的 Alpine 组件模块控制绑定 ──
|
||||||
|
bindUserCardControls();
|
||||||
|
bindMarriageModalControls();
|
||||||
|
bindHolidayModalControls();
|
||||||
|
bindRewardModalControls();
|
||||||
|
bindEarnPanelControls();
|
||||||
|
bindBaccaratPanelControls();
|
||||||
|
bindBaccaratFabControls();
|
||||||
|
bindHorseRacePanelControls();
|
||||||
|
bindHorseRaceFabControls();
|
||||||
|
bindSlotMachineControls();
|
||||||
|
bindFortunePanelControls();
|
||||||
|
bindLotteryPanelControls();
|
||||||
|
bindGomokuPanelControls();
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user