fix(auth): secure sessions and app routing

Validate sessions against the API, honor configurable base paths, and route unknown pages to 404. Keep development ports stable so user and admin apps cannot be confused.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
This commit is contained in:
2026-09-24 20:14:11 +03:30
co-authored by Copilot
parent c0c2221d91
commit adb6ca47cd
56 changed files with 160 additions and 406 deletions
+1
View File
@@ -0,0 +1 @@
import{Et as e,J as t,N as n,O as r,P as i,T as a,Xt as o,at as s,g as c,t as l,w as u}from"./_plugin-vue_export-helper-Bo3WtfwJ.js";import{n as d}from"./format-C72AoJ2H.js";import{C as f,d as p}from"./index-BAQfYU-Q.js";import{t as m}from"./IconEditPen-LGjdaNbi.js";import{t as h}from"./PageHeader-DTO8lja2.js";import{t as g}from"./useRequirePricedOrder-DWh7nbsh.js";var _={class:`page check-mode-page`},v={class:`page__scroll check-mode-page__scroll`},y={class:`check-mode-invoice`},b={class:`check-mode-invoice__value`},x={class:`mode-options`},S={class:`mode-card__icon`},C={class:`mode-card__icon`},w=l(i({__name:`CheckModeSelectView`,setup(i){let l=c(),w=p(),{orderId:T,order:E}=g(),D=u(()=>E.value?.finalAmount?d(E.value.finalAmount):`—`);s(T,async e=>{e&&(w.getOrderById(e)||await w.fetchOrder(e),w.draftOrderId!==e&&w.startCheckDraft(e))},{immediate:!0});function O(e){w.setCheckMode(e),l.push(`/orders/${T.value}/check-form`)}return(i,s)=>(t(),r(`div`,_,[n(h,{title:`تسویه چکی`,subtitle:`بر اساس مبلغ فاکتور، نحوه ثبت چک را انتخاب کنید`,"show-back":``,centered:``,onBack:s[0]||=t=>e(l).push(`/orders/${e(T)}`)}),a(`div`,v,[a(`div`,y,[s[3]||=a(`span`,{class:`check-mode-invoice__label`},`مبلغ فاکتور`,-1),a(`strong`,b,o(D.value),1)]),a(`div`,x,[a(`button`,{type:`button`,class:`mode-card`,onClick:s[1]||=e=>O(`full`)},[a(`span`,S,[n(f,{size:36})]),s[4]||=a(`h3`,{class:`mode-card__title`},`ثبت کامل (پیشنهادی)`,-1),s[5]||=a(`p`,{class:`mode-card__desc`},`وارد کردن همه اطلاعات چک`,-1)]),a(`button`,{type:`button`,class:`mode-card`,onClick:s[2]||=e=>O(`brief`)},[a(`span`,C,[n(m,{size:36})]),s[6]||=a(`h3`,{class:`mode-card__title`},`ثبت مختصر`,-1),s[7]||=a(`p`,{class:`mode-card__desc`},`وارد کردن حداقل اطلاعات`,-1)])])])]))}}),[[`__scopeId`,`data-v-680065b0`]]);export{w as default};