@brightspot/ui 6.4.2 → 6.4.3-pr.366.2026.10.5-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 (91) hide show
  1. package/dist/custom-elements.json +499 -499
  2. package/dist/storybook/assets/{ActionBar.stories-S00Ek6J4.js → ActionBar.stories-0ScNWOC4.js} +1 -1
  3. package/dist/storybook/assets/{ActionItem.stories-D4F9yCyV.js → ActionItem.stories-DXJ_yKW3.js} +1 -1
  4. package/dist/storybook/assets/{AiSparkle.stories-vC8jum9o.js → AiSparkle.stories-Z_5khRM7.js} +1 -1
  5. package/dist/storybook/assets/{Avatar.stories-BvCzPIfr.js → Avatar.stories-C9XcQNHg.js} +1 -1
  6. package/dist/storybook/assets/{AvatarGroup.stories-VRTsctUo.js → AvatarGroup.stories-Cdy_mkeq.js} +1 -1
  7. package/dist/storybook/assets/{Badge.stories-DPaTwNDd.js → Badge.stories-BUdXSprE.js} +1 -1
  8. package/dist/storybook/assets/{Banner.stories-Ki6o6Qnz.js → Banner.stories-D71fgNb5.js} +1 -1
  9. package/dist/storybook/assets/{Button-BVkUpjw-.js → Button-D7pK-2at.js} +1 -1
  10. package/dist/storybook/assets/{Button.stories-B4Cajufa.js → Button.stories-B6WKuxXx.js} +1 -1
  11. package/dist/storybook/assets/{ButtonGroup.stories--XdEhkoR.js → ButtonGroup.stories-CwiRfEal.js} +1 -1
  12. package/dist/storybook/assets/{Card.stories-DdaTXloZ.js → Card.stories-CxCcO9k6.js} +1 -1
  13. package/dist/storybook/assets/{Celebrate.stories-5krJLBnV.js → Celebrate.stories-DNVFUrhg.js} +1 -1
  14. package/dist/storybook/assets/{Checkbox.stories-DJiir-4S.js → Checkbox.stories-SuP4ltMI.js} +1 -1
  15. package/dist/storybook/assets/{CircularProgress.stories-FoLbJ02D.js → CircularProgress.stories-BB0twcGv.js} +1 -1
  16. package/dist/storybook/assets/{ClipboardMixin.stories-C_Y93Vvc.js → ClipboardMixin.stories-DaPV19jG.js} +1 -1
  17. package/dist/storybook/assets/{Color-6BZIO3FS-Cal-f26G.js → Color-6BZIO3FS-DQ34tmQu.js} +1 -1
  18. package/dist/storybook/assets/{Colors.stories-BIOYpAZL.js → Colors.stories-CMFJai_a.js} +1 -1
  19. package/dist/storybook/assets/{CombinedEffects.stories-z1_xU5i7.js → CombinedEffects.stories-BIHfDsN0.js} +1 -1
  20. package/dist/storybook/assets/{ComponentStatesMixin-DCnHVb7T.js → ComponentStatesMixin-Bq-OGuus.js} +1 -1
  21. package/dist/storybook/assets/{ComponentStatesMixin.stories-Crysvxtr.js → ComponentStatesMixin.stories-DMxDqidh.js} +1 -1
  22. package/dist/storybook/assets/{CopyToClipboard.stories-CMpzwyh6.js → CopyToClipboard.stories-CkdYHm8U.js} +1 -1
  23. package/dist/storybook/assets/{Debounce.stories-C2FgBZXP.js → Debounce.stories-CZSMfS-h.js} +1 -1
  24. package/dist/storybook/assets/{DocsRenderer-LL677BLK-CxHYlXfz.js → DocsRenderer-LL677BLK-CCAvPHmY.js} +3 -3
  25. package/dist/storybook/assets/{Dropdown.stories-DhBn1nVs.js → Dropdown.stories-BTqSRQiC.js} +1 -1
  26. package/dist/storybook/assets/{EmptyState.stories-CBIvJ1Tk.js → EmptyState.stories-CjIkNVv4.js} +1 -1
  27. package/dist/storybook/assets/{EscaAvatar.stories-DKPhkhvA.js → EscaAvatar.stories-ORFCzxQw.js} +1 -1
  28. package/dist/storybook/assets/{Events.stories-DLbfdSXr.js → Events.stories-DHFT6dZM.js} +1 -1
  29. package/dist/storybook/assets/{Heading.stories-B6CIwwiJ.js → Heading.stories-CRgKl3Ve.js} +1 -1
  30. package/dist/storybook/assets/{HueRipple.stories-C8E72qX_.js → HueRipple.stories-YiQHrWPS.js} +1 -1
  31. package/dist/storybook/assets/{Icon.stories-YUubIb9i.js → Icon.stories-Bv4QRZNL.js} +1 -1
  32. package/dist/storybook/assets/{IconButton.stories-07ADapHQ.js → IconButton.stories-ErFc860x.js} +1 -1
  33. package/dist/storybook/assets/{LinearProgress.stories-DZk0i6LC.js → LinearProgress.stories-DUAAMzdt.js} +1 -1
  34. package/dist/storybook/assets/{Message.stories-BaTncCPY.js → Message.stories-DxJEEd1I.js} +1 -1
  35. package/dist/storybook/assets/{OnFindMixin.stories-BKgCI6zb.js → OnFindMixin.stories-CoKUEhb4.js} +1 -1
  36. package/dist/storybook/assets/{Pagination.stories-BrD-TcnC.js → Pagination.stories-6k02-Zb5.js} +1 -1
  37. package/dist/storybook/assets/{Popover.stories-CUe375fR.js → Popover.stories-Cd7P1nw_.js} +1 -1
  38. package/dist/storybook/assets/{ReadyMixin-XQ_tHzRU.js → ReadyMixin-BL65bbm_.js} +1 -1
  39. package/dist/storybook/assets/{RovingTabindexMixin.stories-BBc7zdjl.js → RovingTabindexMixin.stories-CvtQ9Om6.js} +1 -1
  40. package/dist/storybook/assets/{Rtc.stories-CkEgMrqd.js → Rtc.stories-BBmO6Ses.js} +1 -1
  41. package/dist/storybook/assets/{ScrollShadow.stories-DdOKLFJ5.js → ScrollShadow.stories-BUiypzkp.js} +1 -1
  42. package/dist/storybook/assets/{Switch.stories-Dw9Jic7Y.js → Switch.stories-BndbX0N7.js} +1 -1
  43. package/dist/storybook/assets/{Tab.stories-CUAvvpwI.js → Tab.stories-DVMyUFjq.js} +1 -1
  44. package/dist/storybook/assets/{Tabs.stories--iRj2mWu.js → Tabs.stories-BQPYcQ6j.js} +1 -1
  45. package/dist/storybook/assets/{Throttle.stories-BDuNJMQg.js → Throttle.stories-CKYOCVnj.js} +1 -1
  46. package/dist/storybook/assets/{Tooltip.stories-RaSZ71_I.js → Tooltip.stories-B3DmBl8X.js} +1 -1
  47. package/dist/storybook/assets/{Upload.stories-hhhR_V85.js → Upload.stories-nzkKN-_d.js} +1 -1
  48. package/dist/storybook/assets/{UploadItem.stories-B-1lkPzO.js → UploadItem.stories-CL3oKT8D.js} +1 -1
  49. package/dist/storybook/assets/{Welcome.stories-BycQWbzd.js → Welcome.stories-DfHnb5cA.js} +1 -1
  50. package/dist/storybook/assets/{Widget.stories-BDcpbQXU.js → Widget.stories-CcVwc0wv.js} +1 -1
  51. package/dist/storybook/assets/{WithTooltip-65CFNBJE-CHL0JiUq.js → WithTooltip-65CFNBJE-CxSJYFKf.js} +1 -1
  52. package/dist/storybook/assets/{blocks-DllEBdtP.js → blocks-A7XjcsrR.js} +5 -5
  53. package/dist/storybook/assets/{formatter-EIJCOSYU-LrYXshB9.js → formatter-EIJCOSYU-BJ6Z7p9H.js} +1 -1
  54. package/dist/storybook/assets/if-defined-C9mNa1xD.js +1 -0
  55. package/dist/storybook/assets/{iframe-Bp7-_nUZ.js → iframe-ChxxW2FZ.js} +4 -4
  56. package/dist/storybook/assets/iframe-DI_vgyKl.css +1 -0
  57. package/dist/storybook/assets/{index-Cc3M657Z.js → index-ChSJHRK6.js} +1 -1
  58. package/dist/storybook/assets/{onFind-Du4z1ObO.js → onFind-C-gvwlyW.js} +1 -1
  59. package/dist/storybook/assets/{onFind.stories-BCUiC6a9.js → onFind.stories-8tPEGWhS.js} +1 -1
  60. package/dist/storybook/assets/{onRemove.stories-B-ICGMhl.js → onRemove.stories-CSuoNbAk.js} +1 -1
  61. package/dist/storybook/assets/{onVisible.stories-DijYge1X.js → onVisible.stories-LFpM1FnE.js} +1 -1
  62. package/dist/storybook/assets/{style-map-DaohL-ne.js → style-map-4fqj8G4H.js} +1 -1
  63. package/dist/storybook/assets/{syntaxhighlighter-ED5Y7EFY-CH5_k0Po.js → syntaxhighlighter-ED5Y7EFY-DCcLcHdT.js} +1 -1
  64. package/dist/storybook/iframe.html +2 -2
  65. package/dist/storybook/project.json +1 -1
  66. package/dist/tailwind-plugin-badge.js +2 -1
  67. package/dist/tailwind-plugin-badge.js.map +1 -1
  68. package/dist/tailwind-plugin-badge.ts +2 -1
  69. package/dist/tailwind-plugin-message.js +3 -0
  70. package/dist/tailwind-plugin-message.js.map +1 -1
  71. package/dist/tailwind-plugin-message.ts +3 -0
  72. package/package.json +1 -1
  73. package/src/legacy/tool-ui/src/Conversation.css +14 -3
  74. package/src/legacy/tool-ui/src/Conversation.ts +3 -0
  75. package/src/legacy/tool-ui/src/Entry.ts +4 -3
  76. package/src/legacy/tool-ui/src/SharePreview.css +209 -4
  77. package/src/legacy/tool-ui/src/SharePreviewCommenting.ts +659 -0
  78. package/src/legacy/tool-ui/src/main/webapp/dist/LocationMap.8c328ae48113c22fec31.js +1 -0
  79. package/src/legacy/tool-ui/src/main/webapp/dist/{RTEProseMirror.ef21fd86df209b8f772b.js → RTEProseMirror.f533e0166603af6cdd79.js} +5 -5
  80. package/src/legacy/tool-ui/src/main/webapp/dist/RegionMap.17d7cd9f92c923b593d5.js +1 -0
  81. package/src/legacy/tool-ui/src/main/webapp/dist/{v4.83bc23585a616647b793.js → v4.a4e299758310db43579e.js} +8 -8
  82. package/src/legacy/tool-ui/src/main/webapp/dist/v5.22ce1a2b135f2c813878.css +5 -0
  83. package/src/legacy/tool-ui/src/main/webapp/dist/{v5.dae3cbc9fb1335ca0f1f.js → v5.867287a6c5d4d25aa41b.js} +6 -6
  84. package/dist/storybook/assets/if-defined-DONC-k_n.js +0 -1
  85. package/dist/storybook/assets/iframe-D7jBrFjV.css +0 -1
  86. package/src/legacy/tool-ui/src/main/webapp/dist/LocationMap.72a510c0f5ff236f596e.js +0 -1
  87. package/src/legacy/tool-ui/src/main/webapp/dist/RegionMap.f6f963eda2cb616b9661.js +0 -1
  88. package/src/legacy/tool-ui/src/main/webapp/dist/v5.d87bbcc711f912ae68db.css +0 -5
  89. /package/src/legacy/tool-ui/src/main/webapp/dist/{RTEProseMirror.ef21fd86df209b8f772b.js.LICENSE.txt → RTEProseMirror.f533e0166603af6cdd79.js.LICENSE.txt} +0 -0
  90. /package/src/legacy/tool-ui/src/main/webapp/dist/{v4.83bc23585a616647b793.js.LICENSE.txt → v4.a4e299758310db43579e.js.LICENSE.txt} +0 -0
  91. /package/src/legacy/tool-ui/src/main/webapp/dist/{v5.dae3cbc9fb1335ca0f1f.js.LICENSE.txt → v5.867287a6c5d4d25aa41b.js.LICENSE.txt} +0 -0
