@moonwave99/goffre 0.1.1 → 0.1.3

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/index.d.ts CHANGED
@@ -1,5 +1,44 @@
1
1
  import { MarkedExtension, RendererObject } from 'marked';
2
+ import { HelperOptions } from 'handlebars';
2
3
 
4
+ type Context = {
5
+ data: {
6
+ root: {
7
+ options?: {
8
+ domain?: string;
9
+ env?: {
10
+ mode?: string;
11
+ };
12
+ };
13
+ };
14
+ };
15
+ };
16
+ type HelperContext = Context & Omit<HelperOptions, "fn" | "inverse">;
17
+ type BlockContext = Context & HelperOptions;
18
+ declare const markdown: (text: string) => string | Promise<string>;
19
+ declare const getParamLink: (url: string, options: HelperContext) => string;
20
+ declare const getAsset: (asset: string, context: Omit<HelperContext, "hash">) => string;
21
+ declare const getSitemapLink: (page: Page, context: HelperContext) => string;
22
+ declare const getLink: (page: Page, context: HelperContext) => string;
23
+ declare const getNavClass: ({ slug }: Page, currentPage: Page) => string;
24
+ declare const list: (context: Page[], options: BlockContext) => string;
25
+ declare const nextItem: (context: Page, options: Pick<BlockContext, "hash" | "fn">) => string | undefined;
26
+ declare const prevItem: (context: Page, options: Pick<BlockContext, "hash" | "fn">) => string | undefined;
27
+
28
+ declare const defaultHelpers_getAsset: typeof getAsset;
29
+ declare const defaultHelpers_getLink: typeof getLink;
30
+ declare const defaultHelpers_getNavClass: typeof getNavClass;
31
+ declare const defaultHelpers_getParamLink: typeof getParamLink;
32
+ declare const defaultHelpers_getSitemapLink: typeof getSitemapLink;
33
+ declare const defaultHelpers_list: typeof list;
34
+ declare const defaultHelpers_markdown: typeof markdown;
35
+ declare const defaultHelpers_nextItem: typeof nextItem;
36
+ declare const defaultHelpers_prevItem: typeof prevItem;
37
+ declare namespace defaultHelpers {
38
+ export { defaultHelpers_getAsset as getAsset, defaultHelpers_getLink as getLink, defaultHelpers_getNavClass as getNavClass, defaultHelpers_getParamLink as getParamLink, defaultHelpers_getSitemapLink as getSitemapLink, defaultHelpers_list as list, defaultHelpers_markdown as markdown, defaultHelpers_nextItem as nextItem, defaultHelpers_prevItem as prevItem };
39
+ }
40
+
41
+ declare const helpers: typeof defaultHelpers;
3
42
  type Page = {
4
43
  slug: string;
5
44
  link?: string;
@@ -80,4 +119,4 @@ type PaginatedResult<T extends Page> = {
80
119
  };
81
120
  declare function paginate<T extends Page>({ collection, size, sortBy, order, }: PaginateParams<T>): PaginatedResult<T>[];
82
121
 
83
- export { type Page, getSlug, getSorter, getTemplate, load, loadJSON, loadMarkdown, paginate, render };
122
+ export { type Page, getSlug, getSorter, getTemplate, helpers, load, loadJSON, loadMarkdown, paginate, render };
package/dist/index.js CHANGED
@@ -94,6 +94,7 @@ var prevItem = (context, options) => {
94
94
  };
95
95
 
96
96
  // lib/goffre.ts
97
+ var helpers = helpers_exports;
97
98
  var require2 = createRequire(import.meta.url);
98
99
  var { readFile, outputFile } = fs;
99
100
  var DEFAULT_DATA_PATH = path.join(process.cwd(), "data");
@@ -156,6 +157,7 @@ function renderPage({
156
157
  buildPath,
157
158
  maxSlugLogLength,
158
159
  blockSeparator,
160
+ sitemapLink,
159
161
  ...page
160
162
  }) {
161
163
  return new Promise((resolve, reject) => {
@@ -178,6 +180,7 @@ function renderPage({
178
180
  template,
179
181
  {
180
182
  ...page,
183
+ sitemapLink,
181
184
  layout: typeof page.layout === "undefined" ? "main" : page.layout,
182
185
  content: page.content ? marked2.parse(page.content) : null,
183
186
  blocks: getPageBlocks(
@@ -321,6 +324,7 @@ async function render({
321
324
  buildPath,
322
325
  app,
323
326
  templates,
327
+ sitemapLink: sitemap.generate ? `${domain}/sitemap.xml` : "",
324
328
  blockSeparator,
325
329
  maxSlugLogLength: Math.min(
326
330
  Math.max.call(null, ...pages.map((x2) => x2.slug.length)),
@@ -387,6 +391,7 @@ export {
387
391
  getSlug,
388
392
  getSorter,
389
393
  getTemplate,
394
+ helpers,
390
395
  load,
391
396
  loadJSON,
392
397
  loadMarkdown,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@moonwave99/goffre",
3
- "version": "0.1.1",
3
+ "version": "0.1.3",
4
4
  "description": "Mini static site generator",
5
5
  "author": {
6
6
  "name": "Diego Caponera",