@dxos/plugin-status-bar 0.8.2-staging.7ac8446 → 0.8.2

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.
Files changed (39) hide show
  1. package/dist/lib/browser/chunk-P5BV6L2J.mjs +253 -0
  2. package/dist/lib/browser/chunk-P5BV6L2J.mjs.map +7 -0
  3. package/dist/lib/browser/index.mjs +16 -194
  4. package/dist/lib/browser/index.mjs.map +4 -4
  5. package/dist/lib/browser/meta.json +1 -1
  6. package/dist/lib/browser/react-surface-FCB6CYVQ.mjs +38 -0
  7. package/dist/lib/browser/react-surface-FCB6CYVQ.mjs.map +7 -0
  8. package/dist/lib/node/chunk-4IGLOCOS.cjs +284 -0
  9. package/dist/lib/node/chunk-4IGLOCOS.cjs.map +7 -0
  10. package/dist/lib/node/index.cjs +19 -194
  11. package/dist/lib/node/index.cjs.map +4 -4
  12. package/dist/lib/node/meta.json +1 -1
  13. package/dist/lib/node/react-surface-KZY6SOXE.cjs +61 -0
  14. package/dist/lib/node/react-surface-KZY6SOXE.cjs.map +7 -0
  15. package/dist/lib/node-esm/chunk-5Q57YPD6.mjs +255 -0
  16. package/dist/lib/node-esm/chunk-5Q57YPD6.mjs.map +7 -0
  17. package/dist/lib/node-esm/index.mjs +16 -195
  18. package/dist/lib/node-esm/index.mjs.map +4 -4
  19. package/dist/lib/node-esm/meta.json +1 -1
  20. package/dist/lib/node-esm/react-surface-YKOZ4BU7.mjs +39 -0
  21. package/dist/lib/node-esm/react-surface-YKOZ4BU7.mjs.map +7 -0
  22. package/dist/types/src/StatusBarPlugin.d.ts.map +1 -1
  23. package/dist/types/src/capabilities/index.d.ts +2 -0
  24. package/dist/types/src/capabilities/index.d.ts.map +1 -0
  25. package/dist/types/src/capabilities/react-surface.d.ts +4 -0
  26. package/dist/types/src/capabilities/react-surface.d.ts.map +1 -0
  27. package/dist/types/src/components/StatusBarPanel.d.ts.map +1 -1
  28. package/dist/types/src/components/index.d.ts +1 -0
  29. package/dist/types/src/components/index.d.ts.map +1 -1
  30. package/dist/types/src/translations.d.ts.map +1 -1
  31. package/dist/types/tsconfig.tsbuildinfo +1 -1
  32. package/package.json +18 -15
  33. package/src/StatusBarPlugin.ts +23 -0
  34. package/src/capabilities/index.ts +7 -0
  35. package/src/capabilities/react-surface.tsx +34 -0
  36. package/src/components/StatusBarPanel.tsx +31 -2
  37. package/src/components/VersionNumber.tsx +1 -1
  38. package/src/components/index.ts +1 -0
  39. package/src/StatusBarPlugin.tsx +0 -56
