@ngroznykh/papirus 0.5.0 → 0.5.1
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.
|
@@ -46,6 +46,11 @@ export interface ContextMenuOptions {
|
|
|
46
46
|
className?: string;
|
|
47
47
|
minWidth?: number;
|
|
48
48
|
closeOnSelect?: boolean;
|
|
49
|
+
/**
|
|
50
|
+
* If set, string icons (icon names) are rendered as <img src={iconToUrl(name)}>.
|
|
51
|
+
* Use when the host app uses SVG icons instead of Material Symbols font.
|
|
52
|
+
*/
|
|
53
|
+
iconToUrl?: (iconName: string) => string;
|
|
49
54
|
}
|
|
50
55
|
export interface ContextMenuEvents {
|
|
51
56
|
open: [target: ContextMenuTarget];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ContextMenuManager.d.ts","sourceRoot":"","sources":["../../src/core/ContextMenuManager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACrD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACzD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AACrC,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAC;AAE5C,MAAM,MAAM,eAAe,GACvB,MAAM,GACN;IACE,IAAI,EAAE,MAAM,GAAG,KAAK,GAAG,MAAM,CAAC;IAC9B,KAAK,EAAE,MAAM,CAAC;CACf,CAAC;AAEN,MAAM,WAAW,eAAe;IAC9B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,eAAe,CAAC;IACvB,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,iBAAiB,KAAK,IAAI,CAAC;IAC7C,KAAK,CAAC,EAAE,eAAe,EAAE,CAAC;IAC1B,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAED,MAAM,MAAM,iBAAiB,GACzB;IACE,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,IAAI,CAAC;IACX,KAAK,EAAE,KAAK,CAAC;IACb,WAAW,EAAE,KAAK,CAAC;IACnB,aAAa,EAAE,UAAU,CAAC;CAC3B,GACD;IACE,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,IAAI,CAAC;IACX,KAAK,EAAE,KAAK,CAAC;IACb,WAAW,EAAE,KAAK,CAAC;IACnB,aAAa,EAAE,UAAU,CAAC;CAC3B,GACD;IACE,IAAI,EAAE,QAAQ,CAAC;IACf,KAAK,EAAE,KAAK,CAAC;IACb,WAAW,EAAE,KAAK,CAAC;IACnB,aAAa,EAAE,UAAU,CAAC;CAC3B,CAAC;AAEN,MAAM,MAAM,mBAAmB,GAAG,eAAe,EAAE,GAAG,CAAC,CAAC,MAAM,EAAE,iBAAiB,KAAK,eAAe,EAAE,CAAC,CAAC;AAEzG,MAAM,WAAW,iBAAiB;IAChC,IAAI,CAAC,EAAE,mBAAmB,CAAC;IAC3B,IAAI,CAAC,EAAE,mBAAmB,CAAC;IAC3B,MAAM,CAAC,EAAE,mBAAmB,CAAC;CAC9B;AAED,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,iBAAiB,CAAC;IACxB,SAAS,CAAC,EAAE,WAAW,CAAC;IACxB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,aAAa,CAAC,EAAE,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"ContextMenuManager.d.ts","sourceRoot":"","sources":["../../src/core/ContextMenuManager.ts"],"names":[],"mappings":"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"}
|
package/dist/papirus.js
CHANGED
|
@@ -6195,6 +6195,7 @@ class ContextMenuManager extends EventEmitter {
|
|
|
6195
6195
|
iconEl.style.alignItems = "center";
|
|
6196
6196
|
iconEl.style.justifyContent = "center";
|
|
6197
6197
|
iconEl.style.textAlign = "center";
|
|
6198
|
+
iconEl.style.flexShrink = "0";
|
|
6198
6199
|
if (!icon) {
|
|
6199
6200
|
iconEl.textContent = "";
|
|
6200
6201
|
return iconEl;
|
|
@@ -6202,6 +6203,14 @@ class ContextMenuManager extends EventEmitter {
|
|
|
6202
6203
|
if (typeof icon === "string") {
|
|
6203
6204
|
if (this.isSvgString(icon)) {
|
|
6204
6205
|
iconEl.innerHTML = icon;
|
|
6206
|
+
} else if (this.options.iconToUrl) {
|
|
6207
|
+
const img = document.createElement("img");
|
|
6208
|
+
img.src = this.options.iconToUrl(icon);
|
|
6209
|
+
img.alt = "";
|
|
6210
|
+
img.style.width = "16px";
|
|
6211
|
+
img.style.height = "16px";
|
|
6212
|
+
img.style.objectFit = "contain";
|
|
6213
|
+
iconEl.appendChild(img);
|
|
6205
6214
|
} else {
|
|
6206
6215
|
iconEl.classList.add("material-symbols-outlined");
|
|
6207
6216
|
iconEl.style.fontSize = "16px";
|
|
@@ -6211,6 +6220,14 @@ class ContextMenuManager extends EventEmitter {
|
|
|
6211
6220
|
}
|
|
6212
6221
|
if (icon.type === "svg" || icon.type === "html") {
|
|
6213
6222
|
iconEl.innerHTML = icon.value;
|
|
6223
|
+
} else if (this.options.iconToUrl) {
|
|
6224
|
+
const img = document.createElement("img");
|
|
6225
|
+
img.src = this.options.iconToUrl(icon.value);
|
|
6226
|
+
img.alt = "";
|
|
6227
|
+
img.style.width = "16px";
|
|
6228
|
+
img.style.height = "16px";
|
|
6229
|
+
img.style.objectFit = "contain";
|
|
6230
|
+
iconEl.appendChild(img);
|
|
6214
6231
|
} else {
|
|
6215
6232
|
iconEl.classList.add("material-symbols-outlined");
|
|
6216
6233
|
iconEl.style.fontSize = "16px";
|