@opendesign-plus/composables 0.0.1-rc.7 → 0.0.1-rc.9

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.
Files changed (36) hide show
  1. package/dist/cjs/index.js +1 -0
  2. package/dist/cjs/use-analytics/index.js +1 -0
  3. package/dist/cjs/use-checkbox/index.js +1 -0
  4. package/dist/cjs/use-clipboard/index.js +1 -0
  5. package/dist/cjs/use-locale/index.js +1 -0
  6. package/dist/cjs/use-login-store/index.js +1 -0
  7. package/dist/cjs/use-login-watcher/index.js +1 -0
  8. package/dist/cjs/use-md-render/index.js +1 -0
  9. package/dist/cjs/use-screen/index.js +1 -0
  10. package/dist/cjs/use-theme/index.js +1 -0
  11. package/dist/esm/index.mjs +33 -0
  12. package/dist/esm/use-analytics/index.mjs +115 -0
  13. package/dist/esm/use-checkbox/index.mjs +31 -0
  14. package/dist/esm/use-clipboard/index.mjs +20 -0
  15. package/dist/esm/use-locale/index.mjs +29 -0
  16. package/dist/esm/use-login-store/index.mjs +37 -0
  17. package/dist/esm/use-login-watcher/index.mjs +73 -0
  18. package/dist/esm/use-md-render/index.mjs +58 -0
  19. package/dist/esm/use-screen/index.mjs +154 -0
  20. package/dist/esm/use-theme/index.mjs +43 -0
  21. package/dist/types/index.d.ts +10 -0
  22. package/dist/{login/loginStore.d.ts → types/use-login-store/index.d.ts} +1 -1
  23. package/dist/{core/useTheme.d.ts → types/use-theme/index.d.ts} +5 -5
  24. package/dist/umd/index.umd.js +1 -0
  25. package/package.json +13 -13
  26. package/dist/index.d.ts +0 -8
  27. package/dist/index.js +0 -506
  28. package/dist/index.umd.cjs +0 -1
  29. /package/dist/{analytics/useAnalytics.d.ts → types/use-analytics/index.d.ts} +0 -0
  30. /package/dist/{core/useCheckbox.d.ts → types/use-checkbox/index.d.ts} +0 -0
  31. /package/dist/{core/useClipboard.d.ts → types/use-clipboard/index.d.ts} +0 -0
  32. /package/dist/{core/useLocale.d.ts → types/use-locale/index.d.ts} +0 -0
  33. /package/dist/{core/useLogin.d.ts → types/use-login-watcher/index.d.ts} +0 -0
  34. /package/dist/{core/useMdRender.d.ts → types/use-md-render/index.d.ts} +0 -0
  35. /package/dist/{core/useScreen.d.ts → types/use-screen/index.d.ts} +0 -0
  36. /package/dist/{core/useScrollBottom.d.ts → types/use-scroll-bottom/index.d.ts} +0 -0
@@ -0,0 +1,43 @@
1
+ import { ref as R, computed as l, inject as n } from "vue";
2
+ import k from "js-cookie";
3
+ const I = "[警告] 请在项目中注入主题配置项:app.use(createTheme(options))", S = "[警告] 缺少参数 cookieKey 和 cookieDomain,请在 createTheme 传入 cookieKey 和 cookieDomain 参数", y = Symbol("theme"), T = Symbol("isLight"), v = Symbol("isDark"), D = Symbol("setTheme"), b = Symbol("toggleTheme");
4
+ function N(s) {
5
+ const {
6
+ cookieKey: m,
7
+ cookieDomain: u,
8
+ lightValue: t = "light",
9
+ darkValue: e = "dark",
10
+ attribute: d = "data-o-theme",
11
+ attributeLightValue: E = t,
12
+ attributeDarkValue: L = e,
13
+ classLightValue: h = t,
14
+ classDarkValue: f = e
15
+ } = s || {}, c = R(t), w = l(() => c.value === t), K = l(() => c.value === e), g = l(() => c.value), r = (o, i = !0) => {
16
+ const a = o === e ? e : t;
17
+ c.value = a, !(typeof window > "u") && (a === e ? (document.documentElement.setAttribute(d, L), document.documentElement.classList.add(f), document.documentElement.classList.remove(h)) : (document.documentElement.setAttribute(d, E), document.documentElement.classList.add(h), document.documentElement.classList.remove(f)), i && (m && u ? k.set(m, a, { domain: u }) : console.warn(S)));
18
+ }, p = () => {
19
+ r(g.value === e ? t : e);
20
+ };
21
+ return {
22
+ install(o) {
23
+ if (o.provide(y, g), o.provide(T, w), o.provide(v, K), o.provide(D, r), o.provide(b, p), typeof window > "u")
24
+ return;
25
+ let i;
26
+ m && (i = k.get(m)), i || (i = window.matchMedia("(prefers-color-scheme: dark)").matches ? e : t), r(i === e ? e : t, !1);
27
+ }
28
+ };
29
+ }
30
+ function _() {
31
+ const s = n(y);
32
+ return s || console.warn(I), {
33
+ theme: s,
34
+ isLight: n(T),
35
+ isDark: n(v),
36
+ setTheme: n(D),
37
+ toggleTheme: n(b)
38
+ };
39
+ }
40
+ export {
41
+ N as createTheme,
42
+ _ as useTheme
43
+ };
@@ -0,0 +1,10 @@
1
+ export * from './use-analytics';
2
+ export * from './use-checkbox';
3
+ export * from './use-clipboard';
4
+ export * from './use-locale';
5
+ export * from './use-login-store';
6
+ export * from './use-login-watcher';
7
+ export * from './use-md-render';
8
+ export * from './use-screen';
9
+ export * from './use-scroll-bottom';
10
+ export * from './use-theme';
@@ -1,4 +1,4 @@
1
- import { LOGIN_STATUS } from '../core/useLogin';
1
+ import { LOGIN_STATUS } from '../use-login-watcher';
2
2
  /**
3
3
  * 登录状态 Store
4
4
  */
