Skip to content

Commit 1c40152

Browse files
committed
Merge branch 'vNext' of https://github.com/IgniteUI/igniteui-angular-samples into mpopov/styling-samples-refactoring
2 parents 7d1147e + 2979018 commit 1c40152

125 files changed

Lines changed: 6583 additions & 6472 deletions

File tree

Some content is hidden

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

.github/CONTRIBUTING.md

Lines changed: 33 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,13 @@
1-
# <a name='#workflow'>Workflow</a>
1+
## In this topic
2+
### 1. [Development - applicable to issues and pull requests](#development)
3+
### 2. [Testing - applicable to pull requests](#testing)
4+
### 3. [Fixing bugs and adding new samples](#fixing)
5+
### 3.1. [Bug fixing guidelines](#bug)
6+
### 3.2. [Adding new samples guidelines](#new-sample)
27

3-
When working on an issue for the Ignite UI Angular Samples, you need to be aware of and to follow a correct status workflow. We have created a number of status labels in order to communicate well what the current status of a single issue/pull request is. The statuses are as follows:
8+
When working on an issue/new sample for the Ignite UI Angular Samples, you need to be aware of and to follow a correct status workflow. We have created a number of status labels in order to communicate well what the current status of a single issue/pull request is. The statuses are as follows:
49

5-
## Development - applicable to issues and pull requests
10+
# <a name='#development'>Development - applicable to issues and pull requests</a>
611

712
1. `status: in-review` this is the initial status of an issue. If the label is not placed, go ahead and place it.
813
2. `status: in-development` this is the status once you start working on an issue. Assign the issue to yourself if it hasn't been assigned already, remove the previous status and assign status: in-development.
@@ -24,7 +29,7 @@ Example status workflows:
2429

2530
`status: in-review` => `status: not-to-fix` (Issue can be closed)
2631

27-
## Testing - applicable to pull requests
32+
# <a name='#testing'>Testing - applicable to pull requests</a>
2833
1. `status: awaiting-test` this is the initial status of pull requests. If you're performing the pull request, please place this status on it. Pull requests are accepted if and only if all status checks pass, review is performed, and the pull request has been tested and contains `status: verified`.
2934
2. `status: in-test` place this status once you pick up the pull request for testing.
3035
3. `status: verified` place this status once you've tested the pull request, have verified that the issue is fixed, and have included all necessary automated tests for the issue.
@@ -39,3 +44,27 @@ Example status workflows:
3944

