@linkdesk/ui 0.1.3 → 0.1.4
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/LICENSE +1 -1
- package/README.md +47 -47
- package/dist/button/Button.d.ts +12 -1
- package/dist/index.css +1 -1
- package/dist/index.js +34 -34
- package/package.json +1 -1
package/LICENSE
CHANGED
package/README.md
CHANGED
|
@@ -1,47 +1,47 @@
|
|
|
1
|
-
# @linkdesk/ui
|
|
2
|
-
|
|
3
|
-
LinkDesk 共享 UI 组件库——右键菜单 / 下拉 / 组合框 / 开关 / 滑杆 / 取色器 / 表单行 / 文件路径输入 / 主题选择等。
|
|
4
|
-
|
|
5
|
-
组件源码单一宿主于 LinkDesk 壳的 `src/components/shared/`,本包是其编译分发面:**插件作者 `npm i @linkdesk/ui` 后拿到的组件与内置插件同款、自动跟随宿主主题与玻璃态**,无需关心实现细节。
|
|
6
|
-
|
|
7
|
-
## 安装
|
|
8
|
-
|
|
9
|
-
```bash
|
|
10
|
-
npm i @linkdesk/ui react react-dom
|
|
11
|
-
```
|
|
12
|
-
|
|
13
|
-
## 用法
|
|
14
|
-
|
|
15
|
-
```tsx
|
|
16
|
-
import { SelectBox, Toggle } from "@linkdesk/ui";
|
|
17
|
-
import "@linkdesk/ui/index.css"; // 绝大多数组件 CSS 由入口 JS 自动带入;需显式引入时用此路径
|
|
18
|
-
|
|
19
|
-
export function MyView() {
|
|
20
|
-
return (
|
|
21
|
-
<Toggle
|
|
22
|
-
checked={checked}
|
|
23
|
-
onChange={setChecked}
|
|
24
|
-
label={{ title: "启用", description: "打开后生效" }}
|
|
25
|
-
/>
|
|
26
|
-
);
|
|
27
|
-
}
|
|
28
|
-
```
|
|
29
|
-
|
|
30
|
-
> 🔥 样式走宿主 CSS 变量——无需(也不应)在插件里覆盖主题 hex。i18n 文案经宿主语言系统,组件内部文案由宿主翻译。
|
|
31
|
-
|
|
32
|
-
## 设计约束
|
|
33
|
-
|
|
34
|
-
- **单一源码,禁止拷贝**:本包 `dist/` 是构建产物(源码只在 LinkDesk 壳仓库),插件侧直接依赖 npm 分发;不要 fork 组件到插件内自维护。
|
|
35
|
-
- **跟随主题**:所有组件消费宿主 CSS 变量,插件换主题自动变色。
|
|
36
|
-
- 详见 LinkDesk 壳仓库 `docs/02-Electron架构/E6_插件生态与发布/01-插件独立构建/07-共享组件独立分发设计.md`。
|
|
37
|
-
|
|
38
|
-
## 开发(LinkDesk 壳仓库内)
|
|
39
|
-
|
|
40
|
-
```bash
|
|
41
|
-
cd packages/linkdesk-ui
|
|
42
|
-
npm run build # dist 构建:esm + 聚合 css + 声明文件
|
|
43
|
-
```
|
|
44
|
-
|
|
45
|
-
## License
|
|
46
|
-
|
|
47
|
-
MIT
|
|
1
|
+
# @linkdesk/ui
|
|
2
|
+
|
|
3
|
+
LinkDesk 共享 UI 组件库——右键菜单 / 下拉 / 组合框 / 开关 / 滑杆 / 取色器 / 表单行 / 文件路径输入 / 主题选择等。
|
|
4
|
+
|
|
5
|
+
组件源码单一宿主于 LinkDesk 壳的 `src/components/shared/`,本包是其编译分发面:**插件作者 `npm i @linkdesk/ui` 后拿到的组件与内置插件同款、自动跟随宿主主题与玻璃态**,无需关心实现细节。
|
|
6
|
+
|
|
7
|
+
## 安装
|
|
8
|
+
|
|
9
|
+
```bash
|
|
10
|
+
npm i @linkdesk/ui react react-dom
|
|
11
|
+
```
|
|
12
|
+
|
|
13
|
+
## 用法
|
|
14
|
+
|
|
15
|
+
```tsx
|
|
16
|
+
import { SelectBox, Toggle } from "@linkdesk/ui";
|
|
17
|
+
import "@linkdesk/ui/index.css"; // 绝大多数组件 CSS 由入口 JS 自动带入;需显式引入时用此路径
|
|
18
|
+
|
|
19
|
+
export function MyView() {
|
|
20
|
+
return (
|
|
21
|
+
<Toggle
|
|
22
|
+
checked={checked}
|
|
23
|
+
onChange={setChecked}
|
|
24
|
+
label={{ title: "启用", description: "打开后生效" }}
|
|
25
|
+
/>
|
|
26
|
+
);
|
|
27
|
+
}
|
|
28
|
+
```
|
|
29
|
+
|
|
30
|
+
> 🔥 样式走宿主 CSS 变量——无需(也不应)在插件里覆盖主题 hex。i18n 文案经宿主语言系统,组件内部文案由宿主翻译。
|
|
31
|
+
|
|
32
|
+
## 设计约束
|
|
33
|
+
|
|
34
|
+
- **单一源码,禁止拷贝**:本包 `dist/` 是构建产物(源码只在 LinkDesk 壳仓库),插件侧直接依赖 npm 分发;不要 fork 组件到插件内自维护。
|
|
35
|
+
- **跟随主题**:所有组件消费宿主 CSS 变量,插件换主题自动变色。
|
|
36
|
+
- 详见 LinkDesk 壳仓库 `docs/02-Electron架构/E6_插件生态与发布/01-插件独立构建/07-共享组件独立分发设计.md`。
|
|
37
|
+
|
|
38
|
+
## 开发(LinkDesk 壳仓库内)
|
|
39
|
+
|
|
40
|
+
```bash
|
|
41
|
+
cd packages/linkdesk-ui
|
|
42
|
+
npm run build # dist 构建:esm + 聚合 css + 声明文件
|
|
43
|
+
```
|
|
44
|
+
|
|
45
|
+
## License
|
|
46
|
+
|
|
47
|
+
MIT
|
package/dist/button/Button.d.ts
CHANGED
|
@@ -18,6 +18,8 @@
|
|
|
18
18
|
* marketplace 详情 action bar(禁用/启用/卸载,E6#30.14c)。
|
|
19
19
|
*/
|
|
20
20
|
type ButtonVariant = "success" | "danger" | "ghost";
|
|
21
|
+
/** E6#57.11:紧凑尺寸档——30px 工具条(TitleBar)内的文字按钮 */
|
|
22
|
+
type ButtonSize = "sm";
|
|
21
23
|
interface ButtonProps {
|
|
22
24
|
children: React.ReactNode;
|
|
23
25
|
onClick?: (e: React.MouseEvent<HTMLButtonElement>) => void;
|
|
@@ -25,6 +27,15 @@ interface ButtonProps {
|
|
|
25
27
|
title?: string;
|
|
26
28
|
type?: "button" | "submit" | "reset";
|
|
27
29
|
variant?: ButtonVariant;
|
|
30
|
+
/**
|
|
31
|
+
* E6#57.11:尺寸档。`"sm"` = 22px 高——给 TitleBar 这类 30px 工具条用。
|
|
32
|
+
*
|
|
33
|
+
* 为什么是 props 而不是 `className` / `style` 透传:本组件的**抽壳动机**就是「壳组件零依赖
|
|
34
|
+
* 插件样式」(见文件头,原 .settings-action-btn 的倒置耦合)——开透传等于把刚收编的样式主权
|
|
35
|
+
* 又还回去,且消费方(settings / marketplace / FilePathInput)会被随手改样式的口子波及。
|
|
36
|
+
* 语义化的档位则相反:要什么尺寸说尺寸,样式仍归 Button.css 一处。
|
|
37
|
+
*/
|
|
38
|
+
size?: ButtonSize;
|
|
28
39
|
}
|
|
29
|
-
declare function Button({ children, onClick, disabled, title, type, variant }: ButtonProps): import("react").JSX.Element;
|
|
40
|
+
declare function Button({ children, onClick, disabled, title, type, variant, size }: ButtonProps): import("react").JSX.Element;
|
|
30
41
|
export default Button;
|
package/dist/index.css
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
.badge{display:inline-flex;align-items:center;background:var(--badge-background);color:var(--badge-foreground);border-radius:var(--radius-sm);padding:1px 6px;font-size:var(--font-size-2xs);font-weight:500;line-height:1.4;white-space:nowrap;flex-shrink:0}.mdv{color:var(--text-primary);font-size:var(--font-size-md);line-height:1.6;overflow-wrap:break-word}.mdv>:first-child{margin-top:0}.mdv>:last-child{margin-bottom:0}.mdv h1,.mdv h2,.mdv h3,.mdv h4,.mdv h5,.mdv h6{color:var(--text-primary);font-weight:600;line-height:1.25;margin:1.2em 0 .5em}.mdv h1{font-size:var(--font-size-2xl);padding-bottom:.3em;border-bottom:1px solid var(--border)}.mdv h2{font-size:var(--font-size-xl);padding-bottom:.3em;border-bottom:1px solid var(--border)}.mdv h3{font-size:var(--font-size-lg)}.mdv h4{font-size:var(--font-size-md)}.mdv h5,.mdv h6{font-size:var(--font-size-sm);color:var(--text-secondary)}.mdv p{margin:.6em 0}.mdv ul,.mdv ol{margin:.6em 0;padding-left:1.6em}.mdv li{margin:.25em 0}.mdv li>p{margin:.3em 0}.mdv hr{border:none;border-top:1px solid var(--border);margin:1.2em 0}.mdv blockquote{margin:.8em 0;padding:.1em 1em;border-left:3px solid var(--accent);background:var(--bg-input);color:var(--text-secondary)}.mdv blockquote>:first-child{margin-top:.6em}.mdv blockquote>:last-child{margin-bottom:.6em}.mdv a{color:var(--accent);text-decoration:none}.mdv a:hover{text-decoration:underline}.mdv code{font-family:var(--font-mono);font-size:.9em;background:var(--bg-input);border-radius:var(--radius-xs);padding:.15em .4em}.mdv pre{margin:.8em 0;padding:.8em 1em;background:var(--bg-input);border:1px solid var(--border);border-radius:var(--radius-md);overflow:auto}.mdv pre code{background:transparent;padding:0;font-size:var(--font-size-sm);border-radius:0}.mdv table{border-collapse:collapse;margin:.8em 0;width:max-content;max-width:100%;font-size:var(--font-size-sm)}.mdv th,.mdv td{border:1px solid var(--border);padding:.35em .8em}.mdv th{font-weight:600;background:var(--bg-input)}.mdv img{max-width:100%;height:auto;border-radius:var(--radius-sm)}.mdv video,.mdv iframe{max-width:100%}.mdv input[type=checkbox]{margin-right:.4em;vertical-align:middle;accent-color:var(--accent)}.mdv del{color:var(--text-muted)}.button{background:var(--accent);color:var(--text-on-accent);border:1px solid transparent;border-radius:var(--radius-sm);padding:4px 12px;font-size:var(--font-size-sm);cursor:pointer;white-space:nowrap}.button:hover:not(:disabled){opacity:.85}.button:disabled{opacity:.5;cursor:default}.button--success{background:var(--success);border-color:var(--success);color:var(--badge-text)}.button--ghost{background:transparent;border-color:var(--separator);color:var(--text-secondary)}.button--ghost:hover:not(:disabled){background:var(--hover-overlay);color:var(--text-primary);opacity:1}.button--danger{background:transparent;border-color:color-mix(in srgb,var(--danger) 45%,transparent);color:var(--danger)}.button--danger:hover:not(:disabled){background:color-mix(in srgb,var(--danger) 10%,transparent);border-color:color-mix(in srgb,var(--danger) 75%,transparent);opacity:1}.colorpicker-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--z-overlay-backdrop)}.colorpicker-panel{position:fixed;z-index:var(--z-overlay);background:var(--bg-window);border:1px solid var(--separator);border-radius:var(--radius-md);padding:12px;box-shadow:var(--shadow-float);display:flex;flex-wrap:wrap;width:232px;gap:8px;top:50%;left:50%;transform:translate(-50%,-50%)}.colorpicker-panel[style]{transform:none}.colorpicker-sv{width:180px;height:150px;border-radius:var(--radius-sm);position:relative;cursor:crosshair;overflow:hidden;-webkit-user-select:none;user-select:none}.colorpicker-sv-white{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(to right,#fff,transparent)}.colorpicker-sv-black{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(to top,#000,transparent)}.colorpicker-sv-cursor{position:absolute;width:10px;height:10px;border:2px solid #fff;border-radius:var(--radius-full);box-shadow:var(--shadow-tiny);transform:translate(-50%,-50%);pointer-events:none}.colorpicker-hue{width:180px;height:14px;border-radius:var(--radius-md);position:relative;cursor:pointer;-webkit-user-select:none;user-select:none;background:linear-gradient(to right,red,#ff0,#0f0,#0ff,#00f,#f0f,red)}.colorpicker-hue-cursor{position:absolute;top:-2px;width:4px;height:18px;background:#fff;border-radius:var(--radius-xs);box-shadow:var(--shadow-tiny);transform:translate(-50%);pointer-events:none}.colorpicker-footer{display:flex;align-items:center;gap:6px;width:100%}.colorpicker-preview{width:28px;height:28px;border-radius:var(--radius-sm);border:1px solid var(--separator);flex-shrink:0}.colorpicker-hex{flex:1;min-width:0;height:calc(26px * var(--ui-scale));padding:2px 6px;border:1px solid var(--separator);border-radius:var(--radius-sm);background:var(--bg-input);color:var(--text-primary);font-family:var(--font-mono);font-size:var(--font-size-sm);outline:none;box-sizing:border-box}.colorpicker-hex:focus{border-color:var(--accent)}.colorpicker-ok{height:calc(26px * var(--ui-scale));padding:0 12px;background:var(--accent);color:var(--text-on-accent);border:none;border-radius:var(--radius-sm);font-size:var(--font-size-sm);cursor:pointer;flex-shrink:0}.colorpicker-ok:hover{background:var(--accent-hover)}.colorpicker-presets{width:100%;display:flex;gap:6px;flex-wrap:wrap;padding-top:4px;border-top:1px solid var(--separator)}.colorpicker-preset{width:18px;height:18px;border-radius:var(--radius-full);border:1px solid var(--separator);cursor:pointer;transition:transform .1s}.colorpicker-preset:hover{transform:scale(1.2);border-color:var(--accent)}.combobox{position:relative;display:inline-block;min-width:100px}.combobox-field{display:flex;align-items:center;gap:4px;padding:3px 6px;background:var(--bg-input);color:var(--text-primary);border:1px solid var(--border);border-radius:var(--radius-xs);font-size:var(--font-size-md);line-height:1.6;cursor:text}.combobox-field:hover:not(.selectbox-disabled){border-color:var(--accent)}.combobox.selectbox-open .combobox-field{border-color:var(--accent)}.combobox-input{flex:1;min-width:0;padding:0;background:transparent;border:none;outline:none;color:inherit;font:inherit;line-height:1.6}.combobox-input::placeholder{color:var(--text-muted)}.combobox-input:disabled{opacity:.5}.selectbox{position:relative;display:inline-block;min-width:100px;-webkit-user-select:none;user-select:none}.selectbox-trigger{display:flex;align-items:center;justify-content:space-between;gap:4px;width:100%;padding:3px 6px;background:var(--bg-input);color:var(--text-primary);border:1px solid var(--border);border-radius:var(--radius-xs);font-size:var(--font-size-md);line-height:1.6;cursor:pointer;font-family:inherit;text-align:left}.selectbox-trigger:hover:not(:disabled){border-color:var(--accent)}.selectbox-trigger:disabled{opacity:.5;cursor:default}.selectbox-open .selectbox-trigger{border-color:var(--accent)}.selectbox-label{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.selectbox-swatch{display:inline-block;width:10px;height:10px;margin-right:5px;border-radius:50%;border:1px solid color-mix(in srgb,var(--text-primary) 35%,transparent);vertical-align:middle;flex-shrink:0}.selectbox-arrow{flex-shrink:0;font-size:var(--font-size-sm);transition:transform .15s ease}.selectbox-arrow-up{transform:rotate(180deg)}.selectbox-dropdown{position:absolute;top:100%;left:0;margin-top:2px;background:var(--bg-window);border:1px solid var(--border);border-radius:var(--radius-sm);box-shadow:var(--shadow-pop);overflow:hidden;z-index:var(--z-dropdown);max-height:260px;max-width:calc(100vw - 24px);display:flex;flex-direction:column;animation:selectbox-in .1s ease-out}@keyframes selectbox-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.selectbox-search{padding:4px;border-bottom:1px solid var(--separator)}.selectbox-search-input{width:100%;padding:2px 6px;background:var(--bg-input);color:var(--text-primary);border:1px solid var(--border);border-radius:var(--radius-xs);font-size:var(--font-size-sm);font-family:inherit;outline:none;box-sizing:border-box}.selectbox-search-input:focus{border-color:var(--accent)}.selectbox-list{list-style:none;margin:0;padding:2px 0;overflow-y:auto;outline:none}.selectbox-item{padding:3px 8px;font-size:var(--font-size-md);line-height:1.6;color:var(--text-primary);cursor:pointer}.selectbox-item-focus{background:var(--accent);color:var(--text-on-accent)}.selectbox-item-selected:not(.selectbox-item-focus){background:var(--bg-selection)}.selectbox-empty{padding:6px 8px;font-size:var(--font-size-sm);color:var(--text-muted);text-align:center}.selectbox-disabled{pointer-events:none}.ctx-menu{position:fixed;min-width:140px;max-width:280px;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-hairline),var(--context-menu-shadow);padding:4px 0;overflow:hidden;outline:none;opacity:0;transform:scale(.96);transform-origin:top left;transition:opacity .15s ease-out,transform .15s ease-out}.ctx-menu:focus-visible{outline:none}.ctx-menu.show{opacity:1;transform:scale(1)}.ctx-item{display:flex;align-items:center;gap:8px;padding:6px 12px;font-size:var(--font-size-md);font-weight:400;line-height:1.6;color:var(--text-primary);cursor:pointer;transition:background 60ms;-webkit-user-select:none;user-select:none}.ctx-item:hover,.ctx-item.focused{background:var(--tab-hover-bg);color:var(--text-primary);box-shadow:inset 2px 0 0 var(--accent)}.ctx-item-icon{flex-shrink:0;width:calc(16px * var(--ui-scale));height:calc(16px * var(--ui-scale));font-size:var(--font-size-lg);display:flex;align-items:center;justify-content:center;opacity:.75}.ctx-item:hover .ctx-item-icon,.ctx-item.focused .ctx-item-icon{opacity:1;color:var(--accent)}.ctx-item-shortcut{flex-shrink:0;margin-left:12px;font-size:var(--font-size-xs);opacity:.6;font-family:var(--font-mono);letter-spacing:.2px}.ctx-item:hover .ctx-item-shortcut,.ctx-item.focused .ctx-item-shortcut{opacity:.9;color:var(--text-secondary)}.ctx-item-check{flex-shrink:0;width:16px;font-size:var(--font-size-sm);color:var(--accent);display:flex;align-items:center}.ctx-item-label{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ctx-divider{height:1px;background:var(--separator);margin:4px 12px}.ctx-item-danger{color:var(--danger)}.ctx-item-danger .ctx-item-icon{opacity:1}.ctx-item-danger:hover,.ctx-item-danger.focused{background:var(--tab-hover-bg);color:var(--danger);box-shadow:inset 2px 0 0 var(--danger)}.ctx-item-danger:hover .ctx-item-shortcut,.ctx-item-danger.focused .ctx-item-shortcut{opacity:.9;color:var(--text-secondary)}.form-row{display:flex;align-items:center;gap:8px;margin-bottom:6px;font-size:var(--font-size-sm);color:var(--text-primary)}.form-row>label,.form-row>.form-label{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.form-row>.toggle,.form-row>.input,.form-row>select,.form-row>.form-control{flex-shrink:0}.number-input{display:inline-flex;align-items:center;gap:0}.number-input-btn{display:flex;align-items:center;justify-content:center;width:calc(22px * var(--ui-scale));height:calc(24px * var(--ui-scale));padding:0;border:1px solid var(--border);background:var(--bg-input);color:var(--text-primary);font-size:var(--font-size-lg);line-height:1;cursor:pointer;transition:background .15s,border-color .15s;-webkit-user-select:none;user-select:none}.number-input-btn:first-child{border-radius:var(--radius-sm) 0 0 var(--radius-sm);border-right:none}.number-input-btn:last-child{border-radius:0 var(--radius-sm) var(--radius-sm) 0;border-left:none}.number-input-btn:hover:not(:disabled){background:var(--tab-hover-bg)}.number-input-btn:active:not(:disabled){background:var(--accent);color:var(--text-on-accent)}.number-input-btn:disabled{opacity:.3;cursor:default}.number-input-field{border-radius:0;text-align:center;width:44px}.number-input-unit{margin:0 6px 0 8px;color:var(--text-muted);font-size:var(--font-size-sm);line-height:1;-webkit-user-select:none;user-select:none}.segmented-radio{display:flex;gap:4px}.segmented-radio__option{display:flex;flex-direction:column;align-items:center;gap:4px;padding:4px 8px;background:transparent;border:1px solid var(--separator);border-radius:var(--radius-sm);cursor:pointer;transition:border-color .12s ease,background .12s ease}.segmented-radio__option:hover{border-color:var(--text-muted);background:var(--hover-overlay)}.segmented-radio__option:focus-visible{outline:1px solid var(--accent);outline-offset:1px}.segmented-radio__option.is-selected{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 12%,transparent)}.segmented-radio__label{font-size:var(--font-size-sm);color:var(--text-secondary);white-space:nowrap}.segmented-radio__option.is-selected .segmented-radio__label{color:var(--text-primary)}.slider{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:130px;height:4px;margin:0;border-radius:var(--radius-sm);background:linear-gradient(to right,var(--accent) var(--slider-pct, 0%),var(--border) var(--slider-pct, 0%));cursor:pointer;outline-offset:4px}.slider:disabled{opacity:.4;cursor:default}.slider::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:12px;height:12px;border-radius:50%;background:var(--text-primary);box-shadow:var(--shadow-tiny);cursor:grab}.slider::-webkit-slider-thumb:active{cursor:grabbing}.sle{display:flex;flex-direction:column;gap:4px;width:100%}.sle-row{display:flex;align-items:center;gap:6px;min-height:calc(24px * var(--ui-scale, 1));width:100%;box-sizing:border-box}.sle-glyph{font-size:var(--font-size-sm);color:var(--text-muted);flex-shrink:0}.sle-url{flex:1;min-width:0;font-family:var(--font-mono);font-size:var(--font-size-xs);color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sle-badge{flex-shrink:0;font-size:var(--font-size-2xs);color:var(--text-muted);background:var(--bg-window);padding:1px 4px;border-radius:3px;white-space:nowrap}.sle-lock{font-size:var(--font-size-sm);color:var(--text-muted);flex-shrink:0}.sle-del{display:flex;align-items:center;justify-content:center;width:calc(24px * var(--ui-scale, 1));height:calc(24px * var(--ui-scale, 1));padding:0;background:transparent;border:none;border-radius:3px;color:var(--text-muted);cursor:pointer;font-size:var(--font-size-sm);flex-shrink:0;transition:color .15s ease,background .15s ease}.sle-del:hover{color:var(--error);background:var(--hover-overlay)}.sle-add-row{display:flex;align-items:center;gap:6px;width:100%}.sle-input{flex:1;min-width:0;box-sizing:border-box;background:var(--bg-input);border:1px solid var(--border);border-radius:var(--radius-sm);padding:4px 8px;color:var(--text-primary);font-family:var(--font-mono);font-size:var(--font-size-xs);transition:border-color .15s;outline:none}.sle-input:focus{border-color:var(--accent)}.sle-add-btn{flex-shrink:0;padding:3px 8px;border:1px solid var(--separator);border-radius:4px;background:transparent;color:var(--text-primary);cursor:pointer;font-size:var(--font-size-xs);font-family:inherit;white-space:nowrap}.sle-add-btn:hover:not(:disabled){background:var(--tab-hover-bg)}.sle-add-btn:disabled{opacity:.5;cursor:not-allowed}.sle-msg{display:block;font-size:var(--font-size-2xs);line-height:1.5;padding:0 2px}.sle-msg--error{color:var(--error)}.sle-msg--hint{color:var(--text-muted)}.theme-picker{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;width:100%}.theme-card{border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden;cursor:pointer;background:var(--bg-card);padding:0;text-align:left;color:inherit;font:inherit;transition:border-color .15s ease,transform .15s ease}.theme-card:hover{border-color:var(--separator);transform:translateY(-1px)}.theme-card:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.theme-card.active{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}.theme-preview{height:44px;display:flex;align-items:center;gap:3px;padding:8px;overflow:hidden}.theme-preview .pv-bar{width:26px;height:12px;border-radius:var(--radius-xs)}.theme-preview .pv-dots{display:flex;gap:3px}.theme-preview .pv-dot{width:12px;height:12px;border-radius:50%;border:1px solid color-mix(in srgb,var(--text-primary) 35%,transparent)}.theme-card .tname{padding:6px 8px;font-size:var(--font-size-xs);color:var(--text-secondary);display:flex;align-items:center;justify-content:space-between;gap:4px;overflow:hidden}.theme-card.active .tname{color:var(--text-primary)}.theme-card .tname-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.theme-card .badge{font-size:var(--font-size-2xs);color:var(--accent);white-space:nowrap}.theme-picker-empty{color:var(--text-muted);font-size:var(--font-size-sm);padding:8px 0}.toggle{width:36px;height:20px;border-radius:var(--radius-pill);background:var(--border);transition:background .15s;cursor:pointer;position:relative;flex-shrink:0}.toggle.on{background:var(--accent)}.toggle:after{content:"";position:absolute;top:2px;left:2px;width:16px;height:16px;border-radius:var(--radius-pill);background:var(--toggle-knob);transition:transform .15s}.toggle.on:after{transform:translate(16px);background:var(--toggle-knob-on, var(--text-on-accent))}.toggle.disabled{opacity:.4;cursor:not-allowed}.inline-input{border:1px solid var(--border);background:var(--bg-input);color:var(--text-primary);font-family:inherit;outline:none;box-sizing:border-box;width:100%;transition:border-color .15s ease-out,box-shadow .15s ease-out}.inline-input:focus{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}.inline-input--compact{height:calc(22px * var(--ui-scale));font-size:var(--font-size-sm);padding:0 4px}.inline-input--normal{height:calc(32px * var(--ui-scale));font-size:var(--font-size-md);padding:0 8px}
|
|
1
|
+
.badge{display:inline-flex;align-items:center;background:var(--badge-background);color:var(--badge-foreground);border-radius:var(--radius-sm);padding:1px 6px;font-size:var(--font-size-2xs);font-weight:500;line-height:1.4;white-space:nowrap;flex-shrink:0}.mdv{color:var(--text-primary);font-size:var(--font-size-md);line-height:1.6;overflow-wrap:break-word}.mdv>:first-child{margin-top:0}.mdv>:last-child{margin-bottom:0}.mdv h1,.mdv h2,.mdv h3,.mdv h4,.mdv h5,.mdv h6{color:var(--text-primary);font-weight:600;line-height:1.25;margin:1.2em 0 .5em}.mdv h1{font-size:var(--font-size-2xl);padding-bottom:.3em;border-bottom:1px solid var(--border)}.mdv h2{font-size:var(--font-size-xl);padding-bottom:.3em;border-bottom:1px solid var(--border)}.mdv h3{font-size:var(--font-size-lg)}.mdv h4{font-size:var(--font-size-md)}.mdv h5,.mdv h6{font-size:var(--font-size-sm);color:var(--text-secondary)}.mdv p{margin:.6em 0}.mdv ul,.mdv ol{margin:.6em 0;padding-left:1.6em}.mdv li{margin:.25em 0}.mdv li>p{margin:.3em 0}.mdv hr{border:none;border-top:1px solid var(--border);margin:1.2em 0}.mdv blockquote{margin:.8em 0;padding:.1em 1em;border-left:3px solid var(--accent);background:var(--bg-input);color:var(--text-secondary)}.mdv blockquote>:first-child{margin-top:.6em}.mdv blockquote>:last-child{margin-bottom:.6em}.mdv a{color:var(--accent);text-decoration:none}.mdv a:hover{text-decoration:underline}.mdv code{font-family:var(--font-mono);font-size:.9em;background:var(--bg-input);border-radius:var(--radius-xs);padding:.15em .4em}.mdv pre{margin:.8em 0;padding:.8em 1em;background:var(--bg-input);border:1px solid var(--border);border-radius:var(--radius-md);overflow:auto}.mdv pre code{background:transparent;padding:0;font-size:var(--font-size-sm);border-radius:0}.mdv table{border-collapse:collapse;margin:.8em 0;width:max-content;max-width:100%;font-size:var(--font-size-sm)}.mdv th,.mdv td{border:1px solid var(--border);padding:.35em .8em}.mdv th{font-weight:600;background:var(--bg-input)}.mdv img{max-width:100%;height:auto;border-radius:var(--radius-sm)}.mdv video,.mdv iframe{max-width:100%}.mdv input[type=checkbox]{margin-right:.4em;vertical-align:middle;accent-color:var(--accent)}.mdv del{color:var(--text-muted)}.button{background:var(--accent);color:var(--text-on-accent);border:1px solid transparent;border-radius:var(--radius-sm);padding:4px 12px;font-size:var(--font-size-sm);cursor:pointer;white-space:nowrap}.button:hover:not(:disabled){opacity:.85}.button:disabled{opacity:.5;cursor:default}.button--sm{display:inline-flex;align-items:center;height:22px;padding:0 12px;font-size:var(--font-size-xs)}.button--success{background:var(--success);border-color:var(--success);color:var(--badge-text)}.button--ghost{background:transparent;border-color:var(--separator);color:var(--text-secondary)}.button--ghost:hover:not(:disabled){background:var(--hover-overlay);color:var(--text-primary);opacity:1}.button--danger{background:transparent;border-color:color-mix(in srgb,var(--danger) 45%,transparent);color:var(--danger)}.button--danger:hover:not(:disabled){background:color-mix(in srgb,var(--danger) 10%,transparent);border-color:color-mix(in srgb,var(--danger) 75%,transparent);opacity:1}.colorpicker-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--z-overlay-backdrop)}.colorpicker-panel{position:fixed;z-index:var(--z-overlay);background:var(--bg-window);border:1px solid var(--separator);border-radius:var(--radius-md);padding:12px;box-shadow:var(--shadow-float);display:flex;flex-wrap:wrap;width:232px;gap:8px;top:50%;left:50%;transform:translate(-50%,-50%)}.colorpicker-panel[style]{transform:none}.colorpicker-sv{width:180px;height:150px;border-radius:var(--radius-sm);position:relative;cursor:crosshair;overflow:hidden;-webkit-user-select:none;user-select:none}.colorpicker-sv-white{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(to right,#fff,transparent)}.colorpicker-sv-black{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(to top,#000,transparent)}.colorpicker-sv-cursor{position:absolute;width:10px;height:10px;border:2px solid #fff;border-radius:var(--radius-full);box-shadow:var(--shadow-tiny);transform:translate(-50%,-50%);pointer-events:none}.colorpicker-hue{width:180px;height:14px;border-radius:var(--radius-md);position:relative;cursor:pointer;-webkit-user-select:none;user-select:none;background:linear-gradient(to right,red,#ff0,#0f0,#0ff,#00f,#f0f,red)}.colorpicker-hue-cursor{position:absolute;top:-2px;width:4px;height:18px;background:#fff;border-radius:var(--radius-xs);box-shadow:var(--shadow-tiny);transform:translate(-50%);pointer-events:none}.colorpicker-footer{display:flex;align-items:center;gap:6px;width:100%}.colorpicker-preview{width:28px;height:28px;border-radius:var(--radius-sm);border:1px solid var(--separator);flex-shrink:0}.colorpicker-hex{flex:1;min-width:0;height:calc(26px * var(--ui-scale));padding:2px 6px;border:1px solid var(--separator);border-radius:var(--radius-sm);background:var(--bg-input);color:var(--text-primary);font-family:var(--font-mono);font-size:var(--font-size-sm);outline:none;box-sizing:border-box}.colorpicker-hex:focus{border-color:var(--accent)}.colorpicker-ok{height:calc(26px * var(--ui-scale));padding:0 12px;background:var(--accent);color:var(--text-on-accent);border:none;border-radius:var(--radius-sm);font-size:var(--font-size-sm);cursor:pointer;flex-shrink:0}.colorpicker-ok:hover{background:var(--accent-hover)}.colorpicker-presets{width:100%;display:flex;gap:6px;flex-wrap:wrap;padding-top:4px;border-top:1px solid var(--separator)}.colorpicker-preset{width:18px;height:18px;border-radius:var(--radius-full);border:1px solid var(--separator);cursor:pointer;transition:transform .1s}.colorpicker-preset:hover{transform:scale(1.2);border-color:var(--accent)}.combobox{position:relative;display:inline-block;min-width:100px}.combobox-field{display:flex;align-items:center;gap:4px;padding:3px 6px;background:var(--bg-input);color:var(--text-primary);border:1px solid var(--border);border-radius:var(--radius-xs);font-size:var(--font-size-md);line-height:1.6;cursor:text}.combobox-field:hover:not(.selectbox-disabled){border-color:var(--accent)}.combobox.selectbox-open .combobox-field{border-color:var(--accent)}.combobox-input{flex:1;min-width:0;padding:0;background:transparent;border:none;outline:none;color:inherit;font:inherit;line-height:1.6}.combobox-input::placeholder{color:var(--text-muted)}.combobox-input:disabled{opacity:.5}.selectbox{position:relative;display:inline-block;min-width:100px;-webkit-user-select:none;user-select:none}.selectbox-trigger{display:flex;align-items:center;justify-content:space-between;gap:4px;width:100%;padding:3px 6px;background:var(--bg-input);color:var(--text-primary);border:1px solid var(--border);border-radius:var(--radius-xs);font-size:var(--font-size-md);line-height:1.6;cursor:pointer;font-family:inherit;text-align:left}.selectbox-trigger:hover:not(:disabled){border-color:var(--accent)}.selectbox-trigger:disabled{opacity:.5;cursor:default}.selectbox-open .selectbox-trigger{border-color:var(--accent)}.selectbox-label{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.selectbox-swatch{display:inline-block;width:10px;height:10px;margin-right:5px;border-radius:50%;border:1px solid color-mix(in srgb,var(--text-primary) 35%,transparent);vertical-align:middle;flex-shrink:0}.selectbox-arrow{flex-shrink:0;font-size:var(--font-size-sm);transition:transform .15s ease}.selectbox-arrow-up{transform:rotate(180deg)}.selectbox-dropdown{position:absolute;top:100%;left:0;margin-top:2px;background:var(--bg-window);border:1px solid var(--border);border-radius:var(--radius-sm);box-shadow:var(--shadow-pop);overflow:hidden;z-index:var(--z-dropdown);max-height:260px;max-width:calc(100vw - 24px);display:flex;flex-direction:column;animation:selectbox-in .1s ease-out}@keyframes selectbox-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.selectbox-search{padding:4px;border-bottom:1px solid var(--separator)}.selectbox-search-input{width:100%;padding:2px 6px;background:var(--bg-input);color:var(--text-primary);border:1px solid var(--border);border-radius:var(--radius-xs);font-size:var(--font-size-sm);font-family:inherit;outline:none;box-sizing:border-box}.selectbox-search-input:focus{border-color:var(--accent)}.selectbox-list{list-style:none;margin:0;padding:2px 0;overflow-y:auto;outline:none}.selectbox-item{padding:3px 8px;font-size:var(--font-size-md);line-height:1.6;color:var(--text-primary);cursor:pointer}.selectbox-item-focus{background:var(--accent);color:var(--text-on-accent)}.selectbox-item-selected:not(.selectbox-item-focus){background:var(--bg-selection)}.selectbox-empty{padding:6px 8px;font-size:var(--font-size-sm);color:var(--text-muted);text-align:center}.selectbox-disabled{pointer-events:none}.ctx-menu{position:fixed;min-width:140px;max-width:280px;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-hairline),var(--context-menu-shadow);padding:4px 0;overflow:hidden;outline:none;opacity:0;transform:scale(.96);transform-origin:top left;transition:opacity .15s ease-out,transform .15s ease-out}.ctx-menu:focus-visible{outline:none}.ctx-menu.show{opacity:1;transform:scale(1)}.ctx-item{display:flex;align-items:center;gap:8px;padding:6px 12px;font-size:var(--font-size-md);font-weight:400;line-height:1.6;color:var(--text-primary);cursor:pointer;transition:background 60ms;-webkit-user-select:none;user-select:none}.ctx-item:hover,.ctx-item.focused{background:var(--tab-hover-bg);color:var(--text-primary);box-shadow:inset 2px 0 0 var(--accent)}.ctx-item-icon{flex-shrink:0;width:calc(16px * var(--ui-scale));height:calc(16px * var(--ui-scale));font-size:var(--font-size-lg);display:flex;align-items:center;justify-content:center;opacity:.75}.ctx-item:hover .ctx-item-icon,.ctx-item.focused .ctx-item-icon{opacity:1;color:var(--accent)}.ctx-item-shortcut{flex-shrink:0;margin-left:12px;font-size:var(--font-size-xs);opacity:.6;font-family:var(--font-mono);letter-spacing:.2px}.ctx-item:hover .ctx-item-shortcut,.ctx-item.focused .ctx-item-shortcut{opacity:.9;color:var(--text-secondary)}.ctx-item-check{flex-shrink:0;width:16px;font-size:var(--font-size-sm);color:var(--accent);display:flex;align-items:center}.ctx-item-label{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ctx-divider{height:1px;background:var(--separator);margin:4px 12px}.ctx-item-danger{color:var(--danger)}.ctx-item-danger .ctx-item-icon{opacity:1}.ctx-item-danger:hover,.ctx-item-danger.focused{background:var(--tab-hover-bg);color:var(--danger);box-shadow:inset 2px 0 0 var(--danger)}.ctx-item-danger:hover .ctx-item-shortcut,.ctx-item-danger.focused .ctx-item-shortcut{opacity:.9;color:var(--text-secondary)}.form-row{display:flex;align-items:center;gap:8px;margin-bottom:6px;font-size:var(--font-size-sm);color:var(--text-primary)}.form-row>label,.form-row>.form-label{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.form-row>.toggle,.form-row>.input,.form-row>select,.form-row>.form-control{flex-shrink:0}.number-input{display:inline-flex;align-items:center;gap:0}.number-input-btn{display:flex;align-items:center;justify-content:center;width:calc(22px * var(--ui-scale));height:calc(24px * var(--ui-scale));padding:0;border:1px solid var(--border);background:var(--bg-input);color:var(--text-primary);font-size:var(--font-size-lg);line-height:1;cursor:pointer;transition:background .15s,border-color .15s;-webkit-user-select:none;user-select:none}.number-input-btn:first-child{border-radius:var(--radius-sm) 0 0 var(--radius-sm);border-right:none}.number-input-btn:last-child{border-radius:0 var(--radius-sm) var(--radius-sm) 0;border-left:none}.number-input-btn:hover:not(:disabled){background:var(--tab-hover-bg)}.number-input-btn:active:not(:disabled){background:var(--accent);color:var(--text-on-accent)}.number-input-btn:disabled{opacity:.3;cursor:default}.number-input-field{border-radius:0;text-align:center;width:44px}.number-input-unit{margin:0 6px 0 8px;color:var(--text-muted);font-size:var(--font-size-sm);line-height:1;-webkit-user-select:none;user-select:none}.segmented-radio{display:flex;gap:4px}.segmented-radio__option{display:flex;flex-direction:column;align-items:center;gap:4px;padding:4px 8px;background:transparent;border:1px solid var(--separator);border-radius:var(--radius-sm);cursor:pointer;transition:border-color .12s ease,background .12s ease}.segmented-radio__option:hover{border-color:var(--text-muted);background:var(--hover-overlay)}.segmented-radio__option:focus-visible{outline:1px solid var(--accent);outline-offset:1px}.segmented-radio__option.is-selected{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 12%,transparent)}.segmented-radio__label{font-size:var(--font-size-sm);color:var(--text-secondary);white-space:nowrap}.segmented-radio__option.is-selected .segmented-radio__label{color:var(--text-primary)}.slider{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:130px;height:4px;margin:0;border-radius:var(--radius-sm);background:linear-gradient(to right,var(--accent) var(--slider-pct, 0%),var(--border) var(--slider-pct, 0%));cursor:pointer;outline-offset:4px}.slider:disabled{opacity:.4;cursor:default}.slider::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:12px;height:12px;border-radius:50%;background:var(--text-primary);box-shadow:var(--shadow-tiny);cursor:grab}.slider::-webkit-slider-thumb:active{cursor:grabbing}.sle{display:flex;flex-direction:column;gap:4px;width:100%}.sle-row{display:flex;align-items:center;gap:6px;min-height:calc(24px * var(--ui-scale, 1));width:100%;box-sizing:border-box}.sle-glyph{font-size:var(--font-size-sm);color:var(--text-muted);flex-shrink:0}.sle-url{flex:1;min-width:0;font-family:var(--font-mono);font-size:var(--font-size-xs);color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sle-badge{flex-shrink:0;font-size:var(--font-size-2xs);color:var(--text-muted);background:var(--bg-window);padding:1px 4px;border-radius:3px;white-space:nowrap}.sle-lock{font-size:var(--font-size-sm);color:var(--text-muted);flex-shrink:0}.sle-del{display:flex;align-items:center;justify-content:center;width:calc(24px * var(--ui-scale, 1));height:calc(24px * var(--ui-scale, 1));padding:0;background:transparent;border:none;border-radius:3px;color:var(--text-muted);cursor:pointer;font-size:var(--font-size-sm);flex-shrink:0;transition:color .15s ease,background .15s ease}.sle-del:hover{color:var(--error);background:var(--hover-overlay)}.sle-add-row{display:flex;align-items:center;gap:6px;width:100%}.sle-input{flex:1;min-width:0;box-sizing:border-box;background:var(--bg-input);border:1px solid var(--border);border-radius:var(--radius-sm);padding:4px 8px;color:var(--text-primary);font-family:var(--font-mono);font-size:var(--font-size-xs);transition:border-color .15s;outline:none}.sle-input:focus{border-color:var(--accent)}.sle-add-btn{flex-shrink:0;padding:3px 8px;border:1px solid var(--separator);border-radius:4px;background:transparent;color:var(--text-primary);cursor:pointer;font-size:var(--font-size-xs);font-family:inherit;white-space:nowrap}.sle-add-btn:hover:not(:disabled){background:var(--tab-hover-bg)}.sle-add-btn:disabled{opacity:.5;cursor:not-allowed}.sle-msg{display:block;font-size:var(--font-size-2xs);line-height:1.5;padding:0 2px}.sle-msg--error{color:var(--error)}.sle-msg--hint{color:var(--text-muted)}.theme-picker{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;width:100%}.theme-card{border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden;cursor:pointer;background:var(--bg-card);padding:0;text-align:left;color:inherit;font:inherit;transition:border-color .15s ease,transform .15s ease}.theme-card:hover{border-color:var(--separator);transform:translateY(-1px)}.theme-card:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.theme-card.active{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}.theme-preview{height:44px;display:flex;align-items:center;gap:3px;padding:8px;overflow:hidden}.theme-preview .pv-bar{width:26px;height:12px;border-radius:var(--radius-xs)}.theme-preview .pv-dots{display:flex;gap:3px}.theme-preview .pv-dot{width:12px;height:12px;border-radius:50%;border:1px solid color-mix(in srgb,var(--text-primary) 35%,transparent)}.theme-card .tname{padding:6px 8px;font-size:var(--font-size-xs);color:var(--text-secondary);display:flex;align-items:center;justify-content:space-between;gap:4px;overflow:hidden}.theme-card.active .tname{color:var(--text-primary)}.theme-card .tname-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.theme-card .badge{font-size:var(--font-size-2xs);color:var(--accent);white-space:nowrap}.theme-picker-empty{color:var(--text-muted);font-size:var(--font-size-sm);padding:8px 0}.toggle{width:36px;height:20px;border-radius:var(--radius-pill);background:var(--border);transition:background .15s;cursor:pointer;position:relative;flex-shrink:0}.toggle.on{background:var(--accent)}.toggle:after{content:"";position:absolute;top:2px;left:2px;width:16px;height:16px;border-radius:var(--radius-pill);background:var(--toggle-knob);transition:transform .15s}.toggle.on:after{transform:translate(16px);background:var(--toggle-knob-on, var(--text-on-accent))}.toggle.disabled{opacity:.4;cursor:not-allowed}.inline-input{border:1px solid var(--border);background:var(--bg-input);color:var(--text-primary);font-family:inherit;outline:none;box-sizing:border-box;width:100%;transition:border-color .15s ease-out,box-shadow .15s ease-out}.inline-input:focus{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}.inline-input--compact{height:calc(22px * var(--ui-scale));font-size:var(--font-size-sm);padding:0 4px}.inline-input--normal{height:calc(32px * var(--ui-scale));font-size:var(--font-size-md);padding:0 8px}
|
package/dist/index.js
CHANGED
|
@@ -15529,9 +15529,9 @@ function Zp({ markdown: e, className: t, assetBase: n }) {
|
|
|
15529
15529
|
) });
|
|
15530
15530
|
}
|
|
15531
15531
|
const dT = Zs(Zp);
|
|
15532
|
-
function eE({ children: e, onClick: t, disabled: n, title: r, type: i = "button", variant: u }) {
|
|
15533
|
-
const
|
|
15534
|
-
return /* @__PURE__ */ U("button", { type: i, className:
|
|
15532
|
+
function eE({ children: e, onClick: t, disabled: n, title: r, type: i = "button", variant: u, size: a }) {
|
|
15533
|
+
const o = ["button", u && `button--${u}`, a && `button--${a}`].filter(Boolean).join(" ");
|
|
15534
|
+
return /* @__PURE__ */ U("button", { type: i, className: o, onClick: t, disabled: n, title: r, children: e });
|
|
15535
15535
|
}
|
|
15536
15536
|
var bt = {}, du;
|
|
15537
15537
|
function tE() {
|
|
@@ -16939,14 +16939,14 @@ function xT(...e) {
|
|
|
16939
16939
|
return { icon: _E, iconSource: "url" };
|
|
16940
16940
|
}
|
|
16941
16941
|
/**
|
|
16942
|
-
* @license lucide-react v1.
|
|
16942
|
+
* @license lucide-react v1.42.0 - ISC
|
|
16943
16943
|
*
|
|
16944
16944
|
* This source code is licensed under the ISC license.
|
|
16945
16945
|
* See the LICENSE file in the root directory of this source tree.
|
|
16946
16946
|
*/
|
|
16947
16947
|
const CE = (e) => e == null ? void 0 : e.replace(/([a-z0-9])([A-Z])/g, "$1-$2").toLowerCase();
|
|
16948
16948
|
/**
|
|
16949
|
-
* @license lucide-react v1.
|
|
16949
|
+
* @license lucide-react v1.42.0 - ISC
|
|
16950
16950
|
*
|
|
16951
16951
|
* This source code is licensed under the ISC license.
|
|
16952
16952
|
* See the LICENSE file in the root directory of this source tree.
|
|
@@ -16962,7 +16962,7 @@ function kE(e, t, n = []) {
|
|
|
16962
16962
|
};
|
|
16963
16963
|
}
|
|
16964
16964
|
/**
|
|
16965
|
-
* @license lucide-react v1.
|
|
16965
|
+
* @license lucide-react v1.42.0 - ISC
|
|
16966
16966
|
*
|
|
16967
16967
|
* This source code is licensed under the ISC license.
|
|
16968
16968
|
* See the LICENSE file in the root directory of this source tree.
|
|
@@ -16979,7 +16979,7 @@ const IE = (e) => {
|
|
|
16979
16979
|
return t;
|
|
16980
16980
|
};
|
|
16981
16981
|
/**
|
|
16982
|
-
* @license lucide-react v1.
|
|
16982
|
+
* @license lucide-react v1.42.0 - ISC
|
|
16983
16983
|
*
|
|
16984
16984
|
* This source code is licensed under the ISC license.
|
|
16985
16985
|
* See the LICENSE file in the root directory of this source tree.
|
|
@@ -16989,14 +16989,14 @@ const yE = (e) => {
|
|
|
16989
16989
|
return t.charAt(0).toUpperCase() + t.slice(1);
|
|
16990
16990
|
};
|
|
16991
16991
|
/**
|
|
16992
|
-
* @license lucide-react v1.
|
|
16992
|
+
* @license lucide-react v1.42.0 - ISC
|
|
16993
16993
|
*
|
|
16994
16994
|
* This source code is licensed under the ISC license.
|
|
16995
16995
|
* See the LICENSE file in the root directory of this source tree.
|
|
16996
16996
|
*/
|
|
16997
16997
|
const kr = (...e) => e.filter((t, n, r) => !!t && t.trim() !== "" && r.indexOf(t) === n).join(" ").trim();
|
|
16998
16998
|
/**
|
|
16999
|
-
* @license lucide-react v1.
|
|
16999
|
+
* @license lucide-react v1.42.0 - ISC
|
|
17000
17000
|
*
|
|
17001
17001
|
* This source code is licensed under the ISC license.
|
|
17002
17002
|
* See the LICENSE file in the root directory of this source tree.
|
|
@@ -17013,7 +17013,7 @@ const it = {
|
|
|
17013
17013
|
"stroke-linejoin": "round"
|
|
17014
17014
|
};
|
|
17015
17015
|
/**
|
|
17016
|
-
* @license lucide-react v1.
|
|
17016
|
+
* @license lucide-react v1.42.0 - ISC
|
|
17017
17017
|
*
|
|
17018
17018
|
* This source code is licensed under the ISC license.
|
|
17019
17019
|
* See the LICENSE file in the root directory of this source tree.
|
|
@@ -17058,7 +17058,7 @@ function NE(e, t = {}) {
|
|
|
17058
17058
|
];
|
|
17059
17059
|
}
|
|
17060
17060
|
/**
|
|
17061
|
-
* @license lucide-react v1.
|
|
17061
|
+
* @license lucide-react v1.42.0 - ISC
|
|
17062
17062
|
*
|
|
17063
17063
|
* This source code is licensed under the ISC license.
|
|
17064
17064
|
* See the LICENSE file in the root directory of this source tree.
|
|
@@ -17077,7 +17077,7 @@ function xE(e, t = {}) {
|
|
|
17077
17077
|
});
|
|
17078
17078
|
}
|
|
17079
17079
|
/**
|
|
17080
|
-
* @license lucide-react v1.
|
|
17080
|
+
* @license lucide-react v1.42.0 - ISC
|
|
17081
17081
|
*
|
|
17082
17082
|
* This source code is licensed under the ISC license.
|
|
17083
17083
|
* See the LICENSE file in the root directory of this source tree.
|
|
@@ -17138,7 +17138,7 @@ const SE = (e) => {
|
|
|
17138
17138
|
}
|
|
17139
17139
|
);
|
|
17140
17140
|
/**
|
|
17141
|
-
* @license lucide-react v1.
|
|
17141
|
+
* @license lucide-react v1.42.0 - ISC
|
|
17142
17142
|
*
|
|
17143
17143
|
* This source code is licensed under the ISC license.
|
|
17144
17144
|
* See the LICENSE file in the root directory of this source tree.
|
|
@@ -17155,7 +17155,7 @@ function de(e, t = [], n = []) {
|
|
|
17155
17155
|
return r.name && (i.displayName = yE(r.name)), i;
|
|
17156
17156
|
}
|
|
17157
17157
|
/**
|
|
17158
|
-
* @license lucide-react v1.
|
|
17158
|
+
* @license lucide-react v1.42.0 - ISC
|
|
17159
17159
|
*
|
|
17160
17160
|
* This source code is licensed under the ISC license.
|
|
17161
17161
|
* See the LICENSE file in the root directory of this source tree.
|
|
@@ -17177,7 +17177,7 @@ const As = {
|
|
|
17177
17177
|
As.node;
|
|
17178
17178
|
const RE = de(As);
|
|
17179
17179
|
/**
|
|
17180
|
-
* @license lucide-react v1.
|
|
17180
|
+
* @license lucide-react v1.42.0 - ISC
|
|
17181
17181
|
*
|
|
17182
17182
|
* This source code is licensed under the ISC license.
|
|
17183
17183
|
* See the LICENSE file in the root directory of this source tree.
|
|
@@ -17196,7 +17196,7 @@ const Cs = {
|
|
|
17196
17196
|
Cs.node;
|
|
17197
17197
|
const wE = de(Cs);
|
|
17198
17198
|
/**
|
|
17199
|
-
* @license lucide-react v1.
|
|
17199
|
+
* @license lucide-react v1.42.0 - ISC
|
|
17200
17200
|
*
|
|
17201
17201
|
* This source code is licensed under the ISC license.
|
|
17202
17202
|
* See the LICENSE file in the root directory of this source tree.
|
|
@@ -17213,7 +17213,7 @@ const ks = {
|
|
|
17213
17213
|
ks.node;
|
|
17214
17214
|
const PE = de(ks);
|
|
17215
17215
|
/**
|
|
17216
|
-
* @license lucide-react v1.
|
|
17216
|
+
* @license lucide-react v1.42.0 - ISC
|
|
17217
17217
|
*
|
|
17218
17218
|
* This source code is licensed under the ISC license.
|
|
17219
17219
|
* See the LICENSE file in the root directory of this source tree.
|
|
@@ -17232,7 +17232,7 @@ const Is = {
|
|
|
17232
17232
|
Is.node;
|
|
17233
17233
|
const ME = de(Is);
|
|
17234
17234
|
/**
|
|
17235
|
-
* @license lucide-react v1.
|
|
17235
|
+
* @license lucide-react v1.42.0 - ISC
|
|
17236
17236
|
*
|
|
17237
17237
|
* This source code is licensed under the ISC license.
|
|
17238
17238
|
* See the LICENSE file in the root directory of this source tree.
|
|
@@ -17254,7 +17254,7 @@ const ys = {
|
|
|
17254
17254
|
ys.node;
|
|
17255
17255
|
const FE = de(ys);
|
|
17256
17256
|
/**
|
|
17257
|
-
* @license lucide-react v1.
|
|
17257
|
+
* @license lucide-react v1.42.0 - ISC
|
|
17258
17258
|
*
|
|
17259
17259
|
* This source code is licensed under the ISC license.
|
|
17260
17260
|
* See the LICENSE file in the root directory of this source tree.
|
|
@@ -17275,7 +17275,7 @@ const Ns = {
|
|
|
17275
17275
|
Ns.node;
|
|
17276
17276
|
const BE = de(Ns);
|
|
17277
17277
|
/**
|
|
17278
|
-
* @license lucide-react v1.
|
|
17278
|
+
* @license lucide-react v1.42.0 - ISC
|
|
17279
17279
|
*
|
|
17280
17280
|
* This source code is licensed under the ISC license.
|
|
17281
17281
|
* See the LICENSE file in the root directory of this source tree.
|
|
@@ -17305,7 +17305,7 @@ const xs = {
|
|
|
17305
17305
|
xs.node;
|
|
17306
17306
|
const HE = de(xs);
|
|
17307
17307
|
/**
|
|
17308
|
-
* @license lucide-react v1.
|
|
17308
|
+
* @license lucide-react v1.42.0 - ISC
|
|
17309
17309
|
*
|
|
17310
17310
|
* This source code is licensed under the ISC license.
|
|
17311
17311
|
* See the LICENSE file in the root directory of this source tree.
|
|
@@ -17326,7 +17326,7 @@ const Ss = {
|
|
|
17326
17326
|
Ss.node;
|
|
17327
17327
|
const vE = de(Ss);
|
|
17328
17328
|
/**
|
|
17329
|
-
* @license lucide-react v1.
|
|
17329
|
+
* @license lucide-react v1.42.0 - ISC
|
|
17330
17330
|
*
|
|
17331
17331
|
* This source code is licensed under the ISC license.
|
|
17332
17332
|
* See the LICENSE file in the root directory of this source tree.
|
|
@@ -17343,7 +17343,7 @@ const Ls = {
|
|
|
17343
17343
|
Ls.node;
|
|
17344
17344
|
const UE = de(Ls);
|
|
17345
17345
|
/**
|
|
17346
|
-
* @license lucide-react v1.
|
|
17346
|
+
* @license lucide-react v1.42.0 - ISC
|
|
17347
17347
|
*
|
|
17348
17348
|
* This source code is licensed under the ISC license.
|
|
17349
17349
|
* See the LICENSE file in the root directory of this source tree.
|
|
@@ -17366,7 +17366,7 @@ const Os = {
|
|
|
17366
17366
|
Os.node;
|
|
17367
17367
|
const zE = de(Os);
|
|
17368
17368
|
/**
|
|
17369
|
-
* @license lucide-react v1.
|
|
17369
|
+
* @license lucide-react v1.42.0 - ISC
|
|
17370
17370
|
*
|
|
17371
17371
|
* This source code is licensed under the ISC license.
|
|
17372
17372
|
* See the LICENSE file in the root directory of this source tree.
|
|
@@ -17382,7 +17382,7 @@ const Ds = {
|
|
|
17382
17382
|
Ds.node;
|
|
17383
17383
|
const YE = de(Ds);
|
|
17384
17384
|
/**
|
|
17385
|
-
* @license lucide-react v1.
|
|
17385
|
+
* @license lucide-react v1.42.0 - ISC
|
|
17386
17386
|
*
|
|
17387
17387
|
* This source code is licensed under the ISC license.
|
|
17388
17388
|
* See the LICENSE file in the root directory of this source tree.
|
|
@@ -17399,7 +17399,7 @@ const Rs = {
|
|
|
17399
17399
|
Rs.node;
|
|
17400
17400
|
const qE = de(Rs);
|
|
17401
17401
|
/**
|
|
17402
|
-
* @license lucide-react v1.
|
|
17402
|
+
* @license lucide-react v1.42.0 - ISC
|
|
17403
17403
|
*
|
|
17404
17404
|
* This source code is licensed under the ISC license.
|
|
17405
17405
|
* See the LICENSE file in the root directory of this source tree.
|
|
@@ -17423,7 +17423,7 @@ const ws = {
|
|
|
17423
17423
|
ws.node;
|
|
17424
17424
|
const VE = de(ws);
|
|
17425
17425
|
/**
|
|
17426
|
-
* @license lucide-react v1.
|
|
17426
|
+
* @license lucide-react v1.42.0 - ISC
|
|
17427
17427
|
*
|
|
17428
17428
|
* This source code is licensed under the ISC license.
|
|
17429
17429
|
* See the LICENSE file in the root directory of this source tree.
|
|
@@ -17444,7 +17444,7 @@ const Ps = {
|
|
|
17444
17444
|
Ps.node;
|
|
17445
17445
|
const WE = de(Ps);
|
|
17446
17446
|
/**
|
|
17447
|
-
* @license lucide-react v1.
|
|
17447
|
+
* @license lucide-react v1.42.0 - ISC
|
|
17448
17448
|
*
|
|
17449
17449
|
* This source code is licensed under the ISC license.
|
|
17450
17450
|
* See the LICENSE file in the root directory of this source tree.
|
|
@@ -17465,7 +17465,7 @@ const Ms = {
|
|
|
17465
17465
|
Ms.node;
|
|
17466
17466
|
const jE = de(Ms);
|
|
17467
17467
|
/**
|
|
17468
|
-
* @license lucide-react v1.
|
|
17468
|
+
* @license lucide-react v1.42.0 - ISC
|
|
17469
17469
|
*
|
|
17470
17470
|
* This source code is licensed under the ISC license.
|
|
17471
17471
|
* See the LICENSE file in the root directory of this source tree.
|
|
@@ -17495,7 +17495,7 @@ const Fs = {
|
|
|
17495
17495
|
Fs.node;
|
|
17496
17496
|
const GE = de(Fs);
|
|
17497
17497
|
/**
|
|
17498
|
-
* @license lucide-react v1.
|
|
17498
|
+
* @license lucide-react v1.42.0 - ISC
|
|
17499
17499
|
*
|
|
17500
17500
|
* This source code is licensed under the ISC license.
|
|
17501
17501
|
* See the LICENSE file in the root directory of this source tree.
|
|
@@ -17517,7 +17517,7 @@ const Bs = {
|
|
|
17517
17517
|
Bs.node;
|
|
17518
17518
|
const QE = de(Bs);
|
|
17519
17519
|
/**
|
|
17520
|
-
* @license lucide-react v1.
|
|
17520
|
+
* @license lucide-react v1.42.0 - ISC
|
|
17521
17521
|
*
|
|
17522
17522
|
* This source code is licensed under the ISC license.
|
|
17523
17523
|
* See the LICENSE file in the root directory of this source tree.
|
|
@@ -17540,7 +17540,7 @@ const Hs = {
|
|
|
17540
17540
|
Hs.node;
|
|
17541
17541
|
const $E = de(Hs);
|
|
17542
17542
|
/**
|
|
17543
|
-
* @license lucide-react v1.
|
|
17543
|
+
* @license lucide-react v1.42.0 - ISC
|
|
17544
17544
|
*
|
|
17545
17545
|
* This source code is licensed under the ISC license.
|
|
17546
17546
|
* See the LICENSE file in the root directory of this source tree.
|
|
@@ -17565,7 +17565,7 @@ const vs = {
|
|
|
17565
17565
|
vs.node;
|
|
17566
17566
|
const KE = de(vs);
|
|
17567
17567
|
/**
|
|
17568
|
-
* @license lucide-react v1.
|
|
17568
|
+
* @license lucide-react v1.42.0 - ISC
|
|
17569
17569
|
*
|
|
17570
17570
|
* This source code is licensed under the ISC license.
|
|
17571
17571
|
* See the LICENSE file in the root directory of this source tree.
|
|
@@ -17586,7 +17586,7 @@ const Us = {
|
|
|
17586
17586
|
Us.node;
|
|
17587
17587
|
const XE = de(Us);
|
|
17588
17588
|
/**
|
|
17589
|
-
* @license lucide-react v1.
|
|
17589
|
+
* @license lucide-react v1.42.0 - ISC
|
|
17590
17590
|
*
|
|
17591
17591
|
* This source code is licensed under the ISC license.
|
|
17592
17592
|
* See the LICENSE file in the root directory of this source tree.
|
package/package.json
CHANGED