@ngyewch/bulma-dialog 0.2.0 → 0.3.0
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/dist/bulma-dialog.js +7 -1
- package/dist/bulma-dialog.js.map +1 -1
- package/dist/dialog.d.ts +1 -0
- package/dist/index.d.ts +2 -2
- package/package.json +1 -1
package/dist/bulma-dialog.js
CHANGED
|
@@ -43,7 +43,13 @@ function e(e) {
|
|
|
43
43
|
document.body.appendChild(r);
|
|
44
44
|
});
|
|
45
45
|
}
|
|
46
|
+
function t(e, t) {
|
|
47
|
+
let n = document.createElement("a");
|
|
48
|
+
return n.classList.add("card-footer-item"), n.innerText = e, t !== void 0 && n.addEventListener("click", (e) => {
|
|
49
|
+
e.preventDefault(), e.stopPropagation(), t(e);
|
|
50
|
+
}), n;
|
|
51
|
+
}
|
|
46
52
|
//#endregion
|
|
47
|
-
export { e as showDialog };
|
|
53
|
+
export { t as createDialogFooterItem, e as showDialog };
|
|
48
54
|
|
|
49
55
|
//# sourceMappingURL=bulma-dialog.js.map
|
package/dist/bulma-dialog.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bulma-dialog.js","names":["showDialog","modalEl","options","key","value","modalBackgroundEl","reject","modalContentEl","modalCardEl","modalCardHeaderEl","modalCardTitleEl","closeButtonEl","closeSpanEl","modalCardContentEl","resolve","reason","modalCardFooterEl"],"sources":["../src/dialog.ts"],"sourcesContent":["export interface DialogOptions<T> {\n title?: string;\n hideCloseButton?: boolean;\n disableOutsideClick?: boolean;\n mountContent?: (containerElement: HTMLElement, resolve: (value: T | PromiseLike<T>) => void, reject: (reason?: any) => void) => void;\n mountFooter?: (containerElement: HTMLElement, resolve: (value: T | PromiseLike<T>) => void, reject: (reason?: any) => void) => void;\n classes?: string[];\n styles?: Record<string, string>;\n}\n\nexport function showDialog<T>(options: DialogOptions<T>): Promise<T> {\n return new Promise<T>((resolve, reject) => {\n const modalEl = document.createElement('div');\n modalEl.classList.add('modal', 'is-active');\n if (options.classes !== undefined) {\n modalEl.classList.add(...options.classes);\n }\n if (options.styles !== undefined) {\n (Object.entries(options.styles) as [string, string][])\n .forEach(([key, value]) => {\n modalEl.style.setProperty(key, value);\n });\n }\n\n const modalBackgroundEl = document.createElement('div');\n modalBackgroundEl.classList.add('modal-background');\n if ((options.disableOutsideClick === undefined) || !options.disableOutsideClick) {\n modalBackgroundEl.onclick = () => {\n document.body.removeChild(modalEl);\n reject();\n };\n }\n modalEl.appendChild(modalBackgroundEl);\n\n const modalContentEl = document.createElement('div');\n modalContentEl.classList.add('modal-content');\n modalEl.appendChild(modalContentEl);\n\n const modalCardEl = document.createElement('div');\n modalCardEl.classList.add('card');\n modalContentEl.appendChild(modalCardEl);\n\n const modalCardHeaderEl = document.createElement('header');\n modalCardHeaderEl.classList.add('card-header');\n const modalCardTitleEl = document.createElement('p');\n modalCardTitleEl.classList.add('card-header-title');\n if (options.title !== undefined) {\n modalCardTitleEl.innerText = options.title;\n }\n modalCardHeaderEl.appendChild(modalCardTitleEl);\n if ((options.hideCloseButton === undefined) || !options.hideCloseButton) {\n const closeButtonEl = document.createElement('button');\n closeButtonEl.classList.add('card-header-icon');\n closeButtonEl.setAttribute('aria-label', 'close');\n closeButtonEl.onclick = () => {\n document.body.removeChild(modalEl);\n reject();\n };\n modalCardHeaderEl.appendChild(closeButtonEl);\n const closeSpanEl = document.createElement('span');\n closeSpanEl.classList.add('delete');\n closeButtonEl.appendChild(closeSpanEl);\n }\n modalCardEl.appendChild(modalCardHeaderEl);\n\n if (options.mountContent !== undefined) {\n const modalCardContentEl = document.createElement('div');\n modalCardContentEl.classList.add('card-content');\n modalCardEl.appendChild(modalCardContentEl);\n options.mountContent(modalCardContentEl,\n (value: T | PromiseLike<T>): void => {\n document.body.removeChild(modalEl);\n resolve(value);\n },\n (reason?: any): void => {\n document.body.removeChild(modalEl);\n reject(reason);\n });\n }\n\n if (options.mountFooter !== undefined) {\n const modalCardFooterEl = document.createElement('footer');\n modalCardFooterEl.classList.add('card-footer');\n modalCardEl.appendChild(modalCardFooterEl);\n options.mountFooter(modalCardFooterEl,\n (value: T | PromiseLike<T>): void => {\n document.body.removeChild(modalEl);\n resolve(value);\n },\n (reason?: any): void => {\n document.body.removeChild(modalEl);\n reject(reason);\n });\n }\n\n document.body.appendChild(modalEl);\n });\n}\n"],"mappings":";AAUA,SAAgBA,EAAc,GAAuC;CACjE,OAAO,IAAI,SAAY,GAAS,MAAW;EACvC,IAAMC,IAAU,SAAS,cAAc,KAAK;EAK5C,AAJAA,EAAQ,UAAU,IAAI,SAAS,WAAW,GACtCC,EAAQ,YAAY,KAAA,KACpBD,EAAQ,UAAU,IAAI,GAAGC,EAAQ,OAAO,GAExCA,EAAQ,WAAW,KAAA,KACnB,OAAQ,QAAQA,EAAQ,MAAM,CAAC,CAC1B,SAAS,CAACC,GAAKC,OAAW;GACvB,EAAQ,MAAM,YAAYD,GAAKC,CAAK;EACxC,CAAC;EAGT,IAAMC,IAAoB,SAAS,cAAc,KAAK;EAQtD,AAPAA,EAAkB,UAAU,IAAI,kBAAkB,IAC7CH,EAAQ,wBAAwB,KAAA,KAAc,CAACA,EAAQ,yBACxD,EAAkB,gBAAgB;GAE9B,AADA,SAAS,KAAK,YAAYD,CAAO,GACjCK,EAAO;EACX,IAEJL,EAAQ,YAAYI,CAAiB;EAErC,IAAME,IAAiB,SAAS,cAAc,KAAK;EAEnD,AADAA,EAAe,UAAU,IAAI,eAAe,GAC5CN,EAAQ,YAAYM,CAAc;EAElC,IAAMC,IAAc,SAAS,cAAc,KAAK;EAEhD,AADAA,EAAY,UAAU,IAAI,MAAM,GAChCD,EAAe,YAAYC,CAAW;EAEtC,IAAMC,IAAoB,SAAS,cAAc,QAAQ;EACzD,EAAkB,UAAU,IAAI,aAAa;EAC7C,IAAMC,IAAmB,SAAS,cAAc,GAAG;EAMnD,IALAA,EAAiB,UAAU,IAAI,mBAAmB,GAC9CR,EAAQ,UAAU,KAAA,MAClB,EAAiB,YAAYA,EAAQ,QAEzCO,EAAkB,YAAYC,CAAgB,GACzCR,EAAQ,oBAAoB,KAAA,KAAc,CAACA,EAAQ,iBAAiB;GACrE,IAAMS,IAAgB,SAAS,cAAc,QAAQ;GAOrD,AANAA,EAAc,UAAU,IAAI,kBAAkB,GAC9CA,EAAc,aAAa,cAAc,OAAO,GAChD,EAAc,gBAAgB;IAE1B,AADA,SAAS,KAAK,YAAYV,CAAO,GACjCK,EAAO;GACX,GACAG,EAAkB,YAAYE,CAAa;GAC3C,IAAMC,IAAc,SAAS,cAAc,MAAM;GAEjD,AADAA,EAAY,UAAU,IAAI,QAAQ,GAClCD,EAAc,YAAYC,CAAW;EACzC;EAGA,IAFAJ,EAAY,YAAYC,CAAiB,GAErCP,EAAQ,iBAAiB,KAAA,GAAW;GACpC,IAAMW,IAAqB,SAAS,cAAc,KAAK;GAGvD,AAFAA,EAAmB,UAAU,IAAI,cAAc,GAC/CL,EAAY,YAAYK,CAAkB,GAC1CX,EAAQ,aAAaW,IAChB,MAAoC;IAEjC,AADA,SAAS,KAAK,YAAYZ,CAAO,GACjCa,EAAQV,CAAK;GACjB,IACC,MAAuB;IAEpB,AADA,SAAS,KAAK,YAAYH,CAAO,GACjCK,EAAOS,CAAM;GACjB,CAAC;EACT;EAEA,IAAIb,EAAQ,gBAAgB,KAAA,GAAW;GACnC,IAAMc,IAAoB,SAAS,cAAc,QAAQ;GAGzD,AAFAA,EAAkB,UAAU,IAAI,aAAa,GAC7CR,EAAY,YAAYQ,CAAiB,GACzCd,EAAQ,YAAYc,IACf,MAAoC;IAEjC,AADA,SAAS,KAAK,YAAYf,CAAO,GACjCa,EAAQV,CAAK;GACjB,IACC,MAAuB;IAEpB,AADA,SAAS,KAAK,YAAYH,CAAO,GACjCK,EAAOS,CAAM;GACjB,CAAC;EACT;EAEA,SAAS,KAAK,YAAYd,CAAO;CACrC,CAAC;AACL"}
|
|
1
|
+
{"version":3,"file":"bulma-dialog.js","names":["showDialog","modalEl","options","key","value","modalBackgroundEl","reject","modalContentEl","modalCardEl","modalCardHeaderEl","modalCardTitleEl","closeButtonEl","closeSpanEl","modalCardContentEl","resolve","reason","modalCardFooterEl","createDialogFooterItem","footerItem","label","onclick"],"sources":["../src/dialog.ts"],"sourcesContent":["export interface DialogOptions<T> {\n title?: string;\n hideCloseButton?: boolean;\n disableOutsideClick?: boolean;\n mountContent?: (containerElement: HTMLElement, resolve: (value: T | PromiseLike<T>) => void, reject: (reason?: any) => void) => void;\n mountFooter?: (containerElement: HTMLElement, resolve: (value: T | PromiseLike<T>) => void, reject: (reason?: any) => void) => void;\n classes?: string[];\n styles?: Record<string, string>;\n}\n\nexport function showDialog<T>(options: DialogOptions<T>): Promise<T> {\n return new Promise<T>((resolve, reject) => {\n const modalEl = document.createElement('div');\n modalEl.classList.add('modal', 'is-active');\n if (options.classes !== undefined) {\n modalEl.classList.add(...options.classes);\n }\n if (options.styles !== undefined) {\n (Object.entries(options.styles) as [string, string][])\n .forEach(([key, value]) => {\n modalEl.style.setProperty(key, value);\n });\n }\n\n const modalBackgroundEl = document.createElement('div');\n modalBackgroundEl.classList.add('modal-background');\n if ((options.disableOutsideClick === undefined) || !options.disableOutsideClick) {\n modalBackgroundEl.onclick = () => {\n document.body.removeChild(modalEl);\n reject();\n };\n }\n modalEl.appendChild(modalBackgroundEl);\n\n const modalContentEl = document.createElement('div');\n modalContentEl.classList.add('modal-content');\n modalEl.appendChild(modalContentEl);\n\n const modalCardEl = document.createElement('div');\n modalCardEl.classList.add('card');\n modalContentEl.appendChild(modalCardEl);\n\n const modalCardHeaderEl = document.createElement('header');\n modalCardHeaderEl.classList.add('card-header');\n const modalCardTitleEl = document.createElement('p');\n modalCardTitleEl.classList.add('card-header-title');\n if (options.title !== undefined) {\n modalCardTitleEl.innerText = options.title;\n }\n modalCardHeaderEl.appendChild(modalCardTitleEl);\n if ((options.hideCloseButton === undefined) || !options.hideCloseButton) {\n const closeButtonEl = document.createElement('button');\n closeButtonEl.classList.add('card-header-icon');\n closeButtonEl.setAttribute('aria-label', 'close');\n closeButtonEl.onclick = () => {\n document.body.removeChild(modalEl);\n reject();\n };\n modalCardHeaderEl.appendChild(closeButtonEl);\n const closeSpanEl = document.createElement('span');\n closeSpanEl.classList.add('delete');\n closeButtonEl.appendChild(closeSpanEl);\n }\n modalCardEl.appendChild(modalCardHeaderEl);\n\n if (options.mountContent !== undefined) {\n const modalCardContentEl = document.createElement('div');\n modalCardContentEl.classList.add('card-content');\n modalCardEl.appendChild(modalCardContentEl);\n options.mountContent(modalCardContentEl,\n (value: T | PromiseLike<T>): void => {\n document.body.removeChild(modalEl);\n resolve(value);\n },\n (reason?: any): void => {\n document.body.removeChild(modalEl);\n reject(reason);\n });\n }\n\n if (options.mountFooter !== undefined) {\n const modalCardFooterEl = document.createElement('footer');\n modalCardFooterEl.classList.add('card-footer');\n modalCardEl.appendChild(modalCardFooterEl);\n options.mountFooter(modalCardFooterEl,\n (value: T | PromiseLike<T>): void => {\n document.body.removeChild(modalEl);\n resolve(value);\n },\n (reason?: any): void => {\n document.body.removeChild(modalEl);\n reject(reason);\n });\n }\n\n document.body.appendChild(modalEl);\n });\n}\n\nexport function createDialogFooterItem(label: string, onclick?: (e: PointerEvent) => void): HTMLElement {\n const footerItem = document.createElement('a');\n footerItem.classList.add('card-footer-item');\n footerItem.innerText = label;\n if (onclick !== undefined) {\n footerItem.addEventListener('click', e => {\n e.preventDefault();\n e.stopPropagation();\n onclick(e);\n });\n }\n return footerItem;\n}\n"],"mappings":"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"}
|
package/dist/dialog.d.ts
CHANGED
package/dist/index.d.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { DialogOptions, showDialog } from './dialog.js';
|
|
2
|
-
export { type DialogOptions, showDialog, };
|
|
1
|
+
import { DialogOptions, createDialogFooterItem, showDialog } from './dialog.js';
|
|
2
|
+
export { type DialogOptions, createDialogFooterItem, showDialog, };
|