@@ -29,9 +29,9 @@ export declare function createTheme<ThemeValue = 'dark | light'>(options?: {
29
29
  * @returns 包含当前主题状态和操作方法的对象
30
30
  */
31
31
  export declare function useTheme<ThemeValue = 'dark | light'>(): {
32
- theme: ComputedRef<ThemeValue> | undefined;
33
- isLight: ComputedRef<boolean> | undefined;
34
- isDark: ComputedRef<boolean> | undefined;
35
- setTheme: ((val: ThemeValue) => void) | undefined;
36
- toggleTheme: (() => void) | undefined;
32
+ theme: ComputedRef<ThemeValue>;
33
+ isLight: ComputedRef<boolean>;
34
+ isDark: ComputedRef<boolean>;
35
+ setTheme: (val: ThemeValue) => void;
36
+ toggleTheme: () => void;
37
37
  };
@@ -0,0 +1 @@
1
+ (function(o,F){typeof exports=="object"&&typeof module<"u"?F(exports,require("vue"),require("vue-i18n"),require("@opensig/opendesign"),require("pinia"),require("js-cookie"),require("markdown-it-async"),require("markdown-it-anchor"),require("shiki")):typeof define=="function"&&define.amd?define(["exports","vue","vue-i18n","@opensig/opendesign","pinia","js-cookie","markdown-it-async","markdown-it-anchor","shiki"],F):(o=typeof globalThis<"u"?globalThis:o||self,F(o.OpenDesignPlusComposables={},o.Vue,o.VueI18n,o.OpenDesign,o.Pinia,o.Cookies,o.MarkdownItAsync,o.markdownItAnchor,o.shiki))})(this,(function(o,F,y,j,Q,_,J,Z,b){"use strict";var wu=Object.defineProperty;var vu=(o,F,y)=>F in o?wu(o,F,{enumerable:!0,configurable:!0,writable:!0,value:y}):o[F]=y;var k=(o,F,y)=>vu(o,typeof F!="symbol"?F+"":F,y);class v{constructor(D){k(this,"prev",null);k(this,"next",null);k(this,"data",null);this.data=D}removeSelf(){this.data=null,this.prev&&(this.prev.next=this.next),this.next&&(this.next.prev=this.prev),this.prev=null,this.next=null}}class X{constructor(){k(this,"dummyHead",new v(null))}shift(D){const n=new v(D),e=this.dummyHead.next;return n.prev=this.dummyHead,this.dummyHead.next=n,e&&(n.next=e,e.prev=n),n}remove(D){D.removeSelf()}clear(){let D=this.dummyHead.next;for(;D;){const n=D.next;D.removeSelf(),D=n}this.dummyHead.next=null}}const H=Symbol(),T=Symbol(),x=async(u,...D)=>typeof u=="function"?await u(...D):F.unref(u),S=u=>typeof u=="object"&&u!==null,O=u=>typeof u.event=="string"&&S(u.properties);function R(u,D){let n,e;if(D!=null&&D.catchBubble)n=new X,e=n.shift(async t=>{var s,i;if(S(t))if(t[T]){const E=await x(u);if(!O(E))return;delete t[T];const C={...E,properties:{...E.properties,...t}};(s=window.__OA_REPORT__)==null||s.call(window,C.event,C.properties)}else O(t)&&((i=window.__OA_REPORT__)==null||i.call(window,t.event,t.properties))}),F.provide((D==null?void 0:D.key)??H,n);else if(D!=null&&D.bubble){if(n=F.inject((D==null?void 0:D.key)??H),!n)return;e=n.shift(async t=>{var s,i,E,C;if(S(t))if(t[T]){const A=await x(u);if(!S(A))return;const r={...A,...t};(i=(s=e.next)==null?void 0:s.data)==null||i.call(s,r)}else(C=(E=e.next)==null?void 0:E.data)==null||C.call(E,{...t,[T]:!0})})}else e=t=>{var s;O(t)&&((s=window.__OA_REPORT__)==null||s.call(window,t.event,t.properties))};return F.onUnmounted(()=>{n=null,e instanceof v&&e.removeSelf(),e=null}),e}function uu(u,D,n){if(!F.isRef(u)&&typeof u!="function")return;const e=R(D,n);F.watch(u,async(t,s)=>{var E;const i=await x(D,t,s);e instanceof v?(E=e.data)==null||E.call(e,i):typeof e=="function"&&e(i)})}const $=new WeakSet;function Du(u,D,n,e){const t=F.computed(()=>F.unref(u)),s=R(n,{...e,key:D}),i=async E=>{var A;if(e!=null&&e.bubble&&$.has(E))return;$.add(E);const C=await x(n,E);typeof C=="object"&&C!==null&&(s instanceof v?(A=s.data)==null||A.call(s,C):typeof s=="function"&&s(C))};F.onMounted(()=>{var E;return(E=t.value)==null?void 0:E.addEventListener(D,i)}),F.onBeforeUnmount(()=>{var E;return(E=t.value)==null?void 0:E.removeEventListener(D,i)})}function eu(u,D){R(u,D)}const Fu=(u,D)=>{const n=F.ref([]),e=F.ref(!1),t=F.ref([]),s=F.computed(()=>t.value.length>0),i=[1],E=[],C=()=>{e.value=!1,t.value=i},A=()=>{e.value=!1,t.value=E,n.value=E};return F.watch(()=>t.value.length,r=>{const a=F.toValue(u);a.length!==0&&(r?n.value.length<a.length&&(n.value=a.map(D)):!e.value&&n.value.length>0&&(n.value=E))}),F.watch(()=>n.value.length,r=>{const a=F.toValue(u);a.length!==0&&(r===a.length?(s.value||(t.value=i),e.value=!1):r===0?(s.value&&(t.value=E),e.value=!1):(s.value&&(t.value=E),e.value=!0))}),{checkboxes:n,indeterminate:e,parentCheckbox:t,isCheckedAll:s,clearCheckboxes:A,checkAll:C}};async function tu(u){try{return navigator.clipboard?(await navigator.clipboard.writeText(u),!0):nu(u)}catch{return!1}}function nu(u){const D=document.createElement("textarea");D.value=u,D.style.top="0",D.style.left="0",D.style.width="1px",D.style.height="1px",D.style.position="fixed",D.style.opacity="0",document.body.appendChild(D),D.focus(),D.select();try{const n=document.execCommand("copy");return document.body.removeChild(D),n}catch{return document.body.removeChild(D),!1}}const ou=()=>{const{t:u,locale:D}=y.useI18n(),n=F.getCurrentInstance(),e=F.computed(()=>D.value==="zh"),t=F.computed(()=>D.value==="en");return F.watch(()=>D.value,i=>{j.isClient&&(document.documentElement.lang=i,localStorage.setItem("locale",i))},{immediate:!0}),{t:u,$t:u,locale:D,isZh:e,isEn:t,changeLocale:async i=>{var C;const E=j.isUndefined(i)?e.value?"en":"zh":i;D.value!==E&&(D.value=E,await F.nextTick(),(C=n==null?void 0:n.proxy)!=null&&C.$forceUpdate&&n.proxy.$forceUpdate())}}};var g=(u=>(u[u.FAILED=-1]="FAILED",u[u.NOT=0]="NOT",u[u.DOING=1]="DOING",u[u.DONE=2]="DONE",u))(g||{});const P={CSRF_TOKEN:"_U_T_"},iu=300,Eu=u=>{P.CSRF_TOKEN=u},M=()=>({csrfCookie:_.get(P.CSRF_TOKEN)}),N=()=>{_.remove(P.CSRF_TOKEN)},su=u=>{window.location.href=u},w=u=>{I().setLoginStatus(u)},K=async(u,D=!1)=>{const{csrfCookie:n}=M();if(!(!n||D))try{w(1);const e=await u();if(e!=null&&e.data)return w(2),e.data;w(-1),N();return}catch{w(-1),N();return}},Cu=u=>{window.location.href=u,setTimeout(()=>{w(0)},iu)},Au=(u,D,n,e,t=!1)=>{const s=I();F.watch(()=>e.path,async(i,E)=>{if(i===E||s.isLogined)return;u.some(A=>i.includes(A))?n.value=await K(D,t):K(D,t).then(A=>{n.value=A})},{immediate:!0})},I=Q.defineStore("login",{state:()=>({loginStatus:g.NOT}),actions:{setLoginStatus(u){this.loginStatus=u}},getters:{isLoginFailed(){return this.loginStatus===g.FAILED},isLoginNot(){return this.loginStatus===g.NOT},isLoggingIn(){return this.loginStatus===g.DOING},isLogined(){return this.loginStatus===g.DONE}}});async function cu(u={}){const D=new Set(Object.keys(b.bundledLanguages)),{anchor:n=!0,anchorType:e="vitepress",copy:t=!0,wrapMarkdownBodyDiv:s=!0,theme:i={},...E}=u,C=typeof(i==null?void 0:i.light)=="string"&&i.light in b.bundledThemes?i.light:"light-plus",A=typeof(i==null?void 0:i.dark)=="string"&&i.dark in b.bundledThemes?i.dark:"dark-plus",r=new Set(["text"]);F.onBeforeUnmount(()=>{a&&a.dispose()});const a=await b.createHighlighter({themes:[C,A],langs:["text"]}),l=J({async highlight(B,c){return D.has(c)||(c="text"),r.has(c)||(await a.loadLanguage(c),r.add(c)),a.codeToHtml(B,{lang:c,themes:{light:C,dark:A}})},...E});if(n&&l.use(Z,{slugify:B=>e==="github"?ru(B):au(B)}),t){const B=l.renderer.rules.fence;l.renderer.rules.fence=(...c)=>{var f;const[p,d]=c,h=p[d],m=l.utils.escapeHtml(h.content||"");return`<div class="language-${((f=h.info)==null?void 0:f.trim())||""}"><div class="copy" data-clipboard-text="${m}"></div>`+B(...c)+"</div>"}}if(s){const B=l.render;l.render=(p,d)=>`<div class="markdown-body">${B.call(l,p,d)}</div>`;const c=l.renderInline;l.renderInline=(p,d)=>`<div class="markdown-body">${c.call(l,p,d)}</div>`}return{shiki:a,markdwon:l}}function ru(u){const D=/[\0-\x1F!-,\.\/:-@\[-\^`\{-\xA9\xAB-\xB4\xB6-\xB9\xBB-\xBF\xD7\xF7\u02C2-\u02C5\u02D2-\u02DF\u02E5-\u02EB\u02ED\u02EF-\u02FF\u0375\u0378\u0379\u037E\u0380-\u0385\u0387\u038B\u038D\u03A2\u03F6\u0482\u0530\u0557\u0558\u055A-\u055F\u0589-\u0590\u05BE\u05C0\u05C3\u05C6\u05C8-\u05CF\u05EB-\u05EE\u05F3-\u060F\u061B-\u061F\u066A-\u066D\u06D4\u06DD\u06DE\u06E9\u06FD\u06FE\u0700-\u070F\u074B\u074C\u07B2-\u07BF\u07F6-\u07F9\u07FB\u07FC\u07FE\u07FF\u082E-\u083F\u085C-\u085F\u086B-\u089F\u08B5\u08C8-\u08D2\u08E2\u0964\u0965\u0970\u0984\u098D\u098E\u0991\u0992\u09A9\u09B1\u09B3-\u09B5\u09BA\u09BB\u09C5\u09C6\u09C9\u09CA\u09CF-\u09D6\u09D8-\u09DB\u09DE\u09E4\u09E5\u09F2-\u09FB\u09FD\u09FF\u0A00\u0A04\u0A0B-\u0A0E\u0A11\u0A12\u0A29\u0A31\u0A34\u0A37\u0A3A\u0A3B\u0A3D\u0A43-\u0A46\u0A49\u0A4A\u0A4E-\u0A50\u0A52-\u0A58\u0A5D\u0A5F-\u0A65\u0A76-\u0A80\u0A84\u0A8E\u0A92\u0AA9\u0AB1\u0AB4\u0ABA\u0ABB\u0AC6\u0ACA\u0ACE\u0ACF\u0AD1-\u0ADF\u0AE4\u0AE5\u0AF0-\u0AF8\u0B00\u0B04\u0B0D\u0B0E\u0B11\u0B12\u0B29\u0B31\u0B34\u0B3A\u0B3B\u0B45\u0B46\u0B49\u0B4A\u0B4E-\u0B54\u0B58-\u0B5B\u0B5E\u0B64\u0B65\u0B70\u0B72-\u0B81\u0B84\u0B8B-\u0B8D\u0B91\u0B96-\u0B98\u0B9B\u0B9D\u0BA0-\u0BA2\u0BA5-\u0BA7\u0BAB-\u0BAD\u0BBA-\u0BBD\u0BC3-\u0BC5\u0BC9\u0BCE\u0BCF\u0BD1-\u0BD6\u0BD8-\u0BE5\u0BF0-\u0BFF\u0C0D\u0C11\u0C29\u0C3A-\u0C3C\u0C45\u0C49\u0C4E-\u0C54\u0C57\u0C5B-\u0C5F\u0C64\u0C65\u0C70-\u0C7F\u0C84\u0C8D\u0C91\u0CA9\u0CB4\u0CBA\u0CBB\u0CC5\u0CC9\u0CCE-\u0CD4\u0CD7-\u0CDD\u0CDF\u0CE4\u0CE5\u0CF0\u0CF3-\u0CFF\u0D0D\u0D11\u0D45\u0D49\u0D4F-\u0D53\u0D58-\u0D5E\u0D64\u0D65\u0D70-\u0D79\u0D80\u0D84\u0D97-\u0D99\u0DB2\u0DBC\u0DBE\u0DBF\u0DC7-\u0DC9\u0DCB-\u0DCE\u0DD5\u0DD7\u0DE0-\u0DE5\u0DF0\u0DF1\u0DF4-\u0E00\u0E3B-\u0E3F\u0E4F\u0E5A-\u0E80\u0E83\u0E85\u0E8B\u0EA4\u0EA6\u0EBE\u0EBF\u0EC5\u0EC7\u0ECE\u0ECF\u0EDA\u0EDB\u0EE0-\u0EFF\u0F01-\u0F17\u0F1A-\u0F1F\u0F2A-\u0F34\u0F36\u0F38\u0F3A-\u0F3D\u0F48\u0F6D-\u0F70\u0F85\u0F98\u0FBD-\u0FC5\u0FC7-\u0FFF\u104A-\u104F\u109E\u109F\u10C6\u10C8-\u10CC\u10CE\u10CF\u10FB\u1249\u124E\u124F\u1257\u1259\u125E\u125F\u1289\u128E\u128F\u12B1\u12B6\u12B7\u12BF\u12C1\u12C6\u12C7\u12D7\u1311\u1316\u1317\u135B\u135C\u1360-\u137F\u1390-\u139F\u13F6\u13F7\u13FE-\u1400\u166D\u166E\u1680\u169B-\u169F\u16EB-\u16ED\u16F9-\u16FF\u170D\u1715-\u171F\u1735-\u173F\u1754-\u175F\u176D\u1771\u1774-\u177F\u17D4-\u17D6\u17D8-\u17DB\u17DE\u17DF\u17EA-\u180A\u180E\u180F\u181A-\u181F\u1879-\u187F\u18AB-\u18AF\u18F6-\u18FF\u191F\u192C-\u192F\u193C-\u1945\u196E\u196F\u1975-\u197F\u19AC-\u19AF\u19CA-\u19CF\u19DA-\u19FF\u1A1C-\u1A1F\u1A5F\u1A7D\u1A7E\u1A8A-\u1A8F\u1A9A-\u1AA6\u1AA8-\u1AAF\u1AC1-\u1AFF\u1B4C-\u1B4F\u1B5A-\u1B6A\u1B74-\u1B7F\u1BF4-\u1BFF\u1C38-\u1C3F\u1C4A-\u1C4C\u1C7E\u1C7F\u1C89-\u1C8F\u1CBB\u1CBC\u1CC0-\u1CCF\u1CD3\u1CFB-\u1CFF\u1DFA\u1F16\u1F17\u1F1E\u1F1F\u1F46\u1F47\u1F4E\u1F4F\u1F58\u1F5A\u1F5C\u1F5E\u1F7E\u1F7F\u1FB5\u1FBD\u1FBF-\u1FC1\u1FC5\u1FCD-\u1FCF\u1FD4\u1FD5\u1FDC-\u1FDF\u1FED-\u1FF1\u1FF5\u1FFD-\u203E\u2041-\u2053\u2055-\u2070\u2072-\u207E\u2080-\u208F\u209D-\u20CF\u20F1-\u2101\u2103-\u2106\u2108\u2109\u2114\u2116-\u2118\u211E-\u2123\u2125\u2127\u2129\u212E\u213A\u213B\u2140-\u2144\u214A-\u214D\u214F-\u215F\u2189-\u24B5\u24EA-\u2BFF\u2C2F\u2C5F\u2CE5-\u2CEA\u2CF4-\u2CFF\u2D26\u2D28-\u2D2C\u2D2E\u2D2F\u2D68-\u2D6E\u2D70-\u2D7E\u2D97-\u2D9F\u2DA7\u2DAF\u2DB7\u2DBF\u2DC7\u2DCF\u2DD7\u2DDF\u2E00-\u2E2E\u2E30-\u3004\u3008-\u3020\u3030\u3036\u3037\u303D-\u3040\u3097\u3098\u309B\u309C\u30A0\u30FB\u3100-\u3104\u3130\u318F-\u319F\u31C0-\u31EF\u3200-\u33FF\u4DC0-\u4DFF\u9FFD-\u9FFF\uA48D-\uA4CF\uA4FE\uA4FF\uA60D-\uA60F\uA62C-\uA63F\uA673\uA67E\uA6F2-\uA716\uA720\uA721\uA789\uA78A\uA7C0\uA7C1\uA7CB-\uA7F4\uA828-\uA82B\uA82D-\uA83F\uA874-\uA87F\uA8C6-\uA8CF\uA8DA-\uA8DF\uA8F8-\uA8FA\uA8FC\uA92E\uA92F\uA954-\uA95F\uA97D-\uA97F\uA9C1-\uA9CE\uA9DA-\uA9DF\uA9FF\uAA37-\uAA3F\uAA4E\uAA4F\uAA5A-\uAA5F\uAA77-\uAA79\uAAC3-\uAADA\uAADE\uAADF\uAAF0\uAAF1\uAAF7-\uAB00\uAB07\uAB08\uAB0F\uAB10\uAB17-\uAB1F\uAB27\uAB2F\uAB5B\uAB6A-\uAB6F\uABEB\uABEE\uABEF\uABFA-\uABFF\uD7A4-\uD7AF\uD7C7-\uD7CA\uD7FC-\uD7FF\uE000-\uF8FF\uFA6E\uFA6F\uFADA-\uFAFF\uFB07-\uFB12\uFB18-\uFB1C\uFB29\uFB37\uFB3D\uFB3F\uFB42\uFB45\uFBB2-\uFBD2\uFD3E-\uFD4F\uFD90\uFD91\uFDC8-\uFDEF\uFDFC-\uFDFF\uFE10-\uFE1F\uFE30-\uFE32\uFE35-\uFE4C\uFE50-\uFE6F\uFE75\uFEFD-\uFF0F\uFF1A-\uFF20\uFF3B-\uFF3E\uFF40\uFF5B-\uFF65\uFFBF-\uFFC1\uFFC8\uFFC9\uFFD0\uFFD1\uFFD8\uFFD9\uFFDD-\uFFFF]|\uD800[\uDC0C\uDC27\uDC3B\uDC3E\uDC4E\uDC4F\uDC5E-\uDC7F\uDCFB-\uDD3F\uDD75-\uDDFC\uDDFE-\uDE7F\uDE9D-\uDE9F\uDED1-\uDEDF\uDEE1-\uDEFF\uDF20-\uDF2C\uDF4B-\uDF4F\uDF7B-\uDF7F\uDF9E\uDF9F\uDFC4-\uDFC7\uDFD0\uDFD6-\uDFFF]|\uD801[\uDC9E\uDC9F\uDCAA-\uDCAF\uDCD4-\uDCD7\uDCFC-\uDCFF\uDD28-\uDD2F\uDD64-\uDDFF\uDF37-\uDF3F\uDF56-\uDF5F\uDF68-\uDFFF]|\uD802[\uDC06\uDC07\uDC09\uDC36\uDC39-\uDC3B\uDC3D\uDC3E\uDC56-\uDC5F\uDC77-\uDC7F\uDC9F-\uDCDF\uDCF3\uDCF6-\uDCFF\uDD16-\uDD1F\uDD3A-\uDD7F\uDDB8-\uDDBD\uDDC0-\uDDFF\uDE04\uDE07-\uDE0B\uDE14\uDE18\uDE36\uDE37\uDE3B-\uDE3E\uDE40-\uDE5F\uDE7D-\uDE7F\uDE9D-\uDEBF\uDEC8\uDEE7-\uDEFF\uDF36-\uDF3F\uDF56-\uDF5F\uDF73-\uDF7F\uDF92-\uDFFF]|\uD803[\uDC49-\uDC7F\uDCB3-\uDCBF\uDCF3-\uDCFF\uDD28-\uDD2F\uDD3A-\uDE7F\uDEAA\uDEAD-\uDEAF\uDEB2-\uDEFF\uDF1D-\uDF26\uDF28-\uDF2F\uDF51-\uDFAF\uDFC5-\uDFDF\uDFF7-\uDFFF]|\uD804[\uDC47-\uDC65\uDC70-\uDC7E\uDCBB-\uDCCF\uDCE9-\uDCEF\uDCFA-\uDCFF\uDD35\uDD40-\uDD43\uDD48-\uDD4F\uDD74\uDD75\uDD77-\uDD7F\uDDC5-\uDDC8\uDDCD\uDDDB\uDDDD-\uDDFF\uDE12\uDE38-\uDE3D\uDE3F-\uDE7F\uDE87\uDE89\uDE8E\uDE9E\uDEA9-\uDEAF\uDEEB-\uDEEF\uDEFA-\uDEFF\uDF04\uDF0D\uDF0E\uDF11\uDF12\uDF29\uDF31\uDF34\uDF3A\uDF45\uDF46\uDF49\uDF4A\uDF4E\uDF4F\uDF51-\uDF56\uDF58-\uDF5C\uDF64\uDF65\uDF6D-\uDF6F\uDF75-\uDFFF]|\uD805[\uDC4B-\uDC4F\uDC5A-\uDC5D\uDC62-\uDC7F\uDCC6\uDCC8-\uDCCF\uDCDA-\uDD7F\uDDB6\uDDB7\uDDC1-\uDDD7\uDDDE-\uDDFF\uDE41-\uDE43\uDE45-\uDE4F\uDE5A-\uDE7F\uDEB9-\uDEBF\uDECA-\uDEFF\uDF1B\uDF1C\uDF2C-\uDF2F\uDF3A-\uDFFF]|\uD806[\uDC3B-\uDC9F\uDCEA-\uDCFE\uDD07\uDD08\uDD0A\uDD0B\uDD14\uDD17\uDD36\uDD39\uDD3A\uDD44-\uDD4F\uDD5A-\uDD9F\uDDA8\uDDA9\uDDD8\uDDD9\uDDE2\uDDE5-\uDDFF\uDE3F-\uDE46\uDE48-\uDE4F\uDE9A-\uDE9C\uDE9E-\uDEBF\uDEF9-\uDFFF]|\uD807[\uDC09\uDC37\uDC41-\uDC4F\uDC5A-\uDC71\uDC90\uDC91\uDCA8\uDCB7-\uDCFF\uDD07\uDD0A\uDD37-\uDD39\uDD3B\uDD3E\uDD48-\uDD4F\uDD5A-\uDD5F\uDD66\uDD69\uDD8F\uDD92\uDD99-\uDD9F\uDDAA-\uDEDF\uDEF7-\uDFAF\uDFB1-\uDFFF]|\uD808[\uDF9A-\uDFFF]|\uD809[\uDC6F-\uDC7F\uDD44-\uDFFF]|[\uD80A\uD80B\uD80E-\uD810\uD812-\uD819\uD824-\uD82B\uD82D\uD82E\uD830-\uD833\uD837\uD839\uD83D\uD83F\uD87B-\uD87D\uD87F\uD885-\uDB3F\uDB41-\uDBFF][\uDC00-\uDFFF]|\uD80D[\uDC2F-\uDFFF]|\uD811[\uDE47-\uDFFF]|\uD81A[\uDE39-\uDE3F\uDE5F\uDE6A-\uDECF\uDEEE\uDEEF\uDEF5-\uDEFF\uDF37-\uDF3F\uDF44-\uDF4F\uDF5A-\uDF62\uDF78-\uDF7C\uDF90-\uDFFF]|\uD81B[\uDC00-\uDE3F\uDE80-\uDEFF\uDF4B-\uDF4E\uDF88-\uDF8E\uDFA0-\uDFDF\uDFE2\uDFE5-\uDFEF\uDFF2-\uDFFF]|\uD821[\uDFF8-\uDFFF]|\uD823[\uDCD6-\uDCFF\uDD09-\uDFFF]|\uD82C[\uDD1F-\uDD4F\uDD53-\uDD63\uDD68-\uDD6F\uDEFC-\uDFFF]|\uD82F[\uDC6B-\uDC6F\uDC7D-\uDC7F\uDC89-\uDC8F\uDC9A-\uDC9C\uDC9F-\uDFFF]|\uD834[\uDC00-\uDD64\uDD6A-\uDD6C\uDD73-\uDD7A\uDD83\uDD84\uDD8C-\uDDA9\uDDAE-\uDE41\uDE45-\uDFFF]|\uD835[\uDC55\uDC9D\uDCA0\uDCA1\uDCA3\uDCA4\uDCA7\uDCA8\uDCAD\uDCBA\uDCBC\uDCC4\uDD06\uDD0B\uDD0C\uDD15\uDD1D\uDD3A\uDD3F\uDD45\uDD47-\uDD49\uDD51\uDEA6\uDEA7\uDEC1\uDEDB\uDEFB\uDF15\uDF35\uDF4F\uDF6F\uDF89\uDFA9\uDFC3\uDFCC\uDFCD]|\uD836[\uDC00-\uDDFF\uDE37-\uDE3A\uDE6D-\uDE74\uDE76-\uDE83\uDE85-\uDE9A\uDEA0\uDEB0-\uDFFF]|\uD838[\uDC07\uDC19\uDC1A\uDC22\uDC25\uDC2B-\uDCFF\uDD2D-\uDD2F\uDD3E\uDD3F\uDD4A-\uDD4D\uDD4F-\uDEBF\uDEFA-\uDFFF]|\uD83A[\uDCC5-\uDCCF\uDCD7-\uDCFF\uDD4C-\uDD4F\uDD5A-\uDFFF]|\uD83B[\uDC00-\uDDFF\uDE04\uDE20\uDE23\uDE25\uDE26\uDE28\uDE33\uDE38\uDE3A\uDE3C-\uDE41\uDE43-\uDE46\uDE48\uDE4A\uDE4C\uDE50\uDE53\uDE55\uDE56\uDE58\uDE5A\uDE5C\uDE5E\uDE60\uDE63\uDE65\uDE66\uDE6B\uDE73\uDE78\uDE7D\uDE7F\uDE8A\uDE9C-\uDEA0\uDEA4\uDEAA\uDEBC-\uDFFF]|\uD83C[\uDC00-\uDD2F\uDD4A-\uDD4F\uDD6A-\uDD6F\uDD8A-\uDFFF]|\uD83E[\uDC00-\uDFEF\uDFFA-\uDFFF]|\uD869[\uDEDE-\uDEFF]|\uD86D[\uDF35-\uDF3F]|\uD86E[\uDC1E\uDC1F]|\uD873[\uDEA2-\uDEAF]|\uD87A[\uDFE1-\uDFFF]|\uD87E[\uDE1E-\uDFFF]|\uD884[\uDF4B-\uDFFF]|\uDB40[\uDC00-\uDCFF\uDDF0-\uDFFF]/g;return`user-content-${u.toLowerCase().replace(D,"").replace(/ /g,"-")}`}function au(u){return u.normalize("NFKD").replace(/[\u0300-\u036F]/g,"").replace(/[\u0000-\u001f]/g,"").replace(/[\s~`!@#$%^&*()\-_+=[\]{}|\\;:"'“”‘’<>,.?/]+/g,"-").replace(/-{2,}/g,"-").replace(/^-+|-+$/g,"").replace(/^(\d)/,"_$1").toLowerCase()}var q=(u=>(u.Phone="phone",u.PadV="pad_v",u.PadH="pad_h",u.Laptop="laptop",u))(q||{});const L={phone:600,pad_v:840,pad_h:1200,laptop:1680},lu={lt:(u,D)=>u<D,le:(u,D)=>u<=D,eq:(u,D)=>u===D,ne:(u,D)=>u!==D,ge:(u,D)=>u>=D,gt:(u,D)=>u>D},du=()=>{const u=F.reactive({width:1680,height:0}),D=F.ref("laptop"),n=f=>(typeof f>"u"&&(f=u.width),f<L.phone?"phone":f<L.pad_v?"pad_v":f<L.pad_h?"pad_h":"laptop"),e=(f="eq",V)=>{const pu=u.width,gu=L[V],yu=lu[f];return yu(pu,gu)},t=F.computed(()=>e("le","phone")),s=F.computed(()=>e("gt","phone")),i=F.computed(()=>e("gt","phone")&&e("le","pad_h")),E=F.computed(()=>e("le","pad_h")),C=F.computed(()=>e("gt","pad_h")),A=F.computed(()=>e("gt","phone")&&e("le","pad_v")),r=F.computed(()=>e("le","pad_v")),a=F.computed(()=>e("gt","pad_v")),l=F.computed(()=>e("gt","pad_v")&&e("le","pad_h")),B=F.computed(()=>e("gt","pad_h")&&e("le","laptop")),c=F.computed(()=>e("le","laptop")),p=F.computed(()=>e("gt","laptop")),d=F.computed(()=>e("gt","phone")&&e("le","laptop")),h=F.computed(()=>e("gt","pad_v")&&e("le","laptop")),m=()=>{const{innerWidth:f,innerHeight:V}=window;u.width=f,u.height=V,D.value=n()};return F.onMounted(()=>{typeof window<"u"&&(window.addEventListener("resize",m),m(),F.nextTick(()=>m()))}),F.onUnmounted(()=>{typeof window<"u"&&window.removeEventListener("resize",m)}),{getSize:n,current:D,size:u,isPhone:t,gtPhone:s,isPad:i,lePad:E,gtPad:C,isPadV:A,lePadV:r,gtPadV:a,isPadH:l,isLaptop:B,leLaptop:c,gtLaptop:p,isPadToLaptop:d,isPadVToLaptop:h}},Bu="[警告] 请在项目中注入主题配置项:app.use(createTheme(options))",fu="[警告] 缺少参数 cookieKey 和 cookieDomain,请在 createTheme 传入 cookieKey 和 cookieDomain 参数",U=Symbol("theme"),W=Symbol("isLight"),z=Symbol("isDark"),Y=Symbol("setTheme"),G=Symbol("toggleTheme");function hu(u){const{cookieKey:D,cookieDomain:n,lightValue:e="light",darkValue:t="dark",attribute:s="data-o-theme",attributeLightValue:i=e,attributeDarkValue:E=t,classLightValue:C=e,classDarkValue:A=t}=u||{},r=F.ref(e),a=F.computed(()=>r.value===e),l=F.computed(()=>r.value===t),B=F.computed(()=>r.value),c=(d,h=!0)=>{const m=d===t?t:e;r.value=m,!(typeof window>"u")&&(m===t?(document.documentElement.setAttribute(s,E),document.documentElement.classList.add(A),document.documentElement.classList.remove(C)):(document.documentElement.setAttribute(s,i),document.documentElement.classList.add(C),document.documentElement.classList.remove(A)),h&&(D&&n?_.set(D,m,{domain:n}):console.warn(fu)))},p=()=>{c(B.value===t?e:t)};return{install(d){if(d.provide(U,B),d.provide(W,a),d.provide(z,l),d.provide(Y,c),d.provide(G,p),typeof window>"u")return;let h;D&&(h=_.get(D)),h||(h=window.matchMedia("(prefers-color-scheme: dark)").matches?t:e),c(h===t?t:e,!1)}}}function mu(){const u=F.inject(U);return u||console.warn(Bu),{theme:u,isLight:F.inject(W),isDark:F.inject(z),setTheme:F.inject(Y),toggleTheme:F.inject(G)}}o.LOGIN_STATUS=g,o.ScreenConfig=L,o.Size=q,o.clearUserAuth=N,o.createTheme=hu,o.doLogin=su,o.doLogout=Cu,o.getUserAuth=M,o.setLoginKeys=Eu,o.setStatus=w,o.tryLogin=K,o.useAnalytics=eu,o.useCheckbox=Fu,o.useClipboard=tu,o.useElementEventAnalytics=Du,o.useLocale=ou,o.useLoginStore=I,o.useLoginWatcher=Au,o.useMdRender=cu,o.useScreen=du,o.useTheme=mu,o.useWatchAnalytics=uu,Object.defineProperty(o,Symbol.toStringTag,{value:"Module"})}));
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@opendesign-plus/composables",
3
- "version": "0.0.1-rc.7",
3
+ "version": "0.0.1-rc.9",
4
4
  "type": "module",
5
5
  "publishConfig": {
6
6
  "access": "public",
@@ -9,24 +9,24 @@
9
9
  "files": [
10
10
  "dist"
11
11
  ],
12
- "main": "./dist/index.umd.cjs",
13
- "module": "./dist/index.js",
14
- "types": "./dist/index.d.ts",
12
+ "sideEffects": false,
13
+ "main": "./dist/cjs/index.js",
14
+ "module": "./dist/esm/index.mjs",
15
+ "types": "./dist/types/index.d.ts",
15
16
  "exports": {
16
- "types": "./dist/index.d.ts",
17
- "import": "./dist/index.js",
18
- "require": "./dist/index.umd.cjs"
17
+ "types": "./dist/types/index.d.ts",
18
+ "import": "./dist/esm/index.mjs",
19
+ "require": "./dist/cjs/index.js"
19
20
  },
20
- "dependencies": {
21
- "@opensig/opendesign": "1.0.2",
21
+ "peerDependencies": {
22
+ "pinia": "^3.0.3",
23
+ "@opensig/opendesign": "1.2.3-sp1",
22
24
  "@vueuse/core": "^14.0.0",
23
25
  "markdown-it-async": "^2.2.0",
24
26
  "markdown-it-anchor": "^9.2.0",
25
27
  "shiki": "^3.7.0",
26
- "js-cookie": "3.0.5"
27
- },
28
- "peerDependencies": {
29
- "pinia": "^3.0.3"
28
+ "js-cookie": "3.0.7",
29
+ "vue-i18n": "9.14.5"
30
30
  },
31
31
  "devDependencies": {
32
32
  "sass": "^1.71.1",
package/dist/index.d.ts DELETED
@@ -1,8 +0,0 @@
1
- export * from './core/useMdRender';
2
- export * from './core/useScreen';
3
- export * from './core/useLocale';
4
- export * from './core/useTheme';
5
- export * from './core/useClipboard';
6
- export * from './analytics/useAnalytics';
7
- export * from './core/useLogin';
8
- export * from './login/loginStore';