@robot-admin/naive-ui-components 0.20.0 → 0.21.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +22 -0
- package/README.md +5 -5
- package/README_EN.md +5 -5
- package/SECURITY.md +39 -0
- package/dist/C_AntV.css +31 -31
- package/dist/C_AntV2.cjs +1 -1
- package/dist/C_AntV2.js +1 -1
- package/dist/C_Chat.css +90 -90
- package/dist/C_Chat2.cjs +1 -1
- package/dist/C_Chat2.js +1 -1
- package/dist/C_CollapsePanel2.cjs +1 -1
- package/dist/C_CollapsePanel2.js +1 -1
- package/dist/C_Draggable.css +53 -53
- package/dist/C_Draggable2.cjs +1 -1
- package/dist/C_Draggable2.js +1 -1
- package/dist/C_FilePreview.css +98 -98
- package/dist/C_FilePreview.d.cts +2 -2
- package/dist/C_FilePreview.d.ts +2 -2
- package/dist/C_FilePreview2.cjs +1 -1
- package/dist/C_FilePreview2.js +1 -1
- package/dist/C_Form.base.css +9 -9
- package/dist/C_Form.css +9 -9
- package/dist/C_FormSearch.css +52 -52
- package/dist/C_FormSearch2.cjs +1 -1
- package/dist/C_FormSearch2.js +1 -1
- package/dist/C_Language.css +2 -2
- package/dist/C_Language2.cjs +1 -1
- package/dist/C_Language2.js +1 -1
- package/dist/C_Login.css +79 -79
- package/dist/C_Login2.cjs +1 -1
- package/dist/C_Login2.js +1 -1
- package/dist/C_Markdown.css +1 -2
- package/dist/C_Menu.css +1 -1
- package/dist/C_Menu.d.cts +2 -2
- package/dist/C_Menu.d.ts +2 -2
- package/dist/C_Menu2.cjs +1 -1
- package/dist/C_Menu2.js +1 -1
- package/dist/C_NotificationCenter.css +124 -124
- package/dist/C_NotificationCenter.d.cts +2 -2
- package/dist/C_NotificationCenter.d.ts +2 -2
- package/dist/C_NotificationCenter2.cjs +1 -1
- package/dist/C_NotificationCenter2.js +1 -1
- package/dist/C_Skeleton.css +2 -2
- package/dist/C_Skeleton2.cjs +1 -1
- package/dist/C_Skeleton2.js +1 -1
- package/dist/C_SplitPane.css +66 -66
- package/dist/C_SplitPane2.cjs +1 -1
- package/dist/C_SplitPane2.js +1 -1
- package/dist/C_Table.base.css +9 -9
- package/dist/C_Table.css +9 -9
- package/dist/C_Table.d.ts +1 -0
- package/dist/C_Theme2.cjs +1 -1
- package/dist/C_Theme2.js +1 -1
- package/dist/C_Timeline.css +46 -46
- package/dist/C_Timeline2.cjs +1 -1
- package/dist/C_Timeline2.js +1 -1
- package/dist/C_Transfer.css +26 -26
- package/dist/C_Transfer2.cjs +1 -1
- package/dist/C_Transfer2.js +1 -1
- package/dist/C_Tree.css +23 -23
- package/dist/C_Tree.d.ts +1 -0
- package/dist/C_Tree2.cjs +1 -1
- package/dist/C_Tree2.js +1 -1
- package/dist/C_Upload2.cjs +1 -1
- package/dist/C_Upload2.js +1 -1
- package/dist/C_VideoPlayer.d.cts +2 -2
- package/dist/C_VideoPlayer.d.ts +2 -2
- package/dist/C_VideoPlayer2.cjs +2 -2
- package/dist/C_VideoPlayer2.js +2 -2
- package/dist/C_WaterFall.css +31 -29
- package/dist/C_WaterFall2.cjs +1 -1
- package/dist/C_WaterFall2.js +1 -1
- package/dist/C_WorkFlow.css +112 -111
- package/dist/C_WorkFlow2.cjs +1 -1
- package/dist/C_WorkFlow2.js +1 -1
- package/dist/config.cjs +1 -0
- package/dist/config.d.cts +8 -0
- package/dist/config.d.ts +8 -0
- package/dist/config.js +1 -0
- package/dist/constants.d.cts +1 -1
- package/dist/constants.d.ts +1 -1
- package/dist/constants2.d.cts +1 -1
- package/dist/constants2.d.ts +1 -1
- package/dist/constants3.d.cts +32 -9
- package/dist/constants3.d.ts +32 -9
- package/dist/constants4.d.cts +16 -5
- package/dist/constants4.d.ts +16 -5
- package/dist/constants5.d.cts +22 -18
- package/dist/constants5.d.ts +22 -18
- package/dist/data.d.cts +6 -6
- package/dist/data.d.ts +6 -6
- package/dist/dateRange.d.cts +2 -0
- package/dist/dateRange.d.ts +2 -0
- package/dist/feedback.cjs +1 -1
- package/dist/feedback.js +1 -1
- package/dist/helpers.cjs +1 -1
- package/dist/helpers.js +1 -1
- package/dist/index.cjs +1 -1
- package/dist/index.d.cts +7 -6
- package/dist/index.d.ts +8 -6
- package/dist/index.js +1 -1
- package/dist/index.vue.d.cts +5 -5
- package/dist/index.vue.d.ts +5 -5
- package/dist/index10.vue.d.cts +3 -3
- package/dist/index10.vue.d.ts +2 -2
- package/dist/index11.vue.d.cts +2 -2
- package/dist/index11.vue.d.ts +2 -2
- package/dist/index12.vue.d.cts +2 -2
- package/dist/index12.vue.d.ts +3 -3
- package/dist/index13.vue.d.cts +3 -3
- package/dist/index13.vue.d.ts +8 -8
- package/dist/index14.vue.d.cts +8 -8
- package/dist/index14.vue.d.ts +0 -1
- package/dist/index15.vue.d.cts +0 -1
- package/dist/index15.vue.d.ts +1 -1
- package/dist/index16.vue.d.cts +1 -1
- package/dist/index16.vue.d.ts +1 -1
- package/dist/index17.vue.d.cts +1 -1
- package/dist/index17.vue.d.ts +2 -2
- package/dist/index18.vue.d.cts +2 -2
- package/dist/index18.vue.d.ts +44 -40
- package/dist/index19.vue.d.cts +3 -3
- package/dist/index19.vue.d.ts +3 -3
- package/dist/index20.vue.d.cts +3 -3
- package/dist/index20.vue.d.ts +3 -3
- package/dist/index21.vue.d.cts +2 -2
- package/dist/index21.vue.d.ts +2 -2
- package/dist/index25.vue.d.cts +0 -1
- package/dist/index25.vue.d.ts +0 -1
- package/dist/index26.vue.d.cts +3 -3
- package/dist/index26.vue.d.ts +3 -3
- package/dist/index3.vue.d.cts +3 -3
- package/dist/index3.vue.d.ts +3 -3
- package/dist/index4.vue.d.cts +44 -40
- package/dist/index6.vue.d.ts +0 -2
- package/dist/index7.vue.d.cts +0 -2
- package/dist/index8.vue.d.ts +3 -3
- package/dist/index9.vue.d.cts +3 -3
- package/dist/index9.vue.d.ts +3 -3
- package/dist/mapUtils.d.cts +2 -2
- package/dist/mapUtils.d.ts +2 -2
- package/dist/style.css +848 -846
- package/dist/useCalendarEvents.d.cts +1 -1
- package/dist/useCalendarEvents.d.ts +1 -1
- package/dist/useCollapsePanel.d.cts +3 -3
- package/dist/useCollapsePanel.d.ts +3 -3
- package/dist/useComponentLocale.cjs +1 -1
- package/dist/useComponentLocale.js +1 -1
- package/dist/useCropperCore.d.cts +8 -8
- package/dist/useCropperCore.d.ts +8 -8
- package/dist/useDraggableLayout.d.cts +1 -0
- package/dist/useDraggableLayout.d.ts +1 -0
- package/dist/useEdgeInteraction.d.cts +3 -3
- package/dist/useEdgeInteraction.d.ts +3 -3
- package/dist/useFullscreen.d.cts +41 -23
- package/dist/useFullscreen.d.ts +41 -23
- package/dist/useInfiniteScroll.d.cts +7 -5
- package/dist/useInfiniteScroll.d.ts +7 -5
- package/dist/useQRCode.d.cts +4 -4
- package/dist/useQRCode.d.ts +4 -4
- package/dist/useSignatureHistory.d.cts +4 -4
- package/dist/useSignatureHistory.d.ts +4 -4
- package/dist/useSplitResize.d.cts +3 -4
- package/dist/useSplitResize.d.ts +3 -4
- package/dist/useTableQuery.cjs +1 -1
- package/dist/useTableQuery.d.cts +8 -12
- package/dist/useTableQuery.d.ts +8 -12
- package/dist/useTableQuery.js +1 -1
- package/dist/useWorkflowValidation.d.cts +105 -97
- package/dist/useWorkflowValidation.d.ts +105 -97
- package/dist/verification.d.cts +6 -6
- package/dist/verification.d.ts +6 -6
- package/docs/architecture.en.md +3 -1
- package/docs/architecture.md +3 -1
- package/docs/guides/usage.en.md +16 -0
- package/docs/guides/usage.md +56 -0
- package/package.json +27 -10
- package/dist/context.cjs +0 -1
- package/dist/context.js +0 -1
package/dist/C_FormSearch2.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{t as e}from"./density.js";import{t}from"./useComponentLocale.js";import{t as n}from"./feedback.js";import{t as r}from"./export-helper.js";import{t as i}from"./useActionTask.js";import{i as a,t as o}from"./storage.js";import{a as s,t as c}from"./data.js";import{Fragment as l,computed as u,createBlock as d,createCommentVNode as f,createElementBlock as p,createElementVNode as m,createTextVNode as h,createVNode as g,defineComponent as _,getCurrentScope as v,mergeProps as y,nextTick as b,normalizeClass as x,normalizeStyle as S,onMounted as C,onScopeDispose as w,openBlock as T,ref as E,renderList as D,toDisplayString as O,toValue as k,unref as A,watch as j,withCtx as M,withModifiers as N}from"vue";import{NButton as P,NCard as F,NDatePicker as I,NForm as L,NFormItem as R,NIcon as z,NInput as B,NSelect as V,NSpace as H,NTooltip as U}from"naive-ui";function W(e,t,n={}){let r=()=>k(n),i=u(()=>!!r().storageKey),s=t=>e.value.find(e=>e.prop===t),c=()=>{let{storageKey:t}=r();t&&a(t,Object.fromEntries(e.value.filter(e=>e.hisList?.length).map(e=>[e.prop,e.hisList])))},l=()=>{let{storageKey:e}=r();if(!e)return;let t=o(e);t&&(Array.isArray(t)?t.map(e=>[e.prop,e.hisList]):Object.entries(t)).forEach(([e,t])=>{let n=s(e);n&&Array.isArray(t)&&(n.hisList=[...t])})},d=t=>{e.value.forEach(e=>{e.isFocus=!!(e.hisList&&e.prop===t)})},f=e=>{l(),d(e)},p=()=>d(),m=(e,n)=>{s(n)?.type===`input`&&(t.value[n]=e,p())},h=(e,t)=>{let n=s(e);n?.hisList&&(n.hisList.splice(t,1),n.hisList.length===0&&(n.isFocus=!1),c())},g=e=>{let t=s(e);t?.hisList&&(t.hisList=[],t.isFocus=!1,c())},_=(e,t)=>{let n=e.indexOf(t);n>-1&&e.splice(n,1),e.unshift(t);let i=Math.max(1,r().maxItems??5);return e.length>i&&(e.length=i),e};return{enabled:i,handleFocus:f,closeAllPanels:p,selectHistoryItem:m,deleteHistoryItem:h,clearAllHistory:g,saveCurrentInputs:()=>{i.value&&(Object.keys(t.value).forEach(e=>{let n=t.value[e];if(n==null||n===``)return;let r=s(e);if(r?.type!==`input`||!r.hisList)return;let i=String(n).trim();i&&_(r.hisList,i)}),p(),c())},restoreFromStorage:l}}function G(e,t){return e.defaultValue===void 0?e.type===`input`?``:e.type===`select`&&e.attrs?.multiple===!0?[]:e.type===`select`&&e.attrs?.clearable===!1?c(t):null:c(e.defaultValue)}function K(e,t,n){return t??(e.type===`input`?``:e.type===`select`&&e.attrs?.multiple===!0?[]:e.type===`select`&&e.attrs?.clearable===!1?G(e,n):null)}function q(e,r){let a=u(()=>k(r.config)??{}),o=n(()=>a.value.feedback),{t:l}=t(()=>a.value.locale),d=E(null),f=u(()=>a.value.foldThreshold??7),p=u(()=>a.value.requireValue??!0),m=E(c(r.formItemList)),h=E(c(r.formParams)),g=E(!1),_=i(),y=u(()=>_.isRunning(`search`)),x=!0;v()&&w(()=>{x=!1});let S=W(m,h,r.historyOptions),T=u(()=>m.value.filter(e=>e.show!==!1)),D=u(()=>T.value.filter((e,t)=>g.value||t<f.value)),O=u(()=>T.value.length>f.value),A=e=>e==null||e===``||Array.isArray(e)&&e.length===0,M=()=>{let e=h.value;m.value.forEach(t=>{t.isFocus=!1,t.show!==!1&&(t.type===`select`&&!t.placeholder&&(t.placeholder=`请选择`),t.type!==`spacer`&&e[t.prop]===void 0&&(e[t.prop]=G(t,e[t.prop])))})},N=async()=>{try{return await d.value?.validate(),!0}catch{return!1}},P=e=>x&&!k(r.loading)&&s(h.value,e),F=async()=>{let t=c(h.value);if(!await N()||!P(t))return!1;if(p.value&&!Object.entries(t).filter(([e])=>e!==`pageNum`&&e!==`pageSize`).some(([,e])=>!A(e)))return o.warning(l(`search.valueRequired`)),!1;if(S.saveCurrentInputs(),e(`search`,c(t)),!P(t))return!1;if(!a.value.onSearch)return!0;try{return await a.value.onSearch(t),x}catch(e){return x&&o.error(l(`search.failed`),e),!1}},I=async()=>{let e=await _.run(`search`,F,()=>!k(r.loading));return e.executed&&e.value},L=t=>{e(`change-params`,c(t)),e(`update:modelValue`,c(t))},R=()=>{H=!0;let e=++U;b(()=>{e===U&&(H=!1)})},z=()=>{d.value?.restoreValidation();let t=c(h.value),n=t;m.value.forEach(e=>{e.show===!1||e.type===`spacer`||e.prop===`pageNum`||e.prop===`pageSize`||(n[e.prop]=G(e,n[e.prop]))}),R(),h.value=t,L(t),e(`reset`,c(t))},B=()=>{g.value=!g.value},V=(e,t)=>{R(),m.value=c(e),h.value=c(t),M()},H=!1,U=0;return M(),j(h,e=>{H||L(e)},{deep:!0}),C(()=>{S.restoreFromStorage()}),{formRef:d,fields:m,formParams:h,expanded:g,searching:y,visibleFields:D,hasExpandButton:O,history:S,searchFn:I,resetFn:z,toggleFold:B,syncFromProps:V}}const J=e=>{if(Array.isArray(e)&&e.length===2){if(e.every(e=>typeof e==`string`))return{mode:`formatted`,value:[e[0],e[1]]};if(e.every(e=>typeof e==`number`&&Number.isFinite(e)))return{mode:`timestamp`,value:[e[0],e[1]]}}return{mode:`timestamp`,value:null}};function Y(e,t){let n=e?.map(e=>e.value===void 0?e.label??e.labelDefault:e.value),r=Array.isArray(t)?t:[t],i=new Set([...n??[],...r]),a=new Map;for(let e of[!1,!0]){let t=`__c_form_search_boolean_${e}__`;for(;i.has(t);)t+=`_`;a.set(e,t),i.add(t)}let o=e=>typeof e==`boolean`?a.get(e):typeof e==`string`||typeof e==`number`?e:null,s=e=>e===a.get(!1)?!1:e===a.get(!0)?!0:e;return{options:e?.map((e,t)=>({...e,label:e.label??e.labelDefault??``,value:o(n[t])??void 0})),value:Array.isArray(t)?t.map(o).filter(e=>e!==null):o(t),decode:e=>Array.isArray(e)?e.map(s):e===null?null:s(e)}}const X=[`onClick`],ee={class:`history-text`},te={key:0,class:`history-footer`},ne=[`onClick`],re={class:`form-search-item-box form-search-actions`},ie={class:`form-item-input`};var Z=r(_({name:`C_FormSearch`,__name:`index`,props:{bordered:{type:Boolean,default:!0},formItemList:{default:()=>[]},formParams:{default:()=>({})},modelValue:{},formSearchInputHistoryString:{},size:{},loading:{type:Boolean,default:!1},config:{}},emits:[`search`,`reset`,`change-params`,`update:modelValue`],setup(t,{expose:n,emit:r}){let i=t,a=r,o=u(()=>e(i.config?.density)),s=u(()=>i.size??o.value.size),c=u(()=>{if(i.config?.density===void 0)return;let{gap:e,rowGap:t,padding:n}=o.value;return{"--c-search-gap":`${e}px`,"--c-search-row-gap":`${t}px`,"--c-search-padding":`${n}px`}}),{formRef:_,formParams:v,expanded:b,searching:C,visibleFields:w,hasExpandButton:E,history:k,searchFn:W,resetFn:G,toggleFold:Z,syncFromProps:ae}=q(a,{formItemList:i.formItemList,formParams:i.modelValue??i.formParams,config:()=>i.config,loading:()=>i.loading,historyOptions:()=>({storageKey:i.formSearchInputHistoryString,maxItems:i.config?.historyMaxItems})}),Q=u(()=>new Map(w.value.filter(e=>e.type===`select`).map(e=>[e.prop,Y(e.list,v.value[e.prop])]))),oe=e=>{let t=v.value[e];return typeof t==`string`?t:null},se=(e,t)=>{$(e,Q.value.get(e)?.decode(t)??null)},$=(e,t)=>{let n=w.value.find(t=>t.prop===e),r=v.value;n&&(r[e]=K(n,t,r[e]))},ce=e=>{let t=J(v.value[e]);return t.mode===`formatted`?{formattedValue:t.value,"onUpdate:formattedValue":t=>$(e,t)}:{value:t.value,"onUpdate:value":t=>$(e,t)}};return j(()=>[i.formItemList,i.modelValue,i.formParams],([e,t,n])=>ae(e,t??n),{deep:!0}),n({formRef:_,formParams:v,searchFn:W,cleanFn:G,changeFoldState:Z}),(e,n)=>(T(),d(A(F),{class:x([`form-search-card custom-card`,t.config?.density&&`form-search-card--${t.config.density}`]),style:S(c.value),bordered:t.bordered},{default:M(()=>[g(A(L),{class:`form-search`,model:A(v),ref_key:`formRef`,ref:_,size:s.value,onSubmit:N(A(W),[`prevent`])},{default:M(()=>[(T(!0),p(l,null,D(A(w),(e,t)=>(T(),p(`div`,{class:`form-search-item-box`,key:e.prop||t},[e.type===`spacer`?f(`v-if`,!0):(T(),d(A(R),{key:0,class:`form-item-input`,path:e.prop,rule:e.rules,"show-feedback":!1,"show-label":!1},{default:M(()=>[e.type===`input`?(T(),d(A(B),y({key:0,clearable:``,size:s.value,value:oe(e.prop),"onUpdate:value":t=>$(e.prop,t),placeholder:e.placeholder},{ref_for:!0},e.attrs,{onFocus:t=>A(k).handleFocus(e.prop),onBlur:A(k).closeAllPanels}),null,16,[`size`,`value`,`onUpdate:value`,`placeholder`,`onFocus`,`onBlur`])):f(`v-if`,!0),e.isFocus?(T(),p(`div`,{key:1,class:`input-history`,onMousedown:n[0]||=N(()=>{},[`prevent`])},[(T(!0),p(l,null,D(e.hisList,(t,r)=>(T(),p(`div`,{class:`history-item`,onClick:n=>A(k).selectHistoryItem(t,e.prop),key:t},[m(`span`,ee,O(t),1),g(A(z),{class:`delete-icon`,size:`14`,onClick:N(t=>A(k).deleteHistoryItem(e.prop,r),[`stop`])},{default:M(()=>[...n[1]||=[m(`div`,{class:`i-mdi:close`},null,-1)]]),_:1},8,[`onClick`])],8,X))),128)),e.hisList&&e.hisList.length>0?(T(),p(`div`,te,[m(`span`,{class:`clear-all`,onClick:N(t=>A(k).clearAllHistory(e.prop),[`stop`])},` 清空历史记录 `,8,ne)])):f(`v-if`,!0)],32)):f(`v-if`,!0),e.type===`select`?(T(),d(A(V),y({key:2,value:Q.value.get(e.prop)?.value,"onUpdate:value":t=>se(e.prop,t),placeholder:e.placeholder||`请选择`,clearable:``,size:s.value,options:Q.value.get(e.prop)?.options},{ref_for:!0},e.attrs),null,16,[`value`,`onUpdate:value`,`placeholder`,`size`,`options`])):f(`v-if`,!0),e.type===`date-range`?(T(),d(A(I),y({key:3,type:`datetimerange`,size:s.value},{ref_for:!0},{...ce(e.prop),...e.attrs},{format:`yyyy-MM-dd HH:mm`,"value-format":`yyyy-MM-dd HH:mm`,"start-placeholder":`开始时间`,"end-placeholder":`结束时间`,clearable:``}),null,16,[`size`])):f(`v-if`,!0)]),_:2},1032,[`path`,`rule`]))]))),128)),m(`div`,re,[m(`div`,ie,[n[6]||=m(`div`,{class:`button-label-placeholder`},null,-1),g(A(H),{size:t.config?.density?o.value.gap:8},{default:M(()=>[g(A(U),{trigger:`hover`},{trigger:M(()=>[g(A(P),{type:`primary`,size:s.value,"aria-label":`搜索`,onClick:A(W),loading:t.loading||A(C)},{icon:M(()=>[...n[2]||=[m(`div`,{class:`i-mdi:search w-4 h-4`},null,-1)]]),_:1},8,[`size`,`onClick`,`loading`])]),default:M(()=>[n[3]||=h(` 搜索 `,-1)]),_:1}),g(A(U),{trigger:`hover`},{trigger:M(()=>[g(A(P),{size:s.value,"aria-label":`重置`,onClick:A(G)},{icon:M(()=>[...n[4]||=[m(`div`,{class:`i-mdi:refresh w-4 h-4`},null,-1)]]),_:1},8,[`size`,`onClick`])]),default:M(()=>[n[5]||=h(` 重置 `,-1)]),_:1}),A(E)?(T(),d(A(U),{key:0,trigger:`hover`},{trigger:M(()=>[g(A(P),{size:s.value,"aria-label":A(b)?`收起搜索条件`:`展开搜索条件`,"aria-expanded":A(b),onClick:A(Z)},{icon:M(()=>[m(`div`,{class:x(A(b)?`i-mdi:chevron-up w-4 h-4`:`i-mdi:chevron-down w-4 h-4`)},null,2)]),_:1},8,[`size`,`aria-label`,`aria-expanded`,`onClick`])]),default:M(()=>[h(` `+O(A(b)?`收起`:`展开`),1)]),_:1})):f(`v-if`,!0)]),_:1},8,[`size`])])])]),_:1},8,[`model`,`size`,`onSubmit`])]),_:1},8,[`class`,`style`,`bordered`]))}}),[[`__scopeId`,`data-v-af873fa0`]]);export{q as n,W as r,Z as t};
|
|
1
|
+
import{t as e}from"./density.js";import{t}from"./useComponentLocale.js";import{t as n}from"./feedback.js";import{t as r}from"./export-helper.js";import{t as i}from"./useActionTask.js";import{i as a,t as o}from"./storage.js";import{a as s,t as c}from"./data.js";import{Fragment as l,computed as u,createBlock as d,createCommentVNode as f,createElementBlock as p,createElementVNode as m,createTextVNode as h,createVNode as g,defineComponent as _,getCurrentScope as v,mergeProps as y,nextTick as b,normalizeClass as x,normalizeStyle as S,onMounted as C,onScopeDispose as w,openBlock as T,ref as E,renderList as D,toDisplayString as O,toValue as k,unref as A,vShow as j,watch as M,withCtx as N,withDirectives as P,withModifiers as F}from"vue";import{NButton as I,NCard as L,NDatePicker as R,NForm as z,NFormItem as B,NIcon as V,NInput as H,NSelect as U,NSpace as ee,NTooltip as W}from"naive-ui";function G(e,t,n={}){let r=()=>k(n),i=u(()=>!!r().storageKey),s=t=>e.value.find(e=>e.prop===t),c=()=>{let{storageKey:t}=r();t&&a(t,Object.fromEntries(e.value.filter(e=>e.hisList?.length).map(e=>[e.prop,e.hisList])))},l=()=>{let{storageKey:e}=r();if(!e)return;let t=o(e);t&&(Array.isArray(t)?t.map(e=>[e.prop,e.hisList]):Object.entries(t)).forEach(([e,t])=>{let n=s(e);n&&Array.isArray(t)&&(n.hisList=[...t])})},d=t=>{e.value.forEach(e=>{e.isFocus=!!(e.hisList&&e.prop===t)})},f=e=>{l(),d(e)},p=()=>d(),m=(e,n)=>{s(n)?.type===`input`&&(t.value[n]=e,p())},h=(e,t)=>{let n=s(e);n?.hisList&&(n.hisList.splice(t,1),n.hisList.length===0&&(n.isFocus=!1),c())},g=e=>{let t=s(e);t?.hisList&&(t.hisList=[],t.isFocus=!1,c())},_=(e,t)=>{let n=e.indexOf(t);n>-1&&e.splice(n,1),e.unshift(t);let i=Math.max(1,r().maxItems??5);return e.length>i&&(e.length=i),e};return{enabled:i,handleFocus:f,closeAllPanels:p,selectHistoryItem:m,deleteHistoryItem:h,clearAllHistory:g,saveCurrentInputs:()=>{i.value&&(Object.keys(t.value).forEach(e=>{let n=t.value[e];if(n==null||n===``)return;let r=s(e);if(r?.type!==`input`||!r.hisList)return;let i=String(n).trim();i&&_(r.hisList,i)}),p(),c())},restoreFromStorage:l}}function K(e,t){return e.defaultValue===void 0?e.type===`input`?``:e.type===`select`&&e.attrs?.multiple===!0?[]:e.type===`select`&&e.attrs?.clearable===!1?c(t):null:c(e.defaultValue)}function q(e,t,n){return t??(e.type===`input`?``:e.type===`select`&&e.attrs?.multiple===!0?[]:e.type===`select`&&e.attrs?.clearable===!1?K(e,n):null)}function J(e,r){let a=u(()=>k(r.config)??{}),o=n(()=>a.value.feedback),{t:l}=t(()=>a.value.locale),d=E(null),f=u(()=>a.value.foldThreshold??7),p=u(()=>a.value.requireValue??!0),m=E(c(r.formItemList)),h=E(c(r.formParams)),g=E(!1),_=i(),y=u(()=>_.isRunning(`search`)),x=!0;v()&&w(()=>{x=!1});let S=G(m,h,r.historyOptions),T=u(()=>m.value.filter(e=>e.show!==!1)),D=u(()=>T.value.filter((e,t)=>g.value||t<f.value)),O=u(()=>T.value.length>f.value),A=e=>e==null||e===``||Array.isArray(e)&&e.length===0,j=()=>{let e=h.value;m.value.forEach(t=>{t.isFocus=!1,t.show!==!1&&(t.type===`select`&&!t.placeholder&&(t.placeholder=`请选择`),t.type!==`spacer`&&e[t.prop]===void 0&&(e[t.prop]=K(t,e[t.prop])))})},N=async()=>{try{return await d.value?.validate(),!0}catch{return O.value&&(g.value=!0),!1}},P=e=>x&&!k(r.loading)&&s(h.value,e),F=async()=>{let t=c(h.value);if(!await N()||!P(t))return!1;if(p.value&&!Object.entries(t).filter(([e])=>e!==`pageNum`&&e!==`pageSize`).some(([,e])=>!A(e)))return o.warning(l(`search.valueRequired`)),!1;if(S.saveCurrentInputs(),e(`search`,c(t)),!P(t))return!1;if(!a.value.onSearch)return!0;try{return await a.value.onSearch(t),x}catch(e){return x&&o.error(l(`search.failed`),e),!1}},I=async()=>{let e=await _.run(`search`,F,()=>!k(r.loading));return e.executed&&e.value},L=t=>{e(`change-params`,c(t)),e(`update:modelValue`,c(t))},R=()=>{H=!0;let e=++U;b(()=>{e===U&&(H=!1)})},z=()=>{d.value?.restoreValidation();let t=c(h.value),n=t;m.value.forEach(e=>{e.show===!1||e.type===`spacer`||e.prop===`pageNum`||e.prop===`pageSize`||(n[e.prop]=K(e,n[e.prop]))}),R(),h.value=t,L(t),e(`reset`,c(t))},B=()=>{g.value=!g.value},V=(e,t)=>{R(),m.value=c(e),h.value=c(t),j()},H=!1,U=0;return j(),M(h,e=>{H||L(e)},{deep:!0}),C(()=>{S.restoreFromStorage()}),{formRef:d,fields:m,formParams:h,expanded:g,searching:y,visibleFields:D,availableFields:T,foldThreshold:f,hasExpandButton:O,history:S,searchFn:I,resetFn:z,toggleFold:B,syncFromProps:V}}const Y=e=>{if(Array.isArray(e)&&e.length===2){if(e.every(e=>typeof e==`string`))return{mode:`formatted`,value:[e[0],e[1]]};if(e.every(e=>typeof e==`number`&&Number.isFinite(e)))return{mode:`timestamp`,value:[e[0],e[1]]}}return{mode:`timestamp`,value:null}};function te(e,t){let n=e?.map(e=>e.value===void 0?e.label??e.labelDefault:e.value),r=Array.isArray(t)?t:[t],i=new Set([...n??[],...r]),a=new Map;for(let e of[!1,!0]){let t=`__c_form_search_boolean_${e}__`;for(;i.has(t);)t+=`_`;a.set(e,t),i.add(t)}let o=e=>typeof e==`boolean`?a.get(e):typeof e==`string`||typeof e==`number`?e:null,s=e=>e===a.get(!1)?!1:e===a.get(!0)?!0:e;return{options:e?.map((e,t)=>({...e,label:e.label??e.labelDefault??``,value:o(n[t])??void 0})),value:Array.isArray(t)?t.map(o).filter(e=>e!==null):o(t),decode:e=>Array.isArray(e)?e.map(s):e===null?null:s(e)}}const ne=[`onClick`],re={class:`history-text`},ie={key:0,class:`history-footer`},ae=[`onClick`],oe={class:`form-search-item-box form-search-actions`},se={class:`form-item-input`};var X=r(_({name:`C_FormSearch`,__name:`index`,props:{bordered:{type:Boolean,default:!0},formItemList:{default:()=>[]},formParams:{default:()=>({})},modelValue:{},formSearchInputHistoryString:{},size:{},loading:{type:Boolean,default:!1},config:{}},emits:[`search`,`reset`,`change-params`,`update:modelValue`],setup(t,{expose:n,emit:r}){let i=t,a=r,o=u(()=>e(i.config?.density)),s=u(()=>i.size??o.value.size),c=u(()=>{if(i.config?.density===void 0)return;let{gap:e,rowGap:t,padding:n}=o.value;return{"--c-search-gap":`${e}px`,"--c-search-row-gap":`${t}px`,"--c-search-padding":`${n}px`}}),{formRef:_,formParams:v,expanded:b,searching:C,availableFields:w,foldThreshold:E,hasExpandButton:k,history:G,searchFn:K,resetFn:X,toggleFold:Z,syncFromProps:ce}=J(a,{formItemList:i.formItemList,formParams:i.modelValue??i.formParams,config:()=>i.config,loading:()=>i.loading,historyOptions:()=>({storageKey:i.formSearchInputHistoryString,maxItems:i.config?.historyMaxItems})}),Q=u(()=>new Map(w.value.filter(e=>e.type===`select`).map(e=>[e.prop,te(e.list,v.value[e.prop])]))),le=e=>{let t=v.value[e];return typeof t==`string`?t:null},ue=(e,t)=>{$(e,Q.value.get(e)?.decode(t)??null)},$=(e,t)=>{let n=w.value.find(t=>t.prop===e),r=v.value;n&&(r[e]=q(n,t,r[e]))},de=e=>{let t=Y(v.value[e]);return t.mode===`formatted`?{formattedValue:t.value,"onUpdate:formattedValue":t=>$(e,t)}:{value:t.value,"onUpdate:value":t=>$(e,t)}};return M(()=>[i.formItemList,i.modelValue,i.formParams],([e,t,n])=>ce(e,t??n),{deep:!0}),n({formRef:_,formParams:v,searchFn:K,cleanFn:X,changeFoldState:Z}),(e,n)=>(T(),d(A(L),{class:x([`form-search-card custom-card`,t.config?.density&&`form-search-card--${t.config.density}`]),style:S(c.value),bordered:t.bordered},{default:N(()=>[g(A(z),{class:`form-search`,model:A(v),ref_key:`formRef`,ref:_,size:s.value,onSubmit:F(A(K),[`prevent`])},{default:N(()=>[(T(!0),p(l,null,D(A(w),(e,t)=>P((T(),p(`div`,{class:`form-search-item-box`,key:e.prop||t},[e.type===`spacer`?f(`v-if`,!0):(T(),d(A(B),{key:0,class:`form-item-input`,path:e.prop,rule:e.rules,"show-feedback":!1,"show-label":!1},{default:N(()=>[e.type===`input`?(T(),d(A(H),y({key:0,clearable:``,size:s.value,value:le(e.prop),"onUpdate:value":t=>$(e.prop,t),placeholder:e.placeholder},{ref_for:!0},e.attrs,{onFocus:t=>A(G).handleFocus(e.prop),onBlur:A(G).closeAllPanels}),null,16,[`size`,`value`,`onUpdate:value`,`placeholder`,`onFocus`,`onBlur`])):f(`v-if`,!0),e.isFocus?(T(),p(`div`,{key:1,class:`input-history`,onMousedown:n[0]||=F(()=>{},[`prevent`])},[(T(!0),p(l,null,D(e.hisList,(t,r)=>(T(),p(`div`,{class:`history-item`,onClick:n=>A(G).selectHistoryItem(t,e.prop),key:t},[m(`span`,re,O(t),1),g(A(V),{class:`delete-icon`,size:`14`,onClick:F(t=>A(G).deleteHistoryItem(e.prop,r),[`stop`])},{default:N(()=>[...n[1]||=[m(`div`,{class:`i-mdi:close`},null,-1)]]),_:1},8,[`onClick`])],8,ne))),128)),e.hisList&&e.hisList.length>0?(T(),p(`div`,ie,[m(`span`,{class:`clear-all`,onClick:F(t=>A(G).clearAllHistory(e.prop),[`stop`])},` 清空历史记录 `,8,ae)])):f(`v-if`,!0)],32)):f(`v-if`,!0),e.type===`select`?(T(),d(A(U),y({key:2,value:Q.value.get(e.prop)?.value,"onUpdate:value":t=>ue(e.prop,t),placeholder:e.placeholder||`请选择`,clearable:``,size:s.value,options:Q.value.get(e.prop)?.options},{ref_for:!0},e.attrs),null,16,[`value`,`onUpdate:value`,`placeholder`,`size`,`options`])):f(`v-if`,!0),e.type===`date-range`?(T(),d(A(R),y({key:3,type:`datetimerange`,size:s.value},{ref_for:!0},{...de(e.prop),...e.attrs},{format:`yyyy-MM-dd HH:mm`,"value-format":`yyyy-MM-dd HH:mm`,"start-placeholder":`开始时间`,"end-placeholder":`结束时间`,clearable:``}),null,16,[`size`])):f(`v-if`,!0)]),_:2},1032,[`path`,`rule`]))])),[[j,A(b)||t<A(E)]])),128)),m(`div`,oe,[m(`div`,se,[n[6]||=m(`div`,{class:`button-label-placeholder`},null,-1),g(A(ee),{size:t.config?.density?o.value.gap:8},{default:N(()=>[g(A(W),{trigger:`hover`},{trigger:N(()=>[g(A(I),{type:`primary`,size:s.value,"aria-label":`搜索`,onClick:A(K),loading:t.loading||A(C)},{icon:N(()=>[...n[2]||=[m(`div`,{class:`i-mdi:search w-4 h-4`},null,-1)]]),_:1},8,[`size`,`onClick`,`loading`])]),default:N(()=>[n[3]||=h(` 搜索 `,-1)]),_:1}),g(A(W),{trigger:`hover`},{trigger:N(()=>[g(A(I),{size:s.value,"aria-label":`重置`,onClick:A(X)},{icon:N(()=>[...n[4]||=[m(`div`,{class:`i-mdi:refresh w-4 h-4`},null,-1)]]),_:1},8,[`size`,`onClick`])]),default:N(()=>[n[5]||=h(` 重置 `,-1)]),_:1}),A(k)?(T(),d(A(W),{key:0,trigger:`hover`},{trigger:N(()=>[g(A(I),{size:s.value,"aria-label":A(b)?`收起搜索条件`:`展开搜索条件`,"aria-expanded":A(b),onClick:A(Z)},{icon:N(()=>[m(`div`,{class:x(A(b)?`i-mdi:chevron-up w-4 h-4`:`i-mdi:chevron-down w-4 h-4`)},null,2)]),_:1},8,[`size`,`aria-label`,`aria-expanded`,`onClick`])]),default:N(()=>[h(` `+O(A(b)?`收起`:`展开`),1)]),_:1})):f(`v-if`,!0)]),_:1},8,[`size`])])])]),_:1},8,[`model`,`size`,`onSubmit`])]),_:1},8,[`class`,`style`,`bordered`]))}}),[[`__scopeId`,`data-v-da3c9bb6`]]);export{J as n,G as r,X as t};
|
package/dist/C_Language.css
CHANGED
package/dist/C_Language2.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
require(`./chunk.cjs`);const e=require(`./
|
|
1
|
+
require(`./chunk.cjs`);const e=require(`./useComponentLocale.cjs`),t=require(`./C_Icon2.cjs`),n=require(`./export-helper.cjs`);let r=require(`vue`),i=require(`naive-ui`);const a={class:`flex items-center`},o=(0,r.defineComponent)({name:`C_Language`,__name:`index`,props:{modelValue:{default:`zh-cn`},options:{default:()=>[{key:`zh-cn`,label:`简体中文`,iconClass:`mdi:alpha-c`},{key:`en`,label:`English`,iconClass:`mdi:alpha-u`},{key:`ja`,label:`日本語`,iconClass:`mdi:alpha-j`},{key:`ko`,label:`한국어`,iconClass:`mdi:alpha-k`}]},tooltip:{}},emits:[`update:modelValue`,`change`],setup(n,{emit:o}){let{t:s}=e.t(),c=n,l=o,u=(0,r.computed)(()=>c.options.find(e=>e.key===c.modelValue)?.label??c.modelValue),d=(0,r.computed)(()=>`${c.tooltip??s(`language.switch`)} (${u.value})`),f=(0,r.computed)(()=>c.options.map(e=>{let n=e.iconClass;return{key:e.key,label:e.label,icon:n?()=>(0,r.h)(t.t,{name:n,size:16}):void 0}})),p=e=>{e!==c.modelValue&&(l(`update:modelValue`,e),l(`change`,e))};return(e,o)=>((0,r.openBlock)(),(0,r.createBlock)((0,r.unref)(i.NDropdown),{size:`small`,trigger:`hover`,options:f.value,value:n.modelValue,onSelect:p},{default:(0,r.withCtx)(()=>[(0,r.createVNode)((0,r.unref)(i.NButton),{text:``,"aria-label":d.value},{default:(0,r.withCtx)(()=>[(0,r.createElementVNode)(`div`,a,[(0,r.createVNode)(t.t,{name:`mdi:language`,size:18,title:d.value},null,8,[`title`])])]),_:1},8,[`aria-label`])]),_:1},8,[`options`,`value`]))}});var s=n.t(o,[[`__scopeId`,`data-v-e04376a3`]]);Object.defineProperty(exports,`t`,{enumerable:!0,get:function(){return s}});
|
package/dist/C_Language2.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{t as e}from"./C_Icon2.js";import{t}from"./export-helper.js";import{computed as
|
|
1
|
+
import{t as e}from"./useComponentLocale.js";import{t}from"./C_Icon2.js";import{t as n}from"./export-helper.js";import{computed as r,createBlock as i,createElementVNode as a,createVNode as o,defineComponent as s,h as c,openBlock as l,unref as u,withCtx as d}from"vue";import{NButton as f,NDropdown as p}from"naive-ui";const m={class:`flex items-center`};var h=n(s({name:`C_Language`,__name:`index`,props:{modelValue:{default:`zh-cn`},options:{default:()=>[{key:`zh-cn`,label:`简体中文`,iconClass:`mdi:alpha-c`},{key:`en`,label:`English`,iconClass:`mdi:alpha-u`},{key:`ja`,label:`日本語`,iconClass:`mdi:alpha-j`},{key:`ko`,label:`한국어`,iconClass:`mdi:alpha-k`}]},tooltip:{}},emits:[`update:modelValue`,`change`],setup(n,{emit:s}){let{t:h}=e(),g=n,_=s,v=r(()=>g.options.find(e=>e.key===g.modelValue)?.label??g.modelValue),y=r(()=>`${g.tooltip??h(`language.switch`)} (${v.value})`),b=r(()=>g.options.map(e=>{let n=e.iconClass;return{key:e.key,label:e.label,icon:n?()=>c(t,{name:n,size:16}):void 0}})),x=e=>{e!==g.modelValue&&(_(`update:modelValue`,e),_(`change`,e))};return(e,r)=>(l(),i(u(p),{size:`small`,trigger:`hover`,options:b.value,value:n.modelValue,onSelect:x},{default:d(()=>[o(u(f),{text:``,"aria-label":y.value},{default:d(()=>[a(`div`,m,[o(t,{name:`mdi:language`,size:18,title:y.value},null,8,[`title`])])]),_:1},8,[`aria-label`])]),_:1},8,[`options`,`value`]))}}),[[`__scopeId`,`data-v-e04376a3`]]);export{h as t};
|
package/dist/C_Login.css
CHANGED
|
@@ -348,7 +348,7 @@ to {
|
|
|
348
348
|
* }
|
|
349
349
|
*/
|
|
350
350
|
/* ===== CSS 变量默认值(暗色玻璃风格) ===== */
|
|
351
|
-
.c-login-panel[data-v-
|
|
351
|
+
.c-login-panel[data-v-f404fc8e] {
|
|
352
352
|
/* 面板 */
|
|
353
353
|
--cl-panel-bg: rgba(255, 255, 255, 0.1);
|
|
354
354
|
--cl-panel-border: rgba(255, 255, 255, 0.18);
|
|
@@ -397,7 +397,7 @@ to {
|
|
|
397
397
|
}
|
|
398
398
|
|
|
399
399
|
/* ===== 面板容器 ===== */
|
|
400
|
-
.c-login-panel[data-v-
|
|
400
|
+
.c-login-panel[data-v-f404fc8e] {
|
|
401
401
|
width: var(--cl-panel-width);
|
|
402
402
|
background: var(--cl-panel-bg);
|
|
403
403
|
border: 1px solid var(--cl-panel-border);
|
|
@@ -410,7 +410,7 @@ to {
|
|
|
410
410
|
transition: box-shadow 0.3s ease;
|
|
411
411
|
/* 顶部光泽线 */
|
|
412
412
|
}
|
|
413
|
-
.c-login-panel[data-v-
|
|
413
|
+
.c-login-panel[data-v-f404fc8e]::before {
|
|
414
414
|
content: "";
|
|
415
415
|
position: absolute;
|
|
416
416
|
top: 0;
|
|
@@ -420,10 +420,10 @@ to {
|
|
|
420
420
|
background: linear-gradient(90deg, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.45) 50%, rgba(255, 255, 255, 0) 100%);
|
|
421
421
|
pointer-events: none;
|
|
422
422
|
}
|
|
423
|
-
.c-login-panel[data-v-
|
|
423
|
+
.c-login-panel[data-v-f404fc8e] {
|
|
424
424
|
/* 玻璃内衬 */
|
|
425
425
|
}
|
|
426
|
-
.c-login-panel[data-v-
|
|
426
|
+
.c-login-panel[data-v-f404fc8e]::after {
|
|
427
427
|
content: "";
|
|
428
428
|
position: absolute;
|
|
429
429
|
inset: 0;
|
|
@@ -432,19 +432,19 @@ to {
|
|
|
432
432
|
border-radius: inherit;
|
|
433
433
|
z-index: 0;
|
|
434
434
|
}
|
|
435
|
-
.c-login-panel[data-v-
|
|
435
|
+
.c-login-panel[data-v-f404fc8e] > * {
|
|
436
436
|
position: relative;
|
|
437
437
|
z-index: 1;
|
|
438
438
|
}
|
|
439
439
|
|
|
440
440
|
/* ===== Header ===== */
|
|
441
|
-
.c-login__header[data-v-
|
|
441
|
+
.c-login__header[data-v-f404fc8e] {
|
|
442
442
|
text-align: center;
|
|
443
443
|
margin-bottom: 10px;
|
|
444
444
|
}
|
|
445
445
|
|
|
446
446
|
/* ===== 返回按钮(登录/注册下方块级按钮) ===== */
|
|
447
|
-
.c-login__back-btn[data-v-
|
|
447
|
+
.c-login__back-btn[data-v-f404fc8e] {
|
|
448
448
|
margin-top: 10px;
|
|
449
449
|
height: var(--cl-btn-height) !important;
|
|
450
450
|
border-radius: var(--cl-btn-radius) !important;
|
|
@@ -456,41 +456,41 @@ to {
|
|
|
456
456
|
letter-spacing: 2px;
|
|
457
457
|
transition: all 0.25s ease !important;
|
|
458
458
|
}
|
|
459
|
-
.c-login__back-btn[data-v-
|
|
459
|
+
.c-login__back-btn[data-v-f404fc8e]:hover {
|
|
460
460
|
background: rgba(255, 255, 255, 0.06) !important;
|
|
461
461
|
border-color: var(--cl-input-underline-hover) !important;
|
|
462
462
|
color: var(--cl-text-primary) !important;
|
|
463
463
|
}
|
|
464
|
-
.c-login__logo[data-v-
|
|
464
|
+
.c-login__logo[data-v-f404fc8e] {
|
|
465
465
|
display: flex;
|
|
466
466
|
justify-content: center;
|
|
467
467
|
margin-bottom: 4px;
|
|
468
468
|
}
|
|
469
|
-
.c-login__logo .c-login__logo-icon[data-v-
|
|
469
|
+
.c-login__logo .c-login__logo-icon[data-v-f404fc8e] {
|
|
470
470
|
color: var(--cl-text-primary);
|
|
471
471
|
filter: drop-shadow(0 2px 8px rgba(24, 89, 233, 0.4));
|
|
472
472
|
}
|
|
473
|
-
.c-login__title[data-v-
|
|
473
|
+
.c-login__title[data-v-f404fc8e] {
|
|
474
474
|
margin: 0 0 2px;
|
|
475
475
|
font-size: 20px;
|
|
476
476
|
font-weight: 600;
|
|
477
477
|
color: var(--cl-text-primary);
|
|
478
478
|
letter-spacing: 0.5px;
|
|
479
479
|
}
|
|
480
|
-
.c-login__subtitle[data-v-
|
|
480
|
+
.c-login__subtitle[data-v-f404fc8e] {
|
|
481
481
|
margin: 0;
|
|
482
482
|
font-size: 13px;
|
|
483
483
|
color: var(--cl-text-secondary);
|
|
484
484
|
}
|
|
485
485
|
|
|
486
486
|
/* ===== 登录方式切换(底部) ===== */
|
|
487
|
-
.c-login__mode-switch[data-v-
|
|
487
|
+
.c-login__mode-switch[data-v-f404fc8e] {
|
|
488
488
|
margin-top: 14px;
|
|
489
489
|
display: grid;
|
|
490
490
|
grid-template-columns: 1fr 1fr;
|
|
491
491
|
gap: 10px;
|
|
492
492
|
}
|
|
493
|
-
.c-login__mode-btn[data-v-
|
|
493
|
+
.c-login__mode-btn[data-v-f404fc8e] {
|
|
494
494
|
--n-border: none !important;
|
|
495
495
|
--n-border-hover: none !important;
|
|
496
496
|
--n-border-pressed: none !important;
|
|
@@ -503,51 +503,51 @@ to {
|
|
|
503
503
|
color: var(--cl-text-secondary) !important;
|
|
504
504
|
transition: all 0.2s ease !important;
|
|
505
505
|
}
|
|
506
|
-
.c-login__mode-btn[data-v-
|
|
506
|
+
.c-login__mode-btn[data-v-f404fc8e]:hover {
|
|
507
507
|
background: rgba(255, 255, 255, 0.1) !important;
|
|
508
508
|
color: var(--cl-text-primary) !important;
|
|
509
509
|
}
|
|
510
|
-
.c-login__mode-btn.is-active[data-v-
|
|
510
|
+
.c-login__mode-btn.is-active[data-v-f404fc8e] {
|
|
511
511
|
background: color-mix(in srgb, var(--cl-tab-bar) 22%, transparent) !important;
|
|
512
512
|
color: var(--cl-tab-active) !important;
|
|
513
513
|
}
|
|
514
514
|
|
|
515
515
|
/* ===== 表单 ===== */
|
|
516
|
-
.c-login__form[data-v-
|
|
516
|
+
.c-login__form[data-v-f404fc8e] {
|
|
517
517
|
margin-top: 6px;
|
|
518
518
|
}
|
|
519
|
-
.c-login__form-item[data-v-
|
|
519
|
+
.c-login__form-item[data-v-f404fc8e] {
|
|
520
520
|
margin-bottom: 6px !important;
|
|
521
521
|
/* 彻底干掉 NaiveUI FormItem 内置间距 CSS 变量 */
|
|
522
522
|
}
|
|
523
|
-
.c-login__form-item[data-v-
|
|
523
|
+
.c-login__form-item[data-v-f404fc8e] .n-form-item {
|
|
524
524
|
--n-feedback-padding: 2px 0 0 0 !important;
|
|
525
525
|
--n-feedback-height: 0 !important;
|
|
526
526
|
--n-blank-height: 0 !important;
|
|
527
527
|
--n-label-height: 0 !important;
|
|
528
528
|
}
|
|
529
|
-
.c-login__form-item[data-v-
|
|
529
|
+
.c-login__form-item[data-v-f404fc8e] .n-form-item-label {
|
|
530
530
|
display: none;
|
|
531
531
|
}
|
|
532
|
-
.c-login__form-item[data-v-
|
|
532
|
+
.c-login__form-item[data-v-f404fc8e] {
|
|
533
533
|
/* 校验信息减少占用 */
|
|
534
534
|
}
|
|
535
|
-
.c-login__form-item[data-v-
|
|
535
|
+
.c-login__form-item[data-v-f404fc8e] .n-form-item-feedback-wrapper {
|
|
536
536
|
min-height: 0 !important;
|
|
537
537
|
padding-top: 0 !important;
|
|
538
538
|
line-height: 1.4;
|
|
539
539
|
}
|
|
540
|
-
.c-login__form-item[data-v-
|
|
540
|
+
.c-login__form-item[data-v-f404fc8e] .n-form-item-feedback {
|
|
541
541
|
font-size: 11px !important;
|
|
542
542
|
line-height: 1.4;
|
|
543
543
|
}
|
|
544
|
-
.c-login__form-item[data-v-
|
|
544
|
+
.c-login__form-item[data-v-f404fc8e] .n-form-item-blank {
|
|
545
545
|
min-height: 0 !important;
|
|
546
546
|
}
|
|
547
|
-
.c-login__form-item[data-v-
|
|
547
|
+
.c-login__form-item[data-v-f404fc8e] {
|
|
548
548
|
/* 底线风格输入框 */
|
|
549
549
|
}
|
|
550
|
-
.c-login__form-item[data-v-
|
|
550
|
+
.c-login__form-item[data-v-f404fc8e] .n-input {
|
|
551
551
|
--n-border: none !important;
|
|
552
552
|
--n-border-hover: none !important;
|
|
553
553
|
--n-border-focus: none !important;
|
|
@@ -563,58 +563,58 @@ to {
|
|
|
563
563
|
padding: 5px 2px !important;
|
|
564
564
|
transition: border-color 0.25s ease;
|
|
565
565
|
}
|
|
566
|
-
.c-login__form-item[data-v-
|
|
566
|
+
.c-login__form-item[data-v-f404fc8e] .n-input:hover {
|
|
567
567
|
border-bottom-color: var(--cl-input-underline-hover) !important;
|
|
568
568
|
}
|
|
569
|
-
.c-login__form-item[data-v-
|
|
569
|
+
.c-login__form-item[data-v-f404fc8e] .n-input:focus-within {
|
|
570
570
|
border-bottom-color: var(--cl-input-underline-focus) !important;
|
|
571
571
|
}
|
|
572
|
-
.c-login__form-item[data-v-
|
|
572
|
+
.c-login__form-item[data-v-f404fc8e] .n-input .n-input__input-el {
|
|
573
573
|
color: var(--cl-input-text) !important;
|
|
574
574
|
}
|
|
575
|
-
.c-login__form-item[data-v-
|
|
575
|
+
.c-login__form-item[data-v-f404fc8e] .n-input .n-input__input-el::placeholder {
|
|
576
576
|
color: var(--cl-input-placeholder) !important;
|
|
577
577
|
}
|
|
578
|
-
.c-login__form-item[data-v-
|
|
579
|
-
.c-login__form-item[data-v-
|
|
578
|
+
.c-login__form-item[data-v-f404fc8e] .n-input .n-input__prefix,
|
|
579
|
+
.c-login__form-item[data-v-f404fc8e] .n-input .n-input__suffix {
|
|
580
580
|
color: var(--cl-input-icon) !important;
|
|
581
581
|
}
|
|
582
582
|
|
|
583
583
|
/* ===== 辅助行:记住我 + 忘记密码 ===== */
|
|
584
|
-
.c-login__aux-row[data-v-
|
|
584
|
+
.c-login__aux-row[data-v-f404fc8e] {
|
|
585
585
|
display: flex;
|
|
586
586
|
justify-content: space-between;
|
|
587
587
|
align-items: center;
|
|
588
588
|
margin-top: 8px;
|
|
589
589
|
margin-bottom: 14px;
|
|
590
590
|
}
|
|
591
|
-
.c-login__remember[data-v-
|
|
591
|
+
.c-login__remember[data-v-f404fc8e] .n-checkbox__label {
|
|
592
592
|
color: var(--cl-text-secondary) !important;
|
|
593
593
|
font-size: 13px;
|
|
594
594
|
}
|
|
595
|
-
.c-login__remember[data-v-
|
|
595
|
+
.c-login__remember[data-v-f404fc8e] .n-checkbox-box {
|
|
596
596
|
--n-border: 1px solid var(--cl-input-underline) !important;
|
|
597
597
|
}
|
|
598
|
-
.c-login__forgot[data-v-
|
|
598
|
+
.c-login__forgot[data-v-f404fc8e] {
|
|
599
599
|
font-size: 13px;
|
|
600
600
|
color: var(--cl-link-color);
|
|
601
601
|
cursor: pointer;
|
|
602
602
|
transition: color 0.2s ease;
|
|
603
603
|
}
|
|
604
|
-
.c-login__forgot[data-v-
|
|
604
|
+
.c-login__forgot[data-v-f404fc8e]:hover {
|
|
605
605
|
color: var(--cl-link-hover);
|
|
606
606
|
}
|
|
607
607
|
|
|
608
608
|
/* ===== 验证码行 ===== */
|
|
609
|
-
.c-login__code-row[data-v-
|
|
609
|
+
.c-login__code-row[data-v-f404fc8e] {
|
|
610
610
|
display: flex;
|
|
611
611
|
gap: 10px;
|
|
612
612
|
width: 100%;
|
|
613
613
|
}
|
|
614
|
-
.c-login__code-input[data-v-
|
|
614
|
+
.c-login__code-input[data-v-f404fc8e] {
|
|
615
615
|
flex: 1;
|
|
616
616
|
}
|
|
617
|
-
.c-login__send-code-btn[data-v-
|
|
617
|
+
.c-login__send-code-btn[data-v-f404fc8e] {
|
|
618
618
|
flex-shrink: 0;
|
|
619
619
|
white-space: nowrap;
|
|
620
620
|
background: rgba(255, 255, 255, 0.08) !important;
|
|
@@ -624,13 +624,13 @@ to {
|
|
|
624
624
|
font-size: 13px;
|
|
625
625
|
transition: all 0.25s ease;
|
|
626
626
|
}
|
|
627
|
-
.c-login__send-code-btn[data-v-
|
|
627
|
+
.c-login__send-code-btn[data-v-f404fc8e]:not(:disabled):hover {
|
|
628
628
|
background: rgba(255, 255, 255, 0.16) !important;
|
|
629
629
|
color: var(--cl-text-primary) !important;
|
|
630
630
|
}
|
|
631
631
|
|
|
632
632
|
/* ===== 登录按钮 ===== */
|
|
633
|
-
.c-login__submit-btn[data-v-
|
|
633
|
+
.c-login__submit-btn[data-v-f404fc8e] {
|
|
634
634
|
height: var(--cl-btn-height) !important;
|
|
635
635
|
background: var(--cl-btn-bg) !important;
|
|
636
636
|
border: none !important;
|
|
@@ -645,7 +645,7 @@ to {
|
|
|
645
645
|
margin-top: 14px;
|
|
646
646
|
/* 光泽扫过动画 */
|
|
647
647
|
}
|
|
648
|
-
.c-login__submit-btn[data-v-
|
|
648
|
+
.c-login__submit-btn[data-v-f404fc8e]::before {
|
|
649
649
|
content: "";
|
|
650
650
|
position: absolute;
|
|
651
651
|
top: 0;
|
|
@@ -656,34 +656,34 @@ to {
|
|
|
656
656
|
transform: skewX(-25deg);
|
|
657
657
|
transition: left 0.6s ease;
|
|
658
658
|
}
|
|
659
|
-
.c-login__submit-btn[data-v-
|
|
659
|
+
.c-login__submit-btn[data-v-f404fc8e]:not(:disabled):hover {
|
|
660
660
|
background: var(--cl-btn-bg-hover) !important;
|
|
661
661
|
transform: translateY(-1px);
|
|
662
662
|
box-shadow: var(--cl-btn-shadow-hover) !important;
|
|
663
663
|
}
|
|
664
|
-
.c-login__submit-btn[data-v-
|
|
664
|
+
.c-login__submit-btn[data-v-f404fc8e]:not(:disabled):hover::before {
|
|
665
665
|
left: 150%;
|
|
666
666
|
}
|
|
667
|
-
.c-login__submit-btn[data-v-
|
|
667
|
+
.c-login__submit-btn[data-v-f404fc8e]:active {
|
|
668
668
|
transform: translateY(0) !important;
|
|
669
669
|
}
|
|
670
670
|
|
|
671
671
|
/* ===== 人机验证 ===== */
|
|
672
|
-
.c-login__captcha-wrap[data-v-
|
|
672
|
+
.c-login__captcha-wrap[data-v-f404fc8e] {
|
|
673
673
|
margin-top: 10px;
|
|
674
674
|
display: flex;
|
|
675
675
|
justify-content: center;
|
|
676
676
|
}
|
|
677
677
|
|
|
678
678
|
/* ===== 扫码登录面板 ===== */
|
|
679
|
-
.c-login__qr-panel[data-v-
|
|
679
|
+
.c-login__qr-panel[data-v-f404fc8e] {
|
|
680
680
|
display: flex;
|
|
681
681
|
flex-direction: column;
|
|
682
682
|
align-items: center;
|
|
683
683
|
padding: 8px 0 4px;
|
|
684
684
|
gap: 14px;
|
|
685
685
|
}
|
|
686
|
-
.c-login__qr-frame[data-v-
|
|
686
|
+
.c-login__qr-frame[data-v-f404fc8e] {
|
|
687
687
|
position: relative;
|
|
688
688
|
width: 164px;
|
|
689
689
|
height: 164px;
|
|
@@ -692,7 +692,7 @@ to {
|
|
|
692
692
|
background: rgba(0, 0, 0, 0.35);
|
|
693
693
|
box-shadow: 0 0 0 1px rgba(255, 255, 255, 0.08), 0 8px 28px rgba(0, 0, 0, 0.4);
|
|
694
694
|
}
|
|
695
|
-
.c-login__qr-frame .c-login__qr-placeholder[data-v-
|
|
695
|
+
.c-login__qr-frame .c-login__qr-placeholder[data-v-f404fc8e] {
|
|
696
696
|
display: flex;
|
|
697
697
|
align-items: center;
|
|
698
698
|
justify-content: center;
|
|
@@ -702,10 +702,10 @@ to {
|
|
|
702
702
|
font-size: 13px;
|
|
703
703
|
text-align: center;
|
|
704
704
|
}
|
|
705
|
-
.c-login__qr-frame[data-v-
|
|
705
|
+
.c-login__qr-frame[data-v-f404fc8e] {
|
|
706
706
|
/* 扫描动画线 */
|
|
707
707
|
}
|
|
708
|
-
@keyframes qr-scan-
|
|
708
|
+
@keyframes qr-scan-f404fc8e {
|
|
709
709
|
0% {
|
|
710
710
|
transform: translateY(0);
|
|
711
711
|
opacity: 1;
|
|
@@ -721,12 +721,12 @@ to {
|
|
|
721
721
|
}
|
|
722
722
|
|
|
723
723
|
/* C_QRCode 居中在 frame 内 */
|
|
724
|
-
.c-login__qr-frame[data-v-
|
|
724
|
+
.c-login__qr-frame[data-v-f404fc8e] {
|
|
725
725
|
display: flex;
|
|
726
726
|
align-items: center;
|
|
727
727
|
justify-content: center;
|
|
728
728
|
}
|
|
729
|
-
.c-login__qr-scan-line[data-v-
|
|
729
|
+
.c-login__qr-scan-line[data-v-f404fc8e] {
|
|
730
730
|
position: absolute;
|
|
731
731
|
top: 10px;
|
|
732
732
|
left: 10px;
|
|
@@ -735,12 +735,12 @@ to {
|
|
|
735
735
|
background: linear-gradient(90deg, transparent 0%, rgba(24, 89, 233, 0.7) 30%, rgb(100, 160, 255) 50%, rgba(24, 89, 233, 0.7) 70%, transparent 100%);
|
|
736
736
|
border-radius: 1px;
|
|
737
737
|
box-shadow: 0 0 6px rgba(24, 89, 233, 0.8);
|
|
738
|
-
animation: qr-scan-
|
|
738
|
+
animation: qr-scan-f404fc8e 2.4s ease-in-out infinite;
|
|
739
739
|
pointer-events: none;
|
|
740
740
|
}
|
|
741
741
|
|
|
742
742
|
/* 四角刻度装饰 */
|
|
743
|
-
.c-login__qr-corner[data-v-
|
|
743
|
+
.c-login__qr-corner[data-v-f404fc8e] {
|
|
744
744
|
position: absolute;
|
|
745
745
|
width: 14px;
|
|
746
746
|
height: 14px;
|
|
@@ -748,31 +748,31 @@ to {
|
|
|
748
748
|
border-style: solid;
|
|
749
749
|
pointer-events: none;
|
|
750
750
|
}
|
|
751
|
-
.c-login__qr-corner--tl[data-v-
|
|
751
|
+
.c-login__qr-corner--tl[data-v-f404fc8e] {
|
|
752
752
|
top: 6px;
|
|
753
753
|
left: 6px;
|
|
754
754
|
border-width: 2px 0 0 2px;
|
|
755
755
|
border-radius: 3px 0 0 0;
|
|
756
756
|
}
|
|
757
|
-
.c-login__qr-corner--tr[data-v-
|
|
757
|
+
.c-login__qr-corner--tr[data-v-f404fc8e] {
|
|
758
758
|
top: 6px;
|
|
759
759
|
right: 6px;
|
|
760
760
|
border-width: 2px 2px 0 0;
|
|
761
761
|
border-radius: 0 3px 0 0;
|
|
762
762
|
}
|
|
763
|
-
.c-login__qr-corner--bl[data-v-
|
|
763
|
+
.c-login__qr-corner--bl[data-v-f404fc8e] {
|
|
764
764
|
bottom: 6px;
|
|
765
765
|
left: 6px;
|
|
766
766
|
border-width: 0 0 2px 2px;
|
|
767
767
|
border-radius: 0 0 0 3px;
|
|
768
768
|
}
|
|
769
|
-
.c-login__qr-corner--br[data-v-
|
|
769
|
+
.c-login__qr-corner--br[data-v-f404fc8e] {
|
|
770
770
|
bottom: 6px;
|
|
771
771
|
right: 6px;
|
|
772
772
|
border-width: 0 2px 2px 0;
|
|
773
773
|
border-radius: 0 0 3px 0;
|
|
774
774
|
}
|
|
775
|
-
.c-login__qr-hint[data-v-
|
|
775
|
+
.c-login__qr-hint[data-v-f404fc8e] {
|
|
776
776
|
margin: 0;
|
|
777
777
|
display: flex;
|
|
778
778
|
align-items: center;
|
|
@@ -781,22 +781,22 @@ to {
|
|
|
781
781
|
color: var(--cl-text-hint);
|
|
782
782
|
letter-spacing: 0.3px;
|
|
783
783
|
}
|
|
784
|
-
.c-login__qr-refresh[data-v-
|
|
784
|
+
.c-login__qr-refresh[data-v-f404fc8e] {
|
|
785
785
|
color: var(--cl-text-secondary) !important;
|
|
786
786
|
font-size: 11px !important;
|
|
787
787
|
}
|
|
788
|
-
.c-login__qr-refresh[data-v-
|
|
788
|
+
.c-login__qr-refresh[data-v-f404fc8e]:hover {
|
|
789
789
|
color: var(--cl-tab-bar) !important;
|
|
790
790
|
}
|
|
791
791
|
|
|
792
792
|
/* ===== 分割线 ===== */
|
|
793
|
-
.c-login__divider[data-v-
|
|
793
|
+
.c-login__divider[data-v-f404fc8e] {
|
|
794
794
|
margin: 12px 10px 10px !important;
|
|
795
795
|
}
|
|
796
|
-
.c-login__divider[data-v-
|
|
796
|
+
.c-login__divider[data-v-f404fc8e] .n-divider__line {
|
|
797
797
|
background: var(--cl-divider-color) !important;
|
|
798
798
|
}
|
|
799
|
-
.c-login__divider[data-v-
|
|
799
|
+
.c-login__divider[data-v-f404fc8e] .n-divider__title {
|
|
800
800
|
color: var(--cl-text-hint) !important;
|
|
801
801
|
font-size: 12px;
|
|
802
802
|
white-space: nowrap;
|
|
@@ -804,13 +804,13 @@ to {
|
|
|
804
804
|
}
|
|
805
805
|
|
|
806
806
|
/* ===== 社交登录 ===== */
|
|
807
|
-
.c-login__social-row[data-v-
|
|
807
|
+
.c-login__social-row[data-v-f404fc8e] {
|
|
808
808
|
display: flex;
|
|
809
809
|
justify-content: center;
|
|
810
810
|
gap: 14px;
|
|
811
811
|
margin-bottom: 6px;
|
|
812
812
|
}
|
|
813
|
-
.c-login__social-btn[data-v-
|
|
813
|
+
.c-login__social-btn[data-v-f404fc8e] {
|
|
814
814
|
width: var(--cl-social-size) !important;
|
|
815
815
|
height: var(--cl-social-size) !important;
|
|
816
816
|
background: var(--cl-social-btn-bg) !important;
|
|
@@ -818,38 +818,38 @@ to {
|
|
|
818
818
|
color: var(--cl-text-secondary) !important;
|
|
819
819
|
transition: all 0.25s ease !important;
|
|
820
820
|
}
|
|
821
|
-
.c-login__social-btn[data-v-
|
|
821
|
+
.c-login__social-btn[data-v-f404fc8e]:hover {
|
|
822
822
|
background: var(--cl-social-btn-hover-bg) !important;
|
|
823
823
|
color: var(--cl-text-primary) !important;
|
|
824
824
|
transform: translateY(-2px);
|
|
825
825
|
}
|
|
826
826
|
|
|
827
827
|
/* ===== 注册 ===== */
|
|
828
|
-
.c-login__register-row[data-v-
|
|
828
|
+
.c-login__register-row[data-v-f404fc8e] {
|
|
829
829
|
text-align: center;
|
|
830
830
|
margin-top: 14px;
|
|
831
831
|
font-size: 13px;
|
|
832
832
|
}
|
|
833
|
-
.c-login__register-hint[data-v-
|
|
833
|
+
.c-login__register-hint[data-v-f404fc8e] {
|
|
834
834
|
color: var(--cl-text-hint);
|
|
835
835
|
}
|
|
836
|
-
.c-login__register-link[data-v-
|
|
836
|
+
.c-login__register-link[data-v-f404fc8e] {
|
|
837
837
|
color: var(--cl-tab-bar);
|
|
838
838
|
cursor: pointer;
|
|
839
839
|
margin-left: 4px;
|
|
840
840
|
transition: opacity 0.2s ease;
|
|
841
841
|
}
|
|
842
|
-
.c-login__register-link[data-v-
|
|
842
|
+
.c-login__register-link[data-v-f404fc8e]:hover {
|
|
843
843
|
opacity: 0.8;
|
|
844
844
|
}
|
|
845
845
|
|
|
846
846
|
/* ===== 输入图标 ===== */
|
|
847
|
-
.c-login__input-icon[data-v-
|
|
847
|
+
.c-login__input-icon[data-v-f404fc8e] {
|
|
848
848
|
color: var(--cl-input-icon);
|
|
849
849
|
}
|
|
850
850
|
|
|
851
851
|
/* ===== 亮色主题预设(父级加 .c-login--light 类可切换) ===== */
|
|
852
|
-
.c-login--light .c-login-panel[data-v-
|
|
852
|
+
.c-login--light .c-login-panel[data-v-f404fc8e] {
|
|
853
853
|
--cl-panel-bg: rgba(255, 255, 255, 0.96);
|
|
854
854
|
--cl-panel-border: rgba(0, 0, 0, 0.08);
|
|
855
855
|
--cl-panel-shadow: 0 8px 32px rgba(0, 0, 0, 0.1);
|
|
@@ -872,6 +872,6 @@ to {
|
|
|
872
872
|
}
|
|
873
873
|
|
|
874
874
|
/* layer: default */
|
|
875
|
-
.visible[data-v-
|
|
876
|
-
.block[data-v-
|
|
877
|
-
.blur[data-v-
|
|
875
|
+
.visible[data-v-f404fc8e]{visibility:visible;}
|
|
876
|
+
.block[data-v-f404fc8e]{display:block;}
|
|
877
|
+
.blur[data-v-f404fc8e]{--un-blur:blur(8px);filter:var(--un-blur) var(--un-brightness) var(--un-contrast) var(--un-drop-shadow) var(--un-grayscale) var(--un-hue-rotate) var(--un-invert) var(--un-saturate) var(--un-sepia);}
|