New Case Study:See how Anthropic automated 95% of dependency reviews with Socket.Learn More
Socket
Sign inDemoInstall
Socket

@dendronhq/engine-server

Package Overview
Dependencies
Maintainers
1
Versions
514
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@dendronhq/engine-server - npm Package Compare versions

Comparing version

to
0.6.6

20

lib/__tests__/utils.spec.js

@@ -8,2 +8,3 @@ "use strict";

const lodash_1 = __importDefault(require("lodash"));
const testUtils_1 = require("../testUtils");
function createFileLink(opts) {

@@ -19,3 +20,3 @@ return {

// @ts-ignore
expect(utils_1.matchEmbedMarker("<!--(([[class.mba.chapters.2]]))-->")[1]).toEqual("[[class.mba.chapters.2]]");
expect(utils_1.matchRefMarker("<!--(([[class.mba.chapters.2]]))-->")[1]).toEqual("[[class.mba.chapters.2]]");
});

@@ -84,3 +85,3 @@ });

it("no anchor", () => {
expect(utils_1.extractBlock(FILE_TEXT, createFileLink())).toEqual(lodash_1.default.trim(FILE_TEXT));
expect(utils_1.extractBlock(FILE_TEXT, createFileLink()).block).toEqual(lodash_1.default.trim(FILE_TEXT));
});

@@ -90,3 +91,3 @@ it("anchor start", () => {

anchorStart: "Head 2.1",
}))).toEqual(lodash_1.default.trim(`
})).block).toEqual(lodash_1.default.trim(`
## Head 2.1

@@ -108,3 +109,3 @@

anchorEnd: "Head 2.2",
}))).toEqual(lodash_1.default.trim(`
})).block).toEqual(lodash_1.default.trim(`
## Head 2.1

@@ -119,2 +120,13 @@

});
describe("replaceRefWithMPEImport", () => {
let root;
beforeEach(async () => {
root = await testUtils_1.setupTmpDendronDir({ copyFixtures: true });
});
it("basic", () => {
expect(utils_1.replaceRefWithMPEImport("((ref:[[foo]]))", {
root,
})).toEqual('@import "foo.md"');
});
});
//# sourceMappingURL=utils.spec.js.map

4

lib/drivers/file/store.d.ts

@@ -18,3 +18,3 @@ import { DEngineStore, DEngineStoreWriteOpts, DNodeData, DNodeRawProps, EngineQueryResp, IDNode, NoteRawProps, QueryMode, QueryOpts, SchemaRawProps, StoreGetResp, StoreQueryOpts, StoreDeleteOpts } from "@dendronhq/common-all";

isRoot(id: string): boolean;
getRoot(): Promise<any>;
getRoot(): Promise<Required<import("@dendronhq/common-all").DNodeRawOpts<DNodeData>>>;
get(id: string, _opts?: QueryOpts): Promise<StoreGetResp>;

@@ -27,3 +27,3 @@ }

_getSchemaAll(): Promise<SchemaRawProps[]>;
_writeFile(node: IDNode): any;
_writeFile(node: IDNode): void;
isQueryAll(qs: string): boolean;

