@podlite/publisher 0.0.3 → 0.0.5

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 (43) hide show
  1. package/CHANGELOG.md +15 -0
  2. package/esm/breadcrumb-plugin.js +5 -3
  3. package/esm/breadcrumb-plugin.js.map +1 -1
  4. package/esm/docs-injector-plugin.d.ts +6 -0
  5. package/esm/docs-injector-plugin.js +11 -0
  6. package/esm/docs-injector-plugin.js.map +1 -0
  7. package/esm/dump-pages-plugin.d.ts +6 -0
  8. package/esm/dump-pages-plugin.js +21 -0
  9. package/esm/dump-pages-plugin.js.map +1 -0
  10. package/esm/include-resolve-plugin.d.ts +3 -0
  11. package/esm/include-resolve-plugin.js +41 -0
  12. package/esm/include-resolve-plugin.js.map +1 -0
  13. package/esm/node-utils.js +1 -1
  14. package/esm/node-utils.js.map +1 -1
  15. package/esm/plugins.d.ts +1 -1
  16. package/esm/prev-next-plugin.d.ts +3 -0
  17. package/esm/prev-next-plugin.js +30 -0
  18. package/esm/prev-next-plugin.js.map +1 -0
  19. package/esm/react-plugin.js +2 -2
  20. package/esm/react-plugin.js.map +1 -1
  21. package/esm/shared.d.ts +1 -0
  22. package/esm/shared.js +71 -1
  23. package/esm/shared.js.map +1 -1
  24. package/esm/site-data-plugin.d.ts +1 -0
  25. package/esm/site-data-plugin.js +16 -19
  26. package/esm/site-data-plugin.js.map +1 -1
  27. package/lib/breadcrumb-plugin.js +5 -3
  28. package/lib/docs-injector-plugin.d.ts +6 -0
  29. package/lib/docs-injector-plugin.js +13 -0
  30. package/lib/dump-pages-plugin.d.ts +6 -0
  31. package/lib/dump-pages-plugin.js +23 -0
  32. package/lib/include-resolve-plugin.d.ts +3 -0
  33. package/lib/include-resolve-plugin.js +43 -0
  34. package/lib/node-utils.js +1 -1
  35. package/lib/plugins.d.ts +1 -1
  36. package/lib/prev-next-plugin.d.ts +3 -0
  37. package/lib/prev-next-plugin.js +32 -0
  38. package/lib/react-plugin.js +2 -2
  39. package/lib/shared.d.ts +1 -0
  40. package/lib/shared.js +72 -1
  41. package/lib/site-data-plugin.d.ts +1 -0
  42. package/lib/site-data-plugin.js +15 -18
  43. package/package.json +2 -2
package/CHANGELOG.md CHANGED
@@ -2,6 +2,21 @@
2
2
 
3
3
  ## Upcoming
4
4
 
