Skip to content

Commit 04cd75c

Browse files
authored
Merge branch 'master' into mpopov/indigo-calendar-updates
2 parents 1638fc3 + 3cc685d commit 04cd75c

File tree

150 files changed

+33991
-872
lines changed

Some content is hidden

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

150 files changed

+33991
-872
lines changed

.browserslistrc

-13
This file was deleted.

.github/workflows/nodejs.yml

+10
Original file line numberDiff line numberDiff line change
@@ -56,6 +56,16 @@ jobs:
5656
run: |
5757
npm run build:i18n
5858
npm run test:i18n:dist
59+
- name: Build Elements
60+
run: npm run elements:configure && npm run build:elements
61+
- name: Check for Elements config changes
62+
run: |
63+
if [ -n "$(git status --porcelain -- projects/igniteui-angular-elements/**/elements.config.ts)" ]; then
64+
echo "Error: There are changes to the Elements config. Run 'npm run elements:configure' and commit." >&2
65+
exit 1
66+
fi
67+
- name: Test Elements
68+
run: npm run test:elements
5969
- name: Bundle Tree-Shake & SSR Test
6070
run: npm run build:bundletest
6171
- name: Publish to coveralls.io

ROADMAP.md

+28-12
Original file line numberDiff line numberDiff line change
@@ -2,27 +2,43 @@
22

33
# Current Milestone
44

5-
## Milestone 30, (Due by Apr, 2024)
5+
## Milestone 32, (Due by Jul, 2024)
66

