MacBook-Pro-de-Oscar.local 2026-1-29:13:46:9
This commit is contained in:
2
.obsidian/plugins/default-template/main.js
vendored
2
.obsidian/plugins/default-template/main.js
vendored
File diff suppressed because one or more lines are too long
@@ -1,7 +1,7 @@
|
||||
{
|
||||
"id": "default-template",
|
||||
"name": "Default Template",
|
||||
"version": "1.2.3",
|
||||
"version": "1.2.4",
|
||||
"minAppVersion": "0.15.0",
|
||||
"description": "Automatically apply templates to new notes with user-configurable template selection.",
|
||||
"author": "raeperd",
|
||||
|
||||
366
.obsidian/plugins/metaedit/main.js
vendored
366
.obsidian/plugins/metaedit/main.js
vendored
@@ -98,21 +98,22 @@ function children(element) {
|
||||
}
|
||||
function set_data(text, data) {
|
||||
data = '' + data;
|
||||
if (text.wholeText !== data)
|
||||
text.data = data;
|
||||
if (text.data === data)
|
||||
return;
|
||||
text.data = data;
|
||||
}
|
||||
function set_input_value(input, value) {
|
||||
input.value = value == null ? '' : value;
|
||||
}
|
||||
function set_style(node, key, value, important) {
|
||||
if (value === null) {
|
||||
if (value == null) {
|
||||
node.style.removeProperty(key);
|
||||
}
|
||||
else {
|
||||
node.style.setProperty(key, value, important ? 'important' : '');
|
||||
}
|
||||
}
|
||||
function select_option(select, value) {
|
||||
function select_option(select, value, mounting) {
|
||||
for (let i = 0; i < select.options.length; i += 1) {
|
||||
const option = select.options[i];
|
||||
if (option.__value === value) {
|
||||
@@ -120,10 +121,12 @@ function select_option(select, value) {
|
||||
return;
|
||||
}
|
||||
}
|
||||
select.selectedIndex = -1; // no option should be selected
|
||||
if (!mounting || value !== undefined) {
|
||||
select.selectedIndex = -1; // no option should be selected
|
||||
}
|
||||
}
|
||||
function select_value(select) {
|
||||
const selected_option = select.querySelector(':checked') || select.options[0];
|
||||
const selected_option = select.querySelector(':checked');
|
||||
return selected_option && selected_option.__value;
|
||||
}
|
||||
|
||||
@@ -151,9 +154,9 @@ function onMount(fn) {
|
||||
|
||||
const dirty_components = [];
|
||||
const binding_callbacks = [];
|
||||
const render_callbacks = [];
|
||||
let render_callbacks = [];
|
||||
const flush_callbacks = [];
|
||||
const resolved_promise = Promise.resolve();
|
||||
const resolved_promise = /* @__PURE__ */ Promise.resolve();
|
||||
let update_scheduled = false;
|
||||
function schedule_update() {
|
||||
if (!update_scheduled) {
|
||||
@@ -244,6 +247,16 @@ function update($$) {
|
||||
$$.after_update.forEach(add_render_callback);
|
||||
}
|
||||
}
|
||||
/**
|
||||
* Useful for example to execute remaining `afterUpdate` callbacks before executing `destroy`.
|
||||
*/
|
||||
function flush_render_callbacks(fns) {
|
||||
const filtered = [];
|
||||
const targets = [];
|
||||
render_callbacks.forEach((c) => fns.indexOf(c) === -1 ? filtered.push(c) : targets.push(c));
|
||||
targets.forEach((c) => c());
|
||||
render_callbacks = filtered;
|
||||
}
|
||||
const outroing = new Set();
|
||||
function transition_in(block, local) {
|
||||
if (block && block.i) {
|
||||
@@ -277,6 +290,7 @@ function mount_component(component, target, anchor, customElement) {
|
||||
function destroy_component(component, detaching) {
|
||||
const $$ = component.$$;
|
||||
if ($$.fragment !== null) {
|
||||
flush_render_callbacks($$.after_update);
|
||||
run_all($$.on_destroy);
|
||||
$$.fragment && $$.fragment.d(detaching);
|
||||
// TODO null out other refs, including component.$$ (but need to
|
||||
@@ -390,7 +404,7 @@ var ProgressPropertyOptions;
|
||||
ProgressPropertyOptions["TaskIncomplete"] = "Incomplete Tasks";
|
||||
})(ProgressPropertyOptions || (ProgressPropertyOptions = {}));
|
||||
|
||||
/* src/Modals/ProgressPropertiesSettingModal/ProgressPropertiesModalContent.svelte generated by Svelte v3.55.1 */
|
||||
/* src/Modals/ProgressPropertiesSettingModal/ProgressPropertiesModalContent.svelte generated by Svelte v3.59.2 */
|
||||
|
||||
function add_css$3(target) {
|
||||
append_styles(target, "svelte-kqcr7b", ".buttonContainer.svelte-kqcr7b{display:flex;justify-content:center;margin-top:1rem}select.svelte-kqcr7b{border-radius:4px;width:100%;height:30px;border:1px solid #dbdbdc;color:#383a42;background-color:#fff;padding:3px}button.svelte-kqcr7b{margin-left:5px;margin-right:5px;font-size:15px}");
|
||||
@@ -500,10 +514,12 @@ function create_each_block$3(ctx) {
|
||||
append(td1, select);
|
||||
|
||||
for (let i = 0; i < each_blocks.length; i += 1) {
|
||||
each_blocks[i].m(select, null);
|
||||
if (each_blocks[i]) {
|
||||
each_blocks[i].m(select, null);
|
||||
}
|
||||
}
|
||||
|
||||
select_option(select, /*property*/ ctx[10].type);
|
||||
select_option(select, /*property*/ ctx[10].type, true);
|
||||
append(tr, t1);
|
||||
append(tr, td2);
|
||||
append(td2, input1);
|
||||
@@ -612,7 +628,9 @@ function create_fragment$4(ctx) {
|
||||
append(table, t3);
|
||||
|
||||
for (let i = 0; i < each_blocks.length; i += 1) {
|
||||
each_blocks[i].m(table, null);
|
||||
if (each_blocks[i]) {
|
||||
each_blocks[i].m(table, null);
|
||||
}
|
||||
}
|
||||
|
||||
append(div1, t4);
|
||||
@@ -722,7 +740,7 @@ class ProgressPropertiesModalContent extends SvelteComponent {
|
||||
}
|
||||
}
|
||||
|
||||
/* src/Modals/AutoPropertiesSettingModal/AutoPropertiesModalContent.svelte generated by Svelte v3.55.1 */
|
||||
/* src/Modals/AutoPropertiesSettingModal/AutoPropertiesModalContent.svelte generated by Svelte v3.59.2 */
|
||||
|
||||
function add_css$2(target) {
|
||||
append_styles(target, "svelte-kqcr7b", ".buttonContainer.svelte-kqcr7b{display:flex;justify-content:center;margin-top:1rem}button.svelte-kqcr7b{margin-left:5px;margin-right:5px;font-size:15px}");
|
||||
@@ -891,7 +909,9 @@ function create_each_block$2(ctx) {
|
||||
append(tr, td2);
|
||||
|
||||
for (let i = 0; i < each_blocks.length; i += 1) {
|
||||
each_blocks[i].m(td2, null);
|
||||
if (each_blocks[i]) {
|
||||
each_blocks[i].m(td2, null);
|
||||
}
|
||||
}
|
||||
|
||||
append(tr, t2);
|
||||
@@ -1001,7 +1021,9 @@ function create_fragment$3(ctx) {
|
||||
append(table, t4);
|
||||
|
||||
for (let i = 0; i < each_blocks.length; i += 1) {
|
||||
each_blocks[i].m(table, null);
|
||||
if (each_blocks[i]) {
|
||||
each_blocks[i].m(table, null);
|
||||
}
|
||||
}
|
||||
|
||||
append(div1, t5);
|
||||
@@ -1291,7 +1313,7 @@ var round = Math.round;
|
||||
function getUAString() {
|
||||
var uaData = navigator.userAgentData;
|
||||
|
||||
if (uaData != null && uaData.brands) {
|
||||
if (uaData != null && uaData.brands && Array.isArray(uaData.brands)) {
|
||||
return uaData.brands.map(function (item) {
|
||||
return item.brand + "/" + item.version;
|
||||
}).join(' ');
|
||||
@@ -1578,17 +1600,7 @@ function effect$1(_ref2) {
|
||||
}
|
||||
}
|
||||
|
||||
if (process.env.NODE_ENV !== "production") {
|
||||
if (!isHTMLElement(arrowElement)) {
|
||||
console.error(['Popper: "arrow" element must be an HTMLElement (not an SVGElement).', 'To use an SVG arrow, wrap it in an HTMLElement that will be used as', 'the arrow.'].join(' '));
|
||||
}
|
||||
}
|
||||
|
||||
if (!contains(state.elements.popper, arrowElement)) {
|
||||
if (process.env.NODE_ENV !== "production") {
|
||||
console.error(['Popper: "arrow" modifier\'s `element` must be a child of the popper', 'element.'].join(' '));
|
||||
}
|
||||
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -1619,10 +1631,9 @@ var unsetSides = {
|
||||
// Zooming can change the DPR, but it seems to report a value that will
|
||||
// cleanly divide the values into the appropriate subpixels.
|
||||
|
||||
function roundOffsetsByDPR(_ref) {
|
||||
function roundOffsetsByDPR(_ref, win) {
|
||||
var x = _ref.x,
|
||||
y = _ref.y;
|
||||
var win = window;
|
||||
var dpr = win.devicePixelRatio || 1;
|
||||
return {
|
||||
x: round(x * dpr) / dpr || 0,
|
||||
@@ -1705,7 +1716,7 @@ function mapToStyles(_ref2) {
|
||||
var _ref4 = roundOffsets === true ? roundOffsetsByDPR({
|
||||
x: x,
|
||||
y: y
|
||||
}) : {
|
||||
}, getWindow(popper)) : {
|
||||
x: x,
|
||||
y: y
|
||||
};
|
||||
@@ -1731,17 +1742,6 @@ function computeStyles(_ref5) {
|
||||
adaptive = _options$adaptive === void 0 ? true : _options$adaptive,
|
||||
_options$roundOffsets = options.roundOffsets,
|
||||
roundOffsets = _options$roundOffsets === void 0 ? true : _options$roundOffsets;
|
||||
|
||||
if (process.env.NODE_ENV !== "production") {
|
||||
var transitionProperty = getComputedStyle(state.elements.popper).transitionProperty || '';
|
||||
|
||||
if (adaptive && ['transform', 'top', 'right', 'bottom', 'left'].some(function (property) {
|
||||
return transitionProperty.indexOf(property) >= 0;
|
||||
})) {
|
||||
console.warn(['Popper: Detected CSS transitions on at least one of the following', 'CSS properties: "transform", "top", "right", "bottom", "left".', '\n\n', 'Disable the "computeStyles" modifier\'s `adaptive` option to allow', 'for smooth transitions, or remove these properties from the CSS', 'transition declaration on the popper element if only transitioning', 'opacity or background-color for example.', '\n\n', 'We recommend using the popper element as a wrapper around an inner', 'element that can have any CSS property transitioned for animations.'].join(' '));
|
||||
}
|
||||
}
|
||||
|
||||
var commonStyles = {
|
||||
placement: getBasePlacement(state.placement),
|
||||
variation: getVariation(state.placement),
|
||||
@@ -2182,10 +2182,6 @@ function computeAutoPlacement(state, options) {
|
||||
|
||||
if (allowedPlacements.length === 0) {
|
||||
allowedPlacements = placements$1;
|
||||
|
||||
if (process.env.NODE_ENV !== "production") {
|
||||
console.error(['Popper: The `allowedAutoPlacements` option did not allow any', 'placements. Ensure the `placement` option matches the variation', 'of the allowed placements.', 'For example, "auto" cannot be used to allow "bottom-start".', 'Use "auto-start" instead.'].join(' '));
|
||||
}
|
||||
} // $FlowFixMe[incompatible-type]: Flow seems to have problems with two array unions...
|
||||
|
||||
|
||||
@@ -2737,108 +2733,6 @@ function debounce(fn) {
|
||||
};
|
||||
}
|
||||
|
||||
function format(str) {
|
||||
for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {
|
||||
args[_key - 1] = arguments[_key];
|
||||
}
|
||||
|
||||
return [].concat(args).reduce(function (p, c) {
|
||||
return p.replace(/%s/, c);
|
||||
}, str);
|
||||
}
|
||||
|
||||
var INVALID_MODIFIER_ERROR = 'Popper: modifier "%s" provided an invalid %s property, expected %s but got %s';
|
||||
var MISSING_DEPENDENCY_ERROR = 'Popper: modifier "%s" requires "%s", but "%s" modifier is not available';
|
||||
var VALID_PROPERTIES = ['name', 'enabled', 'phase', 'fn', 'effect', 'requires', 'options'];
|
||||
function validateModifiers(modifiers) {
|
||||
modifiers.forEach(function (modifier) {
|
||||
[].concat(Object.keys(modifier), VALID_PROPERTIES) // IE11-compatible replacement for `new Set(iterable)`
|
||||
.filter(function (value, index, self) {
|
||||
return self.indexOf(value) === index;
|
||||
}).forEach(function (key) {
|
||||
switch (key) {
|
||||
case 'name':
|
||||
if (typeof modifier.name !== 'string') {
|
||||
console.error(format(INVALID_MODIFIER_ERROR, String(modifier.name), '"name"', '"string"', "\"" + String(modifier.name) + "\""));
|
||||
}
|
||||
|
||||
break;
|
||||
|
||||
case 'enabled':
|
||||
if (typeof modifier.enabled !== 'boolean') {
|
||||
console.error(format(INVALID_MODIFIER_ERROR, modifier.name, '"enabled"', '"boolean"', "\"" + String(modifier.enabled) + "\""));
|
||||
}
|
||||
|
||||
break;
|
||||
|
||||
case 'phase':
|
||||
if (modifierPhases.indexOf(modifier.phase) < 0) {
|
||||
console.error(format(INVALID_MODIFIER_ERROR, modifier.name, '"phase"', "either " + modifierPhases.join(', '), "\"" + String(modifier.phase) + "\""));
|
||||
}
|
||||
|
||||
break;
|
||||
|
||||
case 'fn':
|
||||
if (typeof modifier.fn !== 'function') {
|
||||
console.error(format(INVALID_MODIFIER_ERROR, modifier.name, '"fn"', '"function"', "\"" + String(modifier.fn) + "\""));
|
||||
}
|
||||
|
||||
break;
|
||||
|
||||
case 'effect':
|
||||
if (modifier.effect != null && typeof modifier.effect !== 'function') {
|
||||
console.error(format(INVALID_MODIFIER_ERROR, modifier.name, '"effect"', '"function"', "\"" + String(modifier.fn) + "\""));
|
||||
}
|
||||
|
||||
break;
|
||||
|
||||
case 'requires':
|
||||
if (modifier.requires != null && !Array.isArray(modifier.requires)) {
|
||||
console.error(format(INVALID_MODIFIER_ERROR, modifier.name, '"requires"', '"array"', "\"" + String(modifier.requires) + "\""));
|
||||
}
|
||||
|
||||
break;
|
||||
|
||||
case 'requiresIfExists':
|
||||
if (!Array.isArray(modifier.requiresIfExists)) {
|
||||
console.error(format(INVALID_MODIFIER_ERROR, modifier.name, '"requiresIfExists"', '"array"', "\"" + String(modifier.requiresIfExists) + "\""));
|
||||
}
|
||||
|
||||
break;
|
||||
|
||||
case 'options':
|
||||
case 'data':
|
||||
break;
|
||||
|
||||
default:
|
||||
console.error("PopperJS: an invalid property has been provided to the \"" + modifier.name + "\" modifier, valid properties are " + VALID_PROPERTIES.map(function (s) {
|
||||
return "\"" + s + "\"";
|
||||
}).join(', ') + "; but \"" + key + "\" was provided.");
|
||||
}
|
||||
|
||||
modifier.requires && modifier.requires.forEach(function (requirement) {
|
||||
if (modifiers.find(function (mod) {
|
||||
return mod.name === requirement;
|
||||
}) == null) {
|
||||
console.error(format(MISSING_DEPENDENCY_ERROR, String(modifier.name), requirement, requirement));
|
||||
}
|
||||
});
|
||||
});
|
||||
});
|
||||
}
|
||||
|
||||
function uniqueBy(arr, fn) {
|
||||
var identifiers = new Set();
|
||||
return arr.filter(function (item) {
|
||||
var identifier = fn(item);
|
||||
|
||||
if (!identifiers.has(identifier)) {
|
||||
identifiers.add(identifier);
|
||||
return true;
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
function mergeByName(modifiers) {
|
||||
var merged = modifiers.reduce(function (merged, current) {
|
||||
var existing = merged[current.name];
|
||||
@@ -2854,8 +2748,6 @@ function mergeByName(modifiers) {
|
||||
});
|
||||
}
|
||||
|
||||
var INVALID_ELEMENT_ERROR = 'Popper: Invalid reference or popper argument provided. They must be either a DOM element or virtual element.';
|
||||
var INFINITE_LOOP_ERROR = 'Popper: An infinite loop in the modifiers cycle has been detected! The cycle has been interrupted to prevent a browser crash.';
|
||||
var DEFAULT_OPTIONS = {
|
||||
placement: 'bottom',
|
||||
modifiers: [],
|
||||
@@ -2917,42 +2809,7 @@ function popperGenerator(generatorOptions) {
|
||||
|
||||
state.orderedModifiers = orderedModifiers.filter(function (m) {
|
||||
return m.enabled;
|
||||
}); // Validate the provided modifiers so that the consumer will get warned
|
||||
// if one of the modifiers is invalid for any reason
|
||||
|
||||
if (process.env.NODE_ENV !== "production") {
|
||||
var modifiers = uniqueBy([].concat(orderedModifiers, state.options.modifiers), function (_ref) {
|
||||
var name = _ref.name;
|
||||
return name;
|
||||
});
|
||||
validateModifiers(modifiers);
|
||||
|
||||
if (getBasePlacement(state.options.placement) === auto) {
|
||||
var flipModifier = state.orderedModifiers.find(function (_ref2) {
|
||||
var name = _ref2.name;
|
||||
return name === 'flip';
|
||||
});
|
||||
|
||||
if (!flipModifier) {
|
||||
console.error(['Popper: "auto" placements require the "flip" modifier be', 'present and enabled to work.'].join(' '));
|
||||
}
|
||||
}
|
||||
|
||||
var _getComputedStyle = getComputedStyle(popper),
|
||||
marginTop = _getComputedStyle.marginTop,
|
||||
marginRight = _getComputedStyle.marginRight,
|
||||
marginBottom = _getComputedStyle.marginBottom,
|
||||
marginLeft = _getComputedStyle.marginLeft; // We no longer take into account `margins` on the popper, and it can
|
||||
// cause bugs with positioning, so we'll warn the consumer
|
||||
|
||||
|
||||
if ([marginTop, marginRight, marginBottom, marginLeft].some(function (margin) {
|
||||
return parseFloat(margin);
|
||||
})) {
|
||||
console.warn(['Popper: CSS "margin" styles cannot be used to apply padding', 'between the popper and its reference element or boundary.', 'To replicate margin, use the `offset` modifier, as well as', 'the `padding` option in the `preventOverflow` and `flip`', 'modifiers.'].join(' '));
|
||||
}
|
||||
}
|
||||
|
||||
});
|
||||
runModifierEffects();
|
||||
return instance.update();
|
||||
},
|
||||
@@ -2972,10 +2829,6 @@ function popperGenerator(generatorOptions) {
|
||||
// anymore
|
||||
|
||||
if (!areValidElements(reference, popper)) {
|
||||
if (process.env.NODE_ENV !== "production") {
|
||||
console.error(INVALID_ELEMENT_ERROR);
|
||||
}
|
||||
|
||||
return;
|
||||
} // Store the reference and popper rects to be read by modifiers
|
||||
|
||||
@@ -2998,18 +2851,8 @@ function popperGenerator(generatorOptions) {
|
||||
state.orderedModifiers.forEach(function (modifier) {
|
||||
return state.modifiersData[modifier.name] = Object.assign({}, modifier.data);
|
||||
});
|
||||
var __debug_loops__ = 0;
|
||||
|
||||
for (var index = 0; index < state.orderedModifiers.length; index++) {
|
||||
if (process.env.NODE_ENV !== "production") {
|
||||
__debug_loops__ += 1;
|
||||
|
||||
if (__debug_loops__ > 100) {
|
||||
console.error(INFINITE_LOOP_ERROR);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
if (state.reset === true) {
|
||||
state.reset = false;
|
||||
index = -1;
|
||||
@@ -3047,10 +2890,6 @@ function popperGenerator(generatorOptions) {
|
||||
};
|
||||
|
||||
if (!areValidElements(reference, popper)) {
|
||||
if (process.env.NODE_ENV !== "production") {
|
||||
console.error(INVALID_ELEMENT_ERROR);
|
||||
}
|
||||
|
||||
return instance;
|
||||
}
|
||||
|
||||
@@ -3065,11 +2904,11 @@ function popperGenerator(generatorOptions) {
|
||||
// one.
|
||||
|
||||
function runModifierEffects() {
|
||||
state.orderedModifiers.forEach(function (_ref3) {
|
||||
var name = _ref3.name,
|
||||
_ref3$options = _ref3.options,
|
||||
options = _ref3$options === void 0 ? {} : _ref3$options,
|
||||
effect = _ref3.effect;
|
||||
state.orderedModifiers.forEach(function (_ref) {
|
||||
var name = _ref.name,
|
||||
_ref$options = _ref.options,
|
||||
options = _ref$options === void 0 ? {} : _ref$options,
|
||||
effect = _ref.effect;
|
||||
|
||||
if (typeof effect === 'function') {
|
||||
var cleanupFn = effect({
|
||||
@@ -3284,7 +3123,7 @@ class LogManager {
|
||||
LogManager.loggers = [];
|
||||
const log = new LogManager();
|
||||
|
||||
/* src/Modals/KanbanHelperSetting/KanbanHelperSettingContent.svelte generated by Svelte v3.55.1 */
|
||||
/* src/Modals/KanbanHelperSetting/KanbanHelperSettingContent.svelte generated by Svelte v3.59.2 */
|
||||
|
||||
function add_css$1(target) {
|
||||
append_styles(target, "svelte-kqcr7b", ".buttonContainer.svelte-kqcr7b{display:flex;justify-content:center;margin-top:1rem}button.svelte-kqcr7b{margin-left:5px;margin-right:5px;font-size:15px}");
|
||||
@@ -3451,7 +3290,9 @@ function create_fragment$2(ctx) {
|
||||
append(table, t6);
|
||||
|
||||
for (let i = 0; i < each_blocks.length; i += 1) {
|
||||
each_blocks[i].m(table, null);
|
||||
if (each_blocks[i]) {
|
||||
each_blocks[i].m(table, null);
|
||||
}
|
||||
}
|
||||
|
||||
append(div1, t7);
|
||||
@@ -3617,7 +3458,7 @@ class KanbanHelperSettingContent extends SvelteComponent {
|
||||
}
|
||||
}
|
||||
|
||||
/* src/Modals/shared/SingleValueTableEditorContent.svelte generated by Svelte v3.55.1 */
|
||||
/* src/Modals/shared/SingleValueTableEditorContent.svelte generated by Svelte v3.59.2 */
|
||||
|
||||
function add_css(target) {
|
||||
append_styles(target, "svelte-kqcr7b", ".buttonContainer.svelte-kqcr7b{display:flex;justify-content:center;margin-top:1rem}button.svelte-kqcr7b{margin-left:5px;margin-right:5px;font-size:15px}");
|
||||
@@ -3750,7 +3591,9 @@ function create_fragment$1(ctx) {
|
||||
append(table, t2);
|
||||
|
||||
for (let i = 0; i < each_blocks.length; i += 1) {
|
||||
each_blocks[i].m(table, null);
|
||||
if (each_blocks[i]) {
|
||||
each_blocks[i].m(table, null);
|
||||
}
|
||||
}
|
||||
|
||||
append(div1, t3);
|
||||
@@ -4462,7 +4305,7 @@ class GenericTextSuggester extends TextInputSuggest {
|
||||
}
|
||||
}
|
||||
|
||||
/* src/Modals/GenericPrompt/GenericPromptContent.svelte generated by Svelte v3.55.1 */
|
||||
/* src/Modals/GenericPrompt/GenericPromptContent.svelte generated by Svelte v3.59.2 */
|
||||
|
||||
function create_fragment(ctx) {
|
||||
let div;
|
||||
@@ -5357,6 +5200,8 @@ var OnModifyAutomatorType;
|
||||
OnModifyAutomatorType["ProgressProperties"] = "ProgressProperties";
|
||||
})(OnModifyAutomatorType || (OnModifyAutomatorType = {}));
|
||||
|
||||
const MARKDOWN_HEADING = /#+\s+(.+)/;
|
||||
const TASK_REGEX = /(\s*)-\s*\[([ Xx\.]?)\]\s*(.+)/i;
|
||||
class KanbanHelper extends OnFileModifyAutomator {
|
||||
get boards() { return this.plugin.settings.KanbanHelper.boards; }
|
||||
constructor(plugin) {
|
||||
@@ -5371,20 +5216,87 @@ class KanbanHelper extends OnFileModifyAutomator {
|
||||
const { links } = kanbanBoardFileCache;
|
||||
if (!links)
|
||||
return;
|
||||
await this.updateFilesInBoard(links, targetBoard, kanbanBoardFileContent);
|
||||
await this.updateFilesInBoard(links, targetBoard, file.path, kanbanBoardFileContent);
|
||||
}
|
||||
findBoardByName(boardName) {
|
||||
return this.boards.find(board => board.boardName === boardName);
|
||||
}
|
||||
getLinkFile(link) {
|
||||
const markdownFiles = this.app.vault.getMarkdownFiles();
|
||||
return markdownFiles.find(f => f.path.endsWith(`/${link.link}.md`) || f.path === `${link.link}.md`);
|
||||
resolveLinkFile(link, sourcePath) {
|
||||
const linkpath = this.normalizeLinkpath(link === null || link === void 0 ? void 0 : link.link);
|
||||
if (!linkpath)
|
||||
return null;
|
||||
const candidates = this.buildLinkpathCandidates(linkpath);
|
||||
const resolvedFromCache = this.resolveByMetadataCache(candidates, sourcePath);
|
||||
if (resolvedFromCache)
|
||||
return resolvedFromCache;
|
||||
const resolvedByPath = this.resolveByPathCandidates(candidates);
|
||||
if (resolvedByPath)
|
||||
return resolvedByPath;
|
||||
return this.resolveByBasenameCandidates(candidates);
|
||||
}
|
||||
async updateFilesInBoard(links, board, kanbanBoardFileContent) {
|
||||
normalizeLinkpath(link) {
|
||||
if (!link)
|
||||
return null;
|
||||
let normalized = link;
|
||||
try {
|
||||
normalized = decodeURIComponent(normalized);
|
||||
}
|
||||
catch (_a) {
|
||||
// Keep original link if decoding fails
|
||||
}
|
||||
normalized = normalized.replace(/^\/+/, "");
|
||||
normalized = obsidian.normalizePath(normalized);
|
||||
return obsidian.getLinkpath(normalized);
|
||||
}
|
||||
buildLinkpathCandidates(linkpath) {
|
||||
const withoutExtension = this.stripMarkdownExtension(linkpath);
|
||||
return Array.from(new Set([linkpath, withoutExtension]));
|
||||
}
|
||||
stripMarkdownExtension(path) {
|
||||
return path.toLowerCase().endsWith(".md") ? path.slice(0, -3) : path;
|
||||
}
|
||||
ensureMarkdownExtension(path) {
|
||||
return path.toLowerCase().endsWith(".md") ? path : `${path}.md`;
|
||||
}
|
||||
resolveByMetadataCache(candidates, sourcePath) {
|
||||
for (const candidate of candidates) {
|
||||
const resolved = this.app.metadataCache.getFirstLinkpathDest(candidate, sourcePath);
|
||||
if (resolved)
|
||||
return resolved;
|
||||
}
|
||||
return null;
|
||||
}
|
||||
resolveByPathCandidates(candidates) {
|
||||
for (const candidate of candidates) {
|
||||
const file = this.app.vault.getAbstractFileByPath(this.ensureMarkdownExtension(candidate));
|
||||
const markdownFile = abstractFileToMarkdownTFile(file);
|
||||
if (markdownFile)
|
||||
return markdownFile;
|
||||
}
|
||||
return null;
|
||||
}
|
||||
resolveByBasenameCandidates(candidates) {
|
||||
var _a;
|
||||
const markdownFiles = this.app.vault.getMarkdownFiles();
|
||||
for (const candidate of candidates) {
|
||||
if (candidate.includes("/"))
|
||||
continue;
|
||||
const basename = this.stripMarkdownExtension((_a = candidate.split("/").pop()) !== null && _a !== void 0 ? _a : "");
|
||||
if (!basename)
|
||||
continue;
|
||||
const found = markdownFiles.find(f => f.basename === basename);
|
||||
if (found)
|
||||
return found;
|
||||
}
|
||||
return null;
|
||||
}
|
||||
isMarkdownFile(file) {
|
||||
return !!file && file.extension === "md";
|
||||
}
|
||||
async updateFilesInBoard(links, board, sourcePath, kanbanBoardFileContent) {
|
||||
for (const link of links) {
|
||||
const linkFile = this.getLinkFile(link);
|
||||
const linkIsMarkdownFile = !!abstractFileToMarkdownTFile(linkFile);
|
||||
if (!linkFile || !linkIsMarkdownFile) {
|
||||
const linkFile = this.resolveLinkFile(link, sourcePath);
|
||||
if (!this.isMarkdownFile(linkFile)) {
|
||||
log.logMessage(`${link.link} is not updatable for the KanbanHelper.`);
|
||||
continue;
|
||||
}
|
||||
@@ -5404,19 +5316,17 @@ class KanbanHelper extends OnFileModifyAutomator {
|
||||
}
|
||||
const targetProperty = fileProperties.find(prop => prop.key === board.property);
|
||||
if (!targetProperty) {
|
||||
log.logWarning(`'${board.property} not found in ${board.boardName} for file "${linkFile.name}".'`);
|
||||
new obsidian.Notice(`'${board.property} not found in ${board.boardName} for file "${linkFile.name}".'`); // This notice will help users debug "Property not found in board" errors.
|
||||
log.logWarning(`'${board.property}' not found in '${board.boardName}' for file "${linkFile.name}".`);
|
||||
new obsidian.Notice(`'${board.property}' not found in '${board.boardName}' for file "${linkFile.name}".`); // This notice will help users debug "Property not found in board" errors.
|
||||
return;
|
||||
}
|
||||
const propertyHasChanged = (targetProperty.content != heading); // Kanban Helper will check if the file's property is different from its current heading in the kanban and will only make changes to the file if there's a difference
|
||||
const propertyHasChanged = targetProperty.content !== heading;
|
||||
if (propertyHasChanged) {
|
||||
console.debug("Updating " + targetProperty.key + " of file " + linkFile.name + " to " + heading);
|
||||
console.debug(`Updating ${targetProperty.key} of file ${linkFile.name} to ${heading}`);
|
||||
await this.plugin.controller.updatePropertyInFile(targetProperty, heading, linkFile);
|
||||
}
|
||||
}
|
||||
getTaskHeading(targetTaskContent, fileContent) {
|
||||
const MARKDOWN_HEADING = new RegExp(/#+\s+(.+)/);
|
||||
const TASK_REGEX = new RegExp(/(\s*)-\s*\[([ Xx\.]?)\]\s*(.+)/, "i");
|
||||
let lastHeading = "";
|
||||
const contentLines = fileContent.split("\n");
|
||||
for (const line of contentLines) {
|
||||
@@ -5429,7 +5339,7 @@ class KanbanHelper extends OnFileModifyAutomator {
|
||||
if (taskMatch) {
|
||||
const taskContent = taskMatch[3];
|
||||
if (taskContent.includes(targetTaskContent)) {
|
||||
return lastHeading;
|
||||
return lastHeading || null;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -5536,3 +5446,5 @@ class MetaEdit extends obsidian.Plugin {
|
||||
}
|
||||
|
||||
module.exports = MetaEdit;
|
||||
|
||||
/* nosourcemap */
|
||||
2
.obsidian/plugins/metaedit/manifest.json
vendored
2
.obsidian/plugins/metaedit/manifest.json
vendored
@@ -1,7 +1,7 @@
|
||||
{
|
||||
"id": "metaedit",
|
||||
"name": "MetaEdit",
|
||||
"version": "1.8.2",
|
||||
"version": "1.8.4",
|
||||
"minAppVersion": "1.4.1",
|
||||
"description": "MetaEdit helps you manage your metadata.",
|
||||
"author": "Christian B. B. Houmann",
|
||||
|
||||
@@ -148,7 +148,7 @@
|
||||
}
|
||||
}
|
||||
},
|
||||
"previousRelease": "2.19.2",
|
||||
"previousRelease": "2.20.0",
|
||||
"showReleaseNotes": true,
|
||||
"compareManifestToPluginVersion": true,
|
||||
"showNewVersionNotification": true,
|
||||
|
||||
File diff suppressed because one or more lines are too long
@@ -1,7 +1,7 @@
|
||||
{
|
||||
"id": "obsidian-excalidraw-plugin",
|
||||
"name": "Excalidraw",
|
||||
"version": "2.19.2",
|
||||
"version": "2.20.0",
|
||||
"minAppVersion": "1.5.7",
|
||||
"description": "Sketch Your Mind. An Obsidian plugin to edit and view Excalidraw drawings. Enter the world of 4D Visual PKM.",
|
||||
"author": "Zsolt Viczian",
|
||||
|
||||
File diff suppressed because one or more lines are too long
4
.obsidian/plugins/obsidian-hider/main.js
vendored
4
.obsidian/plugins/obsidian-hider/main.js
vendored
File diff suppressed because one or more lines are too long
@@ -1,8 +1,8 @@
|
||||
{
|
||||
"id": "obsidian-hider",
|
||||
"name": "Hider",
|
||||
"version": "1.5.1",
|
||||
"minAppVersion": "1.6.0",
|
||||
"version": "1.6.1",
|
||||
"minAppVersion": "1.11.1",
|
||||
"description": "Hide UI elements such as tooltips, status, titlebar and more",
|
||||
"author": "@kepano",
|
||||
"authorUrl": "https://www.twitter.com/kepano",
|
||||
|
||||
10
.obsidian/plugins/obsidian-markmind/main.js
vendored
10
.obsidian/plugins/obsidian-markmind/main.js
vendored
File diff suppressed because one or more lines are too long
@@ -1,7 +1,7 @@
|
||||
{
|
||||
"id": "obsidian-markmind",
|
||||
"name": "Markmind",
|
||||
"version": "3.4.2",
|
||||
"version": "3.4.3",
|
||||
"minAppVersion": "0.9.12",
|
||||
"description": "This is a mindmap , outline tool for obsidian.",
|
||||
"author": "Mark",
|
||||
|
||||
40
.obsidian/plugins/obsidian-markmind/styles.css
vendored
40
.obsidian/plugins/obsidian-markmind/styles.css
vendored
@@ -2616,9 +2616,10 @@ th {
|
||||
box-shadow: 0 0 0 #fff;
|
||||
}
|
||||
|
||||
.mm-mobile-app .mm-node .mm-node-content {
|
||||
/* .mm-mobile-app .mm-node .mm-node-edit,
|
||||
.mm-mobile-app .mm-node .cm-node-text {
|
||||
max-width: 400px;
|
||||
}
|
||||
} */
|
||||
|
||||
.mm-note {
|
||||
position: absolute;
|
||||
@@ -3341,6 +3342,41 @@ th {
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
.mm-embed-link {
|
||||
position: absolute;
|
||||
width: 182px;
|
||||
height: 30px;
|
||||
background-color: #333;
|
||||
border: 1px solid #000;
|
||||
border-radius: 3px;
|
||||
z-index: 1000;
|
||||
cursor: pointer;
|
||||
color: #666;
|
||||
|
||||
}
|
||||
|
||||
.mm-embed-link div {
|
||||
width: 90px;
|
||||
float: left;
|
||||
text-align: center;
|
||||
line-height: 30px;
|
||||
font-size: 12px;
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
}
|
||||
|
||||
.mm-embed-link div span {
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
margin-right: 2px;
|
||||
}
|
||||
|
||||
.mm-embed-link div span svg {
|
||||
fill: #666;
|
||||
}
|
||||
|
||||
/* .mm-link-menu:before {
|
||||
width: 0;
|
||||
height: 0;
|
||||
|
||||
File diff suppressed because one or more lines are too long
@@ -1,11 +1,11 @@
|
||||
{
|
||||
"id": "obsidian-minimal-settings",
|
||||
"name": "Minimal Theme Settings",
|
||||
"version": "8.1.1",
|
||||
"minAppVersion": "1.1.9",
|
||||
"description": "Change the colors, fonts and features of Minimal Theme.",
|
||||
"author": "@kepano",
|
||||
"authorUrl": "https://www.twitter.com/kepano",
|
||||
"fundingUrl": "https://www.buymeacoffee.com/kepano",
|
||||
"isDesktopOnly": false
|
||||
}
|
||||
{
|
||||
"id": "obsidian-minimal-settings",
|
||||
"name": "Minimal Theme Settings",
|
||||
"version": "8.2.1",
|
||||
"minAppVersion": "1.11.1",
|
||||
"description": "Change the colors, fonts and features of Minimal Theme.",
|
||||
"author": "@kepano",
|
||||
"authorUrl": "https://www.twitter.com/kepano",
|
||||
"fundingUrl": "https://www.buymeacoffee.com/kepano",
|
||||
"isDesktopOnly": false
|
||||
}
|
||||
|
||||
@@ -1 +1,3 @@
|
||||
/* Empty */
|
||||
.setting-group > .setting-item-heading .setting-item-description {
|
||||
margin-top: 4px;
|
||||
}
|
||||
19
.obsidian/plugins/quickadd/data.json
vendored
19
.obsidian/plugins/quickadd/data.json
vendored
@@ -546,10 +546,12 @@
|
||||
}
|
||||
],
|
||||
"inputPrompt": "single-line",
|
||||
"persistInputPromptDrafts": true,
|
||||
"useSelectionAsCaptureValue": true,
|
||||
"devMode": false,
|
||||
"templateFolderPath": "templates",
|
||||
"announceUpdates": "all",
|
||||
"version": "2.9.4",
|
||||
"version": "2.10.0",
|
||||
"globalVariables": {},
|
||||
"onePageInputEnabled": false,
|
||||
"disableOnlineFeatures": true,
|
||||
@@ -557,6 +559,17 @@
|
||||
"showCaptureNotification": true,
|
||||
"showInputCancellationNotification": false,
|
||||
"enableTemplatePropertyTypes": false,
|
||||
"dateAliases": {
|
||||
"t": "today",
|
||||
"tm": "tomorrow",
|
||||
"yd": "yesterday",
|
||||
"nw": "next week",
|
||||
"nm": "next month",
|
||||
"ny": "next year",
|
||||
"lw": "last week",
|
||||
"lm": "last month",
|
||||
"ly": "last year"
|
||||
},
|
||||
"ai": {
|
||||
"defaultModel": "Ask me",
|
||||
"defaultSystemPrompt": "As an AI assistant within Obsidian, your primary goal is to help users manage their ideas and knowledge more effectively. Format your responses using Markdown syntax. Please use the [[Obsidian]] link format. You can write aliases for the links by writing [[Obsidian|the alias after the pipe symbol]]. To use mathematical notation, use LaTeX syntax. LaTeX syntax for larger equations should be on separate lines, surrounded with double dollar signs ($$). You can also inline math expressions by wrapping it in $ symbols. For example, use $$w_{ij}^{\text{new}}:=w_{ij}^{\text{current}}+etacdotdelta_jcdot x_{ij}$$ on a separate line, but you can write \"($eta$ = learning rate, $delta_j$ = error term, $x_{ij}$ = input)\" inline.",
|
||||
@@ -610,6 +623,8 @@
|
||||
"addDefaultAIProviders": true,
|
||||
"removeMacroIndirection": true,
|
||||
"migrateFileOpeningSettings": true,
|
||||
"setProviderModelDiscoveryMode": true
|
||||
"setProviderModelDiscoveryMode": true,
|
||||
"backfillFileOpeningDefaults": true,
|
||||
"migrateProviderApiKeysToSecretStorage": true
|
||||
}
|
||||
}
|
||||
151
.obsidian/plugins/quickadd/main.js
vendored
151
.obsidian/plugins/quickadd/main.js
vendored
File diff suppressed because one or more lines are too long
4
.obsidian/plugins/quickadd/manifest.json
vendored
4
.obsidian/plugins/quickadd/manifest.json
vendored
@@ -1,8 +1,8 @@
|
||||
{
|
||||
"id": "quickadd",
|
||||
"name": "QuickAdd",
|
||||
"version": "2.9.4",
|
||||
"minAppVersion": "1.6.0",
|
||||
"version": "2.10.0",
|
||||
"minAppVersion": "1.11.4",
|
||||
"description": "Quickly add new pages or content to your vault.",
|
||||
"author": "Christian B. B. Houmann",
|
||||
"authorUrl": "https://bagerbach.com",
|
||||
|
||||
2
.obsidian/plugins/quickadd/styles.css
vendored
2
.obsidian/plugins/quickadd/styles.css
vendored
File diff suppressed because one or more lines are too long
@@ -222,13 +222,24 @@ function updateDivExtraAttributes(app, settings, link, destName, linkName, filte
|
||||
if (!linkName) {
|
||||
linkName = link.textContent;
|
||||
}
|
||||
if (!!link.parentElement.getAttribute('data-path')) {
|
||||
// File Browser
|
||||
linkName = link.parentElement.getAttribute('data-path');
|
||||
}
|
||||
else if (link.parentElement.getAttribute("class") == "suggestion-content" && !!link.nextElementSibling) {
|
||||
// Auto complete
|
||||
linkName = link.nextElementSibling.textContent + linkName;
|
||||
// Sometimes textContent refers to the alias, missing the base name/path. Then we need to explicitly get the base name/path from attributes.
|
||||
// Check for file name in various attributes, in order of preference
|
||||
const parent = link.parentElement;
|
||||
const attributeSources = [
|
||||
() => parent === null || parent === void 0 ? void 0 : parent.getAttribute('data-path'), // File Browser
|
||||
() => parent === null || parent === void 0 ? void 0 : parent.getAttribute("data-href"), // Bases
|
||||
() => parent === null || parent === void 0 ? void 0 : parent.getAttribute("href"), // Bases
|
||||
() => link.getAttribute("data-href"), // Bases (v1.10+)
|
||||
() => link.getAttribute("href"), // Bases
|
||||
() => (parent === null || parent === void 0 ? void 0 : parent.getAttribute("class")) === "suggestion-content" && link.nextElementSibling
|
||||
? link.nextElementSibling.textContent + linkName : null // Auto complete
|
||||
];
|
||||
for (const source of attributeSources) {
|
||||
const value = source();
|
||||
if (value) {
|
||||
linkName = value;
|
||||
break;
|
||||
}
|
||||
}
|
||||
const dest = app.metadataCache.getFirstLinkpathDest(obsidian.getLinkpath(linkName), destName);
|
||||
if (dest) {
|
||||
@@ -248,7 +259,7 @@ function updatePropertiesPane(propertiesEl, file, app, plugin) {
|
||||
var _a;
|
||||
const frontmatter = (_a = app.metadataCache.getCache(file.path)) === null || _a === void 0 ? void 0 : _a.frontmatter;
|
||||
if (!!frontmatter) {
|
||||
const nodes = propertiesEl.querySelectorAll("div.internal-link > .multi-select-pill-content");
|
||||
const nodes = propertiesEl.querySelectorAll("div.multi-select-pill-content");
|
||||
for (let i = 0; i < nodes.length; ++i) {
|
||||
const el = nodes[i];
|
||||
const linkText = el.textContent;
|
||||
@@ -1279,7 +1290,7 @@ class SuperchargedLinks extends obsidian.Plugin {
|
||||
});
|
||||
// Initialization
|
||||
this.registerEvent(this.app.workspace.on("window-open", (window, win) => this.initModalObservers(this, window.getContainer().doc)));
|
||||
// Update when
|
||||
// Update when
|
||||
// Debounced to prevent lag when writing
|
||||
this.registerEvent(this.app.metadataCache.on('changed', obsidian.debounce(updateLinks, 500, true)));
|
||||
// Update when layout changes
|
||||
@@ -1295,7 +1306,7 @@ class SuperchargedLinks extends obsidian.Plugin {
|
||||
});
|
||||
}
|
||||
initViewObservers(plugin) {
|
||||
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v, _w, _x, _y;
|
||||
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v, _w, _x, _y, _z, _0, _1;
|
||||
// Reset observers
|
||||
plugin.observers.forEach(([observer, type]) => {
|
||||
observer.disconnect();
|
||||
@@ -1325,9 +1336,12 @@ class SuperchargedLinks extends obsidian.Plugin {
|
||||
// @ts-ignore
|
||||
if (((_k = (_j = (_h = (_g = plugin.app) === null || _g === void 0 ? void 0 : _g.internalPlugins) === null || _h === void 0 ? void 0 : _h.plugins) === null || _j === void 0 ? void 0 : _j.bases) === null || _k === void 0 ? void 0 : _k.enabled) && plugin.settings.enableBases) {
|
||||
// console.log('Supercharged links: Enabling bases support');
|
||||
plugin.registerViewType('bases', plugin, '.internal-link');
|
||||
plugin.registerViewType('bases', plugin, 'span.internal-link');
|
||||
plugin.registerViewType('bases', plugin, '.multi-select-pill-content');
|
||||
// For embedded bases
|
||||
plugin.registerViewType('markdown', plugin, 'div.bases-table-cell .internal-link');
|
||||
plugin.registerViewType('markdown', plugin, 'div.bases-table-cell > span.internal-link');
|
||||
plugin.registerViewType('markdown', plugin, 'div.bases-table-cell div.multi-select-pill-content');
|
||||
plugin.registerViewType('markdown', plugin, 'div.bases-cards-line');
|
||||
}
|
||||
if ((_o = (_m = (_l = plugin.app) === null || _l === void 0 ? void 0 : _l.plugins) === null || _m === void 0 ? void 0 : _m.plugins) === null || _o === void 0 ? void 0 : _o['similar-notes']) {
|
||||
plugin.registerViewType('markdown', plugin, '.similar-notes-pane .tree-item-inner', true);
|
||||
@@ -1352,6 +1366,10 @@ class SuperchargedLinks extends obsidian.Plugin {
|
||||
// TODO: No proper unloading!
|
||||
}
|
||||
plugin.registerViewType('file-properties', plugin, 'div.internal-link > .multi-select-pill-content');
|
||||
if ((_1 = (_0 = (_z = plugin.app) === null || _z === void 0 ? void 0 : _z.plugins) === null || _0 === void 0 ? void 0 : _0.plugins) === null || _1 === void 0 ? void 0 : _1['notebook-navigator']) {
|
||||
plugin.registerViewType('notebook-navigator', plugin, 'span.nn-shortcut-label');
|
||||
plugin.registerViewType('notebook-navigator', plugin, 'div.nn-file-name');
|
||||
}
|
||||
}
|
||||
initModalObservers(plugin, doc) {
|
||||
const config = {
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
{
|
||||
"id": "supercharged-links-obsidian",
|
||||
"name": "Supercharged Links",
|
||||
"version": "0.13.6",
|
||||
"minAppVersion": "1.9.10",
|
||||
"version": "0.13.10",
|
||||
"minAppVersion": "1.11.0",
|
||||
"description": "Add properties and menu options to links and style them!",
|
||||
"author": "mdelobelle & Emile",
|
||||
"authorUrl": "https://github.com/mdelobelle/mdelobelle/tree/main",
|
||||
|
||||
52
.obsidian/plugins/tag-word-cloud/main.js
vendored
52
.obsidian/plugins/tag-word-cloud/main.js
vendored
@@ -328,10 +328,14 @@ var require_wordcloud2 = __commonJS({
|
||||
clientX = evt.clientX;
|
||||
clientY = evt.clientY;
|
||||
}
|
||||
var eventX = clientX - rect.left;
|
||||
var eventXvalue = clientX - rect.left;
|
||||
var eventX = eventXvalue < 0 ? 0 : eventXvalue;
|
||||
var eventY = clientY - rect.top;
|
||||
var x = Math.floor(eventX * (canvas.width / rect.width || 1) / g);
|
||||
var y = Math.floor(eventY * (canvas.height / rect.height || 1) / g);
|
||||
if (!infoGrid[x]) {
|
||||
return null;
|
||||
}
|
||||
return infoGrid[x][y];
|
||||
};
|
||||
var wordcloudhover = function wordcloudhover2(evt) {
|
||||
@@ -1481,6 +1485,7 @@ var DEFAULT_SETTINGS = {
|
||||
var TagCloudPluginSettingsTab = class extends import_obsidian.PluginSettingTab {
|
||||
constructor(plugin) {
|
||||
super(plugin.app, plugin);
|
||||
this.icon = "cloudy";
|
||||
}
|
||||
display() {
|
||||
const { containerEl } = this;
|
||||
@@ -1488,27 +1493,30 @@ var TagCloudPluginSettingsTab = class extends import_obsidian.PluginSettingTab {
|
||||
if (!import_wordcloud.default.isSupported) {
|
||||
containerEl.createEl("p", { cls: "cloud-error", text: "Your device is not supported" });
|
||||
}
|
||||
containerEl.createEl("h1", { text: "Tag & Word Cloud Settings" });
|
||||
new import_obsidian.Setting(containerEl).setName("Additional Stopwords").setDesc("Don't show any of these words in the word cloud(one per line)").addTextArea((text) => {
|
||||
text.setValue(this.plugin.settings.stopwords).onChange((value) => __async(this, null, function* () {
|
||||
this.plugin.settings.stopwords = value;
|
||||
yield this.plugin.saveSettings();
|
||||
}));
|
||||
text.inputEl.setAttr("rows", 8);
|
||||
new import_obsidian.SettingGroup(containerEl).setHeading("Wordcloud").addSetting((setting) => {
|
||||
setting.setName("Additional stopwords").setDesc("Don't show any of these words in the word cloud(one per line)").addTextArea((text) => {
|
||||
text.setValue(this.plugin.settings.stopwords).onChange((value) => __async(this, null, function* () {
|
||||
this.plugin.settings.stopwords = value;
|
||||
yield this.plugin.saveSettings();
|
||||
}));
|
||||
text.inputEl.setAttr("rows", 8);
|
||||
});
|
||||
}).addSetting((setting) => {
|
||||
setting.setDesc("").addButton((button) => {
|
||||
button.setButtonText("Recalculate word distribution").onClick(() => __async(this, null, function* () {
|
||||
yield this.plugin.calculateWordDistribution(true);
|
||||
}));
|
||||
});
|
||||
});
|
||||
new import_obsidian.Setting(containerEl).setDesc("").addButton((button) => {
|
||||
button.setButtonText("Recalculate Word Distribution").onClick(() => __async(this, null, function* () {
|
||||
yield this.plugin.calculateWordDistribution(true);
|
||||
}));
|
||||
});
|
||||
new import_obsidian.Setting(containerEl).setName("Tagcloud").setHeading();
|
||||
new import_obsidian.Setting(containerEl).setName("Excluded tags").setDesc("The following tags wil be excluded from all tag clouds (one per line, without the #)").addTextArea((text) => {
|
||||
text.setValue(this.plugin.settings.tags.exclude.join(", "));
|
||||
text.onChange((value) => __async(this, null, function* () {
|
||||
this.plugin.settings.tags.exclude = value.split(", ");
|
||||
yield this.plugin.saveSettings();
|
||||
}));
|
||||
text.inputEl.setAttr("rows", 10);
|
||||
new import_obsidian.SettingGroup(containerEl).setHeading("Tagcloud").addSetting((setting) => {
|
||||
setting.setName("Excluded tags").setDesc("The following tags wil be excluded from all tag clouds (one per line, without the #)").addTextArea((text) => {
|
||||
text.setValue(this.plugin.settings.tags.exclude.join(", "));
|
||||
text.onChange((value) => __async(this, null, function* () {
|
||||
this.plugin.settings.tags.exclude = value.split(", ");
|
||||
yield this.plugin.saveSettings();
|
||||
}));
|
||||
text.inputEl.setAttr("rows", 10);
|
||||
});
|
||||
});
|
||||
}
|
||||
};
|
||||
@@ -2255,3 +2263,5 @@ var TagCloudPlugin3 = class extends import_obsidian4.Plugin {
|
||||
* Copyright 2011 - 2019 Tim Guan-tin Chien and contributors.
|
||||
* Released under the MIT license
|
||||
*/
|
||||
|
||||
/* nosourcemap */
|
||||
@@ -1,8 +1,8 @@
|
||||
{
|
||||
"id": "tag-word-cloud",
|
||||
"name": "Tag & Word Cloud",
|
||||
"version": "1.4.1",
|
||||
"minAppVersion": "1.0.0",
|
||||
"version": "1.5.0",
|
||||
"minAppVersion": "1.11.0",
|
||||
"description": "Show a cloud of your tags/words in a note",
|
||||
"author": "Johannes Theiner",
|
||||
"authorUrl": "https://github.com/joethei",
|
||||
|
||||
38
.obsidian/plugins/templater-obsidian/main.js
vendored
38
.obsidian/plugins/templater-obsidian/main.js
vendored
File diff suppressed because one or more lines are too long
@@ -1,7 +1,7 @@
|
||||
{
|
||||
"id": "templater-obsidian",
|
||||
"name": "Templater",
|
||||
"version": "2.16.4",
|
||||
"version": "2.18.0",
|
||||
"description": "Create and use templates",
|
||||
"minAppVersion": "1.5.0",
|
||||
"author": "SilentVoid",
|
||||
|
||||
1841
.obsidian/plugins/various-complements/main.js
vendored
1841
.obsidian/plugins/various-complements/main.js
vendored
File diff suppressed because one or more lines are too long
@@ -1,8 +1,8 @@
|
||||
{
|
||||
"id": "various-complements",
|
||||
"name": "Various Complements",
|
||||
"version": "10.8.1",
|
||||
"minAppVersion": "0.16.0",
|
||||
"version": "11.0.0",
|
||||
"minAppVersion": "1.11.4",
|
||||
"description": "This plugin enables you to complete words like the auto-completion of IDE",
|
||||
"author": "tadashi-aikawa",
|
||||
"authorUrl": "https://github.com/tadashi-aikawa",
|
||||
|
||||
27
.obsidian/plugins/various-complements/styles.css
vendored
27
.obsidian/plugins/various-complements/styles.css
vendored
@@ -27,16 +27,20 @@
|
||||
.various-complements__settings__nested {
|
||||
padding-left: 30px;
|
||||
}
|
||||
|
||||
.various-complements__settings__header {
|
||||
position: relative;
|
||||
padding-left: 25px;
|
||||
.setting-group .setting-items .various-complements__settings__nested {
|
||||
padding-left: 30px;
|
||||
}
|
||||
.various-complements__settings__header::before {
|
||||
|
||||
h3.various-complements__settings__header {
|
||||
position: relative;
|
||||
padding-left: 1.5rem;
|
||||
margin-top: var(--size-4-6);
|
||||
}
|
||||
h3.various-complements__settings__header::before {
|
||||
position: absolute;
|
||||
width: 20px;
|
||||
width: 1.25rem;
|
||||
margin-top: 3px;
|
||||
margin-left: -25px;
|
||||
margin-left: -1.5rem;
|
||||
filter: invert(0.5) hue-rotate(180deg);
|
||||
}
|
||||
|
||||
@@ -75,13 +79,14 @@
|
||||
}
|
||||
|
||||
.various-complements__settings__popup-hotkey {
|
||||
padding: 1rem 0;
|
||||
/*noinspection CssUnresolvedCustomProperty*/
|
||||
padding: 0.5rem 0;
|
||||
border-top: 1px solid var(--background-modifier-border);
|
||||
}
|
||||
|
||||
.various-complements__settings__popup-hotkey-item {
|
||||
padding-left: 2rem;
|
||||
.setting-group
|
||||
.setting-items
|
||||
.various-complements__settings__popup-hotkey-item {
|
||||
padding: 0.2rem;
|
||||
}
|
||||
|
||||
.various-complements__footer {
|
||||
|
||||
Reference in New Issue
Block a user