UNPKG

@launchmenu/applet-dictionary

Version:
37 lines 3.18 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.dictionaryPatternMatcher = void 0; const core_1 = require("@launchmenu/core"); const ILanguage_1 = require("./_types/ILanguage"); /** * The pattern matcher for dictionary items */ exports.dictionaryPatternMatcher = core_1.createStandardSearchPatternMatcher({ name: "Dictionary", matcher: ({ search }) => { var _a; const match = search.match(/^((define\s*)(\w+)?\:).*$/); if (match) { const dl = match[2].length; const inpLanguage = (_a = match[3]) === null || _a === void 0 ? void 0 : _a.toLowerCase(); const language = (Object.values(ILanguage_1.languages).find(lang => lang.toLowerCase() == inpLanguage) || ILanguage_1.languages[inpLanguage]); return { highlight: inpLanguage ? [ { start: 0, end: dl }, { start: dl, end: dl + inpLanguage.length, tags: language ? [core_1.highlightTags.literal] : [core_1.highlightTags.error], }, { start: dl + inpLanguage.length, end: match[1].length }, ] : [{ start: 0, end: match[1].length }], metadata: { language }, }; } }, }); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGljdGlvbmFyeVBhdHRlcm5NYXRjaGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL2RpY3Rpb25hcnlQYXR0ZXJuTWF0Y2hlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSwyQ0FBbUY7QUFDbkYsa0RBQXdEO0FBRXhEOztHQUVHO0FBQ1UsUUFBQSx3QkFBd0IsR0FBRyx5Q0FBa0MsQ0FBQztJQUN2RSxJQUFJLEVBQUUsWUFBWTtJQUNsQixPQUFPLEVBQUUsQ0FBQyxFQUFDLE1BQU0sRUFBQyxFQUFFLEVBQUU7O1FBQ2xCLE1BQU0sS0FBSyxHQUFHLE1BQU0sQ0FBQyxLQUFLLENBQUMsMkJBQTJCLENBQUMsQ0FBQztRQUV4RCxJQUFJLEtBQUssRUFBRTtZQUNQLE1BQU0sRUFBRSxHQUFHLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUM7WUFDM0IsTUFBTSxXQUFXLFNBQUcsS0FBSyxDQUFDLENBQUMsQ0FBQywwQ0FBRSxXQUFXLEVBQUUsQ0FBQztZQUM1QyxNQUFNLFFBQVEsR0FBRyxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMscUJBQVMsQ0FBQyxDQUFDLElBQUksQ0FDM0MsSUFBSSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLElBQUksV0FBVyxDQUM1QyxJQUFJLHFCQUFTLENBQUMsV0FBcUMsQ0FBQyxDQUFjLENBQUM7WUFFcEUsT0FBTztnQkFDSCxTQUFTLEVBQUUsV0FBVztvQkFDbEIsQ0FBQyxDQUFDO3dCQUNJLEVBQUMsS0FBSyxFQUFFLENBQUMsRUFBRSxHQUFHLEVBQUUsRUFBRSxFQUFDO3dCQUNuQjs0QkFDSSxLQUFLLEVBQUUsRUFBRTs0QkFDVCxHQUFHLEVBQUUsRUFBRSxHQUFHLFdBQVcsQ0FBQyxNQUFNOzRCQUM1QixJQUFJLEVBQUUsUUFBUTtnQ0FDVixDQUFDLENBQUMsQ0FBQyxvQkFBYSxDQUFDLE9BQU8sQ0FBQztnQ0FDekIsQ0FBQyxDQUFDLENBQUMsb0JBQWEsQ0FBQyxLQUFLLENBQUM7eUJBQzlCO3dCQUNELEVBQUMsS0FBSyxFQUFFLEVBQUUsR0FBRyxXQUFXLENBQUMsTUFBTSxFQUFFLEdBQUcsRUFBRSxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxFQUFDO3FCQUN6RDtvQkFDSCxDQUFDLENBQUMsQ0FBQyxFQUFDLEtBQUssRUFBRSxDQUFDLEVBQUUsR0FBRyxFQUFFLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLEVBQUMsQ0FBQztnQkFDeEMsUUFBUSxFQUFFLEVBQUMsUUFBUSxFQUFDO2FBQ3ZCLENBQUM7U0FDTDtJQUNMLENBQUM7Q0FDSixDQUFDLENBQUMifQ==