@ngbase/adk 0.1.2 → 0.1.3
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/a11y/accessibility-group.d.ts +2 -5
- package/accordion/accordion-item.d.ts +3 -1
- package/autocomplete/autocomplete-input.d.ts +2 -4
- package/autocomplete/autocomplete.d.ts +12 -3
- package/carousel/carousel.d.ts +2 -2
- package/checkbox/checkbox.d.ts +11 -3
- package/checkbox/public-api.d.ts +1 -1
- package/datepicker/datepicker-trigger.d.ts +22 -5
- package/datepicker/datepicker.d.ts +2 -1
- package/drag/drag.d.ts +1 -2
- package/fesm2022/ngbase-adk-a11y.mjs +29 -26
- package/fesm2022/ngbase-adk-a11y.mjs.map +1 -1
- package/fesm2022/ngbase-adk-accordion.mjs +12 -2
- package/fesm2022/ngbase-adk-accordion.mjs.map +1 -1
- package/fesm2022/ngbase-adk-autocomplete.mjs +18 -18
- package/fesm2022/ngbase-adk-autocomplete.mjs.map +1 -1
- package/fesm2022/ngbase-adk-carousel.mjs +5 -5
- package/fesm2022/ngbase-adk-carousel.mjs.map +1 -1
- package/fesm2022/ngbase-adk-checkbox.mjs +8 -6
- package/fesm2022/ngbase-adk-checkbox.mjs.map +1 -1
- package/fesm2022/ngbase-adk-datepicker.mjs +76 -25
- package/fesm2022/ngbase-adk-datepicker.mjs.map +1 -1
- package/fesm2022/ngbase-adk-dialog.mjs +3 -3
- package/fesm2022/ngbase-adk-dialog.mjs.map +1 -1
- package/fesm2022/ngbase-adk-drag.mjs +1 -2
- package/fesm2022/ngbase-adk-drag.mjs.map +1 -1
- package/fesm2022/ngbase-adk-list.mjs +2 -2
- package/fesm2022/ngbase-adk-list.mjs.map +1 -1
- package/fesm2022/ngbase-adk-mask.mjs +5 -3
- package/fesm2022/ngbase-adk-mask.mjs.map +1 -1
- package/fesm2022/ngbase-adk-menu.mjs +22 -7
- package/fesm2022/ngbase-adk-menu.mjs.map +1 -1
- package/fesm2022/ngbase-adk-pagination.mjs +3 -3
- package/fesm2022/ngbase-adk-pagination.mjs.map +1 -1
- package/fesm2022/ngbase-adk-popover.mjs +25 -22
- package/fesm2022/ngbase-adk-popover.mjs.map +1 -1
- package/fesm2022/ngbase-adk-portal.mjs +5 -9
- package/fesm2022/ngbase-adk-portal.mjs.map +1 -1
- package/fesm2022/ngbase-adk-radio.mjs +6 -3
- package/fesm2022/ngbase-adk-radio.mjs.map +1 -1
- package/fesm2022/ngbase-adk-resizable.mjs.map +1 -1
- package/fesm2022/ngbase-adk-select.mjs +21 -13
- package/fesm2022/ngbase-adk-select.mjs.map +1 -1
- package/fesm2022/ngbase-adk-slider.mjs +4 -1
- package/fesm2022/ngbase-adk-slider.mjs.map +1 -1
- package/fesm2022/ngbase-adk-stepper.mjs.map +1 -1
- package/fesm2022/ngbase-adk-table.mjs +8 -6
- package/fesm2022/ngbase-adk-table.mjs.map +1 -1
- package/fesm2022/ngbase-adk-tabs.mjs.map +1 -1
- package/fesm2022/ngbase-adk-test.mjs +11 -1
- package/fesm2022/ngbase-adk-test.mjs.map +1 -1
- package/fesm2022/ngbase-adk-tour.mjs +2 -2
- package/fesm2022/ngbase-adk-tour.mjs.map +1 -1
- package/fesm2022/ngbase-adk-utils.mjs +12 -9
- package/fesm2022/ngbase-adk-utils.mjs.map +1 -1
- package/mask/mask.d.ts +1 -2
- package/menu/menu-trigger.d.ts +1 -1
- package/menu/menu.d.ts +8 -2
- package/package.json +11 -11
- package/pagination/pagination.d.ts +3 -3
- package/popover/base-popover.service.d.ts +1 -1
- package/popover/popover.d.ts +5 -4
- package/portal/portal-base.service.d.ts +3 -3
- package/portal/portal-close.directive.d.ts +3 -2
- package/radio/radio.d.ts +5 -1
- package/select/option.d.ts +1 -1
- package/select/select-base.d.ts +8 -6
- package/select/select.d.ts +5 -2
- package/slider/slider.d.ts +1 -0
- package/table/table.d.ts +2 -2
- package/test/utils.d.ts +19 -3
- package/utils/utils.d.ts +5 -4
- package/schematics/collection.json +0 -15
- package/schematics/components/files/accordion/accordion.ts.template +0 -53
- package/schematics/components/files/accordion/index.ts.template +0 -5
- package/schematics/components/files/alert/alert.ts.template +0 -62
- package/schematics/components/files/alert/index.ts.template +0 -1
- package/schematics/components/files/autocomplete/autocomplete.ts.template +0 -44
- package/schematics/components/files/autocomplete/index.ts.template +0 -5
- package/schematics/components/files/avatar/avatar.ts.template +0 -31
- package/schematics/components/files/avatar/index.ts.template +0 -1
- package/schematics/components/files/badge/badge.ts.template +0 -11
- package/schematics/components/files/badge/index.ts.template +0 -1
- package/schematics/components/files/breadcrumb/breadcrumb.ts.template +0 -49
- package/schematics/components/files/breadcrumb/index.ts.template +0 -1
- package/schematics/components/files/button/button.ts.template +0 -29
- package/schematics/components/files/button/index.ts.template +0 -5
- package/schematics/components/files/card/card.ts.template +0 -11
- package/schematics/components/files/card/index.ts.template +0 -5
- package/schematics/components/files/carousel/carousel.ts.template +0 -44
- package/schematics/components/files/carousel/index.ts.template +0 -1
- package/schematics/components/files/checkbox/checkbox.ts.template +0 -46
- package/schematics/components/files/checkbox/focus-style.directive.ts.template +0 -12
- package/schematics/components/files/checkbox/index.ts.template +0 -6
- package/schematics/components/files/chip/chip.ts.template +0 -36
- package/schematics/components/files/chip/index.ts.template +0 -1
- package/schematics/components/files/color-picker/color-picker.ts.template +0 -104
- package/schematics/components/files/color-picker/index.ts.template +0 -5
- package/schematics/components/files/command/command.ts.template +0 -82
- package/schematics/components/files/command/index.ts.template +0 -1
- package/schematics/components/files/datepicker/calendar.ts.template +0 -117
- package/schematics/components/files/datepicker/datepicker.ts.template +0 -58
- package/schematics/components/files/datepicker/index.ts.template +0 -2
- package/schematics/components/files/datepicker/time.ts.template +0 -54
- package/schematics/components/files/dialog/dialog.ts.template +0 -89
- package/schematics/components/files/dialog/index.ts.template +0 -5
- package/schematics/components/files/drawer/drawer.ts.template +0 -104
- package/schematics/components/files/drawer/index.ts.template +0 -5
- package/schematics/components/files/form-field/form-field.ts.template +0 -111
- package/schematics/components/files/form-field/index.ts.template +0 -6
- package/schematics/components/files/form-field/input-style.directive.ts.template +0 -11
- package/schematics/components/files/hover-card/hover-card.ts.template +0 -13
- package/schematics/components/files/hover-card/index.ts.template +0 -5
- package/schematics/components/files/icon/icon.ts.template +0 -16
- package/schematics/components/files/icon/index.ts.template +0 -1
- package/schematics/components/files/inline-edit/index.ts.template +0 -1
- package/schematics/components/files/inline-edit/inline-edit.ts.template +0 -24
- package/schematics/components/files/keys/index.ts.template +0 -5
- package/schematics/components/files/keys/key.ts.template +0 -35
- package/schematics/components/files/list/index.ts.template +0 -5
- package/schematics/components/files/list/list.ts.template +0 -28
- package/schematics/components/files/mask/index.ts.template +0 -1
- package/schematics/components/files/mask/mask.ts.template +0 -8
- package/schematics/components/files/menu/context-menu.ts.template +0 -14
- package/schematics/components/files/menu/index.ts.template +0 -8
- package/schematics/components/files/menu/mention.ts.template +0 -14
- package/schematics/components/files/menu/menu.ts.template +0 -37
- package/schematics/components/files/menu/navigation-menu.ts.template +0 -8
- package/schematics/components/files/otp/index.ts.template +0 -5
- package/schematics/components/files/otp/otp.ts.template +0 -37
- package/schematics/components/files/pagination/index.ts.template +0 -1
- package/schematics/components/files/pagination/pagination.ts.template +0 -71
- package/schematics/components/files/picasa/index.ts.template +0 -1
- package/schematics/components/files/picasa/picasa-base.component.ts.template +0 -80
- package/schematics/components/files/picasa/picasa.component.ts.template +0 -57
- package/schematics/components/files/picasa/picasa.directive.ts.template +0 -41
- package/schematics/components/files/picasa/picase.service.ts.template +0 -24
- package/schematics/components/files/popover/index.ts.template +0 -1
- package/schematics/components/files/popover/popover.ts.template +0 -64
- package/schematics/components/files/progress/index.ts.template +0 -5
- package/schematics/components/files/progress/progress.ts.template +0 -14
- package/schematics/components/files/radio/index.ts.template +0 -5
- package/schematics/components/files/radio/radio.ts.template +0 -35
- package/schematics/components/files/resizable/index.ts.template +0 -5
- package/schematics/components/files/resizable/resizable.ts.template +0 -56
- package/schematics/components/files/scroll-area/index.ts.template +0 -1
- package/schematics/components/files/scroll-area/scroll-area.ts.template +0 -40
- package/schematics/components/files/select/index.ts.template +0 -8
- package/schematics/components/files/select/list-selection.ts.template +0 -15
- package/schematics/components/files/select/option.ts.template +0 -35
- package/schematics/components/files/select/select-input.ts.template +0 -21
- package/schematics/components/files/select/select.ts.template +0 -96
- package/schematics/components/files/selectable/index.ts.template +0 -1
- package/schematics/components/files/selectable/selectable.ts.template +0 -34
- package/schematics/components/files/separator/index.ts.template +0 -5
- package/schematics/components/files/separator/separator.ts.template +0 -19
- package/schematics/components/files/sheet/index.ts.template +0 -5
- package/schematics/components/files/sheet/sheet.ts.template +0 -69
- package/schematics/components/files/sidenav/index.ts.template +0 -1
- package/schematics/components/files/sidenav/sidenav.ts.template +0 -48
- package/schematics/components/files/skeleton/index.ts.template +0 -1
- package/schematics/components/files/skeleton/skeleton.ts.template +0 -15
- package/schematics/components/files/slider/index.ts.template +0 -5
- package/schematics/components/files/slider/slider.ts.template +0 -35
- package/schematics/components/files/sonner/index.ts.template +0 -5
- package/schematics/components/files/sonner/sonner.ts.template +0 -59
- package/schematics/components/files/spinner/index.ts.template +0 -1
- package/schematics/components/files/spinner/spinner.ts.template +0 -79
- package/schematics/components/files/stepper/index.ts.template +0 -1
- package/schematics/components/files/stepper/stepper.ts.template +0 -88
- package/schematics/components/files/switch/index.ts.template +0 -5
- package/schematics/components/files/switch/switch.ts.template +0 -29
- package/schematics/components/files/table/body-cell.ts.template +0 -19
- package/schematics/components/files/table/body-row.ts.template +0 -21
- package/schematics/components/files/table/column.ts.template +0 -8
- package/schematics/components/files/table/head-cell.ts.template +0 -19
- package/schematics/components/files/table/head-row.ts.template +0 -27
- package/schematics/components/files/table/index.ts.template +0 -26
- package/schematics/components/files/table/table.ts.template +0 -20
- package/schematics/components/files/tabs/index.ts.template +0 -5
- package/schematics/components/files/tabs/tab.ts.template +0 -92
- package/schematics/components/files/theme/index.ts.template +0 -2
- package/schematics/components/files/theme/theme-button.component.ts.template +0 -26
- package/schematics/components/files/theme/theme.service.ts.template +0 -33
- package/schematics/components/files/toggle/index.ts.template +0 -5
- package/schematics/components/files/toggle/toggle.ts.template +0 -13
- package/schematics/components/files/toggle-group/index.ts.template +0 -5
- package/schematics/components/files/toggle-group/toggle-group.ts.template +0 -25
- package/schematics/components/files/tooltip/index.ts.template +0 -5
- package/schematics/components/files/tooltip/tooltip.ts.template +0 -45
- package/schematics/components/files/tour/index.ts.template +0 -1
- package/schematics/components/files/tour/tour.ts.template +0 -19
- package/schematics/components/files/tree/index.ts.template +0 -1
- package/schematics/components/files/tree/tree.ts.template +0 -66
- package/schematics/components/index.d.ts +0 -3
- package/schematics/components/index.js +0 -17
- package/schematics/components/index.js.map +0 -1
- package/schematics/components/index.ts +0 -29
- package/schematics/components/schema.d.ts +0 -6
- package/schematics/components/schema.js +0 -3
- package/schematics/components/schema.js.map +0 -1
- package/schematics/components/schema.json +0 -145
- package/schematics/components/schema.ts +0 -6
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export * from './alert';
|
|
@@ -1,44 +0,0 @@
|
|
|
1
|
-
import { ChangeDetectionStrategy, Component, Directive } from '@angular/core';
|
|
2
|
-
import { NgbAutocomplete, NgbAutocompleteInput, aliasAutocomplete } from '@ngbase/adk/autocomplete';
|
|
3
|
-
import { NgbSelectOptionGroup } from '@ngbase/adk/select';
|
|
4
|
-
|
|
5
|
-
@Component({
|
|
6
|
-
selector: '<%= name %>-autocomplete',
|
|
7
|
-
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
8
|
-
providers: [aliasAutocomplete(Autocomplete)],
|
|
9
|
-
imports: [NgbSelectOptionGroup],
|
|
10
|
-
template: `
|
|
11
|
-
<ul #container class="readonly !flex w-full flex-wrap gap-2" (click)="prevent($event)">
|
|
12
|
-
<ng-content select="<%= name %>-chip, <%= name %>-chip-group" />
|
|
13
|
-
|
|
14
|
-
<li class="flex min-w-8 flex-1 items-center" (click)="open()">
|
|
15
|
-
<ng-content select="input" />
|
|
16
|
-
</li>
|
|
17
|
-
</ul>
|
|
18
|
-
<ng-template #optionsTemplate>
|
|
19
|
-
<div #optionsGroup ngbSelectOptionGroup class="p-1">
|
|
20
|
-
<ng-content />
|
|
21
|
-
</div>
|
|
22
|
-
</ng-template>
|
|
23
|
-
`,
|
|
24
|
-
host: {
|
|
25
|
-
class: 'inline-flex',
|
|
26
|
-
},
|
|
27
|
-
})
|
|
28
|
-
export class Autocomplete<T> extends NgbAutocomplete<T> {}
|
|
29
|
-
|
|
30
|
-
@Directive({
|
|
31
|
-
selector: '[<%= name %>AutocompleteInput]',
|
|
32
|
-
exportAs: '<%= name %>AutocompleteInput',
|
|
33
|
-
hostDirectives: [
|
|
34
|
-
{
|
|
35
|
-
directive: NgbAutocompleteInput,
|
|
36
|
-
inputs: ['options', 'filterFn'],
|
|
37
|
-
outputs: ['ngbAutocompleteInput: <%= name %>AutocompleteInput'],
|
|
38
|
-
},
|
|
39
|
-
],
|
|
40
|
-
host: {
|
|
41
|
-
class: 'w-full bg-transparent shadow-none outline-none',
|
|
42
|
-
},
|
|
43
|
-
})
|
|
44
|
-
export class AutocompleteInput<T> {}
|
|
@@ -1,31 +0,0 @@
|
|
|
1
|
-
import { ChangeDetectionStrategy, Component } from '@angular/core';
|
|
2
|
-
import { NgbAvatar, NgbAvatarGroup, aliasAvatar } from '@ngbase/adk/avatar';
|
|
3
|
-
|
|
4
|
-
@Component({
|
|
5
|
-
selector: '<%= name %>-avatar-group',
|
|
6
|
-
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
7
|
-
hostDirectives: [{ directive: NgbAvatarGroup, inputs: ['reverse', 'left'] }],
|
|
8
|
-
template: `<ng-content select="<%= name %>-avatar,[<%= name %>Avatar]" />`,
|
|
9
|
-
host: {
|
|
10
|
-
class: 'flex flex-row',
|
|
11
|
-
},
|
|
12
|
-
})
|
|
13
|
-
export class AvatarGroup {}
|
|
14
|
-
|
|
15
|
-
@Component({
|
|
16
|
-
selector: '<%= name %>-avatar, [<%= name %>Avatar]',
|
|
17
|
-
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
18
|
-
providers: [aliasAvatar(Avatar)],
|
|
19
|
-
template: `
|
|
20
|
-
@if (src(); as img) {
|
|
21
|
-
<img [src]="img" alt="avatar" class="h-full max-h-full max-w-full" />
|
|
22
|
-
} @else {
|
|
23
|
-
<ng-content>{{ nameChar() }}</ng-content>
|
|
24
|
-
}
|
|
25
|
-
`,
|
|
26
|
-
host: {
|
|
27
|
-
class:
|
|
28
|
-
'inline-flex aspect-square rounded-full overflow-hidden border-2 border-foreground relative bg-background text-muted items-center justify-center',
|
|
29
|
-
},
|
|
30
|
-
})
|
|
31
|
-
export class Avatar extends NgbAvatar {}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export * from './avatar';
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
import { ChangeDetectionStrategy, Component } from '@angular/core';
|
|
2
|
-
|
|
3
|
-
@Component({
|
|
4
|
-
selector: '<%= name %>-badge, [<%= name %>Badge]',
|
|
5
|
-
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
6
|
-
template: `<ng-content />`,
|
|
7
|
-
host: {
|
|
8
|
-
class: 'inline-block bg-muted-background rounded-full px-2 py-1 text-xs font-semibold',
|
|
9
|
-
},
|
|
10
|
-
})
|
|
11
|
-
export class Badge {}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export * from './badge';
|
|
@@ -1,49 +0,0 @@
|
|
|
1
|
-
import { ChangeDetectionStrategy, Component, Directive } from '@angular/core';
|
|
2
|
-
import { Icon } from '<%= basepath %>/icon';
|
|
3
|
-
import { provideIcons } from '@ng-icons/core';
|
|
4
|
-
import { lucideChevronRight } from '@ng-icons/lucide';
|
|
5
|
-
import {
|
|
6
|
-
aliasBreadcrumb,
|
|
7
|
-
NgbBreadcrumb,
|
|
8
|
-
NgbBreadcrumbLink,
|
|
9
|
-
NgbBreadcrumbs,
|
|
10
|
-
NgbBreadcrumbSeparator,
|
|
11
|
-
NgbBreadcrumbSeparatorAria,
|
|
12
|
-
} from '@ngbase/adk/breadcrumb';
|
|
13
|
-
|
|
14
|
-
@Component({
|
|
15
|
-
selector: '<%= name %>-breadcrumbs',
|
|
16
|
-
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
17
|
-
hostDirectives: [NgbBreadcrumbs],
|
|
18
|
-
template: `<ng-content />`,
|
|
19
|
-
host: {
|
|
20
|
-
class: 'flex items-center gap-2',
|
|
21
|
-
},
|
|
22
|
-
})
|
|
23
|
-
export class Breadcrumbs {}
|
|
24
|
-
|
|
25
|
-
@Component({
|
|
26
|
-
selector: '<%= name %>-breadcrumb',
|
|
27
|
-
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
28
|
-
providers: [aliasBreadcrumb(Breadcrumb)],
|
|
29
|
-
viewProviders: [provideIcons({ lucideChevronRight })],
|
|
30
|
-
imports: [Icon, NgbBreadcrumbLink, NgbBreadcrumbSeparatorAria],
|
|
31
|
-
template: `
|
|
32
|
-
<a class='hover:text-primary aria-[current="page"]:text-primary' ngbBreadcrumbLink>
|
|
33
|
-
<ng-content />
|
|
34
|
-
</a>
|
|
35
|
-
@if (!active()) {
|
|
36
|
-
<<%= name %>-icon ngbBreadcrumbSeparatorAria name="lucideChevronRight" class="text-muted" />
|
|
37
|
-
}
|
|
38
|
-
`,
|
|
39
|
-
host: {
|
|
40
|
-
class: 'flex items-center gap-2 text-muted',
|
|
41
|
-
},
|
|
42
|
-
})
|
|
43
|
-
export class Breadcrumb extends NgbBreadcrumb {}
|
|
44
|
-
|
|
45
|
-
@Directive({
|
|
46
|
-
selector: '[<%= name %>BreadcrumbsSeparator]',
|
|
47
|
-
hostDirectives: [NgbBreadcrumbSeparator],
|
|
48
|
-
})
|
|
49
|
-
export class BreadcrumbsSeparator {}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export { Breadcrumbs, BreadcrumbsSeparator, Breadcrumb } from './breadcrumb';
|
|
@@ -1,29 +0,0 @@
|
|
|
1
|
-
import { ChangeDetectionStrategy, Component, input } from '@angular/core';
|
|
2
|
-
import { ɵFocusStyle as FocusStyle } from '<%= basepath %>/checkbox';
|
|
3
|
-
|
|
4
|
-
export type ButtonVariant = 'primary' | 'secondary' | 'ghost' | 'outline' | 'icon';
|
|
5
|
-
|
|
6
|
-
@Component({
|
|
7
|
-
selector: '[<%= name %>Button]',
|
|
8
|
-
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
9
|
-
hostDirectives: [FocusStyle],
|
|
10
|
-
template: `<ng-content />`,
|
|
11
|
-
host: {
|
|
12
|
-
type: 'button',
|
|
13
|
-
class:
|
|
14
|
-
'inline-flex items-center justify-center rounded-lg px-4 py-2 border disabled:text-muted disabled:cursor-not-allowed',
|
|
15
|
-
'[class]': `variant() === 'primary'
|
|
16
|
-
? 'bg-primary text-foreground disabled:bg-background disabled:border-background border-primary'
|
|
17
|
-
: variant() === 'secondary'
|
|
18
|
-
? 'bg-muted-background disabled:bg-muted-background border-muted-background'
|
|
19
|
-
: variant() === 'ghost' || variant() === 'icon'
|
|
20
|
-
? '[&:not(:disabled)]:hover:bg-muted-background [&:not(:disabled)]:active:bg-muted-background/50 border-transparent'
|
|
21
|
-
: ' text-primary [&:not(:disabled)]:hover:bg-background [&:not(:disabled)]:active:bg-background/50'`,
|
|
22
|
-
},
|
|
23
|
-
})
|
|
24
|
-
export class Button {
|
|
25
|
-
variant = input('primary', {
|
|
26
|
-
alias: '<%= name %>Button',
|
|
27
|
-
transform: (value: ButtonVariant | '') => value || 'primary',
|
|
28
|
-
});
|
|
29
|
-
}
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
import { ChangeDetectionStrategy, Component } from '@angular/core';
|
|
2
|
-
|
|
3
|
-
@Component({
|
|
4
|
-
selector: '<%= name %>-card, [<%= name %>Card]',
|
|
5
|
-
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
6
|
-
template: `<ng-content />`,
|
|
7
|
-
host: {
|
|
8
|
-
class: 'block rounded-lg border bg-foreground p-4',
|
|
9
|
-
},
|
|
10
|
-
})
|
|
11
|
-
export class Card {}
|
|
@@ -1,44 +0,0 @@
|
|
|
1
|
-
import { ChangeDetectionStrategy, Component, Directive } from '@angular/core';
|
|
2
|
-
import {
|
|
3
|
-
NgbCarousel,
|
|
4
|
-
NgbCarouselButton,
|
|
5
|
-
NgbCarouselContainer,
|
|
6
|
-
NgbCarouselItem,
|
|
7
|
-
NgbCarouselSubContainer,
|
|
8
|
-
aliasCarousel,
|
|
9
|
-
} from '@ngbase/adk/carousel';
|
|
10
|
-
|
|
11
|
-
@Component({
|
|
12
|
-
selector: '<%= name %>-carousel',
|
|
13
|
-
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
14
|
-
providers: [aliasCarousel(Carousel)],
|
|
15
|
-
imports: [NgbCarouselContainer, NgbCarouselSubContainer],
|
|
16
|
-
template: `
|
|
17
|
-
<div class="touch-none overflow-hidden" ngbCarouselContainer>
|
|
18
|
-
<div ngbCarouselSubContainer class="relative -ml-4 flex">
|
|
19
|
-
<ng-content select="[<%= name %>CarouselItem]" />
|
|
20
|
-
</div>
|
|
21
|
-
</div>
|
|
22
|
-
<div>
|
|
23
|
-
<ng-content />
|
|
24
|
-
</div>
|
|
25
|
-
`,
|
|
26
|
-
host: {
|
|
27
|
-
class: 'flex flex-col gap-4 relative',
|
|
28
|
-
},
|
|
29
|
-
})
|
|
30
|
-
export class Carousel extends NgbCarousel {}
|
|
31
|
-
|
|
32
|
-
@Directive({
|
|
33
|
-
selector: '[<%= name %>CarouselItem]',
|
|
34
|
-
hostDirectives: [NgbCarouselItem],
|
|
35
|
-
})
|
|
36
|
-
export class CarouselItem {}
|
|
37
|
-
|
|
38
|
-
@Directive({
|
|
39
|
-
selector: '[<%= name %>CarouselButton]',
|
|
40
|
-
hostDirectives: [
|
|
41
|
-
{ directive: NgbCarouselButton, inputs: ['ngbCarouselButton: <%= name %>CarouselButton'] },
|
|
42
|
-
],
|
|
43
|
-
})
|
|
44
|
-
export class CarouselButton {}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export * from './carousel';
|
|
@@ -1,46 +0,0 @@
|
|
|
1
|
-
import { ChangeDetectionStrategy, Component, computed, inject } from '@angular/core';
|
|
2
|
-
import { FormsModule } from '@angular/forms';
|
|
3
|
-
import { FocusStyle } from './focus-style.directive';
|
|
4
|
-
import { CheckboxButton, NgbCheckbox } from '@ngbase/adk/checkbox';
|
|
5
|
-
|
|
6
|
-
@Component({
|
|
7
|
-
selector: '<%= name %>-checkbox',
|
|
8
|
-
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
9
|
-
hostDirectives: [
|
|
10
|
-
{
|
|
11
|
-
directive: NgbCheckbox,
|
|
12
|
-
inputs: ['disabled', 'checked', 'indeterminate'],
|
|
13
|
-
outputs: ['checkedChange', 'change'],
|
|
14
|
-
},
|
|
15
|
-
],
|
|
16
|
-
imports: [FormsModule, FocusStyle, CheckboxButton],
|
|
17
|
-
template: `
|
|
18
|
-
<button
|
|
19
|
-
<%= name %>FocusStyle
|
|
20
|
-
ngbCheckboxButton
|
|
21
|
-
class="custom-checkbox relative flex h-4 w-4 flex-none items-center justify-center rounded border border-primary transition-colors"
|
|
22
|
-
[class]="checkbox.disabled() ? '!border-muted bg-muted' : path() ? 'bg-primary' : ''"
|
|
23
|
-
>
|
|
24
|
-
@if (path(); as d) {
|
|
25
|
-
<svg class="h-full w-full text-foreground" viewBox="0 0 24 24" aria-hidden="true">
|
|
26
|
-
<path [attr.d]="d" stroke="currentColor" stroke-width="2" fill="none" />
|
|
27
|
-
</svg>
|
|
28
|
-
}
|
|
29
|
-
</button>
|
|
30
|
-
<ng-content />
|
|
31
|
-
`,
|
|
32
|
-
host: {
|
|
33
|
-
class: 'inline-flex items-center gap-2 py-1 disabled:opacity-60 disabled:cursor-not-allowed',
|
|
34
|
-
},
|
|
35
|
-
})
|
|
36
|
-
export class Checkbox {
|
|
37
|
-
readonly checkbox = inject(NgbCheckbox);
|
|
38
|
-
|
|
39
|
-
readonly path = computed(() =>
|
|
40
|
-
this.checkbox.indeterminate()
|
|
41
|
-
? 'M6 12L18 12'
|
|
42
|
-
: this.checkbox.checked()
|
|
43
|
-
? 'M20 6L9 17L4 12'
|
|
44
|
-
: '',
|
|
45
|
-
);
|
|
46
|
-
}
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
import { booleanAttribute, Directive, input } from '@angular/core';
|
|
2
|
-
|
|
3
|
-
@Directive({
|
|
4
|
-
selector: '[<%= name %>FocusStyle]',
|
|
5
|
-
host: {
|
|
6
|
-
class: 'outline-none',
|
|
7
|
-
'[class]': `!unfocus() ? 'focus-visible:ring-2 focus:ring-2 focus:ring-offset-2 ring-primary focus-visible:ring-offset-2 ring-offset-background data-[focus]:ring-2 data-[focus]:ring-offset-2 data-[focus]:ring-offset-background data-[focus]:ring-primary' : ''`,
|
|
8
|
-
},
|
|
9
|
-
})
|
|
10
|
-
export class FocusStyle {
|
|
11
|
-
unfocus = input(false, { transform: booleanAttribute });
|
|
12
|
-
}
|
|
@@ -1,36 +0,0 @@
|
|
|
1
|
-
import { ChangeDetectionStrategy, Component } from '@angular/core';
|
|
2
|
-
import { NgbChip, NgbChipGroup, NgbChipRemove, aliasChip } from '@ngbase/adk/chip';
|
|
3
|
-
import { Button } from '<%= basepath %>/button';
|
|
4
|
-
import { Icon } from '<%= basepath %>/icon';
|
|
5
|
-
import { provideIcons } from '@ng-icons/core';
|
|
6
|
-
import { lucideX } from '@ng-icons/lucide';
|
|
7
|
-
|
|
8
|
-
@Component({
|
|
9
|
-
selector: '<%= name %>-chip-group',
|
|
10
|
-
hostDirectives: [NgbChipGroup],
|
|
11
|
-
template: `<ng-content />`,
|
|
12
|
-
})
|
|
13
|
-
export class ChipGroup<T> {}
|
|
14
|
-
|
|
15
|
-
@Component({
|
|
16
|
-
selector: '<%= name %>-chip, [<%= name %>Chip]',
|
|
17
|
-
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
18
|
-
providers: [aliasChip(Chip)],
|
|
19
|
-
viewProviders: [provideIcons({ lucideX })],
|
|
20
|
-
imports: [Button, Icon, NgbChipRemove],
|
|
21
|
-
template: `<ng-content />
|
|
22
|
-
@if (removable()) {
|
|
23
|
-
<button
|
|
24
|
-
<%= name %>Button="ghost"
|
|
25
|
-
ngbChipRemove
|
|
26
|
-
class="small -my-2 data-[dir=ltr]:-mr-4 data-[dir=rtl]:-ml-4"
|
|
27
|
-
>
|
|
28
|
-
<<%= name %>-icon name="lucideX" />
|
|
29
|
-
</button>
|
|
30
|
-
}`,
|
|
31
|
-
host: {
|
|
32
|
-
class:
|
|
33
|
-
'inline-flex items-center bg-muted-background rounded-lg px-2 py-1 text-xs font-medium',
|
|
34
|
-
},
|
|
35
|
-
})
|
|
36
|
-
export class Chip<T = any> extends NgbChip<T> {}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export * from './chip';
|
|
@@ -1,104 +0,0 @@
|
|
|
1
|
-
import { ChangeDetectionStrategy, Component } from '@angular/core';
|
|
2
|
-
import {
|
|
3
|
-
ColorAlpha,
|
|
4
|
-
ColorAlphaThumb,
|
|
5
|
-
ColorHue,
|
|
6
|
-
ColorHueThumb,
|
|
7
|
-
ColorPickerTrigger,
|
|
8
|
-
ColorSelected,
|
|
9
|
-
ColorSpectrum,
|
|
10
|
-
ColorSpectrumSelector,
|
|
11
|
-
NgbColorInput,
|
|
12
|
-
NgbColorPicker,
|
|
13
|
-
registerColorPicker,
|
|
14
|
-
} from '@ngbase/adk/color-picker';
|
|
15
|
-
import { InputBase } from '@ngbase/adk/form-field';
|
|
16
|
-
|
|
17
|
-
@Component({
|
|
18
|
-
selector: '<%= name %>-color-picker-container',
|
|
19
|
-
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
20
|
-
imports: [
|
|
21
|
-
ColorSpectrum,
|
|
22
|
-
ColorSpectrumSelector,
|
|
23
|
-
ColorSelected,
|
|
24
|
-
ColorHue,
|
|
25
|
-
ColorHueThumb,
|
|
26
|
-
ColorAlpha,
|
|
27
|
-
ColorAlphaThumb,
|
|
28
|
-
],
|
|
29
|
-
template: `
|
|
30
|
-
<div class="flex w-full flex-col">
|
|
31
|
-
<div ngbColorSpectrum class="relative h-[160px] w-full overflow-hidden rounded-md">
|
|
32
|
-
<button
|
|
33
|
-
ngbColorSpectrumSelector
|
|
34
|
-
class="pointer-events-none absolute -left-2 -top-2 h-4 w-4 cursor-pointer rounded-full border"
|
|
35
|
-
></button>
|
|
36
|
-
</div>
|
|
37
|
-
<div class="flex gap-4 p-3">
|
|
38
|
-
<div ngbColorSelected class="aspect-square w-10 rounded-md border bg-slate-500"></div>
|
|
39
|
-
<div class="flex flex-1 flex-col gap-4">
|
|
40
|
-
<div ngbColorHue class="relative h-3">
|
|
41
|
-
<button
|
|
42
|
-
ngbColorHueThumb
|
|
43
|
-
class="border-red pointer-events-none absolute -top-1 h-5 w-5 -translate-x-2.5 cursor-pointer rounded-full border-2"
|
|
44
|
-
></button>
|
|
45
|
-
</div>
|
|
46
|
-
|
|
47
|
-
<div ngbColorAlpha class="relative h-3">
|
|
48
|
-
<button
|
|
49
|
-
ngbColorAlphaThumb
|
|
50
|
-
class="alpha-selector border-red pointer-events-none absolute -top-1 h-5 w-5 -translate-x-2.5 cursor-pointer rounded-full border-2"
|
|
51
|
-
></button>
|
|
52
|
-
</div>
|
|
53
|
-
</div>
|
|
54
|
-
</div>
|
|
55
|
-
@if (presetColors().length) {
|
|
56
|
-
<div class="flex flex-wrap gap-2 border-t p-2 pt-3">
|
|
57
|
-
@for (color of presetColors(); track color) {
|
|
58
|
-
<button
|
|
59
|
-
type="button"
|
|
60
|
-
class="aspect-square w-4 rounded-md border"
|
|
61
|
-
[style.backgroundColor]="color"
|
|
62
|
-
(click)="setValue(color, true)"
|
|
63
|
-
></button>
|
|
64
|
-
}
|
|
65
|
-
</div>
|
|
66
|
-
}
|
|
67
|
-
</div>
|
|
68
|
-
`,
|
|
69
|
-
host: {
|
|
70
|
-
class: 'inline-block min-w-[245px]',
|
|
71
|
-
},
|
|
72
|
-
})
|
|
73
|
-
export class ColorPicker extends NgbColorPicker {}
|
|
74
|
-
|
|
75
|
-
@Component({
|
|
76
|
-
selector: '<%= name %>-color-input',
|
|
77
|
-
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
78
|
-
providers: [registerColorPicker({ picker: ColorPicker, accessor: ColorInput })],
|
|
79
|
-
imports: [ColorPickerTrigger, InputBase],
|
|
80
|
-
template: `
|
|
81
|
-
<input
|
|
82
|
-
ngbInputBase
|
|
83
|
-
type="text"
|
|
84
|
-
[value]="value()"
|
|
85
|
-
(valueChange)="updateValue($event)"
|
|
86
|
-
class="w-full flex-1 bg-transparent outline-none"
|
|
87
|
-
/>
|
|
88
|
-
<button
|
|
89
|
-
#color
|
|
90
|
-
type="button"
|
|
91
|
-
ngbColorPickerTrigger
|
|
92
|
-
[value]="value()"
|
|
93
|
-
[format]="format()"
|
|
94
|
-
[presetColors]="presetColors()"
|
|
95
|
-
(valueChange)="updateValue($event)"
|
|
96
|
-
class="h-5 w-5 flex-none rounded-full border"
|
|
97
|
-
[style.backgroundColor]="value()"
|
|
98
|
-
></button>
|
|
99
|
-
`,
|
|
100
|
-
host: {
|
|
101
|
-
class: '!inline-flex gap-2 items-center',
|
|
102
|
-
},
|
|
103
|
-
})
|
|
104
|
-
export class ColorInput extends NgbColorInput {}
|
|
@@ -1,82 +0,0 @@
|
|
|
1
|
-
import { ChangeDetectionStrategy, Component, inject } from '@angular/core';
|
|
2
|
-
import { FormsModule } from '@angular/forms';
|
|
3
|
-
import { RouterLink } from '@angular/router';
|
|
4
|
-
import { AccessibleGroup, AccessibleItem, Autofocus } from '@ngbase/adk/a11y';
|
|
5
|
-
import { DialogRef } from '@ngbase/adk/portal';
|
|
6
|
-
import { filterFunction, uniqueId } from '@ngbase/adk/utils';
|
|
7
|
-
import { List } from '<%= basepath %>/list';
|
|
8
|
-
|
|
9
|
-
export interface CommandGroup {
|
|
10
|
-
name: string;
|
|
11
|
-
items: CommandItem[];
|
|
12
|
-
}
|
|
13
|
-
|
|
14
|
-
export interface CommandItem {
|
|
15
|
-
name: string;
|
|
16
|
-
link: string;
|
|
17
|
-
}
|
|
18
|
-
|
|
19
|
-
@Component({
|
|
20
|
-
selector: '<%= name %>-command',
|
|
21
|
-
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
22
|
-
imports: [FormsModule, List, AccessibleGroup, AccessibleItem, Autofocus, RouterLink],
|
|
23
|
-
template: `
|
|
24
|
-
<div ngbAccessibleGroup [ayId]="ayId" [isPopup]="true" class="static w-full">
|
|
25
|
-
<input
|
|
26
|
-
ngbAutofocus
|
|
27
|
-
[(ngModel)]="filter.search"
|
|
28
|
-
type="text"
|
|
29
|
-
placeholder="Search for apps and commands"
|
|
30
|
-
class="sticky -top-4 w-full border-b bg-foreground p-4 outline-none"
|
|
31
|
-
/>
|
|
32
|
-
@for (group of filter.filteredList(); track group.name) {
|
|
33
|
-
<h4 class="mx-4 my-2 text-sm text-gray-500">{{ group.name }}</h4>
|
|
34
|
-
<div class="flex flex-col px-2">
|
|
35
|
-
@for (item of group.items; track item.name) {
|
|
36
|
-
<a
|
|
37
|
-
<%= name %>List
|
|
38
|
-
class="w-full"
|
|
39
|
-
[ayId]="ayId"
|
|
40
|
-
[routerLink]="item.link || null"
|
|
41
|
-
(click)="close()"
|
|
42
|
-
>
|
|
43
|
-
<svg
|
|
44
|
-
xmlns="http://www.w3.org/2000/svg"
|
|
45
|
-
width="24"
|
|
46
|
-
height="24"
|
|
47
|
-
viewBox="0 0 24 24"
|
|
48
|
-
fill="none"
|
|
49
|
-
stroke="currentColor"
|
|
50
|
-
stroke-width="2"
|
|
51
|
-
stroke-linecap="round"
|
|
52
|
-
stroke-linejoin="round"
|
|
53
|
-
class="mr-2"
|
|
54
|
-
>
|
|
55
|
-
<path d="M21 15a2 2 0 0 1-2 2H7l-4 4V5a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2z" />
|
|
56
|
-
</svg>
|
|
57
|
-
<span>{{ item.name }}</span>
|
|
58
|
-
</a>
|
|
59
|
-
}
|
|
60
|
-
</div>
|
|
61
|
-
}
|
|
62
|
-
</div>
|
|
63
|
-
`,
|
|
64
|
-
host: {
|
|
65
|
-
class: 'block -m-4',
|
|
66
|
-
},
|
|
67
|
-
})
|
|
68
|
-
export class Command {
|
|
69
|
-
private dialogRef = inject<DialogRef<CommandGroup[]>>(DialogRef);
|
|
70
|
-
|
|
71
|
-
readonly ayId = uniqueId();
|
|
72
|
-
|
|
73
|
-
readonly filter = filterFunction<CommandGroup, CommandItem>(this.dialogRef.data!, {
|
|
74
|
-
filter: item => item.name,
|
|
75
|
-
key: 'items',
|
|
76
|
-
childrenFilter: item => item.items,
|
|
77
|
-
});
|
|
78
|
-
|
|
79
|
-
close() {
|
|
80
|
-
this.dialogRef.close();
|
|
81
|
-
}
|
|
82
|
-
}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export * from './command';
|