5
+ ## 0.0.5
6
+
7
+ - initial support for `=Include` blocks and Selectors (https://podlite.org/specification#Selectors)
8
+ - add support for embeded data using `=data` block
9
+ - refactor existed and added new plugins:
10
+ - docs-injector-plugin
11
+ - dump-pages-plugin
12
+ - include-resolve-plugin.spec
13
+ - prev-next-plugin
14
+
15
+ ## 0.0.4
16
+
17
+ - add template configuration attribute for site: `:templateFile<file path>`
18
+ - fix publishRecord
19
+
5
20
  ## 0.0.3
6
21
 
7
22
  - fix deps
@@ -22,9 +22,11 @@ const plugin = () => {
22
22
  };
23
23
  const onProcess = (recs) => {
24
24
  recs.forEach(item => {
25
- const breadcrumb = getBreadcrumb(item.publishUrl, recs);
26
- item.pluginsData = item.pluginsData || {};
27
- item.pluginsData.breadcrumb = breadcrumb;
25
+ if (item.publishUrl) {
26
+ const breadcrumb = getBreadcrumb(item.publishUrl, recs);
27
+ item.pluginsData = item.pluginsData || {};
28
+ item.pluginsData.breadcrumb = breadcrumb;
29
+ }
28
30
  });
29
31
  return recs;
30
32
  };
@@ -1 +1 @@
1
- {"version":3,"file":"breadcrumb-plugin.js","sourceRoot":"","sources":["../src/breadcrumb-plugin.ts"],"names":[],"mappings":"AAEA,MAAM,MAAM,GAAG,GAAqB,EAAE;IACpC,MAAM,MAAM,GAA4B,EAAE,CAAA;IAC1C,MAAM,eAAe,GAAsE,EAAE,CAAA;IAC7F,MAAM,MAAM,GAAG,GAAG,CAAC,EAAE,CAAC,CAAC,EAAE,GAAG,GAAG,EAAE,GAAG,MAAM,EAAE,CAAC,CAAA;IAC7C,MAAM,aAAa,GAAG,CAAC,GAAW,EAAE,IAAqB,EAAE,EAAE;QAC3D,IAAI,eAAe,CAAC,GAAG,CAAC,EAAE;YACxB,OAAO,eAAe,CAAC,GAAG,CAAC,CAAA;SAC5B;QACD,MAAM,YAAY,GAAmD,EAAE,CAAA;QAEvE,MAAM,WAAW,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;QAC3C,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE;YAC1B,MAAM,UAAU,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;YAC3C,MAAM,SAAS,GAAG,GAAG,GAAG,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;YAC5C,YAAY,CAAC,IAAI,CAAC,GAAG,aAAa,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC,CAAA;SACrD;QAED,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,UAAU,KAAK,GAAG,CAAC,CAAA;QAC/D,IAAI,YAAY,EAAE;YAChB,YAAY,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,YAAY,CAAC,KAAK,EAAE,UAAU,EAAE,YAAY,CAAC,UAAU,EAAE,CAAC,CAAA;SACtF;QACD,eAAe,CAAC,GAAG,CAAC,GAAG,YAAY,CAAA;QACnC,OAAO,YAAY,CAAA;IACrB,CAAC,CAAA;IAED,MAAM,SAAS,GAAG,CAAC,IAAqB,EAAE,EAAE;QAC1C,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;YAClB,MAAM,UAAU,GAAG,aAAa,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,CAAA;YACvD,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,IAAI,EAAE,CAAA;YACzC,IAAI,CAAC,WAAW,CAAC,UAAU,GAAG,UAAU,CAAA;QAC1C,CAAC,CAAC,CAAA;QAEF,OAAO,IAAI,CAAA;IACb,CAAC,CAAA;IAED,OAAO,CAAC,SAAS,EAAE,MAAM,CAAC,CAAA;AAC5B,CAAC,CAAA;AAED,eAAe,MAAM,CAAA"}
1
+ {"version":3,"file":"breadcrumb-plugin.js","sourceRoot":"","sources":["../src/breadcrumb-plugin.ts"],"names":[],"mappings":"AAEA,MAAM,MAAM,GAAG,GAAqB,EAAE;IACpC,MAAM,MAAM,GAA4B,EAAE,CAAA;IAC1C,MAAM,eAAe,GAAsE,EAAE,CAAA;IAC7F,MAAM,MAAM,GAAG,GAAG,CAAC,EAAE,CAAC,CAAC,EAAE,GAAG,GAAG,EAAE,GAAG,MAAM,EAAE,CAAC,CAAA;IAC7C,MAAM,aAAa,GAAG,CAAC,GAAW,EAAE,IAAqB,EAAE,EAAE;QAC3D,IAAI,eAAe,CAAC,GAAG,CAAC,EAAE;YACxB,OAAO,eAAe,CAAC,GAAG,CAAC,CAAA;SAC5B;QACD,MAAM,YAAY,GAAmD,EAAE,CAAA;QAEvE,MAAM,WAAW,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;QAC3C,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE;YAC1B,MAAM,UAAU,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;YAC3C,MAAM,SAAS,GAAG,GAAG,GAAG,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;YAC5C,YAAY,CAAC,IAAI,CAAC,GAAG,aAAa,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC,CAAA;SACrD;QAED,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,UAAU,KAAK,GAAG,CAAC,CAAA;QAC/D,IAAI,YAAY,EAAE;YAChB,YAAY,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,YAAY,CAAC,KAAK,EAAE,UAAU,EAAE,YAAY,CAAC,UAAU,EAAE,CAAC,CAAA;SACtF;QACD,eAAe,CAAC,GAAG,CAAC,GAAG,YAAY,CAAA;QACnC,OAAO,YAAY,CAAA;IACrB,CAAC,CAAA;IAED,MAAM,SAAS,GAAG,CAAC,IAAqB,EAAE,EAAE;QAC1C,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;YAClB,IAAI,IAAI,CAAC,UAAU,EAAE;gBACnB,MAAM,UAAU,GAAG,aAAa,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,CAAA;gBACvD,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,IAAI,EAAE,CAAA;gBACzC,IAAI,CAAC,WAAW,CAAC,UAAU,GAAG,UAAU,CAAA;aACzC;QACH,CAAC,CAAC,CAAA;QAEF,OAAO,IAAI,CAAA;IACb,CAAC,CAAA;IAED,OAAO,CAAC,SAAS,EAAE,MAAM,CAAC,CAAA;AAC5B,CAAC,CAAA;AAED,eAAe,MAAM,CAAA"}
@@ -0,0 +1,6 @@
1
+ import { PodliteWebPlugin, publishRecord } from '.';
2
+ interface docsInjectorPluginInitParams {
3
+ docs: publishRecord[];
4
+ }
5
+ declare const plugin: ({ docs }: docsInjectorPluginInitParams) => PodliteWebPlugin;
6
+ export default plugin;
@@ -0,0 +1,11 @@
1
+ const plugin = ({ docs = [] }) => {
2
+ const onExit = ctx => {
3
+ return { ...ctx };
4
+ };
5
+ const onProcess = (recs) => {
6
+ return [...recs, ...docs];
7
+ };
8
+ return [onProcess, onExit];
9
+ };
10
+ export default plugin;
11
+ //# sourceMappingURL=docs-injector-plugin.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"docs-injector-plugin.js","sourceRoot":"","sources":["../src/docs-injector-plugin.ts"],"names":[],"mappings":"AAKA,MAAM,MAAM,GAAG,CAAC,EAAE,IAAI,GAAG,EAAE,EAAgC,EAAoB,EAAE;IAC/E,MAAM,MAAM,GAAG,GAAG,CAAC,EAAE;QACnB,OAAO,EAAE,GAAG,GAAG,EAAE,CAAA;IACnB,CAAC,CAAA;IACD,MAAM,SAAS,GAAG,CAAC,IAAqB,EAAE,EAAE;QAC1C,OAAO,CAAC,GAAG,IAAI,EAAE,GAAG,IAAI,CAAC,CAAA;IAC3B,CAAC,CAAA;IAED,OAAO,CAAC,SAAS,EAAE,MAAM,CAAC,CAAA;AAC5B,CAAC,CAAA;AAED,eAAe,MAAM,CAAA"}
@@ -0,0 +1,6 @@
1
+ import { PodliteWebPlugin } from '.';
2
+ interface dumpPagesPluginInitParams {
3
+ built_path: string;
4
+ }
5
+ declare const plugin: ({ built_path }: dumpPagesPluginInitParams) => PodliteWebPlugin;
6
+ export default plugin;
@@ -0,0 +1,21 @@
1
+ import { BUILT_PATH } from './constants';
2
+ import { streamWriteArray } from '.';
3
+ const plugin = ({ built_path = BUILT_PATH }) => {
4
+ let allRecords = [];
5
+ const outCtx = {};
6
+ const onExit = ctx => {
7
+ if (!ctx.testing) {
8
+ streamWriteArray(allRecords, `${built_path}/pages.json`)
9
+ .then(() => console.log('All pages written successfully'))
10
+ .catch(err => console.error('Error writing file:', err));
11
+ }
12
+ return { ...ctx, ...outCtx };
13
+ };
14
+ const onProcess = (recs) => {
15
+ allRecords.push(...recs);
16
+ return [...recs];
17
+ };
18
+ return [onProcess, onExit];
19
+ };
20
+ export default plugin;
21
+ //# sourceMappingURL=dump-pages-plugin.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dump-pages-plugin.js","sourceRoot":"","sources":["../src/dump-pages-plugin.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AACxC,OAAO,EAA4D,gBAAgB,EAAE,MAAM,GAAG,CAAA;AAK9F,MAAM,MAAM,GAAG,CAAC,EAAE,UAAU,GAAG,UAAU,EAA6B,EAAoB,EAAE;IAC1F,IAAI,UAAU,GAAoB,EAAE,CAAA;IAEpC,MAAM,MAAM,GAA4B,EAAE,CAAA;IAC1C,MAAM,MAAM,GAAG,GAAG,CAAC,EAAE;QACnB,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE;YAChB,gBAAgB,CAAC,UAAU,EAAE,GAAG,UAAU,aAAa,CAAC;iBACrD,IAAI,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,gCAAgC,CAAC,CAAC;iBACzD,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,qBAAqB,EAAE,GAAG,CAAC,CAAC,CAAA;SAC3D;QACD,OAAO,EAAE,GAAG,GAAG,EAAE,GAAG,MAAM,EAAE,CAAA;IAC9B,CAAC,CAAA;IACD,MAAM,SAAS,GAAG,CAAC,IAAqB,EAAE,EAAE;QAC1C,UAAU,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,CAAA;QACxB,OAAO,CAAC,GAAG,IAAI,CAAC,CAAA;IAClB,CAAC,CAAA;IAED,OAAO,CAAC,SAAS,EAAE,MAAM,CAAC,CAAA;AAC5B,CAAC,CAAA;AAED,eAAe,MAAM,CAAA"}
@@ -0,0 +1,3 @@
1
+ import { PodliteWebPlugin } from '.';
2
+ declare const plugin: () => PodliteWebPlugin;
3
+ export default plugin;
@@ -0,0 +1,41 @@
1
+ import { getTextContentFromNode, makeInterator } from '@podlite/schema';
2
+ import { runSelector } from '.';
3
+ const plugin = () => {
4
+ const outCtx = {};
5
+ const docsMap = new Map();
6
+ const onExit = ctx => ({ ...ctx, ...outCtx });
7
+ const processNode = (node, recs) => {
8
+ const rules = {
9
+ Include: node => {
10
+ const { content } = node;
11
+ const selector = getTextContentFromNode(content).trim();
12
+ console.warn(`[include] start resolve selector: ${selector}`);
13
+ if (selector) {
14
+ // try to resolve selector
15
+ const [block] = runSelector(selector, recs);
16
+ if (typeof block === 'object' && !('file' in block)) {
17
+ const updated = { content: block };
18
+ return { ...node, ...updated };
19
+ }
20
+ if (!block) {
21
+ console.warn(`[plugin: resolve ] selector ${selector} not found`);
22
+ }
23
+ }
24
+ return node;
25
+ },
26
+ };
27
+ return makeInterator(rules)(node, {});
28
+ };
29
+ const onProcess = (recs) => {
30
+ // convert all doc: links to file:: links
31
+ const docsWithIncludesResolves = recs.map(item => {
32
+ const node = processNode(item.node, recs);
33
+ // const node = item.node
34
+ return { ...item, node };
35
+ });
36
+ return docsWithIncludesResolves;
37
+ };
38
+ return [onProcess, onExit];
39
+ };
40
+ export default plugin;
41
+ //# sourceMappingURL=include-resolve-plugin.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"include-resolve-plugin.js","sourceRoot":"","sources":["../src/include-resolve-plugin.ts"],"names":[],"mappings":"AAAA,OAAO,EAA0B,sBAAsB,EAAa,aAAa,EAAW,MAAM,iBAAiB,CAAA;AACnH,OAAO,EAA4D,WAAW,EAAE,MAAM,GAAG,CAAA;AAEzF,MAAM,MAAM,GAAG,GAAqB,EAAE;IACpC,MAAM,MAAM,GAA4B,EAAE,CAAA;IAC1C,MAAM,OAAO,GAAG,IAAI,GAAG,EAAE,CAAA;IACzB,MAAM,MAAM,GAAG,GAAG,CAAC,EAAE,CAAC,CAAC,EAAE,GAAG,GAAG,EAAE,GAAG,MAAM,EAAE,CAAC,CAAA;IAC7C,MAAM,WAAW,GAAG,CAAC,IAAa,EAAE,IAAqB,EAAE,EAAE;QAC3D,MAAM,KAAK,GAAG;YACZ,OAAO,EAAE,IAAI,CAAC,EAAE;gBACd,MAAM,EAAE,OAAO,EAAE,GAAG,IAAI,CAAA;gBACxB,MAAM,QAAQ,GAAG,sBAAsB,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,CAAA;gBACvD,OAAO,CAAC,IAAI,CAAC,qCAAqC,QAAQ,EAAE,CAAC,CAAA;gBAC7D,IAAI,QAAQ,EAAE;oBACZ,0BAA0B;oBAC1B,MAAM,CAAC,KAAK,CAAC,GAAG,WAAW,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAA;oBAC3C,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,CAAC,MAAM,IAAI,KAAK,CAAC,EAAE;wBACnD,MAAM,OAAO,GAAG,EAAE,OAAO,EAAE,KAAK,EAAE,CAAA;wBAClC,OAAO,EAAE,GAAG,IAAI,EAAE,GAAG,OAAO,EAAE,CAAA;qBAC/B;oBACD,IAAI,CAAC,KAAK,EAAE;wBACV,OAAO,CAAC,IAAI,CAAC,+BAA+B,QAAQ,YAAY,CAAC,CAAA;qBAClE;iBACF;gBACD,OAAO,IAAI,CAAA;YACb,CAAC;SACF,CAAA;QACD,OAAO,aAAa,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAA;IACvC,CAAC,CAAA;IACD,MAAM,SAAS,GAAG,CAAC,IAAqB,EAAE,EAAE;QAC1C,yCAAyC;QACzC,MAAM,wBAAwB,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE;YAC/C,MAAM,IAAI,GAAG,WAAW,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,CAAA;YACzC,2BAA2B;YAC3B,OAAO,EAAE,GAAG,IAAI,EAAE,IAAI,EAAE,CAAA;QAC1B,CAAC,CAAC,CAAA;QAEF,OAAO,wBAAwB,CAAA;IACjC,CAAC,CAAA;IAED,OAAO,CAAC,SAAS,EAAE,MAAM,CAAC,CAAA;AAC5B,CAAC,CAAA;AACD,eAAe,MAAM,CAAA"}
package/esm/node-utils.js CHANGED
@@ -329,7 +329,7 @@ export function processFile(f, content, mime) {
329
329
  author,
330
330
  ...(header && { header }),
331
331
  footer,
332
- publishUrl: puburl,
332
+ publishUrl: puburl || null,
333
333
  pubdate,
334
334
  file: f,
335
335
  sources: [],
@@ -1 +1 @@
1
- {"version":3,"file":"node-utils.js","sourceRoot":"","sources":["../src/node-utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"node-utils.js","sourceRoot":"","sources":["../src/node-utils.ts"],"names":[],"mappings":"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"}
package/esm/plugins.d.ts CHANGED
@@ -8,7 +8,7 @@ export declare type pubRecord = {
8
8
  };
9
9
  export declare type publishRecord = pubRecord & {
10
10
  title: string | null;
11
- publishUrl: string;
11
+ publishUrl?: string | null;
12
12
  sources: string[];
13
13
  node: PodliteDocument;
14
14
  pubdate: string | undefined;
@@ -0,0 +1,3 @@
1
+ import { PodliteWebPlugin } from '.';
2
+ declare const plugin: () => PodliteWebPlugin;
3
+ export default plugin;
@@ -0,0 +1,30 @@
1
+ const plugin = () => {
2
+ const outCtx = {};
3
+ const onExit = ctx => ({ ...ctx, ...outCtx });
4
+ const onProcess = (recs) => {
5
+ const notPages = recs.filter(({ type = '' }) => type !== 'page');
6
+ recs.forEach(item => {
7
+ if (item.publishUrl) {
8
+ const allData = (item.type !== 'page' ? notPages : recs).filter(({ publishUrl }) => Boolean(publishUrl));
9
+ const articleIndex = allData.findIndex(({ publishUrl }) => publishUrl === item.publishUrl);
10
+ const prepareReference = (item) => {
11
+ if (item) {
12
+ const { pluginsData, node, ...rest } = item;
13
+ return rest;
14
+ }
15
+ return false;
16
+ };
17
+ const prev = prepareReference(allData[articleIndex - 1]);
18
+ const next = prepareReference(allData[articleIndex + 1]);
19
+ //
20
+ const navigate = { prev, next };
21
+ item.pluginsData = item.pluginsData || {};
22
+ item.pluginsData.navigate = navigate;
23
+ }
24
+ });
25
+ return recs;
26
+ };
27
+ return [onProcess, onExit];
28
+ };
29
+ export default plugin;
30
+ //# sourceMappingURL=prev-next-plugin.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"prev-next-plugin.js","sourceRoot":"","sources":["../src/prev-next-plugin.ts"],"names":[],"mappings":"AAEA,MAAM,MAAM,GAAG,GAAqB,EAAE;IACpC,MAAM,MAAM,GAA4B,EAAE,CAAA;IAC1C,MAAM,MAAM,GAAG,GAAG,CAAC,EAAE,CAAC,CAAC,EAAE,GAAG,GAAG,EAAE,GAAG,MAAM,EAAE,CAAC,CAAA;IAC7C,MAAM,SAAS,GAAG,CAAC,IAAqB,EAAE,EAAE;QAC1C,MAAM,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,EAAE,IAAI,GAAG,EAAE,EAAO,EAAE,EAAE,CAAC,IAAI,KAAK,MAAM,CAAC,CAAA;QACrE,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;YAClB,IAAI,IAAI,CAAC,UAAU,EAAE;gBACnB,MAAM,OAAO,GAAG,CAAC,IAAI,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,UAAU,EAAE,EAAE,EAAE,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAA;gBACxG,MAAM,YAAY,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC,EAAE,UAAU,EAAE,EAAE,EAAE,CAAC,UAAU,KAAK,IAAI,CAAC,UAAU,CAAC,CAAA;gBAC1F,MAAM,gBAAgB,GAAG,CAAC,IAAmB,EAAiB,EAAE;oBAC9D,IAAI,IAAI,EAAE;wBACR,MAAM,EAAE,WAAW,EAAE,IAAI,EAAE,GAAG,IAAI,EAAE,GAAG,IAAI,CAAA;wBAC3C,OAAO,IAAI,CAAA;qBACZ;oBACD,OAAO,KAAK,CAAA;gBACd,CAAC,CAAA;gBACD,MAAM,IAAI,GAAG,gBAAgB,CAAC,OAAO,CAAC,YAAY,GAAG,CAAC,CAAC,CAAC,CAAA;gBACxD,MAAM,IAAI,GAAG,gBAAgB,CAAC,OAAO,CAAC,YAAY,GAAG,CAAC,CAAC,CAAC,CAAA;gBACxD,EAAE;gBAEF,MAAM,QAAQ,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,CAAA;gBAC/B,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,IAAI,EAAE,CAAA;gBACzC,IAAI,CAAC,WAAW,CAAC,QAAQ,GAAG,QAAQ,CAAA;aACrC;QACH,CAAC,CAAC,CAAA;QAEF,OAAO,IAAI,CAAA;IACb,CAAC,CAAA;IAED,OAAO,CAAC,SAAS,EAAE,MAAM,CAAC,CAAA;AAC5B,CAAC,CAAA;AAED,eAAe,MAAM,CAAA"}
@@ -69,7 +69,7 @@ export default {}
69
69
  return makeInterator(rules)(node, {});
70
70
  };
71
71
  const onProcess = (recs) => {
72
- console.log('react-plugin start');
72
+ // console.log('react-plugin start')
73
73
  const res = recs.map(item => {
74
74
  const node = processNode(item.node, item.file);
75
75
  // process images inside description
@@ -102,7 +102,7 @@ export default {}
102
102
  });
103
103
  return res;
104
104
  };
105
- console.log('react-plugin finished');
105
+ // console.log('react-plugin finished')
106
106
  return [onProcess, onExit];
107
107
  };
108
108
  export default plugin;
@@ -1 +1 @@
1
- {"version":3,"file":"react-plugin.js","sourceRoot":"","sources":["../src/react-plugin.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"react-plugin.js","sourceRoot":"","sources":["../src/react-plugin.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,aAAa,EAA4B,MAAM,iBAAiB,CAAA;AACjG,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAA;AAE5C,OAAO,KAAK,EAAE,MAAM,IAAI,CAAA;AACxB,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAA;AAE5C,OAAO,EAAE,cAAc,EAAE,MAAM,UAAU,CAAA;AAEzC,MAAM,MAAM,GAAG,GAAqB,EAAE;IACpC,MAAM,YAAY,GAAG,IAAI,GAAG,EAAE,CAAA;IAC9B,MAAM,cAAc,GAAG,IAAI,OAAO,EAAO,CAAA;IACzC,MAAM,MAAM,GAA4B,EAAE,CAAA;IAC1C,MAAM,MAAM,GAAG,GAAG,CAAC,EAAE;QACnB,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE;YAChB,qBAAqB;YACrB,IAAI,oBAAoB,GAAG,EAAE,CAAA;YAC7B,KAAK,MAAM,GAAG,IAAI,YAAY,CAAC,IAAI,EAAE,EAAE;gBACrC,MAAM,aAAa,GAAG,YAAY,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;gBAC3C,oBAAoB,IAAI,UACtB,KAAK,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,KAAK,aAAa,IAAI,CAAC,CAAC,CAAC,aAC1D,UAAU,GAAG;WACV,aAAa;SACf,CAAA;aACF;YACD,oBAAoB,IAAI;;CAE7B,CAAA;YAEK,EAAE,CAAC,aAAa,CAAC,cAAc,EAAE,oBAAoB,EAAE,MAAM,CAAC,CAAA;SAC/D;QACD,OAAO,EAAE,GAAG,GAAG,EAAE,GAAG,MAAM,EAAE,GAAG,EAAE,YAAY,EAAE,MAAM,CAAC,WAAW,CAAC,YAAY,CAAC,EAAE,EAAE,CAAA;IACrF,CAAC,CAAA;IACD,MAAM,WAAW,GAAG,CAAC,IAAa,EAAE,IAAY,EAAE,EAAE;QAClD,MAAM,KAAK,GAAG;YACZ,cAAc;YACd,QAAQ,EAAE,CAAC,IAAI,EAAE,GAAG,EAAE,SAAS,EAAE,EAAE;gBACjC,MAAM,IAAI,GAAG,sBAAsB,CAAC,IAAI,CAAC,CAAA;gBACzC,MAAM,iBAAiB,GAAG,IAAI,CAAC,KAAK,CAAC,uDAAuD,CAAC,CAAA;gBAC7F,IAAI,iBAAiB,EAAE;oBACrB,YAAY;oBACZ,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,GAAG,CAC5B,iBAAiB,IAAI;wBACnB,MAAM,EAAE,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE;qBACpD,CACF,CAAC,MAAM,CAAA;oBACR,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAA;oBACxF,kDAAkD;oBAClD,MAAM,gBAAgB,GAAG,SAAS,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAA;oBAClD,IAAI,gBAAgB,EAAE;wBACpB,MAAM,UAAU,GAAG,gBAAgB,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,CAAA;wBACvD,0BAA0B;wBAC1B,IAAI,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE;4BAC1B,MAAM,eAAe,GAAG,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;4BAC9C,MAAM,UAAU,GAAG,CAAC,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,KAAK,CAAA;4BACxE,MAAM,aAAa,GAAG,CAAC,GAAG,eAAe,EAAE,GAAG,UAAU,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,CAAA;4BAC5E,YAAY,CAAC,GAAG,CAAC,IAAI,EAAE,aAAa,CAAC,CAAA;yBACtC;6BAAM;4BACL,YAAY,CAAC,GAAG,CAAC,IAAI,EAAE,UAAU,CAAC,CAAA;yBACnC;qBACF;yBAAM;wBACL,YAAY,CAAC,GAAG,CAAC,IAAI,EAAE,SAAS,CAAC,CAAA;qBAClC;iBACF;qBAAM;oBACL,OAAO,CAAC,IAAI,CAAC,sFAAsF,IAAI,EAAE,CAAC,CAAA;iBAC3G;gBACD,OAAM;YACR,CAAC;YACD,KAAK,EAAE,CAAC,IAAI,EAAE,GAAG,EAAE,SAAS,EAAE,EAAE;gBAC9B,MAAM,IAAI,GAAG,sBAAsB,CAAC,IAAI,CAAC,CAAA;gBACzC,MAAM,GAAG,GAAoB,cAAc,CAAC,IAAI,CAAC,CAAA;gBACjD,OAAO,EAAE,GAAG,IAAI,EAAE,OAAO,EAAE,CAAC,SAAS,CAAC,GAAG,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,EAAE,CAAA;YAC5D,CAAC;SACF,CAAA;QACD,OAAO,aAAa,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAA;IACvC,CAAC,CAAA;IACD,MAAM,SAAS,GAAG,CAAC,IAAqB,EAAE,EAAE;QAC1C,qCAAqC;QACrC,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE;YAC1B,MAAM,IAAI,GAAG,WAAW,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,CAAA;YAC9C,oCAAoC;YACpC,IAAI,KAAK,GAAG,EAA6F,CAAA;YACzG,IAAI,IAAI,CAAC,WAAW,EAAE;gBACpB,KAAK,CAAC,WAAW,GAAG,WAAW,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,IAAI,CAAC,CAAA;aAC7D;YACD,IAAI,IAAI,CAAC,QAAQ,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE;gBACvD,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC,QAAQ,CAAA;gBACxC,MAAM,iBAAiB,GAAG,WAAW,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAA;gBAC7E,KAAK,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAA;gBAC9B,KAAK,CAAC,QAAQ,CAAC,IAAI,GAAG,iBAAiB,CAAA;gBACvC,IAAI,MAAM,EAAE;oBACV,KAAK,CAAC,QAAQ,CAAC,MAAM,GAAG,WAAW,CAAC,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAA;iBAChE;gBACD,IAAI,MAAM,EAAE;oBACV,KAAK,CAAC,QAAQ,CAAC,MAAM,GAAG,WAAW,CAAC,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAA;iBAChE;gBACD,cAAc,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;aAClC;YACD,iCAAiC;YACjC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,IAAI,CAAA;YAC/B,IAAI,MAAM,EAAE;gBACV,KAAK,CAAC,MAAM,GAAG,WAAW,CAAC,MAAM,EAAE,IAAI,CAAC,IAAI,CAAC,CAAA;aAC9C;YACD,IAAI,MAAM,EAAE;gBACV,KAAK,CAAC,MAAM,GAAG,WAAW,CAAC,MAAM,EAAE,IAAI,CAAC,IAAI,CAAC,CAAA;aAC9C;YAED,OAAO,EAAE,GAAG,IAAI,EAAE,IAAI,EAAE,GAAG,KAAK,EAAE,CAAA;QACpC,CAAC,CAAC,CAAA;QACF,OAAO,GAAG,CAAA;IACZ,CAAC,CAAA;IACD,0CAA0C;IAC1C,OAAO,CAAC,SAAS,EAAE,MAAM,CAAC,CAAA;AAC5B,CAAC,CAAA;AAED,eAAe,MAAM,CAAA"}
package/esm/shared.d.ts CHANGED
@@ -34,3 +34,4 @@ export declare const addUrl: (items: publishRecord[]) => {
34
34
  sequence?: number;
35
35
  slug?: string;
36
36
  }[];
37
+ export declare const runSelector: (selector: string, docs: publishRecord[]) => publishRecord[] | PodNode[];
package/esm/shared.js CHANGED
@@ -1,4 +1,4 @@
1
- import { getFromTree, makeAttrs, makeInterator } from '@podlite/schema';
1
+ import { getFromTree, getNodeId, getTextContentFromNode, makeAttrs, makeInterator, } from '@podlite/schema';
2
2
  import { podlite as podlite_core } from 'podlite';
3
3
  // now we add base60 letters
4
4
  import translit from 'iso_9';
@@ -154,4 +154,74 @@ export const addUrl = (items) => {
154
154
  return { ...item, shortUrl, publishUrl, sources };
155
155
  });
156
156
  };
157
+ const parseSelector = (selector) => {
158
+ // doc:File1#data1
159
+ const docWithAnchorPattern = /^([^:]+):([^#]+)#(.+)$/;
160
+ // Try doc:name#anchor pattern first
161
+ const anchorMatch = selector.match(docWithAnchorPattern);
162
+ if (anchorMatch) {
163
+ return {
164
+ scheme: anchorMatch[1],
165
+ document: anchorMatch[2],
166
+ anchor: anchorMatch[3],
167
+ };
168
+ }
169
+ };
170
+ const getDocIDs = (doc) => {
171
+ const ids = [];
172
+ // for (const item of [doc]) {
173
+ getFromTree(doc.node, 'NAME', 'TITLE').map(block => {
174
+ const conf = makeAttrs(block, {});
175
+ const title = getTextContentFromNode(block).trim();
176
+ if (conf.exists('id')) {
177
+ const id = conf.getFirstValue('id');
178
+ if (id) {
179
+ ids.push(id);
180
+ }
181
+ }
182
+ ids.push(title);
183
+ });
184
+ return ids;
185
+ };
186
+ function getMapIDsBlocks(srcNode) {
187
+ const ids = [];
188
+ const idsMap = new Map();
189
+ const t = getFromTree(srcNode, { type: 'block' }).map(i => {
190
+ const id = getNodeId(i, {});
191
+ if (id) {
192
+ idsMap.set(id, i);
193
+ }
194
+ });
195
+ return idsMap;
196
+ }
197
+ export const runSelector = (selector, docs) => {
198
+ const paresedSelector = parseSelector(selector);
199
+ if (paresedSelector) {
200
+ const { scheme, document, anchor } = paresedSelector;
201
+ const filters = [];
202
+ if (scheme === 'doc') {
203
+ filters.push((doc) => {
204
+ // console.log(`[incliude] `)
205
+ return getDocIDs(doc).includes(document);
206
+ });
207
+ }
208
+ // Return documents that successfully pass all the filters.
209
+ const subdocs = docs.filter(item => !filters.some(fn => !fn(item)));
210
+ console.warn(`[include] fouond ${subdocs.length} docs for ${document}`);
211
+ if (anchor) {
212
+ const collected_blocks = [];
213
+ for (const d of subdocs) {
214
+ const idsMap = getMapIDsBlocks(d.node);
215
+ const block = idsMap.get(anchor);
216
+ if (block) {
217
+ collected_blocks.push(block);
218
+ }
219
+ }
220
+ console.warn(`[include] found ${collected_blocks.length} blocks for anchor: ${anchor}`);
221
+ return collected_blocks;
222
+ }
223
+ }
224
+ console.log(`[include] no any blocks found for ${selector}`);
225
+ return [];
226
+ };
157
227
  //# sourceMappingURL=shared.js.map
package/esm/shared.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"shared.js","sourceRoot":"","sources":["../src/shared.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"shared.js","sourceRoot":"","sources":["../src/shared.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,WAAW,EACX,SAAS,EACT,sBAAsB,EACtB,SAAS,EACT,aAAa,GAGd,MAAM,iBAAiB,CAAA;AAExB,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,SAAS,CAAA;AACjD,4BAA4B;AAE5B,OAAO,QAAQ,MAAM,OAAO,CAAA;AAC5B,OAAO,MAAM,MAAM,WAAW,CAAA;AAE9B,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,QAAiB,EAAE,EAAE;IACvD,IAAI,CAAC,QAAQ;QAAE,OAAM;IACrB,MAAM,GAAG,GAAG,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAA;IACrC,OAAO,kBAAkB,CAAC,IAAI,GAAG,EAAE,CAAC,CAAA;AACtC,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,kBAAkB,GAAG;IAChC,UAAU,EAAE,MAAM;IAClB,KAAK,EAAE,MAAM;IACb,KAAK,EAAE,MAAM;IACb,UAAU,EAAE,MAAM;CACnB,CAAA;AAED,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,GAAW,EAAE,EAAE;IAC5C,IAAI,OAAO,GAAG,YAAY,CAAC,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;IAC3D,IAAI,IAAI,GAAG,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;IAC7B,MAAM,KAAK,GAAG,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,SAA4B,CAAA;IACpE,OAAO,KAAK,CAAA;AACd,CAAC,CAAA;AAED,MAAM,UAAU,iBAAiB,CAAC,IAAa;IAC7C,IAAI,iBAAiB,GAAG,KAAK,CAAA;IAC7B,MAAM,cAAc,GAAG,CAAC,IAAI,EAAE,GAAG,EAAE,SAAS,EAAE,EAAE;QAC9C,kBAAkB;QAClB,IAAI,IAAI,CAAC,IAAI,KAAK,OAAO,IAAI,IAAI,CAAC,IAAI,KAAK,MAAM,EAAE;YACjD,IAAI,IAAI,CAAC,OAAO,EAAE;gBAChB,OAAO,SAAS,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,CAAC,CAAA;aACpC;YACD,OAAM;SACP;QACD,iBAAiB,GAAG,IAAI,CAAA;IAC1B,CAAC,CAAA;IACD,MAAM,KAAK,GAAG;QACZ,OAAO,EAAE,cAAc;QACvB,QAAQ,EAAE,cAAc;KACzB,CAAA;IACD,aAAa,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAA;IAC9B,OAAO,iBAAiB,CAAA;AAC1B,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,IAAa;IAC3C,IAAI,mBAAmB,GAAG,KAAK,CAAA;IAC/B,MAAM,KAAK,GAAG;QACZ,QAAQ,EAAE,CAAC,IAAI,EAAE,GAAG,EAAE,SAAS,EAAE,EAAE;YACjC,MAAM,MAAM,GAAG,SAAS,CAAC,IAAI,EAAE,GAAG,CAAC,CAAA;YACnC,IAAI,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE;gBAC5B,mBAAmB,GAAG,IAAI,CAAA;gBAC1B,OAAM;aACP;YACD,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE;gBAC/B,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;aACxB;QACH,CAAC;KACF,CAAA;IACD,MAAM,WAAW,GAAG,aAAa,CAAC,KAAK,CAAC,CAAA;IACxC,MAAM,GAAG,GAAG,WAAW,CAAC,IAAI,EAAE,EAAE,CAAC,CAAA;IACjC,OAAO,mBAAmB,CAAA;AAC5B,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,KAAK;IAClC,IAAI,QAAQ,GAA8B,EAAE,CAAA;IAC5C,MAAM,WAAW,GAAG,KAAK,CAAC,EAAE;QAC1B,gBAAgB;QAChB,MAAM,OAAO,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,IAAI,OAAO,CAAC,CAAA;QACpD,8BAA8B;QAC9B,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,IAAI,KAAK,MAAM,CAAC,IAAI,EAAE,CAAA;QAC7E,MAAM,gBAAgB,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE;YAC5C,OAAO,SAAS,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,CAAA;QAC9C,CAAC,CAAC,CAAA;QACF,IAAI,gBAAgB,CAAC,MAAM,GAAG,CAAC,EAAE;YAC/B,MAAM,aAAa,GAAG,gBAAgB,CAAC,CAAC,CAAC,CAAA;YACzC,kCAAkC;YAClC,MAAM,UAAU,GAAG,MAAM;iBACtB,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,iCAAiC;iBAC1E,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,IAAI,aAAa,CAAC,KAAK,CAAC,CAAC,0CAA0C;iBAC5F,KAAK,EAAE,CAAA;YAEV,IAAI,sBAAsB,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,CAAA;YACnF,MAAM,cAAc,GAAG,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,aAAa,CAAC,GAAG,CAAC,EAAE,sBAAsB,CAAC,CAAA;YAC5F,IAAI,cAAc,CAAC,MAAM,EAAE;gBACzB,MAAM,WAAW,GAAG,WAAW,CAAC,cAAc,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAA;gBAC1D,MAAM,OAAO,GAAG,SAAS,CAAC,aAAa,EAAE,EAAE,CAAC,CAAC,aAAa,CAAC,SAAS,CAAC,CAAA;gBACrE,QAAQ,CAAC,IAAI,CAAC;oBACZ,OAAO;oBACP,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,cAAc;oBACpB,WAAW;iBACZ,CAAC,CAAA;aACH;SACF;QACD,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;YACnB,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE;gBAC/B,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;aAC1B;QACH,CAAC,CAAC,CAAA;IACJ,CAAC,CAAA;IACD,WAAW,CAAC,KAAK,CAAC,CAAA;IAClB,OAAO,QAAQ,CAAA;AACjB,CAAC;AACD,MAAM,CAAC,MAAM,MAAM,GAAG,CAAC,KAAsB,EAAE,EAAE;IAC/C,MAAM,OAAO,GAKN,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE;QACnB,MAAM,EAAE,IAAI,EAAE,CAAC,EAAE,GAAG,CAAC,CAAA;QACrB,MAAM,KAAK,GAAG,CAAC,CAAA;QACf,MAAM,OAAO,GAAG,IAAI,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,CAAA;QACnC,MAAM,GAAG,GAAG,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,CAAA;QACrC,MAAM,IAAI,GAAG,CAAC,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAA;QAC1C,6BAA6B;QAC7B,IAAI,KAAK,GAAa,CAAC,KAAK,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;QACrD,IAAI,GAAG,GAAG,EAAE,CAAA;QACZ,OAAO,CAAC,GAAG,GAAG,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,MAAM,GAAG,GAAG,EAAE;YAChD,YAAY;YACZ,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC,CAAA;SACxB;QACD,IAAI,UAAU,GAAG,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;QAC9B,yBAAyB;QACzB,MAAM,SAAS,GAAG,YAAY,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,UAAU,CAAA;QACtF,iBAAiB;QACjB,MAAM,IAAI,GAAG,CAAC,CAAC,SAAS,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,IAAI,EAAE,CAAC;aACzE,OAAO,CAAC,gBAAgB,EAAE,EAAE,CAAC;aAC7B,WAAW,EAAE,CAAA;QAEhB,OAAO,EAAE,GAAG,KAAK,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,EAAE,CAAA;IAC/C,CAAC,CAAC,CAAA;IAEF,+CAA+C;IAC/C,OAAO,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE;QAC3B,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,IAAI,CAAA;QAC1B,GAAG,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,CAAC,IAAI,EAAE,CAAA;QACzB,GAAG,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QACpC,GAAG,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,CAAA;QAChB,IAAI,CAAC,MAAM,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAA;QAC5B,OAAO,GAAG,CAAA;IACZ,CAAC,EAAE,EAAE,CAAC,CAAA;IACN,iDAAiD;IACjD,OAAO,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE;QAC3B,MAAM,EAAE,GAAG,EAAE,GAAG,IAAI,CAAA;QACpB,GAAG,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;QACxB,GAAG,CAAC,GAAG,CAAC,EAAE,CAAA;QACV,IAAI,CAAC,QAAQ,GAAG,GAAG,CAAC,GAAG,CAAC,CAAA;QACxB,OAAO,GAAG,CAAA;IACZ,CAAC,EAAE,EAAE,CAAC,CAAA;IAEN,OAAO,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE;QACxB,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,GAAG,IAAI,CAAA;QAC3D,MAAM,QAAQ,GAAG,IAAI,IAAI,GAAG,GAAG,GAAG,MAAM,EAAE,CAAA;QAC1C,6DAA6D;QAC7D,MAAM,IAAI,GAAG,IAAI,IAAI,CAAC,OAAO,CAAC,CAAA;QAC9B,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAA;QACjC,MAAM,IAAI,GAAG,IAAI,CAAC,WAAW,EAAE,CAAA;QAC/B,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,EAAE,CAAA;QAC1B,8BAA8B;QAC9B,MAAM,UAAU,GAAG,IAAI,IAAI,IAAI,KAAK,IAAI,GAAG,IAAI,QAAQ,IAAI,IAAI,EAAE,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAA;QACpF,MAAM,OAAO,GAAG;YACd,QAAQ;YACR,0CAA0C;SAC3C,CAAA;QACD,OAAO,EAAE,GAAG,IAAI,EAAE,QAAQ,EAAE,UAAU,EAAE,OAAO,EAAE,CAAA;IACnD,CAAC,CAAC,CAAA;AACJ,CAAC,CAAA;AAUD,MAAM,aAAa,GAAG,CAAC,QAAgB,EAAkB,EAAE;IACzD,kBAAkB;IAClB,MAAM,oBAAoB,GAAG,wBAAwB,CAAA;IACrD,oCAAoC;IACpC,MAAM,WAAW,GAAG,QAAQ,CAAC,KAAK,CAAC,oBAAoB,CAAC,CAAA;IACxD,IAAI,WAAW,EAAE;QACf,OAAO;YACL,MAAM,EAAE,WAAW,CAAC,CAAC,CAAC;YACtB,QAAQ,EAAE,WAAW,CAAC,CAAC,CAAC;YACxB,MAAM,EAAE,WAAW,CAAC,CAAC,CAAC;SACvB,CAAA;KACF;AACH,CAAC,CAAA;AACD,MAAM,SAAS,GAAG,CAAC,GAAkB,EAAY,EAAE;IACjD,MAAM,GAAG,GAAG,EAAE,CAAA;IACd,gCAAgC;IAChC,WAAW,CAAC,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE;QACjD,MAAM,IAAI,GAAG,SAAS,CAAC,KAAK,EAAE,EAAE,CAAC,CAAA;QACjC,MAAM,KAAK,GAAG,sBAAsB,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,CAAA;QAElD,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE;YACrB,MAAM,EAAE,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,CAAA;YACnC,IAAI,EAAE,EAAE;gBACN,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;aACb;SACF;QACD,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;IACjB,CAAC,CAAC,CAAA;IACF,OAAO,GAAG,CAAA;AACZ,CAAC,CAAA;AAED,SAAS,eAAe,CAAoB,OAAU;IACpD,MAAM,GAAG,GAAG,EAAE,CAAA;IACd,MAAM,MAAM,GAAG,IAAI,GAAG,EAAa,CAAA;IACnC,MAAM,CAAC,GAAG,WAAW,CAAC,OAAO,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE;QACxD,MAAM,EAAE,GAAG,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC,CAAA;QAC3B,IAAI,EAAE,EAAE;YACN,MAAM,CAAC,GAAG,CAAC,EAAE,EAAE,CAAM,CAAC,CAAA;SACvB;IACH,CAAC,CAAC,CAAA;IACF,OAAO,MAAM,CAAA;AACf,CAAC;AAED,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,QAAgB,EAAE,IAAqB,EAA+B,EAAE;IAClG,MAAM,eAAe,GAAG,aAAa,CAAC,QAAQ,CAAC,CAAA;IAC/C,IAAI,eAAe,EAAE;QACnB,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,eAAe,CAAA;QACpD,MAAM,OAAO,GAAG,EAAE,CAAA;QAClB,IAAI,MAAM,KAAK,KAAK,EAAE;YACpB,OAAO,CAAC,IAAI,CAAC,CAAC,GAAkB,EAAE,EAAE;gBAClC,6BAA6B;gBAC7B,OAAO,SAAS,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAA;YAC1C,CAAC,CAAC,CAAA;SACH;QACD,2DAA2D;QAC3D,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;QACnE,OAAO,CAAC,IAAI,CAAC,oBAAoB,OAAO,CAAC,MAAM,aAAa,QAAQ,EAAE,CAAC,CAAA;QACvE,IAAI,MAAM,EAAE;YACV,MAAM,gBAAgB,GAAG,EAAE,CAAA;YAC3B,KAAK,MAAM,CAAC,IAAI,OAAO,EAAE;gBACvB,MAAM,MAAM,GAAG,eAAe,CAAC,CAAC,CAAC,IAAI,CAAC,CAAA;gBACtC,MAAM,KAAK,GAAG,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;gBAChC,IAAI,KAAK,EAAE;oBACT,gBAAgB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;iBAC7B;aACF;YACD,OAAO,CAAC,IAAI,CAAC,mBAAmB,gBAAgB,CAAC,MAAM,uBAAuB,MAAM,EAAE,CAAC,CAAA;YACvF,OAAO,gBAAgB,CAAA;SACxB;KACF;IACD,OAAO,CAAC,GAAG,CAAC,qCAAqC,QAAQ,EAAE,CAAC,CAAA;IAC5D,OAAO,EAAE,CAAA;AACX,CAAC,CAAA"}
@@ -14,6 +14,7 @@ export interface SiteInfo {
14
14
  footer: string;
15
15
  gtmId: string;
16
16
  item: publishRecord;
17
+ templateFile?: string;
17
18
  }
18
19
  interface siteDataPluginInitParams {
19
20
  public_path: string;
@@ -1,7 +1,7 @@
1
1
  import { getFromTree, getTextContentFromNode, makeAttrs, makeInterator } from '@podlite/schema';
2
2
  import { BUILT_PATH, INDEX_PATH, POSTS_PATH, PUBLIC_PATH } from './constants';
3
3
  import * as fs from 'fs';
4
- import { streamWriteArray } from '.';
4
+ import { processFile } from '.';
5
5
  import pathFs from 'path';
6
6
  const plugin = ({ public_path = PUBLIC_PATH, indexFilePath = `${POSTS_PATH}/${INDEX_PATH}`, built_path = BUILT_PATH, site_url, }) => {
7
7
  let indexPage;
@@ -17,7 +17,7 @@ const plugin = ({ public_path = PUBLIC_PATH, indexFilePath = `${POSTS_PATH}/${IN
17
17
  const [pod] = getFromTree(indexPage.node, 'pod');
18
18
  const attr = makeAttrs(pod, {});
19
19
  const pageAttr = Object.fromEntries(Object.keys(attr.asHash()).map(k => [k, attr.getFirstValue(k)]));
20
- const { postsPerPage, favicon, puburl, url, globalStyles, gtmId } = pageAttr;
20
+ const { postsPerPage, favicon, puburl, url, globalStyles, gtmId, templateFile } = pageAttr;
21
21
  // process favicon file
22
22
  const faviconPath = favicon ? pathFs.join(pathFs.dirname(indexFilePath), favicon) : 'src/favicon.png';
23
23
  const { base, ext } = pathFs.parse(faviconPath);
@@ -51,6 +51,7 @@ const plugin = ({ public_path = PUBLIC_PATH, indexFilePath = `${POSTS_PATH}/${IN
51
51
  redirects,
52
52
  footer,
53
53
  gtmId,
54
+ ...(templateFile && { templateFile }),
54
55
  item: { ...indexPage, node: pageNode },
55
56
  };
56
57
  // !!! now get previsuly prepared data from context and prepare control.json
@@ -70,25 +71,10 @@ const plugin = ({ public_path = PUBLIC_PATH, indexFilePath = `${POSTS_PATH}/${IN
70
71
  siteInfo: siteData,
71
72
  };
72
73
  if (!ctx.testing) {
73
- streamWriteArray(allRecords, `${built_path}/pages.json`)
74
- .then(() => console.log('All pages written successfully'))
75
- .catch(err => console.error('Error writing file:', err));
76
74
  fs.writeFileSync(`${built_path}/data.json`, JSON.stringify(dataJson));
77
75
  fs.writeFileSync(`${built_path}/siteInfo.json`, JSON.stringify(siteData, null, 2));
78
76
  fs.writeFileSync(`${built_path}/imagesMap.json`, JSON.stringify(imagesMap, null, 2));
79
77
  }
80
- // prepare data for LastArticles component
81
- if (!ctx.testing) {
82
- const source = () => allRecords.filter(i => i.publishUrl).filter(({ type = '' }) => type !== 'page');
83
- const articles = source().reverse().slice(0, 10);
84
- // if (!articles[articles.length - 1]) {
85
- // throw new Error('No articles found' + JSON.stringify({'articles.length - 1':articles.length - 1, articles, 'allRecords':allRecords.length}, null, 2))
86
- // }
87
- // const lastArticleUrl = articles[articles.length - 1].publishUrl
88
- // const articleIndex = source().findIndex(({ publishUrl }) => publishUrl === lastArticleUrl)
89
- // const prev = source()[articleIndex - 1]
90
- fs.writeFileSync(`${built_path}/lastArticles.json`, JSON.stringify({ articles, prev: {} }, null, 2));
91
- }
92
78
  // process GlobalStyles
93
79
  let stylesContent = '';
94
80
  if (siteData.globalStyles) {
@@ -126,8 +112,19 @@ const plugin = ({ public_path = PUBLIC_PATH, indexFilePath = `${POSTS_PATH}/${IN
126
112
  throw new Error('Index page not found. Used path: ' + indexFilePath);
127
113
  }
128
114
  indexPage.publishUrl = '/';
129
- allRecords.push(...recs);
130
- return recs;
115
+ const articlesJSON = JSON.stringify(recs.filter(i => i.publishUrl).filter(({ type = '' }) => type !== 'page'));
116
+ const storeFile = `
117
+ =begin pod
118
+ =for NAME :id<PLUGIN_DATA>
119
+ SITE DATA
120
+ =begin data :id<articles>
121
+ ${articlesJSON}
122
+ =end data
123
+ =end pod
124
+ `;
125
+ const storeDoc = processFile('virtual/site-data-plugin.podlite', storeFile);
126
+ allRecords.push(...recs, storeDoc);
127
+ return [...recs, storeDoc];
131
128
  };
132
129
  return [onProcess, onExit];
133
130
  };
@@ -1 +1 @@
1
- {"version":3,"file":"site-data-plugin.js","sourceRoot":"","sources":["../src/site-data-plugin.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"site-data-plugin.js","sourceRoot":"","sources":["../src/site-data-plugin.ts"],"names":[],"mappings":"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"}
@@ -24,9 +24,11 @@ const plugin = () => {
24
24
  };
25
25
  const onProcess = (recs) => {
26
26
  recs.forEach(item => {
27
- const breadcrumb = getBreadcrumb(item.publishUrl, recs);
28
- item.pluginsData = item.pluginsData || {};
29
- item.pluginsData.breadcrumb = breadcrumb;
27
+ if (item.publishUrl) {
28
+ const breadcrumb = getBreadcrumb(item.publishUrl, recs);
29
+ item.pluginsData = item.pluginsData || {};
30
+ item.pluginsData.breadcrumb = breadcrumb;
31
+ }
30
32
  });
31
33
  return recs;
32
34
  };
@@ -0,0 +1,6 @@
1
+ import { PodliteWebPlugin, publishRecord } from '.';
2
+ interface docsInjectorPluginInitParams {
3
+ docs: publishRecord[];
4
+ }
5
+ declare const plugin: ({ docs }: docsInjectorPluginInitParams) => PodliteWebPlugin;
6
+ export default plugin;
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const plugin = ({ docs = [] }) => {
4
+ const onExit = ctx => {
5
+ return { ...ctx };
6
+ };
7
+ const onProcess = (recs) => {
8
+ return [...recs, ...docs];
9
+ };
10
+ return [onProcess, onExit];
11
+ };
12
+ exports.default = plugin;
13
+ //# sourceMappingURL=docs-injector-plugin.js.map
@@ -0,0 +1,6 @@
1
+ import { PodliteWebPlugin } from '.';
2
+ interface dumpPagesPluginInitParams {
3
+ built_path: string;
4
+ }
5
+ declare const plugin: ({ built_path }: dumpPagesPluginInitParams) => PodliteWebPlugin;
6
+ export default plugin;
@@ -0,0 +1,23 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const constants_1 = require("./constants");
4
+ const _1 = require(".");
5
+ const plugin = ({ built_path = constants_1.BUILT_PATH }) => {
6
+ let allRecords = [];
7
+ const outCtx = {};
8
+ const onExit = ctx => {
9
+ if (!ctx.testing) {
10
+ (0, _1.streamWriteArray)(allRecords, `${built_path}/pages.json`)
11
+ .then(() => console.log('All pages written successfully'))
12
+ .catch(err => console.error('Error writing file:', err));
13
+ }
14
+ return { ...ctx, ...outCtx };
15
+ };
16
+ const onProcess = (recs) => {
17
+ allRecords.push(...recs);
18
+ return [...recs];
19
+ };
20
+ return [onProcess, onExit];
21
+ };
22
+ exports.default = plugin;
23
+ //# sourceMappingURL=dump-pages-plugin.js.map
@@ -0,0 +1,3 @@
1
+ import { PodliteWebPlugin } from '.';
2
+ declare const plugin: () => PodliteWebPlugin;
3
+ export default plugin;
@@ -0,0 +1,43 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const schema_1 = require("@podlite/schema");
4
+ const _1 = require(".");
5
+ const plugin = () => {
6
+ const outCtx = {};
7
+ const docsMap = new Map();
8
+ const onExit = ctx => ({ ...ctx, ...outCtx });
9
+ const processNode = (node, recs) => {
10
+ const rules = {
11
+ Include: node => {
12
+ const { content } = node;
13
+ const selector = (0, schema_1.getTextContentFromNode)(content).trim();
14
+ console.warn(`[include] start resolve selector: ${selector}`);
15
+ if (selector) {
16
+ // try to resolve selector
17
+ const [block] = (0, _1.runSelector)(selector, recs);
18
+ if (typeof block === 'object' && !('file' in block)) {
19
+ const updated = { content: block };
20
+ return { ...node, ...updated };
21
+ }
22
+ if (!block) {
23
+ console.warn(`[plugin: resolve ] selector ${selector} not found`);
24
+ }
25
+ }
26
+ return node;
27
+ },
28
+ };
29
+ return (0, schema_1.makeInterator)(rules)(node, {});
30
+ };
31
+ const onProcess = (recs) => {
32
+ // convert all doc: links to file:: links
33
+ const docsWithIncludesResolves = recs.map(item => {
34
+ const node = processNode(item.node, recs);
35
+ // const node = item.node
36
+ return { ...item, node };
37
+ });
38
+ return docsWithIncludesResolves;
39
+ };
40
+ return [onProcess, onExit];
41
+ };
42
+ exports.default = plugin;
43
+ //# sourceMappingURL=include-resolve-plugin.js.map
package/lib/node-utils.js CHANGED
@@ -362,7 +362,7 @@ function processFile(f, content, mime) {
362
362
  author,
363
363
  ...(header && { header }),
364
364
  footer,
365
- publishUrl: puburl,
365
+ publishUrl: puburl || null,
366
366
  pubdate,
367
367
  file: f,
368
368
  sources: [],
package/lib/plugins.d.ts CHANGED
@@ -8,7 +8,7 @@ export declare type pubRecord = {
8
8
  };
9
9
  export declare type publishRecord = pubRecord & {
10
10
  title: string | null;
11
- publishUrl: string;
11
+ publishUrl?: string | null;
12
12
  sources: string[];
13
13
  node: PodliteDocument;
14
14
  pubdate: string | undefined;
@@ -0,0 +1,3 @@
1
+ import { PodliteWebPlugin } from '.';
2
+ declare const plugin: () => PodliteWebPlugin;
3
+ export default plugin;
@@ -0,0 +1,32 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const plugin = () => {
4
+ const outCtx = {};
5
+ const onExit = ctx => ({ ...ctx, ...outCtx });
6
+ const onProcess = (recs) => {
7
+ const notPages = recs.filter(({ type = '' }) => type !== 'page');
8
+ recs.forEach(item => {
9
+ if (item.publishUrl) {
10
+ const allData = (item.type !== 'page' ? notPages : recs).filter(({ publishUrl }) => Boolean(publishUrl));
11
+ const articleIndex = allData.findIndex(({ publishUrl }) => publishUrl === item.publishUrl);
12
+ const prepareReference = (item) => {
13
+ if (item) {
14
+ const { pluginsData, node, ...rest } = item;
15
+ return rest;
16
+ }
17
+ return false;
18
+ };
19
+ const prev = prepareReference(allData[articleIndex - 1]);
20
+ const next = prepareReference(allData[articleIndex + 1]);
21
+ //
22
+ const navigate = { prev, next };
23
+ item.pluginsData = item.pluginsData || {};
24
+ item.pluginsData.navigate = navigate;
25
+ }
26
+ });
27
+ return recs;
28
+ };
29
+ return [onProcess, onExit];
30
+ };
31
+ exports.default = plugin;
32
+ //# sourceMappingURL=prev-next-plugin.js.map
@@ -90,7 +90,7 @@ export default {}
90
90
  return (0, schema_1.makeInterator)(rules)(node, {});
91
91
  };
92
92
  const onProcess = (recs) => {
93
- console.log('react-plugin start');
93
+ // console.log('react-plugin start')
94
94
  const res = recs.map(item => {
95
95
  const node = processNode(item.node, item.file);
96
96
  // process images inside description
@@ -123,7 +123,7 @@ export default {}
123
123
  });
124
124
  return res;
125
125
  };
126
- console.log('react-plugin finished');
126
+ // console.log('react-plugin finished')
127
127
  return [onProcess, onExit];
128
128
  };
129
129
  exports.default = plugin;
package/lib/shared.d.ts CHANGED
@@ -34,3 +34,4 @@ export declare const addUrl: (items: publishRecord[]) => {
34
34
  sequence?: number;
35
35
  slug?: string;
36
36
  }[];
37
+ export declare const runSelector: (selector: string, docs: publishRecord[]) => publishRecord[] | PodNode[];
package/lib/shared.js CHANGED
@@ -3,7 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.addUrl = exports.getAllArticles = exports.isExistsPubdate = exports.isExistsDocBlocks = exports.makeAstFromSrc = exports.defaultLangForFile = exports.getLangFromFilename = void 0;
6
+ exports.runSelector = exports.addUrl = exports.getAllArticles = exports.isExistsPubdate = exports.isExistsDocBlocks = exports.makeAstFromSrc = exports.defaultLangForFile = exports.getLangFromFilename = void 0;
7
7
  const schema_1 = require("@podlite/schema");
8
8
  const podlite_1 = require("podlite");
9
9
  // now we add base60 letters
@@ -166,4 +166,75 @@ const addUrl = (items) => {
166
166
  });
167
167
  };
168
168
  exports.addUrl = addUrl;
169
+ const parseSelector = (selector) => {
170
+ // doc:File1#data1
171
+ const docWithAnchorPattern = /^([^:]+):([^#]+)#(.+)$/;
172
+ // Try doc:name#anchor pattern first
173
+ const anchorMatch = selector.match(docWithAnchorPattern);
174
+ if (anchorMatch) {
175
+ return {
176
+ scheme: anchorMatch[1],
177
+ document: anchorMatch[2],
178
+ anchor: anchorMatch[3],
179
+ };
180
+ }
181
+ };
182
+ const getDocIDs = (doc) => {
183
+ const ids = [];
184
+ // for (const item of [doc]) {
185
+ (0, schema_1.getFromTree)(doc.node, 'NAME', 'TITLE').map(block => {
186
+ const conf = (0, schema_1.makeAttrs)(block, {});
187
+ const title = (0, schema_1.getTextContentFromNode)(block).trim();
188
+ if (conf.exists('id')) {
189
+ const id = conf.getFirstValue('id');
190
+ if (id) {
191
+ ids.push(id);
192
+ }
193
+ }
194
+ ids.push(title);
195
+ });
196
+ return ids;
197
+ };
198
+ function getMapIDsBlocks(srcNode) {
199
+ const ids = [];
200
+ const idsMap = new Map();
201
+ const t = (0, schema_1.getFromTree)(srcNode, { type: 'block' }).map(i => {
202
+ const id = (0, schema_1.getNodeId)(i, {});
203
+ if (id) {
204
+ idsMap.set(id, i);
205
+ }
206
+ });
207
+ return idsMap;
208
+ }
209
+ const runSelector = (selector, docs) => {
210
+ const paresedSelector = parseSelector(selector);
211
+ if (paresedSelector) {
212
+ const { scheme, document, anchor } = paresedSelector;
213
+ const filters = [];
214
+ if (scheme === 'doc') {
215
+ filters.push((doc) => {
216
+ // console.log(`[incliude] `)
217
+ return getDocIDs(doc).includes(document);
218
+ });
219
+ }
220
+ // Return documents that successfully pass all the filters.
221
+ const subdocs = docs.filter(item => !filters.some(fn => !fn(item)));
222
+ console.warn(`[include] fouond ${subdocs.length} docs for ${document}`);
223
+ if (anchor) {
224
+ const collected_blocks = [];
225
+ for (const d of subdocs) {
226
+ const idsMap = getMapIDsBlocks(d.node);
227
+ const block = idsMap.get(anchor);
228
+ if (block) {
229
+ collected_blocks.push(block);
230
+ }
231
+ }
232
+ console.warn(`[include] found ${collected_blocks.length} blocks for anchor: ${anchor}`);
233
+ return collected_blocks;
234
+ }
235
+ }
236
+ console.log(`[include] no any blocks found for ${selector}`);
237
+ return [];
238
+ };
239
+ exports.runSelector = runSelector;
169
240
  //# sourceMappingURL=shared.js.map
@@ -14,6 +14,7 @@ export interface SiteInfo {
14
14
  footer: string;
15
15
  gtmId: string;
16
16
  item: publishRecord;
17
+ templateFile?: string;
17
18
  }
18
19
  interface siteDataPluginInitParams {
19
20
  public_path: string;
@@ -41,7 +41,7 @@ const plugin = ({ public_path = constants_1.PUBLIC_PATH, indexFilePath = `${cons
41
41
  const [pod] = (0, schema_1.getFromTree)(indexPage.node, 'pod');
42
42
  const attr = (0, schema_1.makeAttrs)(pod, {});
43
43
  const pageAttr = Object.fromEntries(Object.keys(attr.asHash()).map(k => [k, attr.getFirstValue(k)]));
44
- const { postsPerPage, favicon, puburl, url, globalStyles, gtmId } = pageAttr;
44
+ const { postsPerPage, favicon, puburl, url, globalStyles, gtmId, templateFile } = pageAttr;
45
45
  // process favicon file
46
46
  const faviconPath = favicon ? path_1.default.join(path_1.default.dirname(indexFilePath), favicon) : 'src/favicon.png';
47
47
  const { base, ext } = path_1.default.parse(faviconPath);
@@ -75,6 +75,7 @@ const plugin = ({ public_path = constants_1.PUBLIC_PATH, indexFilePath = `${cons
75
75
  redirects,
76
76
  footer,
77
77
  gtmId,
78
+ ...(templateFile && { templateFile }),
78
79
  item: { ...indexPage, node: pageNode },
79
80
  };
80
81
  // !!! now get previsuly prepared data from context and prepare control.json
@@ -94,25 +95,10 @@ const plugin = ({ public_path = constants_1.PUBLIC_PATH, indexFilePath = `${cons
94
95
  siteInfo: siteData,
95
96
  };
96
97
  if (!ctx.testing) {
97
- (0, _1.streamWriteArray)(allRecords, `${built_path}/pages.json`)
98
- .then(() => console.log('All pages written successfully'))
99
- .catch(err => console.error('Error writing file:', err));
100
98
  fs.writeFileSync(`${built_path}/data.json`, JSON.stringify(dataJson));
101
99
  fs.writeFileSync(`${built_path}/siteInfo.json`, JSON.stringify(siteData, null, 2));
102
100
  fs.writeFileSync(`${built_path}/imagesMap.json`, JSON.stringify(imagesMap, null, 2));
103
101
  }
104
- // prepare data for LastArticles component
105
- if (!ctx.testing) {
106
- const source = () => allRecords.filter(i => i.publishUrl).filter(({ type = '' }) => type !== 'page');
107
- const articles = source().reverse().slice(0, 10);
108
- // if (!articles[articles.length - 1]) {
109
- // throw new Error('No articles found' + JSON.stringify({'articles.length - 1':articles.length - 1, articles, 'allRecords':allRecords.length}, null, 2))
110
- // }
111
- // const lastArticleUrl = articles[articles.length - 1].publishUrl
112
- // const articleIndex = source().findIndex(({ publishUrl }) => publishUrl === lastArticleUrl)
113
- // const prev = source()[articleIndex - 1]
114
- fs.writeFileSync(`${built_path}/lastArticles.json`, JSON.stringify({ articles, prev: {} }, null, 2));
115
- }
116
102
  // process GlobalStyles
117
103
  let stylesContent = '';
118
104
  if (siteData.globalStyles) {
@@ -150,8 +136,19 @@ const plugin = ({ public_path = constants_1.PUBLIC_PATH, indexFilePath = `${cons
150
136
  throw new Error('Index page not found. Used path: ' + indexFilePath);
151
137
  }
152
138
  indexPage.publishUrl = '/';
153
- allRecords.push(...recs);
154
- return recs;
139
+ const articlesJSON = JSON.stringify(recs.filter(i => i.publishUrl).filter(({ type = '' }) => type !== 'page'));
140
+ const storeFile = `
141
+ =begin pod
142
+ =for NAME :id<PLUGIN_DATA>
143
+ SITE DATA
144
+ =begin data :id<articles>
145
+ ${articlesJSON}
146
+ =end data
147
+ =end pod
148
+ `;
149
+ const storeDoc = (0, _1.processFile)('virtual/site-data-plugin.podlite', storeFile);
150
+ allRecords.push(...recs, storeDoc);
151
+ return [...recs, storeDoc];
155
152
  };
156
153
  return [onProcess, onExit];
157
154
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@podlite/publisher",
3
- "version": "0.0.3",
3
+ "version": "0.0.5",
4
4
  "description": "Library that powers publishing and CLI tools for the Podlite markup language",
5
5
  "main": "lib/index.js",
6
6
  "license": "MIT",
@@ -33,7 +33,7 @@
33
33
  "markup-language"
34
34
  ],
35
35
  "dependencies": {
36
- "@podlite/schema": "0.0.22",
36
+ "@podlite/schema": "0.0.24",
37
37
  "crc-32": "^1.2.2",
38
38
  "gray-matter": "^4.0.3",
39
39
  "iso_9": "^1.0.4",