@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
@@ -11,3 +11,4 @@ export { useFilterState } from './useFilterState.js';
11
11
  export type { UseFilterStateResult } from './useFilterState.js';
12
12
  export { buildHistogram } from './utils.js';
13
13
  export type { FilterValue, FilterOption, FilterDefinition, HistogramBucket, FilterValues, RangeValues, CustomFilterValues, } from './types.js';
14
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../Filter/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAe,CAAC;AAC5C,YAAY,EAAE,gBAAgB,EAAE,MAAM,kBAAe,CAAC;AACtD,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAsB,CAAC;AAC1D,YAAY,EAAE,uBAAuB,EAAE,MAAM,yBAAsB,CAAC;AACpE,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAgB,CAAC;AAC9C,YAAY,EAAE,qBAAqB,EAAE,MAAM,mBAAgB,CAAC;AAC5D,YAAY,EAAE,iBAAiB,EAAE,MAAM,wBAAqB,CAAC;AAC7D,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAAwB,CAAC;AAC9D,YAAY,EAAE,yBAAyB,EAAE,MAAM,2BAAwB,CAAC;AACxE,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAkB,CAAC;AAClD,YAAY,EAAE,oBAAoB,EAAE,MAAM,qBAAkB,CAAC;AAI7D,OAAO,EAAE,cAAc,EAAE,MAAM,YAAS,CAAC;AACzC,YAAY,EACR,WAAW,EACX,YAAY,EACZ,gBAAgB,EAChB,eAAe,EACf,YAAY,EACZ,WAAW,EACX,kBAAkB,GACrB,MAAM,YAAS,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../Filter/types.ts"],"names":[],"mappings":"AAAA,6CAA6C;AAC7C,qGAAqG"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../Filter/types.ts"],"names":[],"mappings":"AAAA,6CAA6C;AAC7C,qGAAqG","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/** A value that can be rendered in a filter option or counted into a histogram bucket. */\nexport type FilterValue = string | number | boolean | Date | null | undefined;\n\n/** One selectable option in a string/option filter group. */\nexport interface FilterOption {\n /** Unique key for this option, used to track selections. */\n key: string;\n /** Human-readable label shown in the filter UI. */\n label: string;\n /** The underlying value this option represents. */\n value: FilterValue;\n /** Optional count of items with this value, shown next to the label. */\n count?: number;\n}\n\n/** One pre-counted bar of a range filter's histogram. */\nexport interface HistogramBucket {\n /** Inclusive start of the bucket, on the same scale as the filter's range. */\n start: number;\n /** Exclusive end of the bucket, on the same scale as the filter's range. */\n end: number;\n /** Number of items that fall inside the bucket. */\n count: number;\n}\n\n/** Defines one filter group in a {@link FilterPanel}. */\nexport interface FilterDefinition {\n /** Unique key for this filter group. */\n key: string;\n /** Human-readable label shown in the filter panel. */\n label: string;\n /**\n * Filter type. Defaults to 'string'. Use 'number' for range/histogram.\n * Use 'custom' when providing a `<FilterEditor>` child inside `<FilterPanel>` for fully custom UI.\n */\n type?: 'string' | 'number' | 'date' | 'custom';\n /** Allow selecting multiple options (checkbox behaviour). Defaults to false (radio behaviour). */\n multi?: boolean;\n /** Pre-computed options for string/date filters. */\n options?: FilterOption[];\n /**\n * Numeric range data for 'number' and 'date' type filters.\n *\n * Supply `values` to have the histogram counted in the browser, or `histogram` when the counts\n * were produced elsewhere - by a server aggregating over more rows than are worth transferring,\n * for instance. `histogram` wins when both are present.\n */\n numericRange?: {\n min: number;\n max: number;\n values?: FilterValue[];\n histogram?: HistogramBucket[];\n };\n /** Number of histogram buckets. Defaults to 20. */\n buckets?: number;\n /**\n * Whether to show an inline search box that filters this group's options by label.\n *\n * - `true` always shows it.\n * - `false` never shows it, no matter how long the option list gets.\n * - `undefined` (the default) shows it only when there are more options than fit inside the\n * group's box, pinned to the top of the list while the options beneath it scroll.\n */\n searchable?: boolean;\n /** Placeholder shown in the inline search box. Defaults to 'Search…'. */\n searchPlaceholder?: string;\n /** Accessible name for this group's search. Overrides `messages.filter.searchAriaLabel`, then falls back to the effective placeholder and 'Search'. */\n searchAriaLabel?: string;\n /** Focus this group's search when expanded and the search input exists. Defaults to false. */\n autoFocus?: boolean;\n}\n\n/** Selected string/option values for each filter, keyed by FilterDefinition.key. */\nexport type FilterValues = Record<string, Set<string>>;\n\n/** Selected numeric ranges for each filter, keyed by FilterDefinition.key. */\nexport type RangeValues = Record<string, [number, number] | null>;\n\n/** Custom values for filters that use renderEditor, keyed by FilterDefinition.key. */\nexport type CustomFilterValues = Record<string, unknown>;\n"]}
@@ -35,3 +35,4 @@ export interface UseFilterStateResult {
35
35
  * handlers directly to <FilterPanel>.
36
36
  */
37
37
  export declare function useFilterState(filters: FilterDefinition[] | undefined): UseFilterStateResult;
38
+ //# sourceMappingURL=useFilterState.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useFilterState.d.ts","sourceRoot":"","sources":["../../../Filter/useFilterState.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EACR,gBAAgB,EAChB,YAAY,EACZ,WAAW,EACX,kBAAkB,EACrB,MAAM,YAAS,CAAC;AAGjB;;;;;;;GAOG;AACH,MAAM,WAAW,oBAAoB;IACjC,yEAAyE;IACzE,YAAY,EAAE,YAAY,CAAC;IAC3B,yEAAyE;IACzE,WAAW,EAAE,WAAW,CAAC;IACzB,mGAAmG;IACnG,YAAY,EAAE,kBAAkB,CAAC;IACjC,uFAAuF;IACvF,iBAAiB,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,uEAAuE;IACvE,oBAAoB,EAAE,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,CAAC;IACnD,2DAA2D;IAC3D,kBAAkB,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC;IACnF,qEAAqE;IACrE,iBAAiB,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,IAAI,CAAC;IAC/C,4EAA4E;IAC5E,iBAAiB,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,IAAI,KAAK,IAAI,CAAC;IAC/E,mDAAmD;IACnD,uBAAuB,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC;CACxE;AAED;;;;;;GAMG;AACH,wBAAgB,cAAc,CAC1B,OAAO,EAAE,gBAAgB,EAAE,GAAG,SAAS,GACxC,oBAAoB,CAiHtB"}
@@ -1 +1 @@
1
- {"version":3,"file":"useFilterState.js","sources":["../../../Filter/useFilterState.ts"],"sourcesContent":[null],"names":[],"mappings":";;;AAgDM,SAAU,cAAc,CAC1B,OAAuC,EAAA;AAEvC,IAAA,MAAM,CAAC,YAAY,EAAE,eAAe,CAAC,GAAG,QAAQ,CAAe,MAC3D,iBAAiB,CAAC,OAAO,CAAC,CAC7B;AACD,IAAA,MAAM,CAAC,WAAW,EAAE,cAAc,CAAC,GAAG,QAAQ,CAAc,MACxD,gBAAgB,CAAC,OAAO,CAAC,CAC5B;IACD,MAAM,CAAC,YAAY,EAAE,eAAe,CAAC,GAAG,QAAQ,CAAqB,EAAE,CAAC;AACxE,IAAA,MAAM,CAAC,iBAAiB,EAAE,oBAAoB,CAAC,GAAG,QAAQ,CACtD,OAAO,GAAG,CAAC,CAAC,EAAE,GAAG,IAAI,IAAI,CAC5B;AAGD,IAAA,MAAM,UAAU,GAAG,OAAO,CACtB,MAAM,OAAO,EAAE,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,EAChD,CAAC,OAAO,CAAC,CACZ;AACD,IAAA,MAAM,iBAAiB,GAAG,MAAM,CAAS,UAAU,CAAC;IAGpD,SAAS,CAAC,MAAK;AAEX,QAAA,IAAI,UAAU,KAAK,iBAAiB,CAAC,OAAO;YAAE;AAC9C,QAAA,iBAAiB,CAAC,OAAO,GAAG,UAAU;AAEtC,QAAA,eAAe,CAAC,CAAC,IAAI,KAAI;AACrB,YAAA,MAAM,IAAI,GAAG,iBAAiB,CAAC,OAAO,CAAC;AACvC,YAAA,IAAI,CAAC,OAAO;AAAE,gBAAA,OAAO,IAAI;AACzB,YAAA,OAAO,CAAC,OAAO,CAAC,CAAC,MAAM,KAAI;AACvB,gBAAA,IAAI,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE;AAClB,oBAAA,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;gBAChD;AACJ,YAAA,CAAC,CAAC;AACF,YAAA,OAAO,IAAI;AACf,QAAA,CAAC,CAAC;AAEF,QAAA,cAAc,CAAC,CAAC,IAAI,KAAI;AACpB,YAAA,MAAM,IAAI,GAAG,gBAAgB,CAAC,OAAO,CAAC;AACtC,YAAA,IAAI,CAAC,OAAO;AAAE,gBAAA,OAAO,IAAI;AACzB,YAAA,OAAO,CAAC,OAAO,CAAC,CAAC,MAAM,KAAI;AACvB,gBAAA,IAAI,MAAM,CAAC,IAAI,KAAK,QAAQ,IAAI,MAAM,CAAC,GAAG,IAAI,IAAI,EAAE;AAChD,oBAAA,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC;gBACvC;AACJ,YAAA,CAAC,CAAC;AACF,YAAA,OAAO,IAAI;AACf,QAAA,CAAC,CAAC;AACN,IAAA,CAAC,EAAE,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;IAEzB,SAAS,CAAC,MAAK;AACX,QAAA,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE;YAClB,oBAAoB,CAAC,IAAI,CAAC;YAC1B;QACJ;AACA,QAAA,oBAAoB,CAAC,CAAC,OAAO,KAAI;AAC7B,YAAA,IAAI,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,KAAK,OAAO,CAAC;AAAE,gBAAA,OAAO,OAAO;YACrE,OAAO,OAAO,CAAC,CAAC,CAAC,EAAE,GAAG,IAAI,IAAI;AAClC,QAAA,CAAC,CAAC;AACN,IAAA,CAAC,EAAE,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;IAEzB,MAAM,kBAAkB,GAAG,WAAW,CAClC,CAAC,SAAiB,EAAE,SAAiB,EAAE,KAAc,KAAI;AACrD,QAAA,eAAe,CAAC,CAAC,IAAI,KAAI;AACrB,YAAA,MAAM,IAAI,GAAiB,EAAE,GAAG,IAAI,EAAE;AACtC,YAAA,MAAM,OAAO,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC;YAE9C,IAAI,KAAK,EAAE;AACP,gBAAA,IAAI,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE;AACxB,oBAAA,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC;gBAC7B;qBAAO;AACH,oBAAA,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC;gBAC1B;YACJ;iBAAO;AACH,gBAAA,IAAI,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE;oBACxB,OAAO,CAAC,KAAK,EAAE;gBACnB;qBAAO;oBACH,OAAO,CAAC,KAAK,EAAE;AACf,oBAAA,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC;gBAC1B;YACJ;AAEA,YAAA,IAAI,CAAC,SAAS,CAAC,GAAG,OAAO;AACzB,YAAA,OAAO,IAAI;AACf,QAAA,CAAC,CAAC;IACN,CAAC,EACD,EAAE,CACL;AAED,IAAA,MAAM,iBAAiB,GAAG,WAAW,CAAC,CAAC,SAAiB,KAAI;QACxD,eAAe,CAAC,CAAC,IAAI,MAAM,EAAE,GAAG,IAAI,EAAE,CAAC,SAAS,GAAG,IAAI,GAAG,EAAE,EAAE,CAAC,CAAC;IACpE,CAAC,EAAE,EAAE,CAAC;IAEN,MAAM,iBAAiB,GAAG,WAAW,CACjC,CAAC,SAAiB,EAAE,KAA8B,KAAI;AAClD,QAAA,cAAc,CAAC,CAAC,IAAI,MAAM,EAAE,GAAG,IAAI,EAAE,CAAC,SAAS,GAAG,KAAK,EAAE,CAAC,CAAC;IAC/D,CAAC,EACD,EAAE,CACL;IAED,MAAM,uBAAuB,GAAG,WAAW,CAAC,CAAC,SAAiB,EAAE,KAAc,KAAI;AAC9E,QAAA,eAAe,CAAC,CAAC,IAAI,MAAM,EAAE,GAAG,IAAI,EAAE,CAAC,SAAS,GAAG,KAAK,EAAE,CAAC,CAAC;IAChE,CAAC,EAAE,EAAE,CAAC;IAEN,OAAO;QACH,YAAY;QACZ,WAAW;QACX,YAAY;QACZ,iBAAiB;QACjB,oBAAoB;QACpB,kBAAkB;QAClB,iBAAiB;QACjB,iBAAiB;QACjB,uBAAuB;KAC1B;AACL;;"}
1
+ {"version":3,"file":"useFilterState.js","sources":["../../../Filter/useFilterState.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 { useCallback, useEffect, useMemo, useRef, useState } from 'react';\nimport type {\n FilterDefinition,\n FilterValues,\n RangeValues,\n CustomFilterValues,\n} from './types';\nimport { buildFilterValues, buildRangeValues } from './utils';\n\n/**\n * Return type of {@link useFilterState}.\n *\n * Contains the current filter state (selections, ranges, custom values, and\n * the expanded filter key) and handlers for toggling options, clearing\n * filters, changing ranges, and changing custom values. Pass these directly\n * to {@link FilterPanel}.\n */\nexport interface UseFilterStateResult {\n /** Current string/option selections, keyed by `FilterDefinition.key`. */\n filterValues: FilterValues;\n /** Current numeric range selections, keyed by `FilterDefinition.key`. */\n rangeValues: RangeValues;\n /** Current values for filters using a custom `<FilterEditor>`, keyed by `FilterDefinition.key`. */\n customValues: CustomFilterValues;\n /** The key of the currently expanded filter group, or `null` when none is expanded. */\n expandedFilterKey: string | null;\n /** Set which filter group is expanded. Pass `null` to collapse all. */\n setExpandedFilterKey: (key: string | null) => void;\n /** Called when the user toggles a string/option filter. */\n handleToggleFilter: (filterKey: string, optionKey: string, multi: boolean) => void;\n /** Called when the user clears all selections for a filter group. */\n handleClearFilter: (filterKey: string) => void;\n /** Called when the user drags a numeric range or clicks a histogram bar. */\n handleRangeChange: (filterKey: string, range: [number, number] | null) => void;\n /** Called when a custom editor's value changes. */\n handleCustomValueChange: (filterKey: string, value: unknown) => void;\n}\n\n/**\n * State management hook for the standalone FilterPanel.\n *\n * Tracks selected options, numeric ranges, and custom values for every\n * filter in the provided `filters` array. Pass the returned values and\n * handlers directly to <FilterPanel>.\n */\nexport function useFilterState(\n filters: FilterDefinition[] | undefined,\n): UseFilterStateResult {\n const [filterValues, setFilterValues] = useState<FilterValues>(() =>\n buildFilterValues(filters),\n );\n const [rangeValues, setRangeValues] = useState<RangeValues>(() =>\n buildRangeValues(filters),\n );\n const [customValues, setCustomValues] = useState<CustomFilterValues>({});\n const [expandedFilterKey, setExpandedFilterKey] = useState<string | null>(\n filters?.[0]?.key ?? null,\n );\n\n // Serialize filter keys to avoid infinite loops from reference changes\n const filterKeys = useMemo(\n () => filters?.map((f) => f.key).join(',') ?? '',\n [filters],\n );\n const prevFilterKeysRef = useRef<string>(filterKeys);\n\n // Sync state when the filter definitions change (only when keys actually change)\n useEffect(() => {\n // Only update if the filter keys have actually changed\n if (filterKeys === prevFilterKeysRef.current) return;\n prevFilterKeysRef.current = filterKeys;\n\n setFilterValues((prev) => {\n const next = buildFilterValues(filters);\n if (!filters) return next;\n filters.forEach((filter) => {\n if (prev[filter.key]) {\n next[filter.key] = new Set(prev[filter.key]);\n }\n });\n return next;\n });\n\n setRangeValues((prev) => {\n const next = buildRangeValues(filters);\n if (!filters) return next;\n filters.forEach((filter) => {\n if (filter.type === 'number' && filter.key in prev) {\n next[filter.key] = prev[filter.key];\n }\n });\n return next;\n });\n }, [filterKeys, filters]);\n\n useEffect(() => {\n if (!filters?.length) {\n setExpandedFilterKey(null);\n return;\n }\n setExpandedFilterKey((current) => {\n if (current && filters.some((f) => f.key === current)) return current;\n return filters[0]?.key ?? null;\n });\n }, [filterKeys, filters]);\n\n const handleToggleFilter = useCallback(\n (filterKey: string, optionKey: string, multi: boolean) => {\n setFilterValues((prev) => {\n const next: FilterValues = { ...prev };\n const current = new Set(prev[filterKey] ?? []);\n\n if (multi) {\n if (current.has(optionKey)) {\n current.delete(optionKey);\n } else {\n current.add(optionKey);\n }\n } else {\n if (current.has(optionKey)) {\n current.clear();\n } else {\n current.clear();\n current.add(optionKey);\n }\n }\n\n next[filterKey] = current;\n return next;\n });\n },\n [],\n );\n\n const handleClearFilter = useCallback((filterKey: string) => {\n setFilterValues((prev) => ({ ...prev, [filterKey]: new Set() }));\n }, []);\n\n const handleRangeChange = useCallback(\n (filterKey: string, range: [number, number] | null) => {\n setRangeValues((prev) => ({ ...prev, [filterKey]: range }));\n },\n [],\n );\n\n const handleCustomValueChange = useCallback((filterKey: string, value: unknown) => {\n setCustomValues((prev) => ({ ...prev, [filterKey]: value }));\n }, []);\n\n return {\n filterValues,\n rangeValues,\n customValues,\n expandedFilterKey,\n setExpandedFilterKey,\n handleToggleFilter,\n handleClearFilter,\n handleRangeChange,\n handleCustomValueChange,\n };\n}\n"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"useOptionListOverflow.js","sources":["../../../Filter/useOptionListOverflow.ts"],"sourcesContent":[null],"names":[],"mappings":";;;SAqBgB,qBAAqB,CACjC,YAA2C,EAC3C,UAAyC,EACzC,OAAgB,EAAA;IAEhB,MAAM,CAAC,SAAS,EAAE,YAAY,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC;IAEjD,eAAe,CAAC,MAAK;QACjB,IAAI,CAAC,OAAO,EAAE;YACV,YAAY,CAAC,KAAK,CAAC;YACnB;QACJ;AAEA,QAAA,MAAM,SAAS,GAAG,YAAY,CAAC,OAAO;AACtC,QAAA,MAAM,OAAO,GAAG,UAAU,CAAC,OAAO;AAClC,QAAA,IAAI,CAAC,SAAS,IAAI,CAAC,OAAO;YAAE;QAE5B,MAAM,OAAO,GAAG,MAAK;AACjB,YAAA,MAAM,SAAS,GAAG,UAAU,CAAC,gBAAgB,CAAC,SAAS,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC;AACxE,YAAA,YAAY,CACR,mBAAmB,CAAC,EAAE,aAAa,EAAE,OAAO,CAAC,YAAY,EAAE,SAAS,EAAE,CAAC,CAC1E;AACL,QAAA,CAAC;AAED,QAAA,OAAO,EAAE;QAET,IAAI,OAAO,cAAc,KAAK,WAAW;YAAE;AAE3C,QAAA,MAAM,QAAQ,GAAG,IAAI,cAAc,CAAC,OAAO,CAAC;AAC5C,QAAA,QAAQ,CAAC,OAAO,CAAC,SAAS,CAAC;AAC3B,QAAA,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC;AAEzB,QAAA,OAAO,MAAM,QAAQ,CAAC,UAAU,EAAE;IACtC,CAAC,EAAE,CAAC,YAAY,EAAE,UAAU,EAAE,OAAO,CAAC,CAAC;AAEvC,IAAA,OAAO,SAAS;AACpB;;"}
1
+ {"version":3,"file":"useOptionListOverflow.js","sources":["../../../Filter/useOptionListOverflow.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 { useLayoutEffect, useState } from 'react';\nimport type { RefObject } from 'react';\nimport { optionListOverflows } from './utils';\n\n/**\n * Tracks whether an option list's full content is taller than the box it renders in.\n *\n * `contentRef` should point at an off-screen element holding every option - not the live,\n * possibly search-filtered list - so a user typing into the search box this hook decided to show\n * never itself shrinks the measured content below the threshold and un-decides that the box\n * needed a search in the first place. `containerRef`'s own `scrollHeight`/`clientHeight` are not\n * used for the same reason: they move as the search box appears and disappears, which would make\n * the decision chase itself. Instead the container's resolved CSS `max-height` is read directly,\n * since that value does not depend on what is currently rendered inside it.\n *\n * Pass `enabled: false` to skip measuring entirely - for callers that already know whether they\n * want a search box and do not need this hook to decide for them.\n */\nexport function useOptionListOverflow(\n containerRef: RefObject<HTMLElement | null>,\n contentRef: RefObject<HTMLElement | null>,\n enabled: boolean,\n): boolean {\n const [overflows, setOverflows] = useState(false);\n\n useLayoutEffect(() => {\n if (!enabled) {\n setOverflows(false);\n return;\n }\n\n const container = containerRef.current;\n const content = contentRef.current;\n if (!container || !content) return;\n\n const measure = () => {\n const maxHeight = parseFloat(getComputedStyle(container).maxHeight) || 0;\n setOverflows(\n optionListOverflows({ contentHeight: content.scrollHeight, maxHeight }),\n );\n };\n\n measure();\n\n if (typeof ResizeObserver === 'undefined') return;\n\n const observer = new ResizeObserver(measure);\n observer.observe(container);\n observer.observe(content);\n\n return () => observer.disconnect();\n }, [containerRef, contentRef, enabled]);\n\n return overflows;\n}\n"],"names":[],"mappings":";;;SAqBgB,qBAAqB,CACjC,YAA2C,EAC3C,UAAyC,EACzC,OAAgB,EAAA;IAEhB,MAAM,CAAC,SAAS,EAAE,YAAY,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC;IAEjD,eAAe,CAAC,MAAK;QACjB,IAAI,CAAC,OAAO,EAAE;YACV,YAAY,CAAC,KAAK,CAAC;YACnB;QACJ;AAEA,QAAA,MAAM,SAAS,GAAG,YAAY,CAAC,OAAO;AACtC,QAAA,MAAM,OAAO,GAAG,UAAU,CAAC,OAAO;AAClC,QAAA,IAAI,CAAC,SAAS,IAAI,CAAC,OAAO;YAAE;QAE5B,MAAM,OAAO,GAAG,MAAK;AACjB,YAAA,MAAM,SAAS,GAAG,UAAU,CAAC,gBAAgB,CAAC,SAAS,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC;AACxE,YAAA,YAAY,CACR,mBAAmB,CAAC,EAAE,aAAa,EAAE,OAAO,CAAC,YAAY,EAAE,SAAS,EAAE,CAAC,CAC1E;AACL,QAAA,CAAC;AAED,QAAA,OAAO,EAAE;QAET,IAAI,OAAO,cAAc,KAAK,WAAW;YAAE;AAE3C,QAAA,MAAM,QAAQ,GAAG,IAAI,cAAc,CAAC,OAAO,CAAC;AAC5C,QAAA,QAAQ,CAAC,OAAO,CAAC,SAAS,CAAC;AAC3B,QAAA,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC;AAEzB,QAAA,OAAO,MAAM,QAAQ,CAAC,UAAU,EAAE;IACtC,CAAC,EAAE,CAAC,YAAY,EAAE,UAAU,EAAE,OAAO,CAAC,CAAC;AAEvC,IAAA,OAAO,SAAS;AACpB;;"}
@@ -58,3 +58,4 @@ export declare function buildRangeValues(filters: FilterDefinition[] | undefined
58
58
  * Otherwise the raw values are counted into `bucketCount` evenly sized buckets across the range.
59
59
  */
60
60
  export declare function buildHistogram(values: number[], min: number, max: number, bucketCount: number, provided?: HistogramBucket[]): RenderedHistogramBucket[];
61
+ //# sourceMappingURL=utils.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../Filter/utils.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACR,gBAAgB,EAChB,YAAY,EACZ,eAAe,EACf,WAAW,EACd,MAAM,YAAS,CAAC;AAEjB,sFAAsF;AACtF,MAAM,WAAW,uBAAwB,SAAQ,eAAe;IAC5D,QAAQ,EAAE,MAAM,CAAC;CACpB;AAED,2FAA2F;AAC3F,MAAM,WAAW,kBAAkB;IAC/B,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;CAChB;AAED,iEAAiE;AACjE,MAAM,WAAW,gBAAgB;IAC7B,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;CAClB;AAED,0FAA0F;AAC1F,MAAM,WAAW,yBAAyB;IACtC,kEAAkE;IAClE,aAAa,EAAE,MAAM,CAAC;IACtB,+EAA+E;IAC/E,SAAS,EAAE,MAAM,CAAC;CACrB;AAED,qEAAqE;AACrE,MAAM,WAAW,gBAAgB;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;CACrB;AAYD;;;;;;;;GAQG;AACH,wBAAgB,uBAAuB,CACnC,MAAM,EAAE,kBAAkB,EAC1B,QAAQ,EAAE,gBAAgB,EAC1B,UAAU,SAAqB,GAChC,gBAAgB,CAgDlB;AAED;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CAAC,EAChC,aAAa,EACb,SAAS,GACZ,EAAE,yBAAyB,GAAG,OAAO,CAErC;AAED,8EAA8E;AAC9E,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,gBAAgB,EAAE,GAAG,SAAS,GAAG,YAAY,CAQvF;AAED,+DAA+D;AAC/D,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,gBAAgB,EAAE,GAAG,SAAS,GAAG,WAAW,CAQrF;AAED;;;;;;GAMG;AACH,wBAAgB,cAAc,CAC1B,MAAM,EAAE,MAAM,EAAE,EAChB,GAAG,EAAE,MAAM,EACX,GAAG,EAAE,MAAM,EACX,WAAW,EAAE,MAAM,EACnB,QAAQ,CAAC,EAAE,eAAe,EAAE,GAC7B,uBAAuB,EAAE,CA0B3B"}
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sources":["../../../Filter/utils.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"utils.js","sources":["../../../Filter/utils.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 FilterDefinition,\n FilterValues,\n HistogramBucket,\n RangeValues,\n} from './types';\n\n/** A histogram bucket with the tallest count in its set, so a bar can size itself. */\nexport interface RenderedHistogramBucket extends HistogramBucket {\n maxCount: number;\n}\n\n/** The anchor edges the filter dropdown is positioned against, in viewport coordinates. */\nexport interface DropdownAnchorRect {\n top: number;\n bottom: number;\n left: number;\n}\n\n/** The visible viewport the filter dropdown must stay inside. */\nexport interface DropdownViewport {\n width: number;\n height: number;\n}\n\n/** The measured height budget behind the decision to show an option list's search box. */\nexport interface OptionListOverflowMetrics {\n /** The combined natural height of every option row, in pixels. */\n contentHeight: number;\n /** The maximum height the option list box is allowed to grow to, in pixels. */\n maxHeight: number;\n}\n\n/** Fixed-position coordinates and bounds for the filter dropdown. */\nexport interface DropdownPosition {\n left: number;\n top?: number;\n bottom?: number;\n maxHeight: number;\n}\n\n// These mirror `.pv-filter-dropdown` in `FilterPanel.css`, which bounds the panel at\n// `width: min(320px, calc(100vw - 2rem))` and `max-height: calc(100vh - 8rem)`.\nconst DROPDOWN_MAX_WIDTH = 320;\nconst DROPDOWN_MAX_HEIGHT_INSET = 128;\nconst DROPDOWN_GUTTER = 16;\nconst DROPDOWN_ANCHOR_GAP = 8;\n\nconst clamp = (value: number, minimum: number, maximum: number) =>\n Math.min(Math.max(value, minimum), maximum);\n\n/**\n * Place the filter dropdown against its anchor without letting it leave the viewport.\n *\n * The panel is `position: fixed`, so an anchor near the right edge would otherwise push it\n * off-screen, and an anchor near the bottom would open a panel that cannot be reached. The\n * horizontal placement is clamped into the available gutter. When the panel flips above its\n * anchor it uses `bottom`, rather than guessing its rendered height, so short content remains\n * attached to the trigger. The selected side also supplies an explicit maximum height.\n */\nexport function resolveDropdownPosition(\n anchor: DropdownAnchorRect,\n viewport: DropdownViewport,\n panelWidth = DROPDOWN_MAX_WIDTH,\n): DropdownPosition {\n const viewportWidth = Math.max(0, viewport.width);\n const viewportHeight = Math.max(0, viewport.height);\n const horizontalGutter = Math.min(DROPDOWN_GUTTER, viewportWidth / 2);\n const verticalGutter = Math.min(DROPDOWN_GUTTER, viewportHeight / 2);\n const width = Math.max(\n 0,\n Math.min(panelWidth, viewportWidth - horizontalGutter * 2),\n );\n const left = clamp(\n anchor.left,\n horizontalGutter,\n Math.max(horizontalGutter, viewportWidth - width - horizontalGutter),\n );\n\n const top = clamp(\n anchor.bottom + DROPDOWN_ANCHOR_GAP,\n verticalGutter,\n Math.max(verticalGutter, viewportHeight - verticalGutter),\n );\n const bottom = clamp(\n viewportHeight - anchor.top + DROPDOWN_ANCHOR_GAP,\n verticalGutter,\n Math.max(verticalGutter, viewportHeight - verticalGutter),\n );\n const roomBelow = Math.max(0, viewportHeight - verticalGutter - top);\n const roomAbove = Math.max(0, viewportHeight - verticalGutter - bottom);\n const configuredMaxHeight = Math.max(\n 0,\n viewportHeight -\n (viewportHeight > DROPDOWN_MAX_HEIGHT_INSET\n ? DROPDOWN_MAX_HEIGHT_INSET\n : verticalGutter * 2),\n );\n\n if (roomBelow >= roomAbove) {\n return {\n top,\n left,\n maxHeight: Math.min(roomBelow, configuredMaxHeight),\n };\n }\n\n return {\n bottom,\n left,\n maxHeight: Math.min(roomAbove, configuredMaxHeight),\n };\n}\n\n/**\n * Whether an option list has more rows than fit inside its box - the signal a filter group uses to\n * grow a search box the caller did not explicitly ask for. `maxHeight` of zero means the box has not\n * been measured yet (e.g. before first layout), so the answer defaults to \"not overflowing\" rather\n * than flashing a search box speculatively. Pulled out of the measuring hook so the decision is\n * testable on plain numbers, without a real layout engine.\n */\nexport function optionListOverflows({\n contentHeight,\n maxHeight,\n}: OptionListOverflowMetrics): boolean {\n return maxHeight > 0 && contentHeight > maxHeight;\n}\n\n/** Initialise the string/option selection map for all string/date filters. */\nexport function buildFilterValues(filters: FilterDefinition[] | undefined): FilterValues {\n const state: FilterValues = {};\n filters?.forEach((filter) => {\n if (!filter.type || filter.type === 'string' || filter.type === 'date') {\n state[filter.key] = new Set<string>();\n }\n });\n return state;\n}\n\n/** Initialise the numeric range map for all number filters. */\nexport function buildRangeValues(filters: FilterDefinition[] | undefined): RangeValues {\n const state: RangeValues = {};\n filters?.forEach((filter) => {\n if (filter.type === 'number') {\n state[filter.key] = null;\n }\n });\n return state;\n}\n\n/**\n * Build the bars a range filter renders.\n *\n * Pre-counted buckets are rendered as given - they come from a source that saw more data than the\n * browser holds, so recounting them against the loaded values would understate the real totals.\n * Otherwise the raw values are counted into `bucketCount` evenly sized buckets across the range.\n */\nexport function buildHistogram(\n values: number[],\n min: number,\n max: number,\n bucketCount: number,\n provided?: HistogramBucket[],\n): RenderedHistogramBucket[] {\n if (provided !== undefined) {\n if (provided.length === 0) return [];\n const providedMax = Math.max(...provided.map((bucket) => bucket.count), 1);\n return provided.map((bucket) => ({ ...bucket, maxCount: providedMax }));\n }\n\n const range = max - min;\n if (range <= 0 || values.length === 0) return [];\n\n const bucketSize = range / bucketCount;\n const counts: number[] = Array(bucketCount).fill(0);\n\n values.forEach((value) => {\n const index = Math.min(Math.floor((value - min) / bucketSize), bucketCount - 1);\n if (index >= 0 && index < bucketCount) counts[index]++;\n });\n\n const maxCount = Math.max(...counts, 1);\n\n return counts.map((count, index) => ({\n start: min + index * bucketSize,\n end: min + (index + 1) * bucketSize,\n count,\n maxCount,\n }));\n}\n"],"names":[],"mappings":"AA8CA,MAAM,kBAAkB,GAAG,GAAG;AAC9B,MAAM,yBAAyB,GAAG,GAAG;AACrC,MAAM,eAAe,GAAG,EAAE;AAC1B,MAAM,mBAAmB,GAAG,CAAC;AAE7B,MAAM,KAAK,GAAG,CAAC,KAAa,EAAE,OAAe,EAAE,OAAe,KAC1D,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,OAAO,CAAC,EAAE,OAAO,CAAC;AAWzC,SAAU,uBAAuB,CACnC,MAA0B,EAC1B,QAA0B,EAC1B,UAAU,GAAG,kBAAkB,EAAA;AAE/B,IAAA,MAAM,aAAa,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,QAAQ,CAAC,KAAK,CAAC;AACjD,IAAA,MAAM,cAAc,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC;AACnD,IAAA,MAAM,gBAAgB,GAAG,IAAI,CAAC,GAAG,CAAC,eAAe,EAAE,aAAa,GAAG,CAAC,CAAC;AACrE,IAAA,MAAM,cAAc,GAAG,IAAI,CAAC,GAAG,CAAC,eAAe,EAAE,cAAc,GAAG,CAAC,CAAC;IACpE,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAClB,CAAC,EACD,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,aAAa,GAAG,gBAAgB,GAAG,CAAC,CAAC,CAC7D;IACD,MAAM,IAAI,GAAG,KAAK,CACd,MAAM,CAAC,IAAI,EACX,gBAAgB,EAChB,IAAI,CAAC,GAAG,CAAC,gBAAgB,EAAE,aAAa,GAAG,KAAK,GAAG,gBAAgB,CAAC,CACvE;IAED,MAAM,GAAG,GAAG,KAAK,CACb,MAAM,CAAC,MAAM,GAAG,mBAAmB,EACnC,cAAc,EACd,IAAI,CAAC,GAAG,CAAC,cAAc,EAAE,cAAc,GAAG,cAAc,CAAC,CAC5D;IACD,MAAM,MAAM,GAAG,KAAK,CAChB,cAAc,GAAG,MAAM,CAAC,GAAG,GAAG,mBAAmB,EACjD,cAAc,EACd,IAAI,CAAC,GAAG,CAAC,cAAc,EAAE,cAAc,GAAG,cAAc,CAAC,CAC5D;AACD,IAAA,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,cAAc,GAAG,cAAc,GAAG,GAAG,CAAC;AACpE,IAAA,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,cAAc,GAAG,cAAc,GAAG,MAAM,CAAC;IACvE,MAAM,mBAAmB,GAAG,IAAI,CAAC,GAAG,CAChC,CAAC,EACD,cAAc;SACT,cAAc,GAAG;AACd,cAAE;AACF,cAAE,cAAc,GAAG,CAAC,CAAC,CAChC;AAED,IAAA,IAAI,SAAS,IAAI,SAAS,EAAE;QACxB,OAAO;YACH,GAAG;YACH,IAAI;YACJ,SAAS,EAAE,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,mBAAmB,CAAC;SACtD;IACL;IAEA,OAAO;QACH,MAAM;QACN,IAAI;QACJ,SAAS,EAAE,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,mBAAmB,CAAC;KACtD;AACL;SASgB,mBAAmB,CAAC,EAChC,aAAa,EACb,SAAS,GACe,EAAA;AACxB,IAAA,OAAO,SAAS,GAAG,CAAC,IAAI,aAAa,GAAG,SAAS;AACrD;AAGM,SAAU,iBAAiB,CAAC,OAAuC,EAAA;IACrE,MAAM,KAAK,GAAiB,EAAE;AAC9B,IAAA,OAAO,EAAE,OAAO,CAAC,CAAC,MAAM,KAAI;AACxB,QAAA,IAAI,CAAC,MAAM,CAAC,IAAI,IAAI,MAAM,CAAC,IAAI,KAAK,QAAQ,IAAI,MAAM,CAAC,IAAI,KAAK,MAAM,EAAE;YACpE,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,IAAI,GAAG,EAAU;QACzC;AACJ,IAAA,CAAC,CAAC;AACF,IAAA,OAAO,KAAK;AAChB;AAGM,SAAU,gBAAgB,CAAC,OAAuC,EAAA;IACpE,MAAM,KAAK,GAAgB,EAAE;AAC7B,IAAA,OAAO,EAAE,OAAO,CAAC,CAAC,MAAM,KAAI;AACxB,QAAA,IAAI,MAAM,CAAC,IAAI,KAAK,QAAQ,EAAE;AAC1B,YAAA,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,IAAI;QAC5B;AACJ,IAAA,CAAC,CAAC;AACF,IAAA,OAAO,KAAK;AAChB;AASM,SAAU,cAAc,CAC1B,MAAgB,EAChB,GAAW,EACX,GAAW,EACX,WAAmB,EACnB,QAA4B,EAAA;AAE5B,IAAA,IAAI,QAAQ,KAAK,SAAS,EAAE;AACxB,QAAA,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC;AAAE,YAAA,OAAO,EAAE;QACpC,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,MAAM,KAAK,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QAC1E,OAAO,QAAQ,CAAC,GAAG,CAAC,CAAC,MAAM,MAAM,EAAE,GAAG,MAAM,EAAE,QAAQ,EAAE,WAAW,EAAE,CAAC,CAAC;IAC3E;AAEA,IAAA,MAAM,KAAK,GAAG,GAAG,GAAG,GAAG;IACvB,IAAI,KAAK,IAAI,CAAC,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC;AAAE,QAAA,OAAO,EAAE;AAEhD,IAAA,MAAM,UAAU,GAAG,KAAK,GAAG,WAAW;IACtC,MAAM,MAAM,GAAa,KAAK,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;AAEnD,IAAA,MAAM,CAAC,OAAO,CAAC,CAAC,KAAK,KAAI;QACrB,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,KAAK,GAAG,GAAG,IAAI,UAAU,CAAC,EAAE,WAAW,GAAG,CAAC,CAAC;AAC/E,QAAA,IAAI,KAAK,IAAI,CAAC,IAAI,KAAK,GAAG,WAAW;AAAE,YAAA,MAAM,CAAC,KAAK,CAAC,EAAE;AAC1D,IAAA,CAAC,CAAC;IAEF,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,MAAM,EAAE,CAAC,CAAC;IAEvC,OAAO,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,KAAK,MAAM;AACjC,QAAA,KAAK,EAAE,GAAG,GAAG,KAAK,GAAG,UAAU;QAC/B,GAAG,EAAE,GAAG,GAAG,CAAC,KAAK,GAAG,CAAC,IAAI,UAAU;QACnC,KAAK;QACL,QAAQ;AACX,KAAA,CAAC,CAAC;AACP;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"Toaster.js","sources":["../../../Notifications/Toaster.tsx"],"sourcesContent":[null],"names":["_jsxs","_Fragment","_jsx"],"mappings":";;;;;;;AA0EA,MAAM,cAAc,GAAkC;AAClD,IAAA,MAAM,EAAE,GAAG;AACX,IAAA,OAAO,EAAE,GAAG;AACZ,IAAA,IAAI,EAAE,GAAG;AACT,IAAA,IAAI,EAAE,GAAG;AACT,IAAA,KAAK,EAAE,GAAG;AACV,IAAA,SAAS,EAAE,GAAG;AACd,IAAA,QAAQ,EAAE,GAAG;CAChB;AAED,MAAM,WAAW,GAAkB,EAAE;AACrC,MAAM,UAAU,GAAG,CAAC,GAAG,MAAiC,KACpD,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC;AASpC,MAAM,UAAU,GAAG,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,gBAAgB,EAAE,EAAE,EAAmB,KAAI;IAC5E,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC;AAC3C,IAAA,MAAM,IAAI,GAAG,aAAa,EAAE;IAE5B,SAAS,CAAC,MAAK;QACX,IAAI,MAAM,IAAI,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,QAAQ,KAAK,CAAC;YAAE;AACnD,QAAA,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,IAAI,OAAO;AACzC,QAAA,MAAM,KAAK,GAAG,MAAM,CAAC,UAAU,CAC3B,MAAK;AACD,YAAA,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;AACtB,YAAA,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;QAC1B,CAAC,EACD,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,IAAI,CAAC,CAC3B;QACD,OAAO,MAAM,MAAM,CAAC,YAAY,CAAC,KAAK,CAAC;IAC3C,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;AAE3B,IAAA,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,IAAI,QAAQ;IAC1C,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,KACvBA,IAAA,CAAAC,QAAA,EAAA,EAAA,QAAA,EAAA,CACK,IAAI,CAAC,KAAK,KACPC,GAAA,CAAA,KAAA,EAAA,EAAA,GACQ,EAAE,EAAE,KAAK,EACb,SAAS,EAAE,UAAU,CAAC,qBAAqB,EAAE,EAAE,EAAE,KAAK,EAAE,SAAS,CAAC,EAAA,kBAAA,EACjD,OAAO,EAAA,QAAA,EAEvB,IAAI,CAAC,KAAK,EAAA,CACT,CACT,EACA,IAAI,CAAC,WAAW,KACbA,GAAA,CAAA,KAAA,EAAA,EAAA,GACQ,EAAE,EAAE,WAAW,EACnB,SAAS,EAAE,UAAU,CACjB,2BAA2B,EAC3B,EAAE,EAAE,WAAW,EAAE,SAAS,CAC7B,EAAA,kBAAA,EACgB,aAAa,YAE7B,IAAI,CAAC,WAAW,EAAA,CACf,CACT,EACA,IAAI,CAAC,MAAM,KACRA,GAAA,CAAA,QAAA,EAAA,EAAA,GACQ,IAAI,CAAC,MAAM,EAAA,GACX,EAAE,EAAE,MAAM,EACd,IAAI,EAAC,QAAQ,EACb,SAAS,EAAE,UAAU,CACjB,sBAAsB,EACtB,IAAI,CAAC,MAAM,CAAC,SAAS,EACrB,EAAE,EAAE,MAAM,EAAE,SAAS,CACxB,EAAA,kBAAA,EACgB,QAAQ,EAAA,CAC3B,CACL,CAAA,EAAA,CACF,CACN;AAED,IAAA,QACIF,IAAA,CAAA,SAAA,EAAA,EAAA,GACQ,EAAE,EAAE,KAAK,EACb,SAAS,EAAE,UAAU,CAAC,cAAc,EAAE,EAAE,EAAE,KAAK,EAAE,SAAS,CAAC,EAAA,kBAAA,EAC1C,OAAO,EAAA,eAAA,EACT,QAAQ,kBACT,IAAI,CAAC,OAAO,IAAI,SAAS,eAC5B,IAAI,CAAC,OAAO,IAAI,SAAS,EACpC,IAAI,EAAE,QAAQ,KAAK,OAAO,GAAG,OAAO,GAAG,QAAQ,EAC/C,YAAY,EAAE,MAAM,SAAS,CAAC,IAAI,CAAC,EACnC,YAAY,EAAE,MAAM,SAAS,CAAC,KAAK,CAAC,EACpC,cAAc,EAAE,MAAM,SAAS,CAAC,IAAI,CAAC,EACrC,aAAa,EAAE,CAAC,KAAK,KAAI;YACrB,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,QAAQ,CAAC,KAAK,CAAC,aAAa,CAAC;gBAAE,SAAS,CAAC,KAAK,CAAC;QAC5E,CAAC,EAAA,QAAA,EAAA,CAEDE,GAAA,CAAA,MAAA,EAAA,EAAA,GACQ,EAAE,EAAE,IAAI,EACZ,SAAS,EAAE,UAAU,CAAC,oBAAoB,EAAE,EAAE,EAAE,IAAI,EAAE,SAAS,CAAC,EAAA,kBAAA,EAC/C,MAAM,EAAA,aAAA,EACX,MAAM,EAAA,QAAA,EAEjB,IAAI,CAAC;AACF,sBAAE;uBACC,IAAI,CAAC,IAAI,IAAI,cAAc,CAAC,QAAQ,CAAC,CAAC,EAAA,CAC1C,EACPA,gBACQ,EAAE,EAAE,OAAO,EACf,SAAS,EAAE,UAAU,CAAC,uBAAuB,EAAE,EAAE,EAAE,OAAO,EAAE,SAAS,CAAC,EAAA,kBAAA,EACrD,SAAS,EAAA,cAAA,EACZ,IAAI,CAAC,OAAO,IAAI,SAAS,EAAA,WAAA,EAC5B,IAAI,CAAC,OAAO,IAAI,SAAS,EAAA,QAAA,EAEnC,OAAO,EAAA,CACN,EACL,IAAI,CAAC,WAAW,KAAK,KAAK,KACvBA,GAAA,CAAA,QAAA,EAAA,EAAA,GACQ,EAAE,EAAE,KAAK,EACb,IAAI,EAAC,QAAQ,EACb,SAAS,EAAE,UAAU,CAAC,qBAAqB,EAAE,EAAE,EAAE,KAAK,EAAE,SAAS,CAAC,EAAA,kBAAA,EACjD,OAAO,EAAA,YAAA,EACZ,EAAE,EAAE,KAAK,GAAG,YAAY,CAAC,IAAI,gBAAgB,EACzD,OAAO,EAAE,MAAM,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,EAAA,QAAA,EAErCA,GAAA,CAAA,MAAA,EAAA,EAAA,aAAA,EAAkB,MAAM,EAAA,QAAA,EAAE,IAAI,CAAC,OAAO,EAAE,GAAG,CAAC,EAAA,CAAQ,EAAA,CAC/C,CACZ,CAAA,EAAA,CACK;AAElB,CAAC;AAGM,MAAM,OAAO,GAAG,CAAC,EACpB,QAAQ,GAAG,WAAW,EACtB,KAAK,GAAG,CAAC,EACT,OAAO,GAAG,IAAI,EACd,gBAAgB,EAChB,eAAe,EACf,EAAE,GACS,KAAI;AACf,IAAA,MAAM,EAAE,QAAQ,EAAE,GAAG,yBAAyB,EAAE;AAChD,IAAA,MAAM,qBAAqB,GAAG,QAAQ,EAAE,aAAa;IACrD,MAAM,wBAAwB,GAC1B,gBAAgB,IAAI,qBAAqB,EAAE,OAAO,IAAI,SAAS;IACnE,MAAM,uBAAuB,GACzB,eAAe,IAAI,qBAAqB,EAAE,MAAM,IAAI,eAAe;AACvE,IAAA,MAAM,KAAK,GAAG,oBAAoB,CAC9B,iBAAiB,EACjB,gBAAgB,EAChB,MAAM,WAAW,CACpB;IACD,IAAI,OAAO,QAAQ,KAAK,WAAW;AAAE,QAAA,OAAO,IAAI;AAEhD,IAAA,OAAO,YAAY,CACfA,GAAA,CAAA,KAAA,EAAA,EAAA,GACQ,EAAE,EAAE,MAAM,EACd,SAAS,EAAE,UAAU,CAAC,gBAAgB,EAAE,EAAE,EAAE,MAAM,EAAE,SAAS,CAAC,EAAA,kBAAA,EAC7C,QAAQ,EAAA,eAAA,EACV,QAAQ,EACvB,IAAI,EAAC,QAAQ,EAAA,YAAA,EACD,uBAAuB,EAAA,WAAA,EACzB,QAAQ,EAAA,QAAA,EAEjB,KAAK,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,MAC1BA,GAAA,CAAC,UAAU,EAAA,EAEP,IAAI,EAAE,IAAI,EACV,OAAO,EAAE,OAAO,EAChB,gBAAgB,EAAE,wBAAwB,EAC1C,EAAE,EAAE,EAAE,EAAA,EAJD,IAAI,CAAC,EAAE,CAKd,CACL,CAAC,EAAA,CACA,EACN,QAAQ,CAAC,IAAI,CAChB;AACL;;"}
1
+ {"version":3,"file":"Toaster.js","sources":["../../../Notifications/Toaster.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 {\n useEffect,\n useState,\n useSyncExternalStore,\n type ButtonHTMLAttributes,\n type HTMLAttributes,\n} from 'react';\nimport { createPortal } from 'react-dom';\nimport { useCratisComponentsConfig } from '../configuration/CratisComponentsContext';\nimport { useCratisIcon } from '../configuration/useCratisIcon';\nimport {\n getToastSnapshot,\n subscribeToToasts,\n toast,\n type ToastRecord,\n type ToastSeverity,\n} from './toast';\nimport type { ExactPartKeys } from '../types/ExactPartKeys';\nimport type { PartsOf } from '../types/parts';\n\n/** Supported viewport positions for the global toast region. */\nexport type ToasterPosition =\n | 'top-left'\n | 'top-center'\n | 'top-right'\n | 'bottom-left'\n | 'bottom-center'\n | 'bottom-right';\n\n/** Stable part attributes for {@link Toaster}. */\nexport interface ToasterPassThrough {\n /** Accessible toast region. */\n region?: HTMLAttributes<HTMLDivElement>;\n /** One toast article. */\n toast?: HTMLAttributes<HTMLElement>;\n /** Severity/custom icon wrapper. */\n icon?: HTMLAttributes<HTMLSpanElement>;\n /** Toast content wrapper. */\n content?: HTMLAttributes<HTMLDivElement>;\n /** Toast title. */\n title?: HTMLAttributes<HTMLDivElement>;\n /** Toast description. */\n description?: HTMLAttributes<HTMLDivElement>;\n /** Dismiss button. */\n close?: ButtonHTMLAttributes<HTMLButtonElement>;\n /** Optional toast action button. */\n action?: ButtonHTMLAttributes<HTMLButtonElement>;\n}\n\nconst toasterPartsMatchManifest: ExactPartKeys<\n ToasterPassThrough,\n PartsOf<'Toaster'>\n> = true;\nvoid toasterPartsMatchManifest;\n\n/** Props for the global accessible toast region. */\nexport interface ToasterProps {\n /** Viewport position. */\n position?: ToasterPosition;\n /** Maximum visible toast count. */\n limit?: number;\n /** Default timeout in milliseconds. */\n timeout?: number;\n /** Accessible label for dismiss buttons. Falls back to the provider's `notifications.dismiss` message, then `'Dismiss'`. */\n dismissAriaLabel?: string;\n /** Accessible name for the toast region. Falls back to the provider's `notifications.region` message, then `'Notifications'`. */\n regionAriaLabel?: string;\n /** Stable part attributes. */\n pt?: ToasterPassThrough;\n}\n\nconst severitySymbol: Record<ToastSeverity, string> = {\n normal: '●',\n success: '✓',\n info: 'ⓘ',\n warn: '⚠',\n error: '⨯',\n secondary: '●',\n contrast: '●',\n};\n\nconst emptyToasts: ToastRecord[] = [];\nconst classNames = (...values: Array<string | undefined>) =>\n values.filter(Boolean).join(' ');\n\ninterface ToastFrameProps {\n item: ToastRecord;\n timeout: number;\n dismissAriaLabel: string;\n pt?: ToasterPassThrough;\n}\n\nconst ToastFrame = ({ item, timeout, dismissAriaLabel, pt }: ToastFrameProps) => {\n const [paused, setPaused] = useState(false);\n const icon = useCratisIcon();\n\n useEffect(() => {\n if (paused || item.loading || item.duration === 0) return;\n const duration = item.duration ?? timeout;\n const timer = window.setTimeout(\n () => {\n item.onTimeout?.(item);\n toast.dismiss(item.id);\n },\n Math.max(duration, 5000),\n );\n return () => window.clearTimeout(timer);\n }, [item, paused, timeout]);\n\n const severity = item.severity ?? 'normal';\n const content = item.render ?? (\n <>\n {item.title && (\n <div\n {...pt?.title}\n className={classNames('cratis-toast__title', pt?.title?.className)}\n data-cratis-part='title'\n >\n {item.title}\n </div>\n )}\n {item.description && (\n <div\n {...pt?.description}\n className={classNames(\n 'cratis-toast__description',\n pt?.description?.className,\n )}\n data-cratis-part='description'\n >\n {item.description}\n </div>\n )}\n {item.action && (\n <button\n {...item.action}\n {...pt?.action}\n type='button'\n className={classNames(\n 'cratis-toast__action',\n item.action.className,\n pt?.action?.className,\n )}\n data-cratis-part='action'\n />\n )}\n </>\n );\n\n return (\n <article\n {...pt?.toast}\n className={classNames('cratis-toast', pt?.toast?.className)}\n data-cratis-part='toast'\n data-severity={severity}\n data-loading={item.loading || undefined}\n data-busy={item.loading || undefined}\n role={severity === 'error' ? 'alert' : 'status'}\n onMouseEnter={() => setPaused(true)}\n onMouseLeave={() => setPaused(false)}\n onFocusCapture={() => setPaused(true)}\n onBlurCapture={(event) => {\n if (!event.currentTarget.contains(event.relatedTarget)) setPaused(false);\n }}\n >\n <span\n {...pt?.icon}\n className={classNames('cratis-toast__icon', pt?.icon?.className)}\n data-cratis-part='icon'\n aria-hidden='true'\n >\n {item.loading\n ? '◌'\n : (item.icon ?? severitySymbol[severity])}\n </span>\n <div\n {...pt?.content}\n className={classNames('cratis-toast__content', pt?.content?.className)}\n data-cratis-part='content'\n data-loading={item.loading || undefined}\n data-busy={item.loading || undefined}\n >\n {content}\n </div>\n {item.dismissible !== false && (\n <button\n {...pt?.close}\n type='button'\n className={classNames('cratis-toast__close', pt?.close?.className)}\n data-cratis-part='close'\n aria-label={pt?.close?.['aria-label'] ?? dismissAriaLabel}\n onClick={() => toast.dismiss(item.id)}\n >\n <span aria-hidden='true'>{icon('close', '×')}</span>\n </button>\n )}\n </article>\n );\n};\n\n/** App-wide accessible toast region backed by the Cratis-owned toast queue. */\nexport const Toaster = ({\n position = 'top-right',\n limit = 3,\n timeout = 6000,\n dismissAriaLabel,\n regionAriaLabel,\n pt,\n}: ToasterProps) => {\n const { messages } = useCratisComponentsConfig();\n const notificationsMessages = messages?.notifications;\n const resolvedDismissAriaLabel =\n dismissAriaLabel ?? notificationsMessages?.dismiss ?? 'Dismiss';\n const resolvedRegionAriaLabel =\n regionAriaLabel ?? notificationsMessages?.region ?? 'Notifications';\n const items = useSyncExternalStore(\n subscribeToToasts,\n getToastSnapshot,\n () => emptyToasts,\n );\n if (typeof document === 'undefined') return null;\n\n return createPortal(\n <div\n {...pt?.region}\n className={classNames('cratis-toaster', pt?.region?.className)}\n data-cratis-part='region'\n data-position={position}\n role='region'\n aria-label={resolvedRegionAriaLabel}\n aria-live='polite'\n >\n {items.slice(-limit).map((item) => (\n <ToastFrame\n key={item.id}\n item={item}\n timeout={timeout}\n dismissAriaLabel={resolvedDismissAriaLabel}\n pt={pt}\n />\n ))}\n </div>,\n document.body,\n );\n};\n"],"names":["_jsxs","_Fragment","_jsx"],"mappings":"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"}
@@ -1,3 +1,4 @@
1
1
  export * from './Toaster.js';
2
2
  export * from './toast.js';
3
3
  export * from './toastCommandResult.js';
4
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../Notifications/index.ts"],"names":[],"mappings":"AAGA,cAAc,cAAW,CAAC;AAC1B,cAAc,YAAS,CAAC;AACxB,cAAc,yBAAsB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"toast.js","sources":["../../../Notifications/toast.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"toast.js","sources":["../../../Notifications/toast.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 { ButtonHTMLAttributes, ReactElement, ReactNode } from 'react';\n\n/**\n * Visual severity level for a toast notification.\n * Determines the default styling and icon treatment when rendered by the Toaster component.\n */\nexport type ToastSeverity =\n 'normal' | 'success' | 'info' | 'warn' | 'error' | 'secondary' | 'contrast';\n\n/**\n * Unique identifier for a toast notification.\n * Can be explicitly provided via {@link ToastOptions.id} or auto-generated.\n */\nexport type ToastId = string | number;\n\n/**\n * Configuration options accepted by every toast notification call.\n * Merged with severity-specific defaults when using helpers like {@link toast.success}.\n */\nexport interface ToastOptions {\n /** Unique identifier for this toast. Auto-generated if omitted. */\n id?: ToastId;\n /** Primary heading text or element. Rendered prominently in the toast UI. */\n title?: ReactNode | string;\n /** Secondary body text or element. Rendered below the title. */\n description?: ReactNode | string;\n /** Action button props. Rendered as a clickable button in the toast. */\n action?: ButtonHTMLAttributes<HTMLButtonElement>;\n /** Whether the user can manually dismiss the toast. Defaults to true. */\n dismissible?: boolean;\n /** Visual severity level. Determines styling and default icon. */\n severity?: ToastSeverity;\n /** Whether to show a loading spinner. Typically used with {@link toast.promise}. */\n loading?: boolean;\n /** Custom icon element. Overrides the default severity-based icon. */\n icon?: ReactNode;\n /** Custom renderer. Fully replaces the default toast UI when provided. */\n render?: ReactElement;\n /** Auto-dismiss timeout in milliseconds. No auto-dismiss if omitted or zero. */\n duration?: number;\n /** Grouping key. Used to logically associate related toasts. */\n group?: string;\n /** The promise being tracked (internal, set automatically by {@link toast.promise}). */\n promise?: unknown;\n /** Arbitrary metadata. Available to custom renderers and lifecycle callbacks. */\n data?: Record<string, unknown>;\n /** Callback invoked when the toast is dismissed (manually or programmatically). */\n onDismiss?: (toast: ToastOptions) => void;\n /** Callback invoked when the toast auto-dismisses via duration timeout. */\n onTimeout?: (toast: ToastOptions) => void;\n}\n\n/**\n * Legacy alias for {@link ToastOptions}.\n * Preserved for source compatibility with earlier versions.\n */\nexport type ToastType = ToastOptions;\n\n/**\n * Options for {@link toast.promise}, which shows a loading toast and updates it based on promise outcome.\n * @typeParam T - The promise resolution type.\n */\nexport interface ToastPromiseOptions<T = unknown> {\n /** Toast shown immediately while the promise is pending. Automatically receives `loading: true`. */\n loading: ToastOptions;\n /** Toast shown on success. Can be a static config or a function receiving the resolved value. Returns void to dismiss instead of updating. */\n success?: ToastOptions | ((data: T) => ToastOptions | void);\n /** Toast shown on rejection. Can be a static config or a function receiving the error. Returns void to dismiss instead of updating. */\n error?: ToastOptions | ((error: unknown) => ToastOptions | void);\n}\n\n/**\n * Dispatch interface for toast operations.\n * Custom implementations can be installed via {@link setToastDispatch} to intercept all toast calls—\n * useful for testing, logging, or routing toasts to a different rendering surface.\n * The default implementation writes to an in-memory queue consumed by the mounted Toaster component.\n */\nexport interface ToastDispatch {\n /** Shows a toast with the provided options. Returns the toast ID. */\n show(options: ToastOptions): ToastId;\n /** Updates an existing toast by ID. Returns the toast ID. */\n update(id: ToastId, updates: Partial<ToastOptions>): ToastId;\n /** Dismisses one toast by ID, or all toasts if ID is omitted. */\n dismiss(id?: ToastId): void;\n /** Tracks a promise with loading/success/error toasts. Returns the original promise (passthrough). */\n promise<T>(promise: Promise<T>, options: ToastPromiseOptions<T>): Promise<T>;\n /** Shows a success-severity toast. Shorthand for `show({ ...options, severity: 'success' })`. */\n success(options: ToastOptions): ToastId;\n /** Shows an info-severity toast. Shorthand for `show({ ...options, severity: 'info' })`. */\n info(options: ToastOptions): ToastId;\n /** Shows a warn-severity toast. Shorthand for `show({ ...options, severity: 'warn' })`. */\n warn(options: ToastOptions): ToastId;\n /** Shows an error-severity toast. Shorthand for `show({ ...options, severity: 'error' })`. */\n error(options: ToastOptions): ToastId;\n /** Shows a secondary-severity toast. Shorthand for `show({ ...options, severity: 'secondary' })`. */\n secondary(options: ToastOptions): ToastId;\n /** Shows a contrast-severity toast. Shorthand for `show({ ...options, severity: 'contrast' })`. */\n contrast(options: ToastOptions): ToastId;\n}\n\n/**\n * The callable signature and helper methods of the {@link toast} export.\n * All methods delegate to the currently active {@link ToastDispatch} (default queue-backed or custom override).\n */\nexport interface ToastFunction {\n /** Call signature: shows a toast with the provided options. Equivalent to `toast.show(options)`. */\n (options: ToastOptions): ToastId;\n /** Updates an existing toast by ID. Returns the toast ID. */\n update(id: ToastId, updates: Partial<ToastOptions>): ToastId;\n /** Dismisses one toast by ID, or all toasts if ID is omitted. */\n dismiss(id?: ToastId): void;\n /** Tracks a promise with loading/success/error toasts. Returns the original promise (passthrough). */\n promise<T>(promise: Promise<T>, options: ToastPromiseOptions<T>): Promise<T>;\n /** Shows a success-severity toast. Shorthand for `show({ ...options, severity: 'success' })`. */\n success(options: ToastOptions): ToastId;\n /** Shows an info-severity toast. Shorthand for `show({ ...options, severity: 'info' })`. */\n info(options: ToastOptions): ToastId;\n /** Shows a warn-severity toast. Shorthand for `show({ ...options, severity: 'warn' })`. */\n warn(options: ToastOptions): ToastId;\n /** Shows an error-severity toast. Shorthand for `show({ ...options, severity: 'error' })`. */\n error(options: ToastOptions): ToastId;\n /** Shows a secondary-severity toast. Shorthand for `show({ ...options, severity: 'secondary' })`. */\n secondary(options: ToastOptions): ToastId;\n /** Shows a contrast-severity toast. Shorthand for `show({ ...options, severity: 'contrast' })`. */\n contrast(options: ToastOptions): ToastId;\n}\n\n/**\n * The complete shape of a toast notification stored in the global queue.\n * Extends {@link ToastOptions} with a guaranteed `id` property.\n * Custom rendering surfaces can access the queue via {@link subscribeToToasts} and {@link getToastSnapshot}\n * without importing the default Toaster component.\n */\nexport interface ToastRecord extends ToastOptions {\n /** Unique identifier for this toast. Always present on stored records (auto-generated if not provided). */\n id: ToastId;\n}\n\ninterface ToastStore {\n items: ToastRecord[];\n listeners: Set<() => void>;\n nextId: number;\n}\n\nconst storeKey = Symbol.for('@cratis/components/toast-store/v1');\n// SAFETY: Symbol.for lets multiple loaded Components copies share one app-wide queue.\nconst storeHost = globalThis as unknown as Record<symbol, ToastStore | undefined>;\nconst store = (storeHost[storeKey] ??= { items: [], listeners: new Set(), nextId: 1 });\nconst emit = () => store.listeners.forEach((listener) => listener());\n\n/** Subscribes a mounted toaster to the app-wide queue. */\nexport const subscribeToToasts = (listener: () => void): (() => void) => {\n store.listeners.add(listener);\n return () => store.listeners.delete(listener);\n};\n\n/** Returns the current immutable queue snapshot. */\nexport const getToastSnapshot = (): ToastRecord[] => store.items;\n\nconst show = (options: ToastOptions): ToastId => {\n const id = options.id ?? store.nextId++;\n const record = { ...options, id };\n const existing = store.items.findIndex((item) => item.id === id);\n store.items =\n existing >= 0\n ? store.items.map((item) => (item.id === id ? record : item))\n : [...store.items, record];\n emit();\n return id;\n};\n\nconst update = (id: ToastId, updates: Partial<ToastOptions>): ToastId => {\n store.items = store.items.map((item) =>\n item.id === id ? { ...item, ...updates, id } : item,\n );\n emit();\n return id;\n};\n\nconst dismiss = (id?: ToastId) => {\n const removed =\n id === undefined ? store.items : store.items.filter((item) => item.id === id);\n removed.forEach((item) => item.onDismiss?.(item));\n store.items = id === undefined ? [] : store.items.filter((item) => item.id !== id);\n emit();\n};\n\nconst promise = async <T>(\n work: Promise<T>,\n options: ToastPromiseOptions<T>,\n): Promise<T> => {\n const id = show({ ...options.loading, loading: true });\n try {\n const data = await work;\n const resolved =\n typeof options.success === 'function'\n ? options.success(data)\n : options.success;\n if (resolved) update(id, { ...resolved, loading: false });\n else dismiss(id);\n return data;\n } catch (error) {\n const resolved =\n typeof options.error === 'function' ? options.error(error) : options.error;\n if (resolved) update(id, { ...resolved, loading: false });\n else dismiss(id);\n throw error;\n }\n};\n\nconst withSeverity = (severity: ToastSeverity) => (options: ToastOptions) =>\n show({ ...options, severity });\n\nconst defaultToastDispatch: ToastDispatch = {\n show,\n update,\n dismiss,\n promise,\n success: withSeverity('success'),\n info: withSeverity('info'),\n warn: withSeverity('warn'),\n error: withSeverity('error'),\n secondary: withSeverity('secondary'),\n contrast: withSeverity('contrast'),\n};\n\ninterface ToastDispatchFrame {\n dispatch: ToastDispatch;\n previous?: ToastDispatchFrame;\n removed: boolean;\n}\n\ninterface ToastDispatchRegistry {\n active?: ToastDispatchFrame;\n}\n\nconst dispatchRegistryKey = Symbol.for('@cratis/components/toast-dispatch/v1');\n// SAFETY: Symbol.for gives every loaded Components copy the same isolated dispatch slot.\nconst dispatchHost = globalThis as unknown as Record<\n symbol,\n ToastDispatchRegistry | undefined\n>;\nconst dispatchRegistry = (dispatchHost[dispatchRegistryKey] ??= {});\n\nconst nearestActiveFrame = (\n frame: ToastDispatchFrame | undefined,\n): ToastDispatchFrame | undefined => {\n let current = frame;\n while (current?.removed) current = current.previous;\n return current;\n};\n\n/**\n * Installs a custom {@link ToastDispatch} implementation that shadows the default queue-backed dispatch.\n * All subsequent `toast(...)` calls route through the provided dispatch until the returned cleanup function is invoked.\n * Dispatch frames are stack-based: nested calls compose, and removing a frame restores the previous one.\n * Useful for testing (intercept/assert toast calls), logging, or routing toasts to an alternative UI.\n *\n * @param dispatch - The custom dispatch implementation to install.\n * @returns A cleanup function that removes this dispatch frame and restores the previous active dispatch.\n *\n * @example\n * ```ts\n * const cleanup = setToastDispatch({\n * show: (opts) => { console.log('toast:', opts); return 'test-id'; },\n * // ... other ToastDispatch methods\n * });\n * toast({ title: 'Hello' }); // logs instead of queuing\n * cleanup(); // restores default behavior\n * ```\n */\nexport const setToastDispatch = (dispatch: ToastDispatch): (() => void) => {\n const frame: ToastDispatchFrame = {\n dispatch,\n previous: dispatchRegistry.active,\n removed: false,\n };\n dispatchRegistry.active = frame;\n\n return () => {\n if (frame.removed) return;\n frame.removed = true;\n if (dispatchRegistry.active === frame) {\n dispatchRegistry.active = nearestActiveFrame(frame.previous);\n }\n };\n};\n\nconst activeToastDispatch = () =>\n nearestActiveFrame(dispatchRegistry.active)?.dispatch ?? defaultToastDispatch;\n\nconst callableToast = ((options: ToastOptions) =>\n activeToastDispatch().show(options)) as ToastFunction;\ncallableToast.update = (id, updates) => activeToastDispatch().update(id, updates);\ncallableToast.dismiss = (id) => activeToastDispatch().dismiss(id);\ncallableToast.promise = (work, options) => activeToastDispatch().promise(work, options);\ncallableToast.success = (options) => activeToastDispatch().success(options);\ncallableToast.info = (options) => activeToastDispatch().info(options);\ncallableToast.warn = (options) => activeToastDispatch().warn(options);\ncallableToast.error = (options) => activeToastDispatch().error(options);\ncallableToast.secondary = (options) => activeToastDispatch().secondary(options);\ncallableToast.contrast = (options) => activeToastDispatch().contrast(options);\n\n/** Cratis-owned imperative toast API. Mount one {@link Toaster} in the application root. */\nexport const toast: ToastFunction = callableToast;\n"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"toastCommandResult.js","sources":["../../../Notifications/toastCommandResult.ts"],"sourcesContent":[null],"names":[],"mappings":";;SAgDgB,kBAAkB,CAC9B,MAAiC,EACjC,UAAqC,EAAE,EAAA;IAEvC,MAAM,EACF,YAAY,GAAG,SAAS,EACxB,kBAAkB,EAClB,iBAAiB,GAAG,gBAAgB,EACpC,eAAe,GAAG,mBAAmB,EACrC,cAAc,GAAG,sBAAsB,EACvC,WAAW,GAAG,IAAI,GACrB,GAAG,OAAO;AAEX,IAAA,IAAI,MAAM,CAAC,SAAS,EAAE;QAClB,IAAI,WAAW,EAAE;AACb,YAAA,KAAK,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE,YAAY,EAAE,WAAW,EAAE,kBAAkB,EAAE,CAAC;QAC3E;AACA,QAAA,OAAO,IAAI;IACf;AAEA,IAAA,IAAI,CAAC,MAAM,CAAC,YAAY,EAAE;QACtB,KAAK,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,iBAAiB,EAAE,CAAC;AACxC,QAAA,OAAO,KAAK;IAChB;AAEA,IAAA,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE;AACjB,QAAA,MAAM,WAAW,GAAG,MAAM,CAAC;aACtB,GAAG,CAAC,CAAC,gBAAgB,KAAK,gBAAgB,CAAC,OAAO;aAClD,MAAM,CAAC,OAAO;aACd,IAAI,CAAC,IAAI,CAAC;AACf,QAAA,KAAK,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,eAAe,EAAE,WAAW,EAAE,WAAW,IAAI,SAAS,EAAE,CAAC;AAC9E,QAAA,OAAO,KAAK;IAChB;AAEA,IAAA,IAAI,MAAM,CAAC,aAAa,EAAE;QACtB,KAAK,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,cAAc,EAAE,CAAC;AACtC,QAAA,OAAO,KAAK;IAChB;AAEA,IAAA,OAAO,KAAK;AAChB;;"}
1
+ {"version":3,"file":"toastCommandResult.js","sources":["../../../Notifications/toastCommandResult.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 { ICommandResult } from '@cratis/arc/commands';\nimport { toast } from './toast';\n\n/** Options for {@link toastCommandResult}. */\nexport interface ToastCommandResultOptions {\n /** Title for the success toast. Defaults to `'Success'`. */\n successTitle?: string;\n /** Description for the success toast. */\n successDescription?: string;\n /** Title when the command was rejected by authorization. Defaults to `'Not authorized'`. */\n unauthorizedTitle?: string;\n /** Title when the command failed validation. Defaults to `'Validation failed'`. */\n validationTitle?: string;\n /** Title when the command threw. Defaults to `'Something went wrong'`. */\n exceptionTitle?: string;\n /** When false, no toast is shown on success. Defaults to `true`. */\n showSuccess?: boolean;\n}\n\n/**\n * Surfaces an Arc {@link ICommandResult} as a toast, mapping the granular\n * result flags to the right severity — the same branching Arc apps do when\n * executing a command outside a `CommandDialog`:\n *\n * - **success** → a success toast (suppress with `showSuccess: false`);\n * - **not authorized** → a warning toast;\n * - **invalid** → an error toast listing the per-field validation messages;\n * - **exceptions** → a generic error toast (stack traces are never shown to\n * users — log `result.exceptionMessages` yourself).\n *\n * Requires a {@link Toaster} mounted in the tree. Returns `true` on success so\n * callers can gate follow-up work (close a panel, refresh a query).\n *\n * ```tsx\n * const result = await command.execute();\n * if (toastCommandResult(result, { successTitle: 'Author registered' })) {\n * refresh();\n * }\n * ```\n *\n * @typeParam TResponse - The command response type.\n * @param result - The command result to surface.\n * @param options - {@link ToastCommandResultOptions}.\n * @returns `true` when the command succeeded, otherwise `false`.\n */\nexport function toastCommandResult<TResponse = object>(\n result: ICommandResult<TResponse>,\n options: ToastCommandResultOptions = {},\n): boolean {\n const {\n successTitle = 'Success',\n successDescription,\n unauthorizedTitle = 'Not authorized',\n validationTitle = 'Validation failed',\n exceptionTitle = 'Something went wrong',\n showSuccess = true,\n } = options;\n\n if (result.isSuccess) {\n if (showSuccess) {\n toast.success({ title: successTitle, description: successDescription });\n }\n return true;\n }\n\n if (!result.isAuthorized) {\n toast.warn({ title: unauthorizedTitle });\n return false;\n }\n\n if (!result.isValid) {\n const description = result.validationResults\n .map((validationResult) => validationResult.message)\n .filter(Boolean)\n .join('\\n');\n toast.error({ title: validationTitle, description: description || undefined });\n return false;\n }\n\n if (result.hasExceptions) {\n toast.error({ title: exceptionTitle });\n return false;\n }\n\n return false;\n}\n"],"names":[],"mappings":";;SAgDgB,kBAAkB,CAC9B,MAAiC,EACjC,UAAqC,EAAE,EAAA;IAEvC,MAAM,EACF,YAAY,GAAG,SAAS,EACxB,kBAAkB,EAClB,iBAAiB,GAAG,gBAAgB,EACpC,eAAe,GAAG,mBAAmB,EACrC,cAAc,GAAG,sBAAsB,EACvC,WAAW,GAAG,IAAI,GACrB,GAAG,OAAO;AAEX,IAAA,IAAI,MAAM,CAAC,SAAS,EAAE;QAClB,IAAI,WAAW,EAAE;AACb,YAAA,KAAK,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE,YAAY,EAAE,WAAW,EAAE,kBAAkB,EAAE,CAAC;QAC3E;AACA,QAAA,OAAO,IAAI;IACf;AAEA,IAAA,IAAI,CAAC,MAAM,CAAC,YAAY,EAAE;QACtB,KAAK,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,iBAAiB,EAAE,CAAC;AACxC,QAAA,OAAO,KAAK;IAChB;AAEA,IAAA,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE;AACjB,QAAA,MAAM,WAAW,GAAG,MAAM,CAAC;aACtB,GAAG,CAAC,CAAC,gBAAgB,KAAK,gBAAgB,CAAC,OAAO;aAClD,MAAM,CAAC,OAAO;aACd,IAAI,CAAC,IAAI,CAAC;AACf,QAAA,KAAK,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,eAAe,EAAE,WAAW,EAAE,WAAW,IAAI,SAAS,EAAE,CAAC;AAC9E,QAAA,OAAO,KAAK;IAChB;AAEA,IAAA,IAAI,MAAM,CAAC,aAAa,EAAE;QACtB,KAAK,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,cAAc,EAAE,CAAC;AACtC,QAAA,OAAO,KAAK;IAChB;AAEA,IAAA,OAAO,KAAK;AAChB;;"}
@@ -52,3 +52,4 @@ export interface ObjectContentEditorProps {
52
52
  * @param props - {@link ObjectContentEditorProps}.
53
53
  */
54
54
  export declare const ObjectContentEditor: ({ object, timestamp, schema, editMode, onChange, onValidationChange, className, }: ObjectContentEditorProps) => React.JSX.Element;
55
+ //# sourceMappingURL=ObjectContentEditor.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ObjectContentEditor.d.ts","sourceRoot":"","sources":["../../../ObjectContentEditor/ObjectContentEditor.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAoD,MAAM,OAAO,CAAC;AAGzE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,2BAAwB,CAAC;AAE5D,OAAO,KAAK,EAAE,IAAI,EAAE,UAAU,EAAsB,MAAM,wBAAqB,CAAC;AAKhF;;GAEG;AACH,MAAM,WAAW,wBAAwB;IACrC,yCAAyC;IACzC,MAAM,EAAE,IAAI,CAAC;IAEb,yEAAyE;IACzE,SAAS,CAAC,EAAE,IAAI,CAAC;IAEjB;;;;OAIG;IACH,MAAM,EAAE,UAAU,CAAC;IAEnB;;;OAGG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IAEnB;;;OAGG;IACH,QAAQ,CAAC,EAAE,aAAa,CAAC,IAAI,CAAC,CAAC;IAE/B;;;;OAIG;IACH,kBAAkB,CAAC,EAAE,CAAC,SAAS,EAAE,OAAO,KAAK,IAAI,CAAC;IAElD;;;;OAIG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;CACtB;AAED;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,mBAAmB,sFAQ7B,wBAAwB,sBA+lB1B,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"ObjectContentEditor.js","sources":["../../../ObjectContentEditor/ObjectContentEditor.tsx"],"sourcesContent":[null],"names":["_jsxs","_jsx"],"mappings":"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"}
1
+ {"version":3,"file":"ObjectContentEditor.js","sources":["../../../ObjectContentEditor/ObjectContentEditor.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 { Tooltip } from '../Common/Tooltip';\nimport React, { useState, useCallback, useMemo, useEffect } from 'react';\nimport * as faIcons from 'react-icons/fa6';\nimport { ObjectNavigationalBar } from '../ObjectNavigationalBar';\nimport type { ChangeHandler } from '../types/ChangeHandler';\nimport type { ChangeMeta } from '../types/ChangeMeta';\nimport type { Json, JsonSchema, JsonSchemaProperty } from '../types/JsonSchema';\nimport { getValueAtPath } from './objectHelpers';\n\nimport { DatePickerInput } from '../Common/DatePickerInput';\n\n/**\n * Props for {@link ObjectContentEditor}.\n */\nexport interface ObjectContentEditorProps {\n /** The JSON value to display or edit. */\n object: Json;\n\n /** Optional snapshot timestamp displayed at the bottom of the editor. */\n timestamp?: Date;\n\n /**\n * JSON Schema describing the structure of {@link object}. Drives field\n * detection, label rendering, required-field markers, and per-field input\n * type selection in edit mode.\n */\n schema: JsonSchema;\n\n /**\n * When true, renders editable input fields for each property respecting\n * the JSON Schema's `type` and `format` annotations. Defaults to read-only.\n */\n editMode?: boolean;\n\n /**\n * Invoked with the updated object after any field edit. Required to\n * actually persist user changes when {@link editMode} is true.\n */\n onChange?: ChangeHandler<Json>;\n\n /**\n * Invoked whenever the validation state of the editor changes (true when\n * one or more fields fail their schema check). Useful for disabling a\n * surrounding Save button while errors are present.\n */\n onValidationChange?: (hasErrors: boolean) => void;\n\n /**\n * Extra CSS class names appended to the editor root, combined with the\n * default `order-content` class. For fine-grained styling of the internal\n * Components inputs, use product tokens and stable Cratis parts.\n */\n className?: string;\n}\n\n/**\n * Renders a structured view (or editor) of any JSON object whose shape is\n * described by a JSON Schema. In view mode it lays out properties as a labeled\n * table with breadcrumb-style navigation into nested objects and arrays. In\n * edit mode it switches to the appropriate input type for each property\n * (`InputText`, `InputNumber`, `Checkbox`, `Calendar`, `InputTextarea`).\n *\n * The component composes Cratis-owned controls internally. Restyle it through\n * semantic tokens, its root `className`, and documented descendant\n * `data-cratis-part` values rather than a provider-level renderer preset.\n *\n * @param props - {@link ObjectContentEditorProps}.\n */\nexport const ObjectContentEditor = ({\n object,\n timestamp,\n schema,\n editMode = false,\n onChange,\n onValidationChange,\n className,\n}: ObjectContentEditorProps) => {\n const [navigationPath, setNavigationPath] = useState<string[]>([]);\n const [validationErrors, setValidationErrors] = useState<Record<string, string>>({});\n\n const validateValue = useCallback(\n (\n propertyName: string,\n value: Json,\n property: JsonSchemaProperty,\n ): string | undefined => {\n if (editMode) {\n if (value === null || value === undefined || value === '') {\n return 'This field is required';\n }\n } else {\n const isRequired = schema.required?.includes(propertyName);\n if (\n isRequired &&\n (value === null || value === undefined || value === '')\n ) {\n return 'This field is required';\n }\n }\n\n if (property.type === 'string' && typeof value === 'string') {\n if (\n property.format === 'email' &&\n value &&\n !value.match(/^[^\\s@]+@[^\\s@]+\\.[^\\s@]+$/)\n ) {\n return 'Invalid email format';\n }\n if (\n property.format === 'uri' &&\n value &&\n !value.match(/^https?:\\/\\/.+/)\n ) {\n return 'Invalid URI format';\n }\n }\n\n if (property.type === 'number' || property.type === 'integer') {\n if (\n value !== null &&\n value !== undefined &&\n value !== '' &&\n isNaN(Number(value))\n ) {\n return 'Must be a valid number';\n }\n }\n\n return undefined;\n },\n [schema, editMode],\n );\n\n useEffect(() => {\n if (!editMode || navigationPath.length > 0) return;\n\n const errors: Record<string, string> = {};\n const properties = schema.properties || {};\n\n Object.entries(properties).forEach(([propertyName, property]) => {\n const value = (object as Record<string, Json>)[propertyName];\n const error = validateValue(\n propertyName,\n value,\n property as JsonSchemaProperty,\n );\n if (error) {\n errors[propertyName] = error;\n }\n });\n\n setValidationErrors(errors);\n }, [object, schema, editMode, navigationPath, validateValue]);\n\n useEffect(() => {\n if (editMode && onValidationChange) {\n const hasErrors = Object.keys(validationErrors).length > 0;\n onValidationChange(hasErrors);\n }\n }, [validationErrors, editMode, onValidationChange]);\n\n const navigateTo = useCallback(\n (segments: string[]) => {\n setNavigationPath([...navigationPath, ...segments]);\n },\n [navigationPath],\n );\n\n const navigateToBreadcrumb = useCallback(\n (index: number) => {\n if (index === 0) {\n setNavigationPath([]);\n } else {\n setNavigationPath(navigationPath.slice(0, index));\n }\n },\n [navigationPath],\n );\n\n const currentData = useMemo(() => {\n if (navigationPath.length === 0) {\n return object;\n }\n\n const value = getValueAtPath(object, navigationPath);\n return value !== null && typeof value === 'object' ? value : null;\n }, [object, navigationPath]);\n\n useEffect(() => {\n if (navigationPath.length > 0 && currentData === null) {\n setNavigationPath([]);\n }\n }, [currentData, navigationPath]);\n\n const currentProperties = useMemo(() => {\n const properties = schema.properties || {};\n\n if (navigationPath.length === 0) {\n return properties;\n }\n\n return {};\n }, [schema, navigationPath]);\n\n const tableStyle: React.CSSProperties = {\n width: '100%',\n borderCollapse: 'collapse',\n fontFamily: '-apple-system, BlinkMacSystemFont, \"SF Mono\", monospace',\n fontSize: '13px',\n };\n\n const rowStyle: React.CSSProperties = {\n borderBottom: '1px solid var(--cratis-surface-border)',\n };\n\n const labelStyle: React.CSSProperties = {\n padding: '8px 12px',\n color: 'var(--cratis-text-color-secondary)',\n textAlign: 'left',\n fontWeight: 500,\n width: '140px',\n whiteSpace: 'nowrap',\n };\n\n const valueStyle: React.CSSProperties = {\n padding: '8px 12px',\n color: 'var(--cratis-text-color)',\n textAlign: 'left',\n };\n\n const infoIconStyle: React.CSSProperties = {\n fontSize: '0.875rem',\n color: 'var(--cratis-text-color-secondary)',\n flexShrink: 0,\n };\n\n const fieldErrorStyle: React.CSSProperties = {\n color: 'var(--cratis-red-500)',\n fontSize: '0.75rem',\n };\n\n const updateValue = useCallback(\n (propertyName: string, newValue: Json, meta: ChangeMeta) => {\n if (!onChange) return;\n\n const updatedObject = { ...(object as Record<string, Json>) };\n updatedObject[propertyName] = newValue;\n onChange(updatedObject, meta);\n },\n [object, onChange],\n );\n\n const renderEditField = (\n propertyName: string,\n property: JsonSchemaProperty,\n value: Json,\n ) => {\n const error = validationErrors[propertyName];\n\n const handleChange = (newValue: Json, meta: ChangeMeta) => {\n updateValue(propertyName, newValue, meta);\n const validationError = validateValue(propertyName, newValue, property);\n setValidationErrors((prev) => {\n const newErrors = { ...prev };\n if (validationError) {\n newErrors[propertyName] = validationError;\n } else {\n delete newErrors[propertyName];\n }\n return newErrors;\n });\n };\n\n if (property.type === 'boolean') {\n return (\n <div style={{ display: 'flex', flexDirection: 'column', gap: '4px' }}>\n <input\n type='checkbox'\n aria-label={propertyName}\n checked={Boolean(value)}\n onChange={(event) =>\n handleChange(event.target.checked, {\n source: 'user',\n nativeEvent: event.nativeEvent,\n })\n }\n aria-invalid={Boolean(error) || undefined}\n className='cratis:size-5 cratis:accent-[var(--cratis-primary-color)]'\n />\n {error && <small style={fieldErrorStyle}>{error}</small>}\n </div>\n );\n }\n\n if (property.type === 'number' || property.type === 'integer') {\n return (\n <div style={{ display: 'flex', flexDirection: 'column', gap: '4px' }}>\n <input\n type='number'\n aria-label={propertyName}\n value={value === null || value === undefined ? '' : Number(value)}\n onChange={(event) =>\n handleChange(\n event.target.value === ''\n ? null\n : event.target.valueAsNumber,\n {\n source: 'user',\n nativeEvent: event.nativeEvent,\n },\n )\n }\n aria-invalid={Boolean(error) || undefined}\n className='cratis-field-input cratis:w-full'\n />\n {error && <small style={fieldErrorStyle}>{error}</small>}\n </div>\n );\n }\n\n if (property.type === 'string' && property.format === 'date-time') {\n const dateValue = value ? new Date(value as string) : null;\n return (\n <div style={{ display: 'flex', flexDirection: 'column', gap: '4px' }}>\n <DatePickerInput\n aria-label={propertyName}\n value={dateValue}\n onChange={(date, meta) =>\n handleChange(\n date ? date.toISOString() : null,\n meta ?? { source: 'user' },\n )\n }\n showTime\n showIcon\n invalid={!!error}\n />\n {error && <small style={fieldErrorStyle}>{error}</small>}\n </div>\n );\n }\n\n if (property.type === 'string' && property.format === 'date') {\n const dateValue = value ? new Date(value as string) : null;\n return (\n <div style={{ display: 'flex', flexDirection: 'column', gap: '4px' }}>\n <DatePickerInput\n aria-label={propertyName}\n value={dateValue}\n onChange={(date, meta) =>\n handleChange(\n date ? date.toISOString().split('T')[0] : null,\n meta ?? { source: 'user' },\n )\n }\n showIcon\n invalid={!!error}\n />\n {error && <small style={fieldErrorStyle}>{error}</small>}\n </div>\n );\n }\n\n if (property.type === 'array') {\n return (\n <div\n className='cratis:flex cratis:items-center cratis:gap-2'\n style={{\n color: 'var(--cratis-text-color-secondary)',\n fontStyle: 'italic',\n }}\n >\n <span>Array editing not yet supported</span>\n </div>\n );\n }\n\n if (property.type === 'object') {\n return (\n <div\n className='cratis:flex cratis:items-center cratis:gap-2'\n style={{\n color: 'var(--cratis-text-color-secondary)',\n fontStyle: 'italic',\n }}\n >\n <span>Object editing not yet supported</span>\n </div>\n );\n }\n\n const isLongText = (value as string)?.length > 50;\n\n if (isLongText) {\n return (\n <div style={{ display: 'flex', flexDirection: 'column', gap: '4px' }}>\n <textarea\n aria-label={propertyName}\n value={String(value ?? '')}\n onChange={(event) =>\n handleChange(event.target.value, {\n source: 'user',\n nativeEvent: event.nativeEvent,\n })\n }\n rows={3}\n aria-invalid={Boolean(error) || undefined}\n className='cratis-field-input cratis-field-textarea cratis:w-full'\n />\n {error && <small style={fieldErrorStyle}>{error}</small>}\n </div>\n );\n }\n\n return (\n <div style={{ display: 'flex', flexDirection: 'column', gap: '4px' }}>\n <input\n aria-label={propertyName}\n value={String(value ?? '')}\n onChange={(event) =>\n handleChange(event.target.value, {\n source: 'user',\n nativeEvent: event.nativeEvent,\n })\n }\n aria-invalid={Boolean(error) || undefined}\n className='cratis-field-input cratis:w-full'\n />\n {error && <small style={fieldErrorStyle}>{error}</small>}\n </div>\n );\n };\n\n const renderValue = (\n value: Json,\n propertyName: string,\n pathSegments: string[],\n ) => {\n if (value === null || value === undefined) return '';\n\n if (Array.isArray(value)) {\n return (\n <button\n type='button'\n className='cratis:flex cratis:items-center cratis:gap-2 cratis:cursor-pointer'\n onClick={() => navigateTo(pathSegments)}\n style={{\n color: 'var(--cratis-primary-color)',\n display: 'flex',\n alignItems: 'center',\n padding: 0,\n border: 0,\n background: 'transparent',\n font: 'inherit',\n }}\n aria-label={`Open ${propertyName}, ${value.length} items`}\n >\n <span>Array[{value.length}]</span>\n <faIcons.FaArrowRight\n style={{ fontSize: '0.875rem', display: 'inline-flex' }}\n aria-hidden='true'\n />\n </button>\n );\n }\n\n if (typeof value === 'object') {\n return (\n <button\n type='button'\n className='cratis:flex cratis:items-center cratis:gap-2 cratis:cursor-pointer'\n onClick={() => navigateTo(pathSegments)}\n style={{\n color: 'var(--cratis-primary-color)',\n display: 'flex',\n alignItems: 'center',\n padding: 0,\n border: 0,\n background: 'transparent',\n font: 'inherit',\n }}\n aria-label={`Open ${propertyName}`}\n >\n <span>Object</span>\n <faIcons.FaArrowRight\n style={{ fontSize: '0.875rem', display: 'inline-flex' }}\n aria-hidden='true'\n />\n </button>\n );\n }\n\n return String(value);\n };\n\n const renderTable = () => {\n if (currentData === null) {\n return null;\n }\n\n if (Array.isArray(currentData)) {\n if (currentData.length === 0)\n return (\n <div\n style={{\n padding: '12px',\n color: 'var(--cratis-text-color-secondary)',\n }}\n >\n Empty array\n </div>\n );\n\n const firstItem = currentData[0];\n if (\n typeof firstItem === 'object' &&\n firstItem !== null &&\n !Array.isArray(firstItem)\n ) {\n const keys = Object.keys(firstItem);\n\n return (\n <table style={tableStyle}>\n <tbody>\n {currentData.map((item, index) => (\n <React.Fragment key={index}>\n {index > 0 && (\n <tr\n style={{\n height: '8px',\n background: 'var(--cratis-surface-hover)',\n }}\n >\n <td colSpan={2}></td>\n </tr>\n )}\n {keys.map((key) => (\n <tr key={`${index}-${key}`} style={rowStyle}>\n <td style={labelStyle}>{key}</td>\n <td style={valueStyle}>\n {renderValue(\n (item as Record<string, Json>)[key],\n key,\n [String(index), key],\n )}\n </td>\n </tr>\n ))}\n </React.Fragment>\n ))}\n </tbody>\n </table>\n );\n } else {\n return (\n <table style={tableStyle}>\n <tbody>\n {currentData.map((item, index) => (\n <tr key={index} style={rowStyle}>\n <td style={labelStyle}>[{index}]</td>\n <td style={valueStyle}>\n {renderValue(item, `[${index}]`, [\n String(index),\n ])}\n </td>\n </tr>\n ))}\n </tbody>\n </table>\n );\n }\n }\n\n const entries =\n navigationPath.length === 0\n ? Object.entries(currentProperties)\n : Object.entries(currentData as { [key: string]: Json });\n\n return (\n <table style={tableStyle}>\n <tbody>\n {entries.map(\n ([propertyName, propertyDef]: [\n string,\n JsonSchemaProperty | Json,\n ]) => {\n const value = (currentData as Record<string, Json>)[\n propertyName\n ];\n\n const isSchemaProperty = navigationPath.length === 0;\n const property =\n isSchemaProperty &&\n typeof propertyDef === 'object' &&\n propertyDef !== null &&\n 'type' in propertyDef\n ? (propertyDef as JsonSchemaProperty)\n : null;\n const description = property?.description;\n\n return (\n <tr key={propertyName} style={rowStyle}>\n <td style={labelStyle}>\n <span\n style={{\n display: 'inline-flex',\n alignItems: 'center',\n gap: '6px',\n }}\n >\n {propertyName}\n {description && (\n <Tooltip\n content={description}\n position='right'\n >\n <button\n type='button'\n aria-label='Property description'\n style={{\n display: 'inline-flex',\n padding: 0,\n border: 0,\n background: 'transparent',\n color: 'inherit',\n }}\n >\n <faIcons.FaCircleInfo\n aria-hidden='true'\n className='property-info-icon'\n style={infoIconStyle}\n />\n </button>\n </Tooltip>\n )}\n </span>\n </td>\n <td style={valueStyle}>\n {editMode && property\n ? renderEditField(\n propertyName,\n property,\n value,\n )\n : renderValue(value as Json, propertyName, [\n propertyName,\n ])}\n </td>\n </tr>\n );\n },\n )}\n </tbody>\n </table>\n );\n };\n\n return (\n <div\n className={className ? `order-content ${className}` : 'order-content'}\n style={{ display: 'flex', flexDirection: 'column', height: '100%' }}\n >\n <ObjectNavigationalBar\n navigationPath={navigationPath}\n onNavigate={navigateToBreadcrumb}\n />\n {renderTable()}\n {timestamp && (\n <div\n style={{\n marginTop: '20px',\n padding: '12px',\n background: 'var(--cratis-highlight-bg)',\n borderRadius: '8px',\n fontSize: '12px',\n color: 'var(--cratis-text-color)',\n }}\n >\n Snapshot captured: {timestamp.toLocaleString()}\n </div>\n )}\n </div>\n );\n};\n"],"names":["_jsxs","_jsx"],"mappings":"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"}
@@ -1 +1,2 @@
1
1
  export * from './ObjectContentEditor.js';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../ObjectContentEditor/index.ts"],"names":[],"mappings":"AAGA,cAAc,0BAAuB,CAAC"}
@@ -6,3 +6,4 @@ import { Json } from '../types/JsonSchema.js';
6
6
  * Returns null if the path cannot be followed.
7
7
  */
8
8
  export declare function getValueAtPath(data: Json, path: string[]): Json | null;
9
+ //# sourceMappingURL=objectHelpers.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"objectHelpers.d.ts","sourceRoot":"","sources":["../../../ObjectContentEditor/objectHelpers.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,IAAI,EAAE,MAAM,wBAAqB,CAAC;AAE3C;;;;;GAKG;AACH,wBAAgB,cAAc,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,IAAI,GAAG,IAAI,CAgBtE"}
@@ -1 +1 @@
1
- {"version":3,"file":"objectHelpers.js","sources":["../../../ObjectContentEditor/objectHelpers.ts"],"sourcesContent":[null],"names":[],"mappings":";;AAYM,SAAU,cAAc,CAAC,IAAU,EAAE,IAAc,EAAA;IACrD,IAAI,OAAO,GAAS,IAAI;AACxB,IAAA,KAAK,MAAM,OAAO,IAAI,IAAI,EAAE;AACxB,QAAA,IAAI,OAAO,KAAK,IAAI,IAAI,OAAO,KAAK,SAAS;AAAE,YAAA,OAAO,IAAI;AAC1D,QAAA,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE;AACxB,YAAA,IAAI,CAAC,mBAAmB,CAAC,OAAO,CAAC;AAAE,gBAAA,OAAO,IAAI;AAC9C,YAAA,MAAM,KAAK,GAAG,MAAM,CAAC,OAAO,CAAC;AAC7B,YAAA,IAAI,KAAK,IAAI,OAAO,CAAC,MAAM;AAAE,gBAAA,OAAO,IAAI;AACxC,YAAA,OAAO,GAAG,OAAO,CAAC,KAAK,CAAC;QAC5B;AAAO,aAAA,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE;AACpC,YAAA,OAAO,GAAI,OAAmC,CAAC,OAAO,CAAC;QAC3D;aAAO;AACH,YAAA,OAAO,IAAI;QACf;IACJ;IACA,OAAO,OAAO,IAAI,IAAI;AAC1B;;"}
1
+ {"version":3,"file":"objectHelpers.js","sources":["../../../ObjectContentEditor/objectHelpers.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 { isArrayIndexSegment } from '../ObjectNavigationalBar/breadcrumbHelpers';\nimport { Json } from '../types/JsonSchema';\n\n/**\n * Retrieves the value at the specified path within a JSON data structure.\n * Object properties are addressed by name and array elements by their\n * zero-based index (e.g. `['causation', '0', 'properties']`).\n * Returns null if the path cannot be followed.\n */\nexport function getValueAtPath(data: Json, path: string[]): Json | null {\n let current: Json = data;\n for (const segment of path) {\n if (current === null || current === undefined) return null;\n if (Array.isArray(current)) {\n if (!isArrayIndexSegment(segment)) return null;\n const index = Number(segment);\n if (index >= current.length) return null;\n current = current[index];\n } else if (typeof current === 'object') {\n current = (current as { [key: string]: Json })[segment];\n } else {\n return null;\n }\n }\n return current ?? null;\n}\n"],"names":[],"mappings":";;AAYM,SAAU,cAAc,CAAC,IAAU,EAAE,IAAc,EAAA;IACrD,IAAI,OAAO,GAAS,IAAI;AACxB,IAAA,KAAK,MAAM,OAAO,IAAI,IAAI,EAAE;AACxB,QAAA,IAAI,OAAO,KAAK,IAAI,IAAI,OAAO,KAAK,SAAS;AAAE,YAAA,OAAO,IAAI;AAC1D,QAAA,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE;AACxB,YAAA,IAAI,CAAC,mBAAmB,CAAC,OAAO,CAAC;AAAE,gBAAA,OAAO,IAAI;AAC9C,YAAA,MAAM,KAAK,GAAG,MAAM,CAAC,OAAO,CAAC;AAC7B,YAAA,IAAI,KAAK,IAAI,OAAO,CAAC,MAAM;AAAE,gBAAA,OAAO,IAAI;AACxC,YAAA,OAAO,GAAG,OAAO,CAAC,KAAK,CAAC;QAC5B;AAAO,aAAA,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE;AACpC,YAAA,OAAO,GAAI,OAAmC,CAAC,OAAO,CAAC;QAC3D;aAAO;AACH,YAAA,OAAO,IAAI;QACf;IACJ;IACA,OAAO,OAAO,IAAI,IAAI;AAC1B;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"ObjectNavigationalBar.js","sources":["../../../ObjectNavigationalBar/ObjectNavigationalBar.tsx"],"sourcesContent":[null],"names":["_jsx","_jsxs"],"mappings":";;;;;;;AAyCM,SAAU,qBAAqB,CAAC,EAClC,cAAc,EACd,UAAU,EACV,SAAS,GAAG,eAAe,EAC3B,SAAS,GACgB,EAAA;AACzB,IAAA,MAAM,eAAe,GAAG,OAAO,CAC3B,MAAM,0BAA0B,CAAC,cAAc,CAAC,EAChD,CAAC,cAAc,CAAC,CACnB;IACD,MAAM,aAAa,GAAG;UAChB,CAAA,mEAAA,EAAsE,SAAS,CAAA;UAC/E,oEAAoE;AAE1E,IAAA,QACIA,GAAA,CAAA,KAAA,EAAA,EAAK,SAAS,EAAE,aAAa,YACzBC,IAAA,CAAA,KAAA,EAAA,EAAK,KAAK,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,GAAG,EAAE,QAAQ,EAAE,EAAA,QAAA,EAAA,CAChED,GAAA,CAAC,OAAO,EAAA,EAAC,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAC,KAAK,EAAA,QAAA,EACvCA,IAAC,MAAM,EAAA,EACH,OAAO,EAAC,OAAO,EACf,IAAI,EAAC,OAAO,EACZ,IAAI,EAAEA,IAAC,OAAO,CAAC,WAAW,EAAA,EAAA,CAAG,EAC7B,OAAO,EAAE,MAAM,UAAU,CAAC,cAAc,CAAC,MAAM,GAAG,CAAC,CAAC,EACpD,QAAQ,EAAE,cAAc,CAAC,MAAM,KAAK,CAAC,gBACzB,SAAS,EAAA,CACvB,GACI,EACVA,GAAA,CAAA,KAAA,EAAA,EACI,KAAK,EAAE;AACH,wBAAA,QAAQ,EAAE,QAAQ;AAClB,wBAAA,KAAK,EAAE,oCAAoC;qBAC9C,EAAA,QAAA,EAEA,eAAe,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,KAAK,MAC7BC,IAAA,CAAA,MAAA,EAAA,EAAA,QAAA,EAAA,CACK,KAAK,GAAG,CAAC,IAAID,GAAA,CAAA,MAAA,EAAA,EAAM,SAAS,EAAC,aAAa,EAAA,QAAA,EAAA,GAAA,EAAA,CAAY,EACvDA,gBACI,IAAI,EAAC,QAAQ,EACb,OAAO,EAAE,MAAM,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,EAAA,cAAA,EAEjC,KAAK,KAAK,eAAe,CAAC,MAAM,GAAG;AAC/B,sCAAE;AACF,sCAAE,SAAS,EAEnB,KAAK,EAAE;AACH,oCAAA,OAAO,EAAE,CAAC;AACV,oCAAA,MAAM,EAAE,CAAC;AACT,oCAAA,UAAU,EAAE,aAAa;AACzB,oCAAA,KAAK,EAAE,SAAS;AAChB,oCAAA,IAAI,EAAE,SAAS;AACf,oCAAA,MAAM,EAAE,SAAS;AACjB,oCAAA,cAAc,EACV,KAAK,GAAG,eAAe,CAAC,MAAM,GAAG;AAC7B,0CAAE;AACF,0CAAE,MAAM;AACnB,iCAAA,EAAA,QAAA,EAEA,IAAI,CAAC,IAAI,EAAA,CACL,CAAA,EAAA,EAxBF,KAAK,CAyBT,CACV,CAAC,EAAA,CACA,CAAA,EAAA,CACJ,EAAA,CACJ;AAEd;;"}
1
+ {"version":3,"file":"ObjectNavigationalBar.js","sources":["../../../ObjectNavigationalBar/ObjectNavigationalBar.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 { useMemo } from 'react';\nimport { Button } from '../Common/Button';\nimport * as faIcons from 'react-icons/fa6';\nimport { Tooltip } from '../Common/Tooltip';\nimport { buildNavigationBreadcrumbs } from './breadcrumbHelpers';\n\n/**\n * Props for {@link ObjectNavigationalBar}.\n */\nexport interface ObjectNavigationalBarProps {\n /**\n * Ordered list of property keys representing the current navigation depth\n * into a nested object (e.g. `['shipping', 'address']`). An empty array\n * means the navigation bar is at the root.\n */\n navigationPath: string[];\n\n /**\n * Invoked when the user clicks a breadcrumb or the back arrow. Receives\n * the destination index in {@link navigationPath} (`0` means root).\n */\n onNavigate: (index: number) => void;\n\n /** Label and accessible name for the back button (tooltip + aria-label). Override to localize. Defaults to `'Navigate back'`. */\n backLabel?: string;\n\n /** Extra CSS class names appended to the navigation bar root. */\n className?: string;\n}\n\n/**\n * Breadcrumb-style navigation bar showing the user's path through a nested\n * object structure, with a back-arrow button and clickable breadcrumb\n * segments. Pairs with {@link ObjectContentEditor} but can be reused for any\n * tree-like data exploration UI.\n *\n * @param props - {@link ObjectNavigationalBarProps}.\n */\nexport function ObjectNavigationalBar({\n navigationPath,\n onNavigate,\n backLabel = 'Navigate back',\n className,\n}: ObjectNavigationalBarProps) {\n const breadcrumbItems = useMemo(\n () => buildNavigationBreadcrumbs(navigationPath),\n [navigationPath],\n );\n const rootClassName = className\n ? `cratis-object-navigational-bar cratis:px-4 cratis:py-2 cratis:mb-2 ${className}`\n : 'cratis-object-navigational-bar cratis:px-4 cratis:py-2 cratis:mb-2';\n\n return (\n <div className={rootClassName}>\n <div style={{ display: 'flex', alignItems: 'center', gap: '0.5rem' }}>\n <Tooltip content={backLabel} position='top'>\n <Button\n variant='ghost'\n size='small'\n icon={<faIcons.FaArrowLeft />}\n onClick={() => onNavigate(navigationPath.length - 1)}\n disabled={navigationPath.length === 0}\n aria-label={backLabel}\n />\n </Tooltip>\n <div\n style={{\n fontSize: '0.9rem',\n color: 'var(--cratis-text-color-secondary)',\n }}\n >\n {breadcrumbItems.map((item, index) => (\n <span key={index}>\n {index > 0 && <span className='cratis:mx-2'>&gt;</span>}\n <button\n type='button'\n onClick={() => onNavigate(item.index)}\n aria-current={\n index === breadcrumbItems.length - 1\n ? 'location'\n : undefined\n }\n style={{\n padding: 0,\n border: 0,\n background: 'transparent',\n color: 'inherit',\n font: 'inherit',\n cursor: 'pointer',\n textDecoration:\n index < breadcrumbItems.length - 1\n ? 'underline'\n : 'none',\n }}\n >\n {item.name}\n </button>\n </span>\n ))}\n </div>\n </div>\n </div>\n );\n}\n"],"names":["_jsx","_jsxs"],"mappings":";;;;;;;AAyCM,SAAU,qBAAqB,CAAC,EAClC,cAAc,EACd,UAAU,EACV,SAAS,GAAG,eAAe,EAC3B,SAAS,GACgB,EAAA;AACzB,IAAA,MAAM,eAAe,GAAG,OAAO,CAC3B,MAAM,0BAA0B,CAAC,cAAc,CAAC,EAChD,CAAC,cAAc,CAAC,CACnB;IACD,MAAM,aAAa,GAAG;UAChB,CAAA,mEAAA,EAAsE,SAAS,CAAA;UAC/E,oEAAoE;AAE1E,IAAA,QACIA,GAAA,CAAA,KAAA,EAAA,EAAK,SAAS,EAAE,aAAa,YACzBC,IAAA,CAAA,KAAA,EAAA,EAAK,KAAK,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,GAAG,EAAE,QAAQ,EAAE,EAAA,QAAA,EAAA,CAChED,GAAA,CAAC,OAAO,EAAA,EAAC,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAC,KAAK,EAAA,QAAA,EACvCA,IAAC,MAAM,EAAA,EACH,OAAO,EAAC,OAAO,EACf,IAAI,EAAC,OAAO,EACZ,IAAI,EAAEA,IAAC,OAAO,CAAC,WAAW,EAAA,EAAA,CAAG,EAC7B,OAAO,EAAE,MAAM,UAAU,CAAC,cAAc,CAAC,MAAM,GAAG,CAAC,CAAC,EACpD,QAAQ,EAAE,cAAc,CAAC,MAAM,KAAK,CAAC,gBACzB,SAAS,EAAA,CACvB,GACI,EACVA,GAAA,CAAA,KAAA,EAAA,EACI,KAAK,EAAE;AACH,wBAAA,QAAQ,EAAE,QAAQ;AAClB,wBAAA,KAAK,EAAE,oCAAoC;qBAC9C,EAAA,QAAA,EAEA,eAAe,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,KAAK,MAC7BC,IAAA,CAAA,MAAA,EAAA,EAAA,QAAA,EAAA,CACK,KAAK,GAAG,CAAC,IAAID,GAAA,CAAA,MAAA,EAAA,EAAM,SAAS,EAAC,aAAa,EAAA,QAAA,EAAA,GAAA,EAAA,CAAY,EACvDA,gBACI,IAAI,EAAC,QAAQ,EACb,OAAO,EAAE,MAAM,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,EAAA,cAAA,EAEjC,KAAK,KAAK,eAAe,CAAC,MAAM,GAAG;AAC/B,sCAAE;AACF,sCAAE,SAAS,EAEnB,KAAK,EAAE;AACH,oCAAA,OAAO,EAAE,CAAC;AACV,oCAAA,MAAM,EAAE,CAAC;AACT,oCAAA,UAAU,EAAE,aAAa;AACzB,oCAAA,KAAK,EAAE,SAAS;AAChB,oCAAA,IAAI,EAAE,SAAS;AACf,oCAAA,MAAM,EAAE,SAAS;AACjB,oCAAA,cAAc,EACV,KAAK,GAAG,eAAe,CAAC,MAAM,GAAG;AAC7B,0CAAE;AACF,0CAAE,MAAM;AACnB,iCAAA,EAAA,QAAA,EAEA,IAAI,CAAC,IAAI,EAAA,CACL,CAAA,EAAA,EAxBF,KAAK,CAyBT,CACV,CAAC,EAAA,CACA,CAAA,EAAA,CACJ,EAAA,CACJ;AAEd;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"breadcrumbHelpers.js","sources":["../../../ObjectNavigationalBar/breadcrumbHelpers.ts"],"sourcesContent":[null],"names":[],"mappings":"AAQM,SAAU,mBAAmB,CAAC,OAAe,EAAA;AAC/C,IAAA,OAAO,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC;AAChC;AAQM,SAAU,0BAA0B,CAAC,cAAwB,EAAA;AAC/D,IAAA,MAAM,KAAK,GAAsC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;AAC7E,IAAA,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,cAAc,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;AAC5C,QAAA,MAAM,OAAO,GAAG,cAAc,CAAC,CAAC,CAAC;QACjC,KAAK,CAAC,IAAI,CAAC;AACP,YAAA,IAAI,EAAE,mBAAmB,CAAC,OAAO,CAAC,GAAG,CAAA,CAAA,EAAI,OAAO,CAAA,CAAA,CAAG,GAAG,OAAO;YAC7D,KAAK,EAAE,CAAC,GAAG,CAAC;AACf,SAAA,CAAC;IACN;AACA,IAAA,OAAO,KAAK;AAChB;;"}
1
+ {"version":3,"file":"breadcrumbHelpers.js","sources":["../../../ObjectNavigationalBar/breadcrumbHelpers.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 * Determines whether a navigation path segment addresses an element in an array\n * rather than a property on an object. Array elements are addressed by their\n * zero-based index, written as a plain decimal string (e.g. `'0'`).\n */\nexport function isArrayIndexSegment(segment: string): boolean {\n return /^\\d+$/.test(segment);\n}\n\n/**\n * Builds the breadcrumb items for an object navigation bar from a navigation path.\n * Always starts with a 'Root' item at index 0. Array index segments are rendered\n * in bracket notation (`'0'` becomes `'[0]'`) so they read as elements rather than\n * as properties.\n */\nexport function buildNavigationBreadcrumbs(navigationPath: string[]): { name: string; index: number }[] {\n const items: { name: string; index: number }[] = [{ name: 'Root', index: 0 }];\n for (let i = 0; i < navigationPath.length; i++) {\n const segment = navigationPath[i];\n items.push({\n name: isArrayIndexSegment(segment) ? `[${segment}]` : segment,\n index: i + 1,\n });\n }\n return items;\n}\n"],"names":[],"mappings":"AAQM,SAAU,mBAAmB,CAAC,OAAe,EAAA;AAC/C,IAAA,OAAO,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC;AAChC;AAQM,SAAU,0BAA0B,CAAC,cAAwB,EAAA;AAC/D,IAAA,MAAM,KAAK,GAAsC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;AAC7E,IAAA,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,cAAc,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;AAC5C,QAAA,MAAM,OAAO,GAAG,cAAc,CAAC,CAAC,CAAC;QACjC,KAAK,CAAC,IAAI,CAAC;AACP,YAAA,IAAI,EAAE,mBAAmB,CAAC,OAAO,CAAC,GAAG,CAAA,CAAA,EAAI,OAAO,CAAA,CAAA,CAAG,GAAG,OAAO;YAC7D,KAAK,EAAE,CAAC,GAAG,CAAC;AACf,SAAA,CAAC;IACN;AACA,IAAA,OAAO,KAAK;AAChB;;"}
@@ -1 +1,2 @@
1
1
  export * from './ObjectNavigationalBar.js';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../ObjectNavigationalBar/index.ts"],"names":[],"mappings":"AAGA,cAAc,4BAAyB,CAAC"}
@@ -19,3 +19,4 @@ import type { PivotViewerProps } from './types.js';
19
19
  * @param props - {@link PivotViewerProps}.
20
20
  */
21
21
  export declare function PivotViewer<TItem extends object>({ data, dimensions, filters, defaultDimensionKey, cardRenderer, detailRenderer, getItemId, searchFields, title, className, emptyContent, isLoading, loadingLabel, labels, colors, }: PivotViewerProps<TItem>): import("react").JSX.Element;
22
+ //# sourceMappingURL=PivotViewer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PivotViewer.d.ts","sourceRoot":"","sources":["../../../PivotViewer/PivotViewer.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,YAAS,CAAC;AA8BhD;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,WAAW,CAAC,KAAK,SAAS,MAAM,EAAE,EAC9C,IAAI,EACJ,UAAU,EACV,OAAO,EACP,mBAAmB,EACnB,YAAY,EACZ,cAAc,EACd,SAAS,EACT,YAAY,EACZ,KAAK,EACL,SAAS,EACT,YAAY,EACZ,SAAiB,EACjB,YAAY,EACZ,MAAM,EACN,MAAM,GACT,EAAE,gBAAgB,CAAC,KAAK,CAAC,+BAmbzB"}