update sakai to v17

This commit is contained in:
Francesco Spilla 2023-12-21 13:37:48 +01:00
parent d31d69989a
commit 0628ceed6e
14 changed files with 58304 additions and 15003 deletions

1590
.nx/cache/file-map.json vendored Normal file

File diff suppressed because it is too large Load Diff

1
.nx/cache/lockfile.hash vendored Normal file
View File

@ -0,0 +1 @@
6756821332300514906

20490
.nx/cache/parsed-lock-file.json vendored Normal file

File diff suppressed because it is too large Load Diff

20883
.nx/cache/project-graph.json vendored Normal file

File diff suppressed because it is too large Load Diff

View File

@ -71,10 +71,10 @@
"builder": "@angular-devkit/build-angular:dev-server",
"configurations": {
"production": {
"browserTarget": "sakai-ng:build:production"
"buildTarget": "sakai-ng:build:production"
},
"development": {
"browserTarget": "sakai-ng:build:development"
"buildTarget": "sakai-ng:build:development"
}
},
"defaultConfiguration": "development"
@ -82,7 +82,7 @@
"extract-i18n": {
"builder": "@angular-devkit/build-angular:extract-i18n",
"options": {
"browserTarget": "sakai-ng:build"
"buildTarget": "sakai-ng:build"
}
},
"test": {

30208
package-lock.json generated

File diff suppressed because it is too large Load Diff

View File

@ -11,44 +11,44 @@
},
"private": true,
"dependencies": {
"@angular/animations": "^16.0.5",
"@angular/animations": "^17.0.7",
"@angular/cdk": "^16.0.4",
"@angular/common": "^16.0.5",
"@angular/compiler": "^16.0.5",
"@angular/core": "^16.0.5",
"@angular/forms": "^16.0.5",
"@angular/platform-browser": "^16.0.5",
"@angular/platform-browser-dynamic": "^16.0.5",
"@angular/router": "^16.0.5",
"@angular/common": "^17.0.7",
"@angular/compiler": "^17.0.7",
"@angular/core": "^17.0.7",
"@angular/forms": "^17.0.7",
"@angular/platform-browser": "^17.0.7",
"@angular/platform-browser-dynamic": "^17.0.7",
"@angular/router": "^17.0.7",
"chart.js": "^3.3.2",
"primeflex": "^3.3.1",
"primeicons": "6.0.1",
"primeng": "16.0.0",
"primeng": "17.2.0",
"quill": "^1.3.7",
"rxjs": "~7.5.0",
"rxjs": "~7.8.1",
"tslib": "^2.3.0",
"web-animations-js": "^2.3.2",
"zone.js": "~0.13.0"
"zone.js": "~0.14.2"
},
"devDependencies": {
"@angular-devkit/build-angular": "~16.0.5",
"@angular-eslint/builder": "^16.0.3",
"@angular-eslint/eslint-plugin": "^16.0.3",
"@angular-eslint/eslint-plugin-template": "^16.0.3",
"@angular-eslint/schematics": "^16.0.3",
"@angular-eslint/template-parser": "^16.0.3",
"@angular/cli": "^16.0.5",
"@angular/compiler-cli": "^16.0.5",
"@angular-devkit/build-angular": "~17.0.7",
"@angular-eslint/builder": "^17.1.1",
"@angular-eslint/eslint-plugin": "^17.1.1",
"@angular-eslint/eslint-plugin-template": "^17.1.1",
"@angular-eslint/schematics": "^17.1.1",
"@angular-eslint/template-parser": "^17.1.1",
"@angular/cli": "^17.0.7",
"@angular/compiler-cli": "^17.0.7",
"@types/jasmine": "~3.10.0",
"@types/node": "^12.11.1",
"@typescript-eslint/parser": "^5.59.2",
"eslint": "^8.39.0",
"@typescript-eslint/parser": "^6.10.0",
"eslint": "^8.53.0",
"jasmine-core": "~4.0.0",
"karma": "~6.3.0",
"karma-chrome-launcher": "~3.1.0",
"karma-coverage": "~2.2.0",
"karma-jasmine": "~4.0.0",
"karma-jasmine-html-reporter": "~1.7.0",
"typescript": "~5.0.4"
"typescript": "~5.2.2"
}
}

View File

