@brillout/docpress 0.1.14 → 0.1.17

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 (143) hide show
  1. package/dist/{chunk-GBXQT242.js → chunk-ZYYJWJMY.js} +38 -13
  2. package/dist/chunk-ZYYJWJMY.js.map +1 -0
  3. package/dist/{devServer-CXZI7V2M.js → devServer-J2XJQJGT.js} +2 -5
  4. package/dist/{devServer-CXZI7V2M.js.map → devServer-J2XJQJGT.js.map} +1 -1
  5. package/dist/index.d.ts +0 -136
  6. package/dist/index.js +27 -484
  7. package/dist/index.js.map +1 -1
  8. package/package.json +10 -13
  9. package/src/MobileHeader.tsx +68 -0
  10. package/src/PageLayout.css +41 -0
  11. package/src/PageLayout.tsx +37 -0
  12. package/src/algolia/DocSearch.css +29 -0
  13. package/src/algolia/DocSearch.ts +37 -0
  14. package/src/autoScrollNav.ts +22 -0
  15. package/src/cli/devServer.ts +31 -0
  16. package/src/cli/index.ts +29 -0
  17. package/src/components/CodeBlock.tsx +22 -0
  18. package/src/components/DocLink.tsx +108 -0
  19. package/src/components/EditPageNote.tsx +18 -0
  20. package/src/components/HorizontalLine.tsx +20 -0
  21. package/src/components/ImportMeta.tsx +11 -0
  22. package/src/components/Info.tsx +12 -0
  23. package/src/components/Link.tsx +18 -0
  24. package/src/components/Note.tsx +31 -0
  25. package/src/components/P.css +8 -0
  26. package/src/components/P.tsx +8 -0
  27. package/src/components/ReadingRecommendation.tsx +53 -0
  28. package/src/components/RepoLink.tsx +24 -0
  29. package/src/components/Sponsors/companyLogos/ccoli-logo.svg +1 -0
  30. package/src/components/Sponsors/companyLogos/ccoli-text.svg +1 -0
  31. package/{dist/ccoli-CHW3TQKS.svg → src/components/Sponsors/companyLogos/ccoli.svg} +0 -0
  32. package/{dist/contra-WLZBOPBV.svg → src/components/Sponsors/companyLogos/contra.svg} +0 -0
  33. package/{dist/mfqs-2EAEE7N6.svg → src/components/Sponsors/companyLogos/mfqs.svg} +0 -0
  34. package/src/components/Sponsors/label.draft.svg +108 -0
  35. package/{dist/label-MP75CTIA.svg → src/components/Sponsors/label.svg} +0 -0
  36. package/{dist/medalBronze-CO4CTUR4.svg → src/components/Sponsors/medalBronze.svg} +0 -0
  37. package/{dist/medalGold-UP6A73FL.svg → src/components/Sponsors/medalGold.svg} +0 -0
  38. package/{dist/medalSilver-FAPGGOBN.svg → src/components/Sponsors/medalSilver.svg} +0 -0
  39. package/src/components/Sponsors.tsx +242 -0
  40. package/{dist → src}/components/features/FeatureList.css +7 -2
  41. package/src/components/features/FeatureList.tsx +114 -0
  42. package/{dist/chevron-R2IYJD62.svg → src/components/features/chevron.svg} +0 -0
  43. package/src/components/features/initFeatureList.ts +66 -0
  44. package/src/components/index.ts +13 -0
  45. package/src/config/Config.ts +30 -0
  46. package/src/config/getConfig.ts +18 -0
  47. package/src/config/resolveConfig/resolveHeading.ts +0 -0
  48. package/src/config/resolvePageContext.ts +157 -0
  49. package/{dist/Inter-Var-IOAEQULN.ttf → src/css/Inter-Var.ttf} +0 -0
  50. package/src/css/button.css +7 -0
  51. package/src/css/code/block.css +36 -0
  52. package/src/css/code/inline.css +27 -0
  53. package/src/css/code.css +20 -0
  54. package/src/css/colorize-on-hover.css +29 -0
  55. package/src/css/font.css +19 -0
  56. package/src/css/heading.css +25 -0
  57. package/src/css/index.css +11 -0
  58. package/src/css/link.css +17 -0
  59. package/src/css/note.css +26 -0
  60. package/src/css/reset.css +12 -0
  61. package/src/css/table.css +14 -0
  62. package/src/css/tooltip.css +11 -0
  63. package/src/headings.ts +200 -0
  64. package/{dist/changelog-IPI5F42D.svg → src/icons/changelog.svg} +0 -0
  65. package/{dist/discord-JD33TUSF.svg → src/icons/discord.svg} +0 -0
  66. package/{dist/github-P5ZSKN2N.svg → src/icons/github.svg} +0 -0
  67. package/{dist/heart-OINVKOXO.svg → src/icons/heart.svg} +0 -0
  68. package/{dist/twitter-I7DXDN3J.svg → src/icons/twitter.svg} +0 -0
  69. package/src/index.ts +3 -0
  70. package/src/installSectionUrlHashs.ts +50 -0
  71. package/src/markdownHeadingsVitePlugin.ts +128 -0
  72. package/src/navigation/Navigation-highlight.css +41 -0
  73. package/src/navigation/Navigation-items.css +122 -0
  74. package/src/navigation/Navigation-layout.css +118 -0
  75. package/src/navigation/Navigation.client.old.ts +303 -0
  76. package/src/navigation/Navigation.client.ts +19 -0
  77. package/src/navigation/Navigation.css +12 -0
  78. package/src/navigation/Navigation.tsx +228 -0
  79. package/src/navigation/NavigationHeader.tsx +97 -0
  80. package/src/navigation/navigation-fullscreen/NavigationFullscreenButton.css +32 -0
  81. package/src/navigation/navigation-fullscreen/NavigationFullscreenButton.tsx +44 -0
  82. package/{dist/chevron-K3WPYLOP.svg → src/navigation/navigation-fullscreen/chevron.svg} +0 -0
  83. package/{dist/close-IQXTDOHV.svg → src/navigation/navigation-fullscreen/close.svg} +0 -0
  84. package/src/navigation/navigation-fullscreen/initNavigationFullscreen.ts +115 -0
  85. package/src/parseEmojis.ts +33 -0
  86. package/src/renderer/_default.page.client.ts +4 -0
  87. package/src/renderer/_default.page.server.tsx +69 -0
  88. package/src/renderer/usePageContext.tsx +25 -0
  89. package/src/types.ts +2 -0
  90. package/src/utils/Emoji/Emoji.ts +216 -0
  91. package/src/utils/Emoji/assets.ts +9 -0
  92. package/{dist/compass-2RWQU3E4.svg → src/utils/Emoji/compass.svg} +0 -0
  93. package/{dist/engine-6Q6VSCVA.png → src/utils/Emoji/engine.png} +0 -0
  94. package/src/utils/Emoji/index.ts +1 -0
  95. package/{dist/mechanical-arm-TR7IQQMG.svg → src/utils/Emoji/mechanical-arm.svg} +0 -0
  96. package/src/utils/Emoji/mountain.svg +1 -0
  97. package/{dist/road-fork-3WZLW3HB.svg → src/utils/Emoji/road-fork.svg} +0 -0
  98. package/{dist/shield-CU45RG5C.svg → src/utils/Emoji/shield.svg} +0 -0
  99. package/{dist/typescript-ALIPKLRM.svg → src/utils/Emoji/typescript.svg} +0 -0
  100. package/src/utils/assert.ts +39 -0
  101. package/src/utils/client.ts +2 -0
  102. package/src/utils/crawlAllFiles.ts +17 -0
  103. package/src/utils/determineSectionUrlHash.ts +35 -0
  104. package/src/utils/filesystemPathHandling.ts +42 -0
  105. package/src/utils/filter.ts +12 -0
  106. package/src/utils/isBrowser.ts +5 -0
  107. package/src/utils/jsxToTextContent.ts +11 -0
  108. package/src/utils/objectAssign.ts +9 -0
  109. package/src/utils/server.ts +8 -0
  110. package/src/vite.config.ts +44 -0
  111. package/dist/chunk-7HKDCMSZ.js +0 -154
  112. package/dist/chunk-7HKDCMSZ.js.map +0 -1
  113. package/dist/chunk-G2A5MZJA.js +0 -48
  114. package/dist/chunk-G2A5MZJA.js.map +0 -1
  115. package/dist/chunk-GBXQT242.js.map +0 -1
  116. package/dist/chunk-JS5BGVDK.js +0 -178
  117. package/dist/chunk-JS5BGVDK.js.map +0 -1
  118. package/dist/chunk-OEVBWUR6.js +0 -92
  119. package/dist/chunk-OEVBWUR6.js.map +0 -1
  120. package/dist/chunk-TTLAZ2T2.js +0 -8
  121. package/dist/chunk-TTLAZ2T2.js.map +0 -1
  122. package/dist/cli/index.d.ts +0 -1
  123. package/dist/cli/index.js +0 -35
  124. package/dist/cli/index.js.map +0 -1
  125. package/dist/components/features/FeatureList.css.map +0 -1
  126. package/dist/components/features/FeatureList.d.ts +0 -13
  127. package/dist/components/features/FeatureList.js +0 -8
  128. package/dist/components/features/FeatureList.js.map +0 -1
  129. package/dist/components/features/initFeatureList.d.ts +0 -3
  130. package/dist/components/features/initFeatureList.js +0 -60
  131. package/dist/components/features/initFeatureList.js.map +0 -1
  132. package/dist/index.css +0 -121
  133. package/dist/index.css.map +0 -1
  134. package/dist/renderer/_default.page.client.css +0 -263
  135. package/dist/renderer/_default.page.client.css.map +0 -1
  136. package/dist/renderer/_default.page.client.d.ts +0 -1
  137. package/dist/renderer/_default.page.client.js +0 -180
  138. package/dist/renderer/_default.page.client.js.map +0 -1
  139. package/dist/renderer/_default.page.server.css +0 -312
  140. package/dist/renderer/_default.page.server.css.map +0 -1
  141. package/dist/renderer/_default.page.server.d.ts +0 -22
  142. package/dist/renderer/_default.page.server.js +0 -602
  143. package/dist/renderer/_default.page.server.js.map +0 -1
