tin-spa 20.14.113 → 20.16.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (44) hide show
  1. package/core/index.d.ts +80 -10
  2. package/fesm2022/{tin-spa-accounting.module-Cg4vWaJE.mjs → tin-spa-accounting.module-CamqAeW_.mjs} +71 -83
  3. package/fesm2022/tin-spa-accounting.module-CamqAeW_.mjs.map +1 -0
  4. package/fesm2022/{tin-spa-agent-page.component-DJvMPjCQ.mjs → tin-spa-agent-page.component-DTYn54p0.mjs} +2 -2
  5. package/fesm2022/{tin-spa-agent-page.component-DJvMPjCQ.mjs.map → tin-spa-agent-page.component-DTYn54p0.mjs.map} +1 -1
  6. package/fesm2022/{tin-spa-agent.component-D0CGGnGZ.mjs → tin-spa-agent.component-CZKMWl3r.mjs} +2 -2
  7. package/fesm2022/{tin-spa-agent.component-D0CGGnGZ.mjs.map → tin-spa-agent.component-CZKMWl3r.mjs.map} +1 -1
  8. package/fesm2022/{tin-spa-assets.module-qIWNwJ2E.mjs → tin-spa-assets.module-BcOjlhfm.mjs} +16 -11
  9. package/fesm2022/tin-spa-assets.module-BcOjlhfm.mjs.map +1 -0
  10. package/fesm2022/tin-spa-core.mjs +426 -112
  11. package/fesm2022/tin-spa-core.mjs.map +1 -1
  12. package/fesm2022/{tin-spa-general-erp.module-CoYxceLj.mjs → tin-spa-general-erp.module-b6SjnWUM.mjs} +2 -2
  13. package/fesm2022/{tin-spa-general-erp.module-CoYxceLj.mjs.map → tin-spa-general-erp.module-b6SjnWUM.mjs.map} +1 -1
  14. package/fesm2022/{tin-spa-hr.module-CKPZ9ZOj.mjs → tin-spa-hr.module-DkGVK2lX.mjs} +2 -2
  15. package/fesm2022/{tin-spa-hr.module-CKPZ9ZOj.mjs.map → tin-spa-hr.module-DkGVK2lX.mjs.map} +1 -1
  16. package/fesm2022/tin-spa-http.mjs +32 -1
  17. package/fesm2022/tin-spa-http.mjs.map +1 -1
  18. package/fesm2022/{tin-spa-inventory.module-DRKAcNau.mjs → tin-spa-inventory.module-CYWBqSCd.mjs} +16 -11
  19. package/fesm2022/tin-spa-inventory.module-CYWBqSCd.mjs.map +1 -0
  20. package/fesm2022/{tin-spa-loans.module-BTDmgrWo.mjs → tin-spa-loans.module-BDh-T-Ng.mjs} +2 -2
  21. package/fesm2022/{tin-spa-loans.module-BTDmgrWo.mjs.map → tin-spa-loans.module-BDh-T-Ng.mjs.map} +1 -1
  22. package/fesm2022/{tin-spa-manufacturing.module-CHta6oV_.mjs → tin-spa-manufacturing.module-9Ti-BFb2.mjs} +2 -2
  23. package/fesm2022/{tin-spa-manufacturing.module-CHta6oV_.mjs.map → tin-spa-manufacturing.module-9Ti-BFb2.mjs.map} +1 -1
  24. package/fesm2022/{tin-spa-payroll.module-CZ_GO1jF.mjs → tin-spa-payroll.module-54Efumv_.mjs} +9 -6
  25. package/fesm2022/{tin-spa-payroll.module-CZ_GO1jF.mjs.map → tin-spa-payroll.module-54Efumv_.mjs.map} +1 -1
  26. package/fesm2022/{tin-spa-purchasing.module-NCdwquaF.mjs → tin-spa-purchasing.module-Bq8JnsyM.mjs} +16 -11
  27. package/fesm2022/tin-spa-purchasing.module-Bq8JnsyM.mjs.map +1 -0
  28. package/fesm2022/{tin-spa-sales.module-D0uEGJW7.mjs → tin-spa-sales.module-nyrJulzD.mjs} +40 -17
  29. package/fesm2022/tin-spa-sales.module-nyrJulzD.mjs.map +1 -0
  30. package/fesm2022/{tin-spa-tenancy-erp.module-GwIv8Wbc.mjs → tin-spa-tenancy-erp.module-DGATA-p_.mjs} +2 -2
  31. package/fesm2022/{tin-spa-tenancy-erp.module-GwIv8Wbc.mjs.map → tin-spa-tenancy-erp.module-DGATA-p_.mjs.map} +1 -1
  32. package/fesm2022/{tin-spa-tin-spa-Cqe5hYTr.mjs → tin-spa-tin-spa-BMy59BVn.mjs} +1428 -219
  33. package/fesm2022/tin-spa-tin-spa-BMy59BVn.mjs.map +1 -0
  34. package/fesm2022/tin-spa.mjs +1 -1
  35. package/http/index.d.ts +3 -1
  36. package/index.d.ts +144 -24
  37. package/package.json +1 -1
  38. package/src/tin-styles.css +27 -0
  39. package/fesm2022/tin-spa-accounting.module-Cg4vWaJE.mjs.map +0 -1
  40. package/fesm2022/tin-spa-assets.module-qIWNwJ2E.mjs.map +0 -1
  41. package/fesm2022/tin-spa-inventory.module-DRKAcNau.mjs.map +0 -1
  42. package/fesm2022/tin-spa-purchasing.module-NCdwquaF.mjs.map +0 -1
  43. package/fesm2022/tin-spa-sales.module-D0uEGJW7.mjs.map +0 -1
  44. package/fesm2022/tin-spa-tin-spa-Cqe5hYTr.mjs.map +0 -1
