astryx-dracula 0.5.0 → 0.6.2
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/BRAND.md +3 -3
- package/README.md +7 -4
- package/USAGE.md +49 -49
- package/astryx-dracula.d.ts +2 -2
- package/astryx-dracula.js +25 -9
- package/astryx-dracula.variants.d.ts +2 -2
- package/astryx.integration.mjs +1 -1
- package/icons.mjs +21 -17
- package/icons.tsx +69 -62
- package/package.json +125 -120
- package/shared/auth-chrome-config.ts +6 -6
- package/shared/auth-chrome.tsx +143 -144
- package/shared/auth-copy.ts +14 -14
- package/shared/chaptered-doc-config.ts +48 -51
- package/shared/chaptered-doc.tsx +267 -289
- package/shared/chart-hues.ts +25 -10
- package/shared/chart-labels.tsx +31 -30
- package/shared/chart-legend.tsx +55 -56
- package/shared/chart-panel-style.ts +3 -3
- package/shared/data-bar.tsx +97 -102
- package/shared/format-money.ts +1 -1
- package/shared/gallery-image.ts +6 -6
- package/shared/login-demo.ts +1 -1
- package/shared/metric-card.tsx +101 -105
- package/shared/metric-delta.tsx +28 -27
- package/shared/order-desk.tsx +205 -216
- package/shared/revenue-chart.tsx +145 -165
- package/shared/scene-castle.tsx +206 -291
- package/shared/scene-frame.tsx +33 -32
- package/shared/scene-hues.ts +17 -17
- package/shared/scene-tile.tsx +88 -92
- package/shared/settings-data.ts +119 -125
- package/shared/settings-rows.tsx +122 -159
- package/shared/sparkline.tsx +75 -88
- package/shared/sso-icons.tsx +10 -22
- package/shared/stars.tsx +16 -25
- package/templates/ai-chat-landing.template.mjs +5 -4
- package/templates/ai-chat-landing.tsx +473 -460
- package/templates/ai-chat.template.mjs +5 -4
- package/templates/ai-chat.tsx +543 -612
- package/templates/blank.template.mjs +5 -4
- package/templates/blank.tsx +18 -14
- package/templates/centered-hero.template.mjs +5 -4
- package/templates/centered-hero.tsx +55 -68
- package/templates/classic-gallery.template.mjs +5 -4
- package/templates/classic-gallery.tsx +97 -104
- package/templates/contact-form.template.mjs +5 -4
- package/templates/contact-form.tsx +247 -282
- package/templates/dashboard-portfolio.template.mjs +5 -4
- package/templates/dashboard-portfolio.tsx +717 -548
- package/templates/dashboard.template.mjs +5 -4
- package/templates/dashboard.tsx +596 -567
- package/templates/detail-page.template.mjs +5 -4
- package/templates/detail-page.tsx +546 -603
- package/templates/documentation-design.template.mjs +5 -4
- package/templates/documentation-design.tsx +231 -243
- package/templates/documentation-technical.template.mjs +5 -4
- package/templates/documentation-technical.tsx +236 -239
- package/templates/documentation.template.mjs +5 -4
- package/templates/documentation.tsx +267 -279
- package/templates/editor.template.mjs +5 -4
- package/templates/editor.tsx +844 -877
- package/templates/file-explorer.template.mjs +5 -4
- package/templates/file-explorer.tsx +566 -590
- package/templates/form-two-column.template.mjs +5 -4
- package/templates/form-two-column.tsx +195 -210
- package/templates/gallery-hero.template.mjs +5 -4
- package/templates/gallery-hero.tsx +93 -114
- package/templates/ide.template.mjs +5 -4
- package/templates/ide.tsx +407 -453
- package/templates/incident-console.template.mjs +5 -4
- package/templates/incident-console.tsx +593 -575
- package/templates/kanban-board.template.mjs +5 -4
- package/templates/kanban-board.tsx +665 -683
- package/templates/library.template.mjs +5 -4
- package/templates/library.tsx +409 -430
- package/templates/login-card.template.mjs +5 -4
- package/templates/login-card.tsx +63 -72
- package/templates/login-split.template.mjs +5 -4
- package/templates/login-split.tsx +192 -193
- package/templates/login-sso.template.mjs +5 -4
- package/templates/login-sso.tsx +257 -258
- package/templates/login.template.mjs +5 -4
- package/templates/login.tsx +53 -49
- package/templates/messaging-shell.template.mjs +5 -4
- package/templates/messaging-shell.tsx +556 -574
- package/templates/mixed-gallery.template.mjs +5 -4
- package/templates/mixed-gallery.tsx +60 -58
- package/templates/payment-form.template.mjs +5 -4
- package/templates/payment-form.tsx +882 -991
- package/templates/product-detail.template.mjs +5 -4
- package/templates/product-detail.tsx +261 -272
- package/templates/product-gallery.template.mjs +5 -4
- package/templates/product-gallery.tsx +126 -137
- package/templates/product-tour.template.mjs +5 -4
- package/templates/product-tour.tsx +741 -773
- package/templates/settings-dialog.template.mjs +5 -4
- package/templates/settings-dialog.tsx +688 -717
- package/templates/settings-sidebar.template.mjs +5 -4
- package/templates/settings-sidebar.tsx +762 -807
- package/templates/settings.template.mjs +5 -4
- package/templates/settings.tsx +289 -304
- package/templates/shell-nav.template.mjs +5 -4
- package/templates/shell-nav.tsx +212 -219
- package/templates/shell-side-nav.template.mjs +5 -4
- package/templates/shell-side-nav.tsx +135 -157
- package/templates/shell-top-nav.template.mjs +5 -4
- package/templates/shell-top-nav.tsx +182 -203
- package/templates/side-gallery.template.mjs +5 -4
- package/templates/side-gallery.tsx +85 -90
- package/templates/table-grouped.template.mjs +5 -4
- package/templates/table-grouped.tsx +1000 -1053
- package/templates/table-page-chart.template.mjs +5 -4
- package/templates/table-page-chart.tsx +400 -398
- package/templates/table-page-heatmap-status.template.mjs +5 -4
- package/templates/table-page-heatmap-status.tsx +483 -512
- package/templates/table-page-shoe-store-heatmap.template.mjs +5 -4
- package/templates/table-page-shoe-store-heatmap.tsx +748 -746
- package/templates/table-page.template.mjs +5 -4
- package/templates/table-page.tsx +396 -405
- package/templates/table.template.mjs +5 -4
- package/templates/table.tsx +92 -93
- package/templates/tech-report.template.mjs +5 -4
- package/templates/tech-report.tsx +1316 -1304
- package/templates/theme-showcase.template.mjs +5 -4
- package/templates/theme-showcase.tsx +871 -951
- package/theme.css +35 -77
- package/theme.css.d.ts +9 -0
- package/tokens.css +373 -380
|
@@ -1,16 +1,18 @@
|
|
|
1
1
|
// Copyright (c) Meta Platforms, Inc. and affiliates.
|
|
2
|
-
// XLE (canonical structure
|
|
3
|
-
//
|
|
2
|
+
// XLE (canonical structure of the tree below; the CLI had no XLE validator
|
|
3
|
+
// after `astryx layout` was removed in 0.7.0, so this is a reading aid and a
|
|
4
|
+
// human drift check — update it with the file, never alone):
|
|
5
|
+
// L[h=auto] > LC[p=6] > V[g=10] > (V[g=6 a=center] > (V[g=3 a=center] > Hd"Little haunts, everywhere you roam"[level=1 t=display-2] + Tx"Sometimes all it takes"[t=body]) + (H[j=center g=3] > B.primary"Enter the gallery" + B.secondary"Read the lore")) + (G[c={min:200} g=4] > AR[ratio=4/5] > Scene{SceneCastle}*3)
|
|
4
6
|
|
|
5
|
-
import {
|
|
6
|
-
import {
|
|
7
|
-
import {
|
|
8
|
-
import {Icon} from
|
|
9
|
-
import {
|
|
10
|
-
import {
|
|
11
|
-
import {
|
|
12
|
-
import {
|
|
13
|
-
import {
|
|
7
|
+
import { AspectRatio } from "@astryxdesign/core/AspectRatio";
|
|
8
|
+
import { Button } from "@astryxdesign/core/Button";
|
|
9
|
+
import { Grid } from "@astryxdesign/core/Grid";
|
|
10
|
+
import { Icon } from "@astryxdesign/core/Icon";
|
|
11
|
+
import { HStack, Layout, LayoutContent, VStack } from "@astryxdesign/core/Layout";
|
|
12
|
+
import { Heading, Text } from "@astryxdesign/core/Text";
|
|
13
|
+
import { galleryImage, galleryImageClip } from "astryx-dracula/shared/gallery-image";
|
|
14
|
+
import { SceneCastle } from "astryx-dracula/shared/scene-castle";
|
|
15
|
+
import { ArrowRight } from "lucide-react";
|
|
14
16
|
|
|
15
17
|
// Castle + pines banners live in shared/scene-castle (`card`/`tall` variants:
|
|
16
18
|
// harvest-yellow moon, fg-stroke bats, per-scene hill constants). Fill +
|
|
@@ -21,113 +23,90 @@ import {SceneCastle} from 'astryx-dracula/shared/scene-castle';
|
|
|
21
23
|
// tile instead.
|
|
22
24
|
|
|
23
25
|
function BatFlightScene() {
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
fill="var(--dracula-selection)"
|
|
66
|
-
/>
|
|
67
|
-
<g fill="var(--dracula-green)">
|
|
68
|
-
<circle cx="80" cy="440" r="6" />
|
|
69
|
-
<circle cx="200" cy="455" r="6" />
|
|
70
|
-
<circle cx="320" cy="445" r="6" />
|
|
71
|
-
</g>
|
|
72
|
-
</svg>
|
|
73
|
-
);
|
|
26
|
+
return (
|
|
27
|
+
<svg
|
|
28
|
+
style={galleryImage}
|
|
29
|
+
viewBox="0 0 400 500"
|
|
30
|
+
role="img"
|
|
31
|
+
aria-label="Bats crossing a moonless night sky"
|
|
32
|
+
>
|
|
33
|
+
<rect width="400" height="500" fill="var(--dracula-bg-dark)" />
|
|
34
|
+
<circle cx="200" cy="140" r="60" fill="var(--dracula-comment)" />
|
|
35
|
+
<circle
|
|
36
|
+
cx="200"
|
|
37
|
+
cy="140"
|
|
38
|
+
r="60"
|
|
39
|
+
fill="none"
|
|
40
|
+
stroke="var(--dracula-pink)"
|
|
41
|
+
strokeWidth={3}
|
|
42
|
+
opacity={0.6}
|
|
43
|
+
/>
|
|
44
|
+
<g fill="var(--dracula-cyan)">
|
|
45
|
+
<circle cx="60" cy="70" r="2" />
|
|
46
|
+
<circle cx="150" cy="40" r="2.5" />
|
|
47
|
+
<circle cx="260" cy="60" r="2" />
|
|
48
|
+
<circle cx="340" cy="110" r="2.5" />
|
|
49
|
+
<circle cx="100" cy="160" r="2" />
|
|
50
|
+
</g>
|
|
51
|
+
<g fill="none" stroke="var(--dracula-fg)" strokeWidth={4} strokeLinecap="round">
|
|
52
|
+
<path d="M110 220 q12 -12 24 0 q12 -12 24 0" />
|
|
53
|
+
<path d="M200 180 q12 -12 24 0 q12 -12 24 0" />
|
|
54
|
+
<path d="M250 260 q9 -9 18 0 q9 -9 18 0" />
|
|
55
|
+
<path d="M140 300 q9 -9 18 0 q9 -9 18 0" />
|
|
56
|
+
<path d="M290 320 q9 -9 18 0 q9 -9 18 0" />
|
|
57
|
+
</g>
|
|
58
|
+
<path d="M0 370 Q140 310 270 355 T400 345 V500 H0 Z" fill="var(--dracula-bg-lighter)" />
|
|
59
|
+
<path d="M0 430 Q180 375 400 415 V500 H0 Z" fill="var(--dracula-selection)" />
|
|
60
|
+
<g fill="var(--dracula-green)">
|
|
61
|
+
<circle cx="80" cy="440" r="6" />
|
|
62
|
+
<circle cx="200" cy="455" r="6" />
|
|
63
|
+
<circle cx="320" cy="445" r="6" />
|
|
64
|
+
</g>
|
|
65
|
+
</svg>
|
|
66
|
+
);
|
|
74
67
|
}
|
|
75
68
|
|
|
76
69
|
const SCENES = [
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
70
|
+
{ alt: "Moonlit castle on midnight hills", scene: <SceneCastle variant="card" /> },
|
|
71
|
+
{ alt: "Harvest moon over midnight pines", scene: <SceneCastle variant="tall" /> },
|
|
72
|
+
{ alt: "Bats crossing a moonless night sky", scene: <BatFlightScene /> },
|
|
80
73
|
];
|
|
81
74
|
|
|
82
75
|
export default function GalleryHero() {
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
{SCENES.map(item => (
|
|
120
|
-
<AspectRatio
|
|
121
|
-
key={item.alt}
|
|
122
|
-
ratio={4 / 5}
|
|
123
|
-
style={galleryImageClip}>
|
|
124
|
-
{item.scene}
|
|
125
|
-
</AspectRatio>
|
|
126
|
-
))}
|
|
127
|
-
</Grid>
|
|
128
|
-
</VStack>
|
|
129
|
-
</LayoutContent>
|
|
130
|
-
}
|
|
131
|
-
/>
|
|
132
|
-
);
|
|
76
|
+
return (
|
|
77
|
+
<Layout
|
|
78
|
+
height="auto"
|
|
79
|
+
content={
|
|
80
|
+
<LayoutContent padding={6}>
|
|
81
|
+
<VStack gap={10}>
|
|
82
|
+
<VStack gap={6} hAlign="center">
|
|
83
|
+
<VStack gap={3} hAlign="center">
|
|
84
|
+
<Heading level={1} type="display-2" justify="center" textWrap="balance">
|
|
85
|
+
Little haunts, everywhere you roam
|
|
86
|
+
</Heading>
|
|
87
|
+
<Text type="body" color="secondary" justify="center" textWrap="balance">
|
|
88
|
+
Sometimes all it takes is one small shadow to turn the whole night around.
|
|
89
|
+
</Text>
|
|
90
|
+
</VStack>
|
|
91
|
+
<HStack gap={3} wrap="wrap" justify="center">
|
|
92
|
+
<Button
|
|
93
|
+
label="Enter the gallery"
|
|
94
|
+
variant="primary"
|
|
95
|
+
endContent={<Icon icon={ArrowRight} size="sm" color="inherit" />}
|
|
96
|
+
/>
|
|
97
|
+
<Button label="Read the lore" variant="secondary" />
|
|
98
|
+
</HStack>
|
|
99
|
+
</VStack>
|
|
100
|
+
<Grid columns={{ minWidth: 200, repeat: "fit" }} gap={4}>
|
|
101
|
+
{SCENES.map((item) => (
|
|
102
|
+
<AspectRatio key={item.alt} ratio={4 / 5} style={galleryImageClip}>
|
|
103
|
+
{item.scene}
|
|
104
|
+
</AspectRatio>
|
|
105
|
+
))}
|
|
106
|
+
</Grid>
|
|
107
|
+
</VStack>
|
|
108
|
+
</LayoutContent>
|
|
109
|
+
}
|
|
110
|
+
/>
|
|
111
|
+
);
|
|
133
112
|
}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
export default {
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
2
|
+
type: "page",
|
|
3
|
+
name: "IDE Workspace",
|
|
4
|
+
description: "Tabbed editor with terminal and properties",
|
|
5
|
+
keywords: ["ide", "editor", "terminal", "workspace", "code", "developer"],
|
|
6
|
+
category: "tooling",
|
|
6
7
|
};
|