@cratis/components 4.19.1 → 4.20.0

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 (738) hide show
  1. package/README.md +2 -2
  2. package/compat-manifest.json +11 -11
  3. package/dist/esm/Canvas/Canvas.d.ts +1 -0
  4. package/dist/esm/Canvas/Canvas.d.ts.map +1 -0
  5. package/dist/esm/Canvas/Canvas.js.map +1 -1
  6. package/dist/esm/Canvas/CanvasControls.d.ts +1 -0
  7. package/dist/esm/Canvas/CanvasControls.d.ts.map +1 -0
  8. package/dist/esm/Canvas/CanvasControls.js.map +1 -1
  9. package/dist/esm/Canvas/CanvasItem.js.map +1 -1
  10. package/dist/esm/Canvas/CanvasMinimap.js.map +1 -1
  11. package/dist/esm/Canvas/CanvasOverlay.js.map +1 -1
  12. package/dist/esm/Canvas/canvasGesture.js.map +1 -1
  13. package/dist/esm/Canvas/canvasTransformActivity.js.map +1 -1
  14. package/dist/esm/Canvas/index.d.ts +1 -0
  15. package/dist/esm/Canvas/index.d.ts.map +1 -0
  16. package/dist/esm/Canvas/isBackgroundPointerTarget.js.map +1 -1
  17. package/dist/esm/Canvas/isWithinScrollableContent.js.map +1 -1
  18. package/dist/esm/Canvas/panMomentum.js.map +1 -1
  19. package/dist/esm/Canvas/pinchGesture.js.map +1 -1
  20. package/dist/esm/Canvas/selfSuspendingFrameLoop.js.map +1 -1
  21. package/dist/esm/Canvas/shapes/ChatBubble/index.d.ts +1 -0
  22. package/dist/esm/Canvas/shapes/ChatBubble/index.d.ts.map +1 -0
  23. package/dist/esm/Canvas/shapes/ChatBubble/index.js +1 -0
  24. package/dist/esm/Canvas/shapes/ChatBubble/index.js.map +1 -0
  25. package/dist/esm/Canvas/shapes/Note/Note.js.map +1 -1
  26. package/dist/esm/Canvas/shapes/Note/NoteTextChanged.js.map +1 -1
  27. package/dist/esm/Canvas/shapes/Note/index.d.ts +1 -0
  28. package/dist/esm/Canvas/shapes/Note/index.d.ts.map +1 -0
  29. package/dist/esm/Canvas/shapes/Note/index.js +1 -0
  30. package/dist/esm/Canvas/shapes/Note/index.js.map +1 -0
  31. package/dist/esm/Canvas/shapes/Note/noteFont.js.map +1 -1
  32. package/dist/esm/Canvas/shapes/Region/ItemAddedToRegion.js.map +1 -1
  33. package/dist/esm/Canvas/shapes/Region/ItemRemovedFromRegion.js.map +1 -1
  34. package/dist/esm/Canvas/shapes/Region/Region.js.map +1 -1
  35. package/dist/esm/Canvas/shapes/Region/index.d.ts +1 -0
  36. package/dist/esm/Canvas/shapes/Region/index.d.ts.map +1 -0
  37. package/dist/esm/Canvas/shapes/Region/index.js +1 -0
  38. package/dist/esm/Canvas/shapes/Region/index.js.map +1 -0
  39. package/dist/esm/Canvas/shapes/Region/regionContainment.js.map +1 -1
  40. package/dist/esm/Canvas/useDragSelectionGuard.js.map +1 -1
  41. package/dist/esm/Canvas/zoomMechanism.js.map +1 -1
  42. package/dist/esm/Chat/ChatAuthor.d.ts +1 -0
  43. package/dist/esm/Chat/ChatAuthor.d.ts.map +1 -0
  44. package/dist/esm/Chat/ChatAuthor.js.map +1 -1
  45. package/dist/esm/Chat/ChatConversation.d.ts +1 -0
  46. package/dist/esm/Chat/ChatConversation.d.ts.map +1 -0
  47. package/dist/esm/Chat/ChatConversation.js.map +1 -1
  48. package/dist/esm/Chat/ChatIdentifier.js.map +1 -1
  49. package/dist/esm/Chat/ChatMention.d.ts +1 -0
  50. package/dist/esm/Chat/ChatMention.d.ts.map +1 -0
  51. package/dist/esm/Chat/ChatMention.js.map +1 -1
  52. package/dist/esm/Chat/ChatMessage.d.ts +1 -0
  53. package/dist/esm/Chat/ChatMessage.d.ts.map +1 -0
  54. package/dist/esm/Chat/ChatMessage.js.map +1 -1
  55. package/dist/esm/Chat/ChatMessageAction.d.ts +1 -0
  56. package/dist/esm/Chat/ChatMessageAction.d.ts.map +1 -0
  57. package/dist/esm/Chat/ChatMessageAction.js.map +1 -1
  58. package/dist/esm/Chat/ChatMessageBody.d.ts +1 -0
  59. package/dist/esm/Chat/ChatMessageBody.d.ts.map +1 -0
  60. package/dist/esm/Chat/ChatMessageBody.js.map +1 -1
  61. package/dist/esm/Chat/ChatSidebar.d.ts +5 -1
  62. package/dist/esm/Chat/ChatSidebar.d.ts.map +1 -0
  63. package/dist/esm/Chat/ChatSidebar.js +2 -2
  64. package/dist/esm/Chat/ChatSidebar.js.map +1 -1
  65. package/dist/esm/Chat/ChatSidebarForObservableQueries.d.ts +1 -0
  66. package/dist/esm/Chat/ChatSidebarForObservableQueries.d.ts.map +1 -0
  67. package/dist/esm/Chat/ChatSidebarForObservableQueries.js.map +1 -1
  68. package/dist/esm/Chat/ChatStatus.js.map +1 -1
  69. package/dist/esm/Chat/ChatTopic.d.ts +1 -0
  70. package/dist/esm/Chat/ChatTopic.d.ts.map +1 -0
  71. package/dist/esm/Chat/ChatTopic.js.map +1 -1
  72. package/dist/esm/Chat/ChatTopicAction.d.ts +23 -0
  73. package/dist/esm/Chat/ChatTopicAction.d.ts.map +1 -0
  74. package/dist/esm/Chat/ChatTopicAction.js +4 -0
  75. package/dist/esm/Chat/ChatTopicAction.js.map +1 -0
  76. package/dist/esm/Chat/ChatTopicActions.d.ts +25 -0
  77. package/dist/esm/Chat/ChatTopicActions.d.ts.map +1 -0
  78. package/dist/esm/Chat/ChatTopicActions.js +6 -0
  79. package/dist/esm/Chat/ChatTopicActions.js.map +1 -0
  80. package/dist/esm/Chat/ChatTopicList.d.ts +6 -2
  81. package/dist/esm/Chat/ChatTopicList.d.ts.map +1 -0
  82. package/dist/esm/Chat/ChatTopicList.js +17 -9
  83. package/dist/esm/Chat/ChatTopicList.js.map +1 -1
  84. package/dist/esm/Chat/Kit/AnchoredOverlay.js.map +1 -1
  85. package/dist/esm/Chat/Kit/Avatar/PersonAvatarCircle.js.map +1 -1
  86. package/dist/esm/Chat/Kit/Avatar/getAvatarColor.js.map +1 -1
  87. package/dist/esm/Chat/Kit/Avatar/getInitials.js.map +1 -1
  88. package/dist/esm/Chat/Kit/Avatar/index.d.ts +1 -0
  89. package/dist/esm/Chat/Kit/Avatar/index.d.ts.map +1 -0
  90. package/dist/esm/Chat/Kit/Avatar/index.js +1 -0
  91. package/dist/esm/Chat/Kit/Avatar/index.js.map +1 -0
  92. package/dist/esm/Chat/Kit/Chat.d.ts +1 -0
  93. package/dist/esm/Chat/Kit/Chat.d.ts.map +1 -0
  94. package/dist/esm/Chat/Kit/Chat.js.map +1 -1
  95. package/dist/esm/Chat/Kit/ChatAuthorKind.js.map +1 -1
  96. package/dist/esm/Chat/Kit/ChatBubble.d.ts +1 -0
  97. package/dist/esm/Chat/Kit/ChatBubble.d.ts.map +1 -0
  98. package/dist/esm/Chat/Kit/ChatBubble.js.map +1 -1
  99. package/dist/esm/Chat/Kit/ChatComposer.d.ts +1 -0
  100. package/dist/esm/Chat/Kit/ChatComposer.d.ts.map +1 -0
  101. package/dist/esm/Chat/Kit/ChatComposer.js.map +1 -1
  102. package/dist/esm/Chat/Kit/ChatMessage.d.ts +1 -0
  103. package/dist/esm/Chat/Kit/ChatMessage.d.ts.map +1 -0
  104. package/dist/esm/Chat/Kit/ChatMessage.js.map +1 -1
  105. package/dist/esm/Chat/Kit/ChatMessageAdded.js.map +1 -1
  106. package/dist/esm/Chat/Kit/ChatMessageBubble.d.ts +1 -0
  107. package/dist/esm/Chat/Kit/ChatMessageBubble.d.ts.map +1 -0
  108. package/dist/esm/Chat/Kit/ChatMessageBubble.js.map +1 -1
  109. package/dist/esm/Chat/Kit/ChatMessageReaction.d.ts +1 -0
  110. package/dist/esm/Chat/Kit/ChatMessageReaction.d.ts.map +1 -0
  111. package/dist/esm/Chat/Kit/ChatMessageReaction.js.map +1 -1
  112. package/dist/esm/Chat/Kit/ChatMessageReactionUser.js.map +1 -1
  113. package/dist/esm/Chat/Kit/ChatOwnReaction.js.map +1 -1
  114. package/dist/esm/Chat/Kit/ChatTypingAuthor.d.ts +1 -0
  115. package/dist/esm/Chat/Kit/ChatTypingAuthor.d.ts.map +1 -0
  116. package/dist/esm/Chat/Kit/ChatTypingAuthor.js.map +1 -1
  117. package/dist/esm/Chat/Kit/ChatVariant.js.map +1 -1
  118. package/dist/esm/Chat/Kit/Emoji/EmojiCategory.d.ts +1 -0
  119. package/dist/esm/Chat/Kit/Emoji/EmojiCategory.d.ts.map +1 -0
  120. package/dist/esm/Chat/Kit/Emoji/EmojiCategory.js.map +1 -1
  121. package/dist/esm/Chat/Kit/Emoji/EmojiCategoryKey.js.map +1 -1
  122. package/dist/esm/Chat/Kit/Emoji/EmojiMemory.js.map +1 -1
  123. package/dist/esm/Chat/Kit/Emoji/EmojiPicker.d.ts +1 -0
  124. package/dist/esm/Chat/Kit/Emoji/EmojiPicker.d.ts.map +1 -0
  125. package/dist/esm/Chat/Kit/Emoji/EmojiPicker.js.map +1 -1
  126. package/dist/esm/Chat/Kit/Emoji/emojiCatalog.d.ts +1 -0
  127. package/dist/esm/Chat/Kit/Emoji/emojiCatalog.d.ts.map +1 -0
  128. package/dist/esm/Chat/Kit/Emoji/emojiCatalog.js.map +1 -1
  129. package/dist/esm/Chat/Kit/Emoji/index.d.ts +1 -0
  130. package/dist/esm/Chat/Kit/Emoji/index.d.ts.map +1 -0
  131. package/dist/esm/Chat/Kit/Emoji/index.js +1 -0
  132. package/dist/esm/Chat/Kit/Emoji/index.js.map +1 -0
  133. package/dist/esm/Chat/Kit/Emoji/recentEmojis.d.ts +1 -0
  134. package/dist/esm/Chat/Kit/Emoji/recentEmojis.d.ts.map +1 -0
  135. package/dist/esm/Chat/Kit/Emoji/recentEmojis.js.map +1 -1
  136. package/dist/esm/Chat/Kit/FailedReply.d.ts +1 -0
  137. package/dist/esm/Chat/Kit/FailedReply.d.ts.map +1 -0
  138. package/dist/esm/Chat/Kit/FailedReply.js.map +1 -1
  139. package/dist/esm/Chat/Kit/Mentions/MentionCandidate.d.ts +1 -0
  140. package/dist/esm/Chat/Kit/Mentions/MentionCandidate.d.ts.map +1 -0
  141. package/dist/esm/Chat/Kit/Mentions/MentionCandidate.js.map +1 -1
  142. package/dist/esm/Chat/Kit/Mentions/MentionQuery.js.map +1 -1
  143. package/dist/esm/Chat/Kit/Mentions/MentionSuggestions.d.ts +1 -0
  144. package/dist/esm/Chat/Kit/Mentions/MentionSuggestions.d.ts.map +1 -0
  145. package/dist/esm/Chat/Kit/Mentions/MentionSuggestions.js.map +1 -1
  146. package/dist/esm/Chat/Kit/Mentions/activeMentionQuery.d.ts +1 -0
  147. package/dist/esm/Chat/Kit/Mentions/activeMentionQuery.d.ts.map +1 -0
  148. package/dist/esm/Chat/Kit/Mentions/activeMentionQuery.js.map +1 -1
  149. package/dist/esm/Chat/Kit/Mentions/applyMention.d.ts +1 -0
  150. package/dist/esm/Chat/Kit/Mentions/applyMention.d.ts.map +1 -0
  151. package/dist/esm/Chat/Kit/Mentions/applyMention.js.map +1 -1
  152. package/dist/esm/Chat/Kit/Mentions/extractMentions.js.map +1 -1
  153. package/dist/esm/Chat/Kit/Mentions/findMentionRanges.js.map +1 -1
  154. package/dist/esm/Chat/Kit/Mentions/index.d.ts +1 -0
  155. package/dist/esm/Chat/Kit/Mentions/index.d.ts.map +1 -0
  156. package/dist/esm/Chat/Kit/Mentions/index.js +1 -0
  157. package/dist/esm/Chat/Kit/Mentions/index.js.map +1 -0
  158. package/dist/esm/Chat/Kit/Mentions/matchCandidates.d.ts +1 -0
  159. package/dist/esm/Chat/Kit/Mentions/matchCandidates.d.ts.map +1 -0
  160. package/dist/esm/Chat/Kit/Mentions/matchCandidates.js.map +1 -1
  161. package/dist/esm/Chat/Kit/Mentions/mentionSegments.js.map +1 -1
  162. package/dist/esm/Chat/Kit/MessageReactions.d.ts +1 -0
  163. package/dist/esm/Chat/Kit/MessageReactions.d.ts.map +1 -0
  164. package/dist/esm/Chat/Kit/MessageReactions.js.map +1 -1
  165. package/dist/esm/Chat/Kit/ReactionPicker.d.ts +1 -0
  166. package/dist/esm/Chat/Kit/ReactionPicker.d.ts.map +1 -0
  167. package/dist/esm/Chat/Kit/ReactionPicker.js.map +1 -1
  168. package/dist/esm/Chat/Kit/TypingIndicator.d.ts +1 -0
  169. package/dist/esm/Chat/Kit/TypingIndicator.d.ts.map +1 -0
  170. package/dist/esm/Chat/Kit/TypingIndicator.js.map +1 -1
  171. package/dist/esm/Chat/Kit/findOwnReaction.d.ts +1 -0
  172. package/dist/esm/Chat/Kit/findOwnReaction.d.ts.map +1 -0
  173. package/dist/esm/Chat/Kit/findOwnReaction.js.map +1 -1
  174. package/dist/esm/Chat/Kit/index.d.ts +1 -0
  175. package/dist/esm/Chat/Kit/index.d.ts.map +1 -0
  176. package/dist/esm/Chat/Kit/index.js +1 -0
  177. package/dist/esm/Chat/Kit/index.js.map +1 -0
  178. package/dist/esm/Chat/Kit/reactionsExcludingUser.d.ts +1 -0
  179. package/dist/esm/Chat/Kit/reactionsExcludingUser.d.ts.map +1 -0
  180. package/dist/esm/Chat/Kit/reactionsExcludingUser.js.map +1 -1
  181. package/dist/esm/Chat/index.d.ts +2 -0
  182. package/dist/esm/Chat/index.d.ts.map +1 -0
  183. package/dist/esm/Chat/isTopicUnnamed.d.ts +1 -0
  184. package/dist/esm/Chat/isTopicUnnamed.d.ts.map +1 -0
  185. package/dist/esm/Chat/isTopicUnnamed.js.map +1 -1
  186. package/dist/esm/Chat/relativeTimestamp.js.map +1 -1
  187. package/dist/esm/Chat/shouldRequestTopicName.js.map +1 -1
  188. package/dist/esm/Chat/topicsByActivity.d.ts +1 -0
  189. package/dist/esm/Chat/topicsByActivity.d.ts.map +1 -0
  190. package/dist/esm/Chat/topicsByActivity.js.map +1 -1
  191. package/dist/esm/Chat/useTopicActionFocusRecovery.d.ts +19 -0
  192. package/dist/esm/Chat/useTopicActionFocusRecovery.d.ts.map +1 -0
  193. package/dist/esm/Chat/useTopicActionFocusRecovery.js +41 -0
  194. package/dist/esm/Chat/useTopicActionFocusRecovery.js.map +1 -0
  195. package/dist/esm/CommandDialog/CommandDialog.d.ts +1 -0
  196. package/dist/esm/CommandDialog/CommandDialog.d.ts.map +1 -0
  197. package/dist/esm/CommandDialog/CommandDialog.js.map +1 -1
  198. package/dist/esm/CommandDialog/CommandStepper.d.ts +1 -0
  199. package/dist/esm/CommandDialog/CommandStepper.d.ts.map +1 -0
  200. package/dist/esm/CommandDialog/CommandStepper.js.map +1 -1
  201. package/dist/esm/CommandDialog/CommandStepperContent.d.ts +1 -0
  202. package/dist/esm/CommandDialog/CommandStepperContent.d.ts.map +1 -0
  203. package/dist/esm/CommandDialog/CommandStepperContent.js.map +1 -1
  204. package/dist/esm/CommandDialog/StepperCommandDialog.d.ts +1 -0
  205. package/dist/esm/CommandDialog/StepperCommandDialog.d.ts.map +1 -0
  206. package/dist/esm/CommandDialog/StepperCommandDialog.js.map +1 -1
  207. package/dist/esm/CommandDialog/StepperPanel.js.map +1 -1
  208. package/dist/esm/CommandDialog/applyBeforeExecute.js.map +1 -1
  209. package/dist/esm/CommandDialog/commandValuesUnchanged.js.map +1 -1
  210. package/dist/esm/CommandDialog/confirmBeforeExecute.js.map +1 -1
  211. package/dist/esm/CommandDialog/index.d.ts +1 -0
  212. package/dist/esm/CommandDialog/index.d.ts.map +1 -0
  213. package/dist/esm/CommandDialog/stepChildren.js.map +1 -1
  214. package/dist/esm/CommandDialog/transitionStep.d.ts +1 -0
  215. package/dist/esm/CommandDialog/transitionStep.d.ts.map +1 -0
  216. package/dist/esm/CommandDialog/transitionStep.js.map +1 -1
  217. package/dist/esm/CommandDialog/useCommandExecution.d.ts +1 -0
  218. package/dist/esm/CommandDialog/useCommandExecution.d.ts.map +1 -0
  219. package/dist/esm/CommandDialog/useCommandExecution.js.map +1 -1
  220. package/dist/esm/CommandDialog/useSubmissionFlight.js.map +1 -1
  221. package/dist/esm/CommandForm/AutoCommandForm.js.map +1 -1
  222. package/dist/esm/CommandForm/FieldTypeProvider.js.map +1 -1
  223. package/dist/esm/CommandForm/commandFormMarkers.js.map +1 -1
  224. package/dist/esm/CommandForm/defaultFieldTypeProviders.js.map +1 -1
  225. package/dist/esm/CommandForm/fieldTypeProviderRegistry.d.ts +1 -0
  226. package/dist/esm/CommandForm/fieldTypeProviderRegistry.d.ts.map +1 -0
  227. package/dist/esm/CommandForm/fieldTypeProviderRegistry.js.map +1 -1
  228. package/dist/esm/CommandForm/fields/CalendarField.d.ts +1 -0
  229. package/dist/esm/CommandForm/fields/CalendarField.d.ts.map +1 -0
  230. package/dist/esm/CommandForm/fields/CalendarField.js.map +1 -1
  231. package/dist/esm/CommandForm/fields/CheckboxField.d.ts +1 -0
  232. package/dist/esm/CommandForm/fields/CheckboxField.d.ts.map +1 -0
  233. package/dist/esm/CommandForm/fields/CheckboxField.js.map +1 -1
  234. package/dist/esm/CommandForm/fields/ChipsField.d.ts +1 -0
  235. package/dist/esm/CommandForm/fields/ChipsField.d.ts.map +1 -0
  236. package/dist/esm/CommandForm/fields/ChipsField.js.map +1 -1
  237. package/dist/esm/CommandForm/fields/ColorPickerField.d.ts +1 -0
  238. package/dist/esm/CommandForm/fields/ColorPickerField.d.ts.map +1 -0
  239. package/dist/esm/CommandForm/fields/ColorPickerField.js.map +1 -1
  240. package/dist/esm/CommandForm/fields/DropdownField.d.ts +1 -0
  241. package/dist/esm/CommandForm/fields/DropdownField.d.ts.map +1 -0
  242. package/dist/esm/CommandForm/fields/DropdownField.js.map +1 -1
  243. package/dist/esm/CommandForm/fields/InputTextField.d.ts +1 -0
  244. package/dist/esm/CommandForm/fields/InputTextField.d.ts.map +1 -0
  245. package/dist/esm/CommandForm/fields/InputTextField.js.map +1 -1
  246. package/dist/esm/CommandForm/fields/MultiSelectField.d.ts +1 -0
  247. package/dist/esm/CommandForm/fields/MultiSelectField.d.ts.map +1 -0
  248. package/dist/esm/CommandForm/fields/MultiSelectField.js.map +1 -1
  249. package/dist/esm/CommandForm/fields/NumberField.d.ts +1 -0
  250. package/dist/esm/CommandForm/fields/NumberField.d.ts.map +1 -0
  251. package/dist/esm/CommandForm/fields/NumberField.js.map +1 -1
  252. package/dist/esm/CommandForm/fields/NumberInputField.d.ts +1 -0
  253. package/dist/esm/CommandForm/fields/NumberInputField.d.ts.map +1 -0
  254. package/dist/esm/CommandForm/fields/NumberInputField.js.map +1 -1
  255. package/dist/esm/CommandForm/fields/PasswordField.d.ts +1 -0
  256. package/dist/esm/CommandForm/fields/PasswordField.d.ts.map +1 -0
  257. package/dist/esm/CommandForm/fields/PasswordField.js.map +1 -1
  258. package/dist/esm/CommandForm/fields/RadioButtonField.d.ts +1 -0
  259. package/dist/esm/CommandForm/fields/RadioButtonField.d.ts.map +1 -0
  260. package/dist/esm/CommandForm/fields/RadioButtonField.js.map +1 -1
  261. package/dist/esm/CommandForm/fields/RadioGroupField.d.ts +1 -0
  262. package/dist/esm/CommandForm/fields/RadioGroupField.d.ts.map +1 -0
  263. package/dist/esm/CommandForm/fields/RadioGroupField.js.map +1 -1
  264. package/dist/esm/CommandForm/fields/RatingField.d.ts +1 -0
  265. package/dist/esm/CommandForm/fields/RatingField.d.ts.map +1 -0
  266. package/dist/esm/CommandForm/fields/RatingField.js.map +1 -1
  267. package/dist/esm/CommandForm/fields/SliderField.d.ts +1 -0
  268. package/dist/esm/CommandForm/fields/SliderField.d.ts.map +1 -0
  269. package/dist/esm/CommandForm/fields/SliderField.js.map +1 -1
  270. package/dist/esm/CommandForm/fields/TextAreaField.d.ts +1 -0
  271. package/dist/esm/CommandForm/fields/TextAreaField.d.ts.map +1 -0
  272. package/dist/esm/CommandForm/fields/TextAreaField.js.map +1 -1
  273. package/dist/esm/CommandForm/fields/ToggleSwitchField.d.ts +1 -0
  274. package/dist/esm/CommandForm/fields/ToggleSwitchField.d.ts.map +1 -0
  275. package/dist/esm/CommandForm/fields/ToggleSwitchField.js.map +1 -1
  276. package/dist/esm/CommandForm/fields/chipValues.js.map +1 -1
  277. package/dist/esm/CommandForm/fields/fieldAccessibility.js.map +1 -1
  278. package/dist/esm/CommandForm/fields/fieldValueFromEvent.js.map +1 -1
  279. package/dist/esm/CommandForm/fields/index.d.ts +1 -0
  280. package/dist/esm/CommandForm/fields/index.d.ts.map +1 -0
  281. package/dist/esm/CommandForm/fields/index.js +1 -0
  282. package/dist/esm/CommandForm/fields/index.js.map +1 -0
  283. package/dist/esm/CommandForm/index.d.ts +1 -0
  284. package/dist/esm/CommandForm/index.d.ts.map +1 -0
  285. package/dist/esm/Common/ActionMenubar.d.ts +1 -0
  286. package/dist/esm/Common/ActionMenubar.d.ts.map +1 -0
  287. package/dist/esm/Common/ActionMenubar.js.map +1 -1
  288. package/dist/esm/Common/Breadcrumbs.js.map +1 -1
  289. package/dist/esm/Common/Button.d.ts +1 -0
  290. package/dist/esm/Common/Button.d.ts.map +1 -0
  291. package/dist/esm/Common/Button.js.map +1 -1
  292. package/dist/esm/Common/ButtonImplementation.d.ts +1 -0
  293. package/dist/esm/Common/ButtonImplementation.d.ts.map +1 -0
  294. package/dist/esm/Common/ButtonImplementation.js.map +1 -1
  295. package/dist/esm/Common/Checkbox.d.ts +1 -0
  296. package/dist/esm/Common/Checkbox.d.ts.map +1 -0
  297. package/dist/esm/Common/Checkbox.js.map +1 -1
  298. package/dist/esm/Common/CheckboxImplementation.d.ts +1 -0
  299. package/dist/esm/Common/CheckboxImplementation.d.ts.map +1 -0
  300. package/dist/esm/Common/CheckboxImplementation.js.map +1 -1
  301. package/dist/esm/Common/ComboBox.js.map +1 -1
  302. package/dist/esm/Common/CratisComponentsProvider.d.ts +1 -0
  303. package/dist/esm/Common/CratisComponentsProvider.d.ts.map +1 -0
  304. package/dist/esm/Common/CratisComponentsProvider.js.map +1 -1
  305. package/dist/esm/Common/DatePickerInput.d.ts +1 -0
  306. package/dist/esm/Common/DatePickerInput.d.ts.map +1 -0
  307. package/dist/esm/Common/DatePickerInput.js.map +1 -1
  308. package/dist/esm/Common/DatePickerInputImplementation.d.ts +1 -0
  309. package/dist/esm/Common/DatePickerInputImplementation.d.ts.map +1 -0
  310. package/dist/esm/Common/DatePickerInputImplementation.js.map +1 -1
  311. package/dist/esm/Common/ErrorBoundary.js.map +1 -1
  312. package/dist/esm/Common/FormElement.js.map +1 -1
  313. package/dist/esm/Common/Icon.js.map +1 -1
  314. package/dist/esm/Common/IconButton.d.ts +1 -0
  315. package/dist/esm/Common/IconButton.d.ts.map +1 -0
  316. package/dist/esm/Common/IconButton.js.map +1 -1
  317. package/dist/esm/Common/IconButtonImplementation.d.ts +1 -0
  318. package/dist/esm/Common/IconButtonImplementation.d.ts.map +1 -0
  319. package/dist/esm/Common/IconButtonImplementation.js.map +1 -1
  320. package/dist/esm/Common/NumberInput.d.ts +1 -0
  321. package/dist/esm/Common/NumberInput.d.ts.map +1 -0
  322. package/dist/esm/Common/NumberInput.js.map +1 -1
  323. package/dist/esm/Common/NumberInputCommitReason.js.map +1 -1
  324. package/dist/esm/Common/NumberInputPartAttributes.js.map +1 -1
  325. package/dist/esm/Common/Page.js.map +1 -1
  326. package/dist/esm/Common/Radio.d.ts +1 -0
  327. package/dist/esm/Common/Radio.d.ts.map +1 -0
  328. package/dist/esm/Common/Radio.js.map +1 -1
  329. package/dist/esm/Common/RadioImplementation.d.ts +1 -0
  330. package/dist/esm/Common/RadioImplementation.d.ts.map +1 -0
  331. package/dist/esm/Common/RadioImplementation.js.map +1 -1
  332. package/dist/esm/Common/Surface.js.map +1 -1
  333. package/dist/esm/Common/SurfaceImplementation.d.ts +1 -0
  334. package/dist/esm/Common/SurfaceImplementation.d.ts.map +1 -0
  335. package/dist/esm/Common/SurfaceImplementation.js.map +1 -1
  336. package/dist/esm/Common/Switch.d.ts +1 -0
  337. package/dist/esm/Common/Switch.d.ts.map +1 -0
  338. package/dist/esm/Common/Switch.js.map +1 -1
  339. package/dist/esm/Common/SwitchImplementation.d.ts +1 -0
  340. package/dist/esm/Common/SwitchImplementation.d.ts.map +1 -0
  341. package/dist/esm/Common/SwitchImplementation.js.map +1 -1
  342. package/dist/esm/Common/Tabs.js.map +1 -1
  343. package/dist/esm/Common/TagGroup.js.map +1 -1
  344. package/dist/esm/Common/TextArea.d.ts +1 -0
  345. package/dist/esm/Common/TextArea.d.ts.map +1 -0
  346. package/dist/esm/Common/TextArea.js.map +1 -1
  347. package/dist/esm/Common/TextAreaImplementation.d.ts +1 -0
  348. package/dist/esm/Common/TextAreaImplementation.d.ts.map +1 -0
  349. package/dist/esm/Common/TextAreaImplementation.js.map +1 -1
  350. package/dist/esm/Common/TextInput.d.ts +1 -0
  351. package/dist/esm/Common/TextInput.d.ts.map +1 -0
  352. package/dist/esm/Common/TextInput.js.map +1 -1
  353. package/dist/esm/Common/TextInputImplementation.d.ts +1 -0
  354. package/dist/esm/Common/TextInputImplementation.d.ts.map +1 -0
  355. package/dist/esm/Common/TextInputImplementation.js.map +1 -1
  356. package/dist/esm/Common/ToggleGroup.js.map +1 -1
  357. package/dist/esm/Common/ToolbarFocusMode.js.map +1 -1
  358. package/dist/esm/Common/Tooltip.js.map +1 -1
  359. package/dist/esm/Common/TooltipImplementation.d.ts +1 -0
  360. package/dist/esm/Common/TooltipImplementation.d.ts.map +1 -0
  361. package/dist/esm/Common/TooltipImplementation.js.map +1 -1
  362. package/dist/esm/Common/index.d.ts +1 -0
  363. package/dist/esm/Common/index.d.ts.map +1 -0
  364. package/dist/esm/Common/messaging/useOptionalMessenger.js.map +1 -1
  365. package/dist/esm/Common/normalizeIconClass.js.map +1 -1
  366. package/dist/esm/Common/reactAriaProps.js.map +1 -1
  367. package/dist/esm/Common/useNativeCheckedState.js.map +1 -1
  368. package/dist/esm/Common/useToolbarKeyboardNavigation.d.ts +1 -0
  369. package/dist/esm/Common/useToolbarKeyboardNavigation.d.ts.map +1 -0
  370. package/dist/esm/Common/useToolbarKeyboardNavigation.js.map +1 -1
  371. package/dist/esm/DataPage/DataPage.d.ts +1 -0
  372. package/dist/esm/DataPage/DataPage.d.ts.map +1 -0
  373. package/dist/esm/DataPage/DataPage.js.map +1 -1
  374. package/dist/esm/DataPage/DataPageLayout.js.map +1 -1
  375. package/dist/esm/DataPage/index.d.ts +1 -0
  376. package/dist/esm/DataPage/index.d.ts.map +1 -0
  377. package/dist/esm/DataTables/Column.d.ts +1 -0
  378. package/dist/esm/DataTables/Column.d.ts.map +1 -0
  379. package/dist/esm/DataTables/Column.js.map +1 -1
  380. package/dist/esm/DataTables/ColumnFilterMenu.d.ts +1 -0
  381. package/dist/esm/DataTables/ColumnFilterMenu.d.ts.map +1 -0
  382. package/dist/esm/DataTables/ColumnFilterMenu.js.map +1 -1
  383. package/dist/esm/DataTables/DataTableCore.d.ts +1 -0
  384. package/dist/esm/DataTables/DataTableCore.d.ts.map +1 -0
  385. package/dist/esm/DataTables/DataTableCore.js.map +1 -1
  386. package/dist/esm/DataTables/DataTableFilterMatcherRegistry.d.ts +1 -0
  387. package/dist/esm/DataTables/DataTableFilterMatcherRegistry.d.ts.map +1 -0
  388. package/dist/esm/DataTables/DataTableFilterMatcherRegistry.js.map +1 -1
  389. package/dist/esm/DataTables/DataTableFilterMeta.js.map +1 -1
  390. package/dist/esm/DataTables/DataTableForObservableQuery.d.ts +1 -0
  391. package/dist/esm/DataTables/DataTableForObservableQuery.d.ts.map +1 -0
  392. package/dist/esm/DataTables/DataTableForObservableQuery.js.map +1 -1
  393. package/dist/esm/DataTables/DataTableForQuery.d.ts +1 -0
  394. package/dist/esm/DataTables/DataTableForQuery.d.ts.map +1 -0
  395. package/dist/esm/DataTables/DataTableForQuery.js.map +1 -1
  396. package/dist/esm/DataTables/DataTableSelectionChangeEvent.js.map +1 -1
  397. package/dist/esm/DataTables/DataTableStatus.js.map +1 -1
  398. package/dist/esm/DataTables/TablePaginator.d.ts +1 -0
  399. package/dist/esm/DataTables/TablePaginator.d.ts.map +1 -0
  400. package/dist/esm/DataTables/TablePaginator.js.map +1 -1
  401. package/dist/esm/DataTables/TablePaginatorImplementation.d.ts +1 -0
  402. package/dist/esm/DataTables/TablePaginatorImplementation.d.ts.map +1 -0
  403. package/dist/esm/DataTables/TablePaginatorImplementation.js.map +1 -1
  404. package/dist/esm/DataTables/index.d.ts +1 -0
  405. package/dist/esm/DataTables/index.d.ts.map +1 -0
  406. package/dist/esm/DataTables/paginatorRange.js.map +1 -1
  407. package/dist/esm/DataTables/resolveDataTableStatus.d.ts +1 -0
  408. package/dist/esm/DataTables/resolveDataTableStatus.d.ts.map +1 -0
  409. package/dist/esm/DataTables/resolveDataTableStatus.js.map +1 -1
  410. package/dist/esm/DataTables/selectionKeys.js.map +1 -1
  411. package/dist/esm/Dialogs/BusyIndicatorDialog.js.map +1 -1
  412. package/dist/esm/Dialogs/ConfirmationDialog.js.map +1 -1
  413. package/dist/esm/Dialogs/Dialog.d.ts +1 -0
  414. package/dist/esm/Dialogs/Dialog.d.ts.map +1 -0
  415. package/dist/esm/Dialogs/Dialog.js.map +1 -1
  416. package/dist/esm/Dialogs/DialogImplementation.d.ts +1 -0
  417. package/dist/esm/Dialogs/DialogImplementation.d.ts.map +1 -0
  418. package/dist/esm/Dialogs/DialogImplementation.js.map +1 -1
  419. package/dist/esm/Dialogs/DialogInitialFocus.js.map +1 -1
  420. package/dist/esm/Dialogs/index.d.ts +1 -0
  421. package/dist/esm/Dialogs/index.d.ts.map +1 -0
  422. package/dist/esm/Display/Avatar.js.map +1 -1
  423. package/dist/esm/Display/Badge.js.map +1 -1
  424. package/dist/esm/Display/Chip.js.map +1 -1
  425. package/dist/esm/Display/Message.js.map +1 -1
  426. package/dist/esm/Display/ProgressBar.js.map +1 -1
  427. package/dist/esm/Display/ProgressBarImplementation.d.ts +1 -0
  428. package/dist/esm/Display/ProgressBarImplementation.d.ts.map +1 -0
  429. package/dist/esm/Display/ProgressBarImplementation.js.map +1 -1
  430. package/dist/esm/Display/ProgressSpinner.js.map +1 -1
  431. package/dist/esm/Display/Skeleton.js.map +1 -1
  432. package/dist/esm/Display/Tag.js.map +1 -1
  433. package/dist/esm/Display/index.d.ts +1 -0
  434. package/dist/esm/Display/index.d.ts.map +1 -0
  435. package/dist/esm/Dropdown/Dropdown.d.ts +1 -0
  436. package/dist/esm/Dropdown/Dropdown.d.ts.map +1 -0
  437. package/dist/esm/Dropdown/Dropdown.js.map +1 -1
  438. package/dist/esm/Dropdown/DropdownImplementation.d.ts +1 -0
  439. package/dist/esm/Dropdown/DropdownImplementation.d.ts.map +1 -0
  440. package/dist/esm/Dropdown/DropdownImplementation.js.map +1 -1
  441. package/dist/esm/Dropdown/index.d.ts +1 -0
  442. package/dist/esm/Dropdown/index.d.ts.map +1 -0
  443. package/dist/esm/Dropdown/observeLabelAssociations.js.map +1 -1
  444. package/dist/esm/Dropdown/useExternalLabel.js.map +1 -1
  445. package/dist/esm/Filter/CheckboxListFilter.d.ts +1 -0
  446. package/dist/esm/Filter/CheckboxListFilter.d.ts.map +1 -0
  447. package/dist/esm/Filter/CheckboxListFilter.js.map +1 -1
  448. package/dist/esm/Filter/FilterEditor.d.ts +1 -0
  449. package/dist/esm/Filter/FilterEditor.d.ts.map +1 -0
  450. package/dist/esm/Filter/FilterEditor.js.map +1 -1
  451. package/dist/esm/Filter/FilterEditorProps.d.ts +1 -0
  452. package/dist/esm/Filter/FilterEditorProps.d.ts.map +1 -0
  453. package/dist/esm/Filter/FilterEditorProps.js.map +1 -1
  454. package/dist/esm/Filter/FilterPanel.d.ts +1 -0
  455. package/dist/esm/Filter/FilterPanel.d.ts.map +1 -0
  456. package/dist/esm/Filter/FilterPanel.js.map +1 -1
  457. package/dist/esm/Filter/RangeHistogramFilter.d.ts +1 -0
  458. package/dist/esm/Filter/RangeHistogramFilter.d.ts.map +1 -0
  459. package/dist/esm/Filter/RangeHistogramFilter.js.map +1 -1
  460. package/dist/esm/Filter/index.d.ts +1 -0
  461. package/dist/esm/Filter/index.d.ts.map +1 -0
  462. package/dist/esm/Filter/types.js.map +1 -1
  463. package/dist/esm/Filter/useFilterState.d.ts +1 -0
  464. package/dist/esm/Filter/useFilterState.d.ts.map +1 -0
  465. package/dist/esm/Filter/useFilterState.js.map +1 -1
  466. package/dist/esm/Filter/useOptionListOverflow.js.map +1 -1
  467. package/dist/esm/Filter/utils.d.ts +1 -0
  468. package/dist/esm/Filter/utils.d.ts.map +1 -0
  469. package/dist/esm/Filter/utils.js.map +1 -1
  470. package/dist/esm/Notifications/Toaster.js.map +1 -1
  471. package/dist/esm/Notifications/index.d.ts +1 -0
  472. package/dist/esm/Notifications/index.d.ts.map +1 -0
  473. package/dist/esm/Notifications/toast.js.map +1 -1
  474. package/dist/esm/Notifications/toastCommandResult.js.map +1 -1
  475. package/dist/esm/ObjectContentEditor/ObjectContentEditor.d.ts +1 -0
  476. package/dist/esm/ObjectContentEditor/ObjectContentEditor.d.ts.map +1 -0
  477. package/dist/esm/ObjectContentEditor/ObjectContentEditor.js.map +1 -1
  478. package/dist/esm/ObjectContentEditor/index.d.ts +1 -0
  479. package/dist/esm/ObjectContentEditor/index.d.ts.map +1 -0
  480. package/dist/esm/ObjectContentEditor/objectHelpers.d.ts +1 -0
  481. package/dist/esm/ObjectContentEditor/objectHelpers.d.ts.map +1 -0
  482. package/dist/esm/ObjectContentEditor/objectHelpers.js.map +1 -1
  483. package/dist/esm/ObjectNavigationalBar/ObjectNavigationalBar.js.map +1 -1
  484. package/dist/esm/ObjectNavigationalBar/breadcrumbHelpers.js.map +1 -1
  485. package/dist/esm/ObjectNavigationalBar/index.d.ts +1 -0
  486. package/dist/esm/ObjectNavigationalBar/index.d.ts.map +1 -0
  487. package/dist/esm/PivotViewer/PivotViewer.d.ts +1 -0
  488. package/dist/esm/PivotViewer/PivotViewer.d.ts.map +1 -0
  489. package/dist/esm/PivotViewer/PivotViewer.js.map +1 -1
  490. package/dist/esm/PivotViewer/PivotViewerLabels.js.map +1 -1
  491. package/dist/esm/PivotViewer/components/AxisLabels.d.ts +1 -0
  492. package/dist/esm/PivotViewer/components/AxisLabels.d.ts.map +1 -0
  493. package/dist/esm/PivotViewer/components/AxisLabels.js.map +1 -1
  494. package/dist/esm/PivotViewer/components/DetailPanel.js.map +1 -1
  495. package/dist/esm/PivotViewer/components/FilterPanel.d.ts +1 -0
  496. package/dist/esm/PivotViewer/components/FilterPanel.d.ts.map +1 -0
  497. package/dist/esm/PivotViewer/components/FilterPanel.js.map +1 -1
  498. package/dist/esm/PivotViewer/components/FilterPanelContainer.d.ts +1 -0
  499. package/dist/esm/PivotViewer/components/FilterPanelContainer.d.ts.map +1 -0
  500. package/dist/esm/PivotViewer/components/FilterPanelContainer.js.map +1 -1
  501. package/dist/esm/PivotViewer/components/PivotCanvas.d.ts +1 -0
  502. package/dist/esm/PivotViewer/components/PivotCanvas.d.ts.map +1 -0
  503. package/dist/esm/PivotViewer/components/PivotCanvas.js.map +1 -1
  504. package/dist/esm/PivotViewer/components/PivotViewerMain.d.ts +1 -0
  505. package/dist/esm/PivotViewer/components/PivotViewerMain.d.ts.map +1 -0
  506. package/dist/esm/PivotViewer/components/PivotViewerMain.js.map +1 -1
  507. package/dist/esm/PivotViewer/components/RangeHistogramFilter.d.ts +1 -0
  508. package/dist/esm/PivotViewer/components/RangeHistogramFilter.d.ts.map +1 -0
  509. package/dist/esm/PivotViewer/components/RangeHistogramFilter.js.map +1 -1
  510. package/dist/esm/PivotViewer/components/Spinner.js.map +1 -1
  511. package/dist/esm/PivotViewer/components/Toolbar.d.ts +1 -0
  512. package/dist/esm/PivotViewer/components/Toolbar.d.ts.map +1 -0
  513. package/dist/esm/PivotViewer/components/Toolbar.js.map +1 -1
  514. package/dist/esm/PivotViewer/components/ToolbarContainer.d.ts +1 -0
  515. package/dist/esm/PivotViewer/components/ToolbarContainer.d.ts.map +1 -0
  516. package/dist/esm/PivotViewer/components/ToolbarContainer.js.map +1 -1
  517. package/dist/esm/PivotViewer/components/index.d.ts +1 -0
  518. package/dist/esm/PivotViewer/components/index.d.ts.map +1 -0
  519. package/dist/esm/PivotViewer/components/index.js +1 -0
  520. package/dist/esm/PivotViewer/components/index.js.map +1 -0
  521. package/dist/esm/PivotViewer/components/pivot/animation.d.ts +1 -0
  522. package/dist/esm/PivotViewer/components/pivot/animation.d.ts.map +1 -0
  523. package/dist/esm/PivotViewer/components/pivot/animation.js.map +1 -1
  524. package/dist/esm/PivotViewer/components/pivot/colorResolver.d.ts +1 -0
  525. package/dist/esm/PivotViewer/components/pivot/colorResolver.d.ts.map +1 -0
  526. package/dist/esm/PivotViewer/components/pivot/colorResolver.js.map +1 -1
  527. package/dist/esm/PivotViewer/components/pivot/constants.js.map +1 -1
  528. package/dist/esm/PivotViewer/components/pivot/ellipsize.js.map +1 -1
  529. package/dist/esm/PivotViewer/components/pivot/groups.d.ts +1 -0
  530. package/dist/esm/PivotViewer/components/pivot/groups.d.ts.map +1 -0
  531. package/dist/esm/PivotViewer/components/pivot/groups.js.map +1 -1
  532. package/dist/esm/PivotViewer/components/pivot/sprites.d.ts +1 -0
  533. package/dist/esm/PivotViewer/components/pivot/sprites.d.ts.map +1 -0
  534. package/dist/esm/PivotViewer/components/pivot/sprites.js.map +1 -1
  535. package/dist/esm/PivotViewer/components/pivot/syncScrollSprites.d.ts +1 -0
  536. package/dist/esm/PivotViewer/components/pivot/syncScrollSprites.d.ts.map +1 -0
  537. package/dist/esm/PivotViewer/components/pivot/syncScrollSprites.js.map +1 -1
  538. package/dist/esm/PivotViewer/components/pivot/visibility.d.ts +1 -0
  539. package/dist/esm/PivotViewer/components/pivot/visibility.d.ts.map +1 -0
  540. package/dist/esm/PivotViewer/components/pivot/visibility.js.map +1 -1
  541. package/dist/esm/PivotViewer/constants.js.map +1 -1
  542. package/dist/esm/PivotViewer/engine/layout.d.ts +1 -0
  543. package/dist/esm/PivotViewer/engine/layout.d.ts.map +1 -0
  544. package/dist/esm/PivotViewer/engine/layout.js.map +1 -1
  545. package/dist/esm/PivotViewer/engine/pivot.worker.js +1 -0
  546. package/dist/esm/PivotViewer/engine/pivot.worker.js.map +1 -0
  547. package/dist/esm/PivotViewer/engine/requestCorrelator.js.map +1 -1
  548. package/dist/esm/PivotViewer/engine/store.d.ts +1 -0
  549. package/dist/esm/PivotViewer/engine/store.d.ts.map +1 -0
  550. package/dist/esm/PivotViewer/engine/store.js.map +1 -1
  551. package/dist/esm/PivotViewer/engine/types.js.map +1 -1
  552. package/dist/esm/PivotViewer/hooks/index.d.ts +1 -0
  553. package/dist/esm/PivotViewer/hooks/index.d.ts.map +1 -0
  554. package/dist/esm/PivotViewer/hooks/index.js +1 -0
  555. package/dist/esm/PivotViewer/hooks/index.js.map +1 -0
  556. package/dist/esm/PivotViewer/hooks/useAnimationModeTracking.js.map +1 -1
  557. package/dist/esm/PivotViewer/hooks/useCardSelection.d.ts +1 -0
  558. package/dist/esm/PivotViewer/hooks/useCardSelection.d.ts.map +1 -0
  559. package/dist/esm/PivotViewer/hooks/useCardSelection.js.map +1 -1
  560. package/dist/esm/PivotViewer/hooks/useContainerDimensions.js.map +1 -1
  561. package/dist/esm/PivotViewer/hooks/useCurrentFilters.d.ts +1 -0
  562. package/dist/esm/PivotViewer/hooks/useCurrentFilters.d.ts.map +1 -0
  563. package/dist/esm/PivotViewer/hooks/useCurrentFilters.js.map +1 -1
  564. package/dist/esm/PivotViewer/hooks/useDetailPanelClose.d.ts +1 -0
  565. package/dist/esm/PivotViewer/hooks/useDetailPanelClose.d.ts.map +1 -0
  566. package/dist/esm/PivotViewer/hooks/useDetailPanelClose.js.map +1 -1
  567. package/dist/esm/PivotViewer/hooks/useDimensionState.d.ts +1 -0
  568. package/dist/esm/PivotViewer/hooks/useDimensionState.d.ts.map +1 -0
  569. package/dist/esm/PivotViewer/hooks/useDimensionState.js.map +1 -1
  570. package/dist/esm/PivotViewer/hooks/useFieldExtractors.d.ts +1 -0
  571. package/dist/esm/PivotViewer/hooks/useFieldExtractors.d.ts.map +1 -0
  572. package/dist/esm/PivotViewer/hooks/useFieldExtractors.js.map +1 -1
  573. package/dist/esm/PivotViewer/hooks/useFilterOptions.d.ts +1 -0
  574. package/dist/esm/PivotViewer/hooks/useFilterOptions.d.ts.map +1 -0
  575. package/dist/esm/PivotViewer/hooks/useFilterOptions.js.map +1 -1
  576. package/dist/esm/PivotViewer/hooks/useFilterPanelDrag.js.map +1 -1
  577. package/dist/esm/PivotViewer/hooks/useFilterState.d.ts +1 -0
  578. package/dist/esm/PivotViewer/hooks/useFilterState.d.ts.map +1 -0
  579. package/dist/esm/PivotViewer/hooks/useFilterState.js.map +1 -1
  580. package/dist/esm/PivotViewer/hooks/useFilteredData.d.ts +1 -0
  581. package/dist/esm/PivotViewer/hooks/useFilteredData.d.ts.map +1 -0
  582. package/dist/esm/PivotViewer/hooks/useFilteredData.js +1 -0
  583. package/dist/esm/PivotViewer/hooks/useFilteredData.js.map +1 -0
  584. package/dist/esm/PivotViewer/hooks/usePanning.js.map +1 -1
  585. package/dist/esm/PivotViewer/hooks/usePivotEngine.d.ts +1 -0
  586. package/dist/esm/PivotViewer/hooks/usePivotEngine.d.ts.map +1 -0
  587. package/dist/esm/PivotViewer/hooks/usePivotEngine.js.map +1 -1
  588. package/dist/esm/PivotViewer/hooks/useScrollSync.d.ts +1 -0
  589. package/dist/esm/PivotViewer/hooks/useScrollSync.d.ts.map +1 -0
  590. package/dist/esm/PivotViewer/hooks/useScrollSync.js.map +1 -1
  591. package/dist/esm/PivotViewer/hooks/useSelectedItem.js +1 -0
  592. package/dist/esm/PivotViewer/hooks/useSelectedItem.js.map +1 -0
  593. package/dist/esm/PivotViewer/hooks/useViewModeScrollHandling.d.ts +1 -0
  594. package/dist/esm/PivotViewer/hooks/useViewModeScrollHandling.d.ts.map +1 -0
  595. package/dist/esm/PivotViewer/hooks/useViewModeScrollHandling.js.map +1 -1
  596. package/dist/esm/PivotViewer/hooks/useWheelZoom.js.map +1 -1
  597. package/dist/esm/PivotViewer/hooks/useZoomScrollAnchor.js.map +1 -1
  598. package/dist/esm/PivotViewer/hooks/useZoomState.js.map +1 -1
  599. package/dist/esm/PivotViewer/index.d.ts +1 -0
  600. package/dist/esm/PivotViewer/index.d.ts.map +1 -0
  601. package/dist/esm/PivotViewer/types.d.ts +1 -0
  602. package/dist/esm/PivotViewer/types.d.ts.map +1 -0
  603. package/dist/esm/PivotViewer/types.js.map +1 -1
  604. package/dist/esm/PivotViewer/utils/animations.js.map +1 -1
  605. package/dist/esm/PivotViewer/utils/cardPosition.d.ts +1 -0
  606. package/dist/esm/PivotViewer/utils/cardPosition.d.ts.map +1 -0
  607. package/dist/esm/PivotViewer/utils/cardPosition.js.map +1 -1
  608. package/dist/esm/PivotViewer/utils/constants.js.map +1 -1
  609. package/dist/esm/PivotViewer/utils/idResolution.d.ts +1 -0
  610. package/dist/esm/PivotViewer/utils/idResolution.d.ts.map +1 -0
  611. package/dist/esm/PivotViewer/utils/idResolution.js.map +1 -1
  612. package/dist/esm/PivotViewer/utils/index.d.ts +1 -0
  613. package/dist/esm/PivotViewer/utils/index.d.ts.map +1 -0
  614. package/dist/esm/PivotViewer/utils/index.js +1 -0
  615. package/dist/esm/PivotViewer/utils/index.js.map +1 -0
  616. package/dist/esm/PivotViewer/utils/presentGrouping.d.ts +1 -0
  617. package/dist/esm/PivotViewer/utils/presentGrouping.d.ts.map +1 -0
  618. package/dist/esm/PivotViewer/utils/presentGrouping.js.map +1 -1
  619. package/dist/esm/PivotViewer/utils/search.d.ts +1 -0
  620. package/dist/esm/PivotViewer/utils/search.d.ts.map +1 -0
  621. package/dist/esm/PivotViewer/utils/search.js.map +1 -1
  622. package/dist/esm/PivotViewer/utils/selection.d.ts +1 -0
  623. package/dist/esm/PivotViewer/utils/selection.d.ts.map +1 -0
  624. package/dist/esm/PivotViewer/utils/selection.js.map +1 -1
  625. package/dist/esm/PivotViewer/utils/utils.d.ts +1 -0
  626. package/dist/esm/PivotViewer/utils/utils.d.ts.map +1 -0
  627. package/dist/esm/PivotViewer/utils/utils.js.map +1 -1
  628. package/dist/esm/QueryStatus/QueryStatus.js.map +1 -1
  629. package/dist/esm/QueryStatus/resolveQueryStatus.d.ts +1 -0
  630. package/dist/esm/QueryStatus/resolveQueryStatus.d.ts.map +1 -0
  631. package/dist/esm/QueryStatus/resolveQueryStatus.js.map +1 -1
  632. package/dist/esm/SchemaEditor/NameCell.d.ts +1 -0
  633. package/dist/esm/SchemaEditor/NameCell.d.ts.map +1 -0
  634. package/dist/esm/SchemaEditor/NameCell.js.map +1 -1
  635. package/dist/esm/SchemaEditor/SchemaEditor.d.ts +1 -0
  636. package/dist/esm/SchemaEditor/SchemaEditor.d.ts.map +1 -0
  637. package/dist/esm/SchemaEditor/SchemaEditor.js.map +1 -1
  638. package/dist/esm/SchemaEditor/TypeCell.d.ts +1 -0
  639. package/dist/esm/SchemaEditor/TypeCell.d.ts.map +1 -0
  640. package/dist/esm/SchemaEditor/TypeCell.js.map +1 -1
  641. package/dist/esm/SchemaEditor/index.d.ts +1 -0
  642. package/dist/esm/SchemaEditor/index.d.ts.map +1 -0
  643. package/dist/esm/SchemaEditor/schemaHelpers.d.ts +1 -0
  644. package/dist/esm/SchemaEditor/schemaHelpers.d.ts.map +1 -0
  645. package/dist/esm/SchemaEditor/schemaHelpers.js.map +1 -1
  646. package/dist/esm/TimeMachine/EventsView.d.ts +1 -0
  647. package/dist/esm/TimeMachine/EventsView.d.ts.map +1 -0
  648. package/dist/esm/TimeMachine/EventsView.js.map +1 -1
  649. package/dist/esm/TimeMachine/Properties.js.map +1 -1
  650. package/dist/esm/TimeMachine/ReadModelView.d.ts +1 -0
  651. package/dist/esm/TimeMachine/ReadModelView.d.ts.map +1 -0
  652. package/dist/esm/TimeMachine/ReadModelView.js.map +1 -1
  653. package/dist/esm/TimeMachine/TimeMachine.d.ts +1 -0
  654. package/dist/esm/TimeMachine/TimeMachine.d.ts.map +1 -0
  655. package/dist/esm/TimeMachine/TimeMachine.js.map +1 -1
  656. package/dist/esm/TimeMachine/TimeMachineLabels.js.map +1 -1
  657. package/dist/esm/TimeMachine/index.d.ts +1 -0
  658. package/dist/esm/TimeMachine/index.d.ts.map +1 -0
  659. package/dist/esm/TimeMachine/propertiesHelpers.js.map +1 -1
  660. package/dist/esm/TimeMachine/types.js.map +1 -1
  661. package/dist/esm/Toolbar/Toolbar.d.ts +1 -0
  662. package/dist/esm/Toolbar/Toolbar.d.ts.map +1 -0
  663. package/dist/esm/Toolbar/Toolbar.js.map +1 -1
  664. package/dist/esm/Toolbar/ToolbarButton.d.ts +1 -0
  665. package/dist/esm/Toolbar/ToolbarButton.d.ts.map +1 -0
  666. package/dist/esm/Toolbar/ToolbarButton.js.map +1 -1
  667. package/dist/esm/Toolbar/ToolbarContext.js.map +1 -1
  668. package/dist/esm/Toolbar/ToolbarDragContext.js.map +1 -1
  669. package/dist/esm/Toolbar/ToolbarFanOutItem.d.ts +1 -0
  670. package/dist/esm/Toolbar/ToolbarFanOutItem.d.ts.map +1 -0
  671. package/dist/esm/Toolbar/ToolbarFanOutItem.js.map +1 -1
  672. package/dist/esm/Toolbar/ToolbarFolder.d.ts +1 -0
  673. package/dist/esm/Toolbar/ToolbarFolder.d.ts.map +1 -0
  674. package/dist/esm/Toolbar/ToolbarFolder.js.map +1 -1
  675. package/dist/esm/Toolbar/ToolbarFolderContext.js.map +1 -1
  676. package/dist/esm/Toolbar/ToolbarGroup.js.map +1 -1
  677. package/dist/esm/Toolbar/ToolbarItemVisibilityContext.js.map +1 -1
  678. package/dist/esm/Toolbar/ToolbarLayout.js.map +1 -1
  679. package/dist/esm/Toolbar/ToolbarSection.js.map +1 -1
  680. package/dist/esm/Toolbar/ToolbarSeparator.js.map +1 -1
  681. package/dist/esm/Toolbar/ToolbarSlot.js.map +1 -1
  682. package/dist/esm/Toolbar/index.d.ts +1 -0
  683. package/dist/esm/Toolbar/index.d.ts.map +1 -0
  684. package/dist/esm/configuration/CratisComponentsContext.d.ts +1 -0
  685. package/dist/esm/configuration/CratisComponentsContext.d.ts.map +1 -0
  686. package/dist/esm/configuration/CratisComponentsContext.js.map +1 -1
  687. package/dist/esm/configuration/CratisComponentsDefaults.d.ts +1 -0
  688. package/dist/esm/configuration/CratisComponentsDefaults.d.ts.map +1 -0
  689. package/dist/esm/configuration/CratisComponentsDefaults.js.map +1 -1
  690. package/dist/esm/configuration/useCratisIcon.d.ts +1 -0
  691. package/dist/esm/configuration/useCratisIcon.d.ts.map +1 -0
  692. package/dist/esm/configuration/useCratisIcon.js.map +1 -1
  693. package/dist/esm/index.d.ts +1 -0
  694. package/dist/esm/index.d.ts.map +1 -0
  695. package/dist/esm/renderer/DialogStackContext.js.map +1 -1
  696. package/dist/esm/renderer/RendererContext.d.ts +1 -0
  697. package/dist/esm/renderer/RendererContext.d.ts.map +1 -0
  698. package/dist/esm/renderer/RendererContext.js.map +1 -1
  699. package/dist/esm/renderer/RendererScope.d.ts +1 -0
  700. package/dist/esm/renderer/RendererScope.d.ts.map +1 -0
  701. package/dist/esm/renderer/RendererScope.js.map +1 -1
  702. package/dist/esm/renderer/builtin/index.js.map +1 -1
  703. package/dist/esm/renderer/capabilities.js.map +1 -1
  704. package/dist/esm/renderer/coreSlots.d.ts +1 -0
  705. package/dist/esm/renderer/coreSlots.d.ts.map +1 -0
  706. package/dist/esm/renderer/coreSlots.js.map +1 -1
  707. package/dist/esm/renderer/dialogStack.js.map +1 -1
  708. package/dist/esm/renderer/errors.d.ts +1 -0
  709. package/dist/esm/renderer/errors.d.ts.map +1 -0
  710. package/dist/esm/renderer/errors.js.map +1 -1
  711. package/dist/esm/renderer/index.d.ts +1 -0
  712. package/dist/esm/renderer/index.d.ts.map +1 -0
  713. package/dist/esm/renderer/manifest.d.ts +1 -0
  714. package/dist/esm/renderer/manifest.d.ts.map +1 -0
  715. package/dist/esm/renderer/manifest.js.map +1 -1
  716. package/dist/esm/renderer/overlayEnvironment.js.map +1 -1
  717. package/dist/esm/renderer/presentation.d.ts +1 -0
  718. package/dist/esm/renderer/presentation.d.ts.map +1 -0
  719. package/dist/esm/renderer/presentation.js.map +1 -1
  720. package/dist/esm/renderer/renderSlot.js.map +1 -1
  721. package/dist/esm/renderer/resolve.d.ts +1 -0
  722. package/dist/esm/renderer/resolve.d.ts.map +1 -0
  723. package/dist/esm/renderer/resolve.js.map +1 -1
  724. package/dist/esm/renderer/slots.js.map +1 -1
  725. package/dist/esm/styles.Canvas.css +17 -1
  726. package/dist/esm/styles.Chat.css +17 -1
  727. package/dist/esm/styles.css +17 -1
  728. package/dist/esm/types/ChangeHandler.d.ts +1 -0
  729. package/dist/esm/types/ChangeHandler.d.ts.map +1 -0
  730. package/dist/esm/types/ChangeHandler.js.map +1 -1
  731. package/dist/esm/types/ChangeMeta.js.map +1 -1
  732. package/dist/esm/types/ExactPartKeys.js.map +1 -1
  733. package/dist/esm/types/JsonSchema.js.map +1 -1
  734. package/dist/esm/types/TypeFormat.js.map +1 -1
  735. package/dist/esm/types/index.d.ts +1 -0
  736. package/dist/esm/types/index.d.ts.map +1 -0
  737. package/dist/esm/types/parts.js.map +1 -1
  738. package/package.json +7 -3
