@oxy.so/bloom 5.1.0 → 5.2.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/docs/adoption-matrix.mdx +9 -9
- package/docs/app-shell.mdx +3 -1
- package/docs/button.mdx +2 -0
- package/docs/card-form.mdx +2 -0
- package/docs/chat-composer.mdx +1 -1
- package/docs/chat-people.mdx +8 -0
- package/docs/earnings.mdx +2 -0
- package/docs/field.mdx +2 -0
- package/docs/label.mdx +2 -0
- package/docs/payment-method.mdx +2 -0
- package/docs/place-details.mdx +2 -2
- package/docs/proof-of-delivery.mdx +4 -0
- package/docs/select.mdx +2 -0
- package/docs/settings-modal.mdx +15 -0
- package/lib/commonjs/ai-chat/AiChatResizeHandle.js +166 -0
- package/lib/commonjs/ai-chat/AiChatResizeHandle.js.map +1 -0
- package/lib/commonjs/ai-chat/AiChatShell.js +6 -154
- package/lib/commonjs/ai-chat/AiChatShell.js.map +1 -1
- package/lib/commonjs/ai-chat/index.js +2 -1
- package/lib/commonjs/ai-chat/index.js.map +1 -1
- package/lib/commonjs/ai-chat/index.web.js +2 -1
- package/lib/commonjs/ai-chat/index.web.js.map +1 -1
- package/lib/commonjs/ai-chat/messages.js +15 -30
- package/lib/commonjs/ai-chat/messages.js.map +1 -1
- package/lib/commonjs/app-shell/AppShellSplit.js +2 -2
- package/lib/commonjs/app-shell/AppShellSplit.js.map +1 -1
- package/lib/commonjs/button/Button.js +36 -3
- package/lib/commonjs/button/Button.js.map +1 -1
- package/lib/commonjs/button/GlyphButton.js +7 -3
- package/lib/commonjs/button/GlyphButton.js.map +1 -1
- package/lib/commonjs/card-form/shared.js +3 -2
- package/lib/commonjs/card-form/shared.js.map +1 -1
- package/lib/commonjs/chat-composer/AttachmentMenu.js +8 -227
- package/lib/commonjs/chat-composer/AttachmentMenu.js.map +1 -1
- package/lib/commonjs/chat-composer/AttachmentMenu.web.js +16 -0
- package/lib/commonjs/chat-composer/AttachmentMenu.web.js.map +1 -0
- package/lib/commonjs/chat-composer/ChatComposer.js +9 -388
- package/lib/commonjs/chat-composer/ChatComposer.js.map +1 -1
- package/lib/commonjs/chat-composer/ChatComposer.web.js +16 -0
- package/lib/commonjs/chat-composer/ChatComposer.web.js.map +1 -0
- package/lib/commonjs/chat-composer/ComposerAttachmentStrip.js +5 -200
- package/lib/commonjs/chat-composer/ComposerAttachmentStrip.js.map +1 -1
- package/lib/commonjs/chat-composer/ComposerAttachmentStrip.web.js +12 -0
- package/lib/commonjs/chat-composer/ComposerAttachmentStrip.web.js.map +1 -0
- package/lib/commonjs/chat-composer/ComposerBanner.js +5 -163
- package/lib/commonjs/chat-composer/ComposerBanner.js.map +1 -1
- package/lib/commonjs/chat-composer/ComposerBanner.web.js +12 -0
- package/lib/commonjs/chat-composer/ComposerBanner.web.js.map +1 -0
- package/lib/commonjs/chat-composer/EmojiPicker.js +6 -443
- package/lib/commonjs/chat-composer/EmojiPicker.js.map +1 -1
- package/lib/commonjs/chat-composer/EmojiPicker.web.js +14 -0
- package/lib/commonjs/chat-composer/EmojiPicker.web.js.map +1 -0
- package/lib/commonjs/chat-composer/MessageContextMenu.js +12 -102
- package/lib/commonjs/chat-composer/MessageContextMenu.js.map +1 -1
- package/lib/commonjs/chat-composer/MessageContextMenu.web.js +19 -0
- package/lib/commonjs/chat-composer/MessageContextMenu.web.js.map +1 -0
- package/lib/commonjs/chat-composer/ReactionPicker.js +6 -107
- package/lib/commonjs/chat-composer/ReactionPicker.js.map +1 -1
- package/lib/commonjs/chat-composer/ReactionPicker.web.js +14 -0
- package/lib/commonjs/chat-composer/ReactionPicker.web.js.map +1 -0
- package/lib/commonjs/chat-composer/SuggestionList.js +5 -222
- package/lib/commonjs/chat-composer/SuggestionList.js.map +1 -1
- package/lib/commonjs/chat-composer/SuggestionList.web.js +12 -0
- package/lib/commonjs/chat-composer/SuggestionList.web.js.map +1 -0
- package/lib/commonjs/chat-composer/VoiceRecorder.js +7 -263
- package/lib/commonjs/chat-composer/VoiceRecorder.js.map +1 -1
- package/lib/commonjs/chat-composer/VoiceRecorder.web.js +16 -0
- package/lib/commonjs/chat-composer/VoiceRecorder.web.js.map +1 -0
- package/lib/commonjs/chat-composer/create-attachment-menu.js +243 -0
- package/lib/commonjs/chat-composer/create-attachment-menu.js.map +1 -0
- package/lib/commonjs/chat-composer/create-chat-composer.js +400 -0
- package/lib/commonjs/chat-composer/create-chat-composer.js.map +1 -0
- package/lib/commonjs/chat-composer/create-composer-attachment-strip.js +212 -0
- package/lib/commonjs/chat-composer/create-composer-attachment-strip.js.map +1 -0
- package/lib/commonjs/chat-composer/create-composer-banner.js +176 -0
- package/lib/commonjs/chat-composer/create-composer-banner.js.map +1 -0
- package/lib/commonjs/chat-composer/create-emoji-picker.js +456 -0
- package/lib/commonjs/chat-composer/create-emoji-picker.js.map +1 -0
- package/lib/commonjs/chat-composer/create-message-context-menu.js +119 -0
- package/lib/commonjs/chat-composer/create-message-context-menu.js.map +1 -0
- package/lib/commonjs/chat-composer/create-reaction-picker.js +120 -0
- package/lib/commonjs/chat-composer/create-reaction-picker.js.map +1 -0
- package/lib/commonjs/chat-composer/create-suggestion-list.js +234 -0
- package/lib/commonjs/chat-composer/create-suggestion-list.js.map +1 -0
- package/lib/commonjs/chat-composer/create-voice-recorder.js +277 -0
- package/lib/commonjs/chat-composer/create-voice-recorder.js.map +1 -0
- package/lib/commonjs/chat-composer/index.js +9 -9
- package/lib/commonjs/chat-composer/index.web.js +18 -18
- package/lib/commonjs/chat-composer/index.web.js.map +1 -1
- package/lib/commonjs/chat-people/contact-row.js +13 -0
- package/lib/commonjs/chat-people/contact-row.js.map +1 -0
- package/lib/commonjs/chat-screen/ChatSplitLayout.js +2 -2
- package/lib/commonjs/chat-screen/ChatSplitLayout.js.map +1 -1
- package/lib/commonjs/earnings/EarningsSummary.js +12 -2
- package/lib/commonjs/earnings/EarningsSummary.js.map +1 -1
- package/lib/commonjs/field/Field.js +2 -0
- package/lib/commonjs/field/Field.js.map +1 -1
- package/lib/commonjs/item/Item.js +16 -8
- package/lib/commonjs/item/Item.js.map +1 -1
- package/lib/commonjs/job-board/JobCard.js +6 -2
- package/lib/commonjs/job-board/JobCard.js.map +1 -1
- package/lib/commonjs/label/Label.js +2 -1
- package/lib/commonjs/label/Label.js.map +1 -1
- package/lib/commonjs/listing-details/AmenityList.js +4 -3
- package/lib/commonjs/listing-details/AmenityList.js.map +1 -1
- package/lib/commonjs/locale/common-messages.js +30 -15
- package/lib/commonjs/locale/common-messages.js.map +1 -1
- package/lib/commonjs/mail-compose/MailComposeSurface.js +1 -1
- package/lib/commonjs/overlay/InteractionBoundary.js +28 -0
- package/lib/commonjs/overlay/InteractionBoundary.js.map +1 -0
- package/lib/commonjs/payment-method/PaymentMethodList.js +3 -2
- package/lib/commonjs/payment-method/PaymentMethodList.js.map +1 -1
- package/lib/commonjs/place-details/PlaceAmenities.js +17 -6
- package/lib/commonjs/place-details/PlaceAmenities.js.map +1 -1
- package/lib/commonjs/place-details/PlacePopularTimes.js +7 -1
- package/lib/commonjs/place-details/PlacePopularTimes.js.map +1 -1
- package/lib/commonjs/proof-of-delivery/ProofOfDelivery.js +10 -1
- package/lib/commonjs/proof-of-delivery/ProofOfDelivery.js.map +1 -1
- package/lib/commonjs/proof-of-delivery/shared.js +1 -1
- package/lib/commonjs/proof-of-delivery/shared.js.map +1 -1
- package/lib/commonjs/select/Select.js +7 -4
- package/lib/commonjs/select/Select.js.map +1 -1
- package/lib/commonjs/select/Select.web.js +7 -4
- package/lib/commonjs/select/Select.web.js.map +1 -1
- package/lib/commonjs/select/use-required-description.js +37 -0
- package/lib/commonjs/select/use-required-description.js.map +1 -0
- package/lib/commonjs/settings-modal/rows.js +37 -0
- package/lib/commonjs/settings-modal/rows.js.map +1 -0
- package/lib/module/ai-chat/AiChatResizeHandle.js +160 -0
- package/lib/module/ai-chat/AiChatResizeHandle.js.map +1 -0
- package/lib/module/ai-chat/AiChatShell.js +5 -152
- package/lib/module/ai-chat/AiChatShell.js.map +1 -1
- package/lib/module/ai-chat/index.js +2 -1
- package/lib/module/ai-chat/index.js.map +1 -1
- package/lib/module/ai-chat/index.web.js +2 -1
- package/lib/module/ai-chat/index.web.js.map +1 -1
- package/lib/module/ai-chat/messages.js +15 -30
- package/lib/module/ai-chat/messages.js.map +1 -1
- package/lib/module/app-shell/AppShellSplit.js +1 -1
- package/lib/module/app-shell/AppShellSplit.js.map +1 -1
- package/lib/module/button/Button.js +36 -3
- package/lib/module/button/Button.js.map +1 -1
- package/lib/module/button/GlyphButton.js +7 -3
- package/lib/module/button/GlyphButton.js.map +1 -1
- package/lib/module/card-form/shared.js +3 -2
- package/lib/module/card-form/shared.js.map +1 -1
- package/lib/module/chat-composer/AttachmentMenu.js +7 -226
- package/lib/module/chat-composer/AttachmentMenu.js.map +1 -1
- package/lib/module/chat-composer/AttachmentMenu.web.js +12 -0
- package/lib/module/chat-composer/AttachmentMenu.web.js.map +1 -0
- package/lib/module/chat-composer/ChatComposer.js +8 -385
- package/lib/module/chat-composer/ChatComposer.js.map +1 -1
- package/lib/module/chat-composer/ChatComposer.web.js +12 -0
- package/lib/module/chat-composer/ChatComposer.web.js.map +1 -0
- package/lib/module/chat-composer/ComposerAttachmentStrip.js +4 -196
- package/lib/module/chat-composer/ComposerAttachmentStrip.js.map +1 -1
- package/lib/module/chat-composer/ComposerAttachmentStrip.web.js +8 -0
- package/lib/module/chat-composer/ComposerAttachmentStrip.web.js.map +1 -0
- package/lib/module/chat-composer/ComposerBanner.js +4 -162
- package/lib/module/chat-composer/ComposerBanner.js.map +1 -1
- package/lib/module/chat-composer/ComposerBanner.web.js +8 -0
- package/lib/module/chat-composer/ComposerBanner.web.js.map +1 -0
- package/lib/module/chat-composer/EmojiPicker.js +5 -440
- package/lib/module/chat-composer/EmojiPicker.js.map +1 -1
- package/lib/module/chat-composer/EmojiPicker.web.js +10 -0
- package/lib/module/chat-composer/EmojiPicker.web.js.map +1 -0
- package/lib/module/chat-composer/MessageContextMenu.js +11 -99
- package/lib/module/chat-composer/MessageContextMenu.js.map +1 -1
- package/lib/module/chat-composer/MessageContextMenu.web.js +15 -0
- package/lib/module/chat-composer/MessageContextMenu.web.js.map +1 -0
- package/lib/module/chat-composer/ReactionPicker.js +5 -104
- package/lib/module/chat-composer/ReactionPicker.js.map +1 -1
- package/lib/module/chat-composer/ReactionPicker.web.js +10 -0
- package/lib/module/chat-composer/ReactionPicker.web.js.map +1 -0
- package/lib/module/chat-composer/SuggestionList.js +4 -219
- package/lib/module/chat-composer/SuggestionList.js.map +1 -1
- package/lib/module/chat-composer/SuggestionList.web.js +8 -0
- package/lib/module/chat-composer/SuggestionList.web.js.map +1 -0
- package/lib/module/chat-composer/VoiceRecorder.js +6 -260
- package/lib/module/chat-composer/VoiceRecorder.js.map +1 -1
- package/lib/module/chat-composer/VoiceRecorder.web.js +12 -0
- package/lib/module/chat-composer/VoiceRecorder.web.js.map +1 -0
- package/lib/module/chat-composer/create-attachment-menu.js +238 -0
- package/lib/module/chat-composer/create-attachment-menu.js.map +1 -0
- package/lib/module/chat-composer/create-chat-composer.js +395 -0
- package/lib/module/chat-composer/create-chat-composer.js.map +1 -0
- package/lib/module/chat-composer/create-composer-attachment-strip.js +206 -0
- package/lib/module/chat-composer/create-composer-attachment-strip.js.map +1 -0
- package/lib/module/chat-composer/create-composer-banner.js +171 -0
- package/lib/module/chat-composer/create-composer-banner.js.map +1 -0
- package/lib/module/chat-composer/create-emoji-picker.js +451 -0
- package/lib/module/chat-composer/create-emoji-picker.js.map +1 -0
- package/lib/module/chat-composer/create-message-context-menu.js +114 -0
- package/lib/module/chat-composer/create-message-context-menu.js.map +1 -0
- package/lib/module/chat-composer/create-reaction-picker.js +115 -0
- package/lib/module/chat-composer/create-reaction-picker.js.map +1 -0
- package/lib/module/chat-composer/create-suggestion-list.js +229 -0
- package/lib/module/chat-composer/create-suggestion-list.js.map +1 -0
- package/lib/module/chat-composer/create-voice-recorder.js +272 -0
- package/lib/module/chat-composer/create-voice-recorder.js.map +1 -0
- package/lib/module/chat-composer/index.js +9 -9
- package/lib/module/chat-composer/index.js.map +1 -1
- package/lib/module/chat-composer/index.web.js +9 -9
- package/lib/module/chat-composer/index.web.js.map +1 -1
- package/lib/module/chat-people/contact-row.js +10 -0
- package/lib/module/chat-people/contact-row.js.map +1 -0
- package/lib/module/chat-screen/ChatSplitLayout.js +1 -1
- package/lib/module/chat-screen/ChatSplitLayout.js.map +1 -1
- package/lib/module/earnings/EarningsSummary.js +12 -2
- package/lib/module/earnings/EarningsSummary.js.map +1 -1
- package/lib/module/field/Field.js +2 -0
- package/lib/module/field/Field.js.map +1 -1
- package/lib/module/item/Item.js +16 -8
- package/lib/module/item/Item.js.map +1 -1
- package/lib/module/job-board/JobCard.js +6 -2
- package/lib/module/job-board/JobCard.js.map +1 -1
- package/lib/module/label/Label.js +2 -1
- package/lib/module/label/Label.js.map +1 -1
- package/lib/module/listing-details/AmenityList.js +4 -3
- package/lib/module/listing-details/AmenityList.js.map +1 -1
- package/lib/module/locale/common-messages.js +30 -15
- package/lib/module/locale/common-messages.js.map +1 -1
- package/lib/module/mail-compose/MailComposeSurface.js +1 -1
- package/lib/module/mail-compose/MailComposeSurface.js.map +1 -1
- package/lib/module/overlay/InteractionBoundary.js +25 -0
- package/lib/module/overlay/InteractionBoundary.js.map +1 -0
- package/lib/module/payment-method/PaymentMethodList.js +3 -2
- package/lib/module/payment-method/PaymentMethodList.js.map +1 -1
- package/lib/module/place-details/PlaceAmenities.js +15 -4
- package/lib/module/place-details/PlaceAmenities.js.map +1 -1
- package/lib/module/place-details/PlacePopularTimes.js +7 -1
- package/lib/module/place-details/PlacePopularTimes.js.map +1 -1
- package/lib/module/proof-of-delivery/ProofOfDelivery.js +10 -1
- package/lib/module/proof-of-delivery/ProofOfDelivery.js.map +1 -1
- package/lib/module/proof-of-delivery/shared.js +1 -1
- package/lib/module/proof-of-delivery/shared.js.map +1 -1
- package/lib/module/select/Select.js +7 -4
- package/lib/module/select/Select.js.map +1 -1
- package/lib/module/select/Select.web.js +7 -4
- package/lib/module/select/Select.web.js.map +1 -1
- package/lib/module/select/use-required-description.js +33 -0
- package/lib/module/select/use-required-description.js.map +1 -0
- package/lib/module/settings-modal/rows.js +10 -0
- package/lib/module/settings-modal/rows.js.map +1 -0
- package/lib/typescript/commonjs/ai-chat/AiChatResizeHandle.d.ts +11 -0
- package/lib/typescript/commonjs/ai-chat/AiChatResizeHandle.d.ts.map +1 -0
- package/lib/typescript/commonjs/ai-chat/AiChatShell.d.ts +1 -10
- package/lib/typescript/commonjs/ai-chat/AiChatShell.d.ts.map +1 -1
- package/lib/typescript/commonjs/ai-chat/index.d.ts +2 -1
- package/lib/typescript/commonjs/ai-chat/index.d.ts.map +1 -1
- package/lib/typescript/commonjs/ai-chat/index.web.d.ts +2 -1
- package/lib/typescript/commonjs/ai-chat/index.web.d.ts.map +1 -1
- package/lib/typescript/commonjs/ai-chat/messages.d.ts +0 -1
- package/lib/typescript/commonjs/ai-chat/messages.d.ts.map +1 -1
- package/lib/typescript/commonjs/button/Button.d.ts.map +1 -1
- package/lib/typescript/commonjs/card-form/shared.d.ts +2 -1
- package/lib/typescript/commonjs/card-form/shared.d.ts.map +1 -1
- package/lib/typescript/commonjs/chat-composer/AttachmentMenu.d.ts +1 -2
- package/lib/typescript/commonjs/chat-composer/AttachmentMenu.d.ts.map +1 -1
- package/lib/typescript/commonjs/chat-composer/AttachmentMenu.web.d.ts +2 -0
- package/lib/typescript/commonjs/chat-composer/AttachmentMenu.web.d.ts.map +1 -0
- package/lib/typescript/commonjs/chat-composer/ChatComposer.d.ts +1 -2
- package/lib/typescript/commonjs/chat-composer/ChatComposer.d.ts.map +1 -1
- package/lib/typescript/commonjs/chat-composer/ChatComposer.web.d.ts +2 -0
- package/lib/typescript/commonjs/chat-composer/ChatComposer.web.d.ts.map +1 -0
- package/lib/typescript/commonjs/chat-composer/ComposerAttachmentStrip.d.ts +1 -2
- package/lib/typescript/commonjs/chat-composer/ComposerAttachmentStrip.d.ts.map +1 -1
- package/lib/typescript/commonjs/chat-composer/ComposerAttachmentStrip.web.d.ts +2 -0
- package/lib/typescript/commonjs/chat-composer/ComposerAttachmentStrip.web.d.ts.map +1 -0
- package/lib/typescript/commonjs/chat-composer/ComposerBanner.d.ts +1 -2
- package/lib/typescript/commonjs/chat-composer/ComposerBanner.d.ts.map +1 -1
- package/lib/typescript/commonjs/chat-composer/ComposerBanner.web.d.ts +2 -0
- package/lib/typescript/commonjs/chat-composer/ComposerBanner.web.d.ts.map +1 -0
- package/lib/typescript/commonjs/chat-composer/EmojiPicker.d.ts +1 -2
- package/lib/typescript/commonjs/chat-composer/EmojiPicker.d.ts.map +1 -1
- package/lib/typescript/commonjs/chat-composer/EmojiPicker.web.d.ts +2 -0
- package/lib/typescript/commonjs/chat-composer/EmojiPicker.web.d.ts.map +1 -0
- package/lib/typescript/commonjs/chat-composer/MessageContextMenu.d.ts +1 -2
- package/lib/typescript/commonjs/chat-composer/MessageContextMenu.d.ts.map +1 -1
- package/lib/typescript/commonjs/chat-composer/MessageContextMenu.web.d.ts +2 -0
- package/lib/typescript/commonjs/chat-composer/MessageContextMenu.web.d.ts.map +1 -0
- package/lib/typescript/commonjs/chat-composer/ReactionPicker.d.ts +1 -2
- package/lib/typescript/commonjs/chat-composer/ReactionPicker.d.ts.map +1 -1
- package/lib/typescript/commonjs/chat-composer/ReactionPicker.web.d.ts +2 -0
- package/lib/typescript/commonjs/chat-composer/ReactionPicker.web.d.ts.map +1 -0
- package/lib/typescript/commonjs/chat-composer/SuggestionList.d.ts +1 -2
- package/lib/typescript/commonjs/chat-composer/SuggestionList.d.ts.map +1 -1
- package/lib/typescript/commonjs/chat-composer/SuggestionList.web.d.ts +2 -0
- package/lib/typescript/commonjs/chat-composer/SuggestionList.web.d.ts.map +1 -0
- package/lib/typescript/commonjs/chat-composer/VoiceRecorder.d.ts +1 -2
- package/lib/typescript/commonjs/chat-composer/VoiceRecorder.d.ts.map +1 -1
- package/lib/typescript/commonjs/chat-composer/VoiceRecorder.web.d.ts +2 -0
- package/lib/typescript/commonjs/chat-composer/VoiceRecorder.web.d.ts.map +1 -0
- package/lib/typescript/commonjs/chat-composer/create-attachment-menu.d.ts +11 -0
- package/lib/typescript/commonjs/chat-composer/create-attachment-menu.d.ts.map +1 -0
- package/lib/typescript/commonjs/chat-composer/create-chat-composer.d.ts +11 -0
- package/lib/typescript/commonjs/chat-composer/create-chat-composer.d.ts.map +1 -0
- package/lib/typescript/commonjs/chat-composer/create-composer-attachment-strip.d.ts +7 -0
- package/lib/typescript/commonjs/chat-composer/create-composer-attachment-strip.d.ts.map +1 -0
- package/lib/typescript/commonjs/chat-composer/create-composer-banner.d.ts +7 -0
- package/lib/typescript/commonjs/chat-composer/create-composer-banner.d.ts.map +1 -0
- package/lib/typescript/commonjs/chat-composer/create-emoji-picker.d.ts +9 -0
- package/lib/typescript/commonjs/chat-composer/create-emoji-picker.d.ts.map +1 -0
- package/lib/typescript/commonjs/chat-composer/create-message-context-menu.d.ts +14 -0
- package/lib/typescript/commonjs/chat-composer/create-message-context-menu.d.ts.map +1 -0
- package/lib/typescript/commonjs/chat-composer/create-reaction-picker.d.ts +9 -0
- package/lib/typescript/commonjs/chat-composer/create-reaction-picker.d.ts.map +1 -0
- package/lib/typescript/commonjs/chat-composer/create-suggestion-list.d.ts +7 -0
- package/lib/typescript/commonjs/chat-composer/create-suggestion-list.d.ts.map +1 -0
- package/lib/typescript/commonjs/chat-composer/create-voice-recorder.d.ts +11 -0
- package/lib/typescript/commonjs/chat-composer/create-voice-recorder.d.ts.map +1 -0
- package/lib/typescript/commonjs/chat-composer/index.web.d.ts +9 -9
- package/lib/typescript/commonjs/chat-composer/index.web.d.ts.map +1 -1
- package/lib/typescript/commonjs/chat-people/contact-row.d.ts +9 -0
- package/lib/typescript/commonjs/chat-people/contact-row.d.ts.map +1 -0
- package/lib/typescript/commonjs/earnings/EarningsSummary.d.ts.map +1 -1
- package/lib/typescript/commonjs/field/Field.d.ts +1 -1
- package/lib/typescript/commonjs/field/Field.d.ts.map +1 -1
- package/lib/typescript/commonjs/field/types.d.ts +2 -0
- package/lib/typescript/commonjs/field/types.d.ts.map +1 -1
- package/lib/typescript/commonjs/floating/types.d.ts +1 -0
- package/lib/typescript/commonjs/floating/types.d.ts.map +1 -1
- package/lib/typescript/commonjs/item/Item.d.ts.map +1 -1
- package/lib/typescript/commonjs/job-board/JobCard.d.ts.map +1 -1
- package/lib/typescript/commonjs/label/Label.d.ts +1 -1
- package/lib/typescript/commonjs/label/Label.d.ts.map +1 -1
- package/lib/typescript/commonjs/label/types.d.ts +2 -0
- package/lib/typescript/commonjs/label/types.d.ts.map +1 -1
- package/lib/typescript/commonjs/listing-details/AmenityList.d.ts.map +1 -1
- package/lib/typescript/commonjs/locale/common-messages.d.ts +2 -0
- package/lib/typescript/commonjs/locale/common-messages.d.ts.map +1 -1
- package/lib/typescript/commonjs/overlay/InteractionBoundary.d.ts +7 -0
- package/lib/typescript/commonjs/overlay/InteractionBoundary.d.ts.map +1 -0
- package/lib/typescript/commonjs/payment-method/PaymentMethodList.d.ts.map +1 -1
- package/lib/typescript/commonjs/place-details/PlaceAmenities.d.ts.map +1 -1
- package/lib/typescript/commonjs/place-details/PlacePopularTimes.d.ts.map +1 -1
- package/lib/typescript/commonjs/proof-of-delivery/ProofOfDelivery.d.ts.map +1 -1
- package/lib/typescript/commonjs/select/Select.d.ts.map +1 -1
- package/lib/typescript/commonjs/select/Select.web.d.ts.map +1 -1
- package/lib/typescript/commonjs/select/use-required-description.d.ts +7 -0
- package/lib/typescript/commonjs/select/use-required-description.d.ts.map +1 -0
- package/lib/typescript/commonjs/settings-modal/rows.d.ts +9 -0
- package/lib/typescript/commonjs/settings-modal/rows.d.ts.map +1 -0
- package/lib/typescript/module/ai-chat/AiChatResizeHandle.d.ts +11 -0
- package/lib/typescript/module/ai-chat/AiChatResizeHandle.d.ts.map +1 -0
- package/lib/typescript/module/ai-chat/AiChatShell.d.ts +1 -10
- package/lib/typescript/module/ai-chat/AiChatShell.d.ts.map +1 -1
- package/lib/typescript/module/ai-chat/index.d.ts +2 -1
- package/lib/typescript/module/ai-chat/index.d.ts.map +1 -1
- package/lib/typescript/module/ai-chat/index.web.d.ts +2 -1
- package/lib/typescript/module/ai-chat/index.web.d.ts.map +1 -1
- package/lib/typescript/module/ai-chat/messages.d.ts +0 -1
- package/lib/typescript/module/ai-chat/messages.d.ts.map +1 -1
- package/lib/typescript/module/button/Button.d.ts.map +1 -1
- package/lib/typescript/module/card-form/shared.d.ts +2 -1
- package/lib/typescript/module/card-form/shared.d.ts.map +1 -1
- package/lib/typescript/module/chat-composer/AttachmentMenu.d.ts +1 -2
- package/lib/typescript/module/chat-composer/AttachmentMenu.d.ts.map +1 -1
- package/lib/typescript/module/chat-composer/AttachmentMenu.web.d.ts +2 -0
- package/lib/typescript/module/chat-composer/AttachmentMenu.web.d.ts.map +1 -0
- package/lib/typescript/module/chat-composer/ChatComposer.d.ts +1 -2
- package/lib/typescript/module/chat-composer/ChatComposer.d.ts.map +1 -1
- package/lib/typescript/module/chat-composer/ChatComposer.web.d.ts +2 -0
- package/lib/typescript/module/chat-composer/ChatComposer.web.d.ts.map +1 -0
- package/lib/typescript/module/chat-composer/ComposerAttachmentStrip.d.ts +1 -2
- package/lib/typescript/module/chat-composer/ComposerAttachmentStrip.d.ts.map +1 -1
- package/lib/typescript/module/chat-composer/ComposerAttachmentStrip.web.d.ts +2 -0
- package/lib/typescript/module/chat-composer/ComposerAttachmentStrip.web.d.ts.map +1 -0
- package/lib/typescript/module/chat-composer/ComposerBanner.d.ts +1 -2
- package/lib/typescript/module/chat-composer/ComposerBanner.d.ts.map +1 -1
- package/lib/typescript/module/chat-composer/ComposerBanner.web.d.ts +2 -0
- package/lib/typescript/module/chat-composer/ComposerBanner.web.d.ts.map +1 -0
- package/lib/typescript/module/chat-composer/EmojiPicker.d.ts +1 -2
- package/lib/typescript/module/chat-composer/EmojiPicker.d.ts.map +1 -1
- package/lib/typescript/module/chat-composer/EmojiPicker.web.d.ts +2 -0
- package/lib/typescript/module/chat-composer/EmojiPicker.web.d.ts.map +1 -0
- package/lib/typescript/module/chat-composer/MessageContextMenu.d.ts +1 -2
- package/lib/typescript/module/chat-composer/MessageContextMenu.d.ts.map +1 -1
- package/lib/typescript/module/chat-composer/MessageContextMenu.web.d.ts +2 -0
- package/lib/typescript/module/chat-composer/MessageContextMenu.web.d.ts.map +1 -0
- package/lib/typescript/module/chat-composer/ReactionPicker.d.ts +1 -2
- package/lib/typescript/module/chat-composer/ReactionPicker.d.ts.map +1 -1
- package/lib/typescript/module/chat-composer/ReactionPicker.web.d.ts +2 -0
- package/lib/typescript/module/chat-composer/ReactionPicker.web.d.ts.map +1 -0
- package/lib/typescript/module/chat-composer/SuggestionList.d.ts +1 -2
- package/lib/typescript/module/chat-composer/SuggestionList.d.ts.map +1 -1
- package/lib/typescript/module/chat-composer/SuggestionList.web.d.ts +2 -0
- package/lib/typescript/module/chat-composer/SuggestionList.web.d.ts.map +1 -0
- package/lib/typescript/module/chat-composer/VoiceRecorder.d.ts +1 -2
- package/lib/typescript/module/chat-composer/VoiceRecorder.d.ts.map +1 -1
- package/lib/typescript/module/chat-composer/VoiceRecorder.web.d.ts +2 -0
- package/lib/typescript/module/chat-composer/VoiceRecorder.web.d.ts.map +1 -0
- package/lib/typescript/module/chat-composer/create-attachment-menu.d.ts +11 -0
- package/lib/typescript/module/chat-composer/create-attachment-menu.d.ts.map +1 -0
- package/lib/typescript/module/chat-composer/create-chat-composer.d.ts +11 -0
- package/lib/typescript/module/chat-composer/create-chat-composer.d.ts.map +1 -0
- package/lib/typescript/module/chat-composer/create-composer-attachment-strip.d.ts +7 -0
- package/lib/typescript/module/chat-composer/create-composer-attachment-strip.d.ts.map +1 -0
- package/lib/typescript/module/chat-composer/create-composer-banner.d.ts +7 -0
- package/lib/typescript/module/chat-composer/create-composer-banner.d.ts.map +1 -0
- package/lib/typescript/module/chat-composer/create-emoji-picker.d.ts +9 -0
- package/lib/typescript/module/chat-composer/create-emoji-picker.d.ts.map +1 -0
- package/lib/typescript/module/chat-composer/create-message-context-menu.d.ts +14 -0
- package/lib/typescript/module/chat-composer/create-message-context-menu.d.ts.map +1 -0
- package/lib/typescript/module/chat-composer/create-reaction-picker.d.ts +9 -0
- package/lib/typescript/module/chat-composer/create-reaction-picker.d.ts.map +1 -0
- package/lib/typescript/module/chat-composer/create-suggestion-list.d.ts +7 -0
- package/lib/typescript/module/chat-composer/create-suggestion-list.d.ts.map +1 -0
- package/lib/typescript/module/chat-composer/create-voice-recorder.d.ts +11 -0
- package/lib/typescript/module/chat-composer/create-voice-recorder.d.ts.map +1 -0
- package/lib/typescript/module/chat-composer/index.web.d.ts +9 -9
- package/lib/typescript/module/chat-composer/index.web.d.ts.map +1 -1
- package/lib/typescript/module/chat-people/contact-row.d.ts +9 -0
- package/lib/typescript/module/chat-people/contact-row.d.ts.map +1 -0
- package/lib/typescript/module/earnings/EarningsSummary.d.ts.map +1 -1
- package/lib/typescript/module/field/Field.d.ts +1 -1
- package/lib/typescript/module/field/Field.d.ts.map +1 -1
- package/lib/typescript/module/field/types.d.ts +2 -0
- package/lib/typescript/module/field/types.d.ts.map +1 -1
- package/lib/typescript/module/floating/types.d.ts +1 -0
- package/lib/typescript/module/floating/types.d.ts.map +1 -1
- package/lib/typescript/module/item/Item.d.ts.map +1 -1
- package/lib/typescript/module/job-board/JobCard.d.ts.map +1 -1
- package/lib/typescript/module/label/Label.d.ts +1 -1
- package/lib/typescript/module/label/Label.d.ts.map +1 -1
- package/lib/typescript/module/label/types.d.ts +2 -0
- package/lib/typescript/module/label/types.d.ts.map +1 -1
- package/lib/typescript/module/listing-details/AmenityList.d.ts.map +1 -1
- package/lib/typescript/module/locale/common-messages.d.ts +2 -0
- package/lib/typescript/module/locale/common-messages.d.ts.map +1 -1
- package/lib/typescript/module/overlay/InteractionBoundary.d.ts +7 -0
- package/lib/typescript/module/overlay/InteractionBoundary.d.ts.map +1 -0
- package/lib/typescript/module/payment-method/PaymentMethodList.d.ts.map +1 -1
- package/lib/typescript/module/place-details/PlaceAmenities.d.ts.map +1 -1
- package/lib/typescript/module/place-details/PlacePopularTimes.d.ts.map +1 -1
- package/lib/typescript/module/proof-of-delivery/ProofOfDelivery.d.ts.map +1 -1
- package/lib/typescript/module/select/Select.d.ts.map +1 -1
- package/lib/typescript/module/select/Select.web.d.ts.map +1 -1
- package/lib/typescript/module/select/use-required-description.d.ts +7 -0
- package/lib/typescript/module/select/use-required-description.d.ts.map +1 -0
- package/lib/typescript/module/settings-modal/rows.d.ts +9 -0
- package/lib/typescript/module/settings-modal/rows.d.ts.map +1 -0
- package/package.json +35 -1
- package/src/ai-chat/AiChatResizeHandle.tsx +151 -0
- package/src/ai-chat/AiChatShell.tsx +8 -143
- package/src/ai-chat/index.ts +2 -1
- package/src/ai-chat/index.web.ts +2 -1
- package/src/ai-chat/messages.ts +0 -16
- package/src/app-shell/AppShellSplit.tsx +1 -1
- package/src/button/Button.tsx +35 -10
- package/src/button/GlyphButton.tsx +3 -3
- package/src/card-form/shared.ts +3 -2
- package/src/chat-composer/AttachmentMenu.tsx +2 -214
- package/src/chat-composer/AttachmentMenu.web.tsx +5 -0
- package/src/chat-composer/ChatComposer.tsx +2 -459
- package/src/chat-composer/ChatComposer.web.tsx +6 -0
- package/src/chat-composer/ComposerAttachmentStrip.tsx +2 -202
- package/src/chat-composer/ComposerAttachmentStrip.web.tsx +4 -0
- package/src/chat-composer/ComposerBanner.tsx +2 -157
- package/src/chat-composer/ComposerBanner.web.tsx +4 -0
- package/src/chat-composer/EmojiPicker.tsx +2 -402
- package/src/chat-composer/EmojiPicker.web.tsx +5 -0
- package/src/chat-composer/MessageContextMenu.tsx +2 -88
- package/src/chat-composer/MessageContextMenu.web.tsx +12 -0
- package/src/chat-composer/ReactionPicker.tsx +2 -100
- package/src/chat-composer/ReactionPicker.web.tsx +5 -0
- package/src/chat-composer/SuggestionList.tsx +2 -209
- package/src/chat-composer/SuggestionList.web.tsx +4 -0
- package/src/chat-composer/VoiceRecorder.tsx +2 -287
- package/src/chat-composer/VoiceRecorder.web.tsx +6 -0
- package/src/chat-composer/create-attachment-menu.tsx +228 -0
- package/src/chat-composer/create-chat-composer.tsx +473 -0
- package/src/chat-composer/create-composer-attachment-strip.tsx +212 -0
- package/src/chat-composer/create-composer-banner.tsx +167 -0
- package/src/chat-composer/create-emoji-picker.tsx +414 -0
- package/src/chat-composer/create-message-context-menu.tsx +112 -0
- package/src/chat-composer/create-reaction-picker.tsx +112 -0
- package/src/chat-composer/create-suggestion-list.tsx +219 -0
- package/src/chat-composer/create-voice-recorder.tsx +301 -0
- package/src/chat-composer/index.web.ts +9 -9
- package/src/chat-people/contact-row.ts +8 -0
- package/src/chat-screen/ChatSplitLayout.tsx +1 -1
- package/src/earnings/EarningsSummary.tsx +9 -2
- package/src/field/Field.tsx +2 -1
- package/src/field/types.ts +2 -0
- package/src/floating/types.ts +1 -0
- package/src/item/Item.tsx +16 -11
- package/src/job-board/JobCard.tsx +4 -1
- package/src/label/Label.tsx +2 -1
- package/src/label/types.ts +2 -0
- package/src/listing-details/AmenityList.tsx +4 -3
- package/src/locale/common-messages.ts +17 -0
- package/src/overlay/InteractionBoundary.tsx +24 -0
- package/src/payment-method/PaymentMethodList.tsx +2 -1
- package/src/place-details/PlaceAmenities.tsx +9 -0
- package/src/place-details/PlacePopularTimes.tsx +7 -1
- package/src/proof-of-delivery/ProofOfDelivery.tsx +9 -1
- package/src/proof-of-delivery/shared.ts +1 -1
- package/src/select/Select.tsx +5 -1
- package/src/select/Select.web.tsx +5 -1
- package/src/select/use-required-description.tsx +20 -0
- package/src/settings-modal/rows.ts +21 -0
package/docs/adoption-matrix.mdx
CHANGED
|
@@ -139,7 +139,7 @@ The classification is an EQUALITY in `src/__tests__/adoption-matrix.test.ts`, no
|
|
|
139
139
|
| `bottom-bar` | `@oxy.so/bloom/bottom-bar` + barrel | web fork | `bottom-bar.mdx` | yes | 2 | | | | |
|
|
140
140
|
| `bottom-sheet` | `@oxy.so/bloom/bottom-sheet` + barrel | web fork | `bottom-sheet.mdx` | yes | 7 | | | | |
|
|
141
141
|
| `breadcrumb` | `@oxy.so/bloom/breadcrumb` + barrel | universal | `breadcrumb.mdx` | yes | 2 | | | | |
|
|
142
|
-
| `button` | `@oxy.so/bloom/button` + barrel | web fork | `button.mdx` | yes |
|
|
142
|
+
| `button` | `@oxy.so/bloom/button` + barrel | web fork | `button.mdx` | yes | 39 | | | n/a¹ | |
|
|
143
143
|
| `button-group` | `@oxy.so/bloom/button-group` + barrel | web fork | `button-group.mdx` | yes | 7 | | reads | | |
|
|
144
144
|
| `calendar` | `@oxy.so/bloom/calendar` + barrel | universal | `calendar.mdx` | yes | 3 | | | | reads |
|
|
145
145
|
| `call-ui` | `@oxy.so/bloom/call-ui` + barrel | universal | `call-ui.mdx` | yes | 2 | | | | |
|
|
@@ -149,7 +149,7 @@ The classification is an EQUALITY in `src/__tests__/adoption-matrix.test.ts`, no
|
|
|
149
149
|
| `carrier-quote` | `@oxy.so/bloom/carrier-quote` + barrel | universal | `carrier-quote.mdx` | yes | 2 | n/a¹ | | | reads |
|
|
150
150
|
| `cart-panel` | `@oxy.so/bloom/cart-panel` + barrel | universal | `cart-panel.mdx` | yes | 1 | | | | |
|
|
151
151
|
| `category-bar` | `@oxy.so/bloom/category-bar` + barrel | universal | `category-bar.mdx` | yes | 3 | | | | |
|
|
152
|
-
| `chart-cards` | `@oxy.so/bloom/chart-cards` + barrel | universal | `chart-cards.mdx` | yes |
|
|
152
|
+
| `chart-cards` | `@oxy.so/bloom/chart-cards` + barrel | universal | `chart-cards.mdx` | yes | 34 | | | | **adaptation** |
|
|
153
153
|
| `chat-composer` | `@oxy.so/bloom/chat-composer` + barrel | web fork | `chat-composer.mdx` | yes | 4 | n/a¹ | n/a¹ | | reads |
|
|
154
154
|
| `chat-indicators` | `@oxy.so/bloom/chat-indicators` + barrel | universal | `chat-indicators.mdx` | yes | 2 | | | | |
|
|
155
155
|
| `chat-list` | `@oxy.so/bloom/chat-list` + barrel | universal | `chat-list.mdx` | yes | 3 | n/a¹ | | | **adaptation** |
|
|
@@ -179,12 +179,12 @@ The classification is an EQUALITY in `src/__tests__/adoption-matrix.test.ts`, no
|
|
|
179
179
|
| `divider` | `@oxy.so/bloom/divider` + barrel | universal | `divider.mdx` | yes | 1 | | | | |
|
|
180
180
|
| `dot-grid-meter` | `@oxy.so/bloom/dot-grid-meter` + barrel | universal | `dot-grid-meter.mdx` | yes | 2 | | | | |
|
|
181
181
|
| `dropdown-menu` | `@oxy.so/bloom/dropdown-menu` + barrel | web fork | `dropdown-menu.mdx` | yes | 5 | | | reads | reads |
|
|
182
|
-
| `earnings` | `@oxy.so/bloom/earnings` + barrel | universal | `earnings.mdx` | yes |
|
|
182
|
+
| `earnings` | `@oxy.so/bloom/earnings` + barrel | universal | `earnings.mdx` | yes | 2 | | | | reads |
|
|
183
183
|
| `empty-state` | `@oxy.so/bloom/empty-state` + barrel | universal | `empty-state.mdx` | yes | 1 | | | | |
|
|
184
184
|
| `error-boundary` | `@oxy.so/bloom/error-boundary` + barrel | universal | `error-boundary.mdx` | yes | 2 | | | | |
|
|
185
185
|
| `eviction` | `@oxy.so/bloom/eviction` + barrel | universal | `eviction.mdx` | yes | 2 | | | | |
|
|
186
186
|
| `fab` | `@oxy.so/bloom/fab` + barrel | web fork | `fab.mdx` | yes | 4 | | | | |
|
|
187
|
-
| `field` | `@oxy.so/bloom/field` + barrel | universal | `field.mdx` | yes |
|
|
187
|
+
| `field` | `@oxy.so/bloom/field` + barrel | universal | `field.mdx` | yes | 10 | reads | | | |
|
|
188
188
|
| `file-upload` | `@oxy.so/bloom/file-upload` + barrel | universal | `file-upload.mdx` | yes | 4 | reads | | | |
|
|
189
189
|
| `fill` | `@oxy.so/bloom/fill` + barrel | universal | `fill.mdx` | yes | 1 | | | | |
|
|
190
190
|
| `floating` | internal | universal | — | — | 17 | n/a¹ | | reads | reads |
|
|
@@ -215,7 +215,7 @@ The classification is an EQUALITY in `src/__tests__/adoption-matrix.test.ts`, no
|
|
|
215
215
|
| `listing-details` | `@oxy.so/bloom/listing-details` + barrel | universal | `listing-details.mdx` | yes | 5 | | | | reads |
|
|
216
216
|
| `listing-editor` | `@oxy.so/bloom/listing-editor` + barrel | universal | `listing-editor.mdx` | yes | 2 | **adaptation** | | | reads |
|
|
217
217
|
| `loading` | `@oxy.so/bloom/loading` + barrel | web fork | `loading.mdx` | yes | 3 | | | | |
|
|
218
|
-
| `locale` | `@oxy.so/bloom/locale` + barrel | universal | `locale.mdx` | — |
|
|
218
|
+
| `locale` | `@oxy.so/bloom/locale` + barrel | universal | `locale.mdx` | — | 22 | | | | |
|
|
219
219
|
| `location-puck` | `@oxy.so/bloom/location-puck` + barrel | universal | `location-puck.mdx` | yes | 2 | | | | |
|
|
220
220
|
| `lyrics` | `@oxy.so/bloom/lyrics` + barrel | universal | `lyrics.mdx` | yes | 3 | | | | |
|
|
221
221
|
| `mail-compose` | `@oxy.so/bloom/mail-compose` + barrel | universal | `mail-compose.mdx` | yes | 4 | reads | | | reads |
|
|
@@ -250,7 +250,7 @@ The classification is an EQUALITY in `src/__tests__/adoption-matrix.test.ts`, no
|
|
|
250
250
|
| `page-header` | `@oxy.so/bloom/page-header` + barrel | universal | `page-header.mdx` | yes | 4 | | reads | | |
|
|
251
251
|
| `pagination` | `@oxy.so/bloom/pagination` + barrel | universal | `pagination.mdx` | yes | 2 | | | | |
|
|
252
252
|
| `patient-info-card` | `@oxy.so/bloom/patient-info-card` + barrel | universal | `patient-info-card.mdx` | yes | 1 | | | | |
|
|
253
|
-
| `payment-method` | `@oxy.so/bloom/payment-method` + barrel | universal | `payment-method.mdx` | yes |
|
|
253
|
+
| `payment-method` | `@oxy.so/bloom/payment-method` + barrel | universal | `payment-method.mdx` | yes | 3 | reads | | | |
|
|
254
254
|
| `payment-status` | `@oxy.so/bloom/payment-status` + barrel | universal | `payment-status.mdx` | yes | 2 | | | | |
|
|
255
255
|
| `phone-input` | `@oxy.so/bloom/phone-input` | universal | `phone-input.mdx` | yes | 3 | reads | delegated | | reads |
|
|
256
256
|
| `pipeline` | `@oxy.so/bloom/pipeline` + barrel | universal | `pipeline.mdx` | yes | 1 | | | | reads |
|
|
@@ -278,7 +278,7 @@ The classification is an EQUALITY in `src/__tests__/adoption-matrix.test.ts`, no
|
|
|
278
278
|
| `scroll` | `@oxy.so/bloom/scroll` + barrel | web fork | `scroll.mdx` | yes | 5 | | | | |
|
|
279
279
|
| `search` | `@oxy.so/bloom/search` + barrel | universal | `search.mdx` | yes | 3 | | | | |
|
|
280
280
|
| `segmented-control` | `@oxy.so/bloom/segmented-control` + barrel | universal | `segmented-control.mdx` | yes | 4 | reads | | | |
|
|
281
|
-
| `select` | `@oxy.so/bloom/select` + barrel | web fork | `select.mdx` | yes |
|
|
281
|
+
| `select` | `@oxy.so/bloom/select` + barrel | web fork | `select.mdx` | yes | 9 | reads | | reads | |
|
|
282
282
|
| `settings-list` | `@oxy.so/bloom/settings-list` + barrel | universal | `settings-list.mdx` | yes | 5 | | | | |
|
|
283
283
|
| `settings-modal` | `@oxy.so/bloom/settings-modal` + barrel | universal | `settings-modal.mdx` | yes | 9 | | | | reads |
|
|
284
284
|
| `shapes` | `@oxy.so/bloom/shapes` + barrel | universal | `shapes.mdx` | yes | 4 | | | | |
|
|
@@ -293,7 +293,7 @@ The classification is an EQUALITY in `src/__tests__/adoption-matrix.test.ts`, no
|
|
|
293
293
|
| `stay-filters` | `@oxy.so/bloom/stay-filters` + barrel | universal | `stay-filters.mdx` | yes | 5 | n/a¹ | | | |
|
|
294
294
|
| `stay-search` | `@oxy.so/bloom/stay-search` + barrel | universal | `stay-search.mdx` | yes | 5 | | | | |
|
|
295
295
|
| `stepper` | `@oxy.so/bloom/stepper` + barrel | universal | `stepper.mdx` | yes | 4 | reads | | | |
|
|
296
|
-
| `styles` | `@oxy.so/bloom/styles` + barrel | universal | `styles.mdx` | yes |
|
|
296
|
+
| `styles` | `@oxy.so/bloom/styles` + barrel | universal | `styles.mdx` | yes | 82 | n/a¹ | | | |
|
|
297
297
|
| `subtle-hover` | `@oxy.so/bloom/subtle-hover` + barrel | universal | `subtle-hover.mdx` | yes | 1 | | | | |
|
|
298
298
|
| `surface` | `@oxy.so/bloom/surface` + barrel | web fork | `surface.mdx` | yes | 5 | | | | |
|
|
299
299
|
| `surfaces` | `@oxy.so/bloom/surfaces` + barrel | web fork | `alert.mdx` | yes | 3 | | | | |
|
|
@@ -308,7 +308,7 @@ The classification is an EQUALITY in `src/__tests__/adoption-matrix.test.ts`, no
|
|
|
308
308
|
| `tenancy` | `@oxy.so/bloom/tenancy` + barrel | universal | `tenancy.mdx` | yes | 5 | | n/a¹ | | |
|
|
309
309
|
| `text-field` | `@oxy.so/bloom/text-field` + barrel | universal | `text-field.mdx` | yes | 16 | reads | reads | | |
|
|
310
310
|
| `textarea` | `@oxy.so/bloom/textarea` + barrel | universal | `textarea.mdx` | yes | 4 | reads | reads | | n/a¹ |
|
|
311
|
-
| `theme` | `@oxy.so/bloom/theme` + barrel | web fork | `theme.mdx` | yes |
|
|
311
|
+
| `theme` | `@oxy.so/bloom/theme` + barrel | web fork | `theme.mdx` | yes | 341 | | | n/a¹ | reads |
|
|
312
312
|
| `theme-toggle` | `@oxy.so/bloom/theme-toggle` + barrel | universal | `theme-toggle.mdx` | yes | 2 | n/a¹ | | | |
|
|
313
313
|
| `toast` | `@oxy.so/bloom/toast` + barrel | universal | `toast.mdx` | yes | 17 | | | | |
|
|
314
314
|
| `tooltip` | `@oxy.so/bloom/tooltip` + barrel | web fork | `tooltip.mdx` | yes | 1 | | | | |
|
package/docs/app-shell.mdx
CHANGED
|
@@ -151,7 +151,9 @@ canvas that grew the page would pan the page instead of the canvas.
|
|
|
151
151
|
`ScrollView` (`paneScroll={false}` when the pane's content already scrolls — a
|
|
152
152
|
`FlatList`, a virtualizer). The divider between the first two is `ai-chat`'s
|
|
153
153
|
`AiChatResizeHandle`, reused rather than rewritten: pointer-capture dragging on
|
|
154
|
-
web, a `PanResponder` on native, arrow keys, and the same grip.
|
|
154
|
+
web, a `PanResponder` on native, arrow keys, and the same grip. The grip is its
|
|
155
|
+
own module (`ai-chat/AiChatResizeHandle`), so a `split` shell does not link the
|
|
156
|
+
AI chat shell or its message catalog. It is named
|
|
155
157
|
`resizeLabel` (`"Resize panes"`) with `role="separator"`. `listWidth` (360) is
|
|
156
158
|
the resting width and a drag is clamped to `listMinWidth`/`listMaxWidth`
|
|
157
159
|
(280/520); `onListWidthChange` reports where it settled.
|
package/docs/button.mdx
CHANGED
|
@@ -68,3 +68,5 @@ Surface appearances (`solid`, `subtle`, `outline`, including legacy surface vari
|
|
|
68
68
|
Accent/status/brand colours keep their semantic foreground pairs. Subtle tints are composited onto a stable theme backing; neutral and disabled surfaces remain opaque. Loading retains its rest paint. The optional `colors={{ background, foreground }}` pair supports branded controls without changing geometry. Native uses one SVG; web uses a decorative pseudo-element. Geometry has no optical offsets.
|
|
69
69
|
|
|
70
70
|
Button forwards its ref to the interactive node (the native View handle or the actual web button/anchor), so menus can anchor to it without a layout wrapper. Optional `onLayout` reports React Native's layout shape on both platforms; web installs a resize observer only when that callback is supplied. Press-in/out, cancellation and long press share the base gesture lifecycle. String labels keep the typography defaults; custom content can supply icons, animated glyphs or a composed row. Accessibility visibility props support controls that fade out without leaving an invisible focus target.
|
|
71
|
+
|
|
72
|
+
Native text children are wrapped individually when mixed with custom layout nodes or fragments, including icon-only buttons. Custom layout nodes retain their own layout.
|
package/docs/card-form.mdx
CHANGED
|
@@ -183,3 +183,5 @@ wiring the way every select trigger does — but the country box's own `error` c
|
|
|
183
183
|
to that trigger's `aria-describedby`, because `SelectTrigger` takes no such prop. The
|
|
184
184
|
message is drawn; it is not announced as part of the control. Put a country message on the
|
|
185
185
|
enclosing `Field` instead. This is a gap in `select`, not one this family can close.
|
|
186
|
+
|
|
187
|
+
If a scheme change reduces `maxDigits` below the current value, deletion remains available until the value fits. New over-limit digits are still refused.
|
package/docs/chat-composer.mdx
CHANGED
|
@@ -237,4 +237,4 @@ State colours 150ms; the mic ↔ send cross-fade 220ms; the recording dot pulses
|
|
|
237
237
|
All of them take `style` and `testID`.
|
|
238
238
|
|
|
239
239
|
|
|
240
|
-
The composer
|
|
240
|
+
The composer controls compose Bloom Button, including its press-in/out recording lifecycle. Each public component has a thin platform binding; shared factories receive Button, Surface, and overlay components explicitly. Web bindings name their `.web` dependencies, so built browser packages work without Metro-style extension resolution. No additional layout wrappers are introduced.
|
package/docs/chat-people.mdx
CHANGED
|
@@ -53,6 +53,14 @@ with `onSelectedChange`, an action button with `onAction`, nothing otherwise.
|
|
|
53
53
|
| `size` | `'medium'` 44px avatar (default), `'small'` 36 for a picker |
|
|
54
54
|
| `horizontalInset` | Avatar/text inset, default `10`. Use `0` when the surrounding widget already provides its inset. |
|
|
55
55
|
|
|
56
|
+
A single row outside a list — a suggestion card, a search result — imports
|
|
57
|
+
the lightweight entry, which links `ContactRow` without the lists, the group
|
|
58
|
+
form or the story viewer (Metro does not tree-shake barrel exports):
|
|
59
|
+
|
|
60
|
+
```tsx
|
|
61
|
+
import { ContactRow } from '@oxy.so/bloom/chat-people/contact-row';
|
|
62
|
+
```
|
|
63
|
+
|
|
56
64
|
### Selection is ONE target
|
|
57
65
|
|
|
58
66
|
When the row is a checkbox row, the **row itself** carries `role="checkbox"` and
|
package/docs/earnings.mdx
CHANGED
|
@@ -60,6 +60,8 @@ So it is `scripts/verify-earnings-headline.mjs`: a real Chrome, `page.mouse.move
|
|
|
60
60
|
|
|
61
61
|
## The period is controlled here, and the chart is remounted to follow it
|
|
62
62
|
|
|
63
|
+
An external change to the controlled `period` clears the active bar before the next headline paints, just like using the period switch. Returning to the previous period starts from its total.
|
|
64
|
+
|
|
63
65
|
`useChartRange` inside `chart-cards` is uncontrolled: it takes a `defaultRange` and there is no `range`. A period changed from outside the panel therefore cannot reach the chart card's own segmented control, and the switch and the panel would disagree with nothing to say so.
|
|
64
66
|
|
|
65
67
|
The chart is keyed on the period id, which remounts it with the new default. The cost is that the bars grow in again instead of morphing across the switch. **This is a gap in `chart-cards`, recorded rather than worked around silently** — the fix is a controlled `range` prop on `useChartRange`, and it is not made here.
|
package/docs/field.mdx
CHANGED
|
@@ -145,3 +145,5 @@ decisions. [Composition](/docs/composition) has the table of directions.
|
|
|
145
145
|
For the label alone, without the surrounding structure, use
|
|
146
146
|
[`Label`](/docs/bloom/main/label). For a control with attached buttons or
|
|
147
147
|
prefixes, use [`InputGroup`](/docs/bloom/main/input-group) *inside* a `Field`.
|
|
148
|
+
|
|
149
|
+
`requiredLabel` overrides the accessible name of the required marker for this instance; omitted, it follows the current locale.
|
package/docs/label.mdx
CHANGED
|
@@ -52,3 +52,5 @@ announces as optional.
|
|
|
52
52
|
A label names a control. A section title above a group of fields is a heading;
|
|
53
53
|
using `Label` for it makes a screen reader look for a control that is not
|
|
54
54
|
there.
|
|
55
|
+
|
|
56
|
+
`requiredLabel` overrides the accessible name of the required marker for this instance; omitted, it follows the current locale.
|
package/docs/payment-method.mdx
CHANGED
|
@@ -167,3 +167,5 @@ control — it draws no press target — so it stays inside.
|
|
|
167
167
|
`PaymentMethodMark` is the whole mark, and `card-form` uses it for the scheme it detects.
|
|
168
168
|
Use it anywhere a method has to be identified without a row: a receipt line, a
|
|
169
169
|
confirmation screen, a settings header.
|
|
170
|
+
|
|
171
|
+
Picker rows with `expired` or `declined` state cannot be selected; management-list rows remain actionable so users can update those methods. Read-only pickers still expose each radio’s checked state. A required enclosing Field marks the radiogroup required.
|
package/docs/place-details.mdx
CHANGED
|
@@ -140,7 +140,7 @@ place's was the noun, and a noun is not a component.
|
|
|
140
140
|
|
|
141
141
|
`layout="chips"` is the one thing a listing page does not have: a wrapping strip of `Chip`s
|
|
142
142
|
for the top of a sheet, where four attributes have to read at a glance. Same items, same
|
|
143
|
-
unavailable treatment, different density.
|
|
143
|
+
unavailable treatment, different density. Both layouts show a translated expansion button when `onShowAll` is provided and `limit` or `total` indicates more amenities. The list also resolves its text against the ambient surface.
|
|
144
144
|
|
|
145
145
|
The name sits on the strip's `listitem` and not on the chip, because a non-pressable `Chip`
|
|
146
146
|
is a plain `View` — and on web a `div` carrying an `aria-label` and no role is not
|
|
@@ -172,7 +172,7 @@ The chart is ONE image with one name ("Wednesday, busiest at 9, now 18, busier t
|
|
|
172
172
|
Twenty-four bars two pixels wide would be twenty-four tab stops saying a number each, which
|
|
173
173
|
is not a reading of anything. The axis labels every hour that fits and every second or third
|
|
174
174
|
below that — twenty-four labels across a phone is sixteen pixels each — and the current
|
|
175
|
-
hour keeps its label whatever the step.
|
|
175
|
+
hour keeps its label whatever the step; regular labels whose slots overlap it are omitted. If a selected day disappears from `days`, the selector and chart both fall back to the first available day.
|
|
176
176
|
|
|
177
177
|
`PLACE_BUSY_LABELS` holds the three English trend sentences (the chart speaks them localised via `BloomProvider locale`); `trendLabel` replaces one.
|
|
178
178
|
|
|
@@ -29,6 +29,10 @@ import { ProofOfDelivery, SignaturePad } from '@oxy.so/bloom/proof-of-delivery';
|
|
|
29
29
|
|
|
30
30
|
Every one is a `Field`, so the label, the hint, the required mark, the error and the association with the control are said once (`docs/composition.mdx`). Two of the five draw SEVERAL controls — the signature is a pad and a name, the photo is a grid — so those fields are `multiple`: one id on three inputs is invalid HTML, and one error described by three inputs is announced three times.
|
|
31
31
|
|
|
32
|
+
A photo counts as proof once its status is `uploaded` (also the default when omitted). Failed and uploading photos remain missing. `labels.required` overrides the accessible required marker for this form.
|
|
33
|
+
|
|
34
|
+
Custom `actions` inherit the form’s `disabled` and `submitting` interaction lock, including keyboard focus on web.
|
|
35
|
+
|
|
32
36
|
### Why the photo is not `FileUpload`
|
|
33
37
|
|
|
34
38
|
`FileUpload` is a DROP ZONE with an upload lifecycle of its own. That is right for a document on a desktop and wrong at a door: the photo comes from a camera the app opens, and what has to be on screen afterwards is the picture, its upload state and a way to take another. `SortablePhotoGrid` is that — the app owns the picker, the grid owns the order, the per-photo progress and the retry.
|
package/docs/select.mdx
CHANGED
|
@@ -208,3 +208,5 @@ Every menu row in Bloom is an `Item`. A select row is not, and the reason is its
|
|
|
208
208
|
The web option reserves a 30px indicator gutter and paints the indicator into it ABSOLUTELY, so the label's left edge does not move between a selected row and an unselected one; `Item` has an in-flow leading slot and no absolute one. On top of that, `Item` couples `selected` to its OWN selected background, while the select paints its own row wash — the same one hover and focus use — from the menu palette.
|
|
209
209
|
|
|
210
210
|
Composing would mean flattening one of those two, and both are visible: the first as a label that jumps sideways on selection, the second as a selected row painted in a colour no other menu row uses. So select keeps its own row, and `radio-indicator` stays the one indicator both it and `Radio` draw.
|
|
211
|
+
|
|
212
|
+
Inside a required Field, the trigger announces the localized required constraint through a description on web and a native accessibility hint. It remains a menu button; `aria-required` is reserved for roles that support it.
|
package/docs/settings-modal.mdx
CHANGED
|
@@ -103,6 +103,21 @@ Menus, selects, tooltips and the date popover opened inside a page stack above i
|
|
|
103
103
|
|
|
104
104
|
**The hairline stops 12px short of the card's left edge** because the padding lives on the card, not the row — rows must be direct children of `SettingsCard` (fragments are flattened). "Last" is derived from the card's children, since React Native has no `:last-child`.
|
|
105
105
|
|
|
106
|
+
### Rows outside the dialog
|
|
107
|
+
|
|
108
|
+
A preference card on a screen or in a sheet imports the lightweight entry:
|
|
109
|
+
|
|
110
|
+
```tsx
|
|
111
|
+
import { SettingsCard, SettingsRow } from '@oxy.so/bloom/settings-modal/rows';
|
|
112
|
+
```
|
|
113
|
+
|
|
114
|
+
It carries `SettingsCard`, `SettingsRow`, `SettingsSection`,
|
|
115
|
+
`SettingsSectionLabel` and `SettingsValueField` (and their prop types) — the
|
|
116
|
+
same components — without linking `SettingsModal`, the storage/tools/plan pages
|
|
117
|
+
or `SettingsDateField`'s calendar. Metro does not tree-shake barrel exports, so
|
|
118
|
+
one row imported from `@oxy.so/bloom/settings-modal` put the whole dialog in the
|
|
119
|
+
bundle of the screen that drew it. Gate: `lean-entries.test.ts`.
|
|
120
|
+
|
|
106
121
|
## Pages
|
|
107
122
|
|
|
108
123
|
- **`SettingsGeneralPage`** — `plan` (`SettingsPlanCard`) then `sections`. The plan card's artwork is `SettingsPlanArt`: on web, a WebGL "burning flag" shader over `artworkSource` (or Bloom's generated accent/success/warning discs), eased toward the pointer; native, reduced motion and a failed WebGL context get the static discs. A radial fade melts it into the card.
|
|
@@ -0,0 +1,166 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.AiChatResizeHandle = AiChatResizeHandle;
|
|
7
|
+
var _react = _interopRequireWildcard(require("react"));
|
|
8
|
+
var _reactNative = require("react-native");
|
|
9
|
+
var _commonMessages = require("../locale/common-messages.js");
|
|
10
|
+
var _shared = require("./shared.js");
|
|
11
|
+
var _jsxRuntime = require("react/jsx-runtime");
|
|
12
|
+
function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
|
|
13
|
+
/**
|
|
14
|
+
* The divider grip between two resizable panes. Its own module because three
|
|
15
|
+
* families draw it — `AiChatShell`, `AppShell`'s `split` variant and
|
|
16
|
+
* `ChatSplitLayout` — and the two that are not the AI chat must not link the
|
|
17
|
+
* chat shell (Metro does not tree-shake): importing it from `AiChatShell` put
|
|
18
|
+
* that module, its reanimated drawers and the whole ai-chat message catalog in
|
|
19
|
+
* every app that renders an `AppShell`.
|
|
20
|
+
*/
|
|
21
|
+
|
|
22
|
+
/**
|
|
23
|
+
* The resize grip (`DragHandle`): a 20px strip straddling the chat's right edge
|
|
24
|
+
* (10px past it). Hovering it reveals a 15×25 grip — radius 4, 1px
|
|
25
|
+
* border-button-default, background-primary, shadow-xs, three 1×13
|
|
26
|
+
* icon-quaternary lines 2 apart — that follows the pointer along the edge
|
|
27
|
+
* (kept 13px inside it) and stays up while dragging (150ms fade). Holding and
|
|
28
|
+
* dragging reports the horizontal distance from where the drag started.
|
|
29
|
+
*/
|
|
30
|
+
function AiChatResizeHandle({
|
|
31
|
+
onResizeStart,
|
|
32
|
+
onResize,
|
|
33
|
+
onResizeEnd,
|
|
34
|
+
label: labelProp,
|
|
35
|
+
onNudge,
|
|
36
|
+
style,
|
|
37
|
+
testID
|
|
38
|
+
}) {
|
|
39
|
+
(0, _shared.useAiChatWebCss)();
|
|
40
|
+
const palette = (0, _shared.useAiChatPalette)();
|
|
41
|
+
const common = (0, _commonMessages.useCommonMessages)();
|
|
42
|
+
const label = labelProp ?? common.resizePanels;
|
|
43
|
+
const [gripY, setGripY] = (0, _react.useState)(null);
|
|
44
|
+
const [dragging, setDragging] = (0, _react.useState)(false);
|
|
45
|
+
const height = (0, _react.useRef)(0);
|
|
46
|
+
const startX = (0, _react.useRef)(0);
|
|
47
|
+
const callbacks = (0, _react.useRef)({
|
|
48
|
+
onResizeStart,
|
|
49
|
+
onResize,
|
|
50
|
+
onResizeEnd
|
|
51
|
+
});
|
|
52
|
+
callbacks.current = {
|
|
53
|
+
onResizeStart,
|
|
54
|
+
onResize,
|
|
55
|
+
onResizeEnd
|
|
56
|
+
};
|
|
57
|
+
const track = localY => {
|
|
58
|
+
const h = height.current;
|
|
59
|
+
if (h > 0) setGripY(Math.min(h - 13, Math.max(13, localY)));
|
|
60
|
+
};
|
|
61
|
+
|
|
62
|
+
// Native: a pan responder (web uses pointer capture below).
|
|
63
|
+
const responder = (0, _react.useMemo)(() => _reactNative.PanResponder.create({
|
|
64
|
+
onStartShouldSetPanResponder: () => true,
|
|
65
|
+
onMoveShouldSetPanResponder: () => true,
|
|
66
|
+
onPanResponderGrant: event => {
|
|
67
|
+
track(event.nativeEvent.locationY);
|
|
68
|
+
setDragging(true);
|
|
69
|
+
callbacks.current.onResizeStart?.();
|
|
70
|
+
},
|
|
71
|
+
onPanResponderMove: (_event, gesture) => callbacks.current.onResize(gesture.dx),
|
|
72
|
+
onPanResponderRelease: () => {
|
|
73
|
+
setDragging(false);
|
|
74
|
+
callbacks.current.onResizeEnd?.();
|
|
75
|
+
},
|
|
76
|
+
onPanResponderTerminate: () => {
|
|
77
|
+
setDragging(false);
|
|
78
|
+
callbacks.current.onResizeEnd?.();
|
|
79
|
+
}
|
|
80
|
+
}), []);
|
|
81
|
+
const web = _shared.IS_WEB ? {
|
|
82
|
+
onPointerDown: event => {
|
|
83
|
+
event.preventDefault();
|
|
84
|
+
startX.current = event.nativeEvent.clientX;
|
|
85
|
+
setDragging(true);
|
|
86
|
+
callbacks.current.onResizeStart?.();
|
|
87
|
+
event.currentTarget.setPointerCapture(event.nativeEvent.pointerId);
|
|
88
|
+
},
|
|
89
|
+
onPointerMove: event => {
|
|
90
|
+
const target = event.currentTarget;
|
|
91
|
+
track(event.nativeEvent.clientY - target.getBoundingClientRect().top);
|
|
92
|
+
if (target.hasPointerCapture(event.nativeEvent.pointerId)) {
|
|
93
|
+
callbacks.current.onResize(event.nativeEvent.clientX - startX.current);
|
|
94
|
+
}
|
|
95
|
+
},
|
|
96
|
+
onPointerUp: () => {
|
|
97
|
+
setDragging(false);
|
|
98
|
+
callbacks.current.onResizeEnd?.();
|
|
99
|
+
},
|
|
100
|
+
onPointerCancel: () => {
|
|
101
|
+
setDragging(false);
|
|
102
|
+
callbacks.current.onResizeEnd?.();
|
|
103
|
+
},
|
|
104
|
+
onKeyDown: event => {
|
|
105
|
+
if (event.nativeEvent.key === 'ArrowLeft') onNudge?.(-16);
|
|
106
|
+
if (event.nativeEvent.key === 'ArrowRight') onNudge?.(16);
|
|
107
|
+
},
|
|
108
|
+
tabIndex: onNudge ? 0 : undefined
|
|
109
|
+
} : responder.panHandlers;
|
|
110
|
+
const grip = {
|
|
111
|
+
position: 'absolute',
|
|
112
|
+
...(gripY === null ? {
|
|
113
|
+
top: '50%'
|
|
114
|
+
} : {
|
|
115
|
+
top: gripY
|
|
116
|
+
}),
|
|
117
|
+
width: 15,
|
|
118
|
+
height: 25,
|
|
119
|
+
marginTop: -12.5,
|
|
120
|
+
flexDirection: 'row',
|
|
121
|
+
alignItems: 'center',
|
|
122
|
+
justifyContent: 'center',
|
|
123
|
+
gap: 2,
|
|
124
|
+
borderRadius: 4,
|
|
125
|
+
borderWidth: 1,
|
|
126
|
+
borderColor: palette.border,
|
|
127
|
+
backgroundColor: palette.primary,
|
|
128
|
+
boxShadow: palette.shadowXs,
|
|
129
|
+
...(_shared.IS_WEB ? null : {
|
|
130
|
+
opacity: dragging ? 1 : 0
|
|
131
|
+
})
|
|
132
|
+
};
|
|
133
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
|
|
134
|
+
...(0, _shared.dataHook)('bloomAiChatGrip'),
|
|
135
|
+
...web,
|
|
136
|
+
role: "separator",
|
|
137
|
+
"aria-orientation": "vertical",
|
|
138
|
+
accessibilityLabel: label,
|
|
139
|
+
testID: testID,
|
|
140
|
+
onLayout: event => {
|
|
141
|
+
height.current = event.nativeEvent.layout.height;
|
|
142
|
+
},
|
|
143
|
+
style: [{
|
|
144
|
+
position: 'absolute',
|
|
145
|
+
top: 0,
|
|
146
|
+
bottom: 0,
|
|
147
|
+
right: -10,
|
|
148
|
+
zIndex: 10,
|
|
149
|
+
width: 20,
|
|
150
|
+
alignItems: 'center'
|
|
151
|
+
}, style],
|
|
152
|
+
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
|
|
153
|
+
...(0, _shared.dataHook)('bloomAiChatGripPill', dragging ? 'dragging' : ''),
|
|
154
|
+
pointerEvents: "none",
|
|
155
|
+
style: grip,
|
|
156
|
+
children: [0, 1, 2].map(line => /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
|
|
157
|
+
style: {
|
|
158
|
+
width: 1,
|
|
159
|
+
height: 13,
|
|
160
|
+
backgroundColor: palette.iconQuaternary
|
|
161
|
+
}
|
|
162
|
+
}, line))
|
|
163
|
+
})
|
|
164
|
+
});
|
|
165
|
+
}
|
|
166
|
+
//# sourceMappingURL=AiChatResizeHandle.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_commonMessages","_shared","_jsxRuntime","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","AiChatResizeHandle","onResizeStart","onResize","onResizeEnd","label","labelProp","onNudge","style","testID","useAiChatWebCss","palette","useAiChatPalette","common","useCommonMessages","resizePanels","gripY","setGripY","useState","dragging","setDragging","height","useRef","startX","callbacks","current","track","localY","h","Math","min","max","responder","useMemo","PanResponder","create","onStartShouldSetPanResponder","onMoveShouldSetPanResponder","onPanResponderGrant","event","nativeEvent","locationY","onPanResponderMove","_event","gesture","dx","onPanResponderRelease","onPanResponderTerminate","web","IS_WEB","onPointerDown","preventDefault","clientX","currentTarget","setPointerCapture","pointerId","onPointerMove","target","clientY","getBoundingClientRect","top","hasPointerCapture","onPointerUp","onPointerCancel","onKeyDown","key","tabIndex","undefined","panHandlers","grip","position","width","marginTop","flexDirection","alignItems","justifyContent","gap","borderRadius","borderWidth","borderColor","border","backgroundColor","primary","boxShadow","shadowXs","opacity","jsx","View","dataHook","role","accessibilityLabel","onLayout","layout","bottom","right","zIndex","children","pointerEvents","map","line","iconQuaternary"],"sourceRoot":"../../../src","sources":["ai-chat/AiChatResizeHandle.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -4,7 +4,6 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports.AiChatMobileHeader = AiChatMobileHeader;
|
|
7
|
-
exports.AiChatResizeHandle = AiChatResizeHandle;
|
|
8
7
|
exports.AiChatShell = AiChatShell;
|
|
9
8
|
var _surfaceLevels = require("../styles/surface-levels.js");
|
|
10
9
|
var _useSurfaceBacking = require("../surface/use-surface-backing.js");
|
|
@@ -21,8 +20,10 @@ var _webViewStyle = require("../styles/web-view-style.js");
|
|
|
21
20
|
var _index = require("../typography/index.js");
|
|
22
21
|
var _context = require("./context.js");
|
|
23
22
|
var _shared = require("./shared.js");
|
|
23
|
+
var _commonMessages = require("../locale/common-messages.js");
|
|
24
24
|
var _messages = require("../locale/messages.js");
|
|
25
25
|
var _messages2 = require("./messages.js");
|
|
26
|
+
var _AiChatResizeHandle = require("./AiChatResizeHandle.js");
|
|
26
27
|
var _clamp = require("../styles/clamp.js");
|
|
27
28
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
28
29
|
function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
|
|
@@ -74,157 +75,6 @@ const NAV_SWIPE_FLICK = 0.3;
|
|
|
74
75
|
/** A settle never runs shorter than this, so the last few px are still seen. */
|
|
75
76
|
const NAV_SETTLE_MIN_MS = 120;
|
|
76
77
|
|
|
77
|
-
// ---------------------------------------------------------------------------
|
|
78
|
-
// Resize handle
|
|
79
|
-
// ---------------------------------------------------------------------------
|
|
80
|
-
|
|
81
|
-
/**
|
|
82
|
-
* The resize grip (`DragHandle`): a 20px strip straddling the chat's right edge
|
|
83
|
-
* (10px past it). Hovering it reveals a 15×25 grip — radius 4, 1px
|
|
84
|
-
* border-button-default, background-primary, shadow-xs, three 1×13
|
|
85
|
-
* icon-quaternary lines 2 apart — that follows the pointer along the edge
|
|
86
|
-
* (kept 13px inside it) and stays up while dragging (150ms fade). Holding and
|
|
87
|
-
* dragging reports the horizontal distance from where the drag started.
|
|
88
|
-
*/
|
|
89
|
-
function AiChatResizeHandle({
|
|
90
|
-
onResizeStart,
|
|
91
|
-
onResize,
|
|
92
|
-
onResizeEnd,
|
|
93
|
-
label: labelProp,
|
|
94
|
-
onNudge,
|
|
95
|
-
style,
|
|
96
|
-
testID
|
|
97
|
-
}) {
|
|
98
|
-
(0, _shared.useAiChatWebCss)();
|
|
99
|
-
const palette = (0, _shared.useAiChatPalette)();
|
|
100
|
-
const {
|
|
101
|
-
messages
|
|
102
|
-
} = (0, _messages.useMessages)(_messages2.AI_CHAT_MESSAGES);
|
|
103
|
-
const label = labelProp ?? messages.shell.resize;
|
|
104
|
-
const [gripY, setGripY] = (0, _react.useState)(null);
|
|
105
|
-
const [dragging, setDragging] = (0, _react.useState)(false);
|
|
106
|
-
const height = (0, _react.useRef)(0);
|
|
107
|
-
const startX = (0, _react.useRef)(0);
|
|
108
|
-
const callbacks = (0, _react.useRef)({
|
|
109
|
-
onResizeStart,
|
|
110
|
-
onResize,
|
|
111
|
-
onResizeEnd
|
|
112
|
-
});
|
|
113
|
-
callbacks.current = {
|
|
114
|
-
onResizeStart,
|
|
115
|
-
onResize,
|
|
116
|
-
onResizeEnd
|
|
117
|
-
};
|
|
118
|
-
const track = localY => {
|
|
119
|
-
const h = height.current;
|
|
120
|
-
if (h > 0) setGripY(Math.min(h - 13, Math.max(13, localY)));
|
|
121
|
-
};
|
|
122
|
-
|
|
123
|
-
// Native: a pan responder (web uses pointer capture below).
|
|
124
|
-
const responder = (0, _react.useMemo)(() => _reactNative.PanResponder.create({
|
|
125
|
-
onStartShouldSetPanResponder: () => true,
|
|
126
|
-
onMoveShouldSetPanResponder: () => true,
|
|
127
|
-
onPanResponderGrant: event => {
|
|
128
|
-
track(event.nativeEvent.locationY);
|
|
129
|
-
setDragging(true);
|
|
130
|
-
callbacks.current.onResizeStart?.();
|
|
131
|
-
},
|
|
132
|
-
onPanResponderMove: (_event, gesture) => callbacks.current.onResize(gesture.dx),
|
|
133
|
-
onPanResponderRelease: () => {
|
|
134
|
-
setDragging(false);
|
|
135
|
-
callbacks.current.onResizeEnd?.();
|
|
136
|
-
},
|
|
137
|
-
onPanResponderTerminate: () => {
|
|
138
|
-
setDragging(false);
|
|
139
|
-
callbacks.current.onResizeEnd?.();
|
|
140
|
-
}
|
|
141
|
-
}), []);
|
|
142
|
-
const web = _shared.IS_WEB ? {
|
|
143
|
-
onPointerDown: event => {
|
|
144
|
-
event.preventDefault();
|
|
145
|
-
startX.current = event.nativeEvent.clientX;
|
|
146
|
-
setDragging(true);
|
|
147
|
-
callbacks.current.onResizeStart?.();
|
|
148
|
-
event.currentTarget.setPointerCapture(event.nativeEvent.pointerId);
|
|
149
|
-
},
|
|
150
|
-
onPointerMove: event => {
|
|
151
|
-
const target = event.currentTarget;
|
|
152
|
-
track(event.nativeEvent.clientY - target.getBoundingClientRect().top);
|
|
153
|
-
if (target.hasPointerCapture(event.nativeEvent.pointerId)) {
|
|
154
|
-
callbacks.current.onResize(event.nativeEvent.clientX - startX.current);
|
|
155
|
-
}
|
|
156
|
-
},
|
|
157
|
-
onPointerUp: () => {
|
|
158
|
-
setDragging(false);
|
|
159
|
-
callbacks.current.onResizeEnd?.();
|
|
160
|
-
},
|
|
161
|
-
onPointerCancel: () => {
|
|
162
|
-
setDragging(false);
|
|
163
|
-
callbacks.current.onResizeEnd?.();
|
|
164
|
-
},
|
|
165
|
-
onKeyDown: event => {
|
|
166
|
-
if (event.nativeEvent.key === 'ArrowLeft') onNudge?.(-16);
|
|
167
|
-
if (event.nativeEvent.key === 'ArrowRight') onNudge?.(16);
|
|
168
|
-
},
|
|
169
|
-
tabIndex: onNudge ? 0 : undefined
|
|
170
|
-
} : responder.panHandlers;
|
|
171
|
-
const grip = {
|
|
172
|
-
position: 'absolute',
|
|
173
|
-
...(gripY === null ? {
|
|
174
|
-
top: '50%'
|
|
175
|
-
} : {
|
|
176
|
-
top: gripY
|
|
177
|
-
}),
|
|
178
|
-
width: 15,
|
|
179
|
-
height: 25,
|
|
180
|
-
marginTop: -12.5,
|
|
181
|
-
flexDirection: 'row',
|
|
182
|
-
alignItems: 'center',
|
|
183
|
-
justifyContent: 'center',
|
|
184
|
-
gap: 2,
|
|
185
|
-
borderRadius: 4,
|
|
186
|
-
borderWidth: 1,
|
|
187
|
-
borderColor: palette.border,
|
|
188
|
-
backgroundColor: palette.primary,
|
|
189
|
-
boxShadow: palette.shadowXs,
|
|
190
|
-
...(_shared.IS_WEB ? null : {
|
|
191
|
-
opacity: dragging ? 1 : 0
|
|
192
|
-
})
|
|
193
|
-
};
|
|
194
|
-
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
|
|
195
|
-
...(0, _shared.dataHook)('bloomAiChatGrip'),
|
|
196
|
-
...web,
|
|
197
|
-
role: "separator",
|
|
198
|
-
"aria-orientation": "vertical",
|
|
199
|
-
accessibilityLabel: label,
|
|
200
|
-
testID: testID,
|
|
201
|
-
onLayout: event => {
|
|
202
|
-
height.current = event.nativeEvent.layout.height;
|
|
203
|
-
},
|
|
204
|
-
style: [{
|
|
205
|
-
position: 'absolute',
|
|
206
|
-
top: 0,
|
|
207
|
-
bottom: 0,
|
|
208
|
-
right: -10,
|
|
209
|
-
zIndex: 10,
|
|
210
|
-
width: 20,
|
|
211
|
-
alignItems: 'center'
|
|
212
|
-
}, style],
|
|
213
|
-
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
|
|
214
|
-
...(0, _shared.dataHook)('bloomAiChatGripPill', dragging ? 'dragging' : ''),
|
|
215
|
-
pointerEvents: "none",
|
|
216
|
-
style: grip,
|
|
217
|
-
children: [0, 1, 2].map(line => /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
|
|
218
|
-
style: {
|
|
219
|
-
width: 1,
|
|
220
|
-
height: 13,
|
|
221
|
-
backgroundColor: palette.iconQuaternary
|
|
222
|
-
}
|
|
223
|
-
}, line))
|
|
224
|
-
})
|
|
225
|
-
});
|
|
226
|
-
}
|
|
227
|
-
|
|
228
78
|
// ---------------------------------------------------------------------------
|
|
229
79
|
// Mobile header
|
|
230
80
|
// ---------------------------------------------------------------------------
|
|
@@ -360,10 +210,12 @@ function AiChatShell({
|
|
|
360
210
|
messages
|
|
361
211
|
} = (0, _messages.useMessages)(_messages2.AI_CHAT_MESSAGES);
|
|
362
212
|
const panelLabel = panelLabelProp ?? messages.code;
|
|
213
|
+
const common = (0, _commonMessages.useCommonMessages)();
|
|
363
214
|
const l = (0, _react.useMemo)(() => ({
|
|
364
215
|
...messages.shell,
|
|
216
|
+
resize: common.resizePanels,
|
|
365
217
|
...labels
|
|
366
|
-
}), [messages, labels]);
|
|
218
|
+
}), [messages, common, labels]);
|
|
367
219
|
const {
|
|
368
220
|
width: windowWidth
|
|
369
221
|
} = (0, _reactNative.useWindowDimensions)();
|
|
@@ -735,7 +587,7 @@ function AiChatShell({
|
|
|
735
587
|
flexBasis: 0,
|
|
736
588
|
flexDirection: 'row'
|
|
737
589
|
},
|
|
738
|
-
children: [children, wide && panel ? /*#__PURE__*/(0, _jsxRuntime.jsx)(AiChatResizeHandle, {
|
|
590
|
+
children: [children, wide && panel ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_AiChatResizeHandle.AiChatResizeHandle, {
|
|
739
591
|
label: l.resize,
|
|
740
592
|
onResizeStart: onResizeStart,
|
|
741
593
|
onResize: onResize,
|