@pihanga2/shadcn 0.2.5 → 0.2.7
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/AGENT.building-cards.md +87 -0
- package/AGENT.using-cards.md +47 -0
- package/README.md +7 -1
- package/cards/avatar/avatar.component.d.ts +11 -0
- package/cards/avatar/avatar.component.js +26 -0
- package/cards/avatar/avatar.component.js.map +1 -0
- package/cards/avatar/avatar.types.d.ts +46 -0
- package/cards/avatar/avatar.types.js +7 -0
- package/cards/avatar/avatar.types.js.map +1 -0
- package/cards/avatar/index.d.ts +1 -0
- package/cards/avatar/index.js +12 -0
- package/cards/avatar/index.js.map +1 -0
- package/cards/badge/badge.component.js +4 -4
- package/cards/codeMirror/codeMirror.component.d.ts +4 -0
- package/cards/codeMirror/codeMirror.types.d.ts +83 -0
- package/cards/codeMirror/index.d.ts +1 -0
- package/cards/collapsibleCard/collapsibleCard.component.d.ts +4 -0
- package/cards/collapsibleCard/collapsibleCard.component.js +61 -0
- package/cards/collapsibleCard/collapsibleCard.component.js.map +1 -0
- package/cards/collapsibleCard/collapsibleCard.types.d.ts +91 -0
- package/cards/collapsibleCard/collapsibleCard.types.js +7 -0
- package/cards/collapsibleCard/collapsibleCard.types.js.map +1 -0
- package/cards/collapsibleCard/index.d.ts +1 -0
- package/cards/collapsibleCard/index.js +13 -0
- package/cards/collapsibleCard/index.js.map +1 -0
- package/cards/collapsibleCard.d.ts +1 -0
- package/cards/dataTable/dataTable.component.js +43 -42
- package/cards/dataTable/dataTable.component.js.map +1 -1
- package/cards/dataTable/dataTable.types.d.ts +26 -2
- package/cards/dataTable/dataTable.types.js +1 -0
- package/cards/dataTable/dataTable.types.js.map +1 -1
- package/cards/drawer/drawer.component.d.ts +4 -0
- package/cards/drawer/drawer.component.js +83 -0
- package/cards/drawer/drawer.component.js.map +1 -0
- package/cards/drawer/drawer.types.d.ts +95 -0
- package/cards/drawer/drawer.types.js +11 -0
- package/cards/drawer/drawer.types.js.map +1 -0
- package/cards/drawer/index.d.ts +1 -0
- package/cards/drawer/index.js +13 -0
- package/cards/drawer/index.js.map +1 -0
- package/cards/dropDownMenu/dropdown-menu.ui.js +41 -41
- package/cards/emptyCard/emptyCard.component.d.ts +4 -0
- package/cards/emptyCard/emptyCard.types.d.ts +36 -0
- package/cards/emptyCard/index.d.ts +1 -0
- package/cards/emptyCard.d.ts +1 -7
- package/cards/fileDrop/fileDrop.component.js +1 -1
- package/cards/fileDrop/fileDrop.css +1 -0
- package/cards/flexGrid/flexGrid.types.d.ts +1 -2
- package/cards/flexGrid/flexGrid.types.js.map +1 -1
- package/cards/graphin/eventDispatcher.component.d.ts +3 -1
- package/cards/graphin/graphin.types.d.ts +14 -0
- package/cards/infoCard/index.d.ts +1 -0
- package/cards/infoCard/index.js +12 -0
- package/cards/infoCard/index.js.map +1 -0
- package/cards/infoCard/infoCard.component.d.ts +4 -0
- package/cards/infoCard/infoCard.component.js +55 -0
- package/cards/infoCard/infoCard.component.js.map +1 -0
- package/cards/infoCard/infoCard.types.d.ts +65 -0
- package/cards/infoCard/infoCard.types.js +7 -0
- package/cards/infoCard/infoCard.types.js.map +1 -0
- package/cards/infoCard.d.ts +1 -0
- package/cards/jsonViewer/jsonViewer.component.js +1 -1
- package/cards/jsonViewer/jsonViewer.css +1 -0
- package/cards/list/list.component.js +21 -21
- package/cards/loadingOverlay/loadingOverlay.component.js +1 -1
- package/cards/loadingOverlay/loadingOverlay.css +1 -0
- package/cards/pageWithNavbar/pageWithNavbar.component.js +1 -1
- package/cards/pageWithNavbar/pageWithNavbar.css +1 -0
- package/cards/pageWithNavbarMeta/index.d.ts +1 -0
- package/cards/pageWithNavbarMeta/index.js +118 -0
- package/cards/pageWithNavbarMeta/index.js.map +1 -0
- package/cards/pageWithNavbarMeta/pageWithNavbarMeta.types.d.ts +78 -0
- package/cards/pageWithNavbarMeta/pageWithNavbarMeta.types.js +7 -0
- package/cards/pageWithNavbarMeta/pageWithNavbarMeta.types.js.map +1 -0
- package/cards/pasteTarget/pasteTarget.component.js +1 -1
- package/cards/pasteTarget/pasteTarget.css +1 -0
- package/cards/scrollbarWithAnnotations/index.d.ts +1 -0
- package/cards/scrollbarWithAnnotations/index.js +13 -0
- package/cards/scrollbarWithAnnotations/index.js.map +1 -0
- package/cards/scrollbarWithAnnotations/scrollbarWithAnnotations.component.d.ts +23 -0
- package/cards/scrollbarWithAnnotations/scrollbarWithAnnotations.component.js +78 -0
- package/cards/scrollbarWithAnnotations/scrollbarWithAnnotations.component.js.map +1 -0
- package/cards/scrollbarWithAnnotations/scrollbarWithAnnotations.css +1 -0
- package/cards/scrollbarWithAnnotations/scrollbarWithAnnotations.types.d.ts +123 -0
- package/cards/scrollbarWithAnnotations/scrollbarWithAnnotations.types.js +7 -0
- package/cards/scrollbarWithAnnotations/scrollbarWithAnnotations.types.js.map +1 -0
- package/cards/slider/slider.component.js +67 -48
- package/cards/slider/slider.component.js.map +1 -1
- package/cards/slider/slider.types.d.ts +31 -0
- package/cards/slider/slider.types.js.map +1 -1
- package/cards/stepper/stepper.component.js +1 -1
- package/cards/stepper/stepper.css +1 -0
- package/cards/toggleGroup/toggleGroup.component.js +1 -1
- package/cards/toggleGroup/toggleGroup.component.js.map +1 -1
- package/components/ui/avatar.js +5 -5
- package/components/ui/badge.js +7 -7
- package/components/ui/button.js +6 -6
- package/components/ui/card.js +50 -0
- package/components/ui/card.js.map +1 -0
- package/components/ui/drawer.js +79 -0
- package/components/ui/drawer.js.map +1 -0
- package/components/ui/field.js +16 -16
- package/components/ui/label.js +3 -3
- package/components/ui/separator.js +1 -1
- package/components/ui/toggle-group.js +5 -5
- package/components/ui/toggle.js +2 -2
- package/lib/utils.d.ts +15 -0
- package/lib/utils.js.map +1 -1
- package/package.json +39 -3
- package/pihanga-shadcn.css +0 -2
package/components/ui/field.js
CHANGED
|
@@ -2,10 +2,10 @@ import { cn as e } from "../../lib/utils.js";
|
|
|
2
2
|
import { Label as t } from "./label.js";
|
|
3
3
|
import "./separator.js";
|
|
4
4
|
import { useMemo as n } from "react";
|
|
5
|
-
import {
|
|
6
|
-
import {
|
|
5
|
+
import { jsx as r } from "react/jsx-runtime";
|
|
6
|
+
import { cva as i } from "class-variance-authority";
|
|
7
7
|
//#region src/components/ui/field.tsx
|
|
8
|
-
var a =
|
|
8
|
+
var a = i("group/field flex w-full gap-3 data-[invalid=true]:text-destructive", {
|
|
9
9
|
variants: { orientation: {
|
|
10
10
|
vertical: ["flex-col [&>*]:w-full [&>.sr-only]:w-auto"],
|
|
11
11
|
horizontal: [
|
|
@@ -21,40 +21,40 @@ var a = r("group/field flex w-full gap-3 data-[invalid=true]:text-destructive",
|
|
|
21
21
|
} },
|
|
22
22
|
defaultVariants: { orientation: "vertical" }
|
|
23
23
|
});
|
|
24
|
-
function o({ className: t, orientation: n = "vertical", ...
|
|
25
|
-
return /* @__PURE__ */
|
|
24
|
+
function o({ className: t, orientation: n = "vertical", ...i }) {
|
|
25
|
+
return /* @__PURE__ */ r("div", {
|
|
26
26
|
role: "group",
|
|
27
27
|
"data-slot": "field",
|
|
28
28
|
"data-orientation": n,
|
|
29
29
|
className: e(a({ orientation: n }), t),
|
|
30
|
-
...
|
|
30
|
+
...i
|
|
31
31
|
});
|
|
32
32
|
}
|
|
33
|
-
function s({ className: n, ...
|
|
34
|
-
return /* @__PURE__ */
|
|
33
|
+
function s({ className: n, ...i }) {
|
|
34
|
+
return /* @__PURE__ */ r(t, {
|
|
35
35
|
"data-slot": "field-label",
|
|
36
36
|
className: e("group/field-label peer/field-label flex w-fit gap-2 leading-snug group-data-[disabled=true]/field:opacity-50", "has-[>[data-slot=field]]:w-full has-[>[data-slot=field]]:flex-col has-[>[data-slot=field]]:rounded-md has-[>[data-slot=field]]:border [&>*]:data-[slot=field]:p-4", "has-data-[state=checked]:border-primary has-data-[state=checked]:bg-primary/5 dark:has-data-[state=checked]:bg-primary/10", n),
|
|
37
|
-
...
|
|
37
|
+
...i
|
|
38
38
|
});
|
|
39
39
|
}
|
|
40
40
|
function c({ className: t, ...n }) {
|
|
41
|
-
return /* @__PURE__ */
|
|
41
|
+
return /* @__PURE__ */ r("p", {
|
|
42
42
|
"data-slot": "field-description",
|
|
43
43
|
className: e("text-sm leading-normal font-normal text-muted-foreground group-has-[[data-orientation=horizontal]]/field:text-balance", "last:mt-0 nth-last-2:-mt-1 [[data-variant=legend]+&]:-mt-1.5", "[&>a]:underline [&>a]:underline-offset-4 [&>a:hover]:text-primary", t),
|
|
44
44
|
...n
|
|
45
45
|
});
|
|
46
46
|
}
|
|
47
|
-
function l({ className: t, children:
|
|
47
|
+
function l({ className: t, children: i, errors: a, ...o }) {
|
|
48
48
|
let s = n(() => {
|
|
49
|
-
if (
|
|
49
|
+
if (i) return i;
|
|
50
50
|
if (!a?.length) return null;
|
|
51
51
|
let e = [...new Map(a.map((e) => [e?.message, e])).values()];
|
|
52
|
-
return e?.length == 1 ? e[0]?.message : /* @__PURE__ */
|
|
52
|
+
return e?.length == 1 ? e[0]?.message : /* @__PURE__ */ r("ul", {
|
|
53
53
|
className: "ml-4 flex list-disc flex-col gap-1",
|
|
54
|
-
children: e.map((e, t) => e?.message && /* @__PURE__ */
|
|
54
|
+
children: e.map((e, t) => e?.message && /* @__PURE__ */ r("li", { children: e.message }, t))
|
|
55
55
|
});
|
|
56
|
-
}, [
|
|
57
|
-
return s ? /* @__PURE__ */
|
|
56
|
+
}, [i, a]);
|
|
57
|
+
return s ? /* @__PURE__ */ r("div", {
|
|
58
58
|
role: "alert",
|
|
59
59
|
"data-slot": "field-error",
|
|
60
60
|
className: e("text-sm font-normal text-destructive", t),
|
package/components/ui/label.js
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import { cn as e } from "../../lib/utils.js";
|
|
2
2
|
import "react";
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
3
|
+
import { Label as t } from "radix-ui";
|
|
4
|
+
import { jsx as n } from "react/jsx-runtime";
|
|
5
5
|
//#region src/components/ui/label.tsx
|
|
6
6
|
function r({ className: r, ...i }) {
|
|
7
|
-
return /* @__PURE__ */ t
|
|
7
|
+
return /* @__PURE__ */ n(t.Root, {
|
|
8
8
|
"data-slot": "label",
|
|
9
9
|
className: e("flex items-center gap-2 text-sm leading-none font-medium select-none group-data-[disabled=true]:pointer-events-none group-data-[disabled=true]:opacity-50 peer-disabled:cursor-not-allowed peer-disabled:opacity-50", r),
|
|
10
10
|
...i
|
|
@@ -2,9 +2,9 @@
|
|
|
2
2
|
import { cn as e } from "../../lib/utils.js";
|
|
3
3
|
import { toggleVariants as t } from "./toggle.js";
|
|
4
4
|
import * as n from "react";
|
|
5
|
+
import { ToggleGroup as r } from "radix-ui";
|
|
6
|
+
import { jsx as i } from "react/jsx-runtime";
|
|
5
7
|
import "class-variance-authority";
|
|
6
|
-
import { jsx as r } from "react/jsx-runtime";
|
|
7
|
-
import { ToggleGroup as i } from "radix-ui";
|
|
8
8
|
//#region src/components/ui/toggle-group.tsx
|
|
9
9
|
var a = n.createContext({
|
|
10
10
|
size: "default",
|
|
@@ -12,7 +12,7 @@ var a = n.createContext({
|
|
|
12
12
|
spacing: 0
|
|
13
13
|
});
|
|
14
14
|
function o({ className: t, variant: n, size: o, spacing: s = 0, children: c, ...l }) {
|
|
15
|
-
return /* @__PURE__ */ r
|
|
15
|
+
return /* @__PURE__ */ i(r.Root, {
|
|
16
16
|
"data-slot": "toggle-group",
|
|
17
17
|
"data-variant": n,
|
|
18
18
|
"data-size": o,
|
|
@@ -20,7 +20,7 @@ function o({ className: t, variant: n, size: o, spacing: s = 0, children: c, ...
|
|
|
20
20
|
style: { "--gap": s },
|
|
21
21
|
className: e("group/toggle-group flex w-fit items-center gap-[--spacing(var(--gap))] rounded-md data-[spacing=default]:data-[variant=outline]:shadow-xs", t),
|
|
22
22
|
...l,
|
|
23
|
-
children: /* @__PURE__ */
|
|
23
|
+
children: /* @__PURE__ */ i(a.Provider, {
|
|
24
24
|
value: {
|
|
25
25
|
variant: n,
|
|
26
26
|
size: o,
|
|
@@ -32,7 +32,7 @@ function o({ className: t, variant: n, size: o, spacing: s = 0, children: c, ...
|
|
|
32
32
|
}
|
|
33
33
|
function s({ className: o, children: s, variant: c, size: l, ...u }) {
|
|
34
34
|
let d = n.useContext(a);
|
|
35
|
-
return /* @__PURE__ */ r
|
|
35
|
+
return /* @__PURE__ */ i(r.Item, {
|
|
36
36
|
"data-slot": "toggle-group-item",
|
|
37
37
|
"data-variant": d.variant || c,
|
|
38
38
|
"data-size": d.size || l,
|
package/components/ui/toggle.js
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import "../../lib/utils.js";
|
|
2
2
|
import "react";
|
|
3
|
-
import { cva as e } from "class-variance-authority";
|
|
4
|
-
import "react/jsx-runtime";
|
|
5
3
|
import "radix-ui";
|
|
4
|
+
import "react/jsx-runtime";
|
|
5
|
+
import { cva as e } from "class-variance-authority";
|
|
6
6
|
//#region src/components/ui/toggle.tsx
|
|
7
7
|
var t = e("inline-flex items-center justify-center gap-2 rounded-md text-sm font-medium whitespace-nowrap transition-[color,box-shadow] outline-none hover:bg-muted hover:text-muted-foreground focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 disabled:pointer-events-none disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-destructive/20 data-[state=on]:bg-accent data-[state=on]:text-accent-foreground dark:aria-invalid:ring-destructive/40 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4", {
|
|
8
8
|
variants: {
|
package/lib/utils.d.ts
CHANGED
|
@@ -1,2 +1,17 @@
|
|
|
1
1
|
import { ClassValue } from 'clsx';
|
|
2
2
|
export declare function cn(...inputs: ClassValue[]): string;
|
|
3
|
+
/**
|
|
4
|
+
* Returns "#000000" or "#ffffff" for maximum contrast against the given background color (hex or rgb).
|
|
5
|
+
*
|
|
6
|
+
* Based on WCAG relative luminance, which models human visual perception:
|
|
7
|
+
* L = 0.2126·R + 0.7152·G + 0.0722·B
|
|
8
|
+
*
|
|
9
|
+
* The weights reflect how sensitive our eyes are to each channel —
|
|
10
|
+
* green contributes 71% of perceived brightness, red ~21%, blue only 7%.
|
|
11
|
+
* This means a vivid red like #c0392b is perceptually *dim* (L≈0.11), so
|
|
12
|
+
* white text (contrast 8.7:1) beats black text (2.4:1) against it.
|
|
13
|
+
*
|
|
14
|
+
* The threshold L > 0.179 is the luminance midpoint where both black and
|
|
15
|
+
* white achieve ~4.5:1 contrast — the WCAG AA minimum.
|
|
16
|
+
*/
|
|
17
|
+
export declare function contrastColor(bg: string, threshold?: number): "#000000" | "#ffffff";
|
package/lib/utils.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","names":[],"sources":["../../src/lib/utils.ts"],"sourcesContent":["import {clsx, type ClassValue} from \"clsx\";\nimport {twMerge} from \"tailwind-merge\";\n\nexport function cn(...inputs: ClassValue[]) {\n return twMerge(clsx(inputs));\n}\n"],"mappings":";;;AAGA,SAAgB,EAAG,GAAG,GAAsB;CAC1C,OAAO,EAAQ,EAAK,CAAM,CAAC;AAC7B"}
|
|
1
|
+
{"version":3,"file":"utils.js","names":[],"sources":["../../src/lib/utils.ts"],"sourcesContent":["import {clsx, type ClassValue} from \"clsx\";\nimport {twMerge} from \"tailwind-merge\";\n\nexport function cn(...inputs: ClassValue[]) {\n return twMerge(clsx(inputs));\n}\n\n/**\n * Returns \"#000000\" or \"#ffffff\" for maximum contrast against the given background color (hex or rgb).\n *\n * Based on WCAG relative luminance, which models human visual perception:\n * L = 0.2126·R + 0.7152·G + 0.0722·B\n *\n * The weights reflect how sensitive our eyes are to each channel —\n * green contributes 71% of perceived brightness, red ~21%, blue only 7%.\n * This means a vivid red like #c0392b is perceptually *dim* (L≈0.11), so\n * white text (contrast 8.7:1) beats black text (2.4:1) against it.\n *\n * The threshold L > 0.179 is the luminance midpoint where both black and\n * white achieve ~4.5:1 contrast — the WCAG AA minimum.\n */\nexport function contrastColor(\n bg: string,\n threshold = 0.179,\n): \"#000000\" | \"#ffffff\" {\n const m = bg.match(/\\w\\w/g) ?? bg.match(/\\d+/g);\n const [r, g, b] = bg.startsWith(\"#\")\n ? (bg.length === 4\n ? [bg[1] + bg[1], bg[2] + bg[2], bg[3] + bg[3]]\n : [bg.slice(1, 3), bg.slice(3, 5), bg.slice(5, 7)]\n ).map((h) => parseInt(h, 16))\n : (m ?? []).map(Number);\n // WCAG relative luminance\n const toLinear = (c: number) => {\n const s = c / 255;\n return s <= 0.04045 ? s / 12.92 : ((s + 0.055) / 1.055) ** 2.4;\n };\n const L = 0.2126 * toLinear(r) + 0.7152 * toLinear(g) + 0.0722 * toLinear(b);\n return L > threshold ? \"#000000\" : \"#ffffff\";\n}\n"],"mappings":";;;AAGA,SAAgB,EAAG,GAAG,GAAsB;CAC1C,OAAO,EAAQ,EAAK,CAAM,CAAC;AAC7B"}
|
package/package.json
CHANGED
|
@@ -1,9 +1,13 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@pihanga2/shadcn",
|
|
3
|
-
"version": "0.2.
|
|
3
|
+
"version": "0.2.7",
|
|
4
4
|
"description": "Pihanga core card components built on shadcn/ui and Radix UI — the npm distribution of pihanga-shadcn.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"exports": {
|
|
7
|
+
"./cards/avatar": {
|
|
8
|
+
"import": "./cards/avatar/index.js",
|
|
9
|
+
"types": "./cards/avatar/index.d.ts"
|
|
10
|
+
},
|
|
7
11
|
"./cards/badge": {
|
|
8
12
|
"import": "./cards/badge/index.js",
|
|
9
13
|
"types": "./cards/badge/index.d.ts"
|
|
@@ -20,6 +24,10 @@
|
|
|
20
24
|
"import": "./cards/checkbox/index.js",
|
|
21
25
|
"types": "./cards/checkbox/index.d.ts"
|
|
22
26
|
},
|
|
27
|
+
"./cards/collapsibleCard": {
|
|
28
|
+
"import": "./cards/collapsibleCard/index.js",
|
|
29
|
+
"types": "./cards/collapsibleCard/index.d.ts"
|
|
30
|
+
},
|
|
23
31
|
"./cards/conditional": {
|
|
24
32
|
"import": "./cards/conditional/index.js",
|
|
25
33
|
"types": "./cards/conditional/index.d.ts"
|
|
@@ -32,6 +40,10 @@
|
|
|
32
40
|
"import": "./cards/dialog/index.js",
|
|
33
41
|
"types": "./cards/dialog/index.d.ts"
|
|
34
42
|
},
|
|
43
|
+
"./cards/drawer": {
|
|
44
|
+
"import": "./cards/drawer/index.js",
|
|
45
|
+
"types": "./cards/drawer/index.d.ts"
|
|
46
|
+
},
|
|
35
47
|
"./cards/dropDownMenu": {
|
|
36
48
|
"import": "./cards/dropDownMenu/index.js",
|
|
37
49
|
"types": "./cards/dropDownMenu/index.d.ts"
|
|
@@ -56,6 +68,10 @@
|
|
|
56
68
|
"import": "./cards/framework/index.js",
|
|
57
69
|
"types": "./cards/framework/index.d.ts"
|
|
58
70
|
},
|
|
71
|
+
"./cards/infoCard": {
|
|
72
|
+
"import": "./cards/infoCard/index.js",
|
|
73
|
+
"types": "./cards/infoCard/index.d.ts"
|
|
74
|
+
},
|
|
59
75
|
"./cards/input": {
|
|
60
76
|
"import": "./cards/input/index.js",
|
|
61
77
|
"types": "./cards/input/index.d.ts"
|
|
@@ -92,6 +108,10 @@
|
|
|
92
108
|
"import": "./cards/pageWithNavbar/index.js",
|
|
93
109
|
"types": "./cards/pageWithNavbar/index.d.ts"
|
|
94
110
|
},
|
|
111
|
+
"./cards/pageWithNavbarMeta": {
|
|
112
|
+
"import": "./cards/pageWithNavbarMeta/index.js",
|
|
113
|
+
"types": "./cards/pageWithNavbarMeta/index.d.ts"
|
|
114
|
+
},
|
|
95
115
|
"./cards/pasteTarget": {
|
|
96
116
|
"import": "./cards/pasteTarget/index.js",
|
|
97
117
|
"types": "./cards/pasteTarget/index.d.ts"
|
|
@@ -100,6 +120,10 @@
|
|
|
100
120
|
"import": "./cards/resizable/index.js",
|
|
101
121
|
"types": "./cards/resizable/index.d.ts"
|
|
102
122
|
},
|
|
123
|
+
"./cards/scrollbarWithAnnotations": {
|
|
124
|
+
"import": "./cards/scrollbarWithAnnotations/index.js",
|
|
125
|
+
"types": "./cards/scrollbarWithAnnotations/index.d.ts"
|
|
126
|
+
},
|
|
103
127
|
"./cards/select": {
|
|
104
128
|
"import": "./cards/select/index.js",
|
|
105
129
|
"types": "./cards/select/index.d.ts"
|
|
@@ -151,22 +175,30 @@
|
|
|
151
175
|
"./cards/icons": {
|
|
152
176
|
"import": "./cards/icons.js",
|
|
153
177
|
"types": "./cards/icons.d.ts"
|
|
178
|
+
},
|
|
179
|
+
"./lib/utils": {
|
|
180
|
+
"import": "./lib/utils.js",
|
|
181
|
+
"types": "./lib/utils.d.ts"
|
|
154
182
|
}
|
|
155
183
|
},
|
|
156
184
|
"sideEffects": [
|
|
185
|
+
"./cards/avatar/index.js",
|
|
157
186
|
"./cards/badge/index.js",
|
|
158
187
|
"./cards/box/index.js",
|
|
159
188
|
"./cards/button/index.js",
|
|
160
189
|
"./cards/checkbox/index.js",
|
|
190
|
+
"./cards/collapsibleCard/index.js",
|
|
161
191
|
"./cards/conditional/index.js",
|
|
162
192
|
"./cards/dataTable/index.js",
|
|
163
193
|
"./cards/dialog/index.js",
|
|
194
|
+
"./cards/drawer/index.js",
|
|
164
195
|
"./cards/dropDownMenu/index.js",
|
|
165
196
|
"./cards/field/index.js",
|
|
166
197
|
"./cards/fileDrop/index.js",
|
|
167
198
|
"./cards/flexGrid/index.js",
|
|
168
199
|
"./cards/form/index.js",
|
|
169
200
|
"./cards/framework/index.js",
|
|
201
|
+
"./cards/infoCard/index.js",
|
|
170
202
|
"./cards/input/index.js",
|
|
171
203
|
"./cards/jsonViewer/index.js",
|
|
172
204
|
"./cards/list/index.js",
|
|
@@ -176,8 +208,10 @@
|
|
|
176
208
|
"./cards/modeToggle/index.js",
|
|
177
209
|
"./cards/navbarSearch/index.js",
|
|
178
210
|
"./cards/pageWithNavbar/index.js",
|
|
211
|
+
"./cards/pageWithNavbarMeta/index.js",
|
|
179
212
|
"./cards/pasteTarget/index.js",
|
|
180
213
|
"./cards/resizable/index.js",
|
|
214
|
+
"./cards/scrollbarWithAnnotations/index.js",
|
|
181
215
|
"./cards/select/index.js",
|
|
182
216
|
"./cards/slider/index.js",
|
|
183
217
|
"./cards/sliderValue/index.js",
|
|
@@ -208,10 +242,11 @@
|
|
|
208
242
|
"peerDependencies": {
|
|
209
243
|
"react": "^19.1.0",
|
|
210
244
|
"react-dom": "^19.1.0",
|
|
211
|
-
"@pihanga2/core": "
|
|
245
|
+
"@pihanga2/core": "^0.3.21",
|
|
212
246
|
"@pihanga2/cards": "*"
|
|
213
247
|
},
|
|
214
248
|
"dependencies": {
|
|
249
|
+
"@radix-ui/react-collapsible": "^1.1.20",
|
|
215
250
|
"@radix-ui/react-dialog": "^1.1.15",
|
|
216
251
|
"@radix-ui/react-dropdown-menu": "^2.1.16",
|
|
217
252
|
"@radix-ui/react-menubar": "^1.1.16",
|
|
@@ -229,6 +264,7 @@
|
|
|
229
264
|
"react-json-view-lite": "^2.5.0",
|
|
230
265
|
"react-resizable-panels": "^2.0.0",
|
|
231
266
|
"sonner": "^2.0.7",
|
|
232
|
-
"tailwind-merge": "^3.3.0"
|
|
267
|
+
"tailwind-merge": "^3.3.0",
|
|
268
|
+
"vaul": "^1.1.2"
|
|
233
269
|
}
|
|
234
270
|
}
|
package/pihanga-shadcn.css
DELETED
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
.pi-file-drop-root label{border:2px dashed #999;flex-grow:1;justify-content:space-between;max-width:100%;display:flex}.pi-file-drop-root .dropzone-msg{cursor:pointer;text-align:center;flex-grow:4;margin:3em 0}.pi-file-drop-root .pi-progress{max-width:100%;padding:1.25em}.pi-file-drop-root .pi-progress-label{font-size:1rem;font-weight:600;line-height:1.5rem}.pi-file-drop -root.pi-progress-container{background-color:#dadfe5;border-radius:4px;height:1rem;display:flex;position:relative;overflow:hidden}.pi-file-drop-root .pi-progress-bar{color:#fff;background-color:#0054a6;flex-direction:column;justify-content:center;display:flex;overflow:hidden}.pi-file-drop-root .pi-progress .label{font-size:1em;display:block}._GzYRV{white-space:pre-wrap;white-space:-moz-pre-wrap;white-space:-pre-wrap;white-space:-o-pre-wrap;word-wrap:break-word;line-height:1.2}._3eOF8{margin-right:5px;font-weight:700}._3eOF8+._3eOF8{margin-left:-5px}._1MFti{cursor:pointer}._f10Tu{-webkit-user-select:none;user-select:none;margin-right:5px;font-size:1.2em}._1UmXx:after{content:"▸"}._1LId0:after{content:"▾"}._1pNG9{margin-right:5px}._1pNG9:after{content:"...";font-size:.8em}._2IvMF{background:#eee}._2bkNM{margin:0;padding:0 10px}._1BXBN{margin:0;padding:0}._1MGIk{color:#000;margin-right:5px;font-weight:600}._3uHL6{color:#000}._2T6PJ,._1Gho6{color:#df113a}._vGjyY{color:#2a3f3c}._1bQdo{color:#0b75f5}._3zQKs{color:#469038}._1xvuR{color:#43413d}._oLqym,._2AXVT,._2KJWg{color:#000}._11RoI{background:#002b36}._17H2C,._3QHg2,._3fDAz{color:#fdf6e3}._2bSDX{color:#fdf6e3;margin-right:5px;font-weight:bolder}._gsbQL{color:#fdf6e3}._LaAZe,._GTKgm{color:#81b5ac}._Chy1W{color:#cb4b16}._2bveF{color:#d33682}._2vRm-{color:#ae81ff}._1prJR{color:#268bd2}.jv-wrapper{position:relative}.jv-copy-btn{z-index:10;width:22px;height:22px;color:hsl(var(--muted-foreground,0 0% 55%));cursor:pointer;opacity:.35;background:0 0;border:1px solid #0000;border-radius:4px;justify-content:center;align-items:center;padding:0;transition:opacity .15s,color .15s,background .15s,border-color .15s;display:inline-flex;position:absolute;top:4px;right:4px}.jv-wrapper:hover .jv-copy-btn,.jv-wrapper:focus-within .jv-copy-btn{opacity:1}.jv-copy-btn:hover{color:hsl(var(--foreground));background:hsl(var(--muted,0 0% 96%));border-color:hsl(var(--border,0 0% 88%))}.jv-copy-btn--done{opacity:1;color:#2e7d32}.dark .jv-copy-btn--done{color:#81c784}.jv-container{white-space:pre-wrap;word-wrap:break-word;color:var(--foreground);background:0 0;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace;font-size:12.5px;font-weight:400;line-height:1.55}.jv-basic-child{margin:0;padding:0 0 0 1.1em;display:block;position:relative}.jv-label{color:var(--foreground);margin-right:0;font-weight:400}.jv-clickable-label{color:var(--foreground);cursor:pointer;margin-right:0;font-weight:400}.jv-clickable-label:hover{-webkit-text-decoration:underline dotted;text-decoration:underline dotted}.jv-punctuation{color:var(--foreground);font-weight:400}.jv-expand-icon,.jv-collapse-icon{width:1em;color:hsl(var(--muted-foreground,0 0% 55%));-webkit-user-select:none;user-select:none;cursor:pointer;justify-content:center;align-items:center;font-size:.65em;line-height:1;display:inline-flex;position:absolute;top:.775em;left:0;transform:translateY(-50%)}.jv-expand-icon:after{content:"▶"}.jv-collapse-icon:after{content:"▼"}.jv-collapsed-content{cursor:pointer;color:hsl(var(--muted-foreground,0 0% 55%))}.jv-collapsed-content:after{content:" …"}.jv-child-fields-container{border-left:1px solid hsl(var(--border,0 0% 88%));margin:0 0 0 .3em;padding:0 0 0 1.25em}.jv-null,.jv-undefined{color:#c0392b}.jv-string{color:#2e7d32}.jv-number{color:#1565c0}.jv-boolean{color:#00796b}.jv-other{color:var(--foreground)}.dark .jv-string{color:#81c784}.dark .jv-number{color:#64b5f6}.dark .jv-boolean{color:#4db6ac}.dark .jv-null,.dark .jv-undefined{color:#ef9a9a}.dark .jv-child-fields-container{border-left-color:hsl(var(--border,0 0% 25%))}.overlay-wrapper{flex-direction:column;width:100%;min-width:0;display:flex;position:relative}.overlay-wrapper.is-loading.fill-parent{min-height:12rem}.overlay-content{flex-direction:column;flex-grow:1;width:100%;min-width:0;display:flex;position:relative;overflow-y:hidden}.overlay-wrapper.fill-parent .overlay-content{min-height:inherit}.loading-overlay{opacity:0;pointer-events:none;z-index:2;background:oklch(100% 0 0/.7);justify-content:center;align-items:center;transition:opacity .15s;display:flex;position:absolute;inset:0}.overlay-wrapper.viewport-centered .loading-overlay{z-index:50;position:fixed;inset:0}.dark .loading-overlay{background:oklch(14.5% 0 0/.5)}.overlay-wrapper.is-loading .loading-overlay{opacity:1;pointer-events:auto}.loading-overlay__content{color:var(--muted-foreground);align-items:center;gap:.5rem;font-size:.875rem;display:flex}.window{justify-content:center;width:100%;height:100%;display:flex}.page{flex-direction:column;flex:1;width:100%;height:100%;display:flex}.header{border-bottom:1px solid var(--border);background-color:var(--background);flex-shrink:0;align-items:center;gap:1rem;padding-left:1rem;padding-right:1rem;display:flex}@media (width>=768px){.header{padding-left:1.5rem;padding-right:1.5rem}}.title-section{align-items:center;gap:.5rem;display:inline-flex}.title-section .title-icon{flex-shrink:0;width:1.5rem;height:1.5rem}.title-section .title-text{color:var(--foreground);font-size:1.125rem;font-weight:600;line-height:1.75rem}.nav-md{display:none}@media (width>=768px){.nav-md{flex-direction:row;align-items:center;gap:1.25rem;display:flex}}@media (width>=1024px){.nav-md{gap:1.5rem}}.nav-md .nav-link{color:var(--muted-foreground);padding-left:0;padding-right:0;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.nav-md .nav-link:hover{color:var(--foreground)}.nav-sm{gap:1.5rem;padding:1rem;font-size:1.125rem;font-weight:500;line-height:1.75rem;display:grid}.nav-sm .nav-link{color:var(--muted-foreground);justify-content:flex-start;padding-left:0;padding-right:0;font-size:1.125rem;line-height:1.75rem}.nav-sm .nav-link:hover{color:var(--foreground)}.header-actions{align-items:center;gap:.5rem;margin-left:auto;display:flex}@media (width>=1024px){.header-actions{gap:1rem}}.main{background-color:var(--background);flex:1;min-height:0;padding:.5rem 1rem;overflow-y:auto}@media (width>=768px){.main{padding:1rem 2rem}}.footer{background-color:var(--background);color:var(--muted-foreground);flex-shrink:0;padding:.5rem 1rem}@media (width>=768px){.footer{padding:1rem 2rem}}.pihanga-paste-target{border:2px dashed #999}.pihanga-paste-target .paste-target-msg-title{font-size:1.2em}.pihanga-paste-target textarea:focus{outline:none}.pihanga-paste-target-focused{border-width:3px;border-color:#007bff}.pihanga-paste-target-focused .paste-target-focus-reminder{display:none}.pi-stepper{--pi-stepper-indicator-size-sm:1.5rem;--pi-stepper-indicator-size-md:2rem;--pi-stepper-indicator-size-lg:2.5rem;--pi-stepper-indicator-size:var(--pi-stepper-indicator-size-md);--pi-stepper-connector-thickness:2px;--pi-stepper-connector-min-height:1.5rem;--pi-stepper-label-max-width:6rem}.pi-stepper--sm{--pi-stepper-indicator-size:var(--pi-stepper-indicator-size-sm)}.pi-stepper--md{--pi-stepper-indicator-size:var(--pi-stepper-indicator-size-md)}.pi-stepper--lg{--pi-stepper-indicator-size:var(--pi-stepper-indicator-size-lg)}.pi-stepper__indicator{transition:background-color .2s,border-color .2s,color .2s,outline-color .2s}.pi-stepper__indicator--clickable{cursor:pointer}.pi-stepper__indicator--clickable:hover{opacity:.8}.pi-stepper__indicator--static{cursor:default}.pi-stepper__connector{transition:background-color .3s}.pi-stepper__connector--vertical{min-height:var(--pi-stepper-connector-min-height)}.pi-stepper__label-title{transition:color .2s}
|
|
2
|
-
/*$vite$:1*/
|