Skip to content

Commit a658274

Browse files
Feature/390 standalone support (#471)
#close [390](#390) --------- Co-authored-by: Mateusz Stefańczyk <[email protected]>
1 parent 36a465f commit a658274

File tree

16 files changed

+125
-115
lines changed

16 files changed

+125
-115
lines changed

README.md

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,9 @@
55
[![npm version](https://badge.fury.io/js/%40ngu%2Fcarousel.svg)](https://badge.fury.io/js/%40ngu%2Fcarousel)
66

77
<!-- ALL-CONTRIBUTORS-BADGE:START - Do not remove or modify this section -->
8+
89
[![All Contributors](https://img.shields.io/badge/all_contributors-15-orange.svg?style=flat-square)](#contributors-)
10+
911
<!-- ALL-CONTRIBUTORS-BADGE:END -->
1012

1113
Angular Universal carousel
@@ -34,13 +36,13 @@ Demo available [Here](https://ngu-carousel.netlify.app)
3436

3537
## Usage
3638

37-
1. Include CarouselModule in your app module:
39+
1. Include Carousel needed parts in your module or component (all carousel components and directives are standalone):
3840

3941
```typescript
4042
import { NguCarouselModule } from '@ngu/carousel';
4143

4244
@NgModule({
43-
imports: [NguCarouselModule]
45+
imports: [NguCarousel, NguTileComponent, NguCarouselDefDirective]
4446
})
4547
export class AppModule {}
4648
```

apps/ngu-carousel-example/src/app/app.component.ts

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,7 @@ import {
22
AfterViewInit,
33
ChangeDetectionStrategy,
44
ChangeDetectorRef,
5-
Component,
6-
OnInit
5+
Component
76
} from '@angular/core';
87
import { NguCarouselConfig } from '@ngu/carousel';
98
import { interval, Observable } from 'rxjs';

apps/ngu-carousel-example/src/app/app.module.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
import { NgModule } from '@angular/core';
22
import { BrowserModule } from '@angular/platform-browser';
33
import { BrowserAnimationsModule } from '@angular/platform-browser/animations';
4-
import { NguCarouselModule } from '@ngu/carousel';
54

65
import { LayoutModule } from '@angular/cdk/layout';
76
import { MatButtonModule } from '@angular/material/button';
@@ -13,14 +12,15 @@ import { AppRoutingModule } from './app-routing.module';
1312
import { AppComponent } from './app.component';
1413
import { GettingStartedComponent } from './getting-started/getting-started.component';
1514
import { MainNavComponent } from './main-nav/main-nav.component';
15+
import { NguCarousel } from '@ngu/carousel';
1616

1717
@NgModule({
1818
declarations: [AppComponent, MainNavComponent, GettingStartedComponent],
1919
imports: [
2020
BrowserModule,
2121
AppRoutingModule,
2222
BrowserAnimationsModule,
23-
NguCarouselModule,
23+
NguCarousel,
2424
LayoutModule,
2525
MatToolbarModule,
2626
MatButtonModule,
Lines changed: 16 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,26 @@
11
import { CommonModule } from '@angular/common';
22
import { NgModule } from '@angular/core';
3-
import { NguCarouselModule } from '@ngu/carousel';
3+
import {
4+
NguCarousel,
5+
NguCarouselDefDirective,
6+
NguCarouselNextDirective,
7+
NguCarouselPrevDirective,
8+
NguItemComponent
9+
} from '@ngu/carousel';
410

511
import { BannerVerticalRoutingModule } from './banner-vertical-routing.module';
612
import { BannerVerticalComponent } from './banner-vertical.component';
713

814
@NgModule({
915
declarations: [BannerVerticalComponent],
10-
imports: [CommonModule, BannerVerticalRoutingModule, NguCarouselModule]
16+
imports: [
17+
CommonModule,
18+
BannerVerticalRoutingModule,
19+
NguCarousel,
20+
NguItemComponent,
21+
NguCarouselDefDirective,
22+
NguCarouselNextDirective,
23+
NguCarouselPrevDirective
24+
]
1125
})
1226
export class BannerVerticalModule {}
Lines changed: 16 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,25 @@
11
import { CommonModule } from '@angular/common';
22
import { NgModule } from '@angular/core';
3-
import { NguCarouselModule } from '@ngu/carousel';
43
import { BannerRoutingModule } from './banner-routing.module';
54
import { BannerComponent } from './banner.component';
5+
import {
6+
NguCarousel,
7+
NguCarouselDefDirective,
8+
NguCarouselNextDirective,
9+
NguCarouselPrevDirective,
10+
NguItemComponent
11+
} from '@ngu/carousel';
612

713
@NgModule({
814
declarations: [BannerComponent],
9-
imports: [CommonModule, BannerRoutingModule, NguCarouselModule]
15+
imports: [
16+
CommonModule,
17+
BannerRoutingModule,
18+
NguCarousel,
19+
NguItemComponent,
20+
NguCarouselDefDirective,
21+
NguCarouselNextDirective,
22+
NguCarouselPrevDirective
23+
]
1024
})
1125
export class BannerModule {}
Lines changed: 18 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,28 @@
11
import { CommonModule } from '@angular/common';
22
import { NgModule } from '@angular/core';
3-
import { NguCarouselModule } from '@ngu/carousel';
3+
import {
4+
NguCarousel,
5+
NguCarouselDefDirective,
6+
NguCarouselNextDirective,
7+
NguCarouselPrevDirective,
8+
NguItemComponent,
9+
NguTileComponent
10+
} from '@ngu/carousel';
411

512
import { Tile2RoutingModule } from './tile-routing.module';
613
import { Tile2ImagesComponent } from './tile-2-images.component';
714

815
@NgModule({
916
declarations: [Tile2ImagesComponent],
10-
imports: [CommonModule, Tile2RoutingModule, NguCarouselModule]
17+
imports: [
18+
CommonModule,
19+
Tile2RoutingModule,
20+
NguCarousel,
21+
NguCarouselDefDirective,
22+
NguCarouselNextDirective,
23+
NguCarouselPrevDirective,
24+
NguItemComponent,
25+
NguTileComponent
26+
]
1127
})
1228
export class Tile2ImagesModule {}
Lines changed: 18 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,28 @@
11
import { CommonModule } from '@angular/common';
22
import { NgModule } from '@angular/core';
3-
import { NguCarouselModule } from '@ngu/carousel';
3+
import {
4+
NguCarousel,
5+
NguCarouselDefDirective,
6+
NguCarouselNextDirective,
7+
NguCarouselPrevDirective,
8+
NguTileComponent,
9+
NguCarouselPointDirective
10+
} from '@ngu/carousel';
411

512
import { TileRoutingModule } from './tile-routing.module';
613
import { TileComponent } from './tile.component';
714

815
@NgModule({
916
declarations: [TileComponent],
10-
imports: [CommonModule, TileRoutingModule, NguCarouselModule]
17+
imports: [
18+
CommonModule,
19+
TileRoutingModule,
20+
NguCarousel,
21+
NguTileComponent,
22+
NguCarouselDefDirective,
23+
NguCarouselNextDirective,
24+
NguCarouselPrevDirective,
25+
NguCarouselPointDirective
26+
]
1127
})
1228
export class TileModule {}

apps/ngu-carousel-example/src/app/wrapped/wrapped.module.ts

Lines changed: 19 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,30 @@
11
import { NgModule } from '@angular/core';
22
import { HttpClientModule } from '@angular/common/http';
3-
import { NguCarouselModule } from '@ngu/carousel';
3+
import {
4+
NguCarousel,
5+
NguCarouselDefDirective,
6+
NguCarouselNextDirective,
7+
NguCarouselPrevDirective,
8+
NguItemComponent,
9+
NguTileComponent
10+
} from '@ngu/carousel';
411
import { WrappedComponent } from './wrapped.component';
512
import { WrappedCarouselComponent } from './wrapped-carousel/wrapped-carousel.component';
613
import { WrappedRoutingModule } from './wrapped-routing.module';
714
import { CommonModule } from '@angular/common';
815

916
@NgModule({
10-
imports: [WrappedRoutingModule, CommonModule, NguCarouselModule, HttpClientModule],
17+
imports: [
18+
WrappedRoutingModule,
19+
CommonModule,
20+
NguCarousel,
21+
NguCarouselDefDirective,
22+
NguCarouselNextDirective,
23+
NguCarouselPrevDirective,
24+
NguItemComponent,
25+
NguTileComponent,
26+
HttpClientModule
27+
],
1128
exports: [],
1229
declarations: [WrappedComponent, WrappedCarouselComponent],
1330
providers: []

libs/ngu/carousel/src/lib/ngu-carousel.directive.ts

Lines changed: 12 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,14 @@
11
import { Directive, TemplateRef, ViewContainerRef } from '@angular/core';
22

33
@Directive({
4-
selector: '[NguCarouselItem]'
4+
selector: '[NguCarouselItem]',
5+
standalone: true
56
})
67
export class NguCarouselItemDirective {}
78

89
@Directive({
9-
selector: '[NguCarouselNext]'
10+
selector: '[NguCarouselNext]',
11+
standalone: true
1012
})
1113
export class NguCarouselNextDirective {
1214
// @HostBinding('disabled') disabled: boolean;
@@ -17,21 +19,24 @@ export class NguCarouselNextDirective {
1719
}
1820

1921
@Directive({
20-
selector: '[NguCarouselPrev]'
22+
selector: '[NguCarouselPrev]',
23+
standalone: true
2124
})
2225
export class NguCarouselPrevDirective {
2326
// @HostBinding('disabled') disabled: boolean;
2427
// @HostBinding('style.display') display = 'block';
2528
}
2629

2730
@Directive({
28-
selector: '[NguCarouselPoint]'
31+
selector: '[NguCarouselPoint]',
32+
standalone: true
2933
})
3034
export class NguCarouselPointDirective {}
3135

3236
@Directive({
3337
// eslint-disable-next-line @angular-eslint/directive-selector
34-
selector: '[nguCarouselDef]'
38+
selector: '[nguCarouselDef]',
39+
standalone: true
3540
})
3641
export class NguCarouselDefDirective<T> {
3742
when?: (index: number, nodeData: T) => boolean;
@@ -41,7 +46,8 @@ export class NguCarouselDefDirective<T> {
4146

4247
@Directive({
4348
// eslint-disable-next-line @angular-eslint/directive-selector
44-
selector: '[nguCarouselOutlet]'
49+
selector: '[nguCarouselOutlet]',
50+
standalone: true
4551
})
4652
// eslint-disable-next-line @angular-eslint/directive-class-suffix
4753
export class NguCarouselOutlet {

libs/ngu/carousel/src/lib/ngu-carousel.module.ts

Lines changed: 0 additions & 40 deletions
This file was deleted.

0 commit comments

Comments
 (0)