@@ -1 +1 @@
1
- {"version":3,"file":"Toolbar.js","sources":["../../../../PivotViewer/components/Toolbar.tsx"],"sourcesContent":[null],"names":["_jsxs","_jsx"],"mappings":"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"}
1
+ {"version":3,"file":"Toolbar.js","sources":["../../../../PivotViewer/components/Toolbar.tsx"],"sourcesContent":["// Copyright (c) Cratis. All rights reserved.\n// Licensed under the MIT license. See LICENSE file in the project root for full license information.\n\nimport { useId, useState } from 'react';\nimport { useCratisComponentsConfig } from '../../configuration/CratisComponentsContext';\nimport type { PivotDimension } from '../types';\nimport type { PivotViewerLabels } from '../PivotViewerLabels';\nimport { ZOOM_MIN, ZOOM_MAX, ZOOM_STEP } from '../utils/utils';\n\nexport type ViewMode = 'collection' | 'grouped';\n\nexport interface ToolbarProps<TItem extends object> {\n hasFilters: boolean;\n filtersOpen: boolean;\n filteredCount: number;\n viewMode: ViewMode;\n zoomLevel: number;\n activeDimensionKey: string;\n dimensions: PivotDimension<TItem>[];\n activeFilterCount: number;\n /** Heading shown at the left of the toolbar. Omitted entirely when not given. */\n title?: string;\n labels?: PivotViewerLabels;\n onFiltersToggle: () => void;\n onViewModeChange: (mode: ViewMode) => void;\n onZoomIn: () => void;\n onZoomOut: () => void;\n onZoomSlider: (e: React.ChangeEvent<HTMLInputElement>) => void;\n onZoomReset: () => void;\n onZoomChange: (zoom: number) => void;\n onDimensionChange: (key: string) => void;\n filterButtonRef: React.RefObject<HTMLButtonElement | null>;\n}\n\nexport function Toolbar<TItem extends object>({\n hasFilters,\n filtersOpen,\n filteredCount,\n viewMode,\n zoomLevel,\n activeDimensionKey,\n dimensions,\n activeFilterCount,\n title,\n labels,\n onFiltersToggle,\n onViewModeChange,\n onZoomIn,\n onZoomOut,\n onZoomSlider,\n onZoomReset,\n onZoomChange,\n onDimensionChange,\n filterButtonRef,\n}: ToolbarProps<TItem>) {\n const [isEditingZoom, setIsEditingZoom] = useState(false);\n const [zoomInputValue, setZoomInputValue] = useState('');\n const { messages } = useCratisComponentsConfig();\n const filterLabel = labels?.filters ?? messages?.filter?.label ?? 'Filters';\n const filterBadgeId = useId();\n\n const handleZoomClick = () => {\n setIsEditingZoom(true);\n setZoomInputValue(String(Math.round(zoomLevel * 100)));\n };\n\n const handleZoomInputChange = (e: React.ChangeEvent<HTMLInputElement>) => {\n const value = e.target.value;\n if (value === '' || /^\\d+$/.test(value)) {\n setZoomInputValue(value);\n }\n };\n\n const handleZoomInputKeyDown = (e: React.KeyboardEvent<HTMLInputElement>) => {\n if (e.key === 'Enter') {\n applyZoomInput();\n } else if (e.key === 'Escape') {\n setIsEditingZoom(false);\n }\n };\n\n const handleZoomInputBlur = () => {\n applyZoomInput();\n };\n\n const applyZoomInput = () => {\n const numValue = parseInt(zoomInputValue, 10);\n if (!isNaN(numValue)) {\n const clampedValue = Math.max(10, Math.min(300, numValue));\n onZoomChange(clampedValue / 100);\n }\n setIsEditingZoom(false);\n };\n\n return (\n <header className=\"pv-toolbar\">\n <div className=\"pv-toolbar-left\">\n {hasFilters && (\n <button\n ref={filterButtonRef}\n type=\"button\"\n className={`pv-filter-icon-button ${filtersOpen ? 'active' : ''}`}\n onClick={onFiltersToggle}\n aria-label={filterLabel}\n aria-describedby={activeFilterCount > 0 ? filterBadgeId : undefined}\n title={filterLabel}\n >\n <svg width=\"18\" height=\"18\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" strokeWidth=\"2\" strokeLinecap=\"round\" strokeLinejoin=\"round\">\n <polygon points=\"22 3 2 3 10 12.46 10 19 14 21 14 12.46 22 3\" />\n </svg>\n {activeFilterCount > 0 && (\n <span id={filterBadgeId} className=\"pv-filter-badge\">{activeFilterCount}</span>\n )}\n </button>\n )}\n {title && <span className=\"pv-title\">{title}</span>}\n <span className=\"pv-count\">{labels?.itemCount?.(filteredCount) ?? `${filteredCount} events`}</span>\n </div>\n <div className=\"pv-toolbar-right\">\n <div className=\"pv-zoom-controls\">\n <button\n type=\"button\"\n onClick={onZoomOut}\n disabled={zoomLevel <= ZOOM_MIN}\n title={labels?.zoomOut ?? 'Zoom out'}\n >\n −\n </button>\n <input\n type=\"range\"\n aria-label={labels?.zoomLevel ?? 'Zoom level'}\n className=\"pv-zoom-slider\"\n min={ZOOM_MIN}\n max={ZOOM_MAX}\n step={ZOOM_STEP}\n value={zoomLevel}\n onChange={onZoomSlider}\n title={labels?.zoom?.(Math.round(zoomLevel * 100)) ?? `Zoom: ${Math.round(zoomLevel * 100)}%`}\n />\n {isEditingZoom ? (\n <input\n type=\"text\"\n className=\"pv-zoom-level-input\"\n value={zoomInputValue}\n onChange={handleZoomInputChange}\n onKeyDown={handleZoomInputKeyDown}\n onBlur={handleZoomInputBlur}\n autoFocus\n />\n ) : (\n <span className=\"pv-zoom-level\" onClick={handleZoomClick} title={labels?.editZoomLevel ?? 'Click to edit zoom level'}>\n {Math.round(zoomLevel * 100)}%\n </span>\n )}\n <button\n type=\"button\"\n onClick={onZoomReset}\n title={labels?.resetZoom ?? 'Reset zoom'}\n className=\"pv-zoom-reset\"\n >\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" strokeWidth=\"2\" strokeLinecap=\"round\" strokeLinejoin=\"round\">\n <path d=\"M3 12a9 9 0 0 1 9-9 9.75 9.75 0 0 1 6.74 2.74L21 8\" />\n <path d=\"M21 3v5h-5\" />\n <path d=\"M21 12a9 9 0 0 1-9 9 9.75 9.75 0 0 1-6.74-2.74L3 16\" />\n <path d=\"M3 21v-5h5\" />\n </svg>\n </button>\n <button\n type=\"button\"\n onClick={onZoomIn}\n disabled={zoomLevel >= ZOOM_MAX}\n title={labels?.zoomIn ?? 'Zoom in'}\n >\n +\n </button>\n </div>\n <div className=\"pv-view-toggle\">\n <button\n type=\"button\"\n className={viewMode === 'collection' ? 'active' : ''}\n onClick={() => onViewModeChange('collection')}\n >\n {labels?.collection ?? 'Collection'}\n </button>\n <button\n type=\"button\"\n className={viewMode === 'grouped' ? 'active' : ''}\n onClick={() => onViewModeChange('grouped')}\n >\n {labels?.grouped ?? 'Grouped'}\n </button>\n </div>\n <label className=\"pv-dimension-select\">\n <span>{labels?.sortBy ?? 'Sort by'}</span>\n <select\n value={activeDimensionKey}\n onChange={(event) => onDimensionChange(event.target.value)}\n >\n {dimensions.map((dimension) => (\n <option key={dimension.key} value={dimension.key}>\n {dimension.label}\n </option>\n ))}\n </select>\n </label>\n </div>\n </header>\n );\n}\n"],"names":["_jsxs","_jsx"],"mappings":"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"}
@@ -1,3 +1,4 @@
1
1
  import { type ToolbarProps } from './Toolbar.js';