package/dist/index.js CHANGED
@@ -1,489 +1,32 @@
1
1
  import {
2
- RepoLink,
3
- getHeadings,
4
- isRepoLink,
5
- parseTitle,
6
- usePageContext
7
- } from "./chunk-JS5BGVDK.js";
8
- import {
9
- FeatureList
10
- } from "./chunk-OEVBWUR6.js";
11
- import {
12
- Emoji,
13
- crawlAllFiles,
14
- determineSectionTitle,
15
- determineSectionUrlHash,
16
- filter,
17
- jsxToTextContent,
18
- objectAssign
19
- } from "./chunk-7HKDCMSZ.js";
20
- import {
21
- assert,
22
- assertUsage,
23
- isBrowser
24
- } from "./chunk-G2A5MZJA.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";
2
+ vite_config_default
3
+ } from "./chunk-ZYYJWJMY.js";
4
+
5
+ // src/cli/index.ts
6
+ import { build, preview } from "vite";
7
+ import { prerender } from "vite-plugin-ssr/prerender";
8
+ var args = process.argv.filter(Boolean).slice(2);
9
+ var isDev = args.includes("dev");
10
+ var isPreview = args.includes("preview");
11
+ var isBuild = args.includes("build");
12
+ Error.stackTraceLimit = Infinity;
13
+ cli();
14
+ async function cli() {
15
+ if (isDev) {
16
+ await import("./devServer-J2XJQJGT.js");
17
+ } else if (isBuild) {
18
+ await build(vite_config_default);
19
+ await build({ ...vite_config_default, build: { ssr: true } });
20
+ await prerender({ viteConfig: vite_config_default });
21
+ } else if (isPreview) {
22
+ const server = await preview({ ...vite_config_default, preview: { host: true } });
23
+ server.printUrls();
327
24
  } 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
- });
25
+ throw new Error(
26
+ `DocPress: unknown command \`$ docpress ${args.join(
27
+ " "
28
+ )}\`. Known commands: \`$ docpress dev\` and \`$ docpress preview\`.`
29
+ );
459
30
  }
460
- return /* @__PURE__ */ React10.createElement("pre", null, /* @__PURE__ */ React10.createElement("code", {
461
- style
462
- }, children));
463
31
  }
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
- crawlAllFiles,
481
- determineSectionTitle,
482
- determineSectionUrlHash,
483
- filter,
484
- isBrowser,
485
- isRepoLink,
486
- jsxToTextContent,
487
- objectAssign
488
- };
489
32
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +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/server'\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/server'\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/server'\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, Emoji } from '../utils/server'\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'\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/server'\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"]}
1
+ {"version":3,"sources":["../src/cli/index.ts"],"sourcesContent":["import { build, preview } from 'vite'\nimport config from '../vite.config'\nimport { prerender } from 'vite-plugin-ssr/prerender'\nconst args = process.argv.filter(Boolean).slice(2)\nconst isDev = args.includes('dev')\nconst isPreview = args.includes('preview')\nconst isBuild = args.includes('build')\nError.stackTraceLimit = Infinity\n\ncli()\n\nasync function cli() {\n if (isDev) {\n await import('./devServer')\n } else if (isBuild) {\n await build(config)\n await build({ ...config, build: { ssr: true } })\n await prerender({ viteConfig: config })\n } else if (isPreview) {\n const server = await preview({ ...config, preview: { host: true } })\n server.printUrls()\n } else {\n throw new Error(\n `DocPress: unknown command \\`$ docpress ${args.join(\n ' '\n )}\\`. Known commands: \\`$ docpress dev\\` and \\`$ docpress preview\\`.`\n )\n }\n}\n"],"mappings":";;;;;AAAA,SAAS,OAAO,eAAe;AAE/B,SAAS,iBAAiB;AAC1B,IAAM,OAAO,QAAQ,KAAK,OAAO,OAAO,EAAE,MAAM,CAAC;AACjD,IAAM,QAAQ,KAAK,SAAS,KAAK;AACjC,IAAM,YAAY,KAAK,SAAS,SAAS;AACzC,IAAM,UAAU,KAAK,SAAS,OAAO;AACrC,MAAM,kBAAkB;AAExB,IAAI;AAEJ,eAAe,MAAM;AACnB,MAAI,OAAO;AACT,UAAM,OAAO;AAAA,EACf,WAAW,SAAS;AAClB,UAAM,MAAM,mBAAM;AAClB,UAAM,MAAM,EAAE,GAAG,qBAAQ,OAAO,EAAE,KAAK,KAAK,EAAE,CAAC;AAC/C,UAAM,UAAU,EAAE,YAAY,oBAAO,CAAC;AAAA,EACxC,WAAW,WAAW;AACpB,UAAM,SAAS,MAAM,QAAQ,EAAE,GAAG,qBAAQ,SAAS,EAAE,MAAM,KAAK,EAAE,CAAC;AACnE,WAAO,UAAU;AAAA,EACnB,OAAO;AACL,UAAM,IAAI;AAAA,MACR,0CAA0C,KAAK;AAAA,QAC7C;AAAA,MACF;AAAA,IACF;AAAA,EACF;AACF;","names":[]}
package/package.json CHANGED
@@ -1,36 +1,32 @@
1
1
  {
2
2
  "name": "@brillout/docpress",
3
- "version": "0.1.14",
3
+ "version": "0.1.17",
4
4
  "exports": {
5
- "./renderer/_default.page.server.js": "./dist/renderer/_default.page.server.js",
6
- "./renderer/_default.page.client.js": "./dist/renderer/_default.page.client.js",
7
- "./renderer/_default.page.server.css": "./dist/renderer/_default.page.server.css",
8
- "./renderer/_default.page.client.css": "./dist/renderer/_default.page.client.css",
9
- ".": "./dist/index.js",
10
- "./features/FeatureList": "./dist/components/features/FeatureList.js",
5
+ ".": "./src/index.ts",
6
+ "./features/FeatureList": "./src/components/features/FeatureList.tsx",
11
7
  "./features/FeatureList.css": {
12
- "browser": "./dist/components/features/FeatureList.css"
8
+ "browser": "./src/components/features/FeatureList.css"
13
9
  },
14
10
  "./features/initFeatureList": {
15
- "browser": "./dist/components/features/initFeatureList.js"
11
+ "browser": "./src/components/features/initFeatureList.ts"
16
12
  }
17
13
  },
18
14
  "typesVersions": {
19
15
  "*": {
20
16
  "*": [
21
- "dist/*"
17
+ "src/*"
22
18
  ],
23
19
  "mdx": [
24
20
  "mdx.d.ts"
25
21
  ],
26
22
  "features/*": [
27
- "dist/components/features/*"
23
+ "src/components/features/*"
28
24
  ]
29
25
  }
30
26
  },
31
27
  "scripts": {
32
28
  "dev": "tsc --watch",
33
- "build": "framework-builder",
29
+ "build": "rm -rf dist/ && framework-builder",
34
30
  "prepublishOnly": "pnpm run build",
35
31
  "release": "npm version patch && npm publish && git push && git push --tags"
36
32
  },
@@ -66,10 +62,11 @@
66
62
  "typescript": "^4.8.4"
67
63
  },
68
64
  "bin": {
69
- "docpress": "./dist/cli/index.js"
65
+ "docpress": "./dist/index.js"
70
66
  },
71
67
  "files": [
72
68
  "mdx.d.ts",
69
+ "src/",
73
70
  "dist/"
74
71
  ],
75
72
  "type": "module",