@@ -30,0 +30,0 @@ /**

@@ -13,4 +13,4 @@ import { DEngine, DEngineMode, DEngineOpts, DEngineStore, DNodeData, DNodeDict, DNodeRawProps, EngineDeleteOpts, EngineGetResp, EngineQueryResp, IDNode, NodeWriteOpts, Note, NoteDict, QueryMode, QueryOneOpts, QueryOpts, Schema, SchemaDict, UpdateNodesOpts } from "@dendronhq/common-all";

export declare class DendronEngine implements DEngine {
fuse: Fuse<Note, any>;
schemaFuse: Fuse<Schema, any>;
fuse: Fuse<Note>;
schemaFuse: Fuse<Schema>;
notes: NoteDict;

@@ -43,3 +43,3 @@ schemas: SchemaDict;

resolveIds(node: DNodeRawProps<DNodeData>, dict: DNodeDict): Promise<Note>;
updateLocalCollection(collection: IDNode[], mode: QueryMode): any;
updateLocalCollection(collection: IDNode[], mode: QueryMode): void;
delete(idOrFname: string, mode: QueryMode, opts?: EngineDeleteOpts): Promise<void>;

@@ -53,3 +53,5 @@ /**

get(id: string, mode: QueryMode, opts?: QueryOpts): Promise<{
data: any;
data: Schema;
} | {
data: Note;
}>;

@@ -56,0 +58,0 @@ query(queryString: string, mode: QueryMode, opts?: QueryOpts): Promise<EngineQueryResp<DNodeData>>;

@@ -9,3 +9,9 @@ export declare type DendronRefLink = {

};
export declare function extractBlock(txt: string, link: DendronRefLink): string;
export declare function extractBlock(txt: string, link: DendronRefLink): {
block: string;
lines?: {
start: number | undefined;
end: number | undefined;
};
};
export declare function parseDendronRef(ref: string): {

@@ -16,2 +22,5 @@ direction: "to";

export declare function parseFileLink(ref: string): DendronRefLink;
export declare const matchEmbedMarker: (txt: string) => RegExpMatchArray | null;
export declare const matchRefMarker: (txt: string) => RegExpMatchArray | null;
export declare const replaceRefWithMPEImport: (line: string, opts: {
root: string;
}) => string;

@@ -6,3 +6,3 @@ "use strict";

Object.defineProperty(exports, "__esModule", { value: true });
exports.matchEmbedMarker = exports.parseFileLink = exports.parseDendronRef = exports.extractBlock = void 0;
exports.replaceRefWithMPEImport = exports.matchRefMarker = exports.parseFileLink = exports.parseDendronRef = exports.extractBlock = void 0;
const lodash_1 = __importDefault(require("lodash"));

@@ -13,2 +13,3 @@ const path_1 = __importDefault(require("path"));

const markdown_it_ast_1 = __importDefault(require("markdown-it-ast"));
const common_server_1 = require("@dendronhq/common-server");
const markdownIt = markdown_it_1.default();

@@ -19,3 +20,6 @@ function genAST(txt) {

}
function extractBlock(txt, link) {
function extractBlock(txt, link
//opts?: { linesOnly?: boolean }
) {
// const copts = _.defaults(opts, { linesOnly: false });
const { anchorStart, anchorEnd } = link;

@@ -28,3 +32,3 @@ if (link.type === "id") {

if (!anchorStart) {
return txt;
return { block: txt };
}

@@ -52,3 +56,3 @@ const ast = genAST(txt);

if (lodash_1.default.isNull(out.anchorStart)) {
return "invalid link";
return { block: "invalid link" };
}

@@ -60,3 +64,3 @@ const start = out.anchorStart[0] - 1;

const block = lodash_1.default.trim(txtAsLines.slice(start, end).join("\n"));
return block;
return { block, lines: { start, end } };
}

@@ -151,5 +155,31 @@ }

// }
exports.matchEmbedMarker = (txt) => {
return txt.match(/<!--\(\(([^)]+)\)\)-->/);
exports.matchRefMarker = (txt) => {
return txt.match(/\(\((?<ref>[^)]+)\)\)/);
};
exports.replaceRefWithMPEImport = (line, opts) => {
const match = exports.matchRefMarker(line);
let prefix = `@import`;
if (!match || !match.groups) {
return line;
}
const ref = match.groups["ref"];
if (!ref) {
return line;
}
const { link } = parseDendronRef(ref);
// unsupported
if (!link || !link.name) {
return line;
}
const fsPath = path_1.default.join(opts.root, link.name + ".md");
prefix += ` "${link.name + ".md"}"`;
if (!link.anchorStart) {
return prefix;
}
//TODO: will be more sophisticated when multi-vault
const { content } = common_server_1.readMD(fsPath);
// @ts-ignore
const { lines } = extractBlock(content, link);
return line;
};
//# sourceMappingURL=utils.js.map
{
"name": "@dendronhq/engine-server",
"version": "0.6.5",
"version": "0.6.6",
"description": "dendron-engine",

@@ -83,4 +83,3 @@ "license": "GPLv3",

"preset": "ts-jest"
},
"gitHead": "2dbcba77b07d26a1bf0d86a4d5d2cf5df8da2c64"
}
}

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet