create-cloudflare 2.67.1 → 2.67.2
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.
- package/dist/cli.js +12 -12
- package/package.json +4 -4
- package/templates/react/workers/c3.ts +12 -10
- package/templates/react/workers/js/src/App.jsx +132 -42
- package/templates/react/workers/js/src/assets/cloudflare.svg +1 -0
- package/templates/react/workers/ts/src/App.tsx +132 -42
- package/templates/react/workers/ts/src/assets/cloudflare.svg +1 -0
- package/templates/react/workers/js/src/App.css +0 -45
- package/templates/react/workers/js/src/assets/Cloudflare_Logo.svg +0 -53
- package/templates/react/workers/ts/src/App.css +0 -45
- package/templates/react/workers/ts/src/assets/Cloudflare_Logo.svg +0 -51
package/dist/cli.js
CHANGED
|
@@ -94657,7 +94657,7 @@ var Yargs = YargsFactory(esm_default2);
|
|
|
94657
94657
|
var yargs_default = Yargs;
|
|
94658
94658
|
|
|
94659
94659
|
// package.json
|
|
94660
|
-
var version = "2.67.
|
|
94660
|
+
var version = "2.67.2";
|
|
94661
94661
|
|
|
94662
94662
|
// src/metrics.ts
|
|
94663
94663
|
var import_node_async_hooks = require("node:async_hooks");
|
|
@@ -98645,23 +98645,23 @@ async function getVariant2(ctx) {
|
|
|
98645
98645
|
lang: "ts",
|
|
98646
98646
|
label: "TypeScript"
|
|
98647
98647
|
},
|
|
98648
|
-
{
|
|
98649
|
-
value: "react-swc-ts",
|
|
98650
|
-
lang: "ts",
|
|
98651
|
-
label: "TypeScript + SWC"
|
|
98652
|
-
},
|
|
98653
98648
|
{
|
|
98654
98649
|
value: "react",
|
|
98655
98650
|
lang: "js",
|
|
98656
98651
|
label: "JavaScript"
|
|
98657
|
-
},
|
|
98658
|
-
{
|
|
98659
|
-
value: "react-swc",
|
|
98660
|
-
lang: "js",
|
|
98661
|
-
label: "JavaScript + SWC"
|
|
98662
98652
|
}
|
|
98663
98653
|
];
|
|
98664
98654
|
if (ctx.args.variant) {
|
|
98655
|
+
const deprecatedVariantReplacements = {
|
|
98656
|
+
"react-swc-ts": "react-ts",
|
|
98657
|
+
"react-swc": "react"
|
|
98658
|
+
};
|
|
98659
|
+
const replacement = deprecatedVariantReplacements[ctx.args.variant];
|
|
98660
|
+
if (replacement) {
|
|
98661
|
+
throw new Error(
|
|
98662
|
+
`The React variant "${ctx.args.variant}" is no longer available. Use "${replacement}" instead.`
|
|
98663
|
+
);
|
|
98664
|
+
}
|
|
98665
98665
|
const selected2 = variantsOptions2.find(
|
|
98666
98666
|
(variant) => variant.value === ctx.args.variant
|
|
98667
98667
|
);
|
|
@@ -99357,7 +99357,7 @@ If the application uses Durable Objects or Workflows, refer to the relevant best
|
|
|
99357
99357
|
var import_node_assert6 = __toESM(require("node:assert"));
|
|
99358
99358
|
|
|
99359
99359
|
// ../wrangler/package.json
|
|
99360
|
-
var version2 = "4.84.
|
|
99360
|
+
var version2 = "4.84.1";
|
|
99361
99361
|
|
|
99362
99362
|
// src/git.ts
|
|
99363
99363
|
var offerGit = async (ctx) => {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "create-cloudflare",
|
|
3
|
-
"version": "2.67.
|
|
3
|
+
"version": "2.67.2",
|
|
4
4
|
"description": "A CLI for creating and deploying new applications to Cloudflare.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"cloudflare",
|
|
@@ -31,7 +31,7 @@
|
|
|
31
31
|
"@babel/parser": "^7.21.3",
|
|
32
32
|
"@babel/types": "^7.21.4",
|
|
33
33
|
"@clack/prompts": "^0.6.3",
|
|
34
|
-
"@cloudflare/workers-types": "^4.
|
|
34
|
+
"@cloudflare/workers-types": "^4.20260421.1",
|
|
35
35
|
"@types/command-exists": "^1.2.0",
|
|
36
36
|
"@types/cross-spawn": "^6.0.2",
|
|
37
37
|
"@types/deepmerge": "^2.2.0",
|
|
@@ -75,10 +75,10 @@
|
|
|
75
75
|
"@cloudflare/cli": "1.4.0",
|
|
76
76
|
"@cloudflare/codemod": "1.1.0",
|
|
77
77
|
"@cloudflare/mock-npm-registry": "0.0.0",
|
|
78
|
-
"@cloudflare/vite-plugin": "1.33.
|
|
78
|
+
"@cloudflare/vite-plugin": "1.33.1",
|
|
79
79
|
"@cloudflare/workers-tsconfig": "0.0.0",
|
|
80
80
|
"@cloudflare/workers-utils": "0.17.0",
|
|
81
|
-
"wrangler": "4.84.
|
|
81
|
+
"wrangler": "4.84.1"
|
|
82
82
|
},
|
|
83
83
|
"engines": {
|
|
84
84
|
"node": ">=20.0.0"
|
|
@@ -122,25 +122,27 @@ async function getVariant(ctx: C3Context) {
|
|
|
122
122
|
lang: "ts",
|
|
123
123
|
label: "TypeScript",
|
|
124
124
|
},
|
|
125
|
-
{
|
|
126
|
-
value: "react-swc-ts",
|
|
127
|
-
lang: "ts",
|
|
128
|
-
label: "TypeScript + SWC",
|
|
129
|
-
},
|
|
130
125
|
{
|
|
131
126
|
value: "react",
|
|
132
127
|
lang: "js",
|
|
133
128
|
label: "JavaScript",
|
|
134
129
|
},
|
|
135
|
-
{
|
|
136
|
-
value: "react-swc",
|
|
137
|
-
lang: "js",
|
|
138
|
-
label: "JavaScript + SWC",
|
|
139
|
-
},
|
|
140
130
|
];
|
|
141
131
|
|
|
142
132
|
// If variant is provided via CLI args, use it directly
|
|
143
133
|
if (ctx.args.variant) {
|
|
134
|
+
const deprecatedVariantReplacements: Record<string, string> = {
|
|
135
|
+
"react-swc-ts": "react-ts",
|
|
136
|
+
"react-swc": "react",
|
|
137
|
+
};
|
|
138
|
+
|
|
139
|
+
const replacement = deprecatedVariantReplacements[ctx.args.variant];
|
|
140
|
+
if (replacement) {
|
|
141
|
+
throw new Error(
|
|
142
|
+
`The React variant "${ctx.args.variant}" is no longer available. Use "${replacement}" instead.`
|
|
143
|
+
);
|
|
144
|
+
}
|
|
145
|
+
|
|
144
146
|
const selected = variantsOptions.find(
|
|
145
147
|
(variant) => variant.value === ctx.args.variant
|
|
146
148
|
);
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
import { useState } from 'react'
|
|
2
2
|
import reactLogo from './assets/react.svg'
|
|
3
3
|
import viteLogo from './assets/vite.svg'
|
|
4
|
-
import cloudflareLogo from './assets/
|
|
4
|
+
import cloudflareLogo from './assets/cloudflare.svg'
|
|
5
|
+
import heroImg from './assets/hero.png'
|
|
5
6
|
import './App.css'
|
|
6
7
|
|
|
7
8
|
function App() {
|
|
@@ -10,47 +11,136 @@ function App() {
|
|
|
10
11
|
|
|
11
12
|
return (
|
|
12
13
|
<>
|
|
13
|
-
<
|
|
14
|
-
<
|
|
15
|
-
<img src={
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
<
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
</
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
14
|
+
<section id="center">
|
|
15
|
+
<div className="hero">
|
|
16
|
+
<img src={heroImg} className="base" width="170" height="179" alt="" />
|
|
17
|
+
<img src={reactLogo} className="framework" alt="React logo" />
|
|
18
|
+
<img src={viteLogo} className="vite" alt="Vite logo" />
|
|
19
|
+
</div>
|
|
20
|
+
<div>
|
|
21
|
+
<h1>Get started with Cloudflare</h1>
|
|
22
|
+
<p>
|
|
23
|
+
Edit <code>src/App.jsx</code> or <code>worker/index.js</code> and save to test <code>HMR</code>
|
|
24
|
+
</p>
|
|
25
|
+
</div>
|
|
26
|
+
<ul style={{ display: 'flex', gap: '1rem', listStyle: 'none', padding: 0 }}>
|
|
27
|
+
<li>
|
|
28
|
+
<button
|
|
29
|
+
className="counter"
|
|
30
|
+
onClick={() => setCount((count) => count + 1)}
|
|
31
|
+
>
|
|
32
|
+
Count is {count}
|
|
33
|
+
</button>
|
|
34
|
+
</li>
|
|
35
|
+
<li>
|
|
36
|
+
<button
|
|
37
|
+
className="counter"
|
|
38
|
+
onClick={() => {
|
|
39
|
+
fetch('/api/')
|
|
40
|
+
.then((res) => res.json())
|
|
41
|
+
.then((data) => setName(data.name))
|
|
42
|
+
}}
|
|
43
|
+
aria-label='get name'
|
|
44
|
+
>
|
|
45
|
+
Name from API is: {name}
|
|
46
|
+
</button>
|
|
47
|
+
</li>
|
|
48
|
+
</ul>
|
|
49
|
+
|
|
50
|
+
|
|
51
|
+
</section>
|
|
52
|
+
|
|
53
|
+
<div className="ticks"></div>
|
|
54
|
+
|
|
55
|
+
<section id="next-steps">
|
|
56
|
+
<div id="docs">
|
|
57
|
+
<svg className="icon" role="presentation" aria-hidden="true">
|
|
58
|
+
<use href="/icons.svg#documentation-icon"></use>
|
|
59
|
+
</svg>
|
|
60
|
+
<h2>Documentation</h2>
|
|
61
|
+
<p>Your questions, answered</p>
|
|
62
|
+
<ul>
|
|
63
|
+
<li>
|
|
64
|
+
<a href="https://vite.dev/" target="_blank">
|
|
65
|
+
<img className="logo" src={viteLogo} alt="" />
|
|
66
|
+
Explore Vite
|
|
67
|
+
</a>
|
|
68
|
+
</li>
|
|
69
|
+
<li>
|
|
70
|
+
<a href="https://react.dev/" target="_blank">
|
|
71
|
+
<img className="button-icon" src={reactLogo} alt="" />
|
|
72
|
+
Learn more
|
|
73
|
+
</a>
|
|
74
|
+
</li>
|
|
75
|
+
<li>
|
|
76
|
+
<a href="https://workers.cloudflare.com/" target="_blank">
|
|
77
|
+
<img className="button-icon" src={cloudflareLogo} alt="" />
|
|
78
|
+
Workers Docs
|
|
79
|
+
</a>
|
|
80
|
+
</li>
|
|
81
|
+
</ul>
|
|
82
|
+
</div>
|
|
83
|
+
<div id="social">
|
|
84
|
+
<svg className="icon" role="presentation" aria-hidden="true">
|
|
85
|
+
<use href="/icons.svg#social-icon"></use>
|
|
86
|
+
</svg>
|
|
87
|
+
<h2>Connect with us</h2>
|
|
88
|
+
<p>Join the Vite community</p>
|
|
89
|
+
<ul>
|
|
90
|
+
<li>
|
|
91
|
+
<a href="https://github.com/vitejs/vite" target="_blank">
|
|
92
|
+
<svg
|
|
93
|
+
className="button-icon"
|
|
94
|
+
role="presentation"
|
|
95
|
+
aria-hidden="true"
|
|
96
|
+
>
|
|
97
|
+
<use href="/icons.svg#github-icon"></use>
|
|
98
|
+
</svg>
|
|
99
|
+
GitHub
|
|
100
|
+
</a>
|
|
101
|
+
</li>
|
|
102
|
+
<li>
|
|
103
|
+
<a href="https://chat.vite.dev/" target="_blank">
|
|
104
|
+
<svg
|
|
105
|
+
className="button-icon"
|
|
106
|
+
role="presentation"
|
|
107
|
+
aria-hidden="true"
|
|
108
|
+
>
|
|
109
|
+
<use href="/icons.svg#discord-icon"></use>
|
|
110
|
+
</svg>
|
|
111
|
+
Discord
|
|
112
|
+
</a>
|
|
113
|
+
</li>
|
|
114
|
+
<li>
|
|
115
|
+
<a href="https://x.com/vite_js" target="_blank">
|
|
116
|
+
<svg
|
|
117
|
+
className="button-icon"
|
|
118
|
+
role="presentation"
|
|
119
|
+
aria-hidden="true"
|
|
120
|
+
>
|
|
121
|
+
<use href="/icons.svg#x-icon"></use>
|
|
122
|
+
</svg>
|
|
123
|
+
X.com
|
|
124
|
+
</a>
|
|
125
|
+
</li>
|
|
126
|
+
<li>
|
|
127
|
+
<a href="https://bsky.app/profile/vite.dev" target="_blank">
|
|
128
|
+
<svg
|
|
129
|
+
className="button-icon"
|
|
130
|
+
role="presentation"
|
|
131
|
+
aria-hidden="true"
|
|
132
|
+
>
|
|
133
|
+
<use href="/icons.svg#bluesky-icon"></use>
|
|
134
|
+
</svg>
|
|
135
|
+
Bluesky
|
|
136
|
+
</a>
|
|
137
|
+
</li>
|
|
138
|
+
</ul>
|
|
139
|
+
</div>
|
|
140
|
+
</section>
|
|
141
|
+
|
|
142
|
+
<div className="ticks"></div>
|
|
143
|
+
<section id="spacer"></section>
|
|
54
144
|
</>
|
|
55
145
|
)
|
|
56
146
|
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
<svg xmlns="http://www.w3.org/2000/svg" width="40" height="19" fill="none" viewBox="0 0 40 19"><path fill="#f6821f" d="m27.16 18.507.204-.735c.242-.873.152-1.68-.255-2.274-.374-.547-.998-.868-1.755-.906l-14.346-.19a.3.3 0 0 1-.127-.034.3.3 0 0 1-.099-.09.31.31 0 0 1-.03-.27.4.4 0 0 1 .128-.185.37.37 0 0 1 .205-.081l14.479-.192c1.717-.082 3.576-1.536 4.227-3.31l.826-2.25a.55.55 0 0 0 .022-.298C29.702 3.29 25.94 0 21.44 0c-4.146 0-7.667 2.792-8.928 6.673a4.1 4.1 0 0 0-2.978-.86c-1.99.206-3.589 1.877-3.786 3.953a4.6 4.6 0 0 0 .11 1.547C2.605 11.41 0 14.189 0 17.603q0 .459.065.911c.009.07.042.134.093.18.05.047.116.072.183.073l26.485.003h.007a.34.34 0 0 0 .205-.076.36.36 0 0 0 .122-.187"/><path fill="#fbad41" d="M31.94 8.153q-.2 0-.397.01a.2.2 0 0 0-.062.014.2.2 0 0 0-.091.061.24.24 0 0 0-.054.098l-.564 2.033c-.243.874-.152 1.68.254 2.274.375.547.998.868 1.756.906l3.058.191a.3.3 0 0 1 .123.035.28.28 0 0 1 .142.22.3.3 0 0 1-.015.14.4.4 0 0 1-.128.185.37.37 0 0 1-.205.08l-3.177.192c-1.725.083-3.585 1.536-4.235 3.31l-.23.626a.18.18 0 0 0 .017.16.17.17 0 0 0 .134.08h10.941a.3.3 0 0 0 .176-.06.3.3 0 0 0 .106-.16 8.5 8.5 0 0 0 .291-2.216c0-4.517-3.51-8.18-7.84-8.18"/></svg>
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
import { useState } from 'react'
|
|
2
2
|
import reactLogo from './assets/react.svg'
|
|
3
3
|
import viteLogo from './assets/vite.svg'
|
|
4
|
-
import cloudflareLogo from './assets/
|
|
4
|
+
import cloudflareLogo from './assets/cloudflare.svg'
|
|
5
|
+
import heroImg from './assets/hero.png'
|
|
5
6
|
import './App.css'
|
|
6
7
|
|
|
7
8
|
function App() {
|
|
@@ -10,47 +11,136 @@ function App() {
|
|
|
10
11
|
|
|
11
12
|
return (
|
|
12
13
|
<>
|
|
13
|
-
<
|
|
14
|
-
<
|
|
15
|
-
<img src={
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
<
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
</
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
14
|
+
<section id="center">
|
|
15
|
+
<div className="hero">
|
|
16
|
+
<img src={heroImg} className="base" width="170" height="179" alt="" />
|
|
17
|
+
<img src={reactLogo} className="framework" alt="React logo" />
|
|
18
|
+
<img src={viteLogo} className="vite" alt="Vite logo" />
|
|
19
|
+
</div>
|
|
20
|
+
<div>
|
|
21
|
+
<h1>Get started with Cloudflare</h1>
|
|
22
|
+
<p>
|
|
23
|
+
Edit <code>src/App.tsx</code> or <code>worker/index.ts</code> and save to test <code>HMR</code>
|
|
24
|
+
</p>
|
|
25
|
+
</div>
|
|
26
|
+
<ul style={{ display: 'flex', gap: '1rem', listStyle: 'none', padding: 0 }}>
|
|
27
|
+
<li>
|
|
28
|
+
<button
|
|
29
|
+
className="counter"
|
|
30
|
+
onClick={() => setCount((count) => count + 1)}
|
|
31
|
+
>
|
|
32
|
+
Count is {count}
|
|
33
|
+
</button>
|
|
34
|
+
</li>
|
|
35
|
+
<li>
|
|
36
|
+
<button
|
|
37
|
+
className="counter"
|
|
38
|
+
onClick={() => {
|
|
39
|
+
fetch('/api/')
|
|
40
|
+
.then((res) => res.json())
|
|
41
|
+
.then((data) => setName(data.name))
|
|
42
|
+
}}
|
|
43
|
+
aria-label='get name'
|
|
44
|
+
>
|
|
45
|
+
Name from API is: {name}
|
|
46
|
+
</button>
|
|
47
|
+
</li>
|
|
48
|
+
</ul>
|
|
49
|
+
|
|
50
|
+
|
|
51
|
+
</section>
|
|
52
|
+
|
|
53
|
+
<div className="ticks"></div>
|
|
54
|
+
|
|
55
|
+
<section id="next-steps">
|
|
56
|
+
<div id="docs">
|
|
57
|
+
<svg className="icon" role="presentation" aria-hidden="true">
|
|
58
|
+
<use href="/icons.svg#documentation-icon"></use>
|
|
59
|
+
</svg>
|
|
60
|
+
<h2>Documentation</h2>
|
|
61
|
+
<p>Your questions, answered</p>
|
|
62
|
+
<ul>
|
|
63
|
+
<li>
|
|
64
|
+
<a href="https://vite.dev/" target="_blank">
|
|
65
|
+
<img className="logo" src={viteLogo} alt="" />
|
|
66
|
+
Explore Vite
|
|
67
|
+
</a>
|
|
68
|
+
</li>
|
|
69
|
+
<li>
|
|
70
|
+
<a href="https://react.dev/" target="_blank">
|
|
71
|
+
<img className="button-icon" src={reactLogo} alt="" />
|
|
72
|
+
Learn more
|
|
73
|
+
</a>
|
|
74
|
+
</li>
|
|
75
|
+
<li>
|
|
76
|
+
<a href="https://workers.cloudflare.com/" target="_blank">
|
|
77
|
+
<img className="button-icon" src={cloudflareLogo} alt="" />
|
|
78
|
+
Workers Docs
|
|
79
|
+
</a>
|
|
80
|
+
</li>
|
|
81
|
+
</ul>
|
|
82
|
+
</div>
|
|
83
|
+
<div id="social">
|
|
84
|
+
<svg className="icon" role="presentation" aria-hidden="true">
|
|
85
|
+
<use href="/icons.svg#social-icon"></use>
|
|
86
|
+
</svg>
|
|
87
|
+
<h2>Connect with us</h2>
|
|
88
|
+
<p>Join the Vite community</p>
|
|
89
|
+
<ul>
|
|
90
|
+
<li>
|
|
91
|
+
<a href="https://github.com/vitejs/vite" target="_blank">
|
|
92
|
+
<svg
|
|
93
|
+
className="button-icon"
|
|
94
|
+
role="presentation"
|
|
95
|
+
aria-hidden="true"
|
|
96
|
+
>
|
|
97
|
+
<use href="/icons.svg#github-icon"></use>
|
|
98
|
+
</svg>
|
|
99
|
+
GitHub
|
|
100
|
+
</a>
|
|
101
|
+
</li>
|
|
102
|
+
<li>
|
|
103
|
+
<a href="https://chat.vite.dev/" target="_blank">
|
|
104
|
+
<svg
|
|
105
|
+
className="button-icon"
|
|
106
|
+
role="presentation"
|
|
107
|
+
aria-hidden="true"
|
|
108
|
+
>
|
|
109
|
+
<use href="/icons.svg#discord-icon"></use>
|
|
110
|
+
</svg>
|
|
111
|
+
Discord
|
|
112
|
+
</a>
|
|
113
|
+
</li>
|
|
114
|
+
<li>
|
|
115
|
+
<a href="https://x.com/vite_js" target="_blank">
|
|
116
|
+
<svg
|
|
117
|
+
className="button-icon"
|
|
118
|
+
role="presentation"
|
|
119
|
+
aria-hidden="true"
|
|
120
|
+
>
|
|
121
|
+
<use href="/icons.svg#x-icon"></use>
|
|
122
|
+
</svg>
|
|
123
|
+
X.com
|
|
124
|
+
</a>
|
|
125
|
+
</li>
|
|
126
|
+
<li>
|
|
127
|
+
<a href="https://bsky.app/profile/vite.dev" target="_blank">
|
|
128
|
+
<svg
|
|
129
|
+
className="button-icon"
|
|
130
|
+
role="presentation"
|
|
131
|
+
aria-hidden="true"
|
|
132
|
+
>
|
|
133
|
+
<use href="/icons.svg#bluesky-icon"></use>
|
|
134
|
+
</svg>
|
|
135
|
+
Bluesky
|
|
136
|
+
</a>
|
|
137
|
+
</li>
|
|
138
|
+
</ul>
|
|
139
|
+
</div>
|
|
140
|
+
</section>
|
|
141
|
+
|
|
142
|
+
<div className="ticks"></div>
|
|
143
|
+
<section id="spacer"></section>
|
|
54
144
|
</>
|
|
55
145
|
)
|
|
56
146
|
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
<svg xmlns="http://www.w3.org/2000/svg" width="40" height="19" fill="none" viewBox="0 0 40 19"><path fill="#f6821f" d="m27.16 18.507.204-.735c.242-.873.152-1.68-.255-2.274-.374-.547-.998-.868-1.755-.906l-14.346-.19a.3.3 0 0 1-.127-.034.3.3 0 0 1-.099-.09.31.31 0 0 1-.03-.27.4.4 0 0 1 .128-.185.37.37 0 0 1 .205-.081l14.479-.192c1.717-.082 3.576-1.536 4.227-3.31l.826-2.25a.55.55 0 0 0 .022-.298C29.702 3.29 25.94 0 21.44 0c-4.146 0-7.667 2.792-8.928 6.673a4.1 4.1 0 0 0-2.978-.86c-1.99.206-3.589 1.877-3.786 3.953a4.6 4.6 0 0 0 .11 1.547C2.605 11.41 0 14.189 0 17.603q0 .459.065.911c.009.07.042.134.093.18.05.047.116.072.183.073l26.485.003h.007a.34.34 0 0 0 .205-.076.36.36 0 0 0 .122-.187"/><path fill="#fbad41" d="M31.94 8.153q-.2 0-.397.01a.2.2 0 0 0-.062.014.2.2 0 0 0-.091.061.24.24 0 0 0-.054.098l-.564 2.033c-.243.874-.152 1.68.254 2.274.375.547.998.868 1.756.906l3.058.191a.3.3 0 0 1 .123.035.28.28 0 0 1 .142.22.3.3 0 0 1-.015.14.4.4 0 0 1-.128.185.37.37 0 0 1-.205.08l-3.177.192c-1.725.083-3.585 1.536-4.235 3.31l-.23.626a.18.18 0 0 0 .017.16.17.17 0 0 0 .134.08h10.941a.3.3 0 0 0 .176-.06.3.3 0 0 0 .106-.16 8.5 8.5 0 0 0 .291-2.216c0-4.517-3.51-8.18-7.84-8.18"/></svg>
|
|
@@ -1,45 +0,0 @@
|
|
|
1
|
-
#root {
|
|
2
|
-
max-width: 1280px;
|
|
3
|
-
margin: 0 auto;
|
|
4
|
-
padding: 2rem;
|
|
5
|
-
text-align: center;
|
|
6
|
-
}
|
|
7
|
-
|
|
8
|
-
.logo {
|
|
9
|
-
height: 6em;
|
|
10
|
-
padding: 1.5em;
|
|
11
|
-
will-change: filter;
|
|
12
|
-
transition: filter 300ms;
|
|
13
|
-
}
|
|
14
|
-
.logo:hover {
|
|
15
|
-
filter: drop-shadow(0 0 2em #646cffaa);
|
|
16
|
-
}
|
|
17
|
-
.logo.react:hover {
|
|
18
|
-
filter: drop-shadow(0 0 2em #61dafbaa);
|
|
19
|
-
}
|
|
20
|
-
.logo.cloudflare:hover {
|
|
21
|
-
filter: drop-shadow(0 0 2em #f6821faa);
|
|
22
|
-
}
|
|
23
|
-
|
|
24
|
-
@keyframes logo-spin {
|
|
25
|
-
from {
|
|
26
|
-
transform: rotate(0deg);
|
|
27
|
-
}
|
|
28
|
-
to {
|
|
29
|
-
transform: rotate(360deg);
|
|
30
|
-
}
|
|
31
|
-
}
|
|
32
|
-
|
|
33
|
-
@media (prefers-reduced-motion: no-preference) {
|
|
34
|
-
a:nth-of-type(2) .logo {
|
|
35
|
-
animation: logo-spin infinite 20s linear;
|
|
36
|
-
}
|
|
37
|
-
}
|
|
38
|
-
|
|
39
|
-
.card {
|
|
40
|
-
padding: 2em;
|
|
41
|
-
}
|
|
42
|
-
|
|
43
|
-
.read-the-docs {
|
|
44
|
-
color: #888;
|
|
45
|
-
}
|
|
@@ -1,53 +0,0 @@
|
|
|
1
|
-
<?xml version="1.0" encoding="utf-8"?>
|
|
2
|
-
<!-- Generator: Adobe Illustrator 21.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
|
|
3
|
-
<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"
|
|
4
|
-
viewBox="0 0 822.8 355.5" style="enable-background:new 0 0 822.8 355.5;" xml:space="preserve">
|
|
5
|
-
<style type="text/css">
|
|
6
|
-
.st0{fill:#FFFFFF;}
|
|
7
|
-
@media(prefers-color-scheme:light){.st0{fill:#404242;}}
|
|
8
|
-
.st1{fill:#FFFFFF;}
|
|
9
|
-
.st2{fill:#FBAE40;}
|
|
10
|
-
.st3{fill:#F58220;}
|
|
11
|
-
</style>
|
|
12
|
-
<g id="Page-1">
|
|
13
|
-
<path id="CLOUDFLARE-_xAE_" class="st0" d="M772.2,252.6c-3.4,0-6.1-2.7-6.1-6.1c0-3.3,2.7-6.1,6.1-6.1c3.3,0,6.1,2.7,6.1,6.1
|
|
14
|
-
C778.3,249.8,775.5,252.6,772.2,252.6L772.2,252.6z M772.2,241.6c-2.7,0-4.9,2.2-4.9,4.9s2.2,4.9,4.9,4.9c2.7,0,4.9-2.2,4.9-4.9
|
|
15
|
-
S774.9,241.6,772.2,241.6L772.2,241.6z M775.3,249.7h-1.4l-1.2-2.3h-1.6v2.3h-1.3V243h3.2c1.4,0,2.3,0.9,2.3,2.2c0,1-0.6,1.7-1.4,2
|
|
16
|
-
L775.3,249.7z M772.9,246.2c0.5,0,1-0.3,1-1c0-0.8-0.4-1-1-1h-2v2H772.9z M136.7,239.8h15.6v42.5h27.1v13.6h-42.7V239.8z
|
|
17
|
-
M195.5,268v-0.2c0-16.1,13-29.2,30.3-29.2s30.1,12.9,30.1,29v0.2c0,16.1-13,29.2-30.3,29.2S195.5,284.1,195.5,268z M240.1,268
|
|
18
|
-
v-0.2c0-8.1-5.8-15.1-14.4-15.1c-8.5,0-14.2,6.9-14.2,15v0.2c0,8.1,5.8,15.1,14.3,15.1C234.4,283,240.1,276.1,240.1,268z
|
|
19
|
-
M275,271.3v-31.5h15.8V271c0,8.1,4.1,11.9,10.3,11.9c6.2,0,10.3-3.7,10.3-11.5v-31.6h15.8v31.1c0,18.1-10.3,26-26.3,26
|
|
20
|
-
C285,296.9,275,288.9,275,271.3z M351,239.8h21.6c20,0,31.7,11.5,31.7,27.7v0.2c0,16.2-11.8,28.2-32,28.2H351V239.8z M372.9,282.1
|
|
21
|
-
c9.3,0,15.5-5.1,15.5-14.2v-0.2c0-9-6.2-14.2-15.5-14.2h-6.3V282L372.9,282.1L372.9,282.1z M426.9,239.8h44.9v13.6h-29.4v9.6H469
|
|
22
|
-
v12.9h-26.6v20h-15.5V239.8z M493.4,239.8h15.5v42.5h27.2v13.6h-42.7V239.8z M576.7,239.4h15l23.9,56.5h-16.7l-4.1-10h-21.6l-4,10
|
|
23
|
-
h-16.3L576.7,239.4z M590.4,273.8l-6.2-15.9l-6.3,15.9H590.4z M635.6,239.8h26.5c8.6,0,14.5,2.2,18.3,6.1c3.3,3.2,5,7.5,5,13.1v0.2
|
|
24
|
-
c0,8.6-4.6,14.3-11.5,17.2l13.4,19.6h-18L658,279h-6.8v17h-15.6V239.8z M661.4,266.7c5.3,0,8.3-2.6,8.3-6.6v-0.2
|
|
25
|
-
c0-4.4-3.2-6.6-8.4-6.6h-10.2v13.4H661.4z M707.8,239.8h45.1V253h-29.7v8.5h26.9v12.3h-26.9v8.9h30.1v13.2h-45.5V239.8z
|
|
26
|
-
M102.7,274.6c-2.2,4.9-6.8,8.4-12.8,8.4c-8.5,0-14.3-7.1-14.3-15.1v-0.2c0-8.1,5.7-15,14.2-15c6.4,0,11.3,3.9,13.3,9.3h16.4
|
|
27
|
-
c-2.6-13.4-14.4-23.3-29.6-23.3c-17.3,0-30.3,13.1-30.3,29.2v0.2c0,16.1,12.8,29,30.1,29c14.8,0,26.4-9.6,29.4-22.4L102.7,274.6z"
|
|
28
|
-
/>
|
|
29
|
-
<path id="flare" class="st1" d="M734.5,150.4l-40.7-24.7c-0.6-0.1-4.4,0.3-6.4-0.7c-1.4-0.7-2.5-1.9-3.2-4c-3.2,0-175.5,0-175.5,0
|
|
30
|
-
v91.8h225.8V150.4z"/>
|
|
31
|
-
<path id="right-cloud" class="st2" d="M692.2,125.8c-0.8,0-1.5,0.6-1.8,1.4l-4.8,16.7c-2.1,7.2-1.3,13.8,2.2,18.7
|
|
32
|
-
c3.2,4.5,8.6,7.1,15.1,7.4l26.2,1.6c0.8,0,1.5,0.4,1.9,1c0.4,0.6,0.5,1.5,0.3,2.2c-0.4,1.2-1.6,2.1-2.9,2.2l-27.3,1.6
|
|
33
|
-
c-14.8,0.7-30.7,12.6-36.3,27.2l-2,5.1c-0.4,1,0.3,2,1.4,2H758c1.1,0,2.1-0.7,2.4-1.8c1.6-5.8,2.5-11.9,2.5-18.2
|
|
34
|
-
c0-37-30.2-67.2-67.3-67.2C694.5,125.7,693.3,125.7,692.2,125.8z"/>
|
|
35
|
-
<path id="left-cloud" class="st3" d="M656.4,204.6c2.1-7.2,1.3-13.8-2.2-18.7c-3.2-4.5-8.6-7.1-15.1-7.4L516,176.9
|
|
36
|
-
c-0.8,0-1.5-0.4-1.9-1c-0.4-0.6-0.5-1.4-0.3-2.2c0.4-1.2,1.6-2.1,2.9-2.2l124.2-1.6c14.7-0.7,30.7-12.6,36.3-27.2l7.1-18.5
|
|
37
|
-
c0.3-0.8,0.4-1.6,0.2-2.4c-8-36.2-40.3-63.2-78.9-63.2c-35.6,0-65.8,23-76.6,54.9c-7-5.2-15.9-8-25.5-7.1
|
|
38
|
-
c-17.1,1.7-30.8,15.4-32.5,32.5c-0.4,4.4-0.1,8.7,0.9,12.7c-27.9,0.8-50.2,23.6-50.2,51.7c0,2.5,0.2,5,0.5,7.5
|
|
39
|
-
c0.2,1.2,1.2,2.1,2.4,2.1h227.2c1.3,0,2.5-0.9,2.9-2.2L656.4,204.6z"/>
|
|
40
|
-
</g>
|
|
41
|
-
<g>
|
|
42
|
-
</g>
|
|
43
|
-
<g>
|
|
44
|
-
</g>
|
|
45
|
-
<g>
|
|
46
|
-
</g>
|
|
47
|
-
<g>
|
|
48
|
-
</g>
|
|
49
|
-
<g>
|
|
50
|
-
</g>
|
|
51
|
-
<g>
|
|
52
|
-
</g>
|
|
53
|
-
</svg>
|
|
@@ -1,45 +0,0 @@
|
|
|
1
|
-
#root {
|
|
2
|
-
max-width: 1280px;
|
|
3
|
-
margin: 0 auto;
|
|
4
|
-
padding: 2rem;
|
|
5
|
-
text-align: center;
|
|
6
|
-
}
|
|
7
|
-
|
|
8
|
-
.logo {
|
|
9
|
-
height: 6em;
|
|
10
|
-
padding: 1.5em;
|
|
11
|
-
will-change: filter;
|
|
12
|
-
transition: filter 300ms;
|
|
13
|
-
}
|
|
14
|
-
.logo:hover {
|
|
15
|
-
filter: drop-shadow(0 0 2em #646cffaa);
|
|
16
|
-
}
|
|
17
|
-
.logo.react:hover {
|
|
18
|
-
filter: drop-shadow(0 0 2em #61dafbaa);
|
|
19
|
-
}
|
|
20
|
-
.logo.cloudflare:hover {
|
|
21
|
-
filter: drop-shadow(0 0 2em #f6821faa);
|
|
22
|
-
}
|
|
23
|
-
|
|
24
|
-
@keyframes logo-spin {
|
|
25
|
-
from {
|
|
26
|
-
transform: rotate(0deg);
|
|
27
|
-
}
|
|
28
|
-
to {
|
|
29
|
-
transform: rotate(360deg);
|
|
30
|
-
}
|
|
31
|
-
}
|
|
32
|
-
|
|
33
|
-
@media (prefers-reduced-motion: no-preference) {
|
|
34
|
-
a:nth-of-type(2) .logo {
|
|
35
|
-
animation: logo-spin infinite 20s linear;
|
|
36
|
-
}
|
|
37
|
-
}
|
|
38
|
-
|
|
39
|
-
.card {
|
|
40
|
-
padding: 2em;
|
|
41
|
-
}
|
|
42
|
-
|
|
43
|
-
.read-the-docs {
|
|
44
|
-
color: #888;
|
|
45
|
-
}
|
|
@@ -1,51 +0,0 @@
|
|
|
1
|
-
<?xml version="1.0" encoding="utf-8"?>
|
|
2
|
-
<!-- Generator: Adobe Illustrator 21.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
|
|
3
|
-
<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"
|
|
4
|
-
viewBox="0 0 822.8 355.5" style="enable-background:new 0 0 822.8 355.5;" xml:space="preserve">
|
|
5
|
-
<style type="text/css">
|
|
6
|
-
.st0{fill:#FFFFFF;}
|
|
7
|
-
.st1{fill:#FBAE40;}
|
|
8
|
-
.st2{fill:#F58220;}
|
|
9
|
-
</style>
|
|
10
|
-
<g id="Page-1">
|
|
11
|
-
<path id="CLOUDFLARE-_xAE_" class="st0" d="M772.2,252.6c-3.4,0-6.1-2.7-6.1-6.1c0-3.3,2.7-6.1,6.1-6.1c3.3,0,6.1,2.7,6.1,6.1
|
|
12
|
-
C778.3,249.8,775.5,252.6,772.2,252.6L772.2,252.6z M772.2,241.6c-2.7,0-4.9,2.2-4.9,4.9s2.2,4.9,4.9,4.9c2.7,0,4.9-2.2,4.9-4.9
|
|
13
|
-
S774.9,241.6,772.2,241.6L772.2,241.6z M775.3,249.7h-1.4l-1.2-2.3h-1.6v2.3h-1.3V243h3.2c1.4,0,2.3,0.9,2.3,2.2c0,1-0.6,1.7-1.4,2
|
|
14
|
-
L775.3,249.7z M772.9,246.2c0.5,0,1-0.3,1-1c0-0.8-0.4-1-1-1h-2v2H772.9z M136.7,239.8h15.6v42.5h27.1v13.6h-42.7V239.8z
|
|
15
|
-
M195.5,268v-0.2c0-16.1,13-29.2,30.3-29.2s30.1,12.9,30.1,29v0.2c0,16.1-13,29.2-30.3,29.2S195.5,284.1,195.5,268z M240.1,268
|
|
16
|
-
v-0.2c0-8.1-5.8-15.1-14.4-15.1c-8.5,0-14.2,6.9-14.2,15v0.2c0,8.1,5.8,15.1,14.3,15.1C234.4,283,240.1,276.1,240.1,268z
|
|
17
|
-
M275,271.3v-31.5h15.8V271c0,8.1,4.1,11.9,10.3,11.9c6.2,0,10.3-3.7,10.3-11.5v-31.6h15.8v31.1c0,18.1-10.3,26-26.3,26
|
|
18
|
-
C285,296.9,275,288.9,275,271.3z M351,239.8h21.6c20,0,31.7,11.5,31.7,27.7v0.2c0,16.2-11.8,28.2-32,28.2H351V239.8z M372.9,282.1
|
|
19
|
-
c9.3,0,15.5-5.1,15.5-14.2v-0.2c0-9-6.2-14.2-15.5-14.2h-6.3V282L372.9,282.1L372.9,282.1z M426.9,239.8h44.9v13.6h-29.4v9.6H469
|
|
20
|
-
v12.9h-26.6v20h-15.5V239.8z M493.4,239.8h15.5v42.5h27.2v13.6h-42.7V239.8z M576.7,239.4h15l23.9,56.5h-16.7l-4.1-10h-21.6l-4,10
|
|
21
|
-
h-16.3L576.7,239.4z M590.4,273.8l-6.2-15.9l-6.3,15.9H590.4z M635.6,239.8h26.5c8.6,0,14.5,2.2,18.3,6.1c3.3,3.2,5,7.5,5,13.1v0.2
|
|
22
|
-
c0,8.6-4.6,14.3-11.5,17.2l13.4,19.6h-18L658,279h-6.8v17h-15.6V239.8z M661.4,266.7c5.3,0,8.3-2.6,8.3-6.6v-0.2
|
|
23
|
-
c0-4.4-3.2-6.6-8.4-6.6h-10.2v13.4H661.4z M707.8,239.8h45.1V253h-29.7v8.5h26.9v12.3h-26.9v8.9h30.1v13.2h-45.5V239.8z
|
|
24
|
-
M102.7,274.6c-2.2,4.9-6.8,8.4-12.8,8.4c-8.5,0-14.3-7.1-14.3-15.1v-0.2c0-8.1,5.7-15,14.2-15c6.4,0,11.3,3.9,13.3,9.3h16.4
|
|
25
|
-
c-2.6-13.4-14.4-23.3-29.6-23.3c-17.3,0-30.3,13.1-30.3,29.2v0.2c0,16.1,12.8,29,30.1,29c14.8,0,26.4-9.6,29.4-22.4L102.7,274.6z"
|
|
26
|
-
/>
|
|
27
|
-
<path id="flare" class="st0" d="M734.5,150.4l-40.7-24.7c-0.6-0.1-4.4,0.3-6.4-0.7c-1.4-0.7-2.5-1.9-3.2-4c-3.2,0-175.5,0-175.5,0
|
|
28
|
-
v91.8h225.8V150.4z"/>
|
|
29
|
-
<path id="right-cloud" class="st1" d="M692.2,125.8c-0.8,0-1.5,0.6-1.8,1.4l-4.8,16.7c-2.1,7.2-1.3,13.8,2.2,18.7
|
|
30
|
-
c3.2,4.5,8.6,7.1,15.1,7.4l26.2,1.6c0.8,0,1.5,0.4,1.9,1c0.4,0.6,0.5,1.5,0.3,2.2c-0.4,1.2-1.6,2.1-2.9,2.2l-27.3,1.6
|
|
31
|
-
c-14.8,0.7-30.7,12.6-36.3,27.2l-2,5.1c-0.4,1,0.3,2,1.4,2H758c1.1,0,2.1-0.7,2.4-1.8c1.6-5.8,2.5-11.9,2.5-18.2
|
|
32
|
-
c0-37-30.2-67.2-67.3-67.2C694.5,125.7,693.3,125.7,692.2,125.8z"/>
|
|
33
|
-
<path id="left-cloud" class="st2" d="M656.4,204.6c2.1-7.2,1.3-13.8-2.2-18.7c-3.2-4.5-8.6-7.1-15.1-7.4L516,176.9
|
|
34
|
-
c-0.8,0-1.5-0.4-1.9-1c-0.4-0.6-0.5-1.4-0.3-2.2c0.4-1.2,1.6-2.1,2.9-2.2l124.2-1.6c14.7-0.7,30.7-12.6,36.3-27.2l7.1-18.5
|
|
35
|
-
c0.3-0.8,0.4-1.6,0.2-2.4c-8-36.2-40.3-63.2-78.9-63.2c-35.6,0-65.8,23-76.6,54.9c-7-5.2-15.9-8-25.5-7.1
|
|
36
|
-
c-17.1,1.7-30.8,15.4-32.5,32.5c-0.4,4.4-0.1,8.7,0.9,12.7c-27.9,0.8-50.2,23.6-50.2,51.7c0,2.5,0.2,5,0.5,7.5
|
|
37
|
-
c0.2,1.2,1.2,2.1,2.4,2.1h227.2c1.3,0,2.5-0.9,2.9-2.2L656.4,204.6z"/>
|
|
38
|
-
</g>
|
|
39
|
-
<g>
|
|
40
|
-
</g>
|
|
41
|
-
<g>
|
|
42
|
-
</g>
|
|
43
|
-
<g>
|
|
44
|
-
</g>
|
|
45
|
-
<g>
|
|
46
|
-
</g>
|
|
47
|
-
<g>
|
|
48
|
-
</g>
|
|
49
|
-
<g>
|
|
50
|
-
</g>
|
|
51
|
-
</svg>
|