@mesgflow/ui-kit 0.9.0 → 0.11.0
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/fesm2022/mesgflow-ui-kit-badge.mjs +20 -6
- package/fesm2022/mesgflow-ui-kit-badge.mjs.map +1 -1
- package/fesm2022/mesgflow-ui-kit-brand.mjs +6 -0
- package/fesm2022/mesgflow-ui-kit-brand.mjs.map +1 -1
- package/fesm2022/mesgflow-ui-kit-core.mjs +23 -3
- package/fesm2022/mesgflow-ui-kit-core.mjs.map +1 -1
- package/fesm2022/mesgflow-ui-kit-dialog.mjs +26 -5
- package/fesm2022/mesgflow-ui-kit-dialog.mjs.map +1 -1
- package/fesm2022/mesgflow-ui-kit-drawer.mjs +20 -5
- package/fesm2022/mesgflow-ui-kit-drawer.mjs.map +1 -1
- package/fesm2022/mesgflow-ui-kit-i18n-tr.mjs +1 -1
- package/fesm2022/mesgflow-ui-kit-i18n-tr.mjs.map +1 -1
- package/fesm2022/mesgflow-ui-kit-input.mjs +101 -95
- package/fesm2022/mesgflow-ui-kit-input.mjs.map +1 -1
- package/fesm2022/mesgflow-ui-kit-menu.mjs +216 -18
- package/fesm2022/mesgflow-ui-kit-menu.mjs.map +1 -1
- package/fesm2022/mesgflow-ui-kit-popover.mjs +43 -13
- package/fesm2022/mesgflow-ui-kit-popover.mjs.map +1 -1
- package/fesm2022/mesgflow-ui-kit-sidebar.mjs +51 -11
- package/fesm2022/mesgflow-ui-kit-sidebar.mjs.map +1 -1
- package/fesm2022/mesgflow-ui-kit-split-button.mjs +1 -1
- package/fesm2022/mesgflow-ui-kit-split-button.mjs.map +1 -1
- package/fesm2022/mesgflow-ui-kit-table.mjs +48 -42
- package/fesm2022/mesgflow-ui-kit-table.mjs.map +1 -1
- package/package.json +1 -1
- package/tokens.json +1 -1
- package/types/mesgflow-ui-kit-badge.d.ts +9 -3
- package/types/mesgflow-ui-kit-dialog.d.ts +18 -2
- package/types/mesgflow-ui-kit-drawer.d.ts +3 -1
- package/types/mesgflow-ui-kit-input.d.ts +6 -6
- package/types/mesgflow-ui-kit-menu.d.ts +78 -15
- package/types/mesgflow-ui-kit-popover.d.ts +32 -7
- package/types/mesgflow-ui-kit-sidebar.d.ts +35 -2
- package/types/mesgflow-ui-kit-table.d.ts +7 -7
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@mesgflow/ui-kit",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.11.0",
|
|
4
4
|
"description": "Independent Angular component kit (button, select, dialog, table, sidebar, and more) built on a Tailwind v4 design token system. See README.md for setup and prerequisites.",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"author": "Hurdeniz YENER",
|
package/tokens.json
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
{
|
|
2
|
-
"$description": "@mesgflow/ui-kit 0.
|
|
2
|
+
"$description": "@mesgflow/ui-kit 0.10.0 design tokens (W3C DTCG). Generated from projects/ui-kit/styles/tokens/*.css by scripts/export-tokens.mjs — do not edit.",
|
|
3
3
|
"primitives": {
|
|
4
4
|
"color": {
|
|
5
5
|
"primary": {
|
|
@@ -2,13 +2,17 @@ import * as _angular_core from '@angular/core';
|
|
|
2
2
|
import * as class_variance_authority_types from 'class-variance-authority/types';
|
|
3
3
|
import { VariantProps } from 'class-variance-authority';
|
|
4
4
|
|
|
5
|
-
/**
|
|
5
|
+
/**
|
|
6
|
+
* `<span mfBadge tone="success">Aktif</span>` — cümle biçimi için
|
|
7
|
+
* `<span mfBadge tone="warning" casing="sentence">Hazırlanıyor</span>`.
|
|
8
|
+
*/
|
|
6
9
|
declare class Badge {
|
|
7
10
|
readonly tone: _angular_core.InputSignal<"neutral" | "primary" | "success" | "warning" | "danger" | "info" | "help" | null | undefined>;
|
|
8
11
|
readonly size: _angular_core.InputSignal<"sm" | "md" | null | undefined>;
|
|
12
|
+
readonly casing: _angular_core.InputSignal<"eyebrow" | "sentence" | null | undefined>;
|
|
9
13
|
protected readonly classes: _angular_core.Signal<string>;
|
|
10
14
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<Badge, never>;
|
|
11
|
-
static ɵdir: _angular_core.ɵɵDirectiveDeclaration<Badge, "span[mfBadge]", never, { "tone": { "alias": "tone"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
15
|
+
static ɵdir: _angular_core.ɵɵDirectiveDeclaration<Badge, "span[mfBadge]", never, { "tone": { "alias": "tone"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "casing": { "alias": "casing"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
12
16
|
}
|
|
13
17
|
|
|
14
18
|
/**
|
|
@@ -30,10 +34,12 @@ declare class Badge {
|
|
|
30
34
|
*/
|
|
31
35
|
declare const badgeVariants: (props?: ({
|
|
32
36
|
tone?: "neutral" | "primary" | "success" | "warning" | "danger" | "info" | "help" | null | undefined;
|
|
37
|
+
casing?: "eyebrow" | "sentence" | null | undefined;
|
|
33
38
|
size?: "sm" | "md" | null | undefined;
|
|
34
39
|
} & class_variance_authority_types.ClassProp) | undefined) => string;
|
|
35
40
|
type BadgeTone = VariantProps<typeof badgeVariants>['tone'];
|
|
36
41
|
type BadgeSize = VariantProps<typeof badgeVariants>['size'];
|
|
42
|
+
type BadgeCasing = VariantProps<typeof badgeVariants>['casing'];
|
|
37
43
|
|
|
38
44
|
export { Badge, badgeVariants };
|
|
39
|
-
export type { BadgeSize, BadgeTone };
|
|
45
|
+
export type { BadgeCasing, BadgeSize, BadgeTone };
|
|
@@ -75,7 +75,7 @@ declare class ConfirmDialog {
|
|
|
75
75
|
protected readonly toneIcon: _angular_core.Signal<string>;
|
|
76
76
|
protected readonly toneBadgeClass: _angular_core.Signal<string>;
|
|
77
77
|
/** Her ton `filled` — warning da diğer tonlarla aynı `bg-X-fill` rol deseninde dolu blok kullanıyor (bkz. button.variants.ts), eski `outlined` istisnası kaldırıldı. */
|
|
78
|
-
protected readonly confirmTone: _angular_core.Signal<"
|
|
78
|
+
protected readonly confirmTone: _angular_core.Signal<"warning" | "danger" | "info" | "success" | "neutral" | "help" | "primary" | null | undefined>;
|
|
79
79
|
protected readonly submitting: _angular_core.WritableSignal<boolean>;
|
|
80
80
|
protected readonly actionError: _angular_core.WritableSignal<string | null>;
|
|
81
81
|
protected onCancel(): void;
|
|
@@ -111,6 +111,8 @@ declare class DialogSurface {
|
|
|
111
111
|
readonly maximizable: _angular_core.WritableSignal<boolean>;
|
|
112
112
|
readonly draggable: _angular_core.WritableSignal<boolean>;
|
|
113
113
|
readonly resizable: _angular_core.WritableSignal<boolean>;
|
|
114
|
+
/** `DialogOptions.disableClose` — `true` iken header'daki X çizilmez (bkz. `Dialog.closeVisible`). */
|
|
115
|
+
readonly disableClose: _angular_core.WritableSignal<boolean>;
|
|
114
116
|
readonly maximized: _angular_core.WritableSignal<boolean>;
|
|
115
117
|
/** Kullanıcı kenardan boyutlandırdıysa dolu; maximize/sheet'te yok sayılır. */
|
|
116
118
|
readonly customSize: _angular_core.WritableSignal<DialogCustomSize | null>;
|
|
@@ -169,6 +171,19 @@ declare class Dialog {
|
|
|
169
171
|
* `false`: yalnızca `close` yayınlanır — kapanışı tamamen tüketici yönetir.
|
|
170
172
|
*/
|
|
171
173
|
readonly autoClose: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
174
|
+
/**
|
|
175
|
+
* Kapat (X) düğmesinin erişilebilir adı — verilmezse `MfLabels.dialog.close`
|
|
176
|
+
* ("Close dialog" / "Pencereyi kapat"). İçerikte aynı adlı bir birincil eylem
|
|
177
|
+
* varsa (ör. "İki adımlı doğrulamayı kapat" diyaloğunun "Kapat"ı) iki düğme
|
|
178
|
+
* ekran okuyucuda ayrışsın diye.
|
|
179
|
+
*/
|
|
180
|
+
readonly closeLabel: _angular_core.InputSignal<string | undefined>;
|
|
181
|
+
/**
|
|
182
|
+
* X düğmesi çizilsin mi. Verilmezse `DialogOptions.disableClose`'un tersi —
|
|
183
|
+
* Escape/backdrop'la kapanmayan bir dialog'da X de yoktur (kullanıcı bir
|
|
184
|
+
* eylem seçmek zorunda).
|
|
185
|
+
*/
|
|
186
|
+
readonly showClose: _angular_core.InputSignal<boolean | undefined>;
|
|
172
187
|
readonly close: _angular_core.OutputEmitterRef<void>;
|
|
173
188
|
protected readonly surface: DialogSurface;
|
|
174
189
|
protected readonly labels: _angular_core.Signal<_mesgflow_ui_kit_core.MfDialogLabels>;
|
|
@@ -185,6 +200,7 @@ declare class Dialog {
|
|
|
185
200
|
protected readonly dragEnabled: _angular_core.Signal<boolean>;
|
|
186
201
|
protected readonly resizeHandleVisible: _angular_core.Signal<boolean>;
|
|
187
202
|
/** Drawer zaten tam yükseklik — büyütme düğmesinin anlamı yok, `surface.maximizable()` `true` olsa bile gizlenir. */
|
|
203
|
+
protected readonly closeVisible: _angular_core.Signal<boolean>;
|
|
188
204
|
protected readonly maximizeVisible: _angular_core.Signal<boolean>;
|
|
189
205
|
protected readonly hostClasses: _angular_core.Signal<string>;
|
|
190
206
|
protected readonly customWidth: _angular_core.Signal<number | undefined>;
|
|
@@ -209,7 +225,7 @@ declare class Dialog {
|
|
|
209
225
|
*/
|
|
210
226
|
protected requestSubmit(): void;
|
|
211
227
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<Dialog, never>;
|
|
212
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<Dialog, "mf-dialog", ["mfDialog"], { "title": { "alias": "title"; "required": false; "isSignal": true; }; "subtitle": { "alias": "subtitle"; "required": false; "isSignal": true; }; "icon": { "alias": "icon"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "fillBody": { "alias": "fillBody"; "required": false; "isSignal": true; }; "autoClose": { "alias": "autoClose"; "required": false; "isSignal": true; }; }, { "close": "close"; }, never, ["[dialog-header]", "*", "[dialog-footer]"], true, [{ directive: typeof i1.CdkDrag; inputs: {}; outputs: {}; }]>;
|
|
228
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<Dialog, "mf-dialog", ["mfDialog"], { "title": { "alias": "title"; "required": false; "isSignal": true; }; "subtitle": { "alias": "subtitle"; "required": false; "isSignal": true; }; "icon": { "alias": "icon"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "fillBody": { "alias": "fillBody"; "required": false; "isSignal": true; }; "autoClose": { "alias": "autoClose"; "required": false; "isSignal": true; }; "closeLabel": { "alias": "closeLabel"; "required": false; "isSignal": true; }; "showClose": { "alias": "showClose"; "required": false; "isSignal": true; }; }, { "close": "close"; }, never, ["[dialog-header]", "*", "[dialog-footer]"], true, [{ directive: typeof i1.CdkDrag; inputs: {}; outputs: {}; }]>;
|
|
213
229
|
}
|
|
214
230
|
|
|
215
231
|
/** `open` → (`close()` çağrıldı, çıkış animasyonu oynuyor) `closing` → (dispose edildi) `closed`. */
|
|
@@ -26,6 +26,8 @@ declare class Drawer {
|
|
|
26
26
|
/** `true` ise Escape/backdrop kapatmaz — yalnızca programatik `open.set(false)`. */
|
|
27
27
|
readonly disableClose: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
28
28
|
readonly sheetOnMobile: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
29
|
+
/** Kapat (X) düğmesinin erişilebilir adı — bkz. `Dialog.closeLabel`. `disableClose` iken X çizilmez. */
|
|
30
|
+
readonly closeLabel: _angular_core.InputSignal<string | undefined>;
|
|
29
31
|
/** Görünür başlık yoksa ekran okuyucu için ad. */
|
|
30
32
|
readonly ariaLabel: _angular_core.InputSignal<string | undefined>;
|
|
31
33
|
/** Kapanış tamamlandığında (animasyon dahil). */
|
|
@@ -38,7 +40,7 @@ declare class Drawer {
|
|
|
38
40
|
hide(): void;
|
|
39
41
|
private show;
|
|
40
42
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<Drawer, never>;
|
|
41
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<Drawer, "mf-drawer", ["mfDrawer"], { "open": { "alias": "open"; "required": false; "isSignal": true; }; "title": { "alias": "title"; "required": false; "isSignal": true; }; "subtitle": { "alias": "subtitle"; "required": false; "isSignal": true; }; "icon": { "alias": "icon"; "required": false; "isSignal": true; }; "placement": { "alias": "placement"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "disableClose": { "alias": "disableClose"; "required": false; "isSignal": true; }; "sheetOnMobile": { "alias": "sheetOnMobile"; "required": false; "isSignal": true; }; "ariaLabel": { "alias": "ariaLabel"; "required": false; "isSignal": true; }; }, { "open": "openChange"; "closed": "closed"; }, never, ["*", "[drawer-footer]"], true, never>;
|
|
43
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<Drawer, "mf-drawer", ["mfDrawer"], { "open": { "alias": "open"; "required": false; "isSignal": true; }; "title": { "alias": "title"; "required": false; "isSignal": true; }; "subtitle": { "alias": "subtitle"; "required": false; "isSignal": true; }; "icon": { "alias": "icon"; "required": false; "isSignal": true; }; "placement": { "alias": "placement"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "disableClose": { "alias": "disableClose"; "required": false; "isSignal": true; }; "sheetOnMobile": { "alias": "sheetOnMobile"; "required": false; "isSignal": true; }; "closeLabel": { "alias": "closeLabel"; "required": false; "isSignal": true; }; "ariaLabel": { "alias": "ariaLabel"; "required": false; "isSignal": true; }; }, { "open": "openChange"; "closed": "closed"; }, never, ["*", "[drawer-footer]"], true, never>;
|
|
42
44
|
}
|
|
43
45
|
|
|
44
46
|
export { Drawer };
|
|
@@ -71,6 +71,7 @@ declare class Input {
|
|
|
71
71
|
readonly maxRows: _angular_core.InputSignal<number | null>;
|
|
72
72
|
private readonly elementRef;
|
|
73
73
|
private readonly nativeSizing;
|
|
74
|
+
private readonly inGroup;
|
|
74
75
|
private lastValue;
|
|
75
76
|
private lastWidth;
|
|
76
77
|
protected readonly classes: _angular_core.Signal<string>;
|
|
@@ -84,7 +85,7 @@ declare class Input {
|
|
|
84
85
|
/**
|
|
85
86
|
* `<mf-input-group>
|
|
86
87
|
* <span mfInputPrefix><span mfIcon>search</span></span>
|
|
87
|
-
* <input mfInput
|
|
88
|
+
* <input mfInput />
|
|
88
89
|
* <span mfInputSuffix><button type="button">×</button></span>
|
|
89
90
|
* </mf-input-group>`
|
|
90
91
|
*
|
|
@@ -92,15 +93,14 @@ declare class Input {
|
|
|
92
93
|
* yazdığı "kabuk" reçetesini (bkz. plan Faz 2 P0) `core/recipes.ts`'in
|
|
93
94
|
* `controlSurface`/`controlSize`'ına indirger — üç ayrı kopya yerine TEK
|
|
94
95
|
* kaynak. İçindeki `input[mfInput]` KENDİ border/shadow/outline'ını
|
|
95
|
-
*
|
|
96
|
-
* sağlıyor, "çift kenarlık" olmasın diye
|
|
97
|
-
* `wrapperClasses` notu, aynı gerekçe).
|
|
96
|
+
* kapatır — grubu DI ile algılayıp (bkz. `input.ts` `IN_GROUP_CLASSES`); kabuk
|
|
97
|
+
* bunları BURADAN sağlıyor, "çift kenarlık" olmasın diye. Tüketici sınıf yazmaz.
|
|
98
98
|
*
|
|
99
99
|
* Odak halkası `has-[:focus-visible]:outline` ile İÇ elemanlardan HERHANGİ
|
|
100
100
|
* biri klavye-odaklandığında TÜM kabuğun etrafında TEK bir halka çizer
|
|
101
101
|
* (`DateRangePicker`'ın iki input'u arasında geçişte "zıplayan" iki ayrı
|
|
102
|
-
* halka yerine) — `input[mfInput]`'un KENDİ `focus-visible:outline`'ı
|
|
103
|
-
*
|
|
102
|
+
* halka yerine) — `input[mfInput]`'un KENDİ `focus-visible:outline`'ı bu
|
|
103
|
+
* yüzden grup içinde otomatik kapanır, aksi halde İKİ halka üst üste binerdi.
|
|
104
104
|
*/
|
|
105
105
|
declare class InputGroup {
|
|
106
106
|
readonly size: _angular_core.InputSignal<MfSize>;
|
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
2
|
import * as i1 from '@angular/aria/menu';
|
|
3
|
-
import { Menu as Menu$1 } from '@angular/aria/menu';
|
|
3
|
+
import { MenuItem as MenuItem$1, Menu as Menu$1 } from '@angular/aria/menu';
|
|
4
4
|
import * as class_variance_authority_types from 'class-variance-authority/types';
|
|
5
5
|
import { VariantProps } from 'class-variance-authority';
|
|
6
|
-
import
|
|
6
|
+
import { MfPlacement } from '@mesgflow/ui-kit/core';
|
|
7
|
+
import * as i2 from '@angular/cdk/overlay';
|
|
7
8
|
|
|
8
9
|
/**
|
|
9
10
|
* `<mf-menu #menu="ngMenu" (itemSelected)="onSelect($event)"><button mfMenuItem value="a">A</button></mf-menu>`
|
|
@@ -24,12 +25,32 @@ declare class Menu {
|
|
|
24
25
|
static ɵcmp: i0.ɵɵComponentDeclaration<Menu, "mf-menu", ["mfMenu"], {}, {}, never, ["*"], true, [{ directive: typeof i1.Menu; inputs: { "wrap": "wrap"; "disabled": "disabled"; "typeaheadDelay": "typeaheadDelay"; }; outputs: { "itemSelected": "itemSelected"; }; }]>;
|
|
25
26
|
}
|
|
26
27
|
|
|
27
|
-
|
|
28
|
+
declare const menuItemVariants: (props?: ({
|
|
29
|
+
tone?: "neutral" | "danger" | null | undefined;
|
|
30
|
+
active?: boolean | null | undefined;
|
|
31
|
+
disabled?: boolean | null | undefined;
|
|
32
|
+
} & class_variance_authority_types.ClassProp) | undefined) => string;
|
|
33
|
+
type MenuItemActive = VariantProps<typeof menuItemVariants>['active'];
|
|
34
|
+
type MenuItemTone = NonNullable<VariantProps<typeof menuItemVariants>['tone']>;
|
|
35
|
+
|
|
36
|
+
/**
|
|
37
|
+
* `<button mfMenuItem value="delete">Sil</button>` — `mf-menu` içine konur.
|
|
38
|
+
*
|
|
39
|
+
* `checked` verilirse (true/false) öğe tek-seçimli bir grubun parçası olur:
|
|
40
|
+
* `role="menuitemradio"` + `aria-checked`, seçili öğenin sağında tik. Verilmezse
|
|
41
|
+
* (`undefined`) düz `menuitem` — eski davranış birebir.
|
|
42
|
+
*
|
|
43
|
+
* `tone="danger"` tehlikeli eylemi ("Çıkış yap", "Üyeyi çıkar") ayrıştırır: metin
|
|
44
|
+
* `text-danger`, etkin/hover `bg-danger-tint text-danger-tint-fg`; ikon slotu aynı
|
|
45
|
+
* rengi (`currentColor`) miras alır. Yalnızca görsel — ARIA rolü değişmez.
|
|
46
|
+
*/
|
|
28
47
|
declare class MenuItem<V> {
|
|
29
|
-
|
|
48
|
+
readonly checked: i0.InputSignal<boolean | undefined>;
|
|
49
|
+
readonly tone: i0.InputSignal<MenuItemTone>;
|
|
50
|
+
protected readonly ariaMenuItem: MenuItem$1<V>;
|
|
30
51
|
protected readonly classes: i0.Signal<string>;
|
|
31
52
|
static ɵfac: i0.ɵɵFactoryDeclaration<MenuItem<any>, never>;
|
|
32
|
-
static
|
|
53
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<MenuItem<any>, "button[mfMenuItem], div[mfMenuItem]", never, { "checked": { "alias": "checked"; "required": false; "isSignal": true; }; "tone": { "alias": "tone"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, [{ directive: typeof i1.MenuItem; inputs: { "value": "value"; "disabled": "disabled"; "id": "id"; }; outputs: {}; }]>;
|
|
33
54
|
}
|
|
34
55
|
|
|
35
56
|
/**
|
|
@@ -39,17 +60,59 @@ declare class MenuItem<V> {
|
|
|
39
60
|
* headless, konum bilgisi taşımıyor; `mf-popover`'ın `[open]="trigger.expanded()"`
|
|
40
61
|
* ile beslenmesi gerekiyor (bkz. playground'daki Menu demosu, `(closed)`
|
|
41
62
|
* çıktısında `trigger.close()` çağırarak iki state'i senkron tutma deseni).
|
|
63
|
+
*
|
|
64
|
+
* Konumlandırmayı kendisi yapan (ve `@angular/cdk` import'u gerektirmeyen) biçim
|
|
65
|
+
* için bkz. `MenuTriggerFor` — `[mfMenuTrigger]="menuRef"`. İkisinin seçicisi
|
|
66
|
+
* `[menu]` bağlamasının varlığıyla ayrışır, aynı elemanda asla ikisi birden eşleşmez.
|
|
42
67
|
*/
|
|
43
68
|
declare class MenuTrigger {
|
|
44
69
|
static ɵfac: i0.ɵɵFactoryDeclaration<MenuTrigger, never>;
|
|
45
|
-
static ɵdir: i0.ɵɵDirectiveDeclaration<MenuTrigger, "[mfMenuTrigger]", ["mfMenuTrigger"], {}, {}, never, never, true, [{ directive: typeof i1.MenuTrigger; inputs: { "menu": "menu"; "disabled": "disabled"; }; outputs: {}; }]>;
|
|
70
|
+
static ɵdir: i0.ɵɵDirectiveDeclaration<MenuTrigger, "[mfMenuTrigger][menu]", ["mfMenuTrigger"], {}, {}, never, never, true, [{ directive: typeof i1.MenuTrigger; inputs: { "menu": "menu"; "disabled": "disabled"; }; outputs: {}; }]>;
|
|
71
|
+
}
|
|
72
|
+
/**
|
|
73
|
+
* `<button mfButton [mfMenuTrigger]="langMenu">TR</button>
|
|
74
|
+
* <mf-menu #langMenu="ngMenu" (itemSelected)="setLang($event)">…</mf-menu>`
|
|
75
|
+
*
|
|
76
|
+
* Tek düğmeli açılır menü — tüketici `@angular/cdk` import etmez, `mf-popover`
|
|
77
|
+
* sarmalamaz. Menü şablonda NORMAL yerinde durur (kapalıyken gizli), açılınca
|
|
78
|
+
* `DomPortal` ile overlay'e TAŞINIR ve tetiğe göre `placement`'a konumlanır;
|
|
79
|
+
* kapanınca çıkış animasyonundan sonra eski yerine döner — Angular'ın mantıksal
|
|
80
|
+
* ağacı (içerik projeksiyonu, `mfMenuItem` ↔ `mf-menu` DI bağı) hiç değişmez.
|
|
81
|
+
*
|
|
82
|
+
* `[mfMenuTrigger]`'a `mf-menu`'nün `ngMenu` referansı verilir (`mfMenu` DEĞİL —
|
|
83
|
+
* `@angular/aria`'nın tetikleyicisi kendi `Menu` örneğini ister). ARIA/klavye
|
|
84
|
+
* (`aria-haspopup`/`aria-expanded`, ok tuşları, typeahead, Enter/Boşluk seçer, Esc
|
|
85
|
+
* kapatıp odağı tetiğe döndürür) `@angular/aria/menu`'den; bu directive üstüne:
|
|
86
|
+
* seçimde kapanıp odağı tetiğe döndürme, dışarı tıklamada kapanma.
|
|
87
|
+
*
|
|
88
|
+
* Tetik aynı zamanda bir `CdkOverlayOrigin` (host directive) — ayrıca
|
|
89
|
+
* `cdkOverlayOrigin` yazılmaz.
|
|
90
|
+
*/
|
|
91
|
+
declare class MenuTriggerFor {
|
|
92
|
+
/** Menünün tetiğe göre konumu — `left`/`right` mantıksal (RTL'de çevrilir). */
|
|
93
|
+
readonly placement: i0.InputSignal<MfPlacement>;
|
|
94
|
+
private readonly aria;
|
|
95
|
+
private readonly overlay;
|
|
96
|
+
private readonly host;
|
|
97
|
+
private overlayRef?;
|
|
98
|
+
private exitTimer?;
|
|
99
|
+
/** Kapalıyken gizlenen (ve açıkken overlay'e taşınan) menü elemanı. */
|
|
100
|
+
private hiddenMenu?;
|
|
101
|
+
private selection?;
|
|
102
|
+
constructor();
|
|
103
|
+
/** Public — menüyü kapatır, odak yerinde kalır (aria `close()` ile aynı). */
|
|
104
|
+
close(): void;
|
|
105
|
+
/** Public — menüyü açar ve ilk öğeye odaklanır. */
|
|
106
|
+
open(): void;
|
|
107
|
+
private bindMenu;
|
|
108
|
+
private unbindMenu;
|
|
109
|
+
private attach;
|
|
110
|
+
private detach;
|
|
111
|
+
private ensureOverlay;
|
|
112
|
+
private positionStrategy;
|
|
113
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<MenuTriggerFor, never>;
|
|
114
|
+
static ɵdir: i0.ɵɵDirectiveDeclaration<MenuTriggerFor, "[mfMenuTrigger]:not([menu])", ["mfMenuTrigger"], { "placement": { "alias": "placement"; "required": false; "isSignal": true; }; }, {}, never, never, true, [{ directive: typeof i1.MenuTrigger; inputs: { "menu": "mfMenuTrigger"; "disabled": "disabled"; }; outputs: {}; }, { directive: typeof i2.CdkOverlayOrigin; inputs: {}; outputs: {}; }]>;
|
|
46
115
|
}
|
|
47
|
-
|
|
48
|
-
declare const menuItemVariants: (props?: ({
|
|
49
|
-
active?: boolean | null | undefined;
|
|
50
|
-
disabled?: boolean | null | undefined;
|
|
51
|
-
} & class_variance_authority_types.ClassProp) | undefined) => string;
|
|
52
|
-
type MenuItemActive = VariantProps<typeof menuItemVariants>['active'];
|
|
53
116
|
|
|
54
117
|
interface MenubarAction<V = string> {
|
|
55
118
|
label: string;
|
|
@@ -83,10 +146,10 @@ declare class Menubar<V = string> {
|
|
|
83
146
|
readonly itemSelect: i0.OutputEmitterRef<V>;
|
|
84
147
|
protected readonly rendered: i0.WritableSignal<boolean>;
|
|
85
148
|
protected readonly submenus: i0.Signal<readonly Menu$1<V>[]>;
|
|
86
|
-
protected readonly positions:
|
|
149
|
+
protected readonly positions: i2.ConnectedPosition[];
|
|
87
150
|
static ɵfac: i0.ɵɵFactoryDeclaration<Menubar<any>, never>;
|
|
88
151
|
static ɵcmp: i0.ɵɵComponentDeclaration<Menubar<any>, "mf-menubar", ["mfMenubar"], { "menus": { "alias": "menus"; "required": true; "isSignal": true; }; "ariaLabel": { "alias": "ariaLabel"; "required": false; "isSignal": true; }; }, { "itemSelect": "itemSelect"; }, never, never, true, never>;
|
|
89
152
|
}
|
|
90
153
|
|
|
91
|
-
export { Menu, MenuItem, MenuTrigger, Menubar, menuItemVariants };
|
|
92
|
-
export type { MenuItemActive, MenubarAction, MenubarMenu };
|
|
154
|
+
export { Menu, MenuItem, MenuTrigger, MenuTriggerFor, Menubar, menuItemVariants };
|
|
155
|
+
export type { MenuItemActive, MenuItemTone, MenubarAction, MenubarMenu };
|
|
@@ -1,10 +1,26 @@
|
|
|
1
|
-
import * as
|
|
1
|
+
import * as i1 from '@angular/cdk/overlay';
|
|
2
2
|
import { CdkOverlayOrigin } from '@angular/cdk/overlay';
|
|
3
3
|
import * as _angular_core from '@angular/core';
|
|
4
|
+
import { ElementRef } from '@angular/core';
|
|
4
5
|
import { MfPlacement } from '@mesgflow/ui-kit/core';
|
|
5
6
|
import * as class_variance_authority_types from 'class-variance-authority/types';
|
|
6
7
|
import { VariantProps } from 'class-variance-authority';
|
|
7
8
|
|
|
9
|
+
/**
|
|
10
|
+
* `<button #trigger="mfPopoverOrigin" mfPopoverOrigin (click)="open.set(true)">…</button>
|
|
11
|
+
* <mf-popover [origin]="trigger" [(open)]="open">…</mf-popover>`
|
|
12
|
+
*
|
|
13
|
+
* `mf-popover`'ın `[origin]`'i için kitin kendi çapası — tüketici `@angular/cdk`
|
|
14
|
+
* import etmeden `cdkOverlayOrigin` ile aynı işi görür (host directive olarak onu
|
|
15
|
+
* taşır). `[origin]` ayrıca bir `HTMLElement`/`ElementRef` (`#ref` şablon
|
|
16
|
+
* referansı) de kabul eder.
|
|
17
|
+
*/
|
|
18
|
+
declare class PopoverOrigin {
|
|
19
|
+
readonly elementRef: ElementRef<HTMLElement>;
|
|
20
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<PopoverOrigin, never>;
|
|
21
|
+
static ɵdir: _angular_core.ɵɵDirectiveDeclaration<PopoverOrigin, "[mfPopoverOrigin]", ["mfPopoverOrigin"], {}, {}, never, never, true, [{ directive: typeof i1.CdkOverlayOrigin; inputs: {}; outputs: {}; }]>;
|
|
22
|
+
}
|
|
23
|
+
|
|
8
24
|
/**
|
|
9
25
|
* Tüm `MfPlacement` değerleri — `left`/`right` MANTIKSAL (RTL'de çevrilir).
|
|
10
26
|
* `right-start`: tetikleyicinin ÜSTÜYLE hizalı (Sidebar daraltılmış nav
|
|
@@ -12,6 +28,12 @@ import { VariantProps } from 'class-variance-authority';
|
|
|
12
28
|
* beklenmedik yönde kaydırır), 8px boşlukla.
|
|
13
29
|
*/
|
|
14
30
|
type PopoverPlacement = MfPlacement;
|
|
31
|
+
/**
|
|
32
|
+
* `[origin]`'in kabul ettiği çapalar: kitin `mfPopoverOrigin`'i (tercih edilen —
|
|
33
|
+
* tüketici `@angular/cdk` import etmez), CDK'nın `cdkOverlayOrigin`'i (geriye
|
|
34
|
+
* uyumlu) ya da düz bir eleman (`#ref` şablon referansı / `ElementRef`).
|
|
35
|
+
*/
|
|
36
|
+
type PopoverOriginRef = PopoverOrigin | CdkOverlayOrigin | ElementRef<HTMLElement> | HTMLElement;
|
|
15
37
|
/**
|
|
16
38
|
* `<button cdkOverlayOrigin #trigger="cdkOverlayOrigin" (click)="open.set(true)">...</button>`
|
|
17
39
|
* `<mf-popover [origin]="trigger" [(open)]="open">...içerik (ng-content)...</mf-popover>`
|
|
@@ -25,11 +47,12 @@ type PopoverPlacement = MfPlacement;
|
|
|
25
47
|
* Popover'ın panel içeriğiyle nasıl kompoze edeceğine karar vermeli, ayrı ve
|
|
26
48
|
* her ekranın tarayıcıda tek tek doğrulanmasını gerektiren bir iş.
|
|
27
49
|
*
|
|
28
|
-
* `origin
|
|
29
|
-
*
|
|
50
|
+
* `origin`: kitin `mfPopoverOrigin` referansı (tüketici `@angular/cdk` import
|
|
51
|
+
* etmez), geriye uyumlu olarak `cdkOverlayOrigin` ya da düz bir eleman — bkz.
|
|
52
|
+
* `PopoverOriginRef`.
|
|
30
53
|
*/
|
|
31
54
|
declare class Popover {
|
|
32
|
-
readonly origin: _angular_core.InputSignal<
|
|
55
|
+
readonly origin: _angular_core.InputSignal<PopoverOriginRef>;
|
|
33
56
|
readonly open: _angular_core.ModelSignal<boolean>;
|
|
34
57
|
readonly placement: _angular_core.InputSignal<MfPlacement>;
|
|
35
58
|
readonly padding: _angular_core.InputSignal<"none" | "sm" | "md" | "lg" | null | undefined>;
|
|
@@ -53,7 +76,9 @@ declare class Popover {
|
|
|
53
76
|
protected readonly attached: _angular_core.WritableSignal<boolean>;
|
|
54
77
|
protected readonly closing: _angular_core.WritableSignal<boolean>;
|
|
55
78
|
private exitTimer?;
|
|
56
|
-
|
|
79
|
+
/** CDK'ya verilen çapa — `cdkConnectedOverlayOrigin` bir `ElementRef`'i doğrudan kabul eder. */
|
|
80
|
+
protected readonly anchor: _angular_core.Signal<ElementRef<HTMLElement>>;
|
|
81
|
+
protected readonly positions: _angular_core.Signal<i1.ConnectedPosition[]>;
|
|
57
82
|
protected readonly classes: _angular_core.Signal<string>;
|
|
58
83
|
constructor();
|
|
59
84
|
protected close(): void;
|
|
@@ -66,5 +91,5 @@ declare const popoverPanelVariants: (props?: ({
|
|
|
66
91
|
} & class_variance_authority_types.ClassProp) | undefined) => string;
|
|
67
92
|
type PopoverPadding = VariantProps<typeof popoverPanelVariants>['padding'];
|
|
68
93
|
|
|
69
|
-
export { Popover, popoverPanelVariants };
|
|
70
|
-
export type { PopoverPadding, PopoverPlacement };
|
|
94
|
+
export { Popover, PopoverOrigin, popoverPanelVariants };
|
|
95
|
+
export type { PopoverOriginRef, PopoverPadding, PopoverPlacement };
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import * as _angular_core from '@angular/core';
|
|
2
2
|
import * as class_variance_authority_types from 'class-variance-authority/types';
|
|
3
3
|
import { VariantProps } from 'class-variance-authority';
|
|
4
|
+
import { BadgeTone } from '@mesgflow/ui-kit/badge';
|
|
4
5
|
import { cn } from '@mesgflow/ui-kit/core';
|
|
5
6
|
|
|
6
7
|
/**
|
|
@@ -33,7 +34,10 @@ import { cn } from '@mesgflow/ui-kit/core';
|
|
|
33
34
|
declare const sidebarVariants: (props?: ({
|
|
34
35
|
collapsed?: boolean | null | undefined;
|
|
35
36
|
appearance?: "chrome" | "brand" | "brand-light" | null | undefined;
|
|
37
|
+
embedded?: boolean | null | undefined;
|
|
36
38
|
} & class_variance_authority_types.ClassProp) | undefined) => string;
|
|
39
|
+
/** `[brand]` yuvasının tenant switcher'a göre yeri — bkz. `Sidebar.brandPlacement`. */
|
|
40
|
+
type SidebarBrandPlacement = 'replace' | 'above';
|
|
37
41
|
/**
|
|
38
42
|
* Nav satırı (leaf veya parent-toggle) — `rounded-sm`(6px, menü öğesi kademesi,
|
|
39
43
|
* bkz. styles.css radius notu), panel değil kontrol. `border-s-2 border-s-
|
|
@@ -66,6 +70,17 @@ interface SidebarNavItem {
|
|
|
66
70
|
interface SidebarTenant {
|
|
67
71
|
id: string;
|
|
68
72
|
name: string;
|
|
73
|
+
/**
|
|
74
|
+
* Adın altında soluk ikincil satır (panelde ve genişken tetikte) — ör. "Kimlik: acme-2";
|
|
75
|
+
* aynı adlı kiracıları ayrıştırır. Erişilebilir ad "ad, açıklama" olur.
|
|
76
|
+
*/
|
|
77
|
+
description?: string;
|
|
78
|
+
/** Paneldeki satırın sonunda durum rozeti — ör. "Hazırlanıyor". */
|
|
79
|
+
badge?: string;
|
|
80
|
+
/** `badge`'in tonu (varsayılan `neutral`). */
|
|
81
|
+
badgeTone?: BadgeTone;
|
|
82
|
+
/** Seçilemez (ör. hazırlanamadı) — satır `aria-disabled`, tık/Enter yok sayılır. */
|
|
83
|
+
disabled?: boolean;
|
|
69
84
|
}
|
|
70
85
|
interface SidebarUser {
|
|
71
86
|
name: string;
|
|
@@ -113,6 +128,21 @@ declare class Sidebar {
|
|
|
113
128
|
* TORUNU olmadığından her zaman katı `chrome` kalır.
|
|
114
129
|
*/
|
|
115
130
|
readonly appearance: _angular_core.InputSignal<SidebarAppearance>;
|
|
131
|
+
/**
|
|
132
|
+
* `[brand]` yuvasının tenant switcher'la ilişkisi. `'replace'` (varsayılan,
|
|
133
|
+
* eski davranış): marka YALNIZ `tenants` boşken çizilir, switcher onun
|
|
134
|
+
* yerine geçer. `'above'`: marka her zaman üstte, switcher (liste doluysa)
|
|
135
|
+
* altında. Daraltılmışken yalnız logo için `<mf-brand [showLabel]="!collapsed()">`
|
|
136
|
+
* — ad görsel olarak gizlenir, erişilebilir ad korunur.
|
|
137
|
+
*/
|
|
138
|
+
readonly brandPlacement: _angular_core.InputSignal<SidebarBrandPlacement>;
|
|
139
|
+
/**
|
|
140
|
+
* `true`: bir çekmece (`mf-drawer`) gibi kendi yüzeyi olan bir kabın İÇİNDE —
|
|
141
|
+
* dış kenarlık ve `chrome` zemini çizilmez (çift çerçeve olmasın), genişlik
|
|
142
|
+
* kabı doldurur. Marka görünümleri (`brand`/`brand-light`) kontrast için
|
|
143
|
+
* kendi zeminini korur.
|
|
144
|
+
*/
|
|
145
|
+
readonly embedded: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
116
146
|
/** Verilmezse `MF_SIDEBAR_LABELS`'a düşer — `SidebarTenantSwitcher`/`SidebarUserMenu`'nün KENDİ etiketleri artık AYRICA buradan prop-drilling YAPILMIYOR, ikisi de `MF_SIDEBAR_LABELS`'ı doğrudan inject ediyor. */
|
|
117
147
|
readonly collapseLabel: _angular_core.InputSignal<string | undefined>;
|
|
118
148
|
readonly expandLabel: _angular_core.InputSignal<string | undefined>;
|
|
@@ -126,6 +156,7 @@ declare class Sidebar {
|
|
|
126
156
|
protected readonly effectiveExpandLabel: _angular_core.Signal<string>;
|
|
127
157
|
protected readonly effectiveNavAriaLabel: _angular_core.Signal<string>;
|
|
128
158
|
protected readonly rootClasses: _angular_core.Signal<string>;
|
|
159
|
+
protected readonly showBrandRow: _angular_core.Signal<boolean>;
|
|
129
160
|
/** Genişkenken hangi gruplar açık — her grup BAĞIMSIZ açılır/kapanır (akordeon değil, kullanıcı kararı). `model()` — tüketici okuyabilir/yazabilir (ör. "hepsini aç" bir buton). */
|
|
130
161
|
readonly expandedIds: _angular_core.ModelSignal<ReadonlySet<string>>;
|
|
131
162
|
/**
|
|
@@ -143,7 +174,7 @@ declare class Sidebar {
|
|
|
143
174
|
protected onTenantSelect(tenant: SidebarTenant): void;
|
|
144
175
|
protected toggleCollapse(): void;
|
|
145
176
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<Sidebar, never>;
|
|
146
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<Sidebar, "mf-sidebar", ["mfSidebar"], { "tenants": { "alias": "tenants"; "required": false; "isSignal": true; }; "activeTenantId": { "alias": "activeTenantId"; "required": false; "isSignal": true; }; "navItems": { "alias": "navItems"; "required": true; "isSignal": true; }; "activeItemId": { "alias": "activeItemId"; "required": false; "isSignal": true; }; "user": { "alias": "user"; "required": false; "isSignal": true; }; "showUserMenu": { "alias": "showUserMenu"; "required": false; "isSignal": true; }; "collapsed": { "alias": "collapsed"; "required": false; "isSignal": true; }; "showCollapseToggle": { "alias": "showCollapseToggle"; "required": false; "isSignal": true; }; "appearance": { "alias": "appearance"; "required": false; "isSignal": true; }; "collapseLabel": { "alias": "collapseLabel"; "required": false; "isSignal": true; }; "expandLabel": { "alias": "expandLabel"; "required": false; "isSignal": true; }; "navAriaLabel": { "alias": "navAriaLabel"; "required": false; "isSignal": true; }; "expandedIds": { "alias": "expandedIds"; "required": false; "isSignal": true; }; "autoExpandActive": { "alias": "autoExpandActive"; "required": false; "isSignal": true; }; }, { "activeTenantId": "activeTenantIdChange"; "activeItemId": "activeItemIdChange"; "collapsed": "collapsedChange"; "tenantChange": "tenantChange"; "itemClick": "itemClick"; "profileClick": "profileClick"; "expandedIds": "expandedIdsChange"; }, never, ["[brand]"], true, never>;
|
|
177
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<Sidebar, "mf-sidebar", ["mfSidebar"], { "tenants": { "alias": "tenants"; "required": false; "isSignal": true; }; "activeTenantId": { "alias": "activeTenantId"; "required": false; "isSignal": true; }; "navItems": { "alias": "navItems"; "required": true; "isSignal": true; }; "activeItemId": { "alias": "activeItemId"; "required": false; "isSignal": true; }; "user": { "alias": "user"; "required": false; "isSignal": true; }; "showUserMenu": { "alias": "showUserMenu"; "required": false; "isSignal": true; }; "collapsed": { "alias": "collapsed"; "required": false; "isSignal": true; }; "showCollapseToggle": { "alias": "showCollapseToggle"; "required": false; "isSignal": true; }; "appearance": { "alias": "appearance"; "required": false; "isSignal": true; }; "brandPlacement": { "alias": "brandPlacement"; "required": false; "isSignal": true; }; "embedded": { "alias": "embedded"; "required": false; "isSignal": true; }; "collapseLabel": { "alias": "collapseLabel"; "required": false; "isSignal": true; }; "expandLabel": { "alias": "expandLabel"; "required": false; "isSignal": true; }; "navAriaLabel": { "alias": "navAriaLabel"; "required": false; "isSignal": true; }; "expandedIds": { "alias": "expandedIds"; "required": false; "isSignal": true; }; "autoExpandActive": { "alias": "autoExpandActive"; "required": false; "isSignal": true; }; }, { "activeTenantId": "activeTenantIdChange"; "activeItemId": "activeItemIdChange"; "collapsed": "collapsedChange"; "tenantChange": "tenantChange"; "itemClick": "itemClick"; "profileClick": "profileClick"; "expandedIds": "expandedIdsChange"; }, never, ["[brand]"], true, never>;
|
|
147
178
|
}
|
|
148
179
|
|
|
149
180
|
/**
|
|
@@ -197,6 +228,8 @@ declare class SidebarTenantSwitcher {
|
|
|
197
228
|
protected toggle(): void;
|
|
198
229
|
protected close(): void;
|
|
199
230
|
protected select(tenant: SidebarTenant): void;
|
|
231
|
+
/** "Ad, açıklama[, rozet]" — yalnızca ek alan varsa; yoksa `null` (içerikten türetilir, eski davranış). */
|
|
232
|
+
protected optionAriaLabel(tenant: SidebarTenant): string | null;
|
|
200
233
|
protected optionClasses(tenant: SidebarTenant, index: number): string;
|
|
201
234
|
protected onTriggerKeydown(event: KeyboardEvent): void;
|
|
202
235
|
protected onPanelKeydown(event: KeyboardEvent): void;
|
|
@@ -221,4 +254,4 @@ declare class SidebarUserMenu {
|
|
|
221
254
|
}
|
|
222
255
|
|
|
223
256
|
export { Sidebar, SidebarNavItemRow, SidebarTenantSwitcher, SidebarUserMenu, sidebarNavItemVariants, sidebarVariants };
|
|
224
|
-
export type { SidebarAppearance, SidebarCollapsedVariant, SidebarNavItem, SidebarTenant, SidebarUser };
|
|
257
|
+
export type { SidebarAppearance, SidebarBrandPlacement, SidebarCollapsedVariant, SidebarNavItem, SidebarTenant, SidebarUser };
|
|
@@ -360,11 +360,11 @@ declare class Table<T> {
|
|
|
360
360
|
private readonly host;
|
|
361
361
|
private readonly scroller;
|
|
362
362
|
private readonly idPrefix;
|
|
363
|
-
|
|
364
|
-
|
|
365
|
-
|
|
366
|
-
|
|
367
|
-
|
|
363
|
+
readonly page: _angular_core.ModelSignal<PageRequest>;
|
|
364
|
+
readonly sort: _angular_core.ModelSignal<SortDescriptor[]>;
|
|
365
|
+
readonly search: _angular_core.ModelSignal<string>;
|
|
366
|
+
readonly filters: _angular_core.ModelSignal<AppliedFilter[]>;
|
|
367
|
+
readonly filterLogic: _angular_core.ModelSignal<FilterLogic>;
|
|
368
368
|
protected readonly selectedRows: _angular_core.WritableSignal<Map<unknown, T>>;
|
|
369
369
|
protected readonly hiddenColumns: _angular_core.WritableSignal<Set<string>>;
|
|
370
370
|
protected readonly columnsMenuOpen: _angular_core.WritableSignal<boolean>;
|
|
@@ -509,7 +509,7 @@ declare class Table<T> {
|
|
|
509
509
|
private searchGroupFor;
|
|
510
510
|
private emitQuery;
|
|
511
511
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<Table<any>, never>;
|
|
512
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<Table<any>, "mf-table", ["mfTable"], { "title": { "alias": "title"; "required": false; "isSignal": true; }; "columns": { "alias": "columns"; "required": true; "isSignal": true; }; "data": { "alias": "data"; "required": true; "isSignal": true; }; "rowKey": { "alias": "rowKey"; "required": true; "isSignal": true; }; "loading": { "alias": "loading"; "required": false; "isSignal": true; }; "total": { "alias": "total"; "required": false; "isSignal": true; }; "pageSizeOptions": { "alias": "pageSizeOptions"; "required": false; "isSignal": true; }; "selectable": { "alias": "selectable"; "required": false; "isSignal": true; }; "searchable": { "alias": "searchable"; "required": false; "isSignal": true; }; "stickyHeader": { "alias": "stickyHeader"; "required": false; "isSignal": true; }; "density": { "alias": "density"; "required": false; "isSignal": true; }; "rowActions": { "alias": "rowActions"; "required": false; "isSignal": true; }; "clientSide": { "alias": "clientSide"; "required": false; "isSignal": true; }; "resizableColumns": { "alias": "resizableColumns"; "required": false; "isSignal": true; }; "columnWidths": { "alias": "columnWidths"; "required": false; "isSignal": true; }; "expandedRowTemplate": { "alias": "expandedRowTemplate"; "required": false; "isSignal": true; }; "virtual": { "alias": "virtual"; "required": false; "isSignal": true; }; "virtualHeight": { "alias": "virtualHeight"; "required": false; "isSignal": true; }; "labels": { "alias": "labels"; "required": false; "isSignal": true; }; }, { "density": "densityChange"; "columnWidths": "columnWidthsChange"; "queryChange": "queryChange"; "selectionChange": "selectionChange"; "edit": "edit"; "delete": "delete"; "rowDblClick": "rowDblClick"; "rowExpandedChange": "rowExpandedChange"; }, never, ["[tableActions]", "[tableBulkActions]"], true, never>;
|
|
512
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<Table<any>, "mf-table", ["mfTable"], { "title": { "alias": "title"; "required": false; "isSignal": true; }; "columns": { "alias": "columns"; "required": true; "isSignal": true; }; "data": { "alias": "data"; "required": true; "isSignal": true; }; "rowKey": { "alias": "rowKey"; "required": true; "isSignal": true; }; "loading": { "alias": "loading"; "required": false; "isSignal": true; }; "total": { "alias": "total"; "required": false; "isSignal": true; }; "pageSizeOptions": { "alias": "pageSizeOptions"; "required": false; "isSignal": true; }; "selectable": { "alias": "selectable"; "required": false; "isSignal": true; }; "searchable": { "alias": "searchable"; "required": false; "isSignal": true; }; "stickyHeader": { "alias": "stickyHeader"; "required": false; "isSignal": true; }; "density": { "alias": "density"; "required": false; "isSignal": true; }; "rowActions": { "alias": "rowActions"; "required": false; "isSignal": true; }; "clientSide": { "alias": "clientSide"; "required": false; "isSignal": true; }; "resizableColumns": { "alias": "resizableColumns"; "required": false; "isSignal": true; }; "columnWidths": { "alias": "columnWidths"; "required": false; "isSignal": true; }; "expandedRowTemplate": { "alias": "expandedRowTemplate"; "required": false; "isSignal": true; }; "virtual": { "alias": "virtual"; "required": false; "isSignal": true; }; "virtualHeight": { "alias": "virtualHeight"; "required": false; "isSignal": true; }; "labels": { "alias": "labels"; "required": false; "isSignal": true; }; "page": { "alias": "page"; "required": false; "isSignal": true; }; "sort": { "alias": "sort"; "required": false; "isSignal": true; }; "search": { "alias": "search"; "required": false; "isSignal": true; }; "filters": { "alias": "filters"; "required": false; "isSignal": true; }; "filterLogic": { "alias": "filterLogic"; "required": false; "isSignal": true; }; }, { "density": "densityChange"; "columnWidths": "columnWidthsChange"; "queryChange": "queryChange"; "selectionChange": "selectionChange"; "edit": "edit"; "delete": "delete"; "rowDblClick": "rowDblClick"; "rowExpandedChange": "rowExpandedChange"; "page": "pageChange"; "sort": "sortChange"; "search": "searchChange"; "filters": "filtersChange"; "filterLogic": "filterLogicChange"; }, never, ["[tableActions]", "[tableBulkActions]"], true, never>;
|
|
513
513
|
}
|
|
514
514
|
|
|
515
515
|
declare function matchesFilterGroup<T>(row: T, group: FilterGroup | undefined): boolean;
|
|
@@ -655,7 +655,7 @@ declare class TableFilterMenu<T> {
|
|
|
655
655
|
/** Kaldirilan filtrenin id'si — checkbox listesi sifir secime inince (ekleme YA DA duzenleme modunda) emit edilir, ust bilesen o id'yi chip listesinden cikarir. */
|
|
656
656
|
readonly remove: _angular_core.OutputEmitterRef<string>;
|
|
657
657
|
readonly closed: _angular_core.OutputEmitterRef<void>;
|
|
658
|
-
protected readonly step: _angular_core.WritableSignal<"
|
|
658
|
+
protected readonly step: _angular_core.WritableSignal<"value" | "field">;
|
|
659
659
|
protected readonly fieldQuery: _angular_core.WritableSignal<string>;
|
|
660
660
|
protected readonly fieldHighlighted: _angular_core.WritableSignal<number>;
|
|
661
661
|
protected readonly selectedField: _angular_core.WritableSignal<string | null>;
|