diff --git a/.github/workflows/demos_visual_tests_frameworks.yml b/.github/workflows/demos_visual_tests_frameworks.yml index e909f943d89d..f9b61931d5ef 100644 --- a/.github/workflows/demos_visual_tests_frameworks.yml +++ b/.github/workflows/demos_visual_tests_frameworks.yml @@ -451,7 +451,7 @@ jobs: working-directory: apps/demos env: CHANGEDFILEINFOSPATH: changed-files.json - BROWSERS: chrome:headless --disable-gpu --window-size=1200,800 --js-flags=--random-seed=2147483647 + BROWSERS: chrome:headless --window-size=1200,800 --disable-partial-raster --disable-skia-runtime-opts --run-all-compositor-stages-before-draw --disable-new-content-rendering-timeout --disable-threaded-animation --disable-threaded-scrolling --disable-checker-imaging --disable-image-animation-resync --use-gl="swiftshader" --disable-features=PaintHolding --js-flags=--random-seed=2147483647 --font-render-hinting=none --disable-font-subpixel-positioning # DEBUG: hammerhead:*,testcafe:* CONCURRENCY: 4 TCQUARANTINE: true diff --git a/apps/demos/Demos/Chat/Customization/jQuery/index.js b/apps/demos/Demos/Chat/Customization/jQuery/index.js index 47de3344c96f..b6381e0deed9 100644 --- a/apps/demos/Demos/Chat/Customization/jQuery/index.js +++ b/apps/demos/Demos/Chat/Customization/jQuery/index.js @@ -10,30 +10,6 @@ $(() => { messageTimestampFormat: messageTimestampFormat[0], }).dxChat('instance'); - $('#chat-disabled').dxCheckBox({ - value: false, - text: 'Disable Chat', - onValueChanged(data) { - chat.option('disabled', data.value); - }, - }); - - $('#show-day-headers').dxCheckBox({ - value: true, - text: 'Show Day Headers', - onValueChanged(data) { - chat.option('showDayHeaders', data.value); - }, - }); - - $('#show-message-timestamp').dxCheckBox({ - value: true, - text: 'Show Message Timestamp', - onValueChanged(data) { - chat.option('showMessageTimestamp', data.value); - }, - }); - $('#show-avatar').dxCheckBox({ value: true, text: 'Show Avatar', @@ -50,6 +26,14 @@ $(() => { }, }); + $('#show-day-headers').dxCheckBox({ + value: true, + text: 'Show Day Headers', + onValueChanged(data) { + chat.option('showDayHeaders', data.value); + }, + }); + $('#day-headers-format').dxSelectBox({ items: dayHeaderFormat, value: dayHeaderFormat[0], @@ -59,6 +43,14 @@ $(() => { }, }); + $('#show-message-timestamp').dxCheckBox({ + value: true, + text: 'Show Message Timestamp', + onValueChanged(data) { + chat.option('showMessageTimestamp', data.value); + }, + }); + $('#message-timestamp-format').dxSelectBox({ items: messageTimestampFormat, value: messageTimestampFormat[0], @@ -67,4 +59,12 @@ $(() => { chat.option('messageTimestampFormat', data.value); }, }); + + $('#chat-disabled').dxCheckBox({ + value: false, + text: 'Disable Chat', + onValueChanged(data) { + chat.option('disabled', data.value); + }, + }); }); diff --git a/apps/demos/Demos/Chat/Overview/Vue/App.vue b/apps/demos/Demos/Chat/Overview/Vue/App.vue index e39b85502c55..0141f6fff784 100644 --- a/apps/demos/Demos/Chat/Overview/Vue/App.vue +++ b/apps/demos/Demos/Chat/Overview/Vue/App.vue @@ -1,62 +1,67 @@ - - + + diff --git a/apps/demos/Demos/Pagination/Overview/Angular/app/app.component.css b/apps/demos/Demos/Pagination/Overview/Angular/app/app.component.css new file mode 100644 index 000000000000..f65579fc60ad --- /dev/null +++ b/apps/demos/Demos/Pagination/Overview/Angular/app/app.component.css @@ -0,0 +1,100 @@ +body { + overflow-x: hidden; +} + +.demo-container { + display: flex; + flex-direction: column; + align-items: center; +} + +.container { + min-width: 720px; + width: 100%; +} + +::ng-deep .employees { + display: flex; + flex-wrap: wrap; + gap: 16px; + min-height: 644px; + padding-bottom: 24px; +} + +::ng-deep employee-card { + width: 100%; + max-height: 312px; + align-self: stretch; + overflow: hidden; + border: var(--dx-border-width) solid var(--dx-color-border); + border-radius: var(--dx-border-radius); + background-color: var(--dx-component-color-bg); +} + +::ng-deep .employees.employees--forth employee-card { + min-width: 250px; + width: 390px; + flex-basis: calc(50% - 10px); +} + +::ng-deep .employees.employees--six employee-card { + flex-basis: calc(33.3% - 12.5px); +} + +::ng-deep .employees__img-wrapper { + height: 180px; + position: relative; + overflow: hidden; + border-bottom: var(--dx-border-width) solid var(--dx-color-border); + background-color: #fff; +} + +::ng-deep .employees__img { + display: block; + height: 220px; + position: absolute; + content: ""; + left: 50%; + top: 0; + transform: translateX(-50%); +} + +::ng-deep .employees__info { + padding: 24px; +} + +::ng-deep .employees__info-row { + margin-bottom: 8px; + text-wrap: nowrap; +} + +::ng-deep .employees__info-label { + display: inline-block; + font-weight: 600; + vertical-align: middle; +} + +::ng-deep .employees.employees--forth .employees__info-label { + width: 160px; +} + +::ng-deep .employees.employees--six .employees__info-label { + width: 80px; +} + +::ng-deep .employees__info-value { + display: inline-block; + text-wrap: nowrap; + text-overflow: ellipsis; + vertical-align: middle; + overflow: hidden; + white-space:nowrap +} + +::ng-deep .employees.employees--forth .employees__info-value { + max-width: 180px; +} + +::ng-deep .employees.employees--six .employees__info-value { + max-width: 120px; +} diff --git a/apps/demos/Demos/Pagination/Overview/Angular/app/app.component.html b/apps/demos/Demos/Pagination/Overview/Angular/app/app.component.html index ddc4ed8f5862..175a0142f5e6 100644 --- a/apps/demos/Demos/Pagination/Overview/Angular/app/app.component.html +++ b/apps/demos/Demos/Pagination/Overview/Angular/app/app.component.html @@ -1,7 +1,22 @@ - - +
+
+ @for (employee of pageEmployees; track employee.ID) { + + } +
+ + + +
diff --git a/apps/demos/Demos/Pagination/Overview/Angular/app/app.component.ts b/apps/demos/Demos/Pagination/Overview/Angular/app/app.component.ts index 7ea2d957c548..125f11487eca 100644 --- a/apps/demos/Demos/Pagination/Overview/Angular/app/app.component.ts +++ b/apps/demos/Demos/Pagination/Overview/Angular/app/app.component.ts @@ -1,8 +1,9 @@ import { NgModule, Component, enableProdMode } from '@angular/core'; import { BrowserModule } from '@angular/platform-browser'; import { platformBrowserDynamic } from '@angular/platform-browser-dynamic'; -import { DxDataGridModule } from 'devextreme-angular'; -import { Customer, Service } from './app.service'; +import { DxPaginationModule } from 'devextreme-angular'; +import { Employee, Service } from './app.service'; +import { EmployeeCard } from './employee-card/employee-card.component'; if (!/localhost/.test(document.location.host)) { enableProdMode(); @@ -17,22 +18,53 @@ if (window && window.config.packageConfigPaths) { @Component({ selector: 'demo-app', templateUrl: `.${modulePrefix}/app.component.html`, + styleUrls: [`.${modulePrefix}/app.component.css`], providers: [Service], }) export class AppComponent { - customers: Customer[]; + employees: Employee[]; + + pageEmployees: Employee[]; + + itemCount: number; + + readonly allowedPageSizes = [4, 6]; + + showInfo = true; + + showNavigationButtons = true; + + pageIndex = 1; + + pageSize = 4; + + onPageIndexChange(val) { + this.pageIndex = val; + this.setPageEmployees(); + } + + onPageSizeChange(val) { + this.pageSize = val; + this.setPageEmployees(); + } + + setPageEmployees() { + this.pageEmployees = this.employees.slice((this.pageIndex - 1) * this.pageSize, this.pageIndex * this.pageSize); + } constructor(service: Service) { - this.customers = service.getCustomers(); + this.employees = service.getEmployees(); + this.itemCount = this.employees.length; + this.setPageEmployees(); } } @NgModule({ imports: [ BrowserModule, - DxDataGridModule, + DxPaginationModule, ], - declarations: [AppComponent], + declarations: [AppComponent, EmployeeCard], bootstrap: [AppComponent], }) export class AppModule { } diff --git a/apps/demos/Demos/Pagination/Overview/Angular/app/app.service.ts b/apps/demos/Demos/Pagination/Overview/Angular/app/app.service.ts index db238661893a..32d2a4fbb35d 100644 --- a/apps/demos/Demos/Pagination/Overview/Angular/app/app.service.ts +++ b/apps/demos/Demos/Pagination/Overview/Angular/app/app.service.ts @@ -1,150 +1,434 @@ import { Injectable } from '@angular/core'; -export class Customer { +export class Employee { ID: number; - CompanyName: string; + FullName: string; - Address: string; + Title: string; - City: string; + Employee_Picture: string; - State: string; + Picture: string; - Zipcode: number; + MobilePhone: string; - Phone: string; - - Fax: string; - - Website: string; } -let customers: Customer[] = [{ - ID: 1, - CompanyName: 'Super Mart of the West', - Address: '702 SW 8th Street', - City: 'Bentonville', - State: 'Arkansas', - Zipcode: 72716, - Phone: '(800) 555-2797', - Fax: '(800) 555-2171', - Website: 'http://www.nowebsitesupermart.dx', -}, { - ID: 2, - CompanyName: 'Electronics Depot', - Address: '2455 Paces Ferry Road NW', - City: 'Atlanta', - State: 'Georgia', - Zipcode: 30339, - Phone: '(800) 595-3232', - Fax: '(800) 595-3231', - Website: 'http://www.nowebsitedepot.dx', -}, { - ID: 3, - CompanyName: 'K&S Music', - Address: '1000 Nicllet Mall', - City: 'Minneapolis', - State: 'Minnesota', - Zipcode: 55403, - Phone: '(612) 304-6073', - Fax: '(612) 304-6074', - Website: 'http://www.nowebsitemusic.dx', -}, { - ID: 4, - CompanyName: "Tom's Club", - Address: '999 Lake Drive', - City: 'Issaquah', - State: 'Washington', - Zipcode: 98027, - Phone: '(800) 955-2292', - Fax: '(800) 955-2293', - Website: 'http://www.nowebsitetomsclub.dx', -}, { - ID: 5, - CompanyName: 'E-Mart', - Address: '3333 Beverly Rd', - City: 'Hoffman Estates', - State: 'Illinois', - Zipcode: 60179, - Phone: '(847) 286-2500', - Fax: '(847) 286-2501', - Website: 'http://www.nowebsiteemart.dx', -}, { - ID: 6, - CompanyName: 'Walters', - Address: '200 Wilmot Rd', - City: 'Deerfield', - State: 'Illinois', - Zipcode: 60015, - Phone: '(847) 940-2500', - Fax: '(847) 940-2501', - Website: 'http://www.nowebsitewalters.dx', -}, { - ID: 7, - CompanyName: 'StereoShack', - Address: '400 Commerce S', - City: 'Fort Worth', - State: 'Texas', - Zipcode: 76102, - Phone: '(817) 820-0741', - Fax: '(817) 820-0742', - Website: 'http://www.nowebsiteshack.dx', -}, { - ID: 8, - CompanyName: 'Circuit Town', - Address: '2200 Kensington Court', - City: 'Oak Brook', - State: 'Illinois', - Zipcode: 60523, - Phone: '(800) 955-2929', - Fax: '(800) 955-9392', - Website: 'http://www.nowebsitecircuittown.dx', -}, { - ID: 9, - CompanyName: 'Premier Buy', - Address: '7601 Penn Avenue South', - City: 'Richfield', - State: 'Minnesota', - Zipcode: 55423, - Phone: '(612) 291-1000', - Fax: '(612) 291-2001', - Website: 'http://www.nowebsitepremierbuy.dx', -}, { - ID: 10, - CompanyName: 'ElectrixMax', - Address: '263 Shuman Blvd', - City: 'Naperville', - State: 'Illinois', - Zipcode: 60563, - Phone: '(630) 438-7800', - Fax: '(630) 438-7801', - Website: 'http://www.nowebsiteelectrixmax.dx', -}, { - ID: 11, - CompanyName: 'Video Emporium', - Address: '1201 Elm Street', - City: 'Dallas', - State: 'Texas', - Zipcode: 75270, - Phone: '(214) 854-3000', - Fax: '(214) 854-3001', - Website: 'http://www.nowebsitevideoemporium.dx', -}, { - ID: 12, - CompanyName: 'Screen Shop', - Address: '1000 Lowes Blvd', - City: 'Mooresville', - State: 'North Carolina', - Zipcode: 28117, - Phone: '(800) 445-6937', - Fax: '(800) 445-6938', - Website: 'http://www.nowebsitescreenshop.dx', -}]; +const employees: Employee[] = [ + { + ID: 1, + FullName: 'John Heart', + Title: 'CEO', + Employee_Picture: '01.png', + Picture: '../../../../images/employees/01.png', + MobilePhone: '2135559392', + }, + { + ID: 2, + FullName: 'Samantha Bright', + Title: 'COO', + Employee_Picture: '30.png', + Picture: '../../../../images/employees/30.png', + MobilePhone: '2135552858', + }, + { + ID: 3, + FullName: 'Arthur Miller', + Title: 'CTO', + Employee_Picture: '10.png', + Picture: '../../../../images/employees/10.png', + MobilePhone: '3105558583', + }, + { + ID: 4, + FullName: 'Robert Reagan', + Title: 'CMO', + Employee_Picture: '03.png', + Picture: '../../../../images/employees/03.png', + MobilePhone: '8185552387', + }, + { + ID: 5, + FullName: 'Greta Sims', + Title: 'HR Manager', + Employee_Picture: '04.png', + Picture: '../../../../images/employees/04.png', + MobilePhone: '8185556546', + }, + { + ID: 6, + FullName: 'Brett Wade', + Title: 'IT Manager', + Employee_Picture: '05.png', + Picture: '../../../../images/employees/05.png', + MobilePhone: '6265550358', + }, + { + ID: 7, + FullName: 'Sandra Johnson', + Title: 'Controller', + Employee_Picture: '06.png', + Picture: '../../../../images/employees/06.png', + MobilePhone: '5625552082', + }, + { + ID: 8, + FullName: 'Ed Holmes', + Title: 'Sales Manager', + Employee_Picture: '11.png', + Picture: '../../../../images/employees/11.png', + MobilePhone: '3105551288', + }, + { + ID: 9, + FullName: 'Barb Banks', + Title: 'Support Manager', + Employee_Picture: '20.png', + Picture: '../../../../images/employees/20.png', + MobilePhone: '3105553355', + }, + { + ID: 10, + FullName: 'Kevin Carter', + Title: 'Shipping Manager', + Employee_Picture: '07.png', + Picture: '../../../../images/employees/07.png', + MobilePhone: '2135552840', + }, + { + ID: 11, + FullName: 'Cindy Stanwick', + Title: 'HR Assistant', + Employee_Picture: '08.png', + Picture: '../../../../images/employees/08.png', + MobilePhone: '8185556655', + }, + { + ID: 12, + FullName: 'Sammy Hill', + Title: 'Sales Assistant', + Employee_Picture: '12.png', + Picture: '../../../../images/employees/12.png', + MobilePhone: '6265557292', + }, + { + ID: 13, + FullName: 'Davey Jones', + Title: 'Shipping Assistant', + Employee_Picture: '13.png', + Picture: '../../../../images/employees/13.png', + MobilePhone: '6265550281', + }, + { + ID: 14, + FullName: 'Victor Norris', + Title: 'Shipping Assistant', + Employee_Picture: '14.png', + Picture: '../../../../images/employees/14.png', + MobilePhone: '2135559278', + }, + { + ID: 15, + FullName: 'Mary Stern', + Title: 'Shipping Assistant', + Employee_Picture: '15.png', + Picture: '../../../../images/employees/15.png', + MobilePhone: '8185557857', + }, + { + ID: 16, + FullName: 'Robin Cosworth', + Title: 'Shipping Assistant', + Employee_Picture: '16.png', + Picture: '../../../../images/employees/16.png', + MobilePhone: '8185550942', + }, + { + ID: 17, + FullName: 'Kelly Rodriguez', + Title: 'Support Assistant', + Employee_Picture: '17.png', + Picture: '../../../../images/employees/17.png', + MobilePhone: '8185559248', + }, + { + ID: 18, + FullName: 'James Anderson', + Title: 'Support Assistant', + Employee_Picture: '18.png', + Picture: '../../../../images/employees/18.png', + MobilePhone: '3235554702', + }, + { + ID: 19, + FullName: 'Antony Remmen', + Title: 'Support Assistant', + Employee_Picture: '19.png', + Picture: '../../../../images/employees/19.png', + MobilePhone: '3105556625', + }, + { + ID: 20, + FullName: 'Olivia Peyton', + Title: 'Sales Assistant', + Employee_Picture: '09.png', + Picture: '../../../../images/employees/09.png', + MobilePhone: '3105552728', + }, + { + ID: 21, + FullName: 'Taylor Riley', + Title: 'Network Admin', + Employee_Picture: '21.png', + Picture: '../../../../images/employees/21.png', + MobilePhone: '3105557276', + }, + { + ID: 22, + FullName: 'Amelia Harper', + Title: 'Network Admin', + Employee_Picture: '22.png', + Picture: '../../../../images/employees/22.png', + MobilePhone: '2135554276', + }, + { + ID: 23, + FullName: 'Wally Hobbs', + Title: 'Programmer', + Employee_Picture: '23.png', + Picture: '../../../../images/employees/23.png', + MobilePhone: '8185558872', + }, + { + ID: 24, + FullName: 'Brad Jameson', + Title: 'Programmer', + Employee_Picture: '24.png', + Picture: '../../../../images/employees/24.png', + MobilePhone: '8185554646', + }, + { + ID: 25, + FullName: 'Karen Goodson', + Title: 'Programmer', + Employee_Picture: '25.png', + Picture: '../../../../images/employees/25.png', + MobilePhone: '6265550908', + }, + { + ID: 26, + FullName: 'Marcus Orbison', + Title: 'Travel Coordinator', + Employee_Picture: '26.png', + Picture: '../../../../images/employees/26.png', + MobilePhone: '2135557098', + }, + { + ID: 27, + FullName: 'Sandy Bright', + Title: 'Benefits Coordinator', + Employee_Picture: '27.png', + Picture: '../../../../images/employees/27.png', + MobilePhone: '8185550524', + }, + { + ID: 28, + FullName: 'Morgan Kennedy', + Title: 'Graphic Designer', + Employee_Picture: '28.png', + Picture: '../../../../images/employees/28.png', + MobilePhone: '8185558238', + }, + { + ID: 29, + FullName: 'Violet Bailey', + Title: 'Jr Graphic Designer', + Employee_Picture: '29.png', + Picture: '../../../../images/employees/29.png', + MobilePhone: '8185552478', + }, + { + ID: 30, + FullName: 'Ken Samuelson', + Title: 'Ombudsman', + Employee_Picture: '02.png', + Picture: '../../../../images/employees/02.png', + MobilePhone: '5625559282', + }, + { + ID: 31, + FullName: 'Nat Maguiree', + Title: 'Trainer', + Employee_Picture: '31.png', + Picture: '../../../../images/employees/31.png', + MobilePhone: '5625558377', + }, + { + ID: 32, + FullName: 'Bart Arnaz', + Title: 'Director of Engineering', + Employee_Picture: '32.png', + Picture: '../../../../images/employees/32.png', + MobilePhone: '7145552000', + }, + { + ID: 33, + FullName: 'Leah Simpson', + Title: 'Test Coordinator', + Employee_Picture: '33.png', + Picture: '../../../../images/employees/33.png', + MobilePhone: '5625595830', + }, + { + ID: 34, + FullName: 'Arnie Schwartz', + Title: 'Engineer', + Employee_Picture: '34.png', + Picture: '../../../../images/employees/34.png', + MobilePhone: '7145558882', + }, + { + ID: 35, + FullName: 'Billy Zimmer', + Title: 'Engineer', + Employee_Picture: '51.png', + Picture: '../../../../images/employees/51.png', + MobilePhone: '9095556939', + }, + { + ID: 36, + FullName: 'Samantha Piper', + Title: 'Engineer', + Employee_Picture: '35.png', + Picture: '../../../../images/employees/35.png', + MobilePhone: '3235554512', + }, + { + ID: 37, + FullName: 'Maggie Boxter', + Title: 'Engineer', + Employee_Picture: '36.png', + Picture: '../../../../images/employees/36.png', + MobilePhone: '7145557239', + }, + { + ID: 38, + FullName: 'Terry Bradley', + Title: 'QA Engineer', + Employee_Picture: '37.png', + Picture: '../../../../images/employees/37.png', + MobilePhone: '8055552788', + }, + { + ID: 39, + FullName: 'Gabe Jones', + Title: 'Retail Coordinator', + Employee_Picture: '38.png', + Picture: '../../../../images/employees/38.png', + MobilePhone: '3105555395', + }, + { + ID: 40, + FullName: 'Lucy Ball', + Title: 'Sales Assistant', + Employee_Picture: '39.png', + Picture: '../../../../images/employees/39.png', + MobilePhone: '3105553357', + }, + { + ID: 41, + FullName: 'Jim Packard', + Title: 'Retail Sales Manager', + Employee_Picture: '40.png', + Picture: '../../../../images/employees/40.png', + MobilePhone: '6615558224', + }, + { + ID: 42, + FullName: 'Hannah Brookly', + Title: 'Online Sales Manager', + Employee_Picture: '41.png', + Picture: '../../../../images/employees/41.png', + MobilePhone: '8055553627', + }, + { + ID: 43, + FullName: 'Harv Mudd', + Title: 'Retail Sales Manager', + Employee_Picture: '42.png', + Picture: '../../../../images/employees/42.png', + MobilePhone: '8315553895', + }, + { + ID: 44, + FullName: 'Clark Morgan', + Title: 'Retail Sales Manager', + Employee_Picture: '43.png', + Picture: '../../../../images/employees/43.png', + MobilePhone: '9255552525', + }, + { + ID: 45, + FullName: 'Todd Hoffman', + Title: 'Retail Sales Manager', + Employee_Picture: '44.png', + Picture: '../../../../images/employees/44.png', + MobilePhone: '9255553579', + }, + { + ID: 46, + FullName: 'Jackie Garmin', + Title: 'Support Assistant', + Employee_Picture: '45.png', + Picture: '../../../../images/employees/45.png', + MobilePhone: '2135551824', + }, + { + ID: 47, + FullName: 'Lincoln Bartlett', + Title: 'Sales Assistant', + Employee_Picture: '46.png', + Picture: '../../../../images/employees/46.png', + MobilePhone: '2135558272', + }, + { + ID: 48, + FullName: 'Brad Farkus', + Title: 'Engineer', + Employee_Picture: '47.png', + Picture: '../../../../images/employees/47.png', + MobilePhone: '2135553626', + }, + { + ID: 49, + FullName: 'Jenny Hobbs', + Title: 'Shipping Assistant', + Employee_Picture: '48.png', + Picture: '../../../../images/employees/48.png', + MobilePhone: '3105552668', + }, + { + ID: 50, + FullName: 'Dallas Lou', + Title: 'Shipping Assistant', + Employee_Picture: '49.png', + Picture: '../../../../images/employees/49.png', + MobilePhone: '2135558357', + }, + { + ID: 51, + FullName: 'Stu Pizaro', + Title: 'Engineer', + Employee_Picture: '50.png', + Picture: '../../../../images/employees/50.png', + MobilePhone: '2135552552', + }, +]; @Injectable() export class Service { - getCustomers() { - return customers; + getEmployees() { + return employees; } } diff --git a/apps/demos/Demos/Pagination/Overview/Angular/app/employee-card/employee-card.component.html b/apps/demos/Demos/Pagination/Overview/Angular/app/employee-card/employee-card.component.html new file mode 100644 index 000000000000..436ef5afdbfc --- /dev/null +++ b/apps/demos/Demos/Pagination/Overview/Angular/app/employee-card/employee-card.component.html @@ -0,0 +1,21 @@ +
+ +
+
+
+ Full Name: + {{ employee.FullName }} +
+
+ Position: + {{ employee.Title }} +
+
+ Phone: + {{ employee.MobilePhone }} +
+
diff --git a/apps/demos/Demos/Pagination/Overview/Angular/app/employee-card/employee-card.component.ts b/apps/demos/Demos/Pagination/Overview/Angular/app/employee-card/employee-card.component.ts new file mode 100644 index 000000000000..7f112f55fbdb --- /dev/null +++ b/apps/demos/Demos/Pagination/Overview/Angular/app/employee-card/employee-card.component.ts @@ -0,0 +1,16 @@ +import { Component, Input } from '@angular/core'; +import { Employee } from '../app.service'; + +let modulePrefix = ''; +// @ts-ignore +if (window && window.config.packageConfigPaths) { + modulePrefix = '/app'; +} + +@Component({ + selector: 'employee-card', + templateUrl: `.${modulePrefix}/employee-card/employee-card.component.html`, +}) +export class EmployeeCard { + @Input() employee: Employee; +} diff --git a/apps/demos/Demos/Pagination/Overview/Angular/index.html b/apps/demos/Demos/Pagination/Overview/Angular/index.html index 3bb93e38968b..d6cce972f42b 100644 --- a/apps/demos/Demos/Pagination/Overview/Angular/index.html +++ b/apps/demos/Demos/Pagination/Overview/Angular/index.html @@ -8,7 +8,7 @@ - + diff --git a/apps/demos/Demos/Pagination/Overview/React/App.tsx b/apps/demos/Demos/Pagination/Overview/React/App.tsx index 62e519df1408..43ffc99aae3b 100644 --- a/apps/demos/Demos/Pagination/Overview/React/App.tsx +++ b/apps/demos/Demos/Pagination/Overview/React/App.tsx @@ -1,13 +1,14 @@ import React, { useState } from 'react'; import Pagination from 'devextreme-react/pagination'; import EmployeeGallery from './EmployeesGallery.tsx'; + import { employees } from './data.ts'; const PAGE_SIZES = [4, 6]; const App = () => { - const [pageSize, setPageSize] = useState(4); - const [pageIndex, setPageIndex] = useState(1); + const [pageSize, setPageSize] = useState(4); + const [pageIndex, setPageIndex] = useState(1); return ( <> diff --git a/apps/demos/Demos/Pagination/Overview/React/EmployeeCard.tsx b/apps/demos/Demos/Pagination/Overview/React/EmployeeCard.tsx index b2256729a59a..cf450dd52775 100644 --- a/apps/demos/Demos/Pagination/Overview/React/EmployeeCard.tsx +++ b/apps/demos/Demos/Pagination/Overview/React/EmployeeCard.tsx @@ -1,13 +1,5 @@ import React from 'react'; - -interface Employee { - ID: number; - FullName: string; - Title: string; - Employee_Picture: string; - Picture: string; - MobilePhone: string; -} +import { Employee } from './data'; interface EmployeeCardProps { employee: Employee; diff --git a/apps/demos/Demos/Pagination/Overview/React/EmployeesGallery.tsx b/apps/demos/Demos/Pagination/Overview/React/EmployeesGallery.tsx index e6fe26410b53..c8667c9b344f 100644 --- a/apps/demos/Demos/Pagination/Overview/React/EmployeesGallery.tsx +++ b/apps/demos/Demos/Pagination/Overview/React/EmployeesGallery.tsx @@ -1,14 +1,6 @@ import React from 'react'; import EmployeeCard from './EmployeeCard.tsx'; - -interface Employee { - ID: number; - FullName: string; - Title: string; - Employee_Picture: string; - Picture: string; - MobilePhone: string; -} +import { Employee } from './data'; interface EmployeeGalleryProps { employees: Employee[]; diff --git a/apps/demos/Demos/Pagination/Overview/React/data.ts b/apps/demos/Demos/Pagination/Overview/React/data.ts index ba137678f19b..bd2e43e18ba2 100644 --- a/apps/demos/Demos/Pagination/Overview/React/data.ts +++ b/apps/demos/Demos/Pagination/Overview/React/data.ts @@ -1,4 +1,13 @@ -export const employees = [ +export interface Employee { + ID: number; + FullName: string; + Title: string; + Employee_Picture: string; + Picture: string; + MobilePhone: string; +} + +export const employees: Employee[] = [ { ID: 1, FullName: 'John Heart', diff --git a/apps/demos/Demos/Pagination/Overview/Vue/App.vue b/apps/demos/Demos/Pagination/Overview/Vue/App.vue index ad7848d2eb91..ab1ada0a0e04 100644 --- a/apps/demos/Demos/Pagination/Overview/Vue/App.vue +++ b/apps/demos/Demos/Pagination/Overview/Vue/App.vue @@ -1,24 +1,159 @@ - + + \ No newline at end of file diff --git a/apps/demos/Demos/Pagination/Overview/Vue/data.js b/apps/demos/Demos/Pagination/Overview/Vue/data.js deleted file mode 100644 index 6380157422df..000000000000 --- a/apps/demos/Demos/Pagination/Overview/Vue/data.js +++ /dev/null @@ -1,121 +0,0 @@ -export const customers = [{ - ID: 1, - CompanyName: 'Super Mart of the West', - Address: '702 SW 8th Street', - City: 'Bentonville', - State: 'Arkansas', - Zipcode: 72716, - Phone: '(800) 555-2797', - Fax: '(800) 555-2171', - Website: 'http://www.nowebsitesupermart.dx', -}, { - ID: 2, - CompanyName: 'Electronics Depot', - Address: '2455 Paces Ferry Road NW', - City: 'Atlanta', - State: 'Georgia', - Zipcode: 30339, - Phone: '(800) 595-3232', - Fax: '(800) 595-3231', - Website: 'http://www.nowebsitedepot.dx', -}, { - ID: 3, - CompanyName: 'K&S Music', - Address: '1000 Nicllet Mall', - City: 'Minneapolis', - State: 'Minnesota', - Zipcode: 55403, - Phone: '(612) 304-6073', - Fax: '(612) 304-6074', - Website: 'http://www.nowebsitemusic.dx', -}, { - ID: 4, - CompanyName: "Tom's Club", - Address: '999 Lake Drive', - City: 'Issaquah', - State: 'Washington', - Zipcode: 98027, - Phone: '(800) 955-2292', - Fax: '(800) 955-2293', - Website: 'http://www.nowebsitetomsclub.dx', -}, { - ID: 5, - CompanyName: 'E-Mart', - Address: '3333 Beverly Rd', - City: 'Hoffman Estates', - State: 'Illinois', - Zipcode: 60179, - Phone: '(847) 286-2500', - Fax: '(847) 286-2501', - Website: 'http://www.nowebsiteemart.dx', -}, { - ID: 6, - CompanyName: 'Walters', - Address: '200 Wilmot Rd', - City: 'Deerfield', - State: 'Illinois', - Zipcode: 60015, - Phone: '(847) 940-2500', - Fax: '(847) 940-2501', - Website: 'http://www.nowebsitewalters.dx', -}, { - ID: 7, - CompanyName: 'StereoShack', - Address: '400 Commerce S', - City: 'Fort Worth', - State: 'Texas', - Zipcode: 76102, - Phone: '(817) 820-0741', - Fax: '(817) 820-0742', - Website: 'http://www.nowebsiteshack.dx', -}, { - ID: 8, - CompanyName: 'Circuit Town', - Address: '2200 Kensington Court', - City: 'Oak Brook', - State: 'Illinois', - Zipcode: 60523, - Phone: '(800) 955-2929', - Fax: '(800) 955-9392', - Website: 'http://www.nowebsitecircuittown.dx', -}, { - ID: 9, - CompanyName: 'Premier Buy', - Address: '7601 Penn Avenue South', - City: 'Richfield', - State: 'Minnesota', - Zipcode: 55423, - Phone: '(612) 291-1000', - Fax: '(612) 291-2001', - Website: 'http://www.nowebsitepremierbuy.dx', -}, { - ID: 10, - CompanyName: 'ElectrixMax', - Address: '263 Shuman Blvd', - City: 'Naperville', - State: 'Illinois', - Zipcode: 60563, - Phone: '(630) 438-7800', - Fax: '(630) 438-7801', - Website: 'http://www.nowebsiteelectrixmax.dx', -}, { - ID: 11, - CompanyName: 'Video Emporium', - Address: '1201 Elm Street', - City: 'Dallas', - State: 'Texas', - Zipcode: 75270, - Phone: '(214) 854-3000', - Fax: '(214) 854-3001', - Website: 'http://www.nowebsitevideoemporium.dx', -}, { - ID: 12, - CompanyName: 'Screen Shop', - Address: '1000 Lowes Blvd', - City: 'Mooresville', - State: 'North Carolina', - Zipcode: 28117, - Phone: '(800) 445-6937', - Fax: '(800) 445-6938', - Website: 'http://www.nowebsitescreenshop.dx', -}]; diff --git a/apps/demos/Demos/Pagination/Overview/Vue/data.ts b/apps/demos/Demos/Pagination/Overview/Vue/data.ts new file mode 100644 index 000000000000..ee0d580fe540 --- /dev/null +++ b/apps/demos/Demos/Pagination/Overview/Vue/data.ts @@ -0,0 +1,419 @@ +export interface Employee { + ID: number; + FullName: string; + Title: string; + Employee_Picture: string; + Picture: string; + MobilePhone: string; +} + +export const employees: Employee[] = [ + { + ID: 1, + FullName: 'John Heart', + Title: 'CEO', + Employee_Picture: '01.png', + Picture: '../../../../images/employees/01.png', + MobilePhone: '2135559392', + }, + { + ID: 2, + FullName: 'Samantha Bright', + Title: 'COO', + Employee_Picture: '30.png', + Picture: '../../../../images/employees/30.png', + MobilePhone: '2135552858', + }, + { + ID: 3, + FullName: 'Arthur Miller', + Title: 'CTO', + Employee_Picture: '10.png', + Picture: '../../../../images/employees/10.png', + MobilePhone: '3105558583', + }, + { + ID: 4, + FullName: 'Robert Reagan', + Title: 'CMO', + Employee_Picture: '03.png', + Picture: '../../../../images/employees/03.png', + MobilePhone: '8185552387', + }, + { + ID: 5, + FullName: 'Greta Sims', + Title: 'HR Manager', + Employee_Picture: '04.png', + Picture: '../../../../images/employees/04.png', + MobilePhone: '8185556546', + }, + { + ID: 6, + FullName: 'Brett Wade', + Title: 'IT Manager', + Employee_Picture: '05.png', + Picture: '../../../../images/employees/05.png', + MobilePhone: '6265550358', + }, + { + ID: 7, + FullName: 'Sandra Johnson', + Title: 'Controller', + Employee_Picture: '06.png', + Picture: '../../../../images/employees/06.png', + MobilePhone: '5625552082', + }, + { + ID: 8, + FullName: 'Ed Holmes', + Title: 'Sales Manager', + Employee_Picture: '11.png', + Picture: '../../../../images/employees/11.png', + MobilePhone: '3105551288', + }, + { + ID: 9, + FullName: 'Barb Banks', + Title: 'Support Manager', + Employee_Picture: '20.png', + Picture: '../../../../images/employees/20.png', + MobilePhone: '3105553355', + }, + { + ID: 10, + FullName: 'Kevin Carter', + Title: 'Shipping Manager', + Employee_Picture: '07.png', + Picture: '../../../../images/employees/07.png', + MobilePhone: '2135552840', + }, + { + ID: 11, + FullName: 'Cindy Stanwick', + Title: 'HR Assistant', + Employee_Picture: '08.png', + Picture: '../../../../images/employees/08.png', + MobilePhone: '8185556655', + }, + { + ID: 12, + FullName: 'Sammy Hill', + Title: 'Sales Assistant', + Employee_Picture: '12.png', + Picture: '../../../../images/employees/12.png', + MobilePhone: '6265557292', + }, + { + ID: 13, + FullName: 'Davey Jones', + Title: 'Shipping Assistant', + Employee_Picture: '13.png', + Picture: '../../../../images/employees/13.png', + MobilePhone: '6265550281', + }, + { + ID: 14, + FullName: 'Victor Norris', + Title: 'Shipping Assistant', + Employee_Picture: '14.png', + Picture: '../../../../images/employees/14.png', + MobilePhone: '2135559278', + }, + { + ID: 15, + FullName: 'Mary Stern', + Title: 'Shipping Assistant', + Employee_Picture: '15.png', + Picture: '../../../../images/employees/15.png', + MobilePhone: '8185557857', + }, + { + ID: 16, + FullName: 'Robin Cosworth', + Title: 'Shipping Assistant', + Employee_Picture: '16.png', + Picture: '../../../../images/employees/16.png', + MobilePhone: '8185550942', + }, + { + ID: 17, + FullName: 'Kelly Rodriguez', + Title: 'Support Assistant', + Employee_Picture: '17.png', + Picture: '../../../../images/employees/17.png', + MobilePhone: '8185559248', + }, + { + ID: 18, + FullName: 'James Anderson', + Title: 'Support Assistant', + Employee_Picture: '18.png', + Picture: '../../../../images/employees/18.png', + MobilePhone: '3235554702', + }, + { + ID: 19, + FullName: 'Antony Remmen', + Title: 'Support Assistant', + Employee_Picture: '19.png', + Picture: '../../../../images/employees/19.png', + MobilePhone: '3105556625', + }, + { + ID: 20, + FullName: 'Olivia Peyton', + Title: 'Sales Assistant', + Employee_Picture: '09.png', + Picture: '../../../../images/employees/09.png', + MobilePhone: '3105552728', + }, + { + ID: 21, + FullName: 'Taylor Riley', + Title: 'Network Admin', + Employee_Picture: '21.png', + Picture: '../../../../images/employees/21.png', + MobilePhone: '3105557276', + }, + { + ID: 22, + FullName: 'Amelia Harper', + Title: 'Network Admin', + Employee_Picture: '22.png', + Picture: '../../../../images/employees/22.png', + MobilePhone: '2135554276', + }, + { + ID: 23, + FullName: 'Wally Hobbs', + Title: 'Programmer', + Employee_Picture: '23.png', + Picture: '../../../../images/employees/23.png', + MobilePhone: '8185558872', + }, + { + ID: 24, + FullName: 'Brad Jameson', + Title: 'Programmer', + Employee_Picture: '24.png', + Picture: '../../../../images/employees/24.png', + MobilePhone: '8185554646', + }, + { + ID: 25, + FullName: 'Karen Goodson', + Title: 'Programmer', + Employee_Picture: '25.png', + Picture: '../../../../images/employees/25.png', + MobilePhone: '6265550908', + }, + { + ID: 26, + FullName: 'Marcus Orbison', + Title: 'Travel Coordinator', + Employee_Picture: '26.png', + Picture: '../../../../images/employees/26.png', + MobilePhone: '2135557098', + }, + { + ID: 27, + FullName: 'Sandy Bright', + Title: 'Benefits Coordinator', + Employee_Picture: '27.png', + Picture: '../../../../images/employees/27.png', + MobilePhone: '8185550524', + }, + { + ID: 28, + FullName: 'Morgan Kennedy', + Title: 'Graphic Designer', + Employee_Picture: '28.png', + Picture: '../../../../images/employees/28.png', + MobilePhone: '8185558238', + }, + { + ID: 29, + FullName: 'Violet Bailey', + Title: 'Jr Graphic Designer', + Employee_Picture: '29.png', + Picture: '../../../../images/employees/29.png', + MobilePhone: '8185552478', + }, + { + ID: 30, + FullName: 'Ken Samuelson', + Title: 'Ombudsman', + Employee_Picture: '02.png', + Picture: '../../../../images/employees/02.png', + MobilePhone: '5625559282', + }, + { + ID: 31, + FullName: 'Nat Maguiree', + Title: 'Trainer', + Employee_Picture: '31.png', + Picture: '../../../../images/employees/31.png', + MobilePhone: '5625558377', + }, + { + ID: 32, + FullName: 'Bart Arnaz', + Title: 'Director of Engineering', + Employee_Picture: '32.png', + Picture: '../../../../images/employees/32.png', + MobilePhone: '7145552000', + }, + { + ID: 33, + FullName: 'Leah Simpson', + Title: 'Test Coordinator', + Employee_Picture: '33.png', + Picture: '../../../../images/employees/33.png', + MobilePhone: '5625595830', + }, + { + ID: 34, + FullName: 'Arnie Schwartz', + Title: 'Engineer', + Employee_Picture: '34.png', + Picture: '../../../../images/employees/34.png', + MobilePhone: '7145558882', + }, + { + ID: 35, + FullName: 'Billy Zimmer', + Title: 'Engineer', + Employee_Picture: '51.png', + Picture: '../../../../images/employees/51.png', + MobilePhone: '9095556939', + }, + { + ID: 36, + FullName: 'Samantha Piper', + Title: 'Engineer', + Employee_Picture: '35.png', + Picture: '../../../../images/employees/35.png', + MobilePhone: '3235554512', + }, + { + ID: 37, + FullName: 'Maggie Boxter', + Title: 'Engineer', + Employee_Picture: '36.png', + Picture: '../../../../images/employees/36.png', + MobilePhone: '7145557239', + }, + { + ID: 38, + FullName: 'Terry Bradley', + Title: 'QA Engineer', + Employee_Picture: '37.png', + Picture: '../../../../images/employees/37.png', + MobilePhone: '8055552788', + }, + { + ID: 39, + FullName: 'Gabe Jones', + Title: 'Retail Coordinator', + Employee_Picture: '38.png', + Picture: '../../../../images/employees/38.png', + MobilePhone: '3105555395', + }, + { + ID: 40, + FullName: 'Lucy Ball', + Title: 'Sales Assistant', + Employee_Picture: '39.png', + Picture: '../../../../images/employees/39.png', + MobilePhone: '3105553357', + }, + { + ID: 41, + FullName: 'Jim Packard', + Title: 'Retail Sales Manager', + Employee_Picture: '40.png', + Picture: '../../../../images/employees/40.png', + MobilePhone: '6615558224', + }, + { + ID: 42, + FullName: 'Hannah Brookly', + Title: 'Online Sales Manager', + Employee_Picture: '41.png', + Picture: '../../../../images/employees/41.png', + MobilePhone: '8055553627', + }, + { + ID: 43, + FullName: 'Harv Mudd', + Title: 'Retail Sales Manager', + Employee_Picture: '42.png', + Picture: '../../../../images/employees/42.png', + MobilePhone: '8315553895', + }, + { + ID: 44, + FullName: 'Clark Morgan', + Title: 'Retail Sales Manager', + Employee_Picture: '43.png', + Picture: '../../../../images/employees/43.png', + MobilePhone: '9255552525', + }, + { + ID: 45, + FullName: 'Todd Hoffman', + Title: 'Retail Sales Manager', + Employee_Picture: '44.png', + Picture: '../../../../images/employees/44.png', + MobilePhone: '9255553579', + }, + { + ID: 46, + FullName: 'Jackie Garmin', + Title: 'Support Assistant', + Employee_Picture: '45.png', + Picture: '../../../../images/employees/45.png', + MobilePhone: '2135551824', + }, + { + ID: 47, + FullName: 'Lincoln Bartlett', + Title: 'Sales Assistant', + Employee_Picture: '46.png', + Picture: '../../../../images/employees/46.png', + MobilePhone: '2135558272', + }, + { + ID: 48, + FullName: 'Brad Farkus', + Title: 'Engineer', + Employee_Picture: '47.png', + Picture: '../../../../images/employees/47.png', + MobilePhone: '2135553626', + }, + { + ID: 49, + FullName: 'Jenny Hobbs', + Title: 'Shipping Assistant', + Employee_Picture: '48.png', + Picture: '../../../../images/employees/48.png', + MobilePhone: '3105552668', + }, + { + ID: 50, + FullName: 'Dallas Lou', + Title: 'Shipping Assistant', + Employee_Picture: '49.png', + Picture: '../../../../images/employees/49.png', + MobilePhone: '2135558357', + }, + { + ID: 51, + FullName: 'Stu Pizaro', + Title: 'Engineer', + Employee_Picture: '50.png', + Picture: '../../../../images/employees/50.png', + MobilePhone: '2135552552', + }, +]; diff --git a/apps/demos/Demos/Pagination/Overview/Vue/index.html b/apps/demos/Demos/Pagination/Overview/Vue/index.html index ec140a786d7e..7ebc7f30a85a 100644 --- a/apps/demos/Demos/Pagination/Overview/Vue/index.html +++ b/apps/demos/Demos/Pagination/Overview/Vue/index.html @@ -17,13 +17,13 @@
-
+
diff --git a/apps/demos/Demos/Pagination/Overview/Vue/index.js b/apps/demos/Demos/Pagination/Overview/Vue/index.ts similarity index 63% rename from apps/demos/Demos/Pagination/Overview/Vue/index.js rename to apps/demos/Demos/Pagination/Overview/Vue/index.ts index 684d04215d72..0c2ce8315988 100644 --- a/apps/demos/Demos/Pagination/Overview/Vue/index.js +++ b/apps/demos/Demos/Pagination/Overview/Vue/index.ts @@ -1,4 +1,4 @@ import { createApp } from 'vue'; import App from './App.vue'; -createApp(App).mount('#app'); +createApp(App).mount('.container'); diff --git a/apps/demos/Demos/Pagination/Overview/description.md b/apps/demos/Demos/Pagination/Overview/description.md new file mode 100644 index 000000000000..ada1cc79830e --- /dev/null +++ b/apps/demos/Demos/Pagination/Overview/description.md @@ -0,0 +1,10 @@ +DevExpress Pagination UI component allows users to navigate between pages and adjust page size at runtime. The Pagination component in this demo allows users to browse employee cards. + +To set up a Pagination component, specify the following options: + +- [itemCount](/Documentation/ApiReference/UI_Components/dxPagination/Configuration/#itemCount): the total number of elements in the target control. +- [pageSize](/Documentation/ApiReference/UI_Components/dxPagination/Configuration/#pageSize): the number of items per page. +- [allowedPageSizes](/Documentation/ApiReference/UI_Components/dxPagination/Configuration/#allowedPageSizes) : available page size choices. +- [pageIndex](/Documentation/ApiReference/UI_Components/dxPagination/Configuration/#pageIndex): page displayed first. +- [showNavigationButtons](/Documentation/ApiReference/UI_Components/dxPagination/Configuration/#showNavigationButtons): navigation button visibility. +- [showInfo](/Documentation/ApiReference/UI_Components/dxPagination/Configuration/#showInfo): information pane visibility. \ No newline at end of file diff --git a/apps/demos/Demos/Popup/Overview/Angular/app/app.component.html b/apps/demos/Demos/Popup/Overview/Angular/app/app.component.html index 354825cb012d..f4a06540c4a3 100644 --- a/apps/demos/Demos/Popup/Overview/Angular/app/app.component.html +++ b/apps/demos/Demos/Popup/Overview/Angular/app/app.component.html @@ -30,27 +30,27 @@ container=".dx-viewport" [(visible)]="popupVisible" > - - - + - - + - +
diff --git a/apps/demos/Demos/Popup/Scrolling/Angular/app/app.component.html b/apps/demos/Demos/Popup/Scrolling/Angular/app/app.component.html index dd66dbaf138c..8d3273ede786 100644 --- a/apps/demos/Demos/Popup/Scrolling/Angular/app/app.component.html +++ b/apps/demos/Demos/Popup/Scrolling/Angular/app/app.component.html @@ -57,13 +57,13 @@
- - + - - + diff --git a/apps/demos/Demos/Scheduler/Overview/Angular/app/app.component.css b/apps/demos/Demos/Scheduler/Overview/Angular/app/app.component.css index afd43782211e..a4c619487f71 100644 --- a/apps/demos/Demos/Scheduler/Overview/Angular/app/app.component.css +++ b/apps/demos/Demos/Scheduler/Overview/Angular/app/app.component.css @@ -1,35 +1,62 @@ +::ng-deep .dx-scheduler-group-header, +::ng-deep .dx-scheduler-date-table-cell { + position: relative; +} + +::ng-deep .dx-color-scheme-light, +::ng-deep .dx-color-scheme-carmine, +::ng-deep .dx-color-scheme-softblue, +::ng-deep .dx-color-scheme-blue-light, +::ng-deep .dx-color-scheme-saas-light, +::ng-deep .dx-color-scheme-lime-light, +::ng-deep .dx-color-scheme-orange-light, +::ng-deep .dx-color-scheme-purple-light, +::ng-deep .dx-color-scheme-teal-light { + --text-color-1: rgba(0, 0, 0, .6); + --text-color-2: rgba(255, 255, 255, 1); + --disabled-color: rgba(0, 0, 0, 0.38); + --background-color-1: rgba(50, 134, 56, 1); + --background-color-2: rgba(194, 81, 0, 1); +} + +::ng-deep .dx-color-scheme-dark, +::ng-deep .dx-color-scheme-darkviolet, +::ng-deep .dx-color-scheme-darkmoon, +::ng-deep .dx-color-scheme-blue-dark, +::ng-deep .dx-color-scheme-saas-dark, +::ng-deep .dx-color-scheme-lime-dark, +::ng-deep .dx-color-scheme-orange-dark, +::ng-deep .dx-color-scheme-purple-dark, +::ng-deep .dx-color-scheme-teal-dark { + --text-color-1: rgba(255, 255, 255, 1); + --text-color-2: rgba(54, 54, 64, 1); + --disabled-color: rgba(255, 255, 255, 0.38); + --background-color-1: rgba(159, 213, 161, 1); + --background-color-2: rgba(255, 181, 127, 1); + +} + +::ng-deep .dx-scheduler-header .dx-toolbar .dx-button, +::ng-deep .dx-scheduler-header .dx-toolbar .dx-button .dx-icon { + color: var(--text-color-1); +} + ::ng-deep .dx-scheduler-date-table-other-month.dx-scheduler-date-table-cell { opacity: 1; - color: rgba(0, 0, 0, 0.3) !important; -} - -::ng-deep .dx-color-scheme-light .dx-scheduler-work-space-month .dx-scheduler-date-table-cell, -::ng-deep .dx-color-scheme-carmine .dx-scheduler-work-space-month .dx-scheduler-date-table-cell, -::ng-deep .dx-color-scheme-softblue .dx-scheduler-work-space-month .dx-scheduler-date-table-cell, -::ng-deep .dx-color-scheme-blue-light .dx-scheduler-work-space-month .dx-scheduler-date-table-cell, -::ng-deep .dx-color-scheme-saas-light .dx-scheduler-work-space-month .dx-scheduler-date-table-cell, -::ng-deep .dx-color-scheme-lime-light .dx-scheduler-work-space-month .dx-scheduler-date-table-cell, -::ng-deep .dx-color-scheme-orange-light .dx-scheduler-work-space-month .dx-scheduler-date-table-cell, -::ng-deep .dx-color-scheme-purple-light .dx-scheduler-work-space-month .dx-scheduler-date-table-cell, -::ng-deep .dx-color-scheme-teal-light .dx-scheduler-work-space-month .dx-scheduler-date-table-cell { - color: rgba(0, 0, 0, .6); -} - -::ng-deep .dx-color-scheme-dark .dx-scheduler-work-space-month .dx-scheduler-date-table-cell, -::ng-deep .dx-color-scheme-darkviolet .dx-scheduler-work-space-month .dx-scheduler-date-table-cell, -::ng-deep .dx-color-scheme-darkmoon .dx-scheduler-work-space-month .dx-scheduler-date-table-cell, -::ng-deep .dx-color-scheme-blue-dark .dx-scheduler-work-space-month .dx-scheduler-date-table-cell, -::ng-deep .dx-color-scheme-saas-dark .dx-scheduler-work-space-month .dx-scheduler-date-table-cell, -::ng-deep .dx-color-scheme-lime-dark .dx-scheduler-work-space-month .dx-scheduler-date-table-cell, -::ng-deep .dx-color-scheme-orange-dark .dx-scheduler-work-space-month .dx-scheduler-date-table-cell, -::ng-deep .dx-color-scheme-purple-dark .dx-scheduler-work-space-month .dx-scheduler-date-table-cell, -::ng-deep .dx-color-scheme-teal-dark .dx-scheduler-work-space-month .dx-scheduler-date-table-cell { - color: rgba(255, 255, 255, 1); + color: var(--disabled-color) !important; } -::ng-deep .dx-scheduler-group-header-content, -::ng-deep .dx-scheduler-date-table-cell { - position: relative; +::ng-deep .dx-scheduler-work-space-month .dx-scheduler-date-table-cell { + color: var(--text-color-1); +} + +::ng-deep .dx-scheduler-work-space-month .dx-scheduler-appointment { + color: var(--text-color-2); + line-height: 22px; +} + +::ng-deep .dx-scheduler-work-space-month .dx-scheduler-appointment .dx-scheduler-appointment-content { + padding-top: 0; } ::ng-deep .dx-scheduler-date-table-cell .dx-template-wrapper { @@ -39,12 +66,32 @@ padding-right: 6px; } -::ng-deep .avatar { - width: 155px; +::ng-deep .avatar { + width: 124px; float: left; overflow: hidden; position: relative; - height: 125px; + height: 124px; + border: 1px solid rgba(0, 0, 0, 0.24); + border-radius: 50%; + background-color: rgba(255, 255, 255, 1); +} + +::ng-deep .avatar img { + position: relative; + width: 126px; + height: 130px; + object-fit: contain; +} + +::ng-deep .avatar[title="John Heart"] img { + top: 5px; + left: 3px; +} + +::ng-deep .avatar[title="Greta Sims"] img { + top: 5px; + left: -7px; } ::ng-deep .name { @@ -55,52 +102,65 @@ } ::ng-deep .name h2 { - color: #fff; + color: var(--text-color-2); font-size: 28px; text-align: left; - padding: 0 0 5px 175px; + padding: 0 0 0 170px; margin: 0; + height: 40px; + line-height: 40px; } ::ng-deep .info { width: auto; text-align: left; height: 100%; - font-size: 11pt; + font-size: 14px; + line-height: 20px; font-weight: normal; - padding: 25px 20px; + padding: 25px 20px 25px 40px; + color: #707070; +} + +::ng-deep .dx-color-scheme-contrast .info { + color: #fff; } ::ng-deep .day-cell { + width: 100%; height: 100%; background-position: center center; background-repeat: no-repeat; } +::ng-deep .dx-scheduler-appointment { + color: rgba(255, 255, 255, 1); +} + ::ng-deep .employee-1 { - background-color: rgba(86, 202, 133, 0.1); + background-color: rgba(55, 126, 58, 0.08); } ::ng-deep .employee-2 { - background-color: rgba(255, 151, 71, 0.1); + background-color: rgba(194, 81, 0, 0.08); } ::ng-deep .employee-weekend-1 { - background-color: rgba(86, 202, 133, 0.2); + background-color: rgba(55, 126, 58, 0.12); } ::ng-deep .employee-weekend-2 { - background-color: rgba(255, 151, 71, 0.2); + background-color: rgba(194, 81, 0, 0.12); } ::ng-deep .training-background-0 { - background-image: url("../../../../images/gym/icon-abs.png"); + background-image: url("../../../../images/Scheduler/Overview/icon-abs.png"); } ::ng-deep .training-background-1 { - background-image: url("../../../../images/gym/icon-step.png"); + background-image: url("../../../../images/Scheduler/Overview/icon-step.png"); } ::ng-deep .training-background-2 { - background-image: url("../../../../images/gym/icon-fitball.png"); + background-image: url("../../../../images/Scheduler/Overview/icon-fitball.png"); } diff --git a/apps/demos/Demos/Scheduler/Overview/Angular/app/app.component.html b/apps/demos/Demos/Scheduler/Overview/Angular/app/app.component.html index 7e3bb9b44064..2cd0fee88166 100644 --- a/apps/demos/Demos/Scheduler/Overview/Angular/app/app.component.html +++ b/apps/demos/Demos/Scheduler/Overview/Angular/app/app.component.html @@ -8,7 +8,7 @@ [startDayHour]="8" [endDayHour]="18" [showAllDayPanel]="false" - [height]="600" + [height]="710" [groups]="['employeeID']" resourceCellTemplate="resourceCellTemplate" dataCellTemplate="dataCellTemplate" @@ -25,7 +25,7 @@

{{ employee.text }}

-
+
{{ employee.text }} photo
diff --git a/apps/demos/Demos/Scheduler/Overview/Angular/app/app.service.ts b/apps/demos/Demos/Scheduler/Overview/Angular/app/app.service.ts index ccb593f1e824..6a0b62221343 100644 --- a/apps/demos/Demos/Scheduler/Overview/Angular/app/app.service.ts +++ b/apps/demos/Demos/Scheduler/Overview/Angular/app/app.service.ts @@ -27,15 +27,15 @@ export class Data { const employees: Employee[] = [{ text: 'John Heart', id: 1, - color: '#56ca85', - avatar: '../../../../images/gym/coach-man.png', + color: 'var(--background-color-1)', + avatar: '../../../../images/employees/19.png', age: 27, discipline: 'ABS, Fitball, StepFit', }, { - text: 'Sandra Johnson', + text: 'Greta Sims', id: 2, - color: '#ff9747', - avatar: '../../../../images/gym/coach-woman.png', + color: 'var(--background-color-2)', + avatar: '../../../../images/employees/31.png', age: 25, discipline: 'ABS, Fitball, StepFit', }]; diff --git a/apps/demos/Demos/Scheduler/Overview/React/App.tsx b/apps/demos/Demos/Scheduler/Overview/React/App.tsx index efb027610670..87977bb0326e 100644 --- a/apps/demos/Demos/Scheduler/Overview/React/App.tsx +++ b/apps/demos/Demos/Scheduler/Overview/React/App.tsx @@ -20,7 +20,7 @@ const App = () => ( views={views} defaultCurrentView="month" defaultCurrentDate={currentDate} - height={600} + height={710} showAllDayPanel={true} firstDayOfWeek={1} startDayHour={8} diff --git a/apps/demos/Demos/Scheduler/Overview/React/ResourceCell.tsx b/apps/demos/Demos/Scheduler/Overview/React/ResourceCell.tsx index 2ea79a94aa97..99f4f0595e21 100644 --- a/apps/demos/Demos/Scheduler/Overview/React/ResourceCell.tsx +++ b/apps/demos/Demos/Scheduler/Overview/React/ResourceCell.tsx @@ -12,7 +12,7 @@ const ResourceCell = (props: ResourceCellProps) => {

{text}

-
+
{`${text} ( views={views} defaultCurrentView="month" defaultCurrentDate={currentDate} - height={600} + height={710} showAllDayPanel={true} firstDayOfWeek={1} startDayHour={8} diff --git a/apps/demos/Demos/Scheduler/Overview/ReactJs/ResourceCell.js b/apps/demos/Demos/Scheduler/Overview/ReactJs/ResourceCell.js index 61681cc2fceb..6f080eb30b8a 100644 --- a/apps/demos/Demos/Scheduler/Overview/ReactJs/ResourceCell.js +++ b/apps/demos/Demos/Scheduler/Overview/ReactJs/ResourceCell.js @@ -16,7 +16,10 @@ const ResourceCell = (props) => { >

{text}

-
+
{`${text} diff --git a/apps/demos/Demos/Scheduler/Overview/Vue/DataCell.vue b/apps/demos/Demos/Scheduler/Overview/Vue/DataCell.vue index c1b31e2ec7aa..c3e656a2ff4f 100644 --- a/apps/demos/Demos/Scheduler/Overview/Vue/DataCell.vue +++ b/apps/demos/Demos/Scheduler/Overview/Vue/DataCell.vue @@ -43,36 +43,41 @@ function getCurrentTraining(date, employeeID) { diff --git a/apps/demos/Demos/Scheduler/Overview/Vue/ResourceCell.vue b/apps/demos/Demos/Scheduler/Overview/Vue/ResourceCell.vue index 13e00db3a192..e2d3b3ca4ef8 100644 --- a/apps/demos/Demos/Scheduler/Overview/Vue/ResourceCell.vue +++ b/apps/demos/Demos/Scheduler/Overview/Vue/ResourceCell.vue @@ -6,7 +6,7 @@ >

{{ employee.text }}

-
+