@oxyhq/bloom 0.1.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/README.md +295 -0
- package/lib/commonjs/avatar/Avatar.js +215 -0
- package/lib/commonjs/avatar/Avatar.js.map +1 -0
- package/lib/commonjs/avatar/index.js +13 -0
- package/lib/commonjs/avatar/index.js.map +1 -0
- package/lib/commonjs/avatar/types.js +6 -0
- package/lib/commonjs/avatar/types.js.map +1 -0
- package/lib/commonjs/button/Button.js +169 -0
- package/lib/commonjs/button/Button.js.map +1 -0
- package/lib/commonjs/button/index.js +43 -0
- package/lib/commonjs/button/index.js.map +1 -0
- package/lib/commonjs/button/types.js +6 -0
- package/lib/commonjs/button/types.js.map +1 -0
- package/lib/commonjs/collapsible/Collapsible.js +58 -0
- package/lib/commonjs/collapsible/Collapsible.js.map +1 -0
- package/lib/commonjs/collapsible/index.js +13 -0
- package/lib/commonjs/collapsible/index.js.map +1 -0
- package/lib/commonjs/collapsible/types.js +6 -0
- package/lib/commonjs/collapsible/types.js.map +1 -0
- package/lib/commonjs/dialog/Dialog.js +186 -0
- package/lib/commonjs/dialog/Dialog.js.map +1 -0
- package/lib/commonjs/dialog/Dialog.web.js +244 -0
- package/lib/commonjs/dialog/Dialog.web.js.map +1 -0
- package/lib/commonjs/dialog/context.js +35 -0
- package/lib/commonjs/dialog/context.js.map +1 -0
- package/lib/commonjs/dialog/index.js +56 -0
- package/lib/commonjs/dialog/index.js.map +1 -0
- package/lib/commonjs/dialog/types.js +6 -0
- package/lib/commonjs/dialog/types.js.map +1 -0
- package/lib/commonjs/divider/Divider.js +39 -0
- package/lib/commonjs/divider/Divider.js.map +1 -0
- package/lib/commonjs/divider/index.js +13 -0
- package/lib/commonjs/divider/index.js.map +1 -0
- package/lib/commonjs/divider/types.js +6 -0
- package/lib/commonjs/divider/types.js.map +1 -0
- package/lib/commonjs/error-boundary/ErrorBoundary.js +116 -0
- package/lib/commonjs/error-boundary/ErrorBoundary.js.map +1 -0
- package/lib/commonjs/error-boundary/index.js +13 -0
- package/lib/commonjs/error-boundary/index.js.map +1 -0
- package/lib/commonjs/error-boundary/types.js +6 -0
- package/lib/commonjs/error-boundary/types.js.map +1 -0
- package/lib/commonjs/grouped-buttons/GroupedButtons.js +86 -0
- package/lib/commonjs/grouped-buttons/GroupedButtons.js.map +1 -0
- package/lib/commonjs/grouped-buttons/index.js +19 -0
- package/lib/commonjs/grouped-buttons/index.js.map +1 -0
- package/lib/commonjs/grouped-buttons/types.js +6 -0
- package/lib/commonjs/grouped-buttons/types.js.map +1 -0
- package/lib/commonjs/index.js +136 -0
- package/lib/commonjs/index.js.map +1 -0
- package/lib/commonjs/loading/Loading.js +274 -0
- package/lib/commonjs/loading/Loading.js.map +1 -0
- package/lib/commonjs/loading/index.js +13 -0
- package/lib/commonjs/loading/index.js.map +1 -0
- package/lib/commonjs/loading/types.js +6 -0
- package/lib/commonjs/loading/types.js.map +1 -0
- package/lib/commonjs/package.json +1 -0
- package/lib/commonjs/portal/index.js +90 -0
- package/lib/commonjs/portal/index.js.map +1 -0
- package/lib/commonjs/prompt/Prompt.js +267 -0
- package/lib/commonjs/prompt/Prompt.js.map +1 -0
- package/lib/commonjs/prompt/index.js +61 -0
- package/lib/commonjs/prompt/index.js.map +1 -0
- package/lib/commonjs/prompt-input/Actions.js +45 -0
- package/lib/commonjs/prompt-input/Actions.js.map +1 -0
- package/lib/commonjs/prompt-input/Attachments.js +277 -0
- package/lib/commonjs/prompt-input/Attachments.js.map +1 -0
- package/lib/commonjs/prompt-input/PromptInput.js +226 -0
- package/lib/commonjs/prompt-input/PromptInput.js.map +1 -0
- package/lib/commonjs/prompt-input/SubmitButton.js +81 -0
- package/lib/commonjs/prompt-input/SubmitButton.js.map +1 -0
- package/lib/commonjs/prompt-input/Textarea.js +101 -0
- package/lib/commonjs/prompt-input/Textarea.js.map +1 -0
- package/lib/commonjs/prompt-input/Textarea.web.js +148 -0
- package/lib/commonjs/prompt-input/Textarea.web.js.map +1 -0
- package/lib/commonjs/prompt-input/context.js +35 -0
- package/lib/commonjs/prompt-input/context.js.map +1 -0
- package/lib/commonjs/prompt-input/index.js +54 -0
- package/lib/commonjs/prompt-input/index.js.map +1 -0
- package/lib/commonjs/prompt-input/types.js +6 -0
- package/lib/commonjs/prompt-input/types.js.map +1 -0
- package/lib/commonjs/radio-indicator/RadioIndicator.js +48 -0
- package/lib/commonjs/radio-indicator/RadioIndicator.js.map +1 -0
- package/lib/commonjs/radio-indicator/index.js +13 -0
- package/lib/commonjs/radio-indicator/index.js.map +1 -0
- package/lib/commonjs/radio-indicator/types.js +6 -0
- package/lib/commonjs/radio-indicator/types.js.map +1 -0
- package/lib/commonjs/theme/BloomThemeProvider.js +122 -0
- package/lib/commonjs/theme/BloomThemeProvider.js.map +1 -0
- package/lib/commonjs/theme/adaptive-colors.js +96 -0
- package/lib/commonjs/theme/adaptive-colors.js.map +1 -0
- package/lib/commonjs/theme/apply-dark-class.js +13 -0
- package/lib/commonjs/theme/apply-dark-class.js.map +1 -0
- package/lib/commonjs/theme/color-presets.js +486 -0
- package/lib/commonjs/theme/color-presets.js.map +1 -0
- package/lib/commonjs/theme/index.js +57 -0
- package/lib/commonjs/theme/index.js.map +1 -0
- package/lib/commonjs/theme/set-color-scheme-safe.js +23 -0
- package/lib/commonjs/theme/set-color-scheme-safe.js.map +1 -0
- package/lib/commonjs/theme/types.js +2 -0
- package/lib/commonjs/theme/types.js.map +1 -0
- package/lib/commonjs/theme/use-theme.js +29 -0
- package/lib/commonjs/theme/use-theme.js.map +1 -0
- package/lib/module/avatar/Avatar.js +210 -0
- package/lib/module/avatar/Avatar.js.map +1 -0
- package/lib/module/avatar/index.js +4 -0
- package/lib/module/avatar/index.js.map +1 -0
- package/lib/module/avatar/types.js +4 -0
- package/lib/module/avatar/types.js.map +1 -0
- package/lib/module/button/Button.js +164 -0
- package/lib/module/button/Button.js.map +1 -0
- package/lib/module/button/index.js +4 -0
- package/lib/module/button/index.js.map +1 -0
- package/lib/module/button/types.js +4 -0
- package/lib/module/button/types.js.map +1 -0
- package/lib/module/collapsible/Collapsible.js +53 -0
- package/lib/module/collapsible/Collapsible.js.map +1 -0
- package/lib/module/collapsible/index.js +4 -0
- package/lib/module/collapsible/index.js.map +1 -0
- package/lib/module/collapsible/types.js +4 -0
- package/lib/module/collapsible/types.js.map +1 -0
- package/lib/module/dialog/Dialog.js +165 -0
- package/lib/module/dialog/Dialog.js.map +1 -0
- package/lib/module/dialog/Dialog.web.js +222 -0
- package/lib/module/dialog/Dialog.web.js.map +1 -0
- package/lib/module/dialog/context.js +29 -0
- package/lib/module/dialog/context.js.map +1 -0
- package/lib/module/dialog/index.js +5 -0
- package/lib/module/dialog/index.js.map +1 -0
- package/lib/module/dialog/types.js +4 -0
- package/lib/module/dialog/types.js.map +1 -0
- package/lib/module/divider/Divider.js +34 -0
- package/lib/module/divider/Divider.js.map +1 -0
- package/lib/module/divider/index.js +4 -0
- package/lib/module/divider/index.js.map +1 -0
- package/lib/module/divider/types.js +4 -0
- package/lib/module/divider/types.js.map +1 -0
- package/lib/module/error-boundary/ErrorBoundary.js +110 -0
- package/lib/module/error-boundary/ErrorBoundary.js.map +1 -0
- package/lib/module/error-boundary/index.js +4 -0
- package/lib/module/error-boundary/index.js.map +1 -0
- package/lib/module/error-boundary/types.js +4 -0
- package/lib/module/error-boundary/types.js.map +1 -0
- package/lib/module/grouped-buttons/GroupedButtons.js +80 -0
- package/lib/module/grouped-buttons/GroupedButtons.js.map +1 -0
- package/lib/module/grouped-buttons/index.js +4 -0
- package/lib/module/grouped-buttons/index.js.map +1 -0
- package/lib/module/grouped-buttons/types.js +4 -0
- package/lib/module/grouped-buttons/types.js.map +1 -0
- package/lib/module/index.js +16 -0
- package/lib/module/index.js.map +1 -0
- package/lib/module/loading/Loading.js +269 -0
- package/lib/module/loading/Loading.js.map +1 -0
- package/lib/module/loading/index.js +4 -0
- package/lib/module/loading/index.js.map +1 -0
- package/lib/module/loading/types.js +4 -0
- package/lib/module/loading/types.js.map +1 -0
- package/lib/module/package.json +1 -0
- package/lib/module/portal/index.js +85 -0
- package/lib/module/portal/index.js.map +1 -0
- package/lib/module/prompt/Prompt.js +250 -0
- package/lib/module/prompt/Prompt.js.map +1 -0
- package/lib/module/prompt/index.js +4 -0
- package/lib/module/prompt/index.js.map +1 -0
- package/lib/module/prompt-input/Actions.js +40 -0
- package/lib/module/prompt-input/Actions.js.map +1 -0
- package/lib/module/prompt-input/Attachments.js +272 -0
- package/lib/module/prompt-input/Attachments.js.map +1 -0
- package/lib/module/prompt-input/PromptInput.js +221 -0
- package/lib/module/prompt-input/PromptInput.js.map +1 -0
- package/lib/module/prompt-input/SubmitButton.js +76 -0
- package/lib/module/prompt-input/SubmitButton.js.map +1 -0
- package/lib/module/prompt-input/Textarea.js +96 -0
- package/lib/module/prompt-input/Textarea.js.map +1 -0
- package/lib/module/prompt-input/Textarea.web.js +143 -0
- package/lib/module/prompt-input/Textarea.web.js.map +1 -0
- package/lib/module/prompt-input/context.js +28 -0
- package/lib/module/prompt-input/context.js.map +1 -0
- package/lib/module/prompt-input/index.js +9 -0
- package/lib/module/prompt-input/index.js.map +1 -0
- package/lib/module/prompt-input/types.js +4 -0
- package/lib/module/prompt-input/types.js.map +1 -0
- package/lib/module/radio-indicator/RadioIndicator.js +43 -0
- package/lib/module/radio-indicator/RadioIndicator.js.map +1 -0
- package/lib/module/radio-indicator/index.js +4 -0
- package/lib/module/radio-indicator/index.js.map +1 -0
- package/lib/module/radio-indicator/types.js +4 -0
- package/lib/module/radio-indicator/types.js.map +1 -0
- package/lib/module/theme/BloomThemeProvider.js +116 -0
- package/lib/module/theme/BloomThemeProvider.js.map +1 -0
- package/lib/module/theme/adaptive-colors.js +92 -0
- package/lib/module/theme/adaptive-colors.js.map +1 -0
- package/lib/module/theme/apply-dark-class.js +9 -0
- package/lib/module/theme/apply-dark-class.js.map +1 -0
- package/lib/module/theme/color-presets.js +481 -0
- package/lib/module/theme/color-presets.js.map +1 -0
- package/lib/module/theme/index.js +6 -0
- package/lib/module/theme/index.js.map +1 -0
- package/lib/module/theme/set-color-scheme-safe.js +19 -0
- package/lib/module/theme/set-color-scheme-safe.js.map +1 -0
- package/lib/module/theme/types.js +2 -0
- package/lib/module/theme/types.js.map +1 -0
- package/lib/module/theme/use-theme.js +23 -0
- package/lib/module/theme/use-theme.js.map +1 -0
- package/lib/typescript/commonjs/avatar/Avatar.d.ts +4 -0
- package/lib/typescript/commonjs/avatar/Avatar.d.ts.map +1 -0
- package/lib/typescript/commonjs/avatar/index.d.ts +3 -0
- package/lib/typescript/commonjs/avatar/index.d.ts.map +1 -0
- package/lib/typescript/commonjs/avatar/types.d.ts +31 -0
- package/lib/typescript/commonjs/avatar/types.d.ts.map +1 -0
- package/lib/typescript/commonjs/button/Button.d.ts +10 -0
- package/lib/typescript/commonjs/button/Button.d.ts.map +1 -0
- package/lib/typescript/commonjs/button/index.d.ts +3 -0
- package/lib/typescript/commonjs/button/index.d.ts.map +1 -0
- package/lib/typescript/commonjs/button/types.d.ts +25 -0
- package/lib/typescript/commonjs/button/types.d.ts.map +1 -0
- package/lib/typescript/commonjs/collapsible/Collapsible.d.ts +4 -0
- package/lib/typescript/commonjs/collapsible/Collapsible.d.ts.map +1 -0
- package/lib/typescript/commonjs/collapsible/index.d.ts +3 -0
- package/lib/typescript/commonjs/collapsible/index.d.ts.map +1 -0
- package/lib/typescript/commonjs/collapsible/types.d.ts +18 -0
- package/lib/typescript/commonjs/collapsible/types.d.ts.map +1 -0
- package/lib/typescript/commonjs/dialog/Dialog.d.ts +11 -0
- package/lib/typescript/commonjs/dialog/Dialog.d.ts.map +1 -0
- package/lib/typescript/commonjs/dialog/Dialog.web.d.ts +23 -0
- package/lib/typescript/commonjs/dialog/Dialog.web.d.ts.map +1 -0
- package/lib/typescript/commonjs/dialog/context.d.ts +5 -0
- package/lib/typescript/commonjs/dialog/context.d.ts.map +1 -0
- package/lib/typescript/commonjs/dialog/index.d.ts +4 -0
- package/lib/typescript/commonjs/dialog/index.d.ts.map +1 -0
- package/lib/typescript/commonjs/dialog/types.d.ts +30 -0
- package/lib/typescript/commonjs/dialog/types.d.ts.map +1 -0
- package/lib/typescript/commonjs/divider/Divider.d.ts +4 -0
- package/lib/typescript/commonjs/divider/Divider.d.ts.map +1 -0
- package/lib/typescript/commonjs/divider/index.d.ts +3 -0
- package/lib/typescript/commonjs/divider/index.d.ts.map +1 -0
- package/lib/typescript/commonjs/divider/types.d.ts +15 -0
- package/lib/typescript/commonjs/divider/types.d.ts.map +1 -0
- package/lib/typescript/commonjs/error-boundary/ErrorBoundary.d.ts +16 -0
- package/lib/typescript/commonjs/error-boundary/ErrorBoundary.d.ts.map +1 -0
- package/lib/typescript/commonjs/error-boundary/index.d.ts +3 -0
- package/lib/typescript/commonjs/error-boundary/index.d.ts.map +1 -0
- package/lib/typescript/commonjs/error-boundary/types.d.ts +16 -0
- package/lib/typescript/commonjs/error-boundary/types.d.ts.map +1 -0
- package/lib/typescript/commonjs/grouped-buttons/GroupedButtons.d.ts +8 -0
- package/lib/typescript/commonjs/grouped-buttons/GroupedButtons.d.ts.map +1 -0
- package/lib/typescript/commonjs/grouped-buttons/index.d.ts +3 -0
- package/lib/typescript/commonjs/grouped-buttons/index.d.ts.map +1 -0
- package/lib/typescript/commonjs/grouped-buttons/types.d.ts +15 -0
- package/lib/typescript/commonjs/grouped-buttons/types.d.ts.map +1 -0
- package/lib/typescript/commonjs/index.d.ts +15 -0
- package/lib/typescript/commonjs/index.d.ts.map +1 -0
- package/lib/typescript/commonjs/loading/Loading.d.ts +4 -0
- package/lib/typescript/commonjs/loading/Loading.d.ts.map +1 -0
- package/lib/typescript/commonjs/loading/index.d.ts +3 -0
- package/lib/typescript/commonjs/loading/index.d.ts.map +1 -0
- package/lib/typescript/commonjs/loading/types.d.ts +60 -0
- package/lib/typescript/commonjs/loading/types.d.ts.map +1 -0
- package/lib/typescript/commonjs/package.json +1 -0
- package/lib/typescript/commonjs/portal/index.d.ts +5 -0
- package/lib/typescript/commonjs/portal/index.d.ts.map +1 -0
- package/lib/typescript/commonjs/prompt/Prompt.d.ts +42 -0
- package/lib/typescript/commonjs/prompt/Prompt.d.ts.map +1 -0
- package/lib/typescript/commonjs/prompt/index.d.ts +3 -0
- package/lib/typescript/commonjs/prompt/index.d.ts.map +1 -0
- package/lib/typescript/commonjs/prompt-input/Actions.d.ts +3 -0
- package/lib/typescript/commonjs/prompt-input/Actions.d.ts.map +1 -0
- package/lib/typescript/commonjs/prompt-input/Attachments.d.ts +3 -0
- package/lib/typescript/commonjs/prompt-input/Attachments.d.ts.map +1 -0
- package/lib/typescript/commonjs/prompt-input/PromptInput.d.ts +3 -0
- package/lib/typescript/commonjs/prompt-input/PromptInput.d.ts.map +1 -0
- package/lib/typescript/commonjs/prompt-input/SubmitButton.d.ts +3 -0
- package/lib/typescript/commonjs/prompt-input/SubmitButton.d.ts.map +1 -0
- package/lib/typescript/commonjs/prompt-input/Textarea.d.ts +3 -0
- package/lib/typescript/commonjs/prompt-input/Textarea.d.ts.map +1 -0
- package/lib/typescript/commonjs/prompt-input/Textarea.web.d.ts +3 -0
- package/lib/typescript/commonjs/prompt-input/Textarea.web.d.ts.map +1 -0
- package/lib/typescript/commonjs/prompt-input/context.d.ts +34 -0
- package/lib/typescript/commonjs/prompt-input/context.d.ts.map +1 -0
- package/lib/typescript/commonjs/prompt-input/index.d.ts +8 -0
- package/lib/typescript/commonjs/prompt-input/index.d.ts.map +1 -0
- package/lib/typescript/commonjs/prompt-input/types.d.ts +88 -0
- package/lib/typescript/commonjs/prompt-input/types.d.ts.map +1 -0
- package/lib/typescript/commonjs/radio-indicator/RadioIndicator.d.ts +4 -0
- package/lib/typescript/commonjs/radio-indicator/RadioIndicator.d.ts.map +1 -0
- package/lib/typescript/commonjs/radio-indicator/index.d.ts +3 -0
- package/lib/typescript/commonjs/radio-indicator/index.d.ts.map +1 -0
- package/lib/typescript/commonjs/radio-indicator/types.d.ts +15 -0
- package/lib/typescript/commonjs/radio-indicator/types.d.ts.map +1 -0
- package/lib/typescript/commonjs/theme/BloomThemeProvider.d.ts +20 -0
- package/lib/typescript/commonjs/theme/BloomThemeProvider.d.ts.map +1 -0
- package/lib/typescript/commonjs/theme/adaptive-colors.d.ts +3 -0
- package/lib/typescript/commonjs/theme/adaptive-colors.d.ts.map +1 -0
- package/lib/typescript/commonjs/theme/apply-dark-class.d.ts +2 -0
- package/lib/typescript/commonjs/theme/apply-dark-class.d.ts.map +1 -0
- package/lib/typescript/commonjs/theme/color-presets.d.ts +12 -0
- package/lib/typescript/commonjs/theme/color-presets.d.ts.map +1 -0
- package/lib/typescript/commonjs/theme/index.d.ts +7 -0
- package/lib/typescript/commonjs/theme/index.d.ts.map +1 -0
- package/lib/typescript/commonjs/theme/set-color-scheme-safe.d.ts +9 -0
- package/lib/typescript/commonjs/theme/set-color-scheme-safe.d.ts.map +1 -0
- package/lib/typescript/commonjs/theme/types.d.ts +39 -0
- package/lib/typescript/commonjs/theme/types.d.ts.map +1 -0
- package/lib/typescript/commonjs/theme/use-theme.d.ts +5 -0
- package/lib/typescript/commonjs/theme/use-theme.d.ts.map +1 -0
- package/lib/typescript/module/avatar/Avatar.d.ts +4 -0
- package/lib/typescript/module/avatar/Avatar.d.ts.map +1 -0
- package/lib/typescript/module/avatar/index.d.ts +3 -0
- package/lib/typescript/module/avatar/index.d.ts.map +1 -0
- package/lib/typescript/module/avatar/types.d.ts +31 -0
- package/lib/typescript/module/avatar/types.d.ts.map +1 -0
- package/lib/typescript/module/button/Button.d.ts +10 -0
- package/lib/typescript/module/button/Button.d.ts.map +1 -0
- package/lib/typescript/module/button/index.d.ts +3 -0
- package/lib/typescript/module/button/index.d.ts.map +1 -0
- package/lib/typescript/module/button/types.d.ts +25 -0
- package/lib/typescript/module/button/types.d.ts.map +1 -0
- package/lib/typescript/module/collapsible/Collapsible.d.ts +4 -0
- package/lib/typescript/module/collapsible/Collapsible.d.ts.map +1 -0
- package/lib/typescript/module/collapsible/index.d.ts +3 -0
- package/lib/typescript/module/collapsible/index.d.ts.map +1 -0
- package/lib/typescript/module/collapsible/types.d.ts +18 -0
- package/lib/typescript/module/collapsible/types.d.ts.map +1 -0
- package/lib/typescript/module/dialog/Dialog.d.ts +11 -0
- package/lib/typescript/module/dialog/Dialog.d.ts.map +1 -0
- package/lib/typescript/module/dialog/Dialog.web.d.ts +23 -0
- package/lib/typescript/module/dialog/Dialog.web.d.ts.map +1 -0
- package/lib/typescript/module/dialog/context.d.ts +5 -0
- package/lib/typescript/module/dialog/context.d.ts.map +1 -0
- package/lib/typescript/module/dialog/index.d.ts +4 -0
- package/lib/typescript/module/dialog/index.d.ts.map +1 -0
- package/lib/typescript/module/dialog/types.d.ts +30 -0
- package/lib/typescript/module/dialog/types.d.ts.map +1 -0
- package/lib/typescript/module/divider/Divider.d.ts +4 -0
- package/lib/typescript/module/divider/Divider.d.ts.map +1 -0
- package/lib/typescript/module/divider/index.d.ts +3 -0
- package/lib/typescript/module/divider/index.d.ts.map +1 -0
- package/lib/typescript/module/divider/types.d.ts +15 -0
- package/lib/typescript/module/divider/types.d.ts.map +1 -0
- package/lib/typescript/module/error-boundary/ErrorBoundary.d.ts +16 -0
- package/lib/typescript/module/error-boundary/ErrorBoundary.d.ts.map +1 -0
- package/lib/typescript/module/error-boundary/index.d.ts +3 -0
- package/lib/typescript/module/error-boundary/index.d.ts.map +1 -0
- package/lib/typescript/module/error-boundary/types.d.ts +16 -0
- package/lib/typescript/module/error-boundary/types.d.ts.map +1 -0
- package/lib/typescript/module/grouped-buttons/GroupedButtons.d.ts +8 -0
- package/lib/typescript/module/grouped-buttons/GroupedButtons.d.ts.map +1 -0
- package/lib/typescript/module/grouped-buttons/index.d.ts +3 -0
- package/lib/typescript/module/grouped-buttons/index.d.ts.map +1 -0
- package/lib/typescript/module/grouped-buttons/types.d.ts +15 -0
- package/lib/typescript/module/grouped-buttons/types.d.ts.map +1 -0
- package/lib/typescript/module/index.d.ts +15 -0
- package/lib/typescript/module/index.d.ts.map +1 -0
- package/lib/typescript/module/loading/Loading.d.ts +4 -0
- package/lib/typescript/module/loading/Loading.d.ts.map +1 -0
- package/lib/typescript/module/loading/index.d.ts +3 -0
- package/lib/typescript/module/loading/index.d.ts.map +1 -0
- package/lib/typescript/module/loading/types.d.ts +60 -0
- package/lib/typescript/module/loading/types.d.ts.map +1 -0
- package/lib/typescript/module/package.json +1 -0
- package/lib/typescript/module/portal/index.d.ts +5 -0
- package/lib/typescript/module/portal/index.d.ts.map +1 -0
- package/lib/typescript/module/prompt/Prompt.d.ts +42 -0
- package/lib/typescript/module/prompt/Prompt.d.ts.map +1 -0
- package/lib/typescript/module/prompt/index.d.ts +3 -0
- package/lib/typescript/module/prompt/index.d.ts.map +1 -0
- package/lib/typescript/module/prompt-input/Actions.d.ts +3 -0
- package/lib/typescript/module/prompt-input/Actions.d.ts.map +1 -0
- package/lib/typescript/module/prompt-input/Attachments.d.ts +3 -0
- package/lib/typescript/module/prompt-input/Attachments.d.ts.map +1 -0
- package/lib/typescript/module/prompt-input/PromptInput.d.ts +3 -0
- package/lib/typescript/module/prompt-input/PromptInput.d.ts.map +1 -0
- package/lib/typescript/module/prompt-input/SubmitButton.d.ts +3 -0
- package/lib/typescript/module/prompt-input/SubmitButton.d.ts.map +1 -0
- package/lib/typescript/module/prompt-input/Textarea.d.ts +3 -0
- package/lib/typescript/module/prompt-input/Textarea.d.ts.map +1 -0
- package/lib/typescript/module/prompt-input/Textarea.web.d.ts +3 -0
- package/lib/typescript/module/prompt-input/Textarea.web.d.ts.map +1 -0
- package/lib/typescript/module/prompt-input/context.d.ts +34 -0
- package/lib/typescript/module/prompt-input/context.d.ts.map +1 -0
- package/lib/typescript/module/prompt-input/index.d.ts +8 -0
- package/lib/typescript/module/prompt-input/index.d.ts.map +1 -0
- package/lib/typescript/module/prompt-input/types.d.ts +88 -0
- package/lib/typescript/module/prompt-input/types.d.ts.map +1 -0
- package/lib/typescript/module/radio-indicator/RadioIndicator.d.ts +4 -0
- package/lib/typescript/module/radio-indicator/RadioIndicator.d.ts.map +1 -0
- package/lib/typescript/module/radio-indicator/index.d.ts +3 -0
- package/lib/typescript/module/radio-indicator/index.d.ts.map +1 -0
- package/lib/typescript/module/radio-indicator/types.d.ts +15 -0
- package/lib/typescript/module/radio-indicator/types.d.ts.map +1 -0
- package/lib/typescript/module/theme/BloomThemeProvider.d.ts +20 -0
- package/lib/typescript/module/theme/BloomThemeProvider.d.ts.map +1 -0
- package/lib/typescript/module/theme/adaptive-colors.d.ts +3 -0
- package/lib/typescript/module/theme/adaptive-colors.d.ts.map +1 -0
- package/lib/typescript/module/theme/apply-dark-class.d.ts +2 -0
- package/lib/typescript/module/theme/apply-dark-class.d.ts.map +1 -0
- package/lib/typescript/module/theme/color-presets.d.ts +12 -0
- package/lib/typescript/module/theme/color-presets.d.ts.map +1 -0
- package/lib/typescript/module/theme/index.d.ts +7 -0
- package/lib/typescript/module/theme/index.d.ts.map +1 -0
- package/lib/typescript/module/theme/set-color-scheme-safe.d.ts +9 -0
- package/lib/typescript/module/theme/set-color-scheme-safe.d.ts.map +1 -0
- package/lib/typescript/module/theme/types.d.ts +39 -0
- package/lib/typescript/module/theme/types.d.ts.map +1 -0
- package/lib/typescript/module/theme/use-theme.d.ts +5 -0
- package/lib/typescript/module/theme/use-theme.d.ts.map +1 -0
- package/package.json +260 -0
- package/src/avatar/Avatar.tsx +217 -0
- package/src/avatar/index.ts +2 -0
- package/src/avatar/types.ts +32 -0
- package/src/button/Button.tsx +172 -0
- package/src/button/index.ts +10 -0
- package/src/button/types.ts +25 -0
- package/src/collapsible/Collapsible.tsx +62 -0
- package/src/collapsible/index.ts +2 -0
- package/src/collapsible/types.ts +18 -0
- package/src/dialog/Dialog.tsx +160 -0
- package/src/dialog/Dialog.web.tsx +238 -0
- package/src/dialog/context.ts +34 -0
- package/src/dialog/index.ts +3 -0
- package/src/dialog/types.ts +34 -0
- package/src/divider/Divider.tsx +42 -0
- package/src/divider/index.ts +2 -0
- package/src/divider/types.ts +15 -0
- package/src/error-boundary/ErrorBoundary.tsx +112 -0
- package/src/error-boundary/index.ts +2 -0
- package/src/error-boundary/types.ts +16 -0
- package/src/grouped-buttons/GroupedButtons.tsx +94 -0
- package/src/grouped-buttons/index.ts +2 -0
- package/src/grouped-buttons/types.ts +16 -0
- package/src/index.ts +14 -0
- package/src/loading/Loading.tsx +258 -0
- package/src/loading/index.ts +10 -0
- package/src/loading/types.ts +69 -0
- package/src/portal/index.tsx +100 -0
- package/src/prompt/Prompt.tsx +248 -0
- package/src/prompt/index.ts +13 -0
- package/src/prompt-input/Actions.tsx +45 -0
- package/src/prompt-input/Attachments.tsx +264 -0
- package/src/prompt-input/PromptInput.tsx +263 -0
- package/src/prompt-input/SubmitButton.tsx +74 -0
- package/src/prompt-input/Textarea.tsx +102 -0
- package/src/prompt-input/Textarea.web.tsx +154 -0
- package/src/prompt-input/context.ts +59 -0
- package/src/prompt-input/index.ts +18 -0
- package/src/prompt-input/types.ts +92 -0
- package/src/radio-indicator/RadioIndicator.tsx +52 -0
- package/src/radio-indicator/index.ts +2 -0
- package/src/radio-indicator/types.ts +15 -0
- package/src/theme/BloomThemeProvider.tsx +160 -0
- package/src/theme/adaptive-colors.ts +90 -0
- package/src/theme/apply-dark-class.ts +7 -0
- package/src/theme/color-presets.ts +499 -0
- package/src/theme/index.ts +6 -0
- package/src/theme/set-color-scheme-safe.ts +19 -0
- package/src/theme/types.ts +48 -0
- package/src/theme/use-theme.ts +24 -0
|
@@ -0,0 +1,277 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.PromptInputAttachments = PromptInputAttachments;
|
|
7
|
+
var _react = _interopRequireDefault(require("react"));
|
|
8
|
+
var _reactNative = require("react-native");
|
|
9
|
+
var _useTheme = require("../theme/use-theme.js");
|
|
10
|
+
var _context = require("./context.js");
|
|
11
|
+
var _jsxRuntime = require("react/jsx-runtime");
|
|
12
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
13
|
+
function formatFileSize(bytes) {
|
|
14
|
+
if (bytes < 1024) return `${bytes} B`;
|
|
15
|
+
if (bytes < 1024 * 1024) return `${(bytes / 1024).toFixed(1)} KB`;
|
|
16
|
+
return `${(bytes / (1024 * 1024)).toFixed(1)} MB`;
|
|
17
|
+
}
|
|
18
|
+
function truncateFilename(name, maxLength = 20) {
|
|
19
|
+
if (name.length <= maxLength) return name;
|
|
20
|
+
const lastDot = name.lastIndexOf('.');
|
|
21
|
+
if (lastDot < 0) return name.slice(0, maxLength - 3) + '...';
|
|
22
|
+
const ext = name.slice(lastDot);
|
|
23
|
+
const base = name.slice(0, lastDot);
|
|
24
|
+
const available = maxLength - ext.length - 3;
|
|
25
|
+
if (available <= 0) return name.slice(0, maxLength - 3) + '...';
|
|
26
|
+
return base.slice(0, available) + '...' + ext;
|
|
27
|
+
}
|
|
28
|
+
function getDocumentIconInfo(mimeType, name) {
|
|
29
|
+
const ext = name.split('.').pop()?.toLowerCase() ?? '';
|
|
30
|
+
if (mimeType === 'application/pdf' || ext === 'pdf') return {
|
|
31
|
+
label: 'PDF',
|
|
32
|
+
color: '#EF4444',
|
|
33
|
+
bgColor: '#EF444418'
|
|
34
|
+
};
|
|
35
|
+
if (mimeType.includes('word') || ['doc', 'docx'].includes(ext)) return {
|
|
36
|
+
label: 'DOC',
|
|
37
|
+
color: '#3B82F6',
|
|
38
|
+
bgColor: '#3B82F618'
|
|
39
|
+
};
|
|
40
|
+
if (mimeType.includes('spreadsheet') || mimeType.includes('excel') || ['xls', 'xlsx', 'csv'].includes(ext)) return {
|
|
41
|
+
label: 'XLS',
|
|
42
|
+
color: '#22C55E',
|
|
43
|
+
bgColor: '#22C55E18'
|
|
44
|
+
};
|
|
45
|
+
if (['js', 'ts', 'tsx', 'jsx', 'py', 'rb', 'go', 'rs', 'java', 'c', 'cpp', 'h', 'json', 'xml', 'yaml', 'yml', 'html', 'css', 'scss', 'sh', 'sql'].includes(ext)) return {
|
|
46
|
+
label: '</>',
|
|
47
|
+
color: '#8B5CF6',
|
|
48
|
+
bgColor: '#8B5CF618'
|
|
49
|
+
};
|
|
50
|
+
if (mimeType.includes('zip') || mimeType.includes('archive') || ['zip', 'rar', 'tar', 'gz', '7z'].includes(ext)) return {
|
|
51
|
+
label: 'ZIP',
|
|
52
|
+
color: '#EAB308',
|
|
53
|
+
bgColor: '#EAB30818'
|
|
54
|
+
};
|
|
55
|
+
if (mimeType.startsWith('audio/') || ['mp3', 'wav', 'ogg', 'flac', 'aac'].includes(ext)) return {
|
|
56
|
+
label: '♫',
|
|
57
|
+
color: '#EC4899',
|
|
58
|
+
bgColor: '#EC489918'
|
|
59
|
+
};
|
|
60
|
+
if (mimeType === 'text/plain' || ['txt', 'md', 'rtf'].includes(ext)) return {
|
|
61
|
+
label: 'TXT',
|
|
62
|
+
color: '#6B7280',
|
|
63
|
+
bgColor: '#6B728018'
|
|
64
|
+
};
|
|
65
|
+
return {
|
|
66
|
+
label: 'FILE',
|
|
67
|
+
color: '#9CA3AF',
|
|
68
|
+
bgColor: '#9CA3AF18'
|
|
69
|
+
};
|
|
70
|
+
}
|
|
71
|
+
function RemoveButton({
|
|
72
|
+
onPress,
|
|
73
|
+
size,
|
|
74
|
+
backgroundColor,
|
|
75
|
+
removeIcon,
|
|
76
|
+
label
|
|
77
|
+
}) {
|
|
78
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Pressable, {
|
|
79
|
+
onPress: onPress,
|
|
80
|
+
accessibilityRole: "button",
|
|
81
|
+
accessibilityLabel: `Remove ${label}`,
|
|
82
|
+
style: {
|
|
83
|
+
position: 'absolute',
|
|
84
|
+
top: 6,
|
|
85
|
+
right: 6,
|
|
86
|
+
width: size,
|
|
87
|
+
height: size,
|
|
88
|
+
borderRadius: size / 2,
|
|
89
|
+
backgroundColor,
|
|
90
|
+
alignItems: 'center',
|
|
91
|
+
justifyContent: 'center'
|
|
92
|
+
},
|
|
93
|
+
children: removeIcon ?? /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
|
|
94
|
+
style: {
|
|
95
|
+
color: '#FFFFFF',
|
|
96
|
+
fontSize: size * 0.6,
|
|
97
|
+
fontWeight: '700',
|
|
98
|
+
lineHeight: size * 0.7
|
|
99
|
+
},
|
|
100
|
+
children: "\xD7"
|
|
101
|
+
})
|
|
102
|
+
});
|
|
103
|
+
}
|
|
104
|
+
function ImageAttachmentItem({
|
|
105
|
+
attachment,
|
|
106
|
+
onRemove,
|
|
107
|
+
removeIcon
|
|
108
|
+
}) {
|
|
109
|
+
const theme = (0, _useTheme.useTheme)();
|
|
110
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
|
|
111
|
+
style: {
|
|
112
|
+
width: 120,
|
|
113
|
+
height: 120,
|
|
114
|
+
borderRadius: 16,
|
|
115
|
+
overflow: 'hidden',
|
|
116
|
+
backgroundColor: theme.colors.backgroundSecondary,
|
|
117
|
+
borderWidth: 1,
|
|
118
|
+
borderColor: theme.colors.border
|
|
119
|
+
},
|
|
120
|
+
children: [!attachment.isLoading && attachment.uri ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Image, {
|
|
121
|
+
source: {
|
|
122
|
+
uri: attachment.uri
|
|
123
|
+
},
|
|
124
|
+
style: {
|
|
125
|
+
width: '100%',
|
|
126
|
+
height: '100%'
|
|
127
|
+
},
|
|
128
|
+
resizeMode: "cover"
|
|
129
|
+
}) : /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
|
|
130
|
+
style: {
|
|
131
|
+
flex: 1,
|
|
132
|
+
alignItems: 'center',
|
|
133
|
+
justifyContent: 'center'
|
|
134
|
+
},
|
|
135
|
+
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.ActivityIndicator, {
|
|
136
|
+
size: "small"
|
|
137
|
+
})
|
|
138
|
+
}), attachment.name && !attachment.isLoading && /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
|
|
139
|
+
style: {
|
|
140
|
+
position: 'absolute',
|
|
141
|
+
bottom: 0,
|
|
142
|
+
left: 0,
|
|
143
|
+
right: 0,
|
|
144
|
+
paddingHorizontal: 8,
|
|
145
|
+
paddingVertical: 4,
|
|
146
|
+
backgroundColor: 'rgba(0,0,0,0.5)'
|
|
147
|
+
},
|
|
148
|
+
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
|
|
149
|
+
style: {
|
|
150
|
+
fontSize: 11,
|
|
151
|
+
color: '#FFFFFF'
|
|
152
|
+
},
|
|
153
|
+
numberOfLines: 1,
|
|
154
|
+
children: truncateFilename(attachment.name)
|
|
155
|
+
})
|
|
156
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(RemoveButton, {
|
|
157
|
+
onPress: onRemove,
|
|
158
|
+
size: 24,
|
|
159
|
+
backgroundColor: "rgba(0,0,0,0.6)",
|
|
160
|
+
removeIcon: removeIcon,
|
|
161
|
+
label: attachment.name || 'image'
|
|
162
|
+
})]
|
|
163
|
+
});
|
|
164
|
+
}
|
|
165
|
+
function DocumentAttachmentItem({
|
|
166
|
+
attachment,
|
|
167
|
+
onRemove,
|
|
168
|
+
removeIcon,
|
|
169
|
+
renderDocumentIcon
|
|
170
|
+
}) {
|
|
171
|
+
const theme = (0, _useTheme.useTheme)();
|
|
172
|
+
const iconInfo = getDocumentIconInfo(attachment.mimeType, attachment.name);
|
|
173
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
|
|
174
|
+
style: {
|
|
175
|
+
width: 180,
|
|
176
|
+
height: 80,
|
|
177
|
+
borderRadius: 16,
|
|
178
|
+
borderWidth: 1,
|
|
179
|
+
borderColor: theme.colors.border,
|
|
180
|
+
overflow: 'hidden',
|
|
181
|
+
backgroundColor: theme.colors.backgroundSecondary
|
|
182
|
+
},
|
|
183
|
+
children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
|
|
184
|
+
style: {
|
|
185
|
+
flex: 1,
|
|
186
|
+
flexDirection: 'row',
|
|
187
|
+
alignItems: 'center',
|
|
188
|
+
paddingHorizontal: 12,
|
|
189
|
+
gap: 12
|
|
190
|
+
},
|
|
191
|
+
children: [renderDocumentIcon ? renderDocumentIcon(attachment.mimeType, attachment.name) : /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
|
|
192
|
+
style: {
|
|
193
|
+
width: 40,
|
|
194
|
+
height: 40,
|
|
195
|
+
borderRadius: 12,
|
|
196
|
+
alignItems: 'center',
|
|
197
|
+
justifyContent: 'center',
|
|
198
|
+
backgroundColor: iconInfo.bgColor
|
|
199
|
+
},
|
|
200
|
+
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
|
|
201
|
+
style: {
|
|
202
|
+
fontSize: 12,
|
|
203
|
+
fontWeight: '700',
|
|
204
|
+
color: iconInfo.color
|
|
205
|
+
},
|
|
206
|
+
children: iconInfo.label
|
|
207
|
+
})
|
|
208
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
|
|
209
|
+
style: {
|
|
210
|
+
flex: 1,
|
|
211
|
+
paddingRight: 16
|
|
212
|
+
},
|
|
213
|
+
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
|
|
214
|
+
style: {
|
|
215
|
+
fontSize: 12,
|
|
216
|
+
fontWeight: '500',
|
|
217
|
+
color: theme.colors.text
|
|
218
|
+
},
|
|
219
|
+
numberOfLines: 1,
|
|
220
|
+
children: truncateFilename(attachment.name)
|
|
221
|
+
}), attachment.size > 0 && /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
|
|
222
|
+
style: {
|
|
223
|
+
fontSize: 11,
|
|
224
|
+
color: theme.colors.textSecondary,
|
|
225
|
+
marginTop: 2
|
|
226
|
+
},
|
|
227
|
+
children: formatFileSize(attachment.size)
|
|
228
|
+
})]
|
|
229
|
+
})]
|
|
230
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(RemoveButton, {
|
|
231
|
+
onPress: onRemove,
|
|
232
|
+
size: 20,
|
|
233
|
+
backgroundColor: theme.colors.backgroundTertiary,
|
|
234
|
+
removeIcon: removeIcon,
|
|
235
|
+
label: attachment.name || 'document'
|
|
236
|
+
})]
|
|
237
|
+
});
|
|
238
|
+
}
|
|
239
|
+
function PromptInputAttachments({
|
|
240
|
+
removeIcon,
|
|
241
|
+
renderDocumentIcon,
|
|
242
|
+
style,
|
|
243
|
+
testID
|
|
244
|
+
}) {
|
|
245
|
+
const {
|
|
246
|
+
attachments,
|
|
247
|
+
removeAttachment
|
|
248
|
+
} = (0, _context.usePromptInput)();
|
|
249
|
+
if (attachments.length === 0) return null;
|
|
250
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.ScrollView, {
|
|
251
|
+
horizontal: true,
|
|
252
|
+
showsHorizontalScrollIndicator: false,
|
|
253
|
+
style: [{
|
|
254
|
+
flexGrow: 0,
|
|
255
|
+
marginBottom: 8,
|
|
256
|
+
paddingTop: 8
|
|
257
|
+
}, style],
|
|
258
|
+
contentContainerStyle: {
|
|
259
|
+
gap: 10,
|
|
260
|
+
paddingHorizontal: 12
|
|
261
|
+
},
|
|
262
|
+
testID: testID,
|
|
263
|
+
children: attachments.map(attachment => /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
|
|
264
|
+
children: attachment.type === 'image' ? /*#__PURE__*/(0, _jsxRuntime.jsx)(ImageAttachmentItem, {
|
|
265
|
+
attachment: attachment,
|
|
266
|
+
onRemove: () => removeAttachment(attachment.id),
|
|
267
|
+
removeIcon: removeIcon
|
|
268
|
+
}) : /*#__PURE__*/(0, _jsxRuntime.jsx)(DocumentAttachmentItem, {
|
|
269
|
+
attachment: attachment,
|
|
270
|
+
onRemove: () => removeAttachment(attachment.id),
|
|
271
|
+
removeIcon: removeIcon,
|
|
272
|
+
renderDocumentIcon: renderDocumentIcon
|
|
273
|
+
})
|
|
274
|
+
}, attachment.id))
|
|
275
|
+
});
|
|
276
|
+
}
|
|
277
|
+
//# sourceMappingURL=Attachments.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireDefault","require","_reactNative","_useTheme","_context","_jsxRuntime","e","__esModule","default","formatFileSize","bytes","toFixed","truncateFilename","name","maxLength","length","lastDot","lastIndexOf","slice","ext","base","available","getDocumentIconInfo","mimeType","split","pop","toLowerCase","label","color","bgColor","includes","startsWith","RemoveButton","onPress","size","backgroundColor","removeIcon","jsx","Pressable","accessibilityRole","accessibilityLabel","style","position","top","right","width","height","borderRadius","alignItems","justifyContent","children","Text","fontSize","fontWeight","lineHeight","ImageAttachmentItem","attachment","onRemove","theme","useTheme","jsxs","View","overflow","colors","backgroundSecondary","borderWidth","borderColor","border","isLoading","uri","Image","source","resizeMode","flex","ActivityIndicator","bottom","left","paddingHorizontal","paddingVertical","numberOfLines","DocumentAttachmentItem","renderDocumentIcon","iconInfo","flexDirection","gap","paddingRight","text","textSecondary","marginTop","backgroundTertiary","PromptInputAttachments","testID","attachments","removeAttachment","usePromptInput","ScrollView","horizontal","showsHorizontalScrollIndicator","flexGrow","marginBottom","paddingTop","contentContainerStyle","map","type","id"],"sourceRoot":"../../../src","sources":["prompt-input/Attachments.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,226 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.PromptInput = PromptInput;
|
|
7
|
+
var _react = _interopRequireWildcard(require("react"));
|
|
8
|
+
var _reactNative = require("react-native");
|
|
9
|
+
var _useTheme = require("../theme/use-theme.js");
|
|
10
|
+
var _index = require("../portal/index.js");
|
|
11
|
+
var _context = require("./context.js");
|
|
12
|
+
var _Textarea = require("./Textarea");
|
|
13
|
+
var _Actions = require("./Actions.js");
|
|
14
|
+
var _Attachments = require("./Attachments.js");
|
|
15
|
+
var _SubmitButton = require("./SubmitButton.js");
|
|
16
|
+
var _jsxRuntime = require("react/jsx-runtime");
|
|
17
|
+
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); }
|
|
18
|
+
function PromptInput({
|
|
19
|
+
isLoading = false,
|
|
20
|
+
maxHeight = 240,
|
|
21
|
+
value,
|
|
22
|
+
onValueChange,
|
|
23
|
+
onSubmit,
|
|
24
|
+
children,
|
|
25
|
+
style,
|
|
26
|
+
disabled = false,
|
|
27
|
+
onImagePaste,
|
|
28
|
+
placeholder,
|
|
29
|
+
actionsLeft,
|
|
30
|
+
onStop,
|
|
31
|
+
emptyAction,
|
|
32
|
+
attachments: controlledAttachments,
|
|
33
|
+
onAddAttachment,
|
|
34
|
+
onRemoveAttachment,
|
|
35
|
+
onUpdateAttachment,
|
|
36
|
+
disableKeyboardAvoidance = false,
|
|
37
|
+
expandIcon,
|
|
38
|
+
collapseIcon,
|
|
39
|
+
testID
|
|
40
|
+
}) {
|
|
41
|
+
const [internalValue, setInternalValue] = (0, _react.useState)(value ?? '');
|
|
42
|
+
const [currentHeight, setCurrentHeight] = (0, _react.useState)(44);
|
|
43
|
+
const [showFullscreen, setShowFullscreen] = (0, _react.useState)(false);
|
|
44
|
+
const [handleCompletionKey, setHandleCompletionKey] = (0, _react.useState)(null);
|
|
45
|
+
const textareaRef = (0, _react.useRef)(null);
|
|
46
|
+
const theme = (0, _useTheme.useTheme)();
|
|
47
|
+
|
|
48
|
+
// Internal attachment state (used when no controlled props)
|
|
49
|
+
const [internalAttachments, setInternalAttachments] = (0, _react.useState)([]);
|
|
50
|
+
const attachments = controlledAttachments ?? internalAttachments;
|
|
51
|
+
const addAttachment = (0, _react.useCallback)(a => {
|
|
52
|
+
if (onAddAttachment) {
|
|
53
|
+
onAddAttachment(a);
|
|
54
|
+
} else {
|
|
55
|
+
setInternalAttachments(prev => [...prev, a]);
|
|
56
|
+
}
|
|
57
|
+
}, [onAddAttachment]);
|
|
58
|
+
const removeAttachment = (0, _react.useCallback)(id => {
|
|
59
|
+
if (onRemoveAttachment) {
|
|
60
|
+
onRemoveAttachment(id);
|
|
61
|
+
} else {
|
|
62
|
+
setInternalAttachments(prev => prev.filter(a => a.id !== id));
|
|
63
|
+
}
|
|
64
|
+
}, [onRemoveAttachment]);
|
|
65
|
+
const updateAttachment = (0, _react.useCallback)((id, updates) => {
|
|
66
|
+
if (onUpdateAttachment) {
|
|
67
|
+
onUpdateAttachment(id, updates);
|
|
68
|
+
} else {
|
|
69
|
+
setInternalAttachments(prev => prev.map(a => a.id === id ? {
|
|
70
|
+
...a,
|
|
71
|
+
...updates
|
|
72
|
+
} : a));
|
|
73
|
+
}
|
|
74
|
+
}, [onUpdateAttachment]);
|
|
75
|
+
const handleChange = (0, _react.useCallback)(newValue => {
|
|
76
|
+
setInternalValue(newValue);
|
|
77
|
+
onValueChange?.(newValue);
|
|
78
|
+
}, [onValueChange]);
|
|
79
|
+
const handleSubmit = (0, _react.useCallback)(() => {
|
|
80
|
+
onSubmit?.();
|
|
81
|
+
if (showFullscreen) setShowFullscreen(false);
|
|
82
|
+
}, [onSubmit, showFullscreen]);
|
|
83
|
+
(0, _react.useEffect)(() => {
|
|
84
|
+
if (!showFullscreen) setCurrentHeight(44);
|
|
85
|
+
}, [showFullscreen]);
|
|
86
|
+
const showExpandIcon = currentHeight > 100;
|
|
87
|
+
const isSimpleMode = !children;
|
|
88
|
+
const currentValue = value ?? internalValue;
|
|
89
|
+
const currentSetValue = onValueChange ?? handleChange;
|
|
90
|
+
const contextValue = (0, _react.useMemo)(() => ({
|
|
91
|
+
isLoading,
|
|
92
|
+
value: currentValue,
|
|
93
|
+
setValue: currentSetValue,
|
|
94
|
+
maxHeight,
|
|
95
|
+
onSubmit: handleSubmit,
|
|
96
|
+
disabled,
|
|
97
|
+
textareaRef,
|
|
98
|
+
currentHeight,
|
|
99
|
+
setCurrentHeight,
|
|
100
|
+
isFullscreen: showFullscreen,
|
|
101
|
+
onImagePaste,
|
|
102
|
+
attachments,
|
|
103
|
+
addAttachment,
|
|
104
|
+
removeAttachment,
|
|
105
|
+
updateAttachment,
|
|
106
|
+
handleCompletionKey,
|
|
107
|
+
setHandleCompletionKey
|
|
108
|
+
}), [isLoading, currentValue, currentSetValue, maxHeight, handleSubmit, disabled, currentHeight, showFullscreen, onImagePaste, attachments, addAttachment, removeAttachment, updateAttachment, handleCompletionKey]);
|
|
109
|
+
const content = isSimpleMode ? /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {
|
|
110
|
+
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Attachments.PromptInputAttachments, {}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Textarea.PromptInputTextarea, {
|
|
111
|
+
placeholder: placeholder
|
|
112
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Actions.PromptInputActions, {
|
|
113
|
+
style: {
|
|
114
|
+
flexDirection: 'row',
|
|
115
|
+
alignItems: 'center',
|
|
116
|
+
justifyContent: 'space-between',
|
|
117
|
+
gap: 8,
|
|
118
|
+
marginTop: 6,
|
|
119
|
+
marginBottom: 12,
|
|
120
|
+
paddingHorizontal: 12
|
|
121
|
+
},
|
|
122
|
+
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
|
|
123
|
+
style: {
|
|
124
|
+
flexDirection: 'row',
|
|
125
|
+
alignItems: 'center',
|
|
126
|
+
gap: 6
|
|
127
|
+
},
|
|
128
|
+
children: actionsLeft
|
|
129
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
|
|
130
|
+
style: {
|
|
131
|
+
flexDirection: 'row',
|
|
132
|
+
alignItems: 'center',
|
|
133
|
+
gap: 6
|
|
134
|
+
},
|
|
135
|
+
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_SubmitButton.PromptInputSubmitButton, {
|
|
136
|
+
isLoading: isLoading,
|
|
137
|
+
onStop: onStop,
|
|
138
|
+
emptyAction: emptyAction
|
|
139
|
+
})
|
|
140
|
+
})]
|
|
141
|
+
})]
|
|
142
|
+
}) : children;
|
|
143
|
+
const inputBox = /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Pressable, {
|
|
144
|
+
onPress: () => {
|
|
145
|
+
if (!disabled) textareaRef.current?.focus();
|
|
146
|
+
},
|
|
147
|
+
disabled: disabled,
|
|
148
|
+
children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
|
|
149
|
+
style: [{
|
|
150
|
+
borderRadius: 24,
|
|
151
|
+
borderWidth: 1,
|
|
152
|
+
borderColor: theme.colors.border,
|
|
153
|
+
backgroundColor: theme.colors.background,
|
|
154
|
+
overflow: 'hidden',
|
|
155
|
+
position: 'relative'
|
|
156
|
+
}, disabled && {
|
|
157
|
+
opacity: 0.6
|
|
158
|
+
}, style],
|
|
159
|
+
testID: testID,
|
|
160
|
+
children: [showExpandIcon && !disabled && /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Pressable, {
|
|
161
|
+
onPress: () => setShowFullscreen(true),
|
|
162
|
+
style: {
|
|
163
|
+
position: 'absolute',
|
|
164
|
+
top: 8,
|
|
165
|
+
right: 8,
|
|
166
|
+
zIndex: 10,
|
|
167
|
+
backgroundColor: theme.colors.background,
|
|
168
|
+
borderRadius: 9999,
|
|
169
|
+
padding: 6,
|
|
170
|
+
borderWidth: 1,
|
|
171
|
+
borderColor: theme.colors.border
|
|
172
|
+
},
|
|
173
|
+
children: expandIcon ?? /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
|
|
174
|
+
style: {
|
|
175
|
+
fontSize: 14,
|
|
176
|
+
color: theme.colors.textSecondary
|
|
177
|
+
},
|
|
178
|
+
children: "\u2922"
|
|
179
|
+
})
|
|
180
|
+
}), content]
|
|
181
|
+
})
|
|
182
|
+
});
|
|
183
|
+
const Wrapper = disableKeyboardAvoidance ? _reactNative.View : _reactNative.KeyboardAvoidingView;
|
|
184
|
+
const wrapperProps = disableKeyboardAvoidance ? {} : {
|
|
185
|
+
behavior: _reactNative.Platform.OS === 'ios' ? 'padding' : undefined
|
|
186
|
+
};
|
|
187
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_context.PromptInputContext.Provider, {
|
|
188
|
+
value: contextValue,
|
|
189
|
+
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(Wrapper, {
|
|
190
|
+
...wrapperProps,
|
|
191
|
+
children: inputBox
|
|
192
|
+
}), showFullscreen && /*#__PURE__*/(0, _jsxRuntime.jsx)(_index.Portal, {
|
|
193
|
+
children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
|
|
194
|
+
style: [_reactNative.StyleSheet.absoluteFillObject, {
|
|
195
|
+
zIndex: 9998,
|
|
196
|
+
backgroundColor: theme.colors.background
|
|
197
|
+
}],
|
|
198
|
+
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Pressable, {
|
|
199
|
+
onPress: () => setShowFullscreen(false),
|
|
200
|
+
style: {
|
|
201
|
+
position: 'absolute',
|
|
202
|
+
top: 16,
|
|
203
|
+
right: 16,
|
|
204
|
+
zIndex: 50,
|
|
205
|
+
padding: 8,
|
|
206
|
+
backgroundColor: theme.colors.background,
|
|
207
|
+
borderRadius: 9999
|
|
208
|
+
},
|
|
209
|
+
children: collapseIcon ?? /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
|
|
210
|
+
style: {
|
|
211
|
+
fontSize: 18,
|
|
212
|
+
color: theme.colors.text
|
|
213
|
+
},
|
|
214
|
+
children: "\u2921"
|
|
215
|
+
})
|
|
216
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
|
|
217
|
+
style: {
|
|
218
|
+
flex: 1
|
|
219
|
+
},
|
|
220
|
+
children: content
|
|
221
|
+
})]
|
|
222
|
+
})
|
|
223
|
+
})]
|
|
224
|
+
});
|
|
225
|
+
}
|
|
226
|
+
//# sourceMappingURL=PromptInput.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_useTheme","_index","_context","_Textarea","_Actions","_Attachments","_SubmitButton","_jsxRuntime","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","PromptInput","isLoading","maxHeight","value","onValueChange","onSubmit","children","style","disabled","onImagePaste","placeholder","actionsLeft","onStop","emptyAction","attachments","controlledAttachments","onAddAttachment","onRemoveAttachment","onUpdateAttachment","disableKeyboardAvoidance","expandIcon","collapseIcon","testID","internalValue","setInternalValue","useState","currentHeight","setCurrentHeight","showFullscreen","setShowFullscreen","handleCompletionKey","setHandleCompletionKey","textareaRef","useRef","theme","useTheme","internalAttachments","setInternalAttachments","addAttachment","useCallback","a","prev","removeAttachment","id","filter","updateAttachment","updates","map","handleChange","newValue","handleSubmit","useEffect","showExpandIcon","isSimpleMode","currentValue","currentSetValue","contextValue","useMemo","setValue","isFullscreen","content","jsxs","Fragment","jsx","PromptInputAttachments","PromptInputTextarea","PromptInputActions","flexDirection","alignItems","justifyContent","gap","marginTop","marginBottom","paddingHorizontal","View","PromptInputSubmitButton","inputBox","Pressable","onPress","current","focus","borderRadius","borderWidth","borderColor","colors","border","backgroundColor","background","overflow","position","opacity","top","right","zIndex","padding","Text","fontSize","color","textSecondary","Wrapper","KeyboardAvoidingView","wrapperProps","behavior","Platform","OS","undefined","PromptInputContext","Provider","Portal","StyleSheet","absoluteFillObject","text","flex"],"sourceRoot":"../../../src","sources":["prompt-input/PromptInput.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.PromptInputSubmitButton = PromptInputSubmitButton;
|
|
7
|
+
var _react = _interopRequireDefault(require("react"));
|
|
8
|
+
var _reactNative = require("react-native");
|
|
9
|
+
var _useTheme = require("../theme/use-theme.js");
|
|
10
|
+
var _context = require("./context.js");
|
|
11
|
+
var _jsxRuntime = require("react/jsx-runtime");
|
|
12
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
13
|
+
function PromptInputSubmitButton({
|
|
14
|
+
isLoading,
|
|
15
|
+
onStop,
|
|
16
|
+
emptyAction,
|
|
17
|
+
submitIcon,
|
|
18
|
+
stopIcon,
|
|
19
|
+
style,
|
|
20
|
+
testID
|
|
21
|
+
}) {
|
|
22
|
+
const {
|
|
23
|
+
onSubmit,
|
|
24
|
+
value,
|
|
25
|
+
attachments
|
|
26
|
+
} = (0, _context.usePromptInput)();
|
|
27
|
+
const theme = (0, _useTheme.useTheme)();
|
|
28
|
+
const hasContent = value.trim().length > 0 || attachments.length > 0;
|
|
29
|
+
if (isLoading && onStop) {
|
|
30
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.TouchableOpacity, {
|
|
31
|
+
onPress: onStop,
|
|
32
|
+
activeOpacity: 0.7,
|
|
33
|
+
style: [{
|
|
34
|
+
width: 32,
|
|
35
|
+
height: 32,
|
|
36
|
+
borderRadius: 16,
|
|
37
|
+
backgroundColor: theme.colors.primary,
|
|
38
|
+
alignItems: 'center',
|
|
39
|
+
justifyContent: 'center'
|
|
40
|
+
}, style],
|
|
41
|
+
testID: testID,
|
|
42
|
+
children: stopIcon ?? /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
|
|
43
|
+
style: {
|
|
44
|
+
fontSize: 12,
|
|
45
|
+
color: '#FFFFFF',
|
|
46
|
+
fontWeight: '700'
|
|
47
|
+
},
|
|
48
|
+
children: "\u25A0"
|
|
49
|
+
})
|
|
50
|
+
});
|
|
51
|
+
}
|
|
52
|
+
if (!hasContent && emptyAction) {
|
|
53
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_jsxRuntime.Fragment, {
|
|
54
|
+
children: emptyAction
|
|
55
|
+
});
|
|
56
|
+
}
|
|
57
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.TouchableOpacity, {
|
|
58
|
+
onPress: onSubmit,
|
|
59
|
+
disabled: !hasContent,
|
|
60
|
+
activeOpacity: 0.7,
|
|
61
|
+
style: [{
|
|
62
|
+
width: 32,
|
|
63
|
+
height: 32,
|
|
64
|
+
borderRadius: 16,
|
|
65
|
+
backgroundColor: theme.colors.primary,
|
|
66
|
+
alignItems: 'center',
|
|
67
|
+
justifyContent: 'center',
|
|
68
|
+
opacity: hasContent ? 1 : 0.4
|
|
69
|
+
}, style],
|
|
70
|
+
testID: testID,
|
|
71
|
+
children: submitIcon ?? /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
|
|
72
|
+
style: {
|
|
73
|
+
fontSize: 16,
|
|
74
|
+
color: '#FFFFFF',
|
|
75
|
+
fontWeight: '700'
|
|
76
|
+
},
|
|
77
|
+
children: "\u2191"
|
|
78
|
+
})
|
|
79
|
+
});
|
|
80
|
+
}
|
|
81
|
+
//# sourceMappingURL=SubmitButton.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireDefault","require","_reactNative","_useTheme","_context","_jsxRuntime","e","__esModule","default","PromptInputSubmitButton","isLoading","onStop","emptyAction","submitIcon","stopIcon","style","testID","onSubmit","value","attachments","usePromptInput","theme","useTheme","hasContent","trim","length","jsx","TouchableOpacity","onPress","activeOpacity","width","height","borderRadius","backgroundColor","colors","primary","alignItems","justifyContent","children","Text","fontSize","color","fontWeight","Fragment","disabled","opacity"],"sourceRoot":"../../../src","sources":["prompt-input/SubmitButton.tsx"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,YAAA,GAAAD,OAAA;AAEA,IAAAE,SAAA,GAAAF,OAAA;AACA,IAAAG,QAAA,GAAAH,OAAA;AAA2C,IAAAI,WAAA,GAAAJ,OAAA;AAAA,SAAAD,uBAAAM,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAGpC,SAASG,uBAAuBA,CAAC;EACtCC,SAAS;EACTC,MAAM;EACNC,WAAW;EACXC,UAAU;EACVC,QAAQ;EACRC,KAAK;EACLC;AAC4B,CAAC,EAAE;EAC/B,MAAM;IAAEC,QAAQ;IAAEC,KAAK;IAAEC;EAAY,CAAC,GAAG,IAAAC,uBAAc,EAAC,CAAC;EACzD,MAAMC,KAAK,GAAG,IAAAC,kBAAQ,EAAC,CAAC;EACxB,MAAMC,UAAU,GAAGL,KAAK,CAACM,IAAI,CAAC,CAAC,CAACC,MAAM,GAAG,CAAC,IAAIN,WAAW,CAACM,MAAM,GAAG,CAAC;EAEpE,IAAIf,SAAS,IAAIC,MAAM,EAAE;IACvB,oBACE,IAAAN,WAAA,CAAAqB,GAAA,EAACxB,YAAA,CAAAyB,gBAAgB;MACfC,OAAO,EAAEjB,MAAO;MAChBkB,aAAa,EAAE,GAAI;MACnBd,KAAK,EAAE,CACL;QACEe,KAAK,EAAE,EAAE;QACTC,MAAM,EAAE,EAAE;QACVC,YAAY,EAAE,EAAE;QAChBC,eAAe,EAAEZ,KAAK,CAACa,MAAM,CAACC,OAAO;QACrCC,UAAU,EAAE,QAAQ;QACpBC,cAAc,EAAE;MAClB,CAAC,EACDtB,KAAK,CACL;MACFC,MAAM,EAAEA,MAAO;MAAAsB,QAAA,EAEdxB,QAAQ,iBACP,IAAAT,WAAA,CAAAqB,GAAA,EAACxB,YAAA,CAAAqC,IAAI;QAACxB,KAAK,EAAE;UAAEyB,QAAQ,EAAE,EAAE;UAAEC,KAAK,EAAE,SAAS;UAAEC,UAAU,EAAE;QAAM,CAAE;QAAAJ,QAAA,EAAC;MAAC,CAAM;IAC5E,CACe,CAAC;EAEvB;EAEA,IAAI,CAACf,UAAU,IAAIX,WAAW,EAAE;IAC9B,oBAAO,IAAAP,WAAA,CAAAqB,GAAA,EAAArB,WAAA,CAAAsC,QAAA;MAAAL,QAAA,EAAG1B;IAAW,CAAG,CAAC;EAC3B;EAEA,oBACE,IAAAP,WAAA,CAAAqB,GAAA,EAACxB,YAAA,CAAAyB,gBAAgB;IACfC,OAAO,EAAEX,QAAS;IAClB2B,QAAQ,EAAE,CAACrB,UAAW;IACtBM,aAAa,EAAE,GAAI;IACnBd,KAAK,EAAE,CACL;MACEe,KAAK,EAAE,EAAE;MACTC,MAAM,EAAE,EAAE;MACVC,YAAY,EAAE,EAAE;MAChBC,eAAe,EAAEZ,KAAK,CAACa,MAAM,CAACC,OAAO;MACrCC,UAAU,EAAE,QAAQ;MACpBC,cAAc,EAAE,QAAQ;MACxBQ,OAAO,EAAEtB,UAAU,GAAG,CAAC,GAAG;IAC5B,CAAC,EACDR,KAAK,CACL;IACFC,MAAM,EAAEA,MAAO;IAAAsB,QAAA,EAEdzB,UAAU,iBACT,IAAAR,WAAA,CAAAqB,GAAA,EAACxB,YAAA,CAAAqC,IAAI;MAACxB,KAAK,EAAE;QAAEyB,QAAQ,EAAE,EAAE;QAAEC,KAAK,EAAE,SAAS;QAAEC,UAAU,EAAE;MAAM,CAAE;MAAAJ,QAAA,EAAC;IAAC,CAAM;EAC5E,CACe,CAAC;AAEvB","ignoreList":[]}
|