@@ -1,14 +1,16 @@
1
1
  import * as i0 from '@angular/core';
2
2
  import { Component, inject, NgModule } from '@angular/core';
3
- import * as i1 from '@angular/router';
3
+ import * as i1$1 from '@angular/router';
4
4
  import { RouterModule } from '@angular/router';
5
+ import * as i1 from 'tin-spa/core';
5
6
  import * as i3 from '@angular/material/icon';
6
- import { T as TilesComponent, C as ChartsComponent, A as AssetsService, c as TinSpaModule, P as PageComponent, e as SpaAdminModule } from './tin-spa-tin-spa-Cqe5hYTr.mjs';
7
+ import { T as TilesComponent, C as ChartsComponent, A as AssetsService, c as TinSpaModule, P as PageComponent, e as SpaAdminModule } from './tin-spa-tin-spa-BMy59BVn.mjs';
7
8
  import { CommonModule } from '@angular/common';
8
9
 
9
10
  // Fixed Assets module dashboard — asset performance, depreciation trends, and portfolio overview
10
11
  class FixedAssetsDashboardComponent {
11
- constructor() {
12
+ constructor(dataService) {
13
+ this.dataService = dataService;
12
14
  this.summaryTiles = {
13
15
  tiles: [
14
16
  { name: 'draft', alias: 'Draft', color: '#FFC107', icon: 'edit_note', style: 'icon', info: 'Assets awaiting activation' },
@@ -20,7 +22,8 @@ class FixedAssetsDashboardComponent {
20
22
  { name: 'depreciationThisMonth', alias: 'Depreciation (MTD)', color: '#f44336', icon: 'trending_down', style: 'icon', info: 'Depreciation posted this month' },
21
23
  ],
22
24
  loadAction: { url: 'fixedassets/dashboard/summary' },
23
- loadInit: true
25
+ loadInit: true,
26
+ security: { allow: [this.dataService.capFixedAssetsDashboard] } // Added (dashboard-alignment 1-D.3): cap70 (datalib.service.ts:439) — a single-module dashboard, so the gate sits on the whole config
24
27
  };
25
28
  this.chartTiles = {
26
29
  tiles: [
@@ -30,7 +33,8 @@ class FixedAssetsDashboardComponent {
30
33
  { name: 'nbvTrend', alias: 'NBV Trend', color: '#4CAF50', chart: { type: 'line', color: '#4CAF50', height: 100, dataField: 'nbvTrend' }, footer: 'Last 6 months', footerIcon: 'show_chart' },
31
34
  ],
32
35
  loadAction: { url: 'fixedassets/dashboard/chart-tiles' },
33
- loadInit: true
36
+ loadInit: true,
37
+ security: { allow: [this.dataService.capFixedAssetsDashboard] } // Added (dashboard-alignment 1-D.3): cap70
34
38
  };
35
39
  this.chartConfig = {
36
40
  charts: [
@@ -43,10 +47,11 @@ class FixedAssetsDashboardComponent {
43
47
  ],
44
48
  loadAction: { url: 'fixedassets/dashboard/charts' },
45
49
  loadInit: true,
46
- columns: 2
50
+ columns: 2,
51
+ security: { allow: [this.dataService.capFixedAssetsDashboard] } // Added (dashboard-alignment 1-D.3): cap70
47
52
  };
48
53
  }
49
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.14", ngImport: i0, type: FixedAssetsDashboardComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
54
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.14", ngImport: i0, type: FixedAssetsDashboardComponent, deps: [{ token: i1.DataServiceLib }], target: i0.ɵɵFactoryTarget.Component }); }
50
55
  static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.14", type: FixedAssetsDashboardComponent, isStandalone: false, selector: "spa-fixed-assets-dashboard", ngImport: i0, template: `
51
56
  <div class="dashboard-container">
52
57
  <h4 class="dashboard-title"><mat-icon>precision_manufacturing</mat-icon> Fixed Assets Dashboard</h4>
@@ -55,7 +60,7 @@ class FixedAssetsDashboardComponent {
55
60
  <spa-tiles [config]="chartTiles"></spa-tiles>
56
61
  <spa-charts [config]="chartConfig"></spa-charts>
57
62
  </div>
58
- `, isInline: true, styles: [".dashboard-container{padding:16px}.dashboard-title{display:flex;align-items:center;gap:8px;margin-bottom:16px;color:#333;font-weight:500}\n"], dependencies: [{ kind: "component", type: i3.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: TilesComponent, selector: "spa-tiles", inputs: ["config", "lastSearch", "data", "reload"], outputs: ["tileActionSelected", "tileClick", "tileUnClick"] }, { kind: "component", type: ChartsComponent, selector: "spa-charts", inputs: ["config", "data", "reload"] }] }); }
63
+ `, isInline: true, styles: [".dashboard-container{padding:16px}.dashboard-title{display:flex;align-items:center;gap:8px;margin-bottom:16px;color:#333;font-weight:500}\n"], dependencies: [{ kind: "component", type: i3.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: TilesComponent, selector: "spa-tiles", inputs: ["config", "lastSearch", "data", "reload"], outputs: ["tileActionSelected", "contentResolved", "tileClick", "tileUnClick"] }, { kind: "component", type: ChartsComponent, selector: "spa-charts", inputs: ["config", "data", "reload"], outputs: ["contentResolved"] }] }); }
59
64
  }
60
65
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.14", ngImport: i0, type: FixedAssetsDashboardComponent, decorators: [{
61
66
  type: Component,
@@ -68,7 +73,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.14", ngImpo
68
73
  <spa-charts [config]="chartConfig"></spa-charts>
69
74
  </div>
70
75
  `, standalone: false, styles: [".dashboard-container{padding:16px}.dashboard-title{display:flex;align-items:center;gap:8px;margin-bottom:16px;color:#333;font-weight:500}\n"] }]
71
- }] });
76
+ }], ctorParameters: () => [{ type: i1.DataServiceLib }] });
72
77
 
73
78
  // Fixed Assets management page — full lifecycle with tiles, CRUD, activation, depreciation, and disposal
74
79
  class FixedAssetsComponent {
@@ -122,7 +127,7 @@ const ASSETS_ROUTES = [
122
127
  ];
123
128
  class AssetsRoutingModule {
124
129
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.14", ngImport: i0, type: AssetsRoutingModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
125
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.14", ngImport: i0, type: AssetsRoutingModule, imports: [i1.RouterModule], exports: [RouterModule] }); }
130
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.14", ngImport: i0, type: AssetsRoutingModule, imports: [i1$1.RouterModule], exports: [RouterModule] }); }
126
131
  static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.14", ngImport: i0, type: AssetsRoutingModule, imports: [RouterModule.forChild(ASSETS_ROUTES), RouterModule] }); }
127
132
  }
128
133
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.14", ngImport: i0, type: AssetsRoutingModule, decorators: [{
@@ -164,4 +169,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.14", ngImpo
164
169
  }] });
165
170
 
166
171
  export { AssetsModule };
167
- //# sourceMappingURL=tin-spa-assets.module-qIWNwJ2E.mjs.map
172
+ //# sourceMappingURL=tin-spa-assets.module-BcOjlhfm.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tin-spa-assets.module-BcOjlhfm.mjs","sources":["../../../projects/tin-spa/src/lib/pages/assets/fixed-assets-dashboard/fixed-assets-dashboard.component.ts","../../../projects/tin-spa/src/lib/pages/accounting/fixed-assets/fixed-assets.component.ts","../../../projects/tin-spa/src/lib/pages/accounting/fixed-asset-categories/fixed-asset-categories.component.ts","../../../projects/tin-spa/src/lib/modules/assets/assets-routing.module.ts","../../../projects/tin-spa/src/lib/modules/assets/assets.module.ts"],"sourcesContent":["import { Component } from '@angular/core';\nimport { TileConfig, ChartConfig } from 'tin-spa/core';\nimport { DataServiceLib } from 'tin-spa/core'; // Added (dashboard-alignment 1-D.3): the CapItem source the whole-config security gates read\n\n// Fixed Assets module dashboard — asset performance, depreciation trends, and portfolio overview\n@Component({\n selector: 'spa-fixed-assets-dashboard',\n template: `\n <div class=\"dashboard-container\">\n <h4 class=\"dashboard-title\"><mat-icon>precision_manufacturing</mat-icon> Fixed Assets Dashboard</h4>\n <spa-tiles [config]=\"summaryTiles\"></spa-tiles>\n <div style=\"margin-top: 16px;\"></div>\n <spa-tiles [config]=\"chartTiles\"></spa-tiles>\n <spa-charts [config]=\"chartConfig\"></spa-charts>\n </div>\n `,\n styles: [`\n .dashboard-container { padding: 16px; }\n .dashboard-title { display: flex; align-items: center; gap: 8px; margin-bottom: 16px; color: #333; font-weight: 500; }\n `],\n standalone: false\n})\nexport class FixedAssetsDashboardComponent {\n\n constructor(private dataService: DataServiceLib) { }\n\n summaryTiles: TileConfig = {\n tiles: [\n { name: 'draft', alias: 'Draft', color: '#FFC107', icon: 'edit_note', style: 'icon', info: 'Assets awaiting activation' },\n { name: 'active', alias: 'Active', color: '#4CAF50', icon: 'check_circle', style: 'icon', info: 'Actively depreciating assets' },\n { name: 'fullyDepreciated', alias: 'Fully Depreciated', color: '#2196F3', icon: 'task_alt', style: 'icon', info: 'Zero book value assets' },\n { name: 'disposed', alias: 'Disposed', color: '#9E9E9E', icon: 'delete_forever', style: 'icon', info: 'Sold or retired assets' },\n { name: 'totalCost', alias: 'Total Cost', color: '#ff9800', icon: 'attach_money', style: 'icon', info: 'Total acquisition cost' },\n { name: 'totalNBV', alias: 'Net Book Value', color: '#4CAF50', icon: 'trending_up', style: 'icon', info: 'Current net book value' },\n { name: 'depreciationThisMonth', alias: 'Depreciation (MTD)', color: '#f44336', icon: 'trending_down', style: 'icon', info: 'Depreciation posted this month' },\n ],\n loadAction: { url: 'fixedassets/dashboard/summary' },\n loadInit: true,\n security: { allow: [this.dataService.capFixedAssetsDashboard] } // Added (dashboard-alignment 1-D.3): cap70 (datalib.service.ts:439) — a single-module dashboard, so the gate sits on the whole config\n };\n\n chartTiles: TileConfig = {\n tiles: [\n { name: 'depreciationGauge', alias: 'Depreciation %', color: '#2196F3', chart: { type: 'doughnut', gaugeColor: '#2196F3', height: 130, dataField: 'depreciationGauge' }, footer: 'Total depreciated vs cost', footerIcon: 'pie_chart' },\n { name: 'depreciationSparkline', alias: 'Depreciation Trend', color: '#f44336', chart: { type: 'bar', colors: ['#f44336', '#ef5350', '#e57373', '#ef9a9a', '#ffcdd2', '#f44336', '#ef5350', '#e57373', '#ef9a9a', '#ffcdd2', '#f44336', '#ef5350'], height: 100, dataField: 'depreciationSparkline' }, footer: 'Last 12 months', footerIcon: 'trending_down' },\n { name: 'costByCategory', alias: 'Cost by Category', color: '#ff9800', chart: { type: 'pie', colors: ['#ff9800', '#f44336', '#9c27b0', '#2196F3', '#4CAF50', '#607d8b'], height: 130, dataField: 'costByCategory' }, footer: 'Acquisition cost split', footerIcon: 'donut_large' },\n { name: 'nbvTrend', alias: 'NBV Trend', color: '#4CAF50', chart: { type: 'line', color: '#4CAF50', height: 100, dataField: 'nbvTrend' }, footer: 'Last 6 months', footerIcon: 'show_chart' },\n ],\n loadAction: { url: 'fixedassets/dashboard/chart-tiles' },\n loadInit: true,\n security: { allow: [this.dataService.capFixedAssetsDashboard] } // Added (dashboard-alignment 1-D.3): cap70\n };\n\n chartConfig: ChartConfig = {\n charts: [\n { name: 'depreciationTrend', title: 'Monthly Depreciation', type: 'bar', height: '300px', colors: ['#2196F3'] },\n { name: 'statusDistribution', title: 'Asset Status Distribution', type: 'doughnut', height: '300px', colors: ['#FFC107', '#4CAF50', '#2196F3', '#9E9E9E'] },\n { name: 'costByCategory', title: 'Cost by Category', type: 'bar', height: '300px', colors: ['#ff9800'] },\n { name: 'nbvVsCost', title: 'Cost vs Net Book Value', type: 'line', height: '300px', showPoints: true, showLegend: true, tension: 0.4, colors: ['#ff9800', '#4CAF50'] },\n { name: 'remainingLife', title: 'Remaining Useful Life', type: 'bar', height: '300px', colors: ['#7c4dff'] },\n { name: 'acquisitionsTimeline', title: 'Acquisitions Timeline', type: 'line', height: '300px', showPoints: true, tension: 0.4, colors: ['#2196F3'] },\n ],\n loadAction: { url: 'fixedassets/dashboard/charts' },\n loadInit: true,\n columns: 2,\n security: { allow: [this.dataService.capFixedAssetsDashboard] } // Added (dashboard-alignment 1-D.3): cap70\n };\n}\n","import { Component, inject } from '@angular/core';\nimport { PageConfig } from 'tin-spa/core';\nimport { TinSpaModule } from '../../../tin-spa.module';\nimport { AssetsService } from '../../../services/assets.service'; // Changed: Moved to AssetsService\n\n// Fixed Assets management page — full lifecycle with tiles, CRUD, activation, depreciation, and disposal\n@Component({\n selector: 'spa-fixed-assets',\n standalone: true,\n imports: [TinSpaModule],\n template: '<spa-page [config]=\"pageConfig\"></spa-page>'\n})\nexport class FixedAssetsComponent {\n private assetsService = inject(AssetsService); // Changed: Use AssetsService\n\n pageConfig: PageConfig = {\n title: 'Fixed Assets',\n tableConfig: this.assetsService.assetsTableConfig // Changed: Use AssetsService\n };\n}\n","import { Component, inject } from '@angular/core';\nimport { PageConfig } from 'tin-spa/core';\nimport { TinSpaModule } from '../../../tin-spa.module';\nimport { AssetsService } from '../../../services/assets.service';\n\n// Depreciation Categories management page — CRUD for depreciation categories with default settings\n@Component({\n selector: 'spa-fixed-asset-categories',\n standalone: true,\n imports: [TinSpaModule],\n template: '<spa-page [config]=\"pageConfig\"></spa-page>'\n})\nexport class FixedAssetCategoriesComponent { // Changed: display title renamed, component class kept for routing compatibility\n private assetsService = inject(AssetsService);\n\n pageConfig: PageConfig = {\n title: 'Depreciation Categories', // Changed: Renamed from Asset Categories\n tableConfig: this.assetsService.categoryTableConfig\n };\n}\n","import { NgModule } from '@angular/core';\nimport { Routes, RouterModule } from '@angular/router';\nimport { FixedAssetsDashboardComponent } from '../../pages/assets/fixed-assets-dashboard/fixed-assets-dashboard.component';\nimport { FixedAssetsComponent } from '../../pages/accounting/fixed-assets/fixed-assets.component';\nimport { FixedAssetCategoriesComponent } from '../../pages/accounting/fixed-asset-categories/fixed-asset-categories.component';\n\n// Changed: Fixed Assets routes — separated from Accounting module\nexport const ASSETS_ROUTES: Routes = [\n { path: \"dashboard\", component: FixedAssetsDashboardComponent },\n { path: \"register\", component: FixedAssetsComponent },\n { path: \"depreciation-categories\", component: FixedAssetCategoriesComponent }, // Changed: Renamed from categories\n];\n\n@NgModule({\n imports: [RouterModule.forChild(ASSETS_ROUTES)],\n exports: [RouterModule]\n})\nexport class AssetsRoutingModule { }\n","import { NgModule } from '@angular/core';\nimport { AssetsRoutingModule } from './assets-routing.module'; // Added (S10-part-1): this domain is now reached by loadChildren, so it carries its own RouterModule.forChild table instead of contributing routes to the eager parent\nimport { CommonModule } from '@angular/common';\nimport { SpaAdminModule } from '../spa-admin.module';\nimport { FixedAssetsDashboardComponent } from '../../pages/assets/fixed-assets-dashboard/fixed-assets-dashboard.component';\nimport { FixedAssetsComponent } from '../../pages/accounting/fixed-assets/fixed-assets.component';\nimport { FixedAssetCategoriesComponent } from '../../pages/accounting/fixed-asset-categories/fixed-asset-categories.component';\n\n// Changed: Fixed Assets module — separated from Accounting module\n@NgModule({\n declarations: [\n FixedAssetsDashboardComponent\n ],\n imports: [\n AssetsRoutingModule,\n CommonModule,\n SpaAdminModule,\n FixedAssetsComponent,\n FixedAssetCategoriesComponent\n ]\n})\nexport class AssetsModule { }\n"],"names":["i2","i3.TilesComponent","i4.ChartsComponent","i1.PageComponent"],"mappings":"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"}