diff --git a/.changeset/config.json b/.changeset/config.json index 14c1d2c02..3892f4bcc 100644 --- a/.changeset/config.json +++ b/.changeset/config.json @@ -7,21 +7,20 @@ } ], "commit": false, - "fixed": [["@forgerock/javascript-sdk", "@forgerock/ping-protect"]], + "fixed": [["@forgerock/javascript-sdk"]], "linked": [], "access": "public", "baseBranch": "master", "updateInternalDependencies": "patch", "ignore": [ - "@forgerock/device-client", + "@forgerock/ping-protect", + "@forgerock/token-vault", "autoscript-apps", "autoscript-suites", - "davinci-app", "mock-api", "token-vault-app", "@forgerock/token-vault-interceptor", "token-vault-proxy", - "token-vault-suites", - "davinci-suites" + "token-vault-suites" ] } diff --git a/.eslintignore b/.eslintignore index ee89780ad..91f29fbc7 100644 --- a/.eslintignore +++ b/.eslintignore @@ -1,2 +1,5 @@ node_modules pnpm-lock.yaml +packages/*/docs +packages/*/coverage + diff --git a/.github/pull_request_template.md b/.github/pull_request_template.md index 34b902d11..048d8adfe 100644 --- a/.github/pull_request_template.md +++ b/.github/pull_request_template.md @@ -1,47 +1,14 @@ # JIRA Ticket -Please link jira ticket here - -# Description - -# Type of Change - -Please Delete options that are not relevant - -- [ ] Bug fix (non-breaking change which fixes an issue) -- [ ] New feature (non-breaking change which adds functionality) -- [ ] Breaking change (fix or feature that would cause existing functionality to not work as expected) -- [ ] This change requires a documentation update - -# How Has This Been Tested? - -Please describe the tests that you ran to verify your changes. Provide instructions so we can reproduce. Please also list any relevant details for your test configuration - -# Definition of Done - -Check all that apply - -- [ ] Acceptance criteria is met. -- [ ] All tasks listed in the user story have been completed. -- [ ] Coded to standards. -- [ ] Code peer-reviewed. -- [ ] Ensure backward compatibility (special attention). -- [ ] API reference docs is updated. -- [ ] Unit tests are written. -- [ ] Integration tests are written. -- [ ] e2e tests are written. -- [ ] CI build passing on the feature branch. -- [ ] Functional spec is written/updated -- [ ] contains example code snippets. -- [ ] Change log updated. -- [ ] Documentation story is created and tracked. -- [ ] UI is completed or ticket is created. -- [ ] Demo to PO and team. -- [ ] Tech debts and remaining tasks are tracked in separated ticket(s). - -## Documentation - -- [ ] Acceptance criteria met -- [ ] Spell-check run -- [ ] Peer reviewed -- [ ] Proofread + + +## Description + + + diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 02e91f0c7..4cae4ebb8 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -34,7 +34,12 @@ jobs: - run: git branch --track develop origin/develop - run: pnpm exec nx-cloud record -- nx format:check --verbose - - run: pnpm exec nx affected -t build lint test e2e-ci --verbose + - run: pnpm exec nx affected -t build lint test docs e2e-ci --verbose + + - uses: codecov/codecov-action@v5 + with: + files: ./packages/**/coverage/*.xml + token: ${{ secrets.CODECOV_TOKEN }} - uses: actions/upload-artifact@v4 if: ${{ !cancelled() }} diff --git a/.github/workflows/publish.yml b/.github/workflows/publish.yml index a8a58f193..e1e93705a 100644 --- a/.github/workflows/publish.yml +++ b/.github/workflows/publish.yml @@ -92,3 +92,8 @@ jobs: env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} NPM_CONFIG_PROVENANCE: true + + - uses: codecov/codecov-action@v5 + with: + files: ./packages/**/coverage/*.xml + token: ${{ secrets.CODECOV_TOKEN }} diff --git a/.gitignore b/.gitignore index 5e7c4d4e1..cd9444f8d 100644 --- a/.gitignore +++ b/.gitignore @@ -18,6 +18,7 @@ e2e/token-vault-app/public/assets/ bundles/ docs/ coverage/ +packages/**/coverage/ node_modules/ samples/_static/js/*.js* tests/**/app/index.js* @@ -61,6 +62,7 @@ todos/* users/* #Project Docs docs/packages/javascript-sdk +packages/*/docs **/playwright-report **/playwright/.cache @@ -79,3 +81,6 @@ terminalOutput outputs/* +e2e/mock-api-v2/html/* + +vitest.config.*.timestamp* \ No newline at end of file diff --git a/README.md b/README.md index 62e28339d..74b0315f5 100644 --- a/README.md +++ b/README.md @@ -3,9 +3,9 @@

