Browse Source

feat: make catalog package publishable

pull/34/head
bnymncoskuner 5 years ago
parent
commit
7cfb29e45a
  1. 7
      apps/angular/projects/catalog/config/ng-package.json
  2. 9
      apps/angular/projects/catalog/package.json
  3. 2
      apps/angular/projects/catalog/src/pages/product/product-routing.module.ts
  4. 17
      apps/angular/projects/catalog/src/pages/product/product.component.html
  5. 9
      apps/angular/projects/catalog/src/pages/product/product.component.ts
  6. 4
      apps/angular/projects/catalog/src/public-api.ts
  7. 2
      apps/angular/src/app/app-routing.module.ts
  8. 2
      apps/angular/src/app/app.module.ts
  9. 11
      apps/angular/tsconfig.json
  10. 1
      services/catalog/src/EShopOnAbp.CatalogService.Domain.Shared/Localization/CatalogService/en.json
  11. 1
      services/catalog/src/EShopOnAbp.CatalogService.Domain.Shared/Localization/CatalogService/tr.json

7
apps/angular/projects/catalog/config/ng-package.json

@ -0,0 +1,7 @@
{
"$schema": "../../../node_modules/ng-packagr/ng-package.schema.json",
"dest": "../../dist/catalog/config",
"lib": {
"entryFile": "src/public-api.ts"
}
}

9
apps/angular/projects/catalog/package.json

@ -1,11 +1,14 @@
{
"name": "catalog",
"name": "@eshoponabp/catalog",
"version": "0.0.1",
"peerDependencies": {
"@angular/common": "^12.2.0",
"@angular/core": "^12.2.0"
"@angular/core": "^12.2.0",
"@abp/ng.theme.shared": "~5.0.0-rc.1",
"@abp/ng.core": "~5.0.0-rc.1",
"@ngx-validate/core": "~0.1.1"
},
"dependencies": {
"tslib": "^2.3.0"
}
}
}

2
apps/angular/projects/catalog/src/pages/product/product-routing.module.ts

