Skip to content

Commit 9d59105

Browse files
committed
feat: standalone components (wip)
1 parent ed678c7 commit 9d59105

File tree

299 files changed

+1325
-1141
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

299 files changed

+1325
-1141
lines changed

package-lock.json

Lines changed: 256 additions & 276 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "coreui-angular-dev",
3-
"version": "4.3.10",
3+
"version": "4.4.0-next.0",
44
"description": "CoreUI Components Library for Angular",
55
"copyright": "Copyright 2022 creativeLabs Łukasz Holeczek",
66
"license": "MIT",
@@ -37,7 +37,7 @@
3737
"private": true,
3838
"dependencies": {
3939
"@angular/animations": "^15.1.2",
40-
"@angular/cdk": "^15.1.2",
40+
"@angular/cdk": "^15.1.3",
4141
"@angular/common": "^15.1.2",
4242
"@angular/compiler": "^15.1.2",
4343
"@angular/core": "^15.1.2",
@@ -55,21 +55,21 @@
5555
"zone.js": "~0.12.0"
5656
},
5757
"devDependencies": {
58-
"@angular-devkit/build-angular": "^15.1.3",
58+
"@angular-devkit/build-angular": "^15.1.4",
5959
"@angular-eslint/builder": "^15.2.0",
6060
"@angular-eslint/eslint-plugin": "^15.2.0",
6161
"@angular-eslint/eslint-plugin-template": "^15.2.0",
6262
"@angular-eslint/schematics": "^15.2.0",
6363
"@angular-eslint/template-parser": "^15.2.0",
64-
"@angular/cli": "^15.1.3",
64+
"@angular/cli": "^15.1.4",
6565
"@angular/compiler-cli": "^15.1.2",
6666
"@angular/language-service": "^15.1.2",
6767
"@coreui/icons": "^3.0.0",
6868
"@types/jasmine": "~4.3.1",
6969
"@types/lodash-es": "^4.17.6",
7070
"@types/node": "^18.11.18",
71-
"@typescript-eslint/eslint-plugin": "^5.49.0",
72-
"@typescript-eslint/parser": "^5.49.0",
71+
"@typescript-eslint/eslint-plugin": "^5.50.0",
72+
"@typescript-eslint/parser": "^5.50.0",
7373
"eslint": "~8.33.0",
7474
"jasmine-core": "^4.5.0",
7575
"karma": "^6.4.1",

projects/coreui-angular-chartjs/src/lib/chartjs.component.spec.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@ describe('ChartjsComponent', () => {
2929
Chart.register(...registerables);
3030

3131
await TestBed.configureTestingModule({
32-
declarations: [ChartjsComponent]
32+
imports: [ChartjsComponent]
3333
})
3434
.compileComponents();
3535
});

projects/coreui-angular-chartjs/src/lib/chartjs.component.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,7 @@ let nextId = 0;
2828
selector: 'c-chart',
2929
templateUrl: './chartjs.component.html',
3030
styleUrls: ['./chartjs.component.scss'],
31+
standalone: true,
3132
exportAs: 'cChart'
3233
})
3334
export class ChartjsComponent<TType extends ChartType = ChartType, TData = DefaultDataPoint<TType>, TLabel = unknown> implements AfterViewInit, OnDestroy, OnChanges {

projects/coreui-angular-chartjs/src/lib/chartjs.module.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ import { NgModule } from '@angular/core';
22
import { ChartjsComponent } from './chartjs.component';
33

44
@NgModule({
5-
declarations: [
5+
imports: [
66
ChartjsComponent
77
],
88
exports: [

projects/coreui-angular/src/lib/accordion/accordion-button/accordion-button.directive.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,8 @@
11
import { Directive, HostBinding, Input } from '@angular/core';
22

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

projects/coreui-angular/src/lib/accordion/accordion-item/accordion-item.component.spec.ts

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,22 +1,22 @@
11
import { ComponentFixture, TestBed } from '@angular/core/testing';
2-
3-
import { AccordionItemComponent } from './accordion-item.component';
42
import { NoopAnimationsModule } from '@angular/platform-browser/animations';
3+
54
import { CollapseModule } from '../../collapse';
6-
import { AccordionService } from '../accordion.service';
75
import { AccordionButtonDirective } from '../accordion-button/accordion-button.directive';
6+
import { AccordionService } from '../accordion.service';
7+
import { AccordionItemComponent } from './accordion-item.component';
88

99
describe('AccordionItemComponent', () => {
1010
let component: AccordionItemComponent;
1111
let fixture: ComponentFixture<AccordionItemComponent>;
1212

1313
beforeEach(async () => {
1414
await TestBed.configureTestingModule({
15-
declarations: [ AccordionItemComponent, AccordionButtonDirective ],
15+
declarations: [],
1616
providers: [AccordionService],
17-
imports: [NoopAnimationsModule, CollapseModule]
17+
imports: [NoopAnimationsModule, AccordionButtonDirective, AccordionItemComponent, CollapseModule]
1818
})
19-
.compileComponents();
19+
.compileComponents();
2020
});
2121

2222
beforeEach(() => {

projects/coreui-angular/src/lib/accordion/accordion-item/accordion-item.component.ts

Lines changed: 29 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -5,12 +5,16 @@ import {
55
HostBinding,
66
Input,
77
OnDestroy,
8-
OnInit, QueryList,
8+
OnInit,
9+
QueryList
910
} from '@angular/core';
11+
import { BooleanInput, coerceBooleanProperty } from '@angular/cdk/coercion';
1012

11-
import { AccordionService } from '../accordion.service';
13+
import { CollapseModule } from '../../collapse';
1214
import { TemplateIdDirective } from '../../shared';
13-
import { BooleanInput, coerceBooleanProperty } from '@angular/cdk/coercion';
15+
import { AccordionButtonDirective } from '../accordion-button/accordion-button.directive';
16+
import { AccordionService } from '../accordion.service';
17+
import { CommonModule } from '@angular/common';
1418

1519
let nextId = 0;
1620

@@ -19,49 +23,53 @@ let nextId = 0;
1923
templateUrl: './accordion-item.component.html',
2024
styleUrls: ['./accordion-item.component.scss'],
2125
exportAs: 'cAccordionItem',
26+
standalone: true,
27+
imports: [AccordionButtonDirective, CollapseModule, CommonModule]
2228
})
2329
export class AccordionItemComponent implements OnInit, OnDestroy, AfterContentInit {
2430

31+
constructor(
32+
private accordionService: AccordionService
33+
) { }
34+
2535
static ngAcceptInputType_visible: BooleanInput;
36+
contentId = `accordion-item-${nextId++}`;
37+
itemContext = { $implicit: this.visible };
38+
templates: any = {};
39+
@ContentChildren(TemplateIdDirective, { descendants: true }) contentTemplates!: QueryList<TemplateIdDirective>;
40+
41+
private _visible: boolean = false;
42+
43+
get visible() {
44+
return this._visible;
45+
}
2646

2747
/**
2848
* Toggle an accordion item programmatically
2949
* @type boolean
3050
* @default false
3151
*/
3252
@Input()
33-
set visible(value: boolean){
53+
set visible(value: boolean) {
3454
this._visible = coerceBooleanProperty(value);
3555
}
36-
get visible() {
37-
return this._visible;
56+
57+
get open() {
58+
return this.visible;
3859
}
39-
private _visible: boolean = false;
4060

4161
@Input()
4262
set open(value: boolean) {
43-
console.warn('c-accordion-item "open" prop is deprecated, use "visible" prop instead.')
63+
console.warn('c-accordion-item "open" prop is deprecated, use "visible" prop instead.');
4464
this.visible = value || this.visible;
4565
}
46-
get open() {
47-
return this.visible;
48-
}
4966

5067
@HostBinding('class')
5168
get hostClasses(): any {
5269
return {
53-
'accordion-item': true,
70+
'accordion-item': true
5471
};
5572
}
56-
contentId = `accordion-item-${nextId++}`;
57-
itemContext = { $implicit: this.visible };
58-
templates: any = {};
59-
60-
@ContentChildren(TemplateIdDirective, {descendants: true}) contentTemplates!: QueryList<TemplateIdDirective>;
61-
62-
constructor(
63-
private accordionService: AccordionService,
64-
) { }
6573

6674
ngOnInit(): void {
6775
this.accordionService.addItem(this);

projects/coreui-angular/src/lib/accordion/accordion.module.ts

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -8,20 +8,19 @@ import { CollapseModule } from '../collapse';
88
import { SharedModule } from '../shared';
99

1010
@NgModule({
11-
declarations: [
12-
AccordionComponent,
13-
AccordionButtonDirective,
14-
AccordionItemComponent,
15-
],
11+
declarations: [],
1612
imports: [
1713
CommonModule,
14+
AccordionButtonDirective,
15+
AccordionComponent,
16+
AccordionItemComponent,
1817
CollapseModule,
1918
SharedModule
2019
],
2120
exports: [
2221
AccordionComponent,
2322
AccordionButtonDirective,
24-
AccordionItemComponent,
23+
AccordionItemComponent
2524
],
2625
providers: [
2726
AccordionService

projects/coreui-angular/src/lib/accordion/accordion/accordion.component.spec.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ describe('AccordionComponent', () => {
88

99
beforeEach(async () => {
1010
await TestBed.configureTestingModule({
11-
declarations: [ AccordionComponent ]
11+
imports: [ AccordionComponent ]
1212
})
1313
.compileComponents();
1414
});

projects/coreui-angular/src/lib/accordion/accordion/accordion.component.ts

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,15 @@
11
import { Component, HostBinding, Input } from '@angular/core';
2+
import { BooleanInput, coerceBooleanProperty } from '@angular/cdk/coercion';
23

34
import { AccordionService } from '../accordion.service';
4-
import { BooleanInput, coerceBooleanProperty } from '@angular/cdk/coercion';
55

66
@Component({
77
selector: 'c-accordion',
88
template: `<ng-content></ng-content>`,
99
styleUrls: ['./accordion.component.scss'],
1010
exportAs: 'cAccordionItem',
11-
providers: [AccordionService]
11+
providers: [AccordionService],
12+
standalone: true
1213
})
1314
export class AccordionComponent {
1415

projects/coreui-angular/src/lib/alert/alert-heading.directive.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,8 @@
11
import { Directive, HostBinding } from '@angular/core';
22

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

projects/coreui-angular/src/lib/alert/alert-link.directive.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,8 @@
11
import { Directive, HostBinding } from '@angular/core';
22

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

projects/coreui-angular/src/lib/alert/alert.component.spec.ts

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -9,10 +9,10 @@ describe('AlertComponent', () => {
99

1010
beforeEach(waitForAsync(() => {
1111
TestBed.configureTestingModule({
12-
declarations: [ AlertComponent ],
13-
imports: [BrowserAnimationsModule]
12+
declarations: [],
13+
imports: [BrowserAnimationsModule, AlertComponent]
1414
})
15-
.compileComponents();
15+
.compileComponents();
1616
}));
1717

1818
beforeEach(() => {

0 commit comments

Comments
 (0)