4045
> Note: Testing a PR from Angular Samples (when new sample is added) with combination of PR related to topic update (or when new topic is added).
4146
Open both repositories ([DocFX Site Builder](https://github.com/IgniteUI/igniteui-docfx) and [Angular Demos](https://github.com/IgniteUI/igniteui-angular-samples)) and perform `npm start`. This will start both projects and you will see the embed sample in your topic under `localhost`.
47+
48+
# <a name='#fixing'> Fixing bugs and adding new samples</a>
49+
## <a name='#bug'> Bug fixing guidelines</a>
50+
51+
1. Depending on where the bug was found `the current version` or the `ongoing release version`, checkout a development branches from `vNext` or/and `master` branch. `vNext` is the version that is going to be used upon release (next version), and `master` is the branch with the current state (current version available on production). If the change/fix is applicable only to the ongoing release branch (`vNext`) there is no need to cherry-pick to `master` branch as the change/fix/feature will be pushed to `master` branch upon release.
52+
2. Run lint
53+
3. Pull request your changes and reference the issue. Use the enforced commit message format with applicable type, scope, etc.
54+
4. Don't forget to make the necessary status updates, as described in the workflow section.
55+
56+
> Note: Cherry-pick to `master` branch only changes with **high priority**. There is no need to cherry-pick into `master` every bug fix/change from `vNext`> A regular mass merge PRs are going to be made from `vNext` into `master`.
57+
58+
**Example workflow for a bug with high priority**
59+
The process will look like this:
60+
61+
1. Checkout new branch from `vNext`. For code example purposes let's say the new branch is called `fixing-bug-5423-vNext`.
62+
2. Commit your changes to your `fixing-bug-5423-vNext` branch.
63+
3. Push and PR to the `vNext` branch.
64+
4. Switch to the `master` branch.
65+
5. Create a new branch from `master`. For code example purposes let's say the new branch is called `fixing-bug-5423-master`.
66+
6. Cherry pick your commit from the `fixing-bug-5423-vNext` branch: `git cherry-pick ..`
67+
7. Push to your `fixing-bug-5423-master` branch and PR to the `master` branch.
68+
69+
## <a name='#new-sample'> Adding new samples guidelines </a>
70+
Depending on where the the new sample should be added, `the current version` or the `ongoing release version`, checkout a development branches from `vNext` or/and `master` branch. `vNext` is the version that is going to be used upon release (next version), and `master` is the branch with the current state (current version). If the new sample is applicable only to the ongoing release branch (`vNext`) there is no need to cherry-pick to `master` branch as the new sample will be pushed to `master` branch upon release.

.github/workflows/build-app-crm.yml

Lines changed: 14 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,19 +1,19 @@
11
# This is a basic workflow to help you get started with Actions
22

3-
name: CI
3+
name: App CRM CI
44

55
# Controls when the action will run. Triggers the workflow on push or pull request
66
# events but only for the master branch
77
on:
88
push:
9-
branches: [ master, vNext]
9+
branches: [ master, vNext ]
1010
paths:
1111
- '**'
1212
- '!src/**'
1313
- '!live-editing/**'
1414
- '!projects/app-lob/**'
1515
pull_request:
16-
branches: [ master, vNext]
16+
branches: [ master, vNext ]
1717
paths:
1818
- '**'
1919
- '!src/**'
@@ -27,13 +27,23 @@ jobs:
2727
# The type of runner that the job will run on
2828
runs-on: ubuntu-latest
2929

30+
strategy:
31+
matrix:
32+
node-version: [16.x, 18.x]
33+
3034
# Steps represent a sequence of tasks that will be executed as part of the job
3135
steps:
3236
# Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it
3337
- uses: actions/checkout@v2
3438

39+
- name: Use Node.js ${{ matrix.node-version }}
40+
uses: actions/setup-node@v2
41+
with:
42+
node-version: ${{ matrix.node-version }}
43+
cache: 'npm'
44+
3545
- name: Install dependencies
36-
run: npm ci
46+
run: npm ci --force
3747

3848
- name: Run lint
3949
run: npm run lint

.github/workflows/build-app-lob.yml

Lines changed: 14 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,12 @@
11
# This is a basic workflow to help you get started with Actions
22

3-
name: CI
3+
name: App LOB CI
44

55
# Controls when the action will run. Triggers the workflow on push or pull request
66
# events but only for the master branch
77
on:
88
push:
9-
branches: [ master, vNext]
9+
branches: [ master, vNext ]
1010
paths:
1111
- '**'
1212
- '!src/**'
@@ -16,7 +16,7 @@ on:
1616
- 'live-editing/generators/AppDVConfigGenerators.ts'
1717
- '!projects/app-crm/**'
1818
pull_request:
19-
branches: [ master, vNext]
19+
branches: [ master, vNext ]
2020
paths:
2121
- '**'
2222
- '!src/**'
@@ -32,13 +32,23 @@ jobs:
3232
# The type of runner that the job will run on
3333
runs-on: ubuntu-latest
3434

35+
strategy:
36+
matrix:
37+
node-version: [16.x, 18.x]
38+
3539
# Steps represent a sequence of tasks that will be executed as part of the job
3640
steps:
3741
# Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it
3842
- uses: actions/checkout@v2
3943

44+
- name: Use Node.js ${{ matrix.node-version }}
45+
uses: actions/setup-node@v2
46+
with:
47+
node-version: ${{ matrix.node-version }}
48+
cache: 'npm'
49+
4050
- name: Install dependencies
41-
run: npm ci
51+
run: npm ci --force
4252

4353
- name: Run lint
4454
run: npm run lint

.github/workflows/codeql.yml

Lines changed: 74 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,74 @@
1+
# For most projects, this workflow file will not need changing; you simply need
2+
# to commit it to your repository.
3+
#
4+
# You may wish to alter this file to override the set of languages analyzed,
5+
# or to provide custom queries or build logic.
6+
#
7+
# ******** NOTE ********
8+
# We have attempted to detect the languages in your repository. Please check
9+
# the `language` matrix defined below to confirm you have the correct set of
10+
# supported CodeQL languages.
11+
#
12+
name: "CodeQL"
13+
14+
on:
15+
push:
16+
branches: [ "master", "vNext" ]
17+
pull_request:
18+
# The branches below must be a subset of the branches above
19+
branches: [ "master", "vNext" ]
20+
schedule:
21+
- cron: '37 17 * * 1'
22+
23+
jobs:
24+
analyze:
25+
name: Analyze
26+
runs-on: ubuntu-latest
27+
permissions:
28+
actions: read
29+
contents: read
30+
security-events: write
31+
32+
strategy:
33+
fail-fast: false
34+
matrix:
35+
language: [ 'javascript' ]
36+
# CodeQL supports [ 'cpp', 'csharp', 'go', 'java', 'javascript', 'python', 'ruby' ]
37+
# Learn more about CodeQL language support at https://aka.ms/codeql-docs/language-support
38+
39+
steps:
40+
- name: Checkout repository
41+
uses: actions/checkout@v3
42+
43+
# Initializes the CodeQL tools for scanning.
44+
- name: Initialize CodeQL
45+
uses: github/codeql-action/init@v2
46+
with:
47+
languages: ${{ matrix.language }}
48+
# If you wish to specify custom queries, you can do so here or in a config file.
49+
# By default, queries listed here will override any specified in a config file.
50+
# Prefix the list here with "+" to use these queries and those in the config file.
51+
52+
# Details on CodeQL's query packs refer to : https://docs.github.com/en/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/configuring-code-scanning#using-queries-in-ql-packs
53+
# queries: security-extended,security-and-quality
54+
55+
56+
# Autobuild attempts to build any compiled languages (C/C++, C#, Go, or Java).
57+
# If this step fails, then you should remove it and run the build manually (see below)
58+
- name: Autobuild
59+
uses: github/codeql-action/autobuild@v2
60+
61+
# ℹ️ Command-line programs to run using the OS shell.
62+
# 📚 See https://docs.github.com/en/actions/using-workflows/workflow-syntax-for-github-actions#jobsjob_idstepsrun
63+
64+
# If the Autobuild fails above, remove it and uncomment the following three lines.
65+
# modify them (or add more) to build your code if your project, please refer to the EXAMPLE below for guidance.
66+
67+
# - run: |
68+
# echo "Run, Build Application using script"
69+
# ./location_of_script_within_repo/buildscript.sh
70+
71+
- name: Perform CodeQL Analysis
72+
uses: github/codeql-action/analyze@v2
73+
with:
74+
category: "/language:${{matrix.language}}"

azure-pipelines.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ steps:
1212
- script: npm config set $(igScope):_auth=$(token)
1313
displayName: 'Npm config auth'
1414

15-
- script: npm ci
15+
- script: npm ci --force
1616
displayName: 'Install dependencies'
1717
env:
1818
AZURE_PIPELINES: "true"

gulpfile.js

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ const submodule = "igniteui-live-editing-samples";
1818

1919
gulp.task("generate-live-editing", async () => {
2020
var appDv = argv.appDv !== undefined && argv.appDv.toLowerCase().trim() === "true";
21-
const liveEditingOptions = appDv ?
21+
const liveEditingOptions = appDv ?
2222
{
2323
platform: 'angular',
2424
projectDir: "./projects/app-lob",
@@ -30,7 +30,7 @@ gulp.task("generate-live-editing", async () => {
3030
}
3131
:
3232
{
33-
platform: 'angular',
33+
platform: 'angular',
3434
samplesDir: "./src/assets",
3535
configGeneratorPath: "./live-editing/generators/ConfigGenerators.ts",
3636
module: {
@@ -231,4 +231,4 @@ const cleanupAngularDemosLob = (cb) => {
231231
cb();
232232
}
233233
exports.repositoryfyAngularDemos = repositoryfyAngularDemos = gulp.series(cleanupAngularDemos, processDemosWithScss);
234-
exports.repositoryfyAngularDemosLob = repositoryfyAngularDemosLob = gulp.series(cleanupAngularDemosLob, processDemosLobWithScss);
234+
exports.repositoryfyAngularDemosLob = repositoryfyAngularDemosLob = gulp.series(cleanupAngularDemosLob, processDemosLobWithScss);

live-editing/configs/GridConfigGenerator.ts

Lines changed: 14 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1356,9 +1356,9 @@ export class GridConfigGenerator implements IConfigGenerator {
13561356

13571357
],
13581358
appModuleConfig: new AppModuleConfig({
1359-
imports: ['GridValidatorServiceComponent', 'IgxGridModule', 'IgxFocusModule', 'IgxPreventDocumentScrollModule'],
1359+
imports: ['GridValidatorServiceComponent', 'IgxGridModule', 'IgxFocusModule', 'IgxPreventDocumentScrollModule', 'IgxSwitchModule'],
13601360
ngDeclarations: ['GridValidatorServiceComponent'],
1361-
ngImports: ['IgxPreventDocumentScrollModule', 'IgxGridModule', 'IgxFocusModule']
1361+
ngImports: ['IgxPreventDocumentScrollModule', 'IgxGridModule', 'IgxFocusModule', 'IgxSwitchModule']
13621362
})
13631363
}));
13641364

@@ -1410,6 +1410,18 @@ export class GridConfigGenerator implements IConfigGenerator {
14101410
})
14111411
}));
14121412

1413+
configs.push(new Config({
1414+
component: 'GridSummaryExportComponent',
1415+
additionalFiles: ['/src/app/directives/prevent-scroll.directive.ts', '/src/app/data/nwindData.ts'],
1416+
appModuleConfig: new AppModuleConfig({
1417+
imports: ['IgxGridModule', 'GridSummaryExportComponent', 'IgxPreventDocumentScrollModule', 'IgxExcelExporterService'],
1418+
ngDeclarations: ['GridSummaryExportComponent'],
1419+
ngImports: ['IgxPreventDocumentScrollModule', 'IgxGridModule'],
1420+
ngProviders: ['IgxExcelExporterService']
1421+
})
1422+
}));
1423+
1424+
14131425
return configs;
14141426
}
14151427
}