2
2
  export type ToolbarContainerProps<TItem extends object> = ToolbarProps<TItem>;
3
3
  export declare function ToolbarContainer<TItem extends object>(props: ToolbarContainerProps<TItem>): import("react").JSX.Element;
4
+ //# sourceMappingURL=ToolbarContainer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ToolbarContainer.d.ts","sourceRoot":"","sources":["../../../../PivotViewer/components/ToolbarContainer.tsx"],"names":[],"mappings":"AAGA,OAAO,EAAW,KAAK,YAAY,EAAE,MAAM,cAAW,CAAC;AAEvD,MAAM,MAAM,qBAAqB,CAAC,KAAK,SAAS,MAAM,IAAI,YAAY,CAAC,KAAK,CAAC,CAAC;AAE9E,wBAAgB,gBAAgB,CAAC,KAAK,SAAS,MAAM,EAAE,KAAK,EAAE,qBAAqB,CAAC,KAAK,CAAC,+BAEzF"}
@@ -1 +1 @@
1
- {"version":3,"file":"ToolbarContainer.js","sources":["../../../../PivotViewer/components/ToolbarContainer.tsx"],"sourcesContent":[null],"names":["_jsx"],"mappings":";;;AAOM,SAAU,gBAAgB,CAAuB,KAAmC,EAAA;AACxF,IAAA,OAAOA,GAAA,CAAC,OAAO,EAAA,EAAA,GAAK,KAAK,GAAI;AAC/B;;"}
1
+ {"version":3,"file":"ToolbarContainer.js","sources":["../../../../PivotViewer/components/ToolbarContainer.tsx"],"sourcesContent":["// Copyright (c) Cratis. All rights reserved.\n// Licensed under the MIT license. See LICENSE file in the project root for full license information.\n\nimport { Toolbar, type ToolbarProps } from './Toolbar';\n\nexport type ToolbarContainerProps<TItem extends object> = ToolbarProps<TItem>;\n\nexport function ToolbarContainer<TItem extends object>(props: ToolbarContainerProps<TItem>) {\n return <Toolbar {...props} />;\n}\n"],"names":["_jsx"],"mappings":";;;AAOM,SAAU,gBAAgB,CAAuB,KAAmC,EAAA;AACxF,IAAA,OAAOA,GAAA,CAAC,OAAO,EAAA,EAAA,GAAK,KAAK,GAAI;AAC/B;;"}
@@ -6,3 +6,4 @@ export { AxisLabels } from './AxisLabels.js';
6
6
  export { Spinner } from './Spinner.js';
