@industry-theme/git-panels 0.1.17 → 0.1.19

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.
@@ -1 +1 @@
1
- {"version":3,"file":"GitCommitDetailPanel.stories.d.ts","sourceRoot":"","sources":["../../src/panels/GitCommitDetailPanel.stories.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAEvD,OAAO,EAAE,oBAAoB,EAA+B,MAAM,wBAAwB,CAAC;AAI3F,QAAA,MAAM,IAAI,EAAE,IAAI,CAAC,OAAO,oBAAoB,CAO3C,CAAC;AAEF,eAAe,IAAI,CAAC;AACpB,KAAK,KAAK,GAAG,QAAQ,CAAC,OAAO,oBAAoB,CAAC,CAAC;AA6LnD;;GAEG;AACH,eAAO,MAAM,UAAU,EAAE,KAMxB,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,OAAO,EAAE,KAMrB,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,KAAK,EAAE,KAMnB,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,aAAa,EAAE,KAM3B,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,YAAY,EAAE,KAM1B,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,cAAc,EAAE,KAM5B,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,YAAY,EAAE,KAM1B,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,YAAY,EAAE,KAM1B,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,OAAO,EAAE,KAMrB,CAAC"}
1
+ {"version":3,"file":"GitCommitDetailPanel.stories.d.ts","sourceRoot":"","sources":["../../src/panels/GitCommitDetailPanel.stories.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAEvD,OAAO,EAAE,oBAAoB,EAA+B,MAAM,wBAAwB,CAAC;AAI3F,QAAA,MAAM,IAAI,EAAE,IAAI,CAAC,OAAO,oBAAoB,CAO3C,CAAC;AAEF,eAAe,IAAI,CAAC;AACpB,KAAK,KAAK,GAAG,QAAQ,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAmMnD;;GAEG;AACH,eAAO,MAAM,UAAU,EAAE,KAMxB,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,OAAO,EAAE,KAMrB,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,KAAK,EAAE,KAMnB,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,aAAa,EAAE,KAM3B,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,YAAY,EAAE,KAM1B,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,cAAc,EAAE,KAM5B,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,YAAY,EAAE,KAM1B,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,YAAY,EAAE,KAM1B,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,OAAO,EAAE,KAMrB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"GitPullRequestDetailPanel.stories.d.ts","sourceRoot":"","sources":["../../src/panels/GitPullRequestDetailPanel.stories.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAEvD,OAAO,EAAE,yBAAyB,EAAoC,MAAM,6BAA6B,CAAC;AAI1G,QAAA,MAAM,IAAI,EAAE,IAAI,CAAC,OAAO,yBAAyB,CAOhD,CAAC;AAEF,eAAe,IAAI,CAAC;AACpB,KAAK,KAAK,GAAG,QAAQ,CAAC,OAAO,yBAAyB,CAAC,CAAC;AAyJxD;;GAEG;AACH,eAAO,MAAM,UAAU,EAAE,KAMxB,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,MAAM,EAAE,KAMpB,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,OAAO,EAAE,KAMrB,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,QAAQ,EAAE,KAMtB,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,MAAM,EAAE,KAMpB,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,OAAO,EAAE,KAMrB,CAAC"}
1
+ {"version":3,"file":"GitPullRequestDetailPanel.stories.d.ts","sourceRoot":"","sources":["../../src/panels/GitPullRequestDetailPanel.stories.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAEvD,OAAO,EAAE,yBAAyB,EAAoC,MAAM,6BAA6B,CAAC;AAI1G,QAAA,MAAM,IAAI,EAAE,IAAI,CAAC,OAAO,yBAAyB,CAOhD,CAAC;AAEF,eAAe,IAAI,CAAC;AACpB,KAAK,KAAK,GAAG,QAAQ,CAAC,OAAO,yBAAyB,CAAC,CAAC;AA2JxD;;GAEG;AACH,eAAO,MAAM,UAAU,EAAE,KAMxB,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,MAAM,EAAE,KAMpB,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,OAAO,EAAE,KAMrB,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,QAAQ,EAAE,KAMtB,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,MAAM,EAAE,KAMpB,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,OAAO,EAAE,KAMrB,CAAC"}
@@ -41124,7 +41124,8 @@ var createIndustryMarkdownComponents = ({
41124
41124
  enableHtmlPopout,
41125
41125
  slideHeaderMarginTopOverride,
41126
41126
  index: index2,
41127
- repositoryInfo
41127
+ repositoryInfo,
41128
+ editable = false
41128
41129
  }) => {
41129
41130
  const getLuminance = (hex) => {
41130
41131
  const rgb = hex.replace("#", "").match(/.{2}/g);
@@ -41145,9 +41146,11 @@ var createIndustryMarkdownComponents = ({
41145
41146
  fontSize: theme2.fontSizes[5],
41146
41147
  lineHeight: theme2.lineHeights.heading,
41147
41148
  fontWeight: theme2.fontWeights.bold,
41148
- marginTop: index2 === 0 ? 0 : theme2.space[4],
41149
+ marginTop: theme2.space[4],
41149
41150
  marginBottom: theme2.space[4],
41150
41151
  fontFamily: theme2.fonts.heading,
41152
+ paddingBottom: theme2.space[2],
41153
+ borderBottom: `1px solid ${theme2.colors.border}`,
41151
41154
  ...headerStyles
41152
41155
  },
41153
41156
  ...props
@@ -41158,9 +41161,11 @@ var createIndustryMarkdownComponents = ({
41158
41161
  fontSize: theme2.fontSizes[4],
41159
41162
  lineHeight: theme2.lineHeights.heading,
41160
41163
  fontWeight: theme2.fontWeights.bold,
41161
- marginTop: index2 === 0 ? 0 : theme2.space[4],
41164
+ marginTop: theme2.space[4],
41162
41165
  marginBottom: theme2.space[3],
41163
41166
  fontFamily: theme2.fonts.heading,
41167
+ paddingBottom: theme2.space[2],
41168
+ borderBottom: `1px solid ${theme2.colors.border}`,
41164
41169
  ...headerStyles
41165
41170
  },
41166
41171
  ...props
@@ -41171,12 +41176,48 @@ var createIndustryMarkdownComponents = ({
41171
41176
  fontSize: theme2.fontSizes[3],
41172
41177
  lineHeight: theme2.lineHeights.heading,
41173
41178
  fontWeight: theme2.fontWeights.semibold,
41174
- marginTop: index2 === 0 ? 0 : theme2.space[4],
41179
+ marginTop: theme2.space[4],
41175
41180
  marginBottom: theme2.space[3],
41176
41181
  fontFamily: theme2.fonts.heading
41177
41182
  },
41178
41183
  ...props
41179
41184
  }, children2),
41185
+ h4: ({ children: children2, ...props }) => /* @__PURE__ */ React2__default.createElement("h4", {
41186
+ style: {
41187
+ color: theme2.colors.text,
41188
+ fontSize: theme2.fontSizes[2],
41189
+ lineHeight: theme2.lineHeights.heading,
41190
+ fontWeight: theme2.fontWeights.semibold,
41191
+ marginTop: theme2.space[3],
41192
+ marginBottom: theme2.space[2],
41193
+ fontFamily: theme2.fonts.heading
41194
+ },
41195
+ ...props
41196
+ }, children2),
41197
+ h5: ({ children: children2, ...props }) => /* @__PURE__ */ React2__default.createElement("h5", {
41198
+ style: {
41199
+ color: theme2.colors.text,
41200
+ fontSize: theme2.fontSizes[1],
41201
+ lineHeight: theme2.lineHeights.heading,
41202
+ fontWeight: theme2.fontWeights.semibold,
41203
+ marginTop: theme2.space[3],
41204
+ marginBottom: theme2.space[1],
41205
+ fontFamily: theme2.fonts.heading
41206
+ },
41207
+ ...props
41208
+ }, children2),
41209
+ h6: ({ children: children2, ...props }) => /* @__PURE__ */ React2__default.createElement("h6", {
41210
+ style: {
41211
+ color: theme2.colors.text,
41212
+ fontSize: theme2.fontSizes[1],
41213
+ lineHeight: theme2.lineHeights.heading,
41214
+ fontWeight: theme2.fontWeights.medium,
41215
+ marginTop: theme2.space[3],
41216
+ marginBottom: theme2.space[1],
41217
+ fontFamily: theme2.fonts.heading
41218
+ },
41219
+ ...props
41220
+ }, children2),
41180
41221
  p: ({ children: children2, ...props }) => /* @__PURE__ */ React2__default.createElement("p", {
41181
41222
  style: {
41182
41223
  color: theme2.colors.text,
@@ -41256,21 +41297,21 @@ var createIndustryMarkdownComponents = ({
41256
41297
  checked: isChecked,
41257
41298
  onChange: handleChange,
41258
41299
  onClick: (e) => e.stopPropagation(),
41300
+ disabled: !editable,
41259
41301
  style: {
41260
41302
  marginRight: theme2.space[2],
41261
41303
  marginTop: theme2.space[1],
41262
41304
  width: "16px",
41263
41305
  height: "16px",
41264
- cursor: "pointer"
41306
+ cursor: editable ? "pointer" : "default"
41265
41307
  },
41266
41308
  id
41267
41309
  }), /* @__PURE__ */ React2__default.createElement("label", {
41268
41310
  htmlFor: id,
41269
41311
  style: {
41270
41312
  flex: 1,
41271
- cursor: "pointer",
41272
- textDecoration: isChecked ? "line-through" : "none",
41273
- opacity: isChecked ? 0.6 : 1,
41313
+ cursor: editable ? "pointer" : "default",
41314
+ color: isChecked ? theme2.colors.textMuted : "inherit",
41274
41315
  lineHeight: theme2.lineHeights.relaxed
41275
41316
  }
41276
41317
  }, labelContent.length > 0 ? labelContent : null)), nestedListElements.length > 0 ? nestedListElements : null);
@@ -41539,7 +41580,7 @@ var createIndustryMarkdownComponents = ({
41539
41580
  }), "Fill & Copy (", placeholders.length, ")"))), isPrompt ? /* @__PURE__ */ React2__default.createElement("div", {
41540
41581
  style: {
41541
41582
  margin: 0,
41542
- padding: theme2.space[5],
41583
+ padding: theme2.space[1],
41543
41584
  backgroundColor: "transparent",
41544
41585
  fontSize: theme2.fontSizes[1],
41545
41586
  lineHeight: theme2.lineHeights.body,
@@ -41566,7 +41607,7 @@ var createIndustryMarkdownComponents = ({
41566
41607
  })) : /* @__PURE__ */ React2__default.createElement("pre", {
41567
41608
  style: {
41568
41609
  margin: 0,
41569
- padding: theme2.space[4],
41610
+ padding: theme2.space[1],
41570
41611
  backgroundColor: "transparent",
41571
41612
  overflow: "auto",
41572
41613
  fontSize: theme2.fontSizes[1],
@@ -42338,6 +42379,7 @@ var IndustryMarkdownSlide = React2__default.memo(function IndustryMarkdownSlide2
42338
42379
  handleRunBashCommand,
42339
42380
  handlePromptCopy,
42340
42381
  enableHtmlPopout = true,
42382
+ autoFocusOnVisible = true,
42341
42383
  searchQuery,
42342
42384
  slideHeaderMarginTopOverride,
42343
42385
  theme: themeOverride,
@@ -42350,7 +42392,8 @@ var IndustryMarkdownSlide = React2__default.memo(function IndustryMarkdownSlide2
42350
42392
  maxScreenWidth: _maxScreenWidth,
42351
42393
  enableKeyboardScrolling = true,
42352
42394
  keyboardScrollConfig,
42353
- repositoryInfo
42395
+ repositoryInfo,
42396
+ editable = false
42354
42397
  }) {
42355
42398
  const slideRef = useRef(null);
42356
42399
  const scrollPositionsRef = useRef(/* @__PURE__ */ new Map());
@@ -42544,11 +42587,10 @@ var IndustryMarkdownSlide = React2__default.memo(function IndustryMarkdownSlide2
42544
42587
  }
42545
42588
  }, [enableKeyboardScrolling, isVisible, slideIndex, scrollConfig]);
42546
42589
  useEffect(() => {
42547
- if (isVisible && slideRef.current) {
42548
- console.log("🎯 Auto-focusing slide container");
42549
- slideRef.current.focus();
42590
+ if (autoFocusOnVisible && isVisible && slideRef.current) {
42591
+ slideRef.current.focus({ preventScroll: true });
42550
42592
  }
42551
- }, [isVisible]);
42593
+ }, [autoFocusOnVisible, isVisible]);
42552
42594
  const openPlaceholderModal = (placeholders, promptContent) => {
42553
42595
  if (!handlePromptCopy)
42554
42596
  return;
@@ -42707,7 +42749,8 @@ var IndustryMarkdownSlide = React2__default.memo(function IndustryMarkdownSlide2
42707
42749
  enableHtmlPopout,
42708
42750
  slideHeaderMarginTopOverride,
42709
42751
  index: chunkIndex,
42710
- repositoryInfo
42752
+ repositoryInfo,
42753
+ editable
42711
42754
  });
42712
42755
  if (searchQuery) {
42713
42756
  return {
@@ -42740,7 +42783,8 @@ var IndustryMarkdownSlide = React2__default.memo(function IndustryMarkdownSlide2
42740
42783
  enableHtmlPopout,
42741
42784
  slideHeaderMarginTopOverride,
42742
42785
  repositoryInfo,
42743
- searchQuery
42786
+ searchQuery,
42787
+ editable
42744
42788
  ]);
42745
42789
  return /* @__PURE__ */ React2__default.createElement("div", {
42746
42790
  className: "markdown-slide",
@@ -44513,106 +44557,23 @@ var Vt;
44513
44557
  })();
44514
44558
  var DocumentView = ({
44515
44559
  content: content2,
44516
- showSegmented = false,
44517
44560
  onCheckboxChange,
44518
- onSectionClick,
44519
44561
  maxWidth = "900px",
44520
- showSectionHeaders = true,
44521
- showSeparators = true,
44522
44562
  slideIdPrefix = "document",
44523
44563
  enableHtmlPopout = true,
44524
44564
  enableKeyboardScrolling = true,
44565
+ autoFocusOnVisible = true,
44525
44566
  onLinkClick,
44526
44567
  handleRunBashCommand,
44527
44568
  handlePromptCopy,
44528
44569
  repositoryInfo,
44529
44570
  fontSizeScale,
44530
44571
  theme: theme2,
44531
- transparentBackground = false
44572
+ transparentBackground = false,
44573
+ editable = false
44532
44574
  }) => {
44533
44575
  const containerRef = useRef(null);
44534
- const sectionRefs = useRef([]);
44535
44576
  const backgroundColor = transparentBackground ? "transparent" : theme2.colors.background;
44536
- const scrollToSection = useCallback((sectionIndex) => {
44537
- var _a;
44538
- if (sectionRefs.current[sectionIndex]) {
44539
- (_a = sectionRefs.current[sectionIndex]) == null ? void 0 : _a.scrollIntoView({
44540
- behavior: "smooth",
44541
- block: "start"
44542
- });
44543
- }
44544
- }, []);
44545
- const handleSectionClick = useCallback((index2) => {
44546
- scrollToSection(index2);
44547
- onSectionClick == null ? void 0 : onSectionClick(index2);
44548
- }, [scrollToSection, onSectionClick]);
44549
- if (typeof content2 === "string") {
44550
- return /* @__PURE__ */ React2__default.createElement("div", {
44551
- ref: containerRef,
44552
- style: {
44553
- height: "100%",
44554
- overflow: "auto",
44555
- backgroundColor
44556
- }
44557
- }, /* @__PURE__ */ React2__default.createElement("div", {
44558
- style: {
44559
- maxWidth: typeof maxWidth === "number" ? `${maxWidth}px` : maxWidth,
44560
- margin: "0 auto",
44561
- height: "100%"
44562
- }
44563
- }, /* @__PURE__ */ React2__default.createElement(IndustryMarkdownSlide, {
44564
- content: content2,
44565
- slideIdPrefix,
44566
- slideIndex: 0,
44567
- isVisible: true,
44568
- theme: theme2,
44569
- onCheckboxChange,
44570
- enableHtmlPopout,
44571
- enableKeyboardScrolling,
44572
- onLinkClick,
44573
- handleRunBashCommand,
44574
- fontSizeScale,
44575
- handlePromptCopy,
44576
- repositoryInfo,
44577
- transparentBackground
44578
- })));
44579
- }
44580
- if (!showSegmented) {
44581
- const fullContent = content2.join(`
44582
-
44583
- ---
44584
-
44585
- `);
44586
- return /* @__PURE__ */ React2__default.createElement("div", {
44587
- ref: containerRef,
44588
- style: {
44589
- height: "100%",
44590
- overflow: "auto",
44591
- backgroundColor
44592
- }
44593
- }, /* @__PURE__ */ React2__default.createElement("div", {
44594
- style: {
44595
- maxWidth: typeof maxWidth === "number" ? `${maxWidth}px` : maxWidth,
44596
- margin: "0 auto",
44597
- height: "100%"
44598
- }
44599
- }, /* @__PURE__ */ React2__default.createElement(IndustryMarkdownSlide, {
44600
- content: fullContent,
44601
- slideIdPrefix,
44602
- slideIndex: 0,
44603
- isVisible: true,
44604
- theme: theme2,
44605
- onCheckboxChange,
44606
- enableHtmlPopout,
44607
- enableKeyboardScrolling,
44608
- onLinkClick,
44609
- handleRunBashCommand,
44610
- fontSizeScale,
44611
- handlePromptCopy,
44612
- repositoryInfo,
44613
- transparentBackground
44614
- })));
44615
- }
44616
44577
  return /* @__PURE__ */ React2__default.createElement("div", {
44617
44578
  ref: containerRef,
44618
44579
  style: {
@@ -44623,69 +44584,27 @@ var DocumentView = ({
44623
44584
  }, /* @__PURE__ */ React2__default.createElement("div", {
44624
44585
  style: {
44625
44586
  maxWidth: typeof maxWidth === "number" ? `${maxWidth}px` : maxWidth,
44626
- margin: "0 auto"
44627
- }
44628
- }, content2.map((slideContent, index2) => /* @__PURE__ */ React2__default.createElement("div", {
44629
- key: index2,
44630
- ref: (el) => {
44631
- if (el)
44632
- sectionRefs.current[index2] = el;
44633
- },
44634
- style: {
44635
- marginBottom: index2 < content2.length - 1 ? "48px" : "0",
44636
- scrollMarginTop: "20px"
44587
+ margin: "0 auto",
44588
+ height: "100%"
44637
44589
  }
44638
- }, showSectionHeaders && /* @__PURE__ */ React2__default.createElement("div", {
44639
- onClick: () => handleSectionClick(index2),
44640
- style: {
44641
- display: "flex",
44642
- alignItems: "center",
44643
- justifyContent: "space-between",
44644
- marginBottom: "16px",
44645
- paddingBottom: "8px",
44646
- borderBottom: `1px solid ${theme2.colors.border}`,
44647
- opacity: 0.7,
44648
- cursor: "pointer",
44649
- transition: "opacity 0.2s ease"
44650
- },
44651
- onMouseOver: (e2) => {
44652
- e2.currentTarget.style.opacity = "1";
44653
- },
44654
- onMouseOut: (e2) => {
44655
- e2.currentTarget.style.opacity = "0.7";
44656
- }
44657
- }, /* @__PURE__ */ React2__default.createElement("span", {
44658
- style: {
44659
- fontSize: "11px",
44660
- fontWeight: 600,
44661
- color: theme2.colors.textSecondary,
44662
- textTransform: "uppercase",
44663
- letterSpacing: "0.5px"
44664
- }
44665
- }, "Section ", index2 + 1, " of ", content2.length)), /* @__PURE__ */ React2__default.createElement(IndustryMarkdownSlide, {
44666
- content: slideContent,
44667
- slideIdPrefix: `${slideIdPrefix}-${index2}`,
44668
- slideIndex: index2,
44590
+ }, /* @__PURE__ */ React2__default.createElement(IndustryMarkdownSlide, {
44591
+ content: content2,
44592
+ slideIdPrefix,
44593
+ slideIndex: 0,
44669
44594
  isVisible: true,
44670
44595
  theme: theme2,
44671
44596
  onCheckboxChange,
44672
44597
  enableHtmlPopout,
44673
44598
  enableKeyboardScrolling,
44599
+ autoFocusOnVisible,
44674
44600
  onLinkClick,
44675
44601
  handleRunBashCommand,
44676
44602
  fontSizeScale,
44677
44603
  handlePromptCopy,
44678
44604
  repositoryInfo,
44679
- transparentBackground
44680
- }), showSeparators && index2 < content2.length - 1 && /* @__PURE__ */ React2__default.createElement("div", {
44681
- style: {
44682
- marginTop: "32px",
44683
- marginBottom: "32px",
44684
- height: "1px",
44685
- backgroundColor: theme2.colors.border,
44686
- opacity: 0.3
44687
- }
44688
- })))));
44605
+ transparentBackground,
44606
+ editable
44607
+ })));
44689
44608
  };
44690
44609
  const GitCommitDetailPanelContent = ({
44691
44610
  events