@gallop.software/studio 0.1.65 → 0.1.67

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.
@@ -482,7 +482,7 @@ var styles2 = {
482
482
  top: 0;
483
483
  bottom: 50%;
484
484
  width: 0;
485
- border-left: 1px dashed ${_chunkUFCWGUAGjs.colors.border};
485
+ border-left: 1px dashed ${_chunkUFCWGUAGjs.colors.textSecondary};
486
486
  }
487
487
 
488
488
  &::after {
@@ -492,7 +492,7 @@ var styles2 = {
492
492
  top: 50%;
493
493
  width: 8px;
494
494
  height: 0;
495
- border-top: 1px dashed ${_chunkUFCWGUAGjs.colors.border};
495
+ border-top: 1px dashed ${_chunkUFCWGUAGjs.colors.textSecondary};
496
496
  }
497
497
  `,
498
498
  folderItemSelected: _react3.css`
@@ -3502,6 +3502,44 @@ var styles8 = {
3502
3502
  margin: 0;
3503
3503
  letter-spacing: -0.02em;
3504
3504
  `,
3505
+ headerLeft: _react3.css`
3506
+ display: flex;
3507
+ align-items: center;
3508
+ gap: 12px;
3509
+ min-width: 0;
3510
+ flex: 1;
3511
+ `,
3512
+ breadcrumbs: _react3.css`
3513
+ display: flex;
3514
+ align-items: center;
3515
+ gap: 6px;
3516
+ font-size: ${_chunkUFCWGUAGjs.fontSize.base};
3517
+ color: ${_chunkUFCWGUAGjs.colors.textSecondary};
3518
+ min-width: 0;
3519
+ overflow: hidden;
3520
+ `,
3521
+ breadcrumbSeparator: _react3.css`
3522
+ color: ${_chunkUFCWGUAGjs.colors.border};
3523
+ flex-shrink: 0;
3524
+ `,
3525
+ breadcrumbItem: _react3.css`
3526
+ color: ${_chunkUFCWGUAGjs.colors.textSecondary};
3527
+ text-decoration: none;
3528
+ cursor: pointer;
3529
+ transition: color 0.15s ease;
3530
+ white-space: nowrap;
3531
+
3532
+ &:hover {
3533
+ color: ${_chunkUFCWGUAGjs.colors.primary};
3534
+ }
3535
+ `,
3536
+ breadcrumbCurrent: _react3.css`
3537
+ color: ${_chunkUFCWGUAGjs.colors.text};
3538
+ font-weight: 500;
3539
+ white-space: nowrap;
3540
+ overflow: hidden;
3541
+ text-overflow: ellipsis;
3542
+ `,
3505
3543
  headerActions: _react3.css`
3506
3544
  display: flex;
3507
3545
  align-items: center;
@@ -3718,7 +3756,10 @@ function StudioUI({ onClose, isVisible = true }) {
3718
3756
  };
3719
3757
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, StudioContext.Provider, { value: contextValue, children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { css: styles8.container, children: [
3720
3758
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { css: styles8.header, children: [
3721
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h1", { css: styles8.title, children: "Studio" }),
3759
+ /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { css: styles8.headerLeft, children: [
3760
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h1", { css: styles8.title, children: "Studio" }),
3761
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, Breadcrumbs, { currentPath, onNavigate: setCurrentPath })
3762
+ ] }),
3722
3763
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { css: styles8.headerActions, children: [
3723
3764
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, StudioSettings, {}),
3724
3765
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
@@ -3752,6 +3793,24 @@ function StudioUI({ onClose, isVisible = true }) {
3752
3793
  focusedItem && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, StudioDetailView, {})
3753
3794
  ] }) });
3754
3795
  }
3796
+ function Breadcrumbs({ currentPath, onNavigate }) {
3797
+ const parts = currentPath.split("/").filter(Boolean);
3798
+ const breadcrumbs = parts.map((part, index) => ({
3799
+ name: part,
3800
+ path: parts.slice(0, index + 1).join("/")
3801
+ }));
3802
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { css: styles8.breadcrumbs, children: breadcrumbs.map((crumb, index) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { style: { display: "flex", alignItems: "center", gap: 6 }, children: [
3803
+ index > 0 && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { css: styles8.breadcrumbSeparator, children: "/" }),
3804
+ index === breadcrumbs.length - 1 ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { css: styles8.breadcrumbCurrent, children: crumb.name }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
3805
+ "span",
3806
+ {
3807
+ css: styles8.breadcrumbItem,
3808
+ onClick: () => onNavigate(crumb.path),
3809
+ children: crumb.name
3810
+ }
3811
+ )
3812
+ ] }, crumb.path)) });
3813
+ }
3755
3814
  function CloseIcon() {
3756
3815
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
3757
3816
  "svg",
@@ -3776,4 +3835,4 @@ var StudioUI_default = StudioUI;
3776
3835
 
3777
3836
 
3778
3837
  exports.StudioUI = StudioUI; exports.default = StudioUI_default;
3779
- //# sourceMappingURL=StudioUI-NEFEBI27.js.map
3838
+ //# sourceMappingURL=StudioUI-A372AHSZ.js.map