Feature/rebrand (#27)
This commit is contained in:
parent
11a684f372
commit
8a59f850d1
@ -17,7 +17,7 @@ module.exports = {
|
|||||||
'cypress/globals': true,
|
'cypress/globals': true,
|
||||||
},
|
},
|
||||||
globals: {
|
globals: {
|
||||||
SIMPLE_CMS_CORE_VERSION: false,
|
STATIC_CMS_CORE_VERSION: false,
|
||||||
CMS_ENV: false,
|
CMS_ENV: false,
|
||||||
},
|
},
|
||||||
rules: {
|
rules: {
|
||||||
|
@ -55,7 +55,7 @@ further defined and clarified by project maintainers.
|
|||||||
## Enforcement
|
## Enforcement
|
||||||
|
|
||||||
Instances of abusive, harassing, or otherwise unacceptable behavior may be
|
Instances of abusive, harassing, or otherwise unacceptable behavior may be
|
||||||
reported by contacting the project team at simplecmsorg@gmail.com. All
|
reported by contacting the project team at staticjscms@gmail.com. All
|
||||||
complaints will be reviewed and investigated and will result in a response that
|
complaints will be reviewed and investigated and will result in a response that
|
||||||
is deemed necessary and appropriate to the circumstances. The project team is
|
is deemed necessary and appropriate to the circumstances. The project team is
|
||||||
obligated to maintain confidentiality with regard to the reporter of an incident.
|
obligated to maintain confidentiality with regard to the reporter of an incident.
|
||||||
|
@ -3,7 +3,7 @@
|
|||||||
Contributions are always welcome, no matter how large or small. Before contributing,
|
Contributions are always welcome, no matter how large or small. Before contributing,
|
||||||
please read the [code of conduct](CODE_OF_CONDUCT.md).
|
please read the [code of conduct](CODE_OF_CONDUCT.md).
|
||||||
|
|
||||||
For details on contributing to documentation, see [Website Directory Readme](https://github.com/SimpleCMS/simple-cms/blob/main/website/README.md).
|
For details on contributing to documentation, see [Website Directory Readme](https://github.com/StaticJsCMS/static-cms/blob/main/website/README.md).
|
||||||
|
|
||||||
## Setup
|
## Setup
|
||||||
|
|
||||||
@ -14,8 +14,8 @@ For details on contributing to documentation, see [Website Directory Readme](htt
|
|||||||
> Only required on the first run, subsequent runs can use `yarn start` to both bootstrap and run the development server.
|
> Only required on the first run, subsequent runs can use `yarn start` to both bootstrap and run the development server.
|
||||||
|
|
||||||
```sh
|
```sh
|
||||||
git clone https://github.com/SimpleCMS/simple-cms
|
git clone https://github.com/StaticJsCMS/static-cms
|
||||||
cd simple-cms
|
cd static-cms
|
||||||
yarn
|
yarn
|
||||||
```
|
```
|
||||||
|
|
||||||
@ -45,7 +45,7 @@ yarn clean
|
|||||||
|
|
||||||
### build
|
### build
|
||||||
|
|
||||||
Runs the `clean` script and builds the simple-cms-core.
|
Runs the `clean` script and builds the static-cms-core.
|
||||||
|
|
||||||
```sh
|
```sh
|
||||||
yarn build
|
yarn build
|
||||||
@ -65,7 +65,7 @@ We actively welcome your pull requests!
|
|||||||
|
|
||||||
If you need help with Git or our workflow, please ask. We want your contributions even if you're just learning Git. Our maintainers are happy to help!
|
If you need help with Git or our workflow, please ask. We want your contributions even if you're just learning Git. Our maintainers are happy to help!
|
||||||
|
|
||||||
Simple CMS uses the [Forking Workflow](https://www.atlassian.com/git/tutorials/comparing-workflows/forking-workflow) + [Feature Branches](https://www.atlassian.com/git/tutorials/comparing-workflows/feature-branch-workflow). Additionally, PR's should be [rebased](https://www.atlassian.com/git/tutorials/merging-vs-rebasing) on main when opened, and again before merging.
|
Static CMS uses the [Forking Workflow](https://www.atlassian.com/git/tutorials/comparing-workflows/forking-workflow) + [Feature Branches](https://www.atlassian.com/git/tutorials/comparing-workflows/feature-branch-workflow). Additionally, PR's should be [rebased](https://www.atlassian.com/git/tutorials/merging-vs-rebasing) on main when opened, and again before merging.
|
||||||
|
|
||||||
1. Fork the repo.
|
1. Fork the repo.
|
||||||
2. Create a branch from `main`. If you're addressing a specific issue, prefix your branch name with the issue number.
|
2. Create a branch from `main`. If you're addressing a specific issue, prefix your branch name with the issue number.
|
||||||
@ -95,7 +95,7 @@ backend:
|
|||||||
|
|
||||||
When debugging the CMS with Git Gateway you must:
|
When debugging the CMS with Git Gateway you must:
|
||||||
|
|
||||||
1. Have a Netlify site with [Git Gateway](https://docs.netlify.com/visitor-access/git-gateway/) and [Netlify Identity](https://docs.netlify.com/visitor-access/identity/) enabled. An easy way to create such a site is to use a [template](https://www.simplecms.github.io/simple-cms/docs/start-with-a-template/), for example the [Gatsby template](https://app.netlify.com/start/deploy?repository=https://github.com/AustinGreen/gatsby-starter-netlify-cms&stack=cms)
|
1. Have a Netlify site with [Git Gateway](https://docs.netlify.com/visitor-access/git-gateway/) and [Netlify Identity](https://docs.netlify.com/visitor-access/identity/) enabled. An easy way to create such a site is to use a [template](https://www.staticjscms.github.io/static-cms/docs/start-with-a-template/), for example the [Gatsby template](https://app.netlify.com/start/deploy?repository=https://github.com/AustinGreen/gatsby-starter-netlify-cms&stack=cms)
|
||||||
2. Tell the CMS the URL of your Netlify site using a local storage item. To do so:
|
2. Tell the CMS the URL of your Netlify site using a local storage item. To do so:
|
||||||
|
|
||||||
1. Open `http://localhost:8080/` in the browser
|
1. Open `http://localhost:8080/` in the browser
|
||||||
@ -106,4 +106,4 @@ When debugging the CMS with Git Gateway you must:
|
|||||||
|
|
||||||
## License
|
## License
|
||||||
|
|
||||||
By contributing to Simple CMS, you agree that your contributions will be licensed under its [MIT license](LICENSE).
|
By contributing to Static CMS, you agree that your contributions will be licensed under its [MIT license](LICENSE).
|
||||||
|
34
README.md
34
README.md
@ -1,13 +1,13 @@
|
|||||||
<div align="center">
|
<div align="center">
|
||||||
<img src="simple-cms-logo.png" width="500px" />
|
<img src="static-cms-logo.png" width="500px" />
|
||||||
|
|
||||||
[![GitHub license](https://img.shields.io/badge/license-MIT-blue.svg)](https://github.com/SimpleCMS/simple-cms/blob/main/LICENSE)
|
[![GitHub license](https://img.shields.io/badge/license-MIT-blue.svg)](https://github.com/StaticJsCMS/static-cms/blob/main/LICENSE)
|
||||||
[![npm latest package](https://img.shields.io/npm/v/@simplecms/simple-cms-core/latest.svg)](https://www.npmjs.com/package/@simplecms/simple-cms-core)
|
[![npm latest package](https://img.shields.io/npm/v/@staticcms/core/latest.svg)](https://www.npmjs.com/package/@staticcms/core)
|
||||||
[![PRs Welcome](https://img.shields.io/badge/PRs-welcome-brightgreen.svg)](https://github.com/SimpleCMS/simple-cms/blob/main/CONTRIBUTING.md)
|
[![PRs Welcome](https://img.shields.io/badge/PRs-welcome-brightgreen.svg)](https://github.com/StaticJsCMS/static-cms/blob/main/CONTRIBUTING.md)
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
[simplecms.github.io/simple-cms](https://www.simplecms.github.io/simple-cms/)
|
[staticjscms.github.io/static-cms](https://www.staticjscms.github.io/static-cms/)
|
||||||
|
|
||||||
A CMS for static site generators. Give users a simple way to edit
|
A CMS for static site generators. Give users a simple way to edit
|
||||||
and add content to any site built with a static site generator.
|
and add content to any site built with a static site generator.
|
||||||
@ -16,7 +16,7 @@ and add content to any site built with a static site generator.
|
|||||||
|
|
||||||
## How It Works
|
## How It Works
|
||||||
|
|
||||||
Simple CMS is a single-page app that you pull into the `/admin` part of your site.
|
Static CMS is a single-page app that you pull into the `/admin` part of your site.
|
||||||
|
|
||||||
It presents a clean UI for editing content stored in a Git repository.
|
It presents a clean UI for editing content stored in a Git repository.
|
||||||
|
|
||||||
@ -26,21 +26,21 @@ tweak the main layout of the CMS a bit to fit your own site.
|
|||||||
When a user navigates to `/admin/` they'll be prompted to log in, and once authenticated
|
When a user navigates to `/admin/` they'll be prompted to log in, and once authenticated
|
||||||
they'll be able to create new content or edit existing content.
|
they'll be able to create new content or edit existing content.
|
||||||
|
|
||||||
Read more about Simple CMS [Core Concepts](https://www.simplecms.github.io/simple-cms/docs/intro/).
|
Read more about Static CMS [Core Concepts](https://www.staticjscms.github.io/static-cms/docs/intro/).
|
||||||
|
|
||||||
# Installation and Configuration
|
# Installation and Configuration
|
||||||
|
|
||||||
The Simple CMS can be used in two different ways.
|
The Static CMS can be used in two different ways.
|
||||||
|
|
||||||
* A Quick and easy install, that requires you to create a single HTML file and a configuration file. All the CMS JavaScript and CSS are loaded from a CDN.
|
* A Quick and easy install, that requires you to create a single HTML file and a configuration file. All the CMS JavaScript and CSS are loaded from a CDN.
|
||||||
To learn more about this installation method, refer to the [Quick Start Guide](https://www.simplecms.github.io/simple-cms/docs/quick-start/)
|
To learn more about this installation method, refer to the [Quick Start Guide](https://www.staticjscms.github.io/static-cms/docs/quick-start/)
|
||||||
* A complete, more complex install, that gives you more flexibility but requires that you use a static site builder with a build system that supports npm packages.
|
* A complete, more complex install, that gives you more flexibility but requires that you use a static site builder with a build system that supports npm packages.
|
||||||
|
|
||||||
# simple-cms-core
|
# static-cms-core
|
||||||
|
|
||||||
## Installation
|
## Installation
|
||||||
|
|
||||||
`npm install @simplecms/simple-cms-core`
|
`npm install @staticcms/core`
|
||||||
|
|
||||||
## Setup
|
## Setup
|
||||||
|
|
||||||
@ -62,7 +62,7 @@ import {
|
|||||||
ListWidget,
|
ListWidget,
|
||||||
MapWidget,
|
MapWidget,
|
||||||
MarkdownWidget,
|
MarkdownWidget,
|
||||||
SimpleCmsCore as CMS,
|
StaticCmsCore as CMS,
|
||||||
NumberWidget,
|
NumberWidget,
|
||||||
ObjectWidget,
|
ObjectWidget,
|
||||||
ProxyBackend,
|
ProxyBackend,
|
||||||
@ -74,7 +74,7 @@ import {
|
|||||||
locales,
|
locales,
|
||||||
Icon,
|
Icon,
|
||||||
images
|
images
|
||||||
} from '@simple-cms/simple-cms-core';
|
} from '@static-cms/static-cms-core';
|
||||||
|
|
||||||
// Register all the things
|
// Register all the things
|
||||||
CMS.registerBackend('git-gateway', GitGatewayBackend);
|
CMS.registerBackend('git-gateway', GitGatewayBackend);
|
||||||
@ -117,20 +117,20 @@ Object.keys(images).forEach(iconName => {
|
|||||||
|
|
||||||
# Contributing
|
# Contributing
|
||||||
|
|
||||||
New contributors are always welcome! Check out [CONTRIBUTING.md](https://github.com/SimpleCMS/simple-cms/blob/main/CONTRIBUTING.md) to get involved.
|
New contributors are always welcome! Check out [CONTRIBUTING.md](https://github.com/StaticJsCMS/static-cms/blob/main/CONTRIBUTING.md) to get involved.
|
||||||
|
|
||||||
# Change Log
|
# Change Log
|
||||||
|
|
||||||
This project adheres to [Semantic Versioning](http://semver.org/).
|
This project adheres to [Semantic Versioning](http://semver.org/).
|
||||||
Every release is documented on the Github [Releases](https://github.com/SimpleCMS/simple-cms/releases) page.
|
Every release is documented on the Github [Releases](https://github.com/StaticJsCMS/static-cms/releases) page.
|
||||||
|
|
||||||
# License
|
# License
|
||||||
|
|
||||||
Simple CMS is released under the [MIT License](LICENSE).
|
Static CMS is released under the [MIT License](LICENSE).
|
||||||
Please make sure you understand its [implications and guarantees](https://writing.kemitchell.com/2016/09/21/MIT-License-Line-by-Line.html).
|
Please make sure you understand its [implications and guarantees](https://writing.kemitchell.com/2016/09/21/MIT-License-Line-by-Line.html).
|
||||||
|
|
||||||
# Netlify CMS
|
# Netlify CMS
|
||||||
|
|
||||||
Simple CMS is a fork of Netlify CMS focusing on the core product over adding massive new features.
|
Static CMS is a fork of Netlify CMS focusing on the core product over adding massive new features.
|
||||||
|
|
||||||
# Thanks
|
# Thanks
|
||||||
|
@ -59,7 +59,7 @@ function plugins() {
|
|||||||
[
|
[
|
||||||
'transform-define',
|
'transform-define',
|
||||||
{
|
{
|
||||||
SIMPLE_CMS_CORE_VERSION: `${coreVersion}`,
|
STATIC_CMS_CORE_VERSION: `${coreVersion}`,
|
||||||
},
|
},
|
||||||
],
|
],
|
||||||
[
|
[
|
||||||
|
File diff suppressed because one or more lines are too long
2
index.d.ts
vendored
2
index.d.ts
vendored
@ -1,5 +1,5 @@
|
|||||||
/* eslint-disable @typescript-eslint/no-explicit-any */
|
/* eslint-disable @typescript-eslint/no-explicit-any */
|
||||||
declare module '@simplecms/simple-cms-core' {
|
declare module '@staticcms/core' {
|
||||||
import type { Iterable as ImmutableIterable, List, Map } from 'immutable';
|
import type { Iterable as ImmutableIterable, List, Map } from 'immutable';
|
||||||
import type { ComponentType, FocusEventHandler, ReactNode } from 'react';
|
import type { ComponentType, FocusEventHandler, ReactNode } from 'react';
|
||||||
import type { t } from 'react-polyglot';
|
import type { t } from 'react-polyglot';
|
||||||
|
10
package.json
10
package.json
@ -1,10 +1,10 @@
|
|||||||
{
|
{
|
||||||
"name": "@simplecms/simple-cms-core",
|
"name": "@staticcms/core",
|
||||||
"version": "0.2.0",
|
"version": "0.2.0",
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
"description": "Simple CMS core application.",
|
"description": "Static CMS core application.",
|
||||||
"repository": "https://github.com/SimpleCMS/simple-cms",
|
"repository": "https://github.com/StaticJsCMS/static-cms",
|
||||||
"bugs": "https://github.com/SimpleCMS/simple-cms/issues",
|
"bugs": "https://github.com/StaticJsCMS/static-cms/issues",
|
||||||
"keywords": [
|
"keywords": [
|
||||||
"simple",
|
"simple",
|
||||||
"cms",
|
"cms",
|
||||||
@ -27,7 +27,7 @@
|
|||||||
"start": "run-s clean develop"
|
"start": "run-s clean develop"
|
||||||
},
|
},
|
||||||
"module": "dist/esm/index.js",
|
"module": "dist/esm/index.js",
|
||||||
"main": "dist/simple-cms-core.js",
|
"main": "dist/static-cms-core.js",
|
||||||
"files": [
|
"files": [
|
||||||
"src/",
|
"src/",
|
||||||
"dist/",
|
"dist/",
|
||||||
|
Binary file not shown.
Before Width: | Height: | Size: 66 KiB After Width: | Height: | Size: 66 KiB |
@ -425,7 +425,7 @@ export async function detectProxyServer(localBackend?: boolean | CmsLocalBackend
|
|||||||
: localBackend.url || defaultUrl.replace('localhost', location.hostname);
|
: localBackend.url || defaultUrl.replace('localhost', location.hostname);
|
||||||
|
|
||||||
try {
|
try {
|
||||||
console.info(`Looking for Simple CMS Proxy Server at '${proxyUrl}'`);
|
console.info(`Looking for Static CMS Proxy Server at '${proxyUrl}'`);
|
||||||
const res = await fetch(`${proxyUrl}`, {
|
const res = await fetch(`${proxyUrl}`, {
|
||||||
method: 'POST',
|
method: 'POST',
|
||||||
headers: { 'Content-Type': 'application/json' },
|
headers: { 'Content-Type': 'application/json' },
|
||||||
@ -436,14 +436,14 @@ export async function detectProxyServer(localBackend?: boolean | CmsLocalBackend
|
|||||||
type?: string;
|
type?: string;
|
||||||
};
|
};
|
||||||
if (typeof repo === 'string' && typeof type === 'string') {
|
if (typeof repo === 'string' && typeof type === 'string') {
|
||||||
console.info(`Detected Simple CMS Proxy Server at '${proxyUrl}' with repo: '${repo}'`);
|
console.info(`Detected Static CMS Proxy Server at '${proxyUrl}' with repo: '${repo}'`);
|
||||||
return { proxyUrl, type };
|
return { proxyUrl, type };
|
||||||
} else {
|
} else {
|
||||||
console.info(`Simple CMS Proxy Server not detected at '${proxyUrl}'`);
|
console.info(`Static CMS Proxy Server not detected at '${proxyUrl}'`);
|
||||||
return {};
|
return {};
|
||||||
}
|
}
|
||||||
} catch {
|
} catch {
|
||||||
console.info(`Simple CMS Proxy Server not detected at '${proxyUrl}'`);
|
console.info(`Static CMS Proxy Server not detected at '${proxyUrl}'`);
|
||||||
return {};
|
return {};
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -90,7 +90,7 @@ function updateAssetProxies(
|
|||||||
}
|
}
|
||||||
|
|
||||||
export class LocalStorageAuthStore {
|
export class LocalStorageAuthStore {
|
||||||
storageKey = 'simple-cms-user';
|
storageKey = 'static-cms-user';
|
||||||
|
|
||||||
retrieve() {
|
retrieve() {
|
||||||
const data = window.localStorage.getItem(this.storageKey);
|
const data = window.localStorage.getItem(this.storageKey);
|
||||||
|
@ -2,7 +2,7 @@ import AzureBackend from './implementation';
|
|||||||
import API from './API';
|
import API from './API';
|
||||||
import AuthenticationPage from './AuthenticationPage';
|
import AuthenticationPage from './AuthenticationPage';
|
||||||
|
|
||||||
export const SimpleCmsBackendAzure = {
|
export const StaticCmsBackendAzure = {
|
||||||
AzureBackend,
|
AzureBackend,
|
||||||
API,
|
API,
|
||||||
AuthenticationPage,
|
AuthenticationPage,
|
||||||
|
@ -2,7 +2,7 @@ import BitbucketBackend from './implementation';
|
|||||||
import API from './API';
|
import API from './API';
|
||||||
import AuthenticationPage from './AuthenticationPage';
|
import AuthenticationPage from './AuthenticationPage';
|
||||||
|
|
||||||
export const SimpleCmsBackendBitbucket = {
|
export const StaticCmsBackendBitbucket = {
|
||||||
BitbucketBackend,
|
BitbucketBackend,
|
||||||
API,
|
API,
|
||||||
AuthenticationPage,
|
AuthenticationPage,
|
||||||
|
@ -294,7 +294,7 @@ export default class GitGateway implements Implementation {
|
|||||||
const userRoles = get(jwtDecode(token), 'app_metadata.roles', []);
|
const userRoles = get(jwtDecode(token), 'app_metadata.roles', []);
|
||||||
const validRole = intersection(userRoles, this.acceptRoles).length > 0;
|
const validRole = intersection(userRoles, this.acceptRoles).length > 0;
|
||||||
if (!validRole) {
|
if (!validRole) {
|
||||||
throw new Error("You don't have sufficient permissions to access Simple CMS");
|
throw new Error("You don't have sufficient permissions to access Static CMS");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -328,7 +328,7 @@ export default class GitGateway implements Implementation {
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (!(await this.api!.hasWriteAccess())) {
|
if (!(await this.api!.hasWriteAccess())) {
|
||||||
throw new Error("You don't have sufficient permissions to access Simple CMS");
|
throw new Error("You don't have sufficient permissions to access Static CMS");
|
||||||
}
|
}
|
||||||
return { name: userData.name, login: userData.email } as User;
|
return { name: userData.name, login: userData.email } as User;
|
||||||
});
|
});
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
import GitGatewayBackend from './implementation';
|
import GitGatewayBackend from './implementation';
|
||||||
import AuthenticationPage from './AuthenticationPage';
|
import AuthenticationPage from './AuthenticationPage';
|
||||||
|
|
||||||
export const SimpleCmsBackendGitGateway = {
|
export const StaticCmsBackendGitGateway = {
|
||||||
GitGatewayBackend,
|
GitGatewayBackend,
|
||||||
AuthenticationPage,
|
AuthenticationPage,
|
||||||
};
|
};
|
||||||
|
@ -130,7 +130,7 @@ export default class API {
|
|||||||
this.originRepoName = originRepoParts[1];
|
this.originRepoName = originRepoParts[1];
|
||||||
}
|
}
|
||||||
|
|
||||||
static DEFAULT_COMMIT_MESSAGE = 'Automatically generated by Simple CMS';
|
static DEFAULT_COMMIT_MESSAGE = 'Automatically generated by Static CMS';
|
||||||
|
|
||||||
user(): Promise<{ name: string; login: string }> {
|
user(): Promise<{ name: string; login: string }> {
|
||||||
if (!this._userPromise) {
|
if (!this._userPromise) {
|
||||||
@ -271,12 +271,12 @@ export default class API {
|
|||||||
}
|
}
|
||||||
|
|
||||||
checkMetadataRef() {
|
checkMetadataRef() {
|
||||||
return this.request(`${this.repoURL}/git/refs/meta/_simple_cms`)
|
return this.request(`${this.repoURL}/git/refs/meta/_static_cms`)
|
||||||
.then(response => response.object)
|
.then(response => response.object)
|
||||||
.catch(() => {
|
.catch(() => {
|
||||||
// Meta ref doesn't exist
|
// Meta ref doesn't exist
|
||||||
const readme = {
|
const readme = {
|
||||||
raw: '# Simple CMS\n\nThis tree is used by the Simple CMS to store metadata information for specific files and branches.',
|
raw: '# Static CMS\n\nThis tree is used by the Static CMS to store metadata information for specific files and branches.',
|
||||||
};
|
};
|
||||||
|
|
||||||
return this.uploadBlob(readme)
|
return this.uploadBlob(readme)
|
||||||
@ -289,7 +289,7 @@ export default class API {
|
|||||||
}),
|
}),
|
||||||
)
|
)
|
||||||
.then(tree => this.commit('First Commit', tree))
|
.then(tree => this.commit('First Commit', tree))
|
||||||
.then(response => this.createRef('meta', '_simple_cms', response.sha))
|
.then(response => this.createRef('meta', '_static_cms', response.sha))
|
||||||
.then(response => response.object);
|
.then(response => response.object);
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
@ -310,7 +310,7 @@ export default class API {
|
|||||||
await this.uploadBlob(file);
|
await this.uploadBlob(file);
|
||||||
const changeTree = await this.updateTree(branchData.sha, [file as TreeFile]);
|
const changeTree = await this.updateTree(branchData.sha, [file as TreeFile]);
|
||||||
const { sha } = await this.commit(`Updating “${key}” metadata`, changeTree);
|
const { sha } = await this.commit(`Updating “${key}” metadata`, changeTree);
|
||||||
await this.patchRef('meta', '_simple_cms', sha);
|
await this.patchRef('meta', '_static_cms', sha);
|
||||||
await localForage.setItem(`gh.meta.${key}`, {
|
await localForage.setItem(`gh.meta.${key}`, {
|
||||||
expires: Date.now() + 300000, // In 5 minutes
|
expires: Date.now() + 300000, // In 5 minutes
|
||||||
data,
|
data,
|
||||||
@ -336,7 +336,7 @@ export default class API {
|
|||||||
|
|
||||||
const changeTree = await this.updateTree(branchData.sha, [file]);
|
const changeTree = await this.updateTree(branchData.sha, [file]);
|
||||||
const { sha } = await this.commit(`Deleting “${key}” metadata`, changeTree);
|
const { sha } = await this.commit(`Deleting “${key}” metadata`, changeTree);
|
||||||
await this.patchRef('meta', '_simple_cms', sha);
|
await this.patchRef('meta', '_static_cms', sha);
|
||||||
this._metadataSemaphore?.leave();
|
this._metadataSemaphore?.leave();
|
||||||
resolve();
|
resolve();
|
||||||
} catch (err) {
|
} catch (err) {
|
||||||
@ -354,7 +354,7 @@ export default class API {
|
|||||||
);
|
);
|
||||||
|
|
||||||
const metadataRequestOptions = {
|
const metadataRequestOptions = {
|
||||||
params: { ref: 'refs/meta/_simple_cms' },
|
params: { ref: 'refs/meta/_static_cms' },
|
||||||
headers: { Accept: 'application/vnd.github.v3.raw' },
|
headers: { Accept: 'application/vnd.github.v3.raw' },
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -2,7 +2,7 @@ import GitHubBackend from './implementation';
|
|||||||
import API from './API';
|
import API from './API';
|
||||||
import AuthenticationPage from './AuthenticationPage';
|
import AuthenticationPage from './AuthenticationPage';
|
||||||
|
|
||||||
export const SimpleCmsBackendGithub = {
|
export const StaticCmsBackendGithub = {
|
||||||
GitHubBackend,
|
GitHubBackend,
|
||||||
API,
|
API,
|
||||||
AuthenticationPage,
|
AuthenticationPage,
|
||||||
|
@ -2,7 +2,7 @@ import GitLabBackend from './implementation';
|
|||||||
import API from './API';
|
import API from './API';
|
||||||
import AuthenticationPage from './AuthenticationPage';
|
import AuthenticationPage from './AuthenticationPage';
|
||||||
|
|
||||||
export const SimpleCmsBackendGitlab = {
|
export const StaticCmsBackendGitlab = {
|
||||||
GitLabBackend,
|
GitLabBackend,
|
||||||
API,
|
API,
|
||||||
AuthenticationPage,
|
AuthenticationPage,
|
||||||
|
@ -52,7 +52,7 @@ export default class AuthenticationPage extends React.Component {
|
|||||||
|
|
||||||
return (
|
return (
|
||||||
<StyledAuthenticationPage>
|
<StyledAuthenticationPage>
|
||||||
<PageLogoIcon size="300px" type="simple-cms" />
|
<PageLogoIcon size="300px" type="static-cms" />
|
||||||
<LoginButton disabled={inProgress} onClick={this.handleLogin}>
|
<LoginButton disabled={inProgress} onClick={this.handleLogin}>
|
||||||
{inProgress ? t('auth.loggingIn') : t('auth.login')}
|
{inProgress ? t('auth.loggingIn') : t('auth.login')}
|
||||||
</LoginButton>
|
</LoginButton>
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
import ProxyBackend from './implementation';
|
import ProxyBackend from './implementation';
|
||||||
import AuthenticationPage from './AuthenticationPage';
|
import AuthenticationPage from './AuthenticationPage';
|
||||||
|
|
||||||
export const SimpleCmsBackendProxy = {
|
export const StaticCmsBackendProxy = {
|
||||||
ProxyBackend,
|
ProxyBackend,
|
||||||
AuthenticationPage,
|
AuthenticationPage,
|
||||||
};
|
};
|
||||||
|
@ -62,7 +62,7 @@ export default class AuthenticationPage extends React.Component {
|
|||||||
|
|
||||||
return (
|
return (
|
||||||
<StyledAuthenticationPage>
|
<StyledAuthenticationPage>
|
||||||
<PageLogoIcon size="300px" type="simple-cms" />
|
<PageLogoIcon size="300px" type="static-cms" />
|
||||||
<LoginButton disabled={inProgress} onClick={this.handleLogin}>
|
<LoginButton disabled={inProgress} onClick={this.handleLogin}>
|
||||||
{inProgress ? t('auth.loggingIn') : t('auth.login')}
|
{inProgress ? t('auth.loggingIn') : t('auth.login')}
|
||||||
</LoginButton>
|
</LoginButton>
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
import TestBackend from './implementation';
|
import TestBackend from './implementation';
|
||||||
import AuthenticationPage from './AuthenticationPage';
|
import AuthenticationPage from './AuthenticationPage';
|
||||||
|
|
||||||
export const SimpleCmsBackendTest = {
|
export const StaticCmsBackendTest = {
|
||||||
TestBackend,
|
TestBackend,
|
||||||
AuthenticationPage,
|
AuthenticationPage,
|
||||||
};
|
};
|
||||||
|
4
src/bootstrap.js
vendored
4
src/bootstrap.js
vendored
@ -45,8 +45,8 @@ function bootstrap(opts = {}) {
|
|||||||
/**
|
/**
|
||||||
* Log the version number.
|
* Log the version number.
|
||||||
*/
|
*/
|
||||||
if (typeof SIMPLE_CMS_CORE_VERSION === 'string') {
|
if (typeof STATIC_CMS_CORE_VERSION === 'string') {
|
||||||
console.info(`simple-cms-core ${SIMPLE_CMS_CORE_VERSION}`);
|
console.info(`static-cms-core ${STATIC_CMS_CORE_VERSION}`);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -10,7 +10,7 @@ import cleanStack from 'clean-stack';
|
|||||||
import { buttons, colors } from '../../ui';
|
import { buttons, colors } from '../../ui';
|
||||||
import { localForage } from '../../lib/util';
|
import { localForage } from '../../lib/util';
|
||||||
|
|
||||||
const ISSUE_URL = 'https://github.com/SimpleCMS/simple-cms/issues/new?';
|
const ISSUE_URL = 'https://github.com/StaticJsCMS/static-cms/issues/new?';
|
||||||
|
|
||||||
function getIssueTemplate({ version, provider, browser, config }) {
|
function getIssueTemplate({ version, provider, browser, config }) {
|
||||||
return `
|
return `
|
||||||
@ -23,7 +23,7 @@ function getIssueTemplate({ version, provider, browser, config }) {
|
|||||||
**Screenshots**
|
**Screenshots**
|
||||||
|
|
||||||
**Applicable Versions:**
|
**Applicable Versions:**
|
||||||
- Simple CMS version: \`${version}\`
|
- Static CMS version: \`${version}\`
|
||||||
- Git provider: \`${provider}\`
|
- Git provider: \`${provider}\`
|
||||||
- Browser version: \`${browser}\`
|
- Browser version: \`${browser}\`
|
||||||
|
|
||||||
@ -38,8 +38,8 @@ ${config}
|
|||||||
|
|
||||||
function buildIssueTemplate({ config }) {
|
function buildIssueTemplate({ config }) {
|
||||||
let version = '';
|
let version = '';
|
||||||
if (typeof SIMPLE_CMS_CORE_VERSION === 'string') {
|
if (typeof STATIC_CMS_CORE_VERSION === 'string') {
|
||||||
version = `simple-cms@${SIMPLE_CMS_CORE_VERSION}`;
|
version = `static-cms@${STATIC_CMS_CORE_VERSION}`;
|
||||||
}
|
}
|
||||||
const template = getIssueTemplate({
|
const template = getIssueTemplate({
|
||||||
version,
|
version,
|
||||||
|
@ -64,7 +64,7 @@ function SettingsDropdown({ displayUrl, isTestRepo, imageUrl, onLogoutClick, t }
|
|||||||
<React.Fragment>
|
<React.Fragment>
|
||||||
{isTestRepo && (
|
{isTestRepo && (
|
||||||
<AppHeaderTestRepoIndicator
|
<AppHeaderTestRepoIndicator
|
||||||
href="https://www.simplecms.github.io/simple-cms/docs/test-backend"
|
href="https://www.staticjscms.github.io/static-cms/docs/test-backend"
|
||||||
target="_blank"
|
target="_blank"
|
||||||
rel="noopener noreferrer"
|
rel="noopener noreferrer"
|
||||||
>
|
>
|
||||||
|
@ -38,5 +38,5 @@ const image = {
|
|||||||
],
|
],
|
||||||
};
|
};
|
||||||
|
|
||||||
export const SimpleCmsEditorComponentImage = image;
|
export const StaticCmsEditorComponentImage = image;
|
||||||
export default image;
|
export default image;
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
import NetlifyAuthenticator from './netlify-auth';
|
import NetlifyAuthenticator from './netlify-auth';
|
||||||
import ImplicitAuthenticator from './implicit-oauth';
|
import ImplicitAuthenticator from './implicit-oauth';
|
||||||
import PkceAuthenticator from './pkce-oauth';
|
import PkceAuthenticator from './pkce-oauth';
|
||||||
export const SimpleCmsLibAuth = { NetlifyAuthenticator, ImplicitAuthenticator, PkceAuthenticator };
|
export const StaticCmsLibAuth = { NetlifyAuthenticator, ImplicitAuthenticator, PkceAuthenticator };
|
||||||
export { NetlifyAuthenticator, ImplicitAuthenticator, PkceAuthenticator };
|
export { NetlifyAuthenticator, ImplicitAuthenticator, PkceAuthenticator };
|
||||||
|
@ -30,7 +30,7 @@ async function createCodeChallenge(codeVerifier) {
|
|||||||
return btoa(sha).split('=')[0].replace(/\+/g, '-').replace(/\//g, '_');
|
return btoa(sha).split('=')[0].replace(/\+/g, '-').replace(/\//g, '_');
|
||||||
}
|
}
|
||||||
|
|
||||||
const CODE_VERIFIER_STORAGE_KEY = 'simple-cms-pkce-verifier-code';
|
const CODE_VERIFIER_STORAGE_KEY = 'static-cms-pkce-verifier-code';
|
||||||
|
|
||||||
function createCodeVerifier() {
|
function createCodeVerifier() {
|
||||||
const codeVerifier = generateVerifierCode();
|
const codeVerifier = generateVerifierCode();
|
||||||
|
@ -2,14 +2,14 @@ import uuid from 'uuid/v4';
|
|||||||
|
|
||||||
export function createNonce() {
|
export function createNonce() {
|
||||||
const nonce = uuid();
|
const nonce = uuid();
|
||||||
window.sessionStorage.setItem('simple-cms-auth', JSON.stringify({ nonce }));
|
window.sessionStorage.setItem('static-cms-auth', JSON.stringify({ nonce }));
|
||||||
return nonce;
|
return nonce;
|
||||||
}
|
}
|
||||||
|
|
||||||
export function validateNonce(check) {
|
export function validateNonce(check) {
|
||||||
const auth = window.sessionStorage.getItem('simple-cms-auth');
|
const auth = window.sessionStorage.getItem('static-cms-auth');
|
||||||
const valid = auth && JSON.parse(auth).nonce;
|
const valid = auth && JSON.parse(auth).nonce;
|
||||||
window.localStorage.removeItem('simple-cms-auth');
|
window.localStorage.removeItem('static-cms-auth');
|
||||||
return check === valid;
|
return check === valid;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -74,7 +74,7 @@ export type FetchError = FE;
|
|||||||
export type PointerFile = PF;
|
export type PointerFile = PF;
|
||||||
export type DataFile = DF;
|
export type DataFile = DF;
|
||||||
|
|
||||||
export const SimpleCmsLibUtil = {
|
export const StaticCmsLibUtil = {
|
||||||
APIError,
|
APIError,
|
||||||
Cursor,
|
Cursor,
|
||||||
CURSOR_COMPATIBILITY_SYMBOL,
|
CURSOR_COMPATIBILITY_SYMBOL,
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
import * as stringTemplate from './stringTemplate';
|
import * as stringTemplate from './stringTemplate';
|
||||||
import * as validations from './validations';
|
import * as validations from './validations';
|
||||||
|
|
||||||
export const SimpleCmsLibWidgets = {
|
export const StaticCmsLibWidgets = {
|
||||||
stringTemplate,
|
stringTemplate,
|
||||||
validations,
|
validations,
|
||||||
};
|
};
|
||||||
|
@ -84,5 +84,5 @@ async function init({ options = {}, handleInsert } = {}) {
|
|||||||
|
|
||||||
const cloudinaryMediaLibrary = { name: 'cloudinary', init };
|
const cloudinaryMediaLibrary = { name: 'cloudinary', init };
|
||||||
|
|
||||||
export const SimpleCmsMediaLibraryCloudinary = cloudinaryMediaLibrary;
|
export const StaticCmsMediaLibraryCloudinary = cloudinaryMediaLibrary;
|
||||||
export default cloudinaryMediaLibrary;
|
export default cloudinaryMediaLibrary;
|
||||||
|
@ -5,7 +5,7 @@ import { Iterable } from 'immutable';
|
|||||||
window.UPLOADCARE_LIVE = false;
|
window.UPLOADCARE_LIVE = false;
|
||||||
window.UPLOADCARE_MANUAL_START = true;
|
window.UPLOADCARE_MANUAL_START = true;
|
||||||
|
|
||||||
const USER_AGENT = 'SimpleCMS-Uploadcare-MediaLibrary';
|
const USER_AGENT = 'StaticCms-Uploadcare-MediaLibrary';
|
||||||
const CDN_BASE_URL = 'https://ucarecdn.com';
|
const CDN_BASE_URL = 'https://ucarecdn.com';
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -165,7 +165,7 @@ async function init({ options = { config: {}, settings: {} }, handleInsert } = {
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* Uploadcare doesn't provide a "media library" widget for viewing and
|
* Uploadcare doesn't provide a "media library" widget for viewing and
|
||||||
* selecting existing files, so we return `false` here so Simple CMS only
|
* selecting existing files, so we return `false` here so Static CMS only
|
||||||
* opens the Uploadcare widget when called from an editor control. This
|
* opens the Uploadcare widget when called from an editor control. This
|
||||||
* results in the "Media" button in the global nav being hidden.
|
* results in the "Media" button in the global nav being hidden.
|
||||||
*/
|
*/
|
||||||
@ -179,5 +179,5 @@ async function init({ options = { config: {}, settings: {} }, handleInsert } = {
|
|||||||
*/
|
*/
|
||||||
const uploadcareMediaLibrary = { name: 'uploadcare', init };
|
const uploadcareMediaLibrary = { name: 'uploadcare', init };
|
||||||
|
|
||||||
export const SimpleCmsMediaLibraryUploadcare = uploadcareMediaLibrary;
|
export const StaticCmsMediaLibraryUploadcare = uploadcareMediaLibrary;
|
||||||
export default uploadcareMediaLibrary;
|
export default uploadcareMediaLibrary;
|
||||||
|
@ -353,7 +353,7 @@ export function selectInferedField(collection: Collection, fieldName: string) {
|
|||||||
if (inferableField.showError) {
|
if (inferableField.showError) {
|
||||||
consoleError(
|
consoleError(
|
||||||
`The Field ${fieldName} is missing for the collection “${collection.get('name')}”`,
|
`The Field ${fieldName} is missing for the collection “${collection.get('name')}”`,
|
||||||
`Simple CMS tries to infer the entry ${fieldName} automatically, but one couldn't be found for entries of the collection “${collection.get(
|
`Static CMS tries to infer the entry ${fieldName} automatically, but one couldn't be found for entries of the collection “${collection.get(
|
||||||
'name',
|
'name',
|
||||||
)}”. Please check your site configuration.`,
|
)}”. Please check your site configuration.`,
|
||||||
);
|
);
|
||||||
|
@ -71,8 +71,8 @@ let append: boolean;
|
|||||||
let page: number;
|
let page: number;
|
||||||
let slug: string;
|
let slug: string;
|
||||||
|
|
||||||
const storageSortKey = 'simple-cms.entries.sort';
|
const storageSortKey = 'static-cms.entries.sort';
|
||||||
const viewStyleKey = 'simple-cms.entries.viewStyle';
|
const viewStyleKey = 'static-cms.entries.viewStyle';
|
||||||
type StorageSortObject = SortObject & { index: number };
|
type StorageSortObject = SortObject & { index: number };
|
||||||
type StorageSort = { [collection: string]: { [key: string]: StorageSortObject } };
|
type StorageSort = { [collection: string]: { [key: string]: StorageSortObject } };
|
||||||
|
|
||||||
|
@ -25,7 +25,7 @@ const SimpleLogoIcon = styled(Icon)`
|
|||||||
margin-top: -300px;
|
margin-top: -300px;
|
||||||
`;
|
`;
|
||||||
|
|
||||||
const SimpleCmsIcon = styled(Icon)`
|
const StaticCmsIcon = styled(Icon)`
|
||||||
color: #c4c6d2;
|
color: #c4c6d2;
|
||||||
position: absolute;
|
position: absolute;
|
||||||
bottom: 10px;
|
bottom: 10px;
|
||||||
@ -43,7 +43,7 @@ function renderPageLogo(logoUrl) {
|
|||||||
if (logoUrl) {
|
if (logoUrl) {
|
||||||
return <CustomLogoIcon url={logoUrl} />;
|
return <CustomLogoIcon url={logoUrl} />;
|
||||||
}
|
}
|
||||||
return <SimpleLogoIcon size="300px" type="simple-cms" />;
|
return <SimpleLogoIcon size="300px" type="static-cms" />;
|
||||||
}
|
}
|
||||||
|
|
||||||
const LoginButton = styled.button`
|
const LoginButton = styled.button`
|
||||||
@ -96,7 +96,7 @@ function AuthenticationPage({
|
|||||||
</LoginButton>
|
</LoginButton>
|
||||||
)}
|
)}
|
||||||
{siteUrl && <GoBackButton href={siteUrl} t={t} />}
|
{siteUrl && <GoBackButton href={siteUrl} t={t} />}
|
||||||
{logoUrl ? <SimpleCmsIcon size="100px" type="simple-cms" /> : null}
|
{logoUrl ? <StaticCmsIcon size="100px" type="static-cms" /> : null}
|
||||||
</StyledAuthenticationPage>
|
</StyledAuthenticationPage>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
@ -32,7 +32,7 @@ import iconMarkdown from './markdown.svg';
|
|||||||
import iconMedia from './media.svg';
|
import iconMedia from './media.svg';
|
||||||
import iconMediaAlt from './media-alt.svg';
|
import iconMediaAlt from './media-alt.svg';
|
||||||
import iconNetlify from './netlify.svg';
|
import iconNetlify from './netlify.svg';
|
||||||
import iconSimpleCms from './simple-cms-logo.svg';
|
import iconStaticCms from './static-cms-logo.svg';
|
||||||
import iconNewTab from './new-tab.svg';
|
import iconNewTab from './new-tab.svg';
|
||||||
import iconPage from './page.svg';
|
import iconPage from './page.svg';
|
||||||
import iconPages from './pages.svg';
|
import iconPages from './pages.svg';
|
||||||
@ -82,7 +82,7 @@ const images = {
|
|||||||
media: iconMedia,
|
media: iconMedia,
|
||||||
'media-alt': iconMediaAlt,
|
'media-alt': iconMediaAlt,
|
||||||
netlify: iconNetlify,
|
netlify: iconNetlify,
|
||||||
'simple-cms': iconSimpleCms,
|
'static-cms': iconStaticCms,
|
||||||
'new-tab': iconNewTab,
|
'new-tab': iconNewTab,
|
||||||
page: iconPage,
|
page: iconPage,
|
||||||
pages: iconPages,
|
pages: iconPages,
|
||||||
|
@ -1,943 +0,0 @@
|
|||||||
<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
|
|
||||||
width="100%" viewBox="0 0 1280 640" enable-background="new 0 0 1280 640" xml:space="preserve">
|
|
||||||
<path class="no-fill" fill="none" opacity="1.000000" stroke="none"
|
|
||||||
d="
|
|
||||||
M783.000000,641.000000
|
|
||||||
C522.033875,641.000000 261.567780,641.000000 1.050843,641.000000
|
|
||||||
C1.050843,427.728333 1.050843,214.456650 1.050843,1.092481
|
|
||||||
C427.549469,1.092481 854.098938,1.092481 1280.824219,1.092481
|
|
||||||
C1280.824219,214.333221 1280.824219,427.666595 1280.824219,641.000000
|
|
||||||
C1115.123169,641.000000 949.311584,641.000000 783.000000,641.000000
|
|
||||||
M64.000557,320.196991
|
|
||||||
C64.340988,324.113739 64.163689,328.161774 65.117630,331.922913
|
|
||||||
C68.138870,343.834839 71.210541,355.758484 74.948448,367.458496
|
|
||||||
C80.925453,386.167114 90.907585,402.888519 102.921257,418.238251
|
|
||||||
C116.688789,435.828888 133.172119,450.683167 152.605713,461.849762
|
|
||||||
C160.990952,466.667877 169.872360,470.827118 178.926697,474.223969
|
|
||||||
C190.050858,478.397339 201.480072,481.897980 212.995956,484.831543
|
|
||||||
C219.408585,486.465118 226.322098,486.011566 232.910431,487.100372
|
|
||||||
C248.099548,489.610657 263.146606,487.599915 278.013733,485.260803
|
|
||||||
C287.986267,483.691742 297.577362,479.760620 307.379944,477.033173
|
|
||||||
C320.360229,473.421570 332.266968,467.345306 343.293976,459.919708
|
|
||||||
C353.585419,452.989471 363.273773,445.064819 372.679474,436.943085
|
|
||||||
C384.391174,426.830200 393.829620,414.514130 401.719666,401.352081
|
|
||||||
C407.827393,391.163300 412.524139,380.018585 416.866241,368.914825
|
|
||||||
C420.627380,359.296631 424.255096,349.315521 425.692596,339.175934
|
|
||||||
C427.604340,325.690918 428.291565,311.857422 427.733765,298.246185
|
|
||||||
C427.171173,284.517761 425.398376,270.660553 422.351318,257.270416
|
|
||||||
C420.041626,247.120499 414.914093,237.609146 411.012817,227.824661
|
|
||||||
C404.182678,210.694275 393.549133,195.915741 380.958527,182.801315
|
|
||||||
C371.531708,172.982285 360.721069,164.437668 350.126923,155.816772
|
|
||||||
C345.008759,151.651917 339.268555,147.970078 333.282501,145.216263
|
|
||||||
C323.214539,140.584625 312.567352,137.220413 302.453308,132.678497
|
|
||||||
C289.356079,126.796936 275.393951,125.459808 261.462189,124.131126
|
|
||||||
C253.702454,123.391068 245.813721,124.054878 237.984024,123.985710
|
|
||||||
C224.534637,123.866913 211.432053,126.135857 198.571503,129.829880
|
|
||||||
C192.325058,131.624084 186.106689,133.634689 180.086365,136.068619
|
|
||||||
C171.847473,139.399490 163.321548,142.431656 155.807404,147.040771
|
|
||||||
C146.244919,152.906326 137.541290,160.180847 128.521606,166.920502
|
|
||||||
C115.667244,176.525482 105.202560,188.528900 96.263199,201.629395
|
|
||||||
C83.843300,219.830582 74.272469,239.672897 69.242256,261.181366
|
|
||||||
C66.337685,273.600830 65.390160,286.515656 64.114471,299.262878
|
|
||||||
C63.454178,305.860901 63.998310,312.579437 64.000557,320.196991
|
|
||||||
M700.000549,267.709198
|
|
||||||
C701.003601,261.993408 701.442383,256.094971 703.212341,250.627457
|
|
||||||
C704.349854,247.113678 706.999023,243.754944 709.763367,241.176620
|
|
||||||
C714.504150,236.754898 720.838928,238.534729 726.591248,237.882950
|
|
||||||
C733.326843,237.119751 740.355835,245.447449 740.902527,251.138641
|
|
||||||
C741.627380,258.685516 741.869019,266.296082 741.954529,273.883362
|
|
||||||
C742.110413,287.714264 742.082520,301.549042 741.938965,315.380219
|
|
||||||
C741.903870,318.762207 742.807922,320.161072 746.434265,320.070099
|
|
||||||
C755.095093,319.852936 763.767822,319.871704 772.429871,320.063141
|
|
||||||
C775.882568,320.139465 777.121338,319.070282 777.067017,315.512878
|
|
||||||
C776.886292,303.682861 776.580811,291.828918 777.132080,280.021881
|
|
||||||
C777.566406,270.721069 775.747253,261.493286 778.716919,252.026627
|
|
||||||
C782.402710,240.277084 798.962158,232.505234 809.311035,239.192749
|
|
||||||
C811.104492,240.351700 812.786316,242.021698 813.895569,243.837006
|
|
||||||
C817.093872,249.071365 817.925720,255.027191 817.961060,261.019958
|
|
||||||
C818.067383,279.018463 817.931274,297.018646 818.110168,315.015991
|
|
||||||
C818.126709,316.681702 819.667053,319.745422 820.574280,319.773651
|
|
||||||
C831.322266,320.108551 842.084412,319.989258 853.001038,319.989258
|
|
||||||
C853.001038,297.391876 853.205383,275.405060 852.864807,253.426697
|
|
||||||
C852.773865,247.560730 851.258667,241.666763 849.976562,235.878845
|
|
||||||
C846.333313,219.432281 834.250732,210.943253 819.354736,207.404999
|
|
||||||
C810.181213,205.225998 800.282654,205.301300 790.440063,208.662613
|
|
||||||
C781.420532,211.742844 774.118896,216.502090 768.164978,222.235458
|
|
||||||
C747.071045,201.623550 724.357544,202.101212 700.253174,215.786057
|
|
||||||
C699.768738,207.124359 698.104004,206.620041 690.837158,206.937241
|
|
||||||
C683.850830,207.242172 676.840515,207.034073 669.841125,206.989441
|
|
||||||
C666.565369,206.968552 664.989624,208.452454 664.991394,211.766724
|
|
||||||
C665.009888,246.598343 664.968567,281.430145 665.142822,316.260895
|
|
||||||
C665.149109,317.511871 667.185364,319.803802 668.322876,319.834137
|
|
||||||
C678.762878,320.112610 689.213440,319.998077 700.000549,319.998077
|
|
||||||
C700.000549,302.591827 700.000549,285.631531 700.000549,267.709198
|
|
||||||
M914.003357,337.499115
|
|
||||||
C914.003357,329.017212 914.003357,320.535309 914.003357,312.361572
|
|
||||||
C919.192261,315.128754 923.545776,319.072876 928.323975,319.681274
|
|
||||||
C940.558167,321.238983 952.859192,322.985840 965.196411,318.231506
|
|
||||||
C975.435486,314.285767 983.314026,308.298981 990.075928,299.737915
|
|
||||||
C996.716797,291.330078 999.005249,281.461212 1000.631897,271.665649
|
|
||||||
C1001.669922,265.414520 1001.176270,258.643829 999.500671,251.794693
|
|
||||||
C997.329773,242.921234 994.460327,235.010117 989.268677,227.517410
|
|
||||||
C983.349426,218.974640 975.429321,213.426147 965.970154,210.092941
|
|
||||||
C960.254028,208.078705 954.148743,206.721985 948.118408,206.178497
|
|
||||||
C942.611328,205.682175 936.968079,206.655319 931.390503,207.058380
|
|
||||||
C930.907410,207.093292 930.511536,207.810196 929.998535,208.037445
|
|
||||||
C924.400696,210.517303 918.787598,212.962708 913.193787,215.410858
|
|
||||||
C912.741882,207.120819 912.617981,207.003113 904.294739,207.003098
|
|
||||||
C897.629944,207.003082 890.957092,207.203522 884.303101,206.935455
|
|
||||||
C879.548035,206.743851 877.904480,208.564453 877.929871,213.304977
|
|
||||||
C878.078308,240.962982 878.002808,268.622223 878.002686,296.281036
|
|
||||||
C878.002625,315.942139 878.006592,335.603210 877.996643,355.264313
|
|
||||||
C877.995422,357.642517 877.659180,360.054260 881.311279,360.026611
|
|
||||||
C891.777161,359.947388 902.243896,359.998718 914.003357,359.998718
|
|
||||||
C914.003357,352.574524 914.003357,345.536469 914.003357,337.499115
|
|
||||||
M492.718292,180.027328
|
|
||||||
C492.211884,180.453384 491.766235,181.001892 491.190216,181.287643
|
|
||||||
C475.116425,189.262009 469.481415,203.500595 468.115784,220.141785
|
|
||||||
C467.946014,222.210541 469.788605,224.378433 469.925446,226.549118
|
|
||||||
C470.780426,240.114548 479.437927,247.803864 490.548187,252.985992
|
|
||||||
C497.395874,256.179901 504.948181,257.914581 512.258118,260.051453
|
|
||||||
C519.605835,262.199402 527.160889,263.690216 534.403931,266.126373
|
|
||||||
C539.233459,267.750793 543.999084,270.066772 548.151184,272.986389
|
|
||||||
C550.145508,274.388702 552.294922,278.608124 551.551819,280.343140
|
|
||||||
C548.216797,288.130707 543.025635,292.321136 533.834229,291.952789
|
|
||||||
C523.411743,291.535126 512.728333,293.813110 502.689911,289.018219
|
|
||||||
C496.341949,285.986023 489.780548,283.375610 483.564789,280.101624
|
|
||||||
C480.133972,278.294525 477.620270,278.959839 475.919037,282.620483
|
|
||||||
C473.532593,287.755463 470.739777,292.704742 468.043732,297.691803
|
|
||||||
C465.481476,302.431335 466.155365,306.386658 470.658722,308.831024
|
|
||||||
C475.161316,311.274963 480.086609,312.932678 484.627991,315.313873
|
|
||||||
C494.389801,320.432251 505.304688,321.272400 515.766052,322.594666
|
|
||||||
C524.098267,323.647827 532.829590,323.715393 541.651306,321.457703
|
|
||||||
C548.943787,319.591461 556.269958,318.249695 563.151917,315.002808
|
|
||||||
C575.711609,309.077209 587.384338,294.259521 586.931274,279.181030
|
|
||||||
C586.781311,274.189484 586.983948,269.350555 585.365356,264.161224
|
|
||||||
C582.716736,255.669708 577.084290,250.667831 570.544739,245.801697
|
|
||||||
C561.703369,239.222687 550.859680,237.773712 540.888794,234.209961
|
|
||||||
C532.666260,231.271103 523.756165,230.315735 515.328125,227.870163
|
|
||||||
C510.104248,226.354355 505.285492,222.200073 504.966888,217.990692
|
|
||||||
C504.588837,212.995987 507.714233,208.096329 512.872009,205.579178
|
|
||||||
C522.631409,200.816238 533.038269,200.951141 543.004456,203.296753
|
|
||||||
C552.191040,205.458878 560.864441,209.800949 570.394104,213.422241
|
|
||||||
C570.772705,212.550812 571.494324,210.998413 572.128601,209.411087
|
|
||||||
C574.449036,203.604324 576.521484,197.686661 579.101685,191.998718
|
|
||||||
C581.916626,185.793289 581.694275,185.488098 576.076477,182.435684
|
|
||||||
C566.150696,177.042603 555.096069,174.488907 544.403992,173.447083
|
|
||||||
C527.257507,171.776321 509.656555,171.599075 492.718292,180.027328
|
|
||||||
M697.659180,338.845398
|
|
||||||
C696.822083,339.762909 695.792114,340.567200 695.177307,341.615143
|
|
||||||
C687.777954,354.226837 680.458618,366.885468 673.079468,379.509094
|
|
||||||
C668.092773,388.040009 663.044312,396.534882 658.222412,404.708801
|
|
||||||
C654.663574,399.262360 651.184570,394.332306 648.120483,389.156647
|
|
||||||
C643.481812,381.321289 639.211914,373.268433 634.637512,365.393829
|
|
||||||
C629.812988,357.088623 624.912659,348.822968 619.808533,340.688690
|
|
||||||
C618.818787,339.111389 616.783203,337.248779 615.153992,337.173950
|
|
||||||
C607.232483,336.810181 599.285095,337.009583 591.270874,337.009583
|
|
||||||
C591.270874,375.904846 591.270874,414.283905 591.270874,452.704163
|
|
||||||
C600.936951,452.704163 610.329590,452.704163 620.244873,452.704163
|
|
||||||
C620.244873,432.481262 620.244873,412.549652 620.244873,391.910706
|
|
||||||
C630.442505,408.673584 640.177917,424.676636 650.028442,440.868927
|
|
||||||
C654.986694,440.868927 660.297363,440.868927 665.167297,440.868927
|
|
||||||
C674.998047,424.542725 684.653503,408.507568 694.999939,391.324951
|
|
||||||
C694.999939,394.261932 694.999939,395.851807 694.999878,397.441650
|
|
||||||
C694.999634,414.431152 694.935791,431.421295 695.107300,448.409058
|
|
||||||
C695.122742,449.939087 696.609131,452.742645 697.494629,452.776062
|
|
||||||
C706.240967,453.106110 715.004700,452.975586 723.678406,452.975586
|
|
||||||
C723.678406,413.991150 723.678406,375.611664 723.678406,337.000031
|
|
||||||
C716.547424,337.000031 709.735840,336.933044 702.927429,337.048401
|
|
||||||
C701.281433,337.076263 699.645569,337.706635 697.659180,338.845398
|
|
||||||
M1178.050659,297.488983
|
|
||||||
C1173.984375,292.795288 1170.044556,287.978821 1165.722900,283.533295
|
|
||||||
C1165.033325,282.823975 1162.024536,283.165619 1161.118530,284.062531
|
|
||||||
C1154.391235,290.720947 1145.625854,292.262512 1136.968994,293.843140
|
|
||||||
C1134.858032,294.228546 1132.397461,292.648987 1130.087891,292.007690
|
|
||||||
C1126.405273,290.985168 1122.440430,290.539673 1119.089600,288.862000
|
|
||||||
C1113.614014,286.120483 1110.280762,281.181061 1107.597290,274.998688
|
|
||||||
C1109.763916,274.998688 1111.377197,274.998688 1112.990479,274.998688
|
|
||||||
C1136.989868,274.998718 1160.989380,275.007416 1184.988770,274.984406
|
|
||||||
C1187.206787,274.982300 1190.141235,275.717285 1189.969971,271.960388
|
|
||||||
C1189.569946,263.183472 1190.212646,254.528198 1187.398804,245.693314
|
|
||||||
C1184.952515,238.012634 1181.594116,231.257217 1176.623901,225.313248
|
|
||||||
C1168.269531,215.322083 1157.004761,209.510071 1144.493164,207.230072
|
|
||||||
C1134.472046,205.403885 1124.345093,205.641190 1114.017578,208.653763
|
|
||||||
C1104.461182,211.441376 1096.045410,215.508530 1089.030762,222.107315
|
|
||||||
C1078.324707,232.178665 1072.473022,244.821854 1072.029175,259.670410
|
|
||||||
C1071.764893,268.505524 1071.559692,277.382202 1075.880005,285.560852
|
|
||||||
C1078.242798,290.033447 1080.077637,294.890656 1083.040283,298.920197
|
|
||||||
C1090.993652,309.737366 1102.174194,317.097137 1114.895142,319.496155
|
|
||||||
C1126.885376,321.757416 1139.690308,321.565094 1151.902588,320.260132
|
|
||||||
C1164.151367,318.951294 1174.627441,312.332367 1183.253052,302.853516
|
|
||||||
C1181.646729,301.149475 1180.145020,299.556458 1178.050659,297.488983
|
|
||||||
M790.578918,358.009674
|
|
||||||
C800.390686,360.744324 811.247681,359.832397 819.950928,366.714691
|
|
||||||
C820.924988,367.484985 824.819336,366.366882 825.747192,365.016602
|
|
||||||
C827.694031,362.183380 828.645142,358.641205 829.860901,355.337097
|
|
||||||
C831.159363,351.808167 832.291626,348.218079 833.454590,344.778412
|
|
||||||
C830.571960,343.246582 828.534973,341.889923 826.306641,341.028778
|
|
||||||
C817.923523,337.789215 809.393555,335.678772 800.296936,334.721802
|
|
||||||
C783.756348,332.981598 768.337097,334.832123 754.398987,344.295227
|
|
||||||
C746.641296,349.562195 743.130066,357.846375 741.175171,366.490662
|
|
||||||
C739.724670,372.904663 740.724548,379.800201 744.187073,385.434723
|
|
||||||
C746.983765,389.985718 750.759766,394.497070 755.176514,397.377441
|
|
||||||
C765.461365,404.084656 777.730103,405.767883 789.345276,409.086517
|
|
||||||
C794.527466,410.567108 799.546021,412.717987 804.488953,414.903656
|
|
||||||
C807.758362,416.349304 808.389832,419.111969 807.187500,422.506531
|
|
||||||
C805.506958,427.251129 801.804077,429.801117 796.268982,430.045135
|
|
||||||
C793.463867,430.168793 790.679810,430.768738 787.780457,431.167908
|
|
||||||
C785.563599,430.805237 783.106506,430.083710 780.642700,430.060394
|
|
||||||
C773.389893,429.991699 766.858826,427.874390 760.524170,424.408539
|
|
||||||
C756.529236,422.222748 752.051514,420.919434 748.165649,419.369965
|
|
||||||
C745.600464,425.009247 743.674927,429.570099 741.474243,433.994141
|
|
||||||
C738.962280,439.043884 739.416626,444.075531 743.657532,445.706696
|
|
||||||
C752.674805,449.175079 761.763855,453.040619 771.184753,454.737244
|
|
||||||
C784.902832,457.207825 798.895630,457.037628 812.292114,451.976868
|
|
||||||
C815.368042,450.814850 818.365295,449.288513 821.146423,447.530518
|
|
||||||
C829.611267,442.179718 835.287903,435.061798 837.252808,424.750519
|
|
||||||
C838.777710,416.748596 837.828186,409.478180 834.014221,402.650604
|
|
||||||
C826.993408,390.082367 813.503296,388.205017 801.562195,384.112946
|
|
||||||
C793.978699,381.514191 785.972656,380.175568 778.261353,377.912964
|
|
||||||
C773.309204,376.459930 771.025391,372.786713 772.035095,367.574432
|
|
||||||
C772.804810,363.601013 775.318787,361.482574 779.428101,360.805115
|
|
||||||
C782.913879,360.230469 786.292419,359.004730 790.578918,358.009674
|
|
||||||
M575.987793,355.653534
|
|
||||||
C572.364380,351.788025 569.298645,347.085052 565.005066,344.225952
|
|
||||||
C555.140198,337.657104 543.773438,334.587585 532.007690,334.111725
|
|
||||||
C517.667969,333.531830 503.936249,335.889557 491.398529,343.847748
|
|
||||||
C477.978455,352.365997 468.313263,363.774078 465.248657,379.285736
|
|
||||||
C462.921051,391.066986 462.829803,403.051178 466.677460,415.144562
|
|
||||||
C470.352295,426.694794 477.301544,435.575714 486.052429,442.744537
|
|
||||||
C496.730988,451.492523 509.973907,455.179474 523.763611,455.942322
|
|
||||||
C535.877075,456.612396 547.677795,454.543518 558.420715,448.853455
|
|
||||||
C563.916138,445.942780 568.746704,441.699554 573.642090,437.765411
|
|
||||||
C576.173523,435.731049 577.042725,432.685699 574.377747,430.152069
|
|
||||||
C569.923645,425.917542 565.272827,421.858795 560.411743,418.105713
|
|
||||||
C559.232910,417.195618 556.003052,416.953308 555.258545,417.784790
|
|
||||||
C549.404358,424.323181 542.165649,428.247314 533.671143,429.619965
|
|
||||||
C522.909302,431.358948 513.309265,428.136444 505.072723,421.220367
|
|
||||||
C494.848663,412.635254 492.880554,400.884308 494.188110,388.559265
|
|
||||||
C494.787628,382.908417 496.986694,377.538635 501.085938,372.822784
|
|
||||||
C507.257599,365.722748 514.224670,361.380676 523.780518,360.483948
|
|
||||||
C534.578430,359.470581 543.965210,361.561951 552.085144,369.082306
|
|
||||||
C557.913696,374.480530 556.241394,374.948303 562.433044,369.716705
|
|
||||||
C567.258057,365.639740 571.494873,360.866577 575.987793,355.653534
|
|
||||||
M1018.002808,307.472992
|
|
||||||
C1018.002808,309.970795 1018.220215,312.492126 1017.953308,314.961090
|
|
||||||
C1017.523621,318.934753 1019.022339,320.214294 1023.018433,320.084198
|
|
||||||
C1031.501953,319.807953 1040.010132,319.762878 1048.489502,320.097076
|
|
||||||
C1052.928833,320.272064 1054.121582,318.847504 1054.097534,314.465179
|
|
||||||
C1053.922363,282.494263 1054.003296,250.521896 1054.003296,218.549988
|
|
||||||
C1054.003296,203.230118 1053.942627,187.909836 1054.044067,172.590637
|
|
||||||
C1054.070557,168.575485 1052.984985,166.686478 1048.424316,166.893066
|
|
||||||
C1040.115356,167.269455 1031.766479,167.251602 1023.455322,166.900009
|
|
||||||
C1018.923279,166.708267 1017.901794,168.313202 1017.915466,172.599854
|
|
||||||
C1018.057495,217.226868 1018.002808,261.854492 1018.002808,307.472992
|
|
||||||
M604.002502,236.500000
|
|
||||||
C604.002502,262.645538 603.992493,288.791046 604.020996,314.936554
|
|
||||||
C604.023376,317.127075 603.219055,319.983276 606.987793,319.990448
|
|
||||||
C617.580750,320.010529 628.173706,319.997437 638.999573,319.997437
|
|
||||||
C638.999573,283.169495 638.980591,246.890823 639.035217,210.612259
|
|
||||||
C639.039612,207.676453 637.719177,206.936295 635.060547,206.966812
|
|
||||||
C626.568542,207.064270 618.072937,207.105545 609.582336,206.957809
|
|
||||||
C605.571960,206.888046 603.879028,208.465317 603.958862,212.519440
|
|
||||||
C604.109741,220.176956 604.002502,227.839523 604.002502,236.500000
|
|
||||||
M608.599670,160.998871
|
|
||||||
C607.743591,161.822220 606.885071,162.643066 606.031921,163.469391
|
|
||||||
C600.113281,169.202011 598.977539,180.200821 603.324890,186.911346
|
|
||||||
C608.245728,194.507111 615.457458,195.975693 623.874146,196.178894
|
|
||||||
C630.932251,196.349274 640.672180,190.137878 642.751099,181.790466
|
|
||||||
C645.296326,171.570679 639.072632,159.382675 629.410095,158.257416
|
|
||||||
C622.822510,157.490250 615.536560,156.155121 608.599670,160.998871
|
|
||||||
z"/>
|
|
||||||
<path class="no-fill" fill="#e6ebef" opacity="1.000000" stroke="none"
|
|
||||||
d="
|
|
||||||
M63.999424,319.720276
|
|
||||||
C63.998310,312.579437 63.454178,305.860901 64.114471,299.262878
|
|
||||||
C65.390160,286.515656 66.337685,273.600830 69.242256,261.181366
|
|
||||||
C74.272469,239.672897 83.843300,219.830582 96.263199,201.629395
|
|
||||||
C105.202560,188.528900 115.667244,176.525482 128.521606,166.920502
|
|
||||||
C137.541290,160.180847 146.244919,152.906326 155.807404,147.040771
|
|
||||||
C163.321548,142.431656 171.847473,139.399490 180.086365,136.068619
|
|
||||||
C186.106689,133.634689 192.325058,131.624084 198.571503,129.829880
|
|
||||||
C211.432053,126.135857 224.534637,123.866913 237.984024,123.985710
|
|
||||||
C245.813721,124.054878 253.702454,123.391068 261.462189,124.131126
|
|
||||||
C275.393951,125.459808 289.356079,126.796936 302.453308,132.678497
|
|
||||||
C312.567352,137.220413 323.214539,140.584625 333.282501,145.216263
|
|
||||||
C339.268555,147.970078 345.008759,151.651917 350.126923,155.816772
|
|
||||||
C360.721069,164.437668 371.531708,172.982285 380.958527,182.801315
|
|
||||||
C393.549133,195.915741 404.182678,210.694275 411.012817,227.824661
|
|
||||||
C414.914093,237.609146 420.041626,247.120499 422.351318,257.270416
|
|
||||||
C425.398376,270.660553 427.171173,284.517761 427.733765,298.246185
|
|
||||||
C428.291565,311.857422 427.604340,325.690918 425.692596,339.175934
|
|
||||||
C424.255096,349.315521 420.627380,359.296631 416.866241,368.914825
|
|
||||||
C412.524139,380.018585 407.827393,391.163300 401.719666,401.352081
|
|
||||||
C393.829620,414.514130 384.391174,426.830200 372.679474,436.943085
|
|
||||||
C363.273773,445.064819 353.585419,452.989471 343.293976,459.919708
|
|
||||||
C332.266968,467.345306 320.360229,473.421570 307.379944,477.033173
|
|
||||||
C297.577362,479.760620 287.986267,483.691742 278.013733,485.260803
|
|
||||||
C263.146606,487.599915 248.099548,489.610657 232.910431,487.100372
|
|
||||||
C226.322098,486.011566 219.408585,486.465118 212.995956,484.831543
|
|
||||||
C201.480072,481.897980 190.050858,478.397339 178.926697,474.223969
|
|
||||||
C169.872360,470.827118 160.990952,466.667877 152.605713,461.849762
|
|
||||||
C133.172119,450.683167 116.688789,435.828888 102.921257,418.238251
|
|
||||||
C90.907585,402.888519 80.925453,386.167114 74.948448,367.458496
|
|
||||||
C71.210541,355.758484 68.138870,343.834839 65.117630,331.922913
|
|
||||||
C64.163689,328.161774 64.340988,324.113739 63.999424,319.720276
|
|
||||||
M373.803070,264.161163
|
|
||||||
C374.540649,265.063049 375.228424,266.011658 376.024048,266.859039
|
|
||||||
C380.390961,271.510010 384.857544,272.103058 390.835663,268.866821
|
|
||||||
C394.899231,266.667023 396.925262,261.473236 395.901093,256.367157
|
|
||||||
C394.867981,251.216583 390.827637,249.390701 386.713470,247.395813
|
|
||||||
C384.988373,246.559357 383.019623,245.259781 382.211853,243.645309
|
|
||||||
C373.359100,225.950943 362.050842,210.180756 347.264618,196.897125
|
|
||||||
C329.417358,180.863541 309.211853,169.471756 285.802979,163.674896
|
|
||||||
C269.441223,159.623138 253.142990,157.333633 236.155579,158.958618
|
|
||||||
C218.780930,160.620636 202.009598,164.340561 186.356079,171.733170
|
|
||||||
C156.188004,185.980545 132.665710,207.724762 117.004974,237.363831
|
|
||||||
C109.242599,252.054688 103.114296,267.461334 101.922722,284.330902
|
|
||||||
C101.233727,294.085205 100.680733,303.851501 100.283485,313.621216
|
|
||||||
C100.228317,314.977875 101.109901,317.276947 102.089310,317.619293
|
|
||||||
C107.100960,319.371124 112.057945,315.515747 111.856613,310.140381
|
|
||||||
C111.170479,291.821472 114.529312,274.226746 120.947701,257.130157
|
|
||||||
C121.985123,254.366760 123.305466,252.783432 126.666801,252.820740
|
|
||||||
C141.827621,252.989029 156.992355,252.988235 172.153336,252.826797
|
|
||||||
C175.953064,252.786362 177.157364,254.259933 177.012848,257.839386
|
|
||||||
C176.831528,262.330566 177.195847,266.847931 176.927277,271.330200
|
|
||||||
C176.685104,275.371918 177.953918,277.137756 182.244629,276.855804
|
|
||||||
C186.889908,276.550598 191.576233,276.924713 196.234528,276.742981
|
|
||||||
C199.317886,276.622650 200.359665,277.839966 200.266113,280.834900
|
|
||||||
C200.110123,285.828522 200.031189,290.842133 200.307068,295.825928
|
|
||||||
C200.520233,299.676239 199.355209,301.133148 195.285645,300.993530
|
|
||||||
C186.797852,300.702301 178.288971,301.060059 169.797302,300.832397
|
|
||||||
C166.129456,300.734070 164.823700,301.806183 164.905304,305.612335
|
|
||||||
C165.133789,316.271362 165.160690,326.943359 164.853775,337.598358
|
|
||||||
C164.786545,339.932068 163.566772,342.792297 161.906250,344.417175
|
|
||||||
C156.572708,349.636261 150.784134,354.390259 145.171524,359.324127
|
|
||||||
C141.680984,362.392609 138.262344,365.547882 134.683929,368.510193
|
|
||||||
C129.761963,372.584778 128.176666,372.238251 125.403580,366.452881
|
|
||||||
C123.826569,363.162781 122.046677,359.832428 121.310089,356.320526
|
|
||||||
C120.721245,353.513000 121.383606,350.374695 121.843933,347.438629
|
|
||||||
C122.169853,345.359833 123.700989,343.347687 123.617043,341.351074
|
|
||||||
C123.405602,336.322662 118.303612,331.066437 113.547096,330.297241
|
|
||||||
C108.687645,329.511383 103.682655,332.154724 101.120216,336.860352
|
|
||||||
C98.948997,340.847534 100.459381,346.477936 103.841942,350.554291
|
|
||||||
C106.635559,353.920898 109.290100,357.701569 110.843727,361.745422
|
|
||||||
C116.749146,377.116455 125.232292,390.950378 135.985001,403.218323
|
|
||||||
C151.515823,420.937714 170.117142,434.541290 192.116150,443.590637
|
|
||||||
C210.865234,451.303101 230.447021,454.663086 250.364731,454.521057
|
|
||||||
C262.617218,454.433716 275.009308,451.750275 287.051575,448.983002
|
|
||||||
C311.931061,443.265778 333.063507,430.160370 351.341492,412.755798
|
|
||||||
C367.760681,397.121155 379.816040,378.262604 387.345184,356.819946
|
|
||||||
C390.510986,347.803833 393.681488,338.467926 394.591095,329.059021
|
|
||||||
C395.844391,316.095062 394.830933,302.922302 395.032654,289.842743
|
|
||||||
C395.163361,281.369476 394.579041,281.154846 386.128876,283.122772
|
|
||||||
C384.672028,283.462036 383.572754,285.236115 382.247131,286.268982
|
|
||||||
C381.018219,287.226532 379.723419,288.831482 378.430237,288.858887
|
|
||||||
C368.104126,289.077667 357.769897,288.886139 347.441803,289.050476
|
|
||||||
C343.847870,289.107635 342.829773,287.597534 342.903564,284.263031
|
|
||||||
C343.058380,277.268311 342.808624,270.263733 343.009216,263.271362
|
|
||||||
C343.104492,259.950256 341.906586,258.992371 338.675476,259.032013
|
|
||||||
C326.180634,259.185364 313.670227,258.761353 301.191132,259.230377
|
|
||||||
C294.441406,259.484070 289.702911,258.295258 286.452271,251.529907
|
|
||||||
C284.608643,247.692810 284.765503,245.634430 287.565704,242.934265
|
|
||||||
C293.202148,237.499130 298.843689,232.049026 304.122314,226.275177
|
|
||||||
C305.717865,224.529953 306.867950,221.722794 306.946014,219.359879
|
|
||||||
C307.259491,209.872818 307.060089,200.369171 307.074646,190.871689
|
|
||||||
C307.084381,184.515427 307.703156,184.014328 313.075165,186.990326
|
|
||||||
C329.363647,196.013855 344.031219,207.146301 355.090576,222.277634
|
|
||||||
C364.102905,234.608261 374.254211,246.651154 373.803070,264.161163
|
|
||||||
z"/>
|
|
||||||
<path class="no-fill" fill="#a3b5c4" opacity="1.000000" stroke="none"
|
|
||||||
d="
|
|
||||||
M700.000549,268.190216
|
|
||||||
C700.000549,285.631531 700.000549,302.591827 700.000549,319.998077
|
|
||||||
C689.213440,319.998077 678.762878,320.112610 668.322876,319.834137
|
|
||||||
C667.185364,319.803802 665.149109,317.511871 665.142822,316.260895
|
|
||||||
C664.968567,281.430145 665.009888,246.598343 664.991394,211.766724
|
|
||||||
C664.989624,208.452454 666.565369,206.968552 669.841125,206.989441
|
|
||||||
C676.840515,207.034073 683.850830,207.242172 690.837158,206.937241
|
|
||||||
C698.104004,206.620041 699.768738,207.124359 700.253174,215.786057
|
|
||||||
C724.357544,202.101212 747.071045,201.623550 768.164978,222.235458
|
|
||||||
C774.118896,216.502090 781.420532,211.742844 790.440063,208.662613
|
|
||||||
C800.282654,205.301300 810.181213,205.225998 819.354736,207.404999
|
|
||||||
C834.250732,210.943253 846.333313,219.432281 849.976562,235.878845
|
|
||||||
C851.258667,241.666763 852.773865,247.560730 852.864807,253.426697
|
|
||||||
C853.205383,275.405060 853.001038,297.391876 853.001038,319.989258
|
|
||||||
C842.084412,319.989258 831.322266,320.108551 820.574280,319.773651
|
|
||||||
C819.667053,319.745422 818.126709,316.681702 818.110168,315.015991
|
|
||||||
C817.931274,297.018646 818.067383,279.018463 817.961060,261.019958
|
|
||||||
C817.925720,255.027191 817.093872,249.071365 813.895569,243.837006
|
|
||||||
C812.786316,242.021698 811.104492,240.351700 809.311035,239.192749
|
|
||||||
C798.962158,232.505234 782.402710,240.277084 778.716919,252.026627
|
|
||||||
C775.747253,261.493286 777.566406,270.721069 777.132080,280.021881
|
|
||||||
C776.580811,291.828918 776.886292,303.682861 777.067017,315.512878
|
|
||||||
C777.121338,319.070282 775.882568,320.139465 772.429871,320.063141
|
|
||||||
C763.767822,319.871704 755.095093,319.852936 746.434265,320.070099
|
|
||||||
C742.807922,320.161072 741.903870,318.762207 741.938965,315.380219
|
|
||||||
C742.082520,301.549042 742.110413,287.714264 741.954529,273.883362
|
|
||||||
C741.869019,266.296082 741.627380,258.685516 740.902527,251.138641
|
|
||||||
C740.355835,245.447449 733.326843,237.119751 726.591248,237.882950
|
|
||||||
C720.838928,238.534729 714.504150,236.754898 709.763367,241.176620
|
|
||||||
C706.999023,243.754944 704.349854,247.113678 703.212341,250.627457
|
|
||||||
C701.442383,256.094971 701.003601,261.993408 700.000549,268.190216
|
|
||||||
z"/>
|
|
||||||
<path class="no-fill" fill="#a3b5c4" opacity="1.000000" stroke="none"
|
|
||||||
d="
|
|
||||||
M914.003357,337.998749
|
|
||||||
C914.003357,345.536469 914.003357,352.574524 914.003357,359.998718
|
|
||||||
C902.243896,359.998718 891.777161,359.947388 881.311279,360.026611
|
|
||||||
C877.659180,360.054260 877.995422,357.642517 877.996643,355.264313
|
|
||||||
C878.006592,335.603210 878.002625,315.942139 878.002686,296.281036
|
|
||||||
C878.002808,268.622223 878.078308,240.962982 877.929871,213.304977
|
|
||||||
C877.904480,208.564453 879.548035,206.743851 884.303101,206.935455
|
|
||||||
C890.957092,207.203522 897.629944,207.003082 904.294739,207.003098
|
|
||||||
C912.617981,207.003113 912.741882,207.120819 913.193787,215.410858
|
|
||||||
C918.787598,212.962708 924.400696,210.517303 929.998535,208.037445
|
|
||||||
C930.511536,207.810196 930.907410,207.093292 931.390503,207.058380
|
|
||||||
C936.968079,206.655319 942.611328,205.682175 948.118408,206.178497
|
|
||||||
C954.148743,206.721985 960.254028,208.078705 965.970154,210.092941
|
|
||||||
C975.429321,213.426147 983.349426,218.974640 989.268677,227.517410
|
|
||||||
C994.460327,235.010117 997.329773,242.921234 999.500671,251.794693
|
|
||||||
C1001.176270,258.643829 1001.669922,265.414520 1000.631897,271.665649
|
|
||||||
C999.005249,281.461212 996.716797,291.330078 990.075928,299.737915
|
|
||||||
C983.314026,308.298981 975.435486,314.285767 965.196411,318.231506
|
|
||||||
C952.859192,322.985840 940.558167,321.238983 928.323975,319.681274
|
|
||||||
C923.545776,319.072876 919.192261,315.128754 914.003357,312.361572
|
|
||||||
C914.003357,320.535309 914.003357,329.017212 914.003357,337.998749
|
|
||||||
M913.001160,259.949951
|
|
||||||
C913.663269,264.413422 913.934204,268.977936 915.056396,273.322571
|
|
||||||
C919.551941,290.726929 932.385742,293.948395 946.534058,291.484619
|
|
||||||
C951.012024,290.704803 956.060425,287.278290 958.790222,283.554596
|
|
||||||
C965.463379,274.451721 967.400940,264.486725 963.340759,252.921021
|
|
||||||
C960.051270,243.550812 953.568604,238.419678 945.375244,236.369949
|
|
||||||
C937.125977,234.306259 928.753723,236.094330 921.619324,242.549271
|
|
||||||
C916.433289,247.241470 915.774292,253.529709 913.001160,259.949951
|
|
||||||
z"/>
|
|
||||||
<path class="no-fill" fill="#a3b5c4" opacity="1.000000" stroke="none"
|
|
||||||
d="
|
|
||||||
M493.107117,179.990189
|
|
||||||
C509.656555,171.599075 527.257507,171.776321 544.403992,173.447083
|
|
||||||
C555.096069,174.488907 566.150696,177.042603 576.076477,182.435684
|
|
||||||
C581.694275,185.488098 581.916626,185.793289 579.101685,191.998718
|
|
||||||
C576.521484,197.686661 574.449036,203.604324 572.128601,209.411087
|
|
||||||
C571.494324,210.998413 570.772705,212.550812 570.394104,213.422241
|
|
||||||
C560.864441,209.800949 552.191040,205.458878 543.004456,203.296753
|
|
||||||
C533.038269,200.951141 522.631409,200.816238 512.872009,205.579178
|
|
||||||
C507.714233,208.096329 504.588837,212.995987 504.966888,217.990692
|
|
||||||
C505.285492,222.200073 510.104248,226.354355 515.328125,227.870163
|
|
||||||
C523.756165,230.315735 532.666260,231.271103 540.888794,234.209961
|
|
||||||
C550.859680,237.773712 561.703369,239.222687 570.544739,245.801697
|
|
||||||
C577.084290,250.667831 582.716736,255.669708 585.365356,264.161224
|
|
||||||
C586.983948,269.350555 586.781311,274.189484 586.931274,279.181030
|
|
||||||
C587.384338,294.259521 575.711609,309.077209 563.151917,315.002808
|
|
||||||
C556.269958,318.249695 548.943787,319.591461 541.651306,321.457703
|
|
||||||
C532.829590,323.715393 524.098267,323.647827 515.766052,322.594666
|
|
||||||
C505.304688,321.272400 494.389801,320.432251 484.627991,315.313873
|
|
||||||
C480.086609,312.932678 475.161316,311.274963 470.658722,308.831024
|
|
||||||
C466.155365,306.386658 465.481476,302.431335 468.043732,297.691803
|
|
||||||
C470.739777,292.704742 473.532593,287.755463 475.919037,282.620483
|
|
||||||
C477.620270,278.959839 480.133972,278.294525 483.564789,280.101624
|
|
||||||
C489.780548,283.375610 496.341949,285.986023 502.689911,289.018219
|
|
||||||
C512.728333,293.813110 523.411743,291.535126 533.834229,291.952789
|
|
||||||
C543.025635,292.321136 548.216797,288.130707 551.551819,280.343140
|
|
||||||
C552.294922,278.608124 550.145508,274.388702 548.151184,272.986389
|
|
||||||
C543.999084,270.066772 539.233459,267.750793 534.403931,266.126373
|
|
||||||
C527.160889,263.690216 519.605835,262.199402 512.258118,260.051453
|
|
||||||
C504.948181,257.914581 497.395874,256.179901 490.548187,252.985992
|
|
||||||
C479.437927,247.803864 470.780426,240.114548 469.925446,226.549118
|
|
||||||
C469.788605,224.378433 467.946014,222.210541 468.115784,220.141785
|
|
||||||
C469.481415,203.500595 475.116425,189.262009 491.190216,181.287643
|
|
||||||
C491.766235,181.001892 492.211884,180.453384 493.107117,179.990189
|
|
||||||
z"/>
|
|
||||||
<path class="no-fill" fill="#68C4E2" opacity="1.000000" stroke="none"
|
|
||||||
d="
|
|
||||||
M697.832153,338.452667
|
|
||||||
C699.645569,337.706635 701.281433,337.076263 702.927429,337.048401
|
|
||||||
C709.735840,336.933044 716.547424,337.000031 723.678406,337.000031
|
|
||||||
C723.678406,375.611664 723.678406,413.991150 723.678406,452.975586
|
|
||||||
C715.004700,452.975586 706.240967,453.106110 697.494629,452.776062
|
|
||||||
C696.609131,452.742645 695.122742,449.939087 695.107300,448.409058
|
|
||||||
C694.935791,431.421295 694.999634,414.431152 694.999878,397.441650
|
|
||||||
C694.999939,395.851807 694.999939,394.261932 694.999939,391.324951
|
|
||||||
C684.653503,408.507568 674.998047,424.542725 665.167297,440.868927
|
|
||||||
C660.297363,440.868927 654.986694,440.868927 650.028442,440.868927
|
|
||||||
C640.177917,424.676636 630.442505,408.673584 620.244873,391.910706
|
|
||||||
C620.244873,412.549652 620.244873,432.481262 620.244873,452.704163
|
|
||||||
C610.329590,452.704163 600.936951,452.704163 591.270874,452.704163
|
|
||||||
C591.270874,414.283905 591.270874,375.904846 591.270874,337.009583
|
|
||||||
C599.285095,337.009583 607.232483,336.810181 615.153992,337.173950
|
|
||||||
C616.783203,337.248779 618.818787,339.111389 619.808533,340.688690
|
|
||||||
C624.912659,348.822968 629.812988,357.088623 634.637512,365.393829
|
|
||||||
C639.211914,373.268433 643.481812,381.321289 648.120483,389.156647
|
|
||||||
C651.184570,394.332306 654.663574,399.262360 658.222412,404.708801
|
|
||||||
C663.044312,396.534882 668.092773,388.040009 673.079468,379.509094
|
|
||||||
C680.458618,366.885468 687.777954,354.226837 695.177307,341.615143
|
|
||||||
C695.792114,340.567200 696.822083,339.762909 697.832153,338.452667
|
|
||||||
z"/>
|
|
||||||
<path class="no-fill" fill="#a3b5c4" opacity="1.000000" stroke="none"
|
|
||||||
d="
|
|
||||||
M1178.347046,297.726196
|
|
||||||
C1180.145020,299.556458 1181.646729,301.149475 1183.253052,302.853516
|
|
||||||
C1174.627441,312.332367 1164.151367,318.951294 1151.902588,320.260132
|
|
||||||
C1139.690308,321.565094 1126.885376,321.757416 1114.895142,319.496155
|
|
||||||
C1102.174194,317.097137 1090.993652,309.737366 1083.040283,298.920197
|
|
||||||
C1080.077637,294.890656 1078.242798,290.033447 1075.880005,285.560852
|
|
||||||
C1071.559692,277.382202 1071.764893,268.505524 1072.029175,259.670410
|
|
||||||
C1072.473022,244.821854 1078.324707,232.178665 1089.030762,222.107315
|
|
||||||
C1096.045410,215.508530 1104.461182,211.441376 1114.017578,208.653763
|
|
||||||
C1124.345093,205.641190 1134.472046,205.403885 1144.493164,207.230072
|
|
||||||
C1157.004761,209.510071 1168.269531,215.322083 1176.623901,225.313248
|
|
||||||
C1181.594116,231.257217 1184.952515,238.012634 1187.398804,245.693314
|
|
||||||
C1190.212646,254.528198 1189.569946,263.183472 1189.969971,271.960388
|
|
||||||
C1190.141235,275.717285 1187.206787,274.982300 1184.988770,274.984406
|
|
||||||
C1160.989380,275.007416 1136.989868,274.998718 1112.990479,274.998688
|
|
||||||
C1111.377197,274.998688 1109.763916,274.998688 1107.597290,274.998688
|
|
||||||
C1110.280762,281.181061 1113.614014,286.120483 1119.089600,288.862000
|
|
||||||
C1122.440430,290.539673 1126.405273,290.985168 1130.087891,292.007690
|
|
||||||
C1132.397461,292.648987 1134.858032,294.228546 1136.968994,293.843140
|
|
||||||
C1145.625854,292.262512 1154.391235,290.720947 1161.118530,284.062531
|
|
||||||
C1162.024536,283.165619 1165.033325,282.823975 1165.722900,283.533295
|
|
||||||
C1170.044556,287.978821 1173.984375,292.795288 1178.347046,297.726196
|
|
||||||
M1127.098877,233.448639
|
|
||||||
C1126.430298,233.964386 1125.806396,234.852570 1125.086182,234.939240
|
|
||||||
C1116.218018,236.006531 1108.822510,243.463074 1107.482422,252.909882
|
|
||||||
C1123.794922,252.909882 1140.094849,252.909882 1156.189941,252.909882
|
|
||||||
C1152.296509,238.479507 1141.843994,233.241669 1127.098877,233.448639
|
|
||||||
z"/>
|
|
||||||
<path class="no-fill" fill="#68C4E2" opacity="1.000000" stroke="none"
|
|
||||||
d="
|
|
||||||
M790.148682,358.038391
|
|
||||||
C786.292419,359.004730 782.913879,360.230469 779.428101,360.805115
|
|
||||||
C775.318787,361.482574 772.804810,363.601013 772.035095,367.574432
|
|
||||||
C771.025391,372.786713 773.309204,376.459930 778.261353,377.912964
|
|
||||||
C785.972656,380.175568 793.978699,381.514191 801.562195,384.112946
|
|
||||||
C813.503296,388.205017 826.993408,390.082367 834.014221,402.650604
|
|
||||||
C837.828186,409.478180 838.777710,416.748596 837.252808,424.750519
|
|
||||||
C835.287903,435.061798 829.611267,442.179718 821.146423,447.530518
|
|
||||||
C818.365295,449.288513 815.368042,450.814850 812.292114,451.976868
|
|
||||||
C798.895630,457.037628 784.902832,457.207825 771.184753,454.737244
|
|
||||||
C761.763855,453.040619 752.674805,449.175079 743.657532,445.706696
|
|
||||||
C739.416626,444.075531 738.962280,439.043884 741.474243,433.994141
|
|
||||||
C743.674927,429.570099 745.600464,425.009247 748.165649,419.369965
|
|
||||||
C752.051514,420.919434 756.529236,422.222748 760.524170,424.408539
|
|
||||||
C766.858826,427.874390 773.389893,429.991699 780.642700,430.060394
|
|
||||||
C783.106506,430.083710 785.563599,430.805237 787.780457,431.167908
|
|
||||||
C790.679810,430.768738 793.463867,430.168793 796.268982,430.045135
|
|
||||||
C801.804077,429.801117 805.506958,427.251129 807.187500,422.506531
|
|
||||||
C808.389832,419.111969 807.758362,416.349304 804.488953,414.903656
|
|
||||||
C799.546021,412.717987 794.527466,410.567108 789.345276,409.086517
|
|
||||||
C777.730103,405.767883 765.461365,404.084656 755.176514,397.377441
|
|
||||||
C750.759766,394.497070 746.983765,389.985718 744.187073,385.434723
|
|
||||||
C740.724548,379.800201 739.724670,372.904663 741.175171,366.490662
|
|
||||||
C743.130066,357.846375 746.641296,349.562195 754.398987,344.295227
|
|
||||||
C768.337097,334.832123 783.756348,332.981598 800.296936,334.721802
|
|
||||||
C809.393555,335.678772 817.923523,337.789215 826.306641,341.028778
|
|
||||||
C828.534973,341.889923 830.571960,343.246582 833.454590,344.778412
|
|
||||||
C832.291626,348.218079 831.159363,351.808167 829.860901,355.337097
|
|
||||||
C828.645142,358.641205 827.694031,362.183380 825.747192,365.016602
|
|
||||||
C824.819336,366.366882 820.924988,367.484985 819.950928,366.714691
|
|
||||||
C811.247681,359.832397 800.390686,360.744324 790.148682,358.038391
|
|
||||||
z"/>
|
|
||||||
<path class="no-fill" fill="#68C4E2" opacity="1.000000" stroke="none"
|
|
||||||
d="
|
|
||||||
M575.990479,356.028198
|
|
||||||
C571.494873,360.866577 567.258057,365.639740 562.433044,369.716705
|
|
||||||
C556.241394,374.948303 557.913696,374.480530 552.085144,369.082306
|
|
||||||
C543.965210,361.561951 534.578430,359.470581 523.780518,360.483948
|
|
||||||
C514.224670,361.380676 507.257599,365.722748 501.085938,372.822784
|
|
||||||
C496.986694,377.538635 494.787628,382.908417 494.188110,388.559265
|
|
||||||
C492.880554,400.884308 494.848663,412.635254 505.072723,421.220367
|
|
||||||
C513.309265,428.136444 522.909302,431.358948 533.671143,429.619965
|
|
||||||
C542.165649,428.247314 549.404358,424.323181 555.258545,417.784790
|
|
||||||
C556.003052,416.953308 559.232910,417.195618 560.411743,418.105713
|
|
||||||
C565.272827,421.858795 569.923645,425.917542 574.377747,430.152069
|
|
||||||
C577.042725,432.685699 576.173523,435.731049 573.642090,437.765411
|
|
||||||
C568.746704,441.699554 563.916138,445.942780 558.420715,448.853455
|
|
||||||
C547.677795,454.543518 535.877075,456.612396 523.763611,455.942322
|
|
||||||
C509.973907,455.179474 496.730988,451.492523 486.052429,442.744537
|
|
||||||
C477.301544,435.575714 470.352295,426.694794 466.677460,415.144562
|
|
||||||
C462.829803,403.051178 462.921051,391.066986 465.248657,379.285736
|
|
||||||
C468.313263,363.774078 477.978455,352.365997 491.398529,343.847748
|
|
||||||
C503.936249,335.889557 517.667969,333.531830 532.007690,334.111725
|
|
||||||
C543.773438,334.587585 555.140198,337.657104 565.005066,344.225952
|
|
||||||
C569.298645,347.085052 572.364380,351.788025 575.990479,356.028198
|
|
||||||
z"/>
|
|
||||||
<path class="no-fill" fill="#a3b5c4" opacity="1.000000" stroke="none"
|
|
||||||
d="
|
|
||||||
M1018.002808,306.977478
|
|
||||||
C1018.002808,261.854492 1018.057495,217.226868 1017.915466,172.599854
|
|
||||||
C1017.901794,168.313202 1018.923279,166.708267 1023.455322,166.900009
|
|
||||||
C1031.766479,167.251602 1040.115356,167.269455 1048.424316,166.893066
|
|
||||||
C1052.984985,166.686478 1054.070557,168.575485 1054.044067,172.590637
|
|
||||||
C1053.942627,187.909836 1054.003296,203.230118 1054.003296,218.549988
|
|
||||||
C1054.003296,250.521896 1053.922363,282.494263 1054.097534,314.465179
|
|
||||||
C1054.121582,318.847504 1052.928833,320.272064 1048.489502,320.097076
|
|
||||||
C1040.010132,319.762878 1031.501953,319.807953 1023.018433,320.084198
|
|
||||||
C1019.022339,320.214294 1017.523621,318.934753 1017.953308,314.961090
|
|
||||||
C1018.220215,312.492126 1018.002808,309.970795 1018.002808,306.977478
|
|
||||||
z"/>
|
|
||||||
<path class="no-fill" fill="#a3b5c4" opacity="1.000000" stroke="none"
|
|
||||||
d="
|
|
||||||
M604.002502,236.000000
|
|
||||||
C604.002502,227.839523 604.109741,220.176956 603.958862,212.519440
|
|
||||||
C603.879028,208.465317 605.571960,206.888046 609.582336,206.957809
|
|
||||||
C618.072937,207.105545 626.568542,207.064270 635.060547,206.966812
|
|
||||||
C637.719177,206.936295 639.039612,207.676453 639.035217,210.612259
|
|
||||||
C638.980591,246.890823 638.999573,283.169495 638.999573,319.997437
|
|
||||||
C628.173706,319.997437 617.580750,320.010529 606.987793,319.990448
|
|
||||||
C603.219055,319.983276 604.023376,317.127075 604.020996,314.936554
|
|
||||||
C603.992493,288.791046 604.002502,262.645538 604.002502,236.000000
|
|
||||||
z"/>
|
|
||||||
<path class="no-fill" fill="#a3b5c4" opacity="1.000000" stroke="none"
|
|
||||||
d="
|
|
||||||
M609.012939,160.974777
|
|
||||||
C615.536560,156.155121 622.822510,157.490250 629.410095,158.257416
|
|
||||||
C639.072632,159.382675 645.296326,171.570679 642.751099,181.790466
|
|
||||||
C640.672180,190.137878 630.932251,196.349274 623.874146,196.178894
|
|
||||||
C615.457458,195.975693 608.245728,194.507111 603.324890,186.911346
|
|
||||||
C598.977539,180.200821 600.113281,169.202011 606.031921,163.469391
|
|
||||||
C606.885071,162.643066 607.743591,161.822220 609.012939,160.974777
|
|
||||||
z"/>
|
|
||||||
<path class="no-fill" fill="#6EC5E3" opacity="1.000000" stroke="none"
|
|
||||||
d="
|
|
||||||
M373.601624,263.811279
|
|
||||||
C374.254211,246.651154 364.102905,234.608261 355.090576,222.277634
|
|
||||||
C344.031219,207.146301 329.363647,196.013855 313.075165,186.990326
|
|
||||||
C307.703156,184.014328 307.084381,184.515427 307.074646,190.871689
|
|
||||||
C307.060089,200.369171 307.259491,209.872818 306.946014,219.359879
|
|
||||||
C306.867950,221.722794 305.717865,224.529953 304.122314,226.275177
|
|
||||||
C298.843689,232.049026 293.202148,237.499130 287.565704,242.934265
|
|
||||||
C284.765503,245.634430 284.608643,247.692810 286.452271,251.529907
|
|
||||||
C289.702911,258.295258 294.441406,259.484070 301.191132,259.230377
|
|
||||||
C313.670227,258.761353 326.180634,259.185364 338.675476,259.032013
|
|
||||||
C341.906586,258.992371 343.104492,259.950256 343.009216,263.271362
|
|
||||||
C342.808624,270.263733 343.058380,277.268311 342.903564,284.263031
|
|
||||||
C342.829773,287.597534 343.847870,289.107635 347.441803,289.050476
|
|
||||||
C357.769897,288.886139 368.104126,289.077667 378.430237,288.858887
|
|
||||||
C379.723419,288.831482 381.018219,287.226532 382.247131,286.268982
|
|
||||||
C383.572754,285.236115 384.672028,283.462036 386.128876,283.122772
|
|
||||||
C394.579041,281.154846 395.163361,281.369476 395.032654,289.842743
|
|
||||||
C394.830933,302.922302 395.844391,316.095062 394.591095,329.059021
|
|
||||||
C393.681488,338.467926 390.510986,347.803833 387.345184,356.819946
|
|
||||||
C379.816040,378.262604 367.760681,397.121155 351.341492,412.755798
|
|
||||||
C333.063507,430.160370 311.931061,443.265778 287.051575,448.983002
|
|
||||||
C275.009308,451.750275 262.617218,454.433716 250.364731,454.521057
|
|
||||||
C230.447021,454.663086 210.865234,451.303101 192.116150,443.590637
|
|
||||||
C170.117142,434.541290 151.515823,420.937714 135.985001,403.218323
|
|
||||||
C125.232292,390.950378 116.749146,377.116455 110.843727,361.745422
|
|
||||||
C109.290100,357.701569 106.635559,353.920898 103.841942,350.554291
|
|
||||||
C100.459381,346.477936 98.948997,340.847534 101.120216,336.860352
|
|
||||||
C103.682655,332.154724 108.687645,329.511383 113.547096,330.297241
|
|
||||||
C118.303612,331.066437 123.405602,336.322662 123.617043,341.351074
|
|
||||||
C123.700989,343.347687 122.169853,345.359833 121.843933,347.438629
|
|
||||||
C121.383606,350.374695 120.721245,353.513000 121.310089,356.320526
|
|
||||||
C122.046677,359.832428 123.826569,363.162781 125.403580,366.452881
|
|
||||||
C128.176666,372.238251 129.761963,372.584778 134.683929,368.510193
|
|
||||||
C138.262344,365.547882 141.680984,362.392609 145.171524,359.324127
|
|
||||||
C150.784134,354.390259 156.572708,349.636261 161.906250,344.417175
|
|
||||||
C163.566772,342.792297 164.786545,339.932068 164.853775,337.598358
|
|
||||||
C165.160690,326.943359 165.133789,316.271362 164.905304,305.612335
|
|
||||||
C164.823700,301.806183 166.129456,300.734070 169.797302,300.832397
|
|
||||||
C178.288971,301.060059 186.797852,300.702301 195.285645,300.993530
|
|
||||||
C199.355209,301.133148 200.520233,299.676239 200.307068,295.825928
|
|
||||||
C200.031189,290.842133 200.110123,285.828522 200.266113,280.834900
|
|
||||||
C200.359665,277.839966 199.317886,276.622650 196.234528,276.742981
|
|
||||||
C191.576233,276.924713 186.889908,276.550598 182.244629,276.855804
|
|
||||||
C177.953918,277.137756 176.685104,275.371918 176.927277,271.330200
|
|
||||||
C177.195847,266.847931 176.831528,262.330566 177.012848,257.839386
|
|
||||||
C177.157364,254.259933 175.953064,252.786362 172.153336,252.826797
|
|
||||||
C156.992355,252.988235 141.827621,252.989029 126.666801,252.820740
|
|
||||||
C123.305466,252.783432 121.985123,254.366760 120.947701,257.130157
|
|
||||||
C114.529312,274.226746 111.170479,291.821472 111.856613,310.140381
|
|
||||||
C112.057945,315.515747 107.100960,319.371124 102.089310,317.619293
|
|
||||||
C101.109901,317.276947 100.228317,314.977875 100.283485,313.621216
|
|
||||||
C100.680733,303.851501 101.233727,294.085205 101.922722,284.330902
|
|
||||||
C103.114296,267.461334 109.242599,252.054688 117.004974,237.363831
|
|
||||||
C132.665710,207.724762 156.188004,185.980545 186.356079,171.733170
|
|
||||||
C202.009598,164.340561 218.780930,160.620636 236.155579,158.958618
|
|
||||||
C253.142990,157.333633 269.441223,159.623138 285.802979,163.674896
|
|
||||||
C309.211853,169.471756 329.417358,180.863541 347.264618,196.897125
|
|
||||||
C362.050842,210.180756 373.359100,225.950943 382.211853,243.645309
|
|
||||||
C383.019623,245.259781 384.988373,246.559357 386.713470,247.395813
|
|
||||||
C390.827637,249.390701 394.867981,251.216583 395.901093,256.367157
|
|
||||||
C396.925262,261.473236 394.899231,266.667023 390.835663,268.866821
|
|
||||||
C384.857544,272.103058 380.390961,271.510010 376.024048,266.859039
|
|
||||||
C375.228424,266.011658 374.540649,265.063049 373.601624,263.811279
|
|
||||||
M204.086639,435.512756
|
|
||||||
C210.453171,437.272766 216.721054,439.865051 223.205109,440.633606
|
|
||||||
C241.173065,442.763275 259.108276,443.404602 277.096741,439.390533
|
|
||||||
C299.234955,434.450439 318.735718,424.687653 336.084747,410.285278
|
|
||||||
C341.277313,405.974670 341.251678,405.251465 335.997772,400.669525
|
|
||||||
C327.742279,393.469971 319.598236,386.142761 311.359863,378.923370
|
|
||||||
C299.603424,368.621155 303.878510,368.741730 292.292084,380.095947
|
|
||||||
C290.493469,381.858551 287.747345,383.446564 285.327118,383.629486
|
|
||||||
C278.870087,384.117462 272.339905,384.036926 265.862000,383.715179
|
|
||||||
C261.209229,383.484070 259.314392,385.128204 260.083649,389.741547
|
|
||||||
C260.852203,394.350555 258.554810,395.284668 254.371918,395.226929
|
|
||||||
C239.055893,395.015259 223.735229,395.141571 208.416321,395.131744
|
|
||||||
C199.800415,395.126221 200.907990,395.653503 200.871155,387.668762
|
|
||||||
C200.838928,380.685120 199.650024,374.442566 193.411514,369.777344
|
|
||||||
C189.055634,366.520020 185.543671,362.133881 181.656097,358.250580
|
|
||||||
C174.633652,351.235870 174.635300,351.236969 167.058334,357.271271
|
|
||||||
C166.670197,357.580383 166.196823,357.785858 165.822388,358.108368
|
|
||||||
C157.016434,365.692963 148.251022,373.325104 139.400055,380.856720
|
|
||||||
C136.672028,383.178131 136.418625,385.342316 138.898270,387.993378
|
|
||||||
C145.022675,394.541077 150.767075,401.474335 157.205826,407.691681
|
|
||||||
C170.398773,420.431030 186.091644,429.187988 204.086639,435.512756
|
|
||||||
M189.504349,347.996643
|
|
||||||
C192.728287,351.207245 195.952240,354.417877 199.176178,357.628479
|
|
||||||
C199.736893,357.378723 200.297623,357.128937 200.858337,356.879181
|
|
||||||
C200.858337,351.698547 201.058548,346.507599 200.793228,341.340607
|
|
||||||
C200.591003,337.401855 202.027390,336.099487 205.952591,336.137970
|
|
||||||
C222.281311,336.298004 238.613434,336.293732 254.942215,336.135315
|
|
||||||
C258.872528,336.097168 260.250702,337.461151 260.152832,341.366730
|
|
||||||
C259.944214,349.693329 260.243500,358.033051 260.014801,366.358612
|
|
||||||
C259.904877,370.360382 261.802704,371.810822 265.339996,371.876404
|
|
||||||
C270.004333,371.962921 274.713318,372.312592 279.319855,371.800446
|
|
||||||
C281.919434,371.511444 284.852325,370.264465 286.767761,368.504883
|
|
||||||
C293.020569,362.760864 299.027283,356.723663 304.785461,350.482574
|
|
||||||
C306.416779,348.714447 307.595947,345.905884 307.734680,343.502441
|
|
||||||
C308.127777,336.692963 307.676941,329.838257 307.950867,323.017120
|
|
||||||
C308.116058,318.903748 306.403870,317.816895 302.636169,317.999298
|
|
||||||
C297.815186,318.232727 292.966705,317.887024 288.144165,318.103912
|
|
||||||
C284.826172,318.253113 283.845947,316.994293 283.884430,313.768097
|
|
||||||
C284.031433,301.438782 284.118164,289.102600 283.826141,276.778473
|
|
||||||
C283.751923,273.646393 282.685364,270.291229 281.208313,267.496490
|
|
||||||
C278.969788,263.261078 276.119263,259.315491 273.214020,255.485458
|
|
||||||
C272.268311,254.238708 270.354767,253.045303 268.855835,253.009811
|
|
||||||
C259.362885,252.785034 249.861603,252.942444 240.364136,252.856552
|
|
||||||
C237.775986,252.833160 236.782440,253.856018 236.834427,256.405945
|
|
||||||
C236.932922,261.236359 236.679398,266.079132 236.914368,270.900085
|
|
||||||
C237.140869,275.547455 235.096466,277.174957 230.641739,276.931244
|
|
||||||
C226.155090,276.685760 221.637863,277.005707 217.150085,276.770996
|
|
||||||
C213.812454,276.596436 212.798996,277.935577 212.853012,281.131012
|
|
||||||
C212.999420,289.793610 212.794708,298.462250 212.953629,307.124390
|
|
||||||
C213.020248,310.755676 211.759567,312.195282 208.020218,312.115814
|
|
||||||
C199.192505,311.928070 190.357193,312.128113 181.526932,312.015228
|
|
||||||
C178.433701,311.975677 177.091797,312.948364 176.932510,316.274200
|
|
||||||
C176.059525,334.499359 175.987686,334.495911 189.504349,347.996643
|
|
||||||
M245.856842,170.442535
|
|
||||||
C236.495071,171.583374 227.142944,172.814087 217.766617,173.819061
|
|
||||||
C214.212967,174.199966 212.860947,175.938431 212.880417,179.365646
|
|
||||||
C212.944733,190.696289 212.997147,202.028778 212.847656,213.357834
|
|
||||||
C212.800400,216.939484 214.298065,218.038589 217.638611,217.924133
|
|
||||||
C222.465439,217.758774 227.304749,217.973434 232.133255,217.834946
|
|
||||||
C235.503876,217.738266 237.034760,219.014236 236.902878,222.514954
|
|
||||||
C236.733627,227.007736 237.052094,231.522736 236.794937,236.007202
|
|
||||||
C236.579971,239.756134 237.529114,241.415176 241.729218,241.261536
|
|
||||||
C250.382736,240.945038 259.065186,241.382462 267.714600,241.013977
|
|
||||||
C270.287140,240.904388 273.329865,239.740692 275.223877,238.027954
|
|
||||||
C281.272308,232.558395 287.059143,226.765442 292.558380,220.742554
|
|
||||||
C294.300293,218.834808 295.665710,215.843109 295.754883,213.296738
|
|
||||||
C296.110352,203.144745 295.790283,192.971069 295.954407,182.809204
|
|
||||||
C296.003235,179.785172 294.922882,178.334427 292.098022,177.404373
|
|
||||||
C277.351166,172.549149 262.175415,170.543961 245.856842,170.442535
|
|
||||||
M321.927368,318.081635
|
|
||||||
C320.939636,319.483459 319.173950,320.845184 319.099274,322.294067
|
|
||||||
C318.782715,328.436829 318.615570,334.631378 319.066162,340.757568
|
|
||||||
C319.550476,347.342529 318.086273,352.573547 312.693268,356.931824
|
|
||||||
C308.592346,360.245941 309.188843,362.111847 313.326263,365.623718
|
|
||||||
C324.207428,374.859924 335.143982,384.042938 345.710388,393.630798
|
|
||||||
C349.033508,396.646118 351.120758,396.275574 353.278473,393.070587
|
|
||||||
C358.266815,385.661163 363.458313,378.355225 367.931335,370.638641
|
|
||||||
C379.698975,350.337891 384.757355,328.303650 384.072845,304.874390
|
|
||||||
C383.977051,301.594086 383.148590,300.010559 379.532593,300.063782
|
|
||||||
C368.881195,300.220673 358.224945,300.200928 347.572876,300.067169
|
|
||||||
C344.191284,300.024719 342.631592,301.127838 342.848450,304.666779
|
|
||||||
C343.041504,307.817780 342.727325,311.000671 342.935242,314.149750
|
|
||||||
C343.143250,317.300171 341.774170,318.188782 338.833923,318.100464
|
|
||||||
C333.511902,317.940643 328.181580,318.056427 321.927368,318.081635
|
|
||||||
M132.906082,241.161758
|
|
||||||
C145.896606,241.163300 158.888931,241.044754 171.876511,241.240906
|
|
||||||
C175.682800,241.298401 177.366638,240.366486 177.076172,236.246521
|
|
||||||
C176.749008,231.606277 177.086380,226.923126 176.968918,222.262802
|
|
||||||
C176.887695,219.040878 178.276764,217.775879 181.462677,217.861099
|
|
||||||
C186.455429,217.994614 191.457886,217.781769 196.449448,217.935837
|
|
||||||
C199.423615,218.027634 200.836990,216.781525 200.842880,213.901978
|
|
||||||
C200.863678,203.742905 200.876633,193.583618 200.828979,183.424728
|
|
||||||
C200.816513,180.765610 199.823181,179.139816 196.794922,180.504532
|
|
||||||
C191.505920,182.888107 186.009399,184.904495 180.973343,187.738464
|
|
||||||
C166.201538,196.051071 153.793030,207.337753 142.665985,219.972870
|
|
||||||
C138.312943,224.915909 134.791306,230.625610 131.222748,236.198563
|
|
||||||
C130.420212,237.451874 127.890282,240.153168 132.906082,241.161758
|
|
||||||
M295.129028,279.610809
|
|
||||||
C295.130676,286.942169 295.216156,294.274872 295.099670,301.604340
|
|
||||||
C295.038605,305.446198 296.691376,307.002655 300.504852,306.950378
|
|
||||||
C309.167542,306.831665 317.834381,306.824524 326.496674,306.957581
|
|
||||||
C329.925903,307.010254 331.285492,305.691223 331.240570,302.252716
|
|
||||||
C331.120941,293.090118 331.107971,283.923401 331.253265,274.761505
|
|
||||||
C331.302826,271.636139 330.044708,270.728455 327.106201,270.773834
|
|
||||||
C319.110321,270.897369 311.111206,270.808838 303.113373,270.808533
|
|
||||||
C295.126740,270.808228 295.126740,270.810425 295.129028,279.610809
|
|
||||||
M188.979218,248.499146
|
|
||||||
C188.979797,252.817657 188.723175,257.160980 189.135895,261.439728
|
|
||||||
C189.261566,262.742523 191.202042,264.880341 192.361618,264.914215
|
|
||||||
C201.986938,265.195343 211.628006,265.202637 221.252731,264.911163
|
|
||||||
C222.481720,264.873962 224.641403,262.672241 224.678787,261.422638
|
|
||||||
C224.961761,251.964005 224.855377,242.492508 224.794373,233.025528
|
|
||||||
C224.776672,230.281296 223.555786,228.902054 220.466309,228.959534
|
|
||||||
C211.548996,229.125427 202.624847,229.104446 193.706741,228.955215
|
|
||||||
C190.326981,228.898666 188.815552,230.044388 188.940964,233.549881
|
|
||||||
C189.107132,238.194611 188.980408,242.849808 188.979218,248.499146
|
|
||||||
M234.490936,384.018036
|
|
||||||
C237.656876,384.017639 240.830460,383.880219 243.986511,384.056763
|
|
||||||
C246.941986,384.222076 248.185394,383.231781 248.138062,380.105896
|
|
||||||
C247.994247,370.610229 248.010529,361.110321 248.115372,351.613770
|
|
||||||
C248.146988,348.750519 246.987030,347.858429 244.250565,347.889343
|
|
||||||
C235.087189,347.992920 225.920303,348.025940 216.758224,347.875336
|
|
||||||
C213.549057,347.822601 212.827789,349.244904 212.860855,352.098480
|
|
||||||
C212.968979,361.428406 212.992065,370.761749 212.851135,380.090790
|
|
||||||
C212.803970,383.212860 214.045898,384.150696 216.999863,384.065582
|
|
||||||
C222.494049,383.907349 227.995987,384.018646 234.490936,384.018036
|
|
||||||
z"/>
|
|
||||||
<path class="no-fill" fill="#e6ebef" opacity="1.000000" stroke="none"
|
|
||||||
d="
|
|
||||||
M203.726532,435.348328
|
|
||||||
C186.091644,429.187988 170.398773,420.431030 157.205826,407.691681
|
|
||||||
C150.767075,401.474335 145.022675,394.541077 138.898270,387.993378
|
|
||||||
C136.418625,385.342316 136.672028,383.178131 139.400055,380.856720
|
|
||||||
C148.251022,373.325104 157.016434,365.692963 165.822388,358.108368
|
|
||||||
C166.196823,357.785858 166.670197,357.580383 167.058334,357.271271
|
|
||||||
C174.635300,351.236969 174.633652,351.235870 181.656097,358.250580
|
|
||||||
C185.543671,362.133881 189.055634,366.520020 193.411514,369.777344
|
|
||||||
C199.650024,374.442566 200.838928,380.685120 200.871155,387.668762
|
|
||||||
C200.907990,395.653503 199.800415,395.126221 208.416321,395.131744
|
|
||||||
C223.735229,395.141571 239.055893,395.015259 254.371918,395.226929
|
|
||||||
C258.554810,395.284668 260.852203,394.350555 260.083649,389.741547
|
|
||||||
C259.314392,385.128204 261.209229,383.484070 265.862000,383.715179
|
|
||||||
C272.339905,384.036926 278.870087,384.117462 285.327118,383.629486
|
|
||||||
C287.747345,383.446564 290.493469,381.858551 292.292084,380.095947
|
|
||||||
C303.878510,368.741730 299.603424,368.621155 311.359863,378.923370
|
|
||||||
C319.598236,386.142761 327.742279,393.469971 335.997772,400.669525
|
|
||||||
C341.251678,405.251465 341.277313,405.974670 336.084747,410.285278
|
|
||||||
C318.735718,424.687653 299.234955,434.450439 277.096741,439.390533
|
|
||||||
C259.108276,443.404602 241.173065,442.763275 223.205109,440.633606
|
|
||||||
C216.721054,439.865051 210.453171,437.272766 203.726532,435.348328
|
|
||||||
z"/>
|
|
||||||
<path class="no-fill" fill="#e6ebef" opacity="1.000000" stroke="none"
|
|
||||||
d="
|
|
||||||
M189.254333,347.746460
|
|
||||||
C175.987686,334.495911 176.059525,334.499359 176.932510,316.274200
|
|
||||||
C177.091797,312.948364 178.433701,311.975677 181.526932,312.015228
|
|
||||||
C190.357193,312.128113 199.192505,311.928070 208.020218,312.115814
|
|
||||||
C211.759567,312.195282 213.020248,310.755676 212.953629,307.124390
|
|
||||||
C212.794708,298.462250 212.999420,289.793610 212.853012,281.131012
|
|
||||||
C212.798996,277.935577 213.812454,276.596436 217.150085,276.770996
|
|
||||||
C221.637863,277.005707 226.155090,276.685760 230.641739,276.931244
|
|
||||||
C235.096466,277.174957 237.140869,275.547455 236.914368,270.900085
|
|
||||||
C236.679398,266.079132 236.932922,261.236359 236.834427,256.405945
|
|
||||||
C236.782440,253.856018 237.775986,252.833160 240.364136,252.856552
|
|
||||||
C249.861603,252.942444 259.362885,252.785034 268.855835,253.009811
|
|
||||||
C270.354767,253.045303 272.268311,254.238708 273.214020,255.485458
|
|
||||||
C276.119263,259.315491 278.969788,263.261078 281.208313,267.496490
|
|
||||||
C282.685364,270.291229 283.751923,273.646393 283.826141,276.778473
|
|
||||||
C284.118164,289.102600 284.031433,301.438782 283.884430,313.768097
|
|
||||||
C283.845947,316.994293 284.826172,318.253113 288.144165,318.103912
|
|
||||||
C292.966705,317.887024 297.815186,318.232727 302.636169,317.999298
|
|
||||||
C306.403870,317.816895 308.116058,318.903748 307.950867,323.017120
|
|
||||||
C307.676941,329.838257 308.127777,336.692963 307.734680,343.502441
|
|
||||||
C307.595947,345.905884 306.416779,348.714447 304.785461,350.482574
|
|
||||||
C299.027283,356.723663 293.020569,362.760864 286.767761,368.504883
|
|
||||||
C284.852325,370.264465 281.919434,371.511444 279.319855,371.800446
|
|
||||||
C274.713318,372.312592 270.004333,371.962921 265.339996,371.876404
|
|
||||||
C261.802704,371.810822 259.904877,370.360382 260.014801,366.358612
|
|
||||||
C260.243500,358.033051 259.944214,349.693329 260.152832,341.366730
|
|
||||||
C260.250702,337.461151 258.872528,336.097168 254.942215,336.135315
|
|
||||||
C238.613434,336.293732 222.281311,336.298004 205.952591,336.137970
|
|
||||||
C202.027390,336.099487 200.591003,337.401855 200.793228,341.340607
|
|
||||||
C201.058548,346.507599 200.858337,351.698547 200.858337,356.879181
|
|
||||||
C200.297623,357.128937 199.736893,357.378723 199.176178,357.628479
|
|
||||||
C195.952240,354.417877 192.728287,351.207245 189.254333,347.746460
|
|
||||||
z"/>
|
|
||||||
<path class="no-fill" fill="#e6ebef" opacity="1.000000" stroke="none"
|
|
||||||
d="
|
|
||||||
M246.290344,170.326050
|
|
||||||
C262.175415,170.543961 277.351166,172.549149 292.098022,177.404373
|
|
||||||
C294.922882,178.334427 296.003235,179.785172 295.954407,182.809204
|
|
||||||
C295.790283,192.971069 296.110352,203.144745 295.754883,213.296738
|
|
||||||
C295.665710,215.843109 294.300293,218.834808 292.558380,220.742554
|
|
||||||
C287.059143,226.765442 281.272308,232.558395 275.223877,238.027954
|
|
||||||
C273.329865,239.740692 270.287140,240.904388 267.714600,241.013977
|
|
||||||
C259.065186,241.382462 250.382736,240.945038 241.729218,241.261536
|
|
||||||
C237.529114,241.415176 236.579971,239.756134 236.794937,236.007202
|
|
||||||
C237.052094,231.522736 236.733627,227.007736 236.902878,222.514954
|
|
||||||
C237.034760,219.014236 235.503876,217.738266 232.133255,217.834946
|
|
||||||
C227.304749,217.973434 222.465439,217.758774 217.638611,217.924133
|
|
||||||
C214.298065,218.038589 212.800400,216.939484 212.847656,213.357834
|
|
||||||
C212.997147,202.028778 212.944733,190.696289 212.880417,179.365646
|
|
||||||
C212.860947,175.938431 214.212967,174.199966 217.766617,173.819061
|
|
||||||
C227.142944,172.814087 236.495071,171.583374 246.290344,170.326050
|
|
||||||
z"/>
|
|
||||||
<path class="no-fill" fill="#e6ebef" opacity="1.000000" stroke="none"
|
|
||||||
d="
|
|
||||||
M322.391052,318.069397
|
|
||||||
C328.181580,318.056427 333.511902,317.940643 338.833923,318.100464
|
|
||||||
C341.774170,318.188782 343.143250,317.300171 342.935242,314.149750
|
|
||||||
C342.727325,311.000671 343.041504,307.817780 342.848450,304.666779
|
|
||||||
C342.631592,301.127838 344.191284,300.024719 347.572876,300.067169
|
|
||||||
C358.224945,300.200928 368.881195,300.220673 379.532593,300.063782
|
|
||||||
C383.148590,300.010559 383.977051,301.594086 384.072845,304.874390
|
|
||||||
C384.757355,328.303650 379.698975,350.337891 367.931335,370.638641
|
|
||||||
C363.458313,378.355225 358.266815,385.661163 353.278473,393.070587
|
|
||||||
C351.120758,396.275574 349.033508,396.646118 345.710388,393.630798
|
|
||||||
C335.143982,384.042938 324.207428,374.859924 313.326263,365.623718
|
|
||||||
C309.188843,362.111847 308.592346,360.245941 312.693268,356.931824
|
|
||||||
C318.086273,352.573547 319.550476,347.342529 319.066162,340.757568
|
|
||||||
C318.615570,334.631378 318.782715,328.436829 319.099274,322.294067
|
|
||||||
C319.173950,320.845184 320.939636,319.483459 322.391052,318.069397
|
|
||||||
z"/>
|
|
||||||
<path class="no-fill" fill="#e6ebef" opacity="1.000000" stroke="none"
|
|
||||||
d="
|
|
||||||
M132.459503,241.148285
|
|
||||||
C127.890282,240.153168 130.420212,237.451874 131.222748,236.198563
|
|
||||||
C134.791306,230.625610 138.312943,224.915909 142.665985,219.972870
|
|
||||||
C153.793030,207.337753 166.201538,196.051071 180.973343,187.738464
|
|
||||||
C186.009399,184.904495 191.505920,182.888107 196.794922,180.504532
|
|
||||||
C199.823181,179.139816 200.816513,180.765610 200.828979,183.424728
|
|
||||||
C200.876633,193.583618 200.863678,203.742905 200.842880,213.901978
|
|
||||||
C200.836990,216.781525 199.423615,218.027634 196.449448,217.935837
|
|
||||||
C191.457886,217.781769 186.455429,217.994614 181.462677,217.861099
|
|
||||||
C178.276764,217.775879 176.887695,219.040878 176.968918,222.262802
|
|
||||||
C177.086380,226.923126 176.749008,231.606277 177.076172,236.246521
|
|
||||||
C177.366638,240.366486 175.682800,241.298401 171.876511,241.240906
|
|
||||||
C158.888931,241.044754 145.896606,241.163300 132.459503,241.148285
|
|
||||||
z"/>
|
|
||||||
<path class="no-fill" fill="#e6ebef" opacity="1.000000" stroke="none"
|
|
||||||
d="
|
|
||||||
M295.128662,279.128052
|
|
||||||
C295.126740,270.810425 295.126740,270.808228 303.113373,270.808533
|
|
||||||
C311.111206,270.808838 319.110321,270.897369 327.106201,270.773834
|
|
||||||
C330.044708,270.728455 331.302826,271.636139 331.253265,274.761505
|
|
||||||
C331.107971,283.923401 331.120941,293.090118 331.240570,302.252716
|
|
||||||
C331.285492,305.691223 329.925903,307.010254 326.496674,306.957581
|
|
||||||
C317.834381,306.824524 309.167542,306.831665 300.504852,306.950378
|
|
||||||
C296.691376,307.002655 295.038605,305.446198 295.099670,301.604340
|
|
||||||
C295.216156,294.274872 295.130676,286.942169 295.128662,279.128052
|
|
||||||
z"/>
|
|
||||||
<path class="no-fill" fill="#e6ebef" opacity="1.000000" stroke="none"
|
|
||||||
d="
|
|
||||||
M188.979385,247.999817
|
|
||||||
C188.980408,242.849808 189.107132,238.194611 188.940964,233.549881
|
|
||||||
C188.815552,230.044388 190.326981,228.898666 193.706741,228.955215
|
|
||||||
C202.624847,229.104446 211.548996,229.125427 220.466309,228.959534
|
|
||||||
C223.555786,228.902054 224.776672,230.281296 224.794373,233.025528
|
|
||||||
C224.855377,242.492508 224.961761,251.964005 224.678787,261.422638
|
|
||||||
C224.641403,262.672241 222.481720,264.873962 221.252731,264.911163
|
|
||||||
C211.628006,265.202637 201.986938,265.195343 192.361618,264.914215
|
|
||||||
C191.202042,264.880341 189.261566,262.742523 189.135895,261.439728
|
|
||||||
C188.723175,257.160980 188.979797,252.817657 188.979385,247.999817
|
|
||||||
z"/>
|
|
||||||
<path class="no-fill" fill="#e6ebef" opacity="1.000000" stroke="none"
|
|
||||||
d="
|
|
||||||
M233.992828,384.017883
|
|
||||||
C227.995987,384.018646 222.494049,383.907349 216.999863,384.065582
|
|
||||||
C214.045898,384.150696 212.803970,383.212860 212.851135,380.090790
|
|
||||||
C212.992065,370.761749 212.968979,361.428406 212.860855,352.098480
|
|
||||||
C212.827789,349.244904 213.549057,347.822601 216.758224,347.875336
|
|
||||||
C225.920303,348.025940 235.087189,347.992920 244.250565,347.889343
|
|
||||||
C246.987030,347.858429 248.146988,348.750519 248.115372,351.613770
|
|
||||||
C248.010529,361.110321 247.994247,370.610229 248.138062,380.105896
|
|
||||||
C248.185394,383.231781 246.941986,384.222076 243.986511,384.056763
|
|
||||||
C240.830460,383.880219 237.656876,384.017639 233.992828,384.017883
|
|
||||||
z"/>
|
|
||||||
</svg>
|
|
Before Width: | Height: | Size: 58 KiB |
995
src/ui/Icon/images/static-cms-logo.svg
Normal file
995
src/ui/Icon/images/static-cms-logo.svg
Normal file
@ -0,0 +1,995 @@
|
|||||||
|
<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
|
||||||
|
width="100%" viewBox="0 0 1280 640" enable-background="new 0 0 1280 640" xml:space="preserve">
|
||||||
|
<path class="no-fill" fill="none" opacity="1.000000" stroke="none"
|
||||||
|
d="
|
||||||
|
M783.000000,641.000000
|
||||||
|
C522.033875,641.000000 261.567780,641.000000 1.050843,641.000000
|
||||||
|
C1.050843,427.728333 1.050843,214.456650 1.050843,1.092481
|
||||||
|
C427.549469,1.092481 854.098938,1.092481 1280.824219,1.092481
|
||||||
|
C1280.824219,214.333221 1280.824219,427.666595 1280.824219,641.000000
|
||||||
|
C1115.123169,641.000000 949.311584,641.000000 783.000000,641.000000
|
||||||
|
M167.485123,140.998108
|
||||||
|
C152.329453,147.700104 139.128983,157.422043 126.590767,168.028687
|
||||||
|
C116.481079,176.580917 107.793411,186.570709 100.004242,197.262222
|
||||||
|
C85.694534,216.903946 75.327057,238.455933 70.081841,262.250488
|
||||||
|
C68.205719,270.761383 66.482559,279.455566 66.145454,288.122711
|
||||||
|
C65.570129,302.914490 64.655029,317.957428 66.672409,332.508087
|
||||||
|
C68.531563,345.917480 74.138252,358.795380 77.949402,371.949371
|
||||||
|
C81.754852,385.083740 89.176323,396.389252 96.392693,407.685608
|
||||||
|
C103.655174,419.054169 112.337166,429.500641 122.778961,438.140961
|
||||||
|
C132.785294,446.420929 142.906265,454.701569 153.771606,461.758270
|
||||||
|
C161.836838,466.996368 170.952942,470.860291 180.000198,474.280029
|
||||||
|
C190.989990,478.433990 202.285751,481.923035 213.671463,484.828522
|
||||||
|
C220.082153,486.464447 226.981689,486.073761 233.589005,487.072449
|
||||||
|
C249.075256,489.413147 264.357178,487.584259 279.562469,484.981415
|
||||||
|
C285.976227,483.883484 292.266449,481.900085 298.500885,479.959625
|
||||||
|
C306.555847,477.452454 314.680359,475.014648 322.432281,471.736694
|
||||||
|
C328.595734,469.130463 334.105804,465.021606 340.151367,462.085205
|
||||||
|
C352.351593,456.159454 362.313995,447.248901 372.157410,438.279358
|
||||||
|
C381.824799,429.470215 389.920959,419.321014 397.565430,408.572968
|
||||||
|
C404.582367,398.707245 410.132721,388.259460 414.814606,377.365112
|
||||||
|
C418.826904,368.028748 421.724396,358.118256 424.158295,348.226318
|
||||||
|
C426.427979,339.001648 428.352325,329.508057 428.777374,320.058563
|
||||||
|
C429.348846,307.354767 428.864685,294.536163 427.823303,281.849792
|
||||||
|
C427.076324,272.749359 425.399597,263.574127 422.852966,254.805374
|
||||||
|
C418.168976,238.677246 411.955780,222.994354 402.395996,209.082657
|
||||||
|
C395.006927,198.329865 387.167419,187.736511 378.362671,178.141830
|
||||||
|
C365.162262,163.757111 349.724396,151.866730 331.920624,143.547440
|
||||||
|
C320.680145,138.295029 309.365997,132.877670 297.560303,129.233841
|
||||||
|
C280.149902,123.860130 262.051788,122.000023 243.756104,122.991013
|
||||||
|
C235.691360,123.427856 227.486328,123.001205 219.588638,124.371231
|
||||||
|
C209.026443,126.203468 198.561508,128.955856 188.322586,132.166962
|
||||||
|
C181.399002,134.338303 174.936737,137.980591 167.485123,140.998108
|
||||||
|
M588.000854,275.527588
|
||||||
|
C588.470947,269.078613 587.082581,263.069641 583.921143,257.417480
|
||||||
|
C578.941101,248.514008 570.934082,242.966827 561.858337,239.587006
|
||||||
|
C551.286987,235.650284 540.317566,232.476944 529.262634,230.260956
|
||||||
|
C522.822632,228.970016 516.920837,227.201736 511.234009,224.041794
|
||||||
|
C505.534332,220.874710 504.070007,214.132782 508.270813,209.178177
|
||||||
|
C513.577026,202.919907 520.974243,201.255127 528.410767,201.213486
|
||||||
|
C534.762268,201.177933 541.093628,203.404480 547.489624,203.877670
|
||||||
|
C554.741760,204.414185 561.024353,207.487778 566.748657,211.198135
|
||||||
|
C571.240906,214.109848 571.808105,212.283157 573.098389,208.703751
|
||||||
|
C575.379395,202.375687 577.827271,196.088501 580.601257,189.963547
|
||||||
|
C582.804077,185.099792 582.892395,184.744690 577.844971,182.550110
|
||||||
|
C573.797913,180.790466 569.874329,178.625580 565.679688,177.353638
|
||||||
|
C558.794373,175.265778 551.789612,172.573914 544.735779,172.240433
|
||||||
|
C528.430420,171.469513 512.011536,170.976379 496.440857,177.917358
|
||||||
|
C487.796967,181.770569 480.246643,187.108170 475.819519,195.212646
|
||||||
|
C472.373993,201.520096 470.727905,208.965134 469.218536,216.102615
|
||||||
|
C468.578278,219.130356 470.636566,222.636673 470.944489,225.973831
|
||||||
|
C471.980652,237.202454 478.552704,244.590332 487.696991,249.933990
|
||||||
|
C495.561554,254.529800 503.889832,257.875763 513.137451,259.230347
|
||||||
|
C520.827393,260.356781 528.394958,262.711884 535.815613,265.138000
|
||||||
|
C540.357971,266.623077 544.889038,268.770264 548.710022,271.589386
|
||||||
|
C550.855347,273.172180 553.331726,277.485077 552.578552,279.262970
|
||||||
|
C549.454102,286.638275 544.707581,291.310364 534.922668,290.938019
|
||||||
|
C524.502258,290.541504 514.014709,292.390778 503.700928,288.208069
|
||||||
|
C497.129425,285.543030 490.249908,283.795319 484.575043,279.258331
|
||||||
|
C481.500427,276.800171 478.573273,277.949280 476.920074,281.534302
|
||||||
|
C474.549225,286.675537 471.240784,291.423462 469.251984,296.686707
|
||||||
|
C468.112793,299.701477 465.233276,303.984406 469.474884,306.645996
|
||||||
|
C474.204224,309.613586 479.466431,311.800751 484.655548,313.942780
|
||||||
|
C488.164978,315.391388 491.905396,316.364624 495.619141,317.216370
|
||||||
|
C503.096130,318.931183 510.581085,321.391418 518.145081,321.735718
|
||||||
|
C526.356934,322.109497 534.607849,322.611816 543.059509,320.396271
|
||||||
|
C550.034912,318.567749 557.043640,317.409698 563.589294,314.051422
|
||||||
|
C578.978088,306.156097 587.657349,294.079529 588.000854,275.527588
|
||||||
|
M696.000305,441.431122
|
||||||
|
C696.280396,445.252808 696.560486,449.074463 696.848206,452.999634
|
||||||
|
C705.390991,452.999634 713.048584,452.885834 720.700012,453.053192
|
||||||
|
C723.957947,453.124420 725.111755,451.975342 725.053284,448.709167
|
||||||
|
C724.895264,439.880585 724.999878,431.047333 724.999939,422.215912
|
||||||
|
C725.000061,395.388428 724.882812,368.559967 725.109741,341.734375
|
||||||
|
C725.149841,336.994293 723.716858,335.609222 719.140381,335.911102
|
||||||
|
C713.499512,336.283203 707.808838,335.850311 702.154175,336.096405
|
||||||
|
C700.564941,336.165588 698.513123,336.995209 697.579041,338.186218
|
||||||
|
C695.992859,340.208679 695.260071,342.874359 693.930359,345.129150
|
||||||
|
C690.400452,351.114929 686.733948,357.020111 683.139099,362.967804
|
||||||
|
C679.739929,368.591797 676.318481,374.202972 672.986633,379.866791
|
||||||
|
C668.257690,387.905548 663.601990,395.987427 658.513550,404.741425
|
||||||
|
C655.381348,399.407440 652.672058,394.814240 649.982727,390.209412
|
||||||
|
C645.542114,382.605865 641.184082,374.953003 636.662170,367.398254
|
||||||
|
C631.848633,359.356506 626.762939,351.476044 622.033630,343.386292
|
||||||
|
C619.274841,338.667267 616.587097,334.796417 610.000183,335.865082
|
||||||
|
C605.616577,336.576233 601.001953,336.278046 596.531311,335.921661
|
||||||
|
C592.076294,335.566528 590.876221,337.190399 590.907288,341.564209
|
||||||
|
C591.094299,367.890472 591.000244,394.218719 591.000305,420.546326
|
||||||
|
C591.000305,429.877625 590.884399,439.211823 591.118286,448.537262
|
||||||
|
C591.155945,450.038422 592.706604,452.751038 593.637390,452.785950
|
||||||
|
C602.374634,453.113800 611.129150,452.980591 620.181335,452.980591
|
||||||
|
C620.181335,432.068787 620.181335,411.870605 620.181335,391.220276
|
||||||
|
C622.650879,394.703552 625.027832,397.594269 626.901367,400.780945
|
||||||
|
C634.063843,412.963043 640.954224,425.306458 648.229004,437.419861
|
||||||
|
C649.505859,439.545929 651.432251,441.138275 654.937317,441.244873
|
||||||
|
C661.930969,441.457672 666.755981,440.582794 670.194763,433.133759
|
||||||
|
C674.858215,423.031982 681.281494,413.734589 687.064148,404.161102
|
||||||
|
C689.675842,399.837463 692.563293,395.680420 695.997070,390.418884
|
||||||
|
C695.997070,407.940155 695.997070,424.193878 696.000305,441.431122
|
||||||
|
M792.999878,252.560181
|
||||||
|
C792.798584,244.730682 790.993469,237.259460 787.981323,230.056213
|
||||||
|
C785.148071,223.280777 780.631165,217.936340 774.407898,214.031769
|
||||||
|
C763.999512,207.501312 752.314941,205.255402 740.381958,205.198578
|
||||||
|
C732.836365,205.162659 725.259033,206.019333 717.654114,207.677628
|
||||||
|
C707.546326,209.881653 698.457581,213.445953 689.690674,219.468826
|
||||||
|
C693.342529,227.096298 696.779785,234.600174 700.550293,241.932648
|
||||||
|
C701.547974,243.872879 703.118652,244.561127 705.837402,242.909592
|
||||||
|
C710.996033,239.775909 716.502258,236.421005 722.278870,235.305313
|
||||||
|
C729.018188,234.003708 736.218506,234.692459 743.187317,235.081741
|
||||||
|
C750.969604,235.516434 757.726318,243.497620 757.810120,252.000000
|
||||||
|
C752.336609,252.000000 746.862244,252.016968 741.387939,251.996552
|
||||||
|
C729.017151,251.950424 716.742554,251.479584 704.910461,256.833282
|
||||||
|
C696.736755,260.531677 690.386353,265.875183 688.254883,274.199524
|
||||||
|
C685.921936,283.310516 685.205444,292.922241 689.989441,301.934509
|
||||||
|
C694.853394,311.097412 702.732483,316.889069 712.426147,318.718323
|
||||||
|
C721.241699,320.381866 730.522278,320.135529 739.566956,319.825745
|
||||||
|
C745.134827,319.635040 750.535645,317.526825 754.930359,313.605682
|
||||||
|
C756.372742,312.318695 758.034058,311.277039 760.196777,309.678650
|
||||||
|
C760.196777,313.246552 760.196777,315.995300 760.196777,319.000000
|
||||||
|
C769.656128,319.000000 778.798218,318.825989 787.928223,319.081451
|
||||||
|
C791.848022,319.191132 793.124573,318.054779 793.086670,314.019501
|
||||||
|
C792.897217,293.863983 793.000000,273.705688 792.999878,252.560181
|
||||||
|
M1046.551025,316.048645
|
||||||
|
C1047.831421,315.434387 1049.099121,314.792145 1050.394165,314.210327
|
||||||
|
C1059.250854,310.230896 1065.500610,303.509552 1070.260986,295.254120
|
||||||
|
C1072.388550,291.564362 1070.295654,289.659180 1067.210449,287.951721
|
||||||
|
C1062.379761,285.278290 1057.595459,282.496582 1052.961548,279.498047
|
||||||
|
C1048.113647,276.361023 1044.405273,276.114838 1042.305908,279.227448
|
||||||
|
C1035.458618,289.379486 1025.353760,293.762543 1013.902893,290.780396
|
||||||
|
C1010.265442,289.833099 1006.783020,287.527374 1003.755798,285.168121
|
||||||
|
C998.357483,280.961029 995.894592,275.084015 994.528748,268.319214
|
||||||
|
C992.803162,259.773285 996.428223,244.389465 1005.751953,239.669769
|
||||||
|
C1008.222839,238.419022 1010.544128,236.242340 1013.106934,235.935883
|
||||||
|
C1018.301819,235.314667 1024.356079,234.048935 1028.704956,236.024017
|
||||||
|
C1035.184326,238.966690 1040.494507,244.483963 1046.974487,249.417694
|
||||||
|
C1052.616943,246.206375 1059.053589,241.589417 1066.201172,238.784027
|
||||||
|
C1071.676880,236.634918 1071.855103,233.759644 1069.843628,229.790024
|
||||||
|
C1068.438110,227.016327 1066.043091,224.733246 1064.030151,222.280106
|
||||||
|
C1056.477905,213.075745 1046.088745,208.220032 1034.949829,206.287491
|
||||||
|
C1024.342285,204.447144 1013.473145,204.445419 1002.616760,207.716599
|
||||||
|
C995.051086,209.996262 987.931396,212.646393 981.560242,217.161316
|
||||||
|
C968.211548,226.620941 960.529236,239.698441 959.139709,255.881668
|
||||||
|
C957.983032,269.354370 959.889343,282.200500 967.795166,294.132965
|
||||||
|
C978.148560,309.759735 992.491150,318.269867 1010.547485,319.743103
|
||||||
|
C1022.310181,320.702789 1034.517456,321.704590 1046.551025,316.048645
|
||||||
|
M804.464111,334.000153
|
||||||
|
C802.965515,333.981384 801.434692,334.156738 799.973450,333.913513
|
||||||
|
C787.066406,331.765137 774.828369,333.583282 762.796753,338.853973
|
||||||
|
C751.740051,343.697601 744.540161,351.638824 742.519897,363.267914
|
||||||
|
C740.822815,373.036865 741.047913,382.947540 748.536316,391.117950
|
||||||
|
C757.873718,401.305908 770.932312,403.149811 783.120667,407.004578
|
||||||
|
C790.264221,409.263855 797.543823,411.196228 804.474121,413.990265
|
||||||
|
C809.193115,415.892761 809.622559,424.367157 805.276245,426.796356
|
||||||
|
C799.796265,429.859161 793.524597,430.989838 787.377747,430.802948
|
||||||
|
C782.094482,430.642273 776.747437,429.371368 771.630188,427.893311
|
||||||
|
C766.798767,426.497803 762.220398,424.216095 757.549622,422.278534
|
||||||
|
C754.632202,421.068268 751.749939,419.773193 748.489929,418.359131
|
||||||
|
C748.133728,420.319946 748.177673,421.537262 747.695374,422.487671
|
||||||
|
C745.225586,427.355530 742.184875,431.992889 740.299988,437.066101
|
||||||
|
C739.647400,438.822418 741.152649,442.209290 742.739197,443.759521
|
||||||
|
C744.736877,445.711487 747.826538,446.547668 750.448120,447.859192
|
||||||
|
C761.569458,453.422913 773.802917,454.333435 785.806763,455.807800
|
||||||
|
C790.166321,456.343231 794.788940,454.199982 799.306335,454.120209
|
||||||
|
C805.345581,454.013611 810.783691,452.425812 816.288879,450.099426
|
||||||
|
C827.710022,445.273102 834.913574,436.539001 837.684631,425.046478
|
||||||
|
C839.369019,418.060669 838.969971,410.146881 834.914734,403.431641
|
||||||
|
C832.971619,400.213806 830.819336,396.711060 827.862793,394.591003
|
||||||
|
C817.633484,387.255615 805.513794,384.716919 793.486755,381.873260
|
||||||
|
C787.127747,380.369751 780.973267,377.816742 774.924011,375.268433
|
||||||
|
C772.080627,374.070679 770.781860,366.358246 772.511292,364.197937
|
||||||
|
C777.424255,358.060760 785.227112,359.722198 791.551575,357.419800
|
||||||
|
C794.154114,356.472412 797.832214,358.252411 800.961670,359.030975
|
||||||
|
C806.139099,360.318970 811.309814,361.667236 816.402039,363.251526
|
||||||
|
C819.390442,364.181274 822.221375,365.616730 824.403870,366.525299
|
||||||
|
C827.263306,360.332886 829.878113,355.432190 831.745850,350.261658
|
||||||
|
C832.525452,348.103210 832.681274,343.951324 831.472961,343.130066
|
||||||
|
C823.672485,337.828247 814.492676,335.920166 804.464111,334.000153
|
||||||
|
M480.524170,436.042999
|
||||||
|
C491.791809,450.022217 508.078308,453.189972 524.372314,455.791107
|
||||||
|
C528.825073,456.501923 533.705627,454.791779 538.350403,453.969940
|
||||||
|
C543.125610,453.125061 547.873901,452.098236 552.596375,450.990875
|
||||||
|
C562.003906,448.784821 568.895874,442.685303 575.500916,436.103180
|
||||||
|
C577.560913,434.050385 577.293945,432.563965 575.291260,430.757324
|
||||||
|
C570.705750,426.620880 565.945496,422.627563 561.775391,418.098114
|
||||||
|
C558.704285,414.762360 556.325073,415.921875 554.267456,418.467712
|
||||||
|
C547.934998,426.302734 538.910950,429.017029 529.812073,429.622986
|
||||||
|
C524.213440,429.995819 518.116699,427.251831 512.686218,424.889893
|
||||||
|
C500.984863,419.800568 495.795105,410.015167 495.030884,397.643433
|
||||||
|
C494.825958,394.325470 494.432220,390.857544 495.140594,387.685211
|
||||||
|
C496.053070,383.598816 497.496246,379.456116 499.587128,375.845062
|
||||||
|
C503.598267,368.917725 509.455353,364.596741 517.267944,361.448273
|
||||||
|
C525.322449,358.202332 532.985596,358.657959 540.325623,360.599670
|
||||||
|
C545.604614,361.996277 549.829224,367.101868 554.797607,370.099823
|
||||||
|
C556.540527,371.151550 559.922241,371.922729 561.139343,370.984619
|
||||||
|
C566.120605,367.145233 570.447327,362.470947 575.235596,358.361023
|
||||||
|
C577.655823,356.283630 577.226685,354.251709 575.634766,352.396637
|
||||||
|
C566.942017,342.267151 555.349243,336.652588 542.705505,334.261078
|
||||||
|
C531.668335,332.173462 520.449585,332.510742 509.130951,335.702026
|
||||||
|
C498.175751,338.790771 488.948853,343.937866 480.952240,351.634033
|
||||||
|
C473.666687,358.645966 468.155609,367.421478 466.339630,376.988068
|
||||||
|
C463.204559,393.503784 463.150543,410.340576 472.099915,425.654755
|
||||||
|
C474.198761,429.246307 477.327484,432.236023 480.524170,436.042999
|
||||||
|
M889.969299,305.820374
|
||||||
|
C888.049561,301.091583 885.816650,296.459808 884.311890,291.602509
|
||||||
|
C883.163635,287.896027 882.324097,286.827911 878.717957,289.553741
|
||||||
|
C876.299194,291.382141 872.950439,292.582031 869.907532,292.861359
|
||||||
|
C862.932007,293.501770 857.055176,287.527557 857.014038,280.330353
|
||||||
|
C856.955994,270.167114 856.998962,260.003326 856.998779,249.839767
|
||||||
|
C856.998657,245.589661 856.998718,241.339554 856.998718,237.000305
|
||||||
|
C865.014526,237.000305 872.341980,236.882507 879.662659,237.054733
|
||||||
|
C882.867920,237.130127 884.160278,236.123077 884.056946,232.785156
|
||||||
|
C883.861084,226.459808 883.816650,220.116776 884.069458,213.795502
|
||||||
|
C884.218079,210.080276 882.991699,208.799484 879.237488,208.927612
|
||||||
|
C871.960205,209.175949 864.668457,209.000229 856.998779,209.000229
|
||||||
|
C856.998779,201.147369 856.873962,193.690231 857.055969,186.240585
|
||||||
|
C857.136780,182.930405 855.914551,181.885361 852.685303,181.946136
|
||||||
|
C844.024353,182.109100 835.353577,182.169205 826.696411,181.924866
|
||||||
|
C822.862244,181.816650 821.815918,183.225128 821.930847,186.859314
|
||||||
|
C822.160706,194.129303 821.998962,201.411682 821.998962,209.080811
|
||||||
|
C816.456604,209.080811 811.373901,209.080811 806.243713,209.080811
|
||||||
|
C806.243713,218.554535 806.243713,227.624756 806.243713,237.093979
|
||||||
|
C811.555908,237.093979 816.638550,237.093979 821.998718,237.093979
|
||||||
|
C821.998718,250.623886 821.980408,263.753937 822.006348,276.883942
|
||||||
|
C822.019836,283.721100 822.417053,290.286316 824.710083,297.068939
|
||||||
|
C828.765015,309.063416 836.881409,316.429565 848.423889,318.704926
|
||||||
|
C860.348633,321.055634 872.710938,322.043884 884.697510,317.104858
|
||||||
|
C890.942017,314.531799 892.264709,312.832123 889.969299,305.820374
|
||||||
|
M646.022705,286.253082
|
||||||
|
C645.348145,283.837036 644.246521,281.448303 644.089783,278.999115
|
||||||
|
C643.781677,274.186981 643.998718,269.341217 643.998718,264.509369
|
||||||
|
C643.998657,255.412064 643.998718,246.314774 643.998718,236.829391
|
||||||
|
C653.304871,236.829391 662.048340,236.829391 670.711182,236.829391
|
||||||
|
C670.711182,227.356247 670.711182,218.285568 670.711182,208.819717
|
||||||
|
C661.684021,208.819717 652.940796,208.819717 643.998779,208.819717
|
||||||
|
C643.998779,201.109039 643.842957,193.794189 644.065674,186.490891
|
||||||
|
C644.174133,182.933350 642.891846,181.856796 639.434570,181.938187
|
||||||
|
C631.108459,182.134247 622.772461,182.111343 614.444641,181.955643
|
||||||
|
C610.258484,181.877396 608.688538,183.381592 608.903992,187.731018
|
||||||
|
C609.253906,194.791382 608.998413,201.881760 608.998413,209.163147
|
||||||
|
C603.306885,209.163147 598.351929,209.163147 593.202759,209.163147
|
||||||
|
C593.202759,218.460022 593.202759,227.529846 593.202759,237.001740
|
||||||
|
C598.459839,237.001740 603.542419,237.001740 608.998291,237.001740
|
||||||
|
C608.998291,249.851242 609.261414,262.310272 608.913330,274.752197
|
||||||
|
C608.644531,284.362213 609.916626,293.511353 614.017456,302.252594
|
||||||
|
C618.360107,311.509308 626.071716,316.807739 635.560608,318.786652
|
||||||
|
C642.401489,320.213318 649.687622,320.237030 656.712585,319.823730
|
||||||
|
C662.569946,319.479126 668.368835,317.724457 674.131897,316.337769
|
||||||
|
C678.027527,315.400391 678.862000,312.112457 677.869019,308.935822
|
||||||
|
C675.815918,302.368164 673.282166,295.943329 670.707214,289.556030
|
||||||
|
C670.398743,288.790710 668.456482,288.045837 667.535828,288.289673
|
||||||
|
C665.143677,288.923157 662.869873,290.049774 660.600708,291.092468
|
||||||
|
C654.228577,294.020691 649.879395,292.773499 646.022705,286.253082
|
||||||
|
M942.006714,231.500061
|
||||||
|
C942.006714,225.169708 941.978516,218.839203 942.016663,212.509079
|
||||||
|
C942.042236,208.266632 940.608398,205.807190 935.758789,205.940140
|
||||||
|
C927.435608,206.168289 919.098877,206.133057 910.773499,205.949417
|
||||||
|
C906.476990,205.854630 904.940247,207.596161 904.951782,211.831055
|
||||||
|
C905.044800,245.814789 905.077942,279.799225 904.912476,313.782379
|
||||||
|
C904.891235,318.144440 906.776978,319.066925 910.456299,319.027740
|
||||||
|
C918.784729,318.938934 927.114807,319.006897 935.444214,318.997711
|
||||||
|
C941.540771,318.990997 942.002625,318.536865 942.004028,312.462311
|
||||||
|
C942.010315,285.808228 942.006714,259.154114 942.006714,231.500061
|
||||||
|
M931.917603,157.015991
|
||||||
|
C926.253113,157.030777 919.942444,155.432159 915.055786,157.389175
|
||||||
|
C904.182983,161.743515 898.360107,171.227386 903.963867,184.211945
|
||||||
|
C909.002197,195.886246 924.573608,197.451218 933.144470,193.210266
|
||||||
|
C937.956421,190.829224 941.406616,187.386108 943.475098,181.586349
|
||||||
|
C946.463623,173.206970 943.402832,162.441132 935.160034,159.024567
|
||||||
|
C934.268433,158.654968 933.552551,157.861313 931.917603,157.015991
|
||||||
|
z"/>
|
||||||
|
<path class="no-fill" fill="#e4e9ed" opacity="1.000000" stroke="none"
|
||||||
|
d="
|
||||||
|
M167.876633,140.981537
|
||||||
|
C174.936737,137.980591 181.399002,134.338303 188.322586,132.166962
|
||||||
|
C198.561508,128.955856 209.026443,126.203468 219.588638,124.371231
|
||||||
|
C227.486328,123.001205 235.691360,123.427856 243.756104,122.991013
|
||||||
|
C262.051788,122.000023 280.149902,123.860130 297.560303,129.233841
|
||||||
|
C309.365997,132.877670 320.680145,138.295029 331.920624,143.547440
|
||||||
|
C349.724396,151.866730 365.162262,163.757111 378.362671,178.141830
|
||||||
|
C387.167419,187.736511 395.006927,198.329865 402.395996,209.082657
|
||||||
|
C411.955780,222.994354 418.168976,238.677246 422.852966,254.805374
|
||||||
|
C425.399597,263.574127 427.076324,272.749359 427.823303,281.849792
|
||||||
|
C428.864685,294.536163 429.348846,307.354767 428.777374,320.058563
|
||||||
|
C428.352325,329.508057 426.427979,339.001648 424.158295,348.226318
|
||||||
|
C421.724396,358.118256 418.826904,368.028748 414.814606,377.365112
|
||||||
|
C410.132721,388.259460 404.582367,398.707245 397.565430,408.572968
|
||||||
|
C389.920959,419.321014 381.824799,429.470215 372.157410,438.279358
|
||||||
|
C362.313995,447.248901 352.351593,456.159454 340.151367,462.085205
|
||||||
|
C334.105804,465.021606 328.595734,469.130463 322.432281,471.736694
|
||||||
|
C314.680359,475.014648 306.555847,477.452454 298.500885,479.959625
|
||||||
|
C292.266449,481.900085 285.976227,483.883484 279.562469,484.981415
|
||||||
|
C264.357178,487.584259 249.075256,489.413147 233.589005,487.072449
|
||||||
|
C226.981689,486.073761 220.082153,486.464447 213.671463,484.828522
|
||||||
|
C202.285751,481.923035 190.989990,478.433990 180.000198,474.280029
|
||||||
|
C170.952942,470.860291 161.836838,466.996368 153.771606,461.758270
|
||||||
|
C142.906265,454.701569 132.785294,446.420929 122.778961,438.140961
|
||||||
|
C112.337166,429.500641 103.655174,419.054169 96.392693,407.685608
|
||||||
|
C89.176323,396.389252 81.754852,385.083740 77.949402,371.949371
|
||||||
|
C74.138252,358.795380 68.531563,345.917480 66.672409,332.508087
|
||||||
|
C64.655029,317.957428 65.570129,302.914490 66.145454,288.122711
|
||||||
|
C66.482559,279.455566 68.205719,270.761383 70.081841,262.250488
|
||||||
|
C75.327057,238.455933 85.694534,216.903946 100.004242,197.262222
|
||||||
|
C107.793411,186.570709 116.481079,176.580917 126.590767,168.028687
|
||||||
|
C139.128983,157.422043 152.329453,147.700104 167.876633,140.981537
|
||||||
|
M132.966751,214.354034
|
||||||
|
C124.555054,223.287628 118.893524,233.974274 113.911568,245.001236
|
||||||
|
C103.961014,267.025665 99.775597,290.178680 101.275322,314.314514
|
||||||
|
C101.344681,315.430603 102.444328,317.469421 102.865555,317.419037
|
||||||
|
C105.927773,317.052612 109.150627,316.694000 111.855560,315.375000
|
||||||
|
C112.849022,314.890533 112.908173,311.802826 112.834854,309.924408
|
||||||
|
C112.111908,291.402679 115.583374,273.626099 121.922684,256.299652
|
||||||
|
C123.057983,253.196686 124.701180,251.934250 128.133636,251.974991
|
||||||
|
C143.129929,252.153030 158.130569,252.145660 173.127274,251.985245
|
||||||
|
C176.880829,251.945099 178.162659,253.303375 178.018082,256.944580
|
||||||
|
C177.819901,261.935822 178.115417,266.945953 177.944290,271.939240
|
||||||
|
C177.841385,274.941528 178.841797,276.131317 181.940247,276.017944
|
||||||
|
C187.099396,275.829132 192.273209,276.068695 197.435638,275.931274
|
||||||
|
C200.220673,275.857178 201.326218,276.882599 201.259171,279.699951
|
||||||
|
C201.132324,285.029541 201.049988,290.373322 201.303955,295.694275
|
||||||
|
C201.476990,299.319550 200.004684,300.243896 196.624146,300.170044
|
||||||
|
C188.129105,299.984344 179.618729,300.335754 171.131744,300.015228
|
||||||
|
C166.815002,299.852234 165.805374,301.428619 165.901123,305.456909
|
||||||
|
C166.150558,315.949921 166.251190,326.463776 165.810379,336.944061
|
||||||
|
C165.695541,339.673981 164.002289,342.981995 161.965134,344.873016
|
||||||
|
C153.940643,352.321838 145.350052,359.157410 137.240845,366.519409
|
||||||
|
C130.297775,372.822662 129.367477,372.802704 125.607910,364.281097
|
||||||
|
C124.737373,362.307922 124.079933,360.232574 123.107780,358.314026
|
||||||
|
C121.034584,354.222504 120.734001,350.364960 123.037453,346.102112
|
||||||
|
C125.569832,341.415527 123.708107,335.234375 119.447762,332.180908
|
||||||
|
C114.261009,328.463470 107.819405,329.382233 103.476433,334.458893
|
||||||
|
C99.840965,338.708557 100.381050,345.415680 104.393188,349.854431
|
||||||
|
C106.578735,352.272400 108.955849,354.848663 110.125664,357.798126
|
||||||
|
C116.462189,373.774200 124.735435,388.698853 135.753143,401.781433
|
||||||
|
C148.237762,416.605804 163.224503,428.763458 180.550903,437.644287
|
||||||
|
C204.637253,449.989929 230.180344,455.488586 257.366608,453.940338
|
||||||
|
C277.048920,452.819458 295.621857,448.148193 313.365265,439.728912
|
||||||
|
C328.202942,432.688446 341.472839,423.257477 353.081024,411.834534
|
||||||
|
C360.232697,404.796967 366.481384,396.634552 372.089600,388.275452
|
||||||
|
C387.549530,365.232300 396.454956,339.830261 396.971863,311.879791
|
||||||
|
C397.121918,303.764557 396.494507,295.617767 395.839783,287.516449
|
||||||
|
C395.666595,285.373474 394.066406,283.345825 393.121429,281.265259
|
||||||
|
C389.899841,282.756622 385.302917,280.502197 383.149933,285.226410
|
||||||
|
C382.548767,286.545532 380.513245,288.002289 379.103882,288.035278
|
||||||
|
C368.777191,288.276855 358.440613,288.065491 348.111145,288.237701
|
||||||
|
C344.727600,288.294098 343.822144,286.956360 343.898560,283.812164
|
||||||
|
C344.064514,276.983612 343.757751,270.140808 344.021179,263.318390
|
||||||
|
C344.174805,259.340698 342.748108,258.115997 338.841583,258.175781
|
||||||
|
C326.179230,258.369537 313.487885,257.783051 300.856537,258.438324
|
||||||
|
C294.190521,258.784149 290.467590,256.250427 287.392548,250.890137
|
||||||
|
C285.607635,247.778778 285.449554,245.611679 288.166260,243.024536
|
||||||
|
C293.957214,237.509674 299.682739,231.904694 305.082367,226.013351
|
||||||
|
C306.684814,224.264984 307.870514,221.461853 307.943695,219.101624
|
||||||
|
C308.253418,209.112335 308.035614,199.107651 308.086517,189.108963
|
||||||
|
C308.109802,184.532486 309.500061,183.569366 313.491699,185.827530
|
||||||
|
C318.800049,188.830597 324.001495,192.067581 329.008667,195.549561
|
||||||
|
C343.651642,205.732224 355.517517,218.734985 364.744904,233.829880
|
||||||
|
C369.199524,241.117050 374.787750,248.376083 374.120422,257.985413
|
||||||
|
C373.695007,264.111664 377.886230,269.233765 383.065033,269.929779
|
||||||
|
C389.128632,270.744751 395.040710,267.428040 396.674744,262.294739
|
||||||
|
C398.485931,256.604828 395.861298,250.082947 389.869598,248.144943
|
||||||
|
C384.918579,246.543533 382.739075,243.239304 380.966187,239.016235
|
||||||
|
C380.262634,237.340271 379.459229,235.689972 378.537781,234.124207
|
||||||
|
C369.733398,219.163620 359.173676,205.763748 346.050812,194.168015
|
||||||
|
C334.437012,183.905731 321.714966,175.524963 307.610474,169.672470
|
||||||
|
C285.038452,160.306488 261.533936,155.418793 236.795868,158.114029
|
||||||
|
C221.548752,159.775223 206.898743,163.035767 192.589386,168.807236
|
||||||
|
C170.275879,177.807083 152.075470,192.121353 136.079208,209.652496
|
||||||
|
C134.988205,210.848221 134.302048,212.413361 132.966751,214.354034
|
||||||
|
z"/>
|
||||||
|
<path class="no-fill" fill="#a2b2c1" opacity="1.000000" stroke="none"
|
||||||
|
d="
|
||||||
|
M588.000854,276.010529
|
||||||
|
C587.657349,294.079529 578.978088,306.156097 563.589294,314.051422
|
||||||
|
C557.043640,317.409698 550.034912,318.567749 543.059509,320.396271
|
||||||
|
C534.607849,322.611816 526.356934,322.109497 518.145081,321.735718
|
||||||
|
C510.581085,321.391418 503.096130,318.931183 495.619141,317.216370
|
||||||
|
C491.905396,316.364624 488.164978,315.391388 484.655548,313.942780
|
||||||
|
C479.466431,311.800751 474.204224,309.613586 469.474884,306.645996
|
||||||
|
C465.233276,303.984406 468.112793,299.701477 469.251984,296.686707
|
||||||
|
C471.240784,291.423462 474.549225,286.675537 476.920074,281.534302
|
||||||
|
C478.573273,277.949280 481.500427,276.800171 484.575043,279.258331
|
||||||
|
C490.249908,283.795319 497.129425,285.543030 503.700928,288.208069
|
||||||
|
C514.014709,292.390778 524.502258,290.541504 534.922668,290.938019
|
||||||
|
C544.707581,291.310364 549.454102,286.638275 552.578552,279.262970
|
||||||
|
C553.331726,277.485077 550.855347,273.172180 548.710022,271.589386
|
||||||
|
C544.889038,268.770264 540.357971,266.623077 535.815613,265.138000
|
||||||
|
C528.394958,262.711884 520.827393,260.356781 513.137451,259.230347
|
||||||
|
C503.889832,257.875763 495.561554,254.529800 487.696991,249.933990
|
||||||
|
C478.552704,244.590332 471.980652,237.202454 470.944489,225.973831
|
||||||
|
C470.636566,222.636673 468.578278,219.130356 469.218536,216.102615
|
||||||
|
C470.727905,208.965134 472.373993,201.520096 475.819519,195.212646
|
||||||
|
C480.246643,187.108170 487.796967,181.770569 496.440857,177.917358
|
||||||
|
C512.011536,170.976379 528.430420,171.469513 544.735779,172.240433
|
||||||
|
C551.789612,172.573914 558.794373,175.265778 565.679688,177.353638
|
||||||
|
C569.874329,178.625580 573.797913,180.790466 577.844971,182.550110
|
||||||
|
C582.892395,184.744690 582.804077,185.099792 580.601257,189.963547
|
||||||
|
C577.827271,196.088501 575.379395,202.375687 573.098389,208.703751
|
||||||
|
C571.808105,212.283157 571.240906,214.109848 566.748657,211.198135
|
||||||
|
C561.024353,207.487778 554.741760,204.414185 547.489624,203.877670
|
||||||
|
C541.093628,203.404480 534.762268,201.177933 528.410767,201.213486
|
||||||
|
C520.974243,201.255127 513.577026,202.919907 508.270813,209.178177
|
||||||
|
C504.070007,214.132782 505.534332,220.874710 511.234009,224.041794
|
||||||
|
C516.920837,227.201736 522.822632,228.970016 529.262634,230.260956
|
||||||
|
C540.317566,232.476944 551.286987,235.650284 561.858337,239.587006
|
||||||
|
C570.934082,242.966827 578.941101,248.514008 583.921143,257.417480
|
||||||
|
C587.082581,263.069641 588.470947,269.078613 588.000854,276.010529
|
||||||
|
z"/>
|
||||||
|
<path class="no-fill" fill="#68C4E2" opacity="1.000000" stroke="none"
|
||||||
|
d="
|
||||||
|
M695.998657,440.939362
|
||||||
|
C695.997070,424.193878 695.997070,407.940155 695.997070,390.418884
|
||||||
|
C692.563293,395.680420 689.675842,399.837463 687.064148,404.161102
|
||||||
|
C681.281494,413.734589 674.858215,423.031982 670.194763,433.133759
|
||||||
|
C666.755981,440.582794 661.930969,441.457672 654.937317,441.244873
|
||||||
|
C651.432251,441.138275 649.505859,439.545929 648.229004,437.419861
|
||||||
|
C640.954224,425.306458 634.063843,412.963043 626.901367,400.780945
|
||||||
|
C625.027832,397.594269 622.650879,394.703552 620.181335,391.220276
|
||||||
|
C620.181335,411.870605 620.181335,432.068787 620.181335,452.980591
|
||||||
|
C611.129150,452.980591 602.374634,453.113800 593.637390,452.785950
|
||||||
|
C592.706604,452.751038 591.155945,450.038422 591.118286,448.537262
|
||||||
|
C590.884399,439.211823 591.000305,429.877625 591.000305,420.546326
|
||||||
|
C591.000244,394.218719 591.094299,367.890472 590.907288,341.564209
|
||||||
|
C590.876221,337.190399 592.076294,335.566528 596.531311,335.921661
|
||||||
|
C601.001953,336.278046 605.616577,336.576233 610.000183,335.865082
|
||||||
|
C616.587097,334.796417 619.274841,338.667267 622.033630,343.386292
|
||||||
|
C626.762939,351.476044 631.848633,359.356506 636.662170,367.398254
|
||||||
|
C641.184082,374.953003 645.542114,382.605865 649.982727,390.209412
|
||||||
|
C652.672058,394.814240 655.381348,399.407440 658.513550,404.741425
|
||||||
|
C663.601990,395.987427 668.257690,387.905548 672.986633,379.866791
|
||||||
|
C676.318481,374.202972 679.739929,368.591797 683.139099,362.967804
|
||||||
|
C686.733948,357.020111 690.400452,351.114929 693.930359,345.129150
|
||||||
|
C695.260071,342.874359 695.992859,340.208679 697.579041,338.186218
|
||||||
|
C698.513123,336.995209 700.564941,336.165588 702.154175,336.096405
|
||||||
|
C707.808838,335.850311 713.499512,336.283203 719.140381,335.911102
|
||||||
|
C723.716858,335.609222 725.149841,336.994293 725.109741,341.734375
|
||||||
|
C724.882812,368.559967 725.000061,395.388428 724.999939,422.215912
|
||||||
|
C724.999878,431.047333 724.895264,439.880585 725.053284,448.709167
|
||||||
|
C725.111755,451.975342 723.957947,453.124420 720.700012,453.053192
|
||||||
|
C713.048584,452.885834 705.390991,452.999634 696.848206,452.999634
|
||||||
|
C696.560486,449.074463 696.280396,445.252808 695.998657,440.939362
|
||||||
|
z"/>
|
||||||
|
<path class="no-fill" fill="#a2b2c1" opacity="1.000000" stroke="none"
|
||||||
|
d="
|
||||||
|
M792.999939,253.054291
|
||||||
|
C793.000000,273.705688 792.897217,293.863983 793.086670,314.019501
|
||||||
|
C793.124573,318.054779 791.848022,319.191132 787.928223,319.081451
|
||||||
|
C778.798218,318.825989 769.656128,319.000000 760.196777,319.000000
|
||||||
|
C760.196777,315.995300 760.196777,313.246552 760.196777,309.678650
|
||||||
|
C758.034058,311.277039 756.372742,312.318695 754.930359,313.605682
|
||||||
|
C750.535645,317.526825 745.134827,319.635040 739.566956,319.825745
|
||||||
|
C730.522278,320.135529 721.241699,320.381866 712.426147,318.718323
|
||||||
|
C702.732483,316.889069 694.853394,311.097412 689.989441,301.934509
|
||||||
|
C685.205444,292.922241 685.921936,283.310516 688.254883,274.199524
|
||||||
|
C690.386353,265.875183 696.736755,260.531677 704.910461,256.833282
|
||||||
|
C716.742554,251.479584 729.017151,251.950424 741.387939,251.996552
|
||||||
|
C746.862244,252.016968 752.336609,252.000000 757.810120,252.000000
|
||||||
|
C757.726318,243.497620 750.969604,235.516434 743.187317,235.081741
|
||||||
|
C736.218506,234.692459 729.018188,234.003708 722.278870,235.305313
|
||||||
|
C716.502258,236.421005 710.996033,239.775909 705.837402,242.909592
|
||||||
|
C703.118652,244.561127 701.547974,243.872879 700.550293,241.932648
|
||||||
|
C696.779785,234.600174 693.342529,227.096298 689.690674,219.468826
|
||||||
|
C698.457581,213.445953 707.546326,209.881653 717.654114,207.677628
|
||||||
|
C725.259033,206.019333 732.836365,205.162659 740.381958,205.198578
|
||||||
|
C752.314941,205.255402 763.999512,207.501312 774.407898,214.031769
|
||||||
|
C780.631165,217.936340 785.148071,223.280777 787.981323,230.056213
|
||||||
|
C790.993469,237.259460 792.798584,244.730682 792.999939,253.054291
|
||||||
|
M744.517761,294.070740
|
||||||
|
C753.547119,293.064148 759.386597,284.034485 757.339539,274.000244
|
||||||
|
C748.755127,274.000244 740.127502,273.832520 731.510437,274.062531
|
||||||
|
C726.265381,274.202545 722.632568,277.217896 720.541992,281.963623
|
||||||
|
C718.680908,286.188141 721.129089,289.331970 723.739929,292.069397
|
||||||
|
C724.928589,293.315674 727.110779,293.560425 728.733337,294.456757
|
||||||
|
C733.791626,297.251160 738.883972,296.530243 744.517761,294.070740
|
||||||
|
z"/>
|
||||||
|
<path class="no-fill" fill="#a2b2c1" opacity="1.000000" stroke="none"
|
||||||
|
d="
|
||||||
|
M1046.243652,316.315552
|
||||||
|
C1034.517456,321.704590 1022.310181,320.702789 1010.547485,319.743103
|
||||||
|
C992.491150,318.269867 978.148560,309.759735 967.795166,294.132965
|
||||||
|
C959.889343,282.200500 957.983032,269.354370 959.139709,255.881668
|
||||||
|
C960.529236,239.698441 968.211548,226.620941 981.560242,217.161316
|
||||||
|
C987.931396,212.646393 995.051086,209.996262 1002.616760,207.716599
|
||||||
|
C1013.473145,204.445419 1024.342285,204.447144 1034.949829,206.287491
|
||||||
|
C1046.088745,208.220032 1056.477905,213.075745 1064.030151,222.280106
|
||||||
|
C1066.043091,224.733246 1068.438110,227.016327 1069.843628,229.790024
|
||||||
|
C1071.855103,233.759644 1071.676880,236.634918 1066.201172,238.784027
|
||||||
|
C1059.053589,241.589417 1052.616943,246.206375 1046.974487,249.417694
|
||||||
|
C1040.494507,244.483963 1035.184326,238.966690 1028.704956,236.024017
|
||||||
|
C1024.356079,234.048935 1018.301819,235.314667 1013.106934,235.935883
|
||||||
|
C1010.544128,236.242340 1008.222839,238.419022 1005.751953,239.669769
|
||||||
|
C996.428223,244.389465 992.803162,259.773285 994.528748,268.319214
|
||||||
|
C995.894592,275.084015 998.357483,280.961029 1003.755798,285.168121
|
||||||
|
C1006.783020,287.527374 1010.265442,289.833099 1013.902893,290.780396
|
||||||
|
C1025.353760,293.762543 1035.458618,289.379486 1042.305908,279.227448
|
||||||
|
C1044.405273,276.114838 1048.113647,276.361023 1052.961548,279.498047
|
||||||
|
C1057.595459,282.496582 1062.379761,285.278290 1067.210449,287.951721
|
||||||
|
C1070.295654,289.659180 1072.388550,291.564362 1070.260986,295.254120
|
||||||
|
C1065.500610,303.509552 1059.250854,310.230896 1050.394165,314.210327
|
||||||
|
C1049.099121,314.792145 1047.831421,315.434387 1046.243652,316.315552
|
||||||
|
z"/>
|
||||||
|
<path class="no-fill" fill="#68C4E2" opacity="1.000000" stroke="none"
|
||||||
|
d="
|
||||||
|
M804.927979,334.000214
|
||||||
|
C814.492676,335.920166 823.672485,337.828247 831.472961,343.130066
|
||||||
|
C832.681274,343.951324 832.525452,348.103210 831.745850,350.261658
|
||||||
|
C829.878113,355.432190 827.263306,360.332886 824.403870,366.525299
|
||||||
|
C822.221375,365.616730 819.390442,364.181274 816.402039,363.251526
|
||||||
|
C811.309814,361.667236 806.139099,360.318970 800.961670,359.030975
|
||||||
|
C797.832214,358.252411 794.154114,356.472412 791.551575,357.419800
|
||||||
|
C785.227112,359.722198 777.424255,358.060760 772.511292,364.197937
|
||||||
|
C770.781860,366.358246 772.080627,374.070679 774.924011,375.268433
|
||||||
|
C780.973267,377.816742 787.127747,380.369751 793.486755,381.873260
|
||||||
|
C805.513794,384.716919 817.633484,387.255615 827.862793,394.591003
|
||||||
|
C830.819336,396.711060 832.971619,400.213806 834.914734,403.431641
|
||||||
|
C838.969971,410.146881 839.369019,418.060669 837.684631,425.046478
|
||||||
|
C834.913574,436.539001 827.710022,445.273102 816.288879,450.099426
|
||||||
|
C810.783691,452.425812 805.345581,454.013611 799.306335,454.120209
|
||||||
|
C794.788940,454.199982 790.166321,456.343231 785.806763,455.807800
|
||||||
|
C773.802917,454.333435 761.569458,453.422913 750.448120,447.859192
|
||||||
|
C747.826538,446.547668 744.736877,445.711487 742.739197,443.759521
|
||||||
|
C741.152649,442.209290 739.647400,438.822418 740.299988,437.066101
|
||||||
|
C742.184875,431.992889 745.225586,427.355530 747.695374,422.487671
|
||||||
|
C748.177673,421.537262 748.133728,420.319946 748.489929,418.359131
|
||||||
|
C751.749939,419.773193 754.632202,421.068268 757.549622,422.278534
|
||||||
|
C762.220398,424.216095 766.798767,426.497803 771.630188,427.893311
|
||||||
|
C776.747437,429.371368 782.094482,430.642273 787.377747,430.802948
|
||||||
|
C793.524597,430.989838 799.796265,429.859161 805.276245,426.796356
|
||||||
|
C809.622559,424.367157 809.193115,415.892761 804.474121,413.990265
|
||||||
|
C797.543823,411.196228 790.264221,409.263855 783.120667,407.004578
|
||||||
|
C770.932312,403.149811 757.873718,401.305908 748.536316,391.117950
|
||||||
|
C741.047913,382.947540 740.822815,373.036865 742.519897,363.267914
|
||||||
|
C744.540161,351.638824 751.740051,343.697601 762.796753,338.853973
|
||||||
|
C774.828369,333.583282 787.066406,331.765137 799.973450,333.913513
|
||||||
|
C801.434692,334.156738 802.965515,333.981384 804.927979,334.000214
|
||||||
|
z"/>
|
||||||
|
<path class="no-fill" fill="#68C4E2" opacity="1.000000" stroke="none"
|
||||||
|
d="
|
||||||
|
M480.253296,435.772827
|
||||||
|
C477.327484,432.236023 474.198761,429.246307 472.099915,425.654755
|
||||||
|
C463.150543,410.340576 463.204559,393.503784 466.339630,376.988068
|
||||||
|
C468.155609,367.421478 473.666687,358.645966 480.952240,351.634033
|
||||||
|
C488.948853,343.937866 498.175751,338.790771 509.130951,335.702026
|
||||||
|
C520.449585,332.510742 531.668335,332.173462 542.705505,334.261078
|
||||||
|
C555.349243,336.652588 566.942017,342.267151 575.634766,352.396637
|
||||||
|
C577.226685,354.251709 577.655823,356.283630 575.235596,358.361023
|
||||||
|
C570.447327,362.470947 566.120605,367.145233 561.139343,370.984619
|
||||||
|
C559.922241,371.922729 556.540527,371.151550 554.797607,370.099823
|
||||||
|
C549.829224,367.101868 545.604614,361.996277 540.325623,360.599670
|
||||||
|
C532.985596,358.657959 525.322449,358.202332 517.267944,361.448273
|
||||||
|
C509.455353,364.596741 503.598267,368.917725 499.587128,375.845062
|
||||||
|
C497.496246,379.456116 496.053070,383.598816 495.140594,387.685211
|
||||||
|
C494.432220,390.857544 494.825958,394.325470 495.030884,397.643433
|
||||||
|
C495.795105,410.015167 500.984863,419.800568 512.686218,424.889893
|
||||||
|
C518.116699,427.251831 524.213440,429.995819 529.812073,429.622986
|
||||||
|
C538.910950,429.017029 547.934998,426.302734 554.267456,418.467712
|
||||||
|
C556.325073,415.921875 558.704285,414.762360 561.775391,418.098114
|
||||||
|
C565.945496,422.627563 570.705750,426.620880 575.291260,430.757324
|
||||||
|
C577.293945,432.563965 577.560913,434.050385 575.500916,436.103180
|
||||||
|
C568.895874,442.685303 562.003906,448.784821 552.596375,450.990875
|
||||||
|
C547.873901,452.098236 543.125610,453.125061 538.350403,453.969940
|
||||||
|
C533.705627,454.791779 528.825073,456.501923 524.372314,455.791107
|
||||||
|
C508.078308,453.189972 491.791809,450.022217 480.253296,435.772827
|
||||||
|
z"/>
|
||||||
|
<path class="no-fill" fill="#a2b2c1" opacity="1.000000" stroke="none"
|
||||||
|
d="
|
||||||
|
M889.985352,306.242157
|
||||||
|
C892.264709,312.832123 890.942017,314.531799 884.697510,317.104858
|
||||||
|
C872.710938,322.043884 860.348633,321.055634 848.423889,318.704926
|
||||||
|
C836.881409,316.429565 828.765015,309.063416 824.710083,297.068939
|
||||||
|
C822.417053,290.286316 822.019836,283.721100 822.006348,276.883942
|
||||||
|
C821.980408,263.753937 821.998718,250.623886 821.998718,237.093979
|
||||||
|
C816.638550,237.093979 811.555908,237.093979 806.243713,237.093979
|
||||||
|
C806.243713,227.624756 806.243713,218.554535 806.243713,209.080811
|
||||||
|
C811.373901,209.080811 816.456604,209.080811 821.998962,209.080811
|
||||||
|
C821.998962,201.411682 822.160706,194.129303 821.930847,186.859314
|
||||||
|
C821.815918,183.225128 822.862244,181.816650 826.696411,181.924866
|
||||||
|
C835.353577,182.169205 844.024353,182.109100 852.685303,181.946136
|
||||||
|
C855.914551,181.885361 857.136780,182.930405 857.055969,186.240585
|
||||||
|
C856.873962,193.690231 856.998779,201.147369 856.998779,209.000229
|
||||||
|
C864.668457,209.000229 871.960205,209.175949 879.237488,208.927612
|
||||||
|
C882.991699,208.799484 884.218079,210.080276 884.069458,213.795502
|
||||||
|
C883.816650,220.116776 883.861084,226.459808 884.056946,232.785156
|
||||||
|
C884.160278,236.123077 882.867920,237.130127 879.662659,237.054733
|
||||||
|
C872.341980,236.882507 865.014526,237.000305 856.998718,237.000305
|
||||||
|
C856.998718,241.339554 856.998657,245.589661 856.998779,249.839767
|
||||||
|
C856.998962,260.003326 856.955994,270.167114 857.014038,280.330353
|
||||||
|
C857.055176,287.527557 862.932007,293.501770 869.907532,292.861359
|
||||||
|
C872.950439,292.582031 876.299194,291.382141 878.717957,289.553741
|
||||||
|
C882.324097,286.827911 883.163635,287.896027 884.311890,291.602509
|
||||||
|
C885.816650,296.459808 888.049561,301.091583 889.985352,306.242157
|
||||||
|
z"/>
|
||||||
|
<path class="no-fill" fill="#a2b2c1" opacity="1.000000" stroke="none"
|
||||||
|
d="
|
||||||
|
M646.226196,286.604004
|
||||||
|
C649.879395,292.773499 654.228577,294.020691 660.600708,291.092468
|
||||||
|
C662.869873,290.049774 665.143677,288.923157 667.535828,288.289673
|
||||||
|
C668.456482,288.045837 670.398743,288.790710 670.707214,289.556030
|
||||||
|
C673.282166,295.943329 675.815918,302.368164 677.869019,308.935822
|
||||||
|
C678.862000,312.112457 678.027527,315.400391 674.131897,316.337769
|
||||||
|
C668.368835,317.724457 662.569946,319.479126 656.712585,319.823730
|
||||||
|
C649.687622,320.237030 642.401489,320.213318 635.560608,318.786652
|
||||||
|
C626.071716,316.807739 618.360107,311.509308 614.017456,302.252594
|
||||||
|
C609.916626,293.511353 608.644531,284.362213 608.913330,274.752197
|
||||||
|
C609.261414,262.310272 608.998291,249.851242 608.998291,237.001740
|
||||||
|
C603.542419,237.001740 598.459839,237.001740 593.202759,237.001740
|
||||||
|
C593.202759,227.529846 593.202759,218.460022 593.202759,209.163147
|
||||||
|
C598.351929,209.163147 603.306885,209.163147 608.998413,209.163147
|
||||||
|
C608.998413,201.881760 609.253906,194.791382 608.903992,187.731018
|
||||||
|
C608.688538,183.381592 610.258484,181.877396 614.444641,181.955643
|
||||||
|
C622.772461,182.111343 631.108459,182.134247 639.434570,181.938187
|
||||||
|
C642.891846,181.856796 644.174133,182.933350 644.065674,186.490891
|
||||||
|
C643.842957,193.794189 643.998779,201.109039 643.998779,208.819717
|
||||||
|
C652.940796,208.819717 661.684021,208.819717 670.711182,208.819717
|
||||||
|
C670.711182,218.285568 670.711182,227.356247 670.711182,236.829391
|
||||||
|
C662.048340,236.829391 653.304871,236.829391 643.998718,236.829391
|
||||||
|
C643.998718,246.314774 643.998657,255.412064 643.998718,264.509369
|
||||||
|
C643.998718,269.341217 643.781677,274.186981 644.089783,278.999115
|
||||||
|
C644.246521,281.448303 645.348145,283.837036 646.226196,286.604004
|
||||||
|
z"/>
|
||||||
|
<path class="no-fill" fill="#a2b2c1" opacity="1.000000" stroke="none"
|
||||||
|
d="
|
||||||
|
M942.006714,232.000046
|
||||||
|
C942.006714,259.154114 942.010315,285.808228 942.004028,312.462311
|
||||||
|
C942.002625,318.536865 941.540771,318.990997 935.444214,318.997711
|
||||||
|
C927.114807,319.006897 918.784729,318.938934 910.456299,319.027740
|
||||||
|
C906.776978,319.066925 904.891235,318.144440 904.912476,313.782379
|
||||||
|
C905.077942,279.799225 905.044800,245.814789 904.951782,211.831055
|
||||||
|
C904.940247,207.596161 906.476990,205.854630 910.773499,205.949417
|
||||||
|
C919.098877,206.133057 927.435608,206.168289 935.758789,205.940140
|
||||||
|
C940.608398,205.807190 942.042236,208.266632 942.016663,212.509079
|
||||||
|
C941.978516,218.839203 942.006714,225.169708 942.006714,232.000046
|
||||||
|
z"/>
|
||||||
|
<path class="no-fill" fill="#a2b2c1" opacity="1.000000" stroke="none"
|
||||||
|
d="
|
||||||
|
M932.336365,157.140182
|
||||||
|
C933.552551,157.861313 934.268433,158.654968 935.160034,159.024567
|
||||||
|
C943.402832,162.441132 946.463623,173.206970 943.475098,181.586349
|
||||||
|
C941.406616,187.386108 937.956421,190.829224 933.144470,193.210266
|
||||||
|
C924.573608,197.451218 909.002197,195.886246 903.963867,184.211945
|
||||||
|
C898.360107,171.227386 904.182983,161.743515 915.055786,157.389175
|
||||||
|
C919.942444,155.432159 926.253113,157.030777 932.336365,157.140182
|
||||||
|
z"/>
|
||||||
|
<path class="no-fill" fill="#6EC5E3" opacity="1.000000" stroke="none"
|
||||||
|
d="
|
||||||
|
M133.197174,214.080368
|
||||||
|
C134.302048,212.413361 134.988205,210.848221 136.079208,209.652496
|
||||||
|
C152.075470,192.121353 170.275879,177.807083 192.589386,168.807236
|
||||||
|
C206.898743,163.035767 221.548752,159.775223 236.795868,158.114029
|
||||||
|
C261.533936,155.418793 285.038452,160.306488 307.610474,169.672470
|
||||||
|
C321.714966,175.524963 334.437012,183.905731 346.050812,194.168015
|
||||||
|
C359.173676,205.763748 369.733398,219.163620 378.537781,234.124207
|
||||||
|
C379.459229,235.689972 380.262634,237.340271 380.966187,239.016235
|
||||||
|
C382.739075,243.239304 384.918579,246.543533 389.869598,248.144943
|
||||||
|
C395.861298,250.082947 398.485931,256.604828 396.674744,262.294739
|
||||||
|
C395.040710,267.428040 389.128632,270.744751 383.065033,269.929779
|
||||||
|
C377.886230,269.233765 373.695007,264.111664 374.120422,257.985413
|
||||||
|
C374.787750,248.376083 369.199524,241.117050 364.744904,233.829880
|
||||||
|
C355.517517,218.734985 343.651642,205.732224 329.008667,195.549561
|
||||||
|
C324.001495,192.067581 318.800049,188.830597 313.491699,185.827530
|
||||||
|
C309.500061,183.569366 308.109802,184.532486 308.086517,189.108963
|
||||||
|
C308.035614,199.107651 308.253418,209.112335 307.943695,219.101624
|
||||||
|
C307.870514,221.461853 306.684814,224.264984 305.082367,226.013351
|
||||||
|
C299.682739,231.904694 293.957214,237.509674 288.166260,243.024536
|
||||||
|
C285.449554,245.611679 285.607635,247.778778 287.392548,250.890137
|
||||||
|
C290.467590,256.250427 294.190521,258.784149 300.856537,258.438324
|
||||||
|
C313.487885,257.783051 326.179230,258.369537 338.841583,258.175781
|
||||||
|
C342.748108,258.115997 344.174805,259.340698 344.021179,263.318390
|
||||||
|
C343.757751,270.140808 344.064514,276.983612 343.898560,283.812164
|
||||||
|
C343.822144,286.956360 344.727600,288.294098 348.111145,288.237701
|
||||||
|
C358.440613,288.065491 368.777191,288.276855 379.103882,288.035278
|
||||||
|
C380.513245,288.002289 382.548767,286.545532 383.149933,285.226410
|
||||||
|
C385.302917,280.502197 389.899841,282.756622 393.121460,281.265259
|
||||||
|
C394.066406,283.345825 395.666595,285.373474 395.839783,287.516449
|
||||||
|
C396.494507,295.617767 397.121918,303.764557 396.971863,311.879791
|
||||||
|
C396.454956,339.830261 387.549530,365.232300 372.089600,388.275452
|
||||||
|
C366.481384,396.634552 360.232697,404.796967 353.081024,411.834534
|
||||||
|
C341.472839,423.257477 328.202942,432.688446 313.365265,439.728912
|
||||||
|
C295.621857,448.148193 277.048920,452.819458 257.366608,453.940338
|
||||||
|
C230.180344,455.488586 204.637253,449.989929 180.550903,437.644287
|
||||||
|
C163.224503,428.763458 148.237762,416.605804 135.753143,401.781433
|
||||||
|
C124.735435,388.698853 116.462189,373.774200 110.125664,357.798126
|
||||||
|
C108.955849,354.848663 106.578735,352.272400 104.393188,349.854431
|
||||||
|
C100.381050,345.415680 99.840965,338.708557 103.476433,334.458893
|
||||||
|
C107.819405,329.382233 114.261009,328.463470 119.447762,332.180908
|
||||||
|
C123.708107,335.234375 125.569832,341.415527 123.037453,346.102112
|
||||||
|
C120.734001,350.364960 121.034584,354.222504 123.107780,358.314026
|
||||||
|
C124.079933,360.232574 124.737373,362.307922 125.607910,364.281097
|
||||||
|
C129.367477,372.802704 130.297775,372.822662 137.240845,366.519409
|
||||||
|
C145.350052,359.157410 153.940643,352.321838 161.965134,344.873016
|
||||||
|
C164.002289,342.981995 165.695541,339.673981 165.810379,336.944061
|
||||||
|
C166.251190,326.463776 166.150558,315.949921 165.901123,305.456909
|
||||||
|
C165.805374,301.428619 166.815002,299.852234 171.131744,300.015228
|
||||||
|
C179.618729,300.335754 188.129105,299.984344 196.624146,300.170044
|
||||||
|
C200.004684,300.243896 201.476990,299.319550 201.303955,295.694275
|
||||||
|
C201.049988,290.373322 201.132324,285.029541 201.259171,279.699951
|
||||||
|
C201.326218,276.882599 200.220673,275.857178 197.435638,275.931274
|
||||||
|
C192.273209,276.068695 187.099396,275.829132 181.940247,276.017944
|
||||||
|
C178.841797,276.131317 177.841385,274.941528 177.944290,271.939240
|
||||||
|
C178.115417,266.945953 177.819901,261.935822 178.018082,256.944580
|
||||||
|
C178.162659,253.303375 176.880829,251.945099 173.127274,251.985245
|
||||||
|
C158.130569,252.145660 143.129929,252.153030 128.133636,251.974991
|
||||||
|
C124.701180,251.934250 123.057983,253.196686 121.922684,256.299652
|
||||||
|
C115.583374,273.626099 112.111908,291.402679 112.834854,309.924408
|
||||||
|
C112.908173,311.802826 112.849022,314.890533 111.855560,315.375000
|
||||||
|
C109.150627,316.694000 105.927773,317.052612 102.865555,317.419037
|
||||||
|
C102.444328,317.469421 101.344681,315.430603 101.275322,314.314514
|
||||||
|
C99.775597,290.178680 103.961014,267.025665 113.911568,245.001236
|
||||||
|
C118.893524,233.974274 124.555054,223.287628 133.197174,214.080368
|
||||||
|
M274.468506,440.162323
|
||||||
|
C276.895966,439.649353 279.358032,439.261932 281.745422,438.603668
|
||||||
|
C302.473633,432.888306 321.399200,423.894073 337.661896,409.407410
|
||||||
|
C341.795715,405.725067 341.099976,404.116913 337.709656,401.169861
|
||||||
|
C328.932892,393.540649 320.201111,385.854614 311.618439,378.008453
|
||||||
|
C301.925537,369.147339 304.823242,367.246796 293.226166,379.492371
|
||||||
|
C291.539978,381.272888 288.702576,382.743774 286.296600,382.912292
|
||||||
|
C279.663574,383.376953 272.975677,383.151093 266.311798,383.047882
|
||||||
|
C262.160400,382.983582 260.570435,384.773285 261.144836,388.894226
|
||||||
|
C261.885437,394.207397 261.131378,395.024628 255.780792,395.036896
|
||||||
|
C242.116608,395.068176 228.452301,395.045563 214.788040,395.042053
|
||||||
|
C201.322189,395.038605 201.409409,395.035522 201.142395,381.686310
|
||||||
|
C201.096054,379.369720 200.654022,376.431122 199.211716,374.879639
|
||||||
|
C192.408722,367.561646 185.297485,360.516357 178.016281,353.671570
|
||||||
|
C176.908386,352.630096 173.586334,352.240356 172.549179,353.089386
|
||||||
|
C161.500671,362.133209 150.701157,371.481476 139.847458,380.762756
|
||||||
|
C137.509918,382.761627 137.599960,384.703308 139.477402,387.223145
|
||||||
|
C148.201752,398.933044 158.418747,409.171173 170.330887,417.519104
|
||||||
|
C201.547028,439.395081 236.151672,446.465576 274.468506,440.162323
|
||||||
|
M233.500000,336.022949
|
||||||
|
C240.997757,336.022003 248.500427,336.182892 255.991257,335.954651
|
||||||
|
C259.986053,335.832947 261.279297,337.397217 261.148773,341.242249
|
||||||
|
C260.934143,347.566315 261.087921,353.902985 261.090210,360.234344
|
||||||
|
C261.093719,370.069214 261.087372,370.127258 270.471802,371.375519
|
||||||
|
C273.260010,371.746429 276.183624,372.158508 278.902161,371.701385
|
||||||
|
C281.713837,371.228546 284.950470,370.378296 286.956451,368.548065
|
||||||
|
C293.718719,362.378296 300.093414,355.773041 306.426514,349.152771
|
||||||
|
C307.673859,347.848846 308.697052,345.758453 308.759674,343.993042
|
||||||
|
C309.019470,336.671143 308.809998,329.334015 308.903290,322.004150
|
||||||
|
C308.940643,319.065887 307.843079,317.731903 304.794952,317.832214
|
||||||
|
C300.634216,317.969086 296.465271,317.877014 292.300049,317.850220
|
||||||
|
C283.999756,317.796783 284.978638,318.679932 284.952667,310.250427
|
||||||
|
C284.916229,298.420898 285.046112,286.589478 284.851990,274.763000
|
||||||
|
C284.813416,272.412811 284.068024,269.831543 282.892334,267.792999
|
||||||
|
C280.410339,263.489410 277.678345,259.269165 274.535156,255.436020
|
||||||
|
C273.170746,253.772110 270.573883,252.290100 268.474884,252.202133
|
||||||
|
C259.825928,251.839676 251.147537,252.226547 242.491821,251.957062
|
||||||
|
C238.575317,251.835114 237.576630,253.351913 237.798965,256.926636
|
||||||
|
C238.046722,260.910095 237.868408,264.920654 237.859970,268.919373
|
||||||
|
C237.845459,275.786621 237.575760,276.056458 230.948380,276.033264
|
||||||
|
C226.949677,276.019287 222.935547,276.229584 218.956528,275.945038
|
||||||
|
C214.893097,275.654480 213.754272,277.396240 213.840897,281.203705
|
||||||
|
C214.034119,289.696655 213.822647,298.198090 213.937500,306.693878
|
||||||
|
C213.988983,310.501892 212.545502,312.029694 208.599182,311.928925
|
||||||
|
C199.940842,311.707977 191.270996,311.968231 182.610001,311.807495
|
||||||
|
C179.108963,311.742523 177.836395,313.108643 177.956619,316.521088
|
||||||
|
C178.126663,321.347137 177.726166,326.208038 178.143311,331.004150
|
||||||
|
C178.338882,333.252716 179.382843,335.834106 180.892258,337.489777
|
||||||
|
C186.720444,343.882721 192.880356,349.973999 198.961853,356.133087
|
||||||
|
C199.324295,356.500122 200.081741,356.477173 201.233368,356.795410
|
||||||
|
C201.233368,351.386139 201.438599,346.408020 201.169266,341.455719
|
||||||
|
C200.948715,337.400299 202.250824,335.810150 206.510696,335.944946
|
||||||
|
C215.165955,336.218903 223.836029,336.024445 233.500000,336.022949
|
||||||
|
M226.487503,216.974564
|
||||||
|
C228.318466,216.972504 230.169739,217.144852 231.976410,216.934296
|
||||||
|
C236.626938,216.392303 238.261978,218.372772 237.932877,222.949615
|
||||||
|
C237.611343,227.420914 237.970520,231.936935 237.815445,236.425873
|
||||||
|
C237.706879,239.568451 238.831314,240.808350 242.108658,240.970367
|
||||||
|
C271.671997,242.431732 271.669800,242.475281 292.326508,221.303314
|
||||||
|
C292.791443,220.826767 293.466125,220.437729 293.695282,219.868042
|
||||||
|
C294.830353,217.045822 296.641174,214.209595 296.761719,211.317810
|
||||||
|
C297.149567,202.012863 296.705475,192.675598 296.979675,183.362503
|
||||||
|
C297.106903,179.041595 295.408844,176.904739 291.375214,175.996246
|
||||||
|
C285.569855,174.688721 279.870422,172.750992 274.007111,171.898193
|
||||||
|
C265.338440,170.637329 256.545135,169.256149 247.842560,169.468674
|
||||||
|
C238.302414,169.701630 228.822815,171.862457 219.280701,172.824982
|
||||||
|
C215.221130,173.234451 213.808914,175.022842 213.863144,178.894470
|
||||||
|
C213.986694,187.714676 213.897949,196.537811 213.903442,205.359756
|
||||||
|
C213.910675,216.986603 213.913971,216.986603 226.487503,216.974564
|
||||||
|
M371.632660,365.118713
|
||||||
|
C381.424042,345.942200 385.693726,325.563324 385.051239,304.081818
|
||||||
|
C384.964478,301.180969 383.989960,299.849487 380.932770,299.875000
|
||||||
|
C369.771881,299.968201 358.609558,299.951996 347.448334,299.881836
|
||||||
|
C344.922424,299.865967 343.778198,300.760101 343.869568,303.373566
|
||||||
|
C343.985901,306.701233 343.720398,310.047455 343.936829,313.364960
|
||||||
|
C344.170837,316.951538 342.598175,318.032654 339.218903,317.908264
|
||||||
|
C334.061554,317.718414 328.889465,317.957428 323.728760,317.820557
|
||||||
|
C320.936859,317.746521 319.866180,318.788818 319.924011,321.600494
|
||||||
|
C320.054138,327.928345 319.546234,334.296967 320.086914,340.581085
|
||||||
|
C320.648438,347.107666 318.824554,352.320465 313.837555,356.393951
|
||||||
|
C310.164734,359.394012 310.566040,361.822052 314.039948,364.807373
|
||||||
|
C325.376099,374.549133 336.565674,384.462585 347.740448,394.390106
|
||||||
|
C349.794861,396.215210 351.391815,396.552277 353.008698,394.046967
|
||||||
|
C359.091980,384.621399 365.184479,375.201752 371.632660,365.118713
|
||||||
|
M186.296997,184.796967
|
||||||
|
C184.926163,185.393723 183.470947,185.849045 182.197357,186.608795
|
||||||
|
C167.070114,195.632812 153.923645,207.067444 142.476791,220.361557
|
||||||
|
C138.408340,225.086548 135.374069,230.716568 131.994080,236.014099
|
||||||
|
C130.109818,238.967316 130.255890,240.968063 134.605942,240.938873
|
||||||
|
C147.591537,240.851669 160.578583,240.847214 173.563965,240.950241
|
||||||
|
C176.742004,240.975479 178.128967,239.867004 178.034958,236.601685
|
||||||
|
C177.891266,231.611160 178.113876,226.609787 177.958542,221.619965
|
||||||
|
C177.850693,218.155563 179.285690,216.838531 182.705704,216.951675
|
||||||
|
C187.694931,217.116745 192.694534,216.938385 197.688019,217.016098
|
||||||
|
C200.234314,217.055710 201.883636,216.375702 201.872711,213.440521
|
||||||
|
C201.834320,203.118408 201.879013,192.795975 201.834946,182.473907
|
||||||
|
C201.821243,179.267227 200.385544,178.290359 197.347672,179.755463
|
||||||
|
C193.926743,181.405304 190.417450,182.871918 186.296997,184.796967
|
||||||
|
M225.850571,243.511566
|
||||||
|
C225.844101,239.850021 225.845657,236.188461 225.828674,232.526962
|
||||||
|
C225.814957,229.571564 224.751968,227.996597 221.357635,228.065796
|
||||||
|
C212.420013,228.248016 203.474976,228.191528 194.535095,228.068909
|
||||||
|
C191.428589,228.026306 189.913940,229.020706 189.947632,232.335815
|
||||||
|
C190.044022,241.821625 190.036285,251.309631 189.943573,260.795532
|
||||||
|
C189.913849,263.838531 191.235840,264.908844 194.160797,264.880554
|
||||||
|
C203.147461,264.793610 212.135818,264.800751 221.122803,264.868164
|
||||||
|
C224.538055,264.893768 225.924988,263.292877 225.876480,259.985229
|
||||||
|
C225.800842,254.826813 225.853745,249.666519 225.850571,243.511566
|
||||||
|
M298.077362,270.182892
|
||||||
|
C297.428864,271.404083 296.238220,272.616486 296.218140,273.847900
|
||||||
|
C296.066223,283.176270 296.134796,292.508362 296.154602,301.839264
|
||||||
|
C296.161285,304.975830 297.761932,306.195587 300.892853,306.156067
|
||||||
|
C309.889160,306.042542 318.889404,306.018890 327.884705,306.165649
|
||||||
|
C331.152313,306.218964 332.291229,304.989594 332.245544,301.777557
|
||||||
|
C332.115204,292.615051 332.092163,283.447510 332.259125,274.286194
|
||||||
|
C332.318237,271.040771 331.254395,269.881866 327.968079,269.939819
|
||||||
|
C318.306885,270.110229 308.641083,270.019623 298.077362,270.182892
|
||||||
|
M213.899841,376.368378
|
||||||
|
C213.900818,383.921570 213.900803,383.913757 221.593216,383.904236
|
||||||
|
C229.089645,383.894958 236.589188,383.777710 244.081223,383.960114
|
||||||
|
C247.616165,384.046234 249.246704,383.055389 249.161179,379.197662
|
||||||
|
C248.958115,370.039734 248.978851,360.872498 249.137848,351.713013
|
||||||
|
C249.199341,348.170959 247.779343,347.059479 244.395584,347.118408
|
||||||
|
C235.902191,347.266418 227.400177,347.324707 218.910355,347.095581
|
||||||
|
C214.866028,346.986450 213.723007,348.598572 213.830658,352.408661
|
||||||
|
C214.047012,360.065643 213.898117,367.732941 213.899841,376.368378
|
||||||
|
z"/>
|
||||||
|
<path class="no-fill" fill="#e4e9ed" opacity="1.000000" stroke="none"
|
||||||
|
d="
|
||||||
|
M274.042084,440.210175
|
||||||
|
C236.151672,446.465576 201.547028,439.395081 170.330887,417.519104
|
||||||
|
C158.418747,409.171173 148.201752,398.933044 139.477402,387.223145
|
||||||
|
C137.599960,384.703308 137.509918,382.761627 139.847458,380.762756
|
||||||
|
C150.701157,371.481476 161.500671,362.133209 172.549179,353.089386
|
||||||
|
C173.586334,352.240356 176.908386,352.630096 178.016281,353.671570
|
||||||
|
C185.297485,360.516357 192.408722,367.561646 199.211716,374.879639
|
||||||
|
C200.654022,376.431122 201.096054,379.369720 201.142395,381.686310
|
||||||
|
C201.409409,395.035522 201.322189,395.038605 214.788040,395.042053
|
||||||
|
C228.452301,395.045563 242.116608,395.068176 255.780792,395.036896
|
||||||
|
C261.131378,395.024628 261.885437,394.207397 261.144836,388.894226
|
||||||
|
C260.570435,384.773285 262.160400,382.983582 266.311798,383.047882
|
||||||
|
C272.975677,383.151093 279.663574,383.376953 286.296600,382.912292
|
||||||
|
C288.702576,382.743774 291.539978,381.272888 293.226166,379.492371
|
||||||
|
C304.823242,367.246796 301.925537,369.147339 311.618439,378.008453
|
||||||
|
C320.201111,385.854614 328.932892,393.540649 337.709656,401.169861
|
||||||
|
C341.099976,404.116913 341.795715,405.725067 337.661896,409.407410
|
||||||
|
C321.399200,423.894073 302.473633,432.888306 281.745422,438.603668
|
||||||
|
C279.358032,439.261932 276.895966,439.649353 274.042084,440.210175
|
||||||
|
z"/>
|
||||||
|
<path class="no-fill" fill="#e4e9ed" opacity="1.000000" stroke="none"
|
||||||
|
d="
|
||||||
|
M233.000000,336.023010
|
||||||
|
C223.836029,336.024445 215.165955,336.218903 206.510696,335.944946
|
||||||
|
C202.250824,335.810150 200.948715,337.400299 201.169266,341.455719
|
||||||
|
C201.438599,346.408020 201.233368,351.386139 201.233368,356.795410
|
||||||
|
C200.081741,356.477173 199.324295,356.500122 198.961853,356.133087
|
||||||
|
C192.880356,349.973999 186.720444,343.882721 180.892258,337.489777
|
||||||
|
C179.382843,335.834106 178.338882,333.252716 178.143311,331.004150
|
||||||
|
C177.726166,326.208038 178.126663,321.347137 177.956619,316.521088
|
||||||
|
C177.836395,313.108643 179.108963,311.742523 182.610001,311.807495
|
||||||
|
C191.270996,311.968231 199.940842,311.707977 208.599182,311.928925
|
||||||
|
C212.545502,312.029694 213.988983,310.501892 213.937500,306.693878
|
||||||
|
C213.822647,298.198090 214.034119,289.696655 213.840897,281.203705
|
||||||
|
C213.754272,277.396240 214.893097,275.654480 218.956528,275.945038
|
||||||
|
C222.935547,276.229584 226.949677,276.019287 230.948380,276.033264
|
||||||
|
C237.575760,276.056458 237.845459,275.786621 237.859970,268.919373
|
||||||
|
C237.868408,264.920654 238.046722,260.910095 237.798965,256.926636
|
||||||
|
C237.576630,253.351913 238.575317,251.835114 242.491821,251.957062
|
||||||
|
C251.147537,252.226547 259.825928,251.839676 268.474884,252.202133
|
||||||
|
C270.573883,252.290100 273.170746,253.772110 274.535156,255.436020
|
||||||
|
C277.678345,259.269165 280.410339,263.489410 282.892334,267.792999
|
||||||
|
C284.068024,269.831543 284.813416,272.412811 284.851990,274.763000
|
||||||
|
C285.046112,286.589478 284.916229,298.420898 284.952667,310.250427
|
||||||
|
C284.978638,318.679932 283.999756,317.796783 292.300049,317.850220
|
||||||
|
C296.465271,317.877014 300.634216,317.969086 304.794952,317.832214
|
||||||
|
C307.843079,317.731903 308.940643,319.065887 308.903290,322.004150
|
||||||
|
C308.809998,329.334015 309.019470,336.671143 308.759674,343.993042
|
||||||
|
C308.697052,345.758453 307.673859,347.848846 306.426514,349.152771
|
||||||
|
C300.093414,355.773041 293.718719,362.378296 286.956451,368.548065
|
||||||
|
C284.950470,370.378296 281.713837,371.228546 278.902161,371.701385
|
||||||
|
C276.183624,372.158508 273.260010,371.746429 270.471802,371.375519
|
||||||
|
C261.087372,370.127258 261.093719,370.069214 261.090210,360.234344
|
||||||
|
C261.087921,353.902985 260.934143,347.566315 261.148773,341.242249
|
||||||
|
C261.279297,337.397217 259.986053,335.832947 255.991257,335.954651
|
||||||
|
C248.500427,336.182892 240.997757,336.022003 233.000000,336.023010
|
||||||
|
z"/>
|
||||||
|
<path class="no-fill" fill="#e4e9ed" opacity="1.000000" stroke="none"
|
||||||
|
d="
|
||||||
|
M225.998260,216.975098
|
||||||
|
C213.913971,216.986603 213.910675,216.986603 213.903442,205.359756
|
||||||
|
C213.897949,196.537811 213.986694,187.714676 213.863144,178.894470
|
||||||
|
C213.808914,175.022842 215.221130,173.234451 219.280701,172.824982
|
||||||
|
C228.822815,171.862457 238.302414,169.701630 247.842560,169.468674
|
||||||
|
C256.545135,169.256149 265.338440,170.637329 274.007111,171.898193
|
||||||
|
C279.870422,172.750992 285.569855,174.688721 291.375214,175.996246
|
||||||
|
C295.408844,176.904739 297.106903,179.041595 296.979675,183.362503
|
||||||
|
C296.705475,192.675598 297.149567,202.012863 296.761719,211.317810
|
||||||
|
C296.641174,214.209595 294.830353,217.045822 293.695282,219.868042
|
||||||
|
C293.466125,220.437729 292.791443,220.826767 292.326508,221.303314
|
||||||
|
C271.669800,242.475281 271.671997,242.431732 242.108658,240.970367
|
||||||
|
C238.831314,240.808350 237.706879,239.568451 237.815445,236.425873
|
||||||
|
C237.970520,231.936935 237.611343,227.420914 237.932877,222.949615
|
||||||
|
C238.261978,218.372772 236.626938,216.392303 231.976410,216.934296
|
||||||
|
C230.169739,217.144852 228.318466,216.972504 225.998260,216.975098
|
||||||
|
z"/>
|
||||||
|
<path class="no-fill" fill="#e4e9ed" opacity="1.000000" stroke="none"
|
||||||
|
d="
|
||||||
|
M371.453094,365.449280
|
||||||
|
C365.184479,375.201752 359.091980,384.621399 353.008698,394.046967
|
||||||
|
C351.391815,396.552277 349.794861,396.215210 347.740448,394.390106
|
||||||
|
C336.565674,384.462585 325.376099,374.549133 314.039948,364.807373
|
||||||
|
C310.566040,361.822052 310.164734,359.394012 313.837555,356.393951
|
||||||
|
C318.824554,352.320465 320.648438,347.107666 320.086914,340.581085
|
||||||
|
C319.546234,334.296967 320.054138,327.928345 319.924011,321.600494
|
||||||
|
C319.866180,318.788818 320.936859,317.746521 323.728760,317.820557
|
||||||
|
C328.889465,317.957428 334.061554,317.718414 339.218903,317.908264
|
||||||
|
C342.598175,318.032654 344.170837,316.951538 343.936829,313.364960
|
||||||
|
C343.720398,310.047455 343.985901,306.701233 343.869568,303.373566
|
||||||
|
C343.778198,300.760101 344.922424,299.865967 347.448334,299.881836
|
||||||
|
C358.609558,299.951996 369.771881,299.968201 380.932770,299.875000
|
||||||
|
C383.989960,299.849487 384.964478,301.180969 385.051239,304.081818
|
||||||
|
C385.693726,325.563324 381.424042,345.942200 371.453094,365.449280
|
||||||
|
z"/>
|
||||||
|
<path class="no-fill" fill="#e4e9ed" opacity="1.000000" stroke="none"
|
||||||
|
d="
|
||||||
|
M186.621796,184.607605
|
||||||
|
C190.417450,182.871918 193.926743,181.405304 197.347672,179.755463
|
||||||
|
C200.385544,178.290359 201.821243,179.267227 201.834946,182.473907
|
||||||
|
C201.879013,192.795975 201.834320,203.118408 201.872711,213.440521
|
||||||
|
C201.883636,216.375702 200.234314,217.055710 197.688019,217.016098
|
||||||
|
C192.694534,216.938385 187.694931,217.116745 182.705704,216.951675
|
||||||
|
C179.285690,216.838531 177.850693,218.155563 177.958542,221.619965
|
||||||
|
C178.113876,226.609787 177.891266,231.611160 178.034958,236.601685
|
||||||
|
C178.128967,239.867004 176.742004,240.975479 173.563965,240.950241
|
||||||
|
C160.578583,240.847214 147.591537,240.851669 134.605942,240.938873
|
||||||
|
C130.255890,240.968063 130.109818,238.967316 131.994080,236.014099
|
||||||
|
C135.374069,230.716568 138.408340,225.086548 142.476791,220.361557
|
||||||
|
C153.923645,207.067444 167.070114,195.632812 182.197357,186.608795
|
||||||
|
C183.470947,185.849045 184.926163,185.393723 186.621796,184.607605
|
||||||
|
z"/>
|
||||||
|
<path class="no-fill" fill="#e4e9ed" opacity="1.000000" stroke="none"
|
||||||
|
d="
|
||||||
|
M225.851379,244.009308
|
||||||
|
C225.853745,249.666519 225.800842,254.826813 225.876480,259.985229
|
||||||
|
C225.924988,263.292877 224.538055,264.893768 221.122803,264.868164
|
||||||
|
C212.135818,264.800751 203.147461,264.793610 194.160797,264.880554
|
||||||
|
C191.235840,264.908844 189.913849,263.838531 189.943573,260.795532
|
||||||
|
C190.036285,251.309631 190.044022,241.821625 189.947632,232.335815
|
||||||
|
C189.913940,229.020706 191.428589,228.026306 194.535095,228.068909
|
||||||
|
C203.474976,228.191528 212.420013,228.248016 221.357635,228.065796
|
||||||
|
C224.751968,227.996597 225.814957,229.571564 225.828674,232.526962
|
||||||
|
C225.845657,236.188461 225.844101,239.850021 225.851379,244.009308
|
||||||
|
z"/>
|
||||||
|
<path class="no-fill" fill="#e4e9ed" opacity="1.000000" stroke="none"
|
||||||
|
d="
|
||||||
|
M298.527222,270.107056
|
||||||
|
C308.641083,270.019623 318.306885,270.110229 327.968079,269.939819
|
||||||
|
C331.254395,269.881866 332.318237,271.040771 332.259125,274.286194
|
||||||
|
C332.092163,283.447510 332.115204,292.615051 332.245544,301.777557
|
||||||
|
C332.291229,304.989594 331.152313,306.218964 327.884705,306.165649
|
||||||
|
C318.889404,306.018890 309.889160,306.042542 300.892853,306.156067
|
||||||
|
C297.761932,306.195587 296.161285,304.975830 296.154602,301.839264
|
||||||
|
C296.134796,292.508362 296.066223,283.176270 296.218140,273.847900
|
||||||
|
C296.238220,272.616486 297.428864,271.404083 298.527222,270.107056
|
||||||
|
z"/>
|
||||||
|
<path class="no-fill" fill="#e4e9ed" opacity="1.000000" stroke="none"
|
||||||
|
d="
|
||||||
|
M213.899902,375.882202
|
||||||
|
C213.898117,367.732941 214.047012,360.065643 213.830658,352.408661
|
||||||
|
C213.723007,348.598572 214.866028,346.986450 218.910355,347.095581
|
||||||
|
C227.400177,347.324707 235.902191,347.266418 244.395584,347.118408
|
||||||
|
C247.779343,347.059479 249.199341,348.170959 249.137848,351.713013
|
||||||
|
C248.978851,360.872498 248.958115,370.039734 249.161179,379.197662
|
||||||
|
C249.246704,383.055389 247.616165,384.046234 244.081223,383.960114
|
||||||
|
C236.589188,383.777710 229.089645,383.894958 221.593216,383.904236
|
||||||
|
C213.900803,383.913757 213.900818,383.921570 213.899902,375.882202
|
||||||
|
z"/>
|
||||||
|
</svg>
|
After Width: | Height: | Size: 62 KiB |
@ -32,7 +32,7 @@ import {
|
|||||||
GlobalStyles,
|
GlobalStyles,
|
||||||
} from './styles';
|
} from './styles';
|
||||||
|
|
||||||
export const SimpleCmsUiDefault = {
|
export const StaticCmsUiDefault = {
|
||||||
Dropdown,
|
Dropdown,
|
||||||
DropdownItem,
|
DropdownItem,
|
||||||
DropdownCheckedItem,
|
DropdownCheckedItem,
|
||||||
|
@ -8,5 +8,5 @@ function Widget(opts = {}) {
|
|||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
export const SimpleCmsWidgetBoolean = { Widget, controlComponent };
|
export const StaticCmsWidgetBoolean = { Widget, controlComponent };
|
||||||
export default SimpleCmsWidgetBoolean;
|
export default StaticCmsWidgetBoolean;
|
||||||
|
@ -14,5 +14,5 @@ function Widget(opts = {}) {
|
|||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
export const SimpleCmsWidgetCode = { Widget, controlComponent, previewComponent };
|
export const StaticCmsWidgetCode = { Widget, controlComponent, previewComponent };
|
||||||
export default SimpleCmsWidgetCode;
|
export default StaticCmsWidgetCode;
|
||||||
|
@ -10,5 +10,5 @@ function Widget(opts = {}) {
|
|||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
export const SimpleCmsWidgetColorString = { Widget, controlComponent, previewComponent };
|
export const StaticCmsWidgetColorString = { Widget, controlComponent, previewComponent };
|
||||||
export default SimpleCmsWidgetColorString;
|
export default StaticCmsWidgetColorString;
|
||||||
|
@ -12,5 +12,5 @@ function Widget(opts = {}) {
|
|||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
export const SimpleCmsWidgetDatetime = { Widget, controlComponent, previewComponent };
|
export const StaticCmsWidgetDatetime = { Widget, controlComponent, previewComponent };
|
||||||
export default SimpleCmsWidgetDatetime;
|
export default StaticCmsWidgetDatetime;
|
||||||
|
@ -14,5 +14,5 @@ function Widget(opts = {}) {
|
|||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
export const SimpleCmsWidgetFile = { Widget, controlComponent, previewComponent, withFileControl };
|
export const StaticCmsWidgetFile = { Widget, controlComponent, previewComponent, withFileControl };
|
||||||
export default SimpleCmsWidgetFile;
|
export default StaticCmsWidgetFile;
|
||||||
|
@ -158,7 +158,7 @@ function valueListToArray(value) {
|
|||||||
|
|
||||||
const warnDeprecatedOptions = once(field =>
|
const warnDeprecatedOptions = once(field =>
|
||||||
console.warn(oneLine`
|
console.warn(oneLine`
|
||||||
Simple CMS config: ${field.get('name')} field: property "options" has been deprecated for the
|
Static CMS config: ${field.get('name')} field: property "options" has been deprecated for the
|
||||||
${field.get('widget')} widget and will be removed in the next major release. Rather than
|
${field.get('widget')} widget and will be removed in the next major release. Rather than
|
||||||
\`field.options.media_library\`, apply media library options for this widget under
|
\`field.options.media_library\`, apply media library options for this widget under
|
||||||
\`field.media_library\`.
|
\`field.media_library\`.
|
||||||
|
@ -1,8 +1,8 @@
|
|||||||
import SimpleCmsWidgetFile from '../file';
|
import StaticCmsWidgetFile from '../file';
|
||||||
import previewComponent from './ImagePreview';
|
import previewComponent from './ImagePreview';
|
||||||
import schema from './schema';
|
import schema from './schema';
|
||||||
|
|
||||||
const controlComponent = SimpleCmsWidgetFile.withFileControl({ forImage: true });
|
const controlComponent = StaticCmsWidgetFile.withFileControl({ forImage: true });
|
||||||
|
|
||||||
function Widget(opts = {}) {
|
function Widget(opts = {}) {
|
||||||
return {
|
return {
|
||||||
@ -14,5 +14,5 @@ function Widget(opts = {}) {
|
|||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
export const SimpleCmsWidgetImage = { Widget, controlComponent, previewComponent };
|
export const StaticCmsWidgetImage = { Widget, controlComponent, previewComponent };
|
||||||
export default SimpleCmsWidgetImage;
|
export default StaticCmsWidgetImage;
|
||||||
|
@ -16,7 +16,7 @@ import {
|
|||||||
FieldLabel,
|
FieldLabel,
|
||||||
} from '../../ui';
|
} from '../../ui';
|
||||||
import { stringTemplate, validations } from '../../lib/widgets';
|
import { stringTemplate, validations } from '../../lib/widgets';
|
||||||
import SimpleCmsWidgetObject from '../object';
|
import StaticCmsWidgetObject from '../object';
|
||||||
import {
|
import {
|
||||||
TYPES_KEY,
|
TYPES_KEY,
|
||||||
getTypedFieldForValue,
|
getTypedFieldForValue,
|
||||||
@ -24,7 +24,7 @@ import {
|
|||||||
getErrorMessageForTypedFieldAndValue,
|
getErrorMessageForTypedFieldAndValue,
|
||||||
} from './typedListHelpers';
|
} from './typedListHelpers';
|
||||||
|
|
||||||
const ObjectControl = SimpleCmsWidgetObject.controlComponent;
|
const ObjectControl = StaticCmsWidgetObject.controlComponent;
|
||||||
|
|
||||||
const ListItem = styled.div();
|
const ListItem = styled.div();
|
||||||
|
|
||||||
|
@ -1,8 +1,8 @@
|
|||||||
import SimpleCmsWidgetObject from '../object';
|
import StaticCmsWidgetObject from '../object';
|
||||||
import controlComponent from './ListControl';
|
import controlComponent from './ListControl';
|
||||||
import schema from './schema';
|
import schema from './schema';
|
||||||
|
|
||||||
const previewComponent = SimpleCmsWidgetObject.previewComponent;
|
const previewComponent = StaticCmsWidgetObject.previewComponent;
|
||||||
|
|
||||||
function Widget(opts = {}) {
|
function Widget(opts = {}) {
|
||||||
return {
|
return {
|
||||||
@ -14,5 +14,5 @@ function Widget(opts = {}) {
|
|||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
export const SimpleCmsWidgetList = { Widget, controlComponent, previewComponent };
|
export const StaticCmsWidgetList = { Widget, controlComponent, previewComponent };
|
||||||
export default SimpleCmsWidgetList;
|
export default StaticCmsWidgetList;
|
||||||
|
@ -14,5 +14,5 @@ function Widget(opts = {}) {
|
|||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
export const SimpleCmsWidgetMap = { Widget, controlComponent, previewComponent };
|
export const StaticCmsWidgetMap = { Widget, controlComponent, previewComponent };
|
||||||
export default SimpleCmsWidgetMap;
|
export default StaticCmsWidgetMap;
|
||||||
|
@ -12,5 +12,5 @@ function Widget(opts = {}) {
|
|||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
export const SimpleCmsWidgetMarkdown = { Widget, controlComponent, previewComponent };
|
export const StaticCmsWidgetMarkdown = { Widget, controlComponent, previewComponent };
|
||||||
export default SimpleCmsWidgetMarkdown;
|
export default StaticCmsWidgetMarkdown;
|
||||||
|
@ -25,5 +25,5 @@ function Widget(opts = {}) {
|
|||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
export const SimpleCmsWidgetNumber = { Widget, controlComponent, previewComponent };
|
export const StaticCmsWidgetNumber = { Widget, controlComponent, previewComponent };
|
||||||
export default SimpleCmsWidgetNumber;
|
export default StaticCmsWidgetNumber;
|
||||||
|
@ -12,5 +12,5 @@ function Widget(opts = {}) {
|
|||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
export const SimpleCmsWidgetObject = { Widget, controlComponent, previewComponent };
|
export const StaticCmsWidgetObject = { Widget, controlComponent, previewComponent };
|
||||||
export default SimpleCmsWidgetObject;
|
export default StaticCmsWidgetObject;
|
||||||
|
@ -35,5 +35,5 @@ function Widget(opts = {}) {
|
|||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
export const SimpleCmsWidgetRelation = { Widget, controlComponent, previewComponent };
|
export const StaticCmsWidgetRelation = { Widget, controlComponent, previewComponent };
|
||||||
export default SimpleCmsWidgetRelation;
|
export default StaticCmsWidgetRelation;
|
||||||
|
@ -30,5 +30,5 @@ function Widget(opts = {}) {
|
|||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
export const SimpleCmsWidgetSelect = { Widget, controlComponent, previewComponent };
|
export const StaticCmsWidgetSelect = { Widget, controlComponent, previewComponent };
|
||||||
export default SimpleCmsWidgetSelect;
|
export default StaticCmsWidgetSelect;
|
||||||
|
@ -11,5 +11,5 @@ function Widget(opts = {}): CmsWidgetParam<string> {
|
|||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
export const SimpleCmsWidgetString = { Widget, controlComponent, previewComponent };
|
export const StaticCmsWidgetString = { Widget, controlComponent, previewComponent };
|
||||||
export default SimpleCmsWidgetString;
|
export default StaticCmsWidgetString;
|
||||||
|
@ -10,5 +10,5 @@ function Widget(opts = {}) {
|
|||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
export const SimpleCmsWidgetText = { Widget, controlComponent, previewComponent };
|
export const StaticCmsWidgetText = { Widget, controlComponent, previewComponent };
|
||||||
export default SimpleCmsWidgetText;
|
export default StaticCmsWidgetText;
|
||||||
|
@ -16,7 +16,7 @@
|
|||||||
"noUnusedParameters": true,
|
"noUnusedParameters": true,
|
||||||
"baseUrl": "./",
|
"baseUrl": "./",
|
||||||
"paths": {
|
"paths": {
|
||||||
"@simplecms/simple-cms-core": ["./src"]
|
"@staticcms/core": ["./src"]
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"include": ["**/src/**/*", "dev-test/index.js"],
|
"include": ["**/src/**/*", "dev-test/index.js"],
|
||||||
|
@ -2,7 +2,7 @@ const path = require('path');
|
|||||||
const webpack = require('webpack');
|
const webpack = require('webpack');
|
||||||
|
|
||||||
const isProduction = process.env.NODE_ENV === 'production';
|
const isProduction = process.env.NODE_ENV === 'production';
|
||||||
const devServerPort = parseInt(process.env.SIMPLE_CMS_DEV_SERVER_PORT || `${8080}`);
|
const devServerPort = parseInt(process.env.STATIC_CMS_DEV_SERVER_PORT || `${8080}`);
|
||||||
|
|
||||||
function moduleNameToPath(libName) {
|
function moduleNameToPath(libName) {
|
||||||
return path.resolve(__dirname, 'node_modules', libName);
|
return path.resolve(__dirname, 'node_modules', libName);
|
||||||
@ -66,9 +66,9 @@ module.exports = {
|
|||||||
],
|
],
|
||||||
output: {
|
output: {
|
||||||
path: path.resolve(__dirname, 'dist'),
|
path: path.resolve(__dirname, 'dist'),
|
||||||
filename: 'simple-cms-core.js',
|
filename: 'static-cms-core.js',
|
||||||
library: {
|
library: {
|
||||||
name: 'SimpleCmsCore',
|
name: 'StaticCmsCore',
|
||||||
type: 'umd',
|
type: 'umd',
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
# Simple CMS Website & Docs
|
# Static CMS Website & Docs
|
||||||
|
|
||||||
This directory builds simplecms.github.io/simple-cms. If you'd like to propose changes to the site or docs, you'll find the source files in here.
|
This directory builds staticjscms.github.io/static-cms. If you'd like to propose changes to the site or docs, you'll find the source files in here.
|
||||||
|
|
||||||
## Local development
|
## Local development
|
||||||
|
|
||||||
|
@ -1,10 +1,10 @@
|
|||||||
---
|
---
|
||||||
title: >-
|
title: >-
|
||||||
Welcome to Simple CMS
|
Welcome to Static CMS
|
||||||
author: Daniel Lautzenheiser
|
author: Daniel Lautzenheiser
|
||||||
description: >-
|
description: >-
|
||||||
Announcing the release of Simple CMS v1.0.
|
Announcing the release of Static CMS v1.0.
|
||||||
twitter_image: /img/simple-cms.png
|
twitter_image: /img/static-cms.png
|
||||||
date: 2022-10-30T12:00:00.000Z
|
date: 2022-10-30T12:00:00.000Z
|
||||||
---
|
---
|
||||||
Today we’re releasing Simple CMS 1.0!
|
Today we’re releasing Static CMS 1.0!
|
@ -3,13 +3,13 @@ group: Intro
|
|||||||
weight: 3
|
weight: 3
|
||||||
title: Add to Your Site
|
title: Add to Your Site
|
||||||
---
|
---
|
||||||
You can adapt Simple CMS to a wide variety of projects. It works with any content written in markdown, JSON, YAML, or TOML files, stored in a repo on [GitHub](https://github.com/), [GitLab](https://about.gitlab.com/), or [Bitbucket](https://bitbucket.org). You can also create your own custom backend.
|
You can adapt Static CMS to a wide variety of projects. It works with any content written in markdown, JSON, YAML, or TOML files, stored in a repo on [GitHub](https://github.com/), [GitLab](https://about.gitlab.com/), or [Bitbucket](https://bitbucket.org). You can also create your own custom backend.
|
||||||
|
|
||||||
This tutorial guides you through the steps for adding Simple CMS to a site that's built with a common [static site generator](https://www.staticgen.com/), like Jekyll, Hugo, Hexo, or Gatsby. Alternatively, you can [start from a template](../start-with-a-template) or dive right into [configuration options](../configuration-options).
|
This tutorial guides you through the steps for adding Static CMS to a site that's built with a common [static site generator](https://www.staticgen.com/), like Jekyll, Hugo, Hexo, or Gatsby. Alternatively, you can [start from a template](../start-with-a-template) or dive right into [configuration options](../configuration-options).
|
||||||
|
|
||||||
## App File Structure
|
## App File Structure
|
||||||
|
|
||||||
A static `admin` folder contains all Simple CMS files, stored at the root of your published site. Where you store this folder in the source files depends on your static site generator. Here's the static file location for a few of the most popular static site generators:
|
A static `admin` folder contains all Static CMS files, stored at the root of your published site. Where you store this folder in the source files depends on your static site generator. Here's the static file location for a few of the most popular static site generators:
|
||||||
|
|
||||||
| These generators | store static files in |
|
| These generators | store static files in |
|
||||||
| ------------------------------------------------------- | --------------------- |
|
| ------------------------------------------------------- | --------------------- |
|
||||||
@ -26,7 +26,7 @@ A static `admin` folder contains all Simple CMS files, stored at the root of you
|
|||||||
| preact-cli | `/src/static` |
|
| preact-cli | `/src/static` |
|
||||||
| Docusaurus | `/static` |
|
| Docusaurus | `/static` |
|
||||||
|
|
||||||
If your generator isn't listed here, you can check its documentation, or as a shortcut, look in your project for a `css` or `images` folder. The contents of folders like that are usually processed as static files, so it's likely you can store your `admin` folder next to those. (When you've found the location, feel free to add it to these docs by [filing a pull request](https://github.com/SimpleCMS/simple-cms/blob/main/CONTRIBUTING.md#pull-requests)!)
|
If your generator isn't listed here, you can check its documentation, or as a shortcut, look in your project for a `css` or `images` folder. The contents of folders like that are usually processed as static files, so it's likely you can store your `admin` folder next to those. (When you've found the location, feel free to add it to these docs by [filing a pull request](https://github.com/StaticJsCMS/static-cms/blob/main/CONTRIBUTING.md#pull-requests)!)
|
||||||
|
|
||||||
Inside the `admin` folder, you'll create two files:
|
Inside the `admin` folder, you'll create two files:
|
||||||
|
|
||||||
@ -36,7 +36,7 @@ admin
|
|||||||
└ config.yml
|
└ config.yml
|
||||||
```
|
```
|
||||||
|
|
||||||
The first file, `admin/index.html`, is the entry point for the Simple CMS admin interface. This means that users navigate to `yoursite.com/admin/` to access it. On the code side, it's a basic HTML starter page that loads the Simple CMS JavaScript file. The second file, `admin/config.yml`, is the heart of your Simple CMS installation, and a bit more complex. The [Configuration](#configuration) section covers the details.
|
The first file, `admin/index.html`, is the entry point for the Static CMS admin interface. This means that users navigate to `yoursite.com/admin/` to access it. On the code side, it's a basic HTML starter page that loads the Static CMS JavaScript file. The second file, `admin/config.yml`, is the heart of your Static CMS installation, and a bit more complex. The [Configuration](#configuration) section covers the details.
|
||||||
|
|
||||||
In this example, we pull the `admin/index.html` file from a public CDN.
|
In this example, we pull the `admin/index.html` file from a public CDN.
|
||||||
|
|
||||||
@ -49,26 +49,26 @@ In this example, we pull the `admin/index.html` file from a public CDN.
|
|||||||
<title>Content Manager</title>
|
<title>Content Manager</title>
|
||||||
</head>
|
</head>
|
||||||
<body>
|
<body>
|
||||||
<!-- Include the script that builds the page and powers Simple CMS -->
|
<!-- Include the script that builds the page and powers Static CMS -->
|
||||||
<script src="https://unpkg.com/@simplecms/simple-cms-core@%5E0.1.0/dist/simple-cms-core.js"></script>
|
<script src="https://unpkg.com/@staticcms/core@%5E0.1.0/dist/static-cms-core.js"></script>
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
```
|
```
|
||||||
|
|
||||||
In the code above the `script` is loaded from the `unpkg` CDN. Should there be any issue, `jsDelivr` can be used as an alternative source. Simply set the `src` to `https://cdn.jsdelivr.net/npm/@simplecms/simple-cms-core@%5E0.1.0/dist/simple-cms-core.js`
|
In the code above the `script` is loaded from the `unpkg` CDN. Should there be any issue, `jsDelivr` can be used as an alternative source. Simply set the `src` to `https://cdn.jsdelivr.net/npm/@staticcms/core@%5E0.1.0/dist/static-cms-core.js`
|
||||||
|
|
||||||
### Installing with npm
|
### Installing with npm
|
||||||
|
|
||||||
You can also use Simple CMS as an npm module. Wherever you import Simple CMS, it automatically runs, taking over the current page. Make sure the script that imports it only runs on your CMS page. First install the package and save it to your project:
|
You can also use Static CMS as an npm module. Wherever you import Static CMS, it automatically runs, taking over the current page. Make sure the script that imports it only runs on your CMS page. First install the package and save it to your project:
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
npm install @simplecms/simple-cms-core --save
|
npm install @staticcms/core --save
|
||||||
```
|
```
|
||||||
|
|
||||||
Then import it (assuming your project has tooling for imports):
|
Then import it (assuming your project has tooling for imports):
|
||||||
|
|
||||||
```js
|
```js
|
||||||
import CMS from '@simplecms/simple-cms-core'
|
import CMS from '@staticcms/core'
|
||||||
// Initialize the CMS object
|
// Initialize the CMS object
|
||||||
CMS.init()
|
CMS.init()
|
||||||
// Now the registry is available via the CMS object.
|
// Now the registry is available via the CMS object.
|
||||||
@ -83,7 +83,7 @@ Configuration is different for every site, so we'll break it down into parts. A
|
|||||||
|
|
||||||
We're using [Netlify](https://www.netlify.com) for our hosting and authentication in this tutorial, so backend configuration is fairly straightforward.
|
We're using [Netlify](https://www.netlify.com) for our hosting and authentication in this tutorial, so backend configuration is fairly straightforward.
|
||||||
|
|
||||||
For GitHub and GitLab repositories, you can start your Simple CMS `config.yml` file with these lines:
|
For GitHub and GitLab repositories, you can start your Static CMS `config.yml` file with these lines:
|
||||||
|
|
||||||
```yaml
|
```yaml
|
||||||
backend:
|
backend:
|
||||||
@ -97,7 +97,7 @@ The configuration above specifies your backend protocol and your publication bra
|
|||||||
|
|
||||||
### Media and Public Folders
|
### Media and Public Folders
|
||||||
|
|
||||||
Simple CMS allows users to upload images directly within the editor. For this to work, the CMS needs to know where to save them. If you already have an `images` folder in your project, you could use its path, possibly creating an `uploads` sub-folder, for example:
|
Static CMS allows users to upload images directly within the editor. For this to work, the CMS needs to know where to save them. If you already have an `images` folder in your project, you could use its path, possibly creating an `uploads` sub-folder, for example:
|
||||||
|
|
||||||
```yaml
|
```yaml
|
||||||
# This line should *not* be indented
|
# This line should *not* be indented
|
||||||
@ -116,7 +116,7 @@ public_folder: "/images/uploads" # The src attribute for uploaded media will beg
|
|||||||
|
|
||||||
The configuration above adds a new setting, `public_folder`. While `media_folder` specifies where uploaded files are saved in the repo, `public_folder` indicates where they are found in the published site. Image `src` attributes use this path, which is relative to the file where it's called. For this reason, we usually start the path at the site root, using the opening `/`.
|
The configuration above adds a new setting, `public_folder`. While `media_folder` specifies where uploaded files are saved in the repo, `public_folder` indicates where they are found in the published site. Image `src` attributes use this path, which is relative to the file where it's called. For this reason, we usually start the path at the site root, using the opening `/`.
|
||||||
|
|
||||||
*If `public_folder` is not set, Simple CMS defaults to the same value as `media_folder`, adding an opening `/` if one is not included.*
|
*If `public_folder` is not set, Static CMS defaults to the same value as `media_folder`, adding an opening `/` if one is not included.*
|
||||||
|
|
||||||
### Collections
|
### Collections
|
||||||
|
|
||||||
@ -136,7 +136,7 @@ rating: 5
|
|||||||
This is the post body, where I write about our last chance to party before the Y2K bug destroys us all.
|
This is the post body, where I write about our last chance to party before the Y2K bug destroys us all.
|
||||||
```
|
```
|
||||||
|
|
||||||
Given this example, our `collections` settings would look like this in your Simple CMS `config.yml` file:
|
Given this example, our `collections` settings would look like this in your Static CMS `config.yml` file:
|
||||||
|
|
||||||
```yaml
|
```yaml
|
||||||
collections:
|
collections:
|
||||||
@ -194,7 +194,7 @@ Let's break that down:
|
|||||||
|
|
||||||
As described above, the `widget` property specifies a built-in or custom UI widget for a given field. When a content editor enters a value into a widget, that value is saved in the document front matter as the value for the `name` specified for that field. A full listing of available widgets can be found in the [Widgets doc](../widgets).
|
As described above, the `widget` property specifies a built-in or custom UI widget for a given field. When a content editor enters a value into a widget, that value is saved in the document front matter as the value for the `name` specified for that field. A full listing of available widgets can be found in the [Widgets doc](../widgets).
|
||||||
|
|
||||||
Based on this example, you can go through the post types in your site and add the appropriate settings to your Simple CMS `config.yml` file. Each post type should be listed as a separate node under the `collections` field. See the [Collections reference doc](../configuration-options/#collections) for more configuration options.
|
Based on this example, you can go through the post types in your site and add the appropriate settings to your Static CMS `config.yml` file. Each post type should be listed as a separate node under the `collections` field. See the [Collections reference doc](../configuration-options/#collections) for more configuration options.
|
||||||
|
|
||||||
### Filter
|
### Filter
|
||||||
|
|
||||||
@ -214,7 +214,7 @@ collections:
|
|||||||
|
|
||||||
## Authentication
|
## Authentication
|
||||||
|
|
||||||
Now that you have your Simple CMS files in place and configured, all that's left is to enable authentication. We're using the [Netlify](https://www.netlify.com/) platform here because it's one of the quickest ways to get started, but you can learn about other authentication options in the [Backends](/docs/backends-overview) doc.
|
Now that you have your Static CMS files in place and configured, all that's left is to enable authentication. We're using the [Netlify](https://www.netlify.com/) platform here because it's one of the quickest ways to get started, but you can learn about other authentication options in the [Backends](/docs/backends-overview) doc.
|
||||||
|
|
||||||
### Setup on Netlify
|
### Setup on Netlify
|
||||||
|
|
||||||
@ -265,6 +265,6 @@ If you set your registration preference to "Invite only," invite yourself (and a
|
|||||||
|
|
||||||
If you left your site registration open, or for return visits after confirming an email invitation, access your site's CMS at `yoursite.com/admin/`.
|
If you left your site registration open, or for return visits after confirming an email invitation, access your site's CMS at `yoursite.com/admin/`.
|
||||||
|
|
||||||
**Note:** No matter where you access Simple CMS — whether running locally, in a staging environment, or in your published site — it always fetches and commits files in your hosted repository (for example, on GitHub), on the branch you configured in your Simple CMS config.yml file. This means that content fetched in the admin UI matches the content in the repository, which may be different from your locally running site. It also means that content saved using the admin UI saves directly to the hosted repository, even if you're running the UI locally or in staging.
|
**Note:** No matter where you access Static CMS — whether running locally, in a staging environment, or in your published site — it always fetches and commits files in your hosted repository (for example, on GitHub), on the branch you configured in your Static CMS config.yml file. This means that content fetched in the admin UI matches the content in the repository, which may be different from your locally running site. It also means that content saved using the admin UI saves directly to the hosted repository, even if you're running the UI locally or in staging.
|
||||||
|
|
||||||
Happy posting!
|
Happy posting!
|
||||||
|
@ -5,7 +5,7 @@ group: Contributing
|
|||||||
weight: 200
|
weight: 200
|
||||||
---
|
---
|
||||||
|
|
||||||
Simple CMS is a React application, using Redux for state management with immutable data structures (immutable.js).
|
Static CMS is a React application, using Redux for state management with immutable data structures (immutable.js).
|
||||||
|
|
||||||
The core abstractions for content editing are `collections`, `entries`, and `widgets`.
|
The core abstractions for content editing are `collections`, `entries`, and `widgets`.
|
||||||
|
|
||||||
|
@ -6,7 +6,7 @@ title: Azure
|
|||||||
|
|
||||||
For repositories stored on Azure, the `azure` backend allows CMS users to log in directly with their Azure account. Note that all users must have write access to your content repository for this to work.
|
For repositories stored on Azure, the `azure` backend allows CMS users to log in directly with their Azure account. Note that all users must have write access to your content repository for this to work.
|
||||||
|
|
||||||
In order to get Simple CMS working with Azure DevOps, you need a Tenant Id and an Application Id.
|
In order to get Static CMS working with Azure DevOps, you need a Tenant Id and an Application Id.
|
||||||
|
|
||||||
1. If you do not have an Azure account, [create one here](https://azure.microsoft.com/en-us/free/?WT.mc_id=A261C142F) and make sure to have a credit card linked to the account.
|
1. If you do not have an Azure account, [create one here](https://azure.microsoft.com/en-us/free/?WT.mc_id=A261C142F) and make sure to have a credit card linked to the account.
|
||||||
2. If you do not have an Azure Active Directory Tenant Id, [set one up here](https://docs.microsoft.com/en-us/azure/active-directory/develop/quickstart-create-new-tenant).
|
2. If you do not have an Azure Active Directory Tenant Id, [set one up here](https://docs.microsoft.com/en-us/azure/active-directory/develop/quickstart-create-new-tenant).
|
||||||
@ -15,7 +15,7 @@ In order to get Simple CMS working with Azure DevOps, you need a Tenant Id and a
|
|||||||
5. [Grant admin consent](https://docs.microsoft.com/en-us/azure/active-directory/develop/quickstart-configure-app-access-web-apis#admin-consent-button) for the application.
|
5. [Grant admin consent](https://docs.microsoft.com/en-us/azure/active-directory/develop/quickstart-configure-app-access-web-apis#admin-consent-button) for the application.
|
||||||
6. Under `Authentication->Implicit grant` enable [Access tokens](https://docs.microsoft.com/en-us/azure/active-directory/develop/access-tokens) for the application and click `Save`.
|
6. Under `Authentication->Implicit grant` enable [Access tokens](https://docs.microsoft.com/en-us/azure/active-directory/develop/access-tokens) for the application and click `Save`.
|
||||||
7. Verify your Azure DevOps organization is connected to the same directory as your tenant under: `https://dev.azure.com/<organization>/_settings/organizationAad`
|
7. Verify your Azure DevOps organization is connected to the same directory as your tenant under: `https://dev.azure.com/<organization>/_settings/organizationAad`
|
||||||
8. Add the following lines to your Simple CMS `config.yml` file:
|
8. Add the following lines to your Static CMS `config.yml` file:
|
||||||
|
|
||||||
```yaml
|
```yaml
|
||||||
backend:
|
backend:
|
||||||
|
@ -4,7 +4,7 @@ weight: 1
|
|||||||
title: Overview
|
title: Overview
|
||||||
---
|
---
|
||||||
|
|
||||||
A backend is JavaScript code that allows Simple CMS to communicate with a service that stores content - typically a Git host like GitHub or GitLab. It provides functions that Simple CMS can use to do things like read and update files using API's provided by the service.
|
A backend is JavaScript code that allows Static CMS to communicate with a service that stores content - typically a Git host like GitHub or GitLab. It provides functions that Static CMS can use to do things like read and update files using API's provided by the service.
|
||||||
|
|
||||||
## Backend Configuration
|
## Backend Configuration
|
||||||
|
|
||||||
@ -21,4 +21,4 @@ Individual backends should provide their own configuration documentation, but th
|
|||||||
|
|
||||||
## Creating a New Backend
|
## Creating a New Backend
|
||||||
|
|
||||||
Anyone can write a backend, but we don't yet have a finalized and documented API. If you would like to write your own backend for a service that does not have one currently, we recommend using the [GitHub backend](https://github.com/SimpleCMS/simple-cms/tree/main/src/backends/github) as a reference for API and best practices.
|
Anyone can write a backend, but we don't yet have a finalized and documented API. If you would like to write your own backend for a service that does not have one currently, we recommend using the [GitHub backend](https://github.com/StaticJsCMS/static-cms/tree/main/src/backends/github) as a reference for API and best practices.
|
||||||
|
@ -9,7 +9,7 @@ We run new functionality in an open beta format from time to time. That means th
|
|||||||
|
|
||||||
## Working with a Local Git Repository
|
## Working with a Local Git Repository
|
||||||
|
|
||||||
You can connect Simple CMS to a local Git repository, instead of working with a live repo.
|
You can connect Static CMS to a local Git repository, instead of working with a live repo.
|
||||||
|
|
||||||
1. Navigate to a local Git repository configured with the CMS.
|
1. Navigate to a local Git repository configured with the CMS.
|
||||||
2. Add the top-level property `local_backend` configuration to your `config.yml`:
|
2. Add the top-level property `local_backend` configuration to your `config.yml`:
|
||||||
@ -30,7 +30,7 @@ local_backend: true
|
|||||||
|
|
||||||
**Note:** `netlify-cms-proxy-server` runs an unauthenticated express server. As any client can send requests to the server, it should only be used for local development.
|
**Note:** `netlify-cms-proxy-server` runs an unauthenticated express server. As any client can send requests to the server, it should only be used for local development.
|
||||||
|
|
||||||
### Configure the Simple CMS proxy server port number
|
### Configure the Static CMS proxy server port number
|
||||||
|
|
||||||
1. Create a `.env` file in the project's root folder and define the PORT you'd like the proxy server to use
|
1. Create a `.env` file in the project's root folder and define the PORT you'd like the proxy server to use
|
||||||
|
|
||||||
@ -292,7 +292,7 @@ Supports all of the [`slug` templates](/docs/configuration-options#slug) and:
|
|||||||
|
|
||||||
## List Widget: Variable Types
|
## List Widget: Variable Types
|
||||||
|
|
||||||
Before this feature, the [list widget](/docs/widgets/#list) allowed a set of fields to be repeated, but every list item had the same set of fields available. With variable types, multiple named sets of fields can be defined, which opens the door to highly flexible content authoring (even page building) in Simple CMS.
|
Before this feature, the [list widget](/docs/widgets/#list) allowed a set of fields to be repeated, but every list item had the same set of fields available. With variable types, multiple named sets of fields can be defined, which opens the door to highly flexible content authoring (even page building) in Static CMS.
|
||||||
|
|
||||||
**Note: this feature does not yet support default previews and requires [registering a preview template](/docs/customization#registerpreviewtemplate) in order to show up in the preview pane.**
|
**Note: this feature does not yet support default previews and requires [registering a preview template](/docs/customization#registerpreviewtemplate) in order to show up in the preview pane.**
|
||||||
|
|
||||||
@ -372,13 +372,13 @@ sections:
|
|||||||
|
|
||||||
## Custom Mount Element
|
## Custom Mount Element
|
||||||
|
|
||||||
Simple CMS always creates its own DOM element for mounting the application, which means it always takes over the entire page, and is generally inflexible if you're trying to do something creative, like injecting it into a shared context.
|
Static CMS always creates its own DOM element for mounting the application, which means it always takes over the entire page, and is generally inflexible if you're trying to do something creative, like injecting it into a shared context.
|
||||||
|
|
||||||
You can now provide your own element for Simple CMS to mount in by setting the target element's ID as `nc-root`. If Simple CMS finds an element with this ID during initialization, it will mount within that element instead of creating its own.
|
You can now provide your own element for Static CMS to mount in by setting the target element's ID as `nc-root`. If Static CMS finds an element with this ID during initialization, it will mount within that element instead of creating its own.
|
||||||
|
|
||||||
## Manual Initialization
|
## Manual Initialization
|
||||||
|
|
||||||
Simple CMS can now be manually initialized, rather than automatically loading up the moment you import it. The whole point of this at the moment is to inject configuration into Simple CMS before it loads, bypassing need for an actual Simple CMS `config.yml`. This is important, for example, when creating tight integrations with static site generators.
|
Static CMS can now be manually initialized, rather than automatically loading up the moment you import it. The whole point of this at the moment is to inject configuration into Static CMS before it loads, bypassing need for an actual Static CMS `config.yml`. This is important, for example, when creating tight integrations with static site generators.
|
||||||
|
|
||||||
Manual initialization works by setting `window.CMS_MANUAL_INIT = true` **before importing the CMS**:
|
Manual initialization works by setting `window.CMS_MANUAL_INIT = true` **before importing the CMS**:
|
||||||
|
|
||||||
@ -386,12 +386,12 @@ Manual initialization works by setting `window.CMS_MANUAL_INIT = true` **before
|
|||||||
// This global flag enables manual initialization.
|
// This global flag enables manual initialization.
|
||||||
window.CMS_MANUAL_INIT = true
|
window.CMS_MANUAL_INIT = true
|
||||||
// Usage with import from npm package
|
// Usage with import from npm package
|
||||||
import CMS, { init } from '@simplecms/simple-cms-core'
|
import CMS, { init } from '@staticcms/core'
|
||||||
// Usage with script tag
|
// Usage with script tag
|
||||||
const { CMS, initCMS: init } = window
|
const { CMS, initCMS: init } = window
|
||||||
/**
|
/**
|
||||||
* Initialize without passing in config - equivalent to just importing
|
* Initialize without passing in config - equivalent to just importing
|
||||||
* Simple CMS the old way.
|
* Static CMS the old way.
|
||||||
*/
|
*/
|
||||||
init()
|
init()
|
||||||
/**
|
/**
|
||||||
@ -451,18 +451,18 @@ CMS.registerPreviewTemplate(...);
|
|||||||
* Assumes a webpack project with `sass-loader` and `css-loader` installed.
|
* Assumes a webpack project with `sass-loader` and `css-loader` installed.
|
||||||
* Takes advantage of the `toString` method in the return value of `css-loader`.
|
* Takes advantage of the `toString` method in the return value of `css-loader`.
|
||||||
*/
|
*/
|
||||||
import CMS from '@simplecms/simple-cms-core';
|
import CMS from '@staticcms/core';
|
||||||
import styles from '!css-loader!sass-loader!../main.scss';
|
import styles from '!css-loader!sass-loader!../main.scss';
|
||||||
CMS.registerPreviewStyle(styles.toString(), { raw: true });
|
CMS.registerPreviewStyle(styles.toString(), { raw: true });
|
||||||
```
|
```
|
||||||
|
|
||||||
## Commit Message Templates
|
## Commit Message Templates
|
||||||
|
|
||||||
You can customize the templates used by Simple CMS to generate commit messages by setting the `commit_messages` option under `backend` in your Simple CMS `config.yml`.
|
You can customize the templates used by Static CMS to generate commit messages by setting the `commit_messages` option under `backend` in your Static CMS `config.yml`.
|
||||||
|
|
||||||
Template tags wrapped in curly braces will be expanded to include information about the file changed by the commit. For example, `{{path}}` will include the full path to the file changed.
|
Template tags wrapped in curly braces will be expanded to include information about the file changed by the commit. For example, `{{path}}` will include the full path to the file changed.
|
||||||
|
|
||||||
Setting up your Simple CMS `config.yml` to recreate the default values would look like this:
|
Setting up your Static CMS `config.yml` to recreate the default values would look like this:
|
||||||
|
|
||||||
```yaml
|
```yaml
|
||||||
backend:
|
backend:
|
||||||
@ -474,7 +474,7 @@ backend:
|
|||||||
deleteMedia: Delete “{{path}}”
|
deleteMedia: Delete “{{path}}”
|
||||||
```
|
```
|
||||||
|
|
||||||
Simple CMS generates the following commit types:
|
Static CMS generates the following commit types:
|
||||||
|
|
||||||
| Commit type | When is it triggered? | Available template tags |
|
| Commit type | When is it triggered? | Available template tags |
|
||||||
| --------------- | ---------------------------------------- | ----------------------------------------------------------- |
|
| --------------- | ---------------------------------------- | ----------------------------------------------------------- |
|
||||||
|
@ -8,7 +8,7 @@ For repositories stored on Bitbucket, the `bitbucket` backend allows CMS users t
|
|||||||
To enable it:
|
To enable it:
|
||||||
|
|
||||||
1. Follow the authentication provider setup steps in the [Netlify docs](https://www.netlify.com/docs/authentication-providers/#using-an-authentication-provider).
|
1. Follow the authentication provider setup steps in the [Netlify docs](https://www.netlify.com/docs/authentication-providers/#using-an-authentication-provider).
|
||||||
2. Add the following lines to your Simple CMS `config.yml` file:
|
2. Add the following lines to your Static CMS `config.yml` file:
|
||||||
|
|
||||||
```yaml
|
```yaml
|
||||||
backend:
|
backend:
|
||||||
@ -20,8 +20,8 @@ To enable it:
|
|||||||
|
|
||||||
With Bitbucket's Implicit Grant, users can authenticate with Bitbucket directly from the client. To do this:
|
With Bitbucket's Implicit Grant, users can authenticate with Bitbucket directly from the client. To do this:
|
||||||
|
|
||||||
1. Follow the [Atlassian docs](https://confluence.atlassian.com/bitbucket/oauth-on-bitbucket-cloud-238027431.html) to create an OAuth consumer. Make sure you allow `Account/Read` and `Repository/Write` permissions. For the **Callback URL**, enter the address where you access Simple CMS, for example, `https://www.mysite.com/admin/`.
|
1. Follow the [Atlassian docs](https://confluence.atlassian.com/bitbucket/oauth-on-bitbucket-cloud-238027431.html) to create an OAuth consumer. Make sure you allow `Account/Read` and `Repository/Write` permissions. For the **Callback URL**, enter the address where you access Static CMS, for example, `https://www.mysite.com/admin/`.
|
||||||
2. Bitbucket gives you a **Key**. Copy this Key and enter it in your Simple CMS `config.yml` file, along with the following settings:
|
2. Bitbucket gives you a **Key**. Copy this Key and enter it in your Static CMS `config.yml` file, along with the following settings:
|
||||||
|
|
||||||
```yaml
|
```yaml
|
||||||
backend:
|
backend:
|
||||||
|
@ -5,7 +5,7 @@ weight: 10
|
|||||||
---
|
---
|
||||||
Cloudinary is a digital asset management platform with a broad feature set, including support for responsive image generation and url based image transformation. They also provide a powerful media library UI for managing assets, and tools for organizing your assets into a hierarchy.
|
Cloudinary is a digital asset management platform with a broad feature set, including support for responsive image generation and url based image transformation. They also provide a powerful media library UI for managing assets, and tools for organizing your assets into a hierarchy.
|
||||||
|
|
||||||
The Cloudinary media library integration for Simple CMS uses Cloudinary's own media library interface within Simple CMS. To get started, you'll need a Cloudinary account and Simple CMS 2.3.0 or greater.
|
The Cloudinary media library integration for Static CMS uses Cloudinary's own media library interface within Static CMS. To get started, you'll need a Cloudinary account and Static CMS 2.3.0 or greater.
|
||||||
|
|
||||||
## Creating a Cloudinary Account
|
## Creating a Cloudinary Account
|
||||||
|
|
||||||
@ -13,9 +13,9 @@ You can [sign up for Cloudinary](https://cloudinary.com/users/register/free) for
|
|||||||
|
|
||||||
![Cloudinary console screenshot](/img/cloudinary-console-details.png)
|
![Cloudinary console screenshot](/img/cloudinary-console-details.png)
|
||||||
|
|
||||||
## Connecting Cloudinary to Simple CMS
|
## Connecting Cloudinary to Static CMS
|
||||||
|
|
||||||
To use the Cloudinary media library within Simple CMS, you'll need to update your Simple CMS configuration file with the information from your Cloudinary account:
|
To use the Cloudinary media library within Static CMS, you'll need to update your Static CMS configuration file with the information from your Cloudinary account:
|
||||||
|
|
||||||
```yaml
|
```yaml
|
||||||
media_library:
|
media_library:
|
||||||
@ -25,14 +25,14 @@ media_library:
|
|||||||
api_key: your_api_key
|
api_key: your_api_key
|
||||||
```
|
```
|
||||||
|
|
||||||
**Note:** The user must be logged in to the Cloudinary account connected to the `api_key` used in your Simple CMS configuration.
|
**Note:** The user must be logged in to the Cloudinary account connected to the `api_key` used in your Static CMS configuration.
|
||||||
|
|
||||||
### Security Considerations
|
### Security Considerations
|
||||||
Although this setup exposes the `cloud_name` and `api_key` publicly via the `/admin/config.yml` endpoint, this information is not sensitive. Any integration of the Cloudinary media library requires this information to be exposed publicly. To use this library or use the restricted Cloudinary API endpoints, the user must have access to the Cloudinary account login details or the `api_secret` associated with the `cloud_name` and `api_key`.
|
Although this setup exposes the `cloud_name` and `api_key` publicly via the `/admin/config.yml` endpoint, this information is not sensitive. Any integration of the Cloudinary media library requires this information to be exposed publicly. To use this library or use the restricted Cloudinary API endpoints, the user must have access to the Cloudinary account login details or the `api_secret` associated with the `cloud_name` and `api_key`.
|
||||||
|
|
||||||
## Simple CMS configuration options
|
## Static CMS configuration options
|
||||||
|
|
||||||
The following options are specific to the Simple CMS integration for Cloudinary:
|
The following options are specific to the Static CMS integration for Cloudinary:
|
||||||
|
|
||||||
* **`output_filename_only`**: _(default: `false`)_\
|
* **`output_filename_only`**: _(default: `false`)_\
|
||||||
By default, the value provided for a selected image is a complete URL for the asset on Cloudinary's CDN. Setting `output_filename_only` to `true` will instead produce just the filename (e.g. `image.jpg`). This should be `true` if you will be directly embedding cloudinary transformation urls in page templates. Refer to [Inserting Cloudinary URL in page templates](#inserting-cloudinary-url-in-page-templates).
|
By default, the value provided for a selected image is a complete URL for the asset on Cloudinary's CDN. Setting `output_filename_only` to `true` will instead produce just the filename (e.g. `image.jpg`). This should be `true` if you will be directly embedding cloudinary transformation urls in page templates. Refer to [Inserting Cloudinary URL in page templates](#inserting-cloudinary-url-in-page-templates).
|
||||||
@ -43,7 +43,7 @@ The following options are specific to the Simple CMS integration for Cloudinary:
|
|||||||
|
|
||||||
## Cloudinary configuration options
|
## Cloudinary configuration options
|
||||||
|
|
||||||
The following options are used to configure the media library. All options are listed in Cloudinary's [media library documentation](https://cloudinary.com/documentation/media_library_widget#3_set_the_configuration_options), but only options listed below are available or recommended for the Simple CMS integration:
|
The following options are used to configure the media library. All options are listed in Cloudinary's [media library documentation](https://cloudinary.com/documentation/media_library_widget#3_set_the_configuration_options), but only options listed below are available or recommended for the Static CMS integration:
|
||||||
|
|
||||||
### Authentication
|
### Authentication
|
||||||
|
|
||||||
@ -58,7 +58,7 @@ The following options are used to configure the media library. All options are l
|
|||||||
|
|
||||||
## Image transformations
|
## Image transformations
|
||||||
|
|
||||||
The Cloudinary integration allows images to be transformed in two ways: directly within Simple CMS via [Cloudinary's Media Library](#transforming-images-via-media-library), and separately from the CMS via Cloudinary's [dynamic URL's](https://cloudinary.com/documentation/image_transformations#delivering_media_assets_using_dynamic_urls) by [inserting cloudinary urls](#inserting-cloudinary-url-in-page-templates).
|
The Cloudinary integration allows images to be transformed in two ways: directly within Static CMS via [Cloudinary's Media Library](#transforming-images-via-media-library), and separately from the CMS via Cloudinary's [dynamic URL's](https://cloudinary.com/documentation/image_transformations#delivering_media_assets_using_dynamic_urls) by [inserting cloudinary urls](#inserting-cloudinary-url-in-page-templates).
|
||||||
|
|
||||||
### Transforming images via Media Library
|
### Transforming images via Media Library
|
||||||
If you transform and insert images from within the Cloudinary media library, the transformed image URL will be output by default. This gives the editor complete freedom to make changes to the image output.
|
If you transform and insert images from within the Cloudinary media library, the transformed image URL will be output by default. This gives the editor complete freedom to make changes to the image output.
|
||||||
|
@ -88,7 +88,7 @@ A `files` collection contains one or more uniquely configured files. Unlike item
|
|||||||
|
|
||||||
When configuring a `files` collection, configure each file in the collection separately, and list them under the `files` field of the collection. Each file has its own list of `fields` and a unique filepath specified in the `file` field (relative to the base of the repo).
|
When configuring a `files` collection, configure each file in the collection separately, and list them under the `files` field of the collection. Each file has its own list of `fields` and a unique filepath specified in the `file` field (relative to the base of the repo).
|
||||||
|
|
||||||
**Note:** Files listed in a file collection must already exist in the hosted repository branch set in your Simple CMS [backend configuration](/docs/backends-overview). Files must also have a valid value for the file type. For example, an empty file works as valid YAML, but a JSON file must have a non-empty value to be valid, such as an empty object.
|
**Note:** Files listed in a file collection must already exist in the hosted repository branch set in your Static CMS [backend configuration](/docs/backends-overview). Files must also have a valid value for the file type. For example, an empty file works as valid YAML, but a JSON file must have a non-empty value to be valid, such as an empty object.
|
||||||
|
|
||||||
Example:
|
Example:
|
||||||
|
|
||||||
|
@ -5,7 +5,7 @@ title: Configuration Options
|
|||||||
---
|
---
|
||||||
## Configuration File
|
## Configuration File
|
||||||
|
|
||||||
All configuration options for Simple CMS are specified in a `config.yml` file, in the folder where you access the editor UI (usually in the `/admin` folder).
|
All configuration options for Static CMS are specified in a `config.yml` file, in the folder where you access the editor UI (usually in the `/admin` folder).
|
||||||
|
|
||||||
Alternatively, you can specify a custom config file using a link tag:
|
Alternatively, you can specify a custom config file using a link tag:
|
||||||
|
|
||||||
@ -14,7 +14,7 @@ Alternatively, you can specify a custom config file using a link tag:
|
|||||||
<link href="path/to/config.yml" type="text/yaml" rel="cms-config-url">
|
<link href="path/to/config.yml" type="text/yaml" rel="cms-config-url">
|
||||||
```
|
```
|
||||||
|
|
||||||
To see working configuration examples, you can [start from a template](../start-with-a-template) or check out the [CMS demo site](https://cms-demo.netlify.com). (No login required: click the login button and the CMS will open.) You can refer to the demo [configuration code](https://github.com/SimpleCMS/simple-cms/blob/master/dev-test/config.yml) to see how each option was configured.
|
To see working configuration examples, you can [start from a template](../start-with-a-template) or check out the [CMS demo site](https://cms-demo.netlify.com). (No login required: click the login button and the CMS will open.) You can refer to the demo [configuration code](https://github.com/StaticJsCMS/static-cms/blob/master/dev-test/config.yml) to see how each option was configured.
|
||||||
|
|
||||||
You can find details about all configuration options below. Note that [YAML syntax](https://en.wikipedia.org/wiki/YAML#Basic_components) allows lists and objects to be written in block or inline style, and the code samples below include a mix of both.
|
You can find details about all configuration options below. Note that [YAML syntax](https://en.wikipedia.org/wiki/YAML#Basic_components) allows lists and objects to be written in block or inline style, and the code samples below include a mix of both.
|
||||||
|
|
||||||
@ -24,11 +24,11 @@ You can find details about all configuration options below. Note that [YAML synt
|
|||||||
|
|
||||||
The `backend` option specifies how to access the content for your site, including authentication. Full details and code samples can be found in [Backends](/docs/backends-overview).
|
The `backend` option specifies how to access the content for your site, including authentication. Full details and code samples can be found in [Backends](/docs/backends-overview).
|
||||||
|
|
||||||
**Note**: no matter where you access Simple CMS — whether running locally, in a staging environment, or in your published site — it will always fetch and commit files in your hosted repository (for example, on GitHub), on the branch you configured in your Simple CMS config.yml file. This means that content fetched in the admin UI will match the content in the repository, which may be different from your locally running site. It also means that content saved using the admin UI will save directly to the hosted repository, even if you're running the UI locally or in staging. If you want to have your local CMS write to a local repository, try the `local_backend` setting, [currently in beta](/docs/beta-features/#working-with-a-local-git-repository).
|
**Note**: no matter where you access Static CMS — whether running locally, in a staging environment, or in your published site — it will always fetch and commit files in your hosted repository (for example, on GitHub), on the branch you configured in your Static CMS config.yml file. This means that content fetched in the admin UI will match the content in the repository, which may be different from your locally running site. It also means that content saved using the admin UI will save directly to the hosted repository, even if you're running the UI locally or in staging. If you want to have your local CMS write to a local repository, try the `local_backend` setting, [currently in beta](/docs/beta-features/#working-with-a-local-git-repository).
|
||||||
|
|
||||||
## Media and Public Folders
|
## Media and Public Folders
|
||||||
|
|
||||||
Simple CMS users can upload files to your repository using the Media Gallery. The following settings specify where these files are saved, and where they can be accessed on your built site.
|
Static CMS users can upload files to your repository using the Media Gallery. The following settings specify where these files are saved, and where they can be accessed on your built site.
|
||||||
|
|
||||||
### Media Folder
|
### Media Folder
|
||||||
|
|
||||||
@ -116,7 +116,7 @@ locale: 'de'
|
|||||||
And in your custom JavaScript code:
|
And in your custom JavaScript code:
|
||||||
|
|
||||||
```js
|
```js
|
||||||
import CMS, { de } from '@simplecms/simple-cms-core';
|
import CMS, { de } from '@staticcms/core';
|
||||||
|
|
||||||
CMS.registerLocale('de', de);
|
CMS.registerLocale('de', de);
|
||||||
```
|
```
|
||||||
@ -165,7 +165,7 @@ slug:
|
|||||||
|
|
||||||
*This setting is required.*
|
*This setting is required.*
|
||||||
|
|
||||||
The `collections` setting is the heart of your Simple CMS configuration, as it determines how content types and editor fields in the UI generate files and content in your repository. Each collection you configure displays in the left sidebar of the Content page of the editor UI, in the order they are entered into your Simple CMS `config.yml` file.
|
The `collections` setting is the heart of your Static CMS configuration, as it determines how content types and editor fields in the UI generate files and content in your repository. Each collection you configure displays in the left sidebar of the Content page of the editor UI, in the order they are entered into your Static CMS `config.yml` file.
|
||||||
|
|
||||||
`collections` accepts a list of collection objects, each with the following options:
|
`collections` accepts a list of collection objects, each with the following options:
|
||||||
|
|
||||||
@ -196,7 +196,7 @@ The last few options require more detailed information.
|
|||||||
|
|
||||||
### `identifier_field`
|
### `identifier_field`
|
||||||
|
|
||||||
Simple CMS expects every entry to provide a field named `"title"` that serves as an identifier for the entry. The identifier field serves as an entry's title when viewing a list of entries, and is used in [slug](#slug) creation. If you would like to use a field other than `"title"` as the identifier, you can set `identifier_field` to the name of the other field.
|
Static CMS expects every entry to provide a field named `"title"` that serves as an identifier for the entry. The identifier field serves as an entry's title when viewing a list of entries, and is used in [slug](#slug) creation. If you would like to use a field other than `"title"` as the identifier, you can set `identifier_field` to the name of the other field.
|
||||||
|
|
||||||
**Example**
|
**Example**
|
||||||
|
|
||||||
@ -208,7 +208,7 @@ collections:
|
|||||||
|
|
||||||
### `extension` and `format`
|
### `extension` and `format`
|
||||||
|
|
||||||
These settings determine how collection files are parsed and saved. Both are optional—Simple CMS will attempt to infer your settings based on existing items in the collection. If your collection is empty, or you'd like more control, you can set these fields explicitly.
|
These settings determine how collection files are parsed and saved. Both are optional—Static CMS will attempt to infer your settings based on existing items in the collection. If your collection is empty, or you'd like more control, you can set these fields explicitly.
|
||||||
|
|
||||||
`extension` determines the file extension searched for when finding existing entries in a folder collection and it determines the file extension used to save new collection items. It accepts the following values: `yml`, `yaml`, `toml`, `json`, `md`, `markdown`, `html`.
|
`extension` determines the file extension searched for when finding existing entries in a folder collection and it determines the file extension used to save new collection items. It accepts the following values: `yml`, `yaml`, `toml`, `json`, `md`, `markdown`, `html`.
|
||||||
|
|
||||||
@ -265,7 +265,7 @@ slug: "{{year}}-{{month}}-{{day}}_{{fields.slug}}"
|
|||||||
|
|
||||||
### `fields`
|
### `fields`
|
||||||
|
|
||||||
The `fields` option maps editor UI widgets to field-value pairs in the saved file. The order of the fields in your Simple CMS `config.yml` file determines their order in the editor UI and in the saved file.
|
The `fields` option maps editor UI widgets to field-value pairs in the saved file. The order of the fields in your Static CMS `config.yml` file determines their order in the editor UI and in the saved file.
|
||||||
|
|
||||||
`fields` accepts a list of collection objects, each with the following options:
|
`fields` accepts a list of collection objects, each with the following options:
|
||||||
|
|
||||||
|
@ -4,13 +4,13 @@ weight: 20
|
|||||||
group: Contributing
|
group: Contributing
|
||||||
---
|
---
|
||||||
|
|
||||||
We're hoping that Simple CMS will do for the [Jamstack](https://www.jamstack.org) what WordPress did for dynamic sites back in the day. We know we can't do that without building a thriving community of contributors and users, and we'd love to have you join us.
|
We're hoping that Static CMS will do for the [Jamstack](https://www.jamstack.org) what WordPress did for dynamic sites back in the day. We know we can't do that without building a thriving community of contributors and users, and we'd love to have you join us.
|
||||||
|
|
||||||
## Getting started with contributing
|
## Getting started with contributing
|
||||||
Being a developer is not a requirement for contributing to Simple CMS, you only need the desire, a web browser, and a [GitHub account](https://github.com/join). The GitHub repo has a step-by-step [guide](https://github.com/SimpleCMS/simple-cms/blob/master/CONTRIBUTING.md) to get started with the code.
|
Being a developer is not a requirement for contributing to Static CMS, you only need the desire, a web browser, and a [GitHub account](https://github.com/join). The GitHub repo has a step-by-step [guide](https://github.com/StaticJsCMS/static-cms/blob/master/CONTRIBUTING.md) to get started with the code.
|
||||||
|
|
||||||
## The basics of the Simple CMS docs
|
## The basics of the Static CMS docs
|
||||||
The documentation for Simple CMS is written in [Markdown](http://daringfireball.net/projects/markdown/) (a good cheatsheet on Markdown is [here](https://github.com/adam-p/markdown-here/wiki/Markdown-Cheatsheet)), with the source residing on [GitHub](https://github.com/SimpleCMS/simple-cms) in the `/website/content/docs` folder.
|
The documentation for Static CMS is written in [Markdown](http://daringfireball.net/projects/markdown/) (a good cheatsheet on Markdown is [here](https://github.com/adam-p/markdown-here/wiki/Markdown-Cheatsheet)), with the source residing on [GitHub](https://github.com/StaticJsCMS/static-cms) in the `/website/content/docs` folder.
|
||||||
|
|
||||||
The GitHub website allows you to submit issues, work with files, search for content, and browse changes that have been submitted in the past and those that are being submitted now (aka Pull Requests).
|
The GitHub website allows you to submit issues, work with files, search for content, and browse changes that have been submitted in the past and those that are being submitted now (aka Pull Requests).
|
||||||
|
|
||||||
@ -18,18 +18,18 @@ The GitHub website allows you to submit issues, work with files, search for cont
|
|||||||
A [style guide](/docs/writing-style-guide/) is available to help provide context around grammar, code styling, syntax, etc.
|
A [style guide](/docs/writing-style-guide/) is available to help provide context around grammar, code styling, syntax, etc.
|
||||||
|
|
||||||
## Filing issues
|
## Filing issues
|
||||||
If you have a GitHub account, you can file an [issue](https://github.com/SimpleCMS/simple-cms/issues) (aka bug report) against the Simple CMS docs. Even if you're not able to, or don't know how to, fix the issue (see [Improve existing content](#improve-existing-content)), it helps to start the conversation.
|
If you have a GitHub account, you can file an [issue](https://github.com/StaticJsCMS/static-cms/issues) (aka bug report) against the Static CMS docs. Even if you're not able to, or don't know how to, fix the issue (see [Improve existing content](#improve-existing-content)), it helps to start the conversation.
|
||||||
|
|
||||||
When filing an issue, it is important to remember the [Code of Conduct](https://github.com/SimpleCMS/simple-cms/blob/master/CODE_OF_CONDUCT.md).
|
When filing an issue, it is important to remember the [Code of Conduct](https://github.com/StaticJsCMS/static-cms/blob/master/CODE_OF_CONDUCT.md).
|
||||||
|
|
||||||
## Improve existing content
|
## Improve existing content
|
||||||
If you are able to offer up a change to existing content, we welcome this. Once you've forked the repo, and changed the content, you would file a pull request (PR). The repo [Contributing file](https://github.com/SimpleCMS/simple-cms/blob/master/CONTRIBUTING.md) lays out the correct format for PRs.
|
If you are able to offer up a change to existing content, we welcome this. Once you've forked the repo, and changed the content, you would file a pull request (PR). The repo [Contributing file](https://github.com/StaticJsCMS/static-cms/blob/master/CONTRIBUTING.md) lays out the correct format for PRs.
|
||||||
|
|
||||||
## Other places to get involved
|
## Other places to get involved
|
||||||
While we work on building this page (and you can help!), here are some links with more information about getting involved:
|
While we work on building this page (and you can help!), here are some links with more information about getting involved:
|
||||||
|
|
||||||
* [Setup instructions and Contribution Guidelines](https://github.com/SimpleCMS/simple-cms/blob/master/CONTRIBUTING.md)
|
* [Setup instructions and Contribution Guidelines](https://github.com/StaticJsCMS/static-cms/blob/master/CONTRIBUTING.md)
|
||||||
* [Join our Community Chat](https://simplecms.github.io/simple-cms/chat)
|
* [Join our Community Chat](https://staticjscms.github.io/static-cms/chat)
|
||||||
* [Code of Conduct](https://github.com/SimpleCMS/simple-cms/blob/master/CODE_OF_CONDUCT.md)
|
* [Code of Conduct](https://github.com/StaticJsCMS/static-cms/blob/master/CODE_OF_CONDUCT.md)
|
||||||
* [Project Milestones](https://github.com/SimpleCMS/simple-cms/milestones)
|
* [Project Milestones](https://github.com/StaticJsCMS/static-cms/milestones)
|
||||||
* [Good First Issues](https://github.com/SimpleCMS/simple-cms/issues?q=is%3Aissue+is%3Aopen+sort%3Aupdated-desc+label%3A%22good+first+issue%22+-label%3Aclaimed)
|
* [Good First Issues](https://github.com/StaticJsCMS/static-cms/issues?q=is%3Aissue+is%3Aopen+sort%3Aupdated-desc+label%3A%22good+first+issue%22+-label%3Aclaimed)
|
||||||
|
@ -3,7 +3,7 @@ group: Fields
|
|||||||
weight: 20
|
weight: 20
|
||||||
title: Creating Custom Widgets
|
title: Creating Custom Widgets
|
||||||
---
|
---
|
||||||
The Simple CMS exposes a `window.CMS` a global object that you can use to register custom widgets, previews, and editor plugins. The same object is also the default export if you import Simple CMS as an npm module. The available widget extension methods are:
|
The Static CMS exposes a `window.CMS` a global object that you can use to register custom widgets, previews, and editor plugins. The same object is also the default export if you import Static CMS as an npm module. The available widget extension methods are:
|
||||||
|
|
||||||
* **registerWidget:** registers a custom widget.
|
* **registerWidget:** registers a custom widget.
|
||||||
* **registerEditorComponent:** adds a block component to the Markdown editor.
|
* **registerEditorComponent:** adds a block component to the Markdown editor.
|
||||||
@ -12,7 +12,7 @@ The Simple CMS exposes a `window.CMS` a global object that you can use to regist
|
|||||||
|
|
||||||
The `registerWidget` requires you to provide a React component. If you have a build process in place for your project, it is possible to integrate with this build process.
|
The `registerWidget` requires you to provide a React component. If you have a build process in place for your project, it is possible to integrate with this build process.
|
||||||
|
|
||||||
However, although possible, it may be cumbersome or even impractical to add a React build phase. For this reason, Simple CMS exposes two constructs globally to allow you to create components inline: ‘createClass’ and ‘h’ (alias for React.createElement).
|
However, although possible, it may be cumbersome or even impractical to add a React build phase. For this reason, Static CMS exposes two constructs globally to allow you to create components inline: ‘createClass’ and ‘h’ (alias for React.createElement).
|
||||||
|
|
||||||
## `registerWidget`
|
## `registerWidget`
|
||||||
|
|
||||||
@ -23,7 +23,7 @@ Register a custom widget.
|
|||||||
CMS.registerWidget(name, control, [preview], [schema]);
|
CMS.registerWidget(name, control, [preview], [schema]);
|
||||||
|
|
||||||
// Using npm module import
|
// Using npm module import
|
||||||
import CMS from '@simplecms/simple-cms-core';
|
import CMS from '@staticcms/core';
|
||||||
CMS.registerWidget(name, control, [preview], [schema]);
|
CMS.registerWidget(name, control, [preview], [schema]);
|
||||||
```
|
```
|
||||||
|
|
||||||
@ -41,7 +41,7 @@ CMS.registerWidget(name, control, [preview], [schema]);
|
|||||||
`admin/index.html`
|
`admin/index.html`
|
||||||
|
|
||||||
```html
|
```html
|
||||||
<script src="https://unpkg.com/@simplecms/simple-cms-core@%5E0.1.0/dist/simple-cms-core.js"></script>
|
<script src="https://unpkg.com/@staticcms/core@%5E0.1.0/dist/static-cms-core.js"></script>
|
||||||
<script>
|
<script>
|
||||||
var CategoriesControl = createClass({
|
var CategoriesControl = createClass({
|
||||||
handleChange: function(e) {
|
handleChange: function(e) {
|
||||||
@ -116,7 +116,7 @@ CMS.registerEditorComponent(definition)
|
|||||||
**Example:**
|
**Example:**
|
||||||
|
|
||||||
```html
|
```html
|
||||||
<script src="https://unpkg.com/@simplecms/simple-cms-core@%5E0.1.0/dist/simple-cms-core.js"></script>
|
<script src="https://unpkg.com/@staticcms/core@%5E0.1.0/dist/static-cms-core.js"></script>
|
||||||
<script>
|
<script>
|
||||||
CMS.registerEditorComponent({
|
CMS.registerEditorComponent({
|
||||||
// Internal id of the component
|
// Internal id of the component
|
||||||
@ -240,7 +240,7 @@ You can also return a promise from `isValid`. While the promise is pending, the
|
|||||||
|
|
||||||
## Writing custom widgets as a separate package
|
## Writing custom widgets as a separate package
|
||||||
|
|
||||||
Widgets are inputs for the Simple CMS editor interface. It's a React component that receives user input and outputs a serialized value. Those are the only rules - the component can be extremely simple, like text input, or extremely complicated, like a full-blown markdown editor. They can make calls to external services, and generally do anything that JavaScript can do.
|
Widgets are inputs for the Static CMS editor interface. It's a React component that receives user input and outputs a serialized value. Those are the only rules - the component can be extremely simple, like text input, or extremely complicated, like a full-blown markdown editor. They can make calls to external services, and generally do anything that JavaScript can do.
|
||||||
|
|
||||||
For writing custom widgets as a separate package you should follow these steps:
|
For writing custom widgets as a separate package you should follow these steps:
|
||||||
|
|
||||||
@ -263,7 +263,7 @@ For writing custom widgets as a separate package you should follow these steps:
|
|||||||
5. In order to build React components, we need to set up a build step. We'll be using Webpack. Please run the following commands to install the required dependencies:
|
5. In order to build React components, we need to set up a build step. We'll be using Webpack. Please run the following commands to install the required dependencies:
|
||||||
|
|
||||||
```javascript
|
```javascript
|
||||||
npm install --save-dev @simplecms/simple-cms-core babel-loader@7 babel-core babel-plugin-transform-class-properties babel-plugin-transform-export-extensions babel-plugin-transform-object-rest-spread babel-preset-env babel-preset-react cross-env css-loader html-webpack-plugin react source-map-loader style-loader webpack webpack-cli webpack-serve
|
npm install --save-dev @staticcms/core babel-loader@7 babel-core babel-plugin-transform-class-properties babel-plugin-transform-export-extensions babel-plugin-transform-object-rest-spread babel-preset-env babel-preset-react cross-env css-loader html-webpack-plugin react source-map-loader style-loader webpack webpack-cli webpack-serve
|
||||||
```
|
```
|
||||||
|
|
||||||
```javascript
|
```javascript
|
||||||
@ -276,23 +276,23 @@ Here is the content of `package.json` that you will have at the end:
|
|||||||
|
|
||||||
```javascript
|
```javascript
|
||||||
{
|
{
|
||||||
"name": "simple-cms-widget-starter",
|
"name": "static-cms-widget-starter",
|
||||||
"description": "A boilerplate for creating Simple CMS widgets.",
|
"description": "A boilerplate for creating Static CMS widgets.",
|
||||||
"author": "name of developer",
|
"author": "name of developer",
|
||||||
"keywords": [
|
"keywords": [
|
||||||
"simple",
|
"simple",
|
||||||
"simple-cms",
|
"static-cms",
|
||||||
"cms",
|
"cms",
|
||||||
"widget",
|
"widget",
|
||||||
"starter",
|
"starter",
|
||||||
"boilerplate"
|
"boilerplate"
|
||||||
],
|
],
|
||||||
"version": "0.0.1",
|
"version": "0.0.1",
|
||||||
"homepage": "https://github.com/SimpleCMS/simple-cms-widget-starter",
|
"homepage": "https://github.com/StaticJsCMS/static-cms-widget-starter",
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
"main": "dist/main.js",
|
"main": "dist/main.js",
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"@simplecms/simple-cms-core": "^0.1.0",
|
"@staticcms/core": "^0.1.0",
|
||||||
"babel-loader": "^7.1.4",
|
"babel-loader": "^7.1.4",
|
||||||
"babel-plugin-transform-class-properties": "^6.24.1",
|
"babel-plugin-transform-class-properties": "^6.24.1",
|
||||||
"babel-plugin-transform-export-extensions": "^6.22.0",
|
"babel-plugin-transform-export-extensions": "^6.22.0",
|
||||||
@ -474,7 +474,7 @@ window.CMS_MANUAL_INIT = true
|
|||||||
|
|
||||||
```javascript
|
```javascript
|
||||||
import './bootstrap.js'
|
import './bootstrap.js'
|
||||||
import CMS, { init } from '@simplecms/simple-cms-core'
|
import CMS, { init } from '@staticcms/core'
|
||||||
import { Control, Preview } from '../src'
|
import { Control, Preview } from '../src'
|
||||||
|
|
||||||
const config = {
|
const config = {
|
||||||
@ -502,9 +502,9 @@ CMS.registerWidget('test', Control, Preview)
|
|||||||
init({ config })
|
init({ config })
|
||||||
```
|
```
|
||||||
|
|
||||||
### [](https://github.com/SimpleCMS/simple-cms-widget-starter#development)Development
|
### [](https://github.com/StaticJsCMS/static-cms-widget-starter#development)Development
|
||||||
|
|
||||||
To run a copy of Simple CMS with your widget for development, use the start script:
|
To run a copy of Static CMS with your widget for development, use the start script:
|
||||||
|
|
||||||
```javascript
|
```javascript
|
||||||
npm start
|
npm start
|
||||||
@ -512,7 +512,7 @@ npm start
|
|||||||
|
|
||||||
Your widget source is in the `src` directory, where there are separate files for the `Control` and `Preview` components.
|
Your widget source is in the `src` directory, where there are separate files for the `Control` and `Preview` components.
|
||||||
|
|
||||||
### [](https://github.com/SimpleCMS/simple-cms-widget-starter#production--publishing)Production & Publishing
|
### [](https://github.com/StaticJsCMS/static-cms-widget-starter#production--publishing)Production & Publishing
|
||||||
|
|
||||||
You'll want to take a few steps before publishing a production built package to npm:
|
You'll want to take a few steps before publishing a production built package to npm:
|
||||||
|
|
||||||
@ -520,12 +520,12 @@ You'll want to take a few steps before publishing a production built package to
|
|||||||
|
|
||||||
```json
|
```json
|
||||||
{
|
{
|
||||||
"name": "simple-cms-widget-starter",
|
"name": "static-cms-widget-starter",
|
||||||
"description": "A boilerplate for creating Simple CMS widgets.",
|
"description": "A boilerplate for creating Static CMS widgets.",
|
||||||
"author": "name of developer",
|
"author": "name of developer",
|
||||||
"keywords": [
|
"keywords": [
|
||||||
"simple",
|
"simple",
|
||||||
"simple-cms",
|
"static-cms",
|
||||||
"cms",
|
"cms",
|
||||||
"widget",
|
"widget",
|
||||||
"starter",
|
"starter",
|
||||||
@ -535,9 +535,9 @@ You'll want to take a few steps before publishing a production built package to
|
|||||||
// ... rest
|
// ... rest
|
||||||
}
|
}
|
||||||
```
|
```
|
||||||
2. For discoverability, ensure that your package name follows the pattern `simple-cms-widget-<name>`.
|
2. For discoverability, ensure that your package name follows the pattern `static-cms-widget-<name>`.
|
||||||
3. Delete this `README.md`, rename `README_TEMPLATE.md` to `README.md`, and update the new file for your specific widget.
|
3. Delete this `README.md`, rename `README_TEMPLATE.md` to `README.md`, and update the new file for your specific widget.
|
||||||
4. Rename the exports in `src/index.js`. For example, if your widget is `simple-cms-widget-awesome`, you would do:
|
4. Rename the exports in `src/index.js`. For example, if your widget is `static-cms-widget-awesome`, you would do:
|
||||||
|
|
||||||
```javascript
|
```javascript
|
||||||
if (typeof window !== 'undefined') {
|
if (typeof window !== 'undefined') {
|
||||||
|
@ -4,14 +4,14 @@ weight: 50
|
|||||||
group: Customization
|
group: Customization
|
||||||
---
|
---
|
||||||
|
|
||||||
The Simple CMS exposes a `window.CMS` global object that you can use to register custom widgets, previews and editor plugins. The available customization methods are:
|
The Static CMS exposes a `window.CMS` global object that you can use to register custom widgets, previews and editor plugins. The available customization methods are:
|
||||||
|
|
||||||
* **registerPreviewStyle:** Register a custom stylesheet to use on the preview pane.
|
* **registerPreviewStyle:** Register a custom stylesheet to use on the preview pane.
|
||||||
* **registerPreviewTemplate:** Registers a template for a collection.
|
* **registerPreviewTemplate:** Registers a template for a collection.
|
||||||
|
|
||||||
### React Components inline interaction
|
### React Components inline interaction
|
||||||
|
|
||||||
Simple CMS is a collection of React components and exposes two constructs globally to allow you to create components inline: ‘createClass’ and ‘h’ (alias for React.createElement).
|
Static CMS is a collection of React components and exposes two constructs globally to allow you to create components inline: ‘createClass’ and ‘h’ (alias for React.createElement).
|
||||||
|
|
||||||
## `registerPreviewStyle`
|
## `registerPreviewStyle`
|
||||||
|
|
||||||
@ -29,7 +29,7 @@ CMS.registerPreviewStyle(file);
|
|||||||
|
|
||||||
```html
|
```html
|
||||||
// index.html
|
// index.html
|
||||||
<script src="https://unpkg.com/@simplecms/simple-cms-core@%5E0.1.0/dist/simple-cms-core.js"></script>
|
<script src="https://unpkg.com/@staticcms/core@%5E0.1.0/dist/static-cms-core.js"></script>
|
||||||
<script>
|
<script>
|
||||||
CMS.registerPreviewStyle("/example.css");
|
CMS.registerPreviewStyle("/example.css");
|
||||||
</script>
|
</script>
|
||||||
@ -69,7 +69,7 @@ Registers a template for a folder collection or an individual file in a file col
|
|||||||
**Example:**
|
**Example:**
|
||||||
|
|
||||||
```html
|
```html
|
||||||
<script src="https://unpkg.com/@simplecms/simple-cms-core@%5E0.1.0/dist/simple-cms-core.js"></script>
|
<script src="https://unpkg.com/@staticcms/core@%5E0.1.0/dist/static-cms-core.js"></script>
|
||||||
<script>
|
<script>
|
||||||
var PostPreview = createClass({
|
var PostPreview = createClass({
|
||||||
render: function() {
|
render: function() {
|
||||||
@ -92,7 +92,7 @@ Registers a template for a folder collection or an individual file in a file col
|
|||||||
|
|
||||||
### Lists and Objects
|
### Lists and Objects
|
||||||
The API for accessing the individual fields of list- and object-type entries is similar to the API for accessing fields in standard entries, but there are a few key differences. Access to these nested fields is facilitated through the `widgetsFor` function, which is passed to the preview template component during render.
|
The API for accessing the individual fields of list- and object-type entries is similar to the API for accessing fields in standard entries, but there are a few key differences. Access to these nested fields is facilitated through the `widgetsFor` function, which is passed to the preview template component during render.
|
||||||
**Note**: as is often the case with the Simple CMS API, arrays and objects are created with Immutable.js. If some of the methods that we use are unfamiliar, such as `getIn`, check out [their docs](https://facebook.github.io/immutable-js/docs/#/) to get a better understanding.
|
**Note**: as is often the case with the Static CMS API, arrays and objects are created with Immutable.js. If some of the methods that we use are unfamiliar, such as `getIn`, check out [their docs](https://facebook.github.io/immutable-js/docs/#/) to get a better understanding.
|
||||||
**List Example:**
|
**List Example:**
|
||||||
```html
|
```html
|
||||||
<script>
|
<script>
|
||||||
|
@ -3,7 +3,7 @@ group: Guides
|
|||||||
weight: 80
|
weight: 80
|
||||||
title: Docusaurus
|
title: Docusaurus
|
||||||
---
|
---
|
||||||
This guide instructs you on how to integrate Simple CMS with Docusaurus.
|
This guide instructs you on how to integrate Static CMS with Docusaurus.
|
||||||
|
|
||||||
### Before you begin
|
### Before you begin
|
||||||
|
|
||||||
@ -33,7 +33,7 @@ The development server now serves your website at `http://localhost:3000`. As yo
|
|||||||
|
|
||||||
## Push your project to GitHub
|
## Push your project to GitHub
|
||||||
|
|
||||||
Simple CMS requires a [backend](https://www.simplecms.github.io/simple-cms/docs/backends-overview/) to store content. Simple CMS supports using Git hosts, like GitHub or GitLab, as backends. This guide uses GitHub.
|
Static CMS requires a [backend](https://www.staticjscms.github.io/static-cms/docs/backends-overview/) to store content. Static CMS supports using Git hosts, like GitHub or GitLab, as backends. This guide uses GitHub.
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
# 1. Initialize your local Git repository.
|
# 1. Initialize your local Git repository.
|
||||||
@ -83,7 +83,7 @@ Choose the default option for everything else.
|
|||||||
|
|
||||||
Your website is now deployed. Netlify provides you with a randomly generated domain name. Run `netlify open --site` to view your deployed site.
|
Your website is now deployed. Netlify provides you with a randomly generated domain name. Run `netlify open --site` to view your deployed site.
|
||||||
|
|
||||||
## Add Simple CMS to your project
|
## Add Static CMS to your project
|
||||||
|
|
||||||
### Before you begin
|
### Before you begin
|
||||||
|
|
||||||
@ -161,13 +161,13 @@ touch index.html
|
|||||||
<title>Content Manager</title>
|
<title>Content Manager</title>
|
||||||
</head>
|
</head>
|
||||||
<body>
|
<body>
|
||||||
<!-- Include the script that builds the page and powers Simple CMS -->
|
<!-- Include the script that builds the page and powers Static CMS -->
|
||||||
<script src="https://unpkg.com/@simplecms/simple-cms-core@%5E0.1.0/dist/simple-cms-core.js"></script>
|
<script src="https://unpkg.com/@staticcms/core@%5E0.1.0/dist/static-cms-core.js"></script>
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
```
|
```
|
||||||
|
|
||||||
`index.html` displays the Simple CMS admin interface. You'll use the admin interface to edit your blog posts.
|
`index.html` displays the Static CMS admin interface. You'll use the admin interface to edit your blog posts.
|
||||||
|
|
||||||
</li>
|
</li>
|
||||||
|
|
||||||
@ -209,7 +209,7 @@ collections:
|
|||||||
- { name: imageUrl, label: ImageURL, widget: string }
|
- { name: imageUrl, label: ImageURL, widget: string }
|
||||||
```
|
```
|
||||||
|
|
||||||
`config.yml` specifies what kind of content your blog posts have. The content specification enables Simple CMS to edit existing posts and create new ones with the same format. To learn more, read about Simple CMS' [](https://www.simplecms.github.io/simple-cms/docs/configuration-options/)[Configuration options](https://www.simplecms.github.io/simple-cms/docs/configuration-options/).
|
`config.yml` specifies what kind of content your blog posts have. The content specification enables Static CMS to edit existing posts and create new ones with the same format. To learn more, read about Static CMS' [](https://www.staticjscms.github.io/static-cms/docs/configuration-options/)[Configuration options](https://www.staticjscms.github.io/static-cms/docs/configuration-options/).
|
||||||
</li>
|
</li>
|
||||||
|
|
||||||
<li>
|
<li>
|
||||||
@ -224,7 +224,7 @@ You can now view and edit `2021-11-15-first-blog-post.md` through the admin inte
|
|||||||
|
|
||||||
```bash
|
```bash
|
||||||
git add .
|
git add .
|
||||||
git commit -m "Add Simple CMS"
|
git commit -m "Add Static CMS"
|
||||||
git push
|
git push
|
||||||
```
|
```
|
||||||
|
|
||||||
@ -236,7 +236,7 @@ Netlify builds and deploys your new changes.
|
|||||||
|
|
||||||
## Add GitHub as an authentication provider
|
## Add GitHub as an authentication provider
|
||||||
|
|
||||||
Before you can access `/admin/` through your Netlify domain, you need to set up an authentication provider. The authentication provider allows Simple CMS to determine whether users have read and write access to `/admin/`. This guide uses GitHub credentials for authentication.
|
Before you can access `/admin/` through your Netlify domain, you need to set up an authentication provider. The authentication provider allows Static CMS to determine whether users have read and write access to `/admin/`. This guide uses GitHub credentials for authentication.
|
||||||
|
|
||||||
### Configure GitHub
|
### Configure GitHub
|
||||||
|
|
||||||
|
@ -8,7 +8,7 @@ Do you have a great, open source example? Submit a pull request to this page!
|
|||||||
|
|
||||||
Example | Tools | Type | Source | More info |
|
Example | Tools | Type | Source | More info |
|
||||||
--- | --- | --- | --- | ---
|
--- | --- | --- | --- | ---
|
||||||
[Gatsby & Simple CMS Meetup Group Template](https://github.com/robertcoopercode/gatsby-netlify-cms) | Gatsby | demo | [robertcoopercode/gatsby-netlify-cms](https://github.com/robertcoopercode/gatsby-netlify-cms) | [blog post](https://blog.logrocket.com/gatsby-netlify-cms-a-perfect-pairing-d50d59d16f67)
|
[Gatsby & Static CMS Meetup Group Template](https://github.com/robertcoopercode/gatsby-netlify-cms) | Gatsby | demo | [robertcoopercode/gatsby-netlify-cms](https://github.com/robertcoopercode/gatsby-netlify-cms) | [blog post](https://blog.logrocket.com/gatsby-netlify-cms-a-perfect-pairing-d50d59d16f67)
|
||||||
[This Developing Journey](https://briandouglas.me) | middleman | blog | [bdougie/blog](https://github.com/bdougie/blog) | [blog post](https://www.netlify.com/blog/2017/04/20/creating-a-blog-with-middleman-and-netlify-cms/)
|
[This Developing Journey](https://briandouglas.me) | middleman | blog | [bdougie/blog](https://github.com/bdougie/blog) | [blog post](https://www.netlify.com/blog/2017/04/20/creating-a-blog-with-middleman-and-netlify-cms/)
|
||||||
[Jamstack Recipes](https://jamstack-cms.netlify.com) | Hugo, Azure | demo | [hlaueriksson/jamstack-cms](https://github.com/hlaueriksson/jamstack-cms) | [blog post](http://conductofcode.io/post/managing-content-for-a-jamstack-site-with-netlify-cms/)
|
[Jamstack Recipes](https://jamstack-cms.netlify.com) | Hugo, Azure | demo | [hlaueriksson/jamstack-cms](https://github.com/hlaueriksson/jamstack-cms) | [blog post](http://conductofcode.io/post/managing-content-for-a-jamstack-site-with-netlify-cms/)
|
||||||
[Bael](https://bael-theme.jake101.com/) | Vue, Nuxt | blog | [jake-101/bael-template](https://github.com/jake-101/bael-template) | [blog post](https://bael-theme.jake101.com/blog/2018-06-19-top-10-reasons-why)
|
[Bael](https://bael-theme.jake101.com/) | Vue, Nuxt | blog | [jake-101/bael-template](https://github.com/jake-101/bael-template) | [blog post](https://bael-theme.jake101.com/blog/2018-06-19-top-10-reasons-why)
|
||||||
@ -24,12 +24,12 @@ Example | Tools | Type | Source | More info |
|
|||||||
[Jigsaw Blog Starter Template Demo](https://jigsaw-blog-netlify-netlifycms-template.netlify.com/) | Jigsaw | demo | [erickpatrick/jigsaw-blog-netlify-netlifycms-template](https://github.com/erickpatrick/jigsaw-blog-netlify-netlifycms-template) | [blog post](https://www.erickpatrick.net/blog/augmenting-tightenco-jigsaw-with-netlifycms/)
|
[Jigsaw Blog Starter Template Demo](https://jigsaw-blog-netlify-netlifycms-template.netlify.com/) | Jigsaw | demo | [erickpatrick/jigsaw-blog-netlify-netlifycms-template](https://github.com/erickpatrick/jigsaw-blog-netlify-netlifycms-template) | [blog post](https://www.erickpatrick.net/blog/augmenting-tightenco-jigsaw-with-netlifycms/)
|
||||||
[Nuxt & NetlifyCMS Boilerplate](https://nuxt-netlifycms-boilerplate.netlify.com/) | Vue, Nuxt | demo | [tylermercer/nuxt-netlifycms-boilerplate](https://github.com/tylermercer/nuxt-netlifycms-boilerplate) | [read me](https://github.com/tylermercer/nuxt-netlifycms-boilerplate)
|
[Nuxt & NetlifyCMS Boilerplate](https://nuxt-netlifycms-boilerplate.netlify.com/) | Vue, Nuxt | demo | [tylermercer/nuxt-netlifycms-boilerplate](https://github.com/tylermercer/nuxt-netlifycms-boilerplate) | [read me](https://github.com/tylermercer/nuxt-netlifycms-boilerplate)
|
||||||
[Next.js demo](https://netlifycms-nextjs.netlify.com) | Next.js | blog | [masives/netlifycms-nextjs](https://github.com/masives/netlifycms-nextjs) | [read me](https://github.com/masives/netlifycms-nextjs)
|
[Next.js demo](https://netlifycms-nextjs.netlify.com) | Next.js | blog | [masives/netlifycms-nextjs](https://github.com/masives/netlifycms-nextjs) | [read me](https://github.com/masives/netlifycms-nextjs)
|
||||||
[Delog - Jamstack Blog with Simple CMS](https://delog-w3layouts.netlify.com/) | Gatsby, Netlify-CMS | demo | [W3Layouts/gatsby-starter-delog](https://github.com/W3Layouts/gatsby-starter-delog) | [blog post](https://w3layouts.com/articles/delog-gatsby-starter-netlify-cms/)
|
[Delog - Jamstack Blog with Static CMS](https://delog-w3layouts.netlify.com/) | Gatsby, Netlify-CMS | demo | [W3Layouts/gatsby-starter-delog](https://github.com/W3Layouts/gatsby-starter-delog) | [blog post](https://w3layouts.com/articles/delog-gatsby-starter-netlify-cms/)
|
||||||
[Simple CMS template for Gridsome](https://netlifycms-gridsome.suits.at/) | Gridsome, Vue | demo | [suits-at/netlifycms-gridsome](https://github.com/suits-at/netlifycms-gridsome) | [read me](https://github.com/suits-at/netlifycms-gridsome)
|
[Static CMS template for Gridsome](https://netlifycms-gridsome.suits.at/) | Gridsome, Vue | demo | [suits-at/netlifycms-gridsome](https://github.com/suits-at/netlifycms-gridsome) | [read me](https://github.com/suits-at/netlifycms-gridsome)
|
||||||
[Next.js blogging template for Netlify](https://nextjs-netlify-blog-template.netlify.app/) | Next.js, Netlify | blog | [wutali/nextjs-netlify-blog-template](https://github.com/wutali/nextjs-netlify-blog-template) | [read me](https://github.com/wutali/nextjs-netlify-blog-template)
|
[Next.js blogging template for Netlify](https://nextjs-netlify-blog-template.netlify.app/) | Next.js, Netlify | blog | [wutali/nextjs-netlify-blog-template](https://github.com/wutali/nextjs-netlify-blog-template) | [read me](https://github.com/wutali/nextjs-netlify-blog-template)
|
||||||
[Simple CMS and OAuth server on AWS](https://github.com/pulumi/examples/tree/master/aws-ts-netlify-cms-and-oauth) | Netlify, Pulumi, AWS | blog | [pulumi/examples/aws-ts-netlify-cms-and-oauth](https://github.com/pulumi/examples/tree/master/aws-ts-netlify-cms-and-oauth) | [blog post](https://www.pulumi.com/blog/deploying-the-infrastructure-of-oauth-server-for-cms-app/)
|
[Static CMS and OAuth server on AWS](https://github.com/pulumi/examples/tree/master/aws-ts-netlify-cms-and-oauth) | Netlify, Pulumi, AWS | blog | [pulumi/examples/aws-ts-netlify-cms-and-oauth](https://github.com/pulumi/examples/tree/master/aws-ts-netlify-cms-and-oauth) | [blog post](https://www.pulumi.com/blog/deploying-the-infrastructure-of-oauth-server-for-cms-app/)
|
||||||
[Eleventy Starter Boilerplate](https://creativedesignsguru.com/demo/Eleventy-Starter-Boilerplate/eleventy-starter-boilerplate-presentation/) | Eleventy, Netlify | demo | [ixartz/Eleventy-Starter-Boilerplate](https://github.com/ixartz/Eleventy-Starter-Boilerplate) | [read me](https://github.com/ixartz/Eleventy-Starter-Boilerplate)
|
[Eleventy Starter Boilerplate](https://creativedesignsguru.com/demo/Eleventy-Starter-Boilerplate/eleventy-starter-boilerplate-presentation/) | Eleventy, Netlify | demo | [ixartz/Eleventy-Starter-Boilerplate](https://github.com/ixartz/Eleventy-Starter-Boilerplate) | [read me](https://github.com/ixartz/Eleventy-Starter-Boilerplate)
|
||||||
[Nuxt, Tailwind & NetlifyCMS Boilerplate](https://ntn-boilerplate.netlify.app/) | Vue, Nuxt | demo | [Knogobert/ntn-boilerplate](https://github.com/Knogobert/ntn-boilerplate) | [read me](https://github.com/Knogobert/ntn-boilerplate#readme)
|
[Nuxt, Tailwind & NetlifyCMS Boilerplate](https://ntn-boilerplate.netlify.app/) | Vue, Nuxt | demo | [Knogobert/ntn-boilerplate](https://github.com/Knogobert/ntn-boilerplate) | [read me](https://github.com/Knogobert/ntn-boilerplate#readme)
|
||||||
[Gatsby & Simple CMS Personal Portfolio](https://kind-mestorf-5a2bc0.netlify.com/) | Gatsby | portfolio | [EarlGeorge/React-Gatsby](https://github.com/EarlGeorge/React-Gatsby) | [read me](https://github.com/EarlGeorge/React-Gatsby/blob/master/README.md)
|
[Gatsby & Static CMS Personal Portfolio](https://kind-mestorf-5a2bc0.netlify.com/) | Gatsby | portfolio | [EarlGeorge/React-Gatsby](https://github.com/EarlGeorge/React-Gatsby) | [read me](https://github.com/EarlGeorge/React-Gatsby/blob/master/README.md)
|
||||||
[Gatsby, Tailwind CSS & NetlifyCMS Starter](https://infallible-varahamihira-058515.netlify.app/) | Gatsby v3, Netlify-CMS, Tailwind CSS | demo | [jimmybutton/gatsby-netlifycms-tailwind-starter](https://github.com/jimmybutton/gatsby-netlifycms-tailwind-starter) | [read me](https://github.com/jimmybutton/gatsby-netlifycms-tailwind-starter#readme)
|
[Gatsby, Tailwind CSS & NetlifyCMS Starter](https://infallible-varahamihira-058515.netlify.app/) | Gatsby v3, Netlify-CMS, Tailwind CSS | demo | [jimmybutton/gatsby-netlifycms-tailwind-starter](https://github.com/jimmybutton/gatsby-netlifycms-tailwind-starter) | [read me](https://github.com/jimmybutton/gatsby-netlifycms-tailwind-starter#readme)
|
||||||
[Metalsmith NetlifyCMS Starter](https://metalsmith-netlify-starter.netlify.app/) | Metalsmith and Netlify-CMS | demo | [metalsmith-netlify-starter](https://github.com/wernerglinka/metalsmith-netlify-starter) | [read me](https://github.com/wernerglinka/metalsmith-netlify-starter#readme)
|
[Metalsmith NetlifyCMS Starter](https://metalsmith-netlify-starter.netlify.app/) | Metalsmith and Netlify-CMS | demo | [metalsmith-netlify-starter](https://github.com/wernerglinka/metalsmith-netlify-starter) | [read me](https://github.com/wernerglinka/metalsmith-netlify-starter#readme)
|
@ -3,7 +3,7 @@ title: Gatsby
|
|||||||
group: Guides
|
group: Guides
|
||||||
weight: 10
|
weight: 10
|
||||||
---
|
---
|
||||||
This guide will help you get started using Simple CMS and Gatsby.
|
This guide will help you get started using Static CMS and Gatsby.
|
||||||
|
|
||||||
To get up and running with Gatsby, you’ll need to have [Node.js](https://nodejs.org/) installed on your computer. *Note: Gatsby's minimum supported Node.js version is Node 8.*
|
To get up and running with Gatsby, you’ll need to have [Node.js](https://nodejs.org/) installed on your computer. *Note: Gatsby's minimum supported Node.js version is Node 8.*
|
||||||
|
|
||||||
@ -34,14 +34,14 @@ Far far away, behind the word mountains, far from the countries Vokalia and
|
|||||||
Consonantia, there live the blind texts.
|
Consonantia, there live the blind texts.
|
||||||
```
|
```
|
||||||
|
|
||||||
We can see above that each blog post has a title, a date, a description and a body. Now, let's recreate this using Simple CMS.
|
We can see above that each blog post has a title, a date, a description and a body. Now, let's recreate this using Static CMS.
|
||||||
|
|
||||||
## Add Simple CMS to your site
|
## Add Static CMS to your site
|
||||||
|
|
||||||
First let's install some dependencies. We'll need `@simplecms/simple-cms-core` and `gatsby-plugin-netlify-cms`. Run the following command in the terminal at the root of your site:
|
First let's install some dependencies. We'll need `@staticcms/core` and `gatsby-plugin-netlify-cms`. Run the following command in the terminal at the root of your site:
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
npm install --save @simplecms/simple-cms-core gatsby-plugin-netlify-cms
|
npm install --save @staticcms/core gatsby-plugin-netlify-cms
|
||||||
```
|
```
|
||||||
|
|
||||||
### Configuration
|
### Configuration
|
||||||
|
@ -8,12 +8,12 @@ group: Accounts
|
|||||||
|
|
||||||
## Git Gateway with Netlify
|
## Git Gateway with Netlify
|
||||||
|
|
||||||
The [Netlify Identity](https://www.netlify.com/docs/identity/) service can handle the authentication and provides a simple interface for user management. The Simple CMS [featured templates](../start-with-a-template) are working examples of this backend.
|
The [Netlify Identity](https://www.netlify.com/docs/identity/) service can handle the authentication and provides a simple interface for user management. The Static CMS [featured templates](../start-with-a-template) are working examples of this backend.
|
||||||
|
|
||||||
To use it in your own project stored on GitHub or GitLab, follow these steps:
|
To use it in your own project stored on GitHub or GitLab, follow these steps:
|
||||||
|
|
||||||
1. Head over to the [Netlify Identity docs](https://www.netlify.com/docs/identity) and follow the steps to get started.
|
1. Head over to the [Netlify Identity docs](https://www.netlify.com/docs/identity) and follow the steps to get started.
|
||||||
2. Add the following lines to your Simple CMS `config.yml` file:
|
2. Add the following lines to your Static CMS `config.yml` file:
|
||||||
|
|
||||||
```yaml
|
```yaml
|
||||||
backend:
|
backend:
|
||||||
@ -28,4 +28,4 @@ If you change ownership on your repository, or convert a repository from public
|
|||||||
|
|
||||||
You can use [Git Gateway](https://github.com/netlify/git-gateway) without Netlify by setting up your own Git Gateway server and connecting it with your own instance of [GoTrue](https://www.gotrueapi.org) (the open source microservice that powers Netlify Identity), or with any other identity service that can issue JSON Web Tokens (JWT).
|
You can use [Git Gateway](https://github.com/netlify/git-gateway) without Netlify by setting up your own Git Gateway server and connecting it with your own instance of [GoTrue](https://www.gotrueapi.org) (the open source microservice that powers Netlify Identity), or with any other identity service that can issue JSON Web Tokens (JWT).
|
||||||
|
|
||||||
To configure in Simple CMS, use the same `backend` settings in your Simple CMS `config.yml` file as described in Step 2 of the [Git Gateway with Netlify Identity](#git-gateway-with-netlify-identity) instructions above.
|
To configure in Static CMS, use the same `backend` settings in your Static CMS `config.yml` file as described in Step 2 of the [Git Gateway with Netlify Identity](#git-gateway-with-netlify-identity) instructions above.
|
||||||
|
@ -5,12 +5,12 @@ title: GitHub
|
|||||||
---
|
---
|
||||||
For repositories stored on GitHub, the `github` backend allows CMS users to log in directly with their GitHub account. Note that all users must have push access to your content repository for this to work.
|
For repositories stored on GitHub, the `github` backend allows CMS users to log in directly with their GitHub account. Note that all users must have push access to your content repository for this to work.
|
||||||
|
|
||||||
Because Github [requires a server](https://github.com/SimpleCMS/simple-cms/issues/663#issuecomment-335023723) for authentication, Netlify facilitates basic GitHub authentication.
|
Because Github [requires a server](https://github.com/StaticJsCMS/static-cms/issues/663#issuecomment-335023723) for authentication, Netlify facilitates basic GitHub authentication.
|
||||||
|
|
||||||
To enable basic GitHub authentication:
|
To enable basic GitHub authentication:
|
||||||
|
|
||||||
1. Follow the authentication provider setup steps in the [Netlify docs](https://www.netlify.com/docs/authentication-providers/#using-an-authentication-provider).
|
1. Follow the authentication provider setup steps in the [Netlify docs](https://www.netlify.com/docs/authentication-providers/#using-an-authentication-provider).
|
||||||
2. Add the following lines to your Simple CMS `config.yml` file:
|
2. Add the following lines to your Static CMS `config.yml` file:
|
||||||
|
|
||||||
```yaml
|
```yaml
|
||||||
backend:
|
backend:
|
||||||
@ -22,4 +22,4 @@ backend:
|
|||||||
|
|
||||||
## Git Large File Storage (LFS)
|
## Git Large File Storage (LFS)
|
||||||
|
|
||||||
Please note that the GitHub backend **does not** support [git-lfs](https://git-lfs.github.com/), see [this issue](https://github.com/SimpleCMS/simple-cms/issues/1206) for more information.
|
Please note that the GitHub backend **does not** support [git-lfs](https://git-lfs.github.com/), see [this issue](https://github.com/StaticJsCMS/static-cms/issues/1206) for more information.
|
||||||
|
@ -19,9 +19,9 @@ When using GitLab's Authorization Code Flow for authentication, you can use Netl
|
|||||||
|
|
||||||
To enable it:
|
To enable it:
|
||||||
|
|
||||||
1. Follow the [GitLab docs](https://docs.gitlab.com/ee/integration/oauth_provider.html#adding-an-application-through-the-profile) to add your Simple CMS instance as an OAuth application. For the **Redirect URI**, enter `https://api.netlify.com/auth/done`, and check the box for `api` scope.
|
1. Follow the [GitLab docs](https://docs.gitlab.com/ee/integration/oauth_provider.html#adding-an-application-through-the-profile) to add your Static CMS instance as an OAuth application. For the **Redirect URI**, enter `https://api.netlify.com/auth/done`, and check the box for `api` scope.
|
||||||
2. Follow the [Netlify docs](https://www.netlify.com/docs/authentication-providers/#using-an-authentication-provider) to add your new GitLab Application ID and Secret to your Netlify site dashboard.
|
2. Follow the [Netlify docs](https://www.netlify.com/docs/authentication-providers/#using-an-authentication-provider) to add your new GitLab Application ID and Secret to your Netlify site dashboard.
|
||||||
3. In your repository, add the following lines to your Simple CMS `config.yml` file:
|
3. In your repository, add the following lines to your Static CMS `config.yml` file:
|
||||||
|
|
||||||
```yaml
|
```yaml
|
||||||
backend:
|
backend:
|
||||||
@ -34,8 +34,8 @@ backend:
|
|||||||
|
|
||||||
With GitLab's PKCE authorization, users can authenticate with GitLab directly from the client. To do this:
|
With GitLab's PKCE authorization, users can authenticate with GitLab directly from the client. To do this:
|
||||||
|
|
||||||
1. Follow the [GitLab docs](https://docs.gitlab.com/ee/integration/oauth_provider.html#adding-an-application-through-the-profile) to add your Simple CMS instance as an OAuth application and uncheck the **Confidential** checkbox. For the **Redirect URI**, enter the address where you access Simple CMS, for example, `https://www.mysite.com/admin/`. For scope, select `api`.
|
1. Follow the [GitLab docs](https://docs.gitlab.com/ee/integration/oauth_provider.html#adding-an-application-through-the-profile) to add your Static CMS instance as an OAuth application and uncheck the **Confidential** checkbox. For the **Redirect URI**, enter the address where you access Static CMS, for example, `https://www.mysite.com/admin/`. For scope, select `api`.
|
||||||
2. GitLab gives you an **Application ID**. Copy this ID and enter it in your Simple CMS `config.yml` file, along with the following settings:
|
2. GitLab gives you an **Application ID**. Copy this ID and enter it in your Static CMS `config.yml` file, along with the following settings:
|
||||||
|
|
||||||
```yaml
|
```yaml
|
||||||
backend:
|
backend:
|
||||||
@ -64,8 +64,8 @@ With GitLab's PKCE authorization, users can authenticate with GitLab directly fr
|
|||||||
|
|
||||||
With GitLab's Implicit Grant, users can authenticate with GitLab directly from the client. To do this:
|
With GitLab's Implicit Grant, users can authenticate with GitLab directly from the client. To do this:
|
||||||
|
|
||||||
1. Follow the [GitLab docs](https://docs.gitlab.com/ee/integration/oauth_provider.html#adding-an-application-through-the-profile) to add your Simple CMS instance as an OAuth application and uncheck the **Confidential** checkbox. For the **Redirect URI**, enter the address where you access Simple CMS, for example, `https://www.mysite.com/admin/`. For scope, select `api`.
|
1. Follow the [GitLab docs](https://docs.gitlab.com/ee/integration/oauth_provider.html#adding-an-application-through-the-profile) to add your Static CMS instance as an OAuth application and uncheck the **Confidential** checkbox. For the **Redirect URI**, enter the address where you access Static CMS, for example, `https://www.mysite.com/admin/`. For scope, select `api`.
|
||||||
2. GitLab gives you an **Application ID**. Copy this ID and enter it in your Simple CMS `config.yml` file, along with the following settings:
|
2. GitLab gives you an **Application ID**. Copy this ID and enter it in your Static CMS `config.yml` file, along with the following settings:
|
||||||
|
|
||||||
```yaml
|
```yaml
|
||||||
backend:
|
backend:
|
||||||
|
@ -3,7 +3,7 @@ group: Guides
|
|||||||
weight: 70
|
weight: 70
|
||||||
title: Gridsome
|
title: Gridsome
|
||||||
---
|
---
|
||||||
This guide will help you get started using Simple CMS and Gridsome.
|
This guide will help you get started using Static CMS and Gridsome.
|
||||||
|
|
||||||
## How to install Gridsome
|
## How to install Gridsome
|
||||||
### 1. Install Gridsome CLI tool
|
### 1. Install Gridsome CLI tool
|
||||||
@ -29,15 +29,15 @@ cd gridsome-netlify-blog
|
|||||||
gridsome develop
|
gridsome develop
|
||||||
```
|
```
|
||||||
|
|
||||||
### Install Simple CMS the required dependencies to your project
|
### Install Static CMS the required dependencies to your project
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
|
|
||||||
# Using Yarn
|
# Using Yarn
|
||||||
yarn add @simplecms/simple-cms-core gridsome-plugin-netlify-cms @gridsome/source-filesystem @gridsome/transformer-remark
|
yarn add @staticcms/core gridsome-plugin-netlify-cms @gridsome/source-filesystem @gridsome/transformer-remark
|
||||||
|
|
||||||
# Using NPM
|
# Using NPM
|
||||||
npm add @simplecms/simple-cms-core gridsome-plugin-netlify-cms @gridsome/source-filesystem @gridsome/transformer-remark
|
npm add @staticcms/core gridsome-plugin-netlify-cms @gridsome/source-filesystem @gridsome/transformer-remark
|
||||||
```
|
```
|
||||||
|
|
||||||
Now that the plugins are installed, it's time to setup the configuration. Open the `gridsome.config.js` file and update its content to:
|
Now that the plugins are installed, it's time to setup the configuration. Open the `gridsome.config.js` file and update its content to:
|
||||||
@ -73,7 +73,7 @@ module.exports = {
|
|||||||
|
|
||||||
Please read [gridsome-plugin-netlify-cms](https://gridsome.org/plugins/gridsome-plugin-netlify-cms), [transformer-remark](https://gridsome.org/plugins/@gridsome/transformer-remark) for more information.
|
Please read [gridsome-plugin-netlify-cms](https://gridsome.org/plugins/gridsome-plugin-netlify-cms), [transformer-remark](https://gridsome.org/plugins/@gridsome/transformer-remark) for more information.
|
||||||
|
|
||||||
## Simple CMS setup
|
## Static CMS setup
|
||||||
|
|
||||||
1. Create an `admin` directory inside the `src`
|
1. Create an `admin` directory inside the `src`
|
||||||
2. Create an `uploads` directory inside the root of your project
|
2. Create an `uploads` directory inside the root of your project
|
||||||
@ -87,7 +87,7 @@ Your `index.html` should look like this:
|
|||||||
<head>
|
<head>
|
||||||
<meta charset="utf-8" />
|
<meta charset="utf-8" />
|
||||||
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
||||||
<title>Simple CMS</title>
|
<title>Static CMS</title>
|
||||||
</head>
|
</head>
|
||||||
<body>
|
<body>
|
||||||
<script src="index.js" type="module"></script>
|
<script src="index.js" type="module"></script>
|
||||||
@ -98,7 +98,7 @@ Your `index.html` should look like this:
|
|||||||
Your `index.js` should look like this:
|
Your `index.js` should look like this:
|
||||||
|
|
||||||
```js
|
```js
|
||||||
import CMS from "@simplecms/simple-cms-core"
|
import CMS from "@staticcms/core"
|
||||||
```
|
```
|
||||||
|
|
||||||
Your `config.yml` for GitHub should look like this:
|
Your `config.yml` for GitHub should look like this:
|
||||||
|
@ -5,7 +5,7 @@ weight: 20
|
|||||||
---
|
---
|
||||||
## Introduction
|
## Introduction
|
||||||
|
|
||||||
This guide will walk you through how to integrate Simple CMS with Hugo. This is a good place to start if you want to learn from the ground up how these two tools work together. If you want to get up-and-running quicker, you can use one of the pre-existing and amazing [starter templates](/docs/start-with-a-template/)!
|
This guide will walk you through how to integrate Static CMS with Hugo. This is a good place to start if you want to learn from the ground up how these two tools work together. If you want to get up-and-running quicker, you can use one of the pre-existing and amazing [starter templates](/docs/start-with-a-template/)!
|
||||||
|
|
||||||
## Getting started with Hugo
|
## Getting started with Hugo
|
||||||
|
|
||||||
@ -56,13 +56,13 @@ You'll also add some files to the `content/` and `data/` directories to make sur
|
|||||||
touch content/.keep data/.keep
|
touch content/.keep data/.keep
|
||||||
```
|
```
|
||||||
|
|
||||||
This is as basic as you can get with a Hugo project. There's just enough here now for us to install Simple CMS.
|
This is as basic as you can get with a Hugo project. There's just enough here now for us to install Static CMS.
|
||||||
|
|
||||||
## Getting Started With Simple CMS
|
## Getting Started With Static CMS
|
||||||
|
|
||||||
### Add the Simple CMS files to Hugo
|
### Add the Static CMS files to Hugo
|
||||||
|
|
||||||
In Hugo, static files that don't need to be processed by the build commands live in the `static/` directory. You'll install the Simple CMS admin and config files there. Create a directory `admin/` and within it, create two files `index.html` and `config.yml`. In the `index.html`, add the following content:
|
In Hugo, static files that don't need to be processed by the build commands live in the `static/` directory. You'll install the Static CMS admin and config files there. Create a directory `admin/` and within it, create two files `index.html` and `config.yml`. In the `index.html`, add the following content:
|
||||||
|
|
||||||
```html
|
```html
|
||||||
<!DOCTYPE html>
|
<!DOCTYPE html>
|
||||||
@ -75,8 +75,8 @@ In Hugo, static files that don't need to be processed by the build commands live
|
|||||||
<script src="https://identity.netlify.com/v1/netlify-identity-widget.js"></script>
|
<script src="https://identity.netlify.com/v1/netlify-identity-widget.js"></script>
|
||||||
</head>
|
</head>
|
||||||
<body>
|
<body>
|
||||||
<!-- Include the script that builds the page and powers Simple CMS -->
|
<!-- Include the script that builds the page and powers Static CMS -->
|
||||||
<script src="https://unpkg.com/@simplecms/simple-cms-core@%5E0.1.0/dist/simple-cms-core.js"></script>
|
<script src="https://unpkg.com/@staticcms/core@%5E0.1.0/dist/static-cms-core.js"></script>
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
```
|
```
|
||||||
@ -147,9 +147,9 @@ Back in your [Netlify dashboard](https://app.netlify.com/):
|
|||||||
|
|
||||||
Once you've reached this point, you should be able to access the CMS in your browser at `http://localhost:1313/admin`. You'll be prompted to add the URL of your Netlify site. Once you've added that URL, you can log in with an Identity account or with one of the External Providers you enabled in step 3 above. For the sake of this tutorial, you can create a blog post in the CMS, and publish it! Once you `git pull` in your project, the blog post will show up in the project at `content/blog/<slugified-blog-post-title>.md`.
|
Once you've reached this point, you should be able to access the CMS in your browser at `http://localhost:1313/admin`. You'll be prompted to add the URL of your Netlify site. Once you've added that URL, you can log in with an Identity account or with one of the External Providers you enabled in step 3 above. For the sake of this tutorial, you can create a blog post in the CMS, and publish it! Once you `git pull` in your project, the blog post will show up in the project at `content/blog/<slugified-blog-post-title>.md`.
|
||||||
|
|
||||||
And that's it! From this point on, it's just a matter of following [the Hugo documentation](https://gohugo.io/templates/) for outputting the content from your `content/` directory into templates! For more information on configuring Simple CMS, feel free to check out the [Simple CMS configuration options documentation](/docs/configuration-options/).
|
And that's it! From this point on, it's just a matter of following [the Hugo documentation](https://gohugo.io/templates/) for outputting the content from your `content/` directory into templates! For more information on configuring Static CMS, feel free to check out the [Static CMS configuration options documentation](/docs/configuration-options/).
|
||||||
|
|
||||||
## Using Simple CMS content in Hugo
|
## Using Static CMS content in Hugo
|
||||||
|
|
||||||
### Creating a list of posts
|
### Creating a list of posts
|
||||||
|
|
||||||
@ -198,13 +198,13 @@ Create a file `layouts/blog/single.html`, and put the following content in there
|
|||||||
</html>
|
</html>
|
||||||
```
|
```
|
||||||
|
|
||||||
You can see this basic template includes all the fields you've specified in your Simple CMS `config.yml` file. You can access any custom front-matter fields with `.Params.<field-name>`!
|
You can see this basic template includes all the fields you've specified in your Static CMS `config.yml` file. You can access any custom front-matter fields with `.Params.<field-name>`!
|
||||||
|
|
||||||
### Using Hugo shortcodes in the Markdown Editor
|
### Using Hugo shortcodes in the Markdown Editor
|
||||||
|
|
||||||
Using `registerEditorComponent` we can register a block level component for the Markdown editor. You can use it to add Hugo's inbuilt shortcodes like `gist`,`youtube` and others as block components to the markdown editor.
|
Using `registerEditorComponent` we can register a block level component for the Markdown editor. You can use it to add Hugo's inbuilt shortcodes like `gist`,`youtube` and others as block components to the markdown editor.
|
||||||
|
|
||||||
You can refer to [registering editor components](https://www.simplecms.github.io/simple-cms/docs/custom-widgets/#registereditorcomponent) for a getting started guide or for creating your own editor components.
|
You can refer to [registering editor components](https://www.staticjscms.github.io/static-cms/docs/custom-widgets/#registereditorcomponent) for a getting started guide or for creating your own editor components.
|
||||||
|
|
||||||
**Example**
|
**Example**
|
||||||
|
|
||||||
|
@ -4,9 +4,9 @@ group: Intro
|
|||||||
weight: 1
|
weight: 1
|
||||||
---
|
---
|
||||||
|
|
||||||
Simple CMS is an open source content management system for your Git workflow that enables you to provide editors with a friendly UI and intuitive workflows. You can use it with any static site generator to create faster, more flexible web projects. Content is stored in your Git repository alongside your code for easier versioning, multi-channel publishing, and the option to handle content updates directly in Git.
|
Static CMS is an open source content management system for your Git workflow that enables you to provide editors with a friendly UI and intuitive workflows. You can use it with any static site generator to create faster, more flexible web projects. Content is stored in your Git repository alongside your code for easier versioning, multi-channel publishing, and the option to handle content updates directly in Git.
|
||||||
|
|
||||||
At its core, Simple CMS is an open-source React app that acts as a wrapper for the Git workflow, using the GitHub, GitLab, or Bitbucket API. This provides many advantages, including:
|
At its core, Static CMS is an open-source React app that acts as a wrapper for the Git workflow, using the GitHub, GitLab, or Bitbucket API. This provides many advantages, including:
|
||||||
|
|
||||||
* **Fast, web-based UI:** With rich-text editing, real-time preview, and drag-and-drop media uploads.
|
* **Fast, web-based UI:** With rich-text editing, real-time preview, and drag-and-drop media uploads.
|
||||||
* **Platform agnostic:** Works with most static site generators.
|
* **Platform agnostic:** Works with most static site generators.
|
||||||
@ -18,7 +18,7 @@ At its core, Simple CMS is an open-source React app that acts as a wrapper for t
|
|||||||
### Find out more
|
### Find out more
|
||||||
|
|
||||||
- Get a feel for the UI in the [demo site](https://cms-demo.netlify.com). (No login required. Click the login button to go straight to the CMS editor UI.)
|
- Get a feel for the UI in the [demo site](https://cms-demo.netlify.com). (No login required. Click the login button to go straight to the CMS editor UI.)
|
||||||
- [Start with a template](../start-with-a-template/) to make a Simple CMS-enabled site of your own.
|
- [Start with a template](../start-with-a-template/) to make a Static CMS-enabled site of your own.
|
||||||
- Configure your existing site by following a [tutorial](../add-to-your-site/) or checking [configuration options](../configuration-options).
|
- Configure your existing site by following a [tutorial](../add-to-your-site/) or checking [configuration options](../configuration-options).
|
||||||
- Ask questions and share ideas in the Simple CMS [community chat](https://simplecms.github.io/simple-cms/chat).
|
- Ask questions and share ideas in the Static CMS [community chat](https://staticjscms.github.io/static-cms/chat).
|
||||||
- Get involved in new developments and become a [contributor](../contributor-guide/).
|
- Get involved in new developments and become a [contributor](../contributor-guide/).
|
||||||
|
@ -5,19 +5,19 @@ title: Jekyll
|
|||||||
---
|
---
|
||||||
## Introduction
|
## Introduction
|
||||||
|
|
||||||
This section will help you integrate Simple CMS with a new or existing Jekyll project.
|
This section will help you integrate Static CMS with a new or existing Jekyll project.
|
||||||
|
|
||||||
[Jekyll](https://jekyllrb.com/) is a blog-aware static site generator built with Ruby. [Github Pages](https://pages.github.com/) are powered by Jekyll, making it a popular choice for developer blogs and project pages.
|
[Jekyll](https://jekyllrb.com/) is a blog-aware static site generator built with Ruby. [Github Pages](https://pages.github.com/) are powered by Jekyll, making it a popular choice for developer blogs and project pages.
|
||||||
|
|
||||||
If you're starting a new project, the fastest route to publishing on a Jekyll website with Simple CMS is to [deploy a template on Netlify](https://templates.netlify.com/).
|
If you're starting a new project, the fastest route to publishing on a Jekyll website with Static CMS is to [deploy a template on Netlify](https://templates.netlify.com/).
|
||||||
|
|
||||||
## Setup
|
## Setup
|
||||||
|
|
||||||
This guide will use the blog you get if you follow the [really excellent official Jekyll step by step tutorial](https://jekyllrb.com/docs/step-by-step/01-setup/) as a starting point. If you're new to Jekyll - I recommended you start by following the tutorial so you know your way around your new blog. Otherwise [you can clone this repo](https://github.com/adamwatters/jekyll-tutorial-with-netlify-cms/tree/without-cms) and checkout the `without-cms` branch.
|
This guide will use the blog you get if you follow the [really excellent official Jekyll step by step tutorial](https://jekyllrb.com/docs/step-by-step/01-setup/) as a starting point. If you're new to Jekyll - I recommended you start by following the tutorial so you know your way around your new blog. Otherwise [you can clone this repo](https://github.com/adamwatters/jekyll-tutorial-with-netlify-cms/tree/without-cms) and checkout the `without-cms` branch.
|
||||||
|
|
||||||
![Jekyll tutorial blog screenshot](https://www.simplecms.github.io/simple-cms/img/screenshot-jekyll-tutorial-blog.png?raw=true)
|
![Jekyll tutorial blog screenshot](https://www.staticjscms.github.io/static-cms/img/screenshot-jekyll-tutorial-blog.png?raw=true)
|
||||||
|
|
||||||
## Add Simple CMS
|
## Add Static CMS
|
||||||
|
|
||||||
### Add admin/index.html
|
### Add admin/index.html
|
||||||
|
|
||||||
@ -35,8 +35,8 @@ Create a file `admin/index.html` in the root of your repo - it should look like
|
|||||||
<script src="https://identity.netlify.com/v1/netlify-identity-widget.js" type="text/javascript"></script>
|
<script src="https://identity.netlify.com/v1/netlify-identity-widget.js" type="text/javascript"></script>
|
||||||
</head>
|
</head>
|
||||||
<body>
|
<body>
|
||||||
<!-- Include the script that builds the page and powers Simple CMS -->
|
<!-- Include the script that builds the page and powers Static CMS -->
|
||||||
<script src="https://unpkg.com/@simplecms/simple-cms-core@%5E0.1.0/dist/simple-cms-core.js"></script>
|
<script src="https://unpkg.com/@staticcms/core@%5E0.1.0/dist/static-cms-core.js"></script>
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
```
|
```
|
||||||
@ -62,15 +62,15 @@ collections:
|
|||||||
|
|
||||||
### Enable authentication for CMS users
|
### Enable authentication for CMS users
|
||||||
|
|
||||||
Simple CMS stores content in your online Git repository. Therefore, to make content changes, users need to authenticate with the corresponding Git provider to prove that they have read and write access to that content.
|
Static CMS stores content in your online Git repository. Therefore, to make content changes, users need to authenticate with the corresponding Git provider to prove that they have read and write access to that content.
|
||||||
|
|
||||||
Follow the directions in the Introduction section to [enable Netlify Identity and Git Gateway services](https://www.simplecms.github.io/simple-cms/docs/add-to-your-site/#enable-identity-and-git-gateway) for the backend, then [add the Identity widget](https://www.simplecms.github.io/simple-cms/docs/add-to-your-site/#add-the-netlify-identity-widget) to render a login portal on the frontend.
|
Follow the directions in the Introduction section to [enable Netlify Identity and Git Gateway services](https://www.staticjscms.github.io/static-cms/docs/add-to-your-site/#enable-identity-and-git-gateway) for the backend, then [add the Identity widget](https://www.staticjscms.github.io/static-cms/docs/add-to-your-site/#add-the-netlify-identity-widget) to render a login portal on the frontend.
|
||||||
|
|
||||||
## CMS Configuration
|
## CMS Configuration
|
||||||
|
|
||||||
### Blog Collection
|
### Blog Collection
|
||||||
|
|
||||||
We'll start by updating the `blog` collection. Blogging is baked into Jekyll, and the `_posts/` directory uses [some special conventions](https://jekyllrb.com/docs/posts/) we'll need to keep in mind as we configure Simple CMS. Copy and paste the following into your `config.yml`.
|
We'll start by updating the `blog` collection. Blogging is baked into Jekyll, and the `_posts/` directory uses [some special conventions](https://jekyllrb.com/docs/posts/) we'll need to keep in mind as we configure Static CMS. Copy and paste the following into your `config.yml`.
|
||||||
|
|
||||||
```yaml
|
```yaml
|
||||||
collections:
|
collections:
|
||||||
@ -93,15 +93,15 @@ A few things to note.
|
|||||||
* We set the `slug` to `'{{year}}-{{month}}-{{day}}-{{slug}}'` because [Jekyll requires this format for blog posts](https://jekyllrb.com/docs/posts/#creating-posts). `year`, `month`, and `day` will be extracted from the `date` field, and `slug` will be generated from the `title` field.
|
* We set the `slug` to `'{{year}}-{{month}}-{{day}}-{{slug}}'` because [Jekyll requires this format for blog posts](https://jekyllrb.com/docs/posts/#creating-posts). `year`, `month`, and `day` will be extracted from the `date` field, and `slug` will be generated from the `title` field.
|
||||||
* We added `editor` configuration with a field `preview: false`. This will eliminate the preview pane. Because Jekyll uses Liquid templates, there currently isn't a good way to provide a preview of pages as you update the content.
|
* We added `editor` configuration with a field `preview: false`. This will eliminate the preview pane. Because Jekyll uses Liquid templates, there currently isn't a good way to provide a preview of pages as you update the content.
|
||||||
* The `layout` field default is set to `post` so Jekyll knows to use `_layouts/post.html` when it renders a post. This field is hidden because we want all posts to use the same layout.
|
* The `layout` field default is set to `post` so Jekyll knows to use `_layouts/post.html` when it renders a post. This field is hidden because we want all posts to use the same layout.
|
||||||
* The `date` and `title` field will be used by the `slug` - as noted above, Jekyll relies on the filename to determine a post's publish date, but Simple CMS does not pull date information from the filename and requires a frontmatter `date` field. **Note** Changing the `date` or `title` fields in Simple CMS will not update the filename. This has a few implications:
|
* The `date` and `title` field will be used by the `slug` - as noted above, Jekyll relies on the filename to determine a post's publish date, but Static CMS does not pull date information from the filename and requires a frontmatter `date` field. **Note** Changing the `date` or `title` fields in Static CMS will not update the filename. This has a few implications:
|
||||||
|
|
||||||
* If you change the `date` or `title` fields in Simple CMS, Jekyll won't notice
|
* If you change the `date` or `title` fields in Static CMS, Jekyll won't notice
|
||||||
* You don't necessarily need to change the `date` and `title` fields for existing posts, but if you don't the filenames and frontmatter will disagree in a way that might be confusing
|
* You don't necessarily need to change the `date` and `title` fields for existing posts, but if you don't the filenames and frontmatter will disagree in a way that might be confusing
|
||||||
* If you want to avoid these issues, use a regular Jekyll collection instead of the special `_posts` directory
|
* If you want to avoid these issues, use a regular Jekyll collection instead of the special `_posts` directory
|
||||||
|
|
||||||
### Author Collection
|
### Author Collection
|
||||||
|
|
||||||
In addition to `_posts`, the Jekyll tutorial blog includes a collection of authors in the `_authors` directory. Before we can configure Simple CMS to work with the `authors` collection, we'll need to make a couple tweaks to our Jekyll blog. Here's the front matter for one of the authors.
|
In addition to `_posts`, the Jekyll tutorial blog includes a collection of authors in the `_authors` directory. Before we can configure Static CMS to work with the `authors` collection, we'll need to make a couple tweaks to our Jekyll blog. Here's the front matter for one of the authors.
|
||||||
|
|
||||||
```yaml
|
```yaml
|
||||||
short_name: jill
|
short_name: jill
|
||||||
@ -109,7 +109,7 @@ name: Jill Smith
|
|||||||
position: Chief Editor
|
position: Chief Editor
|
||||||
```
|
```
|
||||||
|
|
||||||
`name` has special meaning as a unique identifier in Simple CMS, but as set up now our Jekyll blog is using `short_name` as the unique identifier for authors. For each author, update the frontmatter like so.
|
`name` has special meaning as a unique identifier in Static CMS, but as set up now our Jekyll blog is using `short_name` as the unique identifier for authors. For each author, update the frontmatter like so.
|
||||||
|
|
||||||
```yaml
|
```yaml
|
||||||
name: jill
|
name: jill
|
||||||
@ -190,7 +190,7 @@ Next, copy and paste the following into the collections array in `config.yml` be
|
|||||||
- { label: 'Body', name: 'body', widget: 'markdown' }
|
- { label: 'Body', name: 'body', widget: 'markdown' }
|
||||||
```
|
```
|
||||||
|
|
||||||
Now that we have the `authors` collection configured, we can add an `author` field to the `blog` collection. We'll use the [relation widget](https://www.simplecms.github.io/simple-cms/docs/widgets/#relation) to define the relationship between blog posts and authors.
|
Now that we have the `authors` collection configured, we can add an `author` field to the `blog` collection. We'll use the [relation widget](https://www.staticjscms.github.io/static-cms/docs/widgets/#relation) to define the relationship between blog posts and authors.
|
||||||
|
|
||||||
```yaml
|
```yaml
|
||||||
# updated fields in blog collection configuration
|
# updated fields in blog collection configuration
|
||||||
@ -214,7 +214,7 @@ With that configuration added, you should be able to select the author for a pos
|
|||||||
|
|
||||||
### About Page
|
### About Page
|
||||||
|
|
||||||
Our Jekyll blog includes an About page. It would nice to be able to edit that page just like we can edit our blog and author pages. Simple CMS provides [file collections](https://www.simplecms.github.io/simple-cms/docs/collection-types/#file-collections) to solve this problem.
|
Our Jekyll blog includes an About page. It would nice to be able to edit that page just like we can edit our blog and author pages. Static CMS provides [file collections](https://www.staticjscms.github.io/static-cms/docs/collection-types/#file-collections) to solve this problem.
|
||||||
|
|
||||||
Copy and paste the following into the collections array in `config.yml`
|
Copy and paste the following into the collections array in `config.yml`
|
||||||
|
|
||||||
@ -235,7 +235,7 @@ Copy and paste the following into the collections array in `config.yml`
|
|||||||
|
|
||||||
### Navigation
|
### Navigation
|
||||||
|
|
||||||
The last aspect of our Jekyll blog we might want to bring under the control of Simple CMS is our Navigation menu. Our Jekyll tutorial blog has a file `_data/navigation.yml` that defines the links rendered by `_includes/navigation.html`. It looks like this.
|
The last aspect of our Jekyll blog we might want to bring under the control of Static CMS is our Navigation menu. Our Jekyll tutorial blog has a file `_data/navigation.yml` that defines the links rendered by `_includes/navigation.html`. It looks like this.
|
||||||
|
|
||||||
```yaml
|
```yaml
|
||||||
# _data/navigation.yml
|
# _data/navigation.yml
|
||||||
@ -249,7 +249,7 @@ The last aspect of our Jekyll blog we might want to bring under the control of S
|
|||||||
link: /staff.html
|
link: /staff.html
|
||||||
```
|
```
|
||||||
|
|
||||||
To make this file editable with Simple CMS, we'll need to make one minor tweak. The issue is this file contains a yaml array at the top level, but Simple CMS is designed to work with yaml objects. Update `_data/navigation.yml` so it looks like so.
|
To make this file editable with Static CMS, we'll need to make one minor tweak. The issue is this file contains a yaml array at the top level, but Static CMS is designed to work with yaml objects. Update `_data/navigation.yml` so it looks like so.
|
||||||
|
|
||||||
```yaml
|
```yaml
|
||||||
# _data/navigation.yml
|
# _data/navigation.yml
|
||||||
|
@ -3,7 +3,7 @@ title: Middleman
|
|||||||
group: Guides
|
group: Guides
|
||||||
weight: 60
|
weight: 60
|
||||||
---
|
---
|
||||||
This guide will help you get started using Simple CMS and Middleman.
|
This guide will help you get started using Static CMS and Middleman.
|
||||||
|
|
||||||
## Installation
|
## Installation
|
||||||
To get up and running with Middleman, you need both the Ruby language runtime and RubyGems installed on your computer. Check out the [Middleman installation docs](https://middlemanapp.com/basics/install/) for more details. If you already have your environment set up, use the following command to install Middleman:
|
To get up and running with Middleman, you need both the Ruby language runtime and RubyGems installed on your computer. Check out the [Middleman installation docs](https://middlemanapp.com/basics/install/) for more details. If you already have your environment set up, use the following command to install Middleman:
|
||||||
@ -77,7 +77,7 @@ Time to load our articles in `index.html.erb`.
|
|||||||
```
|
```
|
||||||
|
|
||||||
### Add an article layout
|
### Add an article layout
|
||||||
In the last step before we add Simple CMS, we add a layout for the article page. Create a new layout `source/layouts/blog-layout.html.erb`. For now we will get the title and the content:
|
In the last step before we add Static CMS, we add a layout for the article page. Create a new layout `source/layouts/blog-layout.html.erb`. For now we will get the title and the content:
|
||||||
```ruby
|
```ruby
|
||||||
<h1>
|
<h1>
|
||||||
<%= current_page.data.title %>
|
<%= current_page.data.title %>
|
||||||
@ -86,9 +86,9 @@ In the last step before we add Simple CMS, we add a layout for the article page.
|
|||||||
<%= yield %>
|
<%= yield %>
|
||||||
```
|
```
|
||||||
|
|
||||||
Now that we have a functioning blog, let's get started with Simple CMS!
|
Now that we have a functioning blog, let's get started with Static CMS!
|
||||||
|
|
||||||
## Add Simple CMS to your site
|
## Add Static CMS to your site
|
||||||
|
|
||||||
Create two files in a new folder called `admin`, `index.html` and `config.yml`. Also add an `upload` folder in the images directory that will function as our `media_folder`.
|
Create two files in a new folder called `admin`, `index.html` and `config.yml`. Also add an `upload` folder in the images directory that will function as our `media_folder`.
|
||||||
```bash
|
```bash
|
||||||
@ -102,7 +102,7 @@ Create two files in a new folder called `admin`, `index.html` and `config.yml`.
|
|||||||
```
|
```
|
||||||
|
|
||||||
|
|
||||||
In the newly created `index.html` we add scripts for Simple CMS and the Netlify Identity Widget:
|
In the newly created `index.html` we add scripts for Static CMS and the Netlify Identity Widget:
|
||||||
|
|
||||||
```html
|
```html
|
||||||
<!doctype html>
|
<!doctype html>
|
||||||
@ -111,11 +111,11 @@ In the newly created `index.html` we add scripts for Simple CMS and the Netlify
|
|||||||
<meta charset="utf-8">
|
<meta charset="utf-8">
|
||||||
<meta http-equiv="x-ua-compatible" content="ie=edge">
|
<meta http-equiv="x-ua-compatible" content="ie=edge">
|
||||||
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
|
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
|
||||||
<title>Simple CMS</title>
|
<title>Static CMS</title>
|
||||||
<script src="https://identity.netlify.com/v1/netlify-identity-widget.js" type="text/javascript"></script>
|
<script src="https://identity.netlify.com/v1/netlify-identity-widget.js" type="text/javascript"></script>
|
||||||
</head>
|
</head>
|
||||||
<body>
|
<body>
|
||||||
<script src="https://unpkg.com/@simplecms/simple-cms-core@%5E0.1.0/dist/simple-cms-core.js" type="text/javascript"></script>
|
<script src="https://unpkg.com/@staticcms/core@%5E0.1.0/dist/static-cms-core.js" type="text/javascript"></script>
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|
||||||
|
@ -6,17 +6,17 @@ weight: 20
|
|||||||
|
|
||||||
[Netlify Large Media](https://www.netlify.com/features/large-media/) is a [Git LFS](https://git-lfs.github.com/) implementation for repositories connected to Netlify sites. This means that you can use Git to work with large asset files like images, audio, and video, without bloating your repository. It does this by replacing the asset files in your repository with text pointer files, then uploading the assets to the Netlify Large Media storage service.
|
[Netlify Large Media](https://www.netlify.com/features/large-media/) is a [Git LFS](https://git-lfs.github.com/) implementation for repositories connected to Netlify sites. This means that you can use Git to work with large asset files like images, audio, and video, without bloating your repository. It does this by replacing the asset files in your repository with text pointer files, then uploading the assets to the Netlify Large Media storage service.
|
||||||
|
|
||||||
If you have a Netlify site with Large Media enabled, Simple CMS (version 2.6.0 and above) will handle Large Media asset files seamlessly, in the same way as files stored directly in the repository.
|
If you have a Netlify site with Large Media enabled, Static CMS (version 2.6.0 and above) will handle Large Media asset files seamlessly, in the same way as files stored directly in the repository.
|
||||||
|
|
||||||
## Requirements
|
## Requirements
|
||||||
|
|
||||||
To use Netlify Large Media with Simple CMS, you will need to do the following:
|
To use Netlify Large Media with Static CMS, you will need to do the following:
|
||||||
|
|
||||||
- [Upgrade Simple CMS](/docs/update-the-cms-version/) to version 2.6.0 or above.
|
- [Upgrade Static CMS](/docs/update-the-cms-version/) to version 2.6.0 or above.
|
||||||
- Configure Simple CMS to use the [Git Gateway backend with Netlify Identity](/docs/git-gateway-backend/#git-gateway-with-netlify-identity).
|
- Configure Static CMS to use the [Git Gateway backend with Netlify Identity](/docs/git-gateway-backend/#git-gateway-with-netlify-identity).
|
||||||
- Configure the Netlify site and connected repository to use Large Media, following the [Large Media docs on Netlify](https://www.netlify.com/docs/large-media/).
|
- Configure the Netlify site and connected repository to use Large Media, following the [Large Media docs on Netlify](https://www.netlify.com/docs/large-media/).
|
||||||
|
|
||||||
When these are complete, you can use Simple CMS as normal, and the configured asset files will automatically be handled by Netlify Large Media.
|
When these are complete, you can use Static CMS as normal, and the configured asset files will automatically be handled by Netlify Large Media.
|
||||||
|
|
||||||
## Image transformations
|
## Image transformations
|
||||||
|
|
||||||
@ -26,7 +26,7 @@ You can learn more about this feature in [Netlify's image transformation docs](h
|
|||||||
|
|
||||||
### Transformation control for media gallery thumbnails
|
### Transformation control for media gallery thumbnails
|
||||||
|
|
||||||
In repositories enabled with Netlify Large Media, Simple CMS will use the image transformation query parameters to load thumbnail-sized images for the media gallery view. This makes images in the media gallery load significantly faster.
|
In repositories enabled with Netlify Large Media, Static CMS will use the image transformation query parameters to load thumbnail-sized images for the media gallery view. This makes images in the media gallery load significantly faster.
|
||||||
|
|
||||||
**Note:** When using this option all tracked file types have to be imported into Large Media. For example if you track `*.jpg` but still have jpg-files that are not imported into Large Media the backend will throw an error. Check the [netlify docs](https://docs.netlify.com/large-media/setup/#migrate-files-from-git-history) on how to add previously committed files to Large Media.
|
**Note:** When using this option all tracked file types have to be imported into Large Media. For example if you track `*.jpg` but still have jpg-files that are not imported into Large Media the backend will throw an error. Check the [netlify docs](https://docs.netlify.com/large-media/setup/#migrate-files-from-git-history) on how to add previously committed files to Large Media.
|
||||||
|
|
||||||
|
@ -3,7 +3,7 @@ group: Guides
|
|||||||
weight: 40
|
weight: 40
|
||||||
title: NextJS
|
title: NextJS
|
||||||
---
|
---
|
||||||
This guide will help you get started using Simple CMS with NextJS.
|
This guide will help you get started using Static CMS with NextJS.
|
||||||
|
|
||||||
## Creating a new project
|
## Creating a new project
|
||||||
|
|
||||||
@ -69,7 +69,7 @@ cats:
|
|||||||
---
|
---
|
||||||
Welcome to my awesome page about cats of the internet.
|
Welcome to my awesome page about cats of the internet.
|
||||||
|
|
||||||
This page is built with NextJS, and content is managed in Simple CMS
|
This page is built with NextJS, and content is managed in Static CMS
|
||||||
```
|
```
|
||||||
|
|
||||||
Next, we need to tell webpack how to load Markdown files. Create a new `next.config.js` file at the root of your project with the following content:
|
Next, we need to tell webpack how to load Markdown files. Create a new `next.config.js` file at the root of your project with the following content:
|
||||||
@ -128,9 +128,9 @@ Great! We now have a page that displays content from our Markdown file. Go ahead
|
|||||||
npm run dev
|
npm run dev
|
||||||
```
|
```
|
||||||
|
|
||||||
## Adding Simple CMS
|
## Adding Static CMS
|
||||||
|
|
||||||
There are many different ways to add Simple CMS to your project. The easiest is probably just to embed it from a CDN, and that's exactly what we're gonna do. To avoid making this guide too complicated, we're just going to add Netlify into a subfolder inside the `/public` directory (which is just served as static files by Next):
|
There are many different ways to add Static CMS to your project. The easiest is probably just to embed it from a CDN, and that's exactly what we're gonna do. To avoid making this guide too complicated, we're just going to add Netlify into a subfolder inside the `/public` directory (which is just served as static files by Next):
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
# Create and navigate into public/admin folder
|
# Create and navigate into public/admin folder
|
||||||
@ -142,7 +142,7 @@ touch index.html
|
|||||||
touch config.yml
|
touch config.yml
|
||||||
```
|
```
|
||||||
|
|
||||||
Paste HTML for Simple CMS into your `public/admin/index.html` file (check out the [Add Netlify To Your Site](https://www.simplecms.github.io/simple-cms/docs/add-to-your-site/) section for more information)
|
Paste HTML for Static CMS into your `public/admin/index.html` file (check out the [Add Netlify To Your Site](https://www.staticjscms.github.io/static-cms/docs/add-to-your-site/) section for more information)
|
||||||
|
|
||||||
```html
|
```html
|
||||||
<!doctype html>
|
<!doctype html>
|
||||||
@ -154,8 +154,8 @@ Paste HTML for Simple CMS into your `public/admin/index.html` file (check out th
|
|||||||
<script src="https://identity.netlify.com/v1/netlify-identity-widget.js"></script>
|
<script src="https://identity.netlify.com/v1/netlify-identity-widget.js"></script>
|
||||||
</head>
|
</head>
|
||||||
<body>
|
<body>
|
||||||
<!-- Include the script that builds the page and powers Simple CMS -->
|
<!-- Include the script that builds the page and powers Static CMS -->
|
||||||
<script src="https://unpkg.com/@simplecms/simple-cms-core@%5E0.1.0/dist/simple-cms-core.js"></script>
|
<script src="https://unpkg.com/@staticcms/core@%5E0.1.0/dist/static-cms-core.js"></script>
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
```
|
```
|
||||||
@ -189,9 +189,9 @@ collections:
|
|||||||
- { label: "Description", name: "description", widget: "text"}
|
- { label: "Description", name: "description", widget: "text"}
|
||||||
```
|
```
|
||||||
|
|
||||||
Awesome! Simple CMS should now be available at `localhost:3000/admin/index.html`. Unfortunately we can't edit our content just yet. First we need to move our code into a git repository, and create a new Netlify site.
|
Awesome! Static CMS should now be available at `localhost:3000/admin/index.html`. Unfortunately we can't edit our content just yet. First we need to move our code into a git repository, and create a new Netlify site.
|
||||||
|
|
||||||
**Tip:** If you want to test changes made to your config.yml file locally, swap out "git-gateway" with "test-repo" and navigate to `localhost:3000/admin/index.html` to view Simple CMS locally (you can't make changes or read actual content from Git this way, but it's great to verify how things will look).
|
**Tip:** If you want to test changes made to your config.yml file locally, swap out "git-gateway" with "test-repo" and navigate to `localhost:3000/admin/index.html` to view Static CMS locally (you can't make changes or read actual content from Git this way, but it's great to verify how things will look).
|
||||||
|
|
||||||
## Publishing to GitHub and Netlify
|
## Publishing to GitHub and Netlify
|
||||||
|
|
||||||
@ -229,6 +229,6 @@ Netlify's Identity and Git Gateway services allow you to manage CMS admin users
|
|||||||
|
|
||||||
Great job - you did it! Open your new page via the new Netlify URL, and navigate to `/admin`. If you did everything correct in the previous step, you should now be able to sign up for an account, and log in.
|
Great job - you did it! Open your new page via the new Netlify URL, and navigate to `/admin`. If you did everything correct in the previous step, you should now be able to sign up for an account, and log in.
|
||||||
|
|
||||||
**Tip:** Signing up with an external provider is the easiest. If you want to sign up by email, you'll have to set up a redirect in your index.js page (which we won't be covering in this guide). For more information, have a look at the [Add To Your Site](https://www.simplecms.github.io/simple-cms/docs/add-to-your-site) section.
|
**Tip:** Signing up with an external provider is the easiest. If you want to sign up by email, you'll have to set up a redirect in your index.js page (which we won't be covering in this guide). For more information, have a look at the [Add To Your Site](https://www.staticjscms.github.io/static-cms/docs/add-to-your-site) section.
|
||||||
|
|
||||||
Congratulations - you can finally manage your new list of cats!
|
Congratulations - you can finally manage your new list of cats!
|
||||||
|
@ -3,7 +3,7 @@ group: Guides
|
|||||||
weight: 50
|
weight: 50
|
||||||
title: Nuxt
|
title: Nuxt
|
||||||
---
|
---
|
||||||
This guide will walk you through how to integrate Simple CMS with Nuxt.
|
This guide will walk you through how to integrate Static CMS with Nuxt.
|
||||||
|
|
||||||
## Starting With `create-nuxt-app`
|
## Starting With `create-nuxt-app`
|
||||||
|
|
||||||
@ -15,11 +15,11 @@ cd <name-of-your-new-project>
|
|||||||
npm run dev
|
npm run dev
|
||||||
```
|
```
|
||||||
|
|
||||||
## Setting Up Simple CMS
|
## Setting Up Static CMS
|
||||||
|
|
||||||
### Add the Simple CMS files to Nuxt
|
### Add the Static CMS files to Nuxt
|
||||||
|
|
||||||
In the `static/` directory, create a new directory `admin/`. Inside that directory you'll create two files, your `index.html` and a `config.yml`. Per the [Simple CMS documentation](/docs/add-to-your-site/), we'll set the content of `static/admin/index.html` to the following:
|
In the `static/` directory, create a new directory `admin/`. Inside that directory you'll create two files, your `index.html` and a `config.yml`. Per the [Static CMS documentation](/docs/add-to-your-site/), we'll set the content of `static/admin/index.html` to the following:
|
||||||
|
|
||||||
```html
|
```html
|
||||||
<!DOCTYPE html>
|
<!DOCTYPE html>
|
||||||
@ -32,8 +32,8 @@ In the `static/` directory, create a new directory `admin/`. Inside that directo
|
|||||||
<script src="https://identity.netlify.com/v1/netlify-identity-widget.js"></script>
|
<script src="https://identity.netlify.com/v1/netlify-identity-widget.js"></script>
|
||||||
</head>
|
</head>
|
||||||
<body>
|
<body>
|
||||||
<!-- Include the script that builds the page and powers Simple CMS -->
|
<!-- Include the script that builds the page and powers Static CMS -->
|
||||||
<script src="https://unpkg.com/@simplecms/simple-cms-core@%5E0.1.0/dist/simple-cms-core.js"></script>
|
<script src="https://unpkg.com/@staticcms/core@%5E0.1.0/dist/static-cms-core.js"></script>
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
```
|
```
|
||||||
@ -135,7 +135,7 @@ Once you've reached this point, you should be able to access the CMS in your bro
|
|||||||
|
|
||||||
## Using nuxt/content
|
## Using nuxt/content
|
||||||
|
|
||||||
Simple CMS and [nuxt/content](https://content.nuxtjs.org) module click together and complement each other to give you best authoring experience and developer experience respectively.
|
Static CMS and [nuxt/content](https://content.nuxtjs.org) module click together and complement each other to give you best authoring experience and developer experience respectively.
|
||||||
|
|
||||||
Adding nuxt/content dependency
|
Adding nuxt/content dependency
|
||||||
|
|
||||||
|
@ -8,7 +8,7 @@ weight: 4
|
|||||||
|
|
||||||
## Update the CMS Version
|
## Update the CMS Version
|
||||||
|
|
||||||
The update procedure for your CMS depends upon the method you used to install Simple CMS.
|
The update procedure for your CMS depends upon the method you used to install Static CMS.
|
||||||
|
|
||||||
### Package Manager
|
### Package Manager
|
||||||
|
|
||||||
|
@ -4,31 +4,31 @@ group: Guides
|
|||||||
weight: 1
|
weight: 1
|
||||||
---
|
---
|
||||||
|
|
||||||
The process for adding Simple CMS to a static site can be divided into four main steps:
|
The process for adding Static CMS to a static site can be divided into four main steps:
|
||||||
|
|
||||||
### Install Simple CMS
|
### Install Static CMS
|
||||||
|
|
||||||
This is a single page app available at the `/admin` route of your website.
|
This is a single page app available at the `/admin` route of your website.
|
||||||
Check out the [general overview](/docs/intro/) to see what the installation process entails.
|
Check out the [general overview](/docs/intro/) to see what the installation process entails.
|
||||||
|
|
||||||
### Set up a backend
|
### Set up a backend
|
||||||
|
|
||||||
This serves two purpose: Secure access to your website's Simple CMS and allows it to read and update content files in your repo. More information about configuring the backend can be found [here](/docs/backends-overview/).
|
This serves two purpose: Secure access to your website's Static CMS and allows it to read and update content files in your repo. More information about configuring the backend can be found [here](/docs/backends-overview/).
|
||||||
|
|
||||||
### Configure Simple CMS using a configuration file
|
### Configure Static CMS using a configuration file
|
||||||
|
|
||||||
For starters, you can get by with a basic configuration that includes required information like Git provider, branch and folders to save files to.
|
For starters, you can get by with a basic configuration that includes required information like Git provider, branch and folders to save files to.
|
||||||
|
|
||||||
Once you've gotten the hang of it, you can use the file to build whatever collections and content modeling you want. Check out the [this section](/docs/configuration-options/#configuration-file) for full details about all available configuration options.
|
Once you've gotten the hang of it, you can use the file to build whatever collections and content modeling you want. Check out the [this section](/docs/configuration-options/#configuration-file) for full details about all available configuration options.
|
||||||
|
|
||||||
### Render the content provided by Simple CMS as web pages
|
### Render the content provided by Static CMS as web pages
|
||||||
|
|
||||||
Simple CMS manages your content, and provides admin features, but it doesn't deliver content. It only makes your content available through an API.
|
Static CMS manages your content, and provides admin features, but it doesn't deliver content. It only makes your content available through an API.
|
||||||
|
|
||||||
It is up to developers to determine how to build the raw content into something useful and delightful on the frontend.
|
It is up to developers to determine how to build the raw content into something useful and delightful on the frontend.
|
||||||
|
|
||||||
To learn how to query raw content managed by Simple CMS and reformat them for delivery to end users, please refer the dedicated section for your site generator in the Table of Content.
|
To learn how to query raw content managed by Static CMS and reformat them for delivery to end users, please refer the dedicated section for your site generator in the Table of Content.
|
||||||
___
|
___
|
||||||
### Local development
|
### Local development
|
||||||
|
|
||||||
If you are experimenting with Simple CMS or testing things out, you can connect it to a local Git repository instead of a live one. Learn how to do it [here](/docs/beta-features/#working-with-a-local-git-repository).
|
If you are experimenting with Static CMS or testing things out, you can connect it to a local Git repository instead of a live one. Learn how to do it [here](/docs/beta-features/#working-with-a-local-git-repository).
|
||||||
|
@ -3,7 +3,7 @@ group: Intro
|
|||||||
weight: 2
|
weight: 2
|
||||||
title: Start with a Template
|
title: Start with a Template
|
||||||
---
|
---
|
||||||
You can add Simple CMS [to an existing site](/docs/add-to-your-site/), but the quickest way to get started is with a template. Found below, our featured templates deploy a bare-bones site and Simple CMS to Netlify, giving you a fully working CMS-enabled site with just a few clicks.
|
You can add Static CMS [to an existing site](/docs/add-to-your-site/), but the quickest way to get started is with a template. Found below, our featured templates deploy a bare-bones site and Static CMS to Netlify, giving you a fully working CMS-enabled site with just a few clicks.
|
||||||
|
|
||||||
<div style="display: flex; justify-content: left; text-align: center; margin-bottom: 1.5em; flex-wrap: wrap;"stack=cms>
|
<div style="display: flex; justify-content: left; text-align: center; margin-bottom: 1.5em; flex-wrap: wrap;"stack=cms>
|
||||||
<div style="flex-basis: 33%">
|
<div style="flex-basis: 33%">
|
||||||
@ -66,20 +66,20 @@ You can add Simple CMS [to an existing site](/docs/add-to-your-site/), but the q
|
|||||||
|
|
||||||
After clicking one of those buttons, authenticate with GitHub or GitLab and choose a repository name. Netlify then automatically creates a clone of the repository in your GitHub or GitLab account. Next, it builds and deploys the new site on Netlify, bringing you to the site dashboard after completing the build.
|
After clicking one of those buttons, authenticate with GitHub or GitLab and choose a repository name. Netlify then automatically creates a clone of the repository in your GitHub or GitLab account. Next, it builds and deploys the new site on Netlify, bringing you to the site dashboard after completing the build.
|
||||||
|
|
||||||
**Note for Bitbucket users:** Simple CMS supports Bitbucket repositories, but Bitbucket's permissions won't work with the Deploy to Netlify buttons above. You can still set up a repository manually, or follow the [tutorial](/docs/add-to-your-site) for adding Simple CMS to an existing site.
|
**Note for Bitbucket users:** Static CMS supports Bitbucket repositories, but Bitbucket's permissions won't work with the Deploy to Netlify buttons above. You can still set up a repository manually, or follow the [tutorial](/docs/add-to-your-site) for adding Static CMS to an existing site.
|
||||||
|
|
||||||
## Access Simple CMS on your new site
|
## Access Static CMS on your new site
|
||||||
|
|
||||||
1. The template deploy process sends you an invitation to your new site, sent from `no-reply@netlify.com`.
|
1. The template deploy process sends you an invitation to your new site, sent from `no-reply@netlify.com`.
|
||||||
![Sample email subject line: You've been invited to join radiologist-amanda-53841.netlify.com](https://www.simplecms.github.io/simple-cms/img/email-subject.png?raw=true)
|
![Sample email subject line: You've been invited to join radiologist-amanda-53841.netlify.com](https://www.staticjscms.github.io/static-cms/img/email-subject.png?raw=true)
|
||||||
2. Wait for the deployment to complete, then click the link to accept the invite. Your site will open with a prompt to create a password.
|
2. Wait for the deployment to complete, then click the link to accept the invite. Your site will open with a prompt to create a password.
|
||||||
!["Complete your signup" modal on the Kaldi coffee site](https://www.simplecms.github.io/simple-cms/img/create-password.png?raw=true)
|
!["Complete your signup" modal on the Kaldi coffee site](https://www.staticjscms.github.io/static-cms/img/create-password.png?raw=true)
|
||||||
3. Enter a password, sign in, and you’ll go to the CMS. (For future visits, you can go straight to `<yoursiteaddress.com>/admin/`.)
|
3. Enter a password, sign in, and you’ll go to the CMS. (For future visits, you can go straight to `<yoursiteaddress.com>/admin/`.)
|
||||||
|
|
||||||
Try adding and editing posts, or changing the content of the Products page. When you save, the changes are pushed immediately to your Git repository, triggering a build on Netlify, and updating the content on your site. Check out the configuration code by visiting your site repo.
|
Try adding and editing posts, or changing the content of the Products page. When you save, the changes are pushed immediately to your Git repository, triggering a build on Netlify, and updating the content on your site. Check out the configuration code by visiting your site repo.
|
||||||
|
|
||||||
## More paths to explore
|
## More paths to explore
|
||||||
|
|
||||||
* To see how to integrate Simple CMS into an existing project, go to [Add to your site](/docs/add-to-your-site/).
|
* To see how to integrate Static CMS into an existing project, go to [Add to your site](/docs/add-to-your-site/).
|
||||||
* Check out other sites using Simple CMS (or share your own!) on the [Examples](/docs/examples/) page.
|
* Check out other sites using Static CMS (or share your own!) on the [Examples](/docs/examples/) page.
|
||||||
* If you’d like to add more CMS editors or change how they log in to your site, read up on [Netlify Identity service](https://www.netlify.com/docs/identity).
|
* If you’d like to add more CMS editors or change how they log in to your site, read up on [Netlify Identity service](https://www.netlify.com/docs/identity).
|
@ -4,11 +4,11 @@ group: Accounts
|
|||||||
weight: 50
|
weight: 50
|
||||||
---
|
---
|
||||||
|
|
||||||
You can use the `test-repo` backend to try out Simple CMS without connecting to a Git repo. With this backend, you can write and publish content normally, but any changes will disappear when you reload the page. This backend powers the Simple CMS [demo site](https://cms-demo.netlify.com/).
|
You can use the `test-repo` backend to try out Static CMS without connecting to a Git repo. With this backend, you can write and publish content normally, but any changes will disappear when you reload the page. This backend powers the Static CMS [demo site](https://cms-demo.netlify.com/).
|
||||||
|
|
||||||
**Note:** The `test-repo` backend can't access your local file system, nor does it connect to a Git repo, thus you won't see any existing files while using it.
|
**Note:** The `test-repo` backend can't access your local file system, nor does it connect to a Git repo, thus you won't see any existing files while using it.
|
||||||
|
|
||||||
To enable this backend, add the following lines to your Simple CMS `config.yml` file:
|
To enable this backend, add the following lines to your Static CMS `config.yml` file:
|
||||||
|
|
||||||
```yaml
|
```yaml
|
||||||
backend:
|
backend:
|
||||||
|
@ -5,17 +5,17 @@ weight: 30
|
|||||||
---
|
---
|
||||||
Uploadcare is a sleek service that allows you to upload files without worrying about maintaining a growing collection — more of an asset store than a library. Just upload when you need to, and the files are hosted on their CDN. They provide image processing controls from simple cropping and rotation to filters and face detection, and a lot more. You can check out Uploadcare's full feature set on their [website](https://uploadcare.com/).
|
Uploadcare is a sleek service that allows you to upload files without worrying about maintaining a growing collection — more of an asset store than a library. Just upload when you need to, and the files are hosted on their CDN. They provide image processing controls from simple cropping and rotation to filters and face detection, and a lot more. You can check out Uploadcare's full feature set on their [website](https://uploadcare.com/).
|
||||||
|
|
||||||
The Uploadcare media library integration for Simple CMS allows you to use Uploadcare as your media handler within the CMS itself. It's available by default as of our 2.1.0 release, and works in tandem with the existing file and image widgets, so using it only requires creating an Uploadcare account and updating your Simple CMS configuration.
|
The Uploadcare media library integration for Static CMS allows you to use Uploadcare as your media handler within the CMS itself. It's available by default as of our 2.1.0 release, and works in tandem with the existing file and image widgets, so using it only requires creating an Uploadcare account and updating your Static CMS configuration.
|
||||||
|
|
||||||
**Please make sure that Simple CMS is updated to 2.1.0 or greater before proceeding.**
|
**Please make sure that Static CMS is updated to 2.1.0 or greater before proceeding.**
|
||||||
|
|
||||||
## Creating an Uploadcare Account
|
## Creating an Uploadcare Account
|
||||||
|
|
||||||
You can [sign up](https://uploadcare.com/accounts/signup/) for a free Uploadcare account to get started. Once you've signed up, go to your dashboard, select a project, and then select "API keys" from the menu on the left. The public key on the API keys page will be needed in your Simple CMS configuration. For more info on getting your API key, visit their [walkthrough](https://uploadcare.com/docs/keys/).
|
You can [sign up](https://uploadcare.com/accounts/signup/) for a free Uploadcare account to get started. Once you've signed up, go to your dashboard, select a project, and then select "API keys" from the menu on the left. The public key on the API keys page will be needed in your Static CMS configuration. For more info on getting your API key, visit their [walkthrough](https://uploadcare.com/docs/keys/).
|
||||||
|
|
||||||
## Updating Simple CMS Configuration
|
## Updating Static CMS Configuration
|
||||||
|
|
||||||
The next and final step is updating your Simple CMS configuration file:
|
The next and final step is updating your Static CMS configuration file:
|
||||||
|
|
||||||
1. Add a `media_library` property at the same level as `media_folder`, with an object as it's value.
|
1. Add a `media_library` property at the same level as `media_folder`, with an object as it's value.
|
||||||
2. In the `media_library` object, add the name of the media player under `name`.
|
2. In the `media_library` object, add the name of the media player under `name`.
|
||||||
@ -30,15 +30,15 @@ media_library:
|
|||||||
publicKey: YOUR_UPLOADCARE_PUBLIC_KEY
|
publicKey: YOUR_UPLOADCARE_PUBLIC_KEY
|
||||||
```
|
```
|
||||||
|
|
||||||
Once you've finished updating your Simple CMS configuration, the Uploadcare widget will appear when using the image or file widgets.
|
Once you've finished updating your Static CMS configuration, the Uploadcare widget will appear when using the image or file widgets.
|
||||||
|
|
||||||
**Note:** You'll need to [register the media libraries yourself](https://www.simplecms.github.io/simple-cms/blog/2019/07/netlify-cms-gatsby-plugin-4-0-0#using-media-libraries-with-netlify-cms-app).
|
**Note:** You'll need to [register the media libraries yourself](https://www.staticjscms.github.io/static-cms/blog/2019/07/netlify-cms-gatsby-plugin-4-0-0#using-media-libraries-with-netlify-cms-app).
|
||||||
|
|
||||||
## Configuring the Uploadcare Widget
|
## Configuring the Uploadcare Widget
|
||||||
|
|
||||||
The Uploadcare widget can be configured with settings that are outlined [in their docs](https://uploadcare.com/docs/file_uploads/widget/options/). The widget itself accepts configuration through global variables and data properties on HTML elements, but with Simple CMS you can pass configuration options directly through your `config.yml`.
|
The Uploadcare widget can be configured with settings that are outlined [in their docs](https://uploadcare.com/docs/file_uploads/widget/options/). The widget itself accepts configuration through global variables and data properties on HTML elements, but with Static CMS you can pass configuration options directly through your `config.yml`.
|
||||||
|
|
||||||
**Note:** all default values described in Uploadcare's documentation also apply in the Simple CMS integration, except for `previewStep`, which is set to `true`. This was done because the preview step provides helpful information like upload status, and provides access to image editing controls. This option can be disabled through the configuration options below.
|
**Note:** all default values described in Uploadcare's documentation also apply in the Static CMS integration, except for `previewStep`, which is set to `true`. This was done because the preview step provides helpful information like upload status, and provides access to image editing controls. This option can be disabled through the configuration options below.
|
||||||
|
|
||||||
### Global configuration
|
### Global configuration
|
||||||
|
|
||||||
|
@ -4,11 +4,11 @@ group: Fields
|
|||||||
weight: 10
|
weight: 10
|
||||||
---
|
---
|
||||||
|
|
||||||
Widgets define the data type and interface for entry fields. Simple CMS comes with several built-in widgets. Click the widget names in the sidebar to jump to specific widget details. We’re always adding new widgets, and you can also [create your own](../custom-widgets)!
|
Widgets define the data type and interface for entry fields. Static CMS comes with several built-in widgets. Click the widget names in the sidebar to jump to specific widget details. We’re always adding new widgets, and you can also [create your own](../custom-widgets)!
|
||||||
|
|
||||||
Widgets are specified as collection fields in the Simple CMS `config.yml` file. Note that [YAML syntax](https://en.wikipedia.org/wiki/YAML#Basic_components) allows lists and objects to be written in block or inline style, and the code samples below include a mix of both.
|
Widgets are specified as collection fields in the Static CMS `config.yml` file. Note that [YAML syntax](https://en.wikipedia.org/wiki/YAML#Basic_components) allows lists and objects to be written in block or inline style, and the code samples below include a mix of both.
|
||||||
|
|
||||||
To see working examples of all of the built-in widgets, try making a 'Kitchen Sink' collection item on the [CMS demo site](https://cms-demo.netlify.com). (No login required: click the login button and the CMS will open.) You can refer to the demo [configuration code](https://github.com/SimpleCMS/simple-cms/blob/master/dev-test/config.yml) to see how each field was configured.
|
To see working examples of all of the built-in widgets, try making a 'Kitchen Sink' collection item on the [CMS demo site](https://cms-demo.netlify.com). (No login required: click the login button and the CMS will open.) You can refer to the demo [configuration code](https://github.com/StaticJsCMS/static-cms/blob/master/dev-test/config.yml) to see how each field was configured.
|
||||||
|
|
||||||
## Common widget options
|
## Common widget options
|
||||||
|
|
||||||
|
@ -14,7 +14,7 @@ The markdown widget provides a full fledged text editor allowing users to format
|
|||||||
* `default`: accepts markdown content
|
* `default`: accepts markdown content
|
||||||
* `minimal`: accepts a boolean value, `false` by default. Sets the widget height to minimum possible.
|
* `minimal`: accepts a boolean value, `false` by default. Sets the widget height to minimum possible.
|
||||||
* `buttons`: an array of strings representing the formatting buttons to display (all shown by default). Buttons include: `bold`, `italic`, `code`, `link`, `heading-one`, `heading-two`, `heading-three`, `heading-four`, `heading-five`, `heading-six`, `quote`, `bulleted-list`, and `numbered-list`.
|
* `buttons`: an array of strings representing the formatting buttons to display (all shown by default). Buttons include: `bold`, `italic`, `code`, `link`, `heading-one`, `heading-two`, `heading-three`, `heading-four`, `heading-five`, `heading-six`, `quote`, `bulleted-list`, and `numbered-list`.
|
||||||
* `editor_components`: an array of strings representing the names of editor components to display (all shown by default). Simple CMS includes `image` and `code-block` editor components by default, and custom components may be [created and registered](/docs/custom-widgets/#registereditorcomponent).
|
* `editor_components`: an array of strings representing the names of editor components to display (all shown by default). Static CMS includes `image` and `code-block` editor components by default, and custom components may be [created and registered](/docs/custom-widgets/#registereditorcomponent).
|
||||||
* `modes`: an array of strings representing the names of allowed editor modes. Possible modes are `raw` and `rich_text`. A toggle button appears in the toolbar when more than one mode is available.
|
* `modes`: an array of strings representing the names of allowed editor modes. Possible modes are `raw` and `rich_text`. A toggle button appears in the toolbar when more than one mode is available.
|
||||||
* `sanitize_preview`: accepts a boolean value, `false` by default. Sanitizes markdown preview to prevent XSS attacks - might alter the preview content.
|
* `sanitize_preview`: accepts a boolean value, `false` by default. Sanitizes markdown preview to prevent XSS attacks - might alter the preview content.
|
||||||
* **Example:**
|
* **Example:**
|
||||||
|
@ -4,7 +4,7 @@ weight: 30
|
|||||||
group: Contributing
|
group: Contributing
|
||||||
---
|
---
|
||||||
|
|
||||||
# Simple CMS Style Guide
|
# Static CMS Style Guide
|
||||||
_Adapted from the [Kubernetes Style Guide](https://kubernetes.io/docs/contribute/style/style-guide)_
|
_Adapted from the [Kubernetes Style Guide](https://kubernetes.io/docs/contribute/style/style-guide)_
|
||||||
|
|
||||||
## Documentation Formatting Standards
|
## Documentation Formatting Standards
|
||||||
@ -217,7 +217,7 @@ Do: Version 1.4 includes …
|
|||||||
Don't: In version 1.4, we have added …
|
Don't: In version 1.4, we have added …
|
||||||
_____
|
_____
|
||||||
|
|
||||||
Do: Simple CMS provides a new feature for …
|
Do: Static CMS provides a new feature for …
|
||||||
|
|
||||||
Don't: We provide a new feature …
|
Don't: We provide a new feature …
|
||||||
_____
|
_____
|
||||||
|
@ -5,18 +5,18 @@ subhead: Get support, give support, and find out what's new through the channels
|
|||||||
sections:
|
sections:
|
||||||
- title: support
|
- title: support
|
||||||
channels:
|
channels:
|
||||||
- title: Simple CMS Slack
|
- title: Static CMS Slack
|
||||||
description: Live community chat for all things Simple CMS.
|
description: Live community chat for all things Static CMS.
|
||||||
url: /chat
|
url: /chat
|
||||||
- title: Simple CMS Community
|
- title: Static CMS Community
|
||||||
description: Ask and answer questions on GitHub discussions tab.
|
description: Ask and answer questions on GitHub discussions tab.
|
||||||
url: https://github.com/SimpleCMS/simple-cms/discussions
|
url: https://github.com/StaticJsCMS/static-cms/discussions
|
||||||
- title: GitHub Issues
|
- title: GitHub Issues
|
||||||
description: Report bugs, request features, and comment on existing issues.
|
description: Report bugs, request features, and comment on existing issues.
|
||||||
url: https://github.com/SimpleCMS/simple-cms/issues
|
url: https://github.com/StaticJsCMS/static-cms/issues
|
||||||
- title: development
|
- title: development
|
||||||
channels:
|
channels:
|
||||||
- title: Planning
|
- title: Planning
|
||||||
description: Issues board on the Simple CMS GitHub repo.
|
description: Issues board on the Static CMS GitHub repo.
|
||||||
url: https://github.com/orgs/SimpleCMS/projects/1
|
url: https://github.com/orgs/StaticJsCMS/projects/1
|
||||||
---
|
---
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
footer:
|
footer:
|
||||||
buttons:
|
buttons:
|
||||||
- name: "Twitter"
|
- name: "Twitter"
|
||||||
url: "https://twitter.com/SimpleCMSOrg"
|
url: "https://twitter.com/StaticJsCMS"
|
||||||
- name: "GitHub"
|
- name: "GitHub"
|
||||||
url: "https://github.com/SimpleCMS/simple-cms"
|
url: "https://github.com/StaticJsCMS/static-cms"
|
||||||
|
@ -1,13 +1,13 @@
|
|||||||
hero:
|
hero:
|
||||||
headline: "Open source content management for your Git workflow"
|
headline: "Open source content management for your Git workflow"
|
||||||
subhead: "Use Simple CMS with any static site generator for a faster and more flexible web project"
|
subhead: "Use Static CMS with any static site generator for a faster and more flexible web project"
|
||||||
devfeatures:
|
devfeatures:
|
||||||
- feature: "Static + content management = ♥"
|
- feature: "Static + content management = ♥"
|
||||||
description: "Get the speed, security, and scalability of a static site, while still providing a convenient editing interface for content."
|
description: "Get the speed, security, and scalability of a static site, while still providing a convenient editing interface for content."
|
||||||
- feature: "An integrated part of your Git workflow"
|
- feature: "An integrated part of your Git workflow"
|
||||||
description: "Content is stored in your Git repository alongside your code for easier versioning, multi-channel publishing, and the option to handle content updates directly in Git."
|
description: "Content is stored in your Git repository alongside your code for easier versioning, multi-channel publishing, and the option to handle content updates directly in Git."
|
||||||
- feature: "An extensible CMS built on React"
|
- feature: "An extensible CMS built on React"
|
||||||
description: "Simple CMS is built as a single-page React app. Create custom-styled previews, UI widgets, and editor plugins or add backends to support different Git platform APIs."
|
description: "Static CMS is built as a single-page React app. Create custom-styled previews, UI widgets, and editor plugins or add backends to support different Git platform APIs."
|
||||||
|
|
||||||
cta:
|
cta:
|
||||||
primaryhook: "Getting started is simple and free."
|
primaryhook: "Getting started is simple and free."
|
||||||
@ -32,10 +32,10 @@ community:
|
|||||||
hook: "Supported by a growing community"
|
hook: "Supported by a growing community"
|
||||||
features:
|
features:
|
||||||
- feature: "Built on the Jamstack"
|
- feature: "Built on the Jamstack"
|
||||||
description: "Simple CMS is based on client-side JavaScript, reusable APIs and prebuilt Markup. Compared to server-side CMS like WordPress, this means better performance, higher security, lower cost of scaling, and a better developer experience. You can learn more about the Jamstack on [jamstack.org](https://jamstack.org)."
|
description: "Static CMS is based on client-side JavaScript, reusable APIs and prebuilt Markup. Compared to server-side CMS like WordPress, this means better performance, higher security, lower cost of scaling, and a better developer experience. You can learn more about the Jamstack on [jamstack.org](https://jamstack.org)."
|
||||||
- feature: "Support when you need it"
|
- feature: "Support when you need it"
|
||||||
description: "Get up and running with comprehensive [documentation](/docs) and templates or work through difficult problems in our [community chat](https://simplecms.github.io/simple-cms/chat)."
|
description: "Get up and running with comprehensive [documentation](/docs) and templates or work through difficult problems in our [community chat](https://staticjscms.github.io/static-cms/chat)."
|
||||||
- feature: "A community-driven project you can help evolve"
|
- feature: "A community-driven project you can help evolve"
|
||||||
description: "Simple CMS is built by a community of more than 100 contributors — and you can help. Read the [contributing guide](/docs/contributor-guide) to join in."
|
description: "Static CMS is built by a community of more than 100 contributors — and you can help. Read the [contributing guide](/docs/contributor-guide) to join in."
|
||||||
contributors: "Made possible by awesome contributors"
|
contributors: "Made possible by awesome contributors"
|
||||||
|
|
||||||
|
@ -4,4 +4,4 @@ notifications:
|
|||||||
project with other devs!
|
project with other devs!
|
||||||
published: false
|
published: false
|
||||||
title: Chat shoutout
|
title: Chat shoutout
|
||||||
url: https://simplecms.github.io/simple-cms/chat
|
url: https://staticjscms.github.io/static-cms/chat
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
updates:
|
updates:
|
||||||
- date: 2022-10-30T00:00:00.000Z
|
- date: 2022-10-30T00:00:00.000Z
|
||||||
version: 1.0.0
|
version: 1.0.0
|
||||||
description: The first major release of Simple CMS with an all-new UI, revamped
|
description: The first major release of Static CMS with an all-new UI, revamped
|
||||||
documentation and much more.
|
documentation and much more.
|
||||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
x
Reference in New Issue
Block a user