Skip to content

Commit f890af3

Browse files
committed
Merge pull request #528 from ForgeRock/changeset-release/master
Release PR
2 parents 210d647 + 90b6277 commit f890af3

File tree

188 files changed

+2582
-7665
lines changed

Some content is hidden

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

188 files changed

+2582
-7665
lines changed

.changeset/config.json

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -7,21 +7,20 @@
77
}
88
],
99
"commit": false,
10-
"fixed": [["@forgerock/javascript-sdk", "@forgerock/ping-protect"]],
10+
"fixed": [["@forgerock/javascript-sdk"]],
1111
"linked": [],
1212
"access": "public",
1313
"baseBranch": "master",
1414
"updateInternalDependencies": "patch",
1515
"ignore": [
16-
"@forgerock/device-client",
16+
"@forgerock/ping-protect",
17+
"@forgerock/token-vault",
1718
"autoscript-apps",
1819
"autoscript-suites",
19-
"davinci-app",
2020
"mock-api",
2121
"token-vault-app",
2222
"@forgerock/token-vault-interceptor",
2323
"token-vault-proxy",
24-
"token-vault-suites",
25-
"davinci-suites"
24+
"token-vault-suites"
2625
]
2726
}

.eslintignore

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,5 @@
11
node_modules
22
pnpm-lock.yaml
3+
packages/*/docs
4+
packages/*/coverage
5+

.github/pull_request_template.md

Lines changed: 12 additions & 45 deletions
Original file line numberDiff line numberDiff line change
@@ -1,47 +1,14 @@
11
# JIRA Ticket
22

3-
Please link jira ticket here
4-
5-
# Description
6-
7-
# Type of Change
8-
9-
Please Delete options that are not relevant
10-
11-
- [ ] Bug fix (non-breaking change which fixes an issue)
12-
- [ ] New feature (non-breaking change which adds functionality)
13-
- [ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
14-
- [ ] This change requires a documentation update
15-
16-
# How Has This Been Tested?
17-
18-
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
19-
20-
# Definition of Done
21-
22-
Check all that apply
23-
24-
- [ ] Acceptance criteria is met.
25-
- [ ] All tasks listed in the user story have been completed.
26-
- [ ] Coded to standards.
27-
- [ ] Code peer-reviewed.
28-
- [ ] Ensure backward compatibility (special attention).
29-
- [ ] API reference docs is updated.
30-
- [ ] Unit tests are written.
31-
- [ ] Integration tests are written.
32-
- [ ] e2e tests are written.
33-
- [ ] CI build passing on the feature branch.
34-
- [ ] Functional spec is written/updated
35-
- [ ] contains example code snippets.
36-
- [ ] Change log updated.
37-
- [ ] Documentation story is created and tracked.
38-
- [ ] UI is completed or ticket is created.
39-
- [ ] Demo to PO and team.
40-
- [ ] Tech debts and remaining tasks are tracked in separated ticket(s).
41-
42-
## Documentation
43-
44-
- [ ] Acceptance criteria met
45-
- [ ] Spell-check run
46-
- [ ] Peer reviewed
47-
- [ ] Proofread
3+
<!--
4+
Add a Jira ticket here if applicable
5+
-->
6+
7+
## Description
8+
9+
<!--
10+
Describe the changes
11+
-->
12+
<!--
13+
Did you add a changeset?
14+
-->

.github/workflows/ci.yml

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,12 @@ jobs:
3434
- run: git branch --track develop origin/develop
3535

3636
- run: pnpm exec nx-cloud record -- nx format:check --verbose
37-
- run: pnpm exec nx affected -t build lint test e2e-ci --verbose
37+
- run: pnpm exec nx affected -t build lint test docs e2e-ci --verbose
38+
39+
- uses: codecov/codecov-action@v5
40+
with:
41+
files: ./packages/**/coverage/*.xml
42+
token: ${{ secrets.CODECOV_TOKEN }}
3843

3944
- uses: actions/upload-artifact@v4
4045
if: ${{ !cancelled() }}

.github/workflows/publish.yml

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -92,3 +92,8 @@ jobs:
9292
env:
9393
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
9494
NPM_CONFIG_PROVENANCE: true
95+
96+
- uses: codecov/codecov-action@v5
97+
with:
98+
files: ./packages/**/coverage/*.xml
99+
token: ${{ secrets.CODECOV_TOKEN }}

.gitignore

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@ e2e/token-vault-app/public/assets/
1818
bundles/
1919
docs/
2020
coverage/
21+
packages/**/coverage/
2122
node_modules/
2223
samples/_static/js/*.js*
2324
tests/**/app/index.js*
@@ -61,6 +62,7 @@ todos/*
6162
users/*
6263
#Project Docs
6364
docs/packages/javascript-sdk
65+
packages/*/docs
6466
**/playwright-report
6567
**/playwright/.cache
6668

@@ -79,3 +81,6 @@ terminalOutput
7981
outputs/*
8082

8183

84+
e2e/mock-api-v2/html/*
85+
86+
vitest.config.*.timestamp*

README.md

Lines changed: 19 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -3,9 +3,9 @@
33

44
<p align="center">
55
<a href="https://github.com/ForgeRock">
6-
<img src="https://www.forgerock.com/themes/custom/forgerock/images/fr-logo-horz-color.svg" alt="Logo">
6+
<img src="https://cdn-docs.pingidentity.com/navbar/ping-logo-horizontal.svg" alt="Logo">
77
</a>
8-
<h2 align="center">ForgeRock SDK for JavaScript</h2>
8+
<h2 align="center">Ping SDK for JavaScript</h2>
99
<p align="center">
1010
<a href="https://github.com/ForgeRock/forgerock-javascript-sdk/blob/master/CHANGELOG.md">Change Log</a>
1111
·
@@ -15,9 +15,9 @@
1515
</p>
1616
<hr/></p>
1717

18-
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.
18+
The Ping SDK for JavaScript enables you to quickly integrate Ping products into your JavaScript apps.
1919

20-
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.
20+
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.
2121

2222
<!------------------------------------------------------------------------------------------------------------------------------------>
2323
<!-- REQUIREMENTS - Supported AM versions, API versions, any other requirements. -->
@@ -26,7 +26,8 @@ Use the SDKs to leverage _[Intelligent Authentication](https://www.forgerock.com
2626

2727
- ForgeRock Identity Platform
2828

29-
- Access Management (AM) 6.5.2+
29+
- Ping Advanced Identity Cloud
30+
- PingAM 6.5.2+
3031

3132
- Browsers:
3233

@@ -39,8 +40,6 @@ Use the SDKs to leverage _[Intelligent Authentication](https://www.forgerock.com
3940
- npm
4041
- 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
4142

42-
> **Tip**: Older browsers (like IE11) may require multiple [polyfills, which can be found in our documentation](https://sdks.forgerock.com/javascript/polyfills/).
43-
4443
<!------------------------------------------------------------------------------------------------------------------------------------>
4544
<!-- INSTALLATION -->
4645

@@ -52,9 +51,9 @@ npm install @forgerock/javascript-sdk
5251

5352
## Samples
5453

55-
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.
54+
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.
5655

57-
To try out the ForgeRock JavaScript SDK please look at one of our samples:
56+
To try out the Ping SDK for JavaScript please look at one of our samples:
5857

5958
- [**Embedded login - `samples/embedded-login`**](https://github.com/ForgeRock/sdk-sample-apps/blob/main/embedded-login/README.md)
6059

@@ -69,27 +68,27 @@ To try out the ForgeRock JavaScript SDK please look at one of our samples:
6968

7069
## Documentation
7170

72-
Documentation for the SDKs is provided at **<https://sdks.forgerock.com>**, and includes topics such as:
71+
Documentation for the SDKs is provided at **<https://docs.pingidentity.com/sdks>**, and includes topics such as:
7372

7473
- Introducing the SDK Features
75-
- Preparing AM for use with the SDKS
74+
- Preparing your server for use with the SDKS
7675
- API Reference documentation
7776

7877
<!------------------------------------------------------------------------------------------------------------------------------------>
7978
<!-- SUPPORT -->
8079

8180
## Support
8281

83-
If you encounter any issues, be sure to check our **[Troubleshooting](https://backstage.forgerock.com/knowledge/kb/article/a83789945)** pages.
82+
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.
8483

8584
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):
8685

8786
- Suspected bugs or problems with ForgeRock software.
88-
- Requests for assistance - please look at the **[Documentation](https://sdks.forgerock.com)** and **[Knowledge Base](https://backstage.forgerock.com/knowledge/kb/home/g32324668)** first.
87+
- Requests for assistance - please look at the **[Documentation](https://docs.pingidentity.com/sdks)** and **[Knowledge Base](https://support.pingidentity.com/s/knowledge-base)** first.
8988

90-
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.
89+
You can raise a ticket using the **[Ping Identity Support Portal](https://support.pingidentity.com/s/)** that provides one stop access to support services.
9190

92-
BackStage shows all currently open support tickets and allows you to raise a new one by clicking **New Ticket**.
91+
The support portal shows all currently open support tickets and allows you to raise a new one by clicking **New Ticket**.
9392

9493
## Version History
9594

@@ -102,16 +101,15 @@ BackStage shows all currently open support tickets and allows you to raise a new
102101

103102
If you would like to contribute to this project you can fork the repository, clone it to your machine and get started.
104103

105-
<!-- Note: Found elsewhere, but is Java-only //-->
106-
107-
Be sure to check out our [Coding Style and Guidelines](https://wikis.forgerock.org/confluence/display/devcom/Coding+Style+and+Guidelines) page.
108-
109104
<!------------------------------------------------------------------------------------------------------------------------------------>
110105
<!-- LEGAL -->
111106

112107
## Disclaimer
113108

114-
> **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.**
109+
> **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.
110+
> 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.
111+
> 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.
112+
> 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.**
115113
116114
<!------------------------------------------------------------------------------------------------------------------------------------>
117115
<!-- LICENSE - Links to the MIT LICENSE file in each repo. -->
@@ -122,6 +120,4 @@ This project is licensed under the MIT License - see the [LICENSE](./packages/ja
122120

123121
---
124122

125-
&copy; Copyright 2020 ForgeRock AS. All Rights Reserved.
126-
127-
[forgerock-logo]: https://www.forgerock.com/themes/custom/forgerock/images/fr-logo-horz-color.svg 'ForgeRock Logo'
123+
&copy; Copyright 2020-2025 Ping Identity. All Rights Reserved

contributing_docs/git.md

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
# Git
2+
3+
## Standards
4+
5+
We use standard conventional commits for committing to the repository. Your commits will run through a linting process to make sure they are standard.
6+
7+
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.
8+
9+
## Commit Format
10+
11+
Commits should be formatted like so
12+
13+
```bash
14+
<type>(<scope>): <short summary>
15+
<BLANK LINE>
16+
<body>
17+
<BLANK LINE>
18+
<footer>
19+
```
20+
21+
## Scopes
22+
23+
If your commit is to a specific package, you can include a `scope` in your commit.
24+
This is done as shown above, after the `type` of commit per the Conventional
25+
Commit Standards

contributing_docs/releases.md

Lines changed: 97 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,97 @@
1+
# Releases
2+
3+
We use changesets to handle publishing of all packages in the repository.
4+
Please see the changesets repository for documentation on how to use
5+
changesets. Below will be a brief summary.
6+
7+
## Adding a changeset
8+
9+
You can run `pnpm changeset` in order to add a changeset. You then
10+
can navigate the UI that it provides.
11+
12+
If you do not add a changeset, this means the code you are trying to merge will _not_:
13+
14+
- Be included in the `changelog` when releases are done.
15+
- trigger the opening of a `Release PR` if one is not open
16+
17+
Be very aware of the type of changeset you are adding, if you want to trigger a
18+
"patch" release, please make sure you are committing a PR with a `patch` changesets.
19+
20+
Changesets are mutable, so you can edit changesets afterwards if need be.
21+
22+
Nothing will be released until the `Release PR` is merged.
23+
24+
## Versioning
25+
26+
Versioning is handled automatically by `changesets` in the CI pipeline.
27+
28+
If you have a feature branch open against `develop`, when your feature,
29+
is merged, `changesets` will open a `PR` from `changesets-release/master`
30+
against `master`.
31+
32+
In this PR, you should be able to see the following:
33+
34+
- the packages that will be released
35+
- the versions that are being updated
36+
- all of the code that has been merged between the last release on
37+
`master` and current time.
38+
39+
## Adding a package to the repository
40+
41+
If you are adding a new package to the repository, you should _ALWAYS_ mark the package
42+
as `private` in the package.json. This will mean that the package _will not_ be published
43+
to `npm` during releases.
44+
45+
When the package is officially ready for release, you should delete
46+
the `private: true` from the `{projectRoot}/package.json`.
47+
48+
The package will still be versioned, if changesets are added to the repository.
49+
It just won't be released.
50+
51+
If you are adding a package that _should_ never be released, you can modify the `ignore`
52+
field in the `.changetsets/config.json`. Doing this will mean `changesets` will
53+
never ask if you are adding a `changeset` for this package (when running `pnpm changeset`).
54+
This is common for `e2e` related applications. We don't version or care
55+
about publishing them. You will see in the `.changesets/config.json` these are listed
56+
in the `ignore` field, and they will all have `private:true` in the package.json
57+
58+
## First time releasing a package
59+
60+
If your package is ready to be released, and has never been released before,
61+
(the package.json `name` field does not exist on `npm`), then it is critical that
62+
your `{packageRoot}/package.json` has the following:
63+
64+
```
65+
"publishConfig": {
66+
"access": true
67+
}
68+
```
69+
70+
If your package does not contain this information, your package publishing **WILL**
71+
break the publish pipeline.
72+
73+
This is because all packages in this repository are published with `npm provenance`.
74+
You can read about the requirements [here](https://docs.npmjs.com/generating-provenance-statements#prerequisites).
75+
76+
## Testing a package publish
77+
78+
In order to test a package publish, you should use `verdaccio`.
79+
80+
We provide verdaccio two ways:
81+
82+
- `pnpm nx run local-registry`. This command will spawn a private npm registry.
83+
It also _should_ update your local `.npmrc` file to point here.
84+
85+
You can then publish your package like so:
86+
87+
```bash
88+
pnpm publish packages/{your_package} --dry-run --registry=http://localhost:4873
89+
```
90+
91+
Notes: - I am including the `dry-run` flag here so if you copy paste it,
92+
you will "dry-run" the publish. - I also like to add the `registry` flag, as a secondary check to
93+
make sure i publish to this registry. - The `-r` flag is necessary if your package requires other workspace packages
94+
to be published. This command runs `publish` recursively via pnpm's
95+
topological graph.
96+
97+
- Publishing to a hosted private registry: Please message @ryanbas21 on slack.

e2e/autoscript-apps/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,8 +5,8 @@
55
"type": "module",
66
"dependencies": {
77
"@forgerock/javascript-sdk": "workspace:*",
8-
"@forgerock/device-client": "workspace:*",
98
"@forgerock/ping-protect": "workspace:*",
9+
"@reduxjs/toolkit": "catalog:",
1010
"rxjs": "^7.4.0"
1111
},
1212
"description": "apps for e2e on js sdk",

0 commit comments

Comments
 (0)