{"version":3,"file":"/js/toaster.js","mappings":"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","sources":["webpack://indoconnex/./node_modules/bs5-utils/src/js/components/Toast.js","webpack://indoconnex/./node_modules/bs5-utils/src/js/components/Snack.js","webpack://indoconnex/./node_modules/bs5-utils/src/js/components/Modal.js","webpack://indoconnex/./node_modules/bs5-utils/src/js/Bs5Utils.js","webpack://indoconnex/./resources/js/toaster.js"],"sourcesContent":["import Bs5Utils from \"../Bs5Utils\";\r\n\r\nexport default class Toast {\r\n /**\r\n * A counter for the Toasts\r\n * @type {number}\r\n */\r\n #count = 0;\r\n\r\n /**\r\n * Display a toast for alerts\r\n * @param type - the theme of the snack\r\n * @param icon - Set an icon in the top-left corner, you can pass HTML directly\r\n * @param title - the title of the of the toast\r\n * @param subtitle - the subtitle of the toast\r\n * @param content - the content of the toast\r\n * @param buttons - the action buttons of the toast\r\n * @param delay - in ms, if specified the snack will autohide after the specified amount\r\n * @param dismissible - set whether the dismiss button should show\r\n */\r\n show({\r\n type,\r\n icon = '',\r\n title,\r\n subtitle = '',\r\n content = '',\r\n buttons = [],\r\n delay = 0,\r\n dismissible = true\r\n }) {\r\n this.#count++;\r\n\r\n const style = Bs5Utils.defaults.styles[type],\r\n btnCloseStyles = style.btnClose.join(' '),\r\n borderStyles = style.border,\r\n toast = document.createElement('div');\r\n\r\n toast.setAttribute('id', `toast-${this.#count}`);\r\n toast.setAttribute('role', 'alert');\r\n toast.setAttribute('aria-live', 'assertive');\r\n toast.setAttribute('aria-atomic', 'true');\r\n\r\n toast.classList.add('toast', 'align-items-center');\r\n borderStyles.forEach(value => {\r\n toast.classList.add(value);\r\n });\r\n\r\n let buttonsHtml = ``,\r\n buttonIds = [];\r\n\r\n if (Array.isArray(buttons) && buttons.length) {\r\n buttonsHtml += `
`;\r\n\r\n buttons.forEach((button, key) => {\r\n const type = button.type || 'button';\r\n\r\n switch (type) {\r\n case 'dismiss':\r\n buttonsHtml += ` `;\r\n break;\r\n\r\n default:\r\n let id = `toast-${this.#count}-button-${key}`;\r\n\r\n buttonsHtml += ` `;\r\n\r\n if (button.hasOwnProperty('handler') && typeof button.handler === 'function') {\r\n buttonIds.push({\r\n id,\r\n handler: button.handler\r\n });\r\n }\r\n }\r\n });\r\n\r\n buttonsHtml += `
`;\r\n }\r\n\r\n toast.innerHTML = `
\r\n ${icon}\r\n ${title}\r\n ${subtitle}\r\n ${dismissible ? `` : ''}\r\n
\r\n
\r\n ${content}\r\n ${buttonsHtml}\r\n
`;\r\n\r\n if (!Bs5Utils.defaults.toasts.stacking) {\r\n document.querySelectorAll(`#${Bs5Utils.defaults.toasts.container} .toast`).forEach((toast) => {\r\n toast.remove();\r\n });\r\n }\r\n\r\n document.querySelector(`#${Bs5Utils.defaults.toasts.container}`).appendChild(toast);\r\n\r\n toast.addEventListener('hidden.bs.toast', function (e) {\r\n e.target.remove();\r\n });\r\n\r\n buttonIds.forEach(value => {\r\n document.getElementById(value.id).addEventListener('click', value.handler)\r\n });\r\n\r\n const opts = {\r\n autohide: (delay > 0 && typeof delay === 'number'),\r\n };\r\n\r\n if (delay > 0 && typeof delay === 'number') {\r\n opts['delay'] = delay;\r\n }\r\n\r\n const bsToast = new bootstrap.Toast(toast, opts);\r\n\r\n bsToast.show();\r\n\r\n return bsToast;\r\n }\r\n}","import Bs5Utils from \"../Bs5Utils\";\r\n\r\nexport default class Snack {\r\n /**\r\n * A counter for the Snacks\r\n * @type {number}\r\n */\r\n #count = 0;\r\n\r\n /**\r\n * Display a lightweight toast\r\n * @param type - the theme of the snack\r\n * @param title - the title of the of the snack\r\n * @param delay - in ms, if specified the snack will autohide after the specified amount\r\n * @param dismissible - set whether the dismiss button should show\r\n */\r\n show(type, title, delay = 0, dismissible = true) {\r\n this.#count++;\r\n\r\n const style = Bs5Utils.defaults.styles[type],\r\n btnCloseStyle = style.btnClose.join(' '),\r\n snack = document.createElement('div');\r\n\r\n snack.classList.add('toast', 'align-items-center', 'border-1', 'border-dark');\r\n style.main.forEach(value => {\r\n snack.classList.add(value);\r\n });\r\n snack.setAttribute('id', `snack-${this.#count}`);\r\n snack.setAttribute('role', 'alert');\r\n snack.setAttribute('aria-live', 'assertive');\r\n snack.setAttribute('aria-atomic', 'true');\r\n snack.innerHTML = `
\r\n
${title}
\r\n ${dismissible ? `` : ''}\r\n
`;\r\n\r\n if (!Bs5Utils.defaults.toasts.stacking) {\r\n document.querySelectorAll(`#${Bs5Utils.defaults.toasts.container} .toast`).forEach((toast) => {\r\n toast.remove();\r\n });\r\n }\r\n\r\n document.querySelector(`#${Bs5Utils.defaults.toasts.container}`).appendChild(snack);\r\n\r\n snack.addEventListener('hidden.bs.toast', function (e) {\r\n e.target.remove();\r\n });\r\n\r\n const opts = {\r\n autohide: (delay > 0 && typeof delay === 'number'),\r\n };\r\n\r\n if (delay > 0 && typeof delay === 'number') {\r\n opts['delay'] = delay;\r\n }\r\n\r\n const bsSnack = new bootstrap.Toast(snack, opts);\r\n\r\n bsSnack.show();\r\n\r\n return bsSnack;\r\n }\r\n}","import Bs5Utils from \"../Bs5Utils\";\r\n\r\nexport default class Modal {\r\n /**\r\n * A counter for the Modals\r\n * @type {number}\r\n */\r\n #count = 0;\r\n\r\n /**\r\n * Display a modal\r\n * @param type - the theme of the snack\r\n * @param title - the title of the modal, if omitted, the modal-header element is removed\r\n * @param content - the content of the modal, if omitted, the modal-body element is removed\r\n * @param buttons - any action buttons, if omitted, the the modal-footer element is removed\r\n * @param centered - set whether the modal is centered\r\n * @param dismissible - set whether the dismiss button should show\r\n * @param backdrop - set the type of backdrop: true, false, static\r\n * @param keyboard - set whether the escape key closes the modal\r\n * @param focus - set whether the modal is autofocussed when initialized\r\n * @param fullscreen - set whether the modal is fullscreen\r\n * @param modalSize - set the size of the modal: sm, lg, xl by default, it's an empty string\r\n */\r\n show({\r\n type,\r\n title = '',\r\n content = '',\r\n buttons = [],\r\n centered = false,\r\n dismissible = true,\r\n backdrop = dismissible ? true : 'static',\r\n keyboard = dismissible,\r\n focus = true,\r\n fullscreen = false,\r\n size = ''\r\n }) {\r\n this.#count++;\r\n\r\n size = ['sm', 'lg', 'xl'].includes(size) ? `modal-${size}` : '';\r\n fullscreen = fullscreen ? 'modal-fullscreen' : '';\r\n centered = centered ? 'modal-dialog-centered modal-dialog-scrollable' : '';\r\n\r\n const style = Bs5Utils.defaults.styles[type],\r\n btnCloseStyles = style.btnClose.join(' '),\r\n borderStyles = style.border,\r\n modal = document.createElement('div');\r\n\r\n modal.setAttribute('id', `modal-${this.#count}`)\r\n modal.setAttribute('tabindex', '-1');\r\n modal.classList.add('modal');\r\n\r\n let footerHtml = '',\r\n buttonIds = [];\r\n\r\n if (Array.isArray(buttons) && buttons.length) {\r\n footerHtml += ``;\r\n }\r\n\r\n modal.innerHTML = `
\r\n
\r\n ${title.length ? `
\r\n
${title}
\r\n ${dismissible ? `` : ``}\r\n
` : ``}\r\n ${content.length ? `
${content}
` : ``}\r\n ${footerHtml}\r\n
\r\n
`;\r\n\r\n document.body.appendChild(modal);\r\n\r\n modal.addEventListener('hidden.bs.modal', function (e) {\r\n e.target.remove();\r\n });\r\n\r\n buttonIds.forEach(value => {\r\n document.getElementById(value.id).addEventListener('click', value.handler)\r\n });\r\n\r\n const opts = {\r\n backdrop,\r\n keyboard,\r\n focus\r\n };\r\n\r\n const bsModal = new bootstrap.Modal(modal, opts);\r\n\r\n bsModal.show();\r\n\r\n return bsModal;\r\n }\r\n}","import Toast from \"./components/Toast\";\r\nimport Snack from \"./components/Snack\";\r\nimport Modal from \"./components/Modal\";\r\n\r\nclass Bs5Utils {\r\n /**\r\n * Default config options\r\n * @type {{toasts: {container: string, position: string, stacking: boolean}}}\r\n */\r\n static defaults = {\r\n toasts: {\r\n position: 'top-right',\r\n container: 'toast-container',\r\n stacking: true\r\n },\r\n\r\n styles: {\r\n secondary: {\r\n btnClose: ['btn-close-white'],\r\n main: ['text-white', 'bg-secondary'],\r\n border: ['border-secondary']\r\n },\r\n light: {\r\n btnClose: [],\r\n main: ['text-dark', 'bg-light', 'border-bottom', 'border-dark'],\r\n border: ['border-dark']\r\n },\r\n white: {\r\n btnClose: [],\r\n main: ['text-dark', 'bg-white', 'border-bottom', 'border-dark'],\r\n border: ['border-dark']\r\n },\r\n dark: {\r\n btnClose: ['btn-close-white'],\r\n main: ['text-white', 'bg-dark'],\r\n border: ['border-dark']\r\n },\r\n info: {\r\n btnClose: ['btn-close-white'],\r\n main: ['text-white', 'bg-info'],\r\n border: ['border-info']\r\n },\r\n primary: {\r\n btnClose: ['btn-close-white'],\r\n main: ['text-white', 'bg-primary'],\r\n border: ['border-primary']\r\n },\r\n success: {\r\n btnClose: ['btn-close-white'],\r\n main: ['text-white', 'bg-success'],\r\n border: ['border-success']\r\n },\r\n warning: {\r\n btnClose: ['btn-close-white'],\r\n main: ['text-white', 'bg-warning'],\r\n border: ['border-warning']\r\n },\r\n danger: {\r\n btnClose: ['btn-close-white'],\r\n main: ['text-white', 'bg-danger'],\r\n border: ['border-danger']\r\n }\r\n }\r\n }\r\n\r\n constructor() {\r\n this.#createToastContainer();\r\n\r\n this.Toast = new Toast();\r\n this.Snack = new Snack();\r\n this.Modal = new Modal();\r\n }\r\n\r\n #createToastContainer() {\r\n let containerEl = document.querySelector(`#${Bs5Utils.defaults.toasts.container}`);\r\n\r\n if (!containerEl) {\r\n const positionToClass = {\r\n 'top-left': 'top-0 start-0 ms-1 mt-1',\r\n 'top-center': 'top-0 start-50 translate-middle-x mt-1',\r\n 'top-right': 'top-0 end-0 me-1 mt-1',\r\n 'middle-left': 'top-50 start-0 translate-middle-y ms-1',\r\n 'middle-center': 'top-50 start-50 translate-middle p-3',\r\n 'middle-right': 'top-50 end-0 translate-middle-y me-1',\r\n 'bottom-left': 'bottom-0 start-0 ms-1 mb-1',\r\n 'bottom-center': 'bottom-0 start-50 translate-middle-x mb-1',\r\n 'bottom-right': 'bottom-0 end-0 me-1 mb-1'\r\n };\r\n\r\n containerEl = document.createElement('div');\r\n containerEl.classList.add('position-relative');\r\n containerEl.setAttribute('aria-live', 'polite');\r\n containerEl.setAttribute('aria-atomic', 'true');\r\n containerEl.innerHTML = `
`;\r\n\r\n document.body.appendChild(containerEl);\r\n }\r\n }\r\n\r\n /**\r\n * Register a style for the components\r\n * @param key - To reference your style\r\n * @param styles - The style object\r\n */\r\n static registerStyle(key, styles) {\r\n if (typeof styles !== 'object' && Array.isArray(styles)) {\r\n throw 'The styles parameter must be an object when you register component style.'\r\n }\r\n\r\n Bs5Utils.defaults.styles[key] = styles;\r\n }\r\n}\r\n\r\nexport {\r\n Bs5Utils as default\r\n};","import Bs5Utils from 'bs5-utils';\n\nBs5Utils.defaults.toasts.position = 'bottom-right';\nBs5Utils.registerStyle('indoconnex', {\n btnClose: ['text-muted'],\n main: ['bg-white',],\n border: []\n});\n\nconst bs5Utils = new Bs5Utils();\n\nwindow.bs5Utils = bs5Utils;\n"],"names":["Toast","show","type","icon","title","subtitle","content","buttons","delay","dismissible","this","style","Bs5Utils","defaults","styles","btnCloseStyles","btnClose","join","borderStyles","border","toast","document","createElement","setAttribute","classList","add","forEach","value","buttonsHtml","buttonIds","Array","isArray","length","button","key","class","text","id","hasOwnProperty","handler","push","innerHTML","main","toasts","stacking","querySelectorAll","container","remove","querySelector","appendChild","addEventListener","e","target","getElementById","opts","autohide","bsToast","bootstrap","Snack","btnCloseStyle","snack","bsSnack","Modal","centered","backdrop","keyboard","focus","fullscreen","size","includes","modal","footerHtml","body","bsModal","static","position","secondary","light","white","dark","info","primary","success","warning","danger","constructor","containerEl","positionToClass","registerStyle","bs5Utils","window"],"sourceRoot":""}