@brillout/docpress 0.1.9 → 0.1.10
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/{src/css/Inter-Var.ttf → dist/Inter-Var-IOAEQULN.ttf} +0 -0
- package/{src/components/Sponsors/companyLogos/ccoli.svg → dist/ccoli-CHW3TQKS.svg} +0 -0
- package/{src/icons/changelog.svg → dist/changelog-IPI5F42D.svg} +0 -0
- package/{src/navigation/navigation-fullscreen/chevron.svg → dist/chevron-K3WPYLOP.svg} +0 -0
- package/{src/components/features/chevron.svg → dist/chevron-R2IYJD62.svg} +0 -0
- package/dist/chunk-3NFN2KUH.js +1 -0
- package/dist/chunk-3NFN2KUH.js.map +1 -0
- package/dist/chunk-G2KXEHNF.js +56 -0
- package/dist/chunk-G2KXEHNF.js.map +1 -0
- package/dist/chunk-G6OTZHVA.js +9 -0
- package/dist/chunk-G6OTZHVA.js.map +1 -0
- package/dist/chunk-JKLALMFU.js +103 -0
- package/dist/chunk-JKLALMFU.js.map +1 -0
- package/dist/chunk-OEVBWUR6.js +92 -0
- package/dist/chunk-OEVBWUR6.js.map +1 -0
- package/dist/chunk-TTLAZ2T2.js +8 -0
- package/dist/chunk-TTLAZ2T2.js.map +1 -0
- package/dist/chunk-UCY72YQS.js +178 -0
- package/dist/chunk-UCY72YQS.js.map +1 -0
- package/dist/cli/index.d.ts +1 -0
- package/dist/cli/index.js +11 -7
- package/dist/cli/index.js.map +1 -0
- package/{src/navigation/navigation-fullscreen/close.svg → dist/close-IQXTDOHV.svg} +0 -0
- package/{src/utils/Emoji/compass.svg → dist/compass-2RWQU3E4.svg} +0 -0
- package/{src/components/Sponsors/companyLogos/contra.svg → dist/contra-WLZBOPBV.svg} +0 -0
- package/dist/{cli/devServer.js → devServer-UEJORYCC.js} +3 -1
- package/dist/devServer-UEJORYCC.js.map +1 -0
- package/{src/icons/discord.svg → dist/discord-JD33TUSF.svg} +0 -0
- package/{src/utils/Emoji/engine.png → dist/engine-6Q6VSCVA.png} +0 -0
- package/{src/icons/github.svg → dist/github-P5ZSKN2N.svg} +0 -0
- package/{src/icons/heart.svg → dist/heart-OINVKOXO.svg} +0 -0
- package/dist/index.css +121 -0
- package/dist/index.css.map +1 -0
- package/dist/index.d.ts +135 -0
- package/dist/index.js +488 -0
- package/dist/index.js.map +1 -0
- package/{src/components/Sponsors/label.svg → dist/label-MP75CTIA.svg} +0 -0
- package/{src/utils/Emoji/mechanical-arm.svg → dist/mechanical-arm-TR7IQQMG.svg} +0 -0
- package/{src/components/Sponsors/medalBronze.svg → dist/medalBronze-CO4CTUR4.svg} +0 -0
- package/{src/components/Sponsors/medalGold.svg → dist/medalGold-UP6A73FL.svg} +0 -0
- package/{src/components/Sponsors/medalSilver.svg → dist/medalSilver-FAPGGOBN.svg} +0 -0
- package/{src/components/Sponsors/companyLogos/mfqs.svg → dist/mfqs-2EAEE7N6.svg} +0 -0
- package/{src/utils/Emoji/road-fork.svg → dist/road-fork-3WZLW3HB.svg} +0 -0
- package/{src/utils/Emoji/shield.svg → dist/shield-CU45RG5C.svg} +0 -0
- package/{src → dist/src}/components/features/FeatureList.css +2 -7
- package/dist/src/components/features/FeatureList.css.map +1 -0
- package/dist/src/components/features/FeatureList.d.ts +13 -0
- package/dist/src/components/features/FeatureList.js +8 -0
- package/dist/src/components/features/FeatureList.js.map +1 -0
- package/dist/src/components/features/initFeatureList.d.ts +3 -0
- package/dist/src/components/features/initFeatureList.js +60 -0
- package/dist/src/components/features/initFeatureList.js.map +1 -0
- package/dist/src/renderer/_default.page.client.css +272 -0
- package/dist/src/renderer/_default.page.client.css.map +1 -0
- package/dist/src/renderer/_default.page.client.d.ts +1 -0
- package/dist/src/renderer/_default.page.client.js +182 -0
- package/dist/src/renderer/_default.page.client.js.map +1 -0
- package/dist/src/renderer/_default.page.server.css +312 -0
- package/dist/src/renderer/_default.page.server.css.map +1 -0
- package/dist/src/renderer/_default.page.server.d.ts +22 -0
- package/dist/src/renderer/_default.page.server.js +602 -0
- package/dist/src/renderer/_default.page.server.js.map +1 -0
- package/{src/icons/twitter.svg → dist/twitter-I7DXDN3J.svg} +0 -0
- package/{src/utils/Emoji/typescript.svg → dist/typescript-ALIPKLRM.svg} +0 -0
- package/package.json +25 -17
- package/vite.config.ts +10 -4
- package/cli.mjs +0 -2
- package/dist/cli/chunk-Y3OKG4SS.js +0 -30
- package/dist/cli/configFile.js +0 -6
- package/src/MobileHeader.tsx +0 -68
- package/src/PageLayout.css +0 -41
- package/src/PageLayout.tsx +0 -37
- package/src/algolia/DocSearch.css +0 -29
- package/src/algolia/DocSearch.ts +0 -37
- package/src/autoScrollNav.ts +0 -22
- package/src/components/CodeBlock.tsx +0 -22
- package/src/components/DocLink.tsx +0 -108
- package/src/components/EditPageNote.tsx +0 -18
- package/src/components/HorizontalLine.tsx +0 -20
- package/src/components/ImportMeta.tsx +0 -11
- package/src/components/Info.tsx +0 -12
- package/src/components/Link.tsx +0 -18
- package/src/components/Note.tsx +0 -31
- package/src/components/P.css +0 -8
- package/src/components/P.tsx +0 -8
- package/src/components/ReadingRecommendation.tsx +0 -53
- package/src/components/RepoLink.tsx +0 -24
- package/src/components/Sponsors/companyLogos/ccoli-logo.svg +0 -1
- package/src/components/Sponsors/companyLogos/ccoli-text.svg +0 -1
- package/src/components/Sponsors/label.draft.svg +0 -108
- package/src/components/Sponsors.tsx +0 -243
- package/src/components/features/FeatureList.tsx +0 -114
- package/src/components/features/initFeatureList.ts +0 -66
- package/src/components/index.ts +0 -13
- package/src/config/Config.ts +0 -30
- package/src/config/getConfig.ts +0 -18
- package/src/config/resolveConfig/resolveHeading.ts +0 -0
- package/src/config/resolvePageContext.ts +0 -157
- package/src/css/button.css +0 -7
- package/src/css/code/block.css +0 -36
- package/src/css/code/inline.css +0 -27
- package/src/css/code.css +0 -20
- package/src/css/colorize-on-hover.css +0 -29
- package/src/css/font.css +0 -19
- package/src/css/heading.css +0 -25
- package/src/css/index.css +0 -10
- package/src/css/link.css +0 -17
- package/src/css/note.css +0 -26
- package/src/css/reset.css +0 -12
- package/src/css/table.css +0 -14
- package/src/css/tooltip.css +0 -11
- package/src/headings.ts +0 -201
- package/src/index.ts +0 -3
- package/src/installSectionUrlHashs.ts +0 -50
- package/src/navigation/Navigation-highlight.css +0 -41
- package/src/navigation/Navigation-items.css +0 -122
- package/src/navigation/Navigation-layout.css +0 -118
- package/src/navigation/Navigation.client.old.ts +0 -303
- package/src/navigation/Navigation.client.ts +0 -19
- package/src/navigation/Navigation.css +0 -12
- package/src/navigation/Navigation.tsx +0 -229
- package/src/navigation/NavigationHeader.tsx +0 -97
- package/src/navigation/navigation-fullscreen/NavigationFullscreenButton.css +0 -32
- package/src/navigation/navigation-fullscreen/NavigationFullscreenButton.tsx +0 -44
- package/src/navigation/navigation-fullscreen/initNavigationFullscreen.ts +0 -115
- package/src/parseEmojis.ts +0 -33
- package/src/renderer/_default.page.client.ts +0 -7
- package/src/renderer/_default.page.server.tsx +0 -69
- package/src/renderer/usePageContext.tsx +0 -25
- package/src/types.ts +0 -2
- package/src/utils/Emoji/Emoji.ts +0 -216
- package/src/utils/Emoji/assets.ts +0 -9
- package/src/utils/Emoji/index.ts +0 -1
- package/src/utils/Emoji/mountain.svg +0 -1
- package/src/utils/assert.ts +0 -39
- package/src/utils/determineSectionUrlHash.ts +0 -35
- package/src/utils/filter.ts +0 -12
- package/src/utils/index.ts +0 -6
- package/src/utils/isBrowser.ts +0 -5
- package/src/utils/jsxToTextContent.ts +0 -11
- package/src/utils/objectAssign.ts +0 -9
package/dist/index.js
ADDED
|
@@ -0,0 +1,488 @@
|
|
|
1
|
+
import "./chunk-3NFN2KUH.js";
|
|
2
|
+
import {
|
|
3
|
+
RepoLink,
|
|
4
|
+
getHeadings,
|
|
5
|
+
isRepoLink,
|
|
6
|
+
parseTitle,
|
|
7
|
+
usePageContext
|
|
8
|
+
} from "./chunk-UCY72YQS.js";
|
|
9
|
+
import {
|
|
10
|
+
Emoji
|
|
11
|
+
} from "./chunk-G2KXEHNF.js";
|
|
12
|
+
import {
|
|
13
|
+
FeatureList
|
|
14
|
+
} from "./chunk-OEVBWUR6.js";
|
|
15
|
+
import {
|
|
16
|
+
assert,
|
|
17
|
+
assertUsage,
|
|
18
|
+
determineSectionTitle,
|
|
19
|
+
determineSectionUrlHash,
|
|
20
|
+
filter,
|
|
21
|
+
isBrowser,
|
|
22
|
+
jsxToTextContent,
|
|
23
|
+
objectAssign
|
|
24
|
+
} from "./chunk-JKLALMFU.js";
|
|
25
|
+
import "./chunk-TTLAZ2T2.js";
|
|
26
|
+
|
|
27
|
+
// src/components/Link.tsx
|
|
28
|
+
import React2 from "react";
|
|
29
|
+
|
|
30
|
+
// src/components/DocLink.tsx
|
|
31
|
+
import React from "react";
|
|
32
|
+
function DocLink({
|
|
33
|
+
href,
|
|
34
|
+
text,
|
|
35
|
+
noBreadcrumb,
|
|
36
|
+
doNotInferSectionTitle
|
|
37
|
+
}) {
|
|
38
|
+
const pageContext = usePageContext();
|
|
39
|
+
return /* @__PURE__ */ React.createElement("a", {
|
|
40
|
+
href
|
|
41
|
+
}, text || getTitle({ href, noBreadcrumb, pageContext, doNotInferSectionTitle }));
|
|
42
|
+
}
|
|
43
|
+
function getTitle({
|
|
44
|
+
href,
|
|
45
|
+
noBreadcrumb,
|
|
46
|
+
pageContext,
|
|
47
|
+
doNotInferSectionTitle
|
|
48
|
+
}) {
|
|
49
|
+
let urlHash = null;
|
|
50
|
+
let hrefWithoutHash = href;
|
|
51
|
+
if (href.includes("#")) {
|
|
52
|
+
;
|
|
53
|
+
[hrefWithoutHash, urlHash] = href.split("#");
|
|
54
|
+
}
|
|
55
|
+
const heading = findHeading(hrefWithoutHash, pageContext);
|
|
56
|
+
const breadcrumbs = [];
|
|
57
|
+
if ("parentHeadings" in heading) {
|
|
58
|
+
breadcrumbs.push(
|
|
59
|
+
...heading.parentHeadings.slice().reverse().map(({ title }) => title)
|
|
60
|
+
);
|
|
61
|
+
}
|
|
62
|
+
breadcrumbs.push(heading.title);
|
|
63
|
+
if (urlHash) {
|
|
64
|
+
let sectionTitle = void 0;
|
|
65
|
+
if ("sectionTitles" in heading && heading.sectionTitles) {
|
|
66
|
+
heading.sectionTitles.forEach((title) => {
|
|
67
|
+
if (determineSectionUrlHash(title) === urlHash) {
|
|
68
|
+
sectionTitle = parseTitle(title);
|
|
69
|
+
}
|
|
70
|
+
});
|
|
71
|
+
}
|
|
72
|
+
if (!sectionTitle) {
|
|
73
|
+
assertUsage(
|
|
74
|
+
!doNotInferSectionTitle,
|
|
75
|
+
`Page section title not found for <Link href="\`${href}\`" doNotInferSectionTitle={true} />.`
|
|
76
|
+
);
|
|
77
|
+
sectionTitle = determineSectionTitle(href, pageContext.config.titleNormalCase);
|
|
78
|
+
}
|
|
79
|
+
breadcrumbs.push(sectionTitle);
|
|
80
|
+
}
|
|
81
|
+
{
|
|
82
|
+
const linkIsOnSamePage = heading.url === pageContext.urlPathname;
|
|
83
|
+
if (noBreadcrumb || linkIsOnSamePage) {
|
|
84
|
+
return breadcrumbs[breadcrumbs.length - 1];
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
return /* @__PURE__ */ React.createElement(React.Fragment, null, breadcrumbs.map((title, i) => {
|
|
88
|
+
const seperator = i === 0 ? /* @__PURE__ */ React.createElement(React.Fragment, null) : " > ";
|
|
89
|
+
return /* @__PURE__ */ React.createElement(React.Fragment, {
|
|
90
|
+
key: i
|
|
91
|
+
}, seperator, title);
|
|
92
|
+
}));
|
|
93
|
+
}
|
|
94
|
+
function findHeading(href, pageContext) {
|
|
95
|
+
assert(href.startsWith("/"), `\`href==='${href}'\` but should start with \`/\`.`);
|
|
96
|
+
const { headings, headingsWithoutLink } = getHeadings(pageContext.config);
|
|
97
|
+
{
|
|
98
|
+
const heading2 = headingsWithoutLink.find(({ url }) => href === url);
|
|
99
|
+
if (heading2) {
|
|
100
|
+
return heading2;
|
|
101
|
+
}
|
|
102
|
+
}
|
|
103
|
+
const heading = headings.find(({ url }) => href === url);
|
|
104
|
+
assert(heading, `Could not find page \`${href}\`. Does it exist?`);
|
|
105
|
+
return heading;
|
|
106
|
+
}
|
|
107
|
+
|
|
108
|
+
// src/components/Link.tsx
|
|
109
|
+
function Link(props) {
|
|
110
|
+
if (isRepoLink(props.href)) {
|
|
111
|
+
return /* @__PURE__ */ React2.createElement(RepoLink, {
|
|
112
|
+
path: props.href,
|
|
113
|
+
text: props.text
|
|
114
|
+
});
|
|
115
|
+
} else {
|
|
116
|
+
return /* @__PURE__ */ React2.createElement(DocLink, {
|
|
117
|
+
...props
|
|
118
|
+
});
|
|
119
|
+
}
|
|
120
|
+
}
|
|
121
|
+
|
|
122
|
+
// src/components/P.tsx
|
|
123
|
+
import React3 from "react";
|
|
124
|
+
function P(props) {
|
|
125
|
+
return /* @__PURE__ */ React3.createElement("div", {
|
|
126
|
+
...props,
|
|
127
|
+
className: "paragraph"
|
|
128
|
+
});
|
|
129
|
+
}
|
|
130
|
+
|
|
131
|
+
// src/components/Info.tsx
|
|
132
|
+
import React4 from "react";
|
|
133
|
+
function Info({ children }) {
|
|
134
|
+
return /* @__PURE__ */ React4.createElement("blockquote", null, /* @__PURE__ */ React4.createElement(P, null, children));
|
|
135
|
+
}
|
|
136
|
+
|
|
137
|
+
// src/components/ReadingRecommendation.tsx
|
|
138
|
+
import React5 from "react";
|
|
139
|
+
function ReadingRecommendation({ tour, links }) {
|
|
140
|
+
const multiple = links.length + (tour ? 1 : 0) > 1;
|
|
141
|
+
return /* @__PURE__ */ React5.createElement(Info, null, multiple ? " " : "", /* @__PURE__ */ React5.createElement("b", null, "Reading Recommendation", multiple ? "." : ": "), (() => {
|
|
142
|
+
if (!multiple) {
|
|
143
|
+
const link = tour ? /* @__PURE__ */ React5.createElement(TourLink, null) : /* @__PURE__ */ React5.createElement(Link, {
|
|
144
|
+
href: links[0]
|
|
145
|
+
});
|
|
146
|
+
return /* @__PURE__ */ React5.createElement(React5.Fragment, null, link, ".");
|
|
147
|
+
}
|
|
148
|
+
return /* @__PURE__ */ React5.createElement("ul", {
|
|
149
|
+
style: {
|
|
150
|
+
marginLeft: 18,
|
|
151
|
+
marginTop: 11
|
|
152
|
+
}
|
|
153
|
+
}, tour && /* @__PURE__ */ React5.createElement("li", null, /* @__PURE__ */ React5.createElement(TourLink, null)), links.map((link, i) => /* @__PURE__ */ React5.createElement("li", {
|
|
154
|
+
key: i
|
|
155
|
+
}, /* @__PURE__ */ React5.createElement(Link, {
|
|
156
|
+
href: link
|
|
157
|
+
}))));
|
|
158
|
+
})());
|
|
159
|
+
}
|
|
160
|
+
function TourLink() {
|
|
161
|
+
return /* @__PURE__ */ React5.createElement(React5.Fragment, null, /* @__PURE__ */ React5.createElement(Link, {
|
|
162
|
+
href: "/react-tour",
|
|
163
|
+
noBreadcrumb: true
|
|
164
|
+
}), " or ", /* @__PURE__ */ React5.createElement(Link, {
|
|
165
|
+
href: "/vue-tour",
|
|
166
|
+
noBreadcrumb: true
|
|
167
|
+
}));
|
|
168
|
+
}
|
|
169
|
+
|
|
170
|
+
// src/components/Note.tsx
|
|
171
|
+
import React6 from "react";
|
|
172
|
+
function Note({
|
|
173
|
+
type,
|
|
174
|
+
icon,
|
|
175
|
+
children
|
|
176
|
+
}) {
|
|
177
|
+
assert(type === void 0 || ["error", "warning"].includes(type));
|
|
178
|
+
if (!icon) {
|
|
179
|
+
if (type === "error") {
|
|
180
|
+
icon = ":no_entry:";
|
|
181
|
+
}
|
|
182
|
+
if (type === "warning") {
|
|
183
|
+
icon = ":warning:";
|
|
184
|
+
}
|
|
185
|
+
}
|
|
186
|
+
return /* @__PURE__ */ React6.createElement("blockquote", {
|
|
187
|
+
className: type
|
|
188
|
+
}, /* @__PURE__ */ React6.createElement("div", {
|
|
189
|
+
style: { marginBottom: 20 }
|
|
190
|
+
}), icon, " ", children, /* @__PURE__ */ React6.createElement("div", {
|
|
191
|
+
style: { marginTop: 20 }
|
|
192
|
+
}));
|
|
193
|
+
}
|
|
194
|
+
|
|
195
|
+
// src/components/ImportMeta.tsx
|
|
196
|
+
import React7 from "react";
|
|
197
|
+
function ImportMeta({ prop }) {
|
|
198
|
+
assert(!prop.startsWith("import"));
|
|
199
|
+
assert(!prop.startsWith("."));
|
|
200
|
+
const text = "import.meta." + prop;
|
|
201
|
+
return /* @__PURE__ */ React7.createElement("code", null, text);
|
|
202
|
+
}
|
|
203
|
+
|
|
204
|
+
// src/components/HorizontalLine.tsx
|
|
205
|
+
import React8 from "react";
|
|
206
|
+
function HorizontalLine({ primary }) {
|
|
207
|
+
return /* @__PURE__ */ React8.createElement("div", {
|
|
208
|
+
className: "header-separator-line " + (primary ? "primary" : ""),
|
|
209
|
+
style: { textAlign: "center" }
|
|
210
|
+
}, /* @__PURE__ */ React8.createElement("hr", {
|
|
211
|
+
style: {
|
|
212
|
+
display: "inline-block",
|
|
213
|
+
margin: 0,
|
|
214
|
+
border: 0,
|
|
215
|
+
borderTop: "1px solid #eee",
|
|
216
|
+
maxWidth: 500,
|
|
217
|
+
width: "80%"
|
|
218
|
+
}
|
|
219
|
+
}));
|
|
220
|
+
}
|
|
221
|
+
|
|
222
|
+
// src/components/Sponsors.tsx
|
|
223
|
+
import React9 from "react";
|
|
224
|
+
|
|
225
|
+
// src/icons/heart.svg
|
|
226
|
+
var heart_default = "/assets/heart-OINVKOXO.svg";
|
|
227
|
+
|
|
228
|
+
// src/components/Sponsors/companyLogos/ccoli.svg
|
|
229
|
+
var ccoli_default = "/assets/ccoli-CHW3TQKS.svg";
|
|
230
|
+
|
|
231
|
+
// src/components/Sponsors/companyLogos/contra.svg
|
|
232
|
+
var contra_default = "/assets/contra-WLZBOPBV.svg";
|
|
233
|
+
|
|
234
|
+
// src/components/Sponsors/companyLogos/mfqs.svg
|
|
235
|
+
var mfqs_default = "/assets/mfqs-2EAEE7N6.svg";
|
|
236
|
+
|
|
237
|
+
// src/components/Sponsors/medalGold.svg
|
|
238
|
+
var medalGold_default = "/assets/medalGold-UP6A73FL.svg";
|
|
239
|
+
|
|
240
|
+
// src/components/Sponsors/medalSilver.svg
|
|
241
|
+
var medalSilver_default = "/assets/medalSilver-FAPGGOBN.svg";
|
|
242
|
+
|
|
243
|
+
// src/components/Sponsors/medalBronze.svg
|
|
244
|
+
var medalBronze_default = "/assets/medalBronze-CO4CTUR4.svg";
|
|
245
|
+
|
|
246
|
+
// src/components/Sponsors/label.svg
|
|
247
|
+
var label_default = "/assets/label-MP75CTIA.svg";
|
|
248
|
+
|
|
249
|
+
// src/components/Sponsors.tsx
|
|
250
|
+
var sponsors = [
|
|
251
|
+
{
|
|
252
|
+
companyName: "Contra",
|
|
253
|
+
companyLogo: contra_default,
|
|
254
|
+
plan: "gold",
|
|
255
|
+
website: "https://contra.com"
|
|
256
|
+
},
|
|
257
|
+
{
|
|
258
|
+
companyName: "ccoli",
|
|
259
|
+
companyLogo: ccoli_default,
|
|
260
|
+
plan: "silver",
|
|
261
|
+
website: "https://ccoli.co"
|
|
262
|
+
},
|
|
263
|
+
{
|
|
264
|
+
companyName: "My Favorite Quilt Store",
|
|
265
|
+
companyLogo: mfqs_default,
|
|
266
|
+
plan: "bronze",
|
|
267
|
+
website: "https://myfavoritequiltstore.com"
|
|
268
|
+
},
|
|
269
|
+
{
|
|
270
|
+
username: "spacedawwwg"
|
|
271
|
+
},
|
|
272
|
+
{
|
|
273
|
+
username: "codthing"
|
|
274
|
+
},
|
|
275
|
+
{
|
|
276
|
+
username: "Junaidhkn"
|
|
277
|
+
},
|
|
278
|
+
{
|
|
279
|
+
username: "zgfdev"
|
|
280
|
+
}
|
|
281
|
+
];
|
|
282
|
+
function Sponsors() {
|
|
283
|
+
const pageContext = usePageContext();
|
|
284
|
+
const { projectInfo } = pageContext.config;
|
|
285
|
+
return /* @__PURE__ */ React9.createElement("div", {
|
|
286
|
+
style: { textAlign: "center", marginTop: 19 }
|
|
287
|
+
}, /* @__PURE__ */ React9.createElement("a", {
|
|
288
|
+
className: "button",
|
|
289
|
+
href: "https://github.com/sponsors/brillout",
|
|
290
|
+
style: {
|
|
291
|
+
color: "inherit",
|
|
292
|
+
display: "inline-flex",
|
|
293
|
+
alignItems: "center",
|
|
294
|
+
padding: "5px 10px",
|
|
295
|
+
marginBottom: 10
|
|
296
|
+
}
|
|
297
|
+
}, /* @__PURE__ */ React9.createElement("img", {
|
|
298
|
+
src: heart_default,
|
|
299
|
+
height: 22
|
|
300
|
+
}), " ", /* @__PURE__ */ React9.createElement("span", {
|
|
301
|
+
style: { marginLeft: 7, fontSize: "1.07em" }
|
|
302
|
+
}, "Sponsor")), /* @__PURE__ */ React9.createElement("div", null), /* @__PURE__ */ React9.createElement("div", {
|
|
303
|
+
style: { maxWidth: 400, display: "inline-block", marginTop: 12, marginBottom: 12 }
|
|
304
|
+
}, projectInfo.projectNameJsx || projectInfo.projectName, " is free and open source, made possible by wonderful sponsors."), /* @__PURE__ */ React9.createElement("div", {
|
|
305
|
+
style: { display: "flex", flexWrap: "wrap", justifyContent: "center", alignItems: "end" }
|
|
306
|
+
}, sponsors.map((sponsor, i) => /* @__PURE__ */ React9.createElement(SponsorDiv, {
|
|
307
|
+
sponsor,
|
|
308
|
+
key: i
|
|
309
|
+
}))));
|
|
310
|
+
}
|
|
311
|
+
function SponsorDiv({ sponsor }) {
|
|
312
|
+
let imgSrc;
|
|
313
|
+
let imgAlt;
|
|
314
|
+
let width;
|
|
315
|
+
let height;
|
|
316
|
+
let website;
|
|
317
|
+
let padding;
|
|
318
|
+
let backgroundColor = "#f0f0f0";
|
|
319
|
+
let label = null;
|
|
320
|
+
if ("username" in sponsor) {
|
|
321
|
+
website = `https://github.com/${sponsor.username}`;
|
|
322
|
+
imgSrc = `https://github.com/${sponsor.username}.png?size=30`;
|
|
323
|
+
width = 30;
|
|
324
|
+
height = 30;
|
|
325
|
+
padding = 0;
|
|
326
|
+
backgroundColor = "none";
|
|
327
|
+
} else {
|
|
328
|
+
imgSrc = sponsor.companyLogo;
|
|
329
|
+
website = sponsor.website;
|
|
330
|
+
const size = getSize(sponsor.plan);
|
|
331
|
+
width = size.width;
|
|
332
|
+
height = size.height;
|
|
333
|
+
padding = size.padding;
|
|
334
|
+
imgAlt = sponsor.companyName;
|
|
335
|
+
label = /* @__PURE__ */ React9.createElement(Label, {
|
|
336
|
+
sponsor
|
|
337
|
+
});
|
|
338
|
+
}
|
|
339
|
+
const marginWidth = 5;
|
|
340
|
+
return /* @__PURE__ */ React9.createElement("a", {
|
|
341
|
+
href: website,
|
|
342
|
+
style: {
|
|
343
|
+
margin: `10px ${marginWidth}px`
|
|
344
|
+
}
|
|
345
|
+
}, label, /* @__PURE__ */ React9.createElement("div", {
|
|
346
|
+
style: {
|
|
347
|
+
backgroundColor,
|
|
348
|
+
borderRadius: 7,
|
|
349
|
+
overflow: "hidden",
|
|
350
|
+
width,
|
|
351
|
+
maxWidth: `calc(100vw - 2 * var(--main-view-padding) - 2 * ${marginWidth}px)`,
|
|
352
|
+
height,
|
|
353
|
+
display: "flex",
|
|
354
|
+
alignItems: "center",
|
|
355
|
+
flexDirection: "column",
|
|
356
|
+
justifyContent: "center"
|
|
357
|
+
}
|
|
358
|
+
}, /* @__PURE__ */ React9.createElement("img", {
|
|
359
|
+
style: { width: `calc(100% - ${padding}px)`, height: height - padding, zIndex: 2 },
|
|
360
|
+
src: imgSrc,
|
|
361
|
+
alt: imgAlt
|
|
362
|
+
})));
|
|
363
|
+
}
|
|
364
|
+
function Label({ sponsor }) {
|
|
365
|
+
assert(!("username" in sponsor));
|
|
366
|
+
const labelBg = getLabelBg(sponsor);
|
|
367
|
+
const labelIcon = getLabelIcon(sponsor);
|
|
368
|
+
const labelText = getLabelText(sponsor);
|
|
369
|
+
return /* @__PURE__ */ React9.createElement("div", {
|
|
370
|
+
style: {
|
|
371
|
+
top: 0,
|
|
372
|
+
display: "flex",
|
|
373
|
+
justifyContent: "center",
|
|
374
|
+
alignItems: "center",
|
|
375
|
+
position: "relative",
|
|
376
|
+
paddingBottom: 1
|
|
377
|
+
}
|
|
378
|
+
}, labelBg, labelIcon, labelText);
|
|
379
|
+
}
|
|
380
|
+
function getLabelBg(sponsor) {
|
|
381
|
+
const height = sponsor.plan === "platinum" ? 32 : 24;
|
|
382
|
+
return /* @__PURE__ */ React9.createElement("img", {
|
|
383
|
+
src: label_default,
|
|
384
|
+
style: { height, position: "absolute", bottom: 0, zIndex: -1 }
|
|
385
|
+
});
|
|
386
|
+
}
|
|
387
|
+
function getLabelText(sponsor) {
|
|
388
|
+
if (sponsor.plan === "platinum") {
|
|
389
|
+
return /* @__PURE__ */ React9.createElement(React9.Fragment, null);
|
|
390
|
+
}
|
|
391
|
+
const letterSpacing = ["bronze", "silver", "gold"].includes(sponsor.plan) ? 1 : void 0;
|
|
392
|
+
return /* @__PURE__ */ React9.createElement(React9.Fragment, null, " ", /* @__PURE__ */ React9.createElement("span", {
|
|
393
|
+
style: {
|
|
394
|
+
zIndex: 1,
|
|
395
|
+
fontSize: "0.82em",
|
|
396
|
+
position: "relative",
|
|
397
|
+
top: 0,
|
|
398
|
+
fontWeight: 500,
|
|
399
|
+
color: "#666",
|
|
400
|
+
letterSpacing
|
|
401
|
+
}
|
|
402
|
+
}, capitalizeFirstLetter(sponsor.plan)));
|
|
403
|
+
}
|
|
404
|
+
function getLabelIcon(sponsor) {
|
|
405
|
+
let medalSrc;
|
|
406
|
+
if (sponsor.plan === "platinum") {
|
|
407
|
+
return /* @__PURE__ */ React9.createElement(Emoji, {
|
|
408
|
+
name: "trophy",
|
|
409
|
+
style: { fontSize: "1.3em" }
|
|
410
|
+
});
|
|
411
|
+
} else if (sponsor.plan === "gold") {
|
|
412
|
+
medalSrc = medalGold_default;
|
|
413
|
+
} else if (sponsor.plan === "silver") {
|
|
414
|
+
medalSrc = medalSilver_default;
|
|
415
|
+
} else if (sponsor.plan === "bronze") {
|
|
416
|
+
medalSrc = medalBronze_default;
|
|
417
|
+
} else {
|
|
418
|
+
assert(false);
|
|
419
|
+
}
|
|
420
|
+
return /* @__PURE__ */ React9.createElement("img", {
|
|
421
|
+
src: medalSrc,
|
|
422
|
+
style: { height: 15, zIndex: 1, marginRight: 5 }
|
|
423
|
+
});
|
|
424
|
+
}
|
|
425
|
+
function getSize(plan) {
|
|
426
|
+
if (plan === "platinum") {
|
|
427
|
+
assert(false);
|
|
428
|
+
}
|
|
429
|
+
if (plan === "gold") {
|
|
430
|
+
return { width: 400, height: 150, padding: 95 };
|
|
431
|
+
}
|
|
432
|
+
if (plan === "silver") {
|
|
433
|
+
return { width: 300, height: 100, padding: 45 };
|
|
434
|
+
}
|
|
435
|
+
if (plan === "bronze") {
|
|
436
|
+
return { width: 200, height: 70, padding: 30 };
|
|
437
|
+
}
|
|
438
|
+
if (plan === "FREE_SLOT") {
|
|
439
|
+
return { width: 150, height: 40, padding: 15 };
|
|
440
|
+
}
|
|
441
|
+
assert(false);
|
|
442
|
+
}
|
|
443
|
+
function capitalizeFirstLetter(word) {
|
|
444
|
+
return word[0].toUpperCase() + word.slice(1);
|
|
445
|
+
}
|
|
446
|
+
|
|
447
|
+
// src/components/CodeBlock.tsx
|
|
448
|
+
import React10 from "react";
|
|
449
|
+
function CodeBlock({ children, lineBreak }) {
|
|
450
|
+
assert(lineBreak, "`lineBreak: true` is currently the only use case for <CodeBlock>");
|
|
451
|
+
const style = {};
|
|
452
|
+
if (lineBreak) {
|
|
453
|
+
objectAssign(style, {
|
|
454
|
+
wordWrap: "break-word",
|
|
455
|
+
wordBreak: "break-all",
|
|
456
|
+
whiteSpace: "initial",
|
|
457
|
+
paddingRight: "16px !important"
|
|
458
|
+
});
|
|
459
|
+
}
|
|
460
|
+
return /* @__PURE__ */ React10.createElement("pre", null, /* @__PURE__ */ React10.createElement("code", {
|
|
461
|
+
style
|
|
462
|
+
}, children));
|
|
463
|
+
}
|
|
464
|
+
export {
|
|
465
|
+
CodeBlock,
|
|
466
|
+
DocLink,
|
|
467
|
+
Emoji,
|
|
468
|
+
FeatureList,
|
|
469
|
+
HorizontalLine,
|
|
470
|
+
ImportMeta,
|
|
471
|
+
Info,
|
|
472
|
+
Link,
|
|
473
|
+
Note,
|
|
474
|
+
P,
|
|
475
|
+
ReadingRecommendation,
|
|
476
|
+
RepoLink,
|
|
477
|
+
Sponsors,
|
|
478
|
+
assert,
|
|
479
|
+
assertUsage,
|
|
480
|
+
determineSectionTitle,
|
|
481
|
+
determineSectionUrlHash,
|
|
482
|
+
filter,
|
|
483
|
+
isBrowser,
|
|
484
|
+
isRepoLink,
|
|
485
|
+
jsxToTextContent,
|
|
486
|
+
objectAssign
|
|
487
|
+
};
|
|
488
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/components/Link.tsx","../src/components/DocLink.tsx","../src/components/P.tsx","../src/components/Info.tsx","../src/components/ReadingRecommendation.tsx","../src/components/Note.tsx","../src/components/ImportMeta.tsx","../src/components/HorizontalLine.tsx","../src/components/Sponsors.tsx","../src/components/CodeBlock.tsx"],"sourcesContent":["import React from 'react'\nimport { DocLink } from './DocLink'\nimport { isRepoLink, RepoLink } from './RepoLink'\n\nexport { Link }\n\nfunction Link(props: {\n href: string\n text?: string | JSX.Element\n noBreadcrumb?: true\n doNotInferSectionTitle?: true\n}) {\n if (isRepoLink(props.href)) {\n return <RepoLink path={props.href} text={props.text} />\n } else {\n return <DocLink {...props} />\n }\n}\n","import React from 'react'\nimport { getHeadings, parseTitle, Heading, HeadingWithoutLink } from '../headings'\nimport { PageContextResolved } from '../config/resolvePageContext'\nimport { usePageContext } from '../renderer/usePageContext'\nimport { assert, assertUsage, determineSectionTitle, determineSectionUrlHash } from '../utils'\n\nexport { DocLink }\n\nfunction DocLink({\n href,\n text,\n noBreadcrumb,\n doNotInferSectionTitle\n}: {\n href: string\n text?: string | JSX.Element\n noBreadcrumb?: true\n doNotInferSectionTitle?: true\n}) {\n const pageContext = usePageContext()\n return <a href={href}>{text || getTitle({ href, noBreadcrumb, pageContext, doNotInferSectionTitle })}</a>\n}\n\nfunction getTitle({\n href,\n noBreadcrumb,\n pageContext,\n doNotInferSectionTitle\n}: {\n href: string\n noBreadcrumb: true | undefined\n pageContext: PageContextResolved\n doNotInferSectionTitle: true | undefined\n}): string | JSX.Element {\n let urlHash: string | null = null\n let hrefWithoutHash: string = href\n if (href.includes('#')) {\n ;[hrefWithoutHash, urlHash] = href.split('#')\n }\n const heading = findHeading(hrefWithoutHash, pageContext)\n\n const breadcrumbs: (string | JSX.Element)[] = []\n\n if ('parentHeadings' in heading) {\n breadcrumbs.push(\n ...heading.parentHeadings\n .slice()\n .reverse()\n .map(({ title }) => title)\n )\n }\n\n breadcrumbs.push(heading.title)\n\n if (urlHash) {\n let sectionTitle: string | JSX.Element | undefined = undefined\n if ('sectionTitles' in heading && heading.sectionTitles) {\n heading.sectionTitles.forEach((title) => {\n if (determineSectionUrlHash(title) === urlHash) {\n sectionTitle = parseTitle(title)\n }\n })\n }\n if (!sectionTitle) {\n assertUsage(\n !doNotInferSectionTitle,\n `Page section title not found for <Link href=\"\\`${href}\\`\" doNotInferSectionTitle={true} />.`\n )\n sectionTitle = determineSectionTitle(href, pageContext.config.titleNormalCase)\n }\n breadcrumbs.push(sectionTitle)\n }\n\n {\n const linkIsOnSamePage = heading.url === pageContext.urlPathname\n if (noBreadcrumb || linkIsOnSamePage) {\n return breadcrumbs[breadcrumbs.length - 1]\n }\n }\n\n return (\n <>\n {breadcrumbs.map((title, i) => {\n const seperator = i === 0 ? <></> : ' > '\n return (\n <React.Fragment key={i}>\n {seperator}\n {title}\n </React.Fragment>\n )\n })}\n </>\n )\n}\n\nfunction findHeading(href: string, pageContext: PageContextResolved): Heading | HeadingWithoutLink {\n assert(href.startsWith('/'), `\\`href==='${href}'\\` but should start with \\`/\\`.`)\n const { headings, headingsWithoutLink } = getHeadings(pageContext.config)\n {\n const heading = headingsWithoutLink.find(({ url }) => href === url)\n if (heading) {\n return heading\n }\n }\n const heading = headings.find(({ url }) => href === url)\n assert(heading, `Could not find page \\`${href}\\`. Does it exist?`)\n return heading\n}\n","import React from 'react'\nimport './P.css'\n\nexport { P }\n\nfunction P(props: React.HTMLProps<HTMLDivElement>) {\n return <div {...props} className={'paragraph'} />\n}\n","import React from 'react'\nimport { P } from './P'\n\nexport { Info }\n\nfunction Info({ children }: { children: React.ReactNode }) {\n return (\n <blockquote>\n <P>{children}</P>\n </blockquote>\n )\n}\n","import React from 'react'\nimport { Info } from './Info'\nimport { Link } from './Link'\n\nexport { ReadingRecommendation }\n\nfunction ReadingRecommendation({ tour, links }: { tour?: true; links: string[] }) {\n const multiple = links.length + (tour ? 1 : 0) > 1\n return (\n <Info>\n {multiple ? ' ' : ''}\n <b>Reading Recommendation{multiple ? '.' : ': '}</b>\n {(() => {\n if (!multiple) {\n const link = tour ? <TourLink /> : <Link href={links[0]} />\n return (\n <>\n {link}\n {'.'}\n </>\n )\n }\n return (\n <ul\n style={{\n marginLeft: 18,\n marginTop: 11\n }}\n >\n {tour && (\n <li>\n <TourLink />\n </li>\n )}\n {links.map((link, i) => (\n <li key={i}>\n <Link href={link} />\n </li>\n ))}\n </ul>\n )\n })()}\n </Info>\n )\n}\n\nfunction TourLink() {\n return (\n <>\n <Link href={'/react-tour'} noBreadcrumb={true} /> or <Link href={'/vue-tour'} noBreadcrumb={true} />\n </>\n )\n}\n","export { Note }\n\nimport React from 'react'\nimport { assert } from '../utils'\n\nfunction Note({\n type,\n icon,\n children\n}: {\n icon: JSX.Element | string\n type?: 'error' | 'warning'\n children: JSX.Element\n}) {\n assert(type === undefined || ['error', 'warning'].includes(type))\n if (!icon) {\n if (type === 'error') {\n icon = ':no_entry:'\n }\n if (type === 'warning') {\n icon = ':warning:'\n }\n }\n return (\n <blockquote className={type}>\n <div style={{ marginBottom: 20 }} />\n {icon} {children}\n <div style={{ marginTop: 20 }} />\n </blockquote>\n )\n}\n","import React from 'react'\nimport { assert } from '../utils'\n\nexport { ImportMeta }\n\nfunction ImportMeta({ prop }: { prop: string }) {\n assert(!prop.startsWith('import'))\n assert(!prop.startsWith('.'))\n const text = 'imp' + 'ort.meta.' + prop\n return <code>{text}</code>\n}\n","import React from 'react'\n\nexport { HorizontalLine }\n\nfunction HorizontalLine({ primary }: { primary?: true }) {\n return (\n <div className={'header-separator-line ' + (primary ? 'primary' : '')} style={{ textAlign: 'center' }}>\n <hr\n style={{\n display: 'inline-block',\n margin: 0,\n border: 0,\n borderTop: '1px solid #eee',\n maxWidth: 500,\n width: '80%'\n }}\n />\n </div>\n )\n}\n","import React from 'react'\nimport iconHeart from '../icons/heart.svg'\nimport { usePageContext } from '../renderer/usePageContext'\nimport { assert } from '../utils'\nimport ccoliLogo from './Sponsors/companyLogos/ccoli.svg'\nimport contraLogo from './Sponsors/companyLogos/contra.svg'\nimport mfqsLogo from './Sponsors/companyLogos/mfqs.svg'\nimport medalGold from './Sponsors/medalGold.svg'\nimport medalSilver from './Sponsors/medalSilver.svg'\nimport medalBronze from './Sponsors/medalBronze.svg'\nimport labelBgImg from './Sponsors/label.svg'\nimport { Emoji } from '../utils/Emoji'\n\nexport { Sponsors }\n\ntype Plan = 'FREE_SLOT' | 'bronze' | 'silver' | 'gold' | 'platinum'\n\ntype SponsorCompany = {\n companyName: string\n companyLogo: string\n website: string\n plan: Plan\n}\ntype SponsorIndividual = {\n username: string\n}\ntype Sponsor = SponsorCompany | SponsorIndividual\n\nconst sponsors: Sponsor[] = [\n {\n companyName: 'Contra',\n companyLogo: contraLogo,\n plan: 'gold',\n website: 'https://contra.com'\n },\n {\n companyName: 'ccoli',\n companyLogo: ccoliLogo,\n plan: 'silver',\n website: 'https://ccoli.co'\n },\n {\n companyName: 'My Favorite Quilt Store',\n companyLogo: mfqsLogo,\n plan: 'bronze',\n website: 'https://myfavoritequiltstore.com'\n },\n {\n username: 'spacedawwwg'\n },\n {\n username: 'codthing'\n },\n {\n username: 'Junaidhkn'\n },\n {\n username: 'zgfdev'\n }\n]\n\nfunction Sponsors() {\n const pageContext = usePageContext()\n const { projectInfo } = pageContext.config\n return (\n <div style={{ textAlign: 'center', marginTop: 19 }}>\n <a\n className=\"button\"\n href=\"https://github.com/sponsors/brillout\"\n style={{\n color: 'inherit',\n display: 'inline-flex',\n alignItems: 'center',\n padding: '5px 10px',\n marginBottom: 10\n }}\n >\n <img src={iconHeart} height={22} /> <span style={{ marginLeft: 7, fontSize: '1.07em' }}>Sponsor</span>\n </a>\n <div></div>\n <div style={{ maxWidth: 400, display: 'inline-block', marginTop: 12, marginBottom: 12 }}>\n {projectInfo.projectNameJsx || projectInfo.projectName} is free and open source, made possible by wonderful\n sponsors.\n </div>\n <div style={{ display: 'flex', flexWrap: 'wrap', justifyContent: 'center', alignItems: 'end' }}>\n {sponsors.map((sponsor, i) => (\n <SponsorDiv sponsor={sponsor} key={i} />\n ))}\n </div>\n </div>\n )\n}\n\nfunction SponsorDiv({ sponsor }: { sponsor: Sponsor }) {\n let imgSrc: string\n let imgAlt: string | undefined\n let width: number\n let height: number\n let website: string\n let padding: number\n let backgroundColor = '#f0f0f0'\n let label: null | JSX.Element = null\n if ('username' in sponsor) {\n website = `https://github.com/${sponsor.username}`\n imgSrc = `https://github.com/${sponsor.username}.png?size=30`\n width = 30\n height = 30\n padding = 0\n backgroundColor = 'none'\n } else {\n imgSrc = sponsor.companyLogo\n website = sponsor.website\n const size = getSize(sponsor.plan)\n width = size.width\n height = size.height\n padding = size.padding\n imgAlt = sponsor.companyName\n label = <Label sponsor={sponsor} />\n }\n const marginWidth = 5\n return (\n <a\n href={website}\n style={{\n margin: `10px ${marginWidth}px`\n }}\n >\n {label}\n <div\n style={{\n backgroundColor,\n borderRadius: 7,\n overflow: 'hidden',\n width,\n maxWidth: `calc(100vw - 2 * var(--main-view-padding) - 2 * ${marginWidth}px)`,\n height,\n display: 'flex',\n alignItems: 'center',\n flexDirection: 'column',\n justifyContent: 'center'\n }}\n >\n <img\n style={{ width: `calc(100% - ${padding}px)`, height: height - padding, zIndex: 2 }}\n src={imgSrc}\n alt={imgAlt}\n />\n </div>\n </a>\n )\n}\n\nfunction Label({ sponsor }: { sponsor: Sponsor }) {\n assert(!('username' in sponsor))\n const labelBg = getLabelBg(sponsor)\n const labelIcon = getLabelIcon(sponsor)\n const labelText = getLabelText(sponsor)\n return (\n <div\n style={{\n top: 0,\n display: 'flex',\n justifyContent: 'center',\n alignItems: 'center',\n position: 'relative',\n paddingBottom: 1\n }}\n >\n {labelBg}\n {labelIcon}\n {labelText}\n </div>\n )\n}\n\nfunction getLabelBg(sponsor: SponsorCompany) {\n const height = sponsor.plan === 'platinum' ? 32 : 24\n return <img src={labelBgImg} style={{ height, position: 'absolute', bottom: 0, zIndex: -1 }} />\n}\n\nfunction getLabelText(sponsor: SponsorCompany) {\n if (sponsor.plan === 'platinum') {\n return <></>\n }\n const letterSpacing = ['bronze', 'silver', 'gold'].includes(sponsor.plan) ? 1 : undefined\n return (\n <>\n {' '}\n <span\n style={{\n zIndex: 1,\n fontSize: '0.82em',\n position: 'relative',\n top: 0,\n fontWeight: 500,\n color: '#666',\n letterSpacing\n }}\n >\n {capitalizeFirstLetter(sponsor.plan)}\n </span>\n </>\n )\n}\n\nfunction getLabelIcon(sponsor: SponsorCompany) {\n let medalSrc: string\n if (sponsor.plan === 'platinum') {\n return <Emoji name=\"trophy\" style={{ fontSize: '1.3em' }} />\n } else if (sponsor.plan === 'gold') {\n medalSrc = medalGold\n } else if (sponsor.plan === 'silver') {\n medalSrc = medalSilver\n } else if (sponsor.plan === 'bronze') {\n medalSrc = medalBronze\n } else {\n assert(false)\n }\n return <img src={medalSrc} style={{ height: 15, zIndex: 1, marginRight: 5 }} />\n}\n\nfunction getSize(plan: Plan) {\n if (plan === 'platinum') {\n assert(false)\n }\n if (plan === 'gold') {\n return { width: 400, height: 150, padding: 95 }\n }\n if (plan === 'silver') {\n return { width: 300, height: 100, padding: 45 }\n }\n if (plan === 'bronze') {\n return { width: 200, height: 70, padding: 30 }\n }\n if (plan === 'FREE_SLOT') {\n return { width: 150, height: 40, padding: 15 }\n }\n assert(false)\n}\n\nfunction capitalizeFirstLetter(word: string): string {\n return word[0].toUpperCase() + word.slice(1)\n}\n","export { CodeBlock }\n\nimport React from 'react'\nimport { assert, objectAssign } from '../utils'\n\nfunction CodeBlock({ children, lineBreak }: { children: any; lineBreak?: true }) {\n assert(lineBreak, '`lineBreak: true` is currently the only use case for <CodeBlock>')\n const style = {}\n if (lineBreak) {\n objectAssign(style, {\n wordWrap: 'break-word',\n wordBreak: 'break-all',\n whiteSpace: 'initial',\n paddingRight: '16px !important'\n })\n }\n return (\n <pre>\n <code style={style}>{children}</code>\n </pre>\n )\n}\n"],"mappings":"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","names":["React","heading","React","React","React","React","React","React","React","React","React","React","React","React","React","React","React","React","React"]}
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
/* src/components/features/FeatureList.css */
|
|
1
2
|
@media screen and (min-width: 840px) {
|
|
2
3
|
.features-row {
|
|
3
4
|
display: grid;
|
|
@@ -16,7 +17,6 @@
|
|
|
16
17
|
grid-column: 1 / 3;
|
|
17
18
|
}
|
|
18
19
|
}
|
|
19
|
-
|
|
20
20
|
@media screen and (min-width: 840px) {
|
|
21
21
|
.features-row.single-column .feature {
|
|
22
22
|
grid-column: 1 / span 2 !important;
|
|
@@ -25,13 +25,11 @@
|
|
|
25
25
|
margin: auto !important;
|
|
26
26
|
}
|
|
27
27
|
}
|
|
28
|
-
|
|
29
28
|
#features {
|
|
30
29
|
margin: auto;
|
|
31
30
|
margin-top: 0;
|
|
32
31
|
max-width: 1080px;
|
|
33
32
|
}
|
|
34
|
-
|
|
35
33
|
#features summary p {
|
|
36
34
|
margin: 10px 0;
|
|
37
35
|
}
|
|
@@ -46,7 +44,6 @@
|
|
|
46
44
|
.learn-more h3:first-of-type {
|
|
47
45
|
margin-top: 15px;
|
|
48
46
|
}
|
|
49
|
-
|
|
50
47
|
.learn-more {
|
|
51
48
|
border: var(--border-width) solid var(--border-color);
|
|
52
49
|
padding: 10px 8px;
|
|
@@ -98,8 +95,6 @@ aside.learn-more.right-side {
|
|
|
98
95
|
border-bottom: 0 !important;
|
|
99
96
|
z-index: 1;
|
|
100
97
|
}
|
|
101
|
-
|
|
102
|
-
/* Hide top border of .learn-more */
|
|
103
98
|
.learn-more {
|
|
104
99
|
position: relative;
|
|
105
100
|
top: calc(-1 * var(--border-width));
|
|
@@ -108,10 +103,10 @@ aside.learn-more.right-side {
|
|
|
108
103
|
position: relative;
|
|
109
104
|
z-index: 1;
|
|
110
105
|
}
|
|
111
|
-
|
|
112
106
|
.feature .chevron {
|
|
113
107
|
transition: filter 0.3s ease-in-out, transform 0.3s ease-in-out !important;
|
|
114
108
|
}
|
|
115
109
|
.feature.selected .chevron {
|
|
116
110
|
transform: rotate(180deg);
|
|
117
111
|
}
|
|
112
|
+
/*# sourceMappingURL=FeatureList.css.map */
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../src/components/features/FeatureList.css"],"sourcesContent":["@media screen and (min-width: 840px) {\n .features-row {\n display: grid;\n grid-template-columns: repeat(2, 1fr);\n }\n .features-row summary:nth-of-type(1) {\n grid-row: 1;\n grid-column: 1 / 2;\n }\n .features-row summary:nth-of-type(2) {\n grid-row: 1;\n grid-column: 2 / 3;\n }\n .features-row aside {\n grid-row: 2;\n grid-column: 1 / 3;\n }\n}\n\n@media screen and (min-width: 840px) {\n .features-row.single-column .feature {\n grid-column: 1 / span 2 !important;\n width: 100% !important;\n max-width: calc(1010px / 2) !important;\n margin: auto !important;\n }\n}\n\n#features {\n margin: auto;\n margin-top: 0;\n max-width: 1080px;\n}\n\n#features summary p {\n margin: 10px 0;\n}\n#features h2 {\n margin-bottom: 0.7em;\n margin-top: 0.5em;\n}\n#features .secondary-feature h2 {\n font-size: 1.1em;\n margin-bottom: 0.7em;\n}\n.learn-more h3:first-of-type {\n margin-top: 15px;\n}\n\n.learn-more {\n border: var(--border-width) solid var(--border-color);\n padding: 10px 8px;\n}\n@media screen and (min-width: 840px) {\n .learn-more {\n max-width: 886px;\n border-radius: var(--border-radius);\n }\n}\naside.learn-more:not(.right-side) {\n border-top-left-radius: 0;\n}\naside.learn-more.right-side {\n border-top-right-radius: 0;\n justify-self: end;\n width: 100%;\n}\n@media screen and (max-width: 340px) {\n .learn-more {\n padding-right: 5px;\n padding-left: 5px;\n }\n}\n.learn-more {\n display: none;\n}\n.learn-more.selected {\n display: block;\n}\n#features {\n --border-radius: 20px;\n --border-width: 10px;\n --border-color: #f6f6f6;\n}\n.feature {\n padding: 8px;\n border-width: var(--border-width);\n border-style: solid;\n border-color: transparent;\n border-top-left-radius: var(--border-radius);\n border-top-right-radius: var(--border-radius);\n}\n.selected {\n border-color: var(--border-color);\n background-color: #fcfcfc;\n}\n.feature.selected {\n border-bottom: 0 !important;\n z-index: 1;\n}\n\n/* Hide top border of .learn-more */\n.learn-more {\n position: relative;\n top: calc(-1 * var(--border-width));\n}\n.feature {\n position: relative;\n z-index: 1;\n}\n\n.feature .chevron {\n transition: filter 0.3s ease-in-out, transform 0.3s ease-in-out !important;\n}\n.feature.selected .chevron {\n transform: rotate(180deg);\n}\n"],"mappings":";AAAA;AACE;AACE;AACA;AAAA;AAEF;AACE;AACA;AAAA;AAEF;AACE;AACA;AAAA;AAEF;AACE;AACA;AAAA;AAAA;AAIJ;AACE;AACE;AACA;AACA;AACA;AAAA;AAAA;AAIJ;AACE;AACA;AACA;AAAA;AAGF;AACE;AAAA;AAEF;AACE;AACA;AAAA;AAEF;AACE;AACA;AAAA;AAEF;AACE;AAAA;AAGF;AACE;AACA;AAAA;AAEF;AACE;AACE;AACA;AAAA;AAAA;AAGJ;AACE;AAAA;AAEF;AACE;AACA;AACA;AAAA;AAEF;AACE;AACE;AACA;AAAA;AAAA;AAGJ;AACE;AAAA;AAEF;AACE;AAAA;AAEF;AACE;AACA;AACA;AAAA;AAEF;AACE;AACA;AACA;AACA;AACA;AACA;AAAA;AAEF;AACE;AACA;AAAA;AAEF;AACE;AACA;AAAA;AAIF;AACE;AACA;AAAA;AAEF;AACE;AACA;AAAA;AAGF;AACE;AAAA;AAEF;AACE;AAAA;","names":[]}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
|
|
3
|
+
declare type FeatureProps = {
|
|
4
|
+
title: React.ReactNode;
|
|
5
|
+
desc: React.ReactNode;
|
|
6
|
+
learnMore?: React.ReactNode;
|
|
7
|
+
isSecondaryFeature?: true;
|
|
8
|
+
};
|
|
9
|
+
declare function FeatureList({ features }: {
|
|
10
|
+
features: FeatureProps[];
|
|
11
|
+
}): JSX.Element;
|
|
12
|
+
|
|
13
|
+
export { FeatureList };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
|