Skip to content

Commit 2d463c6

Browse files
committed
4.4.2
- Custom admonitions that have commands registered will now properly unregister those commands when deleted - Command icons are now symbols to prevent unintentional collisions with other plugin icons - Additional container CSS is now explicitly for the admonition plugin
1 parent 48b89b4 commit 2d463c6

File tree

7 files changed

+20
-16
lines changed

7 files changed

+20
-16
lines changed

manifest.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
{
22
"id": "obsidian-admonition",
33
"name": "Admonition",
4-
"version": "4.4.1",
4+
"version": "4.4.2",
55
"minAppVersion": "0.11.0",
66
"description": "Admonition block-styled content for Obsidian.md",
77
"author": "Jeremy Valentine",

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "obsidian-admonition",
3-
"version": "4.4.1",
3+
"version": "4.4.2",
44
"description": "Admonition block-styled content for Obsidian.md",
55
"main": "main.js",
66
"scripts": {

src/constants.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
11
import { Admonition } from "../@types/types";
22

33
export const ADD_ADMONITION_COMMAND_ICON = `<svg viewBox="0 0 100 100" class="add-admonition-command"><path fill="currentColor" stroke="currentColor" d="M37,16c-4.4,0-8.3,3.3-9.2,7.6l-11.6,52c-0.5,2.2,0,4.3,1.2,5.9c1.2,1.6,3.2,2.6,5.4,2.6H79c4.4,0,8.3-3.3,9.2-7.6 l11.6-52c0.5-2.2,0-4.3-1.2-5.9C97.4,17,95.4,16,93.2,16L37,16z M37,20h56.2c1.1,0,1.8,0.4,2.2,1c0.5,0.6,0.7,1.4,0.4,2.6l-1,4.4 H30.8l0.8-3.6C32.1,22.2,34.8,20,37,20z M29.9,32H94l-9.6,43.6C83.9,77.8,81.2,80,79,80H22.8c-1.1,0-1.8-0.4-2.2-1 c-0.5-0.6-0.7-1.4-0.4-2.6L29.9,32z M0,36v4h19.6l0.9-4L0,36z M36.7,38c-0.8,0.1-1.4,0.7-1.6,1.5l-3.5,14c-0.2,0.6,0,1.2,0.4,1.7 c0.4,0.5,1,0.8,1.6,0.8H81c0.9,0,1.7-0.6,1.9-1.5l3.5-14c0.2-0.6,0-1.3-0.4-1.8c-0.4-0.5-1-0.8-1.6-0.8H37.1c-0.1,0-0.1,0-0.2,0 C36.9,38,36.8,38,36.7,38L36.7,38z M38.7,42h43.2l-2.4,10H36.2L38.7,42z M0,52v4h16l0.9-4H0z M0,68v4h12.4l0.9-4H0z"></path><circle fill="white" transform="translate(50 50) scale(3 3)" cx="8" cy="8" r="8"/><path fill="green" transform="translate(50 50) scale(3 3)" d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM8.5 4.5a.5.5 0 0 0-1 0v3h-3a.5.5 0 0 0 0 1h3v3a.5.5 0 0 0 1 0v-3h3a.5.5 0 0 0 0-1h-3v-3z"/></svg>`;
4-
export const ADD_COMMAND_NAME = "add-admonition-command-icon";
4+
export const ADD_COMMAND_NAME = Symbol("add-command");
55

66
export const REMOVE_ADMONITION_COMMAND_ICON = `<svg viewBox="0 0 100 100" class="remove-admonition-command"><path fill="currentColor" stroke="currentColor" d="M37,16c-4.4,0-8.3,3.3-9.2,7.6l-11.6,52c-0.5,2.2,0,4.3,1.2,5.9c1.2,1.6,3.2,2.6,5.4,2.6H79c4.4,0,8.3-3.3,9.2-7.6 l11.6-52c0.5-2.2,0-4.3-1.2-5.9C97.4,17,95.4,16,93.2,16L37,16z M37,20h56.2c1.1,0,1.8,0.4,2.2,1c0.5,0.6,0.7,1.4,0.4,2.6l-1,4.4 H30.8l0.8-3.6C32.1,22.2,34.8,20,37,20z M29.9,32H94l-9.6,43.6C83.9,77.8,81.2,80,79,80H22.8c-1.1,0-1.8-0.4-2.2-1 c-0.5-0.6-0.7-1.4-0.4-2.6L29.9,32z M0,36v4h19.6l0.9-4L0,36z M36.7,38c-0.8,0.1-1.4,0.7-1.6,1.5l-3.5,14c-0.2,0.6,0,1.2,0.4,1.7 c0.4,0.5,1,0.8,1.6,0.8H81c0.9,0,1.7-0.6,1.9-1.5l3.5-14c0.2-0.6,0-1.3-0.4-1.8c-0.4-0.5-1-0.8-1.6-0.8H37.1c-0.1,0-0.1,0-0.2,0 C36.9,38,36.8,38,36.7,38L36.7,38z M38.7,42h43.2l-2.4,10H36.2L38.7,42z M0,52v4h16l0.9-4H0z M0,68v4h12.4l0.9-4H0z"></path><circle fill="white" transform="translate(50 50) scale(3 3)" cx="8" cy="8" r="8"/><path fill="#dc3545" transform="translate(50 50) scale(3 3)" d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM4.5 7.5a.5.5 0 0 0 0 1h7a.5.5 0 0 0 0-1h-7z"/></svg>`;
7-
export const REMOVE_COMMAND_NAME = "remove-admonition-command-icon";
7+
export const REMOVE_COMMAND_NAME = Symbol("remove-command");
88

99

1010
export const ADMONITION_MAP: Record<string, Admonition> = {

src/main.css

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -127,28 +127,28 @@ details.admonition[open] > summary > .collapser > .handle {
127127
}
128128

129129
/** Settings */
130-
.additional-container > .setting-item:not(.setting-item-heading) {
130+
.admonition-setting-additional-container > .setting-item:not(.setting-item-heading) {
131131
border: 0px;
132132
}
133133

134-
.additional-container {
134+
.admonition-setting-additional-container {
135135
border-bottom: 1px solid var(--background-modifier-border);
136136
border-top: 1px solid var(--background-modifier-border);
137137
padding: 18px 0 0 0;
138138
}
139139

140-
.additional-container > .setting-item-heading:only-child {
140+
.admonition-setting-additional-container > .setting-item-heading:only-child {
141141
padding-bottom: 18px;
142142
}
143143

144-
.additional-container > .additional {
144+
.admonition-setting-additional-container > .additional {
145145
margin: 6px 12px;
146146
}
147-
.additional-container > .additional > .setting-item {
147+
.admonition-setting-additional-container > .additional > .setting-item {
148148
border-top: 0;
149149
padding-top: 9px;
150150
}
151-
.additional-container
151+
.admonition-setting-additional-container
152152
> .additional
153153
> .setting-item
154154
> .setting-item-control

src/main.ts

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -143,6 +143,10 @@ export default class ObsidianAdmonition
143143
this.turnOffSyntaxHighlighting([admonition.type]);
144144
}
145145

146+
if (admonition.command) {
147+
this.unregisterCommandsFor(admonition);
148+
}
149+
146150
await this.saveSettings();
147151
}
148152
async onload(): Promise<void> {
@@ -152,8 +156,8 @@ export default class ObsidianAdmonition
152156

153157
this.addSettingTab(new AdmonitionSetting(this.app, this));
154158

155-
addIcon(ADD_COMMAND_NAME, ADD_ADMONITION_COMMAND_ICON);
156-
addIcon(REMOVE_COMMAND_NAME, REMOVE_ADMONITION_COMMAND_ICON);
159+
addIcon(ADD_COMMAND_NAME.toString(), ADD_ADMONITION_COMMAND_ICON);
160+
addIcon(REMOVE_COMMAND_NAME.toString(), REMOVE_ADMONITION_COMMAND_ICON);
157161

158162
Object.keys(this.admonitions).forEach((type) => {
159163
this.registerMarkdownCodeBlockProcessor(

src/settings.ts

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -129,7 +129,7 @@ export default class AdmonitionSetting extends PluginSettingTab {
129129
});
130130

131131
const additionalContainer = containerEl.createDiv(
132-
"additional-container"
132+
"admonition-setting-additional-container"
133133
);
134134
new Setting(additionalContainer)
135135
.setName("Add New")
@@ -176,7 +176,7 @@ export default class AdmonitionSetting extends PluginSettingTab {
176176

177177
if (!admonition.command) {
178178
setting.addExtraButton((b) => {
179-
b.setIcon(ADD_COMMAND_NAME)
179+
b.setIcon(ADD_COMMAND_NAME.toString())
180180
.setTooltip("Register Commands")
181181
.onClick(async () => {
182182
this.plugin.registerCommandsFor(admonition);
@@ -186,7 +186,7 @@ export default class AdmonitionSetting extends PluginSettingTab {
186186
});
187187
} else {
188188
setting.addExtraButton((b) => {
189-
b.setIcon(REMOVE_COMMAND_NAME)
189+
b.setIcon(REMOVE_COMMAND_NAME.toString())
190190
.setTooltip("Unregister Commands")
191191
.onClick(async () => {
192192
this.plugin.unregisterCommandsFor(admonition);

versions.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,5 +9,5 @@
99
"4.1.7": "0.11.0",
1010
"4.2.1": "0.11.0",
1111
"4.3.1": "0.12.0",
12-
"4.4.1": "0.12.2"
12+
"4.4.2": "0.12.2"
1313
}

0 commit comments

Comments
 (0)