chore: Replace references to deprecated services
This commit is contained in:
@@ -26,7 +26,7 @@ export const baseOptions: BaseLayoutProps = {
|
||||
{
|
||||
icon: <AppWindowIcon />,
|
||||
text: 'Dashboard',
|
||||
url: 'https://app.useplunk.com',
|
||||
url: 'https://next-app.useplunk.com',
|
||||
},
|
||||
{
|
||||
icon: <GithubIcon />,
|
||||
|
||||
@@ -25,23 +25,23 @@ export default function Layout({children}: {children: ReactNode}) {
|
||||
|
||||
{/* Open Graph / Facebook */}
|
||||
<meta property="og:type" content="website" />
|
||||
<meta property="og:url" content="https://docs.useplunk.com/" />
|
||||
<meta property="og:url" content="https://next-wiki.useplunk.com/" />
|
||||
<meta property="og:title" content="Plunk Documentation" />
|
||||
<meta
|
||||
property="og:description"
|
||||
content="Documentation for Plunk, the open-source email platform. Learn how to integrate Plunk into your application and manage your email communications."
|
||||
/>
|
||||
<meta property="og:image" content="https://docs.useplunk.com/assets/card.png" />
|
||||
<meta property="og:image" content="https://next-wiki.useplunk.com/assets/card.png" />
|
||||
|
||||
{/* Twitter */}
|
||||
<meta property="twitter:card" content="summary_large_image" />
|
||||
<meta property="twitter:url" content="https://docs.useplunk.com/" />
|
||||
<meta property="twitter:url" content="https://next-wiki.useplunk.com/" />
|
||||
<meta property="twitter:title" content="Plunk Documentation" />
|
||||
<meta
|
||||
property="twitter:description"
|
||||
content="Documentation for Plunk, the open-source email platform. Learn how to integrate Plunk into your application and manage your email communications."
|
||||
/>
|
||||
<meta property="twitter:image" content="https://docs.useplunk.com/assets/card.png" />
|
||||
<meta property="twitter:image" content="https://next-wiki.useplunk.com/assets/card.png" />
|
||||
|
||||
{/* Fonts */}
|
||||
<link rel="preconnect" href="https://fonts.googleapis.com" />
|
||||
|
||||
@@ -29,7 +29,7 @@ const getRuntimeEnv = (key: keyof NonNullable<typeof window.__ENV__>) => {
|
||||
};
|
||||
|
||||
export function ApiUrl({path = ''}: {path?: string}) {
|
||||
const baseUrl = getRuntimeEnv('API_URI') || process.env.NEXT_PUBLIC_API_URI || 'https://api.useplunk.com';
|
||||
const baseUrl = getRuntimeEnv('API_URI') || process.env.NEXT_PUBLIC_API_URI || 'https://next-api.useplunk.com';
|
||||
return (
|
||||
<code>
|
||||
{baseUrl}
|
||||
@@ -40,7 +40,7 @@ export function ApiUrl({path = ''}: {path?: string}) {
|
||||
|
||||
export function DashboardUrl({path = ''}: {path?: string}) {
|
||||
const baseUrl =
|
||||
getRuntimeEnv('DASHBOARD_URI') || process.env.NEXT_PUBLIC_DASHBOARD_URI || 'https://app.useplunk.com';
|
||||
getRuntimeEnv('DASHBOARD_URI') || process.env.NEXT_PUBLIC_DASHBOARD_URI || 'https://next-app.useplunk.com';
|
||||
return (
|
||||
<code>
|
||||
{baseUrl}
|
||||
|
||||
@@ -303,7 +303,7 @@ Successful API requests return a standardized format with `success: true` and a
|
||||
|
||||
```typescript
|
||||
try {
|
||||
const response = await fetch('https://api.useplunk.com/v1/track', {
|
||||
const response = await fetch('https://next-api.useplunk.com/v1/track', {
|
||||
method: 'POST',
|
||||
headers: {
|
||||
'Authorization': `Bearer ${publicKey}`,
|
||||
@@ -361,7 +361,7 @@ try {
|
||||
import requests
|
||||
|
||||
response = requests.post(
|
||||
'https://api.useplunk.com/v1/track',
|
||||
'https://next-api.useplunk.com/v1/track',
|
||||
headers={
|
||||
'Authorization': f'Bearer {public_key}',
|
||||
'Content-Type': 'application/json'
|
||||
@@ -426,7 +426,7 @@ Request IDs are included in:
|
||||
|
||||
```javascript
|
||||
// Example: Logging request ID in your application
|
||||
const response = await fetch('https://api.useplunk.com/v1/send', {
|
||||
const response = await fetch('https://next-api.useplunk.com/v1/send', {
|
||||
// ... your request
|
||||
});
|
||||
|
||||
|
||||
@@ -1,24 +1,20 @@
|
||||
import { visit } from 'unist-util-visit';
|
||||
import {visit} from 'unist-util-visit';
|
||||
|
||||
// Default URLs that will be replaced at container startup by sed
|
||||
const API_URL = process.env.NEXT_PUBLIC_API_URI || 'https://api.useplunk.com';
|
||||
const DASHBOARD_URL = process.env.NEXT_PUBLIC_DASHBOARD_URI || 'https://app.useplunk.com';
|
||||
const API_URL = process.env.NEXT_PUBLIC_API_URI || 'https://next-api.useplunk.com';
|
||||
const DASHBOARD_URL = process.env.NEXT_PUBLIC_DASHBOARD_URI || 'https://next-app.useplunk.com';
|
||||
|
||||
export function remarkReplaceEnv() {
|
||||
return (tree) => {
|
||||
visit(tree, ['code', 'inlineCode', 'text', 'link'], (node) => {
|
||||
return tree => {
|
||||
visit(tree, ['code', 'inlineCode', 'text', 'link'], node => {
|
||||
// Replace in text values
|
||||
if (node.value && typeof node.value === 'string') {
|
||||
node.value = node.value
|
||||
.replace(/\{\{API_URL\}\}/g, API_URL)
|
||||
.replace(/\{\{DASHBOARD_URL\}\}/g, DASHBOARD_URL);
|
||||
node.value = node.value.replace(/\{\{API_URL\}\}/g, API_URL).replace(/\{\{DASHBOARD_URL\}\}/g, DASHBOARD_URL);
|
||||
}
|
||||
|
||||
// Replace in link URLs
|
||||
if (node.url && typeof node.url === 'string') {
|
||||
node.url = node.url
|
||||
.replace(/\{\{API_URL\}\}/g, API_URL)
|
||||
.replace(/\{\{DASHBOARD_URL\}\}/g, DASHBOARD_URL);
|
||||
node.url = node.url.replace(/\{\{API_URL\}\}/g, API_URL).replace(/\{\{DASHBOARD_URL\}\}/g, DASHBOARD_URL);
|
||||
}
|
||||
});
|
||||
};
|
||||
|
||||
@@ -13,7 +13,7 @@ const __dirname = path.dirname(__filename);
|
||||
function findMdxFiles(dir, fileList = []) {
|
||||
const files = fs.readdirSync(dir);
|
||||
|
||||
files.forEach((file) => {
|
||||
files.forEach(file => {
|
||||
const filePath = path.join(dir, file);
|
||||
const stat = fs.statSync(filePath);
|
||||
|
||||
@@ -46,7 +46,7 @@ function filePathToUrl(filePath) {
|
||||
}
|
||||
|
||||
const config = {
|
||||
siteUrl: process.env.NEXT_PUBLIC_WIKI_URI || 'https://docs.useplunk.com',
|
||||
siteUrl: process.env.NEXT_PUBLIC_WIKI_URI || 'https://next-wiki.useplunk.com',
|
||||
generateRobotsTxt: true,
|
||||
additionalPaths: async () => {
|
||||
const contentDocsPath = path.join(__dirname, 'content', 'docs');
|
||||
@@ -55,7 +55,7 @@ const config = {
|
||||
const mdxFiles = findMdxFiles(contentDocsPath);
|
||||
|
||||
// Convert to sitemap entries
|
||||
return mdxFiles.map((filePath) => ({
|
||||
return mdxFiles.map(filePath => ({
|
||||
loc: filePathToUrl(filePath),
|
||||
changefreq: 'weekly',
|
||||
priority: 0.7,
|
||||
|
||||
+15
-13
@@ -6,12 +6,12 @@
|
||||
"version": "1.0.0",
|
||||
"contact": {
|
||||
"name": "Plunk Support",
|
||||
"url": "https://useplunk.com"
|
||||
"url": "https://next.useplunk.com"
|
||||
}
|
||||
},
|
||||
"servers": [
|
||||
{
|
||||
"url": "https://api.useplunk.com",
|
||||
"url": "https://next-api.useplunk.com",
|
||||
"description": "Production server"
|
||||
}
|
||||
],
|
||||
@@ -694,7 +694,16 @@
|
||||
"description": "Array of human-readable reasons describing the verification results"
|
||||
}
|
||||
},
|
||||
"required": ["email", "valid", "isDisposable", "isTypo", "isPlusAddressed", "domainExists", "hasMxRecords", "reasons"]
|
||||
"required": [
|
||||
"email",
|
||||
"valid",
|
||||
"isDisposable",
|
||||
"isTypo",
|
||||
"isPlusAddressed",
|
||||
"domainExists",
|
||||
"hasMxRecords",
|
||||
"reasons"
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
@@ -711,9 +720,7 @@
|
||||
"isPlusAddressed": false,
|
||||
"domainExists": true,
|
||||
"hasMxRecords": true,
|
||||
"reasons": [
|
||||
"Email appears to be valid"
|
||||
]
|
||||
"reasons": ["Email appears to be valid"]
|
||||
}
|
||||
}
|
||||
},
|
||||
@@ -730,10 +737,7 @@
|
||||
"domainExists": false,
|
||||
"hasMxRecords": false,
|
||||
"suggestedEmail": "[email protected]",
|
||||
"reasons": [
|
||||
"Possible typo detected, did you mean gmail.com?",
|
||||
"Domain does not exist"
|
||||
]
|
||||
"reasons": ["Possible typo detected, did you mean gmail.com?", "Domain does not exist"]
|
||||
}
|
||||
}
|
||||
},
|
||||
@@ -749,9 +753,7 @@
|
||||
"isPlusAddressed": false,
|
||||
"domainExists": true,
|
||||
"hasMxRecords": true,
|
||||
"reasons": [
|
||||
"Email appears to be valid"
|
||||
]
|
||||
"reasons": ["Email appears to be valid"]
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user