@leviosa-ai/detail-page-editor 0.11.7 → 0.11.8
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/components/ui/command.tsx +25 -8
- package/package.json +2 -1
|
@@ -1,5 +1,19 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
|
|
3
|
+
/**
|
|
4
|
+
* cmdk 위에 얹은 목록. 지금 소비자는 글꼴 피커 하나다.
|
|
5
|
+
*
|
|
6
|
+
* 색은 **편집기 토큰(`dpe-*`)만** 쓴다. shadcn 원본이 달고 온
|
|
7
|
+
* `bg-accent` · `bg-popover` · `text-muted-foreground` 는 소비자 앱의 팔레트를
|
|
8
|
+
* 그대로 읽는 이름이라, 이 패키지가 그 값을 정할 방법이 없다. leviosa-agency 는
|
|
9
|
+
* `--color-accent: #1a1a1a` — 먹이다. 그래서 글꼴 후보에 마우스를 올리면 행 전체가
|
|
10
|
+
* 검게 칠해지고, 그 위의 미리보기(검정 글자 WebP)와 이름표가 통째로 사라졌다.
|
|
11
|
+
* 강조색을 어둡게 잡는 것은 그 앱의 정당한 선택이지 버그가 아니다 — 목록 행의
|
|
12
|
+
* 호버가 강조색을 빌려 쓴 것이 버그다.
|
|
13
|
+
*
|
|
14
|
+
* 호버·선택은 회색 한 단계(`dpe-ink-100`)로 끝낸다. 글자색은 건드리지 않는다.
|
|
15
|
+
*/
|
|
16
|
+
|
|
3
17
|
import * as React from "react";
|
|
4
18
|
import { Command as CommandPrimitive } from "cmdk";
|
|
5
19
|
import { Search } from "lucide-react";
|
|
@@ -20,7 +34,7 @@ const Command = React.forwardRef<
|
|
|
20
34
|
<CommandPrimitive
|
|
21
35
|
ref={ref}
|
|
22
36
|
className={cn(
|
|
23
|
-
"flex h-full w-full flex-col overflow-hidden rounded-dpe-md bg-
|
|
37
|
+
"flex h-full w-full flex-col overflow-hidden rounded-dpe-md bg-dpe-surface text-dpe-ink-900",
|
|
24
38
|
className,
|
|
25
39
|
)}
|
|
26
40
|
{...props}
|
|
@@ -44,7 +58,7 @@ const CommandDialog = ({
|
|
|
44
58
|
Search and run available commands.
|
|
45
59
|
</DialogDescription>
|
|
46
60
|
</DialogHeader>
|
|
47
|
-
<Command className="[&_[cmdk-group-heading]]:px-2 [&_[cmdk-group-heading]]:font-dpe-medium [&_[cmdk-group-heading]]:text-
|
|
61
|
+
<Command className="[&_[cmdk-group-heading]]:px-2 [&_[cmdk-group-heading]]:font-dpe-medium [&_[cmdk-group-heading]]:text-dpe-ink-500 [&_[cmdk-group]:not([hidden])_~[cmdk-group]]:pt-0 [&_[cmdk-group]]:px-2 [&_[cmdk-input-wrapper]_svg]:h-5 [&_[cmdk-input-wrapper]_svg]:w-5 [&_[cmdk-input]]:h-12 [&_[cmdk-item]]:px-2 [&_[cmdk-item]]:py-3 [&_[cmdk-item]_svg]:h-5 [&_[cmdk-item]_svg]:w-5">
|
|
48
62
|
{children}
|
|
49
63
|
</Command>
|
|
50
64
|
</DialogContent>
|
|
@@ -59,14 +73,17 @@ const CommandInput = React.forwardRef<
|
|
|
59
73
|
}
|
|
60
74
|
>(({ className, wrapperClassName, ...props }, ref) => (
|
|
61
75
|
<div
|
|
62
|
-
className={cn(
|
|
76
|
+
className={cn(
|
|
77
|
+
"flex items-center border-b border-dpe-ink-100 px-3",
|
|
78
|
+
wrapperClassName,
|
|
79
|
+
)}
|
|
63
80
|
cmdk-input-wrapper=""
|
|
64
81
|
>
|
|
65
82
|
<Search className="mr-2 h-4 w-4 shrink-0 opacity-50" />
|
|
66
83
|
<CommandPrimitive.Input
|
|
67
84
|
ref={ref}
|
|
68
85
|
className={cn(
|
|
69
|
-
"flex h-11 w-full rounded-dpe-md bg-transparent py-3 text-sm outline-none placeholder:text-
|
|
86
|
+
"flex h-11 w-full rounded-dpe-md bg-transparent py-3 text-sm outline-none placeholder:text-dpe-ink-400 disabled:cursor-not-allowed disabled:opacity-50",
|
|
70
87
|
className,
|
|
71
88
|
)}
|
|
72
89
|
{...props}
|
|
@@ -109,7 +126,7 @@ const CommandGroup = React.forwardRef<
|
|
|
109
126
|
<CommandPrimitive.Group
|
|
110
127
|
ref={ref}
|
|
111
128
|
className={cn(
|
|
112
|
-
"overflow-hidden p-1 text-
|
|
129
|
+
"overflow-hidden p-1 text-dpe-ink-900 [&_[cmdk-group-heading]]:px-2 [&_[cmdk-group-heading]]:py-1.5 [&_[cmdk-group-heading]]:text-xs [&_[cmdk-group-heading]]:font-dpe-medium [&_[cmdk-group-heading]]:text-dpe-ink-500",
|
|
113
130
|
className,
|
|
114
131
|
)}
|
|
115
132
|
{...props}
|
|
@@ -124,7 +141,7 @@ const CommandSeparator = React.forwardRef<
|
|
|
124
141
|
>(({ className, ...props }, ref) => (
|
|
125
142
|
<CommandPrimitive.Separator
|
|
126
143
|
ref={ref}
|
|
127
|
-
className={cn("-mx-1 h-px bg-
|
|
144
|
+
className={cn("-mx-1 h-px bg-dpe-ink-100", className)}
|
|
128
145
|
{...props}
|
|
129
146
|
/>
|
|
130
147
|
));
|
|
@@ -137,7 +154,7 @@ const CommandItem = React.forwardRef<
|
|
|
137
154
|
<CommandPrimitive.Item
|
|
138
155
|
ref={ref}
|
|
139
156
|
className={cn(
|
|
140
|
-
"relative flex cursor-default select-none items-center rounded-dpe-sm px-2 py-1.5 text-sm outline-none data-[disabled=true]:pointer-events-none data-[selected=
|
|
157
|
+
"relative flex cursor-default select-none items-center rounded-dpe-sm px-2 py-1.5 text-sm text-dpe-ink-900 outline-none data-[disabled=true]:pointer-events-none data-[selected=true]:bg-dpe-ink-100 data-[disabled=true]:opacity-50",
|
|
141
158
|
className,
|
|
142
159
|
)}
|
|
143
160
|
{...props}
|
|
@@ -153,7 +170,7 @@ const CommandShortcut = ({
|
|
|
153
170
|
return (
|
|
154
171
|
<span
|
|
155
172
|
className={cn(
|
|
156
|
-
"ml-auto text-xs tracking-widest text-
|
|
173
|
+
"ml-auto text-xs tracking-widest text-dpe-ink-500",
|
|
157
174
|
className,
|
|
158
175
|
)}
|
|
159
176
|
{...props}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@leviosa-ai/detail-page-editor",
|
|
3
|
-
"version": "0.11.
|
|
3
|
+
"version": "0.11.8",
|
|
4
4
|
"description": "Leviosa detail-page editor shell. Source-only: consumers compile it through Next transpilePackages. Every app coupling (sourcing server, brand store, cache keys, toast) arrives through the DetailPageHost interface, and every URL it fetches comes from configureDetailPageEditor.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"license": "UNLICENSED",
|
|
@@ -17,6 +17,7 @@
|
|
|
17
17
|
"exports": {
|
|
18
18
|
".": "./index.ts",
|
|
19
19
|
"./package.json": "./package.json",
|
|
20
|
+
"./config/*": "./config/*",
|
|
20
21
|
"./tokens.css": "./styles/tokens.css",
|
|
21
22
|
"./canvas-bridge.css": "./styles/canvas-bridge.css",
|
|
22
23
|
"./host": "./components/detail-page/detail-page-host-context.tsx",
|