windows-font-manager 0.1.3__tar.gz

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 (31) hide show
  1. windows_font_manager-0.1.3/MANIFEST.in +1 -0
  2. windows_font_manager-0.1.3/PKG-INFO +22 -0
  3. windows_font_manager-0.1.3/build_hook.py +29 -0
  4. windows_font_manager-0.1.3/pyproject.toml +50 -0
  5. windows_font_manager-0.1.3/setup.cfg +4 -0
  6. windows_font_manager-0.1.3/windows_font_manager/__init__.py +1 -0
  7. windows_font_manager-0.1.3/windows_font_manager/__main__.py +30 -0
  8. windows_font_manager-0.1.3/windows_font_manager/file_watch.py +29 -0
  9. windows_font_manager-0.1.3/windows_font_manager/font.py +35 -0
  10. windows_font_manager-0.1.3/windows_font_manager/static/assets/About-PU3NLH2h.js +1 -0
  11. windows_font_manager-0.1.3/windows_font_manager/static/assets/Card-DZFbz07B.js +87 -0
  12. windows_font_manager-0.1.3/windows_font_manager/static/assets/Close-ChnBNDFL.js +45 -0
  13. windows_font_manager-0.1.3/windows_font_manager/static/assets/ListItem-DL4ge8n8.js +143 -0
  14. windows_font_manager-0.1.3/windows_font_manager/static/assets/Log-CxkSv56a.css +1 -0
  15. windows_font_manager-0.1.3/windows_font_manager/static/assets/Log-p8L4BQR-.js +30 -0
  16. windows_font_manager-0.1.3/windows_font_manager/static/assets/Manager-BVuL0jCu.js +1802 -0
  17. windows_font_manager-0.1.3/windows_font_manager/static/assets/Manager-Cn5tg_CP.css +1 -0
  18. windows_font_manager-0.1.3/windows_font_manager/static/assets/Setting-BlYR7NRI.js +102 -0
  19. windows_font_manager-0.1.3/windows_font_manager/static/assets/Space-CUzDdZ7B.js +1 -0
  20. windows_font_manager-0.1.3/windows_font_manager/static/assets/index-Dzy7d-6O.css +1 -0
  21. windows_font_manager-0.1.3/windows_font_manager/static/assets/index-bF5zRBEa.js +807 -0
  22. windows_font_manager-0.1.3/windows_font_manager/static/favicon.ico +0 -0
  23. windows_font_manager-0.1.3/windows_font_manager/static/index.html +17 -0
  24. windows_font_manager-0.1.3/windows_font_manager/web/msg.py +120 -0
  25. windows_font_manager-0.1.3/windows_font_manager/web/server.py +69 -0
  26. windows_font_manager-0.1.3/windows_font_manager.egg-info/PKG-INFO +22 -0
  27. windows_font_manager-0.1.3/windows_font_manager.egg-info/SOURCES.txt +29 -0
  28. windows_font_manager-0.1.3/windows_font_manager.egg-info/dependency_links.txt +1 -0
  29. windows_font_manager-0.1.3/windows_font_manager.egg-info/entry_points.txt +2 -0
  30. windows_font_manager-0.1.3/windows_font_manager.egg-info/requires.txt +4 -0
  31. windows_font_manager-0.1.3/windows_font_manager.egg-info/top_level.txt +1 -0
