@ms-cloudpack/overlay 0.17.30 → 0.17.31
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/browser-esm/chunks/js/{ErrorDialog-744DEKEI.js → ErrorDialog-5IGGA35U.js} +2 -2
- package/dist/browser-esm/chunks/js/{StatusDialog-J6LM3XZZ.js → StatusDialog-7Q5HGOOM.js} +2 -2
- package/dist/browser-esm/chunks/js/{chunk-PDWQRLCD.js → chunk-GBPQMJW6.js} +2 -8
- package/dist/browser-esm/chunks/js/{chunk-PDWQRLCD.js.map → chunk-GBPQMJW6.js.map} +2 -2
- package/dist/browser-esm/lib/constants.js +1 -3
- package/dist/browser-esm/lib/index.js +21 -23
- package/dist/browser-esm/lib/index.js.map +4 -4
- package/dist/browser-esm/ori-output.json +31 -46
- package/dist/browser-esm/result.json +8 -10
- package/lib/components/ErrorDialog/useErrorEvents.d.ts +0 -9
- package/lib/components/ErrorDialog/useErrorEvents.d.ts.map +1 -1
- package/lib/components/ErrorDialog/useErrorEvents.js.map +1 -1
- package/lib/constants.d.ts +0 -8
- package/lib/constants.d.ts.map +1 -1
- package/lib/constants.js +0 -8
- package/lib/constants.js.map +1 -1
- package/lib/hooks/usePageLoadTimeReporter.d.ts.map +1 -1
- package/lib/hooks/usePageLoadTimeReporter.js +9 -0
- package/lib/hooks/usePageLoadTimeReporter.js.map +1 -1
- package/lib/index.js +10 -7
- package/lib/index.js.map +1 -1
- package/package.json +4 -3
- package/lib/components/CloudpackProvider/getCookies.d.ts +0 -5
- package/lib/components/CloudpackProvider/getCookies.d.ts.map +0 -1
- package/lib/components/CloudpackProvider/getCookies.js +0 -17
- package/lib/components/CloudpackProvider/getCookies.js.map +0 -1
- /package/dist/browser-esm/chunks/js/{ErrorDialog-744DEKEI.js.map → ErrorDialog-5IGGA35U.js.map} +0 -0
- /package/dist/browser-esm/chunks/js/{StatusDialog-J6LM3XZZ.js.map → StatusDialog-7Q5HGOOM.js.map} +0 -0
|
@@ -11,7 +11,7 @@ import {
|
|
|
11
11
|
} from "./chunk-7KHMDJ6G.js";
|
|
12
12
|
import {
|
|
13
13
|
elementIds
|
|
14
|
-
} from "./chunk-
|
|
14
|
+
} from "./chunk-GBPQMJW6.js";
|
|
15
15
|
|
|
16
16
|
// packages/overlay/src/components/ErrorDialog/ErrorDialog.tsx
|
|
17
17
|
import { default as React2 } from "react";
|
|
@@ -71,4 +71,4 @@ export {
|
|
|
71
71
|
ErrorDialog,
|
|
72
72
|
ErrorDialog_default as default
|
|
73
73
|
};
|
|
74
|
-
//# sourceMappingURL=ErrorDialog-
|
|
74
|
+
//# sourceMappingURL=ErrorDialog-5IGGA35U.js.map
|
|
@@ -11,7 +11,7 @@ import {
|
|
|
11
11
|
} from "./chunk-7KHMDJ6G.js";
|
|
12
12
|
import {
|
|
13
13
|
elementIds
|
|
14
|
-
} from "./chunk-
|
|
14
|
+
} from "./chunk-GBPQMJW6.js";
|
|
15
15
|
|
|
16
16
|
// packages/overlay/src/components/StatusDialog/StatusDialog.tsx
|
|
17
17
|
import React5, { useCallback } from "react";
|
|
@@ -313,4 +313,4 @@ export {
|
|
|
313
313
|
StatusDialog,
|
|
314
314
|
StatusDialog_default as default
|
|
315
315
|
};
|
|
316
|
-
//# sourceMappingURL=StatusDialog-
|
|
316
|
+
//# sourceMappingURL=StatusDialog-7Q5HGOOM.js.map
|
|
@@ -17,14 +17,8 @@ var elementIds = {
|
|
|
17
17
|
*/
|
|
18
18
|
statusBadgeRoot: "cloudpack-overlay-status-badge"
|
|
19
19
|
};
|
|
20
|
-
var cookieNames = {
|
|
21
|
-
sessionId: "cloudpack-session-id",
|
|
22
|
-
sessionSequence: "cloudpack-session-sequence",
|
|
23
|
-
apiUrl: "cloudpack-api-url"
|
|
24
|
-
};
|
|
25
20
|
|
|
26
21
|
export {
|
|
27
|
-
elementIds
|
|
28
|
-
cookieNames
|
|
22
|
+
elementIds
|
|
29
23
|
};
|
|
30
|
-
//# sourceMappingURL=chunk-
|
|
24
|
+
//# sourceMappingURL=chunk-GBPQMJW6.js.map
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../../src/constants.ts"],
|
|
4
|
-
"sourcesContent": ["// This file serves as a separate entry point which can be imported without rendering the overlay\n// as a side effect.\n\nexport const elementIds = {\n /**\n * ID for the root element of the overlay.\n */\n root: 'cloudpack-overlay-root',\n /**\n * ID for the root element of the error dialog.\n */\n errorDialogRoot: 'cloudpack-overlay-error-dialog',\n /**\n * ID for the root element of the status dialog.\n */\n statusDialogRoot: 'cloudpack-overlay-status-dialog',\n /**\n * ID for the root element of the status badge.\n */\n statusBadgeRoot: 'cloudpack-overlay-status-badge',\n} as const;\n
|
|
5
|
-
"mappings": ";AAGO,IAAM,aAAa;AAAA;AAAA;AAAA;AAAA,EAIxB,MAAM;AAAA;AAAA;AAAA;AAAA,EAIN,iBAAiB;AAAA;AAAA;AAAA;AAAA,EAIjB,kBAAkB;AAAA;AAAA;AAAA;AAAA,EAIlB,iBAAiB;AACnB;
|
|
4
|
+
"sourcesContent": ["// This file serves as a separate entry point which can be imported without rendering the overlay\n// as a side effect.\n\nexport const elementIds = {\n /**\n * ID for the root element of the overlay.\n */\n root: 'cloudpack-overlay-root',\n /**\n * ID for the root element of the error dialog.\n */\n errorDialogRoot: 'cloudpack-overlay-error-dialog',\n /**\n * ID for the root element of the status dialog.\n */\n statusDialogRoot: 'cloudpack-overlay-status-dialog',\n /**\n * ID for the root element of the status badge.\n */\n statusBadgeRoot: 'cloudpack-overlay-status-badge',\n} as const;\n"],
|
|
5
|
+
"mappings": ";AAGO,IAAM,aAAa;AAAA;AAAA;AAAA;AAAA,EAIxB,MAAM;AAAA;AAAA;AAAA;AAAA,EAIN,iBAAiB;AAAA;AAAA;AAAA;AAAA,EAIjB,kBAAkB;AAAA;AAAA;AAAA;AAAA,EAIlB,iBAAiB;AACnB;",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|
|
@@ -4,9 +4,8 @@ import {
|
|
|
4
4
|
useDraggable
|
|
5
5
|
} from "../chunks/js/chunk-7KHMDJ6G.js";
|
|
6
6
|
import {
|
|
7
|
-
cookieNames,
|
|
8
7
|
elementIds
|
|
9
|
-
} from "../chunks/js/chunk-
|
|
8
|
+
} from "../chunks/js/chunk-GBPQMJW6.js";
|
|
10
9
|
|
|
11
10
|
// packages/overlay/src/index.tsx
|
|
12
11
|
import React5 from "react";
|
|
@@ -345,10 +344,19 @@ function usePageLoadTimeReporter() {
|
|
|
345
344
|
const cloudpack = useCloudpack();
|
|
346
345
|
React2.useEffect(() => {
|
|
347
346
|
async function reportPageLoadTime() {
|
|
347
|
+
if (!window.__cloudpack) {
|
|
348
|
+
throw new Error("Cloudpack not found on window");
|
|
349
|
+
}
|
|
348
350
|
const { getPageLoadTime, getBrowserCacheRatio } = window.__cloudpack;
|
|
351
|
+
if (!getPageLoadTime) {
|
|
352
|
+
throw new Error("getPageLoadTime not found on window.__cloudpack");
|
|
353
|
+
}
|
|
349
354
|
const newPageLoadTime = await getPageLoadTime();
|
|
350
355
|
setPageLoadTime(newPageLoadTime);
|
|
351
356
|
await cloudpack.reportMetric.mutate({ metric: "PAGE_LOAD_TIME", value: newPageLoadTime });
|
|
357
|
+
if (!getBrowserCacheRatio) {
|
|
358
|
+
throw new Error("getBrowserCacheRatio not found on window.__cloudpack");
|
|
359
|
+
}
|
|
352
360
|
await cloudpack.reportMetric.mutate({ metric: "BROWSER_CACHE_RATIO", value: getBrowserCacheRatio() });
|
|
353
361
|
}
|
|
354
362
|
void reportPageLoadTime();
|
|
@@ -357,8 +365,8 @@ function usePageLoadTimeReporter() {
|
|
|
357
365
|
}
|
|
358
366
|
|
|
359
367
|
// packages/overlay/src/components/StatusOverlay/StatusOverlay.tsx
|
|
360
|
-
var StatusDialog = React3.lazy(() => import("../chunks/js/StatusDialog-
|
|
361
|
-
var ErrorDialog = React3.lazy(() => import("../chunks/js/ErrorDialog-
|
|
368
|
+
var StatusDialog = React3.lazy(() => import("../chunks/js/StatusDialog-7Q5HGOOM.js"));
|
|
369
|
+
var ErrorDialog = React3.lazy(() => import("../chunks/js/ErrorDialog-5IGGA35U.js"));
|
|
362
370
|
function StatusOverlay() {
|
|
363
371
|
const pageLoadTime = usePageLoadTimeReporter();
|
|
364
372
|
const [isExpanded, setIsExpanded] = useState4(false);
|
|
@@ -413,32 +421,22 @@ function ThemeProvider({ children }) {
|
|
|
413
421
|
|
|
414
422
|
// packages/overlay/src/index.tsx
|
|
415
423
|
import { createCloudpackClient, reloadCountSource } from "@ms-cloudpack/api-server/browser";
|
|
416
|
-
|
|
417
|
-
// packages/overlay/src/components/CloudpackProvider/getCookies.ts
|
|
418
|
-
function getCookies() {
|
|
419
|
-
return document.cookie.split(";").map((s3) => s3.split("=")).reduce((current, nextValue) => {
|
|
420
|
-
const name = nextValue[0]?.trim();
|
|
421
|
-
const value2 = decodeURIComponent(nextValue[1]?.trim());
|
|
422
|
-
if (name && value2) {
|
|
423
|
-
current[name] = value2;
|
|
424
|
-
}
|
|
425
|
-
return current;
|
|
426
|
-
}, {});
|
|
427
|
-
}
|
|
428
|
-
|
|
429
|
-
// packages/overlay/src/index.tsx
|
|
430
424
|
async function start() {
|
|
431
|
-
|
|
432
|
-
|
|
433
|
-
|
|
434
|
-
const
|
|
425
|
+
if (!window.__cloudpack) {
|
|
426
|
+
throw new Error("Cloudpack not found on window");
|
|
427
|
+
}
|
|
428
|
+
const { pageSessionContext } = window.__cloudpack;
|
|
429
|
+
if (!pageSessionContext) {
|
|
430
|
+
throw new Error("Session context not found on window.__cloudpack");
|
|
431
|
+
}
|
|
432
|
+
const { apiUrl, currentSequence, sessionId } = pageSessionContext;
|
|
435
433
|
const client = await createCloudpackClient({ url: apiUrl });
|
|
436
434
|
if (sessionId === await client.getSessionId.query()) {
|
|
437
435
|
console.log("[Cloudpack] socket opened");
|
|
438
436
|
}
|
|
439
437
|
client.onDataChanged.subscribe(reloadCountSource, {
|
|
440
438
|
onData: (data) => {
|
|
441
|
-
if (Number(data) >
|
|
439
|
+
if (Number(data) > currentSequence) {
|
|
442
440
|
window.location.reload();
|
|
443
441
|
}
|
|
444
442
|
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
|
-
"sources": ["../../../src/index.tsx", "../../../src/components/StatusOverlay/StatusOverlay.tsx", "../../../src/components/StatusBadge/StatusBadge.tsx", "../../../src/components/StatusBadge/StatusBadge.module.css", "../../../src/components/CloudpackProvider/useStatus.ts", "../../../src/components/ErrorDialog/useErrorEvents.ts", "../../../src/hooks/usePageLoadTimeReporter.ts", "../../../src/components/ThemeProvider/ThemeProvider.tsx", "../../../src/components/ThemeProvider/ThemeProvider.module.css"
|
|
4
|
-
"sourcesContent": ["import React from 'react';\nimport ReactDOM from 'react-dom';\nimport { CloudpackProvider } from './components/CloudpackProvider/CloudpackProvider.js';\nimport { StatusOverlay } from './components/StatusOverlay/StatusOverlay.js';\nimport { ThemeProvider } from './components/ThemeProvider/ThemeProvider.js';\nimport { cookieNames, elementIds } from './constants.js';\nimport { createCloudpackClient, reloadCountSource } from '@ms-cloudpack/api-server/browser';\nimport { getCookies } from './components/CloudpackProvider/getCookies.js';\n\nasync function start() {\n const cookies = getCookies();\n const sessionId = cookies[cookieNames.sessionId] ?? localStorage.getItem(cookieNames.sessionId);\n const apiUrl = cookies[cookieNames.apiUrl] ?? localStorage.getItem(cookieNames.apiUrl);\n const currentSequence = cookies[cookieNames.sessionSequence] ?? localStorage.getItem(cookieNames.sessionSequence);\n\n const client = await createCloudpackClient({ url: apiUrl });\n\n if (sessionId === (await client.getSessionId.query())) {\n console.log('[Cloudpack] socket opened');\n }\n\n client.onDataChanged.subscribe(reloadCountSource, {\n onData: (data) => {\n if (Number(data) > Number(currentSequence)) {\n window.location.reload();\n }\n },\n });\n\n const rootDiv = document.createElement('div');\n rootDiv.id = elementIds.root;\n\n ReactDOM.render(\n <ThemeProvider>\n <CloudpackProvider client={client}>\n <StatusOverlay />\n </CloudpackProvider>\n </ThemeProvider>,\n rootDiv,\n );\n\n document.body.appendChild(rootDiv);\n}\n\nvoid start();\n", "import React, { useCallback, useState, useRef } from 'react';\nimport { StatusBadge } from '../StatusBadge/StatusBadge.js';\nimport { useStatus, type CloudpackStatus } from '../CloudpackProvider/useStatus.js';\nimport { useErrorEvents } from '../ErrorDialog/useErrorEvents.js';\nimport { usePageLoadTimeReporter } from '../../hooks/usePageLoadTimeReporter.js';\n\nconst StatusDialog = React.lazy(() => import('../StatusDialog/StatusDialog.js'));\nconst ErrorDialog = React.lazy(() => import('../ErrorDialog/ErrorDialog.js'));\n\nexport function StatusOverlay() {\n const pageLoadTime = usePageLoadTimeReporter();\n const [isExpanded, setIsExpanded] = useState<boolean>(false);\n const status = useStatus();\n const prevStatus = useRef<CloudpackStatus | undefined>();\n const { unsupported } = useErrorEvents();\n\n // If we haven't set a specific state and we become idle,\n // pop open the details if there are errors.\n React.useEffect(() => {\n if (\n !isExpanded &&\n prevStatus.current?.status !== 'idle' &&\n status.status === 'idle' &&\n (prevStatus.current?.totalErrors || 0) !== (status.totalErrors || 0)\n ) {\n setIsExpanded(true);\n }\n prevStatus.current = status;\n }, [status, isExpanded]);\n\n const toggleMinimized = useCallback(() => {\n console.log(`Toggling minimized state to ${!isExpanded}`);\n setIsExpanded(!isExpanded);\n }, [isExpanded]);\n\n const result = unsupported.length ? (\n <ErrorDialog unsupported={unsupported} />\n ) : isExpanded ? (\n <StatusDialog onClose={toggleMinimized} />\n ) : (\n <StatusBadge onExpand={toggleMinimized} pageLoadTime={pageLoadTime} />\n );\n\n return <React.Suspense fallback={null}>{result}</React.Suspense>;\n}\n", "import React, { useCallback, useRef, useState } from 'react';\nimport { useDraggable } from '../../hooks/useDraggable.js';\nimport styles from './StatusBadge.module.css';\nimport { default as cx } from 'classnames';\nimport { useStatus, type CloudpackStatus } from '../CloudpackProvider/useStatus.js';\nimport { elementIds } from '../../constants.js';\n\nexport interface StatusBadgeProps {\n inline?: boolean;\n onExpand?: () => void;\n onToggle?: () => void;\n pageLoadTime?: number;\n}\n\nexport function StatusBadge({ inline, onExpand, pageLoadTime }: StatusBadgeProps) {\n const badgeStatusKey = 'cloudpack.badgeStatus';\n\n const rootElementRef = useRef<HTMLDivElement>(null);\n const dragElementRef = useRef<HTMLDivElement>(null);\n const status = useStatus();\n const [isCollapsed, setIsCollapsed] = useState<boolean>(!!localStorage.getItem(badgeStatusKey));\n\n const shouldRender = status.status !== 'unknown';\n\n const toggleBadgeVisibility = useCallback(() => {\n const newCollapsedState = !isCollapsed;\n console.log('Status badge collapsed state:', newCollapsedState);\n setIsCollapsed(newCollapsedState);\n localStorage.setItem(badgeStatusKey, newCollapsedState ? 'collapsed' : '');\n }, [isCollapsed]);\n\n useDraggable({\n // If we're not yet able to render, don't enable dragging yet.\n // Otherwise the event handlers won't be attached when the component renders.\n enabled: shouldRender && !inline,\n containerElementRef: rootElementRef,\n dragElementRef,\n });\n\n if (!shouldRender) {\n return null;\n }\n\n const metric = pageLoadTime ? (\n <span className={styles.metric} title=\"Page Load Time\">\n in {pageLoadTime.toFixed(2)} ms\n </span>\n ) : null;\n\n const leftChevron = '\\u00AB';\n const rightChevron = '\\u00BB';\n const badge = (\n <div\n id={elementIds.statusBadgeRoot}\n ref={rootElementRef}\n className={`${getStatusClassName(status, !!inline)} ${getCollapsedClassName(isCollapsed)}`}\n >\n {!inline && (\n <div ref={dragElementRef} className={styles.gripArea}>\n <div className={styles.grip} />\n <div className={styles.grip} />\n </div>\n )}\n <button className={styles.button} onClick={onExpand} aria-label=\"Expand overlay\">\n <div className={styles.value}>{getStatusString(status)}</div>\n </button>\n <div>\n {getStatsString(status)}\n {metric}\n </div>\n <button className={`${styles.button} ${styles.chevron}`} onClick={toggleBadgeVisibility}>\n {isCollapsed ? leftChevron : rightChevron}\n </button>\n </div>\n );\n\n return inline ? (\n badge\n ) : (\n <div className={styles.fixedOverlay}>\n <div className={styles.contentSurface}>{badge}</div>\n </div>\n );\n}\n\nfunction getStatusString(status: CloudpackStatus) {\n if (status.status === 'pending') {\n return 'Running';\n }\n\n if (status.totalTasks === 0) {\n return 'Idle';\n }\n\n return status.totalErrors === 0 ? 'Success' : 'Errors';\n}\n\nfunction getStatusClassName({ status, totalTasks, totalErrors, totalWarnings }: CloudpackStatus, inline: boolean) {\n return cx(styles.badge, {\n [styles.inline]: inline,\n [styles.building]: status === 'pending',\n [styles.success]: status === 'idle' && totalTasks > 0 && totalErrors === 0 && totalWarnings === 0,\n [styles.error]: status === 'idle' && totalErrors > 0,\n [styles.warning]: status === 'idle' && totalErrors === 0 && totalWarnings > 0,\n });\n}\n\nfunction getCollapsedClassName(isCollapsed: boolean) {\n return cx(styles.badge, {\n [styles.collapsed]: isCollapsed,\n });\n}\n\nfunction getStatsString({ totalTasks, remainingTasks, totalErrors, totalWarnings }: CloudpackStatus) {\n if (totalTasks === 0) {\n return '';\n }\n\n return [\n remainingTasks > 0 && `${remainingTasks} of ${totalTasks} tasks pending`,\n remainingTasks === 0 && `${totalTasks} tasks completed`,\n totalErrors === 1 && `${totalErrors} error`,\n totalErrors > 1 && `${totalErrors} errors`,\n totalWarnings === 1 && `${totalWarnings} warning`,\n totalWarnings > 1 && `${totalWarnings} warnings`,\n ]\n .filter(Boolean)\n .join(', ');\n}\n", "// THIS FILE IS AUTO GENERATED FROM packages/overlay/src/components/StatusBadge/StatusBadge.module.css\n\n\nlet compiledModule = `.uHuWYf-StatusBadgemodule--fixedOverlay {\\n position: fixed;\\n pointer-events: none;\\n background: transparent;\\n top: 0;\\n bottom: 0;\\n left: 0;\\n right: 0;\\n z-index: 99999;\\n overflow: hidden;\\n}\\n\\n.uHuWYf-StatusBadgemodule--gripArea {\\n display: flex;\\n flex-direction: row;\\n gap: 2px;\\n height: 100%;\\n width: 12px;\\n cursor: move;\\n margin-right: -4px;\\n}\\n\\n.uHuWYf-StatusBadgemodule--grip {\\n width: 2px;\\n height: 100%;\\n background: rgba(0, 0, 0, 0.2);\\n}\\n\\n.uHuWYf-StatusBadgemodule--contentSurface {\\n pointer-events: auto;\\n display: contents;\\n}\\n\\n.uHuWYf-StatusBadgemodule--badge {\\n position: absolute;\\n bottom: 4px;\\n right: 4px;\\n font-size: 12px;\\n display: inline-flex;\\n gap: 8px;\\n background: #dddddd;\\n box-shadow: 0 0 12px -6px rgba(0, 0, 0, 0.75);\\n border: 1px solid #999999;\\n border-radius: 4px;\\n height: 28px;\\n flex-shrink: 0;\\n justify-content: center;\\n align-items: center;\\n box-sizing: border-box;\\n padding: 3px;\\n padding-right: 8px;\\n\\n transition: background-color 0.2s ease-in-out;\\n}\\n\\n.uHuWYf-StatusBadgemodule--inline {\\n flex-shrink: 0;\\n position: relative;\\n bottom: auto;\\n right: auto;\\n top: auto;\\n left: auto;\\n box-shadow: none;\\n padding-left: 8px;\\n}\\n\\n.uHuWYf-StatusBadgemodule--building {\\n background: #bbb;\\n color: #000;\\n}\\n\\n.uHuWYf-StatusBadgemodule--success {\\n background: #7ad17a;\\n color: #000;\\n}\\n\\n.uHuWYf-StatusBadgemodule--warning {\\n background: #e4e68b;\\n color: #000;\\n}\\n\\n.uHuWYf-StatusBadgemodule--error {\\n background: #ffb9b9;\\n color: #000;\\n}\\n\\n.uHuWYf-StatusBadgemodule--button {\\n cursor: pointer;\\n background: inherit;\\n border: none;\\n border-radius: 3px;\\n display: flex;\\n align-self: stretch;\\n align-items: center;\\n justify-content: center;\\n box-sizing: border-box;\\n padding: 0;\\n margin: 0;\\n font-weight: inherit;\\n font-size: inherit;\\n font-family: inherit;\\n}\\n\\n.uHuWYf-StatusBadgemodule--button:hover {\\n filter: invert(0.1);\\n}\\n\\n.uHuWYf-StatusBadgemodule--value {\\n font-weight: 600;\\n background: rgba(255, 255, 255, 0.4);\\n box-shadow: 2px 2px 3px -1px rgba(0, 0, 0, 0.15) inset;\\n padding: 2px 8px;\\n border-radius: 3px;\\n}\\n\\n.uHuWYf-StatusBadgemodule--metric {\\n margin-left: 2px;\\n}\\n\\n.uHuWYf-StatusBadgemodule--collapsed {\\n overflow: hidden;\\n padding: 0;\\n}\\n.uHuWYf-StatusBadgemodule--collapsed *:not(.uHuWYf-StatusBadgemodule--chevron) {\\n display: none;\\n}\\n\\n.uHuWYf-StatusBadgemodule--chevron {\\n padding: 0 3px;\\n}\\n`;\nconst s = document.createElement('style');\ns.setAttribute('data-sourceFile', 'packages/overlay/src/components/StatusBadge/StatusBadge.module.css');\ns.appendChild(document.createTextNode(compiledModule));\ndocument.head.appendChild(s)\nexport const badge = 'uHuWYf-StatusBadgemodule--badge';\nexport const building = 'uHuWYf-StatusBadgemodule--building';\nexport const button = 'uHuWYf-StatusBadgemodule--button';\nexport const chevron = 'uHuWYf-StatusBadgemodule--chevron';\nexport const collapsed = 'uHuWYf-StatusBadgemodule--collapsed';\nexport const contentSurface = 'uHuWYf-StatusBadgemodule--contentSurface';\nexport const error = 'uHuWYf-StatusBadgemodule--error';\nexport const fixedOverlay = 'uHuWYf-StatusBadgemodule--fixedOverlay';\nexport const grip = 'uHuWYf-StatusBadgemodule--grip';\nexport const gripArea = 'uHuWYf-StatusBadgemodule--gripArea';\nexport const inline = 'uHuWYf-StatusBadgemodule--inline';\nexport const metric = 'uHuWYf-StatusBadgemodule--metric';\nexport const success = 'uHuWYf-StatusBadgemodule--success';\nexport const value = 'uHuWYf-StatusBadgemodule--value';\nexport const warning = 'uHuWYf-StatusBadgemodule--warning';\nexport default {badge, building, button, chevron, collapsed, contentSurface, error, fixedOverlay, grip, gripArea, inline, metric, success, value, warning}\n", "import { useEffect, useState } from 'react';\nimport { useCloudpack } from './CloudpackProvider.js';\nimport { taskStatsSource, type TaskStats } from '@ms-cloudpack/api-server/browser';\n\nexport type CloudpackStatus = TaskStats;\n\nconst defaultStatus: CloudpackStatus = {\n status: 'unknown',\n remainingTasks: 0,\n totalTasks: 0,\n totalErrors: 0,\n totalWarnings: 0,\n};\n\nexport const useStatus = () => {\n const cloudpack = useCloudpack();\n const [status, setStatus] = useState<CloudpackStatus>(defaultStatus);\n\n useEffect(() => {\n const subscription = cloudpack?.onDataChanged.subscribe(taskStatsSource, {\n onData: (data) => {\n setStatus(data as CloudpackStatus);\n },\n });\n\n return () => {\n subscription.unsubscribe();\n };\n }, [cloudpack]);\n\n return status;\n};\n", "import { useEffect, useState } from 'react';\nimport { parseImportString } from '@ms-cloudpack/path-string-parsing';\nimport { useCloudpack } from '../CloudpackProvider/CloudpackProvider.js';\nimport { errorEntrySource, type ErrorEntry } from '@ms-cloudpack/api-server/browser';\n\ndeclare global {\n interface Window {\n __pageErrors: {\n uncaughtErrors: ErrorEvent[];\n uncaughtRejections: PromiseRejectionEvent[];\n unregister: () => void;\n };\n }\n}\n\n// Interface with reason as a record.\ninterface ReasonRecord extends PromiseRejectionEvent {\n readonly reason: Record<string, unknown>;\n}\n\n// Interface with message as a string.\ninterface ReasonString extends ReasonRecord {\n readonly reason: { message: string };\n}\n\n// Verify the reason is a record.\nconst reasonIsRecord = (event: PromiseRejectionEvent): event is ReasonRecord => {\n return typeof event.reason === 'object' && !Array.isArray(event.reason) && event.reason !== null;\n};\n\n// Verify the reason has a message which is a string.\nconst hasMessage = (event: PromiseRejectionEvent): event is ReasonString => {\n return reasonIsRecord(event) && typeof event.reason.message === 'string';\n};\n\nexport type UnsupportedErrorEvent = { packageName: string; importPath: string; issuerUrl?: string; fixable?: boolean };\n\nexport const useErrorEvents = () => {\n const [errorEvents, setErrorEvents] = useState<{ unsupported: UnsupportedErrorEvent[] }>({ unsupported: [] });\n const cloudpack = useCloudpack();\n\n useEffect(() => {\n const handleUnsupportedError = (message: string, issuerUrl?: string): void => {\n const errorRegex = /[Mm]odule specifier,? ['\"](.*?)['\"]/;\n const match = message.match(errorRegex);\n\n if (match) {\n const importString = parseImportString(match[1]);\n const { packageName } = importString;\n const importPath = importString.importPath.replace(/^\\.\\//, '');\n\n (async () => {\n const { fixable } = await cloudpack.validatePackageOverride.query({ packageName, importPath, issuerUrl });\n setErrorEvents((prev) => ({\n ...prev,\n unsupported: [...prev.unsupported, { packageName, importPath, issuerUrl: issuerUrl, fixable }],\n }));\n })().catch(() => {\n // no-op\n });\n }\n };\n\n const subscription = cloudpack.onDataChanged.subscribe(errorEntrySource, {\n onData: (data) => {\n if (data) {\n console.error(data);\n handleUnsupportedError(data as ErrorEntry);\n }\n },\n });\n\n const pageErrors = window.__pageErrors;\n\n pageErrors.unregister();\n\n // Append unsupported paths to the list.\n window.addEventListener('error', (event: ErrorEvent) => {\n handleUnsupportedError(event.message, event.filename);\n });\n\n // Handle errors caught before rendering.\n for (const error of pageErrors.uncaughtErrors) {\n handleUnsupportedError(error.message, error.filename);\n }\n\n // Append unsupported paths to the list.\n window.addEventListener('unhandledrejection', (event: PromiseRejectionEvent) => {\n hasMessage(event) && handleUnsupportedError(event.reason.message);\n });\n\n // Handle rejections caught before rendering.\n for (const error of pageErrors.uncaughtRejections) {\n hasMessage(error) && handleUnsupportedError(error.reason.message);\n }\n\n return () => {\n subscription.unsubscribe();\n };\n }, [cloudpack]);\n\n return errorEvents;\n};\n", "import React from 'react';\nimport { useCloudpack } from '../components/CloudpackProvider/CloudpackProvider.js';\n\nexport function usePageLoadTimeReporter() {\n const [pageLoadTime, setPageLoadTime] = React.useState<number>();\n const cloudpack = useCloudpack();\n\n React.useEffect(() => {\n async function reportPageLoadTime() {\n const { getPageLoadTime, getBrowserCacheRatio } = window.__cloudpack;\n\n const newPageLoadTime = await getPageLoadTime();\n setPageLoadTime(newPageLoadTime);\n await cloudpack.reportMetric.mutate({ metric: 'PAGE_LOAD_TIME', value: newPageLoadTime });\n\n // Page is loaded, the browser cache ratio can be reported\n await cloudpack.reportMetric.mutate({ metric: 'BROWSER_CACHE_RATIO', value: getBrowserCacheRatio() });\n }\n\n void reportPageLoadTime();\n }, [cloudpack]);\n\n return pageLoadTime;\n}\n", "import React from 'react';\nimport styles from './ThemeProvider.module.css';\n\nexport function ThemeProvider({ children }: React.ComponentProps<'div'>) {\n return <div className={styles.root}>{children}</div>;\n}\n", "// THIS FILE IS AUTO GENERATED FROM packages/overlay/src/components/ThemeProvider/ThemeProvider.module.css\n\n\nlet compiledModule = `.ASWLkl-ThemeProvidermodule--root {\\n font-family:\\n Inter,\\n -apple-system,\\n BlinkMacSystemFont,\\n 'Segoe UI',\\n Roboto,\\n Oxygen,\\n Ubuntu,\\n Cantarell,\\n 'Fira Sans',\\n 'Droid Sans',\\n 'Helvetica Neue',\\n sans-serif;\\n}\\n`;\nconst s = document.createElement('style');\ns.setAttribute('data-sourceFile', 'packages/overlay/src/components/ThemeProvider/ThemeProvider.module.css');\ns.appendChild(document.createTextNode(compiledModule));\ndocument.head.appendChild(s)\nexport const root = 'ASWLkl-ThemeProvidermodule--root';\nexport default {root}\n", "/**\n * Gets the cookies dictionary from the browser.\n */\nexport function getCookies(): Record<string, string> {\n return document.cookie\n .split(';')\n .map((s) => s.split('='))\n .reduce<Record<string, string>>((current, nextValue) => {\n const name = nextValue[0]?.trim();\n const value = decodeURIComponent(nextValue[1]?.trim());\n\n if (name && value) {\n current[name] = value;\n }\n\n return current;\n }, {});\n}\n"],
|
|
5
|
-
"mappings": "
|
|
6
|
-
"names": ["React", "React", "useCallback", "useState", "useRef", "useState", "inline", "useState", "metric", "badge", "useEffect", "useState", "useState", "useEffect", "error", "React", "React", "React", "useState", "useRef", "useCallback", "React", "compiledModule", "s", "React", "
|
|
3
|
+
"sources": ["../../../src/index.tsx", "../../../src/components/StatusOverlay/StatusOverlay.tsx", "../../../src/components/StatusBadge/StatusBadge.tsx", "../../../src/components/StatusBadge/StatusBadge.module.css", "../../../src/components/CloudpackProvider/useStatus.ts", "../../../src/components/ErrorDialog/useErrorEvents.ts", "../../../src/hooks/usePageLoadTimeReporter.ts", "../../../src/components/ThemeProvider/ThemeProvider.tsx", "../../../src/components/ThemeProvider/ThemeProvider.module.css"],
|
|
4
|
+
"sourcesContent": ["import React from 'react';\nimport ReactDOM from 'react-dom';\nimport { CloudpackProvider } from './components/CloudpackProvider/CloudpackProvider.js';\nimport { StatusOverlay } from './components/StatusOverlay/StatusOverlay.js';\nimport { ThemeProvider } from './components/ThemeProvider/ThemeProvider.js';\nimport { elementIds } from './constants.js';\nimport { createCloudpackClient, reloadCountSource } from '@ms-cloudpack/api-server/browser';\n\nasync function start() {\n if (!window.__cloudpack) {\n throw new Error('Cloudpack not found on window');\n }\n\n const { pageSessionContext } = window.__cloudpack;\n\n if (!pageSessionContext) {\n throw new Error('Session context not found on window.__cloudpack');\n }\n\n const { apiUrl, currentSequence, sessionId } = pageSessionContext;\n\n const client = await createCloudpackClient({ url: apiUrl });\n\n if (sessionId === (await client.getSessionId.query())) {\n console.log('[Cloudpack] socket opened');\n }\n\n client.onDataChanged.subscribe(reloadCountSource, {\n onData: (data) => {\n if (Number(data) > currentSequence) {\n window.location.reload();\n }\n },\n });\n\n const rootDiv = document.createElement('div');\n rootDiv.id = elementIds.root;\n\n ReactDOM.render(\n <ThemeProvider>\n <CloudpackProvider client={client}>\n <StatusOverlay />\n </CloudpackProvider>\n </ThemeProvider>,\n rootDiv,\n );\n\n document.body.appendChild(rootDiv);\n}\n\nvoid start();\n", "import React, { useCallback, useState, useRef } from 'react';\nimport { StatusBadge } from '../StatusBadge/StatusBadge.js';\nimport { useStatus, type CloudpackStatus } from '../CloudpackProvider/useStatus.js';\nimport { useErrorEvents } from '../ErrorDialog/useErrorEvents.js';\nimport { usePageLoadTimeReporter } from '../../hooks/usePageLoadTimeReporter.js';\n\nconst StatusDialog = React.lazy(() => import('../StatusDialog/StatusDialog.js'));\nconst ErrorDialog = React.lazy(() => import('../ErrorDialog/ErrorDialog.js'));\n\nexport function StatusOverlay() {\n const pageLoadTime = usePageLoadTimeReporter();\n const [isExpanded, setIsExpanded] = useState<boolean>(false);\n const status = useStatus();\n const prevStatus = useRef<CloudpackStatus | undefined>();\n const { unsupported } = useErrorEvents();\n\n // If we haven't set a specific state and we become idle,\n // pop open the details if there are errors.\n React.useEffect(() => {\n if (\n !isExpanded &&\n prevStatus.current?.status !== 'idle' &&\n status.status === 'idle' &&\n (prevStatus.current?.totalErrors || 0) !== (status.totalErrors || 0)\n ) {\n setIsExpanded(true);\n }\n prevStatus.current = status;\n }, [status, isExpanded]);\n\n const toggleMinimized = useCallback(() => {\n console.log(`Toggling minimized state to ${!isExpanded}`);\n setIsExpanded(!isExpanded);\n }, [isExpanded]);\n\n const result = unsupported.length ? (\n <ErrorDialog unsupported={unsupported} />\n ) : isExpanded ? (\n <StatusDialog onClose={toggleMinimized} />\n ) : (\n <StatusBadge onExpand={toggleMinimized} pageLoadTime={pageLoadTime} />\n );\n\n return <React.Suspense fallback={null}>{result}</React.Suspense>;\n}\n", "import React, { useCallback, useRef, useState } from 'react';\nimport { useDraggable } from '../../hooks/useDraggable.js';\nimport styles from './StatusBadge.module.css';\nimport { default as cx } from 'classnames';\nimport { useStatus, type CloudpackStatus } from '../CloudpackProvider/useStatus.js';\nimport { elementIds } from '../../constants.js';\n\nexport interface StatusBadgeProps {\n inline?: boolean;\n onExpand?: () => void;\n onToggle?: () => void;\n pageLoadTime?: number;\n}\n\nexport function StatusBadge({ inline, onExpand, pageLoadTime }: StatusBadgeProps) {\n const badgeStatusKey = 'cloudpack.badgeStatus';\n\n const rootElementRef = useRef<HTMLDivElement>(null);\n const dragElementRef = useRef<HTMLDivElement>(null);\n const status = useStatus();\n const [isCollapsed, setIsCollapsed] = useState<boolean>(!!localStorage.getItem(badgeStatusKey));\n\n const shouldRender = status.status !== 'unknown';\n\n const toggleBadgeVisibility = useCallback(() => {\n const newCollapsedState = !isCollapsed;\n console.log('Status badge collapsed state:', newCollapsedState);\n setIsCollapsed(newCollapsedState);\n localStorage.setItem(badgeStatusKey, newCollapsedState ? 'collapsed' : '');\n }, [isCollapsed]);\n\n useDraggable({\n // If we're not yet able to render, don't enable dragging yet.\n // Otherwise the event handlers won't be attached when the component renders.\n enabled: shouldRender && !inline,\n containerElementRef: rootElementRef,\n dragElementRef,\n });\n\n if (!shouldRender) {\n return null;\n }\n\n const metric = pageLoadTime ? (\n <span className={styles.metric} title=\"Page Load Time\">\n in {pageLoadTime.toFixed(2)} ms\n </span>\n ) : null;\n\n const leftChevron = '\\u00AB';\n const rightChevron = '\\u00BB';\n const badge = (\n <div\n id={elementIds.statusBadgeRoot}\n ref={rootElementRef}\n className={`${getStatusClassName(status, !!inline)} ${getCollapsedClassName(isCollapsed)}`}\n >\n {!inline && (\n <div ref={dragElementRef} className={styles.gripArea}>\n <div className={styles.grip} />\n <div className={styles.grip} />\n </div>\n )}\n <button className={styles.button} onClick={onExpand} aria-label=\"Expand overlay\">\n <div className={styles.value}>{getStatusString(status)}</div>\n </button>\n <div>\n {getStatsString(status)}\n {metric}\n </div>\n <button className={`${styles.button} ${styles.chevron}`} onClick={toggleBadgeVisibility}>\n {isCollapsed ? leftChevron : rightChevron}\n </button>\n </div>\n );\n\n return inline ? (\n badge\n ) : (\n <div className={styles.fixedOverlay}>\n <div className={styles.contentSurface}>{badge}</div>\n </div>\n );\n}\n\nfunction getStatusString(status: CloudpackStatus) {\n if (status.status === 'pending') {\n return 'Running';\n }\n\n if (status.totalTasks === 0) {\n return 'Idle';\n }\n\n return status.totalErrors === 0 ? 'Success' : 'Errors';\n}\n\nfunction getStatusClassName({ status, totalTasks, totalErrors, totalWarnings }: CloudpackStatus, inline: boolean) {\n return cx(styles.badge, {\n [styles.inline]: inline,\n [styles.building]: status === 'pending',\n [styles.success]: status === 'idle' && totalTasks > 0 && totalErrors === 0 && totalWarnings === 0,\n [styles.error]: status === 'idle' && totalErrors > 0,\n [styles.warning]: status === 'idle' && totalErrors === 0 && totalWarnings > 0,\n });\n}\n\nfunction getCollapsedClassName(isCollapsed: boolean) {\n return cx(styles.badge, {\n [styles.collapsed]: isCollapsed,\n });\n}\n\nfunction getStatsString({ totalTasks, remainingTasks, totalErrors, totalWarnings }: CloudpackStatus) {\n if (totalTasks === 0) {\n return '';\n }\n\n return [\n remainingTasks > 0 && `${remainingTasks} of ${totalTasks} tasks pending`,\n remainingTasks === 0 && `${totalTasks} tasks completed`,\n totalErrors === 1 && `${totalErrors} error`,\n totalErrors > 1 && `${totalErrors} errors`,\n totalWarnings === 1 && `${totalWarnings} warning`,\n totalWarnings > 1 && `${totalWarnings} warnings`,\n ]\n .filter(Boolean)\n .join(', ');\n}\n", "// THIS FILE IS AUTO GENERATED FROM packages/overlay/src/components/StatusBadge/StatusBadge.module.css\n\n\nlet compiledModule = `.uHuWYf-StatusBadgemodule--fixedOverlay {\\n position: fixed;\\n pointer-events: none;\\n background: transparent;\\n top: 0;\\n bottom: 0;\\n left: 0;\\n right: 0;\\n z-index: 99999;\\n overflow: hidden;\\n}\\n\\n.uHuWYf-StatusBadgemodule--gripArea {\\n display: flex;\\n flex-direction: row;\\n gap: 2px;\\n height: 100%;\\n width: 12px;\\n cursor: move;\\n margin-right: -4px;\\n}\\n\\n.uHuWYf-StatusBadgemodule--grip {\\n width: 2px;\\n height: 100%;\\n background: rgba(0, 0, 0, 0.2);\\n}\\n\\n.uHuWYf-StatusBadgemodule--contentSurface {\\n pointer-events: auto;\\n display: contents;\\n}\\n\\n.uHuWYf-StatusBadgemodule--badge {\\n position: absolute;\\n bottom: 4px;\\n right: 4px;\\n font-size: 12px;\\n display: inline-flex;\\n gap: 8px;\\n background: #dddddd;\\n box-shadow: 0 0 12px -6px rgba(0, 0, 0, 0.75);\\n border: 1px solid #999999;\\n border-radius: 4px;\\n height: 28px;\\n flex-shrink: 0;\\n justify-content: center;\\n align-items: center;\\n box-sizing: border-box;\\n padding: 3px;\\n padding-right: 8px;\\n\\n transition: background-color 0.2s ease-in-out;\\n}\\n\\n.uHuWYf-StatusBadgemodule--inline {\\n flex-shrink: 0;\\n position: relative;\\n bottom: auto;\\n right: auto;\\n top: auto;\\n left: auto;\\n box-shadow: none;\\n padding-left: 8px;\\n}\\n\\n.uHuWYf-StatusBadgemodule--building {\\n background: #bbb;\\n color: #000;\\n}\\n\\n.uHuWYf-StatusBadgemodule--success {\\n background: #7ad17a;\\n color: #000;\\n}\\n\\n.uHuWYf-StatusBadgemodule--warning {\\n background: #e4e68b;\\n color: #000;\\n}\\n\\n.uHuWYf-StatusBadgemodule--error {\\n background: #ffb9b9;\\n color: #000;\\n}\\n\\n.uHuWYf-StatusBadgemodule--button {\\n cursor: pointer;\\n background: inherit;\\n border: none;\\n border-radius: 3px;\\n display: flex;\\n align-self: stretch;\\n align-items: center;\\n justify-content: center;\\n box-sizing: border-box;\\n padding: 0;\\n margin: 0;\\n font-weight: inherit;\\n font-size: inherit;\\n font-family: inherit;\\n}\\n\\n.uHuWYf-StatusBadgemodule--button:hover {\\n filter: invert(0.1);\\n}\\n\\n.uHuWYf-StatusBadgemodule--value {\\n font-weight: 600;\\n background: rgba(255, 255, 255, 0.4);\\n box-shadow: 2px 2px 3px -1px rgba(0, 0, 0, 0.15) inset;\\n padding: 2px 8px;\\n border-radius: 3px;\\n}\\n\\n.uHuWYf-StatusBadgemodule--metric {\\n margin-left: 2px;\\n}\\n\\n.uHuWYf-StatusBadgemodule--collapsed {\\n overflow: hidden;\\n padding: 0;\\n}\\n.uHuWYf-StatusBadgemodule--collapsed *:not(.uHuWYf-StatusBadgemodule--chevron) {\\n display: none;\\n}\\n\\n.uHuWYf-StatusBadgemodule--chevron {\\n padding: 0 3px;\\n}\\n`;\nconst s = document.createElement('style');\ns.setAttribute('data-sourceFile', 'packages/overlay/src/components/StatusBadge/StatusBadge.module.css');\ns.appendChild(document.createTextNode(compiledModule));\ndocument.head.appendChild(s)\nexport const badge = 'uHuWYf-StatusBadgemodule--badge';\nexport const building = 'uHuWYf-StatusBadgemodule--building';\nexport const button = 'uHuWYf-StatusBadgemodule--button';\nexport const chevron = 'uHuWYf-StatusBadgemodule--chevron';\nexport const collapsed = 'uHuWYf-StatusBadgemodule--collapsed';\nexport const contentSurface = 'uHuWYf-StatusBadgemodule--contentSurface';\nexport const error = 'uHuWYf-StatusBadgemodule--error';\nexport const fixedOverlay = 'uHuWYf-StatusBadgemodule--fixedOverlay';\nexport const grip = 'uHuWYf-StatusBadgemodule--grip';\nexport const gripArea = 'uHuWYf-StatusBadgemodule--gripArea';\nexport const inline = 'uHuWYf-StatusBadgemodule--inline';\nexport const metric = 'uHuWYf-StatusBadgemodule--metric';\nexport const success = 'uHuWYf-StatusBadgemodule--success';\nexport const value = 'uHuWYf-StatusBadgemodule--value';\nexport const warning = 'uHuWYf-StatusBadgemodule--warning';\nexport default {badge, building, button, chevron, collapsed, contentSurface, error, fixedOverlay, grip, gripArea, inline, metric, success, value, warning}\n", "import { useEffect, useState } from 'react';\nimport { useCloudpack } from './CloudpackProvider.js';\nimport { taskStatsSource, type TaskStats } from '@ms-cloudpack/api-server/browser';\n\nexport type CloudpackStatus = TaskStats;\n\nconst defaultStatus: CloudpackStatus = {\n status: 'unknown',\n remainingTasks: 0,\n totalTasks: 0,\n totalErrors: 0,\n totalWarnings: 0,\n};\n\nexport const useStatus = () => {\n const cloudpack = useCloudpack();\n const [status, setStatus] = useState<CloudpackStatus>(defaultStatus);\n\n useEffect(() => {\n const subscription = cloudpack?.onDataChanged.subscribe(taskStatsSource, {\n onData: (data) => {\n setStatus(data as CloudpackStatus);\n },\n });\n\n return () => {\n subscription.unsubscribe();\n };\n }, [cloudpack]);\n\n return status;\n};\n", "import { useEffect, useState } from 'react';\nimport { parseImportString } from '@ms-cloudpack/path-string-parsing';\nimport { useCloudpack } from '../CloudpackProvider/CloudpackProvider.js';\nimport { errorEntrySource, type ErrorEntry } from '@ms-cloudpack/api-server/browser';\n\n// Interface with reason as a record.\ninterface ReasonRecord extends PromiseRejectionEvent {\n readonly reason: Record<string, unknown>;\n}\n\n// Interface with message as a string.\ninterface ReasonString extends ReasonRecord {\n readonly reason: { message: string };\n}\n\n// Verify the reason is a record.\nconst reasonIsRecord = (event: PromiseRejectionEvent): event is ReasonRecord => {\n return typeof event.reason === 'object' && !Array.isArray(event.reason) && event.reason !== null;\n};\n\n// Verify the reason has a message which is a string.\nconst hasMessage = (event: PromiseRejectionEvent): event is ReasonString => {\n return reasonIsRecord(event) && typeof event.reason.message === 'string';\n};\n\nexport type UnsupportedErrorEvent = { packageName: string; importPath: string; issuerUrl?: string; fixable?: boolean };\n\nexport const useErrorEvents = () => {\n const [errorEvents, setErrorEvents] = useState<{ unsupported: UnsupportedErrorEvent[] }>({ unsupported: [] });\n const cloudpack = useCloudpack();\n\n useEffect(() => {\n const handleUnsupportedError = (message: string, issuerUrl?: string): void => {\n const errorRegex = /[Mm]odule specifier,? ['\"](.*?)['\"]/;\n const match = message.match(errorRegex);\n\n if (match) {\n const importString = parseImportString(match[1]);\n const { packageName } = importString;\n const importPath = importString.importPath.replace(/^\\.\\//, '');\n\n (async () => {\n const { fixable } = await cloudpack.validatePackageOverride.query({ packageName, importPath, issuerUrl });\n setErrorEvents((prev) => ({\n ...prev,\n unsupported: [...prev.unsupported, { packageName, importPath, issuerUrl: issuerUrl, fixable }],\n }));\n })().catch(() => {\n // no-op\n });\n }\n };\n\n const subscription = cloudpack.onDataChanged.subscribe(errorEntrySource, {\n onData: (data) => {\n if (data) {\n console.error(data);\n handleUnsupportedError(data as ErrorEntry);\n }\n },\n });\n\n const pageErrors = window.__pageErrors;\n\n pageErrors.unregister();\n\n // Append unsupported paths to the list.\n window.addEventListener('error', (event: ErrorEvent) => {\n handleUnsupportedError(event.message, event.filename);\n });\n\n // Handle errors caught before rendering.\n for (const error of pageErrors.uncaughtErrors) {\n handleUnsupportedError(error.message, error.filename);\n }\n\n // Append unsupported paths to the list.\n window.addEventListener('unhandledrejection', (event: PromiseRejectionEvent) => {\n hasMessage(event) && handleUnsupportedError(event.reason.message);\n });\n\n // Handle rejections caught before rendering.\n for (const error of pageErrors.uncaughtRejections) {\n hasMessage(error) && handleUnsupportedError(error.reason.message);\n }\n\n return () => {\n subscription.unsubscribe();\n };\n }, [cloudpack]);\n\n return errorEvents;\n};\n", "import React from 'react';\nimport { useCloudpack } from '../components/CloudpackProvider/CloudpackProvider.js';\n\nexport function usePageLoadTimeReporter() {\n const [pageLoadTime, setPageLoadTime] = React.useState<number>();\n const cloudpack = useCloudpack();\n\n React.useEffect(() => {\n async function reportPageLoadTime() {\n if (!window.__cloudpack) {\n throw new Error('Cloudpack not found on window');\n }\n const { getPageLoadTime, getBrowserCacheRatio } = window.__cloudpack;\n\n if (!getPageLoadTime) {\n throw new Error('getPageLoadTime not found on window.__cloudpack');\n }\n const newPageLoadTime = await getPageLoadTime();\n setPageLoadTime(newPageLoadTime);\n await cloudpack.reportMetric.mutate({ metric: 'PAGE_LOAD_TIME', value: newPageLoadTime });\n\n if (!getBrowserCacheRatio) {\n throw new Error('getBrowserCacheRatio not found on window.__cloudpack');\n }\n // Page is loaded, the browser cache ratio can be reported\n await cloudpack.reportMetric.mutate({ metric: 'BROWSER_CACHE_RATIO', value: getBrowserCacheRatio() });\n }\n\n void reportPageLoadTime();\n }, [cloudpack]);\n\n return pageLoadTime;\n}\n", "import React from 'react';\nimport styles from './ThemeProvider.module.css';\n\nexport function ThemeProvider({ children }: React.ComponentProps<'div'>) {\n return <div className={styles.root}>{children}</div>;\n}\n", "// THIS FILE IS AUTO GENERATED FROM packages/overlay/src/components/ThemeProvider/ThemeProvider.module.css\n\n\nlet compiledModule = `.ASWLkl-ThemeProvidermodule--root {\\n font-family:\\n Inter,\\n -apple-system,\\n BlinkMacSystemFont,\\n 'Segoe UI',\\n Roboto,\\n Oxygen,\\n Ubuntu,\\n Cantarell,\\n 'Fira Sans',\\n 'Droid Sans',\\n 'Helvetica Neue',\\n sans-serif;\\n}\\n`;\nconst s = document.createElement('style');\ns.setAttribute('data-sourceFile', 'packages/overlay/src/components/ThemeProvider/ThemeProvider.module.css');\ns.appendChild(document.createTextNode(compiledModule));\ndocument.head.appendChild(s)\nexport const root = 'ASWLkl-ThemeProvidermodule--root';\nexport default {root}\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": ["React", "React", "useCallback", "useState", "useRef", "useState", "inline", "useState", "metric", "badge", "useEffect", "useState", "useState", "useEffect", "error", "React", "React", "React", "useState", "useRef", "useCallback", "React", "compiledModule", "s", "React", "React"]
|
|
7
7
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"type": "builder:notify",
|
|
3
|
-
"buildId": "
|
|
3
|
+
"buildId": "build_b7694a75-67ad-46ee-a3f0-5131c469c96e",
|
|
4
4
|
"buildStatus": "complete",
|
|
5
5
|
"internalError": null,
|
|
6
6
|
"warnings": [],
|
|
@@ -10,22 +10,22 @@
|
|
|
10
10
|
"/home/runner/work/cloudpack/cloudpack/packages/overlay/dist/browser-esm/lib/constants.js",
|
|
11
11
|
"/home/runner/work/cloudpack/cloudpack/packages/overlay/dist/browser-esm/lib/index.js.map",
|
|
12
12
|
"/home/runner/work/cloudpack/cloudpack/packages/overlay/dist/browser-esm/lib/index.js",
|
|
13
|
-
"/home/runner/work/cloudpack/cloudpack/packages/overlay/dist/browser-esm/chunks/js/StatusDialog-
|
|
14
|
-
"/home/runner/work/cloudpack/cloudpack/packages/overlay/dist/browser-esm/chunks/js/StatusDialog-
|
|
15
|
-
"/home/runner/work/cloudpack/cloudpack/packages/overlay/dist/browser-esm/chunks/js/ErrorDialog-
|
|
16
|
-
"/home/runner/work/cloudpack/cloudpack/packages/overlay/dist/browser-esm/chunks/js/ErrorDialog-
|
|
13
|
+
"/home/runner/work/cloudpack/cloudpack/packages/overlay/dist/browser-esm/chunks/js/StatusDialog-7Q5HGOOM.js.map",
|
|
14
|
+
"/home/runner/work/cloudpack/cloudpack/packages/overlay/dist/browser-esm/chunks/js/StatusDialog-7Q5HGOOM.js",
|
|
15
|
+
"/home/runner/work/cloudpack/cloudpack/packages/overlay/dist/browser-esm/chunks/js/ErrorDialog-5IGGA35U.js.map",
|
|
16
|
+
"/home/runner/work/cloudpack/cloudpack/packages/overlay/dist/browser-esm/chunks/js/ErrorDialog-5IGGA35U.js",
|
|
17
17
|
"/home/runner/work/cloudpack/cloudpack/packages/overlay/dist/browser-esm/chunks/js/chunk-XOJFP5X6.js.map",
|
|
18
18
|
"/home/runner/work/cloudpack/cloudpack/packages/overlay/dist/browser-esm/chunks/js/chunk-XOJFP5X6.js",
|
|
19
19
|
"/home/runner/work/cloudpack/cloudpack/packages/overlay/dist/browser-esm/chunks/js/chunk-7KHMDJ6G.js.map",
|
|
20
20
|
"/home/runner/work/cloudpack/cloudpack/packages/overlay/dist/browser-esm/chunks/js/chunk-7KHMDJ6G.js",
|
|
21
|
-
"/home/runner/work/cloudpack/cloudpack/packages/overlay/dist/browser-esm/chunks/js/chunk-
|
|
22
|
-
"/home/runner/work/cloudpack/cloudpack/packages/overlay/dist/browser-esm/chunks/js/chunk-
|
|
21
|
+
"/home/runner/work/cloudpack/cloudpack/packages/overlay/dist/browser-esm/chunks/js/chunk-GBPQMJW6.js.map",
|
|
22
|
+
"/home/runner/work/cloudpack/cloudpack/packages/overlay/dist/browser-esm/chunks/js/chunk-GBPQMJW6.js"
|
|
23
23
|
],
|
|
24
24
|
"outputFiles": null,
|
|
25
25
|
"metafile": {
|
|
26
26
|
"inputs": {
|
|
27
27
|
"packages/overlay/src/constants.ts": {
|
|
28
|
-
"bytes":
|
|
28
|
+
"bytes": 599,
|
|
29
29
|
"imports": [],
|
|
30
30
|
"format": "esm"
|
|
31
31
|
},
|
|
@@ -119,7 +119,7 @@
|
|
|
119
119
|
"format": "esm"
|
|
120
120
|
},
|
|
121
121
|
"packages/overlay/src/components/ErrorDialog/useErrorEvents.ts": {
|
|
122
|
-
"bytes":
|
|
122
|
+
"bytes": 3257,
|
|
123
123
|
"imports": [
|
|
124
124
|
{
|
|
125
125
|
"path": "react",
|
|
@@ -145,7 +145,7 @@
|
|
|
145
145
|
"format": "esm"
|
|
146
146
|
},
|
|
147
147
|
"packages/overlay/src/hooks/usePageLoadTimeReporter.ts": {
|
|
148
|
-
"bytes":
|
|
148
|
+
"bytes": 1194,
|
|
149
149
|
"imports": [
|
|
150
150
|
{
|
|
151
151
|
"path": "react",
|
|
@@ -568,13 +568,8 @@
|
|
|
568
568
|
],
|
|
569
569
|
"format": "esm"
|
|
570
570
|
},
|
|
571
|
-
"packages/overlay/src/components/CloudpackProvider/getCookies.ts": {
|
|
572
|
-
"bytes": 452,
|
|
573
|
-
"imports": [],
|
|
574
|
-
"format": "esm"
|
|
575
|
-
},
|
|
576
571
|
"packages/overlay/src/index.tsx": {
|
|
577
|
-
"bytes":
|
|
572
|
+
"bytes": 1450,
|
|
578
573
|
"imports": [
|
|
579
574
|
{
|
|
580
575
|
"path": "react",
|
|
@@ -610,11 +605,6 @@
|
|
|
610
605
|
"path": "@ms-cloudpack/api-server/browser",
|
|
611
606
|
"kind": "import-statement",
|
|
612
607
|
"external": true
|
|
613
|
-
},
|
|
614
|
-
{
|
|
615
|
-
"path": "packages/overlay/src/components/CloudpackProvider/getCookies.ts",
|
|
616
|
-
"kind": "import-statement",
|
|
617
|
-
"original": "./components/CloudpackProvider/getCookies.js"
|
|
618
608
|
}
|
|
619
609
|
],
|
|
620
610
|
"format": "esm"
|
|
@@ -630,23 +620,22 @@
|
|
|
630
620
|
"packages/overlay/dist/browser-esm/lib/constants.js": {
|
|
631
621
|
"imports": [
|
|
632
622
|
{
|
|
633
|
-
"path": "packages/overlay/dist/browser-esm/chunks/js/chunk-
|
|
623
|
+
"path": "packages/overlay/dist/browser-esm/chunks/js/chunk-GBPQMJW6.js",
|
|
634
624
|
"kind": "import-statement"
|
|
635
625
|
}
|
|
636
626
|
],
|
|
637
627
|
"exports": [
|
|
638
|
-
"cookieNames",
|
|
639
628
|
"elementIds"
|
|
640
629
|
],
|
|
641
630
|
"entryPoint": "packages/overlay/src/constants.ts",
|
|
642
631
|
"inputs": {},
|
|
643
|
-
"bytes":
|
|
632
|
+
"bytes": 126
|
|
644
633
|
},
|
|
645
634
|
"packages/overlay/dist/browser-esm/lib/index.js.map": {
|
|
646
635
|
"imports": [],
|
|
647
636
|
"exports": [],
|
|
648
637
|
"inputs": {},
|
|
649
|
-
"bytes":
|
|
638
|
+
"bytes": 26833
|
|
650
639
|
},
|
|
651
640
|
"packages/overlay/dist/browser-esm/lib/index.js": {
|
|
652
641
|
"imports": [
|
|
@@ -655,7 +644,7 @@
|
|
|
655
644
|
"kind": "import-statement"
|
|
656
645
|
},
|
|
657
646
|
{
|
|
658
|
-
"path": "packages/overlay/dist/browser-esm/chunks/js/chunk-
|
|
647
|
+
"path": "packages/overlay/dist/browser-esm/chunks/js/chunk-GBPQMJW6.js",
|
|
659
648
|
"kind": "import-statement"
|
|
660
649
|
},
|
|
661
650
|
{
|
|
@@ -714,11 +703,11 @@
|
|
|
714
703
|
"external": true
|
|
715
704
|
},
|
|
716
705
|
{
|
|
717
|
-
"path": "packages/overlay/dist/browser-esm/chunks/js/StatusDialog-
|
|
706
|
+
"path": "packages/overlay/dist/browser-esm/chunks/js/StatusDialog-7Q5HGOOM.js",
|
|
718
707
|
"kind": "dynamic-import"
|
|
719
708
|
},
|
|
720
709
|
{
|
|
721
|
-
"path": "packages/overlay/dist/browser-esm/chunks/js/ErrorDialog-
|
|
710
|
+
"path": "packages/overlay/dist/browser-esm/chunks/js/ErrorDialog-5IGGA35U.js",
|
|
722
711
|
"kind": "dynamic-import"
|
|
723
712
|
},
|
|
724
713
|
{
|
|
@@ -736,7 +725,7 @@
|
|
|
736
725
|
"entryPoint": "packages/overlay/src/index.tsx",
|
|
737
726
|
"inputs": {
|
|
738
727
|
"packages/overlay/src/index.tsx": {
|
|
739
|
-
"bytesInOutput":
|
|
728
|
+
"bytesInOutput": 1202
|
|
740
729
|
},
|
|
741
730
|
"packages/overlay/src/components/StatusOverlay/StatusOverlay.tsx": {
|
|
742
731
|
"bytesInOutput": 1354
|
|
@@ -754,27 +743,24 @@
|
|
|
754
743
|
"bytesInOutput": 2272
|
|
755
744
|
},
|
|
756
745
|
"packages/overlay/src/hooks/usePageLoadTimeReporter.ts": {
|
|
757
|
-
"bytesInOutput":
|
|
746
|
+
"bytesInOutput": 1026
|
|
758
747
|
},
|
|
759
748
|
"packages/overlay/src/components/ThemeProvider/ThemeProvider.tsx": {
|
|
760
749
|
"bytesInOutput": 176
|
|
761
750
|
},
|
|
762
751
|
"packages/overlay/src/components/ThemeProvider/ThemeProvider.module.css": {
|
|
763
752
|
"bytesInOutput": 599
|
|
764
|
-
},
|
|
765
|
-
"packages/overlay/src/components/CloudpackProvider/getCookies.ts": {
|
|
766
|
-
"bytesInOutput": 314
|
|
767
753
|
}
|
|
768
754
|
},
|
|
769
|
-
"bytes":
|
|
755
|
+
"bytes": 15983
|
|
770
756
|
},
|
|
771
|
-
"packages/overlay/dist/browser-esm/chunks/js/StatusDialog-
|
|
757
|
+
"packages/overlay/dist/browser-esm/chunks/js/StatusDialog-7Q5HGOOM.js.map": {
|
|
772
758
|
"imports": [],
|
|
773
759
|
"exports": [],
|
|
774
760
|
"inputs": {},
|
|
775
761
|
"bytes": 22324
|
|
776
762
|
},
|
|
777
|
-
"packages/overlay/dist/browser-esm/chunks/js/StatusDialog-
|
|
763
|
+
"packages/overlay/dist/browser-esm/chunks/js/StatusDialog-7Q5HGOOM.js": {
|
|
778
764
|
"imports": [
|
|
779
765
|
{
|
|
780
766
|
"path": "packages/overlay/dist/browser-esm/chunks/js/chunk-XOJFP5X6.js",
|
|
@@ -785,7 +771,7 @@
|
|
|
785
771
|
"kind": "import-statement"
|
|
786
772
|
},
|
|
787
773
|
{
|
|
788
|
-
"path": "packages/overlay/dist/browser-esm/chunks/js/chunk-
|
|
774
|
+
"path": "packages/overlay/dist/browser-esm/chunks/js/chunk-GBPQMJW6.js",
|
|
789
775
|
"kind": "import-statement"
|
|
790
776
|
},
|
|
791
777
|
{
|
|
@@ -865,13 +851,13 @@
|
|
|
865
851
|
},
|
|
866
852
|
"bytes": 14511
|
|
867
853
|
},
|
|
868
|
-
"packages/overlay/dist/browser-esm/chunks/js/ErrorDialog-
|
|
854
|
+
"packages/overlay/dist/browser-esm/chunks/js/ErrorDialog-5IGGA35U.js.map": {
|
|
869
855
|
"imports": [],
|
|
870
856
|
"exports": [],
|
|
871
857
|
"inputs": {},
|
|
872
858
|
"bytes": 6309
|
|
873
859
|
},
|
|
874
|
-
"packages/overlay/dist/browser-esm/chunks/js/ErrorDialog-
|
|
860
|
+
"packages/overlay/dist/browser-esm/chunks/js/ErrorDialog-5IGGA35U.js": {
|
|
875
861
|
"imports": [
|
|
876
862
|
{
|
|
877
863
|
"path": "packages/overlay/dist/browser-esm/chunks/js/chunk-XOJFP5X6.js",
|
|
@@ -882,7 +868,7 @@
|
|
|
882
868
|
"kind": "import-statement"
|
|
883
869
|
},
|
|
884
870
|
{
|
|
885
|
-
"path": "packages/overlay/dist/browser-esm/chunks/js/chunk-
|
|
871
|
+
"path": "packages/overlay/dist/browser-esm/chunks/js/chunk-GBPQMJW6.js",
|
|
886
872
|
"kind": "import-statement"
|
|
887
873
|
},
|
|
888
874
|
{
|
|
@@ -1012,24 +998,23 @@
|
|
|
1012
998
|
},
|
|
1013
999
|
"bytes": 2331
|
|
1014
1000
|
},
|
|
1015
|
-
"packages/overlay/dist/browser-esm/chunks/js/chunk-
|
|
1001
|
+
"packages/overlay/dist/browser-esm/chunks/js/chunk-GBPQMJW6.js.map": {
|
|
1016
1002
|
"imports": [],
|
|
1017
1003
|
"exports": [],
|
|
1018
1004
|
"inputs": {},
|
|
1019
|
-
"bytes":
|
|
1005
|
+
"bytes": 896
|
|
1020
1006
|
},
|
|
1021
|
-
"packages/overlay/dist/browser-esm/chunks/js/chunk-
|
|
1007
|
+
"packages/overlay/dist/browser-esm/chunks/js/chunk-GBPQMJW6.js": {
|
|
1022
1008
|
"imports": [],
|
|
1023
1009
|
"exports": [
|
|
1024
|
-
"cookieNames",
|
|
1025
1010
|
"elementIds"
|
|
1026
1011
|
],
|
|
1027
1012
|
"inputs": {
|
|
1028
1013
|
"packages/overlay/src/constants.ts": {
|
|
1029
|
-
"bytesInOutput":
|
|
1014
|
+
"bytesInOutput": 460
|
|
1030
1015
|
}
|
|
1031
1016
|
},
|
|
1032
|
-
"bytes":
|
|
1017
|
+
"bytes": 566
|
|
1033
1018
|
}
|
|
1034
1019
|
}
|
|
1035
1020
|
}
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
{
|
|
2
|
-
"
|
|
2
|
+
"bundler": "ori",
|
|
3
3
|
"entries": {
|
|
4
4
|
"./lib/index": "./src/index.tsx",
|
|
5
5
|
"./lib/constants": "./src/constants.ts"
|
|
6
6
|
},
|
|
7
|
-
"hash": "v9-
|
|
7
|
+
"hash": "v9-7a99269988ca08d4d6768ae70326f7a56015890d",
|
|
8
8
|
"outputFiles": [
|
|
9
9
|
{
|
|
10
10
|
"outputPath": "./lib/constants.js.map",
|
|
@@ -14,7 +14,6 @@
|
|
|
14
14
|
"outputPath": "./lib/constants.js",
|
|
15
15
|
"entryPoint": "./src/constants.ts",
|
|
16
16
|
"exports": [
|
|
17
|
-
"cookieNames",
|
|
18
17
|
"elementIds"
|
|
19
18
|
]
|
|
20
19
|
},
|
|
@@ -28,11 +27,11 @@
|
|
|
28
27
|
"exports": []
|
|
29
28
|
},
|
|
30
29
|
{
|
|
31
|
-
"outputPath": "./chunks/js/StatusDialog-
|
|
30
|
+
"outputPath": "./chunks/js/StatusDialog-7Q5HGOOM.js.map",
|
|
32
31
|
"exports": []
|
|
33
32
|
},
|
|
34
33
|
{
|
|
35
|
-
"outputPath": "./chunks/js/StatusDialog-
|
|
34
|
+
"outputPath": "./chunks/js/StatusDialog-7Q5HGOOM.js",
|
|
36
35
|
"entryPoint": "./src/components/StatusDialog/StatusDialog.tsx",
|
|
37
36
|
"exports": [
|
|
38
37
|
"StatusDialog",
|
|
@@ -40,11 +39,11 @@
|
|
|
40
39
|
]
|
|
41
40
|
},
|
|
42
41
|
{
|
|
43
|
-
"outputPath": "./chunks/js/ErrorDialog-
|
|
42
|
+
"outputPath": "./chunks/js/ErrorDialog-5IGGA35U.js.map",
|
|
44
43
|
"exports": []
|
|
45
44
|
},
|
|
46
45
|
{
|
|
47
|
-
"outputPath": "./chunks/js/ErrorDialog-
|
|
46
|
+
"outputPath": "./chunks/js/ErrorDialog-5IGGA35U.js",
|
|
48
47
|
"entryPoint": "./src/components/ErrorDialog/ErrorDialog.tsx",
|
|
49
48
|
"exports": [
|
|
50
49
|
"ErrorDialog",
|
|
@@ -79,13 +78,12 @@
|
|
|
79
78
|
]
|
|
80
79
|
},
|
|
81
80
|
{
|
|
82
|
-
"outputPath": "./chunks/js/chunk-
|
|
81
|
+
"outputPath": "./chunks/js/chunk-GBPQMJW6.js.map",
|
|
83
82
|
"exports": []
|
|
84
83
|
},
|
|
85
84
|
{
|
|
86
|
-
"outputPath": "./chunks/js/chunk-
|
|
85
|
+
"outputPath": "./chunks/js/chunk-GBPQMJW6.js",
|
|
87
86
|
"exports": [
|
|
88
|
-
"cookieNames",
|
|
89
87
|
"elementIds"
|
|
90
88
|
]
|
|
91
89
|
}
|
|
@@ -1,12 +1,3 @@
|
|
|
1
|
-
declare global {
|
|
2
|
-
interface Window {
|
|
3
|
-
__pageErrors: {
|
|
4
|
-
uncaughtErrors: ErrorEvent[];
|
|
5
|
-
uncaughtRejections: PromiseRejectionEvent[];
|
|
6
|
-
unregister: () => void;
|
|
7
|
-
};
|
|
8
|
-
}
|
|
9
|
-
}
|
|
10
1
|
export type UnsupportedErrorEvent = {
|
|
11
2
|
packageName: string;
|
|
12
3
|
importPath: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useErrorEvents.d.ts","sourceRoot":"","sources":["../../../src/components/ErrorDialog/useErrorEvents.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"useErrorEvents.d.ts","sourceRoot":"","sources":["../../../src/components/ErrorDialog/useErrorEvents.ts"],"names":[],"mappings":"AAyBA,MAAM,MAAM,qBAAqB,GAAG;IAAE,WAAW,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,MAAM,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,OAAO,CAAA;CAAE,CAAC;AAEvH,eAAO,MAAM,cAAc;iBACqC,qBAAqB,EAAE;CAgEtF,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useErrorEvents.js","sourceRoot":"","sources":["../../../src/components/ErrorDialog/useErrorEvents.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAC5C,OAAO,EAAE,iBAAiB,EAAE,MAAM,mCAAmC,CAAC;AACtE,OAAO,EAAE,YAAY,EAAE,MAAM,2CAA2C,CAAC;AACzE,OAAO,EAAE,gBAAgB,EAAmB,MAAM,kCAAkC,CAAC;
|
|
1
|
+
{"version":3,"file":"useErrorEvents.js","sourceRoot":"","sources":["../../../src/components/ErrorDialog/useErrorEvents.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAC5C,OAAO,EAAE,iBAAiB,EAAE,MAAM,mCAAmC,CAAC;AACtE,OAAO,EAAE,YAAY,EAAE,MAAM,2CAA2C,CAAC;AACzE,OAAO,EAAE,gBAAgB,EAAmB,MAAM,kCAAkC,CAAC;AAYrF,iCAAiC;AACjC,MAAM,cAAc,GAAG,CAAC,KAA4B,EAAyB,EAAE;IAC7E,OAAO,OAAO,KAAK,CAAC,MAAM,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,MAAM,KAAK,IAAI,CAAC;AACnG,CAAC,CAAC;AAEF,qDAAqD;AACrD,MAAM,UAAU,GAAG,CAAC,KAA4B,EAAyB,EAAE;IACzE,OAAO,cAAc,CAAC,KAAK,CAAC,IAAI,OAAO,KAAK,CAAC,MAAM,CAAC,OAAO,KAAK,QAAQ,CAAC;AAC3E,CAAC,CAAC;AAIF,MAAM,CAAC,MAAM,cAAc,GAAG,GAAG,EAAE;IACjC,MAAM,CAAC,WAAW,EAAE,cAAc,CAAC,GAAG,QAAQ,CAA2C,EAAE,WAAW,EAAE,EAAE,EAAE,CAAC,CAAC;IAC9G,MAAM,SAAS,GAAG,YAAY,EAAE,CAAC;IAEjC,SAAS,CAAC,GAAG,EAAE;QACb,MAAM,sBAAsB,GAAG,CAAC,OAAe,EAAE,SAAkB,EAAQ,EAAE;YAC3E,MAAM,UAAU,GAAG,qCAAqC,CAAC;YACzD,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;YAExC,IAAI,KAAK,EAAE,CAAC;gBACV,MAAM,YAAY,GAAG,iBAAiB,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;gBACjD,MAAM,EAAE,WAAW,EAAE,GAAG,YAAY,CAAC;gBACrC,MAAM,UAAU,GAAG,YAAY,CAAC,UAAU,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;gBAEhE,CAAC,KAAK,IAAI,EAAE;oBACV,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,SAAS,CAAC,uBAAuB,CAAC,KAAK,CAAC,EAAE,WAAW,EAAE,UAAU,EAAE,SAAS,EAAE,CAAC,CAAC;oBAC1G,cAAc,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;wBACxB,GAAG,IAAI;wBACP,WAAW,EAAE,CAAC,GAAG,IAAI,CAAC,WAAW,EAAE,EAAE,WAAW,EAAE,UAAU,EAAE,SAAS,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC;qBAC/F,CAAC,CAAC,CAAC;gBACN,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE;oBACd,QAAQ;gBACV,CAAC,CAAC,CAAC;YACL,CAAC;QACH,CAAC,CAAC;QAEF,MAAM,YAAY,GAAG,SAAS,CAAC,aAAa,CAAC,SAAS,CAAC,gBAAgB,EAAE;YACvE,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE;gBACf,IAAI,IAAI,EAAE,CAAC;oBACT,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;oBACpB,sBAAsB,CAAC,IAAkB,CAAC,CAAC;gBAC7C,CAAC;YACH,CAAC;SACF,CAAC,CAAC;QAEH,MAAM,UAAU,GAAG,MAAM,CAAC,YAAY,CAAC;QAEvC,UAAU,CAAC,UAAU,EAAE,CAAC;QAExB,wCAAwC;QACxC,MAAM,CAAC,gBAAgB,CAAC,OAAO,EAAE,CAAC,KAAiB,EAAE,EAAE;YACrD,sBAAsB,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC;QACxD,CAAC,CAAC,CAAC;QAEH,yCAAyC;QACzC,KAAK,MAAM,KAAK,IAAI,UAAU,CAAC,cAAc,EAAE,CAAC;YAC9C,sBAAsB,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC;QACxD,CAAC;QAED,wCAAwC;QACxC,MAAM,CAAC,gBAAgB,CAAC,oBAAoB,EAAE,CAAC,KAA4B,EAAE,EAAE;YAC7E,UAAU,CAAC,KAAK,CAAC,IAAI,sBAAsB,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QACpE,CAAC,CAAC,CAAC;QAEH,6CAA6C;QAC7C,KAAK,MAAM,KAAK,IAAI,UAAU,CAAC,kBAAkB,EAAE,CAAC;YAClD,UAAU,CAAC,KAAK,CAAC,IAAI,sBAAsB,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QACpE,CAAC;QAED,OAAO,GAAG,EAAE;YACV,YAAY,CAAC,WAAW,EAAE,CAAC;QAC7B,CAAC,CAAC;IACJ,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC;IAEhB,OAAO,WAAW,CAAC;AACrB,CAAC,CAAC","sourcesContent":["import { useEffect, useState } from 'react';\nimport { parseImportString } from '@ms-cloudpack/path-string-parsing';\nimport { useCloudpack } from '../CloudpackProvider/CloudpackProvider.js';\nimport { errorEntrySource, type ErrorEntry } from '@ms-cloudpack/api-server/browser';\n\n// Interface with reason as a record.\ninterface ReasonRecord extends PromiseRejectionEvent {\n readonly reason: Record<string, unknown>;\n}\n\n// Interface with message as a string.\ninterface ReasonString extends ReasonRecord {\n readonly reason: { message: string };\n}\n\n// Verify the reason is a record.\nconst reasonIsRecord = (event: PromiseRejectionEvent): event is ReasonRecord => {\n return typeof event.reason === 'object' && !Array.isArray(event.reason) && event.reason !== null;\n};\n\n// Verify the reason has a message which is a string.\nconst hasMessage = (event: PromiseRejectionEvent): event is ReasonString => {\n return reasonIsRecord(event) && typeof event.reason.message === 'string';\n};\n\nexport type UnsupportedErrorEvent = { packageName: string; importPath: string; issuerUrl?: string; fixable?: boolean };\n\nexport const useErrorEvents = () => {\n const [errorEvents, setErrorEvents] = useState<{ unsupported: UnsupportedErrorEvent[] }>({ unsupported: [] });\n const cloudpack = useCloudpack();\n\n useEffect(() => {\n const handleUnsupportedError = (message: string, issuerUrl?: string): void => {\n const errorRegex = /[Mm]odule specifier,? ['\"](.*?)['\"]/;\n const match = message.match(errorRegex);\n\n if (match) {\n const importString = parseImportString(match[1]);\n const { packageName } = importString;\n const importPath = importString.importPath.replace(/^\\.\\//, '');\n\n (async () => {\n const { fixable } = await cloudpack.validatePackageOverride.query({ packageName, importPath, issuerUrl });\n setErrorEvents((prev) => ({\n ...prev,\n unsupported: [...prev.unsupported, { packageName, importPath, issuerUrl: issuerUrl, fixable }],\n }));\n })().catch(() => {\n // no-op\n });\n }\n };\n\n const subscription = cloudpack.onDataChanged.subscribe(errorEntrySource, {\n onData: (data) => {\n if (data) {\n console.error(data);\n handleUnsupportedError(data as ErrorEntry);\n }\n },\n });\n\n const pageErrors = window.__pageErrors;\n\n pageErrors.unregister();\n\n // Append unsupported paths to the list.\n window.addEventListener('error', (event: ErrorEvent) => {\n handleUnsupportedError(event.message, event.filename);\n });\n\n // Handle errors caught before rendering.\n for (const error of pageErrors.uncaughtErrors) {\n handleUnsupportedError(error.message, error.filename);\n }\n\n // Append unsupported paths to the list.\n window.addEventListener('unhandledrejection', (event: PromiseRejectionEvent) => {\n hasMessage(event) && handleUnsupportedError(event.reason.message);\n });\n\n // Handle rejections caught before rendering.\n for (const error of pageErrors.uncaughtRejections) {\n hasMessage(error) && handleUnsupportedError(error.reason.message);\n }\n\n return () => {\n subscription.unsubscribe();\n };\n }, [cloudpack]);\n\n return errorEvents;\n};\n"]}
|
package/lib/constants.d.ts
CHANGED
|
@@ -16,12 +16,4 @@ export declare const elementIds: {
|
|
|
16
16
|
*/
|
|
17
17
|
readonly statusBadgeRoot: "cloudpack-overlay-status-badge";
|
|
18
18
|
};
|
|
19
|
-
/**
|
|
20
|
-
* Cloudpack cookies accessed by the overlay.
|
|
21
|
-
*/
|
|
22
|
-
export declare const cookieNames: {
|
|
23
|
-
sessionId: string;
|
|
24
|
-
sessionSequence: string;
|
|
25
|
-
apiUrl: string;
|
|
26
|
-
};
|
|
27
19
|
//# sourceMappingURL=constants.d.ts.map
|
package/lib/constants.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,UAAU;IACrB;;OAEG;;IAEH;;OAEG;;IAEH;;OAEG;;IAEH;;OAEG;;CAEK,CAAC
|
|
1
|
+
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,UAAU;IACrB;;OAEG;;IAEH;;OAEG;;IAEH;;OAEG;;IAEH;;OAEG;;CAEK,CAAC"}
|
package/lib/constants.js
CHANGED
|
@@ -18,12 +18,4 @@ export const elementIds = {
|
|
|
18
18
|
*/
|
|
19
19
|
statusBadgeRoot: 'cloudpack-overlay-status-badge',
|
|
20
20
|
};
|
|
21
|
-
/**
|
|
22
|
-
* Cloudpack cookies accessed by the overlay.
|
|
23
|
-
*/
|
|
24
|
-
export const cookieNames = {
|
|
25
|
-
sessionId: 'cloudpack-session-id',
|
|
26
|
-
sessionSequence: 'cloudpack-session-sequence',
|
|
27
|
-
apiUrl: 'cloudpack-api-url',
|
|
28
|
-
};
|
|
29
21
|
//# sourceMappingURL=constants.js.map
|
package/lib/constants.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"AAAA,iGAAiG;AACjG,oBAAoB;AAEpB,MAAM,CAAC,MAAM,UAAU,GAAG;IACxB;;OAEG;IACH,IAAI,EAAE,wBAAwB;IAC9B;;OAEG;IACH,eAAe,EAAE,gCAAgC;IACjD;;OAEG;IACH,gBAAgB,EAAE,iCAAiC;IACnD;;OAEG;IACH,eAAe,EAAE,gCAAgC;CACzC,CAAC
|
|
1
|
+
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"AAAA,iGAAiG;AACjG,oBAAoB;AAEpB,MAAM,CAAC,MAAM,UAAU,GAAG;IACxB;;OAEG;IACH,IAAI,EAAE,wBAAwB;IAC9B;;OAEG;IACH,eAAe,EAAE,gCAAgC;IACjD;;OAEG;IACH,gBAAgB,EAAE,iCAAiC;IACnD;;OAEG;IACH,eAAe,EAAE,gCAAgC;CACzC,CAAC","sourcesContent":["// This file serves as a separate entry point which can be imported without rendering the overlay\n// as a side effect.\n\nexport const elementIds = {\n /**\n * ID for the root element of the overlay.\n */\n root: 'cloudpack-overlay-root',\n /**\n * ID for the root element of the error dialog.\n */\n errorDialogRoot: 'cloudpack-overlay-error-dialog',\n /**\n * ID for the root element of the status dialog.\n */\n statusDialogRoot: 'cloudpack-overlay-status-dialog',\n /**\n * ID for the root element of the status badge.\n */\n statusBadgeRoot: 'cloudpack-overlay-status-badge',\n} as const;\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"usePageLoadTimeReporter.d.ts","sourceRoot":"","sources":["../../src/hooks/usePageLoadTimeReporter.ts"],"names":[],"mappings":"AAGA,wBAAgB,uBAAuB,
|
|
1
|
+
{"version":3,"file":"usePageLoadTimeReporter.d.ts","sourceRoot":"","sources":["../../src/hooks/usePageLoadTimeReporter.ts"],"names":[],"mappings":"AAGA,wBAAgB,uBAAuB,uBA6BtC"}
|
|
@@ -5,10 +5,19 @@ export function usePageLoadTimeReporter() {
|
|
|
5
5
|
const cloudpack = useCloudpack();
|
|
6
6
|
React.useEffect(() => {
|
|
7
7
|
async function reportPageLoadTime() {
|
|
8
|
+
if (!window.__cloudpack) {
|
|
9
|
+
throw new Error('Cloudpack not found on window');
|
|
10
|
+
}
|
|
8
11
|
const { getPageLoadTime, getBrowserCacheRatio } = window.__cloudpack;
|
|
12
|
+
if (!getPageLoadTime) {
|
|
13
|
+
throw new Error('getPageLoadTime not found on window.__cloudpack');
|
|
14
|
+
}
|
|
9
15
|
const newPageLoadTime = await getPageLoadTime();
|
|
10
16
|
setPageLoadTime(newPageLoadTime);
|
|
11
17
|
await cloudpack.reportMetric.mutate({ metric: 'PAGE_LOAD_TIME', value: newPageLoadTime });
|
|
18
|
+
if (!getBrowserCacheRatio) {
|
|
19
|
+
throw new Error('getBrowserCacheRatio not found on window.__cloudpack');
|
|
20
|
+
}
|
|
12
21
|
// Page is loaded, the browser cache ratio can be reported
|
|
13
22
|
await cloudpack.reportMetric.mutate({ metric: 'BROWSER_CACHE_RATIO', value: getBrowserCacheRatio() });
|
|
14
23
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"usePageLoadTimeReporter.js","sourceRoot":"","sources":["../../src/hooks/usePageLoadTimeReporter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,YAAY,EAAE,MAAM,sDAAsD,CAAC;AAEpF,MAAM,UAAU,uBAAuB;IACrC,MAAM,CAAC,YAAY,EAAE,eAAe,CAAC,GAAG,KAAK,CAAC,QAAQ,EAAU,CAAC;IACjE,MAAM,SAAS,GAAG,YAAY,EAAE,CAAC;IAEjC,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACnB,KAAK,UAAU,kBAAkB;YAC/B,MAAM,EAAE,eAAe,EAAE,oBAAoB,EAAE,GAAG,MAAM,CAAC,WAAW,CAAC;YAErE,MAAM,eAAe,GAAG,MAAM,eAAe,EAAE,CAAC;YAChD,eAAe,CAAC,eAAe,CAAC,CAAC;YACjC,MAAM,SAAS,CAAC,YAAY,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,gBAAgB,EAAE,KAAK,EAAE,eAAe,EAAE,CAAC,CAAC;YAE1F,0DAA0D;YAC1D,MAAM,SAAS,CAAC,YAAY,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,qBAAqB,EAAE,KAAK,EAAE,oBAAoB,EAAE,EAAE,CAAC,CAAC;QACxG,CAAC;QAED,KAAK,kBAAkB,EAAE,CAAC;IAC5B,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC;IAEhB,OAAO,YAAY,CAAC;AACtB,CAAC","sourcesContent":["import React from 'react';\nimport { useCloudpack } from '../components/CloudpackProvider/CloudpackProvider.js';\n\nexport function usePageLoadTimeReporter() {\n const [pageLoadTime, setPageLoadTime] = React.useState<number>();\n const cloudpack = useCloudpack();\n\n React.useEffect(() => {\n async function reportPageLoadTime() {\n const { getPageLoadTime, getBrowserCacheRatio } = window.__cloudpack;\n\n const newPageLoadTime = await getPageLoadTime();\n setPageLoadTime(newPageLoadTime);\n await cloudpack.reportMetric.mutate({ metric: 'PAGE_LOAD_TIME', value: newPageLoadTime });\n\n // Page is loaded, the browser cache ratio can be reported\n await cloudpack.reportMetric.mutate({ metric: 'BROWSER_CACHE_RATIO', value: getBrowserCacheRatio() });\n }\n\n void reportPageLoadTime();\n }, [cloudpack]);\n\n return pageLoadTime;\n}\n"]}
|
|
1
|
+
{"version":3,"file":"usePageLoadTimeReporter.js","sourceRoot":"","sources":["../../src/hooks/usePageLoadTimeReporter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,YAAY,EAAE,MAAM,sDAAsD,CAAC;AAEpF,MAAM,UAAU,uBAAuB;IACrC,MAAM,CAAC,YAAY,EAAE,eAAe,CAAC,GAAG,KAAK,CAAC,QAAQ,EAAU,CAAC;IACjE,MAAM,SAAS,GAAG,YAAY,EAAE,CAAC;IAEjC,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACnB,KAAK,UAAU,kBAAkB;YAC/B,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC;gBACxB,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAC;YACnD,CAAC;YACD,MAAM,EAAE,eAAe,EAAE,oBAAoB,EAAE,GAAG,MAAM,CAAC,WAAW,CAAC;YAErE,IAAI,CAAC,eAAe,EAAE,CAAC;gBACrB,MAAM,IAAI,KAAK,CAAC,iDAAiD,CAAC,CAAC;YACrE,CAAC;YACD,MAAM,eAAe,GAAG,MAAM,eAAe,EAAE,CAAC;YAChD,eAAe,CAAC,eAAe,CAAC,CAAC;YACjC,MAAM,SAAS,CAAC,YAAY,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,gBAAgB,EAAE,KAAK,EAAE,eAAe,EAAE,CAAC,CAAC;YAE1F,IAAI,CAAC,oBAAoB,EAAE,CAAC;gBAC1B,MAAM,IAAI,KAAK,CAAC,sDAAsD,CAAC,CAAC;YAC1E,CAAC;YACD,0DAA0D;YAC1D,MAAM,SAAS,CAAC,YAAY,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,qBAAqB,EAAE,KAAK,EAAE,oBAAoB,EAAE,EAAE,CAAC,CAAC;QACxG,CAAC;QAED,KAAK,kBAAkB,EAAE,CAAC;IAC5B,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC;IAEhB,OAAO,YAAY,CAAC;AACtB,CAAC","sourcesContent":["import React from 'react';\nimport { useCloudpack } from '../components/CloudpackProvider/CloudpackProvider.js';\n\nexport function usePageLoadTimeReporter() {\n const [pageLoadTime, setPageLoadTime] = React.useState<number>();\n const cloudpack = useCloudpack();\n\n React.useEffect(() => {\n async function reportPageLoadTime() {\n if (!window.__cloudpack) {\n throw new Error('Cloudpack not found on window');\n }\n const { getPageLoadTime, getBrowserCacheRatio } = window.__cloudpack;\n\n if (!getPageLoadTime) {\n throw new Error('getPageLoadTime not found on window.__cloudpack');\n }\n const newPageLoadTime = await getPageLoadTime();\n setPageLoadTime(newPageLoadTime);\n await cloudpack.reportMetric.mutate({ metric: 'PAGE_LOAD_TIME', value: newPageLoadTime });\n\n if (!getBrowserCacheRatio) {\n throw new Error('getBrowserCacheRatio not found on window.__cloudpack');\n }\n // Page is loaded, the browser cache ratio can be reported\n await cloudpack.reportMetric.mutate({ metric: 'BROWSER_CACHE_RATIO', value: getBrowserCacheRatio() });\n }\n\n void reportPageLoadTime();\n }, [cloudpack]);\n\n return pageLoadTime;\n}\n"]}
|
package/lib/index.js
CHANGED
|
@@ -3,21 +3,24 @@ import ReactDOM from 'react-dom';
|
|
|
3
3
|
import { CloudpackProvider } from './components/CloudpackProvider/CloudpackProvider.js';
|
|
4
4
|
import { StatusOverlay } from './components/StatusOverlay/StatusOverlay.js';
|
|
5
5
|
import { ThemeProvider } from './components/ThemeProvider/ThemeProvider.js';
|
|
6
|
-
import {
|
|
6
|
+
import { elementIds } from './constants.js';
|
|
7
7
|
import { createCloudpackClient, reloadCountSource } from '@ms-cloudpack/api-server/browser';
|
|
8
|
-
import { getCookies } from './components/CloudpackProvider/getCookies.js';
|
|
9
8
|
async function start() {
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
const
|
|
9
|
+
if (!window.__cloudpack) {
|
|
10
|
+
throw new Error('Cloudpack not found on window');
|
|
11
|
+
}
|
|
12
|
+
const { pageSessionContext } = window.__cloudpack;
|
|
13
|
+
if (!pageSessionContext) {
|
|
14
|
+
throw new Error('Session context not found on window.__cloudpack');
|
|
15
|
+
}
|
|
16
|
+
const { apiUrl, currentSequence, sessionId } = pageSessionContext;
|
|
14
17
|
const client = await createCloudpackClient({ url: apiUrl });
|
|
15
18
|
if (sessionId === (await client.getSessionId.query())) {
|
|
16
19
|
console.log('[Cloudpack] socket opened');
|
|
17
20
|
}
|
|
18
21
|
client.onDataChanged.subscribe(reloadCountSource, {
|
|
19
22
|
onData: (data) => {
|
|
20
|
-
if (Number(data) >
|
|
23
|
+
if (Number(data) > currentSequence) {
|
|
21
24
|
window.location.reload();
|
|
22
25
|
}
|
|
23
26
|
},
|
package/lib/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,QAAQ,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,iBAAiB,EAAE,MAAM,qDAAqD,CAAC;AACxF,OAAO,EAAE,aAAa,EAAE,MAAM,6CAA6C,CAAC;AAC5E,OAAO,EAAE,aAAa,EAAE,MAAM,6CAA6C,CAAC;AAC5E,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,QAAQ,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,iBAAiB,EAAE,MAAM,qDAAqD,CAAC;AACxF,OAAO,EAAE,aAAa,EAAE,MAAM,6CAA6C,CAAC;AAC5E,OAAO,EAAE,aAAa,EAAE,MAAM,6CAA6C,CAAC;AAC5E,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAC5C,OAAO,EAAE,qBAAqB,EAAE,iBAAiB,EAAE,MAAM,kCAAkC,CAAC;AAE5F,KAAK,UAAU,KAAK;IAClB,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC;QACxB,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAC;IACnD,CAAC;IAED,MAAM,EAAE,kBAAkB,EAAE,GAAG,MAAM,CAAC,WAAW,CAAC;IAElD,IAAI,CAAC,kBAAkB,EAAE,CAAC;QACxB,MAAM,IAAI,KAAK,CAAC,iDAAiD,CAAC,CAAC;IACrE,CAAC;IAED,MAAM,EAAE,MAAM,EAAE,eAAe,EAAE,SAAS,EAAE,GAAG,kBAAkB,CAAC;IAElE,MAAM,MAAM,GAAG,MAAM,qBAAqB,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,CAAC,CAAC;IAE5D,IAAI,SAAS,KAAK,CAAC,MAAM,MAAM,CAAC,YAAY,CAAC,KAAK,EAAE,CAAC,EAAE,CAAC;QACtD,OAAO,CAAC,GAAG,CAAC,2BAA2B,CAAC,CAAC;IAC3C,CAAC;IAED,MAAM,CAAC,aAAa,CAAC,SAAS,CAAC,iBAAiB,EAAE;QAChD,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE;YACf,IAAI,MAAM,CAAC,IAAI,CAAC,GAAG,eAAe,EAAE,CAAC;gBACnC,MAAM,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC;YAC3B,CAAC;QACH,CAAC;KACF,CAAC,CAAC;IAEH,MAAM,OAAO,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;IAC9C,OAAO,CAAC,EAAE,GAAG,UAAU,CAAC,IAAI,CAAC;IAE7B,QAAQ,CAAC,MAAM,CACb,oBAAC,aAAa;QACZ,oBAAC,iBAAiB,IAAC,MAAM,EAAE,MAAM;YAC/B,oBAAC,aAAa,OAAG,CACC,CACN,EAChB,OAAO,CACR,CAAC;IAEF,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;AACrC,CAAC;AAED,KAAK,KAAK,EAAE,CAAC","sourcesContent":["import React from 'react';\nimport ReactDOM from 'react-dom';\nimport { CloudpackProvider } from './components/CloudpackProvider/CloudpackProvider.js';\nimport { StatusOverlay } from './components/StatusOverlay/StatusOverlay.js';\nimport { ThemeProvider } from './components/ThemeProvider/ThemeProvider.js';\nimport { elementIds } from './constants.js';\nimport { createCloudpackClient, reloadCountSource } from '@ms-cloudpack/api-server/browser';\n\nasync function start() {\n if (!window.__cloudpack) {\n throw new Error('Cloudpack not found on window');\n }\n\n const { pageSessionContext } = window.__cloudpack;\n\n if (!pageSessionContext) {\n throw new Error('Session context not found on window.__cloudpack');\n }\n\n const { apiUrl, currentSequence, sessionId } = pageSessionContext;\n\n const client = await createCloudpackClient({ url: apiUrl });\n\n if (sessionId === (await client.getSessionId.query())) {\n console.log('[Cloudpack] socket opened');\n }\n\n client.onDataChanged.subscribe(reloadCountSource, {\n onData: (data) => {\n if (Number(data) > currentSequence) {\n window.location.reload();\n }\n },\n });\n\n const rootDiv = document.createElement('div');\n rootDiv.id = elementIds.root;\n\n ReactDOM.render(\n <ThemeProvider>\n <CloudpackProvider client={client}>\n <StatusOverlay />\n </CloudpackProvider>\n </ThemeProvider>,\n rootDiv,\n );\n\n document.body.appendChild(rootDiv);\n}\n\nvoid start();\n"]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ms-cloudpack/overlay",
|
|
3
|
-
"version": "0.17.
|
|
3
|
+
"version": "0.17.31",
|
|
4
4
|
"description": "The Cloudpack overlay ux.",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"types": "./lib/index.d.ts",
|
|
@@ -28,14 +28,15 @@
|
|
|
28
28
|
"lint": "cloudpack-scripts lint"
|
|
29
29
|
},
|
|
30
30
|
"dependencies": {
|
|
31
|
-
"@ms-cloudpack/api-server": "^0.
|
|
31
|
+
"@ms-cloudpack/api-server": "^0.47.0",
|
|
32
32
|
"@ms-cloudpack/path-string-parsing": "^1.2.3",
|
|
33
33
|
"classnames": "^2.5.1",
|
|
34
34
|
"react": "^17.0.0 || ^18.0.0",
|
|
35
35
|
"react-dom": "^17.0.0 || ^18.0.0"
|
|
36
36
|
},
|
|
37
37
|
"devDependencies": {
|
|
38
|
-
"@ms-cloudpack/common-types": "^0.
|
|
38
|
+
"@ms-cloudpack/common-types": "^0.12.0",
|
|
39
|
+
"@ms-cloudpack/common-types-browser": "^0.2.0",
|
|
39
40
|
"@ms-cloudpack/eslint-plugin-internal": "^0.0.1",
|
|
40
41
|
"@ms-cloudpack/scripts": "^0.0.1",
|
|
41
42
|
"@types/react": "^17.0.58",
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"getCookies.d.ts","sourceRoot":"","sources":["../../../src/components/CloudpackProvider/getCookies.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,wBAAgB,UAAU,IAAI,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAcnD"}
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Gets the cookies dictionary from the browser.
|
|
3
|
-
*/
|
|
4
|
-
export function getCookies() {
|
|
5
|
-
return document.cookie
|
|
6
|
-
.split(';')
|
|
7
|
-
.map((s) => s.split('='))
|
|
8
|
-
.reduce((current, nextValue) => {
|
|
9
|
-
const name = nextValue[0]?.trim();
|
|
10
|
-
const value = decodeURIComponent(nextValue[1]?.trim());
|
|
11
|
-
if (name && value) {
|
|
12
|
-
current[name] = value;
|
|
13
|
-
}
|
|
14
|
-
return current;
|
|
15
|
-
}, {});
|
|
16
|
-
}
|
|
17
|
-
//# sourceMappingURL=getCookies.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"getCookies.js","sourceRoot":"","sources":["../../../src/components/CloudpackProvider/getCookies.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,UAAU,UAAU;IACxB,OAAO,QAAQ,CAAC,MAAM;SACnB,KAAK,CAAC,GAAG,CAAC;SACV,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;SACxB,MAAM,CAAyB,CAAC,OAAO,EAAE,SAAS,EAAE,EAAE;QACrD,MAAM,IAAI,GAAG,SAAS,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC;QAClC,MAAM,KAAK,GAAG,kBAAkB,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC;QAEvD,IAAI,IAAI,IAAI,KAAK,EAAE,CAAC;YAClB,OAAO,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC;QACxB,CAAC;QAED,OAAO,OAAO,CAAC;IACjB,CAAC,EAAE,EAAE,CAAC,CAAC;AACX,CAAC","sourcesContent":["/**\n * Gets the cookies dictionary from the browser.\n */\nexport function getCookies(): Record<string, string> {\n return document.cookie\n .split(';')\n .map((s) => s.split('='))\n .reduce<Record<string, string>>((current, nextValue) => {\n const name = nextValue[0]?.trim();\n const value = decodeURIComponent(nextValue[1]?.trim());\n\n if (name && value) {\n current[name] = value;\n }\n\n return current;\n }, {});\n}\n"]}
|
/package/dist/browser-esm/chunks/js/{ErrorDialog-744DEKEI.js.map → ErrorDialog-5IGGA35U.js.map}
RENAMED
|
File without changes
|
/package/dist/browser-esm/chunks/js/{StatusDialog-J6LM3XZZ.js.map → StatusDialog-7Q5HGOOM.js.map}
RENAMED
|
File without changes
|