added prettier to repo

This commit is contained in:
Jordan Violet
2022-11-27 23:31:36 -05:00
parent e001042deb
commit 86e3bc602b
85 changed files with 1418 additions and 968 deletions

View File

@@ -2,9 +2,8 @@
name: Feature Request
about: Suggest an idea for this project.
title: "[Feature] Your Feature Request Here"
labels: ''
assignees: ''
labels: ""
assignees: ""
---
**Is your feature request related to a problem? Please describe.**

View File

@@ -5,8 +5,7 @@ name: Deploy to Firebase Hosting on PR
"on": pull_request
jobs:
build_and_preview:
if:
"${{ github.event.pull_request.head.repo.full_name == github.repository }}"
if: "${{ github.event.pull_request.head.repo.full_name == github.repository }}"
runs-on: ubuntu-latest
env:
NODE_ENV: "development"
@@ -16,6 +15,5 @@ jobs:
- uses: FirebaseExtended/action-hosting-deploy@v0
with:
repoToken: "${{ secrets.GITHUB_TOKEN }}"
firebaseServiceAccount:
"${{ secrets.FIREBASE_SERVICE_ACCOUNT_DEVELOPER_COMMUNITY_SITE }}"
firebaseServiceAccount: "${{ secrets.FIREBASE_SERVICE_ACCOUNT_DEVELOPER_COMMUNITY_SITE }}"
projectId: developer-community-site

21
.prettierignore Normal file
View File

@@ -0,0 +1,21 @@
# Default
node_modules
build
coverage
.pcakage-lock.json
*.min.*
# Auto-generated Docs
/products/arm/api
/products/idn/api/v3
/products/idn/api/beta
/products/iiq/api
# Logs
*.log*
# Docusaurus
.docusaurus
# API Specs
/static/api-specs

1
.prettierrc.json Normal file
View File

@@ -0,0 +1 @@
{}

View File

@@ -17,23 +17,23 @@ diverse, inclusive, and healthy community.
Examples of behavior that contributes to a positive environment for our
community include:
* Demonstrating empathy and kindness toward other people
* Being respectful of differing opinions, viewpoints, and experiences
* Giving and gracefully accepting constructive feedback
* Accepting responsibility and apologizing to those affected by our mistakes,
- Demonstrating empathy and kindness toward other people
- Being respectful of differing opinions, viewpoints, and experiences
- Giving and gracefully accepting constructive feedback
- Accepting responsibility and apologizing to those affected by our mistakes,
and learning from the experience
* Focusing on what is best not just for us as individuals, but for the
- Focusing on what is best not just for us as individuals, but for the
overall community
Examples of unacceptable behavior include:
* The use of sexualized language or imagery, and sexual attention or
- The use of sexualized language or imagery, and sexual attention or
advances of any kind
* Trolling, insulting or derogatory comments, and personal or political attacks
* Public or private harassment
* Publishing others' private information, such as a physical or email
- Trolling, insulting or derogatory comments, and personal or political attacks
- Public or private harassment
- Publishing others' private information, such as a physical or email
address, without their explicit permission
* Other conduct which could reasonably be considered inappropriate in a
- Other conduct which could reasonably be considered inappropriate in a
professional setting
## Enforcement Responsibilities

View File

