@cratis/components 3.4.0 → 3.5.1
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/README.md +148 -98
- package/dist/esm/Canvas/Canvas.d.ts +67 -0
- package/dist/esm/Canvas/Canvas.d.ts.map +1 -0
- package/dist/esm/Canvas/Canvas.js +767 -0
- package/dist/esm/Canvas/Canvas.js.map +1 -0
- package/dist/esm/Canvas/CanvasControls.d.ts +32 -0
- package/dist/esm/Canvas/CanvasControls.d.ts.map +1 -0
- package/dist/esm/Canvas/CanvasControls.js +34 -0
- package/dist/esm/Canvas/CanvasControls.js.map +1 -0
- package/dist/esm/Canvas/CanvasItem.d.ts +10 -0
- package/dist/esm/Canvas/CanvasItem.d.ts.map +1 -0
- package/dist/esm/Canvas/CanvasItem.js +51 -0
- package/dist/esm/Canvas/CanvasItem.js.map +1 -0
- package/dist/esm/Canvas/CanvasMinimap.d.ts +25 -0
- package/dist/esm/Canvas/CanvasMinimap.d.ts.map +1 -0
- package/dist/esm/Canvas/CanvasMinimap.js +102 -0
- package/dist/esm/Canvas/CanvasMinimap.js.map +1 -0
- package/dist/esm/Canvas/CanvasOverlay.d.ts +6 -0
- package/dist/esm/Canvas/CanvasOverlay.d.ts.map +1 -0
- package/dist/esm/Canvas/CanvasOverlay.js +8 -0
- package/dist/esm/Canvas/CanvasOverlay.js.map +1 -0
- package/dist/esm/Canvas/canvasGesture.d.ts +8 -0
- package/dist/esm/Canvas/canvasGesture.d.ts.map +1 -0
- package/dist/esm/Canvas/canvasGesture.js +32 -0
- package/dist/esm/Canvas/canvasGesture.js.map +1 -0
- package/dist/esm/Canvas/canvasTransformActivity.d.ts +7 -0
- package/dist/esm/Canvas/canvasTransformActivity.d.ts.map +1 -0
- package/dist/esm/Canvas/canvasTransformActivity.js +22 -0
- package/dist/esm/Canvas/canvasTransformActivity.js.map +1 -0
- package/dist/esm/Canvas/glassAttributes.d.ts +4 -0
- package/dist/esm/Canvas/glassAttributes.d.ts.map +1 -0
- package/dist/esm/Canvas/glassAttributes.js +25 -0
- package/dist/esm/Canvas/glassAttributes.js.map +1 -0
- package/dist/esm/Canvas/index.d.ts +18 -0
- package/dist/esm/Canvas/index.d.ts.map +1 -0
- package/dist/esm/Canvas/index.js +38 -0
- package/dist/esm/Canvas/index.js.map +1 -0
- package/dist/esm/Canvas/isBackgroundPointerTarget.d.ts +2 -0
- package/dist/esm/Canvas/isBackgroundPointerTarget.d.ts.map +1 -0
- package/dist/esm/Canvas/isBackgroundPointerTarget.js +17 -0
- package/dist/esm/Canvas/isBackgroundPointerTarget.js.map +1 -0
- package/dist/esm/Canvas/isWithinScrollableContent.d.ts +11 -0
- package/dist/esm/Canvas/isWithinScrollableContent.d.ts.map +1 -0
- package/dist/esm/Canvas/isWithinScrollableContent.js +38 -0
- package/dist/esm/Canvas/isWithinScrollableContent.js.map +1 -0
- package/dist/esm/Canvas/panMomentum.d.ts +13 -0
- package/dist/esm/Canvas/panMomentum.d.ts.map +1 -0
- package/dist/esm/Canvas/panMomentum.js +41 -0
- package/dist/esm/Canvas/panMomentum.js.map +1 -0
- package/dist/esm/Canvas/pinchGesture.d.ts +16 -0
- package/dist/esm/Canvas/pinchGesture.d.ts.map +1 -0
- package/dist/esm/Canvas/pinchGesture.js +30 -0
- package/dist/esm/Canvas/pinchGesture.js.map +1 -0
- package/dist/esm/Canvas/selfSuspendingFrameLoop.d.ts +10 -0
- package/dist/esm/Canvas/selfSuspendingFrameLoop.d.ts.map +1 -0
- package/dist/esm/Canvas/selfSuspendingFrameLoop.js +33 -0
- package/dist/esm/Canvas/selfSuspendingFrameLoop.js.map +1 -0
- package/dist/esm/Canvas/shapes/ChatBubble/AnchoredOverlay.d.ts +13 -0
- package/dist/esm/Canvas/shapes/ChatBubble/AnchoredOverlay.d.ts.map +1 -0
- package/dist/esm/Canvas/shapes/ChatBubble/AnchoredOverlay.js +61 -0
- package/dist/esm/Canvas/shapes/ChatBubble/AnchoredOverlay.js.map +1 -0
- package/dist/esm/Canvas/shapes/ChatBubble/Avatar/PersonAvatarCircle.d.ts +20 -0
- package/dist/esm/Canvas/shapes/ChatBubble/Avatar/PersonAvatarCircle.d.ts.map +1 -0
- package/dist/esm/Canvas/shapes/ChatBubble/Avatar/PersonAvatarCircle.js +27 -0
- package/dist/esm/Canvas/shapes/ChatBubble/Avatar/PersonAvatarCircle.js.map +1 -0
- package/dist/esm/Canvas/shapes/ChatBubble/Avatar/getAvatarColor.d.ts +2 -0
- package/dist/esm/Canvas/shapes/ChatBubble/Avatar/getAvatarColor.d.ts.map +1 -0
- package/dist/esm/Canvas/shapes/ChatBubble/Avatar/getAvatarColor.js +20 -0
- package/dist/esm/Canvas/shapes/ChatBubble/Avatar/getAvatarColor.js.map +1 -0
- package/dist/esm/Canvas/shapes/ChatBubble/Avatar/getInitials.d.ts +2 -0
- package/dist/esm/Canvas/shapes/ChatBubble/Avatar/getInitials.d.ts.map +1 -0
- package/dist/esm/Canvas/shapes/ChatBubble/Avatar/getInitials.js +11 -0
- package/dist/esm/Canvas/shapes/ChatBubble/Avatar/getInitials.js.map +1 -0
- package/dist/esm/Canvas/shapes/ChatBubble/Avatar/index.d.ts +5 -0
- package/dist/esm/Canvas/shapes/ChatBubble/Avatar/index.d.ts.map +1 -0
- package/dist/esm/Canvas/shapes/ChatBubble/Avatar/index.js +4 -0
- package/dist/esm/Canvas/shapes/ChatBubble/Avatar/index.js.map +1 -0
- package/dist/esm/Canvas/shapes/ChatBubble/Chat.d.ts +41 -0
- package/dist/esm/Canvas/shapes/ChatBubble/Chat.d.ts.map +1 -0
- package/dist/esm/Canvas/shapes/ChatBubble/Chat.js +76 -0
- package/dist/esm/Canvas/shapes/ChatBubble/Chat.js.map +1 -0
- package/dist/esm/Canvas/shapes/ChatBubble/ChatAuthorKind.d.ts +5 -0
- package/dist/esm/Canvas/shapes/ChatBubble/ChatAuthorKind.d.ts.map +1 -0
- package/dist/esm/Canvas/shapes/ChatBubble/ChatAuthorKind.js +14 -0
- package/dist/esm/Canvas/shapes/ChatBubble/ChatAuthorKind.js.map +1 -0
- package/dist/esm/Canvas/shapes/ChatBubble/ChatBubble.d.ts +18 -0
- package/dist/esm/Canvas/shapes/ChatBubble/ChatBubble.d.ts.map +1 -0
- package/dist/esm/Canvas/shapes/ChatBubble/ChatBubble.js +89 -0
- package/dist/esm/Canvas/shapes/ChatBubble/ChatBubble.js.map +1 -0
- package/dist/esm/Canvas/shapes/ChatBubble/ChatComposer.d.ts +23 -0
- package/dist/esm/Canvas/shapes/ChatBubble/ChatComposer.d.ts.map +1 -0
- package/dist/esm/Canvas/shapes/ChatBubble/ChatComposer.js +107 -0
- package/dist/esm/Canvas/shapes/ChatBubble/ChatComposer.js.map +1 -0
- package/dist/esm/Canvas/shapes/ChatBubble/ChatMessage.d.ts +17 -0
- package/dist/esm/Canvas/shapes/ChatBubble/ChatMessage.d.ts.map +1 -0
- package/dist/esm/Canvas/shapes/ChatBubble/ChatMessage.js +2 -0
- package/dist/esm/Canvas/shapes/ChatBubble/ChatMessage.js.map +1 -0
- package/dist/esm/Canvas/shapes/ChatBubble/ChatMessageBubble.d.ts +25 -0
- package/dist/esm/Canvas/shapes/ChatBubble/ChatMessageBubble.d.ts.map +1 -0
- package/dist/esm/Canvas/shapes/ChatBubble/ChatMessageBubble.js +31 -0
- package/dist/esm/Canvas/shapes/ChatBubble/ChatMessageBubble.js.map +1 -0
- package/dist/esm/Canvas/shapes/ChatBubble/ChatMessageReaction.d.ts +6 -0
- package/dist/esm/Canvas/shapes/ChatBubble/ChatMessageReaction.d.ts.map +1 -0
- package/dist/esm/Canvas/shapes/ChatBubble/ChatMessageReaction.js +2 -0
- package/dist/esm/Canvas/shapes/ChatBubble/ChatMessageReaction.js.map +1 -0
- package/dist/esm/Canvas/shapes/ChatBubble/ChatMessageReactionUser.d.ts +7 -0
- package/dist/esm/Canvas/shapes/ChatBubble/ChatMessageReactionUser.d.ts.map +1 -0
- package/dist/esm/Canvas/shapes/ChatBubble/ChatMessageReactionUser.js +2 -0
- package/dist/esm/Canvas/shapes/ChatBubble/ChatMessageReactionUser.js.map +1 -0
- package/dist/esm/Canvas/shapes/ChatBubble/ChatOwnReaction.d.ts +6 -0
- package/dist/esm/Canvas/shapes/ChatBubble/ChatOwnReaction.d.ts.map +1 -0
- package/dist/esm/Canvas/shapes/ChatBubble/ChatOwnReaction.js +2 -0
- package/dist/esm/Canvas/shapes/ChatBubble/ChatOwnReaction.js.map +1 -0
- package/dist/esm/Canvas/shapes/ChatBubble/ChatTypingAuthor.d.ts +8 -0
- package/dist/esm/Canvas/shapes/ChatBubble/ChatTypingAuthor.d.ts.map +1 -0
- package/dist/esm/Canvas/shapes/ChatBubble/ChatTypingAuthor.js +2 -0
- package/dist/esm/Canvas/shapes/ChatBubble/ChatTypingAuthor.js.map +1 -0
- package/dist/esm/Canvas/shapes/ChatBubble/ChatVariant.d.ts +5 -0
- package/dist/esm/Canvas/shapes/ChatBubble/ChatVariant.d.ts.map +1 -0
- package/dist/esm/Canvas/shapes/ChatBubble/ChatVariant.js +15 -0
- package/dist/esm/Canvas/shapes/ChatBubble/ChatVariant.js.map +1 -0
- package/dist/esm/Canvas/shapes/ChatBubble/Emoji/EmojiCategory.d.ts +6 -0
- package/dist/esm/Canvas/shapes/ChatBubble/Emoji/EmojiCategory.d.ts.map +1 -0
- package/dist/esm/Canvas/shapes/ChatBubble/Emoji/EmojiCategory.js +2 -0
- package/dist/esm/Canvas/shapes/ChatBubble/Emoji/EmojiCategory.js.map +1 -0
- package/dist/esm/Canvas/shapes/ChatBubble/Emoji/EmojiCategoryKey.d.ts +12 -0
- package/dist/esm/Canvas/shapes/ChatBubble/Emoji/EmojiCategoryKey.d.ts.map +1 -0
- package/dist/esm/Canvas/shapes/ChatBubble/Emoji/EmojiCategoryKey.js +18 -0
- package/dist/esm/Canvas/shapes/ChatBubble/Emoji/EmojiCategoryKey.js.map +1 -0
- package/dist/esm/Canvas/shapes/ChatBubble/Emoji/EmojiMemory.d.ts +5 -0
- package/dist/esm/Canvas/shapes/ChatBubble/Emoji/EmojiMemory.d.ts.map +1 -0
- package/dist/esm/Canvas/shapes/ChatBubble/Emoji/EmojiMemory.js +2 -0
- package/dist/esm/Canvas/shapes/ChatBubble/Emoji/EmojiMemory.js.map +1 -0
- package/dist/esm/Canvas/shapes/ChatBubble/Emoji/EmojiPicker.d.ts +14 -0
- package/dist/esm/Canvas/shapes/ChatBubble/Emoji/EmojiPicker.d.ts.map +1 -0
- package/dist/esm/Canvas/shapes/ChatBubble/Emoji/EmojiPicker.js +51 -0
- package/dist/esm/Canvas/shapes/ChatBubble/Emoji/EmojiPicker.js.map +1 -0
- package/dist/esm/Canvas/shapes/ChatBubble/Emoji/emojiCatalog.d.ts +3 -0
- package/dist/esm/Canvas/shapes/ChatBubble/Emoji/emojiCatalog.d.ts.map +1 -0
- package/dist/esm/Canvas/shapes/ChatBubble/Emoji/emojiCatalog.js +155 -0
- package/dist/esm/Canvas/shapes/ChatBubble/Emoji/emojiCatalog.js.map +1 -0
- package/dist/esm/Canvas/shapes/ChatBubble/Emoji/index.d.ts +7 -0
- package/dist/esm/Canvas/shapes/ChatBubble/Emoji/index.d.ts.map +1 -0
- package/dist/esm/Canvas/shapes/ChatBubble/Emoji/index.js +7 -0
- package/dist/esm/Canvas/shapes/ChatBubble/Emoji/index.js.map +1 -0
- package/dist/esm/Canvas/shapes/ChatBubble/Emoji/recentEmojis.d.ts +6 -0
- package/dist/esm/Canvas/shapes/ChatBubble/Emoji/recentEmojis.d.ts.map +1 -0
- package/dist/esm/Canvas/shapes/ChatBubble/Emoji/recentEmojis.js +59 -0
- package/dist/esm/Canvas/shapes/ChatBubble/Emoji/recentEmojis.js.map +1 -0
- package/dist/esm/Canvas/shapes/ChatBubble/FailedReply.d.ts +23 -0
- package/dist/esm/Canvas/shapes/ChatBubble/FailedReply.d.ts.map +1 -0
- package/dist/esm/Canvas/shapes/ChatBubble/FailedReply.js +28 -0
- package/dist/esm/Canvas/shapes/ChatBubble/FailedReply.js.map +1 -0
- package/dist/esm/Canvas/shapes/ChatBubble/Mentions/MentionCandidate.d.ts +9 -0
- package/dist/esm/Canvas/shapes/ChatBubble/Mentions/MentionCandidate.d.ts.map +1 -0
- package/dist/esm/Canvas/shapes/ChatBubble/Mentions/MentionCandidate.js +2 -0
- package/dist/esm/Canvas/shapes/ChatBubble/Mentions/MentionCandidate.js.map +1 -0
- package/dist/esm/Canvas/shapes/ChatBubble/Mentions/MentionQuery.d.ts +5 -0
- package/dist/esm/Canvas/shapes/ChatBubble/Mentions/MentionQuery.d.ts.map +1 -0
- package/dist/esm/Canvas/shapes/ChatBubble/Mentions/MentionQuery.js +2 -0
- package/dist/esm/Canvas/shapes/ChatBubble/Mentions/MentionQuery.js.map +1 -0
- package/dist/esm/Canvas/shapes/ChatBubble/Mentions/MentionSuggestions.d.ts +11 -0
- package/dist/esm/Canvas/shapes/ChatBubble/Mentions/MentionSuggestions.d.ts.map +1 -0
- package/dist/esm/Canvas/shapes/ChatBubble/Mentions/MentionSuggestions.js +14 -0
- package/dist/esm/Canvas/shapes/ChatBubble/Mentions/MentionSuggestions.js.map +1 -0
- package/dist/esm/Canvas/shapes/ChatBubble/Mentions/activeMentionQuery.d.ts +3 -0
- package/dist/esm/Canvas/shapes/ChatBubble/Mentions/activeMentionQuery.d.ts.map +1 -0
- package/dist/esm/Canvas/shapes/ChatBubble/Mentions/activeMentionQuery.js +34 -0
- package/dist/esm/Canvas/shapes/ChatBubble/Mentions/activeMentionQuery.js.map +1 -0
- package/dist/esm/Canvas/shapes/ChatBubble/Mentions/applyMention.d.ts +7 -0
- package/dist/esm/Canvas/shapes/ChatBubble/Mentions/applyMention.d.ts.map +1 -0
- package/dist/esm/Canvas/shapes/ChatBubble/Mentions/applyMention.js +23 -0
- package/dist/esm/Canvas/shapes/ChatBubble/Mentions/applyMention.js.map +1 -0
- package/dist/esm/Canvas/shapes/ChatBubble/Mentions/index.d.ts +7 -0
- package/dist/esm/Canvas/shapes/ChatBubble/Mentions/index.d.ts.map +1 -0
- package/dist/esm/Canvas/shapes/ChatBubble/Mentions/index.js +7 -0
- package/dist/esm/Canvas/shapes/ChatBubble/Mentions/index.js.map +1 -0
- package/dist/esm/Canvas/shapes/ChatBubble/Mentions/matchCandidates.d.ts +3 -0
- package/dist/esm/Canvas/shapes/ChatBubble/Mentions/matchCandidates.d.ts.map +1 -0
- package/dist/esm/Canvas/shapes/ChatBubble/Mentions/matchCandidates.js +24 -0
- package/dist/esm/Canvas/shapes/ChatBubble/Mentions/matchCandidates.js.map +1 -0
- package/dist/esm/Canvas/shapes/ChatBubble/MessageReactions.d.ts +6 -0
- package/dist/esm/Canvas/shapes/ChatBubble/MessageReactions.d.ts.map +1 -0
- package/dist/esm/Canvas/shapes/ChatBubble/MessageReactions.js +28 -0
- package/dist/esm/Canvas/shapes/ChatBubble/MessageReactions.js.map +1 -0
- package/dist/esm/Canvas/shapes/ChatBubble/ReactionPicker.d.ts +20 -0
- package/dist/esm/Canvas/shapes/ChatBubble/ReactionPicker.d.ts.map +1 -0
- package/dist/esm/Canvas/shapes/ChatBubble/ReactionPicker.js +50 -0
- package/dist/esm/Canvas/shapes/ChatBubble/ReactionPicker.js.map +1 -0
- package/dist/esm/Canvas/shapes/ChatBubble/TypingIndicator.d.ts +9 -0
- package/dist/esm/Canvas/shapes/ChatBubble/TypingIndicator.d.ts.map +1 -0
- package/dist/esm/Canvas/shapes/ChatBubble/TypingIndicator.js +18 -0
- package/dist/esm/Canvas/shapes/ChatBubble/TypingIndicator.js.map +1 -0
- package/dist/esm/Canvas/shapes/ChatBubble/findOwnReaction.d.ts +5 -0
- package/dist/esm/Canvas/shapes/ChatBubble/findOwnReaction.d.ts.map +1 -0
- package/dist/esm/Canvas/shapes/ChatBubble/findOwnReaction.js +19 -0
- package/dist/esm/Canvas/shapes/ChatBubble/findOwnReaction.js.map +1 -0
- package/dist/esm/Canvas/shapes/ChatBubble/index.d.ts +31 -0
- package/dist/esm/Canvas/shapes/ChatBubble/index.d.ts.map +1 -0
- package/dist/esm/Canvas/shapes/ChatBubble/index.js +17 -0
- package/dist/esm/Canvas/shapes/ChatBubble/index.js.map +1 -0
- package/dist/esm/Canvas/shapes/ChatBubble/reactionsExcludingUser.d.ts +4 -0
- package/dist/esm/Canvas/shapes/ChatBubble/reactionsExcludingUser.d.ts.map +1 -0
- package/dist/esm/Canvas/shapes/ChatBubble/reactionsExcludingUser.js +16 -0
- package/dist/esm/Canvas/shapes/ChatBubble/reactionsExcludingUser.js.map +1 -0
- package/dist/esm/Canvas/shapes/Note/Note.d.ts +22 -0
- package/dist/esm/Canvas/shapes/Note/Note.d.ts.map +1 -0
- package/dist/esm/Canvas/shapes/Note/Note.js +237 -0
- package/dist/esm/Canvas/shapes/Note/Note.js.map +1 -0
- package/dist/esm/Canvas/shapes/Note/index.d.ts +3 -0
- package/dist/esm/Canvas/shapes/Note/index.d.ts.map +1 -0
- package/dist/esm/Canvas/shapes/Note/index.js +2 -0
- package/dist/esm/Canvas/shapes/Note/index.js.map +1 -0
- package/dist/esm/Canvas/shapes/Note/noteFont.d.ts +2 -0
- package/dist/esm/Canvas/shapes/Note/noteFont.d.ts.map +1 -0
- package/dist/esm/Canvas/shapes/Note/noteFont.js +26 -0
- package/dist/esm/Canvas/shapes/Note/noteFont.js.map +1 -0
- package/dist/esm/Canvas/shapes/Region/Region.d.ts +22 -0
- package/dist/esm/Canvas/shapes/Region/Region.d.ts.map +1 -0
- package/dist/esm/Canvas/shapes/Region/Region.js +150 -0
- package/dist/esm/Canvas/shapes/Region/Region.js.map +1 -0
- package/dist/esm/Canvas/shapes/Region/index.d.ts +3 -0
- package/dist/esm/Canvas/shapes/Region/index.d.ts.map +1 -0
- package/dist/esm/Canvas/shapes/Region/index.js +2 -0
- package/dist/esm/Canvas/shapes/Region/index.js.map +1 -0
- package/dist/esm/Canvas/useDragSelectionGuard.d.ts +2 -0
- package/dist/esm/Canvas/useDragSelectionGuard.d.ts.map +1 -0
- package/dist/esm/Canvas/useDragSelectionGuard.js +59 -0
- package/dist/esm/Canvas/useDragSelectionGuard.js.map +1 -0
- package/dist/esm/Canvas/zoomMechanism.d.ts +4 -0
- package/dist/esm/Canvas/zoomMechanism.d.ts.map +1 -0
- package/dist/esm/Canvas/zoomMechanism.js +58 -0
- package/dist/esm/Canvas/zoomMechanism.js.map +1 -0
- package/dist/esm/CommandDialog/CommandDialog.d.ts +3 -6
- package/dist/esm/CommandDialog/CommandDialog.d.ts.map +1 -1
- package/dist/esm/CommandDialog/CommandDialog.js +3 -2
- package/dist/esm/CommandDialog/CommandDialog.js.map +1 -1
- package/dist/esm/CommandDialog/CommandStepper.d.ts.map +1 -1
- package/dist/esm/CommandDialog/CommandStepper.js +3 -2
- package/dist/esm/CommandDialog/CommandStepper.js.map +1 -1
- 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/stepChildren.js.map +1 -1
- package/dist/esm/CommandForm/AutoCommandForm.js.map +1 -1
- package/dist/esm/CommandForm/commandFormMarkers.d.ts +12 -0
- package/dist/esm/CommandForm/commandFormMarkers.d.ts.map +1 -0
- package/dist/esm/CommandForm/commandFormMarkers.js +69 -0
- package/dist/esm/CommandForm/commandFormMarkers.js.map +1 -0
- package/dist/esm/CommandForm/defaultFieldTypeProviders.js.map +1 -1
- package/dist/esm/CommandForm/fieldTypeProviderRegistry.js.map +1 -1
- package/dist/esm/CommandForm/fields/CalendarField.d.ts +1 -1
- package/dist/esm/CommandForm/fields/CalendarField.d.ts.map +1 -1
- package/dist/esm/CommandForm/fields/CalendarField.js.map +1 -1
- package/dist/esm/CommandForm/fields/CheckboxField.d.ts +1 -1
- package/dist/esm/CommandForm/fields/CheckboxField.d.ts.map +1 -1
- package/dist/esm/CommandForm/fields/CheckboxField.js.map +1 -1
- package/dist/esm/CommandForm/fields/ChipsField.d.ts +1 -1
- package/dist/esm/CommandForm/fields/ChipsField.d.ts.map +1 -1
- package/dist/esm/CommandForm/fields/ChipsField.js.map +1 -1
- package/dist/esm/CommandForm/fields/ColorPickerField.d.ts +1 -1
- package/dist/esm/CommandForm/fields/ColorPickerField.d.ts.map +1 -1
- package/dist/esm/CommandForm/fields/ColorPickerField.js.map +1 -1
- package/dist/esm/CommandForm/fields/DropdownField.d.ts +1 -1
- package/dist/esm/CommandForm/fields/DropdownField.d.ts.map +1 -1
- package/dist/esm/CommandForm/fields/DropdownField.js.map +1 -1
- package/dist/esm/CommandForm/fields/InputTextField.d.ts +1 -1
- package/dist/esm/CommandForm/fields/InputTextField.d.ts.map +1 -1
- package/dist/esm/CommandForm/fields/InputTextField.js.map +1 -1
- package/dist/esm/CommandForm/fields/MultiSelectField.d.ts +1 -1
- package/dist/esm/CommandForm/fields/MultiSelectField.d.ts.map +1 -1
- package/dist/esm/CommandForm/fields/MultiSelectField.js.map +1 -1
- package/dist/esm/CommandForm/fields/NumberField.d.ts +1 -1
- package/dist/esm/CommandForm/fields/NumberField.d.ts.map +1 -1
- package/dist/esm/CommandForm/fields/NumberField.js.map +1 -1
- package/dist/esm/CommandForm/fields/PasswordField.d.ts +1 -1
- package/dist/esm/CommandForm/fields/PasswordField.d.ts.map +1 -1
- package/dist/esm/CommandForm/fields/PasswordField.js.map +1 -1
- package/dist/esm/CommandForm/fields/RadioButtonField.d.ts +1 -1
- package/dist/esm/CommandForm/fields/RadioButtonField.d.ts.map +1 -1
- package/dist/esm/CommandForm/fields/RadioButtonField.js.map +1 -1
- package/dist/esm/CommandForm/fields/RadioGroupField.d.ts +1 -1
- package/dist/esm/CommandForm/fields/RadioGroupField.d.ts.map +1 -1
- package/dist/esm/CommandForm/fields/RadioGroupField.js.map +1 -1
- package/dist/esm/CommandForm/fields/RatingField.d.ts +1 -1
- package/dist/esm/CommandForm/fields/RatingField.d.ts.map +1 -1
- package/dist/esm/CommandForm/fields/RatingField.js.map +1 -1
- package/dist/esm/CommandForm/fields/SliderField.d.ts +1 -1
- package/dist/esm/CommandForm/fields/SliderField.d.ts.map +1 -1
- package/dist/esm/CommandForm/fields/SliderField.js.map +1 -1
- package/dist/esm/CommandForm/fields/TextAreaField.d.ts +1 -1
- package/dist/esm/CommandForm/fields/TextAreaField.d.ts.map +1 -1
- package/dist/esm/CommandForm/fields/TextAreaField.js.map +1 -1
- package/dist/esm/CommandForm/fields/ToggleSwitchField.d.ts +1 -1
- package/dist/esm/CommandForm/fields/ToggleSwitchField.d.ts.map +1 -1
- package/dist/esm/CommandForm/fields/ToggleSwitchField.js.map +1 -1
- package/dist/esm/CommandForm/index.d.ts +1 -0
- package/dist/esm/CommandForm/index.d.ts.map +1 -1
- package/dist/esm/CommandForm/index.js +1 -0
- package/dist/esm/CommandForm/index.js.map +1 -1
- package/dist/esm/Common/ActionMenubar.js.map +1 -1
- package/dist/esm/Common/Button.js.map +1 -1
- package/dist/esm/Common/CratisComponentsProvider.js +1 -1
- package/dist/esm/Common/CratisComponentsProvider.js.map +1 -1
- package/dist/esm/Common/DatePickerInput.d.ts +11 -4
- package/dist/esm/Common/DatePickerInput.d.ts.map +1 -1
- package/dist/esm/Common/DatePickerInput.js +18 -2
- package/dist/esm/Common/DatePickerInput.js.map +1 -1
- package/dist/esm/Common/ErrorBoundary.d.ts +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/Page.js.map +1 -1
- package/dist/esm/Common/Tooltip.js.map +1 -1
- package/dist/esm/Common/normalizeIconClass.js.map +1 -1
- package/dist/esm/Compatibility/PrimeReact11PassThroughComponent.d.ts +3 -0
- package/dist/esm/Compatibility/PrimeReact11PassThroughComponent.d.ts.map +1 -0
- package/dist/esm/Compatibility/PrimeReact11PassThroughComponent.js +2 -0
- package/dist/esm/Compatibility/PrimeReact11PassThroughComponent.js.map +1 -0
- package/dist/esm/Compatibility/assertPrimeReact11PassThroughCompatibility.d.ts +3 -0
- package/dist/esm/Compatibility/assertPrimeReact11PassThroughCompatibility.d.ts.map +1 -0
- package/dist/esm/Compatibility/assertPrimeReact11PassThroughCompatibility.js +49 -0
- package/dist/esm/Compatibility/assertPrimeReact11PassThroughCompatibility.js.map +1 -0
- package/dist/esm/Compatibility/components3PrimeReact11PassThroughContract.d.ts +369 -0
- package/dist/esm/Compatibility/components3PrimeReact11PassThroughContract.d.ts.map +1 -0
- package/dist/esm/Compatibility/components3PrimeReact11PassThroughContract.js +271 -0
- package/dist/esm/Compatibility/components3PrimeReact11PassThroughContract.js.map +1 -0
- package/dist/esm/Compatibility/index.d.ts +5 -0
- package/dist/esm/Compatibility/index.d.ts.map +1 -0
- package/dist/esm/Compatibility/index.js +7 -0
- package/dist/esm/Compatibility/index.js.map +1 -0
- package/dist/esm/Compatibility/primeReact11PassThroughSentinelPreset.d.ts +8 -0
- package/dist/esm/Compatibility/primeReact11PassThroughSentinelPreset.d.ts.map +1 -0
- package/dist/esm/Compatibility/primeReact11PassThroughSentinelPreset.js +48 -0
- package/dist/esm/Compatibility/primeReact11PassThroughSentinelPreset.js.map +1 -0
- package/dist/esm/DataPage/DataPage.d.ts +4 -4
- package/dist/esm/DataPage/DataPage.d.ts.map +1 -1
- package/dist/esm/DataPage/DataPage.js +6 -10
- package/dist/esm/DataPage/DataPage.js.map +1 -1
- package/dist/esm/DataPage/DataPageLayout.js.map +1 -1
- package/dist/esm/DataTables/Column.d.ts +3 -1
- package/dist/esm/DataTables/Column.d.ts.map +1 -1
- package/dist/esm/DataTables/Column.js.map +1 -1
- package/dist/esm/DataTables/ColumnFilterMenu.d.ts +22 -2
- package/dist/esm/DataTables/ColumnFilterMenu.d.ts.map +1 -1
- package/dist/esm/DataTables/ColumnFilterMenu.js +50 -13
- package/dist/esm/DataTables/ColumnFilterMenu.js.map +1 -1
- package/dist/esm/DataTables/DataTableCore.d.ts.map +1 -1
- package/dist/esm/DataTables/DataTableCore.js +22 -3
- package/dist/esm/DataTables/DataTableCore.js.map +1 -1
- package/dist/esm/DataTables/DataTableFilterMatcherRegistry.d.ts +14 -0
- package/dist/esm/DataTables/DataTableFilterMatcherRegistry.d.ts.map +1 -0
- package/dist/esm/DataTables/DataTableFilterMatcherRegistry.js +67 -0
- package/dist/esm/DataTables/DataTableFilterMatcherRegistry.js.map +1 -0
- package/dist/esm/DataTables/DataTableFilterMeta.d.ts +26 -1
- package/dist/esm/DataTables/DataTableFilterMeta.d.ts.map +1 -1
- package/dist/esm/DataTables/DataTableFilterMeta.js +24 -2
- package/dist/esm/DataTables/DataTableFilterMeta.js.map +1 -1
- package/dist/esm/DataTables/DataTableForObservableQuery.d.ts +3 -3
- package/dist/esm/DataTables/DataTableForObservableQuery.d.ts.map +1 -1
- package/dist/esm/DataTables/DataTableForObservableQuery.js +9 -3
- package/dist/esm/DataTables/DataTableForObservableQuery.js.map +1 -1
- package/dist/esm/DataTables/DataTableForQuery.d.ts +3 -3
- package/dist/esm/DataTables/DataTableForQuery.d.ts.map +1 -1
- package/dist/esm/DataTables/DataTableForQuery.js +8 -2
- package/dist/esm/DataTables/DataTableForQuery.js.map +1 -1
- package/dist/esm/DataTables/TablePaginator.d.ts +1 -1
- package/dist/esm/DataTables/TablePaginator.d.ts.map +1 -1
- package/dist/esm/DataTables/TablePaginator.js +13 -4
- package/dist/esm/DataTables/TablePaginator.js.map +1 -1
- package/dist/esm/DataTables/index.d.ts +1 -0
- package/dist/esm/DataTables/index.d.ts.map +1 -1
- package/dist/esm/DataTables/index.js +3 -1
- package/dist/esm/DataTables/index.js.map +1 -1
- package/dist/esm/DataTables/paginatorRange.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 +2 -2
- package/dist/esm/Dialogs/Dialog.d.ts.map +1 -1
- package/dist/esm/Dialogs/Dialog.js +16 -18
- package/dist/esm/Dialogs/Dialog.js.map +1 -1
- package/dist/esm/Dialogs/DialogInitialFocus.js.map +1 -1
- 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/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/Dropdown/Dropdown.d.ts +4 -2
- package/dist/esm/Dropdown/Dropdown.d.ts.map +1 -1
- package/dist/esm/Dropdown/Dropdown.js +8 -3
- package/dist/esm/Dropdown/Dropdown.js.map +1 -1
- package/dist/esm/Filter/FilterEditor.js.map +1 -1
- package/dist/esm/Filter/FilterPanel.d.ts.map +1 -1
- package/dist/esm/Filter/FilterPanel.js +1 -1
- package/dist/esm/Filter/FilterPanel.js.map +1 -1
- package/dist/esm/Filter/RangeHistogramFilter.d.ts +4 -3
- package/dist/esm/Filter/RangeHistogramFilter.d.ts.map +1 -1
- package/dist/esm/Filter/RangeHistogramFilter.js +4 -23
- package/dist/esm/Filter/RangeHistogramFilter.js.map +1 -1
- package/dist/esm/Filter/index.d.ts +3 -2
- package/dist/esm/Filter/index.d.ts.map +1 -1
- package/dist/esm/Filter/index.js +1 -1
- package/dist/esm/Filter/types.d.ts +7 -1
- package/dist/esm/Filter/types.d.ts.map +1 -1
- package/dist/esm/Filter/useFilterState.js.map +1 -1
- package/dist/esm/Filter/utils.d.ts +5 -1
- package/dist/esm/Filter/utils.d.ts.map +1 -1
- package/dist/esm/Filter/utils.js +33 -1
- package/dist/esm/Filter/utils.js.map +1 -1
- package/dist/esm/Notifications/Toaster.d.ts +8 -1
- package/dist/esm/Notifications/Toaster.d.ts.map +1 -1
- package/dist/esm/Notifications/Toaster.js +16 -10
- package/dist/esm/Notifications/Toaster.js.map +1 -1
- package/dist/esm/Notifications/index.js +1 -1
- package/dist/esm/Notifications/toast.d.ts +52 -2
- package/dist/esm/Notifications/toast.d.ts.map +1 -1
- package/dist/esm/Notifications/toast.js +100 -2
- package/dist/esm/Notifications/toast.js.map +1 -1
- package/dist/esm/Notifications/toastCommandResult.js +2 -2
- package/dist/esm/Notifications/toastCommandResult.js.map +1 -1
- package/dist/esm/ObjectContentEditor/ObjectContentEditor.js.map +1 -1
- 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/PatrickHand-latin-ext.woff2 +0 -0
- package/dist/esm/PatrickHand-latin.woff2 +0 -0
- package/dist/esm/PatrickHand-vietnamese.woff2 +0 -0
- package/dist/esm/PivotViewer/PivotViewer.js.map +1 -1
- 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.js.map +1 -1
- package/dist/esm/PivotViewer/components/FilterPanelContainer.js.map +1 -1
- package/dist/esm/PivotViewer/components/PivotCanvas.js.map +1 -1
- package/dist/esm/PivotViewer/components/PivotViewerMain.js.map +1 -1
- package/dist/esm/PivotViewer/components/Spinner.js.map +1 -1
- package/dist/esm/PivotViewer/components/Toolbar.js.map +1 -1
- package/dist/esm/PivotViewer/components/ToolbarContainer.js.map +1 -1
- package/dist/esm/PivotViewer/components/pivot/animation.js.map +1 -1
- 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/groups.js.map +1 -1
- package/dist/esm/PivotViewer/components/pivot/sprites.js.map +1 -1
- 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.js.map +1 -1
- package/dist/esm/PivotViewer/engine/store.js.map +1 -1
- package/dist/esm/PivotViewer/hooks/useAnimationModeTracking.js.map +1 -1
- 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.js.map +1 -1
- package/dist/esm/PivotViewer/hooks/useDetailPanelClose.js.map +1 -1
- package/dist/esm/PivotViewer/hooks/useDimensionState.js.map +1 -1
- package/dist/esm/PivotViewer/hooks/useFieldExtractors.js.map +1 -1
- package/dist/esm/PivotViewer/hooks/useFilterOptions.js.map +1 -1
- package/dist/esm/PivotViewer/hooks/useFilterState.js.map +1 -1
- package/dist/esm/PivotViewer/hooks/usePanning.js.map +1 -1
- package/dist/esm/PivotViewer/hooks/usePivotEngine.js.map +1 -1
- package/dist/esm/PivotViewer/hooks/useScrollSync.js.map +1 -1
- 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/useZoomState.js.map +1 -1
- 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.js.map +1 -1
- package/dist/esm/PivotViewer/utils/constants.js.map +1 -1
- package/dist/esm/PivotViewer/utils/idResolution.js.map +1 -1
- package/dist/esm/PivotViewer/utils/selection.js.map +1 -1
- package/dist/esm/PivotViewer/utils/utils.js.map +1 -1
- package/dist/esm/SchemaEditor/NameCell.js.map +1 -1
- package/dist/esm/SchemaEditor/SchemaEditor.js.map +1 -1
- package/dist/esm/SchemaEditor/TypeCell.js.map +1 -1
- package/dist/esm/SchemaEditor/schemaHelpers.js.map +1 -1
- package/dist/esm/Styled/CratisPreset.js.map +1 -1
- package/dist/esm/Styled/primeReactStyles.js.map +1 -1
- package/dist/esm/Styled/styledMode.js.map +1 -1
- package/dist/esm/TimeMachine/EventsView.js.map +1 -1
- package/dist/esm/TimeMachine/Properties.js.map +1 -1
- package/dist/esm/TimeMachine/ReadModelView.js.map +1 -1
- package/dist/esm/TimeMachine/TimeMachine.js.map +1 -1
- package/dist/esm/TimeMachine/TimeMachineLabels.js.map +1 -1
- package/dist/esm/TimeMachine/propertiesHelpers.js.map +1 -1
- package/dist/esm/Toolbar/Toolbar.js.map +1 -1
- 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.js.map +1 -1
- 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/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/index.d.ts +4 -1
- package/dist/esm/index.d.ts.map +1 -1
- package/dist/esm/index.js +42 -35
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/styles.css +1285 -3
- package/dist/esm/types/TypeFormat.js.map +1 -1
- package/package.json +16 -6
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
export { assertPrimeReact11PassThroughCompatibility } from './assertPrimeReact11PassThroughCompatibility.js';
|
|
2
|
+
export { components3PrimeReact11PassThroughContract } from './components3PrimeReact11PassThroughContract.js';
|
|
3
|
+
export { primeReact11PassThroughSentinelAttribute, primeReact11PassThroughSentinelPreset } from './primeReact11PassThroughSentinelPreset.js';
|
|
4
|
+
|
|
5
|
+
// Copyright (c) Cratis. All rights reserved.
|
|
6
|
+
// Licensed under the MIT license. See LICENSE file in the project root for full license information.
|
|
7
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../../../Compatibility/index.ts"],"sourcesContent":[null],"names":[],"mappings":";;;;AAAA;AACA"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import type { CratisComponentsConfig } from '../Common/CratisComponentsProvider';
|
|
2
|
+
export declare const primeReact11PassThroughSentinelAttribute = "data-cratis-pt-slot";
|
|
3
|
+
type SentinelPresetNode = {
|
|
4
|
+
[key: string]: SentinelPresetNode | string;
|
|
5
|
+
};
|
|
6
|
+
export declare const primeReact11PassThroughSentinelPreset: NonNullable<CratisComponentsConfig["pt"]> & SentinelPresetNode;
|
|
7
|
+
export {};
|
|
8
|
+
//# sourceMappingURL=primeReact11PassThroughSentinelPreset.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"primeReact11PassThroughSentinelPreset.d.ts","sourceRoot":"","sources":["../../../Compatibility/primeReact11PassThroughSentinelPreset.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,oCAAoC,CAAC;AAIjF,eAAO,MAAM,wCAAwC,wBAAwB,CAAC;AAE9E,KAAK,kBAAkB,GAAG;IACtB,CAAC,GAAG,EAAE,MAAM,GAAG,kBAAkB,GAAG,MAAM,CAAC;CAC9C,CAAC;AA6DF,eAAO,MAAM,qCAAqC,EACpB,WAAW,CAAC,sBAAsB,CAAC,IAAI,CAAC,CAAC,GAC/D,kBAAkB,CAAC"}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
import { components3PrimeReact11PassThroughContract } from './components3PrimeReact11PassThroughContract.js';
|
|
2
|
+
|
|
3
|
+
// Copyright (c) Cratis. All rights reserved.
|
|
4
|
+
// Licensed under the MIT license. See LICENSE file in the project root for full license information.
|
|
5
|
+
/** Attribute used to prove that a pass-through slot reached rendered output. */
|
|
6
|
+
const primeReact11PassThroughSentinelAttribute = 'data-cratis-pt-slot';
|
|
7
|
+
const nodeAt = (root, path) => {
|
|
8
|
+
let current = root;
|
|
9
|
+
for (const segment of path) {
|
|
10
|
+
const existing = current.get(segment);
|
|
11
|
+
if (typeof existing === 'string') {
|
|
12
|
+
throw new Error(`Cannot add pass-through entries below ${path.join('.')}.`);
|
|
13
|
+
}
|
|
14
|
+
const child = existing ?? new Map();
|
|
15
|
+
current.set(segment, child);
|
|
16
|
+
current = child;
|
|
17
|
+
}
|
|
18
|
+
return current;
|
|
19
|
+
};
|
|
20
|
+
const toPresetNode = (source) => {
|
|
21
|
+
const entries = Array.from(source, ([key, value]) => [key, value instanceof Map ? toPresetNode(value) : value]);
|
|
22
|
+
// SAFETY: Every Map value is recursively converted to the declared string-or-node shape.
|
|
23
|
+
return Object.fromEntries(entries);
|
|
24
|
+
};
|
|
25
|
+
const createSentinelPreset = () => {
|
|
26
|
+
const preset = new Map();
|
|
27
|
+
for (const [component, contract] of Object.entries(components3PrimeReact11PassThroughContract.components)) {
|
|
28
|
+
const target = nodeAt(preset, contract.globalKey.split('.'));
|
|
29
|
+
for (const slot of contract.slots) {
|
|
30
|
+
const slotTarget = nodeAt(target, [slot]);
|
|
31
|
+
const existing = slotTarget.get(primeReact11PassThroughSentinelAttribute);
|
|
32
|
+
const sentinel = `${component}.${slot}`;
|
|
33
|
+
slotTarget.set(primeReact11PassThroughSentinelAttribute, typeof existing === 'string' ? `${existing} ${sentinel}` : sentinel);
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
return toPresetNode(preset);
|
|
37
|
+
};
|
|
38
|
+
/**
|
|
39
|
+
* A non-visual PrimeReact 11 `pt` preset for compatibility tests.
|
|
40
|
+
*
|
|
41
|
+
* Apply this preset globally with `unstyled: true`, render the supported components and then call
|
|
42
|
+
* {@link assertPrimeReact11PassThroughCompatibility}. The custom data attributes are intentionally
|
|
43
|
+
* inert and can coexist with additional consumer pass-through entries.
|
|
44
|
+
*/
|
|
45
|
+
const primeReact11PassThroughSentinelPreset = createSentinelPreset();
|
|
46
|
+
|
|
47
|
+
export { primeReact11PassThroughSentinelAttribute, primeReact11PassThroughSentinelPreset };
|
|
48
|
+
//# sourceMappingURL=primeReact11PassThroughSentinelPreset.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"primeReact11PassThroughSentinelPreset.js","sources":["../../../Compatibility/primeReact11PassThroughSentinelPreset.ts"],"sourcesContent":[null],"names":[],"mappings":";;AAAA;AACA;AAKA;AACO,MAAM,wCAAwC,GAAG;AAQxD,MAAM,MAAM,GAAG,CAAC,IAAuB,EAAE,IAAuB,KAAI;IAChE,IAAI,OAAO,GAAG,IAAI;AAElB,IAAA,KAAK,MAAM,OAAO,IAAI,IAAI,EAAE;QACxB,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC;AACrC,QAAA,IAAI,OAAO,QAAQ,KAAK,QAAQ,EAAE;AAC9B,YAAA,MAAM,IAAI,KAAK,CAAC,CAAA,sCAAA,EAAyC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA,CAAA,CAAG,CAAC;QAC/E;AAEA,QAAA,MAAM,KAAK,GAAG,QAAQ,IAAI,IAAI,GAAG,EAAsC;AACvE,QAAA,OAAO,CAAC,GAAG,CAAC,OAAO,EAAE,KAAK,CAAC;QAC3B,OAAO,GAAG,KAAK;IACnB;AAEA,IAAA,OAAO,OAAO;AAClB,CAAC;AAED,MAAM,YAAY,GAAG,CAAC,MAAyB,KAAwB;AACnE,IAAA,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,CACtB,MAAM,EACN,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,KACT,CAAC,GAAG,EAAE,KAAK,YAAY,GAAG,GAAG,YAAY,CAAC,KAAK,CAAC,GAAG,KAAK,CAAU,CACzE;;AAGD,IAAA,OAAO,MAAM,CAAC,WAAW,CAAC,OAAO,CAAuB;AAC5D,CAAC;AAED,MAAM,oBAAoB,GAAG,MAAK;AAC9B,IAAA,MAAM,MAAM,GAAsB,IAAI,GAAG,EAAE;AAE3C,IAAA,KAAK,MAAM,CAAC,SAAS,EAAE,QAAQ,CAAC,IAAI,MAAM,CAAC,OAAO,CAC9C,0CAA0C,CAAC,UAAU,CACxD,EAAE;AACC,QAAA,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;AAE5D,QAAA,KAAK,MAAM,IAAI,IAAI,QAAQ,CAAC,KAAK,EAAE;YAC/B,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,CAAC;YACzC,MAAM,QAAQ,GAAG,UAAU,CAAC,GAAG,CAAC,wCAAwC,CAAC;AACzE,YAAA,MAAM,QAAQ,GAAG,CAAA,EAAG,SAAS,CAAA,CAAA,EAAI,IAAI,EAAE;YACvC,UAAU,CAAC,GAAG,CACV,wCAAwC,EACxC,OAAO,QAAQ,KAAK,QAAQ,GAAG,CAAA,EAAG,QAAQ,IAAI,QAAQ,CAAA,CAAE,GAAG,QAAQ,CACtE;QACL;IACJ;AAEA,IAAA,OAAO,YAAY,CAAC,MAAM,CAAC;AAC/B,CAAC;AAED;;;;;;AAMG;AACI,MAAM,qCAAqC,GAC9C,oBAAoB;;"}
|
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
import { ReactNode } from 'react';
|
|
1
|
+
import { type ReactNode } from 'react';
|
|
2
2
|
import React from 'react';
|
|
3
3
|
import type { ButtonProps } from '@primereact/types/primitive/button';
|
|
4
|
-
import { IObservableQueryFor, IQueryFor } from '@cratis/arc/queries';
|
|
4
|
+
import { type IObservableQueryFor, type IQueryFor } from '@cratis/arc/queries';
|
|
5
5
|
import type { DataTableRootProps } from '@primereact/types/primitive/datatable';
|
|
6
6
|
import type { DataTableFilterMeta } from '../DataTables/DataTableFilterMeta';
|
|
7
7
|
import type { DataTableSelectionChangeEvent } from '../DataTables/DataTableSelectionChangeEvent';
|
|
8
|
-
import { Constructor } from '@cratis/fundamentals';
|
|
8
|
+
import type { Constructor } from '@cratis/fundamentals';
|
|
9
9
|
export interface MenuItemProps {
|
|
10
10
|
icon?: React.ComponentType<{
|
|
11
11
|
className?: string;
|
|
@@ -15,7 +15,7 @@ export interface MenuItemProps {
|
|
|
15
15
|
disabled?: boolean;
|
|
16
16
|
disableOnUnselected?: boolean;
|
|
17
17
|
}
|
|
18
|
-
export declare const MenuItem: (
|
|
18
|
+
export declare const MenuItem: (_props: MenuItemProps) => null;
|
|
19
19
|
export interface MenuItemsProps {
|
|
20
20
|
children: ReactNode;
|
|
21
21
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DataPage.d.ts","sourceRoot":"","sources":["../../../DataPage/DataPage.tsx"],"names":[],"mappings":"AAGA,OAAO,
|
|
1
|
+
{"version":3,"file":"DataPage.d.ts","sourceRoot":"","sources":["../../../DataPage/DataPage.tsx"],"names":[],"mappings":"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"}
|
|
@@ -13,7 +13,7 @@ import { DataPageLayout } from './DataPageLayout.js';
|
|
|
13
13
|
* directly; the surrounding {@link MenuItems} component reads its props and
|
|
14
14
|
* forwards them to the action menubar.
|
|
15
15
|
*/
|
|
16
|
-
const MenuItem = (
|
|
16
|
+
const MenuItem = (_props) => {
|
|
17
17
|
return null;
|
|
18
18
|
};
|
|
19
19
|
/**
|
|
@@ -55,13 +55,14 @@ const MenuItems = ({ children }) => {
|
|
|
55
55
|
label: child.props.label,
|
|
56
56
|
command: child.props.command,
|
|
57
57
|
icon: Icon ? jsx(Icon, { className: 'mr-2' }) : undefined,
|
|
58
|
-
disabled: (child.props.disabled ?? false) ||
|
|
58
|
+
disabled: (child.props.disabled ?? false) ||
|
|
59
|
+
(isDisabled && (child.props.disableOnUnselected ?? false)),
|
|
59
60
|
});
|
|
60
61
|
}
|
|
61
62
|
});
|
|
62
63
|
return menuItems;
|
|
63
64
|
}, [children, isDisabled]);
|
|
64
|
-
return (jsx("div", { className:
|
|
65
|
+
return (jsx("div", { className: 'cratis-data-page-actions px-4 py-2', style: actionsStyle, children: jsx(ActionMenubar, { "aria-label": context.actionsAriaLabel ?? 'Actions', model: items, className: context.menubarClassName, pt: context.menubarPt, ptOptions: context.menubarPtOptions, unstyled: context.menubarUnstyled }) }));
|
|
65
66
|
};
|
|
66
67
|
/**
|
|
67
68
|
* Renders the data table at the body of a {@link DataPage}. Automatically
|
|
@@ -75,9 +76,7 @@ const MenuItems = ({ children }) => {
|
|
|
75
76
|
const Columns = ({ children }) => {
|
|
76
77
|
const context = useDataPageContext();
|
|
77
78
|
const isSnapshotQuery = context.query.prototype instanceof QueryFor;
|
|
78
|
-
return (jsx("div", { className:
|
|
79
|
-
? jsx(DataTableForQuery, { ...context, selection: context.selectedItem, onSelectionChange: context.onSelectionChanged, clientFiltering: context.clientFiltering, className: context.tableClassName, pt: context.tablePt, ptOptions: context.tablePtOptions, unstyled: context.tableUnstyled, children: children })
|
|
80
|
-
: jsx(DataTableForObservableQuery, { ...context, selection: context.selectedItem, onSelectionChange: context.onSelectionChanged, clientFiltering: context.clientFiltering, className: context.tableClassName, pt: context.tablePt, ptOptions: context.tablePtOptions, unstyled: context.tableUnstyled, children: children }) }));
|
|
79
|
+
return (jsx("div", { className: 'cratis-data-page-table', style: tableRegionStyle, children: isSnapshotQuery ? (jsx(DataTableForQuery, { ...context, selection: context.selectedItem, onSelectionChange: context.onSelectionChanged, className: context.tableClassName, pt: context.tablePt, ptOptions: context.tablePtOptions, unstyled: context.tableUnstyled, children: children })) : (jsx(DataTableForObservableQuery, { ...context, selection: context.selectedItem, onSelectionChange: context.onSelectionChanged, className: context.tableClassName, pt: context.tablePt, ptOptions: context.tablePtOptions, unstyled: context.tableUnstyled, children: children })) }));
|
|
81
80
|
};
|
|
82
81
|
const DataPageContext = React.createContext(null);
|
|
83
82
|
function useDataPageContext() {
|
|
@@ -203,10 +202,7 @@ const DataPage = (props) => {
|
|
|
203
202
|
}
|
|
204
203
|
};
|
|
205
204
|
const context = { ...props, selectedItem, onSelectionChanged: selectionChanged };
|
|
206
|
-
return (jsx(DataPageContext.Provider, { value: context, children: jsx(Page, { title: props.title, panel: true, style: pageStyle, children: props.detailsComponent
|
|
207
|
-
? jsxs(Allotment, { className: "h-full", proportionalLayout: false, children: [jsx(Allotment.Pane, { children: jsx(DataPageLayout, { children: props.children }) }), selectedItem &&
|
|
208
|
-
jsx(Allotment.Pane, { preferredSize: "450px", children: jsx(props.detailsComponent, { item: selectedItem, onRefresh: props.onRefresh }) })] })
|
|
209
|
-
: jsx(DataPageLayout, { children: props.children }) }) }));
|
|
205
|
+
return (jsx(DataPageContext.Provider, { value: context, children: jsx(Page, { title: props.title, panel: true, style: pageStyle, children: props.detailsComponent ? (jsxs(Allotment, { className: 'h-full', proportionalLayout: false, children: [jsx(Allotment.Pane, { children: jsx(DataPageLayout, { children: props.children }) }), selectedItem && (jsx(Allotment.Pane, { preferredSize: '450px', children: jsx(props.detailsComponent, { item: selectedItem, onRefresh: props.onRefresh }) }))] })) : (jsx(DataPageLayout, { children: props.children })) }) }));
|
|
210
206
|
};
|
|
211
207
|
DataPage.MenuItems = MenuItems;
|
|
212
208
|
DataPage.Columns = Columns;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DataPage.js","sources":["../../../DataPage/DataPage.tsx"],"sourcesContent":[null],"names":["_jsx","_jsxs"],"mappings":";;;;;;;;;;AAiDA;;;;AAIG;AACI,MAAM,QAAQ,GAAG,CAAC,
|
|
1
|
+
{"version":3,"file":"DataPage.js","sources":["../../../DataPage/DataPage.tsx"],"sourcesContent":[null],"names":["_jsx","_jsxs"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DataPageLayout.js","sources":["../../../DataPage/DataPageLayout.tsx"],"sourcesContent":[null],"names":["_jsx"],"mappings":";;AAaA;;;;;;;;;AASG;AACH,MAAM,WAAW,GAAkB;AAC/B,IAAA,OAAO,EAAE,MAAM;AACf,IAAA,aAAa,EAAE,QAAQ;AACvB,IAAA,MAAM,EAAE,MAAM;AACd,IAAA,SAAS,EAAE;CACd;AAED;;;;;;;;;AASG;AACI,MAAM,cAAc,GAAG,CAAC,EAAE,QAAQ,EAAuB,MAC5DA,aAAK,SAAS,EAAC,yBAAyB,EAAC,KAAK,EAAE,WAAW,EAAA,QAAA,EACtD,QAAQ,EAAA,CACP
|
|
1
|
+
{"version":3,"file":"DataPageLayout.js","sources":["../../../DataPage/DataPageLayout.tsx"],"sourcesContent":[null],"names":["_jsx"],"mappings":";;AAaA;;;;;;;;;AASG;AACH,MAAM,WAAW,GAAkB;AAC/B,IAAA,OAAO,EAAE,MAAM;AACf,IAAA,aAAa,EAAE,QAAQ;AACvB,IAAA,MAAM,EAAE,MAAM;AACd,IAAA,SAAS,EAAE;CACd;AAED;;;;;;;;;AASG;AACI,MAAM,cAAc,GAAG,CAAC,EAAE,QAAQ,EAAuB,MAC5DA,aAAK,SAAS,EAAC,yBAAyB,EAAC,KAAK,EAAE,WAAW,EAAA,QAAA,EACtD,QAAQ,EAAA,CACP;;"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
-
import type { ColumnFilterDataType } from './ColumnFilterMenu';
|
|
2
|
+
import type { ColumnFilterDataType, ColumnFilterElement, ColumnFilterMenuLabels } from './ColumnFilterMenu';
|
|
3
3
|
export interface ColumnProps<TData = unknown> {
|
|
4
4
|
field?: string;
|
|
5
5
|
header?: React.ReactNode;
|
|
@@ -10,6 +10,8 @@ export interface ColumnProps<TData = unknown> {
|
|
|
10
10
|
filterPlaceholder?: string;
|
|
11
11
|
dataType?: ColumnFilterDataType;
|
|
12
12
|
showFilterMatchModes?: boolean;
|
|
13
|
+
filterElement?: ColumnFilterElement;
|
|
14
|
+
filterLabels?: Partial<ColumnFilterMenuLabels>;
|
|
13
15
|
selectionMode?: 'single' | 'multiple';
|
|
14
16
|
style?: React.CSSProperties;
|
|
15
17
|
className?: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Column.d.ts","sourceRoot":"","sources":["../../../DataTables/Column.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"Column.d.ts","sourceRoot":"","sources":["../../../DataTables/Column.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,KAAK,EACR,oBAAoB,EACpB,mBAAmB,EACnB,sBAAsB,EACzB,MAAM,oBAAoB,CAAC;AAO5B,MAAM,WAAW,WAAW,CAAC,KAAK,GAAG,OAAO;IAExC,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf,MAAM,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAEzB,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,KAAK,KAAK,KAAK,CAAC,SAAS,CAAC;IAE3C,QAAQ,CAAC,EAAE,OAAO,CAAC;IAEnB,MAAM,CAAC,EAAE,OAAO,CAAC;IAEjB,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAE3B,QAAQ,CAAC,EAAE,oBAAoB,CAAC;IAEhC,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAE/B,aAAa,CAAC,EAAE,mBAAmB,CAAC;IAEpC,YAAY,CAAC,EAAE,OAAO,CAAC,sBAAsB,CAAC,CAAC;IAK/C,aAAa,CAAC,EAAE,QAAQ,GAAG,UAAU,CAAC;IAEtC,KAAK,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;IAE5B,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB,WAAW,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;IAElC,eAAe,CAAC,EAAE,MAAM,CAAC;IAEzB,SAAS,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;IAEhC,aAAa,CAAC,EAAE,MAAM,CAAC;CAC1B;AAmBD,eAAO,MAAM,MAAM;KAAI,KAAK,oBAChB,WAAW,CAAC,KAAK,CAAC,GAC3B,KAAK,CAAC,YAAY,GAAG,IAAI;;CAAQ,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Column.js","sources":["../../../DataTables/Column.tsx"],"sourcesContent":[null],"names":[],"mappings":"AAAA;AACA;
|
|
1
|
+
{"version":3,"file":"Column.js","sources":["../../../DataTables/Column.tsx"],"sourcesContent":[null],"names":[],"mappings":"AAAA;AACA;AAwDA;;;;;;;;;;;;;;;;AAgBG;AACI,MAAM,MAAM,GAAG,CAClB,MAA0B,KACE;AAChC,MAAM,CAAC,WAAW,GAAG,QAAQ;;"}
|
|
@@ -1,10 +1,30 @@
|
|
|
1
|
-
import
|
|
1
|
+
import type { ReactNode, SyntheticEvent } from 'react';
|
|
2
|
+
import type { DataTableFilterMatchMode } from './DataTableFilterMeta';
|
|
2
3
|
export type ColumnFilterDataType = 'text' | 'numeric' | 'date' | 'boolean';
|
|
4
|
+
export interface ColumnFilterMenuLabels {
|
|
5
|
+
filterTriggerAriaLabel: (field: string) => string;
|
|
6
|
+
clear: string;
|
|
7
|
+
apply: string;
|
|
8
|
+
true: string;
|
|
9
|
+
false: string;
|
|
10
|
+
}
|
|
11
|
+
export declare const defaultColumnFilterMenuLabels: ColumnFilterMenuLabels;
|
|
12
|
+
export interface ColumnFilterElementOptions {
|
|
13
|
+
field: string;
|
|
14
|
+
value: unknown;
|
|
15
|
+
matchMode: DataTableFilterMatchMode;
|
|
16
|
+
onChange: (value: unknown, matchMode?: DataTableFilterMatchMode) => void;
|
|
17
|
+
onApply: (event: SyntheticEvent) => void;
|
|
18
|
+
onClear: (event: SyntheticEvent) => void;
|
|
19
|
+
}
|
|
20
|
+
export type ColumnFilterElement = (options: ColumnFilterElementOptions) => ReactNode;
|
|
3
21
|
export interface ColumnFilterMenuProps {
|
|
4
22
|
field: string;
|
|
5
23
|
dataType?: ColumnFilterDataType;
|
|
6
24
|
placeholder?: string;
|
|
7
25
|
showMatchModes?: boolean;
|
|
26
|
+
filterElement?: ColumnFilterElement;
|
|
27
|
+
labels?: Partial<ColumnFilterMenuLabels>;
|
|
8
28
|
}
|
|
9
|
-
export declare const ColumnFilterMenu: ({ field, dataType, placeholder, showMatchModes }: ColumnFilterMenuProps) =>
|
|
29
|
+
export declare const ColumnFilterMenu: ({ field, dataType, placeholder, showMatchModes, filterElement, labels, }: ColumnFilterMenuProps) => import("react").JSX.Element;
|
|
10
30
|
//# sourceMappingURL=ColumnFilterMenu.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ColumnFilterMenu.d.ts","sourceRoot":"","sources":["../../../DataTables/ColumnFilterMenu.tsx"],"names":[],"mappings":"AAGA,OAAO,
|
|
1
|
+
{"version":3,"file":"ColumnFilterMenu.d.ts","sourceRoot":"","sources":["../../../DataTables/ColumnFilterMenu.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,OAAO,CAAC;AAUvD,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,uBAAuB,CAAC;AAGtE,MAAM,MAAM,oBAAoB,GAAG,MAAM,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS,CAAC;AAG3E,MAAM,WAAW,sBAAsB;IAEnC,sBAAsB,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,MAAM,CAAC;IAElD,KAAK,EAAE,MAAM,CAAC;IAEd,KAAK,EAAE,MAAM,CAAC;IAEd,IAAI,EAAE,MAAM,CAAC;IAEb,KAAK,EAAE,MAAM,CAAC;CACjB;AAGD,eAAO,MAAM,6BAA6B,EAAE,sBAM3C,CAAC;AAGF,MAAM,WAAW,0BAA0B;IAEvC,KAAK,EAAE,MAAM,CAAC;IAEd,KAAK,EAAE,OAAO,CAAC;IAEf,SAAS,EAAE,wBAAwB,CAAC;IAEpC,QAAQ,EAAE,CAAC,KAAK,EAAE,OAAO,EAAE,SAAS,CAAC,EAAE,wBAAwB,KAAK,IAAI,CAAC;IAEzE,OAAO,EAAE,CAAC,KAAK,EAAE,cAAc,KAAK,IAAI,CAAC;IAEzC,OAAO,EAAE,CAAC,KAAK,EAAE,cAAc,KAAK,IAAI,CAAC;CAC5C;AAGD,MAAM,MAAM,mBAAmB,GAAG,CAAC,OAAO,EAAE,0BAA0B,KAAK,SAAS,CAAC;AAGrF,MAAM,WAAW,qBAAqB;IAElC,KAAK,EAAE,MAAM,CAAC;IAEd,QAAQ,CAAC,EAAE,oBAAoB,CAAC;IAEhC,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB,cAAc,CAAC,EAAE,OAAO,CAAC;IAEzB,aAAa,CAAC,EAAE,mBAAmB,CAAC;IAEpC,MAAM,CAAC,EAAE,OAAO,CAAC,sBAAsB,CAAC,CAAC;CAC5C;AAqBD,eAAO,MAAM,gBAAgB,GAAI,0EAO9B,qBAAqB,gCAqJvB,CAAC"}
|
|
@@ -7,10 +7,14 @@ import { Button } from 'primereact/button';
|
|
|
7
7
|
import { Dropdown } from '../Dropdown/Dropdown.js';
|
|
8
8
|
import { DatePickerInput } from '../Common/DatePickerInput.js';
|
|
9
9
|
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
10
|
+
/** Default English labels for {@link ColumnFilterMenu}. */
|
|
11
|
+
const defaultColumnFilterMenuLabels = {
|
|
12
|
+
filterTriggerAriaLabel: (field) => `Filter by ${field}`,
|
|
13
|
+
clear: 'Clear',
|
|
14
|
+
apply: 'Apply',
|
|
15
|
+
true: 'True',
|
|
16
|
+
false: 'False',
|
|
17
|
+
};
|
|
14
18
|
/**
|
|
15
19
|
* The filter affordance for a single data-table column: a filter icon in the
|
|
16
20
|
* header that opens a popover menu with a match-mode selector, a value input
|
|
@@ -23,22 +27,55 @@ const BOOLEAN_OPTIONS = [
|
|
|
23
27
|
* Rendered by {@link DataTableCore} inside a `THeadCell` for any `<Column>`
|
|
24
28
|
* with `filter` set. Must live inside a `DataTable.Root` subtree.
|
|
25
29
|
*/
|
|
26
|
-
const
|
|
27
|
-
|
|
28
|
-
|
|
30
|
+
const eventForFilter = (event) => {
|
|
31
|
+
if (event)
|
|
32
|
+
return event;
|
|
33
|
+
// SAFETY: PrimeReact's draft change handler does not inspect the event for programmatic editors.
|
|
34
|
+
return {};
|
|
35
|
+
};
|
|
36
|
+
const ColumnFilterMenu = ({ field, dataType = 'text', placeholder, showMatchModes = true, filterElement, labels, }) => (jsx(DataTable.Filter, { field: field, display: 'menu', dataType: dataType, showOperator: false, showAddButton: false, children: (filter) => {
|
|
37
|
+
const resolvedLabels = {
|
|
38
|
+
filterTriggerAriaLabel: labels?.filterTriggerAriaLabel ??
|
|
39
|
+
defaultColumnFilterMenuLabels.filterTriggerAriaLabel,
|
|
40
|
+
clear: labels?.clear ?? defaultColumnFilterMenuLabels.clear,
|
|
41
|
+
apply: labels?.apply ?? defaultColumnFilterMenuLabels.apply,
|
|
42
|
+
true: labels?.true ?? defaultColumnFilterMenuLabels.true,
|
|
43
|
+
false: labels?.false ?? defaultColumnFilterMenuLabels.false,
|
|
44
|
+
};
|
|
45
|
+
const booleanOptions = [
|
|
46
|
+
{ label: resolvedLabels.true, value: true },
|
|
47
|
+
{ label: resolvedLabels.false, value: false },
|
|
48
|
+
];
|
|
49
|
+
const commit = (value, event, matchMode = filter.matchMode) => filter.onChange(eventForFilter(event), value, matchMode);
|
|
50
|
+
const builtInValueInput = (() => {
|
|
29
51
|
switch (dataType) {
|
|
30
52
|
case 'numeric':
|
|
31
|
-
return (jsx(InputNumber.Root, { value: filter.value ?? null, onValueChange: (e) => commit(e.value), children: jsx(InputNumber.Input, { placeholder: placeholder, className:
|
|
53
|
+
return (jsx(InputNumber.Root, { value: filter.value ?? null, onValueChange: (e) => commit(e.value), children: jsx(InputNumber.Input, { placeholder: placeholder, className: 'w-full' }) }));
|
|
32
54
|
case 'date':
|
|
33
|
-
return (jsx(DatePickerInput, { value: filter.value
|
|
55
|
+
return (jsx(DatePickerInput, { value: filter.value
|
|
56
|
+
? new Date(filter.value)
|
|
57
|
+
: null, onChange: (date) => commit(date), showIcon: true }));
|
|
34
58
|
case 'boolean':
|
|
35
|
-
return (jsx(Dropdown, { value: filter.value, options:
|
|
59
|
+
return (jsx(Dropdown, { value: filter.value, options: booleanOptions, optionLabel: 'label', optionValue: 'value', placeholder: placeholder, showClear: true, onChange: (e) => commit(e.value) }));
|
|
36
60
|
default:
|
|
37
|
-
return (jsx(InputText, { value: filter.value ?? '', placeholder: placeholder, className:
|
|
61
|
+
return (jsx(InputText, { value: filter.value ?? '', placeholder: placeholder, className: 'w-full', onChange: (e) => commit(e.target.value, e) }));
|
|
38
62
|
}
|
|
39
63
|
})();
|
|
40
|
-
|
|
64
|
+
const valueInput = filterElement
|
|
65
|
+
? filterElement({
|
|
66
|
+
field,
|
|
67
|
+
value: filter.value,
|
|
68
|
+
// SAFETY: PrimeReact stores the Cratis vocabulary's runtime string values unchanged.
|
|
69
|
+
matchMode: filter.matchMode,
|
|
70
|
+
onChange: (value, matchMode) => commit(value, undefined, matchMode),
|
|
71
|
+
onApply: filter.onApply,
|
|
72
|
+
onClear: filter.onClear,
|
|
73
|
+
})
|
|
74
|
+
: builtInValueInput;
|
|
75
|
+
return (jsxs(Popover.Root, { open: filter.overlayVisible, onOpenChange: (event) => event.value ? filter.onShowOverlay() : filter.onHideOverlay(), children: [jsx(Popover.Trigger, { "aria-label": resolvedLabels.filterTriggerAriaLabel(field), className: filter.isActive
|
|
76
|
+
? 'cratis-filter-trigger cratis-filter-trigger--active'
|
|
77
|
+
: 'cratis-filter-trigger', children: jsx("i", { className: 'pi pi-filter' }) }), jsx(Popover.Portal, { children: jsx(Popover.Positioner, { children: jsx(Popover.Popup, { children: jsx(Popover.Content, { children: jsxs("div", { className: 'cratis-filter-menu', children: [showMatchModes && (jsx(Dropdown, { value: filter.matchMode, options: filter.matchModeOptions, optionLabel: 'label', optionValue: 'value', onChange: (e) => filter.onChange(eventForFilter(e.originalEvent), filter.value, e.value) })), valueInput, jsxs("div", { className: 'cratis-filter-menu-actions', children: [jsx(Button, { variant: 'outlined', onClick: (e) => filter.onClear(e), children: jsx("span", { children: resolvedLabels.clear }) }), jsx(Button, { onClick: (e) => filter.onApply(e), children: jsx("span", { children: resolvedLabels.apply }) })] })] }) }) }) }) })] }));
|
|
41
78
|
} }));
|
|
42
79
|
|
|
43
|
-
export { ColumnFilterMenu };
|
|
80
|
+
export { ColumnFilterMenu, defaultColumnFilterMenuLabels };
|
|
44
81
|
//# sourceMappingURL=ColumnFilterMenu.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ColumnFilterMenu.js","sources":["../../../DataTables/ColumnFilterMenu.tsx"],"sourcesContent":[null],"names":["_jsx","_jsxs"],"mappings":";;;;;;;;;
|
|
1
|
+
{"version":3,"file":"ColumnFilterMenu.js","sources":["../../../DataTables/ColumnFilterMenu.tsx"],"sourcesContent":[null],"names":["_jsx","_jsxs"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DataTableCore.d.ts","sourceRoot":"","sources":["../../../DataTables/DataTableCore.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,EAAqB,KAAK,aAAa,EAAE,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"DataTableCore.d.ts","sourceRoot":"","sources":["../../../DataTables/DataTableCore.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,EAAqB,KAAK,aAAa,EAAE,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAIrF,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,uCAAuC,CAAC;AAShF,OAAO,KAAK,EAAE,6BAA6B,EAAE,MAAM,iCAAiC,CAAC;AACrF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAejE,MAAM,WAAW,sBAAsB,CAAC,KAAK;IAEzC,IAAI,EAAE,KAAK,CAAC;IAEZ,KAAK,EAAE,MAAM,CAAC;CACjB;AAOD,MAAM,WAAW,kBAAkB,CAAC,KAAK,SAAS,MAAM;IAEpD,IAAI,EAAE,KAAK,EAAE,CAAC;IAEd,QAAQ,CAAC,EAAE,SAAS,CAAC;IAErB,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB,YAAY,EAAE,SAAS,CAAC;IAExB,aAAa,CAAC,EAAE,QAAQ,CAAC;IAEzB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAE5B,SAAS,CAAC,EAAE,KAAK,GAAG,IAAI,CAAC;IAEzB,iBAAiB,CAAC,EAAE,CAAC,KAAK,EAAE,6BAA6B,CAAC,KAAK,CAAC,KAAK,IAAI,CAAC;IAE1E,UAAU,CAAC,EAAE,CAAC,KAAK,EAAE,sBAAsB,CAAC,KAAK,CAAC,KAAK,IAAI,CAAC;IAE5D,YAAY,CAAC,EAAE,CAAC,OAAO,EAAE,KAAK,KAAK,MAAM,CAAC;IAE1C,kBAAkB,CAAC,EAAE,MAAM,EAAE,CAAC;IAE9B,uBAAuB,CAAC,EAAE,MAAM,CAAC;IAEjC,cAAc,CAAC,EAAE,mBAAmB,CAAC;IAErC,QAAQ,CAAC,EAAE,CAAC,OAAO,EAAE,mBAAmB,KAAK,IAAI,CAAC;IAElD,UAAU,CAAC,EAAE,OAAO,CAAC;IAErB,YAAY,CAAC,EAAE,MAAM,CAAC;IAEtB,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB,KAAK,CAAC,EAAE,aAAa,CAAC;IAEtB,EAAE,CAAC,EAAE,kBAAkB,CAAC,IAAI,CAAC,CAAC;IAE9B,SAAS,CAAC,EAAE,kBAAkB,CAAC,WAAW,CAAC,CAAC;IAE5C,QAAQ,CAAC,EAAE,OAAO,CAAC;CACtB;AAsCD,eAAO,MAAM,aAAa,GAAI,KAAK,SAAS,MAAM,EAAE,mRAsBjD,kBAAkB,CAAC,KAAK,CAAC,sBAoL3B,CAAC"}
|
|
@@ -2,10 +2,16 @@ import { jsxs, jsx } from 'react/jsx-runtime';
|
|
|
2
2
|
import React, { useState, useMemo } from 'react';
|
|
3
3
|
import { DataTable } from 'primereact/datatable';
|
|
4
4
|
import { InputText } from 'primereact/inputtext';
|
|
5
|
+
import { unregisterMatcher, registerMatcher } from '@primereact/hooks/use-filter';
|
|
5
6
|
import { ColumnFilterMenu } from './ColumnFilterMenu.js';
|
|
6
7
|
import { selectionKeysForRow, rowFromSelectionKeys } from './selectionKeys.js';
|
|
8
|
+
import { attachDataTableFilterMatcherAdapter } from './DataTableFilterMatcherRegistry.js';
|
|
7
9
|
|
|
8
|
-
|
|
10
|
+
attachDataTableFilterMatcherAdapter({
|
|
11
|
+
register: registerMatcher,
|
|
12
|
+
unregister: unregisterMatcher,
|
|
13
|
+
});
|
|
14
|
+
/** Parses column definitions from `<Column>` children. */
|
|
9
15
|
const useColumns = (children) => useMemo(() => React.Children.toArray(children).filter(React.isValidElement), [children]);
|
|
10
16
|
const renderCellContent = (column, row) => {
|
|
11
17
|
if (column.body)
|
|
@@ -38,6 +44,7 @@ const DataTableCore = ({ data, children, dataKey, emptyMessage, selectionMode, s
|
|
|
38
44
|
const handleFilter = (event) => {
|
|
39
45
|
// PrimeReact's headless filter meta is looser than the typed Cratis
|
|
40
46
|
// constraint the public API exposes; narrow at this one boundary.
|
|
47
|
+
// SAFETY: DataTableCore only configures one value/match-mode constraint per field.
|
|
41
48
|
const next = event.filters;
|
|
42
49
|
setFilters(next);
|
|
43
50
|
onFilter?.(next);
|
|
@@ -47,12 +54,24 @@ const DataTableCore = ({ data, children, dataKey, emptyMessage, selectionMode, s
|
|
|
47
54
|
const handleSelectionChange = (event) => {
|
|
48
55
|
if (!onSelectionChange)
|
|
49
56
|
return;
|
|
50
|
-
onSelectionChange({
|
|
57
|
+
onSelectionChange({
|
|
58
|
+
value: rowFromSelectionKeys(event.value, data, dataKey),
|
|
59
|
+
originalEvent: event.originalEvent,
|
|
60
|
+
});
|
|
51
61
|
};
|
|
52
62
|
const handleRowClick = onRowClick
|
|
53
63
|
? (event) => onRowClick({ data: event.data, index: event.index })
|
|
54
64
|
: undefined;
|
|
55
|
-
return (jsxs(DataTable.Root, { data: data, dataKey: dataKey, removableSort: true, selectionMode: selectionMode ?? null, selectionKeys: selectionKeys, onSelectionChange: onSelectionChange ? handleSelectionChange : undefined, onRowClick: handleRowClick, filters: filters, onFilter: handleFilter, globalFilter: globalFilter || null, globalFilterFields: globalFilterFields, scrollable: scrollable, scrollHeight: scrollHeight, className: className, style: style, pt: pt, ptOptions: ptOptions, unstyled: unstyled, children: [showGlobalSearch && (jsx("div", { className:
|
|
65
|
+
return (jsxs(DataTable.Root, { data: data, dataKey: dataKey, removableSort: true, selectionMode: selectionMode ?? null, selectionKeys: selectionKeys, onSelectionChange: onSelectionChange ? handleSelectionChange : undefined, onRowClick: handleRowClick, filters: filters, onFilter: handleFilter, globalFilter: globalFilter || null, globalFilterFields: globalFilterFields, scrollable: scrollable, scrollHeight: scrollHeight, className: className, style: style, pt: pt, ptOptions: ptOptions, unstyled: unstyled, children: [showGlobalSearch && (jsx("div", { className: 'cratis-datatable-search', children: jsx(InputText, { value: globalFilter, placeholder: globalSearchPlaceholder, className: 'w-full', onChange: (event) => setGlobalFilter(event.target.value) }) })), jsx(DataTable.TableContainer, { children: jsxs(DataTable.Table, { children: [jsx(DataTable.THead, { children: jsx(DataTable.THeadRow, { children: columns.map((column, index) => (jsx(DataTable.THeadCell, { style: column.props.headerStyle ?? column.props.style, className: column.props.headerClassName, children: jsxs("div", { className: 'cratis-datatable-header-cell', children: [column.props.sortable && column.props.field ? (jsxs(DataTable.Sort, { field: column.props.field, pt: { root: { 'aria-sort': undefined } }, children: [jsx(DataTable.THeadTitle, { children: column.props.header }), jsxs(DataTable.SortIndicator, { match: 'asc', children: [' ', "\u25B2"] }), jsxs(DataTable.SortIndicator, { match: 'desc', children: [' ', "\u25BC"] })] })) : (jsx(DataTable.THeadTitle, { children: column.props.header })), column.props.filter &&
|
|
66
|
+
(column.props.filterField ??
|
|
67
|
+
column.props.field) && (jsx(ColumnFilterMenu, { field: (column.props.filterField ??
|
|
68
|
+
column.props.field), dataType: column.props.dataType, placeholder: column.props.filterPlaceholder, showMatchModes: column.props.showFilterMatchModes, filterElement: column.props.filterElement, labels: column.props.filterLabels }))] }) }, index))) }) }), jsx(DataTable.TBody, { children: ({ item, index }) => (jsx(DataTable.Row, { index: index, className: rowClassName?.(item), children: columns.map((column, columnIndex) => (jsx(DataTable.Cell, { style: {
|
|
69
|
+
...column.props.style,
|
|
70
|
+
...column.props.bodyStyle,
|
|
71
|
+
}, className: column.props.bodyClassName ??
|
|
72
|
+
column.props.className, children: column.props.selectionMode ? (jsx("input", { type: 'radio', readOnly: true, "aria-label": selectionAriaLabel, checked: !!selection &&
|
|
73
|
+
keyOf(item) ===
|
|
74
|
+
keyOf(selection) })) : (renderCellContent(column.props, item)) }, columnIndex))) })) }), jsx(DataTable.EmptyTBody, { className: 'p-datatable-tbody', children: jsx(DataTable.Row, { children: jsx(DataTable.Cell, { colSpan: Math.max(columns.length, 1), children: emptyMessage }) }) })] }) })] }));
|
|
56
75
|
};
|
|
57
76
|
|
|
58
77
|
export { DataTableCore };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DataTableCore.js","sources":["../../../DataTables/DataTableCore.tsx"],"sourcesContent":[null],"names":["_jsxs","PrimeDataTable","_jsx"],"mappings":"
|
|
1
|
+
{"version":3,"file":"DataTableCore.js","sources":["../../../DataTables/DataTableCore.tsx"],"sourcesContent":[null],"names":["_jsxs","PrimeDataTable","_jsx"],"mappings":"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"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { type DataTableCustomFilterMatchMode, type DataTableFilterMatcher } from './DataTableFilterMeta';
|
|
2
|
+
interface DataTableFilterMatcherAdapter {
|
|
3
|
+
register(name: string, matcher: DataTableFilterMatcher): void;
|
|
4
|
+
unregister(name: string): void;
|
|
5
|
+
}
|
|
6
|
+
export interface DataTableFilterMatcherRegistration {
|
|
7
|
+
matchMode: DataTableCustomFilterMatchMode;
|
|
8
|
+
unregister(): void;
|
|
9
|
+
}
|
|
10
|
+
export declare const registerDataTableFilterMatcher: (name: string, matcher: DataTableFilterMatcher) => DataTableFilterMatcherRegistration;
|
|
11
|
+
export declare const unregisterDataTableFilterMatcher: (registration: DataTableFilterMatcherRegistration) => void;
|
|
12
|
+
export declare const attachDataTableFilterMatcherAdapter: (next: DataTableFilterMatcherAdapter) => void;
|
|
13
|
+
export {};
|
|
14
|
+
//# sourceMappingURL=DataTableFilterMatcherRegistry.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DataTableFilterMatcherRegistry.d.ts","sourceRoot":"","sources":["../../../DataTables/DataTableFilterMatcherRegistry.ts"],"names":[],"mappings":"AAGA,OAAO,EAEH,KAAK,8BAA8B,EACnC,KAAK,sBAAsB,EAC9B,MAAM,uBAAuB,CAAC;AAE/B,UAAU,6BAA6B;IACnC,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,sBAAsB,GAAG,IAAI,CAAC;IAC9D,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;CAClC;AAaD,MAAM,WAAW,kCAAkC;IAC/C,SAAS,EAAE,8BAA8B,CAAC;IAC1C,UAAU,IAAI,IAAI,CAAC;CACtB;AAoBD,eAAO,MAAM,8BAA8B,GACvC,MAAM,MAAM,EACZ,SAAS,sBAAsB,KAChC,kCA6CF,CAAC;AAGF,eAAO,MAAM,gCAAgC,GACzC,cAAc,kCAAkC,KACjD,IAAiC,CAAC;AAGrC,eAAO,MAAM,mCAAmC,GAC5C,MAAM,6BAA6B,KACpC,IASF,CAAC"}
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
import { DataTableFilterMatchMode } from './DataTableFilterMeta.js';
|
|
2
|
+
|
|
3
|
+
// Copyright (c) Cratis. All rights reserved.
|
|
4
|
+
// Licensed under the MIT license. See LICENSE file in the project root for full license information.
|
|
5
|
+
const registryKey = Symbol.for('@cratis/components/data-table-filter-matchers/v2');
|
|
6
|
+
// SAFETY: Symbol.for gives every loaded Components copy the same isolated registry slot.
|
|
7
|
+
const registryHost = globalThis;
|
|
8
|
+
const registry = (registryHost[registryKey] ??= {
|
|
9
|
+
matchers: new Map(),
|
|
10
|
+
adapters: new Set(),
|
|
11
|
+
});
|
|
12
|
+
const builtInMatchModes = new Set(Object.values(DataTableFilterMatchMode));
|
|
13
|
+
const customMatchModePattern = /^[A-Za-z][A-Za-z0-9._:-]*$/;
|
|
14
|
+
const forbiddenMatchModes = new Set(['__proto__', 'prototype', 'constructor']);
|
|
15
|
+
/**
|
|
16
|
+
* Registers a process-wide custom matcher through the Cratis filter vocabulary.
|
|
17
|
+
* Reusing a name is allowed only with the same matcher function.
|
|
18
|
+
*/
|
|
19
|
+
const registerDataTableFilterMatcher = (name, matcher) => {
|
|
20
|
+
if (!customMatchModePattern.test(name) || forbiddenMatchModes.has(name)) {
|
|
21
|
+
throw new Error('A custom data-table filter match mode must start with a letter and contain only letters, numbers, dots, colons, underscores, or hyphens.');
|
|
22
|
+
}
|
|
23
|
+
if (builtInMatchModes.has(name)) {
|
|
24
|
+
throw new Error(`'${name}' is a built-in data-table filter match mode and cannot be replaced.`);
|
|
25
|
+
}
|
|
26
|
+
const existing = registry.matchers.get(name);
|
|
27
|
+
if (existing && existing.matcher !== matcher) {
|
|
28
|
+
throw new Error(`A different data-table filter matcher is already registered as '${name}'.`);
|
|
29
|
+
}
|
|
30
|
+
const owner = Symbol(name);
|
|
31
|
+
const registered = existing ?? { matcher, owners: new Set() };
|
|
32
|
+
registered.owners.add(owner);
|
|
33
|
+
registry.matchers.set(name, registered);
|
|
34
|
+
if (!existing) {
|
|
35
|
+
registry.adapters.forEach((current) => current.register(name, matcher));
|
|
36
|
+
}
|
|
37
|
+
// SAFETY: The branded value is returned only with a live registration handle.
|
|
38
|
+
const matchMode = name;
|
|
39
|
+
let active = true;
|
|
40
|
+
const unregister = () => {
|
|
41
|
+
if (!active)
|
|
42
|
+
return;
|
|
43
|
+
active = false;
|
|
44
|
+
const current = registry.matchers.get(name);
|
|
45
|
+
if (!current || current.matcher !== matcher)
|
|
46
|
+
return;
|
|
47
|
+
current.owners.delete(owner);
|
|
48
|
+
if (current.owners.size > 0)
|
|
49
|
+
return;
|
|
50
|
+
registry.matchers.delete(name);
|
|
51
|
+
registry.adapters.forEach((currentAdapter) => currentAdapter.unregister(name));
|
|
52
|
+
};
|
|
53
|
+
return { matchMode, unregister };
|
|
54
|
+
};
|
|
55
|
+
/** Removes a custom matcher registration. Safe to call more than once. */
|
|
56
|
+
const unregisterDataTableFilterMatcher = (registration) => registration.unregister();
|
|
57
|
+
/** Connects the active rendering adapter to the Cratis-owned matcher registry. */
|
|
58
|
+
const attachDataTableFilterMatcherAdapter = (next) => {
|
|
59
|
+
const alreadyAttached = Array.from(registry.adapters).some((current) => current.register === next.register && current.unregister === next.unregister);
|
|
60
|
+
if (alreadyAttached)
|
|
61
|
+
return;
|
|
62
|
+
registry.adapters.add(next);
|
|
63
|
+
registry.matchers.forEach((entry, name) => next.register(name, entry.matcher));
|
|
64
|
+
};
|
|
65
|
+
|
|
66
|
+
export { attachDataTableFilterMatcherAdapter, registerDataTableFilterMatcher, unregisterDataTableFilterMatcher };
|
|
67
|
+
//# sourceMappingURL=DataTableFilterMatcherRegistry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DataTableFilterMatcherRegistry.js","sources":["../../../DataTables/DataTableFilterMatcherRegistry.ts"],"sourcesContent":[null],"names":[],"mappings":";;AAAA;AACA;AA6BA,MAAM,WAAW,GAAG,MAAM,CAAC,GAAG,CAAC,kDAAkD,CAAC;AAClF;AACA,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;AAE9E;;;AAGG;MACU,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;AAEA;AACO,MAAM,gCAAgC,GAAG,CAC5C,YAAgD,KACzC,YAAY,CAAC,UAAU;AAElC;AACO,MAAM,mCAAmC,GAAG,CAC/C,IAAmC,KAC7B;AACN,IAAA,MAAM,eAAe,GAAG,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,IAAI,CACtD,CAAC,OAAO,KACJ,OAAO,CAAC,QAAQ,KAAK,IAAI,CAAC,QAAQ,IAAI,OAAO,CAAC,UAAU,KAAK,IAAI,CAAC,UAAU,CACnF;AACD,IAAA,IAAI,eAAe;QAAE;AAErB,IAAA,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC;IAC3B,QAAQ,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,IAAI,KAAK,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;AAClF;;"}
|