diff --git a/angular.json b/angular.json index 1ecc329e..f07cbe8d 100644 --- a/angular.json +++ b/angular.json @@ -729,6 +729,39 @@ } } }, + "ucap-webmessenger-ui-settings": { + "projectType": "library", + "root": "projects/ucap-webmessenger-ui-settings", + "sourceRoot": "projects/ucap-webmessenger-ui-settings/src", + "prefix": "ucap-settings", + "architect": { + "build": { + "builder": "@angular-devkit/build-ng-packagr:build", + "options": { + "tsConfig": "projects/ucap-webmessenger-ui-settings/tsconfig.lib.json", + "project": "projects/ucap-webmessenger-ui-settings/ng-package.json" + } + }, + "test": { + "builder": "@angular-devkit/build-angular:karma", + "options": { + "main": "projects/ucap-webmessenger-ui-settings/src/test.ts", + "tsConfig": "projects/ucap-webmessenger-ui-settings/tsconfig.spec.json", + "karmaConfig": "projects/ucap-webmessenger-ui-settings/karma.conf.js" + } + }, + "lint": { + "builder": "@angular-devkit/build-angular:tslint", + "options": { + "tsConfig": [ + "projects/ucap-webmessenger-ui-settings/tsconfig.lib.json", + "projects/ucap-webmessenger-ui-settings/tsconfig.spec.json" + ], + "exclude": ["**/node_modules/**"] + } + } + } + }, "ucap-webmessenger-protocol": { "projectType": "library", "root": "projects/ucap-webmessenger-protocol", diff --git a/package-lock.json b/package-lock.json index 2dcfa1e4..5152686e 100644 --- a/package-lock.json +++ b/package-lock.json @@ -10737,12 +10737,6 @@ "isobject": "^3.0.1" } }, - "observable-profiler": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/observable-profiler/-/observable-profiler-0.1.1.tgz", - "integrity": "sha512-MhUzV7CqrnlKn69Okqx7IIH2nnKl+ZYAEekD4tnwAOTePtbQwR5+TLnHsHLl5zcYanMRDw9ff36vlRmv04fF7Q==", - "dev": true - }, "obuf": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/obuf/-/obuf-1.1.2.tgz", diff --git a/package.json b/package.json index b4a79426..1839cc1b 100644 --- a/package.json +++ b/package.json @@ -26,7 +26,8 @@ "@angular/core": "~8.2.12", "electron-window-state": "^5.0.3", "fs-extra": "^8.1.0", - "rxjs": "^6.5.2" + "rxjs": "^6.5.2", + "tslib": "^1.10.0" }, "devDependencies": { "@angular-builders/custom-webpack": "^8.2.0", diff --git a/projects/ucap-webmessenger-app/src/app/layouts/messenger/dialogs/settings/messenger-settings.dialog.component.html b/projects/ucap-webmessenger-app/src/app/layouts/messenger/dialogs/settings/messenger-settings.dialog.component.html index 7da16f55..757a1304 100644 --- a/projects/ucap-webmessenger-app/src/app/layouts/messenger/dialogs/settings/messenger-settings.dialog.component.html +++ b/projects/ucap-webmessenger-app/src/app/layouts/messenger/dialogs/settings/messenger-settings.dialog.component.html @@ -10,42 +10,42 @@ 일반 - 하나 + 개인정보취급방침 - 둘 + - group + 알림 - 셋 + - group + 장치 - 넷 + - group + 사용권한 - 넷 + - group + 통화 - 넷 + diff --git a/projects/ucap-webmessenger-app/src/app/layouts/messenger/messenger.layout.module.ts b/projects/ucap-webmessenger-app/src/app/layouts/messenger/messenger.layout.module.ts index 5a0558a1..2c5422fc 100644 --- a/projects/ucap-webmessenger-app/src/app/layouts/messenger/messenger.layout.module.ts +++ b/projects/ucap-webmessenger-app/src/app/layouts/messenger/messenger.layout.module.ts @@ -44,6 +44,7 @@ import { UCapUiRoomModule } from '@ucap-webmessenger/ui-room'; import { UCapUiProfileModule } from '@ucap-webmessenger/ui-profile'; import { UCapUiGroupModule } from '@ucap-webmessenger/ui-group'; import { UCapUiOrganizationModule } from '@ucap-webmessenger/ui-organization'; +import { UCapUiSettingsModule } from '@ucap-webmessenger/ui-settings'; import { AppCommonLayoutModule } from '@app/layouts/common/common.layout.module'; @@ -91,6 +92,7 @@ import { DIALOGS } from './dialogs'; UCapUiProfileModule, UCapUiGroupModule, UCapUiOrganizationModule, + UCapUiSettingsModule, AppCommonLayoutModule ], diff --git a/projects/ucap-webmessenger-ui-settings/README.md b/projects/ucap-webmessenger-ui-settings/README.md new file mode 100644 index 00000000..402cb1d9 --- /dev/null +++ b/projects/ucap-webmessenger-ui-settings/README.md @@ -0,0 +1,24 @@ +# UcapWebmessengerUiSettings + +This library was generated with [Angular CLI](https://github.com/angular/angular-cli) version 8.2.11. + +## Code scaffolding + +Run `ng generate component component-name --project ucap-webmessenger-ui-settings` to generate a new component. You can also use `ng generate directive|pipe|service|class|guard|interface|enum|module --project ucap-webmessenger-ui-settings`. +> Note: Don't forget to add `--project ucap-webmessenger-ui-settings` or else it will be added to the default project in your `angular.json` file. + +## Build + +Run `ng build ucap-webmessenger-ui-settings` to build the project. The build artifacts will be stored in the `dist/` directory. + +## Publishing + +After building your library with `ng build ucap-webmessenger-ui-settings`, go to the dist folder `cd dist/ucap-webmessenger-ui-settings` and run `npm publish`. + +## Running unit tests + +Run `ng test ucap-webmessenger-ui-settings` to execute the unit tests via [Karma](https://karma-runner.github.io). + +## Further help + +To get more help on the Angular CLI use `ng help` or go check out the [Angular CLI README](https://github.com/angular/angular-cli/blob/master/README.md). diff --git a/projects/ucap-webmessenger-ui-settings/karma.conf.js b/projects/ucap-webmessenger-ui-settings/karma.conf.js new file mode 100644 index 00000000..44e86019 --- /dev/null +++ b/projects/ucap-webmessenger-ui-settings/karma.conf.js @@ -0,0 +1,32 @@ +// Karma configuration file, see link for more information +// https://karma-runner.github.io/1.0/config/configuration-file.html + +module.exports = function (config) { + config.set({ + basePath: '', + frameworks: ['jasmine', '@angular-devkit/build-angular'], + plugins: [ + require('karma-jasmine'), + require('karma-chrome-launcher'), + require('karma-jasmine-html-reporter'), + require('karma-coverage-istanbul-reporter'), + require('@angular-devkit/build-angular/plugins/karma') + ], + client: { + clearContext: false // leave Jasmine Spec Runner output visible in browser + }, + coverageIstanbulReporter: { + dir: require('path').join(__dirname, '../../coverage/ucap-webmessenger-ui-settings'), + reports: ['html', 'lcovonly', 'text-summary'], + fixWebpackSourcePaths: true + }, + reporters: ['progress', 'kjhtml'], + port: 9876, + colors: true, + logLevel: config.LOG_INFO, + autoWatch: true, + browsers: ['Chrome'], + singleRun: false, + restartOnFileChange: true + }); +}; diff --git a/projects/ucap-webmessenger-ui-settings/ng-package.json b/projects/ucap-webmessenger-ui-settings/ng-package.json new file mode 100644 index 00000000..6fbd2261 --- /dev/null +++ b/projects/ucap-webmessenger-ui-settings/ng-package.json @@ -0,0 +1,7 @@ +{ + "$schema": "../../node_modules/ng-packagr/ng-package.schema.json", + "dest": "../../dist/ucap-webmessenger-ui-settings", + "lib": { + "entryFile": "src/public-api.ts" + } +} \ No newline at end of file diff --git a/projects/ucap-webmessenger-ui-settings/package.json b/projects/ucap-webmessenger-ui-settings/package.json new file mode 100644 index 00000000..d871cee4 --- /dev/null +++ b/projects/ucap-webmessenger-ui-settings/package.json @@ -0,0 +1,8 @@ +{ + "name": "@ucap-webmessenger/ui-settings", + "version": "0.0.1", + "peerDependencies": { + "@angular/common": "^8.2.11", + "@angular/core": "^8.2.11" + } +} diff --git a/projects/ucap-webmessenger-ui-settings/src/lib/components/call.component.html b/projects/ucap-webmessenger-ui-settings/src/lib/components/call.component.html new file mode 100644 index 00000000..f56649e8 --- /dev/null +++ b/projects/ucap-webmessenger-ui-settings/src/lib/components/call.component.html @@ -0,0 +1 @@ +
일반
diff --git a/projects/ucap-webmessenger-ui-settings/src/lib/components/call.component.scss b/projects/ucap-webmessenger-ui-settings/src/lib/components/call.component.scss new file mode 100644 index 00000000..e69de29b diff --git a/projects/ucap-webmessenger-ui-settings/src/lib/components/call.component.spec.ts b/projects/ucap-webmessenger-ui-settings/src/lib/components/call.component.spec.ts new file mode 100644 index 00000000..0e3c6d90 --- /dev/null +++ b/projects/ucap-webmessenger-ui-settings/src/lib/components/call.component.spec.ts @@ -0,0 +1,24 @@ +import { async, ComponentFixture, TestBed } from '@angular/core/testing'; + +import { CallComponent } from './call.component'; + +describe('Settings::CallComponent', () => { + let component: CallComponent; + let fixture: ComponentFixture; + + beforeEach(async(() => { + TestBed.configureTestingModule({ + declarations: [CallComponent] + }).compileComponents(); + })); + + beforeEach(() => { + fixture = TestBed.createComponent(CallComponent); + component = fixture.componentInstance; + fixture.detectChanges(); + }); + + it('should create', () => { + expect(component).toBeTruthy(); + }); +}); diff --git a/projects/ucap-webmessenger-ui-settings/src/lib/components/call.component.ts b/projects/ucap-webmessenger-ui-settings/src/lib/components/call.component.ts new file mode 100644 index 00000000..092243bc --- /dev/null +++ b/projects/ucap-webmessenger-ui-settings/src/lib/components/call.component.ts @@ -0,0 +1,20 @@ +import { Component, OnInit, ChangeDetectorRef } from '@angular/core'; +import { FormGroup, FormBuilder } from '@angular/forms'; + +@Component({ + selector: 'ucap-settings-call', + templateUrl: './call.component.html', + styleUrls: ['./call.component.scss'] +}) +export class CallComponent implements OnInit { + loginForm: FormGroup; + + constructor( + private formBuilder: FormBuilder, + private changeDetectorRef: ChangeDetectorRef + ) {} + + ngOnInit() {} + + onClickLogin() {} +} diff --git a/projects/ucap-webmessenger-ui-settings/src/lib/components/device.component.html b/projects/ucap-webmessenger-ui-settings/src/lib/components/device.component.html new file mode 100644 index 00000000..f56649e8 --- /dev/null +++ b/projects/ucap-webmessenger-ui-settings/src/lib/components/device.component.html @@ -0,0 +1 @@ +
일반
diff --git a/projects/ucap-webmessenger-ui-settings/src/lib/components/device.component.scss b/projects/ucap-webmessenger-ui-settings/src/lib/components/device.component.scss new file mode 100644 index 00000000..e69de29b diff --git a/projects/ucap-webmessenger-ui-settings/src/lib/components/device.component.spec.ts b/projects/ucap-webmessenger-ui-settings/src/lib/components/device.component.spec.ts new file mode 100644 index 00000000..e5caf65b --- /dev/null +++ b/projects/ucap-webmessenger-ui-settings/src/lib/components/device.component.spec.ts @@ -0,0 +1,24 @@ +import { async, ComponentFixture, TestBed } from '@angular/core/testing'; + +import { DeviceComponent } from './device.component'; + +describe('Settings::DeviceComponent', () => { + let component: DeviceComponent; + let fixture: ComponentFixture; + + beforeEach(async(() => { + TestBed.configureTestingModule({ + declarations: [DeviceComponent] + }).compileComponents(); + })); + + beforeEach(() => { + fixture = TestBed.createComponent(DeviceComponent); + component = fixture.componentInstance; + fixture.detectChanges(); + }); + + it('should create', () => { + expect(component).toBeTruthy(); + }); +}); diff --git a/projects/ucap-webmessenger-ui-settings/src/lib/components/device.component.ts b/projects/ucap-webmessenger-ui-settings/src/lib/components/device.component.ts new file mode 100644 index 00000000..a6298d35 --- /dev/null +++ b/projects/ucap-webmessenger-ui-settings/src/lib/components/device.component.ts @@ -0,0 +1,20 @@ +import { Component, OnInit, ChangeDetectorRef } from '@angular/core'; +import { FormGroup, FormBuilder } from '@angular/forms'; + +@Component({ + selector: 'ucap-settings-device', + templateUrl: './device.component.html', + styleUrls: ['./device.component.scss'] +}) +export class DeviceComponent implements OnInit { + loginForm: FormGroup; + + constructor( + private formBuilder: FormBuilder, + private changeDetectorRef: ChangeDetectorRef + ) {} + + ngOnInit() {} + + onClickLogin() {} +} diff --git a/projects/ucap-webmessenger-ui-settings/src/lib/components/general.component.html b/projects/ucap-webmessenger-ui-settings/src/lib/components/general.component.html new file mode 100644 index 00000000..f56649e8 --- /dev/null +++ b/projects/ucap-webmessenger-ui-settings/src/lib/components/general.component.html @@ -0,0 +1 @@ +
일반
diff --git a/projects/ucap-webmessenger-ui-settings/src/lib/components/general.component.scss b/projects/ucap-webmessenger-ui-settings/src/lib/components/general.component.scss new file mode 100644 index 00000000..e69de29b diff --git a/projects/ucap-webmessenger-ui-settings/src/lib/components/general.component.spec.ts b/projects/ucap-webmessenger-ui-settings/src/lib/components/general.component.spec.ts new file mode 100644 index 00000000..d6a51785 --- /dev/null +++ b/projects/ucap-webmessenger-ui-settings/src/lib/components/general.component.spec.ts @@ -0,0 +1,24 @@ +import { async, ComponentFixture, TestBed } from '@angular/core/testing'; + +import { GeneralComponent } from './general.component'; + +describe('Settings::GeneralComponent', () => { + let component: GeneralComponent; + let fixture: ComponentFixture; + + beforeEach(async(() => { + TestBed.configureTestingModule({ + declarations: [GeneralComponent] + }).compileComponents(); + })); + + beforeEach(() => { + fixture = TestBed.createComponent(GeneralComponent); + component = fixture.componentInstance; + fixture.detectChanges(); + }); + + it('should create', () => { + expect(component).toBeTruthy(); + }); +}); diff --git a/projects/ucap-webmessenger-ui-settings/src/lib/components/general.component.ts b/projects/ucap-webmessenger-ui-settings/src/lib/components/general.component.ts new file mode 100644 index 00000000..acd41387 --- /dev/null +++ b/projects/ucap-webmessenger-ui-settings/src/lib/components/general.component.ts @@ -0,0 +1,20 @@ +import { Component, OnInit, ChangeDetectorRef } from '@angular/core'; +import { FormGroup, FormBuilder } from '@angular/forms'; + +@Component({ + selector: 'ucap-settings-general', + templateUrl: './general.component.html', + styleUrls: ['./general.component.scss'] +}) +export class GeneralComponent implements OnInit { + loginForm: FormGroup; + + constructor( + private formBuilder: FormBuilder, + private changeDetectorRef: ChangeDetectorRef + ) {} + + ngOnInit() {} + + onClickLogin() {} +} diff --git a/projects/ucap-webmessenger-ui-settings/src/lib/components/notification.component.html b/projects/ucap-webmessenger-ui-settings/src/lib/components/notification.component.html new file mode 100644 index 00000000..f56649e8 --- /dev/null +++ b/projects/ucap-webmessenger-ui-settings/src/lib/components/notification.component.html @@ -0,0 +1 @@ +
일반
diff --git a/projects/ucap-webmessenger-ui-settings/src/lib/components/notification.component.scss b/projects/ucap-webmessenger-ui-settings/src/lib/components/notification.component.scss new file mode 100644 index 00000000..e69de29b diff --git a/projects/ucap-webmessenger-ui-settings/src/lib/components/notification.component.spec.ts b/projects/ucap-webmessenger-ui-settings/src/lib/components/notification.component.spec.ts new file mode 100644 index 00000000..e398431b --- /dev/null +++ b/projects/ucap-webmessenger-ui-settings/src/lib/components/notification.component.spec.ts @@ -0,0 +1,24 @@ +import { async, ComponentFixture, TestBed } from '@angular/core/testing'; + +import { NotificationComponent } from './notification.component'; + +describe('Settings::NotificationComponent', () => { + let component: NotificationComponent; + let fixture: ComponentFixture; + + beforeEach(async(() => { + TestBed.configureTestingModule({ + declarations: [NotificationComponent] + }).compileComponents(); + })); + + beforeEach(() => { + fixture = TestBed.createComponent(NotificationComponent); + component = fixture.componentInstance; + fixture.detectChanges(); + }); + + it('should create', () => { + expect(component).toBeTruthy(); + }); +}); diff --git a/projects/ucap-webmessenger-ui-settings/src/lib/components/notification.component.ts b/projects/ucap-webmessenger-ui-settings/src/lib/components/notification.component.ts new file mode 100644 index 00000000..84675b40 --- /dev/null +++ b/projects/ucap-webmessenger-ui-settings/src/lib/components/notification.component.ts @@ -0,0 +1,20 @@ +import { Component, OnInit, ChangeDetectorRef } from '@angular/core'; +import { FormGroup, FormBuilder } from '@angular/forms'; + +@Component({ + selector: 'ucap-settings-notification', + templateUrl: './notification.component.html', + styleUrls: ['./notification.component.scss'] +}) +export class NotificationComponent implements OnInit { + loginForm: FormGroup; + + constructor( + private formBuilder: FormBuilder, + private changeDetectorRef: ChangeDetectorRef + ) {} + + ngOnInit() {} + + onClickLogin() {} +} diff --git a/projects/ucap-webmessenger-ui-settings/src/lib/components/permission.component.html b/projects/ucap-webmessenger-ui-settings/src/lib/components/permission.component.html new file mode 100644 index 00000000..f56649e8 --- /dev/null +++ b/projects/ucap-webmessenger-ui-settings/src/lib/components/permission.component.html @@ -0,0 +1 @@ +
일반
diff --git a/projects/ucap-webmessenger-ui-settings/src/lib/components/permission.component.scss b/projects/ucap-webmessenger-ui-settings/src/lib/components/permission.component.scss new file mode 100644 index 00000000..e69de29b diff --git a/projects/ucap-webmessenger-ui-settings/src/lib/components/permission.component.spec.ts b/projects/ucap-webmessenger-ui-settings/src/lib/components/permission.component.spec.ts new file mode 100644 index 00000000..54ef1eef --- /dev/null +++ b/projects/ucap-webmessenger-ui-settings/src/lib/components/permission.component.spec.ts @@ -0,0 +1,24 @@ +import { async, ComponentFixture, TestBed } from '@angular/core/testing'; + +import { PermissionComponent } from './permission.component'; + +describe('Settings::PermissionComponent', () => { + let component: PermissionComponent; + let fixture: ComponentFixture; + + beforeEach(async(() => { + TestBed.configureTestingModule({ + declarations: [PermissionComponent] + }).compileComponents(); + })); + + beforeEach(() => { + fixture = TestBed.createComponent(PermissionComponent); + component = fixture.componentInstance; + fixture.detectChanges(); + }); + + it('should create', () => { + expect(component).toBeTruthy(); + }); +}); diff --git a/projects/ucap-webmessenger-ui-settings/src/lib/components/permission.component.ts b/projects/ucap-webmessenger-ui-settings/src/lib/components/permission.component.ts new file mode 100644 index 00000000..cb42a9e3 --- /dev/null +++ b/projects/ucap-webmessenger-ui-settings/src/lib/components/permission.component.ts @@ -0,0 +1,20 @@ +import { Component, OnInit, ChangeDetectorRef } from '@angular/core'; +import { FormGroup, FormBuilder } from '@angular/forms'; + +@Component({ + selector: 'ucap-settings-permission', + templateUrl: './permission.component.html', + styleUrls: ['./permission.component.scss'] +}) +export class PermissionComponent implements OnInit { + loginForm: FormGroup; + + constructor( + private formBuilder: FormBuilder, + private changeDetectorRef: ChangeDetectorRef + ) {} + + ngOnInit() {} + + onClickLogin() {} +} diff --git a/projects/ucap-webmessenger-ui-settings/src/lib/components/privacy.component.html b/projects/ucap-webmessenger-ui-settings/src/lib/components/privacy.component.html new file mode 100644 index 00000000..81565997 --- /dev/null +++ b/projects/ucap-webmessenger-ui-settings/src/lib/components/privacy.component.html @@ -0,0 +1 @@ +
개인정보취급방침
diff --git a/projects/ucap-webmessenger-ui-settings/src/lib/components/privacy.component.scss b/projects/ucap-webmessenger-ui-settings/src/lib/components/privacy.component.scss new file mode 100644 index 00000000..e69de29b diff --git a/projects/ucap-webmessenger-ui-settings/src/lib/components/privacy.component.spec.ts b/projects/ucap-webmessenger-ui-settings/src/lib/components/privacy.component.spec.ts new file mode 100644 index 00000000..bddbec46 --- /dev/null +++ b/projects/ucap-webmessenger-ui-settings/src/lib/components/privacy.component.spec.ts @@ -0,0 +1,24 @@ +import { async, ComponentFixture, TestBed } from '@angular/core/testing'; + +import { PrivacyComponent } from './privacy.component'; + +describe('Settings::PrivacyComponent', () => { + let component: PrivacyComponent; + let fixture: ComponentFixture; + + beforeEach(async(() => { + TestBed.configureTestingModule({ + declarations: [PrivacyComponent] + }).compileComponents(); + })); + + beforeEach(() => { + fixture = TestBed.createComponent(PrivacyComponent); + component = fixture.componentInstance; + fixture.detectChanges(); + }); + + it('should create', () => { + expect(component).toBeTruthy(); + }); +}); diff --git a/projects/ucap-webmessenger-ui-settings/src/lib/components/privacy.component.ts b/projects/ucap-webmessenger-ui-settings/src/lib/components/privacy.component.ts new file mode 100644 index 00000000..7a20af0a --- /dev/null +++ b/projects/ucap-webmessenger-ui-settings/src/lib/components/privacy.component.ts @@ -0,0 +1,20 @@ +import { Component, OnInit, ChangeDetectorRef } from '@angular/core'; +import { FormGroup, FormBuilder } from '@angular/forms'; + +@Component({ + selector: 'ucap-settings-privacy', + templateUrl: './privacy.component.html', + styleUrls: ['./privacy.component.scss'] +}) +export class PrivacyComponent implements OnInit { + loginForm: FormGroup; + + constructor( + private formBuilder: FormBuilder, + private changeDetectorRef: ChangeDetectorRef + ) {} + + ngOnInit() {} + + onClickLogin() {} +} diff --git a/projects/ucap-webmessenger-ui-settings/src/lib/ucap-ui-settings.module.ts b/projects/ucap-webmessenger-ui-settings/src/lib/ucap-ui-settings.module.ts new file mode 100644 index 00000000..8152fb66 --- /dev/null +++ b/projects/ucap-webmessenger-ui-settings/src/lib/ucap-ui-settings.module.ts @@ -0,0 +1,36 @@ +import { NgModule, ModuleWithProviders } from '@angular/core'; +import { CommonModule } from '@angular/common'; +import { ReactiveFormsModule } from '@angular/forms'; + +import { FlexLayoutModule } from '@angular/flex-layout'; + +import { CallComponent } from './components/call.component'; +import { DeviceComponent } from './components/device.component'; +import { GeneralComponent } from './components/general.component'; +import { NotificationComponent } from './components/notification.component'; +import { PermissionComponent } from './components/permission.component'; +import { PrivacyComponent } from './components/privacy.component'; + +const COMPONENTS = [ + CallComponent, + DeviceComponent, + GeneralComponent, + NotificationComponent, + PermissionComponent, + PrivacyComponent +]; +const SERVICES = []; + +@NgModule({ + imports: [CommonModule, ReactiveFormsModule, FlexLayoutModule], + exports: [...COMPONENTS], + declarations: [...COMPONENTS] +}) +export class UCapUiSettingsModule { + public static forRoot(): ModuleWithProviders { + return { + ngModule: UCapUiSettingsModule, + providers: [...SERVICES] + }; + } +} diff --git a/projects/ucap-webmessenger-ui-settings/src/public-api.ts b/projects/ucap-webmessenger-ui-settings/src/public-api.ts new file mode 100644 index 00000000..93dc960e --- /dev/null +++ b/projects/ucap-webmessenger-ui-settings/src/public-api.ts @@ -0,0 +1,7 @@ +/* + * Public API Surface of ucap-webmessenger-ui-settings + */ + +export * from './lib/components/general.component'; + +export * from './lib/ucap-ui-settings.module'; diff --git a/projects/ucap-webmessenger-ui-settings/src/test.ts b/projects/ucap-webmessenger-ui-settings/src/test.ts new file mode 100644 index 00000000..978c64fb --- /dev/null +++ b/projects/ucap-webmessenger-ui-settings/src/test.ts @@ -0,0 +1,21 @@ +// This file is required by karma.conf.js and loads recursively all the .spec and framework files + +import 'zone.js/dist/zone'; +import 'zone.js/dist/zone-testing'; +import { getTestBed } from '@angular/core/testing'; +import { + BrowserDynamicTestingModule, + platformBrowserDynamicTesting +} from '@angular/platform-browser-dynamic/testing'; + +declare const require: any; + +// First, initialize the Angular testing environment. +getTestBed().initTestEnvironment( + BrowserDynamicTestingModule, + platformBrowserDynamicTesting() +); +// Then we find all the tests. +const context = require.context('./', true, /\.spec\.ts$/); +// And load the modules. +context.keys().map(context); diff --git a/projects/ucap-webmessenger-ui-settings/tsconfig.lib.json b/projects/ucap-webmessenger-ui-settings/tsconfig.lib.json new file mode 100644 index 00000000..bd23948e --- /dev/null +++ b/projects/ucap-webmessenger-ui-settings/tsconfig.lib.json @@ -0,0 +1,26 @@ +{ + "extends": "../../tsconfig.json", + "compilerOptions": { + "outDir": "../../out-tsc/lib", + "target": "es2015", + "declaration": true, + "inlineSources": true, + "types": [], + "lib": [ + "dom", + "es2018" + ] + }, + "angularCompilerOptions": { + "annotateForClosureCompiler": true, + "skipTemplateCodegen": true, + "strictMetadataEmit": true, + "fullTemplateTypeCheck": true, + "strictInjectionParameters": true, + "enableResourceInlining": true + }, + "exclude": [ + "src/test.ts", + "**/*.spec.ts" + ] +} diff --git a/projects/ucap-webmessenger-ui-settings/tsconfig.spec.json b/projects/ucap-webmessenger-ui-settings/tsconfig.spec.json new file mode 100644 index 00000000..16da33db --- /dev/null +++ b/projects/ucap-webmessenger-ui-settings/tsconfig.spec.json @@ -0,0 +1,17 @@ +{ + "extends": "../../tsconfig.json", + "compilerOptions": { + "outDir": "../../out-tsc/spec", + "types": [ + "jasmine", + "node" + ] + }, + "files": [ + "src/test.ts" + ], + "include": [ + "**/*.spec.ts", + "**/*.d.ts" + ] +} diff --git a/projects/ucap-webmessenger-ui-settings/tslint.json b/projects/ucap-webmessenger-ui-settings/tslint.json new file mode 100644 index 00000000..a91f162c --- /dev/null +++ b/projects/ucap-webmessenger-ui-settings/tslint.json @@ -0,0 +1,17 @@ +{ + "extends": "../../tslint.json", + "rules": { + "directive-selector": [ + true, + "attribute", + "ucapSettings", + "camelCase" + ], + "component-selector": [ + true, + "element", + "ucap-settings", + "kebab-case" + ] + } +} diff --git a/tsconfig.json b/tsconfig.json index d45269df..db8767bd 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -56,6 +56,9 @@ "@ucap-webmessenger/ui-profile": [ "projects/ucap-webmessenger-ui-profile/src/public-api" ], + "@ucap-webmessenger/ui-settings": [ + "projects/ucap-webmessenger-ui-settings/src/public-api" + ], "@ucap-webmessenger/protocol": [ "projects/ucap-webmessenger-protocol/src/public-api" ],