@ -4,7 +4,7 @@
<h4>Getting Started</h4>
<p>Sakai is an application template for Angular and is distributed as a CLI project. Current versions is Angular v15 with PrimeNG v15. In case CLI is not installed already, use the command below to set it up.</p>
<pre class="app-code"><code>npm install -g @angular/cli</code></pre>
<pre class="app-code"><code>npm install -g &#64;angular/cli</code></pre>
<p>Once CLI is ready in your system, extract the contents of the zip file distribution, cd to the directory,
install the libraries from npm and then execute "ng serve" to run the application in your local environment.</p>
@ -41,11 +41,11 @@ Run 'ng help' for more options.</code></pre>
initial scale is defined with the <span class="text-primary font-medium">$scale</span> at <strong class="font-semibold">layout.scss</strong>. When default theme or scale is changed at their files initially, it is required to configure the layout service with the matching values
to avoid sync issues. </p>
<pre class="app-code"><code>import &#123; Component, OnInit, inject &#125; from '@angular/core';
<pre class="app-code"><code>import &#123; Component, OnInit, inject &#125; from '&#64;angular/core';
import &#123; PrimeNGConfig &#125; from 'primeng/api';
import &#123; LayoutService &#125; from './layout/service/app.layout.service';
@Component(&#123;
&#64;Component(&#123;
selector: 'app-root',
templateUrl: './app.component.html'
&#125;)
@ -77,10 +77,10 @@ export class AppComponent implements OnInit &#123;
<p>Menu is a separate component defined in <span class="text-primary font-medium">src/app/layout/app.menu.component.ts</span> file and based on PrimeNG MenuModel API. In order to define the menuitems,
navigate to this file and define your own model as a nested structure.</p>
<pre class="app-code"><code>import &#123; OnInit &#125; from '@angular/core';
import &#123; Component &#125; from '@angular/core';
<pre class="app-code"><code>import &#123; OnInit &#125; from '&#64;angular/core';
import &#123; Component &#125; from '&#64;angular/core';
@Component(&#123;
&#64;Component(&#123;
selector: 'app-menu',
templateUrl: './app.menu.component.html'
&#125;)

View File

@ -54,15 +54,15 @@
</span>
</div>
<div class="field col-12 md:col-4">
<div class="p-inputgroup">
<span class="p-inputgroup-addon">
<p-inputGroup>
<p-inputGroupAddon>
<i class="pi pi-user"></i>
</span>
</p-inputGroupAddon>
<span class="p-float-label">
<input type="text" inputId="inputgroup" pInputText [(ngModel)]="value9">
<input type="text" inputId="inputgroup" pInputText [(ngModel)]="value9">
<label for="inputgroup">InputGroup</label>
</span>
</div>
</p-inputGroup>
</div>
<div class="field col-12 md:col-4">
<span class="p-float-label">

View File

@ -10,7 +10,8 @@ import { CalendarModule } from 'primeng/calendar';
import { AutoCompleteModule } from 'primeng/autocomplete';
import { InputTextModule } from 'primeng/inputtext';
import { FormsModule } from '@angular/forms';
import { InputGroupAddonModule } from 'primeng/inputgroupaddon';
import { InputGroupModule } from 'primeng/inputgroup';
@Component({
templateUrl: './floatlabeldemo.component.html',
standalone: true,
@ -25,6 +26,8 @@ import { FormsModule } from '@angular/forms';
DropdownModule,
MultiSelectModule,
InputTextareaModule,
InputGroupModule,
InputGroupAddonModule
],
})
export class FloatLabelDemoComponent implements OnInit {

View File

@ -14,6 +14,9 @@
</div>
</div>
<h5>Password</h5>
<p-password [toggleMask]="true"></p-password>
<h5>Icons</h5>
<div class="grid formgrid">
<div class="col-12 mb-2 lg:col-4 lg:mb-0">
@ -164,37 +167,37 @@
<p-selectButton [options]="paymentOptions" [(ngModel)]="valSelect2" [multiple]="true" optionLabel="name"></p-selectButton>
</div>
</div>
<div class="col-12">
<div class="card">
<h5>InputGroup</h5>
<div class="grid">
<div class="col-12 md:col-6">
<div class="p-inputgroup">
<span class="p-inputgroup-addon"><i class="pi pi-user"></i></span>
<p-inputGroup>
<p-inputGroupAddon><i class="pi pi-user"></i></p-inputGroupAddon>
<input type="text" pInputText placeholder="Username">
</div>
</p-inputGroup>
</div>
<div class="col-12 md:col-6">
<div class="p-inputgroup">
<span class="p-inputgroup-addon"><i class="pi pi-tags" style="line-height: 1.25;"></i></span>
<span class="p-inputgroup-addon"><i class="pi pi-shopping-cart" style="line-height: 1.25;"></i></span>
<p-inputGroup>
<p-inputGroupAddon><i class="pi pi-tags" style="line-height: 1.25;"></i></p-inputGroupAddon>
<p-inputGroupAddon><i class="pi pi-shopping-cart" style="line-height: 1.25;"></i></p-inputGroupAddon>
<input type="text" pInputText placeholder="Price">
<span class="p-inputgroup-addon">$</span>
<span class="p-inputgroup-addon">.00</span>
</div>
<p-inputGroupAddon>$</p-inputGroupAddon>
<p-inputGroupAddon>.00</p-inputGroupAddon>
</p-inputGroup>
</div>
<div class="col-12 md:col-6">
<div class="p-inputgroup">
<p-inputGroup>
<button type="button" pButton pRipple label="Search"></button>
<input type="text" pInputText placeholder="Keyword">
</div>
</p-inputGroup>
</div>
<div class="col-12 md:col-6">
<div class="p-inputgroup">
<span class="p-inputgroup-addon"><p-checkbox [(ngModel)]="valCheck2" [binary]="true"></p-checkbox></span>
<p-inputGroup>
<p-inputGroupAddon><p-checkbox [(ngModel)]="valCheck2" [binary]="true"></p-checkbox></p-inputGroupAddon>
<input type="text" pInputText placeholder="Username">
</div>
</p-inputGroup>
</div>
</div>
</div>

View File

@ -21,14 +21,16 @@ import { FormsModule } from '@angular/forms';
import { AutoCompleteModule } from 'primeng/autocomplete';
import { InputTextareaModule } from 'primeng/inputtextarea';
import { InputTextModule } from 'primeng/inputtext';
import { InputGroupAddonModule } from 'primeng/inputgroupaddon';
import { InputGroupModule } from 'primeng/inputgroup';
import { PasswordModule } from 'primeng/password';
@Component({
templateUrl: './inputdemo.component.html',
standalone: true,
imports: [InputTextModule, InputTextareaModule, AutoCompleteModule, FormsModule, CalendarModule, InputNumberModule, ChipsModule, SliderModule, RatingModule, ColorPickerModule, KnobModule, RadioButtonModule, CheckboxModule, InputSwitchModule, ListboxModule, DropdownModule, MultiSelectModule, SharedModule, ToggleButtonModule, SelectButtonModule, ButtonModule]
imports: [InputTextModule, InputTextareaModule, AutoCompleteModule, FormsModule, CalendarModule, InputNumberModule, ChipsModule, SliderModule, RatingModule, ColorPickerModule, KnobModule, RadioButtonModule, CheckboxModule, InputSwitchModule, ListboxModule, DropdownModule, MultiSelectModule, SharedModule, ToggleButtonModule, SelectButtonModule, ButtonModule, PasswordModule, InputGroupModule, InputGroupAddonModule]
})
export class InputDemoComponent implements OnInit {
private countryService = inject(CountryService);
countries: any[] = [];

View File

@ -9,13 +9,13 @@
<span class="p-input-icon-left">
<i class="pi pi-search"></i>
<input type="search" pInputText placeholder="Search by Name" (input)="onFilter(dv, $event)">
</span>
</span>
<p-dataViewLayoutOptions></p-dataViewLayoutOptions>
</div>
</ng-template>
<ng-template let-product pTemplate="listItem">
<div class="col-12">
<ng-template let-products pTemplate="listItem">
<div class="col-12" *ngFor="let product of products">
<div class="flex flex-column md:flex-row align-items-center p-3 w-full">
<img [src]="'assets/demo/images/product/' + product.image" [alt]="product.name" class="my-4 md:my-0 w-9 md:w-10rem shadow-2 mr-5"/>
<div class="flex-1 flex flex-column align-items-center text-center md:text-left">
@ -36,8 +36,9 @@
</div>
</ng-template>
<ng-template let-product pTemplate="gridItem">
<div class="col-12 md:col-4">
<ng-template let-products pTemplate="gridItem">
<div class="grid grid-nogutter">
<div class="col-12 md:col-4" *ngFor="let product of products">
<div class="card m-3 border-1 surface-border">
<div class="flex flex-wrap gap-2 align-items-center justify-content-between mb-2">
<div class="flex align-items-center">
@ -58,6 +59,7 @@
</div>
</div>
</div>
</div>
</ng-template>
</p-dataView>
</div>

View File

@ -10,11 +10,12 @@ import { FormsModule } from '@angular/forms';
import { RatingModule } from 'primeng/rating';
import { InputTextModule } from 'primeng/inputtext';
import { DropdownModule } from 'primeng/dropdown';
import { NgFor } from '@angular/common';
@Component({
templateUrl: './listdemo.component.html',
standalone: true,
imports: [DataViewModule, SharedModule, DropdownModule, InputTextModule, RatingModule, FormsModule, ButtonModule, PickListModule, OrderListModule]
imports: [NgFor, DataViewModule, SharedModule, DropdownModule, InputTextModule, RatingModule, FormsModule, ButtonModule, PickListModule, OrderListModule]
})
export class ListDemoComponent implements OnInit {
@ -78,5 +79,5 @@ export class ListDemoComponent implements OnInit {
onFilter(dv: DataView, event: Event) {
dv.filter((event.target as HTMLInputElement).value);
}
}