Skip to content

Commit 49af236

Browse files
Merge branch '20.0.x' into ikitanov/fix-15839
2 parents 081b0db + ed19b66 commit 49af236

File tree

190 files changed

+18928
-9317
lines changed

Some content is hidden

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

190 files changed

+18928
-9317
lines changed

.github/workflows/nodejs.yml

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -42,8 +42,7 @@ jobs:
4242
run: npm run build:migrations
4343
- name: Build TypeDoc & SassDoc
4444
run: |
45-
npm run build:typedoc:en:production
46-
npm run build:sassdoc:en:production
45+
npm run build:docs
4746
- name: Test
4847
run: |
4948
npm run test:lib

.gitignore

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -48,7 +48,8 @@ src/**/*.js
4848
src/**/*.js.map
4949
src/**/*.css.map
5050

51-
# Typedoc Theme
51+
# Typedoc and SassDoc Themes
52+
extras/sassdoc/**/*
5253
extras/docs/themes/typedoc/bin
5354
extras/docs/themes/sassdoc/node_modules
5455
extras/docs/themes/sassdoc/sassdoc/*

CHANGELOG.md

Lines changed: 39 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,45 @@
22

33
All notable changes for each version of this project will be documented in this file.
44

5+
## 20.0.2
6+
7+
### New Features
8+
- **Separating Button and Icon Button Themes** - The `button-theme` and `icon-button-theme` functions are still available, but for more targeted customization, you can now use the specific theme function for each button type.
9+
- **Component Themes Enchancements** - Component themes have been improved to automatically calculate all necessary states (e.g., hover, focus, active) based on just a few key values. For example, customizing a contained button requires only a background color:
10+
```scss
11+
$custom-contained-button: contained-button-theme(
12+
$background: #09f;
13+
);
14+
```
15+
16+
## 20.0.0
17+
18+
### General
19+
- **Angular 20 Compatibility** - Ignite UI for Angular now plays nice with Angular 20! Upgrade your apps and enjoy the latest features.
20+
- `IgxActionStrip`
21+
- **Behavioral Changes** - When using the Action Strip standalone, outside of Grid, scenarios the component is no longer initially visible and the `hidden` property now defaults to `true`.
22+
- `IgxChip`
23+
- **Behavioral Change** The `variant` is now strictly typed with the union of supported options and no longer accepts invalid values for the default state, provide no value (nullish) instead is needed.
24+
25+
### New Features
26+
- `IgxGrid`, `IgxTreeGrid`, `IgxHierarchicalGrid`, `IgxPivotGrid`
27+
- Added a new `igxGridEmpty` template directive that allows assigning the `emptyGridTemplate` declaratively, without the need to get and assign reference, like other grid templates like:
28+
```html
29+
<igx-grid>
30+
<ng-template igxGridEmpty>
31+
<!-- content to show when the grid is empty -->
32+
</ng-template>
33+
</igx-grid>
34+
```
35+
- Added a new `igxGridLoading` template directive that allows assigning the `loadingGridTemplate` declaratively, without the need to get and assign reference, like other grid templates like:
36+
```html
37+
<igx-grid>
38+
<ng-template igxGridLoading>
39+
<!-- content to show when the grid is loading -->
40+
</ng-template>
41+
</igx-grid>
42+
```
43+
544
## 19.2.0
645

746
### General

angular.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -323,7 +323,7 @@
323323
],
324324
"outputHashing": "none",
325325
"optimization": true,
326-
"externalDependencies": ["lit-html"]
326+
"externalDependencies": ["lit"]
327327
},
328328
"development": {
329329
"optimization": false,

gulpfile.js

Lines changed: 0 additions & 95 deletions
Original file line numberDiff line numberDiff line change
@@ -1,19 +1,11 @@
11
'use strict';
22

3-
const del = require('del');
43
const gulp = require('gulp');
54
const process = require('process');
65
const fs = require('fs');
7-
const argv = require('yargs').argv;
8-
const sassdoc = require('sassdoc');
96
const path = require('path');
10-
const { series } = require('gulp');
11-
const slash = require('slash');
12-
13-
const DOCS_OUTPUT_PATH = slash(path.join(__dirname, 'dist', 'igniteui-angular', 'docs'));
147

158
module.exports.copyGitHooks = async (cb) => {
16-
179
if (process.env.AZURE_PIPELINES || process.env.TRAVIS || process.env.CI || !fs.existsSync('.git')) {
1810
return;
1911
}
@@ -88,93 +80,6 @@ module.exports.copySchematics = (cb) => {
8880
};
8981

9082

91-
function createDocsOutputDirFn(cb) {
92-
!fs.existsSync(DOCS_OUTPUT_PATH) && fs.mkdirSync(DOCS_OUTPUT_PATH);
93-
cb();
94-
}
95-
96-
const SASSDOC = {
97-
PROJECT_PATHS: [
98-
`${path.join(__dirname, 'projects', 'igniteui-angular', 'src', 'lib', 'core', 'styles')}/**/*.scss`,
99-
`${path.join(__dirname, 'node_modules', 'igniteui-theming', 'sass')}/**/*.scss`
100-
],
101-
DEST: path.join(DOCS_OUTPUT_PATH, 'sass'),
102-
OPTIONS: path.join(__dirname, '.sassdocrc'),
103-
};
104-
105-
const sassdocCleanOutputDir = (cb) => {
106-
del.sync(SASSDOC.DEST);
107-
cb();
108-
}
109-
110-
function sassdocBuildJson(cb) {
111-
const options = JSON.parse(fs.readFileSync(SASSDOC.OPTIONS, 'utf8'));
112-
113-
const { convert, exportDir } = argv;
114-
115-
options.convert = convert;
116-
options.exportDir = exportDir;
117-
118-
gulp.src(SASSDOC.PROJECT_PATHS)
119-
.pipe(sassdoc(options));
120-
121-
cb();
122-
123-
}
124-
125-
function sassdocImportJson(cb) {
126-
const options = JSON.parse(fs.readFileSync(SASSDOC.OPTIONS, 'utf8'));
127-
128-
const { render, importDir } = argv;
129-
130-
options.render = render;
131-
options.json_dir = importDir;
132-
options.shellStringsPath = path.join(__dirname, 'extras', 'template', 'strings', 'shell-strings.json');
133-
134-
gulp.src(SASSDOC.PROJECT_PATHS)
135-
.pipe(sassdoc(options));
136-
137-
cb();
138-
}
139-
140-
function sassdocBuildJA(cb) {
141-
const pathTranslations = path.join(__dirname, 'i18nRepo', 'sassdoc', 'ja');
142-
const options = JSON.parse(fs.readFileSync(SASSDOC.OPTIONS, 'utf8'));
143-
144-
options.lang = 'jp';
145-
options.render = argv.render;
146-
options.json_dir = pathTranslations;
147-
options.shellStringsPath = path.join(__dirname, 'extras', 'template', 'strings', 'shell-strings.json');
148-
149-
gulp.src(SASSDOC.PROJECT_PATHS)
150-
.pipe(sassdoc(options));
151-
152-
cb();
153-
}
154-
155-
function sassdocBuildEN(cb) {
156-
const options = JSON.parse(fs.readFileSync(SASSDOC.OPTIONS, 'utf8'));
157-
158-
options.lang = 'en';
159-
options.shellStringsPath = path.join(__dirname, 'extras', 'template', 'strings', 'shell-strings.json');
160-
161-
gulp.src(SASSDOC.PROJECT_PATHS)
162-
.pipe(sassdoc(options));
163-
164-
cb();
165-
}
166-
167-
module.exports.createDocsOutputDir = createDocsOutputDirFn;
168-
169-
/**
170-
* Sassdoc build tasks
171-
*/
172-
module.exports.sassdocCleanOutputDir = sassdocCleanOutputDir;
173-
module.exports.sassdocImportJson = sassdocImportJson;
174-
module.exports.sassdocBuildJson = sassdocBuildJson;
175-
module.exports.sassdocBuildJA = series(sassdocCleanOutputDir, sassdocBuildJA);
176-
module.exports.sassdocBuildEN = series(sassdocCleanOutputDir, sassdocBuildEN);
177-
17883
module.exports.copyPackageForElements = (cb) => {
17984
return gulp.src([
18085
path.join(__dirname, 'projects/igniteui-angular-elements/package.json')

0 commit comments

Comments
 (0)