create-docusaurus 2.0.0-beta.16 → 2.0.0-beta.19

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (27) hide show
  1. package/bin/index.js +13 -14
  2. package/lib/index.js +22 -23
  3. package/package.json +9 -9
  4. package/templates/classic/docusaurus.config.js +15 -1
  5. package/templates/classic/package.json +9 -6
  6. package/templates/classic/src/components/HomepageFeatures/index.js +1 -1
  7. package/templates/classic/src/css/custom.css +2 -11
  8. package/templates/classic/src/pages/index.module.css +1 -1
  9. package/templates/classic-typescript/package.json +9 -9
  10. package/templates/classic-typescript/src/components/HomepageFeatures/index.tsx +6 -6
  11. package/templates/facebook/docusaurus.config.js +5 -0
  12. package/templates/facebook/package.json +14 -14
  13. package/templates/facebook/src/css/custom.css +0 -7
  14. package/templates/facebook/src/pages/styles.module.css +1 -1
  15. package/templates/shared/docs/tutorial-basics/_category_.json +5 -1
  16. package/templates/shared/docs/tutorial-basics/create-a-document.md +3 -3
  17. package/templates/shared/docs/tutorial-basics/markdown-features.mdx +3 -1
  18. package/templates/shared/docs/tutorial-extras/_category_.json +4 -1
  19. package/templates/shared/docs/tutorial-extras/img/docsVersionDropdown.png +0 -0
  20. package/templates/shared/docs/tutorial-extras/img/localeDropdown.png +0 -0
  21. package/templates/shared/docs/tutorial-extras/manage-docs-versions.md +1 -1
  22. package/templates/shared/docs/tutorial-extras/translate-your-site.md +1 -1
  23. package/templates/shared/static/img/undraw_docusaurus_mountain.svg +1 -0
  24. package/templates/shared/static/img/undraw_docusaurus_react.svg +1 -0
  25. package/templates/shared/static/img/undraw_docusaurus_tree.svg +40 -1
  26. package/templates/shared/static/img/tutorial/docsVersionDropdown.png +0 -0
  27. package/templates/shared/static/img/tutorial/localeDropdown.png +0 -0
package/bin/index.js CHANGED
@@ -13,7 +13,6 @@ import semver from 'semver';
13
13
  import path from 'path';
14
14
  import {program} from 'commander';
15
15
  import {createRequire} from 'module';
16
- import init from '../lib/index.js';
17
16
 
18
17
  const packageJson = createRequire(import.meta.url)('../package.json');
19
18
  const requiredVersion = packageJson.engines.node;
@@ -24,14 +23,6 @@ if (!semver.satisfies(process.version, requiredVersion)) {
24
23
  process.exit(1);
25
24
  }
26
25
 
27
- function wrapCommand(fn) {
28
- return (...args) =>
29
- fn(...args).catch((err) => {
30
- logger.error(err.stack);
31
- process.exitCode = 1;
32
- });
33
- }
34
-
35
26
  program.version(packageJson.version);
36
27
 
37
28
  program
@@ -61,11 +52,14 @@ program
61
52
  rootDir = '.',
62
53
  {packageManager, skipInstall, typescript, gitStrategy} = {},
