roamjs-components 0.71.1 → 0.71.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +1 -1
- package/queries/getPageUidByPageTitle.js +2 -4
- package/queries/getPageUidByPageTitle.js.map +1 -1
- package/types/native.d.ts +3 -0
- package/util/renderWithUnmount.js +12 -0
- package/util/renderWithUnmount.js.map +1 -1
- package/util/runExtension.d.ts +9 -8
- package/util/runExtension.js +83 -24
- package/util/runExtension.js.map +1 -1
package/package.json
CHANGED
|
@@ -1,10 +1,8 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
const tslib_1 = require("tslib");
|
|
4
|
-
const normalizePageTitle_1 = tslib_1.__importDefault(require("./normalizePageTitle"));
|
|
5
3
|
const getPageUidByPageTitle = (title) => {
|
|
6
|
-
var _a
|
|
7
|
-
return ((
|
|
4
|
+
var _a;
|
|
5
|
+
return ((_a = window.roamAlphaAPI.pull("[:block/uid]", [":node/title", title])) === null || _a === void 0 ? void 0 : _a[":block/uid"]) || "";
|
|
8
6
|
};
|
|
9
7
|
exports.default = getPageUidByPageTitle;
|
|
10
8
|
//# sourceMappingURL=getPageUidByPageTitle.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getPageUidByPageTitle.js","sourceRoot":"","sources":["../src/queries/getPageUidByPageTitle.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"getPageUidByPageTitle.js","sourceRoot":"","sources":["../src/queries/getPageUidByPageTitle.ts"],"names":[],"mappings":";;AAAA,MAAM,qBAAqB,GAAG,CAAC,KAAa,EAAU,EAAE;;IACtD,OAAA,CAAA,MAAA,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC,aAAa,EAAE,KAAK,CAAC,CAAC,0CAC9D,YAAY,CACb,KAAI,EAAE,CAAA;CAAA,CAAC;AAEV,kBAAe,qBAAqB,CAAC"}
|
package/types/native.d.ts
CHANGED
|
@@ -11,9 +11,21 @@ const renderWithUnmount = (el, p) => {
|
|
|
11
11
|
if (parentRemoved) {
|
|
12
12
|
unmountObserver.disconnect();
|
|
13
13
|
react_dom_1.default.unmountComponentAtNode(p);
|
|
14
|
+
document.body.dispatchEvent(new CustomEvent(`roamjs:${process.env.ROAMJS_EXTENSION_ID}:unregister`, {
|
|
15
|
+
detail: {
|
|
16
|
+
reactRoots: [p],
|
|
17
|
+
observers: [unmountObserver],
|
|
18
|
+
},
|
|
19
|
+
}));
|
|
14
20
|
}
|
|
15
21
|
});
|
|
16
22
|
unmountObserver.observe(document.body, { childList: true, subtree: true });
|
|
23
|
+
document.body.dispatchEvent(new CustomEvent(`roamjs:${process.env.ROAMJS_EXTENSION_ID}:register`, {
|
|
24
|
+
detail: {
|
|
25
|
+
reactRoots: [p],
|
|
26
|
+
observers: [unmountObserver],
|
|
27
|
+
},
|
|
28
|
+
}));
|
|
17
29
|
};
|
|
18
30
|
exports.default = renderWithUnmount;
|
|
19
31
|
//# sourceMappingURL=renderWithUnmount.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"renderWithUnmount.js","sourceRoot":"","sources":["../src/util/renderWithUnmount.ts"],"names":[],"mappings":";;;AAAA,kEAAiC;AAEjC,MAAM,iBAAiB,GAAG,CAAC,EAAsB,EAAE,CAAc,EAAQ,EAAE;IACzE,mBAAQ,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;IACvB,MAAM,eAAe,GAAG,IAAI,gBAAgB,CAAC,CAAC,EAAE,EAAE,EAAE;QAClD,MAAM,aAAa,GAAG,EAAE;aACrB,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC;aAC1C,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;QACzC,IAAI,aAAa,EAAE;YACjB,eAAe,CAAC,UAAU,EAAE,CAAC;YAC7B,mBAAQ,CAAC,sBAAsB,CAAC,CAAC,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"renderWithUnmount.js","sourceRoot":"","sources":["../src/util/renderWithUnmount.ts"],"names":[],"mappings":";;;AAAA,kEAAiC;AAEjC,MAAM,iBAAiB,GAAG,CAAC,EAAsB,EAAE,CAAc,EAAQ,EAAE;IACzE,mBAAQ,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;IACvB,MAAM,eAAe,GAAG,IAAI,gBAAgB,CAAC,CAAC,EAAE,EAAE,EAAE;QAClD,MAAM,aAAa,GAAG,EAAE;aACrB,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC;aAC1C,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;QACzC,IAAI,aAAa,EAAE;YACjB,eAAe,CAAC,UAAU,EAAE,CAAC;YAC7B,mBAAQ,CAAC,sBAAsB,CAAC,CAAC,CAAC,CAAC;YACnC,QAAQ,CAAC,IAAI,CAAC,aAAa,CACzB,IAAI,WAAW,CACb,UAAU,OAAO,CAAC,GAAG,CAAC,mBAAmB,aAAa,EACtD;gBACE,MAAM,EAAE;oBACN,UAAU,EAAE,CAAC,CAAC,CAAC;oBACf,SAAS,EAAE,CAAC,eAAe,CAAC;iBAC7B;aACF,CACF,CACF,CAAC;SACH;IACH,CAAC,CAAC,CAAC;IACH,eAAe,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;IAC3E,QAAQ,CAAC,IAAI,CAAC,aAAa,CACzB,IAAI,WAAW,CAAC,UAAU,OAAO,CAAC,GAAG,CAAC,mBAAmB,WAAW,EAAE;QACpE,MAAM,EAAE;YACN,UAAU,EAAE,CAAC,CAAC,CAAC;YACf,SAAS,EAAE,CAAC,eAAe,CAAC;SAC7B;KACF,CAAC,CACH,CAAC;AACJ,CAAC,CAAC;AAEF,kBAAe,iBAAiB,CAAC"}
|
package/util/runExtension.d.ts
CHANGED
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
import { OnloadArgs } from "../types/native";
|
|
2
2
|
declare type RunReturn = {
|
|
3
|
-
elements
|
|
4
|
-
|
|
5
|
-
|
|
3
|
+
elements: HTMLElement[];
|
|
4
|
+
reactRoots: HTMLElement[];
|
|
5
|
+
observers: MutationObserver[];
|
|
6
|
+
domListeners: ({
|
|
6
7
|
el: Window;
|
|
7
8
|
type: keyof WindowEventMap;
|
|
8
9
|
listener: (this: Window, ev: WindowEventMap[keyof WindowEventMap]) => void;
|
|
@@ -12,19 +13,19 @@ declare type RunReturn = {
|
|
|
12
13
|
listener: (this: Document, ev: DocumentEventMap[keyof DocumentEventMap]) => void;
|
|
13
14
|
} | {
|
|
14
15
|
el: HTMLElement;
|
|
15
|
-
type: keyof HTMLElementEventMap
|
|
16
|
+
type: keyof HTMLElementEventMap | `roamjs:${string}`;
|
|
16
17
|
listener: (this: HTMLElement, ev: HTMLElementEventMap[keyof HTMLElementEventMap]) => void;
|
|
17
18
|
})[];
|
|
18
|
-
commands
|
|
19
|
-
timeouts
|
|
19
|
+
commands: string[];
|
|
20
|
+
timeouts: {
|
|
20
21
|
timeout: number;
|
|
21
22
|
}[];
|
|
22
23
|
};
|
|
23
24
|
declare const runExtension: (args: string | {
|
|
24
25
|
migratedTo?: string | undefined;
|
|
25
26
|
roamDepot?: boolean | undefined;
|
|
26
|
-
extensionId
|
|
27
|
-
run?: ((args: OnloadArgs) => void | Promise<void> | RunReturn | Promise<RunReturn
|
|
27
|
+
extensionId?: string | undefined;
|
|
28
|
+
run?: ((args: OnloadArgs) => void | Promise<void> | Partial<RunReturn> | Promise<Partial<RunReturn>>) | undefined;
|
|
28
29
|
unload?: (() => void | Promise<void>) | undefined;
|
|
29
30
|
}, _run?: () => void | Promise<void>) => void | {
|
|
30
31
|
onload: (args: OnloadArgs) => void;
|
package/util/runExtension.js
CHANGED
|
@@ -13,10 +13,13 @@ const toConfigPageName_1 = tslib_1.__importDefault(require("./toConfigPageName")
|
|
|
13
13
|
const SimpleAlert_1 = require("../components/SimpleAlert");
|
|
14
14
|
const getSubTree_1 = tslib_1.__importDefault(require("./getSubTree"));
|
|
15
15
|
const writes_1 = require("../writes");
|
|
16
|
+
const react_dom_1 = tslib_1.__importDefault(require("react-dom"));
|
|
16
17
|
const runExtension = (args,
|
|
17
18
|
// @deprecated both args
|
|
18
19
|
_run = Promise.resolve) => {
|
|
19
|
-
const extensionId = typeof args === "string"
|
|
20
|
+
const extensionId = typeof args === "string"
|
|
21
|
+
? args
|
|
22
|
+
: args.extensionId || process.env.ROAMJS_EXTENSION_ID || "";
|
|
20
23
|
const run = typeof args === "string" ? _run : args.run;
|
|
21
24
|
const roamDepot = typeof args === "string"
|
|
22
25
|
? false
|
|
@@ -25,9 +28,56 @@ _run = Promise.resolve) => {
|
|
|
25
28
|
process.env.ROAM_DEPOT === "true";
|
|
26
29
|
const unload = typeof args === "string" ? () => Promise.resolve : args.unload;
|
|
27
30
|
const migratedTo = typeof args === "string" ? "" : args.migratedTo;
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
+
const loaded = {
|
|
32
|
+
elements: [],
|
|
33
|
+
reactRoots: [],
|
|
34
|
+
observers: [],
|
|
35
|
+
domListeners: [],
|
|
36
|
+
commands: [],
|
|
37
|
+
timeouts: [],
|
|
38
|
+
};
|
|
39
|
+
const register = (res) => {
|
|
40
|
+
Object.keys(res).forEach((k) => {
|
|
41
|
+
const key = k;
|
|
42
|
+
const val = res[key];
|
|
43
|
+
// eslint-disable-next-line @typescript-eslint/ban-ts-comment
|
|
44
|
+
// @ts-ignore this is actually safe, but dont know how to coerce
|
|
45
|
+
loaded[key].push(...val);
|
|
46
|
+
});
|
|
47
|
+
};
|
|
48
|
+
const registerListener = ((e) => {
|
|
49
|
+
const res = e.detail;
|
|
50
|
+
register(res);
|
|
51
|
+
});
|
|
52
|
+
document.body.addEventListener(`roamjs:${extensionId}:register`, registerListener);
|
|
53
|
+
loaded.domListeners.push({
|
|
54
|
+
listener: registerListener,
|
|
55
|
+
el: document.body,
|
|
56
|
+
type: `roamjs:${extensionId}:register`,
|
|
57
|
+
});
|
|
58
|
+
const unregisterListener = ((e) => {
|
|
59
|
+
const res = e.detail;
|
|
60
|
+
Object.keys(res).forEach((k) => {
|
|
61
|
+
const key = k;
|
|
62
|
+
const val = res[key];
|
|
63
|
+
if (val) {
|
|
64
|
+
val.forEach((el) => {
|
|
65
|
+
// eslint-disable-next-line @typescript-eslint/ban-ts-comment
|
|
66
|
+
// @ts-ignore this is actually safe, but dont know how to coerce
|
|
67
|
+
const idx = loaded[key].findIndex(el);
|
|
68
|
+
if (idx > -1) {
|
|
69
|
+
loaded[key].splice(idx, 1);
|
|
70
|
+
}
|
|
71
|
+
});
|
|
72
|
+
}
|
|
73
|
+
});
|
|
74
|
+
});
|
|
75
|
+
document.body.addEventListener(`roamjs:${extensionId}:unregister`, unregisterListener);
|
|
76
|
+
loaded.domListeners.push({
|
|
77
|
+
listener: unregisterListener,
|
|
78
|
+
el: document.body,
|
|
79
|
+
type: `roamjs:${extensionId}:unregister`,
|
|
80
|
+
});
|
|
31
81
|
const onload = (args) => {
|
|
32
82
|
var _a, _b, _c, _d, _e, _f;
|
|
33
83
|
if ((_c = (_b = (_a = window.roamjs) === null || _a === void 0 ? void 0 : _a.loaded) === null || _b === void 0 ? void 0 : _b.has) === null || _c === void 0 ? void 0 : _c.call(_b, extensionId)) {
|
|
@@ -42,34 +92,35 @@ _run = Promise.resolve) => {
|
|
|
42
92
|
window.roamjs.loaded.add(extensionId);
|
|
43
93
|
window.roamjs.version[extensionId] =
|
|
44
94
|
process.env.ROAMJS_VERSION || process.env.NODE_ENV || "";
|
|
45
|
-
(0, addStyle_1.default)(`.bp3-button:focus {
|
|
95
|
+
loaded.elements.push((0, addStyle_1.default)(`.bp3-button:focus {
|
|
46
96
|
outline-width: 2px;
|
|
47
|
-
}`, "roamjs-default");
|
|
97
|
+
}`, "roamjs-default"));
|
|
48
98
|
const result = run === null || run === void 0 ? void 0 : run(args);
|
|
49
|
-
const dispatch = () => {
|
|
50
|
-
document.body.dispatchEvent(new Event(`roamjs:${extensionId}:loaded`));
|
|
51
|
-
};
|
|
52
99
|
Promise.resolve(result).then((res) => {
|
|
53
|
-
|
|
54
|
-
|
|
100
|
+
if (res)
|
|
101
|
+
register(res);
|
|
102
|
+
document.body.dispatchEvent(new Event(`roamjs:${extensionId}:loaded`));
|
|
55
103
|
});
|
|
56
104
|
};
|
|
57
105
|
const onunload = () => {
|
|
58
|
-
var _a, _b, _c, _d, _e
|
|
106
|
+
var _a, _b, _c, _d, _e;
|
|
59
107
|
unload === null || unload === void 0 ? void 0 : unload();
|
|
60
108
|
if (loaded) {
|
|
61
|
-
(
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
109
|
+
loaded.elements.forEach((e) => e.remove());
|
|
110
|
+
loaded.reactRoots.forEach((e) => {
|
|
111
|
+
react_dom_1.default.unmountComponentAtNode(e);
|
|
112
|
+
e.remove();
|
|
113
|
+
});
|
|
114
|
+
loaded.observers.forEach((e) => e.disconnect());
|
|
115
|
+
loaded.domListeners.forEach((e) => e.el.removeEventListener(e.type, e.listener));
|
|
116
|
+
loaded.commands.forEach((label) => window.roamAlphaAPI.ui.commandPalette.removeCommand({ label }));
|
|
117
|
+
loaded.timeouts.forEach((e) => window.clearTimeout(e.timeout));
|
|
67
118
|
}
|
|
68
|
-
(
|
|
69
|
-
(
|
|
70
|
-
(
|
|
71
|
-
if (!((
|
|
72
|
-
(
|
|
119
|
+
(_a = window.roamjs) === null || _a === void 0 ? true : delete _a.extension[extensionId];
|
|
120
|
+
(_b = window.roamjs) === null || _b === void 0 ? true : delete _b.version[extensionId];
|
|
121
|
+
(_c = window.roamjs) === null || _c === void 0 ? void 0 : _c.loaded.delete(extensionId);
|
|
122
|
+
if (!((_d = window.roamjs) === null || _d === void 0 ? void 0 : _d.loaded.size)) {
|
|
123
|
+
(_e = document.getElementById("roamjs-default")) === null || _e === void 0 ? void 0 : _e.remove();
|
|
73
124
|
}
|
|
74
125
|
// how to handle adding RoamJS token command? it's own extension depending on dependency management?
|
|
75
126
|
};
|
|
@@ -150,6 +201,7 @@ Please remove the \`{{[[roam/js]]}}\` code that installed this extension and ref
|
|
|
150
201
|
}
|
|
151
202
|
return "";
|
|
152
203
|
};
|
|
204
|
+
let configPageUid = "";
|
|
153
205
|
return onload({
|
|
154
206
|
extensionAPI: {
|
|
155
207
|
settings: {
|
|
@@ -184,6 +236,9 @@ Please remove the \`{{[[roam/js]]}}\` code that installed this extension and ref
|
|
|
184
236
|
title: s.id,
|
|
185
237
|
description: s.description,
|
|
186
238
|
Panel: SelectPanel_1.default,
|
|
239
|
+
options: {
|
|
240
|
+
items: s.action.items,
|
|
241
|
+
},
|
|
187
242
|
};
|
|
188
243
|
}
|
|
189
244
|
else if (s.action.type === "switch") {
|
|
@@ -209,13 +264,17 @@ Please remove the \`{{[[roam/js]]}}\` code that installed this extension and ref
|
|
|
209
264
|
// typescript why do I need this here
|
|
210
265
|
}),
|
|
211
266
|
}).then(({ observer, pageUid }) => {
|
|
212
|
-
|
|
267
|
+
if (observer)
|
|
268
|
+
loaded.observers.push(observer);
|
|
213
269
|
configPageUid = pageUid;
|
|
214
270
|
});
|
|
215
271
|
},
|
|
216
272
|
},
|
|
217
273
|
},
|
|
218
274
|
},
|
|
275
|
+
extension: {
|
|
276
|
+
version: process.env.ROAMJS_VERSION || "",
|
|
277
|
+
},
|
|
219
278
|
});
|
|
220
279
|
}
|
|
221
280
|
};
|
package/util/runExtension.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runExtension.js","sourceRoot":"","sources":["../src/util/runExtension.ts"],"names":[],"mappings":";;;AAAA,yDAAgE;AAChE,iGAAiE;AACjE,6FAA6D;AAC7D,iGAAiE;AACjE,6FAA6D;AAE7D,uEAAuC;AACvC,yGAAyE;AACzE,gFAAgD;AAChD,kFAAkD;AAClD,2DAAwE;AAExE,sEAAsC;AACtC,sCAAqD;
|
|
1
|
+
{"version":3,"file":"runExtension.js","sourceRoot":"","sources":["../src/util/runExtension.ts"],"names":[],"mappings":"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"}
|