Merge pull request #60 from sailpoint-oss/feature/conf

Feature/conf adding the conference site and fixed links
This commit is contained in:
Philip Ellis
2022-09-28 16:17:43 -04:00
committed by GitHub
41 changed files with 765 additions and 58 deletions

View File

@@ -11,7 +11,7 @@ jobs:
NODE_ENV: 'development'
steps:
- uses: actions/checkout@v2
- run: npm install && npm run docusaurus gen-api-docs all && npm run build
- run: npm install && npm run gen-api-docs-all && npm run build
- uses: FirebaseExtended/action-hosting-deploy@v0
with:
repoToken: '${{ secrets.GITHUB_TOKEN }}'

View File

@@ -15,9 +15,9 @@ const config = {
url: "https://developer.sailpoint.com",
baseUrl,
favicon: "img/SailPoint-Logo-Icon.ico",
onBrokenLinks: "warn",
onBrokenMarkdownLinks: "warn",
onDuplicateRoutes: "warn",
onBrokenLinks: "throw",
onBrokenMarkdownLinks: "throw",
onDuplicateRoutes: "throw",
i18n: {
defaultLocale: "en",
locales: ["en"],

38
package-lock.json generated
View File

@@ -12,6 +12,7 @@
"@docusaurus/plugin-google-gtag": "^2.0.1",
"@docusaurus/preset-classic": "2.0.1",
"@mdx-js/react": "^1.6.22",
"@typeform/embed-react": "^1.21.0",
"clsx": "^1.1.1",
"docusaurus-plugin-openapi-docs": "^1.2.0",
"docusaurus-theme-openapi-docs": "^1.2.0",
@@ -3279,6 +3280,29 @@
"node": ">=10.13.0"
}
},
"node_modules/@typeform/embed": {
"version": "1.38.0",
"resolved": "https://registry.npmjs.org/@typeform/embed/-/embed-1.38.0.tgz",
"integrity": "sha512-qYxtwckEcRt++F1sUeILb/qmUFQ3PwcUxKedCBSseC8lFo1ukD1wmsBf+Il8YSRPKPqhTrGUG5WPaJg83n1xuw==",
"engines": {
"node": ">=10"
}
},
"node_modules/@typeform/embed-react": {
"version": "1.21.0",
"resolved": "https://registry.npmjs.org/@typeform/embed-react/-/embed-react-1.21.0.tgz",
"integrity": "sha512-nZi7OD5mxZUKQjkzxAll05JU6QNWuHuCE+L/S1Vagy7fgb/rdx4iEIfvqFogTcrVw61bCS6TaAJ+ateD7vR7sw==",
"dependencies": {
"@typeform/embed": "1.38.0",
"fast-deep-equal": "^3.1.3"
},
"engines": {
"node": ">=10"
},
"peerDependencies": {
"react": ">=16.8.0"
}
},
"node_modules/@types/body-parser": {
"version": "1.19.2",
"resolved": "https://registry.npmjs.org/@types/body-parser/-/body-parser-1.19.2.tgz",
@@ -17310,6 +17334,20 @@
"resolved": "https://registry.npmjs.org/@trysound/sax/-/sax-0.2.0.tgz",
"integrity": "sha512-L7z9BgrNEcYyUYtF+HaEfiS5ebkh9jXqbszz7pC0hRBPaatV0XjSD3+eHrpqFemQfgwiFF0QPIarnIihIDn7OA=="
},
"@typeform/embed": {
"version": "1.38.0",
"resolved": "https://registry.npmjs.org/@typeform/embed/-/embed-1.38.0.tgz",
"integrity": "sha512-qYxtwckEcRt++F1sUeILb/qmUFQ3PwcUxKedCBSseC8lFo1ukD1wmsBf+Il8YSRPKPqhTrGUG5WPaJg83n1xuw=="
},
"@typeform/embed-react": {
"version": "1.21.0",
"resolved": "https://registry.npmjs.org/@typeform/embed-react/-/embed-react-1.21.0.tgz",
"integrity": "sha512-nZi7OD5mxZUKQjkzxAll05JU6QNWuHuCE+L/S1Vagy7fgb/rdx4iEIfvqFogTcrVw61bCS6TaAJ+ateD7vR7sw==",
"requires": {
"@typeform/embed": "1.38.0",
"fast-deep-equal": "^3.1.3"
}
},
"@types/body-parser": {
"version": "1.19.2",
"resolved": "https://registry.npmjs.org/@types/body-parser/-/body-parser-1.19.2.tgz",

View File

@@ -24,6 +24,7 @@
"@docusaurus/plugin-google-gtag": "^2.0.1",
"@docusaurus/preset-classic": "2.0.1",
"@mdx-js/react": "^1.6.22",
"@typeform/embed-react": "^1.21.0",
"clsx": "^1.1.1",
"docusaurus-plugin-openapi-docs": "^1.2.0",
"docusaurus-theme-openapi-docs": "^1.2.0",

View File

@@ -658,7 +658,7 @@ You can also view all of the active clients in the UI by going to
4. If using an A[Authorization Code](#authorization-code-grant-flow) flow,
verify the redirect URL(s) for your application match the `redirectUris`
value in the client. You can check this using the
[oauth-clients endpoint](/idn/api/beta/list-oauth-client).
[oauth-clients endpoint](/idn/api/beta/list-oauth-clients).
5. **Verify the OAuth 2.0 Calls**

View File

@@ -66,7 +66,7 @@ A webhook in web development is a method of augmenting or altering the behavior
of a web page or web application with custom callbacks. These callbacks may be
maintained, modified, and managed by third-party users and developers who may
not necessarily be affiliated with the originating website or application. Our
[Event Triggers](docs/identity-now/event-triggers) are a form of webhook, for
[Event Triggers](docs/event-triggers) are a form of webhook, for
example.
[Learn more about webhooks here](https://zapier.com/blog/what-are-webhooks/).

View File

@@ -61,8 +61,8 @@ All submitted rules must follow proper rule submission guidelines.
- Check whether your rule follows SailPoint best practice guidance, and ensure that you have
considered other product features first.
- **Rule Quality**
- Rules must follow the [Rule Guidelines](../rule_guide#rule-guidelines)
and [Code Restrictions](../rule_guide#rule-code-restrictions)
- Rules must follow the [Rule Guidelines](../index.md#rule-guidelines)
and [Code Restrictions](../index.md#rule-code-restrictions)
- Rules must be adequately tested prior to submission.
- **Documentation**
- Include detailed comments for non-obvious features in the configurations,

View File

@@ -31,12 +31,12 @@ For more details, see [Configuration Process](#configuration-process).
| Rule Name | Rule Type | Source Type(s) | Purpose |
| --------------------------------------------------- | ---------------------------------------------------- | ---------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| [Before Creation Rule](before_after_operation_rule) | [ConnectorBeforeCreate](before_after_operation_rule) | 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) | [ConnectorBeforeModify](before_after_operation_rule) | 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) | [ConnectorBeforeDelete](before_after_operation_rule) | Active Directory, Azure Active Directory | Executes PowerShell commands on the IQService component before a source account is deleted. |
| [After Creation Rule](before_after_operation_rule) | [ConnectorAfterCreate](before_after_operation_rule) | Active Directory, Azure Active Directory | Executes PowerShell commands on the IQService component after a source account is created. |
| [After Modify Rule](before_after_operation_rule) | [ConnectorAfterModify](before_after_operation_rule) | Active Directory, Azure Active Directory | Executes PowerShell commands on the IQService component after a source account is modified. |
| [After Delete Rule](before_after_operation_rule) | [ConnectorAfterDelete](before_after_operation_rule) | Active Directory, Azure Active Directory | Executes PowerShell commands on the IQService component after a source account is deleted. |
| [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. |
| [After Creation Rule](./before_after_operation_rule.md) | [ConnectorAfterCreate](./before_after_operation_rule.md) | Active Directory, Azure Active Directory | Executes PowerShell commands on the IQService component after a source account is created. |
| [After Modify Rule](./before_after_operation_rule.md) | [ConnectorAfterModify](./before_after_operation_rule.md) | Active Directory, Azure Active Directory | Executes PowerShell commands on the IQService component after a source account is modified. |
| [After Delete Rule](./before_after_operation_rule.md) | [ConnectorAfterDelete](./before_after_operation_rule.md) | Active Directory, Azure Active Directory | Executes PowerShell commands on the IQService component after a source account is deleted. |
| Build Map Rule | BuildMap | Delimited File | Calculates and transforms data from a parsed file during the aggregation process. _Note: This is only available for the Delimited File source type, not Generic source types._ |
| JDBC Build Map Rule | JDBCBuildMap | JDBC | Calculates and transforms data from a database query result during the aggregation process. It can also perform additional calls back to the database. _Note: This rule is available for the JDBC Generic source, as well as other sources that derive from the JDBC connector (e.g., Oracle EBS, PeopleSoft, etc.)_ |
| JDBC Provision Rule | JDBCProvision | JDBC | Executes database queries to perform provisioning of account and access for all account operations. |
@@ -63,7 +63,7 @@ which provide ability to interact with rules directly.
SailPoint architectural optimizations have added resiliency and protections
against malformed or long-running rules. These APIs also offer built-in
protection and checking against potentially harmful code. For more information,
see [Rule Code Restrictions](../rule_guide.md#rule-code-restrictions).
see [Rule Code Restrictions](../../rules/index.md#rule-code-restrictions).
## Connector Rule Object Model

View File

@@ -16,4 +16,4 @@ tags: ["Connectivity", "Postman"]
Use the following Postman Collection file to run tests for each of the commands
locally.
[Postman Collection](../../../files/collection.json)
[Postman Collection](./assets/SaaS_Connectivity.postman_collection)

View File

@@ -531,9 +531,9 @@ To verify your transform is working, create the transfrom through the REST API.
To call the APIs for transforms, you need a personal access token and your
tenant's name to provide with the request. For more information about how to get
a personal access token, see
[Personal Access Tokens](/idn/docs/getting-started/authentication#personal-access-tokens).
[Personal Access Tokens](../../../../api/authentication.md#personal-access-tokens).
For more information about how to get the name of your tenant, see
[Finding Your Organization Tenant Name](/idn/docs/getting-started#finding-your-orgtenant-name).
[Finding Your Organization Tenant Name](../../../../api/getting-started.md#find-your-tenant-name).
```bash
curl --location --request POST 'https://{tenant}.api.identitynow.com/v3/transforms' \

View File

@@ -1,10 +1,39 @@
import React from "react";
import clsx from "clsx";
import styles from "./styles.module.css";
import Link from '@docusaurus/Link';
import useBaseUrl from '@docusaurus/useBaseUrl';
import ThemedImage from '@theme/ThemedImage';
import { addDarkToFileName } from "../../../util/util";
import { SliderButton } from '@typeform/embed-react'
export default function ConferenceHero() {
const communication = '/conf/communication.svg'
return (
<div className={styles.mainCard}>
<div>
<div className={styles.headerSection}>
<div className={styles.shipyardText}>
Shipyard
</div>
<div className={styles.yearTextBorder}>
<div className={styles.yearText}>
2023
</div>
</div>
</div>
<div className={styles.comingSoonText}>
COMING SOON | AUSTIN, TX
</div>
<div className={styles.descriptionText}>
The conference for <span className={styles.extensible}>extensibility</span> on <span className={styles.sailpoint}>SailPoint</span> platforms.
</div>
<SliderButton id="gVCODdMc" className={styles.button}>
Learn More
</SliderButton >
</div>
<div className={styles.signUpSection}>
<ThemedImage className={styles.background} sources={{light: useBaseUrl(communication), dark: useBaseUrl(communication)}}></ThemedImage>
</div>
</div>
);
}

View File

@@ -0,0 +1,119 @@
.mainCard {
margin: 10px 100px;
display: grid;
grid-gap: 20px;
grid-template-columns: 900px auto;
align-content: center;
}
.background {
width: 760px;
height: 600px;
}
.signUpSection {
min-width: 368px;
width: 368px;
margin: 30px auto;
}
@media only screen and (max-width: 1324px) {
.signUpSection {
display: none;
}
}
.headerSection {
display: grid;
grid-gap: 0px;
grid-template-columns: 517px 330px;
}
.shipyardText {
margin-top: 70px;
font-size: 100px;
color: var(--dev-text-color-cobalt);
font-family: input-mono;
}
.yearText {
color: var(--dev-text-color-cobalt);
font-size: 100px;
font-family: input-mono;
font-weight: bold;
}
.yearTextBorder {
margin-top: 70px;
width: 330px;
height: 149px;
/* UI Properties */
border: 4px solid var(--dev-text-color-cobalt);
border-radius: 45px;
opacity: 1;
line-height: 149px;
text-align: center;
}
.comingSoonText {
color: var(--dev-text-color-cobalt);
font-size: 22px;
font-family: input-mono;;
letter-spacing: 5.5px;
margin-top: -17px;
}
.descriptionText {
margin-top: 20px;
color: var(--ifm-color-primary);
font-size: 36px;
}
.extensible {
font-size: 48px;
font-weight: bold;
}
.sailpoint {
font-weight: 600;
}
@media only screen and (max-width: 980px) {
.mainCard {
display: none;
}
}
.button {
text-decoration: none;
text-align: center;
margin: 10px auto;
font-size: 20px;
font-weight: bold;
line-height: 100%;
color: #df61ca;
/* Layout Properties */
margin-top: 20px;
width: 360px;
height: 52px;
line-height: 52px;
/* UI Properties */
background: transparent 0% 0% no-repeat padding-box;
opacity: 1;
box-shadow: 0px 20px 60px #00000015;
border: 2px solid #df61ca;
border-radius: 5px;
}
.button:hover {
cursor: pointer;
top: -2px;
box-shadow: 0 4px 5px rgba(0,0,0,0.2);
background-color: #c552ae10;
color: #cc27b0;
}

View File

@@ -0,0 +1,18 @@
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}) {
return (
<Link to={link}>
<div className={styles.card}>
<div className={styles.cardFaceContainer}>
<img className={styles.cardFace} src={useBaseUrl(image)}></img>
</div>
<div className={styles.cardText}>{name}</div>
</div>
</Link>
);
}

View File

@@ -0,0 +1,54 @@
/* Getting Started Card */
.card {
position:relative;
margin-top: 20px;
height: 200px;
/* UI Properties */
background: var(--dev-card-background);
opacity: 1;
}
.cardText {
position:absolute;
margin: 22px auto;
text-align: center;
font-size: 16px;
font-weight: 500;
width: 100%;
top: 116px;
left: 0;
color: var(--dev-text-color-normal);
}
.titleText {
position:absolute;
margin: 22px auto;
text-align: center;
font-size: 10px;
font-weight: 400;
width: 100%;
letter-spacing: 2px;
top: 150px;
left: 0;
color: var(--dev-text-color-normal);
}
.cardFaceContainer {
width: 100%;
margin: 40px auto;
}
.cardFace {
justify-content: center;
display: flex;
margin: auto;
height: 100px;
width: 100px;
}

View File

@@ -1,10 +1,26 @@
import React from "react";
import clsx from "clsx";
import ConferenceTitle from '../Title'
import styles from "./styles.module.css";
import Link from '@docusaurus/Link';
import SpeakerCard from "../SpeakerCard";
export default function ConferenceSpeakers() {
return (
<div>
<div className={styles.main}>
<ConferenceTitle
description={"Take a sneak peek at our upcoming lineup of expert guests"}
title={"Speakers"}
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>
</div>
</div>
</div>
);
}

View File

@@ -0,0 +1,21 @@
.gridContainer {
display: grid;
place-content: center;
grid-template-columns: repeat(auto-fit, minmax(190px, 1fr));
grid-gap: 40px;
margin-left: 40px;
margin-right: 40px;
background: var(--dev-card-background);
box-shadow: var(--dev-card-shadow);
border: 1px solid var(--dev-card-background);
border-radius: 40px;
}
.center {
margin: 50px auto;
max-width: 1000px;
}
.main {
margin-top: 100px;
}

View File

@@ -1,10 +1,28 @@
import React from "react";
import clsx from "clsx";
import ConferenceTitle from '../Title'
import ThemeCard from '../ThemeCard'
import styles from "./styles.module.css";
import Link from '@docusaurus/Link';
export default function ConferenceTheme() {
return (
<div>
<ConferenceTitle
description={"What can you expect at the upcoming conference?"}
title={"What to Expect"}
image={"/conf/calendar-star.png"}>
</ConferenceTitle>
<div className={styles.center}>
<div className={styles.gridContainer}>
<ThemeCard name={"DEEP DIVE"} title={"A deep dive into the SailPoint platform"} image={"/conf/webdev.svg"}></ThemeCard>
<ThemeCard name={"EXPERT ADVICE"} title={"The world's leading identity management speakers"} image={"/conf/travel.svg"}></ThemeCard>
</div>
);
</div>
<div className={styles.center}>
<div className={styles.gridContainer}>
<ThemeCard name={"WORKSHOPS"} title={"In-person classes and virtual tutorials"} image={"/conf/education.svg"}></ThemeCard>
<ThemeCard name={"VIRTUAL"} title={"Attend the conference from home and get full access"} image={"/conf/leisure.svg"}></ThemeCard>
</div>
</div>
</div>
);
}

View File

@@ -0,0 +1,13 @@
.gridContainer {
display: grid;
place-content: center;
grid-template-columns: repeat(auto-fit, minmax(190px, 1fr));
grid-gap: 40px;
margin-left: 40px;
margin-right: 40px;
}
.center {
margin: 50px auto;
max-width: 1000px;
}

View File

@@ -0,0 +1,18 @@
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 { addDarkToFileName } from "../../../util/util";
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}>{title}</div>
</div>
);
}

View File

@@ -0,0 +1,59 @@
/* Getting Started Card */
.card {
position:relative;
margin-top: 20px;
height: 493px;
max-width: 474px;
/* UI Properties */
background: var(--dev-card-background);
box-shadow: var(--dev-card-shadow);
border: 1px solid var(--dev-card-background);
border-radius: 40px;
opacity: 1;
}
.cardText {
position:absolute;
margin: 22px auto;
text-align: center;
font-size: 24px;
font-weight: bold;
width: 100%;
top: 36px;
left: 0;
color: #CC27B0;
font-family: input-mono;
}
.titleText {
position:absolute;
margin: 22px auto;
padding: 0px calc(15%);
text-align: center;
font-size: 16px;
font-weight: 400;
width: 100%;
top: 340px;
left: 0;
letter-spacing: 0px;
color: var(--ifm-color-primary);
font-family: input-mono;
}
.cardFaceContainer {
width: 100%;
margin: 70px auto;
padding: 20px;
}
.cardFace {
justify-content: center;
display: flex;
margin: auto;
height: 264px;
width: 264px;
}

View File

@@ -0,0 +1,14 @@
import React from "react";
import styles from "./styles.module.css";
import useBaseUrl from '@docusaurus/useBaseUrl';
import ThemedImage from '@theme/ThemedImage';
import { addDarkToFileName } from "../../../util/util";
export default function ConferenceTitle({image, title, description}) {
return (
<div className={styles.gettingStartedText}>
<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>
);
}

View File

@@ -0,0 +1,33 @@
.gettingStartedText {
text-align: center;
color: var(--dev-text-color-cobalt);
margin: 50px auto 50px auto;
width: calc(100% - 100px);
max-width: 600px;
}
.gettingStartedOne {
color: var(--dev-text-color-cobalt);
font-size: 30px;
font-weight: bold;
line-height: 100%;
font-family: input-mono;;
}
.gettingStartedThree {
margin-top: 20px;
font-size: 16px;
font-weight: 500;
}
.bold {
font-weight: bold;
}
.gettingStartedCardIcon {
margin-bottom: 20px;
width: 80px;
height: 80px;
}

View File

@@ -1,10 +1,43 @@
import React from "react";
import clsx from "clsx";
import styles from "./styles.module.css";
import Link from '@docusaurus/Link';
import useBaseUrl from '@docusaurus/useBaseUrl';
import ThemedImage from '@theme/ThemedImage';
import { addDarkToFileName } from "../../../util/util";
import { SliderButton } from '@typeform/embed-react'
export default function ConferenceWaitlist() {
const background = '/conf/Shipyard-WaveBackground.png'
const learnBuildDeploy = '/conf/LearnBuildDeploy-Light.png'
const shipyardImage = '/conf/SailPoint-Shipyard-DeveloperConference-Logo.png'
const sailpointImage = '/img/SailPoint-Logo-RGB-Color.png'
return (
<div className={styles.mainCard}>
<div>
<ThemedImage className={styles.background} sources={{light: useBaseUrl(background), dark: useBaseUrl(background)}}></ThemedImage>
<ThemedImage className={styles.learnDeployText} sources={{light: useBaseUrl(learnBuildDeploy), dark: useBaseUrl(learnBuildDeploy)}}></ThemedImage>
</div>
<div className={styles.signUpSection}>
<div className={styles.imageContainer}>
<ThemedImage className={styles.sailpointImage} sources={{light: useBaseUrl(sailpointImage), dark: useBaseUrl(addDarkToFileName(sailpointImage))}}></ThemedImage>
</div>
<div className={styles.imageContainer}>
<ThemedImage className={styles.shipyardLogo} sources={{light: useBaseUrl(shipyardImage), dark: useBaseUrl(addDarkToFileName(shipyardImage))}}></ThemedImage>
</div>
<div className={styles.welcomeContainer}>
Welcome
</div >
<div className={styles.welcomeText}>
Be the first to hear more about our innaugural conference for developers!
</div>
{/* <div className={styles.emailText}>
Email Address
</div>
<input className={styles.emailInput} type="text" id="fname" name="fname" placeholder="user.name@email.com"></input> */}
<SliderButton id="gVCODdMc" className={styles.button}>
Join the Waitlist
</SliderButton >
</div>
</div>
);
}

View File

@@ -0,0 +1,134 @@
.mainCard {
display: grid;
grid-gap: 20px;
grid-template-columns: 760px auto;
align-content: center;
margin-bottom: 80px;
}
.background {
width: 760px;
height: 600px;
}
.learnDeployText {
position: absolute;
left: 467px;
height: 196px;
top: 425px;
}
@media only screen and (max-width: 1324px) {
.mainCard {
grid-template-columns: auto;
}
.background {
width: 100%;
height: 265px;
}
.learnDeployText {
height: 187px;
right: 50px;
left: auto;
top: 99px;
}
}
.signUpSection {
min-width: 368px;
width: 368px;
margin: 30px auto;
}
.imageContainer {
text-align: center;
}
.shipyardLogo {
margin-top: 10px;
width: 368px;
height: 75px;
top: 50%;
left: 50%;
}
.sailpointImage {
margin-top: 70px;
width: 177px;
height: 38px;
text-align: center;
}
.welcomeContainer {
text-align: center;
margin-top: 70px;
font-size: 30px;
color: var(--ifm-color-primary);
font-weight: bold;
font-family: input-mono;;
}
.welcomeText {
width: 368px;
margin-top: 10px;
font-size: 14px;
color: var(--ifm-color-primary);
}
.emailText {
letter-spacing: 3.2px;
margin-top: 10px;
color: var(--ifm-color-primary);
font-family: input-mono;;
font-weight: bold;
font-size: 18px;
}
.emailInput {
margin-top: 8px;
box-shadow: inset 0px 3px 6px #00000029;
border: 1px solid #DFE3E7;
border-radius: 4px;
height: 52px;
width: 360px;
font-size: 20px;
padding-left: 15px;
}
.button {
text-decoration: none;
text-align: center;
margin: 10px auto;
font-size: 20px;
font-weight: bold;
line-height: 100%;
color: #df61ca;
/* Layout Properties */
margin-top: 20px;
width: 360px;
height: 52px;
line-height: 52px;
/* UI Properties */
background: transparent 0% 0% no-repeat padding-box;
opacity: 1;
box-shadow: 0px 20px 60px #00000015;
border: 2px solid #df61ca;
border-radius: 5px;
}
.button:hover {
cursor: pointer;
top: -2px;
box-shadow: 0 4px 5px rgba(0,0,0,0.2);
background-color: #c552ae10;
color: #cc27b0;
}
.link {
color: #df61ca;
}
.button:hover {
color: #df61ca;
cursor: pointer;
}

View File

@@ -6,6 +6,96 @@
/* 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-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-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-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-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-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-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-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-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-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-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-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-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-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-face {
font-family: 'Poppins';
src: url('../../static/fonts/poppins/Poppins-Regular.ttf') format('truetype');
@@ -27,7 +117,7 @@
--docusaurus-highlighted-code-line-bg: rgba(0, 0, 0, 0.1);
--dev-text-color-cobalt: #0033a1;
--dev-boarder-color-theme: black;
--dev-text-color-normal: black;
--dev-text-color-normal: #415364;
--dev-secondary-text:#415364;
@@ -53,10 +143,10 @@
--ifm-color-primary-lighter: #aee1f4;
--ifm-color-primary-lightest: #bee7f6;
--docusaurus-highlighted-code-line-bg: rgba(0, 0, 0, 0.3);
--dev-text-color-cobalt: #ffffff;
--dev-text-color-cobalt: #dae1e9;
--dev-boarder-color-theme: white;
--dev-sailpoint-small-logo: url("../../static/img/SailPoint-Logo-RGB-Inverse.png");
--dev-text-color-normal: #ffffff;
--dev-text-color-normal: #dae1e9;
/*card css*/
--dev-card-background: #2a2b2d;

View File

@@ -1,31 +1,23 @@
import React from 'react';
import clsx from 'clsx';
import Link from '@docusaurus/Link';
import useDocusaurusContext from '@docusaurus/useDocusaurusContext';
import Layout from '@theme/Layout';
import React from "react";
import clsx from "clsx";
import Link from "@docusaurus/Link";
import useDocusaurusContext from "@docusaurus/useDocusaurusContext";
import Layout from "@theme/Layout";
import Hero from '../components/conference/Hero';
import Waitlist from '../components/conference/Waitlist';
import Theme from '../components/conference/Theme';
import Speakers from '../components/conference/Speakers';
import Sponsors from '../components/conference/Sponsors';
import FAQ from '../components/conference/FAQ';
import Hero from "../components/conference/Hero";
import Waitlist from "../components/conference/Waitlist";
import Theme from "../components/conference/Theme";
import Speakers from "../components/conference/Speakers";
import Sponsors from "../components/conference/Sponsors";
import FAQ from "../components/conference/FAQ";
export default function Conference() {
const {siteConfig} = useDocusaurusContext();
const { siteConfig } = useDocusaurusContext();
return (
<Layout>
<main>
<Hero
title={"Shipyard 2023"}
description={"The conference for extensibility on SailPoint platforms. Whether you consider yourself a developer, if you write code: we do."}
image={"/conference/logo.png"}>
</Hero>
<Waitlist
title={"Coming Soon!"}
description={"Be the first to hear more about our first conference just for developers."}
buttonText={"Join the Waitlist"}>
</Waitlist>
<Waitlist></Waitlist>
<Hero></Hero>
<Theme></Theme>
<Speakers></Speakers>
<FAQ></FAQ>

View File

@@ -14,7 +14,9 @@ import styles from "./index.module.css";
export default function Home() {
const { siteConfig } = useDocusaurusContext();
return (
<Layout description="Description will go into a meta tag in <head />">
<main>
<HomepageGettingStarted />
<HomepageBasics

View File

@@ -21,7 +21,7 @@ export default function NotFound() {
<p>
Our docs and API specifications have recently movedcheckout the navbar at the top of this page to find their new home. If you can't find the document you're looking for, <a href="https://developer.sailpoint.com/discuss/docs-request" target="_blank" rel="noopener noreferrer">let us know</a>.
</p>
<img height="60%" src="img/not-found/codey.png"/>
<img height="60%" src="../img/not-found/codey.png"/>
</div>
</div>
</main>

View File

@@ -1169,7 +1169,7 @@
},
"/LaunchedWorkflows": {
"get": {
"operationId": "LaunchedWorkflows",
"operationId": "LaunchedWorkflowsGet",
"tags": [
"LaunchedWorkflows"
],
@@ -2250,7 +2250,7 @@
"/ServiceProviderConfig": {
"description": "Schema for representing the service provider's configuration",
"get": {
"operationId": "ServiceProviderConfig",
"operationId": "ServiceProviderConfigGet",
"tags": [
"ServiceProviderConfig"
],
@@ -2331,7 +2331,7 @@
},
"/TaskResults": {
"get": {
"operationId": "TaskResults",
"operationId": "TaskResultsGet",
"tags": [
"TaskResults"
],
@@ -2959,7 +2959,7 @@
},
"/Workflows": {
"get": {
"operationId": "Workflows",
"operationId": "WorkflowsGet",
"tags": [
"Workflows"
],

Binary file not shown.

After

Width:  |  Height:  |  Size: 18 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 22 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 25 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 494 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.5 KiB

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 35 KiB

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 15 KiB

1
static/conf/leisure.svg Normal file

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 21 KiB

1
static/conf/travel.svg Normal file

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 24 KiB

1
static/conf/webdev.svg Normal file

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 10 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 23 KiB