{ "version": 3, "sources": ["../../Utilities/Scripts/BrowserApis/Observers/Resize/ResizeObserverEntryTO.ts", "../../Utilities/Scripts/BrowserApis/Common/BorderBoxSizeTO.ts", "../../Utilities/Scripts/BrowserApis/Common/DOMRectReadOnlyTO.ts", "../../Utilities/Scripts/BrowserApis/Observers/Resize/ResizeObserverManager.ts", "../../Utilities/Scripts/BrowserApis/Observers/Intersection/IntersectionObserverEntryTO.ts", "../../Utilities/Scripts/BrowserApis/Observers/Intersection/IntersectionObserverManager.ts", "../../Utilities/Scripts/BrowserApis/WebStorage/LocalStorageProxy.ts", "../../Utilities/Scripts/BrowserApis/WebStorage/SessionStorageProxy.ts", "../../Utilities/Scripts/BrowserApis/BrowserApis.ts"], "sourcesContent": ["\uFEFFimport { BoxSizeTO } from \"../../Common/BorderBoxSizeTO\";\r\nimport { DOMRectReadOnlyTO } from \"../../Common/DOMRectReadOnlyTO\";\r\n\r\nexport class ResizeObserverEntryTO {\r\n borderBoxSize?: BoxSizeTO;\r\n contentBoxSize?: BoxSizeTO;\r\n contentRect?: DOMRectReadOnlyTO;\r\n target?: Element;\r\n}\r\n", "\uFEFFexport class BoxSizeTO {\r\n public blockSize?: number;\r\n public inlineSize?: number;\r\n}\r\n", "export class DOMRectReadOnlyTO {\r\n x?: number;\r\n y?: number;\r\n width?: number;\r\n height?: number;\r\n top?: number;\r\n right?: number;\r\n bottom?: number;\r\n left?: number;\r\n}\r\n", "import { ResizeObserverEntryTO } from \"./ResizeObserverEntryTO\";\r\nimport { BoxSizeTO } from \"../../Common/BorderBoxSizeTO\";\r\nimport { DOMRectReadOnlyTO } from \"../../Common/DOMRectReadOnlyTO\";\r\n\r\nexport class ResizeObserverManager {\r\n private resizeObservers: Map = new Map<\r\n string,\r\n ResizeObserver\r\n >();\r\n private dotnetObservers: Map = new Map<\r\n string,\r\n IDotnetResizeObserver\r\n >();\r\n\r\n create = (\r\n instanceKey: string,\r\n dotnetInstanceRef: IDotnetResizeObserver\r\n ): void => {\r\n const observer = new ResizeObserver(this.observerCallBack);\r\n this.resizeObservers.set(instanceKey, observer);\r\n this.dotnetObservers.set(instanceKey, dotnetInstanceRef);\r\n };\r\n\r\n disconnect = (instanceKey: string): void => {\r\n const observer = this.resizeObservers.get(instanceKey);\r\n if (observer) {\r\n observer.disconnect();\r\n }\r\n };\r\n\r\n observe = (instanceKey: string, element: Element): void => {\r\n const observer = this.resizeObservers.get(instanceKey);\r\n if (observer) {\r\n observer.observe(element);\r\n }\r\n };\r\n\r\n unobserve = (instanceKey: string, element: Element): void => {\r\n const observer = this.resizeObservers.get(instanceKey);\r\n\r\n if (observer) {\r\n observer.unobserve(element);\r\n }\r\n };\r\n\r\n dispose = (instanceKey: string): void => {\r\n this.disconnect(instanceKey);\r\n this.dotnetObservers.delete(instanceKey);\r\n this.resizeObservers.delete(instanceKey);\r\n };\r\n\r\n private getKeyForObserver = (observer: ResizeObserver): string => {\r\n let foundKey = \"\";\r\n this.resizeObservers.forEach((value, key) => {\r\n if (observer == value) {\r\n foundKey = key;\r\n }\r\n });\r\n\r\n return foundKey;\r\n };\r\n\r\n private observerCallBack = (entries, observer) => {\r\n const key = this.getKeyForObserver(observer);\r\n\r\n if (!key || key.length == 0) {\r\n return;\r\n }\r\n\r\n const dotNetInstance = this.dotnetObservers.get(key);\r\n if (dotNetInstance) {\r\n const mappedEntries = new Array();\r\n entries.forEach((entry) => {\r\n if (entry) {\r\n const mEntry = new ResizeObserverEntryTO();\r\n if (entry.borderBoxSize) {\r\n mEntry.borderBoxSize = new BoxSizeTO();\r\n mEntry.borderBoxSize.blockSize = entry.borderBoxSize.blockSize;\r\n mEntry.borderBoxSize.inlineSize = entry.borderBoxSize.inlineSize;\r\n }\r\n\r\n if (entry.contentBoxSize) {\r\n mEntry.contentBoxSize = new BoxSizeTO();\r\n mEntry.contentBoxSize.blockSize = entry.contentBoxSize.blockSize;\r\n mEntry.contentBoxSize.inlineSize = entry.contentBoxSize.inlineSize;\r\n }\r\n\r\n if (entry.contentRect) {\r\n mEntry.contentRect = new DOMRectReadOnlyTO();\r\n mEntry.contentRect.x = entry.contentRect.x;\r\n mEntry.contentRect.y = entry.contentRect.y;\r\n mEntry.contentRect.width = entry.contentRect.width;\r\n mEntry.contentRect.height = entry.contentRect.height;\r\n mEntry.contentRect.top = entry.contentRect.top;\r\n mEntry.contentRect.right = entry.contentRect.right;\r\n mEntry.contentRect.bottom = entry.contentRect.bottom;\r\n mEntry.contentRect.left = entry.contentRect.left;\r\n }\r\n\r\n // mEntry.target = entry.target\r\n mappedEntries.push(mEntry);\r\n }\r\n });\r\n\r\n const entriesJson = JSON.stringify(mappedEntries);\r\n dotNetInstance.invokeMethodAsync(\"InvokeCallback\", entriesJson);\r\n }\r\n };\r\n}\r\n\r\ninterface IDotnetResizeObserver {\r\n invokeMethodAsync(methodName: string, entries: string): void;\r\n}\r\n", "import { DOMRectReadOnlyTO } from \"../../Common/DOMRectReadOnlyTO\";\r\n\r\nexport class IntersectionObserverEntryTO {\r\n boundingClientRect?: DOMRectReadOnlyTO;\r\n intersectionRatio?: number;\r\n intersectionRect?: DOMRectReadOnlyTO;\r\n isIntersecting?: boolean;\r\n rootBounds?: DOMRectReadOnlyTO;\r\n target?: Element;\r\n time?: number;\r\n}\r\n", "import { IntersectionObserverEntryTO } from \"./IntersectionObserverEntryTO\";\r\nimport { DOMRectReadOnlyTO } from \"../../Common/DOMRectReadOnlyTO\";\r\n\r\nexport class IntersectionObserverManager {\r\n private observers: Map = new Map<\r\n string,\r\n IntersectionObserver\r\n >();\r\n private dotnetObservers: Map = new Map<\r\n string,\r\n IDotnetIntersectionObserver\r\n >();\r\n\r\n create = (\r\n instanceKey: string,\r\n dotnetInstanceRef: IDotnetIntersectionObserver,\r\n options?: IntersectionObserverOptions\r\n ): void => {\r\n const observer = new IntersectionObserver(this.observerCallBack, options);\r\n this.observers.set(instanceKey, observer);\r\n this.dotnetObservers.set(instanceKey, dotnetInstanceRef);\r\n };\r\n\r\n disconnect = (instanceKey: string): void => {\r\n const observer = this.observers.get(instanceKey);\r\n if (observer) {\r\n observer.disconnect();\r\n }\r\n };\r\n\r\n observe = (instanceKey: string, element: Element): void => {\r\n const observer = this.observers.get(instanceKey);\r\n\r\n if (observer) {\r\n observer.observe(element);\r\n }\r\n };\r\n\r\n unobserve = (instanceKey: string, element: Element): void => {\r\n const observer = this.observers.get(instanceKey);\r\n\r\n if (observer) {\r\n observer.unobserve(element);\r\n }\r\n };\r\n\r\n takeRecords = (instanceKey: string): string | undefined => {\r\n const observer = this.observers.get(instanceKey);\r\n\r\n if (observer) {\r\n const entries = observer.takeRecords();\r\n const mappedEntries = this.convertEntries(entries);\r\n\r\n return JSON.stringify(mappedEntries);\r\n }\r\n };\r\n\r\n dispose = (instanceKey: string): void => {\r\n this.disconnect(instanceKey);\r\n this.dotnetObservers.delete(instanceKey);\r\n this.observers.delete(instanceKey);\r\n };\r\n\r\n private getKeyForObserver = (observer: IntersectionObserver): string => {\r\n let foundKey = \"\";\r\n this.observers.forEach((value, key) => {\r\n if (observer == value) {\r\n foundKey = key;\r\n }\r\n });\r\n\r\n return foundKey;\r\n };\r\n\r\n private observerCallBack = (\r\n entries: IntersectionObserverEntry[],\r\n observer: IntersectionObserver\r\n ) => {\r\n const key = this.getKeyForObserver(observer);\r\n\r\n if (!key || key.length == 0) {\r\n return;\r\n }\r\n\r\n const dotNetInstance = this.dotnetObservers.get(key);\r\n if (dotNetInstance) {\r\n const mappedEntries = this.convertEntries(entries);\r\n const entriesJson = JSON.stringify(mappedEntries);\r\n dotNetInstance.invokeMethodAsync(\"InvokeCallback\", entriesJson);\r\n }\r\n };\r\n\r\n private convertEntries = (\r\n entries: IntersectionObserverEntry[]\r\n ): IntersectionObserverEntryTO[] => {\r\n const mappedEntries = new Array();\r\n if (!entries) {\r\n return mappedEntries;\r\n }\r\n\r\n entries.forEach((entry: IntersectionObserverEntry) => {\r\n if (entry) {\r\n const mEntry = new IntersectionObserverEntryTO();\r\n if (entry.boundingClientRect) {\r\n mEntry.boundingClientRect = this.convertDOMReadOnlyRect(\r\n entry.boundingClientRect\r\n );\r\n }\r\n\r\n if (entry.intersectionRect) {\r\n mEntry.intersectionRect = this.convertDOMReadOnlyRect(\r\n entry.intersectionRect\r\n );\r\n }\r\n\r\n if (entry.rootBounds) {\r\n mEntry.rootBounds = this.convertDOMReadOnlyRect(entry.rootBounds);\r\n }\r\n\r\n mEntry.intersectionRatio = entry.intersectionRatio;\r\n mEntry.isIntersecting = entry.isIntersecting;\r\n mEntry.time = entry.time;\r\n mEntry.target = entry.target;\r\n mappedEntries.push(mEntry);\r\n }\r\n });\r\n\r\n return mappedEntries;\r\n };\r\n\r\n private convertDOMReadOnlyRect = (\r\n source: DOMRectReadOnly | ClientRect | DOMRect\r\n ): DOMRectReadOnlyTO => {\r\n const target = new DOMRectReadOnlyTO();\r\n target.width = source.width;\r\n target.height = source.height;\r\n target.top = source.top;\r\n target.right = source.right;\r\n target.bottom = source.bottom;\r\n target.left = source.left;\r\n return target;\r\n };\r\n}\r\n\r\ninterface IDotnetIntersectionObserver {\r\n invokeMethodAsync(methodName: string, entries: string): void;\r\n}\r\n\r\ninterface IntersectionObserverOptions {\r\n root?: Element;\r\n rootMargin?: string;\r\n threshold?: number | number[];\r\n}\r\n", "export class LocalStorageProxy {\r\n getLength = (): number => {\r\n return window.localStorage.length;\r\n };\r\n\r\n key = (index: number): string | null => {\r\n return window.localStorage.key(index);\r\n };\r\n\r\n getItem = (key: string): string | null => {\r\n return window.localStorage.getItem(key);\r\n };\r\n\r\n setItem = (key: string, value: string): void => {\r\n window.localStorage.setItem(key, value);\r\n };\r\n\r\n removeItem = (key: string): void => {\r\n window.localStorage.removeItem(key);\r\n };\r\n\r\n clear = (): void => {\r\n window.localStorage.clear();\r\n };\r\n}\r\n", "export class SessionStorageProxy {\r\n getLength = (): number => {\r\n return window.sessionStorage.length;\r\n };\r\n\r\n key = (index: number): string | null => {\r\n return window.sessionStorage.key(index);\r\n };\r\n\r\n getItem = (key: string): string | null => {\r\n return window.sessionStorage.getItem(key);\r\n };\r\n\r\n setItem = (key: string, value: string): void => {\r\n window.sessionStorage.setItem(key, value);\r\n };\r\n\r\n removeItem = (key: string): void => {\r\n window.sessionStorage.removeItem(key);\r\n };\r\n\r\n clear = (): void => {\r\n window.sessionStorage.clear();\r\n };\r\n}\r\n", "import { ResizeObserverManager } from \"./Observers/Resize/ResizeObserverManager\";\r\nimport { IntersectionObserverManager } from \"./Observers/Intersection/IntersectionObserverManager\";\r\nimport { LocalStorageProxy } from \"./WebStorage/LocalStorageProxy\";\r\nimport { SessionStorageProxy } from \"./WebStorage/SessionStorageProxy\";\r\n\r\nconst BrowserApisInit = {\r\n BrowserApis: {\r\n ResizeObserverManager: new ResizeObserverManager(),\r\n IntersectionObserverManager: new IntersectionObserverManager(),\r\n LocalStorageProxy: new LocalStorageProxy(),\r\n SessionStorageProxy: new SessionStorageProxy()\r\n },\r\n initialize: () => {\r\n const StaticName = \"BrowserApis\";\r\n if (typeof window != \"undefined\" && !window[StaticName]) {\r\n window[StaticName] = {\r\n ...BrowserApisInit.BrowserApis,\r\n };\r\n } else {\r\n window[StaticName] = {\r\n ...window[StaticName],\r\n ...BrowserApisInit.BrowserApis,\r\n };\r\n }\r\n },\r\n};\r\n\r\nBrowserApisInit.initialize();\r\n"], "mappings": "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", "names": ["ResizeObserverEntryTO", "BoxSizeTO", "DOMRectReadOnlyTO", "ResizeObserverManager", "instanceKey", "dotnetInstanceRef", "observer", "element", "foundKey", "value", "key", "entries", "dotNetInstance", "mappedEntries", "entry", "mEntry", "ResizeObserverEntryTO", "BoxSizeTO", "DOMRectReadOnlyTO", "entriesJson", "IntersectionObserverEntryTO", "IntersectionObserverManager", "instanceKey", "dotnetInstanceRef", "options", "observer", "element", "entries", "mappedEntries", "foundKey", "value", "key", "dotNetInstance", "entriesJson", "entry", "mEntry", "IntersectionObserverEntryTO", "source", "target", "DOMRectReadOnlyTO", "LocalStorageProxy", "index", "key", "value", "SessionStorageProxy", "index", "key", "value", "BrowserApisInit", "ResizeObserverManager", "IntersectionObserverManager", "LocalStorageProxy", "SessionStorageProxy", "StaticName"] }