diff --git a/main.js b/main.js index bf40f59..acb0e83 100644 --- a/main.js +++ b/main.js @@ -4087,7 +4087,7 @@ var require_lodash = __commonJS({ } return true; } - function isEqual2(value, other) { + function isEqual3(value, other) { return baseIsEqual(value, other); } function isEqualWith(value, other, customizer) { @@ -5200,7 +5200,7 @@ var require_lodash = __commonJS({ lodash.isDate = isDate2; lodash.isElement = isElement; lodash.isEmpty = isEmpty; - lodash.isEqual = isEqual2; + lodash.isEqual = isEqual3; lodash.isEqualWith = isEqualWith; lodash.isError = isError; lodash.isFinite = isFinite2; @@ -13866,9 +13866,9 @@ var eventTypes = { }; // src/dispatch/flowEditor.ts -var createFlowEditorInElement = (id2, leaf, source, el, type, path, from, to) => { +var createFlowEditorInElement = (id2, leaf, source, el, path, from, to) => { const evt = new CustomEvent(eventTypes.spawnPortal, { - detail: { id: id2, leaf, source, el, path, from, to, type } + detail: { id: id2, leaf, source, el, path, from, to } }); activeWindow.dispatchEvent(evt); }; @@ -14446,7 +14446,7 @@ var T4 = class { var i18n_default = new T4().texts; // src/codemirror/extensions/flowEditor/flowEditor.tsx -var import_obsidian52 = require("obsidian"); +var import_obsidian51 = require("obsidian"); // src/utils/array.ts var insert = (arr, index, newItem) => !index || index <= 0 ? [ @@ -14618,9 +14618,9 @@ var pathDisplayName = (path, plugin) => { return folderPathToString(path.path); } if ((path == null ? void 0 : path.type) == "tag") - return stringFromTag(path.space); + return stringFromTag(path.authority); if ((path == null ? void 0 : path.type) == "space") - return spaceNameFromSpacePath(path.space, plugin); + return spaceNameFromSpacePath(path.authority, plugin); if (path.isRemote) { return folderPathToString(path.path); } @@ -14660,10 +14660,10 @@ var serializeSQLStatements = (value) => value.join("; "); var serializeSQLFieldNames = (value) => value.join(","); // src/utils/uri.ts -var import_obsidian51 = require("obsidian"); +var import_obsidian50 = require("obsidian"); // src/midd/obsidian/utils/file.ts -var import_obsidian50 = require("obsidian"); +var import_obsidian49 = require("obsidian"); // src/react/components/RemoteMarkdownView/FileView.tsx var import_obsidian2 = require("obsidian"); @@ -14754,7 +14754,7 @@ var FileLinkView = class extends import_obsidian2.ItemView { }; // src/react/components/SpaceView/Contexts/SpaceView.tsx -var import_obsidian49 = require("obsidian"); +var import_obsidian48 = require("obsidian"); // src/react/context/FramesMDBContext.tsx var import_obsidian5 = require("obsidian"); @@ -14763,14 +14763,6 @@ var import_obsidian5 = require("obsidian"); var defaultFrameEditorProps = { editMode: 0 }; // src/utils/objects.ts -var replaceKeys = (object1, object2) => { - const newObject = {}; - for (const key2 in object1) { - const newKey = Object.prototype.hasOwnProperty.call(object2, key2) ? object2[key2] : key2; - newObject[newKey] = object1[key2]; - } - return newObject; -}; function applyFunctionToObject(object, func) { const newObject = {}; for (const key2 in object) { @@ -14780,13 +14772,6 @@ function applyFunctionToObject(object, func) { } return newObject; } -var replaceKeysByValue = (object1, object2) => { - const reversedObject2 = {}; - for (const key2 in object2) { - reversedObject2[object2[key2]] = key2; - } - return replaceKeys(object1, reversedObject2); -}; // node_modules/acorn/dist/acorn.mjs var astralIdentifierCodes = [509, 0, 227, 0, 150, 4, 294, 9, 1368, 2, 2, 1, 6, 3, 41, 2, 5, 0, 166, 1, 574, 3, 9, 9, 370, 1, 81, 2, 71, 10, 50, 3, 123, 2, 54, 14, 32, 10, 3, 1, 11, 3, 46, 10, 8, 0, 46, 9, 7, 2, 37, 13, 2, 9, 6, 1, 45, 0, 13, 2, 49, 13, 9, 3, 2, 11, 83, 11, 7, 0, 3, 0, 158, 11, 6, 9, 7, 3, 56, 1, 2, 6, 3, 1, 3, 2, 10, 0, 11, 1, 3, 6, 4, 4, 193, 17, 10, 9, 5, 0, 82, 19, 13, 9, 214, 6, 3, 8, 28, 1, 83, 16, 16, 9, 82, 12, 9, 9, 84, 14, 5, 9, 243, 14, 166, 9, 71, 5, 2, 1, 3, 3, 2, 0, 2, 1, 13, 9, 120, 6, 3, 6, 4, 0, 29, 9, 41, 6, 2, 3, 9, 0, 10, 10, 47, 15, 406, 7, 2, 7, 17, 9, 57, 21, 2, 13, 123, 5, 4, 0, 2, 1, 2, 6, 2, 0, 9, 9, 49, 4, 2, 1, 2, 4, 9, 9, 330, 3, 10, 1, 2, 0, 49, 6, 4, 4, 14, 9, 5351, 0, 7, 14, 13835, 9, 87, 9, 39, 4, 60, 6, 26, 9, 1014, 0, 2, 54, 8, 3, 82, 0, 12, 1, 19628, 1, 4706, 45, 3, 22, 543, 4, 4, 5, 9, 7, 3, 6, 31, 3, 149, 2, 1418, 49, 513, 54, 5, 49, 9, 0, 15, 0, 23, 4, 2, 14, 1361, 6, 2, 16, 3, 6, 2, 1, 2, 4, 101, 0, 161, 6, 10, 9, 357, 0, 62, 13, 499, 13, 983, 6, 110, 6, 6, 9, 4759, 9, 787719, 239]; @@ -21106,7 +21091,7 @@ var getFrameNodesByPath = (plugin, ref2) => { const path = uriByString(plugin, ref2); if (!path) return; - if (path.space == "$kit") { + if (path.authority == "$kit") { return kit.find((f4) => f4.schema.id == path.ref); } const context = plugin.index.framesIndex.get(path.basePath); @@ -21684,7 +21669,7 @@ var parseFieldValue = (value, type) => { var _a2; let valueProp = safelyParseJSON(value); if (valueProp) { - return ((_a2 = fieldTypeForType(type).configKeys) != null ? _a2 : []).reduce((p3, c4) => ({ ...p3, [c4]: valueProp[c4] }), {}); + return [...(_a2 = fieldTypeForType(type).configKeys) != null ? _a2 : [], "alias", "default"].reduce((p3, c4) => ({ ...p3, [c4]: valueProp[c4] }), {}); } if (!type) return {}; @@ -21847,7 +21832,8 @@ var fieldTypes = [ type: "super", label: "Super Property", icon: "lucide//zap", - restricted: true + restricted: true, + configKeys: ["dynamic", "field"] } ]; var defaultFileDBSchema = { @@ -23326,7 +23312,7 @@ var FramesMDBProvider = (props2) => { }; p2(() => { loadTables(); - }, [spaceInfo]); + }, [spaceInfo, props2.schema]); const saveFrame = async (newTable) => { if (spaceInfo.readOnly) return; @@ -30139,7 +30125,7 @@ async function replaceValues(plugin, fileOrFilePath, attribute, input, previousI // src/midd/obsidian/frontmatter/frontMatterKeys.ts var frontMatterKeys = (fm) => { - return Object.keys(fm != null ? fm : {}).filter((f4) => f4 != "position").filter((f4) => f4 != "tag" && f4 != "tags"); + return Object.keys(fm != null ? fm : {}).filter((f4) => f4 != "position"); }; // src/midd/obsidian/frontmatter/yamlTypeToMDBType.ts @@ -38878,6 +38864,7 @@ var validatePredicate = (prevPredicate) => { view: prevPredicate.view, frame: prevPredicate.frame, frameProps: prevPredicate.frameProps, + frameGroup: prevPredicate.frameGroup, filters: Array.isArray(prevPredicate.filters) ? cleanPredicateType(prevPredicate.filters, filterFnTypes) : [], sort: Array.isArray(prevPredicate.sort) ? cleanPredicateType(prevPredicate.sort, sortFnTypes) : [], groupBy: Array.isArray(prevPredicate.groupBy) ? prevPredicate.groupBy : [], @@ -38891,6 +38878,7 @@ var defaultPredicate = { filters: [], frame: "", frameProps: {}, + frameGroup: "", sort: [], groupBy: [], colsOrder: [], @@ -38902,6 +38890,7 @@ var defaultTablePredicate = { filters: [], frame: "", frameProps: {}, + frameGroup: "", sort: [], groupBy: [], colsOrder: [], @@ -38919,6 +38908,8 @@ var ContextEditorContext = F({ sortedColumns: [], filteredData: [], contextTable: {}, + editMode: 0, + setEditMode: () => null, selectedRows: [], selectRows: () => null, setContextTable: () => null, @@ -38947,6 +38938,7 @@ var ContextEditorProvider = (props2) => { const [contextTable, setContextTable] = h2({}); const [predicate, setPredicate] = h2(defaultPredicate); const [selectedRows, setSelectedRows] = h2([]); + const [editMode, setEditMode] = h2(0); const views = F2(() => { const _views = frameSchemas.filter( (f4) => f4.type == "view" && f4.def.db == (dbSchema == null ? void 0 : dbSchema.id) @@ -39436,6 +39428,7 @@ var ContextEditorProvider = (props2) => { view: predicate.view, frame: predicate.frame, frameProps: predicate.frameProps, + frameGroup: predicate.frameGroup, filters: predicate.filters.map( (f4) => f4.field == oldColumn.name + oldColumn.table ? { ...f4, field: column.name + column.table } : f4 ), @@ -39489,7 +39482,9 @@ var ContextEditorProvider = (props2) => { searchString, setSearchString, updateValue: updateValue2, - updateFieldValue + updateFieldValue, + editMode, + setEditMode } }, props2.children); }; @@ -40086,13 +40081,13 @@ var NoteSpacesBar = (props2) => { }; // src/react/components/UI/Menus/fileMenu.tsx -var import_obsidian46 = require("obsidian"); +var import_obsidian45 = require("obsidian"); // src/react/components/UI/Modals/editSpaceModal.tsx -var import_obsidian43 = require("obsidian"); +var import_obsidian42 = require("obsidian"); // src/react/components/Navigator/SpaceEditor.tsx -var import_obsidian42 = require("obsidian"); +var import_obsidian41 = require("obsidian"); // src/react/components/UI/Menus/linkMenu.tsx var showLinkMenu = (e4, plugin, saveLink, placeholder) => { @@ -40944,7 +40939,7 @@ var insertSpaceAtIndex = async (plugin, path, newSpace) => { newSpaceCache = await plugin.index.reloadSpace(spaceInfo); } } - plugin.index.initalizeFiles(); + plugin.index.initializeFiles(); plugin.settings.rootSpaces = [...plugin.settings.rootSpaces, spaceInfo.path]; plugin.saveSettings(); return newSpaceCache; @@ -40964,7 +40959,7 @@ var saveSpaceMetadataValue = async (plugin, space, key2, value) => { frontmatter[key2] = value; }); } - plugin.index.updateSpaceMetadata(space, { ...spaceCache.metadata, [key2]: value }); + await plugin.index.updateSpaceMetadata(space, { ...spaceCache.metadata, [key2]: value }); }; var saveSpaceCache = async (plugin, spaceInfo, metadata) => { let file = getAbstractFileAtPath(plugin, spaceInfo.defPath); @@ -41054,7 +41049,8 @@ var removePathsFromSpace = async (plugin, space, paths) => { }).filter((f4) => f4).forEach((path) => removeTagFromFile(plugin, space.name, getAbstractFileAtPath(plugin, path))); } else if (space.type == "folder" || space.type == "vault") { paths.forEach((f4) => { - if (pathIsSpace(plugin, f4)) { + var _a2; + if (pathIsSpace(plugin, f4) && space.path != ((_a2 = plugin.index.filesIndex.get(f4)) == null ? void 0 : _a2.parent)) { plugin.index.spacesMap.set(f4, new Set([...plugin.index.spacesMap.get(f4)].filter((g4) => g4 != space.path))); } }); @@ -41314,7 +41310,7 @@ var FileStickerContainer = (props2) => { }; // src/react/components/Navigator/SpaceQuery.tsx -var import_obsidian41 = require("obsidian"); +var import_obsidian40 = require("obsidian"); // src/react/components/SpaceView/Contexts/ContextBuilder/BuilderMetadataFields.tsx var import_obsidian22 = require("obsidian"); @@ -43084,10 +43080,10 @@ var filterFnLabels = { }; // src/react/components/SpaceView/Contexts/FilterBar/FilterBar.tsx -var import_obsidian40 = require("obsidian"); +var import_obsidian39 = require("obsidian"); // src/react/components/UI/Modals/contextEditorModal.tsx -var import_obsidian39 = require("obsidian"); +var import_obsidian38 = require("obsidian"); // src/react/components/SpaceView/Frames/EditorNodes/FrameNodeView.tsx var import_classnames4 = __toESM(require_classnames()); @@ -45010,6 +45006,13 @@ var HoverPropsMenu = (props2) => { }); }); }); + menu.addItem((menuItem) => { + menuItem.setTitle("Daily Note"); + menuItem.setIcon("type"); + menuItem.onClick((e5) => { + savePropValue(field.name, `api.formatDate(api.now())`); + }); + }); const offset2 = e4.target.getBoundingClientRect(); menu.showAtPosition({ x: offset2.left, y: offset2.top + 30 }); } @@ -45117,24 +45120,27 @@ var HoverPropsMenu = (props2) => { const menu = new import_obsidian26.Menu(); menu.setUseNativeMenu(false); menu.addItem((menuItem) => { - menuItem.setTitle("H1"); + menuItem.setTitle("Small"); menuItem.setIcon("type"); menuItem.onClick((e5) => { saveStyleValue("maxWidth", `'50px'`); + saveStyleValue("height", `'auto'`); }); }); menu.addItem((menuItem) => { - menuItem.setTitle("H2"); + menuItem.setTitle("Medium"); menuItem.setIcon("type"); menuItem.onClick((e5) => { saveStyleValue("maxWidth", `'100px'`); + saveStyleValue("height", `'auto'`); }); }); menu.addItem((menuItem) => { - menuItem.setTitle("H3"); + menuItem.setTitle("Big"); menuItem.setIcon("type"); menuItem.onClick((e5) => { saveStyleValue("maxWidth", `'200px'`); + saveStyleValue("height", `'auto'`); }); }); const offset2 = e4.target.getBoundingClientRect(); @@ -45296,6 +45302,20 @@ var HoverPropsMenu = (props2) => { dangerouslySetInnerHTML: { __html: stickerFromString("lucide//type", props2.plugin) } + }) : /* @__PURE__ */ Cn.createElement(Cn.Fragment, null), props2.node.type == "content" || props2.node.type == "group" ? /* @__PURE__ */ Cn.createElement("div", { + className: "mk-mark", + onClick: (e4) => { + var _a3; + e4.preventDefault(); + e4.stopPropagation(); + saveStyleValue( + "class", + `${removeQuotes((_a3 = props2.node.styles) == null ? void 0 : _a3.class) == "mk-masonry" ? "" : `"mk-masonry"`}` + ); + }, + dangerouslySetInnerHTML: { + __html: stickerFromString("lucide//type", props2.plugin) + } }) : /* @__PURE__ */ Cn.createElement(Cn.Fragment, null), /* @__PURE__ */ Cn.createElement("div", { className: "mk-mark", onClick: (e4) => { @@ -45498,8 +45518,13 @@ var RowPlaceholder = (props2) => { })); }; +// src/react/components/SpaceView/Frames/EditorNodes/ContentNodeView.tsx +var ContentNodeView = (props2) => { + return /* @__PURE__ */ Cn.createElement(Cn.Fragment, null, props2.children); +}; + // src/react/components/SpaceView/Editor/FlowView.tsx -var import_obsidian36 = require("obsidian"); +var import_obsidian35 = require("obsidian"); // src/utils/flow/flowEditor.ts var import_state5 = require("@codemirror/state"); @@ -45770,9 +45795,6 @@ var atomicSelect = import_state4.EditorState.transactionFilter.of( } ); -// src/utils/flow/flowEditor.ts -var import_obsidian35 = require("obsidian"); - // src/react/components/SpaceView/Editor/EmbedView/EmbedContextView.tsx var import_obsidian33 = require("obsidian"); @@ -45944,7 +45966,7 @@ var FrameView = (props2) => { instance: props2.instance, plugin: props2.plugin, editable: false - }) : props2.treeNode.node.type == "flow" ? /* @__PURE__ */ Cn.createElement(FlowNodeView, { + }) : props2.treeNode.node.type == "content" ? /* @__PURE__ */ Cn.createElement(ContentNodeView, null, props2.children) : props2.treeNode.node.type == "flow" ? /* @__PURE__ */ Cn.createElement(FlowNodeView, { treeNode: props2.treeNode, instance: props2.instance, plugin: props2.plugin, @@ -45957,7 +45979,7 @@ var FrameView = (props2) => { instance: props2.instance, saveState: props2.saveState, source: props2.source - })); + }, props2.children)); const parseAs = (role) => role == "checkbox" || role == "text" || role == "range" || role == "number" ? "input" : role; const tag = (_c2 = parseAs((_b2 = (_a2 = props2.instance.state[props2.treeNode.id]) == null ? void 0 : _a2.styles) == null ? void 0 : _b2.as)) != null ? _c2 : "div"; const type = tag == "input" ? (_e2 = (_d2 = props2.instance.state[props2.treeNode.id]) == null ? void 0 : _d2.styles) == null ? void 0 : _e2.as : null; @@ -46048,7 +46070,7 @@ var FrameRootView = (props2) => { instance, saveState, source: props2.source - }); + }, props2.children); }; // src/react/components/SpaceView/Contexts/CardsView/CardsView.tsx @@ -50920,11 +50942,15 @@ var CardColumnView = k3( scrollable, shadow, unstyled, + renderItem, ...props2 }, ref2) => { const Component5 = "div"; const { updateValue: updateValue2, updateFieldValue, contextTable } = q2(ContextEditorContext); - return /* @__PURE__ */ Cn.createElement(Component5, { + return renderItem ? renderItem({ + children, + value: field + }) : /* @__PURE__ */ Cn.createElement(Component5, { ...props2, ref: ref2, style: { @@ -50977,18 +51003,15 @@ var CardColumnView_default = CardColumnView; // src/react/components/SpaceView/Contexts/CardsView/CardFrame.tsx var CardFrame = (props2) => { - const mapFramePropsFromDBRow = (predicate, value) => value && predicate.frameProps ? applyFunctionToObject( - replaceKeysByValue(value, predicate.frameProps), - wrapQuotes - ) : {}; const newProps = props2.value; return /* @__PURE__ */ Cn.createElement(FrameRootView, { root: props2.root, plugin: props2.plugin, props: newProps, contexts: {} - }); + }, props2.children); }; +CardFrame.displayName = "CardFrame"; // src/react/components/SpaceView/Contexts/CardsView/CardView.tsx var import_classnames2 = __toESM(require_classnames()); @@ -51111,26 +51134,7 @@ var CardView = Cn.memo( }; }, [dragOverlay]); const [openFlow, setOpenFlow] = h2(false); - return renderItem ? /* @__PURE__ */ Cn.createElement("li", { - className: (0, import_classnames2.default)( - fadeIn && "fadeIn", - sorting && "sorting", - dragOverlay && "dragOverlay", - selected && "mk-is-active" - ), - onClick: onClickHandler, - style: { - ...wrapperStyle, - transition, - "--translate-x": transform ? `${Math.round(transform.x)}px` : void 0, - "--translate-y": transform ? `${Math.round(transform.y)}px` : void 0, - "--scale-x": (transform == null ? void 0 : transform.scaleX) ? `${transform.scaleX}` : void 0, - "--scale-y": (transform == null ? void 0 : transform.scaleY) ? `${transform.scaleY}` : void 0, - "--index": index, - "--color": color - }, - ref: ref2 - }, renderItem({ + return renderItem ? renderItem({ dragOverlay: Boolean(dragOverlay), dragging: Boolean(dragging), sorting: Boolean(sorting), @@ -51143,7 +51147,7 @@ var CardView = Cn.memo( transition, value, predicate - })) : /* @__PURE__ */ Cn.createElement("li", { + }) : /* @__PURE__ */ Cn.createElement("li", { className: (0, import_classnames2.default)( "mk-list-item", fadeIn && "fadeIn", @@ -51315,12 +51319,34 @@ var CardsView = ({ } return null; }, [frame]); - const renderItem = frameRoot ? (props2) => /* @__PURE__ */ Cn.createElement(CardFrame, { - plugin, - root: frameRoot, - value: props2.value, - predicate: props2.predicate - }) : null; + const renderItem = F2(() => { + const frame2 = (predicate == null ? void 0 : predicate.frame) ? getFrameListItemsByPath(predicate.frame) : null; + if (!frame2) + return null; + const frameRoot2 = buildRootFromMDBFrame(plugin, frame2); + if (!frameRoot2) + return null; + const frameComponent = (props2) => /* @__PURE__ */ Cn.createElement(CardFrame, { + plugin, + root: frameRoot2, + value: props2.value + }); + return frameComponent; + }, [predicate]); + const renderGroup = F2(() => { + const frame2 = (predicate == null ? void 0 : predicate.frameGroup) ? getFrameListItemsByPath(predicate.frameGroup) : null; + if (!frame2) + return null; + const frameRoot2 = buildRootFromMDBFrame(plugin, frame2); + if (!frameRoot2) + return null; + const groupFrameComponent = (props2) => /* @__PURE__ */ Cn.createElement(CardFrame, { + plugin, + root: frameRoot2, + value: props2.value + }, props2.children); + return groupFrameComponent; + }, [predicate]); const groupBy2 = ((_a2 = predicate.groupBy) == null ? void 0 : _a2.length) > 0 ? cols.find((f4) => f4.name + f4.table == predicate.groupBy[0]) : null; const displayCols = (_b2 = cols == null ? void 0 : cols.filter( (f4) => !(f4.name == (groupBy2 == null ? void 0 : groupBy2.name) && f4.table == groupBy2.table) @@ -51555,7 +51581,8 @@ var CardsView = ({ items: items[Object.keys(items)[parseInt(containerId) * -1]], scrollable, style: containerStyle, - unstyled: minimal + unstyled: minimal, + renderItem: renderGroup }, /* @__PURE__ */ Cn.createElement(SortableContext, { items: items[Object.keys(items)[parseInt(containerId) * -1]], strategy @@ -51759,14 +51786,16 @@ var FlowListView = (props2) => { // src/react/components/SpaceView/Contexts/ContextListView.tsx var ContextListView = (props2) => { - const { predicate } = q2(ContextEditorContext); + const { predicate, editMode } = q2(ContextEditorContext); const { dbSchema } = q2(ContextMDBContext); const [error, resetError] = P2(); if (error) console.log(error); return /* @__PURE__ */ Cn.createElement(Cn.Fragment, null, !props2.minMode && /* @__PURE__ */ Cn.createElement(FilterBar, { plugin: props2.plugin - }), predicate ? predicate.view == "flow" ? /* @__PURE__ */ Cn.createElement(FlowListView, { + }), editMode == 1 ? /* @__PURE__ */ Cn.createElement(ContextFrameView, { + plugin: props2.plugin + }) : predicate ? predicate.view == "flow" ? /* @__PURE__ */ Cn.createElement(FlowListView, { plugin: props2.plugin }) : predicate.view == "table" || predicate.view == "db" ? /* @__PURE__ */ Cn.createElement(TableView, { plugin: props2.plugin @@ -52394,7 +52423,7 @@ var loadFlowEditor = (leaf, cm, flowEditorInfo2, source, plugin) => { ); const path = uriByString(plugin, flowEditorInfo2.link, source); if (dom) { - if (path.type == "vault" || path.type == "folder" || path.type == "tag" || path.type == "space") { + if (path.type != "file") { if (!dom.hasAttribute("ready")) { dom.setAttribute("ready", ""); createFlowEditorInElement( @@ -52402,12 +52431,11 @@ var loadFlowEditor = (leaf, cm, flowEditorInfo2, source, plugin) => { leaf, source, dom, - "context", path ); return; } - } else if (path.type == "file") { + } else { const file = getFileFromString(plugin, path.path, source); const aFile = getAbstractFileAtPath(plugin, path.path); if (file) { @@ -52419,27 +52447,12 @@ var loadFlowEditor = (leaf, cm, flowEditorInfo2, source, plugin) => { leaf, source, dom, - path.ref ? "block" : "flow", { ...path, fullPath: file.path, path: file.path }, selectiveRange[0], selectiveRange[1] ); } } else { - if (aFile instanceof import_obsidian35.TFolder) { - if (!dom.hasAttribute("ready")) { - dom.setAttribute("ready", ""); - createFlowEditorInElement( - flowEditorInfo2.id, - leaf, - source, - dom, - path.ref ? "block" : "flow", - path - ); - } - return; - } dom.empty(); const createDiv = dom.createDiv("file-embed"); createDiv.toggleClass("mod-empty", true); @@ -52526,8 +52539,19 @@ var openFileFromPortal = (plugin, evt) => { const file = getFileFromString(plugin, link, source); openAFile(file, plugin, false); }; -var spawnLeafFromFile = async (plugin, parentLeaf, source, path, el, type, from, to, file, onLeafAttachCallback) => { - if (type == "context") { +var spawnLeafFromFile = async (plugin, parentLeaf, source, path, el, from, to, file, onLeafAttachCallback) => { + if (path.scheme == "obsidian") { + spawnPortal(plugin, parentLeaf, el, null, async (editor) => { + const newLeaf = editor.attachLeaf(); + await newLeaf.setViewState({ + type: path.authority + }); + if (onLeafAttachCallback) + onLeafAttachCallback(newLeaf); + }); + return; + } + if (path.type != "file") { spawnPortal(plugin, parentLeaf, el, null, async (editor) => { const newLeaf = editor.attachLeaf(); await newLeaf.setViewState({ @@ -52570,8 +52594,8 @@ var spawnLeafFromFile = async (plugin, parentLeaf, source, path, el, type, from, }); }; var spawnNewPortal = async (plugin, evt) => { - const { path, leaf, el, source, ref: ref2, from, to, type } = evt.detail; - spawnLeafFromFile(plugin, leaf, source, path, el, type, from, to, null, (newLeaf) => { + const { path, leaf, el, source, ref: ref2, from, to } = evt.detail; + spawnLeafFromFile(plugin, leaf, source, path, el, from, to, null, (newLeaf) => { var _a2, _b2, _c2; if (!((_a2 = newLeaf == null ? void 0 : newLeaf.view) == null ? void 0 : _a2.editor)) { return; @@ -52579,7 +52603,6 @@ var spawnNewPortal = async (plugin, evt) => { const view = (_b2 = newLeaf.view.editor) == null ? void 0 : _b2.cm; view.dispatch({ annotations: [ - portalTypeAnnotation.of(evt.detail.type), flowIDAnnotation.of(evt.detail.id) ] }); @@ -52639,7 +52662,7 @@ var FlowView = k3((props2, ref2) => { triggerMenu(e4) { var _a3, _b2; if (((_b2 = (_a3 = leafRef.current) == null ? void 0 : _a3.view) == null ? void 0 : _b2.editor) && fileRef.current) { - const menu = new import_obsidian36.Menu(); + const menu = new import_obsidian35.Menu(); leafRef.current.view.onPaneMenu(menu, "more-options"); if (isMouseEvent(e4)) { menu.showAtPosition({ x: e4.pageX, y: e4.pageY }); @@ -52663,7 +52686,6 @@ var FlowView = k3((props2, ref2) => { const div = flowRef.current; let file; const path = uriByString(props2.plugin, props2.path, props2.source); - const { ref: refStr, type } = path; let from = props2.from; let to = props2.to; if (path.type == "file") { @@ -52685,14 +52707,12 @@ var FlowView = k3((props2, ref2) => { } } setLoaded(true); - const portalType = type == "tag" || type == "folder" ? "context" : "doc"; await spawnLeafFromFile( props2.plugin, props2.leaf, props2.source, path, div, - portalType, from, to, file, @@ -52883,7 +52903,9 @@ var FrameNodeView = (props2) => { plugin: props2.plugin, editable: !props2.treeNode.isRef, menuRef - }) : (props2.treeNode.node.type == "column" || props2.treeNode.node.type == "container") && props2.treeNode.children.length == 0 ? /* @__PURE__ */ Cn.createElement(RowPlaceholder, { + }) : props2.treeNode.node.type == "content" ? /* @__PURE__ */ Cn.createElement(ContentNodeView, { + editable: !props2.treeNode.isRef + }, props2.children) : (props2.treeNode.node.type == "column" || props2.treeNode.node.type == "container") && props2.treeNode.children.length == 0 ? /* @__PURE__ */ Cn.createElement(RowPlaceholder, { plugin: props2.plugin, id: props2.treeNode.id, parentId: props2.treeNode.node.parentId @@ -52893,7 +52915,7 @@ var FrameNodeView = (props2) => { key: i4, treeNode: c4, instance: props2.instance - })); + }, props2.children)); const parseAs = (role) => role == "checkbox" || role == "text" || role == "range" || role == "number" ? "input" : role; const tag = (_c2 = parseAs((_b2 = (_a2 = props2.instance.state[props2.treeNode.id]) == null ? void 0 : _a2.styles) == null ? void 0 : _b2.as)) != null ? _c2 : "div"; const type = tag == "input" ? (_e2 = (_d2 = props2.instance.state[props2.treeNode.id]) == null ? void 0 : _d2.styles) == null ? void 0 : _e2.as : null; @@ -53085,7 +53107,7 @@ var SelectableFrameNode = (props2) => { }; // src/react/components/SpaceView/Frames/FrameEditorView.tsx -var import_obsidian37 = require("obsidian"); +var import_obsidian36 = require("obsidian"); // src/react/components/SpaceView/Frames/Setters/CodeEditorSetter.tsx var CodeEditorSetter = (props2) => { @@ -53308,7 +53330,7 @@ var openFrameEditor = async (plugin, path, schema) => { window.dispatchEvent(evt); } }; -var FrameEditorView = class extends import_obsidian37.ItemView { +var FrameEditorView = class extends import_obsidian36.ItemView { constructor(leaf, plugin, viewType) { super(leaf); this.navigation = true; @@ -53380,8 +53402,8 @@ var FrameEditorView = class extends import_obsidian37.ItemView { }; // src/react/components/UI/Modals/saveViewModal.ts -var import_obsidian38 = require("obsidian"); -var SaveViewModal = class extends import_obsidian38.Modal { +var import_obsidian37 = require("obsidian"); +var SaveViewModal = class extends import_obsidian37.Modal { constructor(schema, saveSchema, action) { super(app); this.schema = schema; @@ -53441,12 +53463,22 @@ var SaveViewModal = class extends import_obsidian38.Modal { // src/react/components/SpaceView/Contexts/ContextBuilder/ContextFrameView.tsx var PLACEHOLDER_ID2 = "_placeholder"; var ContextFrameView = (props2) => { + const [selectedType, setSelectedType] = h2( + "frame" + ); const { predicate, savePredicate, cols, data: data2 } = q2(ContextEditorContext); const { frameSchemas, saveSchema } = q2(FramesMDBContext); const { spaceInfo } = q2(SpaceContext); - const selectedFrame = (predicate == null ? void 0 : predicate.frame) ? uriByString(props2.plugin, predicate.frame).ref : null; + const selectedGroup = F2( + () => predicate && predicate["frameGroup"] ? uriByString(props2.plugin, predicate["frameGroup"]).ref : null, + [predicate] + ); + const selectedFrame = F2( + () => predicate && predicate["frame"] ? uriByString(props2.plugin, predicate["frame"]).ref : null, + [predicate] + ); const selectFrame = (frameRef) => { - savePredicate({ ...predicate, view: "frame", frame: frameRef }); + savePredicate({ ...predicate, view: "frame", [selectedType]: frameRef }); }; const setFrameProps = (frameProps) => { savePredicate({ ...predicate, frameProps }); @@ -53488,7 +53520,19 @@ var ContextFrameView = (props2) => { }; return /* @__PURE__ */ Cn.createElement(Cn.Fragment, null, /* @__PURE__ */ Cn.createElement("div", { className: "mk-context-view-editor" - }, selectedFrame ? /* @__PURE__ */ Cn.createElement(DndContext, { + }, /* @__PURE__ */ Cn.createElement("div", { + onClick: () => setSelectedType("frameGroup") + }, "Group"), /* @__PURE__ */ Cn.createElement("div", { + onClick: () => setSelectedType("frame") + }, "Item"), frameSchemas.filter((f4) => f4.type == "listitem").map((f4, i4) => /* @__PURE__ */ Cn.createElement("div", { + key: i4, + onClick: () => selectFrame(`${spaceInfo.path}/#*${f4.id}`), + onContextMenu: () => openFrameEditor(props2.plugin, spaceInfo.path, f4.id) + }, /* @__PURE__ */ Cn.createElement("div", { + dangerouslySetInnerHTML: { + __html: stickerFromString("lucide//square", props2.plugin) + } + }), f4.name)), selectedGroup ? /* @__PURE__ */ Cn.createElement(DndContext, { sensors, measuring: { droppable: { @@ -53497,68 +53541,34 @@ var ContextFrameView = (props2) => { } }, /* @__PURE__ */ Cn.createElement(FramesMDBProvider, { plugin: props2.plugin, - schema: selectedFrame + schema: selectedGroup }, /* @__PURE__ */ Cn.createElement(FramesEditorProvider, { plugin: props2.plugin, - props: data2[0], editMode: 1 }, /* @__PURE__ */ Cn.createElement(FrameListView, { plugin: props2.plugin, cols - })))) : predicate.view == "table" ? /* @__PURE__ */ Cn.createElement("div", { - className: "mk-table" - }, /* @__PURE__ */ Cn.createElement("table", null, /* @__PURE__ */ Cn.createElement("tr", null, cols.map((f4, i4) => /* @__PURE__ */ Cn.createElement("th", { + }, selectedFrame ? data2.map((f4, i4) => /* @__PURE__ */ Cn.createElement(DndContext, { key: i4, - className: "mk-th" - }, /* @__PURE__ */ Cn.createElement("div", { - className: "mk-col-header" - }, f4.name)))), /* @__PURE__ */ Cn.createElement("tr", null, cols.map((f4, i4) => { - var _a2; - return /* @__PURE__ */ Cn.createElement("td", { - key: i4, - className: "mk-td" - }, /* @__PURE__ */ Cn.createElement(DataTypeView, { - column: f4, - editable: false, - initialValue: (_a2 = data2[0]) == null ? void 0 : _a2[f4.name], - row: data2[0], - plugin: props2.plugin - })); - })))) : /* @__PURE__ */ Cn.createElement(Cn.Fragment, null)), /* @__PURE__ */ Cn.createElement("div", { - className: "mk-context-view-selector" - }, /* @__PURE__ */ Cn.createElement("div", { - onClick: () => saveViewType("table") - }, /* @__PURE__ */ Cn.createElement("div", { - dangerouslySetInnerHTML: { - __html: stickerFromString("lucide//table-2", props2.plugin) - } - }), "Table"), /* @__PURE__ */ Cn.createElement("div", { - onClick: () => saveViewType("list") - }, /* @__PURE__ */ Cn.createElement("div", { - dangerouslySetInnerHTML: { - __html: stickerFromString("lucide//layout-list", props2.plugin) - } - }), "List"), /* @__PURE__ */ Cn.createElement("div", { - onClick: () => saveViewType("card") - }, /* @__PURE__ */ Cn.createElement("div", { - dangerouslySetInnerHTML: { - __html: stickerFromString("lucide//layout-grid", props2.plugin) - } - }), "Card"), /* @__PURE__ */ Cn.createElement("div", { - onClick: () => saveViewType("flow") - }, /* @__PURE__ */ Cn.createElement("div", { - dangerouslySetInnerHTML: { - __html: stickerFromString("lucide//infinity", props2.plugin) + sensors, + measuring: { + droppable: { + strategy: MeasuringStrategy.Always + } } - }), "Flow"), frameSchemas.filter((f4) => f4.type == "listitem").map((f4, i4) => /* @__PURE__ */ Cn.createElement("div", { - key: i4, - onClick: () => selectFrame(`${spaceInfo.path}/#*${f4.id}`), - onContextMenu: () => openFrameEditor(props2.plugin, spaceInfo.path, f4.id) + }, /* @__PURE__ */ Cn.createElement(FramesMDBProvider, { + plugin: props2.plugin, + schema: selectedFrame + }, /* @__PURE__ */ Cn.createElement(FramesEditorProvider, { + plugin: props2.plugin, + props: f4, + editMode: 1 + }, /* @__PURE__ */ Cn.createElement(FrameListView, { + plugin: props2.plugin, + cols + }))))) : /* @__PURE__ */ Cn.createElement(Cn.Fragment, null))))) : /* @__PURE__ */ Cn.createElement(Cn.Fragment, null)), /* @__PURE__ */ Cn.createElement("div", { + className: "mk-context-view-selector" }, /* @__PURE__ */ Cn.createElement("div", { - dangerouslySetInnerHTML: { - __html: stickerFromString("lucide//square", props2.plugin) - } - }), f4.name)), /* @__PURE__ */ Cn.createElement("div", { onClick: () => addFrame() }, /* @__PURE__ */ Cn.createElement("div", { dangerouslySetInnerHTML: { @@ -53626,7 +53636,7 @@ var FrameListView = (props2) => { plugin: props2.plugin, treeNode: node, instance - }); + }, props2.children); }; useDndMonitor({ onDragStart({ active }) { @@ -53779,7 +53789,7 @@ var FrameListView = (props2) => { plugin: props2.plugin, treeNode: _instance.root, instance: _instance - }), /* @__PURE__ */ Cn.createElement(RowPlaceholder, { + }, props2.children), /* @__PURE__ */ Cn.createElement(RowPlaceholder, { plugin: props2.plugin, id: PLACEHOLDER_ID2, parentId: frameSchema.id @@ -54042,7 +54052,7 @@ function SortableItem2(props2) { } // src/react/components/UI/Modals/contextEditorModal.tsx -var ContextEditorModal = class extends import_obsidian39.Modal { +var ContextEditorModal = class extends import_obsidian38.Modal { constructor(plugin, space, db, view, type) { super(plugin.app); this.space = space; @@ -54161,6 +54171,7 @@ var FilterBar = (props2) => { schema, setSchema, setSearchString, + setEditMode, predicate, savePredicate, hideColumn, @@ -54212,7 +54223,7 @@ var FilterBar = (props2) => { }); }; const viewContextMenu = (e4, _schema) => { - const fileMenu = new import_obsidian40.Menu(); + const fileMenu = new import_obsidian39.Menu(); fileMenu.addSeparator(); fileMenu.addItem((menuItem) => { menuItem.setTitle("Copy Embed Link"); @@ -54249,7 +54260,7 @@ var FilterBar = (props2) => { } }; const showFilterMenu = (e4) => { - const menu = new import_obsidian40.Menu(); + const menu = new import_obsidian39.Menu(); menu.addItem((item) => { item.setTitle(i18n_default.menu.tableView); item.setIcon("table-2"); @@ -54581,7 +54592,7 @@ var FilterBar = (props2) => { case "text": case "number": { - const menu = new import_obsidian40.Menu(); + const menu = new import_obsidian39.Menu(); menu.setUseNativeMenu(false); const saveFilterValue = (value) => { const newFilter = { @@ -54787,7 +54798,7 @@ var SpaceQuery = (props2) => { case "text": case "number": { - const menu = new import_obsidian41.Menu(); + const menu = new import_obsidian40.Menu(); menu.setUseNativeMenu(false); menu.addItem((menuItem) => { inputMenuItem( @@ -55066,7 +55077,7 @@ var SpaceQuery = (props2) => { ); const frontmatter = allMetadataForFiles( props2.plugin, - allFiles.map((f5) => getAbstractFileAtPath(props2.plugin, f5.path)).filter((f5) => f5 instanceof import_obsidian41.TFile) + allFiles.map((f5) => getAbstractFileAtPath(props2.plugin, f5.path)).filter((f5) => f5 instanceof import_obsidian40.TFile) ); const fmTypes = guestimateTypes( allFiles.map((f5) => f5.path), @@ -55236,13 +55247,14 @@ var SpaceEditor = (props2) => { const parentPath = ((_a3 = props2.space) == null ? void 0 : _a3.parent) ? props2.space.parent : ((_b3 = props2.parent) == null ? void 0 : _b3.type) == "folder" ? props2.parent.path : "/"; const newPath = !parentPath || parentPath == "/" ? newName : parentPath + "/" + newName; if (newName.length == 0) { - new import_obsidian42.Notice(i18n_default.notice.newSpaceName); + new import_obsidian41.Notice(i18n_default.notice.newSpaceName); return; } if (props2.plugin.index.spacesIndex.has(newPath) && (!props2.space || newPath != props2.space.path)) { - new import_obsidian42.Notice(i18n_default.notice.duplicateSpaceName); + new import_obsidian41.Notice(i18n_default.notice.duplicateSpaceName); return; } + props2.close(); if (props2.space) { saveSpaceCache(props2.plugin, props2.space.space, metadata).then((f4) => { if (newName != props2.space.name) @@ -55265,7 +55277,6 @@ var SpaceEditor = (props2) => { if (!props2.dontOpen) openSpace(newPath, props2.plugin, false); } - props2.close(); }; p2(() => { if (ref2.current && name.length == 0) { @@ -55386,7 +55397,7 @@ var SpaceEditor = (props2) => { var SpaceEditor_default = SpaceEditor; // src/react/components/UI/Modals/editSpaceModal.tsx -var EditSpaceModal = class extends import_obsidian43.Modal { +var EditSpaceModal = class extends import_obsidian42.Modal { constructor(plugin, space, action, metadata, parent, dontOpen) { super(plugin.app); this.space = space; @@ -55428,8 +55439,8 @@ var EditSpaceModal = class extends import_obsidian43.Modal { }; // src/react/components/UI/Modals/deleteModal.tsx -var import_obsidian44 = require("obsidian"); -var DeleteModal = class extends import_obsidian44.Modal { +var import_obsidian43 = require("obsidian"); +var DeleteModal = class extends import_obsidian43.Modal { constructor(plugin, confirmAction, title, message) { super(plugin.app); this.confirmAction = confirmAction; @@ -55467,8 +55478,8 @@ var DeleteModal = class extends import_obsidian44.Modal { }; // src/react/components/UI/Modals/tagChangeModal.tsx -var import_obsidian45 = require("obsidian"); -var TagChangeModal = class extends import_obsidian45.Modal { +var import_obsidian44 = require("obsidian"); +var TagChangeModal = class extends import_obsidian44.Modal { constructor(plugin, action, tag) { super(plugin.app); this.action = action; @@ -55532,7 +55543,7 @@ var TagChangeModal = class extends import_obsidian45.Modal { // src/react/components/UI/Menus/fileMenu.tsx var showSpaceAddMenu = (plugin, e4, space, dontOpen) => { - const fileMenu = new import_obsidian46.Menu(); + const fileMenu = new import_obsidian45.Menu(); fileMenu.addItem((menuItem) => { menuItem.setIcon("edit"); menuItem.setTitle(i18n_default.buttons.createNote); @@ -55584,7 +55595,7 @@ var showSpaceAddMenu = (plugin, e4, space, dontOpen) => { var triggerSpaceMenu = (plugin, space, e4, activeFile, parentSpace) => { if (!space) return; - const spaceMenu = new import_obsidian46.Menu(); + const spaceMenu = new import_obsidian45.Menu(); spaceMenu.addItem((menuItem) => { menuItem.setIcon("edit"); menuItem.setTitle(i18n_default.buttons.createNote); @@ -55632,7 +55643,7 @@ var triggerSpaceMenu = (plugin, space, e4, activeFile, parentSpace) => { plugin, space.type == "folder" ? space.path : `${plugin.settings.spacesFolder}/${space.name}` ); - if (file instanceof import_obsidian46.TFolder) { + if (file instanceof import_obsidian45.TFolder) { const leaf = plugin.app.workspace.getLeaf(false); app.workspace.setActiveLeaf(leaf, { focus: true }); leaf.openFile(file, { eState: { focus: true } }); @@ -55706,7 +55717,7 @@ var triggerSpaceMenu = (plugin, space, e4, activeFile, parentSpace) => { menuItem.setTitle(i18n_default.menu.sortBy); menuItem.setIcon("sort-desc"); menuItem.onClick((ev) => { - const sortMenu = new import_obsidian46.Menu(); + const sortMenu = new import_obsidian45.Menu(); sortMenu.addItem((menuItem2) => { menuItem2.setIcon("arrow-up-down"); menuItem2.setTitle(i18n_default.menu.groupSpaces); @@ -55871,7 +55882,7 @@ var triggerSpaceMenu = (plugin, space, e4, activeFile, parentSpace) => { }; var triggerMultiFileMenu = (plugin, selectedFiles, e4) => { const files = selectedFiles.map((s5) => s5.item.path); - const fileMenu = new import_obsidian46.Menu(); + const fileMenu = new import_obsidian45.Menu(); fileMenu.addSeparator(); fileMenu.addItem((menuItem) => { menuItem.setIcon("pin"); @@ -55978,7 +55989,7 @@ var triggerMultiFileMenu = (plugin, selectedFiles, e4) => { }; var triggerFileMenu = (plugin, file, isFolder, e4, space) => { const cache = plugin.index.filesIndex.get(file.path); - const fileMenu = new import_obsidian46.Menu(); + const fileMenu = new import_obsidian45.Menu(); fileMenu.addSeparator(); fileMenu.addItem((menuItem) => { menuItem.setIcon("pin"); @@ -56000,12 +56011,12 @@ var triggerFileMenu = (plugin, file, isFolder, e4, space) => { ); }); }); - if (file instanceof import_obsidian46.TFile && file.extension == "md") + if (file instanceof import_obsidian45.TFile && file.extension == "md") fileMenu.addItem((menuItem) => { menuItem.setTitle(i18n_default.menu.changeToFolderNote); menuItem.setIcon("file-plus-2"); menuItem.onClick((ev) => { - if (file instanceof import_obsidian46.TFile) + if (file instanceof import_obsidian45.TFile) noteToFolderNote(plugin, file, true); }); }); @@ -56113,9 +56124,9 @@ var triggerFileMenu = (plugin, file, isFolder, e4, space) => { }; // src/react/components/UI/Menus/fmMenu.tsx -var import_obsidian47 = require("obsidian"); +var import_obsidian46 = require("obsidian"); var showFMMenu = (plugin, position, property, deleteProperty, syncProperty, renameProperty, changeType) => { - const menu = new import_obsidian47.Menu(); + const menu = new import_obsidian46.Menu(); menu.setUseNativeMenu(false); menu.addItem((menuItem) => { var _a2; @@ -56513,7 +56524,7 @@ var FileContextList = (props2) => { }; // src/react/components/MarkdownEditor/ReadingViewHeader.tsx -var import_obsidian48 = require("obsidian"); +var import_obsidian47 = require("obsidian"); var NoteBannerView = (props2) => { var _a2; const [banner, setBanner] = h2(null); @@ -56528,10 +56539,10 @@ var NoteBannerView = (props2) => { } }, [props2.link]); const triggerBannerContextMenu = (e4) => { - if (!props2.path || props2.path.type == "file") + if (!props2.path) return; e4.preventDefault(); - const fileMenu = new import_obsidian48.Menu(); + const fileMenu = new import_obsidian47.Menu(); fileMenu.addSeparator(); fileMenu.addItem((menuItem) => { menuItem.setTitle(i18n_default.buttons.changeBanner); @@ -56669,7 +56680,7 @@ var InlineFileContextView = (props2) => { if (metadataFilePath) addTagToNote( props2.plugin, - newSpaceURI.space, + newSpaceURI.authority, getAbstractFileAtPath(props2.plugin, metadataFilePath) ); } @@ -57321,7 +57332,8 @@ var SpaceComponent = (props2) => { className: "mk-space-scroller markdown-source-view mod-cm6 is-readable-line-width" }, spaceCache && /* @__PURE__ */ Cn.createElement(NoteBannerView, { plugin: props2.plugin, - link: spaceCache.metadata.banner + link: spaceCache.metadata.banner, + path: uriByString(props2.plugin, spaceCache.space.defPath) }), (spaceCache == null ? void 0 : spaceCache.metadata.banner) && /* @__PURE__ */ Cn.createElement("div", { className: "mk-spacer", style: { @@ -57393,7 +57405,7 @@ var SpaceOuter = (props2) => { // src/react/components/SpaceView/Contexts/SpaceView.tsx var SPACE_VIEW_TYPE = "mk-space"; -var SpaceView = class extends import_obsidian49.ItemView { +var SpaceView = class extends import_obsidian48.ItemView { constructor(leaf, plugin, viewType) { super(leaf); this.navigation = true; @@ -57483,7 +57495,7 @@ var tFileToAFile = (file) => { var _a2, _b2, _c2; if (!file) return null; - if (file instanceof import_obsidian50.TFile && file.stat) { + if (file instanceof import_obsidian49.TFile && file.stat) { return { isFolder: false, name: file.basename, @@ -57508,7 +57520,7 @@ var defaultNoteFolder = (plugin, activeFile) => { }; var defaultConfigFile = async (plugin) => { return await plugin.app.vault.adapter.read( - (0, import_obsidian50.normalizePath)(plugin.app.vault.configDir + "/app.json") + (0, import_obsidian49.normalizePath)(plugin.app.vault.configDir + "/app.json") ); }; var appendFilesMetaData = (plugin, propType, filesString) => { @@ -57601,7 +57613,7 @@ function getAllAbstractFilesInVault(plugin) { const rootFolder = plugin.app.vault.getRoot(); function recursiveFx(folder) { for (const child of folderChildren(plugin, folder)) { - if (child instanceof import_obsidian50.TFolder) { + if (child instanceof import_obsidian49.TFolder) { const childFolder = child; if (childFolder.children) recursiveFx(childFolder); @@ -57619,7 +57631,7 @@ var getFolderFromPath = (plugin, path) => { const afile = getAbstractFileAtPath(plugin, removeTrailingSlashFromFolder(path)); if (!afile) return null; - return afile instanceof import_obsidian50.TFolder ? afile : afile.parent; + return afile instanceof import_obsidian49.TFolder ? afile : afile.parent; }; var getFolderPathFromString = (plugin, file) => { var _a2; @@ -57719,7 +57731,7 @@ function getAllFoldersInVault(plugin) { folders.push(rootFolder); function recursiveFx(folder) { for (const child of folder.children) { - if (child instanceof import_obsidian50.TFolder) { + if (child instanceof import_obsidian49.TFolder) { const childFolder = child; folders.push(childFolder); if (childFolder.children) @@ -57731,9 +57743,9 @@ function getAllFoldersInVault(plugin) { return folders; } var openAFile = async (file, plugin, newLeaf) => { - if (file instanceof import_obsidian50.TFolder) { + if (file instanceof import_obsidian49.TFolder) { openTFolder(file, plugin, newLeaf); - } else if (file instanceof import_obsidian50.TFile) { + } else if (file instanceof import_obsidian49.TFile) { openTFile(file, plugin, newLeaf); } else { return; @@ -57842,12 +57854,12 @@ var createNewMarkdownFile = async (plugin, folder, newFileName, content, dontOpe return newFile; }; var platformIsMobile = () => { - return import_obsidian50.Platform.isMobile; + return import_obsidian49.Platform.isMobile; }; var noteToFolderNote = async (plugin, file, open) => { const folderPath = fileNameToString(file.path); const folder = getAbstractFileAtPath(plugin, folderPath); - if (folder && folder instanceof import_obsidian50.TFolder) { + if (folder && folder instanceof import_obsidian49.TFolder) { if (open) { openTFolder(folder, plugin, false); } @@ -57877,7 +57889,7 @@ var folderNoteCache = (plugin, file) => { if (!folderPath) return null; const folder = getAbstractFileAtPath(plugin, folderPath); - if (folder instanceof import_obsidian50.TFolder && folder.name == file.name) { + if (folder instanceof import_obsidian49.TFolder && folder.name == file.name) { return { folderNotePath: file.path, folderPath: folder.path @@ -57921,7 +57933,7 @@ var uriForFolder = (path) => { type: "vault", basePath: path, fullPath: path, - space: null, + authority: null, scheme: "vault", path, alias: null, @@ -57934,7 +57946,7 @@ var uriForFolder = (path) => { type: "folder", basePath: path, fullPath: path, - space: null, + authority: null, path, scheme: "vault", alias: null, @@ -58012,9 +58024,9 @@ function uriByString(plugin, uri, source) { } path = uri; return { - basePath: `${space ? `spaces://${space}` : removeTrailingSlashFromFolder(path)}`, + basePath: `${space ? `${scheme}://${space}` : removeTrailingSlashFromFolder(path)}`, type: uriTypeByString(plugin, space, path, source), - space, + authority: space, fullPath, scheme, path: removeTrailingSlashFromFolder(uri), @@ -58043,10 +58055,10 @@ var uriTypeByString = (plugin, space, file, source) => { } else { portalFile = plugin.app.vault.getAbstractFileByPath(file); } - if (portalFile instanceof import_obsidian51.TFolder) { + if (portalFile instanceof import_obsidian50.TFolder) { return "folder"; } - if (portalFile instanceof import_obsidian51.TFile || file.match(relativeURLRegex)) { + if (portalFile instanceof import_obsidian50.TFile || file.match(relativeURLRegex)) { return "file"; } if (file.match(urlRegex)) @@ -58076,7 +58088,7 @@ var folderForTagSpace = (space, plugin) => plugin.settings.spacesFolder + "/" + // src/utils/contexts/contexts.ts var renamePath = async (plugin, path, newName) => { if (path.type == "tag") { - await renameTag(plugin, path.space, newName); + await renameTag(plugin, path.authority, newName); } else if (path.type == "folder") { return await renameFile(plugin, getAbstractFileAtPath(plugin, path.path), newName); } @@ -58088,7 +58100,7 @@ var contextViewEmbedStringFromContext = (space, schema) => { if (space.uri.type == "vault") { return `![![/#*${schema}]]`; } - return `![![${space.path}#*${schema}]]`; + return `![![${space.path}/#*${schema}]]`; }; var contextEmbedStringFromContext = (space, schema) => { if (space.uri.type == "folder") { @@ -58097,7 +58109,7 @@ var contextEmbedStringFromContext = (space, schema) => { if (space.uri.type == "vault") { return `![![/#^${schema}]]`; } - return `![![${space.path}#^${schema}]]`; + return `![![${space.path}/#^${schema}]]`; }; var spaceFromTag = (plugin, tag, readOnly) => { const path = tagSpacePathFromTag(tag); @@ -58137,7 +58149,7 @@ var spaceInfoByPath = (plugin, contextPath) => { if (path.type == "folder") { return spaceFromFolder(plugin, removeTrailingSlashFromFolder(path.path)); } else if (path.type == "tag") { - return spaceFromTag(plugin, path.space); + return spaceFromTag(plugin, path.authority); } else if (path.type == "vault") { return spaceFromFolder(plugin, "/"); } @@ -58543,8 +58555,8 @@ var FlowEditorSelector = class extends import_view4.WidgetType { const div = document.createElement("div"); div.toggleClass("mk-floweditor-selector", true); const reactEl = createRoot(div); - if (this.info.link && view.state.field(import_obsidian52.editorInfoField, false)) { - const infoField = view.state.field(import_obsidian52.editorInfoField, false); + if (this.info.link && view.state.field(import_obsidian51.editorInfoField, false)) { + const infoField = view.state.field(import_obsidian51.editorInfoField, false); const file = infoField.file; const path = uriByString(this.plugin, this.info.link, file.path); reactEl.render( @@ -59158,10 +59170,10 @@ var cmExtensions = (plugin, mobile) => { }; // src/main.ts -var import_obsidian68 = require("obsidian"); +var import_obsidian67 = require("obsidian"); // src/react/components/SpaceView/Editor/MakeMenu/MakeMenu.tsx -var import_obsidian53 = require("obsidian"); +var import_obsidian52 = require("obsidian"); // src/react/components/SpaceView/Editor/MakeMenu/commands/default.ts var default_default2 = [ @@ -59277,7 +59289,7 @@ function resolveCommands(plugin) { } // src/react/components/SpaceView/Editor/MakeMenu/MakeMenu.tsx -var MakeMenu = class extends import_obsidian53.EditorSuggest { +var MakeMenu = class extends import_obsidian52.EditorSuggest { constructor(app2, plugin) { super(app2); this.inCmd = false; @@ -59371,8 +59383,8 @@ var MakeMenu = class extends import_obsidian53.EditorSuggest { }; // src/react/components/SpaceView/Editor/StickerMenu/StickerMenu.tsx -var import_obsidian54 = require("obsidian"); -var StickerMenu = class extends import_obsidian54.EditorSuggest { +var import_obsidian53 = require("obsidian"); +var StickerMenu = class extends import_obsidian53.EditorSuggest { constructor(app2, plugin) { super(app2); this.inCmd = false; @@ -59536,7 +59548,7 @@ var replaceAllEmbed = (el, ctx, plugin) => { }; // src/react/components/Navigator/FileTreeView.tsx -var import_obsidian57 = require("obsidian"); +var import_obsidian56 = require("obsidian"); // src/react/context/SidebarContext.tsx var import_lodash12 = __toESM(require_lodash()); @@ -59648,6 +59660,9 @@ var SidebarProvider = (props2) => { }, props2.children); }; +// src/react/components/Navigator/SpaceTree/SpaceTreeView.tsx +var import_lodash13 = __toESM(require_lodash()); + // src/react/components/Navigator/SpaceTree/SpaceTreeItem.tsx var import_classnames6 = __toESM(require_classnames()); @@ -61805,7 +61820,7 @@ var VirtualizedList = Cn.memo(function VirtualizedList2(props2) { (index) => rowHeight(index), [flattenedTree] ), - overscan: plugin.settings.spacesPerformance ? 0 : 20 + overscan: 0 }); vRef.current = rowVirtualizer; rowVirtualizer.scrollToIndex; @@ -62241,30 +62256,33 @@ var FileExplorerComponent = (props2) => { () => flattenedTree.map(({ id: id2 }) => id2), [flattenedTree] ); - const selectRange2 = (fromId) => { - const startIndex = sortedIds.findIndex((f4) => f4 == fromId); - const selectedFilesStartIndex = sortedIds.findIndex( - (f4) => { - var _a2; - return f4 == ((_a2 = selectedFiles[0]) == null ? void 0 : _a2.id); - } - ); - const selectedFilesEndIndex = sortedIds.findIndex( - (f4) => { - var _a2; - return f4 == ((_a2 = selectedFiles[selectedFiles.length - 1]) == null ? void 0 : _a2.id); - } - ); - if (startIndex < selectedFilesStartIndex) { - setSelectedFiles( - flattenedTree.slice(startIndex, selectedFilesEndIndex + 1).filter((f4) => f4.item) + const selectRange2 = T2( + (fromId) => { + const startIndex = sortedIds.findIndex((f4) => f4 == fromId); + const selectedFilesStartIndex = sortedIds.findIndex( + (f4) => { + var _a2; + return f4 == ((_a2 = selectedFiles[0]) == null ? void 0 : _a2.id); + } ); - } else { - setSelectedFiles( - flattenedTree.slice(selectedFilesStartIndex, startIndex + 1).filter((f4) => f4.item) + const selectedFilesEndIndex = sortedIds.findIndex( + (f4) => { + var _a2; + return f4 == ((_a2 = selectedFiles[selectedFiles.length - 1]) == null ? void 0 : _a2.id); + } ); - } - }; + if (startIndex < selectedFilesStartIndex) { + setSelectedFiles( + flattenedTree.slice(startIndex, selectedFilesEndIndex + 1).filter((f4) => f4.item) + ); + } else { + setSelectedFiles( + flattenedTree.slice(selectedFilesStartIndex, startIndex + 1).filter((f4) => f4.item) + ); + } + }, + [sortedIds, selectedFiles, setSelectedFiles, flattenedTree] + ); const [projected, setProjected] = h2(null); p2(() => { const dragDepth = getDragDepth(offset2.x, indentationWidth); @@ -62279,7 +62297,7 @@ var FileExplorerComponent = (props2) => { activeIndex < overIndex, modifier ) : null; - setProjected(_projected); + setProjected((p3) => !(0, import_lodash13.isEqual)(p3, _projected) ? _projected : p3); }, [ activeId, flattenedTree, @@ -62529,11 +62547,11 @@ var FileExplorerComponent = (props2) => { // src/react/components/Navigator/MainMenu.tsx var import_classnames7 = __toESM(require_classnames()); -var import_obsidian56 = require("obsidian"); +var import_obsidian55 = require("obsidian"); // src/react/components/UI/Modals/hiddenFilesModal.tsx -var import_obsidian55 = require("obsidian"); -var HiddenItemsModal = class extends import_obsidian55.Modal { +var import_obsidian54 = require("obsidian"); +var HiddenItemsModal = class extends import_obsidian54.Modal { constructor(plugin) { super(plugin.app); this.plugin = plugin; @@ -62766,7 +62784,7 @@ var MainMenu = (props2) => { }; const showMenu = () => { const { spaceActive, leafs } = refreshLeafs(); - const menu = new import_obsidian56.Menu(); + const menu = new import_obsidian55.Menu(); !spaceActive && menu.addItem((menuItem) => { menuItem.setIcon("lucide-arrow-left"); menuItem.setTitle(i18n_default.menu.backToSpace); @@ -63456,14 +63474,14 @@ var MainList = (props2) => { var FILE_TREE_VIEW_TYPE = "mk-file-view"; var VIEW_DISPLAY_TEXT = "Spaces"; var ICON = "layout-grid"; -var FileTreeView = class extends import_obsidian57.ItemView { +var FileTreeView = class extends import_obsidian56.ItemView { constructor(leaf, plugin) { super(leaf); this.navigation = false; this.plugin = plugin; } revealInFolder(file) { - if (file instanceof import_obsidian57.TFolder) { + if (file instanceof import_obsidian56.TFolder) { this.plugin.app.workspace.activeLeaf.setViewState({ type: SPACE_VIEW_TYPE, state: { path: file.path } @@ -63517,7 +63535,7 @@ var FileTreeView = class extends import_obsidian57.ItemView { }; // src/settings/settings.ts -var import_obsidian58 = require("obsidian"); +var import_obsidian57 = require("obsidian"); var DEFAULT_SETTINGS = { defaultInitialization: false, filePreviewOnHover: false, @@ -63593,9 +63611,10 @@ var DEFAULT_SETTINGS = { enableDefaultSpaces: true, enableTagSpaces: true, enableHomeSpace: true, - showSpacePinIcon: true + showSpacePinIcon: true, + minimalFix: false }; -var MakeMDPluginSettingsTab = class extends import_obsidian58.PluginSettingTab { +var MakeMDPluginSettingsTab = class extends import_obsidian57.PluginSettingTab { constructor(app2, plugin) { super(app2, plugin); this.plugin = plugin; @@ -63607,7 +63626,7 @@ var MakeMDPluginSettingsTab = class extends import_obsidian58.PluginSettingTab { const { containerEl } = this; containerEl.empty(); containerEl.createEl("h1", { text: i18n_default.settings.sectionSidebar }); - new import_obsidian58.Setting(containerEl).setName(i18n_default.settings.spaces.name).setDesc(i18n_default.settings.spaces.desc).addToggle( + new import_obsidian57.Setting(containerEl).setName(i18n_default.settings.spaces.name).setDesc(i18n_default.settings.spaces.desc).addToggle( (toggle) => toggle.setValue(this.plugin.settings.spacesEnabled).onChange((value) => { this.plugin.settings.spacesEnabled = value; this.plugin.saveSettings(); @@ -63622,20 +63641,20 @@ var MakeMDPluginSettingsTab = class extends import_obsidian58.PluginSettingTab { if (this.plugin.settings.spacesEnabled) { containerEl.createEl("h3", { text: i18n_default.settings.sectionDefault }); const defaultSpaces = containerEl.createEl("div"); - new import_obsidian58.Setting(defaultSpaces).setName(i18n_default.settings.defaultSpaces.name).setDesc(i18n_default.settings.defaultSpaces.desc).addToggle( + new import_obsidian57.Setting(defaultSpaces).setName(i18n_default.settings.defaultSpaces.name).setDesc(i18n_default.settings.defaultSpaces.desc).addToggle( (toggle) => toggle.setValue(this.plugin.settings.enableDefaultSpaces).onChange((value) => { this.plugin.settings.enableDefaultSpaces = value; this.plugin.saveSettings(); }) ); if (this.plugin.settings.enableDefaultSpaces) { - new import_obsidian58.Setting(defaultSpaces).setName(i18n_default.settings.homeSpace.name).setDesc(i18n_default.settings.homeSpace.desc).addToggle( + new import_obsidian57.Setting(defaultSpaces).setName(i18n_default.settings.homeSpace.name).setDesc(i18n_default.settings.homeSpace.desc).addToggle( (toggle) => toggle.setValue(this.plugin.settings.enableHomeSpace).onChange((value) => { this.plugin.settings.enableHomeSpace = value; this.plugin.saveSettings(); }) ); - new import_obsidian58.Setting(defaultSpaces).setName(i18n_default.settings.tagSpaces.name).setDesc(i18n_default.settings.tagSpaces.desc).addToggle( + new import_obsidian57.Setting(defaultSpaces).setName(i18n_default.settings.tagSpaces.name).setDesc(i18n_default.settings.tagSpaces.desc).addToggle( (toggle) => toggle.setValue(this.plugin.settings.enableTagSpaces).onChange((value) => { this.plugin.settings.enableTagSpaces = value; this.plugin.saveSettings(); @@ -63644,98 +63663,105 @@ var MakeMDPluginSettingsTab = class extends import_obsidian58.PluginSettingTab { } containerEl.createEl("h3", { text: i18n_default.settings.sectionAppearance }); const spaceAppearances = containerEl.createEl("div"); - new import_obsidian58.Setting(spaceAppearances).setName(i18n_default.settings.sidebarTabs.name).setDesc(i18n_default.settings.sidebarTabs.desc).addToggle( + new import_obsidian57.Setting(spaceAppearances).setName(i18n_default.settings.sidebarTabs.name).setDesc(i18n_default.settings.sidebarTabs.desc).addToggle( (toggle) => toggle.setValue(this.plugin.settings.sidebarTabs).onChange((value) => { this.plugin.settings.sidebarTabs = value; this.plugin.saveSettings(); document.body.classList.toggle("mk-hide-tabs", !value); }) ); - new import_obsidian58.Setting(spaceAppearances).setName(i18n_default.settings.hideRibbon.name).setDesc(i18n_default.settings.hideRibbon.desc).addToggle( + new import_obsidian57.Setting(spaceAppearances).setName(i18n_default.settings.hideRibbon.name).setDesc(i18n_default.settings.hideRibbon.desc).addToggle( (toggle) => toggle.setValue(this.plugin.settings.showRibbon).onChange((value) => { this.plugin.settings.showRibbon = value; this.plugin.saveSettings(); document.body.classList.toggle("mk-hide-ribbon", !value); }) ); - new import_obsidian58.Setting(spaceAppearances).setName(i18n_default.settings.folderIndentationLines.name).setDesc(i18n_default.settings.folderIndentationLines.desc).addToggle( + new import_obsidian57.Setting(spaceAppearances).setName(i18n_default.settings.folderIndentationLines.name).setDesc(i18n_default.settings.folderIndentationLines.desc).addToggle( (toggle) => toggle.setValue(this.plugin.settings.folderIndentationLines).onChange((value) => { this.plugin.settings.folderIndentationLines = value; this.plugin.saveSettings(); document.body.classList.toggle("mk-folder-lines", value); }) ); - new import_obsidian58.Setting(spaceAppearances).setName(i18n_default.settings.spacesStickers.name).setDesc(i18n_default.settings.spacesStickers.desc).addToggle( + new import_obsidian57.Setting(spaceAppearances).setName(i18n_default.settings.spacesStickers.name).setDesc(i18n_default.settings.spacesStickers.desc).addToggle( (toggle) => toggle.setValue(this.plugin.settings.spacesStickers).onChange((value) => { this.plugin.settings.spacesStickers = value; this.plugin.saveSettings(); this.refreshView(); }) ); - new import_obsidian58.Setting(spaceAppearances).setName(i18n_default.settings.spacesAlias.name).setDesc(i18n_default.settings.spacesAlias.desc).addToggle( + new import_obsidian57.Setting(spaceAppearances).setName(i18n_default.settings.spacesAlias.name).setDesc(i18n_default.settings.spacesAlias.desc).addToggle( (toggle) => toggle.setValue(this.plugin.settings.spacesUseAlias).onChange((value) => { this.plugin.settings.spacesUseAlias = value; this.plugin.saveSettings(); this.refreshView(); }) ); - new import_obsidian58.Setting(spaceAppearances).setName(i18n_default.settings.readableLineWidth.name).setDesc(i18n_default.settings.readableLineWidth.desc).addToggle( + new import_obsidian57.Setting(spaceAppearances).setName(i18n_default.settings.readableLineWidth.name).setDesc(i18n_default.settings.readableLineWidth.desc).addToggle( (toggle) => toggle.setValue(this.plugin.settings.readableLineWidth).onChange((value) => { this.plugin.settings.readableLineWidth = value; this.plugin.saveSettings(); }) ); - new import_obsidian58.Setting(spaceAppearances).setName(i18n_default.settings.openSpacesOnLaunch.name).setDesc(i18n_default.settings.openSpacesOnLaunch.desc).addToggle( + new import_obsidian57.Setting(spaceAppearances).setName(i18n_default.settings.openSpacesOnLaunch.name).setDesc(i18n_default.settings.openSpacesOnLaunch.desc).addToggle( (toggle) => toggle.setValue(this.plugin.settings.openSpacesOnLaunch).onChange((value) => { this.plugin.settings.openSpacesOnLaunch = value; this.plugin.saveSettings(); }) ); - new import_obsidian58.Setting(spaceAppearances).setName(i18n_default.settings.spaceRowHeight.name).setDesc(i18n_default.settings.spaceRowHeight.desc).addText((text2) => { + new import_obsidian57.Setting(spaceAppearances).setName(i18n_default.settings.spaceRowHeight.name).setDesc(i18n_default.settings.spaceRowHeight.desc).addText((text2) => { text2.setValue(this.plugin.settings.spaceRowHeight.toString()).onChange(async (value) => { text2.setValue(parseInt(value).toString()); this.plugin.settings.spaceRowHeight = parseInt(value); await this.plugin.saveSettings(); }); }); + new import_obsidian57.Setting(spaceAppearances).setName("Minimal Theme Fix").setDesc("Apply fixes for the popular theme Minimal").addToggle( + (toggle) => toggle.setValue(this.plugin.settings.minimalFix).onChange((value) => { + this.plugin.settings.minimalFix = value; + this.plugin.saveSettings(); + document.body.classList.toggle("mk-minimal-fix", !value); + }) + ); containerEl.createEl("h3", { text: "Advanced" }); - new import_obsidian58.Setting(containerEl).setName(i18n_default.settings.expandFolder.name).setDesc(i18n_default.settings.expandFolder.desc).addToggle( + new import_obsidian57.Setting(containerEl).setName(i18n_default.settings.expandFolder.name).setDesc(i18n_default.settings.expandFolder.desc).addToggle( (toggle) => toggle.setValue(this.plugin.settings.expandFolderOnClick).onChange((value) => { this.plugin.settings.expandFolderOnClick = value; this.plugin.saveSettings(); }) ); - new import_obsidian58.Setting(containerEl).setName(i18n_default.settings.hoverPreview.name).setDesc(i18n_default.settings.hoverPreview.desc).addToggle( + new import_obsidian57.Setting(containerEl).setName(i18n_default.settings.hoverPreview.name).setDesc(i18n_default.settings.hoverPreview.desc).addToggle( (toggle) => toggle.setValue(this.plugin.settings.filePreviewOnHover).onChange((value) => { this.plugin.settings.filePreviewOnHover = value; this.plugin.saveSettings(); }) ); - new import_obsidian58.Setting(containerEl).setName(i18n_default.settings.activeFile.name).setDesc(i18n_default.settings.activeFile.desc).addToggle( + new import_obsidian57.Setting(containerEl).setName(i18n_default.settings.activeFile.name).setDesc(i18n_default.settings.activeFile.desc).addToggle( (toggle) => toggle.setValue(this.plugin.settings.revealActiveFile).onChange((value) => { this.plugin.settings.revealActiveFile = value; this.plugin.saveSettings(); }) ); - new import_obsidian58.Setting(containerEl).setName(i18n_default.settings.spacesFileExplorerDual.name).setDesc(i18n_default.settings.spacesFileExplorerDual.desc).addToggle( + new import_obsidian57.Setting(containerEl).setName(i18n_default.settings.spacesFileExplorerDual.name).setDesc(i18n_default.settings.spacesFileExplorerDual.desc).addToggle( (toggle) => toggle.setValue(this.plugin.settings.spacesDisablePatch).onChange((value) => { this.plugin.settings.spacesDisablePatch = value; this.plugin.saveSettings(); }) ); - new import_obsidian58.Setting(containerEl).setName(i18n_default.settings.spacesPerformance.name).setDesc(i18n_default.settings.spacesPerformance.desc).addToggle( + new import_obsidian57.Setting(containerEl).setName(i18n_default.settings.spacesPerformance.name).setDesc(i18n_default.settings.spacesPerformance.desc).addToggle( (toggle) => toggle.setValue(this.plugin.settings.spacesPerformance).onChange((value) => { this.plugin.settings.spacesPerformance = value; this.plugin.saveSettings(); }) ); - new import_obsidian58.Setting(containerEl).setName(i18n_default.settings.indexSVG.name).setDesc(i18n_default.settings.indexSVG.desc).addToggle( + new import_obsidian57.Setting(containerEl).setName(i18n_default.settings.indexSVG.name).setDesc(i18n_default.settings.indexSVG.desc).addToggle( (toggle) => toggle.setValue(this.plugin.settings.indexSVG).onChange((value) => { this.plugin.settings.indexSVG = value; this.plugin.saveSettings(); }) ); - new import_obsidian58.Setting(containerEl).setName(i18n_default.settings.spacesDeleteOption.name).setDesc(i18n_default.settings.spacesDeleteOption.desc).addDropdown((dropdown) => { + new import_obsidian57.Setting(containerEl).setName(i18n_default.settings.spacesDeleteOption.name).setDesc(i18n_default.settings.spacesDeleteOption.desc).addDropdown((dropdown) => { dropdown.addOption( "permanent", i18n_default.settings.spacesDeleteOptions.permanant @@ -63753,7 +63779,7 @@ var MakeMDPluginSettingsTab = class extends import_obsidian58.PluginSettingTab { }); } containerEl.createEl("h1", { text: "Context" }); - new import_obsidian58.Setting(containerEl).setName(i18n_default.settings.contexts.name).setDesc(i18n_default.settings.contexts.desc).addToggle( + new import_obsidian57.Setting(containerEl).setName(i18n_default.settings.contexts.name).setDesc(i18n_default.settings.contexts.desc).addToggle( (toggle) => toggle.setValue(this.plugin.settings.contextEnabled).onChange((value) => { this.plugin.settings.contextEnabled = value; this.plugin.saveSettings(); @@ -63761,27 +63787,27 @@ var MakeMDPluginSettingsTab = class extends import_obsidian58.PluginSettingTab { }) ); containerEl.createEl("h3", { text: i18n_default.settings.sectionAppearance }); - new import_obsidian58.Setting(containerEl).setName(i18n_default.settings.defaultDateFormat.name).setDesc(i18n_default.settings.defaultDateFormat.desc).addText((text2) => { + new import_obsidian57.Setting(containerEl).setName(i18n_default.settings.defaultDateFormat.name).setDesc(i18n_default.settings.defaultDateFormat.desc).addText((text2) => { text2.setValue(this.plugin.settings.defaultDateFormat).onChange(async (value) => { this.plugin.settings.defaultDateFormat = value; await this.plugin.saveSettings(); }); }); containerEl.createEl("h3", { text: i18n_default.settings.sectionAdvanced }); - new import_obsidian58.Setting(containerEl).setName(i18n_default.settings.openFileContext.name).setDesc(i18n_default.settings.openFileContext.desc).addToggle( + new import_obsidian57.Setting(containerEl).setName(i18n_default.settings.openFileContext.name).setDesc(i18n_default.settings.openFileContext.desc).addToggle( (toggle) => toggle.setValue(this.plugin.settings.autoOpenFileContext).onChange((value) => { this.plugin.settings.autoOpenFileContext = value; this.plugin.saveSettings(); }) ); - new import_obsidian58.Setting(containerEl).setName(i18n_default.settings.syncContextToFrontmatter.name).setDesc(i18n_default.settings.syncContextToFrontmatter.desc).addToggle( + new import_obsidian57.Setting(containerEl).setName(i18n_default.settings.syncContextToFrontmatter.name).setDesc(i18n_default.settings.syncContextToFrontmatter.desc).addToggle( (toggle) => toggle.setValue(this.plugin.settings.saveAllContextToFrontmatter).onChange((value) => { this.plugin.settings.saveAllContextToFrontmatter = value; this.plugin.saveSettings(); }) ); containerEl.createEl("h1", { text: "Blink" }); - new import_obsidian58.Setting(containerEl).setName(i18n_default.settings.blink.name).setDesc(i18n_default.settings.blink.desc).addToggle( + new import_obsidian57.Setting(containerEl).setName(i18n_default.settings.blink.name).setDesc(i18n_default.settings.blink.desc).addToggle( (toggle) => toggle.setValue(this.plugin.settings.blinkEnabled).onChange(async (value) => { this.plugin.settings.blinkEnabled = value; await this.plugin.saveSettings(); @@ -63789,7 +63815,7 @@ var MakeMDPluginSettingsTab = class extends import_obsidian58.PluginSettingTab { }) ); containerEl.createEl("h1", { text: i18n_default.settings.sectionFlow }); - new import_obsidian58.Setting(containerEl).setName(i18n_default.settings.editorMakerMode.name).setDesc(i18n_default.settings.editorMakerMode.desc).addToggle( + new import_obsidian57.Setting(containerEl).setName(i18n_default.settings.editorMakerMode.name).setDesc(i18n_default.settings.editorMakerMode.desc).addToggle( (toggle) => toggle.setValue(this.plugin.settings.makerMode).onChange((value) => { this.plugin.settings.makerMode = value; this.plugin.saveSettings(); @@ -63798,27 +63824,27 @@ var MakeMDPluginSettingsTab = class extends import_obsidian58.PluginSettingTab { ); if (this.plugin.settings.makerMode) { containerEl.createEl("h3", { text: "Inline Context" }); - new import_obsidian58.Setting(containerEl).setName(i18n_default.settings.inlineContextExplorer.name).setDesc(i18n_default.settings.inlineContextExplorer.desc).addToggle( + new import_obsidian57.Setting(containerEl).setName(i18n_default.settings.inlineContextExplorer.name).setDesc(i18n_default.settings.inlineContextExplorer.desc).addToggle( (toggle) => toggle.setValue(this.plugin.settings.inlineContext).onChange((value) => { this.plugin.settings.inlineContext = value; this.plugin.saveSettings(); this.plugin.reloadExtensions(false); }) ); - new import_obsidian58.Setting(containerEl).setName(i18n_default.settings.lineNumbers.name).setDesc(i18n_default.settings.lineNumbers.desc).addToggle( + new import_obsidian57.Setting(containerEl).setName(i18n_default.settings.lineNumbers.name).setDesc(i18n_default.settings.lineNumbers.desc).addToggle( (toggle) => toggle.setValue(this.plugin.settings.lineNumbers).onChange(async (value) => { this.plugin.settings.lineNumbers = value; await this.plugin.saveSettings(); this.plugin.reloadExtensions(false); }) ); - new import_obsidian58.Setting(containerEl).setName(i18n_default.settings.inlineContextExpanded.name).setDesc(i18n_default.settings.inlineContextExpanded.desc).addToggle( + new import_obsidian57.Setting(containerEl).setName(i18n_default.settings.inlineContextExpanded.name).setDesc(i18n_default.settings.inlineContextExpanded.desc).addToggle( (toggle) => toggle.setValue(this.plugin.settings.inlineContextSectionsExpanded).onChange((value) => { this.plugin.settings.inlineContextSectionsExpanded = value; this.plugin.saveSettings(); }) ); - new import_obsidian58.Setting(containerEl).setName(i18n_default.settings.inlineContextHorizontal.name).setDesc(i18n_default.settings.inlineContextHorizontal.desc).addDropdown((dropdown) => { + new import_obsidian57.Setting(containerEl).setName(i18n_default.settings.inlineContextHorizontal.name).setDesc(i18n_default.settings.inlineContextHorizontal.desc).addDropdown((dropdown) => { dropdown.addOption("vertical", i18n_default.settings.layoutVertical); dropdown.addOption("horizontal", i18n_default.settings.layoutHorizontal); dropdown.setValue(this.plugin.settings.inlineContextNameLayout); @@ -63827,20 +63853,20 @@ var MakeMDPluginSettingsTab = class extends import_obsidian58.PluginSettingTab { this.plugin.saveSettings(); }); }); - new import_obsidian58.Setting(containerEl).setName(i18n_default.settings.hideFrontmatter.name).setDesc(i18n_default.settings.hideFrontmatter.desc).addToggle( + new import_obsidian57.Setting(containerEl).setName(i18n_default.settings.hideFrontmatter.name).setDesc(i18n_default.settings.hideFrontmatter.desc).addToggle( (toggle) => toggle.setValue(this.plugin.settings.hideFrontmatter).onChange(async (value) => { this.plugin.settings.hideFrontmatter = value; await this.plugin.saveSettings(); this.plugin.reloadExtensions(false); }) ); - new import_obsidian58.Setting(containerEl).setName(i18n_default.settings.dataviewInlineContext.name).setDesc(i18n_default.settings.dataviewInlineContext.desc).addToggle( + new import_obsidian57.Setting(containerEl).setName(i18n_default.settings.dataviewInlineContext.name).setDesc(i18n_default.settings.dataviewInlineContext.desc).addToggle( (toggle) => toggle.setValue(this.plugin.settings.dataviewInlineContext).onChange((value) => { this.plugin.settings.dataviewInlineContext = value; this.plugin.saveSettings(); }) ); - new import_obsidian58.Setting(containerEl).setName(i18n_default.settings.inlineBacklinks.name).setDesc(i18n_default.settings.inlineBacklinks.desc).addToggle( + new import_obsidian57.Setting(containerEl).setName(i18n_default.settings.inlineBacklinks.name).setDesc(i18n_default.settings.inlineBacklinks.desc).addToggle( (toggle) => toggle.setValue(this.plugin.settings.inlineBacklinks).onChange(async (value) => { this.plugin.settings.inlineBacklinks = value; await this.plugin.saveSettings(); @@ -63848,21 +63874,21 @@ var MakeMDPluginSettingsTab = class extends import_obsidian58.PluginSettingTab { }) ); containerEl.createEl("h3", { text: "Flow Block" }); - new import_obsidian58.Setting(containerEl).setName(i18n_default.settings.editorFlowReplace.name).setDesc(i18n_default.settings.editorFlowReplace.desc).addToggle( + new import_obsidian57.Setting(containerEl).setName(i18n_default.settings.editorFlowReplace.name).setDesc(i18n_default.settings.editorFlowReplace.desc).addToggle( (toggle) => toggle.setValue(this.plugin.settings.editorFlow).onChange((value) => { this.plugin.settings.editorFlow = value; this.plugin.saveSettings(); this.refreshView(); }) ); - new import_obsidian58.Setting(containerEl).setName(i18n_default.settings.internalLinkFlowEditor.name).setDesc(i18n_default.settings.internalLinkFlowEditor.desc).addToggle( + new import_obsidian57.Setting(containerEl).setName(i18n_default.settings.internalLinkFlowEditor.name).setDesc(i18n_default.settings.internalLinkFlowEditor.desc).addToggle( (toggle) => toggle.setValue(this.plugin.settings.internalLinkClickFlow).onChange(async (value) => { this.plugin.settings.internalLinkClickFlow = value; await this.plugin.saveSettings(); this.plugin.reloadExtensions(false); }) ); - new import_obsidian58.Setting(containerEl).setName(i18n_default.settings.editorFlowStyle.name).setDesc(i18n_default.settings.editorFlowStyle.desc).addDropdown((dropdown) => { + new import_obsidian57.Setting(containerEl).setName(i18n_default.settings.editorFlowStyle.name).setDesc(i18n_default.settings.editorFlowStyle.desc).addDropdown((dropdown) => { dropdown.addOption("classic", i18n_default.settings.editorFlowStyle.classic); dropdown.addOption("seamless", i18n_default.settings.editorFlowStyle.seamless); dropdown.addOption("minimal", i18n_default.settings.editorFlowStyle.minimal); @@ -63880,14 +63906,14 @@ var MakeMDPluginSettingsTab = class extends import_obsidian58.PluginSettingTab { }); }); containerEl.createEl("h3", { text: "Flow Menu" }); - new import_obsidian58.Setting(containerEl).setName(i18n_default.settings.editorMakeMenu.name).setDesc(i18n_default.settings.editorMakeMenu.desc).addToggle( + new import_obsidian57.Setting(containerEl).setName(i18n_default.settings.editorMakeMenu.name).setDesc(i18n_default.settings.editorMakeMenu.desc).addToggle( (toggle) => toggle.setValue(this.plugin.settings.flowMenuEnabled).onChange(async (value) => { this.plugin.settings.flowMenuEnabled = value; await this.plugin.saveSettings(); this.plugin.reloadExtensions(false); }) ); - new import_obsidian58.Setting(containerEl).setName(i18n_default.settings.makeChar.name).setDesc(i18n_default.settings.makeChar.desc).addText((text2) => { + new import_obsidian57.Setting(containerEl).setName(i18n_default.settings.makeChar.name).setDesc(i18n_default.settings.makeChar.desc).addText((text2) => { text2.setValue(this.plugin.settings.menuTriggerChar).onChange(async (value) => { if (value.length < 1) { text2.setValue(this.plugin.settings.menuTriggerChar); @@ -63902,7 +63928,7 @@ var MakeMDPluginSettingsTab = class extends import_obsidian58.PluginSettingTab { await this.plugin.saveSettings(); }); }); - new import_obsidian58.Setting(containerEl).setName(i18n_default.settings.editorMakePlacholder.name).setDesc(i18n_default.settings.editorMakePlacholder.desc).addToggle( + new import_obsidian57.Setting(containerEl).setName(i18n_default.settings.editorMakePlacholder.name).setDesc(i18n_default.settings.editorMakePlacholder.desc).addToggle( (toggle) => toggle.setValue(this.plugin.settings.makeMenuPlaceholder).onChange(async (value) => { this.plugin.settings.makeMenuPlaceholder = value; await this.plugin.saveSettings(); @@ -63910,28 +63936,28 @@ var MakeMDPluginSettingsTab = class extends import_obsidian58.PluginSettingTab { }) ); containerEl.createEl("h3", { text: "Flow Styler" }); - new import_obsidian58.Setting(containerEl).setName(i18n_default.settings.inlineStyler.name).setDesc(i18n_default.settings.inlineStyler.desc).addToggle( + new import_obsidian57.Setting(containerEl).setName(i18n_default.settings.inlineStyler.name).setDesc(i18n_default.settings.inlineStyler.desc).addToggle( (toggle) => toggle.setValue(this.plugin.settings.inlineStyler).onChange(async (value) => { this.plugin.settings.inlineStyler = value; await this.plugin.saveSettings(); this.plugin.reloadExtensions(false); }) ); - new import_obsidian58.Setting(containerEl).setName(i18n_default.settings.inlineStickerMenu.name).setDesc(i18n_default.settings.inlineStickerMenu.desc).addToggle( + new import_obsidian57.Setting(containerEl).setName(i18n_default.settings.inlineStickerMenu.name).setDesc(i18n_default.settings.inlineStickerMenu.desc).addToggle( (toggle) => toggle.setValue(this.plugin.settings.inlineStickerMenu).onChange(async (value) => { this.plugin.settings.inlineStickerMenu = value; await this.plugin.saveSettings(); this.plugin.reloadExtensions(false); }) ); - new import_obsidian58.Setting(containerEl).setName(i18n_default.settings.inlineStylerColor.name).setDesc(i18n_default.settings.inlineStylerColor.desc).addToggle( + new import_obsidian57.Setting(containerEl).setName(i18n_default.settings.inlineStylerColor.name).setDesc(i18n_default.settings.inlineStylerColor.desc).addToggle( (toggle) => toggle.setValue(this.plugin.settings.inlineStylerColors).onChange((value) => { this.plugin.settings.inlineStylerColors = value; this.plugin.saveSettings(); this.refreshView(); }) ); - new import_obsidian58.Setting(containerEl).setName(i18n_default.settings.mobileMakeBar.name).setDesc(i18n_default.settings.mobileMakeBar.desc).addToggle( + new import_obsidian57.Setting(containerEl).setName(i18n_default.settings.mobileMakeBar.name).setDesc(i18n_default.settings.mobileMakeBar.desc).addToggle( (toggle) => toggle.setValue(this.plugin.settings.mobileMakeBar).onChange((value) => { this.plugin.settings.mobileMakeBar = value; this.plugin.saveSettings(); @@ -63943,7 +63969,7 @@ var MakeMDPluginSettingsTab = class extends import_obsidian58.PluginSettingTab { }; // src/react/components/Blink/Blink.tsx -var import_obsidian59 = require("obsidian"); +var import_obsidian58 = require("obsidian"); // src/react/components/Blink/BlinkComponent.tsx var BlinkComponent = Cn.forwardRef( @@ -64019,7 +64045,7 @@ BlinkComponent.displayName = "BlinkComponent"; var BlinkComponent_default = BlinkComponent; // src/react/components/Blink/Blink.tsx -var Blink = class extends import_obsidian59.Modal { +var Blink = class extends import_obsidian58.Modal { constructor(app2, plugin) { super(app2); this.ref = Cn.createRef(); @@ -64052,11 +64078,11 @@ var Blink = class extends import_obsidian59.Modal { }; // src/react/components/Explorer/Explorer.tsx -var import_obsidian60 = require("obsidian"); +var import_obsidian59 = require("obsidian"); var FILE_CONTEXT_VIEW_TYPE = "make-context-view"; var ICON2 = "component"; var VIEW_DISPLAY_TEXT2 = "Explorer"; -var ContextExplorerLeafView = class extends import_obsidian60.ItemView { +var ContextExplorerLeafView = class extends import_obsidian59.ItemView { constructor(leaf, plugin) { super(leaf); this.navigation = false; @@ -64397,9 +64423,9 @@ var ExplorerContextRow = (props2) => { }; // src/react/components/SpaceView/Contexts/MDBFileViewer.tsx -var import_obsidian61 = require("obsidian"); +var import_obsidian60 = require("obsidian"); var MDB_FILE_VIEWER_TYPE = "make-mdb-viewer"; -var MDBFileViewer = class extends import_obsidian61.FileView { +var MDBFileViewer = class extends import_obsidian60.FileView { constructor(leaf, plugin) { super(leaf); this.navigation = true; @@ -64534,8 +64560,8 @@ var onFolderDeleted = async (plugin, oldPath) => { var import_obsidian_dataview = __toESM(require_lib()); // src/superstate/superstate.ts -var import_lodash13 = __toESM(require_lodash()); -var import_obsidian63 = require("obsidian"); +var import_lodash14 = __toESM(require_lodash()); +var import_obsidian62 = require("obsidian"); // src/types/indexMap.ts var _IndexMap = class { @@ -64690,7 +64716,7 @@ var API = class { } }; this.formatDate = (date, format2) => { - return formatDate(this.plugin, date, format2); + return formatDate(this.plugin, date, format2 != null ? format2 : "yyyy-MM-dd"); }; this.now = () => { return new Date(); @@ -64767,7 +64793,7 @@ var LocalStorageCache = class { }; // src/superstate/workers/manager.ts -var import_obsidian62 = require("obsidian"); +var import_obsidian61 = require("obsidian"); // inline-worker:__inline-worker function inlineWorker(scriptText) { @@ -64780,11 +64806,11 @@ function inlineWorker(scriptText) { // src/superstate/workers/entry.worker.ts function Worker2() { - return inlineWorker('var qd=Object.create;var ru=Object.defineProperty,kd=Object.defineProperties,$d=Object.getOwnPropertyDescriptor,Hd=Object.getOwnPropertyDescriptors,Kd=Object.getOwnPropertyNames,Uo=Object.getOwnPropertySymbols,zd=Object.getPrototypeOf,Go=Object.prototype.hasOwnProperty,Yd=Object.prototype.propertyIsEnumerable;var No=(i,l,m)=>l in i?ru(i,l,{enumerable:!0,configurable:!0,writable:!0,value:m}):i[l]=m,Lt=(i,l)=>{for(var m in l||(l={}))Go.call(l,m)&&No(i,m,l[m]);if(Uo)for(var m of Uo(l))Yd.call(l,m)&&No(i,m,l[m]);return i},Et=(i,l)=>kd(i,Hd(l));var Zd=(i,l)=>()=>(l||i((l={exports:{}}).exports,l),l.exports);var Xd=(i,l,m,w)=>{if(l&&typeof l=="object"||typeof l=="function")for(let y of Kd(l))!Go.call(i,y)&&y!==m&&ru(i,y,{get:()=>l[y],enumerable:!(w=$d(l,y))||w.enumerable});return i};var Jd=(i,l,m)=>(m=i!=null?qd(zd(i)):{},Xd(l||!i||!i.__esModule?ru(m,"default",{value:i,enumerable:!0}):m,i));var qo=Zd((se,Me)=>{(function(){var i,l="4.17.21",m=200,w="Unsupported core-js use. Try https://npms.io/search?q=ponyfill.",y="Expected a function",O="Invalid `variable` option passed into `_.template`",J="__lodash_hash_undefined__",j=500,Y="__lodash_placeholder__",P=1,an=2,nn=4,rn=1,Tn=2,Q=1,k=2,vt=4,hn=8,Bn=16,pn=32,gn=64,yn=128,W=256,dn=512,_n=30,zn="...",zt=800,Dr=16,mt=1,jn=2,Le=3,nt=1/0,Yn=9007199254740991,Ee=17976931348623157e292,Ot=0/0,bn=4294967295,Oe=bn-1,De=bn>>>1,Pe=[["ary",yn],["bind",Q],["bindKey",k],["curry",hn],["curryRight",Bn],["flip",dn],["partial",pn],["partialRight",gn],["rearg",W]],ft="[object Arguments]",Dt="[object Array]",Be="[object AsyncFunction]",xt="[object Boolean]",yt="[object Date]",We="[object DOMException]",Pt="[object Error]",H="[object Function]",un="[object GeneratorFunction]",G="[object Map]",fn="[object Number]",Yt="[object Null]",Wn="[object Object]",Ue="[object Promise]",Pr="[object Proxy]",tt="[object RegExp]",Zn="[object Set]",le="[object String]",Ne="[object Symbol]",fs="[object Undefined]",ce="[object WeakMap]",os="[object WeakSet]",he="[object ArrayBuffer]",Zt="[object DataView]",Br="[object Float32Array]",Wr="[object Float64Array]",Ur="[object Int8Array]",Nr="[object Int16Array]",Gr="[object Int32Array]",qr="[object Uint8Array]",kr="[object Uint8ClampedArray]",$r="[object Uint16Array]",Hr="[object Uint32Array]",ss=/\\b__p \\+= \'\';/g,as=/\\b(__p \\+=) \'\' \\+/g,ls=/(__e\\(.*?\\)|\\b__t\\)) \\+\\n\'\';/g,ou=/&(?:amp|lt|gt|quot|#39);/g,su=/[&<>"\']/g,cs=RegExp(ou.source),hs=RegExp(su.source),ps=/<%-([\\s\\S]+?)%>/g,gs=/<%([\\s\\S]+?)%>/g,au=/<%=([\\s\\S]+?)%>/g,ds=/\\.|\\[(?:[^[\\]]*|(["\'])(?:(?!\\1)[^\\\\]|\\\\.)*?\\1)\\]/,_s=/^\\w*$/,vs=/[^.[\\]]+|\\[(?:(-?\\d+(?:\\.\\d+)?)|(["\'])((?:(?!\\2)[^\\\\]|\\\\.)*?)\\2)\\]|(?=(?:\\.|\\[\\])(?:\\.|\\[\\]|$))/g,Kr=/[\\\\^$.*+?()[\\]{}|]/g,ms=RegExp(Kr.source),zr=/^\\s+/,xs=/\\s/,ys=/\\{(?:\\n\\/\\* \\[wrapped with .+\\] \\*\\/)?\\n?/,ws=/\\{\\n\\/\\* \\[wrapped with (.+)\\] \\*/,As=/,? & /,Ss=/[^\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\x7f]+/g,Ts=/[()=,{}\\[\\]\\/\\s]/,Fs=/\\\\(\\\\)?/g,Cs=/\\$\\{([^\\\\}]*(?:\\\\.[^\\\\}]*)*)\\}/g,lu=/\\w*$/,Is=/^[-+]0x[0-9a-f]+$/i,Ms=/^0b[01]+$/i,bs=/^\\[object .+?Constructor\\]$/,Rs=/^0o[0-7]+$/i,Ls=/^(?:0|[1-9]\\d*)$/,Es=/[\\xc0-\\xd6\\xd8-\\xf6\\xf8-\\xff\\u0100-\\u017f]/g,Ge=/($^)/,Os=/[\'\\n\\r\\u2028\\u2029\\\\]/g,qe="\\\\ud800-\\\\udfff",Ds="\\\\u0300-\\\\u036f",Ps="\\\\ufe20-\\\\ufe2f",Bs="\\\\u20d0-\\\\u20ff",cu=Ds+Ps+Bs,hu="\\\\u2700-\\\\u27bf",pu="a-z\\\\xdf-\\\\xf6\\\\xf8-\\\\xff",Ws="\\\\xac\\\\xb1\\\\xd7\\\\xf7",Us="\\\\x00-\\\\x2f\\\\x3a-\\\\x40\\\\x5b-\\\\x60\\\\x7b-\\\\xbf",Ns="\\\\u2000-\\\\u206f",Gs=" \\\\t\\\\x0b\\\\f\\\\xa0\\\\ufeff\\\\n\\\\r\\\\u2028\\\\u2029\\\\u1680\\\\u180e\\\\u2000\\\\u2001\\\\u2002\\\\u2003\\\\u2004\\\\u2005\\\\u2006\\\\u2007\\\\u2008\\\\u2009\\\\u200a\\\\u202f\\\\u205f\\\\u3000",gu="A-Z\\\\xc0-\\\\xd6\\\\xd8-\\\\xde",du="\\\\ufe0e\\\\ufe0f",_u=Ws+Us+Ns+Gs,Yr="[\'\\u2019]",qs="["+qe+"]",vu="["+_u+"]",ke="["+cu+"]",mu="\\\\d+",ks="["+hu+"]",xu="["+pu+"]",yu="[^"+qe+_u+mu+hu+pu+gu+"]",Zr="\\\\ud83c[\\\\udffb-\\\\udfff]",$s="(?:"+ke+"|"+Zr+")",wu="[^"+qe+"]",Xr="(?:\\\\ud83c[\\\\udde6-\\\\uddff]){2}",Jr="[\\\\ud800-\\\\udbff][\\\\udc00-\\\\udfff]",Xt="["+gu+"]",Au="\\\\u200d",Su="(?:"+xu+"|"+yu+")",Hs="(?:"+Xt+"|"+yu+")",Tu="(?:"+Yr+"(?:d|ll|m|re|s|t|ve))?",Fu="(?:"+Yr+"(?:D|LL|M|RE|S|T|VE))?",Cu=$s+"?",Iu="["+du+"]?",Ks="(?:"+Au+"(?:"+[wu,Xr,Jr].join("|")+")"+Iu+Cu+")*",zs="\\\\d*(?:1st|2nd|3rd|(?![123])\\\\dth)(?=\\\\b|[A-Z_])",Ys="\\\\d*(?:1ST|2ND|3RD|(?![123])\\\\dTH)(?=\\\\b|[a-z_])",Mu=Iu+Cu+Ks,Zs="(?:"+[ks,Xr,Jr].join("|")+")"+Mu,Xs="(?:"+[wu+ke+"?",ke,Xr,Jr,qs].join("|")+")",Js=RegExp(Yr,"g"),Qs=RegExp(ke,"g"),Qr=RegExp(Zr+"(?="+Zr+")|"+Xs+Mu,"g"),Vs=RegExp([Xt+"?"+xu+"+"+Tu+"(?="+[vu,Xt,"$"].join("|")+")",Hs+"+"+Fu+"(?="+[vu,Xt+Su,"$"].join("|")+")",Xt+"?"+Su+"+"+Tu,Xt+"+"+Fu,Ys,zs,mu,Zs].join("|"),"g"),js=RegExp("["+Au+qe+cu+du+"]"),na=/[a-z][A-Z]|[A-Z]{2}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/,ta=["Array","Buffer","DataView","Date","Error","Float32Array","Float64Array","Function","Int8Array","Int16Array","Int32Array","Map","Math","Object","Promise","RegExp","Set","String","Symbol","TypeError","Uint8Array","Uint8ClampedArray","Uint16Array","Uint32Array","WeakMap","_","clearTimeout","isFinite","parseInt","setTimeout"],ea=-1,z={};z[Br]=z[Wr]=z[Ur]=z[Nr]=z[Gr]=z[qr]=z[kr]=z[$r]=z[Hr]=!0,z[ft]=z[Dt]=z[he]=z[xt]=z[Zt]=z[yt]=z[Pt]=z[H]=z[G]=z[fn]=z[Wn]=z[tt]=z[Zn]=z[le]=z[ce]=!1;var K={};K[ft]=K[Dt]=K[he]=K[Zt]=K[xt]=K[yt]=K[Br]=K[Wr]=K[Ur]=K[Nr]=K[Gr]=K[G]=K[fn]=K[Wn]=K[tt]=K[Zn]=K[le]=K[Ne]=K[qr]=K[kr]=K[$r]=K[Hr]=!0,K[Pt]=K[H]=K[ce]=!1;var ra={\\u00C0:"A",\\u00C1:"A",\\u00C2:"A",\\u00C3:"A",\\u00C4:"A",\\u00C5:"A",\\u00E0:"a",\\u00E1:"a",\\u00E2:"a",\\u00E3:"a",\\u00E4:"a",\\u00E5:"a",\\u00C7:"C",\\u00E7:"c",\\u00D0:"D",\\u00F0:"d",\\u00C8:"E",\\u00C9:"E",\\u00CA:"E",\\u00CB:"E",\\u00E8:"e",\\u00E9:"e",\\u00EA:"e",\\u00EB:"e",\\u00CC:"I",\\u00CD:"I",\\u00CE:"I",\\u00CF:"I",\\u00EC:"i",\\u00ED:"i",\\u00EE:"i",\\u00EF:"i",\\u00D1:"N",\\u00F1:"n",\\u00D2:"O",\\u00D3:"O",\\u00D4:"O",\\u00D5:"O",\\u00D6:"O",\\u00D8:"O",\\u00F2:"o",\\u00F3:"o",\\u00F4:"o",\\u00F5:"o",\\u00F6:"o",\\u00F8:"o",\\u00D9:"U",\\u00DA:"U",\\u00DB:"U",\\u00DC:"U",\\u00F9:"u",\\u00FA:"u",\\u00FB:"u",\\u00FC:"u",\\u00DD:"Y",\\u00FD:"y",\\u00FF:"y",\\u00C6:"Ae",\\u00E6:"ae",\\u00DE:"Th",\\u00FE:"th",\\u00DF:"ss",\\u0100:"A",\\u0102:"A",\\u0104:"A",\\u0101:"a",\\u0103:"a",\\u0105:"a",\\u0106:"C",\\u0108:"C",\\u010A:"C",\\u010C:"C",\\u0107:"c",\\u0109:"c",\\u010B:"c",\\u010D:"c",\\u010E:"D",\\u0110:"D",\\u010F:"d",\\u0111:"d",\\u0112:"E",\\u0114:"E",\\u0116:"E",\\u0118:"E",\\u011A:"E",\\u0113:"e",\\u0115:"e",\\u0117:"e",\\u0119:"e",\\u011B:"e",\\u011C:"G",\\u011E:"G",\\u0120:"G",\\u0122:"G",\\u011D:"g",\\u011F:"g",\\u0121:"g",\\u0123:"g",\\u0124:"H",\\u0126:"H",\\u0125:"h",\\u0127:"h",\\u0128:"I",\\u012A:"I",\\u012C:"I",\\u012E:"I",\\u0130:"I",\\u0129:"i",\\u012B:"i",\\u012D:"i",\\u012F:"i",\\u0131:"i",\\u0134:"J",\\u0135:"j",\\u0136:"K",\\u0137:"k",\\u0138:"k",\\u0139:"L",\\u013B:"L",\\u013D:"L",\\u013F:"L",\\u0141:"L",\\u013A:"l",\\u013C:"l",\\u013E:"l",\\u0140:"l",\\u0142:"l",\\u0143:"N",\\u0145:"N",\\u0147:"N",\\u014A:"N",\\u0144:"n",\\u0146:"n",\\u0148:"n",\\u014B:"n",\\u014C:"O",\\u014E:"O",\\u0150:"O",\\u014D:"o",\\u014F:"o",\\u0151:"o",\\u0154:"R",\\u0156:"R",\\u0158:"R",\\u0155:"r",\\u0157:"r",\\u0159:"r",\\u015A:"S",\\u015C:"S",\\u015E:"S",\\u0160:"S",\\u015B:"s",\\u015D:"s",\\u015F:"s",\\u0161:"s",\\u0162:"T",\\u0164:"T",\\u0166:"T",\\u0163:"t",\\u0165:"t",\\u0167:"t",\\u0168:"U",\\u016A:"U",\\u016C:"U",\\u016E:"U",\\u0170:"U",\\u0172:"U",\\u0169:"u",\\u016B:"u",\\u016D:"u",\\u016F:"u",\\u0171:"u",\\u0173:"u",\\u0174:"W",\\u0175:"w",\\u0176:"Y",\\u0177:"y",\\u0178:"Y",\\u0179:"Z",\\u017B:"Z",\\u017D:"Z",\\u017A:"z",\\u017C:"z",\\u017E:"z",\\u0132:"IJ",\\u0133:"ij",\\u0152:"Oe",\\u0153:"oe",\\u0149:"\'n",\\u017F:"s"},ia={"&":"&","<":"<",">":">",\'"\':""","\'":"'"},ua={"&":"&","<":"<",">":">",""":\'"\',"'":"\'"},fa={"\\\\":"\\\\","\'":"\'","\\n":"n","\\r":"r","\\u2028":"u2028","\\u2029":"u2029"},oa=parseFloat,sa=parseInt,bu=typeof global=="object"&&global&&global.Object===Object&&global,aa=typeof self=="object"&&self&&self.Object===Object&&self,ln=bu||aa||Function("return this")(),Vr=typeof se=="object"&&se&&!se.nodeType&&se,Bt=Vr&&typeof Me=="object"&&Me&&!Me.nodeType&&Me,Ru=Bt&&Bt.exports===Vr,jr=Ru&&bu.process,Un=function(){try{var c=Bt&&Bt.require&&Bt.require("util").types;return c||jr&&jr.binding&&jr.binding("util")}catch(g){}}(),Lu=Un&&Un.isArrayBuffer,Eu=Un&&Un.isDate,Ou=Un&&Un.isMap,Du=Un&&Un.isRegExp,Pu=Un&&Un.isSet,Bu=Un&&Un.isTypedArray;function Rn(c,g,p){switch(p.length){case 0:return c.call(g);case 1:return c.call(g,p[0]);case 2:return c.call(g,p[0],p[1]);case 3:return c.call(g,p[0],p[1],p[2])}return c.apply(g,p)}function la(c,g,p,A){for(var I=-1,U=c==null?0:c.length;++I-1}function ni(c,g,p){for(var A=-1,I=c==null?0:c.length;++A-1;);return p}function Hu(c,g){for(var p=c.length;p--&&Jt(g,c[p],0)>-1;);return p}function xa(c,g){for(var p=c.length,A=0;p--;)c[p]===g&&++A;return A}var ya=ii(ra),wa=ii(ia);function Aa(c){return"\\\\"+fa[c]}function Sa(c,g){return c==null?i:c[g]}function Qt(c){return js.test(c)}function Ta(c){return na.test(c)}function Fa(c){for(var g,p=[];!(g=c.next()).done;)p.push(g.value);return p}function si(c){var g=-1,p=Array(c.size);return c.forEach(function(A,I){p[++g]=[I,A]}),p}function Ku(c,g){return function(p){return c(g(p))}}function St(c,g){for(var p=-1,A=c.length,I=0,U=[];++p-1}function hl(n,t){var e=this.__data__,r=fr(e,n);return r<0?(++this.size,e.push([n,t])):e[r][1]=t,this}ot.prototype.clear=sl,ot.prototype.delete=al,ot.prototype.get=ll,ot.prototype.has=cl,ot.prototype.set=hl;function st(n){var t=-1,e=n==null?0:n.length;for(this.clear();++t=t?n:t)),n}function kn(n,t,e,r,u,o){var s,a=t&P,h=t&an,d=t&nn;if(e&&(s=u?e(n,r,u,o):e(n)),s!==i)return s;if(!X(n))return n;var _=M(n);if(_){if(s=_c(n),!a)return Fn(n,s)}else{var v=xn(n),x=v==H||v==un;if(Rt(n))return Mf(n,a);if(v==Wn||v==ft||x&&!u){if(s=h||x?{}:Yf(n),!a)return h?uc(n,Ml(s,n)):ic(n,rf(s,n))}else{if(!K[v])return u?n:{};s=vc(n,v,a)}}o||(o=new Jn);var S=o.get(n);if(S)return S;o.set(n,s),So(n)?n.forEach(function(C){s.add(kn(C,t,e,C,n,o))}):wo(n)&&n.forEach(function(C,E){s.set(E,kn(C,t,e,E,n,o))});var F=d?h?Di:Oi:h?In:cn,R=_?i:F(n);return Nn(R||n,function(C,E){R&&(E=C,C=n[E]),xe(s,E,kn(C,t,e,E,n,o))}),s}function bl(n){var t=cn(n);return function(e){return uf(e,n,t)}}function uf(n,t,e){var r=e.length;if(n==null)return!r;for(n=$(n);r--;){var u=e[r],o=t[u],s=n[u];if(s===i&&!(u in n)||!o(s))return!1}return!0}function ff(n,t,e){if(typeof n!="function")throw new Gn(y);return Ce(function(){n.apply(i,e)},t)}function ye(n,t,e,r){var u=-1,o=$e,s=!0,a=n.length,h=[],d=t.length;if(!a)return h;e&&(t=Z(t,Ln(e))),r?(o=ni,s=!1):t.length>=m&&(o=pe,s=!1,t=new Nt(t));n:for(;++uu?0:u+e),r=r===i||r>u?u:b(r),r<0&&(r+=u),r=e>r?0:Fo(r);e0&&e(a)?t>1?vn(a,t-1,e,r,u):At(u,a):r||(u[u.length]=a)}return u}var di=Df(),af=Df(!0);function et(n,t){return n&&di(n,t,cn)}function _i(n,t){return n&&af(n,t,cn)}function sr(n,t){return wt(t,function(e){return pt(n[e])})}function qt(n,t){t=Mt(t,n);for(var e=0,r=t.length;n!=null&&et}function El(n,t){return n!=null&&q.call(n,t)}function Ol(n,t){return n!=null&&t in $(n)}function Dl(n,t,e){return n>=mn(t,e)&&n=120&&_.length>=120)?new Nt(s&&_):i}_=n[0];var v=-1,x=a[0];n:for(;++v-1;)a!==n&&je.call(a,h,1),je.call(n,h,1);return n}function yf(n,t){for(var e=n?t.length:0,r=e-1;e--;){var u=t[e];if(e==r||u!==o){var o=u;ht(u)?je.call(n,u,1):Ci(n,u)}}return n}function Si(n,t){return n+er(ju()*(t-n+1))}function Yl(n,t,e,r){for(var u=-1,o=sn(tr((t-n)/(e||1)),0),s=p(o);o--;)s[r?o:++u]=n,n+=e;return s}function Ti(n,t){var e="";if(!n||t<1||t>Yn)return e;do t%2&&(e+=n),t=er(t/2),t&&(n+=n);while(t);return e}function L(n,t){return qi(Jf(n,t,Mn),n+"")}function Zl(n){return ef(oe(n))}function Xl(n,t){var e=oe(n);return xr(e,Gt(t,0,e.length))}function Se(n,t,e,r){if(!X(n))return n;t=Mt(t,n);for(var u=-1,o=t.length,s=o-1,a=n;a!=null&&++uu?0:u+t),e=e>u?u:e,e<0&&(e+=u),u=t>e?0:e-t>>>0,t>>>=0;for(var o=p(u);++r>>1,s=n[o];s!==null&&!On(s)&&(e?s<=t:s=m){var d=t?null:ac(n);if(d)return Ke(d);s=!1,u=pe,h=new Nt}else h=t?[]:a;n:for(;++r=r?n:$n(n,t,e)}var If=Ga||function(n){return ln.clearTimeout(n)};function Mf(n,t){if(t)return n.slice();var e=n.length,r=Zu?Zu(e):new n.constructor(e);return n.copy(r),r}function Ri(n){var t=new n.constructor(n.byteLength);return new Qe(t).set(new Qe(n)),t}function nc(n,t){var e=t?Ri(n.buffer):n.buffer;return new n.constructor(e,n.byteOffset,n.byteLength)}function tc(n){var t=new n.constructor(n.source,lu.exec(n));return t.lastIndex=n.lastIndex,t}function ec(n){return me?$(me.call(n)):{}}function bf(n,t){var e=t?Ri(n.buffer):n.buffer;return new n.constructor(e,n.byteOffset,n.length)}function Rf(n,t){if(n!==t){var e=n!==i,r=n===null,u=n===n,o=On(n),s=t!==i,a=t===null,h=t===t,d=On(t);if(!a&&!d&&!o&&n>t||o&&s&&h&&!a&&!d||r&&s&&h||!e&&h||!u)return 1;if(!r&&!o&&!d&&n=a)return h;var d=e[r];return h*(d=="desc"?-1:1)}}return n.index-t.index}function Lf(n,t,e,r){for(var u=-1,o=n.length,s=e.length,a=-1,h=t.length,d=sn(o-s,0),_=p(h+d),v=!r;++a1?e[u-1]:i,s=u>2?e[2]:i;for(o=n.length>3&&typeof o=="function"?(u--,o):i,s&&An(e[0],e[1],s)&&(o=u<3?i:o,u=1),t=$(t);++r-1?u[o?t[s]:s]:i}}function Wf(n){return ct(function(t){var e=t.length,r=e,u=qn.prototype.thru;for(n&&t.reverse();r--;){var o=t[r];if(typeof o!="function")throw new Gn(y);if(u&&!s&&vr(o)=="wrapper")var s=new qn([],!0)}for(r=s?r:e;++r1&&B.reverse(),_&&ha))return!1;var d=o.get(n),_=o.get(t);if(d&&_)return d==t&&_==n;var v=-1,x=!0,S=e&Tn?new Nt:i;for(o.set(n,t),o.set(t,n);++v1?"& ":"")+t[r],t=t.join(e>2?", ":" "),n.replace(ys,`{\n/* [wrapped with `+t+`] */\n`)}function xc(n){return M(n)||Ht(n)||!!(Qu&&n&&n[Qu])}function ht(n,t){var e=typeof n;return t=t==null?Yn:t,!!t&&(e=="number"||e!="symbol"&&Ls.test(n))&&n>-1&&n%1==0&&n0){if(++t>=zt)return arguments[0]}else t=0;return n.apply(i,arguments)}}function xr(n,t){var e=-1,r=n.length,u=r-1;for(t=t===i?r:t;++e1?n[t-1]:i;return e=typeof e=="function"?(n.pop(),e):i,so(n,e)});function ao(n){var t=f(n);return t.__chain__=!0,t}function Rh(n,t){return t(n),n}function yr(n,t){return t(n)}var Lh=ct(function(n){var t=n.length,e=t?n[0]:0,r=this.__wrapped__,u=function(o){return gi(o,n)};return t>1||this.__actions__.length||!(r instanceof D)||!ht(e)?this.thru(u):(r=r.slice(e,+e+(t?1:0)),r.__actions__.push({func:yr,args:[u],thisArg:i}),new qn(r,this.__chain__).thru(function(o){return t&&!o.length&&o.push(i),o}))});function Eh(){return ao(this)}function Oh(){return new qn(this.value(),this.__chain__)}function Dh(){this.__values__===i&&(this.__values__=To(this.value()));var n=this.__index__>=this.__values__.length,t=n?i:this.__values__[this.__index__++];return{done:n,value:t}}function Ph(){return this}function Bh(n){for(var t,e=this;e instanceof ur;){var r=eo(e);r.__index__=0,r.__values__=i,t?u.__wrapped__=r:t=r;var u=r;e=e.__wrapped__}return u.__wrapped__=n,t}function Wh(){var n=this.__wrapped__;if(n instanceof D){var t=n;return this.__actions__.length&&(t=new D(this)),t=t.reverse(),t.__actions__.push({func:yr,args:[ki],thisArg:i}),new qn(t,this.__chain__)}return this.thru(ki)}function Uh(){return Ff(this.__wrapped__,this.__actions__)}var Nh=hr(function(n,t,e){q.call(n,e)?++n[e]:at(n,e,1)});function Gh(n,t,e){var r=M(n)?Wu:Rl;return e&&An(n,t,e)&&(t=i),r(n,T(t,3))}function qh(n,t){var e=M(n)?wt:sf;return e(n,T(t,3))}var kh=Bf(ro),$h=Bf(io);function Hh(n,t){return vn(wr(n,t),1)}function Kh(n,t){return vn(wr(n,t),nt)}function zh(n,t,e){return e=e===i?1:b(e),vn(wr(n,t),e)}function lo(n,t){var e=M(n)?Nn:Ct;return e(n,T(t,3))}function co(n,t){var e=M(n)?ca:of;return e(n,T(t,3))}var Yh=hr(function(n,t,e){q.call(n,e)?n[e].push(t):at(n,e,[t])});function Zh(n,t,e,r){n=Cn(n)?n:oe(n),e=e&&!r?b(e):0;var u=n.length;return e<0&&(e=sn(u+e,0)),Cr(n)?e<=u&&n.indexOf(t,e)>-1:!!u&&Jt(n,t,e)>-1}var Xh=L(function(n,t,e){var r=-1,u=typeof t=="function",o=Cn(n)?p(n.length):[];return Ct(n,function(s){o[++r]=u?Rn(t,s,e):we(s,t,e)}),o}),Jh=hr(function(n,t,e){at(n,e,t)});function wr(n,t){var e=M(n)?Z:gf;return e(n,T(t,3))}function Qh(n,t,e,r){return n==null?[]:(M(t)||(t=t==null?[]:[t]),e=r?i:e,M(e)||(e=e==null?[]:[e]),mf(n,t,e))}var Vh=hr(function(n,t,e){n[e?0:1].push(t)},function(){return[[],[]]});function jh(n,t,e){var r=M(n)?ti:qu,u=arguments.length<3;return r(n,T(t,4),e,u,Ct)}function np(n,t,e){var r=M(n)?ha:qu,u=arguments.length<3;return r(n,T(t,4),e,u,of)}function tp(n,t){var e=M(n)?wt:sf;return e(n,Tr(T(t,3)))}function ep(n){var t=M(n)?ef:Zl;return t(n)}function rp(n,t,e){(e?An(n,t,e):t===i)?t=1:t=b(t);var r=M(n)?Fl:Xl;return r(n,t)}function ip(n){var t=M(n)?Cl:Ql;return t(n)}function up(n){if(n==null)return 0;if(Cn(n))return Cr(n)?Vt(n):n.length;var t=xn(n);return t==G||t==Zn?n.size:yi(n).length}function fp(n,t,e){var r=M(n)?ei:Vl;return e&&An(n,t,e)&&(t=i),r(n,T(t,3))}var op=L(function(n,t){if(n==null)return[];var e=t.length;return e>1&&An(n,t[0],t[1])?t=[]:e>2&&An(t[0],t[1],t[2])&&(t=[t[0]]),mf(n,vn(t,1),[])}),Ar=qa||function(){return ln.Date.now()};function sp(n,t){if(typeof t!="function")throw new Gn(y);return n=b(n),function(){if(--n<1)return t.apply(this,arguments)}}function ho(n,t,e){return t=e?i:t,t=n&&t==null?n.length:t,lt(n,yn,i,i,i,i,t)}function po(n,t){var e;if(typeof t!="function")throw new Gn(y);return n=b(n),function(){return--n>0&&(e=t.apply(this,arguments)),n<=1&&(t=i),e}}var Hi=L(function(n,t,e){var r=Q;if(e.length){var u=St(e,ue(Hi));r|=pn}return lt(n,r,t,e,u)}),go=L(function(n,t,e){var r=Q|k;if(e.length){var u=St(e,ue(go));r|=pn}return lt(t,r,n,e,u)});function _o(n,t,e){t=e?i:t;var r=lt(n,hn,i,i,i,i,i,t);return r.placeholder=_o.placeholder,r}function vo(n,t,e){t=e?i:t;var r=lt(n,Bn,i,i,i,i,i,t);return r.placeholder=vo.placeholder,r}function mo(n,t,e){var r,u,o,s,a,h,d=0,_=!1,v=!1,x=!0;if(typeof n!="function")throw new Gn(y);t=Kn(t)||0,X(e)&&(_=!!e.leading,v="maxWait"in e,o=v?sn(Kn(e.maxWait)||0,t):o,x="trailing"in e?!!e.trailing:x);function S(en){var Vn=r,dt=u;return r=u=i,d=en,s=n.apply(dt,Vn),s}function F(en){return d=en,a=Ce(E,t),_?S(en):s}function R(en){var Vn=en-h,dt=en-d,Wo=t-Vn;return v?mn(Wo,o-dt):Wo}function C(en){var Vn=en-h,dt=en-d;return h===i||Vn>=t||Vn<0||v&&dt>=o}function E(){var en=Ar();if(C(en))return B(en);a=Ce(E,R(en))}function B(en){return a=i,x&&r?S(en):(r=u=i,s)}function Dn(){a!==i&&If(a),d=0,r=h=u=a=i}function Sn(){return a===i?s:B(Ar())}function Pn(){var en=Ar(),Vn=C(en);if(r=arguments,u=this,h=en,Vn){if(a===i)return F(h);if(v)return If(a),a=Ce(E,t),S(h)}return a===i&&(a=Ce(E,t)),s}return Pn.cancel=Dn,Pn.flush=Sn,Pn}var ap=L(function(n,t){return ff(n,1,t)}),lp=L(function(n,t,e){return ff(n,Kn(t)||0,e)});function cp(n){return lt(n,dn)}function Sr(n,t){if(typeof n!="function"||t!=null&&typeof t!="function")throw new Gn(y);var e=function(){var r=arguments,u=t?t.apply(this,r):r[0],o=e.cache;if(o.has(u))return o.get(u);var s=n.apply(this,r);return e.cache=o.set(u,s)||o,s};return e.cache=new(Sr.Cache||st),e}Sr.Cache=st;function Tr(n){if(typeof n!="function")throw new Gn(y);return function(){var t=arguments;switch(t.length){case 0:return!n.call(this);case 1:return!n.call(this,t[0]);case 2:return!n.call(this,t[0],t[1]);case 3:return!n.call(this,t[0],t[1],t[2])}return!n.apply(this,t)}}function hp(n){return po(2,n)}var pp=jl(function(n,t){t=t.length==1&&M(t[0])?Z(t[0],Ln(T())):Z(vn(t,1),Ln(T()));var e=t.length;return L(function(r){for(var u=-1,o=mn(r.length,e);++u=t}),Ht=cf(function(){return arguments}())?cf:function(n){return V(n)&&q.call(n,"callee")&&!Ju.call(n,"callee")},M=p.isArray,Mp=Lu?Ln(Lu):Bl;function Cn(n){return n!=null&&Fr(n.length)&&!pt(n)}function tn(n){return V(n)&&Cn(n)}function bp(n){return n===!0||n===!1||V(n)&&wn(n)==xt}var Rt=$a||eu,Rp=Eu?Ln(Eu):Wl;function Lp(n){return V(n)&&n.nodeType===1&&!Ie(n)}function Ep(n){if(n==null)return!0;if(Cn(n)&&(M(n)||typeof n=="string"||typeof n.splice=="function"||Rt(n)||fe(n)||Ht(n)))return!n.length;var t=xn(n);if(t==G||t==Zn)return!n.size;if(Fe(n))return!yi(n).length;for(var e in n)if(q.call(n,e))return!1;return!0}function Op(n,t){return Ae(n,t)}function Dp(n,t,e){e=typeof e=="function"?e:i;var r=e?e(n,t):i;return r===i?Ae(n,t,i,e):!!r}function zi(n){if(!V(n))return!1;var t=wn(n);return t==Pt||t==We||typeof n.message=="string"&&typeof n.name=="string"&&!Ie(n)}function Pp(n){return typeof n=="number"&&Vu(n)}function pt(n){if(!X(n))return!1;var t=wn(n);return t==H||t==un||t==Be||t==Pr}function yo(n){return typeof n=="number"&&n==b(n)}function Fr(n){return typeof n=="number"&&n>-1&&n%1==0&&n<=Yn}function X(n){var t=typeof n;return n!=null&&(t=="object"||t=="function")}function V(n){return n!=null&&typeof n=="object"}var wo=Ou?Ln(Ou):Nl;function Bp(n,t){return n===t||xi(n,t,Bi(t))}function Wp(n,t,e){return e=typeof e=="function"?e:i,xi(n,t,Bi(t),e)}function Up(n){return Ao(n)&&n!=+n}function Np(n){if(Ac(n))throw new I(w);return hf(n)}function Gp(n){return n===null}function qp(n){return n==null}function Ao(n){return typeof n=="number"||V(n)&&wn(n)==fn}function Ie(n){if(!V(n)||wn(n)!=Wn)return!1;var t=Ve(n);if(t===null)return!0;var e=q.call(t,"constructor")&&t.constructor;return typeof e=="function"&&e instanceof e&&Ze.call(e)==Wa}var Yi=Du?Ln(Du):Gl;function kp(n){return yo(n)&&n>=-Yn&&n<=Yn}var So=Pu?Ln(Pu):ql;function Cr(n){return typeof n=="string"||!M(n)&&V(n)&&wn(n)==le}function On(n){return typeof n=="symbol"||V(n)&&wn(n)==Ne}var fe=Bu?Ln(Bu):kl;function $p(n){return n===i}function Hp(n){return V(n)&&xn(n)==ce}function Kp(n){return V(n)&&wn(n)==os}var zp=_r(wi),Yp=_r(function(n,t){return n<=t});function To(n){if(!n)return[];if(Cn(n))return Cr(n)?Xn(n):Fn(n);if(ge&&n[ge])return Fa(n[ge]());var t=xn(n),e=t==G?si:t==Zn?Ke:oe;return e(n)}function gt(n){if(!n)return n===0?n:0;if(n=Kn(n),n===nt||n===-nt){var t=n<0?-1:1;return t*Ee}return n===n?n:0}function b(n){var t=gt(n),e=t%1;return t===t?e?t-e:t:0}function Fo(n){return n?Gt(b(n),0,bn):0}function Kn(n){if(typeof n=="number")return n;if(On(n))return Ot;if(X(n)){var t=typeof n.valueOf=="function"?n.valueOf():n;n=X(t)?t+"":t}if(typeof n!="string")return n===0?n:+n;n=ku(n);var e=Ms.test(n);return e||Rs.test(n)?sa(n.slice(2),e?2:8):Is.test(n)?Ot:+n}function Co(n){return rt(n,In(n))}function Zp(n){return n?Gt(b(n),-Yn,Yn):n===0?n:0}function N(n){return n==null?"":En(n)}var Xp=re(function(n,t){if(Fe(t)||Cn(t)){rt(t,cn(t),n);return}for(var e in t)q.call(t,e)&&xe(n,e,t[e])}),Io=re(function(n,t){rt(t,In(t),n)}),Ir=re(function(n,t,e,r){rt(t,In(t),n,r)}),Jp=re(function(n,t,e,r){rt(t,cn(t),n,r)}),Qp=ct(gi);function Vp(n,t){var e=ee(n);return t==null?e:rf(e,t)}var jp=L(function(n,t){n=$(n);var e=-1,r=t.length,u=r>2?t[2]:i;for(u&&An(t[0],t[1],u)&&(r=1);++e1),o}),rt(n,Di(n),e),r&&(e=kn(e,P|an|nn,lc));for(var u=t.length;u--;)Ci(e,t[u]);return e});function vg(n,t){return bo(n,Tr(T(t)))}var mg=ct(function(n,t){return n==null?{}:Kl(n,t)});function bo(n,t){if(n==null)return{};var e=Z(Di(n),function(r){return[r]});return t=T(t),xf(n,e,function(r,u){return t(r,u[0])})}function xg(n,t,e){t=Mt(t,n);var r=-1,u=t.length;for(u||(u=1,n=i);++rt){var r=n;n=t,t=r}if(e||n%1||t%1){var u=ju();return mn(n+u*(t-n+oa("1e-"+((u+"").length-1))),t)}return Si(n,t)}var Rg=ie(function(n,t,e){return t=t.toLowerCase(),n+(e?Eo(t):t)});function Eo(n){return Ji(N(n).toLowerCase())}function Oo(n){return n=N(n),n&&n.replace(Es,ya).replace(Qs,"")}function Lg(n,t,e){n=N(n),t=En(t);var r=n.length;e=e===i?r:Gt(b(e),0,r);var u=e;return e-=t.length,e>=0&&n.slice(e,u)==t}function Eg(n){return n=N(n),n&&hs.test(n)?n.replace(su,wa):n}function Og(n){return n=N(n),n&&ms.test(n)?n.replace(Kr,"\\\\$&"):n}var Dg=ie(function(n,t,e){return n+(e?"-":"")+t.toLowerCase()}),Pg=ie(function(n,t,e){return n+(e?" ":"")+t.toLowerCase()}),Bg=Pf("toLowerCase");function Wg(n,t,e){n=N(n),t=b(t);var r=t?Vt(n):0;if(!t||r>=t)return n;var u=(t-r)/2;return dr(er(u),e)+n+dr(tr(u),e)}function Ug(n,t,e){n=N(n),t=b(t);var r=t?Vt(n):0;return t&&r>>0,e?(n=N(n),n&&(typeof t=="string"||t!=null&&!Yi(t))&&(t=En(t),!t&&Qt(n))?bt(Xn(n),0,e):n.split(t,e)):[]}var Kg=ie(function(n,t,e){return n+(e?" ":"")+Ji(t)});function zg(n,t,e){return n=N(n),e=e==null?0:Gt(b(e),0,n.length),t=En(t),n.slice(e,e+t.length)==t}function Yg(n,t,e){var r=f.templateSettings;e&&An(n,t,e)&&(t=i),n=N(n),t=Ir({},t,r,kf);var u=Ir({},t.imports,r.imports,kf),o=cn(u),s=oi(u,o),a,h,d=0,_=t.interpolate||Ge,v="__p += \'",x=ai((t.escape||Ge).source+"|"+_.source+"|"+(_===au?Cs:Ge).source+"|"+(t.evaluate||Ge).source+"|$","g"),S="//# sourceURL="+(q.call(t,"sourceURL")?(t.sourceURL+"").replace(/\\s/g," "):"lodash.templateSources["+ ++ea+"]")+`\n`;n.replace(x,function(C,E,B,Dn,Sn,Pn){return B||(B=Dn),v+=n.slice(d,Pn).replace(Os,Aa),E&&(a=!0,v+=`\' +\n__e(`+E+`) +\n\'`),Sn&&(h=!0,v+=`\';\n`+Sn+`;\n__p += \'`),B&&(v+=`\' +\n((__t = (`+B+`)) == null ? \'\' : __t) +\n\'`),d=Pn+C.length,C}),v+=`\';\n`;var F=q.call(t,"variable")&&t.variable;if(!F)v=`with (obj) {\n`+v+`\n}\n`;else if(Ts.test(F))throw new I(O);v=(h?v.replace(ss,""):v).replace(as,"$1").replace(ls,"$1;"),v="function("+(F||"obj")+`) {\n`+(F?"":`obj || (obj = {});\n`)+"var __t, __p = \'\'"+(a?", __e = _.escape":"")+(h?`, __j = Array.prototype.join;\nfunction print() { __p += __j.call(arguments, \'\') }\n`:`;\n`)+v+`return __p\n}`;var R=Po(function(){return U(o,S+"return "+v).apply(i,s)});if(R.source=v,zi(R))throw R;return R}function Zg(n){return N(n).toLowerCase()}function Xg(n){return N(n).toUpperCase()}function Jg(n,t,e){if(n=N(n),n&&(e||t===i))return ku(n);if(!n||!(t=En(t)))return n;var r=Xn(n),u=Xn(t),o=$u(r,u),s=Hu(r,u)+1;return bt(r,o,s).join("")}function Qg(n,t,e){if(n=N(n),n&&(e||t===i))return n.slice(0,zu(n)+1);if(!n||!(t=En(t)))return n;var r=Xn(n),u=Hu(r,Xn(t))+1;return bt(r,0,u).join("")}function Vg(n,t,e){if(n=N(n),n&&(e||t===i))return n.replace(zr,"");if(!n||!(t=En(t)))return n;var r=Xn(n),u=$u(r,Xn(t));return bt(r,u).join("")}function jg(n,t){var e=_n,r=zn;if(X(t)){var u="separator"in t?t.separator:u;e="length"in t?b(t.length):e,r="omission"in t?En(t.omission):r}n=N(n);var o=n.length;if(Qt(n)){var s=Xn(n);o=s.length}if(e>=o)return n;var a=e-Vt(r);if(a<1)return r;var h=s?bt(s,0,a).join(""):n.slice(0,a);if(u===i)return h+r;if(s&&(a+=h.length-a),Yi(u)){if(n.slice(a).search(u)){var d,_=h;for(u.global||(u=ai(u.source,N(lu.exec(u))+"g")),u.lastIndex=0;d=u.exec(_);)var v=d.index;h=h.slice(0,v===i?a:v)}}else if(n.indexOf(En(u),a)!=a){var x=h.lastIndexOf(u);x>-1&&(h=h.slice(0,x))}return h+r}function nd(n){return n=N(n),n&&cs.test(n)?n.replace(ou,ba):n}var td=ie(function(n,t,e){return n+(e?" ":"")+t.toUpperCase()}),Ji=Pf("toUpperCase");function Do(n,t,e){return n=N(n),t=e?i:t,t===i?Ta(n)?Ea(n):da(n):n.match(t)||[]}var Po=L(function(n,t){try{return Rn(n,i,t)}catch(e){return zi(e)?e:new I(e)}}),ed=ct(function(n,t){return Nn(t,function(e){e=it(e),at(n,e,Hi(n[e],n))}),n});function rd(n){var t=n==null?0:n.length,e=T();return n=t?Z(n,function(r){if(typeof r[1]!="function")throw new Gn(y);return[e(r[0]),r[1]]}):[],L(function(r){for(var u=-1;++uYn)return[];var e=bn,r=mn(n,bn);t=T(t),n-=bn;for(var u=fi(r,t);++e0||t<0)?new D(e):(n<0?e=e.takeRight(-n):n&&(e=e.drop(n)),t!==i&&(t=b(t),e=t<0?e.dropRight(-t):e.take(t-n)),e)},D.prototype.takeRightWhile=function(n){return this.reverse().takeWhile(n).reverse()},D.prototype.toArray=function(){return this.take(bn)},et(D.prototype,function(n,t){var e=/^(?:filter|find|map|reject)|While$/.test(t),r=/^(?:head|last)$/.test(t),u=f[r?"take"+(t=="last"?"Right":""):t],o=r||/^find/.test(t);!u||(f.prototype[t]=function(){var s=this.__wrapped__,a=r?[1]:arguments,h=s instanceof D,d=a[0],_=h||M(s),v=function(E){var B=u.apply(f,At([E],a));return r&&x?B[0]:B};_&&e&&typeof d=="function"&&d.length!=1&&(h=_=!1);var x=this.__chain__,S=!!this.__actions__.length,F=o&&!x,R=h&&!S;if(!o&&_){s=R?s:new D(this);var C=n.apply(s,a);return C.__actions__.push({func:yr,args:[v],thisArg:i}),new qn(C,x)}return F&&R?n.apply(this,a):(C=this.thru(v),F?r?C.value()[0]:C.value():C)})}),Nn(["pop","push","shift","sort","splice","unshift"],function(n){var t=ze[n],e=/^(?:push|sort|unshift)$/.test(n)?"tap":"thru",r=/^(?:pop|shift)$/.test(n);f.prototype[n]=function(){var u=arguments;if(r&&!this.__chain__){var o=this.value();return t.apply(M(o)?o:[],u)}return this[e](function(s){return t.apply(M(s)?s:[],u)})}}),et(D.prototype,function(n,t){var e=f[t];if(e){var r=e.name+"";q.call(te,r)||(te[r]=[]),te[r].push({name:t,func:e})}}),te[pr(i,k).name]=[{name:"wrapper",func:i}],D.prototype.clone=nl,D.prototype.reverse=tl,D.prototype.value=el,f.prototype.at=Lh,f.prototype.chain=Eh,f.prototype.commit=Oh,f.prototype.next=Dh,f.prototype.plant=Bh,f.prototype.reverse=Wh,f.prototype.toJSON=f.prototype.valueOf=f.prototype.value=Uh,f.prototype.first=f.prototype.head,ge&&(f.prototype[ge]=Ph),f},Tt=Oa();typeof define=="function"&&typeof define.amd=="object"&&define.amd?(ln._=Tt,define(function(){return Tt})):Bt?((Bt.exports=Tt)._=Tt,Vr._=Tt):ln._=Tt}).call(se)});var Or=Jd(qo());var _t=i=>[...new Set(i)],ko=i=>[...new Map(i.map(l=>[l.toLowerCase(),l])).values()];var $o=(i,l,m)=>{if(i=="Spaces/Home")return"ui//mk-ui-spaces";if(!l)return m?"ui//mk-ui-folder-solid":"ui//mk-ui-folder";switch(l){case"png":case"jpg":case"jpeg":case"svg":return"ui//mk-make-image";case"mov":case"webm":return"ui//mk-ui-video";case"canvas":return"ui//mk-ui-canvas";default:return m?"ui//mk-ui-file-solid":"ui//mk-ui-file"}};function Ho(i){return Array.isArray(i)?i:typeof i=="string"?[i]:[]}var Ko=(i,l)=>l.indexOf(i)>0?l.indexOf(i):l.length;var Mr=i=>"spaces://"+i;var ut=i=>{var l;return(l=i==null?void 0:i.match(/(\\\\.|[^,])+/g))!=null?l:[]},Kt=i=>{if(!i)return"";let l=/\\[\\[(.*?)\\]\\]/g.exec(i),m=(l==null?void 0:l.length)>1?l[1].substring(0,Ko("|",l[1])):i;return m||i};var be=(i,l)=>{if(typeof i=="string"){if(/\\/\\/(\\S+?(?:jpe?g|png|gif|svg))/gi.test(i)||i.includes("unsplash"))return"image";if(/^\\d{4}-\\d{2}-\\d{2}$/.test(i))return"date";if(l=="tag"||l=="tags")return"tag";if(/\\[\\[.*?\\]\\]/.test(i))return"link"}else{if(typeof i=="number")return"number";if(typeof i=="boolean")return"boolean";if(i)if(Array.isArray(i)||typeof i=="string"&&i.indexOf(",")>-1){let m=Array.isArray(i)?i:[];if(typeof i=="string"&&i.indexOf(",")>-1&&(m=ut(i)),l=="tag"||l=="tags")return"tag-multi";if(m.length==1&&Array.isArray(m[0])&&m[0].length==1&&typeof m[0][0]=="string")return"link";let w=_t(m.map(y=>be(y,l)));return w.length==1&&w[0]=="link"?"link-multi":"option-multi"}else{if(i.isLuxonDateTime)return"date";if(i.isLuxonDuration)return"duration";if(i.type=="file")return"link";if(typeof i=="object"&&!Array.isArray(i)&&i!==null)return"object"}else return"unknown"}return"text"};var zo=i=>Object.keys(i!=null?i:{}).filter(l=>l!="position").filter(l=>l!="tag"&&l!="tags");var ae=i=>i.join(","),Yo=i=>i.join(", ");var br=(i,l)=>{switch(be(l,i)){case"object":return JSON.stringify(l);case"number":return l.toString();case"boolean":return l?"true":"false";case"date":return l;case"duration":return Yo(Object.keys(l.values).reduce((w,y)=>[...w,...l.values[y]>0?[l.values[y]+" "+y]:[]],[]));case"option-multi":case"link-multi":return typeof l=="string"?Kt(l):ae(l.map(w=>w?typeof w=="string"?Kt(w):w.path?w.path:Array.isArray(l)&&w.length==1&&Array.isArray(w[0])&&w[0].length==1&&typeof w[0][0]=="string"?w[0][0]:JSON.stringify(w):""));case"link":return Array.isArray(l)&&l.length==1&&Array.isArray(l[0])&&l[0].length==1&&typeof l[0][0]=="string"?l[0][0]:typeof l=="string"?Kt(l):l.path;case"text":case"tag":case"image":return l}return""};var Zo=i=>{switch(i){case"duration":return"text";case"unknown":return"text"}return i};var Rr=(i,l)=>i==l,iu=(i,l)=>(i!=null?i:"").length==0,uu=(i,l)=>(i!=null?i:"").toLowerCase().includes((l!=null?l:"").toLowerCase()),Lr=(i,l)=>parseFloat(i)>parseFloat(l),Er=(i,l)=>parseInt(i)>parseInt(l),fu=(i,l)=>{let m=i?ut(i):[];return(l?ut(l):[]).some(y=>m.some(O=>O==y))},Xo=i=>{let l=new Date(`${i}T00:00`),m=new Date;return l.getMonth()===m.getMonth()&&l.getDate()===m.getDate()};var Re={isNotEmpty:{type:["text","file","link","link-multi","fileprop","image"],fn:(i,l)=>!iu(i,""),valueType:"none"},isEmpty:{type:["text","file","link","link-multi","fileprop","image"],fn:(i,l)=>iu(i,""),valueType:"none"},include:{fn:(i,l)=>uu(i,l),type:["text","file","link","link-multi","fileprop","image"],valueType:"text"},notInclude:{type:["text","file","link","link-multi","fileprop","image"],fn:(i,l)=>!uu(i,l),valueType:"text"},is:{type:["text","file","link","context","fileprop"],fn:(i,l)=>Rr(i,l),valueType:"text"},isNot:{type:["text","file","link","context","fileprop"],fn:(i,l)=>!Rr(i,l),valueType:"text"},equal:{type:["number"],fn:(i,l)=>Rr(i,l),valueType:"number"},isGreatThan:{type:["number"],fn:(i,l)=>Lr(i,l),valueType:"number"},isLessThan:{type:["number"],fn:(i,l)=>Er(i,l),valueType:"number"},isLessThanOrEqual:{type:["number"],fn:(i,l)=>!Lr(i,l),valueType:"number"},isGreatThanOrEqual:{type:["number"],fn:(i,l)=>!Er(i,l),valueType:"number"},dateBefore:{type:["date","fileprop"],fn:(i,l)=>Er(i,l),valueType:"date"},dateAfter:{type:["date","fileprop"],fn:(i,l)=>Lr(i,l),valueType:"date"},isSameDateAsToday:{type:["date"],fn:(i,l)=>Xo(i,l),valueType:"none"},isAnyInList:{type:["option","context","option-multi","context-multi","tags-multi","tags"],fn:(i,l)=>fu(i,l),valueType:"list"},isNoneInList:{type:["option","context","option-multi","context-multi","tags-multi","tags"],fn:(i,l)=>!fu(i,l),valueType:"list"},isTrue:{type:["boolean"],fn:(i,l)=>i=="true",valueType:"none"},isFalse:{type:["boolean"],fn:(i,l)=>i!="true",valueType:"none"}};var Qd=(i,l)=>l.reduce((w,y)=>{let[O,J]=w,j=y.type=="fileprop"?Vo(J,y):y.type=="filemeta"?Qo(J,y):y.type=="frontmatter"?Jo(J,y):[],Y=J.filter(P=>!j.includes(P));return[[...O,...j],Y]},[[],i])[0],Vd=(i,l)=>l.reduce((m,w)=>w.type=="fileprop"?Vo(m,w):w.type=="filemeta"?Qo(m,w):w.type=="frontmatter"?Jo(m,w):[],i),Jo=(i,l)=>i.filter(m=>{let w=m.frontmatter;if(!w||!w[l.field])return!1;let y=Re[l.fn],O=!0;return y&&(O=y.fn(br(l.field,w[l.field]),l.value)),O}),Qo=(i,l)=>i.filter(m=>{let w="";l.field=="outlinks"?w=ae(m.outlinks):l.field=="inlinks"?w=ae(m.inlinks):l.field=="tags"&&(w=ae(m.tags));let y=Re[l.fn],O=!0;return y&&(O=y.fn(w,l.value)),O}),Vo=(i,l)=>i.filter(m=>{if(["name","path","sticker","color","isFolder","extension","ctime","mtime","size","parent"].includes(l.field)){let y=Re[l.fn],O=!0;return y&&(O=y.fn(m[l.field],l.value)),O}return!0}),jo=(i,l)=>i.reduce((w,y)=>!w||y.filters.length==0?w:y.type=="any"?Qd([l],y.filters).length>0:Vd([l],y.filters).length>0,!0);var ns=(i,l,m)=>{if(!l)return{changed:!1,cache:{path:i.path,frames:{},schemas:[],listitems:{}}};let w=l.schemas,y=w.filter(Y=>Y.type=="frame").reduce((Y,P)=>{var an,nn;return Et(Lt({},Y),{[P.id]:{schema:P,cols:l.fields.filter(rn=>rn.schemaId==P.id),rows:(nn=(an=l.tables[P.id])==null?void 0:an.rows)!=null?nn:[]}})},{}),O=w.filter(Y=>Y.type=="listitem").reduce((Y,P)=>{var an,nn;return Et(Lt({},Y),{[P.id]:{schema:P,cols:l.fields.filter(rn=>rn.schemaId==P.id),rows:(nn=(an=l.tables[P.id])==null?void 0:an.rows)!=null?nn:[]}})},{}),J={path:i.path,frames:y,schemas:w,listitems:O},j=!0;return m&&Or.default.isEqual(J,m)&&(j=!1),{changed:j,cache:J}},ts=(i,l,m)=>{var Tn,Q,k,vt,hn,Bn,pn,gn,yn;let w={};if(!l)return{changed:!1,cache:{cols:[],path:i.path,schemas:[],outlinks:[],contexts:[],files:[],tables:{},space:i,spaceMap:w}};let y=l.schemas.find(W=>W.primary=="true"),O={schema:y,cols:l.fields.filter(W=>W.schemaId==y.id),rows:(Q=(Tn=l.tables[y.id])==null?void 0:Tn.rows)!=null?Q:[]},J=l.schemas.filter(W=>W.type=="db").reduce((W,dn)=>{var _n,zn;return Et(Lt({},W),{[dn.id]:{schema:dn,cols:l.fields.filter(zt=>zt.schemaId==dn.id),rows:(zn=(_n=l.tables[dn.id])==null?void 0:_n.rows)!=null?zn:[]}})},{}),j=(vt=(k=O.cols)==null?void 0:k.filter(W=>W.type.startsWith("context")))!=null?vt:[],Y=(Bn=(hn=O.cols)==null?void 0:hn.filter(W=>W.type.startsWith("link")))!=null?Bn:[],P=_t(j.map(W=>W.value));j.forEach(W=>{w[W.name]={},O.rows.forEach(dn=>{ut(dn[W.name]).forEach(_n=>{var zn;return w[W.name][_n]=[...(zn=w[W.name][_n])!=null?zn:[],dn.File]})})});let an=_t(O.rows.reduce((W,dn)=>_t([...W,...[...j,...Y].flatMap(_n=>ut(dn[_n.name]).map(zn=>Kt(zn)))]),[])),nn={cols:l.fields.filter(W=>W.schemaId==y.id),path:i.path,contexts:P,outlinks:an,files:(yn=(gn=(pn=J.files)==null?void 0:pn.rows)==null?void 0:gn.map(W=>W.File))!=null?yn:[],tables:J,schemas:l.schemas,space:i,spaceMap:w},rn=!0;return m&&Or.default.isEqual(nn,m)&&(rn=!0),{changed:rn,cache:nn}},jd=i=>{var m,w,y,O,J,j,Y,P,an,nn,rn,Tn,Q;let l=[];return i&&i.tags&&l.push(...(w=(m=i.tags)==null?void 0:m.map(k=>k.tag))!=null?w:[]),i&&((y=i.frontmatter)==null?void 0:y.tags)&&l.push(...(typeof((O=i.frontmatter)==null?void 0:O.tags)=="string"?ut(i.frontmatter.tags.replace(/ /g,"")):Array.isArray((J=i.frontmatter)==null?void 0:J.tags)?(Y=(j=i.frontmatter)==null?void 0:j.tags)!=null?Y:[]:[]).filter(k=>typeof k=="string").map(k=>"#"+k)),i&&((P=i.frontmatter)==null?void 0:P.tag)&&l.push(...(typeof((an=i.frontmatter)==null?void 0:an.tag)=="string"?ut(i.frontmatter.tag.replace(/ /g,"")):Array.isArray((nn=i.frontmatter)==null?void 0:nn.tag)?(Tn=(rn=i.frontmatter)==null?void 0:rn.tag)!=null?Tn:[]:[]).filter(k=>typeof k=="string").map(k=>"#"+k)),(Q=_t(l))!=null?Q:[]};var es=(i,l,m,w,y,O,J,j,Y)=>{var Ot,bn,Oe,De,Pe,ft,Dt,Be,xt,yt,We,Pt;let P={cacheType:"file",path:i.path,name:i.name,displayName:i.name,filename:i.filename};i.stat&&(P.ctime=i.stat.ctime,P.mtime=i.stat.mtime,P.size=i.stat.size,P.extension=i.extension);let an=[],nn=jd(O),rn=(H,un,G=new Set)=>{var Yt,Wn;let fn=[];for(let Ue of un){let Pr=(Wn=(Yt=H.get(Ue))==null?void 0:Yt.contexts)!=null?Wn:[];for(let tt of Pr)G.has(tt)||(fn.push(tt),G.add(tt),fn.push(...rn(H,[Mr(tt)],G)))}return fn};if(m.has(i.parent))for(let H of(Ot=m.get(i.parent).contexts)!=null?Ot:[])an.push(H);an.push(...nn);let Tn=i.name,Q=[i.name],k=(bn=y==null?void 0:y.sticker)!=null?bn:"",vt=(Oe=y==null?void 0:y.color)!=null?Oe:"",hn=(De=y==null?void 0:y.folder)!=null?De:"";hn=="true"&&(hn="");let Bn=i.parent,pn=i.isFolder,gn={},yn={},W=[],dn=[],_n=O==null?void 0:O.frontmatter;O!=null&&O.links&&dn.push(...O.links.map(H=>H.link));let zn=j&&pn?j.folderNotePath:i.path;for(let H of Object.keys(J))zn in J[H]&&W.push(H);let zt="";if(_n){let un=ko(zo(_n)).reduce((G,fn)=>Et(Lt({},G),{[fn]:{name:fn,type:Zo(be(_n[fn],fn))}}),{});Object.keys(un).forEach(G=>{gn[G]=br(G,_n[G]),yn[G]=un[G].type,un[G].type.startsWith("link")&&dn.push(Kt(gn[G]))}),zt=(Pe=gn[l.fmKeyBanner])!=null?Pe:"",gn[l.fmKeySticker]&&(k=_n[l.fmKeySticker]),gn[l.fmKeyColor]&&(vt=_n[l.fmKeyColor]),gn[l.fmKeyAlias]&&(Q=Ho(_n[l.fmKeyAlias]))}let Dr=l.spacesUseAlias&&(ft=Q[0])!=null?ft:Tn;k=(k==null?void 0:k.length)>0?k:$o(P.path,P.extension,!1);let mt=Et(Lt({},P),{name:Tn,tags:_t(an),displayName:Dr,aliases:Q,fileTags:nn,folderNote:j,sticker:k,color:vt,parent:Bn,banner:zt,isFolder:pn,sortBy:hn,frontmatter:gn,frontmatterTypes:yn,inlinks:W,outlinks:dn}),jn=[],Le={};for(let H of an)jn.push(Mr(H));for(let[H,un]of m){if(un.space&&un.space.folderPath==Bn&&un.space.defPath!=i.path){jn.push(H);continue}if(((Be=(Dt=un.metadata)==null?void 0:Dt.filters)==null?void 0:Be.length)>0&&jo(un.metadata.filters,mt)){jn.push(H);continue}if(((yt=(xt=un.metadata)==null?void 0:xt.links)==null?void 0:yt.length)>0&&((Pt=(We=un.metadata)==null?void 0:We.links)!=null?Pt:[]).find(fn=>fn==mt.path)){jn.push(H);continue}}let nt=rn(m,jn);jn.push(...nt.map(H=>Mr(H))),jn.forEach(H=>{var un,G,fn;Le[H]=(fn=(G=(un=w.get(H))==null?void 0:un.tables)==null?void 0:G.files)==null?void 0:fn.rows.findIndex(Yt=>Yt.File==i.path)}),mt.tags.push(...nt);let Yn=j&&!pn?Et(Lt({},mt),{spaces:[],contexts:[]}):Et(Lt({},mt),{spaces:_t(jn),spaceRanks:Le}),Ee=!0;return Y&&Or.default.isEqual(Yn,Y)&&(Ee=!1),{changed:Ee,cache:Yn}};function rs(i){let{file:l,settings:m,spacesCache:w,vaultItem:y,metadataCache:O,contextsCache:J,resolvedLinks:j,folderNote:Y,oldMetadata:P}=i;return es(l,m,w,J,y,O,j,Y,P)}function is(i){let{space:l,mdb:m,oldCache:w}=i;return ts(l,m,w)}function us(i){let{space:l,mdb:m,oldCache:w}=i;return ns(l,m,w)}var n_=self;n_.onmessage=async i=>{let{payload:l,job:m}=i.data,w;m.type=="file"?w=rs(l):m.type=="context"?w=is(l):m.type=="frames"&&(w=us(l));try{postMessage({job:m,result:w})}catch(y){console.log(y),postMessage({job:m,result:{$error:`Failed to index ${m.type} ${m.path}: ${y}`}})}};\n/**\n * @license\n * Lodash \n * Copyright OpenJS Foundation and other contributors \n * Released under MIT license \n * Based on Underscore.js 1.8.3 \n * Copyright Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors\n */\n'); + return inlineWorker('var qd=Object.create;var ru=Object.defineProperty,kd=Object.defineProperties,$d=Object.getOwnPropertyDescriptor,Hd=Object.getOwnPropertyDescriptors,Kd=Object.getOwnPropertyNames,Uo=Object.getOwnPropertySymbols,zd=Object.getPrototypeOf,Go=Object.prototype.hasOwnProperty,Yd=Object.prototype.propertyIsEnumerable;var No=(i,l,m)=>l in i?ru(i,l,{enumerable:!0,configurable:!0,writable:!0,value:m}):i[l]=m,Lt=(i,l)=>{for(var m in l||(l={}))Go.call(l,m)&&No(i,m,l[m]);if(Uo)for(var m of Uo(l))Yd.call(l,m)&&No(i,m,l[m]);return i},Et=(i,l)=>kd(i,Hd(l));var Zd=(i,l)=>()=>(l||i((l={exports:{}}).exports,l),l.exports);var Xd=(i,l,m,w)=>{if(l&&typeof l=="object"||typeof l=="function")for(let y of Kd(l))!Go.call(i,y)&&y!==m&&ru(i,y,{get:()=>l[y],enumerable:!(w=$d(l,y))||w.enumerable});return i};var Jd=(i,l,m)=>(m=i!=null?qd(zd(i)):{},Xd(l||!i||!i.__esModule?ru(m,"default",{value:i,enumerable:!0}):m,i));var qo=Zd((se,Me)=>{(function(){var i,l="4.17.21",m=200,w="Unsupported core-js use. Try https://npms.io/search?q=ponyfill.",y="Expected a function",O="Invalid `variable` option passed into `_.template`",J="__lodash_hash_undefined__",j=500,Y="__lodash_placeholder__",P=1,an=2,nn=4,rn=1,Tn=2,Q=1,k=2,vt=4,hn=8,Bn=16,pn=32,gn=64,yn=128,W=256,dn=512,_n=30,zn="...",zt=800,Dr=16,mt=1,jn=2,Le=3,nt=1/0,Yn=9007199254740991,Ee=17976931348623157e292,Ot=0/0,bn=4294967295,Oe=bn-1,De=bn>>>1,Pe=[["ary",yn],["bind",Q],["bindKey",k],["curry",hn],["curryRight",Bn],["flip",dn],["partial",pn],["partialRight",gn],["rearg",W]],ft="[object Arguments]",Dt="[object Array]",Be="[object AsyncFunction]",xt="[object Boolean]",yt="[object Date]",We="[object DOMException]",Pt="[object Error]",H="[object Function]",un="[object GeneratorFunction]",G="[object Map]",fn="[object Number]",Yt="[object Null]",Wn="[object Object]",Ue="[object Promise]",Pr="[object Proxy]",tt="[object RegExp]",Zn="[object Set]",le="[object String]",Ne="[object Symbol]",fs="[object Undefined]",ce="[object WeakMap]",os="[object WeakSet]",he="[object ArrayBuffer]",Zt="[object DataView]",Br="[object Float32Array]",Wr="[object Float64Array]",Ur="[object Int8Array]",Nr="[object Int16Array]",Gr="[object Int32Array]",qr="[object Uint8Array]",kr="[object Uint8ClampedArray]",$r="[object Uint16Array]",Hr="[object Uint32Array]",ss=/\\b__p \\+= \'\';/g,as=/\\b(__p \\+=) \'\' \\+/g,ls=/(__e\\(.*?\\)|\\b__t\\)) \\+\\n\'\';/g,ou=/&(?:amp|lt|gt|quot|#39);/g,su=/[&<>"\']/g,cs=RegExp(ou.source),hs=RegExp(su.source),ps=/<%-([\\s\\S]+?)%>/g,gs=/<%([\\s\\S]+?)%>/g,au=/<%=([\\s\\S]+?)%>/g,ds=/\\.|\\[(?:[^[\\]]*|(["\'])(?:(?!\\1)[^\\\\]|\\\\.)*?\\1)\\]/,_s=/^\\w*$/,vs=/[^.[\\]]+|\\[(?:(-?\\d+(?:\\.\\d+)?)|(["\'])((?:(?!\\2)[^\\\\]|\\\\.)*?)\\2)\\]|(?=(?:\\.|\\[\\])(?:\\.|\\[\\]|$))/g,Kr=/[\\\\^$.*+?()[\\]{}|]/g,ms=RegExp(Kr.source),zr=/^\\s+/,xs=/\\s/,ys=/\\{(?:\\n\\/\\* \\[wrapped with .+\\] \\*\\/)?\\n?/,ws=/\\{\\n\\/\\* \\[wrapped with (.+)\\] \\*/,As=/,? & /,Ss=/[^\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\x7f]+/g,Ts=/[()=,{}\\[\\]\\/\\s]/,Fs=/\\\\(\\\\)?/g,Cs=/\\$\\{([^\\\\}]*(?:\\\\.[^\\\\}]*)*)\\}/g,lu=/\\w*$/,Is=/^[-+]0x[0-9a-f]+$/i,Ms=/^0b[01]+$/i,bs=/^\\[object .+?Constructor\\]$/,Rs=/^0o[0-7]+$/i,Ls=/^(?:0|[1-9]\\d*)$/,Es=/[\\xc0-\\xd6\\xd8-\\xf6\\xf8-\\xff\\u0100-\\u017f]/g,Ge=/($^)/,Os=/[\'\\n\\r\\u2028\\u2029\\\\]/g,qe="\\\\ud800-\\\\udfff",Ds="\\\\u0300-\\\\u036f",Ps="\\\\ufe20-\\\\ufe2f",Bs="\\\\u20d0-\\\\u20ff",cu=Ds+Ps+Bs,hu="\\\\u2700-\\\\u27bf",pu="a-z\\\\xdf-\\\\xf6\\\\xf8-\\\\xff",Ws="\\\\xac\\\\xb1\\\\xd7\\\\xf7",Us="\\\\x00-\\\\x2f\\\\x3a-\\\\x40\\\\x5b-\\\\x60\\\\x7b-\\\\xbf",Ns="\\\\u2000-\\\\u206f",Gs=" \\\\t\\\\x0b\\\\f\\\\xa0\\\\ufeff\\\\n\\\\r\\\\u2028\\\\u2029\\\\u1680\\\\u180e\\\\u2000\\\\u2001\\\\u2002\\\\u2003\\\\u2004\\\\u2005\\\\u2006\\\\u2007\\\\u2008\\\\u2009\\\\u200a\\\\u202f\\\\u205f\\\\u3000",gu="A-Z\\\\xc0-\\\\xd6\\\\xd8-\\\\xde",du="\\\\ufe0e\\\\ufe0f",_u=Ws+Us+Ns+Gs,Yr="[\'\\u2019]",qs="["+qe+"]",vu="["+_u+"]",ke="["+cu+"]",mu="\\\\d+",ks="["+hu+"]",xu="["+pu+"]",yu="[^"+qe+_u+mu+hu+pu+gu+"]",Zr="\\\\ud83c[\\\\udffb-\\\\udfff]",$s="(?:"+ke+"|"+Zr+")",wu="[^"+qe+"]",Xr="(?:\\\\ud83c[\\\\udde6-\\\\uddff]){2}",Jr="[\\\\ud800-\\\\udbff][\\\\udc00-\\\\udfff]",Xt="["+gu+"]",Au="\\\\u200d",Su="(?:"+xu+"|"+yu+")",Hs="(?:"+Xt+"|"+yu+")",Tu="(?:"+Yr+"(?:d|ll|m|re|s|t|ve))?",Fu="(?:"+Yr+"(?:D|LL|M|RE|S|T|VE))?",Cu=$s+"?",Iu="["+du+"]?",Ks="(?:"+Au+"(?:"+[wu,Xr,Jr].join("|")+")"+Iu+Cu+")*",zs="\\\\d*(?:1st|2nd|3rd|(?![123])\\\\dth)(?=\\\\b|[A-Z_])",Ys="\\\\d*(?:1ST|2ND|3RD|(?![123])\\\\dTH)(?=\\\\b|[a-z_])",Mu=Iu+Cu+Ks,Zs="(?:"+[ks,Xr,Jr].join("|")+")"+Mu,Xs="(?:"+[wu+ke+"?",ke,Xr,Jr,qs].join("|")+")",Js=RegExp(Yr,"g"),Qs=RegExp(ke,"g"),Qr=RegExp(Zr+"(?="+Zr+")|"+Xs+Mu,"g"),Vs=RegExp([Xt+"?"+xu+"+"+Tu+"(?="+[vu,Xt,"$"].join("|")+")",Hs+"+"+Fu+"(?="+[vu,Xt+Su,"$"].join("|")+")",Xt+"?"+Su+"+"+Tu,Xt+"+"+Fu,Ys,zs,mu,Zs].join("|"),"g"),js=RegExp("["+Au+qe+cu+du+"]"),na=/[a-z][A-Z]|[A-Z]{2}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/,ta=["Array","Buffer","DataView","Date","Error","Float32Array","Float64Array","Function","Int8Array","Int16Array","Int32Array","Map","Math","Object","Promise","RegExp","Set","String","Symbol","TypeError","Uint8Array","Uint8ClampedArray","Uint16Array","Uint32Array","WeakMap","_","clearTimeout","isFinite","parseInt","setTimeout"],ea=-1,z={};z[Br]=z[Wr]=z[Ur]=z[Nr]=z[Gr]=z[qr]=z[kr]=z[$r]=z[Hr]=!0,z[ft]=z[Dt]=z[he]=z[xt]=z[Zt]=z[yt]=z[Pt]=z[H]=z[G]=z[fn]=z[Wn]=z[tt]=z[Zn]=z[le]=z[ce]=!1;var K={};K[ft]=K[Dt]=K[he]=K[Zt]=K[xt]=K[yt]=K[Br]=K[Wr]=K[Ur]=K[Nr]=K[Gr]=K[G]=K[fn]=K[Wn]=K[tt]=K[Zn]=K[le]=K[Ne]=K[qr]=K[kr]=K[$r]=K[Hr]=!0,K[Pt]=K[H]=K[ce]=!1;var ra={\\u00C0:"A",\\u00C1:"A",\\u00C2:"A",\\u00C3:"A",\\u00C4:"A",\\u00C5:"A",\\u00E0:"a",\\u00E1:"a",\\u00E2:"a",\\u00E3:"a",\\u00E4:"a",\\u00E5:"a",\\u00C7:"C",\\u00E7:"c",\\u00D0:"D",\\u00F0:"d",\\u00C8:"E",\\u00C9:"E",\\u00CA:"E",\\u00CB:"E",\\u00E8:"e",\\u00E9:"e",\\u00EA:"e",\\u00EB:"e",\\u00CC:"I",\\u00CD:"I",\\u00CE:"I",\\u00CF:"I",\\u00EC:"i",\\u00ED:"i",\\u00EE:"i",\\u00EF:"i",\\u00D1:"N",\\u00F1:"n",\\u00D2:"O",\\u00D3:"O",\\u00D4:"O",\\u00D5:"O",\\u00D6:"O",\\u00D8:"O",\\u00F2:"o",\\u00F3:"o",\\u00F4:"o",\\u00F5:"o",\\u00F6:"o",\\u00F8:"o",\\u00D9:"U",\\u00DA:"U",\\u00DB:"U",\\u00DC:"U",\\u00F9:"u",\\u00FA:"u",\\u00FB:"u",\\u00FC:"u",\\u00DD:"Y",\\u00FD:"y",\\u00FF:"y",\\u00C6:"Ae",\\u00E6:"ae",\\u00DE:"Th",\\u00FE:"th",\\u00DF:"ss",\\u0100:"A",\\u0102:"A",\\u0104:"A",\\u0101:"a",\\u0103:"a",\\u0105:"a",\\u0106:"C",\\u0108:"C",\\u010A:"C",\\u010C:"C",\\u0107:"c",\\u0109:"c",\\u010B:"c",\\u010D:"c",\\u010E:"D",\\u0110:"D",\\u010F:"d",\\u0111:"d",\\u0112:"E",\\u0114:"E",\\u0116:"E",\\u0118:"E",\\u011A:"E",\\u0113:"e",\\u0115:"e",\\u0117:"e",\\u0119:"e",\\u011B:"e",\\u011C:"G",\\u011E:"G",\\u0120:"G",\\u0122:"G",\\u011D:"g",\\u011F:"g",\\u0121:"g",\\u0123:"g",\\u0124:"H",\\u0126:"H",\\u0125:"h",\\u0127:"h",\\u0128:"I",\\u012A:"I",\\u012C:"I",\\u012E:"I",\\u0130:"I",\\u0129:"i",\\u012B:"i",\\u012D:"i",\\u012F:"i",\\u0131:"i",\\u0134:"J",\\u0135:"j",\\u0136:"K",\\u0137:"k",\\u0138:"k",\\u0139:"L",\\u013B:"L",\\u013D:"L",\\u013F:"L",\\u0141:"L",\\u013A:"l",\\u013C:"l",\\u013E:"l",\\u0140:"l",\\u0142:"l",\\u0143:"N",\\u0145:"N",\\u0147:"N",\\u014A:"N",\\u0144:"n",\\u0146:"n",\\u0148:"n",\\u014B:"n",\\u014C:"O",\\u014E:"O",\\u0150:"O",\\u014D:"o",\\u014F:"o",\\u0151:"o",\\u0154:"R",\\u0156:"R",\\u0158:"R",\\u0155:"r",\\u0157:"r",\\u0159:"r",\\u015A:"S",\\u015C:"S",\\u015E:"S",\\u0160:"S",\\u015B:"s",\\u015D:"s",\\u015F:"s",\\u0161:"s",\\u0162:"T",\\u0164:"T",\\u0166:"T",\\u0163:"t",\\u0165:"t",\\u0167:"t",\\u0168:"U",\\u016A:"U",\\u016C:"U",\\u016E:"U",\\u0170:"U",\\u0172:"U",\\u0169:"u",\\u016B:"u",\\u016D:"u",\\u016F:"u",\\u0171:"u",\\u0173:"u",\\u0174:"W",\\u0175:"w",\\u0176:"Y",\\u0177:"y",\\u0178:"Y",\\u0179:"Z",\\u017B:"Z",\\u017D:"Z",\\u017A:"z",\\u017C:"z",\\u017E:"z",\\u0132:"IJ",\\u0133:"ij",\\u0152:"Oe",\\u0153:"oe",\\u0149:"\'n",\\u017F:"s"},ia={"&":"&","<":"<",">":">",\'"\':""","\'":"'"},ua={"&":"&","<":"<",">":">",""":\'"\',"'":"\'"},fa={"\\\\":"\\\\","\'":"\'","\\n":"n","\\r":"r","\\u2028":"u2028","\\u2029":"u2029"},oa=parseFloat,sa=parseInt,bu=typeof global=="object"&&global&&global.Object===Object&&global,aa=typeof self=="object"&&self&&self.Object===Object&&self,ln=bu||aa||Function("return this")(),Vr=typeof se=="object"&&se&&!se.nodeType&&se,Bt=Vr&&typeof Me=="object"&&Me&&!Me.nodeType&&Me,Ru=Bt&&Bt.exports===Vr,jr=Ru&&bu.process,Un=function(){try{var c=Bt&&Bt.require&&Bt.require("util").types;return c||jr&&jr.binding&&jr.binding("util")}catch(g){}}(),Lu=Un&&Un.isArrayBuffer,Eu=Un&&Un.isDate,Ou=Un&&Un.isMap,Du=Un&&Un.isRegExp,Pu=Un&&Un.isSet,Bu=Un&&Un.isTypedArray;function Rn(c,g,p){switch(p.length){case 0:return c.call(g);case 1:return c.call(g,p[0]);case 2:return c.call(g,p[0],p[1]);case 3:return c.call(g,p[0],p[1],p[2])}return c.apply(g,p)}function la(c,g,p,A){for(var I=-1,U=c==null?0:c.length;++I-1}function ni(c,g,p){for(var A=-1,I=c==null?0:c.length;++A-1;);return p}function Hu(c,g){for(var p=c.length;p--&&Jt(g,c[p],0)>-1;);return p}function xa(c,g){for(var p=c.length,A=0;p--;)c[p]===g&&++A;return A}var ya=ii(ra),wa=ii(ia);function Aa(c){return"\\\\"+fa[c]}function Sa(c,g){return c==null?i:c[g]}function Qt(c){return js.test(c)}function Ta(c){return na.test(c)}function Fa(c){for(var g,p=[];!(g=c.next()).done;)p.push(g.value);return p}function si(c){var g=-1,p=Array(c.size);return c.forEach(function(A,I){p[++g]=[I,A]}),p}function Ku(c,g){return function(p){return c(g(p))}}function St(c,g){for(var p=-1,A=c.length,I=0,U=[];++p-1}function hl(n,t){var e=this.__data__,r=fr(e,n);return r<0?(++this.size,e.push([n,t])):e[r][1]=t,this}ot.prototype.clear=sl,ot.prototype.delete=al,ot.prototype.get=ll,ot.prototype.has=cl,ot.prototype.set=hl;function st(n){var t=-1,e=n==null?0:n.length;for(this.clear();++t=t?n:t)),n}function kn(n,t,e,r,u,o){var s,a=t&P,h=t&an,d=t&nn;if(e&&(s=u?e(n,r,u,o):e(n)),s!==i)return s;if(!X(n))return n;var _=M(n);if(_){if(s=_c(n),!a)return Fn(n,s)}else{var v=xn(n),x=v==H||v==un;if(Rt(n))return Mf(n,a);if(v==Wn||v==ft||x&&!u){if(s=h||x?{}:Yf(n),!a)return h?uc(n,Ml(s,n)):ic(n,rf(s,n))}else{if(!K[v])return u?n:{};s=vc(n,v,a)}}o||(o=new Jn);var S=o.get(n);if(S)return S;o.set(n,s),So(n)?n.forEach(function(C){s.add(kn(C,t,e,C,n,o))}):wo(n)&&n.forEach(function(C,E){s.set(E,kn(C,t,e,E,n,o))});var F=d?h?Di:Oi:h?In:cn,R=_?i:F(n);return Nn(R||n,function(C,E){R&&(E=C,C=n[E]),xe(s,E,kn(C,t,e,E,n,o))}),s}function bl(n){var t=cn(n);return function(e){return uf(e,n,t)}}function uf(n,t,e){var r=e.length;if(n==null)return!r;for(n=$(n);r--;){var u=e[r],o=t[u],s=n[u];if(s===i&&!(u in n)||!o(s))return!1}return!0}function ff(n,t,e){if(typeof n!="function")throw new Gn(y);return Ce(function(){n.apply(i,e)},t)}function ye(n,t,e,r){var u=-1,o=$e,s=!0,a=n.length,h=[],d=t.length;if(!a)return h;e&&(t=Z(t,Ln(e))),r?(o=ni,s=!1):t.length>=m&&(o=pe,s=!1,t=new Nt(t));n:for(;++uu?0:u+e),r=r===i||r>u?u:b(r),r<0&&(r+=u),r=e>r?0:Fo(r);e0&&e(a)?t>1?vn(a,t-1,e,r,u):At(u,a):r||(u[u.length]=a)}return u}var di=Df(),af=Df(!0);function et(n,t){return n&&di(n,t,cn)}function _i(n,t){return n&&af(n,t,cn)}function sr(n,t){return wt(t,function(e){return pt(n[e])})}function qt(n,t){t=Mt(t,n);for(var e=0,r=t.length;n!=null&&et}function El(n,t){return n!=null&&q.call(n,t)}function Ol(n,t){return n!=null&&t in $(n)}function Dl(n,t,e){return n>=mn(t,e)&&n=120&&_.length>=120)?new Nt(s&&_):i}_=n[0];var v=-1,x=a[0];n:for(;++v-1;)a!==n&&je.call(a,h,1),je.call(n,h,1);return n}function yf(n,t){for(var e=n?t.length:0,r=e-1;e--;){var u=t[e];if(e==r||u!==o){var o=u;ht(u)?je.call(n,u,1):Ci(n,u)}}return n}function Si(n,t){return n+er(ju()*(t-n+1))}function Yl(n,t,e,r){for(var u=-1,o=sn(tr((t-n)/(e||1)),0),s=p(o);o--;)s[r?o:++u]=n,n+=e;return s}function Ti(n,t){var e="";if(!n||t<1||t>Yn)return e;do t%2&&(e+=n),t=er(t/2),t&&(n+=n);while(t);return e}function L(n,t){return qi(Jf(n,t,Mn),n+"")}function Zl(n){return ef(oe(n))}function Xl(n,t){var e=oe(n);return xr(e,Gt(t,0,e.length))}function Se(n,t,e,r){if(!X(n))return n;t=Mt(t,n);for(var u=-1,o=t.length,s=o-1,a=n;a!=null&&++uu?0:u+t),e=e>u?u:e,e<0&&(e+=u),u=t>e?0:e-t>>>0,t>>>=0;for(var o=p(u);++r>>1,s=n[o];s!==null&&!On(s)&&(e?s<=t:s=m){var d=t?null:ac(n);if(d)return Ke(d);s=!1,u=pe,h=new Nt}else h=t?[]:a;n:for(;++r=r?n:$n(n,t,e)}var If=Ga||function(n){return ln.clearTimeout(n)};function Mf(n,t){if(t)return n.slice();var e=n.length,r=Zu?Zu(e):new n.constructor(e);return n.copy(r),r}function Ri(n){var t=new n.constructor(n.byteLength);return new Qe(t).set(new Qe(n)),t}function nc(n,t){var e=t?Ri(n.buffer):n.buffer;return new n.constructor(e,n.byteOffset,n.byteLength)}function tc(n){var t=new n.constructor(n.source,lu.exec(n));return t.lastIndex=n.lastIndex,t}function ec(n){return me?$(me.call(n)):{}}function bf(n,t){var e=t?Ri(n.buffer):n.buffer;return new n.constructor(e,n.byteOffset,n.length)}function Rf(n,t){if(n!==t){var e=n!==i,r=n===null,u=n===n,o=On(n),s=t!==i,a=t===null,h=t===t,d=On(t);if(!a&&!d&&!o&&n>t||o&&s&&h&&!a&&!d||r&&s&&h||!e&&h||!u)return 1;if(!r&&!o&&!d&&n=a)return h;var d=e[r];return h*(d=="desc"?-1:1)}}return n.index-t.index}function Lf(n,t,e,r){for(var u=-1,o=n.length,s=e.length,a=-1,h=t.length,d=sn(o-s,0),_=p(h+d),v=!r;++a1?e[u-1]:i,s=u>2?e[2]:i;for(o=n.length>3&&typeof o=="function"?(u--,o):i,s&&An(e[0],e[1],s)&&(o=u<3?i:o,u=1),t=$(t);++r-1?u[o?t[s]:s]:i}}function Wf(n){return ct(function(t){var e=t.length,r=e,u=qn.prototype.thru;for(n&&t.reverse();r--;){var o=t[r];if(typeof o!="function")throw new Gn(y);if(u&&!s&&vr(o)=="wrapper")var s=new qn([],!0)}for(r=s?r:e;++r1&&B.reverse(),_&&ha))return!1;var d=o.get(n),_=o.get(t);if(d&&_)return d==t&&_==n;var v=-1,x=!0,S=e&Tn?new Nt:i;for(o.set(n,t),o.set(t,n);++v1?"& ":"")+t[r],t=t.join(e>2?", ":" "),n.replace(ys,`{\n/* [wrapped with `+t+`] */\n`)}function xc(n){return M(n)||Ht(n)||!!(Qu&&n&&n[Qu])}function ht(n,t){var e=typeof n;return t=t==null?Yn:t,!!t&&(e=="number"||e!="symbol"&&Ls.test(n))&&n>-1&&n%1==0&&n0){if(++t>=zt)return arguments[0]}else t=0;return n.apply(i,arguments)}}function xr(n,t){var e=-1,r=n.length,u=r-1;for(t=t===i?r:t;++e1?n[t-1]:i;return e=typeof e=="function"?(n.pop(),e):i,so(n,e)});function ao(n){var t=f(n);return t.__chain__=!0,t}function Rh(n,t){return t(n),n}function yr(n,t){return t(n)}var Lh=ct(function(n){var t=n.length,e=t?n[0]:0,r=this.__wrapped__,u=function(o){return gi(o,n)};return t>1||this.__actions__.length||!(r instanceof D)||!ht(e)?this.thru(u):(r=r.slice(e,+e+(t?1:0)),r.__actions__.push({func:yr,args:[u],thisArg:i}),new qn(r,this.__chain__).thru(function(o){return t&&!o.length&&o.push(i),o}))});function Eh(){return ao(this)}function Oh(){return new qn(this.value(),this.__chain__)}function Dh(){this.__values__===i&&(this.__values__=To(this.value()));var n=this.__index__>=this.__values__.length,t=n?i:this.__values__[this.__index__++];return{done:n,value:t}}function Ph(){return this}function Bh(n){for(var t,e=this;e instanceof ur;){var r=eo(e);r.__index__=0,r.__values__=i,t?u.__wrapped__=r:t=r;var u=r;e=e.__wrapped__}return u.__wrapped__=n,t}function Wh(){var n=this.__wrapped__;if(n instanceof D){var t=n;return this.__actions__.length&&(t=new D(this)),t=t.reverse(),t.__actions__.push({func:yr,args:[ki],thisArg:i}),new qn(t,this.__chain__)}return this.thru(ki)}function Uh(){return Ff(this.__wrapped__,this.__actions__)}var Nh=hr(function(n,t,e){q.call(n,e)?++n[e]:at(n,e,1)});function Gh(n,t,e){var r=M(n)?Wu:Rl;return e&&An(n,t,e)&&(t=i),r(n,T(t,3))}function qh(n,t){var e=M(n)?wt:sf;return e(n,T(t,3))}var kh=Bf(ro),$h=Bf(io);function Hh(n,t){return vn(wr(n,t),1)}function Kh(n,t){return vn(wr(n,t),nt)}function zh(n,t,e){return e=e===i?1:b(e),vn(wr(n,t),e)}function lo(n,t){var e=M(n)?Nn:Ct;return e(n,T(t,3))}function co(n,t){var e=M(n)?ca:of;return e(n,T(t,3))}var Yh=hr(function(n,t,e){q.call(n,e)?n[e].push(t):at(n,e,[t])});function Zh(n,t,e,r){n=Cn(n)?n:oe(n),e=e&&!r?b(e):0;var u=n.length;return e<0&&(e=sn(u+e,0)),Cr(n)?e<=u&&n.indexOf(t,e)>-1:!!u&&Jt(n,t,e)>-1}var Xh=L(function(n,t,e){var r=-1,u=typeof t=="function",o=Cn(n)?p(n.length):[];return Ct(n,function(s){o[++r]=u?Rn(t,s,e):we(s,t,e)}),o}),Jh=hr(function(n,t,e){at(n,e,t)});function wr(n,t){var e=M(n)?Z:gf;return e(n,T(t,3))}function Qh(n,t,e,r){return n==null?[]:(M(t)||(t=t==null?[]:[t]),e=r?i:e,M(e)||(e=e==null?[]:[e]),mf(n,t,e))}var Vh=hr(function(n,t,e){n[e?0:1].push(t)},function(){return[[],[]]});function jh(n,t,e){var r=M(n)?ti:qu,u=arguments.length<3;return r(n,T(t,4),e,u,Ct)}function np(n,t,e){var r=M(n)?ha:qu,u=arguments.length<3;return r(n,T(t,4),e,u,of)}function tp(n,t){var e=M(n)?wt:sf;return e(n,Tr(T(t,3)))}function ep(n){var t=M(n)?ef:Zl;return t(n)}function rp(n,t,e){(e?An(n,t,e):t===i)?t=1:t=b(t);var r=M(n)?Fl:Xl;return r(n,t)}function ip(n){var t=M(n)?Cl:Ql;return t(n)}function up(n){if(n==null)return 0;if(Cn(n))return Cr(n)?Vt(n):n.length;var t=xn(n);return t==G||t==Zn?n.size:yi(n).length}function fp(n,t,e){var r=M(n)?ei:Vl;return e&&An(n,t,e)&&(t=i),r(n,T(t,3))}var op=L(function(n,t){if(n==null)return[];var e=t.length;return e>1&&An(n,t[0],t[1])?t=[]:e>2&&An(t[0],t[1],t[2])&&(t=[t[0]]),mf(n,vn(t,1),[])}),Ar=qa||function(){return ln.Date.now()};function sp(n,t){if(typeof t!="function")throw new Gn(y);return n=b(n),function(){if(--n<1)return t.apply(this,arguments)}}function ho(n,t,e){return t=e?i:t,t=n&&t==null?n.length:t,lt(n,yn,i,i,i,i,t)}function po(n,t){var e;if(typeof t!="function")throw new Gn(y);return n=b(n),function(){return--n>0&&(e=t.apply(this,arguments)),n<=1&&(t=i),e}}var Hi=L(function(n,t,e){var r=Q;if(e.length){var u=St(e,ue(Hi));r|=pn}return lt(n,r,t,e,u)}),go=L(function(n,t,e){var r=Q|k;if(e.length){var u=St(e,ue(go));r|=pn}return lt(t,r,n,e,u)});function _o(n,t,e){t=e?i:t;var r=lt(n,hn,i,i,i,i,i,t);return r.placeholder=_o.placeholder,r}function vo(n,t,e){t=e?i:t;var r=lt(n,Bn,i,i,i,i,i,t);return r.placeholder=vo.placeholder,r}function mo(n,t,e){var r,u,o,s,a,h,d=0,_=!1,v=!1,x=!0;if(typeof n!="function")throw new Gn(y);t=Kn(t)||0,X(e)&&(_=!!e.leading,v="maxWait"in e,o=v?sn(Kn(e.maxWait)||0,t):o,x="trailing"in e?!!e.trailing:x);function S(en){var Vn=r,dt=u;return r=u=i,d=en,s=n.apply(dt,Vn),s}function F(en){return d=en,a=Ce(E,t),_?S(en):s}function R(en){var Vn=en-h,dt=en-d,Wo=t-Vn;return v?mn(Wo,o-dt):Wo}function C(en){var Vn=en-h,dt=en-d;return h===i||Vn>=t||Vn<0||v&&dt>=o}function E(){var en=Ar();if(C(en))return B(en);a=Ce(E,R(en))}function B(en){return a=i,x&&r?S(en):(r=u=i,s)}function Dn(){a!==i&&If(a),d=0,r=h=u=a=i}function Sn(){return a===i?s:B(Ar())}function Pn(){var en=Ar(),Vn=C(en);if(r=arguments,u=this,h=en,Vn){if(a===i)return F(h);if(v)return If(a),a=Ce(E,t),S(h)}return a===i&&(a=Ce(E,t)),s}return Pn.cancel=Dn,Pn.flush=Sn,Pn}var ap=L(function(n,t){return ff(n,1,t)}),lp=L(function(n,t,e){return ff(n,Kn(t)||0,e)});function cp(n){return lt(n,dn)}function Sr(n,t){if(typeof n!="function"||t!=null&&typeof t!="function")throw new Gn(y);var e=function(){var r=arguments,u=t?t.apply(this,r):r[0],o=e.cache;if(o.has(u))return o.get(u);var s=n.apply(this,r);return e.cache=o.set(u,s)||o,s};return e.cache=new(Sr.Cache||st),e}Sr.Cache=st;function Tr(n){if(typeof n!="function")throw new Gn(y);return function(){var t=arguments;switch(t.length){case 0:return!n.call(this);case 1:return!n.call(this,t[0]);case 2:return!n.call(this,t[0],t[1]);case 3:return!n.call(this,t[0],t[1],t[2])}return!n.apply(this,t)}}function hp(n){return po(2,n)}var pp=jl(function(n,t){t=t.length==1&&M(t[0])?Z(t[0],Ln(T())):Z(vn(t,1),Ln(T()));var e=t.length;return L(function(r){for(var u=-1,o=mn(r.length,e);++u=t}),Ht=cf(function(){return arguments}())?cf:function(n){return V(n)&&q.call(n,"callee")&&!Ju.call(n,"callee")},M=p.isArray,Mp=Lu?Ln(Lu):Bl;function Cn(n){return n!=null&&Fr(n.length)&&!pt(n)}function tn(n){return V(n)&&Cn(n)}function bp(n){return n===!0||n===!1||V(n)&&wn(n)==xt}var Rt=$a||eu,Rp=Eu?Ln(Eu):Wl;function Lp(n){return V(n)&&n.nodeType===1&&!Ie(n)}function Ep(n){if(n==null)return!0;if(Cn(n)&&(M(n)||typeof n=="string"||typeof n.splice=="function"||Rt(n)||fe(n)||Ht(n)))return!n.length;var t=xn(n);if(t==G||t==Zn)return!n.size;if(Fe(n))return!yi(n).length;for(var e in n)if(q.call(n,e))return!1;return!0}function Op(n,t){return Ae(n,t)}function Dp(n,t,e){e=typeof e=="function"?e:i;var r=e?e(n,t):i;return r===i?Ae(n,t,i,e):!!r}function zi(n){if(!V(n))return!1;var t=wn(n);return t==Pt||t==We||typeof n.message=="string"&&typeof n.name=="string"&&!Ie(n)}function Pp(n){return typeof n=="number"&&Vu(n)}function pt(n){if(!X(n))return!1;var t=wn(n);return t==H||t==un||t==Be||t==Pr}function yo(n){return typeof n=="number"&&n==b(n)}function Fr(n){return typeof n=="number"&&n>-1&&n%1==0&&n<=Yn}function X(n){var t=typeof n;return n!=null&&(t=="object"||t=="function")}function V(n){return n!=null&&typeof n=="object"}var wo=Ou?Ln(Ou):Nl;function Bp(n,t){return n===t||xi(n,t,Bi(t))}function Wp(n,t,e){return e=typeof e=="function"?e:i,xi(n,t,Bi(t),e)}function Up(n){return Ao(n)&&n!=+n}function Np(n){if(Ac(n))throw new I(w);return hf(n)}function Gp(n){return n===null}function qp(n){return n==null}function Ao(n){return typeof n=="number"||V(n)&&wn(n)==fn}function Ie(n){if(!V(n)||wn(n)!=Wn)return!1;var t=Ve(n);if(t===null)return!0;var e=q.call(t,"constructor")&&t.constructor;return typeof e=="function"&&e instanceof e&&Ze.call(e)==Wa}var Yi=Du?Ln(Du):Gl;function kp(n){return yo(n)&&n>=-Yn&&n<=Yn}var So=Pu?Ln(Pu):ql;function Cr(n){return typeof n=="string"||!M(n)&&V(n)&&wn(n)==le}function On(n){return typeof n=="symbol"||V(n)&&wn(n)==Ne}var fe=Bu?Ln(Bu):kl;function $p(n){return n===i}function Hp(n){return V(n)&&xn(n)==ce}function Kp(n){return V(n)&&wn(n)==os}var zp=_r(wi),Yp=_r(function(n,t){return n<=t});function To(n){if(!n)return[];if(Cn(n))return Cr(n)?Xn(n):Fn(n);if(ge&&n[ge])return Fa(n[ge]());var t=xn(n),e=t==G?si:t==Zn?Ke:oe;return e(n)}function gt(n){if(!n)return n===0?n:0;if(n=Kn(n),n===nt||n===-nt){var t=n<0?-1:1;return t*Ee}return n===n?n:0}function b(n){var t=gt(n),e=t%1;return t===t?e?t-e:t:0}function Fo(n){return n?Gt(b(n),0,bn):0}function Kn(n){if(typeof n=="number")return n;if(On(n))return Ot;if(X(n)){var t=typeof n.valueOf=="function"?n.valueOf():n;n=X(t)?t+"":t}if(typeof n!="string")return n===0?n:+n;n=ku(n);var e=Ms.test(n);return e||Rs.test(n)?sa(n.slice(2),e?2:8):Is.test(n)?Ot:+n}function Co(n){return rt(n,In(n))}function Zp(n){return n?Gt(b(n),-Yn,Yn):n===0?n:0}function N(n){return n==null?"":En(n)}var Xp=re(function(n,t){if(Fe(t)||Cn(t)){rt(t,cn(t),n);return}for(var e in t)q.call(t,e)&&xe(n,e,t[e])}),Io=re(function(n,t){rt(t,In(t),n)}),Ir=re(function(n,t,e,r){rt(t,In(t),n,r)}),Jp=re(function(n,t,e,r){rt(t,cn(t),n,r)}),Qp=ct(gi);function Vp(n,t){var e=ee(n);return t==null?e:rf(e,t)}var jp=L(function(n,t){n=$(n);var e=-1,r=t.length,u=r>2?t[2]:i;for(u&&An(t[0],t[1],u)&&(r=1);++e1),o}),rt(n,Di(n),e),r&&(e=kn(e,P|an|nn,lc));for(var u=t.length;u--;)Ci(e,t[u]);return e});function vg(n,t){return bo(n,Tr(T(t)))}var mg=ct(function(n,t){return n==null?{}:Kl(n,t)});function bo(n,t){if(n==null)return{};var e=Z(Di(n),function(r){return[r]});return t=T(t),xf(n,e,function(r,u){return t(r,u[0])})}function xg(n,t,e){t=Mt(t,n);var r=-1,u=t.length;for(u||(u=1,n=i);++rt){var r=n;n=t,t=r}if(e||n%1||t%1){var u=ju();return mn(n+u*(t-n+oa("1e-"+((u+"").length-1))),t)}return Si(n,t)}var Rg=ie(function(n,t,e){return t=t.toLowerCase(),n+(e?Eo(t):t)});function Eo(n){return Ji(N(n).toLowerCase())}function Oo(n){return n=N(n),n&&n.replace(Es,ya).replace(Qs,"")}function Lg(n,t,e){n=N(n),t=En(t);var r=n.length;e=e===i?r:Gt(b(e),0,r);var u=e;return e-=t.length,e>=0&&n.slice(e,u)==t}function Eg(n){return n=N(n),n&&hs.test(n)?n.replace(su,wa):n}function Og(n){return n=N(n),n&&ms.test(n)?n.replace(Kr,"\\\\$&"):n}var Dg=ie(function(n,t,e){return n+(e?"-":"")+t.toLowerCase()}),Pg=ie(function(n,t,e){return n+(e?" ":"")+t.toLowerCase()}),Bg=Pf("toLowerCase");function Wg(n,t,e){n=N(n),t=b(t);var r=t?Vt(n):0;if(!t||r>=t)return n;var u=(t-r)/2;return dr(er(u),e)+n+dr(tr(u),e)}function Ug(n,t,e){n=N(n),t=b(t);var r=t?Vt(n):0;return t&&r>>0,e?(n=N(n),n&&(typeof t=="string"||t!=null&&!Yi(t))&&(t=En(t),!t&&Qt(n))?bt(Xn(n),0,e):n.split(t,e)):[]}var Kg=ie(function(n,t,e){return n+(e?" ":"")+Ji(t)});function zg(n,t,e){return n=N(n),e=e==null?0:Gt(b(e),0,n.length),t=En(t),n.slice(e,e+t.length)==t}function Yg(n,t,e){var r=f.templateSettings;e&&An(n,t,e)&&(t=i),n=N(n),t=Ir({},t,r,kf);var u=Ir({},t.imports,r.imports,kf),o=cn(u),s=oi(u,o),a,h,d=0,_=t.interpolate||Ge,v="__p += \'",x=ai((t.escape||Ge).source+"|"+_.source+"|"+(_===au?Cs:Ge).source+"|"+(t.evaluate||Ge).source+"|$","g"),S="//# sourceURL="+(q.call(t,"sourceURL")?(t.sourceURL+"").replace(/\\s/g," "):"lodash.templateSources["+ ++ea+"]")+`\n`;n.replace(x,function(C,E,B,Dn,Sn,Pn){return B||(B=Dn),v+=n.slice(d,Pn).replace(Os,Aa),E&&(a=!0,v+=`\' +\n__e(`+E+`) +\n\'`),Sn&&(h=!0,v+=`\';\n`+Sn+`;\n__p += \'`),B&&(v+=`\' +\n((__t = (`+B+`)) == null ? \'\' : __t) +\n\'`),d=Pn+C.length,C}),v+=`\';\n`;var F=q.call(t,"variable")&&t.variable;if(!F)v=`with (obj) {\n`+v+`\n}\n`;else if(Ts.test(F))throw new I(O);v=(h?v.replace(ss,""):v).replace(as,"$1").replace(ls,"$1;"),v="function("+(F||"obj")+`) {\n`+(F?"":`obj || (obj = {});\n`)+"var __t, __p = \'\'"+(a?", __e = _.escape":"")+(h?`, __j = Array.prototype.join;\nfunction print() { __p += __j.call(arguments, \'\') }\n`:`;\n`)+v+`return __p\n}`;var R=Po(function(){return U(o,S+"return "+v).apply(i,s)});if(R.source=v,zi(R))throw R;return R}function Zg(n){return N(n).toLowerCase()}function Xg(n){return N(n).toUpperCase()}function Jg(n,t,e){if(n=N(n),n&&(e||t===i))return ku(n);if(!n||!(t=En(t)))return n;var r=Xn(n),u=Xn(t),o=$u(r,u),s=Hu(r,u)+1;return bt(r,o,s).join("")}function Qg(n,t,e){if(n=N(n),n&&(e||t===i))return n.slice(0,zu(n)+1);if(!n||!(t=En(t)))return n;var r=Xn(n),u=Hu(r,Xn(t))+1;return bt(r,0,u).join("")}function Vg(n,t,e){if(n=N(n),n&&(e||t===i))return n.replace(zr,"");if(!n||!(t=En(t)))return n;var r=Xn(n),u=$u(r,Xn(t));return bt(r,u).join("")}function jg(n,t){var e=_n,r=zn;if(X(t)){var u="separator"in t?t.separator:u;e="length"in t?b(t.length):e,r="omission"in t?En(t.omission):r}n=N(n);var o=n.length;if(Qt(n)){var s=Xn(n);o=s.length}if(e>=o)return n;var a=e-Vt(r);if(a<1)return r;var h=s?bt(s,0,a).join(""):n.slice(0,a);if(u===i)return h+r;if(s&&(a+=h.length-a),Yi(u)){if(n.slice(a).search(u)){var d,_=h;for(u.global||(u=ai(u.source,N(lu.exec(u))+"g")),u.lastIndex=0;d=u.exec(_);)var v=d.index;h=h.slice(0,v===i?a:v)}}else if(n.indexOf(En(u),a)!=a){var x=h.lastIndexOf(u);x>-1&&(h=h.slice(0,x))}return h+r}function nd(n){return n=N(n),n&&cs.test(n)?n.replace(ou,ba):n}var td=ie(function(n,t,e){return n+(e?" ":"")+t.toUpperCase()}),Ji=Pf("toUpperCase");function Do(n,t,e){return n=N(n),t=e?i:t,t===i?Ta(n)?Ea(n):da(n):n.match(t)||[]}var Po=L(function(n,t){try{return Rn(n,i,t)}catch(e){return zi(e)?e:new I(e)}}),ed=ct(function(n,t){return Nn(t,function(e){e=it(e),at(n,e,Hi(n[e],n))}),n});function rd(n){var t=n==null?0:n.length,e=T();return n=t?Z(n,function(r){if(typeof r[1]!="function")throw new Gn(y);return[e(r[0]),r[1]]}):[],L(function(r){for(var u=-1;++uYn)return[];var e=bn,r=mn(n,bn);t=T(t),n-=bn;for(var u=fi(r,t);++e0||t<0)?new D(e):(n<0?e=e.takeRight(-n):n&&(e=e.drop(n)),t!==i&&(t=b(t),e=t<0?e.dropRight(-t):e.take(t-n)),e)},D.prototype.takeRightWhile=function(n){return this.reverse().takeWhile(n).reverse()},D.prototype.toArray=function(){return this.take(bn)},et(D.prototype,function(n,t){var e=/^(?:filter|find|map|reject)|While$/.test(t),r=/^(?:head|last)$/.test(t),u=f[r?"take"+(t=="last"?"Right":""):t],o=r||/^find/.test(t);!u||(f.prototype[t]=function(){var s=this.__wrapped__,a=r?[1]:arguments,h=s instanceof D,d=a[0],_=h||M(s),v=function(E){var B=u.apply(f,At([E],a));return r&&x?B[0]:B};_&&e&&typeof d=="function"&&d.length!=1&&(h=_=!1);var x=this.__chain__,S=!!this.__actions__.length,F=o&&!x,R=h&&!S;if(!o&&_){s=R?s:new D(this);var C=n.apply(s,a);return C.__actions__.push({func:yr,args:[v],thisArg:i}),new qn(C,x)}return F&&R?n.apply(this,a):(C=this.thru(v),F?r?C.value()[0]:C.value():C)})}),Nn(["pop","push","shift","sort","splice","unshift"],function(n){var t=ze[n],e=/^(?:push|sort|unshift)$/.test(n)?"tap":"thru",r=/^(?:pop|shift)$/.test(n);f.prototype[n]=function(){var u=arguments;if(r&&!this.__chain__){var o=this.value();return t.apply(M(o)?o:[],u)}return this[e](function(s){return t.apply(M(s)?s:[],u)})}}),et(D.prototype,function(n,t){var e=f[t];if(e){var r=e.name+"";q.call(te,r)||(te[r]=[]),te[r].push({name:t,func:e})}}),te[pr(i,k).name]=[{name:"wrapper",func:i}],D.prototype.clone=nl,D.prototype.reverse=tl,D.prototype.value=el,f.prototype.at=Lh,f.prototype.chain=Eh,f.prototype.commit=Oh,f.prototype.next=Dh,f.prototype.plant=Bh,f.prototype.reverse=Wh,f.prototype.toJSON=f.prototype.valueOf=f.prototype.value=Uh,f.prototype.first=f.prototype.head,ge&&(f.prototype[ge]=Ph),f},Tt=Oa();typeof define=="function"&&typeof define.amd=="object"&&define.amd?(ln._=Tt,define(function(){return Tt})):Bt?((Bt.exports=Tt)._=Tt,Vr._=Tt):ln._=Tt}).call(se)});var Or=Jd(qo());var _t=i=>[...new Set(i)],ko=i=>[...new Map(i.map(l=>[l.toLowerCase(),l])).values()];var $o=(i,l,m)=>{if(i=="Spaces/Home")return"ui//mk-ui-spaces";if(!l)return m?"ui//mk-ui-folder-solid":"ui//mk-ui-folder";switch(l){case"png":case"jpg":case"jpeg":case"svg":return"ui//mk-make-image";case"mov":case"webm":return"ui//mk-ui-video";case"canvas":return"ui//mk-ui-canvas";default:return m?"ui//mk-ui-file-solid":"ui//mk-ui-file"}};function Ho(i){return Array.isArray(i)?i:typeof i=="string"?[i]:[]}var Ko=(i,l)=>l.indexOf(i)>0?l.indexOf(i):l.length;var Mr=i=>"spaces://"+i;var ut=i=>{var l;return(l=i==null?void 0:i.match(/(\\\\.|[^,])+/g))!=null?l:[]},Kt=i=>{if(!i)return"";let l=/\\[\\[(.*?)\\]\\]/g.exec(i),m=(l==null?void 0:l.length)>1?l[1].substring(0,Ko("|",l[1])):i;return m||i};var be=(i,l)=>{if(typeof i=="string"){if(/\\/\\/(\\S+?(?:jpe?g|png|gif|svg))/gi.test(i)||i.includes("unsplash"))return"image";if(/^\\d{4}-\\d{2}-\\d{2}$/.test(i))return"date";if(l=="tag"||l=="tags")return"tag";if(/\\[\\[.*?\\]\\]/.test(i))return"link"}else{if(typeof i=="number")return"number";if(typeof i=="boolean")return"boolean";if(i)if(Array.isArray(i)||typeof i=="string"&&i.indexOf(",")>-1){let m=Array.isArray(i)?i:[];if(typeof i=="string"&&i.indexOf(",")>-1&&(m=ut(i)),l=="tag"||l=="tags")return"tag-multi";if(m.length==1&&Array.isArray(m[0])&&m[0].length==1&&typeof m[0][0]=="string")return"link";let w=_t(m.map(y=>be(y,l)));return w.length==1&&w[0]=="link"?"link-multi":"option-multi"}else{if(i.isLuxonDateTime)return"date";if(i.isLuxonDuration)return"duration";if(i.type=="file")return"link";if(typeof i=="object"&&!Array.isArray(i)&&i!==null)return"object"}else return"unknown"}return"text"};var zo=i=>Object.keys(i!=null?i:{}).filter(l=>l!="position");var ae=i=>i.join(","),Yo=i=>i.join(", ");var br=(i,l)=>{switch(be(l,i)){case"object":return JSON.stringify(l);case"number":return l.toString();case"boolean":return l?"true":"false";case"date":return l;case"duration":return Yo(Object.keys(l.values).reduce((w,y)=>[...w,...l.values[y]>0?[l.values[y]+" "+y]:[]],[]));case"option-multi":case"link-multi":return typeof l=="string"?Kt(l):ae(l.map(w=>w?typeof w=="string"?Kt(w):w.path?w.path:Array.isArray(l)&&w.length==1&&Array.isArray(w[0])&&w[0].length==1&&typeof w[0][0]=="string"?w[0][0]:JSON.stringify(w):""));case"link":return Array.isArray(l)&&l.length==1&&Array.isArray(l[0])&&l[0].length==1&&typeof l[0][0]=="string"?l[0][0]:typeof l=="string"?Kt(l):l.path;case"text":case"tag":case"image":return l}return""};var Zo=i=>{switch(i){case"duration":return"text";case"unknown":return"text"}return i};var Rr=(i,l)=>i==l,iu=(i,l)=>(i!=null?i:"").length==0,uu=(i,l)=>(i!=null?i:"").toLowerCase().includes((l!=null?l:"").toLowerCase()),Lr=(i,l)=>parseFloat(i)>parseFloat(l),Er=(i,l)=>parseInt(i)>parseInt(l),fu=(i,l)=>{let m=i?ut(i):[];return(l?ut(l):[]).some(y=>m.some(O=>O==y))},Xo=i=>{let l=new Date(`${i}T00:00`),m=new Date;return l.getMonth()===m.getMonth()&&l.getDate()===m.getDate()};var Re={isNotEmpty:{type:["text","file","link","link-multi","fileprop","image"],fn:(i,l)=>!iu(i,""),valueType:"none"},isEmpty:{type:["text","file","link","link-multi","fileprop","image"],fn:(i,l)=>iu(i,""),valueType:"none"},include:{fn:(i,l)=>uu(i,l),type:["text","file","link","link-multi","fileprop","image"],valueType:"text"},notInclude:{type:["text","file","link","link-multi","fileprop","image"],fn:(i,l)=>!uu(i,l),valueType:"text"},is:{type:["text","file","link","context","fileprop"],fn:(i,l)=>Rr(i,l),valueType:"text"},isNot:{type:["text","file","link","context","fileprop"],fn:(i,l)=>!Rr(i,l),valueType:"text"},equal:{type:["number"],fn:(i,l)=>Rr(i,l),valueType:"number"},isGreatThan:{type:["number"],fn:(i,l)=>Lr(i,l),valueType:"number"},isLessThan:{type:["number"],fn:(i,l)=>Er(i,l),valueType:"number"},isLessThanOrEqual:{type:["number"],fn:(i,l)=>!Lr(i,l),valueType:"number"},isGreatThanOrEqual:{type:["number"],fn:(i,l)=>!Er(i,l),valueType:"number"},dateBefore:{type:["date","fileprop"],fn:(i,l)=>Er(i,l),valueType:"date"},dateAfter:{type:["date","fileprop"],fn:(i,l)=>Lr(i,l),valueType:"date"},isSameDateAsToday:{type:["date"],fn:(i,l)=>Xo(i,l),valueType:"none"},isAnyInList:{type:["option","context","option-multi","context-multi","tags-multi","tags"],fn:(i,l)=>fu(i,l),valueType:"list"},isNoneInList:{type:["option","context","option-multi","context-multi","tags-multi","tags"],fn:(i,l)=>!fu(i,l),valueType:"list"},isTrue:{type:["boolean"],fn:(i,l)=>i=="true",valueType:"none"},isFalse:{type:["boolean"],fn:(i,l)=>i!="true",valueType:"none"}};var Qd=(i,l)=>l.reduce((w,y)=>{let[O,J]=w,j=y.type=="fileprop"?Vo(J,y):y.type=="filemeta"?Qo(J,y):y.type=="frontmatter"?Jo(J,y):[],Y=J.filter(P=>!j.includes(P));return[[...O,...j],Y]},[[],i])[0],Vd=(i,l)=>l.reduce((m,w)=>w.type=="fileprop"?Vo(m,w):w.type=="filemeta"?Qo(m,w):w.type=="frontmatter"?Jo(m,w):[],i),Jo=(i,l)=>i.filter(m=>{let w=m.frontmatter;if(!w||!w[l.field])return!1;let y=Re[l.fn],O=!0;return y&&(O=y.fn(br(l.field,w[l.field]),l.value)),O}),Qo=(i,l)=>i.filter(m=>{let w="";l.field=="outlinks"?w=ae(m.outlinks):l.field=="inlinks"?w=ae(m.inlinks):l.field=="tags"&&(w=ae(m.tags));let y=Re[l.fn],O=!0;return y&&(O=y.fn(w,l.value)),O}),Vo=(i,l)=>i.filter(m=>{if(["name","path","sticker","color","isFolder","extension","ctime","mtime","size","parent"].includes(l.field)){let y=Re[l.fn],O=!0;return y&&(O=y.fn(m[l.field],l.value)),O}return!0}),jo=(i,l)=>i.reduce((w,y)=>!w||y.filters.length==0?w:y.type=="any"?Qd([l],y.filters).length>0:Vd([l],y.filters).length>0,!0);var ns=(i,l,m)=>{if(!l)return{changed:!1,cache:{path:i.path,frames:{},schemas:[],listitems:{}}};let w=l.schemas,y=w.filter(Y=>Y.type=="frame").reduce((Y,P)=>{var an,nn;return Et(Lt({},Y),{[P.id]:{schema:P,cols:l.fields.filter(rn=>rn.schemaId==P.id),rows:(nn=(an=l.tables[P.id])==null?void 0:an.rows)!=null?nn:[]}})},{}),O=w.filter(Y=>Y.type=="listitem").reduce((Y,P)=>{var an,nn;return Et(Lt({},Y),{[P.id]:{schema:P,cols:l.fields.filter(rn=>rn.schemaId==P.id),rows:(nn=(an=l.tables[P.id])==null?void 0:an.rows)!=null?nn:[]}})},{}),J={path:i.path,frames:y,schemas:w,listitems:O},j=!0;return m&&Or.default.isEqual(J,m)&&(j=!1),{changed:j,cache:J}},ts=(i,l,m)=>{var Tn,Q,k,vt,hn,Bn,pn,gn,yn;let w={};if(!l)return{changed:!1,cache:{cols:[],path:i.path,schemas:[],outlinks:[],contexts:[],files:[],tables:{},space:i,spaceMap:w}};let y=l.schemas.find(W=>W.primary=="true"),O={schema:y,cols:l.fields.filter(W=>W.schemaId==y.id),rows:(Q=(Tn=l.tables[y.id])==null?void 0:Tn.rows)!=null?Q:[]},J=l.schemas.filter(W=>W.type=="db").reduce((W,dn)=>{var _n,zn;return Et(Lt({},W),{[dn.id]:{schema:dn,cols:l.fields.filter(zt=>zt.schemaId==dn.id),rows:(zn=(_n=l.tables[dn.id])==null?void 0:_n.rows)!=null?zn:[]}})},{}),j=(vt=(k=O.cols)==null?void 0:k.filter(W=>W.type.startsWith("context")))!=null?vt:[],Y=(Bn=(hn=O.cols)==null?void 0:hn.filter(W=>W.type.startsWith("link")))!=null?Bn:[],P=_t(j.map(W=>W.value));j.forEach(W=>{w[W.name]={},O.rows.forEach(dn=>{ut(dn[W.name]).forEach(_n=>{var zn;return w[W.name][_n]=[...(zn=w[W.name][_n])!=null?zn:[],dn.File]})})});let an=_t(O.rows.reduce((W,dn)=>_t([...W,...[...j,...Y].flatMap(_n=>ut(dn[_n.name]).map(zn=>Kt(zn)))]),[])),nn={cols:l.fields.filter(W=>W.schemaId==y.id),path:i.path,contexts:P,outlinks:an,files:(yn=(gn=(pn=J.files)==null?void 0:pn.rows)==null?void 0:gn.map(W=>W.File))!=null?yn:[],tables:J,schemas:l.schemas,space:i,spaceMap:w},rn=!0;return m&&Or.default.isEqual(nn,m)&&(rn=!0),{changed:rn,cache:nn}},jd=i=>{var m,w,y,O,J,j,Y,P,an,nn,rn,Tn,Q;let l=[];return i&&i.tags&&l.push(...(w=(m=i.tags)==null?void 0:m.map(k=>k.tag))!=null?w:[]),i&&((y=i.frontmatter)==null?void 0:y.tags)&&l.push(...(typeof((O=i.frontmatter)==null?void 0:O.tags)=="string"?ut(i.frontmatter.tags.replace(/ /g,"")):Array.isArray((J=i.frontmatter)==null?void 0:J.tags)?(Y=(j=i.frontmatter)==null?void 0:j.tags)!=null?Y:[]:[]).filter(k=>typeof k=="string").map(k=>"#"+k)),i&&((P=i.frontmatter)==null?void 0:P.tag)&&l.push(...(typeof((an=i.frontmatter)==null?void 0:an.tag)=="string"?ut(i.frontmatter.tag.replace(/ /g,"")):Array.isArray((nn=i.frontmatter)==null?void 0:nn.tag)?(Tn=(rn=i.frontmatter)==null?void 0:rn.tag)!=null?Tn:[]:[]).filter(k=>typeof k=="string").map(k=>"#"+k)),(Q=_t(l))!=null?Q:[]};var es=(i,l,m,w,y,O,J,j,Y)=>{var Ot,bn,Oe,De,Pe,ft,Dt,Be,xt,yt,We,Pt;let P={cacheType:"file",path:i.path,name:i.name,displayName:i.name,filename:i.filename};i.stat&&(P.ctime=i.stat.ctime,P.mtime=i.stat.mtime,P.size=i.stat.size,P.extension=i.extension);let an=[],nn=jd(O),rn=(H,un,G=new Set)=>{var Yt,Wn;let fn=[];for(let Ue of un){let Pr=(Wn=(Yt=H.get(Ue))==null?void 0:Yt.contexts)!=null?Wn:[];for(let tt of Pr)G.has(tt)||(fn.push(tt),G.add(tt),fn.push(...rn(H,[Mr(tt)],G)))}return fn};if(m.has(i.parent))for(let H of(Ot=m.get(i.parent).contexts)!=null?Ot:[])an.push(H);an.push(...nn);let Tn=i.name,Q=[i.name],k=(bn=y==null?void 0:y.sticker)!=null?bn:"",vt=(Oe=y==null?void 0:y.color)!=null?Oe:"",hn=(De=y==null?void 0:y.folder)!=null?De:"";hn=="true"&&(hn="");let Bn=i.parent,pn=i.isFolder,gn={},yn={},W=[],dn=[],_n=O==null?void 0:O.frontmatter;O!=null&&O.links&&dn.push(...O.links.map(H=>H.link));let zn=j&&pn?j.folderNotePath:i.path;for(let H of Object.keys(J))zn in J[H]&&W.push(H);let zt="";if(_n){let un=ko(zo(_n)).reduce((G,fn)=>Et(Lt({},G),{[fn]:{name:fn,type:Zo(be(_n[fn],fn))}}),{});Object.keys(un).forEach(G=>{gn[G]=br(G,_n[G]),yn[G]=un[G].type,un[G].type.startsWith("link")&&dn.push(Kt(gn[G]))}),zt=(Pe=gn[l.fmKeyBanner])!=null?Pe:"",gn[l.fmKeySticker]&&(k=_n[l.fmKeySticker]),gn[l.fmKeyColor]&&(vt=_n[l.fmKeyColor]),gn[l.fmKeyAlias]&&(Q=Ho(_n[l.fmKeyAlias]))}let Dr=l.spacesUseAlias&&(ft=Q[0])!=null?ft:Tn;k=(k==null?void 0:k.length)>0?k:$o(P.path,P.extension,!1);let mt=Et(Lt({},P),{name:Tn,tags:_t(an),displayName:Dr,aliases:Q,fileTags:nn,folderNote:j,sticker:k,color:vt,parent:Bn,banner:zt,isFolder:pn,sortBy:hn,frontmatter:gn,frontmatterTypes:yn,inlinks:W,outlinks:dn}),jn=[],Le={};for(let H of an)jn.push(Mr(H));for(let[H,un]of m){if(un.space&&un.space.folderPath==Bn&&un.space.defPath!=i.path){jn.push(H);continue}if(((Be=(Dt=un.metadata)==null?void 0:Dt.filters)==null?void 0:Be.length)>0&&jo(un.metadata.filters,mt)){jn.push(H);continue}if(((yt=(xt=un.metadata)==null?void 0:xt.links)==null?void 0:yt.length)>0&&((Pt=(We=un.metadata)==null?void 0:We.links)!=null?Pt:[]).find(fn=>fn==mt.path)){jn.push(H);continue}}let nt=rn(m,jn);jn.push(...nt.map(H=>Mr(H))),jn.forEach(H=>{var un,G,fn;Le[H]=(fn=(G=(un=w.get(H))==null?void 0:un.tables)==null?void 0:G.files)==null?void 0:fn.rows.findIndex(Yt=>Yt.File==i.path)}),mt.tags.push(...nt);let Yn=j&&!pn?Et(Lt({},mt),{spaces:[],contexts:[]}):Et(Lt({},mt),{spaces:_t(jn),spaceRanks:Le}),Ee=!0;return Y&&Or.default.isEqual(Yn,Y)&&(Ee=!1),{changed:Ee,cache:Yn}};function rs(i){let{file:l,settings:m,spacesCache:w,vaultItem:y,metadataCache:O,contextsCache:J,resolvedLinks:j,folderNote:Y,oldMetadata:P}=i;return es(l,m,w,J,y,O,j,Y,P)}function is(i){let{space:l,mdb:m,oldCache:w}=i;return ts(l,m,w)}function us(i){let{space:l,mdb:m,oldCache:w}=i;return ns(l,m,w)}var n_=self;n_.onmessage=async i=>{let{payload:l,job:m}=i.data,w;m.type=="file"?w=rs(l):m.type=="context"?w=is(l):m.type=="frames"&&(w=us(l));try{postMessage({job:m,result:w})}catch(y){console.log(y),postMessage({job:m,result:{$error:`Failed to index ${m.type} ${m.path}: ${y}`}})}};\n/**\n * @license\n * Lodash \n * Copyright OpenJS Foundation and other contributors \n * Released under MIT license \n * Based on Underscore.js 1.8.3 \n * Copyright Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors\n */\n'); } // src/superstate/workers/manager.ts -var Manager = class extends import_obsidian62.Component { +var Manager = class extends import_obsidian61.Component { constructor(numWorkers, cache) { super(); this.numWorkers = numWorkers; @@ -64913,7 +64939,7 @@ var loadSpaces = (plugin) => { plugin2.settings.spacesFolder ); const allcontexts = (_b2 = uniq([...Object.keys(plugin2.app.metadataCache.getTags()).map((f4) => tagToTagPath(f4)), ...(_a2 = folder == null ? void 0 : folder.children.filter( - (f4) => f4 instanceof import_obsidian63.TFolder && f4.name.charAt(0) == "#" + (f4) => f4 instanceof import_obsidian62.TFolder && f4.name.charAt(0) == "#" ).map((g4) => g4.name)) != null ? _a2 : []]).map((f4) => spaceFromTag(plugin2, tagPathToTag(f4)))) != null ? _b2 : []; return allcontexts; }; @@ -64922,7 +64948,7 @@ var loadSpaces = (plugin) => { const rootFolder = plugin2.app.vault.getRoot(); function recursiveFx(folder) { for (const child of folder.children) { - if (child instanceof import_obsidian63.TFolder) { + if (child instanceof import_obsidian62.TFolder) { if (!child.path.startsWith(plugin2.settings.spacesFolder + "/#")) { const childFolder = child; folders.push(child); @@ -64939,13 +64965,13 @@ var loadSpaces = (plugin) => { const allFolders = getAllFolderContextFiles(plugin); return [...allTagSpaces, ...allFolders]; }; -var Superstate = class extends import_obsidian63.Component { +var Superstate = class extends import_obsidian62.Component { constructor(app2, indexVersion, onChange, plugin) { super(); this.app = app2; this.indexVersion = indexVersion; this.onChange = onChange; - this.debounceSaveSpaceDatabase = (0, import_lodash13.debounce)( + this.debounceSaveSpaceDatabase = (0, import_lodash14.debounce)( (tables) => { saveDBToPath(this.plugin, this.plugin.spacesDBPath, tables); }, @@ -65052,9 +65078,9 @@ var Superstate = class extends import_obsidian63.Component { } }); const spaceFolder = getAbstractFileAtPath(this.plugin, "Context"); - if (spaceFolder instanceof import_obsidian63.TFolder) { + if (spaceFolder instanceof import_obsidian62.TFolder) { promises.push(...spaceFolder.children.map((f4) => { - if (f4 instanceof import_obsidian63.TFile && f4.extension == "mdb") { + if (f4 instanceof import_obsidian62.TFile && f4.extension == "mdb") { const folderPath = `${this.plugin.settings.spacesFolder}/${f4.basename}/.space`; return this.plugin.files.fileExists(folderPath).then((g4) => { if (!g4) @@ -65069,7 +65095,7 @@ var Superstate = class extends import_obsidian63.Component { function recursiveFx(folder) { for (const child of folder.children) { if (!folder.path.startsWith(plugin.settings.spacesFolder)) { - if (child instanceof import_obsidian63.TFolder) { + if (child instanceof import_obsidian62.TFolder) { const childFolder = child; folders.push(child); if (childFolder.children) @@ -65126,7 +65152,7 @@ var Superstate = class extends import_obsidian63.Component { rebuildIndex(this.plugin, true); } async saveSpacesDatabaseToDisk(tables, save = true) { - if (await this.plugin.files.fileExists((0, import_obsidian63.normalizePath)(this.plugin.spacesDBPath)) && !this.spacesDBLoaded) { + if (await this.plugin.files.fileExists((0, import_obsidian62.normalizePath)(this.plugin.spacesDBPath)) && !this.spacesDBLoaded) { return; } this.spacesDBLoaded = true; @@ -65142,7 +65168,7 @@ var Superstate = class extends import_obsidian63.Component { await this.initializeSpaces(); await this.initializeContexts(); await this.initializeFrames(); - await this.initalizeFiles(); + await this.initializeFiles(); this.cleanContexts(); console.log(`Make.md Superstate: ${Date.now() - start} ms`); } @@ -65218,7 +65244,7 @@ var Superstate = class extends import_obsidian63.Component { async loadFromCache() { const allFiles = getAllAbstractFilesInVault(this.plugin); if (this.plugin.settings.indexSVG) { - const cacheIcons = allFiles.filter((f4) => f4 instanceof import_obsidian63.TFile && f4.extension == "svg").map((s5) => this.persister.load(s5.path, "icon").then((string) => { + const cacheIcons = allFiles.filter((f4) => f4 instanceof import_obsidian62.TFile && f4.extension == "svg").map((s5) => this.persister.load(s5.path, "icon").then((string) => { if ((string == null ? void 0 : string.length) > 0) this.iconsCache.set(s5.path, string); })); @@ -65249,7 +65275,7 @@ var Superstate = class extends import_obsidian63.Component { await Promise.all(cacheSpacePromises); this.broadcast("vault"); } - async initalizeFiles() { + async initializeFiles() { const allFiles = getAllAbstractFilesInVault(this.plugin); const promises = allFiles.map((l3) => this.reloadFile(l3, true)); await Promise.all(promises); @@ -65375,7 +65401,7 @@ var Superstate = class extends import_obsidian63.Component { return this.reloadSpace(spaceInfoByPath(this.plugin, path), metadata); } async renameFile(oldPath, newPath) { - var _a2, _b2; + var _a2, _b2, _c2, _d2; const oldParentPath = getParentPathFromString(oldPath); const newParentPath = getParentPathFromString(newPath); let newFilePath = newPath; @@ -65429,6 +65455,11 @@ var Superstate = class extends import_obsidian63.Component { allContextsWithFile.forEach((c4) => this.reloadContext(c4)); })); } + for (const [spacePath, spaceCache] of this.spacesIndex) { + if ((_d2 = (_c2 = spaceCache.metadata) == null ? void 0 : _c2.links) == null ? void 0 : _d2.includes(oldPath)) { + this.addToContextStoreQueue(() => saveSpaceMetadataValue(this.plugin, spacePath, this.plugin.settings.fmKeyLinks, spaceCache.metadata.links.map((f4) => f4 == oldPath ? newPath : f4))); + } + } const allContextsWithLink = []; for (const [contextPath, contextCache] of this.contextsIndex) { if (contextCache.outlinks.includes(oldPath)) { @@ -65436,15 +65467,15 @@ var Superstate = class extends import_obsidian63.Component { } } this.spacesMap.get(newFilePath).forEach((f4) => this.reloadSpaceByPath(f4)); - this.addToContextStoreQueue(() => renameLinkInContexts(this.plugin, oldPath, newFilePath, allContextsWithLink).then((f4) => Promise.all(allContextsWithFile.map((c4) => this.reloadContext(c4)))).then((f4) => { - this.reloadFile(getAbstractFileAtPath(this.plugin, newFilePath)).then( - (f5) => this.broadcast("space") - ); - })); + this.addToContextStoreQueue(() => renameLinkInContexts(this.plugin, oldPath, newFilePath, allContextsWithLink).then((f4) => Promise.all(allContextsWithFile.map((c4) => this.reloadContext(c4)))).then((f4) => this.reloadFile(getAbstractFileAtPath(this.plugin, newFilePath)).then( + (f5) => { + this.broadcast("space"); + } + ))); } async createFile(path) { const file = getAbstractFileAtPath(this.plugin, path); - if (file instanceof import_obsidian63.TFolder) { + if (file instanceof import_obsidian62.TFolder) { await this.reloadSpace(spaceFromFolder(this.plugin, path)); } await this.reloadFile(file); @@ -65563,7 +65594,7 @@ var Superstate = class extends import_obsidian63.Component { let reinit = false; const spaceSort = (_a2 = metadata == null ? void 0 : metadata.sort) != null ? _a2 : { field: "rank", asc: true, group: true }; const sortable = spaceSort.field == "rank"; - if (!import_lodash13.default.isEqual(space.metadata.links, metadata.links) || !import_lodash13.default.isEqual(space.metadata.filters, metadata.filters)) { + if (!import_lodash14.default.isEqual(space.metadata.links, metadata.links) || !import_lodash14.default.isEqual(space.metadata.filters, metadata.filters)) { reinit = true; } const newSpaceCache = { @@ -65580,7 +65611,7 @@ var Superstate = class extends import_obsidian63.Component { this.spacesIndex.set(spacePath, newSpaceCache); this.broadcast("space", "change", spacePath); if (reinit) - await this.initalizeFiles(); + await this.initializeFiles(); return newSpaceCache; } cacheForURI(uri) { @@ -65679,7 +65710,7 @@ var Superstate = class extends import_obsidian63.Component { var _a2; return (_a2 = this.plugin.app.metadataCache.getFirstLinkpathDest(f4, file.path)) == null ? void 0 : _a2.path; }).filter((f4) => f4))); - if (!import_lodash13.default.isEqual(cache.spaces, Array.from(this.spacesMap.get(file.path)))) { + if (!import_lodash14.default.isEqual(cache.spaces, Array.from(this.spacesMap.get(file.path)))) { this.spacesMap.set(file.path, new Set(cache.spaces)); cache.tags.map((f4) => this.spacesIndex.has(tagSpacePathFromTag(f4)) ? null : spaceFromTag(this.plugin, f4)).filter((f4) => f4).forEach((f4) => this.reloadSpace(f4).then((f5) => this.broadcast("file", "change", file.path))); this.broadcast("space"); @@ -65730,7 +65761,7 @@ var Superstate = class extends import_obsidian63.Component { }; // src/utils/contexts/markdownPost.tsx -var import_obsidian64 = require("obsidian"); +var import_obsidian63 = require("obsidian"); // src/react/components/MarkdownEditor/FileHeaderContextView.tsx var FileHeaderContextView = (props2) => { @@ -65860,7 +65891,7 @@ var replaceInlineContext = (plugin, el, ctx) => { if (ctxElement.getAttribute("data-path") != ctx.sourcePath) { ctxElement.setAttribute("data-path", ctx.sourcePath); const reactEl = createRoot(ctxElement); - ctx.addChild(new import_obsidian64.MarkdownRenderChild(element)); + ctx.addChild(new import_obsidian63.MarkdownRenderChild(element)); if (ctx.sourcePath.match(urlRegex)) { reactEl.render( /* @__PURE__ */ Cn.createElement(FileHeaderContextView, { @@ -65901,7 +65932,7 @@ var loadSQL = async () => { }; // src/midd/filesystem.ts -var import_obsidian65 = require("obsidian"); +var import_obsidian64 = require("obsidian"); var FilesystemMiddleware = class { constructor(type, plugin) { this.type = type; @@ -65956,7 +65987,7 @@ var FilesystemMiddleware = class { if (type == "md") { const parentFolder = getAbstractFileAtPath(this.plugin, parent); return this.plugin.app.fileManager.createNewMarkdownFile( - parentFolder instanceof import_obsidian65.TFolder ? parentFolder : parentFolder.parent, + parentFolder instanceof import_obsidian64.TFolder ? parentFolder : parentFolder.parent, name ); } else if (type == "canvas") { @@ -66007,7 +66038,7 @@ var FilesystemMiddleware = class { }; // src/midd/metadata.ts -var import_obsidian66 = require("obsidian"); +var import_obsidian65 = require("obsidian"); var MetadataMiddleware = class { static create(plugin, processors, editors) { const newMiddleware = new MetadataMiddleware(plugin, processors, editors); @@ -66026,7 +66057,7 @@ var MetadataMiddleware = class { } async processFrontMatter(path, fn2) { const afile = getAbstractFileAtPath(this.plugin, path); - if (afile && afile instanceof import_obsidian66.TFile) { + if (afile && afile instanceof import_obsidian65.TFile) { if (this.plugin.app.fileManager.processFrontMatter) { return this.plugin.app.fileManager.processFrontMatter(afile, fn2); } @@ -66072,10 +66103,10 @@ function around1(obj, method, createWrapper) { } // src/utils/spaces/patches.ts -var import_obsidian67 = require("obsidian"); +var import_obsidian66 = require("obsidian"); var patchFilesPlugin = (plugin) => { plugin.register( - around(import_obsidian67.Workspace.prototype, { + around(import_obsidian66.Workspace.prototype, { getLeavesOfType(old) { return function(type) { if (type == "file-explorer") { @@ -66089,7 +66120,7 @@ var patchFilesPlugin = (plugin) => { }; var patchWorkspace = (plugin) => { let layoutChanging = false; - const uninstaller = around(import_obsidian67.Workspace.prototype, { + const uninstaller = around(import_obsidian66.Workspace.prototype, { changeLayout(old) { return async function(workspace) { layoutChanging = true; @@ -66110,7 +66141,7 @@ var patchWorkspace = (plugin) => { return false; if (layoutChanging) return false; - if (parent === plugin.app.workspace.rootSplit || import_obsidian67.WorkspaceContainer && parent instanceof import_obsidian67.WorkspaceContainer) { + if (parent === plugin.app.workspace.rootSplit || import_obsidian66.WorkspaceContainer && parent instanceof import_obsidian66.WorkspaceContainer) { for (const popover of FlowEditor.popoversForWindow( parent.win )) { @@ -66335,7 +66366,7 @@ var modifyFlowDom = (plugin) => { // src/main.ts var makeMDVersion = 0.804; -var MakeMDPlugin = class extends import_obsidian68.Plugin { +var MakeMDPlugin = class extends import_obsidian67.Plugin { constructor() { super(...arguments); this.dataViewAPI = () => (0, import_obsidian_dataview.getAPI)(); @@ -66347,20 +66378,20 @@ var MakeMDPlugin = class extends import_obsidian68.Plugin { this.onCreate = async (file) => { if (!file) return; - this.index.addToVaultQueue(() => onFileCreated(this, file.path, file instanceof import_obsidian68.TFolder)); + this.index.addToVaultQueue(() => onFileCreated(this, file.path, file instanceof import_obsidian67.TFolder)); }; this.onDelete = async (file) => { - if (file instanceof import_obsidian68.TFile && file.extension != "mdb") { + if (file instanceof import_obsidian67.TFile && file.extension != "mdb") { this.index.addToVaultQueue(() => onFileDeleted(this, file.path)); - } else if (file instanceof import_obsidian68.TFolder) { + } else if (file instanceof import_obsidian67.TFolder) { this.index.addToVaultQueue(() => onFolderDeleted(this, file.path)); } this.activeFileChange(); }; this.onRename = async (file, oldPath) => { - if (file instanceof import_obsidian68.TFile && file.extension != "mdb") { + if (file instanceof import_obsidian67.TFile && file.extension != "mdb") { this.index.addToVaultQueue(() => onFileChanged(this, oldPath, file.path)); - } else if (file instanceof import_obsidian68.TFolder) { + } else if (file instanceof import_obsidian67.TFolder) { this.index.addToVaultQueue(() => onFolderChanged(this, oldPath, file.path)); } this.activeFileChange(); @@ -66507,7 +66538,7 @@ var MakeMDPlugin = class extends import_obsidian68.Plugin { "dataview:metadata-change", (type, file, oldPath) => { if (type === "update" && this.app.metadataCache.fileCache[file.path].mtime >= this.loadTime && this.dataViewAPI().index.revision !== this.dataViewLastIndex && this.dataViewReady) { - if (file instanceof import_obsidian68.TFile) { + if (file instanceof import_obsidian67.TFile) { this.metadataChange(file); } this.dataViewLastIndex = this.dataViewAPI().index.revision; @@ -66526,6 +66557,10 @@ var MakeMDPlugin = class extends import_obsidian68.Plugin { "mk-folder-lines", this.settings.folderIndentationLines ); + document.body.classList.toggle( + "mk-minimal-fix", + this.settings.minimalFix + ); document.body.classList.toggle( "mk-spaces-enabled", this.settings.spacesEnabled @@ -66544,18 +66579,18 @@ var MakeMDPlugin = class extends import_obsidian68.Plugin { convertFolderNote() { const activeLeaf = this.app.workspace.activeLeaf; if ((activeLeaf == null ? void 0 : activeLeaf.view.getViewType()) == "markdown") { - const view = this.app.workspace.getActiveViewOfType(import_obsidian68.MarkdownView); - if (view instanceof import_obsidian68.MarkdownView && view.file instanceof import_obsidian68.TFile) { + const view = this.app.workspace.getActiveViewOfType(import_obsidian67.MarkdownView); + if (view instanceof import_obsidian67.MarkdownView && view.file instanceof import_obsidian67.TFile) { noteToFolderNote(this, view.file, true); } } else { - new import_obsidian68.Notice("The view is not a note"); + new import_obsidian67.Notice("The view is not a note"); } } getActiveFile() { var _a2, _b2, _c2; let filePath = null; - let leaf = (_a2 = this.app.workspace.getActiveViewOfType(import_obsidian68.MarkdownView)) == null ? void 0 : _a2.leaf; + let leaf = (_a2 = this.app.workspace.getActiveViewOfType(import_obsidian67.MarkdownView)) == null ? void 0 : _a2.leaf; if (!leaf) { leaf = (_b2 = this.app.workspace.getActiveViewOfType(SpaceView)) == null ? void 0 : _b2.leaf; } @@ -66775,14 +66810,14 @@ var MakeMDPlugin = class extends import_obsidian68.Plugin { this.loadTime = Date.now(); this.metadata = MetadataMiddleware.create(this, [], []); this.files = FilesystemMiddleware.create(this, 0 /* Obsidian */); - (0, import_obsidian68.addIcon)("mk-logo", mkLogo); + (0, import_obsidian67.addIcon)("mk-logo", mkLogo); await this.loadSettings(); this.index = this.addChild( Superstate.create(this.app, "0.9", () => { this.debouncedRefresh(); }, this) ); - this.spacesDBPath = (0, import_obsidian68.normalizePath)( + this.spacesDBPath = (0, import_obsidian67.normalizePath)( this.app.vault.configDir + "/plugins/make-md/Spaces.mdb" ); this.loadSuperState(); diff --git a/manifest.json b/manifest.json index 54d8591..6313db8 100755 --- a/manifest.json +++ b/manifest.json @@ -1,7 +1,7 @@ { "id": "make-md", "name": "MAKE.md", - "version": "0.8.10", + "version": "0.8.11", "minAppVersion": "0.16.0", "description": "Make.md brings you features that supercharges Obsidian. Sort your files in custom order and add file icons using Spaces. Edit inline embeds with Flow Editor. And style your text and add new markdown blocks without writing markdown using Maker Mode.", "author": "MAKE.md", diff --git a/styles.css b/styles.css index ad7ad44..597f86d 100644 --- a/styles.css +++ b/styles.css @@ -1,3146 +1,3317 @@ -/* src/css/SpaceView.css */ -.mk-space-scroller { - display: flex !important; - flex-direction: column; - align-items: flex-start !important; - line-height: 1.4; - height: 100%; - overflow-x: auto; - position: relative; - z-index: 0; - padding-bottom: 0; +/* node_modules/react-day-picker/dist/style.css */ +.rdp { + --rdp-cell-size: 40px; + --rdp-accent-color: #0000ff; + --rdp-background-color: #e7edff; + --rdp-accent-color-dark: #3003e1; + --rdp-background-color-dark: #180270; + --rdp-outline: 2px solid var(--rdp-accent-color); + --rdp-outline-selected: 3px solid var(--rdp-accent-color); + margin: 1em; } -.mk-context-selector { - font-size: var(--font-ui-small); - --tag-background: var(--background-secondary); +.rdp-vhidden { + box-sizing: border-box; + padding: 0; + margin: 0; + background: transparent; + border: 0; + -moz-appearance: none; + -webkit-appearance: none; + appearance: none; + position: absolute !important; + top: 0; + width: 1px !important; + height: 1px !important; + padding: 0 !important; + overflow: hidden !important; + clip: rect(1px, 1px, 1px, 1px) !important; + border: 0 !important; +} +.rdp-button_reset { + appearance: none; position: relative; - display: flex; + margin: 0; + padding: 0; + cursor: default; + color: inherit; + background: none; + font: inherit; + -moz-appearance: none; + -webkit-appearance: none; } -.mk-context-selector-menu { +.rdp-button_reset:focus-visible { + outline: none; } -.mk-context-header { - margin: var(--file-margins); - margin-bottom: 0; +.rdp-button { + border: 2px solid transparent; } -.mk-title-container { - display: flex; - align-items: center; - gap: 4px; +.rdp-button[disabled]:not(.rdp-day_selected) { + opacity: 0.25; } -.mk-title-container .mk-title-prefix { - display: flex; - font-size: var(--inline-title-size); - font-weight: var(--inline-title-weight); +.rdp-button:not([disabled]) { + cursor: pointer; } -.mk-title-container span { - flex: 1; +.rdp-button:focus-visible:not([disabled]) { + color: inherit; + background-color: var(--rdp-background-color); + border: var(--rdp-outline); } -.mk-context-header { - display: flex; - flex-direction: column; - max-width: var(--file-line-width); - width: 100%; +.rdp-button:hover:not([disabled]):not(.rdp-day_selected) { + background-color: var(--rdp-background-color); } -.markdown-source-view.mod-cm6.is-readable-line-width .mk-space-outer { - padding: var(--file-margins); - max-width: 100%; - width: 100%; - margin-left: auto; - margin-right: auto; +.rdp-months { + display: flex; } -.mk-space-title { - position: relative; +.rdp-month { + margin: 0 1em; } -.mk-space-header { - margin-left: auto; - margin-right: auto; - margin-bottom: 16px; - width: 100%; - max-width: var(--file-line-width); +.rdp-month:first-child { + margin-left: 0; } -body:not(.is-mobile) .markdown-source-view.mod-cm6.is-readable-line-width .mk-space-header .inline-title { - flex-grow: 1; - margin-bottom: 0; - margin-left: 0 !important; +.rdp-month:last-child { margin-right: 0; - width: inherit; - max-width: inherit; -} -.mk-space-sizer { - display: flex; - flex-direction: column; - align-items: stretch; - margin-left: auto; - margin-right: auto; -} -.mk-file-table-header { - margin-top: 24px; - color: var(--text-faint); } -.mk-file-table { +.rdp-table { + margin: 0; + max-width: calc(var(--rdp-cell-size) * 7); border-collapse: collapse; - table-layout: fixed; - width: 100%; } -.mk-space-body { - padding-bottom: 100px; +.rdp-with_weeknumber .rdp-table { + max-width: calc(var(--rdp-cell-size) * 8); + border-collapse: collapse; } -.mk-space-body > .mk-f { - max-width: var(--file-line-width); - margin: 0 auto; +.rdp-caption { + display: flex; + align-items: center; + justify-content: space-between; + padding: 0; + text-align: left; } -.mk-f-main > div { - max-width: var(--file-line-width); - margin: 0 auto; - padding-bottom: 8px; +.rdp-multiple_months .rdp-caption { + position: relative; + display: block; + text-align: center; } -.mk-space-body .cm-content { - padding-bottom: 0px !important; +.rdp-caption_dropdowns { + position: relative; + display: inline-flex; } -.mk-space-body > .mk-frame { - align-items: flex-start; - display: flex; - flex-direction: column; - gap: 8px; +.rdp-caption_label { + position: relative; + z-index: 1; + display: inline-flex; + align-items: center; + margin: 0; + padding: 0 0.25em; + white-space: nowrap; + color: currentColor; + border: 0; + border: 2px solid transparent; + font-family: inherit; + font-size: 140%; + font-weight: bold; } -.mk-file-row { +.rdp-nav { + white-space: nowrap; } -.mk-file-row:hover { - background: var(--background-modifier-hover) !important; +.rdp-multiple_months .rdp-caption_start .rdp-nav { + position: absolute; + top: 50%; + left: 0; + transform: translateY(-50%); } -.mk-file-table tr:nth-child(even) { - background: var(--color-base-10); +.rdp-multiple_months .rdp-caption_end .rdp-nav { + position: absolute; + top: 50%; + right: 0; + transform: translateY(-50%); } -.mk-file-row td { - padding: 10px 10px; +.rdp-nav_button { + display: inline-flex; + align-items: center; + justify-content: center; + width: var(--rdp-cell-size); + height: var(--rdp-cell-size); + padding: 0.25em; + border-radius: 100%; } -.mk-file-row .mk-column-file { - width: 99%; +.rdp-dropdown_year, +.rdp-dropdown_month { + position: relative; + display: inline-flex; + align-items: center; } -.mk-file-row p { - text-overflow: ellipsis; - overflow: hidden; - font-size: var(--font-ui-smaller); - color: var(--text-faint); +.rdp-dropdown { + appearance: none; + position: absolute; + z-index: 2; + top: 0; + bottom: 0; + left: 0; + width: 100%; margin: 0; - -webkit-line-clamp: 2; - -webkit-box-orient: vertical; - display: -webkit-box; + padding: 0; + cursor: inherit; + opacity: 0; + border: none; + background-color: transparent; + font-family: inherit; + font-size: inherit; + line-height: inherit; } -.mk-file-row .mk-file-name { - font-weight: var(--font-medium); +.rdp-dropdown[disabled] { + opacity: unset; + color: unset; } -.mk-file-date { - font-size: var(--font-ui-smaller); - color: var(--text-muted); - width: 100px; +.rdp-dropdown:focus-visible:not([disabled]) + .rdp-caption_label { + background-color: var(--rdp-background-color); + border: var(--rdp-outline); + border-radius: 6px; } -.mk-column-icon { - width: 40px; +.rdp-dropdown_icon { + margin: 0 0 0 5px; } -.mk-column-icon svg { - width: 16px; - height: 16px; - color: var(--text-muted); +.rdp-head { + border: 0; +} +.rdp-head_row, +.rdp-row { + height: 100%; +} +.rdp-head_cell { + vertical-align: middle; + font-size: 0.75em; + font-weight: 700; + text-align: center; + height: 100%; + height: var(--rdp-cell-size); + padding: 0; +} +.rdp-tbody { + border: 0; } -.mk-flowspace-title svg { - width: 16px; - height: 16px; - color: var(--text-muted); +.rdp-tfoot { + margin: 0.5em; } -.mk-flowspace-title p { - margin: 0; +.rdp-cell { + width: var(--rdp-cell-size); + height: 100%; + height: var(--rdp-cell-size); padding: 0; - margin-left: 8px; + text-align: center; } -.mk-flowspace-title .mk-flowspace-date { - font-size: var(--font-ui-smaller); - color: var(--text-muted); +.rdp-weeknumber { + font-size: 0.75em; } -.mk-flowspace-title { +.rdp-weeknumber, +.rdp-day { display: flex; + overflow: hidden; align-items: center; - padding: 8px 12px; - border-top: 1px solid var(--divider-color); + justify-content: center; + box-sizing: border-box; + width: var(--rdp-cell-size); + max-width: var(--rdp-cell-size); + height: var(--rdp-cell-size); + margin: 0; + border: 2px solid transparent; + border-radius: 100%; } -.mk-flowspace-editor { - padding: 0px 12px; - width: 100%; +.rdp-day_today:not(.rdp-day_outside) { + font-weight: bold; } -.mk-flowspace-editor:not(.mk-flow-node, .mk-file-context-flow) .mk-floweditor { - padding: 12px 0px; +.rdp-day_selected, +.rdp-day_selected:focus-visible, +.rdp-day_selected:hover { + color: white; + opacity: 1; + background-color: var(--rdp-accent-color); } -.mk-frame-view .mk-flowspace-editor:not(.mk-flow-node, .mk-file-context-flow) .mk-floweditor { - padding: 0; +.rdp-day_outside { + opacity: 0.5; } -.mk-flowspace-editor.mk-foldernote { - width: var(--file-line-width); - max-width: 100%; - margin-left: auto; - margin-right: auto; +.rdp-day_selected:focus-visible { + outline: var(--rdp-outline); + outline-offset: 2px; + z-index: 1; } -.mk-foldernote .mk-floweditor { - height: 100% !important; +.rdp:not([dir="rtl"]) .rdp-day_range_start:not(.rdp-day_range_end) { + border-top-right-radius: 0; + border-bottom-right-radius: 0; } -.mk-flowspace-title span { - flex-grow: 1; +.rdp:not([dir="rtl"]) .rdp-day_range_end:not(.rdp-day_range_start) { + border-top-left-radius: 0; + border-bottom-left-radius: 0; } -.mk-flowspace-title button { - padding: 8px; - margin-left: 8px; - width: unset; +.rdp[dir=rtl] .rdp-day_range_start:not(.rdp-day_range_end) { + border-top-left-radius: 0; + border-bottom-left-radius: 0; } -.mk-flowspace-title button.mk-open { - background: var(--icon-color-active); +.rdp[dir=rtl] .rdp-day_range_end:not(.rdp-day_range_start) { + border-top-right-radius: 0; + border-bottom-right-radius: 0; } -.mk-flowspace-title:hover { - background: var(--color-base-10); +.rdp-day_range_end.rdp-day_range_start { + border-radius: 100%; } -.mk-space-empty { - width: 100%; - height: 100%; - display: flex; - align-items: center; - justify-content: center; - font-size: var(--font-ui-small); - font-style: italic; +.rdp-day_range_middle { + border-radius: 0; } -.mk-flow-container { + +/* src/css/Blink.css */ +.mk-blink-modal { + padding: 0; +} +.mk-blink-modal .mk-options-menu { + display: grid !important; + grid-template-columns: 5fr 8fr; + grid-template-rows: 50px auto; + height: var(--prompt-max-height); + width: unset !important; +} +.mk-blink-modal .mk-options-menu__search { width: 100%; + padding: 0; } -.mk-flow-container > div { - border-bottom: thin dotted var(--divider-color); +.mk-blink-modal .mk-options-menu__suggestions li { + margin: 6px; } -.mk-flow-container > div > span { - font-size: var(--font-smallest); - color: var(--text-faint); - display: flex; - align-items: center; - padding: var(--size-4-1); +.mk-blink-modal .mk-options-menu__search input { + padding: var(--size-4-6); + background-color: var(--background-primary); + font-size: var(--font-ui-medium); + border: none; + height: 40px; + border-radius: 0; + border-bottom: 1px solid var(--background-secondary); } -.mk-space-scroller .mk-flowspace-editor { - padding: 0; +.mk-blink-modal .mk-floweditor .workspace-leaf-content[data-type=canvas] .view-content { + height: 580px; } -.mk-space-scroller .cm-sizer { +.mk-blink-modal .mk-options-menu__selected { + grid-column: 1 / 3; + grid-row: 1; + padding: 0; + margin-top: 0; } -.mk-smart-note-view { - display: flex; +.mk-blink-modal .mk-options-menu__suggestions { + padding: var(--size-4-3); + grid-column: 1; + grid-row: 2; + max-height: unset; + width: unset; } -.mk-smart-note-view div { - padding: 4px; +.mk-blink-preview { + grid-column: 2; + grid-row: 2; + overflow: auto; + border-left: thin solid var(--background-secondary); } -.mk-context-type-selector { - max-width: 100%; - width: 100%; - padding-top: 4px; - margin-left: auto; - margin-right: auto; +.mk-flowspace-editor { + padding: 0 !important; } -.mk-context-type-selector button { - background: rgba(var(--nav-item-background-active), 0.3); - border: none; - box-shadow: none; - color: var(--text-faint); +.mk-blink-preview .markdown-source-view { + padding: 12px; } -/* src/css/Menu.css */ -.mk-suggestion { - display: flex; - flex-direction: column; +/* src/css/CardsView.css */ +.mk-space-scroller > .mk-cards-container { + padding-bottom: 60px; } -.mk-menu { - padding: 0; +.mk-cards-container { + width: 100%; + height: 100%; + overflow-x: auto; + overflow-y: visible; } -.mk-menu .menu-item { - padding: 0; - background-color: unset !important; - gap: 0; +.mk-cards-container .mk-list-content > .mk-flowspace-editor { + padding-left: 12px !important; + padding-right: 12px !important; } -.menu-item-title { - display: flex; - justify-content: space-between; - align-items: center; +.mk-cards-container .mk-list-view { + display: inline-grid; + grid-auto-flow: column; + gap: 20px; } -.mk-menu-input.selected { - background-color: unset !important; +.mk-space-scroller > .mk-cards-container .mk-list-view { + padding: 20px; } -.mk-menu-input input { - padding: 4px; - border: 0; - outline: 0; +.mk-cards-container .mk-list-item { border-radius: 4px; + list-style: none; + background: var(--background-secondary); + overflow: hidden; + font-size: var(--font-ui-small); + color: var(--text-muted); + box-shadow: + 0px 1px 2px rgba(0, 0, 0, 0.06), + 0px 3.4px 6.7px rgba(0, 0, 0, 0.06), + 0px 15px 30px rgba(0, 0, 0, 0.15); } -.is-phone .mk-options-container { - width: 100%; +.mk-cards-container .mk-list-group { + width: 200px; } -.is-phone .mk-options-menu { - width: 100%; +.mk-cards-grid .mk-list-item { + width: calc((var(--file-line-width) / 3) - 7px); } -.menu-item-title input[type=text] { - flex: 1; +.mk-cards-container .mk-file-icon svg { + display: none; } -.mk-options-menu { - position: relative; - width: 240px; - font-size: 1em; - line-height: 1.2; - display: flex; +.mk-cards-grid .mk-list-group { + width: 100% !important; +} +.mk-cards-grid .mk-list-group ul { + flex-direction: row !important; flex-wrap: wrap; - cursor: text; } -.mk-options-menu-sections { +.mk-cards-container .mk-list-group ul { + list-style: none; + padding-inline-start: 0px; display: flex; - padding: 6px 8px; - width: 100%; - gap: 8px; + flex-direction: column; + gap: 10px; } -.mk-options-menu-section { - background: var(--background-primary); - padding: 4px 6px; - border-radius: 4px; +.mk-list-container .mk-list-group-header { + display: flex; + padding: 12px 24px 4px 24px; + background-color: var(--titlebar-background); } -.mk-options-menu-section.is-active { - background: var(--interactive-accent); - color: var(--text-on-accent); +.mk-list-container .mk-list-group-header > div { + background: none !important; } -.mk-options-menu__selected-tag { - display: inline-block; - box-sizing: border-box; - margin: 0 6px 6px 0; - padding: 6px 8px; - border-radius: 2px; - box-shadow: unset !important; - font-size: inherit; - line-height: inherit; +.mk-floweditor > .workspace-leaf > .workspace-leaf-content > .view-content > div > .mk-list-container { + padding-bottom: 0; } -.mk-options-menu__selected-tag:after { - content: "\2715"; - color: #aaa; - margin-left: 8px; +.mk-floweditor > .workspace-leaf > .workspace-leaf-content > .view-content > div > .mk-list-container .mk-list-item { + padding: 8px; } -.mk-options-menu__selected-tag:hover, -.mk-options-menu__selected-tag:focus { - border-color: #b1b1b1; +.mk-space-scroller > .mk-list-container { + padding-bottom: 100px; } -.mk-options-menu__selected { +.mk-list-container { width: 100%; - display: inline-block; - white-space: normal; - padding: 0px 10px; - margin-top: 4px; - border-bottom: thin solid var(--divider-color); + height: 100%; + overflow-y: auto; } -.mk-options-menu__search { - display: inline-block; - padding: 7px 2px; - max-width: 100%; - width: 100%; +.mk-list-container .mk-list-view { + display: flex; + flex-direction: column; } -@media screen and (min-width: 30em) { - .mk-options-menu__search { - position: relative; - } +.mk-cards-container .mk-list-item.mk-is-active, +.mk-list-container .mk-list-item.mk-is-active { + background: var(--background-modifier-active-hover); } -.mk-options-menu__search-input { - max-width: 100%; - background: unset !important; - margin: 0; - padding: 0; - border: 0; - outline: none; - font-size: inherit; - line-height: inherit; +.mk-list-container .mk-list-item { + display: flex; + padding: 8px; + list-style: none; + font-size: var(--font-ui-small); + color: var(--text-muted); + align-items: flex-start; } -.mk-options-menu__search-input::-ms-clear { - display: none; +.mk-list-container .mk-list-content { + flex-grow: 1; + display: flex; + flex-direction: column; + border-bottom: thin solid var(--divider-color); + min-height: 69px; } -.mk-options-menu__suggestions { +.mk-list-container .mk-list-fields { + display: flex; + flex-wrap: wrap; + align-items: center; + gap: 8px; + padding-bottom: 8px; +} +.mk-list-container .mk-list-fields > div { + margin-bottom: -8px; +} +.mk-list-container .mk-list-fields > div:not(.mk-cell-file):not(.mk-cell-image) { + width: unset !important; +} +.mk-list-container .mk-list-fields > .mk-cell-image { width: 100%; - max-height: 200px; - overflow: auto; } -.mk-options-menu__suggestions ul { - margin: 4px -1px; - padding: 0; - list-style: none; +.mk-list-container .mk-list-group { + width: 100%; } -.is-phone .mk-options-menu__suggestions li { - padding: var(--size-4-3) var(--size-4-3); +.mk-cards-container .mk-cell-file-title, +.mk-list-container .mk-cell-file-title { + padding: 4px; + color: var(--text-normal); + margin-bottom: 0; } -.mk-options-menu__suggestions li { - margin: 0px 6px; - padding: 6px 8px; - border-radius: var(--radius-s); - display: flex; - flex-direction: row; - align-items: center; - gap: 6px; +.mk-list-container .mk-list-fields .mk-cell-file { + width: 100%; + font-weight: var(--bold-weight); } -.mk-options-menu__suggestions li .mk-options-menu-inner { - flex: 1; +.mk-cards-container .mk-list-fields { + padding: 12px; + align-items: flex-start; display: flex; flex-direction: column; - overflow: hidden; } -.mk-options-menu__suggestions li .mk-description { +.mk-list-fields .mk-cell-file-preview { + width: 100%; + color: var(--text-normal); + margin-bottom: -8px; color: var(--text-faint); - font-size: var(--font-ui-smaller); text-overflow: ellipsis; - white-space: nowrap; - overflow: hidden; -} -.mk-options-menu__suggestions li span { overflow: hidden; - text-overflow: ellipsis; - white-space: nowrap; -} -.mk-options-menu__suggestions li mark { - text-decoration: underline; - background: none; - font-weight: 600; - border-radius: unset; - margin: unset; - padding: unset; -} -.mk-options-menu__suggestions li:hover { - cursor: pointer; - background: var(--background-modifier-hover); -} -.mk-options-menu__suggestions li.is-active { - background: var(--background-modifier-hover); -} -.mk-options-menu__suggestions li.is-disabled { - opacity: 0.5; - cursor: auto; + -webkit-line-clamp: 1; + -webkit-box-orient: vertical; + display: -webkit-box; } -.rdp button { - background: initial !important; - box-shadow: initial !important; +.mk-list-container .mk-list-group ul { + list-style: none; + padding-inline-start: 0px; + display: flex; + flex-direction: column; + margin-top: 0; + margin-bottom: 0; } -.rdp .rdp-day_selected { - background: var(--interactive-accent) !important; +.mk-file-preview { + background: var(--label-color); } -.rdp { - --rdp-cell-size: 30px !important; +.mk-list-container .mk-file-preview { + min-width: 48px; + height: 48px; + border-radius: 8px; + margin-right: 8px; + margin-top: 8px; + display: flex; + align-items: center; + justify-content: center; } -.mk-properties { - padding: 0 !important; - gap: 0 !important; +.mk-list-group-header .mk-cell-option-item { background: none !important; } -.mk-properties > .menu-item-title > div { - width: 100%; -} -.mk-properties .menu-item span:first-child { - flex-grow: 1; +.mk-cards-container .mk-file-preview { + position: relative; + margin-bottom: 4px; + height: 80px; } -.mk-properties .menu-item span:last-child { - color: var(--text-muted); +.mk-cards-container .mk-file-icon { + position: absolute; + bottom: -6px; + font-size: 24px; + left: 14px; } - -/* node_modules/react-day-picker/dist/style.css */ -.rdp { - --rdp-cell-size: 40px; - --rdp-accent-color: #0000ff; - --rdp-background-color: #e7edff; - --rdp-accent-color-dark: #3003e1; - --rdp-background-color-dark: #180270; - --rdp-outline: 2px solid var(--rdp-accent-color); - --rdp-outline-selected: 3px solid var(--rdp-accent-color); - margin: 1em; +.mk-list-container .mk-file-icon { + font-size: 20px; + display: flex; + align-items: center; + justify-content: center; } -.rdp-vhidden { - box-sizing: border-box; - padding: 0; - margin: 0; - background: transparent; - border: 0; - -moz-appearance: none; - -webkit-appearance: none; - appearance: none; - position: absolute !important; - top: 0; - width: 1px !important; - height: 1px !important; - padding: 0 !important; - overflow: hidden !important; - clip: rect(1px, 1px, 1px, 1px) !important; - border: 0 !important; +.mk-context-view-editor { + flex: 1; + padding: 40px; } -.rdp-button_reset { - appearance: none; - position: relative; - margin: 0; - padding: 0; - cursor: default; - color: inherit; - background: none; - font: inherit; - -moz-appearance: none; - -webkit-appearance: none; +.mk-context-view-editor .mk-td { + white-space: nowrap; } -.rdp-button_reset:focus-visible { - outline: none; +.mk-context-view-selector { + display: flex; + padding: 12px 24px; + gap: 8px; + border-top: thin solid var(--divider-color); } -.rdp-button { - border: 2px solid transparent; +.mk-context-view-selector > div { + width: 50px; + overflow: hidden; + display: -webkit-box; + -webkit-line-clamp: 2; + line-clamp: 2; + -webkit-box-orient: vertical; + text-align: center; } -.rdp-button[disabled]:not(.rdp-day_selected) { - opacity: 0.25; + +/* src/css/ContextBuilder.css */ +.is-phone .mk-context-maker { + max-height: 100vh; } -.rdp-button:not([disabled]) { - cursor: pointer; +.mk-context-maker-container { + height: 100%; + display: flex; + flex-direction: column; } -.rdp-button:focus-visible:not([disabled]) { - color: inherit; - background-color: var(--rdp-background-color); - border: var(--rdp-outline); +.mk-context-maker .modal-content { + height: var(--dialog-max-height); + overflow-y: scroll; } -.rdp-button:hover:not([disabled]):not(.rdp-day_selected) { - background-color: var(--rdp-background-color); +.mk-context-maker-preview { + display: flex; + flex-wrap: wrap; + gap: 4px; + margin-bottom: 16px; + padding: var(--size-4-4); + flex-grow: 1; + overflow: scroll; + padding-bottom: 0; } -.rdp-months { +.mk-context-maker-item { + background: rgba(var(--mono-rgb-100), 0.025); + border-radius: 4px; + overflow: hidden; display: flex; + align-items: center; + gap: 2px; + padding: 8px; } -.rdp-month { - margin: 0 1em; +.mk-context-maker-selector { + font-size: var(--font-ui-small); + height: 240px; + overflow-y: scroll; + background: rgba(var(--mono-rgb-100), 0.025); + padding: var(--size-4-4); + border-radius: 4px; } -.rdp-month:first-child { - margin-left: 0; +.mk-context-maker-selector .mk-cell-option { + margin-bottom: 8px; } -.rdp-month:last-child { - margin-right: 0; +.mk-context-maker-builder { + min-height: 60px; + display: flex; + flex-wrap: wrap; + padding: 8px; + gap: 4px; } -.rdp-table { - margin: 0; - max-width: calc(var(--rdp-cell-size) * 7); - border-collapse: collapse; +.mk-property-editor-context-title { + display: flex; + font-size: var(--font-ui-small); + font-weight: var(--font-normal); + padding: var(--size-4-2) var(--size-4-1); } -.rdp-with_weeknumber .rdp-table { - max-width: calc(var(--rdp-cell-size) * 8); - border-collapse: collapse; +.mk-property-editor-context-title span { + flex: 1; } -.rdp-caption { +.mk-property-editor-context-tag { display: flex; + gap: 4px; align-items: center; - justify-content: space-between; +} +.mk-property-editor { padding: 0; - text-align: left; + display: flex; + flex-direction: column; + height: 100%; + gap: 8px; } -.rdp-multiple_months .rdp-caption { - position: relative; - display: block; - text-align: center; +.mk-property-editor-property { + display: flex; + padding: 8px; + font-size: var(--font-ui-small); + color: var(--text-muted); + gap: 6px; + align-items: center; + background: var(--background-modifier-cover); + border-radius: 6px; } -.rdp-caption_dropdowns { - position: relative; - display: inline-flex; +.mk-property-editor-new:hover { + color: var(--text-normal); } -.rdp-caption_label { - position: relative; - z-index: 1; - display: inline-flex; +.mk-property-editor-new span { + font-size: var(--font-ui-smaller); +} +.mk-property-editor-new { + color: var(--text-faint); + display: flex; + flex-direction: column; + padding: var(--size-4-2) var(--size-4-2); + border: thin solid var(--divider-color); + border-radius: 8px; +} +.mk-property-editor-context-title { + font-size: var(--font-ui-medium); + font-weight: var(--font-semibold); + line-height: var(--line-height-tight); + padding: var(--size-4-2) var(--size-4-1); + display: flex; align-items: center; - margin: 0; - padding: 0 0.25em; - white-space: nowrap; - color: currentColor; - border: 0; - border: 2px solid transparent; - font-family: inherit; - font-size: 140%; - font-weight: bold; + gap: 8px; } -.rdp-nav { - white-space: nowrap; +.mk-property-editor-list { + display: flex; + flex-direction: column; + gap: 4px; } -.rdp-multiple_months .rdp-caption_start .rdp-nav { - position: absolute; - top: 50%; - left: 0; - transform: translateY(-50%); +.mk-property-editor-context-title span, +.mk-property-editor-list span { + font-size: var(--font-ui-smaller); + color: var(--text-faint); + flex: 1; } -.rdp-multiple_months .rdp-caption_end .rdp-nav { - position: absolute; - top: 50%; - right: 0; - transform: translateY(-50%); +.mk-context-properties-new { } -.rdp-nav_button { - display: inline-flex; - align-items: center; - justify-content: center; - width: var(--rdp-cell-size); - height: var(--rdp-cell-size); - padding: 0.25em; - border-radius: 100%; + +/* src/css/FileContext.css */ +.mk-file-context { + display: flex; + flex-direction: column; + --file-context-spacing: 4px; + height: 100%; + padding: var(--size-4-2) var(--size-4-1); + gap: 4px; } -.rdp-dropdown_year, -.rdp-dropdown_month { +.mk-file-context-header { + height: var(--mk-header-height); + border-bottom: var(--divider-color); + background-color: var(--background-primary); + z-index: 1; position: relative; - display: inline-flex; - align-items: center; + gap: var(--size-4-2); + padding: 0 var(--size-4-3); } -.rdp-dropdown { - appearance: none; - position: absolute; - z-index: 2; - top: 0; - bottom: 0; - left: 0; +.mk-file-context-file .mk-file-icon button { + --label-color:var(--background-secondary) ; +} +.mk-file-context-file { + display: flex; width: 100%; - margin: 0; - padding: 0; - cursor: inherit; - opacity: 0; - border: none; - background-color: transparent; - font-family: inherit; - font-size: inherit; - line-height: inherit; + flex-direction: column; + align-items: flex-start; + gap: 8px; + position: relative; } -.rdp-dropdown[disabled] { - opacity: unset; - color: unset; +.mk-header .mk-file-context-file.mk-file-context-file-horizontal { + gap: 12px; } -.rdp-dropdown:focus-visible:not([disabled]) + .rdp-caption_label { - background-color: var(--rdp-background-color); - border: var(--rdp-outline); - border-radius: 6px; +.mk-file-context-file.mk-file-context-file-horizontal { + flex-direction: row; + align-items: center; } -.rdp-dropdown_icon { - margin: 0 0 0 5px; +.markdown-source-view.mod-cm6 .cm-content .mk-header { + padding-inline-start: 0 !important; + text-indent: 0 !important; } -.rdp-head { - border: 0; +.mk-space-header .mk-file-icon-placeholder button, +.mk-inline-context .mk-file-context-component .mk-file-icon-placeholder button { + background: var(--label-color); + border-radius: 8px; + padding: 8px !important; +} +.mod-right-split .mk-header { + display: none; +} +.mod-left-split .mk-header { + display: none; +} +.markdown-reading-view .mk-file-context-file > .mk-inline-title.inline-title, +.markdown-source-view.mod-cm6.mod-cm6.is-readable-line-width .mk-file-context-file > .mk-inline-title.inline-title { + padding-bottom: 0; + margin-left: 0 !important; + margin-top: 0; + padding-top: 0 !important; + margin-bottom: 0; + width: auto; } -.rdp-head_row, -.rdp-row { - height: 100%; +.mk-inline-title { + margin-bottom: 0; } -.rdp-head_cell { - vertical-align: middle; - font-size: 0.75em; - font-weight: 700; - text-align: center; - height: 100%; - height: var(--rdp-cell-size); +.mk-file-context-component .mk-tag-selector { + margin-top: 0px; + margin-bottom: 0; padding: 0; } -.rdp-tbody { - border: 0; +.mk-file-context-component { + display: flex; + flex-direction: column; + gap: 8px; + align-items: flex-start; } -.rdp-tfoot { - margin: 0.5em; +.mk-file-context-properties { + display: flex; + flex-direction: column; + align-items: flex-start; + gap: 4px; } -.rdp-cell { - width: var(--rdp-cell-size); - height: 100%; - height: var(--rdp-cell-size); - padding: 0; - text-align: center; +.mk-file-context-properties:empty { + display: none; } -.rdp-weeknumber { - font-size: 0.75em; +.mk-file-context-section:empty { + display: none; } -.rdp-weeknumber, -.rdp-day { +.mk-file-context-section { display: flex; - overflow: hidden; - align-items: center; - justify-content: center; - box-sizing: border-box; - width: var(--rdp-cell-size); - max-width: var(--rdp-cell-size); - height: var(--rdp-cell-size); - margin: 0; - border: 2px solid transparent; - border-radius: 100%; + flex-direction: column; + gap: 4px; } -.rdp-day_today:not(.rdp-day_outside) { - font-weight: bold; +.mk-file-context-section button { + background: none; + border: none; + padding: 0; + margin: 0; + color: var(--text-faint); + font-size: var(--font-ui-small); + font-weight: 500; + text-align: left; + cursor: pointer; + display: flex; + align-items: center; + gap: 4px; } -.rdp-day_selected, -.rdp-day_selected:focus-visible, -.rdp-day_selected:hover { - color: white; - opacity: 1; - background-color: var(--rdp-accent-color); +.mk-file-context-row { + display: flex; + align-items: flex-start; + gap: 2px; } -.rdp-day_outside { - opacity: 0.5; +.mk-file-context-row .mk-collapse { + width: 24px !important; + height: 24px !important; } -.rdp-day_selected:focus-visible { - outline: var(--rdp-outline); - outline-offset: 2px; - z-index: 1; +.mk-file-context-row .mk-cell-option { + width: unset; + align-items: flex-start; + padding: 2px 4px; } -.rdp:not([dir="rtl"]) .rdp-day_range_start:not(.rdp-day_range_end) { - border-top-right-radius: 0; - border-bottom-right-radius: 0; +.mk-file-context-field-new { + font-size: var(--font-ui-small); + display: flex; + align-items: center; + gap: 10px; } -.rdp:not([dir="rtl"]) .rdp-day_range_end:not(.rdp-day_range_start) { - border-top-left-radius: 0; - border-bottom-left-radius: 0; +.mk-file-context-field-key { + padding: var(--size-4-1); + display: inline-block; + text-overflow: ellipsis; + white-space: nowrap; + overflow: hidden; } -.rdp[dir=rtl] .rdp-day_range_start:not(.rdp-day_range_end) { - border-top-left-radius: 0; - border-bottom-left-radius: 0; +.mk-file-context-field-space { + display: flex; + justify-content: center; + min-width: 18px; + height: 18px; + color: var(--tag-color); + border-radius: var(--tag-radius); + border: var(--tag-border-width) solid var(--tag-border-color); + opacity: 0.4; } -.rdp[dir=rtl] .rdp-day_range_end:not(.rdp-day_range_start) { - border-top-right-radius: 0; - border-bottom-right-radius: 0; +.mk-file-context-field-space:hover { + opacity: 1; } -.rdp-day_range_end.rdp-day_range_start { - border-radius: 100%; +.mk-file-context-field-icon { + min-width: 18px; + height: 18px; + display: flex; + align-items: center; + text-align: center; + justify-content: center; } -.rdp-day_range_middle { - border-radius: 0; +.mk-file-context-field-new:hover, +.mk-file-context-field-new button:hover svg { + color: var(--text-normal) !important; } - -/* src/css/SpaceEditor.css */ -.mk-space-editor { +.mk-file-context-field-new button { + background: none !important; + box-shadow: none !important; + color: var(--text-faint) !important; + padding: 0 4px !important; display: flex; - flex-direction: column; - margin-bottom: 20px; - gap: 24px; - flex: 1; - overflow-y: scroll; + gap: 4px; + height: 20px; + border: none !important; } -.mk-space-editor-appearance .mk-file-icon, -.mk-space-editor-appearance .mk-file-icon button, -.mk-space-editor-appearance .mk-file-icon svg { - width: 48px; - height: 48px; - font-size: 36px; +.mk-file-context-field-new button svg { + color: var(--text-faint) !important; } -.mk-space-editor-appearance .mk-file-icon svg { - padding: 6px; +.mk-file-context-field-new button:hover { + color: var(--text-normal) !important; } -.mk-space-query { +.mk-file-context-field { + max-width: 140px; + min-width: 140px; + font-size: var(--font-ui-small); + color: var(--text-faint); + min-height: 24px; display: flex; - flex-direction: column; - height: 100%; + border-radius: 4px; + align-items: center; } -.mk-space-editor-title { - font-size: var(--font-ui-large); - font-weight: var(--font-semibold); - line-height: var(--line-height-tight); - padding: var(--size-4-2) var(--size-4-1); +.mk-bullet { + min-height: 24px; display: flex; - gap: 8px; + align-items: center; + padding: 8px 5px; } -.mk-space-editor-title span { - flex: 1; +.mk-bullet::after { + display: block; + content: " "; + width: 5px; + height: 5px; + border-radius: 50%; + background-color: var(--bullet-color); + transition: transform 75ms ease-out; } -.mk-space-editor-contents { - display: flex; - flex-direction: column; - gap: 4px; +.mk-file-context .mk-cell-text { + background: var(--interactive-hover) !important; } -.mk-space-editor-controls { - display: flex; - justify-content: space-between; +.mk-file-context .mk-file-context-row { + flex-wrap: wrap; } -.mk-space-editor-link { +.mk-file-context-value { + font-size: var(--font-ui-small); + flex-grow: 1; display: flex; - padding: 8px; + align-items: center; + min-height: 24px; +} +.mk-file-context-field:hover { + color: var(--text-normal); +} +.mk-file-context-value .mk-cell-text:hover { + background: var(--interactive-hover) !important; + border-radius: 4px; +} +.mk-file-context-value .mk-cell-option-new { + visibility: visible !important; +} +.mk-file-context-value input[type=text], +.mk-file-context-value input[type=number] { + width: 130px; + border: none; + border-radius: 0px; + height: 24px; +} +.mk-file-context-value input[type=text]:focus, +.mk-file-context-value input[type=number]:focus { + box-shadow: none !important; +} +c .mk-section-title, +.mk-file-context-title, +.mk-file-context-subtitle { font-size: var(--font-ui-small); + font-weight: var(--bold-weight); color: var(--text-muted); - gap: 6px; +} +.mk-file-context-title { + display: flex; align-items: center; - background: var(--background-modifier-cover); - border-radius: 6px; + height: 32px; + gap: 4px; + position: relative; } -.mk-space-editor-link span { - flex: 1; +.mk-file-context-title:hover { + color: var(--text-normal); } -.mk-space-editor-contents .mk-query { - background: var(--background-modifier-cover); - margin-left: 8px; +.mk-file-context-title .mk-inline-button svg { + color: var(--text-faint); } -.mk-space-editor-contents .mk-query-group-type { - width: 24px; - padding: 4px; +.mk-file-context-title .mk-collapse:hover { + background: none !important; } -.mk-space-editor-appearance { - display: flex; - width: 100%; - gap: 16px; - align-items: center; +.mk-file-context-title .mk-collapse { + position: absolute; + left: -25px; + width: 10px; + height: 10px; } -.mk-space-editor-input input { - font-weight: var(--inline-title-weight); - font-size: var(--inline-title-size); - line-height: var(--inline-title-line-height); - font-style: var(--inline-title-style); - font-variant: var(--inline-title-variant); - font-family: var(--inline-title-font); - color: var(--inline-title-color); - background: none; - outline: none; - border: none; +.mk-file-context-title .mk-collapse svg { + margin: 0 !important; } - -/* src/css/FilterBar.css */ -.mk-view-selector { - margin-right: 0; - display: flex; - align-items: center; - gap: 16px; - min-height: 48px; - max-width: 100%; - overflow-x: auto; - font-size: var(--font-ui-medium); +.mk-file-context-folder { + padding: 0 !important; + color: var(--color-accent-1); + background: none !important; + box-shadow: none !important; + height: unset !important; } -.mk-view-selector-spacer { - min-width: var(--context-padding); - width: var(--file-margins); +.mk-file-context .mk-tag-selector { + padding: 0 !important; } -.mk-table-selector, -.mk-frame-selector { +.mk-space-icon { display: flex; - flex-direction: column; -} -.mk-view-selector::-webkit-scrollbar { - display: none; + padding-right: 2px; } -.mk-view-selector > div > .mk-collapse { - padding-right: 8px; - padding-left: 0px; +.mk-file-context-backlink { + background: var(--background-primary); + padding: 8px; } -.mk-view-selector .mk-collapse.mk-icon-xsmall svg { - color: unset; +.mk-file-context-backlink .cm-content { + padding-bottom: 0 !important; } -.mk-view-selector > div > button:not(:last-child) { - padding-right: 0px; +.mk-space-gallery-container { + width: 100%; + height: 100vh; + position: relative; } -.mk-view-selector > div, -.mk-view-selector > button { - border-radius: 0; - margin: 4px -8px; +.mk-space-gallery-controls { + font-size: var(--font-ui-small); + position: absolute; display: flex; align-items: center; - border-bottom: thin solid transparent; - height: 100%; + gap: 10px; + z-index: 100; } -.mk-view-config .mk-is-active button { +.mk-space-gallery-controls:hover { color: var(--text-normal); } -.mk-view-config .mk-is-active { - color: var(--text-normal); +.mk-space-scroller > .mk-spacer { + min-height: var(--mk-header-height); +} +.mk-space-gallery-controls button { background: none !important; + box-shadow: none !important; + color: var(--text-faint) !important; + padding: 0 4px !important; + display: flex; + gap: 4px; + height: 20px; + border: none !important; } -.mk-table-selector button, -.mk-view-config button { - font-size: max(var(--font-ui-small), 1em); - font-weight: var(--font-medium); - background: rgba(var(--nav-item-background-active), 0.3); - border: none; - box-shadow: none; - color: var(--text-faint); +.mk-space-gallery-controls button svg { + color: var(--text-faint) !important; } -.mk-view-config button:hover { - color: var(--text-normal); +.mk-space-gallery-controls button:hover { + color: var(--text-normal) !important; } -.mk-view-config { +.mk-space-gallery { + position: fixed; width: 100%; - display: flex; - color: var(--text-faint); - align-items: center; - border-bottom: thin solid var(--divider-color); - flex-wrap: wrap; + height: 100%; } -.mk-view-config input { - background: none; - border: none; - flex-grow: 1; +.mk-note-header { + position: absolute; + top: 0; + left: 0; + right: 0; + width: 100%; + user-select: none; + height: 200px; } -.is-phone .mk-view-config { - flex-wrap: wrap; +.mk-note-header img { + height: 200px; + width: 100%; + object-fit: cover; + opacity: 1 !important; } -.is-phone .mk-view-config button { - width: unset; +.mk-fold { + opacity: 1; + position: absolute; + left: -24px; + bottom: 4px; + opacity: 0; } -.mk-view-search { - background: var(--background-modifier-form-field); - border: var(--input-border-width) solid var(--background-modifier-border); +.mk-smart-note-title { + width: 100%; display: flex; - border-radius: 8px; - align-items: center; - flex-grow: 1; + flex-direction: column; + justify-content: space-between; } -.mk-view-search button:hover { - background: unset !important; +.mk-file-context-file-horizontal .mk-fold { + bottom: 8px; } -.mk-view-search button { - margin: 0 !important; - padding: var(--size-4-1) var(--size-4-2) !important; +.markdown-source-view:not(.is-live-preview) > .cm-editor > .cm-scroller > .cm-sizer > .mk-inline-context { + display: none; } -.is-phone .mk-view-options { - margin-top: 8px; +.mk-inline-context { + gap: 8px; + display: flex; + flex-direction: column; + border-top: none !important; margin-bottom: 8px; } -.mk-view-options { - display: flex; - align-items: center; - color: var(--text-normal) !important; - min-height: 48px; - padding-left: var(--context-padding); +.mk-inline-context .mk-fold.mk-collapsed { + opacity: 1; + color: var(--collapse-icon-color-collapsed); } -.mk-view-config span { - flex-grow: 10; +.mk-inline-context .mk-fold.mk-collapsed svg { + color: var(--collapse-icon-color-collapsed); } -.mk-view-config svg { - width: 14px; - height: 14px; +.mk-inline-context:hover .mk-fold { + opacity: 1 !important; } -.mk-filter-bar { - display: flex; - padding: 8px 4px; +.markdown-source-view.mod-cm6 .cm-content > .cm-line.mk-has-banner { +} +.markdown-source-view.mod-cm6 .mk-has-backlinks img.cm-widgetBuffer { + display: none !important; +} +.mk-inline-context .mk-file-context-component { gap: 8px; - width: 100%; - border-bottom: 1px solid var(--divider-color); } -.mk-filter-bar span { - flex-grow: 1; +.markdown-source-view.mod-cm6 .cm-content .mk-note-footer { + margin: 16px 0 !important; + padding-top: 16px; + border-top: thin solid var(--divider-color); +} +.mk-header .mk-file-context-component div { + pointer-events: all; +} +.mk-inline-context-enabled .markdown-source-view.is-live-preview > .cm-editor > .cm-scroller > .cm-sizer > .inline-title { + display: none; +} +.mk-note-header .inline-title { + display: flex !important; + margin-bottom: 0; +} +.mk-header-title { + max-width: var(--file-line-width); + padding: 0 var(--file-margins); + margin-left: auto; + margin-right: auto; + margin-top: 20px; +} +.mk-header-title.mk-header-has-banner { + margin-top: -34px; +} +.workspace-leaf-content[data-type=mk-frame-editor] .view-content, +.workspace-leaf-content[data-type=mk-space] .view-content, +.workspace-leaf-content[data-type=make-context-view] .view-content, +.workspace-leaf-content[data-type=make-file-view] .view-content { + padding: 0; +} +.markdown-source-view.mod-cm6 .cm-content > .mk-header { + --mk-header-height: 0px; + gap: 16px; + display: flex; + flex-direction: column; + font-size: var(--font-ui-medium); + contain: unset !important; + position: inherit; } -.mk-view-config .mk-is-active, -.mk-table-selector .mk-is-active { - color: var(--text-normal) !important; +.mk-inline-context-enabled .markdown-reading-view .mod-header > .inline-title, +.mk-inline-context-enabled .markdown-reading-view .frontmatter, +.mk-inline-context-enabled .markdown-reading-view .frontmatter-container { + display: none; } -.mk-filter { - display: flex; - font-size: var(--font-ui-smaller); - color: var(--text-muted); - padding: 0px; +.mk-inline-context .mk-file-context-component .mk-spacer, +.markdown-source-view.mod-cm6 .cm-content > .mk-header .mk-spacer, +.mk-space-view .mk-space-header .mk-spacer { + height: var(--mk-header-height) !important; + pointer-events: none; } -.mk-query .mk-filter > span { - background: var(--background-primary); +.mk-file-context .inline-title { + font-size: 18px; + margin-bottom: 0; } -.mk-filter > span, -.mk-filter > div { - background: var(--interactive-normal); +.mk-file-context-component .mk-file-context-field-new { + opacity: 0.5; + position: relative; } -.mk-filter > span:hover, -.mk-filter > div:hover { - background: var(--interactive-hover); +.mk-file-context-component .mk-file-context-field-new:hover { + opacity: 1; } -.mk-filter > *:first-child { - border-top-left-radius: 4px; - border-bottom-left-radius: 4px; - padding-left: 10px; +.mk-space-header .mk-file-context-file .mk-file-icon, +.mk-inline-context .mk-file-context-file .mk-file-icon { + width: 48px; + height: 48px; + margin-bottom: 8px; } -.mk-filter > *:last-child { - border-top-right-radius: 4px; - border-bottom-right-radius: 4px; - padding-right: 6px; +.mk-space-header .mk-file-context-file.mk-file-context-file-horizontal .mk-file-icon, +.mk-header .mk-file-context-file.mk-file-context-file-horizontal .mk-file-icon { + width: 32px; + height: 32px; + margin-bottom: 0px; } -.mk-filter > span { - border-right: thin solid var(--background-primary); - padding: 4px 8px; - display: flex; - align-items: center; +.mk-space-header .mk-file-context-file-horizontal .mk-file-icon svg, +.mk-space-header .mk-file-context-file-horizontal .mk-file-icon button, +.mk-header .mk-file-context-file-horizontal .mk-file-icon svg, +.mk-header .mk-file-context-file-horizontal .mk-file-icon button { + width: 32px; + height: 32px; + font-size: 28px; } -.mk-filter div { - display: flex; - align-items: center; +.mk-space-header .mk-file-icon svg, +.mk-space-header .mk-file-icon button, +.mk-inline-context .mk-file-icon svg, +.mk-inline-context .mk-file-icon button { + width: 48px; + height: 48px; + padding: 6px; + font-size: 40px; } -.mk-filter div svg { - width: 14px; - height: 14px; +.mk-space-header .mk-file-icon svg.svg-icon, +.mk-inline-context .mk-file-icon svg.svg-icon { + padding: 6px; } -.mk-query { - display: flex; - flex-direction: column; - gap: 16px; - padding: 8px; - border-radius: 6px; + +/* src/css/FileTree.css */ +.mk-hide-tabs .mod-left-split .mod-top-left-space .workspace-tab-header-container-inner { + visibility: hidden; } -.mk-query-filters { - flex-wrap: wrap; - padding: 0; - border-bottom: none; +.is-phone .mod-root .workspace-tabs:not(.mod-visible) { + display: flex !important; } -.mk-query-filter, -.mk-query-group-type { - display: flex; +.mk-spaces-enabled.is-mobile.mk-hide-ribbon .workspace-drawer.mod-left .workspace-drawer-inner { + padding-left: 0 !important; } -.mk-query-group { - display: flex; +.mk-hide-ribbon .workspace-ribbon { + display: none; } -.mk-query-group-type { - width: 32px; - padding-bottom: 4px; +.mk-hide-ribbon.is-hidden-frameless:not(.is-fullscreen) .workspace-tabs.mod-top-left-space .workspace-tab-header-container:before { + width: calc(var(--frame-left-space) + var(--ribbon-width)); } -.mk-query-group button { - background-color: unset; - box-shadow: none; - width: unset; +.mk-hide-ribbon.is-hidden-frameless:not(.is-fullscreen) .workspace-tabs.mod-top-left-space .workspace-tab-header-container { + padding-left: calc(var(--frame-left-space) + var(--ribbon-width)); } -.is-phone .mk-query-group button { - background-color: var(--interative-normal); +.mk-spaces-enabled.is-mobile.mk-hide-ribbon .workspace-drawer-ribbon { + display: none; } -.mk-query-group-type > span, -.mk-query-filter > span { - display: flex; - flex-grow: 1; +.mk-spaces-enabled.is-mobile .workspace-drawer.mod-left .workspace-drawer-inner .workspace-drawer-header { + padding-left: 0 !important; } -.mk-filter-add { - border: thin solid var(--divider-color) !important; - border-radius: 4px; - box-shadow: none !important; - background: none !important; - display: flex; - align-items: center; - padding: 4px; - font-size: var(--font-ui-small); - color: var(--text-muted); - gap: 4px; +.mk-spaces-enabled.is-mobile .workspace-drawer.mod-left .workspace-drawer-active-tab-header { + display: none; } -.mk-filter-add div { - display: flex; +.mk-spaces-enabled.is-mobile .workspace-drawer.mod-left .workspace-drawer-inner .mod-settings { + display: none; } -.mk-search-bar { +.is-mobile .workspace-drawer.mod-left .workspace-drawer-header-left .mk-main-menu-container { + margin-right: 34px; } -.mk-tag-selector { - display: flex; - gap: 4px; - margin-top: 8px; - margin-bottom: 8px; - flex-wrap: wrap; +.is-mobile .mk-sidebar button:not(.clickable-icon) { } -.mk-tag-selector svg { - color: var(--tag-color) !important; +.is-mobile .mk-sidebar .mk-file-icon button { + font-size: 16px; + margin: 0; + height: 24px; + width: 24px; } -.mk-tag-selector div { - cursor: var(--cursor-link); - font-size: var(--font-ui-smaller); - display: flex; +body.is-mobile .sidebar-toggle-button { + display: flex !important; } -.mk-tag-selector span { - display: flex; - align-items: center; +.is-mobile .workspace-drawer.mod-left .workspace-drawer-header-icon { + position: absolute; + right: 20px; + top: 12px; + z-index: 100; } -.mk-tag-selector button { - height: auto; - border-radius: var(--tag-radius); - color: var(--tag-color); - background-color: var(--tag-background); - border: var(--tag-border-width) solid var(--tag-border-color); - box-shadow: none !important; - font-size: var(--tag-size); - vertical-align: baseline; - border-left: none; - border-right: none; - padding-top: var(--tag-padding-y) !important; - padding-bottom: var(--tag-padding-y) !important; +.is-phone .workspace-drawer.mod-left .workspace-drawer-header-icon { + top: 20px; } - -/* src/css/ContextBuilder.css */ -.is-phone .mk-context-maker { - max-height: 100vh; +.is-mobile .workspace-drawer.mod-left { + border-top-right-radius: 0; + border-bottom-right-radius: 0; } -.mk-context-maker-container { - height: 100%; +.mk-sidebar { display: flex; flex-direction: column; + height: 100%; } -.mk-context-maker .modal-content { - height: var(--dialog-max-height); - overflow-y: scroll; -} -.mk-context-maker-preview { - display: flex; - flex-wrap: wrap; - gap: 4px; - margin-bottom: 16px; - padding: var(--size-4-4); - flex-grow: 1; - overflow: scroll; - padding-bottom: 0; +.is-mobile .mk-sidebar { } -.mk-context-maker-item { - background: rgba(var(--mono-rgb-100), 0.025); - border-radius: 4px; +.mk-file-tree { + flex: 1; overflow: hidden; - display: flex; - align-items: center; - gap: 2px; - padding: 8px; -} -.mk-context-maker-selector { - font-size: var(--font-ui-small); - height: 240px; - overflow-y: scroll; - background: rgba(var(--mono-rgb-100), 0.025); - padding: var(--size-4-4); - border-radius: 4px; } -.mk-context-maker-selector .mk-cell-option { - margin-bottom: 8px; +.mk-context-tree .tree-item { + padding: 4px; } -.mk-context-maker-builder { - min-height: 60px; - display: flex; - flex-wrap: wrap; - padding: 8px; - gap: 4px; +.mk-context-tree .tree-item-self { + margin-left: var(--spacing); + align-items: center; + padding: 2px 2px; } -.mk-property-editor-context-title { - display: flex; - font-size: var(--font-ui-small); - font-weight: var(--font-normal); - padding: var(--size-4-2) var(--size-4-1); +.mk-context-tree .mk-tree-wrapper { + padding: 0px !important; } -.mk-property-editor-context-title span { - flex: 1; +.mk-context-tree .mk-section-title .mk-tree-text { + padding: 0.25rem 0.3rem; } -.mk-property-editor-context-tag { +.mk-context-tree .mk-section-title { + padding-left: 4px; + padding-right: 4px; +} + +/* src/css/FilterBar.css */ +.mk-view-selector { + margin-right: 0; display: flex; - gap: 4px; align-items: center; + gap: 16px; + min-height: 48px; + max-width: 100%; + overflow-x: auto; + font-size: var(--font-ui-medium); } -.mk-property-editor { - padding: 0; +.mk-view-selector-spacer { + min-width: var(--context-padding); + width: var(--file-margins); +} +.mk-table-selector, +.mk-frame-selector { display: flex; flex-direction: column; - height: 100%; - gap: 8px; } -.mk-property-editor-property { - display: flex; - padding: 8px; - font-size: var(--font-ui-small); - color: var(--text-muted); - gap: 6px; - align-items: center; - background: var(--background-modifier-cover); - border-radius: 6px; +.mk-view-selector::-webkit-scrollbar { + display: none; } -.mk-property-editor-new:hover { - color: var(--text-normal); +.mk-view-selector > div > .mk-collapse { + padding-right: 8px; + padding-left: 0px; } -.mk-property-editor-new span { - font-size: var(--font-ui-smaller); +.mk-view-selector .mk-collapse.mk-icon-xsmall svg { + color: unset; } -.mk-property-editor-new { - color: var(--text-faint); - display: flex; - flex-direction: column; - padding: var(--size-4-2) var(--size-4-2); - border: thin solid var(--divider-color); - border-radius: 8px; +.mk-view-selector > div > button:not(:last-child) { + padding-right: 0px; } -.mk-property-editor-context-title { - font-size: var(--font-ui-medium); - font-weight: var(--font-semibold); - line-height: var(--line-height-tight); - padding: var(--size-4-2) var(--size-4-1); +.mk-view-selector > div, +.mk-view-selector > button { + border-radius: 0; + margin: 4px -8px; display: flex; align-items: center; - gap: 8px; + border-bottom: thin solid transparent; + height: 100%; } -.mk-property-editor-list { - display: flex; - flex-direction: column; - gap: 4px; +.mk-view-config .mk-is-active button { + color: var(--text-normal); } -.mk-property-editor-context-title span, -.mk-property-editor-list span { - font-size: var(--font-ui-smaller); - color: var(--text-faint); - flex: 1; +.mk-view-config .mk-is-active { + color: var(--text-normal); + background: none !important; } -.mk-context-properties-new { +.mk-table-selector button, +.mk-view-config button { + font-size: max(var(--font-ui-small), 1em); + font-weight: var(--font-medium); + background: rgba(var(--nav-item-background-active), 0.3); + border: none; + box-shadow: none; + color: var(--text-faint); } - -/* src/css/FrameProps.css */ -body:not(.is-mobile) .mk-frame-props-editor { +.mk-view-config button:hover { + color: var(--text-normal); } -.mk-frame-props-editor { +.mk-view-config { + width: 100%; display: flex; - position: absolute; - top: -40px; - padding: 0; - z-index: var(--layer-popover); - background: var(--background-primary); - max-height: unset; + color: var(--text-faint); + align-items: center; + border-bottom: thin solid var(--divider-color); + flex-wrap: wrap; } -.is-mobile .mk-frame-props-editor svg { - width: 32px; - height: 32px; +.mk-view-config input { + background: none; + border: none; + flex-grow: 1; } -.is-mobile .mk-frame-props-editor { - --mobile-toolbar-height: 48px; - border-radius: 0; - width: 100%; - margin-top: 0; - overflow-x: auto; - justify-content: center; - height: var(--mobile-toolbar-height); - border-top: var(--divider-width) solid var(--divider-color); +.is-phone .mk-view-config { + flex-wrap: wrap; } -.mk-frame-props-editor .mk-mark { - margin: 4px; - padding: 4px; - border-radius: 4px; +.is-phone .mk-view-config button { + width: unset; +} +.mk-view-search { + background: var(--background-modifier-form-field); + border: var(--input-border-width) solid var(--background-modifier-border); display: flex; - font-size: var(--font-ui-small); + border-radius: 8px; align-items: center; - gap: 4px; + flex-grow: 1; } -.mk-frame-props-editor .mk-mark:hover { - background: var(--background-modifier-hover); +.mk-view-search button:hover { + background: unset !important; } -.mk-frame-props-editor .mk-mark-active { - background: var(--background-modifier-hover); +.mk-view-search button { + margin: 0 !important; + padding: var(--size-4-1) var(--size-4-2) !important; } -.mk-frame-props-editor svg { - color: var(--text-muted); - width: 16px; - height: 16px; +.is-phone .mk-view-options { + margin-top: 8px; + margin-bottom: 8px; } -.mk-divider { - border-left: thin solid var(--background-modifier-hover); - width: 1px; +.mk-view-options { + display: flex; + align-items: center; + color: var(--text-normal) !important; + min-height: 48px; + padding-left: var(--context-padding); } -mark { - color: unset; - border-radius: 2px; - margin: 0px 2px; - padding: 0px 2px; +.mk-view-config span { + flex-grow: 10; } - -/* src/css/CardsView.css */ -.mk-space-scroller > .mk-cards-container { - padding-bottom: 60px; +.mk-view-config svg { + width: 14px; + height: 14px; } -.mk-cards-container { +.mk-filter-bar { + display: flex; + padding: 8px 4px; + gap: 8px; width: 100%; - height: 100%; - overflow-x: auto; - overflow-y: visible; -} -.mk-cards-container .mk-list-content > .mk-flowspace-editor { - padding-left: 12px !important; - padding-right: 12px !important; + border-bottom: 1px solid var(--divider-color); } -.mk-cards-container .mk-list-view { - display: inline-grid; - grid-auto-flow: column; - gap: 20px; +.mk-filter-bar span { + flex-grow: 1; } -.mk-space-scroller > .mk-cards-container .mk-list-view { - padding: 20px; +.mk-view-config .mk-is-active, +.mk-table-selector .mk-is-active { + color: var(--text-normal) !important; } -.mk-cards-container .mk-list-item { - border-radius: 4px; - list-style: none; - background: var(--background-secondary); - overflow: hidden; - font-size: var(--font-ui-small); +.mk-filter { + display: flex; + font-size: var(--font-ui-smaller); color: var(--text-muted); - box-shadow: - 0px 1px 2px rgba(0, 0, 0, 0.06), - 0px 3.4px 6.7px rgba(0, 0, 0, 0.06), - 0px 15px 30px rgba(0, 0, 0, 0.15); + padding: 0px; } -.mk-cards-container .mk-list-group { - width: 200px; +.mk-query .mk-filter > span { + background: var(--background-primary); } -.mk-cards-grid .mk-list-item { - width: calc((var(--file-line-width) / 3) - 7px); +.mk-filter > span, +.mk-filter > div { + background: var(--interactive-normal); } -.mk-cards-container .mk-file-icon svg { - display: none; +.mk-filter > span:hover, +.mk-filter > div:hover { + background: var(--interactive-hover); } -.mk-cards-grid .mk-list-group { - width: 100% !important; +.mk-filter > *:first-child { + border-top-left-radius: 4px; + border-bottom-left-radius: 4px; + padding-left: 10px; } -.mk-cards-grid .mk-list-group ul { - flex-direction: row !important; - flex-wrap: wrap; +.mk-filter > *:last-child { + border-top-right-radius: 4px; + border-bottom-right-radius: 4px; + padding-right: 6px; +} +.mk-filter > span { + border-right: thin solid var(--background-primary); + padding: 4px 8px; + display: flex; + align-items: center; +} +.mk-filter div { + display: flex; + align-items: center; +} +.mk-filter div svg { + width: 14px; + height: 14px; } -.mk-cards-container .mk-list-group ul { - list-style: none; - padding-inline-start: 0px; +.mk-query { display: flex; flex-direction: column; - gap: 10px; + gap: 16px; + padding: 8px; + border-radius: 6px; } -.mk-list-container .mk-list-group-header { - display: flex; - padding: 12px 24px 4px 24px; - background-color: var(--titlebar-background); +.mk-query-filters { + flex-wrap: wrap; + padding: 0; + border-bottom: none; } -.mk-list-container .mk-list-group-header > div { - background: none !important; +.mk-query-filter, +.mk-query-group-type { + display: flex; } -.mk-floweditor > .workspace-leaf > .workspace-leaf-content > .view-content > div > .mk-list-container { - padding-bottom: 0; +.mk-query-group { + display: flex; } -.mk-floweditor > .workspace-leaf > .workspace-leaf-content > .view-content > div > .mk-list-container .mk-list-item { - padding: 8px; +.mk-query-group-type { + width: 32px; + padding-bottom: 4px; } -.mk-space-scroller > .mk-list-container { - padding-bottom: 100px; +.mk-query-group button { + background-color: unset; + box-shadow: none; + width: unset; } -.mk-list-container { - width: 100%; - height: 100%; - overflow-y: auto; +.is-phone .mk-query-group button { + background-color: var(--interative-normal); } -.mk-list-container .mk-list-view { +.mk-query-group-type > span, +.mk-query-filter > span { display: flex; - flex-direction: column; -} -.mk-cards-container .mk-list-item.mk-is-active, -.mk-list-container .mk-list-item.mk-is-active { - background: var(--background-modifier-active-hover); + flex-grow: 1; } -.mk-list-container .mk-list-item { +.mk-filter-add { + border: thin solid var(--divider-color) !important; + border-radius: 4px; + box-shadow: none !important; + background: none !important; display: flex; - padding: 8px; - list-style: none; + align-items: center; + padding: 4px; font-size: var(--font-ui-small); color: var(--text-muted); - align-items: flex-start; + gap: 4px; } -.mk-list-container .mk-list-content { - flex-grow: 1; +.mk-filter-add div { display: flex; - flex-direction: column; - border-bottom: thin solid var(--divider-color); - min-height: 69px; } -.mk-list-container .mk-list-fields { +.mk-search-bar { +} +.mk-tag-selector { display: flex; + gap: 4px; + margin-top: 8px; + margin-bottom: 8px; flex-wrap: wrap; - align-items: center; - gap: 8px; - padding-bottom: 8px; } -.mk-list-container .mk-list-fields > div { - margin-bottom: -8px; +.mk-tag-selector svg { + color: var(--tag-color) !important; } -.mk-list-container .mk-list-fields > div:not(.mk-cell-file):not(.mk-cell-image) { - width: unset !important; +.mk-tag-selector div { + cursor: var(--cursor-link); + font-size: var(--font-ui-smaller); + display: flex; } -.mk-list-container .mk-list-fields > .mk-cell-image { - width: 100%; +.mk-tag-selector span { + display: flex; + align-items: center; } -.mk-list-container .mk-list-group { - width: 100%; +.mk-tag-selector button { + height: auto; + border-radius: var(--tag-radius); + color: var(--tag-color); + background-color: var(--tag-background); + border: var(--tag-border-width) solid var(--tag-border-color); + box-shadow: none !important; + font-size: var(--tag-size); + vertical-align: baseline; + border-left: none; + border-right: none; + padding-top: var(--tag-padding-y) !important; + padding-bottom: var(--tag-padding-y) !important; } -.mk-cards-container .mk-cell-file-title, -.mk-list-container .mk-cell-file-title { - padding: 4px; - color: var(--text-normal); - margin-bottom: 0; + +/* src/css/FlowEditor.css */ +.mk-floweditor .workspace-leaf { + all: unset; } -.mk-list-container .mk-list-fields .mk-cell-file { - width: 100%; - font-weight: var(--bold-weight); +.mk-floweditor.hover-editor .popover-content { + margin: 0; + border-radius: var(--he-popover-border-radius); + overflow: hidden; } -.mk-cards-container .mk-list-fields { - padding: 12px; - align-items: flex-start; - display: flex; - flex-direction: column; +.mk-floweditor.hover-editor .popover-content .workspace-split { + display: none; } -.mk-list-fields .mk-cell-file-preview { +.mk-floweditor.hover-editor .workspace-leaf, +.mk-floweditor.hover-editor .workspace-split { + height: 100%; width: 100%; - color: var(--text-normal); - margin-bottom: -8px; - color: var(--text-faint); - text-overflow: ellipsis; - overflow: hidden; - -webkit-line-clamp: 1; - -webkit-box-orient: vertical; - display: -webkit-box; -} -.mk-list-container .mk-list-group ul { - list-style: none; - padding-inline-start: 0px; - display: flex; - flex-direction: column; - margin-top: 0; - margin-bottom: 0; } -.mk-file-preview { - background: var(--label-color); +.mk-floweditor .markdown-source-view.mod-cm6 .cm-editor { + min-height: auto; } -.mk-list-container .mk-file-preview { - min-width: 48px; - height: 48px; - border-radius: 8px; - margin-right: 8px; - margin-top: 8px; - display: flex; - align-items: center; - justify-content: center; +.mk-floweditor .embedded-backlinks, +.mk-floweditor .metadata-container { + display: none !important; } -.mk-list-group-header .mk-cell-option-item { - background: none !important; +.mk-floweditor .workspace-leaf-content[data-type=canvas] .view-content { + min-height: 600px; + height: calc(100vh - 100px); } -.mk-cards-container .mk-file-preview { - position: relative; - margin-bottom: 4px; - height: 80px; +.mk-flow-container .mk-floweditor .cm-content, +div:not(.mk-flowspace-editor) > .mk-floweditor .cm-content { + padding: 0 !important; } -.mk-cards-container .mk-file-icon { - position: absolute; - bottom: -6px; - font-size: 24px; - left: 14px; +.markdown-source-view.mod-cm6 .cm-content > .internal-embed { + contain: unset !important; } -.mk-list-container .mk-file-icon { - font-size: 20px; - display: flex; - align-items: center; - justify-content: center; +.mk-toggle-on { + color: var(--interactive-accent); } -.mk-context-view-editor { - flex: 1; - padding: 40px; +.mk-floweditor .view-content { + background: none !important; } -.mk-context-view-editor .mk-td { - white-space: nowrap; +.mk-floweditor-placeholder { + border: thin solid var(--divider-color); } -.mk-context-view-selector { +.mk-floweditor .mk-floweditor-title-container { display: flex; - padding: 12px 24px; - gap: 8px; - border-top: thin solid var(--divider-color); -} -.mk-context-view-selector > div { - width: 50px; - overflow: hidden; - display: -webkit-box; - -webkit-line-clamp: 2; - line-clamp: 2; - -webkit-box-orient: vertical; - text-align: center; -} - -/* src/css/TableView.css */ -.mk-space-view { - height: 100%; -} -body { - --context-padding: var(--size-4-6); -} -.mk-th { - position: relative; } -.is-mobile .mk-resizer { - width: 8px; - opacity: 0.05; +.mk-floweditor-title { + padding: 8px 0px; + margin: 0; + margin-top: 8px; + border-top: 1px solid var(--background-modifier-hover); + width: 100%; + display: flex; } -.mk-resizer { - position: absolute; - right: 0; - top: 0; - height: 100%; - width: 2px; - background: var(--divider-color); - cursor: col-resize; - user-select: none; - touch-action: none; - opacity: 0; +.mk-floweditor-title:hover { + background: var(--background-modifier-hover); } -.mk-resizer.mk-resizer-active { - opacity: 1; +.mk-floweditor-title div:not(.collapse) svg { + transform: rotate(0deg); } -.mk-resizer.isResizing { - background: var(--interactive-hover); - opacity: 1; +.mk-floweditor-title .collapse svg { + transform: rotate(90deg); } -.mk-resizer:hover { - opacity: 1; +.mk-floweditor-title svg { + margin-left: 4px; + width: 10px; + height: 10px; } -.mk-col-header { - overflow-x: hidden; - text-overflow: ellipsis; - padding: 0.5rem 0.75rem; - display: flex; - align-items: center; - font-size: var(--font-ui-small); - font-weight: var(--font-normal); - color: var(--text-muted); - text-transform: capitalize; +.mk-flow-hover { + margin-top: -34px; + margin-left: -34px; } -.mk-col-header > div { +.mk-flow-hover > div { display: flex; - gap: 4px; - width: 100%; + gap: 8px; align-items: center; } -.mk-col-header-context { - margin-left: 4px; - color: var(--text-faint); +.mk-flow-minimal .mk-floweditor-container:not(.mk-floweditor-fix) > .mk-floweditor { + padding: 8px; + border-radius: 4px; + border-left: thin solid var(--divider-color); } -.mk-td { - padding: 0.5rem; - vertical-align: top; +.mk-flow-minimal .markdown-embed-title, +.mk-flow-seamless .markdown-embed-title { + display: none; } -.mk-td > div { - min-height: 28px; +.mk-foldernote > .mk-floweditor > .popover-content > .mk-flow-titlebar, +.mk-flow-minimal .mk-flow-titlebar, +.mk-flow-seamless .mk-flow-titlebar { + display: none; } -.mk-td-group { - background-color: var(--background-primary); - padding: 0.5rem; - border-top: 0.5px solid var(--divider-color) !important; - font-size: var(--font-ui-small); +.mk-flow-classic .mk-flow-titlebar { font-weight: var(--bold-weight); + text-align: left; + text-overflow: ellipsis; + white-space: nowrap; + padding: var(--size-4-1) var(--context-padding); } -.mk-td-group .mk-cell-option { - width: unset; +.mk-flow-classic .mk-flow-titlebar:empty { + margin-bottom: 0 !important; + padding: 0 !important; } -.mk-td-group .mk-cell-option-item { - background: none; +.mk-flow-classic .mk-floweditor-container:not(.mk-floweditor-fix) > .mk-floweditor { + font-style: var(--embed-font-style); + background-color: var(--embed-background); + border-top: var(--embed-border-top); + border-right: var(--embed-border-right); + border-bottom: var(--embed-border-bottom); + border-left: var(--embed-border-left); + padding: var(--embed-padding); } -.mk-td-group .mk-cell-option-item div:hover { - background: none; +.mk-flow-minimal .internal-embed > .markdown-embed, +.mk-flow-minimal .internal-embed.markdown-embed { + padding: 8px; + border-radius: 4px; + border: thin solid var(--divider-color); + margin-top: 4px; } -.mk-td-empty { - padding: 0 !important; +.mk-flow-seamless .internal-embed > .markdown-embed, +.mk-flow-seamless .internal-embed.markdown-embed { + margin-top: 4px; } -.mk-td input[type=text], -.mk-td input[type=number] { - display: table-cell; - width: 100%; - border: 0; - outline: 0; +.mk-flow-classic .internal-embed > .markdown-embed, +.mk-flow-classic .internal-embed.markdown-embed { + margin-top: 24px; } -.mk-table { - width: 100%; - overflow-x: scroll; +.internal-embed > .markdown-embed .markdown-rendered h1, +.internal-embed > .markdown-embed .markdown-rendered h2, +.internal-embed > .markdown-embed .markdown-rendered h3, +.internal-embed > .markdown-embed .markdown-rendered h4, +.internal-embed > .markdown-embed .markdown-rendered h5, +.internal-embed > .markdown-embed .markdown-rendered h6, +.internal-embed.markdown-embed .markdown-rendered h1, +.internal-embed.markdown-embed .markdown-rendered h2, +.internal-embed.markdown-embed .markdown-rendered h3, +.internal-embed.markdown-embed .markdown-rendered h4, +.internal-embed.markdown-embed .markdown-rendered h5, +.internal-embed.markdown-embed .markdown-rendered h6 { + margin: 0; } -.mk-table table { - border-spacing: 0; - border-bottom: 0.5px solid var(--divider-color) !important; +.markdown-embed p { + margin-bottom: 24px; } -.mk-table table th:last-child { - width: 100%; +.mk-flow-minimal .internal-embed > .markdown-embed, +.mk-flow-minimal .internal-embed > .markdown-embed, +.mk-flow-seamless .internal-embed.markdown-embed, +.mk-flow-seamless .internal-embed.markdown-embed { + margin-top: 24px; } -.mk-table th:hover { - background: var(--interactive-hover); +.mk-floweditor-container:not(.mk-floweditor-fix) > .mk-floweditor:hover { } -.mk-table tr th:first-child .mk-col-header, -.mk-table tr td:first-child { - padding-left: calc(var(--context-padding) - 0.75rem); +.mk-floweditor-container { + min-height: var(--flow-height); } -.mk-cell-empty { - color: var(--text-faint); +.workspace-leaf > .workspace-leaf-content, +.workspace-leaf > .workspace-leaf-content > .view-content, +.workspace-leaf > .workspace-leaf-content > .view-content > .mod-cm6 > .cm-editor > .cm-scroller { } -.mk-td img { - max-height: 45px; +.mk-floweditor-container > .mk-floweditor { + border: thin solid transparent; } -.mk-table tr td:first-child.mk-td-empty { - padding-left: calc(var(--context-padding) - 0.75rem) !important; +.mk-floweditor-container > .mk-floweditor:hover { + background: rgba(0, 0, 0, 0.04) !important; + border-left: thin solid var(--divider-color); } -.mk-table td { - border-top: 0.5px solid var(--background-modifier-border) !important; - font-size: var(--font-ui-small); +.mk-flow-minimal .mk-floweditor-container > .mk-floweditor:hover { + box-shadow: + 0px 1px 2px rgba(0, 0, 0, 0.06), + 0px 3.4px 6.7px rgba(0, 0, 0, 0.06), + 0px 15px 30px rgba(0, 0, 0, 0.15); } -.mk-table .mk-td:not(:last-child) { - border-right: 0.5px solid var(--background-modifier-border) !important; +.mk-floweditor-container { + display: inline; } -.mk-cell-object { - display: flex; - flex-direction: column; - margin-left: 10px; - padding-left: 10px; - border-left: thin solid var(--divider-color); +.cm-tooltip-hover { + margin-bottom: 30px; } -.mk-cell-object .mk-file-context-field-key { - width: 100%; - border: none; - border-radius: 0px; - height: 24px; +.mk-floweditor-fix > .mk-floweditor { + margin-top: -28px; } -.mk-cell-object .mk-file-context-field-key:not(:focus) { - background: unset !important; +.cm-tooltip { + border: none !important; + z-index: var(--layer-popover) !important; } -.mk-cell-object-row { +.cm-line:hover > .mk-floweditor-selector { + visibility: visible; +} +.internal-embed.markdown-embed:hover .mk-floweditor-selector, +.internal-embed > .markdown-embed:hover .mk-floweditor-selector { + visibility: visible; +} +.mk-flow-classic .internal-embed > .markdown-embed > .mk-floweditor-selector, +.mk-flow-classic .internal-embed.markdown-embed > .mk-floweditor-selector { + top: 5px !important; +} +.mk-flow-minimal .internal-embed > .markdown-embed > .mk-floweditor-selector, +.mk-flow-minimal .internal-embed.markdown-embed > .mk-floweditor-selector, +.mk-flow-seamless .internal-embed > .markdown-embed > .mk-floweditor-selector, +.mk-flow-seamless .internal-embed.markdown-embed > .mk-floweditor-selector { + top: 8px; + right: -16px; +} +.mk-flow-minimal .cm-line > .mk-floweditor-selector, +.mk-flow-seamless .cm-line > .mk-floweditor-selector { + top: 8px; + right: -16px; +} +.mk-floweditor-selector { + position: absolute; + right: 0px; + top: 8px; + z-index: var(--layer-popover); display: flex; } -.mk-cell-radio-group { +.mk-flowblock-menu { + border-radius: var(--radius-s); display: flex; - background-color: var(--interactive-normal); + font-size: var(--font-ui-smaller); + border: 1px solid var(--background-modifier-border); + background: var(--interactive-normal); box-shadow: var(--input-shadow); - -webkit-app-region: no-drag; - display: inline-flex; - align-items: center; - justify-content: center; - color: var(--text-normal); - font-size: var(--font-ui-small); - border-radius: var(--button-radius); - border: 0; - padding: var(--size-4-1) var(--size-4-3); - height: var(--input-height); - font-weight: var(--input-font-weight); - cursor: var(--cursor); - font-family: inherit; - outline: none; - user-select: none; - white-space: nowrap; -} -.mk-cell-radio-group > div { - width: 30px; } -.mk-cell-text { - padding: 4px; -} -.mk-cell-number { - padding: 4px; - text-align: right; +.mk-hover-button { + padding: var(--size-4-1); + color: var(--text-muted); } -.mk-cell-text:not(:focus) { - background: unset !important; +.mk-flowblock-menu .mk-hover-button { + padding: var(--size-4-2); + color: var(--text-muted); + border: none; + border-right: 1px solid var(--background-modifier-border); } -.mk-cell-image:hover > .mk-image-selector { - visibility: visible; +.mk-flowblock-menu .mk-hover-button:last-child { + border-right: none; } -.mk-cell-image { - position: relative; - min-width: 40px; - min-height: 40px; +.mk-flowblock-menu .mk-hover-button:hover { + background: var(--background-secondary-alt); } -.mk-button-new { - background: var(--interactive-accent) !important; - color: var(--text-on-accent) !important; +.mk-floweditor > .workspace-leaf > .workspace-leaf-content > .view-content > .markdown-source-view.mod-cm6 > .cm-editor > .cm-scroller { + padding: 0; } -.mk-image-selector { - position: absolute; - visibility: hidden; - top: 0px; - left: 0px; - z-index: var(--layer-popover); - padding-right: 8px; - height: 30px; - display: flex; - gap: 6px; +.mk-floweditor > .workspace-leaf > .workspace-leaf-content > .view-content > div > .mk-table { + padding-bottom: 10px !important; } -.mk-cell-image img { - max-height: 100px; - overflow: hidden; - border-radius: 4px; + +/* src/css/Frame.css */ +.mk-frame-view > div { } -.mk-cell-date { - width: 100%; - min-height: 30px; +.mk-setter-code { display: flex; + border: var(--input-border-width) solid var(--background-modifier-border); + width: 120px; + overflow: hidden; align-items: center; + border-radius: var(--input-radius); } -.mk-cell-date-value { - border-radius: 4px; +.mk-setter-code .mk-setter-code-value { padding: 2px 4px; + background-color: var(--background-modifier-form-field); + height: 100%; } -.mk-cell-date-value:hover { - background: var(--interactive-hover); +.mk-frame-code-block .cm-gutters { + padding-inline-end: 0 !important; } -.mk-cell-link, -.mk-cell-context, -.mk-cell-tags, -.mk-cell-option { - width: 100%; - min-height: 24px; - padding: 4px 0px; - gap: 4px; - display: flex; - flex-wrap: wrap; +.mk-frame-code-add { + margin-left: 10px; } -.mk-cell-boolean { - padding: 4px; - display: flex; - align-items: center; - gap: 2px; +.mk-frame-code-section > span { + margin-left: 10px; } -.mk-cell-option-item { - background: rgba(var(--mono-rgb-100), 0.025); - border-radius: 4px; - overflow: hidden; +.mk-frame-view p { + margin-block-start: 0; + margin-block-end: 0; +} +.mk-frame-row-placeholder:hover > .mk-frame-hover-menu-container, +.mk-f:hover > .mk-frame-hover-menu-container, +.mk-frame-hover-menu-container:hover { display: flex; - align-items: center; - gap: 2px; } -.mk-cell-option-item.mk-is-active { - background: var(--interactive-accent) !important; +.mk-image-node { + width: 100%; } -.mk-cell-option-item input { - margin: 0; +.mk-f { + position: relative; + width: 100%; } -.mk-cell-option-item div { - padding: 2px 4px; - height: 100%; - display: -webkit-box; - -webkit-line-clamp: 1; - line-clamp: 1; - -webkit-box-orient: vertical; +.mk-f.is-selected { + background: var(--background-modifier-active-hover); + border-radius: 4px; } -.mk-cell-option-item div:hover { - background: var(--interactive-hover); +.mk-frame-hover-menu-container { + position: absolute; + display: none; + left: -36px; + top: -6px; + padding: 6px; + z-index: var(--layer-popover); } -.mk-cell-fileprop { - padding: 4px; - color: var(--text-muted); +.mk-frame-hover-menu-container .mk-hover-button:hover { + background: var(--nav-item-background-hover); + border-radius: 4px; } -.mk-cell-file { +.mk-frame-hover-props-editor { +} +.mk-frame-hover-menu { + border-radius: var(--radius-s); display: flex; - align-items: center; + flex-direction: column; + font-size: var(--font-ui-smaller); + background: var(--background-primary); } -.mk-cell-file-title { - font-size: var(--font-ui-medium); - margin-bottom: 8px; +.mk-frame-bounds { + position: absolute !important; + width: 100%; + height: 100%; + z-index: var(--layer-popover); } -.mk-cell-file-new { - display: flex; - align-items: center; +.mk-frame-bounds.is-selected { + border: 2px solid var(--color-accent); } -.mk-cell-file-new .mk-file-icon svg { - color: var(--text-faint); +.mk-frame-sidebar .mk-frame-selector { + flex-direction: column; + height: 200px; + overflow: scroll; } -.mk-table:focus .mk-is-active { - background: var(--background-modifier-active-hover) !important; +.mk-frame-selector { + display: flex; } -.mk-floweditor .mk-table:not(:focus) .mk-is-active { - background: none !important; +.mk-space-scroller .mk-frame-selector { + flex-wrap: wrap; + margin-left: auto; + margin-right: auto; + margin-top: var(--file-margins); + width: 100%; + max-width: var(--file-line-width); } -.mk-table:focus .mk-is-active .mk-selected-cell { - outline: solid 2px var(--interactive-accent); +.mk-space-scroller .mk-frame-selector > div { + width: 100px; + height: 80px; } -.mk-cell-file-new .mk-file-icon:hover { - background: var(--interactive-hover); +.mk-frame-editor { + display: flex; + flex-direction: row; + width: 100%; + height: 100%; + flex: 1; } -.mk-cell-file-item { +.mk-frame-main { + flex: 1; display: flex; - align-items: center; + flex-direction: column; + align-items: flex-start; } -.mk-cell-file-item .mk-file-icon:hover { - background: var(--interactive-hover); +.mk-frame-main-tabs { + border-bottom: thin solid var(--divider-color); + width: 100%; } -.mk-cell-file-item .mk-cell-file-name { - padding: 2px 4px; - border-radius: 4px; +.mk-frame-main-tabs button { + background: rgba(var(--nav-item-background-active), 0.3); + border: none; + box-shadow: none; + color: var(--text-faint); } -.mk-cell-file-item .mk-cell-file-name:hover { - background: var(--interactive-hover); +.mk-frame-builder { + display: flex; + flex-direction: row; + flex-wrap: wrap; + gap: 2px; } -.mk-cell-file .mk-file-icon { - margin-right: 4px; - align-items: center; +.mk-frame-builder > div { + width: 74px; display: flex; - width: 24px; - border-radius: 4px; + flex-direction: column; + align-items: center; + background: var(--background-primary); + padding: 8px; } -.mk-cell-file-new .mk-cell-file-name { - padding: 4px !important; - background: none !important; +.mk-frame-builder-icon svg { + width: 24px; + height: 24px; + color: var(--text-muted); } -.is-phone .mk-cell-file-flow { - display: none; +.mk-frame-canvas { + background: var(--background-secondary); + display: flex; + flex-direction: column; + flex: 1; + padding: 12px; + width: 100%; + gap: 16px; } -.mk-list-item .mk-cell-file-flow { - visibility: hidden; - margin-left: 4px; - padding: 2px 4px; +.mk-cell-code.markdown-source-view.mod-cm6 .cm-content { + white-space: pre-wrap; } -.mk-list-item:hover .mk-cell-file-flow { - visibility: visible; +.mk-cell-code .cm-editor { + min-height: inherit !important; } -.is-phone .mk-list-item .mk-cell-file-flow { - width: unset; - visibility: unset; +.mk-frame-props { + display: flex; + flex-direction: column; } -.mk-list-item .mk-cell-file-flow:hover { - border-radius: 4px; - background: var(--interactive-hover); +.mk-frame-canvas-editor { + background: var(--background-primary); + max-width: var(--file-line-width); + min-height: 100px; + box-shadow: var(--shadow-s); } -.mk-row-new { - text-align: left; - border-top: 0.5px solid var(--divider-color) !important; - padding: 8px var(--context-padding) !important; - font-weight: normal !important; - color: var(--text-faint) !important; - font-size: var(--font-ui-small) !important; +.mk-frame-canvas-editor p { + margin-block-start: 0; + margin-block-end: 0; + margin-inline-start: 0px; + margin-inline-end: 0px; } -.markdown-rendered .mk-table td, -.markdown-rendered .mk-table th { - border: unset; +.mk-frame-container { + flex: 1; + height: 100%; + display: flex; + justify-content: center; + position: relative; + border-top: 1px solid var(--divider-color); } -.mk-row-new:hover { - background: var(--background-modifier-hover); +.mk-cell-code { + font-family: var(--font-monospace); } -.mk-icon-small svg { - width: 16px; - height: 16px; - color: var(--text-muted); +.mk-frame-code-editor { + width: 100%; + height: 100%; + background: var(--code-background); } -.mk-icon-small, -.mk-icon-xsmall { +.mk-frame-code-section { display: flex; - align-items: center; + flex-direction: column; + align-items: flex-start; + padding: 8px; + font-size: 12px; + border-left: var(--nav-indentation-guide-width) solid var(--nav-indentation-guide-color); } -.mk-icon-xxsmall svg { - width: 10px; - height: 10px; - color: var(--text-muted); +.mk-frame-code-editor .\37c e { + color: var(--code-string); } -.mk-icon-xsmall svg { - width: 12px !important; - height: 12px !important; - color: var(--text-muted); +.mk-frame-code-section > span { + background: var(--background-modifier-active); + padding: 2px 4px; + border-radius: 4px; + font-size: 12px; } -.mk-icon-rotated svg { - transform: rotate(90deg); +.mk-frame-code-block { + width: 100%; + border-left: var(--nav-indentation-guide-width) solid var(--nav-indentation-guide-color); } -.mk-cell-link-item { - color: var(--link-color); +.mk-frame-code-block-prop { display: flex; + margin-left: 40px; + border-left: var(--nav-indentation-guide-width) solid var(--nav-indentation-guide-color); } -.mk-cell-option span { - flex-grow: 1; -} -.mk-cell-option-select { +.mk-frame-menu-container { display: flex; - align-items: center; + align-items: flex-start; + overflow: scroll; } -.mk-cell-option-new { - visibility: hidden; - background: rgba(var(--mono-rgb-100), 0.025); - padding: 2px; +.mk-frame-sidebar { + position: relative; display: flex; - border-radius: 4px; + flex-direction: column; + padding: 0 var(--size-4-3); + border-bottom: 1px solid var(--divider-color); } -.mk-cell-tags:hover .mk-cell-option-new, -.mk-cell-link:hover .mk-cell-option-new, -.mk-cell-context:hover .mk-cell-option-new, -.mk-cell-option:hover .mk-cell-option-new { - visibility: visible; +.mk-frame-node-info { + padding: 8px; } -.mk-cell-link-unresolved { - color: var(--link-unresolved-color); - opacity: var(--link-unresolved-opacity); - filter: var(--link-unresolved-filter); +.mk-frame-inspector { + display: flex; + overflow: scroll; + flex-direction: column; + flex: 1; + border-left: 1px solid var(--divider-color); } -.mk-cell-link-unresolved:hover { - color: var(--link-unresolved-color); - opacity: var(--link-unresolved-opacity); - filter: var(--link-unresolved-filter); +.mk-frame-row-placeholder { + width: 100%; + position: relative; + height: 40px; } - -/* src/css/FlowEditor.css */ -.mk-floweditor .workspace-leaf { - all: unset; +.mk-frame-row-placeholder > div:before { + content: attr(data-ph); + color: var(--text-faint); + position: absolute; } -.mk-floweditor.hover-editor .popover-content { - margin: 0; - border-radius: var(--he-popover-border-radius); - overflow: hidden; +.mk-frame-drop-placeholder { + position: absolute; + top: 0; + left: 0; } -.mk-floweditor.hover-editor .popover-content .workspace-split { +.mk-frame-column { display: none; -} -.mk-floweditor.hover-editor .workspace-leaf, -.mk-floweditor.hover-editor .workspace-split { - height: 100%; + position: absolute !important; width: 100%; + height: 100%; + z-index: var(--layer-popover); + border-left: var(--nav-indentation-guide-width) solid var(--nav-indentation-guide-color); } -.mk-floweditor .markdown-source-view.mod-cm6 .cm-editor { - min-height: auto; +.mk-frame-column-placeholder { + position: absolute; + right: -16px; + width: 16px; + bottom: 0; } -.mk-floweditor .embedded-backlinks, -.mk-floweditor .metadata-container { - display: none !important; +.mk-frame-layers { + position: relative; + max-height: 200px; + overflow: scroll; } -.mk-floweditor .workspace-leaf-content[data-type=canvas] .view-content { - min-height: 600px; - height: calc(100vh - 100px); +.mk-frame-layer > span { + flex: 1; } -.mk-flow-container .mk-floweditor .cm-content, -div:not(.mk-flowspace-editor) > .mk-floweditor .cm-content { - padding: 0 !important; +.mk-frame-row-placeholder.mk-indicator-bottom::before, +.mk-frame-drop-placeholder .mk-indicator-bottom::before { + position: absolute; + content: " "; + display: block; + width: 100%; + height: 2px; + bottom: 0; + border-radius: 1px; + background: var(--interactive-accent); } -.markdown-source-view.mod-cm6 .cm-content > .internal-embed { - contain: unset !important; +.mk-frame-column-placeholder.mk-indicator-right::before { + content: " "; + display: block; + height: 100%; + width: 2px; + border-radius: 1px; + background: var(--interactive-accent); } -.mk-toggle-on { - color: var(--interactive-accent); +.mk-frame-menu-bar { + display: flex; + flex-direction: column; + position: absolute; + overflow: scroll; + left: 40px; + height: 100px; + margin: 0 !important; } -.mk-floweditor .view-content { - background: none !important; +.mk-frame-menu-bar > div { + display: flex; } -.mk-floweditor-placeholder { - border: thin solid var(--divider-color); +.mk-frame-placeholder { + color: var(--text-faint); } -.mk-floweditor .mk-floweditor-title-container { +.mk-frame-text { + display: inline; + color: inherit; + font-size: var(--font-text-size); + font-weight: var(--font-normal); + color: var(--text-normal); + font-family: var(--font-text); +} +.mk-frame-text p { + display: inline; +} +.mk-frame-menu-bar div { + padding: 8px; +} +.mk-frame-menu { display: flex; + overflow: scroll; + flex-direction: column; + position: relative; } -.mk-floweditor-title { - padding: 8px 0px; - margin: 0; - margin-top: 8px; - border-top: 1px solid var(--background-modifier-hover); - width: 100%; +.mk-setter-group { display: flex; + flex-wrap: wrap; + align-items: center; } -.mk-floweditor-title:hover { - background: var(--background-modifier-hover); +.mk-setter-color { + border-radius: var(--input-radius); + border: var(--input-border-width) solid var(--background-modifier-border); } -.mk-floweditor-title div:not(.collapse) svg { - transform: rotate(0deg); +.mk-setter-group .mk-setter-slider { + flex: 1; } -.mk-floweditor-title .collapse svg { - transform: rotate(90deg); +.mk-setter-step input { + width: 40px; + padding-right: 0px; } -.mk-floweditor-title svg { - margin-left: 4px; - width: 10px; - height: 10px; +.mk-setter-step input[type=number]::-webkit-outer-spin-button, +.mk-setter-step input[type=number]::-webkit-inner-spin-button { + -webkit-appearance: inner-spin-button !important; +} +.mk-setter-text span, +.mk-setter-step span { + font-size: var(--font-ui-smaller); + padding: 4px; +} +.mk-frame-label { + position: absolute; + font-size: 9px; + background-color: var(--color-accent); + top: -10px; + left: 0; +} +.mk-frame-schema { + display: flex; + padding: 4px 8px; + font-size: var(--font-ui-small); +} +.mk-frame-layer { + margin-left: var(--spacing); + padding: 4px 8px; + font-size: var(--font-ui-small); + display: flex; +} +.mk-frame-layer.is-selected { + background-color: var(--nav-item-background-active); } -.mk-flow-hover { - margin-top: -34px; - margin-left: -34px; +.mk-frame-schema.is-selected { + background-color: var(--nav-item-background-active); } -.mk-flow-hover > div { +.mk-frame-sidebar-title { display: flex; - gap: 8px; - align-items: center; + padding: 4px 8px; + font-size: var(--font-ui-small); + font-weight: var(--bold-weight); + background: var(--background-primary-alt); } -.mk-flow-minimal .mk-floweditor-container:not(.mk-floweditor-fix) > .mk-floweditor { - padding: 8px; - border-radius: 4px; - border-left: thin solid var(--divider-color); +.mk-frame-text { + min-height: 40px; } -.mk-flow-minimal .markdown-embed-title, -.mk-flow-seamless .markdown-embed-title { - display: none; +.mk-frame-text[placeholder]:empty::before { + content: attr(placeholder); + color: var(--text-faint); } -.mk-foldernote > .mk-floweditor > .popover-content > .mk-flow-titlebar, -.mk-flow-minimal .mk-flow-titlebar, -.mk-flow-seamless .mk-flow-titlebar { - display: none; +.mk-frame-text[placeholder]:empty:focus::before { + content: ""; } -.mk-flow-classic .mk-flow-titlebar { - font-weight: var(--bold-weight); - text-align: left; - text-overflow: ellipsis; +.mk-button { + -webkit-app-region: no-drag; + display: inline-flex; + align-items: center; + justify-content: center; + color: var(--text-normal); + font-size: var(--font-ui-small); + border-radius: var(--button-radius); + border: 0; + padding: var(--size-4-1) var(--size-4-3); + height: var(--input-height); + font-weight: var(--input-font-weight); + cursor: var(--cursor); + font-family: inherit; + outline: none; + user-select: none; white-space: nowrap; - padding: var(--size-4-1) var(--context-padding); + background-color: var(--interactive-normal); + box-shadow: var(--input-shadow); } -.mk-flow-classic .mk-flow-titlebar:empty { - margin-bottom: 0 !important; - padding: 0 !important; +.mk-a { + color: var(--link-color); + outline: none; + text-decoration-line: var(--link-decoration); + text-decoration-thickness: var(--link-decoration-thickness); + cursor: var(--cursor-link); } -.mk-flow-classic .mk-floweditor-container:not(.mk-floweditor-fix) > .mk-floweditor { - font-style: var(--embed-font-style); - background-color: var(--embed-background); - border-top: var(--embed-border-top); - border-right: var(--embed-border-right); - border-bottom: var(--embed-border-bottom); - border-left: var(--embed-border-left); - padding: var(--embed-padding); +.mk-t-h1 { + --font-text-size: var(--h1-size); + --text-normal: var(--h1-color); + --font-normal: var(--h1-weight); } -.mk-flow-minimal .internal-embed > .markdown-embed, -.mk-flow-minimal .internal-embed.markdown-embed { - padding: 8px; - border-radius: 4px; - border: thin solid var(--divider-color); - margin-top: 4px; +.mk-t-h2 { + --font-text-size: var(--h2-size); + --text-normal: var(--h2-color); + --font-normal: var(--h2-weight); } -.mk-flow-seamless .internal-embed > .markdown-embed, -.mk-flow-seamless .internal-embed.markdown-embed { - margin-top: 4px; +.mk-t-h3 { + --font-text-size: var(--h3-size); + --text-normal: var(--h3-color); + --font-normal: var(--h3-weight); } -.mk-flow-classic .internal-embed > .markdown-embed, -.mk-flow-classic .internal-embed.markdown-embed { - margin-top: 24px; +.mk-t-h4 { + --font-text-size: var(--h4-size); + --text-normal: var(--h4-color); + --font-normal: var(--h4-weight); } -.internal-embed > .markdown-embed .markdown-rendered h1, -.internal-embed > .markdown-embed .markdown-rendered h2, -.internal-embed > .markdown-embed .markdown-rendered h3, -.internal-embed > .markdown-embed .markdown-rendered h4, -.internal-embed > .markdown-embed .markdown-rendered h5, -.internal-embed > .markdown-embed .markdown-rendered h6, -.internal-embed.markdown-embed .markdown-rendered h1, -.internal-embed.markdown-embed .markdown-rendered h2, -.internal-embed.markdown-embed .markdown-rendered h3, -.internal-embed.markdown-embed .markdown-rendered h4, -.internal-embed.markdown-embed .markdown-rendered h5, -.internal-embed.markdown-embed .markdown-rendered h6 { - margin: 0; +.mk-t-h5 { + --font-text-size: var(--h5-size); + --text-normal: var(--h5-color); + --font-normal: var(--h5-weight); } -.markdown-embed p { - margin-bottom: 24px; +.mk-t-p { } -.mk-flow-minimal .internal-embed > .markdown-embed, -.mk-flow-minimal .internal-embed > .markdown-embed, -.mk-flow-seamless .internal-embed.markdown-embed, -.mk-flow-seamless .internal-embed.markdown-embed { - margin-top: 24px; +.mk-content-placeholder { + width: 100%; + height: 100px; + background: var(--background-modifier-form-field); } -.mk-floweditor-container:not(.mk-floweditor-fix) > .mk-floweditor:hover { +.mk-masonry { + column-count: attr(columns); } -.mk-floweditor-container { - min-height: var(--flow-height); + +/* src/css/FrameProps.css */ +body:not(.is-mobile) .mk-frame-props-editor { } -.workspace-leaf > .workspace-leaf-content, -.workspace-leaf > .workspace-leaf-content > .view-content, -.workspace-leaf > .workspace-leaf-content > .view-content > .mod-cm6 > .cm-editor > .cm-scroller { +.mk-frame-props-editor { + display: flex; + position: absolute; + top: -40px; + padding: 0; + z-index: var(--layer-popover); + background: var(--background-primary); + max-height: unset; } -.mk-floweditor-container > .mk-floweditor { - border: thin solid transparent; +.is-mobile .mk-frame-props-editor svg { + width: 32px; + height: 32px; } -.mk-floweditor-container > .mk-floweditor:hover { - background: rgba(0, 0, 0, 0.04) !important; - border-left: thin solid var(--divider-color); +.is-mobile .mk-frame-props-editor { + --mobile-toolbar-height: 48px; + border-radius: 0; + width: 100%; + margin-top: 0; + overflow-x: auto; + justify-content: center; + height: var(--mobile-toolbar-height); + border-top: var(--divider-width) solid var(--divider-color); } -.mk-flow-minimal .mk-floweditor-container > .mk-floweditor:hover { - box-shadow: - 0px 1px 2px rgba(0, 0, 0, 0.06), - 0px 3.4px 6.7px rgba(0, 0, 0, 0.06), - 0px 15px 30px rgba(0, 0, 0, 0.15); +.mk-frame-props-editor .mk-mark { + margin: 4px; + padding: 4px; + border-radius: 4px; + display: flex; + font-size: var(--font-ui-small); + align-items: center; + gap: 4px; } -.mk-floweditor-container { - display: inline; +.mk-frame-props-editor .mk-mark:hover { + background: var(--background-modifier-hover); } -.cm-tooltip-hover { - margin-bottom: 30px; +.mk-frame-props-editor .mk-mark-active { + background: var(--background-modifier-hover); } -.mk-floweditor-fix > .mk-floweditor { - margin-top: -28px; +.mk-frame-props-editor svg { + color: var(--text-muted); + width: 16px; + height: 16px; } -.cm-tooltip { - border: none !important; - z-index: var(--layer-popover) !important; +.mk-divider { + border-left: thin solid var(--background-modifier-hover); + width: 1px; } -.cm-line:hover > .mk-floweditor-selector { - visibility: visible; +mark { + color: unset; + border-radius: 2px; + margin: 0px 2px; + padding: 0px 2px; } -.internal-embed.markdown-embed:hover .mk-floweditor-selector, -.internal-embed > .markdown-embed:hover .mk-floweditor-selector { - visibility: visible; + +/* src/css/InlineMenu.css */ +body:not(.is-mobile) .mk-style-menu { + margin-left: -80px; } -.mk-flow-classic .internal-embed > .markdown-embed > .mk-floweditor-selector, -.mk-flow-classic .internal-embed.markdown-embed > .mk-floweditor-selector { - top: 5px !important; +.mk-style-menu { + display: flex; + padding: 0; + margin-top: -50px; } -.mk-flow-minimal .internal-embed > .markdown-embed > .mk-floweditor-selector, -.mk-flow-minimal .internal-embed.markdown-embed > .mk-floweditor-selector, -.mk-flow-seamless .internal-embed > .markdown-embed > .mk-floweditor-selector, -.mk-flow-seamless .internal-embed.markdown-embed > .mk-floweditor-selector { - top: 8px; - right: -16px; +.is-mobile .mk-style-menu svg { + width: 32px; + height: 32px; } -.mk-flow-minimal .cm-line > .mk-floweditor-selector, -.mk-flow-seamless .cm-line > .mk-floweditor-selector { - top: 8px; - right: -16px; +.is-mobile .mk-style-menu { + --mobile-toolbar-height: 48px; + border-radius: 0; + width: 100%; + margin-top: 0; + overflow-x: auto; + justify-content: center; + height: var(--mobile-toolbar-height); + border-top: var(--divider-width) solid var(--divider-color); } -.mk-floweditor-selector { - position: absolute; - right: 0px; - top: 8px; - z-index: var(--layer-popover); +.mk-style-menu .mk-mark { + margin: 4px; + padding: 4px; + border-radius: 4px; display: flex; } -.mk-flowblock-menu { - border-radius: var(--radius-s); +.mk-mark div { display: flex; - font-size: var(--font-ui-smaller); - border: 1px solid var(--background-modifier-border); - background: var(--interactive-normal); - box-shadow: var(--input-shadow); } -.mk-hover-button { - padding: var(--size-4-1); - color: var(--text-muted); +.mk-style-menu .mk-mark:hover { + background: var(--background-modifier-hover); +} +.mk-style-menu .mk-mark-active { + background: var(--background-modifier-hover); } -.mk-flowblock-menu .mk-hover-button { - padding: var(--size-4-2); +.mk-style-menu svg { color: var(--text-muted); - border: none; - border-right: 1px solid var(--background-modifier-border); } -.mk-flowblock-menu .mk-hover-button:last-child { - border-right: none; +.mk-divider { + border-left: thin solid var(--background-modifier-hover); + width: 1px; } -.mk-flowblock-menu .mk-hover-button:hover { - background: var(--background-secondary-alt); +.mk-color { + width: 24px; + height: 24px; + border-radius: 12px; + margin: 8px; + border: thin solid var(--background-modifier-hover); } -.mk-floweditor > .workspace-leaf > .workspace-leaf-content > .view-content > .markdown-source-view.mod-cm6 > .cm-editor > .cm-scroller { - padding: 0; +.mk-color:hover { + opacity: 0.8; } -.mk-floweditor > .workspace-leaf > .workspace-leaf-content > .view-content > div > .mk-table { - padding-bottom: 10px !important; +mark { + color: unset; + border-radius: 2px; + margin: 0px 2px; + padding: 0px 2px; } -/* src/css/Frame.css */ -.mk-frame-view > div { -} -.mk-setter-code { +/* src/css/MainMenu.css */ +.mk-main-menu-container { display: flex; - border: var(--input-border-width) solid var(--background-modifier-border); - width: 120px; - overflow: hidden; + flex-direction: column; + margin: 6px; + gap: 4px; align-items: center; - border-radius: var(--input-radius); + margin-right: 10px; } -.mk-setter-code .mk-setter-code-value { - padding: 2px 4px; - background-color: var(--background-modifier-form-field); - height: 100%; +.mk-main-menu-inner { + display: flex; + width: 100%; + align-items: center; + gap: 8px; } -.mk-frame-code-block .cm-gutters { - padding-inline-end: 0 !important; +.mk-main-menu { + display: flex; + transition: all 0.2s ease; + align-items: center; + gap: 8px; + flex: 1; } -.mk-frame-code-add { - margin-left: 10px; +.mk-main-menu.mk-hidden { + transform: translateX(-100%); + opacity: 0; + pointer-events: none; } -.mk-frame-code-section > span { - margin-left: 10px; +.mk-main-menu-search { + transition: all 0.2s ease; + align-items: center; + gap: 8px; } -.mk-frame-view p { - margin-block-start: 0; - margin-block-end: 0; +.mk-main-menu-search.mk-hidden { + opacity: 0; + pointer-events: none; } -.mk-frame-row-placeholder:hover > .mk-frame-hover-menu-container, -.mk-f:hover > .mk-frame-hover-menu-container, -.mk-frame-hover-menu-container:hover { +.mk-main-menu-button { + padding: 8px 10px; + text-align: left; + border-radius: 4px; + align-items: center; display: flex; + gap: 4px; + justify-content: center; } -.mk-image-node { - width: 100%; +.mk-main-menu-search { + position: absolute; + display: flex; + width: calc(100% - 60px); } -.mk-f { - position: relative; +.mk-main-menu-search input { width: 100%; } -.mk-f.is-selected { - background: var(--background-modifier-active-hover); - border-radius: 4px; -} -.mk-frame-hover-menu-container { - position: absolute; - display: none; - left: -36px; - top: -6px; - padding: 6px; - z-index: var(--layer-popover); -} -.mk-frame-hover-menu-container .mk-hover-button:hover { +.mk-main-menu-icon { background: var(--nav-item-background-hover); - border-radius: 4px; + padding: 2px; + border-radius: 2px; + text-transform: uppercase; + width: 20px; + height: 20px; + font-size: 12px; + justify-content: center; + margin-right: 4px; } -.mk-frame-hover-props-editor { +.is-mobile .mk-main-menu-button { + font-size: var(--font-ui-medium); + font-weight: var(--font-medium); + gap: 4px; } -.mk-frame-hover-menu { - border-radius: var(--radius-s); +.mk-main-menu-button > div { display: flex; - flex-direction: column; - font-size: var(--font-ui-smaller); - background: var(--background-primary); -} -.mk-frame-bounds { - position: absolute !important; - width: 100%; - height: 100%; - z-index: var(--layer-popover); -} -.mk-frame-bounds.is-selected { - border: 2px solid var(--color-accent); } -.mk-frame-sidebar .mk-frame-selector { - flex-direction: column; - height: 200px; - overflow: scroll; +.mk-main-menu-button.mk-main-menu-button-primary { + flex-grow: 1; + line-height: 1; + justify-content: flex-start; } -.mk-frame-selector { - display: flex; +.mk-main-menu .mk-main-menu-sticker { + margin-right: 8px; } -.mk-space-scroller .mk-frame-selector { - flex-wrap: wrap; - margin-left: auto; - margin-right: auto; - margin-top: var(--file-margins); - width: 100%; - max-width: var(--file-line-width); +.mk-main-menu-button svg { + height: 16px; + width: 16px; } -.mk-space-scroller .mk-frame-selector > div { - width: 100px; - height: 80px; +body:not(.is-mobile) .mk-main-menu-button:hover { + background: var(--nav-item-background-hover); } -.mk-frame-editor { +.mk-menu-button { display: flex; - flex-direction: row; + padding-top: 0.5rem; + padding-bottom: 0.5rem; + padding-left: 0.5rem; + padding-right: 0.5rem; + font-size: 0.75rem; + line-height: 1.25rem; + align-items: center; width: 100%; - height: 100%; - flex: 1; + border-radius: 0.375rem; } -.mk-frame-main { - flex: 1; - display: flex; - flex-direction: column; - align-items: flex-start; +.mk-menu-button:hover { + background: var(--nav-item-background-hover); } -.mk-frame-main-tabs { - border-bottom: thin solid var(--divider-color); +.mk-main-menu-container .mk-query { width: 100%; } -.mk-frame-main-tabs button { - background: rgba(var(--nav-item-background-active), 0.3); - border: none; - box-shadow: none; - color: var(--text-faint); -} -.mk-frame-builder { - display: flex; - flex-direction: row; - flex-wrap: wrap; - gap: 2px; -} -.mk-frame-builder > div { - width: 74px; + +/* src/css/MakeMenu.css */ +.mk-slash-item { display: flex; - flex-direction: column; align-items: center; - background: var(--background-primary); - padding: 8px; -} -.mk-frame-builder-icon svg { - width: 24px; - height: 24px; - color: var(--text-muted); -} -.mk-frame-canvas { - background: var(--background-secondary); - display: flex; - flex-direction: column; - flex: 1; - padding: 12px; - width: 100%; - gap: 16px; -} -.mk-cell-code.markdown-source-view.mod-cm6 .cm-content { - white-space: pre-wrap; } -.mk-cell-code .cm-editor { - min-height: inherit !important; -} -.mk-frame-props { +.mk-slash-icon { display: flex; - flex-direction: column; + margin-right: 8px; } -.mk-frame-canvas-editor { - background: var(--background-primary); - max-width: var(--file-line-width); - min-height: 100px; - box-shadow: var(--shadow-s); +.mk-slash-icon svg { + width: 16px; + height: 16px; } -.mk-frame-canvas-editor p { - margin-block-start: 0; - margin-block-end: 0; - margin-inline-start: 0px; - margin-inline-end: 0px; +.cm-active.mk-placeholder:before { + content: attr(data-ph); + color: var(--text-faint); + position: absolute; } -.mk-frame-container { - flex: 1; - height: 100%; + +/* src/css/Menu.css */ +.mk-suggestion { display: flex; - justify-content: center; - position: relative; - border-top: 1px solid var(--divider-color); + flex-direction: column; } -.mk-cell-code { - font-family: var(--font-monospace); +.mk-menu { + padding: 0; } -.mk-frame-code-editor { - width: 100%; - height: 100%; - background: var(--code-background); +.mk-menu .menu-item { + padding: 0; + background-color: unset !important; + gap: 0; } -.mk-frame-code-section { +.menu-item-title { display: flex; - flex-direction: column; - align-items: flex-start; - padding: 8px; - font-size: 12px; - border-left: var(--nav-indentation-guide-width) solid var(--nav-indentation-guide-color); + justify-content: space-between; + align-items: center; } -.mk-frame-code-editor .\37c e { - color: var(--code-string); +.mk-menu-input.selected { + background-color: unset !important; } -.mk-frame-code-section > span { - background: var(--background-modifier-active); - padding: 2px 4px; +.mk-menu-input input { + padding: 4px; + border: 0; + outline: 0; border-radius: 4px; - font-size: 12px; } -.mk-frame-code-block { +.is-phone .mk-options-container { width: 100%; - border-left: var(--nav-indentation-guide-width) solid var(--nav-indentation-guide-color); } -.mk-frame-code-block-prop { - display: flex; - margin-left: 40px; - border-left: var(--nav-indentation-guide-width) solid var(--nav-indentation-guide-color); +.is-phone .mk-options-menu { + width: 100%; } -.mk-frame-menu-container { - display: flex; - align-items: flex-start; - overflow: scroll; +.menu-item-title input[type=text] { + flex: 1; } -.mk-frame-sidebar { +.mk-options-menu { position: relative; + width: 240px; + font-size: 1em; + line-height: 1.2; display: flex; - flex-direction: column; - padding: 0 var(--size-4-3); - border-bottom: 1px solid var(--divider-color); -} -.mk-frame-node-info { - padding: 8px; + flex-wrap: wrap; + cursor: text; } -.mk-frame-inspector { +.mk-options-menu-sections { display: flex; - overflow: scroll; - flex-direction: column; - flex: 1; - border-left: 1px solid var(--divider-color); -} -.mk-frame-row-placeholder { + padding: 6px 8px; width: 100%; - position: relative; - height: 40px; + gap: 8px; } -.mk-frame-row-placeholder > div:before { - content: attr(data-ph); - color: var(--text-faint); - position: absolute; +.mk-options-menu-section { + background: var(--background-primary); + padding: 4px 6px; + border-radius: 4px; } -.mk-frame-drop-placeholder { - position: absolute; - top: 0; - left: 0; +.mk-options-menu-section.is-active { + background: var(--interactive-accent); + color: var(--text-on-accent); } -.mk-frame-column { - display: none; - position: absolute !important; +.mk-options-menu__selected-tag { + display: inline-block; + box-sizing: border-box; + margin: 0 6px 6px 0; + padding: 6px 8px; + border-radius: 2px; + box-shadow: unset !important; + font-size: inherit; + line-height: inherit; +} +.mk-options-menu__selected-tag:after { + content: "\2715"; + color: #aaa; + margin-left: 8px; +} +.mk-options-menu__selected-tag:hover, +.mk-options-menu__selected-tag:focus { + border-color: #b1b1b1; +} +.mk-options-menu__selected { width: 100%; - height: 100%; - z-index: var(--layer-popover); - border-left: var(--nav-indentation-guide-width) solid var(--nav-indentation-guide-color); + display: inline-block; + white-space: normal; + padding: 0px 10px; + margin-top: 4px; + border-bottom: thin solid var(--divider-color); } -.mk-frame-column-placeholder { - position: absolute; - right: -16px; - width: 16px; - bottom: 0; +.mk-options-menu__search { + display: inline-block; + padding: 7px 2px; + max-width: 100%; + width: 100%; } -.mk-frame-layers { - position: relative; - max-height: 200px; - overflow: scroll; +@media screen and (min-width: 30em) { + .mk-options-menu__search { + position: relative; + } } -.mk-frame-layer > span { - flex: 1; +.mk-options-menu__search-input { + max-width: 100%; + background: unset !important; + margin: 0; + padding: 0; + border: 0; + outline: none; + font-size: inherit; + line-height: inherit; } -.mk-frame-row-placeholder.mk-indicator-bottom::before, -.mk-frame-drop-placeholder .mk-indicator-bottom::before { - position: absolute; - content: " "; - display: block; +.mk-options-menu__search-input::-ms-clear { + display: none; +} +.mk-options-menu__suggestions { width: 100%; - height: 2px; - bottom: 0; - border-radius: 1px; - background: var(--interactive-accent); + max-height: 200px; + overflow: auto; } -.mk-frame-column-placeholder.mk-indicator-right::before { - content: " "; - display: block; - height: 100%; - width: 2px; - border-radius: 1px; - background: var(--interactive-accent); +.mk-options-menu__suggestions ul { + margin: 4px -1px; + padding: 0; + list-style: none; } -.mk-frame-menu-bar { +.is-phone .mk-options-menu__suggestions li { + padding: var(--size-4-3) var(--size-4-3); +} +.mk-options-menu__suggestions li { + margin: 0px 6px; + padding: 6px 8px; + border-radius: var(--radius-s); display: flex; - flex-direction: column; - position: absolute; - overflow: scroll; - left: 40px; - height: 100px; - margin: 0 !important; + flex-direction: row; + align-items: center; + gap: 6px; } -.mk-frame-menu-bar > div { +.mk-options-menu__suggestions li .mk-options-menu-inner { + flex: 1; display: flex; + flex-direction: column; + overflow: hidden; } -.mk-frame-placeholder { +.mk-options-menu__suggestions li .mk-description { color: var(--text-faint); + font-size: var(--font-ui-smaller); + text-overflow: ellipsis; + white-space: nowrap; + overflow: hidden; } -.mk-frame-text { - display: inline; - color: inherit; - font-size: var(--font-text-size); - font-weight: var(--font-normal); - color: var(--text-normal); - font-family: var(--font-text); +.mk-options-menu__suggestions li span { + overflow: hidden; + text-overflow: ellipsis; + white-space: nowrap; +} +.mk-options-menu__suggestions li mark { + text-decoration: underline; + background: none; + font-weight: 600; + border-radius: unset; + margin: unset; + padding: unset; +} +.mk-options-menu__suggestions li:hover { + cursor: pointer; + background: var(--background-modifier-hover); +} +.mk-options-menu__suggestions li.is-active { + background: var(--background-modifier-hover); +} +.mk-options-menu__suggestions li.is-disabled { + opacity: 0.5; + cursor: auto; +} +.rdp button { + background: initial !important; + box-shadow: initial !important; +} +.rdp .rdp-day_selected { + background: var(--interactive-accent) !important; +} +.rdp { + --rdp-cell-size: 30px !important; +} +.mk-properties { + padding: 0 !important; + gap: 0 !important; + background: none !important; } -.mk-frame-text p { - display: inline; +.mk-properties > .menu-item-title > div { + width: 100%; } -.mk-frame-menu-bar div { - padding: 8px; +.mk-properties .menu-item span:first-child { + flex-grow: 1; } -.mk-frame-menu { - display: flex; - overflow: scroll; - flex-direction: column; - position: relative; +.mk-properties .menu-item span:last-child { + color: var(--text-muted); } -.mk-setter-group { + +/* src/css/NewNote.css */ +.mk-new-note { + flex-grow: 1; + padding: 8px 12px; + font-size: var(--font-ui-smaller); display: flex; - flex-wrap: wrap; align-items: center; } -.mk-setter-color { - border-radius: var(--input-radius); - border: var(--input-border-width) solid var(--background-modifier-border); -} -.mk-setter-group .mk-setter-slider { +.tag-container { flex: 1; } -.mk-setter-step input { - width: 40px; - padding-right: 0px; -} -.mk-setter-step input[type=number]::-webkit-outer-spin-button, -.mk-setter-step input[type=number]::-webkit-inner-spin-button { - -webkit-appearance: inner-spin-button !important; -} -.mk-setter-text span, -.mk-setter-step span { - font-size: var(--font-ui-smaller); - padding: 4px; +.mk-button-blink { + padding: 8px 12px !important; } -.mk-frame-label { - position: absolute; - font-size: 9px; - background-color: var(--color-accent); - top: -10px; - left: 0; +.mk-new-note p { + margin: 0; + margin-left: 8px; + padding: 0; } -.mk-frame-schema { - display: flex; - padding: 4px 8px; - font-size: var(--font-ui-small); +.mk-new-note svg { + width: 16px; + height: 16px; } -.mk-frame-layer { - margin-left: var(--spacing); - padding: 4px 8px; - font-size: var(--font-ui-small); +.mk-search { display: flex; + padding: 8px 8px; + margin: 4px 12px; + margin-left: 0px; } -.mk-frame-layer.is-selected { - background-color: var(--nav-item-background-active); -} -.mk-frame-schema.is-selected { - background-color: var(--nav-item-background-active); +.mk-search svg { + width: 16px; + height: 16px; } -.mk-frame-sidebar-title { +.mk-waypoint { display: flex; - padding: 4px 8px; - font-size: var(--font-ui-small); - font-weight: var(--bold-weight); - background: var(--background-primary-alt); -} -.mk-frame-text { - min-height: 40px; } -.mk-frame-text[placeholder]:empty::before { - content: attr(placeholder); - color: var(--text-faint); +.mk-waypoint-new { + display: flex; + align-items: center; + color: var(--text-muted); + opacity: .5; } -.mk-frame-text[placeholder]:empty:focus::before { - content: ""; +.mk-waypoint-new:hover { + opacity: 1; } -.mk-button { - -webkit-app-region: no-drag; - display: inline-flex; - align-items: center; +.mk-waypoint .mk-waypoints-item { + display: flex; justify-content: center; - color: var(--text-normal); - font-size: var(--font-ui-small); - border-radius: var(--button-radius); - border: 0; - padding: var(--size-4-1) var(--size-4-3); - height: var(--input-height); - font-weight: var(--input-font-weight); - cursor: var(--cursor); - font-family: inherit; - outline: none; - user-select: none; - white-space: nowrap; - background-color: var(--interactive-normal); +} +.is-mobile .mk-waypoints { + background: var(--background-primary); + border-top: thin solid var(--divider-color); box-shadow: var(--input-shadow); } -.mk-a { - color: var(--link-color); - outline: none; - text-decoration-line: var(--link-decoration); - text-decoration-thickness: var(--link-decoration-thickness); - cursor: var(--cursor-link); +.is-mobile .mk-waypoints > div { + gap: 8px; } -.mk-t-h1 { - --font-text-size: var(--h1-size); - --text-normal: var(--h1-color); - --font-normal: var(--h1-weight); +.mk-waypoints { + display: flex; + overflow: auto; + padding: var(--size-4-3) var(--size-4-3) var(--size-4-1) var(--size-4-3); } -.mk-t-h2 { - --font-text-size: var(--h2-size); - --text-normal: var(--h2-color); - --font-normal: var(--h2-weight); +.mk-sidebar-expanded { + flex-grow: 1; } -.mk-t-h3 { - --font-text-size: var(--h3-size); - --text-normal: var(--h3-color); - --font-normal: var(--h3-weight); +.mk-waypoint:hover .mk-waypoints-item:not(.mk-active) { + background: var(--nav-item-background-hover); } -.mk-t-h4 { - --font-text-size: var(--h4-size); - --text-normal: var(--h4-color); - --font-normal: var(--h4-weight); +.mk-waypoints-item { + color: var(--text-muted); + height: 30px; + min-width: 30px; + padding: 6px; + border-radius: 15px; + display: flex; + align-items: center; + gap: 4px; + text-align: center; + font-size: var(--font-ui-normal); + color: var(--icon-color); + transition: transform 250ms ease; } -.mk-t-h5 { - --font-text-size: var(--h5-size); - --text-normal: var(--h5-color); - --font-normal: var(--h5-weight); +.is-mobile .mk-waypoints-item { + width: 40px; + height: 40px; + border-radius: 20px; } -.mk-t-p { +.mk-waypoints-item.mk-active { + --label-color: var(--background-modifier-active-hover); + color: var(--text-n); + background-color: var(--label-color); + opacity: 1; } -/* src/css/FileContext.css */ -.mk-file-context { +/* src/css/Sidebar.css */ +.workspace .mod-root .workspace-tab-header[data-type=markdown] .workspace-tab-header-inner-icon { display: flex; - flex-direction: column; - --file-context-spacing: 4px; - height: 100%; - padding: var(--size-4-2) var(--size-4-1); - gap: 4px; -} -.mk-file-context-header { - height: var(--mk-header-height); - border-bottom: var(--divider-color); - background-color: var(--background-primary); - z-index: 1; - position: relative; - gap: var(--size-4-2); - padding: 0 var(--size-4-3); } -.mk-file-context-file .mk-file-icon button { - --label-color:var(--background-secondary) ; +.workspace .mod-root .workspace-tab-header[data-type=markdown] .workspace-tab-header-inner-icon svg { + width: 18px; + height: 18px; } -.mk-file-context-file { +.mk-tree-wrapper { + box-sizing: border-box; + margin-bottom: 1px; display: flex; - width: 100%; - flex-direction: column; - align-items: flex-start; - gap: 8px; + align-items: center !important; + padding: 0 6px; position: relative; + height: var(--spaceRowHeight); + gap: 4px; } -.mk-header .mk-file-context-file.mk-file-context-file-horizontal { - gap: 12px; -} -.mk-file-context-file.mk-file-context-file-horizontal { - flex-direction: row; - align-items: center; -} -.markdown-source-view.mod-cm6 .cm-content .mk-header { - padding-inline-start: 0 !important; - text-indent: 0 !important; -} -.mk-space-header .mk-file-icon-placeholder button, -.mk-inline-context .mk-file-context-component .mk-file-icon-placeholder button { - background: var(--label-color); - border-radius: 8px; - padding: 8px !important; -} -.mod-right-split .mk-header { - display: none; -} -.mod-left-split .mk-header { - display: none; -} -.markdown-reading-view .mk-file-context-file > .mk-inline-title.inline-title, -.markdown-source-view.mod-cm6.mod-cm6.is-readable-line-width .mk-file-context-file > .mk-inline-title.inline-title { - padding-bottom: 0; - margin-left: 0 !important; - margin-top: 0; - padding-top: 0 !important; - margin-bottom: 0; - width: auto; +.nav-file { + overflow-y: inherit !important; } -.mk-inline-title { - margin-bottom: 0; +.is-mobile .mk-tree-wrapper { + padding-top: 6px; + padding-bottom: 6px; } -.mk-file-context-component .mk-tag-selector { - margin-top: 0px; - margin-bottom: 0; - padding: 0; +.is-mobile .mk-tree-wrapper > div { } -.mk-file-context-component { - display: flex; - flex-direction: column; - gap: 8px; - align-items: flex-start; +.is-mobile .mk-tree-wrapper > .mk-section { + padding-left: 4px; } -.mk-file-context-properties { +.mk-tree-wrapper > div { display: flex; - flex-direction: column; - align-items: flex-start; - gap: 4px; + width: 100%; + transition: transform .2s ease; } -.mk-file-context-properties:empty { - display: none; +.mk-waypoints { + position: relative; } -.mk-file-context-section:empty { - display: none; +.mk-waypoints > .mk-indicator { + border-radius: 8px; + outline: 2px solid var(--interactive-accent); } -.mk-file-context-section { - display: flex; - flex-direction: column; - gap: 4px; +.mk-waypoints > .mk-waypoints-item { + transition: transform .2s ease; } -.mk-file-context-section button { - background: none; - border: none; +.mk-tree-wrapper > .mk-indicator-top::before { + content: " "; + display: block; + position: absolute; + height: 2px; + border-radius: 1px; + background: var(--interactive-accent); + width: calc(100% - var(--spacing)); + left: var(--spacing); + top: 0%; +} +.mk-folder-lines .mk-tree-item::before { + display: block; + content: " "; + width: 1px; + height: var(--childrenCount); + border-left: var(--nav-indentation-guide-width) solid var(--nav-indentation-guide-color); + position: absolute; + top: 34px; + left: 13px; +} +.mk-tree-wrapper .mk-indicator-row { + border-radius: 8px; + outline: 2px solid var(--interactive-accent); +} +.mk-tree-wrapper.mk-clone { + display: inline-block; + pointer-events: none; padding: 0; - margin: 0; - color: var(--text-faint); - font-size: var(--font-ui-small); - font-weight: 500; - text-align: left; - cursor: pointer; - display: flex; - align-items: center; - gap: 4px; + padding-left: 10px; + padding-top: 5px; } -.mk-file-context-row { - display: flex; - align-items: flex-start; - gap: 2px; +.mk-tree-wrapper.mk-clone.mk-tree-item { + --vertical-padding: 5px; + padding-right: 24px; + box-shadow: 0px 15px 15px 0 rgba(34, 33, 81, 0.1); } -.mk-file-context-row .mk-collapse { - width: 24px !important; - height: 24px !important; +.mk-tree-wrapper.mk-ghost { + opacity: 0.5; } -.mk-file-context-row .mk-cell-option { - width: unset; - align-items: flex-start; - padding: 2px 4px; +.mk-nav-button { } -.mk-file-context-field-new { - font-size: var(--font-ui-small); +.mk-tree-item { + margin-left: var(--spacing) !important; + flex-direction: row !important; + --vertical-padding: 2px; + flex-grow: 1; + position: relative; display: flex; - align-items: center; - gap: 10px; + align-items: center !important; + padding: var(--vertical-padding) 2px; + min-width: 0; + margin-right: 4px; } -.mk-file-context-field-key { - padding: var(--size-4-1); - display: inline-block; - text-overflow: ellipsis; - white-space: nowrap; - overflow: hidden; +.is-mobile .mk-tree-item { + height: 38px; } -.mk-file-context-field-space { - display: flex; - justify-content: center; - min-width: 18px; - height: 18px; - color: var(--tag-color); - border-radius: var(--tag-radius); - border: var(--tag-border-width) solid var(--tag-border-color); - opacity: 0.4; +.is-mobile .mk-tree-item:hover { + background-color: unset !important; } -.mk-file-context-field-space:hover { - opacity: 1; +.workspace-leaf:not(.mod-active) .is-selected { + background: var(--nav-item-background-active) !important; } -.mk-file-context-field-icon { - min-width: 18px; - height: 18px; - display: flex; +.workspace-leaf.mod-active .is-highlighted { + background: var(--nav-item-background-active) !important; +} +.is-phone .mk-inline-button { + width: unset !important; +} +.is-tablet .mk-inline-button { + padding: unset !important; +} +.mk-inline-button { + display: inline-flex; align-items: center; - text-align: center; justify-content: center; + padding: 4px; + border-radius: var(--clickable-icon-radius); + box-shadow: unset !important; } -.mk-file-context-field-new:hover, -.mk-file-context-field-new button:hover svg { - color: var(--text-normal) !important; -} -.mk-file-context-field-new button { - background: none !important; - box-shadow: none !important; - color: var(--text-faint) !important; - padding: 0 4px !important; - display: flex; - gap: 4px; - height: 20px; - border: none !important; +.mk-inline-button:not(:hover) { + background: unset !important; } -.mk-file-context-field-new button svg { - color: var(--text-faint) !important; +.mk-inline-button, +.mk-tree-wrapper button { + background: none; + border: 0; + box-shadow: none; + margin: 0; + height: 24px; + width: 24px; + padding: 0 !important; } -.mk-file-context-field-new button:hover { - color: var(--text-normal) !important; +.is-mobile .mk-tree-wrapper .mk-folder-buttons button { + margin-left: 8px; } -.mk-file-context-field { - max-width: 140px; - min-width: 140px; - font-size: var(--font-ui-small); - color: var(--text-faint); - min-height: 24px; - display: flex; - border-radius: 4px; - align-items: center; +body:not(.is-mobile) .mk-tree-wrapper button:hover { + background: var(--nav-item-background-hover); } -.mk-bullet { - min-height: 24px; - display: flex; - align-items: center; - padding: 8px 5px; +.mk-file-icon { + width: 24px; + height: 24px; + font-family: emoji; } -.mk-bullet::after { - display: block; - content: " "; - width: 5px; - height: 5px; - border-radius: 50%; - background-color: var(--bullet-color); - transition: transform 75ms ease-out; +.mk-file-icon svg { + width: 16px; + height: 16px; + color: var(--icon-color) !important; } -.mk-file-context .mk-cell-text { - background: var(--interactive-hover) !important; +.mk-file-icon button { + background: var(--label-color); + border: 0; + box-shadow: none; + margin: 2px; + height: 20px; + width: 20px; + padding: 0 !important; } -.mk-file-context .mk-file-context-row { - flex-wrap: wrap; +.is-mobile .mk-file-icon { + width: unset; } -.mk-file-context-value { - font-size: var(--font-ui-small); - flex-grow: 1; - display: flex; - align-items: center; - min-height: 24px; +body:not(.is-mobile) .mk-tree-wrapper .mk-drag-handle { + visibility: hidden; + margin-right: 4px; } -.mk-file-context-field:hover { - color: var(--text-normal); +body:not(.is-mobile) .mk-tree-wrapper:hover .mk-drag-handle { + visibility: visible; } -.mk-file-context-value .mk-cell-text:hover { - background: var(--interactive-hover) !important; - border-radius: 4px; +.is-mobile .mk-folder-buttons { + display: flex; } -.mk-file-context-value .mk-cell-option-new { - visibility: visible !important; +body:not(.is-mobile) .mk-tree-wrapper .mk-file-link { + opacity: 0; } -.mk-file-context-value input[type=text], -.mk-file-context-value input[type=number] { - width: 130px; - border: none; - border-radius: 0px; - height: 24px; +body:not(.is-mobile) .mk-tree-wrapper:hover .mk-file-link { + opacity: 1; } -.mk-file-context-value input[type=text]:focus, -.mk-file-context-value input[type=number]:focus { - box-shadow: none !important; +body:not(.is-mobile) .mk-tree-wrapper .mk-folder-buttons button { + display: none; } -c .mk-section-title, -.mk-file-context-title, -.mk-file-context-subtitle { - font-size: var(--font-ui-small); - font-weight: var(--bold-weight); - color: var(--text-muted); +body:not(.is-mobile) .mk-tree-wrapper:hover .mk-folder-buttons button { + display: flex; } -.mk-file-context-title { +body:not(.is-mobile) .mk-tree-wrapper .mk-folder-buttons { display: flex; - align-items: center; - height: 32px; - gap: 4px; - position: relative; } -.mk-file-context-title:hover { - color: var(--text-normal); +.mk-tree-item svg { + width: 16px; + height: 16px; + color: var(--text-muted); } -.mk-file-context-title .mk-inline-button svg { +.is-mobile .mk-tree-wrapper svg { color: var(--text-faint); } -.mk-file-context-title .mk-collapse:hover { - background: none !important; +.is-mobile .mk-tree-wrapper .mk-file-icon svg { + width: 18px; + height: 18px; + color: var(--text-faint); } -.mk-file-context-title .mk-collapse { - position: absolute; - left: -25px; - width: 10px; +.mk-tree-text { + padding: 0.15rem 4px; + white-space: nowrap; + text-overflow: ellipsis; + overflow: hidden; + font-size: var(--font-ui-small); + flex-grow: 1 !important; +} +.mk-file-link { + vertical-align: middle; +} +.mk-file-link svg { + width: 12px; height: 10px; + transform: rotate(45deg); } -.mk-file-context-title .mk-collapse svg { - margin: 0 !important; +.mk-disable-interaction { + pointer-events: none; } -.mk-file-context-folder { +.mk-disable-selection, +.mk-clone .mk-tree-text { + user-select: none; + -webkit-user-select: none; +} +.workspace-leaf-content[data-type=mk-file-view] > .view-content { padding: 0 !important; - color: var(--color-accent-1); +} +.mk-collapse { + min-width: 16px !important; + width: 16px !important; + height: 16px !important; + opacity: 0.4; +} +.mk-collapse:hover { background: none !important; - box-shadow: none !important; - height: unset !important; + opacity: 1; } -.mk-file-context .mk-tag-selector { - padding: 0 !important; +.mk-collapse svg { + transform: rotate(90deg); + transition: transform 250ms ease; + width: 12px; + height: 12px; + margin: 2px; } -.mk-space-icon { - display: flex; - padding-right: 2px; +.mk-collapse.mk-collapsed svg { + transform: rotate(0deg); } -.mk-file-context-backlink { - background: var(--background-primary); - padding: 8px; +.mk-collapse.mk-collapsed-plus svg { + transform: rotate(45deg); } -.mk-file-context-backlink .cm-content { - padding-bottom: 0 !important; +.mk-is-active:not(.clone) { + color: var(--nav-item-color-active); + background: var(--nav-item-background-active); } -.mk-space-gallery-container { - width: 100%; - height: 100vh; - position: relative; +body:not(.is-mobile) .mk-tree-wrapper:not(.mk-section-wrapper):not(.mk-disable-interaction):hover { } -.mk-space-gallery-controls { - font-size: var(--font-ui-small); - position: absolute; - display: flex; - align-items: center; - gap: 10px; - z-index: 100; +.mk-icon-menu { + transform: translate3d(-500px, 0px, 0px); + z-index: var(--layer-menu); } -.mk-space-gallery-controls:hover { - color: var(--text-normal); +.mk-icon-menu .menu { + position: static !important; + padding: 0 !important; } -.mk-space-scroller > .mk-spacer { - min-height: var(--mk-header-height); +.mk-tree-empty { + padding-left: var(--spacing); + padding-top: 4px; + padding-bottom: 4px; + font-size: var(--font-ui-small); + color: var(--text-faint); } -.mk-space-gallery-controls button { - background: none !important; - box-shadow: none !important; - color: var(--text-faint) !important; - padding: 0 4px !important; + +/* src/css/SpaceEditor.css */ +.mk-space-editor { display: flex; - gap: 4px; - height: 20px; - border: none !important; + flex-direction: column; + margin-bottom: 20px; + gap: 24px; + flex: 1; + overflow-y: scroll; } -.mk-space-gallery-controls button svg { - color: var(--text-faint) !important; +.mk-space-editor-appearance .mk-file-icon, +.mk-space-editor-appearance .mk-file-icon button, +.mk-space-editor-appearance .mk-file-icon svg { + width: 48px; + height: 48px; + font-size: 36px; } -.mk-space-gallery-controls button:hover { - color: var(--text-normal) !important; +.mk-space-editor-appearance .mk-file-icon svg { + padding: 6px; } -.mk-space-gallery { - position: fixed; - width: 100%; +.mk-space-query { + display: flex; + flex-direction: column; height: 100%; } -.mk-note-header { - position: absolute; - top: 0; - left: 0; - right: 0; - width: 100%; - user-select: none; - height: 200px; -} -.mk-note-header img { - height: 200px; - width: 100%; - object-fit: cover; - opacity: 1 !important; +.mk-space-editor-title { + font-size: var(--font-ui-large); + font-weight: var(--font-semibold); + line-height: var(--line-height-tight); + padding: var(--size-4-2) var(--size-4-1); + display: flex; + gap: 8px; } -.mk-fold { - opacity: 1; - position: absolute; - left: -24px; - bottom: 4px; - opacity: 0; +.mk-space-editor-title span { + flex: 1; } -.mk-smart-note-title { - width: 100%; +.mk-space-editor-contents { display: flex; flex-direction: column; + gap: 4px; +} +.mk-space-editor-controls { + display: flex; justify-content: space-between; } -.mk-file-context-file-horizontal .mk-fold { - bottom: 8px; +.mk-space-editor-link { + display: flex; + padding: 8px; + font-size: var(--font-ui-small); + color: var(--text-muted); + gap: 6px; + align-items: center; + background: var(--background-modifier-cover); + border-radius: 6px; } -.markdown-source-view:not(.is-live-preview) > .cm-editor > .cm-scroller > .cm-sizer > .mk-inline-context { - display: none; +.mk-space-editor-link span { + flex: 1; } -.mk-inline-context { - gap: 8px; - display: flex; - flex-direction: column; - border-top: none !important; - margin-bottom: 8px; +.mk-space-editor-contents .mk-query { + background: var(--background-modifier-cover); + margin-left: 8px; } -.mk-inline-context .mk-fold.mk-collapsed { - opacity: 1; - color: var(--collapse-icon-color-collapsed); +.mk-space-editor-contents .mk-query-group-type { + width: 24px; + padding: 4px; } -.mk-inline-context .mk-fold.mk-collapsed svg { - color: var(--collapse-icon-color-collapsed); +.mk-space-editor-appearance { + display: flex; + width: 100%; + gap: 16px; + align-items: center; } -.mk-inline-context:hover .mk-fold { - opacity: 1 !important; +.mk-space-editor-input input { + font-weight: var(--inline-title-weight); + font-size: var(--inline-title-size); + line-height: var(--inline-title-line-height); + font-style: var(--inline-title-style); + font-variant: var(--inline-title-variant); + font-family: var(--inline-title-font); + color: var(--inline-title-color); + background: none; + outline: none; + border: none; } -.markdown-source-view.mod-cm6 .cm-content > .cm-line.mk-has-banner { + +/* src/css/SpaceView.css */ +.mk-space-scroller { + display: flex !important; + flex-direction: column; + align-items: flex-start !important; + line-height: 1.4; + height: 100%; + overflow-x: auto; + position: relative; + z-index: 0; + padding-bottom: 0; } -.markdown-source-view.mod-cm6 .mk-has-backlinks img.cm-widgetBuffer { - display: none !important; +.mk-context-selector { + font-size: var(--font-ui-small); + --tag-background: var(--background-secondary); + position: relative; + display: flex; } -.mk-inline-context .mk-file-context-component { - gap: 8px; +.mk-context-selector-menu { } -.markdown-source-view.mod-cm6 .cm-content .mk-note-footer { - margin: 16px 0 !important; - padding-top: 16px; - border-top: thin solid var(--divider-color); +.mk-context-header { + margin: var(--file-margins); + margin-bottom: 0; } -.mk-header .mk-file-context-component div { - pointer-events: all; +.mk-title-container { + display: flex; + align-items: center; + gap: 4px; } -.mk-inline-context-enabled .markdown-source-view.is-live-preview > .cm-editor > .cm-scroller > .cm-sizer > .inline-title { - display: none; +.mk-title-container .mk-title-prefix { + display: flex; + font-size: var(--inline-title-size); + font-weight: var(--inline-title-weight); } -.mk-note-header .inline-title { - display: flex !important; - margin-bottom: 0; +.mk-title-container span { + flex: 1; } -.mk-header-title { +.mk-context-header { + display: flex; + flex-direction: column; max-width: var(--file-line-width); - padding: 0 var(--file-margins); + width: 100%; +} +.markdown-source-view.mod-cm6.is-readable-line-width .mk-space-outer { + padding: var(--file-margins); + max-width: 100%; + width: 100%; margin-left: auto; margin-right: auto; - margin-top: 20px; } -.mk-header-title.mk-header-has-banner { - margin-top: -34px; +.mk-space-title { + position: relative; } -.workspace-leaf-content[data-type=mk-frame-editor] .view-content, -.workspace-leaf-content[data-type=mk-space] .view-content, -.workspace-leaf-content[data-type=make-context-view] .view-content, -.workspace-leaf-content[data-type=make-file-view] .view-content { - padding: 0; +.mk-space-header { + margin-left: auto; + margin-right: auto; + margin-bottom: 16px; + width: 100%; + max-width: var(--file-line-width); } -.markdown-source-view.mod-cm6 .cm-content > .mk-header { - --mk-header-height: 0px; - gap: 16px; +body:not(.is-mobile) .markdown-source-view.mod-cm6.is-readable-line-width .mk-space-header .inline-title { + flex-grow: 1; + margin-bottom: 0; + margin-left: 0 !important; + margin-right: 0; + width: inherit; + max-width: inherit; +} +.mk-space-sizer { display: flex; flex-direction: column; - font-size: var(--font-ui-medium); - contain: unset !important; - position: inherit; -} -.mk-inline-context-enabled .markdown-reading-view .mod-header > .inline-title, -.mk-inline-context-enabled .markdown-reading-view .frontmatter, -.mk-inline-context-enabled .markdown-reading-view .frontmatter-container { - display: none; + align-items: stretch; + margin-left: auto; + margin-right: auto; } -.mk-inline-context .mk-file-context-component .mk-spacer, -.markdown-source-view.mod-cm6 .cm-content > .mk-header .mk-spacer, -.mk-space-view .mk-space-header .mk-spacer { - height: var(--mk-header-height) !important; - pointer-events: none; +.mk-file-table-header { + margin-top: 24px; + color: var(--text-faint); } -.mk-file-context .inline-title { - font-size: 18px; - margin-bottom: 0; +.mk-file-table { + border-collapse: collapse; + table-layout: fixed; + width: 100%; } -.mk-file-context-component .mk-file-context-field-new { - opacity: 0.5; - position: relative; +.mk-space-body { + padding-bottom: 100px; } -.mk-file-context-component .mk-file-context-field-new:hover { - opacity: 1; +.mk-space-body > .mk-f { + max-width: var(--file-line-width); + margin: 0 auto; } -.mk-space-header .mk-file-context-file .mk-file-icon, -.mk-inline-context .mk-file-context-file .mk-file-icon { - width: 48px; - height: 48px; - margin-bottom: 8px; +.mk-f-main > div { + max-width: var(--file-line-width); + margin: 0 auto; + padding-bottom: 8px; } -.mk-space-header .mk-file-context-file.mk-file-context-file-horizontal .mk-file-icon, -.mk-header .mk-file-context-file.mk-file-context-file-horizontal .mk-file-icon { - width: 32px; - height: 32px; - margin-bottom: 0px; +.mk-space-body .cm-content { + padding-bottom: 0px !important; } -.mk-space-header .mk-file-context-file-horizontal .mk-file-icon svg, -.mk-space-header .mk-file-context-file-horizontal .mk-file-icon button, -.mk-header .mk-file-context-file-horizontal .mk-file-icon svg, -.mk-header .mk-file-context-file-horizontal .mk-file-icon button { - width: 32px; - height: 32px; - font-size: 28px; +.mk-space-body > .mk-frame { + align-items: flex-start; + display: flex; + flex-direction: column; + gap: 8px; } -.mk-space-header .mk-file-icon svg, -.mk-space-header .mk-file-icon button, -.mk-inline-context .mk-file-icon svg, -.mk-inline-context .mk-file-icon button { - width: 48px; - height: 48px; - padding: 6px; - font-size: 40px; +.mk-file-row { } -.mk-space-header .mk-file-icon svg.svg-icon, -.mk-inline-context .mk-file-icon svg.svg-icon { - padding: 6px; +.mk-file-row:hover { + background: var(--background-modifier-hover) !important; } - -/* src/css/InlineMenu.css */ -body:not(.is-mobile) .mk-style-menu { - margin-left: -80px; +.mk-file-table tr:nth-child(even) { + background: var(--color-base-10); } -.mk-style-menu { - display: flex; - padding: 0; - margin-top: -50px; +.mk-file-row td { + padding: 10px 10px; } -.is-mobile .mk-style-menu svg { - width: 32px; - height: 32px; +.mk-file-row .mk-column-file { + width: 99%; } -.is-mobile .mk-style-menu { - --mobile-toolbar-height: 48px; - border-radius: 0; - width: 100%; - margin-top: 0; - overflow-x: auto; - justify-content: center; - height: var(--mobile-toolbar-height); - border-top: var(--divider-width) solid var(--divider-color); +.mk-file-row p { + text-overflow: ellipsis; + overflow: hidden; + font-size: var(--font-ui-smaller); + color: var(--text-faint); + margin: 0; + -webkit-line-clamp: 2; + -webkit-box-orient: vertical; + display: -webkit-box; } -.mk-style-menu .mk-mark { - margin: 4px; - padding: 4px; - border-radius: 4px; - display: flex; +.mk-file-row .mk-file-name { + font-weight: var(--font-medium); } -.mk-mark div { - display: flex; +.mk-file-date { + font-size: var(--font-ui-smaller); + color: var(--text-muted); + width: 100px; } -.mk-style-menu .mk-mark:hover { - background: var(--background-modifier-hover); +.mk-column-icon { + width: 40px; } -.mk-style-menu .mk-mark-active { - background: var(--background-modifier-hover); +.mk-column-icon svg { + width: 16px; + height: 16px; + color: var(--text-muted); } -.mk-style-menu svg { +.mk-flowspace-title svg { + width: 16px; + height: 16px; color: var(--text-muted); } -.mk-divider { - border-left: thin solid var(--background-modifier-hover); - width: 1px; +.mk-flowspace-title p { + margin: 0; + padding: 0; + margin-left: 8px; } -.mk-color { - width: 24px; - height: 24px; - border-radius: 12px; - margin: 8px; - border: thin solid var(--background-modifier-hover); +.mk-flowspace-title .mk-flowspace-date { + font-size: var(--font-ui-smaller); + color: var(--text-muted); } -.mk-color:hover { - opacity: 0.8; +.mk-flowspace-title { + display: flex; + align-items: center; + padding: 8px 12px; + border-top: 1px solid var(--divider-color); } -mark { - color: unset; - border-radius: 2px; - margin: 0px 2px; - padding: 0px 2px; +.mk-flowspace-editor { + padding: 0px 12px; + width: 100%; } - -/* src/css/makerMode.css */ -.mk-mark-sans .cm-s-obsidian span.cm-hmd-escape-backslash, -.mk-mark-sans .cm-s-obsidian .HyperMD-header:not(.mk-reset) span.cm-formatting-header { - display: inline; - position: absolute; - right: 100%; - white-space: nowrap; - color: transparent; +.mk-flowspace-editor:not(.mk-flow-node, .mk-file-context-flow) .mk-floweditor { + padding: 12px 0px; +} +.mk-frame-view .mk-flowspace-editor:not(.mk-flow-node, .mk-file-context-flow) .mk-floweditor { + padding: 0; } -.mk-mark-sans .cm-s-obsidian .HyperMD-header.mk-reset span.cm-formatting-header { - color: unset; +.mk-flow-node .mk-floweditor .markdown-source-view.mod-cm6.is-readable-line-width .cm-sizer { + max-width: 100%; } -.mk-mark-sans .mk-reset .cm-fold-indicator { - display: none !important; +.mk-flowspace-editor.mk-foldernote { + width: var(--file-line-width); + max-width: 100%; + margin-left: auto; + margin-right: auto; } -.mk-mark-sans div[class*=HyperMD-header-].mk-reset { - font-variant: unset; - letter-spacing: unset; - line-height: unset; - font-size: unset; - color: unset; - font-weight: unset; - font-style: unset; - font-family: unset; +.mk-foldernote .mk-floweditor { + height: 100% !important; } -.mk-mark-sans .HyperMD-quote-lazy:before { - content: none !important; +.mk-flowspace-title span { + flex-grow: 1; } -.mk-mark-sans .cm-s-obsidian span.cm-formatting-quote:not(.cm-hmd-callout) { - color: transparent; +.mk-flowspace-title button { + padding: 8px; + margin-left: 8px; + width: unset; } -.mk-mark-sans .cm-s-obsidian span.cm-hmd-escape-backslash::selection, -.mk-mark-sans .cm-s-obsidian span.cm-formatting-header::selection { - background: transparent; +.mk-flowspace-title button.mk-open { + background: var(--icon-color-active); } -.mk-flow-replace .mk-new-file { +.mk-flowspace-title:hover { background: var(--color-base-10); - border-bottom: thin solid #333; } -.mk-flow-replace .mk-new-file:hover { - background: var(--color-base-10); - border-bottom: thin solid #333; +.mk-space-empty { + width: 100%; + height: 100%; + display: flex; + align-items: center; + justify-content: center; + font-size: var(--font-ui-small); + font-style: italic; } -.mobile-toolbar-options-container { - border-top: var(--divider-width) solid var(--divider-color); +.mk-flow-container { + width: 100%; } -.mk-mark-sans .markdown-source-view.mod-cm6 .HyperMD-quote:not(.HyperMD-callout):before, -.mk-mark-sans .markdown-source-view.mod-cm6 .cm-blockquote-border:before { - left: 0; - content: "\200b"; - display: block; - width: 1px; - border-left: var(--blockquote-border-thickness) solid var(--blockquote-border-color); - color: transparent; - position: absolute; - top: 0; - bottom: 0; +.mk-flow-container > div { + border-bottom: thin dotted var(--divider-color); } - -/* src/css/MakeMenu.css */ -.mk-slash-item { +.mk-flow-container > div > span { + font-size: var(--font-smallest); + color: var(--text-faint); display: flex; align-items: center; + padding: var(--size-4-1); } -.mk-slash-icon { +.mk-space-scroller .mk-flowspace-editor { + padding: 0; +} +.mk-space-scroller .cm-sizer { +} +.mk-smart-note-view { display: flex; - margin-right: 8px; } -.mk-slash-icon svg { - width: 16px; - height: 16px; +.mk-smart-note-view div { + padding: 4px; } -.cm-active.mk-placeholder:before { - content: attr(data-ph); +.mk-context-type-selector { + max-width: 100%; + width: 100%; + padding-top: 4px; + margin-left: auto; + margin-right: auto; +} +.mk-context-type-selector button { + background: rgba(var(--nav-item-background-active), 0.3); + border: none; + box-shadow: none; color: var(--text-faint); - position: absolute; +} +.mk-minimal-fix .mk-space-body { + max-width: calc(100% - 60px); + margin: auto; +} +.mk-minimal-fix .mk-floweditor .markdown-source-view.mod-cm6.is-readable-line-width .cm-contentContainer.cm-contentContainer > .cm-content > div { + margin-inline: inherit !important; } /* src/css/StickerMenu.css */ @@ -3165,657 +3336,508 @@ mark { align-content: flex-start; flex-direction: row; } -.mk-sticker-modal { - display: flex; - flex-wrap: wrap; -} -.mk-sticker-modal .suggestion-item { - width: 30px; - height: 30px; - display: flex; - font-size: 20px; - gap: 4px; - align-items: center; - padding: 0; - text-align: center; - justify-content: center; - font-family: emoji; -} -.mk-sticker-filter { - border: none; - background: none; - border-bottom: thin solid var(--background-modifier-hover); - width: 100%; - padding: 8px 12px; -} -.mk-sticker-menu .suggestion-item:hover { - background: var(--background-modifier-hover); -} -.mk-image-modal { - display: flex; - flex-wrap: wrap; -} -.mk-sticker { - display: flex; -} -.mk-sticker svg { - height: var(--icon-size); - width: var(--icon-size); - stroke-width: var(--icon-stroke); -} - -/* src/css/FileTree.css */ -.mk-hide-tabs .mod-left-split .mod-top-left-space .workspace-tab-header-container-inner { - visibility: hidden; -} -.is-phone .mod-root .workspace-tabs:not(.mod-visible) { - display: flex !important; -} -.mk-spaces-enabled.is-mobile.mk-hide-ribbon .workspace-drawer.mod-left .workspace-drawer-inner { - padding-left: 0 !important; -} -.mk-hide-ribbon .workspace-ribbon { - display: none; -} -.mk-hide-ribbon.is-hidden-frameless:not(.is-fullscreen) .workspace-tabs.mod-top-left-space .workspace-tab-header-container:before { - width: calc(var(--frame-left-space) + var(--ribbon-width)); -} -.mk-hide-ribbon.is-hidden-frameless:not(.is-fullscreen) .workspace-tabs.mod-top-left-space .workspace-tab-header-container { - padding-left: calc(var(--frame-left-space) + var(--ribbon-width)); -} -.mk-spaces-enabled.is-mobile.mk-hide-ribbon .workspace-drawer-ribbon { - display: none; -} -.mk-spaces-enabled.is-mobile .workspace-drawer.mod-left .workspace-drawer-inner .workspace-drawer-header { - padding-left: 0 !important; -} -.mk-spaces-enabled.is-mobile .workspace-drawer.mod-left .workspace-drawer-active-tab-header { - display: none; -} -.mk-spaces-enabled.is-mobile .workspace-drawer.mod-left .workspace-drawer-inner .mod-settings { - display: none; -} -.is-mobile .workspace-drawer.mod-left .workspace-drawer-header-left .mk-main-menu-container { - margin-right: 34px; -} -.is-mobile .mk-sidebar button:not(.clickable-icon) { -} -.is-mobile .mk-sidebar .mk-file-icon button { - font-size: 16px; - margin: 0; - height: 24px; - width: 24px; -} -body.is-mobile .sidebar-toggle-button { - display: flex !important; -} -.is-mobile .workspace-drawer.mod-left .workspace-drawer-header-icon { - position: absolute; - right: 20px; - top: 12px; - z-index: 100; -} -.is-phone .workspace-drawer.mod-left .workspace-drawer-header-icon { - top: 20px; -} -.is-mobile .workspace-drawer.mod-left { - border-top-right-radius: 0; - border-bottom-right-radius: 0; -} -.mk-sidebar { - display: flex; - flex-direction: column; - height: 100%; -} -.is-mobile .mk-sidebar { -} -.mk-file-tree { - flex: 1; - overflow: hidden; -} -.mk-context-tree .tree-item { - padding: 4px; -} -.mk-context-tree .tree-item-self { - margin-left: var(--spacing); - align-items: center; - padding: 2px 2px; -} -.mk-context-tree .mk-tree-wrapper { - padding: 0px !important; -} -.mk-context-tree .mk-section-title .mk-tree-text { - padding: 0.25rem 0.3rem; -} -.mk-context-tree .mk-section-title { - padding-left: 4px; - padding-right: 4px; -} - -/* src/css/Sidebar.css */ -.workspace .mod-root .workspace-tab-header[data-type=markdown] .workspace-tab-header-inner-icon { - display: flex; -} -.mk-tree-wrapper { - box-sizing: border-box; - margin-bottom: 1px; - display: flex; - align-items: center !important; - padding: 0 6px; - position: relative; - height: var(--spaceRowHeight); - gap: 4px; -} -.nav-file { - overflow-y: inherit !important; -} -.is-mobile .mk-tree-wrapper { - padding-top: 6px; - padding-bottom: 6px; -} -.is-mobile .mk-tree-wrapper > div { -} -.is-mobile .mk-tree-wrapper > .mk-section { - padding-left: 4px; -} -.mk-tree-wrapper > div { +.mk-sticker-modal { display: flex; - width: 100%; - transition: transform .2s ease; -} -.mk-waypoints { - position: relative; -} -.mk-waypoints > .mk-indicator { - border-radius: 8px; - outline: 2px solid var(--interactive-accent); + flex-wrap: wrap; } -.mk-waypoints > .mk-waypoints-item { - transition: transform .2s ease; +.mk-sticker-modal .suggestion-item { + width: 30px; + height: 30px; + display: flex; + font-size: 20px; + gap: 4px; + align-items: center; + padding: 0; + text-align: center; + justify-content: center; + font-family: emoji; } -.mk-tree-wrapper > .mk-indicator-top::before { - content: " "; - display: block; - position: absolute; - height: 2px; - border-radius: 1px; - background: var(--interactive-accent); - width: calc(100% - var(--spacing)); - left: var(--spacing); - top: 0%; +.mk-sticker-filter { + border: none; + background: none; + border-bottom: thin solid var(--background-modifier-hover); + width: 100%; + padding: 8px 12px; } -.mk-folder-lines .mk-tree-item::before { - display: block; - content: " "; - width: 1px; - height: var(--childrenCount); - border-left: var(--nav-indentation-guide-width) solid var(--nav-indentation-guide-color); - position: absolute; - top: 34px; - left: 13px; +.mk-sticker-menu .suggestion-item:hover { + background: var(--background-modifier-hover); } -.mk-tree-wrapper .mk-indicator-row { - border-radius: 8px; - outline: 2px solid var(--interactive-accent); +.mk-image-modal { + display: flex; + flex-wrap: wrap; } -.mk-tree-wrapper.mk-clone { - display: inline-block; - pointer-events: none; - padding: 0; - padding-left: 10px; - padding-top: 5px; +.mk-sticker { + display: flex; } -.mk-tree-wrapper.mk-clone.mk-tree-item { - --vertical-padding: 5px; - padding-right: 24px; - box-shadow: 0px 15px 15px 0 rgba(34, 33, 81, 0.1); +.mk-sticker svg { + height: var(--icon-size); + width: var(--icon-size); + stroke-width: var(--icon-stroke); } -.mk-tree-wrapper.mk-ghost { - opacity: 0.5; + +/* src/css/TableView.css */ +.mk-space-view { + height: 100%; } -.mk-nav-button { +body { + --context-padding: var(--size-4-6); } -.mk-tree-item { - margin-left: var(--spacing) !important; - flex-direction: row !important; - --vertical-padding: 2px; - flex-grow: 1; +.mk-th { position: relative; - display: flex; - align-items: center !important; - padding: var(--vertical-padding) 2px; - min-width: 0; - margin-right: 4px; -} -.is-mobile .mk-tree-item { - height: 38px; } -.is-mobile .mk-tree-item:hover { - background-color: unset !important; +.is-mobile .mk-resizer { + width: 8px; + opacity: 0.05; } -.workspace-leaf:not(.mod-active) .is-selected { - background: var(--nav-item-background-active) !important; +.mk-resizer { + position: absolute; + right: 0; + top: 0; + height: 100%; + width: 2px; + background: var(--divider-color); + cursor: col-resize; + user-select: none; + touch-action: none; + opacity: 0; } -.workspace-leaf.mod-active .is-highlighted { - background: var(--nav-item-background-active) !important; +.mk-resizer.mk-resizer-active { + opacity: 1; } -.is-phone .mk-inline-button { - width: unset !important; +.mk-resizer.isResizing { + background: var(--interactive-hover); + opacity: 1; } -.is-tablet .mk-inline-button { - padding: unset !important; +.mk-resizer:hover { + opacity: 1; } -.mk-inline-button { - display: inline-flex; +.mk-col-header { + overflow-x: hidden; + text-overflow: ellipsis; + padding: 0.5rem 0.75rem; + display: flex; align-items: center; - justify-content: center; - padding: 4px; - border-radius: var(--clickable-icon-radius); - box-shadow: unset !important; -} -.mk-inline-button:not(:hover) { - background: unset !important; -} -.mk-inline-button, -.mk-tree-wrapper button { - background: none; - border: 0; - box-shadow: none; - margin: 0; - height: 24px; - width: 24px; - padding: 0 !important; + font-size: var(--font-ui-small); + font-weight: var(--font-normal); + color: var(--text-muted); + text-transform: capitalize; } -.is-mobile .mk-tree-wrapper .mk-folder-buttons button { - margin-left: 8px; +.mk-col-header > div { + display: flex; + gap: 4px; + width: 100%; + align-items: center; } -body:not(.is-mobile) .mk-tree-wrapper button:hover { - background: var(--nav-item-background-hover); +.mk-col-header-context { + margin-left: 4px; + color: var(--text-faint); } -.mk-file-icon { - width: 24px; - height: 24px; - font-family: emoji; +.mk-td { + padding: 0.5rem; + vertical-align: top; } -.mk-file-icon svg { - width: 16px; - height: 16px; - color: var(--icon-color) !important; +.mk-td > div { + min-height: 28px; } -.mk-file-icon button { - background: var(--label-color); - border: 0; - box-shadow: none; - margin: 2px; - height: 20px; - width: 20px; - padding: 0 !important; +.mk-td-group { + background-color: var(--background-primary); + padding: 0.5rem; + border-top: 0.5px solid var(--divider-color) !important; + font-size: var(--font-ui-small); + font-weight: var(--bold-weight); } -.is-mobile .mk-file-icon { +.mk-td-group .mk-cell-option { width: unset; } -body:not(.is-mobile) .mk-tree-wrapper .mk-drag-handle { - visibility: hidden; - margin-right: 4px; +.mk-td-group .mk-cell-option-item { + background: none; } -body:not(.is-mobile) .mk-tree-wrapper:hover .mk-drag-handle { - visibility: visible; +.mk-td-group .mk-cell-option-item div:hover { + background: none; } -.is-mobile .mk-folder-buttons { - display: flex; +.mk-td-empty { + padding: 0 !important; } -body:not(.is-mobile) .mk-tree-wrapper .mk-file-link { - opacity: 0; +.mk-td input[type=text], +.mk-td input[type=number] { + display: table-cell; + width: 100%; + border: 0; + outline: 0; } -body:not(.is-mobile) .mk-tree-wrapper:hover .mk-file-link { - opacity: 1; +.mk-table { + width: 100%; + overflow-x: scroll; } -body:not(.is-mobile) .mk-tree-wrapper .mk-folder-buttons button { - display: none; +.mk-table table { + border-spacing: 0; + border-bottom: 0.5px solid var(--divider-color) !important; } -body:not(.is-mobile) .mk-tree-wrapper:hover .mk-folder-buttons button { - display: flex; +.mk-table table th:last-child { + width: 100%; } -body:not(.is-mobile) .mk-tree-wrapper .mk-folder-buttons { - display: flex; +.mk-table th:hover { + background: var(--interactive-hover); } -.mk-tree-item svg { - width: 16px; - height: 16px; - color: var(--text-muted); +.mk-table tr th:first-child .mk-col-header, +.mk-table tr td:first-child { + padding-left: calc(var(--context-padding) - 0.75rem); } -.is-mobile .mk-tree-wrapper svg { +.mk-cell-empty { color: var(--text-faint); } -.is-mobile .mk-tree-wrapper .mk-file-icon svg { - width: 18px; - height: 18px; - color: var(--text-faint); +.mk-td img { + max-height: 45px; } -.mk-tree-text { - padding: 0.15rem 4px; - white-space: nowrap; - text-overflow: ellipsis; - overflow: hidden; +.mk-table tr td:first-child.mk-td-empty { + padding-left: calc(var(--context-padding) - 0.75rem) !important; +} +.mk-table td { + border-top: 0.5px solid var(--background-modifier-border) !important; font-size: var(--font-ui-small); - flex-grow: 1 !important; } -.mk-file-link { - vertical-align: middle; +.mk-table .mk-td:not(:last-child) { + border-right: 0.5px solid var(--background-modifier-border) !important; } -.mk-file-link svg { - width: 12px; - height: 10px; - transform: rotate(45deg); +.mk-cell-object { + display: flex; + flex-direction: column; + margin-left: 10px; + padding-left: 10px; + border-left: thin solid var(--divider-color); } -.mk-disable-interaction { - pointer-events: none; +.mk-cell-object .mk-file-context-field-key { + width: 100%; + border: none; + border-radius: 0px; + height: 24px; } -.mk-disable-selection, -.mk-clone .mk-tree-text { - user-select: none; - -webkit-user-select: none; +.mk-cell-object .mk-file-context-field-key:not(:focus) { + background: unset !important; } -.workspace-leaf-content[data-type=mk-file-view] > .view-content { - padding: 0 !important; +.mk-cell-object-row { + display: flex; } -.mk-collapse { - min-width: 16px !important; - width: 16px !important; - height: 16px !important; - opacity: 0.4; +.mk-cell-radio-group { + display: flex; + background-color: var(--interactive-normal); + box-shadow: var(--input-shadow); + -webkit-app-region: no-drag; + display: inline-flex; + align-items: center; + justify-content: center; + color: var(--text-normal); + font-size: var(--font-ui-small); + border-radius: var(--button-radius); + border: 0; + padding: var(--size-4-1) var(--size-4-3); + height: var(--input-height); + font-weight: var(--input-font-weight); + cursor: var(--cursor); + font-family: inherit; + outline: none; + user-select: none; + white-space: nowrap; } -.mk-collapse:hover { - background: none !important; - opacity: 1; +.mk-cell-radio-group > div { + width: 30px; } -.mk-collapse svg { - transform: rotate(90deg); - transition: transform 250ms ease; - width: 12px; - height: 12px; - margin: 2px; +.mk-cell-text { + padding: 4px; } -.mk-collapse.mk-collapsed svg { - transform: rotate(0deg); +.mk-cell-number { + padding: 4px; + text-align: right; } -.mk-collapse.mk-collapsed-plus svg { - transform: rotate(45deg); +.mk-cell-text:not(:focus) { + background: unset !important; } -.mk-is-active:not(.clone) { - color: var(--nav-item-color-active); - background: var(--nav-item-background-active); +.mk-cell-image:hover > .mk-image-selector { + visibility: visible; } -body:not(.is-mobile) .mk-tree-wrapper:not(.mk-section-wrapper):not(.mk-disable-interaction):hover { +.mk-cell-image { + position: relative; + min-width: 40px; + min-height: 40px; } -.mk-icon-menu { - transform: translate3d(-500px, 0px, 0px); - z-index: var(--layer-menu); +.mk-button-new { + background: var(--interactive-accent) !important; + color: var(--text-on-accent) !important; } -.mk-icon-menu .menu { - position: static !important; - padding: 0 !important; +.mk-image-selector { + position: absolute; + visibility: hidden; + top: 0px; + left: 0px; + z-index: var(--layer-popover); + padding-right: 8px; + height: 30px; + display: flex; + gap: 6px; } -.mk-tree-empty { - padding-left: var(--spacing); - padding-top: 4px; - padding-bottom: 4px; - font-size: var(--font-ui-small); - color: var(--text-faint); +.mk-cell-image img { + max-height: 100px; + overflow: hidden; + border-radius: 4px; } - -/* src/css/MainMenu.css */ -.mk-main-menu-container { +.mk-cell-date { + width: 100%; + min-height: 30px; display: flex; - flex-direction: column; - margin: 6px; - gap: 4px; align-items: center; - margin-right: 10px; } -.mk-main-menu-inner { - display: flex; +.mk-cell-date-value { + border-radius: 4px; + padding: 2px 4px; +} +.mk-cell-date-value:hover { + background: var(--interactive-hover); +} +.mk-cell-link, +.mk-cell-context, +.mk-cell-tags, +.mk-cell-option { width: 100%; + min-height: 24px; + padding: 4px 0px; + gap: 4px; + display: flex; + flex-wrap: wrap; +} +.mk-cell-boolean { + padding: 4px; + display: flex; align-items: center; - gap: 8px; + gap: 2px; } -.mk-main-menu { +.mk-cell-option-item { + background: rgba(var(--mono-rgb-100), 0.025); + border-radius: 4px; + overflow: hidden; display: flex; - transition: all 0.2s ease; align-items: center; - gap: 8px; - flex: 1; + gap: 2px; } -.mk-main-menu.mk-hidden { - transform: translateX(-100%); - opacity: 0; - pointer-events: none; +.mk-cell-option-item.mk-is-active { + background: var(--interactive-accent) !important; } -.mk-main-menu-search { - transition: all 0.2s ease; - align-items: center; - gap: 8px; +.mk-cell-option-item input { + margin: 0; } -.mk-main-menu-search.mk-hidden { - opacity: 0; - pointer-events: none; +.mk-cell-option-item div { + padding: 2px 4px; + height: 100%; + display: -webkit-box; + -webkit-line-clamp: 1; + line-clamp: 1; + -webkit-box-orient: vertical; } -.mk-main-menu-button { - padding: 8px 10px; - text-align: left; - border-radius: 4px; - align-items: center; +.mk-cell-option-item div:hover { + background: var(--interactive-hover); +} +.mk-cell-fileprop { + padding: 4px; + color: var(--text-muted); +} +.mk-cell-file { display: flex; - gap: 4px; - justify-content: center; + align-items: center; } -.mk-main-menu-search { - position: absolute; +.mk-cell-file-title { + font-size: var(--font-ui-medium); + margin-bottom: 8px; +} +.mk-cell-file-new { display: flex; - width: calc(100% - 60px); + align-items: center; } -.mk-main-menu-search input { - width: 100%; +.mk-cell-file-new .mk-file-icon svg { + color: var(--text-faint); } -.mk-main-menu-icon { - background: var(--nav-item-background-hover); - padding: 2px; - border-radius: 2px; - text-transform: uppercase; - width: 20px; - height: 20px; - font-size: 12px; - justify-content: center; - margin-right: 4px; +.mk-table:focus .mk-is-active { + background: var(--background-modifier-active-hover) !important; } -.is-mobile .mk-main-menu-button { - font-size: var(--font-ui-medium); - font-weight: var(--font-medium); - gap: 4px; +.mk-floweditor .mk-table:not(:focus) .mk-is-active { + background: none !important; } -.mk-main-menu-button > div { - display: flex; +.mk-table:focus .mk-is-active .mk-selected-cell { + outline: solid 2px var(--interactive-accent); } -.mk-main-menu-button.mk-main-menu-button-primary { - flex-grow: 1; - line-height: 1; - justify-content: flex-start; +.mk-cell-file-new .mk-file-icon:hover { + background: var(--interactive-hover); } -.mk-main-menu .mk-main-menu-sticker { - margin-right: 8px; +.mk-cell-file-item { + display: flex; + align-items: center; } -.mk-main-menu-button svg { - height: 16px; - width: 16px; +.mk-cell-file-item .mk-file-icon:hover { + background: var(--interactive-hover); +} +.mk-cell-file-item .mk-cell-file-name { + padding: 2px 4px; + border-radius: 4px; } -body:not(.is-mobile) .mk-main-menu-button:hover { - background: var(--nav-item-background-hover); +.mk-cell-file-item .mk-cell-file-name:hover { + background: var(--interactive-hover); } -.mk-menu-button { - display: flex; - padding-top: 0.5rem; - padding-bottom: 0.5rem; - padding-left: 0.5rem; - padding-right: 0.5rem; - font-size: 0.75rem; - line-height: 1.25rem; +.mk-cell-file .mk-file-icon { + margin-right: 4px; align-items: center; - width: 100%; - border-radius: 0.375rem; + display: flex; + width: 24px; + border-radius: 4px; } -.mk-menu-button:hover { - background: var(--nav-item-background-hover); +.mk-cell-file-new .mk-cell-file-name { + padding: 4px !important; + background: none !important; } -.mk-main-menu-container .mk-query { - width: 100%; +.is-phone .mk-cell-file-flow { + display: none; } - -/* src/css/NewNote.css */ -.mk-new-note { - flex-grow: 1; - padding: 8px 12px; - font-size: var(--font-ui-smaller); - display: flex; - align-items: center; +.mk-list-item .mk-cell-file-flow { + visibility: hidden; + margin-left: 4px; + padding: 2px 4px; } -.tag-container { - flex: 1; +.mk-list-item:hover .mk-cell-file-flow { + visibility: visible; } -.mk-button-blink { - padding: 8px 12px !important; +.is-phone .mk-list-item .mk-cell-file-flow { + width: unset; + visibility: unset; } -.mk-new-note p { - margin: 0; - margin-left: 8px; - padding: 0; +.mk-list-item .mk-cell-file-flow:hover { + border-radius: 4px; + background: var(--interactive-hover); } -.mk-new-note svg { - width: 16px; - height: 16px; +.mk-row-new { + text-align: left; + border-top: 0.5px solid var(--divider-color) !important; + padding: 8px var(--context-padding) !important; + font-weight: normal !important; + color: var(--text-faint) !important; + font-size: var(--font-ui-small) !important; } -.mk-search { - display: flex; - padding: 8px 8px; - margin: 4px 12px; - margin-left: 0px; +.markdown-rendered .mk-table td, +.markdown-rendered .mk-table th { + border: unset; } -.mk-search svg { +.mk-row-new:hover { + background: var(--background-modifier-hover); +} +.mk-icon-small svg { width: 16px; height: 16px; + color: var(--text-muted); } -.mk-waypoint { - display: flex; -} -.mk-waypoint-new { +.mk-icon-small, +.mk-icon-xsmall { display: flex; align-items: center; - color: var(--text-muted); - opacity: .5; -} -.mk-waypoint-new:hover { - opacity: 1; } -.mk-waypoint .mk-waypoints-item { - display: flex; - justify-content: center; +.mk-icon-xxsmall svg { + width: 10px; + height: 10px; + color: var(--text-muted); } -.is-mobile .mk-waypoints { - background: var(--background-primary); - border-top: thin solid var(--divider-color); - box-shadow: var(--input-shadow); +.mk-icon-xsmall svg { + width: 12px !important; + height: 12px !important; + color: var(--text-muted); } -.is-mobile .mk-waypoints > div { - gap: 8px; +.mk-icon-rotated svg { + transform: rotate(90deg); } -.mk-waypoints { +.mk-cell-link-item { + color: var(--link-color); display: flex; - overflow: auto; - padding: var(--size-4-3) var(--size-4-3) var(--size-4-1) var(--size-4-3); } -.mk-sidebar-expanded { +.mk-cell-option span { flex-grow: 1; } -.mk-waypoint:hover .mk-waypoints-item:not(.mk-active) { - background: var(--nav-item-background-hover); -} -.mk-waypoints-item { - color: var(--text-muted); - height: 30px; - min-width: 30px; - padding: 6px; - border-radius: 15px; +.mk-cell-option-select { display: flex; align-items: center; - gap: 4px; - text-align: center; - font-size: var(--font-ui-normal); - color: var(--icon-color); - transition: transform 250ms ease; } -.is-mobile .mk-waypoints-item { - width: 40px; - height: 40px; - border-radius: 20px; +.mk-cell-option-new { + visibility: hidden; + background: rgba(var(--mono-rgb-100), 0.025); + padding: 2px; + display: flex; + border-radius: 4px; } -.mk-waypoints-item.mk-active { - --label-color: var(--background-modifier-active-hover); - color: var(--text-n); - background-color: var(--label-color); - opacity: 1; +.mk-cell-tags:hover .mk-cell-option-new, +.mk-cell-link:hover .mk-cell-option-new, +.mk-cell-context:hover .mk-cell-option-new, +.mk-cell-option:hover .mk-cell-option-new { + visibility: visible; +} +.mk-cell-link-unresolved { + color: var(--link-unresolved-color); + opacity: var(--link-unresolved-opacity); + filter: var(--link-unresolved-filter); +} +.mk-cell-link-unresolved:hover { + color: var(--link-unresolved-color); + opacity: var(--link-unresolved-opacity); + filter: var(--link-unresolved-filter); } -/* src/css/Blink.css */ -.mk-blink-modal { - padding: 0; +/* src/css/makerMode.css */ +.mk-mark-sans .cm-s-obsidian span.cm-hmd-escape-backslash, +.mk-mark-sans .cm-s-obsidian .HyperMD-header:not(.mk-reset) span.cm-formatting-header { + display: inline; + position: absolute; + right: 100%; + white-space: nowrap; + color: transparent; } -.mk-blink-modal .mk-options-menu { - display: grid !important; - grid-template-columns: 5fr 8fr; - grid-template-rows: 50px auto; - height: var(--prompt-max-height); - width: unset !important; +.mk-mark-sans .cm-s-obsidian .HyperMD-header.mk-reset span.cm-formatting-header { + color: unset; } -.mk-blink-modal .mk-options-menu__search { - width: 100%; - padding: 0; +.mk-mark-sans .mk-reset .cm-fold-indicator { + display: none !important; } -.mk-blink-modal .mk-options-menu__suggestions li { - margin: 6px; +.mk-mark-sans div[class*=HyperMD-header-].mk-reset { + font-variant: unset; + letter-spacing: unset; + line-height: unset; + font-size: unset; + color: unset; + font-weight: unset; + font-style: unset; + font-family: unset; } -.mk-blink-modal .mk-options-menu__search input { - padding: var(--size-4-6); - background-color: var(--background-primary); - font-size: var(--font-ui-medium); - border: none; - height: 40px; - border-radius: 0; - border-bottom: 1px solid var(--background-secondary); +.mk-mark-sans .HyperMD-quote-lazy:before { + content: none !important; } -.mk-blink-modal .mk-floweditor .workspace-leaf-content[data-type=canvas] .view-content { - height: 580px; +.mk-mark-sans .cm-s-obsidian span.cm-formatting-quote:not(.cm-hmd-callout) { + color: transparent; } -.mk-blink-modal .mk-options-menu__selected { - grid-column: 1 / 3; - grid-row: 1; - padding: 0; - margin-top: 0; +.mk-mark-sans .cm-s-obsidian span.cm-hmd-escape-backslash::selection, +.mk-mark-sans .cm-s-obsidian span.cm-formatting-header::selection { + background: transparent; } -.mk-blink-modal .mk-options-menu__suggestions { - padding: var(--size-4-3); - grid-column: 1; - grid-row: 2; - max-height: unset; - width: unset; +.mk-flow-replace .mk-new-file { + background: var(--color-base-10); + border-bottom: thin solid #333; } -.mk-blink-preview { - grid-column: 2; - grid-row: 2; - overflow: auto; - border-left: thin solid var(--background-secondary); +.mk-flow-replace .mk-new-file:hover { + background: var(--color-base-10); + border-bottom: thin solid #333; } -.mk-flowspace-editor { - padding: 0 !important; +.mobile-toolbar-options-container { + border-top: var(--divider-width) solid var(--divider-color); } -.mk-blink-preview .markdown-source-view { - padding: 12px; +.mk-mark-sans .markdown-source-view.mod-cm6 .HyperMD-quote:not(.HyperMD-callout):before, +.mk-mark-sans .markdown-source-view.mod-cm6 .cm-blockquote-border:before { + left: 0; + content: "\200b"; + display: block; + width: 1px; + border-left: var(--blockquote-border-thickness) solid var(--blockquote-border-color); + color: transparent; + position: absolute; + top: 0; + bottom: 0; }