Skip to content

Conversation

@trtshen
Copy link
Collaborator

@trtshen trtshen commented May 28, 2025

This pull request introduces several updates across configuration files, workflows, and documentation. Key changes include updates to ESLint configuration and rules, enhancements to GitHub workflow environment variables, and adjustments to Angular project settings. Additionally, new documentation sections have been added for localization and API custom headers.

Configuration Updates

  • ESLint Configuration:

    • Added the rxjs plugin and updated parserOptions to include specific tsconfig files (.eslintrc.json).
    • Introduced new linting rules, including rxjs/no-ignored-observable, prefer-const, and restrictions on console usage (.eslintrc.json).
    • Ignored .spec.ts and environment.*.ts files in .eslintignore.
  • Angular Project Configuration:

    • Removed the default project and unused configurations, such as app and app-e2e, in angular.json (default now is v3 project).
    • Updated allowedCommonJsDependencies to include libraries like pusher-js, moment, and quill in angular.json.
    • Removed the Malay (ms) locale configuration from the localization settings in angular.json.

Workflow Enhancements

  • Environment Variables:
    • Added CUSTOM_UPLOAD_TUS_ENDPOINT and CUSTOM_UPLOAD_MAX_FILE_SIZE to workflows (p2-aus-appv3.yml, p2-euk-appv3.yml, p2-prerelease-appv3.yml, p2-stage-appv3.yml, p2-usa-appv3.yml). [1] [2] [3] [4] [5]
    • Added CUSTOM_STACK_NAME to workflows for consistency. [1] [2] [3] [4] [5]
    • Updated BUILD_CONFIG to stage in p2-stage-appv3.yml.

Documentation Updates

  • Localization Guidelines:

    • Added detailed steps for managing localization files and translations using poedit.org in the README.md.
  • API Custom Headers:

    • Documented required custom headers for API requests to ensure compatibility with the server's CORS policy.

These updates collectively improve the maintainability, standardization, and clarity of the project.

rodentskie and others added 30 commits December 11, 2024 08:34
…r-handling-prerelease' into 2.4.y/CORE7701/rating-dups-trunk
…-trunk

[CORE-7701] 2.4.y/rating dups trunk
…egration-trunk

2.4.y.z/core 7684/uppy integration trunk
…egration-trunk

[CORE-7684] use input url as 1st choice
…egration-trunk

[CORE-7684] var type error
…egration-trunk

[core-7684] remove withCredentials
trtshen added 17 commits May 16, 2025 14:12
…fail-trunk

[CORE-7899] 2.4.y/auto save fail trunk
…fail-trunk

[CORE-7874] checking for unavailable activity
…fail-trunk

[CORE-7899] 2.4.y/auto save fail trunk
…ubmit-without-file

[CORE-7907] prevent dismiss
…ubmit-without-file

[CORE-7906] overlapping alert
…le-not-uploaded

[CORE-7892] set only after uploaded
…mission-with-file

[CORE-7903] 2.4.y/review submission with file
@trtshen trtshen requested review from Copilot and shawnm0705 May 28, 2025 04:33
@trtshen trtshen self-assigned this May 28, 2025
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull Request Overview

This PR upgrades the project to Angular 17 and Ionic 7, standardizes linting, enhances CI workflows with new environment variables, and adds docs for localization and API headers.

  • Upgrade Angular/Ionic versions and update core dependencies
  • Integrate new ESLint rules and adjust project tsconfigs
  • Enhance GitHub workflows with CUSTOM_UPLOAD_* and CUSTOM_STACK_NAME vars
  • Add localization guides and API custom-header docs

Reviewed Changes

Copilot reviewed 195 out of 195 changed files in this pull request and generated 3 comments.

Show a summary per file
File Description
projects/v3/src/app/app.module.ts Enable innerHTMLTemplatesEnabled in IonicModule.forRoot
projects/v3/src/app/app.component.ts Add string type for logo and refactor URL‐prefix logic
projects/v3/karma.conf.js Remove legacy Istanbul reporter and other flags
projects/request/tsconfig.lib.json Include src/lib/**/*.ts in library build
projects/request/src/lib/request.service.ts Switch to lodash-es and use strict equality operator
projects/request/src/lib/request.service.spec.ts Update import paths for V3 test utilities
projects/request/package.json Replace lodash with lodash-es
package.json Revise scripts; bump Angular/Ionic and related dependency versions
angular.json Remove default project; update locales, CommonJS allowances, assets
README.md Add localization workflow and API custom headers sections
.github/workflows/*.yml Add CUSTOM_UPLOAD_TUS_ENDPOINT, CUSTOM_UPLOAD_MAX_FILE_SIZE, and CUSTOM_STACK_NAME env variables
.eslintrc.json & .eslintignore Add rxjs plugin and new lint rules; ignore specs & environments
.editorconfig Configure .xlf files to preserve trailing whitespace
Comments suppressed due to low confidence (3)

projects/request/src/lib/request.service.spec.ts:15

  • [nitpick] The alias @testingv3/utils may be confusing; consider a clearer path or ensure it aligns with your project’s module naming conventions.
import { TestUtils } from '@testingv3/utils';

package.json:16

  • [nitpick] The prev3 script duplicates prebuildv3. Consider removing or renaming it to avoid confusion.
"prev3": "npm run prebuildv3",

projects/v3/src/app/app.module.ts:23

  • Enabling innerHTMLTemplatesEnabled may introduce XSS risks if templates are not sanitized. Please confirm that all dynamic HTML content is sanitized appropriately.
IonicModule.forRoot({

@intersective intersective deleted a comment from Copilot AI May 28, 2025
grammar correction

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
@trtshen trtshen requested a review from Copilot May 28, 2025 04:46
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull Request Overview

This PR upgrades the Ionic & Angular setup to v3/v17, enhances linting rules, expands CI workflow environment variables, and bolsters documentation for localization and API headers.

  • Upgraded dependencies and project configuration (Angular 17, Ionic 7)
  • Strengthened ESLint rules and parser settings; switched to lodash-es
  • Expanded GitHub workflow env vars and added i18n & API header docs

Reviewed Changes

Copilot reviewed 195 out of 195 changed files in this pull request and generated 2 comments.

Show a summary per file
File Description
projects/v3/src/app/app.module.ts Enabled innerHTMLTemplatesEnabled in IonicModule
projects/v3/src/app/app.component.ts Added logo type and updated URL‐prefix logic
projects/v3/karma.conf.js Removed Istanbul reporter and port/log settings
projects/request/tsconfig.lib.json Included library source files in build
projects/request/src/lib/request.service.ts Switched import to lodash-es and tightened ===
projects/request/src/lib/request.service.spec.ts Updated test imports to v3 paths
projects/request/package.json Replaced lodash with lodash-es
package.json Refactored scripts and bumped core dependencies
angular.json Pruned legacy projects, added v3 build/serve settings
README.md Added localization & custom header guidelines
.github/workflows/pull-req.yml Cleaned up stray cache section
.github/workflows/p2-usa-appv3.yml Added upload vars and CUSTOM_STACK_NAME
.github/workflows/p2-stage-appv3.yml Changed BUILD_CONFIG, added flags and env vars
.github/workflows/p2-prerelease-appv3.yml Added upload vars and CUSTOM_STACK_NAME
.github/workflows/p2-euk-appv3.yml Added upload vars and CUSTOM_STACK_NAME
.github/workflows/p2-aus-appv3.yml Added upload vars and CUSTOM_STACK_NAME
.eslintrc.json Introduced RxJS plugin, updated parser & rules
.eslintignore Ignored spec and environment files
.editorconfig Configured XLF formatting rules
Comments suppressed due to low confidence (3)

angular.json:3

  • Removing defaultProject may break CLI commands that rely on a default. Consider restoring "defaultProject": "v3" so ng build and ng serve target v3 by default.
"defaultProject": "v3",

projects/v3/karma.conf.js:28

  • Coverage thresholds from the removed coverageIstanbulReporter block are no longer enforced. To maintain coverage standards, configure coverageReporter.thresholds or reintroduce equivalent settings.
coverageReporter: {

package.json:14

  • [nitpick] The script name prev3 is unclear and easily confused with prebuildv3. Consider renaming it to something more descriptive, such as pre-v3 or prepare-v3.
"prev3": "npm run prebuildv3",

@trtshen trtshen marked this pull request as ready for review May 28, 2025 04:51
@trtshen trtshen changed the base branch from golive/2.4.y to golive/2.4.5 May 28, 2025 06:41
@trtshen trtshen merged commit 679cd8f into golive/2.4.5 May 28, 2025
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants