@stackone/malachite 2.21.0 → 2.23.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/ShadowRootWrapper.js +83 -0
- package/dist/ShadowRootWrapper.js.map +1 -0
- package/dist/assets/icons/account.svg.js +6 -0
- package/dist/assets/icons/account.svg.js.map +1 -0
- package/dist/assets/icons/accounts.svg.js +6 -0
- package/dist/assets/icons/accounts.svg.js.map +1 -0
- package/dist/assets/icons/add.svg.js +6 -0
- package/dist/assets/icons/add.svg.js.map +1 -0
- package/dist/assets/icons/advanced_logs.svg.js +6 -0
- package/dist/assets/icons/advanced_logs.svg.js.map +1 -0
- package/dist/assets/icons/api_keys.svg.js +6 -0
- package/dist/assets/icons/api_keys.svg.js.map +1 -0
- package/dist/assets/icons/archive.svg.js +6 -0
- package/dist/assets/icons/archive.svg.js.map +1 -0
- package/dist/assets/icons/arrow_left.svg.js +6 -0
- package/dist/assets/icons/arrow_left.svg.js.map +1 -0
- package/dist/assets/icons/arrow_up.svg.js +6 -0
- package/dist/assets/icons/arrow_up.svg.js.map +1 -0
- package/dist/assets/icons/arrow_up_right.svg.js +6 -0
- package/dist/assets/icons/arrow_up_right.svg.js.map +1 -0
- package/dist/assets/icons/authentication.svg.js +6 -0
- package/dist/assets/icons/authentication.svg.js.map +1 -0
- package/dist/assets/icons/bell.svg.js +6 -0
- package/dist/assets/icons/bell.svg.js.map +1 -0
- package/dist/assets/icons/bell_slash.svg.js +6 -0
- package/dist/assets/icons/bell_slash.svg.js.map +1 -0
- package/dist/assets/icons/bi_directional_arrows.svg.js +6 -0
- package/dist/assets/icons/bi_directional_arrows.svg.js.map +1 -0
- package/dist/assets/icons/card.svg.js +6 -0
- package/dist/assets/icons/card.svg.js.map +1 -0
- package/dist/assets/icons/caret_down.svg.js +6 -0
- package/dist/assets/icons/caret_down.svg.js.map +1 -0
- package/dist/assets/icons/caret_left.svg.js +6 -0
- package/dist/assets/icons/caret_left.svg.js.map +1 -0
- package/dist/assets/icons/caret_right.svg.js +6 -0
- package/dist/assets/icons/caret_right.svg.js.map +1 -0
- package/dist/assets/icons/caret_up.svg.js +6 -0
- package/dist/assets/icons/caret_up.svg.js.map +1 -0
- package/dist/assets/icons/change_password.svg.js +6 -0
- package/dist/assets/icons/change_password.svg.js.map +1 -0
- package/dist/assets/icons/check.svg.js +6 -0
- package/dist/assets/icons/check.svg.js.map +1 -0
- package/dist/assets/icons/check_circle_filled.svg.js +6 -0
- package/dist/assets/icons/check_circle_filled.svg.js.map +1 -0
- package/dist/assets/icons/checkmark.svg.js +6 -0
- package/dist/assets/icons/checkmark.svg.js.map +1 -0
- package/dist/assets/icons/clear.svg.js +6 -0
- package/dist/assets/icons/clear.svg.js.map +1 -0
- package/dist/assets/icons/close.svg.js +6 -0
- package/dist/assets/icons/close.svg.js.map +1 -0
- package/dist/assets/icons/code.svg.js +6 -0
- package/dist/assets/icons/code.svg.js.map +1 -0
- package/dist/assets/icons/command_key.svg.js +6 -0
- package/dist/assets/icons/command_key.svg.js.map +1 -0
- package/dist/assets/icons/copy.svg.js +6 -0
- package/dist/assets/icons/copy.svg.js.map +1 -0
- package/dist/assets/icons/csv.svg.js +6 -0
- package/dist/assets/icons/csv.svg.js.map +1 -0
- package/dist/assets/icons/custom_field.svg.js +6 -0
- package/dist/assets/icons/custom_field.svg.js.map +1 -0
- package/dist/assets/icons/dashboard.svg.js +6 -0
- package/dist/assets/icons/dashboard.svg.js.map +1 -0
- package/dist/assets/icons/date.svg.js +6 -0
- package/dist/assets/icons/date.svg.js.map +1 -0
- package/dist/assets/icons/disable.svg.js +6 -0
- package/dist/assets/icons/disable.svg.js.map +1 -0
- package/dist/assets/icons/disabled.svg.js +6 -0
- package/dist/assets/icons/disabled.svg.js.map +1 -0
- package/dist/assets/icons/dismiss.svg.js +6 -0
- package/dist/assets/icons/dismiss.svg.js.map +1 -0
- package/dist/assets/icons/doc.svg.js +6 -0
- package/dist/assets/icons/doc.svg.js.map +1 -0
- package/dist/assets/icons/double_check.svg.js +6 -0
- package/dist/assets/icons/double_check.svg.js.map +1 -0
- package/dist/assets/icons/download.svg.js +6 -0
- package/dist/assets/icons/download.svg.js.map +1 -0
- package/dist/assets/icons/edit.svg.js +6 -0
- package/dist/assets/icons/edit.svg.js.map +1 -0
- package/dist/assets/icons/enable.svg.js +6 -0
- package/dist/assets/icons/enable.svg.js.map +1 -0
- package/dist/assets/icons/enum.svg.js +6 -0
- package/dist/assets/icons/enum.svg.js.map +1 -0
- package/dist/assets/icons/error_circle_filled.svg.js +6 -0
- package/dist/assets/icons/error_circle_filled.svg.js.map +1 -0
- package/dist/assets/icons/expand.svg.js +6 -0
- package/dist/assets/icons/expand.svg.js.map +1 -0
- package/dist/assets/icons/eye-closed.svg.js +6 -0
- package/dist/assets/icons/eye-closed.svg.js.map +1 -0
- package/dist/assets/icons/eye.svg.js +6 -0
- package/dist/assets/icons/eye.svg.js.map +1 -0
- package/dist/assets/icons/field_mapping.svg.js +6 -0
- package/dist/assets/icons/field_mapping.svg.js.map +1 -0
- package/dist/assets/icons/filled_caret_down.svg.js +6 -0
- package/dist/assets/icons/filled_caret_down.svg.js.map +1 -0
- package/dist/assets/icons/filled_caret_right.svg.js +6 -0
- package/dist/assets/icons/filled_caret_right.svg.js.map +1 -0
- package/dist/assets/icons/filter.svg.js +6 -0
- package/dist/assets/icons/filter.svg.js.map +1 -0
- package/dist/assets/icons/forbidden.svg.js +6 -0
- package/dist/assets/icons/forbidden.svg.js.map +1 -0
- package/dist/assets/icons/forward_arrow.svg.js +6 -0
- package/dist/assets/icons/forward_arrow.svg.js.map +1 -0
- package/dist/assets/icons/globe.svg.js +6 -0
- package/dist/assets/icons/globe.svg.js.map +1 -0
- package/dist/assets/icons/inbox.svg.js +6 -0
- package/dist/assets/icons/inbox.svg.js.map +1 -0
- package/dist/assets/icons/info.svg.js +6 -0
- package/dist/assets/icons/info.svg.js.map +1 -0
- package/dist/assets/icons/info_circle_filled.svg.js +6 -0
- package/dist/assets/icons/info_circle_filled.svg.js.map +1 -0
- package/dist/assets/icons/info_filled.svg.js +6 -0
- package/dist/assets/icons/info_filled.svg.js.map +1 -0
- package/dist/assets/icons/integrations.svg.js +6 -0
- package/dist/assets/icons/integrations.svg.js.map +1 -0
- package/dist/assets/icons/key.svg.js +6 -0
- package/dist/assets/icons/key.svg.js.map +1 -0
- package/dist/assets/icons/library.svg.js +6 -0
- package/dist/assets/icons/library.svg.js.map +1 -0
- package/dist/assets/icons/logs.svg.js +6 -0
- package/dist/assets/icons/logs.svg.js.map +1 -0
- package/dist/assets/icons/magic_wand.svg.js +6 -0
- package/dist/assets/icons/magic_wand.svg.js.map +1 -0
- package/dist/assets/icons/manage_team.svg.js +6 -0
- package/dist/assets/icons/manage_team.svg.js.map +1 -0
- package/dist/assets/icons/manual_native_webhook.svg.js +6 -0
- package/dist/assets/icons/manual_native_webhook.svg.js.map +1 -0
- package/dist/assets/icons/mark_read.svg.js +6 -0
- package/dist/assets/icons/mark_read.svg.js.map +1 -0
- package/dist/assets/icons/mark_unread.svg.js +6 -0
- package/dist/assets/icons/mark_unread.svg.js.map +1 -0
- package/dist/assets/icons/members.svg.js +6 -0
- package/dist/assets/icons/members.svg.js.map +1 -0
- package/dist/assets/icons/modal.svg.js +6 -0
- package/dist/assets/icons/modal.svg.js.map +1 -0
- package/dist/assets/icons/more_horizontal.svg.js +6 -0
- package/dist/assets/icons/more_horizontal.svg.js.map +1 -0
- package/dist/assets/icons/more_vertical.svg.js +6 -0
- package/dist/assets/icons/more_vertical.svg.js.map +1 -0
- package/dist/assets/icons/navbar_collapse.svg.js +6 -0
- package/dist/assets/icons/navbar_collapse.svg.js.map +1 -0
- package/dist/assets/icons/navbar_expand.svg.js +6 -0
- package/dist/assets/icons/navbar_expand.svg.js.map +1 -0
- package/dist/assets/icons/not_found.svg.js +6 -0
- package/dist/assets/icons/not_found.svg.js.map +1 -0
- package/dist/assets/icons/organization.svg.js +6 -0
- package/dist/assets/icons/organization.svg.js.map +1 -0
- package/dist/assets/icons/pin.svg.js +6 -0
- package/dist/assets/icons/pin.svg.js.map +1 -0
- package/dist/assets/icons/plus.svg.js +6 -0
- package/dist/assets/icons/plus.svg.js.map +1 -0
- package/dist/assets/icons/preview.svg.js +6 -0
- package/dist/assets/icons/preview.svg.js.map +1 -0
- package/dist/assets/icons/programmatic_native_webhook.svg.js +6 -0
- package/dist/assets/icons/programmatic_native_webhook.svg.js.map +1 -0
- package/dist/assets/icons/pulse.svg.js +6 -0
- package/dist/assets/icons/pulse.svg.js.map +1 -0
- package/dist/assets/icons/refresh.svg.js +6 -0
- package/dist/assets/icons/refresh.svg.js.map +1 -0
- package/dist/assets/icons/reject.svg.js +6 -0
- package/dist/assets/icons/reject.svg.js.map +1 -0
- package/dist/assets/icons/reload.svg.js +6 -0
- package/dist/assets/icons/reload.svg.js.map +1 -0
- package/dist/assets/icons/reply.svg.js +6 -0
- package/dist/assets/icons/reply.svg.js.map +1 -0
- package/dist/assets/icons/required_field_indicator.svg.js +6 -0
- package/dist/assets/icons/required_field_indicator.svg.js.map +1 -0
- package/dist/assets/icons/search.svg.js +6 -0
- package/dist/assets/icons/search.svg.js.map +1 -0
- package/dist/assets/icons/security.svg.js +6 -0
- package/dist/assets/icons/security.svg.js.map +1 -0
- package/dist/assets/icons/send.svg.js +6 -0
- package/dist/assets/icons/send.svg.js.map +1 -0
- package/dist/assets/icons/settings.svg.js +6 -0
- package/dist/assets/icons/settings.svg.js.map +1 -0
- package/dist/assets/icons/sign_out.svg.js +6 -0
- package/dist/assets/icons/sign_out.svg.js.map +1 -0
- package/dist/assets/icons/slider.svg.js +6 -0
- package/dist/assets/icons/slider.svg.js.map +1 -0
- package/dist/assets/icons/sort.svg.js +6 -0
- package/dist/assets/icons/sort.svg.js.map +1 -0
- package/dist/assets/icons/source.svg.js +6 -0
- package/dist/assets/icons/source.svg.js.map +1 -0
- package/dist/assets/icons/sparkle.svg.js +6 -0
- package/dist/assets/icons/sparkle.svg.js.map +1 -0
- package/dist/assets/icons/star.svg.js +6 -0
- package/dist/assets/icons/star.svg.js.map +1 -0
- package/dist/assets/icons/step_current.svg.js +6 -0
- package/dist/assets/icons/step_current.svg.js.map +1 -0
- package/dist/assets/icons/step_upcoming.svg.js +6 -0
- package/dist/assets/icons/step_upcoming.svg.js.map +1 -0
- package/dist/assets/icons/synthetic_webhook.svg.js +6 -0
- package/dist/assets/icons/synthetic_webhook.svg.js.map +1 -0
- package/dist/assets/icons/thumbs_down.svg.js +6 -0
- package/dist/assets/icons/thumbs_down.svg.js.map +1 -0
- package/dist/assets/icons/thumbs_up.svg.js +6 -0
- package/dist/assets/icons/thumbs_up.svg.js.map +1 -0
- package/dist/assets/icons/trash.svg.js +6 -0
- package/dist/assets/icons/trash.svg.js.map +1 -0
- package/dist/assets/icons/triangle_down.svg.js +6 -0
- package/dist/assets/icons/triangle_down.svg.js.map +1 -0
- package/dist/assets/icons/triangle_right.svg.js +6 -0
- package/dist/assets/icons/triangle_right.svg.js.map +1 -0
- package/dist/assets/icons/unarchive.svg.js +6 -0
- package/dist/assets/icons/unarchive.svg.js.map +1 -0
- package/dist/assets/icons/upload.svg.js +6 -0
- package/dist/assets/icons/upload.svg.js.map +1 -0
- package/dist/assets/icons/warning_circle_filled.svg.js +6 -0
- package/dist/assets/icons/warning_circle_filled.svg.js.map +1 -0
- package/dist/assets/icons/warning_triangle.svg.js +6 -0
- package/dist/assets/icons/warning_triangle.svg.js.map +1 -0
- package/dist/assets/icons/webhook-events.svg.js +6 -0
- package/dist/assets/icons/webhook-events.svg.js.map +1 -0
- package/dist/assets/icons/webhook.svg.js +6 -0
- package/dist/assets/icons/webhook.svg.js.map +1 -0
- package/dist/assets/icons/webhook_signing_secret.svg.js +6 -0
- package/dist/assets/icons/webhook_signing_secret.svg.js.map +1 -0
- package/dist/assets/logo-stackone-desaturated.png.js +5 -0
- package/dist/assets/logo-stackone-desaturated.png.js.map +1 -0
- package/dist/components/Accordion.js +105 -0
- package/dist/components/Accordion.js.map +1 -0
- package/dist/components/ActionBar.js +66 -0
- package/dist/components/ActionBar.js.map +1 -0
- package/dist/components/ActionMenu.js +174 -0
- package/dist/components/ActionMenu.js.map +1 -0
- package/dist/components/Alert.js +136 -0
- package/dist/components/Alert.js.map +1 -0
- package/dist/components/AppLogo.js +43 -0
- package/dist/components/AppLogo.js.map +1 -0
- package/dist/components/Avatar.js +61 -0
- package/dist/components/Avatar.js.map +1 -0
- package/dist/components/BaseFormComponent.js +116 -0
- package/dist/components/BaseFormComponent.js.map +1 -0
- package/dist/components/Breadcrumbs.js +106 -0
- package/dist/components/Breadcrumbs.js.map +1 -0
- package/dist/components/Button.js +227 -0
- package/dist/components/Button.js.map +1 -0
- package/dist/components/ButtonList.js +40 -0
- package/dist/components/ButtonList.js.map +1 -0
- package/dist/components/Card.js +109 -0
- package/dist/components/Card.js.map +1 -0
- package/dist/components/CardStrip.js +454 -0
- package/dist/components/CardStrip.js.map +1 -0
- package/dist/components/ChangeReview/ChangeReviewItem.js +129 -0
- package/dist/components/ChangeReview/ChangeReviewItem.js.map +1 -0
- package/dist/components/ChangeReview/ChangeReviewJump.js +27 -0
- package/dist/components/ChangeReview/ChangeReviewJump.js.map +1 -0
- package/dist/components/ChangeReview/ChangeReviewRemoved.js +37 -0
- package/dist/components/ChangeReview/ChangeReviewRemoved.js.map +1 -0
- package/dist/components/ChangeReview/ChangeReviewSummary.js +56 -0
- package/dist/components/ChangeReview/ChangeReviewSummary.js.map +1 -0
- package/dist/components/ChangeReview/index.js +15 -0
- package/dist/components/ChangeReview/index.js.map +1 -0
- package/dist/components/Chat/ChatComposer.js +100 -0
- package/dist/components/Chat/ChatComposer.js.map +1 -0
- package/dist/components/Chat/ChatComposerChip.js +28 -0
- package/dist/components/Chat/ChatComposerChip.js.map +1 -0
- package/dist/components/Chat/ChatContext.js +55 -0
- package/dist/components/Chat/ChatContext.js.map +1 -0
- package/dist/components/Chat/ChatContextMeter.js +30 -0
- package/dist/components/Chat/ChatContextMeter.js.map +1 -0
- package/dist/components/Chat/ChatHeader.js +44 -0
- package/dist/components/Chat/ChatHeader.js.map +1 -0
- package/dist/components/Chat/ChatMessage.js +127 -0
- package/dist/components/Chat/ChatMessage.js.map +1 -0
- package/dist/components/Chat/ChatModelPicker.js +207 -0
- package/dist/components/Chat/ChatModelPicker.js.map +1 -0
- package/dist/components/Chat/ChatRoot.js +6 -0
- package/dist/components/Chat/ChatRoot.js.map +1 -0
- package/dist/components/Chat/ChatSuggestion.js +22 -0
- package/dist/components/Chat/ChatSuggestion.js.map +1 -0
- package/dist/components/Chat/ChatThinking.js +20 -0
- package/dist/components/Chat/ChatThinking.js.map +1 -0
- package/dist/components/Chat/ChatThread.js +68 -0
- package/dist/components/Chat/ChatThread.js.map +1 -0
- package/dist/components/Chat/ChatToolCall.js +59 -0
- package/dist/components/Chat/ChatToolCall.js.map +1 -0
- package/dist/components/Chat/index.js +29 -0
- package/dist/components/Chat/index.js.map +1 -0
- package/dist/components/Chat/stickToBottom.js +29 -0
- package/dist/components/Chat/stickToBottom.js.map +1 -0
- package/dist/components/Chat/tokenText.js +6 -0
- package/dist/components/Chat/tokenText.js.map +1 -0
- package/dist/components/Checkbox.js +79 -0
- package/dist/components/Checkbox.js.map +1 -0
- package/dist/components/ClampText.js +30 -0
- package/dist/components/ClampText.js.map +1 -0
- package/dist/components/CodeBlock.js +223 -0
- package/dist/components/CodeBlock.js.map +1 -0
- package/dist/components/CodeBlockHighlighter.js +103 -0
- package/dist/components/CodeBlockHighlighter.js.map +1 -0
- package/dist/components/CollapsibleSection.js +40 -0
- package/dist/components/CollapsibleSection.js.map +1 -0
- package/dist/components/Confetti.js +56 -0
- package/dist/components/Confetti.js.map +1 -0
- package/dist/components/ConfirmationDialog.js +234 -0
- package/dist/components/ConfirmationDialog.js.map +1 -0
- package/dist/components/ConnectionHeader.js +47 -0
- package/dist/components/ConnectionHeader.js.map +1 -0
- package/dist/components/CustomIcons/AccountIcon.js +28 -0
- package/dist/components/CustomIcons/AccountIcon.js.map +1 -0
- package/dist/components/CustomIcons/AccountsIcon.js +28 -0
- package/dist/components/CustomIcons/AccountsIcon.js.map +1 -0
- package/dist/components/CustomIcons/AddIcon.js +28 -0
- package/dist/components/CustomIcons/AddIcon.js.map +1 -0
- package/dist/components/CustomIcons/AdvancedLogsIcon.js +21 -0
- package/dist/components/CustomIcons/AdvancedLogsIcon.js.map +1 -0
- package/dist/components/CustomIcons/ApiKeysIcon.js +16 -0
- package/dist/components/CustomIcons/ApiKeysIcon.js.map +1 -0
- package/dist/components/CustomIcons/ArchiveIcon.js +16 -0
- package/dist/components/CustomIcons/ArchiveIcon.js.map +1 -0
- package/dist/components/CustomIcons/ArrowLeftIcon.js +16 -0
- package/dist/components/CustomIcons/ArrowLeftIcon.js.map +1 -0
- package/dist/components/CustomIcons/ArrowUpIcon.js +28 -0
- package/dist/components/CustomIcons/ArrowUpIcon.js.map +1 -0
- package/dist/components/CustomIcons/ArrowUpRightIcon.js +20 -0
- package/dist/components/CustomIcons/ArrowUpRightIcon.js.map +1 -0
- package/dist/components/CustomIcons/AuthenticationIcon.js +28 -0
- package/dist/components/CustomIcons/AuthenticationIcon.js.map +1 -0
- package/dist/components/CustomIcons/BellIcon.js +16 -0
- package/dist/components/CustomIcons/BellIcon.js.map +1 -0
- package/dist/components/CustomIcons/BellSlashIcon.js +16 -0
- package/dist/components/CustomIcons/BellSlashIcon.js.map +1 -0
- package/dist/components/CustomIcons/BiDirectionalArrowsIcon.js +21 -0
- package/dist/components/CustomIcons/BiDirectionalArrowsIcon.js.map +1 -0
- package/dist/components/CustomIcons/CardIcon.js +16 -0
- package/dist/components/CustomIcons/CardIcon.js.map +1 -0
- package/dist/components/CustomIcons/CaretDownIcon.js +16 -0
- package/dist/components/CustomIcons/CaretDownIcon.js.map +1 -0
- package/dist/components/CustomIcons/CaretLeftIcon.js +16 -0
- package/dist/components/CustomIcons/CaretLeftIcon.js.map +1 -0
- package/dist/components/CustomIcons/CaretRightIcon.js +21 -0
- package/dist/components/CustomIcons/CaretRightIcon.js.map +1 -0
- package/dist/components/CustomIcons/CaretUpIcon.js +16 -0
- package/dist/components/CustomIcons/CaretUpIcon.js.map +1 -0
- package/dist/components/CustomIcons/ChangePasswordIcon.js +21 -0
- package/dist/components/CustomIcons/ChangePasswordIcon.js.map +1 -0
- package/dist/components/CustomIcons/CheckCircleFilled.js +21 -0
- package/dist/components/CustomIcons/CheckCircleFilled.js.map +1 -0
- package/dist/components/CustomIcons/CheckIcon.js +28 -0
- package/dist/components/CustomIcons/CheckIcon.js.map +1 -0
- package/dist/components/CustomIcons/CheckmarkIcon.js +16 -0
- package/dist/components/CustomIcons/CheckmarkIcon.js.map +1 -0
- package/dist/components/CustomIcons/ClearIcon.js +28 -0
- package/dist/components/CustomIcons/ClearIcon.js.map +1 -0
- package/dist/components/CustomIcons/CloseIcon.js +28 -0
- package/dist/components/CustomIcons/CloseIcon.js.map +1 -0
- package/dist/components/CustomIcons/CodeIcon.js +16 -0
- package/dist/components/CustomIcons/CodeIcon.js.map +1 -0
- package/dist/components/CustomIcons/CommandKeyIcon.js +21 -0
- package/dist/components/CustomIcons/CommandKeyIcon.js.map +1 -0
- package/dist/components/CustomIcons/CopyIcon.js +28 -0
- package/dist/components/CustomIcons/CopyIcon.js.map +1 -0
- package/dist/components/CustomIcons/CsvIcon.js +28 -0
- package/dist/components/CustomIcons/CsvIcon.js.map +1 -0
- package/dist/components/CustomIcons/CustomFieldIcon.js +21 -0
- package/dist/components/CustomIcons/CustomFieldIcon.js.map +1 -0
- package/dist/components/CustomIcons/DashboardIcon.js +28 -0
- package/dist/components/CustomIcons/DashboardIcon.js.map +1 -0
- package/dist/components/CustomIcons/DateIcon.js +28 -0
- package/dist/components/CustomIcons/DateIcon.js.map +1 -0
- package/dist/components/CustomIcons/DisableIcon.js +28 -0
- package/dist/components/CustomIcons/DisableIcon.js.map +1 -0
- package/dist/components/CustomIcons/DisabledIcon.js +28 -0
- package/dist/components/CustomIcons/DisabledIcon.js.map +1 -0
- package/dist/components/CustomIcons/DismissIcon.js +15 -0
- package/dist/components/CustomIcons/DismissIcon.js.map +1 -0
- package/dist/components/CustomIcons/DocIcon.js +28 -0
- package/dist/components/CustomIcons/DocIcon.js.map +1 -0
- package/dist/components/CustomIcons/DoubleCheckIcon.js +21 -0
- package/dist/components/CustomIcons/DoubleCheckIcon.js.map +1 -0
- package/dist/components/CustomIcons/DownloadIcon.js +28 -0
- package/dist/components/CustomIcons/DownloadIcon.js.map +1 -0
- package/dist/components/CustomIcons/EditIcon.js +28 -0
- package/dist/components/CustomIcons/EditIcon.js.map +1 -0
- package/dist/components/CustomIcons/EnableIcon.js +28 -0
- package/dist/components/CustomIcons/EnableIcon.js.map +1 -0
- package/dist/components/CustomIcons/EnumIcon.js +28 -0
- package/dist/components/CustomIcons/EnumIcon.js.map +1 -0
- package/dist/components/CustomIcons/ErrorCircleFilled.js +21 -0
- package/dist/components/CustomIcons/ErrorCircleFilled.js.map +1 -0
- package/dist/components/CustomIcons/ExpandIcon.js +28 -0
- package/dist/components/CustomIcons/ExpandIcon.js.map +1 -0
- package/dist/components/CustomIcons/EyeClosedIcon.js +16 -0
- package/dist/components/CustomIcons/EyeClosedIcon.js.map +1 -0
- package/dist/components/CustomIcons/EyeIcon.js +16 -0
- package/dist/components/CustomIcons/EyeIcon.js.map +1 -0
- package/dist/components/CustomIcons/FieldMappingIcon.js +21 -0
- package/dist/components/CustomIcons/FieldMappingIcon.js.map +1 -0
- package/dist/components/CustomIcons/FilledCaretDownIcon.js +21 -0
- package/dist/components/CustomIcons/FilledCaretDownIcon.js.map +1 -0
- package/dist/components/CustomIcons/FilledCaretRightIcon.js +21 -0
- package/dist/components/CustomIcons/FilledCaretRightIcon.js.map +1 -0
- package/dist/components/CustomIcons/FilterIcon.js +28 -0
- package/dist/components/CustomIcons/FilterIcon.js.map +1 -0
- package/dist/components/CustomIcons/ForbiddenIcon.js +28 -0
- package/dist/components/CustomIcons/ForbiddenIcon.js.map +1 -0
- package/dist/components/CustomIcons/ForwardArrowIcon.js +21 -0
- package/dist/components/CustomIcons/ForwardArrowIcon.js.map +1 -0
- package/dist/components/CustomIcons/GlobeIcon.js +16 -0
- package/dist/components/CustomIcons/GlobeIcon.js.map +1 -0
- package/dist/components/CustomIcons/InboxIcon.js +16 -0
- package/dist/components/CustomIcons/InboxIcon.js.map +1 -0
- package/dist/components/CustomIcons/InfoCircleFilled.js +21 -0
- package/dist/components/CustomIcons/InfoCircleFilled.js.map +1 -0
- package/dist/components/CustomIcons/InfoFilledIcon.js +21 -0
- package/dist/components/CustomIcons/InfoFilledIcon.js.map +1 -0
- package/dist/components/CustomIcons/InfoIcon.js +28 -0
- package/dist/components/CustomIcons/InfoIcon.js.map +1 -0
- package/dist/components/CustomIcons/IntegrationsIcon.js +28 -0
- package/dist/components/CustomIcons/IntegrationsIcon.js.map +1 -0
- package/dist/components/CustomIcons/KeyIcon.js +28 -0
- package/dist/components/CustomIcons/KeyIcon.js.map +1 -0
- package/dist/components/CustomIcons/LibraryIcon.js +16 -0
- package/dist/components/CustomIcons/LibraryIcon.js.map +1 -0
- package/dist/components/CustomIcons/LogsIcon.js +28 -0
- package/dist/components/CustomIcons/LogsIcon.js.map +1 -0
- package/dist/components/CustomIcons/MagicWandIcon.js +16 -0
- package/dist/components/CustomIcons/MagicWandIcon.js.map +1 -0
- package/dist/components/CustomIcons/ManageTeamIcon.js +21 -0
- package/dist/components/CustomIcons/ManageTeamIcon.js.map +1 -0
- package/dist/components/CustomIcons/ManualWebhookIcon.js +21 -0
- package/dist/components/CustomIcons/ManualWebhookIcon.js.map +1 -0
- package/dist/components/CustomIcons/MarkReadIcon.js +16 -0
- package/dist/components/CustomIcons/MarkReadIcon.js.map +1 -0
- package/dist/components/CustomIcons/MarkUnreadIcon.js +21 -0
- package/dist/components/CustomIcons/MarkUnreadIcon.js.map +1 -0
- package/dist/components/CustomIcons/MembersIcon.js +28 -0
- package/dist/components/CustomIcons/MembersIcon.js.map +1 -0
- package/dist/components/CustomIcons/ModalIcon.js +28 -0
- package/dist/components/CustomIcons/ModalIcon.js.map +1 -0
- package/dist/components/CustomIcons/MoreHorizontalIcon.js +21 -0
- package/dist/components/CustomIcons/MoreHorizontalIcon.js.map +1 -0
- package/dist/components/CustomIcons/MoreVerticalIcon.js +21 -0
- package/dist/components/CustomIcons/MoreVerticalIcon.js.map +1 -0
- package/dist/components/CustomIcons/NavbarCollapseIcon.js +21 -0
- package/dist/components/CustomIcons/NavbarCollapseIcon.js.map +1 -0
- package/dist/components/CustomIcons/NavbarExpandIcon.js +21 -0
- package/dist/components/CustomIcons/NavbarExpandIcon.js.map +1 -0
- package/dist/components/CustomIcons/NotFoundIcon.js +16 -0
- package/dist/components/CustomIcons/NotFoundIcon.js.map +1 -0
- package/dist/components/CustomIcons/OrganizationIcon.js +21 -0
- package/dist/components/CustomIcons/OrganizationIcon.js.map +1 -0
- package/dist/components/CustomIcons/PinIcon.js +16 -0
- package/dist/components/CustomIcons/PinIcon.js.map +1 -0
- package/dist/components/CustomIcons/PlusIcon.js +28 -0
- package/dist/components/CustomIcons/PlusIcon.js.map +1 -0
- package/dist/components/CustomIcons/PreviewIcon.js +28 -0
- package/dist/components/CustomIcons/PreviewIcon.js.map +1 -0
- package/dist/components/CustomIcons/ProgrammaticWebhookIcon.js +21 -0
- package/dist/components/CustomIcons/ProgrammaticWebhookIcon.js.map +1 -0
- package/dist/components/CustomIcons/PulseIcon.js +28 -0
- package/dist/components/CustomIcons/PulseIcon.js.map +1 -0
- package/dist/components/CustomIcons/RefreshIcon.js +28 -0
- package/dist/components/CustomIcons/RefreshIcon.js.map +1 -0
- package/dist/components/CustomIcons/RejectIcon.js +28 -0
- package/dist/components/CustomIcons/RejectIcon.js.map +1 -0
- package/dist/components/CustomIcons/ReloadIcon.js +28 -0
- package/dist/components/CustomIcons/ReloadIcon.js.map +1 -0
- package/dist/components/CustomIcons/ReplyIcon.js +16 -0
- package/dist/components/CustomIcons/ReplyIcon.js.map +1 -0
- package/dist/components/CustomIcons/RequiredFieldIndicatorIcon.js +21 -0
- package/dist/components/CustomIcons/RequiredFieldIndicatorIcon.js.map +1 -0
- package/dist/components/CustomIcons/SearchIcon.js +15 -0
- package/dist/components/CustomIcons/SearchIcon.js.map +1 -0
- package/dist/components/CustomIcons/SecurityIcon.js +28 -0
- package/dist/components/CustomIcons/SecurityIcon.js.map +1 -0
- package/dist/components/CustomIcons/SendIcon.js +16 -0
- package/dist/components/CustomIcons/SendIcon.js.map +1 -0
- package/dist/components/CustomIcons/SettingsIcon.js +28 -0
- package/dist/components/CustomIcons/SettingsIcon.js.map +1 -0
- package/dist/components/CustomIcons/SignOutIcon.js +16 -0
- package/dist/components/CustomIcons/SignOutIcon.js.map +1 -0
- package/dist/components/CustomIcons/SliderIcon.js +28 -0
- package/dist/components/CustomIcons/SliderIcon.js.map +1 -0
- package/dist/components/CustomIcons/SortIcon.js +28 -0
- package/dist/components/CustomIcons/SortIcon.js.map +1 -0
- package/dist/components/CustomIcons/SourceIcon.js +28 -0
- package/dist/components/CustomIcons/SourceIcon.js.map +1 -0
- package/dist/components/CustomIcons/SparkleIcon.js +16 -0
- package/dist/components/CustomIcons/SparkleIcon.js.map +1 -0
- package/dist/components/CustomIcons/StarIcon.js +16 -0
- package/dist/components/CustomIcons/StarIcon.js.map +1 -0
- package/dist/components/CustomIcons/StepCurrentIcon.js +21 -0
- package/dist/components/CustomIcons/StepCurrentIcon.js.map +1 -0
- package/dist/components/CustomIcons/StepUpcomingIcon.js +21 -0
- package/dist/components/CustomIcons/StepUpcomingIcon.js.map +1 -0
- package/dist/components/CustomIcons/SyntheticWebhookIcon.js +21 -0
- package/dist/components/CustomIcons/SyntheticWebhookIcon.js.map +1 -0
- package/dist/components/CustomIcons/ThumbsDownIcon.js +21 -0
- package/dist/components/CustomIcons/ThumbsDownIcon.js.map +1 -0
- package/dist/components/CustomIcons/ThumbsUpIcon.js +16 -0
- package/dist/components/CustomIcons/ThumbsUpIcon.js.map +1 -0
- package/dist/components/CustomIcons/TrashIcon.js +28 -0
- package/dist/components/CustomIcons/TrashIcon.js.map +1 -0
- package/dist/components/CustomIcons/TriangleDownIcon.js +21 -0
- package/dist/components/CustomIcons/TriangleDownIcon.js.map +1 -0
- package/dist/components/CustomIcons/TriangleRightIcon.js +21 -0
- package/dist/components/CustomIcons/TriangleRightIcon.js.map +1 -0
- package/dist/components/CustomIcons/UnarchiveIcon.js +16 -0
- package/dist/components/CustomIcons/UnarchiveIcon.js.map +1 -0
- package/dist/components/CustomIcons/UploadIcon.js +28 -0
- package/dist/components/CustomIcons/UploadIcon.js.map +1 -0
- package/dist/components/CustomIcons/WarningCircleFilled.js +21 -0
- package/dist/components/CustomIcons/WarningCircleFilled.js.map +1 -0
- package/dist/components/CustomIcons/WarningTriangleIcon.js +21 -0
- package/dist/components/CustomIcons/WarningTriangleIcon.js.map +1 -0
- package/dist/components/CustomIcons/WebhookEventsIcon.js +28 -0
- package/dist/components/CustomIcons/WebhookEventsIcon.js.map +1 -0
- package/dist/components/CustomIcons/WebhookIcon.js +28 -0
- package/dist/components/CustomIcons/WebhookIcon.js.map +1 -0
- package/dist/components/CustomIcons/WebhookSigningSecretIcon.js +21 -0
- package/dist/components/CustomIcons/WebhookSigningSecretIcon.js.map +1 -0
- package/dist/components/CustomIcons/index.js +328 -0
- package/dist/components/CustomIcons/index.js.map +1 -0
- package/dist/components/DefinitionRow.js +15 -0
- package/dist/components/DefinitionRow.js.map +1 -0
- package/dist/components/DisclosureArrow.js +20 -0
- package/dist/components/DisclosureArrow.js.map +1 -0
- package/dist/components/Divider.js +59 -0
- package/dist/components/Divider.js.map +1 -0
- package/dist/components/Dropdown.js +849 -0
- package/dist/components/Dropdown.js.map +1 -0
- package/dist/components/FieldBlock.js +25 -0
- package/dist/components/FieldBlock.js.map +1 -0
- package/dist/components/FieldGroup.js +23 -0
- package/dist/components/FieldGroup.js.map +1 -0
- package/dist/components/FieldMessage.js +15 -0
- package/dist/components/FieldMessage.js.map +1 -0
- package/dist/components/Flex.js +45 -0
- package/dist/components/Flex.js.map +1 -0
- package/dist/components/FooterLinks.js +88 -0
- package/dist/components/FooterLinks.js.map +1 -0
- package/dist/components/FooterNav.js +19 -0
- package/dist/components/FooterNav.js.map +1 -0
- package/dist/components/Form.js +26 -0
- package/dist/components/Form.js.map +1 -0
- package/dist/components/FormItem.js +32 -0
- package/dist/components/FormItem.js.map +1 -0
- package/dist/components/FormSectionHeading.js +20 -0
- package/dist/components/FormSectionHeading.js.map +1 -0
- package/dist/components/InlineConfirm.js +129 -0
- package/dist/components/InlineConfirm.js.map +1 -0
- package/dist/components/Input/Input.js +302 -0
- package/dist/components/Input/Input.js.map +1 -0
- package/dist/components/KeyValueList.js +26 -0
- package/dist/components/KeyValueList.js.map +1 -0
- package/dist/components/Link.js +47 -0
- package/dist/components/Link.js.map +1 -0
- package/dist/components/LoadingBar.js +85 -0
- package/dist/components/LoadingBar.js.map +1 -0
- package/dist/components/LoadingInput.js +29 -0
- package/dist/components/LoadingInput.js.map +1 -0
- package/dist/components/MalachiteContext.js +18 -0
- package/dist/components/MalachiteContext.js.map +1 -0
- package/dist/components/Modal.js +212 -0
- package/dist/components/Modal.js.map +1 -0
- package/dist/components/MultiSelect.js +645 -0
- package/dist/components/MultiSelect.js.map +1 -0
- package/dist/components/NumberTag.js +22 -0
- package/dist/components/NumberTag.js.map +1 -0
- package/dist/components/OverflowRow.js +153 -0
- package/dist/components/OverflowRow.js.map +1 -0
- package/dist/components/Padded.js +39 -0
- package/dist/components/Padded.js.map +1 -0
- package/dist/components/PageLayout/constants.js +12 -0
- package/dist/components/PageLayout/constants.js.map +1 -0
- package/dist/components/PageLayout/emptyLayout.js +61 -0
- package/dist/components/PageLayout/emptyLayout.js.map +1 -0
- package/dist/components/PageLayout/index.js +10 -0
- package/dist/components/PageLayout/index.js.map +1 -0
- package/dist/components/PageLayout/regularLayout.js +177 -0
- package/dist/components/PageLayout/regularLayout.js.map +1 -0
- package/dist/components/PillButton.js +70 -0
- package/dist/components/PillButton.js.map +1 -0
- package/dist/components/PreviewTree.js +49 -0
- package/dist/components/PreviewTree.js.map +1 -0
- package/dist/components/Progress.js +69 -0
- package/dist/components/Progress.js.map +1 -0
- package/dist/components/QueryInput.js +370 -0
- package/dist/components/QueryInput.js.map +1 -0
- package/dist/components/Radio.js +63 -0
- package/dist/components/Radio.js.map +1 -0
- package/dist/components/Search.js +54 -0
- package/dist/components/Search.js.map +1 -0
- package/dist/components/SegmentedControl.js +107 -0
- package/dist/components/SegmentedControl.js.map +1 -0
- package/dist/components/SelectableCard.js +364 -0
- package/dist/components/SelectableCard.js.map +1 -0
- package/dist/components/SelectionBar.js +103 -0
- package/dist/components/SelectionBar.js.map +1 -0
- package/dist/components/SettingRow.js +40 -0
- package/dist/components/SettingRow.js.map +1 -0
- package/dist/components/ShadowEscape.js +166 -0
- package/dist/components/ShadowEscape.js.map +1 -0
- package/dist/components/SidePanel.js +140 -0
- package/dist/components/SidePanel.js.map +1 -0
- package/dist/components/SidePanelNavFooter.js +46 -0
- package/dist/components/SidePanelNavFooter.js.map +1 -0
- package/dist/components/Skeleton.js +106 -0
- package/dist/components/Skeleton.js.map +1 -0
- package/dist/components/Spacer.js +63 -0
- package/dist/components/Spacer.js.map +1 -0
- package/dist/components/Spinner.js +86 -0
- package/dist/components/Spinner.js.map +1 -0
- package/dist/components/SplitScreenLayout.js +51 -0
- package/dist/components/SplitScreenLayout.js.map +1 -0
- package/dist/components/StatBadge.js +10 -0
- package/dist/components/StatBadge.js.map +1 -0
- package/dist/components/Statistic.js +48 -0
- package/dist/components/Statistic.js.map +1 -0
- package/dist/components/StatusBadge.js +56 -0
- package/dist/components/StatusBadge.js.map +1 -0
- package/dist/components/StepTabs.js +52 -0
- package/dist/components/StepTabs.js.map +1 -0
- package/dist/components/Stepper.js +40 -0
- package/dist/components/Stepper.js.map +1 -0
- package/dist/components/Surface.js +143 -0
- package/dist/components/Surface.js.map +1 -0
- package/dist/components/Swatch.js +44 -0
- package/dist/components/Swatch.js.map +1 -0
- package/dist/components/Table/Table.js +1007 -0
- package/dist/components/Table/Table.js.map +1 -0
- package/dist/components/Table/TablePagination.js +205 -0
- package/dist/components/Table/TablePagination.js.map +1 -0
- package/dist/components/Tabs.js +35 -0
- package/dist/components/Tabs.js.map +1 -0
- package/dist/components/Tag.js +154 -0
- package/dist/components/Tag.js.map +1 -0
- package/dist/components/TextArea/TextArea.js +289 -0
- package/dist/components/TextArea/TextArea.js.map +1 -0
- package/dist/components/ThemeScope.js +14 -0
- package/dist/components/ThemeScope.js.map +1 -0
- package/dist/components/Toggle.js +115 -0
- package/dist/components/Toggle.js.map +1 -0
- package/dist/components/Toolbar.js +25 -0
- package/dist/components/Toolbar.js.map +1 -0
- package/dist/components/Tooltip.js +181 -0
- package/dist/components/Tooltip.js.map +1 -0
- package/dist/components/TruncatedTooltip.js +38 -0
- package/dist/components/TruncatedTooltip.js.map +1 -0
- package/dist/components/Typography/CodeText.js +49 -0
- package/dist/components/Typography/CodeText.js.map +1 -0
- package/dist/components/Typography/EllipsisText.js +27 -0
- package/dist/components/Typography/EllipsisText.js.map +1 -0
- package/dist/components/Typography/FormSectionTitle.js +21 -0
- package/dist/components/Typography/FormSectionTitle.js.map +1 -0
- package/dist/components/Typography/LinkText.js +32 -0
- package/dist/components/Typography/LinkText.js.map +1 -0
- package/dist/components/Typography/MarkdownBlock.js +304 -0
- package/dist/components/Typography/MarkdownBlock.js.map +1 -0
- package/dist/components/Typography/PageTitle.js +21 -0
- package/dist/components/Typography/PageTitle.js.map +1 -0
- package/dist/components/Typography/SecondaryText.js +51 -0
- package/dist/components/Typography/SecondaryText.js.map +1 -0
- package/dist/components/Typography/SectionTitle.js +16 -0
- package/dist/components/Typography/SectionTitle.js.map +1 -0
- package/dist/components/Typography/StatisticLabel.js +22 -0
- package/dist/components/Typography/StatisticLabel.js.map +1 -0
- package/dist/components/Typography/StatisticValue.js +21 -0
- package/dist/components/Typography/StatisticValue.js.map +1 -0
- package/dist/components/Typography/TerminalText.js +45 -0
- package/dist/components/Typography/TerminalText.js.map +1 -0
- package/dist/components/Typography/Text.js +31 -0
- package/dist/components/Typography/Text.js.map +1 -0
- package/dist/components/Typography/index.js +31 -0
- package/dist/components/Typography/index.js.map +1 -0
- package/dist/components/Typography/textStyles.js +66 -0
- package/dist/components/Typography/textStyles.js.map +1 -0
- package/dist/components/WizardLayout.js +113 -0
- package/dist/components/WizardLayout.js.map +1 -0
- package/dist/components/actionBarMenuItems.js +16 -0
- package/dist/components/actionBarMenuItems.js.map +1 -0
- package/dist/components/activeElement.js +11 -0
- package/dist/components/activeElement.js.map +1 -0
- package/dist/components/breadcrumbsNav.js +5 -0
- package/dist/components/breadcrumbsNav.js.map +1 -0
- package/dist/components/cardStripSlot.js +9 -0
- package/dist/components/cardStripSlot.js.map +1 -0
- package/dist/components/codeBlockDiff.js +78 -0
- package/dist/components/codeBlockDiff.js.map +1 -0
- package/dist/components/codeBlockLine.js +90 -0
- package/dist/components/codeBlockLine.js.map +1 -0
- package/dist/components/codeBlockStyles.js +20 -0
- package/dist/components/codeBlockStyles.js.map +1 -0
- package/dist/components/confirmationDialogVariants.js +30 -0
- package/dist/components/confirmationDialogVariants.js.map +1 -0
- package/dist/components/controlTextSize.js +14 -0
- package/dist/components/controlTextSize.js.map +1 -0
- package/dist/components/devWarning.js +22 -0
- package/dist/components/devWarning.js.map +1 -0
- package/dist/components/dividerTypes.js +7 -0
- package/dist/components/dividerTypes.js.map +1 -0
- package/dist/components/dropdownPanelPosition.js +38 -0
- package/dist/components/dropdownPanelPosition.js.map +1 -0
- package/dist/components/dropdownTriggerStyle.js +36 -0
- package/dist/components/dropdownTriggerStyle.js.map +1 -0
- package/dist/components/escapeLayers.js +13 -0
- package/dist/components/escapeLayers.js.map +1 -0
- package/dist/components/flexTypes.js +8 -0
- package/dist/components/flexTypes.js.map +1 -0
- package/dist/components/focusRing.js +9 -0
- package/dist/components/focusRing.js.map +1 -0
- package/dist/components/formItemState.js +12 -0
- package/dist/components/formItemState.js.map +1 -0
- package/dist/components/glassSurface.js +10 -0
- package/dist/components/glassSurface.js.map +1 -0
- package/dist/components/injectStyleSheet.js +33 -0
- package/dist/components/injectStyleSheet.js.map +1 -0
- package/dist/components/inlineConfirmPosition.js +27 -0
- package/dist/components/inlineConfirmPosition.js.map +1 -0
- package/dist/components/keyboardActivation.js +14 -0
- package/dist/components/keyboardActivation.js.map +1 -0
- package/dist/components/modalTray.js +16 -0
- package/dist/components/modalTray.js.map +1 -0
- package/dist/components/optionRowStyles.js +27 -0
- package/dist/components/optionRowStyles.js.map +1 -0
- package/dist/components/overlayBehaviour.js +118 -0
- package/dist/components/overlayBehaviour.js.map +1 -0
- package/dist/components/portalOverlay.js +35 -0
- package/dist/components/portalOverlay.js.map +1 -0
- package/dist/components/prismCedar.js +27 -0
- package/dist/components/prismCedar.js.map +1 -0
- package/dist/components/queryInputGeometry.js +24 -0
- package/dist/components/queryInputGeometry.js.map +1 -0
- package/dist/components/renderableNode.js +6 -0
- package/dist/components/renderableNode.js.map +1 -0
- package/dist/components/safeHref.js +11 -0
- package/dist/components/safeHref.js.map +1 -0
- package/dist/components/scrollLock.js +19 -0
- package/dist/components/scrollLock.js.map +1 -0
- package/dist/components/selectedRow.js +14 -0
- package/dist/components/selectedRow.js.map +1 -0
- package/dist/components/selectionBarChrome.js +63 -0
- package/dist/components/selectionBarChrome.js.map +1 -0
- package/dist/components/topLayer.js +29 -0
- package/dist/components/topLayer.js.map +1 -0
- package/dist/components/useAdoptedStyleSheet.js +41 -0
- package/dist/components/useAdoptedStyleSheet.js.map +1 -0
- package/dist/geist-font.js +23 -0
- package/dist/geist-font.js.map +1 -0
- package/dist/index.d.ts +1056 -86
- package/dist/index.js +403 -104
- package/dist/index.js.map +1 -1
- package/dist/inter-font.js +35 -0
- package/dist/inter-font.js.map +1 -0
- package/dist/stack-sans-font.js +17 -0
- package/dist/stack-sans-font.js.map +1 -0
- package/dist/tailwind.css.js +5 -0
- package/dist/tailwind.css.js.map +1 -0
- package/dist/theme.js +1959 -0
- package/dist/theme.js.map +1 -0
- package/dist/vendor/@fontsource/geist-sans/files/geist-sans-latin-400-normal.woff2.js +5 -0
- package/dist/vendor/@fontsource/geist-sans/files/geist-sans-latin-400-normal.woff2.js.map +1 -0
- package/dist/vendor/@fontsource/geist-sans/files/geist-sans-latin-500-normal.woff2.js +5 -0
- package/dist/vendor/@fontsource/geist-sans/files/geist-sans-latin-500-normal.woff2.js.map +1 -0
- package/dist/vendor/@fontsource/inter/files/inter-latin-400-normal.woff2.js +5 -0
- package/dist/vendor/@fontsource/inter/files/inter-latin-400-normal.woff2.js.map +1 -0
- package/dist/vendor/@fontsource/inter/files/inter-latin-500-normal.woff2.js +5 -0
- package/dist/vendor/@fontsource/inter/files/inter-latin-500-normal.woff2.js.map +1 -0
- package/dist/vendor/@fontsource/inter/files/inter-latin-600-normal.woff2.js +5 -0
- package/dist/vendor/@fontsource/inter/files/inter-latin-600-normal.woff2.js.map +1 -0
- package/dist/vendor/@fontsource/inter/files/inter-latin-700-normal.woff2.js +5 -0
- package/dist/vendor/@fontsource/inter/files/inter-latin-700-normal.woff2.js.map +1 -0
- package/dist/vendor/@fontsource/inter/files/inter-latin-ext-400-normal.woff2.js +5 -0
- package/dist/vendor/@fontsource/inter/files/inter-latin-ext-400-normal.woff2.js.map +1 -0
- package/dist/vendor/@fontsource/inter/files/inter-latin-ext-500-normal.woff2.js +5 -0
- package/dist/vendor/@fontsource/inter/files/inter-latin-ext-500-normal.woff2.js.map +1 -0
- package/dist/vendor/@fontsource/inter/files/inter-latin-ext-600-normal.woff2.js +5 -0
- package/dist/vendor/@fontsource/inter/files/inter-latin-ext-600-normal.woff2.js.map +1 -0
- package/dist/vendor/@fontsource/inter/files/inter-latin-ext-700-normal.woff2.js +5 -0
- package/dist/vendor/@fontsource/inter/files/inter-latin-ext-700-normal.woff2.js.map +1 -0
- package/dist/vendor/@fontsource-variable/stack-sans-text/files/stack-sans-text-latin-wght-normal.woff2.js +5 -0
- package/dist/vendor/@fontsource-variable/stack-sans-text/files/stack-sans-text-latin-wght-normal.woff2.js.map +1 -0
- package/package.json +6 -1
- package/dist/CodeBlockHighlighter-BJeE32YS.js +0 -2791
- package/dist/CodeBlockHighlighter-BJeE32YS.js.map +0 -1
- package/dist/index-P2H4or4t.js +0 -19528
- package/dist/index-P2H4or4t.js.map +0 -1
|
@@ -0,0 +1,115 @@
|
|
|
1
|
+
import { jsx as e, jsxs as C } from "react/jsx-runtime";
|
|
2
|
+
import { forwardRef as O, useId as T } from "react";
|
|
3
|
+
import { Button as L } from "./Button.js";
|
|
4
|
+
import { FOCUS_RING as B } from "./focusRing.js";
|
|
5
|
+
const m = 2, A = {
|
|
6
|
+
small: { track: 28, height: 16, knob: 12 },
|
|
7
|
+
medium: { track: 36, height: 20, knob: 16 }
|
|
8
|
+
}, H = {
|
|
9
|
+
small: "small",
|
|
10
|
+
medium: "medium"
|
|
11
|
+
}, M = "inline-flex items-center gap-1.5 shrink-0 text-[length:var(--malachite-font-size-small,13px)] font-medium select-none", P = "px-2.5 rounded-xl whitespace-nowrap bg-[var(--malachite-card-background)] border border-[var(--malachite-card-border)] shadow-default text-[var(--malachite-card-foreground)]", j = {
|
|
12
|
+
small: "h-[var(--malachite-control-height-small,28px)]",
|
|
13
|
+
medium: "h-[var(--malachite-control-height-medium,32px)]"
|
|
14
|
+
}, G = O(
|
|
15
|
+
({
|
|
16
|
+
checked: t,
|
|
17
|
+
onChange: h,
|
|
18
|
+
disabled: a = !1,
|
|
19
|
+
size: i = "medium",
|
|
20
|
+
tone: I = "default",
|
|
21
|
+
label: n,
|
|
22
|
+
variant: $,
|
|
23
|
+
bordered: S = !1,
|
|
24
|
+
"aria-label": p,
|
|
25
|
+
"aria-labelledby": b,
|
|
26
|
+
"aria-describedby": g,
|
|
27
|
+
className: l = "",
|
|
28
|
+
id: u
|
|
29
|
+
}, s) => {
|
|
30
|
+
const { track: x, height: N, knob: c } = A[i], E = t ? x - c - m : m, r = $ ?? (S ? "pill" : void 0), R = T(), o = !!n, d = o && !b ? R : void 0, f = b || d, k = {
|
|
31
|
+
position: "relative",
|
|
32
|
+
display: "inline-block",
|
|
33
|
+
flexShrink: 0,
|
|
34
|
+
width: `${x}px`,
|
|
35
|
+
height: `${N}px`,
|
|
36
|
+
borderRadius: "999px",
|
|
37
|
+
transition: "background-color 150ms ease-in-out",
|
|
38
|
+
backgroundColor: t ? I === "pending" ? "var(--malachite-toggle-track-checked-pending, rgb(241, 139, 10))" : "var(--malachite-toggle-track-checked, rgb(0, 175, 102))" : "var(--malachite-toggle-track, rgb(232, 232, 232))"
|
|
39
|
+
}, v = /* @__PURE__ */ e(
|
|
40
|
+
"span",
|
|
41
|
+
{
|
|
42
|
+
style: {
|
|
43
|
+
position: "absolute",
|
|
44
|
+
top: `${m}px`,
|
|
45
|
+
left: `${E}px`,
|
|
46
|
+
width: `${c}px`,
|
|
47
|
+
height: `${c}px`,
|
|
48
|
+
borderRadius: "50%",
|
|
49
|
+
backgroundColor: "var(--malachite-toggle-knob, rgb(255, 255, 255))",
|
|
50
|
+
boxShadow: "0 1px 2px rgba(0, 0, 0, 0.2)",
|
|
51
|
+
transition: "left 150ms ease-in-out"
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
);
|
|
55
|
+
if (r === "button")
|
|
56
|
+
return /* @__PURE__ */ e(
|
|
57
|
+
L,
|
|
58
|
+
{
|
|
59
|
+
ref: s,
|
|
60
|
+
variant: "outline",
|
|
61
|
+
size: H[i],
|
|
62
|
+
type: "button",
|
|
63
|
+
role: "switch",
|
|
64
|
+
id: u,
|
|
65
|
+
"aria-checked": t,
|
|
66
|
+
"aria-label": p,
|
|
67
|
+
"aria-labelledby": f,
|
|
68
|
+
"aria-describedby": g,
|
|
69
|
+
disabled: a,
|
|
70
|
+
onClick: () => h(!t),
|
|
71
|
+
icon: /* @__PURE__ */ e("span", { style: k, children: v }),
|
|
72
|
+
iconPosition: "end",
|
|
73
|
+
className: `whitespace-nowrap select-none ${l}`.trim(),
|
|
74
|
+
children: o && /* @__PURE__ */ e("span", { id: d, children: n })
|
|
75
|
+
}
|
|
76
|
+
);
|
|
77
|
+
const w = !o && !r, y = /* @__PURE__ */ e(
|
|
78
|
+
"button",
|
|
79
|
+
{
|
|
80
|
+
ref: w ? s : null,
|
|
81
|
+
type: "button",
|
|
82
|
+
role: "switch",
|
|
83
|
+
id: u,
|
|
84
|
+
"aria-checked": t,
|
|
85
|
+
"aria-label": p,
|
|
86
|
+
"aria-labelledby": f,
|
|
87
|
+
"aria-describedby": g,
|
|
88
|
+
disabled: a,
|
|
89
|
+
onClick: () => h(!t),
|
|
90
|
+
className: `${B} ${o || r ? "" : l}`.trim(),
|
|
91
|
+
style: {
|
|
92
|
+
...k,
|
|
93
|
+
padding: 0,
|
|
94
|
+
border: "none",
|
|
95
|
+
cursor: a ? "not-allowed" : "pointer",
|
|
96
|
+
opacity: a ? 0.5 : 1
|
|
97
|
+
},
|
|
98
|
+
children: v
|
|
99
|
+
}
|
|
100
|
+
);
|
|
101
|
+
if (w)
|
|
102
|
+
return y;
|
|
103
|
+
const _ = `${M}${r === "pill" ? ` ${j[i]} ${P}` : ""} ${l}`.trim();
|
|
104
|
+
return /* @__PURE__ */ C("span", { ref: s, className: _, children: [
|
|
105
|
+
o && /* @__PURE__ */ e("span", { id: d, children: n }),
|
|
106
|
+
y
|
|
107
|
+
] });
|
|
108
|
+
}
|
|
109
|
+
);
|
|
110
|
+
G.displayName = "Toggle";
|
|
111
|
+
export {
|
|
112
|
+
G as Toggle,
|
|
113
|
+
G as default
|
|
114
|
+
};
|
|
115
|
+
//# sourceMappingURL=Toggle.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Toggle.js","sources":["../../src/components/Toggle.tsx"],"sourcesContent":["import React, { forwardRef, useId } from 'react';\nimport Button, { type ButtonSize } from './Button';\nimport { FOCUS_RING } from './focusRing';\n\nexport type ToggleSize = 'small' | 'medium';\n\n/**\n * Which family of toolbar controls the chrome should match. `pill` matches the\n * filter-bar inputs (`Search`, `MultiSelect`); `button` matches the buttons.\n */\nexport type ToggleVariant = 'pill' | 'button';\n\n/** What the checked state means. 'pending' paints the track amber, for a switch whose change\n * has not been written yet. The unchecked track is unaffected. */\nexport type ToggleTone = 'default' | 'pending';\n\ninterface ToggleProps {\n checked: boolean;\n onChange: (checked: boolean) => void;\n disabled?: boolean;\n size?: ToggleSize;\n tone?: ToggleTone;\n /** Visible text shown before the switch (e.g. a filter label). */\n label?: string;\n /**\n * Chrome for a toolbar filter — pick the family it sits beside. `pill` is the\n * filter-bar look that matches `Search`/`MultiSelect`; `button` renders the whole\n * control as an outline `Button`. Setting this implies `bordered`.\n */\n variant?: ToggleVariant;\n /** Shorthand for `variant=\"pill\"`. */\n bordered?: boolean;\n 'aria-label'?: string;\n 'aria-labelledby'?: string;\n 'aria-describedby'?: string;\n className?: string;\n id?: string;\n}\n\nconst KNOB_INSET = 2;\n\nconst SIZE_DIMENSIONS: Record<ToggleSize, { track: number; height: number; knob: number }> = {\n small: { track: 28, height: 16, knob: 12 },\n medium: { track: 36, height: 20, knob: 16 },\n};\n\n// The `button` variant delegates its chrome to `Button` rather than carrying a\n// parallel copy of the border/radius/padding/typography classes. The `pill` chrome\n// below is what happens without that discipline: it was the only bordered look, and\n// it drifted from the buttons it sat next to (card tokens, `h-8`, `rounded-xl`\n// against `btn-outline`, 34px, `rounded-lg`), so those toolbars read as two\n// unrelated control families (ENG-1453).\nconst BUTTON_VARIANT_SIZE: Record<ToggleSize, ButtonSize> = {\n small: 'small',\n medium: 'medium',\n};\n\nconst CONTAINER_BASE =\n 'inline-flex items-center gap-1.5 shrink-0 text-[length:var(--malachite-font-size-small,13px)] font-medium select-none';\n// Colours come from card tokens so it themes in dark mode; `.shadow-default` is a\n// plain box-shadow rule (shadow-DOM-safe, unlike Tailwind `shadow-*`/`ring-*` which\n// rely on @property).\nconst PILL_CHROME =\n 'px-2.5 rounded-xl whitespace-nowrap bg-[var(--malachite-card-background)] border border-[var(--malachite-card-border)] shadow-default text-[var(--malachite-card-foreground)]';\nconst PILL_CHROME_HEIGHT: Record<ToggleSize, string> = {\n small: 'h-[var(--malachite-control-height-small,28px)]',\n medium: 'h-[var(--malachite-control-height-medium,32px)]',\n};\n\nexport const Toggle = forwardRef<HTMLElement, ToggleProps>(\n (\n {\n checked,\n onChange,\n disabled = false,\n size = 'medium',\n tone = 'default',\n label,\n variant,\n bordered = false,\n 'aria-label': ariaLabel,\n 'aria-labelledby': ariaLabelledBy,\n 'aria-describedby': ariaDescribedBy,\n className = '',\n id,\n },\n ref,\n ) => {\n const { track, height, knob } = SIZE_DIMENSIONS[size];\n const knobOffset = checked ? track - knob - KNOB_INSET : KNOB_INSET;\n\n // `variant` implies chrome, so `variant=\"button\"` works on its own rather than\n // silently doing nothing without `bordered`.\n const chrome = variant ?? (bordered ? 'pill' : undefined);\n\n // When a visible label is rendered and the consumer hasn't supplied their own\n // labelledby, the visible text becomes the switch's accessible name. An\n // empty-string label or labelledby counts as absent, so it can't render an\n // empty <span> (with stray gap) or wire up a broken/empty aria linkage.\n const generatedLabelId = useId();\n const hasLabel = Boolean(label);\n const visibleLabelId = hasLabel && !ariaLabelledBy ? generatedLabelId : undefined;\n const resolvedLabelledBy = ariaLabelledBy || visibleLabelId;\n\n const trackStyle: React.CSSProperties = {\n position: 'relative',\n display: 'inline-block',\n flexShrink: 0,\n width: `${track}px`,\n height: `${height}px`,\n borderRadius: '999px',\n transition: 'background-color 150ms ease-in-out',\n backgroundColor: checked\n ? tone === 'pending'\n ? 'var(--malachite-toggle-track-checked-pending, rgb(241, 139, 10))'\n : 'var(--malachite-toggle-track-checked, rgb(0, 175, 102))'\n : 'var(--malachite-toggle-track, rgb(232, 232, 232))',\n };\n\n const knobSpan = (\n <span\n style={{\n position: 'absolute',\n top: `${KNOB_INSET}px`,\n left: `${knobOffset}px`,\n width: `${knob}px`,\n height: `${knob}px`,\n borderRadius: '50%',\n backgroundColor: 'var(--malachite-toggle-knob, rgb(255, 255, 255))',\n boxShadow: '0 1px 2px rgba(0, 0, 0, 0.2)',\n transition: 'left 150ms ease-in-out',\n }}\n />\n );\n\n // The whole button-variant control is the switch — a button-shaped surface whose\n // label isn't clickable reads as broken. That also rules out nesting the switch\n // `<button>` inside `Button`'s, so here the track is a decorative span and\n // `Button` carries the switch role. Disabled dimming comes from\n // `.btn-outline:disabled`, so the track must not dim itself as well.\n if (chrome === 'button') {\n return (\n <Button\n ref={ref as React.Ref<HTMLButtonElement>}\n variant=\"outline\"\n size={BUTTON_VARIANT_SIZE[size]}\n type=\"button\"\n role=\"switch\"\n id={id}\n aria-checked={checked}\n aria-label={ariaLabel}\n aria-labelledby={resolvedLabelledBy}\n aria-describedby={ariaDescribedBy}\n disabled={disabled}\n onClick={() => onChange(!checked)}\n icon={<span style={trackStyle}>{knobSpan}</span>}\n iconPosition=\"end\"\n className={`whitespace-nowrap select-none ${className}`.trim()}\n >\n {hasLabel && <span id={visibleLabelId}>{label}</span>}\n </Button>\n );\n }\n\n const isSwitchRoot = !hasLabel && !chrome;\n const switchButton = (\n <button\n ref={isSwitchRoot ? (ref as React.Ref<HTMLButtonElement>) : null}\n type=\"button\"\n role=\"switch\"\n id={id}\n aria-checked={checked}\n aria-label={ariaLabel}\n aria-labelledby={resolvedLabelledBy}\n aria-describedby={ariaDescribedBy}\n disabled={disabled}\n onClick={() => onChange(!checked)}\n className={`${FOCUS_RING} ${hasLabel || chrome ? '' : className}`.trim()}\n style={{\n ...trackStyle,\n padding: 0,\n border: 'none',\n cursor: disabled ? 'not-allowed' : 'pointer',\n opacity: disabled ? 0.5 : 1,\n }}\n >\n {knobSpan}\n </button>\n );\n\n if (isSwitchRoot) {\n return switchButton;\n }\n\n const containerClasses =\n `${CONTAINER_BASE}${chrome === 'pill' ? ` ${PILL_CHROME_HEIGHT[size]} ${PILL_CHROME}` : ''} ${className}`.trim();\n\n return (\n <span ref={ref as React.Ref<HTMLSpanElement>} className={containerClasses}>\n {hasLabel && <span id={visibleLabelId}>{label}</span>}\n {switchButton}\n </span>\n );\n },\n);\n\nToggle.displayName = 'Toggle';\n\nexport default Toggle;\n"],"names":["KNOB_INSET","SIZE_DIMENSIONS","BUTTON_VARIANT_SIZE","CONTAINER_BASE","PILL_CHROME","PILL_CHROME_HEIGHT","Toggle","forwardRef","checked","onChange","disabled","size","tone","label","variant","bordered","ariaLabel","ariaLabelledBy","ariaDescribedBy","className","id","ref","track","height","knob","knobOffset","chrome","generatedLabelId","useId","hasLabel","visibleLabelId","resolvedLabelledBy","trackStyle","knobSpan","jsx","Button","isSwitchRoot","switchButton","FOCUS_RING","containerClasses","jsxs"],"mappings":"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"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { jsx as t } from "react/jsx-runtime";
|
|
2
|
+
const c = {
|
|
3
|
+
none: "",
|
|
4
|
+
compact: "px-[12px] py-[8px]",
|
|
5
|
+
default: "px-[16px] py-[12px]"
|
|
6
|
+
}, p = ({
|
|
7
|
+
children: r,
|
|
8
|
+
divider: a = !1,
|
|
9
|
+
padding: o = "default",
|
|
10
|
+
className: e = "",
|
|
11
|
+
style: l
|
|
12
|
+
}) => {
|
|
13
|
+
const d = [
|
|
14
|
+
"w-full bg-[var(--malachite-card-background)]",
|
|
15
|
+
c[o],
|
|
16
|
+
a ? "border-0 border-b border-solid border-[var(--malachite-card-border)]" : "",
|
|
17
|
+
e
|
|
18
|
+
].filter(Boolean).join(" ");
|
|
19
|
+
return /* @__PURE__ */ t("div", { className: d, style: l, children: r });
|
|
20
|
+
};
|
|
21
|
+
export {
|
|
22
|
+
p as Toolbar,
|
|
23
|
+
p as default
|
|
24
|
+
};
|
|
25
|
+
//# sourceMappingURL=Toolbar.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Toolbar.js","sources":["../../src/components/Toolbar.tsx"],"sourcesContent":["import React from 'react';\n\nexport interface ToolbarProps {\n children?: React.ReactNode;\n /** Draw a bottom divider — for a bar that sits above scrolling/list content. */\n divider?: boolean;\n /** Padding preset (applies to both axes). `none` for a bar that must sit flush with\n * the content it pins over — the consumer then owns the gutter. */\n padding?: 'none' | 'compact' | 'default';\n className?: string;\n style?: React.CSSProperties;\n}\n\n/**\n * A flat, opaque horizontal bar — e.g. a toolbar/sub-header holding a Search or\n * filters. Owns its chrome (opaque `card-background` so scrolling content doesn't\n * bleed through when it's pinned, plus an optional bottom `divider`), so consumers\n * don't hand-roll `--malachite-*` backgrounds/borders. Positioning (incl.\n * `position: sticky`) is left to the consumer via `className`/`style`.\n */\nconst PADDING_CLASSES: Record<NonNullable<ToolbarProps['padding']>, string> = {\n none: '',\n compact: 'px-[12px] py-[8px]',\n default: 'px-[16px] py-[12px]',\n};\n\nconst Toolbar: React.FC<ToolbarProps> = ({\n children,\n divider = false,\n padding = 'default',\n className = '',\n style,\n}) => {\n const classes = [\n 'w-full bg-[var(--malachite-card-background)]',\n PADDING_CLASSES[padding],\n divider ? 'border-0 border-b border-solid border-[var(--malachite-card-border)]' : '',\n className,\n ]\n .filter(Boolean)\n .join(' ');\n\n return (\n <div className={classes} style={style}>\n {children}\n </div>\n );\n};\n\nexport default Toolbar;\nexport { Toolbar };\n"],"names":["PADDING_CLASSES","Toolbar","children","divider","padding","className","style","classes","jsx"],"mappings":";AAoBA,MAAMA,IAAwE;AAAA,EAC1E,MAAM;AAAA,EACN,SAAS;AAAA,EACT,SAAS;AACb,GAEMC,IAAkC,CAAC;AAAA,EACrC,UAAAC;AAAA,EACA,SAAAC,IAAU;AAAA,EACV,SAAAC,IAAU;AAAA,EACV,WAAAC,IAAY;AAAA,EACZ,OAAAC;AACJ,MAAM;AACF,QAAMC,IAAU;AAAA,IACZ;AAAA,IACAP,EAAgBI,CAAO;AAAA,IACvBD,IAAU,yEAAyE;AAAA,IACnFE;AAAA,EAAA,EAEC,OAAO,OAAO,EACd,KAAK,GAAG;AAEb,SACI,gBAAAG,EAAC,OAAA,EAAI,WAAWD,GAAS,OAAAD,GACpB,UAAAJ,GACL;AAER;"}
|
|
@@ -0,0 +1,181 @@
|
|
|
1
|
+
import { jsx as l, jsxs as C, Fragment as K } from "react/jsx-runtime";
|
|
2
|
+
import x, { useState as w, useRef as p, useCallback as X, useId as D, useEffect as P, useInsertionEffect as J } from "react";
|
|
3
|
+
import { createPortal as Q } from "react-dom";
|
|
4
|
+
import { ensureOverlayStyles as Z, overlayIdentity as ee } from "./portalOverlay.js";
|
|
5
|
+
import { useTopLayer as te } from "./topLayer.js";
|
|
6
|
+
const ne = new RegExp("(?<=[/\\\\.\\-_?&#=:@])"), re = (n) => n.split(ne).map((i, f) => /* @__PURE__ */ C(x.Fragment, { children: [
|
|
7
|
+
i,
|
|
8
|
+
/* @__PURE__ */ l("wbr", {})
|
|
9
|
+
] }, f)), oe = {
|
|
10
|
+
minWidth: 0,
|
|
11
|
+
overflow: "hidden"
|
|
12
|
+
}, ie = {
|
|
13
|
+
flex: 1,
|
|
14
|
+
minWidth: 0
|
|
15
|
+
}, $ = 8, pe = ({
|
|
16
|
+
text: n,
|
|
17
|
+
children: i,
|
|
18
|
+
delay: f = 1,
|
|
19
|
+
wrapChildren: V = !1,
|
|
20
|
+
triggerAs: H = "div",
|
|
21
|
+
placement: j = "top",
|
|
22
|
+
isShrinkable: E = !1,
|
|
23
|
+
maxWidth: m = "320px",
|
|
24
|
+
fill: R = !1,
|
|
25
|
+
shouldShow: c,
|
|
26
|
+
describesTrigger: L = !0
|
|
27
|
+
}) => {
|
|
28
|
+
const k = E || R ? { ...E ? oe : {}, ...R ? ie : {} } : void 0, [t, h] = w(!1), [u, z] = w(!1), d = p(null), r = p(null), o = X(() => {
|
|
29
|
+
d.current && (clearTimeout(d.current), d.current = null), r.current !== null && (cancelAnimationFrame(r.current), r.current = null);
|
|
30
|
+
}, []), T = () => {
|
|
31
|
+
z(!0), r.current !== null && cancelAnimationFrame(r.current), r.current = requestAnimationFrame(() => {
|
|
32
|
+
r.current = null, h(!0);
|
|
33
|
+
});
|
|
34
|
+
}, g = p(null), v = p(null);
|
|
35
|
+
te(g, t);
|
|
36
|
+
const F = D(), s = n != null && n !== "" && n !== !1, N = (e) => {
|
|
37
|
+
e.stopPropagation(), !(!s || c && !c()) && (o(), d.current = setTimeout(() => {
|
|
38
|
+
T();
|
|
39
|
+
}, f * 1e3));
|
|
40
|
+
}, O = (e) => {
|
|
41
|
+
e.stopPropagation(), o(), h(!1);
|
|
42
|
+
}, Y = () => {
|
|
43
|
+
!s || c && !c() || (o(), T());
|
|
44
|
+
}, U = () => {
|
|
45
|
+
o(), h(!1);
|
|
46
|
+
}, [, I] = w({});
|
|
47
|
+
P(() => {
|
|
48
|
+
if (!t)
|
|
49
|
+
return () => {
|
|
50
|
+
o();
|
|
51
|
+
};
|
|
52
|
+
const e = () => {
|
|
53
|
+
I({});
|
|
54
|
+
};
|
|
55
|
+
return window.addEventListener("scroll", e, !0), window.addEventListener("resize", e), () => {
|
|
56
|
+
o(), window.removeEventListener("scroll", e, !0), window.removeEventListener("resize", e);
|
|
57
|
+
};
|
|
58
|
+
}, [t, o]), P(() => {
|
|
59
|
+
t && I({});
|
|
60
|
+
}, [t]);
|
|
61
|
+
const q = () => {
|
|
62
|
+
if (!v.current)
|
|
63
|
+
return { display: "none" };
|
|
64
|
+
const e = v.current.getBoundingClientRect(), a = {
|
|
65
|
+
position: "fixed",
|
|
66
|
+
display: "flex",
|
|
67
|
+
width: "max-content",
|
|
68
|
+
maxWidth: typeof m == "number" ? `${m}px` : m,
|
|
69
|
+
minWidth: "32px",
|
|
70
|
+
minHeight: "32px",
|
|
71
|
+
padding: "8px 12px",
|
|
72
|
+
alignItems: "center",
|
|
73
|
+
gap: "8px",
|
|
74
|
+
borderRadius: "12px",
|
|
75
|
+
backgroundColor: "var(--malachite-tooltip-background, rgb(59, 59, 59))",
|
|
76
|
+
color: "var(--malachite-tooltip-foreground, rgb(255, 255, 255))",
|
|
77
|
+
boxShadow: "var(--malachite-tooltip-shadow, 0px 0px 10px 0px rgba(0, 0, 0, 0.20))",
|
|
78
|
+
fontSize: "14px",
|
|
79
|
+
lineHeight: "1.4",
|
|
80
|
+
whiteSpace: "normal",
|
|
81
|
+
textAlign: "left",
|
|
82
|
+
pointerEvents: "none",
|
|
83
|
+
opacity: t ? 1 : 0,
|
|
84
|
+
visibility: t ? "visible" : "hidden",
|
|
85
|
+
transition: "opacity 150ms ease-in-out, transform 150ms ease-in-out, visibility 150ms ease-in-out"
|
|
86
|
+
}, b = () => {
|
|
87
|
+
var _;
|
|
88
|
+
const y = e.left + e.width / 2, A = ((_ = g.current) == null ? void 0 : _.getBoundingClientRect().width) ?? 0;
|
|
89
|
+
if (A === 0)
|
|
90
|
+
return y;
|
|
91
|
+
const B = A / 2, M = $ + B, W = window.innerWidth - $ - B;
|
|
92
|
+
return M > W ? y : Math.min(Math.max(y, M), W);
|
|
93
|
+
};
|
|
94
|
+
switch (j) {
|
|
95
|
+
case "top":
|
|
96
|
+
return {
|
|
97
|
+
...a,
|
|
98
|
+
top: e.top - 8,
|
|
99
|
+
left: b(),
|
|
100
|
+
transform: `translate(-50%, -100%) ${t ? "scale(1)" : "scale(0.95)"}`
|
|
101
|
+
};
|
|
102
|
+
case "bottom":
|
|
103
|
+
return {
|
|
104
|
+
...a,
|
|
105
|
+
top: e.bottom + 8,
|
|
106
|
+
left: b(),
|
|
107
|
+
transform: `translateX(-50%) ${t ? "scale(1)" : "scale(0.95)"}`
|
|
108
|
+
};
|
|
109
|
+
case "left":
|
|
110
|
+
return {
|
|
111
|
+
...a,
|
|
112
|
+
top: e.top + e.height / 2,
|
|
113
|
+
left: e.left - 8,
|
|
114
|
+
transform: `translate(-100%, -50%) ${t ? "scale(1)" : "scale(0.95)"}`
|
|
115
|
+
};
|
|
116
|
+
case "right":
|
|
117
|
+
return {
|
|
118
|
+
...a,
|
|
119
|
+
top: e.top + e.height / 2,
|
|
120
|
+
left: e.right + 8,
|
|
121
|
+
transform: `translateY(-50%) ${t ? "scale(1)" : "scale(0.95)"}`
|
|
122
|
+
};
|
|
123
|
+
default:
|
|
124
|
+
return {
|
|
125
|
+
...a,
|
|
126
|
+
top: e.top - 8,
|
|
127
|
+
left: b(),
|
|
128
|
+
transform: `translate(-50%, -100%) ${t ? "scale(1)" : "scale(0.95)"}`
|
|
129
|
+
};
|
|
130
|
+
}
|
|
131
|
+
}, S = s && u && L ? F : void 0;
|
|
132
|
+
J(() => {
|
|
133
|
+
s && u && Z();
|
|
134
|
+
}, [s, u]);
|
|
135
|
+
const G = V || !x.isValidElement(i) ? /* @__PURE__ */ l("span", { "aria-describedby": S, children: i }) : x.cloneElement(i, {
|
|
136
|
+
"aria-describedby": [i.props["aria-describedby"], S].filter(Boolean).join(" ") || void 0
|
|
137
|
+
});
|
|
138
|
+
return /* @__PURE__ */ C(K, { children: [
|
|
139
|
+
/* @__PURE__ */ l(
|
|
140
|
+
H,
|
|
141
|
+
{
|
|
142
|
+
ref: v,
|
|
143
|
+
className: "relative flex items-center",
|
|
144
|
+
style: k,
|
|
145
|
+
onMouseEnter: N,
|
|
146
|
+
onMouseLeave: O,
|
|
147
|
+
onFocus: Y,
|
|
148
|
+
onBlur: U,
|
|
149
|
+
children: G
|
|
150
|
+
}
|
|
151
|
+
),
|
|
152
|
+
s && u && Q(
|
|
153
|
+
/* @__PURE__ */ l(
|
|
154
|
+
"div",
|
|
155
|
+
{
|
|
156
|
+
ref: g,
|
|
157
|
+
id: F,
|
|
158
|
+
role: "tooltip",
|
|
159
|
+
"aria-hidden": L ? void 0 : !0,
|
|
160
|
+
...ee("tooltip"),
|
|
161
|
+
style: q(),
|
|
162
|
+
children: /* @__PURE__ */ l(
|
|
163
|
+
"span",
|
|
164
|
+
{
|
|
165
|
+
style: {
|
|
166
|
+
minWidth: 0,
|
|
167
|
+
overflowWrap: "anywhere"
|
|
168
|
+
},
|
|
169
|
+
children: typeof n == "string" ? re(n) : n
|
|
170
|
+
}
|
|
171
|
+
)
|
|
172
|
+
}
|
|
173
|
+
),
|
|
174
|
+
document.body
|
|
175
|
+
)
|
|
176
|
+
] });
|
|
177
|
+
};
|
|
178
|
+
export {
|
|
179
|
+
pe as default
|
|
180
|
+
};
|
|
181
|
+
//# sourceMappingURL=Tooltip.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Tooltip.js","sources":["../../src/components/Tooltip.tsx"],"sourcesContent":["import React, { useState, useRef, useEffect, useId, useInsertionEffect, useCallback } from 'react';\nimport { createPortal } from 'react-dom';\nimport { ensureOverlayStyles, overlayIdentity } from './portalOverlay';\nimport { useTopLayer } from './topLayer';\n\n// Split after each delimiter so long values (URLs, dotted paths) wrap at \"/\" or \".\"\n// instead of mid-token. <wbr> is copy-safe (a zero-width space would corrupt a copied\n// URL); overflow-wrap still handles a single run too long to fit.\nconst WRAP_AFTER = /(?<=[/\\\\.\\-_?&#=:@])/;\nconst withBreakOpportunities = (value: string): React.ReactNode =>\n value.split(WRAP_AFTER).map((chunk, i) => (\n <React.Fragment key={i}>\n {chunk}\n <wbr />\n </React.Fragment>\n ));\n\ninterface TooltipProps {\n text: React.ReactNode | string;\n children: React.ReactNode;\n delay?: number;\n wrapChildren?: boolean;\n placement?: 'top' | 'bottom' | 'left' | 'right';\n isShrinkable?: boolean;\n fill?: boolean;\n /** Max width of tooltip. Default: 320px */\n maxWidth?: number | string;\n /** Called synchronously when the trigger is hovered/focused; return false to\n * suppress the tooltip for this interaction. Lets wrappers defer expensive\n * checks (e.g. truncation measurement) to interaction time instead of mount. */\n shouldShow?: () => boolean;\n triggerAs?: 'div' | 'span';\n /** Whether the tooltip acts as the trigger's accessible description. False where the\n * trigger already points at the same sentence on screen, so it is not announced twice. */\n describesTrigger?: boolean;\n}\n\nconst SHRINKABLE_STYLE: React.CSSProperties = {\n minWidth: 0,\n overflow: 'hidden',\n};\n\nconst FILL_STYLE: React.CSSProperties = {\n flex: 1,\n minWidth: 0,\n};\n\n/** Kept clear of the viewport edge so a clamped tooltip does not sit flush against it. */\nconst VIEWPORT_MARGIN = 8;\n\nconst Tooltip: React.FC<TooltipProps> = ({\n text,\n children,\n delay = 1,\n wrapChildren = false,\n triggerAs = 'div',\n placement = 'top',\n isShrinkable = false,\n maxWidth = '320px',\n fill = false,\n shouldShow,\n describesTrigger = true,\n}) => {\n const triggerStyle =\n isShrinkable || fill\n ? { ...(isShrinkable ? SHRINKABLE_STYLE : {}), ...(fill ? FILL_STYLE : {}) }\n : undefined;\n\n const [isVisible, setIsVisible] = useState(false);\n // Portal mounts on first show, not on mount: an at-rest tooltip otherwise\n // costs a hidden document.body node plus a getBoundingClientRect per render —\n // multiplied by every row in a large table.\n const [hasShown, setHasShown] = useState(false);\n const timeoutRef = useRef<NodeJS.Timeout | null>(null);\n const showFrameRef = useRef<number | null>(null);\n\n const cancelPendingShow = useCallback(() => {\n if (timeoutRef.current) {\n clearTimeout(timeoutRef.current);\n timeoutRef.current = null;\n }\n if (showFrameRef.current !== null) {\n cancelAnimationFrame(showFrameRef.current);\n showFrameRef.current = null;\n }\n }, []);\n\n const scheduleVisible = () => {\n // Two steps so the portal mounts hidden first and the fade-in transition\n // still runs on the very first show. The frame is tracked so leave/blur/\n // unmount can cancel a show that is already past its delay.\n setHasShown(true);\n if (showFrameRef.current !== null) {\n cancelAnimationFrame(showFrameRef.current);\n }\n showFrameRef.current = requestAnimationFrame(() => {\n showFrameRef.current = null;\n setIsVisible(true);\n });\n };\n const tooltipRef = useRef<HTMLDivElement>(null);\n const triggerRef = useRef<HTMLDivElement>(null);\n\n // Tied to visibility, not mount: the node is latched into the DOM after its first show, and\n // re-entering on each show keeps a tooltip above the panel it is annotating.\n useTopLayer(tooltipRef, isVisible);\n\n const tooltipId = useId();\n\n const hasText = text !== null && text !== undefined && text !== '' && text !== false;\n\n const handleMouseEnter = (e: React.MouseEvent) => {\n e.stopPropagation();\n\n if (!hasText || (shouldShow && !shouldShow())) {\n return;\n }\n\n cancelPendingShow();\n\n timeoutRef.current = setTimeout(() => {\n scheduleVisible();\n }, delay * 1000);\n };\n\n const handleMouseLeave = (e: React.MouseEvent) => {\n e.stopPropagation();\n\n cancelPendingShow();\n setIsVisible(false);\n };\n\n const handleFocus = () => {\n if (!hasText || (shouldShow && !shouldShow())) {\n return;\n }\n\n cancelPendingShow();\n scheduleVisible();\n };\n\n const handleBlur = () => {\n cancelPendingShow();\n setIsVisible(false);\n };\n\n const [, forceUpdate] = useState({});\n\n useEffect(() => {\n // Only a VISIBLE tooltip needs to track scroll/resize; keeping global\n // listeners per mounted instance made every scroll event fan out across\n // every tooltip on the page.\n if (!isVisible) {\n return () => {\n cancelPendingShow();\n };\n }\n const handleUpdate = () => {\n forceUpdate({});\n };\n\n window.addEventListener('scroll', handleUpdate, true);\n window.addEventListener('resize', handleUpdate);\n\n return () => {\n cancelPendingShow();\n window.removeEventListener('scroll', handleUpdate, true);\n window.removeEventListener('resize', handleUpdate);\n };\n }, [isVisible, cancelPendingShow]);\n\n // The first render that mounts the tooltip has no measured width yet, so the clamp below\n // cannot run on it. One extra pass once it is in the DOM gives the clamp its measurement\n // — before the opacity transition finishes, so nothing is seen sliding into place.\n useEffect(() => {\n if (isVisible) {\n forceUpdate({});\n }\n }, [isVisible]);\n\n const getTooltipStyles = (): React.CSSProperties => {\n if (!triggerRef.current) {\n return { display: 'none' };\n }\n\n const rect = triggerRef.current.getBoundingClientRect();\n\n const baseStyles: React.CSSProperties = {\n position: 'fixed',\n display: 'flex',\n width: 'max-content',\n maxWidth: typeof maxWidth === 'number' ? `${maxWidth}px` : maxWidth,\n minWidth: '32px',\n minHeight: '32px',\n padding: '8px 12px',\n alignItems: 'center',\n gap: '8px',\n borderRadius: '12px',\n backgroundColor: 'var(--malachite-tooltip-background, rgb(59, 59, 59))',\n color: 'var(--malachite-tooltip-foreground, rgb(255, 255, 255))',\n boxShadow: 'var(--malachite-tooltip-shadow, 0px 0px 10px 0px rgba(0, 0, 0, 0.20))',\n fontSize: '14px',\n lineHeight: '1.4',\n whiteSpace: 'normal',\n textAlign: 'left',\n pointerEvents: 'none',\n opacity: isVisible ? 1 : 0,\n visibility: isVisible ? 'visible' : 'hidden',\n transition:\n 'opacity 150ms ease-in-out, transform 150ms ease-in-out, visibility 150ms ease-in-out',\n };\n\n // A trigger near the viewport edge would otherwise centre a wide tooltip half off\n // screen, where the panel or the window crops it. Clamping the CENTRE keeps the\n // `translateX(-50%)` placement honest: the box stays put, it just stops short.\n const centeredLeft = (): number => {\n const desired = rect.left + rect.width / 2;\n const width = tooltipRef.current?.getBoundingClientRect().width ?? 0;\n\n if (width === 0) {\n return desired;\n }\n\n const half = width / 2;\n const min = VIEWPORT_MARGIN + half;\n const max = window.innerWidth - VIEWPORT_MARGIN - half;\n\n // A tooltip wider than the viewport has no in-bounds centre; leave it centred\n // rather than pinning it to a nonsensical one.\n return min > max ? desired : Math.min(Math.max(desired, min), max);\n };\n\n switch (placement) {\n case 'top':\n return {\n ...baseStyles,\n top: rect.top - 8,\n left: centeredLeft(),\n transform: `translate(-50%, -100%) ${isVisible ? 'scale(1)' : 'scale(0.95)'}`,\n };\n case 'bottom':\n return {\n ...baseStyles,\n top: rect.bottom + 8,\n left: centeredLeft(),\n transform: `translateX(-50%) ${isVisible ? 'scale(1)' : 'scale(0.95)'}`,\n };\n case 'left':\n return {\n ...baseStyles,\n top: rect.top + rect.height / 2,\n left: rect.left - 8,\n transform: `translate(-100%, -50%) ${isVisible ? 'scale(1)' : 'scale(0.95)'}`,\n };\n case 'right':\n return {\n ...baseStyles,\n top: rect.top + rect.height / 2,\n left: rect.right + 8,\n transform: `translateY(-50%) ${isVisible ? 'scale(1)' : 'scale(0.95)'}`,\n };\n default:\n return {\n ...baseStyles,\n top: rect.top - 8,\n left: centeredLeft(),\n transform: `translate(-50%, -100%) ${isVisible ? 'scale(1)' : 'scale(0.95)'}`,\n };\n }\n };\n\n // Only reference the tooltip id once the portal can exist — a dangling\n // aria-describedby (text set, never shown) confuses assistive tech.\n const describedBy = hasText && hasShown && describesTrigger ? tooltipId : undefined;\n useInsertionEffect(() => {\n if (hasText && hasShown) {\n ensureOverlayStyles();\n }\n }, [hasText, hasShown]);\n const renderedChildren =\n wrapChildren || !React.isValidElement(children) ? (\n <span aria-describedby={describedBy}>{children}</span>\n ) : (\n React.cloneElement(children as React.ReactElement, {\n 'aria-describedby':\n [(children as React.ReactElement).props['aria-describedby'], describedBy]\n .filter(Boolean)\n .join(' ') || undefined,\n })\n );\n\n const Trigger = triggerAs;\n\n // Create the tooltip content without its own shadow root\n return (\n <>\n <Trigger\n ref={triggerRef}\n className=\"relative flex items-center\"\n style={triggerStyle}\n onMouseEnter={handleMouseEnter}\n onMouseLeave={handleMouseLeave}\n onFocus={handleFocus}\n onBlur={handleBlur}\n >\n {renderedChildren}\n </Trigger>\n\n {hasText &&\n hasShown &&\n createPortal(\n <div\n ref={tooltipRef}\n id={tooltipId}\n role=\"tooltip\"\n // Nothing references it, and the sentence is already on screen and\n // described: left in the tree it is a second copy to read past.\n aria-hidden={describesTrigger ? undefined : true}\n {...overlayIdentity('tooltip')}\n style={getTooltipStyles()}\n >\n {/* min-w-0 + overflow-wrap let long values wrap within maxWidth. */}\n <span\n style={{\n minWidth: 0,\n overflowWrap: 'anywhere',\n }}\n >\n {typeof text === 'string' ? withBreakOpportunities(text) : text}\n </span>\n </div>,\n document.body,\n )}\n </>\n );\n};\n\nexport default Tooltip;\n"],"names":["WRAP_AFTER","withBreakOpportunities","value","chunk","i","jsxs","React","SHRINKABLE_STYLE","FILL_STYLE","VIEWPORT_MARGIN","Tooltip","text","children","delay","wrapChildren","triggerAs","placement","isShrinkable","maxWidth","fill","shouldShow","describesTrigger","triggerStyle","isVisible","setIsVisible","useState","hasShown","setHasShown","timeoutRef","useRef","showFrameRef","cancelPendingShow","useCallback","scheduleVisible","tooltipRef","triggerRef","useTopLayer","tooltipId","useId","hasText","handleMouseEnter","handleMouseLeave","handleFocus","handleBlur","forceUpdate","useEffect","handleUpdate","getTooltipStyles","rect","baseStyles","centeredLeft","desired","width","_a","half","min","max","describedBy","useInsertionEffect","ensureOverlayStyles","renderedChildren","jsx","Fragment","createPortal","overlayIdentity"],"mappings":";;;;;AAQA,MAAMA,KAAa,WAAA,yBAAA,GACbC,KAAyB,CAACC,MAC5BA,EAAM,MAAMF,EAAU,EAAE,IAAI,CAACG,GAAOC,MAChC,gBAAAC,EAACC,EAAM,UAAN,EACI,UAAA;AAAA,EAAAH;AAAA,oBACA,OAAA,CAAA,CAAI;AAAA,EAAA,GAFYC,CAGrB,CACH,GAsBCG,KAAwC;AAAA,EAC1C,UAAU;AAAA,EACV,UAAU;AACd,GAEMC,KAAkC;AAAA,EACpC,MAAM;AAAA,EACN,UAAU;AACd,GAGMC,IAAkB,GAElBC,KAAkC,CAAC;AAAA,EACrC,MAAAC;AAAA,EACA,UAAAC;AAAA,EACA,OAAAC,IAAQ;AAAA,EACR,cAAAC,IAAe;AAAA,EACf,WAAAC,IAAY;AAAA,EACZ,WAAAC,IAAY;AAAA,EACZ,cAAAC,IAAe;AAAA,EACf,UAAAC,IAAW;AAAA,EACX,MAAAC,IAAO;AAAA,EACP,YAAAC;AAAA,EACA,kBAAAC,IAAmB;AACvB,MAAM;AACF,QAAMC,IACFL,KAAgBE,IACV,EAAE,GAAIF,IAAeV,KAAmB,CAAA,GAAK,GAAIY,IAAOX,KAAa,CAAA,MACrE,QAEJ,CAACe,GAAWC,CAAY,IAAIC,EAAS,EAAK,GAI1C,CAACC,GAAUC,CAAW,IAAIF,EAAS,EAAK,GACxCG,IAAaC,EAA8B,IAAI,GAC/CC,IAAeD,EAAsB,IAAI,GAEzCE,IAAoBC,EAAY,MAAM;AACxC,IAAIJ,EAAW,YACX,aAAaA,EAAW,OAAO,GAC/BA,EAAW,UAAU,OAErBE,EAAa,YAAY,SACzB,qBAAqBA,EAAa,OAAO,GACzCA,EAAa,UAAU;AAAA,EAE/B,GAAG,CAAA,CAAE,GAECG,IAAkB,MAAM;AAI1B,IAAAN,EAAY,EAAI,GACZG,EAAa,YAAY,QACzB,qBAAqBA,EAAa,OAAO,GAE7CA,EAAa,UAAU,sBAAsB,MAAM;AAC/C,MAAAA,EAAa,UAAU,MACvBN,EAAa,EAAI;AAAA,IACrB,CAAC;AAAA,EACL,GACMU,IAAaL,EAAuB,IAAI,GACxCM,IAAaN,EAAuB,IAAI;AAI9C,EAAAO,GAAYF,GAAYX,CAAS;AAEjC,QAAMc,IAAYC,EAAA,GAEZC,IAAU5B,KAAS,QAA8BA,MAAS,MAAMA,MAAS,IAEzE6B,IAAmB,CAAC,MAAwB;AAG9C,IAFA,EAAE,gBAAA,GAEE,GAACD,KAAYnB,KAAc,CAACA,SAIhCW,EAAA,GAEAH,EAAW,UAAU,WAAW,MAAM;AAClC,MAAAK,EAAA;AAAA,IACJ,GAAGpB,IAAQ,GAAI;AAAA,EACnB,GAEM4B,IAAmB,CAAC,MAAwB;AAC9C,MAAE,gBAAA,GAEFV,EAAA,GACAP,EAAa,EAAK;AAAA,EACtB,GAEMkB,IAAc,MAAM;AACtB,IAAI,CAACH,KAAYnB,KAAc,CAACA,QAIhCW,EAAA,GACAE,EAAA;AAAA,EACJ,GAEMU,IAAa,MAAM;AACrB,IAAAZ,EAAA,GACAP,EAAa,EAAK;AAAA,EACtB,GAEM,GAAGoB,CAAW,IAAInB,EAAS,EAAE;AAEnC,EAAAoB,EAAU,MAAM;AAIZ,QAAI,CAACtB;AACD,aAAO,MAAM;AACT,QAAAQ,EAAA;AAAA,MACJ;AAEJ,UAAMe,IAAe,MAAM;AACvB,MAAAF,EAAY,CAAA,CAAE;AAAA,IAClB;AAEA,kBAAO,iBAAiB,UAAUE,GAAc,EAAI,GACpD,OAAO,iBAAiB,UAAUA,CAAY,GAEvC,MAAM;AACT,MAAAf,EAAA,GACA,OAAO,oBAAoB,UAAUe,GAAc,EAAI,GACvD,OAAO,oBAAoB,UAAUA,CAAY;AAAA,IACrD;AAAA,EACJ,GAAG,CAACvB,GAAWQ,CAAiB,CAAC,GAKjCc,EAAU,MAAM;AACZ,IAAItB,KACAqB,EAAY,CAAA,CAAE;AAAA,EAEtB,GAAG,CAACrB,CAAS,CAAC;AAEd,QAAMwB,IAAmB,MAA2B;AAChD,QAAI,CAACZ,EAAW;AACZ,aAAO,EAAE,SAAS,OAAA;AAGtB,UAAMa,IAAOb,EAAW,QAAQ,sBAAA,GAE1Bc,IAAkC;AAAA,MACpC,UAAU;AAAA,MACV,SAAS;AAAA,MACT,OAAO;AAAA,MACP,UAAU,OAAO/B,KAAa,WAAW,GAAGA,CAAQ,OAAOA;AAAA,MAC3D,UAAU;AAAA,MACV,WAAW;AAAA,MACX,SAAS;AAAA,MACT,YAAY;AAAA,MACZ,KAAK;AAAA,MACL,cAAc;AAAA,MACd,iBAAiB;AAAA,MACjB,OAAO;AAAA,MACP,WAAW;AAAA,MACX,UAAU;AAAA,MACV,YAAY;AAAA,MACZ,YAAY;AAAA,MACZ,WAAW;AAAA,MACX,eAAe;AAAA,MACf,SAASK,IAAY,IAAI;AAAA,MACzB,YAAYA,IAAY,YAAY;AAAA,MACpC,YACI;AAAA,IAAA,GAMF2B,IAAe,MAAc;;AAC/B,YAAMC,IAAUH,EAAK,OAAOA,EAAK,QAAQ,GACnCI,MAAQC,IAAAnB,EAAW,YAAX,gBAAAmB,EAAoB,wBAAwB,UAAS;AAEnE,UAAID,MAAU;AACV,eAAOD;AAGX,YAAMG,IAAOF,IAAQ,GACfG,IAAM9C,IAAkB6C,GACxBE,IAAM,OAAO,aAAa/C,IAAkB6C;AAIlD,aAAOC,IAAMC,IAAML,IAAU,KAAK,IAAI,KAAK,IAAIA,GAASI,CAAG,GAAGC,CAAG;AAAA,IACrE;AAEA,YAAQxC,GAAA;AAAA,MACJ,KAAK;AACD,eAAO;AAAA,UACH,GAAGiC;AAAA,UACH,KAAKD,EAAK,MAAM;AAAA,UAChB,MAAME,EAAA;AAAA,UACN,WAAW,0BAA0B3B,IAAY,aAAa,aAAa;AAAA,QAAA;AAAA,MAEnF,KAAK;AACD,eAAO;AAAA,UACH,GAAG0B;AAAA,UACH,KAAKD,EAAK,SAAS;AAAA,UACnB,MAAME,EAAA;AAAA,UACN,WAAW,oBAAoB3B,IAAY,aAAa,aAAa;AAAA,QAAA;AAAA,MAE7E,KAAK;AACD,eAAO;AAAA,UACH,GAAG0B;AAAA,UACH,KAAKD,EAAK,MAAMA,EAAK,SAAS;AAAA,UAC9B,MAAMA,EAAK,OAAO;AAAA,UAClB,WAAW,0BAA0BzB,IAAY,aAAa,aAAa;AAAA,QAAA;AAAA,MAEnF,KAAK;AACD,eAAO;AAAA,UACH,GAAG0B;AAAA,UACH,KAAKD,EAAK,MAAMA,EAAK,SAAS;AAAA,UAC9B,MAAMA,EAAK,QAAQ;AAAA,UACnB,WAAW,oBAAoBzB,IAAY,aAAa,aAAa;AAAA,QAAA;AAAA,MAE7E;AACI,eAAO;AAAA,UACH,GAAG0B;AAAA,UACH,KAAKD,EAAK,MAAM;AAAA,UAChB,MAAME,EAAA;AAAA,UACN,WAAW,0BAA0B3B,IAAY,aAAa,aAAa;AAAA,QAAA;AAAA,IAC/E;AAAA,EAEZ,GAIMkC,IAAclB,KAAWb,KAAYL,IAAmBgB,IAAY;AAC1E,EAAAqB,EAAmB,MAAM;AACrB,IAAInB,KAAWb,KACXiC,EAAA;AAAA,EAER,GAAG,CAACpB,GAASb,CAAQ,CAAC;AACtB,QAAMkC,IACF9C,KAAgB,CAACR,EAAM,eAAeM,CAAQ,IAC1C,gBAAAiD,EAAC,QAAA,EAAK,oBAAkBJ,GAAc,UAAA7C,EAAA,CAAS,IAE/CN,EAAM,aAAaM,GAAgC;AAAA,IAC/C,oBACI,CAAEA,EAAgC,MAAM,kBAAkB,GAAG6C,CAAW,EACnE,OAAO,OAAO,EACd,KAAK,GAAG,KAAK;AAAA,EAAA,CACzB;AAMT,SACI,gBAAApD,EAAAyD,GAAA,EACI,UAAA;AAAA,IAAA,gBAAAD;AAAA,MALQ9C;AAAA,MAKP;AAAA,QACG,KAAKoB;AAAA,QACL,WAAU;AAAA,QACV,OAAOb;AAAA,QACP,cAAckB;AAAA,QACd,cAAcC;AAAA,QACd,SAASC;AAAA,QACT,QAAQC;AAAA,QAEP,UAAAiB;AAAA,MAAA;AAAA,IAAA;AAAA,IAGJrB,KACGb,KACAqC;AAAA,MACI,gBAAAF;AAAA,QAAC;AAAA,QAAA;AAAA,UACG,KAAK3B;AAAA,UACL,IAAIG;AAAA,UACJ,MAAK;AAAA,UAGL,eAAahB,IAAmB,SAAY;AAAA,UAC3C,GAAG2C,GAAgB,SAAS;AAAA,UAC7B,OAAOjB,EAAA;AAAA,UAGP,UAAA,gBAAAc;AAAA,YAAC;AAAA,YAAA;AAAA,cACG,OAAO;AAAA,gBACH,UAAU;AAAA,gBACV,cAAc;AAAA,cAAA;AAAA,cAGjB,UAAA,OAAOlD,KAAS,WAAWV,GAAuBU,CAAI,IAAIA;AAAA,YAAA;AAAA,UAAA;AAAA,QAC/D;AAAA,MAAA;AAAA,MAEJ,SAAS;AAAA,IAAA;AAAA,EACb,GACR;AAER;"}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import { jsx as t } from "react/jsx-runtime";
|
|
2
|
+
import { useRef as c, useCallback as p } from "react";
|
|
3
|
+
import u from "./Tooltip.js";
|
|
4
|
+
const m = ({
|
|
5
|
+
text: o,
|
|
6
|
+
children: l,
|
|
7
|
+
delay: i = 0.5,
|
|
8
|
+
placement: n = "top",
|
|
9
|
+
className: s = ""
|
|
10
|
+
}) => {
|
|
11
|
+
const r = c(null), a = p(() => {
|
|
12
|
+
const e = r.current;
|
|
13
|
+
return !!e && e.scrollWidth > e.clientWidth;
|
|
14
|
+
}, []);
|
|
15
|
+
return /* @__PURE__ */ t(
|
|
16
|
+
u,
|
|
17
|
+
{
|
|
18
|
+
text: o,
|
|
19
|
+
delay: i,
|
|
20
|
+
placement: n,
|
|
21
|
+
wrapChildren: !1,
|
|
22
|
+
isShrinkable: !0,
|
|
23
|
+
shouldShow: a,
|
|
24
|
+
children: /* @__PURE__ */ t(
|
|
25
|
+
"span",
|
|
26
|
+
{
|
|
27
|
+
ref: r,
|
|
28
|
+
className: `block w-full overflow-hidden whitespace-nowrap text-ellipsis ${s}`.trim(),
|
|
29
|
+
children: l
|
|
30
|
+
}
|
|
31
|
+
)
|
|
32
|
+
}
|
|
33
|
+
);
|
|
34
|
+
};
|
|
35
|
+
export {
|
|
36
|
+
m as default
|
|
37
|
+
};
|
|
38
|
+
//# sourceMappingURL=TruncatedTooltip.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TruncatedTooltip.js","sources":["../../src/components/TruncatedTooltip.tsx"],"sourcesContent":["import React, { useCallback, useRef } from 'react';\nimport Tooltip from './Tooltip';\n\nexport interface TruncatedTooltipProps {\n text: React.ReactNode | string;\n children: React.ReactNode;\n delay?: number;\n placement?: 'top' | 'bottom' | 'left' | 'right';\n className?: string;\n}\n\n/**\n * TruncatedTooltip renders its children in a single-line truncating container\n * (overflow:hidden + text-overflow:ellipsis + white-space:nowrap) and surfaces\n * the malachite Tooltip only when the content is actually being cut off.\n *\n * Truncation is checked at interaction time (Tooltip's `shouldShow`), not at\n * mount: a mount-time measurement forces a synchronous layout per instance,\n * and in large tables those reads interleave with other components' DOM writes\n * — hundreds of full layout passes per mounted batch (the Safari row-mount\n * stalls of ENG-1168). The ellipsis itself is pure CSS and needs no JS.\n */\nconst TruncatedTooltip: React.FC<TruncatedTooltipProps> = ({\n text,\n children,\n delay = 0.5,\n placement = 'top',\n className = '',\n}) => {\n const containerRef = useRef<HTMLSpanElement | null>(null);\n\n // One layout read, on the user's hover/focus — never on the mount path.\n const isTruncated = useCallback(() => {\n const el = containerRef.current;\n return !!el && el.scrollWidth > el.clientWidth;\n }, []);\n\n return (\n <Tooltip\n text={text}\n delay={delay}\n placement={placement}\n wrapChildren={false}\n isShrinkable\n shouldShow={isTruncated}\n >\n <span\n ref={containerRef}\n className={`block w-full overflow-hidden whitespace-nowrap text-ellipsis ${className}`.trim()}\n >\n {children}\n </span>\n </Tooltip>\n );\n};\n\nexport default TruncatedTooltip;\n"],"names":["TruncatedTooltip","text","children","delay","placement","className","containerRef","useRef","isTruncated","useCallback","el","jsx","Tooltip"],"mappings":";;;AAsBA,MAAMA,IAAoD,CAAC;AAAA,EACvD,MAAAC;AAAA,EACA,UAAAC;AAAA,EACA,OAAAC,IAAQ;AAAA,EACR,WAAAC,IAAY;AAAA,EACZ,WAAAC,IAAY;AAChB,MAAM;AACF,QAAMC,IAAeC,EAA+B,IAAI,GAGlDC,IAAcC,EAAY,MAAM;AAClC,UAAMC,IAAKJ,EAAa;AACxB,WAAO,CAAC,CAACI,KAAMA,EAAG,cAAcA,EAAG;AAAA,EACvC,GAAG,CAAA,CAAE;AAEL,SACI,gBAAAC;AAAA,IAACC;AAAA,IAAA;AAAA,MACG,MAAAX;AAAA,MACA,OAAAE;AAAA,MACA,WAAAC;AAAA,MACA,cAAc;AAAA,MACd,cAAY;AAAA,MACZ,YAAYI;AAAA,MAEZ,UAAA,gBAAAG;AAAA,QAAC;AAAA,QAAA;AAAA,UACG,KAAKL;AAAA,UACL,WAAW,gEAAgED,CAAS,GAAG,KAAA;AAAA,UAEtF,UAAAH;AAAA,QAAA;AAAA,MAAA;AAAA,IACL;AAAA,EAAA;AAGZ;"}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
import { jsx as p } from "react/jsx-runtime";
|
|
2
|
+
const d = (e) => {
|
|
3
|
+
switch (e) {
|
|
4
|
+
case "xsmall":
|
|
5
|
+
return "12px";
|
|
6
|
+
case "small":
|
|
7
|
+
return "14px";
|
|
8
|
+
case "medium":
|
|
9
|
+
return "16px";
|
|
10
|
+
case "large":
|
|
11
|
+
return "18px";
|
|
12
|
+
case "xlarge":
|
|
13
|
+
return "20px";
|
|
14
|
+
case "xxlarge":
|
|
15
|
+
return "24px";
|
|
16
|
+
default:
|
|
17
|
+
return "14px";
|
|
18
|
+
}
|
|
19
|
+
}, u = ({
|
|
20
|
+
bold: e = !1,
|
|
21
|
+
children: t,
|
|
22
|
+
size: n = "small",
|
|
23
|
+
hasBorder: a = !1,
|
|
24
|
+
variant: l = "block",
|
|
25
|
+
// Deliberately NOT `inherit`: secondary prose would drop the chip to 3.65:1 in dark mode,
|
|
26
|
+
// under AA's 4.5:1. Pinning primary measures 18.5:1 light / 9.4:1 dark.
|
|
27
|
+
color: o = "var(--malachite-text-primary)",
|
|
28
|
+
backgroundColor: s,
|
|
29
|
+
className: c = "",
|
|
30
|
+
style: i = {}
|
|
31
|
+
}) => {
|
|
32
|
+
const r = l === "inline", x = {
|
|
33
|
+
fontFamily: "var(--malachite-font-mono, monospace)",
|
|
34
|
+
fontSize: r ? "0.9em" : d(n),
|
|
35
|
+
fontWeight: e ? 600 : 400,
|
|
36
|
+
color: o,
|
|
37
|
+
backgroundColor: a ? "transparent" : s || "var(--malachite-card-dimmed-background, #f5f5f5)",
|
|
38
|
+
borderRadius: r ? "4px" : "8px",
|
|
39
|
+
border: a ? "none" : "1px solid var(--malachite-card-border, #e8e8e8)",
|
|
40
|
+
padding: a ? "0px" : r ? "0 4px" : "4px 8px",
|
|
41
|
+
display: "inline",
|
|
42
|
+
...i
|
|
43
|
+
};
|
|
44
|
+
return /* @__PURE__ */ p("code", { className: c, style: x, children: t });
|
|
45
|
+
};
|
|
46
|
+
export {
|
|
47
|
+
u as default
|
|
48
|
+
};
|
|
49
|
+
//# sourceMappingURL=CodeText.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CodeText.js","sources":["../../../src/components/Typography/CodeText.tsx"],"sourcesContent":["import React from 'react';\nimport type { FontSize } from './Text';\n\nconst getFontSize = (size: FontSize): string => {\n switch (size) {\n case 'xsmall':\n return '12px';\n case 'small':\n return '14px';\n case 'medium':\n return '16px';\n case 'large':\n return '18px';\n case 'xlarge':\n return '20px';\n case 'xxlarge':\n return '24px';\n default:\n return '14px';\n }\n};\n\nexport type CodeTextVariant = 'block' | 'inline';\n\nexport interface CodeTextProps {\n bold?: boolean;\n size?: FontSize;\n hasBorder?: boolean;\n variant?: CodeTextVariant;\n color?: string;\n backgroundColor?: string;\n children: React.ReactNode;\n className?: string;\n style?: React.CSSProperties;\n}\n\nconst CodeText: React.FC<CodeTextProps> = ({\n bold = false,\n children,\n size = 'small',\n hasBorder = false,\n variant = 'block',\n // Deliberately NOT `inherit`: secondary prose would drop the chip to 3.65:1 in dark mode,\n // under AA's 4.5:1. Pinning primary measures 18.5:1 light / 9.4:1 dark.\n color = 'var(--malachite-text-primary)',\n backgroundColor,\n className = '',\n style = {},\n}) => {\n const isInline = variant === 'inline';\n const codeStyles: React.CSSProperties = {\n fontFamily: 'var(--malachite-font-mono, monospace)',\n fontSize: isInline ? '0.9em' : getFontSize(size),\n fontWeight: bold ? 600 : 400,\n color,\n backgroundColor: hasBorder\n ? 'transparent'\n : backgroundColor || 'var(--malachite-card-dimmed-background, #f5f5f5)',\n borderRadius: isInline ? '4px' : '8px',\n border: hasBorder ? 'none' : '1px solid var(--malachite-card-border, #e8e8e8)',\n padding: hasBorder ? '0px' : isInline ? '0 4px' : '4px 8px',\n display: 'inline',\n ...style,\n };\n\n return (\n <code className={className} style={codeStyles}>\n {children}\n </code>\n );\n};\n\nexport default CodeText;\n"],"names":["getFontSize","size","CodeText","bold","children","hasBorder","variant","color","backgroundColor","className","style","isInline","codeStyles","jsx"],"mappings":";AAGA,MAAMA,IAAc,CAACC,MAA2B;AAC5C,UAAQA,GAAA;AAAA,IACJ,KAAK;AACD,aAAO;AAAA,IACX,KAAK;AACD,aAAO;AAAA,IACX,KAAK;AACD,aAAO;AAAA,IACX,KAAK;AACD,aAAO;AAAA,IACX,KAAK;AACD,aAAO;AAAA,IACX,KAAK;AACD,aAAO;AAAA,IACX;AACI,aAAO;AAAA,EAAA;AAEnB,GAgBMC,IAAoC,CAAC;AAAA,EACvC,MAAAC,IAAO;AAAA,EACP,UAAAC;AAAA,EACA,MAAAH,IAAO;AAAA,EACP,WAAAI,IAAY;AAAA,EACZ,SAAAC,IAAU;AAAA;AAAA;AAAA,EAGV,OAAAC,IAAQ;AAAA,EACR,iBAAAC;AAAA,EACA,WAAAC,IAAY;AAAA,EACZ,OAAAC,IAAQ,CAAA;AACZ,MAAM;AACF,QAAMC,IAAWL,MAAY,UACvBM,IAAkC;AAAA,IACpC,YAAY;AAAA,IACZ,UAAUD,IAAW,UAAUX,EAAYC,CAAI;AAAA,IAC/C,YAAYE,IAAO,MAAM;AAAA,IACzB,OAAAI;AAAA,IACA,iBAAiBF,IACX,gBACAG,KAAmB;AAAA,IACzB,cAAcG,IAAW,QAAQ;AAAA,IACjC,QAAQN,IAAY,SAAS;AAAA,IAC7B,SAASA,IAAY,QAAQM,IAAW,UAAU;AAAA,IAClD,SAAS;AAAA,IACT,GAAGD;AAAA,EAAA;AAGP,SACI,gBAAAG,EAAC,QAAA,EAAK,WAAAJ,GAAsB,OAAOG,GAC9B,UAAAR,GACL;AAER;"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { jsx as r } from "react/jsx-runtime";
|
|
2
|
+
import a from "../Tooltip.js";
|
|
3
|
+
import { getTextColor as c } from "./textStyles.js";
|
|
4
|
+
const d = ({
|
|
5
|
+
children: i,
|
|
6
|
+
tooltip: e,
|
|
7
|
+
maxWidth: l = "100%",
|
|
8
|
+
color: o = "primary",
|
|
9
|
+
className: s = "",
|
|
10
|
+
style: n = {}
|
|
11
|
+
}) => {
|
|
12
|
+
const p = {
|
|
13
|
+
color: c(o),
|
|
14
|
+
maxWidth: l,
|
|
15
|
+
overflow: "hidden",
|
|
16
|
+
whiteSpace: "nowrap",
|
|
17
|
+
textOverflow: "ellipsis",
|
|
18
|
+
display: "inline-block",
|
|
19
|
+
verticalAlign: "top",
|
|
20
|
+
...n
|
|
21
|
+
}, t = /* @__PURE__ */ r("span", { className: s, style: p, children: i });
|
|
22
|
+
return e ? /* @__PURE__ */ r(a, { text: e, isShrinkable: !0, children: t }) : t;
|
|
23
|
+
};
|
|
24
|
+
export {
|
|
25
|
+
d as default
|
|
26
|
+
};
|
|
27
|
+
//# sourceMappingURL=EllipsisText.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"EllipsisText.js","sources":["../../../src/components/Typography/EllipsisText.tsx"],"sourcesContent":["import React from 'react';\nimport Tooltip from '../Tooltip';\nimport type { TextColor } from './Text';\nimport { getTextColor } from './textStyles';\n\nexport interface EllipsisTextProps {\n children: React.ReactNode;\n tooltip?: React.ReactNode | string;\n /**\n * Defaults to filling the container. Pass a fixed width only when the text should\n * truncate before its container runs out of room (e.g. a column with a hard cap).\n */\n maxWidth?: string;\n color?: TextColor;\n className?: string;\n style?: React.CSSProperties;\n}\n\nconst EllipsisText: React.FC<EllipsisTextProps> = ({\n children,\n tooltip,\n maxWidth = '100%',\n color = 'primary',\n className = '',\n style = {},\n}) => {\n const ellipsisStyles: React.CSSProperties = {\n color: getTextColor(color),\n maxWidth,\n overflow: 'hidden',\n whiteSpace: 'nowrap',\n textOverflow: 'ellipsis',\n display: 'inline-block',\n verticalAlign: 'top',\n ...style,\n };\n\n const textElement = (\n <span className={className} style={ellipsisStyles}>\n {children}\n </span>\n );\n\n if (tooltip) {\n // Without `isShrinkable` the tooltip wrapper is floored at min-content and a percentage `maxWidth` never truncates.\n return (\n <Tooltip text={tooltip} isShrinkable>\n {textElement}\n </Tooltip>\n );\n }\n\n return textElement;\n};\n\nexport default EllipsisText;\n"],"names":["EllipsisText","children","tooltip","maxWidth","color","className","style","ellipsisStyles","getTextColor","textElement","jsx","Tooltip"],"mappings":";;;AAkBA,MAAMA,IAA4C,CAAC;AAAA,EAC/C,UAAAC;AAAA,EACA,SAAAC;AAAA,EACA,UAAAC,IAAW;AAAA,EACX,OAAAC,IAAQ;AAAA,EACR,WAAAC,IAAY;AAAA,EACZ,OAAAC,IAAQ,CAAA;AACZ,MAAM;AACF,QAAMC,IAAsC;AAAA,IACxC,OAAOC,EAAaJ,CAAK;AAAA,IACzB,UAAAD;AAAA,IACA,UAAU;AAAA,IACV,YAAY;AAAA,IACZ,cAAc;AAAA,IACd,SAAS;AAAA,IACT,eAAe;AAAA,IACf,GAAGG;AAAA,EAAA,GAGDG,IACF,gBAAAC,EAAC,QAAA,EAAK,WAAAL,GAAsB,OAAOE,GAC9B,UAAAN,GACL;AAGJ,SAAIC,sBAGKS,GAAA,EAAQ,MAAMT,GAAS,cAAY,IAC/B,UAAAO,GACL,IAIDA;AACX;"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { jsx as r } from "react/jsx-runtime";
|
|
2
|
+
const a = ({
|
|
3
|
+
children: t,
|
|
4
|
+
className: e = "",
|
|
5
|
+
style: i = {}
|
|
6
|
+
}) => {
|
|
7
|
+
const o = {
|
|
8
|
+
fontSize: "13px",
|
|
9
|
+
fontWeight: 600,
|
|
10
|
+
color: "var(--malachite-text-primary)",
|
|
11
|
+
paddingLeft: "8px",
|
|
12
|
+
lineHeight: "1.4",
|
|
13
|
+
margin: 0,
|
|
14
|
+
...i
|
|
15
|
+
};
|
|
16
|
+
return /* @__PURE__ */ r("div", { className: e, style: o, children: t });
|
|
17
|
+
};
|
|
18
|
+
export {
|
|
19
|
+
a as default
|
|
20
|
+
};
|
|
21
|
+
//# sourceMappingURL=FormSectionTitle.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FormSectionTitle.js","sources":["../../../src/components/Typography/FormSectionTitle.tsx"],"sourcesContent":["import React from 'react';\n\nexport interface FormSectionTitleProps {\n children: React.ReactNode;\n className?: string;\n style?: React.CSSProperties;\n}\n\nconst FormSectionTitle: React.FC<FormSectionTitleProps> = ({\n children,\n className = '',\n style = {},\n}) => {\n const titleStyles: React.CSSProperties = {\n fontSize: '13px',\n fontWeight: 600,\n color: 'var(--malachite-text-primary)',\n paddingLeft: '8px',\n lineHeight: '1.4',\n margin: 0,\n ...style,\n };\n\n return (\n <div className={className} style={titleStyles}>\n {children}\n </div>\n );\n};\n\nexport default FormSectionTitle;\n"],"names":["FormSectionTitle","children","className","style","titleStyles","jsx"],"mappings":";AAQA,MAAMA,IAAoD,CAAC;AAAA,EACvD,UAAAC;AAAA,EACA,WAAAC,IAAY;AAAA,EACZ,OAAAC,IAAQ,CAAA;AACZ,MAAM;AACF,QAAMC,IAAmC;AAAA,IACrC,UAAU;AAAA,IACV,YAAY;AAAA,IACZ,OAAO;AAAA,IACP,aAAa;AAAA,IACb,YAAY;AAAA,IACZ,QAAQ;AAAA,IACR,GAAGD;AAAA,EAAA;AAGP,SACI,gBAAAE,EAAC,OAAA,EAAI,WAAAH,GAAsB,OAAOE,GAC7B,UAAAH,GACL;AAER;"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { jsx as c } from "react/jsx-runtime";
|
|
2
|
+
const h = ({
|
|
3
|
+
children: e,
|
|
4
|
+
href: t,
|
|
5
|
+
target: s = "_self",
|
|
6
|
+
rel: a,
|
|
7
|
+
className: r = "",
|
|
8
|
+
showRightBorder: o = !1,
|
|
9
|
+
showLeftBorder: l = !1,
|
|
10
|
+
padding: i = !1,
|
|
11
|
+
color: n = "default",
|
|
12
|
+
fontSize: d = "base"
|
|
13
|
+
}) => {
|
|
14
|
+
const m = [
|
|
15
|
+
l && "border-l border-[var(--malachite-text-dimmed)]",
|
|
16
|
+
o && "border-r border-[var(--malachite-text-dimmed)]"
|
|
17
|
+
].filter(Boolean).join(" ");
|
|
18
|
+
return /* @__PURE__ */ c(
|
|
19
|
+
"a",
|
|
20
|
+
{
|
|
21
|
+
href: t,
|
|
22
|
+
target: s,
|
|
23
|
+
rel: a,
|
|
24
|
+
className: `no-underline cursor-pointer transition-colors duration-200 ease-in-out ${n === "dimmed" ? "text-[var(--malachite-text-dimmed)]" : "text-[var(--malachite-text-link-foreground)] hover:text-[var(--malachite-text-link-foreground-hover)]"} ${m} ${i ? "px-[10px]" : ""} ${d === "sm" ? "text-[13px]" : ""} ${r}`,
|
|
25
|
+
children: e
|
|
26
|
+
}
|
|
27
|
+
);
|
|
28
|
+
};
|
|
29
|
+
export {
|
|
30
|
+
h as default
|
|
31
|
+
};
|
|
32
|
+
//# sourceMappingURL=LinkText.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"LinkText.js","sources":["../../../src/components/Typography/LinkText.tsx"],"sourcesContent":["import React from 'react';\n\nexport interface LinkProps {\n href: string;\n target?: '_blank' | '_self' | '_parent' | '_top';\n rel?: string;\n children: React.ReactNode;\n className?: string;\n showRightBorder?: boolean;\n showLeftBorder?: boolean;\n padding?: boolean;\n color?: 'default' | 'dimmed';\n fontSize?: 'sm' | 'base';\n}\n\nconst LinkText: React.FC<LinkProps> = ({\n children,\n href,\n target = '_self',\n rel,\n className = '',\n showRightBorder = false,\n showLeftBorder = false,\n padding = false,\n color = 'default',\n fontSize = 'base',\n}) => {\n const borderClasses = [\n showLeftBorder && 'border-l border-[var(--malachite-text-dimmed)]',\n showRightBorder && 'border-r border-[var(--malachite-text-dimmed)]',\n ]\n .filter(Boolean)\n .join(' ');\n\n const paddingClasses = padding ? 'px-[10px]' : '';\n\n const colorClasses =\n color === 'dimmed'\n ? 'text-[var(--malachite-text-dimmed)]'\n : 'text-[var(--malachite-text-link-foreground)] hover:text-[var(--malachite-text-link-foreground-hover)]';\n\n const fontSizeClasses = fontSize === 'sm' ? 'text-[13px]' : '';\n\n return (\n <a\n href={href}\n target={target}\n rel={rel}\n className={`no-underline cursor-pointer transition-colors duration-200 ease-in-out ${colorClasses} ${borderClasses} ${paddingClasses} ${fontSizeClasses} ${className}`}\n >\n {children}\n </a>\n );\n};\n\nexport default LinkText;\n"],"names":["LinkText","children","href","target","rel","className","showRightBorder","showLeftBorder","padding","color","fontSize","borderClasses","jsx"],"mappings":";AAeA,MAAMA,IAAgC,CAAC;AAAA,EACnC,UAAAC;AAAA,EACA,MAAAC;AAAA,EACA,QAAAC,IAAS;AAAA,EACT,KAAAC;AAAA,EACA,WAAAC,IAAY;AAAA,EACZ,iBAAAC,IAAkB;AAAA,EAClB,gBAAAC,IAAiB;AAAA,EACjB,SAAAC,IAAU;AAAA,EACV,OAAAC,IAAQ;AAAA,EACR,UAAAC,IAAW;AACf,MAAM;AACF,QAAMC,IAAgB;AAAA,IAClBJ,KAAkB;AAAA,IAClBD,KAAmB;AAAA,EAAA,EAElB,OAAO,OAAO,EACd,KAAK,GAAG;AAWb,SACI,gBAAAM;AAAA,IAAC;AAAA,IAAA;AAAA,MACG,MAAAV;AAAA,MACA,QAAAC;AAAA,MACA,KAAAC;AAAA,MACA,WAAW,0EAXfK,MAAU,WACJ,wCACA,uGAS+F,IAAIE,CAAa,IAdnGH,IAAU,cAAc,EAc6F,IAPpHE,MAAa,OAAO,gBAAgB,EAOmG,IAAIL,CAAS;AAAA,MAEnK,UAAAJ;AAAA,IAAA;AAAA,EAAA;AAGb;"}
|