7-
1. Update calendar theme to match material [#10400](https://github.com/IgniteUI/igniteui-angular/issues/10400)
8-
2. Calendar: Default date formatting in the header [#13811](https://github.com/IgniteUI/igniteui-angular/issues/13811)
9-
3. Button: States and size improvements request [#1033](https://github.com/IgniteUI/igniteui-angular/issues/1033)
10-
4. Provide a way to replace part of (or all) icons used by components with icons from other icon sets [#13987](https://github.com/IgniteUI/igniteui-angular/issues/13987)
11-
5. Date/datetime/time editors should accept the same formats that the angular pipes accept [#14011](https://github.com/IgniteUI/igniteui-angular/issues/14011)
7+
1. Horizontal row dimension expansion for Pivot Grid [#14270](https://github.com/IgniteUI/igniteui-angular/issues/14270)
8+
2. Headers focus and keyboard navigation for Pivot Grid Row Dimension Headers [#14249](https://github.com/IgniteUI/igniteui-angular/issues/14249)
9+
3. Grid Toolbar refactoring [#8055](https://github.com/IgniteUI/igniteui-angular/issues/8055)
10+
4. Translation for "Wk" for week numbers in calendars [#14423](https://github.com/IgniteUI/igniteui-angular/issues/14423)
11+
5. Provide a way to replace part of (or all) icons used by components with icons from other icon sets [#13987](https://github.com/IgniteUI/igniteui-angular/issues/13987)
1212

1313
## Going down the road
1414

15-
1. Grid: Remove deprecated usage of displayDensity [#14015](https://github.com/IgniteUI/igniteui-angular/issues/14015)
16-
2. Expose a header template for the chip area of the headers of the rows dimension in the pivot grid [#14016](https://github.com/IgniteUI/igniteui-angular/issues/14016)
15+
1.
1716

1817
# Previous Milestone
1918

19+
## Milestone 31, version 18.0 (Released Jun 07th, 2024)
20+
21+
1. Support of Angular 18
22+
2. **[DONE]** Expose a header template for the chip area of the headers of the rows dimension in the pivot grid [#14016](https://github.com/IgniteUI/igniteui-angular/issues/14016)
23+
3. **[DONE]** Expose headers for row dimensions to be visible in excel when exporting a pivot grid [#14017](https://github.com/IgniteUI/igniteui-angular/issues/14017)
24+
4. **[DONE]** igxToggle: setOffset function increments the offset instead of setting a specific value [#14174](https://github.com/IgniteUI/igniteui-angular/issues/14174)
25+
5. **[DONE]** BREAKING CHANGE: Depricate of displayDensity property [Update Guide](https://www.infragistics.com/products/ignite-ui-angular/angular/components/general/update-guide#from-172x-to-180x)
26+
27+
## Milestone 30, version 17.2 (Released Apr 29th, 2024)
28+
29+
1. **[DONE]** Update calendar theme to match material [#10400](https://github.com/IgniteUI/igniteui-angular/issues/10400)
30+
2. **[DONE]** Calendar: Default date formatting in the header [#13811](https://github.com/IgniteUI/igniteui-angular/issues/13811)
31+
3. **[DONE]** Button: States and size improvements request [#1033](https://github.com/IgniteUI/igniteui-angular/issues/1033)
32+
4. **[DONE]** Provide a way to replace part of (or all) icons used by components with icons from other icon sets [#13987](https://github.com/IgniteUI/igniteui-angular/issues/13987)
33+
5. **[DONE]** Date/datetime/time editors should accept the same formats that the angular pipes accept [#14011](https://github.com/IgniteUI/igniteui-angular/issues/14011)
34+
35+
2036
## Milestone 29, version 17.1 (Released Feb 26th, 2024)
2137

22-
1. Improve package tree-shaking [#13562](https://github.com/IgniteUI/igniteui-angular/issues/13562)
23-
2. Deprecate rowID and rowData in interfaces [#10617](https://github.com/IgniteUI/igniteui-angular/issues/10617)
24-
3. Component: Icon Button [#13590](https://github.com/IgniteUI/igniteui-angular/issues/13590)
25-
4. HammerJS is now an optional dependency
38+
1. **[DONE]** Improve package tree-shaking [#13562](https://github.com/IgniteUI/igniteui-angular/issues/13562)
39+
2. **[DONE]** Deprecate rowID and rowData in interfaces [#10617](https://github.com/IgniteUI/igniteui-angular/issues/10617)
40+
3. **[DONE]** Component: Icon Button [#13590](https://github.com/IgniteUI/igniteui-angular/issues/13590)
41+
4. **[DONE]** HammerJS is now an optional dependency
2642

2743
## Milestone 28, version 17.0 (Released Nov 9th, 2023) [Release Blog 17.0](https://www.infragistics.com/community/blogs/b/infragistics/posts/ignite-ui-for-angular-17-0-0)
2844

angular.json

+123
Original file line numberDiff line numberDiff line change
@@ -240,6 +240,129 @@
240240
}
241241
}
242242
},
243+
"igniteui-angular-elements": {
244+
"projectType": "application",
245+
"schematics": {
246+
"@schematics/angular:component": {
247+
"style": "scss"
248+
},
249+
"@schematics/angular:application": {
250+
"strict": true
251+
}
252+
},
253+
"root": "projects/igniteui-angular-elements",
254+
"sourceRoot": "projects/igniteui-angular-elements/src",
255+
"prefix": "app",
256+
"architect": {
257+
"build": {
258+
"builder": "@angular-devkit/build-angular:application",
259+
"options": {
260+
"outputPath": {
261+
"base": "dist/igniteui-angular-elements"
262+
},
263+
"index": "projects/igniteui-angular-elements/src/index.html",
264+
"polyfills": [
265+
"projects/igniteui-angular-elements/src/polyfills.ts"
266+
],
267+
"tsConfig": "projects/igniteui-angular-elements/tsconfig.app.json",
268+
"inlineStyleLanguage": "scss",
269+
"assets": [
270+
"projects/igniteui-angular-elements/src/favicon.ico",
271+
"projects/igniteui-angular-elements/src/assets",
272+
"projects/igniteui-angular-elements/src/index.js"
273+
],
274+
"styles": [
275+
"projects/igniteui-angular-elements/src/styles.scss"
276+
],
277+
"scripts": [
278+
{ "input": "./node_modules/lit-html/lit-html.js", "inject": false },
279+
{ "input": "./node_modules/lit-html/development/directive.js", "inject": false }
280+
],
281+
"stylePreprocessorOptions": {
282+
"includePaths": ["node_modules"]
283+
},
284+
"browser": "projects/igniteui-angular-elements/src/main.ts"
285+
},
286+
"configurations": {
287+
"production": {
288+
"budgets": [
289+
{
290+
"type": "allScript",
291+
"maximumWarning": "2.1mb",
292+
"maximumError": "2.5mb"
293+
},
294+
{
295+
"type": "bundle",
296+
"name": "styles",
297+
"maximumWarning": "450kb",
298+
"maximumError": "480kb"
299+
},
300+
{
301+
"type": "anyComponentStyle",
302+
"maximumWarning": "2kb",
303+
"maximumError": "4kb"
304+
}
305+
],
306+
"fileReplacements": [
307+
{
308+
"replace": "projects/igniteui-angular-elements/src/environments/environment.ts",
309+
"with": "projects/igniteui-angular-elements/src/environments/environment.prod.ts"
310+
}
311+
],
312+
"outputHashing": "none",
313+
"optimization": true,
314+
"externalDependencies": ["lit-html"]
315+
},
316+
"development": {
317+
"optimization": false,
318+
"extractLicenses": false,
319+
"sourceMap": true,
320+
"namedChunks": true
321+
}
322+
},
323+
"defaultConfiguration": "production"
324+
},
325+
"serve": {
326+
"builder": "@angular-devkit/build-angular:dev-server",
327+
"configurations": {
328+
"production": {
329+
"buildTarget": "igniteui-angular-elements:build:production"
330+
},
331+
"development": {
332+
"buildTarget": "igniteui-angular-elements:build:development"
333+
}
334+
},
335+
"defaultConfiguration": "development"
336+
},
337+
"extract-i18n": {
338+
"builder": "@angular-devkit/build-angular:extract-i18n",
339+
"options": {
340+
"buildTarget": "igniteui-angular-elements:build"
341+
}
342+
},
343+
"test": {
344+
"builder": "@angular-devkit/build-angular:karma",
345+
"options": {
346+
"main": "projects/igniteui-angular-elements/src/test.ts",
347+
"polyfills": "projects/igniteui-angular-elements/src/polyfills.ts",
348+
"tsConfig": "projects/igniteui-angular-elements/tsconfig.spec.json",
349+
"karmaConfig": "projects/igniteui-angular-elements/karma.conf.js",
350+
"inlineStyleLanguage": "scss",
351+
"assets": [
352+
"projects/igniteui-angular-elements/src/favicon.ico",
353+
"projects/igniteui-angular-elements/src/assets"
354+
],
355+
"styles": [
356+
"projects/igniteui-angular-elements/src/styles.scss"
357+
],
358+
"stylePreprocessorOptions": {
359+
"includePaths": ["node_modules"]
360+
},
361+
"scripts": []
362+
}
363+
}
364+
}
365+
},
243366
"bundle-test": {
244367
"projectType": "application",
245368
"schematics": {

gulpfile.js

+6
Original file line numberDiff line numberDiff line change
@@ -174,3 +174,9 @@ module.exports.sassdocImportJson = sassdocImportJson;
174174
module.exports.sassdocBuildJson = sassdocBuildJson;
175175
module.exports.sassdocBuildJA = series(sassdocCleanOutputDir, sassdocBuildJA);
176176
module.exports.sassdocBuildEN = series(sassdocCleanOutputDir, sassdocBuildEN);
177+
178+
module.exports.copyPackageForElements = (cb) => {
179+
return gulp.src([
180+
path.join(__dirname, 'projects/igniteui-angular-elements/package.json')
181+
]).pipe(gulp.dest(path.join(__dirname, 'dist/igniteui-angular-elements/browser')));
182+
};

package-lock.json

+35
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

+10
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@
44
"scripts": {
55
"ng": "ng",
66
"start": "ng serve --open --hmr",
7+
"start:elements": "ng serve --project igniteui-angular-elements",
78
"build": "ng build --configuration production",
89
"test": "ng test igniteui-angular",
910
"lint": "ng lint",
@@ -25,6 +26,8 @@
2526
"test:schematics": "ts-node --project projects/igniteui-angular/migrations/tsconfig.json ./node_modules/jasmine/bin/jasmine.js ./projects/igniteui-angular/migrations/**/*.spec.ts ./projects/igniteui-angular/schematics/**/*.spec.ts",
2627
"test:styles": "ts-node --skip-project ./node_modules/jasmine/bin/jasmine.js ./projects/igniteui-angular/src/lib/core/styles/spec/tests.ts",
2728
"test:i18n": "ts-node --skip-project ./projects/igniteui-angular/src/lib/core/i18n/tests/tests.ts",
29+
"test:elements": "ng test igniteui-angular-elements --watch=false --no-progress --code-coverage --source-map=false",
30+
"test:elements:watch": "ng test igniteui-angular-elements",
2831
"build:lib": "ng build igniteui-angular --configuration production && npm run build:styles",
2932
"build:styles": "node scripts/build-styles.mjs",
3033
"build:migrations": "gulp copyMigrations && tsc --listEmittedFiles --project ./projects/igniteui-angular/migrations/tsconfig.json",
@@ -50,6 +53,10 @@
5053
"build:bundletest": "ng build bundle-test --configuration production",
5154
"lint:i18n": "eslint projects/igniteui-angular-i18n/src/**/*.ts",
5255
"test:i18n:dist": "eslint -c projects/igniteui-angular-i18n/.eslintrc.dist.i18n.json dist/igniteui-angular-i18n/**/*.d.ts --no-eslintrc",
56+
"build:elements": "ng build igniteui-angular-elements && npm run pack:elements && gulp copyPackageForElements",
57+
"pack:elements": "node projects/igniteui-angular-elements/esbuild.mjs && node scripts/build-elements-styles.mjs",
58+
"elements:configure": "ts-node -T -H --skip-project --compilerOptions {\\\"moduleResolution\\\":\\\"NodeNext\\\"} ./projects/igniteui-angular-elements/src/analyzer/analyzer.ts",
59+
"test:elements:configure": "ts-node --skip-project ./node_modules/jasmine/bin/jasmine.js --config=projects/igniteui-angular-elements/jasmine.json",
5360
"postinstall": "gulp copyGitHooks",
5461
"cypress:open": "cypress open --config-file=cypress.config.ts",
5562
"cypress:run": "cypress run --config-file=cypress.config.ts",
@@ -61,13 +68,15 @@
6168
"@angular/common": "^18.0.1",
6269
"@angular/compiler": "^18.0.1",
6370
"@angular/core": "^18.0.1",
71+
"@angular/elements": "^18.0.1",
6472
"@angular/forms": "^18.0.1",
6573
"@angular/platform-browser": "^18.0.1",
6674
"@angular/platform-browser-dynamic": "^18.0.1",
6775
"@angular/platform-server": "^18.0.1",
6876
"@angular/router": "^18.0.1",
6977
"@angular/ssr": "^18.0.2",
7078
"@igniteui/material-icons-extended": "^3.0.0",
79+
"@lit-labs/ssr-dom-shim": "^1.2.0",
7180
"@types/source-map": "0.5.2",
7281
"express": "^4.19.2",
7382
"fflate": "^0.8.1",
@@ -128,6 +137,7 @@
128137
"karma-junit-reporter": "^2.0.1",
129138
"karma-parallel": "^0.3.1",
130139
"karma-spec-reporter": "^0.0.36",
140+
"lit-html": "^3.1.2",
131141
"ng-packagr": "^18.0.0",
132142
"postcss": "^8.4.31",
133143
"postcss-scss": "^4.0.6",

0 commit comments

Comments
 (0)