- Logo + Logo -

ForgeRock SDK for JavaScript

+

Ping SDK for JavaScript

Change Log · @@ -15,9 +15,9 @@


-The ForgeRock JavaScript SDK enables you to quickly integrate the [ForgeRock Identity Platform](https://www.forgerock.com/digital-identity-and-access-management-platform) into your client-side JavaScript apps. +The Ping SDK for JavaScript enables you to quickly integrate Ping products into your JavaScript apps. -Use the SDKs to leverage _[Intelligent Authentication](https://www.forgerock.com/platform/access-management/intelligent-authentication)_ in [ForgeRock's Access Management (AM)](https://www.forgerock.com/platform/access-management) product, to easily step through each stage of an authentication tree by using callbacks. +Use the SDKs to leverage _[Intelligent Access](https://www.pingidentity.com/en/platform/capabilities/intelligent-access.html)_ to easily step through each stage of an authentication tree by using callbacks. @@ -26,7 +26,8 @@ Use the SDKs to leverage _[Intelligent Authentication](https://www.forgerock.com - ForgeRock Identity Platform - - Access Management (AM) 6.5.2+ + - Ping Advanced Identity Cloud + - PingAM 6.5.2+ - Browsers: @@ -39,8 +40,6 @@ Use the SDKs to leverage _[Intelligent Authentication](https://www.forgerock.com - npm - npm 7+ is required to use this project and the sample apps, since npm workspaces are used to install dependencies in sub-projects such as the sample apps -> **Tip**: Older browsers (like IE11) may require multiple [polyfills, which can be found in our documentation](https://sdks.forgerock.com/javascript/polyfills/). - @@ -52,9 +51,9 @@ npm install @forgerock/javascript-sdk ## Samples -ForgeRock provides these samples to help demonstrate SDK functionality/implementation. They are provided "as is" and are not official products of ForgeRock and are not officially supported. +ForgeRock provides these samples to help demonstrate SDK functionality/implementation. They are provided "as is" and are not official products of Ping Identity Corporation and are not officially supported. -To try out the ForgeRock JavaScript SDK please look at one of our samples: +To try out the Ping SDK for JavaScript please look at one of our samples: - [**Embedded login - `samples/embedded-login`**](https://github.com/ForgeRock/sdk-sample-apps/blob/main/embedded-login/README.md) @@ -69,10 +68,10 @@ To try out the ForgeRock JavaScript SDK please look at one of our samples: ## Documentation -Documentation for the SDKs is provided at ****, and includes topics such as: +Documentation for the SDKs is provided at ****, and includes topics such as: - Introducing the SDK Features -- Preparing AM for use with the SDKS +- Preparing your server for use with the SDKS - API Reference documentation @@ -80,16 +79,16 @@ Documentation for the SDKs is provided at ****, and ## Support -If you encounter any issues, be sure to check our **[Troubleshooting](https://backstage.forgerock.com/knowledge/kb/article/a83789945)** pages. +If you encounter any issues, be sure to check our **[Troubleshooting](https://support.pingidentity.com/s/article/How-do-I-troubleshoot-the-ForgeRock-SDK-for-JavaScript)** pages. Support tickets can be raised whenever you need our assistance; here are some examples of when it is appropriate to open a ticket (but not limited to): - Suspected bugs or problems with ForgeRock software. -- Requests for assistance - please look at the **[Documentation](https://sdks.forgerock.com)** and **[Knowledge Base](https://backstage.forgerock.com/knowledge/kb/home/g32324668)** first. +- Requests for assistance - please look at the **[Documentation](https://docs.pingidentity.com/sdks)** and **[Knowledge Base](https://support.pingidentity.com/s/knowledge-base)** first. -You can raise a ticket using **[BackStage](https://backstage.forgerock.com/support/tickets)**, our customer support portal that provides one stop access to ForgeRock services. +You can raise a ticket using the **[Ping Identity Support Portal](https://support.pingidentity.com/s/)** that provides one stop access to support services. -BackStage shows all currently open support tickets and allows you to raise a new one by clicking **New Ticket**. +The support portal shows all currently open support tickets and allows you to raise a new one by clicking **New Ticket**. ## Version History @@ -102,16 +101,15 @@ BackStage shows all currently open support tickets and allows you to raise a new If you would like to contribute to this project you can fork the repository, clone it to your machine and get started. - - -Be sure to check out our [Coding Style and Guidelines](https://wikis.forgerock.org/confluence/display/devcom/Coding+Style+and+Guidelines) page. - ## Disclaimer -> **This code is provided by ForgeRock on an “as is” basis, without warranty of any kind, to the fullest extent permitted by law. ForgeRock does not represent or warrant or make any guarantee regarding the use of this code or the accuracy, timeliness or completeness of any data or information relating to this code, and ForgeRock hereby disclaims all warranties whether express, or implied or statutory, including without limitation the implied warranties of merchantability, fitness for a particular purpose, and any warranty of non-infringement. ForgeRock shall not have any liability arising out of or related to any use, implementation or configuration of this code, including but not limited to use for any commercial purpose. Any action or suit relating to the use of the code may be brought only in the courts of a jurisdiction wherein ForgeRock resides or in which ForgeRock conducts its primary business, and under the laws of that jurisdiction excluding its conflict-of-law provisions.** +> **This code is provided by Ping Identity Corporation ("Ping") on an "as is" basis, without warranty of any kind, to the fullest extent permitted by law. +> Ping Identity Corporation does not represent or warrant or make any guarantee regarding the use of this code or the accuracy, timeliness or completeness of any data or information relating to this code, and Ping Identity Corporation hereby disclaims all warranties whether express, or implied or statutory, including without limitation the implied warranties of merchantability, fitness for a particular purpose, and any warranty of non-infringement. +> Ping Identity Corporation shall not have any liability arising out of or related to any use, implementation or configuration of this code, including but not limited to use for any commercial purpose. +> Any action or suit relating to the use of the code may be brought only in the courts of a jurisdiction wherein Ping Identity Corporation resides or in which Ping Identity Corporation conducts its primary business, and under the laws of that jurisdiction excluding its conflict-of-law provisions.** @@ -122,6 +120,4 @@ This project is licensed under the MIT License - see the [LICENSE](./packages/ja --- -© Copyright 2020 ForgeRock AS. All Rights Reserved. - -[forgerock-logo]: https://www.forgerock.com/themes/custom/forgerock/images/fr-logo-horz-color.svg 'ForgeRock Logo' +© Copyright 2020-2025 Ping Identity. All Rights Reserved diff --git a/contributing_docs/git.md b/contributing_docs/git.md new file mode 100644 index 000000000..4eafbeef3 --- /dev/null +++ b/contributing_docs/git.md @@ -0,0 +1,25 @@ +# Git + +## Standards + +We use standard conventional commits for committing to the repository. Your commits will run through a linting process to make sure they are standard. + +Please use [Conventional Commit Conventions](https://www.conventionalcommits.org/en/v1.0.0-beta.4/#summary) as a guide for how to commit to the repository. + +## Commit Format + +Commits should be formatted like so + +```bash + (): + + + +