@@ -4,15 +4,11 @@
![Latest Releases][release-shield] ![Contributor Shield][contributor-shield]
[![Deploy to Production](https://github.com/sailpoint-oss/developer.sailpoint.com/actions/workflows/build-and-deploy-prod-gh-pages.yml/badge.svg)](https://github.com/sailpoint-oss/developer.sailpoint.com/actions/workflows/build-and-deploy-prod-gh-pages.yml)
[discourse-shield]:
https://img.shields.io/discourse/topics?label=Discuss%20This%20Tool&server=https%3A%2F%2Fdeveloper.sailpoint.com%2Fdiscuss
[discourse-shield]: https://img.shields.io/discourse/topics?label=Discuss%20This%20Tool&server=https%3A%2F%2Fdeveloper.sailpoint.com%2Fdiscuss
[discourse-url]: https://developer.sailpoint.com/discuss/
[issues-shield]:
https://img.shields.io/github/issues/sailpoint-oss/developer.sailpoint.com?label=Issues
[release-shield]:
https://img.shields.io/github/v/release/sailpoint-oss/developer.sailpoint.com?label=Current%20Release
[contributor-shield]:
https://img.shields.io/github/contributors/sailpoint-oss/developer.sailpoint.com?label=Contributors
[issues-shield]: https://img.shields.io/github/issues/sailpoint-oss/developer.sailpoint.com?label=Issues
[release-shield]: https://img.shields.io/github/v/release/sailpoint-oss/developer.sailpoint.com?label=Current%20Release
[contributor-shield]: https://img.shields.io/github/contributors/sailpoint-oss/developer.sailpoint.com?label=Contributors
<!-- PROJECT LOGO -->
<br />

View File

@@ -26,8 +26,6 @@
"tags": ["IDN Documentation"]
},
{
"url": "https://developer.sailpoint.com/idn/api/getting-started",
"selectors_key": "api_v3",
@@ -49,8 +47,6 @@
"tags": ["IDN API Documenation"]
},
{
"url": "https://developer.sailpoint.com/idn/api/v3",
"selectors_key": "api_v3",
@@ -68,14 +64,12 @@
}
],
"js_render": false,
"sitemap_urls": [
"https://developer.sailpoint.com/sitemap.xml"
],
"sitemap_urls": ["https://developer.sailpoint.com/sitemap.xml"],
"sitemap_alternate_links": true,
"stop_urls": [],
"selectors": {
"default" : {
"lvl0" : {
"default": {
"lvl0": {
"selector": "(//ul[contains(@class,'menu__list')]//a[contains(@class, 'menu__link menu__link--sublist menu__link--active')]/text() | //nav[contains(@class, 'navbar')]//a[contains(@class, 'navbar__link--active')]/text())[1]",
"type": "xpath",
"global": true,
@@ -96,7 +90,7 @@
"text": "article p, article li, article td:last-child"
},
"api_v3": {
"lvl0" : {
"lvl0": {
"selector": "(//ul[contains(@class,'menu__list')]//a[contains(@class, 'menu__link menu__link--sublist menu__link--active')]/text() | //nav[contains(@class, 'navbar')]//a[contains(@class, 'navbar__link--active')]/text())[1]",
"type": "xpath",
"global": true,
@@ -116,7 +110,7 @@
"text": "article p, article li, article td:last-child"
},
"api_iiq": {
"lvl0" : {
"lvl0": {
"selector": "(//ul[contains(@class,'menu__list')]//a[contains(@class, 'menu__link menu__link--sublist menu__link--active')]/text() | //nav[contains(@class, 'navbar')]//a[contains(@class, 'navbar__link--active')]/text())[1]",
"type": "xpath",
"global": true,
@@ -135,8 +129,6 @@
"lvl6": "article h6",
"text": "article p, article li, article td:last-child"
}
},
"strip_chars": " .,;:#",
"custom_settings": {
@@ -158,8 +150,6 @@
"type"
]
},
"conversation_id": [
"1090805758"
],
"conversation_id": ["1090805758"],
"nb_hits": 8687
}

View File

@@ -26,8 +26,6 @@
"tags": ["IDN Documentation"]
},
{
"url": "https://developer.sailpoint.com/idn/api/getting-started",
"selectors_key": "api_v3",
@@ -49,8 +47,6 @@
"tags": ["IDN API Documenation"]
},
{
"url": "https://developer.sailpoint.com/idn/api/v3",
"selectors_key": "api_v3",
@@ -68,14 +64,12 @@
}
],
"js_render": false,
"sitemap_urls": [
"https://developer.sailpoint.com/sitemap.xml"
],
"sitemap_urls": ["https://developer.sailpoint.com/sitemap.xml"],
"sitemap_alternate_links": true,
"stop_urls": [],
"selectors": {
"default" : {
"lvl0" : {
"default": {
"lvl0": {
"selector": "(//ul[contains(@class,'menu__list')]//a[contains(@class, 'menu__link menu__link--sublist menu__link--active')]/text() | //nav[contains(@class, 'navbar')]//a[contains(@class, 'navbar__link--active')]/text())[1]",
"type": "xpath",
"global": true,
@@ -96,7 +90,7 @@
"text": "article p, article li, article td:last-child"
},
"api_v3": {
"lvl0" : {
"lvl0": {
"selector": "(//ul[contains(@class,'menu__list')]//a[contains(@class, 'menu__link menu__link--sublist menu__link--active')]/text() | //nav[contains(@class, 'navbar')]//a[contains(@class, 'navbar__link--active')]/text())[1]",
"type": "xpath",
"global": true,
@@ -116,7 +110,7 @@
"text": "article p, article li, article td:last-child"
},
"api_iiq": {
"lvl0" : {
"lvl0": {
"selector": "(//ul[contains(@class,'menu__list')]//a[contains(@class, 'menu__link menu__link--sublist menu__link--active')]/text() | //nav[contains(@class, 'navbar')]//a[contains(@class, 'navbar__link--active')]/text())[1]",
"type": "xpath",
"global": true,
@@ -135,8 +129,6 @@
"lvl6": "article h6",
"text": "article p, article li, article td:last-child"
}
},
"strip_chars": " .,;:#",
"custom_settings": {
@@ -158,8 +150,6 @@
"type"
]
},
"conversation_id": [
"1090805758"
],
"conversation_id": ["1090805758"],
"nb_hits": 8687
}

View File

@@ -1,3 +1,3 @@
module.exports = {
presets: [require.resolve('@docusaurus/core/lib/babel/preset')],
presets: [require.resolve("@docusaurus/core/lib/babel/preset")],
};

View File

@@ -1,12 +0,0 @@
---
slug: first-blog-post
title: First Blog Post
authors:
name: Gao Wei
title: Docusaurus Core Team
url: https://github.com/wgao19
image_url: https://github.com/wgao19.png
tags: [hola, docusaurus]
---
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet

View File

@@ -1,44 +0,0 @@
---
slug: long-blog-post
title: Long Blog Post
authors: endi
tags: [hello, docusaurus]
---
This is the summary of a very long blog post,
Use a `<!--` `truncate` `-->` comment to limit blog post size in the list view.
<!--truncate-->
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet

View File

@@ -1,20 +0,0 @@
---
slug: mdx-blog-post
title: MDX Blog Post
authors: [slorber]
tags: [docusaurus]
---
Blog posts support [Docusaurus Markdown features](https://docusaurus.io/docs/markdown-features), such as [MDX](https://mdxjs.com/).
:::tip
Use the power of React to create interactive blog posts.
```js
<button onClick={() => alert('button clicked!')}>Click me!</button>
```
<button onClick={() => alert('button clicked!')}>Click me!</button>
:::

Binary file not shown.

Before

Width:  |  Height:  |  Size: 94 KiB

View File

@@ -1,25 +0,0 @@
---
slug: welcome
title: Welcome
authors: [slorber, yangshun]
tags: [facebook, hello, docusaurus]
---
[Docusaurus blogging features](https://docusaurus.io/docs/blog) are powered by the [blog plugin](https://docusaurus.io/docs/api/plugins/@docusaurus/plugin-content-blog).
Simply add Markdown files (or folders) to the `blog` directory.
Regular blog authors can be added to `authors.yml`.
The blog post date can be extracted from filenames, such as:
- `2019-05-30-welcome.md`
- `2019-05-30-welcome/index.md`
A blog post folder can be convenient to co-locate blog post images:
![Docusaurus Plushie](./docusaurus-plushie-banner.jpeg)
The blog supports tags as well!
**And if you don't want a blog**: just delete this directory, and use `blog: false` in your Docusaurus config.

View File

@@ -1,17 +0,0 @@
endi:
name: Endilie Yacop Sucipto
title: Maintainer of Docusaurus
url: https://github.com/endiliey
image_url: https://github.com/endiliey.png
yangshun:
name: Yangshun Tay
title: Front End Engineer @ Facebook
url: https://github.com/yangshun
image_url: https://github.com/yangshun.png
slorber:
name: Sébastien Lorber
title: Docusaurus maintainer
url: https://sebastienlorber.com
image_url: https://github.com/slorber.png

View File

@@ -1,10 +1,6 @@
{
"hosting": {
"public": "build",
"ignore": [
"firebase.json",
"**/.*",
"**/node_modules/**"
]
"ignore": ["firebase.json", "**/.*", "**/node_modules/**"]
}
}

302
package-lock.json generated
View File

@@ -22,7 +22,10 @@
"@docusaurus/core": "^2.2.0",
"@docusaurus/module-type-aliases": "^2.2.0",
"@docusaurus/plugin-google-gtag": "^2.2.0",
"@docusaurus/preset-classic": "^2.2.0"
"@docusaurus/preset-classic": "^2.2.0",
"husky": "^8.0.2",
"prettier": "2.8.0",
"pretty-quick": "^3.1.3"
},
"engines": {
"node": ">=16.14"
@@ -3253,6 +3256,12 @@
"version": "3.0.1",
"license": "MIT"
},
"node_modules/@types/minimatch": {
"version": "3.0.5",
"resolved": "https://registry.npmjs.org/@types/minimatch/-/minimatch-3.0.5.tgz",
"integrity": "sha512-Klz949h02Gz2uZCMGwDUSDS1YBlTdDDgbWHi+81l29tQALUtvz4rAYi5uoVhE5Lagoq6DeqAUlbrHvW/mXDgdQ==",
"dev": true
},
"node_modules/@types/ms": {
"version": "0.7.31",
"license": "MIT"
@@ -3690,6 +3699,15 @@
"version": "2.0.1",
"license": "Python-2.0"
},
"node_modules/array-differ": {
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/array-differ/-/array-differ-3.0.0.tgz",
"integrity": "sha512-THtfYS6KtME/yIAhKjZ2ul7XI96lQGHRputJQHO80LAWQnuGP4iCIN8vdMRboGbIEYBwU33q8Tch1os2+X0kMg==",
"dev": true,
"engines": {
"node": ">=8"
}
},
"node_modules/array-flatten": {
"version": "2.1.2",
"license": "MIT"
@@ -3701,6 +3719,15 @@
"node": ">=8"
}
},
"node_modules/arrify": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/arrify/-/arrify-2.0.1.tgz",
"integrity": "sha512-3duEwti880xqi4eAMN8AyR4a0ByT90zoYdLlevfrvU43vb0YZwZVfxOgxWrLXXXpyugL0hNZc9G6BiB5B3nUug==",
"dev": true,
"engines": {
"node": ">=8"
}
},
"node_modules/asap": {
"version": "2.0.6",
"license": "MIT"
@@ -7615,6 +7642,21 @@
"node": ">=10.17.0"
}
},
"node_modules/husky": {
"version": "8.0.2",
"resolved": "https://registry.npmjs.org/husky/-/husky-8.0.2.tgz",
"integrity": "sha512-Tkv80jtvbnkK3mYWxPZePGFpQ/tT3HNSs/sasF9P2YfkMezDl3ON37YN6jUUI4eTg5LcyVynlb6r4eyvOmspvg==",
"dev": true,
"bin": {
"husky": "lib/bin.js"
},
"engines": {
"node": ">=14"
},
"funding": {
"url": "https://github.com/sponsors/typicode"
}
},
"node_modules/iconv-lite": {
"version": "0.6.3",
"license": "MIT",
@@ -9141,6 +9183,44 @@
"multicast-dns": "cli.js"
}
},
"node_modules/multimatch": {
"version": "4.0.0",
"resolved": "https://registry.npmjs.org/multimatch/-/multimatch-4.0.0.tgz",
"integrity": "sha512-lDmx79y1z6i7RNx0ZGCPq1bzJ6ZoDDKbvh7jxr9SJcWLkShMzXrHbYVpTdnhNM5MXpDUxCQ4DgqVttVXlBgiBQ==",
"dev": true,
"dependencies": {
"@types/minimatch": "^3.0.3",
"array-differ": "^3.0.0",
"array-union": "^2.1.0",
"arrify": "^2.0.1",
"minimatch": "^3.0.4"
},
"engines": {
"node": ">=8"
}
},
"node_modules/multimatch/node_modules/brace-expansion": {
"version": "1.1.11",
"resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
"integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==",
"dev": true,
"dependencies": {
"balanced-match": "^1.0.0",
"concat-map": "0.0.1"
}
},
"node_modules/multimatch/node_modules/minimatch": {
"version": "3.1.2",
"resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz",
"integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==",
"dev": true,
"dependencies": {
"brace-expansion": "^1.1.7"
},
"engines": {
"node": "*"
}
},
"node_modules/mustache": {
"version": "4.2.0",
"license": "MIT",
@@ -10399,6 +10479,21 @@
"node": ">=4"
}
},
"node_modules/prettier": {
"version": "2.8.0",
"resolved": "https://registry.npmjs.org/prettier/-/prettier-2.8.0.tgz",
"integrity": "sha512-9Lmg8hTFZKG0Asr/kW9Bp8tJjRVluO8EJQVfY2T7FMw9T5jy4I/Uvx0Rca/XWf50QQ1/SS48+6IJWnrb+2yemA==",
"dev": true,
"bin": {
"prettier": "bin-prettier.js"
},
"engines": {
"node": ">=10.13.0"
},
"funding": {
"url": "https://github.com/prettier/prettier?sponsor=1"
}
},
"node_modules/pretty-error": {
"version": "4.0.0",
"license": "MIT",
@@ -10407,6 +10502,89 @@
"renderkid": "^3.0.0"
}
},
"node_modules/pretty-quick": {
"version": "3.1.3",
"resolved": "https://registry.npmjs.org/pretty-quick/-/pretty-quick-3.1.3.tgz",
"integrity": "sha512-kOCi2FJabvuh1as9enxYmrnBC6tVMoVOenMaBqRfsvBHB0cbpYHjdQEpSglpASDFEXVwplpcGR4CLEaisYAFcA==",
"dev": true,
"dependencies": {
"chalk": "^3.0.0",
"execa": "^4.0.0",
"find-up": "^4.1.0",
"ignore": "^5.1.4",
"mri": "^1.1.5",
"multimatch": "^4.0.0"
},
"bin": {
"pretty-quick": "bin/pretty-quick.js"
},
"engines": {
"node": ">=10.13"
},
"peerDependencies": {
"prettier": ">=2.0.0"
}
},
"node_modules/pretty-quick/node_modules/chalk": {
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz",
"integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==",
"dev": true,
"dependencies": {
"ansi-styles": "^4.1.0",
"supports-color": "^7.1.0"
},
"engines": {
"node": ">=8"
}
},
"node_modules/pretty-quick/node_modules/execa": {
"version": "4.1.0",
"resolved": "https://registry.npmjs.org/execa/-/execa-4.1.0.tgz",
"integrity": "sha512-j5W0//W7f8UxAn8hXVnwG8tLwdiUy4FJLcSupCg6maBYZDpyBvTApK7KyuI4bKj8KOh1r2YH+6ucuYtJv1bTZA==",
"dev": true,
"dependencies": {
"cross-spawn": "^7.0.0",
"get-stream": "^5.0.0",
"human-signals": "^1.1.1",
"is-stream": "^2.0.0",
"merge-stream": "^2.0.0",
"npm-run-path": "^4.0.0",
"onetime": "^5.1.0",
"signal-exit": "^3.0.2",
"strip-final-newline": "^2.0.0"
},
"engines": {
"node": ">=10"
},
"funding": {
"url": "https://github.com/sindresorhus/execa?sponsor=1"
}
},
"node_modules/pretty-quick/node_modules/get-stream": {
"version": "5.2.0",
"resolved": "https://registry.npmjs.org/get-stream/-/get-stream-5.2.0.tgz",
"integrity": "sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==",
"dev": true,
"dependencies": {
"pump": "^3.0.0"
},
"engines": {
"node": ">=8"
},
"funding": {
"url": "https://github.com/sponsors/sindresorhus"
}
},
"node_modules/pretty-quick/node_modules/human-signals": {
"version": "1.1.1",
"resolved": "https://registry.npmjs.org/human-signals/-/human-signals-1.1.1.tgz",
"integrity": "sha512-SEQu7vl8KjNL2eoGBLF3+wAjpsNfA9XMlXAYj/3EdaNfAlxKthD1xjEQfGOUhllCGGJVNY34bRr6lPINhNjyZw==",
"dev": true,
"engines": {
"node": ">=8.12.0"
}
},
"node_modules/pretty-time": {
"version": "1.1.0",
"license": "MIT",
@@ -16809,6 +16987,12 @@
"@types/mime": {
"version": "3.0.1"
},
"@types/minimatch": {
"version": "3.0.5",
"resolved": "https://registry.npmjs.org/@types/minimatch/-/minimatch-3.0.5.tgz",
"integrity": "sha512-Klz949h02Gz2uZCMGwDUSDS1YBlTdDDgbWHi+81l29tQALUtvz4rAYi5uoVhE5Lagoq6DeqAUlbrHvW/mXDgdQ==",
"dev": true
},
"@types/ms": {
"version": "0.7.31"
},
@@ -17135,12 +17319,24 @@
"argparse": {
"version": "2.0.1"
},
"array-differ": {
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/array-differ/-/array-differ-3.0.0.tgz",
"integrity": "sha512-THtfYS6KtME/yIAhKjZ2ul7XI96lQGHRputJQHO80LAWQnuGP4iCIN8vdMRboGbIEYBwU33q8Tch1os2+X0kMg==",
"dev": true
},
"array-flatten": {
"version": "2.1.2"
},
"array-union": {
"version": "2.1.0"
},
"arrify": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/arrify/-/arrify-2.0.1.tgz",
"integrity": "sha512-3duEwti880xqi4eAMN8AyR4a0ByT90zoYdLlevfrvU43vb0YZwZVfxOgxWrLXXXpyugL0hNZc9G6BiB5B3nUug==",
"dev": true
},
"asap": {
"version": "2.0.6"
},
@@ -19574,6 +19770,12 @@
"human-signals": {
"version": "2.1.0"
},
"husky": {
"version": "8.0.2",
"resolved": "https://registry.npmjs.org/husky/-/husky-8.0.2.tgz",
"integrity": "sha512-Tkv80jtvbnkK3mYWxPZePGFpQ/tT3HNSs/sasF9P2YfkMezDl3ON37YN6jUUI4eTg5LcyVynlb6r4eyvOmspvg==",
"dev": true
},
"iconv-lite": {
"version": "0.6.3",
"requires": {
@@ -20371,6 +20573,40 @@
"thunky": "^1.0.2"
}
},
"multimatch": {
"version": "4.0.0",
"resolved": "https://registry.npmjs.org/multimatch/-/multimatch-4.0.0.tgz",
"integrity": "sha512-lDmx79y1z6i7RNx0ZGCPq1bzJ6ZoDDKbvh7jxr9SJcWLkShMzXrHbYVpTdnhNM5MXpDUxCQ4DgqVttVXlBgiBQ==",
"dev": true,
"requires": {
"@types/minimatch": "^3.0.3",
"array-differ": "^3.0.0",
"array-union": "^2.1.0",
"arrify": "^2.0.1",
"minimatch": "^3.0.4"
},
"dependencies": {
"brace-expansion": {
"version": "1.1.11",
"resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
"integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==",
"dev": true,
"requires": {
"balanced-match": "^1.0.0",
"concat-map": "0.0.1"
}
},
"minimatch": {
"version": "3.1.2",
"resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz",
"integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==",
"dev": true,
"requires": {
"brace-expansion": "^1.1.7"
}
}
}
},
"mustache": {
"version": "4.2.0"
},
@@ -21058,6 +21294,12 @@
"prepend-http": {
"version": "2.0.0"
},
"prettier": {
"version": "2.8.0",
"resolved": "https://registry.npmjs.org/prettier/-/prettier-2.8.0.tgz",
"integrity": "sha512-9Lmg8hTFZKG0Asr/kW9Bp8tJjRVluO8EJQVfY2T7FMw9T5jy4I/Uvx0Rca/XWf50QQ1/SS48+6IJWnrb+2yemA==",
"dev": true
},
"pretty-error": {
"version": "4.0.0",
"requires": {
@@ -21065,6 +21307,64 @@
"renderkid": "^3.0.0"
}
},
"pretty-quick": {
"version": "3.1.3",
"resolved": "https://registry.npmjs.org/pretty-quick/-/pretty-quick-3.1.3.tgz",
"integrity": "sha512-kOCi2FJabvuh1as9enxYmrnBC6tVMoVOenMaBqRfsvBHB0cbpYHjdQEpSglpASDFEXVwplpcGR4CLEaisYAFcA==",
"dev": true,
"requires": {
"chalk": "^3.0.0",
"execa": "^4.0.0",
"find-up": "^4.1.0",
"ignore": "^5.1.4",
"mri": "^1.1.5",
"multimatch": "^4.0.0"
},
"dependencies": {
"chalk": {
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz",
"integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==",
"dev": true,
"requires": {
"ansi-styles": "^4.1.0",
"supports-color": "^7.1.0"
}
},
"execa": {
"version": "4.1.0",
"resolved": "https://registry.npmjs.org/execa/-/execa-4.1.0.tgz",
"integrity": "sha512-j5W0//W7f8UxAn8hXVnwG8tLwdiUy4FJLcSupCg6maBYZDpyBvTApK7KyuI4bKj8KOh1r2YH+6ucuYtJv1bTZA==",
"dev": true,
"requires": {
"cross-spawn": "^7.0.0",
"get-stream": "^5.0.0",
"human-signals": "^1.1.1",
"is-stream": "^2.0.0",
"merge-stream": "^2.0.0",
"npm-run-path": "^4.0.0",
"onetime": "^5.1.0",
"signal-exit": "^3.0.2",
"strip-final-newline": "^2.0.0"
}
},
"get-stream": {
"version": "5.2.0",
"resolved": "https://registry.npmjs.org/get-stream/-/get-stream-5.2.0.tgz",
"integrity": "sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==",
"dev": true,
"requires": {
"pump": "^3.0.0"
}
},
"human-signals": {
"version": "1.1.1",
"resolved": "https://registry.npmjs.org/human-signals/-/human-signals-1.1.1.tgz",
"integrity": "sha512-SEQu7vl8KjNL2eoGBLF3+wAjpsNfA9XMlXAYj/3EdaNfAlxKthD1xjEQfGOUhllCGGJVNY34bRr6lPINhNjyZw==",
"dev": true
}
}
},
"pretty-time": {
"version": "1.1.0"
},

View File

@@ -38,7 +38,10 @@
"@docusaurus/core": "^2.2.0",
"@docusaurus/module-type-aliases": "^2.2.0",
"@docusaurus/plugin-google-gtag": "^2.2.0",
"@docusaurus/preset-classic": "^2.2.0"
"@docusaurus/preset-classic": "^2.2.0",
"husky": "^8.0.2",
"prettier": "2.8.0",
"pretty-quick": "^3.1.3"
},
"browserslist": {
"production": [
@@ -54,5 +57,10 @@
},
"engines": {
"node": ">=16.14"
},
"husky": {
"hooks": {
"pre-commit": "pretty-quick --staged"
}
}
}

View File

@@ -117,7 +117,7 @@ subscribing service responds with the following object:
"id": "",
"name": "",
"type": ""
}
}
```
## Additional Information and Links

View File

@@ -6,8 +6,7 @@ sidebar_label: Account Aggregation Completed
sidebar_class_name: accountAggregationCompleted
keywords:
["event", "trigger", "account", "aggregation", "completed", "available"]
description:
Fires after an account aggregation completed, terminated, or failed.
description: Fires after an account aggregation completed, terminated, or failed.
slug: /docs/event-triggers/triggers/account-aggregation-completed
tags: ["Event Triggers", "Available Event Triggers", "Fire and Forget"]
---

View File

@@ -40,7 +40,7 @@ You would typically use this rule when you are creating an account to generate a
## Output
| Argument | Type | Purpose |
| -------- | ---------------- | ---------------------------------------- |
| -------- | ---------------- | ----------------------------------------- |
| value | java.lang.Object | Value returned for the account attribute. |
## Template

View File

@@ -42,7 +42,7 @@ You would typically use this rule when you are creating an account to generate a
## Output
| Argument | Type | Purpose |
| -------- | ---------------- | ---------------------------------------- |
| -------- | ---------------- | ----------------------------------------- |
| value | java.lang.Object | Value returned for the account attribute. |
## Template

View File

@@ -37,7 +37,7 @@ This rule associates or correlates an account to an identity, based on complex l
## Output
| Argument | Type | Purpose |
| --------- | ------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| --------- | ------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| returnMap | java.util.Map | Map object containing a reference to the identity attributes to correlate to. These should contain both `identityAttributeName` and `identityAttributeValue` as keys. |
## Template

View File

@@ -34,7 +34,7 @@ This rule performs transforms.
## Output
| Argument | Type | Purpose |
| -------- | ---------------- | ------------------------------------------------------------ |
| -------- | ---------------- | ------------------------------------------------------------- |
| value | java.lang.Object | Value returned for the account attribute, typically a string. |
## Template

View File

@@ -41,7 +41,7 @@ This rule is also known as a "complex" rule on the identity profile.
## Output
| Argument | Type | Purpose |
| -------------- | ---------------- | ----------------------------------------- |
| -------------- | ---------------- | ------------------------------------------ |
| attributeValue | java.lang.Object | Value returned for the identity attribute. |
## Template

View File

@@ -5,8 +5,7 @@ pagination_label: Manager Correlation Rule
sidebar_label: Manager Correlation Rule
sidebar_class_name: managerCorrelationRule
keywords: ["cloud", "rules", "manager correlation"]
description:
This rule calculates a manager relationship between identities.
description: This rule calculates a manager relationship between identities.
slug: /docs/rules/cloud-rules/manager-correlation-rule
tags: ["Rules"]
---
@@ -37,7 +36,7 @@ This rule calculates a manager relationship between identities.
## Output
| Argument | Type | Purpose |
| --------- | ------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| --------- | ------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| returnMap | java.util.Map | Map object containing a reference to the identity attributes to identify the manager's identity. These should contain both `identityAttributeName` and `identityAttributeValue` as keys. |
## Template

View File

@@ -5,8 +5,7 @@ pagination_label: Before and After Operations
sidebar_label: Before and After Rule Operations
sidebar_class_name: beforeAndAfterRuleOperations
keywords: ["cloud", "rules"]
description:
This rule executes PowerShell commands on the IQService component
description: This rule executes PowerShell commands on the IQService component
after a source account has an operation performed on it.
slug: /docs/rules/connector-rules/before-and-after-rule-operations
tags: ["Rules"]
@@ -42,7 +41,7 @@ The following operations can be performed on a source:
## Input
| Argument | Type | Purpose |
| ----------- | -------------------------------------- | ------------------------------------------------------------------------- |
| ----------- | -------------------------------------- | -------------------------------------------------------------------------- |
| Application | System.Collections.Hashtable | Map of the application configuration. |
| Request | SailPoint.Utils.objects.AccountRequest | Reference to the account request provisioning instructions. |
| Result | SailPoint.Utils.objects.ServiceResult | Reference to the provisioning result that can be manipulated if necessary. |

View File

@@ -5,8 +5,7 @@ pagination_label: BuildMap Rule
sidebar_label: BuildMap Rule
sidebar_class_name: buildMapRule
keywords: ["cloud", "rules"]
description:
This rule manipulates raw input data provided by the
description: This rule manipulates raw input data provided by the
rows and columns in a file and builds a map from the incoming data.
slug: /docs/rules/connector-rules/buildmap-rule
tags: ["Rules"]
@@ -31,7 +30,7 @@ This rule manipulates raw input data provided by the rows and columns in a file
## Input
| Argument | Type | Purpose |
| ----------- | ---------------------------- | ---------------------------------------------------------------------------------------------- |
| ----------- | ---------------------------- | ------------------------------------------------------------------------------------------- |
| col | java.util.List | Ordered list of the column names from the files header records or specified columns list. |
| record | java.util.List | Ordered list of the values for the current record, parsed based on the specified delimiter. |
| application | System.Collections.Hashtable | Map of the application configuration. |

View File

@@ -30,7 +30,7 @@ For more details, see [Configuration Process](#configuration-process).
## Supported Connector Rules
| Rule Name | Rule Type | Source Type(s) | Purpose |
| --------------------------------------------------- | ---------------------------------------------------- | ---------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| -------------------------------------------------------- | --------------------------------------------------------- | ---------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| [Before Creation Rule](./before_after_operation_rule.md) | [ConnectorBeforeCreate](./before_after_operation_rule.md) | Active Directory, Azure Active Directory | Executes PowerShell commands on the IQService component before a source account is created. |
| [Before Modify Rule](./before_after_operation_rule.md) | [ConnectorBeforeModify](./before_after_operation_rule.md) | Active Directory, Azure Active Directory | Executes PowerShell commands on the IQService component before a source account is modified. |
| [Before Delete Rule](./before_after_operation_rule.md) | [ConnectorBeforeDelete](./before_after_operation_rule.md) | Active Directory, Azure Active Directory | Executes PowerShell commands on the IQService component before a source account is deleted. |

View File

@@ -5,8 +5,7 @@ pagination_label: JDBC BuildMap Rule
sidebar_label: JDBC BuildMap Rule
sidebar_class_name: jdbcBuildMapRule
keywords: ["cloud", "rules"]
description:
This rule manipulates raw input data provided by the
description: This rule manipulates raw input data provided by the
rows and columns in a file and builds a map from the incoming data.
slug: /docs/rules/connector-rules/jdbc-buildmap-rule
tags: ["Rules"]
@@ -29,7 +28,7 @@ This rule manipulates raw input data provided by the rows and columns in a file
## Input
| Argument | Type | Purpose |
| ----------- | ---------------------------- | -------------------------------------------------------------------------------------------------------------- |
| ----------- | ---------------------------- | ------------------------------------------------------------------------------------------------------------- |
| result | java.sql.ResultSet | Current ResultSet from the JDBC Connector. |
| connection | java.sql.Connection | Reference to the current SQL connection. |
| state | java.util.Map | Map that can be used to store and share data between executions of this rule during a single aggregation run. |
@@ -39,7 +38,7 @@ This rule manipulates raw input data provided by the rows and columns in a file
## Output
| Argument | Type | Purpose |
| -------- | ------------ | --------------------------------------------------------------------- |
| -------- | ------------ | ---------------------------------------------------------------------- |
| map | java.utl.Map | Map of names/values representing a row of data from the JDBC resource. |
## Template

View File

@@ -5,8 +5,7 @@ pagination_label: JDBC Provision Rule
sidebar_label: JDBC Provision Rule
sidebar_class_name: jdbcProvisionRule
keywords: ["cloud", "rules", "jdbc"]
description:
This rule performs provisioning actions from a provisioning
description: This rule performs provisioning actions from a provisioning
plan provided by a supplied JDBC connection. These actions typically issue SQL commands, such
as insert, update, select, and delete.
slug: /docs/rules/connector-rules/jdbc-provisioning-rule
@@ -31,7 +30,7 @@ These actions typically issue SQL commands, such as insert, update, select, and
## Input
| Argument | Type | Purpose |
| ----------- | --------------------------------- | ------------------------------------------------------------------------- |
| ----------- | --------------------------------- | ------------------------------------------------------------------------ |
| connection | java.sql.Connection | Reference to the current SQL connection. |
| plan | sailpoint.object.ProvisioningPlan | Provisioning plan containing the provisioning request(s). |
| application | sailpoint.object.Application | Attribute value for the identity attribute before the rule runs. |
@@ -40,7 +39,7 @@ These actions typically issue SQL commands, such as insert, update, select, and
## Output
| Argument | Type | Purpose |
| -------- | ----------------------------------- | ----------------------------------------------------------------------------------------------------------- |
| -------- | ----------------------------------- | ------------------------------------------------------------------------------------------------------- |
| result | sailpoint.object.ProvisioningResult | ProvisioningResult object containing the provisioning request's status (success, failure, retry, etc.). |
## Template

View File

@@ -5,8 +5,7 @@ pagination_label: SAP BuildMap Rule
sidebar_label: SAP BuildMap Rule
sidebar_class_name: sapBuildMapRule
keywords: ["cloud", "rules", "sap"]
description:
This rule gathers additional attributes from SAP systems to
description: This rule gathers additional attributes from SAP systems to
build accounts. This rule is implemented using SAP's Java Connector (JCo)
framework provided by a supplied SAP connection.
slug: /docs/rules/connector-rules/sap-buildmap-rule
@@ -31,7 +30,7 @@ This rule is implemented using SAP's Java Connector (JCo) framework provided by
## Input
| Argument | Type | Purpose |
| ----------- | ---------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| ----------- | ---------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| object | sailpoint.object.Attributes | Reference to a SailPoint attributes object (basically a map object with some added convenience methods) that holds the attributes that have been built up by the default connector implementation. The rule should modify this object to change, add, or remove attributes from the map. |
| connector | sailpoint.connector.SAPInternalConnector | Reference to the current SAP connector. |
| state | java.util.Map | Map that can be used to store and share data between executions of this rule during a single aggregation run. |

View File

@@ -5,8 +5,7 @@ pagination_label: SAP HR Provisioning Modify Rule
sidebar_label: SAP HR Provisioning Modify Rule
sidebar_class_name: sapHRProvisioningModifyRule
keywords: ["cloud", "rules", "sap"]
description:
This rule performs SAP HR modification operations during
description: This rule performs SAP HR modification operations during
provisioning. This rule is typically used for attribute sync to custom SAP HR
attributes.
slug: /docs/rules/connector-rules/sap-provisioning-modify-rule
@@ -31,7 +30,7 @@ This rule is typically used for attribute sync to custom SAP HR attributes.
## Input
| Argument | Type | Purpose |
| ----------- | ------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------- |
| ----------- | ------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------ |
| application | sailpoint.object.Application | Reference to the application object. |
| schema | sailpoint.object.Schema | Reference to the application schema. |
| destination | com.sap.conn.jco.JCoDestination | Connected and ready-to-use SAP destination object that can be used to call BAPI function modules and call to SAP tables. |
@@ -42,7 +41,7 @@ This rule is typically used for attribute sync to custom SAP HR attributes.
## Output
| Argument | Type | Purpose |
| -------- | ----------------------------------- | ----------------------------------------------------------------------------------------------------------- |
| -------- | ----------------------------------- | ------------------------------------------------------------------------------------------------------- |
| result | sailpoint.object.ProvisioningResult | ProvisioningResult object containing the provisioning request's status (success, failure, retry, etc.). |
## Template

View File

@@ -5,8 +5,7 @@ pagination_label: Web Services After Operation Rule
sidebar_label: Web Services After Operation Rule
sidebar_class_name: webServicesAfterOperationRule
keywords: ["cloud", "rules", "webservices"]
description:
This rule calculates attributes after a web-service operation call.
description: This rule calculates attributes after a web-service operation call.
slug: /docs/rules/connector-rules/webservices-after-provisioning-rule
tags: ["Rules"]
---
@@ -28,7 +27,7 @@ This rule calculates attributes after a web-service operation call.
## Input
| Argument | Type | Purpose |
| ----------------------- | ------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| ----------------------- | ------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| application | sailpoint.object.Application | Application whose data file is being processed. |
| processedResponseObject | List<Map<String, Object>> | List of map (account/group). The map contains a key, the identityAttribute of the application schema, and a value, all the account/group attributes (schema) passed by the connector after parsing the respective API response. |
| requestEndPoint | sailpoint.connector.webservices.EndPoint | Current request information. It contains the header, body, context url, method type, response attribute map, successful response code. |
@@ -38,7 +37,7 @@ This rule calculates attributes after a web-service operation call.
## Output
| Argument | Type | Purpose |
| ------------------------- | ------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| ------------------------- | ------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| updatedAccountOrGroupList | java.util.Map | `Map` object returned from the After Operation Rule. It may contain any or all of the following: an updated list of account / group resource objects, identified by key `data`/ attribute values to be updated into application by the connector state map identified by key `connectorStateMap`. Each resource (account/group) object is of type `Map`, which contains the **key-value** pair. The **key** represents the schema attribute name, and the **value** represents the account/group attribute value. |
## Template

View File

@@ -5,8 +5,7 @@ pagination_label: Web Services Before Operation Rule
sidebar_label: Web Services Before Operation Rule
sidebar_class_name: webServicesBeforeOperationRule
keywords: ["cloud", "rules", "webservices"]
description:
This rule calculates attributes before a web-service operation call.
description: This rule calculates attributes before a web-service operation call.
slug: /docs/rules/connector-rules/webservices-before-provisioning-rule
tags: ["Rules"]
---
@@ -28,7 +27,7 @@ This rule calculates attributes before a web-service operation call.
## Input
| Argument | Type | Purpose |
| ---------------- | ------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| ---------------- | ------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| application | sailpoint.object.Application | Application whose data file is being processed. |
| provisioningPlan | sailpoint.object.ProvisioningPlan | Provisioning plan used to update the payload of the http request. The provisioning plan has an account request that defines the operation to be performed on the account. An account request can contain multiple attributes requests. Each attribute request represents an operation on a single account attribute. This argument enables the user to update the body/payload or URL attributes of an endpoint object using the provisioningPlan information. |
| requestEndPoint | sailpoint.connector.webservices.EndPoint | Current request information. It contains the header, body, context url, method type, response attribute map, and successful response code. |
@@ -38,7 +37,7 @@ This rule calculates attributes before a web-service operation call.
## Output
| Argument | Type | Purpose |
| -------------- | ------------------------------------------------------------------------------ | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| -------------- | ------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| EndPoint / Map | sailpoint.connector.webservices.EndPoint / sailpoint.connector.webservices.Map | The rule allows the user to return the endpoint object (requestEndPoint) or a map. The map can hold **updatedEndPoint** and **connectorStateMap** keys where the value expected are **Endpoint** (requestEndPoint) and **connectorStateMap** object respectively. The **connectorStateMap** object is a map that contains a key and a value for the attribute that must be updated in the application by the rule. |
```xml

View File

@@ -6,8 +6,7 @@ sidebar_label: Common CLI Commands
sidebar_position: 3
sidebar_class_name: commonCliCommands
keywords: ["connectivity", "connectors", "commands", "cli"]
description:
These are the CLI commands most commonly used when building SaaS Connectors.
description: These are the CLI commands most commonly used when building SaaS Connectors.
slug: /docs/saas-connectivity/common-cli-commands
tags: ["Connectivity"]
---

View File

@@ -6,8 +6,7 @@ sidebar_label: Debugging
sidebar_position: 2
sidebar_class_name: debugging
keywords: ["connectivity", "connectors", "debugging"]
description:
An easy way to debug locally is to use console.log() to print debug
description: An easy way to debug locally is to use console.log() to print debug
information to your console.
slug: /docs/saas-connectivity/in-depth/debugging
tags: ["Connectivity"]

View File

@@ -5,8 +5,7 @@ pagination_label: Date Math
sidebar_label: Date Math
sidebar_class_name: dateMath
keywords: ["transforms", "operations", "date", "math"]
description:
Add, subtract, and round components of a timestamp's incoming value.
description: Add, subtract, and round components of a timestamp's incoming value.
slug: /docs/transforms/operations/date-math
tags: ["Transforms", "Transform Operations"]
---

View File

@@ -71,6 +71,7 @@ transform involves a `table` entry of key-value pairs:
configured with the UI.
## Examples
This transform tries to map a telephone area code to a city in Texas. If there is no area code in the four provided values, the transform will return the default value of "Unknown Area."
**Transform Request Body**:

View File

@@ -5,8 +5,7 @@ pagination_label: Name Normalizer
sidebar_label: Name Normalizer
sidebar_class_name: nameNormalizer
keywords: ["transforms", "operations", "name normalizer"]
description:
Clean or standardize the spelling of strings coming in from source systems.
description: Clean or standardize the spelling of strings coming in from source systems.
slug: /docs/transforms/operations/name-normalizer
tags: ["Transforms", "Transform Operations"]
---

View File

@@ -5,8 +5,7 @@ pagination_label: Rule
sidebar_label: Rule
sidebar_class_name: rule
keywords: ["transforms", "operations", "rule"]
description:
Reuse rule logic that has already been written for a previous use case.
description: Reuse rule logic that has already been written for a previous use case.
slug: /docs/transforms/operations/rule
tags: ["Transforms", "Transform Operations"]
---

View File

@@ -5,8 +5,7 @@ pagination_label: Trim
sidebar_label: Trim
sidebar_class_name: trim
keywords: ["transforms", "operations", "trim"]
description:
Trim whitespaces from both the beginning and ending of input strings.
description: Trim whitespaces from both the beginning and ending of input strings.
slug: /docs/transforms/operations/trim
tags: ["Transforms", "Transform Operations"]
---

View File

@@ -5,8 +5,7 @@ pagination_label: Username Generator
sidebar_label: Username Generator
sidebar_class_name: usernameGenerator
keywords: ["transforms", "operations", "username", "generator"]
description:
Derive a unique value for an attribute in an account create profile.
description: Derive a unique value for an attribute in an account create profile.
slug: /docs/transforms/operations/username-generator
tags: ["Transforms", "Transform Operations"]
---

View File

@@ -1,10 +1,7 @@
import React from "react";
import clsx from "clsx";
import styles from "./styles.module.css";
import Link from '@docusaurus/Link';
import Link from "@docusaurus/Link";
export default function FAQ() {
return (
<div>
</div>
);
return <div></div>;
}

View File

@@ -8,7 +8,7 @@
.center {
margin: 50px auto;
max-width: 1000px;
}
}
.signUpSection {
margin: 30px auto;
@@ -20,7 +20,6 @@
}
}
.headerSection {
display: grid;
grid-gap: 0px;
@@ -84,7 +83,6 @@
}
.button {
text-decoration: none;
text-align: center;
margin: 10px auto;
@@ -105,12 +103,12 @@
box-shadow: 0px 20px 60px #00000015;
border: 2px solid #df61ca;
border-radius: 5px;
}
}
.button:hover {
.button:hover {
cursor: pointer;
top: -2px;
box-shadow: 0 4px 5px rgba(0,0,0,0.2);
box-shadow: 0 4px 5px rgba(0, 0, 0, 0.2);
background-color: #c552ae10;
color: #cc27b0;
}
}

View File

@@ -1,10 +1,9 @@
import React from "react";
import styles from "./styles.module.css";
import Link from '@docusaurus/Link';
import useBaseUrl from '@docusaurus/useBaseUrl';
import ThemedImage from '@theme/ThemedImage';
export default function SpeakerCard({link, name, image}) {
import Link from "@docusaurus/Link";
import useBaseUrl from "@docusaurus/useBaseUrl";
import ThemedImage from "@theme/ThemedImage";
export default function SpeakerCard({ link, name, image }) {
return (
<Link to={link}>
<div className={styles.card}>

View File

@@ -1,6 +1,6 @@
/* Getting Started Card */
.card {
position:relative;
position: relative;
margin-top: 20px;
height: 200px;
/* UI Properties */
@@ -9,9 +9,8 @@
opacity: 1;
}
.cardText {
position:absolute;
position: absolute;
margin: 22px auto;
text-align: center;
font-size: 16px;
@@ -23,7 +22,7 @@
}
.titleText {
position:absolute;
position: absolute;
margin: 22px auto;
text-align: center;
font-size: 10px;
@@ -35,12 +34,9 @@
color: var(--dev-text-color-normal);
}
.cardFaceContainer {
width: 100%;
margin: 40px auto;
}
.cardFace {
@@ -49,6 +45,4 @@
margin: auto;
height: 100px;
width: 100px;
}

View File

@@ -1,26 +1,53 @@
import React from "react";
import clsx from "clsx";
import ConferenceTitle from '../Title'
import ConferenceTitle from "../Title";
import styles from "./styles.module.css";
import Link from '@docusaurus/Link';
import Link from "@docusaurus/Link";
import SpeakerCard from "../SpeakerCard";
export default function ConferenceSpeakers() {
return (
<div className={styles.main}>
<ConferenceTitle
description={"Take a sneak peek at our upcoming lineup of expert guests"}
description={
"Take a sneak peek at our upcoming lineup of expert guests"
}
title={"Speakers"}
image={"/conf/calendar-star.png"}>
</ConferenceTitle>
image={"/conf/calendar-star.png"}
></ConferenceTitle>
<div className={styles.center}>
<div className={styles.gridContainer}>
<SpeakerCard link={"https://developer.sailpoint.com/discuss/u/colin_mckibben/summary"} name={"Colin McKibben"} title={"DEVELOPER ADVOCATE"} image={"/homepage/colin-mckibben.png"}></SpeakerCard>
<SpeakerCard link={"https://developer.sailpoint.com/discuss/u/tyler_mairose/summary"} name={"Tyler Mairose"} title={"DEVELOPER ADVOCATE"} image={"/homepage/tyler-mairose.png"}></SpeakerCard>
<SpeakerCard link={"https://developer.sailpoint.com/discuss/u/philip-ellis/summary"} name={"Philip Ellis"} title={"DEVELOPER ADVOCATE"} image={"/homepage/phil-ellis.png"}></SpeakerCard>
<SpeakerCard link={"https://developer.sailpoint.com/discuss/u/jthaytko/summary"} name={"James Haytko"} title={"TECHNICAL WRITER"} image={"/homepage/james-haytko.png"}></SpeakerCard>
<SpeakerCard
link={
"https://developer.sailpoint.com/discuss/u/colin_mckibben/summary"
}
name={"Colin McKibben"}
title={"DEVELOPER ADVOCATE"}
image={"/homepage/colin-mckibben.png"}
></SpeakerCard>
<SpeakerCard
link={
"https://developer.sailpoint.com/discuss/u/tyler_mairose/summary"
}
name={"Tyler Mairose"}
title={"DEVELOPER ADVOCATE"}
image={"/homepage/tyler-mairose.png"}
></SpeakerCard>
<SpeakerCard
link={
"https://developer.sailpoint.com/discuss/u/philip-ellis/summary"
}
name={"Philip Ellis"}
title={"DEVELOPER ADVOCATE"}
image={"/homepage/phil-ellis.png"}
></SpeakerCard>
<SpeakerCard
link={"https://developer.sailpoint.com/discuss/u/jthaytko/summary"}
name={"James Haytko"}
title={"TECHNICAL WRITER"}
image={"/homepage/james-haytko.png"}
></SpeakerCard>
</div>
</div>
</div>
);
}

View File

@@ -9,13 +9,13 @@
box-shadow: var(--dev-card-shadow);
border: 1px solid var(--dev-card-background);
border-radius: 40px;
}
}
.center {
.center {
margin: 50px auto;
max-width: 1000px;
}
}
.main {
.main {
margin-top: 100px;
}
}

View File

@@ -1,10 +1,7 @@
import React from "react";
import clsx from "clsx";
import styles from "./styles.module.css";
import Link from '@docusaurus/Link';
import Link from "@docusaurus/Link";
export default function ConferenceSponsors() {
return (
<div>
</div>
);
return <div></div>;
}

View File

@@ -1,6 +1,6 @@
import React from "react";
import ConferenceTitle from '../Title'
import ThemeCard from '../ThemeCard'
import ConferenceTitle from "../Title";
import ThemeCard from "../ThemeCard";
import styles from "./styles.module.css";
export default function ConferenceTheme() {
return (
@@ -8,21 +8,38 @@ export default function ConferenceTheme() {
<ConferenceTitle
description={"What can you expect at the upcoming conference?"}
title={"What to Expect"}
image={"/conf/calendar-star-thin.svg"}>
</ConferenceTitle>
image={"/conf/calendar-star-thin.svg"}
></ConferenceTitle>
<div className={styles.center}>
<div className={styles.gridContainer}>
<ThemeCard title={"A deep dive into the extensibility offerings of SailPoint platforms"} image={"/conf/deep-dive.png"}></ThemeCard>
<ThemeCard title={"Hear from identity experts developing real world solutions"} image={"/conf/expert-advice.png"}></ThemeCard>
<ThemeCard
title={
"A deep dive into the extensibility offerings of SailPoint platforms"
}
image={"/conf/deep-dive.png"}
></ThemeCard>
<ThemeCard
title={"Hear from identity experts developing real world solutions"}
image={"/conf/expert-advice.png"}
></ThemeCard>
</div>
</div>
<div className={styles.center}>
<div className={styles.gridContainer}>
<ThemeCard title={"Shipyard is a hands-on conference, you will build something in almost every session"} image={"/conf/workshops.png"}></ThemeCard>
<ThemeCard title={"Shipyard will be all-virtual, open to everyone, and <b>at no cost<b>"} image={"/conf/virtual.png"}></ThemeCard>
<ThemeCard
title={
"Shipyard is a hands-on conference, you will build something in almost every session"
}
image={"/conf/workshops.png"}
></ThemeCard>
<ThemeCard
title={
"Shipyard will be all-virtual, open to everyone, and <b>at no cost<b>"
}
image={"/conf/virtual.png"}
></ThemeCard>
</div>
</div>
</div>
);
);
}

View File

@@ -6,13 +6,13 @@
margin-left: 40px;
margin-right: 40px;
text-align: center;
}
}
.center {
.center {
margin: 20px auto;
max-width: 1000px;
}
}
.main {
.main {
margin-bottom: 100px;
}
}

View File

@@ -1,18 +1,21 @@
import React from "react";
import styles from "./styles.module.css";
import Link from '@docusaurus/Link';
import useBaseUrl from '@docusaurus/useBaseUrl';
import ThemedImage from '@theme/ThemedImage';
import Link from "@docusaurus/Link";
import useBaseUrl from "@docusaurus/useBaseUrl";
import ThemedImage from "@theme/ThemedImage";
import { addDarkToFileName } from "../../../util/util";
export default function ThemeCard({title, name, image}) {
export default function ThemeCard({ title, name, image }) {
return (
<div className={styles.card}>
<div className={styles.cardFaceContainer}>
<img className={styles.cardFace} src={useBaseUrl(image)}></img>
</div>
<div className={styles.cardText}>{name}</div>
<div className={styles.titleText} dangerouslySetInnerHTML={{ __html: title }} ></div>
<div
className={styles.titleText}
dangerouslySetInnerHTML={{ __html: title }}
></div>
</div>
);
}

View File

@@ -1,6 +1,6 @@
/* Getting Started Card */
.card {
position:relative;
position: relative;
margin-top: 20px;
height: 493px;
min-width: 330px;
@@ -12,9 +12,8 @@
opacity: 1;
}
.cardText {
position:absolute;
position: absolute;
margin: 22px auto;
text-align: center;
font-size: 24px;
@@ -22,12 +21,12 @@
width: 100%;
top: 36px;
left: 0;
color: #CC27B0;
color: #cc27b0;
font-family: input-mono;
}
.titleText {
position:absolute;
position: absolute;
margin: 22px auto;
padding: 0px calc(15%);
text-align: center;
@@ -41,8 +40,6 @@
font-family: input-mono;
}
.cardFaceContainer {
width: 100%;
margin: 70px auto;
@@ -57,4 +54,3 @@
height: 264px;
width: 264px;
}

View File

@@ -1,14 +1,20 @@
import React from "react";
import styles from "./styles.module.css";
import useBaseUrl from '@docusaurus/useBaseUrl';
import ThemedImage from '@theme/ThemedImage';
import useBaseUrl from "@docusaurus/useBaseUrl";
import ThemedImage from "@theme/ThemedImage";
import { addDarkToFileName } from "../../../util/util";
export default function ConferenceTitle({image, title, description}) {
export default function ConferenceTitle({ image, title, description }) {
return (
<div className={styles.gettingStartedText}>
<ThemedImage className={styles.gettingStartedCardIcon} sources={{light: useBaseUrl(image), dark: useBaseUrl(image),}}></ThemedImage>
<ThemedImage
className={styles.gettingStartedCardIcon}
sources={{ light: useBaseUrl(image), dark: useBaseUrl(image) }}
></ThemedImage>
<div className={styles.gettingStartedOne}>{title}</div>
<div className={styles.gettingStartedThree} dangerouslySetInnerHTML={{ __html: description }} ></div>
<div
className={styles.gettingStartedThree}
dangerouslySetInnerHTML={{ __html: description }}
></div>
</div>
);
}

View File

@@ -1,4 +1,3 @@
.gettingStartedText {
text-align: center;
color: var(--dev-text-color-cobalt);
@@ -6,29 +5,29 @@
width: calc(100% - 100px);
max-width: 600px;
font-family: input-mono;
}
}
.gettingStartedOne {
.gettingStartedOne {
color: var(--dev-text-color-cobalt);
font-size: 30px;
font-weight: bold;
line-height: 100%;
font-family: input-mono;;
}
font-family: input-mono;
}
.gettingStartedThree {
.gettingStartedThree {
margin-top: 20px;
font-size: 16px;
}
}
.bold {
.bold {
font-weight: bold;
}
}
.gettingStartedCardIcon {
.gettingStartedCardIcon {
margin-bottom: 20px;
width: 60px;
height: 60px;
filter: invert(62%) sepia(93%) saturate(289%) hue-rotate(156deg) brightness(93%) contrast(96%);
}
filter: invert(62%) sepia(93%) saturate(289%) hue-rotate(156deg)
brightness(93%) contrast(96%);
}

View File

@@ -12,7 +12,6 @@
height: 600px;
}
.comingSoon {
padding-left: 20px;
color: var(--ifm-color-primary);
@@ -94,7 +93,7 @@
letter-spacing: 3.2px;
margin-top: 10px;
color: var(--ifm-color-primary);
font-family: input-mono;;
font-family: input-mono;
font-weight: bold;
font-size: 18px;
}
@@ -102,7 +101,7 @@
.emailInput {
margin-top: 8px;
box-shadow: inset 0px 3px 6px #00000029;
border: 1px solid #DFE3E7;
border: 1px solid #dfe3e7;
border-radius: 4px;
height: 52px;
width: 360px;
@@ -111,7 +110,6 @@
}
.button {
text-decoration: none;
text-align: center;
margin: 10px auto;
@@ -132,20 +130,20 @@
box-shadow: 0px 20px 60px #00000015;
border: 2px solid #df61ca;
border-radius: 5px;
}
}
.button:hover {
.button:hover {
cursor: pointer;
top: -2px;
box-shadow: 0 4px 5px rgba(0,0,0,0.2);
box-shadow: 0 4px 5px rgba(0, 0, 0, 0.2);
background-color: #c552ae10;
color: #cc27b0;
}
}
.link {
.link {
color: #df61ca;
}
.button:hover {
}
.button:hover {
color: #df61ca;
cursor: pointer;
}
}

View File

@@ -1,24 +1,64 @@
import React from "react";
import styles from "./styles.module.css";
import Link from '@docusaurus/Link';
import useBaseUrl from '@docusaurus/useBaseUrl';
import ThemedImage from '@theme/ThemedImage';
import Link from "@docusaurus/Link";
import useBaseUrl from "@docusaurus/useBaseUrl";
import ThemedImage from "@theme/ThemedImage";
import { addDarkToFileName } from "../../../util/util";
export default function DiscussCard({link, title, tags, views, liked, solution}) {
let solved = <img className={styles.cardDiscuss} src={useBaseUrl("/homepage/edit.png")}></img>
let linkText = <div className={styles.linkText}>Join the Discussion</div>
export default function DiscussCard({
link,
title,
tags,
views,
liked,
solution,
}) {
let solved = (
<img
className={styles.cardDiscuss}
src={useBaseUrl("/homepage/edit.png")}
></img>
);
let linkText = <div className={styles.linkText}>Join the Discussion</div>;
if (solution) {
solved = <ThemedImage className={styles.cardSolved} sources={{light: useBaseUrl("/homepage/solved.png"), dark: useBaseUrl(addDarkToFileName("/homepage/solved.png")),}}></ThemedImage>
linkText = <div className={styles.linkSolvedText}>View the Solution</div>
solved = (
<ThemedImage
className={styles.cardSolved}
sources={{
light: useBaseUrl("/homepage/solved.png"),
dark: useBaseUrl(addDarkToFileName("/homepage/solved.png")),
}}
></ThemedImage>
);
linkText = <div className={styles.linkSolvedText}>View the Solution</div>;
}
return (
<Link to={link}>
<div className={styles.card}>
<ThemedImage className={styles.cardIcon} sources={{light: useBaseUrl("/homepage/quotes.png"), dark: useBaseUrl(addDarkToFileName("/homepage/quotes.png")),}}></ThemedImage>
<ThemedImage className={styles.cardArrow} sources={{light: useBaseUrl('/homepage/arrow-right.png'), dark: useBaseUrl('/homepage/arrow-right-dark.png'),}}></ThemedImage>
<ThemedImage className={styles.cardEye} sources={{light: useBaseUrl("/homepage/eyeball.png"), dark: useBaseUrl(addDarkToFileName("/homepage/eyeball.png")),}}></ThemedImage>
<img className={styles.cardLiked} src={useBaseUrl("/homepage/liked.png")}></img>
<ThemedImage
className={styles.cardIcon}
sources={{
light: useBaseUrl("/homepage/quotes.png"),
dark: useBaseUrl(addDarkToFileName("/homepage/quotes.png")),
}}
></ThemedImage>
<ThemedImage
className={styles.cardArrow}
sources={{
light: useBaseUrl("/homepage/arrow-right.png"),
dark: useBaseUrl("/homepage/arrow-right-dark.png"),
}}
></ThemedImage>
<ThemedImage
className={styles.cardEye}
sources={{
light: useBaseUrl("/homepage/eyeball.png"),
dark: useBaseUrl(addDarkToFileName("/homepage/eyeball.png")),
}}
></ThemedImage>
<img
className={styles.cardLiked}
src={useBaseUrl("/homepage/liked.png")}
></img>
{solved}
<div className={styles.cardText}>{title}</div>
<div className={styles.cardViews}>{views}</div>
@@ -28,14 +68,11 @@ export default function DiscussCard({link, title, tags, views, liked, solution})
<div className={styles.tags}>
{tags?.map((tag, index) => {
if (index > 2) {
return ('')
return "";
}
return (
<div className={styles.tag}>{tag}</div>
)
return <div className={styles.tag}>{tag}</div>;
})}
</div>
</div>
</Link>
);

View File

@@ -1,6 +1,6 @@
/* Getting Started Card */
.card {
position:relative;
position: relative;
margin-top: 20px;
height: 300px;
/* UI Properties */
@@ -14,11 +14,11 @@
.card:hover {
cursor: pointer;
top: -2px;
box-shadow: var(--dev-card-selected)
box-shadow: var(--dev-card-selected);
}
.cardText {
position:absolute;
position: absolute;
margin: 22px;
font-size: 16px;
font-weight: 500;
@@ -28,7 +28,7 @@
}
.linkText {
position:absolute;
position: absolute;
margin: 15px 45px 15px 25px;
font-size: 18px;
font-weight: 700;
@@ -38,7 +38,7 @@
}
.linkSolvedText {
position:absolute;
position: absolute;
margin: 15px 45px;
font-size: 18px;
font-weight: 700;
@@ -48,7 +48,7 @@
}
.cardIcon {
position:absolute;
position: absolute;
margin: 20px;
top: 20px;
left: 0;
@@ -56,25 +56,23 @@
}
.cardArrow {
position:absolute;
position: absolute;
margin: 20px;
bottom: 20px;
right: 0;
width: 20px;
}
.cardViews {
position:absolute;
position: absolute;
margin: 15px;
right: 0px;
top: 0;
width: 30px;
}
.cardLikes {
position:absolute;
position: absolute;
margin: 15px;
right: 45px;
top: 0;
@@ -82,7 +80,7 @@
}
.cardSolved {
position:absolute;
position: absolute;
margin: 0px;
right: 132px;
top: 18px;
@@ -91,16 +89,15 @@
.cardDiscuss {
display: none;
position:absolute;
position: absolute;
margin: 0px;
left: 12px;
bottom: 57px;
width: 28px;
}
.cardEye {
position:absolute;
position: absolute;
margin: 20px;
right: 25px;
top: 0;
@@ -108,7 +105,7 @@
}
.cardLiked {
position:absolute;
position: absolute;
margin: 16px;
right: 75px;
top: 0;
@@ -122,7 +119,7 @@
}
.tags {
position:absolute;
position: absolute;
margin: 20px;
width: 230px;
bottom: 50px;
@@ -138,5 +135,5 @@
}
.iiq {
color: #60b359
color: #60b359;
}

View File

@@ -1,25 +1,40 @@
import React from "react";
import styles from "./styles.module.css";
import Link from '@docusaurus/Link';
import useBaseUrl from '@docusaurus/useBaseUrl';
import Link from "@docusaurus/Link";
import useBaseUrl from "@docusaurus/useBaseUrl";
import { addDarkToFileName } from "../../../util/util";
import ThemedImage from '@theme/ThemedImage';
export default function HomepageBasics({link, title, image, description, buttonText}) {
let linkHtml = <div></div>
import ThemedImage from "@theme/ThemedImage";
export default function HomepageBasics({
link,
title,
image,
description,
buttonText,
}) {
let linkHtml = <div></div>;
if (buttonText) {
linkHtml =
linkHtml = (
<div className={styles.button}>
<Link className={styles.link} to={link}>
{buttonText}
</Link>
</div>
);
}
return (
<div className={styles.gettingStartedText}>
<ThemedImage className={styles.gettingStartedCardIcon} sources={{light: useBaseUrl(image), dark: useBaseUrl(addDarkToFileName(image)),}}></ThemedImage>
<ThemedImage
className={styles.gettingStartedCardIcon}
sources={{
light: useBaseUrl(image),
dark: useBaseUrl(addDarkToFileName(image)),
}}
></ThemedImage>
<div className={styles.gettingStartedOne}>{title}</div>
<div className={styles.gettingStartedThree} dangerouslySetInnerHTML={{ __html: description }} ></div>
<div
className={styles.gettingStartedThree}
dangerouslySetInnerHTML={{ __html: description }}
></div>
{linkHtml}
</div>
);

View File

@@ -1,11 +1,9 @@
.gettingStartedText {
text-align: center;
margin: 150px auto 50px auto;
width: calc(100% - 100px);
max-width: 600px;
}
.gettingStartedOne {
@@ -21,7 +19,6 @@
font-weight: 500;
}
.bold {
font-weight: bold;
}
@@ -35,13 +32,12 @@
.button:hover {
cursor: pointer;
top: -2px;
box-shadow: 0 4px 5px rgba(0,0,0,0.2);
box-shadow: 0 4px 5px rgba(0, 0, 0, 0.2);
background-color: #c552ae10;
color: #cc27b0;
}
.button {
text-decoration: none;
text-align: center;
margin: 10px auto;
@@ -49,7 +45,6 @@
font-weight: bold;
line-height: 100%;
/* Layout Properties */
width: 259px;
height: 61px;

View File

@@ -1,18 +1,30 @@
import React from "react";
import styles from "./styles.module.css";
import Link from '@docusaurus/Link';
import useBaseUrl from '@docusaurus/useBaseUrl';
import ThemedImage from '@theme/ThemedImage';
import Link from "@docusaurus/Link";
import useBaseUrl from "@docusaurus/useBaseUrl";
import ThemedImage from "@theme/ThemedImage";
import { addDarkToFileName } from "../../../util/util";
export default function HomepageCard({link, title, image, product}) {
const productStyles = product==='idn' ? styles.idn : styles.iiq
export default function HomepageCard({ link, title, image, product }) {
const productStyles = product === "idn" ? styles.idn : styles.iiq;
return (
<Link to={link}>
<div className={styles.card}>
<ThemedImage className={styles.cardIcon} sources={{light: useBaseUrl(image), dark: useBaseUrl(addDarkToFileName(image)),}}></ThemedImage>
<ThemedImage className={styles.cardArrow} sources={{light: useBaseUrl('/homepage/arrow-right.png'), dark: useBaseUrl('/homepage/arrow-right-dark.png'),}}></ThemedImage>
<ThemedImage
className={styles.cardIcon}
sources={{
light: useBaseUrl(image),
dark: useBaseUrl(addDarkToFileName(image)),
}}
></ThemedImage>
<ThemedImage
className={styles.cardArrow}
sources={{
light: useBaseUrl("/homepage/arrow-right.png"),
dark: useBaseUrl("/homepage/arrow-right-dark.png"),
}}
></ThemedImage>
<div className={styles.cardText}>{title}</div>
<div className={`${styles.product} ${productStyles}`}>{product}</div>
</div>

View File

@@ -1,6 +1,6 @@
/* Getting Started Card */
.card {
position:relative;
position: relative;
margin-top: 20px;
height: 200px;
/* UI Properties */
@@ -9,17 +9,16 @@
border: 1px solid var(--dev-card-background);
border-radius: 40px;
opacity: 1;
}
.card:hover {
cursor: pointer;
top: -2px;
box-shadow: var(--dev-card-selected)
box-shadow: var(--dev-card-selected);
}
.cardText {
position:absolute;
position: absolute;
margin: 20px;
font-size: 16px;
font-weight: 500;
@@ -29,7 +28,7 @@
}
.cardIcon {
position:absolute;
position: absolute;
margin: 20px;
top: 0;
left: 0;
@@ -37,7 +36,7 @@
}
.cardArrow {
position:absolute;
position: absolute;
margin: 20px;
bottom: 25px;
right: 0;
@@ -45,14 +44,13 @@
}
.product {
position:absolute;
position: absolute;
margin: 20px;
font-size: 12px;
font-weight: 500;
width: 120px;
bottom: 50px;
left: 0;
}
.idn {
@@ -60,5 +58,5 @@
}
.iiq {
color: #60b359
color: #60b359;
}

View File

@@ -4,23 +4,19 @@ import DiscussCard from "../DiscussCard";
import { getTopPosts } from "../../../services/DiscourseService";
export default function HomepageDiscuss() {
const [ans, setAns] = React.useState();
const getPosts = async () => {
const data = await getTopPosts()
const data = await getTopPosts();
const resultset = [
getPostList(data, 0),
getPostList(data, 1),
getPostList(data, 2),
getPostList(data, findSolutionPost(data.topic_list.topics))
]
getPostList(data, findSolutionPost(data.topic_list.topics)),
];
setAns(resultset);
};
React.useEffect(() => {
getPosts();
}, []);
@@ -29,29 +25,59 @@ export default function HomepageDiscuss() {
return (
<div className={styles.center}>
<div className={styles.gridContainer}>
<DiscussCard solution={ans[0].solution} liked={ans[0].liked} tags={ans[0].tags} link={ans[0].link} title={ans[0].title} views={ans[0].views}></DiscussCard>
<DiscussCard solution={ans[1].solution} liked={ans[1].liked} tags={ans[1].tags} link={ans[1].link} title={ans[1].title} views={ans[1].views}></DiscussCard>
<DiscussCard solution={ans[2].solution} liked={ans[2].liked} tags={ans[2].tags} link={ans[2].link} title={ans[2].title} views={ans[2].views}></DiscussCard>
<DiscussCard solution={ans[3].solution} liked={ans[3].liked} tags={ans[3].tags} link={ans[3].link} title={ans[3].title} views={ans[3].views}></DiscussCard>
<DiscussCard
solution={ans[0].solution}
liked={ans[0].liked}
tags={ans[0].tags}
link={ans[0].link}
title={ans[0].title}
views={ans[0].views}
></DiscussCard>
<DiscussCard
solution={ans[1].solution}
liked={ans[1].liked}
tags={ans[1].tags}
link={ans[1].link}
title={ans[1].title}
views={ans[1].views}
></DiscussCard>
<DiscussCard
solution={ans[2].solution}
liked={ans[2].liked}
tags={ans[2].tags}
link={ans[2].link}
title={ans[2].title}
views={ans[2].views}
></DiscussCard>
<DiscussCard
solution={ans[3].solution}
liked={ans[3].liked}
tags={ans[3].tags}
link={ans[3].link}
title={ans[3].title}
views={ans[3].views}
></DiscussCard>
</div>
</div>
);
} else {
return (
<div></div>
)
return <div></div>;
}
}
function getPostList(posts, index) {
return {
'tags': posts.topic_list.topics[index].tags,
'link': 'https://developer.sailpoint.com/discuss/t/' + posts.topic_list.topics[index].slug + '/' + posts.topic_list.topics[index].id,
'title': posts.topic_list.topics[index].title,
'views': posts.topic_list.topics[index].views,
'liked': posts.topic_list.topics[index].like_count,
'solution': posts.topic_list.topics[index].has_accepted_answer
}
tags: posts.topic_list.topics[index].tags,
link:
"https://developer.sailpoint.com/discuss/t/" +
posts.topic_list.topics[index].slug +
"/" +
posts.topic_list.topics[index].id,
title: posts.topic_list.topics[index].title,
views: posts.topic_list.topics[index].views,
liked: posts.topic_list.topics[index].like_count,
solution: posts.topic_list.topics[index].has_accepted_answer,
};
}
function findSolutionPost(posts) {
@@ -60,7 +86,7 @@ function findSolutionPost(posts) {
if (post.has_accepted_answer && index > 2) {
return index;
}
index ++;
index++;
}
return index;
}

View File

@@ -1,4 +1,3 @@
/* Getting Started Card container */
.gridContainer {
display: grid;

View File

@@ -1,7 +1,7 @@
import React from "react";
import clsx from "clsx";
import styles from "./styles.module.css";
import Link from '@docusaurus/Link';
import Link from "@docusaurus/Link";
import HomepageCard from "../HomepageCard";
export default function HomepageGettingStarted() {
return (
@@ -9,17 +9,42 @@ export default function HomepageGettingStarted() {
<div className={styles.mainCard}>
<div className={styles.contentContainer}>
<div className={styles.gettingStartedText}>
<div className={styles.gettingStartedOne}>SailPoint Developer Community</div>
<div className={styles.gettingStartedTwo}>Don't know where to get started?</div>
<div className={styles.gettingStartedThree}>Jump into our <span className={styles.bold}>Get Started Guides</span> for more information.</div>
<div className={styles.gettingStartedOne}>
SailPoint Developer Community
</div>
<div className={styles.gettingStartedTwo}>
Don't know where to get started?
</div>
<div className={styles.gettingStartedThree}>
Jump into our{" "}
<span className={styles.bold}>Get Started Guides</span> for more
information.
</div>
</div>
<div className={styles.gridContainer}>
<HomepageCard link={"/idn/docs"} title={"Get Started with IdentityNow"} image={"/homepage/cloud.png"}></HomepageCard>
<HomepageCard link={"https://documentation.sailpoint.com/identityiq/help/iiqlandingpage.html"} title={"Get Started with IdentityIQ"} image={"/homepage/cloud.png"}></HomepageCard>
<HomepageCard
link={"/idn/docs"}
title={"Get Started with IdentityNow"}
image={"/homepage/cloud.png"}
></HomepageCard>
<HomepageCard
link={
"https://documentation.sailpoint.com/identityiq/help/iiqlandingpage.html"
}
title={"Get Started with IdentityIQ"}
image={"/homepage/cloud.png"}
></HomepageCard>
</div>
</div>
<div className={styles.carousel}>
<iframe className={styles.video} src="https://www.youtube.com/embed/N-JG8xjpKaI" title="YouTube video player" frameBorder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowFullScreen></iframe>
<iframe
className={styles.video}
src="https://www.youtube.com/embed/N-JG8xjpKaI"
title="YouTube video player"
frameBorder="0"
allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture"
allowFullScreen
></iframe>
</div>
</div>
</div>

View File

@@ -5,8 +5,6 @@
justify-content: center;
}
.gettingStartedText {
margin-top: 50px;
margin-left: 50px;
@@ -32,12 +30,10 @@
font-weight: 500;
}
.bold {
font-weight: bold;
}
/* Getting Started Card container */
.gridContainer {
display: grid;
@@ -59,8 +55,6 @@
margin-right: 50px;
}
@media only screen and (max-width: 1178px) {
.carousel {
margin-top: 0px;

View File

@@ -1,16 +1,46 @@
import React from "react";
import clsx from "clsx";
import styles from "./styles.module.css";
import Link from '@docusaurus/Link';
import Link from "@docusaurus/Link";
import TeamCard from "../TeamCard";
export default function HomepageTeam() {
return (
<div className={styles.center}>
<div className={styles.gridContainer}>
<TeamCard link={"https://developer.sailpoint.com/discuss/u/colin_mckibben/summary"} name={"Colin McKibben"} title={"DEVELOPER ADVOCATE"} expertise={"API, WORKFLOWS, EVENT TRIGGERS"} image={"/homepage/colin-mckibben.png"}></TeamCard>
<TeamCard link={"https://developer.sailpoint.com/discuss/u/tyler_mairose/summary"} name={"Tyler Mairose"} title={"DEVELOPER ADVOCATE"} expertise={"RULES, TRANSFORMS"} image={"/homepage/tyler-mairose.png"}></TeamCard>
<TeamCard link={"https://developer.sailpoint.com/discuss/u/philip-ellis/summary"} name={"Philip Ellis"} title={"DEVELOPER ADVOCATE"} expertise={"DEVELOPER TOOLS, SAAS CONNECTIVITY"} image={"/homepage/phil-ellis.png"}></TeamCard>
<TeamCard link={"https://developer.sailpoint.com/discuss/u/jthaytko/summary"} name={"James Haytko"} title={"TECHNICAL WRITER"} expertise={"DEVELOPER DOCUMENTATION"} image={"/homepage/james-haytko.png"}></TeamCard>
<TeamCard
link={
"https://developer.sailpoint.com/discuss/u/colin_mckibben/summary"
}
name={"Colin McKibben"}
title={"DEVELOPER ADVOCATE"}
expertise={"API, WORKFLOWS, EVENT TRIGGERS"}
image={"/homepage/colin-mckibben.png"}
></TeamCard>
<TeamCard
link={
"https://developer.sailpoint.com/discuss/u/tyler_mairose/summary"
}
name={"Tyler Mairose"}
title={"DEVELOPER ADVOCATE"}
expertise={"RULES, TRANSFORMS"}
image={"/homepage/tyler-mairose.png"}
></TeamCard>
<TeamCard
link={
"https://developer.sailpoint.com/discuss/u/philip-ellis/summary"
}
name={"Philip Ellis"}
title={"DEVELOPER ADVOCATE"}
expertise={"DEVELOPER TOOLS, SAAS CONNECTIVITY"}
image={"/homepage/phil-ellis.png"}
></TeamCard>
<TeamCard
link={"https://developer.sailpoint.com/discuss/u/jthaytko/summary"}
name={"James Haytko"}
title={"TECHNICAL WRITER"}
expertise={"DEVELOPER DOCUMENTATION"}
image={"/homepage/james-haytko.png"}
></TeamCard>
</div>
</div>
);

View File

@@ -1,4 +1,3 @@
/* Getting Started Card container */
.gridContainer {
display: grid;

View File

@@ -1,16 +1,38 @@
import React from "react";
import clsx from "clsx";
import styles from "./styles.module.css";
import Link from '@docusaurus/Link';
import Link from "@docusaurus/Link";
import HomepageCard from "../HomepageCard";
export default function HomepageTrainingGuides() {
return (
<div className={styles.center}>
<div className={styles.gridContainer}>
<HomepageCard product={"idn"} link={"/idn/api/getting-started"} title={"Make Your First API Call"} image={"/homepage/cloud.png"}></HomepageCard>
<HomepageCard product={"idn"} link={"/idn/docs/transforms/guides/your-first-transform"} title={"Build a Transform"} image={"/homepage/cloud.png"}></HomepageCard>
<HomepageCard product={"idn"} link={"/idn/docs/saas-connectivity"} title={"Build a SaaS Connector"} image={"/homepage/cloud.png"}></HomepageCard>
<HomepageCard product={"iiq"} link={"https://documentation.sailpoint.com/identityiq/help/plugins/identityiq_plugins.html"} title={"Build an IIQ Plugin"} image={"/homepage/cloud.png"}></HomepageCard>
<HomepageCard
product={"idn"}
link={"/idn/api/getting-started"}
title={"Make Your First API Call"}
image={"/homepage/cloud.png"}
></HomepageCard>
<HomepageCard
product={"idn"}
link={"/idn/docs/transforms/guides/your-first-transform"}
title={"Build a Transform"}
image={"/homepage/cloud.png"}
></HomepageCard>
<HomepageCard
product={"idn"}
link={"/idn/docs/saas-connectivity"}
title={"Build a SaaS Connector"}
image={"/homepage/cloud.png"}
></HomepageCard>
<HomepageCard
product={"iiq"}
link={
"https://documentation.sailpoint.com/identityiq/help/plugins/identityiq_plugins.html"
}
title={"Build an IIQ Plugin"}
image={"/homepage/cloud.png"}
></HomepageCard>
</div>
</div>
);

View File

@@ -1,4 +1,3 @@
/* Getting Started Card container */
.gridContainer {
display: grid;

View File

@@ -1,17 +1,22 @@
import React from "react";
import styles from "./styles.module.css";
import Link from '@docusaurus/Link';
import useBaseUrl from '@docusaurus/useBaseUrl';
import ThemedImage from '@theme/ThemedImage';
export default function TeamCard({link, title, name, expertise, image}) {
import Link from "@docusaurus/Link";
import useBaseUrl from "@docusaurus/useBaseUrl";
import ThemedImage from "@theme/ThemedImage";
export default function TeamCard({ link, title, name, expertise, image }) {
return (
<Link to={link}>
<div className={styles.card}>
<div className={styles.cardFaceContainer}>
<img className={styles.cardFace} src={useBaseUrl(image)}></img>
</div>
<ThemedImage className={styles.cardArrow} sources={{light: useBaseUrl('/homepage/arrow-right.png'), dark: useBaseUrl('/homepage/arrow-right-dark.png'),}}></ThemedImage>
<ThemedImage
className={styles.cardArrow}
sources={{
light: useBaseUrl("/homepage/arrow-right.png"),
dark: useBaseUrl("/homepage/arrow-right-dark.png"),
}}
></ThemedImage>
<div className={styles.cardText}>{name}</div>
<div className={styles.titleText}>{title}</div>
<div className={styles.expertiseText}>{expertise}</div>

View File

@@ -1,6 +1,6 @@
/* Getting Started Card */
.card {
position:relative;
position: relative;
margin-top: 20px;
height: 300px;
/* UI Properties */
@@ -14,12 +14,11 @@
.card:hover {
cursor: pointer;
top: -2px;
box-shadow: var(--dev-card-selected)
box-shadow: var(--dev-card-selected);
}
.cardText {
position:absolute;
position: absolute;
margin: 22px auto;
text-align: center;
font-size: 16px;
@@ -31,7 +30,7 @@
}
.titleText {
position:absolute;
position: absolute;
margin: 22px auto;
text-align: center;
font-size: 10px;
@@ -44,7 +43,7 @@
}
.expertiseText {
position:absolute;
position: absolute;
margin: 22px auto;
text-align: center;
font-size: 10px;
@@ -54,11 +53,11 @@
top: 160px;
left: 0;
color: var(--ifm-color-primary);
padding: 30px
padding: 30px;
}
.cardArrow {
position:absolute;
position: absolute;
margin: 20px;
bottom: 5px;
right: 0;
@@ -77,4 +76,3 @@
height: 80px;
width: 80px;
}

View File

@@ -6,105 +6,212 @@
/* You can override the default Infima variables here. */
@import url("https://p.typekit.net/p.css?s=1&k=hbq4agn&ht=tk&f=30490.30491.30492.30493.30494.30495.30496.30497.30498.30499.30500.30501.30502.30503&a=87767056&app=typekit&e=css");
@font-face {
font-family:"input-mono";
src:url("https://use.typekit.net/af/4fc98e/00000000000000007735b0ff/30/l?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=i1&v=3") format("woff2"),url("https://use.typekit.net/af/4fc98e/00000000000000007735b0ff/30/d?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=i1&v=3") format("woff"),url("https://use.typekit.net/af/4fc98e/00000000000000007735b0ff/30/a?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=i1&v=3") format("opentype");
font-display:auto;font-style:italic;font-weight:100;font-stretch:normal;
font-family: "input-mono";
src: url("https://use.typekit.net/af/4fc98e/00000000000000007735b0ff/30/l?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=i1&v=3")
format("woff2"),
url("https://use.typekit.net/af/4fc98e/00000000000000007735b0ff/30/d?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=i1&v=3")
format("woff"),
url("https://use.typekit.net/af/4fc98e/00000000000000007735b0ff/30/a?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=i1&v=3")
format("opentype");
font-display: auto;
font-style: italic;
font-weight: 100;
font-stretch: normal;
}
@font-face {
font-family:"input-mono";
src:url("https://use.typekit.net/af/9ddc39/00000000000000007735b103/30/l?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n1&v=3") format("woff2"),url("https://use.typekit.net/af/9ddc39/00000000000000007735b103/30/d?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n1&v=3") format("woff"),url("https://use.typekit.net/af/9ddc39/00000000000000007735b103/30/a?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n1&v=3") format("opentype");
font-display:auto;font-style:normal;font-weight:100;font-stretch:normal;
font-family: "input-mono";
src: url("https://use.typekit.net/af/9ddc39/00000000000000007735b103/30/l?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n1&v=3")
format("woff2"),
url("https://use.typekit.net/af/9ddc39/00000000000000007735b103/30/d?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n1&v=3")
format("woff"),
url("https://use.typekit.net/af/9ddc39/00000000000000007735b103/30/a?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n1&v=3")
format("opentype");
font-display: auto;
font-style: normal;
font-weight: 100;
font-stretch: normal;
}
@font-face {
font-family:"input-mono";
src:url("https://use.typekit.net/af/3a1a0d/00000000000000007735b106/30/l?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=i2&v=3") format("woff2"),url("https://use.typekit.net/af/3a1a0d/00000000000000007735b106/30/d?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=i2&v=3") format("woff"),url("https://use.typekit.net/af/3a1a0d/00000000000000007735b106/30/a?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=i2&v=3") format("opentype");
font-display:auto;font-style:italic;font-weight:200;font-stretch:normal;
font-family: "input-mono";
src: url("https://use.typekit.net/af/3a1a0d/00000000000000007735b106/30/l?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=i2&v=3")
format("woff2"),
url("https://use.typekit.net/af/3a1a0d/00000000000000007735b106/30/d?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=i2&v=3")
format("woff"),
url("https://use.typekit.net/af/3a1a0d/00000000000000007735b106/30/a?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=i2&v=3")
format("opentype");
font-display: auto;
font-style: italic;
font-weight: 200;
font-stretch: normal;
}
@font-face {
font-family:"input-mono";
src:url("https://use.typekit.net/af/403df5/00000000000000007735b10d/30/l?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n2&v=3") format("woff2"),url("https://use.typekit.net/af/403df5/00000000000000007735b10d/30/d?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n2&v=3") format("woff"),url("https://use.typekit.net/af/403df5/00000000000000007735b10d/30/a?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n2&v=3") format("opentype");
font-display:auto;font-style:normal;font-weight:200;font-stretch:normal;
font-family: "input-mono";
src: url("https://use.typekit.net/af/403df5/00000000000000007735b10d/30/l?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n2&v=3")
format("woff2"),
url("https://use.typekit.net/af/403df5/00000000000000007735b10d/30/d?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n2&v=3")
format("woff"),
url("https://use.typekit.net/af/403df5/00000000000000007735b10d/30/a?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n2&v=3")
format("opentype");
font-display: auto;
font-style: normal;
font-weight: 200;
font-stretch: normal;
}
@font-face {
font-family:"input-mono";
src:url("https://use.typekit.net/af/6c83a4/00000000000000007735b117/30/l?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=i3&v=3") format("woff2"),url("https://use.typekit.net/af/6c83a4/00000000000000007735b117/30/d?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=i3&v=3") format("woff"),url("https://use.typekit.net/af/6c83a4/00000000000000007735b117/30/a?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=i3&v=3") format("opentype");
font-display:auto;font-style:italic;font-weight:300;font-stretch:normal;
font-family: "input-mono";
src: url("https://use.typekit.net/af/6c83a4/00000000000000007735b117/30/l?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=i3&v=3")
format("woff2"),
url("https://use.typekit.net/af/6c83a4/00000000000000007735b117/30/d?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=i3&v=3")
format("woff"),
url("https://use.typekit.net/af/6c83a4/00000000000000007735b117/30/a?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=i3&v=3")
format("opentype");
font-display: auto;
font-style: italic;
font-weight: 300;
font-stretch: normal;
}
@font-face {
font-family:"input-mono";
src:url("https://use.typekit.net/af/25ef29/00000000000000007735b110/30/l?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n3&v=3") format("woff2"),url("https://use.typekit.net/af/25ef29/00000000000000007735b110/30/d?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n3&v=3") format("woff"),url("https://use.typekit.net/af/25ef29/00000000000000007735b110/30/a?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n3&v=3") format("opentype");
font-display:auto;font-style:normal;font-weight:300;font-stretch:normal;
font-family: "input-mono";
src: url("https://use.typekit.net/af/25ef29/00000000000000007735b110/30/l?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n3&v=3")
format("woff2"),
url("https://use.typekit.net/af/25ef29/00000000000000007735b110/30/d?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n3&v=3")
format("woff"),
url("https://use.typekit.net/af/25ef29/00000000000000007735b110/30/a?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n3&v=3")
format("opentype");
font-display: auto;
font-style: normal;
font-weight: 300;
font-stretch: normal;
}
@font-face {
font-family:"input-mono";
src:url("https://use.typekit.net/af/c3093e/00000000000000007735b116/30/l?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=i4&v=3") format("woff2"),url("https://use.typekit.net/af/c3093e/00000000000000007735b116/30/d?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=i4&v=3") format("woff"),url("https://use.typekit.net/af/c3093e/00000000000000007735b116/30/a?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=i4&v=3") format("opentype");
font-display:auto;font-style:italic;font-weight:400;font-stretch:normal;
font-family: "input-mono";
src: url("https://use.typekit.net/af/c3093e/00000000000000007735b116/30/l?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=i4&v=3")
format("woff2"),
url("https://use.typekit.net/af/c3093e/00000000000000007735b116/30/d?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=i4&v=3")
format("woff"),
url("https://use.typekit.net/af/c3093e/00000000000000007735b116/30/a?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=i4&v=3")
format("opentype");
font-display: auto;
font-style: italic;
font-weight: 400;
font-stretch: normal;
}
@font-face {
font-family:"input-mono";
src:url("https://use.typekit.net/af/f1b774/00000000000000007735b11b/30/l?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n4&v=3") format("woff2"),url("https://use.typekit.net/af/f1b774/00000000000000007735b11b/30/d?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n4&v=3") format("woff"),url("https://use.typekit.net/af/f1b774/00000000000000007735b11b/30/a?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n4&v=3") format("opentype");
font-display:auto;font-style:normal;font-weight:400;font-stretch:normal;
font-family: "input-mono";
src: url("https://use.typekit.net/af/f1b774/00000000000000007735b11b/30/l?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n4&v=3")
format("woff2"),
url("https://use.typekit.net/af/f1b774/00000000000000007735b11b/30/d?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n4&v=3")
format("woff"),
url("https://use.typekit.net/af/f1b774/00000000000000007735b11b/30/a?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n4&v=3")
format("opentype");
font-display: auto;
font-style: normal;
font-weight: 400;
font-stretch: normal;
}
@font-face {
font-family:"input-mono";
src:url("https://use.typekit.net/af/9d2d8f/00000000000000007735b11f/30/l?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=i5&v=3") format("woff2"),url("https://use.typekit.net/af/9d2d8f/00000000000000007735b11f/30/d?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=i5&v=3") format("woff"),url("https://use.typekit.net/af/9d2d8f/00000000000000007735b11f/30/a?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=i5&v=3") format("opentype");
font-display:auto;font-style:italic;font-weight:500;font-stretch:normal;
font-family: "input-mono";
src: url("https://use.typekit.net/af/9d2d8f/00000000000000007735b11f/30/l?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=i5&v=3")
format("woff2"),
url("https://use.typekit.net/af/9d2d8f/00000000000000007735b11f/30/d?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=i5&v=3")
format("woff"),
url("https://use.typekit.net/af/9d2d8f/00000000000000007735b11f/30/a?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=i5&v=3")
format("opentype");
font-display: auto;
font-style: italic;
font-weight: 500;
font-stretch: normal;
}
@font-face {
font-family:"input-mono";
src:url("https://use.typekit.net/af/82c6c3/00000000000000007735b123/30/l?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n5&v=3") format("woff2"),url("https://use.typekit.net/af/82c6c3/00000000000000007735b123/30/d?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n5&v=3") format("woff"),url("https://use.typekit.net/af/82c6c3/00000000000000007735b123/30/a?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n5&v=3") format("opentype");
font-display:auto;font-style:normal;font-weight:500;font-stretch:normal;
font-family: "input-mono";
src: url("https://use.typekit.net/af/82c6c3/00000000000000007735b123/30/l?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n5&v=3")
format("woff2"),
url("https://use.typekit.net/af/82c6c3/00000000000000007735b123/30/d?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n5&v=3")
format("woff"),
url("https://use.typekit.net/af/82c6c3/00000000000000007735b123/30/a?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n5&v=3")
format("opentype");
font-display: auto;
font-style: normal;
font-weight: 500;
font-stretch: normal;
}
@font-face {
font-family:"input-mono";
src:url("https://use.typekit.net/af/038dc3/00000000000000007735b127/30/l?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=i7&v=3") format("woff2"),url("https://use.typekit.net/af/038dc3/00000000000000007735b127/30/d?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=i7&v=3") format("woff"),url("https://use.typekit.net/af/038dc3/00000000000000007735b127/30/a?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=i7&v=3") format("opentype");
font-display:auto;font-style:italic;font-weight:700;font-stretch:normal;
font-family: "input-mono";
src: url("https://use.typekit.net/af/038dc3/00000000000000007735b127/30/l?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=i7&v=3")
format("woff2"),
url("https://use.typekit.net/af/038dc3/00000000000000007735b127/30/d?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=i7&v=3")
format("woff"),
url("https://use.typekit.net/af/038dc3/00000000000000007735b127/30/a?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=i7&v=3")
format("opentype");
font-display: auto;
font-style: italic;
font-weight: 700;
font-stretch: normal;
}
@font-face {
font-family:"input-mono";
src:url("https://use.typekit.net/af/62782e/00000000000000007735b12a/30/l?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n7&v=3") format("woff2"),url("https://use.typekit.net/af/62782e/00000000000000007735b12a/30/d?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n7&v=3") format("woff"),url("https://use.typekit.net/af/62782e/00000000000000007735b12a/30/a?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n7&v=3") format("opentype");
font-display:auto;font-style:normal;font-weight:700;font-stretch:normal;
font-family: "input-mono";
src: url("https://use.typekit.net/af/62782e/00000000000000007735b12a/30/l?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n7&v=3")
format("woff2"),
url("https://use.typekit.net/af/62782e/00000000000000007735b12a/30/d?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n7&v=3")
format("woff"),
url("https://use.typekit.net/af/62782e/00000000000000007735b12a/30/a?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n7&v=3")
format("opentype");
font-display: auto;
font-style: normal;
font-weight: 700;
font-stretch: normal;
}
@font-face {
font-family:"input-mono";
src:url("https://use.typekit.net/af/e16354/00000000000000007735b12f/30/l?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n8&v=3") format("woff2"),url("https://use.typekit.net/af/e16354/00000000000000007735b12f/30/d?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n8&v=3") format("woff"),url("https://use.typekit.net/af/e16354/00000000000000007735b12f/30/a?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n8&v=3") format("opentype");
font-display:auto;font-style:normal;font-weight:800;font-stretch:normal;
font-family: "input-mono";
src: url("https://use.typekit.net/af/e16354/00000000000000007735b12f/30/l?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n8&v=3")
format("woff2"),
url("https://use.typekit.net/af/e16354/00000000000000007735b12f/30/d?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n8&v=3")
format("woff"),
url("https://use.typekit.net/af/e16354/00000000000000007735b12f/30/a?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n8&v=3")
format("opentype");
font-display: auto;
font-style: normal;
font-weight: 800;
font-stretch: normal;
}
@font-face {
font-family:"input-mono";
src:url("https://use.typekit.net/af/e049ab/00000000000000007735b134/30/l?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=i8&v=3") format("woff2"),url("https://use.typekit.net/af/e049ab/00000000000000007735b134/30/d?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=i8&v=3") format("woff"),url("https://use.typekit.net/af/e049ab/00000000000000007735b134/30/a?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=i8&v=3") format("opentype");
font-display:auto;font-style:italic;font-weight:800;font-stretch:normal;
font-family: "input-mono";
src: url("https://use.typekit.net/af/e049ab/00000000000000007735b134/30/l?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=i8&v=3")
format("woff2"),
url("https://use.typekit.net/af/e049ab/00000000000000007735b134/30/d?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=i8&v=3")
format("woff"),
url("https://use.typekit.net/af/e049ab/00000000000000007735b134/30/a?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=i8&v=3")
format("opentype");
font-display: auto;
font-style: italic;
font-weight: 800;
font-stretch: normal;
}
@font-face {
font-family: 'Poppins';
src: url('../../static/fonts/poppins/Poppins-Regular.ttf') format('truetype');
font-family: "Poppins";
src: url("../../static/fonts/poppins/Poppins-Regular.ttf") format("truetype");
font-weight: normal;
font-style: normal;
font-display: swap;
}
:root {
color: #415364;
--ifm-color-primary: #0033a1;
@@ -120,24 +227,22 @@ font-display:auto;font-style:italic;font-weight:800;font-stretch:normal;
--dev-boarder-color-theme: black;
--dev-text-color-normal: #415364;
--dev-secondary-text:#415364;
--dev-secondary-text: #415364;
/*card css*/
--dev-card-background: #ffffff;
--dev-card-shadow: 0px 20px 60px #00000015;
--dev-card-selected: 0 4px 5px rgba(0,0,0,0.2);
--dev-card-selected: 0 4px 5px rgba(0, 0, 0, 0.2);
--ifm-github-logo: url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M12 .297c-6.63 0-12 5.373-12 12 0 5.303 3.438 9.8 8.205 11.385.6.113.82-.258.82-.577 0-.285-.01-1.04-.015-2.04-3.338.724-4.042-1.61-4.042-1.61C4.422 18.07 3.633 17.7 3.633 17.7c-1.087-.744.084-.729.084-.729 1.205.084 1.838 1.236 1.838 1.236 1.07 1.835 2.809 1.305 3.495.998.108-.776.417-1.305.76-1.605-2.665-.3-5.466-1.332-5.466-5.93 0-1.31.465-2.38 1.235-3.22-.135-.303-.54-1.523.105-3.176 0 0 1.005-.322 3.3 1.23.96-.267 1.98-.399 3-.405 1.02.006 2.04.138 3 .405 2.28-1.552 3.285-1.23 3.285-1.23.645 1.653.24 2.873.12 3.176.765.84 1.23 1.91 1.23 3.22 0 4.61-2.805 5.625-5.475 5.92.42.36.81 1.096.81 2.22 0 1.606-.015 2.896-.015 3.286 0 .315.21.69.825.57C20.565 22.092 24 17.592 24 12.297c0-6.627-5.373-12-12-12'/%3E%3C/svg%3E");
--ifm-medium-logo: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="24px" height="24px" viewBox="0 0 1770 1000"><circle cx="500" cy="500" r="500"/><ellipse ry="475" rx="250" cy="501" cx="1296"/><ellipse cx="1682" cy="502" rx="88" ry="424"/></svg>');
--dev-sailpoint-small-logo: url("../../static/img/SailPoint-Logo-RGB-Color.png");
--ifm-font-family-base: 'Poppins';
--ifm-font-family-base: "Poppins";
}
/* For readability concerns, you should choose a lighter palette in dark mode. */
[data-theme='dark'] {
[data-theme="dark"] {
color: #ffffff;
--ifm-color-primary: #7ecfee;
--ifm-color-primary-dark: #5ec3ea;
@@ -154,9 +259,9 @@ font-display:auto;font-style:italic;font-weight:800;font-stretch:normal;
/*card css*/
--dev-card-background: #2a2b2d;
--dev-card-shadow: 0 4px 5px rgba(0,0,0,0.2);
--dev-card-shadow: 0 4px 5px rgba(0, 0, 0, 0.2);
--dev-card-selected: 0 5px 5px rgba(107, 107, 107, 0.2);
--dev-secondary-text:#dae1e9;
--dev-secondary-text: #dae1e9;
/*main hero card*/
--main-hero-card-background: #202122;
@@ -177,9 +282,6 @@ font-display:auto;font-style:italic;font-weight:800;font-stretch:normal;
}
}
.navbar__title {
color: var(--dev-text-color-cobalt);
margin-top: 9px;
@@ -187,14 +289,13 @@ font-display:auto;font-style:italic;font-weight:800;font-stretch:normal;
font-weight: 400;
}
/* Sidebar Method labels */
.api-method>.menu__link {
.api-method > .menu__link {
align-items: center;
justify-content: start;
}
.api-method>.menu__link::before {
.api-method > .menu__link::before {
width: 50px;
height: 20px;
font-size: 12px;
@@ -210,27 +311,27 @@ font-display:auto;font-style:italic;font-weight:800;font-stretch:normal;
color: white;
}
.get>.menu__link::before {
.get > .menu__link::before {
content: "get";
background-color: var(--ifm-color-primary);
}
.put>.menu__link::before {
.put > .menu__link::before {
content: "put";
background-color: var(--openapi-code-blue);
}
.post>.menu__link::before {
.post > .menu__link::before {
content: "post";
background-color: var(--openapi-code-green);
}
.delete>.menu__link::before {
.delete > .menu__link::before {
content: "del";
background-color: var(--openapi-code-red);
}
.patch>.menu__link::before {
.patch > .menu__link::before {
content: "patch";
background-color: var(--openapi-code-orange);
}
@@ -267,9 +368,9 @@ html[data-theme="dark"] .header-github-link:before {
filter: invert();
}
.navbar__section{
.navbar__section {
font-weight: bolder;
cursor:inherit;
cursor: inherit;
background-color: transparent !important;
border-radius: 0;
border-bottom: 1px solid var(--ifm-color-emphasis-400);

View File

@@ -1,6 +1,8 @@
export async function getTopPosts() {
try {
const response = await fetch('https://developer.sailpoint.com/discuss/top.json');
const response = await fetch(
"https://developer.sailpoint.com/discuss/top.json"
);
return await response.json();
} catch (error) {
return [];

View File

@@ -1,4 +1,4 @@
export function addDarkToFileName(filename) {
const parts = filename.split(".");
return parts[0] + '-dark.' + parts[1]
return parts[0] + "-dark." + parts[1];
}