@treasuryspatial/viewer-ui-kit 0.1.42 → 0.1.56
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/AdminLayout.js +1 -1
- package/dist/AdminShell.d.ts +6 -1
- package/dist/AdminShell.d.ts.map +1 -1
- package/dist/AdminShell.js +45 -3
- package/dist/ChooserActionCard.d.ts +10 -0
- package/dist/ChooserActionCard.d.ts.map +1 -0
- package/dist/ChooserActionCard.js +39 -0
- package/dist/ComposerRightRail.d.ts +3 -1
- package/dist/ComposerRightRail.d.ts.map +1 -1
- package/dist/ComposerRightRail.js +11 -43
- package/dist/ConfiguratorShell.js +1 -1
- package/dist/LandingShell.d.ts +2 -1
- package/dist/LandingShell.d.ts.map +1 -1
- package/dist/LandingShell.js +133 -33
- package/dist/LoginShell.d.ts +2 -1
- package/dist/LoginShell.d.ts.map +1 -1
- package/dist/LoginShell.js +26 -3
- package/dist/ManifestTopBar.d.ts +7 -1
- package/dist/ManifestTopBar.d.ts.map +1 -1
- package/dist/ManifestTopBar.js +249 -38
- package/dist/MetricsPanel.d.ts +1 -1
- package/dist/MetricsPanel.d.ts.map +1 -1
- package/dist/MetricsPanel.js +19 -29
- package/dist/MetricsPanelContent.d.ts +38 -17
- package/dist/MetricsPanelContent.d.ts.map +1 -1
- package/dist/MetricsPanelContent.js +84 -90
- package/dist/ModeBar.d.ts +6 -2
- package/dist/ModeBar.d.ts.map +1 -1
- package/dist/ModeBar.js +49 -82
- package/dist/ModuleSelectorPanel.d.ts +2 -1
- package/dist/ModuleSelectorPanel.d.ts.map +1 -1
- package/dist/ModuleSelectorPanel.js +47 -49
- package/dist/PanelSkin.d.ts.map +1 -1
- package/dist/PanelSkin.js +1598 -312
- package/dist/PanelSystem.d.ts +45 -0
- package/dist/PanelSystem.d.ts.map +1 -0
- package/dist/PanelSystem.js +450 -0
- package/dist/PanelTabs.d.ts.map +1 -1
- package/dist/PanelTabs.js +8 -34
- package/dist/PanelToggleDock.d.ts +10 -0
- package/dist/PanelToggleDock.d.ts.map +1 -0
- package/dist/PanelToggleDock.js +40 -0
- package/dist/PromptPackChooserPanel.d.ts +12 -11
- package/dist/PromptPackChooserPanel.d.ts.map +1 -1
- package/dist/PromptPackChooserPanel.js +103 -63
- package/dist/SceneInspectorPanel.d.ts +42 -0
- package/dist/SceneInspectorPanel.d.ts.map +1 -0
- package/dist/SceneInspectorPanel.js +135 -0
- package/dist/ScienceDataPanelContent.d.ts +16 -0
- package/dist/ScienceDataPanelContent.d.ts.map +1 -0
- package/dist/ScienceDataPanelContent.js +31 -0
- package/dist/ScienceMetricsPanelContent.d.ts +53 -0
- package/dist/ScienceMetricsPanelContent.d.ts.map +1 -0
- package/dist/ScienceMetricsPanelContent.js +415 -0
- package/dist/SpatialHud.d.ts +18 -0
- package/dist/SpatialHud.d.ts.map +1 -0
- package/dist/SpatialHud.js +120 -0
- package/dist/StreetviewModeSurface.d.ts +40 -0
- package/dist/StreetviewModeSurface.d.ts.map +1 -0
- package/dist/StreetviewModeSurface.js +358 -0
- package/dist/SurfaceSwitcher.d.ts +11 -0
- package/dist/SurfaceSwitcher.d.ts.map +1 -0
- package/dist/SurfaceSwitcher.js +46 -0
- package/dist/TopBar.d.ts +2 -0
- package/dist/TopBar.d.ts.map +1 -1
- package/dist/TopBar.js +3 -1
- package/dist/UnknownModeSurface.d.ts +6 -0
- package/dist/UnknownModeSurface.d.ts.map +1 -0
- package/dist/UnknownModeSurface.js +41 -0
- package/dist/index.d.ts +19 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +12 -0
- package/dist/landingTokens.d.ts +7 -0
- package/dist/landingTokens.d.ts.map +1 -0
- package/dist/landingTokens.js +6 -0
- package/dist/layout.d.ts +27 -27
- package/dist/layout.d.ts.map +1 -1
- package/dist/layout.js +33 -27
- package/dist/mapMetrics.d.ts +88 -0
- package/dist/mapMetrics.d.ts.map +1 -0
- package/dist/mapMetrics.js +1 -0
- package/dist/panelPrimitives.d.ts +11 -0
- package/dist/panelPrimitives.d.ts.map +1 -0
- package/dist/panelPrimitives.js +41 -0
- package/dist/topbarLogoPolicy.d.ts +14 -0
- package/dist/topbarLogoPolicy.d.ts.map +1 -0
- package/dist/topbarLogoPolicy.js +41 -0
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +18 -5
package/dist/layout.d.ts
CHANGED
|
@@ -1,41 +1,41 @@
|
|
|
1
|
-
export declare const Layout: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never>> & string;
|
|
2
|
-
export declare const ShellLayout: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components/dist/types").Substitute<import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never>, {
|
|
1
|
+
export declare const Layout: import("styled-components/dist/types.js").IStyledComponentBase<"web", import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never>> & string;
|
|
2
|
+
export declare const ShellLayout: import("styled-components/dist/types.js").IStyledComponentBase<"web", import("styled-components/dist/types.js").Substitute<import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never>, {
|
|
3
3
|
$topOffset?: number;
|
|
4
4
|
}>> & string;
|
|
5
|
-
export declare const ViewerContainer: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never>> & string;
|
|
6
|
-
export declare const ControlPanel: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components/dist/types").Substitute<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLElement>, HTMLElement>, {
|
|
5
|
+
export declare const ViewerContainer: import("styled-components/dist/types.js").IStyledComponentBase<"web", import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never>> & string;
|
|
6
|
+
export declare const ControlPanel: import("styled-components/dist/types.js").IStyledComponentBase<"web", import("styled-components/dist/types.js").Substitute<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLElement>, HTMLElement>, {
|
|
7
7
|
$open: boolean;
|
|
8
8
|
}>> & string;
|
|
9
|
-
export declare const PanelHeader: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never>> & string;
|
|
10
|
-
export declare const PanelHeaderContent: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never>> & string;
|
|
11
|
-
export declare const PanelHeaderRow: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never>> & string;
|
|
12
|
-
export declare const PanelTitle: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLHeadingElement>, HTMLHeadingElement>, never>> & string;
|
|
13
|
-
export declare const PanelSubtitle: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLParagraphElement>, HTMLParagraphElement>, never>> & string;
|
|
14
|
-
export declare const PanelStatusPill: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components/dist/types").Substitute<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLSpanElement>, HTMLSpanElement>, {
|
|
9
|
+
export declare const PanelHeader: import("styled-components/dist/types.js").IStyledComponentBase<"web", import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never>> & string;
|
|
10
|
+
export declare const PanelHeaderContent: import("styled-components/dist/types.js").IStyledComponentBase<"web", import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never>> & string;
|
|
11
|
+
export declare const PanelHeaderRow: import("styled-components/dist/types.js").IStyledComponentBase<"web", import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never>> & string;
|
|
12
|
+
export declare const PanelTitle: import("styled-components/dist/types.js").IStyledComponentBase<"web", import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLHeadingElement>, HTMLHeadingElement>, never>> & string;
|
|
13
|
+
export declare const PanelSubtitle: import("styled-components/dist/types.js").IStyledComponentBase<"web", import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLParagraphElement>, HTMLParagraphElement>, never>> & string;
|
|
14
|
+
export declare const PanelStatusPill: import("styled-components/dist/types.js").IStyledComponentBase<"web", import("styled-components/dist/types.js").Substitute<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLSpanElement>, HTMLSpanElement>, {
|
|
15
15
|
$tone?: "loading" | "error" | "ready";
|
|
16
16
|
}>> & string;
|
|
17
|
-
export declare const PanelBody: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never>> & string;
|
|
18
|
-
export declare const PanelFooter: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never>> & string;
|
|
19
|
-
export declare const PanelCollapseToggle: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<import("styled-components").FastOmit<import("styled-components/dist/types").Substitute<import("react").DetailedHTMLProps<import("react").ButtonHTMLAttributes<HTMLButtonElement>, HTMLButtonElement>, import("react").DetailedHTMLProps<import("react").ButtonHTMLAttributes<HTMLButtonElement>, HTMLButtonElement>>, never>, never>> & string;
|
|
20
|
-
export declare const PanelShowToggle: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<import("styled-components").FastOmit<import("styled-components/dist/types").Substitute<import("react").DetailedHTMLProps<import("react").ButtonHTMLAttributes<HTMLButtonElement>, HTMLButtonElement>, import("react").DetailedHTMLProps<import("react").ButtonHTMLAttributes<HTMLButtonElement>, HTMLButtonElement>>, never>, never>> & string;
|
|
21
|
-
export declare const RightPanel: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components/dist/types").Substitute<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLElement>, HTMLElement>, {
|
|
17
|
+
export declare const PanelBody: import("styled-components/dist/types.js").IStyledComponentBase<"web", import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never>> & string;
|
|
18
|
+
export declare const PanelFooter: import("styled-components/dist/types.js").IStyledComponentBase<"web", import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never>> & string;
|
|
19
|
+
export declare const PanelCollapseToggle: import("styled-components/dist/types.js").IStyledComponentBase<"web", import("styled-components").FastOmit<import("styled-components").FastOmit<import("styled-components/dist/types.js").Substitute<import("react").DetailedHTMLProps<import("react").ButtonHTMLAttributes<HTMLButtonElement>, HTMLButtonElement>, import("react").DetailedHTMLProps<import("react").ButtonHTMLAttributes<HTMLButtonElement>, HTMLButtonElement>>, never>, never>> & string;
|
|
20
|
+
export declare const PanelShowToggle: import("styled-components/dist/types.js").IStyledComponentBase<"web", import("styled-components").FastOmit<import("styled-components").FastOmit<import("styled-components/dist/types.js").Substitute<import("react").DetailedHTMLProps<import("react").ButtonHTMLAttributes<HTMLButtonElement>, HTMLButtonElement>, import("react").DetailedHTMLProps<import("react").ButtonHTMLAttributes<HTMLButtonElement>, HTMLButtonElement>>, never>, never>> & string;
|
|
21
|
+
export declare const RightPanel: import("styled-components/dist/types.js").IStyledComponentBase<"web", import("styled-components/dist/types.js").Substitute<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLElement>, HTMLElement>, {
|
|
22
22
|
$open: boolean;
|
|
23
23
|
$topOffset?: number;
|
|
24
24
|
}>> & string;
|
|
25
|
-
export declare const RightPanelCollapseToggle: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<import("styled-components").FastOmit<import("styled-components/dist/types").Substitute<import("react").DetailedHTMLProps<import("react").ButtonHTMLAttributes<HTMLButtonElement>, HTMLButtonElement>, import("react").DetailedHTMLProps<import("react").ButtonHTMLAttributes<HTMLButtonElement>, HTMLButtonElement>>, never>, never>> & string;
|
|
26
|
-
export declare const RightPanelShowToggle: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<import("styled-components").FastOmit<import("styled-components/dist/types").Substitute<import("react").DetailedHTMLProps<import("react").ButtonHTMLAttributes<HTMLButtonElement>, HTMLButtonElement>, import("react").DetailedHTMLProps<import("react").ButtonHTMLAttributes<HTMLButtonElement>, HTMLButtonElement>>, never>, never>> & string;
|
|
27
|
-
export declare const InspectorWrapper: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components/dist/types").Substitute<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {
|
|
25
|
+
export declare const RightPanelCollapseToggle: import("styled-components/dist/types.js").IStyledComponentBase<"web", import("styled-components").FastOmit<import("styled-components").FastOmit<import("styled-components/dist/types.js").Substitute<import("react").DetailedHTMLProps<import("react").ButtonHTMLAttributes<HTMLButtonElement>, HTMLButtonElement>, import("react").DetailedHTMLProps<import("react").ButtonHTMLAttributes<HTMLButtonElement>, HTMLButtonElement>>, never>, never>> & string;
|
|
26
|
+
export declare const RightPanelShowToggle: import("styled-components/dist/types.js").IStyledComponentBase<"web", import("styled-components").FastOmit<import("styled-components").FastOmit<import("styled-components/dist/types.js").Substitute<import("react").DetailedHTMLProps<import("react").ButtonHTMLAttributes<HTMLButtonElement>, HTMLButtonElement>, import("react").DetailedHTMLProps<import("react").ButtonHTMLAttributes<HTMLButtonElement>, HTMLButtonElement>>, never>, never>> & string;
|
|
27
|
+
export declare const InspectorWrapper: import("styled-components/dist/types.js").IStyledComponentBase<"web", import("styled-components/dist/types.js").Substitute<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {
|
|
28
28
|
$topOffset?: number;
|
|
29
29
|
}>> & string;
|
|
30
|
-
export declare const InspectorCard: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never>> & string;
|
|
31
|
-
export declare const InspectorHeader: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never>> & string;
|
|
32
|
-
export declare const InspectorTitle: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLSpanElement>, HTMLSpanElement>, never>> & string;
|
|
33
|
-
export declare const InspectorCollapse: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").ButtonHTMLAttributes<HTMLButtonElement>, HTMLButtonElement>, never>> & string;
|
|
34
|
-
export declare const InspectorBody: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never>> & string;
|
|
35
|
-
export declare const InspectorRow: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never>> & string;
|
|
36
|
-
export declare const InspectorToggleRow: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never>> & string;
|
|
37
|
-
export declare const InspectorToggle: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").ButtonHTMLAttributes<HTMLButtonElement>, HTMLButtonElement>, never>> & string;
|
|
38
|
-
export declare const FloatingControls: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components/dist/types").Substitute<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {
|
|
30
|
+
export declare const InspectorCard: import("styled-components/dist/types.js").IStyledComponentBase<"web", import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never>> & string;
|
|
31
|
+
export declare const InspectorHeader: import("styled-components/dist/types.js").IStyledComponentBase<"web", import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never>> & string;
|
|
32
|
+
export declare const InspectorTitle: import("styled-components/dist/types.js").IStyledComponentBase<"web", import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLSpanElement>, HTMLSpanElement>, never>> & string;
|
|
33
|
+
export declare const InspectorCollapse: import("styled-components/dist/types.js").IStyledComponentBase<"web", import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").ButtonHTMLAttributes<HTMLButtonElement>, HTMLButtonElement>, never>> & string;
|
|
34
|
+
export declare const InspectorBody: import("styled-components/dist/types.js").IStyledComponentBase<"web", import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never>> & string;
|
|
35
|
+
export declare const InspectorRow: import("styled-components/dist/types.js").IStyledComponentBase<"web", import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never>> & string;
|
|
36
|
+
export declare const InspectorToggleRow: import("styled-components/dist/types.js").IStyledComponentBase<"web", import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never>> & string;
|
|
37
|
+
export declare const InspectorToggle: import("styled-components/dist/types.js").IStyledComponentBase<"web", import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").ButtonHTMLAttributes<HTMLButtonElement>, HTMLButtonElement>, never>> & string;
|
|
38
|
+
export declare const FloatingControls: import("styled-components/dist/types.js").IStyledComponentBase<"web", import("styled-components/dist/types.js").Substitute<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {
|
|
39
39
|
$panelOpen?: boolean;
|
|
40
40
|
}>> & string;
|
|
41
41
|
//# sourceMappingURL=layout.d.ts.map
|
package/dist/layout.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"layout.d.ts","sourceRoot":"","sources":["../src/layout.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"layout.d.ts","sourceRoot":"","sources":["../src/layout.tsx"],"names":[],"mappings":"AAMA,eAAO,MAAM,MAAM,gOAKlB,CAAC;AAEF,eAAO,MAAM,WAAW;iBAAiC,MAAM;YAM9D,CAAC;AAEF,eAAO,MAAM,eAAe,gOAQ3B,CAAC;AAEF,eAAO,MAAM,YAAY;WAAyB,OAAO;YAgBxD,CAAC;AAEF,eAAO,MAAM,WAAW,gOAOvB,CAAC;AAEF,eAAO,MAAM,kBAAkB,gOAI9B,CAAC;AAEF,eAAO,MAAM,cAAc,gOAK1B,CAAC;AAEF,eAAO,MAAM,UAAU,wOAKtB,CAAC;AAEF,eAAO,MAAM,aAAa,4OAKzB,CAAC;AAEF,eAAO,MAAM,eAAe;YAAyB,SAAS,GAAG,OAAO,GAAG,OAAO;YA4BjF,CAAC;AAEF,eAAO,MAAM,SAAS,gOASrB,CAAC;AAEF,eAAO,MAAM,WAAW,gOAOvB,CAAC;AAEF,eAAO,MAAM,mBAAmB,8bAM/B,CAAC;AAEF,eAAO,MAAM,eAAe,8bAM3B,CAAC;AAEF,eAAO,MAAM,UAAU;WAAyB,OAAO;iBAAe,MAAM;YAc3E,CAAC;AAEF,eAAO,MAAM,wBAAwB,8bAMpC,CAAC;AAEF,eAAO,MAAM,oBAAoB,8bAMhC,CAAC;AAEF,eAAO,MAAM,gBAAgB;iBAA6B,MAAM;YAO/D,CAAC;AAEF,eAAO,MAAM,aAAa,gOAYzB,CAAC;AAEF,eAAO,MAAM,eAAe,gOAK3B,CAAC;AAEF,eAAO,MAAM,cAAc,kOAK1B,CAAC;AAEF,eAAO,MAAM,iBAAiB,4OAa7B,CAAC;AAEF,eAAO,MAAM,aAAa,gOAGzB,CAAC;AAEF,eAAO,MAAM,YAAY,gOAKxB,CAAC;AAEF,eAAO,MAAM,kBAAkB,gOAI9B,CAAC;AAEF,eAAO,MAAM,eAAe,4OAY3B,CAAC;AAEF,eAAO,MAAM,gBAAgB;iBAA6B,OAAO;YAYhE,CAAC"}
|
package/dist/layout.js
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
'use client';
|
|
2
2
|
import styled from 'styled-components';
|
|
3
|
+
import { panelSystemBodyCss, panelSystemSurfaceCss, panelSystemTitleCss } from './PanelSystem.js';
|
|
3
4
|
export const Layout = styled.div `
|
|
4
5
|
position: relative;
|
|
5
6
|
height: 100vh;
|
|
@@ -15,11 +16,15 @@ export const ShellLayout = styled(Layout) `
|
|
|
15
16
|
`;
|
|
16
17
|
export const ViewerContainer = styled.div `
|
|
17
18
|
position: absolute;
|
|
18
|
-
|
|
19
|
+
left: var(--ui-left-offset, 0px);
|
|
20
|
+
right: var(--ui-right-offset, 0px);
|
|
21
|
+
top: 0;
|
|
22
|
+
bottom: 0;
|
|
19
23
|
z-index: 1;
|
|
20
|
-
transition: top 0.3s ease, height 0.3s ease;
|
|
24
|
+
transition: top 0.3s ease, height 0.3s ease, left 0.3s ease, right 0.3s ease;
|
|
21
25
|
`;
|
|
22
26
|
export const ControlPanel = styled.aside `
|
|
27
|
+
${panelSystemSurfaceCss}
|
|
23
28
|
position: absolute;
|
|
24
29
|
left: 0;
|
|
25
30
|
top: 0;
|
|
@@ -27,7 +32,7 @@ export const ControlPanel = styled.aside `
|
|
|
27
32
|
width: var(--ui-panel-width);
|
|
28
33
|
background: var(--brand-panel);
|
|
29
34
|
border-right: 1px solid var(--brand-panel-border);
|
|
30
|
-
box-shadow:
|
|
35
|
+
box-shadow: none;
|
|
31
36
|
display: flex;
|
|
32
37
|
flex-direction: column;
|
|
33
38
|
transform: translateX(${(props) => (props.$open ? '0' : '-105%')});
|
|
@@ -37,16 +42,16 @@ export const ControlPanel = styled.aside `
|
|
|
37
42
|
`;
|
|
38
43
|
export const PanelHeader = styled.div `
|
|
39
44
|
position: relative;
|
|
40
|
-
padding: 18px 20px
|
|
45
|
+
padding: 18px 28px 14px 20px;
|
|
41
46
|
border-bottom: 1px solid var(--brand-panel-border);
|
|
42
47
|
background: var(--brand-panel);
|
|
43
|
-
box-shadow:
|
|
48
|
+
box-shadow: none;
|
|
44
49
|
z-index: 10;
|
|
45
50
|
`;
|
|
46
51
|
export const PanelHeaderContent = styled.div `
|
|
47
52
|
display: flex;
|
|
48
53
|
flex-direction: column;
|
|
49
|
-
gap:
|
|
54
|
+
gap: 12px;
|
|
50
55
|
`;
|
|
51
56
|
export const PanelHeaderRow = styled.div `
|
|
52
57
|
display: flex;
|
|
@@ -55,24 +60,26 @@ export const PanelHeaderRow = styled.div `
|
|
|
55
60
|
gap: 12px;
|
|
56
61
|
`;
|
|
57
62
|
export const PanelTitle = styled.h2 `
|
|
58
|
-
|
|
59
|
-
font-
|
|
60
|
-
|
|
63
|
+
${panelSystemTitleCss}
|
|
64
|
+
font-size: 32px;
|
|
65
|
+
font-weight: 500;
|
|
66
|
+
color: var(--viewer-ui-color-text-strong, var(--brand-text-primary));
|
|
61
67
|
`;
|
|
62
68
|
export const PanelSubtitle = styled.p `
|
|
63
|
-
font-size:
|
|
64
|
-
|
|
65
|
-
|
|
69
|
+
font-size: 14px;
|
|
70
|
+
font-weight: 300;
|
|
71
|
+
line-height: 1.4;
|
|
72
|
+
color: var(--viewer-ui-color-text-muted, var(--brand-text-secondary));
|
|
66
73
|
`;
|
|
67
74
|
export const PanelStatusPill = styled.span `
|
|
68
75
|
font-size: 10px;
|
|
69
|
-
text-transform:
|
|
70
|
-
letter-spacing: 0
|
|
71
|
-
font-weight:
|
|
76
|
+
text-transform: none;
|
|
77
|
+
letter-spacing: 0;
|
|
78
|
+
font-weight: 500;
|
|
72
79
|
padding: 6px 10px;
|
|
73
|
-
border-radius:
|
|
80
|
+
border-radius: 8px;
|
|
74
81
|
border: 1px solid var(--brand-panel-border);
|
|
75
|
-
color: var(--brand-text-secondary);
|
|
82
|
+
color: var(--viewer-ui-color-text-muted, var(--brand-text-secondary));
|
|
76
83
|
background: rgba(15, 23, 42, 0.04);
|
|
77
84
|
|
|
78
85
|
${(props) => props.$tone === 'loading'
|
|
@@ -92,13 +99,13 @@ export const PanelStatusPill = styled.span `
|
|
|
92
99
|
: ''}
|
|
93
100
|
`;
|
|
94
101
|
export const PanelBody = styled.div `
|
|
102
|
+
${panelSystemBodyCss}
|
|
95
103
|
flex: 1;
|
|
96
104
|
min-height: 0;
|
|
97
105
|
overflow-y: auto;
|
|
98
|
-
padding: 16px 20px 24px;
|
|
99
106
|
display: flex;
|
|
100
107
|
flex-direction: column;
|
|
101
|
-
gap:
|
|
108
|
+
gap: 22px;
|
|
102
109
|
position: relative;
|
|
103
110
|
`;
|
|
104
111
|
export const PanelFooter = styled.div `
|
|
@@ -131,7 +138,7 @@ export const RightPanel = styled.aside `
|
|
|
131
138
|
width: var(--ui-metrics-width);
|
|
132
139
|
background: var(--brand-panel);
|
|
133
140
|
border-left: 1px solid var(--brand-panel-border);
|
|
134
|
-
box-shadow:
|
|
141
|
+
box-shadow: none;
|
|
135
142
|
display: flex;
|
|
136
143
|
flex-direction: column;
|
|
137
144
|
transform: translateX(${(props) => (props.$open ? '0' : '105%')});
|
|
@@ -181,8 +188,8 @@ export const InspectorHeader = styled.div `
|
|
|
181
188
|
`;
|
|
182
189
|
export const InspectorTitle = styled.span `
|
|
183
190
|
font-size: 11px;
|
|
184
|
-
text-transform:
|
|
185
|
-
letter-spacing: 0
|
|
191
|
+
text-transform: none;
|
|
192
|
+
letter-spacing: 0;
|
|
186
193
|
font-weight: 600;
|
|
187
194
|
`;
|
|
188
195
|
export const InspectorCollapse = styled.button `
|
|
@@ -190,8 +197,8 @@ export const InspectorCollapse = styled.button `
|
|
|
190
197
|
background: transparent;
|
|
191
198
|
color: rgba(226, 232, 240, 0.7);
|
|
192
199
|
font-size: 10px;
|
|
193
|
-
text-transform:
|
|
194
|
-
letter-spacing: 0
|
|
200
|
+
text-transform: none;
|
|
201
|
+
letter-spacing: 0;
|
|
195
202
|
cursor: pointer;
|
|
196
203
|
padding: 0;
|
|
197
204
|
|
|
@@ -219,11 +226,10 @@ export const InspectorToggle = styled.button `
|
|
|
219
226
|
background: rgba(148, 163, 184, 0.12);
|
|
220
227
|
color: inherit;
|
|
221
228
|
padding: 6px 10px;
|
|
222
|
-
border-radius:
|
|
229
|
+
border-radius: 8px;
|
|
223
230
|
font-size: 11px;
|
|
224
|
-
text-transform:
|
|
231
|
+
text-transform: none;
|
|
225
232
|
cursor: pointer;
|
|
226
|
-
|
|
227
233
|
&[data-active='true'] {
|
|
228
234
|
background: rgba(148, 163, 184, 0.28);
|
|
229
235
|
}
|
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
export type MapSiteMetrics = {
|
|
2
|
+
address?: string | null;
|
|
3
|
+
sourceKind?: string | null;
|
|
4
|
+
geometryKind?: string | null;
|
|
5
|
+
plotAreaSqm?: number | null;
|
|
6
|
+
linearLengthMeters?: number | null;
|
|
7
|
+
plotPerimeterMeters?: number | null;
|
|
8
|
+
footprintAreaSqm?: number | null;
|
|
9
|
+
frontageMeters?: number | null;
|
|
10
|
+
footprintOffsetMeters?: number | null;
|
|
11
|
+
pointCount?: number | null;
|
|
12
|
+
orientationDegrees?: number | null;
|
|
13
|
+
siteCoveragePercent?: number | null;
|
|
14
|
+
floorAreaRatio?: number | null;
|
|
15
|
+
openSpacePercent?: number | null;
|
|
16
|
+
};
|
|
17
|
+
export type MapModelMetrics = {
|
|
18
|
+
toolId?: string | null;
|
|
19
|
+
compositionLabel?: string | null;
|
|
20
|
+
segmentCount?: number | null;
|
|
21
|
+
floorCount?: number | null;
|
|
22
|
+
floorAreaSqm?: number | null;
|
|
23
|
+
heightMeters?: number | null;
|
|
24
|
+
volumetricMassCubicMeters?: number | null;
|
|
25
|
+
offsetFromPlotMeters?: number | null;
|
|
26
|
+
corridorWidthMeters?: number | null;
|
|
27
|
+
estimatedUnits?: number | null;
|
|
28
|
+
};
|
|
29
|
+
export type MapEcoMetrics = {
|
|
30
|
+
canopyCoveragePercent?: number | null;
|
|
31
|
+
permeableSurfacePercent?: number | null;
|
|
32
|
+
stormwaterRetentionPercent?: number | null;
|
|
33
|
+
biodiversityIndex?: number | null;
|
|
34
|
+
heatIslandReductionIndex?: number | null;
|
|
35
|
+
waterQualityIndex?: number | null;
|
|
36
|
+
salinityPpt?: number | null;
|
|
37
|
+
wildlifeHabitatIndex?: number | null;
|
|
38
|
+
};
|
|
39
|
+
export type MapMaterialsMetrics = {
|
|
40
|
+
primaryMaterial?: string | null;
|
|
41
|
+
hardscapeRatioPercent?: number | null;
|
|
42
|
+
softscapeRatioPercent?: number | null;
|
|
43
|
+
timberSharePercent?: number | null;
|
|
44
|
+
concreteSharePercent?: number | null;
|
|
45
|
+
steelSharePercent?: number | null;
|
|
46
|
+
embodiedCarbonKgCo2ePerSqm?: number | null;
|
|
47
|
+
};
|
|
48
|
+
export type MapCostMetrics = {
|
|
49
|
+
landCost?: number | null;
|
|
50
|
+
projectBuildCost?: number | null;
|
|
51
|
+
publicRealmCost?: number | null;
|
|
52
|
+
annualOpsCost?: number | null;
|
|
53
|
+
contingencyPercent?: number | null;
|
|
54
|
+
};
|
|
55
|
+
export type MapDeliveryMetrics = {
|
|
56
|
+
timeToBuildMonths?: number | null;
|
|
57
|
+
phaseCount?: number | null;
|
|
58
|
+
permittingTrack?: string | null;
|
|
59
|
+
procurementComplexityIndex?: number | null;
|
|
60
|
+
};
|
|
61
|
+
export type MapPlanningMetrics = {
|
|
62
|
+
planningStatus?: string | null;
|
|
63
|
+
zoningFitIndex?: number | null;
|
|
64
|
+
codeComplexityIndex?: number | null;
|
|
65
|
+
heightComplianceIndex?: number | null;
|
|
66
|
+
setbackRiskIndex?: number | null;
|
|
67
|
+
};
|
|
68
|
+
export type MapMarketMetrics = {
|
|
69
|
+
averagePricePerUnit?: number | null;
|
|
70
|
+
timeToSaleMonths?: number | null;
|
|
71
|
+
marketVelocityIndex?: number | null;
|
|
72
|
+
marketMatchIndex?: number | null;
|
|
73
|
+
adjacentValueUpliftPercent?: number | null;
|
|
74
|
+
leaseUpMonths?: number | null;
|
|
75
|
+
};
|
|
76
|
+
export type MapMetricsPayload = {
|
|
77
|
+
source?: string;
|
|
78
|
+
timestamp?: string;
|
|
79
|
+
site: MapSiteMetrics;
|
|
80
|
+
model: MapModelMetrics;
|
|
81
|
+
eco?: MapEcoMetrics | null;
|
|
82
|
+
materials?: MapMaterialsMetrics | null;
|
|
83
|
+
cost?: MapCostMetrics | null;
|
|
84
|
+
delivery?: MapDeliveryMetrics | null;
|
|
85
|
+
planning?: MapPlanningMetrics | null;
|
|
86
|
+
market?: MapMarketMetrics | null;
|
|
87
|
+
};
|
|
88
|
+
//# sourceMappingURL=mapMetrics.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mapMetrics.d.ts","sourceRoot":"","sources":["../src/mapMetrics.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
export declare const panelEyebrowCss: import("styled-components").RuleSet<object>;
|
|
2
|
+
export declare const panelTitleCss: import("styled-components").RuleSet<object>;
|
|
3
|
+
export declare const panelSectionTitleCss: import("styled-components").RuleSet<object>;
|
|
4
|
+
export declare const panelBodyTextCss: import("styled-components").RuleSet<object>;
|
|
5
|
+
export declare const panelValueTextCss: import("styled-components").RuleSet<object>;
|
|
6
|
+
export declare const panelSubheadingCss: import("styled-components").RuleSet<object>;
|
|
7
|
+
export declare const panelPillRowCss: import("styled-components").RuleSet<object>;
|
|
8
|
+
export declare const panelPillButtonCss: import("styled-components").RuleSet<{
|
|
9
|
+
$active?: boolean;
|
|
10
|
+
}>;
|
|
11
|
+
//# sourceMappingURL=panelPrimitives.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"panelPrimitives.d.ts","sourceRoot":"","sources":["../src/panelPrimitives.ts"],"names":[],"mappings":"AAeA,eAAO,MAAM,eAAe,6CAG3B,CAAC;AAEF,eAAO,MAAM,aAAa,6CAGzB,CAAC;AAEF,eAAO,MAAM,oBAAoB,6CAGhC,CAAC;AAEF,eAAO,MAAM,gBAAgB,6CAG5B,CAAC;AAEF,eAAO,MAAM,iBAAiB,6CAG7B,CAAC;AAEF,eAAO,MAAM,kBAAkB,6CAG9B,CAAC;AAEF,eAAO,MAAM,eAAe,6CAI3B,CAAC;AAEF,eAAO,MAAM,kBAAkB;cAAmB,OAAO;EAUxD,CAAC"}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
import { css } from 'styled-components';
|
|
3
|
+
import { panelSystemBodyTextCss, panelSystemFeatureToggleCss, panelSystemLabelCss, panelSystemSectionHeadingCss, panelSystemSubheadingCss, panelSystemTitleCss, panelSystemToggleBarCss, panelSystemValueCss, } from './PanelSystem.js';
|
|
4
|
+
export const panelEyebrowCss = css `
|
|
5
|
+
${panelSystemLabelCss}
|
|
6
|
+
color: var(--viewer-ui-color-text-muted, var(--brand-text-secondary));
|
|
7
|
+
`;
|
|
8
|
+
export const panelTitleCss = css `
|
|
9
|
+
${panelSystemTitleCss}
|
|
10
|
+
color: var(--viewer-ui-color-text-strong, var(--brand-text-primary));
|
|
11
|
+
`;
|
|
12
|
+
export const panelSectionTitleCss = css `
|
|
13
|
+
${panelSystemSectionHeadingCss}
|
|
14
|
+
color: var(--viewer-ui-color-text-strong, var(--brand-text-primary));
|
|
15
|
+
`;
|
|
16
|
+
export const panelBodyTextCss = css `
|
|
17
|
+
${panelSystemBodyTextCss}
|
|
18
|
+
color: var(--viewer-ui-color-text-muted, var(--brand-text-secondary));
|
|
19
|
+
`;
|
|
20
|
+
export const panelValueTextCss = css `
|
|
21
|
+
${panelSystemValueCss}
|
|
22
|
+
color: var(--viewer-ui-color-text-strong, var(--brand-text-primary));
|
|
23
|
+
`;
|
|
24
|
+
export const panelSubheadingCss = css `
|
|
25
|
+
${panelSystemSubheadingCss}
|
|
26
|
+
color: var(--viewer-ui-color-text-strong, var(--brand-text-primary));
|
|
27
|
+
`;
|
|
28
|
+
export const panelPillRowCss = css `
|
|
29
|
+
${panelSystemToggleBarCss}
|
|
30
|
+
justify-content: flex-start;
|
|
31
|
+
padding-bottom: 6px;
|
|
32
|
+
`;
|
|
33
|
+
export const panelPillButtonCss = css `
|
|
34
|
+
${panelSystemFeatureToggleCss}
|
|
35
|
+
background: ${(props) => props.$active
|
|
36
|
+
? 'var(--panel-system-accent, var(--brand-primary))'
|
|
37
|
+
: 'var(--panel-system-toggle-bg, rgba(255, 255, 255, 0.6))'};
|
|
38
|
+
color: ${(props) => props.$active
|
|
39
|
+
? 'var(--viewer-ui-color-button-primary-text, rgb(255 255 255))'
|
|
40
|
+
: 'var(--panel-system-toggle-fg, rgb(0 0 0))'};
|
|
41
|
+
`;
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
type TopbarLogo = {
|
|
2
|
+
src?: string;
|
|
3
|
+
alt?: string;
|
|
4
|
+
} | null | undefined;
|
|
5
|
+
export declare const normalizeTopbarLogoSrcForComparison: (value: string | null | undefined) => string | null;
|
|
6
|
+
export declare const resolveVisibleTopbarSecondaryLogo: ({ primaryLogo, subtenantLogo, composerDataSecondaryLogo, manifestSecondaryLogo, hasSubtenant, }: {
|
|
7
|
+
primaryLogo?: TopbarLogo;
|
|
8
|
+
subtenantLogo?: TopbarLogo;
|
|
9
|
+
composerDataSecondaryLogo?: TopbarLogo;
|
|
10
|
+
manifestSecondaryLogo?: TopbarLogo;
|
|
11
|
+
hasSubtenant: boolean;
|
|
12
|
+
}) => TopbarLogo;
|
|
13
|
+
export {};
|
|
14
|
+
//# sourceMappingURL=topbarLogoPolicy.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"topbarLogoPolicy.d.ts","sourceRoot":"","sources":["../src/topbarLogoPolicy.ts"],"names":[],"mappings":"AAAA,KAAK,UAAU,GAAG;IAChB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,GAAG,CAAC,EAAE,MAAM,CAAC;CACd,GAAG,IAAI,GAAG,SAAS,CAAC;AAErB,eAAO,MAAM,mCAAmC,GAAI,OAAO,MAAM,GAAG,IAAI,GAAG,SAAS,kBA0BnF,CAAC;AAQF,eAAO,MAAM,iCAAiC,GAAI,iGAM/C;IACD,WAAW,CAAC,EAAE,UAAU,CAAC;IACzB,aAAa,CAAC,EAAE,UAAU,CAAC;IAC3B,yBAAyB,CAAC,EAAE,UAAU,CAAC;IACvC,qBAAqB,CAAC,EAAE,UAAU,CAAC;IACnC,YAAY,EAAE,OAAO,CAAC;CACvB,eAQA,CAAC"}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
export const normalizeTopbarLogoSrcForComparison = (value) => {
|
|
2
|
+
const trimmed = value?.trim();
|
|
3
|
+
if (!trimmed)
|
|
4
|
+
return null;
|
|
5
|
+
let src = trimmed;
|
|
6
|
+
try {
|
|
7
|
+
const parsed = new URL(trimmed, 'https://composer.local');
|
|
8
|
+
const proxiedSrc = parsed.pathname === '/api/assets/hdr'
|
|
9
|
+
? parsed.searchParams.get('src')
|
|
10
|
+
: null;
|
|
11
|
+
if (proxiedSrc) {
|
|
12
|
+
src = proxiedSrc;
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
catch {
|
|
16
|
+
src = trimmed;
|
|
17
|
+
}
|
|
18
|
+
try {
|
|
19
|
+
const absolute = /^[a-z][a-z0-9+.-]*:/i.test(src);
|
|
20
|
+
const parsed = new URL(src, 'https://composer.local');
|
|
21
|
+
return absolute
|
|
22
|
+
? `${parsed.protocol}//${parsed.host}${parsed.pathname}${parsed.search}`
|
|
23
|
+
: `${parsed.pathname}${parsed.search}`;
|
|
24
|
+
}
|
|
25
|
+
catch {
|
|
26
|
+
return src;
|
|
27
|
+
}
|
|
28
|
+
};
|
|
29
|
+
const isSameTopbarLogo = (left, right) => {
|
|
30
|
+
const leftSrc = normalizeTopbarLogoSrcForComparison(left?.src);
|
|
31
|
+
const rightSrc = normalizeTopbarLogoSrcForComparison(right?.src);
|
|
32
|
+
return Boolean(leftSrc && rightSrc && leftSrc === rightSrc);
|
|
33
|
+
};
|
|
34
|
+
export const resolveVisibleTopbarSecondaryLogo = ({ primaryLogo, subtenantLogo, composerDataSecondaryLogo, manifestSecondaryLogo, hasSubtenant, }) => {
|
|
35
|
+
const candidates = [
|
|
36
|
+
hasSubtenant ? subtenantLogo : undefined,
|
|
37
|
+
composerDataSecondaryLogo,
|
|
38
|
+
manifestSecondaryLogo,
|
|
39
|
+
];
|
|
40
|
+
return candidates.find((candidate) => Boolean(candidate?.src) && !isSameTopbarLogo(primaryLogo, candidate));
|
|
41
|
+
};
|