7
7
  export { RangeHistogramFilter } from './RangeHistogramFilter.js';
8
8
  export type { ViewMode } from './Toolbar.js';
9
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../PivotViewer/components/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAe,CAAC;AAC5C,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAe,CAAC;AAC5C,OAAO,EAAE,OAAO,EAAE,MAAM,cAAW,CAAC;AACpC,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAe,CAAC;AAC5C,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAc,CAAC;AAC1C,OAAO,EAAE,OAAO,EAAE,MAAM,cAAW,CAAC;AACpC,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAAwB,CAAC;AAE9D,YAAY,EAAE,QAAQ,EAAE,MAAM,cAAW,CAAC"}
@@ -7,3 +7,4 @@ export { DetailPanel } from './DetailPanel.js';
7
7
  export { AxisLabels } from './AxisLabels.js';
8
8
  export { Spinner } from './Spinner.js';
9
9
  export { RangeHistogramFilter } from './RangeHistogramFilter.js';
10
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../PivotViewer/components/index.ts"],"names":[],"mappings":"AAAA,6CAA6C;AAC7C,qGAAqG;AAErG,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAe,CAAC;AAC5C,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAe,CAAC;AAC5C,OAAO,EAAE,OAAO,EAAE,MAAM,cAAW,CAAC;AACpC,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAe,CAAC;AAC5C,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAc,CAAC;AAC1C,OAAO,EAAE,OAAO,EAAE,MAAM,cAAW,CAAC;AACpC,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAAwB,CAAC","sourcesContent":["// Copyright (c) Cratis. All rights reserved.\n// Licensed under the MIT license. See LICENSE file in the project root for full license information.\n\nexport { PivotCanvas } from './PivotCanvas';\nexport { FilterPanel } from './FilterPanel';\nexport { Toolbar } from './Toolbar';\nexport { DetailPanel } from './DetailPanel';\nexport { AxisLabels } from './AxisLabels';\nexport { Spinner } from './Spinner';\nexport { RangeHistogramFilter } from './RangeHistogramFilter';\n\nexport type { ViewMode } from './Toolbar';\n"]}
@@ -28,3 +28,4 @@ export declare function startAnimationLoop(refs: {
28
28
  onTransitionComplete?: () => void;
29
29
  syncVisibility?: () => void;
30
30
  }, animationSpeed?: number): void;
