{"version":3,"sources":["../node_modules/browser-pack/_prelude.js","core/JsInterop/ObservableApi/observableApi.ts","core/JsInterop/ObservableApi/resizeObserver.ts","core/JsInterop/interop.ts","core/JsInterop/modules/Caret.ts","core/JsInterop/modules/dragHelper.ts","main.ts"],"names":["r","e","n","t","o","i","f","c","require","u","a","Error","code","p","exports","call","length","1","module","resize","interop_1","resizeObservers","Map","disconnect","key","observer","this","get","create","invoker","ResizeObserver","entries","mappedEntries","Array","forEach","entry","mEntry","ResizeObserverEntry","borderBoxSize","BoxSize","blockSize","inlineSize","contentBoxSize","contentRect","DomRect","x","y","width","height","top","right","bottom","left","target","push","entriesJson","JSON","stringify","invokeMethodAsync","observerCallBack","set","observe","element","dom","getDom","unobserve","dispose","console","log","delete","observable","document","querySelector","body","getDomInfo","result","offsetTop","offsetLeft","offsetWidth","offsetHeight","scrollHeight","scrollWidth","scrollLeft","scrollTop","clientTop","clientLeft","clientHeight","clientWidth","selectionStart","absolutePosition","res","Object","box","getBoundingClientRect","viewportElement","documentElement","getElementAbsolutePos","Math","round","fileClickEvent","fileId","attributes","nodeValue","getElementById","click","getObjectURL","file","url","undefined","window","URL","createObjectURL","webkitURL","addDomEventListener","eventName","preventDefault","callback","args","k","obj","json","v","Node","Window","setTimeout","addEventListener","func","wait","immediate","timeout","_this","_arguments","arguments","context","callNow","clearTimeout","apply","debounce","innerWidth","innerHeight","slideTo","targetPageY","timer","setInterval","currentY","speed","ceil","clearInterval","scrollTo","getActiveElement","activeElement","getAttribute","css","name","style","hasOwnProperty","addCls","selector","clsName","classList","add","_element$classList","_toConsumableArray","removeCls","remove","_element$classList2","isResizeObserverSupported","addFileClickEventListener","btn","removeFileClickEventListener","removeEventListener","clearFile","setAttribute","value","getFileInfo","files","fileInfo","objectUrl","fileName","size","objectURL","type","uploadFile","index","data","headers","instance","percentMethod","successMethod","errorMethod","formData","FormData","append","req","XMLHttpRequest","onreadystatechange","readyState","status","responseText","upload","onprogress","event","percent","floor","loaded","onerror","open","header","setRequestHeader","send","triggerEvent","eventType","evt","createEvent","initEvent","dispatchEvent","domRect","matchMedia","query","matches","copy","text","navigator","clipboard","writeText","then","err","error","textArea","createElement","position","appendChild","focus","select","msg","execCommand","removeChild","fallbackCopyTextToClipboard","noScroll","HTMLElement","preventScroll","hasFocus","blur","backTop","scrollIntoView","behavior","block","inline","getFirstChildDomInfo","firstElementChild","addClsToFirstChild","className","removeClsFromFirstChild","addDomEventListenerToFirstChild","getAbsoluteTop","offset","offsetParent","getAbsoluteLeft","addElementToBody","delElementFromBody","addElementTo","addElement","elementSelector","parent","delElementFrom","delElement","focusDialog","count","ele","hasAttribute","getWindow","elementScrollIntoView","oldBodyCacheStack","getTextAreaInfo","currentStyle","parseFloat","getComputedStyle","defaultView","getPropertyValue","is","NaN","disableBodyScroll","overflow","oldBodyCache","enableBodyScroll","pop","_a","_b","_c","destroyAllDialog","querySelectorAll","parentNode","createIconFromfontCN","scriptUrl","script","getScroll","pageXOffset","pageYOffset","getInnerText","innerText","getMaxZIndex","concat","all","reduce","max","zIndex","getStyle","styleProp","funcDict","disposeResizeTextArea","id","objReferenceDict","resizeTextArea","minRows","maxRows","dims","rowHeight","oldHeight","rows","trunc","newHeight","overflowY","registerResizeTextArea","objReference","disposeObj","objReferenceName","Caret_1","mentionsOnWindowClick","mentionsObj","getCursorXY","default","dragHelper_1","defineProperty","enumerable","enableDraggable","disableDraggable","resetModalPosition","bindTableHeaderAndBodyScroll","bodyRef","headerRef","bindScrollLeftToHeader","unbindTableHeaderAndBodyScroll","addPreventKeys","inputElement","keys","map","toUpperCase","indexOf","preventKeys","removePreventKeys","addPreventEnterOnOverlayVisible","overlayElement","check","preventKeyOnCondition","removePreventEnterOnOverlayVisible","setDomAttribute","setSelectionStart","selectionEnd","invokeTabKey","currInput","tagName","toLowerCase","inputs","getElementsByTagName","next","InputCaret","inputor","_classCallCheck","getPos","domInputor","getPosition","pos","format","replace","test","userAgent","inputorValue","start_range","slice","end_range","html","Mirror","rect","getOffset","$mirror","AntDesign","interop","mirrorCss","innerHTML","parentElement","css_attr","flag","oRect","elem","throttle","fn","threshold","start","Date","_len","_key","curTime","eventMap","defaultOptions","inViewport","Dragger","_container","triggler","_triggler","options","_options","onMousedown","onMouseup","onMousemove","onResize","_style","_isFirst","container","dragInViewport","_this2","_state","state","isInDrag","mX","clientX","mY","clientY","_getContainerPos","getContainerPos","domMaxY","domMaxX","domStartX","domStartY","_getContainerPos2","newDomX","nowX","nowY","disX","disY","newDomY","margin","paddingBottom","bind","parseInt","assign","dragger","bindDrag","unbindDrag","resetContainerStyle"],"mappings":"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","file":"ant-design-blazor.js","sourcesContent":["(function(){function r(e,n,t){function o(i,f){if(!n[i]){if(!e[i]){var c=\"function\"==typeof require&&require;if(!f&&c)return c(i,!0);if(u)return u(i,!0);var a=new Error(\"Cannot find module '\"+i+\"'\");throw a.code=\"MODULE_NOT_FOUND\",a}var p=n[i]={exports:{}};e[i][0].call(p.exports,function(r){var n=e[i][1][r];return o(n||r)},p,p.exports,r,e,n,t)}return n[i].exports}for(var u=\"function\"==typeof require&&require,i=0;i = new Map();\n\nexport function create(key, invoker) {\n const observer = new ResizeObserver((entries, observer) => observerCallBack(entries, observer, invoker));\n resizeObservers.set(key, observer)\n}\n\nexport function observe(key: string, element) {\n const observer = resizeObservers.get(key);\n if (observer) {\n let dom = getDom(element);\n observer.observe(dom);\n }\n}\n\nexport function disconnect(key: string): void {\n const observer = this.resizeObservers.get(key)\n if (observer) {\n observer.disconnect()\n }\n}\n\nexport function unobserve(key: string, element: Element): void {\n const observer = this.resizeObservers.get(key)\n\n if (observer) {\n let dom = getDom(element);\n observer.unobserve(dom)\n }\n}\n\nexport function dispose(key: string): void {\n console.log(\"dispose\", key);\n disconnect(key)\n resizeObservers.delete(key)\n}\n\nclass BoxSize {\n public blockSize?: number\n public inlineSize?: number\n}\n\nclass DomRect {\n x?: number\n y?: number\n width?: number\n height?: number\n top?: number\n right?: number\n bottom?: number\n left?: number\n}\n\nclass ResizeObserverEntry {\n borderBoxSize?: BoxSize\n contentBoxSize?: BoxSize\n contentRect?: DomRect\n target?: Element\n}\n\nfunction observerCallBack(entries, observer, invoker) {\n if (invoker) {\n const mappedEntries = new Array()\n entries.forEach(entry => {\n if (entry) {\n const mEntry = new ResizeObserverEntry()\n if (entry.borderBoxSize) {\n mEntry.borderBoxSize = new BoxSize()\n mEntry.borderBoxSize.blockSize = entry.borderBoxSize.blockSize\n mEntry.borderBoxSize.inlineSize = entry.borderBoxSize.inlineSize\n }\n\n if (entry.contentBoxSize) {\n mEntry.contentBoxSize = new BoxSize()\n mEntry.contentBoxSize.blockSize = entry.contentBoxSize.blockSize\n mEntry.contentBoxSize.inlineSize = entry.contentBoxSize.inlineSize\n }\n\n if (entry.contentRect) {\n mEntry.contentRect = new DomRect()\n mEntry.contentRect.x = entry.contentRect.x\n mEntry.contentRect.y = entry.contentRect.y\n mEntry.contentRect.width = entry.contentRect.width\n mEntry.contentRect.height = entry.contentRect.height\n mEntry.contentRect.top = entry.contentRect.top\n mEntry.contentRect.right = entry.contentRect.right\n mEntry.contentRect.bottom = entry.contentRect.bottom\n mEntry.contentRect.left = entry.contentRect.left\n }\n\n mEntry.target = entry.target\n mappedEntries.push(mEntry)\n }\n })\n\n const entriesJson = JSON.stringify(mappedEntries)\n invoker.invokeMethodAsync('Invoke', entriesJson)\n }\n}\n","import * as observable from './ObservableApi/observableApi';\n\nexport { observable };\n\nexport function isResizeObserverSupported(): boolean { \n return \"ResizeObserver\" in window;\n}\n\nexport function getDom(element) {\n if (!element) {\n element = document.body;\n } else if (typeof element === 'string') {\n if (element === 'document') {\n return document;\n }\n element = document.querySelector(element);\n }\n return element;\n}\n\nexport function getDomInfo(element) {\n var result = {};\n var dom = getDom(element);\n if (!dom) {\n dom = {};\n }\n result[\"offsetTop\"] = dom.offsetTop || 0;\n result[\"offsetLeft\"] = dom.offsetLeft || 0;\n result[\"offsetWidth\"] = dom.offsetWidth || 0;\n result[\"offsetHeight\"] = dom.offsetHeight || 0;\n result[\"scrollHeight\"] = dom.scrollHeight || 0;\n result[\"scrollWidth\"] = dom.scrollWidth || 0;\n result[\"scrollLeft\"] = dom.scrollLeft || 0;\n result[\"scrollTop\"] = dom.scrollTop || 0;\n result[\"clientTop\"] = dom.clientTop || 0;\n result[\"clientLeft\"] = dom.clientLeft || 0;\n result[\"clientHeight\"] = dom.clientHeight || 0;\n result[\"clientWidth\"] = dom.clientWidth || 0;\n result[\"selectionStart\"] = dom.selectionStart || 0;\n var absolutePosition = getElementAbsolutePos(dom);\n result[\"absoluteTop\"] = Math.round(absolutePosition.y);\n result[\"absoluteLeft\"] = Math.round(absolutePosition.x);\n\n return result;\n}\n\nfunction getElementAbsolutePos(element) {\n var res: any = new Object();\n res.x = 0; res.y = 0;\n if (element !== null) {\n if (element.getBoundingClientRect) {\n var viewportElement = document.documentElement;\n var box = element.getBoundingClientRect();\n var scrollLeft = viewportElement.scrollLeft;\n var scrollTop = viewportElement.scrollTop;\n\n res.x = box.left + scrollLeft;\n res.y = box.top + scrollTop;\n }\n }\n return res;\n}\n\nexport function addFileClickEventListener(btn) {\n if ((btn as HTMLElement).addEventListener) {\n (btn as HTMLElement).addEventListener(\"click\", fileClickEvent);\n }\n}\n\nexport function removeFileClickEventListener(btn) {\n (btn as HTMLElement).removeEventListener(\"click\", fileClickEvent);\n}\n\nexport function fileClickEvent() {\n var fileId = this.attributes[\"data-fileid\"].nodeValue;\n var element = document.getElementById(fileId);\n (element as HTMLInputElement).click();\n}\n\nexport function clearFile(element) {\n element.setAttribute(\"type\", \"input\");\n element.value = '';\n element.setAttribute(\"type\", \"file\");\n}\n\nexport function getFileInfo(element) {\n if (element.files && element.files.length > 0) {\n var fileInfo = [];\n for (var i = 0; i < element.files.length; i++) {\n var file = element.files[i];\n var objectUrl = getObjectURL(file);\n fileInfo.push({\n fileName: file.name,\n size: file.size,\n objectURL: objectUrl,\n type: file.type\n });\n }\n\n return fileInfo;\n }\n}\n\nexport function getObjectURL(file: File) {\n var url = null;\n if (window.URL != undefined) {\n url = window.URL.createObjectURL(file);\n } else if (window.webkitURL != undefined) {\n url = window.webkitURL.createObjectURL(file);\n }\n return url;\n}\n\nexport function uploadFile(element, index, data, headers, fileId, url, name, instance, percentMethod, successMethod, errorMethod) {\n let formData = new FormData();\n var file = element.files[index];\n var size = file.size;\n formData.append(name, file);\n if (data != null) {\n for (var key in data) {\n formData.append(key, data[key]);\n }\n }\n const req = new XMLHttpRequest()\n req.onreadystatechange = function () {\n if (req.readyState === 4) {\n if (req.status != 200) {\n instance.invokeMethodAsync(errorMethod, fileId, `{\"status\": ${req.status}}`);\n return;\n }\n instance.invokeMethodAsync(successMethod, fileId, req.responseText);\n }\n }\n req.upload.onprogress = function (event) {\n var percent = Math.floor(event.loaded / size * 100);\n instance.invokeMethodAsync(percentMethod, fileId, percent);\n }\n req.onerror = function (e) {\n instance.invokeMethodAsync(errorMethod, fileId, \"error\");\n }\n req.open('post', url, true)\n if (headers != null) {\n for (var header in headers) {\n req.setRequestHeader(header, headers[header]);\n }\n }\n req.send(formData)\n}\n\nexport function triggerEvent(element, eventType, eventName) {\n var dom = element as HTMLInputElement;\n var evt = document.createEvent(eventType);\n evt.initEvent(eventName);\n return dom.dispatchEvent(evt);\n}\n\nexport function getBoundingClientRect(element) {\n let dom = getDom(element);\n if (dom && dom.getBoundingClientRect) {\n let domRect = dom.getBoundingClientRect();\n // Fixes #1468. This wrapping is necessary for old browsers. Remove this when one day we no longer support them.\n return {\n width: domRect.width,\n height: domRect.height,\n top: domRect.top,\n right: domRect.right,\n bottom: domRect.bottom,\n left: domRect.left,\n x: domRect.x,\n y: domRect.y\n };\n }\n return null;\n}\n\nexport function addDomEventListener(element, eventName, preventDefault, invoker) {\n let callback = args => {\n const obj = {};\n for (let k in args) {\n if (k !== 'originalTarget') { //firefox occasionally raises Permission Denied when this property is being stringified\n obj[k] = args[k];\n }\n }\n let json = JSON.stringify(obj, (k, v) => {\n if (v instanceof Node) return 'Node';\n if (v instanceof Window) return 'Window';\n return v;\n }, ' ');\n setTimeout(function () { invoker.invokeMethodAsync('Invoke', json) }, 0);\n if (preventDefault === true) {\n args.preventDefault();\n }\n };\n\n if (element == 'window') {\n if (eventName == 'resize') {\n window.addEventListener(eventName, debounce(() => callback({ innerWidth: window.innerWidth, innerHeight: window.innerHeight }), 200, false));\n } else {\n window.addEventListener(eventName, callback);\n }\n } else {\n let dom = getDom(element);\n if (dom) {\n (dom as HTMLElement).addEventListener(eventName, callback);\n }\n }\n}\n\nexport function matchMedia(query) {\n return window.matchMedia(query).matches;\n}\n\nfunction fallbackCopyTextToClipboard(text) {\n var textArea = document.createElement(\"textarea\");\n textArea.value = text;\n\n // Avoid scrolling to bottom\n textArea.style.top = \"0\";\n textArea.style.left = \"0\";\n textArea.style.position = \"fixed\";\n\n document.body.appendChild(textArea);\n textArea.focus();\n textArea.select();\n\n try {\n var successful = document.execCommand('copy');\n var msg = successful ? 'successful' : 'unsuccessful';\n console.log('Fallback: Copying text command was ' + msg);\n } catch (err) {\n console.error('Fallback: Oops, unable to copy', err);\n }\n\n document.body.removeChild(textArea);\n}\nexport function copy(text) {\n if (!navigator.clipboard) {\n fallbackCopyTextToClipboard(text);\n return;\n }\n navigator.clipboard.writeText(text).then(function () {\n console.log('Async: Copying to clipboard was successful!');\n }, function (err) {\n console.error('Async: Could not copy text: ', err);\n });\n}\n\nexport function focus(selector, noScroll: boolean = false) {\n let dom = getDom(selector);\n if (!(dom instanceof HTMLElement))\n throw new Error(\"Unable to focus an invalid element.\");\n dom.focus({\n preventScroll: noScroll\n });\n}\n\nexport function hasFocus(selector) {\n let dom = getDom(selector);\n return (document.activeElement === dom);\n}\n\nexport function blur(selector) {\n let dom = getDom(selector);\n if (dom) {\n dom.blur();\n }\n}\n\nexport function log(text) {\n console.log(text);\n}\n\nexport function backTop(target: string) {\n let dom = getDom(target);\n if (dom) {\n slideTo(dom.scrollTop);\n } else {\n slideTo(0);\n }\n}\n\nfunction slideTo(targetPageY) {\n var timer = setInterval(function () {\n var currentY = document.documentElement.scrollTop || document.body.scrollTop;\n var distance = targetPageY > currentY ? targetPageY - currentY : currentY - targetPageY;\n var speed = Math.ceil(distance / 10);\n if (currentY == targetPageY) {\n clearInterval(timer);\n } else {\n window.scrollTo(0, targetPageY > currentY ? currentY + speed : currentY - speed);\n }\n }, 10);\n}\n\nexport function scrollTo(target) {\n let dom = getDom(target);\n if (dom instanceof HTMLElement) {\n dom.scrollIntoView({\n behavior: \"smooth\",\n block: \"start\",\n inline: \"nearest\"\n });\n }\n}\n\nexport function getFirstChildDomInfo(element) {\n var dom = getDom(element);\n if (dom) {\n if (dom.firstElementChild) {\n return getDomInfo(dom.firstElementChild);\n } else {\n return getDomInfo(dom);\n }\n }\n return null;\n}\n\nexport function addClsToFirstChild(element, className) {\n var dom = getDom(element);\n if (dom && dom.firstElementChild) {\n dom.firstElementChild.classList.add(className);\n }\n}\n\nexport function removeClsFromFirstChild(element, className) {\n var dom = getDom(element);\n if (dom && dom.firstElementChild) {\n dom.firstElementChild.classList.remove(className);\n }\n}\n\nexport function addDomEventListenerToFirstChild(element, eventName, preventDefault, invoker) {\n var dom = getDom(element);\n\n if (dom && dom.firstElementChild) {\n addDomEventListener(dom.firstElementChild, eventName, preventDefault, invoker);\n }\n}\n\nexport function getAbsoluteTop(e) {\n var offset = e.offsetTop;\n if (e.offsetParent != null) {\n offset += getAbsoluteTop(e.offsetParent);\n }\n return offset;\n}\n\nexport function getAbsoluteLeft(e) {\n var offset = e.offsetLeft;\n if (e.offsetParent != null) {\n offset += getAbsoluteLeft(e.offsetParent);\n }\n return offset;\n}\n\nexport function addElementToBody(element) {\n document.body.appendChild(element);\n}\n\nexport function delElementFromBody(element) {\n document.body.removeChild(element);\n}\n\nexport function addElementTo(addElement, elementSelector) {\n let parent = getDom(elementSelector);\n if (parent && addElement) {\n parent.appendChild(addElement);\n }\n}\n\nexport function delElementFrom(delElement, elementSelector) {\n let parent = getDom(elementSelector);\n if (parent && delElement) {\n parent.removeChild(delElement);\n }\n}\n\nexport function getActiveElement() {\n let element = document.activeElement;\n let id = element.getAttribute(\"id\") || \"\";\n return id;\n}\n\nexport function focusDialog(selector: string, count: number = 0) {\n let ele = document.querySelector(selector);\n if (ele && !ele.hasAttribute(\"disabled\")) {\n setTimeout(() => {\n ele.focus();\n let curId = \"#\" + getActiveElement();\n if (curId !== selector) {\n if (count < 10) {\n focusDialog(selector, count + 1);\n }\n }\n }, 10);\n }\n}\n\nexport function getWindow() {\n return {\n innerWidth: window.innerWidth,\n innerHeight: window.innerHeight\n };\n}\n\nfunction debounce(func, wait, immediate) {\n var timeout;\n return () => {\n const context = this, args = arguments;\n const later = () => {\n timeout = null;\n if (!immediate) func.apply(this, args);\n };\n const callNow = immediate && !timeout;\n clearTimeout(timeout);\n timeout = setTimeout(later, wait);\n if (callNow) func.apply(context, args);\n };\n};\n\nexport function css(element: HTMLElement, name: string | object, value: string | null = null) {\n if (typeof name === 'string') {\n element.style[name] = value;\n } else {\n for (let key in name) {\n if (name.hasOwnProperty(key)) {\n element.style[key] = name[key];\n }\n }\n }\n}\n\nexport function addCls(selector: Element | string, clsName: string | Array) {\n let element = getDom(selector);\n if (element) {\n if (typeof clsName === \"string\") {\n element.classList.add(clsName);\n } else {\n element.classList.add(...clsName);\n }\n }\n}\n\nexport function removeCls(selector: Element | string, clsName: string | Array) {\n let element = getDom(selector);\n if (element) {\n if (typeof clsName === \"string\") {\n element.classList.remove(clsName);\n } else {\n element.classList.remove(...clsName);\n }\n }\n\n}\n\nexport function elementScrollIntoView(selector: Element | string) {\n let element = getDom(selector);\n\n if (!element)\n return;\n\n element.scrollIntoView({ behavior: 'smooth', block: 'nearest', inline: 'start' });\n}\n\nconst oldBodyCacheStack = [];\n\nconst hasScrollbar = () => {\n let overflow = document.body.style.overflow;\n if (overflow && overflow === \"hidden\") return false;\n return document.body.scrollHeight > (window.innerHeight || document.documentElement.clientHeight);\n}\n\nexport function disableBodyScroll() {\n let body = document.body;\n const oldBodyCache = {};\n [\"position\", \"width\", \"overflow\"].forEach((key) => {\n oldBodyCache[key] = body.style[key];\n });\n oldBodyCacheStack.push(oldBodyCache);\n css(body,\n {\n \"position\": \"relative\",\n \"width\": hasScrollbar() ? \"calc(100% - 17px)\" : null,\n \"overflow\": \"hidden\"\n });\n addCls(document.body, \"ant-scrolling-effect\");\n}\n\nexport function enableBodyScroll() {\n let oldBodyCache = oldBodyCacheStack.length > 0 ? oldBodyCacheStack.pop() : {};\n\n css(document.body,\n {\n \"position\": oldBodyCache[\"position\"] ?? null,\n \"width\": oldBodyCache[\"width\"] ?? null,\n \"overflow\": oldBodyCache[\"overflow\"] ?? null\n });\n removeCls(document.body, \"ant-scrolling-effect\");\n}\n\nexport function destroyAllDialog() {\n document.querySelectorAll('.ant-modal-root')\n .forEach(e => document.body.removeChild(e.parentNode));\n}\n\nexport function createIconFromfontCN(scriptUrl) {\n if (document.querySelector(`[data-namespace=\"${scriptUrl}\"]`)) {\n return;\n }\n const script = document.createElement('script');\n script.setAttribute('src', scriptUrl);\n script.setAttribute('data-namespace', scriptUrl);\n document.body.appendChild(script);\n}\n\nexport function getScroll() {\n return { x: window.pageXOffset, y: window.pageYOffset };\n}\n\nexport function getInnerText(element) {\n let dom = getDom(element);\n if (dom) return dom.innerText;\n return null;\n}\n\nexport function getMaxZIndex() {\n return [...document.all].reduce((r, e) => Math.max(r, +window.getComputedStyle(e).zIndex || 0), 0)\n}\n\nexport function getStyle(element, styleProp) {\n if (element.currentStyle)\n return element.currentStyle[styleProp];\n else if (window.getComputedStyle)\n return document.defaultView.getComputedStyle(element, null).getPropertyValue(styleProp);\n}\n\nexport function getTextAreaInfo(element) {\n var result = {};\n var dom = getDom(element);\n if (!dom) return null;\n result[\"scrollHeight\"] = dom.scrollHeight || 0;\n\n if (element.currentStyle) {\n result[\"lineHeight\"] = parseFloat(element.currentStyle[\"line-height\"]);\n result[\"paddingTop\"] = parseFloat(element.currentStyle[\"padding-top\"]);\n result[\"paddingBottom\"] = parseFloat(element.currentStyle[\"padding-bottom\"]);\n result[\"borderBottom\"] = parseFloat(element.currentStyle[\"border-bottom\"]);\n result[\"borderTop\"] = parseFloat(element.currentStyle[\"border-top\"]);\n }\n else if (window.getComputedStyle) {\n result[\"lineHeight\"] = parseFloat(document.defaultView.getComputedStyle(element, null).getPropertyValue(\"line-height\"));\n result[\"paddingTop\"] = parseFloat(document.defaultView.getComputedStyle(element, null).getPropertyValue(\"padding-top\"));\n result[\"paddingBottom\"] = parseFloat(document.defaultView.getComputedStyle(element, null).getPropertyValue(\"padding-bottom\"));\n result[\"borderBottom\"] = parseFloat(document.defaultView.getComputedStyle(element, null).getPropertyValue(\"border-bottom\"));\n result[\"borderTop\"] = parseFloat(document.defaultView.getComputedStyle(element, null).getPropertyValue(\"border-top\"));\n }\n //Firefox can return this as NaN, so it has to be handled here like that.\n if (Object.is(NaN, result[\"borderTop\"]))\n result[\"borderTop\"] = 1;\n if (Object.is(NaN, result[\"borderBottom\"]))\n result[\"borderBottom\"] = 1;\n return result;\n}\n\nconst funcDict = {};\n\nexport function registerResizeTextArea(element, minRows, maxRows, objReference) {\n if (!objReference) {\n disposeResizeTextArea(element);\n }\n else {\n objReferenceDict[element.id] = objReference;\n funcDict[element.id + \"input\"] = function () { resizeTextArea(element, minRows, maxRows); }\n element.addEventListener(\"input\", funcDict[element.id + \"input\"]);\n return getTextAreaInfo(element);\n }\n}\n\nexport function disposeResizeTextArea(element) {\n element.removeEventListener(\"input\", funcDict[element.id + \"input\"]);\n objReferenceDict[element.id] = null;\n funcDict[element.id + \"input\"] = null;\n}\n\nexport function resizeTextArea(element, minRows, maxRows) {\n var dims = getTextAreaInfo(element);\n var rowHeight = dims[\"lineHeight\"];\n var offsetHeight = dims[\"paddingTop\"] + dims[\"paddingBottom\"] + dims[\"borderTop\"] + dims[\"borderBottom\"];\n var oldHeight = parseFloat(element.style.height);\n element.style.height = 'auto';\n\n var rows = Math.trunc(element.scrollHeight / rowHeight);\n rows = Math.max(minRows, rows);\n\n var newHeight = 0;\n if (rows > maxRows) {\n rows = maxRows;\n\n newHeight = (rows * rowHeight + offsetHeight);\n element.style.height = newHeight + \"px\";\n element.style.overflowY = \"visible\";\n }\n else {\n newHeight = rows * rowHeight + offsetHeight;\n element.style.height = newHeight + \"px\";\n element.style.overflowY = \"hidden\";\n }\n if (oldHeight !== newHeight) {\n let textAreaObj = objReferenceDict[element.id];\n textAreaObj.invokeMethodAsync(\"ChangeSizeAsyncJs\", parseFloat(element.scrollWidth), newHeight);\n }\n}\n\nconst objReferenceDict = {};\nexport function disposeObj(objReferenceName) {\n delete objReferenceDict[objReferenceName];\n}\n\n//#region mentions\n\nimport getOffset from \"./modules/Caret\";\n\nexport function getCursorXY(element, objReference) {\n objReferenceDict[\"mentions\"] = objReference;\n window.addEventListener(\"click\", mentionsOnWindowClick);\n\n var offset = getOffset(element);\n\n return [offset.left, offset.top + offset.height + 14];\n}\n\nfunction mentionsOnWindowClick(e) {\n let mentionsObj = objReferenceDict[\"mentions\"];\n if (mentionsObj) {\n mentionsObj.invokeMethodAsync(\"CloseMentionsDropDown\");\n } else {\n window.removeEventListener(\"click\", mentionsOnWindowClick);\n }\n}\n\n//#endregion\n\nexport { enableDraggable, disableDraggable, resetModalPosition } from \"./modules/dragHelper\";\n\nexport function bindTableHeaderAndBodyScroll(bodyRef, headerRef) {\n bodyRef.bindScrollLeftToHeader = () => {\n headerRef.scrollLeft = bodyRef.scrollLeft;\n }\n bodyRef.addEventListener('scroll', bodyRef.bindScrollLeftToHeader);\n}\n\nexport function unbindTableHeaderAndBodyScroll(bodyRef) {\n if (bodyRef) {\n bodyRef.removeEventListener('scroll', bodyRef.bindScrollLeftToHeader);\n }\n}\n\nfunction preventKeys(e, keys: string[]) {\n if (keys.indexOf(e.key.toUpperCase()) !== -1) {\n e.preventDefault();\n return false;\n }\n}\n\nexport function addPreventKeys(inputElement, keys: string[]) {\n if (inputElement) {\n let dom = getDom(inputElement);\n keys = keys.map(function (x) { return x.toUpperCase(); })\n funcDict[inputElement.id + \"keydown\"] = (e) => preventKeys(e, keys);\n (dom as HTMLElement).addEventListener(\"keydown\", funcDict[inputElement.id + \"keydown\"], false);\n }\n}\n\nexport function removePreventKeys(inputElement) {\n if (inputElement) {\n let dom = getDom(inputElement);\n if(dom){\n (dom as HTMLElement).removeEventListener(\"keydown\", funcDict[inputElement.id + \"keydown\"]);\n funcDict[inputElement.id + \"keydown\"] = null;\n }\n }\n}\n\nfunction preventKeyOnCondition(e, key: string, check: () => boolean) {\n if (e.key.toUpperCase() === key.toUpperCase() && check()) {\n e.preventDefault();\n return false;\n }\n}\n\nexport function addPreventEnterOnOverlayVisible(element, overlayElement) {\n if (element && overlayElement) {\n let dom = getDom(element);\n if(dom){\n funcDict[element.id + \"keydown:Enter\"] = (e) => preventKeyOnCondition(e, \"enter\", () => overlayElement.offsetParent !== null);\n (dom as HTMLElement).addEventListener(\"keydown\", funcDict[element.id + \"keydown:Enter\"], false);\n }\n }\n}\n\nexport function removePreventEnterOnOverlayVisible(element) {\n if (element) {\n let dom = getDom(element);\n if(dom){\n (dom as HTMLElement).removeEventListener(\"keydown\", funcDict[element.id + \"keydown:Enter\"]);\n funcDict[element.id + \"keydown:Enter\"] = null;\n }\n }\n}\n\nexport function setDomAttribute(element, attributes) {\n let dom = getDom(element);\n if(dom){\n for (var key in attributes) {\n (dom as HTMLElement).setAttribute(key, attributes[key]);\n }\n }\n}\n\nexport function setSelectionStart(element, position) {\n if (position >= 0) {\n let dom = getDom(element);\n if(dom){\n if (position <= dom.value.length) {\n dom.selectionStart = position;\n dom.selectionEnd = position;\n }\n }\n }\n}\n\n//copied from https://www.telerik.com/forums/trigger-tab-key-when-enter-key-is-pressed\nexport function invokeTabKey() { \n var currInput = document.activeElement;\n if (currInput.tagName.toLowerCase() == \"input\") {\n var inputs = document.getElementsByTagName(\"input\");\n var currInput = document.activeElement;\n for (var i = 0; i < inputs.length; i++) {\n if (inputs[i] == currInput) {\n var next = inputs[i + 1];\n if (next && next.focus) {\n next.focus();\n }\n break;\n }\n }\n }\n}\n","//extract from https://github.com/ichord/Caret.js\n\nclass InputCaret {\n domInputor: any;\n\n constructor(inputor) {\n this.domInputor = inputor;\n }\n\n getPos = function () {\n return this.domInputor.selectionStart;\n };\n\n getPosition = function (pos) {\n var domInputor, end_range, format, html, mirror, start_range;\n domInputor = this.domInputor;\n\n format = function (value) {\n value = value.replace(/<|>|`|\"|&/g, '?').replace(/\\r\\n|\\r|\\n/g, \"
\");\n if (/firefox/i.test(navigator.userAgent)) {\n value = value.replace(/\\s/g, ' ');\n }\n return value;\n };\n if (!pos) {\n pos = this.getPos();\n }\n let inputorValue = domInputor.value;\n start_range = inputorValue.slice(0, pos);\n end_range = inputorValue.slice(pos);\n html = \"\" + format(start_range) + \"\";\n html += \"|\";\n html += \"\" + format(end_range) + \"\";\n mirror = new Mirror(domInputor);\n return mirror.create(html).rect();\n };\n\n getOffset = function (pos = null) {\n var offset, position, domInputor;\n domInputor = this.domInputor;\n\n var rect = domInputor.getBoundingClientRect();\n\n offset = {\n left: rect.left,\n top: rect.top\n };\n \n position = this.getPosition(pos);\n return offset = {\n left: offset.left + position.left - domInputor.scrollLeft, \n top: offset.top + position.top - domInputor.scrollTop, \n height: position.height\n };\n };\n\n}\n\nclass Mirror {\n domInputor: any;\n css_attr: any;\n constructor(inputor) {\n this.domInputor = inputor;\n this.css_attr = [];\n }\n\n create = function (html) {\n this.$mirror = document.createElement(\"div\");\n\n (window).AntDesign.interop.css(this.$mirror, this.mirrorCss());\n\n this.$mirror.innerHTML = html;\n this.domInputor.parentElement.append(this.$mirror);\n\n return this;\n };\n\n mirrorCss = function () {\n var css, _this = this;\n css = {\n position: 'absolute',\n left: -9999,\n top: 0,\n zIndex: -20000\n };\n\n this.css_attr.push('width');\n\n this.css_attr.forEach((p) => {\n return css[p] = _this.domInputor.style[p]//_this.$inputor.css(p);\n })\n \n return css;\n };\n\n rect = function () {\n var flag, pos, rect;\n flag = this.$mirror.querySelector(\"#caret\");\n var oRect = flag.getBoundingClientRect();\n\n pos = {\n left: flag.offsetLeft,\n top: flag.offsetTop\n }; //$flag.position();\n\n rect = {\n left: pos.left,\n top: pos.top,\n height: oRect.height\n };\n\n this.$mirror.parentElement.removeChild(this.$mirror)\n return rect;\n };\n\n}\n\nfunction getOffset(elem) {\n return (new InputCaret(elem)).getOffset();\n}\n\nexport default getOffset;","\nconst throttle = (fn, threshold = 160) => {\n let timeout;\n var start = +new Date;\n return function (...args) {\n let context = this, curTime = +new Date() - 0;\n //总是干掉事件回调\n window.clearTimeout(timeout);\n if (curTime - start >= threshold) {\n //只执行一部分方法,这些方法是在某个时间段内执行一次\n fn.apply(context, args);\n start = curTime;\n }\n else {\n //让方法在脱离事件后也能执行一次\n timeout = window.setTimeout(() => {\n //@ts-ignore\n fn.apply(this, args);\n }, threshold);\n }\n };\n}\n\nconst eventMap = new Map();\n\nconst defaultOptions = {\n inViewport: true\n}\n\nclass Dragger {\n\n private _triggler: HTMLElement = null;\n private _container: HTMLElement = null;\n private _options: any = null;\n private _state: any = null;\n private _isFirst: boolean = true;\n private _style: string = null;\n\n constructor(triggler: HTMLElement, container: HTMLElement, dragInViewport: boolean) {\n this._triggler = triggler;\n this._container = container;\n this._options = Object.assign({}, defaultOptions, {\n inViewport: dragInViewport\n });\n this._state = {\n isInDrag: false,\n mX: 0, // mouse x\n mY: 0, // mouse y\n domStartX: 0, // on mousedown, the mouse x\n domStartY: 0, // on mousedown, the mouse y \n }\n }\n\n getContainerPos() {\n const rect = this._container.getBoundingClientRect();\n return {\n left: rect.left,\n top: rect.top\n }\n }\n\n onMousedown = (e) => {\n const state = this._state;\n state.isInDrag = true;\n state.mX = e.clientX;\n state.mY = e.clientY;\n this._container.style.position = \"absolute\";\n const { left, top } = this.getContainerPos();\n\n if (this._isFirst) {\n\n state.domMaxY = document.documentElement.clientHeight\n - this._container.offsetHeight - 1;\n state.domMaxX = document.documentElement.clientWidth\n - this._container.offsetWidth - 1;\n\n this._container.style.left = left + 'px';\n this._container.style.top = top + 'px';\n\n if (!this._style) {\n this._style = this._container.getAttribute(\"style\");\n }\n\n this._isFirst = false;\n }\n\n state.domStartX = left;\n state.domStartY = top;\n }\n\n onMouseup = (e) => {\n const state = this._state;\n\n state.isInDrag = false;\n\n const { left, top } = this.getContainerPos();\n state.domStartX = left;\n state.domStartY = top;\n }\n\n onMousemove = throttle((e) => {\n const state = this._state;\n if (state.isInDrag) {\n var nowX = e.clientX,\n nowY = e.clientY,\n disX = nowX - state.mX,\n disY = nowY - state.mY;\n\n var newDomX = state.domStartX + disX;\n var newDomY = state.domStartY + disY;\n if (this._options.inViewport) {\n if (newDomX < 0) {\n newDomX = 0;\n }\n else if (newDomX > state.domMaxX) {\n newDomX = state.domMaxX;\n }\n if (newDomY < 0) {\n newDomY = 0;\n }\n else if (newDomY > state.domMaxY) {\n newDomY = state.domMaxY;\n }\n }\n this._container.style.position = \"absolute\";\n this._container.style.margin = \"0\";\n this._container.style.paddingBottom = \"0\";\n this._container.style.left = newDomX + \"px\";\n this._container.style.top = newDomY + \"px\";\n }\n }, 10).bind(this);\n\n onResize = throttle((e) => {\n const state = this._state;\n\n state.domMaxY = document.documentElement.clientHeight\n - this._container.offsetHeight - 1;\n state.domMaxX = document.documentElement.clientWidth\n - this._container.offsetWidth - 1;\n state.domStartY = parseInt(this._container.style.top);\n state.domStartX = parseInt(this._container.style.left);\n if (state.domStartY > state.domMaxY) {\n if (state.domMaxY > 0) {\n this._container.style.top = state.domMaxY + \"px\";\n }\n }\n if (state.domStartX > state.domMaxX) {\n this._container.style.left = state.domMaxX + \"px\";\n }\n }, 10).bind(this);\n\n bindDrag() {\n const triggler = this._triggler;\n const options = this._options;\n\n triggler.addEventListener(\"mousedown\", this.onMousedown, false);\n window.addEventListener(\"mouseup\", this.onMouseup, false);\n document.addEventListener(\"mousemove\", this.onMousemove);\n if (options.inViewport) {\n window.addEventListener(\"resize\", this.onResize, false);\n }\n }\n\n unbindDrag() {\n const triggler = this._triggler;\n\n triggler.removeEventListener(\"mousedown\", this.onMousedown, false);\n window.removeEventListener(\"mouseup\", this.onMouseup, false);\n document.removeEventListener(\"mousemove\", this.onMousemove);\n if (this._options.inViewport) {\n window.removeEventListener(\"resize\", this.onResize, false);\n }\n }\n\n resetContainerStyle() {\n if (this._style !== null) {\n this._isFirst = true;\n this._container.setAttribute(\"style\", this._style);\n }\n }\n}\n\nfunction enableDraggable(triggler: HTMLElement, container: HTMLElement, dragInViewport: boolean = true) {\n let dragger = eventMap.get(triggler);\n if (!dragger) {\n dragger = new Dragger(triggler, container, dragInViewport);\n eventMap.set(triggler, dragger);\n } \n dragger.bindDrag();\n}\n\nfunction disableDraggable(triggler: HTMLElement) {\n const dragger = eventMap.get(triggler);\n if (dragger) {\n dragger.unbindDrag();\n }\n}\n\nfunction resetModalPosition(triggler: HTMLElement) {\n const dragger = eventMap.get(triggler);\n if (dragger) {\n dragger.resetContainerStyle();\n }\n}\n\nexport { enableDraggable, disableDraggable, resetModalPosition };","import * as interop from \"./core/JsInterop/interop\";\n\ndeclare global {\n interface Window {\n AntDesign: any;\n }\n}\n\nwindow.AntDesign = {\n interop,\n};\n"]}