63
54
  ) => {
64
- wrapCommand(init)(path.resolve(rootDir), siteName, template, {
65
- packageManager,
66
- skipInstall,
67
- typescript,
68
- gitStrategy,
55
+ // See https://github.com/facebook/docusaurus/pull/6860
56
+ import('../lib/index.js').then(({default: init}) => {
57
+ init(path.resolve(rootDir), siteName, template, {
58
+ packageManager,
59
+ skipInstall,
60
+ typescript,
61
+ gitStrategy,
62
+ });
69
63
  });
70
64
  },
71
65
  );
@@ -75,3 +69,8 @@ program.parse(process.argv);
75
69
  if (!process.argv.slice(1).length) {
76
70
  program.outputHelp();
77
71
  }
72
+
73
+ process.on('unhandledRejection', (err) => {
74
+ logger.error(err);
75
+ process.exit(1);
76
+ });
package/lib/index.js CHANGED
@@ -25,7 +25,7 @@ const SupportedPackageManagers = {
25
25
  const PackageManagersList = Object.keys(SupportedPackageManagers);
26
26
  async function findPackageManagerFromLockFile() {
27
27
  for (const packageManager of PackageManagersList) {
28
- const lockFilePath = path.resolve(process.cwd(), SupportedPackageManagers[packageManager]);
28
+ const lockFilePath = path.resolve(SupportedPackageManagers[packageManager]);
29
29
  if (await fs.pathExists(lockFilePath)) {
30
30
  return packageManager;
31
31
  }
@@ -33,15 +33,15 @@ async function findPackageManagerFromLockFile() {
33
33
  return undefined;
34
34
  }
35
35
  function findPackageManagerFromUserAgent() {
36
- return PackageManagersList.find((packageManager) => { var _a; return (_a = process.env.npm_config_user_agent) === null || _a === void 0 ? void 0 : _a.startsWith(packageManager); });
36
+ return PackageManagersList.find((packageManager) => process.env.npm_config_user_agent?.startsWith(packageManager));
37
37
  }
38
38
  async function askForPackageManagerChoice() {
39
39
  const hasYarn = shell.exec('yarn --version', { silent: true }).code === 0;
40
- const hasPNPM = shell.exec('pnpm --version', { silent: true }).code === 0;
41
- if (!hasYarn && !hasPNPM) {
40
+ const hasPnpm = shell.exec('pnpm --version', { silent: true }).code === 0;
41
+ if (!hasYarn && !hasPnpm) {
42
42
  return 'npm';
43
43
  }
44
- const choices = ['npm', hasYarn && 'yarn', hasPNPM && 'pnpm']
44
+ const choices = ['npm', hasYarn && 'yarn', hasPnpm && 'pnpm']
45
45
  .filter((p) => Boolean(p))
46
46
  .map((p) => ({ title: p, value: p }));
47
47
  return (await prompts({
@@ -52,21 +52,21 @@ async function askForPackageManagerChoice() {
52
52
  })).packageManager;
53
53
  }
54
54
  async function getPackageManager(packageManagerChoice, skipInstall = false) {
55
- var _a, _b;
56
55
  if (packageManagerChoice &&
57
56
  !PackageManagersList.includes(packageManagerChoice)) {
58
57
  throw new Error(`Invalid package manager choice ${packageManagerChoice}. Must be one of ${PackageManagersList.join(', ')}`);
59
58
  }
60
- return ((_b = (_a = packageManagerChoice !== null && packageManagerChoice !== void 0 ? packageManagerChoice : (await findPackageManagerFromLockFile())) !== null && _a !== void 0 ? _a : findPackageManagerFromUserAgent()) !== null && _b !== void 0 ? _b :
61
- // This only happens if the user has a global installation in PATH
62
- (skipInstall ? DefaultPackageManager : askForPackageManagerChoice()));
59
+ return (packageManagerChoice ??
60
+ (await findPackageManagerFromLockFile()) ??
61
+ findPackageManagerFromUserAgent() ??
62
+ // This only happens if the user has a global installation in PATH
63
+ (skipInstall ? DefaultPackageManager : askForPackageManagerChoice()));
63
64
  }
64
65
  function isValidGitRepoUrl(gitRepoUrl) {
65
66
  return ['https://', 'git@'].some((item) => gitRepoUrl.startsWith(item));
66
67
  }
67
68
  async function updatePkg(pkgPath, obj) {
68
- const content = await fs.readFile(pkgPath, 'utf-8');
69
- const pkg = JSON.parse(content);
69
+ const pkg = await fs.readJSON(pkgPath);
70
70
  const newPkg = Object.assign(pkg, obj);
71
71
  await fs.outputFile(pkgPath, `${JSON.stringify(newPkg, null, 2)}\n`);
72
72
  }
@@ -96,7 +96,7 @@ function getTypeScriptBaseTemplate(template) {
96
96
  return undefined;
97
97
  }
98
98
  async function copyTemplate(templatesDir, template, dest) {
99
- await fs.copy(path.resolve(templatesDir, 'shared'), dest);
99
+ await fs.copy(path.join(templatesDir, 'shared'), dest);
100
100
  // TypeScript variants will copy duplicate resources like CSS & config from
101
101
  // base template
102
102
  const tsBaseTemplate = getTypeScriptBaseTemplate(template);
@@ -109,7 +109,7 @@ async function copyTemplate(templatesDir, template, dest) {
109
109
  });
110
110
  }
111
111
  await fs.copy(path.resolve(templatesDir, template), dest, {
112
- // Symlinks don't exist in published NPM packages anymore, so this is only
112
+ // Symlinks don't exist in published npm packages anymore, so this is only
113
113
  // to prevent errors during local testing
114
114
  filter: async (filePath) => !(await fs.lstat(filePath)).isSymbolicLink(),
115
115
  });
@@ -134,10 +134,9 @@ async function getGitCommand(gitStrategy) {
134
134
  }
135
135
  }
136
136
  export default async function init(rootDir, siteName, reqTemplate, cliOptions = {}) {
137
- var _a;
138
137
  const templatesDir = fileURLToPath(new URL('../templates', import.meta.url));
139
138
  const templates = await readTemplates(templatesDir);
140
- const hasTS = (templateName) => fs.pathExists(path.resolve(templatesDir, `${templateName}${TypeScriptTemplateSuffix}`));
139
+ const hasTS = (templateName) => fs.pathExists(path.join(templatesDir, `${templateName}${TypeScriptTemplateSuffix}`));
141
140
  let name = siteName;
142
141
  // Prompt if siteName is not passed from CLI.
143
142
  if (!name) {
@@ -179,7 +178,7 @@ export default async function init(rootDir, siteName, reqTemplate, cliOptions =
179
178
  useTS = tsPrompt.useTS;
180
179
  }
181
180
  }
182
- let gitStrategy = (_a = cliOptions.gitStrategy) !== null && _a !== void 0 ? _a : 'deep';
181
+ let gitStrategy = cliOptions.gitStrategy ?? 'deep';
183
182
  // If user choose Git repository, we'll prompt for the url.
184
183
  if (template === 'Git repository') {
185
184
  const repoPrompt = await prompts({
@@ -192,7 +191,7 @@ export default async function init(rootDir, siteName, reqTemplate, cliOptions =
192
191
  return logger.red('Invalid repository URL');
193
192
  },
194
193
  message: logger.interpolate `Enter a repository URL from GitHub, Bitbucket, GitLab, or any other public repo.
195
- (e.g: path=${'https://github.com/ownerName/repoName.git'})`,
194
+ (e.g: url=${'https://github.com/ownerName/repoName.git'})`,
196
195
  });
197
196
  ({ gitStrategy } = await prompts({
198
197
  type: 'select',
@@ -216,7 +215,7 @@ export default async function init(rootDir, siteName, reqTemplate, cliOptions =
216
215
  name: 'templateDir',
217
216
  validate: async (dir) => {
218
217
  if (dir) {
219
- const fullDir = path.resolve(process.cwd(), dir);
218
+ const fullDir = path.resolve(dir);
220
219
  if (await fs.pathExists(fullDir)) {
221
220
  return true;
222
221
  }
@@ -234,7 +233,7 @@ export default async function init(rootDir, siteName, reqTemplate, cliOptions =
234
233
  }
235
234
  logger.info('Creating new Docusaurus project...');
236
235
  if (isValidGitRepoUrl(template)) {
237
- logger.info `Cloning Git template path=${template}...`;
236
+ logger.info `Cloning Git template url=${template}...`;
238
237
  if (!gitStrategies.includes(gitStrategy)) {
239
238
  logger.error `Invalid git strategy: name=${gitStrategy}. Value must be one of ${gitStrategies.join(', ')}.`;
240
239
  process.exit(1);
@@ -252,7 +251,7 @@ export default async function init(rootDir, siteName, reqTemplate, cliOptions =
252
251
  // Docusaurus templates.
253
252
  if (useTS) {
254
253
  if (!(await hasTS(template))) {
255
- logger.error `Template name=${template} doesn't provide the Typescript variant.`;
254
+ logger.error `Template name=${template} doesn't provide the TypeScript variant.`;
256
255
  process.exit(1);
257
256
  }
258
257
  template = `${template}${TypeScriptTemplateSuffix}`;
@@ -265,8 +264,8 @@ export default async function init(rootDir, siteName, reqTemplate, cliOptions =
265
264
  throw err;
266
265
  }
267
266
  }
268
- else if (await fs.pathExists(path.resolve(process.cwd(), template))) {
269
- const templateDir = path.resolve(process.cwd(), template);
267
+ else if (await fs.pathExists(path.resolve(template))) {
268
+ const templateDir = path.resolve(template);
270
269
  try {
271
270
  await fs.copy(templateDir, dest);
272
271
  }
@@ -322,7 +321,7 @@ export default async function init(rootDir, siteName, reqTemplate, cliOptions =
322
321
  }
323
322
  }
324
323
  const useNpm = pkgManager === 'npm';
325
- logger.success `Created path=${cdpath}.`;
324
+ logger.success `Created name=${cdpath}.`;
326
325
  logger.info `Inside that directory, you can run several commands:
327
326
 
328
327
  code=${`${pkgManager} start`}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "create-docusaurus",
3
- "version": "2.0.0-beta.16",
3
+ "version": "2.0.0-beta.19",
4
4
  "description": "Create Docusaurus apps easily.",
5
5
  "type": "module",
6
6
  "repository": {
@@ -13,8 +13,8 @@
13
13
  },
14
14
  "scripts": {
15
15
  "create-docusaurus": "create-docusaurus",
16
- "build": "tsc",
17
- "watch": "tsc --watch"
16
+ "build": "tsc -p tsconfig.build.json",
17
+ "watch": "tsc -p tsconfig.build.json --watch"
18
18
  },
19
19
  "bin": "bin/index.js",
20
20
  "publishConfig": {
@@ -22,15 +22,15 @@
22
22
  },
23
23
  "license": "MIT",
24
24
  "dependencies": {
25
- "@docusaurus/logger": "2.0.0-beta.16",
25
+ "@docusaurus/logger": "2.0.0-beta.19",
26
26
  "commander": "^5.1.0",
27
- "fs-extra": "^10.0.1",
27
+ "fs-extra": "^10.1.0",
28
28
  "lodash": "^4.17.21",
29
29
  "prompts": "^2.4.2",
30
- "semver": "^7.3.5",
30
+ "semver": "^7.3.7",
31
31
  "shelljs": "^0.8.5",
32
- "supports-color": "^9.2.1",
33
- "tslib": "^2.3.1"
32
+ "supports-color": "^9.2.2",
33
+ "tslib": "^2.4.0"
34
34
  },
35
35
  "devDependencies": {
36
36
  "@types/supports-color": "^8.1.1"
@@ -38,5 +38,5 @@
38
38
  "engines": {
39
39
  "node": ">=14"
40
40
  },
41
- "gitHead": "eb43c4d4f95a4fb97dc9bb9dc615413e0dc2e1e7"
41
+ "gitHead": "a71e60a49cce93c1006ef10c41ac03187f057102"
42
42
  }
@@ -13,9 +13,20 @@ const config = {
13
13
  onBrokenLinks: 'throw',
14
14
  onBrokenMarkdownLinks: 'warn',
15
15
  favicon: 'img/favicon.ico',
16
+
17
+ // GitHub pages deployment config.
18
+ // If you aren't using GitHub pages, you don't need these.
16
19
  organizationName: 'facebook', // Usually your GitHub org/user name.
17
20
  projectName: 'docusaurus', // Usually your repo name.
18
21
 
22
+ // Even if you don't use internalization, you can use this field to set useful
23
+ // metadata like html lang. For example, if your site is Chinese, you may want
24
+ // to replace "en" with "zh-Hans".
25
+ i18n: {
26
+ defaultLocale: 'en',
27
+ locales: ['en'],
28
+ },
29
+
19
30
  presets: [
20
31
  [
21
32
  'classic',
@@ -24,11 +35,14 @@ const config = {
24
35
  docs: {
25
36
  sidebarPath: require.resolve('./sidebars.js'),
26
37
  // Please change this to your repo.
27
- editUrl: 'https://github.com/facebook/docusaurus/tree/main/packages/create-docusaurus/templates/shared/',
38
+ // Remove this to remove the "edit this page" links.
39
+ editUrl:
40
+ 'https://github.com/facebook/docusaurus/tree/main/packages/create-docusaurus/templates/shared/',
28
41
  },
29
42
  blog: {
30
43
  showReadingTime: true,
31
44
  // Please change this to your repo.
45
+ // Remove this to remove the "edit this page" links.
32
46
  editUrl:
33
47
  'https://github.com/facebook/docusaurus/tree/main/packages/create-docusaurus/templates/shared/',
34
48
  },
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "docusaurus-2-classic-template",
3
- "version": "2.0.0-beta.16",
3
+ "version": "2.0.0-beta.19",
4
4
  "private": true,
5
5
  "scripts": {
6
6
  "docusaurus": "docusaurus",
@@ -14,13 +14,16 @@
14
14
  "write-heading-ids": "docusaurus write-heading-ids"
15
15
  },
16
16
  "dependencies": {
17
- "@docusaurus/core": "2.0.0-beta.16",
18
- "@docusaurus/preset-classic": "2.0.0-beta.16",
17
+ "@docusaurus/core": "2.0.0-beta.19",
18
+ "@docusaurus/preset-classic": "2.0.0-beta.19",
19
19
  "@mdx-js/react": "^1.6.22",
20
20
  "clsx": "^1.1.1",
21
- "prism-react-renderer": "^1.2.1",
22
- "react": "^17.0.1",
23
- "react-dom": "^17.0.1"
21
+ "prism-react-renderer": "^1.3.1",
22
+ "react": "^17.0.2",
23
+ "react-dom": "^17.0.2"
24
+ },
25
+ "devDependencies": {
26
+ "@docusaurus/module-type-aliases": "2.0.0-beta.19"
24
27
  },
25
28
  "browserslist": {
26
29
  "production": [
@@ -39,7 +39,7 @@ function Feature({Svg, title, description}) {
39
39
  return (
40
40
  <div className={clsx('col col--4')}>
41
41
  <div className="text--center">
42
- <Svg className={styles.featureSvg} alt={title} />
42
+ <Svg className={styles.featureSvg} role="img" />
43
43
  </div>
44
44
  <div className="text--center padding-horiz--md">
45
45
  <h3>{title}</h3>
@@ -14,6 +14,7 @@
14
14
  --ifm-color-primary-lighter: #359962;
15
15
  --ifm-color-primary-lightest: #3cad6e;
16
16
  --ifm-code-font-size: 95%;
17
+ --docusaurus-highlighted-code-line-bg: rgba(0, 0, 0, 0.1);
17
18
  }
18
19
 
19
20
  /* For readability concerns, you should choose a lighter palette in dark mode. */
@@ -25,15 +26,5 @@
25
26
  --ifm-color-primary-light: #29d5b0;
26
27
  --ifm-color-primary-lighter: #32d8b4;
27
28
  --ifm-color-primary-lightest: #4fddbf;
28
- }
29
-
30
- .docusaurus-highlight-code-line {
31
- background-color: rgba(0, 0, 0, 0.1);
32
- display: block;
33
- margin: 0 calc(-1 * var(--ifm-pre-padding));
34
- padding: 0 var(--ifm-pre-padding);
35
- }
36
-
37
- [data-theme='dark'] .docusaurus-highlight-code-line {
38
- background-color: rgba(0, 0, 0, 0.3);
29
+ --docusaurus-highlighted-code-line-bg: rgba(0, 0, 0, 0.3);
39
30
  }
@@ -10,7 +10,7 @@
10
10
  overflow: hidden;
11
11
  }
12
12
 
13
- @media screen and (max-width: 966px) {
13
+ @media screen and (max-width: 996px) {
14
14
  .heroBanner {
15
15
  padding: 2rem;
16
16
  }
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "docusaurus-2-classic-typescript-template",
3
- "version": "2.0.0-beta.16",
3
+ "version": "2.0.0-beta.19",
4
4
  "private": true,
5
5
  "scripts": {
6
6
  "docusaurus": "docusaurus",
@@ -15,18 +15,18 @@
15
15
  "typecheck": "tsc"
16
16
  },
17
17
  "dependencies": {
18
- "@docusaurus/core": "2.0.0-beta.16",
19
- "@docusaurus/preset-classic": "2.0.0-beta.16",
18
+ "@docusaurus/core": "2.0.0-beta.19",
19
+ "@docusaurus/preset-classic": "2.0.0-beta.19",
20
20
  "@mdx-js/react": "^1.6.22",
21
21
  "clsx": "^1.1.1",
22
- "prism-react-renderer": "^1.2.1",
23
- "react": "^17.0.1",
24
- "react-dom": "^17.0.1"
22
+ "prism-react-renderer": "^1.3.1",
23
+ "react": "^17.0.2",
24
+ "react-dom": "^17.0.2"
25
25
  },
26
26
  "devDependencies": {
27
- "@docusaurus/module-type-aliases": "2.0.0-beta.16",
28
- "@tsconfig/docusaurus": "^1.0.4",
29
- "typescript": "^4.5.2"
27
+ "@docusaurus/module-type-aliases": "2.0.0-beta.19",
28
+ "@tsconfig/docusaurus": "^1.0.5",
29
+ "typescript": "^4.6.4"
30
30
  },
31
31
  "browserslist": {
32
32
  "production": [
@@ -4,14 +4,14 @@ import styles from './styles.module.css';
4
4
 
5
5
  type FeatureItem = {
6
6
  title: string;
7
- image: string;
7
+ Svg: React.ComponentType<React.ComponentProps<'svg'>>;
8
8
  description: JSX.Element;
9
9
  };
10
10
 
11
11
  const FeatureList: FeatureItem[] = [
12
12
  {
13
13
  title: 'Easy to Use',
14
- image: require('@site/src/static/img/undraw_docusaurus_mountain.svg'),
14
+ Svg: require('@site/static/img/undraw_docusaurus_mountain.svg').default,
15
15
  description: (
16
16
  <>
17
17
  Docusaurus was designed from the ground up to be easily installed and
@@ -21,7 +21,7 @@ const FeatureList: FeatureItem[] = [
21
21
  },
22
22
  {
23
23
  title: 'Focus on What Matters',
24
- image: require('@site/src/static/img/undraw_docusaurus_tree.svg'),
24
+ Svg: require('@site/static/img/undraw_docusaurus_tree.svg').default,
25
25
  description: (
26
26
  <>
27
27
  Docusaurus lets you focus on your docs, and we&apos;ll do the chores. Go
@@ -31,7 +31,7 @@ const FeatureList: FeatureItem[] = [
31
31
  },
32
32
  {
33
33
  title: 'Powered by React',
34
- image: require('@site/src/static/img/undraw_docusaurus_react.svg'),
34
+ Svg: require('@site/static/img/undraw_docusaurus_react.svg').default,
35
35
  description: (
36
36
  <>
37
37
  Extend or customize your website layout by reusing React. Docusaurus can
@@ -41,11 +41,11 @@ const FeatureList: FeatureItem[] = [
41
41
  },
42
42
  ];
43
43
 
44
- function Feature({title, image, description}: FeatureItem) {
44
+ function Feature({title, Svg, description}: FeatureItem) {
45
45
  return (
46
46
  <div className={clsx('col col--4')}>
47
47
  <div className="text--center">
48
- <img className={styles.featureSvg} alt={title} src={image} />
48
+ <Svg className={styles.featureSvg} role="img" />
49
49
  </div>
50
50
  <div className="text--center padding-horiz--md">
51
51
  <h3>{title}</h3>
@@ -18,6 +18,9 @@ const config = {
18
18
  onBrokenLinks: 'throw',
19
19
  onBrokenMarkdownLinks: 'warn',
20
20
  favicon: 'img/favicon.ico',
21
+
22
+ // GitHub pages deployment config.
23
+ // If you aren't using GitHub pages, you don't need these.
21
24
  organizationName: 'facebook', // Usually your GitHub org/user name.
22
25
  projectName: 'docusaurus', // Usually your repo name.
23
26
 
@@ -29,12 +32,14 @@ const config = {
29
32
  docs: {
30
33
  sidebarPath: require.resolve('./sidebars.js'),
31
34
  // Please change this to your repo.
35
+ // Remove this to remove the "edit this page" links.
32
36
  editUrl:
33
37
  'https://github.com/facebook/docusaurus/tree/main/packages/create-docusaurus/templates/shared/',
34
38
  },
35
39
  blog: {
36
40
  showReadingTime: true,
37
41
  // Please change this to your repo.
42
+ // Remove this to remove the "edit this page" links.
38
43
  editUrl:
39
44
  'https://github.com/facebook/docusaurus/tree/main/packages/create-docusaurus/templates/shared/',
40
45
  },
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "docusaurus-2-facebook-template",
3
- "version": "2.0.0-beta.16",
3
+ "version": "2.0.0-beta.19",
4
4
  "private": true,
5
5
  "scripts": {
6
6
  "docusaurus": "docusaurus",
@@ -18,25 +18,25 @@
18
18
  "format:diff": "prettier --config .prettierrc --list-different \"**/*.{js,jsx,ts,tsx,md,mdx}\""
19
19
  },
20
20
  "dependencies": {
21
- "@docusaurus/core": "2.0.0-beta.16",
22
- "@docusaurus/preset-classic": "2.0.0-beta.16",
21
+ "@docusaurus/core": "2.0.0-beta.19",
22
+ "@docusaurus/preset-classic": "2.0.0-beta.19",
23
23
  "@mdx-js/react": "^1.6.22",
24
24
  "clsx": "^1.1.1",
25
- "react": "^17.0.1",
26
- "react-dom": "^17.0.1"
25
+ "react": "^17.0.2",
26
+ "react-dom": "^17.0.2"
27
27
  },
28
28
  "devDependencies": {
29
- "@babel/eslint-parser": "^7.16.3",
30
- "eslint": "^8.8.0",
31
- "eslint-config-airbnb": "^19.0.0",
32
- "eslint-config-prettier": "^8.4.0",
29
+ "@babel/eslint-parser": "^7.17.0",
30
+ "eslint": "^8.14.0",
31
+ "eslint-config-airbnb": "^19.0.4",
32
+ "eslint-config-prettier": "^8.5.0",
33
33
  "eslint-plugin-header": "^3.1.1",
34
- "eslint-plugin-import": "^2.25.3",
34
+ "eslint-plugin-import": "^2.26.0",
35
35
  "eslint-plugin-jsx-a11y": "^6.5.1",
36
- "eslint-plugin-react": "^7.27.0",
37
- "eslint-plugin-react-hooks": "^4.3.0",
38
- "prettier": "^2.5.1",
39
- "stylelint": "^14.5.3"
36
+ "eslint-plugin-react": "^7.29.4",
37
+ "eslint-plugin-react-hooks": "^4.5.0",
38
+ "prettier": "^2.6.2",
39
+ "stylelint": "^14.8.1"
40
40
  },
41
41
  "browserslist": {
42
42
  "production": [
@@ -35,10 +35,3 @@
35
35
  --ifm-color-primary-lighter: #32d8b4;
36
36
  --ifm-color-primary-lightest: #4fddbf;
37
37
  }
38
-
39
- .docusaurus-highlight-code-line {
40
- background-color: rgb(72, 77, 91);
41
- display: block;
42
- margin: 0 calc(-1 * var(--ifm-pre-padding));
43
- padding: 0 var(--ifm-pre-padding);
44
- }
@@ -19,7 +19,7 @@
19
19
  overflow: hidden;
20
20
  }
21
21
 
22
- @media screen and (max-width: 966px) {
22
+ @media screen and (max-width: 996px) {
23
23
  .heroBanner {
24
24
  padding: 2rem;
25
25
  }
@@ -1,4 +1,8 @@
1
1
  {
2
2
  "label": "Tutorial - Basics",
3
- "position": 2
3
+ "position": 2,
4
+ "link": {
5
+ "type": "generated-index",
6
+ "description": "5 minutes to learn the most important Docusaurus concepts."
7
+ }
4
8
  }
@@ -41,14 +41,14 @@ This is my **first Docusaurus document**!
41
41
 
42
42
  It is also possible to create your sidebar explicitly in `sidebars.js`:
43
43
 
44
- ```diff title="sidebars.js"
44
+ ```js title="sidebars.js"
45
45
  module.exports = {
46
46
  tutorialSidebar: [
47
47
  {
48
48
  type: 'category',
49
49
  label: 'Tutorial',
50
- - items: [...],
51
- + items: ['hello'],
50
+ // highlight-next-line
51
+ items: ['hello'],
52
52
  },
53
53
  ],
54
54
  };
@@ -43,7 +43,7 @@ Let's see how to [Create a page](./create-a-page.md).
43
43
 
44
44
  Regular Markdown images are supported.
45
45
 
46
- Add an image at `static/img/docusaurus.png` and display it in Markdown:
46
+ You can use absolute paths to reference images in the static directory (`static/img/docusaurus.png`):
47
47
 
48
48
  ```md
49
49
  ![Docusaurus logo](/img/docusaurus.png)
@@ -51,6 +51,8 @@ Add an image at `static/img/docusaurus.png` and display it in Markdown:
51
51
 
52
52
  ![Docusaurus logo](/img/docusaurus.png)
53
53
 
54
+ You can reference images relative to the current file as well, as shown in [the extra guides](../tutorial-extras/manage-docs-versions.md).
55
+
54
56
  ## Code Blocks
55
57
 
56
58
  Markdown code blocks are supported with Syntax highlighting.
@@ -1,4 +1,7 @@
1
1
  {
2
2
  "label": "Tutorial - Extras",
3
- "position": 3
3
+ "position": 3,
4
+ "link": {
5
+ "type": "generated-index"
6
+ }
4
7
  }
@@ -45,7 +45,7 @@ module.exports = {
45
45
 
46
46
  The docs version dropdown appears in your navbar:
47
47
 
48
- ![Docs Version Dropdown](/img/tutorial/docsVersionDropdown.png)
48
+ ![Docs Version Dropdown](./img/docsVersionDropdown.png)
49
49
 
50
50
  ## Update an existing version
51
51
 
@@ -71,7 +71,7 @@ module.exports = {
71
71
 
72
72
  The locale dropdown now appears in your navbar:
73
73
 
74
- ![Locale Dropdown](/img/tutorial/localeDropdown.png)
74
+ ![Locale Dropdown](./img/localeDropdown.png)
75
75
 
76
76
  ## Build your localized site
77
77
 
@@ -1,4 +1,5 @@
1
1
  <svg xmlns="http://www.w3.org/2000/svg" width="1088" height="687.962" viewBox="0 0 1088 687.962">
2
+ <title>Easy to Use</title>
2
3
  <g id="Group_12" data-name="Group 12" transform="translate(-57 -56)">
3
4
  <g id="Group_11" data-name="Group 11" transform="translate(57 56)">
4
5
  <path id="Path_83" data-name="Path 83" d="M1017.81,560.461c-5.27,45.15-16.22,81.4-31.25,110.31-20,38.52-54.21,54.04-84.77,70.28a193.275,193.275,0,0,1-27.46,11.94c-55.61,19.3-117.85,14.18-166.74,3.99a657.282,657.282,0,0,0-104.09-13.16q-14.97-.675-29.97-.67c-15.42.02-293.07,5.29-360.67-131.57-16.69-33.76-28.13-75-32.24-125.27-11.63-142.12,52.29-235.46,134.74-296.47,155.97-115.41,369.76-110.57,523.43,7.88C941.15,276.621,1036.99,396.031,1017.81,560.461Z" transform="translate(-56 -106.019)" fill="#3f3d56"/>
@@ -1,4 +1,5 @@
1
1
  <svg xmlns="http://www.w3.org/2000/svg" width="1041.277" height="554.141" viewBox="0 0 1041.277 554.141">
2
+ <title>Powered by React</title>
2
3
  <g id="Group_24" data-name="Group 24" transform="translate(-440 -263)">
3
4
  <g id="Group_23" data-name="Group 23" transform="translate(439.989 262.965)">
4
5
  <path id="Path_299" data-name="Path 299" d="M1040.82,611.12q-1.74,3.75-3.47,7.4-2.7,5.67-5.33,11.12c-.78,1.61-1.56,3.19-2.32,4.77-8.6,17.57-16.63,33.11-23.45,45.89A73.21,73.21,0,0,1,942.44,719l-151.65,1.65h-1.6l-13,.14-11.12.12-34.1.37h-1.38l-17.36.19h-.53l-107,1.16-95.51,1-11.11.12-69,.75H429l-44.75.48h-.48l-141.5,1.53-42.33.46a87.991,87.991,0,0,1-10.79-.54h0c-1.22-.14-2.44-.3-3.65-.49a87.38,87.38,0,0,1-51.29-27.54C116,678.37,102.75,655,93.85,629.64q-1.93-5.49-3.6-11.12C59.44,514.37,97,380,164.6,290.08q4.25-5.64,8.64-11l.07-.08c20.79-25.52,44.1-46.84,68.93-62,44-26.91,92.75-34.49,140.7-11.9,40.57,19.12,78.45,28.11,115.17,30.55,3.71.24,7.42.42,11.11.53,84.23,2.65,163.17-27.7,255.87-47.29,3.69-.78,7.39-1.55,11.12-2.28,66.13-13.16,139.49-20.1,226.73-5.51a189.089,189.089,0,0,1,26.76,6.4q5.77,1.86,11.12,4c41.64,16.94,64.35,48.24,74,87.46q1.37,5.46,2.37,11.11C1134.3,384.41,1084.19,518.23,1040.82,611.12Z" transform="translate(-79.34 -172.91)" fill="#f2f2f2"/>
@@ -1 +1,40 @@
1
- <svg id="ac356da0-b129-4ca5-aecc-4700531dd101" data-name="Layer 1" xmlns="http://www.w3.org/2000/svg" width="1129" height="663" viewBox="0 0 1129 663"><title>docu_tree</title><circle cx="321" cy="321" r="321" fill="#f2f2f2"/><ellipse cx="559" cy="635.49998" rx="514" ry="27.50002" fill="#3f3d56"/><ellipse cx="558" cy="627" rx="460" ry="22" opacity="0.2"/><rect x="131" y="152.5" width="840" height="50" fill="#3f3d56"/><path d="M166.5,727.3299A21.67009,21.67009,0,0,0,188.1701,749H984.8299A21.67009,21.67009,0,0,0,1006.5,727.3299V296h-840Z" transform="translate(-35.5 -118.5)" fill="#3f3d56"/><path d="M984.8299,236H188.1701A21.67009,21.67009,0,0,0,166.5,257.6701V296h840V257.6701A21.67009,21.67009,0,0,0,984.8299,236Z" transform="translate(-35.5 -118.5)" fill="#3f3d56"/><path d="M984.8299,236H188.1701A21.67009,21.67009,0,0,0,166.5,257.6701V296h840V257.6701A21.67009,21.67009,0,0,0,984.8299,236Z" transform="translate(-35.5 -118.5)" opacity="0.2"/><circle cx="181" cy="147.5" r="13" fill="#3f3d56"/><circle cx="217" cy="147.5" r="13" fill="#3f3d56"/><circle cx="253" cy="147.5" r="13" fill="#3f3d56"/><rect x="168" y="213.5" width="337" height="386" rx="5.33505" fill="#606060"/><rect x="603" y="272.5" width="284" height="22" rx="5.47638" fill="#2e8555"/><rect x="537" y="352.5" width="416" height="15" rx="5.47638" fill="#2e8555"/><rect x="537" y="396.5" width="416" height="15" rx="5.47638" fill="#2e8555"/><rect x="537" y="440.5" width="416" height="15" rx="5.47638" fill="#2e8555"/><rect x="537" y="484.5" width="416" height="15" rx="5.47638" fill="#2e8555"/><rect x="865" y="552.5" width="88" height="26" rx="7.02756" fill="#3ecc5f"/><path d="M1088.60287,624.61594a30.11371,30.11371,0,0,0,3.98291-15.266c0-13.79652-8.54358-24.98081-19.08256-24.98081s-19.08256,11.18429-19.08256,24.98081a30.11411,30.11411,0,0,0,3.98291,15.266,31.248,31.248,0,0,0,0,30.53213,31.248,31.248,0,0,0,0,30.53208,31.248,31.248,0,0,0,0,30.53208,30.11408,30.11408,0,0,0-3.98291,15.266c0,13.79652,8.54353,24.98081,19.08256,24.98081s19.08256-11.18429,19.08256-24.98081a30.11368,30.11368,0,0,0-3.98291-15.266,31.248,31.248,0,0,0,0-30.53208,31.248,31.248,0,0,0,0-30.53208,31.248,31.248,0,0,0,0-30.53213Z" transform="translate(-35.5 -118.5)" fill="#3f3d56"/><ellipse cx="1038.00321" cy="460.31783" rx="19.08256" ry="24.9808" fill="#3f3d56"/><ellipse cx="1038.00321" cy="429.78574" rx="19.08256" ry="24.9808" fill="#3f3d56"/><path d="M1144.93871,339.34489a91.61081,91.61081,0,0,0,7.10658-10.46092l-50.141-8.23491,54.22885.4033a91.566,91.566,0,0,0,1.74556-72.42605l-72.75449,37.74139,67.09658-49.32086a91.41255,91.41255,0,1,0-150.971,102.29805,91.45842,91.45842,0,0,0-10.42451,16.66946l65.0866,33.81447-69.40046-23.292a91.46011,91.46011,0,0,0,14.73837,85.83669,91.40575,91.40575,0,1,0,143.68892,0,91.41808,91.41808,0,0,0,0-113.02862Z" transform="translate(-35.5 -118.5)" fill="#3ecc5f" fill-rule="evenodd"/><path d="M981.6885,395.8592a91.01343,91.01343,0,0,0,19.56129,56.51431,91.40575,91.40575,0,1,0,143.68892,0C1157.18982,436.82067,981.6885,385.60008,981.6885,395.8592Z" transform="translate(-35.5 -118.5)" opacity="0.1"/><path d="M365.62,461.43628H477.094v45.12043H365.62Z" transform="translate(-35.5 -118.5)" fill="#fff" fill-rule="evenodd"/><path d="M264.76252,608.74122a26.50931,26.50931,0,0,1-22.96231-13.27072,26.50976,26.50976,0,0,0,22.96231,39.81215H291.304V608.74122Z" transform="translate(-35.5 -118.5)" fill="#3ecc5f" fill-rule="evenodd"/><path d="M384.17242,468.57061l92.92155-5.80726V449.49263a26.54091,26.54091,0,0,0-26.54143-26.54143H331.1161l-3.31768-5.74622a3.83043,3.83043,0,0,0-6.63536,0l-3.31768,5.74622-3.31767-5.74622a3.83043,3.83043,0,0,0-6.63536,0l-3.31768,5.74622L301.257,417.205a3.83043,3.83043,0,0,0-6.63536,0L291.304,422.9512c-.02919,0-.05573.004-.08625.004l-5.49674-5.49541a3.8293,3.8293,0,0,0-6.4071,1.71723l-1.81676,6.77338L270.607,424.1031a3.82993,3.82993,0,0,0-4.6912,4.69253l1.84463,6.89148-6.77072,1.81411a3.8315,3.8315,0,0,0-1.71988,6.40975l5.49673,5.49673c0,.02787-.004.05574-.004.08493l-5.74622,3.31768a3.83043,3.83043,0,0,0,0,6.63536l5.74621,3.31768L259.0163,466.081a3.83043,3.83043,0,0,0,0,6.63536l5.74622,3.31768-5.74622,3.31767a3.83043,3.83043,0,0,0,0,6.63536l5.74622,3.31768-5.74622,3.31768a3.83043,3.83043,0,0,0,0,6.63536l5.74622,3.31768-5.74622,3.31767a3.83043,3.83043,0,0,0,0,6.63536l5.74622,3.31768-5.74622,3.31768a3.83043,3.83043,0,0,0,0,6.63536l5.74622,3.31768-5.74622,3.31768a3.83042,3.83042,0,0,0,0,6.63535l5.74622,3.31768-5.74622,3.31768a3.83043,3.83043,0,0,0,0,6.63536l5.74622,3.31768L259.0163,558.976a3.83042,3.83042,0,0,0,0,6.63535l5.74622,3.31768-5.74622,3.31768a3.83043,3.83043,0,0,0,0,6.63536l5.74622,3.31768-5.74622,3.31768a3.83042,3.83042,0,0,0,0,6.63535l5.74622,3.31768-5.74622,3.31768a3.83043,3.83043,0,0,0,0,6.63536l5.74622,3.31768A26.54091,26.54091,0,0,0,291.304,635.28265H450.55254A26.5409,26.5409,0,0,0,477.094,608.74122V502.5755l-92.92155-5.80727a14.12639,14.12639,0,0,1,0-28.19762" transform="translate(-35.5 -118.5)" fill="#3ecc5f" fill-rule="evenodd"/><path d="M424.01111,635.28265h39.81214V582.19979H424.01111Z" transform="translate(-35.5 -118.5)" fill="#3ecc5f" fill-rule="evenodd"/><path d="M490.36468,602.10586a6.60242,6.60242,0,0,0-.848.08493c-.05042-.19906-.09821-.39945-.15393-.59852A6.62668,6.62668,0,1,0,482.80568,590.21q-.2203-.22491-.44457-.44589a6.62391,6.62391,0,1,0-11.39689-6.56369c-.1964-.05575-.39414-.10218-.59056-.15262a6.63957,6.63957,0,1,0-13.10086,0c-.1964.05042-.39414.09687-.59056.15262a6.62767,6.62767,0,1,0-11.39688,6.56369,26.52754,26.52754,0,1,0,44.23127,25.52756,6.6211,6.6211,0,1,0,.848-13.18579" transform="translate(-35.5 -118.5)" fill="#44d860" fill-rule="evenodd"/><path d="M437.28182,555.65836H477.094V529.11693H437.28182Z" transform="translate(-35.5 -118.5)" fill="#3ecc5f" fill-rule="evenodd"/><path d="M490.36468,545.70532a3.31768,3.31768,0,0,0,0-6.63536,3.41133,3.41133,0,0,0-.42333.04247c-.02655-.09953-.04911-.19907-.077-.29859a3.319,3.319,0,0,0-1.278-6.37923,3.28174,3.28174,0,0,0-2.00122.68742q-.10947-.11346-.22294-.22295a3.282,3.282,0,0,0,.67149-1.98265,3.31768,3.31768,0,0,0-6.37-1.2992,13.27078,13.27078,0,1,0,0,25.54082,3.31768,3.31768,0,0,0,6.37-1.2992,3.282,3.282,0,0,0-.67149-1.98265q.11347-.10947.22294-.22294a3.28174,3.28174,0,0,0,2.00122.68742,3.31768,3.31768,0,0,0,1.278-6.37923c.02786-.0982.05042-.19907.077-.29859a3.41325,3.41325,0,0,0,.42333.04246" transform="translate(-35.5 -118.5)" fill="#44d860" fill-rule="evenodd"/><path d="M317.84538,466.081a3.31768,3.31768,0,0,1-3.31767-3.31768,9.953,9.953,0,1,0-19.90608,0,3.31768,3.31768,0,1,1-6.63535,0,16.58839,16.58839,0,1,1,33.17678,0,3.31768,3.31768,0,0,1-3.31768,3.31768" transform="translate(-35.5 -118.5)" fill-rule="evenodd"/><path d="M370.92825,635.28265h79.62429A26.5409,26.5409,0,0,0,477.094,608.74122v-92.895H397.46968a26.54091,26.54091,0,0,0-26.54143,26.54143Z" transform="translate(-35.5 -118.5)" fill="#ffff50" fill-rule="evenodd"/><path d="M457.21444,556.98543H390.80778a1.32707,1.32707,0,0,1,0-2.65414h66.40666a1.32707,1.32707,0,0,1,0,2.65414m0,26.54143H390.80778a1.32707,1.32707,0,1,1,0-2.65414h66.40666a1.32707,1.32707,0,0,1,0,2.65414m0,26.54143H390.80778a1.32707,1.32707,0,1,1,0-2.65414h66.40666a1.32707,1.32707,0,0,1,0,2.65414m0-66.10674H390.80778a1.32707,1.32707,0,0,1,0-2.65414h66.40666a1.32707,1.32707,0,0,1,0,2.65414m0,26.29459H390.80778a1.32707,1.32707,0,0,1,0-2.65414h66.40666a1.32707,1.32707,0,0,1,0,2.65414m0,26.54143H390.80778a1.32707,1.32707,0,0,1,0-2.65414h66.40666a1.32707,1.32707,0,0,1,0,2.65414M477.094,474.19076c-.01592,0-.0292-.008-.04512-.00663-4.10064.13934-6.04083,4.24132-7.75274,7.86024-1.78623,3.78215-3.16771,6.24122-5.43171,6.16691-2.50685-.09024-3.94007-2.92222-5.45825-5.91874-1.74377-3.44243-3.73438-7.34667-7.91333-7.20069-4.04227.138-5.98907,3.70784-7.70631,6.857-1.82738,3.35484-3.07084,5.39455-5.46887,5.30033-2.55727-.09289-3.91619-2.39536-5.48877-5.06013-1.75306-2.96733-3.77951-6.30359-7.8775-6.18946-3.97326.13669-5.92537,3.16507-7.64791,5.83912-1.82207,2.82666-3.09872,4.5492-5.52725,4.447-2.61832-.09289-3.9706-2.00388-5.53522-4.21611-1.757-2.4856-3.737-5.299-7.82308-5.16231-3.88567.13271-5.83779,2.61434-7.559,4.80135-1.635,2.07555-2.9116,3.71846-5.61218,3.615a1.32793,1.32793,0,1,0-.09555,2.65414c4.00377.134,6.03154-2.38873,7.79257-4.6275,1.562-1.9853,2.91027-3.69855,5.56441-3.78879,2.55594-.10882,3.75429,1.47968,5.56707,4.04093,1.7212,2.43385,3.67465,5.19416,7.60545,5.33616,4.11789.138,6.09921-2.93946,7.8536-5.66261,1.56861-2.43385,2.92221-4.53461,5.50734-4.62352,2.37944-.08892,3.67466,1.79154,5.50072,4.885,1.72121,2.91557,3.67069,6.21865,7.67977,6.36463,4.14709.14332,6.14965-3.47693,7.89475-6.68181,1.51155-2.77092,2.93814-5.38791,5.46621-5.4755,2.37944-.05573,3.62025,2.11668,5.45558,5.74622,1.71459,3.388,3.65875,7.22591,7.73019,7.37321l.22429.004c4.06614,0,5.99571-4.08074,7.70364-7.68905,1.51154-3.19825,2.94211-6.21069,5.3972-6.33411Z" transform="translate(-35.5 -118.5)" fill-rule="evenodd"/><path d="M344.38682,635.28265h53.08286V582.19979H344.38682Z" transform="translate(-35.5 -118.5)" fill="#3ecc5f" fill-rule="evenodd"/><path d="M424.01111,602.10586a6.60242,6.60242,0,0,0-.848.08493c-.05042-.19906-.09821-.39945-.15394-.59852A6.62667,6.62667,0,1,0,416.45211,590.21q-.2203-.22491-.44458-.44589a6.62391,6.62391,0,1,0-11.39689-6.56369c-.1964-.05575-.39413-.10218-.59054-.15262a6.63957,6.63957,0,1,0-13.10084,0c-.19641.05042-.39414.09687-.59055.15262a6.62767,6.62767,0,1,0-11.39689,6.56369,26.52755,26.52755,0,1,0,44.2313,25.52756,6.6211,6.6211,0,1,0,.848-13.18579" transform="translate(-35.5 -118.5)" fill="#44d860" fill-rule="evenodd"/><path d="M344.38682,555.65836h53.08286V529.11693H344.38682Z" transform="translate(-35.5 -118.5)" fill="#3ecc5f" fill-rule="evenodd"/><path d="M410.74039,545.70532a3.31768,3.31768,0,1,0,0-6.63536,3.41133,3.41133,0,0,0-.42333.04247c-.02655-.09953-.04911-.19907-.077-.29859a3.319,3.319,0,0,0-1.278-6.37923,3.28174,3.28174,0,0,0-2.00122.68742q-.10947-.11346-.22294-.22295a3.282,3.282,0,0,0,.67149-1.98265,3.31768,3.31768,0,0,0-6.37-1.2992,13.27078,13.27078,0,1,0,0,25.54082,3.31768,3.31768,0,0,0,6.37-1.2992,3.282,3.282,0,0,0-.67149-1.98265q.11347-.10947.22294-.22294a3.28174,3.28174,0,0,0,2.00122.68742,3.31768,3.31768,0,0,0,1.278-6.37923c.02786-.0982.05042-.19907.077-.29859a3.41325,3.41325,0,0,0,.42333.04246" transform="translate(-35.5 -118.5)" fill="#44d860" fill-rule="evenodd"/><path d="M424.01111,447.8338a3.60349,3.60349,0,0,1-.65028-.06636,3.34415,3.34415,0,0,1-.62372-.18579,3.44679,3.44679,0,0,1-.572-.30522,5.02708,5.02708,0,0,1-.50429-.4114,3.88726,3.88726,0,0,1-.41007-.50428,3.27532,3.27532,0,0,1-.55737-1.84463,3.60248,3.60248,0,0,1,.06636-.65027,3.82638,3.82638,0,0,1,.18447-.62373,3.48858,3.48858,0,0,1,.30656-.57064,3.197,3.197,0,0,1,.91436-.91568,3.44685,3.44685,0,0,1,.572-.30523,3.344,3.344,0,0,1,.62372-.18578,3.06907,3.06907,0,0,1,1.30053,0,3.22332,3.22332,0,0,1,1.19436.491,5.02835,5.02835,0,0,1,.50429.41139,4.8801,4.8801,0,0,1,.41139.50429,3.38246,3.38246,0,0,1,.30522.57064,3.47806,3.47806,0,0,1,.25215,1.274A3.36394,3.36394,0,0,1,426.36,446.865a5.02708,5.02708,0,0,1-.50429.4114,3.3057,3.3057,0,0,1-1.84463.55737m26.54143-1.65884a3.38754,3.38754,0,0,1-2.35024-.96877,5.04185,5.04185,0,0,1-.41007-.50428,3.27532,3.27532,0,0,1-.55737-1.84463,3.38659,3.38659,0,0,1,.96744-2.34892,5.02559,5.02559,0,0,1,.50429-.41139,3.44685,3.44685,0,0,1,.572-.30523,3.3432,3.3432,0,0,1,.62373-.18579,3.06952,3.06952,0,0,1,1.30052,0,3.22356,3.22356,0,0,1,1.19436.491,5.02559,5.02559,0,0,1,.50429.41139,3.38792,3.38792,0,0,1,.96876,2.34892,3.72635,3.72635,0,0,1-.06636.65026,3.37387,3.37387,0,0,1-.18579.62373,4.71469,4.71469,0,0,1-.30522.57064,4.8801,4.8801,0,0,1-.41139.50429,5.02559,5.02559,0,0,1-.50429.41139,3.30547,3.30547,0,0,1-1.84463.55737" transform="translate(-35.5 -118.5)" fill-rule="evenodd"/></svg>
1
+ <svg xmlns="http://www.w3.org/2000/svg" width="1129" height="663" viewBox="0 0 1129 663">
2
+ <title>Focus on What Matters</title>
3
+ <circle cx="321" cy="321" r="321" fill="#f2f2f2" />
4
+ <ellipse cx="559" cy="635.49998" rx="514" ry="27.50002" fill="#3f3d56" />
5
+ <ellipse cx="558" cy="627" rx="460" ry="22" opacity="0.2" />
6
+ <rect x="131" y="152.5" width="840" height="50" fill="#3f3d56" />
7
+ <path d="M166.5,727.3299A21.67009,21.67009,0,0,0,188.1701,749H984.8299A21.67009,21.67009,0,0,0,1006.5,727.3299V296h-840Z" transform="translate(-35.5 -118.5)" fill="#3f3d56" />
8
+ <path d="M984.8299,236H188.1701A21.67009,21.67009,0,0,0,166.5,257.6701V296h840V257.6701A21.67009,21.67009,0,0,0,984.8299,236Z" transform="translate(-35.5 -118.5)" fill="#3f3d56" />
9
+ <path d="M984.8299,236H188.1701A21.67009,21.67009,0,0,0,166.5,257.6701V296h840V257.6701A21.67009,21.67009,0,0,0,984.8299,236Z" transform="translate(-35.5 -118.5)" opacity="0.2" />
10
+ <circle cx="181" cy="147.5" r="13" fill="#3f3d56" />
11
+ <circle cx="217" cy="147.5" r="13" fill="#3f3d56" />
12
+ <circle cx="253" cy="147.5" r="13" fill="#3f3d56" />
13
+ <rect x="168" y="213.5" width="337" height="386" rx="5.33505" fill="#606060" />
14
+ <rect x="603" y="272.5" width="284" height="22" rx="5.47638" fill="#2e8555" />
15
+ <rect x="537" y="352.5" width="416" height="15" rx="5.47638" fill="#2e8555" />
16
+ <rect x="537" y="396.5" width="416" height="15" rx="5.47638" fill="#2e8555" />
17
+ <rect x="537" y="440.5" width="416" height="15" rx="5.47638" fill="#2e8555" />
18
+ <rect x="537" y="484.5" width="416" height="15" rx="5.47638" fill="#2e8555" />
19
+ <rect x="865" y="552.5" width="88" height="26" rx="7.02756" fill="#3ecc5f" />
20
+ <path d="M1088.60287,624.61594a30.11371,30.11371,0,0,0,3.98291-15.266c0-13.79652-8.54358-24.98081-19.08256-24.98081s-19.08256,11.18429-19.08256,24.98081a30.11411,30.11411,0,0,0,3.98291,15.266,31.248,31.248,0,0,0,0,30.53213,31.248,31.248,0,0,0,0,30.53208,31.248,31.248,0,0,0,0,30.53208,30.11408,30.11408,0,0,0-3.98291,15.266c0,13.79652,8.54353,24.98081,19.08256,24.98081s19.08256-11.18429,19.08256-24.98081a30.11368,30.11368,0,0,0-3.98291-15.266,31.248,31.248,0,0,0,0-30.53208,31.248,31.248,0,0,0,0-30.53208,31.248,31.248,0,0,0,0-30.53213Z" transform="translate(-35.5 -118.5)" fill="#3f3d56" />
21
+ <ellipse cx="1038.00321" cy="460.31783" rx="19.08256" ry="24.9808" fill="#3f3d56" />
22
+ <ellipse cx="1038.00321" cy="429.78574" rx="19.08256" ry="24.9808" fill="#3f3d56" />
23
+ <path d="M1144.93871,339.34489a91.61081,91.61081,0,0,0,7.10658-10.46092l-50.141-8.23491,54.22885.4033a91.566,91.566,0,0,0,1.74556-72.42605l-72.75449,37.74139,67.09658-49.32086a91.41255,91.41255,0,1,0-150.971,102.29805,91.45842,91.45842,0,0,0-10.42451,16.66946l65.0866,33.81447-69.40046-23.292a91.46011,91.46011,0,0,0,14.73837,85.83669,91.40575,91.40575,0,1,0,143.68892,0,91.41808,91.41808,0,0,0,0-113.02862Z" transform="translate(-35.5 -118.5)" fill="#3ecc5f" fill-rule="evenodd" />
24
+ <path d="M981.6885,395.8592a91.01343,91.01343,0,0,0,19.56129,56.51431,91.40575,91.40575,0,1,0,143.68892,0C1157.18982,436.82067,981.6885,385.60008,981.6885,395.8592Z" transform="translate(-35.5 -118.5)" opacity="0.1" />
25
+ <path d="M365.62,461.43628H477.094v45.12043H365.62Z" transform="translate(-35.5 -118.5)" fill="#fff" fill-rule="evenodd" />
26
+ <path d="M264.76252,608.74122a26.50931,26.50931,0,0,1-22.96231-13.27072,26.50976,26.50976,0,0,0,22.96231,39.81215H291.304V608.74122Z" transform="translate(-35.5 -118.5)" fill="#3ecc5f" fill-rule="evenodd" />
27
+ <path d="M384.17242,468.57061l92.92155-5.80726V449.49263a26.54091,26.54091,0,0,0-26.54143-26.54143H331.1161l-3.31768-5.74622a3.83043,3.83043,0,0,0-6.63536,0l-3.31768,5.74622-3.31767-5.74622a3.83043,3.83043,0,0,0-6.63536,0l-3.31768,5.74622L301.257,417.205a3.83043,3.83043,0,0,0-6.63536,0L291.304,422.9512c-.02919,0-.05573.004-.08625.004l-5.49674-5.49541a3.8293,3.8293,0,0,0-6.4071,1.71723l-1.81676,6.77338L270.607,424.1031a3.82993,3.82993,0,0,0-4.6912,4.69253l1.84463,6.89148-6.77072,1.81411a3.8315,3.8315,0,0,0-1.71988,6.40975l5.49673,5.49673c0,.02787-.004.05574-.004.08493l-5.74622,3.31768a3.83043,3.83043,0,0,0,0,6.63536l5.74621,3.31768L259.0163,466.081a3.83043,3.83043,0,0,0,0,6.63536l5.74622,3.31768-5.74622,3.31767a3.83043,3.83043,0,0,0,0,6.63536l5.74622,3.31768-5.74622,3.31768a3.83043,3.83043,0,0,0,0,6.63536l5.74622,3.31768-5.74622,3.31767a3.83043,3.83043,0,0,0,0,6.63536l5.74622,3.31768-5.74622,3.31768a3.83043,3.83043,0,0,0,0,6.63536l5.74622,3.31768-5.74622,3.31768a3.83042,3.83042,0,0,0,0,6.63535l5.74622,3.31768-5.74622,3.31768a3.83043,3.83043,0,0,0,0,6.63536l5.74622,3.31768L259.0163,558.976a3.83042,3.83042,0,0,0,0,6.63535l5.74622,3.31768-5.74622,3.31768a3.83043,3.83043,0,0,0,0,6.63536l5.74622,3.31768-5.74622,3.31768a3.83042,3.83042,0,0,0,0,6.63535l5.74622,3.31768-5.74622,3.31768a3.83043,3.83043,0,0,0,0,6.63536l5.74622,3.31768A26.54091,26.54091,0,0,0,291.304,635.28265H450.55254A26.5409,26.5409,0,0,0,477.094,608.74122V502.5755l-92.92155-5.80727a14.12639,14.12639,0,0,1,0-28.19762" transform="translate(-35.5 -118.5)" fill="#3ecc5f" fill-rule="evenodd" />
28
+ <path d="M424.01111,635.28265h39.81214V582.19979H424.01111Z" transform="translate(-35.5 -118.5)" fill="#3ecc5f" fill-rule="evenodd" />
29
+ <path d="M490.36468,602.10586a6.60242,6.60242,0,0,0-.848.08493c-.05042-.19906-.09821-.39945-.15393-.59852A6.62668,6.62668,0,1,0,482.80568,590.21q-.2203-.22491-.44457-.44589a6.62391,6.62391,0,1,0-11.39689-6.56369c-.1964-.05575-.39414-.10218-.59056-.15262a6.63957,6.63957,0,1,0-13.10086,0c-.1964.05042-.39414.09687-.59056.15262a6.62767,6.62767,0,1,0-11.39688,6.56369,26.52754,26.52754,0,1,0,44.23127,25.52756,6.6211,6.6211,0,1,0,.848-13.18579" transform="translate(-35.5 -118.5)" fill="#44d860" fill-rule="evenodd" />
30
+ <path d="M437.28182,555.65836H477.094V529.11693H437.28182Z" transform="translate(-35.5 -118.5)" fill="#3ecc5f" fill-rule="evenodd" />
31
+ <path d="M490.36468,545.70532a3.31768,3.31768,0,0,0,0-6.63536,3.41133,3.41133,0,0,0-.42333.04247c-.02655-.09953-.04911-.19907-.077-.29859a3.319,3.319,0,0,0-1.278-6.37923,3.28174,3.28174,0,0,0-2.00122.68742q-.10947-.11346-.22294-.22295a3.282,3.282,0,0,0,.67149-1.98265,3.31768,3.31768,0,0,0-6.37-1.2992,13.27078,13.27078,0,1,0,0,25.54082,3.31768,3.31768,0,0,0,6.37-1.2992,3.282,3.282,0,0,0-.67149-1.98265q.11347-.10947.22294-.22294a3.28174,3.28174,0,0,0,2.00122.68742,3.31768,3.31768,0,0,0,1.278-6.37923c.02786-.0982.05042-.19907.077-.29859a3.41325,3.41325,0,0,0,.42333.04246" transform="translate(-35.5 -118.5)" fill="#44d860" fill-rule="evenodd" />
32
+ <path d="M317.84538,466.081a3.31768,3.31768,0,0,1-3.31767-3.31768,9.953,9.953,0,1,0-19.90608,0,3.31768,3.31768,0,1,1-6.63535,0,16.58839,16.58839,0,1,1,33.17678,0,3.31768,3.31768,0,0,1-3.31768,3.31768" transform="translate(-35.5 -118.5)" fill-rule="evenodd" />
33
+ <path d="M370.92825,635.28265h79.62429A26.5409,26.5409,0,0,0,477.094,608.74122v-92.895H397.46968a26.54091,26.54091,0,0,0-26.54143,26.54143Z" transform="translate(-35.5 -118.5)" fill="#ffff50" fill-rule="evenodd" />
34
+ <path d="M457.21444,556.98543H390.80778a1.32707,1.32707,0,0,1,0-2.65414h66.40666a1.32707,1.32707,0,0,1,0,2.65414m0,26.54143H390.80778a1.32707,1.32707,0,1,1,0-2.65414h66.40666a1.32707,1.32707,0,0,1,0,2.65414m0,26.54143H390.80778a1.32707,1.32707,0,1,1,0-2.65414h66.40666a1.32707,1.32707,0,0,1,0,2.65414m0-66.10674H390.80778a1.32707,1.32707,0,0,1,0-2.65414h66.40666a1.32707,1.32707,0,0,1,0,2.65414m0,26.29459H390.80778a1.32707,1.32707,0,0,1,0-2.65414h66.40666a1.32707,1.32707,0,0,1,0,2.65414m0,26.54143H390.80778a1.32707,1.32707,0,0,1,0-2.65414h66.40666a1.32707,1.32707,0,0,1,0,2.65414M477.094,474.19076c-.01592,0-.0292-.008-.04512-.00663-4.10064.13934-6.04083,4.24132-7.75274,7.86024-1.78623,3.78215-3.16771,6.24122-5.43171,6.16691-2.50685-.09024-3.94007-2.92222-5.45825-5.91874-1.74377-3.44243-3.73438-7.34667-7.91333-7.20069-4.04227.138-5.98907,3.70784-7.70631,6.857-1.82738,3.35484-3.07084,5.39455-5.46887,5.30033-2.55727-.09289-3.91619-2.39536-5.48877-5.06013-1.75306-2.96733-3.77951-6.30359-7.8775-6.18946-3.97326.13669-5.92537,3.16507-7.64791,5.83912-1.82207,2.82666-3.09872,4.5492-5.52725,4.447-2.61832-.09289-3.9706-2.00388-5.53522-4.21611-1.757-2.4856-3.737-5.299-7.82308-5.16231-3.88567.13271-5.83779,2.61434-7.559,4.80135-1.635,2.07555-2.9116,3.71846-5.61218,3.615a1.32793,1.32793,0,1,0-.09555,2.65414c4.00377.134,6.03154-2.38873,7.79257-4.6275,1.562-1.9853,2.91027-3.69855,5.56441-3.78879,2.55594-.10882,3.75429,1.47968,5.56707,4.04093,1.7212,2.43385,3.67465,5.19416,7.60545,5.33616,4.11789.138,6.09921-2.93946,7.8536-5.66261,1.56861-2.43385,2.92221-4.53461,5.50734-4.62352,2.37944-.08892,3.67466,1.79154,5.50072,4.885,1.72121,2.91557,3.67069,6.21865,7.67977,6.36463,4.14709.14332,6.14965-3.47693,7.89475-6.68181,1.51155-2.77092,2.93814-5.38791,5.46621-5.4755,2.37944-.05573,3.62025,2.11668,5.45558,5.74622,1.71459,3.388,3.65875,7.22591,7.73019,7.37321l.22429.004c4.06614,0,5.99571-4.08074,7.70364-7.68905,1.51154-3.19825,2.94211-6.21069,5.3972-6.33411Z" transform="translate(-35.5 -118.5)" fill-rule="evenodd" />
35
+ <path d="M344.38682,635.28265h53.08286V582.19979H344.38682Z" transform="translate(-35.5 -118.5)" fill="#3ecc5f" fill-rule="evenodd" />
36
+ <path d="M424.01111,602.10586a6.60242,6.60242,0,0,0-.848.08493c-.05042-.19906-.09821-.39945-.15394-.59852A6.62667,6.62667,0,1,0,416.45211,590.21q-.2203-.22491-.44458-.44589a6.62391,6.62391,0,1,0-11.39689-6.56369c-.1964-.05575-.39413-.10218-.59054-.15262a6.63957,6.63957,0,1,0-13.10084,0c-.19641.05042-.39414.09687-.59055.15262a6.62767,6.62767,0,1,0-11.39689,6.56369,26.52755,26.52755,0,1,0,44.2313,25.52756,6.6211,6.6211,0,1,0,.848-13.18579" transform="translate(-35.5 -118.5)" fill="#44d860" fill-rule="evenodd" />
37
+ <path d="M344.38682,555.65836h53.08286V529.11693H344.38682Z" transform="translate(-35.5 -118.5)" fill="#3ecc5f" fill-rule="evenodd" />
38
+ <path d="M410.74039,545.70532a3.31768,3.31768,0,1,0,0-6.63536,3.41133,3.41133,0,0,0-.42333.04247c-.02655-.09953-.04911-.19907-.077-.29859a3.319,3.319,0,0,0-1.278-6.37923,3.28174,3.28174,0,0,0-2.00122.68742q-.10947-.11346-.22294-.22295a3.282,3.282,0,0,0,.67149-1.98265,3.31768,3.31768,0,0,0-6.37-1.2992,13.27078,13.27078,0,1,0,0,25.54082,3.31768,3.31768,0,0,0,6.37-1.2992,3.282,3.282,0,0,0-.67149-1.98265q.11347-.10947.22294-.22294a3.28174,3.28174,0,0,0,2.00122.68742,3.31768,3.31768,0,0,0,1.278-6.37923c.02786-.0982.05042-.19907.077-.29859a3.41325,3.41325,0,0,0,.42333.04246" transform="translate(-35.5 -118.5)" fill="#44d860" fill-rule="evenodd" />
39
+ <path d="M424.01111,447.8338a3.60349,3.60349,0,0,1-.65028-.06636,3.34415,3.34415,0,0,1-.62372-.18579,3.44679,3.44679,0,0,1-.572-.30522,5.02708,5.02708,0,0,1-.50429-.4114,3.88726,3.88726,0,0,1-.41007-.50428,3.27532,3.27532,0,0,1-.55737-1.84463,3.60248,3.60248,0,0,1,.06636-.65027,3.82638,3.82638,0,0,1,.18447-.62373,3.48858,3.48858,0,0,1,.30656-.57064,3.197,3.197,0,0,1,.91436-.91568,3.44685,3.44685,0,0,1,.572-.30523,3.344,3.344,0,0,1,.62372-.18578,3.06907,3.06907,0,0,1,1.30053,0,3.22332,3.22332,0,0,1,1.19436.491,5.02835,5.02835,0,0,1,.50429.41139,4.8801,4.8801,0,0,1,.41139.50429,3.38246,3.38246,0,0,1,.30522.57064,3.47806,3.47806,0,0,1,.25215,1.274A3.36394,3.36394,0,0,1,426.36,446.865a5.02708,5.02708,0,0,1-.50429.4114,3.3057,3.3057,0,0,1-1.84463.55737m26.54143-1.65884a3.38754,3.38754,0,0,1-2.35024-.96877,5.04185,5.04185,0,0,1-.41007-.50428,3.27532,3.27532,0,0,1-.55737-1.84463,3.38659,3.38659,0,0,1,.96744-2.34892,5.02559,5.02559,0,0,1,.50429-.41139,3.44685,3.44685,0,0,1,.572-.30523,3.3432,3.3432,0,0,1,.62373-.18579,3.06952,3.06952,0,0,1,1.30052,0,3.22356,3.22356,0,0,1,1.19436.491,5.02559,5.02559,0,0,1,.50429.41139,3.38792,3.38792,0,0,1,.96876,2.34892,3.72635,3.72635,0,0,1-.06636.65026,3.37387,3.37387,0,0,1-.18579.62373,4.71469,4.71469,0,0,1-.30522.57064,4.8801,4.8801,0,0,1-.41139.50429,5.02559,5.02559,0,0,1-.50429.41139,3.30547,3.30547,0,0,1-1.84463.55737" transform="translate(-35.5 -118.5)" fill-rule="evenodd" />
40
+ </svg>