@ngbase/adk 0.1.6 → 0.1.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/breadcrumb/breadcrumb-separator.d.ts +1 -5
- package/breadcrumb/breadcrumb.d.ts +1 -0
- package/breadcrumb/breadcrumbs.d.ts +3 -1
- package/breadcrumb/public-api.d.ts +1 -1
- package/fesm2022/ngbase-adk-breadcrumb.mjs +32 -34
- package/fesm2022/ngbase-adk-breadcrumb.mjs.map +1 -1
- package/fesm2022/ngbase-adk-tabs.mjs +2 -1
- package/fesm2022/ngbase-adk-tabs.mjs.map +1 -1
- package/package.json +13 -13
- package/schematics/components/files/accordion/accordion-llm.md.template +35 -0
- package/schematics/components/files/alert/alert-llm.md.template +34 -0
- package/schematics/components/files/autocomplete/autocomplete-llm.md.template +76 -0
- package/schematics/components/files/avatar/avatar-llm.md.template +37 -0
- package/schematics/components/files/avatar/avatar.ts.template +5 -2
- package/schematics/components/files/badge/badge-llm.md.template +21 -0
- package/schematics/components/files/badge/badge.ts.template +8 -3
- package/schematics/components/files/breadcrumb/breadcrumb-llm.md.template +26 -0
- package/schematics/components/files/breadcrumb/breadcrumb.ts.template +9 -18
- package/schematics/components/files/button/button-llm.md.template +22 -0
- package/schematics/components/files/card/card-llm.md.template +16 -0
- package/schematics/components/files/carousel/carousel-llm.md.template +38 -0
- package/schematics/components/files/checkbox/checkbox-llm.md.template +27 -0
- package/schematics/components/files/checkbox/focus-style.directive.ts.template +9 -6
- package/schematics/components/files/checkbox/index.ts.template +1 -1
- package/schematics/components/files/chip/chip-llm.md.template +29 -0
- package/schematics/components/files/color-picker/color-picker-llm.md.template +27 -0
- package/schematics/components/files/datepicker/datepicker-llm.md.template +43 -0
- package/schematics/components/files/dialog/dialog-llm.md.template +69 -0
- package/schematics/components/files/drawer/drawer-llm.md.template +54 -0
- package/schematics/components/files/form-field/form-field-llm.md.template +56 -0
- package/schematics/components/files/form-field/form-field.ts.template +2 -2
- package/schematics/components/files/form-field/input-style.directive.ts.template +2 -3
- package/schematics/components/files/hover-card/hover-card-llm.md.template +26 -0
- package/schematics/components/files/icon/icon-llm.md.template +19 -0
- package/schematics/components/files/inline-edit/inline-edit-llm.md.template +22 -0
- package/schematics/components/files/list/list-llm.md.template +23 -0
- package/schematics/components/files/list/list.ts.template +2 -1
- package/schematics/components/files/mask/mask-llm.md.template +19 -0
- package/schematics/components/files/menu/context-menu-llm.md.template +28 -0
- package/schematics/components/files/menu/menu-llm.md.template +37 -0
- package/schematics/components/files/otp/otp-llm.md.template +21 -0
- package/schematics/components/files/pagination/pagination-llm.md.template +29 -0
- package/schematics/components/files/pagination/pagination.ts.template +11 -12
- package/schematics/components/files/popover/popover-llm.md.template +59 -0
- package/schematics/components/files/progress/progress-llm.md.template +19 -0
- package/schematics/components/files/radio/radio-llm.md.template +36 -0
- package/schematics/components/files/resizable/resizable-llm.md.template +31 -0
- package/schematics/components/files/select/option.ts.template +2 -2
- package/schematics/components/files/select/select-llm.md.template +87 -0
- package/schematics/components/files/selectable/selectable-llm.md.template +31 -0
- package/schematics/components/files/selectable/selectable.ts.template +4 -3
- package/schematics/components/files/sheet/sheet-llm.md.template +54 -0
- package/schematics/components/files/sidenav/sidenav-llm.md.template +37 -0
- package/schematics/components/files/skeleton/skeleton-llm.md.template +22 -0
- package/schematics/components/files/slider/slider-llm.md.template +35 -0
- package/schematics/components/files/sonner/sonner-llm.md.template +34 -0
- package/schematics/components/files/spinner/spinner-llm.md.template +29 -0
- package/schematics/components/files/stepper/stepper-llm.md.template +32 -0
- package/schematics/components/files/switch/switch-llm.md.template +23 -0
- package/schematics/components/files/table/table-llm.md.template +31 -0
- package/schematics/components/files/tabs/tab.ts.template +1 -1
- package/schematics/components/files/tabs/tabs-llm.md.template +48 -0
- package/schematics/components/files/theme/index.ts.template +1 -1
- package/schematics/components/files/theme/{theme-button.component.ts.template → theme-button.ts.template} +2 -1
- package/schematics/components/files/theme/theme-llm.md.template +23 -0
- package/schematics/components/files/theme/theme.service.ts.template +1 -3
- package/schematics/components/files/toggle/toggle-llm.md.template +19 -0
- package/schematics/components/files/toggle-group/toggle-group-llm.md.template +32 -0
- package/schematics/components/files/tooltip/tooltip-llm.md.template +37 -0
- package/schematics/components/schema.json +2 -0
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
# Spinner
|
|
2
|
+
|
|
3
|
+
```typescript
|
|
4
|
+
import { Spinner } from '@/ui/spinner';
|
|
5
|
+
```
|
|
6
|
+
|
|
7
|
+
## Components
|
|
8
|
+
|
|
9
|
+
### `<%= name %>-spinner`
|
|
10
|
+
|
|
11
|
+
- **Inputs**
|
|
12
|
+
- `size`: 'small' | 'medium' | 'large' = 'medium' - The size of the spinner
|
|
13
|
+
- `mode`: 'light' | 'dark' | '' = 'light' - The mode of the spinner
|
|
14
|
+
- `diameter`: number = 35 - The diameter of the spinner
|
|
15
|
+
- `strokeWidth`: number = 3 - The stroke width of the spinner
|
|
16
|
+
- `root`: boolean = false - Whether the spinner is the root spinner
|
|
17
|
+
- **Export** - `<%= name %>Spinner` - Template reference
|
|
18
|
+
|
|
19
|
+
## Usage
|
|
20
|
+
|
|
21
|
+
```html
|
|
22
|
+
<<%= name %>-spinner
|
|
23
|
+
[size]="size()"
|
|
24
|
+
[mode]="mode()"
|
|
25
|
+
[diameter]="diameter()"
|
|
26
|
+
[strokeWidth]="strokeWidth()"
|
|
27
|
+
[root]="root()"
|
|
28
|
+
></<%= name %>-spinner>
|
|
29
|
+
```
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
# Stepper
|
|
2
|
+
|
|
3
|
+
```typescript
|
|
4
|
+
import { Stepper, Step, StepHeader } from '@/ui/stepper';
|
|
5
|
+
```
|
|
6
|
+
|
|
7
|
+
## Components
|
|
8
|
+
|
|
9
|
+
### `<%= name %>-stepper`
|
|
10
|
+
|
|
11
|
+
- **Inputs**
|
|
12
|
+
- `activeIndex`: number = 0 - The index of the active step (2way)
|
|
13
|
+
- `direction`: 'horizontal' | 'vertical' = 'horizontal' - The direction of the stepper
|
|
14
|
+
- **Export** - `<%= name %>Stepper` - Template reference
|
|
15
|
+
|
|
16
|
+
### `<%= name %>-step`
|
|
17
|
+
|
|
18
|
+
- **Inputs**
|
|
19
|
+
- `title`: string - The title of the step
|
|
20
|
+
- **Export** - `<%= name %>Step` - Template reference
|
|
21
|
+
|
|
22
|
+
### `[<%= name %>StepHeader]`
|
|
23
|
+
|
|
24
|
+
## Usage
|
|
25
|
+
|
|
26
|
+
```html
|
|
27
|
+
<<%= name %>-stepper [(activeIndex)]="activeIndex" [direction]="direction()">
|
|
28
|
+
<<%= name %>-step title="Step 1"> Step 1 </<%= name %>-step>
|
|
29
|
+
<<%= name %>-step title="Step 2"> Step 2 </<%= name %>-step>
|
|
30
|
+
<<%= name %>-step title="Step 3"> Step 3 </<%= name %>-step>
|
|
31
|
+
</<%= name %>-stepper>
|
|
32
|
+
```
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
# Switch
|
|
2
|
+
|
|
3
|
+
```typescript
|
|
4
|
+
import { Switch } from '@/ui/switch';
|
|
5
|
+
```
|
|
6
|
+
|
|
7
|
+
## Components
|
|
8
|
+
|
|
9
|
+
### `<%= name %>-switch`
|
|
10
|
+
|
|
11
|
+
- **Inputs**
|
|
12
|
+
- `checked`: boolean = false - Whether the switch is checked (2way)
|
|
13
|
+
- `disabled`: boolean = false - Whether the switch is disabled
|
|
14
|
+
- **Outputs**
|
|
15
|
+
- `checkedChange`: EventEmitter<boolean> - Emits the checked value when it changes
|
|
16
|
+
- `change`: EventEmitter<boolean> - Emits the checked value when it changes
|
|
17
|
+
- **Export** - `<%= name %>Switch` - Template reference
|
|
18
|
+
|
|
19
|
+
## Usage
|
|
20
|
+
|
|
21
|
+
```html
|
|
22
|
+
<<%= name %>-switch [(checked)]="checked" [disabled]="disabled()"></<%= name %>-switch>
|
|
23
|
+
```
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
# Table
|
|
2
|
+
|
|
3
|
+
```typescript
|
|
4
|
+
import { TableComponents } from '@/ui/table';
|
|
5
|
+
```
|
|
6
|
+
|
|
7
|
+
### `<%= name %>Table`
|
|
8
|
+
|
|
9
|
+
- **inputs**
|
|
10
|
+
|
|
11
|
+
- `data`: `T[]`
|
|
12
|
+
- `trackBy`: `(index: number, item: T) => string`
|
|
13
|
+
|
|
14
|
+
- **Exports** - `<%= name %>Table`
|
|
15
|
+
|
|
16
|
+
## Usage
|
|
17
|
+
|
|
18
|
+
```html
|
|
19
|
+
<table <%= name %>Table [data]="data" [trackBy]="trackBy">
|
|
20
|
+
<ng-container <%= name %>Column="name">
|
|
21
|
+
<th <%= name %>Head *<%= name %>HeadDef>Name</th>
|
|
22
|
+
<td <%= name %>Cell *<%= name %>CellDef="let row">{{row.name}}</td>
|
|
23
|
+
</ng-container>
|
|
24
|
+
<ng-container <%= name %>Column="age">
|
|
25
|
+
<th <%= name %>Head *<%= name %>HeadDef>Age</th>
|
|
26
|
+
<td <%= name %>Cell *<%= name %>CellDef="let row">{{row.age}}</td>
|
|
27
|
+
</ng-container>
|
|
28
|
+
<tr <%= name %>HeadRow *<%= name %>HeadRowDef="columns()"></tr>
|
|
29
|
+
<tr <%= name %>BodyRow *<%= name %>BodyRowDef="let row; columns: columns()"></tr>
|
|
30
|
+
</table>
|
|
31
|
+
```
|
|
@@ -36,7 +36,7 @@ import {
|
|
|
36
36
|
@for (tab of tabs(); track tab.id) {
|
|
37
37
|
<button
|
|
38
38
|
[ngbTabButton]="tab"
|
|
39
|
-
class="
|
|
39
|
+
class="whitespace-nowrap border-b-2 border-transparent font-medium text-muted-foreground aria-[disabled=true]:cursor-not-allowed aria-[selected=true]:!border-primary aria-[disabled=true]:text-muted-foreground aria-[selected=true]:!text-primary aria-[disabled=true]:opacity-50 [&[data-ch='false']]:px-4 [&[data-ch='false']]:py-3 [&[data-ch='true']>*:first-child]:px-4 [&[data-ch='true']>*:first-child]:py-3"
|
|
40
40
|
></button>
|
|
41
41
|
}
|
|
42
42
|
</div>
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
## Tabs
|
|
2
|
+
|
|
3
|
+
```typescript
|
|
4
|
+
import { Tabs, Tab, TabHeader, TabLazy } from '@/ui/tabs';
|
|
5
|
+
```
|
|
6
|
+
|
|
7
|
+
### `<%= name %>-tabs`
|
|
8
|
+
|
|
9
|
+
- **inputs**
|
|
10
|
+
|
|
11
|
+
- `selectedIndex`: number (2way)
|
|
12
|
+
|
|
13
|
+
- **outputs**
|
|
14
|
+
- `selectedTabChange`: `EventEmitter<TabChangeEvent>`
|
|
15
|
+
|
|
16
|
+
### `<%= name %>-tab`
|
|
17
|
+
|
|
18
|
+
- **inputs**
|
|
19
|
+
|
|
20
|
+
- `label`: string
|
|
21
|
+
- `disabled`: boolean
|
|
22
|
+
- `mode`: 'hidden' | 'lazy'
|
|
23
|
+
- `value`: string | number
|
|
24
|
+
|
|
25
|
+
- **exports** - `<%= name %>Tab`
|
|
26
|
+
|
|
27
|
+
### `<%= name %>-tab-header`
|
|
28
|
+
|
|
29
|
+
- **exports** - `<%= name %>TabHeader`
|
|
30
|
+
|
|
31
|
+
### `<%= name %>-tab-lazy`
|
|
32
|
+
|
|
33
|
+
Use it to render the tab every time user visit the tab
|
|
34
|
+
|
|
35
|
+
- **exports** - `<%= name %>TabLazy`
|
|
36
|
+
|
|
37
|
+
## Usage
|
|
38
|
+
|
|
39
|
+
```html
|
|
40
|
+
<<%= name %>-tabs [(selectedIndex)]="selectedIndex">
|
|
41
|
+
<<%= name %>-tab label="Tab 1">Tab 1 Content</<%= name %>-tab>
|
|
42
|
+
<<%= name %>-tab>
|
|
43
|
+
<h4 *<%= name %>TabHeader>Tab 2</h4>
|
|
44
|
+
Tab 2 Content
|
|
45
|
+
</<%= name %>-tab>
|
|
46
|
+
<<%= name %>-tab *<%= name %>TabLazy="let tab"> Tab 3 </<%= name %>-tab>
|
|
47
|
+
</<%= name %>-tabs>
|
|
48
|
+
```
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
export { injectTheme } from './theme.service';
|
|
2
|
-
export { ThemeButton } from './theme-button
|
|
2
|
+
export { ThemeButton } from './theme-button';
|
|
@@ -4,6 +4,7 @@ import { Icon } from '<%= basepath %>/icon';
|
|
|
4
4
|
import { provideIcons } from '@ng-icons/core';
|
|
5
5
|
import { lucideMoon, lucideSun } from '@ng-icons/lucide';
|
|
6
6
|
import { injectTheme } from './theme.service';
|
|
7
|
+
// import { keyMap } from '@ngbase/adk/keys';
|
|
7
8
|
|
|
8
9
|
@Component({
|
|
9
10
|
selector: '<%= name %>-theme-button',
|
|
@@ -21,6 +22,6 @@ export class ThemeButton {
|
|
|
21
22
|
readonly themeService = injectTheme();
|
|
22
23
|
|
|
23
24
|
constructor() {
|
|
24
|
-
//
|
|
25
|
+
// keyMap('ctrl+b', () => this.themeService.toggle());
|
|
25
26
|
}
|
|
26
27
|
}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
# Theme
|
|
2
|
+
|
|
3
|
+
```typescript
|
|
4
|
+
import { ThemeButton, injectTheme } from '@/ui/theme';
|
|
5
|
+
```
|
|
6
|
+
|
|
7
|
+
## Components
|
|
8
|
+
|
|
9
|
+
### ThemeButton
|
|
10
|
+
|
|
11
|
+
```html
|
|
12
|
+
<<%= name %>-theme-button />
|
|
13
|
+
```
|
|
14
|
+
|
|
15
|
+
## Usage
|
|
16
|
+
|
|
17
|
+
```typescript
|
|
18
|
+
const theme = injectTheme();
|
|
19
|
+
|
|
20
|
+
theme.toggle();
|
|
21
|
+
theme.mode(); // 'light' | 'dark' | ''
|
|
22
|
+
theme.mode.set('light');
|
|
23
|
+
```
|
|
@@ -3,14 +3,12 @@ import { isClient } from '@ngbase/adk/utils';
|
|
|
3
3
|
|
|
4
4
|
@Injectable({ providedIn: 'root' })
|
|
5
5
|
export class ThemeService {
|
|
6
|
-
mode = signal<'light' | 'dark' | ''>('light');
|
|
6
|
+
readonly mode = signal<'light' | 'dark' | ''>('light');
|
|
7
7
|
|
|
8
8
|
constructor() {
|
|
9
9
|
if (isClient()) {
|
|
10
10
|
const theme = localStorage.getItem('theme');
|
|
11
11
|
this._update((theme as 'light' | 'dark') || 'light');
|
|
12
|
-
|
|
13
|
-
// registerShortcut('ctrl+h', () => this.open());
|
|
14
12
|
}
|
|
15
13
|
}
|
|
16
14
|
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
# Toggle
|
|
2
|
+
|
|
3
|
+
```typescript
|
|
4
|
+
import { Toggle } from '@/ui/toggle';
|
|
5
|
+
```
|
|
6
|
+
|
|
7
|
+
### `<%= name %>-toggle`
|
|
8
|
+
|
|
9
|
+
- **inputs**
|
|
10
|
+
|
|
11
|
+
- `value`: boolean (2way)
|
|
12
|
+
|
|
13
|
+
- **exports** - `<%= name %>Toggle`
|
|
14
|
+
|
|
15
|
+
## Usage
|
|
16
|
+
|
|
17
|
+
```html
|
|
18
|
+
<<%= name %>-toggle [(value)]="value" />
|
|
19
|
+
```
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
# Toggle
|
|
2
|
+
|
|
3
|
+
```typescript
|
|
4
|
+
import { ToggleGroup, ToggleItem } from '@/ui/toggle-group';
|
|
5
|
+
```
|
|
6
|
+
|
|
7
|
+
### `<%= name %>-toggle-group`
|
|
8
|
+
|
|
9
|
+
- **inputs**
|
|
10
|
+
|
|
11
|
+
- `value`: boolean (2way)
|
|
12
|
+
- `multiple`: boolean
|
|
13
|
+
|
|
14
|
+
- **exports** - `<%= name %>ToggleGroup`
|
|
15
|
+
|
|
16
|
+
### `<%= name %>-toggle-item`
|
|
17
|
+
|
|
18
|
+
- **inputs**
|
|
19
|
+
|
|
20
|
+
- `value`: boolean
|
|
21
|
+
- `disabled`: boolean
|
|
22
|
+
|
|
23
|
+
- **exports** - `<%= name %>ToggleItem`
|
|
24
|
+
|
|
25
|
+
## Usage
|
|
26
|
+
|
|
27
|
+
```html
|
|
28
|
+
<<%= name %>-toggle-group [(value)]="value" [multiple]="multiple">
|
|
29
|
+
<button <%= name %>ToggleItem value="1">1</button>
|
|
30
|
+
<button <%= name %>ToggleItem value="2">2</button>
|
|
31
|
+
</<%= name %>-toggle-group>
|
|
32
|
+
```
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
# Tooltip
|
|
2
|
+
|
|
3
|
+
```typescript
|
|
4
|
+
import { Tooltip } from '@/ui/tooltip';
|
|
5
|
+
```
|
|
6
|
+
|
|
7
|
+
## Components
|
|
8
|
+
|
|
9
|
+
PopoverPosition =
|
|
10
|
+
| 'top'
|
|
11
|
+
| 'bottom'
|
|
12
|
+
| 'left'
|
|
13
|
+
| 'right'
|
|
14
|
+
| 'rs'
|
|
15
|
+
| 're'
|
|
16
|
+
| 'ls'
|
|
17
|
+
| 'le'
|
|
18
|
+
| 'tl'
|
|
19
|
+
| 'tr'
|
|
20
|
+
| 'bl'
|
|
21
|
+
| 'br';
|
|
22
|
+
|
|
23
|
+
### `<%= name %>-tooltip`
|
|
24
|
+
|
|
25
|
+
- **inputs**
|
|
26
|
+
|
|
27
|
+
- `<%= name %>Tooltip`: string
|
|
28
|
+
- `<%= name %>TooltipPosition`: PopoverPosition
|
|
29
|
+
- `delay`: number
|
|
30
|
+
|
|
31
|
+
- **exports** - `<%= name %>Tooltip`
|
|
32
|
+
|
|
33
|
+
## Usage
|
|
34
|
+
|
|
35
|
+
```html
|
|
36
|
+
<<%= name %>-tooltip <%= name %>Tooltip="Tooltip content" [delay]="100" />
|
|
37
|
+
```
|
|
@@ -73,6 +73,7 @@
|
|
|
73
73
|
"switch",
|
|
74
74
|
"table",
|
|
75
75
|
"tabs",
|
|
76
|
+
"theme",
|
|
76
77
|
"toggle",
|
|
77
78
|
"toggle-group",
|
|
78
79
|
"tooltip",
|
|
@@ -129,6 +130,7 @@
|
|
|
129
130
|
{ "value": "switch", "label": "Switch" },
|
|
130
131
|
{ "value": "table", "label": "Table" },
|
|
131
132
|
{ "value": "tabs", "label": "Tabs" },
|
|
133
|
+
{ "value": "theme", "label": "Theme" },
|
|
132
134
|
{ "value": "toggle", "label": "Toggle" },
|
|
133
135
|
{ "value": "toggle-group", "label": "Toggle Group" },
|
|
134
136
|
{ "value": "tooltip", "label": "Tooltip" },
|