diff --git a/angular.json b/angular.json index 267c8b1..a032859 100644 --- a/angular.json +++ b/angular.json @@ -17,7 +17,8 @@ "index": "src/index.html", "browser": "src/main.ts", "polyfills": [ - "zone.js" + "zone.js", + "@angular/localize/init" ], "tsConfig": "tsconfig.app.json", "assets": [ @@ -51,6 +52,15 @@ ], "outputHashing": "all" }, + "en": { + "localize": ["en"], + "outputPath": "dist/arti-angular-app-en" + }, + "pl": { + "localize": ["pl"], + "outputPath": "dist/arti-angular-app-pl" + }, + "development": { "optimization": false, "extractLicenses": false, @@ -83,7 +93,8 @@ "options": { "polyfills": [ "zone.js", - "zone.js/testing" + "zone.js/testing", + "@angular/localize/init" ], "tsConfig": "tsconfig.spec.json", "assets": [ diff --git a/package-lock.json b/package-lock.json index 414c127..299efb0 100644 --- a/package-lock.json +++ b/package-lock.json @@ -16,6 +16,8 @@ "@angular/platform-browser": "^18.2.0", "@angular/platform-browser-dynamic": "^18.2.0", "@angular/router": "^18.2.0", + "@ngx-translate/core": "^16.0.3", + "@ngx-translate/http-loader": "^16.0.0", "bootstrap": "^5.3.3", "rxjs": "~7.8.0", "tslib": "^2.3.0", @@ -25,6 +27,7 @@ "@angular-devkit/build-angular": "^18.2.4", "@angular/cli": "^18.2.4", "@angular/compiler-cli": "^18.2.0", + "@angular/localize": "^18.2.4", "@types/jasmine": "~5.1.0", "jasmine-core": "~5.2.0", "karma": "~6.4.0", @@ -1652,6 +1655,30 @@ "rxjs": "^6.5.3 || ^7.4.0" } }, + "node_modules/@angular/localize": { + "version": "18.2.4", + "resolved": "https://registry.npmjs.org/@angular/localize/-/localize-18.2.4.tgz", + "integrity": "sha512-3QgfYNwM4Dkd7sWu/JXZfOToporIrgdyi/G8T2zgTtArbvPNbZdSmihpSjKVmsDzB4ScXlOCH/sf0rLKIYkKwQ==", + "dev": true, + "dependencies": { + "@babel/core": "7.25.2", + "@types/babel__core": "7.20.5", + "fast-glob": "3.3.2", + "yargs": "^17.2.1" + }, + "bin": { + "localize-extract": "tools/bundles/src/extract/cli.js", + "localize-migrate": "tools/bundles/src/migrate/cli.js", + "localize-translate": "tools/bundles/src/translate/cli.js" + }, + "engines": { + "node": "^18.19.1 || ^20.11.1 || >=22.0.0" + }, + "peerDependencies": { + "@angular/compiler": "18.2.4", + "@angular/compiler-cli": "18.2.4" + } + }, "node_modules/@angular/platform-browser": { "version": "18.2.4", "resolved": "https://registry.npmjs.org/@angular/platform-browser/-/platform-browser-18.2.4.tgz", @@ -4491,6 +4518,30 @@ "webpack": "^5.54.0" } }, + "node_modules/@ngx-translate/core": { + "version": "16.0.3", + "resolved": "https://registry.npmjs.org/@ngx-translate/core/-/core-16.0.3.tgz", + "integrity": "sha512-UPse66z9tRUmIpeorYodXBQY6O4foUmj9jy9cCuuja7lqdOwRBWPzCWqc+qYIXv5L2QoqZdxgHtqoUz+Q9weSA==", + "dependencies": { + "tslib": "^2.3.0" + }, + "peerDependencies": { + "@angular/common": ">=16", + "@angular/core": ">=16" + } + }, + "node_modules/@ngx-translate/http-loader": { + "version": "16.0.0", + "resolved": "https://registry.npmjs.org/@ngx-translate/http-loader/-/http-loader-16.0.0.tgz", + "integrity": "sha512-l3okOHGVxZ1Bm55OpakSfXvI2yYmVmhYqgwGU4aIQIRUqpkBCrSDZnmrHTcZfsGJzXKB5E2D2rko9i28gBijmA==", + "dependencies": { + "tslib": "^2.3.0" + }, + "peerDependencies": { + "@angular/common": ">=16", + "@angular/core": ">=16" + } + }, "node_modules/@nodelib/fs.scandir": { "version": "2.1.5", "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", @@ -5191,6 +5242,47 @@ "url": "https://github.com/sponsors/isaacs" } }, + "node_modules/@types/babel__core": { + "version": "7.20.5", + "resolved": "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.20.5.tgz", + "integrity": "sha512-qoQprZvz5wQFJwMDqeseRXWv3rqMvhgpbXFfVyWhbx9X47POIA6i/+dXefEmZKoAgOaTdaIgNSMqMIU61yRyzA==", + "dev": true, + "dependencies": { + "@babel/parser": "^7.20.7", + "@babel/types": "^7.20.7", + "@types/babel__generator": "*", + "@types/babel__template": "*", + "@types/babel__traverse": "*" + } + }, + "node_modules/@types/babel__generator": { + "version": "7.6.8", + "resolved": "https://registry.npmjs.org/@types/babel__generator/-/babel__generator-7.6.8.tgz", + "integrity": "sha512-ASsj+tpEDsEiFr1arWrlN6V3mdfjRMZt6LtK/Vp/kreFLnr5QH5+DhvD5nINYZXzwJvXeGq+05iUXcAzVrqWtw==", + "dev": true, + "dependencies": { + "@babel/types": "^7.0.0" + } + }, + "node_modules/@types/babel__template": { + "version": "7.4.4", + "resolved": "https://registry.npmjs.org/@types/babel__template/-/babel__template-7.4.4.tgz", + "integrity": "sha512-h/NUaSyG5EyxBIp8YRxo4RMe2/qQgvyowRwVMzhYhBCONbW8PUsg4lkFMrhgZhUe5z3L3MiLDuvyJ/CaPa2A8A==", + "dev": true, + "dependencies": { + "@babel/parser": "^7.1.0", + "@babel/types": "^7.0.0" + } + }, + "node_modules/@types/babel__traverse": { + "version": "7.20.6", + "resolved": "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.20.6.tgz", + "integrity": "sha512-r1bzfrm0tomOI8g1SzvCaQHo6Lcv6zu0EA+W2kHrt8dyrHQxGzBBL4kdkzIS+jBMV+EYcMAEAqXqYaLJq5rOZg==", + "dev": true, + "dependencies": { + "@babel/types": "^7.20.7" + } + }, "node_modules/@types/body-parser": { "version": "1.19.5", "resolved": "https://registry.npmjs.org/@types/body-parser/-/body-parser-1.19.5.tgz", diff --git a/package.json b/package.json index 5f5e9c2..ae79ccb 100644 --- a/package.json +++ b/package.json @@ -18,6 +18,8 @@ "@angular/platform-browser": "^18.2.0", "@angular/platform-browser-dynamic": "^18.2.0", "@angular/router": "^18.2.0", + "@ngx-translate/core": "^16.0.3", + "@ngx-translate/http-loader": "^16.0.0", "bootstrap": "^5.3.3", "rxjs": "~7.8.0", "tslib": "^2.3.0", @@ -27,6 +29,7 @@ "@angular-devkit/build-angular": "^18.2.4", "@angular/cli": "^18.2.4", "@angular/compiler-cli": "^18.2.0", + "@angular/localize": "^18.2.4", "@types/jasmine": "~5.1.0", "jasmine-core": "~5.2.0", "karma": "~6.4.0", diff --git a/public/flag-icons-main/flags/1x1/pl.svg b/public/flag-icons-main/flags/1x1/pl.svg new file mode 100644 index 0000000..8c43577 --- /dev/null +++ b/public/flag-icons-main/flags/1x1/pl.svg @@ -0,0 +1,6 @@ + diff --git a/public/flag-icons-main/flags/1x1/us.svg b/public/flag-icons-main/flags/1x1/us.svg new file mode 100644 index 0000000..a722047 --- /dev/null +++ b/public/flag-icons-main/flags/1x1/us.svg @@ -0,0 +1,9 @@ + diff --git a/public/flag-icons-main/flags/4x3/pl.svg b/public/flag-icons-main/flags/4x3/pl.svg new file mode 100644 index 0000000..0fa5145 --- /dev/null +++ b/public/flag-icons-main/flags/4x3/pl.svg @@ -0,0 +1,6 @@ + diff --git a/public/flag-icons-main/flags/4x3/us.svg b/public/flag-icons-main/flags/4x3/us.svg new file mode 100644 index 0000000..9cfd0c9 --- /dev/null +++ b/public/flag-icons-main/flags/4x3/us.svg @@ -0,0 +1,9 @@ + diff --git a/src/app/about-me/about-me.component.html b/src/app/about-me/about-me.component.html index 20cea5c..55a5d9f 100644 --- a/src/app/about-me/about-me.component.html +++ b/src/app/about-me/about-me.component.html @@ -27,44 +27,8 @@ -
Jestem doświadczonym inżynierem oprogramowania z ponad 20-letnim doświadczeniem w branży IT.
-Specjalizuję się w technologiach Java i Angular, a także w rozwijaniu i wdrażaniu skalowalnych aplikacji webowych.
-Jestem posiadaczem certyfikatu Oracle Cloud Infrastructure 2024 Generative AI Certified Professional oraz wcześniejszych - kwalifikacji w obszarze chmury Oracle i programowania w języku Java.
-Te umiejętności wspierają moje działania w zakresie wdrażania nowoczesnych rozwiązań opartych na chmurze - oraz tworzenia aplikacji zorientowanych na przyszłość.
-