live-editing/configs/HierarchicalGridConfigGenerator.ts

Lines changed: 15 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -342,7 +342,7 @@ export class HierarchicalGridConfigGenerator implements IConfigGenerator {
342342
}));
343343

344344
configs.push(new Config({
345-
additionalFiles: ['/src/app/directives/prevent-scroll.directive.ts', '/src/app/data/hierarchical-data.ts'],
345+
additionalFiles: ['/src/app/directives/prevent-scroll.directive.ts', '/src/app/data/hierarchical-data.ts', '/src/app/services/svgIcons.ts'],
346346
appModuleConfig: new AppModuleConfig({
347347
imports: ['IgxHierarchicalGridModule', 'HGridPinningSampleComponent', 'IgxPreventDocumentScrollModule'],
348348
ngDeclarations: ['HGridPinningSampleComponent'],
@@ -942,9 +942,9 @@ export class HierarchicalGridConfigGenerator implements IConfigGenerator {
942942
'/src/app/data/hierarchical-data.ts'
943943
],
944944
appModuleConfig: new AppModuleConfig({
945-
imports: ['HierarchicalGridValidatorServiceComponent', 'IgxHierarchicalGridModule', 'IgxPreventDocumentScrollModule'],
945+
imports: ['HierarchicalGridValidatorServiceComponent', 'IgxHierarchicalGridModule', 'IgxPreventDocumentScrollModule', 'IgxSwitchModule'],
946946
ngDeclarations: ['HierarchicalGridValidatorServiceComponent'],
947-
ngImports: ['IgxPreventDocumentScrollModule', 'IgxHierarchicalGridModule']
947+
ngImports: ['IgxPreventDocumentScrollModule', 'IgxHierarchicalGridModule', 'IgxSwitchModule']
948948
})
949949
}));
950950

@@ -999,6 +999,18 @@ export class HierarchicalGridConfigGenerator implements IConfigGenerator {
999999
})
10001000
}));
10011001