@@ -185,7 +185,8 @@ module.exports = plugin(
185
185
  lineHeight: fontSize[1],
186
186
  padding: `var(--badge-py) var(--badge-px)`,
187
187
  minWidth: size.minWidth,
188
- maxWidth: 'max-content',
188
+ flexShrink: '0',
189
+ maxWidth: 'fit-content',
189
190
  display: 'inline-flex',
190
191
  },
191
192
  })
@@ -91,8 +91,11 @@ module.exports = plugin(function ({ addComponents }) {
91
91
  fontWeight: '500',
92
92
  color: 'inherit',
93
93
  },
94
+ // The badge slot is the header's flex item, so it must not shrink.
94
95
  '.btu-message-badge': {
95
96
  display: 'inline-flex',
97
+ flexShrink: '0',
98
+ maxWidth: '100%',
96
99
  '&:empty': {
97
100
  display: 'none',
98
101
  },
@@ -1 +1 @@
1
- {"version":3,"file":"tailwind-plugin-message.js","sourceRoot":"","sources":["../src/tailwind-plugin-message.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tailwind-plugin-message.js","sourceRoot":"","sources":["../src/tailwind-plugin-message.ts"],"names":[],"mappings":"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"}
@@ -143,8 +143,11 @@ module.exports = plugin(function ({ addComponents }) {
143
143
  color: 'inherit',
144
144
  },
145
145
 
146
+ // The badge slot is the header's flex item, so it must not shrink.
146
147
  '.btu-message-badge': {
147
148
  display: 'inline-flex',
149
+ flexShrink: '0',
150
+ maxWidth: '100%',
148
151
  '&:empty': {
149
152
  display: 'none',
150
153
  },
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@brightspot/ui",
3
- "version": "6.4.2",
3
+ "version": "6.4.3-pr.366.2026.10.5-2",
4
4
  "type": "module",
5
5
  "license": "UNLICENSED",
6
6
  "description": "A UI library for building Brightspot CMS components.",
@@ -39,6 +39,13 @@
39
39
  .Conversation-reply-main {
40
40
  @apply grid grid-cols-[auto_minmax(0px,1fr)] grid-rows-[auto_1fr] gap-2 p-4 @container hover:bg-gray-50 [&:not(:last-child)]:border-b [&:not(:last-child)]:border-b-gray-200;
41
41
 
42
+ /* Shared Preview commenting uses a slightly stronger hover for clearer
43
+ affordance over the preview overlay; scoped so it doesn't restyle every
44
+ conversation in the CMS. */
45
+ .SharePreview & {
46
+ @apply hover:bg-gray-100;
47
+ }
48
+
42
49
  &.is-pinned {
43
50
  @apply bg-warning-25 hover:bg-warning-50;
44
51
 
@@ -101,7 +108,7 @@
101
108
  @apply col-span-full break-words text-sm text-gray-900 after:text-xs after:italic after:text-gray-500 [&[data-edited]]:after:[content:'_'_attr(data-edited)];
102
109
 
103
110
  a:has(img) {
104
- @apply mx-auto my-2 blokk max-w-fit rounded-lg rounded-ss-none border border-solid border-gray-200 bg-white px-3 py-2 hover:bg-gray-100;
111
+ @apply mx-auto my-2 max-w-fit rounded-lg rounded-ss-none border border-solid border-gray-200 bg-white px-3 py-2 blokk hover:bg-gray-100;
105
112
 
106
113
  img {
107
114
  @apply max-h-[50dvh] rounded-lg @lg:max-w-[75cqi];
@@ -222,7 +229,7 @@
222
229
  }
223
230
 
224
231
  .Conversation-pinned-list {
225
- @apply blokk max-h-[300px] overflow-y-auto;
232
+ @apply max-h-[300px] overflow-y-auto blokk;
226
233
  }
227
234
  }
228
235
  }
@@ -250,7 +257,11 @@
250
257
  }
251
258
 
252
259
  .Conversation-actionsToggle {
253
- @apply btu-button btu-button-text-hidden btu-button-fill-none btu-button-gray btu-button-xs bg-white before:btu-icon before:btu-icon-ellipsis touch-device:btu-button-sm before:btu-icon-md;
260
+ @apply btu-button btu-button-text-hidden btu-button-fill-none btu-button-gray btu-button-xs bg-white before:btu-icon before:btu-icon-ellipsis before:btu-icon-md touch-device:btu-button-sm;
261
+ }
262
+
263
+ .Conversation-viewSharedPreview {
264
+ @apply btu-button btu-button-text-hidden btu-button-fill-none btu-button-gray btu-button-xs bg-white before:btu-icon before:btu-icon-scan-eye touch-device:btu-button-sm;
254
265
  }
255
266
 
256
267
  .Conversation-resolve,
@@ -267,6 +267,9 @@ onFind('.Conversation-newPostButton', (button: HTMLElement): void => {
267
267
  body.append('fieldName', data.fieldName || '')
268
268
  body.append('contextual', data.contextual || 'false')
269
269
  body.append('overlayId', data.overlayId || '')
270
+ if (data.previewId) {
271
+ body.append('sharedPreviewId', data.previewId)
272
+ }
270
273
  }
271
274
 
272
275
  body.append('postsOnly', 'true')
@@ -10,6 +10,7 @@ import './ContentForm'
10
10
  import './ContentInputGroup'
11
11
  import './ContentSummary'
12
12
  import './Conversation'
13
+ import './SharePreviewCommenting'
13
14
  import './theme'
14
15
  import './dialog'
15
16
  import './Diff'
@@ -806,7 +807,7 @@ onFind('.Suggestions-list', (legacySuggestionsList: HTMLElement) => {
806
807
  hidden with CSS on the markup returned from the server (e.g., `display: none;` or a CSS
807
808
  class equivalent) and not hidden with JavaScript.
808
809
  */
809
- onVisible('.Deferred', (deferred) => {
810
+ onVisible('.Deferred', (deferred: HTMLElement) => {
810
811
  const parent = deferred.parentElement
811
812
  const template = deferred.querySelector(':scope > template')
812
813
  if (template instanceof HTMLTemplateElement && parent) {
@@ -817,7 +818,7 @@ onVisible('.Deferred', (deferred) => {
817
818
  // Trigger change events for all selects in the cloned content.
818
819
  parent
819
820
  .querySelectorAll('.CIG-row.StyleguidePreset-row .CIG-small > select')
820
- .forEach((select) => {
821
+ .forEach((select: Element) => {
821
822
  select.dispatchEvent(new CustomEvent('change', { bubbles: true }))
822
823
  })
823
824
 
@@ -826,7 +827,7 @@ onVisible('.Deferred', (deferred) => {
826
827
  .querySelectorAll(
827
828
  '.CIG-row.StyleguidePreset-row .CIG-small > input.objectId',
828
829
  )
829
- .forEach((input) => {
830
+ .forEach((input: Element) => {
830
831
  const row = input.closest('.CIG-row')
831
832
  row?.dispatchEvent(new CustomEvent('create', { bubbles: true }))
832
833
  })
@@ -1,6 +1,10 @@
1
1
  .SharePreview,
2
2
  .ViewMirror {
3
3
  @apply grid h-[100dvh] w-[100vw] bg-gray-50 [grid-template:"title_title"_auto_"type_controls"_auto_"content_content"_1fr_/_auto_1fr];
4
+
5
+ &.is-commenting-open {
6
+ @apply [grid-template:"title_title_title"_auto_"type_controls_panel"_auto_"banner_banner_panel"_auto_"content_content_panel"_1fr_/_auto_1fr_360px];
7
+ }
4
8
  }
5
9
 
6
10
  .SharePreview-title,
@@ -24,11 +28,83 @@
24
28
  @apply flex items-center gap-2;
25
29
  }
26
30
 
27
- @scope (.SharePreview, .ViewMirror) {
31
+ .SharePreview-panel {
32
+ @apply hidden flex-col border-l border-gray-200 bg-gray-50 [grid-area:panel];
33
+
34
+ .is-commenting-open & {
35
+ @apply flex;
36
+ }
37
+
38
+ /* Login widget inside the panel — reuse .Page-login visual styles without
39
+ the full-page layout rules (pt-45dvh, absolute positioning, etc.) */
40
+ .Page-login {
41
+ @apply p-6;
42
+
43
+ .inputLabel {
44
+ @apply text-sm font-semibold;
45
+ }
46
+
47
+ input[type] {
48
+ @apply w-full border-transparent bg-gray-100 focus:border-primary-600;
49
+ }
50
+
51
+ .ActionBar {
52
+ @apply justify-end border-none bg-transparent px-0;
53
+ }
54
+
55
+ > form .CIG-row {
56
+ @apply [grid-column:fullbleed-start/fullbleed-end];
57
+ }
58
+ }
59
+
60
+ .CIG-row::after {
61
+ @apply hidden;
62
+ }
63
+ }
64
+
65
+ .SharePreview-panel-header {
66
+ @apply btu-heading-5 flex shrink-0 items-center justify-between border-b border-gray-200 px-6 py-4 capitalize text-gray-900;
67
+ }
68
+
69
+ .SharePreview-panel-title {
70
+ @apply grow;
71
+ }
72
+
73
+ .SharePreview-conversation {
74
+ @apply flex min-h-0 grow flex-col;
75
+
76
+ /* Make the Conversation frame transparent to flex layout so its children
77
+ (Conversation-posts and Conversation-newPost) become direct flex items */
78
+ > .Conversation.frame {
79
+ @apply contents;
80
+ }
81
+
82
+ .Conversation-posts {
83
+ @apply min-h-0 grow overflow-y-auto;
84
+ }
85
+
86
+ .Widget-filters {
87
+ @apply px-4;
88
+ }
89
+ }
90
+
91
+ .SharePreview-toggle {
92
+ @apply before:btu-icon-message-circle;
93
+
94
+ &[aria-pressed='true'] {
95
+ @apply btu-button-pressed;
96
+ }
97
+ }
98
+
99
+ .SharePreview-panel-close {
100
+ @apply before:btu-icon-x;
101
+ }
102
+
103
+ .SharePreview,
104
+ .ViewMirror {
28
105
  & .PreviewFrame,
29
- .PreviewFrame-typeFrame,
30
- .PreviewFrame-typeControlsContainer,
31
- .PreviewFrame-typeControlsContainer > form {
106
+ & .PreviewFrame-typeFrame,
107
+ & .PreviewFrame-typeControlsContainer {
32
108
  @apply contents;
33
109
  }
34
110
 
@@ -42,6 +118,9 @@
42
118
  + .PreviewFrame-typeFrame
43
119
  .PreviewFrame-iFrameControlsForm {
44
120
  @apply col-span-full ps-6;
121
+ & .IconButton.SharePreview-toggle {
122
+ @apply ms-auto;
123
+ }
45
124
  }
46
125
 
47
126
  & .PreviewFrame-typeDisplay {
@@ -69,3 +148,129 @@
69
148
  @apply max-w-[25dvw];
70
149
  }
71
150
  }
151
+
152
+ /* ─── Commenting mode banner ──────────────────────────────────────────────── */
153
+
154
+ .SharePreview-commentingBanner {
155
+ @apply hidden [grid-area:banner];
156
+
157
+ .is-commenting-open & {
158
+ @apply flex;
159
+ }
160
+ }
161
+
162
+ /* ─── Click overlay iframe ───────────────────────────────────────────────── */
163
+ /* A same-origin about:blank iframe that sits above the cross-origin preview
164
+ iframe. When commenting is open it captures wheel (forwarded as ScrollBy
165
+ postMessage) and click (triggers pin placement) events. */
166
+
167
+ .SharePreview-clickOverlay {
168
+ @apply pointer-events-none absolute inset-0 z-10;
169
+
170
+ .is-commenting-open & {
171
+ @apply pointer-events-auto cursor-crosshair;
172
+ }
173
+ }
174
+
175
+ /* ─── Pin overlay ────────────────────────────────────────────────────────── */
176
+ /* Always pointer-events-none; sits above the click overlay so pin buttons
177
+ (which have pointer-events:auto) are still clickable. */
178
+
179
+ .SharePreview-pinsOverlay {
180
+ @apply pointer-events-none invisible absolute inset-0 z-20 overflow-hidden;
181
+
182
+ /* Pins only show while commenting is open; invisible (not display:none) keeps the overlay
183
+ laid out so pin positions stay correct and reappear on reopen. */
184
+ .is-commenting-open & {
185
+ @apply visible;
186
+ }
187
+ }
188
+
189
+ /* ─── Individual pin bubbles ─────────────────────────────────────────────── */
190
+
191
+ .SharePreview-pin {
192
+ @apply pointer-events-auto absolute flex h-8 w-8 -translate-x-1/2 -translate-y-1/2 cursor-pointer select-none items-center justify-center rounded-full text-xs font-bold text-white shadow-md ring-2 ring-white transition-transform focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2;
193
+
194
+ &.is-active {
195
+ @apply scale-125 ring-4;
196
+ }
197
+ }
198
+
199
+ .SharePreview-pin--placeholder {
200
+ @apply pointer-events-none bg-primary-100 ring-primary-700;
201
+ }
202
+
203
+ /* 8 distinct avatar colors — index matches colorIndex from the server.
204
+ The white ring comes from the base .SharePreview-pin rule. */
205
+ .SharePreview-pin--color0 {
206
+ @apply bg-primary-600;
207
+ }
208
+ .SharePreview-pin--color1 {
209
+ @apply bg-purple-600;
210
+ }
211
+ .SharePreview-pin--color2 {
212
+ @apply bg-teal-500;
213
+ }
214
+ .SharePreview-pin--color3 {
215
+ @apply bg-success-500;
216
+ }
217
+ .SharePreview-pin--color4 {
218
+ @apply bg-warning-500;
219
+ }
220
+ .SharePreview-pin--color5 {
221
+ @apply bg-error-600;
222
+ }
223
+ .SharePreview-pin--color6 {
224
+ @apply bg-purple-400;
225
+ }
226
+ .SharePreview-pin--color7 {
227
+ @apply bg-primary-800;
228
+ }
229
+
230
+ /* ─── Panel post active highlight (from pin click) ──────────────────────── */
231
+
232
+ .Conversation-post.is-pin-active {
233
+ @apply ring-2 ring-inset ring-primary-400 transition-shadow duration-300;
234
+ }
235
+
236
+ /* ─── Pin placement popover ─────────────────────────────────────────────── */
237
+
238
+ .SharePreview-pinPopover {
239
+ @apply fixed z-[200] flex w-[360px] max-w-[calc(100vw-24px)] flex-col gap-2 rounded-lg border border-gray-200 bg-white p-3 shadow-xl;
240
+
241
+ /* Positioned by Tether relative to the placeholder pin; mirrors the Popup tether contract
242
+ (RTL is resolved in TetherLayout, so left/right map directly to the --Tether-* vars). */
243
+ &[data-tether-rx='l'] {
244
+ @apply left-[--Tether-rl] right-auto;
245
+ }
246
+
247
+ &[data-tether-rx='r'] {
248
+ @apply left-auto right-[calc(100vw-var(--Tether-rl)-var(--Tether-rw))];
249
+ }
250
+
251
+ &[data-tether-ry='t'] {
252
+ @apply bottom-auto top-[calc(var(--Tether-rt)+var(--Tether-rh))];
253
+ }
254
+
255
+ &[data-tether-ry='b'] {
256
+ @apply bottom-[calc(100dvh-var(--Tether-rt))] top-auto;
257
+ }
258
+
259
+ .SharePreview-pinPopover-input {
260
+ @apply w-full resize-none rounded border border-gray-200 bg-gray-50 p-2 text-sm focus:border-primary-600 focus:bg-white focus:outline-none;
261
+ }
262
+
263
+ /* Host for the cloned conversation rich-text editor. The padding gives the editor's blue focus
264
+ halo (ProseMirrorContainer ring-4) room to render — overflow-y-auto would otherwise clip it. */
265
+ .SharePreview-pinPopover-editor {
266
+ @apply max-h-[40dvh] overflow-y-auto p-1.5;
267
+ }
268
+
269
+ .SharePreview-pinPopover-actions {
270
+ @apply flex justify-end gap-2;
271
+ }
272
+
273
+ .SharePreview-pinPopover-submit.Button {
274
+ @apply bg-primary-700 text-white;
275
+ }
276
+ }