tamga-ui 0.5.7 → 0.5.9
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/CHANGELOG.md +68 -0
- package/dist/components/avatar.js +1 -1
- package/dist/components/chart.js +1 -1
- package/dist/components/chrome.d.ts.map +1 -1
- package/dist/components/chrome.js +5 -5
- package/dist/components/display.d.ts.map +1 -1
- package/dist/components/display.js +6 -6
- package/dist/components/empty-state.d.ts.map +1 -1
- package/dist/components/empty-state.js +4 -4
- package/dist/components/layout.d.ts.map +1 -1
- package/dist/components/layout.js +5 -2
- package/dist/components/overlay.d.ts +3 -1
- package/dist/components/overlay.d.ts.map +1 -1
- package/dist/components/overlay.js +5 -5
- package/dist/components/square-picker.d.ts.map +1 -1
- package/dist/components/square-picker.js +1 -1
- package/dist/components/stacked-bar.js +1 -1
- package/dist/components/tabs.js +1 -1
- package/dist/components/tree-select.js +2 -2
- package/dist/fonts.css +1 -1
- package/dist/kit.css +8 -12
- package/dist/patterns/list-template.d.ts +10 -1
- package/dist/patterns/list-template.d.ts.map +1 -1
- package/dist/patterns/list-template.js +2 -2
- package/dist/patterns/settings-template.d.ts.map +1 -1
- package/dist/patterns/settings-template.js +1 -1
- package/dist/styles.css +1 -1
- package/dist/theme.css +1 -1
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -5,6 +5,74 @@ Versions follow [semver](https://semver.org/). Through `0.x`, breaking changes m
|
|
|
5
5
|
|
|
6
6
|
> 🇹🇷 Türkçe için [tamga.org.tr/tr](https://tamga.org.tr/tr).
|
|
7
7
|
|
|
8
|
+
## 0.5.9
|
|
9
|
+
|
|
10
|
+
> The hook lands on the root, in every branch.
|
|
11
|
+
|
|
12
|
+
### Fixed
|
|
13
|
+
|
|
14
|
+
- **`data-*` reaches the root element in every render branch.** `ListRow` forwarded it only as a
|
|
15
|
+
link; as a button or a plain row it was dropped, and products had to wrap rows in an extra
|
|
16
|
+
`div` just to carry a selector. The same defect turned up in thirteen more components once the
|
|
17
|
+
gate started checking branches: `Dialog` (the hook sat on the title strip, not on the
|
|
18
|
+
`role="dialog"` element), `ConfirmDialog` (did not accept it at all), `SquarePicker`, `Kpi`,
|
|
19
|
+
`Badge`, `Tabs`, `TreeSelect` (every node carried the hook), `LineChart`, `StackedBarChart`,
|
|
20
|
+
`EmptyState` (the hook was on the `<h3>`), `Avatar` with a status mark, `AccountButton`,
|
|
21
|
+
`ThemeToggle` and `LocaleSwitcher`. A test or a product selector written against any of these
|
|
22
|
+
now finds the component, not one of its parts.
|
|
23
|
+
- **`SettingsTemplate` content column can shrink** (`min-w-0`). A wide table inside it used to
|
|
24
|
+
push the page sideways instead of scrolling inside the table.
|
|
25
|
+
- **`.tamga-segment` wraps on narrow screens.** The well keeps the control height on one line
|
|
26
|
+
(`min-height: var(--control)`) and grows when the options need a second row; the items carry
|
|
27
|
+
their own height so a single row still measures exactly `--control`.
|
|
28
|
+
|
|
29
|
+
### Gate
|
|
30
|
+
|
|
31
|
+
- `check-data-props` now has a second rule: a component that spreads `dataProps(rest)` must do
|
|
32
|
+
so on the first tag of every `return` — the component's own and its `if` branches. Accepting
|
|
33
|
+
the hook was never the hard part; forwarding it in every branch was.
|
|
34
|
+
|
|
35
|
+
## 0.5.8
|
|
36
|
+
|
|
37
|
+
> A ticked checkbox stays down.
|
|
38
|
+
|
|
39
|
+
### Added
|
|
40
|
+
|
|
41
|
+
- **`ListTemplate.footer`** · the strip at the foot of the list surface, for the pagination or a
|
|
42
|
+
total. The rows are flush with the card's edge, so anything passed after them as a child landed
|
|
43
|
+
on that edge with no room; the footer sits inside the card, divided by a line and given its own
|
|
44
|
+
padding, and it is not drawn while the list is empty.
|
|
45
|
+
|
|
46
|
+
### Changed
|
|
47
|
+
|
|
48
|
+
- **A rail row is square on a narrow rail.** It was 52 by 40, written so the row would fill the
|
|
49
|
+
column, and a rectangle around a single icon framed the space rather than the icon: the selected
|
|
50
|
+
row read as a wide box with a glyph adrift in it. It is now 40 by 40, centred in the column; a
|
|
51
|
+
wide rail still takes its own width.
|
|
52
|
+
|
|
53
|
+
- **`ListTemplate` puts the filters and the list on surfaces of their own.** They sat on the page
|
|
54
|
+
ground, one bare row above another, and the two read as a single strip: where the list began, and
|
|
55
|
+
which control filtered which, had to be worked out rather than seen. The kit's own list-screen
|
|
56
|
+
example and every panel built from it already used cards, so the template was arguing with its own
|
|
57
|
+
documentation. Both surfaces keep their overflow open, so the filters' dropdowns and the rows'
|
|
58
|
+
menus are not cut at the card's edge.
|
|
59
|
+
|
|
60
|
+
### Fixed
|
|
61
|
+
|
|
62
|
+
- **Hover undid the selected state of a `Segmented` option too.** The chosen option rests 1px up
|
|
63
|
+
with a 2px shadow; hovering it grew the shadow to 3px and left the object where it was, which is
|
|
64
|
+
the one thing Law 1 forbids: a shadow that grows while nothing rises makes the height a lie. The
|
|
65
|
+
option now ignores the pointer, the way the rail, the pagination and the checkbox already did.
|
|
66
|
+
A new gate (`check:durum-hover`) compares every hover rule against the selected-state rule it
|
|
67
|
+
could outrank, because this same mistake has now been found by eye three times.
|
|
68
|
+
|
|
69
|
+
- **Hover undid the checked state of a `Checkbox` and a `Radio`.** The ticked box is drawn as a key
|
|
70
|
+
that has been pressed home: it sits 2px down and loses its shadow. The hover rule, written to
|
|
71
|
+
invite a click, was more specific than that, so a box ticked under the pointer sprang back up and
|
|
72
|
+
only settled once the pointer left. Someone ticking a row saw nothing happen. The rail already
|
|
73
|
+
carried the same decision in writing, that a current row has no hover of its own; the checkbox
|
|
74
|
+
did not.
|
|
75
|
+
|
|
8
76
|
## 0.5.7
|
|
9
77
|
|
|
10
78
|
> A multi select can be used in Safari.
|
|
@@ -32,7 +32,7 @@ export function Avatar({ name, size = 32, src, bare = false, look = "solid", let
|
|
|
32
32
|
if (status) {
|
|
33
33
|
const t = toneOf(status);
|
|
34
34
|
const mark = Math.max(8, Math.round(size * 0.3));
|
|
35
|
-
return (_jsxs("span", { className: "relative inline-flex shrink-0", children: [_jsx(Avatar, { name: name, size: size, src: src, bare: bare, look: look, letters: letters
|
|
35
|
+
return (_jsxs("span", { ...dataProps(rest), className: "relative inline-flex shrink-0", children: [_jsx(Avatar, { name: name, size: size, src: src, bare: bare, look: look, letters: letters }), _jsx("span", { className: "absolute rounded-[var(--radius-mark)]", style: {
|
|
36
36
|
right: -mark / 3,
|
|
37
37
|
bottom: -mark / 3,
|
|
38
38
|
width: mark,
|
package/dist/components/chart.js
CHANGED
|
@@ -32,7 +32,7 @@ export function LineChart({ series, labels, height = 200, formatValue = String,
|
|
|
32
32
|
/* Dört ızgara çizgisi: daha azı okumayı zorlaştırır, daha çoğu grafiği
|
|
33
33
|
kafese çevirir. */
|
|
34
34
|
const ticks = [0, 0.25, 0.5, 0.75, 1].map((f) => max * f);
|
|
35
|
-
return (_jsxs("figure", { className: cn("tamga-surface p-4", className), children: [_jsxs("div", {
|
|
35
|
+
return (_jsxs("figure", { ...dataProps(rest), className: cn("tamga-surface p-4", className), children: [_jsxs("div", { className: "flex gap-3", children: [_jsx("div", { className: "flex shrink-0 flex-col justify-between text-right font-mono text-caption text-ink-faint tabular-nums", style: { height }, "aria-hidden": true, children: [...ticks].reverse().map((t) => (_jsx("span", { children: formatValue(Math.round(t)) }, t))) }), _jsxs("div", { className: "min-w-0 flex-1", children: [_jsxs("span", { className: "relative block", style: { height }, children: [_jsxs("svg", { viewBox: `0 0 ${W} ${H}`, preserveAspectRatio: "none", style: { height, width: "100%" }, role: "img", "aria-label": ad, onMouseLeave: () => setHover(null), children: [ticks.map((t, i) => (_jsx("line", { x1: 0, x2: W, y1: y(t), y2: y(t), stroke: i === 0 ? "var(--color-line)" : "var(--color-div)", strokeWidth: 1, vectorEffect: "non-scaling-stroke" }, t))), series[0] && !series[0].dashed ? (_jsx("polygon", { points: `0,${H} ${series[0].values.map((v, i) => `${x(i)},${y(v)}`).join(" ")} ${W},${H}`, fill: "var(--color-accent-soft)", opacity: 0.35 })) : null, series.map((s, si) => {
|
|
36
36
|
const renk = seriRengi(s, si);
|
|
37
37
|
const d = s.values.map((v, i) => `${i === 0 ? "M" : "L"}${x(i)} ${y(v)}`).join(" ");
|
|
38
38
|
return (_jsx("path", { d: d, fill: "none", stroke: s.dashed ? "var(--color-ink-faint)" : renk, strokeWidth: s.dashed ? 2 : 3, strokeDasharray: s.dashed ? "6 5" : undefined, strokeLinejoin: "round", strokeLinecap: "round", vectorEffect: "non-scaling-stroke" }, s.name));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chrome.d.ts","sourceRoot":"","sources":["../../src/components/chrome.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAuB,KAAK,aAAa,EAAE,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAgChF;;;;;;;GAOG;AACH;sCACsC;AACtC,MAAM,MAAM,eAAe,GAAG,OAAO,GAAG,MAAM,GAAG,QAAQ,CAAC;AAE1D,wBAAgB,WAAW,CAAC,EAC1B,MAAM,EACN,OAAgB,EAChB,UAAU,EACV,kBAAkB,EAClB,UAA0B,EAC1B,IAAI,EAAE,UAAU,EAChB,QAAQ,EACR,SAAS,EACT,GAAG,IAAI,EACR,EAAE;IACD;;;;;;;;;;;;OAYG;IACH,MAAM,EACF;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,GACnC;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,GAC/B;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC;IACpD;;;;;;;;;;;OAWG;IACH,UAAU,CAAC,EAAE,eAAe,CAAC;IAC7B,gDAAgD;IAChD,kBAAkB,CAAC,EAAE,CAAC,IAAI,EAAE,eAAe,KAAK,IAAI,CAAC;IACrD;;;;;;OAMG;IACH,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,wGAAwG;IACxG,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;IACnC;;;;OAIG;IACH,OAAO,CAAC,EAAE,MAAM,GAAG,QAAQ,GAAG,QAAQ,GAAG,WAAW,CAAC;IACrD,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,mEAAmE;IACnE,CAAC,CAAC,EAAE,QAAQ,MAAM,EAAE,GAAG,OAAO,CAAC;CAChC,+
|
|
1
|
+
{"version":3,"file":"chrome.d.ts","sourceRoot":"","sources":["../../src/components/chrome.tsx"],"names":[],"mappings":"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"}
|
|
@@ -94,7 +94,7 @@ export function ThemeToggle({ labels, variant = "icon", preference, onPreference
|
|
|
94
94
|
if (!("light" in labels)) {
|
|
95
95
|
throw new Error('ThemeToggle variant="select" için labels {light, dark} olmalı');
|
|
96
96
|
}
|
|
97
|
-
return (_jsx(Select, { options: [labels.light, labels.dark], value: dark ? labels.dark : labels.light, onChange: (v) => {
|
|
97
|
+
return (_jsx(Select, { ...dataProps(rest), options: [labels.light, labels.dark], value: dark ? labels.dark : labels.light, onChange: (v) => {
|
|
98
98
|
const next = v === labels.dark;
|
|
99
99
|
if (next !== dark)
|
|
100
100
|
toggle();
|
|
@@ -109,7 +109,7 @@ export function ThemeToggle({ labels, variant = "icon", preference, onPreference
|
|
|
109
109
|
kök sınıfla birlikte anında doğru olanı gösteriyor, hidrasyon beklemeden.
|
|
110
110
|
Erişilebilir ad bunu yapamıyor (bir düğmenin tek bir adı olur), o yüzden o
|
|
111
111
|
duruma bağlı kalıyor — ve kontrollü kullanımda ürün doğru değeri veriyor. */
|
|
112
|
-
return (_jsxs("button", { type: "button", onClick: toggle, className: cn("tamga-icon-btn", className), "aria-label": "toLight" in labels ? (dark ? labels.toLight : labels.toDark) : undefined, children: [_jsx(Icon, { icon: ThemeDark, size: "sm", className: "dark:hidden" }), _jsx(Icon, { icon: ThemeLight, size: "sm", className: "hidden dark:block" })] }));
|
|
112
|
+
return (_jsxs("button", { ...dataProps(rest), type: "button", onClick: toggle, className: cn("tamga-icon-btn", className), "aria-label": "toLight" in labels ? (dark ? labels.toLight : labels.toDark) : undefined, children: [_jsx(Icon, { icon: ThemeDark, size: "sm", className: "dark:hidden" }), _jsx(Icon, { icon: ThemeLight, size: "sm", className: "hidden dark:block" })] }));
|
|
113
113
|
}
|
|
114
114
|
/**
|
|
115
115
|
* Dil değiştirici · kit YÖNLENDİRME YAPMAZ, `onChange` yalnız seçilen dili
|
|
@@ -124,7 +124,7 @@ export function LocaleSwitcher({ locales, current, onChange, label, className, .
|
|
|
124
124
|
/* ÜÇ VE ÜZERİ DİLDE KİTİN KENDİ SEÇİMİ, tarayıcınınki DEĞİL · bir süre düz
|
|
125
125
|
bir `<select>` çiziliyordu: oku işletim sisteminin, açılan listesi
|
|
126
126
|
işletim sisteminin, ve kitin hiçbir kuralı orada geçmiyordu. */
|
|
127
|
-
return (_jsx(Select, { className: cn("w-auto min-w-40", className), "aria-label": label, placeholder: label, options: locales, value: current, onChange: onChange }));
|
|
127
|
+
return (_jsx(Select, { ...dataProps(rest), className: cn("w-auto min-w-40", className), "aria-label": label, placeholder: label, options: locales, value: current, onChange: onChange }));
|
|
128
128
|
}
|
|
129
129
|
/**
|
|
130
130
|
* Kare marka karosu · görsel yoksa baş harf. `alt` bilerek boş: karo
|
|
@@ -145,10 +145,10 @@ export function AccountButton({ name, src, label, onClick, href, linkComponent:
|
|
|
145
145
|
const ic = (_jsx(Avatar, { name: name, src: src, size: 38, bare: true }));
|
|
146
146
|
const sinif = cn("tamga-account-btn", className);
|
|
147
147
|
if (href && Link) {
|
|
148
|
-
return (_jsx(Link, { href: href, "aria-label": label, className: sinif, children: ic }));
|
|
148
|
+
return (_jsx(Link, { ...dataProps(rest), href: href, "aria-label": label, className: sinif, children: ic }));
|
|
149
149
|
}
|
|
150
150
|
if (href) {
|
|
151
151
|
return (_jsx("a", { ...dataProps(rest), href: href, "aria-label": label, className: sinif, children: ic }));
|
|
152
152
|
}
|
|
153
|
-
return (_jsx("button", { type: "button", onClick: onClick, "aria-label": label, className: sinif, children: ic }));
|
|
153
|
+
return (_jsx("button", { ...dataProps(rest), type: "button", onClick: onClick, "aria-label": label, className: sinif, children: ic }));
|
|
154
154
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"display.d.ts","sourceRoot":"","sources":["../../src/components/display.tsx"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"display.d.ts","sourceRoot":"","sources":["../../src/components/display.tsx"],"names":[],"mappings":"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"}
|
|
@@ -36,7 +36,7 @@ export function Kpi({ label, value, unit, icon, note, delta, better = "up", char
|
|
|
36
36
|
? "positive"
|
|
37
37
|
: "danger";
|
|
38
38
|
const c = toneOf(tone);
|
|
39
|
-
const karo = icon ? (_jsx("span", {
|
|
39
|
+
const karo = icon ? (_jsx("span", { className: "tamga-kpi-tile", style: iconTone ? { background: toneOf(iconTone).bg, color: toneOf(iconTone).fg } : undefined, "aria-hidden": true, children: _jsx(Icon, { icon: icon, size: look === "detail" ? "sm" : "base", weight: "bold" }) })) : null;
|
|
40
40
|
/* DEĞER MONO DEĞİL DISPLAY YÜZÜNDE, ve ağırlığı en üst basamakta. Mono, bir
|
|
41
41
|
SÜTUNDA okunan sayılar için: orada rakam genişliğinin eşit olması hizayı
|
|
42
42
|
kuruyor. Bir KPI karosunda sütun yok, tek bir sayı var ve işi okunmak
|
|
@@ -47,12 +47,12 @@ export function Kpi({ label, value, unit, icon, note, delta, better = "up", char
|
|
|
47
47
|
const govde = look === "detail" ? (_jsxs(_Fragment, { children: [_jsxs("span", { className: "tamga-kpi-ust", children: [karo, label] }), _jsxs("span", { className: "tamga-kpi-orta", children: [_jsxs("span", { className: "flex items-end gap-2", children: [sayi, birim] }), chart ? _jsx("span", { className: "shrink-0", children: chart }) : null] }), note ? _jsx("span", { className: "text-caption text-ink-faint", children: note }) : null, degisim] })) : (_jsxs(_Fragment, { children: [karo, _jsxs("span", { className: "flex min-w-0 flex-1 flex-col gap-0.5", children: [_jsx("span", { className: "tamga-kpi-etiket", children: label }), _jsxs("span", { className: "flex items-end gap-2", children: [sayi, birim, degisim ? _jsx("span", { className: "ml-auto", children: degisim }) : null] }), note ? _jsx("span", { className: "text-caption text-ink-faint", children: note }) : null, chart ? _jsx("span", { className: "mt-3 block", children: chart }) : null] })] }));
|
|
48
48
|
const sinif = cn("tamga-kpi", look === "detail" && "tamga-kpi-detay", (href || onClick) && "tamga-kpi-live", className);
|
|
49
49
|
if (href) {
|
|
50
|
-
return (_jsx(Link, { href: href, className: sinif, children: govde }));
|
|
50
|
+
return (_jsx(Link, { ...dataProps(rest), href: href, className: sinif, children: govde }));
|
|
51
51
|
}
|
|
52
52
|
if (onClick) {
|
|
53
|
-
return (_jsx("button", { type: "button", onClick: onClick, "aria-pressed": pressed, "data-pressed": pressed || undefined, className: sinif, children: govde }));
|
|
53
|
+
return (_jsx("button", { ...dataProps(rest), type: "button", onClick: onClick, "aria-pressed": pressed, "data-pressed": pressed || undefined, className: sinif, children: govde }));
|
|
54
54
|
}
|
|
55
|
-
return _jsx("div", { className: sinif, children: govde });
|
|
55
|
+
return _jsx("div", { ...dataProps(rest), className: sinif, children: govde });
|
|
56
56
|
}
|
|
57
57
|
/**
|
|
58
58
|
* KPI karolarının ızgarası. Sütun sayısını KAP veriyor: karo 210 pikselin
|
|
@@ -130,13 +130,13 @@ export function Badge({ count, max = 99, tone = "danger", dot = false, label, cl
|
|
|
130
130
|
return _jsx(_Fragment, { children: children });
|
|
131
131
|
const c = toneOf(tone);
|
|
132
132
|
const shown = (count ?? 0) > max ? `${max}+` : String(count ?? 0);
|
|
133
|
-
const isaret = dot ? (_jsx("span", {
|
|
133
|
+
const isaret = dot ? (_jsx("span", { className: "tamga-count-dot", style: { background: c.mark }, role: "status", "aria-label": label })) : (_jsxs("span", { className: "tamga-count tabular-nums", style: { background: c.bg, color: c.fg, borderColor: c.fg }, children: [_jsx("span", { "aria-hidden": true, children: shown }), _jsxs("span", { className: "sr-only", children: [count, " ", label] })] }));
|
|
134
134
|
if (!children)
|
|
135
135
|
return isaret;
|
|
136
136
|
/* Rozet, üstüne oturduğu şeyin KARDEŞİ: çocuğu yapmak mümkün değil, çünkü
|
|
137
137
|
`children` herhangi bir eleman olabilir. Hover'da onunla birlikte gitmesini
|
|
138
138
|
`.tamga-count-yuva` sağlıyor (kit.css, düğmenin kaymalarıyla aynı). */
|
|
139
|
-
return (_jsxs("span", { className: cn("tamga-badge-wrap relative inline-flex", className), children: [children, _jsx("span", { className: "tamga-count-yuva", children: isaret })] }));
|
|
139
|
+
return (_jsxs("span", { ...dataProps(rest), className: cn("tamga-badge-wrap relative inline-flex", className), children: [children, _jsx("span", { className: "tamga-count-yuva", children: isaret })] }));
|
|
140
140
|
}
|
|
141
141
|
/**
|
|
142
142
|
* Adım göstergesi. `<ol>` kullanılıyor: adımlar SIRALI ve sıra bilgi taşıyor;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"empty-state.d.ts","sourceRoot":"","sources":["../../src/components/empty-state.tsx"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"empty-state.d.ts","sourceRoot":"","sources":["../../src/components/empty-state.tsx"],"names":[],"mappings":"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"}
|
|
@@ -61,7 +61,7 @@ export function EmptyNote({ art, icon, title, children, action, className, ...re
|
|
|
61
61
|
*/
|
|
62
62
|
export function EmptyState({ layout = "banner", art, icon, tone, kicker, title, children, action, note, says, steps, routes, routesLabel, size = 150, className, ...rest }) {
|
|
63
63
|
const figure = !art ? null : says !== undefined ? (_jsx(ArtSays, { art: art, size: size, children: says })) : (_jsx(ArtFigure, { art: art, size: size, float: true }));
|
|
64
|
-
const words = (_jsxs(_Fragment, { children: [kicker ? _jsx("p", { className: "tamga-kicker mb-2", children: kicker }) : null, _jsx("h3", {
|
|
64
|
+
const words = (_jsxs(_Fragment, { children: [kicker ? _jsx("p", { className: "tamga-kicker mb-2", children: kicker }) : null, _jsx("h3", { className: "font-display text-display-sm font-extrabold tracking-tight text-ink", children: title }), children ? (_jsx("p", { className: "mt-3 max-w-[var(--measure)] text-body leading-relaxed text-ink-soft", children: children })) : null, note ? (_jsx("p", { className: "mt-2 max-w-[var(--measure)] text-small leading-relaxed text-ink-faint", children: note })) : null] }));
|
|
65
65
|
if (layout === "plain") {
|
|
66
66
|
/* KESİK KENARLI KART: kitin her yerinde kesik çizgi "henüz gerçek içerik
|
|
67
67
|
değil" demek, ve boş bir bölüm tam olarak o. Dolu hâlinde aynı yerde
|
|
@@ -69,13 +69,13 @@ export function EmptyState({ layout = "banner", art, icon, tone, kicker, title,
|
|
|
69
69
|
return (_jsxs("div", { ...dataProps(rest), className: cn("tamga-empty-plain", className), children: [icon ? (_jsx("span", { "aria-hidden": true, className: "tamga-empty-tile", style: tone ? { background: toneOf(tone).bg, color: toneOf(tone).fg } : undefined, children: _jsx(Icon, { icon: icon, size: "xl", weight: "bold" }) })) : null, words, action ? _jsx("div", { className: "mt-2 flex flex-wrap justify-center gap-3", children: action }) : null] }));
|
|
70
70
|
}
|
|
71
71
|
if (layout === "banner") {
|
|
72
|
-
return (_jsxs("div", { className: cn("flex flex-col overflow-hidden", className), children: [_jsxs("div", { className: "flex flex-1 flex-col sm:flex-row sm:items-stretch", children: [_jsx("div", { className: "tamga-art-well tamga-art-stage tamga-art-floor sm:border-b-0", children: figure }), _jsxs("div", { className: "flex min-w-0 flex-1 flex-col gap-7 px-6 py-7 sm:flex-row sm:items-center sm:justify-between sm:gap-10 sm:px-9 sm:py-9", children: [_jsx("div", { className: "min-w-0", children: words }), action ? (_jsx("div", { className: "flex shrink-0 flex-wrap items-center gap-3", children: action })) : null] })] }), steps?.length ? (_jsx("ol", { className: "tamga-art-steps tamga-art-well", children: steps.map((step, i) => (_jsxs("li", { className: "tamga-art-step", children: [_jsx("span", { className: "tamga-art-step-n", children: String(i + 1).padStart(2, "0") }), _jsx("span", { className: "text-small leading-relaxed text-ink-soft", children: step })] }, step))) })) : null] }));
|
|
72
|
+
return (_jsxs("div", { ...dataProps(rest), className: cn("flex flex-col overflow-hidden", className), children: [_jsxs("div", { className: "flex flex-1 flex-col sm:flex-row sm:items-stretch", children: [_jsx("div", { className: "tamga-art-well tamga-art-stage tamga-art-floor sm:border-b-0", children: figure }), _jsxs("div", { className: "flex min-w-0 flex-1 flex-col gap-7 px-6 py-7 sm:flex-row sm:items-center sm:justify-between sm:gap-10 sm:px-9 sm:py-9", children: [_jsx("div", { className: "min-w-0", children: words }), action ? (_jsx("div", { className: "flex shrink-0 flex-wrap items-center gap-3", children: action })) : null] })] }), steps?.length ? (_jsx("ol", { className: "tamga-art-steps tamga-art-well", children: steps.map((step, i) => (_jsxs("li", { className: "tamga-art-step", children: [_jsx("span", { className: "tamga-art-step-n", children: String(i + 1).padStart(2, "0") }), _jsx("span", { className: "text-small leading-relaxed text-ink-soft", children: step })] }, step))) })) : null] }));
|
|
73
73
|
}
|
|
74
74
|
if (layout === "ticket") {
|
|
75
|
-
return (_jsx("div", { className: cn("flex justify-center px-6 py-10", className), children: _jsxs("div", { className: "tamga-card w-full max-w-90 overflow-hidden", children: [_jsx("div", { className: "tamga-art-well tamga-art-band", children: figure }), _jsx("div", { className: "px-6 pt-6 pb-7 text-center [&_p]:mx-auto", children: words }), _jsx("div", { className: "tamga-art-divider" }), action ? (_jsx("div", { className: "flex flex-col gap-2 p-4 [&>*]:w-full [&>*]:justify-center", children: action })) : null] }) }));
|
|
75
|
+
return (_jsx("div", { ...dataProps(rest), className: cn("flex justify-center px-6 py-10", className), children: _jsxs("div", { className: "tamga-card w-full max-w-90 overflow-hidden", children: [_jsx("div", { className: "tamga-art-well tamga-art-band", children: figure }), _jsx("div", { className: "px-6 pt-6 pb-7 text-center [&_p]:mx-auto", children: words }), _jsx("div", { className: "tamga-art-divider" }), action ? (_jsx("div", { className: "flex flex-col gap-2 p-4 [&>*]:w-full [&>*]:justify-center", children: action })) : null] }) }));
|
|
76
76
|
}
|
|
77
77
|
/* routes — three columns on one line: the figure, the words, the ways in */
|
|
78
|
-
return (_jsxs("div", { className: cn("flex flex-col gap-8 px-6 py-9 sm:flex-row sm:items-center sm:gap-10 sm:px-10 sm:py-10", className), children: [_jsx("div", { className: "flex shrink-0 items-end", children: figure }), _jsxs("div", { className: "min-w-0 flex-1", children: [words, action ? _jsx("div", { className: "mt-6 flex flex-wrap gap-3", children: action }) : null] }), _jsxs("div", { className: "flex w-full shrink-0 flex-col gap-2.5 sm:max-w-76", children: [routesLabel ? _jsx("p", { className: "tamga-kicker mb-0.5", children: routesLabel }) : null, routes?.map((r) => (_jsxs("button", { type: "button", onClick: r.onClick, className: "tamga-art-route", children: [_jsxs("span", { className: "min-w-0 flex-1", children: [_jsx("span", { className: "block text-body font-medium text-ink", children: r.label }), r.note ? _jsx("span", { className: "block text-small text-ink-faint", children: r.note }) : null] }), _jsx(Icon, { icon: CaretRight, size: "sm" })] }, r.label)))] })] }));
|
|
78
|
+
return (_jsxs("div", { ...dataProps(rest), className: cn("flex flex-col gap-8 px-6 py-9 sm:flex-row sm:items-center sm:gap-10 sm:px-10 sm:py-10", className), children: [_jsx("div", { className: "flex shrink-0 items-end", children: figure }), _jsxs("div", { className: "min-w-0 flex-1", children: [words, action ? _jsx("div", { className: "mt-6 flex flex-wrap gap-3", children: action }) : null] }), _jsxs("div", { className: "flex w-full shrink-0 flex-col gap-2.5 sm:max-w-76", children: [routesLabel ? _jsx("p", { className: "tamga-kicker mb-0.5", children: routesLabel }) : null, routes?.map((r) => (_jsxs("button", { type: "button", onClick: r.onClick, className: "tamga-art-route", children: [_jsxs("span", { className: "min-w-0 flex-1", children: [_jsx("span", { className: "block text-body font-medium text-ink", children: r.label }), r.note ? _jsx("span", { className: "block text-small text-ink-faint", children: r.note }) : null] }), _jsx(Icon, { icon: CaretRight, size: "sm" })] }, r.label)))] })] }));
|
|
79
79
|
}
|
|
80
80
|
/**
|
|
81
81
|
* A whole body with nothing in it, and no box drawn around the nothing: no
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"layout.d.ts","sourceRoot":"","sources":["../../src/components/layout.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAItD;;;;GAIG;AAEH;;;;;;GAMG;AACH,wBAAgB,OAAO,CAAC,EACtB,MAAc,EACd,SAAS,EACT,QAAQ,EACR,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,GAAG;IAAE,MAAM,CAAC,EAAE,OAAO,CAAA;CAAE,+BAMpD;AAED;;;;;;GAMG;AACH;;;;GAIG;AACH,wBAAgB,MAAM,CAAC,EACrB,KAAS,EACT,SAAS,EACT,QAAQ,EACR,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,GAAG;IAAE,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,+BAUlD;AAED;;;;;;GAMG;AACH,wBAAgB,IAAI,CAAC,EACnB,OAAO,EACP,CAAC,EACD,CAAC,EACD,SAAS,EACT,GAAG,IAAI,EACR,EAAE;IACD,yFAAyF;IACzF,OAAO,EAAE,GAAG,GAAG,GAAG,CAAC;IACnB,CAAC,EAAE,SAAS,CAAC;IACb,CAAC,EAAE,SAAS,CAAC;IACb,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,mEAAmE;IACnE,CAAC,CAAC,EAAE,QAAQ,MAAM,EAAE,GAAG,OAAO,CAAC;CAChC,+BAWA;AAED;;;;;;GAMG;AACH,wBAAgB,OAAO,CAAC,EACtB,IAAa,EACb,IAAI,EACJ,OAAO,EACP,SAAS,EACT,QAAQ,EACR,GAAG,IAAI,EACR,EAAE;IACD,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,SAAS,CAAC;IACpB,mEAAmE;IACnE,CAAC,CAAC,EAAE,QAAQ,MAAM,EAAE,GAAG,OAAO,CAAC;CAChC,+
|
|
1
|
+
{"version":3,"file":"layout.d.ts","sourceRoot":"","sources":["../../src/components/layout.tsx"],"names":[],"mappings":"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"}
|
|
@@ -54,9 +54,12 @@ export function ListRow({ size = "base", href, onClick, className, children, ...
|
|
|
54
54
|
return (_jsx("a", { ...dataProps(rest), href: href, className: cls, children: children }));
|
|
55
55
|
}
|
|
56
56
|
if (onClick) {
|
|
57
|
-
return (_jsx("button", { type: "button", onClick: onClick, className: cn(cls, "w-full text-left"), children: children }));
|
|
57
|
+
return (_jsx("button", { ...dataProps(rest), type: "button", onClick: onClick, className: cn(cls, "w-full text-left"), children: children }));
|
|
58
58
|
}
|
|
59
|
-
|
|
59
|
+
/* Kanca ÜÇ DALDA DA KÖKTE. Bir süre yalnız `<a>` dalında yayılıyordu; panel
|
|
60
|
+
düğme ve düz satırın etrafına kancayı taşıyan bir `div` sarmak zorunda
|
|
61
|
+
kalmıştı. `check-data-props` artık her `return` dalını sınıyor. */
|
|
62
|
+
return _jsx("div", { ...dataProps(rest), className: cls, children: children });
|
|
60
63
|
}
|
|
61
64
|
/**
|
|
62
65
|
* İçinde bir panel AÇILAN tablo hücresi. Tek işi kırpmayı kapatmak, ve
|
|
@@ -206,7 +206,7 @@ export type DialogSize = keyof typeof DIALOG_GENISLIK;
|
|
|
206
206
|
*
|
|
207
207
|
* Gerekçe: docs/gerekce/07-katman-ve-diyalog.md
|
|
208
208
|
*/
|
|
209
|
-
export declare function ConfirmDialog({ open, onClose, onConfirm, title, children, confirmLabel, cancelLabel, closeLabel, tone, busy, confirmDisabled, }: {
|
|
209
|
+
export declare function ConfirmDialog({ open, onClose, onConfirm, title, children, confirmLabel, cancelLabel, closeLabel, tone, busy, confirmDisabled, ...rest }: {
|
|
210
210
|
open: boolean;
|
|
211
211
|
onClose: () => void;
|
|
212
212
|
onConfirm: () => void;
|
|
@@ -229,6 +229,8 @@ export declare function ConfirmDialog({ open, onClose, onConfirm, title, childre
|
|
|
229
229
|
* sürerken: iki düğme de kilitleniyor, çift gönderim olmuyor.
|
|
230
230
|
*/
|
|
231
231
|
busy?: boolean;
|
|
232
|
+
/** `data-*` hooks pass through. TR: `data-*` kancaları geçiyor. */
|
|
233
|
+
[k: `data-${string}`]: unknown;
|
|
232
234
|
/**
|
|
233
235
|
* Disables the confirm button: the dialog OPENS but the action cannot be taken. WHY IT IS
|
|
234
236
|
* NEEDED. Some destructive actions have a precondition ("a customer with orders cannot be
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"overlay.d.ts","sourceRoot":"","sources":["../../src/components/overlay.tsx"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"overlay.d.ts","sourceRoot":"","sources":["../../src/components/overlay.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAatC;;;;;GAKG;AAIH,MAAM,MAAM,QAAQ,GAChB;IACE,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACvB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,KAAK,CAAC,EAAE,IAAI,CAAC;IACb,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAC;IACtB;;;;OAIG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB;;;;;OAKG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB,GACD;IAAE,IAAI,EAAE,WAAW,CAAA;CAAE,GACrB;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAAC;AAErC,wBAAgB,YAAY,CAAC,EAC3B,OAAO,EACP,KAAK,EACL,KAAe,EACf,KAAW,EACX,OAAe,EACf,WAAe,EACf,WAAmB,EACnB,WAAmB,EACnB,GAAG,IAAI,EACR,EAAE;IACD,OAAO,EAAE,KAAK,CAAC,SAAS,CAAC;IACzB,KAAK,EAAE,QAAQ,EAAE,CAAC;IAClB,KAAK,CAAC,EAAE,OAAO,GAAG,KAAK,CAAC;IACxB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;;;;;;;;;;;OAYG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB;;;;;;;;OAQG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB;;;OAGG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB;;;;;;;;OAQG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,mEAAmE;IACnE,CAAC,CAAC,EAAE,QAAQ,MAAM,EAAE,GAAG,OAAO,CAAC;CAChC,+BA6FA;AAID,wBAAgB,OAAO,CAAC,EACtB,OAAO,EACP,KAAK,EACL,QAAQ,EACR,MAAM,EACN,KAAW,EACX,KAAe,EACf,OAAe,EACf,YAAY,EACZ,UAAU,EACV,GAAG,IAAI,EACR,EAAE;IACD,OAAO,EAAE,KAAK,CAAC,SAAS,CAAC;IACzB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;;;;;OAMG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,MAAM,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACzB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,OAAO,GAAG,KAAK,CAAC;IACxB;;;OAGG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB;;;OAGG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,mEAAmE;IACnE,CAAC,CAAC,EAAE,QAAQ,MAAM,EAAE,GAAG,OAAO,CAAC;CAChC,+BA4CA;AAID,QAAA,MAAM,UAAU;aACd,GAAG,EAAE,yDAAyD;aAC9D,MAAM,EAAE,sDAAsD;aAC9D,IAAI,EAAE,uDAAuD;aAC7D,KAAK,EAAE,sDAAsD;CACrD,CAAC;AAwBX;;;;;;GAMG;AACH,wBAAgB,OAAO,CAAC,EACtB,KAAK,EACL,SAAoB,EACpB,KAAW,EACX,IAAW,EACX,QAAQ,EACR,GAAG,IAAI,EACR,EAAE;IACD,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE,MAAM,OAAO,UAAU,CAAC;IACpC;;;;;;;OAOG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;;;;;;OAOG;IACH,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,mEAAmE;IACnE,CAAC,CAAC,EAAE,QAAQ,MAAM,EAAE,GAAG,OAAO,CAAC;CAChC,+BA6HA;AAID,MAAM,MAAM,SAAS,GAAG,IAAI,CAAC;AAE7B,wBAAgB,KAAK,CAAC,EACpB,IAAgB,EAChB,KAAK,EACL,WAAW,EACX,MAAM,EACN,SAAS,EACT,YAAY,EACZ,QAAQ,EACR,GAAG,IAAI,EACR,EAAE;IACD,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACzB,SAAS,CAAC,EAAE,MAAM,IAAI,CAAC;IACvB;;;OAGG;IACH,YAAY,EAAE,MAAM,CAAC;IACrB;;;;;;;;OAQG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,mEAAmE;IACnE,CAAC,CAAC,EAAE,QAAQ,MAAM,EAAE,GAAG,OAAO,CAAC;CAChC,+BA8EA;AAED;;;GAGG;AACH,QAAA,MAAM,OAAO;aACX,WAAW,EAAE,yBAAyB;aACtC,UAAU,EAAE,0BAA0B;aACtC,cAAc,EAAE,4BAA4B;aAC5C,aAAa,EAAE,6BAA6B;CACpC,CAAC;AAEX,wBAAgB,aAAa,CAAC,EAC5B,QAAsB,EACtB,QAAQ,EACR,GAAG,IAAI,EACR,EAAE;IACD,QAAQ,CAAC,EAAE,MAAM,OAAO,OAAO,CAAC;IAChC,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,mEAAmE;IACnE,CAAC,CAAC,EAAE,QAAQ,MAAM,EAAE,GAAG,OAAO,CAAC;CAChC,+BAQA;AAID;;;;;;GAMG;AACH,QAAA,MAAM,eAAe;aACnB,EAAE,EAAE,UAAU;aACd,EAAE,EAAE,WAAW;aACf,IAAI,EAAE,uBAAuB;aAC7B,IAAI,EAAE,YAAY;CACV,CAAC;AAEX,MAAM,MAAM,UAAU,GAAG,MAAM,OAAO,eAAe,CAAC;AAwEtD;;;;;;GAMG;AACH,wBAAgB,aAAa,CAAC,EAC5B,IAAI,EACJ,OAAO,EACP,SAAS,EACT,KAAK,EACL,QAAQ,EACR,YAAY,EACZ,WAAW,EACX,UAAU,EACV,IAAe,EACf,IAAY,EACZ,eAAuB,EACvB,GAAG,IAAI,EACR,EAAE;IACD,IAAI,EAAE,OAAO,CAAC;IACd,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,SAAS,EAAE,MAAM,IAAI,CAAC;IACtB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B;;;OAGG;IACH,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB;;;OAGG;IACH,IAAI,CAAC,EAAE,QAAQ,GAAG,SAAS,CAAC;IAC5B;;;OAGG;IACH,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,mEAAmE;IACnE,CAAC,CAAC,EAAE,QAAQ,MAAM,EAAE,GAAG,OAAO,CAAC;IAC/B;;;;;;;;;;;;OAYG;IACH,eAAe,CAAC,EAAE,OAAO,CAAC;CAC3B,+BAwBA;AAED,wBAAgB,MAAM,CAAC,EACrB,IAAI,EACJ,OAAO,EACP,KAAK,EACL,QAAQ,EACR,MAAM,EACN,OAAe,EACf,UAAU,EACV,IAAW,EACX,GAAG,IAAI,EACR,EAAE;IACD,IAAI,EAAE,OAAO,CAAC;IACd,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,MAAM,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACzB;;;OAGG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB;;;OAGG;IACH,UAAU,EAAE,MAAM,CAAC;IACnB;;;;;OAKG;IACH,IAAI,CAAC,EAAE,UAAU,CAAC;IAClB,mEAAmE;IACnE,CAAC,CAAC,EAAE,QAAQ,MAAM,EAAE,GAAG,OAAO,CAAC;CAChC,+BAuBA"}
|
|
@@ -270,7 +270,7 @@ const DIALOG_GENISLIK = {
|
|
|
270
270
|
* Kipli kabuk. Hook'lar erken bir `return`un arkasında çalışamaz, bu yüzden
|
|
271
271
|
* tuzak burada duruyor ve alttaki yüzey düz bir bileşen kalıyor.
|
|
272
272
|
*/
|
|
273
|
-
function DialogShell({ open, onClose, loading, label, size = "md", children, }) {
|
|
273
|
+
function DialogShell({ open, onClose, loading, label, size = "md", children, ...rest }) {
|
|
274
274
|
const panel = useFocusTrap(open);
|
|
275
275
|
/* Aynı kaçak `Dialog`da da vardı: odak hapsediliyor ama arkadaki sayfa
|
|
276
276
|
kayıyordu. Kullanıcı etkileşemediği bir şeyi kaydırabiliyordu. */
|
|
@@ -288,7 +288,7 @@ function DialogShell({ open, onClose, loading, label, size = "md", children, })
|
|
|
288
288
|
pikseldir. Panel de yüzeyi kaplıyor ve dikey bir akış oluyor, ki gövde
|
|
289
289
|
kendi içinde kaysın ve başlık ile ayak yerinde kalsın. */
|
|
290
290
|
const tam = size === "full";
|
|
291
|
-
return (_jsxs("div", { className: cn("fixed inset-0 z-50 flex items-center justify-center", tam ? "p-0" : "p-6"), role: "dialog", "aria-modal": true, "aria-label": label, children: [_jsx("div", { className: "tamga-scrim tamga-scrim-in absolute inset-0", "aria-hidden": true, onClick: onClose }), _jsx("div", { ref: panel,
|
|
291
|
+
return (_jsxs("div", { ...dataProps(rest), className: cn("fixed inset-0 z-50 flex items-center justify-center", tam ? "p-0" : "p-6"), role: "dialog", "aria-modal": true, "aria-label": label, children: [_jsx("div", { className: "tamga-scrim tamga-scrim-in absolute inset-0", "aria-hidden": true, onClick: onClose }), _jsx("div", { ref: panel,
|
|
292
292
|
/* PANEL EKRANDAN TAŞAMAZ: `max-h-full` + `flex-col` + `overflow-hidden`.
|
|
293
293
|
Yoksa uzun içerik ortalanıp başlıkla kapatma düğmesini kırpıyor.
|
|
294
294
|
Gerekçe: docs/gerekce/07-katman-ve-diyalog.md */
|
|
@@ -301,9 +301,9 @@ function DialogShell({ open, onClose, loading, label, size = "md", children, })
|
|
|
301
301
|
*
|
|
302
302
|
* Gerekçe: docs/gerekce/07-katman-ve-diyalog.md
|
|
303
303
|
*/
|
|
304
|
-
export function ConfirmDialog({ open, onClose, onConfirm, title, children, confirmLabel, cancelLabel, closeLabel, tone = "danger", busy = false, confirmDisabled = false, }) {
|
|
305
|
-
return (_jsx(Dialog, { open: open, onClose: onClose, title: title, closeLabel: closeLabel, footer: _jsxs(_Fragment, { children: [_jsx(Button, { type: "button", onClick: onClose, disabled: busy, "data-autofocus": true, children: cancelLabel }), _jsx(Button, { variant: tone, onClick: onConfirm, disabled: busy || confirmDisabled, children: confirmLabel })] }), children: children }));
|
|
304
|
+
export function ConfirmDialog({ open, onClose, onConfirm, title, children, confirmLabel, cancelLabel, closeLabel, tone = "danger", busy = false, confirmDisabled = false, ...rest }) {
|
|
305
|
+
return (_jsx(Dialog, { ...dataProps(rest), open: open, onClose: onClose, title: title, closeLabel: closeLabel, footer: _jsxs(_Fragment, { children: [_jsx(Button, { type: "button", onClick: onClose, disabled: busy, "data-autofocus": true, children: cancelLabel }), _jsx(Button, { variant: tone, onClick: onConfirm, disabled: busy || confirmDisabled, children: confirmLabel })] }), children: children }));
|
|
306
306
|
}
|
|
307
307
|
export function Dialog({ open, onClose, title, children, footer, loading = false, closeLabel, size = "md", ...rest }) {
|
|
308
|
-
return (_jsxs(DialogShell, { open: open, onClose: onClose, loading: loading, label: title, size: size, children: [_jsxs("div", {
|
|
308
|
+
return (_jsxs(DialogShell, { ...dataProps(rest), open: open, onClose: onClose, loading: loading, label: title, size: size, children: [_jsxs("div", { className: "tamga-head tamga-gutter tamga-section shrink-0", children: [_jsx("h3", { className: "text-subhead font-semibold", children: title }), _jsx(MiniButton, { onClick: onClose, "aria-label": closeLabel, className: "ml-auto", children: _jsx(Icon, { icon: Close, size: "xs" }) })] }), _jsx("div", { className: "tamga-gutter min-h-0 flex-1 overflow-y-auto py-6 text-body leading-relaxed", children: loading ? _jsx(SkeletonPanel, { lines: 4 }) : children }), footer ? (_jsx("div", { className: "tamga-gutter flex shrink-0 justify-end gap-2 border-t border-line py-4", children: footer })) : null] }));
|
|
309
309
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"square-picker.d.ts","sourceRoot":"","sources":["../../src/components/square-picker.tsx"],"names":[],"mappings":"AAUA;;;;;;GAMG;AACH,wBAAgB,YAAY,CAAC,EAC3B,IAAI,EACJ,MAAM,EACN,OAAO,EACP,MAAM,EACN,OAAa,EACb,MAAM,EACN,GAAG,IAAI,EACR,EAAE;IACD,IAAI,EAAE,OAAO,CAAC;IACd,0EAA0E;IAC1E,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,MAAM,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IACjC,mFAAmF;IACnF,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE;QACN,KAAK,EAAE,MAAM,CAAC;QACd,IAAI,EAAE,MAAM,CAAC;QACb,IAAI,EAAE,MAAM,CAAC;QACb,MAAM,EAAE,MAAM,CAAC;QACf,OAAO,EAAE,MAAM,CAAC;QAChB,KAAK,EAAE,MAAM,CAAC;KACf,CAAC;IACF,mEAAmE;IACnE,CAAC,CAAC,EAAE,QAAQ,MAAM,EAAE,GAAG,OAAO,CAAC;CAChC,+
|
|
1
|
+
{"version":3,"file":"square-picker.d.ts","sourceRoot":"","sources":["../../src/components/square-picker.tsx"],"names":[],"mappings":"AAUA;;;;;;GAMG;AACH,wBAAgB,YAAY,CAAC,EAC3B,IAAI,EACJ,MAAM,EACN,OAAO,EACP,MAAM,EACN,OAAa,EACb,MAAM,EACN,GAAG,IAAI,EACR,EAAE;IACD,IAAI,EAAE,OAAO,CAAC;IACd,0EAA0E;IAC1E,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,MAAM,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IACjC,mFAAmF;IACnF,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE;QACN,KAAK,EAAE,MAAM,CAAC;QACd,IAAI,EAAE,MAAM,CAAC;QACb,IAAI,EAAE,MAAM,CAAC;QACb,MAAM,EAAE,MAAM,CAAC;QACf,OAAO,EAAE,MAAM,CAAC;QAChB,KAAK,EAAE,MAAM,CAAC;KACf,CAAC;IACF,mEAAmE;IACnE,CAAC,CAAC,EAAE,QAAQ,MAAM,EAAE,GAAG,OAAO,CAAC;CAChC,+BAoHA"}
|
|
@@ -60,7 +60,7 @@ export function SquarePicker({ open, source, onClose, onPick, maxEdge = 256, lab
|
|
|
60
60
|
onPick(await cropSquare(source, { x, y, size: oran }, maxEdge));
|
|
61
61
|
onClose();
|
|
62
62
|
}
|
|
63
|
-
return (_jsx(Dialog, { open: open, onClose: onClose, title: labels.title, closeLabel: labels.close, footer: _jsxs(_Fragment, { children: [_jsx(Button, { type: "button", onClick: onClose, children: labels.cancel }), _jsx(Button, { variant: "primary", type: "button", onClick: onayla, children: labels.confirm })] }), children: _jsxs("div", {
|
|
63
|
+
return (_jsx(Dialog, { ...dataProps(rest), open: open, onClose: onClose, title: labels.title, closeLabel: labels.close, footer: _jsxs(_Fragment, { children: [_jsx(Button, { type: "button", onClick: onClose, children: labels.cancel }), _jsx(Button, { variant: "primary", type: "button", onClick: onayla, children: labels.confirm })] }), children: _jsxs("div", { className: "flex flex-col gap-4", children: [_jsx(Label, { children: labels.hint }), _jsx("div", { className: "rounded-[var(--radius-card)] border border-[var(--color-edge)] bg-[var(--color-shell)] p-4", children: _jsxs("div", { ref: sahne, onPointerDown: (e) => {
|
|
64
64
|
setSuruyor(true);
|
|
65
65
|
e.currentTarget.setPointerCapture(e.pointerId);
|
|
66
66
|
}, onPointerMove: tasi, onPointerUp: () => setSuruyor(false), className: "relative cursor-crosshair touch-none select-none overflow-hidden", children: [_jsx("img", { src: source, alt: "", className: "pointer-events-none block w-full", draggable: false }), _jsx("span", { "aria-hidden": true, className: "pointer-events-none absolute border-2 border-[var(--color-accent-line)]", style: {
|
|
@@ -18,7 +18,7 @@ export function StackedBarChart({ series, labels, height = 260, formatValue = St
|
|
|
18
18
|
/* Dört ızgara çizgisi: daha fazlası okumayı kolaylaştırmıyor, zemini
|
|
19
19
|
kirletiyor. */
|
|
20
20
|
const cizgiler = [0, 0.25, 0.5, 0.75, 1].map((o) => enBuyuk * o);
|
|
21
|
-
return (_jsxs("figure", { className: cn("flex flex-col", className), children: [_jsxs("div", {
|
|
21
|
+
return (_jsxs("figure", { ...dataProps(rest), className: cn("flex flex-col", className), children: [_jsxs("div", { className: "flex gap-3", style: { height }, children: [_jsx("div", { className: "flex shrink-0 flex-col justify-between py-1 text-right text-micro tabular-nums text-ink-faint", children: [...cizgiler].reverse().map((v) => (_jsx("span", { children: formatValue(v) }, v))) }), _jsxs("div", { className: "relative min-w-0 flex-1", onMouseLeave: () => setUzerinde(null), children: [cizgiler.map((v, i) => (_jsx("span", { "aria-hidden": true, className: "absolute inset-x-0 h-px bg-[var(--color-line)]", style: { bottom: `${(i / (cizgiler.length - 1)) * 100}%` } }, v))), _jsx("div", { className: "absolute inset-0 flex items-end gap-1", children: labels.map((etiket, i) => {
|
|
22
22
|
const toplam = toplamlar[i] ?? 0;
|
|
23
23
|
const secili = uzerinde === i;
|
|
24
24
|
return (_jsxs("div", { className: "flex h-full min-w-0 flex-1 cursor-default flex-col justify-end", onMouseEnter: () => setUzerinde(i), children: [[...series].reverse().map((s, ri) => {
|
package/dist/components/tabs.js
CHANGED
|
@@ -39,7 +39,7 @@ export function Tabs({ items, value, onChange, label, look = "line", scroll = fa
|
|
|
39
39
|
if (bagliMi) {
|
|
40
40
|
return (_jsx("nav", { ...dataProps(rest), "aria-label": label, className: kap, children: items.map(({ value: v, label: etiket, icon, href, disabled, count, ...rest }) => disabled ? (_jsx("span", { ...rest, "aria-disabled": "true", className: sekmeSinifi, "data-disabled": "true", children: govde(etiket, icon, count) }, v)) : (_jsx(A, { ...rest, href: href, className: sekmeSinifi, "data-active": value === v, "aria-current": value === v ? "page" : undefined, children: govde(etiket, icon, count) }, v))) }));
|
|
41
41
|
}
|
|
42
|
-
return (_jsx("div", { role: "tablist", "aria-label": label, className: kap, onKeyDown: oklar, children: items.map(({ value: v, label: etiket, icon, href: _href, disabled, count, ...rest }) => (_jsx("button", { ...rest, type: "button", role: "tab", "data-tab": v, "aria-selected": value === v,
|
|
42
|
+
return (_jsx("div", { ...dataProps(rest), role: "tablist", "aria-label": label, className: kap, onKeyDown: oklar, children: items.map(({ value: v, label: etiket, icon, href: _href, disabled, count, ...rest }) => (_jsx("button", { ...rest, type: "button", role: "tab", "data-tab": v, "aria-selected": value === v,
|
|
43
43
|
/* Şeritte TEK durak var: seçili sekme. Öteki sekmelere oklarla
|
|
44
44
|
gidiliyor, Tab tuşu şeridi bir bütün olarak geçiyor. */
|
|
45
45
|
tabIndex: value === v ? 0 : -1, disabled: disabled, className: sekmeSinifi, "data-active": value === v, "data-disabled": disabled || undefined, onClick: () => onChange?.(v), children: govde(etiket, icon, count) }, v))) }));
|
|
@@ -54,7 +54,7 @@ export function TreeSelect({ nodes, value, onChange, labels, searchable = true,
|
|
|
54
54
|
const secilenAlt = altlar.filter((id) => secili.has(id)).length;
|
|
55
55
|
const isaretli = altlar.length > 0 ? secilenAlt === altlar.length : secili.has(node.id);
|
|
56
56
|
const kismi = altlar.length > 0 && secilenAlt > 0 && secilenAlt < altlar.length;
|
|
57
|
-
return (_jsxs("li", {
|
|
57
|
+
return (_jsxs("li", { role: "none", children: [_jsxs("div", { className: "flex items-center gap-1.5 rounded-(--radius-mark) py-1 hover:bg-[var(--color-hover)]", style: { paddingLeft: `${derinlik * 20}px` }, children: [cocuklar.length > 0 ? (_jsx("button", { type: "button", className: "tamga-mini-btn size-5 shrink-0", "aria-label": acik ? labels.collapse : labels.expand, "aria-expanded": acik, onClick: () => {
|
|
58
58
|
const next = new Set(kapali);
|
|
59
59
|
if (acik)
|
|
60
60
|
next.add(node.id);
|
|
@@ -63,5 +63,5 @@ export function TreeSelect({ nodes, value, onChange, labels, searchable = true,
|
|
|
63
63
|
setKapali(next);
|
|
64
64
|
}, children: _jsx(Icon, { icon: acik ? CaretDown : CaretRight, size: "xs" }) })) : (_jsx("span", { className: "size-5 shrink-0", "aria-hidden": true })), _jsx(Checkbox, { className: "min-w-0 flex-1", checked: isaretli, indeterminate: kismi, onChange: (v) => cevir(node, v), label: _jsx("span", { className: cn("truncate", isaretli || kismi ? "text-ink" : "text-ink-soft"), children: node.label }) })] }), acik && cocuklar.length > 0 && (_jsx("ul", { role: "group", children: cocuklar.map((c) => (_jsx(Dal, { node: c, derinlik: derinlik + 1 }, c.id))) }))] }));
|
|
65
65
|
}
|
|
66
|
-
return (_jsxs("div", { className: cn("flex flex-col gap-2", className), children: [searchable && (_jsxs("span", { className: "relative flex items-center", children: [_jsx(Icon, { icon: Search, size: "xs", "aria-hidden": true, className: "pointer-events-none absolute left-2.5 text-ink-faint" }), _jsx("input", { type: "search", className: "tamga-input w-full", "data-leading": "true", placeholder: labels.search, value: q, onChange: (e) => setQ(e.target.value) })] })), _jsx("div", { className: "overflow-y-auto p-1", style: { maxHeight: height }, children: gorunen.length === 0 ? (_jsx("p", { className: "py-6 text-center text-ink-faint", children: labels.empty })) : (_jsx("ul", { role: "tree", className: "flex flex-col", children: gorunen.map((n) => (_jsx(Dal, { node: n, derinlik: 0 }, n.id))) })) })] }));
|
|
66
|
+
return (_jsxs("div", { ...dataProps(rest), className: cn("flex flex-col gap-2", className), children: [searchable && (_jsxs("span", { className: "relative flex items-center", children: [_jsx(Icon, { icon: Search, size: "xs", "aria-hidden": true, className: "pointer-events-none absolute left-2.5 text-ink-faint" }), _jsx("input", { type: "search", className: "tamga-input w-full", "data-leading": "true", placeholder: labels.search, value: q, onChange: (e) => setQ(e.target.value) })] })), _jsx("div", { className: "overflow-y-auto p-1", style: { maxHeight: height }, children: gorunen.length === 0 ? (_jsx("p", { className: "py-6 text-center text-ink-faint", children: labels.empty })) : (_jsx("ul", { role: "tree", className: "flex flex-col", children: gorunen.map((n) => (_jsx(Dal, { node: n, derinlik: 0 }, n.id))) })) })] }));
|
|
67
67
|
}
|
package/dist/fonts.css
CHANGED
package/dist/kit.css
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! tamga-ui 0.5.
|
|
1
|
+
/*! tamga-ui 0.5.9 · MIT · https://tamga.org.tr */
|
|
2
2
|
:root {
|
|
3
3
|
|
|
4
4
|
--overlay-gap: 8px;
|
|
@@ -387,7 +387,7 @@
|
|
|
387
387
|
cursor: pointer;
|
|
388
388
|
height: 40px;
|
|
389
389
|
|
|
390
|
-
width:
|
|
390
|
+
width: 40px;
|
|
391
391
|
flex-shrink: 0;
|
|
392
392
|
align-items: center;
|
|
393
393
|
justify-content: center;
|
|
@@ -2063,7 +2063,9 @@
|
|
|
2063
2063
|
.tamga-segment {
|
|
2064
2064
|
display: inline-flex;
|
|
2065
2065
|
|
|
2066
|
-
|
|
2066
|
+
flex-wrap: wrap;
|
|
2067
|
+
|
|
2068
|
+
min-height: var(--control);
|
|
2067
2069
|
align-items: stretch;
|
|
2068
2070
|
gap: 3px;
|
|
2069
2071
|
padding: 3px;
|
|
@@ -2079,6 +2081,7 @@
|
|
|
2079
2081
|
align-items: center;
|
|
2080
2082
|
|
|
2081
2083
|
padding: 0 14px;
|
|
2084
|
+
min-height: calc(var(--control) - 8px);
|
|
2082
2085
|
|
|
2083
2086
|
gap: 6px;
|
|
2084
2087
|
|
|
@@ -2120,7 +2123,7 @@
|
|
|
2120
2123
|
justify-content: center;
|
|
2121
2124
|
}
|
|
2122
2125
|
|
|
2123
|
-
.tamga-segment > button:not(:disabled):hover {
|
|
2126
|
+
.tamga-segment > button:not(:disabled):not([data-active="true"]):hover {
|
|
2124
2127
|
background: var(--color-nav-hover-bg);
|
|
2125
2128
|
color: var(--color-nav-hover);
|
|
2126
2129
|
}
|
|
@@ -2132,13 +2135,6 @@
|
|
|
2132
2135
|
box-shadow: 2px 2px 0 var(--color-edge);
|
|
2133
2136
|
transform: translate(-1px, -1px);
|
|
2134
2137
|
}
|
|
2135
|
-
.tamga-segment > button[data-active="true"]:hover {
|
|
2136
|
-
background: var(--color-shell);
|
|
2137
|
-
color: var(--color-ink);
|
|
2138
|
-
border-color: var(--color-edge);
|
|
2139
|
-
transform: translate(-1px, -1px);
|
|
2140
|
-
box-shadow: 3px 3px 0 var(--color-edge);
|
|
2141
|
-
}
|
|
2142
2138
|
|
|
2143
2139
|
.tamga-segment > button[data-active="true"]:active {
|
|
2144
2140
|
transform: translate(1px, 1px);
|
|
@@ -2377,7 +2373,7 @@
|
|
|
2377
2373
|
}
|
|
2378
2374
|
|
|
2379
2375
|
:where(button, label):hover
|
|
2380
|
-
:is(.tamga-check, .tamga-radio):not([data-off]):not(.tamga-check-sm) {
|
|
2376
|
+
:is(.tamga-check, .tamga-radio):not([data-off]):not(.tamga-check-sm):not([data-checked="true"]) {
|
|
2381
2377
|
border-color: var(--color-accent-line);
|
|
2382
2378
|
transform: translate(-1px, -1px);
|
|
2383
2379
|
box-shadow: 3px 3px 0 var(--color-accent-line);
|
|
@@ -26,7 +26,16 @@ export type ListTemplateProps = {
|
|
|
26
26
|
labels: {
|
|
27
27
|
loading: string;
|
|
28
28
|
} & ErrorLabels;
|
|
29
|
+
/**
|
|
30
|
+
* The strip at the foot of the list surface: the pagination, a total, a bulk action. It sits
|
|
31
|
+
* INSIDE the card, divided by a line and given its own padding, because the rows are flush with
|
|
32
|
+
* the card's edge and anything following them lands on that edge.
|
|
33
|
+
* TR: Liste yüzeyinin dibindeki şerit: sayfalama, bir toplam, toplu bir eylem. Kartın İÇİNDE,
|
|
34
|
+
* bir çizgiyle ayrılmış ve kendi dolgusuyla duruyor · satırlar kartın kenarına dayalı olduğu
|
|
35
|
+
* için ardından gelen her şey o kenara yapışıyor.
|
|
36
|
+
*/
|
|
37
|
+
footer?: ReactNode;
|
|
29
38
|
children?: ReactNode;
|
|
30
39
|
};
|
|
31
|
-
export declare function ListTemplate({ title, subtitle, actions, filters, state, loadingRows, loadingColumns, empty, error, labels, children, }: ListTemplateProps): import("react").JSX.Element;
|
|
40
|
+
export declare function ListTemplate({ title, subtitle, actions, filters, state, loadingRows, loadingColumns, empty, error, labels, footer, children, }: ListTemplateProps): import("react").JSX.Element;
|
|
32
41
|
//# sourceMappingURL=list-template.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"list-template.d.ts","sourceRoot":"","sources":["../../src/patterns/list-template.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAGvC,OAAO,EAAmB,KAAK,WAAW,EAAE,KAAK,aAAa,EAAE,MAAM,aAAa,CAAC;AAEpF;;;;;GAKG;AAEH,MAAM,MAAM,SAAS,GAAG,OAAO,GAAG,SAAS,GAAG,OAAO,GAAG,OAAO,CAAC;AAEhE,MAAM,MAAM,iBAAiB,GAAG;IAC9B,KAAK,EAAE,MAAM,CAAC;IACd,wLAAwL;IACxL,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,iHAAiH;IACjH,OAAO,CAAC,EAAE,SAAS,CAAC;IACpB,wKAAwK;IACxK,OAAO,CAAC,EAAE,SAAS,CAAC;IAEpB,KAAK,CAAC,EAAE,SAAS,CAAC;IAElB,8JAA8J;IAC9J,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,uKAAuK;IACvK,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;IAE1B,gKAAgK;IAChK,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,KAAK,CAAC,EAAE,aAAa,CAAC;IAEtB,MAAM,EAAE;QAAE,OAAO,EAAE,MAAM,CAAA;KAAE,GAAG,WAAW,CAAC;IAE1C,QAAQ,CAAC,EAAE,SAAS,CAAC;CACtB,CAAC;AAEF,wBAAgB,YAAY,CAAC,EAC3B,KAAK,EACL,QAAQ,EACR,OAAO,EACP,OAAO,EACP,KAAe,EACf,WAAgB,EAChB,cAAc,EACd,KAAK,EACL,KAAK,EACL,MAAM,EACN,QAAQ,GACT,EAAE,iBAAiB,+
|
|
1
|
+
{"version":3,"file":"list-template.d.ts","sourceRoot":"","sources":["../../src/patterns/list-template.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAGvC,OAAO,EAAmB,KAAK,WAAW,EAAE,KAAK,aAAa,EAAE,MAAM,aAAa,CAAC;AAEpF;;;;;GAKG;AAEH,MAAM,MAAM,SAAS,GAAG,OAAO,GAAG,SAAS,GAAG,OAAO,GAAG,OAAO,CAAC;AAEhE,MAAM,MAAM,iBAAiB,GAAG;IAC9B,KAAK,EAAE,MAAM,CAAC;IACd,wLAAwL;IACxL,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,iHAAiH;IACjH,OAAO,CAAC,EAAE,SAAS,CAAC;IACpB,wKAAwK;IACxK,OAAO,CAAC,EAAE,SAAS,CAAC;IAEpB,KAAK,CAAC,EAAE,SAAS,CAAC;IAElB,8JAA8J;IAC9J,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,uKAAuK;IACvK,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;IAE1B,gKAAgK;IAChK,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,KAAK,CAAC,EAAE,aAAa,CAAC;IAEtB,MAAM,EAAE;QAAE,OAAO,EAAE,MAAM,CAAA;KAAE,GAAG,WAAW,CAAC;IAE1C;;;;;;;OAOG;IACH,MAAM,CAAC,EAAE,SAAS,CAAC;IACnB,QAAQ,CAAC,EAAE,SAAS,CAAC;CACtB,CAAC;AAEF,wBAAgB,YAAY,CAAC,EAC3B,KAAK,EACL,QAAQ,EACR,OAAO,EACP,OAAO,EACP,KAAe,EACf,WAAgB,EAChB,cAAc,EACd,KAAK,EACL,KAAK,EACL,MAAM,EACN,MAAM,EACN,QAAQ,GACT,EAAE,iBAAiB,+BA6CnB"}
|
|
@@ -3,6 +3,6 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
|
3
3
|
import { PageBand } from "../components/layout.js";
|
|
4
4
|
import { SkeletonTable } from "../components/skeleton.js";
|
|
5
5
|
import { Busy, ErrorSlot } from "./shared.js";
|
|
6
|
-
export function ListTemplate({ title, subtitle, actions, filters, state = "ready", loadingRows = 25, loadingColumns, empty, error, labels, children, }) {
|
|
7
|
-
return (_jsxs("div", { className: "flex min-h-0 flex-col", "data-list-state": state, children: [_jsx("div", { className: "tamga-gutter py-4", children: _jsx(PageBand, { title: title, subtitle: subtitle, actions: actions }) }), filters ? (_jsx("div", { className: "tamga-
|
|
6
|
+
export function ListTemplate({ title, subtitle, actions, filters, state = "ready", loadingRows = 25, loadingColumns, empty, error, labels, footer, children, }) {
|
|
7
|
+
return (_jsxs("div", { className: "flex min-h-0 flex-col", "data-list-state": state, children: [_jsx("div", { className: "tamga-gutter py-4", children: _jsx(PageBand, { title: title, subtitle: subtitle, actions: actions }) }), filters ? (_jsx("div", { className: "tamga-gutter pb-4", children: _jsx("div", { className: "tamga-card tamga-card-open flex flex-wrap items-center gap-2 p-4", "data-filters": true, children: filters }) })) : null, _jsx("div", { className: "tamga-gutter min-h-0 flex-1 pb-6", children: _jsxs("div", { className: "tamga-card tamga-card-open", children: [state === "loading" ? (_jsx(Busy, { label: labels.loading, children: _jsx(SkeletonTable, { rows: loadingRows, ...(loadingColumns ? { cols: loadingColumns } : {}) }) })) : null, state === "error" ? _jsx(ErrorSlot, { error: error, labels: labels }) : null, state === "empty" ? empty : null, state === "ready" ? children : null, footer && state === "ready" ? (_jsx("div", { className: "border-t border-line px-4 py-3", children: footer })) : null] }) })] }));
|
|
8
8
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"settings-template.d.ts","sourceRoot":"","sources":["../../src/patterns/settings-template.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAEvC,OAAO,EAIL,KAAK,WAAW,EAChB,KAAK,aAAa,EAClB,KAAK,aAAa,EACnB,MAAM,aAAa,CAAC;AAErB;;;;;GAKG;AAEH,MAAM,MAAM,aAAa,GAAG,OAAO,GAAG,SAAS,GAAG,OAAO,CAAC;AAE1D,kCAAkC;AAClC,MAAM,MAAM,aAAa,GAAG,UAAU,GAAG,WAAW,GAAG,OAAO,CAAC;AAE/D,MAAM,MAAM,eAAe,GAAG;IAC5B,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,aAAa,CAAC;CACtB,CAAC;AAEF,MAAM,MAAM,qBAAqB,GAAG;IAClC,QAAQ,EAAE,SAAS,eAAe,EAAE,CAAC;IACrC,6EAA6E;IAC7E,aAAa,EAAE,MAAM,CAAC;IACtB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,gHAAgH;IAChH,OAAO,CAAC,EAAE,SAAS,CAAC;IACpB,KAAK,CAAC,EAAE,aAAa,CAAC;IACtB,KAAK,CAAC,EAAE,aAAa,CAAC;IACtB,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B,MAAM,EAAE;QACN,OAAO,EAAE,MAAM,CAAC;QAChB,QAAQ,EAAE,MAAM,CAAC;QACjB,KAAK,EAAE,MAAM,CAAC,aAAa,EAAE,MAAM,CAAC,CAAC;KACtC,GAAG,WAAW,CAAC;IAChB,QAAQ,CAAC,EAAE,SAAS,CAAC;CACtB,CAAC;AAEF,wBAAgB,gBAAgB,CAAC,EAC/B,QAAQ,EACR,aAAa,EACb,KAAK,EACL,QAAQ,EACR,OAAO,EACP,KAAe,EACf,KAAK,EACL,aAAa,EAAE,IAAgB,EAC/B,MAAM,EACN,QAAQ,GACT,EAAE,qBAAqB,+
|
|
1
|
+
{"version":3,"file":"settings-template.d.ts","sourceRoot":"","sources":["../../src/patterns/settings-template.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAEvC,OAAO,EAIL,KAAK,WAAW,EAChB,KAAK,aAAa,EAClB,KAAK,aAAa,EACnB,MAAM,aAAa,CAAC;AAErB;;;;;GAKG;AAEH,MAAM,MAAM,aAAa,GAAG,OAAO,GAAG,SAAS,GAAG,OAAO,CAAC;AAE1D,kCAAkC;AAClC,MAAM,MAAM,aAAa,GAAG,UAAU,GAAG,WAAW,GAAG,OAAO,CAAC;AAE/D,MAAM,MAAM,eAAe,GAAG;IAC5B,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,aAAa,CAAC;CACtB,CAAC;AAEF,MAAM,MAAM,qBAAqB,GAAG;IAClC,QAAQ,EAAE,SAAS,eAAe,EAAE,CAAC;IACrC,6EAA6E;IAC7E,aAAa,EAAE,MAAM,CAAC;IACtB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,gHAAgH;IAChH,OAAO,CAAC,EAAE,SAAS,CAAC;IACpB,KAAK,CAAC,EAAE,aAAa,CAAC;IACtB,KAAK,CAAC,EAAE,aAAa,CAAC;IACtB,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B,MAAM,EAAE;QACN,OAAO,EAAE,MAAM,CAAC;QAChB,QAAQ,EAAE,MAAM,CAAC;QACjB,KAAK,EAAE,MAAM,CAAC,aAAa,EAAE,MAAM,CAAC,CAAC;KACtC,GAAG,WAAW,CAAC;IAChB,QAAQ,CAAC,EAAE,SAAS,CAAC;CACtB,CAAC;AAEF,wBAAgB,gBAAgB,CAAC,EAC/B,QAAQ,EACR,aAAa,EACb,KAAK,EACL,QAAQ,EACR,OAAO,EACP,KAAe,EACf,KAAK,EACL,aAAa,EAAE,IAAgB,EAC/B,MAAM,EACN,QAAQ,GACT,EAAE,qBAAqB,+BAyDvB;AA0BD;;;;;GAKG;AACH,wBAAgB,aAAa,CAAC,EAC5B,KAAK,EACL,WAAW,EACX,aAAa,EACb,QAAQ,GACT,EAAE;IACD,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,+JAA+J;IAC/J,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,EAAE,SAAS,CAAC;CACrB,+BA6BA"}
|
|
@@ -6,7 +6,7 @@ export function SettingsTemplate({ sections, activeSection, title, subtitle, act
|
|
|
6
6
|
return (_jsxs("div", { className: "flex min-h-0 flex-1 flex-col gap-6 sm:flex-row", "data-settings-state": state, children: [_jsx("nav", { "aria-label": labels.sections, className: "shrink-0 sm:w-64 sm:border-r sm:border-line", children: _jsx("ul", { className: "flex flex-col py-4", children: sections.map((section) => {
|
|
7
7
|
const current = section.key === activeSection;
|
|
8
8
|
return (_jsx("li", { children: _jsxs(Link, { href: section.href, "data-section": section.key, "data-scope": section.scope, "data-active": current, "aria-current": current ? "page" : undefined, className: "tamga-list-row tamga-list-row-sm flex items-center gap-2", children: [_jsx("span", { className: "min-w-0 flex-1 truncate", children: section.label }), _jsx(ScopeMark, { scope: section.scope, label: labels.scope[section.scope] })] }) }, section.key));
|
|
9
|
-
}) }) }), _jsxs("div", { className: "tamga-gutter min-h-0 flex-1 py-4", children: [_jsxs("div", { className: "flex flex-wrap items-start gap-4", children: [_jsxs("div", { className: "min-w-0", children: [_jsx("h2", { className: "text-title font-semibold text-ink", children: title }), subtitle ? _jsx("p", { className: "text-small text-ink-faint", children: subtitle }) : null] }), actions ? (_jsx("div", { className: "ml-auto flex flex-wrap items-center gap-2", children: actions })) : null] }), _jsxs("div", { className: "mt-6 flex flex-col gap-4", children: [state === "loading" ? (_jsx(Busy, { label: labels.loading, children: _jsx(SkeletonPanel, { lines: 5 }) })) : null, state === "error" ? _jsx(ErrorSlot, { error: error, labels: labels }) : null, state === "ready" ? children : null] })] })] }));
|
|
9
|
+
}) }) }), _jsxs("div", { className: "tamga-gutter min-h-0 min-w-0 flex-1 py-4", children: [_jsxs("div", { className: "flex flex-wrap items-start gap-4", children: [_jsxs("div", { className: "min-w-0", children: [_jsx("h2", { className: "text-title font-semibold text-ink", children: title }), subtitle ? _jsx("p", { className: "text-small text-ink-faint", children: subtitle }) : null] }), actions ? (_jsx("div", { className: "ml-auto flex flex-wrap items-center gap-2", children: actions })) : null] }), _jsxs("div", { className: "mt-6 flex flex-col gap-4", children: [state === "loading" ? (_jsx(Busy, { label: labels.loading, children: _jsx(SkeletonPanel, { lines: 5 }) })) : null, state === "error" ? _jsx(ErrorSlot, { error: error, labels: labels }) : null, state === "ready" ? children : null] })] })] }));
|
|
10
10
|
}
|
|
11
11
|
/**
|
|
12
12
|
* Bu ayar kimin.
|
package/dist/styles.css
CHANGED
package/dist/theme.css
CHANGED