M1: features/medicos + features/insurance + ComponentCadastroRapido refactor
Modulo 1 da Fase 1 de padronizacao. Novos features/medicos (services + composable useMedicos) e features/insurance (idem). 3 cadastros rapidos (medicos, convenios, ComponentCadastroRapido + Insurance PlanQuickCreateDialog) migrados pra usar os composables novos — zero supabase.from() em UI components. TEST_ACCOUNTS extraido pra src/config/devTestAccounts.js. Topbar ganhou switcher de layout + atalhos M1 via novo useTopbarDevMenuExtras. M1.6 MelissaLayout 90 imports deferida pra sessao dedicada (memoria padronizacao_sweep). Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -42,6 +42,7 @@ function toggleAjuda() {
|
||||
}
|
||||
|
||||
import { useUserSettingsPersistence } from '@/composables/useUserSettingsPersistence';
|
||||
import { useTopbarDevMenuExtras } from '@/composables/useTopbarDevMenuExtras';
|
||||
import { applyThemeEngine } from '@/theme/theme.options';
|
||||
|
||||
import { fetchAllNotices } from '@/features/notices/noticeService';
|
||||
@@ -415,6 +416,14 @@ const planMenuModel = computed(() => {
|
||||
return [header, subInfo, { separator: true }, ...items];
|
||||
});
|
||||
|
||||
// ─── Extras do menu DEV (layout switcher + atalhos M1) ────────────
|
||||
const { devExtrasModel } = useTopbarDevMenuExtras();
|
||||
const combinedDevMenuModel = computed(() => [
|
||||
...planMenuModel.value,
|
||||
{ separator: true },
|
||||
...devExtrasModel.value
|
||||
]);
|
||||
|
||||
async function openPlanMenu(event) {
|
||||
if (!showPlanDevMenu.value) return;
|
||||
|
||||
@@ -598,7 +607,7 @@ onMounted(async () => {
|
||||
<i class="pi pi-sliders-h" />
|
||||
</Button>
|
||||
|
||||
<Menu ref="planMenu" :model="planMenuModel" popup appendTo="body" :baseZIndex="3000" />
|
||||
<Menu ref="planMenu" :model="combinedDevMenuModel" popup appendTo="body" :baseZIndex="3000" />
|
||||
|
||||
<!-- Notificações -->
|
||||
<div class="relative">
|
||||
|
||||
@@ -106,6 +106,7 @@ import { useNotifications } from '@/composables/useNotifications';
|
||||
import { useNotificationStore } from '@/stores/notificationStore';
|
||||
import { useAjuda } from '@/composables/useAjuda';
|
||||
import { useTopbarPlanMenu } from '@/composables/useTopbarPlanMenu';
|
||||
import { useTopbarDevMenuExtras } from '@/composables/useTopbarDevMenuExtras';
|
||||
|
||||
// Pacientes + eventos do dia.
|
||||
//
|
||||
@@ -1819,6 +1820,14 @@ const {
|
||||
openPlanMenu
|
||||
} = useTopbarPlanMenu();
|
||||
|
||||
// Extras DEV (layout switcher + atalhos M1) que aparecem no MESMO menu do botão sliders.
|
||||
const { devExtrasModel } = useTopbarDevMenuExtras();
|
||||
const combinedDevMenuModel = computed(() => [
|
||||
...planMenuModel.value,
|
||||
{ separator: true },
|
||||
...devExtrasModel.value
|
||||
]);
|
||||
|
||||
// Recebíveis derivados de agenda_eventos.{price,billed}: aproximação MVP.
|
||||
// `billed=true` é o flag de "marcado como pago/cobrado" no agenda — não
|
||||
// é a fonte de verdade financeira (essa é financial_records.status='paid'),
|
||||
@@ -3227,7 +3236,7 @@ function onKeydown(e) {
|
||||
<NotificationDrawer />
|
||||
|
||||
<!-- Plan menu DEV — popup ancorado no botão da topbar -->
|
||||
<Menu ref="planMenu" :model="planMenuModel" popup appendTo="body" :baseZIndex="3000" />
|
||||
<Menu ref="planMenu" :model="combinedDevMenuModel" popup appendTo="body" :baseZIndex="3000" />
|
||||
</div>
|
||||
</template>
|
||||
|
||||
|
||||
Reference in New Issue
Block a user