@ -1,7 +1,7 @@
import { AuthGuard, PermissionGuard } from '@abp/ng.core';
import { NgModule } from '@angular/core';
import { RouterModule, Routes } from '@angular/router';
import { eCatalogPolicyNames } from '@catalog/config';
import { eCatalogPolicyNames } from '@eshoponabp/catalog/config';
import { ProductComponent } from './product.component';
const routes: Routes = [

17
apps/angular/projects/catalog/src/pages/product/product.component.html

@ -55,6 +55,10 @@
[name]="'CatalogService::DisplayName:Name' | abpLocalization"
prop="name"
></ngx-datatable-column>
<ngx-datatable-column
[name]="'CatalogService::DisplayName:ImageName' | abpLocalization"
prop="imageName"
></ngx-datatable-column>
<ngx-datatable-column
[name]="'CatalogService::DisplayName:Price' | abpLocalization"
prop="price"
@ -107,6 +111,19 @@
/>
</div>
<div class="mb-3">
<label class="form-label" for="imageName">
{{ 'CatalogService::DisplayName:ImageName' | abpLocalization }} *
</label>
<input
type="text"
class="form-control"
id="imageName"
formControlName="imageName"
[placeholder]="'CatalogService::DisplayName:ImageName' | abpLocalization"
/>
</div>
<div class="mb-3">
<label class="form-label" for="price">
{{ 'CatalogService::DisplayName:Price' | abpLocalization }} *

9
apps/angular/projects/catalog/src/pages/product/product.component.ts

@ -2,9 +2,11 @@ import { ListService } from '@abp/ng.core';
import { Confirmation, ConfirmationService } from '@abp/ng.theme.shared';
import { Component, OnInit } from '@angular/core';
import { FormBuilder, FormGroup, Validators } from '@angular/forms';
import { eCatalogPolicyNames } from '@catalog/config';
import { ProductDto, ProductService } from '@catalog/proxy/products';
import { eCatalogPolicyNames } from '@eshoponabp/catalog/config';
import { finalize } from 'rxjs/operators';
import { ProductDto } from '../../lib/proxy/products/models';
import { ProductService } from '../../lib/proxy/products/product.service';
@Component({
selector: 'lib-product',
templateUrl: './product.component.html',
@ -35,7 +37,7 @@ export class ProductComponent implements OnInit {
private fb: FormBuilder
) {
// TODO: this is an example of paging
this.list.maxResultCount = 20;
this.list.maxResultCount = 10;
}
ngOnInit(): void {
@ -51,6 +53,7 @@ export class ProductComponent implements OnInit {
this.form = this.fb.group({
name: [this.selected.name, { validators: [Validators.required] }],
code: [this.selected.code, { validators: [Validators.required] }],
imageName: [this.selected.imageName, { validators: [Validators.required] }],
price: [this.selected.price, { validators: [Validators.required] }],
stockCount: [this.selected.stockCount, { validators: [Validators.required] }],
});

4
apps/angular/projects/catalog/src/public-api.ts

@ -0,0 +1,4 @@
export * from './catalog-routing.module';
export * from './catalog.module';
export * from './lib/proxy/products';
export * from './pages';

2
apps/angular/src/app/app-routing.module.ts

@ -27,7 +27,7 @@ const routes: Routes = [
},
{
path: 'catalog',
loadChildren: () => import('@catalog/catalog.module').then(m => m.CatalogModule),
loadChildren: () => import('@eshoponabp/catalog').then(m => m.CatalogModule),
},
];

2
apps/angular/src/app/app.module.ts

@ -9,7 +9,7 @@ import { ThemeSharedModule } from '@abp/ng.theme.shared';
import { NgModule } from '@angular/core';
import { BrowserModule } from '@angular/platform-browser';
import { BrowserAnimationsModule } from '@angular/platform-browser/animations';
import { CatalogConfigModule } from '@catalog/config';
import { CatalogConfigModule } from '@eshoponabp/catalog/config';
import { environment } from '../environments/environment';
import { AppRoutingModule } from './app-routing.module';
import { AppComponent } from './app.component';

11
apps/angular/tsconfig.json

@ -14,14 +14,13 @@
"typeRoots": ["node_modules/@types"],
"lib": ["es2018", "dom"],
"paths": {
"@catalog/config": [
"@eshoponabp/catalog/config": [
"node_modules/@eshoponabp/catalog/config",
"projects/catalog/config/src/public-api.ts"
],
"@catalog/proxy/products": [
"projects/catalog/src/lib/proxy/products/index.ts"
],
"@catalog/*": [
"projects/catalog/src/*",
"@eshoponabp/catalog": [
"node_modules/@eshoponabp/catalog",
"projects/catalog/src/public-api.ts",
],
}
},

1
services/catalog/src/EShopOnAbp.CatalogService.Domain.Shared/Localization/CatalogService/en.json

@ -13,6 +13,7 @@
"Products": "Products",
"DisplayName:Name": "Name",
"DisplayName:Code": "Code",
"DisplayName:ImageName": "Image Name",
"DisplayName:Price": "Price",
"DisplayName:StockCount": "StockCount",
"ProductDeletionConfirmationMessage": "Are you sure you want to delete this {0} product?"

1
services/catalog/src/EShopOnAbp.CatalogService.Domain.Shared/Localization/CatalogService/tr.json

@ -13,6 +13,7 @@
"Products": "Ürünler",
"DisplayName:Name": "İsim",
"DisplayName:Code": "Kod",
"DisplayName:ImageName": "Resim Adı",
"DisplayName:Price": "Fiyat",
"DisplayName:StockCount": "Stok Adedi",
"ProductDeletionConfirmationMessage": "{0} ürününü silmek istediğinizden emin misiniz?"

Loading…
Cancel
Save