mirror of
https://github.com/TryGhost/Ghost.git
synced 2025-01-20 22:42:53 -05:00
parent
ab0c33346d
commit
089a3f7aaf
16 changed files with 1113 additions and 41 deletions
53
.github/workflows/admin-x-settings-tests.yml
vendored
Normal file
53
.github/workflows/admin-x-settings-tests.yml
vendored
Normal file
|
@ -0,0 +1,53 @@
|
|||
name: AdminX Settings Tests
|
||||
on:
|
||||
pull_request:
|
||||
paths:
|
||||
- 'ghost/admin-x-settings/**'
|
||||
push:
|
||||
branches:
|
||||
- main
|
||||
- 'v5.*'
|
||||
paths:
|
||||
- 'ghost/admin-x-settings/**'
|
||||
env:
|
||||
FORCE_COLOR: 1
|
||||
concurrency:
|
||||
group: ${{ github.workflow }}-${{ github.head_ref || github.run_id }}
|
||||
cancel-in-progress: true
|
||||
jobs:
|
||||
e2e:
|
||||
runs-on: ubuntu-latest
|
||||
if: github.event_name == 'push' || (github.event_name == 'pull_request' && !startsWith(github.head_ref, 'renovate/'))
|
||||
name: E2E
|
||||
env:
|
||||
CI: true
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- uses: actions/setup-node@v3
|
||||
env:
|
||||
FORCE_COLOR: 0
|
||||
with:
|
||||
node-version: "18.12.1"
|
||||
cache: yarn
|
||||
|
||||
- run: yarn --prefer-offline
|
||||
|
||||
- name: Install Playwright
|
||||
run: npx playwright install --with-deps
|
||||
|
||||
- run: yarn workspace @tryghost/admin-x-settings run test:e2e
|
||||
|
||||
- name: Upload test results
|
||||
if: always()
|
||||
uses: actions/upload-artifact@v3
|
||||
with:
|
||||
name: playwright-report
|
||||
path: playwright-report
|
||||
retention-days: 30
|
||||
|
||||
- uses: tryghost/actions/actions/slack-build@main
|
||||
if: failure() && github.event_name == 'push' && github.ref == 'refs/heads/main'
|
||||
with:
|
||||
status: ${{ job.status }}
|
||||
env:
|
||||
SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }}
|
3
.gitignore
vendored
3
.gitignore
vendored
|
@ -150,3 +150,6 @@ Caddyfile
|
|||
# Admin X
|
||||
/ghost/admin-x-settings/dist
|
||||
/ghost/admin-x-settings/dist-ssr
|
||||
/ghost/admin-x-settings/test-results/
|
||||
/ghost/admin-x-settings/playwright-report/
|
||||
/ghost/admin-x-settings/playwright/.cache/
|
||||
|
|
|
@ -7,7 +7,6 @@
|
|||
"url": "https://github.com/TryGhost/Ghost/tree/main/packages/admin-x-settings"
|
||||
},
|
||||
"author": "Ghost Foundation",
|
||||
"type": "module",
|
||||
"files": [
|
||||
"LICENSE",
|
||||
"README.md",
|
||||
|
@ -32,6 +31,9 @@
|
|||
"lint": "yarn run lint:js",
|
||||
"lint:js": "eslint --ext .js,.ts,.cjs,.tsx --cache src test",
|
||||
"test:unit": "yarn build",
|
||||
"test:e2e": "NODE_OPTIONS='--experimental-specifier-resolution=node --no-warnings' VITE_TEST=true playwright test",
|
||||
"test:slowmo": "TIMEOUT=100000 PLAYWRIGHT_SLOWMO=100 yarn test:e2e --headed",
|
||||
"test:e2e:full": "ALL_BROWSERS=1 yarn test:e2e",
|
||||
"preview": "vite preview",
|
||||
"storybook": "storybook dev -p 6006",
|
||||
"build-storybook": "storybook build",
|
||||
|
@ -48,6 +50,7 @@
|
|||
"validator": "7.2.0"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@playwright/test": "^1.34.3",
|
||||
"@storybook/addon-essentials": "7.0.18",
|
||||
"@storybook/addon-interactions": "7.0.18",
|
||||
"@storybook/addon-links": "7.0.18",
|
||||
|
|
58
ghost/admin-x-settings/playwright.config.ts
Normal file
58
ghost/admin-x-settings/playwright.config.ts
Normal file
|
@ -0,0 +1,58 @@
|
|||
import {defineConfig, devices} from '@playwright/test';
|
||||
|
||||
export const E2E_PORT = 5173;
|
||||
|
||||
/**
|
||||
* See https://playwright.dev/docs/test-configuration.
|
||||
*/
|
||||
export default defineConfig({
|
||||
testDir: './test/e2e',
|
||||
/* Run tests in files in parallel */
|
||||
fullyParallel: true,
|
||||
/* Fail the build on CI if you accidentally left test.only in the source code. */
|
||||
forbidOnly: !!process.env.CI,
|
||||
/* Retry on CI only */
|
||||
retries: process.env.CI ? 2 : 0,
|
||||
/* Opt out of parallel tests on CI. */
|
||||
workers: process.env.CI ? 1 : undefined,
|
||||
/* Reporter to use. See https://playwright.dev/docs/test-reporters */
|
||||
reporter: 'html',
|
||||
/* Shared settings for all the projects below. See https://playwright.dev/docs/api/class-testoptions. */
|
||||
use: {
|
||||
baseURL: `http://localhost:${E2E_PORT}`,
|
||||
/* Collect trace when retrying the failed test. See https://playwright.dev/docs/trace-viewer */
|
||||
trace: 'on-first-retry',
|
||||
launchOptions: {
|
||||
slowMo: parseInt(process.env.PLAYWRIGHT_SLOWMO ?? '') || 0,
|
||||
// force GPU hardware acceleration
|
||||
// (even in headless mode)
|
||||
args: ['--use-gl=egl']
|
||||
}
|
||||
},
|
||||
|
||||
/* Configure projects for major browsers */
|
||||
projects: [
|
||||
{
|
||||
name: 'chromium',
|
||||
use: {...devices['Desktop Chrome']}
|
||||
},
|
||||
|
||||
...(process.env.ALL_BROWSERS ? [{
|
||||
name: 'firefox',
|
||||
use: {...devices['Desktop Firefox']}
|
||||
},
|
||||
|
||||
{
|
||||
name: 'webkit',
|
||||
use: {...devices['Desktop Safari']}
|
||||
}] : [])
|
||||
],
|
||||
|
||||
/* Run local dev server before starting the tests */
|
||||
webServer: {
|
||||
command: `yarn dev:start`,
|
||||
url: `http://localhost:${E2E_PORT}`,
|
||||
reuseExistingServer: !process.env.CI,
|
||||
timeout: 10000
|
||||
}
|
||||
});
|
|
@ -1,10 +1,10 @@
|
|||
import React from 'react';
|
||||
import Separator from './Separator';
|
||||
|
||||
type THeadingLevels = 1 | 2 | 3 | 4 | 5 | 6;
|
||||
type HeadingLevel = 1 | 2 | 3 | 4 | 5 | 6;
|
||||
|
||||
interface IHeading {
|
||||
level?: THeadingLevels;
|
||||
interface HeadingBaseProps {
|
||||
level?: HeadingLevel;
|
||||
children?: React.ReactNode;
|
||||
styles?: string;
|
||||
|
||||
|
@ -21,14 +21,18 @@ interface IHeading {
|
|||
className?: string;
|
||||
}
|
||||
|
||||
const Heading: React.FC<IHeading> = ({
|
||||
level,
|
||||
children,
|
||||
styles = '',
|
||||
grey,
|
||||
separator,
|
||||
useLabelTag,
|
||||
className = '',
|
||||
type Heading1to5Props = { useLabelTag?: false, level?: Exclude<HeadingLevel, 6>, grey?: never } & HeadingBaseProps & React.HTMLAttributes<HTMLHeadingElement>
|
||||
type Heading6Props = { useLabelTag?: false, level: 6, grey?: boolean } & HeadingBaseProps & React.HTMLAttributes<HTMLHeadingElement>
|
||||
type HeadingLabelProps = { useLabelTag: true, level?: never, grey?: never } & HeadingBaseProps & React.LabelHTMLAttributes<HTMLLabelElement>
|
||||
|
||||
const Heading: React.FC<Heading1to5Props | Heading6Props | HeadingLabelProps> = ({
|
||||
level,
|
||||
children,
|
||||
styles = '',
|
||||
grey,
|
||||
separator,
|
||||
useLabelTag,
|
||||
className = '',
|
||||
...props
|
||||
}) => {
|
||||
if (!level) {
|
||||
|
@ -54,4 +58,4 @@ const Heading: React.FC<IHeading> = ({
|
|||
}
|
||||
};
|
||||
|
||||
export default Heading;
|
||||
export default Heading;
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
import React from 'react';
|
||||
import React, {useId} from 'react';
|
||||
|
||||
import Heading from './Heading';
|
||||
import Hint from './Hint';
|
||||
|
@ -20,6 +20,8 @@ interface TextAreaProps {
|
|||
}
|
||||
|
||||
const TextArea: React.FC<TextAreaProps> = ({inputRef, title, value, rows = 3, maxLength, resize = 'none', error, placeholder, hint, clearBg = false, onChange, ...props}) => {
|
||||
const id = useId();
|
||||
|
||||
let styles = `border-b ${clearBg ? 'bg-transparent' : 'bg-grey-75 px-[10px]'} py-2 ${error ? `border-red` : `border-grey-500 hover:border-grey-700 focus:border-black`} ${(title && !clearBg) && `mt-2`}`;
|
||||
|
||||
switch (resize) {
|
||||
|
@ -42,11 +44,12 @@ const TextArea: React.FC<TextAreaProps> = ({inputRef, title, value, rows = 3, ma
|
|||
|
||||
return (
|
||||
<div className='flex flex-col'>
|
||||
{title && <Heading useLabelTag={true}>{title}</Heading>}
|
||||
{title && <Heading htmlFor={id} useLabelTag={true}>{title}</Heading>}
|
||||
<textarea
|
||||
ref={inputRef}
|
||||
ref={inputRef}
|
||||
className={styles}
|
||||
defaultValue={value}
|
||||
defaultValue={value}
|
||||
id={id}
|
||||
maxLength={maxLength}
|
||||
placeholder={placeholder}
|
||||
rows={rows}
|
||||
|
@ -59,4 +62,4 @@ const TextArea: React.FC<TextAreaProps> = ({inputRef, title, value, rows = 3, ma
|
|||
);
|
||||
};
|
||||
|
||||
export default TextArea;
|
||||
export default TextArea;
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
import React from 'react';
|
||||
import React, {useId} from 'react';
|
||||
|
||||
import Heading from './Heading';
|
||||
import Hint from './Hint';
|
||||
|
@ -35,14 +35,17 @@ const TextField: React.FC<TextFieldProps> = ({
|
|||
maxLength,
|
||||
...props
|
||||
}) => {
|
||||
const id = useId();
|
||||
|
||||
return (
|
||||
<div className='flex flex-col'>
|
||||
{title && <Heading useLabelTag={true}>{title}</Heading>}
|
||||
{title && <Heading htmlFor={id} useLabelTag={true}>{title}</Heading>}
|
||||
<input
|
||||
ref={inputRef}
|
||||
className={`border-b ${clearBg ? 'bg-transparent' : 'bg-grey-75 px-[10px]'} py-2 ${error ? `border-red` : `border-grey-500 hover:border-grey-700 focus:border-black`} ${(title && !clearBg) && `mt-2`} ${className}`}
|
||||
defaultValue={value}
|
||||
maxLength={maxLength}
|
||||
ref={inputRef}
|
||||
className={`border-b ${clearBg ? 'bg-transparent' : 'bg-grey-75 px-[10px]'} py-2 ${error ? `border-red` : `border-grey-500 hover:border-grey-700 focus:border-black`} ${(title && !clearBg) && `mt-2`} ${className}`}
|
||||
defaultValue={value}
|
||||
id={id}
|
||||
maxLength={maxLength}
|
||||
placeholder={placeholder}
|
||||
type={type}
|
||||
onBlur={onBlur}
|
||||
|
@ -53,4 +56,4 @@ const TextField: React.FC<TextFieldProps> = ({
|
|||
);
|
||||
};
|
||||
|
||||
export default TextField;
|
||||
export default TextField;
|
||||
|
|
|
@ -8,6 +8,7 @@ export type SaveState = 'saving' | 'saved' | 'error' | '';
|
|||
|
||||
interface SettingGroupProps {
|
||||
navid?:string;
|
||||
testId?: string;
|
||||
title?: string;
|
||||
description?: React.ReactNode;
|
||||
state?: TSettingGroupStates;
|
||||
|
@ -34,6 +35,7 @@ interface SettingGroupProps {
|
|||
|
||||
const SettingGroup: React.FC<SettingGroupProps> = ({
|
||||
navid,
|
||||
testId,
|
||||
title,
|
||||
description,
|
||||
state,
|
||||
|
@ -128,7 +130,7 @@ const SettingGroup: React.FC<SettingGroupProps> = ({
|
|||
}
|
||||
|
||||
return (
|
||||
<div className={`relative flex flex-col gap-6 rounded ${border && 'border p-5 md:p-7'} ${styles}`}>
|
||||
<div className={`relative flex flex-col gap-6 rounded ${border && 'border p-5 md:p-7'} ${styles}`} data-testid={testId}>
|
||||
<div className='absolute top-[-60px]' id={navid && navid}></div>
|
||||
{customHeader ? customHeader :
|
||||
<SettingGroupHeader description={description} title={title!}>
|
||||
|
@ -141,4 +143,4 @@ const SettingGroup: React.FC<SettingGroupProps> = ({
|
|||
);
|
||||
};
|
||||
|
||||
export default SettingGroup;
|
||||
export default SettingGroup;
|
||||
|
|
|
@ -124,3 +124,4 @@ const SettingsProvider: React.FC<SettingsProviderProps> = ({children}) => {
|
|||
};
|
||||
|
||||
export {SettingsContext, SettingsProvider};
|
||||
|
||||
|
|
|
@ -70,6 +70,7 @@ const TitleAndDescription: React.FC = () => {
|
|||
navid='title-and-description'
|
||||
saveState={saveState}
|
||||
state={currentState}
|
||||
testId='title-and-description'
|
||||
title='Title & description'
|
||||
onCancel={handleCancel}
|
||||
onSave={handleSave}
|
||||
|
@ -80,4 +81,4 @@ const TitleAndDescription: React.FC = () => {
|
|||
);
|
||||
};
|
||||
|
||||
export default TitleAndDescription;
|
||||
export default TitleAndDescription;
|
||||
|
|
|
@ -1,8 +1,7 @@
|
|||
import React, {useEffect} from 'react';
|
||||
import React, {useContext, useEffect, useReducer, useRef, useState} from 'react';
|
||||
import {SaveState, TSettingGroupStates} from '../admin-x-ds/settings/SettingGroup';
|
||||
import {Setting, SettingValue, SiteData} from '../types/api';
|
||||
import {SettingsContext} from '../components/providers/SettingsProvider';
|
||||
import {useContext, useReducer, useRef, useState} from 'react';
|
||||
|
||||
interface LocalSetting extends Setting {
|
||||
dirty?: boolean;
|
||||
|
@ -86,6 +85,17 @@ const useSettingGroup = (): SettingGroupHook => {
|
|||
}
|
||||
}, [saveState]);
|
||||
|
||||
// reset the local state when there's a new settings API response, unless currently editing
|
||||
useEffect(() => {
|
||||
if (saveState === 'saving' || currentState === 'view') {
|
||||
dispatch({
|
||||
type: 'resetAll',
|
||||
payload: settings || []
|
||||
});
|
||||
}
|
||||
// eslint-disable-next-line react-hooks/exhaustive-deps
|
||||
}, [settings]);
|
||||
|
||||
// function to save the changed settings via API
|
||||
const handleSave = async () => {
|
||||
const changedSettings = localSettings?.filter(setting => setting.dirty)
|
||||
|
|
41
ghost/admin-x-settings/test/e2e/titleAndDescription.test.ts
Normal file
41
ghost/admin-x-settings/test/e2e/titleAndDescription.test.ts
Normal file
|
@ -0,0 +1,41 @@
|
|||
import {expect, test} from '@playwright/test';
|
||||
import {mockApi, updatedSettingsResponse} from '../utils/e2e';
|
||||
|
||||
test.describe('Title and description settings', async () => {
|
||||
test('Supports editing the title and description', async ({page}) => {
|
||||
const lastApiRequest = await mockApi({page, responses: {
|
||||
settings: {
|
||||
edit: updatedSettingsResponse([
|
||||
{key: 'title', value: 'New Site Title'},
|
||||
{key: 'description', value: 'New Site Description'}
|
||||
])
|
||||
}
|
||||
}});
|
||||
|
||||
await page.goto('/');
|
||||
|
||||
const section = page.getByTestId('title-and-description');
|
||||
|
||||
await expect(section.getByText('Test Site')).toHaveCount(1);
|
||||
await expect(section.getByText('Thoughts, stories and ideas.')).toHaveCount(1);
|
||||
|
||||
await section.getByRole('button', {name: 'Edit'}).click();
|
||||
|
||||
await section.getByLabel('Site title').fill('New Site Title');
|
||||
await section.getByLabel('Site description').fill('New Site Description');
|
||||
|
||||
await section.getByRole('button', {name: 'Save'}).click();
|
||||
|
||||
await expect(section.getByLabel('Site title')).toHaveCount(0);
|
||||
|
||||
await expect(section.getByText('New Site Title')).toHaveCount(1);
|
||||
await expect(section.getByText('New Site Description')).toHaveCount(1);
|
||||
|
||||
expect(lastApiRequest.body).toEqual({
|
||||
settings: [
|
||||
{key: 'title', value: 'New Site Title'},
|
||||
{key: 'description', value: 'New Site Description'}
|
||||
]
|
||||
});
|
||||
});
|
||||
});
|
83
ghost/admin-x-settings/test/utils/e2e.ts
Normal file
83
ghost/admin-x-settings/test/utils/e2e.ts
Normal file
|
@ -0,0 +1,83 @@
|
|||
import {Page} from '@playwright/test';
|
||||
import {readFileSync} from 'fs';
|
||||
|
||||
type LastApiRequest = {
|
||||
url: null | string
|
||||
body: null | any
|
||||
};
|
||||
|
||||
const responseFixtures = {
|
||||
settings: JSON.parse(readFileSync(`${__dirname}/responses/settings.json`).toString()),
|
||||
site: JSON.parse(readFileSync(`${__dirname}/responses/site.json`).toString())
|
||||
};
|
||||
|
||||
interface Responses {
|
||||
settings?: {
|
||||
browse?: any
|
||||
edit?: any
|
||||
}
|
||||
site?: {
|
||||
browse?: any
|
||||
}
|
||||
}
|
||||
|
||||
export async function mockApi({page,responses}: {page: Page, responses?: Responses}) {
|
||||
const lastApiRequest: LastApiRequest = {
|
||||
url: null,
|
||||
body: null
|
||||
};
|
||||
|
||||
await mockApiResponse({
|
||||
page,
|
||||
path: /\/ghost\/api\/admin\/settings\/\?group=.+/,
|
||||
method: 'GET',
|
||||
response: responses?.settings?.browse ?? responseFixtures.settings,
|
||||
lastApiRequest
|
||||
});
|
||||
|
||||
await mockApiResponse({
|
||||
page,
|
||||
path: /\/ghost\/api\/admin\/site\//,
|
||||
method: 'GET',
|
||||
response: responses?.site?.browse ?? responseFixtures.site,
|
||||
lastApiRequest
|
||||
});
|
||||
|
||||
await mockApiResponse({
|
||||
page,
|
||||
path: /\/ghost\/api\/admin\/settings\/$/,
|
||||
method: 'PUT',
|
||||
response: responses?.settings?.edit ?? responseFixtures.settings,
|
||||
lastApiRequest
|
||||
});
|
||||
|
||||
return lastApiRequest;
|
||||
}
|
||||
|
||||
async function mockApiResponse({page, path, method, response, lastApiRequest}: { page: Page; path: string | RegExp; method: string; response: any; lastApiRequest: LastApiRequest }) {
|
||||
await page.route(path, async (route) => {
|
||||
if (route.request().method() !== method) {
|
||||
return route.continue();
|
||||
}
|
||||
|
||||
const requestBody = JSON.parse(route.request().postData() || 'null');
|
||||
lastApiRequest.body = requestBody;
|
||||
lastApiRequest.url = route.request().url();
|
||||
|
||||
await route.fulfill({
|
||||
status: 200,
|
||||
body: JSON.stringify(response)
|
||||
});
|
||||
});
|
||||
}
|
||||
|
||||
export function updatedSettingsResponse(newSettings: Array<{ key: string, value: string }>) {
|
||||
return {
|
||||
...responseFixtures.settings,
|
||||
settings: responseFixtures.settings.settings.map((setting) => {
|
||||
const newSetting = newSettings.find(({key}) => key === setting.key);
|
||||
|
||||
return {key: setting.key, value: newSetting?.value || setting.value};
|
||||
})
|
||||
};
|
||||
}
|
325
ghost/admin-x-settings/test/utils/responses/settings.json
Normal file
325
ghost/admin-x-settings/test/utils/responses/settings.json
Normal file
|
@ -0,0 +1,325 @@
|
|||
{
|
||||
"settings": [
|
||||
{
|
||||
"key": "title",
|
||||
"value": "Test Site"
|
||||
},
|
||||
{
|
||||
"key": "description",
|
||||
"value": "Thoughts, stories and ideas."
|
||||
},
|
||||
{
|
||||
"key": "logo",
|
||||
"value": null
|
||||
},
|
||||
{
|
||||
"key": "cover_image",
|
||||
"value": null
|
||||
},
|
||||
{
|
||||
"key": "icon",
|
||||
"value": null
|
||||
},
|
||||
{
|
||||
"key": "accent_color",
|
||||
"value": "#FF1A75"
|
||||
},
|
||||
{
|
||||
"key": "locale",
|
||||
"value": "en"
|
||||
},
|
||||
{
|
||||
"key": "timezone",
|
||||
"value": "Etc/UTC"
|
||||
},
|
||||
{
|
||||
"key": "codeinjection_head",
|
||||
"value": ""
|
||||
},
|
||||
{
|
||||
"key": "codeinjection_foot",
|
||||
"value": ""
|
||||
},
|
||||
{
|
||||
"key": "facebook",
|
||||
"value": "ghost"
|
||||
},
|
||||
{
|
||||
"key": "twitter",
|
||||
"value": "@ghost"
|
||||
},
|
||||
{
|
||||
"key": "navigation",
|
||||
"value": "[{\"label\":\"Home\",\"url\":\"/\"},{\"label\":\"About\",\"url\":\"/about/\"}]"
|
||||
},
|
||||
{
|
||||
"key": "secondary_navigation",
|
||||
"value": "[{\"label\":\"Sign up\",\"url\":\"#/portal/\"}]"
|
||||
},
|
||||
{
|
||||
"key": "meta_title",
|
||||
"value": null
|
||||
},
|
||||
{
|
||||
"key": "meta_description",
|
||||
"value": null
|
||||
},
|
||||
{
|
||||
"key": "og_image",
|
||||
"value": null
|
||||
},
|
||||
{
|
||||
"key": "og_title",
|
||||
"value": null
|
||||
},
|
||||
{
|
||||
"key": "og_description",
|
||||
"value": null
|
||||
},
|
||||
{
|
||||
"key": "twitter_image",
|
||||
"value": null
|
||||
},
|
||||
{
|
||||
"key": "twitter_title",
|
||||
"value": null
|
||||
},
|
||||
{
|
||||
"key": "twitter_description",
|
||||
"value": null
|
||||
},
|
||||
{
|
||||
"key": "active_theme",
|
||||
"value": "casper"
|
||||
},
|
||||
{
|
||||
"key": "is_private",
|
||||
"value": false
|
||||
},
|
||||
{
|
||||
"key": "password",
|
||||
"value": null
|
||||
},
|
||||
{
|
||||
"key": "public_hash",
|
||||
"value": "b69493f8b746f7239b7b8fb4125632"
|
||||
},
|
||||
{
|
||||
"key": "default_content_visibility",
|
||||
"value": "public"
|
||||
},
|
||||
{
|
||||
"key": "default_content_visibility_tiers",
|
||||
"value": "[]"
|
||||
},
|
||||
{
|
||||
"key": "members_signup_access",
|
||||
"value": "all"
|
||||
},
|
||||
{
|
||||
"key": "members_support_address",
|
||||
"value": "noreply"
|
||||
},
|
||||
{
|
||||
"key": "stripe_secret_key",
|
||||
"value": null
|
||||
},
|
||||
{
|
||||
"key": "stripe_publishable_key",
|
||||
"value": null
|
||||
},
|
||||
{
|
||||
"key": "stripe_plans",
|
||||
"value": "[]"
|
||||
},
|
||||
{
|
||||
"key": "stripe_connect_publishable_key",
|
||||
"value": null
|
||||
},
|
||||
{
|
||||
"key": "stripe_connect_secret_key",
|
||||
"value": null
|
||||
},
|
||||
{
|
||||
"key": "stripe_connect_livemode",
|
||||
"value": false
|
||||
},
|
||||
{
|
||||
"key": "stripe_connect_display_name",
|
||||
"value": null
|
||||
},
|
||||
{
|
||||
"key": "stripe_connect_account_id",
|
||||
"value": null
|
||||
},
|
||||
{
|
||||
"key": "members_monthly_price_id",
|
||||
"value": null
|
||||
},
|
||||
{
|
||||
"key": "members_yearly_price_id",
|
||||
"value": null
|
||||
},
|
||||
{
|
||||
"key": "members_track_sources",
|
||||
"value": true
|
||||
},
|
||||
{
|
||||
"key": "portal_name",
|
||||
"value": true
|
||||
},
|
||||
{
|
||||
"key": "portal_button",
|
||||
"value": true
|
||||
},
|
||||
{
|
||||
"key": "portal_plans",
|
||||
"value": "[\"monthly\",\"yearly\",\"free\"]"
|
||||
},
|
||||
{
|
||||
"key": "portal_products",
|
||||
"value": "[]"
|
||||
},
|
||||
{
|
||||
"key": "portal_button_style",
|
||||
"value": "icon-and-text"
|
||||
},
|
||||
{
|
||||
"key": "portal_button_icon",
|
||||
"value": null
|
||||
},
|
||||
{
|
||||
"key": "portal_button_signup_text",
|
||||
"value": "Subscribe"
|
||||
},
|
||||
{
|
||||
"key": "portal_signup_terms_html",
|
||||
"value": null
|
||||
},
|
||||
{
|
||||
"key": "portal_signup_checkbox_required",
|
||||
"value": false
|
||||
},
|
||||
{
|
||||
"key": "mailgun_domain",
|
||||
"value": null
|
||||
},
|
||||
{
|
||||
"key": "mailgun_api_key",
|
||||
"value": null
|
||||
},
|
||||
{
|
||||
"key": "mailgun_base_url",
|
||||
"value": null
|
||||
},
|
||||
{
|
||||
"key": "email_track_opens",
|
||||
"value": true
|
||||
},
|
||||
{
|
||||
"key": "email_track_clicks",
|
||||
"value": true
|
||||
},
|
||||
{
|
||||
"key": "email_verification_required",
|
||||
"value": false
|
||||
},
|
||||
{
|
||||
"key": "amp",
|
||||
"value": false
|
||||
},
|
||||
{
|
||||
"key": "amp_gtag_id",
|
||||
"value": null
|
||||
},
|
||||
{
|
||||
"key": "firstpromoter",
|
||||
"value": false
|
||||
},
|
||||
{
|
||||
"key": "firstpromoter_id",
|
||||
"value": null
|
||||
},
|
||||
{
|
||||
"key": "labs",
|
||||
"value": "{}"
|
||||
},
|
||||
{
|
||||
"key": "slack_url",
|
||||
"value": ""
|
||||
},
|
||||
{
|
||||
"key": "slack_username",
|
||||
"value": "Ghost"
|
||||
},
|
||||
{
|
||||
"key": "unsplash",
|
||||
"value": true
|
||||
},
|
||||
{
|
||||
"key": "shared_views",
|
||||
"value": "[]"
|
||||
},
|
||||
{
|
||||
"key": "editor_default_email_recipients",
|
||||
"value": "visibility"
|
||||
},
|
||||
{
|
||||
"key": "editor_default_email_recipients_filter",
|
||||
"value": "all"
|
||||
},
|
||||
{
|
||||
"key": "announcement_content",
|
||||
"value": null
|
||||
},
|
||||
{
|
||||
"key": "announcement_visibility",
|
||||
"value": "[]"
|
||||
},
|
||||
{
|
||||
"key": "announcement_background",
|
||||
"value": "dark"
|
||||
},
|
||||
{
|
||||
"key": "comments_enabled",
|
||||
"value": "off"
|
||||
},
|
||||
{
|
||||
"key": "outbound_link_tagging",
|
||||
"value": true
|
||||
},
|
||||
{
|
||||
"key": "pintura",
|
||||
"value": false
|
||||
},
|
||||
{
|
||||
"key": "pintura_js_url",
|
||||
"value": null
|
||||
},
|
||||
{
|
||||
"key": "pintura_css_url",
|
||||
"value": null
|
||||
},
|
||||
{
|
||||
"key": "members_enabled",
|
||||
"value": true
|
||||
},
|
||||
{
|
||||
"key": "members_invite_only",
|
||||
"value": false
|
||||
},
|
||||
{
|
||||
"key": "paid_members_enabled",
|
||||
"value": true
|
||||
},
|
||||
{
|
||||
"key": "firstpromoter_account",
|
||||
"value": null
|
||||
}
|
||||
],
|
||||
"meta": {
|
||||
"filters": {
|
||||
"group": "site,theme,private,members,portal,newsletter,email,amp,labs,slack,unsplash,views,firstpromoter,editor,comments,analytics,announcement,pintura"
|
||||
}
|
||||
}
|
||||
}
|
12
ghost/admin-x-settings/test/utils/responses/site.json
Normal file
12
ghost/admin-x-settings/test/utils/responses/site.json
Normal file
|
@ -0,0 +1,12 @@
|
|||
{
|
||||
"site": {
|
||||
"title": "Test Site",
|
||||
"description": "Thoughts, stories and ideas.",
|
||||
"logo": null,
|
||||
"icon": null,
|
||||
"accent_color": "#FF1A75",
|
||||
"locale": "en",
|
||||
"url": "http://test.com/",
|
||||
"version": "x.x"
|
||||
}
|
||||
}
|
492
yarn.lock
492
yarn.lock
|
@ -2054,15 +2054,23 @@
|
|||
resolved "https://registry.yarnpkg.com/@ebay/nice-modal-react/-/nice-modal-react-1.2.10.tgz#6b2406bfce4a5daffc43f5b85f5f238311cdfe93"
|
||||
integrity sha512-qNp8vQo5kPRwB9bHlkh8lcwH/0KFWpp58X/b9KaLB/gNlJ3W24nCT2l/qBBSnWgV7NEIq25uLowaPS2mbfpZiw==
|
||||
|
||||
"@elastic/elasticsearch@8.5.0", "@elastic/elasticsearch@8.6.0":
|
||||
version "8.5.0"
|
||||
resolved "https://registry.yarnpkg.com/@elastic/elasticsearch/-/elasticsearch-8.5.0.tgz#407aee0950a082ee76735a567f2571cf4301d4ea"
|
||||
integrity sha512-iOgr/3zQi84WmPhAplnK2W13R89VXD2oc6WhlQmH3bARQwmI+De23ZJKBEn7bvuG/AHMAqasPXX7uJIiJa2MqQ==
|
||||
"@elastic/elasticsearch@8.6.0":
|
||||
version "8.6.0"
|
||||
resolved "https://registry.yarnpkg.com/@elastic/elasticsearch/-/elasticsearch-8.6.0.tgz#c474f49808deee64b5bc5b8f938bf78f4468cb94"
|
||||
integrity sha512-mN5EbbgSp1rfRmQ/5Hv7jqAK8xhGJxCg7G84xje8hSefE59P+HPPCv/+DgesCUSJdZpwXIo0DwOWHfHvktxxLw==
|
||||
dependencies:
|
||||
"@elastic/transport" "^8.2.0"
|
||||
"@elastic/transport" "^8.3.1"
|
||||
tslib "^2.4.0"
|
||||
|
||||
"@elastic/transport@^8.2.0":
|
||||
"@elastic/elasticsearch@8.7.0":
|
||||
version "8.7.0"
|
||||
resolved "https://registry.yarnpkg.com/@elastic/elasticsearch/-/elasticsearch-8.7.0.tgz#eb0396f6899e0000109af55cffee514811e571ee"
|
||||
integrity sha512-0u12N7gvSpv99XiiYE7OlOtVy4oFx7KNYd+/SSt0GqIcpj4X8bcILjpkQqK3HZcvkvwc8bFL9J11EMmUlg6FYw==
|
||||
dependencies:
|
||||
"@elastic/transport" "^8.3.1"
|
||||
tslib "^2.4.0"
|
||||
|
||||
"@elastic/transport@^8.3.1":
|
||||
version "8.3.1"
|
||||
resolved "https://registry.yarnpkg.com/@elastic/transport/-/transport-8.3.1.tgz#e7569d7df35b03108ea7aa886113800245faa17f"
|
||||
integrity sha512-jv/Yp2VLvv5tSMEOF8iGrtL2YsYHbpf4s+nDsItxUTLFTzuJGpnsB/xBlfsoT2kAYEnWHiSJuqrbRcpXEI/SEQ==
|
||||
|
@ -4186,7 +4194,7 @@
|
|||
dependencies:
|
||||
esquery "^1.0.1"
|
||||
|
||||
"@playwright/test@1.34.3":
|
||||
"@playwright/test@1.34.3", "@playwright/test@^1.34.3":
|
||||
version "1.34.3"
|
||||
resolved "https://registry.yarnpkg.com/@playwright/test/-/test-1.34.3.tgz#d9f1ac3f1a09633b5ca5351c50c308bf802bde53"
|
||||
integrity sha512-zPLef6w9P6T/iT6XDYG3mvGOqOyb6eHaV9XtkunYs0+OzxBtrPAAaHotc0X+PJ00WPPnLfFBTl7mf45Mn8DBmw==
|
||||
|
@ -4638,6 +4646,20 @@
|
|||
dependencies:
|
||||
"@stdlib/assert-has-uint8clampedarray-support" "^0.0.x"
|
||||
|
||||
"@stdlib/array@^0.0.x":
|
||||
version "0.0.12"
|
||||
resolved "https://registry.yarnpkg.com/@stdlib/array/-/array-0.0.12.tgz#12f40ab95bb36d424cdad991f29fc3cb491ee29e"
|
||||
integrity sha512-nDksiuvRC1dSTHrf5yOGQmlRwAzSKV8MdFQwFSvLbZGGhi5Y4hExqea5HloLgNVouVs8lnAFi2oubSM4Mc7YAg==
|
||||
dependencies:
|
||||
"@stdlib/assert" "^0.0.x"
|
||||
"@stdlib/blas" "^0.0.x"
|
||||
"@stdlib/complex" "^0.0.x"
|
||||
"@stdlib/constants" "^0.0.x"
|
||||
"@stdlib/math" "^0.0.x"
|
||||
"@stdlib/symbol" "^0.0.x"
|
||||
"@stdlib/types" "^0.0.x"
|
||||
"@stdlib/utils" "^0.0.x"
|
||||
|
||||
"@stdlib/assert-has-float32array-support@^0.0.x":
|
||||
version "0.0.8"
|
||||
resolved "https://registry.yarnpkg.com/@stdlib/assert-has-float32array-support/-/assert-has-float32array-support-0.0.8.tgz#77371183726e26ca9e6f9db41d34543607074067"
|
||||
|
@ -4991,6 +5013,47 @@
|
|||
dependencies:
|
||||
"@stdlib/assert-is-array" "^0.0.x"
|
||||
|
||||
"@stdlib/assert@^0.0.x":
|
||||
version "0.0.12"
|
||||
resolved "https://registry.yarnpkg.com/@stdlib/assert/-/assert-0.0.12.tgz#1648c9016e5041291f55a6464abcc4069c5103ce"
|
||||
integrity sha512-38FxFf+ZoQZbdc+m09UsWtaCmzd/2e7im0JOaaFYE7icmRfm+4KiE9BRvBT4tIn7ioLB2f9PsBicKjIsf+tY1w==
|
||||
dependencies:
|
||||
"@stdlib/array" "^0.0.x"
|
||||
"@stdlib/cli" "^0.0.x"
|
||||
"@stdlib/complex" "^0.0.x"
|
||||
"@stdlib/constants" "^0.0.x"
|
||||
"@stdlib/fs" "^0.0.x"
|
||||
"@stdlib/math" "^0.0.x"
|
||||
"@stdlib/ndarray" "^0.0.x"
|
||||
"@stdlib/number" "^0.0.x"
|
||||
"@stdlib/os" "^0.0.x"
|
||||
"@stdlib/process" "^0.0.x"
|
||||
"@stdlib/regexp" "^0.0.x"
|
||||
"@stdlib/streams" "^0.0.x"
|
||||
"@stdlib/string" "^0.0.x"
|
||||
"@stdlib/symbol" "^0.0.x"
|
||||
"@stdlib/types" "^0.0.x"
|
||||
"@stdlib/utils" "^0.0.x"
|
||||
|
||||
"@stdlib/bigint@^0.0.x":
|
||||
version "0.0.11"
|
||||
resolved "https://registry.yarnpkg.com/@stdlib/bigint/-/bigint-0.0.11.tgz#c416a1d727001c55f4897e6424124199d638f2fd"
|
||||
integrity sha512-uz0aYDLABAYyqxaCSHYbUt0yPkXYUCR7TrVvHN+UUD3i8FZ02ZKcLO+faKisDyxKEoSFTNtn3Ro8Ir5ebOlVXQ==
|
||||
dependencies:
|
||||
"@stdlib/utils" "^0.0.x"
|
||||
|
||||
"@stdlib/blas@^0.0.x":
|
||||
version "0.0.12"
|
||||
resolved "https://registry.yarnpkg.com/@stdlib/blas/-/blas-0.0.12.tgz#7e93e42b4621fc6903bf63264f045047333536c2"
|
||||
integrity sha512-nWY749bWceuoWQ7gz977blCwR7lyQ/rsIXVO4b600h+NFpeA2i/ea7MYC680utIbeu2cnDWHdglBPoK535VAzA==
|
||||
dependencies:
|
||||
"@stdlib/array" "^0.0.x"
|
||||
"@stdlib/assert" "^0.0.x"
|
||||
"@stdlib/math" "^0.0.x"
|
||||
"@stdlib/number" "^0.0.x"
|
||||
"@stdlib/types" "^0.0.x"
|
||||
"@stdlib/utils" "^0.0.x"
|
||||
|
||||
"@stdlib/buffer-ctor@^0.0.x":
|
||||
version "0.0.7"
|
||||
resolved "https://registry.yarnpkg.com/@stdlib/buffer-ctor/-/buffer-ctor-0.0.7.tgz#d05b7f4a6ef26defe6cdd41ca244a927b96c55ec"
|
||||
|
@ -5017,6 +5080,17 @@
|
|||
"@stdlib/buffer-ctor" "^0.0.x"
|
||||
"@stdlib/string-format" "^0.0.x"
|
||||
|
||||
"@stdlib/buffer@^0.0.x":
|
||||
version "0.0.11"
|
||||
resolved "https://registry.yarnpkg.com/@stdlib/buffer/-/buffer-0.0.11.tgz#6137b00845e6c905181cc7ebfae9f7e47c01b0ce"
|
||||
integrity sha512-Jeie5eDDa1tVuRcuU+cBXI/oOXSmMxUUccZpqXzgYe0IO8QSNtNxv9mUTzJk/m5wH+lmLoDvNxzPpOH9TODjJg==
|
||||
dependencies:
|
||||
"@stdlib/array" "^0.0.x"
|
||||
"@stdlib/assert" "^0.0.x"
|
||||
"@stdlib/process" "^0.0.x"
|
||||
"@stdlib/types" "^0.0.x"
|
||||
"@stdlib/utils" "^0.0.x"
|
||||
|
||||
"@stdlib/cli-ctor@^0.0.x":
|
||||
version "0.0.3"
|
||||
resolved "https://registry.yarnpkg.com/@stdlib/cli-ctor/-/cli-ctor-0.0.3.tgz#5b0a6d253217556c778015eee6c14be903f82c2b"
|
||||
|
@ -5026,6 +5100,14 @@
|
|||
"@stdlib/utils-noop" "^0.0.x"
|
||||
minimist "^1.2.0"
|
||||
|
||||
"@stdlib/cli@^0.0.x":
|
||||
version "0.0.10"
|
||||
resolved "https://registry.yarnpkg.com/@stdlib/cli/-/cli-0.0.10.tgz#28e2fbe6865d7f5cd15b7dc5846c99bd3b91674f"
|
||||
integrity sha512-OITGaxG46kwK799+NuOd/+ccosJ9koVuQBC610DDJv0ZJf8mD7sbjGXrmue9C4EOh8MP7Vm/6HN14BojX8oTCg==
|
||||
dependencies:
|
||||
"@stdlib/utils" "^0.0.x"
|
||||
minimist "^1.2.0"
|
||||
|
||||
"@stdlib/complex-float32@^0.0.7", "@stdlib/complex-float32@^0.0.x":
|
||||
version "0.0.7"
|
||||
resolved "https://registry.yarnpkg.com/@stdlib/complex-float32/-/complex-float32-0.0.7.tgz#fb9a0c34254eaf3ed91c39983e19ef131fc18bc1"
|
||||
|
@ -5068,6 +5150,16 @@
|
|||
"@stdlib/types" "^0.0.x"
|
||||
"@stdlib/utils-library-manifest" "^0.0.x"
|
||||
|
||||
"@stdlib/complex@^0.0.x":
|
||||
version "0.0.12"
|
||||
resolved "https://registry.yarnpkg.com/@stdlib/complex/-/complex-0.0.12.tgz#3afbc190cd0a9b37fc7c6e508c3aa9fda9106944"
|
||||
integrity sha512-UbZBdaUxT2G+lsTIrVlRZwx2IRY6GXnVILggeejsIVxHSuK+oTyapfetcAv0FJFLP+Rrr+ZzrN4b9G3hBw6NHA==
|
||||
dependencies:
|
||||
"@stdlib/array" "^0.0.x"
|
||||
"@stdlib/assert" "^0.0.x"
|
||||
"@stdlib/types" "^0.0.x"
|
||||
"@stdlib/utils" "^0.0.x"
|
||||
|
||||
"@stdlib/constants-array-max-typed-array-length@^0.0.x":
|
||||
version "0.0.7"
|
||||
resolved "https://registry.yarnpkg.com/@stdlib/constants-array-max-typed-array-length/-/constants-array-max-typed-array-length-0.0.7.tgz#b6e4cd8e46f4a1ae2b655646d46393ba3d8d5c2b"
|
||||
|
@ -5133,6 +5225,16 @@
|
|||
resolved "https://registry.yarnpkg.com/@stdlib/constants-uint8-max/-/constants-uint8-max-0.0.7.tgz#d50affeaeb6e67a0f39059a8f5122f3fd5ff4447"
|
||||
integrity sha512-fqV+xds4jgwFxwWu08b8xDuIoW6/D4/1dtEjZ1sXVeWR7nf0pjj1cHERq4kdkYxsvOGu+rjoR3MbjzpFc4fvSw==
|
||||
|
||||
"@stdlib/constants@^0.0.x":
|
||||
version "0.0.11"
|
||||
resolved "https://registry.yarnpkg.com/@stdlib/constants/-/constants-0.0.11.tgz#78cd56d6c2982b30264843c3d75bde7125e90cd2"
|
||||
integrity sha512-cWKy0L9hXHUQTvFzdPkTvZnn/5Pjv7H4UwY0WC1rLt+A5CxFDJKjvnIi9ypSzJS3CAiGl1ZaHCdadoqXhNdkUg==
|
||||
dependencies:
|
||||
"@stdlib/array" "^0.0.x"
|
||||
"@stdlib/assert" "^0.0.x"
|
||||
"@stdlib/number" "^0.0.x"
|
||||
"@stdlib/utils" "^0.0.x"
|
||||
|
||||
"@stdlib/fs-exists@^0.0.x":
|
||||
version "0.0.8"
|
||||
resolved "https://registry.yarnpkg.com/@stdlib/fs-exists/-/fs-exists-0.0.8.tgz#391b2cee3e014a3b20266e5d047847f68ef82331"
|
||||
|
@ -5166,6 +5268,20 @@
|
|||
"@stdlib/process-cwd" "^0.0.x"
|
||||
"@stdlib/utils-define-nonenumerable-read-only-property" "^0.0.x"
|
||||
|
||||
"@stdlib/fs@^0.0.x":
|
||||
version "0.0.12"
|
||||
resolved "https://registry.yarnpkg.com/@stdlib/fs/-/fs-0.0.12.tgz#662365fd5846a51f075724b4f2888ae88441b70d"
|
||||
integrity sha512-zcDLbt39EEM3M3wJW6luChS53B8T+TMJkjs2526UpKJ71O0/0adR57cI7PfCpkMd33d05uM7GM+leEj4eks4Cw==
|
||||
dependencies:
|
||||
"@stdlib/array" "^0.0.x"
|
||||
"@stdlib/assert" "^0.0.x"
|
||||
"@stdlib/cli" "^0.0.x"
|
||||
"@stdlib/math" "^0.0.x"
|
||||
"@stdlib/process" "^0.0.x"
|
||||
"@stdlib/string" "^0.0.x"
|
||||
"@stdlib/utils" "^0.0.x"
|
||||
debug "^2.6.9"
|
||||
|
||||
"@stdlib/math-base-assert-is-integer@^0.0.x":
|
||||
version "0.0.7"
|
||||
resolved "https://registry.yarnpkg.com/@stdlib/math-base-assert-is-integer/-/math-base-assert-is-integer-0.0.7.tgz#d70faf41bed1bd737333877eb21660bf0ee779df"
|
||||
|
@ -5199,6 +5315,50 @@
|
|||
"@stdlib/math-base-napi-unary" "^0.0.x"
|
||||
"@stdlib/utils-library-manifest" "^0.0.x"
|
||||
|
||||
"@stdlib/math@^0.0.x":
|
||||
version "0.0.11"
|
||||
resolved "https://registry.yarnpkg.com/@stdlib/math/-/math-0.0.11.tgz#eb6638bc03a20fbd6727dd5b977ee0170bda4649"
|
||||
integrity sha512-qI78sR1QqGjHj8k/aAqkZ51Su2fyBvaR/jMKQqcB/ML8bpYpf+QGlGvTty5Qdru/wpqds4kVFOVbWGcNFIV2+Q==
|
||||
dependencies:
|
||||
"@stdlib/assert" "^0.0.x"
|
||||
"@stdlib/constants" "^0.0.x"
|
||||
"@stdlib/ndarray" "^0.0.x"
|
||||
"@stdlib/number" "^0.0.x"
|
||||
"@stdlib/strided" "^0.0.x"
|
||||
"@stdlib/symbol" "^0.0.x"
|
||||
"@stdlib/types" "^0.0.x"
|
||||
"@stdlib/utils" "^0.0.x"
|
||||
debug "^2.6.9"
|
||||
|
||||
"@stdlib/ndarray@^0.0.x":
|
||||
version "0.0.13"
|
||||
resolved "https://registry.yarnpkg.com/@stdlib/ndarray/-/ndarray-0.0.13.tgz#2e8fc645e10f56a645a0ab81598808c0e8f43b82"
|
||||
integrity sha512-Z+U9KJP4U2HWrLtuAXSPvhNetAdqaNLMcliR6S/fz+VPlFDeymRK7omRFMgVQ+1zcAvIgKZGJxpLC3vjiPUYEw==
|
||||
dependencies:
|
||||
"@stdlib/array" "^0.0.x"
|
||||
"@stdlib/assert" "^0.0.x"
|
||||
"@stdlib/bigint" "^0.0.x"
|
||||
"@stdlib/buffer" "^0.0.x"
|
||||
"@stdlib/complex" "^0.0.x"
|
||||
"@stdlib/constants" "^0.0.x"
|
||||
"@stdlib/math" "^0.0.x"
|
||||
"@stdlib/number" "^0.0.x"
|
||||
"@stdlib/string" "^0.0.x"
|
||||
"@stdlib/types" "^0.0.x"
|
||||
"@stdlib/utils" "^0.0.x"
|
||||
|
||||
"@stdlib/nlp@^0.0.x":
|
||||
version "0.0.11"
|
||||
resolved "https://registry.yarnpkg.com/@stdlib/nlp/-/nlp-0.0.11.tgz#532ec0f7267b8d639e4c20c6de864e8de8a09054"
|
||||
integrity sha512-D9avYWANm0Db2W7RpzdSdi5GxRYALGAqUrNnRnnKIO6sMEfr/DvONoAbWruda4QyvSC+0MJNwcEn7+PHhRwYhw==
|
||||
dependencies:
|
||||
"@stdlib/array" "^0.0.x"
|
||||
"@stdlib/assert" "^0.0.x"
|
||||
"@stdlib/math" "^0.0.x"
|
||||
"@stdlib/random" "^0.0.x"
|
||||
"@stdlib/string" "^0.0.x"
|
||||
"@stdlib/utils" "^0.0.x"
|
||||
|
||||
"@stdlib/number-ctor@^0.0.x":
|
||||
version "0.0.7"
|
||||
resolved "https://registry.yarnpkg.com/@stdlib/number-ctor/-/number-ctor-0.0.7.tgz#e97a66664639c9853b6c80bc7a15f7d67a2fc991"
|
||||
|
@ -5211,6 +5371,31 @@
|
|||
dependencies:
|
||||
"@stdlib/array-float32" "^0.0.x"
|
||||
|
||||
"@stdlib/number@^0.0.x":
|
||||
version "0.0.10"
|
||||
resolved "https://registry.yarnpkg.com/@stdlib/number/-/number-0.0.10.tgz#4030ad8fc3fac19a9afb415c443cee6deea0e65c"
|
||||
integrity sha512-RyfoP9MlnX4kccvg8qv7vYQPbLdzfS1Mnp/prGOoWhvMG3pyBwFAan34kwFb5IS/zHC3W5EmrgXCV2QWyLg/Kg==
|
||||
dependencies:
|
||||
"@stdlib/array" "^0.0.x"
|
||||
"@stdlib/assert" "^0.0.x"
|
||||
"@stdlib/constants" "^0.0.x"
|
||||
"@stdlib/math" "^0.0.x"
|
||||
"@stdlib/os" "^0.0.x"
|
||||
"@stdlib/string" "^0.0.x"
|
||||
"@stdlib/types" "^0.0.x"
|
||||
"@stdlib/utils" "^0.0.x"
|
||||
|
||||
"@stdlib/os@^0.0.x":
|
||||
version "0.0.12"
|
||||
resolved "https://registry.yarnpkg.com/@stdlib/os/-/os-0.0.12.tgz#08bbf013c62a7153099fa9cbac086ca1349a4677"
|
||||
integrity sha512-O7lklZ/9XEzoCmYvzjPh7jrFWkbpOSHGI71ve3dkSvBy5tyiSL3TtivfKsIC+9ZxuEJZ3d3lIjc9e+yz4HVbqQ==
|
||||
dependencies:
|
||||
"@stdlib/assert" "^0.0.x"
|
||||
"@stdlib/cli" "^0.0.x"
|
||||
"@stdlib/fs" "^0.0.x"
|
||||
"@stdlib/process" "^0.0.x"
|
||||
"@stdlib/utils" "^0.0.x"
|
||||
|
||||
"@stdlib/process-cwd@^0.0.x":
|
||||
version "0.0.8"
|
||||
resolved "https://registry.yarnpkg.com/@stdlib/process-cwd/-/process-cwd-0.0.8.tgz#5eef63fb75ffb5fc819659d2f450fa3ee2aa10bf"
|
||||
|
@ -5231,6 +5416,41 @@
|
|||
"@stdlib/streams-node-stdin" "^0.0.x"
|
||||
"@stdlib/utils-next-tick" "^0.0.x"
|
||||
|
||||
"@stdlib/process@^0.0.x":
|
||||
version "0.0.12"
|
||||
resolved "https://registry.yarnpkg.com/@stdlib/process/-/process-0.0.12.tgz#123325079d89a32f4212f72fb694f8fe3614cf18"
|
||||
integrity sha512-P0X0TMvkissBE1Wr877Avi2/AxmP7X5Toa6GatHbpJdDg6jQmN4SgPd+NZNp98YtZUyk478c8XSIzMr1krQ20g==
|
||||
dependencies:
|
||||
"@stdlib/assert" "^0.0.x"
|
||||
"@stdlib/buffer" "^0.0.x"
|
||||
"@stdlib/cli" "^0.0.x"
|
||||
"@stdlib/fs" "^0.0.x"
|
||||
"@stdlib/streams" "^0.0.x"
|
||||
"@stdlib/string" "^0.0.x"
|
||||
"@stdlib/utils" "^0.0.x"
|
||||
|
||||
"@stdlib/random@^0.0.x":
|
||||
version "0.0.12"
|
||||
resolved "https://registry.yarnpkg.com/@stdlib/random/-/random-0.0.12.tgz#e819c3abd602ed5559ba800dba751e49c633ff85"
|
||||
integrity sha512-c5yND4Ahnm9Jx0I+jsKhn4Yrz10D53ALSrIe3PG1qIz3kNFcIPnmvCuNGd+3V4ch4Mbrez55Y8z/ZC5RJh4vJQ==
|
||||
dependencies:
|
||||
"@stdlib/array" "^0.0.x"
|
||||
"@stdlib/assert" "^0.0.x"
|
||||
"@stdlib/blas" "^0.0.x"
|
||||
"@stdlib/buffer" "^0.0.x"
|
||||
"@stdlib/cli" "^0.0.x"
|
||||
"@stdlib/constants" "^0.0.x"
|
||||
"@stdlib/fs" "^0.0.x"
|
||||
"@stdlib/math" "^0.0.x"
|
||||
"@stdlib/process" "^0.0.x"
|
||||
"@stdlib/stats" "^0.0.x"
|
||||
"@stdlib/streams" "^0.0.x"
|
||||
"@stdlib/symbol" "^0.0.x"
|
||||
"@stdlib/types" "^0.0.x"
|
||||
"@stdlib/utils" "^0.0.x"
|
||||
debug "^2.6.9"
|
||||
readable-stream "^2.1.4"
|
||||
|
||||
"@stdlib/regexp-eol@^0.0.x":
|
||||
version "0.0.7"
|
||||
resolved "https://registry.yarnpkg.com/@stdlib/regexp-eol/-/regexp-eol-0.0.7.tgz#cf1667fdb5da1049c2c2f8d5c47dcbaede8650a4"
|
||||
|
@ -5263,11 +5483,61 @@
|
|||
dependencies:
|
||||
"@stdlib/utils-define-nonenumerable-read-only-property" "^0.0.x"
|
||||
|
||||
"@stdlib/regexp@^0.0.x":
|
||||
version "0.0.13"
|
||||
resolved "https://registry.yarnpkg.com/@stdlib/regexp/-/regexp-0.0.13.tgz#80b98361dc7a441b47bc3fa964bb0c826759e971"
|
||||
integrity sha512-3JT5ZIoq/1nXY+dY+QtkU8/m7oWDeekyItEEXMx9c/AOf0ph8fmvTUGMDNfUq0RetcznFe3b66kFz6Zt4XHviA==
|
||||
dependencies:
|
||||
"@stdlib/assert" "^0.0.x"
|
||||
"@stdlib/utils" "^0.0.x"
|
||||
|
||||
"@stdlib/stats@^0.0.x":
|
||||
version "0.0.13"
|
||||
resolved "https://registry.yarnpkg.com/@stdlib/stats/-/stats-0.0.13.tgz#87c973f385379d794707c7b5196a173dba8b07e1"
|
||||
integrity sha512-hm+t32dKbx/L7+7WlQ1o4NDEzV0J4QSnwFBCsIMIAO8+VPxTZ4FxyNERl4oKlS3hZZe4AVKjoOVhBDtgEWrS4g==
|
||||
dependencies:
|
||||
"@stdlib/array" "^0.0.x"
|
||||
"@stdlib/assert" "^0.0.x"
|
||||
"@stdlib/blas" "^0.0.x"
|
||||
"@stdlib/constants" "^0.0.x"
|
||||
"@stdlib/math" "^0.0.x"
|
||||
"@stdlib/ndarray" "^0.0.x"
|
||||
"@stdlib/random" "^0.0.x"
|
||||
"@stdlib/string" "^0.0.x"
|
||||
"@stdlib/symbol" "^0.0.x"
|
||||
"@stdlib/types" "^0.0.x"
|
||||
"@stdlib/utils" "^0.0.x"
|
||||
|
||||
"@stdlib/streams-node-stdin@^0.0.x":
|
||||
version "0.0.7"
|
||||
resolved "https://registry.yarnpkg.com/@stdlib/streams-node-stdin/-/streams-node-stdin-0.0.7.tgz#65ff09a2140999702a1ad885e6505334d947428f"
|
||||
integrity sha512-gg4lgrjuoG3V/L29wNs32uADMCqepIcmoOFHJCTAhVe0GtHDLybUVnLljaPfdvmpPZmTvmusPQtIcscbyWvAyg==
|
||||
|
||||
"@stdlib/streams@^0.0.x":
|
||||
version "0.0.12"
|
||||
resolved "https://registry.yarnpkg.com/@stdlib/streams/-/streams-0.0.12.tgz#07f5ceae5852590afad8e1cb7ce94174becc8739"
|
||||
integrity sha512-YLUlXwjJNknHp92IkJUdvn5jEQjDckpawKhDLLCoxyh3h5V+w/8+61SH7TMTfKx5lBxKJ8vvtchZh90mIJOAjQ==
|
||||
dependencies:
|
||||
"@stdlib/assert" "^0.0.x"
|
||||
"@stdlib/buffer" "^0.0.x"
|
||||
"@stdlib/cli" "^0.0.x"
|
||||
"@stdlib/fs" "^0.0.x"
|
||||
"@stdlib/types" "^0.0.x"
|
||||
"@stdlib/utils" "^0.0.x"
|
||||
debug "^2.6.9"
|
||||
readable-stream "^2.1.4"
|
||||
|
||||
"@stdlib/strided@^0.0.x":
|
||||
version "0.0.12"
|
||||
resolved "https://registry.yarnpkg.com/@stdlib/strided/-/strided-0.0.12.tgz#86ac48e660cb7f64a45cf07e80cbbfe58be21ae1"
|
||||
integrity sha512-1NINP+Y7IJht34iri/bYLY7TVxrip51f6Z3qWxGHUCH33kvk5H5QqV+RsmFEGbbyoGtdeHrT2O+xA+7R2e3SNg==
|
||||
dependencies:
|
||||
"@stdlib/assert" "^0.0.x"
|
||||
"@stdlib/math" "^0.0.x"
|
||||
"@stdlib/ndarray" "^0.0.x"
|
||||
"@stdlib/types" "^0.0.x"
|
||||
"@stdlib/utils" "^0.0.x"
|
||||
|
||||
"@stdlib/string-base-format-interpolate@^0.0.x":
|
||||
version "0.0.4"
|
||||
resolved "https://registry.yarnpkg.com/@stdlib/string-base-format-interpolate/-/string-base-format-interpolate-0.0.4.tgz#297eeb23c76f745dcbb3d9dbd24e316773944538"
|
||||
|
@ -5316,6 +5586,44 @@
|
|||
"@stdlib/utils-escape-regexp-string" "^0.0.x"
|
||||
"@stdlib/utils-regexp-from-string" "^0.0.x"
|
||||
|
||||
"@stdlib/string@^0.0.x":
|
||||
version "0.0.14"
|
||||
resolved "https://registry.yarnpkg.com/@stdlib/string/-/string-0.0.14.tgz#4feea4f9089ab72428eebb65fe7b93d90a7f34f4"
|
||||
integrity sha512-1ClvUTPysens7GZz3WsrkFYIFs8qDmnXkyAd3zMvTXgRpy7hqrv6nNzLMQj8BHv5cBWaWPOXYd/cZ+JyMnZNQQ==
|
||||
dependencies:
|
||||
"@stdlib/assert" "^0.0.x"
|
||||
"@stdlib/cli" "^0.0.x"
|
||||
"@stdlib/constants" "^0.0.x"
|
||||
"@stdlib/fs" "^0.0.x"
|
||||
"@stdlib/math" "^0.0.x"
|
||||
"@stdlib/nlp" "^0.0.x"
|
||||
"@stdlib/process" "^0.0.x"
|
||||
"@stdlib/regexp" "^0.0.x"
|
||||
"@stdlib/streams" "^0.0.x"
|
||||
"@stdlib/types" "^0.0.x"
|
||||
"@stdlib/utils" "^0.0.x"
|
||||
|
||||
"@stdlib/symbol@^0.0.x":
|
||||
version "0.0.12"
|
||||
resolved "https://registry.yarnpkg.com/@stdlib/symbol/-/symbol-0.0.12.tgz#b9f396b0bf269c2985bb7fe99810a8e26d7288c3"
|
||||
integrity sha512-2IDhpzWVGeLHgsvIsX12RXvf78r7xBkc4QLoRUv3k7Cp61BisR1Ym1p0Tq9PbxT8fknlvLToh9n5RpmESi2d4w==
|
||||
dependencies:
|
||||
"@stdlib/assert" "^0.0.x"
|
||||
"@stdlib/utils" "^0.0.x"
|
||||
|
||||
"@stdlib/time@^0.0.x":
|
||||
version "0.0.14"
|
||||
resolved "https://registry.yarnpkg.com/@stdlib/time/-/time-0.0.14.tgz#ea6daa438b1d3b019b99f5091117ee4bcef55d60"
|
||||
integrity sha512-1gMFCQTabMVIgww+k4g8HHHIhyy1tIlvwT8mC0BHW7Q7TzDAgobwL0bvor+lwvCb5LlDAvNQEpaRgVT99QWGeQ==
|
||||
dependencies:
|
||||
"@stdlib/assert" "^0.0.x"
|
||||
"@stdlib/cli" "^0.0.x"
|
||||
"@stdlib/constants" "^0.0.x"
|
||||
"@stdlib/fs" "^0.0.x"
|
||||
"@stdlib/math" "^0.0.x"
|
||||
"@stdlib/string" "^0.0.x"
|
||||
"@stdlib/utils" "^0.0.x"
|
||||
|
||||
"@stdlib/types@^0.0.x":
|
||||
version "0.0.14"
|
||||
resolved "https://registry.yarnpkg.com/@stdlib/types/-/types-0.0.14.tgz#02d3aab7a9bfaeb86e34ab749772ea22f7b2f7e0"
|
||||
|
@ -5497,6 +5805,30 @@
|
|||
"@stdlib/utils-constructor-name" "^0.0.x"
|
||||
"@stdlib/utils-global" "^0.0.x"
|
||||
|
||||
"@stdlib/utils@^0.0.12", "@stdlib/utils@^0.0.x":
|
||||
version "0.0.12"
|
||||
resolved "https://registry.yarnpkg.com/@stdlib/utils/-/utils-0.0.12.tgz#670de5a7b253f04f11a4cba38f790e82393bcb46"
|
||||
integrity sha512-+JhFpl6l7RSq/xGnbWRQ5dAL90h9ONj8MViqlb7teBZFtePZLMwoRA1wssypFcJ8SFMRWQn7lPmpYVUkGwRSOg==
|
||||
dependencies:
|
||||
"@stdlib/array" "^0.0.x"
|
||||
"@stdlib/assert" "^0.0.x"
|
||||
"@stdlib/blas" "^0.0.x"
|
||||
"@stdlib/buffer" "^0.0.x"
|
||||
"@stdlib/cli" "^0.0.x"
|
||||
"@stdlib/constants" "^0.0.x"
|
||||
"@stdlib/fs" "^0.0.x"
|
||||
"@stdlib/math" "^0.0.x"
|
||||
"@stdlib/os" "^0.0.x"
|
||||
"@stdlib/process" "^0.0.x"
|
||||
"@stdlib/random" "^0.0.x"
|
||||
"@stdlib/regexp" "^0.0.x"
|
||||
"@stdlib/streams" "^0.0.x"
|
||||
"@stdlib/string" "^0.0.x"
|
||||
"@stdlib/symbol" "^0.0.x"
|
||||
"@stdlib/time" "^0.0.x"
|
||||
"@stdlib/types" "^0.0.x"
|
||||
debug "^2.6.9"
|
||||
|
||||
"@storybook/addon-actions@7.0.18":
|
||||
version "7.0.18"
|
||||
resolved "https://registry.yarnpkg.com/@storybook/addon-actions/-/addon-actions-7.0.18.tgz#003cb5fc7810b5ba9fd2c8249ba82bc4b95a02dc"
|
||||
|
@ -6779,6 +7111,15 @@
|
|||
"@tryghost/debug" "^0.1.24"
|
||||
split2 "4.2.0"
|
||||
|
||||
"@tryghost/elasticsearch@^3.0.13":
|
||||
version "3.0.13"
|
||||
resolved "https://registry.yarnpkg.com/@tryghost/elasticsearch/-/elasticsearch-3.0.13.tgz#3c764bb2b5eb61221cddcac468d97e591f66c0b2"
|
||||
integrity sha512-bV9vl06ncv6LXDUZNNESsye3nKy5LmyiRZAbKRZOKhr1dlPfZ6EGy6bC9v6LrWHdlKfqpuTFnq3JDyDWpOR1pQ==
|
||||
dependencies:
|
||||
"@elastic/elasticsearch" "8.7.0"
|
||||
"@tryghost/debug" "^0.1.25"
|
||||
split2 "4.2.0"
|
||||
|
||||
"@tryghost/email-mock-receiver@0.3.1":
|
||||
version "0.3.1"
|
||||
resolved "https://registry.yarnpkg.com/@tryghost/email-mock-receiver/-/email-mock-receiver-0.3.1.tgz#b69c6866f4880ec1be9bf16cfcb3907d8a98d447"
|
||||
|
@ -6800,7 +7141,16 @@
|
|||
focus-trap "^6.7.2"
|
||||
postcss-preset-env "^7.3.1"
|
||||
|
||||
"@tryghost/errors@1.2.21", "@tryghost/errors@1.2.24", "@tryghost/errors@1.2.25", "@tryghost/errors@^1.0.0", "@tryghost/errors@^1.2.1", "@tryghost/errors@^1.2.24", "@tryghost/errors@^1.2.25", "@tryghost/errors@^1.2.3":
|
||||
"@tryghost/errors@1.2.21":
|
||||
version "1.2.21"
|
||||
resolved "https://registry.yarnpkg.com/@tryghost/errors/-/errors-1.2.21.tgz#27c57ccd27324dfc4ab1dc34f8618939fc494324"
|
||||
integrity sha512-TzV8wxDDFw2ZTI+zsFi0xggpKpc2ABqSzDp+t6dngcLuDs9erBdK5JJTV3wYBOBrJbbK6LzQlAsmH66vgO5HLQ==
|
||||
dependencies:
|
||||
"@stdlib/utils" "^0.0.12"
|
||||
lodash "^4.17.21"
|
||||
uuid "^9.0.0"
|
||||
|
||||
"@tryghost/errors@1.2.24", "@tryghost/errors@^1.0.0", "@tryghost/errors@^1.2.1", "@tryghost/errors@^1.2.24", "@tryghost/errors@^1.2.3":
|
||||
version "1.2.24"
|
||||
resolved "https://registry.yarnpkg.com/@tryghost/errors/-/errors-1.2.24.tgz#5daceff6cdee9421297849474fd885857c4bfe3f"
|
||||
integrity sha512-5iRF8dl2wirb/1gQA2dv8MtxK204vnjbWvmb3fULNZoVlmuHY1ZUgwRJRquClfUEFyl2qGmNDuoxGoTvur8JKA==
|
||||
|
@ -6809,6 +7159,15 @@
|
|||
lodash "^4.17.21"
|
||||
uuid "^9.0.0"
|
||||
|
||||
"@tryghost/errors@1.2.25", "@tryghost/errors@^1.2.25":
|
||||
version "1.2.25"
|
||||
resolved "https://registry.yarnpkg.com/@tryghost/errors/-/errors-1.2.25.tgz#9e1b715624dfd7dbde59a9fc196ebcb00d9c7553"
|
||||
integrity sha512-fVZgnFu3QsEUVPyl+uFLK6X6JSN3m7l1pMl713SmhNrkFNFM3nG1sVeNiTg/Ru4N5qIJBBIefwrfRH80Ccy3oQ==
|
||||
dependencies:
|
||||
"@stdlib/utils-copy" "^0.0.7"
|
||||
lodash "^4.17.21"
|
||||
uuid "^9.0.0"
|
||||
|
||||
"@tryghost/express-test@0.13.4":
|
||||
version "0.13.4"
|
||||
resolved "https://registry.yarnpkg.com/@tryghost/express-test/-/express-test-0.13.4.tgz#e31344a0c7678b7cfaff4d22e74e564d26f41ccc"
|
||||
|
@ -6847,6 +7206,14 @@
|
|||
"@tryghost/errors" "^1.2.24"
|
||||
"@tryghost/request" "^0.1.39"
|
||||
|
||||
"@tryghost/http-stream@^0.1.22":
|
||||
version "0.1.22"
|
||||
resolved "https://registry.yarnpkg.com/@tryghost/http-stream/-/http-stream-0.1.22.tgz#b4542d9e8b1edcfc5fe1c090b17ca1cecc4d13f1"
|
||||
integrity sha512-uBD6YyW4ZVPaDOfsztPZ0F7kVWUEuqjyRIOwn2+Iq/wL8VStwHek223dEVkUp3cq/KtPCgOQ5KioA2g8QSkQ8Q==
|
||||
dependencies:
|
||||
"@tryghost/errors" "^1.2.25"
|
||||
"@tryghost/request" "^0.1.40"
|
||||
|
||||
"@tryghost/image-transform@1.2.6":
|
||||
version "1.2.6"
|
||||
resolved "https://registry.yarnpkg.com/@tryghost/image-transform/-/image-transform-1.2.6.tgz#530c792a50853b1779ecb8e15bee8ea5d1d890ef"
|
||||
|
@ -6983,7 +7350,7 @@
|
|||
lodash "^4.17.21"
|
||||
luxon "^1.26.0"
|
||||
|
||||
"@tryghost/logging@2.4.4", "@tryghost/logging@2.4.5", "@tryghost/logging@^2.4.5":
|
||||
"@tryghost/logging@2.4.4":
|
||||
version "2.4.4"
|
||||
resolved "https://registry.yarnpkg.com/@tryghost/logging/-/logging-2.4.4.tgz#4101d87c82bc6996a3ddd99755069b94d584e3e6"
|
||||
integrity sha512-nRsc5EOqYuHLWYXe/K1AjrRU82xOtQN52GL7r9WY0NCKNZ5/tCFTDdOASKMbFPvpyT5pZlt2vE5+Fu8TdbN8Aw==
|
||||
|
@ -7000,6 +7367,23 @@
|
|||
json-stringify-safe "^5.0.1"
|
||||
lodash "^4.17.21"
|
||||
|
||||
"@tryghost/logging@2.4.5", "@tryghost/logging@^2.4.5":
|
||||
version "2.4.5"
|
||||
resolved "https://registry.yarnpkg.com/@tryghost/logging/-/logging-2.4.5.tgz#aa8d67ae6904c89f46fcc9b7226d579e8b0ce9f6"
|
||||
integrity sha512-QDkgxWs5jFOWj5Gyf4RtGddwvjaiQtJNmvWZaPcwKy/Hii7I4EEHWSslLX4Y482u5nvgHtnyzynSNUYWwIzGWw==
|
||||
dependencies:
|
||||
"@tryghost/bunyan-rotating-filestream" "^0.0.7"
|
||||
"@tryghost/elasticsearch" "^3.0.13"
|
||||
"@tryghost/http-stream" "^0.1.22"
|
||||
"@tryghost/pretty-stream" "^0.1.19"
|
||||
"@tryghost/root-utils" "^0.3.23"
|
||||
bunyan "^1.8.15"
|
||||
bunyan-loggly "^1.4.2"
|
||||
fs-extra "^10.0.0"
|
||||
gelf-stream "^1.1.1"
|
||||
json-stringify-safe "^5.0.1"
|
||||
lodash "^4.17.21"
|
||||
|
||||
"@tryghost/metrics@1.0.24":
|
||||
version "1.0.24"
|
||||
resolved "https://registry.yarnpkg.com/@tryghost/metrics/-/metrics-1.0.24.tgz#d1aad748a4d0ca71ce7a78fd926ff0fdf44e95b3"
|
||||
|
@ -7097,6 +7481,15 @@
|
|||
moment "^2.29.1"
|
||||
prettyjson "^1.2.5"
|
||||
|
||||
"@tryghost/pretty-stream@^0.1.19":
|
||||
version "0.1.19"
|
||||
resolved "https://registry.yarnpkg.com/@tryghost/pretty-stream/-/pretty-stream-0.1.19.tgz#bdfc6966403e4f10159e81bc576ba5f336b9d217"
|
||||
integrity sha512-lJ8+u7FgALxwIeHJPxgoeRukJjMn7vVDmPV7WzW46BtqSJghOrlcI0JiLGTRxkrj+czDeys6rx8haS5KXTzPDA==
|
||||
dependencies:
|
||||
lodash "^4.17.21"
|
||||
moment "^2.29.1"
|
||||
prettyjson "^1.2.5"
|
||||
|
||||
"@tryghost/promise@0.3.4":
|
||||
version "0.3.4"
|
||||
resolved "https://registry.yarnpkg.com/@tryghost/promise/-/promise-0.3.4.tgz#b5437eb14a3d06e7d32f277e10975ff77061e16e"
|
||||
|
@ -7113,6 +7506,17 @@
|
|||
got "9.6.0"
|
||||
lodash "^4.17.21"
|
||||
|
||||
"@tryghost/request@^0.1.40":
|
||||
version "0.1.40"
|
||||
resolved "https://registry.yarnpkg.com/@tryghost/request/-/request-0.1.40.tgz#daac10c1fe34e4397e5f76d75ae0de85bbc58c9b"
|
||||
integrity sha512-EX1iy6k2xvL7u5pgfpBhgmpWVUhc4X8UupCmNfhxiPS4JYbNDHEvh2e8Ha/20kOJs8ZEvbu/qosQoUhZYXKmHg==
|
||||
dependencies:
|
||||
"@tryghost/errors" "^1.2.25"
|
||||
"@tryghost/validator" "^0.2.5"
|
||||
"@tryghost/version" "^0.1.23"
|
||||
got "9.6.0"
|
||||
lodash "^4.17.21"
|
||||
|
||||
"@tryghost/root-utils@0.3.22":
|
||||
version "0.3.22"
|
||||
resolved "https://registry.yarnpkg.com/@tryghost/root-utils/-/root-utils-0.3.22.tgz#23793e467afb41b27f4e289a3618d71bd90bc575"
|
||||
|
@ -7210,6 +7614,17 @@
|
|||
moment-timezone "^0.5.23"
|
||||
validator "7.2.0"
|
||||
|
||||
"@tryghost/validator@^0.2.5":
|
||||
version "0.2.5"
|
||||
resolved "https://registry.yarnpkg.com/@tryghost/validator/-/validator-0.2.5.tgz#dfe709db0e88d37117bed23909b33c96d349d059"
|
||||
integrity sha512-/7L53955PpahkwDOVxL6ak/o4fBPv/eQq8+hvGIlTHlJghb2OW5RYO5Pv4Xc/DcTc5vH3ZwyeT4tltvV+Hsrvw==
|
||||
dependencies:
|
||||
"@tryghost/errors" "^1.2.25"
|
||||
"@tryghost/tpl" "^0.1.25"
|
||||
lodash "^4.17.21"
|
||||
moment-timezone "^0.5.23"
|
||||
validator "7.2.0"
|
||||
|
||||
"@tryghost/version@0.1.22", "@tryghost/version@^0.1.22":
|
||||
version "0.1.22"
|
||||
resolved "https://registry.yarnpkg.com/@tryghost/version/-/version-0.1.22.tgz#e2a9f6eec4f9f8945094d3bd7c0757438f4e0622"
|
||||
|
@ -7218,6 +7633,14 @@
|
|||
"@tryghost/root-utils" "^0.3.22"
|
||||
semver "^7.3.5"
|
||||
|
||||
"@tryghost/version@^0.1.23":
|
||||
version "0.1.23"
|
||||
resolved "https://registry.yarnpkg.com/@tryghost/version/-/version-0.1.23.tgz#2cd717af54658880a29a6f0aa3f9edbb01ba47ee"
|
||||
integrity sha512-JH1VodsYyuzK0ANAy7nZFFe3nwAXoE+UuCAuCBXFzWCA/Id3LBJiGn97P7RrNcFvmuJ1JHtYTlHVhaoYwjYL1w==
|
||||
dependencies:
|
||||
"@tryghost/root-utils" "^0.3.23"
|
||||
semver "^7.3.5"
|
||||
|
||||
"@tryghost/webhook-mock-receiver@0.2.6":
|
||||
version "0.2.6"
|
||||
resolved "https://registry.yarnpkg.com/@tryghost/webhook-mock-receiver/-/webhook-mock-receiver-0.2.6.tgz#20a4141f5813287988770f5f1e394ad2af5c1063"
|
||||
|
@ -24308,18 +24731,52 @@ modify-values@^1.0.0:
|
|||
resolved "https://registry.yarnpkg.com/modify-values/-/modify-values-1.0.1.tgz#b3939fa605546474e3e3e3c63d64bd43b4ee6022"
|
||||
integrity sha512-xV2bxeN6F7oYjZWTe/YPAy6MN2M+sL4u/Rlm2AHCIVGfo2p1yGmBHQ6vHehl4bRTZBdHu3TSkWdYgkwpYzAGSw==
|
||||
|
||||
moment-timezone@0.5.23, moment-timezone@0.5.34, moment-timezone@^0.5.23, moment-timezone@^0.5.31, moment-timezone@^0.5.33:
|
||||
moment-timezone@0.5.23, moment-timezone@^0.5.23:
|
||||
version "0.5.23"
|
||||
resolved "https://registry.yarnpkg.com/moment-timezone/-/moment-timezone-0.5.23.tgz#7cbb00db2c14c71b19303cb47b0fb0a6d8651463"
|
||||
integrity sha512-WHFH85DkCfiNMDX5D3X7hpNH3/PUhjTGcD0U1SgfBGZxJ3qUmJh5FdvaFjcClxOvB3rzdfj4oRffbI38jEnC1w==
|
||||
dependencies:
|
||||
moment ">= 2.9.0"
|
||||
|
||||
moment@2.24.0, moment@2.27.0, moment@2.29.1, moment@2.29.3, moment@2.29.4, "moment@>= 2.9.0", moment@^2.10.2, moment@^2.18.1, moment@^2.19.3, moment@^2.27.0, moment@^2.29.1:
|
||||
moment-timezone@0.5.34:
|
||||
version "0.5.34"
|
||||
resolved "https://registry.yarnpkg.com/moment-timezone/-/moment-timezone-0.5.34.tgz#a75938f7476b88f155d3504a9343f7519d9a405c"
|
||||
integrity sha512-3zAEHh2hKUs3EXLESx/wsgw6IQdusOT8Bxm3D9UrHPQR7zlMmzwybC8zHEM1tQ4LJwP7fcxrWr8tuBg05fFCbg==
|
||||
dependencies:
|
||||
moment ">= 2.9.0"
|
||||
|
||||
moment-timezone@^0.5.31, moment-timezone@^0.5.33:
|
||||
version "0.5.43"
|
||||
resolved "https://registry.yarnpkg.com/moment-timezone/-/moment-timezone-0.5.43.tgz#3dd7f3d0c67f78c23cd1906b9b2137a09b3c4790"
|
||||
integrity sha512-72j3aNyuIsDxdF1i7CEgV2FfxM1r6aaqJyLB2vwb33mXYyoyLly+F1zbWqhA3/bVIoJ4szlUoMbUnVdid32NUQ==
|
||||
dependencies:
|
||||
moment "^2.29.4"
|
||||
|
||||
moment@2.24.0, "moment@>= 2.9.0", moment@^2.10.2, moment@^2.18.1, moment@^2.19.3:
|
||||
version "2.24.0"
|
||||
resolved "https://registry.yarnpkg.com/moment/-/moment-2.24.0.tgz#0d055d53f5052aa653c9f6eb68bb5d12bf5c2b5b"
|
||||
integrity sha512-bV7f+6l2QigeBBZSM/6yTNq4P2fNpSWj/0e7jQcy87A8e7o2nAfP/34/2ky5Vw4B9S446EtIhodAzkFCcR4dQg==
|
||||
|
||||
moment@2.27.0:
|
||||
version "2.27.0"
|
||||
resolved "https://registry.yarnpkg.com/moment/-/moment-2.27.0.tgz#8bff4e3e26a236220dfe3e36de756b6ebaa0105d"
|
||||
integrity sha512-al0MUK7cpIcglMv3YF13qSgdAIqxHTO7brRtaz3DlSULbqfazqkc5kEjNrLDOM7fsjshoFIihnU8snrP7zUvhQ==
|
||||
|
||||
moment@2.29.1:
|
||||
version "2.29.1"
|
||||
resolved "https://registry.yarnpkg.com/moment/-/moment-2.29.1.tgz#b2be769fa31940be9eeea6469c075e35006fa3d3"
|
||||
integrity sha512-kHmoybcPV8Sqy59DwNDY3Jefr64lK/by/da0ViFcuA4DH0vQg5Q6Ze5VimxkfQNSC+Mls/Kx53s7TjP1RhFEDQ==
|
||||
|
||||
moment@2.29.3:
|
||||
version "2.29.3"
|
||||
resolved "https://registry.yarnpkg.com/moment/-/moment-2.29.3.tgz#edd47411c322413999f7a5940d526de183c031f3"
|
||||
integrity sha512-c6YRvhEo//6T2Jz/vVtYzqBzwvPT95JBQ+smCytzf7c50oMZRsR/a4w88aD34I+/QVSfnoAnSBFPJHItlOMJVw==
|
||||
|
||||
moment@2.29.4, moment@^2.27.0, moment@^2.29.1, moment@^2.29.4:
|
||||
version "2.29.4"
|
||||
resolved "https://registry.yarnpkg.com/moment/-/moment-2.29.4.tgz#3dbe052889fe7c1b2ed966fcb3a77328964ef108"
|
||||
integrity sha512-5LC9SOxjSc2HF6vO2CyuTDNivEdoz2IvyJJGj6X8DJ0eFyfszE0QiEd+iXmBvUP3WHxSjFH/vIsA0EN00cgr8w==
|
||||
|
||||
monobundle@TryGhost/monobundle#2aca618f8880250fb99ad48d61f0ca7251f1e648:
|
||||
version "0.1.0"
|
||||
resolved "https://codeload.github.com/TryGhost/monobundle/tar.gz/2aca618f8880250fb99ad48d61f0ca7251f1e648"
|
||||
|
@ -28392,6 +28849,19 @@ readable-stream@1.1.x, readable-stream@^1.0.26-4:
|
|||
string_decoder "^1.1.1"
|
||||
util-deprecate "^1.0.1"
|
||||
|
||||
readable-stream@^2.1.4:
|
||||
version "2.3.8"
|
||||
resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.8.tgz#91125e8042bba1b9887f49345f6277027ce8be9b"
|
||||
integrity sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==
|
||||
dependencies:
|
||||
core-util-is "~1.0.0"
|
||||
inherits "~2.0.3"
|
||||
isarray "~1.0.0"
|
||||
process-nextick-args "~2.0.0"
|
||||
safe-buffer "~5.1.1"
|
||||
string_decoder "~1.1.1"
|
||||
util-deprecate "~1.0.1"
|
||||
|
||||
readable-stream@^4.1.0:
|
||||
version "4.3.0"
|
||||
resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-4.3.0.tgz#0914d0c72db03b316c9733bb3461d64a3cc50cba"
|
||||
|
|
Loading…
Add table
Reference in a new issue