Skip to content

Commit bc3fd3b

Browse files
committed
new demos
1 parent 05fb96e commit bc3fd3b

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

60 files changed

+7539
-0
lines changed
Lines changed: 126 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,126 @@
1+
{
2+
"$schema": "./node_modules/@angular/cli/lib/config/schema.json",
3+
"version": 1,
4+
"newProjectRoot": "projects",
5+
"projects": {
6+
"demo": {
7+
"root": "",
8+
"sourceRoot": "src",
9+
"projectType": "application",
10+
"prefix": "app",
11+
"schematics": {},
12+
"architect": {
13+
"build": {
14+
"builder": "@angular-devkit/build-angular:browser",
15+
"options": {
16+
"outputPath": "dist/demo",
17+
"index": "src/index.html",
18+
"main": "src/main.ts",
19+
"polyfills": "src/polyfills.ts",
20+
"tsConfig": "src/tsconfig.app.json",
21+
"assets": [
22+
"src/assets"
23+
],
24+
"styles": [
25+
"./node_modules/@smart-webcomponents-angular/grid/styles/smart.base.css",
26+
"./node_modules/@smart-webcomponents-angular/grid/styles/smart.grid.css",
27+
"./node_modules/@smart-webcomponents-angular/grid/styles/smart.common.css",
28+
"src/assets/fonts.css",
29+
"src/assets/styles.css"
30+
],
31+
"scripts": []
32+
},
33+
"configurations": {
34+
"production": {
35+
"fileReplacements": [
36+
{
37+
"replace": "src/environments/environment.ts",
38+
"with": "src/environments/environment.prod.ts"
39+
}
40+
],
41+
"optimization": false,
42+
"outputHashing": "all",
43+
"sourceMap": false,
44+
"extractCss": true,
45+
"namedChunks": false,
46+
"aot": true,
47+
"extractLicenses": true,
48+
"vendorChunk": false,
49+
"buildOptimizer": false
50+
}
51+
}
52+
},
53+
"serve": {
54+
"builder": "@angular-devkit/build-angular:dev-server",
55+
"options": {
56+
"browserTarget": "demo:build"
57+
},
58+
"configurations": {
59+
"production": {
60+
"browserTarget": "demo:build:production"
61+
}
62+
}
63+
},
64+
"extract-i18n": {
65+
"builder": "@angular-devkit/build-angular:extract-i18n",
66+
"options": {
67+
"browserTarget": "demo:build"
68+
}
69+
},
70+
"test": {
71+
"builder": "@angular-devkit/build-angular:karma",
72+
"options": {
73+
"main": "src/test.ts",
74+
"polyfills": "src/polyfills.ts",
75+
"tsConfig": "src/tsconfig.spec.json",
76+
"karmaConfig": "src/karma.conf.js",
77+
"styles": [
78+
"styles.css"
79+
],
80+
"scripts": [],
81+
"assets": [
82+
"src/favicon.ico",
83+
"src/assets"
84+
]
85+
}
86+
},
87+
"lint": {
88+
"builder": "@angular-devkit/build-angular:tslint",
89+
"options": {
90+
"tsConfig": [
91+
"src/tsconfig.app.json",
92+
"src/tsconfig.spec.json"
93+
],
94+
"exclude": [
95+
"**/node_modules/**"
96+
]
97+
}
98+
}
99+
}
100+
},
101+
"demo-e2e": {
102+
"root": "e2e/",
103+
"projectType": "application",
104+
"architect": {
105+
"e2e": {
106+
"builder": "@angular-devkit/build-angular:protractor",
107+
"options": {
108+
"protractorConfig": "e2e/protractor.conf.js",
109+
"devServerTarget": "demo:serve"
110+
}
111+
},
112+
"lint": {
113+
"builder": "@angular-devkit/build-angular:tslint",
114+
"options": {
115+
"tsConfig": "e2e/tsconfig.e2e.json",
116+
"exclude": [
117+
"**/node_modules/**"
118+
]
119+
}
120+
}
121+
}
122+
}
123+
},
124+
"defaultProject": "demo"
125+
}
126+
Lines changed: 52 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,52 @@
1+
{
2+
"name": "angular-grid-editing-date-editor",
3+
"description": "Angular grid editing-date-editor example. This example demonstrates commercial components by jQWidgets(https://www.jqwidgets.com/license/)",
4+
"version": "1.0.1",
5+
"homepage": "https://www.htmlelements.com/",
6+
"dependencies": {
7+
"@angular/animations": "^11.2.3",
8+
"@angular/elements": "^11.2.3",
9+
"@angular/common": "^11.2.3",
10+
"@angular/compiler": "^11.2.3",
11+
"@angular/core": "^11.2.3",
12+
"@angular/forms": "^11.2.3",
13+
"@angular/platform-browser": "^11.2.3",
14+
"@angular/platform-browser-dynamic": "^11.2.3",
15+
"@angular/router": "^11.2.3",
16+
"@types/jasmine": "^3.6.6",
17+
"@types/jasminewd2": "^2.0.8",
18+
"@types/node": "^14.14.31",
19+
"core-js": "3.9.1",
20+
"moment": "^2.29.1",
21+
"@smart-webcomponents-angular/grid": "9.2.22",
22+
"rxjs": "^6.6.6",
23+
"zone.js": "^0.11.4"
24+
},
25+
"scripts": {
26+
"ng": "ng",
27+
"start": "ng serve",
28+
"build": "ng build",
29+
"test": "ng test",
30+
"lint": "ng lint",
31+
"e2e": "ng e2e"
32+
},
33+
"devDependencies": {
34+
"@angular-devkit/build-angular": "~0.901.1",
35+
"@angular/cli": "~11.2.3",
36+
"@angular/compiler-cli": "~11.2.3",
37+
"@angular/language-service": "~11.2.3",
38+
"@types/node": "^14.14.35",
39+
"codelyzer": "^5.1.2",
40+
"jasmine-core": "~3.5.0",
41+
"jasmine-spec-reporter": "~4.2.1",
42+
"karma": "~4.4.1",
43+
"karma-chrome-launcher": "~3.1.0",
44+
"karma-coverage-istanbul-reporter": "~2.1.0",
45+
"karma-jasmine": "~3.0.1",
46+
"karma-jasmine-html-reporter": "^1.4.2",
47+
"protractor": "~5.4.3",
48+
"ts-node": "~8.3.0",
49+
"tslint": "~6.1.0",
50+
"typescript": "~4.1.5"
51+
}
52+
}
Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
body {
2+
height: 1000px;
3+
}
4+
5+
smart-grid {
6+
7+
}
8+
@media only screen and (max-width: 700px) {
9+
smart-grid {
10+
width: 100%;
11+
}
12+
}
Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
<div class="demo-description">
2+
<h1>Grid Cells Editing with TimeInput and DateInput editors</h1>
3+
Click on any cell to begin edit its value. To confirm the changes, press
4+
'Enter' or click on another cell or outside the Grid. To cancel the changes,
5+
press 'Escape'.
6+
</div>
7+
<smart-grid #grid id="grid" [dataSource]="dataSource" [selection]="selection" [editing]="editing" [columns]="columns">
8+
</smart-grid>
Lines changed: 62 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,62 @@
1+
import { Component, ViewChild, OnInit, AfterViewInit } from '@angular/core';
2+
import { GridComponent, GridColumn, DataAdapter, Smart } from '@smart-webcomponents-angular/grid';
3+
import { GetData } from '../assets/data';
4+
5+
6+
@Component({
7+
selector: 'app-root',
8+
templateUrl: './app.component.html',
9+
styleUrls: ['./app.component.css']
10+
})
11+
12+
export class AppComponent implements AfterViewInit, OnInit {
13+
@ViewChild('grid', { read: GridComponent, static: false }) grid: GridComponent;
14+
15+
dataSource = new window.Smart.DataAdapter({
16+
dataSource: GetData(100),
17+
dataFields: [
18+
'id: number',
19+
'firstName: string',
20+
'lastName: string',
21+
'productName: string',
22+
'available: bool',
23+
'date: date',
24+
'quantity: number',
25+
'price: number',
26+
'total: number'
27+
]
28+
});
29+
selection = {
30+
enabled: true,
31+
allowCellSelection: true,
32+
allowRowHeaderSelection: true,
33+
allowColumnHeaderSelection: true,
34+
mode: 'extended'
35+
};
36+
editing = {
37+
enabled: true,
38+
mode: 'cell'
39+
};
40+
columns = [
41+
{
42+
label: 'First Name', dataField: 'firstName', editor: 'autoComplete'
43+
},
44+
{
45+
label: 'Image', allowEdit: true, dataField: 'image', template: 'image', editor: {
46+
template: 'image'
47+
}
48+
},
49+
{ label: 'Available', dataField: 'available', template: 'checkBox', editor: 'checkBox' },
50+
{ label: 'Quantity', dataField: 'quantity', editor: 'numberInput' },
51+
{ label: 'Unit Price', dataField: 'price', editor: 'numberInput', cellsFormat: 'c2' }
52+
]
53+
54+
ngOnInit(): void {
55+
}
56+
57+
ngAfterViewInit(): void {
58+
// afterViewInit code.
59+
this.grid.setCellValue(0, 'image', '[{"value":"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAgAAAAIACAYAAAD0eNT6AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyFpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNi1jMTQyIDc5LjE2MDkyNCwgMjAxNy8wNy8xMy0wMTowNjozOSAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENDIChXaW5kb3dzKSIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDo5QjI3MEFGRTVGQ0YxMUVCOUQ1RDg2RTFGRUZDQjA0RiIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDo5QjI3MEFGRjVGQ0YxMUVCOUQ1RDg2RTFGRUZDQjA0RiI+IDx4bXBNTTpEZXJpdmVkRnJvbSBzdFJlZjppbnN0YW5jZUlEPSJ4bXAuaWlkOjlCMjcwQUZDNUZDRjExRUI5RDVEODZFMUZFRkNCMDRGIiBzdFJlZjpkb2N1bWVudElEPSJ4bXAuZGlkOjlCMjcwQUZENUZDRjExRUI5RDVEODZFMUZFRkNCMDRGIi8+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5kPSJyIj8+1dOk/AAADipJREFUeNrs3Y9x2koC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","label":"icon.png"}]');
60+
}
61+
62+
}
Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
import { NgModule } from '@angular/core';
2+
import { BrowserModule } from '@angular/platform-browser';
3+
4+
import { GridModule } from '@smart-webcomponents-angular/grid';
5+
6+
import { AppComponent } from './app.component';
7+
8+
@NgModule({
9+
declarations: [ AppComponent ],
10+
imports: [ BrowserModule, GridModule ],
11+
bootstrap: [ AppComponent ],
12+
entryComponents: [ AppComponent ]
13+
})
14+
15+
export class AppModule { }
Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
import { platformBrowserDynamic } from '@angular/platform-browser-dynamic';
2+
import { enableProdMode } from '@angular/core';
3+
import { AppModule } from './app.module';
4+
5+
enableProdMode();
6+
platformBrowserDynamic().bootstrapModule(AppModule);

0 commit comments

Comments
 (0)