@@ -0,0 +1 @@
1
+ include build_hook.py
@@ -0,0 +1,22 @@
1
+ Metadata-Version: 2.4
2
+ Name: windows_font_manager
3
+ Version: 0.1.3
4
+ Author: op200
5
+ License-Expression: AGPL-3.0-or-later
6
+ Project-URL: Homepage, https://github.com/op200/windows_font_manager
7
+ Project-URL: Source, https://github.com/op200/windows_font_manager
8
+ Classifier: Development Status :: 3 - Alpha
9
+ Classifier: Programming Language :: Python :: 3.12
10
+ Classifier: Programming Language :: Python :: 3.13
11
+ Classifier: Programming Language :: Python :: 3.14
12
+ Classifier: Operating System :: Microsoft :: Windows :: Windows 10
13
+ Classifier: Operating System :: Microsoft :: Windows :: Windows 11
14
+ Classifier: Intended Audience :: Developers
15
+ Classifier: Intended Audience :: End Users/Desktop
16
+ Classifier: Typing :: Typed
17
+ Requires-Python: >=3.12
18
+ Description-Content-Type: text/markdown
19
+ Requires-Dist: fastapi>=0.124.0
20
+ Requires-Dist: uvicorn>=0.38.0
21
+ Requires-Dist: easyrip>=4.7.0
22
+ Requires-Dist: watchdog>=6.0.0
@@ -0,0 +1,29 @@
1
+ import os
2
+ from pathlib import Path
3
+
4
+ from setuptools.command.build import build
5
+
6
+ DIR = "windows-font-manager-webui"
7
+ PNPM_HEAD = f"pnpm --dir ./{DIR}"
8
+
9
+
10
+ def run_pnpm() -> None:
11
+ for param in (
12
+ "i --frozen-lockfile",
13
+ "build",
14
+ ):
15
+ cmd = f"{PNPM_HEAD} {param}"
16
+ print(f"run: {cmd}")
17
+ if os.system(cmd):
18
+ raise RuntimeError(f"{cmd} error")
19
+
20
+
21
+ class Build(build):
22
+ def run(self) -> None:
23
+ if not Path(DIR).is_dir():
24
+ print(f'The dir "{DIR}" not found, do not run pnpm')
25
+ return
26
+
27
+ run_pnpm()
28
+
29
+ super().run()
@@ -0,0 +1,50 @@
1
+ [build-system]
2
+ requires = [
3
+ "setuptools>=80",
4
+ #
5
+ ]
6
+
7
+ [project]
8
+ name = "windows_font_manager"
9
+ dynamic = ["version"]
10
+ readme = "README.md"
11
+ license = "AGPL-3.0-or-later"
12
+ classifiers = [
13
+ "Development Status :: 3 - Alpha",
14
+ "Programming Language :: Python :: 3.12",
15
+ "Programming Language :: Python :: 3.13",
16
+ "Programming Language :: Python :: 3.14",
17
+ "Operating System :: Microsoft :: Windows :: Windows 10",
18
+ "Operating System :: Microsoft :: Windows :: Windows 11",
19
+ "Intended Audience :: Developers",
20
+ "Intended Audience :: End Users/Desktop",
21
+ "Typing :: Typed",
22
+ ]
23
+ requires-python = ">=3.12"
24
+ dependencies = [
25
+ "fastapi>=0.124.0",
26
+ "uvicorn>=0.38.0",
27
+ "easyrip>=4.7.0",
28
+ "watchdog>=6.0.0",
29
+ #
30
+ ]
31
+ authors = [{ name = "op200" }]
32
+
33
+ [project.urls]
34
+ Homepage = "https://github.com/op200/windows_font_manager"
35
+ Source = "https://github.com/op200/windows_font_manager"
36
+
37
+ [project.scripts]
38
+ windows_font_manager = "windows_font_manager.__main__:run"
39
+
40
+ [tool.setuptools.dynamic]
41
+ version = { attr = "windows_font_manager.__version__" }
42
+
43
+ [tool.setuptools.package-dir]
44
+ windows_font_manager = "windows_font_manager"
45
+
46
+ [tool.setuptools.package-data]
47
+ windows_font_manager = ["static/**/*"]
48
+
49
+ [tool.setuptools.cmdclass]
50
+ build = "build_hook.Build"
@@ -0,0 +1,4 @@
1
+ [egg_info]
2
+ tag_build =
3
+ tag_date = 0
4
+
@@ -0,0 +1 @@
1
+ __version__ = "0.1.3"
@@ -0,0 +1,30 @@
1
+ import asyncio
2
+ import os
3
+
4
+ from easyrip import log
5
+
6
+ from .file_watch import start_file_watch
7
+ from .font import font_data
8
+ from .web import server
9
+
10
+
11
+ async def main():
12
+ WIN_FONT_PATHS: tuple[str, ...] = (
13
+ os.path.join(os.environ["SYSTEMROOT"], "Fonts"),
14
+ os.path.join(os.environ["LOCALAPPDATA"], "Microsoft/Windows/Fonts"),
15
+ )
16
+
17
+ log.write_level = log.LogLevel.none
18
+ log.init()
19
+
20
+ font_data.add_font_data_dir(*WIN_FONT_PATHS)
21
+
22
+ await asyncio.gather(server.run(), start_file_watch(*WIN_FONT_PATHS))
23
+
24
+
25
+ def run():
26
+ asyncio.run(main())
27
+
28
+
29
+ if __name__ == "__main__":
30
+ run()
@@ -0,0 +1,29 @@
1
+ import asyncio
2
+ import json
3
+ from typing import override
4
+
5
+ from easyrip import log
6
+ from watchdog.events import FileSystemEvent, FileSystemEventHandler
7
+ from watchdog.observers import Observer
8
+
9
+ from .font import font_data
10
+ from .web.msg import process_msg, push_msg
11
+
12
+
13
+ class File_watch(FileSystemEventHandler):
14
+ @override
15
+ def on_any_event(self, event: FileSystemEvent) -> None:
16
+ log.info(
17
+ f'File watch: {event.event_type}: "{event.src_path}"{f' -> "{event.dest_path}"' if event.dest_path else ""}',
18
+ is_format=False,
19
+ )
20
+ font_data.refresh_font_data_dict()
21
+ asyncio.run(push_msg(asyncio.run(process_msg(json.dumps({"get_fonts": ""})))))
22
+
23
+
24
+ async def start_file_watch(*paths: str):
25
+ observer = Observer()
26
+ for path in paths:
27
+ observer.schedule(File_watch(), path, recursive=True)
28
+ observer.start()
29
+ return observer
@@ -0,0 +1,35 @@
1
+ from easyrip import log
2
+ from easyrip.ripper.sub_and_font.font import Font, load_fonts
3
+
4
+
5
+ class font_data:
6
+ font_data_dict: dict[str, list[Font]] = {}
7
+ """实时变化的监听目录及其结果"""
8
+
9
+ @classmethod
10
+ def refresh_font_data_dict(cls):
11
+ cls.font_data_dict = {d: load_fonts(d) for d in cls.font_data_dict}
12
+
13
+ @classmethod
14
+ def add_font_data_dir(cls, *dirs: str):
15
+ for d in dirs:
16
+ cls.font_data_dict[d] = load_fonts(d)
17
+
18
+ @classmethod
19
+ def pop_font_data_dir(cls, *dirs: str):
20
+ for d in dirs:
21
+ try:
22
+ cls.font_data_dict.pop(d)
23
+ except KeyError as e:
24
+ log.error(
25
+ "{} faild: {}",
26
+ cls.pop_font_data_dir.__name__,
27
+ e,
28
+ )
29
+
30
+ @classmethod
31
+ def get_font_info(
32
+ cls,
33
+ pathname: str,
34
+ ): # TODO
35
+ fonts = load_fonts(pathname)
@@ -0,0 +1 @@
1
+ import{N as r}from"./Card-DZFbz07B.js";import{d as s,c as n,bm as i,bn as t,bo as d,a as o,bw as p,o as l}from"./index-bF5zRBEa.js";import"./Close-ChnBNDFL.js";const m={style:{display:"grid",gap:"1rem",padding:"1rem",position:"relative","overflow-x":"hidden"}},a="https://github.com/op200/",h=s({__name:"About",setup(c){return(u,e)=>(l(),n("div",m,[i(d(r),{title:"Windows Font Manager WebUI"},{"header-extra":t(()=>[o("a",{href:a},p(a))]),default:t(()=>[e[0]||(e[0]=o("div",null," 介绍 ",-1))]),_:1})]))}});export{h as default};
@@ -0,0 +1,87 @@
1
+ import{M as n,L as f,ar as J,as as Q,b1 as Z,a0 as s,N as a,d as ee,q as i,a3 as b,T as oe,U as S,a6 as re,m as y,X as z,a9 as te,Y as ne,aq as ae,bM as de,bN as g,av as se}from"./index-bF5zRBEa.js";import{N as ie}from"./Close-ChnBNDFL.js";const le=n([f("card",`
2
+ font-size: var(--n-font-size);
3
+ line-height: var(--n-line-height);
4
+ display: flex;
5
+ flex-direction: column;
6
+ width: 100%;
7
+ box-sizing: border-box;
8
+ position: relative;
9
+ border-radius: var(--n-border-radius);
10
+ background-color: var(--n-color);
11
+ color: var(--n-text-color);
12
+ word-break: break-word;
13
+ transition:
14
+ color .3s var(--n-bezier),
15
+ background-color .3s var(--n-bezier),
16
+ box-shadow .3s var(--n-bezier),
17
+ border-color .3s var(--n-bezier);
18
+ `,[Z({background:"var(--n-color-modal)"}),s("hoverable",[n("&:hover","box-shadow: var(--n-box-shadow);")]),s("content-segmented",[n(">",[a("content",{paddingTop:"var(--n-padding-bottom)"})])]),s("content-soft-segmented",[n(">",[a("content",`
19
+ margin: 0 var(--n-padding-left);
20
+ padding: var(--n-padding-bottom) 0;
21
+ `)])]),s("footer-segmented",[n(">",[a("footer",{paddingTop:"var(--n-padding-bottom)"})])]),s("footer-soft-segmented",[n(">",[a("footer",`
22
+ padding: var(--n-padding-bottom) 0;
23
+ margin: 0 var(--n-padding-left);
24
+ `)])]),n(">",[f("card-header",`
25
+ box-sizing: border-box;
26
+ display: flex;
27
+ align-items: center;
28
+ font-size: var(--n-title-font-size);
29
+ padding:
30
+ var(--n-padding-top)
31
+ var(--n-padding-left)
32
+ var(--n-padding-bottom)
33
+ var(--n-padding-left);
34
+ `,[a("main",`
35
+ font-weight: var(--n-title-font-weight);
36
+ transition: color .3s var(--n-bezier);
37
+ flex: 1;
38
+ min-width: 0;
39
+ color: var(--n-title-text-color);
40
+ `),a("extra",`
41
+ display: flex;
42
+ align-items: center;
43
+ font-size: var(--n-font-size);
44
+ font-weight: 400;
45
+ transition: color .3s var(--n-bezier);
46
+ color: var(--n-text-color);
47
+ `),a("close",`
48
+ margin: 0 0 0 8px;
49
+ transition:
50
+ background-color .3s var(--n-bezier),
51
+ color .3s var(--n-bezier);
52
+ `)]),a("action",`
53
+ box-sizing: border-box;
54
+ transition:
55
+ background-color .3s var(--n-bezier),
56
+ border-color .3s var(--n-bezier);
57
+ background-clip: padding-box;
58
+ background-color: var(--n-action-color);
59
+ `),a("content","flex: 1; min-width: 0;"),a("content, footer",`
60
+ box-sizing: border-box;
61
+ padding: 0 var(--n-padding-left) var(--n-padding-bottom) var(--n-padding-left);
62
+ font-size: var(--n-font-size);
63
+ `,[n("&:first-child",{paddingTop:"var(--n-padding-bottom)"})]),a("action",`
64
+ background-color: var(--n-action-color);
65
+ padding: var(--n-padding-bottom) var(--n-padding-left);
66
+ border-bottom-left-radius: var(--n-border-radius);
67
+ border-bottom-right-radius: var(--n-border-radius);
68
+ `)]),f("card-cover",`
69
+ overflow: hidden;
70
+ width: 100%;
71
+ border-radius: var(--n-border-radius) var(--n-border-radius) 0 0;
72
+ `,[n("img",`
73
+ display: block;
74
+ width: 100%;
75
+ `)]),s("bordered",`
76
+ border: 1px solid var(--n-border-color);
77
+ `,[n("&:target","border-color: var(--n-color-target);")]),s("action-segmented",[n(">",[a("action",[n("&:not(:first-child)",{borderTop:"1px solid var(--n-border-color)"})])])]),s("content-segmented, content-soft-segmented",[n(">",[a("content",{transition:"border-color 0.3s var(--n-bezier)"},[n("&:not(:first-child)",{borderTop:"1px solid var(--n-border-color)"})])])]),s("footer-segmented, footer-soft-segmented",[n(">",[a("footer",{transition:"border-color 0.3s var(--n-bezier)"},[n("&:not(:first-child)",{borderTop:"1px solid var(--n-border-color)"})])])]),s("embedded",`
78
+ background-color: var(--n-color-embedded);
79
+ `)]),J(f("card",`
80
+ background: var(--n-color-modal);
81
+ `,[s("embedded",`
82
+ background-color: var(--n-color-embedded-modal);
83
+ `)])),Q(f("card",`
84
+ background: var(--n-color-popover);
85
+ `,[s("embedded",`
86
+ background-color: var(--n-color-embedded-popover);
87
+ `)]))]),k={title:[String,Function],contentClass:String,contentStyle:[Object,String],headerClass:String,headerStyle:[Object,String],headerExtraClass:String,headerExtraStyle:[Object,String],footerClass:String,footerStyle:[Object,String],embedded:Boolean,segmented:{type:[Boolean,Object],default:!1},size:{type:String,default:"medium"},bordered:{type:Boolean,default:!0},closable:Boolean,hoverable:Boolean,role:String,onClose:[Function,Array],tag:{type:String,default:"div"},cover:Function,content:[String,Function],footer:Function,action:Function,headerExtra:Function,closeFocusable:Boolean},fe=se(k),ce=Object.assign(Object.assign({},S.props),k),he=ee({name:"Card",props:ce,slots:Object,setup(o){const p=()=>{const{onClose:t}=o;t&&ae(t)},{inlineThemeDisabled:h,mergedClsPrefixRef:e,mergedRtlRef:u}=oe(o),c=S("Card","-card",le,de,o,e),x=re("Card",u,e),v=y(()=>{const{size:t}=o,{self:{color:r,colorModal:l,colorTarget:C,textColor:m,titleTextColor:$,titleFontWeight:w,borderColor:E,actionColor:T,borderRadius:B,lineHeight:F,closeIconColor:P,closeIconColorHover:R,closeIconColorPressed:_,closeColorHover:O,closeColorPressed:j,closeBorderRadius:M,closeIconSize:N,closeSize:I,boxShadow:V,colorPopover:H,colorEmbedded:L,colorEmbeddedModal:q,colorEmbeddedPopover:K,[z("padding",t)]:W,[z("fontSize",t)]:A,[z("titleFontSize",t)]:D},common:{cubicBezierEaseInOut:U}}=c.value,{top:X,left:Y,bottom:G}=te(W);return{"--n-bezier":U,"--n-border-radius":B,"--n-color":r,"--n-color-modal":l,"--n-color-popover":H,"--n-color-embedded":L,"--n-color-embedded-modal":q,"--n-color-embedded-popover":K,"--n-color-target":C,"--n-text-color":m,"--n-line-height":F,"--n-action-color":T,"--n-title-text-color":$,"--n-title-font-weight":w,"--n-close-icon-color":P,"--n-close-icon-color-hover":R,"--n-close-icon-color-pressed":_,"--n-close-color-hover":O,"--n-close-color-pressed":j,"--n-border-color":E,"--n-box-shadow":V,"--n-padding-top":X,"--n-padding-bottom":G,"--n-padding-left":Y,"--n-font-size":A,"--n-title-font-size":D,"--n-close-size":I,"--n-close-icon-size":N,"--n-close-border-radius":M}}),d=h?ne("card",y(()=>o.size[0]),v,o):void 0;return{rtlEnabled:x,mergedClsPrefix:e,mergedTheme:c,handleCloseClick:p,cssVars:h?void 0:v,themeClass:d?.themeClass,onRender:d?.onRender}},render(){const{segmented:o,bordered:p,hoverable:h,mergedClsPrefix:e,rtlEnabled:u,onRender:c,embedded:x,tag:v,$slots:d}=this;return c?.(),i(v,{class:[`${e}-card`,this.themeClass,x&&`${e}-card--embedded`,{[`${e}-card--rtl`]:u,[`${e}-card--content${typeof o!="boolean"&&o.content==="soft"?"-soft":""}-segmented`]:o===!0||o!==!1&&o.content,[`${e}-card--footer${typeof o!="boolean"&&o.footer==="soft"?"-soft":""}-segmented`]:o===!0||o!==!1&&o.footer,[`${e}-card--action-segmented`]:o===!0||o!==!1&&o.action,[`${e}-card--bordered`]:p,[`${e}-card--hoverable`]:h}],style:this.cssVars,role:this.role},b(d.cover,t=>{const r=this.cover?g([this.cover()]):t;return r&&i("div",{class:`${e}-card-cover`,role:"none"},r)}),b(d.header,t=>{const{title:r}=this,l=r?g(typeof r=="function"?[r()]:[r]):t;return l||this.closable?i("div",{class:[`${e}-card-header`,this.headerClass],style:this.headerStyle,role:"heading"},i("div",{class:`${e}-card-header__main`,role:"heading"},l),b(d["header-extra"],C=>{const m=this.headerExtra?g([this.headerExtra()]):C;return m&&i("div",{class:[`${e}-card-header__extra`,this.headerExtraClass],style:this.headerExtraStyle},m)}),this.closable&&i(ie,{clsPrefix:e,class:`${e}-card-header__close`,onClick:this.handleCloseClick,focusable:this.closeFocusable,absolute:!0})):null}),b(d.default,t=>{const{content:r}=this,l=r?g(typeof r=="function"?[r()]:[r]):t;return l&&i("div",{class:[`${e}-card__content`,this.contentClass],style:this.contentStyle,role:"none"},l)}),b(d.footer,t=>{const r=this.footer?g([this.footer()]):t;return r&&i("div",{class:[`${e}-card__footer`,this.footerClass],style:this.footerStyle,role:"none"},r)}),b(d.action,t=>{const r=this.action?g([this.action()]):t;return r&&i("div",{class:`${e}-card__action`,role:"none"},r)}))}});export{he as N,fe as a,k as c};
@@ -0,0 +1,45 @@
1
+ import{bO as y,d as u,n as L,q as l,K as k,L as w,a0 as c,M as i,a1 as x,S as B,A as S,R as M}from"./index-bF5zRBEa.js";function $(e,o,r){var a=-1,n=e.length;o<0&&(o=-o>n?0:n+o),r=r>n?n:r,r<0&&(r+=n),n=o>r?0:r-o>>>0,o>>>=0;for(var s=Array(n);++a<n;)s[a]=e[a+o];return s}function z(e,o,r){var a=e.length;return r=r===void 0?a:r,!o&&r>=a?e:$(e,o,r)}var A="\\ud800-\\udfff",T="\\u0300-\\u036f",j="\\ufe20-\\ufe2f",I="\\u20d0-\\u20ff",P=T+j+I,N="\\ufe0e\\ufe0f",O="\\u200d",F=RegExp("["+O+A+P+N+"]");function b(e){return F.test(e)}function U(e){return e.split("")}var v="\\ud800-\\udfff",q="\\u0300-\\u036f",E="\\ufe20-\\ufe2f",H="\\u20d0-\\u20ff",J=q+E+H,V="\\ufe0e\\ufe0f",Z="["+v+"]",d="["+J+"]",f="\\ud83c[\\udffb-\\udfff]",K="(?:"+d+"|"+f+")",g="[^"+v+"]",h="(?:\\ud83c[\\udde6-\\uddff]){2}",p="[\\ud800-\\udbff][\\udc00-\\udfff]",W="\\u200d",C=K+"?",m="["+V+"]?",_="(?:"+W+"(?:"+[g,h,p].join("|")+")"+m+C+")*",D=m+C+_,X="(?:"+[g+d+"?",d,h,p,Z].join("|")+")",Y=RegExp(f+"(?="+f+")|"+X+D,"g");function G(e){return e.match(Y)||[]}function Q(e){return b(e)?G(e):U(e)}function ee(e){return function(o){o=y(o);var r=b(o)?Q(o):void 0,a=r?r[0]:o.charAt(0),n=r?z(r,1).join(""):o.slice(1);return a[e]()+n}}var oe=ee("toUpperCase");function re(e,o){const r=u({render(){return o()}});return u({name:oe(e),setup(){var a;const n=(a=L(k,null))===null||a===void 0?void 0:a.mergedIconsRef;return()=>{var s;const t=(s=n?.value)===null||s===void 0?void 0:s[e];return t?t():l(r,null)}}})}const ne=re("close",()=>l("svg",{viewBox:"0 0 12 12",version:"1.1",xmlns:"http://www.w3.org/2000/svg","aria-hidden":!0},l("g",{stroke:"none","stroke-width":"1",fill:"none","fill-rule":"evenodd"},l("g",{fill:"currentColor","fill-rule":"nonzero"},l("path",{d:"M2.08859116,2.2156945 L2.14644661,2.14644661 C2.32001296,1.97288026 2.58943736,1.95359511 2.7843055,2.08859116 L2.85355339,2.14644661 L6,5.293 L9.14644661,2.14644661 C9.34170876,1.95118446 9.65829124,1.95118446 9.85355339,2.14644661 C10.0488155,2.34170876 10.0488155,2.65829124 9.85355339,2.85355339 L6.707,6 L9.85355339,9.14644661 C10.0271197,9.32001296 10.0464049,9.58943736 9.91140884,9.7843055 L9.85355339,9.85355339 C9.67998704,10.0271197 9.41056264,10.0464049 9.2156945,9.91140884 L9.14644661,9.85355339 L6,6.707 L2.85355339,9.85355339 C2.65829124,10.0488155 2.34170876,10.0488155 2.14644661,9.85355339 C1.95118446,9.65829124 1.95118446,9.34170876 2.14644661,9.14644661 L5.293,6 L2.14644661,2.85355339 C1.97288026,2.67998704 1.95359511,2.41056264 2.08859116,2.2156945 L2.14644661,2.14644661 L2.08859116,2.2156945 Z"}))))),ae=w("base-close",`
2
+ display: flex;
3
+ align-items: center;
4
+ justify-content: center;
5
+ cursor: pointer;
6
+ background-color: transparent;
7
+ color: var(--n-close-icon-color);
8
+ border-radius: var(--n-close-border-radius);
9
+ height: var(--n-close-size);
10
+ width: var(--n-close-size);
11
+ font-size: var(--n-close-icon-size);
12
+ outline: none;
13
+ border: none;
14
+ position: relative;
15
+ padding: 0;
16
+ `,[c("absolute",`
17
+ height: var(--n-close-icon-size);
18
+ width: var(--n-close-icon-size);
19
+ `),i("&::before",`
20
+ content: "";
21
+ position: absolute;
22
+ width: var(--n-close-size);
23
+ height: var(--n-close-size);
24
+ left: 50%;
25
+ top: 50%;
26
+ transform: translateY(-50%) translateX(-50%);
27
+ transition: inherit;
28
+ border-radius: inherit;
29
+ `),x("disabled",[i("&:hover",`
30
+ color: var(--n-close-icon-color-hover);
31
+ `),i("&:hover::before",`
32
+ background-color: var(--n-close-color-hover);
33
+ `),i("&:focus::before",`
34
+ background-color: var(--n-close-color-hover);
35
+ `),i("&:active",`
36
+ color: var(--n-close-icon-color-pressed);
37
+ `),i("&:active::before",`
38
+ background-color: var(--n-close-color-pressed);
39
+ `)]),c("disabled",`
40
+ cursor: not-allowed;
41
+ color: var(--n-close-icon-color-disabled);
42
+ background-color: transparent;
43
+ `),c("round",[i("&::before",`
44
+ border-radius: 50%;
45
+ `)])]),le=u({name:"BaseClose",props:{isButtonTag:{type:Boolean,default:!0},clsPrefix:{type:String,required:!0},disabled:{type:Boolean,default:void 0},focusable:{type:Boolean,default:!0},round:Boolean,onClick:Function,absolute:Boolean},setup(e){return B("-base-close",ae,S(e,"clsPrefix")),()=>{const{clsPrefix:o,disabled:r,absolute:a,round:n,isButtonTag:s}=e;return l(s?"button":"div",{type:s?"button":void 0,tabindex:r||!e.focusable?-1:0,"aria-disabled":r,"aria-label":"close",role:s?void 0:"button",disabled:r,class:[`${o}-base-close`,a&&`${o}-base-close--absolute`,r&&`${o}-base-close--disabled`,n&&`${o}-base-close--round`],onMousedown:R=>{e.focusable||R.preventDefault()},onClick:e.onClick},l(M,{clsPrefix:o},{default:()=>l(ne,null)}))}}});export{le as N,re as r};
@@ -0,0 +1,143 @@
1
+ import{L as v,a0 as c,N as t,a1 as R,M as f,d as j,a3 as T,q as a,b as ve,T as S,U as B,bK as ge,p as D,A as E,a6 as L,m as I,X as s,a9 as ue,Y as N,bH as H,aq as fe,aj as F,ar as me,as as pe,bL as Ce,n as ke,bg as xe}from"./index-bF5zRBEa.js";import{N as ze}from"./Close-ChnBNDFL.js";const $e={color:Object,type:{type:String,default:"default"},round:Boolean,size:{type:String,default:"medium"},closable:Boolean,disabled:{type:Boolean,default:void 0}},ye=v("tag",`
2
+ --n-close-margin: var(--n-close-margin-top) var(--n-close-margin-right) var(--n-close-margin-bottom) var(--n-close-margin-left);
3
+ white-space: nowrap;
4
+ position: relative;
5
+ box-sizing: border-box;
6
+ cursor: default;
7
+ display: inline-flex;
8
+ align-items: center;
9
+ flex-wrap: nowrap;
10
+ padding: var(--n-padding);
11
+ border-radius: var(--n-border-radius);
12
+ color: var(--n-text-color);
13
+ background-color: var(--n-color);
14
+ transition:
15
+ border-color .3s var(--n-bezier),
16
+ background-color .3s var(--n-bezier),
17
+ color .3s var(--n-bezier),
18
+ box-shadow .3s var(--n-bezier),
19
+ opacity .3s var(--n-bezier);
20
+ line-height: 1;
21
+ height: var(--n-height);
22
+ font-size: var(--n-font-size);
23
+ `,[c("strong",`
24
+ font-weight: var(--n-font-weight-strong);
25
+ `),t("border",`
26
+ pointer-events: none;
27
+ position: absolute;
28
+ left: 0;
29
+ right: 0;
30
+ top: 0;
31
+ bottom: 0;
32
+ border-radius: inherit;
33
+ border: var(--n-border);
34
+ transition: border-color .3s var(--n-bezier);
35
+ `),t("icon",`
36
+ display: flex;
37
+ margin: 0 4px 0 0;
38
+ color: var(--n-text-color);
39
+ transition: color .3s var(--n-bezier);
40
+ font-size: var(--n-avatar-size-override);
41
+ `),t("avatar",`
42
+ display: flex;
43
+ margin: 0 6px 0 0;
44
+ `),t("close",`
45
+ margin: var(--n-close-margin);
46
+ transition:
47
+ background-color .3s var(--n-bezier),
48
+ color .3s var(--n-bezier);
49
+ `),c("round",`
50
+ padding: 0 calc(var(--n-height) / 3);
51
+ border-radius: calc(var(--n-height) / 2);
52
+ `,[t("icon",`
53
+ margin: 0 4px 0 calc((var(--n-height) - 8px) / -2);
54
+ `),t("avatar",`
55
+ margin: 0 6px 0 calc((var(--n-height) - 8px) / -2);
56
+ `),c("closable",`
57
+ padding: 0 calc(var(--n-height) / 4) 0 calc(var(--n-height) / 3);
58
+ `)]),c("icon, avatar",[c("round",`
59
+ padding: 0 calc(var(--n-height) / 3) 0 calc(var(--n-height) / 2);
60
+ `)]),c("disabled",`
61
+ cursor: not-allowed !important;
62
+ opacity: var(--n-opacity-disabled);
63
+ `),c("checkable",`
64
+ cursor: pointer;
65
+ box-shadow: none;
66
+ color: var(--n-text-color-checkable);
67
+ background-color: var(--n-color-checkable);
68
+ `,[R("disabled",[f("&:hover","background-color: var(--n-color-hover-checkable);",[R("checked","color: var(--n-text-color-hover-checkable);")]),f("&:active","background-color: var(--n-color-pressed-checkable);",[R("checked","color: var(--n-text-color-pressed-checkable);")])]),c("checked",`
69
+ color: var(--n-text-color-checked);
70
+ background-color: var(--n-color-checked);
71
+ `,[R("disabled",[f("&:hover","background-color: var(--n-color-checked-hover);"),f("&:active","background-color: var(--n-color-checked-pressed);")])])])]),Re=Object.assign(Object.assign(Object.assign({},B.props),$e),{bordered:{type:Boolean,default:void 0},checked:Boolean,checkable:Boolean,strong:Boolean,triggerClickOnClose:Boolean,onClose:[Array,Function],onMouseenter:Function,onMouseleave:Function,"onUpdate:checked":Function,onUpdateChecked:Function,internalCloseFocusable:{type:Boolean,default:!0},internalCloseIsButtonTag:{type:Boolean,default:!0},onCheckedChange:Function}),Be=F("n-tag"),je=j({name:"Tag",props:Re,slots:Object,setup(e){const l=ve(null),{mergedBorderedRef:o,mergedClsPrefixRef:d,inlineThemeDisabled:m,mergedRtlRef:$}=S(e),p=B("Tag","-tag",ye,ge,e,d);D(Be,{roundRef:E(e,"round")});function i(){if(!e.disabled&&e.checkable){const{checked:r,onCheckedChange:n,onUpdateChecked:u,"onUpdate:checked":b}=e;u&&u(!r),b&&b(!r),n&&n(!r)}}function C(r){if(e.triggerClickOnClose||r.stopPropagation(),!e.disabled){const{onClose:n}=e;n&&fe(n,r)}}const k={setTextContent(r){const{value:n}=l;n&&(n.textContent=r)}},x=L("Tag",$,d),h=I(()=>{const{type:r,size:n,color:{color:u,textColor:b}={}}=e,{common:{cubicBezierEaseInOut:z},self:{padding:P,closeMargin:_,borderRadius:w,opacityDisabled:V,textColorCheckable:K,textColorHoverCheckable:q,textColorPressedCheckable:A,textColorChecked:W,colorCheckable:X,colorHoverCheckable:Y,colorPressedCheckable:G,colorChecked:J,colorCheckedHover:Q,colorCheckedPressed:Z,closeBorderRadius:ee,fontWeightStrong:oe,[s("colorBordered",r)]:re,[s("closeSize",n)]:le,[s("closeIconSize",n)]:ne,[s("fontSize",n)]:te,[s("height",n)]:M,[s("color",r)]:ae,[s("textColor",r)]:se,[s("border",r)]:ce,[s("closeIconColor",r)]:O,[s("closeIconColorHover",r)]:ie,[s("closeIconColorPressed",r)]:de,[s("closeColorHover",r)]:he,[s("closeColorPressed",r)]:be}}=p.value,y=ue(_);return{"--n-font-weight-strong":oe,"--n-avatar-size-override":`calc(${M} - 8px)`,"--n-bezier":z,"--n-border-radius":w,"--n-border":ce,"--n-close-icon-size":ne,"--n-close-color-pressed":be,"--n-close-color-hover":he,"--n-close-border-radius":ee,"--n-close-icon-color":O,"--n-close-icon-color-hover":ie,"--n-close-icon-color-pressed":de,"--n-close-icon-color-disabled":O,"--n-close-margin-top":y.top,"--n-close-margin-right":y.right,"--n-close-margin-bottom":y.bottom,"--n-close-margin-left":y.left,"--n-close-size":le,"--n-color":u||(o.value?re:ae),"--n-color-checkable":X,"--n-color-checked":J,"--n-color-checked-hover":Q,"--n-color-checked-pressed":Z,"--n-color-hover-checkable":Y,"--n-color-pressed-checkable":G,"--n-font-size":te,"--n-height":M,"--n-opacity-disabled":V,"--n-padding":P,"--n-text-color":b||se,"--n-text-color-checkable":K,"--n-text-color-checked":W,"--n-text-color-hover-checkable":q,"--n-text-color-pressed-checkable":A}}),g=m?N("tag",I(()=>{let r="";const{type:n,size:u,color:{color:b,textColor:z}={}}=e;return r+=n[0],r+=u[0],b&&(r+=`a${H(b)}`),z&&(r+=`b${H(z)}`),o.value&&(r+="c"),r}),h,e):void 0;return Object.assign(Object.assign({},k),{rtlEnabled:x,mergedClsPrefix:d,contentRef:l,mergedBordered:o,handleClick:i,handleCloseClick:C,cssVars:m?void 0:h,themeClass:g?.themeClass,onRender:g?.onRender})},render(){var e,l;const{mergedClsPrefix:o,rtlEnabled:d,closable:m,color:{borderColor:$}={},round:p,onRender:i,$slots:C}=this;i?.();const k=T(C.avatar,h=>h&&a("div",{class:`${o}-tag__avatar`},h)),x=T(C.icon,h=>h&&a("div",{class:`${o}-tag__icon`},h));return a("div",{class:[`${o}-tag`,this.themeClass,{[`${o}-tag--rtl`]:d,[`${o}-tag--strong`]:this.strong,[`${o}-tag--disabled`]:this.disabled,[`${o}-tag--checkable`]:this.checkable,[`${o}-tag--checked`]:this.checkable&&this.checked,[`${o}-tag--round`]:p,[`${o}-tag--avatar`]:k,[`${o}-tag--icon`]:x,[`${o}-tag--closable`]:m}],style:this.cssVars,onClick:this.handleClick,onMouseenter:this.onMouseenter,onMouseleave:this.onMouseleave},x||k,a("span",{class:`${o}-tag__content`,ref:"contentRef"},(l=(e=this.$slots).default)===null||l===void 0?void 0:l.call(e)),!this.checkable&&m?a(ze,{clsPrefix:o,class:`${o}-tag__close`,disabled:this.disabled,onClick:this.handleCloseClick,focusable:this.internalCloseFocusable,round:p,isButtonTag:this.internalCloseIsButtonTag,absolute:!0}):null,!this.checkable&&this.mergedBordered?a("div",{class:`${o}-tag__border`,style:{borderColor:$}}):null)}}),Pe=f([v("list",`
72
+ --n-merged-border-color: var(--n-border-color);
73
+ --n-merged-color: var(--n-color);
74
+ --n-merged-color-hover: var(--n-color-hover);
75
+ margin: 0;
76
+ font-size: var(--n-font-size);
77
+ transition:
78
+ background-color .3s var(--n-bezier),
79
+ color .3s var(--n-bezier),
80
+ border-color .3s var(--n-bezier);
81
+ padding: 0;
82
+ list-style-type: none;
83
+ color: var(--n-text-color);
84
+ background-color: var(--n-merged-color);
85
+ `,[c("show-divider",[v("list-item",[f("&:not(:last-child)",[t("divider",`
86
+ background-color: var(--n-merged-border-color);
87
+ `)])])]),c("clickable",[v("list-item",`
88
+ cursor: pointer;
89
+ `)]),c("bordered",`
90
+ border: 1px solid var(--n-merged-border-color);
91
+ border-radius: var(--n-border-radius);
92
+ `),c("hoverable",[v("list-item",`
93
+ border-radius: var(--n-border-radius);
94
+ `,[f("&:hover",`
95
+ background-color: var(--n-merged-color-hover);
96
+ `,[t("divider",`
97
+ background-color: transparent;
98
+ `)])])]),c("bordered, hoverable",[v("list-item",`
99
+ padding: 12px 20px;
100
+ `),t("header, footer",`
101
+ padding: 12px 20px;
102
+ `)]),t("header, footer",`
103
+ padding: 12px 0;
104
+ box-sizing: border-box;
105
+ transition: border-color .3s var(--n-bezier);
106
+ `,[f("&:not(:last-child)",`
107
+ border-bottom: 1px solid var(--n-merged-border-color);
108
+ `)]),v("list-item",`
109
+ position: relative;
110
+ padding: 12px 0;
111
+ box-sizing: border-box;
112
+ display: flex;
113
+ flex-wrap: nowrap;
114
+ align-items: center;
115
+ transition:
116
+ background-color .3s var(--n-bezier),
117
+ border-color .3s var(--n-bezier);
118
+ `,[t("prefix",`
119
+ margin-right: 20px;
120
+ flex: 0;
121
+ `),t("suffix",`
122
+ margin-left: 20px;
123
+ flex: 0;
124
+ `),t("main",`
125
+ flex: 1;
126
+ `),t("divider",`
127
+ height: 1px;
128
+ position: absolute;
129
+ bottom: 0;
130
+ left: 0;
131
+ right: 0;
132
+ background-color: transparent;
133
+ transition: background-color .3s var(--n-bezier);
134
+ pointer-events: none;
135
+ `)])]),me(v("list",`
136
+ --n-merged-color-hover: var(--n-color-hover-modal);
137
+ --n-merged-color: var(--n-color-modal);
138
+ --n-merged-border-color: var(--n-border-color-modal);
139
+ `)),pe(v("list",`
140
+ --n-merged-color-hover: var(--n-color-hover-popover);
141
+ --n-merged-color: var(--n-color-popover);
142
+ --n-merged-border-color: var(--n-border-color-popover);
143
+ `))]),_e=Object.assign(Object.assign({},B.props),{size:{type:String,default:"medium"},bordered:Boolean,clickable:Boolean,hoverable:Boolean,showDivider:{type:Boolean,default:!0}}),U=F("n-list"),Me=j({name:"List",props:_e,slots:Object,setup(e){const{mergedClsPrefixRef:l,inlineThemeDisabled:o,mergedRtlRef:d}=S(e),m=L("List",d,l),$=B("List","-list",Pe,Ce,e,l);D(U,{showDividerRef:E(e,"showDivider"),mergedClsPrefixRef:l});const p=I(()=>{const{common:{cubicBezierEaseInOut:C},self:{fontSize:k,textColor:x,color:h,colorModal:g,colorPopover:r,borderColor:n,borderColorModal:u,borderColorPopover:b,borderRadius:z,colorHover:P,colorHoverModal:_,colorHoverPopover:w}}=$.value;return{"--n-font-size":k,"--n-bezier":C,"--n-text-color":x,"--n-color":h,"--n-border-radius":z,"--n-border-color":n,"--n-border-color-modal":u,"--n-border-color-popover":b,"--n-color-modal":g,"--n-color-popover":r,"--n-color-hover":P,"--n-color-hover-modal":_,"--n-color-hover-popover":w}}),i=o?N("list",void 0,p,e):void 0;return{mergedClsPrefix:l,rtlEnabled:m,cssVars:o?void 0:p,themeClass:i?.themeClass,onRender:i?.onRender}},render(){var e;const{$slots:l,mergedClsPrefix:o,onRender:d}=this;return d?.(),a("ul",{class:[`${o}-list`,this.rtlEnabled&&`${o}-list--rtl`,this.bordered&&`${o}-list--bordered`,this.showDivider&&`${o}-list--show-divider`,this.hoverable&&`${o}-list--hoverable`,this.clickable&&`${o}-list--clickable`,this.themeClass],style:this.cssVars},l.header?a("div",{class:`${o}-list__header`},l.header()):null,(e=l.default)===null||e===void 0?void 0:e.call(l),l.footer?a("div",{class:`${o}-list__footer`},l.footer()):null)}}),Oe=j({name:"ListItem",slots:Object,setup(){const e=ke(U,null);return e||xe("list-item","`n-list-item` must be placed in `n-list`."),{showDivider:e.showDividerRef,mergedClsPrefix:e.mergedClsPrefixRef}},render(){const{$slots:e,mergedClsPrefix:l}=this;return a("li",{class:`${l}-list-item`},e.prefix?a("div",{class:`${l}-list-item__prefix`},e.prefix()):null,e.default?a("div",{class:`${l}-list-item__main`},e):null,e.suffix?a("div",{class:`${l}-list-item__suffix`},e.suffix()):null,this.showDivider&&a("div",{class:`${l}-list-item__divider`}))}});export{je as N,Me as a,Oe as b,Be as t};
@@ -0,0 +1 @@
1
+ .log-list-item[data-v-7d327e16]{display:flex;gap:1rem;padding:0 1rem}
@@ -0,0 +1,30 @@
1
+ import{k as J,aj as Q,L as $,ar as Z,as as ee,M as P,N as A,d as q,Q as te,q as O,a3 as re,V as oe,T as se,b as x,n as W,m as L,U as D,bG as ne,X as ae,Y as ie,bH as le,l as de,ai as ce,g as ue,w as fe,bk as ve,bI as he,bJ as R,c as V,bm as T,bn as S,bo as p,af as ge,br as be,o as M,bs as me,a as G,bv as K,bw as B,bz as pe}from"./index-bF5zRBEa.js";import{t as ye,a as _e,b as ze,N as Oe}from"./ListItem-DL4ge8n8.js";import"./Close-ChnBNDFL.js";const xe=J&&"loading"in document.createElement("img");function Le(e={}){var n;const{root:d=null}=e;return{hash:`${e.rootMargin||"0px 0px 0px 0px"}-${Array.isArray(e.threshold)?e.threshold.join(","):(n=e.threshold)!==null&&n!==void 0?n:"0"}`,options:Object.assign(Object.assign({},e),{root:(typeof d=="string"?document.querySelector(d):d)||document.documentElement})}}const C=new WeakMap,H=new WeakMap,N=new WeakMap,we=(e,n,d)=>{if(!e)return()=>{};const a=Le(n),{root:u}=a.options;let s;const i=C.get(u);i?s=i:(s=new Map,C.set(u,s));let f,o;s.has(a.hash)?(o=s.get(a.hash),o[1].has(e)||(f=o[0],o[1].add(e),f.observe(e))):(f=new IntersectionObserver(y=>{y.forEach(v=>{if(v.isIntersecting){const b=H.get(v.target),z=N.get(v.target);b&&b(),z&&(z.value=!0)}})},a.options),f.observe(e),o=[f,new Set([e])],s.set(a.hash,o));let l=!1;const g=()=>{l||(H.delete(e),N.delete(e),l=!0,o[1].has(e)&&(o[0].unobserve(e),o[1].delete(e)),o[1].size<=0&&s.delete(a.hash),s.size||C.delete(u))};return H.set(e,g),N.set(e,d),g},Re=Q("n-avatar-group"),Se=$("avatar",`
2
+ width: var(--n-merged-size);
3
+ height: var(--n-merged-size);
4
+ color: #FFF;
5
+ font-size: var(--n-font-size);
6
+ display: inline-flex;
7
+ position: relative;
8
+ overflow: hidden;
9
+ text-align: center;
10
+ border: var(--n-border);
11
+ border-radius: var(--n-border-radius);
12
+ --n-merged-color: var(--n-color);
13
+ background-color: var(--n-merged-color);
14
+ transition:
15
+ border-color .3s var(--n-bezier),
16
+ background-color .3s var(--n-bezier),
17
+ color .3s var(--n-bezier);
18
+ `,[Z(P("&","--n-merged-color: var(--n-color-modal);")),ee(P("&","--n-merged-color: var(--n-color-popover);")),P("img",`
19
+ width: 100%;
20
+ height: 100%;
21
+ `),A("text",`
22
+ white-space: nowrap;
23
+ display: inline-block;
24
+ position: absolute;
25
+ left: 50%;
26
+ top: 50%;
27
+ `),$("icon",`
28
+ vertical-align: bottom;
29
+ font-size: calc(var(--n-merged-size) - 6px);
30
+ `),A("text","line-height: 1.25")]),je=Object.assign(Object.assign({},D.props),{size:[String,Number],src:String,circle:{type:Boolean,default:void 0},objectFit:String,round:{type:Boolean,default:void 0},bordered:{type:Boolean,default:void 0},onError:Function,fallbackSrc:String,intersectionObserverOptions:Object,lazy:Boolean,onLoad:Function,renderPlaceholder:Function,renderFallback:Function,imgProps:Object,color:String}),Ee=q({name:"Avatar",props:je,slots:Object,setup(e){const{mergedClsPrefixRef:n,inlineThemeDisabled:d}=se(e),a=x(!1);let u=null;const s=x(null),i=x(null),f=()=>{const{value:t}=s;if(t&&(u===null||u!==t.innerHTML)){u=t.innerHTML;const{value:r}=i;if(r){const{offsetWidth:c,offsetHeight:m}=r,{offsetWidth:h,offsetHeight:E}=t,w=.9,k=Math.min(c/h*w,m/E*w,1);t.style.transform=`translateX(-50%) translateY(-50%) scale(${k})`}}},o=W(Re,null),l=L(()=>{const{size:t}=e;if(t)return t;const{size:r}=o||{};return r||"medium"}),g=D("Avatar","-avatar",Se,ne,e,n),y=W(ye,null),v=L(()=>{if(o)return!0;const{round:t,circle:r}=e;return t!==void 0||r!==void 0?t||r:y?y.roundRef.value:!1}),b=L(()=>o?!0:e.bordered||!1),z=L(()=>{const t=l.value,r=v.value,c=b.value,{color:m}=e,{self:{borderRadius:h,fontSize:E,color:w,border:k,colorModal:U,colorPopover:X},common:{cubicBezierEaseInOut:Y}}=g.value;let F;return typeof t=="number"?F=`${t}px`:F=g.value.self[ae("height",t)],{"--n-font-size":E,"--n-border":c?k:"none","--n-border-radius":r?"50%":h,"--n-color":m||w,"--n-color-modal":m||U,"--n-color-popover":m||X,"--n-bezier":Y,"--n-merged-size":`var(--n-avatar-size-override, ${F})`}}),_=d?ie("avatar",L(()=>{const t=l.value,r=v.value,c=b.value,{color:m}=e;let h="";return t&&(typeof t=="number"?h+=`a${t}`:h+=t[0]),r&&(h+="b"),c&&(h+="c"),m&&(h+=le(m)),h}),z,e):void 0,j=x(!e.lazy);de(()=>{if(e.lazy&&e.intersectionObserverOptions){let t;const r=ce(()=>{t?.(),t=void 0,e.lazy&&(t=we(i.value,e.intersectionObserverOptions,j))});ue(()=>{r(),t?.()})}}),fe(()=>{var t;return e.src||((t=e.imgProps)===null||t===void 0?void 0:t.src)},()=>{a.value=!1});const I=x(!e.lazy);return{textRef:s,selfRef:i,mergedRoundRef:v,mergedClsPrefix:n,fitTextTransform:f,cssVars:d?void 0:z,themeClass:_?.themeClass,onRender:_?.onRender,hasLoadError:a,shouldStartLoading:j,loaded:I,mergedOnError:t=>{if(!j.value)return;a.value=!0;const{onError:r,imgProps:{onError:c}={}}=e;r?.(t),c?.(t)},mergedOnLoad:t=>{const{onLoad:r,imgProps:{onLoad:c}={}}=e;r?.(t),c?.(t),I.value=!0}}},render(){var e,n;const{$slots:d,src:a,mergedClsPrefix:u,lazy:s,onRender:i,loaded:f,hasLoadError:o,imgProps:l={}}=this;i?.();let g;const y=!f&&!o&&(this.renderPlaceholder?this.renderPlaceholder():(n=(e=this.$slots).placeholder)===null||n===void 0?void 0:n.call(e));return this.hasLoadError?g=this.renderFallback?this.renderFallback():te(d.fallback,()=>[O("img",{src:this.fallbackSrc,style:{objectFit:this.objectFit}})]):g=re(d.default,v=>{if(v)return O(oe,{onResize:this.fitTextTransform},{default:()=>O("span",{ref:"textRef",class:`${u}-avatar__text`},v)});if(a||l.src){const b=this.src||l.src;return O("img",Object.assign(Object.assign({},l),{loading:xe&&!this.intersectionObserverOptions&&s?"lazy":"eager",src:s&&this.intersectionObserverOptions?this.shouldStartLoading?b:void 0:b,"data-image-src":b,onLoad:this.mergedOnLoad,onError:this.mergedOnError,style:[l.style||"",{objectFit:this.objectFit},y?{height:"0",width:"0",visibility:"hidden",position:"absolute"}:""]}))}}),O("span",{ref:"selfRef",class:[`${u}-avatar`,this.themeClass],style:this.cssVars},g,s&&y)}}),ke={style:{position:"relative","overflow-y":"auto",padding:"1rem",height:"calc(100% - 2rem)",width:"calc(100% - 2rem)"}},Fe={class:"log-list-item"},Pe=q({__name:"Log",setup(e){const{log_list:n}=ve(he()),d=new Map([[R.debug,"success"],[R.info,"info"],[R.warn,"warning"],[R.error,"error"]]),a=new Set(["string","number"]);return(u,s)=>(M(),V("div",ke,[T(p(_e),null,{default:S(()=>[(M(!0),V(ge,null,be([...p(n)].reverse(),(i,f)=>(M(),me(p(ze),null,{default:S(()=>[G("div",Fe,[T(p(Ee),{round:"",size:"small"},{default:S(()=>[K(B(p(n).length-f),1)]),_:2},1024),T(p(Oe),{type:p(d).get(i.type)||"default",style:{width:"5em",display:"flex","justify-content":"center"}},{default:S(()=>[K(B(i.type),1)]),_:2},1032,["type"]),G("span",null,B(i.data.reduce((o,l)=>o+" "+(p(a).has(typeof l)?l:`[${typeof l}]`),"")),1)])]),_:2},1024))),256))]),_:1})]))}}),Ce=pe(Pe,[["__scopeId","data-v-7d327e16"]]);export{Ce as default};