feat(data-transfer): add directory export/import format (#25867)
@@ -148,7 +148,6 @@ npm-debug.log
|
||||
playwright-report
|
||||
tests/e2e/playwright-storage-state.json
|
||||
test-results
|
||||
!tests/e2e/data/*.tar
|
||||
tests/e2e/.env
|
||||
!tests/cli/data/*.tar.gz
|
||||
tests/cli/.env
|
||||
|
||||
@@ -5,3 +5,7 @@ build
|
||||
.strapi
|
||||
/.nx/cache
|
||||
/.nx/workspace-data
|
||||
# Strapi DTS dump fixtures: entire per-fixture dirs (JSONL, metadata.json, assets/metadata, assets/uploads, …)
|
||||
tests/e2e/data/**
|
||||
# Local DTS export trees (e.g. examples/complex/tmp-dts-export) — same layout; avoid Prettier EOF/newline churn
|
||||
**/tmp-dts-export/**
|
||||
|
||||
@@ -13,11 +13,13 @@ This document explains how and why we use `@strapi/data-transfer` as means to re
|
||||
|
||||
### Why use Data Transfer?
|
||||
|
||||
We could use custom API endpoints of the application, and whilst this isn't a poor solution, it would _most likely_ require some code writing to set up the data for the schema entries. However, in `4.6.0` Strapi released the `DTS` feature (DTS – Data Transfer System). This means any member of Strapi can export the data of their instance producing a `.tar` that we can then import programatically restoring the database to this point in time and ensuring a "pure" test environment.
|
||||
We could use custom API endpoints of the application, and whilst this isn't a poor solution, it would _most likely_ require some code writing to set up the data for the schema entries. However, in `4.6.0` Strapi released the `DTS` feature (DTS – Data Transfer System). This means any member of Strapi can export the data of their instance and we can import it programmatically to restore the database to this point in time and ensure a "pure" test environment.
|
||||
|
||||
End-to-end fixtures live under `tests/e2e/data` as **unpacked export directories** (same layout as inside a Strapi `.tar`: `metadata.json`, `schemas/`, `entities/`, `links/`, `configuration/`, `assets/`, …). That way JSON and JSONL changes show up as normal text diffs in Git. Binary media stays under `assets/uploads/` (ignored by Prettier).
|
||||
|
||||
### Limitations of Data Transfer
|
||||
|
||||
The main limitation with data transfer is we cannot version or review changes to the data. Making changes to the data set should be done with care since it is quite easy to export data with unknown changes to the database that could impact other tests.
|
||||
Making changes to the data set should still be done with care: unknown changes to the database can impact other tests. Review JSONL and metadata diffs when updating fixtures.
|
||||
|
||||
## Updating data for tests
|
||||
|
||||
@@ -27,7 +29,7 @@ Each test should be isolated and not depend on another test. Data changes from o
|
||||
|
||||
Since the Strapi CLI will use `@strapi/data-transfer` directly it will by default not import or export admin users, API tokens, or any other features that have been included in its exclusion list.
|
||||
|
||||
For this reason, do NOT use the import or export command on the strapi test instance. A DTS engine has been created specifically for our tests cases. This allows us to redefine what should be included in the import or export for our tests. The scripts can be found in `tests/e2e/scripts/dts-import.ts` and `tests/e2e/scripts/dts-export.ts`.
|
||||
For this reason, do NOT use the import or export command on the strapi test instance. A DTS engine has been created specifically for our tests cases. This allows us to redefine what should be included in the import or export for our tests. Helpers live in `tests/utils/dts-import.ts` (see also `tests/e2e/scripts/dts-export.ts` for exporting updated packets).
|
||||
|
||||
### Importing an existing data packet
|
||||
|
||||
@@ -40,7 +42,7 @@ Navigate to one of the test-apps and run `yarn install && yarn develop`
|
||||
Leave the development server running, and then run the following command to reset and seed the database with the current e2e data packet. The script expects the name of the data packet you want to import found in `tests/e2e/data`.
|
||||
|
||||
```shell
|
||||
STRAPI_LICENSE=<license-with-ee-feature> npx ts-node <PATH_TO_SCRIPT>/dts-import.ts with-admin.tar
|
||||
STRAPI_LICENSE=<license-with-ee-feature> npx ts-node <PATH_TO_SCRIPT>/dts-import.ts with-admin
|
||||
```
|
||||
|
||||
This script will include admin users and all the content-types specified in `tests/e2e/constants.ts`
|
||||
@@ -73,11 +75,11 @@ If you are exporting data for an EE feature you will need to run the script with
|
||||
STRAPI_LICENSE=<license-with-ee-feature> npx ts-node <PATH_TO_SCRIPT>/dts-export.ts updated-data-packet
|
||||
```
|
||||
|
||||
The script will create a file `updated-data-packet.tar`. You can copy this file over to `tests/e2e/data` so it can be used in the appropriate tests.
|
||||
The script will create a file `updated-data-packet.tar`. Extract it into a directory (same layout as Strapi’s export) and add that directory under `tests/e2e/data` (for example `tests/e2e/data/updated-data-packet/`) so tests can import from the folder and you can review changes as text. Remove the `.tar` after extracting if you only keep the unpacked tree in Git.
|
||||
|
||||
### Importing the data packet in test scenarios
|
||||
|
||||
There's an abstraction for importing the data programmatically during tests named `resetDatabaseAndImportDataFromPath` found in `tests/e2e/utils/dts-import.ts`. Typically, you'll want to run this **before** each test:
|
||||
There's an abstraction for importing the data programmatically during tests named `resetDatabaseAndImportDataFromPath` in `tests/utils/dts-import.ts`. Pass the name of a directory under `tests/e2e/data` (for example `with-admin`). You can still pass a path to a `.tar` file; the helper picks the file or directory source provider automatically. Typically, you'll want to run this **before** each test:
|
||||
|
||||
```ts
|
||||
import { test } from '@playwright/test';
|
||||
@@ -85,7 +87,7 @@ import { resetDatabaseAndImportDataFromPath } from './utils/dts-import';
|
||||
|
||||
test.describe('Strapi Application', () => {
|
||||
test.beforeEach(async ({ page }) => {
|
||||
await resetDatabaseAndImportDataFromPath('backup.tar');
|
||||
await resetDatabaseAndImportDataFromPath('with-admin');
|
||||
await page.goto('/admin');
|
||||
});
|
||||
|
||||
|
||||
@@ -0,0 +1 @@
|
||||
export * as providers from './providers';
|
||||
@@ -0,0 +1,63 @@
|
||||
import { Readable } from 'stream';
|
||||
|
||||
import fs from 'fs-extra';
|
||||
import { tmpdir } from 'os';
|
||||
import path from 'path';
|
||||
|
||||
import { ProviderTransferError } from '../../../../errors/providers';
|
||||
import { createLocalDirectoryDestinationProvider } from '..';
|
||||
|
||||
describe('Directory destination provider', () => {
|
||||
test('bootstrap creates root and sets results.file', async () => {
|
||||
const dir = await fs.mkdtemp(path.join(tmpdir(), 'dts-dest-'));
|
||||
const provider = createLocalDirectoryDestinationProvider({
|
||||
directory: { path: dir },
|
||||
file: {},
|
||||
});
|
||||
|
||||
await provider.bootstrap({ report: jest.fn() } as never);
|
||||
|
||||
expect(await fs.pathExists(dir)).toBe(true);
|
||||
expect(provider.results.file?.path).toBe(dir);
|
||||
});
|
||||
|
||||
test('createAssetsWriteStream surfaces sync fs errors as ProviderTransferError (engine-reportable)', async () => {
|
||||
const dir = await fs.mkdtemp(path.join(tmpdir(), 'dts-dest-assets-err-'));
|
||||
const provider = createLocalDirectoryDestinationProvider({
|
||||
directory: { path: dir },
|
||||
file: {},
|
||||
});
|
||||
|
||||
await provider.bootstrap({ report: jest.fn() } as never);
|
||||
|
||||
const mkdirSyncSpy = jest.spyOn(fs, 'mkdirSync').mockImplementationOnce(() => {
|
||||
throw Object.assign(new Error('mock EACCES'), { code: 'EACCES' });
|
||||
});
|
||||
|
||||
const writable = provider.createAssetsWriteStream();
|
||||
// Writable invokes write(cb) with err and also emits `error`; listen so Node does not treat it as unhandled.
|
||||
writable.on('error', () => {});
|
||||
|
||||
const asset = {
|
||||
filename: 'photo.png',
|
||||
filepath: '/unused',
|
||||
stream: Readable.from([]),
|
||||
stats: { size: 0 },
|
||||
metadata: {} as never,
|
||||
};
|
||||
|
||||
const err: unknown = await new Promise((resolve) => {
|
||||
writable.write(asset, (e) => resolve(e));
|
||||
});
|
||||
|
||||
mkdirSyncSpy.mockRestore();
|
||||
|
||||
expect(err).toBeInstanceOf(ProviderTransferError);
|
||||
expect((err as ProviderTransferError).message).toContain('photo.png');
|
||||
const nested = (err as ProviderTransferError).details as {
|
||||
details?: { details?: { error?: Error } };
|
||||
};
|
||||
expect(nested?.details?.details?.error).toBeInstanceOf(Error);
|
||||
expect(nested?.details?.details?.error?.message).toBe('mock EACCES');
|
||||
});
|
||||
});
|
||||
@@ -0,0 +1,192 @@
|
||||
import path from 'path';
|
||||
import { createWriteStream } from 'fs';
|
||||
import { Writable, pipeline } from 'stream';
|
||||
import fs from 'fs-extra';
|
||||
import { stringer } from 'stream-json/jsonl/Stringer';
|
||||
import { chain } from 'stream-chain';
|
||||
|
||||
import type {
|
||||
IAsset,
|
||||
IDestinationProvider,
|
||||
IDestinationProviderTransferResults,
|
||||
IMetadata,
|
||||
ProviderType,
|
||||
} from '../../../../types';
|
||||
import type { IDiagnosticReporter } from '../../../utils/diagnostic';
|
||||
import { createDirectoryJsonlWriter, createFilePathFactory } from './utils';
|
||||
import { ProviderTransferError } from '../../../errors/providers';
|
||||
|
||||
export interface ILocalDirectoryDestinationProviderOptions {
|
||||
directory: {
|
||||
/** Output root: unpacked Strapi export layout (metadata.json, entities/, …) */
|
||||
path: string;
|
||||
};
|
||||
file: {
|
||||
maxSizeJsonl?: number;
|
||||
};
|
||||
}
|
||||
|
||||
export interface ILocalDirectoryDestinationProviderTransferResults
|
||||
extends IDestinationProviderTransferResults {
|
||||
file?: {
|
||||
path?: string;
|
||||
};
|
||||
}
|
||||
|
||||
export const createLocalDirectoryDestinationProvider = (
|
||||
options: ILocalDirectoryDestinationProviderOptions
|
||||
) => {
|
||||
return new LocalDirectoryDestinationProvider(options);
|
||||
};
|
||||
|
||||
class LocalDirectoryDestinationProvider implements IDestinationProvider {
|
||||
name = 'destination::local-directory';
|
||||
|
||||
type: ProviderType = 'destination';
|
||||
|
||||
options: ILocalDirectoryDestinationProviderOptions;
|
||||
|
||||
results: ILocalDirectoryDestinationProviderTransferResults = {};
|
||||
|
||||
#providersMetadata: { source?: IMetadata; destination?: IMetadata } = {};
|
||||
|
||||
#rootResolved: string;
|
||||
|
||||
#diagnostics?: IDiagnosticReporter;
|
||||
|
||||
constructor(options: ILocalDirectoryDestinationProviderOptions) {
|
||||
this.options = options;
|
||||
this.#rootResolved = path.resolve(options.directory.path);
|
||||
}
|
||||
|
||||
#reportInfo(message: string) {
|
||||
this.#diagnostics?.report({
|
||||
details: {
|
||||
createdAt: new Date(),
|
||||
message,
|
||||
origin: 'directory-destination-provider',
|
||||
},
|
||||
kind: 'info',
|
||||
});
|
||||
}
|
||||
|
||||
setMetadata(target: ProviderType, metadata: IMetadata): IDestinationProvider {
|
||||
this.#providersMetadata[target] = metadata;
|
||||
return this;
|
||||
}
|
||||
|
||||
async bootstrap(diagnostics: IDiagnosticReporter): Promise<void> {
|
||||
this.#diagnostics = diagnostics;
|
||||
this.#reportInfo('preparing directory export');
|
||||
await fs.mkdir(this.#rootResolved, { recursive: true });
|
||||
this.results.file = { path: this.#rootResolved };
|
||||
}
|
||||
|
||||
async close() {
|
||||
await this.#writeMetadata();
|
||||
}
|
||||
|
||||
async rollback(): Promise<void> {
|
||||
this.#reportInfo('rolling back');
|
||||
await fs.rm(this.#rootResolved, { recursive: true, force: true });
|
||||
}
|
||||
|
||||
getMetadata() {
|
||||
return null;
|
||||
}
|
||||
|
||||
async #writeMetadata(): Promise<void> {
|
||||
this.#reportInfo('writing metadata');
|
||||
const metadata = this.#providersMetadata.source;
|
||||
if (metadata) {
|
||||
const target = path.join(this.#rootResolved, 'metadata.json');
|
||||
await fs.mkdir(path.dirname(target), { recursive: true });
|
||||
await fs.writeFile(target, JSON.stringify(metadata, null, 2), 'utf8');
|
||||
}
|
||||
}
|
||||
|
||||
createSchemasWriteStream() {
|
||||
this.#reportInfo('creating schemas write stream');
|
||||
const filePathFactory = createFilePathFactory('schemas');
|
||||
const entryStream = createDirectoryJsonlWriter(
|
||||
this.#rootResolved,
|
||||
filePathFactory,
|
||||
this.options.file.maxSizeJsonl
|
||||
);
|
||||
return chain([stringer(), entryStream]);
|
||||
}
|
||||
|
||||
createEntitiesWriteStream(): Writable {
|
||||
this.#reportInfo('creating entities write stream');
|
||||
const filePathFactory = createFilePathFactory('entities');
|
||||
const entryStream = createDirectoryJsonlWriter(
|
||||
this.#rootResolved,
|
||||
filePathFactory,
|
||||
this.options.file.maxSizeJsonl
|
||||
);
|
||||
return chain([stringer(), entryStream]);
|
||||
}
|
||||
|
||||
createLinksWriteStream(): Writable {
|
||||
this.#reportInfo('creating links write stream');
|
||||
const filePathFactory = createFilePathFactory('links');
|
||||
const entryStream = createDirectoryJsonlWriter(
|
||||
this.#rootResolved,
|
||||
filePathFactory,
|
||||
this.options.file.maxSizeJsonl
|
||||
);
|
||||
return chain([stringer(), entryStream]);
|
||||
}
|
||||
|
||||
createConfigurationWriteStream(): Writable {
|
||||
this.#reportInfo('creating configuration write stream');
|
||||
const filePathFactory = createFilePathFactory('configuration');
|
||||
const entryStream = createDirectoryJsonlWriter(
|
||||
this.#rootResolved,
|
||||
filePathFactory,
|
||||
this.options.file.maxSizeJsonl
|
||||
);
|
||||
return chain([stringer(), entryStream]);
|
||||
}
|
||||
|
||||
createAssetsWriteStream(): Writable {
|
||||
this.#reportInfo('creating assets write stream');
|
||||
const root = this.#rootResolved;
|
||||
|
||||
return new Writable({
|
||||
objectMode: true,
|
||||
write(data: IAsset, _encoding, callback) {
|
||||
const { filename } = data;
|
||||
const entryPath = path.join(root, 'assets', 'uploads', filename);
|
||||
const entryMetadataPath = path.join(root, 'assets', 'metadata', `${filename}.json`);
|
||||
|
||||
const assetWriteError = (cause: unknown) =>
|
||||
new ProviderTransferError(`Failed to write asset ${filename}`, {
|
||||
details: {
|
||||
error: cause instanceof Error ? cause : new Error(String(cause)),
|
||||
},
|
||||
});
|
||||
|
||||
let fileStream: ReturnType<typeof createWriteStream>;
|
||||
|
||||
try {
|
||||
fs.mkdirSync(path.dirname(entryPath), { recursive: true });
|
||||
fs.mkdirSync(path.dirname(entryMetadataPath), { recursive: true });
|
||||
fs.writeFileSync(entryMetadataPath, JSON.stringify(data.metadata), 'utf8');
|
||||
fileStream = createWriteStream(entryPath);
|
||||
} catch (error: unknown) {
|
||||
callback(assetWriteError(error));
|
||||
return;
|
||||
}
|
||||
|
||||
pipeline(data.stream, fileStream, (err) => {
|
||||
if (err) {
|
||||
callback(assetWriteError(err));
|
||||
return;
|
||||
}
|
||||
callback(null);
|
||||
});
|
||||
},
|
||||
});
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,71 @@
|
||||
import { promises as fsp } from 'fs';
|
||||
import path from 'path';
|
||||
import { Writable } from 'stream';
|
||||
|
||||
import { createFilePathFactory } from '../../../file/providers/destination/utils';
|
||||
|
||||
export { createFilePathFactory };
|
||||
|
||||
/**
|
||||
* JSONL writer that mirrors {@link createTarEntryStream} but writes files under a root directory.
|
||||
*/
|
||||
export const createDirectoryJsonlWriter = (
|
||||
rootDir: string,
|
||||
pathFactory: (index?: number) => string,
|
||||
maxSize = 2.56e8
|
||||
) => {
|
||||
let fileIndex = 0;
|
||||
let buffer = '';
|
||||
|
||||
const resolvePath = (posixName: string) => path.join(rootDir, ...posixName.split('/'));
|
||||
|
||||
const flush = async () => {
|
||||
if (!buffer) {
|
||||
return;
|
||||
}
|
||||
|
||||
fileIndex += 1;
|
||||
const name = pathFactory(fileIndex);
|
||||
const targetPath = resolvePath(name);
|
||||
await fsp.mkdir(path.dirname(targetPath), { recursive: true });
|
||||
await fsp.writeFile(targetPath, buffer, 'utf8');
|
||||
buffer = '';
|
||||
};
|
||||
|
||||
const push = (chunk: string | Buffer) => {
|
||||
buffer += chunk;
|
||||
};
|
||||
|
||||
return new Writable({
|
||||
async final(callback) {
|
||||
try {
|
||||
await flush();
|
||||
callback();
|
||||
} catch (err: unknown) {
|
||||
callback(err instanceof Error ? err : new Error(String(err)));
|
||||
}
|
||||
},
|
||||
|
||||
async destroy(err, callback) {
|
||||
await flush();
|
||||
callback(err);
|
||||
},
|
||||
|
||||
async write(chunk, _encoding, callback) {
|
||||
const size = chunk.length;
|
||||
|
||||
if (chunk.length > maxSize) {
|
||||
callback(new Error(`payload too large: ${chunk.length}>${maxSize}`));
|
||||
return;
|
||||
}
|
||||
|
||||
if (buffer.length + size > maxSize) {
|
||||
await flush();
|
||||
}
|
||||
|
||||
push(chunk);
|
||||
|
||||
callback(null);
|
||||
},
|
||||
});
|
||||
};
|
||||
@@ -0,0 +1,2 @@
|
||||
export * from './destination';
|
||||
export * from './source';
|
||||
@@ -0,0 +1,83 @@
|
||||
import fs from 'fs-extra';
|
||||
import { tmpdir } from 'os';
|
||||
import path from 'path';
|
||||
import { Readable } from 'stream';
|
||||
|
||||
import { createLocalDirectorySourceProvider } from '..';
|
||||
|
||||
const minimalMetadata = { strapi: { version: '5.0.0' }, createdAt: new Date().toISOString() };
|
||||
|
||||
const minimalSchemaLine = JSON.stringify({
|
||||
uid: 'api::test.test',
|
||||
kind: 'collectionType',
|
||||
modelType: 'contentType',
|
||||
modelName: 'test',
|
||||
collectionName: 'tests',
|
||||
info: {
|
||||
singularName: 'test',
|
||||
pluralName: 'tests',
|
||||
displayName: 'Test',
|
||||
},
|
||||
options: {},
|
||||
pluginOptions: {},
|
||||
attributes: {
|
||||
title: { type: 'string' },
|
||||
},
|
||||
});
|
||||
|
||||
describe('Directory source provider', () => {
|
||||
test('bootstrap fails when metadata.json is missing', async () => {
|
||||
const dir = await fs.mkdtemp(path.join(tmpdir(), 'dts-dir-'));
|
||||
const provider = createLocalDirectorySourceProvider({ directory: { path: dir } });
|
||||
await expect(provider.bootstrap({ report: jest.fn() } as never)).rejects.toThrow();
|
||||
});
|
||||
|
||||
test('getMetadata and getSchemas after bootstrap', async () => {
|
||||
const dir = await fs.mkdtemp(path.join(tmpdir(), 'dts-dir-'));
|
||||
await fs.writeJson(path.join(dir, 'metadata.json'), minimalMetadata);
|
||||
await fs.ensureDir(path.join(dir, 'schemas'));
|
||||
await fs.writeFile(path.join(dir, 'schemas', 'schemas_00000.jsonl'), `${minimalSchemaLine}\n`);
|
||||
|
||||
const provider = createLocalDirectorySourceProvider({ directory: { path: dir } });
|
||||
await provider.bootstrap({ report: jest.fn() } as never);
|
||||
|
||||
await expect(provider.getMetadata()).resolves.toMatchObject({ strapi: { version: '5.0.0' } });
|
||||
await expect(provider.getSchemas()).resolves.toMatchObject({
|
||||
'api::test.test': expect.objectContaining({ uid: 'api::test.test' }),
|
||||
});
|
||||
});
|
||||
|
||||
test('createAssetsReadStream returns readable', async () => {
|
||||
const dir = await fs.mkdtemp(path.join(tmpdir(), 'dts-dir-'));
|
||||
await fs.writeJson(path.join(dir, 'metadata.json'), minimalMetadata);
|
||||
const provider = createLocalDirectorySourceProvider({ directory: { path: dir } });
|
||||
await provider.bootstrap({ report: jest.fn() } as never);
|
||||
|
||||
const stream = provider.createAssetsReadStream();
|
||||
expect(stream instanceof Readable).toBe(true);
|
||||
stream.destroy();
|
||||
});
|
||||
|
||||
test('streams entities from jsonl shards in order', async () => {
|
||||
const dir = await fs.mkdtemp(path.join(tmpdir(), 'dts-dir-'));
|
||||
await fs.writeJson(path.join(dir, 'metadata.json'), minimalMetadata);
|
||||
await fs.ensureDir(path.join(dir, 'schemas'));
|
||||
await fs.writeFile(path.join(dir, 'schemas', 'schemas_00000.jsonl'), `${minimalSchemaLine}\n`);
|
||||
await fs.ensureDir(path.join(dir, 'entities'));
|
||||
await fs.writeFile(
|
||||
path.join(dir, 'entities', 'entities_00000.jsonl'),
|
||||
`${JSON.stringify({ type: 'api::test.test', id: 1, data: {} })}\n`
|
||||
);
|
||||
|
||||
const provider = createLocalDirectorySourceProvider({ directory: { path: dir } });
|
||||
await provider.bootstrap({ report: jest.fn() } as never);
|
||||
|
||||
const chunks: unknown[] = [];
|
||||
const stream = provider.createEntitiesReadStream();
|
||||
for await (const chunk of stream) {
|
||||
chunks.push(chunk);
|
||||
}
|
||||
expect(chunks).toHaveLength(1);
|
||||
expect(chunks[0]).toMatchObject({ type: 'api::test.test', id: 1 });
|
||||
});
|
||||
});
|
||||
@@ -0,0 +1,264 @@
|
||||
import path from 'path';
|
||||
import type { Readable } from 'stream';
|
||||
import { PassThrough } from 'stream';
|
||||
|
||||
import fs from 'fs-extra';
|
||||
import { isEmpty, keyBy } from 'lodash/fp';
|
||||
import { chain } from 'stream-chain';
|
||||
import { parser } from 'stream-json/jsonl/Parser';
|
||||
import type { Struct } from '@strapi/types';
|
||||
|
||||
import type { IAsset, IMetadata, ISourceProvider, ProviderType } from '../../../../types';
|
||||
import type { IDiagnosticReporter } from '../../../utils/diagnostic';
|
||||
|
||||
import * as utils from '../../../utils';
|
||||
import { ProviderInitializationError, ProviderTransferError } from '../../../errors/providers';
|
||||
import { unknownPathToPosix } from '../../../file/providers/source/utils';
|
||||
|
||||
const METADATA_FILE_PATH = 'metadata.json';
|
||||
|
||||
export interface ILocalDirectorySourceProviderOptions {
|
||||
directory: {
|
||||
/** Absolute or relative path to the root of an unpacked Strapi data-transfer export */
|
||||
path: string;
|
||||
};
|
||||
}
|
||||
|
||||
export const createLocalDirectorySourceProvider = (
|
||||
options: ILocalDirectorySourceProviderOptions
|
||||
) => {
|
||||
return new LocalDirectorySourceProvider(options);
|
||||
};
|
||||
|
||||
const isPathInsideRoot = (root: string, candidate: string): boolean => {
|
||||
const relative = path.relative(root, candidate);
|
||||
return relative === '' || (!relative.startsWith(`..${path.sep}`) && !path.isAbsolute(relative));
|
||||
};
|
||||
|
||||
class LocalDirectorySourceProvider implements ISourceProvider {
|
||||
type: ProviderType = 'source';
|
||||
|
||||
name = 'source::local-directory';
|
||||
|
||||
options: ILocalDirectorySourceProviderOptions;
|
||||
|
||||
#rootResolved: string;
|
||||
|
||||
#metadata?: IMetadata;
|
||||
|
||||
#diagnostics?: IDiagnosticReporter;
|
||||
|
||||
constructor(options: ILocalDirectorySourceProviderOptions) {
|
||||
this.options = options;
|
||||
this.#rootResolved = path.resolve(options.directory.path);
|
||||
}
|
||||
|
||||
#reportInfo(message: string) {
|
||||
this.#diagnostics?.report({
|
||||
details: {
|
||||
createdAt: new Date(),
|
||||
message,
|
||||
origin: 'directory-source-provider',
|
||||
},
|
||||
kind: 'info',
|
||||
});
|
||||
}
|
||||
|
||||
/** Resolve a posix-style relative path under the export root; rejects escapes. */
|
||||
#safePath(...posixSegments: string[]): string {
|
||||
const joined = path.posix.join(...posixSegments);
|
||||
const segments = joined.split(path.posix.sep).filter(Boolean);
|
||||
const resolved = path.resolve(this.#rootResolved, ...segments);
|
||||
if (!isPathInsideRoot(this.#rootResolved, resolved)) {
|
||||
throw new ProviderInitializationError(`Invalid path "${joined}" — escapes backup directory`);
|
||||
}
|
||||
return resolved;
|
||||
}
|
||||
|
||||
async bootstrap(diagnostics: IDiagnosticReporter) {
|
||||
this.#diagnostics = diagnostics;
|
||||
const root = this.#rootResolved;
|
||||
|
||||
try {
|
||||
const stat = await fs.stat(root);
|
||||
if (!stat.isDirectory()) {
|
||||
throw new ProviderInitializationError(`Path '${root}' is not a directory.`);
|
||||
}
|
||||
await this.#loadMetadata();
|
||||
} catch (e) {
|
||||
if (e instanceof ProviderInitializationError) {
|
||||
throw e;
|
||||
}
|
||||
throw new ProviderInitializationError(
|
||||
`Directory '${root}' is not a valid Strapi data export.`
|
||||
);
|
||||
}
|
||||
|
||||
if (!this.#metadata) {
|
||||
throw new ProviderInitializationError('Could not load metadata from Strapi data export.');
|
||||
}
|
||||
}
|
||||
|
||||
async #loadMetadata() {
|
||||
const metadataPath = this.#safePath(METADATA_FILE_PATH);
|
||||
if (!(await fs.pathExists(metadataPath))) {
|
||||
throw new ProviderInitializationError(
|
||||
`Missing ${METADATA_FILE_PATH} in export directory '${this.#rootResolved}'.`
|
||||
);
|
||||
}
|
||||
this.#metadata = await fs.readJson(metadataPath);
|
||||
}
|
||||
|
||||
async getMetadata() {
|
||||
this.#reportInfo('getting metadata');
|
||||
if (!this.#metadata) {
|
||||
await this.#loadMetadata();
|
||||
}
|
||||
return this.#metadata ?? null;
|
||||
}
|
||||
|
||||
async getSchemas() {
|
||||
this.#reportInfo('getting schemas');
|
||||
const schemaCollection = await utils.stream.collect<Struct.Schema>(
|
||||
this.createSchemasReadStream()
|
||||
);
|
||||
|
||||
if (isEmpty(schemaCollection)) {
|
||||
throw new ProviderInitializationError('Could not load schemas from Strapi data export.');
|
||||
}
|
||||
|
||||
const schemas = keyBy('uid', schemaCollection);
|
||||
return utils.schema.schemasToValidJSON(schemas);
|
||||
}
|
||||
|
||||
createEntitiesReadStream(): Readable {
|
||||
this.#reportInfo('creating entities read stream');
|
||||
return this.#streamJsonlDirectory('entities');
|
||||
}
|
||||
|
||||
createSchemasReadStream(): Readable {
|
||||
this.#reportInfo('creating schemas read stream');
|
||||
return this.#streamJsonlDirectory('schemas');
|
||||
}
|
||||
|
||||
createLinksReadStream(): Readable {
|
||||
this.#reportInfo('creating links read stream');
|
||||
return this.#streamJsonlDirectory('links');
|
||||
}
|
||||
|
||||
createConfigurationReadStream(): Readable {
|
||||
this.#reportInfo('creating configuration read stream');
|
||||
return this.#streamJsonlDirectory('configuration');
|
||||
}
|
||||
|
||||
createAssetsReadStream(): Readable {
|
||||
const outStream = new PassThrough({ objectMode: true });
|
||||
const uploadsDir = this.#safePath('assets', 'uploads');
|
||||
this.#reportInfo('creating assets read stream');
|
||||
|
||||
this.#pipeAssetsToStream(outStream, uploadsDir).catch((e: unknown) => {
|
||||
outStream.destroy(
|
||||
e instanceof Error ? e : new ProviderTransferError(String(e), { details: { error: e } })
|
||||
);
|
||||
});
|
||||
|
||||
return outStream;
|
||||
}
|
||||
|
||||
async #pipeAssetsToStream(outStream: PassThrough, uploadsDir: string): Promise<void> {
|
||||
if (!(await fs.pathExists(uploadsDir))) {
|
||||
outStream.end();
|
||||
return;
|
||||
}
|
||||
|
||||
const names = (await fs.readdir(uploadsDir)).sort();
|
||||
for (const name of names) {
|
||||
const absUpload = path.join(uploadsDir, name);
|
||||
const stat = await fs.stat(absUpload);
|
||||
if (stat.isFile()) {
|
||||
let metadata: IAsset['metadata'];
|
||||
try {
|
||||
metadata = await this.#readAssetMetadata(name);
|
||||
} catch (error) {
|
||||
outStream.destroy(
|
||||
new ProviderTransferError(`Failed to read metadata for ${name}`, {
|
||||
details: { error },
|
||||
})
|
||||
);
|
||||
return;
|
||||
}
|
||||
|
||||
const normalizedPath = unknownPathToPosix(path.posix.join('assets', 'uploads', name));
|
||||
const asset: IAsset = {
|
||||
metadata,
|
||||
filename: name,
|
||||
filepath: normalizedPath,
|
||||
stats: { size: stat.size },
|
||||
stream: fs.createReadStream(absUpload),
|
||||
};
|
||||
outStream.write(asset);
|
||||
}
|
||||
}
|
||||
outStream.end();
|
||||
}
|
||||
|
||||
async #readAssetMetadata(filename: string): Promise<IAsset['metadata']> {
|
||||
const metadataPath = this.#safePath('assets', 'metadata', `${filename}.json`);
|
||||
return fs.readJson(metadataPath);
|
||||
}
|
||||
|
||||
async #listJsonlFiles(posixSubdir: string): Promise<string[]> {
|
||||
const dirAbs = this.#safePath(...posixSubdir.split('/').filter(Boolean));
|
||||
if (!(await fs.pathExists(dirAbs))) {
|
||||
return [];
|
||||
}
|
||||
const names = await fs.readdir(dirAbs);
|
||||
return names
|
||||
.filter((n) => n.endsWith('.jsonl'))
|
||||
.sort()
|
||||
.map((n) => path.join(dirAbs, n));
|
||||
}
|
||||
|
||||
#streamJsonlDirectory(posixSubdir: string): Readable {
|
||||
const outStream = new PassThrough({ objectMode: true });
|
||||
this.#reportInfo(`streaming jsonl from ${posixSubdir}`);
|
||||
|
||||
this.#pipeJsonlDirectoryToStream(outStream, posixSubdir).catch((e: unknown) => {
|
||||
outStream.destroy(
|
||||
e instanceof Error ? e : new ProviderTransferError(String(e), { details: { error: e } })
|
||||
);
|
||||
});
|
||||
|
||||
return outStream;
|
||||
}
|
||||
|
||||
async #pipeJsonlDirectoryToStream(outStream: PassThrough, posixSubdir: string): Promise<void> {
|
||||
const files = await this.#listJsonlFiles(posixSubdir);
|
||||
for (const absPath of files) {
|
||||
const transforms = [
|
||||
parser({
|
||||
checkErrors: true,
|
||||
}),
|
||||
(line: { key: string; value: object }) => line.value,
|
||||
];
|
||||
|
||||
const stream = fs.createReadStream(absPath).pipe(chain(transforms));
|
||||
|
||||
try {
|
||||
for await (const chunk of stream) {
|
||||
outStream.write(chunk);
|
||||
}
|
||||
} catch (e: unknown) {
|
||||
outStream.destroy(
|
||||
new ProviderTransferError(`Error parsing JSONL in ${absPath}: ${(e as Error).message}`, {
|
||||
details: {
|
||||
error: e,
|
||||
},
|
||||
})
|
||||
);
|
||||
return;
|
||||
}
|
||||
}
|
||||
outStream.end();
|
||||
}
|
||||
}
|
||||
@@ -1,4 +1,5 @@
|
||||
export * as engine from './engine';
|
||||
export * as strapi from './strapi';
|
||||
export * as file from './file';
|
||||
export * as directory from './directory';
|
||||
export * as utils from './utils';
|
||||
|
||||
@@ -1,4 +1,7 @@
|
||||
import { file as fileDataTransfer } from '@strapi/data-transfer';
|
||||
import {
|
||||
file as fileDataTransfer,
|
||||
directory as directoryDataTransfer,
|
||||
} from '@strapi/data-transfer';
|
||||
|
||||
import exportAction from '../action';
|
||||
import * as mockUtils from '../../../utils/data-transfer';
|
||||
@@ -56,6 +59,17 @@ jest.mock('@strapi/data-transfer', () => {
|
||||
}),
|
||||
},
|
||||
},
|
||||
directory: {
|
||||
...actual.directory,
|
||||
providers: {
|
||||
...actual.directory.providers,
|
||||
createLocalDirectoryDestinationProvider: jest.fn().mockReturnValue({
|
||||
name: 'testDirDestination',
|
||||
type: 'destination',
|
||||
getMetadata: jest.fn(),
|
||||
}),
|
||||
},
|
||||
},
|
||||
strapi: {
|
||||
...actual.strapi,
|
||||
providers: {
|
||||
@@ -172,6 +186,48 @@ describe('Export', () => {
|
||||
);
|
||||
});
|
||||
|
||||
it('uses directory destination when format is dir', async () => {
|
||||
await expectExit(0, async () => {
|
||||
await exportAction({ format: 'dir', file: '/tmp/strapi-export-dir-test', encrypt: false });
|
||||
});
|
||||
|
||||
expect(
|
||||
directoryDataTransfer.providers.createLocalDirectoryDestinationProvider
|
||||
).toHaveBeenCalledWith(
|
||||
expect.objectContaining({
|
||||
directory: { path: '/tmp/strapi-export-dir-test' },
|
||||
})
|
||||
);
|
||||
expect(fileDataTransfer.providers.createLocalFileDestinationProvider).not.toHaveBeenCalled();
|
||||
});
|
||||
|
||||
it('rejects when format is dir with encrypt enabled', async () => {
|
||||
await expectExit(1, async () => {
|
||||
await exportAction({ format: 'dir', file: '/tmp/x', encrypt: true });
|
||||
});
|
||||
});
|
||||
|
||||
it('rejects when format is dir without explicit encrypt false', async () => {
|
||||
await expectExit(1, async () => {
|
||||
await exportAction({ format: 'dir', file: '/tmp/x' });
|
||||
});
|
||||
});
|
||||
|
||||
it('allows format dir when compress is true (compression is ignored for directory exports)', async () => {
|
||||
await expectExit(0, async () => {
|
||||
await exportAction({
|
||||
format: 'dir',
|
||||
file: '/tmp/strapi-export-dir-test',
|
||||
encrypt: false,
|
||||
compress: true,
|
||||
});
|
||||
});
|
||||
|
||||
expect(
|
||||
directoryDataTransfer.providers.createLocalDirectoryDestinationProvider
|
||||
).toHaveBeenCalled();
|
||||
});
|
||||
|
||||
it('uses compress option', async () => {
|
||||
await expectExit(0, async () => {
|
||||
await exportAction({ compress: false });
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
import path from 'path';
|
||||
import { isObject, isString, isFinite, toNumber } from 'lodash/fp';
|
||||
import fs from 'fs-extra';
|
||||
import chalk from 'chalk';
|
||||
@@ -7,6 +8,7 @@ import {
|
||||
engine as engineDataTransfer,
|
||||
strapi as strapiDataTransfer,
|
||||
file as fileDataTransfer,
|
||||
directory as directoryDataTransfer,
|
||||
} from '@strapi/data-transfer';
|
||||
|
||||
import {
|
||||
@@ -22,10 +24,15 @@ import {
|
||||
setSignalHandler,
|
||||
} from '../../utils/data-transfer';
|
||||
import { exitWith } from '../../utils/helpers';
|
||||
import { normalizeExportDirFormatOpts } from './validate-dir-format';
|
||||
|
||||
const {
|
||||
providers: { createLocalFileDestinationProvider },
|
||||
} = fileDataTransfer;
|
||||
|
||||
const {
|
||||
providers: { createLocalDirectoryDestinationProvider },
|
||||
} = directoryDataTransfer;
|
||||
const {
|
||||
providers: { createLocalStrapiSourceProvider },
|
||||
} = strapiDataTransfer;
|
||||
@@ -34,6 +41,8 @@ const BYTES_IN_MB = 1024 * 1024;
|
||||
|
||||
interface CmdOptions {
|
||||
file?: string;
|
||||
/** @default 'tar' */
|
||||
format?: 'tar' | 'dir';
|
||||
encrypt?: boolean;
|
||||
verbose?: boolean;
|
||||
key?: string;
|
||||
@@ -57,6 +66,8 @@ export default async (opts: CmdOptions) => {
|
||||
exitWith(1, 'Could not parse command arguments');
|
||||
}
|
||||
|
||||
normalizeExportDirFormatOpts(opts);
|
||||
|
||||
const strapi = await createStrapiInstance();
|
||||
|
||||
const source = createSourceProvider(strapi);
|
||||
@@ -121,8 +132,14 @@ export default async (opts: CmdOptions) => {
|
||||
|
||||
results = await engine.transfer();
|
||||
outFile = results.destination?.file?.path ?? '';
|
||||
const outFileExists = await fs.pathExists(outFile);
|
||||
if (!outFileExists) {
|
||||
if ((opts.format ?? 'tar') === 'dir') {
|
||||
const metadataPath = path.join(outFile, 'metadata.json');
|
||||
if (!(await fs.pathExists(metadataPath))) {
|
||||
throw new engineDataTransfer.errors.TransferEngineTransferError(
|
||||
`Export directory was not created correctly "${outFile}"`
|
||||
);
|
||||
}
|
||||
} else if (!(await fs.pathExists(outFile))) {
|
||||
throw new engineDataTransfer.errors.TransferEngineTransferError(
|
||||
`Export file not created "${outFile}"`
|
||||
);
|
||||
@@ -158,10 +175,10 @@ const createSourceProvider = (strapi: Core.Strapi) => {
|
||||
};
|
||||
|
||||
/**
|
||||
* It creates a local file destination provider based on the given options
|
||||
* It creates a local file or directory destination provider based on the given options
|
||||
*/
|
||||
const createDestinationProvider = (opts: CmdOptions) => {
|
||||
const { file, compress, encrypt, key, maxSizeJsonl } = opts;
|
||||
const { file, compress, encrypt, key, maxSizeJsonl, format = 'tar' } = opts;
|
||||
|
||||
const filepath = isString(file) && file.length > 0 ? file : getDefaultExportName();
|
||||
|
||||
@@ -169,6 +186,16 @@ const createDestinationProvider = (opts: CmdOptions) => {
|
||||
? toNumber(maxSizeJsonl) * BYTES_IN_MB
|
||||
: undefined;
|
||||
|
||||
if (format === 'dir') {
|
||||
const dirPath = path.isAbsolute(filepath) ? filepath : path.resolve(process.cwd(), filepath);
|
||||
return createLocalDirectoryDestinationProvider({
|
||||
directory: { path: dirPath },
|
||||
file: {
|
||||
maxSizeJsonl: maxSizeJsonlInMb,
|
||||
},
|
||||
});
|
||||
}
|
||||
|
||||
return createLocalFileDestinationProvider({
|
||||
file: {
|
||||
path: filepath,
|
||||
|
||||
@@ -8,6 +8,7 @@ import {
|
||||
} from '../../utils/data-transfer';
|
||||
import { promptEncryptionKey } from '../../utils/commander';
|
||||
import action from './action';
|
||||
import { prepareExportDirFormatCli } from './validate-dir-format';
|
||||
|
||||
/**
|
||||
* `$ strapi export`
|
||||
@@ -32,12 +33,21 @@ const command = () => {
|
||||
)
|
||||
)
|
||||
.addOption(
|
||||
new Option('-f, --file <file>', 'name to use for exported file (without extensions)')
|
||||
new Option(
|
||||
'-f, --file <file>',
|
||||
'tar: base name without extensions; dir: output directory path (--format dir)'
|
||||
)
|
||||
)
|
||||
.addOption(
|
||||
new Option('--format <format>', 'export as tar archive or unpacked directory')
|
||||
.choices(['tar', 'dir'])
|
||||
.default('tar')
|
||||
)
|
||||
.addOption(excludeOption)
|
||||
.addOption(onlyOption)
|
||||
.addOption(throttleOption)
|
||||
.hook('preAction', validateExcludeOnly)
|
||||
.hook('preAction', prepareExportDirFormatCli)
|
||||
.hook('preAction', promptEncryptionKey)
|
||||
.action(action);
|
||||
};
|
||||
|
||||
@@ -0,0 +1,62 @@
|
||||
import type { Command } from 'commander';
|
||||
|
||||
import { exitWith } from '../../utils/helpers';
|
||||
|
||||
export const EXPORT_DIR_REQUIRES_NO_ENCRYPT =
|
||||
'Unpacked directory exports (--format dir) require --no-encrypt.';
|
||||
|
||||
export const EXPORT_DIR_ENCRYPTION_NOT_SUPPORTED =
|
||||
'Unpacked directory exports (--format dir) do not support encryption. Use --format tar, or omit --encrypt.';
|
||||
|
||||
/**
|
||||
* Directory exports require an explicit `--no-encrypt` (security). Compression is tar-only and is
|
||||
* turned off automatically for `--format dir` (no `--no-compress` needed). Runs before
|
||||
* `promptEncryptionKey` so missing `--no-encrypt` fails with a clear message instead of a key prompt.
|
||||
*/
|
||||
export function prepareExportDirFormatCli(command: Command) {
|
||||
const opts = command.opts();
|
||||
const format = opts.format ?? 'tar';
|
||||
if (format !== 'dir') {
|
||||
return;
|
||||
}
|
||||
|
||||
const encrypt = command.getOptionValue('encrypt');
|
||||
const encryptSource = command.getOptionValueSource('encrypt');
|
||||
|
||||
if (encrypt === true && encryptSource === 'cli') {
|
||||
exitWith(1, EXPORT_DIR_ENCRYPTION_NOT_SUPPORTED);
|
||||
}
|
||||
|
||||
const explicitNoEncrypt =
|
||||
encrypt === false && (encryptSource === 'cli' || encryptSource === 'env');
|
||||
|
||||
if (!explicitNoEncrypt) {
|
||||
exitWith(1, EXPORT_DIR_REQUIRES_NO_ENCRYPT);
|
||||
}
|
||||
|
||||
command.setOptionValue('compress', false);
|
||||
}
|
||||
|
||||
/**
|
||||
* Same rules for programmatic `exportAction(opts)` (no Commander hooks).
|
||||
*/
|
||||
export function normalizeExportDirFormatOpts(opts: {
|
||||
format?: 'tar' | 'dir';
|
||||
encrypt?: boolean;
|
||||
compress?: boolean;
|
||||
}) {
|
||||
const format = opts.format ?? 'tar';
|
||||
if (format !== 'dir') {
|
||||
return;
|
||||
}
|
||||
|
||||
if (opts.encrypt === true) {
|
||||
exitWith(1, EXPORT_DIR_ENCRYPTION_NOT_SUPPORTED);
|
||||
}
|
||||
|
||||
if (opts.encrypt !== false) {
|
||||
exitWith(1, EXPORT_DIR_REQUIRES_NO_ENCRYPT);
|
||||
}
|
||||
|
||||
opts.compress = false;
|
||||
}
|
||||
@@ -1,7 +1,11 @@
|
||||
import type { Stats } from 'fs';
|
||||
|
||||
import fs from 'fs-extra';
|
||||
import {
|
||||
engine as engineDataTransfer,
|
||||
strapi as strapiDataTransfer,
|
||||
file as fileDataTransfer,
|
||||
directory as directoryDataTransfer,
|
||||
} from '@strapi/data-transfer';
|
||||
|
||||
import importAction from '../action';
|
||||
@@ -37,6 +41,17 @@ jest.mock('@strapi/data-transfer', () => {
|
||||
|
||||
return {
|
||||
...actual,
|
||||
directory: {
|
||||
...actual.directory,
|
||||
providers: {
|
||||
...actual.directory.providers,
|
||||
createLocalDirectorySourceProvider: jest.fn().mockReturnValue({
|
||||
name: 'testDirSource',
|
||||
type: 'source',
|
||||
getMetadata: jest.fn(),
|
||||
}),
|
||||
},
|
||||
},
|
||||
file: {
|
||||
...actual.file,
|
||||
providers: {
|
||||
@@ -98,6 +113,7 @@ describe('Import', () => {
|
||||
|
||||
beforeEach(() => {
|
||||
jest.clearAllMocks();
|
||||
jest.spyOn(fs, 'stat').mockResolvedValue({ isDirectory: () => false } as Stats);
|
||||
});
|
||||
|
||||
it('creates providers with correct options ', async () => {
|
||||
@@ -139,4 +155,27 @@ describe('Import', () => {
|
||||
})
|
||||
);
|
||||
});
|
||||
|
||||
it('uses directory source when backup path is a directory', async () => {
|
||||
jest.spyOn(fs, 'stat').mockResolvedValue({ isDirectory: () => true } as Stats);
|
||||
|
||||
const options = {
|
||||
file: '/path/to/export',
|
||||
decrypt: false,
|
||||
decompress: false,
|
||||
exclude: [],
|
||||
only: [],
|
||||
};
|
||||
|
||||
await expectExit(0, async () => {
|
||||
await importAction(options);
|
||||
});
|
||||
|
||||
expect(directoryDataTransfer.providers.createLocalDirectorySourceProvider).toHaveBeenCalledWith(
|
||||
{
|
||||
directory: { path: '/path/to/export' },
|
||||
}
|
||||
);
|
||||
expect(fileDataTransfer.providers.createLocalFileSourceProvider).not.toHaveBeenCalled();
|
||||
});
|
||||
});
|
||||
|
||||
@@ -2,10 +2,13 @@ import type { Core } from '@strapi/types';
|
||||
import { isObject } from 'lodash/fp';
|
||||
import chalk from 'chalk';
|
||||
|
||||
import fs from 'fs-extra';
|
||||
|
||||
import {
|
||||
engine as engineDataTransfer,
|
||||
strapi as strapiDataTransfer,
|
||||
file as fileDataTransfer,
|
||||
directory as directoryDataTransfer,
|
||||
} from '@strapi/data-transfer';
|
||||
|
||||
import {
|
||||
@@ -27,6 +30,10 @@ const {
|
||||
providers: { createLocalFileSourceProvider },
|
||||
} = fileDataTransfer;
|
||||
|
||||
const {
|
||||
providers: { createLocalDirectorySourceProvider },
|
||||
} = directoryDataTransfer;
|
||||
|
||||
const {
|
||||
providers: { createLocalStrapiDestinationProvider, DEFAULT_CONFLICT_STRATEGY },
|
||||
} = strapiDataTransfer;
|
||||
@@ -52,7 +59,7 @@ type EngineOptions = Parameters<typeof createTransferEngine>[2];
|
||||
/**
|
||||
* Import command.
|
||||
*
|
||||
* It transfers data from a file to a local Strapi instance
|
||||
* It transfers data from a Strapi backup file or unpacked export directory to a local Strapi instance
|
||||
*/
|
||||
export default async (opts: CmdOptions) => {
|
||||
// validate inputs from Commander
|
||||
@@ -60,12 +67,10 @@ export default async (opts: CmdOptions) => {
|
||||
exitWith(1, 'Could not parse arguments');
|
||||
}
|
||||
|
||||
/**
|
||||
* From strapi backup file
|
||||
*/
|
||||
const sourceOptions = getLocalFileSourceOptions(opts);
|
||||
|
||||
const source = createLocalFileSourceProvider(sourceOptions);
|
||||
const backupPath = opts.file ?? '';
|
||||
const source = (await fs.stat(backupPath)).isDirectory()
|
||||
? createLocalDirectorySourceProvider({ directory: { path: backupPath } })
|
||||
: createLocalFileSourceProvider(getLocalFileSourceOptions(opts));
|
||||
|
||||
/**
|
||||
* To local Strapi instance
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
import { statSync } from 'fs';
|
||||
import path from 'path';
|
||||
import { createCommand, Option } from 'commander';
|
||||
import {
|
||||
@@ -21,7 +22,7 @@ const command = () => {
|
||||
.allowExcessArguments(false)
|
||||
.requiredOption(
|
||||
'-f, --file <file>',
|
||||
'path and filename for the Strapi export file you want to import'
|
||||
'path to a Strapi export (.tar[.gz][.enc]) or to an unpacked export directory'
|
||||
)
|
||||
.addOption(
|
||||
new Option(
|
||||
@@ -57,13 +58,27 @@ const command = () => {
|
||||
}
|
||||
}
|
||||
})
|
||||
// set decrypt and decompress options based on filename
|
||||
// set decrypt and decompress options based on filename (archive only)
|
||||
.hook('preAction', (thisCommand) => {
|
||||
const opts = thisCommand.opts();
|
||||
const filePath = String(opts.file);
|
||||
|
||||
let isDirectory = false;
|
||||
try {
|
||||
isDirectory = statSync(filePath).isDirectory();
|
||||
} catch {
|
||||
// missing path or unreadable — let the transfer fail later with a clear error
|
||||
}
|
||||
|
||||
if (isDirectory) {
|
||||
thisCommand.opts().decrypt = false;
|
||||
thisCommand.opts().decompress = false;
|
||||
return;
|
||||
}
|
||||
|
||||
const { extname, parse } = path;
|
||||
|
||||
let file = opts.file;
|
||||
let file = filePath;
|
||||
|
||||
if (extname(file) === '.enc') {
|
||||
file = parse(file).name; // trim the .enc extension
|
||||
@@ -82,7 +97,7 @@ const command = () => {
|
||||
if (extname(file) !== '.tar') {
|
||||
exitWith(
|
||||
1,
|
||||
`The file '${opts.file}' does not appear to be a valid Strapi data file. It must have an extension ending in .tar[.gz][.enc]`
|
||||
`The file '${opts.file}' does not appear to be a valid Strapi data file. Use a path ending in .tar[.gz][.enc], or an existing directory that contains an unpacked export (e.g. metadata.json).`
|
||||
);
|
||||
}
|
||||
})
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
{
|
||||
"root": true,
|
||||
"extends": ["custom/back"]
|
||||
"extends": ["custom/back"],
|
||||
"ignorePatterns": ["e2e/data/**"]
|
||||
}
|
||||
|
||||
@@ -1,31 +1,3 @@
|
||||
# Test Data Sets
|
||||
# Test data (CLI)
|
||||
|
||||
Both CLI and e2e tests share the same app-template (`tests/app-template`), therefore any modifications to the schema of the template must be reflected in all datasets used by both test types.
|
||||
|
||||
The following test data set is available for CLI e2e testing. It includes all Strapi data, such as transfer tokens, api tokens, admin and u&p users and are imported with a custom data-transfer script.
|
||||
|
||||
Note on exporting data: To reduce the filesize of what is committed to the repo, an additional step of compressing the media files (outside of Strapi) was done, but this does not effect anything within Strapi.
|
||||
|
||||
## complex.tar
|
||||
|
||||
Following is a list of some useful information from this dataset.
|
||||
|
||||
### The following user accounts are available with the password `Testpassword1!`
|
||||
|
||||
Admin user: test.admin@strapi.io
|
||||
|
||||
U&P users:
|
||||
|
||||
- confirmed: test.up.user@strapi.io
|
||||
- unconfirmed: test.up.user.uncomfirmed@strapi.io
|
||||
- blocked: test.up.user.confirmed.blocked@strapi.io
|
||||
- unpublished: test.up.user.confirmed.unpublished@strapi.io
|
||||
|
||||
To see the actual data, please export the tar file or load a test-app with the develop command after importing.
|
||||
|
||||
A brief overview of the data:
|
||||
|
||||
- `complex` content type that contains a published, unpublished, and complete entity, including nested repeatable components, a dynamic zone, and all relation types.
|
||||
- `category` content type that contains published and unpublished entities, and is used primarily as a relation target
|
||||
- `user` the U&P users
|
||||
- several local image media files, including in nested folders
|
||||
CLI integration tests use the same app template as e2e (`tests/app-template`). Seeding and programmatic imports go through `tests/utils/dts-import.ts` and fixtures under `tests/e2e/data/` (for example `with-admin`). See the contributor guide on data transfer (`docs/docs/guides/e2e/02-data-transfer.md`) for updating those fixtures.
|
||||
|
||||
@@ -21,7 +21,7 @@ describe('import-export', () => {
|
||||
}
|
||||
|
||||
// Load fixture data (same pattern as create-user CLI test)
|
||||
await resetDatabaseAndImportDataFromPathProgrammatic(appPath, 'with-admin.tar');
|
||||
await resetDatabaseAndImportDataFromPathProgrammatic(appPath, 'with-admin');
|
||||
|
||||
stateBeforeExport = utils.getDbState(appPath);
|
||||
if (stateBeforeExport.error) {
|
||||
@@ -86,7 +86,7 @@ describe('import-export', () => {
|
||||
test.todo('roundtrip with compressed export/import (.tar.gz)');
|
||||
test.todo('roundtrip with encrypted export/import (.tar.gz.enc) and key');
|
||||
test.todo('roundtrip with --only (partial content) and verify only those types restored');
|
||||
test.todo('roundtrip with without-admin.tar fixture (different data combo)');
|
||||
test.todo('roundtrip with without-admin fixture (different data combo)');
|
||||
test.todo('roundtrip preserves i18n locales and localized content counts');
|
||||
test.todo('roundtrip preserves draft vs published state where applicable');
|
||||
});
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
'use strict';
|
||||
|
||||
const fs = require('fs');
|
||||
const path = require('path');
|
||||
const { spawnSync } = require('child_process');
|
||||
|
||||
@@ -16,7 +17,7 @@ describe('export', () => {
|
||||
appPath = testApps.at(0);
|
||||
|
||||
// Load fixture so we have known data and predictable export output
|
||||
await resetDatabaseAndImportDataFromPathProgrammatic(appPath, 'with-admin.tar');
|
||||
await resetDatabaseAndImportDataFromPathProgrammatic(appPath, 'with-admin');
|
||||
});
|
||||
|
||||
it('should export data with correct CLI table and tar contents', async () => {
|
||||
@@ -66,6 +67,81 @@ describe('export', () => {
|
||||
expect(entityFiles.length).toBeGreaterThan(0);
|
||||
});
|
||||
|
||||
it('should export to directory with --format dir and expected layout', async () => {
|
||||
const dirName = 'dir-export-output';
|
||||
const exportDir = path.join(appPath, dirName);
|
||||
|
||||
if (fs.existsSync(exportDir)) {
|
||||
fs.rmSync(exportDir, { recursive: true, force: true });
|
||||
}
|
||||
|
||||
const result = spawnSync(
|
||||
'npm',
|
||||
['run', '-s', 'strapi', '--', 'export', '--format', 'dir', '-f', dirName, '--no-encrypt'],
|
||||
{
|
||||
cwd: appPath,
|
||||
encoding: 'utf8',
|
||||
maxBuffer: 1024 * 1024,
|
||||
}
|
||||
);
|
||||
|
||||
expect(result.status).toBe(0);
|
||||
expect(fs.existsSync(exportDir)).toBe(true);
|
||||
|
||||
const metadata = JSON.parse(fs.readFileSync(path.join(exportDir, 'metadata.json'), 'utf8'));
|
||||
expect(metadata).toHaveProperty('createdAt');
|
||||
expect(metadata).toHaveProperty('strapi');
|
||||
expect(metadata.strapi).toHaveProperty('version');
|
||||
|
||||
const schemaFiles = fs
|
||||
.readdirSync(path.join(exportDir, 'schemas'))
|
||||
.filter((f) => f.endsWith('.jsonl'));
|
||||
const entityFiles = fs
|
||||
.readdirSync(path.join(exportDir, 'entities'))
|
||||
.filter((f) => f.endsWith('.jsonl'));
|
||||
expect(schemaFiles.length).toBeGreaterThan(0);
|
||||
expect(entityFiles.length).toBeGreaterThan(0);
|
||||
});
|
||||
|
||||
it('should reject --format dir without --no-encrypt', () => {
|
||||
const result = spawnSync(
|
||||
'npm',
|
||||
['run', '-s', 'strapi', '--', 'export', '--format', 'dir', '-f', 'reject-dir-no-flag'],
|
||||
{
|
||||
cwd: appPath,
|
||||
encoding: 'utf8',
|
||||
maxBuffer: 1024 * 1024,
|
||||
}
|
||||
);
|
||||
expect(result.status).not.toBe(0);
|
||||
const combined = `${result.stderr || ''}${result.stdout || ''}`;
|
||||
expect(combined).toMatch(/require --no-encrypt/i);
|
||||
});
|
||||
|
||||
it('should reject --format dir when --encrypt is used', () => {
|
||||
const result = spawnSync(
|
||||
'npm',
|
||||
[
|
||||
'run',
|
||||
'-s',
|
||||
'strapi',
|
||||
'--',
|
||||
'export',
|
||||
'--format',
|
||||
'dir',
|
||||
'-f',
|
||||
'reject-dir-test',
|
||||
'--encrypt',
|
||||
],
|
||||
{
|
||||
cwd: appPath,
|
||||
encoding: 'utf8',
|
||||
maxBuffer: 1024 * 1024,
|
||||
}
|
||||
);
|
||||
expect(result.status).not.toBe(0);
|
||||
});
|
||||
|
||||
test.todo('export from empty DB (schemas only, no entities)');
|
||||
test.todo('export with --only filter and verify tar contains only those types');
|
||||
test.todo('export with --exclude filter and verify excluded types missing from tar');
|
||||
|
||||
@@ -18,7 +18,7 @@ describe('import', () => {
|
||||
appPath = testApps.at(0);
|
||||
|
||||
// Load fixture and capture expected DB state (so we can verify import restores it)
|
||||
await resetDatabaseAndImportDataFromPathProgrammatic(appPath, 'with-admin.tar');
|
||||
await resetDatabaseAndImportDataFromPathProgrammatic(appPath, 'with-admin');
|
||||
expectedDbState = utils.getDbState(appPath);
|
||||
|
||||
// Export to create the file we will import in the tests
|
||||
@@ -90,6 +90,58 @@ describe('import', () => {
|
||||
expect(stateAfterImport.categories).toBe(expectedDbState.categories);
|
||||
});
|
||||
|
||||
describe('import from unpacked directory', () => {
|
||||
const dirExportName = 'cli-import-dir-fixture';
|
||||
|
||||
beforeAll(() => {
|
||||
const result = spawnSync(
|
||||
'npm',
|
||||
[
|
||||
'run',
|
||||
'-s',
|
||||
'strapi',
|
||||
'--',
|
||||
'export',
|
||||
'--format',
|
||||
'dir',
|
||||
'-f',
|
||||
dirExportName,
|
||||
'--no-encrypt',
|
||||
],
|
||||
{
|
||||
cwd: appPath,
|
||||
encoding: 'utf8',
|
||||
maxBuffer: 1024 * 1024,
|
||||
}
|
||||
);
|
||||
expect(result.status).toBe(0);
|
||||
});
|
||||
|
||||
it('should import from directory and restore DB state', async () => {
|
||||
const importDir = path.join(appPath, dirExportName);
|
||||
const result = spawnSync(
|
||||
'npm',
|
||||
['run', '-s', 'strapi', '--', 'import', '-f', importDir, '--force'],
|
||||
{
|
||||
cwd: appPath,
|
||||
encoding: 'utf8',
|
||||
maxBuffer: 1024 * 1024,
|
||||
}
|
||||
);
|
||||
|
||||
expect(result.status).toBe(0);
|
||||
const stdout = String(result.stdout || '');
|
||||
expect(stdout).toMatch(/Import process has been completed successfully!?/);
|
||||
|
||||
const stateAfterImport = utils.getDbState(appPath);
|
||||
if (stateAfterImport.error) {
|
||||
throw new Error(`Failed to read DB after import: ${stateAfterImport.error}`);
|
||||
}
|
||||
expect(stateAfterImport.articles).toBe(expectedDbState.articles);
|
||||
expect(stateAfterImport.categories).toBe(expectedDbState.categories);
|
||||
});
|
||||
});
|
||||
|
||||
test.todo('import from .tar.gz (compressed) and verify DB state');
|
||||
test.todo('import from .tar.gz.enc (encrypted) with correct key and verify DB state');
|
||||
test.todo('import with wrong decryption key fails with clear error');
|
||||
|
||||
@@ -22,8 +22,8 @@ describe('admin:create-user', () => {
|
||||
appPath = testApps.at(0);
|
||||
|
||||
// Reset the database using the programmatic function (no HTTP server required)
|
||||
// Use without-admin.tar to start with an empty database (no admin users)
|
||||
await resetDatabaseAndImportDataFromPathProgrammatic(appPath, 'without-admin.tar');
|
||||
// Use without-admin to start with an empty database (no admin users)
|
||||
await resetDatabaseAndImportDataFromPathProgrammatic(appPath, 'without-admin');
|
||||
});
|
||||
|
||||
it('should create an admin user and persist it to the database', async () => {
|
||||
|
||||
@@ -0,0 +1 @@
|
||||
{"id":3,"documentId":"zrs50ucydlt9ngjfkiyvf3vj","name":"395cf788f0c9865a1b561d90287de8a6f3d76981.gif","alternativeText":null,"caption":null,"width":275,"height":356,"formats":{"thumbnail":{"name":"thumbnail_395cf788f0c9865a1b561d90287de8a6f3d76981.gif","hash":"thumbnail_395cf788f0c9865a1b561d90287de8a6f3d76981_bb9a4b368c","ext":".gif","mime":"image/gif","path":null,"width":121,"height":156,"size":10.67,"url":"/uploads/thumbnail_395cf788f0c9865a1b561d90287de8a6f3d76981_bb9a4b368c.gif"}},"hash":"395cf788f0c9865a1b561d90287de8a6f3d76981_bb9a4b368c","ext":".gif","mime":"image/gif","size":54.57,"url":"/uploads/395cf788f0c9865a1b561d90287de8a6f3d76981_bb9a4b368c.gif","previewUrl":null,"provider":"local","provider_metadata":null,"folderPath":"/2","createdAt":"2024-01-17T14:04:24.757Z","updatedAt":"2024-12-12T15:55:21.796Z","publishedAt":"2024-02-13T09:05:05.535Z","locale":null}
|
||||
@@ -0,0 +1 @@
|
||||
{"id":5,"documentId":"g70g6ouv42nhuwp8f4reqygm","name":"afc-richmond-away-1.webp","alternativeText":null,"caption":null,"width":800,"height":800,"formats":{"thumbnail":{"name":"thumbnail_afc-richmond-away-1.webp","hash":"thumbnail_afc_richmond_away_1_beb85c1e83","ext":".webp","mime":"image/webp","path":null,"width":156,"height":156,"size":3.7,"url":"/uploads/thumbnail_afc_richmond_away_1_beb85c1e83.webp"},"medium":{"name":"medium_afc-richmond-away-1.webp","hash":"medium_afc_richmond_away_1_beb85c1e83","ext":".webp","mime":"image/webp","path":null,"width":750,"height":750,"size":39.8,"url":"/uploads/medium_afc_richmond_away_1_beb85c1e83.webp"},"small":{"name":"small_afc-richmond-away-1.webp","hash":"small_afc_richmond_away_1_beb85c1e83","ext":".webp","mime":"image/webp","path":null,"width":500,"height":500,"size":22.28,"url":"/uploads/small_afc_richmond_away_1_beb85c1e83.webp"}},"hash":"afc_richmond_away_1_beb85c1e83","ext":".webp","mime":"image/webp","size":49.5,"url":"/uploads/afc_richmond_away_1_beb85c1e83.webp","previewUrl":null,"provider":"local","provider_metadata":null,"folderPath":"/1/3","createdAt":"2024-02-20T10:24:35.407Z","updatedAt":"2024-12-12T15:55:21.818Z","publishedAt":"2024-02-20T10:24:35.407Z","locale":null}
|
||||
@@ -0,0 +1 @@
|
||||
{"id":6,"documentId":"r3lfvvexy67a6p7gko0kkthw","name":"afc-richmond-away-2.webp","alternativeText":null,"caption":null,"width":800,"height":800,"formats":{"thumbnail":{"name":"thumbnail_afc-richmond-away-2.webp","hash":"thumbnail_afc_richmond_away_2_f2bcf252fd","ext":".webp","mime":"image/webp","path":null,"width":156,"height":156,"size":5.25,"url":"/uploads/thumbnail_afc_richmond_away_2_f2bcf252fd.webp"},"small":{"name":"small_afc-richmond-away-2.webp","hash":"small_afc_richmond_away_2_f2bcf252fd","ext":".webp","mime":"image/webp","path":null,"width":500,"height":500,"size":46.35,"url":"/uploads/small_afc_richmond_away_2_f2bcf252fd.webp"},"medium":{"name":"medium_afc-richmond-away-2.webp","hash":"medium_afc_richmond_away_2_f2bcf252fd","ext":".webp","mime":"image/webp","path":null,"width":750,"height":750,"size":95.45,"url":"/uploads/medium_afc_richmond_away_2_f2bcf252fd.webp"}},"hash":"afc_richmond_away_2_f2bcf252fd","ext":".webp","mime":"image/webp","size":133.71,"url":"/uploads/afc_richmond_away_2_f2bcf252fd.webp","previewUrl":null,"provider":"local","provider_metadata":null,"folderPath":"/1/3","createdAt":"2024-02-20T10:24:35.461Z","updatedAt":"2024-12-12T15:55:21.872Z","publishedAt":"2024-02-20T10:24:35.461Z","locale":null}
|
||||
@@ -0,0 +1 @@
|
||||
{"id":4,"documentId":"zzewfi4u1wuz6ecqujs2u36t","name":"afc-richmond-away-3.jpeg","alternativeText":null,"caption":null,"width":800,"height":800,"formats":{"thumbnail":{"name":"thumbnail_afc-richmond-away-3.jpeg","hash":"thumbnail_afc_richmond_away_3_7b91c10fbd","ext":".jpeg","mime":"image/jpeg","path":null,"width":156,"height":156,"size":5.95,"url":"/uploads/thumbnail_afc_richmond_away_3_7b91c10fbd.jpeg"},"small":{"name":"small_afc-richmond-away-3.jpeg","hash":"small_afc_richmond_away_3_7b91c10fbd","ext":".jpeg","mime":"image/jpeg","path":null,"width":500,"height":500,"size":66.14,"url":"/uploads/small_afc_richmond_away_3_7b91c10fbd.jpeg"},"medium":{"name":"medium_afc-richmond-away-3.jpeg","hash":"medium_afc_richmond_away_3_7b91c10fbd","ext":".jpeg","mime":"image/jpeg","path":null,"width":750,"height":750,"size":141.79,"url":"/uploads/medium_afc_richmond_away_3_7b91c10fbd.jpeg"}},"hash":"afc_richmond_away_3_7b91c10fbd","ext":".jpeg","mime":"image/jpeg","size":142.4,"url":"/uploads/afc_richmond_away_3_7b91c10fbd.jpeg","previewUrl":null,"provider":"local","provider_metadata":null,"folderPath":"/1/3","createdAt":"2024-02-20T10:24:35.231Z","updatedAt":"2024-12-12T15:55:21.811Z","publishedAt":"2024-02-20T10:24:35.231Z","locale":null}
|
||||
@@ -0,0 +1 @@
|
||||
{"id":8,"documentId":"eabpa7bss9oeic2b0p9ra26i","name":"afc-richmond-home-1.webp","alternativeText":null,"caption":null,"width":1000,"height":1000,"formats":{"thumbnail":{"name":"thumbnail_afc-richmond-home-1.webp","hash":"thumbnail_afc_richmond_home_1_6030b89e7f","ext":".webp","mime":"image/webp","path":null,"width":156,"height":156,"size":2.1,"url":"/uploads/thumbnail_afc_richmond_home_1_6030b89e7f.webp"},"medium":{"name":"medium_afc-richmond-home-1.webp","hash":"medium_afc_richmond_home_1_6030b89e7f","ext":".webp","mime":"image/webp","path":null,"width":750,"height":750,"size":14.11,"url":"/uploads/medium_afc_richmond_home_1_6030b89e7f.webp"},"small":{"name":"small_afc-richmond-home-1.webp","hash":"small_afc_richmond_home_1_6030b89e7f","ext":".webp","mime":"image/webp","path":null,"width":500,"height":500,"size":9.02,"url":"/uploads/small_afc_richmond_home_1_6030b89e7f.webp"}},"hash":"afc_richmond_home_1_6030b89e7f","ext":".webp","mime":"image/webp","size":23.77,"url":"/uploads/afc_richmond_home_1_6030b89e7f.webp","previewUrl":null,"provider":"local","provider_metadata":null,"folderPath":"/1/4","createdAt":"2024-02-20T10:33:47.485Z","updatedAt":"2024-12-12T15:55:21.880Z","publishedAt":"2024-02-20T10:33:47.485Z","locale":null}
|
||||
@@ -0,0 +1 @@
|
||||
{"id":9,"documentId":"uqrgd5vtekdxse6pwtps71fc","name":"afc-richmond-home-2.webp","alternativeText":null,"caption":null,"width":1000,"height":1000,"formats":{"thumbnail":{"name":"thumbnail_afc-richmond-home-2.webp","hash":"thumbnail_afc_richmond_home_2_b410a4fe67","ext":".webp","mime":"image/webp","path":null,"width":156,"height":156,"size":2.01,"url":"/uploads/thumbnail_afc_richmond_home_2_b410a4fe67.webp"},"medium":{"name":"medium_afc-richmond-home-2.webp","hash":"medium_afc_richmond_home_2_b410a4fe67","ext":".webp","mime":"image/webp","path":null,"width":750,"height":750,"size":12.3,"url":"/uploads/medium_afc_richmond_home_2_b410a4fe67.webp"},"small":{"name":"small_afc-richmond-home-2.webp","hash":"small_afc_richmond_home_2_b410a4fe67","ext":".webp","mime":"image/webp","path":null,"width":500,"height":500,"size":7.91,"url":"/uploads/small_afc_richmond_home_2_b410a4fe67.webp"}},"hash":"afc_richmond_home_2_b410a4fe67","ext":".webp","mime":"image/webp","size":21.02,"url":"/uploads/afc_richmond_home_2_b410a4fe67.webp","previewUrl":null,"provider":"local","provider_metadata":null,"folderPath":"/1/4","createdAt":"2024-02-20T10:33:47.489Z","updatedAt":"2024-12-12T15:55:21.884Z","publishedAt":"2024-02-20T10:33:47.489Z","locale":null}
|
||||
@@ -0,0 +1 @@
|
||||
{"id":7,"documentId":"a6qqts03n4xcvnhxmht7rbbo","name":"afc-richmond-home-3.webp","alternativeText":null,"caption":null,"width":750,"height":750,"formats":{"thumbnail":{"name":"thumbnail_afc-richmond-home-3.webp","hash":"thumbnail_afc_richmond_home_3_6b83134d04","ext":".webp","mime":"image/webp","path":null,"width":156,"height":156,"size":3.04,"url":"/uploads/thumbnail_afc_richmond_home_3_6b83134d04.webp"},"small":{"name":"small_afc-richmond-home-3.webp","hash":"small_afc_richmond_home_3_6b83134d04","ext":".webp","mime":"image/webp","path":null,"width":500,"height":500,"size":12.1,"url":"/uploads/small_afc_richmond_home_3_6b83134d04.webp"}},"hash":"afc_richmond_home_3_6b83134d04","ext":".webp","mime":"image/webp","size":22.42,"url":"/uploads/afc_richmond_home_3_6b83134d04.webp","previewUrl":null,"provider":"local","provider_metadata":null,"folderPath":"/1/4","createdAt":"2024-02-20T10:33:47.411Z","updatedAt":"2024-12-12T15:55:21.876Z","publishedAt":"2024-02-20T10:33:47.411Z","locale":null}
|
||||
@@ -0,0 +1 @@
|
||||
{"id":2,"documentId":"hhdhuga5xrfejcxl87oh2h3b","name":"coach_beard_profile.jpg","alternativeText":null,"caption":null,"width":1080,"height":1080,"formats":{"thumbnail":{"name":"thumbnail_coach_beard_profile.jpg","hash":"thumbnail_coach_beard_profile_72ddb71816","ext":".jpg","mime":"image/jpeg","path":null,"width":156,"height":156,"size":5.65,"url":"/uploads/thumbnail_coach_beard_profile_72ddb71816.jpg"},"small":{"name":"small_coach_beard_profile.jpg","hash":"small_coach_beard_profile_72ddb71816","ext":".jpg","mime":"image/jpeg","path":null,"width":500,"height":500,"size":31.34,"url":"/uploads/small_coach_beard_profile_72ddb71816.jpg"},"large":{"name":"large_coach_beard_profile.jpg","hash":"large_coach_beard_profile_72ddb71816","ext":".jpg","mime":"image/jpeg","path":null,"width":1000,"height":1000,"size":90.21,"url":"/uploads/large_coach_beard_profile_72ddb71816.jpg"},"medium":{"name":"medium_coach_beard_profile.jpg","hash":"medium_coach_beard_profile_72ddb71816","ext":".jpg","mime":"image/jpeg","path":null,"width":750,"height":750,"size":58.14,"url":"/uploads/medium_coach_beard_profile_72ddb71816.jpg"}},"hash":"coach_beard_profile_72ddb71816","ext":".jpg","mime":"image/jpeg","size":87.61,"url":"/uploads/coach_beard_profile_72ddb71816.jpg","previewUrl":null,"provider":"local","provider_metadata":null,"folderPath":"/2","createdAt":"2024-01-17T14:03:58.618Z","updatedAt":"2024-12-12T15:55:21.790Z","publishedAt":"2024-02-13T09:05:05.535Z","locale":null}
|
||||
@@ -0,0 +1 @@
|
||||
{"name":"large_coach_beard_profile.jpg","hash":"large_coach_beard_profile_72ddb71816","ext":".jpg","mime":"image/jpeg","path":null,"width":1000,"height":1000,"size":90.21,"url":"/uploads/large_coach_beard_profile_72ddb71816.jpg","type":"large","id":2,"mainHash":"coach_beard_profile_72ddb71816"}
|
||||
@@ -0,0 +1 @@
|
||||
{"name":"large_ted_lasso_profile.jpeg","hash":"large_ted_lasso_profile_f4262e821d","ext":".jpeg","mime":"image/jpeg","path":null,"width":1000,"height":667,"size":60.91,"url":"/uploads/large_ted_lasso_profile_f4262e821d.jpeg","type":"large","id":1,"mainHash":"ted_lasso_profile_f4262e821d"}
|
||||
@@ -0,0 +1 @@
|
||||
{"name":"medium_afc-richmond-away-1.webp","hash":"medium_afc_richmond_away_1_beb85c1e83","ext":".webp","mime":"image/webp","path":null,"width":750,"height":750,"size":39.8,"url":"/uploads/medium_afc_richmond_away_1_beb85c1e83.webp","type":"medium","id":5,"mainHash":"afc_richmond_away_1_beb85c1e83"}
|
||||
@@ -0,0 +1 @@
|
||||
{"name":"medium_afc-richmond-away-2.webp","hash":"medium_afc_richmond_away_2_f2bcf252fd","ext":".webp","mime":"image/webp","path":null,"width":750,"height":750,"size":95.45,"url":"/uploads/medium_afc_richmond_away_2_f2bcf252fd.webp","type":"medium","id":6,"mainHash":"afc_richmond_away_2_f2bcf252fd"}
|
||||
@@ -0,0 +1 @@
|
||||
{"name":"medium_afc-richmond-away-3.jpeg","hash":"medium_afc_richmond_away_3_7b91c10fbd","ext":".jpeg","mime":"image/jpeg","path":null,"width":750,"height":750,"size":141.79,"url":"/uploads/medium_afc_richmond_away_3_7b91c10fbd.jpeg","type":"medium","id":4,"mainHash":"afc_richmond_away_3_7b91c10fbd"}
|
||||
@@ -0,0 +1 @@
|
||||
{"name":"medium_afc-richmond-home-1.webp","hash":"medium_afc_richmond_home_1_6030b89e7f","ext":".webp","mime":"image/webp","path":null,"width":750,"height":750,"size":14.11,"url":"/uploads/medium_afc_richmond_home_1_6030b89e7f.webp","type":"medium","id":8,"mainHash":"afc_richmond_home_1_6030b89e7f"}
|
||||
@@ -0,0 +1 @@
|
||||
{"name":"medium_afc-richmond-home-2.webp","hash":"medium_afc_richmond_home_2_b410a4fe67","ext":".webp","mime":"image/webp","path":null,"width":750,"height":750,"size":12.3,"url":"/uploads/medium_afc_richmond_home_2_b410a4fe67.webp","type":"medium","id":9,"mainHash":"afc_richmond_home_2_b410a4fe67"}
|
||||
@@ -0,0 +1 @@
|
||||
{"name":"medium_coach_beard_profile.jpg","hash":"medium_coach_beard_profile_72ddb71816","ext":".jpg","mime":"image/jpeg","path":null,"width":750,"height":750,"size":58.14,"url":"/uploads/medium_coach_beard_profile_72ddb71816.jpg","type":"medium","id":2,"mainHash":"coach_beard_profile_72ddb71816"}
|
||||
@@ -0,0 +1 @@
|
||||
{"name":"medium_ted_lasso_profile.jpeg","hash":"medium_ted_lasso_profile_f4262e821d","ext":".jpeg","mime":"image/jpeg","path":null,"width":750,"height":500,"size":34.22,"url":"/uploads/medium_ted_lasso_profile_f4262e821d.jpeg","type":"medium","id":1,"mainHash":"ted_lasso_profile_f4262e821d"}
|
||||
@@ -0,0 +1 @@
|
||||
{"name":"small_afc-richmond-away-1.webp","hash":"small_afc_richmond_away_1_beb85c1e83","ext":".webp","mime":"image/webp","path":null,"width":500,"height":500,"size":22.28,"url":"/uploads/small_afc_richmond_away_1_beb85c1e83.webp","type":"small","id":5,"mainHash":"afc_richmond_away_1_beb85c1e83"}
|
||||
@@ -0,0 +1 @@
|
||||
{"name":"small_afc-richmond-away-2.webp","hash":"small_afc_richmond_away_2_f2bcf252fd","ext":".webp","mime":"image/webp","path":null,"width":500,"height":500,"size":46.35,"url":"/uploads/small_afc_richmond_away_2_f2bcf252fd.webp","type":"small","id":6,"mainHash":"afc_richmond_away_2_f2bcf252fd"}
|
||||
@@ -0,0 +1 @@
|
||||
{"name":"small_afc-richmond-away-3.jpeg","hash":"small_afc_richmond_away_3_7b91c10fbd","ext":".jpeg","mime":"image/jpeg","path":null,"width":500,"height":500,"size":66.14,"url":"/uploads/small_afc_richmond_away_3_7b91c10fbd.jpeg","type":"small","id":4,"mainHash":"afc_richmond_away_3_7b91c10fbd"}
|
||||
@@ -0,0 +1 @@
|
||||
{"name":"small_afc-richmond-home-1.webp","hash":"small_afc_richmond_home_1_6030b89e7f","ext":".webp","mime":"image/webp","path":null,"width":500,"height":500,"size":9.02,"url":"/uploads/small_afc_richmond_home_1_6030b89e7f.webp","type":"small","id":8,"mainHash":"afc_richmond_home_1_6030b89e7f"}
|
||||
@@ -0,0 +1 @@
|
||||
{"name":"small_afc-richmond-home-2.webp","hash":"small_afc_richmond_home_2_b410a4fe67","ext":".webp","mime":"image/webp","path":null,"width":500,"height":500,"size":7.91,"url":"/uploads/small_afc_richmond_home_2_b410a4fe67.webp","type":"small","id":9,"mainHash":"afc_richmond_home_2_b410a4fe67"}
|
||||
@@ -0,0 +1 @@
|
||||
{"name":"small_afc-richmond-home-3.webp","hash":"small_afc_richmond_home_3_6b83134d04","ext":".webp","mime":"image/webp","path":null,"width":500,"height":500,"size":12.1,"url":"/uploads/small_afc_richmond_home_3_6b83134d04.webp","type":"small","id":7,"mainHash":"afc_richmond_home_3_6b83134d04"}
|
||||
@@ -0,0 +1 @@
|
||||
{"name":"small_coach_beard_profile.jpg","hash":"small_coach_beard_profile_72ddb71816","ext":".jpg","mime":"image/jpeg","path":null,"width":500,"height":500,"size":31.34,"url":"/uploads/small_coach_beard_profile_72ddb71816.jpg","type":"small","id":2,"mainHash":"coach_beard_profile_72ddb71816"}
|
||||
@@ -0,0 +1 @@
|
||||
{"name":"small_ted_lasso_profile.jpeg","hash":"small_ted_lasso_profile_f4262e821d","ext":".jpeg","mime":"image/jpeg","path":null,"width":500,"height":333,"size":16.8,"url":"/uploads/small_ted_lasso_profile_f4262e821d.jpeg","type":"small","id":1,"mainHash":"ted_lasso_profile_f4262e821d"}
|
||||
@@ -0,0 +1 @@
|
||||
{"id":1,"documentId":"uwanb6kb3mhl1i0y0daeng8q","name":"ted_lasso_profile.jpeg","alternativeText":null,"caption":null,"width":5616,"height":3744,"formats":{"thumbnail":{"name":"thumbnail_ted_lasso_profile.jpeg","hash":"thumbnail_ted_lasso_profile_f4262e821d","ext":".jpeg","mime":"image/jpeg","path":null,"width":234,"height":156,"size":5.57,"url":"/uploads/thumbnail_ted_lasso_profile_f4262e821d.jpeg"},"large":{"name":"large_ted_lasso_profile.jpeg","hash":"large_ted_lasso_profile_f4262e821d","ext":".jpeg","mime":"image/jpeg","path":null,"width":1000,"height":667,"size":60.91,"url":"/uploads/large_ted_lasso_profile_f4262e821d.jpeg"},"medium":{"name":"medium_ted_lasso_profile.jpeg","hash":"medium_ted_lasso_profile_f4262e821d","ext":".jpeg","mime":"image/jpeg","path":null,"width":750,"height":500,"size":34.22,"url":"/uploads/medium_ted_lasso_profile_f4262e821d.jpeg"},"small":{"name":"small_ted_lasso_profile.jpeg","hash":"small_ted_lasso_profile_f4262e821d","ext":".jpeg","mime":"image/jpeg","path":null,"width":500,"height":333,"size":16.8,"url":"/uploads/small_ted_lasso_profile_f4262e821d.jpeg"}},"hash":"ted_lasso_profile_f4262e821d","ext":".jpeg","mime":"image/jpeg","size":5258.95,"url":"/uploads/ted_lasso_profile_f4262e821d.jpeg","previewUrl":null,"provider":"local","provider_metadata":null,"folderPath":"/2","createdAt":"2024-01-17T14:03:45.041Z","updatedAt":"2024-12-12T15:55:21.765Z","publishedAt":"2024-02-13T09:05:05.535Z","locale":null}
|
||||
@@ -0,0 +1 @@
|
||||
{"name":"thumbnail_395cf788f0c9865a1b561d90287de8a6f3d76981.gif","hash":"thumbnail_395cf788f0c9865a1b561d90287de8a6f3d76981_bb9a4b368c","ext":".gif","mime":"image/gif","path":null,"width":121,"height":156,"size":10.67,"url":"/uploads/thumbnail_395cf788f0c9865a1b561d90287de8a6f3d76981_bb9a4b368c.gif","type":"thumbnail","id":3,"mainHash":"395cf788f0c9865a1b561d90287de8a6f3d76981_bb9a4b368c"}
|
||||
@@ -0,0 +1 @@
|
||||
{"name":"thumbnail_afc-richmond-away-1.webp","hash":"thumbnail_afc_richmond_away_1_beb85c1e83","ext":".webp","mime":"image/webp","path":null,"width":156,"height":156,"size":3.7,"url":"/uploads/thumbnail_afc_richmond_away_1_beb85c1e83.webp","type":"thumbnail","id":5,"mainHash":"afc_richmond_away_1_beb85c1e83"}
|
||||
@@ -0,0 +1 @@
|
||||
{"name":"thumbnail_afc-richmond-away-2.webp","hash":"thumbnail_afc_richmond_away_2_f2bcf252fd","ext":".webp","mime":"image/webp","path":null,"width":156,"height":156,"size":5.25,"url":"/uploads/thumbnail_afc_richmond_away_2_f2bcf252fd.webp","type":"thumbnail","id":6,"mainHash":"afc_richmond_away_2_f2bcf252fd"}
|
||||
@@ -0,0 +1 @@
|
||||
{"name":"thumbnail_afc-richmond-away-3.jpeg","hash":"thumbnail_afc_richmond_away_3_7b91c10fbd","ext":".jpeg","mime":"image/jpeg","path":null,"width":156,"height":156,"size":5.95,"url":"/uploads/thumbnail_afc_richmond_away_3_7b91c10fbd.jpeg","type":"thumbnail","id":4,"mainHash":"afc_richmond_away_3_7b91c10fbd"}
|
||||
@@ -0,0 +1 @@
|
||||
{"name":"thumbnail_afc-richmond-home-1.webp","hash":"thumbnail_afc_richmond_home_1_6030b89e7f","ext":".webp","mime":"image/webp","path":null,"width":156,"height":156,"size":2.1,"url":"/uploads/thumbnail_afc_richmond_home_1_6030b89e7f.webp","type":"thumbnail","id":8,"mainHash":"afc_richmond_home_1_6030b89e7f"}
|
||||
@@ -0,0 +1 @@
|
||||
{"name":"thumbnail_afc-richmond-home-2.webp","hash":"thumbnail_afc_richmond_home_2_b410a4fe67","ext":".webp","mime":"image/webp","path":null,"width":156,"height":156,"size":2.01,"url":"/uploads/thumbnail_afc_richmond_home_2_b410a4fe67.webp","type":"thumbnail","id":9,"mainHash":"afc_richmond_home_2_b410a4fe67"}
|
||||
@@ -0,0 +1 @@
|
||||
{"name":"thumbnail_afc-richmond-home-3.webp","hash":"thumbnail_afc_richmond_home_3_6b83134d04","ext":".webp","mime":"image/webp","path":null,"width":156,"height":156,"size":3.04,"url":"/uploads/thumbnail_afc_richmond_home_3_6b83134d04.webp","type":"thumbnail","id":7,"mainHash":"afc_richmond_home_3_6b83134d04"}
|
||||
@@ -0,0 +1 @@
|
||||
{"name":"thumbnail_coach_beard_profile.jpg","hash":"thumbnail_coach_beard_profile_72ddb71816","ext":".jpg","mime":"image/jpeg","path":null,"width":156,"height":156,"size":5.65,"url":"/uploads/thumbnail_coach_beard_profile_72ddb71816.jpg","type":"thumbnail","id":2,"mainHash":"coach_beard_profile_72ddb71816"}
|
||||
@@ -0,0 +1 @@
|
||||
{"name":"thumbnail_ted_lasso_profile.jpeg","hash":"thumbnail_ted_lasso_profile_f4262e821d","ext":".jpeg","mime":"image/jpeg","path":null,"width":234,"height":156,"size":5.57,"url":"/uploads/thumbnail_ted_lasso_profile_f4262e821d.jpeg","type":"thumbnail","id":1,"mainHash":"ted_lasso_profile_f4262e821d"}
|
||||
|
After Width: | Height: | Size: 53 KiB |
|
After Width: | Height: | Size: 48 KiB |
|
After Width: | Height: | Size: 131 KiB |
|
After Width: | Height: | Size: 139 KiB |
|
After Width: | Height: | Size: 23 KiB |
|
After Width: | Height: | Size: 20 KiB |
|
After Width: | Height: | Size: 22 KiB |
|
After Width: | Height: | Size: 86 KiB |
|
After Width: | Height: | Size: 88 KiB |
|
After Width: | Height: | Size: 60 KiB |
|
After Width: | Height: | Size: 39 KiB |
|
After Width: | Height: | Size: 93 KiB |
|
After Width: | Height: | Size: 138 KiB |
|
After Width: | Height: | Size: 14 KiB |
|
After Width: | Height: | Size: 12 KiB |
|
After Width: | Height: | Size: 57 KiB |
|
After Width: | Height: | Size: 33 KiB |
|
After Width: | Height: | Size: 22 KiB |
|
After Width: | Height: | Size: 45 KiB |
|
After Width: | Height: | Size: 65 KiB |
|
After Width: | Height: | Size: 8.8 KiB |
|
After Width: | Height: | Size: 7.7 KiB |
|
After Width: | Height: | Size: 12 KiB |
|
After Width: | Height: | Size: 31 KiB |
|
After Width: | Height: | Size: 16 KiB |
|
Before Width: | Height: | Size: 7.0 MiB After Width: | Height: | Size: 5.0 MiB |
|
After Width: | Height: | Size: 10 KiB |
|
After Width: | Height: | Size: 3.6 KiB |
|
After Width: | Height: | Size: 5.1 KiB |
|
After Width: | Height: | Size: 5.8 KiB |
|
After Width: | Height: | Size: 2.0 KiB |
|
After Width: | Height: | Size: 2.0 KiB |
|
After Width: | Height: | Size: 3.0 KiB |
|
After Width: | Height: | Size: 5.5 KiB |
|
After Width: | Height: | Size: 5.4 KiB |
@@ -0,0 +1,241 @@
|
||||
{"type":"plugin::upload.file","id":1,"data":{"documentId":"uwanb6kb3mhl1i0y0daeng8q","name":"ted_lasso_profile.jpeg","alternativeText":null,"caption":null,"width":5616,"height":3744,"formats":{"thumbnail":{"name":"thumbnail_ted_lasso_profile.jpeg","hash":"thumbnail_ted_lasso_profile_f4262e821d","ext":".jpeg","mime":"image/jpeg","path":null,"width":234,"height":156,"size":5.57,"url":"/uploads/thumbnail_ted_lasso_profile_f4262e821d.jpeg"},"large":{"name":"large_ted_lasso_profile.jpeg","hash":"large_ted_lasso_profile_f4262e821d","ext":".jpeg","mime":"image/jpeg","path":null,"width":1000,"height":667,"size":60.91,"url":"/uploads/large_ted_lasso_profile_f4262e821d.jpeg"},"medium":{"name":"medium_ted_lasso_profile.jpeg","hash":"medium_ted_lasso_profile_f4262e821d","ext":".jpeg","mime":"image/jpeg","path":null,"width":750,"height":500,"size":34.22,"url":"/uploads/medium_ted_lasso_profile_f4262e821d.jpeg"},"small":{"name":"small_ted_lasso_profile.jpeg","hash":"small_ted_lasso_profile_f4262e821d","ext":".jpeg","mime":"image/jpeg","path":null,"width":500,"height":333,"size":16.8,"url":"/uploads/small_ted_lasso_profile_f4262e821d.jpeg"}},"hash":"ted_lasso_profile_f4262e821d","ext":".jpeg","mime":"image/jpeg","size":5258.95,"url":"/uploads/ted_lasso_profile_f4262e821d.jpeg","previewUrl":null,"provider":"local","provider_metadata":null,"folderPath":"/2","createdAt":"2024-01-17T14:03:45.041Z","updatedAt":"2024-12-12T15:55:21.765Z","publishedAt":"2024-02-13T09:05:05.535Z","locale":null}}
|
||||
{"type":"plugin::upload.file","id":2,"data":{"documentId":"hhdhuga5xrfejcxl87oh2h3b","name":"coach_beard_profile.jpg","alternativeText":null,"caption":null,"width":1080,"height":1080,"formats":{"thumbnail":{"name":"thumbnail_coach_beard_profile.jpg","hash":"thumbnail_coach_beard_profile_72ddb71816","ext":".jpg","mime":"image/jpeg","path":null,"width":156,"height":156,"size":5.65,"url":"/uploads/thumbnail_coach_beard_profile_72ddb71816.jpg"},"small":{"name":"small_coach_beard_profile.jpg","hash":"small_coach_beard_profile_72ddb71816","ext":".jpg","mime":"image/jpeg","path":null,"width":500,"height":500,"size":31.34,"url":"/uploads/small_coach_beard_profile_72ddb71816.jpg"},"large":{"name":"large_coach_beard_profile.jpg","hash":"large_coach_beard_profile_72ddb71816","ext":".jpg","mime":"image/jpeg","path":null,"width":1000,"height":1000,"size":90.21,"url":"/uploads/large_coach_beard_profile_72ddb71816.jpg"},"medium":{"name":"medium_coach_beard_profile.jpg","hash":"medium_coach_beard_profile_72ddb71816","ext":".jpg","mime":"image/jpeg","path":null,"width":750,"height":750,"size":58.14,"url":"/uploads/medium_coach_beard_profile_72ddb71816.jpg"}},"hash":"coach_beard_profile_72ddb71816","ext":".jpg","mime":"image/jpeg","size":87.61,"url":"/uploads/coach_beard_profile_72ddb71816.jpg","previewUrl":null,"provider":"local","provider_metadata":null,"folderPath":"/2","createdAt":"2024-01-17T14:03:58.618Z","updatedAt":"2024-12-12T15:55:21.790Z","publishedAt":"2024-02-13T09:05:05.535Z","locale":null}}
|
||||
{"type":"plugin::upload.file","id":3,"data":{"documentId":"zrs50ucydlt9ngjfkiyvf3vj","name":"395cf788f0c9865a1b561d90287de8a6f3d76981.gif","alternativeText":null,"caption":null,"width":275,"height":356,"formats":{"thumbnail":{"name":"thumbnail_395cf788f0c9865a1b561d90287de8a6f3d76981.gif","hash":"thumbnail_395cf788f0c9865a1b561d90287de8a6f3d76981_bb9a4b368c","ext":".gif","mime":"image/gif","path":null,"width":121,"height":156,"size":10.67,"url":"/uploads/thumbnail_395cf788f0c9865a1b561d90287de8a6f3d76981_bb9a4b368c.gif"}},"hash":"395cf788f0c9865a1b561d90287de8a6f3d76981_bb9a4b368c","ext":".gif","mime":"image/gif","size":54.57,"url":"/uploads/395cf788f0c9865a1b561d90287de8a6f3d76981_bb9a4b368c.gif","previewUrl":null,"provider":"local","provider_metadata":null,"folderPath":"/2","createdAt":"2024-01-17T14:04:24.757Z","updatedAt":"2024-12-12T15:55:21.796Z","publishedAt":"2024-02-13T09:05:05.535Z","locale":null}}
|
||||
{"type":"plugin::upload.file","id":4,"data":{"documentId":"zzewfi4u1wuz6ecqujs2u36t","name":"afc-richmond-away-3.jpeg","alternativeText":null,"caption":null,"width":800,"height":800,"formats":{"thumbnail":{"name":"thumbnail_afc-richmond-away-3.jpeg","hash":"thumbnail_afc_richmond_away_3_7b91c10fbd","ext":".jpeg","mime":"image/jpeg","path":null,"width":156,"height":156,"size":5.95,"url":"/uploads/thumbnail_afc_richmond_away_3_7b91c10fbd.jpeg"},"small":{"name":"small_afc-richmond-away-3.jpeg","hash":"small_afc_richmond_away_3_7b91c10fbd","ext":".jpeg","mime":"image/jpeg","path":null,"width":500,"height":500,"size":66.14,"url":"/uploads/small_afc_richmond_away_3_7b91c10fbd.jpeg"},"medium":{"name":"medium_afc-richmond-away-3.jpeg","hash":"medium_afc_richmond_away_3_7b91c10fbd","ext":".jpeg","mime":"image/jpeg","path":null,"width":750,"height":750,"size":141.79,"url":"/uploads/medium_afc_richmond_away_3_7b91c10fbd.jpeg"}},"hash":"afc_richmond_away_3_7b91c10fbd","ext":".jpeg","mime":"image/jpeg","size":142.4,"url":"/uploads/afc_richmond_away_3_7b91c10fbd.jpeg","previewUrl":null,"provider":"local","provider_metadata":null,"folderPath":"/1/3","createdAt":"2024-02-20T10:24:35.231Z","updatedAt":"2024-12-12T15:55:21.811Z","publishedAt":"2024-02-20T10:24:35.231Z","locale":null}}
|
||||
{"type":"plugin::upload.file","id":5,"data":{"documentId":"g70g6ouv42nhuwp8f4reqygm","name":"afc-richmond-away-1.webp","alternativeText":null,"caption":null,"width":800,"height":800,"formats":{"thumbnail":{"name":"thumbnail_afc-richmond-away-1.webp","hash":"thumbnail_afc_richmond_away_1_beb85c1e83","ext":".webp","mime":"image/webp","path":null,"width":156,"height":156,"size":3.7,"url":"/uploads/thumbnail_afc_richmond_away_1_beb85c1e83.webp"},"medium":{"name":"medium_afc-richmond-away-1.webp","hash":"medium_afc_richmond_away_1_beb85c1e83","ext":".webp","mime":"image/webp","path":null,"width":750,"height":750,"size":39.8,"url":"/uploads/medium_afc_richmond_away_1_beb85c1e83.webp"},"small":{"name":"small_afc-richmond-away-1.webp","hash":"small_afc_richmond_away_1_beb85c1e83","ext":".webp","mime":"image/webp","path":null,"width":500,"height":500,"size":22.28,"url":"/uploads/small_afc_richmond_away_1_beb85c1e83.webp"}},"hash":"afc_richmond_away_1_beb85c1e83","ext":".webp","mime":"image/webp","size":49.5,"url":"/uploads/afc_richmond_away_1_beb85c1e83.webp","previewUrl":null,"provider":"local","provider_metadata":null,"folderPath":"/1/3","createdAt":"2024-02-20T10:24:35.407Z","updatedAt":"2024-12-12T15:55:21.818Z","publishedAt":"2024-02-20T10:24:35.407Z","locale":null}}
|
||||
{"type":"plugin::upload.file","id":6,"data":{"documentId":"r3lfvvexy67a6p7gko0kkthw","name":"afc-richmond-away-2.webp","alternativeText":null,"caption":null,"width":800,"height":800,"formats":{"thumbnail":{"name":"thumbnail_afc-richmond-away-2.webp","hash":"thumbnail_afc_richmond_away_2_f2bcf252fd","ext":".webp","mime":"image/webp","path":null,"width":156,"height":156,"size":5.25,"url":"/uploads/thumbnail_afc_richmond_away_2_f2bcf252fd.webp"},"small":{"name":"small_afc-richmond-away-2.webp","hash":"small_afc_richmond_away_2_f2bcf252fd","ext":".webp","mime":"image/webp","path":null,"width":500,"height":500,"size":46.35,"url":"/uploads/small_afc_richmond_away_2_f2bcf252fd.webp"},"medium":{"name":"medium_afc-richmond-away-2.webp","hash":"medium_afc_richmond_away_2_f2bcf252fd","ext":".webp","mime":"image/webp","path":null,"width":750,"height":750,"size":95.45,"url":"/uploads/medium_afc_richmond_away_2_f2bcf252fd.webp"}},"hash":"afc_richmond_away_2_f2bcf252fd","ext":".webp","mime":"image/webp","size":133.71,"url":"/uploads/afc_richmond_away_2_f2bcf252fd.webp","previewUrl":null,"provider":"local","provider_metadata":null,"folderPath":"/1/3","createdAt":"2024-02-20T10:24:35.461Z","updatedAt":"2024-12-12T15:55:21.872Z","publishedAt":"2024-02-20T10:24:35.461Z","locale":null}}
|
||||
{"type":"plugin::upload.file","id":7,"data":{"documentId":"a6qqts03n4xcvnhxmht7rbbo","name":"afc-richmond-home-3.webp","alternativeText":null,"caption":null,"width":750,"height":750,"formats":{"thumbnail":{"name":"thumbnail_afc-richmond-home-3.webp","hash":"thumbnail_afc_richmond_home_3_6b83134d04","ext":".webp","mime":"image/webp","path":null,"width":156,"height":156,"size":3.04,"url":"/uploads/thumbnail_afc_richmond_home_3_6b83134d04.webp"},"small":{"name":"small_afc-richmond-home-3.webp","hash":"small_afc_richmond_home_3_6b83134d04","ext":".webp","mime":"image/webp","path":null,"width":500,"height":500,"size":12.1,"url":"/uploads/small_afc_richmond_home_3_6b83134d04.webp"}},"hash":"afc_richmond_home_3_6b83134d04","ext":".webp","mime":"image/webp","size":22.42,"url":"/uploads/afc_richmond_home_3_6b83134d04.webp","previewUrl":null,"provider":"local","provider_metadata":null,"folderPath":"/1/4","createdAt":"2024-02-20T10:33:47.411Z","updatedAt":"2024-12-12T15:55:21.876Z","publishedAt":"2024-02-20T10:33:47.411Z","locale":null}}
|
||||
{"type":"plugin::upload.file","id":8,"data":{"documentId":"eabpa7bss9oeic2b0p9ra26i","name":"afc-richmond-home-1.webp","alternativeText":null,"caption":null,"width":1000,"height":1000,"formats":{"thumbnail":{"name":"thumbnail_afc-richmond-home-1.webp","hash":"thumbnail_afc_richmond_home_1_6030b89e7f","ext":".webp","mime":"image/webp","path":null,"width":156,"height":156,"size":2.1,"url":"/uploads/thumbnail_afc_richmond_home_1_6030b89e7f.webp"},"medium":{"name":"medium_afc-richmond-home-1.webp","hash":"medium_afc_richmond_home_1_6030b89e7f","ext":".webp","mime":"image/webp","path":null,"width":750,"height":750,"size":14.11,"url":"/uploads/medium_afc_richmond_home_1_6030b89e7f.webp"},"small":{"name":"small_afc-richmond-home-1.webp","hash":"small_afc_richmond_home_1_6030b89e7f","ext":".webp","mime":"image/webp","path":null,"width":500,"height":500,"size":9.02,"url":"/uploads/small_afc_richmond_home_1_6030b89e7f.webp"}},"hash":"afc_richmond_home_1_6030b89e7f","ext":".webp","mime":"image/webp","size":23.77,"url":"/uploads/afc_richmond_home_1_6030b89e7f.webp","previewUrl":null,"provider":"local","provider_metadata":null,"folderPath":"/1/4","createdAt":"2024-02-20T10:33:47.485Z","updatedAt":"2024-12-12T15:55:21.880Z","publishedAt":"2024-02-20T10:33:47.485Z","locale":null}}
|
||||
{"type":"plugin::upload.file","id":9,"data":{"documentId":"uqrgd5vtekdxse6pwtps71fc","name":"afc-richmond-home-2.webp","alternativeText":null,"caption":null,"width":1000,"height":1000,"formats":{"thumbnail":{"name":"thumbnail_afc-richmond-home-2.webp","hash":"thumbnail_afc_richmond_home_2_b410a4fe67","ext":".webp","mime":"image/webp","path":null,"width":156,"height":156,"size":2.01,"url":"/uploads/thumbnail_afc_richmond_home_2_b410a4fe67.webp"},"medium":{"name":"medium_afc-richmond-home-2.webp","hash":"medium_afc_richmond_home_2_b410a4fe67","ext":".webp","mime":"image/webp","path":null,"width":750,"height":750,"size":12.3,"url":"/uploads/medium_afc_richmond_home_2_b410a4fe67.webp"},"small":{"name":"small_afc-richmond-home-2.webp","hash":"small_afc_richmond_home_2_b410a4fe67","ext":".webp","mime":"image/webp","path":null,"width":500,"height":500,"size":7.91,"url":"/uploads/small_afc_richmond_home_2_b410a4fe67.webp"}},"hash":"afc_richmond_home_2_b410a4fe67","ext":".webp","mime":"image/webp","size":21.02,"url":"/uploads/afc_richmond_home_2_b410a4fe67.webp","previewUrl":null,"provider":"local","provider_metadata":null,"folderPath":"/1/4","createdAt":"2024-02-20T10:33:47.489Z","updatedAt":"2024-12-12T15:55:21.884Z","publishedAt":"2024-02-20T10:33:47.489Z","locale":null}}
|
||||
{"type":"plugin::i18n.locale","id":2,"data":{"documentId":"g7hokt8r3dmkkgyvwo21dtar","name":"English (en)","code":"en","createdAt":"2024-02-13T11:27:31.602Z","updatedAt":"2024-02-13T11:27:31.602Z","publishedAt":"2024-02-13T11:27:31.602Z","locale":null}}
|
||||
{"type":"plugin::i18n.locale","id":3,"data":{"documentId":"hnxaa62m0z7ny1ymyuxl0myw","name":"French (fr)","code":"fr","createdAt":"2024-02-13T11:29:19.242Z","updatedAt":"2024-02-13T11:29:19.242Z","publishedAt":"2024-02-13T11:29:19.243Z","locale":null}}
|
||||
{"type":"plugin::i18n.locale","id":4,"data":{"documentId":"b48gxt9swrg5yqaio8dnxyok","name":"German (de)","code":"de","createdAt":"2024-02-20T10:11:32.487Z","updatedAt":"2024-02-20T10:11:32.487Z","publishedAt":"2024-02-20T10:11:32.489Z","locale":null}}
|
||||
{"type":"plugin::i18n.locale","id":5,"data":{"documentId":"qa5jcmelnye4elkmcemxrokx","name":"Spanish (es)","code":"es","createdAt":"2024-02-20T10:11:36.341Z","updatedAt":"2024-02-20T10:11:36.341Z","publishedAt":"2024-02-20T10:11:36.342Z","locale":null}}
|
||||
{"type":"plugin::content-releases.release","id":1,"data":{"documentId":"nr8n0xyy8r8efj77sxh9lze7","name":"Trent Crimm: The Independent","releasedAt":null,"scheduledAt":null,"timezone":null,"status":"ready","createdAt":"2024-01-31T08:55:16.532Z","updatedAt":"2025-02-28T14:48:01.624Z","publishedAt":"2024-02-13T09:05:05.536Z","locale":null}}
|
||||
{"type":"plugin::content-releases.release","id":2,"data":{"documentId":"euyyjkf0ozc9wrtiyaqbroet","name":"Nate: A wonder kid","releasedAt":"2024-01-31T09:05:02.016Z","scheduledAt":null,"timezone":null,"status":"ready","createdAt":"2024-01-31T09:04:23.780Z","updatedAt":"2024-06-04T15:47:46.370Z","publishedAt":"2024-02-13T09:05:05.536Z","locale":null}}
|
||||
{"type":"plugin::content-releases.release-action","id":1,"data":{"documentId":"gq9gkejg5yua4zw3dlxo5pnj","type":"unpublish","contentType":"api::article.article","entryDocumentId":"ogfddwp9po1qyr6mesw8nv47","locale":"en","isEntryValid":true,"createdAt":"2024-10-23T15:43:31.095Z","updatedAt":"2024-10-23T15:43:48.469Z","publishedAt":"2024-10-23T15:43:31.095Z"}}
|
||||
{"type":"plugin::content-releases.release-action","id":2,"data":{"documentId":"aqbg2x2anv08ejelejxavmmw","type":"publish","contentType":"api::article.article","entryDocumentId":"hb93u89b3ik5gn2l2t65y9m2","locale":"fr","isEntryValid":true,"createdAt":"2024-10-23T15:44:09.786Z","updatedAt":"2025-02-28T14:48:01.622Z","publishedAt":"2024-10-23T15:44:09.786Z"}}
|
||||
{"type":"plugin::content-releases.release-action","id":3,"data":{"documentId":"d31jop4cyrs9v74latd5ubw1","type":"unpublish","contentType":"api::author.author","entryDocumentId":"k3g1cnivj4jfb5o0sba2i44l","locale":null,"isEntryValid":true,"createdAt":"2024-10-23T15:44:37.005Z","updatedAt":"2024-10-23T15:44:37.005Z","publishedAt":"2024-10-23T15:44:37.005Z"}}
|
||||
{"type":"plugin::content-releases.release-action","id":4,"data":{"documentId":"l3dstk0riohzplig8ayi4yxx","type":"unpublish","contentType":"api::author.author","entryDocumentId":"jrpc2ynqxabgg7o4boi85tc5","locale":null,"isEntryValid":true,"createdAt":"2024-10-23T15:44:42.351Z","updatedAt":"2024-10-23T15:44:42.351Z","publishedAt":"2024-10-23T15:44:42.351Z"}}
|
||||
{"type":"plugin::review-workflows.workflow","id":2,"data":{"documentId":"k8docpzjkofyrmevl0n4e8wl","name":"Default","contentTypes":["api::article.article"],"createdAt":"2024-04-10T09:23:51.883Z","updatedAt":"2025-02-28T14:48:01.616Z","publishedAt":"2024-04-10T09:23:51.884Z","locale":null}}
|
||||
{"type":"plugin::review-workflows.workflow-stage","id":5,"data":{"documentId":"kfm5c1eoapccdqxuvzbmucac","name":"To do","color":"#4945FF","createdAt":"2024-04-10T09:23:51.880Z","updatedAt":"2025-02-28T14:48:01.611Z","publishedAt":"2024-04-10T09:23:51.881Z","locale":null}}
|
||||
{"type":"plugin::review-workflows.workflow-stage","id":6,"data":{"documentId":"et3njgpk6m8mug2zqsk4pnrm","name":"Ready to review","color":"#9736E8","createdAt":"2024-04-10T09:23:51.880Z","updatedAt":"2025-02-28T14:48:01.611Z","publishedAt":"2024-04-10T09:23:51.881Z","locale":null}}
|
||||
{"type":"plugin::review-workflows.workflow-stage","id":7,"data":{"documentId":"zbvm4y3uixtdtuucuqla3an4","name":"In progress","color":"#EE5E52","createdAt":"2024-04-10T09:23:51.880Z","updatedAt":"2025-02-28T14:48:01.611Z","publishedAt":"2024-04-10T09:23:51.881Z","locale":null}}
|
||||
{"type":"plugin::review-workflows.workflow-stage","id":8,"data":{"documentId":"jfkexoeih1r409jm8c9xoxtl","name":"Reviewed","color":"#328048","createdAt":"2024-04-10T09:23:51.880Z","updatedAt":"2025-02-28T14:48:01.611Z","publishedAt":"2024-04-10T09:23:51.881Z","locale":null}}
|
||||
{"type":"api::article.article","id":1,"data":{"documentId":"va0x2nt206hluydibmsoiquc","title":"Why I prefer football over soccer","content":[{"type":"paragraph","children":[{"type":"text","text":"Howdy folks!"}]},{"type":"paragraph","children":[{"type":"text","text":""}]},{"type":"paragraph","children":[{"type":"text","text":"Let's talk about why I love football—some might call it soccer, and that's okay. Football, to me, is more than a game; it's a universal language that unites people worldwide. Its simplicity is beautiful—just a ball, a patch of grass, and the joy of kicking it around. Unlike American football's stop-and-start action, football's continuous flow, rhythm, and teamwork resonate with my soul."}]},{"type":"paragraph","children":[{"type":"text","text":""}]},{"type":"paragraph","children":[{"type":"text","text":"The dance on the pitch, the anticipation, and the collective effort of a team make football special. The energy in a football stadium is unparalleled—the chants, the songs, the roar of the crowd—it's electrifying. While I appreciate competition in all sports, football's camaraderie warms my heart. Players from opposing teams exchange jerseys, acknowledging a shared love for the game."}]},{"type":"paragraph","children":[{"type":"text","text":""}]},{"type":"paragraph","children":[{"type":"text","text":"So, whether it's football or soccer, let's focus on the magic, joy, and connections the game brings. In my book, there's no greater sport, and I wouldn't trade the world of football for anything else."}]},{"type":"paragraph","children":[{"type":"text","text":""}]},{"type":"paragraph","children":[{"type":"text","text":"Cheers to the beautiful game!"}]},{"type":"paragraph","children":[{"type":"text","text":"Yours in football (or soccer, if you prefer),"}]},{"type":"paragraph","children":[{"type":"text","text":""}]},{"type":"paragraph","children":[{"type":"text","text":"Ted Lasso"}]}],"slug":"why-i-prefer-football-over-soccer","createdAt":"2024-01-17T14:05:01.666Z","updatedAt":"2024-02-18T14:53:01.271Z","publishedAt":null,"locale":"en","seo":null}}
|
||||
{"type":"api::article.article","id":2,"data":{"documentId":"ogfddwp9po1qyr6mesw8nv47","title":"West Ham post match analysis","content":[{"type":"paragraph","children":[{"type":"text","text":"Howdy,"}]},{"type":"paragraph","children":[{"type":"text","text":""}]},{"type":"paragraph","children":[{"type":"text","text":"Coach Beard here. Tough loss against West Ham, no denying that. In football, you face highs and lows. This one stings, but it's a chance to learn and grow. We won't dwell; we'll analyze, regroup, and come back stronger. The road's bumpy, but with resilience and teamwork, we'll navigate it. To the fans, your unwavering support means the world. Stick with us; we're in this together. Next match, we'll be ready to fight. Onward and upward."}]},{"type":"paragraph","children":[{"type":"text","text":""}]},{"type":"paragraph","children":[{"type":"text","text":"Cheers,"}]},{"type":"paragraph","children":[{"type":"text","text":"Coach Beard"}]}],"slug":"west-ham-post-match-analysis","createdAt":"2024-01-17T14:05:22.598Z","updatedAt":"2025-02-27T10:32:36.710Z","publishedAt":null,"locale":"en","seo":null}}
|
||||
{"type":"api::article.article","id":3,"data":{"documentId":"hb93u89b3ik5gn2l2t65y9m2","title":"Analyse post-match contre West Ham","content":[{"type":"paragraph","children":[{"type":"text","text":"Salut,"}]},{"type":"paragraph","children":[{"type":"text","text":""}]},{"type":"paragraph","children":[{"type":"text","text":"Coach Beard ici. Une défaite difficile contre West Ham, il n'y a pas à le nier. En football, on traverse des hauts et des bas. Celle-ci fait mal, mais c'est une occasion d'apprendre et de grandir. Nous ne nous attarderons pas ; nous analyserons, nous regrouperons et reviendrons plus forts. La route est cahoteuse, mais avec résilience et travail d'équipe, nous la naviguerons. Aux supporters, votre soutien indéfectible signifie le monde. Restez avec nous ; nous sommes tous ensemble dans cette épreuve. Au prochain match, nous serons prêts à combattre. En avant et vers le haut."}]},{"type":"paragraph","children":[{"type":"text","text":""}]},{"type":"paragraph","children":[{"type":"text","text":"Cheers,"}]},{"type":"paragraph","children":[{"type":"text","text":"Coach Beard"}]}],"slug":null,"createdAt":"2024-01-31T08:58:37.027Z","updatedAt":"2024-01-31T08:58:37.027Z","publishedAt":null,"locale":"fr","seo":null}}
|
||||
{"type":"api::article.article","id":4,"data":{"documentId":"godf1ydha4qvrc8zh4mj7b5o","title":" Pourquoi je préfère le football au soccer","content":[{"type":"paragraph","children":[{"type":"text","text":"Salut tout le monde !"}]},{"type":"paragraph","children":[{"type":"text","text":""}]},{"type":"paragraph","children":[{"type":"text","text":"Parlons de pourquoi j'aime le football—certains pourraient l'appeler soccer, et c'est bien. Le football, pour moi, est plus qu'un jeu ; c'est un langage universel qui unit les gens à travers le monde. Sa simplicité est magnifique—juste un ballon, un bout de gazon, et la joie de le faire circuler. Contrairement à l'action stop-and-start du football américain, le flux continu, le rythme et le travail d'équipe du football résonnent avec mon âme."}]},{"type":"paragraph","children":[{"type":"text","text":""}]},{"type":"paragraph","children":[{"type":"text","text":"La danse sur le terrain, l'anticipation et l'effort collectif d'une équipe font du football quelque chose de spécial. L'énergie dans un stade de football est inégalée—les chants, les chansons, le rugissement de la foule—c'est électrisant. Bien que j'apprécie la compétition dans tous les sports, la camaraderie du football réchauffe mon cœur. Les joueurs des équipes adverses échangent des maillots, reconnaissant un amour partagé pour le jeu."}]},{"type":"paragraph","children":[{"type":"text","text":""}]},{"type":"paragraph","children":[{"type":"text","text":"Alors, que ce soit du football ou du soccer, concentrons-nous sur la magie, la joie et les liens que le jeu apporte. À mes yeux, il n'y a pas de sport plus grand, et je n'échangerais le monde du football pour rien d'autre."}]},{"type":"paragraph","children":[{"type":"text","text":""}]},{"type":"paragraph","children":[{"type":"text","text":"À la beauté du jeu !"}]},{"type":"paragraph","children":[{"type":"text","text":""}]},{"type":"paragraph","children":[{"type":"text","text":"Le vôtre dans le football (ou le soccer, si vous préférez),"}]},{"type":"paragraph","children":[{"type":"text","text":""}]},{"type":"paragraph","children":[{"type":"text","text":"Ted Lasso"}]}],"slug":null,"createdAt":"2024-01-31T09:01:13.326Z","updatedAt":"2024-01-31T09:01:13.326Z","publishedAt":null,"locale":"fr","seo":null}}
|
||||
{"type":"api::author.author","id":1,"data":{"documentId":"jrpc2ynqxabgg7o4boi85tc5","name":"Ted Lasso","createdAt":"2024-01-17T14:03:47.078Z","updatedAt":"2024-01-17T14:03:47.930Z","publishedAt":null,"locale":null}}
|
||||
{"type":"api::author.author","id":2,"data":{"documentId":"k3g1cnivj4jfb5o0sba2i44l","name":"Coach Beard","createdAt":"2024-01-17T14:04:00.627Z","updatedAt":"2024-01-17T14:04:01.015Z","publishedAt":null,"locale":null}}
|
||||
{"type":"api::author.author","id":3,"data":{"documentId":"bubei9f0c7fdbaca1fg8wi84","name":"Led Tasso","createdAt":"2024-01-17T14:04:27.039Z","updatedAt":"2024-01-17T14:04:27.039Z","publishedAt":null,"locale":null}}
|
||||
{"type":"api::product.product","id":1,"data":{"documentId":"knwsu5bwoadztukt2e713e0t","name":"Nike Mens 23/24 Away Stadium Jersey","slug":"product","isAvailable":true,"description":[{"type":"paragraph","children":[{"type":"text","text":"Digitized green graphics add a modern look to a 90s classic with the AFC Richmond Nike Mens 23/24 Away Match Jersey."}]},{"type":"paragraph","children":[{"type":"text","text":"Our stadium range is inspired by what the players wear on the pitch."}]},{"type":"paragraph","children":[{"type":"text","text":"Taking inspiration from AFC Richmond's iconic 95/96 Away Shirt, an all time fan favourite, Nikes innovative design breathes new life into the latest version for the memories in store for the 23/24 season."}]},{"type":"paragraph","children":[{"type":"text","text":"Our Stadium collection pairs design details with sweat-wicking technology to give you a match-day look inspired by the AFC Richmond Away Jersey. Nike Dri-FIT technology moves sweat away from your skin for quicker evaporation, helping you stay dry and comfortable."}]},{"type":"paragraph","children":[{"type":"text","text":"Product Details:","bold":true}]},{"type":"list","format":"unordered","children":[{"type":"list-item","children":[{"type":"text","text":"White shirt with digitized Green graphic details complete with Liverpool FC insignia and official match sponsors."}]},{"type":"list-item","children":[{"type":"text","text":"White accents to collar and sleeves."}]},{"type":"list-item","children":[{"type":"text","text":"100% polyester."}]},{"type":"list-item","children":[{"type":"text","text":"Machine wash."}]}]}],"sku":12345,"type":null,"createdAt":"2024-02-20T10:21:25.376Z","updatedAt":"2024-02-20T10:26:05.110Z","publishedAt":null,"locale":"en","seo":{"id":1,"title":"Nike Mens 23/24 Away Stadium Jersey","description":"Digitized green graphics add a modern look to a 90s classic with the AFC Richmond Nike Mens 23/24 Away Match Jersey.","indexable":false},"variations":[{"id":1,"name":"Small","description":null,"price":60,"sku":12345001},{"id":2,"name":"Medium","description":null,"price":60,"sku":12345002},{"id":3,"name":"Large","description":null,"price":60,"sku":12345003}]}}
|
||||
{"type":"api::product.product","id":2,"data":{"documentId":"z46e6cvmleooi4t4z01stwhr","name":"Nike Zoom Kd Iv Gold C800","slug":"product-1","isAvailable":true,"description":null,"sku":null,"type":null,"createdAt":"2025-06-16T08:42:58.719Z","updatedAt":"2025-06-16T08:42:58.719Z","publishedAt":null,"locale":"en","seo":null,"variations":[]}}
|
||||
{"type":"api::product.product","id":3,"data":{"documentId":"juhc4d9v0p7c0s0t2x26ttq4","name":"T-shirt","slug":"product-2","isAvailable":false,"description":null,"sku":null,"type":null,"createdAt":"2025-06-30T09:23:39.393Z","updatedAt":"2025-06-30T09:23:39.393Z","publishedAt":null,"locale":"en","seo":null,"variations":[]}}
|
||||
{"type":"api::shop.shop","id":1,"data":{"documentId":"tmr77kx65hf5c3jzctk2sigw","title":"UK Shop","createdAt":"2024-02-20T10:41:32.242Z","updatedAt":"2025-06-16T08:42:58.875Z","publishedAt":null,"locale":"en","content":[{"__component":"page-blocks.product-carousel","id":1,"title":"23/24 kits"},{"__component":"page-blocks.content-and-image","id":1,"content":[{"type":"paragraph","children":[{"type":"text","text":"Introducing AFC Richmond's latest footballs: precision-crafted for performance. Designed with durability and aerodynamics in mind, these footballs ensure consistent flight and optimal grip. Whether you're a seasoned pro or just starting, our range offers options for every player. With eye-catching designs and vibrant colors, stand out on the pitch while dominating the game. Elevate your play with AFC Richmond's new footballs – the perfect blend of style and performance."}]}],"content_is_left":true},{"__component":"page-blocks.product-carousel","id":2,"title":null}],"seo":{"id":2,"title":"Shop - UK","description":null,"indexable":true}}}
|
||||
{"type":"api::upcoming-match.upcoming-match","id":1,"data":{"documentId":"q7kamuurd3urqj6y1ps0rki0","title":"Upcoming Matches","number_of_upcoming_matches":12,"next_match":null,"createdAt":"2024-01-17T14:05:31.447Z","updatedAt":"2024-01-17T14:05:32.276Z","publishedAt":null,"locale":null}}
|
||||
{"type":"admin::permission","id":273,"data":{"documentId":"rmn3bzg204s7sv1m962obuu5","action":"plugin::content-manager.explorer.create","actionParameters":{},"subject":"api::article.article","properties":{"fields":["title","content","authors"]},"conditions":[],"createdAt":"2024-01-17T13:47:38.860Z","updatedAt":"2024-02-18T14:50:40.649Z","publishedAt":"2024-02-13T09:05:05.498Z","locale":null}}
|
||||
{"type":"admin::permission","id":274,"data":{"documentId":"vg00r48gjzk3jir15506kvtz","action":"plugin::content-manager.explorer.create","actionParameters":{},"subject":"api::author.author","properties":{"fields":["name","profile","articles"]},"conditions":[],"createdAt":"2024-01-17T13:47:38.862Z","updatedAt":"2024-01-17T13:47:38.862Z","publishedAt":"2024-02-13T09:05:05.499Z","locale":null}}
|
||||
{"type":"admin::permission","id":275,"data":{"documentId":"qt1u9qxlzywwi55yzdseoefa","action":"plugin::content-manager.explorer.create","actionParameters":{},"subject":"api::homepage.homepage","properties":{"fields":["title","content","admin_user"]},"conditions":[],"createdAt":"2024-01-17T13:47:38.865Z","updatedAt":"2024-01-17T13:47:38.865Z","publishedAt":"2024-02-13T09:05:05.501Z","locale":null}}
|
||||
{"type":"admin::permission","id":276,"data":{"documentId":"esv0tfg10qi6k6txmkgfbowh","action":"plugin::content-manager.explorer.read","actionParameters":{},"subject":"api::article.article","properties":{"fields":["title","content","authors"]},"conditions":[],"createdAt":"2024-01-17T13:47:38.867Z","updatedAt":"2024-02-18T14:50:40.649Z","publishedAt":"2024-02-13T09:05:05.501Z","locale":null}}
|
||||
{"type":"admin::permission","id":277,"data":{"documentId":"qdy7vi2cg3w017kth0xcqltl","action":"plugin::content-manager.explorer.read","actionParameters":{},"subject":"api::author.author","properties":{"fields":["name","profile","articles"]},"conditions":[],"createdAt":"2024-01-17T13:47:38.868Z","updatedAt":"2024-01-17T13:47:38.868Z","publishedAt":"2024-02-13T09:05:05.502Z","locale":null}}
|
||||
{"type":"admin::permission","id":278,"data":{"documentId":"m0ch04a8me9tiy5y4ljb1yjm","action":"plugin::content-manager.explorer.read","actionParameters":{},"subject":"api::homepage.homepage","properties":{"fields":["title","content","admin_user"]},"conditions":[],"createdAt":"2024-01-17T13:47:38.871Z","updatedAt":"2024-01-17T13:47:38.871Z","publishedAt":"2024-02-13T09:05:05.502Z","locale":null}}
|
||||
{"type":"admin::permission","id":279,"data":{"documentId":"vgnruo940tx0o059qx19aj27","action":"plugin::content-manager.explorer.update","actionParameters":{},"subject":"api::article.article","properties":{"fields":["title","content","authors"]},"conditions":[],"createdAt":"2024-01-17T13:47:38.872Z","updatedAt":"2024-02-18T14:50:40.649Z","publishedAt":"2024-02-13T09:05:05.502Z","locale":null}}
|
||||
{"type":"admin::permission","id":280,"data":{"documentId":"e33m9z23a1lxiupd6wv096qo","action":"plugin::content-manager.explorer.update","actionParameters":{},"subject":"api::author.author","properties":{"fields":["name","profile","articles"]},"conditions":[],"createdAt":"2024-01-17T13:47:38.873Z","updatedAt":"2024-01-17T13:47:38.873Z","publishedAt":"2024-02-13T09:05:05.503Z","locale":null}}
|
||||
{"type":"admin::permission","id":281,"data":{"documentId":"onae031hq0iszsejvt9k8ey1","action":"plugin::content-manager.explorer.update","actionParameters":{},"subject":"api::homepage.homepage","properties":{"fields":["title","content","admin_user"]},"conditions":[],"createdAt":"2024-01-17T13:47:38.876Z","updatedAt":"2024-01-17T13:47:38.876Z","publishedAt":"2024-02-13T09:05:05.503Z","locale":null}}
|
||||
{"type":"admin::permission","id":282,"data":{"documentId":"hzpkfkzvwfb1q8tza61aw4vv","action":"plugin::content-manager.explorer.delete","actionParameters":{},"subject":"api::author.author","properties":{},"conditions":[],"createdAt":"2024-01-17T13:47:38.879Z","updatedAt":"2024-01-17T13:47:38.879Z","publishedAt":"2024-02-13T09:05:05.503Z","locale":null}}
|
||||
{"type":"admin::permission","id":283,"data":{"documentId":"rujjg9sk09f6czuvhyyy2pzb","action":"plugin::upload.read","actionParameters":{},"subject":null,"properties":{},"conditions":[],"createdAt":"2024-01-17T13:47:38.888Z","updatedAt":"2024-01-17T13:47:38.888Z","publishedAt":"2024-02-13T09:05:05.504Z","locale":null}}
|
||||
{"type":"admin::permission","id":284,"data":{"documentId":"r18gkm271gmztjherv160307","action":"plugin::upload.configure-view","actionParameters":{},"subject":null,"properties":{},"conditions":[],"createdAt":"2024-01-17T13:47:38.889Z","updatedAt":"2024-01-17T13:47:38.889Z","publishedAt":"2024-02-13T09:05:05.504Z","locale":null}}
|
||||
{"type":"admin::permission","id":285,"data":{"documentId":"xw41h02zexwvm79wj6roon6h","action":"plugin::upload.assets.create","actionParameters":{},"subject":null,"properties":{},"conditions":[],"createdAt":"2024-01-17T13:47:38.890Z","updatedAt":"2024-01-17T13:47:38.890Z","publishedAt":"2024-02-13T09:05:05.504Z","locale":null}}
|
||||
{"type":"admin::permission","id":286,"data":{"documentId":"br9gyhz0whuso3t0r17oi52j","action":"plugin::upload.assets.update","actionParameters":{},"subject":null,"properties":{},"conditions":[],"createdAt":"2024-01-17T13:47:38.892Z","updatedAt":"2024-01-17T13:47:38.892Z","publishedAt":"2024-02-13T09:05:05.505Z","locale":null}}
|
||||
{"type":"admin::permission","id":287,"data":{"documentId":"xp8wqun6pol0p414oglr83wy","action":"plugin::upload.assets.download","actionParameters":{},"subject":null,"properties":{},"conditions":[],"createdAt":"2024-01-17T13:47:38.893Z","updatedAt":"2024-01-17T13:47:38.893Z","publishedAt":"2024-02-13T09:05:05.505Z","locale":null}}
|
||||
{"type":"admin::permission","id":288,"data":{"documentId":"ruefeboeyn459u4u7vu82u2a","action":"plugin::upload.assets.copy-link","actionParameters":{},"subject":null,"properties":{},"conditions":[],"createdAt":"2024-01-17T13:47:38.895Z","updatedAt":"2024-01-17T13:47:38.895Z","publishedAt":"2024-02-13T09:05:05.505Z","locale":null}}
|
||||
{"type":"admin::permission","id":289,"data":{"documentId":"jzlniw8g28jc3ju4ngf2205x","action":"plugin::upload.read","actionParameters":{},"subject":null,"properties":{},"conditions":["admin::is-creator"],"createdAt":"2024-01-17T13:47:38.923Z","updatedAt":"2024-01-17T13:47:38.923Z","publishedAt":"2024-02-13T09:05:05.509Z","locale":null}}
|
||||
{"type":"admin::permission","id":290,"data":{"documentId":"lq1h1k1n63cq1npz0vav6d9b","action":"plugin::upload.configure-view","actionParameters":{},"subject":null,"properties":{},"conditions":[],"createdAt":"2024-01-17T13:47:38.925Z","updatedAt":"2024-01-17T13:47:38.925Z","publishedAt":"2024-02-13T09:05:05.509Z","locale":null}}
|
||||
{"type":"admin::permission","id":291,"data":{"documentId":"yhzjhskyo61a2lq3s18ici5e","action":"plugin::upload.assets.create","actionParameters":{},"subject":null,"properties":{},"conditions":[],"createdAt":"2024-01-17T13:47:38.926Z","updatedAt":"2024-01-17T13:47:38.926Z","publishedAt":"2024-02-13T09:05:05.509Z","locale":null}}
|
||||
{"type":"admin::permission","id":292,"data":{"documentId":"vzj5sniwsxovgh22t86skbiy","action":"plugin::upload.assets.update","actionParameters":{},"subject":null,"properties":{},"conditions":["admin::is-creator"],"createdAt":"2024-01-17T13:47:38.927Z","updatedAt":"2024-01-17T13:47:38.927Z","publishedAt":"2024-02-13T09:05:05.509Z","locale":null}}
|
||||
{"type":"admin::permission","id":293,"data":{"documentId":"iqxekdn9c07uakq7l0ain5l5","action":"plugin::upload.assets.download","actionParameters":{},"subject":null,"properties":{},"conditions":[],"createdAt":"2024-01-17T13:47:38.929Z","updatedAt":"2024-01-17T13:47:38.929Z","publishedAt":"2024-02-13T09:05:05.510Z","locale":null}}
|
||||
{"type":"admin::permission","id":294,"data":{"documentId":"qqpp9xf07kzmpjib21co9f62","action":"plugin::upload.assets.copy-link","actionParameters":{},"subject":null,"properties":{},"conditions":[],"createdAt":"2024-01-17T13:47:38.930Z","updatedAt":"2024-01-17T13:47:38.930Z","publishedAt":"2024-02-13T09:05:05.510Z","locale":null}}
|
||||
{"type":"admin::permission","id":295,"data":{"documentId":"lmx4svkk3biimslwdal0jmd9","action":"plugin::content-manager.explorer.create","actionParameters":{},"subject":"plugin::users-permissions.user","properties":{"fields":["username","email","provider","password","resetPasswordToken","confirmationToken","confirmed","blocked","role"]},"conditions":[],"createdAt":"2024-01-17T13:47:38.937Z","updatedAt":"2024-01-17T13:47:38.937Z","publishedAt":"2024-02-13T09:05:05.510Z","locale":null}}
|
||||
{"type":"admin::permission","id":296,"data":{"documentId":"gc0sg8r1dgt3bit1le3ie89b","action":"plugin::content-manager.explorer.create","actionParameters":{},"subject":"api::author.author","properties":{"fields":["name","profile","articles"]},"conditions":[],"createdAt":"2024-01-17T13:47:38.939Z","updatedAt":"2024-01-17T13:47:38.939Z","publishedAt":"2024-02-13T09:05:05.510Z","locale":null}}
|
||||
{"type":"admin::permission","id":297,"data":{"documentId":"fwra1eb89j6y7w3qn5tiu7dw","action":"plugin::content-manager.explorer.read","actionParameters":{},"subject":"plugin::users-permissions.user","properties":{"fields":["username","email","provider","password","resetPasswordToken","confirmationToken","confirmed","blocked","role"]},"conditions":[],"createdAt":"2024-01-17T13:47:38.943Z","updatedAt":"2024-01-17T13:47:38.943Z","publishedAt":"2024-02-13T09:05:05.511Z","locale":null}}
|
||||
{"type":"admin::permission","id":298,"data":{"documentId":"q0z35our7uw5ctm8jg0cjaai","action":"plugin::content-manager.explorer.read","actionParameters":{},"subject":"api::author.author","properties":{"fields":["name","profile","articles"]},"conditions":[],"createdAt":"2024-01-17T13:47:38.945Z","updatedAt":"2024-01-17T13:47:38.945Z","publishedAt":"2024-02-13T09:05:05.511Z","locale":null}}
|
||||
{"type":"admin::permission","id":299,"data":{"documentId":"qlo3ronik67qr38x0tl645e2","action":"plugin::content-manager.explorer.update","actionParameters":{},"subject":"plugin::users-permissions.user","properties":{"fields":["username","email","provider","password","resetPasswordToken","confirmationToken","confirmed","blocked","role"]},"conditions":[],"createdAt":"2024-01-17T13:47:38.949Z","updatedAt":"2024-01-17T13:47:38.949Z","publishedAt":"2024-02-13T09:05:05.512Z","locale":null}}
|
||||
{"type":"admin::permission","id":300,"data":{"documentId":"jnsp4pvuckcba84l07nqaxc9","action":"plugin::content-manager.explorer.update","actionParameters":{},"subject":"api::author.author","properties":{"fields":["name","profile","articles"]},"conditions":[],"createdAt":"2024-01-17T13:47:38.951Z","updatedAt":"2024-01-17T13:47:38.951Z","publishedAt":"2024-02-13T09:05:05.512Z","locale":null}}
|
||||
{"type":"admin::permission","id":301,"data":{"documentId":"y88vdcenlj99dti5jjabviwc","action":"plugin::content-manager.explorer.delete","actionParameters":{},"subject":"plugin::users-permissions.user","properties":{},"conditions":[],"createdAt":"2024-01-17T13:47:38.954Z","updatedAt":"2024-01-17T13:47:38.954Z","publishedAt":"2024-02-13T09:05:05.513Z","locale":null}}
|
||||
{"type":"admin::permission","id":302,"data":{"documentId":"grj4ti7f93erj2kl2q9a31ow","action":"plugin::content-manager.explorer.delete","actionParameters":{},"subject":"api::author.author","properties":{},"conditions":[],"createdAt":"2024-01-17T13:47:38.956Z","updatedAt":"2024-01-17T13:47:38.956Z","publishedAt":"2024-02-13T09:05:05.513Z","locale":null}}
|
||||
{"type":"admin::permission","id":303,"data":{"documentId":"spqnbanhduguee27a27v2h5c","action":"plugin::content-manager.single-types.configure-view","actionParameters":{},"subject":null,"properties":{},"conditions":[],"createdAt":"2024-01-17T13:47:38.967Z","updatedAt":"2024-01-17T13:47:38.967Z","publishedAt":"2024-02-13T09:05:05.514Z","locale":null}}
|
||||
{"type":"admin::permission","id":304,"data":{"documentId":"x8bx7ibqzvadl6l7lpeijhix","action":"plugin::content-manager.collection-types.configure-view","actionParameters":{},"subject":null,"properties":{},"conditions":[],"createdAt":"2024-01-17T13:47:38.968Z","updatedAt":"2024-01-17T13:47:38.968Z","publishedAt":"2024-02-13T09:05:05.515Z","locale":null}}
|
||||
{"type":"admin::permission","id":305,"data":{"documentId":"loxa9ojn4s1zc5py4ctq2n9k","action":"plugin::content-manager.components.configure-layout","actionParameters":{},"subject":null,"properties":{},"conditions":[],"createdAt":"2024-01-17T13:47:38.969Z","updatedAt":"2024-01-17T13:47:38.969Z","publishedAt":"2024-02-13T09:05:05.515Z","locale":null}}
|
||||
{"type":"admin::permission","id":306,"data":{"documentId":"zvppx91q06fujl3hyn7698ir","action":"plugin::content-type-builder.read","actionParameters":{},"subject":null,"properties":{},"conditions":[],"createdAt":"2024-01-17T13:47:38.970Z","updatedAt":"2024-01-17T13:47:38.970Z","publishedAt":"2024-02-13T09:05:05.515Z","locale":null}}
|
||||
{"type":"admin::permission","id":307,"data":{"documentId":"kvvb788jefck7chdv88x6wrc","action":"plugin::email.settings.read","actionParameters":{},"subject":null,"properties":{},"conditions":[],"createdAt":"2024-01-17T13:47:38.971Z","updatedAt":"2024-01-17T13:47:38.971Z","publishedAt":"2024-02-13T09:05:05.515Z","locale":null}}
|
||||
{"type":"admin::permission","id":308,"data":{"documentId":"dfti7f0s728589jglxhpqwn3","action":"plugin::upload.read","actionParameters":{},"subject":null,"properties":{},"conditions":[],"createdAt":"2024-01-17T13:47:38.972Z","updatedAt":"2024-01-17T13:47:38.972Z","publishedAt":"2024-02-13T09:05:05.515Z","locale":null}}
|
||||
{"type":"admin::permission","id":309,"data":{"documentId":"x4pdvcoc3245gdupzh148c3a","action":"plugin::upload.assets.create","actionParameters":{},"subject":null,"properties":{},"conditions":[],"createdAt":"2024-01-17T13:47:38.973Z","updatedAt":"2024-01-17T13:47:38.973Z","publishedAt":"2024-02-13T09:05:05.516Z","locale":null}}
|
||||
{"type":"admin::permission","id":310,"data":{"documentId":"dgay3dx1l9hjpy9mxndmk6su","action":"plugin::upload.assets.update","actionParameters":{},"subject":null,"properties":{},"conditions":[],"createdAt":"2024-01-17T13:47:38.974Z","updatedAt":"2024-01-17T13:47:38.974Z","publishedAt":"2024-02-13T09:05:05.516Z","locale":null}}
|
||||
{"type":"admin::permission","id":311,"data":{"documentId":"yd7vxmm1rmn7vf8hyd0vwyxn","action":"plugin::upload.assets.download","actionParameters":{},"subject":null,"properties":{},"conditions":[],"createdAt":"2024-01-17T13:47:38.977Z","updatedAt":"2024-01-17T13:47:38.977Z","publishedAt":"2024-02-13T09:05:05.516Z","locale":null}}
|
||||
{"type":"admin::permission","id":312,"data":{"documentId":"euyblipciff48rueww4ojogq","action":"plugin::upload.assets.copy-link","actionParameters":{},"subject":null,"properties":{},"conditions":[],"createdAt":"2024-01-17T13:47:38.978Z","updatedAt":"2024-01-17T13:47:38.978Z","publishedAt":"2024-02-13T09:05:05.516Z","locale":null}}
|
||||
{"type":"admin::permission","id":313,"data":{"documentId":"zkz2nxxlv7e2t8ie5ipokxoe","action":"plugin::upload.configure-view","actionParameters":{},"subject":null,"properties":{},"conditions":[],"createdAt":"2024-01-17T13:47:38.979Z","updatedAt":"2024-01-17T13:47:38.979Z","publishedAt":"2024-02-13T09:05:05.516Z","locale":null}}
|
||||
{"type":"admin::permission","id":314,"data":{"documentId":"qtiedildfaaljap8b79k2ac4","action":"plugin::upload.settings.read","actionParameters":{},"subject":null,"properties":{},"conditions":[],"createdAt":"2024-01-17T13:47:38.981Z","updatedAt":"2024-01-17T13:47:38.981Z","publishedAt":"2024-02-13T09:05:05.517Z","locale":null}}
|
||||
{"type":"admin::permission","id":315,"data":{"documentId":"qj4bycstmo3v2rhxx13n1e40","action":"plugin::users-permissions.roles.create","actionParameters":{},"subject":null,"properties":{},"conditions":[],"createdAt":"2024-01-17T13:47:38.983Z","updatedAt":"2024-01-17T13:47:38.983Z","publishedAt":"2024-02-13T09:05:05.517Z","locale":null}}
|
||||
{"type":"admin::permission","id":316,"data":{"documentId":"f7v88fave6umn0kt35uk89fo","action":"plugin::users-permissions.roles.read","actionParameters":{},"subject":null,"properties":{},"conditions":[],"createdAt":"2024-01-17T13:47:38.984Z","updatedAt":"2024-01-17T13:47:38.984Z","publishedAt":"2024-02-13T09:05:05.517Z","locale":null}}
|
||||
{"type":"admin::permission","id":317,"data":{"documentId":"x81c64noxophyj1p38xbltol","action":"plugin::users-permissions.roles.update","actionParameters":{},"subject":null,"properties":{},"conditions":[],"createdAt":"2024-01-17T13:47:38.985Z","updatedAt":"2024-01-17T13:47:38.985Z","publishedAt":"2024-02-13T09:05:05.517Z","locale":null}}
|
||||
{"type":"admin::permission","id":318,"data":{"documentId":"op9hgswpta4725bh9c1s2u5s","action":"plugin::users-permissions.roles.delete","actionParameters":{},"subject":null,"properties":{},"conditions":[],"createdAt":"2024-01-17T13:47:38.987Z","updatedAt":"2024-01-17T13:47:38.987Z","publishedAt":"2024-02-13T09:05:05.517Z","locale":null}}
|
||||
{"type":"admin::permission","id":319,"data":{"documentId":"tqw2r6qqr0pv72pv05haqmiv","action":"plugin::users-permissions.providers.read","actionParameters":{},"subject":null,"properties":{},"conditions":[],"createdAt":"2024-01-17T13:47:38.988Z","updatedAt":"2024-01-17T13:47:38.988Z","publishedAt":"2024-02-13T09:05:05.517Z","locale":null}}
|
||||
{"type":"admin::permission","id":320,"data":{"documentId":"jt1a8rtm8ek9ngvwr2zzqeqg","action":"plugin::users-permissions.providers.update","actionParameters":{},"subject":null,"properties":{},"conditions":[],"createdAt":"2024-01-17T13:47:38.989Z","updatedAt":"2024-01-17T13:47:38.989Z","publishedAt":"2024-02-13T09:05:05.518Z","locale":null}}
|
||||
{"type":"admin::permission","id":321,"data":{"documentId":"e887ixykxi9cz30r7ktjeov1","action":"plugin::users-permissions.email-templates.read","actionParameters":{},"subject":null,"properties":{},"conditions":[],"createdAt":"2024-01-17T13:47:38.990Z","updatedAt":"2024-01-17T13:47:38.990Z","publishedAt":"2024-02-13T09:05:05.518Z","locale":null}}
|
||||
{"type":"admin::permission","id":322,"data":{"documentId":"kjopo97a2uaihcscrb7v05ww","action":"plugin::users-permissions.email-templates.update","actionParameters":{},"subject":null,"properties":{},"conditions":[],"createdAt":"2024-01-17T13:47:38.991Z","updatedAt":"2024-01-17T13:47:38.991Z","publishedAt":"2024-02-13T09:05:05.518Z","locale":null}}
|
||||
{"type":"admin::permission","id":323,"data":{"documentId":"v9dc4fp7yvhhuwl7kiubge95","action":"plugin::users-permissions.advanced-settings.read","actionParameters":{},"subject":null,"properties":{},"conditions":[],"createdAt":"2024-01-17T13:47:38.993Z","updatedAt":"2024-01-17T13:47:38.993Z","publishedAt":"2024-02-13T09:05:05.518Z","locale":null}}
|
||||
{"type":"admin::permission","id":324,"data":{"documentId":"ko36enf1j0gbrktijqu0p8iy","action":"plugin::users-permissions.advanced-settings.update","actionParameters":{},"subject":null,"properties":{},"conditions":[],"createdAt":"2024-01-17T13:47:38.995Z","updatedAt":"2024-01-17T13:47:38.995Z","publishedAt":"2024-02-13T09:05:05.518Z","locale":null}}
|
||||
{"type":"admin::permission","id":325,"data":{"documentId":"da6ajzi50m88ii9uy2z0h8op","action":"plugin::documentation.read","actionParameters":{},"subject":null,"properties":{},"conditions":[],"createdAt":"2024-01-17T13:47:38.996Z","updatedAt":"2024-01-17T13:47:38.996Z","publishedAt":"2024-02-13T09:05:05.519Z","locale":null}}
|
||||
{"type":"admin::permission","id":326,"data":{"documentId":"xpbnefp3mgslofv13dmz408g","action":"plugin::documentation.settings.update","actionParameters":{},"subject":null,"properties":{},"conditions":[],"createdAt":"2024-01-17T13:47:38.997Z","updatedAt":"2024-01-17T13:47:38.997Z","publishedAt":"2024-02-13T09:05:05.519Z","locale":null}}
|
||||
{"type":"admin::permission","id":327,"data":{"documentId":"u77qymfvei6aog5kvpdyjoib","action":"plugin::documentation.settings.regenerate","actionParameters":{},"subject":null,"properties":{},"conditions":[],"createdAt":"2024-01-17T13:47:38.998Z","updatedAt":"2024-01-17T13:47:38.998Z","publishedAt":"2024-02-13T09:05:05.519Z","locale":null}}
|
||||
{"type":"admin::permission","id":328,"data":{"documentId":"szvsdiyflx4v1lrvbjytbwu5","action":"plugin::documentation.settings.read","actionParameters":{},"subject":null,"properties":{},"conditions":[],"createdAt":"2024-01-17T13:47:38.999Z","updatedAt":"2024-01-17T13:47:38.999Z","publishedAt":"2024-02-13T09:05:05.519Z","locale":null}}
|
||||
{"type":"admin::permission","id":329,"data":{"documentId":"htvcq0sn3146564twcpprajb","action":"plugin::i18n.locale.create","actionParameters":{},"subject":null,"properties":{},"conditions":[],"createdAt":"2024-01-17T13:47:39.001Z","updatedAt":"2024-01-17T13:47:39.001Z","publishedAt":"2024-02-13T09:05:05.519Z","locale":null}}
|
||||
{"type":"admin::permission","id":330,"data":{"documentId":"w8l1pnlfqhhklr4lcaz93fl5","action":"plugin::i18n.locale.read","actionParameters":{},"subject":null,"properties":{},"conditions":[],"createdAt":"2024-01-17T13:47:39.002Z","updatedAt":"2024-01-17T13:47:39.002Z","publishedAt":"2024-02-13T09:05:05.520Z","locale":null}}
|
||||
{"type":"admin::permission","id":331,"data":{"documentId":"h03hpb0czecsuucok6fm41wn","action":"plugin::i18n.locale.update","actionParameters":{},"subject":null,"properties":{},"conditions":[],"createdAt":"2024-01-17T13:47:39.003Z","updatedAt":"2024-01-17T13:47:39.003Z","publishedAt":"2024-02-13T09:05:05.520Z","locale":null}}
|
||||
{"type":"admin::permission","id":332,"data":{"documentId":"q42b9gr3wc8ign9mrnrczec0","action":"plugin::i18n.locale.delete","actionParameters":{},"subject":null,"properties":{},"conditions":[],"createdAt":"2024-01-17T13:47:39.004Z","updatedAt":"2024-01-17T13:47:39.004Z","publishedAt":"2024-02-13T09:05:05.520Z","locale":null}}
|
||||
{"type":"admin::permission","id":333,"data":{"documentId":"woed6dq4czg89wabjj04rtba","action":"admin::marketplace.read","actionParameters":{},"subject":null,"properties":{},"conditions":[],"createdAt":"2024-01-17T13:47:39.005Z","updatedAt":"2024-01-17T13:47:39.005Z","publishedAt":"2024-02-13T09:05:05.520Z","locale":null}}
|
||||
{"type":"admin::permission","id":334,"data":{"documentId":"wcsjzezu7tasubre15hgc4iz","action":"admin::webhooks.create","actionParameters":{},"subject":null,"properties":{},"conditions":[],"createdAt":"2024-01-17T13:47:39.006Z","updatedAt":"2024-01-17T13:47:39.006Z","publishedAt":"2024-02-13T09:05:05.520Z","locale":null}}
|
||||
{"type":"admin::permission","id":335,"data":{"documentId":"pj9zdyijp9pgwh5u9kf482ik","action":"admin::webhooks.read","actionParameters":{},"subject":null,"properties":{},"conditions":[],"createdAt":"2024-01-17T13:47:39.007Z","updatedAt":"2024-01-17T13:47:39.007Z","publishedAt":"2024-02-13T09:05:05.521Z","locale":null}}
|
||||
{"type":"admin::permission","id":336,"data":{"documentId":"txaafbazkni5phwjw7lkb6fb","action":"admin::webhooks.update","actionParameters":{},"subject":null,"properties":{},"conditions":[],"createdAt":"2024-01-17T13:47:39.009Z","updatedAt":"2024-01-17T13:47:39.009Z","publishedAt":"2024-02-13T09:05:05.521Z","locale":null}}
|
||||
{"type":"admin::permission","id":337,"data":{"documentId":"yqyh7mfewqywulhehzl8qbnu","action":"admin::webhooks.delete","actionParameters":{},"subject":null,"properties":{},"conditions":[],"createdAt":"2024-01-17T13:47:39.010Z","updatedAt":"2024-01-17T13:47:39.010Z","publishedAt":"2024-02-13T09:05:05.521Z","locale":null}}
|
||||
{"type":"admin::permission","id":338,"data":{"documentId":"jay2pbm1k1wvcvloacedyd5u","action":"admin::users.create","actionParameters":{},"subject":null,"properties":{},"conditions":[],"createdAt":"2024-01-17T13:47:39.011Z","updatedAt":"2024-01-17T13:47:39.011Z","publishedAt":"2024-02-13T09:05:05.521Z","locale":null}}
|
||||
{"type":"admin::permission","id":339,"data":{"documentId":"kq9993yu85gkfl01gfnzjf7t","action":"admin::users.read","actionParameters":{},"subject":null,"properties":{},"conditions":[],"createdAt":"2024-01-17T13:47:39.013Z","updatedAt":"2024-01-17T13:47:39.013Z","publishedAt":"2024-02-13T09:05:05.521Z","locale":null}}
|
||||
{"type":"admin::permission","id":340,"data":{"documentId":"oqk71ld57wfxte1nnc8akcv7","action":"admin::users.update","actionParameters":{},"subject":null,"properties":{},"conditions":[],"createdAt":"2024-01-17T13:47:39.014Z","updatedAt":"2024-01-17T13:47:39.014Z","publishedAt":"2024-02-13T09:05:05.521Z","locale":null}}
|
||||
{"type":"admin::permission","id":341,"data":{"documentId":"e1gmddydzf91e83rbygpaii6","action":"admin::users.delete","actionParameters":{},"subject":null,"properties":{},"conditions":[],"createdAt":"2024-01-17T13:47:39.015Z","updatedAt":"2024-01-17T13:47:39.015Z","publishedAt":"2024-02-13T09:05:05.522Z","locale":null}}
|
||||
{"type":"admin::permission","id":342,"data":{"documentId":"u3pepz9avruhuxd95wlxks7j","action":"admin::roles.create","actionParameters":{},"subject":null,"properties":{},"conditions":[],"createdAt":"2024-01-17T13:47:39.016Z","updatedAt":"2024-01-17T13:47:39.016Z","publishedAt":"2024-02-13T09:05:05.522Z","locale":null}}
|
||||
{"type":"admin::permission","id":343,"data":{"documentId":"bnci2ye91j47u5ugdym70jv2","action":"admin::roles.read","actionParameters":{},"subject":null,"properties":{},"conditions":[],"createdAt":"2024-01-17T13:47:39.017Z","updatedAt":"2024-01-17T13:47:39.017Z","publishedAt":"2024-02-13T09:05:05.522Z","locale":null}}
|
||||
{"type":"admin::permission","id":344,"data":{"documentId":"c0yhz46i1d3izoa22v9rmtk1","action":"admin::roles.update","actionParameters":{},"subject":null,"properties":{},"conditions":[],"createdAt":"2024-01-17T13:47:39.019Z","updatedAt":"2024-01-17T13:47:39.019Z","publishedAt":"2024-02-13T09:05:05.522Z","locale":null}}
|
||||
{"type":"admin::permission","id":345,"data":{"documentId":"m6g311gytdntsqwedr0ers9t","action":"admin::roles.delete","actionParameters":{},"subject":null,"properties":{},"conditions":[],"createdAt":"2024-01-17T13:47:39.020Z","updatedAt":"2024-01-17T13:47:39.020Z","publishedAt":"2024-02-13T09:05:05.522Z","locale":null}}
|
||||
{"type":"admin::permission","id":346,"data":{"documentId":"inr8nofsr1ee2d7xikzod2wd","action":"admin::api-tokens.access","actionParameters":{},"subject":null,"properties":{},"conditions":[],"createdAt":"2024-01-17T13:47:39.021Z","updatedAt":"2024-01-17T13:47:39.021Z","publishedAt":"2024-02-13T09:05:05.523Z","locale":null}}
|
||||
{"type":"admin::permission","id":347,"data":{"documentId":"i1sahaym6oa6ktkjjy30curx","action":"admin::api-tokens.create","actionParameters":{},"subject":null,"properties":{},"conditions":[],"createdAt":"2024-01-17T13:47:39.022Z","updatedAt":"2024-01-17T13:47:39.022Z","publishedAt":"2024-02-13T09:05:05.523Z","locale":null}}
|
||||
{"type":"admin::permission","id":348,"data":{"documentId":"gyybtlg5grdfvmexlvyzwcqi","action":"admin::api-tokens.read","actionParameters":{},"subject":null,"properties":{},"conditions":[],"createdAt":"2024-01-17T13:47:39.023Z","updatedAt":"2024-01-17T13:47:39.023Z","publishedAt":"2024-02-13T09:05:05.523Z","locale":null}}
|
||||
{"type":"admin::permission","id":349,"data":{"documentId":"noip5k1xr3dye7bav0qwep2i","action":"admin::api-tokens.update","actionParameters":{},"subject":null,"properties":{},"conditions":[],"createdAt":"2024-01-17T13:47:39.024Z","updatedAt":"2024-01-17T13:47:39.024Z","publishedAt":"2024-02-13T09:05:05.523Z","locale":null}}
|
||||
{"type":"admin::permission","id":350,"data":{"documentId":"bxb7rp26l83guhjqxg5bn1tt","action":"admin::api-tokens.regenerate","actionParameters":{},"subject":null,"properties":{},"conditions":[],"createdAt":"2024-01-17T13:47:39.025Z","updatedAt":"2024-01-17T13:47:39.025Z","publishedAt":"2024-02-13T09:05:05.523Z","locale":null}}
|
||||
{"type":"admin::permission","id":351,"data":{"documentId":"r841h5ms2bog41um43bldvjx","action":"admin::api-tokens.delete","actionParameters":{},"subject":null,"properties":{},"conditions":[],"createdAt":"2024-01-17T13:47:39.027Z","updatedAt":"2024-01-17T13:47:39.027Z","publishedAt":"2024-02-13T09:05:05.524Z","locale":null}}
|
||||
{"type":"admin::permission","id":352,"data":{"documentId":"gubp535a8v5h6bsrj0hzplc9","action":"admin::project-settings.update","actionParameters":{},"subject":null,"properties":{},"conditions":[],"createdAt":"2024-01-17T13:47:39.028Z","updatedAt":"2024-01-17T13:47:39.028Z","publishedAt":"2024-02-13T09:05:05.524Z","locale":null}}
|
||||
{"type":"admin::permission","id":353,"data":{"documentId":"kn7pcaw4o1x2qy50vjlgm2mz","action":"admin::project-settings.read","actionParameters":{},"subject":null,"properties":{},"conditions":[],"createdAt":"2024-01-17T13:47:39.029Z","updatedAt":"2024-01-17T13:47:39.029Z","publishedAt":"2024-02-13T09:05:05.524Z","locale":null}}
|
||||
{"type":"admin::permission","id":354,"data":{"documentId":"q80sm62n9k0za3z8pfrv6s2k","action":"admin::transfer.tokens.access","actionParameters":{},"subject":null,"properties":{},"conditions":[],"createdAt":"2024-01-17T13:47:39.030Z","updatedAt":"2024-01-17T13:47:39.030Z","publishedAt":"2024-02-13T09:05:05.524Z","locale":null}}
|
||||
{"type":"admin::permission","id":355,"data":{"documentId":"q8b9aiglir8noudeudjcjzaq","action":"admin::transfer.tokens.create","actionParameters":{},"subject":null,"properties":{},"conditions":[],"createdAt":"2024-01-17T13:47:39.031Z","updatedAt":"2024-01-17T13:47:39.031Z","publishedAt":"2024-02-13T09:05:05.525Z","locale":null}}
|
||||
{"type":"admin::permission","id":356,"data":{"documentId":"dpucuyv41llql0n6ququ02kt","action":"admin::transfer.tokens.read","actionParameters":{},"subject":null,"properties":{},"conditions":[],"createdAt":"2024-01-17T13:47:39.032Z","updatedAt":"2024-01-17T13:47:39.032Z","publishedAt":"2024-02-13T09:05:05.525Z","locale":null}}
|
||||
{"type":"admin::permission","id":357,"data":{"documentId":"zw1xyran5j5cpmynbmd0y3jb","action":"admin::transfer.tokens.update","actionParameters":{},"subject":null,"properties":{},"conditions":[],"createdAt":"2024-01-17T13:47:39.033Z","updatedAt":"2024-01-17T13:47:39.033Z","publishedAt":"2024-02-13T09:05:05.525Z","locale":null}}
|
||||
{"type":"admin::permission","id":358,"data":{"documentId":"h4nicra647558hb45dz4lh3i","action":"admin::transfer.tokens.regenerate","actionParameters":{},"subject":null,"properties":{},"conditions":[],"createdAt":"2024-01-17T13:47:39.034Z","updatedAt":"2024-01-17T13:47:39.034Z","publishedAt":"2024-02-13T09:05:05.525Z","locale":null}}
|
||||
{"type":"admin::permission","id":359,"data":{"documentId":"tbqmdxhlc3rapsxlq6s42dg2","action":"admin::transfer.tokens.delete","actionParameters":{},"subject":null,"properties":{},"conditions":[],"createdAt":"2024-01-17T13:47:39.035Z","updatedAt":"2024-01-17T13:47:39.035Z","publishedAt":"2024-02-13T09:05:05.526Z","locale":null}}
|
||||
{"type":"admin::permission","id":360,"data":{"documentId":"hd0073lfy354tg6ewyxbemjx","action":"plugin::content-manager.explorer.create","actionParameters":{},"subject":"api::upcoming-match.upcoming-match","properties":{"fields":["title","number_of_upcoming_matches","next_match"]},"conditions":[],"createdAt":"2024-01-17T13:53:56.117Z","updatedAt":"2024-01-17T13:53:56.117Z","publishedAt":"2024-02-13T09:05:05.526Z","locale":null}}
|
||||
{"type":"admin::permission","id":361,"data":{"documentId":"veojmd9mg2ckpezd15kc3kbz","action":"plugin::content-manager.explorer.read","actionParameters":{},"subject":"api::upcoming-match.upcoming-match","properties":{"fields":["title","number_of_upcoming_matches","next_match"]},"conditions":[],"createdAt":"2024-01-17T13:53:56.120Z","updatedAt":"2024-01-17T13:53:56.120Z","publishedAt":"2024-02-13T09:05:05.526Z","locale":null}}
|
||||
{"type":"admin::permission","id":362,"data":{"documentId":"pvz2dvf3f2dwl1eesvz3xz1g","action":"plugin::content-manager.explorer.update","actionParameters":{},"subject":"api::upcoming-match.upcoming-match","properties":{"fields":["title","number_of_upcoming_matches","next_match"]},"conditions":[],"createdAt":"2024-01-17T13:53:56.123Z","updatedAt":"2024-01-17T13:53:56.123Z","publishedAt":"2024-02-13T09:05:05.526Z","locale":null}}
|
||||
{"type":"admin::permission","id":363,"data":{"documentId":"jmrh5s9zobgpk3rnqezv6cii","action":"plugin::content-manager.explorer.delete","actionParameters":{},"subject":"api::upcoming-match.upcoming-match","properties":{},"conditions":[],"createdAt":"2024-01-17T13:53:56.124Z","updatedAt":"2024-01-17T13:53:56.124Z","publishedAt":"2024-02-13T09:05:05.526Z","locale":null}}
|
||||
{"type":"admin::permission","id":364,"data":{"documentId":"wtrukgb5j0nc1i1poxf4yotp","action":"plugin::content-manager.explorer.publish","actionParameters":{},"subject":"api::author.author","properties":{},"conditions":[],"createdAt":"2024-01-22T10:47:40.471Z","updatedAt":"2024-01-22T10:47:40.471Z","publishedAt":"2024-02-13T09:05:05.527Z","locale":null}}
|
||||
{"type":"admin::permission","id":365,"data":{"documentId":"xfpaktk4l7a9uevymbk5o6kp","action":"plugin::content-manager.explorer.publish","actionParameters":{},"subject":"api::upcoming-match.upcoming-match","properties":{},"conditions":[],"createdAt":"2024-01-22T12:31:47.819Z","updatedAt":"2024-01-22T12:31:47.819Z","publishedAt":"2024-02-13T09:05:05.527Z","locale":null}}
|
||||
{"type":"admin::permission","id":366,"data":{"documentId":"g7x67ptf1xvmgkl8gq79vlkh","action":"plugin::content-manager.explorer.publish","actionParameters":{},"subject":"plugin::users-permissions.user","properties":{},"conditions":[],"createdAt":"2024-02-13T09:45:37.614Z","updatedAt":"2024-02-13T09:45:37.614Z","publishedAt":"2024-02-13T09:45:37.615Z","locale":null}}
|
||||
{"type":"admin::permission","id":367,"data":{"documentId":"swbdsjg4hokdce690sqz9250","action":"plugin::content-manager.explorer.delete","actionParameters":{},"subject":"api::article.article","properties":{"locales":["en","fr","de","es"]},"conditions":[],"createdAt":"2024-06-04T15:47:49.389Z","updatedAt":"2024-06-04T15:47:49.389Z","publishedAt":"2024-06-04T15:47:49.390Z","locale":null}}
|
||||
{"type":"admin::permission","id":368,"data":{"documentId":"cko374o6gu1j3ykcvlq6v7lb","action":"plugin::content-manager.explorer.delete","actionParameters":{},"subject":"api::unique.unique","properties":{"locales":["en","fr","de","es"]},"conditions":[],"createdAt":"2024-06-04T15:47:49.390Z","updatedAt":"2024-06-04T15:47:49.390Z","publishedAt":"2024-06-04T15:47:49.390Z","locale":null}}
|
||||
{"type":"admin::permission","id":369,"data":{"documentId":"kmko4r0dlomnif0wbd9s3xw1","action":"plugin::content-manager.explorer.publish","actionParameters":{},"subject":"api::article.article","properties":{"locales":["en","fr","de","es"]},"conditions":[],"createdAt":"2024-06-04T15:47:49.390Z","updatedAt":"2024-06-04T15:47:49.390Z","publishedAt":"2024-06-04T15:47:49.390Z","locale":null}}
|
||||
{"type":"admin::permission","id":370,"data":{"documentId":"hxxsiihwgkj9t4213v2naryn","action":"plugin::content-manager.explorer.publish","actionParameters":{},"subject":"api::unique.unique","properties":{"locales":["en","fr","de","es"]},"conditions":[],"createdAt":"2024-06-04T15:47:49.391Z","updatedAt":"2024-06-04T15:47:49.391Z","publishedAt":"2024-06-04T15:47:49.391Z","locale":null}}
|
||||
{"type":"admin::permission","id":371,"data":{"documentId":"ygkhd6slx57qzk8lhr1l2jco","action":"plugin::content-manager.explorer.delete","actionParameters":{},"subject":"api::product.product","properties":{"locales":["en","fr","de","es"]},"conditions":[],"createdAt":"2024-06-04T15:47:49.391Z","updatedAt":"2024-06-04T15:47:49.391Z","publishedAt":"2024-06-04T15:47:49.391Z","locale":null}}
|
||||
{"type":"admin::permission","id":372,"data":{"documentId":"kmykii23085m4qi2laa3u6i0","action":"plugin::content-manager.explorer.publish","actionParameters":{},"subject":"api::product.product","properties":{"locales":["en","fr","de","es"]},"conditions":[],"createdAt":"2024-06-04T15:47:49.391Z","updatedAt":"2024-06-04T15:47:49.391Z","publishedAt":"2024-06-04T15:47:49.391Z","locale":null}}
|
||||
{"type":"admin::permission","id":373,"data":{"documentId":"gr36dlm4xcm2mpij2gfoxtck","action":"plugin::content-manager.explorer.delete","actionParameters":{},"subject":"api::shop.shop","properties":{"locales":["en","fr","de","es"]},"conditions":[],"createdAt":"2024-06-04T15:47:49.391Z","updatedAt":"2024-06-04T15:47:49.391Z","publishedAt":"2024-06-04T15:47:49.391Z","locale":null}}
|
||||
{"type":"admin::permission","id":374,"data":{"documentId":"x2p87zgkmltxsptlv6ys6lrz","action":"plugin::content-manager.explorer.publish","actionParameters":{},"subject":"api::shop.shop","properties":{"locales":["en","fr","de","es"]},"conditions":[],"createdAt":"2024-06-04T15:47:49.392Z","updatedAt":"2024-06-04T15:47:49.392Z","publishedAt":"2024-06-04T15:47:49.392Z","locale":null}}
|
||||
{"type":"admin::permission","id":375,"data":{"documentId":"f2yvr3ub1ssvfts9lg3mjkap","action":"plugin::content-manager.explorer.create","actionParameters":{},"subject":"api::shop.shop","properties":{"fields":["title","content","seo.title","seo.description","seo.indexable","seo.image"],"locales":["en","fr","de","es"]},"conditions":[],"createdAt":"2024-06-04T15:47:49.392Z","updatedAt":"2024-06-04T15:47:49.392Z","publishedAt":"2024-06-04T15:47:49.392Z","locale":null}}
|
||||
{"type":"admin::permission","id":376,"data":{"documentId":"u4jxubx9kxry2l8h2y98e3u0","action":"plugin::content-manager.explorer.read","actionParameters":{},"subject":"api::shop.shop","properties":{"fields":["title","content","seo.title","seo.description","seo.indexable","seo.image"],"locales":["en","fr","de","es"]},"conditions":[],"createdAt":"2024-06-04T15:47:49.392Z","updatedAt":"2024-06-04T15:47:49.392Z","publishedAt":"2024-06-04T15:47:49.392Z","locale":null}}
|
||||
{"type":"admin::permission","id":377,"data":{"documentId":"p9qz9eiy6h95apg958hb5dg8","action":"plugin::content-manager.explorer.update","actionParameters":{},"subject":"api::shop.shop","properties":{"fields":["title","content","seo.title","seo.description","seo.indexable","seo.image"],"locales":["en","fr","de","es"]},"conditions":[],"createdAt":"2024-06-04T15:47:49.392Z","updatedAt":"2024-06-04T15:47:49.392Z","publishedAt":"2024-06-04T15:47:49.392Z","locale":null}}
|
||||
{"type":"admin::permission","id":378,"data":{"documentId":"zuxkd4zcxbl5xoz7eb5h5ekn","action":"plugin::content-manager.explorer.create","actionParameters":{},"subject":"api::article.article","properties":{"fields":["title","content","authors","slug","seo.title","seo.description","seo.indexable","seo.image"],"locales":["en","fr","de","es"]},"conditions":[],"createdAt":"2024-06-04T15:47:49.393Z","updatedAt":"2024-06-04T15:47:49.393Z","publishedAt":"2024-06-04T15:47:49.393Z","locale":null}}
|
||||
{"type":"admin::permission","id":379,"data":{"documentId":"fls43q06d3laud6hmla7y5ju","action":"plugin::content-manager.explorer.read","actionParameters":{},"subject":"api::article.article","properties":{"fields":["title","content","authors","slug","seo.title","seo.description","seo.indexable","seo.image"],"locales":["en","fr","de","es"]},"conditions":[],"createdAt":"2024-06-04T15:47:49.393Z","updatedAt":"2024-06-04T15:47:49.393Z","publishedAt":"2024-06-04T15:47:49.393Z","locale":null}}
|
||||
{"type":"admin::permission","id":380,"data":{"documentId":"kube2vg7efttwim9ywmuj286","action":"plugin::content-manager.explorer.update","actionParameters":{},"subject":"api::article.article","properties":{"fields":["title","content","authors","slug","seo.title","seo.description","seo.indexable","seo.image"],"locales":["en","fr","de","es"]},"conditions":[],"createdAt":"2024-06-04T15:47:49.393Z","updatedAt":"2024-06-04T15:47:49.393Z","publishedAt":"2024-06-04T15:47:49.393Z","locale":null}}
|
||||
{"type":"admin::permission","id":381,"data":{"documentId":"vyjjywvc03nfznjctw3n2jrd","action":"plugin::content-manager.explorer.create","actionParameters":{},"subject":"api::homepage.homepage","properties":{"fields":["title","content","admin_user","seo.title","seo.description","seo.indexable","seo.image"],"locales":["en","fr","de","es"]},"conditions":[],"createdAt":"2024-06-04T15:47:49.394Z","updatedAt":"2024-06-04T15:47:49.394Z","publishedAt":"2024-06-04T15:47:49.394Z","locale":null}}
|
||||
{"type":"admin::permission","id":382,"data":{"documentId":"qt4y2agf56og4dcjhx5rv2s5","action":"plugin::content-manager.explorer.read","actionParameters":{},"subject":"api::homepage.homepage","properties":{"fields":["title","content","admin_user","seo.title","seo.description","seo.indexable","seo.image"],"locales":["en","fr","de","es"]},"conditions":[],"createdAt":"2024-06-04T15:47:49.395Z","updatedAt":"2024-06-04T15:47:49.395Z","publishedAt":"2024-06-04T15:47:49.395Z","locale":null}}
|
||||
{"type":"admin::permission","id":383,"data":{"documentId":"ir9msg4hre3sh0s7t44aeotf","action":"plugin::content-manager.explorer.update","actionParameters":{},"subject":"api::homepage.homepage","properties":{"fields":["title","content","admin_user","seo.title","seo.description","seo.indexable","seo.image"],"locales":["en","fr","de","es"]},"conditions":[],"createdAt":"2024-06-04T15:47:49.395Z","updatedAt":"2024-06-04T15:47:49.395Z","publishedAt":"2024-06-04T15:47:49.395Z","locale":null}}
|
||||
{"type":"admin::permission","id":384,"data":{"documentId":"saxc5v5vmo4ddks9rw48iqge","action":"plugin::content-manager.explorer.delete","actionParameters":{},"subject":"api::homepage.homepage","properties":{"locales":["en","fr","de","es"]},"conditions":[],"createdAt":"2024-06-04T15:47:49.395Z","updatedAt":"2024-06-04T15:47:49.395Z","publishedAt":"2024-06-04T15:47:49.395Z","locale":null}}
|
||||
{"type":"admin::permission","id":385,"data":{"documentId":"xxl17f4b4lwvgjazzgm8qna6","action":"plugin::content-manager.explorer.publish","actionParameters":{},"subject":"api::homepage.homepage","properties":{"locales":["en","fr","de","es"]},"conditions":[],"createdAt":"2024-06-04T15:47:49.395Z","updatedAt":"2024-06-04T15:47:49.395Z","publishedAt":"2024-06-04T15:47:49.395Z","locale":null}}
|
||||
{"type":"admin::permission","id":386,"data":{"documentId":"l6f0j3z4cvkitwgpi3c8yyba","action":"plugin::content-manager.explorer.create","actionParameters":{},"subject":"api::unique.unique","properties":{"fields":["uniqueString","uniqueNumber","uniqueEmail","uniqueDate","UID","identifiers.nestedUnique.ComponentTextShort","identifiers.nestedUnique.ComponentTextLong","identifiers.nestedUnique.ComponentNumberInteger","identifiers.nestedUnique.ComponentNumberBigInteger","identifiers.nestedUnique.ComponentNumberDecimal","identifiers.nestedUnique.ComponentNumberFloat","identifiers.nestedUnique.ComponentEmail","identifiers.nestedUnique.ComponentDateDate","identifiers.nestedUnique.ComponentDateDateTime","identifiers.nestedUnique.ComponentDateTime","repeatableIdentifiers.nestedUnique.ComponentTextShort","repeatableIdentifiers.nestedUnique.ComponentTextLong","repeatableIdentifiers.nestedUnique.ComponentNumberInteger","repeatableIdentifiers.nestedUnique.ComponentNumberBigInteger","repeatableIdentifiers.nestedUnique.ComponentNumberDecimal","repeatableIdentifiers.nestedUnique.ComponentNumberFloat","repeatableIdentifiers.nestedUnique.ComponentEmail","repeatableIdentifiers.nestedUnique.ComponentDateDate","repeatableIdentifiers.nestedUnique.ComponentDateDateTime","repeatableIdentifiers.nestedUnique.ComponentDateTime"],"locales":["en","fr","de","es"]},"conditions":[],"createdAt":"2024-06-04T15:47:49.396Z","updatedAt":"2024-06-04T15:47:49.396Z","publishedAt":"2024-06-04T15:47:49.396Z","locale":null}}
|
||||
{"type":"admin::permission","id":387,"data":{"documentId":"tujbh1jnqmyrm3z71c7lif0d","action":"plugin::content-manager.explorer.read","actionParameters":{},"subject":"api::unique.unique","properties":{"fields":["uniqueString","uniqueNumber","uniqueEmail","uniqueDate","UID","identifiers.nestedUnique.ComponentTextShort","identifiers.nestedUnique.ComponentTextLong","identifiers.nestedUnique.ComponentNumberInteger","identifiers.nestedUnique.ComponentNumberBigInteger","identifiers.nestedUnique.ComponentNumberDecimal","identifiers.nestedUnique.ComponentNumberFloat","identifiers.nestedUnique.ComponentEmail","identifiers.nestedUnique.ComponentDateDate","identifiers.nestedUnique.ComponentDateDateTime","identifiers.nestedUnique.ComponentDateTime","repeatableIdentifiers.nestedUnique.ComponentTextShort","repeatableIdentifiers.nestedUnique.ComponentTextLong","repeatableIdentifiers.nestedUnique.ComponentNumberInteger","repeatableIdentifiers.nestedUnique.ComponentNumberBigInteger","repeatableIdentifiers.nestedUnique.ComponentNumberDecimal","repeatableIdentifiers.nestedUnique.ComponentNumberFloat","repeatableIdentifiers.nestedUnique.ComponentEmail","repeatableIdentifiers.nestedUnique.ComponentDateDate","repeatableIdentifiers.nestedUnique.ComponentDateDateTime","repeatableIdentifiers.nestedUnique.ComponentDateTime"],"locales":["en","fr","de","es"]},"conditions":[],"createdAt":"2024-06-04T15:47:49.396Z","updatedAt":"2024-06-04T15:47:49.396Z","publishedAt":"2024-06-04T15:47:49.396Z","locale":null}}
|
||||
{"type":"admin::permission","id":388,"data":{"documentId":"fuhypaj4nkxi990v8p2egf5o","action":"plugin::content-manager.explorer.update","actionParameters":{},"subject":"api::unique.unique","properties":{"fields":["uniqueString","uniqueNumber","uniqueEmail","uniqueDate","UID","identifiers.nestedUnique.ComponentTextShort","identifiers.nestedUnique.ComponentTextLong","identifiers.nestedUnique.ComponentNumberInteger","identifiers.nestedUnique.ComponentNumberBigInteger","identifiers.nestedUnique.ComponentNumberDecimal","identifiers.nestedUnique.ComponentNumberFloat","identifiers.nestedUnique.ComponentEmail","identifiers.nestedUnique.ComponentDateDate","identifiers.nestedUnique.ComponentDateDateTime","identifiers.nestedUnique.ComponentDateTime","repeatableIdentifiers.nestedUnique.ComponentTextShort","repeatableIdentifiers.nestedUnique.ComponentTextLong","repeatableIdentifiers.nestedUnique.ComponentNumberInteger","repeatableIdentifiers.nestedUnique.ComponentNumberBigInteger","repeatableIdentifiers.nestedUnique.ComponentNumberDecimal","repeatableIdentifiers.nestedUnique.ComponentNumberFloat","repeatableIdentifiers.nestedUnique.ComponentEmail","repeatableIdentifiers.nestedUnique.ComponentDateDate","repeatableIdentifiers.nestedUnique.ComponentDateDateTime","repeatableIdentifiers.nestedUnique.ComponentDateTime"],"locales":["en","fr","de","es"]},"conditions":[],"createdAt":"2024-06-04T15:47:49.397Z","updatedAt":"2024-06-04T15:47:49.397Z","publishedAt":"2024-06-04T15:47:49.397Z","locale":null}}
|
||||
{"type":"admin::permission","id":389,"data":{"documentId":"uvfydzh4oc9eftf3fmitmh6n","action":"plugin::content-manager.explorer.create","actionParameters":{},"subject":"api::match.match","properties":{"fields":["date","kit_man","opponent","lineup.full_name","lineup.position","most_valuable_player.full_name","most_valuable_player.position","sections"]},"conditions":[],"createdAt":"2025-02-12T16:03:46.778Z","updatedAt":"2025-02-12T16:03:46.778Z","publishedAt":"2025-02-12T16:03:46.779Z","locale":null}}
|
||||
{"type":"admin::permission","id":390,"data":{"documentId":"zth9259zfpz0hh4yw7br2kca","action":"plugin::content-manager.explorer.read","actionParameters":{},"subject":"api::match.match","properties":{"fields":["date","kit_man","opponent","lineup.full_name","lineup.position","most_valuable_player.full_name","most_valuable_player.position","sections"]},"conditions":[],"createdAt":"2025-02-12T16:03:46.781Z","updatedAt":"2025-02-12T16:03:46.781Z","publishedAt":"2025-02-12T16:03:46.781Z","locale":null}}
|
||||
{"type":"admin::permission","id":391,"data":{"documentId":"ctm90gk562icanlixgd3imrj","action":"plugin::content-manager.explorer.update","actionParameters":{},"subject":"api::match.match","properties":{"fields":["date","kit_man","opponent","lineup.full_name","lineup.position","most_valuable_player.full_name","most_valuable_player.position","sections"]},"conditions":[],"createdAt":"2025-02-12T16:03:46.782Z","updatedAt":"2025-02-12T16:03:46.782Z","publishedAt":"2025-02-12T16:03:46.783Z","locale":null}}
|
||||
{"type":"admin::permission","id":392,"data":{"documentId":"tfpib9godgvt19j0bh9wgbii","action":"plugin::content-manager.explorer.delete","actionParameters":{},"subject":"api::match.match","properties":{},"conditions":[],"createdAt":"2025-02-12T16:03:46.784Z","updatedAt":"2025-02-12T16:03:46.784Z","publishedAt":"2025-02-12T16:03:46.784Z","locale":null}}
|
||||
{"type":"admin::permission","id":393,"data":{"documentId":"b5o0zs39fn9y5na08vqa0zn3","action":"plugin::content-manager.explorer.publish","actionParameters":{},"subject":"api::match.match","properties":{},"conditions":[],"createdAt":"2025-02-12T16:03:46.786Z","updatedAt":"2025-02-12T16:03:46.786Z","publishedAt":"2025-02-12T16:03:46.786Z","locale":null}}
|
||||
{"type":"admin::permission","id":394,"data":{"documentId":"scpmur79hykpgk63vofq2pvg","action":"plugin::content-manager.explorer.create","actionParameters":{},"subject":"api::team.team","properties":{"fields":["name","founded"],"locales":["en","fr","de","es"]},"conditions":[],"createdAt":"2025-06-11T14:33:52.141Z","updatedAt":"2025-06-11T14:33:52.141Z","publishedAt":"2025-06-11T14:33:52.141Z","locale":null}}
|
||||
{"type":"admin::permission","id":395,"data":{"documentId":"e0wh78v0nmb0fef06znzozl9","action":"plugin::content-manager.explorer.read","actionParameters":{},"subject":"api::team.team","properties":{"fields":["name","founded"],"locales":["en","fr","de","es"]},"conditions":[],"createdAt":"2025-06-11T14:33:52.144Z","updatedAt":"2025-06-11T14:33:52.144Z","publishedAt":"2025-06-11T14:33:52.144Z","locale":null}}
|
||||
{"type":"admin::permission","id":396,"data":{"documentId":"ohmlu7i57lwkzq5kbcl9uz6s","action":"plugin::content-manager.explorer.update","actionParameters":{},"subject":"api::team.team","properties":{"fields":["name","founded"],"locales":["en","fr","de","es"]},"conditions":[],"createdAt":"2025-06-11T14:33:52.146Z","updatedAt":"2025-06-11T14:33:52.146Z","publishedAt":"2025-06-11T14:33:52.147Z","locale":null}}
|
||||
{"type":"admin::permission","id":397,"data":{"documentId":"mfy5t4etz5t29s0ousxn96oq","action":"plugin::content-manager.explorer.delete","actionParameters":{},"subject":"api::team.team","properties":{"locales":["en","fr","de","es"]},"conditions":[],"createdAt":"2025-06-11T14:33:52.148Z","updatedAt":"2025-06-11T14:33:52.148Z","publishedAt":"2025-06-11T14:33:52.148Z","locale":null}}
|
||||
{"type":"admin::permission","id":398,"data":{"documentId":"em2buisw889lwgqcbpljwlrq","action":"plugin::content-manager.explorer.publish","actionParameters":{},"subject":"api::team.team","properties":{"locales":["en","fr","de","es"]},"conditions":[],"createdAt":"2025-06-11T14:33:52.150Z","updatedAt":"2025-06-11T14:33:52.150Z","publishedAt":"2025-06-11T14:33:52.150Z","locale":null}}
|
||||
{"type":"admin::permission","id":399,"data":{"documentId":"lghinywt4w3xy42m6nec7wln","action":"plugin::content-manager.explorer.read","actionParameters":{},"subject":"api::article.article","properties":{"fields":["title","content","authors","slug","seo.title","seo.description","seo.indexable","seo.image"],"locales":["en","fr","de","es"]},"conditions":[],"createdAt":"2025-06-16T08:46:25.274Z","updatedAt":"2025-06-16T08:46:25.274Z","publishedAt":"2025-06-16T08:46:25.274Z","locale":null}}
|
||||
{"type":"admin::permission","id":400,"data":{"documentId":"ba7wpty18vghfo74poxy4rtg","action":"plugin::content-manager.explorer.update","actionParameters":{},"subject":"api::article.article","properties":{"fields":["title","content","authors","slug","seo.title","seo.description","seo.indexable","seo.image"],"locales":["en","fr","de","es"]},"conditions":[],"createdAt":"2025-06-16T08:46:25.277Z","updatedAt":"2025-06-16T08:46:25.277Z","publishedAt":"2025-06-16T08:46:25.278Z","locale":null}}
|
||||
{"type":"admin::permission","id":401,"data":{"documentId":"yyx48t0re90u7g3g9z5rvrtx","action":"plugin::content-manager.explorer.delete","actionParameters":{},"subject":"api::article.article","properties":{"locales":["en","fr","de","es"]},"conditions":[],"createdAt":"2025-06-16T08:46:25.280Z","updatedAt":"2025-06-16T08:46:25.280Z","publishedAt":"2025-06-16T08:46:25.280Z","locale":null}}
|
||||
{"type":"admin::permission","id":402,"data":{"documentId":"bd1f9jiguwv4rfmsmac1uotj","action":"plugin::content-manager.explorer.publish","actionParameters":{},"subject":"api::article.article","properties":{"locales":["en","fr","de","es"]},"conditions":[],"createdAt":"2025-06-16T08:46:25.282Z","updatedAt":"2025-06-16T08:46:25.282Z","publishedAt":"2025-06-16T08:46:25.282Z","locale":null}}
|
||||
{"type":"admin::permission","id":403,"data":{"documentId":"fyg8cc7fwkqsq1qye2u1dfu9","action":"plugin::content-manager.explorer.read","actionParameters":{},"subject":"api::author.author","properties":{"fields":["name","profile","articles"]},"conditions":[],"createdAt":"2025-06-16T08:46:25.286Z","updatedAt":"2025-06-16T08:46:25.286Z","publishedAt":"2025-06-16T08:46:25.286Z","locale":null}}
|
||||
{"type":"admin::permission","id":404,"data":{"documentId":"q63jy7ysy8cfvsm6iux8khmq","action":"plugin::content-manager.explorer.update","actionParameters":{},"subject":"api::author.author","properties":{"fields":["name","profile","articles"]},"conditions":[],"createdAt":"2025-06-16T08:46:25.289Z","updatedAt":"2025-06-16T08:46:25.289Z","publishedAt":"2025-06-16T08:46:25.289Z","locale":null}}
|
||||
{"type":"admin::permission","id":405,"data":{"documentId":"zaf4smjqfbi9i95fbmwdoku5","action":"plugin::content-manager.explorer.delete","actionParameters":{},"subject":"api::author.author","properties":{},"conditions":[],"createdAt":"2025-06-16T08:46:25.291Z","updatedAt":"2025-06-16T08:46:25.291Z","publishedAt":"2025-06-16T08:46:25.291Z","locale":null}}
|
||||
{"type":"admin::permission","id":406,"data":{"documentId":"bkicirv845lvt3kuj6cssunt","action":"plugin::content-manager.explorer.create","actionParameters":{},"subject":"api::homepage.homepage","properties":{"fields":["title","content","admin_user"],"locales":[]},"conditions":["admin::is-creator"],"createdAt":"2025-06-16T08:46:25.293Z","updatedAt":"2025-06-16T08:46:25.293Z","publishedAt":"2025-06-16T08:46:25.293Z","locale":null}}
|
||||
{"type":"admin::permission","id":407,"data":{"documentId":"i9qg1vnrgqbcjuc3mvzb0plh","action":"plugin::content-manager.explorer.read","actionParameters":{},"subject":"api::homepage.homepage","properties":{"fields":["title","content","admin_user"],"locales":[]},"conditions":["admin::is-creator"],"createdAt":"2025-06-16T08:46:25.295Z","updatedAt":"2025-06-16T08:46:25.295Z","publishedAt":"2025-06-16T08:46:25.295Z","locale":null}}
|
||||
{"type":"admin::permission","id":408,"data":{"documentId":"e7as7vokg2cg8k09onsw3ygu","action":"plugin::content-manager.explorer.update","actionParameters":{},"subject":"api::homepage.homepage","properties":{"fields":["title","content","admin_user"],"locales":[]},"conditions":["admin::is-creator"],"createdAt":"2025-06-16T08:46:25.298Z","updatedAt":"2025-06-16T08:46:25.298Z","publishedAt":"2025-06-16T08:46:25.298Z","locale":null}}
|
||||
{"type":"admin::permission","id":409,"data":{"documentId":"nhn9n4ephz87v9im3jdezolt","action":"plugin::content-manager.explorer.delete","actionParameters":{},"subject":"api::condition.condition","properties":{},"conditions":[],"createdAt":"2025-06-30T09:27:11.379Z","updatedAt":"2025-06-30T09:27:11.379Z","publishedAt":"2025-06-30T09:27:11.379Z","locale":null}}
|
||||
{"type":"admin::permission","id":410,"data":{"documentId":"lr5lwg5df4bpmtapz1nx07hj","action":"plugin::content-manager.explorer.publish","actionParameters":{},"subject":"api::condition.condition","properties":{},"conditions":[],"createdAt":"2025-06-30T09:27:11.381Z","updatedAt":"2025-06-30T09:27:11.381Z","publishedAt":"2025-06-30T09:27:11.381Z","locale":null}}
|
||||
{"type":"admin::permission","id":411,"data":{"documentId":"ayreyhdxrrz77jfcfgq0d1pi","action":"plugin::content-manager.explorer.create","actionParameters":{},"subject":"api::country.country","properties":{"fields":["name","code","visible","product"],"locales":["en","fr","de","es"]},"conditions":[],"createdAt":"2025-06-30T09:32:05.138Z","updatedAt":"2025-06-30T09:32:05.138Z","publishedAt":"2025-06-30T09:32:05.138Z","locale":null}}
|
||||
{"type":"admin::permission","id":412,"data":{"documentId":"fh4puoccuwgwwhaomdajkgh1","action":"plugin::content-manager.explorer.read","actionParameters":{},"subject":"api::country.country","properties":{"fields":["name","code","visible","product"],"locales":["en","fr","de","es"]},"conditions":[],"createdAt":"2025-06-30T09:32:05.143Z","updatedAt":"2025-06-30T09:32:05.143Z","publishedAt":"2025-06-30T09:32:05.143Z","locale":null}}
|
||||
{"type":"admin::permission","id":413,"data":{"documentId":"z8qj5x1tnnhjts74wtap82g5","action":"plugin::content-manager.explorer.update","actionParameters":{},"subject":"api::country.country","properties":{"fields":["name","code","visible","product"],"locales":["en","fr","de","es"]},"conditions":[],"createdAt":"2025-06-30T09:32:05.146Z","updatedAt":"2025-06-30T09:32:05.146Z","publishedAt":"2025-06-30T09:32:05.146Z","locale":null}}
|
||||
{"type":"admin::permission","id":414,"data":{"documentId":"lpoebpfwsw02h476qe83m0qn","action":"plugin::content-manager.explorer.delete","actionParameters":{},"subject":"api::country.country","properties":{"locales":["en","fr","de","es"]},"conditions":[],"createdAt":"2025-06-30T09:32:05.150Z","updatedAt":"2025-06-30T09:32:05.150Z","publishedAt":"2025-06-30T09:32:05.150Z","locale":null}}
|
||||
{"type":"admin::permission","id":415,"data":{"documentId":"p1ksy4tyy8vzf5p6nqgr8r9v","action":"plugin::content-manager.explorer.publish","actionParameters":{},"subject":"api::country.country","properties":{"locales":["en","fr","de","es"]},"conditions":[],"createdAt":"2025-06-30T09:32:05.152Z","updatedAt":"2025-06-30T09:32:05.152Z","publishedAt":"2025-06-30T09:32:05.152Z","locale":null}}
|
||||
{"type":"admin::permission","id":416,"data":{"documentId":"xd8fgtj5qznrihuayigukvf5","action":"plugin::content-manager.explorer.create","actionParameters":{},"subject":"api::condition.condition","properties":{"fields":["isActive","country","roles","Author"]},"conditions":[],"createdAt":"2025-07-19T20:23:35.478Z","updatedAt":"2025-07-19T20:23:35.478Z","publishedAt":"2025-07-19T20:23:35.478Z","locale":null}}
|
||||
{"type":"admin::permission","id":417,"data":{"documentId":"pv9br95vms2g9makotcze6b0","action":"plugin::content-manager.explorer.create","actionParameters":{},"subject":"api::product.product","properties":{"fields":["name","slug","isAvailable","description","images","seo.title","seo.description","seo.indexable","seo.image","sku","variations.name","variations.description","variations.price","variations.sku","type","countries"],"locales":["en","fr","de","es"]},"conditions":[],"createdAt":"2025-07-19T20:23:35.481Z","updatedAt":"2025-07-19T20:23:35.481Z","publishedAt":"2025-07-19T20:23:35.481Z","locale":null}}
|
||||
{"type":"admin::permission","id":418,"data":{"documentId":"fxg28cfbmhz61qz61i4rdyim","action":"plugin::content-manager.explorer.read","actionParameters":{},"subject":"api::condition.condition","properties":{"fields":["isActive","country","roles","Author"]},"conditions":[],"createdAt":"2025-07-19T20:23:35.484Z","updatedAt":"2025-07-19T20:23:35.484Z","publishedAt":"2025-07-19T20:23:35.484Z","locale":null}}
|
||||
{"type":"admin::permission","id":419,"data":{"documentId":"e6p5n1gfvh8bbdj6a6djv7fh","action":"plugin::content-manager.explorer.read","actionParameters":{},"subject":"api::product.product","properties":{"fields":["name","slug","isAvailable","description","images","seo.title","seo.description","seo.indexable","seo.image","sku","variations.name","variations.description","variations.price","variations.sku","type","countries"],"locales":["en","fr","de","es"]},"conditions":[],"createdAt":"2025-07-19T20:23:35.487Z","updatedAt":"2025-07-19T20:23:35.487Z","publishedAt":"2025-07-19T20:23:35.487Z","locale":null}}
|
||||
{"type":"admin::permission","id":420,"data":{"documentId":"i8e71vqjo8t8n1a6xwo6xown","action":"plugin::content-manager.explorer.update","actionParameters":{},"subject":"api::condition.condition","properties":{"fields":["isActive","country","roles","Author"]},"conditions":[],"createdAt":"2025-07-19T20:23:35.490Z","updatedAt":"2025-07-19T20:23:35.490Z","publishedAt":"2025-07-19T20:23:35.490Z","locale":null}}
|
||||
{"type":"admin::permission","id":421,"data":{"documentId":"r48e2p49pim6q5pvgfz2nuxm","action":"plugin::content-manager.explorer.update","actionParameters":{},"subject":"api::product.product","properties":{"fields":["name","slug","isAvailable","description","images","seo.title","seo.description","seo.indexable","seo.image","sku","variations.name","variations.description","variations.price","variations.sku","type","countries"],"locales":["en","fr","de","es"]},"conditions":[],"createdAt":"2025-07-19T20:23:35.493Z","updatedAt":"2025-07-19T20:23:35.493Z","publishedAt":"2025-07-19T20:23:35.493Z","locale":null}}
|
||||
{"type":"admin::permission","id":422,"data":{"documentId":"fuy1c0ixed8sa8hlke39tpjn","action":"plugin::content-manager.explorer.delete","actionParameters":{},"subject":"api::cat.cat","properties":{},"conditions":[],"createdAt":"2025-07-19T20:23:35.495Z","updatedAt":"2025-07-19T20:23:35.495Z","publishedAt":"2025-07-19T20:23:35.495Z","locale":null}}
|
||||
{"type":"admin::permission","id":423,"data":{"documentId":"ax9hu9djpqj75f1zo5rhcabz","action":"plugin::content-manager.explorer.delete","actionParameters":{},"subject":"api::dog.dog","properties":{},"conditions":[],"createdAt":"2025-07-19T20:23:35.496Z","updatedAt":"2025-07-19T20:23:35.496Z","publishedAt":"2025-07-19T20:23:35.496Z","locale":null}}
|
||||
{"type":"admin::permission","id":424,"data":{"documentId":"rviovspal5tyg4bjalm6zxgp","action":"plugin::content-manager.explorer.publish","actionParameters":{},"subject":"api::cat.cat","properties":{},"conditions":[],"createdAt":"2025-07-19T20:23:35.497Z","updatedAt":"2025-07-19T20:23:35.497Z","publishedAt":"2025-07-19T20:23:35.498Z","locale":null}}
|
||||
{"type":"admin::permission","id":425,"data":{"documentId":"b93b9cgavbeycg62fr7qlrex","action":"plugin::content-manager.explorer.publish","actionParameters":{},"subject":"api::dog.dog","properties":{},"conditions":[],"createdAt":"2025-07-19T20:23:35.499Z","updatedAt":"2025-07-19T20:23:35.499Z","publishedAt":"2025-07-19T20:23:35.499Z","locale":null}}
|
||||
{"type":"admin::permission","id":426,"data":{"documentId":"zsjk4wmyuyk4vu3tsfujtjj0","action":"plugin::content-manager.explorer.create","actionParameters":{},"subject":"api::cat.cat","properties":{"fields":["name","age","likesDogs","personality","dogFriends","huntingSkills","favoriteNapSpot","favoriteToy"]},"conditions":[],"createdAt":"2025-07-19T20:37:53.976Z","updatedAt":"2025-07-19T20:37:53.976Z","publishedAt":"2025-07-19T20:37:53.976Z","locale":null}}
|
||||
{"type":"admin::permission","id":428,"data":{"documentId":"fal7zf3dfmejve7ffaxeznuw","action":"plugin::content-manager.explorer.read","actionParameters":{},"subject":"api::cat.cat","properties":{"fields":["name","age","likesDogs","personality","dogFriends","huntingSkills","favoriteNapSpot","favoriteToy"]},"conditions":[],"createdAt":"2025-07-19T20:37:53.981Z","updatedAt":"2025-07-19T20:37:53.981Z","publishedAt":"2025-07-19T20:37:53.981Z","locale":null}}
|
||||
{"type":"admin::permission","id":430,"data":{"documentId":"xe6o6miv9q3xeuopyxzzdr40","action":"plugin::content-manager.explorer.update","actionParameters":{},"subject":"api::cat.cat","properties":{"fields":["name","age","likesDogs","personality","dogFriends","huntingSkills","favoriteNapSpot","favoriteToy"]},"conditions":[],"createdAt":"2025-07-19T20:37:53.985Z","updatedAt":"2025-07-19T20:37:53.985Z","publishedAt":"2025-07-19T20:37:53.985Z","locale":null}}
|
||||
{"type":"admin::permission","id":432,"data":{"documentId":"wasys0kooxsnyf7rwso5wteu","action":"plugin::content-releases.read","actionParameters":{},"subject":null,"properties":{},"conditions":[],"createdAt":"2025-07-19T20:38:49.321Z","updatedAt":"2025-07-19T20:38:49.321Z","publishedAt":"2025-07-19T20:38:49.322Z","locale":null}}
|
||||
{"type":"admin::permission","id":433,"data":{"documentId":"qk7ewz7j042ksxzpdl7gmxa3","action":"plugin::content-releases.create","actionParameters":{},"subject":null,"properties":{},"conditions":[],"createdAt":"2025-07-19T20:38:49.325Z","updatedAt":"2025-07-19T20:38:49.325Z","publishedAt":"2025-07-19T20:38:49.325Z","locale":null}}
|
||||
{"type":"admin::permission","id":434,"data":{"documentId":"hcm0q1zhv0ii4w9h52w3bt1m","action":"plugin::content-releases.update","actionParameters":{},"subject":null,"properties":{},"conditions":[],"createdAt":"2025-07-19T20:38:49.327Z","updatedAt":"2025-07-19T20:38:49.327Z","publishedAt":"2025-07-19T20:38:49.327Z","locale":null}}
|
||||
{"type":"admin::permission","id":435,"data":{"documentId":"ww0ecjuss4dhmkflbuomibma","action":"plugin::content-releases.delete","actionParameters":{},"subject":null,"properties":{},"conditions":[],"createdAt":"2025-07-19T20:38:49.328Z","updatedAt":"2025-07-19T20:38:49.328Z","publishedAt":"2025-07-19T20:38:49.329Z","locale":null}}
|
||||
{"type":"admin::permission","id":436,"data":{"documentId":"b69ixw0v1obiyhhxbaruh3yu","action":"plugin::content-releases.publish","actionParameters":{},"subject":null,"properties":{},"conditions":[],"createdAt":"2025-07-19T20:38:49.330Z","updatedAt":"2025-07-19T20:38:49.330Z","publishedAt":"2025-07-19T20:38:49.330Z","locale":null}}
|
||||
{"type":"admin::permission","id":437,"data":{"documentId":"zqex0b16rwn2luklyxztn4g1","action":"plugin::content-releases.delete-action","actionParameters":{},"subject":null,"properties":{},"conditions":[],"createdAt":"2025-07-19T20:38:49.331Z","updatedAt":"2025-07-19T20:38:49.331Z","publishedAt":"2025-07-19T20:38:49.332Z","locale":null}}
|
||||
{"type":"admin::permission","id":438,"data":{"documentId":"ya8b3zik6g5xpa4iwgvvpoj2","action":"plugin::content-releases.create-action","actionParameters":{},"subject":null,"properties":{},"conditions":[],"createdAt":"2025-07-19T20:38:49.333Z","updatedAt":"2025-07-19T20:38:49.333Z","publishedAt":"2025-07-19T20:38:49.333Z","locale":null}}
|
||||
{"type":"admin::permission","id":439,"data":{"documentId":"xkqkbzuthtu07fjj5se0h6i0","action":"plugin::content-releases.settings.read","actionParameters":{},"subject":null,"properties":{},"conditions":[],"createdAt":"2025-07-19T20:38:49.334Z","updatedAt":"2025-07-19T20:38:49.334Z","publishedAt":"2025-07-19T20:38:49.334Z","locale":null}}
|
||||
{"type":"admin::permission","id":440,"data":{"documentId":"obpjcwwjdz590m4a9kpsskjq","action":"plugin::content-releases.settings.update","actionParameters":{},"subject":null,"properties":{},"conditions":[],"createdAt":"2025-07-19T20:38:49.336Z","updatedAt":"2025-07-19T20:38:49.336Z","publishedAt":"2025-07-19T20:38:49.336Z","locale":null}}
|
||||
{"type":"admin::permission","id":441,"data":{"documentId":"jjn8frw1cpdl81vlolw8cejm","action":"admin::review-workflows.create","actionParameters":{},"subject":null,"properties":{},"conditions":[],"createdAt":"2025-07-19T20:38:49.338Z","updatedAt":"2025-07-19T20:38:49.338Z","publishedAt":"2025-07-19T20:38:49.338Z","locale":null}}
|
||||
{"type":"admin::permission","id":442,"data":{"documentId":"yrki75cihl70f6hd4zd8rdms","action":"admin::review-workflows.read","actionParameters":{},"subject":null,"properties":{},"conditions":[],"createdAt":"2025-07-19T20:38:49.340Z","updatedAt":"2025-07-19T20:38:49.340Z","publishedAt":"2025-07-19T20:38:49.340Z","locale":null}}
|
||||
{"type":"admin::permission","id":443,"data":{"documentId":"bpwjf13ii5uve64gn9u4waze","action":"admin::review-workflows.update","actionParameters":{},"subject":null,"properties":{},"conditions":[],"createdAt":"2025-07-19T20:38:49.342Z","updatedAt":"2025-07-19T20:38:49.342Z","publishedAt":"2025-07-19T20:38:49.342Z","locale":null}}
|
||||
{"type":"admin::permission","id":444,"data":{"documentId":"oapow6szdk5z9tm8bysa3gjk","action":"admin::review-workflows.delete","actionParameters":{},"subject":null,"properties":{},"conditions":[],"createdAt":"2025-07-19T20:38:49.343Z","updatedAt":"2025-07-19T20:38:49.343Z","publishedAt":"2025-07-19T20:38:49.343Z","locale":null}}
|
||||
{"type":"admin::permission","id":445,"data":{"documentId":"xwsesrw12nrsm5m8ibcqoqwn","action":"admin::provider-login.read","actionParameters":{},"subject":null,"properties":{},"conditions":[],"createdAt":"2025-07-19T20:38:49.345Z","updatedAt":"2025-07-19T20:38:49.345Z","publishedAt":"2025-07-19T20:38:49.345Z","locale":null}}
|
||||
{"type":"admin::permission","id":446,"data":{"documentId":"dq40z4bl2g6bcon00nernzn8","action":"admin::provider-login.update","actionParameters":{},"subject":null,"properties":{},"conditions":[],"createdAt":"2025-07-19T20:38:49.346Z","updatedAt":"2025-07-19T20:38:49.346Z","publishedAt":"2025-07-19T20:38:49.346Z","locale":null}}
|
||||
{"type":"admin::permission","id":447,"data":{"documentId":"s4xj6aub24g9cyy2mv1uid98","action":"admin::audit-logs.read","actionParameters":{},"subject":null,"properties":{},"conditions":[],"createdAt":"2025-07-19T20:38:49.347Z","updatedAt":"2025-07-19T20:38:49.347Z","publishedAt":"2025-07-19T20:38:49.347Z","locale":null}}
|
||||
{"type":"admin::permission","id":448,"data":{"documentId":"up6ut51dn32s370413dp3hun","action":"plugin::content-manager.explorer.create","actionParameters":{},"subject":"api::dog.dog","properties":{"fields":["name","age","likesCats","personality","bestFriendCats","favoriteToy","guardingSchedule","preferredCatPersonality","favoriteTreat"]},"conditions":[],"createdAt":"2025-08-04T09:54:05.820Z","updatedAt":"2025-08-04T09:54:05.820Z","publishedAt":"2025-08-04T09:54:05.821Z","locale":null}}
|
||||
{"type":"admin::permission","id":449,"data":{"documentId":"t2tyitylv1dj9m1s3l9segh4","action":"plugin::content-manager.explorer.read","actionParameters":{},"subject":"api::dog.dog","properties":{"fields":["name","age","likesCats","personality","bestFriendCats","favoriteToy","guardingSchedule","preferredCatPersonality","favoriteTreat"]},"conditions":[],"createdAt":"2025-08-04T09:54:05.823Z","updatedAt":"2025-08-04T09:54:05.823Z","publishedAt":"2025-08-04T09:54:05.823Z","locale":null}}
|
||||
{"type":"admin::permission","id":450,"data":{"documentId":"yitim20v7pc65rtqtp8uhejw","action":"plugin::content-manager.explorer.update","actionParameters":{},"subject":"api::dog.dog","properties":{"fields":["name","age","likesCats","personality","bestFriendCats","favoriteToy","guardingSchedule","preferredCatPersonality","favoriteTreat"]},"conditions":[],"createdAt":"2025-08-04T09:54:05.825Z","updatedAt":"2025-08-04T09:54:05.825Z","publishedAt":"2025-08-04T09:54:05.825Z","locale":null}}
|
||||
{"type":"admin::user","id":1,"data":{"documentId":"alvajazgomlulu7m2sprbtx6","firstname":"test","lastname":"testing","username":null,"email":"test@testing.com","password":"$2a$10$BnbqfP9PLo9T3su.zLNMhefus61S5e.fLCj3jvLKpgNQhMN7h2Vf.","resetPasswordToken":null,"registrationToken":null,"isActive":true,"blocked":false,"preferedLanguage":null,"createdAt":"2024-01-17T13:52:40.665Z","updatedAt":"2024-01-17T13:52:40.665Z","publishedAt":"2024-02-13T09:05:05.534Z","locale":null}}
|
||||
{"type":"admin::user","id":2,"data":{"documentId":"fhh90k9e50zdmi9gd7545mqk","firstname":"editor","lastname":"testing","username":null,"email":"editor@testing.com","password":"$2a$10$Xe8aE2lmUAk7PQ76CkNPbu/1/CzCPS17Gqk0KMEaREgZR1dtfGCMe","resetPasswordToken":null,"registrationToken":null,"isActive":true,"blocked":false,"preferedLanguage":null,"createdAt":"2024-04-10T09:24:46.260Z","updatedAt":"2025-06-11T14:31:32.429Z","publishedAt":"2024-04-10T09:24:46.260Z","locale":null}}
|
||||
{"type":"admin::user","id":3,"data":{"documentId":"a79uqs954y843ifbptu4y5pt","firstname":"author","lastname":"testing","username":null,"email":"author@testing.com","password":"$2a$10$bMjTadAO0vtfDkKTtAbob.fKImGmVQko9XLiPA7XN3yGhO5GMN5ym","resetPasswordToken":null,"registrationToken":null,"isActive":true,"blocked":false,"preferedLanguage":null,"createdAt":"2025-06-16T08:46:55.154Z","updatedAt":"2025-06-16T08:47:11.898Z","publishedAt":"2025-06-16T08:46:55.154Z","locale":null}}
|
||||
{"type":"admin::role","id":4,"data":{"documentId":"xqcd54q3c5nf025odzubtybg","name":"Super Admin","code":"strapi-super-admin","description":"Super Admins can access and manage all features and settings.","createdAt":"2024-01-17T13:47:38.855Z","updatedAt":"2024-01-17T13:47:38.855Z","publishedAt":"2024-02-13T09:05:05.534Z","locale":null}}
|
||||
{"type":"admin::role","id":5,"data":{"documentId":"vlu2s7ox1j1np0qwf5cv2f2q","name":"Editor","code":"strapi-editor","description":"Editors can manage and publish contents including those of other users.","createdAt":"2024-01-17T13:47:38.857Z","updatedAt":"2024-01-17T13:47:38.857Z","publishedAt":"2024-02-13T09:05:05.534Z","locale":null}}
|
||||
{"type":"admin::role","id":6,"data":{"documentId":"kv2hw1zsvm230za67jlt9xk4","name":"Author","code":"strapi-author","description":"Authors can manage the content they have created.","createdAt":"2024-01-17T13:47:38.858Z","updatedAt":"2025-06-16T08:50:49.968Z","publishedAt":"2024-02-13T09:05:05.535Z","locale":null}}
|
||||
{"type":"admin::api-token","id":3,"data":{"documentId":"nvglynqvu5cdv7qacj6xk6el","name":"Full Access","description":"A default API token with full access permissions, used for accessing or modifying resources","type":"full-access","accessKey":"3f4b123ed746eb535095bf8abe082548505a99c8892e9d1d5ec82d9754dbd210cf0c9496b3fa350f6bc9ad51c8aa209a6e4f236000d4471ff5b07186ca325985","encryptedKey":"v1:0cc9047a01be96df0dd0646b055a210f:d8884d1d51a9a2398a349ce4fadb60b16109716d08688194ae79e1d747088fed8331b3d38ad166c43f814eba31d13fa4a3dcf339c717d0d84c68f89417abc701fecd56cce1efc31353e64bd43eccce2e99762e02bee864f2c93a57cccc8352f955c0b2439b32d3908d75a8efd7232cf9e2c8aae3037eba4a22a63edee95aa761435a2305a13b01fe2f01ab6170550502f2a95cc467d52b38f0165210e0209d31afd5f6c4871908b8ed073f92e3c6c1d7fbcf220c9c3322390fedc8ba5533777a81f4874904e4e928198703af2c26d11eb3e44743c7ea95522260130ab295b4e56c2339d6572f67314aa80cbddc499411df85091ceafdf4f2e129fd06d0f46aa6:d2d1afbc24d09ec8ed76cef10e627218","lastUsedAt":null,"expiresAt":null,"lifespan":null,"createdAt":"2025-08-04T09:57:26.974Z","updatedAt":"2025-08-04T09:57:26.974Z","publishedAt":"2025-08-04T09:57:26.975Z","locale":null}}
|
||||
{"type":"admin::api-token","id":4,"data":{"documentId":"wcovv3nk97v9rsyqpgxg35ww","name":"Read Only","description":"A default API token with read-only permissions, only used for accessing resources","type":"read-only","accessKey":"07160ea5989a8508a23a9c9183437f521aa08821b7353ac270b575bfa335c9ce031985b01edda8e73d25c35526b2408279f8beef9159b4e2a1df4143fca4d463","encryptedKey":"v1:3d5faf5d7da4af2c9fc3ecdd59a6ad25:13bf02f283d47df869dee7208896c06a172d941006f08b8f8a8717bfe668e6863389cd07517fd4864187fdc4ce1e88cff25a277ed425faf73f4c4a271577b3214a407b87cef64ea7a118b634ac6db6b97a883731699d9b45da0e2c50fc583f7143d1c2d166a89f24fc67b03ca878df0e349b5d36683e7dcef31f1d6057178a3410a50e7d78e33e8a157262df4afb4e075f9900cce6414d498912f2de49001a6ff975bd73ad360b1d4152bb185a929ca33fa40c696a4f61d1bbd032bede93baec28918cab4a76c2a6287e8dfe2005519f4ef890b56c7807386beb96e9de052a746548e6379a8f4c2d372817097d55dd007faaa340706f3f9dc95227f171470f0d:5d9b4812bbf7978e151b0a3aac0ef66b","lastUsedAt":null,"expiresAt":null,"lifespan":null,"createdAt":"2025-08-04T09:58:02.275Z","updatedAt":"2025-08-04T09:58:02.275Z","publishedAt":"2025-08-04T09:58:02.275Z","locale":null}}
|
||||
{"type":"admin::transfer-token","id":2,"data":{"documentId":"pz45t8kyuy770f2saqh8r7pr","name":"TestToken","description":"Transfer token used to seed the e2e database","accessKey":"4ea6199254a8f88a844485e6fd11ebb94011705e3596de19513767df21c55ab45c178ac802b4b45164adafab0f0709ffb320d31c0d99f969514208bc26b5e323","lastUsedAt":null,"expiresAt":null,"lifespan":null,"createdAt":"2024-04-10T09:23:52.148Z","updatedAt":"2024-04-10T09:23:52.148Z","publishedAt":"2024-04-10T09:23:52.148Z","locale":null}}
|
||||
{"type":"admin::transfer-token","id":3,"data":{"documentId":"fq86j9p8eysnpzjovfpngg66","name":"TestToken","description":"Transfer token used to seed the e2e database","accessKey":"29cb5d5e729af535d7f82c9e37f570779e637a49e4455b960e285a0574a37a8ed515964e519dc9519ec325a61cedafb1947e19329bd546991ec619796c1ab2e0","lastUsedAt":null,"expiresAt":null,"lifespan":null,"createdAt":"2024-04-10T10:11:10.843Z","updatedAt":"2024-04-10T10:11:10.843Z","publishedAt":"2024-04-10T10:11:10.843Z","locale":null}}
|
||||
{"type":"admin::transfer-token","id":4,"data":{"documentId":"zoxydueeqv8lnv5vzk59b2bt","name":"TestToken","description":"Transfer token used to seed the e2e database","accessKey":"4eb274bb6e94c0546354395fbb2b763e95fc488f1f4154c7db1dad21f1aeaed0b8130752f2139c7bfb6401e43b90394eaa868befa0fce5cecad25f08ed0c1ffd","lastUsedAt":null,"expiresAt":null,"lifespan":null,"createdAt":"2024-04-10T13:10:36.934Z","updatedAt":"2024-04-10T13:10:36.934Z","publishedAt":"2024-04-10T13:10:36.934Z","locale":null}}
|
||||
{"type":"admin::transfer-token","id":5,"data":{"documentId":"vz9xzi8w95u58dq43afpm2f1","name":"TestToken","description":"Transfer token used to seed the e2e database","accessKey":"6d5d65ca867c8f703ddf628cff5b4f71c059cb07bd124155409f915ec815eb3363d4ab323028ff6edbf9edce58e449feb034b6a56af71db73d772599e36465f4","lastUsedAt":null,"expiresAt":null,"lifespan":null,"createdAt":"2024-06-04T12:55:52.449Z","updatedAt":"2024-06-04T12:55:52.449Z","publishedAt":"2024-06-04T12:55:52.449Z","locale":null}}
|
||||
{"type":"admin::transfer-token","id":6,"data":{"documentId":"uu8j24dta9cvr5g6k5nsaa6w","name":"TestToken","description":"Transfer token used to seed the e2e database","accessKey":"75ed4b3546ff20a14ffa088adf13824b2c87c04ed094cffb05bf60c93100c28e64a8df10d390f25f680549f82f23a2bbc25084e8164c9fbaa767f377ac710110","lastUsedAt":null,"expiresAt":null,"lifespan":null,"createdAt":"2024-06-04T15:47:46.545Z","updatedAt":"2024-06-04T15:47:46.545Z","publishedAt":"2024-06-04T15:47:46.545Z","locale":null}}
|
||||
{"type":"admin::transfer-token","id":7,"data":{"documentId":"cm80c7ackzdtct3u1vbaznuw","name":"TestToken","description":"Transfer token used to seed the e2e database","accessKey":"2ce00165791c5a923cea9893c05b010ca29b9585b38aad2f94a5068ef6b67a2a545fcfa842e77d2fd7e4c016f34620ba6664cbeb867b4384843c756f02b93935","lastUsedAt":null,"expiresAt":null,"lifespan":null,"createdAt":"2024-07-02T14:33:42.685Z","updatedAt":"2024-07-02T14:33:42.685Z","publishedAt":"2024-07-02T14:33:42.685Z","locale":null}}
|
||||
{"type":"admin::transfer-token","id":8,"data":{"documentId":"o9mxhbai32hpfme8cjren223","name":"TestToken","description":"Transfer token used to seed the e2e database","accessKey":"98a55821a5f3010d0ee159e473df8ce77a00caaf7b3f45ffb37eabdd73b134ca84b9b6104f843f5e6f9341d0f9817dee6fcf03aca4970b0812f0fa0f848d4240","lastUsedAt":null,"expiresAt":null,"lifespan":null,"createdAt":"2024-10-23T15:45:29.743Z","updatedAt":"2024-10-23T15:45:29.743Z","publishedAt":"2024-10-23T15:45:29.744Z","locale":null}}
|
||||
{"type":"admin::transfer-token","id":9,"data":{"documentId":"wtsfeh6kzx7x5yoc4qjhpbx4","name":"TestToken","description":"Transfer token used to seed the e2e database","accessKey":"d6bbef3e4d0ff3aaa40732f9d37664e0f56be81c624834e379e05b2cf87d6f8a493acf7486c102e465e15a4a49896004d3c98af0a9167413e96b6790c1585083","lastUsedAt":null,"expiresAt":null,"lifespan":null,"createdAt":"2024-11-08T09:05:10.306Z","updatedAt":"2024-11-08T09:05:10.306Z","publishedAt":"2024-11-08T09:05:10.306Z","locale":null}}
|
||||
{"type":"admin::transfer-token","id":10,"data":{"documentId":"lkgp3deqgjaeaho8b6c27gud","name":"TestToken","description":"Transfer token used to seed the e2e database","accessKey":"72e73cb6a7e06e9b91c070db129a4e7c46d31bd2fb7fb1403948f91f57174e984c6c8124c319d3e6169fb1e3eac49268cfb236786e2fb65140b1705f9971e348","lastUsedAt":null,"expiresAt":null,"lifespan":null,"createdAt":"2024-12-12T15:58:20.904Z","updatedAt":"2024-12-12T15:58:20.904Z","publishedAt":"2024-12-12T15:58:20.904Z","locale":null}}
|
||||
{"type":"admin::transfer-token","id":11,"data":{"documentId":"wfu667pqg0vcbljy2jl8f4b3","name":"TestToken","description":"Transfer token used to seed the e2e database","accessKey":"bf782c11698d2620400a207cbb05a929e3cfb227bf885bc4e0963b3a0222077884f7345b262956cb30e1cad6638e6e9b51c2ed67fb236298afaf5e5965fe350b","lastUsedAt":null,"expiresAt":null,"lifespan":null,"createdAt":"2025-02-12T16:03:46.806Z","updatedAt":"2025-02-12T16:03:46.806Z","publishedAt":"2025-02-12T16:03:46.806Z","locale":null}}
|
||||
{"type":"admin::transfer-token","id":12,"data":{"documentId":"zk29n63rxzpjsqc78vox09ox","name":"TestToken","description":"Transfer token used to seed the e2e database","accessKey":"6bfccdcbeeaf5f90c5cb5b33669e3a4988b21a2d995e774b2cd9597ff893e86362c8d14bcc28c5f2dbabcf1f9ee2d08f0768caa7791f07abf61290a193585078","lastUsedAt":null,"expiresAt":null,"lifespan":null,"createdAt":"2025-02-27T10:27:16.366Z","updatedAt":"2025-02-27T10:27:16.366Z","publishedAt":"2025-02-27T10:27:16.366Z","locale":null}}
|
||||
{"type":"admin::transfer-token","id":13,"data":{"documentId":"agp613lcxbu1pvk1m0jdj4og","name":"TestToken","description":"Transfer token used to seed the e2e database","accessKey":"050aa955815b9a3a2dc3e0f89d99ac8d269b4edeaa27693ebc2a2db407ef0f35ea07fac2435b3c8fdc1625fb977270a59521f06ccfbf69756348f60b5fe63cd2","lastUsedAt":null,"expiresAt":null,"lifespan":null,"createdAt":"2025-02-27T10:46:07.411Z","updatedAt":"2025-02-27T10:46:07.411Z","publishedAt":"2025-02-27T10:46:07.411Z","locale":null}}
|
||||
{"type":"admin::transfer-token","id":14,"data":{"documentId":"d9dpsdcoylpy56neagnpv680","name":"TestToken","description":"Transfer token used to seed the e2e database","accessKey":"c57ca67fb991f67c5bb47050b272a0fddf5ad985c183a76133c444d09c7b57f632d88543a395cee72db623b1e8df40d09dfd58381d4de7106f8955dd1f1c73f5","lastUsedAt":null,"expiresAt":null,"lifespan":null,"createdAt":"2025-02-28T14:47:07.676Z","updatedAt":"2025-02-28T14:47:07.676Z","publishedAt":"2025-02-28T14:47:07.677Z","locale":null}}
|
||||
{"type":"admin::transfer-token","id":15,"data":{"documentId":"xuflqg1tq9rkg5hhpn7f0f34","name":"TestToken","description":"Transfer token used to seed the e2e database","accessKey":"b8bc6e85b6ec3a9aa8cafa7c5e7ee332dd627cc9713be25a74b41ece340889c2fc754b52653da738856c9c82b4e55da0db9c6bbc73260a71f9bb3f5e317874c6","lastUsedAt":null,"expiresAt":null,"lifespan":null,"createdAt":"2025-06-11T13:43:02.679Z","updatedAt":"2025-06-11T13:43:02.679Z","publishedAt":"2025-06-11T13:43:02.679Z","locale":null}}
|
||||
{"type":"admin::transfer-token","id":16,"data":{"documentId":"a9d8hut8z0w8nkejh42o2e6t","name":"TestToken","description":"Transfer token used to seed the e2e database","accessKey":"d346f7fa6e2396ef9d01c59d7e60606ca55f23c7a5c3858229bb436af3fa47f9b276a1e9a8c9b9073430a570e2b8f0109006d56a045371231711ae16fb6416fc","lastUsedAt":null,"expiresAt":null,"lifespan":null,"createdAt":"2025-06-11T14:33:02.996Z","updatedAt":"2025-06-11T14:33:02.996Z","publishedAt":"2025-06-11T14:33:02.996Z","locale":null}}
|
||||
{"type":"admin::transfer-token","id":17,"data":{"documentId":"dyrcjutg2ryi8yyevqlm3kqv","name":"TestToken","description":"Transfer token used to seed the e2e database","accessKey":"2cacb8566ec69b384d50eabdd7a2c0f9611be1356aef4c9b179e818232e20e5f6b57f1f0d387385378732ecdb0e87875fb4552183a59179f9f5bc9e4445e17aa","lastUsedAt":null,"expiresAt":null,"lifespan":null,"createdAt":"2025-06-11T14:53:30.357Z","updatedAt":"2025-06-11T14:53:30.357Z","publishedAt":"2025-06-11T14:53:30.358Z","locale":null}}
|
||||
{"type":"admin::transfer-token","id":18,"data":{"documentId":"z5890bb0t0xk42ha9i9h6b08","name":"TestToken","description":"Transfer token used to seed the e2e database","accessKey":"3e32a9be688ef87daa162d79d962736ce4bcfda9fb8f1c5476f32a1f1f6758afdf4bf703d8d83e8abe638996347f6e6b76259f9289335661831cc78b81996b35","lastUsedAt":null,"expiresAt":null,"lifespan":null,"createdAt":"2025-06-16T08:44:30.928Z","updatedAt":"2025-06-16T08:44:30.928Z","publishedAt":"2025-06-16T08:44:30.929Z","locale":null}}
|
||||
{"type":"admin::transfer-token","id":19,"data":{"documentId":"eqnvi0kn8h9h4ukk7yoy681n","name":"TestToken","description":"Transfer token used to seed the e2e database","accessKey":"39798a20d2e969f244d442a0c4f75372e558fb44215ed20a585c1aa693837e4e6119fd3c429504dfb588e3475e23e9b48d4155f4214298e35ae858ecc79fe1b7","lastUsedAt":null,"expiresAt":null,"lifespan":null,"createdAt":"2025-06-16T08:50:24.558Z","updatedAt":"2025-06-16T08:50:24.558Z","publishedAt":"2025-06-16T08:50:24.558Z","locale":null}}
|
||||
{"type":"admin::transfer-token","id":20,"data":{"documentId":"coc5m4tyu6yu5q17qc9dewqu","name":"TestToken","description":"Transfer token used to seed the e2e database","accessKey":"4a61ddc6e796997abd258bc41062dc0c08ce601a894e124ad5d5c1e7d0d2a5a36f49f16da58be1b6d4c16102bb2fc4be1fafcac7784929e51277850684bbfa4c","lastUsedAt":null,"expiresAt":null,"lifespan":null,"createdAt":"2025-06-30T09:24:55.032Z","updatedAt":"2025-06-30T09:24:55.032Z","publishedAt":"2025-06-30T09:24:55.033Z","locale":null}}
|
||||
{"type":"admin::transfer-token","id":21,"data":{"documentId":"y5rh21w6s6436qwrlf5053ax","name":"TestToken","description":"Transfer token used to seed the e2e database","accessKey":"44797a80d4fe00aa4060388c236926230ff9c077c591fabd5b43b0e7b6f586296005e56afaf1898c83275b23474cbfdbf1568f9c061a3c6910a9005e2a02c177","lastUsedAt":null,"expiresAt":null,"lifespan":null,"createdAt":"2025-07-19T20:23:35.531Z","updatedAt":"2025-07-19T20:23:35.531Z","publishedAt":"2025-07-19T20:23:35.531Z","locale":null}}
|
||||
{"type":"admin::transfer-token","id":22,"data":{"documentId":"pw025r6dvco831iyu1cjouri","name":"TestToken","description":"Transfer token used to seed the e2e database","accessKey":"91bc99d360c10671298864318a9d5a1f4035e7f3f3d976d386b217cfb4914c37ad522d90888da833ed8db4d6b62a7da837a2670379cf8aca07e7ef2bdfd7a7ba","lastUsedAt":null,"expiresAt":null,"lifespan":null,"createdAt":"2025-07-19T20:35:54.902Z","updatedAt":"2025-07-19T20:35:54.902Z","publishedAt":"2025-07-19T20:35:54.902Z","locale":null}}
|
||||
{"type":"admin::transfer-token","id":23,"data":{"documentId":"xg0pf7uavqs2edsb66aiami6","name":"TestToken","description":"Transfer token used to seed the e2e database","accessKey":"329957cdb2a7b898f12a5a4a9756ff787903c4e7ea94dbdf94e59ababbcd42cc813af624a171ffdaeb5f49c64ed092bb30a09a807774ffea8b29b89f8801f413","lastUsedAt":null,"expiresAt":null,"lifespan":null,"createdAt":"2025-08-04T09:54:05.861Z","updatedAt":"2025-08-04T09:54:05.861Z","publishedAt":"2025-08-04T09:54:05.861Z","locale":null}}
|
||||
@@ -0,0 +1,444 @@
|
||||
{"kind":"relation.morph","relation":"morphToMany","left":{"type":"plugin::upload.file","field":"related","ref":1},"right":{"ref":1,"pos":1,"type":"api::author.author","field":"profile"}}
|
||||
{"kind":"relation.morph","relation":"morphToMany","left":{"type":"plugin::upload.file","field":"related","ref":2},"right":{"ref":2,"pos":1,"type":"api::author.author","field":"profile"}}
|
||||
{"kind":"relation.morph","relation":"morphToMany","left":{"type":"plugin::upload.file","field":"related","ref":3},"right":{"ref":3,"pos":1,"type":"api::author.author","field":"profile"}}
|
||||
{"kind":"relation.morph","relation":"morphToMany","left":{"type":"plugin::upload.file","field":"related","ref":5},"right":{"ref":1,"pos":1,"type":"api::product.product","field":"images"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"plugin::upload.file","ref":7,"field":"localizations"},"right":{"type":"plugin::upload.file","ref":"a6qqts03n4xcvnhxmht7rbbo"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"plugin::upload.file","ref":8,"field":"localizations"},"right":{"type":"plugin::upload.file","ref":"eabpa7bss9oeic2b0p9ra26i"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"plugin::upload.file","ref":5,"field":"localizations"},"right":{"type":"plugin::upload.file","ref":"g70g6ouv42nhuwp8f4reqygm"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"plugin::upload.file","ref":2,"field":"localizations"},"right":{"type":"plugin::upload.file","ref":"hhdhuga5xrfejcxl87oh2h3b"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"plugin::upload.file","ref":6,"field":"localizations"},"right":{"type":"plugin::upload.file","ref":"r3lfvvexy67a6p7gko0kkthw"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"plugin::upload.file","ref":9,"field":"localizations"},"right":{"type":"plugin::upload.file","ref":"uqrgd5vtekdxse6pwtps71fc"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"plugin::upload.file","ref":1,"field":"localizations"},"right":{"type":"plugin::upload.file","ref":"uwanb6kb3mhl1i0y0daeng8q"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"plugin::upload.file","ref":3,"field":"localizations"},"right":{"type":"plugin::upload.file","ref":"zrs50ucydlt9ngjfkiyvf3vj"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"plugin::upload.file","ref":4,"field":"localizations"},"right":{"type":"plugin::upload.file","ref":"zzewfi4u1wuz6ecqujs2u36t"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"plugin::i18n.locale","ref":4,"field":"localizations"},"right":{"type":"plugin::i18n.locale","ref":"b48gxt9swrg5yqaio8dnxyok"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"plugin::i18n.locale","ref":2,"field":"localizations"},"right":{"type":"plugin::i18n.locale","ref":"g7hokt8r3dmkkgyvwo21dtar"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"plugin::i18n.locale","ref":3,"field":"localizations"},"right":{"type":"plugin::i18n.locale","ref":"hnxaa62m0z7ny1ymyuxl0myw"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"plugin::i18n.locale","ref":5,"field":"localizations"},"right":{"type":"plugin::i18n.locale","ref":"qa5jcmelnye4elkmcemxrokx"}}
|
||||
{"kind":"relation.basic","relation":"oneToOne","left":{"type":"plugin::content-releases.release","ref":1,"field":"createdBy"},"right":{"type":"admin::user","ref":1}}
|
||||
{"kind":"relation.basic","relation":"oneToOne","left":{"type":"plugin::content-releases.release","ref":2,"field":"createdBy"},"right":{"type":"admin::user","ref":1}}
|
||||
{"kind":"relation.basic","relation":"oneToOne","left":{"type":"plugin::content-releases.release","ref":1,"field":"updatedBy"},"right":{"type":"admin::user","ref":1}}
|
||||
{"kind":"relation.basic","relation":"oneToOne","left":{"type":"plugin::content-releases.release","ref":2,"field":"updatedBy"},"right":{"type":"admin::user","ref":1}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"plugin::content-releases.release","ref":2,"field":"localizations"},"right":{"type":"plugin::content-releases.release","ref":"euyyjkf0ozc9wrtiyaqbroet"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"plugin::content-releases.release","ref":1,"field":"localizations"},"right":{"type":"plugin::content-releases.release","ref":"nr8n0xyy8r8efj77sxh9lze7"}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"plugin::content-releases.release-action","field":"release","ref":1},"right":{"type":"plugin::content-releases.release","field":"actions","ref":1,"pos":1}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"plugin::content-releases.release-action","field":"release","ref":2},"right":{"type":"plugin::content-releases.release","field":"actions","ref":1,"pos":2}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"plugin::content-releases.release-action","field":"release","ref":3},"right":{"type":"plugin::content-releases.release","field":"actions","ref":1,"pos":3}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"plugin::content-releases.release-action","field":"release","ref":4},"right":{"type":"plugin::content-releases.release","field":"actions","ref":1,"pos":4}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"plugin::content-releases.release-action","ref":2,"field":"localizations"},"right":{"type":"plugin::content-releases.release-action","ref":"aqbg2x2anv08ejelejxavmmw"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"plugin::content-releases.release-action","ref":3,"field":"localizations"},"right":{"type":"plugin::content-releases.release-action","ref":"d31jop4cyrs9v74latd5ubw1"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"plugin::content-releases.release-action","ref":1,"field":"localizations"},"right":{"type":"plugin::content-releases.release-action","ref":"gq9gkejg5yua4zw3dlxo5pnj"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"plugin::content-releases.release-action","ref":4,"field":"localizations"},"right":{"type":"plugin::content-releases.release-action","ref":"l3dstk0riohzplig8ayi4yxx"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"plugin::review-workflows.workflow","ref":2,"field":"localizations"},"right":{"type":"plugin::review-workflows.workflow","ref":"k8docpzjkofyrmevl0n4e8wl"}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"plugin::review-workflows.workflow-stage","field":"workflow","ref":5},"right":{"type":"plugin::review-workflows.workflow","field":"stages","ref":2,"pos":1}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"plugin::review-workflows.workflow-stage","field":"workflow","ref":6},"right":{"type":"plugin::review-workflows.workflow","field":"stages","ref":2,"pos":2}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"plugin::review-workflows.workflow-stage","field":"workflow","ref":7},"right":{"type":"plugin::review-workflows.workflow","field":"stages","ref":2,"pos":3}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"plugin::review-workflows.workflow-stage","field":"workflow","ref":8},"right":{"type":"plugin::review-workflows.workflow","field":"stages","ref":2,"pos":4}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"plugin::review-workflows.workflow-stage","ref":6,"field":"localizations"},"right":{"type":"plugin::review-workflows.workflow-stage","ref":"et3njgpk6m8mug2zqsk4pnrm"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"plugin::review-workflows.workflow-stage","ref":8,"field":"localizations"},"right":{"type":"plugin::review-workflows.workflow-stage","ref":"jfkexoeih1r409jm8c9xoxtl"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"plugin::review-workflows.workflow-stage","ref":5,"field":"localizations"},"right":{"type":"plugin::review-workflows.workflow-stage","ref":"kfm5c1eoapccdqxuvzbmucac"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"plugin::review-workflows.workflow-stage","ref":7,"field":"localizations"},"right":{"type":"plugin::review-workflows.workflow-stage","ref":"zbvm4y3uixtdtuucuqla3an4"}}
|
||||
{"kind":"relation.basic","relation":"manyToMany","left":{"type":"api::article.article","field":"authors","ref":3,"pos":0},"right":{"type":"api::author.author","field":"articles","ref":2,"pos":1}}
|
||||
{"kind":"relation.basic","relation":"manyToMany","left":{"type":"api::article.article","field":"authors","ref":4,"pos":0},"right":{"type":"api::author.author","field":"articles","ref":1,"pos":1}}
|
||||
{"kind":"relation.basic","relation":"manyToMany","left":{"type":"api::article.article","field":"authors","ref":2,"pos":1},"right":{"type":"api::author.author","field":"articles","ref":2,"pos":2}}
|
||||
{"kind":"relation.basic","relation":"oneToOne","left":{"type":"api::article.article","ref":2,"field":"updatedBy"},"right":{"type":"admin::user","ref":1}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"api::article.article","ref":4,"field":"localizations"},"right":{"type":"api::article.article","ref":"godf1ydha4qvrc8zh4mj7b5o"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"api::article.article","ref":3,"field":"localizations"},"right":{"type":"api::article.article","ref":"hb93u89b3ik5gn2l2t65y9m2"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"api::article.article","ref":2,"field":"localizations"},"right":{"type":"api::article.article","ref":"ogfddwp9po1qyr6mesw8nv47"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"api::article.article","ref":1,"field":"localizations"},"right":{"type":"api::article.article","ref":"va0x2nt206hluydibmsoiquc"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"api::author.author","ref":3,"field":"localizations"},"right":{"type":"api::author.author","ref":"bubei9f0c7fdbaca1fg8wi84"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"api::author.author","ref":1,"field":"localizations"},"right":{"type":"api::author.author","ref":"jrpc2ynqxabgg7o4boi85tc5"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"api::author.author","ref":2,"field":"localizations"},"right":{"type":"api::author.author","ref":"k3g1cnivj4jfb5o0sba2i44l"}}
|
||||
{"kind":"relation.basic","relation":"oneToOne","left":{"type":"api::product.product","ref":2,"field":"createdBy"},"right":{"type":"admin::user","ref":1}}
|
||||
{"kind":"relation.basic","relation":"oneToOne","left":{"type":"api::product.product","ref":3,"field":"createdBy"},"right":{"type":"admin::user","ref":1}}
|
||||
{"kind":"relation.basic","relation":"oneToOne","left":{"type":"api::product.product","ref":2,"field":"updatedBy"},"right":{"type":"admin::user","ref":1}}
|
||||
{"kind":"relation.basic","relation":"oneToOne","left":{"type":"api::product.product","ref":3,"field":"updatedBy"},"right":{"type":"admin::user","ref":1}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"api::product.product","ref":3,"field":"localizations"},"right":{"type":"api::product.product","ref":"juhc4d9v0p7c0s0t2x26ttq4"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"api::product.product","ref":1,"field":"localizations"},"right":{"type":"api::product.product","ref":"knwsu5bwoadztukt2e713e0t"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"api::product.product","ref":2,"field":"localizations"},"right":{"type":"api::product.product","ref":"z46e6cvmleooi4t4z01stwhr"}}
|
||||
{"kind":"relation.basic","relation":"oneToOne","left":{"type":"api::shop.shop","ref":1,"field":"updatedBy"},"right":{"type":"admin::user","ref":1}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"api::shop.shop","ref":1,"field":"localizations"},"right":{"type":"api::shop.shop","ref":"tmr77kx65hf5c3jzctk2sigw"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"api::upcoming-match.upcoming-match","ref":1,"field":"localizations"},"right":{"type":"api::upcoming-match.upcoming-match","ref":"q7kamuurd3urqj6y1ps0rki0"}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":273},"right":{"type":"admin::role","field":"permissions","ref":5,"pos":1}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":274},"right":{"type":"admin::role","field":"permissions","ref":5,"pos":2}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":275},"right":{"type":"admin::role","field":"permissions","ref":5,"pos":4}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":276},"right":{"type":"admin::role","field":"permissions","ref":5,"pos":5}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":277},"right":{"type":"admin::role","field":"permissions","ref":5,"pos":6}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":278},"right":{"type":"admin::role","field":"permissions","ref":5,"pos":8}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":279},"right":{"type":"admin::role","field":"permissions","ref":5,"pos":9}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":280},"right":{"type":"admin::role","field":"permissions","ref":5,"pos":10}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":281},"right":{"type":"admin::role","field":"permissions","ref":5,"pos":12}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":282},"right":{"type":"admin::role","field":"permissions","ref":5,"pos":14}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":283},"right":{"type":"admin::role","field":"permissions","ref":5,"pos":21}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":284},"right":{"type":"admin::role","field":"permissions","ref":5,"pos":22}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":285},"right":{"type":"admin::role","field":"permissions","ref":5,"pos":23}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":286},"right":{"type":"admin::role","field":"permissions","ref":5,"pos":24}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":287},"right":{"type":"admin::role","field":"permissions","ref":5,"pos":25}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":288},"right":{"type":"admin::role","field":"permissions","ref":5,"pos":26}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":289},"right":{"type":"admin::role","field":"permissions","ref":6,"pos":17}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":290},"right":{"type":"admin::role","field":"permissions","ref":6,"pos":18}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":291},"right":{"type":"admin::role","field":"permissions","ref":6,"pos":19}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":292},"right":{"type":"admin::role","field":"permissions","ref":6,"pos":20}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":293},"right":{"type":"admin::role","field":"permissions","ref":6,"pos":21}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":294},"right":{"type":"admin::role","field":"permissions","ref":6,"pos":22}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":295},"right":{"type":"admin::role","field":"permissions","ref":4,"pos":1}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":296},"right":{"type":"admin::role","field":"permissions","ref":4,"pos":3}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":297},"right":{"type":"admin::role","field":"permissions","ref":4,"pos":6}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":298},"right":{"type":"admin::role","field":"permissions","ref":4,"pos":8}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":299},"right":{"type":"admin::role","field":"permissions","ref":4,"pos":11}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":300},"right":{"type":"admin::role","field":"permissions","ref":4,"pos":13}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":301},"right":{"type":"admin::role","field":"permissions","ref":4,"pos":16}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":302},"right":{"type":"admin::role","field":"permissions","ref":4,"pos":18}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":303},"right":{"type":"admin::role","field":"permissions","ref":4,"pos":26}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":304},"right":{"type":"admin::role","field":"permissions","ref":4,"pos":27}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":305},"right":{"type":"admin::role","field":"permissions","ref":4,"pos":28}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":306},"right":{"type":"admin::role","field":"permissions","ref":4,"pos":29}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":307},"right":{"type":"admin::role","field":"permissions","ref":4,"pos":30}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":308},"right":{"type":"admin::role","field":"permissions","ref":4,"pos":31}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":309},"right":{"type":"admin::role","field":"permissions","ref":4,"pos":32}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":310},"right":{"type":"admin::role","field":"permissions","ref":4,"pos":33}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":311},"right":{"type":"admin::role","field":"permissions","ref":4,"pos":34}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":312},"right":{"type":"admin::role","field":"permissions","ref":4,"pos":35}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":313},"right":{"type":"admin::role","field":"permissions","ref":4,"pos":36}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":314},"right":{"type":"admin::role","field":"permissions","ref":4,"pos":37}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":315},"right":{"type":"admin::role","field":"permissions","ref":4,"pos":38}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":316},"right":{"type":"admin::role","field":"permissions","ref":4,"pos":39}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":317},"right":{"type":"admin::role","field":"permissions","ref":4,"pos":40}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":318},"right":{"type":"admin::role","field":"permissions","ref":4,"pos":41}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":319},"right":{"type":"admin::role","field":"permissions","ref":4,"pos":42}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":320},"right":{"type":"admin::role","field":"permissions","ref":4,"pos":43}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":321},"right":{"type":"admin::role","field":"permissions","ref":4,"pos":44}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":322},"right":{"type":"admin::role","field":"permissions","ref":4,"pos":45}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":323},"right":{"type":"admin::role","field":"permissions","ref":4,"pos":46}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":324},"right":{"type":"admin::role","field":"permissions","ref":4,"pos":47}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":325},"right":{"type":"admin::role","field":"permissions","ref":4,"pos":48}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":326},"right":{"type":"admin::role","field":"permissions","ref":4,"pos":49}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":327},"right":{"type":"admin::role","field":"permissions","ref":4,"pos":50}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":328},"right":{"type":"admin::role","field":"permissions","ref":4,"pos":51}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":329},"right":{"type":"admin::role","field":"permissions","ref":4,"pos":52}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":330},"right":{"type":"admin::role","field":"permissions","ref":4,"pos":53}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":331},"right":{"type":"admin::role","field":"permissions","ref":4,"pos":54}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":332},"right":{"type":"admin::role","field":"permissions","ref":4,"pos":55}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":333},"right":{"type":"admin::role","field":"permissions","ref":4,"pos":56}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":334},"right":{"type":"admin::role","field":"permissions","ref":4,"pos":57}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":335},"right":{"type":"admin::role","field":"permissions","ref":4,"pos":58}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":336},"right":{"type":"admin::role","field":"permissions","ref":4,"pos":59}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":337},"right":{"type":"admin::role","field":"permissions","ref":4,"pos":60}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":338},"right":{"type":"admin::role","field":"permissions","ref":4,"pos":61}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":339},"right":{"type":"admin::role","field":"permissions","ref":4,"pos":62}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":340},"right":{"type":"admin::role","field":"permissions","ref":4,"pos":63}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":341},"right":{"type":"admin::role","field":"permissions","ref":4,"pos":64}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":342},"right":{"type":"admin::role","field":"permissions","ref":4,"pos":65}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":343},"right":{"type":"admin::role","field":"permissions","ref":4,"pos":66}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":344},"right":{"type":"admin::role","field":"permissions","ref":4,"pos":67}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":345},"right":{"type":"admin::role","field":"permissions","ref":4,"pos":68}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":346},"right":{"type":"admin::role","field":"permissions","ref":4,"pos":69}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":347},"right":{"type":"admin::role","field":"permissions","ref":4,"pos":70}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":348},"right":{"type":"admin::role","field":"permissions","ref":4,"pos":71}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":349},"right":{"type":"admin::role","field":"permissions","ref":4,"pos":72}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":350},"right":{"type":"admin::role","field":"permissions","ref":4,"pos":73}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":351},"right":{"type":"admin::role","field":"permissions","ref":4,"pos":74}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":352},"right":{"type":"admin::role","field":"permissions","ref":4,"pos":75}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":353},"right":{"type":"admin::role","field":"permissions","ref":4,"pos":76}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":354},"right":{"type":"admin::role","field":"permissions","ref":4,"pos":77}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":355},"right":{"type":"admin::role","field":"permissions","ref":4,"pos":78}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":356},"right":{"type":"admin::role","field":"permissions","ref":4,"pos":79}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":357},"right":{"type":"admin::role","field":"permissions","ref":4,"pos":80}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":358},"right":{"type":"admin::role","field":"permissions","ref":4,"pos":81}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":359},"right":{"type":"admin::role","field":"permissions","ref":4,"pos":82}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":360},"right":{"type":"admin::role","field":"permissions","ref":4,"pos":83}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":361},"right":{"type":"admin::role","field":"permissions","ref":4,"pos":84}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":362},"right":{"type":"admin::role","field":"permissions","ref":4,"pos":85}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":363},"right":{"type":"admin::role","field":"permissions","ref":4,"pos":86}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":364},"right":{"type":"admin::role","field":"permissions","ref":4,"pos":102}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":365},"right":{"type":"admin::role","field":"permissions","ref":4,"pos":104}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":366},"right":{"type":"admin::role","field":"permissions","ref":4,"pos":132}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":367},"right":{"type":"admin::role","field":"permissions","ref":4,"pos":233}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":368},"right":{"type":"admin::role","field":"permissions","ref":4,"pos":234}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":369},"right":{"type":"admin::role","field":"permissions","ref":4,"pos":235}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":370},"right":{"type":"admin::role","field":"permissions","ref":4,"pos":236}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":371},"right":{"type":"admin::role","field":"permissions","ref":4,"pos":237}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":372},"right":{"type":"admin::role","field":"permissions","ref":4,"pos":238}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":373},"right":{"type":"admin::role","field":"permissions","ref":4,"pos":239}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":374},"right":{"type":"admin::role","field":"permissions","ref":4,"pos":240}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":375},"right":{"type":"admin::role","field":"permissions","ref":4,"pos":241}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":376},"right":{"type":"admin::role","field":"permissions","ref":4,"pos":242}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":377},"right":{"type":"admin::role","field":"permissions","ref":4,"pos":243}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":378},"right":{"type":"admin::role","field":"permissions","ref":4,"pos":244}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":379},"right":{"type":"admin::role","field":"permissions","ref":4,"pos":245}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":380},"right":{"type":"admin::role","field":"permissions","ref":4,"pos":246}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":381},"right":{"type":"admin::role","field":"permissions","ref":4,"pos":250}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":382},"right":{"type":"admin::role","field":"permissions","ref":4,"pos":251}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":383},"right":{"type":"admin::role","field":"permissions","ref":4,"pos":252}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":384},"right":{"type":"admin::role","field":"permissions","ref":4,"pos":253}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":385},"right":{"type":"admin::role","field":"permissions","ref":4,"pos":254}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":386},"right":{"type":"admin::role","field":"permissions","ref":4,"pos":255}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":387},"right":{"type":"admin::role","field":"permissions","ref":4,"pos":256}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":388},"right":{"type":"admin::role","field":"permissions","ref":4,"pos":257}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":389},"right":{"type":"admin::role","field":"permissions","ref":4,"pos":260}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":390},"right":{"type":"admin::role","field":"permissions","ref":4,"pos":261}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":391},"right":{"type":"admin::role","field":"permissions","ref":4,"pos":262}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":392},"right":{"type":"admin::role","field":"permissions","ref":4,"pos":263}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":393},"right":{"type":"admin::role","field":"permissions","ref":4,"pos":264}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":394},"right":{"type":"admin::role","field":"permissions","ref":4,"pos":265}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":395},"right":{"type":"admin::role","field":"permissions","ref":4,"pos":266}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":396},"right":{"type":"admin::role","field":"permissions","ref":4,"pos":267}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":397},"right":{"type":"admin::role","field":"permissions","ref":4,"pos":268}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":398},"right":{"type":"admin::role","field":"permissions","ref":4,"pos":269}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":399},"right":{"type":"admin::role","field":"permissions","ref":6,"pos":23}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":400},"right":{"type":"admin::role","field":"permissions","ref":6,"pos":24}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":401},"right":{"type":"admin::role","field":"permissions","ref":6,"pos":25}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":402},"right":{"type":"admin::role","field":"permissions","ref":6,"pos":26}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":403},"right":{"type":"admin::role","field":"permissions","ref":6,"pos":28}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":404},"right":{"type":"admin::role","field":"permissions","ref":6,"pos":29}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":405},"right":{"type":"admin::role","field":"permissions","ref":6,"pos":30}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":406},"right":{"type":"admin::role","field":"permissions","ref":6,"pos":31}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":407},"right":{"type":"admin::role","field":"permissions","ref":6,"pos":32}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":408},"right":{"type":"admin::role","field":"permissions","ref":6,"pos":33}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":409},"right":{"type":"admin::role","field":"permissions","ref":4,"pos":273}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":410},"right":{"type":"admin::role","field":"permissions","ref":4,"pos":274}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":411},"right":{"type":"admin::role","field":"permissions","ref":4,"pos":275}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":412},"right":{"type":"admin::role","field":"permissions","ref":4,"pos":277}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":413},"right":{"type":"admin::role","field":"permissions","ref":4,"pos":279}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":414},"right":{"type":"admin::role","field":"permissions","ref":4,"pos":281}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":415},"right":{"type":"admin::role","field":"permissions","ref":4,"pos":282}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":416},"right":{"type":"admin::role","field":"permissions","ref":4,"pos":306}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":417},"right":{"type":"admin::role","field":"permissions","ref":4,"pos":308}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":418},"right":{"type":"admin::role","field":"permissions","ref":4,"pos":310}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":419},"right":{"type":"admin::role","field":"permissions","ref":4,"pos":312}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":420},"right":{"type":"admin::role","field":"permissions","ref":4,"pos":314}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":421},"right":{"type":"admin::role","field":"permissions","ref":4,"pos":316}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":422},"right":{"type":"admin::role","field":"permissions","ref":4,"pos":317}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":423},"right":{"type":"admin::role","field":"permissions","ref":4,"pos":318}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":424},"right":{"type":"admin::role","field":"permissions","ref":4,"pos":319}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":425},"right":{"type":"admin::role","field":"permissions","ref":4,"pos":320}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":426},"right":{"type":"admin::role","field":"permissions","ref":4,"pos":321}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":428},"right":{"type":"admin::role","field":"permissions","ref":4,"pos":323}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":430},"right":{"type":"admin::role","field":"permissions","ref":4,"pos":325}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":432},"right":{"type":"admin::role","field":"permissions","ref":4,"pos":327}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":433},"right":{"type":"admin::role","field":"permissions","ref":4,"pos":328}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":434},"right":{"type":"admin::role","field":"permissions","ref":4,"pos":329}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":435},"right":{"type":"admin::role","field":"permissions","ref":4,"pos":330}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":436},"right":{"type":"admin::role","field":"permissions","ref":4,"pos":331}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":437},"right":{"type":"admin::role","field":"permissions","ref":4,"pos":332}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":438},"right":{"type":"admin::role","field":"permissions","ref":4,"pos":333}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":439},"right":{"type":"admin::role","field":"permissions","ref":4,"pos":334}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":440},"right":{"type":"admin::role","field":"permissions","ref":4,"pos":335}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":441},"right":{"type":"admin::role","field":"permissions","ref":4,"pos":336}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":442},"right":{"type":"admin::role","field":"permissions","ref":4,"pos":337}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":443},"right":{"type":"admin::role","field":"permissions","ref":4,"pos":338}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":444},"right":{"type":"admin::role","field":"permissions","ref":4,"pos":339}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":445},"right":{"type":"admin::role","field":"permissions","ref":4,"pos":340}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":446},"right":{"type":"admin::role","field":"permissions","ref":4,"pos":341}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":447},"right":{"type":"admin::role","field":"permissions","ref":4,"pos":342}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":448},"right":{"type":"admin::role","field":"permissions","ref":4,"pos":343}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":449},"right":{"type":"admin::role","field":"permissions","ref":4,"pos":344}}
|
||||
{"kind":"relation.basic","relation":"manyToOne","left":{"type":"admin::permission","field":"role","ref":450},"right":{"type":"admin::role","field":"permissions","ref":4,"pos":345}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":423,"field":"localizations"},"right":{"type":"admin::permission","ref":"ax9hu9djpqj75f1zo5rhcabz"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":411,"field":"localizations"},"right":{"type":"admin::permission","ref":"ayreyhdxrrz77jfcfgq0d1pi"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":393,"field":"localizations"},"right":{"type":"admin::permission","ref":"b5o0zs39fn9y5na08vqa0zn3"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":436,"field":"localizations"},"right":{"type":"admin::permission","ref":"b69ixw0v1obiyhhxbaruh3yu"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":425,"field":"localizations"},"right":{"type":"admin::permission","ref":"b93b9cgavbeycg62fr7qlrex"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":400,"field":"localizations"},"right":{"type":"admin::permission","ref":"ba7wpty18vghfo74poxy4rtg"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":402,"field":"localizations"},"right":{"type":"admin::permission","ref":"bd1f9jiguwv4rfmsmac1uotj"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":406,"field":"localizations"},"right":{"type":"admin::permission","ref":"bkicirv845lvt3kuj6cssunt"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":343,"field":"localizations"},"right":{"type":"admin::permission","ref":"bnci2ye91j47u5ugdym70jv2"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":443,"field":"localizations"},"right":{"type":"admin::permission","ref":"bpwjf13ii5uve64gn9u4waze"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":286,"field":"localizations"},"right":{"type":"admin::permission","ref":"br9gyhz0whuso3t0r17oi52j"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":350,"field":"localizations"},"right":{"type":"admin::permission","ref":"bxb7rp26l83guhjqxg5bn1tt"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":344,"field":"localizations"},"right":{"type":"admin::permission","ref":"c0yhz46i1d3izoa22v9rmtk1"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":368,"field":"localizations"},"right":{"type":"admin::permission","ref":"cko374o6gu1j3ykcvlq6v7lb"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":391,"field":"localizations"},"right":{"type":"admin::permission","ref":"ctm90gk562icanlixgd3imrj"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":325,"field":"localizations"},"right":{"type":"admin::permission","ref":"da6ajzi50m88ii9uy2z0h8op"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":308,"field":"localizations"},"right":{"type":"admin::permission","ref":"dfti7f0s728589jglxhpqwn3"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":310,"field":"localizations"},"right":{"type":"admin::permission","ref":"dgay3dx1l9hjpy9mxndmk6su"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":356,"field":"localizations"},"right":{"type":"admin::permission","ref":"dpucuyv41llql0n6ququ02kt"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":446,"field":"localizations"},"right":{"type":"admin::permission","ref":"dq40z4bl2g6bcon00nernzn8"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":395,"field":"localizations"},"right":{"type":"admin::permission","ref":"e0wh78v0nmb0fef06znzozl9"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":341,"field":"localizations"},"right":{"type":"admin::permission","ref":"e1gmddydzf91e83rbygpaii6"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":280,"field":"localizations"},"right":{"type":"admin::permission","ref":"e33m9z23a1lxiupd6wv096qo"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":419,"field":"localizations"},"right":{"type":"admin::permission","ref":"e6p5n1gfvh8bbdj6a6djv7fh"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":408,"field":"localizations"},"right":{"type":"admin::permission","ref":"e7as7vokg2cg8k09onsw3ygu"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":321,"field":"localizations"},"right":{"type":"admin::permission","ref":"e887ixykxi9cz30r7ktjeov1"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":398,"field":"localizations"},"right":{"type":"admin::permission","ref":"em2buisw889lwgqcbpljwlrq"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":276,"field":"localizations"},"right":{"type":"admin::permission","ref":"esv0tfg10qi6k6txmkgfbowh"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":312,"field":"localizations"},"right":{"type":"admin::permission","ref":"euyblipciff48rueww4ojogq"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":375,"field":"localizations"},"right":{"type":"admin::permission","ref":"f2yvr3ub1ssvfts9lg3mjkap"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":316,"field":"localizations"},"right":{"type":"admin::permission","ref":"f7v88fave6umn0kt35uk89fo"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":428,"field":"localizations"},"right":{"type":"admin::permission","ref":"fal7zf3dfmejve7ffaxeznuw"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":412,"field":"localizations"},"right":{"type":"admin::permission","ref":"fh4puoccuwgwwhaomdajkgh1"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":379,"field":"localizations"},"right":{"type":"admin::permission","ref":"fls43q06d3laud6hmla7y5ju"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":388,"field":"localizations"},"right":{"type":"admin::permission","ref":"fuhypaj4nkxi990v8p2egf5o"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":422,"field":"localizations"},"right":{"type":"admin::permission","ref":"fuy1c0ixed8sa8hlke39tpjn"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":297,"field":"localizations"},"right":{"type":"admin::permission","ref":"fwra1eb89j6y7w3qn5tiu7dw"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":418,"field":"localizations"},"right":{"type":"admin::permission","ref":"fxg28cfbmhz61qz61i4rdyim"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":403,"field":"localizations"},"right":{"type":"admin::permission","ref":"fyg8cc7fwkqsq1qye2u1dfu9"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":366,"field":"localizations"},"right":{"type":"admin::permission","ref":"g7x67ptf1xvmgkl8gq79vlkh"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":296,"field":"localizations"},"right":{"type":"admin::permission","ref":"gc0sg8r1dgt3bit1le3ie89b"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":373,"field":"localizations"},"right":{"type":"admin::permission","ref":"gr36dlm4xcm2mpij2gfoxtck"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":302,"field":"localizations"},"right":{"type":"admin::permission","ref":"grj4ti7f93erj2kl2q9a31ow"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":352,"field":"localizations"},"right":{"type":"admin::permission","ref":"gubp535a8v5h6bsrj0hzplc9"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":348,"field":"localizations"},"right":{"type":"admin::permission","ref":"gyybtlg5grdfvmexlvyzwcqi"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":331,"field":"localizations"},"right":{"type":"admin::permission","ref":"h03hpb0czecsuucok6fm41wn"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":358,"field":"localizations"},"right":{"type":"admin::permission","ref":"h4nicra647558hb45dz4lh3i"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":434,"field":"localizations"},"right":{"type":"admin::permission","ref":"hcm0q1zhv0ii4w9h52w3bt1m"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":360,"field":"localizations"},"right":{"type":"admin::permission","ref":"hd0073lfy354tg6ewyxbemjx"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":329,"field":"localizations"},"right":{"type":"admin::permission","ref":"htvcq0sn3146564twcpprajb"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":370,"field":"localizations"},"right":{"type":"admin::permission","ref":"hxxsiihwgkj9t4213v2naryn"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":282,"field":"localizations"},"right":{"type":"admin::permission","ref":"hzpkfkzvwfb1q8tza61aw4vv"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":347,"field":"localizations"},"right":{"type":"admin::permission","ref":"i1sahaym6oa6ktkjjy30curx"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":420,"field":"localizations"},"right":{"type":"admin::permission","ref":"i8e71vqjo8t8n1a6xwo6xown"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":407,"field":"localizations"},"right":{"type":"admin::permission","ref":"i9qg1vnrgqbcjuc3mvzb0plh"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":346,"field":"localizations"},"right":{"type":"admin::permission","ref":"inr8nofsr1ee2d7xikzod2wd"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":293,"field":"localizations"},"right":{"type":"admin::permission","ref":"iqxekdn9c07uakq7l0ain5l5"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":383,"field":"localizations"},"right":{"type":"admin::permission","ref":"ir9msg4hre3sh0s7t44aeotf"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":338,"field":"localizations"},"right":{"type":"admin::permission","ref":"jay2pbm1k1wvcvloacedyd5u"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":441,"field":"localizations"},"right":{"type":"admin::permission","ref":"jjn8frw1cpdl81vlolw8cejm"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":363,"field":"localizations"},"right":{"type":"admin::permission","ref":"jmrh5s9zobgpk3rnqezv6cii"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":300,"field":"localizations"},"right":{"type":"admin::permission","ref":"jnsp4pvuckcba84l07nqaxc9"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":320,"field":"localizations"},"right":{"type":"admin::permission","ref":"jt1a8rtm8ek9ngvwr2zzqeqg"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":289,"field":"localizations"},"right":{"type":"admin::permission","ref":"jzlniw8g28jc3ju4ngf2205x"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":322,"field":"localizations"},"right":{"type":"admin::permission","ref":"kjopo97a2uaihcscrb7v05ww"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":369,"field":"localizations"},"right":{"type":"admin::permission","ref":"kmko4r0dlomnif0wbd9s3xw1"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":372,"field":"localizations"},"right":{"type":"admin::permission","ref":"kmykii23085m4qi2laa3u6i0"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":353,"field":"localizations"},"right":{"type":"admin::permission","ref":"kn7pcaw4o1x2qy50vjlgm2mz"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":324,"field":"localizations"},"right":{"type":"admin::permission","ref":"ko36enf1j0gbrktijqu0p8iy"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":339,"field":"localizations"},"right":{"type":"admin::permission","ref":"kq9993yu85gkfl01gfnzjf7t"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":380,"field":"localizations"},"right":{"type":"admin::permission","ref":"kube2vg7efttwim9ywmuj286"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":307,"field":"localizations"},"right":{"type":"admin::permission","ref":"kvvb788jefck7chdv88x6wrc"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":386,"field":"localizations"},"right":{"type":"admin::permission","ref":"l6f0j3z4cvkitwgpi3c8yyba"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":399,"field":"localizations"},"right":{"type":"admin::permission","ref":"lghinywt4w3xy42m6nec7wln"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":295,"field":"localizations"},"right":{"type":"admin::permission","ref":"lmx4svkk3biimslwdal0jmd9"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":305,"field":"localizations"},"right":{"type":"admin::permission","ref":"loxa9ojn4s1zc5py4ctq2n9k"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":414,"field":"localizations"},"right":{"type":"admin::permission","ref":"lpoebpfwsw02h476qe83m0qn"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":290,"field":"localizations"},"right":{"type":"admin::permission","ref":"lq1h1k1n63cq1npz0vav6d9b"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":410,"field":"localizations"},"right":{"type":"admin::permission","ref":"lr5lwg5df4bpmtapz1nx07hj"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":278,"field":"localizations"},"right":{"type":"admin::permission","ref":"m0ch04a8me9tiy5y4ljb1yjm"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":345,"field":"localizations"},"right":{"type":"admin::permission","ref":"m6g311gytdntsqwedr0ers9t"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":397,"field":"localizations"},"right":{"type":"admin::permission","ref":"mfy5t4etz5t29s0ousxn96oq"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":409,"field":"localizations"},"right":{"type":"admin::permission","ref":"nhn9n4ephz87v9im3jdezolt"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":349,"field":"localizations"},"right":{"type":"admin::permission","ref":"noip5k1xr3dye7bav0qwep2i"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":444,"field":"localizations"},"right":{"type":"admin::permission","ref":"oapow6szdk5z9tm8bysa3gjk"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":440,"field":"localizations"},"right":{"type":"admin::permission","ref":"obpjcwwjdz590m4a9kpsskjq"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":396,"field":"localizations"},"right":{"type":"admin::permission","ref":"ohmlu7i57lwkzq5kbcl9uz6s"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":281,"field":"localizations"},"right":{"type":"admin::permission","ref":"onae031hq0iszsejvt9k8ey1"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":318,"field":"localizations"},"right":{"type":"admin::permission","ref":"op9hgswpta4725bh9c1s2u5s"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":340,"field":"localizations"},"right":{"type":"admin::permission","ref":"oqk71ld57wfxte1nnc8akcv7"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":415,"field":"localizations"},"right":{"type":"admin::permission","ref":"p1ksy4tyy8vzf5p6nqgr8r9v"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":377,"field":"localizations"},"right":{"type":"admin::permission","ref":"p9qz9eiy6h95apg958hb5dg8"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":335,"field":"localizations"},"right":{"type":"admin::permission","ref":"pj9zdyijp9pgwh5u9kf482ik"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":417,"field":"localizations"},"right":{"type":"admin::permission","ref":"pv9br95vms2g9makotcze6b0"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":362,"field":"localizations"},"right":{"type":"admin::permission","ref":"pvz2dvf3f2dwl1eesvz3xz1g"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":298,"field":"localizations"},"right":{"type":"admin::permission","ref":"q0z35our7uw5ctm8jg0cjaai"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":332,"field":"localizations"},"right":{"type":"admin::permission","ref":"q42b9gr3wc8ign9mrnrczec0"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":404,"field":"localizations"},"right":{"type":"admin::permission","ref":"q63jy7ysy8cfvsm6iux8khmq"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":354,"field":"localizations"},"right":{"type":"admin::permission","ref":"q80sm62n9k0za3z8pfrv6s2k"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":355,"field":"localizations"},"right":{"type":"admin::permission","ref":"q8b9aiglir8noudeudjcjzaq"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":277,"field":"localizations"},"right":{"type":"admin::permission","ref":"qdy7vi2cg3w017kth0xcqltl"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":315,"field":"localizations"},"right":{"type":"admin::permission","ref":"qj4bycstmo3v2rhxx13n1e40"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":433,"field":"localizations"},"right":{"type":"admin::permission","ref":"qk7ewz7j042ksxzpdl7gmxa3"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":299,"field":"localizations"},"right":{"type":"admin::permission","ref":"qlo3ronik67qr38x0tl645e2"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":294,"field":"localizations"},"right":{"type":"admin::permission","ref":"qqpp9xf07kzmpjib21co9f62"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":275,"field":"localizations"},"right":{"type":"admin::permission","ref":"qt1u9qxlzywwi55yzdseoefa"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":382,"field":"localizations"},"right":{"type":"admin::permission","ref":"qt4y2agf56og4dcjhx5rv2s5"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":314,"field":"localizations"},"right":{"type":"admin::permission","ref":"qtiedildfaaljap8b79k2ac4"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":284,"field":"localizations"},"right":{"type":"admin::permission","ref":"r18gkm271gmztjherv160307"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":421,"field":"localizations"},"right":{"type":"admin::permission","ref":"r48e2p49pim6q5pvgfz2nuxm"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":351,"field":"localizations"},"right":{"type":"admin::permission","ref":"r841h5ms2bog41um43bldvjx"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":273,"field":"localizations"},"right":{"type":"admin::permission","ref":"rmn3bzg204s7sv1m962obuu5"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":288,"field":"localizations"},"right":{"type":"admin::permission","ref":"ruefeboeyn459u4u7vu82u2a"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":283,"field":"localizations"},"right":{"type":"admin::permission","ref":"rujjg9sk09f6czuvhyyy2pzb"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":424,"field":"localizations"},"right":{"type":"admin::permission","ref":"rviovspal5tyg4bjalm6zxgp"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":447,"field":"localizations"},"right":{"type":"admin::permission","ref":"s4xj6aub24g9cyy2mv1uid98"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":384,"field":"localizations"},"right":{"type":"admin::permission","ref":"saxc5v5vmo4ddks9rw48iqge"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":394,"field":"localizations"},"right":{"type":"admin::permission","ref":"scpmur79hykpgk63vofq2pvg"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":303,"field":"localizations"},"right":{"type":"admin::permission","ref":"spqnbanhduguee27a27v2h5c"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":367,"field":"localizations"},"right":{"type":"admin::permission","ref":"swbdsjg4hokdce690sqz9250"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":328,"field":"localizations"},"right":{"type":"admin::permission","ref":"szvsdiyflx4v1lrvbjytbwu5"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":449,"field":"localizations"},"right":{"type":"admin::permission","ref":"t2tyitylv1dj9m1s3l9segh4"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":359,"field":"localizations"},"right":{"type":"admin::permission","ref":"tbqmdxhlc3rapsxlq6s42dg2"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":392,"field":"localizations"},"right":{"type":"admin::permission","ref":"tfpib9godgvt19j0bh9wgbii"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":319,"field":"localizations"},"right":{"type":"admin::permission","ref":"tqw2r6qqr0pv72pv05haqmiv"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":387,"field":"localizations"},"right":{"type":"admin::permission","ref":"tujbh1jnqmyrm3z71c7lif0d"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":336,"field":"localizations"},"right":{"type":"admin::permission","ref":"txaafbazkni5phwjw7lkb6fb"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":342,"field":"localizations"},"right":{"type":"admin::permission","ref":"u3pepz9avruhuxd95wlxks7j"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":376,"field":"localizations"},"right":{"type":"admin::permission","ref":"u4jxubx9kxry2l8h2y98e3u0"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":327,"field":"localizations"},"right":{"type":"admin::permission","ref":"u77qymfvei6aog5kvpdyjoib"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":448,"field":"localizations"},"right":{"type":"admin::permission","ref":"up6ut51dn32s370413dp3hun"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":389,"field":"localizations"},"right":{"type":"admin::permission","ref":"uvfydzh4oc9eftf3fmitmh6n"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":323,"field":"localizations"},"right":{"type":"admin::permission","ref":"v9dc4fp7yvhhuwl7kiubge95"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":361,"field":"localizations"},"right":{"type":"admin::permission","ref":"veojmd9mg2ckpezd15kc3kbz"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":274,"field":"localizations"},"right":{"type":"admin::permission","ref":"vg00r48gjzk3jir15506kvtz"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":279,"field":"localizations"},"right":{"type":"admin::permission","ref":"vgnruo940tx0o059qx19aj27"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":381,"field":"localizations"},"right":{"type":"admin::permission","ref":"vyjjywvc03nfznjctw3n2jrd"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":292,"field":"localizations"},"right":{"type":"admin::permission","ref":"vzj5sniwsxovgh22t86skbiy"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":330,"field":"localizations"},"right":{"type":"admin::permission","ref":"w8l1pnlfqhhklr4lcaz93fl5"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":432,"field":"localizations"},"right":{"type":"admin::permission","ref":"wasys0kooxsnyf7rwso5wteu"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":334,"field":"localizations"},"right":{"type":"admin::permission","ref":"wcsjzezu7tasubre15hgc4iz"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":333,"field":"localizations"},"right":{"type":"admin::permission","ref":"woed6dq4czg89wabjj04rtba"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":364,"field":"localizations"},"right":{"type":"admin::permission","ref":"wtrukgb5j0nc1i1poxf4yotp"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":435,"field":"localizations"},"right":{"type":"admin::permission","ref":"ww0ecjuss4dhmkflbuomibma"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":374,"field":"localizations"},"right":{"type":"admin::permission","ref":"x2p87zgkmltxsptlv6ys6lrz"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":309,"field":"localizations"},"right":{"type":"admin::permission","ref":"x4pdvcoc3245gdupzh148c3a"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":317,"field":"localizations"},"right":{"type":"admin::permission","ref":"x81c64noxophyj1p38xbltol"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":304,"field":"localizations"},"right":{"type":"admin::permission","ref":"x8bx7ibqzvadl6l7lpeijhix"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":416,"field":"localizations"},"right":{"type":"admin::permission","ref":"xd8fgtj5qznrihuayigukvf5"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":430,"field":"localizations"},"right":{"type":"admin::permission","ref":"xe6o6miv9q3xeuopyxzzdr40"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":365,"field":"localizations"},"right":{"type":"admin::permission","ref":"xfpaktk4l7a9uevymbk5o6kp"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":439,"field":"localizations"},"right":{"type":"admin::permission","ref":"xkqkbzuthtu07fjj5se0h6i0"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":287,"field":"localizations"},"right":{"type":"admin::permission","ref":"xp8wqun6pol0p414oglr83wy"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":326,"field":"localizations"},"right":{"type":"admin::permission","ref":"xpbnefp3mgslofv13dmz408g"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":285,"field":"localizations"},"right":{"type":"admin::permission","ref":"xw41h02zexwvm79wj6roon6h"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":445,"field":"localizations"},"right":{"type":"admin::permission","ref":"xwsesrw12nrsm5m8ibcqoqwn"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":385,"field":"localizations"},"right":{"type":"admin::permission","ref":"xxl17f4b4lwvgjazzgm8qna6"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":301,"field":"localizations"},"right":{"type":"admin::permission","ref":"y88vdcenlj99dti5jjabviwc"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":438,"field":"localizations"},"right":{"type":"admin::permission","ref":"ya8b3zik6g5xpa4iwgvvpoj2"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":311,"field":"localizations"},"right":{"type":"admin::permission","ref":"yd7vxmm1rmn7vf8hyd0vwyxn"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":371,"field":"localizations"},"right":{"type":"admin::permission","ref":"ygkhd6slx57qzk8lhr1l2jco"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":291,"field":"localizations"},"right":{"type":"admin::permission","ref":"yhzjhskyo61a2lq3s18ici5e"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":450,"field":"localizations"},"right":{"type":"admin::permission","ref":"yitim20v7pc65rtqtp8uhejw"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":337,"field":"localizations"},"right":{"type":"admin::permission","ref":"yqyh7mfewqywulhehzl8qbnu"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":442,"field":"localizations"},"right":{"type":"admin::permission","ref":"yrki75cihl70f6hd4zd8rdms"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":401,"field":"localizations"},"right":{"type":"admin::permission","ref":"yyx48t0re90u7g3g9z5rvrtx"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":413,"field":"localizations"},"right":{"type":"admin::permission","ref":"z8qj5x1tnnhjts74wtap82g5"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":405,"field":"localizations"},"right":{"type":"admin::permission","ref":"zaf4smjqfbi9i95fbmwdoku5"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":313,"field":"localizations"},"right":{"type":"admin::permission","ref":"zkz2nxxlv7e2t8ie5ipokxoe"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":437,"field":"localizations"},"right":{"type":"admin::permission","ref":"zqex0b16rwn2luklyxztn4g1"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":426,"field":"localizations"},"right":{"type":"admin::permission","ref":"zsjk4wmyuyk4vu3tsfujtjj0"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":390,"field":"localizations"},"right":{"type":"admin::permission","ref":"zth9259zfpz0hh4yw7br2kca"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":378,"field":"localizations"},"right":{"type":"admin::permission","ref":"zuxkd4zcxbl5xoz7eb5h5ekn"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":306,"field":"localizations"},"right":{"type":"admin::permission","ref":"zvppx91q06fujl3hyn7698ir"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::permission","ref":357,"field":"localizations"},"right":{"type":"admin::permission","ref":"zw1xyran5j5cpmynbmd0y3jb"}}
|
||||
{"kind":"relation.basic","relation":"manyToMany","left":{"type":"admin::user","field":"roles","ref":1,"pos":1},"right":{"type":"admin::role","field":"users","ref":4,"pos":1}}
|
||||
{"kind":"relation.basic","relation":"manyToMany","left":{"type":"admin::user","field":"roles","ref":2,"pos":1},"right":{"type":"admin::role","field":"users","ref":5,"pos":1}}
|
||||
{"kind":"relation.basic","relation":"manyToMany","left":{"type":"admin::user","field":"roles","ref":3,"pos":1},"right":{"type":"admin::role","field":"users","ref":6,"pos":1}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::user","ref":3,"field":"localizations"},"right":{"type":"admin::user","ref":"a79uqs954y843ifbptu4y5pt"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::user","ref":1,"field":"localizations"},"right":{"type":"admin::user","ref":"alvajazgomlulu7m2sprbtx6"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::user","ref":2,"field":"localizations"},"right":{"type":"admin::user","ref":"fhh90k9e50zdmi9gd7545mqk"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::role","ref":6,"field":"localizations"},"right":{"type":"admin::role","ref":"kv2hw1zsvm230za67jlt9xk4"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::role","ref":5,"field":"localizations"},"right":{"type":"admin::role","ref":"vlu2s7ox1j1np0qwf5cv2f2q"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::role","ref":4,"field":"localizations"},"right":{"type":"admin::role","ref":"xqcd54q3c5nf025odzubtybg"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::api-token","ref":3,"field":"localizations"},"right":{"type":"admin::api-token","ref":"nvglynqvu5cdv7qacj6xk6el"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::api-token","ref":4,"field":"localizations"},"right":{"type":"admin::api-token","ref":"wcovv3nk97v9rsyqpgxg35ww"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::transfer-token","ref":16,"field":"localizations"},"right":{"type":"admin::transfer-token","ref":"a9d8hut8z0w8nkejh42o2e6t"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::transfer-token","ref":13,"field":"localizations"},"right":{"type":"admin::transfer-token","ref":"agp613lcxbu1pvk1m0jdj4og"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::transfer-token","ref":7,"field":"localizations"},"right":{"type":"admin::transfer-token","ref":"cm80c7ackzdtct3u1vbaznuw"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::transfer-token","ref":20,"field":"localizations"},"right":{"type":"admin::transfer-token","ref":"coc5m4tyu6yu5q17qc9dewqu"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::transfer-token","ref":14,"field":"localizations"},"right":{"type":"admin::transfer-token","ref":"d9dpsdcoylpy56neagnpv680"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::transfer-token","ref":17,"field":"localizations"},"right":{"type":"admin::transfer-token","ref":"dyrcjutg2ryi8yyevqlm3kqv"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::transfer-token","ref":19,"field":"localizations"},"right":{"type":"admin::transfer-token","ref":"eqnvi0kn8h9h4ukk7yoy681n"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::transfer-token","ref":3,"field":"localizations"},"right":{"type":"admin::transfer-token","ref":"fq86j9p8eysnpzjovfpngg66"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::transfer-token","ref":10,"field":"localizations"},"right":{"type":"admin::transfer-token","ref":"lkgp3deqgjaeaho8b6c27gud"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::transfer-token","ref":8,"field":"localizations"},"right":{"type":"admin::transfer-token","ref":"o9mxhbai32hpfme8cjren223"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::transfer-token","ref":22,"field":"localizations"},"right":{"type":"admin::transfer-token","ref":"pw025r6dvco831iyu1cjouri"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::transfer-token","ref":2,"field":"localizations"},"right":{"type":"admin::transfer-token","ref":"pz45t8kyuy770f2saqh8r7pr"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::transfer-token","ref":6,"field":"localizations"},"right":{"type":"admin::transfer-token","ref":"uu8j24dta9cvr5g6k5nsaa6w"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::transfer-token","ref":5,"field":"localizations"},"right":{"type":"admin::transfer-token","ref":"vz9xzi8w95u58dq43afpm2f1"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::transfer-token","ref":11,"field":"localizations"},"right":{"type":"admin::transfer-token","ref":"wfu667pqg0vcbljy2jl8f4b3"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::transfer-token","ref":9,"field":"localizations"},"right":{"type":"admin::transfer-token","ref":"wtsfeh6kzx7x5yoc4qjhpbx4"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::transfer-token","ref":23,"field":"localizations"},"right":{"type":"admin::transfer-token","ref":"xg0pf7uavqs2edsb66aiami6"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::transfer-token","ref":15,"field":"localizations"},"right":{"type":"admin::transfer-token","ref":"xuflqg1tq9rkg5hhpn7f0f34"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::transfer-token","ref":21,"field":"localizations"},"right":{"type":"admin::transfer-token","ref":"y5rh21w6s6436qwrlf5053ax"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::transfer-token","ref":18,"field":"localizations"},"right":{"type":"admin::transfer-token","ref":"z5890bb0t0xk42ha9i9h6b08"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::transfer-token","ref":12,"field":"localizations"},"right":{"type":"admin::transfer-token","ref":"zk29n63rxzpjsqc78vox09ox"}}
|
||||
{"kind":"relation.circular","relation":"oneToMany","left":{"type":"admin::transfer-token","ref":4,"field":"localizations"},"right":{"type":"admin::transfer-token","ref":"zoxydueeqv8lnv5vzk59b2bt"}}
|
||||
@@ -0,0 +1,6 @@
|
||||
{
|
||||
"createdAt": "2025-08-04T10:01:58.449Z",
|
||||
"strapi": {
|
||||
"version": "5.20.0"
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,39 @@
|
||||
{"collectionName":"files","info":{"singularName":"file","pluralName":"files","displayName":"File","description":""},"options":{"draftAndPublish":false},"pluginOptions":{"content-manager":{"visible":false},"content-type-builder":{"visible":false}},"attributes":{"name":{"type":"string","configurable":false,"required":true},"alternativeText":{"type":"string","configurable":false},"caption":{"type":"string","configurable":false},"width":{"type":"integer","configurable":false},"height":{"type":"integer","configurable":false},"formats":{"type":"json","configurable":false},"hash":{"type":"string","configurable":false,"required":true},"ext":{"type":"string","configurable":false},"mime":{"type":"string","configurable":false,"required":true},"size":{"type":"decimal","configurable":false,"required":true},"url":{"type":"string","configurable":false,"required":true},"previewUrl":{"type":"string","configurable":false},"provider":{"type":"string","configurable":false,"required":true},"provider_metadata":{"type":"json","configurable":false},"related":{"type":"relation","relation":"morphToMany","configurable":false},"folder":{"type":"relation","relation":"manyToOne","target":"plugin::upload.folder","inversedBy":"files","private":true},"folderPath":{"type":"string","minLength":1,"required":true,"private":true,"searchable":false},"createdAt":{"type":"datetime"},"updatedAt":{"type":"datetime"},"publishedAt":{"type":"datetime","configurable":false,"writable":true,"visible":false},"createdBy":{"type":"relation","relation":"oneToOne","target":"admin::user","configurable":false,"writable":false,"visible":false,"useJoinTable":false,"private":true},"updatedBy":{"type":"relation","relation":"oneToOne","target":"admin::user","configurable":false,"writable":false,"visible":false,"useJoinTable":false,"private":true},"locale":{"writable":true,"private":true,"configurable":false,"visible":false,"type":"string"},"localizations":{"type":"relation","relation":"oneToMany","target":"plugin::upload.file","writable":false,"private":true,"configurable":false,"visible":false,"unstable_virtual":true,"joinColumn":{"name":"document_id","referencedColumn":"document_id","referencedTable":"files"}}},"kind":"collectionType","modelType":"contentType","modelName":"file","uid":"plugin::upload.file","plugin":"upload","globalId":"UploadFile"}
|
||||
{"collectionName":"upload_folders","info":{"singularName":"folder","pluralName":"folders","displayName":"Folder"},"options":{"draftAndPublish":false},"pluginOptions":{"content-manager":{"visible":false},"content-type-builder":{"visible":false}},"attributes":{"name":{"type":"string","minLength":1,"required":true},"pathId":{"type":"integer","unique":true,"required":true},"parent":{"type":"relation","relation":"manyToOne","target":"plugin::upload.folder","inversedBy":"children"},"children":{"type":"relation","relation":"oneToMany","target":"plugin::upload.folder","mappedBy":"parent"},"files":{"type":"relation","relation":"oneToMany","target":"plugin::upload.file","mappedBy":"folder"},"path":{"type":"string","minLength":1,"required":true},"createdAt":{"type":"datetime"},"updatedAt":{"type":"datetime"},"publishedAt":{"type":"datetime","configurable":false,"writable":true,"visible":false},"createdBy":{"type":"relation","relation":"oneToOne","target":"admin::user","configurable":false,"writable":false,"visible":false,"useJoinTable":false,"private":true},"updatedBy":{"type":"relation","relation":"oneToOne","target":"admin::user","configurable":false,"writable":false,"visible":false,"useJoinTable":false,"private":true},"locale":{"writable":true,"private":true,"configurable":false,"visible":false,"type":"string"},"localizations":{"type":"relation","relation":"oneToMany","target":"plugin::upload.folder","writable":false,"private":true,"configurable":false,"visible":false,"unstable_virtual":true,"joinColumn":{"name":"document_id","referencedColumn":"document_id","referencedTable":"upload_folders"}}},"kind":"collectionType","modelType":"contentType","modelName":"folder","uid":"plugin::upload.folder","plugin":"upload","globalId":"UploadFolder"}
|
||||
{"collectionName":"i18n_locale","info":{"singularName":"locale","pluralName":"locales","collectionName":"locales","displayName":"Locale","description":""},"options":{"draftAndPublish":false},"pluginOptions":{"content-manager":{"visible":false},"content-type-builder":{"visible":false}},"attributes":{"name":{"type":"string","min":1,"max":50,"configurable":false},"code":{"type":"string","unique":true,"configurable":false},"createdAt":{"type":"datetime"},"updatedAt":{"type":"datetime"},"publishedAt":{"type":"datetime","configurable":false,"writable":true,"visible":false},"createdBy":{"type":"relation","relation":"oneToOne","target":"admin::user","configurable":false,"writable":false,"visible":false,"useJoinTable":false,"private":true},"updatedBy":{"type":"relation","relation":"oneToOne","target":"admin::user","configurable":false,"writable":false,"visible":false,"useJoinTable":false,"private":true},"locale":{"writable":true,"private":true,"configurable":false,"visible":false,"type":"string"},"localizations":{"type":"relation","relation":"oneToMany","target":"plugin::i18n.locale","writable":false,"private":true,"configurable":false,"visible":false,"unstable_virtual":true,"joinColumn":{"name":"document_id","referencedColumn":"document_id","referencedTable":"i18n_locale"}}},"kind":"collectionType","modelType":"contentType","modelName":"locale","uid":"plugin::i18n.locale","plugin":"i18n","globalId":"I18NLocale"}
|
||||
{"collectionName":"strapi_releases","info":{"singularName":"release","pluralName":"releases","displayName":"Release"},"options":{"draftAndPublish":false},"pluginOptions":{"content-manager":{"visible":false},"content-type-builder":{"visible":false}},"attributes":{"name":{"type":"string","required":true},"releasedAt":{"type":"datetime"},"scheduledAt":{"type":"datetime"},"timezone":{"type":"string"},"status":{"type":"enumeration","enum":["ready","blocked","failed","done","empty"],"required":true},"actions":{"type":"relation","relation":"oneToMany","target":"plugin::content-releases.release-action","mappedBy":"release"},"createdAt":{"type":"datetime"},"updatedAt":{"type":"datetime"},"publishedAt":{"type":"datetime","configurable":false,"writable":true,"visible":false},"createdBy":{"type":"relation","relation":"oneToOne","target":"admin::user","configurable":false,"writable":false,"visible":false,"useJoinTable":false,"private":true},"updatedBy":{"type":"relation","relation":"oneToOne","target":"admin::user","configurable":false,"writable":false,"visible":false,"useJoinTable":false,"private":true},"locale":{"writable":true,"private":true,"configurable":false,"visible":false,"type":"string"},"localizations":{"type":"relation","relation":"oneToMany","target":"plugin::content-releases.release","writable":false,"private":true,"configurable":false,"visible":false,"unstable_virtual":true,"joinColumn":{"name":"document_id","referencedColumn":"document_id","referencedTable":"strapi_releases"}}},"kind":"collectionType","modelType":"contentType","modelName":"release","uid":"plugin::content-releases.release","plugin":"content-releases","globalId":"ContentReleasesRelease"}
|
||||
{"collectionName":"strapi_release_actions","info":{"singularName":"release-action","pluralName":"release-actions","displayName":"Release Action"},"options":{"draftAndPublish":false},"pluginOptions":{"content-manager":{"visible":false},"content-type-builder":{"visible":false}},"attributes":{"type":{"type":"enumeration","enum":["publish","unpublish"],"required":true},"contentType":{"type":"string","required":true},"entryDocumentId":{"type":"string"},"locale":{"writable":true,"private":true,"configurable":false,"visible":false,"type":"string"},"release":{"type":"relation","relation":"manyToOne","target":"plugin::content-releases.release","inversedBy":"actions"},"isEntryValid":{"type":"boolean"},"createdAt":{"type":"datetime"},"updatedAt":{"type":"datetime"},"publishedAt":{"type":"datetime","configurable":false,"writable":true,"visible":false},"createdBy":{"type":"relation","relation":"oneToOne","target":"admin::user","configurable":false,"writable":false,"visible":false,"useJoinTable":false,"private":true},"updatedBy":{"type":"relation","relation":"oneToOne","target":"admin::user","configurable":false,"writable":false,"visible":false,"useJoinTable":false,"private":true},"localizations":{"type":"relation","relation":"oneToMany","target":"plugin::content-releases.release-action","writable":false,"private":true,"configurable":false,"visible":false,"unstable_virtual":true,"joinColumn":{"name":"document_id","referencedColumn":"document_id","referencedTable":"strapi_release_actions"}}},"kind":"collectionType","modelType":"contentType","modelName":"release-action","uid":"plugin::content-releases.release-action","plugin":"content-releases","globalId":"ContentReleasesReleaseAction"}
|
||||
{"collectionName":"strapi_workflows","info":{"name":"Workflow","description":"","singularName":"workflow","pluralName":"workflows","displayName":"Workflow"},"options":{"draftAndPublish":false},"pluginOptions":{"content-manager":{"visible":false},"content-type-builder":{"visible":false}},"attributes":{"name":{"type":"string","required":true,"unique":true},"stages":{"type":"relation","target":"plugin::review-workflows.workflow-stage","relation":"oneToMany","mappedBy":"workflow"},"stageRequiredToPublish":{"type":"relation","target":"plugin::review-workflows.workflow-stage","relation":"oneToOne","required":false},"contentTypes":{"type":"json","required":true,"default":"[]"},"createdAt":{"type":"datetime"},"updatedAt":{"type":"datetime"},"publishedAt":{"type":"datetime","configurable":false,"writable":true,"visible":false},"createdBy":{"type":"relation","relation":"oneToOne","target":"admin::user","configurable":false,"writable":false,"visible":false,"useJoinTable":false,"private":true},"updatedBy":{"type":"relation","relation":"oneToOne","target":"admin::user","configurable":false,"writable":false,"visible":false,"useJoinTable":false,"private":true},"locale":{"writable":true,"private":true,"configurable":false,"visible":false,"type":"string"},"localizations":{"type":"relation","relation":"oneToMany","target":"plugin::review-workflows.workflow","writable":false,"private":true,"configurable":false,"visible":false,"unstable_virtual":true,"joinColumn":{"name":"document_id","referencedColumn":"document_id","referencedTable":"strapi_workflows"}}},"kind":"collectionType","modelType":"contentType","modelName":"workflow","uid":"plugin::review-workflows.workflow","plugin":"review-workflows","globalId":"ReviewWorkflowsWorkflow"}
|
||||
{"collectionName":"strapi_workflows_stages","info":{"name":"Workflow Stage","description":"","singularName":"workflow-stage","pluralName":"workflow-stages","displayName":"Stages"},"options":{"version":"1.1.0","draftAndPublish":false},"pluginOptions":{"content-manager":{"visible":false},"content-type-builder":{"visible":false}},"attributes":{"name":{"type":"string","configurable":false},"color":{"type":"string","configurable":false,"default":"#4945FF"},"workflow":{"type":"relation","target":"plugin::review-workflows.workflow","relation":"manyToOne","inversedBy":"stages","configurable":false},"permissions":{"type":"relation","target":"admin::permission","relation":"manyToMany","configurable":false},"createdAt":{"type":"datetime"},"updatedAt":{"type":"datetime"},"publishedAt":{"type":"datetime","configurable":false,"writable":true,"visible":false},"createdBy":{"type":"relation","relation":"oneToOne","target":"admin::user","configurable":false,"writable":false,"visible":false,"useJoinTable":false,"private":true},"updatedBy":{"type":"relation","relation":"oneToOne","target":"admin::user","configurable":false,"writable":false,"visible":false,"useJoinTable":false,"private":true},"locale":{"writable":true,"private":true,"configurable":false,"visible":false,"type":"string"},"localizations":{"type":"relation","relation":"oneToMany","target":"plugin::review-workflows.workflow-stage","writable":false,"private":true,"configurable":false,"visible":false,"unstable_virtual":true,"joinColumn":{"name":"document_id","referencedColumn":"document_id","referencedTable":"strapi_workflows_stages"}}},"kind":"collectionType","modelType":"contentType","modelName":"workflow-stage","uid":"plugin::review-workflows.workflow-stage","plugin":"review-workflows","globalId":"ReviewWorkflowsWorkflowStage"}
|
||||
{"collectionName":"up_permissions","info":{"name":"permission","description":"","singularName":"permission","pluralName":"permissions","displayName":"Permission"},"options":{"draftAndPublish":false},"pluginOptions":{"content-manager":{"visible":false},"content-type-builder":{"visible":false}},"attributes":{"action":{"type":"string","required":true,"configurable":false},"role":{"type":"relation","relation":"manyToOne","target":"plugin::users-permissions.role","inversedBy":"permissions","configurable":false},"createdAt":{"type":"datetime"},"updatedAt":{"type":"datetime"},"publishedAt":{"type":"datetime","configurable":false,"writable":true,"visible":false},"createdBy":{"type":"relation","relation":"oneToOne","target":"admin::user","configurable":false,"writable":false,"visible":false,"useJoinTable":false,"private":true},"updatedBy":{"type":"relation","relation":"oneToOne","target":"admin::user","configurable":false,"writable":false,"visible":false,"useJoinTable":false,"private":true},"locale":{"writable":true,"private":true,"configurable":false,"visible":false,"type":"string"},"localizations":{"type":"relation","relation":"oneToMany","target":"plugin::users-permissions.permission","writable":false,"private":true,"configurable":false,"visible":false,"unstable_virtual":true,"joinColumn":{"name":"document_id","referencedColumn":"document_id","referencedTable":"up_permissions"}}},"kind":"collectionType","modelType":"contentType","modelName":"permission","uid":"plugin::users-permissions.permission","plugin":"users-permissions","globalId":"UsersPermissionsPermission"}
|
||||
{"collectionName":"up_roles","info":{"name":"role","description":"","singularName":"role","pluralName":"roles","displayName":"Role"},"options":{"draftAndPublish":false},"pluginOptions":{"content-manager":{"visible":false},"content-type-builder":{"visible":false}},"attributes":{"name":{"type":"string","minLength":3,"required":true,"configurable":false},"description":{"type":"string","configurable":false},"type":{"type":"string","unique":true,"configurable":false},"permissions":{"type":"relation","relation":"oneToMany","target":"plugin::users-permissions.permission","mappedBy":"role","configurable":false},"users":{"type":"relation","relation":"oneToMany","target":"plugin::users-permissions.user","mappedBy":"role","configurable":false},"createdAt":{"type":"datetime"},"updatedAt":{"type":"datetime"},"publishedAt":{"type":"datetime","configurable":false,"writable":true,"visible":false},"createdBy":{"type":"relation","relation":"oneToOne","target":"admin::user","configurable":false,"writable":false,"visible":false,"useJoinTable":false,"private":true},"updatedBy":{"type":"relation","relation":"oneToOne","target":"admin::user","configurable":false,"writable":false,"visible":false,"useJoinTable":false,"private":true},"locale":{"writable":true,"private":true,"configurable":false,"visible":false,"type":"string"},"localizations":{"type":"relation","relation":"oneToMany","target":"plugin::users-permissions.role","writable":false,"private":true,"configurable":false,"visible":false,"unstable_virtual":true,"joinColumn":{"name":"document_id","referencedColumn":"document_id","referencedTable":"up_roles"}}},"kind":"collectionType","modelType":"contentType","modelName":"role","uid":"plugin::users-permissions.role","plugin":"users-permissions","globalId":"UsersPermissionsRole"}
|
||||
{"collectionName":"up_users","info":{"name":"user","description":"","singularName":"user","pluralName":"users","displayName":"User"},"options":{"timestamps":true,"draftAndPublish":false},"attributes":{"username":{"type":"string","minLength":3,"unique":true,"configurable":false,"required":true},"email":{"type":"email","minLength":6,"configurable":false,"required":true},"provider":{"type":"string","configurable":false},"password":{"type":"password","minLength":6,"configurable":false,"private":true,"searchable":false},"resetPasswordToken":{"type":"string","configurable":false,"private":true,"searchable":false},"confirmationToken":{"type":"string","configurable":false,"private":true,"searchable":false},"confirmed":{"type":"boolean","default":false,"configurable":false},"blocked":{"type":"boolean","default":false,"configurable":false},"role":{"type":"relation","relation":"manyToOne","target":"plugin::users-permissions.role","inversedBy":"users","configurable":false},"createdAt":{"type":"datetime"},"updatedAt":{"type":"datetime"},"publishedAt":{"type":"datetime","configurable":false,"writable":true,"visible":false},"createdBy":{"type":"relation","relation":"oneToOne","target":"admin::user","configurable":false,"writable":false,"visible":false,"useJoinTable":false,"private":true},"updatedBy":{"type":"relation","relation":"oneToOne","target":"admin::user","configurable":false,"writable":false,"visible":false,"useJoinTable":false,"private":true},"locale":{"writable":true,"private":true,"configurable":false,"visible":false,"type":"string"},"localizations":{"type":"relation","relation":"oneToMany","target":"plugin::users-permissions.user","writable":false,"private":true,"configurable":false,"visible":false,"unstable_virtual":true,"joinColumn":{"name":"document_id","referencedColumn":"document_id","referencedTable":"up_users"}},"strapi_stage":{"writable":true,"private":false,"configurable":false,"visible":false,"useJoinTable":true,"type":"relation","relation":"oneToOne","target":"plugin::review-workflows.workflow-stage"},"strapi_assignee":{"writable":true,"private":false,"configurable":false,"visible":false,"useJoinTable":true,"type":"relation","relation":"oneToOne","target":"admin::user"}},"kind":"collectionType","modelType":"contentType","modelName":"user","uid":"plugin::users-permissions.user","plugin":"users-permissions","globalId":"UsersPermissionsUser"}
|
||||
{"collectionName":"articles","info":{"singularName":"article","pluralName":"articles","displayName":"Article","description":""},"options":{"draftAndPublish":true},"pluginOptions":{"i18n":{"localized":true}},"attributes":{"title":{"type":"string"},"content":{"type":"blocks"},"authors":{"type":"relation","relation":"manyToMany","target":"api::author.author","inversedBy":"articles"},"slug":{"type":"uid","targetField":"title"},"seo":{"type":"component","repeatable":false,"pluginOptions":{"i18n":{"localized":true}},"component":"meta.seo"},"createdAt":{"type":"datetime"},"updatedAt":{"type":"datetime"},"publishedAt":{"type":"datetime","configurable":false,"writable":true,"visible":false},"createdBy":{"type":"relation","relation":"oneToOne","target":"admin::user","configurable":false,"writable":false,"visible":false,"useJoinTable":false,"private":true},"updatedBy":{"type":"relation","relation":"oneToOne","target":"admin::user","configurable":false,"writable":false,"visible":false,"useJoinTable":false,"private":true},"locale":{"writable":true,"private":false,"configurable":false,"visible":false,"type":"string"},"localizations":{"type":"relation","relation":"oneToMany","target":"api::article.article","writable":false,"private":false,"configurable":false,"visible":false,"unstable_virtual":true,"joinColumn":{"name":"document_id","referencedColumn":"document_id","referencedTable":"articles"}},"strapi_stage":{"writable":true,"private":false,"configurable":false,"visible":false,"useJoinTable":true,"type":"relation","relation":"oneToOne","target":"plugin::review-workflows.workflow-stage"},"strapi_assignee":{"writable":true,"private":false,"configurable":false,"visible":false,"useJoinTable":true,"type":"relation","relation":"oneToOne","target":"admin::user"}},"kind":"collectionType","modelType":"contentType","modelName":"article","uid":"api::article.article","globalId":"Article"}
|
||||
{"collectionName":"authors","info":{"singularName":"author","pluralName":"authors","displayName":"Author"},"options":{"draftAndPublish":true},"pluginOptions":{},"attributes":{"name":{"type":"string"},"profile":{"allowedTypes":["images","files","videos","audios"],"type":"media","multiple":false},"articles":{"type":"relation","relation":"manyToMany","target":"api::article.article","mappedBy":"authors"},"createdAt":{"type":"datetime"},"updatedAt":{"type":"datetime"},"publishedAt":{"type":"datetime","configurable":false,"writable":true,"visible":false},"createdBy":{"type":"relation","relation":"oneToOne","target":"admin::user","configurable":false,"writable":false,"visible":false,"useJoinTable":false,"private":true},"updatedBy":{"type":"relation","relation":"oneToOne","target":"admin::user","configurable":false,"writable":false,"visible":false,"useJoinTable":false,"private":true},"locale":{"writable":true,"private":true,"configurable":false,"visible":false,"type":"string"},"localizations":{"type":"relation","relation":"oneToMany","target":"api::author.author","writable":false,"private":true,"configurable":false,"visible":false,"unstable_virtual":true,"joinColumn":{"name":"document_id","referencedColumn":"document_id","referencedTable":"authors"}},"strapi_stage":{"writable":true,"private":false,"configurable":false,"visible":false,"useJoinTable":true,"type":"relation","relation":"oneToOne","target":"plugin::review-workflows.workflow-stage"},"strapi_assignee":{"writable":true,"private":false,"configurable":false,"visible":false,"useJoinTable":true,"type":"relation","relation":"oneToOne","target":"admin::user"}},"kind":"collectionType","modelType":"contentType","modelName":"author","uid":"api::author.author","globalId":"Author"}
|
||||
{"collectionName":"cats","info":{"singularName":"cat","pluralName":"cats","displayName":"Cat"},"options":{"draftAndPublish":true},"pluginOptions":{},"attributes":{"name":{"type":"string","required":true},"age":{"type":"integer"},"likesDogs":{"type":"boolean","default":false},"personality":{"type":"enumeration","enum":["friendly","hunter","lazy","grumpy"]},"dogFriends":{"type":"relation","relation":"manyToMany","target":"api::dog.dog","mappedBy":"bestFriendCats","conditions":{"visible":{"==":[{"var":"likesDogs"},true]}}},"huntingSkills":{"type":"text","conditions":{"visible":{"==":[{"var":"personality"},"hunter"]}}},"favoriteNapSpot":{"type":"string","conditions":{"visible":{"==":[{"var":"personality"},"lazy"]}}},"favoriteToy":{"type":"string"},"createdAt":{"type":"datetime"},"updatedAt":{"type":"datetime"},"publishedAt":{"type":"datetime","configurable":false,"writable":true,"visible":false},"createdBy":{"type":"relation","relation":"oneToOne","target":"admin::user","configurable":false,"writable":false,"visible":false,"useJoinTable":false,"private":true},"updatedBy":{"type":"relation","relation":"oneToOne","target":"admin::user","configurable":false,"writable":false,"visible":false,"useJoinTable":false,"private":true},"locale":{"writable":true,"private":true,"configurable":false,"visible":false,"type":"string"},"localizations":{"type":"relation","relation":"oneToMany","target":"api::cat.cat","writable":false,"private":true,"configurable":false,"visible":false,"unstable_virtual":true,"joinColumn":{"name":"document_id","referencedColumn":"document_id","referencedTable":"cats"}},"strapi_stage":{"writable":true,"private":false,"configurable":false,"visible":false,"useJoinTable":true,"type":"relation","relation":"oneToOne","target":"plugin::review-workflows.workflow-stage"},"strapi_assignee":{"writable":true,"private":false,"configurable":false,"visible":false,"useJoinTable":true,"type":"relation","relation":"oneToOne","target":"admin::user"}},"kind":"collectionType","modelType":"contentType","modelName":"cat","uid":"api::cat.cat","globalId":"Cat"}
|
||||
{"collectionName":"conditions","info":{"singularName":"condition","pluralName":"conditions","displayName":"Condition"},"options":{"draftAndPublish":true},"pluginOptions":{},"attributes":{"isActive":{"type":"boolean"},"country":{"type":"relation","relation":"oneToOne","target":"api::country.country","conditions":{"visible":{"==":[{"var":"isActive"},true]}}},"roles":{"type":"enumeration","enum":["tank","dps","heal"]},"Author":{"type":"relation","relation":"manyToMany","target":"api::article.article","mappedBy":"Article","conditions":{"visible":{"==":[{"var":"roles"},"tank"]}}},"createdAt":{"type":"datetime"},"updatedAt":{"type":"datetime"},"publishedAt":{"type":"datetime","configurable":false,"writable":true,"visible":false},"createdBy":{"type":"relation","relation":"oneToOne","target":"admin::user","configurable":false,"writable":false,"visible":false,"useJoinTable":false,"private":true},"updatedBy":{"type":"relation","relation":"oneToOne","target":"admin::user","configurable":false,"writable":false,"visible":false,"useJoinTable":false,"private":true},"locale":{"writable":true,"private":true,"configurable":false,"visible":false,"type":"string"},"localizations":{"type":"relation","relation":"oneToMany","target":"api::condition.condition","writable":false,"private":true,"configurable":false,"visible":false,"unstable_virtual":true,"joinColumn":{"name":"document_id","referencedColumn":"document_id","referencedTable":"conditions"}},"strapi_stage":{"writable":true,"private":false,"configurable":false,"visible":false,"useJoinTable":true,"type":"relation","relation":"oneToOne","target":"plugin::review-workflows.workflow-stage"},"strapi_assignee":{"writable":true,"private":false,"configurable":false,"visible":false,"useJoinTable":true,"type":"relation","relation":"oneToOne","target":"admin::user"}},"kind":"collectionType","modelType":"contentType","modelName":"condition","uid":"api::condition.condition","globalId":"Condition"}
|
||||
{"collectionName":"countries","info":{"displayName":"Country","singularName":"country","pluralName":"countries","description":"","name":"Country"},"options":{"draftAndPublish":false},"pluginOptions":{"i18n":{"localized":true}},"attributes":{"name":{"type":"string","pluginOptions":{"i18n":{"localized":true}},"minLength":3,"required":true},"code":{"type":"string","pluginOptions":{"i18n":{"localized":true}},"conditions":{"visible":{"==":[{"var":"visible"},true]}},"minLength":2,"maxLength":3,"required":true,"unique":true},"visible":{"type":"boolean"},"product":{"type":"relation","relation":"manyToOne","target":"api::product.product","inversedBy":"countries"},"createdAt":{"type":"datetime"},"updatedAt":{"type":"datetime"},"publishedAt":{"type":"datetime","configurable":false,"writable":true,"visible":false},"createdBy":{"type":"relation","relation":"oneToOne","target":"admin::user","configurable":false,"writable":false,"visible":false,"useJoinTable":false,"private":true},"updatedBy":{"type":"relation","relation":"oneToOne","target":"admin::user","configurable":false,"writable":false,"visible":false,"useJoinTable":false,"private":true},"locale":{"writable":true,"private":false,"configurable":false,"visible":false,"type":"string"},"localizations":{"type":"relation","relation":"oneToMany","target":"api::country.country","writable":false,"private":false,"configurable":false,"visible":false,"unstable_virtual":true,"joinColumn":{"name":"document_id","referencedColumn":"document_id","referencedTable":"countries"}},"strapi_stage":{"writable":true,"private":false,"configurable":false,"visible":false,"useJoinTable":true,"type":"relation","relation":"oneToOne","target":"plugin::review-workflows.workflow-stage"},"strapi_assignee":{"writable":true,"private":false,"configurable":false,"visible":false,"useJoinTable":true,"type":"relation","relation":"oneToOne","target":"admin::user"}},"kind":"collectionType","modelType":"contentType","modelName":"country","uid":"api::country.country","globalId":"Country"}
|
||||
{"collectionName":"dogs","info":{"singularName":"dog","pluralName":"dogs","displayName":"Dog"},"options":{"draftAndPublish":true},"pluginOptions":{},"attributes":{"name":{"type":"string","required":true},"age":{"type":"integer"},"likesCats":{"type":"boolean","default":false},"personality":{"type":"enumeration","enum":["playful","guard","lazy","friendly"]},"bestFriendCats":{"type":"relation","relation":"manyToMany","target":"api::cat.cat","inversedBy":"dogFriends","conditions":{"visible":{"==":[{"var":"likesCats"},true]}}},"favoriteToy":{"type":"string","conditions":{"visible":{"==":[{"var":"personality"},"playful"]}}},"guardingSchedule":{"type":"text","conditions":{"visible":{"==":[{"var":"personality"},"guard"]}}},"preferredCatPersonality":{"type":"enumeration","enum":["friendly","hunter","lazy","grumpy"],"conditions":{"visible":{"==":[{"var":"likesCats"},true]}}},"favoriteTreat":{"type":"string"},"createdAt":{"type":"datetime"},"updatedAt":{"type":"datetime"},"publishedAt":{"type":"datetime","configurable":false,"writable":true,"visible":false},"createdBy":{"type":"relation","relation":"oneToOne","target":"admin::user","configurable":false,"writable":false,"visible":false,"useJoinTable":false,"private":true},"updatedBy":{"type":"relation","relation":"oneToOne","target":"admin::user","configurable":false,"writable":false,"visible":false,"useJoinTable":false,"private":true},"locale":{"writable":true,"private":true,"configurable":false,"visible":false,"type":"string"},"localizations":{"type":"relation","relation":"oneToMany","target":"api::dog.dog","writable":false,"private":true,"configurable":false,"visible":false,"unstable_virtual":true,"joinColumn":{"name":"document_id","referencedColumn":"document_id","referencedTable":"dogs"}},"strapi_stage":{"writable":true,"private":false,"configurable":false,"visible":false,"useJoinTable":true,"type":"relation","relation":"oneToOne","target":"plugin::review-workflows.workflow-stage"},"strapi_assignee":{"writable":true,"private":false,"configurable":false,"visible":false,"useJoinTable":true,"type":"relation","relation":"oneToOne","target":"admin::user"}},"kind":"collectionType","modelType":"contentType","modelName":"dog","uid":"api::dog.dog","globalId":"Dog"}
|
||||
{"collectionName":"homepages","info":{"singularName":"homepage","pluralName":"homepages","displayName":"Homepage","description":""},"options":{"draftAndPublish":true},"pluginOptions":{"i18n":{"localized":true}},"attributes":{"title":{"type":"string"},"content":{"type":"blocks"},"admin_user":{"type":"relation","relation":"oneToOne","target":"admin::user"},"seo":{"type":"component","repeatable":false,"component":"meta.seo"},"createdAt":{"type":"datetime"},"updatedAt":{"type":"datetime"},"publishedAt":{"type":"datetime","configurable":false,"writable":true,"visible":false},"createdBy":{"type":"relation","relation":"oneToOne","target":"admin::user","configurable":false,"writable":false,"visible":false,"useJoinTable":false,"private":true},"updatedBy":{"type":"relation","relation":"oneToOne","target":"admin::user","configurable":false,"writable":false,"visible":false,"useJoinTable":false,"private":true},"locale":{"writable":true,"private":false,"configurable":false,"visible":false,"type":"string"},"localizations":{"type":"relation","relation":"oneToMany","target":"api::homepage.homepage","writable":false,"private":false,"configurable":false,"visible":false,"unstable_virtual":true,"joinColumn":{"name":"document_id","referencedColumn":"document_id","referencedTable":"homepages"}},"strapi_stage":{"writable":true,"private":false,"configurable":false,"visible":false,"useJoinTable":true,"type":"relation","relation":"oneToOne","target":"plugin::review-workflows.workflow-stage"},"strapi_assignee":{"writable":true,"private":false,"configurable":false,"visible":false,"useJoinTable":true,"type":"relation","relation":"oneToOne","target":"admin::user"}},"kind":"singleType","modelType":"contentType","modelName":"homepage","uid":"api::homepage.homepage","globalId":"Homepage"}
|
||||
{"collectionName":"matches","info":{"singularName":"match","pluralName":"matches","displayName":"Match"},"options":{"draftAndPublish":true},"attributes":{"date":{"type":"date"},"kit_man":{"type":"string"},"opponent":{"type":"string","required":true,"regex":"^(?!.*richmond).*"},"lineup":{"type":"component","repeatable":true,"component":"match.player"},"most_valuable_player":{"type":"component","repeatable":false,"component":"match.player"},"sections":{"type":"dynamiczone","components":["match.player","product.variations"]},"createdAt":{"type":"datetime"},"updatedAt":{"type":"datetime"},"publishedAt":{"type":"datetime","configurable":false,"writable":true,"visible":false},"createdBy":{"type":"relation","relation":"oneToOne","target":"admin::user","configurable":false,"writable":false,"visible":false,"useJoinTable":false,"private":true},"updatedBy":{"type":"relation","relation":"oneToOne","target":"admin::user","configurable":false,"writable":false,"visible":false,"useJoinTable":false,"private":true},"locale":{"writable":true,"private":true,"configurable":false,"visible":false,"type":"string"},"localizations":{"type":"relation","relation":"oneToMany","target":"api::match.match","writable":false,"private":true,"configurable":false,"visible":false,"unstable_virtual":true,"joinColumn":{"name":"document_id","referencedColumn":"document_id","referencedTable":"matches"}},"strapi_stage":{"writable":true,"private":false,"configurable":false,"visible":false,"useJoinTable":true,"type":"relation","relation":"oneToOne","target":"plugin::review-workflows.workflow-stage"},"strapi_assignee":{"writable":true,"private":false,"configurable":false,"visible":false,"useJoinTable":true,"type":"relation","relation":"oneToOne","target":"admin::user"}},"kind":"collectionType","modelType":"contentType","modelName":"match","uid":"api::match.match","globalId":"Match"}
|
||||
{"collectionName":"products","info":{"singularName":"product","pluralName":"products","displayName":"Products","description":""},"options":{"draftAndPublish":true},"pluginOptions":{"i18n":{"localized":true}},"attributes":{"name":{"pluginOptions":{"i18n":{"localized":true}},"type":"string","required":true},"slug":{"pluginOptions":{"i18n":{"localized":true}},"type":"uid","targetField":"name","required":true},"isAvailable":{"pluginOptions":{"i18n":{"localized":false}},"type":"boolean","default":true,"required":true},"description":{"pluginOptions":{"i18n":{"localized":true}},"type":"blocks"},"images":{"type":"media","multiple":true,"required":false,"allowedTypes":["images","files","videos","audios"],"pluginOptions":{"i18n":{"localized":false}}},"seo":{"type":"component","repeatable":false,"pluginOptions":{"i18n":{"localized":true}},"component":"meta.seo"},"sku":{"pluginOptions":{"i18n":{"localized":true}},"type":"integer","unique":true,"conditions":{"visible":{"==":[{"var":"isAvailable"},true]}}},"variations":{"type":"component","repeatable":true,"pluginOptions":{"i18n":{"localized":true}},"component":"product.variations"},"type":{"type":"enumeration","pluginOptions":{"i18n":{"localized":true}},"enum":["standard","custom","cheap","fancy"]},"countries":{"type":"relation","relation":"oneToMany","target":"api::country.country","mappedBy":"product"},"createdAt":{"type":"datetime"},"updatedAt":{"type":"datetime"},"publishedAt":{"type":"datetime","configurable":false,"writable":true,"visible":false},"createdBy":{"type":"relation","relation":"oneToOne","target":"admin::user","configurable":false,"writable":false,"visible":false,"useJoinTable":false,"private":true},"updatedBy":{"type":"relation","relation":"oneToOne","target":"admin::user","configurable":false,"writable":false,"visible":false,"useJoinTable":false,"private":true},"locale":{"writable":true,"private":false,"configurable":false,"visible":false,"type":"string"},"localizations":{"type":"relation","relation":"oneToMany","target":"api::product.product","writable":false,"private":false,"configurable":false,"visible":false,"unstable_virtual":true,"joinColumn":{"name":"document_id","referencedColumn":"document_id","referencedTable":"products"}},"strapi_stage":{"writable":true,"private":false,"configurable":false,"visible":false,"useJoinTable":true,"type":"relation","relation":"oneToOne","target":"plugin::review-workflows.workflow-stage"},"strapi_assignee":{"writable":true,"private":false,"configurable":false,"visible":false,"useJoinTable":true,"type":"relation","relation":"oneToOne","target":"admin::user"}},"kind":"collectionType","modelType":"contentType","modelName":"product","uid":"api::product.product","globalId":"Product"}
|
||||
{"collectionName":"shops","info":{"singularName":"shop","pluralName":"shops","displayName":"Shop","description":""},"options":{"draftAndPublish":true},"pluginOptions":{"i18n":{"localized":true}},"attributes":{"title":{"pluginOptions":{"i18n":{"localized":true}},"type":"string","required":true},"content":{"pluginOptions":{"i18n":{"localized":true}},"type":"dynamiczone","components":["page-blocks.product-carousel","page-blocks.hero-image","page-blocks.content-and-image"],"required":true,"min":2},"seo":{"type":"component","repeatable":false,"pluginOptions":{"i18n":{"localized":true}},"component":"meta.seo"},"createdAt":{"type":"datetime"},"updatedAt":{"type":"datetime"},"publishedAt":{"type":"datetime","configurable":false,"writable":true,"visible":false},"createdBy":{"type":"relation","relation":"oneToOne","target":"admin::user","configurable":false,"writable":false,"visible":false,"useJoinTable":false,"private":true},"updatedBy":{"type":"relation","relation":"oneToOne","target":"admin::user","configurable":false,"writable":false,"visible":false,"useJoinTable":false,"private":true},"locale":{"writable":true,"private":false,"configurable":false,"visible":false,"type":"string"},"localizations":{"type":"relation","relation":"oneToMany","target":"api::shop.shop","writable":false,"private":false,"configurable":false,"visible":false,"unstable_virtual":true,"joinColumn":{"name":"document_id","referencedColumn":"document_id","referencedTable":"shops"}},"strapi_stage":{"writable":true,"private":false,"configurable":false,"visible":false,"useJoinTable":true,"type":"relation","relation":"oneToOne","target":"plugin::review-workflows.workflow-stage"},"strapi_assignee":{"writable":true,"private":false,"configurable":false,"visible":false,"useJoinTable":true,"type":"relation","relation":"oneToOne","target":"admin::user"}},"kind":"singleType","modelType":"contentType","modelName":"shop","uid":"api::shop.shop","globalId":"Shop"}
|
||||
{"collectionName":"teams","info":{"singularName":"team","pluralName":"teams","displayName":"Team"},"options":{"draftAndPublish":true},"pluginOptions":{"i18n":{"localized":true}},"attributes":{"name":{"type":"string","pluginOptions":{"i18n":{"localized":true}}},"founded":{"type":"integer","pluginOptions":{"i18n":{"localized":true}}},"createdAt":{"type":"datetime"},"updatedAt":{"type":"datetime"},"publishedAt":{"type":"datetime","configurable":false,"writable":true,"visible":false},"createdBy":{"type":"relation","relation":"oneToOne","target":"admin::user","configurable":false,"writable":false,"visible":false,"useJoinTable":false,"private":true},"updatedBy":{"type":"relation","relation":"oneToOne","target":"admin::user","configurable":false,"writable":false,"visible":false,"useJoinTable":false,"private":true},"locale":{"writable":true,"private":false,"configurable":false,"visible":false,"type":"string"},"localizations":{"type":"relation","relation":"oneToMany","target":"api::team.team","writable":false,"private":false,"configurable":false,"visible":false,"unstable_virtual":true,"joinColumn":{"name":"document_id","referencedColumn":"document_id","referencedTable":"teams"}},"strapi_stage":{"writable":true,"private":false,"configurable":false,"visible":false,"useJoinTable":true,"type":"relation","relation":"oneToOne","target":"plugin::review-workflows.workflow-stage"},"strapi_assignee":{"writable":true,"private":false,"configurable":false,"visible":false,"useJoinTable":true,"type":"relation","relation":"oneToOne","target":"admin::user"}},"kind":"collectionType","modelType":"contentType","modelName":"team","uid":"api::team.team","globalId":"Team"}
|
||||
{"collectionName":"unique","info":{"singularName":"unique","pluralName":"uniques","displayName":"Unique"},"options":{"draftAndPublish":true},"pluginOptions":{"i18n":{"localized":true}},"attributes":{"uniqueString":{"pluginOptions":{"i18n":{"localized":true}},"type":"string","unique":true},"uniqueNumber":{"pluginOptions":{"i18n":{"localized":true}},"unique":true,"type":"integer"},"uniqueEmail":{"pluginOptions":{"i18n":{"localized":true}},"type":"email","unique":true},"uniqueDate":{"pluginOptions":{"i18n":{"localized":true}},"unique":true,"type":"date"},"UID":{"pluginOptions":{"i18n":{"localized":true}},"type":"uid"},"identifiers":{"type":"component","repeatable":false,"component":"unique.top-level","pluginOptions":{"i18n":{"localized":true}}},"repeatableIdentifiers":{"type":"component","repeatable":true,"component":"unique.top-level","pluginOptions":{"i18n":{"localized":true}}},"createdAt":{"type":"datetime"},"updatedAt":{"type":"datetime"},"publishedAt":{"type":"datetime","configurable":false,"writable":true,"visible":false},"createdBy":{"type":"relation","relation":"oneToOne","target":"admin::user","configurable":false,"writable":false,"visible":false,"useJoinTable":false,"private":true},"updatedBy":{"type":"relation","relation":"oneToOne","target":"admin::user","configurable":false,"writable":false,"visible":false,"useJoinTable":false,"private":true},"locale":{"writable":true,"private":false,"configurable":false,"visible":false,"type":"string"},"localizations":{"type":"relation","relation":"oneToMany","target":"api::unique.unique","writable":false,"private":false,"configurable":false,"visible":false,"unstable_virtual":true,"joinColumn":{"name":"document_id","referencedColumn":"document_id","referencedTable":"unique"}},"strapi_stage":{"writable":true,"private":false,"configurable":false,"visible":false,"useJoinTable":true,"type":"relation","relation":"oneToOne","target":"plugin::review-workflows.workflow-stage"},"strapi_assignee":{"writable":true,"private":false,"configurable":false,"visible":false,"useJoinTable":true,"type":"relation","relation":"oneToOne","target":"admin::user"}},"kind":"collectionType","modelType":"contentType","modelName":"unique","uid":"api::unique.unique","globalId":"Unique"}
|
||||
{"collectionName":"upcoming_matches","info":{"singularName":"upcoming-match","pluralName":"upcoming-matches","displayName":"Upcoming Matches"},"options":{"draftAndPublish":true},"pluginOptions":{},"attributes":{"title":{"type":"string"},"number_of_upcoming_matches":{"type":"integer"},"next_match":{"type":"date"},"createdAt":{"type":"datetime"},"updatedAt":{"type":"datetime"},"publishedAt":{"type":"datetime","configurable":false,"writable":true,"visible":false},"createdBy":{"type":"relation","relation":"oneToOne","target":"admin::user","configurable":false,"writable":false,"visible":false,"useJoinTable":false,"private":true},"updatedBy":{"type":"relation","relation":"oneToOne","target":"admin::user","configurable":false,"writable":false,"visible":false,"useJoinTable":false,"private":true},"locale":{"writable":true,"private":true,"configurable":false,"visible":false,"type":"string"},"localizations":{"type":"relation","relation":"oneToMany","target":"api::upcoming-match.upcoming-match","writable":false,"private":true,"configurable":false,"visible":false,"unstable_virtual":true,"joinColumn":{"name":"document_id","referencedColumn":"document_id","referencedTable":"upcoming_matches"}},"strapi_stage":{"writable":true,"private":false,"configurable":false,"visible":false,"useJoinTable":true,"type":"relation","relation":"oneToOne","target":"plugin::review-workflows.workflow-stage"},"strapi_assignee":{"writable":true,"private":false,"configurable":false,"visible":false,"useJoinTable":true,"type":"relation","relation":"oneToOne","target":"admin::user"}},"kind":"singleType","modelType":"contentType","modelName":"upcoming-match","uid":"api::upcoming-match.upcoming-match","globalId":"UpcomingMatch"}
|
||||
{"collectionName":"admin_permissions","info":{"name":"Permission","description":"","singularName":"permission","pluralName":"permissions","displayName":"Permission"},"options":{"draftAndPublish":false},"pluginOptions":{"content-manager":{"visible":false},"content-type-builder":{"visible":false}},"attributes":{"action":{"type":"string","minLength":1,"configurable":false,"required":true},"actionParameters":{"type":"json","configurable":false,"required":false,"default":{}},"subject":{"type":"string","minLength":1,"configurable":false,"required":false},"properties":{"type":"json","configurable":false,"required":false,"default":{}},"conditions":{"type":"json","configurable":false,"required":false,"default":[]},"role":{"configurable":false,"type":"relation","relation":"manyToOne","inversedBy":"permissions","target":"admin::role"},"createdAt":{"type":"datetime"},"updatedAt":{"type":"datetime"},"publishedAt":{"type":"datetime","configurable":false,"writable":true,"visible":false},"createdBy":{"type":"relation","relation":"oneToOne","target":"admin::user","configurable":false,"writable":false,"visible":false,"useJoinTable":false,"private":true},"updatedBy":{"type":"relation","relation":"oneToOne","target":"admin::user","configurable":false,"writable":false,"visible":false,"useJoinTable":false,"private":true},"locale":{"writable":true,"private":true,"configurable":false,"visible":false,"type":"string"},"localizations":{"type":"relation","relation":"oneToMany","target":"admin::permission","writable":false,"private":true,"configurable":false,"visible":false,"unstable_virtual":true,"joinColumn":{"name":"document_id","referencedColumn":"document_id","referencedTable":"admin_permissions"}}},"kind":"collectionType","modelType":"contentType","modelName":"permission","uid":"admin::permission","plugin":"admin","globalId":"AdminPermission"}
|
||||
{"collectionName":"admin_users","info":{"name":"User","description":"","singularName":"user","pluralName":"users","displayName":"User"},"options":{"draftAndPublish":false},"pluginOptions":{"content-manager":{"visible":false},"content-type-builder":{"visible":false}},"attributes":{"firstname":{"type":"string","unique":false,"minLength":1,"configurable":false,"required":false},"lastname":{"type":"string","unique":false,"minLength":1,"configurable":false,"required":false},"username":{"type":"string","unique":false,"configurable":false,"required":false},"email":{"type":"email","minLength":6,"configurable":false,"required":true,"unique":true,"private":true},"password":{"type":"password","minLength":6,"configurable":false,"required":false,"private":true,"searchable":false},"resetPasswordToken":{"type":"string","configurable":false,"private":true,"searchable":false},"registrationToken":{"type":"string","configurable":false,"private":true,"searchable":false},"isActive":{"type":"boolean","default":false,"configurable":false,"private":true},"roles":{"configurable":false,"private":true,"type":"relation","relation":"manyToMany","inversedBy":"users","target":"admin::role","collectionName":"strapi_users_roles"},"blocked":{"type":"boolean","default":false,"configurable":false,"private":true},"preferedLanguage":{"type":"string","configurable":false,"required":false,"searchable":false},"createdAt":{"type":"datetime"},"updatedAt":{"type":"datetime"},"publishedAt":{"type":"datetime","configurable":false,"writable":true,"visible":false},"createdBy":{"type":"relation","relation":"oneToOne","target":"admin::user","configurable":false,"writable":false,"visible":false,"useJoinTable":false,"private":true},"updatedBy":{"type":"relation","relation":"oneToOne","target":"admin::user","configurable":false,"writable":false,"visible":false,"useJoinTable":false,"private":true},"locale":{"writable":true,"private":true,"configurable":false,"visible":false,"type":"string"},"localizations":{"type":"relation","relation":"oneToMany","target":"admin::user","writable":false,"private":true,"configurable":false,"visible":false,"unstable_virtual":true,"joinColumn":{"name":"document_id","referencedColumn":"document_id","referencedTable":"admin_users"}}},"kind":"collectionType","modelType":"contentType","modelName":"user","uid":"admin::user","plugin":"admin","globalId":"AdminUser"}
|
||||
{"collectionName":"admin_roles","info":{"name":"Role","description":"","singularName":"role","pluralName":"roles","displayName":"Role"},"options":{"draftAndPublish":false},"pluginOptions":{"content-manager":{"visible":false},"content-type-builder":{"visible":false}},"attributes":{"name":{"type":"string","minLength":1,"unique":true,"configurable":false,"required":true},"code":{"type":"string","minLength":1,"unique":true,"configurable":false,"required":true},"description":{"type":"string","configurable":false},"users":{"configurable":false,"type":"relation","relation":"manyToMany","mappedBy":"roles","target":"admin::user"},"permissions":{"configurable":false,"type":"relation","relation":"oneToMany","mappedBy":"role","target":"admin::permission"},"createdAt":{"type":"datetime"},"updatedAt":{"type":"datetime"},"publishedAt":{"type":"datetime","configurable":false,"writable":true,"visible":false},"createdBy":{"type":"relation","relation":"oneToOne","target":"admin::user","configurable":false,"writable":false,"visible":false,"useJoinTable":false,"private":true},"updatedBy":{"type":"relation","relation":"oneToOne","target":"admin::user","configurable":false,"writable":false,"visible":false,"useJoinTable":false,"private":true},"locale":{"writable":true,"private":true,"configurable":false,"visible":false,"type":"string"},"localizations":{"type":"relation","relation":"oneToMany","target":"admin::role","writable":false,"private":true,"configurable":false,"visible":false,"unstable_virtual":true,"joinColumn":{"name":"document_id","referencedColumn":"document_id","referencedTable":"admin_roles"}}},"kind":"collectionType","modelType":"contentType","modelName":"role","uid":"admin::role","plugin":"admin","globalId":"AdminRole"}
|
||||
{"collectionName":"strapi_api_tokens","info":{"name":"Api Token","singularName":"api-token","pluralName":"api-tokens","displayName":"Api Token","description":""},"options":{"draftAndPublish":false},"pluginOptions":{"content-manager":{"visible":false},"content-type-builder":{"visible":false}},"attributes":{"name":{"type":"string","minLength":1,"configurable":false,"required":true,"unique":true},"description":{"type":"string","minLength":1,"configurable":false,"required":false,"default":""},"type":{"type":"enumeration","enum":["read-only","full-access","custom"],"configurable":false,"required":true,"default":"read-only"},"accessKey":{"type":"string","minLength":1,"configurable":false,"required":true,"searchable":false},"encryptedKey":{"type":"text","minLength":1,"configurable":false,"required":false,"searchable":false},"lastUsedAt":{"type":"datetime","configurable":false,"required":false},"permissions":{"type":"relation","target":"admin::api-token-permission","relation":"oneToMany","mappedBy":"token","configurable":false,"required":false},"expiresAt":{"type":"datetime","configurable":false,"required":false},"lifespan":{"type":"biginteger","configurable":false,"required":false},"createdAt":{"type":"datetime"},"updatedAt":{"type":"datetime"},"publishedAt":{"type":"datetime","configurable":false,"writable":true,"visible":false},"createdBy":{"type":"relation","relation":"oneToOne","target":"admin::user","configurable":false,"writable":false,"visible":false,"useJoinTable":false,"private":true},"updatedBy":{"type":"relation","relation":"oneToOne","target":"admin::user","configurable":false,"writable":false,"visible":false,"useJoinTable":false,"private":true},"locale":{"writable":true,"private":true,"configurable":false,"visible":false,"type":"string"},"localizations":{"type":"relation","relation":"oneToMany","target":"admin::api-token","writable":false,"private":true,"configurable":false,"visible":false,"unstable_virtual":true,"joinColumn":{"name":"document_id","referencedColumn":"document_id","referencedTable":"strapi_api_tokens"}}},"kind":"collectionType","modelType":"contentType","modelName":"api-token","uid":"admin::api-token","plugin":"admin","globalId":"AdminApiToken"}
|
||||
{"collectionName":"strapi_api_token_permissions","info":{"name":"API Token Permission","description":"","singularName":"api-token-permission","pluralName":"api-token-permissions","displayName":"API Token Permission"},"options":{"draftAndPublish":false},"pluginOptions":{"content-manager":{"visible":false},"content-type-builder":{"visible":false}},"attributes":{"action":{"type":"string","minLength":1,"configurable":false,"required":true},"token":{"configurable":false,"type":"relation","relation":"manyToOne","inversedBy":"permissions","target":"admin::api-token"},"createdAt":{"type":"datetime"},"updatedAt":{"type":"datetime"},"publishedAt":{"type":"datetime","configurable":false,"writable":true,"visible":false},"createdBy":{"type":"relation","relation":"oneToOne","target":"admin::user","configurable":false,"writable":false,"visible":false,"useJoinTable":false,"private":true},"updatedBy":{"type":"relation","relation":"oneToOne","target":"admin::user","configurable":false,"writable":false,"visible":false,"useJoinTable":false,"private":true},"locale":{"writable":true,"private":true,"configurable":false,"visible":false,"type":"string"},"localizations":{"type":"relation","relation":"oneToMany","target":"admin::api-token-permission","writable":false,"private":true,"configurable":false,"visible":false,"unstable_virtual":true,"joinColumn":{"name":"document_id","referencedColumn":"document_id","referencedTable":"strapi_api_token_permissions"}}},"kind":"collectionType","modelType":"contentType","modelName":"api-token-permission","uid":"admin::api-token-permission","plugin":"admin","globalId":"AdminApiTokenPermission"}
|
||||
{"collectionName":"strapi_transfer_tokens","info":{"name":"Transfer Token","singularName":"transfer-token","pluralName":"transfer-tokens","displayName":"Transfer Token","description":""},"options":{"draftAndPublish":false},"pluginOptions":{"content-manager":{"visible":false},"content-type-builder":{"visible":false}},"attributes":{"name":{"type":"string","minLength":1,"configurable":false,"required":true,"unique":true},"description":{"type":"string","minLength":1,"configurable":false,"required":false,"default":""},"accessKey":{"type":"string","minLength":1,"configurable":false,"required":true},"lastUsedAt":{"type":"datetime","configurable":false,"required":false},"permissions":{"type":"relation","target":"admin::transfer-token-permission","relation":"oneToMany","mappedBy":"token","configurable":false,"required":false},"expiresAt":{"type":"datetime","configurable":false,"required":false},"lifespan":{"type":"biginteger","configurable":false,"required":false},"createdAt":{"type":"datetime"},"updatedAt":{"type":"datetime"},"publishedAt":{"type":"datetime","configurable":false,"writable":true,"visible":false},"createdBy":{"type":"relation","relation":"oneToOne","target":"admin::user","configurable":false,"writable":false,"visible":false,"useJoinTable":false,"private":true},"updatedBy":{"type":"relation","relation":"oneToOne","target":"admin::user","configurable":false,"writable":false,"visible":false,"useJoinTable":false,"private":true},"locale":{"writable":true,"private":true,"configurable":false,"visible":false,"type":"string"},"localizations":{"type":"relation","relation":"oneToMany","target":"admin::transfer-token","writable":false,"private":true,"configurable":false,"visible":false,"unstable_virtual":true,"joinColumn":{"name":"document_id","referencedColumn":"document_id","referencedTable":"strapi_transfer_tokens"}}},"kind":"collectionType","modelType":"contentType","modelName":"transfer-token","uid":"admin::transfer-token","plugin":"admin","globalId":"AdminTransferToken"}
|
||||
{"collectionName":"strapi_transfer_token_permissions","info":{"name":"Transfer Token Permission","description":"","singularName":"transfer-token-permission","pluralName":"transfer-token-permissions","displayName":"Transfer Token Permission"},"options":{"draftAndPublish":false},"pluginOptions":{"content-manager":{"visible":false},"content-type-builder":{"visible":false}},"attributes":{"action":{"type":"string","minLength":1,"configurable":false,"required":true},"token":{"configurable":false,"type":"relation","relation":"manyToOne","inversedBy":"permissions","target":"admin::transfer-token"},"createdAt":{"type":"datetime"},"updatedAt":{"type":"datetime"},"publishedAt":{"type":"datetime","configurable":false,"writable":true,"visible":false},"createdBy":{"type":"relation","relation":"oneToOne","target":"admin::user","configurable":false,"writable":false,"visible":false,"useJoinTable":false,"private":true},"updatedBy":{"type":"relation","relation":"oneToOne","target":"admin::user","configurable":false,"writable":false,"visible":false,"useJoinTable":false,"private":true},"locale":{"writable":true,"private":true,"configurable":false,"visible":false,"type":"string"},"localizations":{"type":"relation","relation":"oneToMany","target":"admin::transfer-token-permission","writable":false,"private":true,"configurable":false,"visible":false,"unstable_virtual":true,"joinColumn":{"name":"document_id","referencedColumn":"document_id","referencedTable":"strapi_transfer_token_permissions"}}},"kind":"collectionType","modelType":"contentType","modelName":"transfer-token-permission","uid":"admin::transfer-token-permission","plugin":"admin","globalId":"AdminTransferTokenPermission"}
|
||||
{"collectionName":"strapi_audit_logs","info":{"singularName":"audit-log","pluralName":"audit-logs","displayName":"Audit Log"},"options":{"timestamps":false,"draftAndPublish":false},"pluginOptions":{"content-manager":{"visible":false},"content-type-builder":{"visible":false}},"attributes":{"action":{"type":"string","required":true},"date":{"type":"datetime","required":true},"user":{"type":"relation","relation":"oneToOne","target":"admin::user"},"payload":{"type":"json"},"createdAt":{"type":"datetime"},"updatedAt":{"type":"datetime"},"publishedAt":{"type":"datetime","configurable":false,"writable":true,"visible":false},"createdBy":{"type":"relation","relation":"oneToOne","target":"admin::user","configurable":false,"writable":false,"visible":false,"useJoinTable":false,"private":true},"updatedBy":{"type":"relation","relation":"oneToOne","target":"admin::user","configurable":false,"writable":false,"visible":false,"useJoinTable":false,"private":true},"locale":{"writable":true,"private":true,"configurable":false,"visible":false,"type":"string"},"localizations":{"type":"relation","relation":"oneToMany","target":"admin::audit-log","writable":false,"private":true,"configurable":false,"visible":false,"unstable_virtual":true,"joinColumn":{"name":"document_id","referencedColumn":"document_id","referencedTable":"strapi_audit_logs"}}},"kind":"collectionType","modelType":"contentType","modelName":"audit-log","uid":"admin::audit-log","plugin":"admin","globalId":"AdminAuditLog"}
|
||||
{"collectionName":"components_product_variations","info":{"displayName":"variations"},"options":{},"attributes":{"name":{"type":"string"},"description":{"type":"text"},"price":{"type":"decimal"},"sku":{"type":"integer"}},"modelType":"component","modelName":"variations","uid":"product.variations","globalId":"ComponentProductVariations"}
|
||||
{"collectionName":"components_unique_top_level","info":{"displayName":"Top Level","description":"Contains a nested component with all the possible unique field types."},"attributes":{"nestedUnique":{"type":"component","repeatable":false,"component":"unique.all","pluginOptions":{"i18n":{"localized":true}}}},"modelType":"component","modelName":"top-level","uid":"unique.top-level","globalId":"ComponentUniqueTopLevel"}
|
||||
{"collectionName":"components_unique_all","info":{"displayName":"All","description":"Contains all the unique fields types."},"attributes":{"ComponentTextShort":{"pluginOptions":{"i18n":{"localized":true}},"type":"string","unique":true},"ComponentTextLong":{"pluginOptions":{"i18n":{"localized":true}},"type":"text","unique":true},"ComponentNumberInteger":{"pluginOptions":{"i18n":{"localized":true}},"type":"integer","unique":true},"ComponentNumberBigInteger":{"pluginOptions":{"i18n":{"localized":true}},"type":"biginteger","unique":true},"ComponentNumberDecimal":{"pluginOptions":{"i18n":{"localized":true}},"type":"decimal","unique":true},"ComponentNumberFloat":{"pluginOptions":{"i18n":{"localized":true}},"type":"float","unique":true},"ComponentEmail":{"pluginOptions":{"i18n":{"localized":true}},"type":"email","unique":true},"ComponentDateDate":{"pluginOptions":{"i18n":{"localized":true}},"type":"date","unique":true},"ComponentDateDateTime":{"pluginOptions":{"i18n":{"localized":true}},"type":"datetime","unique":true},"ComponentDateTime":{"pluginOptions":{"i18n":{"localized":true}},"type":"time","unique":true}},"modelType":"component","modelName":"all","uid":"unique.all","globalId":"ComponentUniqueAll"}
|
||||
{"collectionName":"components_page_blocks_product_carousels","info":{"displayName":"Product carousel"},"options":{},"attributes":{"title":{"type":"string","minLength":5,"maxLength":20},"products":{"type":"relation","relation":"oneToMany","target":"api::product.product"}},"modelType":"component","modelName":"product-carousel","uid":"page-blocks.product-carousel","globalId":"ComponentPageBlocksProductCarousel"}
|
||||
{"collectionName":"components_page_blocks_hero_images","info":{"displayName":"Hero Image"},"options":{},"attributes":{"title":{"type":"string"},"content":{"type":"blocks"},"background_image":{"allowedTypes":["images","files","videos","audios"],"type":"media","multiple":false,"required":false}},"modelType":"component","modelName":"hero-image","uid":"page-blocks.hero-image","globalId":"ComponentPageBlocksHeroImage"}
|
||||
{"collectionName":"components_page_blocks_content_and_images","info":{"displayName":"Content and Image"},"options":{},"attributes":{"content":{"type":"blocks"},"media":{"allowedTypes":["images","files","videos","audios"],"type":"media","multiple":true},"content_is_left":{"type":"boolean","default":true,"required":true}},"modelType":"component","modelName":"content-and-image","uid":"page-blocks.content-and-image","globalId":"ComponentPageBlocksContentAndImage"}
|
||||
{"collectionName":"components_meta_seos","info":{"displayName":"Seo","description":""},"options":{},"attributes":{"title":{"type":"string"},"description":{"type":"text","maxLength":150},"indexable":{"type":"boolean","default":false,"required":true},"image":{"type":"media","multiple":true,"required":false,"allowedTypes":["images"]}},"modelType":"component","modelName":"seo","uid":"meta.seo","globalId":"ComponentMetaSeo"}
|
||||
{"collectionName":"components_match_player","info":{"displayName":"Player","icon":"moon"},"options":{},"attributes":{"full_name":{"type":"string","required":true,"regex":"^(?!.*nate).*"},"position":{"type":"string","required":false}},"modelType":"component","modelName":"player","uid":"match.player","globalId":"ComponentMatchPlayer"}
|
||||