;
@Output() readonly checkedKeysChange = new EventEmitter();
@Output() readonly expandedKeysChange = new EventEmitter
();
@Output() readonly selectedNodeChange = new EventEmitter();
+ @Output() readonly dropOver = new EventEmitter();
+ @Input() draggable: boolean;
@Input() checkable: boolean;
@Input() checkStrictly: boolean;
@Input() checkedKeys = [];
@@ -29,6 +37,10 @@ export class TreeComponent {
@Input() expandedKeys: string[] = [];
@Input() selectedNode: any;
@Input() isNodeSelected = node => this.selectedNode?.id === node.key;
+ @Input() beforeDrop = (event: NzFormatBeforeDropEvent) => {
+ this.dropPosition = event.pos;
+ return of(false);
+ };
onSelectedNodeChange(node) {
this.selectedNode = node.origin.entity;
@@ -44,4 +56,12 @@ export class TreeComponent {
this.expandedKeys = [...event.keys];
this.expandedKeysChange.emit(event.keys);
}
+
+ onDrop(event: DropEvent) {
+ event.event.stopPropagation();
+ event.event.preventDefault();
+ event.pos = this.dropPosition;
+
+ this.dropOver.emit(event);
+ }
}
diff --git a/npm/ng-packs/packages/core/src/lib/tests/api.interceptor.spec.ts b/npm/ng-packs/packages/core/src/lib/tests/api.interceptor.spec.ts
index b4f1dcd408..8285a6a9f4 100644
--- a/npm/ng-packs/packages/core/src/lib/tests/api.interceptor.spec.ts
+++ b/npm/ng-packs/packages/core/src/lib/tests/api.interceptor.spec.ts
@@ -21,8 +21,8 @@ describe('ApiInterceptor', () => {
beforeEach(() => {
spectator = createService();
interceptor = spectator.service;
- store = spectator.get(Store);
- oauthService = spectator.get(OAuthService);
+ store = spectator.inject(Store);
+ oauthService = spectator.inject(OAuthService);
});
it('should add headers to http request', done => {
diff --git a/npm/ng-packs/packages/core/src/lib/tests/application-configuration.service.spec.ts b/npm/ng-packs/packages/core/src/lib/tests/application-configuration.service.spec.ts
index 1fccc14c8f..8bbdabda80 100644
--- a/npm/ng-packs/packages/core/src/lib/tests/application-configuration.service.spec.ts
+++ b/npm/ng-packs/packages/core/src/lib/tests/application-configuration.service.spec.ts
@@ -14,7 +14,7 @@ describe('ApplicationConfigurationService', () => {
beforeEach(() => (spectator = createHttp()));
it('should send a GET to application-configuration API', () => {
- spectator.get(Store).selectSnapshot.andReturn('https://abp.io');
+ spectator.inject(Store).selectSnapshot.andReturn('https://abp.io');
spectator.service.getConfiguration().subscribe();
spectator.expectOne('https://abp.io/api/abp/application-configuration', HttpMethod.GET);
});
diff --git a/npm/ng-packs/packages/core/src/lib/tests/auth.guard.spec.ts b/npm/ng-packs/packages/core/src/lib/tests/auth.guard.spec.ts
index 1e7f5bf585..5e20d7f568 100644
--- a/npm/ng-packs/packages/core/src/lib/tests/auth.guard.spec.ts
+++ b/npm/ng-packs/packages/core/src/lib/tests/auth.guard.spec.ts
@@ -22,13 +22,13 @@ describe('AuthGuard', () => {
});
it('should return true when user logged in', () => {
- spectator.get(OAuthService).hasValidAccessToken.andReturn(true);
+ spectator.inject(OAuthService).hasValidAccessToken.andReturn(true);
expect(guard.canActivate(null, null)).toBe(true);
});
it('should return navigate to login page with redirectUrl state', () => {
- const router = spectator.get(Router);
- spectator.get(OAuthService).hasValidAccessToken.andReturn(false);
+ const router = spectator.inject(Router);
+ spectator.inject(OAuthService).hasValidAccessToken.andReturn(false);
expect(guard.canActivate(null, { url: '/' } as any)).toBe(true);
expect(router.navigate).toHaveBeenCalledWith(['/account/login'], {
diff --git a/npm/ng-packs/packages/core/src/lib/tests/config-state.service.spec.ts b/npm/ng-packs/packages/core/src/lib/tests/config-state.service.spec.ts
index 4b0c9aa682..9a8f9b651e 100644
--- a/npm/ng-packs/packages/core/src/lib/tests/config-state.service.spec.ts
+++ b/npm/ng-packs/packages/core/src/lib/tests/config-state.service.spec.ts
@@ -102,7 +102,7 @@ describe('ConfigStateService', () => {
beforeEach(() => {
spectator = createService();
service = spectator.service;
- store = spectator.get(Store);
+ store = spectator.inject(Store);
});
test('should have the all ConfigState static methods', () => {
const reg = /(?<=static )(.*)(?=\()/gm;
diff --git a/npm/ng-packs/packages/core/src/lib/tests/config.state.spec.ts b/npm/ng-packs/packages/core/src/lib/tests/config.state.spec.ts
index 0f9aa08c1a..d48fd4dde2 100644
--- a/npm/ng-packs/packages/core/src/lib/tests/config.state.spec.ts
+++ b/npm/ng-packs/packages/core/src/lib/tests/config.state.spec.ts
@@ -110,9 +110,9 @@ describe('ConfigState', () => {
beforeEach(() => {
spectator = createService();
- store = spectator.get(Store);
+ store = spectator.inject(Store);
service = spectator.service;
- state = new ConfigState(spectator.get(HttpClient), store);
+ state = new ConfigState(spectator.inject(HttpClient), store);
});
describe('#getAll', () => {
@@ -250,7 +250,7 @@ describe('ConfigState', () => {
dispatchArg = a;
return of(a);
});
- const httpClient = spectator.get(HttpClient);
+ const httpClient = spectator.inject(HttpClient);
httpClient.get.andReturn(res$);
state.addData({ patchState, dispatch } as any).subscribe();
diff --git a/npm/ng-packs/packages/core/src/lib/tests/dynamic-layout.component.spec.ts b/npm/ng-packs/packages/core/src/lib/tests/dynamic-layout.component.spec.ts
index 216df7b681..4d5f53a9ba 100644
--- a/npm/ng-packs/packages/core/src/lib/tests/dynamic-layout.component.spec.ts
+++ b/npm/ng-packs/packages/core/src/lib/tests/dynamic-layout.component.spec.ts
@@ -167,8 +167,8 @@ describe('DynamicLayoutComponent', () => {
beforeEach(async () => {
spectator = createComponent();
- store = spectator.get(Store);
- const routesService = spectator.get(RoutesService);
+ store = spectator.inject(Store);
+ const routesService = spectator.inject(RoutesService);
routesService.add(routes);
store.reset(storeData);
diff --git a/npm/ng-packs/packages/core/src/lib/tests/locale.provider.spec.ts b/npm/ng-packs/packages/core/src/lib/tests/locale.provider.spec.ts
index b5c788635d..b07006a04d 100644
--- a/npm/ng-packs/packages/core/src/lib/tests/locale.provider.spec.ts
+++ b/npm/ng-packs/packages/core/src/lib/tests/locale.provider.spec.ts
@@ -26,12 +26,12 @@ describe('LocaleProvider', () => {
describe('#LOCALE_ID', () => {
test('should equal to currentLang', async () => {
spectator = createComponent();
- const localizationService = spectator.get(LocalizationService);
+ const localizationService = spectator.inject(LocalizationService);
- expect(spectator.get(LOCALE_ID).valueOf()).toBe(localesMapping['en-US'] || 'en-US');
+ expect(spectator.inject(LOCALE_ID).valueOf()).toBe(localesMapping['en-US'] || 'en-US');
(localizationService as any).currentLang = 'tr';
- expect(spectator.get(LOCALE_ID).valueOf()).toBe(localesMapping['tr'] || 'tr');
+ expect(spectator.inject(LOCALE_ID).valueOf()).toBe(localesMapping['tr'] || 'tr');
});
});
});
diff --git a/npm/ng-packs/packages/core/src/lib/tests/localization.pipe.spec.ts b/npm/ng-packs/packages/core/src/lib/tests/localization.pipe.spec.ts
index 7444265e35..a062d2c18a 100644
--- a/npm/ng-packs/packages/core/src/lib/tests/localization.pipe.spec.ts
+++ b/npm/ng-packs/packages/core/src/lib/tests/localization.pipe.spec.ts
@@ -12,8 +12,8 @@ describe('LocalizationPipe', () => {
beforeEach(() => {
spectator = createService();
- pipe = spectator.get(LocalizationPipe);
- store = spectator.get(Store);
+ pipe = spectator.inject(LocalizationPipe);
+ store = spectator.inject(Store);
});
it('should call getLocalization selector', () => {
diff --git a/npm/ng-packs/packages/core/src/lib/tests/localization.service.spec.ts b/npm/ng-packs/packages/core/src/lib/tests/localization.service.spec.ts
index 9d6f6ba3bf..4dc9d51771 100644
--- a/npm/ng-packs/packages/core/src/lib/tests/localization.service.spec.ts
+++ b/npm/ng-packs/packages/core/src/lib/tests/localization.service.spec.ts
@@ -18,7 +18,7 @@ describe('LocalizationService', () => {
beforeEach(() => {
spectator = createService();
- store = spectator.get(Store);
+ store = spectator.inject(Store);
service = spectator.service;
});
@@ -52,7 +52,7 @@ describe('LocalizationService', () => {
describe('#registerLocale', () => {
it('should return registerLocale and then call setRouteReuse', () => {
- const router = spectator.get(Router);
+ const router = spectator.inject(Router);
const shouldReuseRoute = () => true;
router.routeReuseStrategy = { shouldReuseRoute } as any;
diff --git a/npm/ng-packs/packages/core/src/lib/tests/permission.directive.spec.ts b/npm/ng-packs/packages/core/src/lib/tests/permission.directive.spec.ts
index 1b6dabf05b..4c6356634b 100644
--- a/npm/ng-packs/packages/core/src/lib/tests/permission.directive.spec.ts
+++ b/npm/ng-packs/packages/core/src/lib/tests/permission.directive.spec.ts
@@ -42,7 +42,7 @@ describe('PermissionDirective', () => {
});
it('should do nothing when condition is undefined', () => {
- const spy = jest.spyOn(spectator.get(Store), 'select');
+ const spy = jest.spyOn(spectator.inject(Store), 'select');
grantedPolicy$.next(false);
expect(spy.mock.calls).toHaveLength(0);
});
diff --git a/npm/ng-packs/packages/core/src/lib/tests/permission.guard.spec.ts b/npm/ng-packs/packages/core/src/lib/tests/permission.guard.spec.ts
index dcfd27ab69..cd9108ec87 100644
--- a/npm/ng-packs/packages/core/src/lib/tests/permission.guard.spec.ts
+++ b/npm/ng-packs/packages/core/src/lib/tests/permission.guard.spec.ts
@@ -52,7 +52,7 @@ describe('PermissionGuard', () => {
spectator = createService();
guard = spectator.service;
routes = spectator.inject(RoutesService);
- store = spectator.get(Store);
+ store = spectator.inject(Store);
});
it('should return true when the grantedPolicy is true', done => {
diff --git a/npm/ng-packs/packages/core/src/lib/tests/profile-state.service.spec.ts b/npm/ng-packs/packages/core/src/lib/tests/profile-state.service.spec.ts
index 10db71f6c6..967957b537 100644
--- a/npm/ng-packs/packages/core/src/lib/tests/profile-state.service.spec.ts
+++ b/npm/ng-packs/packages/core/src/lib/tests/profile-state.service.spec.ts
@@ -13,7 +13,7 @@ describe('ProfileStateService', () => {
beforeEach(() => {
spectator = createService();
service = spectator.service;
- store = spectator.get(Store);
+ store = spectator.inject(Store);
});
test('should have the all ProfileState static methods', () => {
const reg = /(?<=static )(.*)(?=\()/gm;
diff --git a/npm/ng-packs/packages/core/src/lib/tests/profile.service.spec.ts b/npm/ng-packs/packages/core/src/lib/tests/profile.service.spec.ts
index 6f4d7f3041..4c7b7ba3c1 100644
--- a/npm/ng-packs/packages/core/src/lib/tests/profile.service.spec.ts
+++ b/npm/ng-packs/packages/core/src/lib/tests/profile.service.spec.ts
@@ -14,14 +14,14 @@ describe('ProfileService', () => {
beforeEach(() => (spectator = createHttp()));
it('should send a GET to my-profile API', () => {
- spectator.get(Store).selectSnapshot.andReturn('https://abp.io');
+ spectator.inject(Store).selectSnapshot.andReturn('https://abp.io');
spectator.service.get().subscribe();
spectator.expectOne('https://abp.io/api/identity/my-profile', HttpMethod.GET);
});
it('should send a POST to change-password API', () => {
const mock = { currentPassword: 'test', newPassword: 'test' };
- spectator.get(Store).selectSnapshot.andReturn('https://abp.io');
+ spectator.inject(Store).selectSnapshot.andReturn('https://abp.io');
spectator.service.changePassword(mock).subscribe();
const req = spectator.expectOne(
'https://abp.io/api/identity/my-profile/change-password',
@@ -38,7 +38,7 @@ describe('ProfileService', () => {
surname: 'Doe',
phoneNumber: '+123456',
};
- spectator.get(Store).selectSnapshot.andReturn('https://abp.io');
+ spectator.inject(Store).selectSnapshot.andReturn('https://abp.io');
spectator.service.update(mock).subscribe();
const req = spectator.expectOne('https://abp.io/api/identity/my-profile', HttpMethod.PUT);
expect(req.request.body).toEqual(mock);
diff --git a/npm/ng-packs/packages/core/src/lib/tests/profile.state.spec.ts b/npm/ng-packs/packages/core/src/lib/tests/profile.state.spec.ts
index 380ea53b1c..2ab5f1dff2 100644
--- a/npm/ng-packs/packages/core/src/lib/tests/profile.state.spec.ts
+++ b/npm/ng-packs/packages/core/src/lib/tests/profile.state.spec.ts
@@ -26,7 +26,7 @@ describe('ProfileState', () => {
beforeEach(() => {
spectator = createService();
- profileService = spectator.get(ProfileService);
+ profileService = spectator.inject(ProfileService);
state = new ProfileState(profileService);
});
diff --git a/npm/ng-packs/packages/core/src/lib/tests/replaceable-components.state.spec.ts b/npm/ng-packs/packages/core/src/lib/tests/replaceable-components.state.spec.ts
index dc113c433c..be063c4844 100644
--- a/npm/ng-packs/packages/core/src/lib/tests/replaceable-components.state.spec.ts
+++ b/npm/ng-packs/packages/core/src/lib/tests/replaceable-components.state.spec.ts
@@ -25,7 +25,7 @@ describe('ReplaceableComponentsState', () => {
});
it('should add a component to the state', () => {
- const store = spectator.get(Store);
+ const store = spectator.inject(Store);
expect(store.selectSnapshot(ReplaceableComponentsState.getAll)).toEqual([]);
store.dispatch(new AddReplaceableComponent({ component: DummyComponent, key: 'Dummy' }));
expect(store.selectSnapshot(ReplaceableComponentsState.getComponent('Dummy'))).toEqual({
@@ -35,7 +35,7 @@ describe('ReplaceableComponentsState', () => {
});
it('should replace a exist component', () => {
- const store = spectator.get(Store);
+ const store = spectator.inject(Store);
store.dispatch(new AddReplaceableComponent({ component: DummyComponent, key: 'Dummy' }));
store.dispatch(new AddReplaceableComponent({ component: null, key: 'Dummy' }));
expect(store.selectSnapshot(ReplaceableComponentsState.getComponent('Dummy'))).toEqual({
@@ -47,7 +47,7 @@ describe('ReplaceableComponentsState', () => {
it('should call reloadRoute when reload parameter is given as true to AddReplaceableComponent', async () => {
const spy = jest.spyOn(router, 'navigateByUrl');
- const store = spectator.get(Store);
+ const store = spectator.inject(Store);
store.dispatch(new AddReplaceableComponent({ component: DummyComponent, key: 'Dummy' }));
store.dispatch(new AddReplaceableComponent({ component: null, key: 'Dummy' }, true));
diff --git a/npm/ng-packs/packages/core/src/lib/tests/rest.service.spec.ts b/npm/ng-packs/packages/core/src/lib/tests/rest.service.spec.ts
index 96bbc197d0..601c9dd6d2 100644
--- a/npm/ng-packs/packages/core/src/lib/tests/rest.service.spec.ts
+++ b/npm/ng-packs/packages/core/src/lib/tests/rest.service.spec.ts
@@ -20,7 +20,7 @@ describe('HttpClient testing', () => {
beforeEach(() => {
spectator = createHttp();
- store = spectator.get(Store);
+ store = spectator.inject(Store);
store.reset({
ConfigState: {
environment: {
diff --git a/npm/ng-packs/packages/core/src/lib/tests/session-state.service.spec.ts b/npm/ng-packs/packages/core/src/lib/tests/session-state.service.spec.ts
index cff6f9e239..d1c4dd5024 100644
--- a/npm/ng-packs/packages/core/src/lib/tests/session-state.service.spec.ts
+++ b/npm/ng-packs/packages/core/src/lib/tests/session-state.service.spec.ts
@@ -17,7 +17,7 @@ describe('SessionStateService', () => {
beforeEach(() => {
spectator = createService();
service = spectator.service;
- store = spectator.get(Store);
+ store = spectator.inject(Store);
});
test('should have the all SessionState static methods', () => {
const reg = /(?<=static )(.*)(?=\()/gm;
diff --git a/npm/ng-packs/packages/feature-management/src/lib/tests/feature-management-state.service.spec.ts b/npm/ng-packs/packages/feature-management/src/lib/tests/feature-management-state.service.spec.ts
index 59dc3701a2..5d59755cbd 100644
--- a/npm/ng-packs/packages/feature-management/src/lib/tests/feature-management-state.service.spec.ts
+++ b/npm/ng-packs/packages/feature-management/src/lib/tests/feature-management-state.service.spec.ts
@@ -16,7 +16,7 @@ describe('FeatureManagementStateService', () => {
beforeEach(() => {
spectator = createService();
service = spectator.service;
- store = spectator.get(Store);
+ store = spectator.inject(Store);
});
test('should have the all FeatureManagementState static methods', () => {
diff --git a/npm/ng-packs/packages/identity/src/lib/tests/identity-state.service.spec.ts b/npm/ng-packs/packages/identity/src/lib/tests/identity-state.service.spec.ts
index dcf3193eea..ac0952d9c0 100644
--- a/npm/ng-packs/packages/identity/src/lib/tests/identity-state.service.spec.ts
+++ b/npm/ng-packs/packages/identity/src/lib/tests/identity-state.service.spec.ts
@@ -13,7 +13,7 @@ describe('IdentityStateService', () => {
beforeEach(() => {
spectator = createService();
service = spectator.service;
- store = spectator.get(Store);
+ store = spectator.inject(Store);
});
test('should have the all IdentityState static methods', () => {
diff --git a/npm/ng-packs/packages/permission-management/src/lib/tests/permission-management-state.service.spec.ts b/npm/ng-packs/packages/permission-management/src/lib/tests/permission-management-state.service.spec.ts
index f1d344c7ac..bdc2c9d490 100644
--- a/npm/ng-packs/packages/permission-management/src/lib/tests/permission-management-state.service.spec.ts
+++ b/npm/ng-packs/packages/permission-management/src/lib/tests/permission-management-state.service.spec.ts
@@ -16,7 +16,7 @@ describe('PermissionManagementStateService', () => {
beforeEach(() => {
spectator = createService();
service = spectator.service;
- store = spectator.get(Store);
+ store = spectator.inject(Store);
});
test('should have the all PermissionManagementState static methods', () => {
const reg = /(?<=static )(.*)(?=\()/gm;
diff --git a/npm/ng-packs/packages/tenant-management/src/lib/tests/tenant-management-state.service.spec.ts b/npm/ng-packs/packages/tenant-management/src/lib/tests/tenant-management-state.service.spec.ts
index bd9017a2c7..befd819b70 100644
--- a/npm/ng-packs/packages/tenant-management/src/lib/tests/tenant-management-state.service.spec.ts
+++ b/npm/ng-packs/packages/tenant-management/src/lib/tests/tenant-management-state.service.spec.ts
@@ -16,7 +16,7 @@ describe('TenantManagementStateService', () => {
beforeEach(() => {
spectator = createService();
service = spectator.service;
- store = spectator.get(Store);
+ store = spectator.inject(Store);
});
test('should have the all TenantManagementState static methods', () => {
diff --git a/npm/ng-packs/packages/theme-shared/extensions/src/tests/form-props.util.spec.ts b/npm/ng-packs/packages/theme-shared/extensions/src/tests/form-props.util.spec.ts
index af1edbb9fb..123912cb9a 100644
--- a/npm/ng-packs/packages/theme-shared/extensions/src/tests/form-props.util.spec.ts
+++ b/npm/ng-packs/packages/theme-shared/extensions/src/tests/form-props.util.spec.ts
@@ -126,8 +126,8 @@ describe('Form Prop Utils', () => {
function* getInjected(spectator: SpectatorService) {
yield spectator.service;
- yield spectator.get(EXTENSIONS_IDENTIFIER);
- yield spectator.get(LocalizationService);
+ yield spectator.inject(EXTENSIONS_IDENTIFIER);
+ yield spectator.inject(LocalizationService);
}
interface Foo {
diff --git a/npm/ng-packs/packages/theme-shared/src/lib/tests/append-content.token.spec.ts b/npm/ng-packs/packages/theme-shared/src/lib/tests/append-content.token.spec.ts
index bcf48a0125..fe3b0ac37c 100644
--- a/npm/ng-packs/packages/theme-shared/src/lib/tests/append-content.token.spec.ts
+++ b/npm/ng-packs/packages/theme-shared/src/lib/tests/append-content.token.spec.ts
@@ -15,8 +15,8 @@ describe('AppendContentToken', () => {
beforeEach(() => (spectator = createComponent()));
it('should insert a style element to the DOM', () => {
- spectator.get(THEME_SHARED_APPEND_CONTENT);
- expect(spectator.get(DomInsertionService).has(styles)).toBe(true);
+ spectator.inject(THEME_SHARED_APPEND_CONTENT);
+ expect(spectator.inject(DomInsertionService).has(styles)).toBe(true);
});
it('should be loaded the chart.js', done => {
@@ -25,6 +25,6 @@ describe('AppendContentToken', () => {
done();
});
- spectator.get(THEME_SHARED_APPEND_CONTENT);
+ spectator.inject(THEME_SHARED_APPEND_CONTENT);
});
});
diff --git a/npm/ng-packs/packages/theme-shared/src/lib/tests/breadcrumb.component.spec.ts b/npm/ng-packs/packages/theme-shared/src/lib/tests/breadcrumb.component.spec.ts
index bb8522c4a5..1712baef99 100644
--- a/npm/ng-packs/packages/theme-shared/src/lib/tests/breadcrumb.component.spec.ts
+++ b/npm/ng-packs/packages/theme-shared/src/lib/tests/breadcrumb.component.spec.ts
@@ -54,8 +54,8 @@ describe('BreadcrumbComponent', () => {
beforeEach(() => {
spectator = createRouting();
- routes = spectator.get(RoutesService);
- store = spectator.get(Store);
+ routes = spectator.inject(RoutesService);
+ store = spectator.inject(Store);
});
it('should display the breadcrumb', async () => {
diff --git a/npm/ng-packs/packages/theme-shared/src/lib/tests/error.handler.spec.ts b/npm/ng-packs/packages/theme-shared/src/lib/tests/error.handler.spec.ts
index bacbb93ed0..89e9239b6e 100644
--- a/npm/ng-packs/packages/theme-shared/src/lib/tests/error.handler.spec.ts
+++ b/npm/ng-packs/packages/theme-shared/src/lib/tests/error.handler.spec.ts
@@ -52,7 +52,7 @@ describe('ErrorHandler', () => {
beforeEach(() => {
spectator = createService();
service = spectator.service;
- store = spectator.get(Store);
+ store = spectator.inject(Store);
store.selectSnapshot = jest.fn(() => '/x');
});
@@ -189,7 +189,7 @@ describe('ErrorHandler', () => {
test('should call error method of ConfirmationService when authenticated error occurs with _AbpErrorFormat header', done => {
spectator
- .get(Actions)
+ .inject(Actions)
.pipe(ofActionDispatched(Navigate))
.subscribe(({ path, queryParams, extras }) => {
expect(path).toEqual(['/account/login']);
@@ -281,7 +281,7 @@ describe('ErrorHandler with custom error component', () => {
beforeEach(() => {
spectator = createService();
service = spectator.service;
- store = spectator.get(Store);
+ store = spectator.inject(Store);
store.selectSnapshot = jest.fn(() => '/x');
});
diff --git a/npm/ng-packs/packages/theme-shared/src/lib/tests/loader-bar.component.spec.ts b/npm/ng-packs/packages/theme-shared/src/lib/tests/loader-bar.component.spec.ts
index e363dacfd1..2ae7c6aedf 100644
--- a/npm/ng-packs/packages/theme-shared/src/lib/tests/loader-bar.component.spec.ts
+++ b/npm/ng-packs/packages/theme-shared/src/lib/tests/loader-bar.component.spec.ts
@@ -22,7 +22,7 @@ describe('LoaderBarComponent', () => {
spectator = createHost('');
spectator.component.intervalPeriod = 1;
spectator.component.stopDelay = 1;
- router = spectator.get(Router);
+ router = spectator.inject(Router);
(router as any).events = events$;
});
@@ -34,7 +34,7 @@ describe('LoaderBarComponent', () => {
it('should increase the progressLevel', done => {
spectator.detectChanges();
- spectator.get(Store).dispatch(new StartLoader(new HttpRequest('GET', 'test')));
+ spectator.inject(Store).dispatch(new StartLoader(new HttpRequest('GET', 'test')));
spectator.detectChanges();
setTimeout(() => {
expect(spectator.component.progressLevel > 0).toBeTruthy();
@@ -44,7 +44,7 @@ describe('LoaderBarComponent', () => {
test.skip('should be interval unsubscribed', done => {
spectator.detectChanges();
- spectator.get(Store).dispatch(new StartLoader(new HttpRequest('GET', 'test')));
+ spectator.inject(Store).dispatch(new StartLoader(new HttpRequest('GET', 'test')));
expect(spectator.component.interval.closed).toBe(false);
timer(400).subscribe(() => {
@@ -73,7 +73,7 @@ describe('LoaderBarComponent', () => {
(router as any).events.next(new NavigationStart(1, 'test'));
expect(spectator.component.interval.closed).toBe(false);
- spectator.get(Store).dispatch(new StopLoader(new HttpRequest('GET', 'test')));
+ spectator.inject(Store).dispatch(new StopLoader(new HttpRequest('GET', 'test')));
expect(spectator.component.progressLevel).toBe(100);
timer(2).subscribe(() => {
diff --git a/npm/ng-packs/packages/theme-shared/src/lib/tests/modal-container.component.spec.ts b/npm/ng-packs/packages/theme-shared/src/lib/tests/modal-container.component.spec.ts
index 4ee654e9bd..9cb45127e5 100644
--- a/npm/ng-packs/packages/theme-shared/src/lib/tests/modal-container.component.spec.ts
+++ b/npm/ng-packs/packages/theme-shared/src/lib/tests/modal-container.component.spec.ts
@@ -23,7 +23,7 @@ describe('ModalContainerComponent', () => {
let foo = document.querySelector('div.foo');
expect(foo).toBeNull();
- const cfResolver = spectator.get(ComponentFactoryResolver);
+ const cfResolver = spectator.inject(ComponentFactoryResolver);
const factory = cfResolver.resolveComponentFactory(TestComponent);
componentRef = spectator.component.container.createComponent(factory);
diff --git a/npm/ng-packs/packages/theme-shared/src/lib/tests/modal.component.spec.ts b/npm/ng-packs/packages/theme-shared/src/lib/tests/modal.component.spec.ts
index 00562c4780..b321ee4542 100644
--- a/npm/ng-packs/packages/theme-shared/src/lib/tests/modal.component.spec.ts
+++ b/npm/ng-packs/packages/theme-shared/src/lib/tests/modal.component.spec.ts
@@ -78,7 +78,7 @@ describe('ModalComponent', () => {
});
afterEach(() => {
- const modalService = spectator.get(ModalService);
+ const modalService = spectator.inject(ModalService);
modalService.clearModal();
});
@@ -120,7 +120,7 @@ describe('ModalComponent', () => {
});
it('should open the confirmation popup and works correct', async () => {
- const confirmationService = spectator.get(ConfirmationService);
+ const confirmationService = spectator.inject(ConfirmationService);
const warnSpy = jest.spyOn(confirmationService, 'warn');
await wait0ms();
diff --git a/npm/ng-packs/packages/theme-shared/src/lib/tests/validation-utils.spec.ts b/npm/ng-packs/packages/theme-shared/src/lib/tests/validation-utils.spec.ts
index 3cda3b5403..35a46e1ae9 100644
--- a/npm/ng-packs/packages/theme-shared/src/lib/tests/validation-utils.spec.ts
+++ b/npm/ng-packs/packages/theme-shared/src/lib/tests/validation-utils.spec.ts
@@ -22,7 +22,7 @@ describe('ValidationUtils', () => {
describe('#getPasswordValidators', () => {
it('should return password valdiators', () => {
- const store = spectator.get(Store);
+ const store = spectator.inject(Store);
store.reset({
ConfigState: {
setting: {
diff --git a/npm/ng-packs/scripts/build.ts b/npm/ng-packs/scripts/build.ts
index 9b90d3a4c1..8d442f0740 100644
--- a/npm/ng-packs/scripts/build.ts
+++ b/npm/ng-packs/scripts/build.ts
@@ -23,7 +23,7 @@ import fse from 'fs-extra';
'--no-watch',
'--sync',
'--packages',
- '@abp/ng.core,@abp/ng.theme.shared',
+ '@abp/ng.core,@abp/ng.theme.shared,@abp/ng.components',
],
{ stdout: 'inherit', cwd: '../' },
);
@@ -38,7 +38,7 @@ import fse from 'fs-extra';
'--no-watch',
'--all-packages',
'--excluded-packages',
- '@abp/ng.core,@abp/ng.theme.shared,@abp/ng.feature-management,@abp/ng.permission-management',
+ '@abp/ng.core,@abp/ng.theme.shared,@abp/ng.components,@abp/ng.feature-management,@abp/ng.permission-management',
],
{ stdout: 'inherit', cwd: '../' },
);
diff --git a/npm/ng-packs/yarn.lock b/npm/ng-packs/yarn.lock
index 6c27814650..c94fdbb1bc 100644
--- a/npm/ng-packs/yarn.lock
+++ b/npm/ng-packs/yarn.lock
@@ -2319,10 +2319,10 @@
rxjs "6.5.5"
webpack-sources "1.4.3"
-"@ngx-validate/core@^0.0.8", "@ngx-validate/core@^0.0.9":
- version "0.0.8"
- resolved "https://registry.yarnpkg.com/@ngx-validate/core/-/core-0.0.8.tgz#8577405eb1af0f5002cdda7a86fbcda56280f116"
- integrity sha512-caIG5ao76Xhf7T+pNA8crnpAwK0yqj3i0OAUGZRUq1W+kNgz+ZnrSd4F9an/W4g+38u/8gfUVvsfsm07ju6qYA==
+"@ngx-validate/core@^0.0.9":
+ version "0.0.9"
+ resolved "https://registry.yarnpkg.com/@ngx-validate/core/-/core-0.0.9.tgz#c5baea9e6f2f28c70d1adaf1edde5a9bcc8929c0"
+ integrity sha512-bvgwGr3l47gyxqsfKkI8c7UNMlv8ct/OvwYVDjYI7GBt0A+nhBb+xFmirWbBkMT64bUI0Y8pWIiB5qiewPG1WA==
dependencies:
tslib "^1.9.0"
@@ -2402,13 +2402,13 @@
"@octokit/types" "^5.0.0"
"@octokit/endpoint@^6.0.1":
- version "6.0.3"
- resolved "https://registry.yarnpkg.com/@octokit/endpoint/-/endpoint-6.0.3.tgz#dd09b599662d7e1b66374a177ab620d8cdf73487"
- integrity sha512-Y900+r0gIz+cWp6ytnkibbD95ucEzDSKzlEnaWS52hbCDNcCJYO5mRmWW7HRAnDc7am+N/5Lnd8MppSaTYx1Yg==
+ version "6.0.4"
+ resolved "https://registry.yarnpkg.com/@octokit/endpoint/-/endpoint-6.0.4.tgz#da3eafdee1fabd6e5b6ca311efcba26f0dd99848"
+ integrity sha512-ZJHIsvsClEE+6LaZXskDvWIqD3Ao7+2gc66pRG5Ov4MQtMvCU9wGu1TItw9aGNmRuU9x3Fei1yb+uqGaQnm0nw==
dependencies:
"@octokit/types" "^5.0.0"
is-plain-object "^3.0.0"
- universal-user-agent "^5.0.0"
+ universal-user-agent "^6.0.0"
"@octokit/plugin-enterprise-rest@^6.0.1":
version "6.0.1"
@@ -2454,9 +2454,9 @@
once "^1.4.0"
"@octokit/request@^5.2.0":
- version "5.4.5"
- resolved "https://registry.yarnpkg.com/@octokit/request/-/request-5.4.5.tgz#8df65bd812047521f7e9db6ff118c06ba84ac10b"
- integrity sha512-atAs5GAGbZedvJXXdjtKljin+e2SltEs48B3naJjqWupYl2IUBbB/CJisyjbNHcKpHzb3E+OYEZ46G8eakXgQg==
+ version "5.4.6"
+ resolved "https://registry.yarnpkg.com/@octokit/request/-/request-5.4.6.tgz#e8cc8d4cfc654d30428ea92aaa62168fd5ead7eb"
+ integrity sha512-9r8Sn4CvqFI9LDLHl9P17EZHwj3ehwQnTpTE+LEneb0VBBqSiI/VS4rWIBfBhDrDs/aIGEGZRSB0QWAck8u+2g==
dependencies:
"@octokit/endpoint" "^6.0.1"
"@octokit/request-error" "^2.0.0"
@@ -2465,7 +2465,7 @@
is-plain-object "^3.0.0"
node-fetch "^2.3.0"
once "^1.4.0"
- universal-user-agent "^5.0.0"
+ universal-user-agent "^6.0.0"
"@octokit/rest@^16.28.4":
version "16.43.2"
@@ -2579,9 +2579,9 @@
integrity sha512-9NET910DNaIPngYnLLPeg+Ogzqsi9uM4mSboU5y6p8S5DzMTVEsJZrawi+BoDNUVBa2DhJqQYUFvMDfgU062LQ==
"@sinonjs/commons@^1.7.0":
- version "1.8.0"
- resolved "https://registry.yarnpkg.com/@sinonjs/commons/-/commons-1.8.0.tgz#c8d68821a854c555bba172f3b06959a0039b236d"
- integrity sha512-wEj54PfsZ5jGSwMX68G8ZXFawcSglQSXqCftWX3ec8MDUzQdHgcKvw97awHbY0efQEL5iKUOAmmVtoYgmrSG4Q==
+ version "1.8.1"
+ resolved "https://registry.yarnpkg.com/@sinonjs/commons/-/commons-1.8.1.tgz#e7df00f98a203324f6dc7cc606cad9d4a8ab2217"
+ integrity sha512-892K+kWUUi3cl+LlqEWIDrhvLgdL79tECi8JZUyq6IviKy/DNhuzCRlbHUjxK89f4ypPMMaFnFuR9Ie6DoIMsw==
dependencies:
type-detect "4.0.8"
@@ -4116,9 +4116,9 @@ caniuse-api@^3.0.0:
lodash.uniq "^4.5.0"
caniuse-lite@^1.0.0, caniuse-lite@^1.0.30001032, caniuse-lite@^1.0.30001061, caniuse-lite@^1.0.30001093, caniuse-lite@^1.0.30001097:
- version "1.0.30001100"
- resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001100.tgz#2a58615e0c01cf716ab349b20ca4d86ef944aa4e"
- integrity sha512-0eYdp1+wFCnMlCj2oudciuQn2B9xAFq3WpgpcBIZTxk/1HNA/O2YA7rpeYhnOqsqAJq1AHUgx6i1jtafg7m2zA==
+ version "1.0.30001102"
+ resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001102.tgz#3275e7a8d09548f955f665e532df88de0b63741a"
+ integrity sha512-fOjqRmHjRXv1H1YD6QVLb96iKqnu17TjcLSaX64TwhGYed0P1E1CCWZ9OujbbK4Z/7zax7zAzvQidzdtjx8RcA==
canonical-path@1.0.0:
version "1.0.0"
@@ -5697,9 +5697,9 @@ ee-first@1.1.1:
integrity sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=
electron-to-chromium@^1.3.488:
- version "1.3.498"
- resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.498.tgz#fd7188c8a49d6d0b5df1df55a1f1a4bf2c177457"
- integrity sha512-W1hGwaQEU8j9su2jeAr3aabkPuuXw+j8t73eajGAkEJWbfWiwbxBwQN/8Qmv2qCy3uCDm2rOAaZneYQM8VGC4w==
+ version "1.3.499"
+ resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.499.tgz#06949f19877dafa42915e57dfeb4c1cfb86a8649"
+ integrity sha512-y7FwtQm/8xuLMnYQfBQDYzCpNn+VkSnf4c3Km5TWMNXg7JA5RQBuxmcLaKdDVcIK0K5xGIa7TlxpRt4BdNxNoA==
elliptic@^6.0.0, elliptic@^6.5.2:
version "6.5.3"
@@ -8583,9 +8583,9 @@ less-loader@6.1.0:
schema-utils "^2.6.6"
less@^3.10.3, less@^3.11.1:
- version "3.12.0"
- resolved "https://registry.yarnpkg.com/less/-/less-3.12.0.tgz#f23f9bd94ba72495994865d84e3b5ac6ee8a0363"
- integrity sha512-3mmSHFRP9hGxxQgAKgChfau1LO3ksV/zyZf1qd2ENyBV778NA9Ids99wFRA20jE+5prT7oScKod8PoGlxSe1gg==
+ version "3.12.2"
+ resolved "https://registry.yarnpkg.com/less/-/less-3.12.2.tgz#157e6dd32a68869df8859314ad38e70211af3ab4"
+ integrity sha512-+1V2PCMFkL+OIj2/HrtrvZw0BC0sYLMICJfbQjuj/K8CEnlrFX6R5cKKgzzttsZDHyxQNL1jqMREjKN3ja/E3Q==
dependencies:
tslib "^1.10.0"
optionalDependencies:
@@ -9291,7 +9291,7 @@ mkdirp-promise@^5.0.1:
dependencies:
mkdirp "*"
-mkdirp@*, mkdirp@1.x, mkdirp@^1.0.3, mkdirp@^1.0.4:
+mkdirp@*, mkdirp@1.x, mkdirp@^1.0.3, mkdirp@^1.0.4, mkdirp@~1.0.4:
version "1.0.4"
resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-1.0.4.tgz#3eb5ed62622756d79a5f0e2a221dfebad75c2f7e"
integrity sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==
@@ -12641,7 +12641,7 @@ stylus-loader@3.0.2:
lodash.clonedeep "^4.5.0"
when "~3.6.x"
-stylus@0.54.7, stylus@^0.54.7:
+stylus@0.54.7:
version "0.54.7"
resolved "https://registry.yarnpkg.com/stylus/-/stylus-0.54.7.tgz#c6ce4793965ee538bcebe50f31537bfc04d88cd2"
integrity sha512-Yw3WMTzVwevT6ZTrLCYNHAFmanMxdylelL3hkWNgPMeTCpMwpV3nXjpOHuBXtFv7aiO2xRuQS6OoAdgkNcSNug==
@@ -12655,6 +12655,20 @@ stylus@0.54.7, stylus@^0.54.7:
semver "^6.0.0"
source-map "^0.7.3"
+stylus@^0.54.7:
+ version "0.54.8"
+ resolved "https://registry.yarnpkg.com/stylus/-/stylus-0.54.8.tgz#3da3e65966bc567a7b044bfe0eece653e099d147"
+ integrity sha512-vr54Or4BZ7pJafo2mpf0ZcwA74rpuYCZbxrHBsH8kbcXOwSfvBFwsRfpGO5OD5fhG5HDCFW737PKaawI7OqEAg==
+ dependencies:
+ css-parse "~2.0.0"
+ debug "~3.1.0"
+ glob "^7.1.6"
+ mkdirp "~1.0.4"
+ safer-buffer "^2.1.2"
+ sax "~1.2.4"
+ semver "^6.3.0"
+ source-map "^0.7.3"
+
supports-color@^2.0.0:
version "2.0.0"
resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-2.0.0.tgz#535d045ce6b6363fa40117084629995e9df324c7"
@@ -13062,9 +13076,9 @@ trim-off-newlines@^1.0.0:
integrity sha1-n5up2e+odkw4dpi8v+sshI8RrbM=
ts-jest@^26.0.0:
- version "26.1.2"
- resolved "https://registry.yarnpkg.com/ts-jest/-/ts-jest-26.1.2.tgz#dd2e832ffae9cb803361483b6a3010a6413dc475"
- integrity sha512-V4SyBDO9gOdEh+AF4KtXJeP+EeI4PkOrxcA8ptl4o8nCXUVM5Gg/8ngGKneS5BsZaR9DXVQNqj9k+iqGAnpGow==
+ version "26.1.3"
+ resolved "https://registry.yarnpkg.com/ts-jest/-/ts-jest-26.1.3.tgz#aac928a05fdf13e3e6dfbc8caec3847442667894"
+ integrity sha512-beUTSvuqR9SmKQEylewqJdnXWMVGJRFqSz2M8wKJe7GBMmLZ5zw6XXKSJckbHNMxn+zdB3guN2eOucSw2gBMnw==
dependencies:
bs-logger "0.x"
buffer-from "1.x"
@@ -13097,9 +13111,9 @@ ts-pnp@^1.1.6:
integrity sha512-csd+vJOb/gkzvcCHgTGSChYpy5f1/XKNsmvBGO4JXS+z1v2HobugDz4s1IeFXM3wZB44uczs+eazB5Q/ccdhQw==
ts-toolbelt@^6.9.9:
- version "6.13.6"
- resolved "https://registry.yarnpkg.com/ts-toolbelt/-/ts-toolbelt-6.13.6.tgz#4c9fad69bb3389323fe60982f18cd06b72f7d42a"
- integrity sha512-qqIexrhqCNOuSRCrJMOKor8UJxA4DYMB6fNpBmRAKJgmLXNj8TAiuCrs7Nm08fva+MEdQhEXmsnjBQarNSIWZg==
+ version "6.13.11"
+ resolved "https://registry.yarnpkg.com/ts-toolbelt/-/ts-toolbelt-6.13.11.tgz#46260d1cff0f2d635931df8d32239b73f2ed4f8d"
+ integrity sha512-QmvHwAofS1MAn1ndXCn2AVhxJLipaj4tK26SrhBTiydfgKtbLlU2efpIP/8Jocrc9ynNslZqrhqAesruJMlxCQ==
tsickle@^0.38.1:
version "0.38.1"
@@ -13227,9 +13241,9 @@ typedarray@^0.0.6:
integrity sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=
typescript@^3.5.2, typescript@~3.9.5:
- version "3.9.6"
- resolved "https://registry.yarnpkg.com/typescript/-/typescript-3.9.6.tgz#8f3e0198a34c3ae17091b35571d3afd31999365a"
- integrity sha512-Pspx3oKAPJtjNwE92YS05HQoY7z2SFyOpHo9MqJor3BXAGNaPUs83CuVp9VISFkSjyRfiTpmKuAYGJB7S7hOxw==
+ version "3.9.7"
+ resolved "https://registry.yarnpkg.com/typescript/-/typescript-3.9.7.tgz#98d600a5ebdc38f40cb277522f12dc800e9e25fa"
+ integrity sha512-BLbiRkiBzAwsjut4x/dsibSTB6yWpwT5qWmC2OfuCg3GgVQCSgMs4vEctYPhsaGtd0AeuuHMkjZ2h2WG8MSzRw==
uglify-js@^3.1.4:
version "3.10.0"
@@ -13326,12 +13340,10 @@ universal-user-agent@^4.0.0:
dependencies:
os-name "^3.1.0"
-universal-user-agent@^5.0.0:
- version "5.0.0"
- resolved "https://registry.yarnpkg.com/universal-user-agent/-/universal-user-agent-5.0.0.tgz#a3182aa758069bf0e79952570ca757de3579c1d9"
- integrity sha512-B5TPtzZleXyPrUMKCpEHFmVhMN6EhmJYjG5PQna9s7mXeSqGTLap4OpqLl5FCEFUI3UBmllkETwKf/db66Y54Q==
- dependencies:
- os-name "^3.1.0"
+universal-user-agent@^6.0.0:
+ version "6.0.0"
+ resolved "https://registry.yarnpkg.com/universal-user-agent/-/universal-user-agent-6.0.0.tgz#3381f8503b251c0d9cd21bc1de939ec9df5480ee"
+ integrity sha512-isyNax3wXoKaulPDZWHQqbmIx1k2tb9fb3GGDBRxCscfYV2Ch7WxPArBsFEG8s/safwXTT7H4QGhaIkTp9447w==
universalify@^0.1.0:
version "0.1.2"