31
+ //# sourceMappingURL=animation.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"animation.d.ts","sourceRoot":"","sources":["../../../../../PivotViewer/components/pivot/animation.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gBAAa,CAAC;AAC9C,OAAO,KAAK,KAAK,IAAI,MAAM,SAAS,CAAC;AAErC,wBAAgB,eAAe,CAAC,OAAO,EAAE,GAAG,CAAC,OAAO,EAAE,UAAU,CAAC,EAAE,mBAAmB,EAAE;IAAE,OAAO,EAAE,OAAO,CAAA;CAAE,EAAE,cAAc,SAAO,WAgElI;AAED,wBAAgB,kBAAkB,CAChC,IAAI,EAAE;IACJ,UAAU,EAAE;QAAE,OAAO,EAAE,OAAO,CAAA;KAAE,CAAC;IACjC,MAAM,EAAE;QAAE,OAAO,EAAE,IAAI,CAAC,WAAW,GAAG,IAAI,CAAA;KAAE,CAAC;IAC7C,iBAAiB,EAAE;QAAE,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC;IACvC,cAAc,EAAE;QAAE,OAAO,EAAE,OAAO,CAAA;KAAE,CAAC;IACrC,cAAc,EAAE;QAAE,OAAO,EAAE,OAAO,CAAA;KAAE,CAAC;IACrC,UAAU,EAAE;QAAE,OAAO,EAAE,GAAG,CAAC,OAAO,EAAE,UAAU,CAAC,CAAA;KAAE,CAAC;IAClD,mBAAmB,EAAE;QAAE,OAAO,EAAE,OAAO,CAAA;KAAE,CAAC;IAC1C,oBAAoB,CAAC,EAAE,MAAM,IAAI,CAAC;IAClC,cAAc,CAAC,EAAE,MAAM,IAAI,CAAC;CAC7B,EACD,cAAc,SAAO,QAiCtB"}
@@ -1 +1 @@
1
- {"version":3,"file":"animation.js","sources":["../../../../../PivotViewer/components/pivot/animation.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"animation.js","sources":["../../../../../PivotViewer/components/pivot/animation.ts"],"sourcesContent":["// Copyright (c) Cratis. All rights reserved.\n// Licensed under the MIT license. See LICENSE file in the project root for full license information.\n\nimport type { CardSprite } from './constants';\nimport type * as PIXI from 'pixi.js';\n\nexport function updatePositions(sprites: Map<unknown, CardSprite>, isViewTransitionRef: { current: boolean }, animationSpeed = 0.15) {\n let isAnimating = false;\n const threshold = 0.5;\n const shouldAnimate = isViewTransitionRef.current;\n const now = Date.now();\n const DURATION = 600; // ms\n\n for (const sprite of sprites.values()) {\n // Handle explicit time-based animation (view transitions)\n if (sprite.animationStartTime !== undefined) {\n const elapsed = now - sprite.animationStartTime;\n const delay = sprite.animationDelay || 0;\n\n if (elapsed < delay) {\n isAnimating = true;\n continue;\n }\n\n const progress = Math.min(1, (elapsed - delay) / DURATION);\n // Ease out cubic: 1 - (1-t)^3\n const t = 1 - Math.pow(1 - progress, 3);\n\n if (sprite.startX !== undefined && sprite.startY !== undefined) {\n sprite.currentX = sprite.startX + (sprite.targetX - sprite.startX) * t;\n sprite.currentY = sprite.startY + (sprite.targetY - sprite.startY) * t;\n }\n\n sprite.container.position.set(sprite.currentX, sprite.currentY);\n\n if (progress < 1) {\n isAnimating = true;\n } else {\n // Animation finished, clean up\n sprite.currentX = sprite.targetX;\n sprite.currentY = sprite.targetY;\n delete sprite.animationStartTime;\n delete sprite.animationDelay;\n delete sprite.startX;\n delete sprite.startY;\n }\n continue;\n }\n\n const dx = sprite.targetX - sprite.currentX;\n const dy = sprite.targetY - sprite.currentY;\n const distance = Math.sqrt(dx * dx + dy * dy);\n\n if (shouldAnimate && distance > threshold) {\n sprite.currentX += dx * animationSpeed;\n sprite.currentY += dy * animationSpeed;\n sprite.container.position.set(sprite.currentX, sprite.currentY);\n isAnimating = true;\n } else if (distance > 0) {\n sprite.currentX = sprite.targetX;\n sprite.currentY = sprite.targetY;\n sprite.container.position.set(sprite.currentX, sprite.currentY);\n }\n }\n\n if (!isAnimating && isViewTransitionRef.current) {\n isViewTransitionRef.current = false;\n }\n\n return isAnimating;\n}\n\nexport function startAnimationLoop(\n refs: {\n mountedRef: { current: boolean };\n appRef: { current: PIXI.Application | null };\n animationFrameRef: { current: number };\n isAnimatingRef: { current: boolean };\n needsRenderRef: { current: boolean };\n spritesRef: { current: Map<unknown, CardSprite> };\n isViewTransitionRef: { current: boolean };\n onTransitionComplete?: () => void;\n syncVisibility?: () => void;\n },\n animationSpeed = 0.15,\n) {\n const { mountedRef, appRef, animationFrameRef, isAnimatingRef, needsRenderRef, spritesRef, isViewTransitionRef, onTransitionComplete, syncVisibility } = refs;\n\n const animate = () => {\n if (!mountedRef.current) return;\n\n const wasTransitioning = isViewTransitionRef.current;\n const stillAnimating = updatePositions(spritesRef.current, isViewTransitionRef, animationSpeed);\n if (wasTransitioning && !isViewTransitionRef.current) {\n syncVisibility?.();\n onTransitionComplete?.();\n }\n\n if (stillAnimating || needsRenderRef.current) {\n appRef.current?.renderer.render(appRef.current.stage);\n needsRenderRef.current = false;\n }\n\n if (stillAnimating) {\n animationFrameRef.current = requestAnimationFrame(animate);\n } else {\n isAnimatingRef.current = false;\n }\n };\n\n // Always restart animation when called to ensure animations continue\n // Cancel any existing animation frame and start fresh\n if (animationFrameRef.current) {\n cancelAnimationFrame(animationFrameRef.current);\n }\n isAnimatingRef.current = true;\n animate();\n}\n"],"names":[],"mappings":"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"}
@@ -16,3 +16,4 @@ export declare function createCssColorResolver(): CssColorResolver;
16
16
  */
17
17
  export declare function observeColorEnvironment(element: Element, onChange: () => void): () => void;
18
18
  export declare function resolveCardColors(cssColorResolver: CssColorResolver, element?: Element): CardColors;
19
+ //# sourceMappingURL=colorResolver.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"colorResolver.d.ts","sourceRoot":"","sources":["../../../../../PivotViewer/components/pivot/colorResolver.ts"],"names":[],"mappings":"AAGA,OAAO,EAAkB,KAAK,UAAU,EAAE,MAAM,gBAAa,CAAC;AAE9D,MAAM,MAAM,gBAAgB,GAAG,CAC3B,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,MAAM,EAChB,OAAO,CAAC,EAAE,OAAO,KAChB,MAAM,CAAC;AA8EZ;;;;;;;;GAQG;AACH,wBAAgB,sBAAsB,IAAI,gBAAgB,CA2DzD;AAED;;;GAGG;AACH,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,IAAI,cAuB7E;AAED,wBAAgB,iBAAiB,CAC7B,gBAAgB,EAAE,gBAAgB,EAClC,OAAO,CAAC,EAAE,OAAO,GAClB,UAAU,CAsBZ"}
@@ -1 +1 @@
1
- {"version":3,"file":"colorResolver.js","sources":["../../../../../PivotViewer/components/pivot/colorResolver.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"colorResolver.js","sources":["../../../../../PivotViewer/components/pivot/colorResolver.ts"],"sourcesContent":["// Copyright (c) Cratis. All rights reserved.\n// Licensed under the MIT license. See LICENSE file in the project root for full license information.\n\nimport { DEFAULT_COLORS, type CardColors } from './constants';\n\nexport type CssColorResolver = (\n cssValue: string,\n fallback: string,\n element?: Element,\n) => string;\n\nconst byteAsHex = (value: number) => value.toString(16).padStart(2, '0');\nconst clamp = (value: number, maximum: number) => Math.max(0, Math.min(maximum, value));\nconst parseChannel = (value: string) =>\n value.endsWith('%')\n ? clamp(Number.parseFloat(value) * 2.55, 255)\n : clamp(Number.parseFloat(value), 255);\nconst parseAlpha = (value: string | undefined) => {\n if (!value) return 1;\n const parsed = value.endsWith('%')\n ? Number.parseFloat(value) / 100\n : Number.parseFloat(value);\n return clamp(parsed, 1);\n};\n\nconst colorFromSimpleSerialization = (value: string): string | undefined => {\n const hex = value.match(/^#([0-9a-f]{3,4}|[0-9a-f]{6}|[0-9a-f]{8})$/i)?.[1];\n if (hex) {\n const expanded =\n hex.length <= 4\n ? hex\n .split('')\n .map((character) => character + character)\n .join('')\n : hex;\n const red = Number.parseInt(expanded.slice(0, 2), 16);\n const green = Number.parseInt(expanded.slice(2, 4), 16);\n const blue = Number.parseInt(expanded.slice(4, 6), 16);\n const alpha =\n expanded.length === 8 ? Number.parseInt(expanded.slice(6, 8), 16) / 255 : 1;\n return `rgba(${red},${green},${blue},${alpha})`;\n }\n\n const functional = value.match(/^rgba?\\((.*)\\)$/i)?.[1];\n if (!functional) return undefined;\n\n const slashParts = functional.split(/\\s*\\/\\s*/u);\n const commaSeparated = slashParts[0].includes(',');\n const parts = commaSeparated\n ? slashParts[0].split(',').map((part) => part.trim())\n : slashParts[0].trim().split(/\\s+/u);\n const alphaPart =\n slashParts[1] ?? (commaSeparated && parts.length === 4 ? parts.pop() : undefined);\n if (parts.length !== 3) return undefined;\n\n const channels = parts.map(parseChannel);\n const alpha = parseAlpha(alphaPart);\n if ([...channels, alpha].some((component) => !Number.isFinite(component)))\n return undefined;\n\n const [red, green, blue] = channels.map(Math.round);\n return `rgba(${red},${green},${blue},${alpha})`;\n};\n\nconst colorFromCanvas = (\n context: CanvasRenderingContext2D,\n cssValue: string,\n): string | undefined => {\n context.fillStyle = '#010203';\n context.fillStyle = cssValue;\n const firstSerialization = context.fillStyle;\n\n context.fillStyle = '#fefdfc';\n context.fillStyle = cssValue;\n const secondSerialization = context.fillStyle;\n\n // An unsupported assignment leaves each different sentinel in place. A\n // supported color serializes identically after both assignments.\n if (firstSerialization !== secondSerialization) return undefined;\n\n context.clearRect(0, 0, 1, 1);\n context.fillRect(0, 0, 1, 1);\n const [red, green, blue, alpha] = context.getImageData(0, 0, 1, 1).data;\n\n return `#${byteAsHex(red)}${byteAsHex(green)}${byteAsHex(blue)}${byteAsHex(alpha)}`;\n};\n\n/**\n * Creates a browser CSS-color resolver for Pixi-compatible color sources.\n *\n * A detached canvas's `fillStyle` setter cannot resolve relative functions such\n * as `light-dark(...)` or custom-property chains. Resolve on an attached DOM\n * element first. Pixi handles common CSS serializations directly; modern CSS\n * Color 4 values are rasterized through a one-pixel canvas so `oklch()`, `lab()`,\n * and wide-gamut `color(...)` values become sRGB while preserving alpha.\n */\nexport function createCssColorResolver(): CssColorResolver {\n let context: CanvasRenderingContext2D | null | undefined;\n const getContext = () => {\n if (context !== undefined) return context;\n try {\n const canvas = document.createElement('canvas');\n canvas.width = 1;\n canvas.height = 1;\n context = canvas.getContext('2d', { willReadFrequently: true });\n } catch {\n context = null;\n }\n return context;\n };\n\n return (cssValue: string, fallback: string, element?: Element): string => {\n if (\n typeof document === 'undefined' ||\n typeof getComputedStyle === 'undefined' ||\n cssValue.trim().length === 0\n ) {\n return fallback;\n }\n\n const host = element ?? document.body ?? document.documentElement;\n if (!host) return fallback;\n\n const probe = document.createElement('span');\n probe.style.position = 'absolute';\n probe.style.visibility = 'hidden';\n probe.style.pointerEvents = 'none';\n probe.style.color = cssValue.trim();\n if (!probe.style.color) return fallback;\n\n host.append(probe);\n\n try {\n const resolved = getComputedStyle(probe).color;\n if (!resolved) return fallback;\n\n const simpleColor = colorFromSimpleSerialization(resolved);\n if (simpleColor) return simpleColor;\n\n if (\n typeof CSS === 'undefined' ||\n typeof CSS.supports !== 'function' ||\n !CSS.supports('color', resolved)\n ) {\n return fallback;\n }\n\n const canvasContext = getContext();\n return canvasContext\n ? (colorFromCanvas(canvasContext, resolved) ?? fallback)\n : fallback;\n } finally {\n probe.remove();\n }\n };\n}\n\n/**\n * Observes the environment that can change inherited semantic colors.\n * @returns A cleanup callback that disconnects every observer/listener.\n */\nexport function observeColorEnvironment(element: Element, onChange: () => void) {\n if (typeof MutationObserver === 'undefined') return () => undefined;\n\n const observer = new MutationObserver(onChange);\n let ancestor: Element | null = element;\n while (ancestor) {\n observer.observe(ancestor, {\n attributes: true,\n attributeFilter: ['class', 'style', 'data-theme'],\n });\n ancestor = ancestor.parentElement;\n }\n\n const colorScheme =\n typeof window !== 'undefined' && typeof window.matchMedia === 'function'\n ? window.matchMedia('(prefers-color-scheme: dark)')\n : undefined;\n colorScheme?.addEventListener('change', onChange);\n\n return () => {\n observer.disconnect();\n colorScheme?.removeEventListener('change', onChange);\n };\n}\n\nexport function resolveCardColors(\n cssColorResolver: CssColorResolver,\n element?: Element,\n): CardColors {\n if (typeof document === 'undefined' || typeof getComputedStyle === 'undefined') {\n return DEFAULT_COLORS;\n }\n\n const style = getComputedStyle(element ?? document.documentElement);\n const getVar = (name: string, fallback: string) => {\n const value = style.getPropertyValue(name).trim();\n return value ? cssColorResolver(value, fallback, element) : fallback;\n };\n\n return {\n base: getVar('--cratis-surface-card', DEFAULT_COLORS.base),\n mid: getVar('--cratis-surface-section', DEFAULT_COLORS.mid),\n gradient: getVar('--cratis-surface-ground', DEFAULT_COLORS.gradient),\n border: getVar('--cratis-surface-border', DEFAULT_COLORS.border),\n text: getVar('--cratis-text-color', DEFAULT_COLORS.text),\n textSecondary: getVar(\n '--cratis-text-color-secondary',\n DEFAULT_COLORS.textSecondary,\n ),\n };\n}\n"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"constants.js","sources":["../../../../../PivotViewer/components/pivot/constants.ts"],"sourcesContent":[null],"names":[],"mappings":"AAMO,MAAM,YAAY,GAAG;AACrB,MAAM,WAAW,GAAG;AACpB,MAAM,QAAQ,GAAG;AAGjB,MAAM,cAAc,GAAG;AAC1B,IAAA,IAAI,EAAE,SAAS;AACf,IAAA,GAAG,EAAE,SAAS;AACd,IAAA,QAAQ,EAAE,SAAS;AACnB,IAAA,MAAM,EAAE,SAAS;AACjB,IAAA,IAAI,EAAE,SAAS;AACf,IAAA,aAAa,EAAE,SAAS;;;"}
1
+ {"version":3,"file":"constants.js","sources":["../../../../../PivotViewer/components/pivot/constants.ts"],"sourcesContent":["// Copyright (c) Cratis. All rights reserved.\n// Licensed under the MIT license. See LICENSE file in the project root for full license information.\n\nimport type * as PIXI from 'pixi.js';\n\nexport const ANIMATION_SPEED = 0.15;\nexport const CARD_PADDING = 10;\nexport const CARD_RADIUS = 12;\nexport const CARD_GAP = 8; // Gap between cards (must match layout gap)\n\n// Fallbacks tuned to the Cratis dark baseline; actual values resolved from CSS variables\nexport const DEFAULT_COLORS = {\n base: '#0f2745', // surface-b-ish deep blue\n mid: '#163359', // surface-a-ish\n gradient: '#0b1e36', // ground backdrop\n border: '#2e66ba', // primary-500 for accents\n text: '#ffffff',\n textSecondary: '#a8b2c2',\n};\n\nexport type CardColors = typeof DEFAULT_COLORS;\n\nexport interface CardSprite {\n container: PIXI.Container;\n graphics: PIXI.Graphics;\n titleText: PIXI.Text;\n labelsText: PIXI.Text;\n valuesText: PIXI.Text;\n itemId: number | string;\n targetX: number;\n targetY: number;\n currentX: number;\n currentY: number;\n // Animation state\n animationStartTime?: number;\n animationDelay?: number;\n startX?: number;\n startY?: number;\n // Cache state to avoid unnecessary redraws\n lastSelectedId?: string | number | null;\n lastCardColors?: CardColors;\n lastTitle?: string;\n lastLabels?: string;\n lastValues?: string;\n // The text and width the fitted title and values were last measured against, so a card\n // only re-measures when what it shows, or the room it has, actually changed.\n lastFittedSource?: string;\n lastFittedWidth?: number;\n /** The title as it fits the card, ellipsized when the full text does not. */\n fittedTitle?: string;\n /** The value column as it fits the card, ellipsized line by line. */\n fittedValues?: string;\n}\n\nexport default {};\n"],"names":[],"mappings":"AAMO,MAAM,YAAY,GAAG;AACrB,MAAM,WAAW,GAAG;AACpB,MAAM,QAAQ,GAAG;AAGjB,MAAM,cAAc,GAAG;AAC1B,IAAA,IAAI,EAAE,SAAS;AACf,IAAA,GAAG,EAAE,SAAS;AACd,IAAA,QAAQ,EAAE,SAAS;AACnB,IAAA,MAAM,EAAE,SAAS;AACjB,IAAA,IAAI,EAAE,SAAS;AACf,IAAA,aAAa,EAAE,SAAS;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"ellipsize.js","sources":["../../../../../PivotViewer/components/pivot/ellipsize.ts"],"sourcesContent":[null],"names":[],"mappings":"AAOO,MAAM,QAAQ,GAAG;SAmBR,aAAa,CAAC,IAAY,EAAE,QAAgB,EAAE,OAAoB,EAAA;IAC9E,IAAI,QAAQ,IAAI,CAAC,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;AAAE,QAAA,OAAO,IAAI;AACnD,IAAA,IAAI,OAAO,CAAC,IAAI,CAAC,IAAI,QAAQ;AAAE,QAAA,OAAO,IAAI;IAE1C,IAAI,IAAI,GAAG,CAAC;AACZ,IAAA,IAAI,OAAO,GAAG,IAAI,CAAC,MAAM;AACzB,IAAA,OAAO,IAAI,GAAG,OAAO,EAAE;AACnB,QAAA,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,GAAG,OAAO,IAAI,CAAC,CAAC;AAC9C,QAAA,IAAI,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,MAAM,CAAC,GAAG,QAAQ,CAAC,IAAI,QAAQ,EAAE;YACvD,IAAI,GAAG,MAAM;QACjB;aAAO;AACH,YAAA,OAAO,GAAG,MAAM,GAAG,CAAC;QACxB;IACJ;IAEA,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,QAAQ;AACzC;SAWgB,cAAc,CAAC,IAAY,EAAE,QAAgB,EAAE,OAAoB,EAAA;AAC/E,IAAA,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC;QAAE,OAAO,aAAa,CAAC,IAAI,EAAE,QAAQ,EAAE,OAAO,CAAC;AACvE,IAAA,OAAO;SACF,KAAK,CAAC,IAAI;AACV,SAAA,GAAG,CAAC,IAAI,IAAI,aAAa,CAAC,IAAI,EAAE,QAAQ,EAAE,OAAO,CAAC;SAClD,IAAI,CAAC,IAAI,CAAC;AACnB;;"}
1
+ {"version":3,"file":"ellipsize.js","sources":["../../../../../PivotViewer/components/pivot/ellipsize.ts"],"sourcesContent":["// Copyright (c) Cratis. All rights reserved.\n// Licensed under the MIT license. See LICENSE file in the project root for full license information.\n\n/** Measures how wide `candidate` renders, in the same units as the budget it is compared against. */\nexport type MeasureText = (candidate: string) => number;\n\n/** The character appended to text that had to be cut short. */\nexport const ellipsis = '…';\n\n/**\n * Shortens one line to the longest prefix that still fits `maxWidth`, marking the cut with an\n * ellipsis. Text that already fits is returned unchanged.\n *\n * Card text is drawn to a canvas with word wrapping off, so anything wider than the card simply\n * kept painting past its edge and over the card beside it. Measuring is the only way to know\n * where to cut — a glyph's width depends on the font, so counting characters cannot tell you.\n *\n * The search is binary rather than a character-at-a-time walk: measuring is the expensive part,\n * and this runs for every visible card.\n *\n * @param text The line to fit.\n * @param maxWidth The width budget. A budget of zero or less leaves the text untouched, since\n * there is no room to render anything meaningful and a bare ellipsis says less than a clipped word.\n * @param measure Measures a candidate string.\n * @returns The text, shortened and suffixed with an ellipsis only if it did not fit.\n */\nexport function ellipsizeLine(text: string, maxWidth: number, measure: MeasureText): string {\n if (maxWidth <= 0 || text.length === 0) return text;\n if (measure(text) <= maxWidth) return text;\n\n let fits = 0;\n let tooWide = text.length;\n while (fits < tooWide) {\n const middle = Math.ceil((fits + tooWide) / 2);\n if (measure(text.slice(0, middle) + ellipsis) <= maxWidth) {\n fits = middle;\n } else {\n tooWide = middle - 1;\n }\n }\n\n return text.slice(0, fits) + ellipsis;\n}\n\n/**\n * Applies {@link ellipsizeLine} to every line of a block of text, so a multi-line value column\n * is fitted line by line rather than as one string.\n *\n * @param text The block to fit, newline separated.\n * @param maxWidth The width budget for a single line.\n * @param measure Measures a candidate string.\n * @returns The block, with each line shortened only if it did not fit.\n */\nexport function ellipsizeBlock(text: string, maxWidth: number, measure: MeasureText): string {\n if (!text.includes('\\n')) return ellipsizeLine(text, maxWidth, measure);\n return text\n .split('\\n')\n .map(line => ellipsizeLine(line, maxWidth, measure))\n .join('\\n');\n}\n"],"names":[],"mappings":"AAOO,MAAM,QAAQ,GAAG;SAmBR,aAAa,CAAC,IAAY,EAAE,QAAgB,EAAE,OAAoB,EAAA;IAC9E,IAAI,QAAQ,IAAI,CAAC,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;AAAE,QAAA,OAAO,IAAI;AACnD,IAAA,IAAI,OAAO,CAAC,IAAI,CAAC,IAAI,QAAQ;AAAE,QAAA,OAAO,IAAI;IAE1C,IAAI,IAAI,GAAG,CAAC;AACZ,IAAA,IAAI,OAAO,GAAG,IAAI,CAAC,MAAM;AACzB,IAAA,OAAO,IAAI,GAAG,OAAO,EAAE;AACnB,QAAA,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,GAAG,OAAO,IAAI,CAAC,CAAC;AAC9C,QAAA,IAAI,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,MAAM,CAAC,GAAG,QAAQ,CAAC,IAAI,QAAQ,EAAE;YACvD,IAAI,GAAG,MAAM;QACjB;aAAO;AACH,YAAA,OAAO,GAAG,MAAM,GAAG,CAAC;QACxB;IACJ;IAEA,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,QAAQ;AACzC;SAWgB,cAAc,CAAC,IAAY,EAAE,QAAgB,EAAE,OAAoB,EAAA;AAC/E,IAAA,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC;QAAE,OAAO,aAAa,CAAC,IAAI,EAAE,QAAQ,EAAE,OAAO,CAAC;AACvE,IAAA,OAAO;SACF,KAAK,CAAC,IAAI;AACV,SAAA,GAAG,CAAC,IAAI,IAAI,aAAa,CAAC,IAAI,EAAE,QAAQ,EAAE,OAAO,CAAC;SAClD,IAAI,CAAC,IAAI,CAAC;AACnB;;"}
@@ -3,3 +3,4 @@ import type { CardColors } from './constants.js';
3
3
  import type { GroupingResult, LayoutResult } from '../../engine/types.js';
4
4
  export declare function updateGroupBackgrounds(groupsContainer: PIXI.Container | null, container: HTMLDivElement | null, grouping: GroupingResult, layout: LayoutResult, zoomLevel: number, cardColors: CardColors, viewMode: string): void;
5
5
  export declare function updateHighlight(groupsContainer: PIXI.Container | null, container: HTMLDivElement | null, grouping: GroupingResult, layout: LayoutResult, hoveredGroupIndex: number | null, cardWidth: number, zoomLevel: number): void;
6
+ //# sourceMappingURL=groups.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"groups.d.ts","sourceRoot":"","sources":["../../../../../PivotViewer/components/pivot/groups.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,IAAI,MAAM,SAAS,CAAC;AAChC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gBAAa,CAAC;AAC9C,OAAO,KAAK,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,uBAAoB,CAAC;AAEvE,wBAAgB,sBAAsB,CAClC,eAAe,EAAE,IAAI,CAAC,SAAS,GAAG,IAAI,EACtC,SAAS,EAAE,cAAc,GAAG,IAAI,EAChC,QAAQ,EAAE,cAAc,EACxB,MAAM,EAAE,YAAY,EACpB,SAAS,EAAE,MAAM,EACjB,UAAU,EAAE,UAAU,EACtB,QAAQ,EAAE,MAAM,QA+FnB;AAED,wBAAgB,eAAe,CAC3B,eAAe,EAAE,IAAI,CAAC,SAAS,GAAG,IAAI,EACtC,SAAS,EAAE,cAAc,GAAG,IAAI,EAChC,QAAQ,EAAE,cAAc,EACxB,MAAM,EAAE,YAAY,EACpB,iBAAiB,EAAE,MAAM,GAAG,IAAI,EAChC,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,MAAM,QA4EpB"}
@@ -1 +1 @@
1
- {"version":3,"file":"groups.js","sources":["../../../../../PivotViewer/components/pivot/groups.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"groups.js","sources":["../../../../../PivotViewer/components/pivot/groups.ts"],"sourcesContent":["// Copyright (c) Cratis. All rights reserved.\n// Licensed under the MIT license. See LICENSE file in the project root for full license information.\n\nimport * as PIXI from 'pixi.js';\nimport type { CardColors } from './constants';\nimport type { GroupingResult, LayoutResult } from '../../engine/types';\n\nexport function updateGroupBackgrounds(\n groupsContainer: PIXI.Container | null,\n container: HTMLDivElement | null,\n grouping: GroupingResult,\n layout: LayoutResult,\n zoomLevel: number,\n cardColors: CardColors,\n viewMode: string,\n) {\n if (!groupsContainer) return;\n\n // keep parameter referenced to avoid unused param lint when callers pass zoomLevel\n void zoomLevel;\n\n if (!container || grouping.groups.length === 0 || viewMode === 'collection') {\n // If we shouldn't show anything, hide all existing backgrounds\n // We keep the highlight if it exists\n for (const child of groupsContainer.children) {\n if (child.label !== 'highlight') {\n child.visible = false;\n }\n }\n return;\n }\n\n // Derive a world-space height that always covers the visible viewport even when zoomed out.\n const invScale = zoomLevel && zoomLevel !== 0 ? 1 / zoomLevel : 1;\n const containerWorldHeight = Math.max(\n (container.scrollHeight || container.clientHeight) * invScale,\n container.clientHeight * invScale,\n );\n const baseWorldHeight = Math.max(layout.totalHeight || 0, containerWorldHeight);\n // Use larger buffer and extend further above the viewport to ensure full coverage\n // when zoomed out and cards are positioned at the bottom\n const bufferWorld = Math.max(500, baseWorldHeight * 0.5, containerWorldHeight);\n const worldHeight = baseWorldHeight + bufferWorld * 3;\n const startY = -bufferWorld * 2;\n\n // Get existing background graphics (excluding highlight)\n const backgroundGraphics = groupsContainer.children.filter(\n (c) => c.label !== 'highlight',\n ) as PIXI.Graphics[];\n let bgIndex = 0;\n\n // Instead of re-deriving bucket geometry from constants, compute bucket bounds\n // directly from the positions stored in the layout so backgrounds align exactly.\n for (let index = 0; index < grouping.groups.length; index++) {\n const group = grouping.groups[index];\n let minX = Infinity;\n let maxX = -Infinity;\n\n for (let j = 0; j < group.ids.length; j++) {\n const id = group.ids[j];\n const pos = layout.positions.get(id);\n if (pos) {\n minX = Math.min(minX, pos.x);\n maxX = Math.max(maxX, pos.x);\n }\n }\n\n if (minX === Infinity && (!layout.groupXs || layout.groupXs[index] === undefined)) continue;\n\n // Prefer explicit bucket width and position from layout when available\n const bucketWidths = layout.bucketWidths || [];\n const groupXs = layout.groupXs || [];\n const widthFromLayout = bucketWidths[index];\n const xFromLayout = groupXs[index];\n\n const width = widthFromLayout && widthFromLayout > 0 ? widthFromLayout : ((maxX - minX) || 0);\n const x = xFromLayout !== undefined ? xFromLayout : minX;\n\n if (index % 2 === 0 && width > 0) {\n let bg: PIXI.Graphics;\n\n if (bgIndex < backgroundGraphics.length) {\n bg = backgroundGraphics[bgIndex];\n bg.clear();\n } else {\n bg = new PIXI.Graphics();\n // Insert before highlight if it exists, otherwise at end\n const highlightIndex = groupsContainer.children.findIndex(\n (c) => c.label === 'highlight',\n );\n if (highlightIndex >= 0) {\n groupsContainer.addChildAt(bg, highlightIndex);\n } else {\n groupsContainer.addChild(bg);\n }\n }\n\n bg.rect(x, startY, width, worldHeight);\n bg.fill(cardColors.base);\n bg.alpha = 0.15;\n bg.visible = true;\n bgIndex++;\n }\n }\n\n // Hide unused background graphics\n for (let i = bgIndex; i < backgroundGraphics.length; i++) {\n backgroundGraphics[i].visible = false;\n }\n}\n\nexport function updateHighlight(\n groupsContainer: PIXI.Container | null,\n container: HTMLDivElement | null,\n grouping: GroupingResult,\n layout: LayoutResult,\n hoveredGroupIndex: number | null,\n cardWidth: number,\n zoomLevel: number,\n) {\n if (!groupsContainer || !container || grouping.groups.length === 0) return;\n\n const invScale = zoomLevel && zoomLevel !== 0 ? 1 / zoomLevel : 1;\n\n let highlight = groupsContainer.children.find(\n (child) => child.label === 'highlight',\n ) as PIXI.Graphics;\n\n if (!highlight) {\n highlight = new PIXI.Graphics();\n highlight.label = 'highlight';\n groupsContainer.addChild(highlight);\n }\n\n highlight.clear();\n\n if (hoveredGroupIndex === null || hoveredGroupIndex < 0) {\n highlight.visible = false;\n return;\n }\n\n const group = grouping.groups[hoveredGroupIndex];\n if (!group || group.ids.length === 0) {\n highlight.visible = false;\n return;\n }\n\n // Use layout info if available\n const bucketWidths = layout.bucketWidths || [];\n const groupXs = layout.groupXs || [];\n const widthFromLayout = bucketWidths[hoveredGroupIndex];\n const xFromLayout = groupXs[hoveredGroupIndex];\n\n let rectX: number;\n let rectWidth: number;\n\n if (widthFromLayout !== undefined && xFromLayout !== undefined) {\n rectX = xFromLayout;\n rectWidth = widthFromLayout;\n } else {\n // Fallback: derive from items bounding box\n let minX = Infinity;\n let maxX = -Infinity;\n\n for (let j = 0; j < group.ids.length; j++) {\n const id = group.ids[j];\n const pos = layout.positions.get(id);\n if (pos) {\n minX = Math.min(minX, pos.x);\n maxX = Math.max(maxX, pos.x + cardWidth);\n }\n }\n\n if (minX === Infinity) {\n highlight.visible = false;\n return;\n }\n rectX = minX;\n rectWidth = maxX - minX;\n }\n\n const containerWorldHeight = Math.max(\n (container.scrollHeight || container.clientHeight) * invScale,\n container.clientHeight * invScale,\n );\n const baseWorldHeight = Math.max(layout.totalHeight || 0, containerWorldHeight);\n const bufferWorld = Math.max(200, baseWorldHeight * 0.25);\n const worldHeight = baseWorldHeight + bufferWorld * 2;\n const startY = -bufferWorld;\n\n highlight.rect(rectX, startY, rectWidth, worldHeight);\n highlight.fill(0xffffff);\n highlight.alpha = 0.05;\n highlight.visible = true;\n}\n"],"names":[],"mappings":"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"}
@@ -14,3 +14,4 @@ export declare function updateCardContent<TItem extends object>(sprite: CardSpri
14
14
  labels?: string[];
15
15
  values?: string[];
16
16
  }): void;
17
+ //# sourceMappingURL=sprites.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sprites.d.ts","sourceRoot":"","sources":["../../../../../PivotViewer/components/pivot/sprites.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,gBAAa,CAAC;AAY1D,wBAAgB,gBAAgB,CAAC,KAAK,SAAS,MAAM,EACjD,EAAE,EAAE,MAAM,GAAG,MAAM,EACnB,CAAC,EAAE,MAAM,EACT,CAAC,EAAE,MAAM,EACT,KAAK,EAAE,KAAK,EAAE,EACd,WAAW,EAAE,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC,EAAE,UAAU,EAAE,EAAE,EAAE,MAAM,GAAG,MAAM,KAAK,IAAI,EACtE,UAAU,EAAE,CAAC,CAAC,EAAE,UAAU,KAAK,IAAI,EACnC,SAAS,EAAE,MAAM,EACjB,UAAU,EAAE,MAAM,EAClB,UAAU,EAAE,UAAU,EACtB,YAAY,EAAE,CAAC,IAAI,EAAE,KAAK,KAAK;IAC3B,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;CACrB,EACD,SAAS,EAAE,CAAC,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,KAAK,MAAM,GAAG,MAAM,GAC3D,UAAU,CAoQZ;AAED,wBAAgB,aAAa,CAAC,MAAM,EAAE,UAAU,QAS/C;AAGD,wBAAgB,iBAAiB,WAEhC;AAED,wBAAgB,eAAe,SAa9B;AAED,qFAAqF;AACrF,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,UAAU,QAU1E;AAGD,wBAAgB,iBAAiB,CAAC,KAAK,SAAS,MAAM,EAClD,MAAM,EAAE,UAAU,EAClB,IAAI,EAAE,KAAK,EACX,UAAU,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,EAClC,SAAS,EAAE,MAAM,EACjB,UAAU,EAAE,MAAM,EAClB,UAAU,EAAE,UAAU,EACtB,YAAY,EAAE,CAAC,IAAI,EAAE,KAAK,KAAK;IAC3B,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;CACrB,QAoHJ"}
@@ -1 +1 @@
1
- {"version":3,"file":"sprites.js","sources":["../../../../../PivotViewer/components/pivot/sprites.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sprites.js","sources":["../../../../../PivotViewer/components/pivot/sprites.ts"],"sourcesContent":["// Copyright (c) Cratis. All rights reserved.\n// Licensed under the MIT license. See LICENSE file in the project root for full license information.\n\nimport * as PIXI from 'pixi.js';\nimport { CARD_GAP, CARD_PADDING, CARD_RADIUS } from './constants';\nimport type { CardSprite, CardColors } from './constants';\nimport { ellipsizeBlock, ellipsizeLine } from './ellipsize';\n\n/** How far the value column is inset from the card's text origin, matching where it is drawn. */\nconst VALUES_INSET = 65;\n\n/** Measures a candidate string with the style the sprite draws it in. */\nconst measureWith = (candidate: string, style: PIXI.TextStyle) =>\n PIXI.CanvasTextMetrics.measureText(candidate, style).width;\n\nconst spritePool: CardSprite[] = [];\n\nexport function createCardSprite<TItem extends object>(\n id: number | string,\n x: number,\n y: number,\n items: TItem[],\n onCardClick: (item: TItem, e: MouseEvent, id: number | string) => void,\n onPanStart: (e: MouseEvent) => void,\n cardWidth: number,\n cardHeight: number,\n cardColors: CardColors,\n cardRenderer: (item: TItem) => {\n title: string;\n labels?: string[];\n values?: string[];\n },\n resolveId: (item: TItem, index: number) => string | number,\n): CardSprite {\n if (spritePool.length > 0) {\n const sprite = spritePool.pop()!;\n if (sprite.container) {\n sprite.container.visible = true;\n sprite.container.alpha = 1;\n sprite.container.position.set(x, y);\n }\n sprite.itemId = id;\n sprite.targetX = x;\n sprite.targetY = y;\n sprite.currentX = x;\n sprite.currentY = y;\n\n // A recycled sprite must start a new hidden grace period if it leaves the viewport.\n delete (sprite as CardSprite & { __lastHiddenAt?: number }).__lastHiddenAt;\n\n // Reset animation state\n delete sprite.animationStartTime;\n delete sprite.animationDelay;\n delete sprite.startX;\n delete sprite.startY;\n\n // Reset cache\n sprite.lastSelectedId = null;\n sprite.lastCardColors = undefined;\n sprite.lastTitle = undefined;\n sprite.lastLabels = undefined;\n sprite.lastValues = undefined;\n\n // Recreate graphics if it was destroyed\n if (!sprite.graphics || sprite.graphics.destroyed) {\n sprite.graphics = new PIXI.Graphics();\n if (sprite.container) {\n sprite.container.addChildAt(sprite.graphics, 0);\n }\n }\n\n // Recreate text objects if they were destroyed\n const offsetX = CARD_GAP / 2;\n const offsetY = CARD_GAP / 2;\n\n if (!sprite.titleText || sprite.titleText.destroyed) {\n sprite.titleText = new PIXI.Text({\n text: '',\n style: {\n fontSize: 13,\n fill: cardColors.text,\n fontWeight: '600',\n lineHeight: 18,\n wordWrap: false,\n },\n });\n sprite.titleText.position.set(offsetX + CARD_PADDING, offsetY + CARD_PADDING);\n if (sprite.container) {\n sprite.container.addChild(sprite.titleText);\n }\n }\n\n if (!sprite.labelsText || sprite.labelsText.destroyed) {\n sprite.labelsText = new PIXI.Text({\n text: '',\n style: {\n fontSize: 11,\n fill: cardColors.textSecondary,\n fontWeight: '400',\n lineHeight: 18,\n },\n });\n sprite.labelsText.position.set(\n offsetX + CARD_PADDING,\n offsetY + CARD_PADDING + 40,\n );\n if (sprite.container) {\n sprite.container.addChild(sprite.labelsText);\n }\n }\n\n if (!sprite.valuesText || sprite.valuesText.destroyed) {\n sprite.valuesText = new PIXI.Text({\n text: '',\n style: {\n fontSize: 11,\n fill: cardColors.text,\n fontWeight: '500',\n lineHeight: 18,\n wordWrap: false,\n },\n });\n sprite.valuesText.position.set(\n offsetX + CARD_PADDING + 65,\n offsetY + CARD_PADDING + 40,\n );\n if (sprite.container) {\n sprite.container.addChild(sprite.valuesText);\n }\n }\n\n // Update event context\n if (sprite.container) {\n // SAFETY: Pixi containers permit application-owned metadata used by these event handlers.\n (\n sprite.container as unknown as {\n _eventContext: {\n items: TItem[];\n onCardClick: (\n item: TItem,\n e: MouseEvent,\n id: number | string,\n ) => void;\n id: number | string;\n cardRenderer: (item: TItem) => {\n title: string;\n labels?: string[];\n values?: string[];\n };\n resolveId: (item: TItem, index: number) => string | number;\n };\n }\n )._eventContext = { items, onCardClick, id, cardRenderer, resolveId };\n }\n\n return sprite;\n }\n\n const container = new PIXI.Container();\n container.eventMode = 'static';\n container.cursor = 'pointer';\n container.position.set(x, y);\n\n // Define hit area to match the visible card size (excluding gaps)\n // This ensures the entire card is clickable and avoids issues with text blocking hits\n container.hitArea = new PIXI.Rectangle(\n CARD_GAP / 2,\n CARD_GAP / 2,\n cardWidth - CARD_GAP,\n cardHeight - CARD_GAP,\n );\n\n // Container configured for pointer interactions; hitArea matches visible card.\n\n // Store context for event handlers.\n // SAFETY: Pixi containers permit application-owned metadata used by these event handlers.\n (\n container as unknown as {\n _eventContext: {\n items: TItem[];\n onCardClick: (item: TItem, e: MouseEvent, id: number | string) => void;\n id: number | string;\n cardRenderer: (item: TItem) => {\n title: string;\n labels?: string[];\n values?: string[];\n };\n resolveId: (item: TItem, index: number) => string | number;\n };\n }\n )._eventContext = { items, onCardClick, id, cardRenderer, resolveId };\n\n const graphics = new PIXI.Graphics();\n\n const actualWidth = cardWidth - CARD_GAP;\n const actualHeight = cardHeight - CARD_GAP;\n const offsetX = CARD_GAP / 2;\n const offsetY = CARD_GAP / 2;\n\n const gradient = new PIXI.FillGradient({\n type: 'linear',\n start: { x: 0, y: offsetY },\n end: { x: 0, y: offsetY + actualHeight },\n colorStops: [\n { offset: 0, color: cardColors.mid },\n { offset: 1, color: cardColors.base },\n ],\n });\n\n graphics.roundRect(offsetX, offsetY, actualWidth, actualHeight, CARD_RADIUS);\n graphics.fill(gradient);\n\n container.addChild(graphics);\n\n const titleText = new PIXI.Text({\n text: '',\n style: {\n fontSize: 13,\n fill: cardColors.text,\n fontWeight: '600',\n lineHeight: 18,\n wordWrap: false,\n },\n });\n titleText.position.set(offsetX + CARD_PADDING, offsetY + CARD_PADDING);\n container.addChild(titleText);\n\n const labelsText = new PIXI.Text({\n text: '',\n style: {\n fontSize: 11,\n fill: cardColors.textSecondary,\n fontWeight: '400',\n lineHeight: 18,\n },\n });\n labelsText.position.set(offsetX + CARD_PADDING, offsetY + CARD_PADDING + 40);\n container.addChild(labelsText);\n\n const valuesText = new PIXI.Text({\n text: '',\n style: {\n fontSize: 11,\n fill: cardColors.text,\n fontWeight: '500',\n lineHeight: 18,\n wordWrap: false,\n },\n });\n valuesText.position.set(offsetX + CARD_PADDING + 65, offsetY + CARD_PADDING + 40);\n container.addChild(valuesText);\n\n container.on('click', (e: PIXI.FederatedPointerEvent) => {\n e.stopPropagation();\n // SAFETY: The context is assigned above before pointer handlers can run.\n const ctx = (\n container as unknown as {\n _eventContext: {\n items: TItem[];\n onCardClick: (\n item: TItem,\n e: MouseEvent,\n id: number | string,\n ) => void;\n id: number | string;\n };\n }\n )._eventContext;\n const itemsArray = ctx.items;\n const numericId = typeof ctx.id === 'number' ? ctx.id : Number(ctx.id);\n const item = itemsArray[numericId];\n if (item) {\n ctx.onCardClick(item, e.nativeEvent as MouseEvent, ctx.id);\n }\n });\n\n container.on('pointerdown', (e: PIXI.FederatedPointerEvent) => {\n e.stopPropagation();\n // onPanStart(e.nativeEvent as MouseEvent);\n });\n\n return {\n container,\n graphics,\n titleText,\n labelsText,\n valuesText,\n itemId: id,\n targetX: x,\n targetY: y,\n currentX: x,\n currentY: y,\n };\n}\n\nexport function destroySprite(sprite: CardSprite) {\n if (sprite.container && sprite.container.parent) {\n sprite.container.parent.removeChild(sprite.container);\n }\n // Reset visibility to ensure it doesn't ghost if something goes wrong\n if (sprite.container) {\n sprite.container.visible = false;\n }\n spritePool.push(sprite);\n}\n\n// Internal diagnostic for the browser teardown regression; not exported from the package entry point.\nexport function getSpritePoolSize() {\n return spritePool.length;\n}\n\nexport function clearSpritePool() {\n for (const sprite of spritePool) {\n try {\n sprite.graphics?.destroy();\n sprite.titleText?.destroy();\n sprite.labelsText?.destroy();\n sprite.valuesText?.destroy();\n sprite.container?.destroy();\n } catch (e) {\n void e;\n }\n }\n spritePool.length = 0;\n}\n\n/** Refreshes every existing Pixi text fill after a public color override changes. */\nexport function updateCardTextColors(sprite: CardSprite, colors: CardColors) {\n if (sprite.titleText?.style) {\n sprite.titleText.style.fill = colors.text;\n }\n if (sprite.labelsText?.style) {\n sprite.labelsText.style.fill = colors.textSecondary;\n }\n if (sprite.valuesText?.style) {\n sprite.valuesText.style.fill = colors.text;\n }\n}\n\n// Updated: Text objects now recreated when recycling pooled sprites\nexport function updateCardContent<TItem extends object>(\n sprite: CardSprite,\n item: TItem,\n selectedId: string | number | null,\n cardWidth: number,\n cardHeight: number,\n cardColors: CardColors,\n cardRenderer: (item: TItem) => {\n title: string;\n labels?: string[];\n values?: string[];\n },\n) {\n if (!item) return;\n\n // Selection rendering depends on sprite.itemId matching selectedId\n\n const colors = cardColors;\n const cardData = cardRenderer(item);\n const rawTitle = cardData.title;\n const labelsText = (cardData.labels || []).join('\\n');\n const rawValues = (cardData.values || []).join('\\n');\n const colorsChanged = sprite.lastCardColors !== colors;\n\n // Ensure text objects exist before using them\n if (!sprite.titleText || sprite.titleText.destroyed) return;\n if (!sprite.labelsText || sprite.labelsText.destroyed) return;\n if (!sprite.valuesText || sprite.valuesText.destroyed) return;\n\n // The title and the value column are drawn with word wrapping off, so without a budget they\n // paint straight past the card and over its neighbour. Both start at a known inset, so the\n // room each has is the card's inner width less where it begins.\n const innerWidth = cardWidth - CARD_GAP - CARD_PADDING * 2;\n const fitSource = `${rawTitle}\\u0000${rawValues}`;\n if (sprite.lastFittedSource !== fitSource || sprite.lastFittedWidth !== innerWidth) {\n sprite.lastFittedSource = fitSource;\n sprite.lastFittedWidth = innerWidth;\n sprite.fittedTitle = ellipsizeLine(\n rawTitle,\n innerWidth,\n candidate => measureWith(candidate, sprite.titleText.style));\n sprite.fittedValues = ellipsizeBlock(\n rawValues,\n innerWidth - VALUES_INSET,\n candidate => measureWith(candidate, sprite.valuesText.style));\n }\n\n const titleDisplay = sprite.fittedTitle ?? rawTitle;\n const valuesText = sprite.fittedValues ?? rawValues;\n\n if (sprite.lastTitle !== titleDisplay) {\n sprite.titleText.text = titleDisplay;\n sprite.lastTitle = titleDisplay;\n }\n\n if (sprite.lastLabels !== labelsText) {\n sprite.labelsText.text = labelsText;\n sprite.lastLabels = labelsText;\n }\n\n if (colorsChanged) updateCardTextColors(sprite, colors);\n\n if (sprite.lastValues !== valuesText) {\n sprite.valuesText.text = valuesText;\n sprite.lastValues = valuesText;\n }\n\n sprite.titleText.visible = true;\n sprite.labelsText.visible = true;\n sprite.valuesText.visible = true;\n\n const isSelected = sprite.itemId === selectedId;\n\n // Only redraw graphics if selection state or colors changed\n if (sprite.lastSelectedId === selectedId && !colorsChanged && sprite.graphics) {\n return;\n }\n\n sprite.lastSelectedId = selectedId;\n sprite.lastCardColors = cardColors;\n\n // Ensure graphics exists before attempting to use it\n if (!sprite.graphics || sprite.graphics.destroyed) {\n sprite.graphics = new PIXI.Graphics();\n if (sprite.container) {\n sprite.container.addChildAt(sprite.graphics, 0);\n }\n } else {\n sprite.graphics.clear();\n }\n\n const actualWidth = cardWidth - CARD_GAP;\n const actualHeight = cardHeight - CARD_GAP;\n const offsetX = CARD_GAP / 2;\n const offsetY = CARD_GAP / 2;\n\n const gradient = new PIXI.FillGradient({\n type: 'linear',\n start: { x: 0, y: offsetY },\n end: { x: 0, y: offsetY + actualHeight },\n colorStops: isSelected\n ? [\n { offset: 0, color: colors.gradient },\n { offset: 1, color: colors.mid },\n ]\n : [\n { offset: 0, color: colors.mid },\n { offset: 1, color: colors.base },\n ],\n });\n\n sprite.graphics.roundRect(offsetX, offsetY, actualWidth, actualHeight, CARD_RADIUS);\n\n // Ensure graphics is still valid before filling\n if (sprite.graphics && !sprite.graphics.destroyed) {\n sprite.graphics.fill(gradient);\n }\n\n if (isSelected) {\n if (sprite.graphics && !sprite.graphics.destroyed) {\n sprite.graphics.stroke({ width: 2, color: colors.border });\n }\n } else {\n if (sprite.graphics && !sprite.graphics.destroyed) {\n sprite.graphics.stroke({ width: 1, color: colors.border, alpha: 0.35 });\n }\n }\n}\n"],"names":[],"mappings":"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"}
@@ -2,3 +2,4 @@ import type { LayoutResult } from '../../engine/types.js';
2
2
  import { type SyncParams } from './visibility.js';
3
3
  /** Keep the scroll path's transition layout in sync with the normal render path. */
4
4
  export declare function syncScrollSprites<TItem>(params: Omit<SyncParams<TItem>, 'prevLayout'>, previousLayout: LayoutResult | null): void;
5
+ //# sourceMappingURL=syncScrollSprites.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"syncScrollSprites.d.ts","sourceRoot":"","sources":["../../../../../PivotViewer/components/pivot/syncScrollSprites.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,uBAAoB,CAAC;AACvD,OAAO,EAAyB,KAAK,UAAU,EAAE,MAAM,iBAAc,CAAC;AAEtE,oFAAoF;AACpF,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,YAAY,CAAC,EAAE,cAAc,EAAE,YAAY,GAAG,IAAI,QAE1H"}
@@ -1 +1 @@
1
- {"version":3,"file":"syncScrollSprites.js","sources":["../../../../../PivotViewer/components/pivot/syncScrollSprites.ts"],"sourcesContent":[null],"names":[],"mappings":";;AAOM,SAAU,iBAAiB,CAAQ,MAA6C,EAAE,cAAmC,EAAA;IACvH,qBAAqB,CAAC,EAAE,GAAG,MAAM,EAAE,UAAU,EAAE,cAAc,EAAE,CAAC;AACpE;;"}
1
+ {"version":3,"file":"syncScrollSprites.js","sources":["../../../../../PivotViewer/components/pivot/syncScrollSprites.ts"],"sourcesContent":["// Copyright (c) Cratis. All rights reserved.\n// Licensed under the MIT license. See LICENSE file in the project root for full license information.\n\nimport type { LayoutResult } from '../../engine/types';\nimport { syncSpritesToViewport, type SyncParams } from './visibility';\n\n/** Keep the scroll path's transition layout in sync with the normal render path. */\nexport function syncScrollSprites<TItem>(params: Omit<SyncParams<TItem>, 'prevLayout'>, previousLayout: LayoutResult | null) {\n syncSpritesToViewport({ ...params, prevLayout: previousLayout });\n}\n"],"names":[],"mappings":";;AAOM,SAAU,iBAAiB,CAAQ,MAA6C,EAAE,cAAmC,EAAA;IACvH,qBAAqB,CAAC,EAAE,GAAG,MAAM,EAAE,UAAU,EAAE,cAAc,EAAE,CAAC;AACpE;;"}
@@ -29,3 +29,4 @@ export interface SyncParams<TItem> {
29
29
  prevScrollLeft?: number;
30
30
  }
31
31
  export declare function syncSpritesToViewport<TItem>(params: SyncParams<TItem>): void;
32
+ //# sourceMappingURL=visibility.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"visibility.d.ts","sourceRoot":"","sources":["../../../../../PivotViewer/components/pivot/visibility.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,IAAI,MAAM,SAAS,CAAC;AAChC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gBAAa,CAAC;AAE9C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,uBAAoB,CAAC;AAGvD,MAAM,WAAW,UAAU,CAAC,KAAK;IAC7B,IAAI,EAAE,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;IAC5B,eAAe,CAAC,EAAE,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;IACxC,SAAS,EAAE,cAAc,GAAG,IAAI,CAAC;IACjC,OAAO,EAAE,GAAG,CAAC,MAAM,GAAG,MAAM,EAAE,UAAU,CAAC,CAAC;IAC1C,MAAM,EAAE,YAAY,CAAC;IACrB,UAAU,EAAE,WAAW,CAAC;IACxB,KAAK,EAAE,KAAK,EAAE,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,aAAa,EAAE,MAAM,CAAC;IACtB,cAAc,EAAE,MAAM,CAAC;IACvB,SAAS,EAAE,MAAM,CAAC;IAClB,gBAAgB,EAAE,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,KAAK,UAAU,CAAC;IAC5E,iBAAiB,EAAE,CAAC,MAAM,EAAE,UAAU,EAAE,IAAI,EAAE,KAAK,KAAK,IAAI,CAAC;IAC7D,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,YAAY,GAAG,IAAI,CAAC;IACjC,iBAAiB,EAAE,GAAG,CAAC,MAAM,GAAG,MAAM,CAAC,CAAC;IACxC,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,cAAc,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,MAAM,EAAE,UAAU,CAAC,KAAK,CAAC,QAiTrE"}
@@ -1 +1 @@
1
- {"version":3,"file":"visibility.js","sources":["../../../../../PivotViewer/components/pivot/visibility.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"visibility.js","sources":["../../../../../PivotViewer/components/pivot/visibility.ts"],"sourcesContent":["// Copyright (c) Cratis. All rights reserved.\n// Licensed under the MIT license. See LICENSE file in the project root for full license information.\n\nimport * as PIXI from 'pixi.js';\nimport type { CardSprite } from './constants';\nimport { CARD_GAP } from './constants';\nimport type { LayoutResult } from '../../engine/types';\nimport { destroySprite } from './sprites';\n\nexport interface SyncParams<TItem> {\n root: PIXI.Container | null;\n groupsContainer?: PIXI.Container | null;\n container: HTMLDivElement | null;\n sprites: Map<string | number, CardSprite>;\n layout: LayoutResult;\n visibleIds: Uint32Array;\n items: TItem[];\n cardWidth: number;\n cardHeight: number;\n panX: number;\n panY: number;\n panDeltaX?: number;\n panDeltaY?: number;\n viewportWidth: number;\n viewportHeight: number;\n zoomLevel: number;\n createCardSprite: (id: string | number, x: number, y: number) => CardSprite;\n updateCardContent: (sprite: CardSprite, item: TItem) => void;\n isViewTransition?: boolean;\n viewMode: string;\n prevLayout?: LayoutResult | null;\n transitionSeenIds: Set<string | number>;\n sweepImmediately?: boolean;\n prevScrollTop?: number;\n prevScrollLeft?: number;\n}\n\nexport function syncSpritesToViewport<TItem>(params: SyncParams<TItem>) {\n const { root, groupsContainer, container, sprites, layout, visibleIds: _visibleIds, items, cardWidth, cardHeight, panX, panY, panDeltaX, panDeltaY, viewportWidth, viewportHeight, createCardSprite, updateCardContent, zoomLevel, isViewTransition, viewMode, prevLayout, transitionSeenIds } = params;\n if (!root || !container) return;\n\n void _visibleIds;\n\n // Use the container's measured client size for the viewport dimensions\n // (in pixels). The passed `viewportWidth`/`viewportHeight` can be stale\n // when the browser/device zoom changes; `clientWidth/clientHeight` are\n // authoritative for the actual visible pixel area.\n const viewportPxWidth = container.clientWidth || viewportWidth;\n const viewportPxHeight = container.clientHeight || viewportHeight;\n\n const contentHeightPx = (layout.totalHeight || 0) * zoomLevel;\n let offsetY = 0;\n\n // If content fits vertically within the viewport, align relative to bottom.\n // The spacer ensures container isn't scrollable in this case (scrollTop=0).\n // The items are at large Y coordinates relative to layout.totalHeight.\n // We want the bottom of the layout (totalHeight) to align with viewport bottom.\n if (viewMode === 'grouped' && contentHeightPx < viewportPxHeight) {\n // Calculate offset in pixels to shift the content down\n offsetY = viewportPxHeight - contentHeightPx;\n }\n\n // Use the container's actual scroll position for positioning, not the passed panX/panY\n // which may be stale (from React state) compared to live DOM scroll values.\n const actualScrollX = typeof container.scrollLeft === 'number' ? container.scrollLeft : (panX || 0);\n const actualScrollY = typeof container.scrollTop === 'number' ? container.scrollTop : (panY || 0);\n\n // Apply scaling and position to root container\n if (root) {\n root.scale.set(zoomLevel);\n // Standard position: -scrollX, -scrollY\n // Plus vertical alignment offset if zoomed out\n root.position.set(-actualScrollX, offsetY - actualScrollY);\n }\n \n // Apply synchronization to groups container if present\n if (groupsContainer) {\n groupsContainer.scale.set(zoomLevel);\n groupsContainer.position.set(-actualScrollX, offsetY - actualScrollY);\n }\n\n // `visibleIds` comes from callers but this module iterates `layout.positions`\n\n // Note: Pan delta compensation is NOT applied during view transitions because:\n // 1. The time-based animation system handles position changes smoothly\n // 2. Applying pan delta during animation interferes with the interpolation\n // 3. The scroll position changes are a natural part of the view mode switch\n // This compensation is only useful for rapid scrolling/panning where sprites\n // need to maintain visual stability, which isn't the case during view transitions.\n\n const visibleSet = new Set<string | number>();\n\n // Increase buffer (in world units) to reduce edge cases where rapid\n // scrolling skips sprite creation. Keep buffer in world units and convert\n // DOM pixel measurements into world coordinates below to avoid mixing\n // coordinate spaces which can cause precision drift at browser zooms.\n const baseBufferWorld = Math.max(cardWidth, cardHeight) * 4;\n // Ensure buffer scales with viewport size (in world units) so that when\n // zoomed out we still pre-create enough sprites ahead of the viewport.\n const invScale = zoomLevel && zoomLevel !== 0 ? 1 / zoomLevel : 1;\n // The layout positions are in world units; when the root container is scaled\n // (zoomed) the rendered pixel position = position * zoomLevel. The DOM\n // scroll positions (`container.scrollLeft/Top`) are the authoritative pixel\n // camera offsets; prefer them over the passed `panX/panY` to avoid stale\n // values or race conditions between React state and direct DOM updates.\n const effectivePanX = typeof container.scrollLeft === 'number' ? container.scrollLeft : (panX || 0);\n const effectivePanY = typeof container.scrollTop === 'number' ? container.scrollTop : (panY || 0);\n\n // Convert pixel-based DOM measurements into world units so we compare like\n // with like. root.position is set using -pixels, so the mapping\n // from DOM scroll (pixels) to world units is: world = pixels / zoomLevel.\n // OffsetY is already in pixels and doesn't need scaling in panWorldY calc\n // because panWorldY is used for viewport buffering/culling, which is relative\n // to the \"camera\" position in world space.\n // The camera world Y = (scrollTop - offsetY) / zoomLevel.\n const effectivePanYWithOffset = effectivePanY - offsetY;\n const panWorldX = effectivePanX * invScale;\n const panWorldY = effectivePanYWithOffset * invScale;\n\n const viewportWorldWidth = viewportPxWidth * invScale;\n const viewportWorldHeight = viewportPxHeight * invScale;\n\n // Ensure bufferWorld is calculated from the actual measured viewport\n // in world units (after converting client pixel dims using invScale).\n // Make buffer adaptive to zoom: when zoomed out (invScale > 1) a small\n // pixel scroll maps to a larger world delta, so increase the buffer.\n // Use the larger of width/height to ensure we buffer enough in both directions.\n const bufferWorld = Math.max(baseBufferWorld * invScale, Math.max(viewportWorldWidth, viewportWorldHeight) * 2.0, baseBufferWorld);\n\n // Do not clamp viewport edges to 0 — allow negative top/left values so the\n // visible window correctly follows the scroll even when the buffer is\n // larger than the current scroll offset.\n const viewportLeftWorld = panWorldX - bufferWorld;\n const viewportRightWorld = panWorldX + viewportWorldWidth + bufferWorld;\n const viewportTopWorld = panWorldY - bufferWorld;\n const viewportBottomWorld = panWorldY + viewportWorldHeight + bufferWorld;\n\n const inViewportIds: (string | number)[] = [];\n // Small tolerance in world units to avoid floating-point edge cases when\n // browser/device zoom or high scroll values produce tiny rounding errors.\n const worldEpsilon = Math.max(0.5, 0.5 * invScale);\n const intersectsViewport = (x: number, y: number) =>\n x + cardWidth >= viewportLeftWorld - worldEpsilon &&\n x <= viewportRightWorld + worldEpsilon &&\n y + cardHeight >= viewportTopWorld - worldEpsilon &&\n y <= viewportBottomWorld + worldEpsilon;\n const addVisibleId = (id: string | number) => {\n if (!visibleSet.has(id)) {\n inViewportIds.push(id);\n visibleSet.add(id);\n }\n };\n\n // Target positions are authoritative, but during a transition cards may\n // still be at their old positions while the camera catches up.\n for (const [id, position] of layout.positions) {\n if (position && intersectsViewport(position.x, position.y)) addVisibleId(id);\n }\n if (isViewTransition) {\n for (const [id, position] of prevLayout?.positions ?? []) {\n if (!sprites.has(id) && !transitionSeenIds.has(id) && layout.positions.has(id) && position && intersectsViewport(position.x, position.y)) addVisibleId(id);\n }\n for (const [id, sprite] of sprites) {\n transitionSeenIds.add(id);\n if (layout.positions.has(id) && intersectsViewport(sprite.currentX, sprite.currentY)) addVisibleId(id);\n }\n }\n\n // Ensure last rows are present when the user scrolls near the bottom.\n // Compute slot/row information and force-insert IDs from the last few\n // rows to avoid missing tiles due to rounding/precision at zoom levels.\n try {\n const slotHeight = cardHeight + (CARD_GAP || 8);\n const totalRows = Math.ceil((layout.totalHeight || 0) / slotHeight) || 0;\n // Determine how many rows are visible in the viewport (world units),\n // then prefetch a fraction of that adjusted by zoom (invScale).\n const rowsVisible = Math.max(1, Math.ceil(viewportWorldHeight / slotHeight));\n const prefetchMultiplier = 0.75; // fraction of viewport to prefetch\n const prefetchRows = Math.max(2, Math.ceil(rowsVisible * prefetchMultiplier * Math.max(1, invScale)));\n const lastRowThresholdY = Math.max(0, (totalRows - prefetchRows) * slotHeight);\n for (const [id, position] of layout.positions) {\n if (position.y >= lastRowThresholdY) {\n if (!visibleSet.has(id)) {\n inViewportIds.push(id);\n visibleSet.add(id);\n }\n }\n }\n } catch (e) {\n void e;\n }\n\n // Outside transitions, avoid mass-hiding sprites on a potentially stale viewport calculation.\n const aggressiveCull = !isViewTransition && sprites.size > Math.max(120, Math.ceil(inViewportIds.length * 1.5));\n\n for (const [id, sprite] of sprites) {\n if (!visibleSet.has(id)) {\n if (aggressiveCull) {\n // Keep sprite visible this frame to avoid visual holes\n try { if (sprite.container) sprite.container.visible = true; } catch (e) { void e; }\n continue;\n }\n\n try {\n if (sprite.container) {\n sprite.container.visible = false;\n }\n (sprite as unknown as { __lastHiddenAt?: number }).__lastHiddenAt ??= Date.now();\n } catch (e) {\n void e;\n }\n } else {\n try {\n if (sprite.container) {\n sprite.container.visible = true;\n }\n if ((sprite as unknown as { __lastHiddenAt?: number }).__lastHiddenAt) delete (sprite as unknown as { __lastHiddenAt?: number }).__lastHiddenAt;\n } catch (e) { void e; }\n }\n }\n\n // Sweep: actually destroy sprites that have been hidden longer than threshold\n try {\n const SWEEP_MS = 100; // keep hidden sprites for 100ms before destruction (reduced from 500ms for faster mode transitions)\n const now = Date.now();\n for (const [id, sprite] of sprites) {\n const lastHidden = (sprite as unknown as { __lastHiddenAt?: number }).__lastHiddenAt;\n if (lastHidden && (params.sweepImmediately || now - lastHidden > SWEEP_MS)) {\n try {\n // remove from parent if present\n if (sprite.container && sprite.container.parent) sprite.container.parent.removeChild(sprite.container);\n } catch (e) {\n void e;\n }\n try {\n destroySprite(sprite);\n } catch (e) {\n void e;\n }\n sprites.delete(id);\n }\n }\n } catch (e) {\n void e;\n }\n\n // Limit the number of sprites created per frame to avoid choking the GPU/CPU\n // when scrolling rapidly or zooming out significantly.\n const MAX_SPRITES_PER_FRAME = 50;\n let createdCount = 0;\n\n\n for (const id of inViewportIds) {\n const position = layout.positions.get(id);\n if (!position) {\n continue;\n }\n\n let sprite = sprites.get(id);\n if (!sprite) {\n if (createdCount >= MAX_SPRITES_PER_FRAME) {\n continue;\n }\n createdCount++;\n\n let startX = position.x;\n let startY = position.y;\n let shouldAnimate = false;\n\n // If view transition, try to find old position to fly in from\n if (isViewTransition && prevLayout && prevLayout.positions.has(id)) {\n const oldPos = prevLayout.positions.get(id);\n if (oldPos && intersectsViewport(oldPos.x, oldPos.y)) {\n startX = oldPos.x;\n startY = oldPos.y;\n\n // If we have a pan delta (camera jump), we need to adjust the start position\n // so that the sprite appears at the same visual location relative to the NEW camera.\n // StartWorld = OldWorld + PanDelta\n if (panDeltaX || panDeltaY) {\n const dx = (panDeltaX || 0) / (zoomLevel || 1);\n const dy = (panDeltaY || 0) / (zoomLevel || 1);\n startX += dx;\n startY += dy;\n }\n\n shouldAnimate = true;\n }\n }\n\n sprite = createCardSprite(id, startX, startY);\n sprites.set(id, sprite);\n if (isViewTransition) transitionSeenIds.add(id);\n if (sprite.container) {\n root.addChild(sprite.container);\n sprite.currentX = startX;\n sprite.currentY = startY;\n // Keep sprite.container positioned in world units; animation/update\n // loop will apply root.scale/position to convert to pixels.\n sprite.container.position.set(startX, startY);\n }\n\n if (shouldAnimate) {\n sprite.targetX = position.x;\n sprite.targetY = position.y;\n sprite.startX = startX;\n sprite.startY = startY;\n sprite.animationStartTime = Date.now();\n sprite.animationDelay = Math.random() * 300;\n }\n }\n\n // Check if target changed to trigger animation\n const targetChanged = sprite.targetX !== position.x || sprite.targetY !== position.y;\n if (targetChanged) {\n if (isViewTransition) {\n // Only set up animation if not already animating - don't reset animation\n // when targets change during layout recalculations\n if (sprite.animationStartTime === undefined) {\n sprite.startX = sprite.currentX;\n sprite.startY = sprite.currentY;\n sprite.animationStartTime = Date.now();\n // Add random delay for \"organic\" fly effect\n sprite.animationDelay = Math.random() * 300;\n }\n // Always update target to the new position (animation will smoothly\n // adjust to the new target)\n sprite.targetX = position.x;\n sprite.targetY = position.y;\n } else {\n sprite.targetX = position.x;\n sprite.targetY = position.y;\n delete sprite.animationStartTime;\n delete sprite.animationDelay;\n }\n }\n\n const item = items[Number(id)];\n if (item) {\n updateCardContent(sprite, item);\n }\n }\n}\n"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"constants.js","sources":["../../../PivotViewer/constants.ts"],"sourcesContent":[null],"names":[],"mappings":"AAGO,MAAM,eAAe,GAAG;AACxB,MAAM,gBAAgB,GAAG;AACzB,MAAM,gBAAgB,GAAG;AAEzB,MAAM,QAAQ,GAAG;AACjB,MAAM,cAAc,GAAG;;"}
1
+ {"version":3,"file":"constants.js","sources":["../../../PivotViewer/constants.ts"],"sourcesContent":["// Copyright (c) Cratis. All rights reserved.\n// Licensed under the MIT license. See LICENSE file in the project root for full license information.\n\nexport const BASE_CARD_WIDTH = 200;\nexport const BASE_CARD_HEIGHT = 176;\nexport const CARDS_PER_COLUMN = 5;\nexport const GROUP_SPACING = 20;\nexport const CARD_GAP = 10;\nexport const CANVAS_PADDING = 20;\n"],"names":[],"mappings":"AAGO,MAAM,eAAe,GAAG;AACxB,MAAM,gBAAgB,GAAG;AACzB,MAAM,gBAAgB,GAAG;AAEzB,MAAM,QAAQ,GAAG;AACjB,MAAM,cAAc,GAAG;;"}
@@ -1,2 +1,3 @@
1
1
  import type { LayoutSpec, LayoutResult, GroupingResult } from './types.js';
2
2
  export declare function computeLayout(grouping: GroupingResult, spec: LayoutSpec): LayoutResult;
3
+ //# sourceMappingURL=layout.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"layout.d.ts","sourceRoot":"","sources":["../../../../PivotViewer/engine/layout.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACV,UAAU,EACV,YAAY,EAEZ,cAAc,EAEf,MAAM,YAAS,CAAC;AAGjB,wBAAgB,aAAa,CAC3B,QAAQ,EAAE,cAAc,EACxB,IAAI,EAAE,UAAU,GACf,YAAY,CAQd"}
@@ -1 +1 @@
1
- {"version":3,"file":"layout.js","sources":["../../../../PivotViewer/engine/layout.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"layout.js","sources":["../../../../PivotViewer/engine/layout.ts"],"sourcesContent":["// Copyright (c) Cratis. All rights reserved.\n// Licensed under the MIT license. See LICENSE file in the project root for full license information.\n\nimport type {\n LayoutSpec,\n LayoutResult,\n ItemPosition,\n GroupingResult,\n ItemId,\n} from './types';\nimport { CARD_GAP, CANVAS_PADDING } from '../constants';\n\nexport function computeLayout(\n grouping: GroupingResult,\n spec: LayoutSpec\n): LayoutResult {\n const positions = new Map<ItemId, ItemPosition>();\n\n if (spec.viewMode === 'collection') {\n return computeCollectionLayout(grouping, spec, positions);\n } else {\n return computeGroupedLayout(grouping, spec, positions);\n }\n}\n\nfunction computeCollectionLayout(\n grouping: GroupingResult,\n spec: LayoutSpec,\n positions: Map<ItemId, ItemPosition>\n): LayoutResult {\n const { cardWidth, cardHeight, containerWidth } = spec;\n const slotWidth = cardWidth + CARD_GAP;\n const slotHeight = cardHeight + CARD_GAP;\n\n // Calculate how many cards fit per row based on container width (include gap)\n const cardsPerRow = Math.max(1, Math.floor((containerWidth + CARD_GAP - (CANVAS_PADDING * 2)) / slotWidth));\n\n let x = CANVAS_PADDING;\n let y = CANVAS_PADDING;\n let column = 0;\n let itemCount = 0;\n\n for (const group of grouping.groups) {\n for (let i = 0; i < group.ids.length; i++) {\n const id = group.ids[i];\n\n positions.set(id, {\n x,\n y,\n groupIndex: 0,\n });\n\n // Move to next position horizontally (left to right)\n column++;\n x += slotWidth;\n\n // Wrap to next row when we've filled the width\n if (column >= cardsPerRow) {\n column = 0;\n x = CANVAS_PADDING;\n y += slotHeight;\n }\n\n itemCount++;\n }\n }\n\n const rows = Math.ceil(itemCount / cardsPerRow);\n const contentWidth = Math.min(itemCount, cardsPerRow) * slotWidth;\n\n return {\n positions,\n totalWidth: Math.max(containerWidth, contentWidth + (CANVAS_PADDING * 2)),\n totalHeight: (rows * slotHeight) + (CANVAS_PADDING * 2),\n };\n}\n\nfunction computeGroupedLayout(\n grouping: GroupingResult,\n spec: LayoutSpec,\n positions: Map<ItemId, ItemPosition>\n): LayoutResult {\n const { cardWidth, cardHeight, cardsPerColumn } = spec;\n // Override group spacing to ensure consistent card spacing across groups\n // We want visual gap between groups to match gap between cards (CARD_GAP)\n const effectiveGroupSpacing = 0;\n\n const slotWidth = cardWidth + CARD_GAP;\n const slotHeight = cardHeight + CARD_GAP;\n // Bottom gap = BOTTOM_MARGIN + CARD_GAP - CANVAS_PADDING.\n // To match the left/right edge padding within each bucket (CARD_GAP / 2 = 5px):\n // BOTTOM_MARGIN = CANVAS_PADDING - CARD_GAP + (CARD_GAP / 2) = CANVAS_PADDING - CARD_GAP / 2\n const BOTTOM_MARGIN = CANVAS_PADDING - CARD_GAP / 2;\n\n // Fixed bucket width: 2 columns of cards per bucket (always)\n const COLUMNS_PER_BUCKET = 2;\n const bucketWidth = COLUMNS_PER_BUCKET * slotWidth;\n\n let groupX = 0;\n // Use container height for layout, or fallback to cardsPerColumn height\n const layoutHeight = spec.containerHeight || (cardsPerColumn * slotHeight);\n const bucketWidths: number[] = [];\n const groupXs: number[] = [];\n let maxRows = 0;\n\n // First pass: calculate max rows to determine total height\n for (const group of grouping.groups) {\n const itemsInGroup = group.ids.length;\n const rowsInGroup = Math.ceil(itemsInGroup / COLUMNS_PER_BUCKET);\n maxRows = Math.max(maxRows, rowsInGroup);\n }\n\n // Calculate actual content height needed (ensure it's at least as tall as the container)\n // We need to fit the tallest column plus the bottom margin\n const contentHeight = Math.max(layoutHeight, (maxRows * slotHeight) + BOTTOM_MARGIN);\n\n for (let groupIndex = 0; groupIndex < grouping.groups.length; groupIndex++) {\n const group = grouping.groups[groupIndex];\n groupXs.push(groupX);\n\n const itemsInGroup = group.ids.length;\n\n for (let i = 0; i < itemsInGroup; i++) {\n const id = group.ids[i];\n\n // Cards fill from left to right, bottom to top\n // For a 2-column bucket: i=0,1 in row 0; i=2,3 in row 1; etc.\n const col = i % COLUMNS_PER_BUCKET;\n const row = Math.floor(i / COLUMNS_PER_BUCKET);\n\n // Center the cards within the bucket\n // The bucket width fits 2 slots (2W + 2G). Cards take 2W + G.\n // So we have G/2 padding on each side to center them.\n const x = groupX + (col * slotWidth) + (CARD_GAP / 2);\n\n // Position cards from bottom of container, stacking upwards, starting at row 0 (bottom)\n const y = CANVAS_PADDING + contentHeight - BOTTOM_MARGIN - ((row + 1) * slotHeight);\n\n positions.set(id, {\n x,\n y,\n groupIndex,\n });\n }\n\n // Always use fixed bucket width\n bucketWidths.push(bucketWidth);\n\n // Advance position by fixed bucket width + spacing\n groupX += bucketWidth;\n if (groupIndex < grouping.groups.length - 1) {\n groupX += effectiveGroupSpacing;\n }\n }\n\n return {\n positions,\n totalWidth: groupX + CANVAS_PADDING,\n totalHeight: contentHeight,\n bucketWidths,\n groupXs,\n };\n}\n"],"names":[],"mappings":"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"}
@@ -70,3 +70,4 @@ self.onmessage = (e) => {
70
70
  }
71
71
  }
72
72
  };
73
+ //# sourceMappingURL=pivot.worker.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pivot.worker.js","sourceRoot":"","sources":["../../../../PivotViewer/engine/pivot.worker.ts"],"names":[],"mappings":"AAAA,6CAA6C;AAC7C,qGAAqG;AASrG,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,eAAe,EAAE,OAAO,EAAE,MAAM,YAAS,CAAC;AAE/E,IAAI,KAAK,GAAsB,IAAI,CAAC;AACpC,IAAI,OAAO,GAAwB,IAAI,CAAC;AAExC,IAAI,CAAC,SAAS,GAAG,CAAC,CAAgC,EAAE,EAAE;IAClD,MAAM,OAAO,GAAG,CAAC,CAAC,IAAI,CAAC;IAEvB,QAAQ,OAAO,CAAC,IAAI,EAAE,CAAC;QACnB,KAAK,cAAc,EAAE,CAAC;YAClB,mCAAmC;YACnC,qFAAqF;YACrF,+FAA+F;YAC/F,MAAM,WAAW,GAAG,OAAO,CAAC,KAAK,CAAC,MAAsC,CAAC;YACzE,MAAM,SAAS,GAAG,IAAI,GAAG,CAAgB,WAAW,CAAC,CAAC;YAEtD,KAAK,GAAG;gBACJ,GAAG,OAAO,CAAC,KAAK;gBAChB,MAAM,EAAE,SAAS;aACpB,CAAC;YACF,IAAI,KAAK,EAAE,CAAC;gBACR,OAAO,GAAG,YAAY,CAAC,KAAK,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;gBAE9C,MAAM,QAAQ,GAAqB;oBAC/B,IAAI,EAAE,cAAc;oBACpB,OAAO;iBACV,CAAC;gBACF,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;YAC/B,CAAC;YACD,MAAM;QACV,CAAC;QAED,KAAK,cAAc,EAAE,CAAC;YAClB,IAAI,CAAC,KAAK,IAAI,CAAC,OAAO,EAAE,CAAC;gBACrB,OAAO,CAAC,KAAK,CAAC,kCAAkC,CAAC,CAAC;gBAClD,OAAO;YACX,CAAC;YAED,MAAM,MAAM,GAAG,YAAY,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC;YAE7D,MAAM,QAAQ,GAAqB;gBAC/B,IAAI,EAAE,cAAc;gBACpB,SAAS,EAAE,OAAO,CAAC,SAAS;gBAC5B,MAAM;aACT,CAAC;YACF,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;YAC3B,MAAM;QACV,CAAC;QAED,KAAK,iBAAiB,EAAE,CAAC;YACrB,IAAI,CAAC,KAAK,IAAI,CAAC,OAAO,EAAE,CAAC;gBACrB,OAAO,CAAC,KAAK,CAAC,2CAA2C,CAAC,CAAC;gBAC3D,OAAO;YACX,CAAC;YAED,MAAM,MAAM,GAAG,eAAe,CAC1B,KAAK,EACL,OAAO,EACP,OAAO,CAAC,UAAU,EAClB,OAAO,CAAC,OAAO,CAClB,CAAC;YAEF,MAAM,QAAQ,GAAqB;gBAC/B,IAAI,EAAE,gBAAgB;gBACtB,SAAS,EAAE,OAAO,CAAC,SAAS;gBAC5B,MAAM;aACT,CAAC;YACF,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;YAC3B,MAAM;QACV,CAAC;QAED,KAAK,MAAM,EAAE,CAAC;YACV,IAAI,CAAC,KAAK,EAAE,CAAC;gBACT,OAAO,CAAC,KAAK,CAAC,uBAAuB,CAAC,CAAC;gBACvC,OAAO;YACX,CAAC;YAED,MAAM,MAAM,GAAG,OAAO,CAAC,KAAK,EAAE,OAAO,CAAC,GAAG,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;YAE3D,MAAM,QAAQ,GAAqB;gBAC/B,IAAI,EAAE,YAAY;gBAClB,SAAS,EAAE,OAAO,CAAC,SAAS;gBAC5B,MAAM;aACT,CAAC;YACF,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;YAC3B,MAAM;QACV,CAAC;IACL,CAAC;AACL,CAAC,CAAC","sourcesContent":["// Copyright (c) Cratis. All rights reserved.\n// Licensed under the MIT license. See LICENSE file in the project root for full license information.\n\nimport type {\n PivotStore,\n PivotIndexes,\n WorkerInMessage,\n WorkerOutMessage,\n Field,\n} from './types';\nimport { buildIndexes, applyFilters, computeGrouping, sortIds } from './store';\n\nlet store: PivotStore | null = null;\nlet indexes: PivotIndexes | null = null;\n\nself.onmessage = (e: MessageEvent<WorkerInMessage>) => {\n const message = e.data;\n\n switch (message.type) {\n case 'buildIndexes': {\n // Convert fields array back to Map\n // SAFETY: usePivotEngine serializes store.fields as Map.entries() before posting the\n // message (structured-clone can't carry a Map), so it always arrives here as this tuple array.\n const fieldsArray = message.store.fields as unknown as [string, Field][];\n const fieldsMap = new Map<string, Field>(fieldsArray);\n\n store = {\n ...message.store,\n fields: fieldsMap,\n };\n if (store) {\n indexes = buildIndexes(store, message.fields);\n\n const response: WorkerOutMessage = {\n type: 'indexesReady',\n indexes,\n };\n self.postMessage(response);\n }\n break;\n }\n\n case 'applyFilters': {\n if (!store || !indexes) {\n console.error('Store or indexes not initialized');\n return;\n }\n\n const result = applyFilters(store, indexes, message.filters);\n\n const response: WorkerOutMessage = {\n type: 'filterResult',\n requestId: message.requestId,\n result,\n };\n self.postMessage(response);\n break;\n }\n\n case 'computeGrouping': {\n if (!store || !indexes) {\n console.error('[Worker] Store or indexes not initialized');\n return;\n }\n\n const result = computeGrouping(\n store,\n indexes,\n message.visibleIds,\n message.groupBy,\n );\n\n const response: WorkerOutMessage = {\n type: 'groupingResult',\n requestId: message.requestId,\n result,\n };\n self.postMessage(response);\n break;\n }\n\n case 'sort': {\n if (!store) {\n console.error('Store not initialized');\n return;\n }\n\n const result = sortIds(store, message.ids, message.sortBy);\n\n const response: WorkerOutMessage = {\n type: 'sortResult',\n requestId: message.requestId,\n result,\n };\n self.postMessage(response);\n break;\n }\n }\n};\n\nexport {};\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"requestCorrelator.js","sources":["../../../../PivotViewer/engine/requestCorrelator.ts"],"sourcesContent":[null],"names":[],"mappings":"SA6BgB,uBAAuB,GAAA;IACnC,IAAI,aAAa,GAAG,CAAC;AACrB,IAAA,MAAM,OAAO,GAAG,IAAI,GAAG,EAAqC;IAE5D,OAAO;AACH,QAAA,MAAM,EAAE,MAAM,EAAE,aAAa;AAE7B,QAAA,QAAQ,EAAE,CAAC,EAAE,EAAE,OAAO,KAAI;AACtB,YAAA,OAAO,CAAC,GAAG,CAAC,EAAE,EAAE,OAAO,CAAC;QAC5B,CAAC;QAED,SAAS,EAAE,CAAC,EAAE,KAAK,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;AAElC,QAAA,OAAO,EAAE,CAAC,EAAE,EAAE,MAAM,KAAI;YACpB,MAAM,SAAS,GAAG,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;YACjC,IAAI,CAAC,SAAS,EAAE;AACZ,gBAAA,OAAO,KAAK;YAChB;AAEA,YAAA,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;YAClB,SAAS,CAAC,MAAM,CAAC;AACjB,YAAA,OAAO,IAAI;QACf,CAAC;KACJ;AACL;;"}
1
+ {"version":3,"file":"requestCorrelator.js","sources":["../../../../PivotViewer/engine/requestCorrelator.ts"],"sourcesContent":["// Copyright (c) Cratis. All rights reserved.\n// Licensed under the MIT license. See LICENSE file in the project root for full license information.\n\n/**\n * Correlates asynchronous request/response pairs exchanged with the pivot Web Worker by a\n * unique request id, so a response resolves the promise for its own request - not whichever\n * request currently owns a shared, type-keyed slot. Without this, two overlapping requests of\n * the same kind (e.g. two `applyFilters` calls fired before the first responds) overwrite each\n * other's resolver: the newer request's resolver silently replaces the older one's, so the\n * older request's promise never settles, and an out-of-order response resolves the wrong call.\n */\nexport interface RequestCorrelator<TResult> {\n /** Allocates the next unique request id for this correlator. */\n nextId(): number;\n\n /** Registers the resolver awaiting the response for `id`. */\n register(id: number, resolve: (result: TResult) => void): void;\n\n /** True while a resolver is still registered for `id`. */\n isPending(id: number): boolean;\n\n /**\n * Resolves and removes the resolver registered for `id` with `result`.\n * Returns `false` without throwing when no resolver is registered for `id` -\n * e.g. a stale or duplicate response - instead of leaving a dangling promise.\n */\n resolve(id: number, result: TResult): boolean;\n}\n\nexport function createRequestCorrelator<TResult>(): RequestCorrelator<TResult> {\n let nextRequestId = 0;\n const pending = new Map<number, (result: TResult) => void>();\n\n return {\n nextId: () => ++nextRequestId,\n\n register: (id, resolve) => {\n pending.set(id, resolve);\n },\n\n isPending: (id) => pending.has(id),\n\n resolve: (id, result) => {\n const resolveFn = pending.get(id);\n if (!resolveFn) {\n return false;\n }\n\n pending.delete(id);\n resolveFn(result);\n return true;\n },\n };\n}\n"],"names":[],"mappings":"SA6BgB,uBAAuB,GAAA;IACnC,IAAI,aAAa,GAAG,CAAC;AACrB,IAAA,MAAM,OAAO,GAAG,IAAI,GAAG,EAAqC;IAE5D,OAAO;AACH,QAAA,MAAM,EAAE,MAAM,EAAE,aAAa;AAE7B,QAAA,QAAQ,EAAE,CAAC,EAAE,EAAE,OAAO,KAAI;AACtB,YAAA,OAAO,CAAC,GAAG,CAAC,EAAE,EAAE,OAAO,CAAC;QAC5B,CAAC;QAED,SAAS,EAAE,CAAC,EAAE,KAAK,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;AAElC,QAAA,OAAO,EAAE,CAAC,EAAE,EAAE,MAAM,KAAI;YACpB,MAAM,SAAS,GAAG,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;YACjC,IAAI,CAAC,SAAS,EAAE;AACZ,gBAAA,OAAO,KAAK;YAChB;AAEA,YAAA,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;YAClB,SAAS,CAAC,MAAM,CAAC;AACjB,YAAA,OAAO,IAAI;QACf,CAAC;KACJ;AACL;;"}