@@ -1 +1 @@
1
- {"inputs":{"packages/plugins/plugin-status-bar/src/components/StatusBar.tsx":{"bytes":7783,"imports":[{"path":"@radix-ui/react-slot","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true}],"format":"esm"},"packages/plugins/plugin-status-bar/src/meta.ts":{"bytes":1277,"imports":[],"format":"esm"},"packages/plugins/plugin-status-bar/src/components/VersionNumber.tsx":{"bytes":11172,"imports":[{"path":"date-fns/formatDistance","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-client","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-status-bar/src/components/StatusBar.tsx","kind":"import-statement","original":"./StatusBar"},{"path":"packages/plugins/plugin-status-bar/src/meta.ts","kind":"import-statement","original":"../meta"}],"format":"esm"},"packages/plugins/plugin-status-bar/src/components/StatusBarPanel.tsx":{"bytes":5831,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-status-bar/src/components/StatusBar.tsx","kind":"import-statement","original":"./StatusBar"},{"path":"packages/plugins/plugin-status-bar/src/components/VersionNumber.tsx","kind":"import-statement","original":"./VersionNumber"},{"path":"packages/plugins/plugin-status-bar/src/meta.ts","kind":"import-statement","original":"../meta"}],"format":"esm"},"packages/plugins/plugin-status-bar/src/components/index.ts":{"bytes":624,"imports":[{"path":"packages/plugins/plugin-status-bar/src/components/StatusBar.tsx","kind":"import-statement","original":"./StatusBar"},{"path":"packages/plugins/plugin-status-bar/src/components/StatusBarPanel.tsx","kind":"import-statement","original":"./StatusBarPanel"}],"format":"esm"},"packages/plugins/plugin-status-bar/src/translations.ts":{"bytes":3815,"imports":[{"path":"packages/plugins/plugin-status-bar/src/meta.ts","kind":"import-statement","original":"./meta"}],"format":"esm"},"packages/plugins/plugin-status-bar/src/StatusBarPlugin.tsx":{"bytes":6167,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-status-bar/src/components/index.ts","kind":"import-statement","original":"./components"},{"path":"packages/plugins/plugin-status-bar/src/components/VersionNumber.tsx","kind":"import-statement","original":"./components/VersionNumber"},{"path":"packages/plugins/plugin-status-bar/src/meta.ts","kind":"import-statement","original":"./meta"},{"path":"packages/plugins/plugin-status-bar/src/translations.ts","kind":"import-statement","original":"./translations"}],"format":"esm"},"packages/plugins/plugin-status-bar/src/index.ts":{"bytes":699,"imports":[{"path":"packages/plugins/plugin-status-bar/src/components/index.ts","kind":"import-statement","original":"./components"},{"path":"packages/plugins/plugin-status-bar/src/meta.ts","kind":"import-statement","original":"./meta"},{"path":"packages/plugins/plugin-status-bar/src/StatusBarPlugin.tsx","kind":"import-statement","original":"./StatusBarPlugin"}],"format":"esm"}},"outputs":{"packages/plugins/plugin-status-bar/dist/lib/node-esm/index.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":18335},"packages/plugins/plugin-status-bar/dist/lib/node-esm/index.mjs":{"imports":[{"path":"@radix-ui/react-slot","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"date-fns/formatDistance","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-client","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true}],"exports":["STATUS_BAR_PLUGIN","StatusBar","StatusBarActions","StatusBarPanel","StatusBarPlugin","meta"],"entryPoint":"packages/plugins/plugin-status-bar/src/index.ts","inputs":{"packages/plugins/plugin-status-bar/src/components/StatusBar.tsx":{"bytesInOutput":1948},"packages/plugins/plugin-status-bar/src/components/index.ts":{"bytesInOutput":0},"packages/plugins/plugin-status-bar/src/components/StatusBarPanel.tsx":{"bytesInOutput":1703},"packages/plugins/plugin-status-bar/src/components/VersionNumber.tsx":{"bytesInOutput":3210},"packages/plugins/plugin-status-bar/src/meta.ts":{"bytesInOutput":202},"packages/plugins/plugin-status-bar/src/index.ts":{"bytesInOutput":0},"packages/plugins/plugin-status-bar/src/StatusBarPlugin.tsx":{"bytesInOutput":1317},"packages/plugins/plugin-status-bar/src/translations.ts":{"bytesInOutput":608}},"bytes":9819}}}
1
+ {"inputs":{"packages/plugins/plugin-status-bar/src/components/StatusBar.tsx":{"bytes":8429,"imports":[{"path":"@preact-signals/safe-react/tracking","kind":"import-statement","external":true},{"path":"@radix-ui/react-slot","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true}],"format":"esm"},"packages/plugins/plugin-status-bar/src/meta.ts":{"bytes":1237,"imports":[],"format":"esm"},"packages/plugins/plugin-status-bar/src/components/VersionNumber.tsx":{"bytes":11430,"imports":[{"path":"@preact-signals/safe-react/tracking","kind":"import-statement","external":true},{"path":"date-fns/formatDistance","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-client","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-status-bar/src/components/StatusBar.tsx","kind":"import-statement","original":"./StatusBar"},{"path":"packages/plugins/plugin-status-bar/src/meta.ts","kind":"import-statement","original":"../meta"}],"format":"esm"},"packages/plugins/plugin-status-bar/src/components/StatusBarPanel.tsx":{"bytes":9015,"imports":[{"path":"@preact-signals/safe-react/tracking","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/react-client","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-status-bar/src/components/StatusBar.tsx","kind":"import-statement","original":"./StatusBar"},{"path":"packages/plugins/plugin-status-bar/src/components/VersionNumber.tsx","kind":"import-statement","original":"./VersionNumber"},{"path":"packages/plugins/plugin-status-bar/src/meta.ts","kind":"import-statement","original":"../meta"}],"format":"esm"},"packages/plugins/plugin-status-bar/src/components/index.ts":{"bytes":697,"imports":[{"path":"packages/plugins/plugin-status-bar/src/components/StatusBar.tsx","kind":"import-statement","original":"./StatusBar"},{"path":"packages/plugins/plugin-status-bar/src/components/StatusBarPanel.tsx","kind":"import-statement","original":"./StatusBarPanel"},{"path":"packages/plugins/plugin-status-bar/src/components/VersionNumber.tsx","kind":"import-statement","original":"./VersionNumber"}],"format":"esm"},"packages/plugins/plugin-status-bar/src/capabilities/react-surface.tsx":{"bytes":3838,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-status-bar/src/components/index.ts","kind":"import-statement","original":"../components"},{"path":"packages/plugins/plugin-status-bar/src/meta.ts","kind":"import-statement","original":"../meta"}],"format":"esm"},"packages/plugins/plugin-status-bar/src/capabilities/index.ts":{"bytes":796,"imports":[{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-status-bar/src/capabilities/react-surface.tsx","kind":"dynamic-import","original":"./react-surface"}],"format":"esm"},"packages/plugins/plugin-status-bar/src/translations.ts":{"bytes":3755,"imports":[{"path":"packages/plugins/plugin-status-bar/src/meta.ts","kind":"import-statement","original":"./meta"}],"format":"esm"},"packages/plugins/plugin-status-bar/src/StatusBarPlugin.ts":{"bytes":2804,"imports":[{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-status-bar/src/capabilities/index.ts","kind":"import-statement","original":"./capabilities"},{"path":"packages/plugins/plugin-status-bar/src/meta.ts","kind":"import-statement","original":"./meta"},{"path":"packages/plugins/plugin-status-bar/src/translations.ts","kind":"import-statement","original":"./translations"}],"format":"esm"},"packages/plugins/plugin-status-bar/src/index.ts":{"bytes":667,"imports":[{"path":"packages/plugins/plugin-status-bar/src/components/index.ts","kind":"import-statement","original":"./components"},{"path":"packages/plugins/plugin-status-bar/src/meta.ts","kind":"import-statement","original":"./meta"},{"path":"packages/plugins/plugin-status-bar/src/StatusBarPlugin.ts","kind":"import-statement","original":"./StatusBarPlugin"}],"format":"esm"}},"outputs":{"packages/plugins/plugin-status-bar/dist/lib/node-esm/index.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":3586},"packages/plugins/plugin-status-bar/dist/lib/node-esm/index.mjs":{"imports":[{"path":"packages/plugins/plugin-status-bar/dist/lib/node-esm/chunk-5Q57YPD6.mjs","kind":"import-statement"},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-status-bar/dist/lib/node-esm/react-surface-YKOZ4BU7.mjs","kind":"dynamic-import"}],"exports":["STATUS_BAR_PLUGIN","StatusBar","StatusBarActions","StatusBarPanel","StatusBarPlugin","VersionNumber","meta"],"entryPoint":"packages/plugins/plugin-status-bar/src/index.ts","inputs":{"packages/plugins/plugin-status-bar/src/index.ts":{"bytesInOutput":0},"packages/plugins/plugin-status-bar/src/StatusBarPlugin.ts":{"bytesInOutput":478},"packages/plugins/plugin-status-bar/src/capabilities/index.ts":{"bytesInOutput":115},"packages/plugins/plugin-status-bar/src/translations.ts":{"bytesInOutput":608}},"bytes":1839},"packages/plugins/plugin-status-bar/dist/lib/node-esm/react-surface-YKOZ4BU7.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":1839},"packages/plugins/plugin-status-bar/dist/lib/node-esm/react-surface-YKOZ4BU7.mjs":{"imports":[{"path":"packages/plugins/plugin-status-bar/dist/lib/node-esm/chunk-5Q57YPD6.mjs","kind":"import-statement"},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true}],"exports":["default"],"entryPoint":"packages/plugins/plugin-status-bar/src/capabilities/react-surface.tsx","inputs":{"packages/plugins/plugin-status-bar/src/capabilities/react-surface.tsx":{"bytesInOutput":896}},"bytes":1263},"packages/plugins/plugin-status-bar/dist/lib/node-esm/chunk-5Q57YPD6.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":15139},"packages/plugins/plugin-status-bar/dist/lib/node-esm/chunk-5Q57YPD6.mjs":{"imports":[{"path":"@preact-signals/safe-react/tracking","kind":"import-statement","external":true},{"path":"@radix-ui/react-slot","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true},{"path":"@preact-signals/safe-react/tracking","kind":"import-statement","external":true},{"path":"date-fns/formatDistance","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-client","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@preact-signals/safe-react/tracking","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/react-client","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true}],"exports":["STATUS_BAR_PLUGIN","StatusBar","StatusBarActions","StatusBarPanel","VersionNumber","meta"],"inputs":{"packages/plugins/plugin-status-bar/src/components/StatusBar.tsx":{"bytesInOutput":2549},"packages/plugins/plugin-status-bar/src/meta.ts":{"bytesInOutput":202},"packages/plugins/plugin-status-bar/src/components/VersionNumber.tsx":{"bytesInOutput":3481},"packages/plugins/plugin-status-bar/src/components/StatusBarPanel.tsx":{"bytesInOutput":2943},"packages/plugins/plugin-status-bar/src/components/index.ts":{"bytesInOutput":0}},"bytes":9684}}}
@@ -0,0 +1,39 @@
1
+ import { createRequire } from 'node:module';const require = createRequire(import.meta.url);
2
+ import {
3
+ StatusBarActions,
4
+ StatusBarPanel,
5
+ VersionNumber,
6
+ meta
7
+ } from "./chunk-5Q57YPD6.mjs";
8
+
9
+ // packages/plugins/plugin-status-bar/src/capabilities/react-surface.tsx
10
+ import React from "react";
11
+ import { Capabilities, contributes, createSurface, Surface } from "@dxos/app-framework";
12
+ var react_surface_default = () => contributes(Capabilities.ReactSurface, [
13
+ createSurface({
14
+ id: `${meta.id}/status-bar`,
15
+ role: "status-bar",
16
+ component: () => /* @__PURE__ */ React.createElement(StatusBarPanel, null)
17
+ }),
18
+ createSurface({
19
+ id: `${meta.id}/status-bar--r0-footer`,
20
+ role: "status-bar--r0-footer",
21
+ component: () => /* @__PURE__ */ React.createElement(Surface, {
22
+ role: "status"
23
+ })
24
+ }),
25
+ createSurface({
26
+ id: `${meta.id}/status-bar--r1-footer`,
27
+ role: "status-bar--r1-footer",
28
+ component: () => /* @__PURE__ */ React.createElement(StatusBarActions, null)
29
+ }),
30
+ createSurface({
31
+ id: `${meta.id}/header-end`,
32
+ role: "header-end",
33
+ component: () => /* @__PURE__ */ React.createElement(VersionNumber, null)
34
+ })
35
+ ]);
36
+ export {
37
+ react_surface_default as default
38
+ };
39
+ //# sourceMappingURL=react-surface-YKOZ4BU7.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/capabilities/react-surface.tsx"],
4
+ "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport React from 'react';\n\nimport { Capabilities, contributes, createSurface, Surface } from '@dxos/app-framework';\n\nimport { StatusBarActions, StatusBarPanel, VersionNumber } from '../components';\nimport { meta } from '../meta';\n\nexport default () =>\n contributes(Capabilities.ReactSurface, [\n createSurface({\n id: `${meta.id}/status-bar`,\n role: 'status-bar',\n component: () => <StatusBarPanel />,\n }),\n createSurface({\n id: `${meta.id}/status-bar--r0-footer`,\n role: 'status-bar--r0-footer',\n component: () => <Surface role='status' />,\n }),\n createSurface({\n id: `${meta.id}/status-bar--r1-footer`,\n role: 'status-bar--r1-footer',\n component: () => <StatusBarActions />,\n }),\n createSurface({\n id: `${meta.id}/header-end`,\n role: 'header-end',\n component: () => <VersionNumber />,\n }),\n ]);\n"],
5
+ "mappings": ";;;;;;;;;AAIA,OAAOA,WAAW;AAElB,SAASC,cAAcC,aAAaC,eAAeC,eAAe;AAKlE,IAAA,wBAAe,MACbC,YAAYC,aAAaC,cAAc;EACrCC,cAAc;IACZC,IAAI,GAAGC,KAAKD,EAAE;IACdE,MAAM;IACNC,WAAW,MAAM,sBAAA,cAACC,gBAAAA,IAAAA;EACpB,CAAA;EACAL,cAAc;IACZC,IAAI,GAAGC,KAAKD,EAAE;IACdE,MAAM;IACNC,WAAW,MAAM,sBAAA,cAACE,SAAAA;MAAQH,MAAK;;EACjC,CAAA;EACAH,cAAc;IACZC,IAAI,GAAGC,KAAKD,EAAE;IACdE,MAAM;IACNC,WAAW,MAAM,sBAAA,cAACG,kBAAAA,IAAAA;EACpB,CAAA;EACAP,cAAc;IACZC,IAAI,GAAGC,KAAKD,EAAE;IACdE,MAAM;IACNC,WAAW,MAAM,sBAAA,cAACI,eAAAA,IAAAA;EACpB,CAAA;CACD;",
6
+ "names": ["React", "Capabilities", "contributes", "createSurface", "Surface", "contributes", "Capabilities", "ReactSurface", "createSurface", "id", "meta", "role", "component", "StatusBarPanel", "Surface", "StatusBarActions", "VersionNumber"]
7
+ }
@@ -1 +1 @@
1
- {"version":3,"file":"StatusBarPlugin.d.ts","sourceRoot":"","sources":["../../../src/StatusBarPlugin.tsx"],"names":[],"mappings":"AAqBA,eAAO,MAAM,eAAe,4CAkCxB,CAAC"}
1
+ {"version":3,"file":"StatusBarPlugin.d.ts","sourceRoot":"","sources":["../../../src/StatusBarPlugin.ts"],"names":[],"mappings":"AAUA,eAAO,MAAM,eAAe,4CAYxB,CAAC"}
@@ -0,0 +1,2 @@
1
+ export declare const ReactSurface: (props?: unknown) => Promise<() => Promise<import("@dxos/app-framework").Capability<import("@dxos/app-framework").Capabilities.ReactSurface> | import("@dxos/app-framework").AnyCapability[]>>;
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/capabilities/index.ts"],"names":[],"mappings":"AAMA,eAAO,MAAM,YAAY,gMAAwC,CAAC"}
@@ -0,0 +1,4 @@
1
+ import { Capabilities } from '@dxos/app-framework';
2
+ declare const _default: () => import("@dxos/app-framework").Capability<Capabilities.ReactSurface>;
3
+ export default _default;
4
+ //# sourceMappingURL=react-surface.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"react-surface.d.ts","sourceRoot":"","sources":["../../../../src/capabilities/react-surface.tsx"],"names":[],"mappings":"AAMA,OAAO,EAAE,YAAY,EAAuC,MAAM,qBAAqB,CAAC;;AAKxF,wBAsBK"}
@@ -1 +1 @@
1
- {"version":3,"file":"StatusBarPanel.d.ts","sourceRoot":"","sources":["../../../../src/components/StatusBarPanel.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAmB,MAAM,OAAO,CAAC;AASxC,eAAO,MAAM,gBAAgB,yBAsB5B,CAAC;AAEF,eAAO,MAAM,cAAc,yBAQ1B,CAAC"}
1
+ {"version":3,"file":"StatusBarPanel.d.ts","sourceRoot":"","sources":["../../../../src/components/StatusBarPanel.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAmB,MAAM,OAAO,CAAC;AAUxC,eAAO,MAAM,gBAAgB,yBAsB5B,CAAC;AAEF,eAAO,MAAM,cAAc,yBAQ1B,CAAC"}
@@ -1,3 +1,4 @@
1
1
  export * from './StatusBar';
2
2
  export * from './StatusBarPanel';
3
+ export * from './VersionNumber';
3
4
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/index.ts"],"names":[],"mappings":"AAIA,cAAc,aAAa,CAAC;AAC5B,cAAc,kBAAkB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/index.ts"],"names":[],"mappings":"AAIA,cAAc,aAAa,CAAC;AAC5B,cAAc,kBAAkB,CAAC;AACjC,cAAc,iBAAiB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"translations.d.ts","sourceRoot":"","sources":["../../../src/translations.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAErD,OAAO,EAAE,iBAAiB,EAAE,MAAM,QAAQ,CAAC;AAI3C,KAAK,wBAAwB,GACzB,aAAa,GACb,eAAe,GACf,4BAA4B,GAC5B,kBAAkB,GAClB,kBAAkB,GAClB,mBAAmB,GACnB,yBAAyB,GACzB,eAAe,GACf,cAAc,GACd,gBAAgB,CAAC;AAErB,KAAK,mBAAmB,GAAG;KAAG,GAAG,IAAI,wBAAwB,GAAG,MAAM;CAAE,CAAC;AACzE,KAAK,gBAAgB,GAAG;IAAE,CAAC,iBAAiB,CAAC,EAAE,mBAAmB,CAAA;CAAE,CAAC;AAKrE,eAAO,MAAM,aAAa,MAAO,UAAU,CAAC,OAAO,cAAc,CAAC,CAAC,GAAG,CAAC,WAAW,wBAAwB,WAAW,CAAC;;AAiBtH,wBAA8B"}
1
+ {"version":3,"file":"translations.d.ts","sourceRoot":"","sources":["../../../src/translations.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAErD,OAAO,EAAE,iBAAiB,EAAE,MAAM,QAAQ,CAAC;AAI3C,KAAK,wBAAwB,GACzB,aAAa,GACb,eAAe,GACf,4BAA4B,GAC5B,kBAAkB,GAClB,kBAAkB,GAClB,mBAAmB,GACnB,yBAAyB,GACzB,eAAe,GACf,cAAc,GACd,gBAAgB,CAAC;AAErB,KAAK,mBAAmB,GAAG;KAAG,GAAG,IAAI,wBAAwB,GAAG,MAAM;CAAE,CAAC;AACzE,KAAK,gBAAgB,GAAG;IAAE,CAAC,iBAAiB,CAAC,EAAE,mBAAmB,CAAA;CAAE,CAAC;AAKrE,eAAO,MAAM,aAAa,GAAI,GAAG,UAAU,CAAC,OAAO,cAAc,CAAC,CAAC,GAAG,CAAC,MAAM,KAAK,wBAAwB,WAAW,CAAC;;AAiBtH,wBAA8B"}
@@ -1 +1 @@
1
- {"version":"5.7.3"}
1
+ {"version":"5.8.3"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@dxos/plugin-status-bar",
3
- "version": "0.8.2-staging.7ac8446",
3
+ "version": "0.8.2",
4
4
  "description": "Status bar plugin",
5
5
  "homepage": "https://dxos.org",
6
6
  "bugs": "https://github.com/dxos/dxos/issues",
@@ -25,18 +25,20 @@
25
25
  ],
26
26
  "dependencies": {
27
27
  "@fluentui/react-tabster": "^9.24.2",
28
- "@preact/signals-core": "^1.6.0",
28
+ "@preact-signals/safe-react": "^0.9.0",
29
+ "@preact/signals-core": "^1.9.0",
29
30
  "@radix-ui/react-slot": "1.1.2",
30
31
  "date-fns": "^3.3.1",
31
- "effect": "3.13.3",
32
+ "effect": "3.14.21",
32
33
  "react-resize-detector": "^11.0.1",
33
- "@dxos/app-framework": "0.8.2-staging.7ac8446",
34
- "@dxos/plugin-observability": "0.8.2-staging.7ac8446",
35
- "@dxos/echo-schema": "0.8.2-staging.7ac8446",
36
- "@dxos/react-client": "0.8.2-staging.7ac8446",
37
- "@dxos/async": "0.8.2-staging.7ac8446",
38
- "@dxos/react-ui-form": "0.8.2-staging.7ac8446",
39
- "@dxos/schema": "0.8.2-staging.7ac8446"
34
+ "@dxos/app-framework": "0.8.2",
35
+ "@dxos/async": "0.8.2",
36
+ "@dxos/echo": "0.8.2",
37
+ "@dxos/echo-schema": "0.8.2",
38
+ "@dxos/plugin-observability": "0.8.2",
39
+ "@dxos/react-client": "0.8.2",
40
+ "@dxos/react-ui-form": "0.8.2",
41
+ "@dxos/schema": "0.8.2"
40
42
  },
41
43
  "devDependencies": {
42
44
  "@phosphor-icons/react": "^2.1.5",
@@ -45,16 +47,17 @@
45
47
  "react": "~18.2.0",
46
48
  "react-dom": "~18.2.0",
47
49
  "vite": "5.4.7",
48
- "@dxos/react-ui-theme": "0.8.2-staging.7ac8446",
49
- "@dxos/storybook-utils": "0.8.2-staging.7ac8446",
50
- "@dxos/react-ui": "0.8.2-staging.7ac8446"
50
+ "@dxos/react-ui": "0.8.2",
51
+ "@dxos/storybook-utils": "0.8.2",
52
+ "@dxos/react-ui-theme": "0.8.2"
51
53
  },
52
54
  "peerDependencies": {
53
55
  "@phosphor-icons/react": "^2.0.5",
56
+ "effect": "^3.13.3",
54
57
  "react": "~18.2.0",
55
58
  "react-dom": "~18.2.0",
56
- "@dxos/react-ui": "0.8.2-staging.7ac8446",
57
- "@dxos/react-ui-theme": "0.8.2-staging.7ac8446"
59
+ "@dxos/react-ui": "0.8.2",
60
+ "@dxos/react-ui-theme": "0.8.2"
58
61
  },
59
62
  "publishConfig": {
60
63
  "access": "public"
@@ -0,0 +1,23 @@
1
+ //
2
+ // Copyright 2024 DXOS.org
3
+ //
4
+
5
+ import { Capabilities, contributes, defineModule, definePlugin, Events } from '@dxos/app-framework';
6
+
7
+ import { ReactSurface } from './capabilities';
8
+ import { meta } from './meta';
9
+ import translations from './translations';
10
+
11
+ export const StatusBarPlugin = () =>
12
+ definePlugin(meta, [
13
+ defineModule({
14
+ id: `${meta.id}/module/translations`,
15
+ activatesOn: Events.SetupTranslations,
16
+ activate: () => contributes(Capabilities.Translations, translations),
17
+ }),
18
+ defineModule({
19
+ id: `${meta.id}/module/react-surface`,
20
+ activatesOn: Events.SetupReactSurface,
21
+ activate: ReactSurface,
22
+ }),
23
+ ]);
@@ -0,0 +1,7 @@
1
+ //
2
+ // Copyright 2025 DXOS.org
3
+ //
4
+
5
+ import { lazy } from '@dxos/app-framework';
6
+
7
+ export const ReactSurface = lazy(() => import('./react-surface'));
@@ -0,0 +1,34 @@
1
+ //
2
+ // Copyright 2025 DXOS.org
3
+ //
4
+
5
+ import React from 'react';
6
+
7
+ import { Capabilities, contributes, createSurface, Surface } from '@dxos/app-framework';
8
+
9
+ import { StatusBarActions, StatusBarPanel, VersionNumber } from '../components';
10
+ import { meta } from '../meta';
11
+
12
+ export default () =>
13
+ contributes(Capabilities.ReactSurface, [
14
+ createSurface({
15
+ id: `${meta.id}/status-bar`,
16
+ role: 'status-bar',
17
+ component: () => <StatusBarPanel />,
18
+ }),
19
+ createSurface({
20
+ id: `${meta.id}/status-bar--r0-footer`,
21
+ role: 'status-bar--r0-footer',
22
+ component: () => <Surface role='status' />,
23
+ }),
24
+ createSurface({
25
+ id: `${meta.id}/status-bar--r1-footer`,
26
+ role: 'status-bar--r1-footer',
27
+ component: () => <StatusBarActions />,
28
+ }),
29
+ createSurface({
30
+ id: `${meta.id}/header-end`,
31
+ role: 'header-end',
32
+ component: () => <VersionNumber />,
33
+ }),
34
+ ]);
@@ -5,6 +5,7 @@
5
5
  import React, { useState } from 'react';
6
6
 
7
7
  import { Surface } from '@dxos/app-framework';
8
+ import { useConfig } from '@dxos/react-client';
8
9
  import { Icon, Popover, useTranslation } from '@dxos/react-ui';
9
10
 
10
11
  import { StatusBar } from './StatusBar';
@@ -17,7 +18,8 @@ export const StatusBarActions = () => {
17
18
 
18
19
  return (
19
20
  <Popover.Root open={open} onOpenChange={setOpen}>
20
- {/* TODO(zan): Configure this label? */}
21
+ <EnvironmentLabel />
22
+ <VersionNumber />
21
23
  <StatusBar.Button asChild>
22
24
  <a href='https://dxos.org/discord' target='_blank' rel='noopener noreferrer'>
23
25
  <Icon icon='ph--discord-logo--regular' size={4} />
@@ -30,7 +32,6 @@ export const StatusBarActions = () => {
30
32
  <StatusBar.Text classNames='hidden sm:block'>{t('github label')}</StatusBar.Text>
31
33
  </a>
32
34
  </StatusBar.Button>
33
- <VersionNumber />
34
35
  </Popover.Root>
35
36
  );
36
37
  };
@@ -44,3 +45,31 @@ export const StatusBarPanel = () => {
44
45
  </>
45
46
  );
46
47
  };
48
+
49
+ const ENV_LABELS: Record<string, string> = {
50
+ 'edge-dev': 'Dev',
51
+ 'edge-main': 'Main',
52
+ 'edge-labs': 'Labs',
53
+ 'edge-production': 'Production',
54
+ };
55
+
56
+ const EnvironmentLabel = () => {
57
+ const config = useConfig();
58
+ const edgeUrl = config.values.runtime?.services?.edge?.url;
59
+ if (!edgeUrl) {
60
+ return null;
61
+ }
62
+ const part = new URL(edgeUrl).host.split('.')[0];
63
+ const edgeEnv = ENV_LABELS[part];
64
+ if (!edgeEnv) {
65
+ return null;
66
+ }
67
+
68
+ return (
69
+ <StatusBar.Item>
70
+ <StatusBar.Text classNames='text-xs text-subdued border border-separator rounded-full px-1'>
71
+ <span title={edgeEnv}>{edgeEnv[0]}</span>
72
+ </StatusBar.Text>
73
+ </StatusBar.Item>
74
+ );
75
+ };
@@ -16,8 +16,8 @@ const repo = 'https://github.com/dxos/dxos';
16
16
  const VERSION_REGEX = /([\d.]+)/;
17
17
 
18
18
  export const VersionNumber = () => {
19
- const config = useConfig();
20
19
  const { t } = useTranslation(STATUS_BAR_PLUGIN);
20
+ const config = useConfig();
21
21
  const { version, timestamp, commitHash } = config.values.runtime?.app?.build ?? {};
22
22
  const [_, v] = version?.match(VERSION_REGEX) ?? [];
23
23
  const isLabs = config.values.runtime?.app?.env?.DX_LABS;
@@ -4,3 +4,4 @@
4
4
 
5
5
  export * from './StatusBar';
6
6
  export * from './StatusBarPanel';
7
+ export * from './VersionNumber';
@@ -1,56 +0,0 @@
1
- //
2
- // Copyright 2024 DXOS.org
3
- //
4
-
5
- import React from 'react';
6
-
7
- import {
8
- Capabilities,
9
- contributes,
10
- createSurface,
11
- defineModule,
12
- definePlugin,
13
- Events,
14
- Surface,
15
- } from '@dxos/app-framework';
16
-
17
- import { StatusBarActions, StatusBarPanel } from './components';
18
- import { VersionNumber } from './components/VersionNumber';
19
- import { meta, STATUS_BAR_PLUGIN } from './meta';
20
- import translations from './translations';
21
-
22
- export const StatusBarPlugin = () =>
23
- definePlugin(meta, [
24
- defineModule({
25
- id: `${meta.id}/module/translations`,
26
- activatesOn: Events.SetupTranslations,
27
- activate: () => contributes(Capabilities.Translations, translations),
28
- }),
29
- defineModule({
30
- id: `${meta.id}/module/react-surface`,
31
- activatesOn: Events.SetupReactSurface,
32
- activate: () =>
33
- contributes(Capabilities.ReactSurface, [
34
- createSurface({
35
- id: meta.id,
36
- role: 'status-bar',
37
- component: () => <StatusBarPanel />,
38
- }),
39
- createSurface({
40
- id: meta.id,
41
- role: 'status-bar--r0-footer',
42
- component: () => <Surface role='status' />,
43
- }),
44
- createSurface({
45
- id: meta.id,
46
- role: 'status-bar--r1-footer',
47
- component: () => <StatusBarActions />,
48
- }),
49
- createSurface({
50
- id: `${STATUS_BAR_PLUGIN}/header-end`,
51
- role: 'header-end',
52
- component: () => <VersionNumber />,
53
- }),
54
- ]),
55
- }),
56
- ]);