1002+
configs.push(new Config({
1003+
additionalFiles: ['/src/app/directives/prevent-scroll.directive.ts', '/src/app/data/singersData.ts',
1004+
'/src/app/hierarchical-grid/models.ts'],
1005+
appModuleConfig: new AppModuleConfig({
1006+
imports: ['IgxHierarchicalGridModule', 'HGridSummaryExportComponent', 'IgxPreventDocumentScrollModule', 'IgxExcelExporterService'],
1007+
ngDeclarations: ['HGridSummaryExportComponent'],
1008+
ngImports: ['IgxPreventDocumentScrollModule', 'IgxHierarchicalGridModule'],
1009+
ngProviders: ['IgxExcelExporterService']
1010+
}),
1011+
component: 'HGridSummaryExportComponent'
1012+
}));
1013+
10021014
return configs;
10031015
}
10041016
}

live-editing/configs/TreeGridConfigGenerator.ts

Lines changed: 15 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -221,7 +221,7 @@ export class TreeGridConfigGenerator implements IConfigGenerator {
221221

222222
// TreeGrid Column Pinning sample
223223
configs.push(new Config({
224-
additionalFiles: ['/src/app/directives/prevent-scroll.directive.ts', '/src/app/tree-grid/data/employees-flat-detailed.ts'],
224+
additionalFiles: ['/src/app/directives/prevent-scroll.directive.ts', '/src/app/tree-grid/data/employees-flat-detailed.ts', '/src/app/services/svgIcons.ts'],
225225
appModuleConfig: new AppModuleConfig({
226226
imports: ['IgxPreventDocumentScrollModule', 'IgxTreeGridModule', 'TreeGridColumnPinningSampleComponent', 'IgxIconModule'],
227227
ngDeclarations: ['TreeGridColumnPinningSampleComponent'],
@@ -1155,9 +1155,9 @@ export class TreeGridConfigGenerator implements IConfigGenerator {
11551155
],
11561156
appModuleConfig: new AppModuleConfig({
11571157
imports: ['IgxPreventDocumentScrollModule', 'IgxTreeGridModule', 'TreeGridValidatorServiceComponent',
1158-
'IgxButtonModule'],
1158+
'IgxButtonModule', 'IgxSwitchModule'],
11591159
ngDeclarations: ['TreeGridValidatorServiceComponent'],
1160-
ngImports: ['IgxPreventDocumentScrollModule', 'IgxTreeGridModule', 'IgxButtonModule']
1160+
ngImports: ['IgxPreventDocumentScrollModule', 'IgxTreeGridModule', 'IgxButtonModule', 'IgxSwitchModule']
11611161
})
11621162
}));
11631163

@@ -1201,6 +1201,18 @@ export class TreeGridConfigGenerator implements IConfigGenerator {
12011201
})
12021202
}));
12031203

1204+
configs.push(new Config({
1205+
additionalFiles: ['/src/app/directives/prevent-scroll.directive.ts', '/src/app/tree-grid/data/foods.ts'],
1206+
appModuleConfig: new AppModuleConfig({
1207+
imports: ['IgxPreventDocumentScrollModule', 'IgxTreeGridModule', 'TreeGridSummaryExportComponent', 'IgxIconModule', 'IgxExcelExporterService'],
1208+
ngDeclarations: ['TreeGridSummaryExportComponent'],
1209+
ngImports: ['IgxPreventDocumentScrollModule', 'IgxTreeGridModule', 'IgxIconModule'],
1210+
ngProviders: ['IgxExcelExporterService']
1211+
}),
1212+
component: 'TreeGridSummaryExportComponent',
1213+
shortenComponentPathBy: '/tree-grid/'
1214+
}));
1215+
12041216
return configs;
12051217
}
12061218
}

0 commit comments

Comments
 (0)