@burdenoff/microfe-ecoimpacthub 2026.704.4 → 2026.709.1
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/dev/main.d.ts +2 -0
- package/dist/dev/main.d.ts.map +1 -0
- package/dist/ecoimpacthub/EcoImpactHubRoot.d.ts +5 -0
- package/dist/ecoimpacthub/EcoImpactHubRoot.d.ts.map +1 -0
- package/dist/ecoimpacthub/EcoImpactHubRoutes.d.ts +4 -0
- package/dist/ecoimpacthub/EcoImpactHubRoutes.d.ts.map +1 -0
- package/dist/ecoimpacthub/EcoImpactHubRoutes.js +48 -40
- package/dist/ecoimpacthub/EcoImpactHubRoutes.js.map +1 -1
- package/dist/ecoimpacthub/components/DataTable.d.ts +28 -0
- package/dist/ecoimpacthub/components/DataTable.d.ts.map +1 -0
- package/dist/ecoimpacthub/components/EcoDiscussion.d.ts +18 -0
- package/dist/ecoimpacthub/components/EcoDiscussion.d.ts.map +1 -0
- package/dist/ecoimpacthub/components/EcoTags.d.ts +17 -0
- package/dist/ecoimpacthub/components/EcoTags.d.ts.map +1 -0
- package/dist/ecoimpacthub/components/EmptyState.d.ts +18 -0
- package/dist/ecoimpacthub/components/EmptyState.d.ts.map +1 -0
- package/dist/ecoimpacthub/components/EvidenceUpload.d.ts +14 -0
- package/dist/ecoimpacthub/components/EvidenceUpload.d.ts.map +1 -0
- package/dist/ecoimpacthub/components/FeatureFlagGate.d.ts +10 -0
- package/dist/ecoimpacthub/components/FeatureFlagGate.d.ts.map +1 -0
- package/dist/ecoimpacthub/components/FeatureFlagGate.js +8 -0
- package/dist/ecoimpacthub/components/FeatureFlagGate.js.map +1 -0
- package/dist/ecoimpacthub/components/FileLink.d.ts +15 -0
- package/dist/ecoimpacthub/components/FileLink.d.ts.map +1 -0
- package/dist/ecoimpacthub/components/FilterTabs.d.ts +18 -0
- package/dist/ecoimpacthub/components/FilterTabs.d.ts.map +1 -0
- package/dist/ecoimpacthub/components/MetricsCard.d.ts +23 -0
- package/dist/ecoimpacthub/components/MetricsCard.d.ts.map +1 -0
- package/dist/ecoimpacthub/components/MiniBar.d.ts +16 -0
- package/dist/ecoimpacthub/components/MiniBar.d.ts.map +1 -0
- package/dist/ecoimpacthub/components/PageLayout.d.ts +16 -0
- package/dist/ecoimpacthub/components/PageLayout.d.ts.map +1 -0
- package/dist/ecoimpacthub/components/Pagination.d.ts +22 -0
- package/dist/ecoimpacthub/components/Pagination.d.ts.map +1 -0
- package/dist/ecoimpacthub/components/StateViews.d.ts +24 -0
- package/dist/ecoimpacthub/components/StateViews.d.ts.map +1 -0
- package/dist/ecoimpacthub/components/StatusBadge.d.ts +9 -0
- package/dist/ecoimpacthub/components/StatusBadge.d.ts.map +1 -0
- package/dist/ecoimpacthub/components/Tabs.d.ts +17 -0
- package/dist/ecoimpacthub/components/Tabs.d.ts.map +1 -0
- package/dist/ecoimpacthub/components/index.d.ts +19 -0
- package/dist/ecoimpacthub/components/index.d.ts.map +1 -0
- package/dist/ecoimpacthub/context/EcoImpactHubContext.d.ts +16 -0
- package/dist/ecoimpacthub/context/EcoImpactHubContext.d.ts.map +1 -0
- package/dist/ecoimpacthub/context/index.d.ts +6 -0
- package/dist/ecoimpacthub/context/index.d.ts.map +1 -0
- package/dist/ecoimpacthub/hooks/index.d.ts +10 -0
- package/dist/ecoimpacthub/hooks/index.d.ts.map +1 -0
- package/dist/ecoimpacthub/hooks/useCursorPager.d.ts +33 -0
- package/dist/ecoimpacthub/hooks/useCursorPager.d.ts.map +1 -0
- package/dist/ecoimpacthub/hooks/useEcoComments.d.ts +36 -0
- package/dist/ecoimpacthub/hooks/useEcoComments.d.ts.map +1 -0
- package/dist/ecoimpacthub/hooks/useEcoFiles.d.ts +47 -0
- package/dist/ecoimpacthub/hooks/useEcoFiles.d.ts.map +1 -0
- package/dist/ecoimpacthub/hooks/useEcoImpactHubApi.d.ts +104 -0
- package/dist/ecoimpacthub/hooks/useEcoImpactHubApi.d.ts.map +1 -0
- package/dist/ecoimpacthub/hooks/useEcoTags.d.ts +44 -0
- package/dist/ecoimpacthub/hooks/useEcoTags.d.ts.map +1 -0
- package/dist/ecoimpacthub/index.d.ts +10 -0
- package/dist/ecoimpacthub/index.d.ts.map +1 -0
- package/dist/ecoimpacthub/index.js +2 -0
- package/dist/ecoimpacthub/pages/DashboardPage.d.ts +10 -0
- package/dist/ecoimpacthub/pages/DashboardPage.d.ts.map +1 -0
- package/dist/ecoimpacthub/pages/DashboardPage.js +345 -189
- package/dist/ecoimpacthub/pages/DashboardPage.js.map +1 -1
- package/dist/ecoimpacthub/pages/_shared/ConservationBadge.d.ts +9 -0
- package/dist/ecoimpacthub/pages/_shared/ConservationBadge.d.ts.map +1 -0
- package/dist/ecoimpacthub/pages/_shared/ConservationBadge.js +58 -0
- package/dist/ecoimpacthub/pages/_shared/ConservationBadge.js.map +1 -0
- package/dist/ecoimpacthub/pages/_shared/EvidenceThumb.d.ts +23 -0
- package/dist/ecoimpacthub/pages/_shared/EvidenceThumb.d.ts.map +1 -0
- package/dist/ecoimpacthub/pages/_shared/EvidenceThumb.js +70 -0
- package/dist/ecoimpacthub/pages/_shared/EvidenceThumb.js.map +1 -0
- package/dist/ecoimpacthub/pages/_shared/MethodBadge.d.ts +9 -0
- package/dist/ecoimpacthub/pages/_shared/MethodBadge.d.ts.map +1 -0
- package/dist/ecoimpacthub/pages/_shared/MethodBadge.js +51 -0
- package/dist/ecoimpacthub/pages/_shared/MethodBadge.js.map +1 -0
- package/dist/ecoimpacthub/pages/_shared/TaxonChip.d.ts +9 -0
- package/dist/ecoimpacthub/pages/_shared/TaxonChip.d.ts.map +1 -0
- package/dist/ecoimpacthub/pages/_shared/TaxonChip.js +29 -0
- package/dist/ecoimpacthub/pages/_shared/TaxonChip.js.map +1 -0
- package/dist/ecoimpacthub/pages/badges.d.ts +27 -0
- package/dist/ecoimpacthub/pages/badges.d.ts.map +1 -0
- package/dist/ecoimpacthub/pages/badges.js +71 -0
- package/dist/ecoimpacthub/pages/badges.js.map +1 -0
- package/dist/ecoimpacthub/pages/carbon/CarbonPage.d.ts +15 -0
- package/dist/ecoimpacthub/pages/carbon/CarbonPage.d.ts.map +1 -0
- package/dist/ecoimpacthub/pages/carbon/CarbonPage.js +337 -300
- package/dist/ecoimpacthub/pages/carbon/CarbonPage.js.map +1 -1
- package/dist/ecoimpacthub/pages/carbonVisuals.d.ts +47 -0
- package/dist/ecoimpacthub/pages/carbonVisuals.d.ts.map +1 -0
- package/dist/ecoimpacthub/pages/carbonVisuals.js +89 -0
- package/dist/ecoimpacthub/pages/carbonVisuals.js.map +1 -0
- package/dist/ecoimpacthub/pages/habitat/HabitatProjectDetailPage.d.ts +12 -0
- package/dist/ecoimpacthub/pages/habitat/HabitatProjectDetailPage.d.ts.map +1 -0
- package/dist/ecoimpacthub/pages/habitat/HabitatProjectDetailPage.js +252 -218
- package/dist/ecoimpacthub/pages/habitat/HabitatProjectDetailPage.js.map +1 -1
- package/dist/ecoimpacthub/pages/habitat/HabitatProjectsPage.d.ts +8 -0
- package/dist/ecoimpacthub/pages/habitat/HabitatProjectsPage.d.ts.map +1 -0
- package/dist/ecoimpacthub/pages/habitat/HabitatProjectsPage.js +15 -12
- package/dist/ecoimpacthub/pages/habitat/HabitatProjectsPage.js.map +1 -1
- package/dist/ecoimpacthub/pages/habitat/LifecycleProgress.d.ts +6 -0
- package/dist/ecoimpacthub/pages/habitat/LifecycleProgress.d.ts.map +1 -0
- package/dist/ecoimpacthub/pages/habitat/LifecycleProgress.js +168 -0
- package/dist/ecoimpacthub/pages/habitat/LifecycleProgress.js.map +1 -0
- package/dist/ecoimpacthub/pages/monitoring/MonitoringPage.d.ts +12 -0
- package/dist/ecoimpacthub/pages/monitoring/MonitoringPage.d.ts.map +1 -0
- package/dist/ecoimpacthub/pages/monitoring/MonitoringPage.js +30 -17
- package/dist/ecoimpacthub/pages/monitoring/MonitoringPage.js.map +1 -1
- package/dist/ecoimpacthub/pages/observations/ObservationsPage.d.ts +11 -0
- package/dist/ecoimpacthub/pages/observations/ObservationsPage.d.ts.map +1 -0
- package/dist/ecoimpacthub/pages/observations/ObservationsPage.js +236 -219
- package/dist/ecoimpacthub/pages/observations/ObservationsPage.js.map +1 -1
- package/dist/ecoimpacthub/pages/reports/ReportDetailPage.d.ts +11 -0
- package/dist/ecoimpacthub/pages/reports/ReportDetailPage.d.ts.map +1 -0
- package/dist/ecoimpacthub/pages/reports/ReportDetailPage.js +248 -212
- package/dist/ecoimpacthub/pages/reports/ReportDetailPage.js.map +1 -1
- package/dist/ecoimpacthub/pages/reports/ReportsPage.d.ts +8 -0
- package/dist/ecoimpacthub/pages/reports/ReportsPage.d.ts.map +1 -0
- package/dist/ecoimpacthub/pages/reports/ReportsPage.js +119 -118
- package/dist/ecoimpacthub/pages/reports/ReportsPage.js.map +1 -1
- package/dist/ecoimpacthub/pages/sites/SiteDetailPage.d.ts +10 -0
- package/dist/ecoimpacthub/pages/sites/SiteDetailPage.d.ts.map +1 -0
- package/dist/ecoimpacthub/pages/sites/SiteDetailPage.js +498 -370
- package/dist/ecoimpacthub/pages/sites/SiteDetailPage.js.map +1 -1
- package/dist/ecoimpacthub/pages/sites/SitesPage.d.ts +8 -0
- package/dist/ecoimpacthub/pages/sites/SitesPage.d.ts.map +1 -0
- package/dist/ecoimpacthub/pages/sites/SitesPage.js +109 -99
- package/dist/ecoimpacthub/pages/sites/SitesPage.js.map +1 -1
- package/dist/ecoimpacthub/pages/sites/siteTypeVisuals.d.ts +22 -0
- package/dist/ecoimpacthub/pages/sites/siteTypeVisuals.d.ts.map +1 -0
- package/dist/ecoimpacthub/pages/sites/siteTypeVisuals.js +64 -0
- package/dist/ecoimpacthub/pages/sites/siteTypeVisuals.js.map +1 -0
- package/dist/ecoimpacthub/pages/species/SpeciesDetailPage.d.ts +9 -0
- package/dist/ecoimpacthub/pages/species/SpeciesDetailPage.d.ts.map +1 -0
- package/dist/ecoimpacthub/pages/species/SpeciesDetailPage.js +275 -259
- package/dist/ecoimpacthub/pages/species/SpeciesDetailPage.js.map +1 -1
- package/dist/ecoimpacthub/pages/species/SpeciesPage.d.ts +8 -0
- package/dist/ecoimpacthub/pages/species/SpeciesPage.d.ts.map +1 -0
- package/dist/ecoimpacthub/pages/species/SpeciesPage.js +235 -177
- package/dist/ecoimpacthub/pages/species/SpeciesPage.js.map +1 -1
- package/dist/ecoimpacthub/services/createSandboxAssistantTransport.d.ts +33 -0
- package/dist/ecoimpacthub/services/createSandboxAssistantTransport.d.ts.map +1 -0
- package/dist/ecoimpacthub/services/createSandboxAssistantTransport.js +42 -0
- package/dist/ecoimpacthub/services/createSandboxAssistantTransport.js.map +1 -0
- package/dist/ecoimpacthub/services/index.d.ts +6 -0
- package/dist/ecoimpacthub/services/index.d.ts.map +1 -0
- package/dist/ecoimpacthub/services/index.js +1 -0
- package/dist/ecoimpacthub/types/index.d.ts +417 -0
- package/dist/ecoimpacthub/types/index.d.ts.map +1 -0
- package/dist/ecoimpacthub/utils/cn.d.ts +4 -0
- package/dist/ecoimpacthub/utils/cn.d.ts.map +1 -0
- package/dist/ecoimpacthub/utils/formatters.d.ts +26 -0
- package/dist/ecoimpacthub/utils/formatters.d.ts.map +1 -0
- package/dist/ecoimpacthub/utils/i18n.d.ts +6 -0
- package/dist/ecoimpacthub/utils/i18n.d.ts.map +1 -0
- package/dist/ecoimpacthub/utils/index.d.ts +9 -0
- package/dist/ecoimpacthub/utils/index.d.ts.map +1 -0
- package/dist/ecoimpacthub/utils/navigation.d.ts +14 -0
- package/dist/ecoimpacthub/utils/navigation.d.ts.map +1 -0
- package/dist/generated/global-operations.d.ts +2 -0
- package/dist/generated/global-operations.d.ts.map +1 -0
- package/dist/generated/global-types.d.ts +18199 -0
- package/dist/generated/global-types.d.ts.map +1 -0
- package/dist/generated/wspace-operations.d.ts +2 -0
- package/dist/generated/wspace-operations.d.ts.map +1 -0
- package/dist/generated/wspace-types.d.ts +43046 -0
- package/dist/generated/wspace-types.d.ts.map +1 -0
- package/dist/index.d.ts +2 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +2 -1
- package/dist/node_modules/recharts/es6/cartesian/CartesianGrid.js +305 -0
- package/dist/node_modules/recharts/es6/cartesian/CartesianGrid.js.map +1 -0
- package/dist/node_modules/recharts/es6/context/chartLayoutContext.js +44 -33
- package/dist/node_modules/recharts/es6/context/chartLayoutContext.js.map +1 -1
- package/dist/node_modules/recharts/es6/util/ChartUtils.js +31 -23
- package/dist/node_modules/recharts/es6/util/ChartUtils.js.map +1 -1
- package/package.json +5 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"EcoImpactHubContext.d.ts","sourceRoot":"","sources":["../../../src/ecoimpacthub/context/EcoImpactHubContext.tsx"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,EAAE,EAAE,iBAAiB,EAAE,MAAM,OAAO,CAAC;AAGnD,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,UAAU,CAAC;AAGtD,UAAU,wBAAyB,SAAQ,IAAI,CAC7C,qBAAqB,EACrB,kBAAkB,GAAG,qBAAqB,GAAG,UAAU,CACxD;IACC,YAAY,EAAE,OAAO,CAAC;IACtB,qEAAqE;IACrE,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IAClC,+CAA+C;IAC/C,UAAU,EAAE,CAAC,YAAY,EAAE,MAAM,KAAK,IAAI,CAAC;IAC3C,6CAA6C;IAC7C,OAAO,EAAE,CAAC,YAAY,EAAE,MAAM,KAAK,MAAM,CAAC;CAC3C;AAID,wBAAgB,eAAe,IAAI,wBAAwB,CAM1D;AAqHD,eAAO,MAAM,oBAAoB,EAAE,EAAE,CAAC,iBAAiB,CAAC,qBAAqB,CAAC,CAmB7E,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/ecoimpacthub/context/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,oBAAoB,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Hooks index
|
|
3
|
+
* @module ecoimpacthub/hooks
|
|
4
|
+
*/
|
|
5
|
+
export * from './useEcoImpactHubApi';
|
|
6
|
+
export * from './useCursorPager';
|
|
7
|
+
export * from './useEcoFiles';
|
|
8
|
+
export * from './useEcoComments';
|
|
9
|
+
export * from './useEcoTags';
|
|
10
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/ecoimpacthub/hooks/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,cAAc,sBAAsB,CAAC;AACrC,cAAc,kBAAkB,CAAC;AACjC,cAAc,eAAe,CAAC;AAC9B,cAAc,kBAAkB,CAAC;AACjC,cAAc,cAAc,CAAC"}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* useCursorPager — forward/back cursor pagination for Eco* list connections.
|
|
3
|
+
* @module ecoimpacthub/hooks
|
|
4
|
+
*
|
|
5
|
+
* The svc paginates by cursor only (`PaginationInput.offset` is a no-op — the
|
|
6
|
+
* resolver never sets Prisma `skip` from it). So a page must send
|
|
7
|
+
* `pagination.cursor = the previous page's pageInfo.cursor` to advance. This
|
|
8
|
+
* hook keeps a stack of the cursors that opened each visited page so Prev/Next
|
|
9
|
+
* are exact, and exposes a 0-indexed `page` for display.
|
|
10
|
+
*/
|
|
11
|
+
export interface CursorPager {
|
|
12
|
+
/** 0-indexed page number for display. */
|
|
13
|
+
page: number;
|
|
14
|
+
/**
|
|
15
|
+
* Cursor that opens the current page — `undefined` on the first page so it is
|
|
16
|
+
* OMITTED from the GraphQL variables (the svc rejects an explicit `cursor: null`;
|
|
17
|
+
* a first page must send no cursor at all, per cursor-pagination convention).
|
|
18
|
+
*/
|
|
19
|
+
cursor: string | undefined;
|
|
20
|
+
/** Advance to the next page using the current page's end cursor. No-op if null. */
|
|
21
|
+
next: (endCursor: string | null | undefined) => void;
|
|
22
|
+
/** Go back one page. No-op on the first page. */
|
|
23
|
+
prev: () => void;
|
|
24
|
+
/** Reset to the first page (call when filters change). */
|
|
25
|
+
reset: () => void;
|
|
26
|
+
/**
|
|
27
|
+
* Adapter for `<Pagination onPageChange>` — compares the requested page to the
|
|
28
|
+
* current one and calls next()/prev() accordingly.
|
|
29
|
+
*/
|
|
30
|
+
onPageChange: (targetPage: number, endCursor: string | null | undefined) => void;
|
|
31
|
+
}
|
|
32
|
+
export declare function useCursorPager(): CursorPager;
|
|
33
|
+
//# sourceMappingURL=useCursorPager.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useCursorPager.d.ts","sourceRoot":"","sources":["../../../src/ecoimpacthub/hooks/useCursorPager.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAIH,MAAM,WAAW,WAAW;IAC1B,yCAAyC;IACzC,IAAI,EAAE,MAAM,CAAC;IACb;;;;OAIG;IACH,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC;IAC3B,mFAAmF;IACnF,IAAI,EAAE,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,KAAK,IAAI,CAAC;IACrD,iDAAiD;IACjD,IAAI,EAAE,MAAM,IAAI,CAAC;IACjB,0DAA0D;IAC1D,KAAK,EAAE,MAAM,IAAI,CAAC;IAClB;;;OAGG;IACH,YAAY,EAAE,CAAC,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,KAAK,IAAI,CAAC;CAClF;AAED,wBAAgB,cAAc,IAAI,WAAW,CA4B5C"}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* EcoImpactHub — wspace-conversations-svc EntityComment REUSE hooks (Integration B).
|
|
3
|
+
* @module ecoimpacthub/hooks/useEcoComments
|
|
4
|
+
*
|
|
5
|
+
* Adds a discussion surface to eco entities WITHOUT any eco-svc change by
|
|
6
|
+
* reusing the generic EntityComment API composed into the WORKSPACE supergraph.
|
|
7
|
+
* Comments attach to any entity by `(entityType, entityId)`:
|
|
8
|
+
* - `getEntityComments(input): EntityCommentConnection!`
|
|
9
|
+
* - `createEntityComment(input): EntityComment!`
|
|
10
|
+
*
|
|
11
|
+
* Transport reuses `wspaceFetch` from `useEcoFiles` (workspace gateway +
|
|
12
|
+
* workspace token). Lives in a separate file; `useEcoImpactHubApi.ts` is
|
|
13
|
+
* untouched.
|
|
14
|
+
*/
|
|
15
|
+
export interface EcoComment {
|
|
16
|
+
id: string;
|
|
17
|
+
authorId: string;
|
|
18
|
+
authorType: string;
|
|
19
|
+
content: {
|
|
20
|
+
text: string | null;
|
|
21
|
+
markdown: string | null;
|
|
22
|
+
};
|
|
23
|
+
createdAt: string;
|
|
24
|
+
edited: boolean;
|
|
25
|
+
parentCommentId: string | null;
|
|
26
|
+
replyCount: number;
|
|
27
|
+
}
|
|
28
|
+
/** Top-level (root) comments for an eco entity, oldest first. */
|
|
29
|
+
export declare const useEcoComments: (entityType: string, entityId: string | undefined) => import('@tanstack/react-query').UseQueryResult<{
|
|
30
|
+
items: EcoComment[];
|
|
31
|
+
total: number;
|
|
32
|
+
}, Error>;
|
|
33
|
+
export declare const useEcoCreateComment: (entityType: string, entityId: string) => import('@tanstack/react-query').UseMutationResult<{
|
|
34
|
+
id: string;
|
|
35
|
+
}, Error, string, unknown>;
|
|
36
|
+
//# sourceMappingURL=useEcoComments.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useEcoComments.d.ts","sourceRoot":"","sources":["../../../src/ecoimpacthub/hooks/useEcoComments.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAOH,MAAM,WAAW,UAAU;IACzB,EAAE,EAAE,MAAM,CAAC;IACX,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE;QACP,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;QACpB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;KACzB,CAAC;IACF,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,OAAO,CAAC;IAChB,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,UAAU,EAAE,MAAM,CAAC;CACpB;AAKD,iEAAiE;AACjE,eAAO,MAAM,cAAc,GAAI,YAAY,MAAM,EAAE,UAAU,MAAM,GAAG,SAAS;;;SAwC9E,CAAC;AAEF,eAAO,MAAM,mBAAmB,GAAI,YAAY,MAAM,EAAE,UAAU,MAAM;QAKN,MAAM;0BAmBvE,CAAC"}
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* EcoImpactHub — wspace-files-svc REUSE hooks (Integration A).
|
|
3
|
+
* @module ecoimpacthub/hooks/useEcoFiles
|
|
4
|
+
*
|
|
5
|
+
* Reuses the platform file store (`wspace-files-svc`) WITHOUT any eco-svc
|
|
6
|
+
* change: the eco schema already exposes `EcoObservation.evidenceFileId` /
|
|
7
|
+
* `EcoReport.fileId`; this module lets the UI actually produce a `fileId` via
|
|
8
|
+
* the canonical 3-step upload flow composed into the WORKSPACE supergraph:
|
|
9
|
+
* 1. `initiateUpload(input)` → `{ uploadUrl, session { id } }`
|
|
10
|
+
* 2. HTTP `PUT` the bytes to the returned signed `uploadUrl`
|
|
11
|
+
* 3. `completeUpload(input: { sessionId })` → `{ fileId }`
|
|
12
|
+
* plus `getFile(id)` to resolve an existing evidence/report file's name + URL.
|
|
13
|
+
*
|
|
14
|
+
* Transport mirrors `useEcoImpactHubApi` exactly — `graphqlFetch({ gateway:
|
|
15
|
+
* 'workspace', workspaceToken: true })` — so no ApolloProvider is required.
|
|
16
|
+
* These hooks live in a SEPARATE file by design; `useEcoImpactHubApi.ts` is
|
|
17
|
+
* left untouched.
|
|
18
|
+
*/
|
|
19
|
+
/** Execute a workspace-gateway GraphQL operation with the workspace token. */
|
|
20
|
+
export declare const wspaceFetch: <TData>(query: string, variables: Record<string, unknown>, baseUrl?: string) => Promise<TData>;
|
|
21
|
+
export interface UploadedEcoFile {
|
|
22
|
+
fileId: string;
|
|
23
|
+
fileName: string;
|
|
24
|
+
}
|
|
25
|
+
export interface UseEcoFileUploadResult {
|
|
26
|
+
upload: (file: File) => Promise<UploadedEcoFile>;
|
|
27
|
+
isUploading: boolean;
|
|
28
|
+
/** 0–100 byte-progress of the signed-URL PUT. */
|
|
29
|
+
progress: number;
|
|
30
|
+
error: string | null;
|
|
31
|
+
reset: () => void;
|
|
32
|
+
}
|
|
33
|
+
/**
|
|
34
|
+
* Imperative upload hook: `await upload(file)` runs the platform 3-step flow and
|
|
35
|
+
* resolves to `{ fileId, fileName }`. `fileId` is what the eco mutations accept
|
|
36
|
+
* (`ecoRecordObservation.evidenceFileId`, `ecoPublishReport.fileId`).
|
|
37
|
+
*/
|
|
38
|
+
export declare const useEcoFileUpload: () => UseEcoFileUploadResult;
|
|
39
|
+
export interface EcoFileMeta {
|
|
40
|
+
id: string;
|
|
41
|
+
name: string;
|
|
42
|
+
downloadUrl: string | null;
|
|
43
|
+
mimeType: string;
|
|
44
|
+
size: string;
|
|
45
|
+
}
|
|
46
|
+
export declare const useEcoFile: (id: string | null | undefined) => import('@tanstack/react-query').UseQueryResult<EcoFileMeta | null, Error>;
|
|
47
|
+
//# sourceMappingURL=useEcoFiles.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useEcoFiles.d.ts","sourceRoot":"","sources":["../../../src/ecoimpacthub/hooks/useEcoFiles.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AA8BH,8EAA8E;AAC9E,eAAO,MAAM,WAAW,GAAU,KAAK,EACrC,OAAO,MAAM,EACb,WAAW,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAClC,UAAU,MAAM,KACf,OAAO,CAAC,KAAK,CAmBf,CAAC;AAMF,MAAM,WAAW,eAAe;IAC9B,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;CAClB;AA+BD,MAAM,WAAW,sBAAsB;IACrC,MAAM,EAAE,CAAC,IAAI,EAAE,IAAI,KAAK,OAAO,CAAC,eAAe,CAAC,CAAC;IACjD,WAAW,EAAE,OAAO,CAAC;IACrB,iDAAiD;IACjD,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,KAAK,EAAE,MAAM,IAAI,CAAC;CACnB;AAED;;;;GAIG;AACH,eAAO,MAAM,gBAAgB,QAAO,sBAoFnC,CAAC;AAMF,MAAM,WAAW,WAAW;IAC1B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;CACd;AAED,eAAO,MAAM,UAAU,GAAI,IAAI,MAAM,GAAG,IAAI,GAAG,SAAS,8EAsBvD,CAAC"}
|
|
@@ -0,0 +1,104 @@
|
|
|
1
|
+
import { EcoConnection, EcoSite, EcoSiteStatus, EcoSiteType, EcoSensor, EcoSensorKind, EcoSensorStatus, EcoMeasurement, EcoAlertThreshold, EcoSpecies, EcoTaxonGroup, EcoConservationStatus, EcoObservation, EcoHabitatProject, EcoHabitatProjectStatus, EcoRestorationActivity, EcoEmissionFactor, EcoEmissionScope, EcoCarbonEntry, EcoCarbonEntryStatus, EcoReductionTarget, EcoReductionTargetStatus, EcoReport, EcoReportStatus, EcoReportLineItem, EcoCreateSiteInput, EcoUpdateSiteInput, EcoCreateSensorInput, EcoRecordMeasurementInput, EcoCreateThresholdInput, EcoCreateSpeciesInput, EcoUpdateSpeciesInput, EcoRecordObservationInput, EcoCreateHabitatProjectInput, EcoLogRestorationActivityInput, EcoCreateEmissionFactorInput, EcoRecordCarbonEntryInput, EcoCreateReductionTargetInput, EcoCreateReportInput, EcoAddReportLineItemInput, PaginationInput } from '../types';
|
|
2
|
+
|
|
3
|
+
export interface SiteFilters {
|
|
4
|
+
status?: EcoSiteStatus;
|
|
5
|
+
type?: EcoSiteType;
|
|
6
|
+
pagination?: PaginationInput;
|
|
7
|
+
}
|
|
8
|
+
export declare const useEcoSites: (filters?: SiteFilters) => import('@tanstack/react-query').UseQueryResult<EcoConnection<EcoSite>, Error>;
|
|
9
|
+
export declare const useEcoSite: (id: string | undefined) => import('@tanstack/react-query').UseQueryResult<EcoSite | null, Error>;
|
|
10
|
+
export declare const useEcoCreateSite: () => import('@tanstack/react-query').UseMutationResult<EcoSite, Error, EcoCreateSiteInput, unknown>;
|
|
11
|
+
export declare const useEcoUpdateSite: () => import('@tanstack/react-query').UseMutationResult<EcoSite, Error, {
|
|
12
|
+
id: string;
|
|
13
|
+
input: EcoUpdateSiteInput;
|
|
14
|
+
}, unknown>;
|
|
15
|
+
export declare const useEcoArchiveSite: () => import('@tanstack/react-query').UseMutationResult<boolean, Error, string, unknown>;
|
|
16
|
+
export interface SensorFilters {
|
|
17
|
+
siteId?: string;
|
|
18
|
+
kind?: EcoSensorKind;
|
|
19
|
+
status?: EcoSensorStatus;
|
|
20
|
+
}
|
|
21
|
+
export declare const useEcoSensors: (filters?: SensorFilters) => import('@tanstack/react-query').UseQueryResult<EcoSensor[], Error>;
|
|
22
|
+
export declare const useEcoCreateSensor: () => import('@tanstack/react-query').UseMutationResult<EcoSensor, Error, EcoCreateSensorInput, unknown>;
|
|
23
|
+
export declare const useEcoSetSensorStatus: () => import('@tanstack/react-query').UseMutationResult<EcoSensor, Error, {
|
|
24
|
+
id: string;
|
|
25
|
+
status: EcoSensorStatus;
|
|
26
|
+
}, unknown>;
|
|
27
|
+
export interface MeasurementFilters {
|
|
28
|
+
siteId?: string;
|
|
29
|
+
sensorId?: string;
|
|
30
|
+
parameter?: string;
|
|
31
|
+
breachesOnly?: boolean;
|
|
32
|
+
pagination?: PaginationInput;
|
|
33
|
+
}
|
|
34
|
+
export declare const useEcoMeasurements: (filters?: MeasurementFilters) => import('@tanstack/react-query').UseQueryResult<EcoConnection<EcoMeasurement>, Error>;
|
|
35
|
+
export declare const useEcoRecordMeasurement: () => import('@tanstack/react-query').UseMutationResult<EcoMeasurement, Error, EcoRecordMeasurementInput, unknown>;
|
|
36
|
+
export declare const useEcoThresholds: (siteId?: string) => import('@tanstack/react-query').UseQueryResult<EcoAlertThreshold[], Error>;
|
|
37
|
+
export declare const useEcoCreateThreshold: () => import('@tanstack/react-query').UseMutationResult<EcoAlertThreshold, Error, EcoCreateThresholdInput, unknown>;
|
|
38
|
+
export declare const useEcoSetThresholdActive: () => import('@tanstack/react-query').UseMutationResult<EcoAlertThreshold, Error, {
|
|
39
|
+
id: string;
|
|
40
|
+
isActive: boolean;
|
|
41
|
+
}, unknown>;
|
|
42
|
+
export interface SpeciesFilters {
|
|
43
|
+
taxonGroup?: EcoTaxonGroup;
|
|
44
|
+
conservationStatus?: EcoConservationStatus;
|
|
45
|
+
priorityOnly?: boolean;
|
|
46
|
+
pagination?: PaginationInput;
|
|
47
|
+
}
|
|
48
|
+
export declare const useEcoSpecies: (filters?: SpeciesFilters) => import('@tanstack/react-query').UseQueryResult<EcoConnection<EcoSpecies>, Error>;
|
|
49
|
+
export declare const useEcoSpeciesDetail: (id: string | undefined) => import('@tanstack/react-query').UseQueryResult<EcoSpecies | null, Error>;
|
|
50
|
+
export declare const useEcoCreateSpecies: () => import('@tanstack/react-query').UseMutationResult<EcoSpecies, Error, EcoCreateSpeciesInput, unknown>;
|
|
51
|
+
export declare const useEcoUpdateSpecies: () => import('@tanstack/react-query').UseMutationResult<EcoSpecies, Error, {
|
|
52
|
+
id: string;
|
|
53
|
+
input: EcoUpdateSpeciesInput;
|
|
54
|
+
}, unknown>;
|
|
55
|
+
export declare const useEcoArchiveSpecies: () => import('@tanstack/react-query').UseMutationResult<boolean, Error, string, unknown>;
|
|
56
|
+
export interface ObservationFilters {
|
|
57
|
+
speciesId?: string;
|
|
58
|
+
siteId?: string;
|
|
59
|
+
pagination?: PaginationInput;
|
|
60
|
+
}
|
|
61
|
+
export declare const useEcoObservations: (filters?: ObservationFilters) => import('@tanstack/react-query').UseQueryResult<EcoConnection<EcoObservation>, Error>;
|
|
62
|
+
export declare const useEcoRecordObservation: () => import('@tanstack/react-query').UseMutationResult<EcoObservation, Error, EcoRecordObservationInput, unknown>;
|
|
63
|
+
export declare const useEcoHabitatProjects: (status?: EcoHabitatProjectStatus) => import('@tanstack/react-query').UseQueryResult<EcoHabitatProject[], Error>;
|
|
64
|
+
export declare const useEcoHabitatProject: (id: string | undefined) => import('@tanstack/react-query').UseQueryResult<EcoHabitatProject | null, Error>;
|
|
65
|
+
export declare const useEcoCreateHabitatProject: () => import('@tanstack/react-query').UseMutationResult<EcoHabitatProject, Error, EcoCreateHabitatProjectInput, unknown>;
|
|
66
|
+
export declare const useEcoTransitionHabitatProject: () => import('@tanstack/react-query').UseMutationResult<EcoHabitatProject, Error, {
|
|
67
|
+
id: string;
|
|
68
|
+
status: EcoHabitatProjectStatus;
|
|
69
|
+
}, unknown>;
|
|
70
|
+
export declare const useEcoLogRestorationActivity: () => import('@tanstack/react-query').UseMutationResult<EcoRestorationActivity, Error, EcoLogRestorationActivityInput, unknown>;
|
|
71
|
+
export declare const useEcoEmissionFactors: (scope?: EcoEmissionScope, activeOnly?: boolean) => import('@tanstack/react-query').UseQueryResult<EcoEmissionFactor[], Error>;
|
|
72
|
+
export declare const useEcoCreateEmissionFactor: () => import('@tanstack/react-query').UseMutationResult<EcoEmissionFactor, Error, EcoCreateEmissionFactorInput, unknown>;
|
|
73
|
+
export interface CarbonEntryFilters {
|
|
74
|
+
scope?: EcoEmissionScope;
|
|
75
|
+
siteId?: string;
|
|
76
|
+
status?: EcoCarbonEntryStatus;
|
|
77
|
+
pagination?: PaginationInput;
|
|
78
|
+
}
|
|
79
|
+
export declare const useEcoCarbonEntries: (filters?: CarbonEntryFilters) => import('@tanstack/react-query').UseQueryResult<EcoConnection<EcoCarbonEntry>, Error>;
|
|
80
|
+
/** Total CO2e by scope + grand total, in one aliased query. */
|
|
81
|
+
export interface EcoCarbonTotals {
|
|
82
|
+
total: number;
|
|
83
|
+
scope1: number;
|
|
84
|
+
scope2: number;
|
|
85
|
+
scope3: number;
|
|
86
|
+
}
|
|
87
|
+
export declare const useEcoCarbonTotals: (siteId?: string) => import('@tanstack/react-query').UseQueryResult<EcoCarbonTotals, Error>;
|
|
88
|
+
export declare const useEcoRecordCarbonEntry: () => import('@tanstack/react-query').UseMutationResult<EcoCarbonEntry, Error, EcoRecordCarbonEntryInput, unknown>;
|
|
89
|
+
export declare const useEcoVerifyCarbonEntry: () => import('@tanstack/react-query').UseMutationResult<EcoCarbonEntry, Error, string, unknown>;
|
|
90
|
+
export declare const useEcoReductionTargets: (status?: EcoReductionTargetStatus) => import('@tanstack/react-query').UseQueryResult<EcoReductionTarget[], Error>;
|
|
91
|
+
export declare const useEcoCreateReductionTarget: () => import('@tanstack/react-query').UseMutationResult<EcoReductionTarget, Error, EcoCreateReductionTargetInput, unknown>;
|
|
92
|
+
export declare const useEcoSetReductionTargetStatus: () => import('@tanstack/react-query').UseMutationResult<EcoReductionTarget, Error, {
|
|
93
|
+
id: string;
|
|
94
|
+
status: EcoReductionTargetStatus;
|
|
95
|
+
}, unknown>;
|
|
96
|
+
export declare const useEcoReports: (status?: EcoReportStatus, pagination?: PaginationInput) => import('@tanstack/react-query').UseQueryResult<EcoConnection<EcoReport>, Error>;
|
|
97
|
+
export declare const useEcoReport: (id: string | undefined) => import('@tanstack/react-query').UseQueryResult<EcoReport | null, Error>;
|
|
98
|
+
export declare const useEcoCreateReport: () => import('@tanstack/react-query').UseMutationResult<EcoReport, Error, EcoCreateReportInput, unknown>;
|
|
99
|
+
export declare const useEcoAddReportLineItem: () => import('@tanstack/react-query').UseMutationResult<EcoReportLineItem, Error, EcoAddReportLineItemInput, unknown>;
|
|
100
|
+
export declare const useEcoPublishReport: () => import('@tanstack/react-query').UseMutationResult<EcoReport, Error, {
|
|
101
|
+
id: string;
|
|
102
|
+
fileId?: string | null;
|
|
103
|
+
}, unknown>;
|
|
104
|
+
//# sourceMappingURL=useEcoImpactHubApi.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useEcoImpactHubApi.d.ts","sourceRoot":"","sources":["../../../src/ecoimpacthub/hooks/useEcoImpactHubApi.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* EcoImpactHub — wspace-tags-svc UniversalTag REUSE hooks (Integration C).
|
|
3
|
+
* @module ecoimpacthub/hooks/useEcoTags
|
|
4
|
+
*
|
|
5
|
+
* The eco svc does NOT expose a tags field, so we drive the platform tag
|
|
6
|
+
* assignment store directly (approach (b) in the reuse audit) — no eco-svc
|
|
7
|
+
* change. All operations are composed into the WORKSPACE supergraph:
|
|
8
|
+
* - `getEntityTags(entityType, entityId)` → current assignments (display)
|
|
9
|
+
* - `searchTags(query)` → pick an existing tag
|
|
10
|
+
* - `createTag(input)` → create a new tag (needs a vocabulary)
|
|
11
|
+
* - `assignTag(input)` → link tag ↔ entity
|
|
12
|
+
* - `removeTagAssignment(id)` → unlink
|
|
13
|
+
*
|
|
14
|
+
* `createTag` requires a `vocabularyId`; we resolve a stable, workspace-scoped
|
|
15
|
+
* "ecoimpacthub" vocabulary (`getVocabularyByKey`, creating it on first use).
|
|
16
|
+
*
|
|
17
|
+
* Transport reuses `wspaceFetch` from `useEcoFiles`. Lives in a separate file;
|
|
18
|
+
* `useEcoImpactHubApi.ts` is untouched.
|
|
19
|
+
*/
|
|
20
|
+
export interface EcoTag {
|
|
21
|
+
id: string;
|
|
22
|
+
label: string;
|
|
23
|
+
color: string | null;
|
|
24
|
+
key: string;
|
|
25
|
+
}
|
|
26
|
+
export interface EcoTagAssignment {
|
|
27
|
+
id: string;
|
|
28
|
+
tag: EcoTag;
|
|
29
|
+
}
|
|
30
|
+
/** Current tag assignments for an eco entity. */
|
|
31
|
+
export declare const useEcoEntityTags: (entityType: string, entityId: string | undefined) => import('@tanstack/react-query').UseQueryResult<EcoTagAssignment[], Error>;
|
|
32
|
+
/** Search existing tags (enabled only for a non-empty query). */
|
|
33
|
+
export declare const useEcoTagSearch: (query: string) => import('@tanstack/react-query').UseQueryResult<EcoTag[], Error>;
|
|
34
|
+
/** Assign an existing tag to the entity. */
|
|
35
|
+
export declare const useEcoAssignTag: (entityType: string, entityId: string) => import('@tanstack/react-query').UseMutationResult<{
|
|
36
|
+
id: string;
|
|
37
|
+
}, Error, string, unknown>;
|
|
38
|
+
/** Remove a tag assignment by its assignment id. */
|
|
39
|
+
export declare const useEcoRemoveTagAssignment: (entityType: string, entityId: string) => import('@tanstack/react-query').UseMutationResult<boolean, Error, string, unknown>;
|
|
40
|
+
/** Create a new tag from a free-text label and assign it to the entity. */
|
|
41
|
+
export declare const useEcoCreateAndAssignTag: (entityType: string, entityId: string) => import('@tanstack/react-query').UseMutationResult<{
|
|
42
|
+
id: string;
|
|
43
|
+
}, Error, string, unknown>;
|
|
44
|
+
//# sourceMappingURL=useEcoTags.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useEcoTags.d.ts","sourceRoot":"","sources":["../../../src/ecoimpacthub/hooks/useEcoTags.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAOH,MAAM,WAAW,MAAM;IACrB,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,GAAG,EAAE,MAAM,CAAC;CACb;AAED,MAAM,WAAW,gBAAgB;IAC/B,EAAE,EAAE,MAAM,CAAC;IACX,GAAG,EAAE,MAAM,CAAC;CACb;AAiBD,iDAAiD;AACjD,eAAO,MAAM,gBAAgB,GAAI,YAAY,MAAM,EAAE,UAAU,MAAM,GAAG,SAAS,8EAmBhF,CAAC;AAEF,iEAAiE;AACjE,eAAO,MAAM,eAAe,GAAI,OAAO,MAAM,oEAiB5C,CAAC;AAEF,4CAA4C;AAC5C,eAAO,MAAM,eAAe,GAAI,YAAY,MAAM,EAAE,UAAU,MAAM;QAKZ,MAAM;0BAW7D,CAAC;AAEF,oDAAoD;AACpD,eAAO,MAAM,yBAAyB,GAAI,YAAY,MAAM,EAAE,UAAU,MAAM,uFAgB7E,CAAC;AA+BF,2EAA2E;AAC3E,eAAO,MAAM,wBAAwB,GAAI,YAAY,MAAM,EAAE,UAAU,MAAM;QAalB,MAAM;0BAkBhE,CAAC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* EcoImpactHub Module Exports
|
|
3
|
+
* @module ecoimpacthub
|
|
4
|
+
*/
|
|
5
|
+
export { EcoImpactHubRoot } from './EcoImpactHubRoot';
|
|
6
|
+
export type { EcoImpactHubRootProps, NavItem, FooterItem, TrendDirection } from './types';
|
|
7
|
+
export { EcoImpactHubProvider, useEcoImpactHub } from './context';
|
|
8
|
+
export { useSandboxAssistantTransport, type AssistantTransport } from './services';
|
|
9
|
+
export { cn, joinPath, formatDate, formatDateTime, formatRelativeTime, formatNumber, formatQuantity, formatPercent, formatCo2e, formatCoords, formatEnumLabel, } from './utils';
|
|
10
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/ecoimpacthub/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAGtD,YAAY,EAAE,qBAAqB,EAAE,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAG1F,OAAO,EAAE,oBAAoB,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAGlE,OAAO,EAAE,4BAA4B,EAAE,KAAK,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAGnF,OAAO,EACL,EAAE,EACF,QAAQ,EACR,UAAU,EACV,cAAc,EACd,kBAAkB,EAClB,YAAY,EACZ,cAAc,EACd,aAAa,EACb,UAAU,EACV,YAAY,EACZ,eAAe,GAChB,MAAM,SAAS,CAAC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Dashboard — EcoImpactHub environment, conservation & sustainability overview.
|
|
3
|
+
* @module ecoimpacthub/pages
|
|
4
|
+
*
|
|
5
|
+
* KPIs are aggregated client-side from the real `eco*` list endpoints plus the
|
|
6
|
+
* `ecoCarbonTotalKg` aggregate (by scope). Widgets show recent field
|
|
7
|
+
* observations and open threshold breaches. No mock data.
|
|
8
|
+
*/
|
|
9
|
+
export declare function DashboardPage(): import("react/jsx-runtime").JSX.Element;
|
|
10
|
+
//# sourceMappingURL=DashboardPage.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DashboardPage.d.ts","sourceRoot":"","sources":["../../../src/ecoimpacthub/pages/DashboardPage.tsx"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAkEH,wBAAgB,aAAa,4CAmd5B"}
|