@cratis/components 4.19.1 → 4.19.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/compat-manifest.json +11 -11
- package/dist/esm/Canvas/Canvas.d.ts +1 -0
- package/dist/esm/Canvas/Canvas.d.ts.map +1 -0
- package/dist/esm/Canvas/Canvas.js.map +1 -1
- package/dist/esm/Canvas/CanvasControls.d.ts +1 -0
- package/dist/esm/Canvas/CanvasControls.d.ts.map +1 -0
- package/dist/esm/Canvas/CanvasControls.js.map +1 -1
- package/dist/esm/Canvas/CanvasItem.js.map +1 -1
- package/dist/esm/Canvas/CanvasMinimap.js.map +1 -1
- package/dist/esm/Canvas/CanvasOverlay.js.map +1 -1
- package/dist/esm/Canvas/canvasGesture.js.map +1 -1
- package/dist/esm/Canvas/canvasTransformActivity.js.map +1 -1
- package/dist/esm/Canvas/index.d.ts +1 -0
- package/dist/esm/Canvas/index.d.ts.map +1 -0
- package/dist/esm/Canvas/isBackgroundPointerTarget.js.map +1 -1
- package/dist/esm/Canvas/isWithinScrollableContent.js.map +1 -1
- package/dist/esm/Canvas/panMomentum.js.map +1 -1
- package/dist/esm/Canvas/pinchGesture.js.map +1 -1
- package/dist/esm/Canvas/selfSuspendingFrameLoop.js.map +1 -1
- package/dist/esm/Canvas/shapes/ChatBubble/index.d.ts +1 -0
- package/dist/esm/Canvas/shapes/ChatBubble/index.d.ts.map +1 -0
- package/dist/esm/Canvas/shapes/ChatBubble/index.js +1 -0
- package/dist/esm/Canvas/shapes/ChatBubble/index.js.map +1 -0
- package/dist/esm/Canvas/shapes/Note/Note.js.map +1 -1
- package/dist/esm/Canvas/shapes/Note/NoteTextChanged.js.map +1 -1
- package/dist/esm/Canvas/shapes/Note/index.d.ts +1 -0
- package/dist/esm/Canvas/shapes/Note/index.d.ts.map +1 -0
- package/dist/esm/Canvas/shapes/Note/index.js +1 -0
- package/dist/esm/Canvas/shapes/Note/index.js.map +1 -0
- package/dist/esm/Canvas/shapes/Note/noteFont.js.map +1 -1
- package/dist/esm/Canvas/shapes/Region/ItemAddedToRegion.js.map +1 -1
- package/dist/esm/Canvas/shapes/Region/ItemRemovedFromRegion.js.map +1 -1
- package/dist/esm/Canvas/shapes/Region/Region.js.map +1 -1
- package/dist/esm/Canvas/shapes/Region/index.d.ts +1 -0
- package/dist/esm/Canvas/shapes/Region/index.d.ts.map +1 -0
- package/dist/esm/Canvas/shapes/Region/index.js +1 -0
- package/dist/esm/Canvas/shapes/Region/index.js.map +1 -0
- package/dist/esm/Canvas/shapes/Region/regionContainment.js.map +1 -1
- package/dist/esm/Canvas/useDragSelectionGuard.js.map +1 -1
- package/dist/esm/Canvas/zoomMechanism.js.map +1 -1
- package/dist/esm/Chat/ChatAuthor.d.ts +1 -0
- package/dist/esm/Chat/ChatAuthor.d.ts.map +1 -0
- package/dist/esm/Chat/ChatAuthor.js.map +1 -1
- package/dist/esm/Chat/ChatConversation.d.ts +1 -0
- package/dist/esm/Chat/ChatConversation.d.ts.map +1 -0
- package/dist/esm/Chat/ChatConversation.js.map +1 -1
- package/dist/esm/Chat/ChatIdentifier.js.map +1 -1
- package/dist/esm/Chat/ChatMention.d.ts +1 -0
- package/dist/esm/Chat/ChatMention.d.ts.map +1 -0
- package/dist/esm/Chat/ChatMention.js.map +1 -1
- package/dist/esm/Chat/ChatMessage.d.ts +1 -0
- package/dist/esm/Chat/ChatMessage.d.ts.map +1 -0
- package/dist/esm/Chat/ChatMessage.js.map +1 -1
- package/dist/esm/Chat/ChatMessageAction.d.ts +1 -0
- package/dist/esm/Chat/ChatMessageAction.d.ts.map +1 -0
- package/dist/esm/Chat/ChatMessageAction.js.map +1 -1
- package/dist/esm/Chat/ChatMessageBody.d.ts +1 -0
- package/dist/esm/Chat/ChatMessageBody.d.ts.map +1 -0
- package/dist/esm/Chat/ChatMessageBody.js.map +1 -1
- package/dist/esm/Chat/ChatSidebar.d.ts +1 -0
- package/dist/esm/Chat/ChatSidebar.d.ts.map +1 -0
- package/dist/esm/Chat/ChatSidebar.js.map +1 -1
- package/dist/esm/Chat/ChatSidebarForObservableQueries.d.ts +1 -0
- package/dist/esm/Chat/ChatSidebarForObservableQueries.d.ts.map +1 -0
- package/dist/esm/Chat/ChatSidebarForObservableQueries.js.map +1 -1
- package/dist/esm/Chat/ChatStatus.js.map +1 -1
- package/dist/esm/Chat/ChatTopic.d.ts +1 -0
- package/dist/esm/Chat/ChatTopic.d.ts.map +1 -0
- package/dist/esm/Chat/ChatTopic.js.map +1 -1
- package/dist/esm/Chat/ChatTopicList.d.ts +1 -0
- package/dist/esm/Chat/ChatTopicList.d.ts.map +1 -0
- package/dist/esm/Chat/ChatTopicList.js.map +1 -1
- package/dist/esm/Chat/Kit/AnchoredOverlay.js.map +1 -1
- package/dist/esm/Chat/Kit/Avatar/PersonAvatarCircle.js.map +1 -1
- package/dist/esm/Chat/Kit/Avatar/getAvatarColor.js.map +1 -1
- package/dist/esm/Chat/Kit/Avatar/getInitials.js.map +1 -1
- package/dist/esm/Chat/Kit/Avatar/index.d.ts +1 -0
- package/dist/esm/Chat/Kit/Avatar/index.d.ts.map +1 -0
- package/dist/esm/Chat/Kit/Avatar/index.js +1 -0
- package/dist/esm/Chat/Kit/Avatar/index.js.map +1 -0
- package/dist/esm/Chat/Kit/Chat.d.ts +1 -0
- package/dist/esm/Chat/Kit/Chat.d.ts.map +1 -0
- package/dist/esm/Chat/Kit/Chat.js.map +1 -1
- package/dist/esm/Chat/Kit/ChatAuthorKind.js.map +1 -1
- package/dist/esm/Chat/Kit/ChatBubble.d.ts +1 -0
- package/dist/esm/Chat/Kit/ChatBubble.d.ts.map +1 -0
- package/dist/esm/Chat/Kit/ChatBubble.js.map +1 -1
- package/dist/esm/Chat/Kit/ChatComposer.d.ts +1 -0
- package/dist/esm/Chat/Kit/ChatComposer.d.ts.map +1 -0
- package/dist/esm/Chat/Kit/ChatComposer.js.map +1 -1
- package/dist/esm/Chat/Kit/ChatMessage.d.ts +1 -0
- package/dist/esm/Chat/Kit/ChatMessage.d.ts.map +1 -0
- package/dist/esm/Chat/Kit/ChatMessage.js.map +1 -1
- package/dist/esm/Chat/Kit/ChatMessageAdded.js.map +1 -1
- package/dist/esm/Chat/Kit/ChatMessageBubble.d.ts +1 -0
- package/dist/esm/Chat/Kit/ChatMessageBubble.d.ts.map +1 -0
- package/dist/esm/Chat/Kit/ChatMessageBubble.js.map +1 -1
- package/dist/esm/Chat/Kit/ChatMessageReaction.d.ts +1 -0
- package/dist/esm/Chat/Kit/ChatMessageReaction.d.ts.map +1 -0
- package/dist/esm/Chat/Kit/ChatMessageReaction.js.map +1 -1
- package/dist/esm/Chat/Kit/ChatMessageReactionUser.js.map +1 -1
- package/dist/esm/Chat/Kit/ChatOwnReaction.js.map +1 -1
- package/dist/esm/Chat/Kit/ChatTypingAuthor.d.ts +1 -0
- package/dist/esm/Chat/Kit/ChatTypingAuthor.d.ts.map +1 -0
- package/dist/esm/Chat/Kit/ChatTypingAuthor.js.map +1 -1
- package/dist/esm/Chat/Kit/ChatVariant.js.map +1 -1
- package/dist/esm/Chat/Kit/Emoji/EmojiCategory.d.ts +1 -0
- package/dist/esm/Chat/Kit/Emoji/EmojiCategory.d.ts.map +1 -0
- package/dist/esm/Chat/Kit/Emoji/EmojiCategory.js.map +1 -1
- package/dist/esm/Chat/Kit/Emoji/EmojiCategoryKey.js.map +1 -1
- package/dist/esm/Chat/Kit/Emoji/EmojiMemory.js.map +1 -1
- package/dist/esm/Chat/Kit/Emoji/EmojiPicker.d.ts +1 -0
- package/dist/esm/Chat/Kit/Emoji/EmojiPicker.d.ts.map +1 -0
- package/dist/esm/Chat/Kit/Emoji/EmojiPicker.js.map +1 -1
- package/dist/esm/Chat/Kit/Emoji/emojiCatalog.d.ts +1 -0
- package/dist/esm/Chat/Kit/Emoji/emojiCatalog.d.ts.map +1 -0
- package/dist/esm/Chat/Kit/Emoji/emojiCatalog.js.map +1 -1
- package/dist/esm/Chat/Kit/Emoji/index.d.ts +1 -0
- package/dist/esm/Chat/Kit/Emoji/index.d.ts.map +1 -0
- package/dist/esm/Chat/Kit/Emoji/index.js +1 -0
- package/dist/esm/Chat/Kit/Emoji/index.js.map +1 -0
- package/dist/esm/Chat/Kit/Emoji/recentEmojis.d.ts +1 -0
- package/dist/esm/Chat/Kit/Emoji/recentEmojis.d.ts.map +1 -0
- package/dist/esm/Chat/Kit/Emoji/recentEmojis.js.map +1 -1
- package/dist/esm/Chat/Kit/FailedReply.d.ts +1 -0
- package/dist/esm/Chat/Kit/FailedReply.d.ts.map +1 -0
- package/dist/esm/Chat/Kit/FailedReply.js.map +1 -1
- package/dist/esm/Chat/Kit/Mentions/MentionCandidate.d.ts +1 -0
- package/dist/esm/Chat/Kit/Mentions/MentionCandidate.d.ts.map +1 -0
- package/dist/esm/Chat/Kit/Mentions/MentionCandidate.js.map +1 -1
- package/dist/esm/Chat/Kit/Mentions/MentionQuery.js.map +1 -1
- package/dist/esm/Chat/Kit/Mentions/MentionSuggestions.d.ts +1 -0
- package/dist/esm/Chat/Kit/Mentions/MentionSuggestions.d.ts.map +1 -0
- package/dist/esm/Chat/Kit/Mentions/MentionSuggestions.js.map +1 -1
- package/dist/esm/Chat/Kit/Mentions/activeMentionQuery.d.ts +1 -0
- package/dist/esm/Chat/Kit/Mentions/activeMentionQuery.d.ts.map +1 -0
- package/dist/esm/Chat/Kit/Mentions/activeMentionQuery.js.map +1 -1
- package/dist/esm/Chat/Kit/Mentions/applyMention.d.ts +1 -0
- package/dist/esm/Chat/Kit/Mentions/applyMention.d.ts.map +1 -0
- package/dist/esm/Chat/Kit/Mentions/applyMention.js.map +1 -1
- package/dist/esm/Chat/Kit/Mentions/extractMentions.js.map +1 -1
- package/dist/esm/Chat/Kit/Mentions/findMentionRanges.js.map +1 -1
- package/dist/esm/Chat/Kit/Mentions/index.d.ts +1 -0
- package/dist/esm/Chat/Kit/Mentions/index.d.ts.map +1 -0
- package/dist/esm/Chat/Kit/Mentions/index.js +1 -0
- package/dist/esm/Chat/Kit/Mentions/index.js.map +1 -0
- package/dist/esm/Chat/Kit/Mentions/matchCandidates.d.ts +1 -0
- package/dist/esm/Chat/Kit/Mentions/matchCandidates.d.ts.map +1 -0
- package/dist/esm/Chat/Kit/Mentions/matchCandidates.js.map +1 -1
- package/dist/esm/Chat/Kit/Mentions/mentionSegments.js.map +1 -1
- package/dist/esm/Chat/Kit/MessageReactions.d.ts +1 -0
- package/dist/esm/Chat/Kit/MessageReactions.d.ts.map +1 -0
- package/dist/esm/Chat/Kit/MessageReactions.js.map +1 -1
- package/dist/esm/Chat/Kit/ReactionPicker.d.ts +1 -0
- package/dist/esm/Chat/Kit/ReactionPicker.d.ts.map +1 -0
- package/dist/esm/Chat/Kit/ReactionPicker.js.map +1 -1
- package/dist/esm/Chat/Kit/TypingIndicator.d.ts +1 -0
- package/dist/esm/Chat/Kit/TypingIndicator.d.ts.map +1 -0
- package/dist/esm/Chat/Kit/TypingIndicator.js.map +1 -1
- package/dist/esm/Chat/Kit/findOwnReaction.d.ts +1 -0
- package/dist/esm/Chat/Kit/findOwnReaction.d.ts.map +1 -0
- package/dist/esm/Chat/Kit/findOwnReaction.js.map +1 -1
- package/dist/esm/Chat/Kit/index.d.ts +1 -0
- package/dist/esm/Chat/Kit/index.d.ts.map +1 -0
- package/dist/esm/Chat/Kit/index.js +1 -0
- package/dist/esm/Chat/Kit/index.js.map +1 -0
- package/dist/esm/Chat/Kit/reactionsExcludingUser.d.ts +1 -0
- package/dist/esm/Chat/Kit/reactionsExcludingUser.d.ts.map +1 -0
- package/dist/esm/Chat/Kit/reactionsExcludingUser.js.map +1 -1
- package/dist/esm/Chat/index.d.ts +1 -0
- package/dist/esm/Chat/index.d.ts.map +1 -0
- package/dist/esm/Chat/isTopicUnnamed.d.ts +1 -0
- package/dist/esm/Chat/isTopicUnnamed.d.ts.map +1 -0
- package/dist/esm/Chat/isTopicUnnamed.js.map +1 -1
- package/dist/esm/Chat/relativeTimestamp.js.map +1 -1
- package/dist/esm/Chat/shouldRequestTopicName.js.map +1 -1
- package/dist/esm/Chat/topicsByActivity.d.ts +1 -0
- package/dist/esm/Chat/topicsByActivity.d.ts.map +1 -0
- package/dist/esm/Chat/topicsByActivity.js.map +1 -1
- package/dist/esm/CommandDialog/CommandDialog.d.ts +1 -0
- package/dist/esm/CommandDialog/CommandDialog.d.ts.map +1 -0
- package/dist/esm/CommandDialog/CommandDialog.js.map +1 -1
- package/dist/esm/CommandDialog/CommandStepper.d.ts +1 -0
- package/dist/esm/CommandDialog/CommandStepper.d.ts.map +1 -0
- package/dist/esm/CommandDialog/CommandStepper.js.map +1 -1
- package/dist/esm/CommandDialog/CommandStepperContent.d.ts +1 -0
- package/dist/esm/CommandDialog/CommandStepperContent.d.ts.map +1 -0
- package/dist/esm/CommandDialog/CommandStepperContent.js.map +1 -1
- package/dist/esm/CommandDialog/StepperCommandDialog.d.ts +1 -0
- package/dist/esm/CommandDialog/StepperCommandDialog.d.ts.map +1 -0
- package/dist/esm/CommandDialog/StepperCommandDialog.js.map +1 -1
- package/dist/esm/CommandDialog/StepperPanel.js.map +1 -1
- package/dist/esm/CommandDialog/applyBeforeExecute.js.map +1 -1
- package/dist/esm/CommandDialog/commandValuesUnchanged.js.map +1 -1
- package/dist/esm/CommandDialog/confirmBeforeExecute.js.map +1 -1
- package/dist/esm/CommandDialog/index.d.ts +1 -0
- package/dist/esm/CommandDialog/index.d.ts.map +1 -0
- package/dist/esm/CommandDialog/stepChildren.js.map +1 -1
- package/dist/esm/CommandDialog/transitionStep.d.ts +1 -0
- package/dist/esm/CommandDialog/transitionStep.d.ts.map +1 -0
- package/dist/esm/CommandDialog/transitionStep.js.map +1 -1
- package/dist/esm/CommandDialog/useCommandExecution.d.ts +1 -0
- package/dist/esm/CommandDialog/useCommandExecution.d.ts.map +1 -0
- package/dist/esm/CommandDialog/useCommandExecution.js.map +1 -1
- package/dist/esm/CommandDialog/useSubmissionFlight.js.map +1 -1
- package/dist/esm/CommandForm/AutoCommandForm.js.map +1 -1
- package/dist/esm/CommandForm/FieldTypeProvider.js.map +1 -1
- package/dist/esm/CommandForm/commandFormMarkers.js.map +1 -1
- package/dist/esm/CommandForm/defaultFieldTypeProviders.js.map +1 -1
- package/dist/esm/CommandForm/fieldTypeProviderRegistry.d.ts +1 -0
- package/dist/esm/CommandForm/fieldTypeProviderRegistry.d.ts.map +1 -0
- package/dist/esm/CommandForm/fieldTypeProviderRegistry.js.map +1 -1
- package/dist/esm/CommandForm/fields/CalendarField.d.ts +1 -0
- package/dist/esm/CommandForm/fields/CalendarField.d.ts.map +1 -0
- package/dist/esm/CommandForm/fields/CalendarField.js.map +1 -1
- package/dist/esm/CommandForm/fields/CheckboxField.d.ts +1 -0
- package/dist/esm/CommandForm/fields/CheckboxField.d.ts.map +1 -0
- package/dist/esm/CommandForm/fields/CheckboxField.js.map +1 -1
- package/dist/esm/CommandForm/fields/ChipsField.d.ts +1 -0
- package/dist/esm/CommandForm/fields/ChipsField.d.ts.map +1 -0
- package/dist/esm/CommandForm/fields/ChipsField.js.map +1 -1
- package/dist/esm/CommandForm/fields/ColorPickerField.d.ts +1 -0
- package/dist/esm/CommandForm/fields/ColorPickerField.d.ts.map +1 -0
- package/dist/esm/CommandForm/fields/ColorPickerField.js.map +1 -1
- package/dist/esm/CommandForm/fields/DropdownField.d.ts +1 -0
- package/dist/esm/CommandForm/fields/DropdownField.d.ts.map +1 -0
- package/dist/esm/CommandForm/fields/DropdownField.js.map +1 -1
- package/dist/esm/CommandForm/fields/InputTextField.d.ts +1 -0
- package/dist/esm/CommandForm/fields/InputTextField.d.ts.map +1 -0
- package/dist/esm/CommandForm/fields/InputTextField.js.map +1 -1
- package/dist/esm/CommandForm/fields/MultiSelectField.d.ts +1 -0
- package/dist/esm/CommandForm/fields/MultiSelectField.d.ts.map +1 -0
- package/dist/esm/CommandForm/fields/MultiSelectField.js.map +1 -1
- package/dist/esm/CommandForm/fields/NumberField.d.ts +1 -0
- package/dist/esm/CommandForm/fields/NumberField.d.ts.map +1 -0
- package/dist/esm/CommandForm/fields/NumberField.js.map +1 -1
- package/dist/esm/CommandForm/fields/NumberInputField.d.ts +1 -0
- package/dist/esm/CommandForm/fields/NumberInputField.d.ts.map +1 -0
- package/dist/esm/CommandForm/fields/NumberInputField.js.map +1 -1
- package/dist/esm/CommandForm/fields/PasswordField.d.ts +1 -0
- package/dist/esm/CommandForm/fields/PasswordField.d.ts.map +1 -0
- package/dist/esm/CommandForm/fields/PasswordField.js.map +1 -1
- package/dist/esm/CommandForm/fields/RadioButtonField.d.ts +1 -0
- package/dist/esm/CommandForm/fields/RadioButtonField.d.ts.map +1 -0
- package/dist/esm/CommandForm/fields/RadioButtonField.js.map +1 -1
- package/dist/esm/CommandForm/fields/RadioGroupField.d.ts +1 -0
- package/dist/esm/CommandForm/fields/RadioGroupField.d.ts.map +1 -0
- package/dist/esm/CommandForm/fields/RadioGroupField.js.map +1 -1
- package/dist/esm/CommandForm/fields/RatingField.d.ts +1 -0
- package/dist/esm/CommandForm/fields/RatingField.d.ts.map +1 -0
- package/dist/esm/CommandForm/fields/RatingField.js.map +1 -1
- package/dist/esm/CommandForm/fields/SliderField.d.ts +1 -0
- package/dist/esm/CommandForm/fields/SliderField.d.ts.map +1 -0
- package/dist/esm/CommandForm/fields/SliderField.js.map +1 -1
- package/dist/esm/CommandForm/fields/TextAreaField.d.ts +1 -0
- package/dist/esm/CommandForm/fields/TextAreaField.d.ts.map +1 -0
- package/dist/esm/CommandForm/fields/TextAreaField.js.map +1 -1
- package/dist/esm/CommandForm/fields/ToggleSwitchField.d.ts +1 -0
- package/dist/esm/CommandForm/fields/ToggleSwitchField.d.ts.map +1 -0
- package/dist/esm/CommandForm/fields/ToggleSwitchField.js.map +1 -1
- package/dist/esm/CommandForm/fields/chipValues.js.map +1 -1
- package/dist/esm/CommandForm/fields/fieldAccessibility.js.map +1 -1
- package/dist/esm/CommandForm/fields/fieldValueFromEvent.js.map +1 -1
- package/dist/esm/CommandForm/fields/index.d.ts +1 -0
- package/dist/esm/CommandForm/fields/index.d.ts.map +1 -0
- package/dist/esm/CommandForm/fields/index.js +1 -0
- package/dist/esm/CommandForm/fields/index.js.map +1 -0
- package/dist/esm/CommandForm/index.d.ts +1 -0
- package/dist/esm/CommandForm/index.d.ts.map +1 -0
- package/dist/esm/Common/ActionMenubar.d.ts +1 -0
- package/dist/esm/Common/ActionMenubar.d.ts.map +1 -0
- package/dist/esm/Common/ActionMenubar.js.map +1 -1
- package/dist/esm/Common/Breadcrumbs.js.map +1 -1
- package/dist/esm/Common/Button.d.ts +1 -0
- package/dist/esm/Common/Button.d.ts.map +1 -0
- package/dist/esm/Common/Button.js.map +1 -1
- package/dist/esm/Common/ButtonImplementation.d.ts +1 -0
- package/dist/esm/Common/ButtonImplementation.d.ts.map +1 -0
- package/dist/esm/Common/ButtonImplementation.js.map +1 -1
- package/dist/esm/Common/Checkbox.d.ts +1 -0
- package/dist/esm/Common/Checkbox.d.ts.map +1 -0
- package/dist/esm/Common/Checkbox.js.map +1 -1
- package/dist/esm/Common/CheckboxImplementation.d.ts +1 -0
- package/dist/esm/Common/CheckboxImplementation.d.ts.map +1 -0
- package/dist/esm/Common/CheckboxImplementation.js.map +1 -1
- package/dist/esm/Common/ComboBox.js.map +1 -1
- package/dist/esm/Common/CratisComponentsProvider.d.ts +1 -0
- package/dist/esm/Common/CratisComponentsProvider.d.ts.map +1 -0
- package/dist/esm/Common/CratisComponentsProvider.js.map +1 -1
- package/dist/esm/Common/DatePickerInput.d.ts +1 -0
- package/dist/esm/Common/DatePickerInput.d.ts.map +1 -0
- package/dist/esm/Common/DatePickerInput.js.map +1 -1
- package/dist/esm/Common/DatePickerInputImplementation.d.ts +1 -0
- package/dist/esm/Common/DatePickerInputImplementation.d.ts.map +1 -0
- package/dist/esm/Common/DatePickerInputImplementation.js.map +1 -1
- package/dist/esm/Common/ErrorBoundary.js.map +1 -1
- package/dist/esm/Common/FormElement.js.map +1 -1
- package/dist/esm/Common/Icon.js.map +1 -1
- package/dist/esm/Common/IconButton.d.ts +1 -0
- package/dist/esm/Common/IconButton.d.ts.map +1 -0
- package/dist/esm/Common/IconButton.js.map +1 -1
- package/dist/esm/Common/IconButtonImplementation.d.ts +1 -0
- package/dist/esm/Common/IconButtonImplementation.d.ts.map +1 -0
- package/dist/esm/Common/IconButtonImplementation.js.map +1 -1
- package/dist/esm/Common/NumberInput.d.ts +1 -0
- package/dist/esm/Common/NumberInput.d.ts.map +1 -0
- package/dist/esm/Common/NumberInput.js.map +1 -1
- package/dist/esm/Common/NumberInputCommitReason.js.map +1 -1
- package/dist/esm/Common/NumberInputPartAttributes.js.map +1 -1
- package/dist/esm/Common/Page.js.map +1 -1
- package/dist/esm/Common/Radio.d.ts +1 -0
- package/dist/esm/Common/Radio.d.ts.map +1 -0
- package/dist/esm/Common/Radio.js.map +1 -1
- package/dist/esm/Common/RadioImplementation.d.ts +1 -0
- package/dist/esm/Common/RadioImplementation.d.ts.map +1 -0
- package/dist/esm/Common/RadioImplementation.js.map +1 -1
- package/dist/esm/Common/Surface.js.map +1 -1
- package/dist/esm/Common/SurfaceImplementation.d.ts +1 -0
- package/dist/esm/Common/SurfaceImplementation.d.ts.map +1 -0
- package/dist/esm/Common/SurfaceImplementation.js.map +1 -1
- package/dist/esm/Common/Switch.d.ts +1 -0
- package/dist/esm/Common/Switch.d.ts.map +1 -0
- package/dist/esm/Common/Switch.js.map +1 -1
- package/dist/esm/Common/SwitchImplementation.d.ts +1 -0
- package/dist/esm/Common/SwitchImplementation.d.ts.map +1 -0
- package/dist/esm/Common/SwitchImplementation.js.map +1 -1
- package/dist/esm/Common/Tabs.js.map +1 -1
- package/dist/esm/Common/TagGroup.js.map +1 -1
- package/dist/esm/Common/TextArea.d.ts +1 -0
- package/dist/esm/Common/TextArea.d.ts.map +1 -0
- package/dist/esm/Common/TextArea.js.map +1 -1
- package/dist/esm/Common/TextAreaImplementation.d.ts +1 -0
- package/dist/esm/Common/TextAreaImplementation.d.ts.map +1 -0
- package/dist/esm/Common/TextAreaImplementation.js.map +1 -1
- package/dist/esm/Common/TextInput.d.ts +1 -0
- package/dist/esm/Common/TextInput.d.ts.map +1 -0
- package/dist/esm/Common/TextInput.js.map +1 -1
- package/dist/esm/Common/TextInputImplementation.d.ts +1 -0
- package/dist/esm/Common/TextInputImplementation.d.ts.map +1 -0
- package/dist/esm/Common/TextInputImplementation.js.map +1 -1
- package/dist/esm/Common/ToggleGroup.js.map +1 -1
- package/dist/esm/Common/ToolbarFocusMode.js.map +1 -1
- package/dist/esm/Common/Tooltip.js.map +1 -1
- package/dist/esm/Common/TooltipImplementation.d.ts +1 -0
- package/dist/esm/Common/TooltipImplementation.d.ts.map +1 -0
- package/dist/esm/Common/TooltipImplementation.js.map +1 -1
- package/dist/esm/Common/index.d.ts +1 -0
- package/dist/esm/Common/index.d.ts.map +1 -0
- package/dist/esm/Common/messaging/useOptionalMessenger.js.map +1 -1
- package/dist/esm/Common/normalizeIconClass.js.map +1 -1
- package/dist/esm/Common/reactAriaProps.js.map +1 -1
- package/dist/esm/Common/useNativeCheckedState.js.map +1 -1
- package/dist/esm/Common/useToolbarKeyboardNavigation.d.ts +1 -0
- package/dist/esm/Common/useToolbarKeyboardNavigation.d.ts.map +1 -0
- package/dist/esm/Common/useToolbarKeyboardNavigation.js.map +1 -1
- package/dist/esm/DataPage/DataPage.d.ts +1 -0
- package/dist/esm/DataPage/DataPage.d.ts.map +1 -0
- package/dist/esm/DataPage/DataPage.js.map +1 -1
- package/dist/esm/DataPage/DataPageLayout.js.map +1 -1
- package/dist/esm/DataPage/index.d.ts +1 -0
- package/dist/esm/DataPage/index.d.ts.map +1 -0
- package/dist/esm/DataTables/Column.d.ts +1 -0
- package/dist/esm/DataTables/Column.d.ts.map +1 -0
- package/dist/esm/DataTables/Column.js.map +1 -1
- package/dist/esm/DataTables/ColumnFilterMenu.d.ts +1 -0
- package/dist/esm/DataTables/ColumnFilterMenu.d.ts.map +1 -0
- package/dist/esm/DataTables/ColumnFilterMenu.js.map +1 -1
- package/dist/esm/DataTables/DataTableCore.d.ts +1 -0
- package/dist/esm/DataTables/DataTableCore.d.ts.map +1 -0
- package/dist/esm/DataTables/DataTableCore.js.map +1 -1
- package/dist/esm/DataTables/DataTableFilterMatcherRegistry.d.ts +1 -0
- package/dist/esm/DataTables/DataTableFilterMatcherRegistry.d.ts.map +1 -0
- package/dist/esm/DataTables/DataTableFilterMatcherRegistry.js.map +1 -1
- package/dist/esm/DataTables/DataTableFilterMeta.js.map +1 -1
- package/dist/esm/DataTables/DataTableForObservableQuery.d.ts +1 -0
- package/dist/esm/DataTables/DataTableForObservableQuery.d.ts.map +1 -0
- package/dist/esm/DataTables/DataTableForObservableQuery.js.map +1 -1
- package/dist/esm/DataTables/DataTableForQuery.d.ts +1 -0
- package/dist/esm/DataTables/DataTableForQuery.d.ts.map +1 -0
- package/dist/esm/DataTables/DataTableForQuery.js.map +1 -1
- package/dist/esm/DataTables/DataTableSelectionChangeEvent.js.map +1 -1
- package/dist/esm/DataTables/DataTableStatus.js.map +1 -1
- package/dist/esm/DataTables/TablePaginator.d.ts +1 -0
- package/dist/esm/DataTables/TablePaginator.d.ts.map +1 -0
- package/dist/esm/DataTables/TablePaginator.js.map +1 -1
- package/dist/esm/DataTables/TablePaginatorImplementation.d.ts +1 -0
- package/dist/esm/DataTables/TablePaginatorImplementation.d.ts.map +1 -0
- package/dist/esm/DataTables/TablePaginatorImplementation.js.map +1 -1
- package/dist/esm/DataTables/index.d.ts +1 -0
- package/dist/esm/DataTables/index.d.ts.map +1 -0
- package/dist/esm/DataTables/paginatorRange.js.map +1 -1
- package/dist/esm/DataTables/resolveDataTableStatus.d.ts +1 -0
- package/dist/esm/DataTables/resolveDataTableStatus.d.ts.map +1 -0
- package/dist/esm/DataTables/resolveDataTableStatus.js.map +1 -1
- package/dist/esm/DataTables/selectionKeys.js.map +1 -1
- package/dist/esm/Dialogs/BusyIndicatorDialog.js.map +1 -1
- package/dist/esm/Dialogs/ConfirmationDialog.js.map +1 -1
- package/dist/esm/Dialogs/Dialog.d.ts +1 -0
- package/dist/esm/Dialogs/Dialog.d.ts.map +1 -0
- package/dist/esm/Dialogs/Dialog.js.map +1 -1
- package/dist/esm/Dialogs/DialogImplementation.d.ts +1 -0
- package/dist/esm/Dialogs/DialogImplementation.d.ts.map +1 -0
- package/dist/esm/Dialogs/DialogImplementation.js.map +1 -1
- package/dist/esm/Dialogs/DialogInitialFocus.js.map +1 -1
- package/dist/esm/Dialogs/index.d.ts +1 -0
- package/dist/esm/Dialogs/index.d.ts.map +1 -0
- package/dist/esm/Display/Avatar.js.map +1 -1
- package/dist/esm/Display/Badge.js.map +1 -1
- package/dist/esm/Display/Chip.js.map +1 -1
- package/dist/esm/Display/Message.js.map +1 -1
- package/dist/esm/Display/ProgressBar.js.map +1 -1
- package/dist/esm/Display/ProgressBarImplementation.d.ts +1 -0
- package/dist/esm/Display/ProgressBarImplementation.d.ts.map +1 -0
- package/dist/esm/Display/ProgressBarImplementation.js.map +1 -1
- package/dist/esm/Display/ProgressSpinner.js.map +1 -1
- package/dist/esm/Display/Skeleton.js.map +1 -1
- package/dist/esm/Display/Tag.js.map +1 -1
- package/dist/esm/Display/index.d.ts +1 -0
- package/dist/esm/Display/index.d.ts.map +1 -0
- package/dist/esm/Dropdown/Dropdown.d.ts +1 -0
- package/dist/esm/Dropdown/Dropdown.d.ts.map +1 -0
- package/dist/esm/Dropdown/Dropdown.js.map +1 -1
- package/dist/esm/Dropdown/DropdownImplementation.d.ts +1 -0
- package/dist/esm/Dropdown/DropdownImplementation.d.ts.map +1 -0
- package/dist/esm/Dropdown/DropdownImplementation.js.map +1 -1
- package/dist/esm/Dropdown/index.d.ts +1 -0
- package/dist/esm/Dropdown/index.d.ts.map +1 -0
- package/dist/esm/Dropdown/observeLabelAssociations.js.map +1 -1
- package/dist/esm/Dropdown/useExternalLabel.js.map +1 -1
- package/dist/esm/Filter/CheckboxListFilter.d.ts +1 -0
- package/dist/esm/Filter/CheckboxListFilter.d.ts.map +1 -0
- package/dist/esm/Filter/CheckboxListFilter.js.map +1 -1
- package/dist/esm/Filter/FilterEditor.d.ts +1 -0
- package/dist/esm/Filter/FilterEditor.d.ts.map +1 -0
- package/dist/esm/Filter/FilterEditor.js.map +1 -1
- package/dist/esm/Filter/FilterEditorProps.d.ts +1 -0
- package/dist/esm/Filter/FilterEditorProps.d.ts.map +1 -0
- package/dist/esm/Filter/FilterEditorProps.js.map +1 -1
- package/dist/esm/Filter/FilterPanel.d.ts +1 -0
- package/dist/esm/Filter/FilterPanel.d.ts.map +1 -0
- package/dist/esm/Filter/FilterPanel.js.map +1 -1
- package/dist/esm/Filter/RangeHistogramFilter.d.ts +1 -0
- package/dist/esm/Filter/RangeHistogramFilter.d.ts.map +1 -0
- package/dist/esm/Filter/RangeHistogramFilter.js.map +1 -1
- package/dist/esm/Filter/index.d.ts +1 -0
- package/dist/esm/Filter/index.d.ts.map +1 -0
- package/dist/esm/Filter/types.js.map +1 -1
- package/dist/esm/Filter/useFilterState.d.ts +1 -0
- package/dist/esm/Filter/useFilterState.d.ts.map +1 -0
- package/dist/esm/Filter/useFilterState.js.map +1 -1
- package/dist/esm/Filter/useOptionListOverflow.js.map +1 -1
- package/dist/esm/Filter/utils.d.ts +1 -0
- package/dist/esm/Filter/utils.d.ts.map +1 -0
- package/dist/esm/Filter/utils.js.map +1 -1
- package/dist/esm/Notifications/Toaster.js.map +1 -1
- package/dist/esm/Notifications/index.d.ts +1 -0
- package/dist/esm/Notifications/index.d.ts.map +1 -0
- package/dist/esm/Notifications/toast.js.map +1 -1
- package/dist/esm/Notifications/toastCommandResult.js.map +1 -1
- package/dist/esm/ObjectContentEditor/ObjectContentEditor.d.ts +1 -0
- package/dist/esm/ObjectContentEditor/ObjectContentEditor.d.ts.map +1 -0
- package/dist/esm/ObjectContentEditor/ObjectContentEditor.js.map +1 -1
- package/dist/esm/ObjectContentEditor/index.d.ts +1 -0
- package/dist/esm/ObjectContentEditor/index.d.ts.map +1 -0
- package/dist/esm/ObjectContentEditor/objectHelpers.d.ts +1 -0
- package/dist/esm/ObjectContentEditor/objectHelpers.d.ts.map +1 -0
- package/dist/esm/ObjectContentEditor/objectHelpers.js.map +1 -1
- package/dist/esm/ObjectNavigationalBar/ObjectNavigationalBar.js.map +1 -1
- package/dist/esm/ObjectNavigationalBar/breadcrumbHelpers.js.map +1 -1
- package/dist/esm/ObjectNavigationalBar/index.d.ts +1 -0
- package/dist/esm/ObjectNavigationalBar/index.d.ts.map +1 -0
- package/dist/esm/PivotViewer/PivotViewer.d.ts +1 -0
- package/dist/esm/PivotViewer/PivotViewer.d.ts.map +1 -0
- package/dist/esm/PivotViewer/PivotViewer.js.map +1 -1
- package/dist/esm/PivotViewer/PivotViewerLabels.js.map +1 -1
- package/dist/esm/PivotViewer/components/AxisLabels.d.ts +1 -0
- package/dist/esm/PivotViewer/components/AxisLabels.d.ts.map +1 -0
- package/dist/esm/PivotViewer/components/AxisLabels.js.map +1 -1
- package/dist/esm/PivotViewer/components/DetailPanel.js.map +1 -1
- package/dist/esm/PivotViewer/components/FilterPanel.d.ts +1 -0
- package/dist/esm/PivotViewer/components/FilterPanel.d.ts.map +1 -0
- package/dist/esm/PivotViewer/components/FilterPanel.js.map +1 -1
- package/dist/esm/PivotViewer/components/FilterPanelContainer.d.ts +1 -0
- package/dist/esm/PivotViewer/components/FilterPanelContainer.d.ts.map +1 -0
- package/dist/esm/PivotViewer/components/FilterPanelContainer.js.map +1 -1
- package/dist/esm/PivotViewer/components/PivotCanvas.d.ts +1 -0
- package/dist/esm/PivotViewer/components/PivotCanvas.d.ts.map +1 -0
- package/dist/esm/PivotViewer/components/PivotCanvas.js.map +1 -1
- package/dist/esm/PivotViewer/components/PivotViewerMain.d.ts +1 -0
- package/dist/esm/PivotViewer/components/PivotViewerMain.d.ts.map +1 -0
- package/dist/esm/PivotViewer/components/PivotViewerMain.js.map +1 -1
- package/dist/esm/PivotViewer/components/RangeHistogramFilter.d.ts +1 -0
- package/dist/esm/PivotViewer/components/RangeHistogramFilter.d.ts.map +1 -0
- package/dist/esm/PivotViewer/components/RangeHistogramFilter.js.map +1 -1
- package/dist/esm/PivotViewer/components/Spinner.js.map +1 -1
- package/dist/esm/PivotViewer/components/Toolbar.d.ts +1 -0
- package/dist/esm/PivotViewer/components/Toolbar.d.ts.map +1 -0
- package/dist/esm/PivotViewer/components/Toolbar.js.map +1 -1
- package/dist/esm/PivotViewer/components/ToolbarContainer.d.ts +1 -0
- package/dist/esm/PivotViewer/components/ToolbarContainer.d.ts.map +1 -0
- package/dist/esm/PivotViewer/components/ToolbarContainer.js.map +1 -1
- package/dist/esm/PivotViewer/components/index.d.ts +1 -0
- package/dist/esm/PivotViewer/components/index.d.ts.map +1 -0
- package/dist/esm/PivotViewer/components/index.js +1 -0
- package/dist/esm/PivotViewer/components/index.js.map +1 -0
- package/dist/esm/PivotViewer/components/pivot/animation.d.ts +1 -0
- package/dist/esm/PivotViewer/components/pivot/animation.d.ts.map +1 -0
- package/dist/esm/PivotViewer/components/pivot/animation.js.map +1 -1
- package/dist/esm/PivotViewer/components/pivot/colorResolver.d.ts +1 -0
- package/dist/esm/PivotViewer/components/pivot/colorResolver.d.ts.map +1 -0
- package/dist/esm/PivotViewer/components/pivot/colorResolver.js.map +1 -1
- package/dist/esm/PivotViewer/components/pivot/constants.js.map +1 -1
- package/dist/esm/PivotViewer/components/pivot/ellipsize.js.map +1 -1
- package/dist/esm/PivotViewer/components/pivot/groups.d.ts +1 -0
- package/dist/esm/PivotViewer/components/pivot/groups.d.ts.map +1 -0
- package/dist/esm/PivotViewer/components/pivot/groups.js.map +1 -1
- package/dist/esm/PivotViewer/components/pivot/sprites.d.ts +1 -0
- package/dist/esm/PivotViewer/components/pivot/sprites.d.ts.map +1 -0
- package/dist/esm/PivotViewer/components/pivot/sprites.js.map +1 -1
- package/dist/esm/PivotViewer/components/pivot/syncScrollSprites.d.ts +1 -0
- package/dist/esm/PivotViewer/components/pivot/syncScrollSprites.d.ts.map +1 -0
- package/dist/esm/PivotViewer/components/pivot/syncScrollSprites.js.map +1 -1
- package/dist/esm/PivotViewer/components/pivot/visibility.d.ts +1 -0
- package/dist/esm/PivotViewer/components/pivot/visibility.d.ts.map +1 -0
- package/dist/esm/PivotViewer/components/pivot/visibility.js.map +1 -1
- package/dist/esm/PivotViewer/constants.js.map +1 -1
- package/dist/esm/PivotViewer/engine/layout.d.ts +1 -0
- package/dist/esm/PivotViewer/engine/layout.d.ts.map +1 -0
- package/dist/esm/PivotViewer/engine/layout.js.map +1 -1
- package/dist/esm/PivotViewer/engine/pivot.worker.js +1 -0
- package/dist/esm/PivotViewer/engine/pivot.worker.js.map +1 -0
- package/dist/esm/PivotViewer/engine/requestCorrelator.js.map +1 -1
- package/dist/esm/PivotViewer/engine/store.d.ts +1 -0
- package/dist/esm/PivotViewer/engine/store.d.ts.map +1 -0
- package/dist/esm/PivotViewer/engine/store.js.map +1 -1
- package/dist/esm/PivotViewer/engine/types.js.map +1 -1
- package/dist/esm/PivotViewer/hooks/index.d.ts +1 -0
- package/dist/esm/PivotViewer/hooks/index.d.ts.map +1 -0
- package/dist/esm/PivotViewer/hooks/index.js +1 -0
- package/dist/esm/PivotViewer/hooks/index.js.map +1 -0
- package/dist/esm/PivotViewer/hooks/useAnimationModeTracking.js.map +1 -1
- package/dist/esm/PivotViewer/hooks/useCardSelection.d.ts +1 -0
- package/dist/esm/PivotViewer/hooks/useCardSelection.d.ts.map +1 -0
- package/dist/esm/PivotViewer/hooks/useCardSelection.js.map +1 -1
- package/dist/esm/PivotViewer/hooks/useContainerDimensions.js.map +1 -1
- package/dist/esm/PivotViewer/hooks/useCurrentFilters.d.ts +1 -0
- package/dist/esm/PivotViewer/hooks/useCurrentFilters.d.ts.map +1 -0
- package/dist/esm/PivotViewer/hooks/useCurrentFilters.js.map +1 -1
- package/dist/esm/PivotViewer/hooks/useDetailPanelClose.d.ts +1 -0
- package/dist/esm/PivotViewer/hooks/useDetailPanelClose.d.ts.map +1 -0
- package/dist/esm/PivotViewer/hooks/useDetailPanelClose.js.map +1 -1
- package/dist/esm/PivotViewer/hooks/useDimensionState.d.ts +1 -0
- package/dist/esm/PivotViewer/hooks/useDimensionState.d.ts.map +1 -0
- package/dist/esm/PivotViewer/hooks/useDimensionState.js.map +1 -1
- package/dist/esm/PivotViewer/hooks/useFieldExtractors.d.ts +1 -0
- package/dist/esm/PivotViewer/hooks/useFieldExtractors.d.ts.map +1 -0
- package/dist/esm/PivotViewer/hooks/useFieldExtractors.js.map +1 -1
- package/dist/esm/PivotViewer/hooks/useFilterOptions.d.ts +1 -0
- package/dist/esm/PivotViewer/hooks/useFilterOptions.d.ts.map +1 -0
- package/dist/esm/PivotViewer/hooks/useFilterOptions.js.map +1 -1
- package/dist/esm/PivotViewer/hooks/useFilterPanelDrag.js.map +1 -1
- package/dist/esm/PivotViewer/hooks/useFilterState.d.ts +1 -0
- package/dist/esm/PivotViewer/hooks/useFilterState.d.ts.map +1 -0
- package/dist/esm/PivotViewer/hooks/useFilterState.js.map +1 -1
- package/dist/esm/PivotViewer/hooks/useFilteredData.d.ts +1 -0
- package/dist/esm/PivotViewer/hooks/useFilteredData.d.ts.map +1 -0
- package/dist/esm/PivotViewer/hooks/useFilteredData.js +1 -0
- package/dist/esm/PivotViewer/hooks/useFilteredData.js.map +1 -0
- package/dist/esm/PivotViewer/hooks/usePanning.js.map +1 -1
- package/dist/esm/PivotViewer/hooks/usePivotEngine.d.ts +1 -0
- package/dist/esm/PivotViewer/hooks/usePivotEngine.d.ts.map +1 -0
- package/dist/esm/PivotViewer/hooks/usePivotEngine.js.map +1 -1
- package/dist/esm/PivotViewer/hooks/useScrollSync.d.ts +1 -0
- package/dist/esm/PivotViewer/hooks/useScrollSync.d.ts.map +1 -0
- package/dist/esm/PivotViewer/hooks/useScrollSync.js.map +1 -1
- package/dist/esm/PivotViewer/hooks/useSelectedItem.js +1 -0
- package/dist/esm/PivotViewer/hooks/useSelectedItem.js.map +1 -0
- package/dist/esm/PivotViewer/hooks/useViewModeScrollHandling.d.ts +1 -0
- package/dist/esm/PivotViewer/hooks/useViewModeScrollHandling.d.ts.map +1 -0
- package/dist/esm/PivotViewer/hooks/useViewModeScrollHandling.js.map +1 -1
- package/dist/esm/PivotViewer/hooks/useWheelZoom.js.map +1 -1
- package/dist/esm/PivotViewer/hooks/useZoomScrollAnchor.js.map +1 -1
- package/dist/esm/PivotViewer/hooks/useZoomState.js.map +1 -1
- package/dist/esm/PivotViewer/index.d.ts +1 -0
- package/dist/esm/PivotViewer/index.d.ts.map +1 -0
- package/dist/esm/PivotViewer/types.d.ts +1 -0
- package/dist/esm/PivotViewer/types.d.ts.map +1 -0
- package/dist/esm/PivotViewer/types.js.map +1 -1
- package/dist/esm/PivotViewer/utils/animations.js.map +1 -1
- package/dist/esm/PivotViewer/utils/cardPosition.d.ts +1 -0
- package/dist/esm/PivotViewer/utils/cardPosition.d.ts.map +1 -0
- package/dist/esm/PivotViewer/utils/cardPosition.js.map +1 -1
- package/dist/esm/PivotViewer/utils/constants.js.map +1 -1
- package/dist/esm/PivotViewer/utils/idResolution.d.ts +1 -0
- package/dist/esm/PivotViewer/utils/idResolution.d.ts.map +1 -0
- package/dist/esm/PivotViewer/utils/idResolution.js.map +1 -1
- package/dist/esm/PivotViewer/utils/index.d.ts +1 -0
- package/dist/esm/PivotViewer/utils/index.d.ts.map +1 -0
- package/dist/esm/PivotViewer/utils/index.js +1 -0
- package/dist/esm/PivotViewer/utils/index.js.map +1 -0
- package/dist/esm/PivotViewer/utils/presentGrouping.d.ts +1 -0
- package/dist/esm/PivotViewer/utils/presentGrouping.d.ts.map +1 -0
- package/dist/esm/PivotViewer/utils/presentGrouping.js.map +1 -1
- package/dist/esm/PivotViewer/utils/search.d.ts +1 -0
- package/dist/esm/PivotViewer/utils/search.d.ts.map +1 -0
- package/dist/esm/PivotViewer/utils/search.js.map +1 -1
- package/dist/esm/PivotViewer/utils/selection.d.ts +1 -0
- package/dist/esm/PivotViewer/utils/selection.d.ts.map +1 -0
- package/dist/esm/PivotViewer/utils/selection.js.map +1 -1
- package/dist/esm/PivotViewer/utils/utils.d.ts +1 -0
- package/dist/esm/PivotViewer/utils/utils.d.ts.map +1 -0
- package/dist/esm/PivotViewer/utils/utils.js.map +1 -1
- package/dist/esm/QueryStatus/QueryStatus.js.map +1 -1
- package/dist/esm/QueryStatus/resolveQueryStatus.d.ts +1 -0
- package/dist/esm/QueryStatus/resolveQueryStatus.d.ts.map +1 -0
- package/dist/esm/QueryStatus/resolveQueryStatus.js.map +1 -1
- package/dist/esm/SchemaEditor/NameCell.d.ts +1 -0
- package/dist/esm/SchemaEditor/NameCell.d.ts.map +1 -0
- package/dist/esm/SchemaEditor/NameCell.js.map +1 -1
- package/dist/esm/SchemaEditor/SchemaEditor.d.ts +1 -0
- package/dist/esm/SchemaEditor/SchemaEditor.d.ts.map +1 -0
- package/dist/esm/SchemaEditor/SchemaEditor.js.map +1 -1
- package/dist/esm/SchemaEditor/TypeCell.d.ts +1 -0
- package/dist/esm/SchemaEditor/TypeCell.d.ts.map +1 -0
- package/dist/esm/SchemaEditor/TypeCell.js.map +1 -1
- package/dist/esm/SchemaEditor/index.d.ts +1 -0
- package/dist/esm/SchemaEditor/index.d.ts.map +1 -0
- package/dist/esm/SchemaEditor/schemaHelpers.d.ts +1 -0
- package/dist/esm/SchemaEditor/schemaHelpers.d.ts.map +1 -0
- package/dist/esm/SchemaEditor/schemaHelpers.js.map +1 -1
- package/dist/esm/TimeMachine/EventsView.d.ts +1 -0
- package/dist/esm/TimeMachine/EventsView.d.ts.map +1 -0
- package/dist/esm/TimeMachine/EventsView.js.map +1 -1
- package/dist/esm/TimeMachine/Properties.js.map +1 -1
- package/dist/esm/TimeMachine/ReadModelView.d.ts +1 -0
- package/dist/esm/TimeMachine/ReadModelView.d.ts.map +1 -0
- package/dist/esm/TimeMachine/ReadModelView.js.map +1 -1
- package/dist/esm/TimeMachine/TimeMachine.d.ts +1 -0
- package/dist/esm/TimeMachine/TimeMachine.d.ts.map +1 -0
- package/dist/esm/TimeMachine/TimeMachine.js.map +1 -1
- package/dist/esm/TimeMachine/TimeMachineLabels.js.map +1 -1
- package/dist/esm/TimeMachine/index.d.ts +1 -0
- package/dist/esm/TimeMachine/index.d.ts.map +1 -0
- package/dist/esm/TimeMachine/propertiesHelpers.js.map +1 -1
- package/dist/esm/TimeMachine/types.js.map +1 -1
- package/dist/esm/Toolbar/Toolbar.d.ts +1 -0
- package/dist/esm/Toolbar/Toolbar.d.ts.map +1 -0
- package/dist/esm/Toolbar/Toolbar.js.map +1 -1
- package/dist/esm/Toolbar/ToolbarButton.d.ts +1 -0
- package/dist/esm/Toolbar/ToolbarButton.d.ts.map +1 -0
- package/dist/esm/Toolbar/ToolbarButton.js.map +1 -1
- package/dist/esm/Toolbar/ToolbarContext.js.map +1 -1
- package/dist/esm/Toolbar/ToolbarDragContext.js.map +1 -1
- package/dist/esm/Toolbar/ToolbarFanOutItem.d.ts +1 -0
- package/dist/esm/Toolbar/ToolbarFanOutItem.d.ts.map +1 -0
- package/dist/esm/Toolbar/ToolbarFanOutItem.js.map +1 -1
- package/dist/esm/Toolbar/ToolbarFolder.d.ts +1 -0
- package/dist/esm/Toolbar/ToolbarFolder.d.ts.map +1 -0
- package/dist/esm/Toolbar/ToolbarFolder.js.map +1 -1
- package/dist/esm/Toolbar/ToolbarFolderContext.js.map +1 -1
- package/dist/esm/Toolbar/ToolbarGroup.js.map +1 -1
- package/dist/esm/Toolbar/ToolbarItemVisibilityContext.js.map +1 -1
- package/dist/esm/Toolbar/ToolbarLayout.js.map +1 -1
- package/dist/esm/Toolbar/ToolbarSection.js.map +1 -1
- package/dist/esm/Toolbar/ToolbarSeparator.js.map +1 -1
- package/dist/esm/Toolbar/ToolbarSlot.js.map +1 -1
- package/dist/esm/Toolbar/index.d.ts +1 -0
- package/dist/esm/Toolbar/index.d.ts.map +1 -0
- package/dist/esm/configuration/CratisComponentsContext.d.ts +1 -0
- package/dist/esm/configuration/CratisComponentsContext.d.ts.map +1 -0
- package/dist/esm/configuration/CratisComponentsContext.js.map +1 -1
- package/dist/esm/configuration/CratisComponentsDefaults.d.ts +1 -0
- package/dist/esm/configuration/CratisComponentsDefaults.d.ts.map +1 -0
- package/dist/esm/configuration/CratisComponentsDefaults.js.map +1 -1
- package/dist/esm/configuration/useCratisIcon.d.ts +1 -0
- package/dist/esm/configuration/useCratisIcon.d.ts.map +1 -0
- package/dist/esm/configuration/useCratisIcon.js.map +1 -1
- package/dist/esm/index.d.ts +1 -0
- package/dist/esm/index.d.ts.map +1 -0
- package/dist/esm/renderer/DialogStackContext.js.map +1 -1
- package/dist/esm/renderer/RendererContext.d.ts +1 -0
- package/dist/esm/renderer/RendererContext.d.ts.map +1 -0
- package/dist/esm/renderer/RendererContext.js.map +1 -1
- package/dist/esm/renderer/RendererScope.d.ts +1 -0
- package/dist/esm/renderer/RendererScope.d.ts.map +1 -0
- package/dist/esm/renderer/RendererScope.js.map +1 -1
- package/dist/esm/renderer/builtin/index.js.map +1 -1
- package/dist/esm/renderer/capabilities.js.map +1 -1
- package/dist/esm/renderer/coreSlots.d.ts +1 -0
- package/dist/esm/renderer/coreSlots.d.ts.map +1 -0
- package/dist/esm/renderer/coreSlots.js.map +1 -1
- package/dist/esm/renderer/dialogStack.js.map +1 -1
- package/dist/esm/renderer/errors.d.ts +1 -0
- package/dist/esm/renderer/errors.d.ts.map +1 -0
- package/dist/esm/renderer/errors.js.map +1 -1
- package/dist/esm/renderer/index.d.ts +1 -0
- package/dist/esm/renderer/index.d.ts.map +1 -0
- package/dist/esm/renderer/manifest.d.ts +1 -0
- package/dist/esm/renderer/manifest.d.ts.map +1 -0
- package/dist/esm/renderer/manifest.js.map +1 -1
- package/dist/esm/renderer/overlayEnvironment.js.map +1 -1
- package/dist/esm/renderer/presentation.d.ts +1 -0
- package/dist/esm/renderer/presentation.d.ts.map +1 -0
- package/dist/esm/renderer/presentation.js.map +1 -1
- package/dist/esm/renderer/renderSlot.js.map +1 -1
- package/dist/esm/renderer/resolve.d.ts +1 -0
- package/dist/esm/renderer/resolve.d.ts.map +1 -0
- package/dist/esm/renderer/resolve.js.map +1 -1
- package/dist/esm/renderer/slots.js.map +1 -1
- package/dist/esm/types/ChangeHandler.d.ts +1 -0
- package/dist/esm/types/ChangeHandler.d.ts.map +1 -0
- package/dist/esm/types/ChangeHandler.js.map +1 -1
- package/dist/esm/types/ChangeMeta.js.map +1 -1
- package/dist/esm/types/ExactPartKeys.js.map +1 -1
- package/dist/esm/types/JsonSchema.js.map +1 -1
- package/dist/esm/types/TypeFormat.js.map +1 -1
- package/dist/esm/types/index.d.ts +1 -0
- package/dist/esm/types/index.d.ts.map +1 -0
- package/dist/esm/types/parts.js.map +1 -1
- package/package.json +4 -3
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DataTableFilterMatcherRegistry.js","sources":["../../../DataTables/DataTableFilterMatcherRegistry.ts"],"sourcesContent":[
|
|
1
|
+
{"version":3,"file":"DataTableFilterMatcherRegistry.js","sources":["../../../DataTables/DataTableFilterMatcherRegistry.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 {\n DataTableFilterMatchMode,\n type DataTableCustomFilterMatchMode,\n type DataTableFilterMatcher,\n} from './DataTableFilterMeta';\n\ninterface DataTableFilterMatcherAdapter {\n register(name: string, matcher: DataTableFilterMatcher): void;\n unregister(name: string): void;\n}\n\ninterface RegisteredMatcher {\n matcher: DataTableFilterMatcher;\n owners: Set<symbol>;\n}\n\ninterface MatcherRegistryState {\n matchers: Map<string, RegisteredMatcher>;\n adapters: Set<DataTableFilterMatcherAdapter>;\n}\n\n/** Handle returned for one custom matcher registration. */\nexport interface DataTableFilterMatcherRegistration {\n /** The branded match mode name that was registered and can now be used in filter metadata. */\n matchMode: DataTableCustomFilterMatchMode;\n /**\n * Removes this custom matcher registration from the global registry. Safe\n * to call more than once. After the first call, the matcher is no longer\n * available and the match mode reverts to an unrecognized custom mode.\n */\n unregister(): void;\n}\n\nconst registryKey = Symbol.for('@cratis/components/data-table-filter-matchers/v2');\n// SAFETY: Symbol.for gives every loaded Components copy the same isolated registry slot.\nconst registryHost = globalThis as unknown as Record<\n symbol,\n MatcherRegistryState | undefined\n>;\nconst registry = (registryHost[registryKey] ??= {\n matchers: new Map<string, RegisteredMatcher>(),\n adapters: new Set<DataTableFilterMatcherAdapter>(),\n});\nconst builtInMatchModes = new Set<string>(Object.values(DataTableFilterMatchMode));\nconst customMatchModePattern = /^[A-Za-z][A-Za-z0-9._:-]*$/;\nconst forbiddenMatchModes = new Set(['__proto__', 'prototype', 'constructor']);\n\n/**\n * Registers a process-wide custom matcher through the Cratis filter vocabulary.\n * Reusing a name is allowed only with the same matcher function.\n */\nexport const registerDataTableFilterMatcher = (\n name: string,\n matcher: DataTableFilterMatcher,\n): DataTableFilterMatcherRegistration => {\n if (!customMatchModePattern.test(name) || forbiddenMatchModes.has(name)) {\n throw new Error(\n 'A custom data-table filter match mode must start with a letter and contain only letters, numbers, dots, colons, underscores, or hyphens.',\n );\n }\n\n if (builtInMatchModes.has(name)) {\n throw new Error(\n `'${name}' is a built-in data-table filter match mode and cannot be replaced.`,\n );\n }\n\n const existing = registry.matchers.get(name);\n if (existing && existing.matcher !== matcher) {\n throw new Error(\n `A different data-table filter matcher is already registered as '${name}'.`,\n );\n }\n\n const owner = Symbol(name);\n const registered = existing ?? { matcher, owners: new Set<symbol>() };\n registered.owners.add(owner);\n registry.matchers.set(name, registered);\n if (!existing) {\n registry.adapters.forEach((current) => current.register(name, matcher));\n }\n\n // SAFETY: The branded value is returned only with a live registration handle.\n const matchMode = name as DataTableCustomFilterMatchMode;\n let active = true;\n const unregister = () => {\n if (!active) return;\n active = false;\n\n const current = registry.matchers.get(name);\n if (!current || current.matcher !== matcher) return;\n current.owners.delete(owner);\n if (current.owners.size > 0) return;\n\n registry.matchers.delete(name);\n registry.adapters.forEach((currentAdapter) => currentAdapter.unregister(name));\n };\n\n return { matchMode, unregister };\n};\n\n/** Resolves a custom matcher registered for the given name. */\nexport const resolveDataTableFilterMatcher = (\n name: string,\n): DataTableFilterMatcher | undefined => registry.matchers.get(name)?.matcher;\n\n/** Removes a custom matcher registration. Safe to call more than once. */\nexport const unregisterDataTableFilterMatcher = (\n registration: DataTableFilterMatcherRegistration,\n): void => registration.unregister();\n\n/** Connects the active rendering adapter to the Cratis-owned matcher registry. */\nexport const attachDataTableFilterMatcherAdapter = (\n next: DataTableFilterMatcherAdapter,\n): void => {\n const alreadyAttached = Array.from(registry.adapters).some(\n (current) =>\n current.register === next.register && current.unregister === next.unregister,\n );\n if (alreadyAttached) return;\n\n registry.adapters.add(next);\n registry.matchers.forEach((entry, name) => next.register(name, entry.matcher));\n};\n"],"names":[],"mappings":";;AAoCA,MAAM,WAAW,GAAG,MAAM,CAAC,GAAG,CAAC,kDAAkD,CAAC;AAElF,MAAM,YAAY,GAAG,UAGpB;AACD,MAAM,QAAQ,IAAI,YAAY,CAAC,WAAW,CAAC,KAAK;IAC5C,QAAQ,EAAE,IAAI,GAAG,EAA6B;IAC9C,QAAQ,EAAE,IAAI,GAAG,EAAiC;AACrD,CAAA,CAAC;AACF,MAAM,iBAAiB,GAAG,IAAI,GAAG,CAAS,MAAM,CAAC,MAAM,CAAC,wBAAwB,CAAC,CAAC;AAClF,MAAM,sBAAsB,GAAG,4BAA4B;AAC3D,MAAM,mBAAmB,GAAG,IAAI,GAAG,CAAC,CAAC,WAAW,EAAE,WAAW,EAAE,aAAa,CAAC,CAAC;MAMjE,8BAA8B,GAAG,CAC1C,IAAY,EACZ,OAA+B,KACK;AACpC,IAAA,IAAI,CAAC,sBAAsB,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,mBAAmB,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE;AACrE,QAAA,MAAM,IAAI,KAAK,CACX,0IAA0I,CAC7I;IACL;AAEA,IAAA,IAAI,iBAAiB,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE;AAC7B,QAAA,MAAM,IAAI,KAAK,CACX,IAAI,IAAI,CAAA,oEAAA,CAAsE,CACjF;IACL;IAEA,MAAM,QAAQ,GAAG,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC;IAC5C,IAAI,QAAQ,IAAI,QAAQ,CAAC,OAAO,KAAK,OAAO,EAAE;AAC1C,QAAA,MAAM,IAAI,KAAK,CACX,mEAAmE,IAAI,CAAA,EAAA,CAAI,CAC9E;IACL;AAEA,IAAA,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC;AAC1B,IAAA,MAAM,UAAU,GAAG,QAAQ,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,GAAG,EAAU,EAAE;AACrE,IAAA,UAAU,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC;IAC5B,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,EAAE,UAAU,CAAC;IACvC,IAAI,CAAC,QAAQ,EAAE;AACX,QAAA,QAAQ,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,OAAO,KAAK,OAAO,CAAC,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IAC3E;IAGA,MAAM,SAAS,GAAG,IAAsC;IACxD,IAAI,MAAM,GAAG,IAAI;IACjB,MAAM,UAAU,GAAG,MAAK;AACpB,QAAA,IAAI,CAAC,MAAM;YAAE;QACb,MAAM,GAAG,KAAK;QAEd,MAAM,OAAO,GAAG,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC;AAC3C,QAAA,IAAI,CAAC,OAAO,IAAI,OAAO,CAAC,OAAO,KAAK,OAAO;YAAE;AAC7C,QAAA,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC;AAC5B,QAAA,IAAI,OAAO,CAAC,MAAM,CAAC,IAAI,GAAG,CAAC;YAAE;AAE7B,QAAA,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC;AAC9B,QAAA,QAAQ,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,cAAc,KAAK,cAAc,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;AAClF,IAAA,CAAC;AAED,IAAA,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE;AACpC;AAGO,MAAM,6BAA6B,GAAG,CACzC,IAAY,KACyB,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE;AAG/D,MAAM,gCAAgC,GAAG,CAC5C,YAAgD,KACzC,YAAY,CAAC,UAAU;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DataTableFilterMeta.js","sources":["../../../DataTables/DataTableFilterMeta.ts"],"sourcesContent":[
|
|
1
|
+
{"version":3,"file":"DataTableFilterMeta.js","sources":["../../../DataTables/DataTableFilterMeta.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/** Built-in match modes supported by Cratis data tables. */\nexport const DataTableFilterMatchMode = {\n StartsWith: 'startsWith',\n Contains: 'contains',\n NotContains: 'notContains',\n EndsWith: 'endsWith',\n Equals: 'equals',\n NotEquals: 'notEquals',\n In: 'in',\n Between: 'between',\n LessThan: 'lt',\n LessThanOrEqual: 'lte',\n GreaterThan: 'gt',\n GreaterThanOrEqual: 'gte',\n DateIs: 'dateIs',\n DateIsNot: 'dateIsNot',\n DateBefore: 'dateBefore',\n DateAfter: 'dateAfter',\n} as const;\n\ndeclare const customFilterMatchMode: unique symbol;\n\n/** A custom match-mode name created through `registerDataTableFilterMatcher()`. */\nexport type DataTableCustomFilterMatchMode = string & {\n readonly [customFilterMatchMode]: true;\n};\n\n/**\n * Built-in or custom match-mode name.\n *\n * Arbitrary strings remain accepted only for source compatibility. Components does\n * not consult an external renderer's matcher registry, and an unregistered custom mode\n * deliberately matches nothing. Register new custom matchers with\n * `registerDataTableFilterMatcher()`, which returns a branded name.\n */\nexport type DataTableFilterMatchMode =\n | (typeof DataTableFilterMatchMode)[keyof typeof DataTableFilterMatchMode]\n | DataTableCustomFilterMatchMode\n | (string & Record<never, never>);\n\n/** Function used to match one row-field value against a filter value. */\nexport type DataTableFilterMatcher = (\n value: unknown,\n filter: unknown,\n locale?: string,\n) => boolean;\n\n/**\n * One field's filter constraint: the value to match and the Cratis-owned match mode.\n */\nexport interface DataTableFilterConstraint {\n /** The value to filter by. */\n value: unknown;\n /** How the value is compared. Defaults to {@link DataTableFilterMatchMode.Contains}. */\n matchMode?: DataTableFilterMatchMode;\n}\n\n/** Legacy multi-constraint entry accepted during the Components 3 migration. */\nexport interface DataTableOperatorFilterConstraint {\n /** Combines constraints with `or`; every other value uses `and` semantics. */\n operator?: string;\n /** Constraints applied to the same field value. */\n constraints: DataTableFilterConstraint[];\n}\n\n/** One simple or legacy operator-based filter entry. */\nexport type DataTableFilterEntry =\n DataTableFilterConstraint | DataTableOperatorFilterConstraint;\n\n/** Filter state for a Cratis data table, keyed by field name. */\nexport type DataTableFilterMeta = Record<string, DataTableFilterEntry>;\n"],"names":[],"mappings":"AAIO,MAAM,wBAAwB,GAAG;AACpC,IAAA,UAAU,EAAE,YAAY;AACxB,IAAA,QAAQ,EAAE,UAAU;AACpB,IAAA,WAAW,EAAE,aAAa;AAC1B,IAAA,QAAQ,EAAE,UAAU;AACpB,IAAA,MAAM,EAAE,QAAQ;AAChB,IAAA,SAAS,EAAE,WAAW;AACtB,IAAA,EAAE,EAAE,IAAI;AACR,IAAA,OAAO,EAAE,SAAS;AAClB,IAAA,QAAQ,EAAE,IAAI;AACd,IAAA,eAAe,EAAE,KAAK;AACtB,IAAA,WAAW,EAAE,IAAI;AACjB,IAAA,kBAAkB,EAAE,KAAK;AACzB,IAAA,MAAM,EAAE,QAAQ;AAChB,IAAA,SAAS,EAAE,WAAW;AACtB,IAAA,UAAU,EAAE,YAAY;AACxB,IAAA,SAAS,EAAE,WAAW;;;"}
|
|
@@ -134,3 +134,4 @@ export interface DataTableForObservableQueryProps<TQuery extends IObservableQuer
|
|
|
134
134
|
* @param props - {@link DataTableForObservableQueryProps}.
|
|
135
135
|
*/
|
|
136
136
|
export declare const DataTableForObservableQuery: <TQuery extends IObservableQueryFor<TDataType, TArguments> | IObservableQueryFor<TDataType[], TArguments>, TDataType extends object, TArguments extends object>(props: DataTableForObservableQueryProps<TQuery, TDataType, TArguments>) => import("react").JSX.Element;
|
|
137
|
+
//# sourceMappingURL=DataTableForObservableQuery.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DataTableForObservableQuery.d.ts","sourceRoot":"","sources":["../../../DataTables/DataTableForObservableQuery.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DataTableForObservableQuery.js","sources":["../../../DataTables/DataTableForObservableQuery.tsx"],"sourcesContent":[null],"names":["_jsxs","_jsx"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"DataTableForObservableQuery.js","sources":["../../../DataTables/DataTableForObservableQuery.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 type { DataTableParts } from './DataTableCore';\nimport type { Constructor } from '@cratis/fundamentals';\nimport { type IObservableQueryFor, Paging } from '@cratis/arc/queries';\nimport { useObservableQueryWithPaging } from '@cratis/arc.react/queries';\nimport { type ReactNode, useState, useRef, useEffect } from 'react';\nimport { DataTableCore } from './DataTableCore';\nimport {\n TablePaginator,\n type TablePaginatorParts,\n type TablePaginatorProps,\n} from './TablePaginator';\nimport type { DataTableFilterMeta } from './DataTableFilterMeta';\nimport type { DataTableSelectionChangeEvent } from './DataTableSelectionChangeEvent';\nimport { resolveDataTableStatus } from './resolveDataTableStatus';\n\n/**\n * Props for {@link DataTableForObservableQuery}.\n *\n * @typeParam TQuery - The query class implementing `IObservableQueryFor`.\n * @typeParam TDataType - The row type returned by the query.\n * @typeParam TArguments - The query's argument object type.\n */\nexport interface DataTableForObservableQueryProps<\n TQuery extends\n | IObservableQueryFor<TDataType, TArguments>\n | IObservableQueryFor<TDataType[], TArguments>,\n TDataType extends object,\n TArguments extends object,\n> {\n /**\n * Children to render — `<Column>` elements describing the visible columns.\n */\n children?: ReactNode;\n\n /**\n * The type of query to use\n */\n query: Constructor<TQuery>;\n\n /**\n * Optional arguments to pass to the query\n */\n queryArguments?: TArguments;\n\n /**\n * The message to show when there is no data\n */\n emptyMessage: string;\n\n /** Message shown while loading without rows. */\n loadingMessage?: ReactNode;\n /** Message shown when the query fails. */\n failureMessage?: ReactNode;\n /** Message shown when access is denied. */\n unauthorizedMessage?: ReactNode;\n\n /**\n * The key to use for the data\n */\n dataKey?: string | undefined;\n\n /**\n * The current selection.\n */\n selection?: TDataType | undefined | null;\n\n /**\n * Callback for when the selection changes\n */\n onSelectionChange?(event: DataTableSelectionChangeEvent<TDataType>): void;\n\n /**\n * The row selection mode. Defaults to `'single'`.\n */\n selectionMode?: 'single' | 'multiple';\n\n /**\n * The currently selected rows, for `selectionMode='multiple'`.\n */\n selectedItems?: TDataType[];\n\n /**\n * Callback for when a multiple selection changes, with the full selected set.\n */\n onSelectedItemsChange?(items: TDataType[]): void;\n\n /**\n * Fields to use for global filtering\n */\n globalFilterFields?: string[] | undefined;\n\n /** Placeholder for the loaded-page search input. */\n globalSearchPlaceholder?: string;\n\n /** Accessible name for the loaded-page search input. */\n globalSearchAriaLabel?: string;\n\n /**\n * Default filters to use\n */\n defaultFilters?: DataTableFilterMeta;\n\n /**\n * @deprecated Filtering is always applied to the currently loaded page.\n * This compatibility prop no longer toggles behavior and does not change\n * server-reported pagination totals. Retained for source compatibility only.\n */\n clientFiltering?: boolean;\n\n /**\n * Extra CSS class name forwarded to the underlying DataTable root.\n */\n className?: string;\n\n /** Cratis-owned per-part attributes applied to the underlying table. */\n pt?: DataTableParts;\n\n /**\n * @deprecated Cratis parts always merge. Remove this renderer-era option.\n */\n ptOptions?: object;\n\n /**\n * @deprecated Components always uses consumer-owned CSS. Customize through `pt` and CSS instead.\n */\n unstyled?: boolean;\n\n /** Extra CSS class name forwarded to the paginator. */\n paginatorClassName?: string;\n\n /** Cratis-owned attributes for paginator parts. */\n paginatorPt?: TablePaginatorParts;\n\n /**\n * @deprecated Cratis paginator parts always merge. Remove this renderer-era option.\n */\n paginatorPtOptions?: object;\n\n /** Accessible names for the paginator controls. Override any to localize. */\n paginatorAriaLabels?: TablePaginatorProps['ariaLabels'];\n}\n\nconst paging = new Paging(0, 20);\n\n/**\n * A paged data table bound to a real-time Cratis Arc observable query\n * (`IObservableQueryFor<TDataType, TArguments>`). Subscribes via\n * `useObservableQueryWithPaging`, so the table re-renders automatically as the\n * underlying read model changes server-side. Rows render through the semantic Cratis-owned\n * {@link DataTableCore} inside an internally-scrolling region that resizes to\n * fill its container.\n *\n * ## Children\n *\n * Children are Cratis `<Column>` elements describing the visible columns.\n *\n * ```tsx\n * import { DataTableForObservableQuery, Column } from '@cratis/components/DataTables';\n * import { AllTasks } from './AllTasks'; // observable proxy from C#\n *\n * <DataTableForObservableQuery query={AllTasks} emptyMessage=\"No tasks\">\n * <Column field=\"title\" header=\"Title\" sortable />\n * <Column field=\"assignee\" header=\"Assignee\" />\n * </DataTableForObservableQuery>\n * ```\n *\n * Use {@link DataTableForQuery} for one-shot snapshot queries. Use\n * {@link DataPage} for a higher-level layout that combines this table with\n * an action menubar, selection, and a details pane.\n *\n * @typeParam TQuery - The query class (proxy generated from C# `IObservableQueryFor`).\n * @typeParam TDataType - The row type returned by the query.\n * @typeParam TArguments - The query's argument object type.\n * @param props - {@link DataTableForObservableQueryProps}.\n */\nexport const DataTableForObservableQuery = <\n TQuery extends\n | IObservableQueryFor<TDataType, TArguments>\n | IObservableQueryFor<TDataType[], TArguments>,\n TDataType extends object,\n TArguments extends object,\n>(\n props: DataTableForObservableQueryProps<TQuery, TDataType, TArguments>,\n) => {\n // Type arguments are supplied explicitly, and the constructor is erased on the way in\n // (Cratis/Components#135). Two separate defects in `@cratis/arc.react` make the plain call\n // fail to type-check:\n //\n // 1. `useObservableQueryWithPaging<TDataType, TQuery extends IObservableQueryFor<TDataType>, …>`\n // gives `TDataType` no inference site — it appears only inside `TQuery`'s constraint — so it\n // silently falls back to `unknown` and `result` comes back as `QueryResultWithState<unknown>`.\n // 2. `ObservableQuerySubscription<T>` carries a `private _connection`, which makes it nominally\n // typed. `@cratis/arc.react` pins `@cratis/arc` to an exact version, so any consumer whose own\n // `@cratis/arc` differs by even a patch gets a second nested copy — two declarations of that\n // class, and TS2345 \"types have separate declarations of a private property\". Our peer range\n // allows multiple Arc versions, so we cannot assume a consumer's tree is deduped.\n //\n // Erasing the constructor type sidesteps the nominal comparison, and naming `TDataType`\n // explicitly recovers the row type this component is generic over — strictly better than the\n // `unknown` the inference would otherwise produce. Remove both once Arc returns an interface\n // from `subscribe()` and makes `TDataType` inferable.\n const [result, , setPage] = useObservableQueryWithPaging<\n TDataType,\n never,\n TArguments\n >(props.query as never, paging, props.queryArguments);\n const containerRef = useRef<HTMLDivElement>(null);\n const [tableHeight, setTableHeight] = useState<number>(600);\n const timeoutRef = useRef<ReturnType<typeof setTimeout> | undefined>(undefined);\n const totalItems = result.paging.totalItems;\n const pageCount = result.paging.totalPages;\n const showPaginator = totalItems > 0 && pageCount > 1;\n\n // SAFETY: Arc observable collection queries are row-typed while runtime data is the current row array.\n const rows = result.data as unknown as TDataType[];\n const status = resolveDataTableStatus(result);\n\n useEffect(() => {\n if (!containerRef.current) return;\n\n const resizeObserver = new ResizeObserver((entries) => {\n if (timeoutRef.current) {\n clearTimeout(timeoutRef.current);\n }\n\n timeoutRef.current = setTimeout(() => {\n for (const entry of entries) {\n const containerHeight = entry.contentRect.height;\n if (containerHeight > 0) {\n const paginatorHeight = showPaginator ? 56 : 0;\n const calculatedHeight = containerHeight - paginatorHeight - 2;\n const newHeight = Math.max(calculatedHeight, 200);\n\n setTableHeight((prevHeight) => {\n if (Math.abs(newHeight - prevHeight) > 5) {\n return newHeight;\n }\n return prevHeight;\n });\n }\n }\n }, 10);\n });\n\n resizeObserver.observe(containerRef.current);\n\n return () => {\n if (timeoutRef.current) {\n clearTimeout(timeoutRef.current);\n }\n resizeObserver.disconnect();\n };\n }, [showPaginator]);\n\n return (\n <div\n ref={containerRef}\n style={{\n display: 'flex',\n flexDirection: 'column',\n height: '100%',\n border: '1px solid var(--cratis-surface-border)',\n borderRadius: 'var(--cratis-border-radius)',\n overflow: 'hidden',\n }}\n >\n <div style={{ height: `${tableHeight}px`, overflow: 'hidden' }}>\n <DataTableCore<TDataType>\n data={rows}\n dataKey={props.dataKey}\n emptyMessage={props.emptyMessage}\n status={status}\n loadingMessage={props.loadingMessage}\n failureMessage={props.failureMessage}\n unauthorizedMessage={props.unauthorizedMessage}\n selectionMode={props.selectionMode ?? 'single'}\n selection={props.selection}\n onSelectionChange={props.onSelectionChange}\n selectedItems={props.selectedItems}\n onSelectedItemsChange={props.onSelectedItemsChange}\n globalFilterFields={props.globalFilterFields}\n globalSearchPlaceholder={props.globalSearchPlaceholder}\n globalSearchAriaLabel={props.globalSearchAriaLabel}\n defaultFilters={props.defaultFilters}\n scrollable\n scrollHeight='100%'\n className={props.className}\n style={{ minWidth: '100%' }}\n pt={props.pt}\n ptOptions={props.ptOptions}\n unstyled={props.unstyled}\n >\n {props.children}\n </DataTableCore>\n </div>\n\n {showPaginator && (\n <div\n style={{\n borderTop: '1px solid var(--cratis-surface-border)',\n flexShrink: 0,\n }}\n >\n <TablePaginator\n page={result.paging.page}\n pageCount={pageCount}\n onPageChange={setPage}\n totalItems={totalItems}\n pageSize={paging.pageSize}\n className={props.paginatorClassName}\n ariaLabels={props.paginatorAriaLabels}\n pt={props.paginatorPt}\n ptOptions={props.paginatorPtOptions}\n />\n </div>\n )}\n </div>\n );\n};\n"],"names":["_jsxs","_jsx"],"mappings":"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"}
|
|
@@ -147,3 +147,4 @@ export interface DataTableForQueryProps<TQuery extends IQueryFor<TDataType, TArg
|
|
|
147
147
|
* @param props - {@link DataTableForQueryProps}.
|
|
148
148
|
*/
|
|
149
149
|
export declare const DataTableForQuery: <TQuery extends IQueryFor<TDataType, TArguments> | IQueryFor<TDataType[], TArguments>, TDataType extends object, TArguments extends object>(props: DataTableForQueryProps<TQuery, TDataType, TArguments>) => import("react").JSX.Element;
|
|
150
|
+
//# sourceMappingURL=DataTableForQuery.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DataTableForQuery.d.ts","sourceRoot":"","sources":["../../../DataTables/DataTableForQuery.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DataTableForQuery.js","sources":["../../../DataTables/DataTableForQuery.tsx"],"sourcesContent":[null],"names":["_jsxs","_jsx"],"mappings":";;;;;;;AA+IA,MAAM,MAAM,GAAG,IAAI,MAAM,CAAC,CAAC,EAAE,EAAE,CAAC;AA8CzB,MAAM,iBAAiB,GAAG,CAK7B,KAA4D,KAC5D;IACA,MAAM,CAAC,MAAM,MAAM,OAAO,CAAC,GAAG,kBAAkB,CAC5C,KAAK,CAAC,KAAK,EACX,MAAM,EACN,KAAK,CAAC,cAAc,CACvB;AACD,IAAA,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,CAAC,UAAU;AAC3C,IAAA,MAAM,SAAS,GAAG,MAAM,CAAC,MAAM,CAAC,UAAU;AAG1C,IAAA,MAAM,IAAI,GAAG,MAAM,CAAC,IAA8B;AAClD,IAAA,MAAM,MAAM,GAAG,sBAAsB,CAAC,MAAM,CAAC;IAE7C,QACIA,IAAA,CAAA,KAAA,EAAA,EACI,KAAK,EAAE;AACH,YAAA,OAAO,EAAE,MAAM;AACf,YAAA,aAAa,EAAE,QAAQ;AACvB,YAAA,MAAM,EAAE,MAAM;AACd,YAAA,MAAM,EAAE,wCAAwC;AAChD,YAAA,YAAY,EAAE,6BAA6B;AAC3C,YAAA,QAAQ,EAAE,QAAQ;AACrB,SAAA,EAAA,QAAA,EAAA,CAQDC,aAAK,KAAK,EAAE,EAAE,IAAI,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAE,YACrDA,GAAA,CAAC,aAAa,EAAA,EACV,IAAI,EAAE,IAAI,EACV,OAAO,EAAE,KAAK,CAAC,OAAO,EACtB,YAAY,EAAE,KAAK,CAAC,YAAY,EAChC,MAAM,EAAE,MAAM,EACd,cAAc,EAAE,KAAK,CAAC,cAAc,EACpC,cAAc,EAAE,KAAK,CAAC,cAAc,EACpC,mBAAmB,EAAE,KAAK,CAAC,mBAAmB,EAC9C,aAAa,EAAE,KAAK,CAAC,aAAa,IAAI,QAAQ,EAC9C,SAAS,EAAE,KAAK,CAAC,SAAS,EAC1B,iBAAiB,EAAE,KAAK,CAAC,iBAAiB,EAC1C,aAAa,EAAE,KAAK,CAAC,aAAa,EAClC,qBAAqB,EAAE,KAAK,CAAC,qBAAqB,EAClD,kBAAkB,EAAE,KAAK,CAAC,kBAAkB,EAC5C,uBAAuB,EAAE,KAAK,CAAC,uBAAuB,EACtD,qBAAqB,EAAE,KAAK,CAAC,qBAAqB,EAClD,cAAc,EAAE,KAAK,CAAC,cAAc,EACpC,UAAU,EAAA,IAAA,EACV,YAAY,EAAC,MAAM,EACnB,SAAS,EAAE,KAAK,CAAC,SAAS,EAC1B,KAAK,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,EAC3B,EAAE,EAAE,KAAK,CAAC,EAAE,EACZ,SAAS,EAAE,KAAK,CAAC,SAAS,EAC1B,QAAQ,EAAE,KAAK,CAAC,QAAQ,YAEvB,KAAK,CAAC,QAAQ,EAAA,CACH,EAAA,CACd,EAEL,UAAU,GAAG,CAAC,IAAI,SAAS,GAAG,CAAC,KAC5BA,GAAA,CAAA,KAAA,EAAA,EACI,KAAK,EAAE;AACH,oBAAA,SAAS,EAAE,wCAAwC;AACnD,oBAAA,UAAU,EAAE,CAAC;iBAChB,EAAA,QAAA,EAEDA,GAAA,CAAC,cAAc,EAAA,EACX,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC,IAAI,EACxB,SAAS,EAAE,SAAS,EACpB,YAAY,EAAE,OAAO,EACrB,UAAU,EAAE,UAAU,EACtB,QAAQ,EAAE,MAAM,CAAC,QAAQ,EACzB,SAAS,EAAE,KAAK,CAAC,kBAAkB,EACnC,UAAU,EAAE,KAAK,CAAC,mBAAmB,EACrC,EAAE,EAAE,KAAK,CAAC,WAAW,EACrB,SAAS,EAAE,KAAK,CAAC,kBAAkB,EAAA,CACrC,EAAA,CACA,CACT,CAAA,EAAA,CACC;AAEd;;"}
|
|
1
|
+
{"version":3,"file":"DataTableForQuery.js","sources":["../../../DataTables/DataTableForQuery.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 type { DataTableParts } from './DataTableCore';\nimport type { Constructor } from '@cratis/fundamentals';\nimport { type IQueryFor, Paging } from '@cratis/arc/queries';\nimport { useQueryWithPaging } from '@cratis/arc.react/queries';\nimport type { ReactNode } from 'react';\nimport { DataTableCore } from './DataTableCore';\nimport {\n TablePaginator,\n type TablePaginatorParts,\n type TablePaginatorProps,\n} from './TablePaginator';\nimport type { DataTableFilterMeta } from './DataTableFilterMeta';\nimport type { DataTableSelectionChangeEvent } from './DataTableSelectionChangeEvent';\nimport { resolveDataTableStatus } from './resolveDataTableStatus';\n\n/**\n * Props for {@link DataTableForQuery}.\n *\n * @typeParam TQuery - The query class implementing `IQueryFor`.\n * @typeParam TDataType - The row type returned by the query.\n * @typeParam TArguments - The query's argument object type, or `object` if it takes none.\n */\nexport interface DataTableForQueryProps<\n TQuery extends IQueryFor<TDataType, TArguments> | IQueryFor<TDataType[], TArguments>,\n TDataType extends object,\n TArguments extends object,\n> {\n /**\n * Children to render — `<Column>` elements describing the visible columns.\n */\n children?: ReactNode;\n\n /**\n * The type of query to use\n */\n query: Constructor<TQuery>;\n\n /**\n * Optional Arguments to pass to the query\n */\n queryArguments?: TArguments;\n\n /**\n * The message to show when there is no data\n */\n emptyMessage: string;\n\n /** Message shown while loading without rows. */\n loadingMessage?: ReactNode;\n /** Message shown when the query fails. */\n failureMessage?: ReactNode;\n /** Message shown when access is denied. */\n unauthorizedMessage?: ReactNode;\n\n /**\n * The key to use for the data\n */\n dataKey?: string | undefined;\n\n /**\n * The current selection.\n */\n selection?: TDataType | undefined | null;\n\n /**\n * Callback for when the selection changes\n */\n onSelectionChange?(event: DataTableSelectionChangeEvent<TDataType>): void;\n\n /**\n * The row selection mode. Defaults to `'single'`.\n */\n selectionMode?: 'single' | 'multiple';\n\n /**\n * The currently selected rows, for `selectionMode='multiple'`.\n */\n selectedItems?: TDataType[];\n\n /**\n * Callback for when a multiple selection changes, with the full selected set.\n */\n onSelectedItemsChange?(items: TDataType[]): void;\n\n /**\n * Fields to use for global filtering\n */\n globalFilterFields?: string[] | undefined;\n\n /** Placeholder for the loaded-page search input. */\n globalSearchPlaceholder?: string;\n\n /** Accessible name for the loaded-page search input. */\n globalSearchAriaLabel?: string;\n\n /**\n * Default filters to use\n */\n defaultFilters?: DataTableFilterMeta;\n\n /**\n * @deprecated Filtering is always applied to the currently loaded page.\n * This compatibility prop no longer toggles behavior and does not change\n * server-reported pagination totals. Retained for source compatibility only.\n */\n clientFiltering?: boolean;\n\n /**\n * Extra CSS class name forwarded to the underlying DataTable root.\n */\n className?: string;\n\n /** Cratis-owned per-part attributes applied to the underlying table. */\n pt?: DataTableParts;\n\n /**\n * @deprecated Cratis parts always merge. Remove this renderer-era option.\n */\n ptOptions?: object;\n\n /**\n * @deprecated Components always uses consumer-owned CSS. Customize through `pt` and CSS instead.\n */\n unstyled?: boolean;\n\n /** Extra CSS class name forwarded to the paginator. */\n paginatorClassName?: string;\n\n /** Cratis-owned attributes for paginator parts. */\n paginatorPt?: TablePaginatorParts;\n\n /**\n * @deprecated Cratis paginator parts always merge. Remove this renderer-era option.\n */\n paginatorPtOptions?: object;\n\n /** Accessible names for the paginator controls. Override any to localize. */\n paginatorAriaLabels?: TablePaginatorProps['ariaLabels'];\n}\n\nconst paging = new Paging(0, 20);\n\n/**\n * A paged data table bound to a snapshot Cratis Arc query\n * (`IQueryFor<TDataType, TArguments>`). Subscribes via\n * `useQueryWithPaging` from `@cratis/arc.react/queries`, renders the result\n * page through the semantic Cratis-owned {@link DataTableCore}, and shows a\n * {@link TablePaginator} when the result set exceeds one page.\n *\n * ## What `TQuery` is\n *\n * `TQuery` is the auto-generated TypeScript class produced by the Arc proxy\n * generator from a C# read model's static query method. `dotnet build`\n * writes a `.ts` file per query with the right return type and a `use()`\n * hook; importing the class is all the connection-to-the-backend you need.\n *\n * ## Children\n *\n * Children are Cratis `<Column>` elements describing the visible columns —\n * `field`, `header`, custom `body` templates, and `sortable`.\n *\n * ```tsx\n * import { DataTableForQuery, Column } from '@cratis/components/DataTables';\n * import { AllAuthors } from './AllAuthors'; // proxy from C#\n *\n * <DataTableForQuery query={AllAuthors} emptyMessage=\"No authors\">\n * <Column field=\"name\" header=\"Name\" sortable />\n * <Column field=\"email\" header=\"Email\" />\n * </DataTableForQuery>\n * ```\n *\n * Use {@link DataTableForObservableQuery} for queries that should update in\n * real time as the underlying read model changes server-side. Use\n * {@link DataPage} for a higher-level layout that combines this table with\n * an action menubar, selection, and a details pane.\n *\n * ## Styling\n *\n * Forward `pt` / `ptOptions` / `unstyled` / `className` to the underlying\n * DataTable. See [pass-through cheat sheet](../../Documentation/Styling/pass-through.md).\n *\n * @typeParam TQuery - The query class (proxy generated from C# `IQueryFor`).\n * @typeParam TDataType - The row type returned by the query.\n * @typeParam TArguments - The query's argument object type.\n * @param props - {@link DataTableForQueryProps}.\n */\nexport const DataTableForQuery = <\n TQuery extends IQueryFor<TDataType, TArguments> | IQueryFor<TDataType[], TArguments>,\n TDataType extends object,\n TArguments extends object,\n>(\n props: DataTableForQueryProps<TQuery, TDataType, TArguments>,\n) => {\n const [result, , , setPage] = useQueryWithPaging(\n props.query,\n paging,\n props.queryArguments,\n );\n const totalItems = result.paging.totalItems;\n const pageCount = result.paging.totalPages;\n\n // SAFETY: Arc collection queries are row-typed while their runtime data is the current row array.\n const rows = result.data as unknown as TDataType[];\n const status = resolveDataTableStatus(result);\n\n return (\n <div\n style={{\n display: 'flex',\n flexDirection: 'column',\n height: '100%',\n border: '1px solid var(--cratis-surface-border)',\n borderRadius: 'var(--cratis-border-radius)',\n overflow: 'hidden',\n }}\n >\n {/* The scroll container must be `DataTableCore`'s own bounded container rather than\n this wrapper. `.cratis-datatable__container` sets `overflow-x: auto`, and CSS\n computes the matching `overflow-y: visible` to `auto`, so that element is always\n the nearest scrolling ancestor for the `position: sticky` header cells. Scrolling\n out here would leave the header sticking to a container that never scrolls, so the\n header would not freeze. */}\n <div style={{ flex: 1, minHeight: 0, overflow: 'hidden' }}>\n <DataTableCore<TDataType>\n data={rows}\n dataKey={props.dataKey}\n emptyMessage={props.emptyMessage}\n status={status}\n loadingMessage={props.loadingMessage}\n failureMessage={props.failureMessage}\n unauthorizedMessage={props.unauthorizedMessage}\n selectionMode={props.selectionMode ?? 'single'}\n selection={props.selection}\n onSelectionChange={props.onSelectionChange}\n selectedItems={props.selectedItems}\n onSelectedItemsChange={props.onSelectedItemsChange}\n globalFilterFields={props.globalFilterFields}\n globalSearchPlaceholder={props.globalSearchPlaceholder}\n globalSearchAriaLabel={props.globalSearchAriaLabel}\n defaultFilters={props.defaultFilters}\n scrollable\n scrollHeight='100%'\n className={props.className}\n style={{ minWidth: '100%' }}\n pt={props.pt}\n ptOptions={props.ptOptions}\n unstyled={props.unstyled}\n >\n {props.children}\n </DataTableCore>\n </div>\n\n {totalItems > 0 && pageCount > 1 && (\n <div\n style={{\n borderTop: '1px solid var(--cratis-surface-border)',\n flexShrink: 0,\n }}\n >\n <TablePaginator\n page={result.paging.page}\n pageCount={pageCount}\n onPageChange={setPage}\n totalItems={totalItems}\n pageSize={paging.pageSize}\n className={props.paginatorClassName}\n ariaLabels={props.paginatorAriaLabels}\n pt={props.paginatorPt}\n ptOptions={props.paginatorPtOptions}\n />\n </div>\n )}\n </div>\n );\n};\n"],"names":["_jsxs","_jsx"],"mappings":";;;;;;;AA+IA,MAAM,MAAM,GAAG,IAAI,MAAM,CAAC,CAAC,EAAE,EAAE,CAAC;AA8CzB,MAAM,iBAAiB,GAAG,CAK7B,KAA4D,KAC5D;IACA,MAAM,CAAC,MAAM,MAAM,OAAO,CAAC,GAAG,kBAAkB,CAC5C,KAAK,CAAC,KAAK,EACX,MAAM,EACN,KAAK,CAAC,cAAc,CACvB;AACD,IAAA,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,CAAC,UAAU;AAC3C,IAAA,MAAM,SAAS,GAAG,MAAM,CAAC,MAAM,CAAC,UAAU;AAG1C,IAAA,MAAM,IAAI,GAAG,MAAM,CAAC,IAA8B;AAClD,IAAA,MAAM,MAAM,GAAG,sBAAsB,CAAC,MAAM,CAAC;IAE7C,QACIA,IAAA,CAAA,KAAA,EAAA,EACI,KAAK,EAAE;AACH,YAAA,OAAO,EAAE,MAAM;AACf,YAAA,aAAa,EAAE,QAAQ;AACvB,YAAA,MAAM,EAAE,MAAM;AACd,YAAA,MAAM,EAAE,wCAAwC;AAChD,YAAA,YAAY,EAAE,6BAA6B;AAC3C,YAAA,QAAQ,EAAE,QAAQ;AACrB,SAAA,EAAA,QAAA,EAAA,CAQDC,aAAK,KAAK,EAAE,EAAE,IAAI,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAE,YACrDA,GAAA,CAAC,aAAa,EAAA,EACV,IAAI,EAAE,IAAI,EACV,OAAO,EAAE,KAAK,CAAC,OAAO,EACtB,YAAY,EAAE,KAAK,CAAC,YAAY,EAChC,MAAM,EAAE,MAAM,EACd,cAAc,EAAE,KAAK,CAAC,cAAc,EACpC,cAAc,EAAE,KAAK,CAAC,cAAc,EACpC,mBAAmB,EAAE,KAAK,CAAC,mBAAmB,EAC9C,aAAa,EAAE,KAAK,CAAC,aAAa,IAAI,QAAQ,EAC9C,SAAS,EAAE,KAAK,CAAC,SAAS,EAC1B,iBAAiB,EAAE,KAAK,CAAC,iBAAiB,EAC1C,aAAa,EAAE,KAAK,CAAC,aAAa,EAClC,qBAAqB,EAAE,KAAK,CAAC,qBAAqB,EAClD,kBAAkB,EAAE,KAAK,CAAC,kBAAkB,EAC5C,uBAAuB,EAAE,KAAK,CAAC,uBAAuB,EACtD,qBAAqB,EAAE,KAAK,CAAC,qBAAqB,EAClD,cAAc,EAAE,KAAK,CAAC,cAAc,EACpC,UAAU,EAAA,IAAA,EACV,YAAY,EAAC,MAAM,EACnB,SAAS,EAAE,KAAK,CAAC,SAAS,EAC1B,KAAK,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,EAC3B,EAAE,EAAE,KAAK,CAAC,EAAE,EACZ,SAAS,EAAE,KAAK,CAAC,SAAS,EAC1B,QAAQ,EAAE,KAAK,CAAC,QAAQ,YAEvB,KAAK,CAAC,QAAQ,EAAA,CACH,EAAA,CACd,EAEL,UAAU,GAAG,CAAC,IAAI,SAAS,GAAG,CAAC,KAC5BA,GAAA,CAAA,KAAA,EAAA,EACI,KAAK,EAAE;AACH,oBAAA,SAAS,EAAE,wCAAwC;AACnD,oBAAA,UAAU,EAAE,CAAC;iBAChB,EAAA,QAAA,EAEDA,GAAA,CAAC,cAAc,EAAA,EACX,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC,IAAI,EACxB,SAAS,EAAE,SAAS,EACpB,YAAY,EAAE,OAAO,EACrB,UAAU,EAAE,UAAU,EACtB,QAAQ,EAAE,MAAM,CAAC,QAAQ,EACzB,SAAS,EAAE,KAAK,CAAC,kBAAkB,EACnC,UAAU,EAAE,KAAK,CAAC,mBAAmB,EACrC,EAAE,EAAE,KAAK,CAAC,WAAW,EACrB,SAAS,EAAE,KAAK,CAAC,kBAAkB,EAAA,CACrC,EAAA,CACA,CACT,CAAA,EAAA,CACC;AAEd;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DataTableSelectionChangeEvent.js","sourceRoot":"","sources":["../../../DataTables/DataTableSelectionChangeEvent.ts"],"names":[],"mappings":"AAAA,6CAA6C;AAC7C,qGAAqG"}
|
|
1
|
+
{"version":3,"file":"DataTableSelectionChangeEvent.js","sourceRoot":"","sources":["../../../DataTables/DataTableSelectionChangeEvent.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\nimport type { SyntheticEvent } from 'react';\n\n/**\n * Fired when the selected row of a Cratis data table changes. Replaces\n * the legacy renderer's single-selection event.\n * The `value` field is preserved so existing `event.value` call sites keep\n * working.\n *\n * @typeParam TData - The row type.\n */\nexport interface DataTableSelectionChangeEvent<TData> {\n /** The newly-selected row, or `null` when the selection was cleared. */\n value: TData | null;\n /** The DOM event that triggered the change, when available. */\n originalEvent?: SyntheticEvent;\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DataTableStatus.js","sources":["../../../DataTables/DataTableStatus.ts"],"sourcesContent":[
|
|
1
|
+
{"version":3,"file":"DataTableStatus.js","sources":["../../../DataTables/DataTableStatus.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/** Display state of a loaded-page data table. */\nexport enum DataTableStatus {\n /** Shows loaded rows or the empty state when no query is pending. */\n Ready = 'ready',\n /** Shows a loading row without data, or retains existing rows while busy. */\n Loading = 'loading',\n /** Shows a failure message instead of rows when a query fails or is invalid. */\n Failed = 'failed',\n /** Shows an access-denied message instead of rows when a query is unauthorized. */\n Unauthorized = 'unauthorized',\n}\n"],"names":[],"mappings":"IAIY;AAAZ,CAAA,UAAY,eAAe,EAAA;AAEvB,IAAA,eAAA,CAAA,OAAA,CAAA,GAAA,OAAe;AAEf,IAAA,eAAA,CAAA,SAAA,CAAA,GAAA,SAAmB;AAEnB,IAAA,eAAA,CAAA,QAAA,CAAA,GAAA,QAAiB;AAEjB,IAAA,eAAA,CAAA,cAAA,CAAA,GAAA,cAA6B;AACjC,CAAC,EATW,eAAe,KAAf,eAAe,GAAA,EAAA,CAAA,CAAA;;"}
|
|
@@ -51,3 +51,4 @@ export interface TablePaginatorProps {
|
|
|
51
51
|
* paging hook and receive requested zero-based pages through `onPageChange`.
|
|
52
52
|
*/
|
|
53
53
|
export declare const TablePaginator: (props: TablePaginatorProps) => import("react").ReactElement<unknown, string | import("react").JSXElementConstructor<any>>;
|
|
54
|
+
//# sourceMappingURL=TablePaginator.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TablePaginator.d.ts","sourceRoot":"","sources":["../../../DataTables/TablePaginator.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,OAAO,CAAC;AAC5C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,qBAAkB,CAAC;AAMpD,2CAA2C;AAC3C,MAAM,WAAW,mBAAmB;IAChC,kCAAkC;IAClC,IAAI,CAAC,EAAE,cAAc,CAAC,cAAc,CAAC,CAAC;IACtC,gCAAgC;IAChC,KAAK,CAAC,EAAE,cAAc,CAAC,eAAe,CAAC,CAAC;IACxC,wCAAwC;IACxC,IAAI,CAAC,EAAE,cAAc,CAAC,eAAe,CAAC,CAAC;IACvC,+BAA+B;IAC/B,KAAK,CAAC,EAAE,WAAW,CAAC;IACpB,kCAAkC;IAClC,QAAQ,CAAC,EAAE,WAAW,CAAC;IACvB,8BAA8B;IAC9B,IAAI,CAAC,EAAE,WAAW,CAAC;IACnB,8BAA8B;IAC9B,IAAI,CAAC,EAAE,WAAW,CAAC;CACtB;AAED,wCAAwC;AACxC,MAAM,WAAW,mBAAmB;IAChC,oCAAoC;IACpC,IAAI,EAAE,MAAM,CAAC;IACb,iCAAiC;IACjC,SAAS,EAAE,MAAM,CAAC;IAClB,kDAAkD;IAClD,YAAY,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IACrC,sFAAsF;IACtF,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,2DAA2D;IAC3D,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,qFAAqF;IACrF,UAAU,CAAC,EAAE;QACT,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,IAAI,CAAC,EAAE,MAAM,CAAC;KACjB,CAAC;IACF,oDAAoD;IACpD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,8CAA8C;IAC9C,EAAE,CAAC,EAAE,mBAAmB,CAAC;IACzB;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;CACtB;AAQD;;;GAGG;AACH,eAAO,MAAM,cAAc,UAAW,mBAAmB,+FAMxD,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TablePaginator.js","sources":["../../../DataTables/TablePaginator.tsx"],"sourcesContent":[
|
|
1
|
+
{"version":3,"file":"TablePaginator.js","sources":["../../../DataTables/TablePaginator.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 type { HTMLAttributes } from 'react';\nimport type { ButtonParts } from '../Common/Button';\nimport { unstable_useSlot } from '../renderer/RendererContext';\nimport { renderSlot } from '../renderer/renderSlot';\nimport type { unstable_SlotDeclaration } from '../renderer/slots';\nimport { TablePaginatorImplementation } from './TablePaginatorImplementation';\n\n/** Stable Cratis-owned paginator parts. */\nexport interface TablePaginatorParts {\n /** Pagination navigation root. */\n root?: HTMLAttributes<HTMLDivElement>;\n /** Loaded item-range report. */\n range?: HTMLAttributes<HTMLSpanElement>;\n /** Current page / page-count report. */\n info?: HTMLAttributes<HTMLSpanElement>;\n /** First-page Button parts. */\n first?: ButtonParts;\n /** Previous-page Button parts. */\n previous?: ButtonParts;\n /** Next-page Button parts. */\n next?: ButtonParts;\n /** Last-page Button parts. */\n last?: ButtonParts;\n}\n\n/** Props for {@link TablePaginator}. */\nexport interface TablePaginatorProps {\n /** The current page, zero-based. */\n page: number;\n /** The total number of pages. */\n pageCount: number;\n /** Invoked with the requested zero-based page. */\n onPageChange: (page: number) => void;\n /** Total number of records across all pages — enables the \"X–Y of Z\" range report. */\n totalItems?: number;\n /** Rows per page — enables the \"X–Y of Z\" range report. */\n pageSize?: number;\n /** Accessible names for the paginator and its controls. Override any to localize. */\n ariaLabels?: {\n navigation?: string;\n first?: string;\n previous?: string;\n next?: string;\n last?: string;\n };\n /** Extra class name for the paginator container. */\n className?: string;\n /** Cratis-owned paginator part attributes. */\n pt?: TablePaginatorParts;\n /**\n * @deprecated Cratis parts always merge. Remove this renderer-era option.\n */\n ptOptions?: object;\n}\n\nconst coreTablePaginatorDeclaration = Object.freeze({\n mode: 'atomic',\n fidelity: 'native',\n render: TablePaginatorImplementation,\n}) satisfies unstable_SlotDeclaration<'datatables.paginator'>;\n\n/**\n * A minimal first/previous/next/last paginator. The Cratis data tables drive paging through Arc's\n * paging hook and receive requested zero-based pages through `onPageChange`.\n */\nexport const TablePaginator = (props: TablePaginatorProps) => {\n const declaration = unstable_useSlot(\n 'datatables.paginator',\n coreTablePaginatorDeclaration,\n );\n return renderSlot(declaration, props);\n};\n"],"names":[],"mappings":";;;;AA0DA,MAAM,6BAA6B,GAAG,MAAM,CAAC,MAAM,CAAC;AAChD,IAAA,IAAI,EAAE,QAAQ;AACd,IAAA,QAAQ,EAAE,QAAQ;AAClB,IAAA,MAAM,EAAE,4BAA4B;AACvC,CAAA,CAA4D;AAMtD,MAAM,cAAc,GAAG,CAAC,KAA0B,KAAI;IACzD,MAAM,WAAW,GAAG,gBAAgB,CAChC,sBAAsB,EACtB,6BAA6B,CAChC;AACD,IAAA,OAAO,UAAU,CAAC,WAAW,EAAE,KAAK,CAAC;AACzC;;"}
|
|
@@ -6,3 +6,4 @@ import type { TablePaginatorProps } from './TablePaginator.js';
|
|
|
6
6
|
* simple `onPageChange(pageIndex)` callback.
|
|
7
7
|
*/
|
|
8
8
|
export declare const TablePaginatorImplementation: ({ page, pageCount, onPageChange, totalItems, pageSize, ariaLabels, className, pt, }: TablePaginatorProps) => import("react").JSX.Element;
|
|
9
|
+
//# sourceMappingURL=TablePaginatorImplementation.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TablePaginatorImplementation.d.ts","sourceRoot":"","sources":["../../../DataTables/TablePaginatorImplementation.tsx"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,qBAAkB,CAAC;AAG5D;;;;;GAKG;AACH,eAAO,MAAM,4BAA4B,wFAStC,mBAAmB,gCAoFrB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TablePaginatorImplementation.js","sources":["../../../DataTables/TablePaginatorImplementation.tsx"],"sourcesContent":[
|
|
1
|
+
{"version":3,"file":"TablePaginatorImplementation.js","sources":["../../../DataTables/TablePaginatorImplementation.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 { Button } from '../Common/Button';\nimport { useCratisComponentsConfig } from '../Common/CratisComponentsProvider';\nimport { useCratisIcon } from '../configuration/useCratisIcon';\nimport type { TablePaginatorProps } from './TablePaginator';\nimport { paginatorRange } from './paginatorRange';\n\n/**\n * A minimal first/previous/next/last paginator. The\n * Cratis data tables drive paging through Arc's paging hook rather than the\n * table's internal pagination — so this renders the page controls wired to a\n * simple `onPageChange(pageIndex)` callback.\n */\nexport const TablePaginatorImplementation = ({\n page,\n pageCount,\n onPageChange,\n totalItems,\n pageSize,\n ariaLabels,\n className,\n pt,\n}: TablePaginatorProps) => {\n const { messages } = useCratisComponentsConfig();\n const paginatorMessages = messages?.paginator;\n const icon = useCratisIcon();\n const isFirst = page <= 0;\n const isLast = page >= pageCount - 1;\n const rangeReport = paginatorRange(page, pageSize, totalItems);\n const labels = {\n navigation:\n ariaLabels?.navigation ?? paginatorMessages?.navigation ?? 'Pagination',\n first: ariaLabels?.first ?? paginatorMessages?.first ?? 'First page',\n previous: ariaLabels?.previous ?? paginatorMessages?.previous ?? 'Previous page',\n next: ariaLabels?.next ?? paginatorMessages?.next ?? 'Next page',\n last: ariaLabels?.last ?? paginatorMessages?.last ?? 'Last page',\n };\n\n return (\n <div\n {...pt?.root}\n role='navigation'\n aria-label={labels.navigation}\n data-cratis-part='root'\n className={['cratis-table-paginator', pt?.root?.className, className]\n .filter(Boolean)\n .join(' ')}\n >\n {rangeReport && (\n <span\n {...pt?.range}\n className={['cratis-table-paginator-range', pt?.range?.className]\n .filter(Boolean)\n .join(' ')}\n data-cratis-part='range'\n >\n {rangeReport}\n </span>\n )}\n <Button\n variant='ghost'\n disabled={isFirst}\n onClick={() => onPageChange(0)}\n aria-label={labels.first}\n pt={pt?.first}\n >\n <span aria-hidden='true'>«</span>\n </Button>\n <Button\n variant='ghost'\n disabled={isFirst}\n onClick={() => onPageChange(page - 1)}\n aria-label={labels.previous}\n pt={pt?.previous}\n >\n <span aria-hidden='true'>{icon('previous', '‹')}</span>\n </Button>\n <span\n {...pt?.info}\n className={['cratis-table-paginator-info', pt?.info?.className]\n .filter(Boolean)\n .join(' ')}\n data-cratis-part='info'\n >\n {page + 1} / {Math.max(pageCount, 1)}\n </span>\n <Button\n variant='ghost'\n disabled={isLast}\n onClick={() => onPageChange(page + 1)}\n aria-label={labels.next}\n pt={pt?.next}\n >\n <span aria-hidden='true'>{icon('next', '›')}</span>\n </Button>\n <Button\n variant='ghost'\n disabled={isLast}\n onClick={() => onPageChange(pageCount - 1)}\n aria-label={labels.last}\n pt={pt?.last}\n >\n <span aria-hidden='true'>»</span>\n </Button>\n </div>\n );\n};\n"],"names":["_jsxs","_jsx"],"mappings":"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"}
|
|
@@ -8,3 +8,4 @@ export * from './TablePaginator.js';
|
|
|
8
8
|
export * from './DataTableSelectionChangeEvent.js';
|
|
9
9
|
export * from './DataTableFilterMeta.js';
|
|
10
10
|
export { registerDataTableFilterMatcher, resolveDataTableFilterMatcher, unregisterDataTableFilterMatcher, type DataTableFilterMatcherRegistration, } from './DataTableFilterMatcherRegistry.js';
|
|
11
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../DataTables/index.ts"],"names":[],"mappings":"AAGA,cAAc,oBAAiB,CAAC;AAChC,cAAc,sBAAmB,CAAC;AAClC,cAAc,wBAAqB,CAAC;AACpC,cAAc,kCAA+B,CAAC;AAC9C,cAAc,aAAU,CAAC;AACzB,cAAc,uBAAoB,CAAC;AACnC,cAAc,qBAAkB,CAAC;AACjC,cAAc,oCAAiC,CAAC;AAChD,cAAc,0BAAuB,CAAC;AACtC,OAAO,EACH,8BAA8B,EAC9B,6BAA6B,EAC7B,gCAAgC,EAChC,KAAK,kCAAkC,GAC1C,MAAM,qCAAkC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"paginatorRange.js","sources":["../../../DataTables/paginatorRange.ts"],"sourcesContent":[
|
|
1
|
+
{"version":3,"file":"paginatorRange.js","sources":["../../../DataTables/paginatorRange.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 * Formats the \"X–Y of Z\" range report for a zero-based page, or `undefined`\n * when the totals are unknown or there are no records. The end is clamped to\n * the total so the last (partial) page reports correctly.\n *\n * @param page - Zero-based current page.\n * @param pageSize - Rows per page.\n * @param totalItems - Total records across all pages.\n */\nexport function paginatorRange(page: number, pageSize: number | undefined, totalItems: number | undefined): string | undefined {\n if (totalItems === undefined || pageSize === undefined || totalItems <= 0) return undefined;\n const start = page * pageSize + 1;\n const end = Math.min((page + 1) * pageSize, totalItems);\n return `${start}–${end} of ${totalItems}`;\n}\n"],"names":[],"mappings":"SAYgB,cAAc,CAAC,IAAY,EAAE,QAA4B,EAAE,UAA8B,EAAA;IACrG,IAAI,UAAU,KAAK,SAAS,IAAI,QAAQ,KAAK,SAAS,IAAI,UAAU,IAAI,CAAC;AAAE,QAAA,OAAO,SAAS;AAC3F,IAAA,MAAM,KAAK,GAAG,IAAI,GAAG,QAAQ,GAAG,CAAC;AACjC,IAAA,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,GAAG,CAAC,IAAI,QAAQ,EAAE,UAAU,CAAC;AACvD,IAAA,OAAO,GAAG,KAAK,CAAA,CAAA,EAAI,GAAG,CAAA,IAAA,EAAO,UAAU,EAAE;AAC7C;;"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"resolveDataTableStatus.d.ts","sourceRoot":"","sources":["../../../DataTables/resolveDataTableStatus.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAmB,CAAC;AASpD,8DAA8D;AAC9D,eAAO,MAAM,sBAAsB,WAAY;IAC3C,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,OAAO,CAAC,EAAE,OAAO,CAAC;CACrB,KAAG,eAAuE,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"resolveDataTableStatus.js","sources":["../../../DataTables/resolveDataTableStatus.ts"],"sourcesContent":[
|
|
1
|
+
{"version":3,"file":"resolveDataTableStatus.js","sources":["../../../DataTables/resolveDataTableStatus.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 { QueryStatus } from '../QueryStatus/QueryStatus';\nimport { resolveQueryStatus } from '../QueryStatus/resolveQueryStatus';\nimport { DataTableStatus } from './DataTableStatus';\n\nconst tableStatusByQueryStatus: Record<QueryStatus, DataTableStatus> = {\n [QueryStatus.Ready]: DataTableStatus.Ready,\n [QueryStatus.Loading]: DataTableStatus.Loading,\n [QueryStatus.Failed]: DataTableStatus.Failed,\n [QueryStatus.Unauthorized]: DataTableStatus.Unauthorized,\n};\n\n/** Resolve Arc query flags into the table's display state. */\nexport const resolveDataTableStatus = (result: {\n isAuthorized?: boolean;\n hasExceptions?: boolean;\n isValid?: boolean;\n isPerforming?: boolean;\n isReady?: boolean;\n}): DataTableStatus => tableStatusByQueryStatus[resolveQueryStatus(result)];\n"],"names":[],"mappings":";;;;AAOA,MAAM,wBAAwB,GAAyC;AACnE,IAAA,CAAC,WAAW,CAAC,KAAK,GAAG,eAAe,CAAC,KAAK;AAC1C,IAAA,CAAC,WAAW,CAAC,OAAO,GAAG,eAAe,CAAC,OAAO;AAC9C,IAAA,CAAC,WAAW,CAAC,MAAM,GAAG,eAAe,CAAC,MAAM;AAC5C,IAAA,CAAC,WAAW,CAAC,YAAY,GAAG,eAAe,CAAC,YAAY;CAC3D;AAGM,MAAM,sBAAsB,GAAG,CAAC,MAMtC,KAAsB,wBAAwB,CAAC,kBAAkB,CAAC,MAAM,CAAC;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"selectionKeys.js","sourceRoot":"","sources":["../../../DataTables/selectionKeys.ts"],"names":[],"mappings":"AAAA,6CAA6C;AAC7C,qGAAqG;AAKrG,4CAA4C;AAC5C,MAAM,UAAU,mBAAmB,CAC/B,SAAmC,EACnC,OAA2B;IAE3B,IAAI,CAAC,SAAS,IAAI,CAAC,OAAO;QAAE,OAAO,EAAE,CAAC;IACtC,OAAO,EAAE,CAAC,MAAM,CAAE,SAAqC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC;AAC/E,CAAC;AAED,kDAAkD;AAClD,MAAM,UAAU,oBAAoB,CAChC,IAAmB,EACnB,IAAa,EACb,OAA2B;IAE3B,IAAI,CAAC,OAAO;QAAE,OAAO,IAAI,CAAC;IAC1B,MAAM,WAAW,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;IAC/D,IAAI,WAAW,KAAK,SAAS;QAAE,OAAO,IAAI,CAAC;IAC3C,OAAO,CACH,IAAI,CAAC,IAAI,CACL,CAAC,GAAG,EAAE,EAAE,CAAC,MAAM,CAAE,GAA+B,CAAC,OAAO,CAAC,CAAC,KAAK,WAAW,CAC7E,IAAI,IAAI,CACZ,CAAC;AACN,CAAC"}
|
|
1
|
+
{"version":3,"file":"selectionKeys.js","sourceRoot":"","sources":["../../../DataTables/selectionKeys.ts"],"names":[],"mappings":"AAAA,6CAA6C;AAC7C,qGAAqG;AAKrG,4CAA4C;AAC5C,MAAM,UAAU,mBAAmB,CAC/B,SAAmC,EACnC,OAA2B;IAE3B,IAAI,CAAC,SAAS,IAAI,CAAC,OAAO;QAAE,OAAO,EAAE,CAAC;IACtC,OAAO,EAAE,CAAC,MAAM,CAAE,SAAqC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC;AAC/E,CAAC;AAED,kDAAkD;AAClD,MAAM,UAAU,oBAAoB,CAChC,IAAmB,EACnB,IAAa,EACb,OAA2B;IAE3B,IAAI,CAAC,OAAO;QAAE,OAAO,IAAI,CAAC;IAC1B,MAAM,WAAW,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;IAC/D,IAAI,WAAW,KAAK,SAAS;QAAE,OAAO,IAAI,CAAC;IAC3C,OAAO,CACH,IAAI,CAAC,IAAI,CACL,CAAC,GAAG,EAAE,EAAE,CAAC,MAAM,CAAE,GAA+B,CAAC,OAAO,CAAC,CAAC,KAAK,WAAW,CAC7E,IAAI,IAAI,CACZ,CAAC;AACN,CAAC","sourcesContent":["// Copyright (c) Cratis. All rights reserved.\n// Licensed under the MIT license. See LICENSE file in the project root for full license information.\n\n/** Cratis-owned selected-row key map. */\nexport type SelectionKeys = Record<string, boolean>;\n\n/** Builds a single selected-row key map. */\nexport function selectionKeysForRow<TData extends object>(\n selection: TData | null | undefined,\n dataKey: string | undefined,\n): SelectionKeys {\n if (!selection || !dataKey) return {};\n return { [String((selection as Record<string, unknown>)[dataKey])]: true };\n}\n\n/** Resolves a row from a selected-row key map. */\nexport function rowFromSelectionKeys<TData extends object>(\n keys: SelectionKeys,\n data: TData[],\n dataKey: string | undefined,\n): TData | null {\n if (!dataKey) return null;\n const selectedKey = Object.keys(keys).find((key) => keys[key]);\n if (selectedKey === undefined) return null;\n return (\n data.find(\n (row) => String((row as Record<string, unknown>)[dataKey]) === selectedKey,\n ) ?? null\n );\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BusyIndicatorDialog.js","sources":["../../../Dialogs/BusyIndicatorDialog.tsx"],"sourcesContent":[null],"names":["_jsx","_jsxs"],"mappings":";;;;;AAmEO,MAAM,mBAAmB,GAAG,CAAC,KAAiC,KAAI;AACrE,IAAA,QACIA,GAAA,CAAC,MAAM,EAAA,EACH,KAAK,EAAE,KAAK,CAAC,KAAK,EAClB,OAAO,EAAE,IAAI,EACb,QAAQ,EAAE,MAAM,SAAS,EACzB,OAAO,EAAE,IAAI,EACb,YAAY,EAAE,kBAAkB,CAAC,OAAO,EACxC,SAAS,EAAC,8BAA8B,EAAA,QAAA,EAExCC,IAAA,CAAA,KAAA,EAAA,EAAK,SAAS,EAAC,gGAAgG,EAAA,QAAA,EAAA,CAG3GD,GAAA,CAAC,eAAe,EAAA,EAAA,YAAA,EAAa,KAAK,CAAC,OAAO,IAAI,KAAK,CAAC,KAAK,IAAI,SAAS,EAAA,CAAI,EAC1EA,GAAA,CAAA,GAAA,EAAA,EAAG,SAAS,EAAC,+BAA+B,EAAA,QAAA,EAAE,KAAK,CAAC,OAAO,EAAA,CAAK,CAAA,EAAA,CAC9D,EAAA,CACD;AAEjB;;"}
|
|
1
|
+
{"version":3,"file":"BusyIndicatorDialog.js","sources":["../../../Dialogs/BusyIndicatorDialog.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 { BusyIndicatorDialogRequest } from '@cratis/arc.react/dialogs';\nimport { ProgressSpinner } from '../Display/ProgressSpinner';\nimport { Dialog } from './Dialog';\nimport { DialogInitialFocus } from './DialogInitialFocus';\n\n/**\n * Modal \"busy\" dialog used by the `@cratis/arc.react` dialog host whenever a\n * long-running operation needs to block user interaction. Renders a spinner\n * and a message, with no confirm/cancel/X buttons — the dialog dismisses\n * itself when the host removes it.\n *\n * ## How to use it\n *\n * **You do not instantiate this component directly.** It's rendered by the\n * dialog host machinery in response to a request. Trigger one from anywhere\n * in your tree with `useBusyIndicator` from `@cratis/arc.react/dialogs`:\n *\n * ```tsx\n * import { DialogComponents, useBusyIndicator } from '@cratis/arc.react/dialogs';\n * import { BusyIndicatorDialog } from '@cratis/components/Dialogs';\n *\n * function Save({ onSave }: { onSave: () => Promise<void> }) {\n * const [showBusy, closeBusy] = useBusyIndicator(\n * 'Saving', 'Persisting your changes…',\n * );\n * const handleSave = async () => {\n * void showBusy();\n * try {\n * await onSave();\n * } finally {\n * closeBusy();\n * }\n * };\n * return <button onClick={handleSave}>Save</button>;\n * }\n *\n * function Example({ onSave }: { onSave: () => Promise<void> }) {\n * return (\n * <DialogComponents busyIndicator={BusyIndicatorDialog}>\n * <Save onSave={onSave} />\n * </DialogComponents>\n * );\n * }\n * ```\n *\n * The host renders the BusyIndicatorDialog in response, threading the\n * `title` / `message` from your request through to the rendered modal.\n *\n * ## What's unique\n *\n * - **No interactive buttons.** A busy indicator is a wait-state, not a\n * confirmation prompt. The dialog has no Ok / Cancel / X — only the host\n * can dismiss it. Because there is nothing focusable inside it, initial\n * focus is put on the dialog's own title, so a keyboard or screen-reader\n * user is told what is happening instead of being left on `document.body`\n * behind the modal mask.\n * - **No per-instance pass-through.** The request type\n * ({@link BusyIndicatorDialogRequest}) is owned by `@cratis/arc.react`, so\n * `pt` / `unstyled` are not exposed on a per-call basis. Restyle this\n * surface through `.cratis-busy-indicator-dialog` together with the stable\n * Dialog `data-cratis-part` values and semantic tokens.\n *\n * @param props - The request from the dialog host, containing `title` and `message`.\n */\nexport const BusyIndicatorDialog = (props: BusyIndicatorDialogRequest) => {\n return (\n <Dialog\n title={props.title}\n visible={true}\n onCancel={() => undefined}\n buttons={null}\n initialFocus={DialogInitialFocus.Content}\n className='cratis-busy-indicator-dialog'\n >\n <div className='cratis:flex cratis:flex-col cratis:items-center cratis:justify-center cratis:gap-4 cratis:py-4'>\n {/* The spinner's role=\"progressbar\" needs an accessible name; use the\n consumer-supplied message/title (already localized), never a baked-in string. */}\n <ProgressSpinner aria-label={props.message || props.title || 'Loading'} />\n <p className='cratis:m-0 cratis:text-center'>{props.message}</p>\n </div>\n </Dialog>\n );\n};\n"],"names":["_jsx","_jsxs"],"mappings":";;;;;AAmEO,MAAM,mBAAmB,GAAG,CAAC,KAAiC,KAAI;AACrE,IAAA,QACIA,GAAA,CAAC,MAAM,EAAA,EACH,KAAK,EAAE,KAAK,CAAC,KAAK,EAClB,OAAO,EAAE,IAAI,EACb,QAAQ,EAAE,MAAM,SAAS,EACzB,OAAO,EAAE,IAAI,EACb,YAAY,EAAE,kBAAkB,CAAC,OAAO,EACxC,SAAS,EAAC,8BAA8B,EAAA,QAAA,EAExCC,IAAA,CAAA,KAAA,EAAA,EAAK,SAAS,EAAC,gGAAgG,EAAA,QAAA,EAAA,CAG3GD,GAAA,CAAC,eAAe,EAAA,EAAA,YAAA,EAAa,KAAK,CAAC,OAAO,IAAI,KAAK,CAAC,KAAK,IAAI,SAAS,EAAA,CAAI,EAC1EA,GAAA,CAAA,GAAA,EAAA,EAAG,SAAS,EAAC,+BAA+B,EAAA,QAAA,EAAE,KAAK,CAAC,OAAO,EAAA,CAAK,CAAA,EAAA,CAC9D,EAAA,CACD;AAEjB;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ConfirmationDialog.js","sources":["../../../Dialogs/ConfirmationDialog.tsx"],"sourcesContent":[
|
|
1
|
+
{"version":3,"file":"ConfirmationDialog.js","sources":["../../../Dialogs/ConfirmationDialog.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 { ConfirmationDialogRequest } from '@cratis/arc.react/dialogs';\nimport { DialogResult, useDialogContext } from '@cratis/arc.react/dialogs';\nimport { Dialog } from './Dialog';\n\n/**\n * A simple confirmation dialog that renders a title, message, and action\n * buttons. Closes with the selected {@link DialogResult} through the dialog\n * host context.\n *\n * Consumes a {@link ConfirmationDialogRequest} from the dialog context,\n * which carries the `title`, `message`, and `buttons` to show.\n *\n * Register this component with `DialogComponents` and use\n * `useConfirmationDialog` from `@cratis/arc.react/dialogs` inside that host:\n *\n * ```tsx\n * import {\n * DialogButtons, DialogComponents, DialogResult, useConfirmationDialog,\n * } from '@cratis/arc.react/dialogs';\n * import { ConfirmationDialog } from '@cratis/components/Dialogs';\n *\n * function ConfirmAction() {\n * const [showConfirmation] = useConfirmationDialog(\n * 'Delete this item?', 'This action cannot be undone.', DialogButtons.YesNo,\n * );\n * const onClick = async () => {\n * const result = await showConfirmation();\n * if (result === DialogResult.Yes) {\n * // proceed with deletion\n * }\n * };\n * return <button onClick={onClick}>Delete</button>;\n * }\n *\n * function Example() {\n * return (\n * <DialogComponents confirmation={ConfirmationDialog}>\n * <ConfirmAction />\n * </DialogComponents>\n * );\n * }\n * ```\n */\nexport const ConfirmationDialog = () => {\n const { request, closeDialog } = useDialogContext<ConfirmationDialogRequest>();\n\n const handleClose = (result: DialogResult) => {\n closeDialog(result);\n };\n\n return (\n <Dialog\n title={request.title}\n visible={true}\n onClose={handleClose}\n buttons={request.buttons}\n >\n <p className='cratis:m-0'>{request.message}</p>\n </Dialog>\n );\n};\n"],"names":["_jsx"],"mappings":";;;;AA8CO,MAAM,kBAAkB,GAAG,MAAK;IACnC,MAAM,EAAE,OAAO,EAAE,WAAW,EAAE,GAAG,gBAAgB,EAA6B;AAE9E,IAAA,MAAM,WAAW,GAAG,CAAC,MAAoB,KAAI;QACzC,WAAW,CAAC,MAAM,CAAC;AACvB,IAAA,CAAC;AAED,IAAA,QACIA,GAAA,CAAC,MAAM,EAAA,EACH,KAAK,EAAE,OAAO,CAAC,KAAK,EACpB,OAAO,EAAE,IAAI,EACb,OAAO,EAAE,WAAW,EACpB,OAAO,EAAE,OAAO,CAAC,OAAO,EAAA,QAAA,EAExBA,WAAG,SAAS,EAAC,YAAY,EAAA,QAAA,EAAE,OAAO,CAAC,OAAO,EAAA,CAAK,EAAA,CAC1C;AAEjB;;"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Dialog.d.ts","sourceRoot":"","sources":["../../../Dialogs/Dialog.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Dialog.js","sources":["../../../Dialogs/Dialog.tsx"],"sourcesContent":[null],"names":[],"mappings":";;;;AA6IA,MAAM,qBAAqB,GAAG,MAAM,CAAC,MAAM,CAAC;AACxC,IAAA,IAAI,EAAE,QAAQ;AACd,IAAA,QAAQ,EAAE,QAAQ;AAClB,IAAA,MAAM,EAAE,oBAAoB;AAC/B,CAAA,CAAsD;AAMhD,MAAM,MAAM,GAAG,CAAC,KAAkB,KAAI;IACzC,MAAM,WAAW,GAAG,gBAAgB,CAAC,gBAAgB,EAAE,qBAAqB,CAAC;AAC7E,IAAA,OAAO,UAAU,CAAC,WAAW,EAAE,KAAK,CAAC;AACzC;;"}
|
|
1
|
+
{"version":3,"file":"Dialog.js","sources":["../../../Dialogs/Dialog.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 type { DialogResult, DialogButtons } from '@cratis/arc.react/dialogs';\nimport type {\n ButtonHTMLAttributes,\n CSSProperties,\n HTMLAttributes,\n ReactNode,\n} from 'react';\nimport { unstable_useSlot } from '../renderer/RendererContext';\nimport { renderSlot } from '../renderer/renderSlot';\nimport type { unstable_SlotDeclaration } from '../renderer/slots';\nimport type { DialogInitialFocus } from './DialogInitialFocus';\nimport { DialogImplementation } from './DialogImplementation';\n\n/** Callback handling a typed dialog result; return `false` to keep the dialog open. */\nexport type CloseDialog = (\n result: DialogResult,\n) => boolean | void | Promise<boolean> | Promise<void>;\n\n/** Confirmation callback; return `true` to permit host closure. */\nexport type ConfirmCallback = () => boolean | void | Promise<boolean> | Promise<void>;\n/** Cancellation callback; return `true` to permit host closure. */\nexport type CancelCallback = () => boolean | void | Promise<boolean> | Promise<void>;\n\ntype DialogPartAttributes<TElement> = HTMLAttributes<TElement> & {\n [attribute: `data-${string}`]: string | number | boolean | undefined;\n};\n\ntype DialogButtonAttributes = Omit<\n ButtonHTMLAttributes<HTMLButtonElement>,\n 'onClick' | 'value'\n>;\n\n/**\n * Where a {@link Dialog} sits in the viewport. `center` is the classic modal; `start` and `end`\n * make it a full-height side sheet against the inline-start or inline-end edge.\n */\nexport type DialogPlacement = 'center' | 'start' | 'end';\n\n/** Stable Cratis-owned parts for styling a {@link Dialog}. */\nexport interface DialogParts {\n /** Viewport backdrop and dismissal surface. */\n backdrop?: DialogPartAttributes<HTMLDivElement>;\n /** Viewport positioning wrapper. */\n positioner?: DialogPartAttributes<HTMLDivElement>;\n /** Modal root. */\n root?: DialogPartAttributes<HTMLDivElement>;\n /** Header containing title and optional close action. */\n header?: DialogPartAttributes<HTMLElement>;\n /** Dialog heading. */\n title?: DialogPartAttributes<HTMLHeadingElement>;\n /** Secondary line under the heading, rendered only when `subtitle` is set. */\n subtitle?: DialogPartAttributes<HTMLParagraphElement>;\n /** Header close button. */\n close?: DialogButtonAttributes;\n /** Dialog content region. */\n content?: DialogPartAttributes<HTMLDivElement>;\n /** Footer action region. */\n footer?: DialogPartAttributes<HTMLElement>;\n /** Primary confirmation button. */\n confirm?: DialogButtonAttributes;\n /** Secondary dismissal button(s). */\n cancel?: DialogButtonAttributes;\n}\n\n/** Props for {@link Dialog}. */\nexport interface DialogProps {\n /** Dialog heading. */\n title: string;\n /**\n * Secondary line under the heading — a reference, a status, a short summary. Announced as the\n * dialog's description.\n */\n subtitle?: ReactNode;\n /**\n * Viewport placement. `center` (default) is a modal; `start` and `end` render a full-height\n * side sheet against that inline edge, sliding in from it. Dismissal, focus and busy behavior\n * are identical across placements.\n */\n placement?: DialogPlacement;\n /**\n * Glyph for the header close button. Names this one dialog and wins over the provider's\n * `icons.close`; defaults to a multiplication sign when neither is set.\n */\n closeIcon?: ReactNode;\n /** Controlled open state. Defaults to `true`. */\n visible?: boolean;\n /** Combined result callback used when a dedicated confirm/cancel callback is absent. */\n onClose?: CloseDialog;\n /** Invoked by primary confirmation actions. */\n onConfirm?: ConfirmCallback;\n /** Invoked by cancellation actions. */\n onCancel?: CancelCallback;\n /** Predefined Arc buttons, custom footer content, or `null` for no footer. */\n buttons?: DialogButtons | ReactNode;\n /** Initial focus target. Defaults to the confirmation action. */\n initialFocus?: DialogInitialFocus;\n /** Dialog body content. */\n children: ReactNode;\n /** CSS width. Defaults to `450px`. */\n width?: string;\n /** Modal-root inline style. */\n style?: CSSProperties;\n /** Content-region inline style. */\n contentStyle?: CSSProperties;\n /**\n * @deprecated The Cratis dialog is viewport-bounded rather than resizable. Remove this prop.\n */\n resizable?: boolean;\n /** Whether the primary action is enabled. Defaults to `true`. */\n isValid?: boolean;\n /** Disables every action and dismissal path while work is in flight. */\n isBusy?: boolean;\n /** Label for the Ok action. Falls back to the provider's `dialog.ok` message, then `'Ok'`. */\n okLabel?: string;\n /** Label for the Cancel action. Falls back to the provider's `dialog.cancel` message, then `'Cancel'`. */\n cancelLabel?: string;\n /** Label for the Yes action. Falls back to the provider's `dialog.yes` message, then `'Yes'`. */\n yesLabel?: string;\n /** Label for the No action. Falls back to the provider's `dialog.no` message, then `'No'`. */\n noLabel?: string;\n /** Accessible label for the header close button. Falls back to the provider's `dialog.close` message, then `'Close'`. */\n closeAriaLabel?: string;\n /** Enables header, Escape, and backdrop dismissal when not busy. */\n dismissable?: boolean;\n /** Extra class name for the modal root. */\n className?: string;\n /** Cratis-owned per-part attributes. */\n pt?: DialogParts;\n /**\n * @deprecated Cratis parts always merge. Remove this renderer-era option.\n */\n ptOptions?: object;\n /**\n * @deprecated Components always uses consumer-owned CSS. Customize through `pt` and CSS instead.\n */\n unstyled?: boolean;\n}\n\nconst coreDialogDeclaration = Object.freeze({\n mode: 'atomic',\n fidelity: 'native',\n render: DialogImplementation,\n}) satisfies unstable_SlotDeclaration<'dialogs.dialog'>;\n\n/**\n * A modal dialog with Arc host integration, typed footer actions, busy/validity\n * state, controlled dismissal, and stable Cratis-owned styling parts.\n */\nexport const Dialog = (props: DialogProps) => {\n const declaration = unstable_useSlot('dialogs.dialog', coreDialogDeclaration);\n return renderSlot(declaration, props);\n};\n"],"names":[],"mappings":";;;;AA6IA,MAAM,qBAAqB,GAAG,MAAM,CAAC,MAAM,CAAC;AACxC,IAAA,IAAI,EAAE,QAAQ;AACd,IAAA,QAAQ,EAAE,QAAQ;AAClB,IAAA,MAAM,EAAE,oBAAoB;AAC/B,CAAA,CAAsD;AAMhD,MAAM,MAAM,GAAG,CAAC,KAAkB,KAAI;IACzC,MAAM,WAAW,GAAG,gBAAgB,CAAC,gBAAgB,EAAE,qBAAqB,CAAC;AAC7E,IAAA,OAAO,UAAU,CAAC,WAAW,EAAE,KAAK,CAAC;AACzC;;"}
|
|
@@ -4,3 +4,4 @@ import type { DialogProps } from './Dialog.js';
|
|
|
4
4
|
* state, controlled dismissal, and stable Cratis-owned styling parts.
|
|
5
5
|
*/
|
|
6
6
|
export declare const DialogImplementation: ({ title, subtitle, placement, closeIcon, visible, onClose, onConfirm, onCancel, buttons, initialFocus, children, width, style, contentStyle, isValid, isBusy, okLabel, cancelLabel, yesLabel, noLabel, closeAriaLabel, dismissable, className, pt, }: DialogProps) => import("react").JSX.Element | null;
|
|
7
|
+
//# sourceMappingURL=DialogImplementation.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DialogImplementation.d.ts","sourceRoot":"","sources":["../../../Dialogs/DialogImplementation.tsx"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,aAAU,CAAC;AAsB5C;;;GAGG;AACH,eAAO,MAAM,oBAAoB,yPAyB9B,WAAW,uCAgZb,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DialogImplementation.js","sources":["../../../Dialogs/DialogImplementation.tsx"],"sourcesContent":[null],"names":["_jsxs","_jsx","_Fragment","AriaDialog"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"DialogImplementation.js","sources":["../../../Dialogs/DialogImplementation.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 { DialogResult, DialogButtons, useDialogContext } from '@cratis/arc.react/dialogs';\nimport { Dialog as AriaDialog, Heading } from 'react-aria-components/Dialog';\nimport { Modal, ModalOverlay } from 'react-aria-components/Modal';\nimport { UNSAFE_PortalProvider } from 'react-aria';\nimport { useEffect, useId, useLayoutEffect, useRef, useState, useSyncExternalStore } from 'react';\nimport { unstable_useOverlayEnvironment } from '../renderer/RendererContext';\nimport { DialogInitialFocus } from './DialogInitialFocus';\nimport type { DialogProps } from './Dialog';\nimport { useCratisComponentsConfig } from '../Common/CratisComponentsProvider';\nimport { useCratisIcon } from '../configuration/useCratisIcon';\nimport {\n DIALOG_ZINDEX_TOKEN,\n closeDialogTier,\n dialogZIndexForTier,\n openDialogTier,\n} from '../renderer/dialogStack';\nimport { DialogStackContext } from '../renderer/DialogStackContext';\n\nconst classNames = (...values: Array<string | undefined>) =>\n values.filter(Boolean).join(' ');\n\nconst subscribeToBrowserEnvironment = () => () => undefined;\nconst useIsBrowser = () =>\n useSyncExternalStore(\n subscribeToBrowserEnvironment,\n () => true,\n () => false,\n );\n\n/**\n * A modal dialog with Arc host integration, typed footer actions, busy/validity\n * state, controlled dismissal, and stable Cratis-owned styling parts.\n */\nexport const DialogImplementation = ({\n title,\n subtitle,\n placement = 'center',\n closeIcon,\n visible = true,\n onClose,\n onConfirm,\n onCancel,\n buttons = DialogButtons.OkCancel,\n initialFocus = DialogInitialFocus.Confirm,\n children,\n width = '450px',\n style,\n contentStyle,\n isValid,\n isBusy = false,\n okLabel,\n cancelLabel,\n yesLabel,\n noLabel,\n closeAriaLabel,\n dismissable,\n className,\n pt,\n}: DialogProps) => {\n const overlayEnvironment = unstable_useOverlayEnvironment();\n const { messages } = useCratisComponentsConfig();\n const dialogMessages = messages?.dialog;\n const resolvedOkLabel = okLabel ?? dialogMessages?.ok ?? 'Ok';\n const resolvedCancelLabel = cancelLabel ?? dialogMessages?.cancel ?? 'Cancel';\n const resolvedYesLabel = yesLabel ?? dialogMessages?.yes ?? 'Yes';\n const resolvedNoLabel = noLabel ?? dialogMessages?.no ?? 'No';\n const resolvedCloseAriaLabel = closeAriaLabel ?? dialogMessages?.close ?? 'Close';\n const icon = useCratisIcon();\n const resolvedCloseIcon = icon('close', '×', closeIcon);\n let contextCloseDialog: ((result: DialogResult) => void) | undefined;\n try {\n const context = useDialogContext();\n contextCloseDialog = context?.closeDialog;\n } catch {\n contextCloseDialog = undefined;\n }\n\n const isBrowser = useIsBrowser();\n const subtitleId = useId();\n const hasSubtitle = subtitle !== undefined && subtitle !== null && subtitle !== false;\n const titleRef = useRef<HTMLHeadingElement>(null);\n const confirmRef = useRef<HTMLButtonElement>(null);\n const cancelRef = useRef<HTMLButtonElement>(null);\n\n const isDialogValid = isValid !== false;\n const hasDismissingButton =\n typeof buttons === 'number' && buttons !== DialogButtons.Ok;\n const resolvedInitialFocus =\n initialFocus === DialogInitialFocus.Cancel && !hasDismissingButton\n ? DialogInitialFocus.Content\n : initialFocus;\n const focusesConfirmButton = resolvedInitialFocus === DialogInitialFocus.Confirm;\n const focusesDismissingButton = resolvedInitialFocus === DialogInitialFocus.Cancel;\n const focusesTitle = resolvedInitialFocus === DialogInitialFocus.Content;\n const allowsDismissal = dismissable ?? typeof buttons === 'number';\n const isDismissable = allowsDismissal && !isBusy;\n\n // Assigns this dialog a strictly increasing tier for as long as it is visible, so a second\n // dialog opened while this one is still open - from anywhere, not necessarily as a React\n // child of this one - stacks above it rather than colliding on the same static z-index.\n const [dialogTier, setDialogTier] = useState<number | null>(null);\n useLayoutEffect(() => {\n if (!visible) {\n setDialogTier(null);\n return;\n }\n const tier = openDialogTier();\n setDialogTier(tier);\n return () => closeDialogTier(tier);\n }, [visible]);\n const resolvedZIndex = dialogTier === null ? undefined : dialogZIndexForTier(dialogTier);\n\n useEffect(() => {\n if (!visible) return;\n const target = focusesConfirmButton\n ? confirmRef.current\n : focusesDismissingButton\n ? cancelRef.current\n : titleRef.current;\n const frame = requestAnimationFrame(() => target?.focus());\n return () => cancelAnimationFrame(frame);\n }, [focusesConfirmButton, focusesDismissingButton, visible]);\n\n const handleClose = async (result: DialogResult) => {\n let shouldCloseThroughContext = true;\n\n if (result === DialogResult.Ok || result === DialogResult.Yes) {\n if (onConfirm) {\n const closeResult = await onConfirm();\n shouldCloseThroughContext = closeResult === true;\n } else if (onClose) {\n const closeResult = await onClose(result);\n shouldCloseThroughContext = closeResult !== false;\n }\n } else if (onCancel) {\n const closeResult = await onCancel();\n shouldCloseThroughContext = closeResult === true;\n } else if (onClose) {\n const closeResult = await onClose(result);\n shouldCloseThroughContext = closeResult !== false;\n }\n\n if (shouldCloseThroughContext) contextCloseDialog?.(result);\n };\n\n const footerButton = (\n result: DialogResult,\n label: string,\n primary: boolean,\n focused: boolean,\n ) => (\n <button\n key={`${result}-${label}`}\n {...(primary ? pt?.confirm : pt?.cancel)}\n type='button'\n className={classNames(\n 'cratis-dialog__button',\n primary\n ? 'cratis-dialog__button--primary'\n : 'cratis-dialog__button--secondary',\n primary ? pt?.confirm?.className : pt?.cancel?.className,\n )}\n data-cratis-part={primary ? 'confirm' : 'cancel'}\n data-disabled={(primary ? !isDialogValid || isBusy : isBusy) || undefined}\n data-busy={isBusy || undefined}\n ref={primary ? confirmRef : focused ? cancelRef : undefined}\n onClick={() => void handleClose(result)}\n disabled={primary ? !isDialogValid || isBusy : isBusy}\n autoFocus={focused}\n aria-busy={primary && isBusy ? true : undefined}\n >\n {primary && isBusy && (\n <span className='cratis-dialog__spinner' aria-hidden='true' />\n )}\n <span>{label}</span>\n </button>\n );\n\n const predefinedFooter = () => {\n if (typeof buttons !== 'number') return buttons;\n\n switch (buttons) {\n case DialogButtons.Ok:\n return footerButton(\n DialogResult.Ok,\n resolvedOkLabel,\n true,\n focusesConfirmButton,\n );\n case DialogButtons.OkCancel:\n return (\n <>\n {footerButton(\n DialogResult.Ok,\n resolvedOkLabel,\n true,\n focusesConfirmButton,\n )}\n {footerButton(\n DialogResult.Cancelled,\n resolvedCancelLabel,\n false,\n focusesDismissingButton,\n )}\n </>\n );\n case DialogButtons.YesNo:\n return (\n <>\n {footerButton(\n DialogResult.Yes,\n resolvedYesLabel,\n true,\n focusesConfirmButton,\n )}\n {footerButton(\n DialogResult.No,\n resolvedNoLabel,\n false,\n focusesDismissingButton,\n )}\n </>\n );\n case DialogButtons.YesNoCancel:\n return (\n <>\n {footerButton(\n DialogResult.Yes,\n resolvedYesLabel,\n true,\n focusesConfirmButton,\n )}\n {footerButton(DialogResult.No, resolvedNoLabel, false, false)}\n {footerButton(\n DialogResult.Cancelled,\n resolvedCancelLabel,\n false,\n focusesDismissingButton,\n )}\n </>\n );\n default:\n return null;\n }\n };\n\n const dialogDocument = (\n <DialogStackContext.Provider value={resolvedZIndex ?? DIALOG_ZINDEX_TOKEN}>\n <AriaDialog\n className='cratis-dialog__document'\n aria-describedby={hasSubtitle ? subtitleId : undefined}\n >\n <>\n <header\n {...pt?.header}\n className={classNames('cratis-dialog__header', pt?.header?.className)}\n style={pt?.header?.style}\n data-cratis-part='header'\n >\n <Heading\n {...pt?.title}\n slot='title'\n tabIndex={focusesTitle ? -1 : undefined}\n ref={titleRef}\n className={classNames(\n 'cratis-dialog__title',\n pt?.title?.className,\n )}\n style={pt?.title?.style}\n data-cratis-part='title'\n >\n {title}\n </Heading>\n {hasSubtitle && (\n <p\n {...pt?.subtitle}\n id={subtitleId}\n className={classNames(\n 'cratis-dialog__subtitle',\n pt?.subtitle?.className,\n )}\n style={pt?.subtitle?.style}\n data-cratis-part='subtitle'\n >\n {subtitle}\n </p>\n )}\n {allowsDismissal && (\n <button\n {...pt?.close}\n type='button'\n disabled={isBusy}\n className={classNames(\n 'cratis-dialog__close',\n pt?.close?.className,\n )}\n data-cratis-part='close'\n data-disabled={isBusy || undefined}\n data-busy={isBusy || undefined}\n aria-label={resolvedCloseAriaLabel}\n onClick={() => void handleClose(DialogResult.Cancelled)}\n >\n <span aria-hidden='true'>{resolvedCloseIcon}</span>\n </button>\n )}\n </header>\n <div\n {...pt?.content}\n className={classNames(\n 'cratis-dialog__content',\n pt?.content?.className,\n )}\n style={{ ...pt?.content?.style, ...contentStyle }}\n data-cratis-part='content'\n data-open={visible || undefined}\n data-busy={isBusy || undefined}\n >\n <fieldset\n className='cratis-dialog__busy-scope'\n data-cratis-part='busy-scope'\n data-busy={isBusy || undefined}\n disabled={isBusy}\n inert={isBusy}\n aria-busy={isBusy || undefined}\n >\n {children}\n </fieldset>\n </div>\n {buttons !== null && (\n <footer\n {...pt?.footer}\n className={classNames(\n 'cratis-dialog__footer',\n pt?.footer?.className,\n )}\n style={pt?.footer?.style}\n data-cratis-part='footer'\n >\n <fieldset\n className='cratis-dialog__busy-scope cratis-dialog__busy-scope--footer'\n data-cratis-part='busy-scope'\n data-busy={isBusy || undefined}\n disabled={isBusy}\n inert={isBusy}\n aria-busy={isBusy || undefined}\n >\n {predefinedFooter()}\n </fieldset>\n </footer>\n )}\n </>\n </AriaDialog>\n </DialogStackContext.Provider>\n );\n\n const dialogStyle = { width, ...pt?.root?.style, ...style };\n\n // useSyncExternalStore supplies the server snapshot during hydration, so this\n // fallback is identical on the server and on the client's first render. React\n // switches to the portaled React Aria modal only after hydration completes.\n if (!isBrowser) {\n if (!visible) return null;\n return (\n <div\n {...pt?.backdrop}\n className={classNames('cratis-dialog__backdrop', pt?.backdrop?.className)}\n style={{\n zIndex: resolvedZIndex ?? DIALOG_ZINDEX_TOKEN,\n ...pt?.backdrop?.style,\n }}\n data-cratis-part='backdrop'\n data-placement={placement}\n data-open={visible || undefined}\n data-busy={isBusy || undefined}\n >\n <div\n {...pt?.positioner}\n className={classNames(\n 'cratis-dialog__positioner',\n pt?.positioner?.className,\n )}\n style={pt?.positioner?.style}\n data-cratis-part='positioner'\n data-placement={placement}\n data-open={visible || undefined}\n data-busy={isBusy || undefined}\n >\n <section\n {...pt?.root}\n className={classNames(\n 'cratis-dialog',\n pt?.root?.className,\n className,\n )}\n style={dialogStyle}\n data-cratis-part='root'\n data-placement={placement}\n data-open={visible || undefined}\n data-busy={isBusy || undefined}\n >\n {dialogDocument}\n </section>\n </div>\n </div>\n );\n }\n\n return (\n <UNSAFE_PortalProvider getContainer={overlayEnvironment.getContainer}>\n <ModalOverlay\n {...pt?.backdrop}\n isOpen={visible}\n onOpenChange={(open) => {\n if (!open && !isBusy) void handleClose(DialogResult.Cancelled);\n }}\n isDismissable={isDismissable}\n isKeyboardDismissDisabled={!isDismissable}\n className={classNames('cratis-dialog__backdrop', pt?.backdrop?.className)}\n style={{\n zIndex: resolvedZIndex ?? DIALOG_ZINDEX_TOKEN,\n ...pt?.backdrop?.style,\n }}\n data-cratis-part='backdrop'\n data-placement={placement}\n data-open={visible || undefined}\n data-busy={isBusy || undefined}\n >\n <div\n {...pt?.positioner}\n className={classNames(\n 'cratis-dialog__positioner',\n pt?.positioner?.className,\n )}\n style={pt?.positioner?.style}\n data-cratis-part='positioner'\n data-placement={placement}\n data-open={visible || undefined}\n data-busy={isBusy || undefined}\n >\n <Modal\n {...pt?.root}\n className={classNames(\n 'cratis-dialog',\n pt?.root?.className,\n className,\n )}\n style={dialogStyle}\n data-cratis-part='root'\n data-placement={placement}\n data-open={visible || undefined}\n data-busy={isBusy || undefined}\n >\n {dialogDocument}\n </Modal>\n </div>\n </ModalOverlay>\n </UNSAFE_PortalProvider>\n );\n};\n"],"names":["_jsxs","_jsx","_Fragment","AriaDialog"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DialogInitialFocus.js","sources":["../../../Dialogs/DialogInitialFocus.ts"],"sourcesContent":[
|
|
1
|
+
{"version":3,"file":"DialogInitialFocus.js","sources":["../../../Dialogs/DialogInitialFocus.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 * Defines where keyboard focus lands when a dialog becomes visible.\n *\n * A modal must move focus into itself when it opens — leaving focus on\n * `document.body` strands keyboard and screen-reader users outside the\n * content they were just interrupted with. Every member of this enum\n * therefore names a real element inside the dialog; there is deliberately\n * no \"focus nothing\" member.\n */\nexport enum DialogInitialFocus {\n\n /**\n * Focus the confirming button (`Ok` / `Yes`). This is the default and\n * the fastest path for a dialog whose expected answer is \"go ahead\".\n *\n * ⚠️ It also *arms* that button: a browser fires `click` on a native\n * button from the `keydown` of `Enter` or `Space`, so a held key or a\n * second press of the key that opened the dialog confirms it. For a\n * destructive action that needs no input to become valid, prefer\n * {@link DialogInitialFocus.Cancel} or {@link DialogInitialFocus.Content}.\n */\n Confirm = 1,\n\n /**\n * Focus the dismissing button — `Cancel` when the button set has one,\n * otherwise `No`. This is the least destructive action, which is what\n * the WAI-ARIA authoring practices recommend focusing for a dialog that\n * confirms something irreversible.\n *\n * Falls back to {@link DialogInitialFocus.Content} when the button set\n * has no dismissing button (`DialogButtons.Ok`), when the footer is a\n * custom `ReactNode`, or when there is no footer at all.\n */\n Cancel = 2,\n\n /**\n * Focus the dialog's own title instead of any button, so nothing is\n * armed. Screen readers announce the dialog and its title, and the\n * first `Tab` walks the content from the top.\n *\n * This is the right choice for a dialog that should be *read* before it\n * is answered, and the only sensible choice for a dialog with no footer\n * buttons at all.\n */\n Content = 3\n}\n"],"names":[],"mappings":"IAYY;AAAZ,CAAA,UAAY,kBAAkB,EAAA;AAY1B,IAAA,kBAAA,CAAA,kBAAA,CAAA,SAAA,CAAA,GAAA,CAAA,CAAA,GAAA,SAAW;AAYX,IAAA,kBAAA,CAAA,kBAAA,CAAA,QAAA,CAAA,GAAA,CAAA,CAAA,GAAA,QAAU;AAWV,IAAA,kBAAA,CAAA,kBAAA,CAAA,SAAA,CAAA,GAAA,CAAA,CAAA,GAAA,SAAW;AACf,CAAC,EApCW,kBAAkB,KAAlB,kBAAkB,GAAA,EAAA,CAAA,CAAA;;"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../Dialogs/index.ts"],"names":[],"mappings":"AAGA,cAAc,0BAAuB,CAAC;AACtC,cAAc,yBAAsB,CAAC;AACrC,cAAc,aAAU,CAAC;AACzB,cAAc,yBAAsB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Avatar.js","sources":["../../../Display/Avatar.tsx"],"sourcesContent":[
|
|
1
|
+
{"version":3,"file":"Avatar.js","sources":["../../../Display/Avatar.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 type { ReactNode } from 'react';\n\n/** Props for {@link Avatar}. */\nexport interface AvatarProps {\n /** Image URL. When present, the image is shown; otherwise the label/icon fallback is used. */\n image?: string;\n /** Text fallback (e.g. initials) shown when no image is available. */\n label?: string;\n /** Icon fallback shown when no image/label is available. */\n icon?: ReactNode;\n /** Alt text for the image. */\n alt?: string;\n /** Avatar size. */\n size?: 'normal' | 'large' | 'xlarge';\n /** Extra class name. */\n className?: string;\n}\n\n/** A user or entity avatar with an image and text/icon fallback. */\nexport const Avatar = ({\n image,\n label,\n icon,\n alt = '',\n size = 'normal',\n className,\n}: AvatarProps) => (\n <span\n className={['cratis-avatar', className].filter(Boolean).join(' ')}\n data-cratis-part='root'\n data-size={size}\n >\n {image ? (\n <img\n className='cratis-avatar__image'\n data-cratis-part='image'\n src={image}\n alt={alt}\n />\n ) : (\n <span\n className='cratis-avatar__fallback'\n data-cratis-part='fallback'\n aria-hidden={!label}\n >\n {icon ?? label}\n </span>\n )}\n </span>\n);\n"],"names":["_jsx"],"mappings":";;AAsBO,MAAM,MAAM,GAAG,CAAC,EACnB,KAAK,EACL,KAAK,EACL,IAAI,EACJ,GAAG,GAAG,EAAE,EACR,IAAI,GAAG,QAAQ,EACf,SAAS,GACC,MACVA,GAAA,CAAA,MAAA,EAAA,EACI,SAAS,EAAE,CAAC,eAAe,EAAE,SAAS,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAAA,kBAAA,EAChD,MAAM,EAAA,WAAA,EACZ,IAAI,YAEd,KAAK,IACFA,aACI,SAAS,EAAC,sBAAsB,EAAA,kBAAA,EACf,OAAO,EACxB,GAAG,EAAE,KAAK,EACV,GAAG,EAAE,GAAG,EAAA,CACV,KAEFA,GAAA,CAAA,MAAA,EAAA,EACI,SAAS,EAAC,yBAAyB,sBAClB,UAAU,EAAA,aAAA,EACd,CAAC,KAAK,EAAA,QAAA,EAElB,IAAI,IAAI,KAAK,GACX,CACV,EAAA,CACE;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Badge.js","sources":["../../../Display/Badge.tsx"],"sourcesContent":[
|
|
1
|
+
{"version":3,"file":"Badge.js","sources":["../../../Display/Badge.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 type { ReactNode } from 'react';\n\n/** Severity tone of a {@link Badge}. */\nexport type BadgeSeverity =\n 'secondary' | 'info' | 'success' | 'warn' | 'danger' | 'contrast';\n\n/** Props for {@link Badge}. */\nexport interface BadgeProps {\n /** The value shown inside the badge (e.g. a count). */\n value?: ReactNode;\n /** Severity tone (drives the color). */\n severity?: BadgeSeverity;\n /** Badge size. */\n size?: 'small' | 'large' | 'xlarge';\n /** When `circle`, renders as a dot/circle badge. */\n shape?: 'circle';\n /** Extra class name. */\n className?: string;\n /** Badge content (alternative to {@link value}). */\n children?: ReactNode;\n}\n\n/** A compact count or status badge. */\nexport const Badge = ({\n value,\n severity = 'secondary',\n size = 'small',\n shape,\n className,\n children,\n}: BadgeProps) => (\n <span\n className={['cratis-badge', className].filter(Boolean).join(' ')}\n data-cratis-part='root'\n data-severity={severity}\n data-size={size}\n data-shape={shape}\n >\n {value ?? children}\n </span>\n);\n"],"names":["_jsx"],"mappings":";;AA0BO,MAAM,KAAK,GAAG,CAAC,EAClB,KAAK,EACL,QAAQ,GAAG,WAAW,EACtB,IAAI,GAAG,OAAO,EACd,KAAK,EACL,SAAS,EACT,QAAQ,GACC,MACTA,GAAA,CAAA,MAAA,EAAA,EACI,SAAS,EAAE,CAAC,cAAc,EAAE,SAAS,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAAA,kBAAA,EAC/C,MAAM,EAAA,eAAA,EACR,QAAQ,EAAA,WAAA,EACZ,IAAI,EAAA,YAAA,EACH,KAAK,EAAA,QAAA,EAEhB,KAAK,IAAI,QAAQ,EAAA,CACf;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Chip.js","sources":["../../../Display/Chip.tsx"],"sourcesContent":[
|
|
1
|
+
{"version":3,"file":"Chip.js","sources":["../../../Display/Chip.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 type { ReactNode } from 'react';\nimport { useCratisIcon } from '../configuration/useCratisIcon';\n\n/** Props for {@link Chip}. */\nexport interface ChipProps {\n /** The chip label. */\n label?: string;\n /** An icon rendered before the label. */\n icon?: ReactNode;\n /** When true, shows a remove control. */\n removable?: boolean;\n /** Invoked when the remove control is activated. */\n onRemove?: () => void;\n /** Accessible name for the remove control. Override to localize. Defaults to `'Remove'`. */\n removeAriaLabel?: string;\n /** Extra class name. */\n className?: string;\n}\n\n/** A labeled, optionally removable chip. */\nexport const Chip = ({\n label,\n icon,\n removable,\n onRemove,\n removeAriaLabel = 'Remove',\n className,\n}: ChipProps) => {\n const resolveIcon = useCratisIcon();\n return (\n <span\n className={['cratis-chip', className].filter(Boolean).join(' ')}\n data-cratis-part='root'\n >\n {icon && (\n <span className='cratis-chip__icon' data-cratis-part='icon'>\n {icon}\n </span>\n )}\n <span className='cratis-chip__label' data-cratis-part='label'>\n {label}\n </span>\n {removable && (\n <button\n type='button'\n className='cratis-chip__remove'\n data-cratis-part='remove'\n onClick={onRemove}\n aria-label={removeAriaLabel}\n >\n <span aria-hidden='true'>{resolveIcon('remove', '×')}</span>\n </button>\n )}\n </span>\n );\n};\n"],"names":["_jsxs","_jsx"],"mappings":";;;MAuBa,IAAI,GAAG,CAAC,EACjB,KAAK,EACL,IAAI,EACJ,SAAS,EACT,QAAQ,EACR,eAAe,GAAG,QAAQ,EAC1B,SAAS,GACD,KAAI;AACZ,IAAA,MAAM,WAAW,GAAG,aAAa,EAAE;AACnC,IAAA,QACIA,IAAA,CAAA,MAAA,EAAA,EACI,SAAS,EAAE,CAAC,aAAa,EAAE,SAAS,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAAA,kBAAA,EAC9C,MAAM,aAEtB,IAAI,KACDC,GAAA,CAAA,MAAA,EAAA,EAAM,SAAS,EAAC,mBAAmB,EAAA,kBAAA,EAAkB,MAAM,YACtD,IAAI,EAAA,CACF,CACV,EACDA,GAAA,CAAA,MAAA,EAAA,EAAM,SAAS,EAAC,oBAAoB,EAAA,kBAAA,EAAkB,OAAO,YACxD,KAAK,EAAA,CACH,EACN,SAAS,KACNA,GAAA,CAAA,QAAA,EAAA,EACI,IAAI,EAAC,QAAQ,EACb,SAAS,EAAC,qBAAqB,EAAA,kBAAA,EACd,QAAQ,EACzB,OAAO,EAAE,QAAQ,gBACL,eAAe,EAAA,QAAA,EAE3BA,GAAA,CAAA,MAAA,EAAA,EAAA,aAAA,EAAkB,MAAM,YAAE,WAAW,CAAC,QAAQ,EAAE,GAAG,CAAC,EAAA,CAAQ,GACvD,CACZ,CAAA,EAAA,CACE;AAEf;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Message.js","sources":["../../../Display/Message.tsx"],"sourcesContent":[
|
|
1
|
+
{"version":3,"file":"Message.js","sources":["../../../Display/Message.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 type { ReactNode } from 'react';\n\n/** Severity tone of a {@link Message}. */\nexport type MessageSeverity =\n 'info' | 'success' | 'warn' | 'error' | 'secondary' | 'contrast';\n\n/** Props for {@link Message}. */\nexport interface MessageProps {\n /** Severity tone (drives the color). */\n severity?: MessageSeverity;\n /** The message text. */\n text?: ReactNode;\n /** Message content (alternative to {@link text}). */\n children?: ReactNode;\n /** Extra class name applied to the message root. */\n className?: string;\n /** The icon shown ahead of the text. Pass `false` for no icon. */\n icon?: ReactNode | false;\n}\n\nconst severitySymbols: Record<MessageSeverity, string> = {\n info: 'ⓘ',\n success: '✓',\n warn: '⚠',\n error: '⨯',\n secondary: 'ⓘ',\n contrast: 'ⓘ',\n};\n\n/** A declarative inline status message. */\nexport const Message = ({\n severity = 'info',\n text,\n children,\n className,\n icon,\n}: MessageProps) => (\n <div\n className={['cratis-message', className].filter(Boolean).join(' ')}\n data-cratis-part='root'\n data-severity={severity}\n role={severity === 'error' ? 'alert' : 'status'}\n >\n {icon !== false && (\n <span\n className='cratis-message__icon'\n data-cratis-part='icon'\n aria-hidden='true'\n >\n {icon ?? severitySymbols[severity]}\n </span>\n )}\n <span className='cratis-message__text' data-cratis-part='text'>\n {children ?? text}\n </span>\n </div>\n);\n"],"names":["_jsxs","_jsx"],"mappings":";;AAuBA,MAAM,eAAe,GAAoC;AACrD,IAAA,IAAI,EAAE,GAAG;AACT,IAAA,OAAO,EAAE,GAAG;AACZ,IAAA,IAAI,EAAE,GAAG;AACT,IAAA,KAAK,EAAE,GAAG;AACV,IAAA,SAAS,EAAE,GAAG;AACd,IAAA,QAAQ,EAAE,GAAG;CAChB;MAGY,OAAO,GAAG,CAAC,EACpB,QAAQ,GAAG,MAAM,EACjB,IAAI,EACJ,QAAQ,EACR,SAAS,EACT,IAAI,GACO,MACXA,cACI,SAAS,EAAE,CAAC,gBAAgB,EAAE,SAAS,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,sBACjD,MAAM,EAAA,eAAA,EACR,QAAQ,EACvB,IAAI,EAAE,QAAQ,KAAK,OAAO,GAAG,OAAO,GAAG,QAAQ,EAAA,QAAA,EAAA,CAE9C,IAAI,KAAK,KAAK,KACXC,GAAA,CAAA,MAAA,EAAA,EACI,SAAS,EAAC,sBAAsB,EAAA,kBAAA,EACf,MAAM,EAAA,aAAA,EACX,MAAM,YAEjB,IAAI,IAAI,eAAe,CAAC,QAAQ,CAAC,EAAA,CAC/B,CACV,EACDA,GAAA,CAAA,MAAA,EAAA,EAAM,SAAS,EAAC,sBAAsB,EAAA,kBAAA,EAAkB,MAAM,EAAA,QAAA,EACzD,QAAQ,IAAI,IAAI,EAAA,CACd,CAAA,EAAA,CACL;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ProgressBar.js","sources":["../../../Display/ProgressBar.tsx"],"sourcesContent":[
|
|
1
|
+
{"version":3,"file":"ProgressBar.js","sources":["../../../Display/ProgressBar.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 { unstable_useSlot } from '../renderer/RendererContext';\nimport { renderSlot } from '../renderer/renderSlot';\nimport type { unstable_SlotDeclaration } from '../renderer/slots';\nimport { ProgressBarImplementation } from './ProgressBarImplementation';\n\n/** Props for {@link ProgressBar}. */\nexport interface ProgressBarProps {\n /** Completion value, 0–100. Ignored in `indeterminate` mode. */\n value?: number;\n /** `determinate` (default) shows {@link value}; `indeterminate` shows a looping animation. */\n mode?: 'determinate' | 'indeterminate';\n /** Whether to render the percentage label. Defaults to `true` (determinate only). */\n showValue?: boolean;\n /** Accessible name. Defaults to `'Progress'`; override to describe the operation. */\n 'aria-label'?: string;\n /** Identifies an external element that labels the progress indicator. */\n 'aria-labelledby'?: string;\n /** Extra class name. */\n className?: string;\n}\n\nconst coreProgressBarDeclaration = Object.freeze({\n mode: 'presentation',\n fidelity: 'native',\n render: ProgressBarImplementation,\n}) satisfies unstable_SlotDeclaration<'common.progress'>;\n\n/** A horizontal determinate or indeterminate progress indicator. */\nexport const ProgressBar = (props: ProgressBarProps) => {\n const declaration = unstable_useSlot(\n 'common.progress',\n coreProgressBarDeclaration,\n );\n return renderSlot(declaration, props);\n};\n"],"names":[],"mappings":";;;;AAwBA,MAAM,0BAA0B,GAAG,MAAM,CAAC,MAAM,CAAC;AAC7C,IAAA,IAAI,EAAE,cAAc;AACpB,IAAA,QAAQ,EAAE,QAAQ;AAClB,IAAA,MAAM,EAAE,yBAAyB;AACpC,CAAA,CAAuD;AAGjD,MAAM,WAAW,GAAG,CAAC,KAAuB,KAAI;IACnD,MAAM,WAAW,GAAG,gBAAgB,CAChC,iBAAiB,EACjB,0BAA0B,CAC7B;AACD,IAAA,OAAO,UAAU,CAAC,WAAW,EAAE,KAAK,CAAC;AACzC;;"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
1
|
import type { ProgressBarProps } from './ProgressBar.js';
|
|
2
2
|
/** Core implementation for the progress-bar presentation slot. */
|
|
3
3
|
export declare const ProgressBarImplementation: ({ value, mode, showValue, 'aria-label': ariaLabel, 'aria-labelledby': ariaLabelledBy, className, }: ProgressBarProps) => import("react").JSX.Element;
|
|
4
|
+
//# sourceMappingURL=ProgressBarImplementation.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ProgressBarImplementation.d.ts","sourceRoot":"","sources":["../../../Display/ProgressBarImplementation.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,kBAAe,CAAC;AAEtD,kEAAkE;AAClE,eAAO,MAAM,yBAAyB,uGAOnC,gBAAgB,gCAgClB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ProgressBarImplementation.js","sources":["../../../Display/ProgressBarImplementation.tsx"],"sourcesContent":[
|
|
1
|
+
{"version":3,"file":"ProgressBarImplementation.js","sources":["../../../Display/ProgressBarImplementation.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 type { ProgressBarProps } from './ProgressBar';\n\n/** Core implementation for the progress-bar presentation slot. */\nexport const ProgressBarImplementation = ({\n value = 0,\n mode = 'determinate',\n showValue = true,\n 'aria-label': ariaLabel = 'Progress',\n 'aria-labelledby': ariaLabelledBy,\n className,\n}: ProgressBarProps) => {\n const boundedValue = Math.min(100, Math.max(0, value));\n const ariaValue = mode === 'determinate' ? boundedValue : undefined;\n const isBusy = mode === 'indeterminate' || boundedValue < 100;\n\n return (\n <div\n className={['cratis-progress-bar', className].filter(Boolean).join(' ')}\n data-cratis-part='root'\n data-mode={mode}\n data-busy={isBusy || undefined}\n data-loading={mode === 'indeterminate' || undefined}\n role='progressbar'\n aria-label={ariaLabelledBy ? undefined : ariaLabel}\n aria-labelledby={ariaLabelledBy}\n aria-valuemin={mode === 'determinate' ? 0 : undefined}\n aria-valuemax={mode === 'determinate' ? 100 : undefined}\n aria-valuenow={ariaValue}\n >\n <span\n className='cratis-progress-bar__indicator'\n data-cratis-part='indicator'\n style={mode === 'determinate' ? { width: `${boundedValue}%` } : undefined}\n >\n {showValue && mode === 'determinate' && (\n <span className='cratis-progress-bar__label' data-cratis-part='label'>\n {boundedValue}%\n </span>\n )}\n </span>\n </div>\n );\n};\n"],"names":["_jsx","_jsxs"],"mappings":";;AAMO,MAAM,yBAAyB,GAAG,CAAC,EACtC,KAAK,GAAG,CAAC,EACT,IAAI,GAAG,aAAa,EACpB,SAAS,GAAG,IAAI,EAChB,YAAY,EAAE,SAAS,GAAG,UAAU,EACpC,iBAAiB,EAAE,cAAc,EACjC,SAAS,GACM,KAAI;AACnB,IAAA,MAAM,YAAY,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;AACtD,IAAA,MAAM,SAAS,GAAG,IAAI,KAAK,aAAa,GAAG,YAAY,GAAG,SAAS;IACnE,MAAM,MAAM,GAAG,IAAI,KAAK,eAAe,IAAI,YAAY,GAAG,GAAG;IAE7D,QACIA,GAAA,CAAA,KAAA,EAAA,EACI,SAAS,EAAE,CAAC,qBAAqB,EAAE,SAAS,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAAA,kBAAA,EACtD,MAAM,EAAA,WAAA,EACZ,IAAI,EAAA,WAAA,EACJ,MAAM,IAAI,SAAS,EAAA,cAAA,EAChB,IAAI,KAAK,eAAe,IAAI,SAAS,EACnD,IAAI,EAAC,aAAa,EAAA,YAAA,EACN,cAAc,GAAG,SAAS,GAAG,SAAS,EAAA,iBAAA,EACjC,cAAc,EAAA,eAAA,EAChB,IAAI,KAAK,aAAa,GAAG,CAAC,GAAG,SAAS,EAAA,eAAA,EACtC,IAAI,KAAK,aAAa,GAAG,GAAG,GAAG,SAAS,EAAA,eAAA,EACxC,SAAS,EAAA,QAAA,EAExBA,GAAA,CAAA,MAAA,EAAA,EACI,SAAS,EAAC,gCAAgC,EAAA,kBAAA,EACzB,WAAW,EAC5B,KAAK,EAAE,IAAI,KAAK,aAAa,GAAG,EAAE,KAAK,EAAE,CAAA,EAAG,YAAY,CAAA,CAAA,CAAG,EAAE,GAAG,SAAS,EAAA,QAAA,EAExE,SAAS,IAAI,IAAI,KAAK,aAAa,KAChCC,IAAA,CAAA,MAAA,EAAA,EAAM,SAAS,EAAC,4BAA4B,EAAA,kBAAA,EAAkB,OAAO,EAAA,QAAA,EAAA,CAChE,YAAY,EAAA,GAAA,CAAA,EAAA,CACV,CACV,EAAA,CACE,EAAA,CACL;AAEd;;"}
|