@teranga-ds/components 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/LICENSE +21 -0
- package/README.md +97 -0
- package/dist/cjs/index-BrBjyHdB.js +2038 -0
- package/dist/cjs/index.cjs.js +2 -0
- package/dist/cjs/loader.cjs.js +12 -0
- package/dist/cjs/teranga-ds.cjs.js +24 -0
- package/dist/cjs/tg-activity-feed.cjs.entry.js +29 -0
- package/dist/cjs/tg-activity-stream.cjs.entry.js +30 -0
- package/dist/cjs/tg-ai-feedback.cjs.entry.js +29 -0
- package/dist/cjs/tg-ai-insight-card.cjs.entry.js +20 -0
- package/dist/cjs/tg-alert.cjs.entry.js +42 -0
- package/dist/cjs/tg-audio-player.cjs.entry.js +46 -0
- package/dist/cjs/tg-autocomplete.cjs.entry.js +54 -0
- package/dist/cjs/tg-avatar.cjs.entry.js +39 -0
- package/dist/cjs/tg-badge.cjs.entry.js +31 -0
- package/dist/cjs/tg-bottom-nav.cjs.entry.js +30 -0
- package/dist/cjs/tg-bottom-sheet.cjs.entry.js +21 -0
- package/dist/cjs/tg-breadcrumb.cjs.entry.js +53 -0
- package/dist/cjs/tg-button.cjs.entry.js +45 -0
- package/dist/cjs/tg-calendar-view.cjs.entry.js +53 -0
- package/dist/cjs/tg-card.cjs.entry.js +31 -0
- package/dist/cjs/tg-chat-message.cjs.entry.js +19 -0
- package/dist/cjs/tg-chat.cjs.entry.js +59 -0
- package/dist/cjs/tg-checkbox.cjs.entry.js +31 -0
- package/dist/cjs/tg-combobox.cjs.entry.js +68 -0
- package/dist/cjs/tg-command-palette.cjs.entry.js +66 -0
- package/dist/cjs/tg-confidence-badge.cjs.entry.js +27 -0
- package/dist/cjs/tg-confirm-dialog.cjs.entry.js +27 -0
- package/dist/cjs/tg-context-menu.cjs.entry.js +35 -0
- package/dist/cjs/tg-data-table.cjs.entry.js +90 -0
- package/dist/cjs/tg-date-picker.cjs.entry.js +56 -0
- package/dist/cjs/tg-empty-state.cjs.entry.js +19 -0
- package/dist/cjs/tg-expandable-row.cjs.entry.js +19 -0
- package/dist/cjs/tg-fab.cjs.entry.js +22 -0
- package/dist/cjs/tg-file-upload.cjs.entry.js +86 -0
- package/dist/cjs/tg-global-loader.cjs.entry.js +24 -0
- package/dist/cjs/tg-heatmap.cjs.entry.js +65 -0
- package/dist/cjs/tg-image-gallery.cjs.entry.js +32 -0
- package/dist/cjs/tg-input.cjs.entry.js +51 -0
- package/dist/cjs/tg-kanban-board.cjs.entry.js +30 -0
- package/dist/cjs/tg-kpi-card.cjs.entry.js +20 -0
- package/dist/cjs/tg-live-badge.cjs.entry.js +20 -0
- package/dist/cjs/tg-login-form.cjs.entry.js +23 -0
- package/dist/cjs/tg-mega-menu.cjs.entry.js +34 -0
- package/dist/cjs/tg-modal.cjs.entry.js +43 -0
- package/dist/cjs/tg-model-selector.cjs.entry.js +34 -0
- package/dist/cjs/tg-multi-select.cjs.entry.js +67 -0
- package/dist/cjs/tg-navbar.cjs.entry.js +43 -0
- package/dist/cjs/tg-otp-input.cjs.entry.js +60 -0
- package/dist/cjs/tg-pagination.cjs.entry.js +53 -0
- package/dist/cjs/tg-presence-indicator.cjs.entry.js +33 -0
- package/dist/cjs/tg-progress.cjs.entry.js +53 -0
- package/dist/cjs/tg-prompt-input.cjs.entry.js +34 -0
- package/dist/cjs/tg-pull-to-refresh.cjs.entry.js +37 -0
- package/dist/cjs/tg-quick-switcher.cjs.entry.js +35 -0
- package/dist/cjs/tg-radio.cjs.entry.js +29 -0
- package/dist/cjs/tg-retry-ui.cjs.entry.js +22 -0
- package/dist/cjs/tg-rich-editor.cjs.entry.js +24 -0
- package/dist/cjs/tg-role-badge.cjs.entry.js +19 -0
- package/dist/cjs/tg-select.cjs.entry.js +69 -0
- package/dist/cjs/tg-session-expired.cjs.entry.js +24 -0
- package/dist/cjs/tg-sidebar.cjs.entry.js +35 -0
- package/dist/cjs/tg-skeleton.cjs.entry.js +30 -0
- package/dist/cjs/tg-slider.cjs.entry.js +26 -0
- package/dist/cjs/tg-source-citation.cjs.entry.js +29 -0
- package/dist/cjs/tg-spinner.cjs.entry.js +27 -0
- package/dist/cjs/tg-stat-widget.cjs.entry.js +19 -0
- package/dist/cjs/tg-status-badge.cjs.entry.js +21 -0
- package/dist/cjs/tg-stepper-input.cjs.entry.js +39 -0
- package/dist/cjs/tg-stepper.cjs.entry.js +31 -0
- package/dist/cjs/tg-streaming-response.cjs.entry.js +19 -0
- package/dist/cjs/tg-switch.cjs.entry.js +31 -0
- package/dist/cjs/tg-table.cjs.entry.js +113 -0
- package/dist/cjs/tg-tabs.cjs.entry.js +47 -0
- package/dist/cjs/tg-tag.cjs.entry.js +28 -0
- package/dist/cjs/tg-textarea.cjs.entry.js +45 -0
- package/dist/cjs/tg-time-picker.cjs.entry.js +37 -0
- package/dist/cjs/tg-timeline.cjs.entry.js +30 -0
- package/dist/cjs/tg-toast.cjs.entry.js +53 -0
- package/dist/cjs/tg-token-usage.cjs.entry.js +23 -0
- package/dist/cjs/tg-tooltip.cjs.entry.js +32 -0
- package/dist/cjs/tg-tree-view.cjs.entry.js +53 -0
- package/dist/cjs/tg-undo-snackbar.cjs.entry.js +30 -0
- package/dist/cjs/tg-video-player.cjs.entry.js +19 -0
- package/dist/cjs/tg-wizard-nav.cjs.entry.js +30 -0
- package/dist/collection/collection-manifest.json +91 -0
- package/dist/collection/components/tg-activity-feed/tg-activity-feed.css +10 -0
- package/dist/collection/components/tg-activity-feed/tg-activity-feed.js +81 -0
- package/dist/collection/components/tg-activity-stream/tg-activity-stream.css +11 -0
- package/dist/collection/components/tg-activity-stream/tg-activity-stream.js +83 -0
- package/dist/collection/components/tg-ai-feedback/tg-ai-feedback.css +12 -0
- package/dist/collection/components/tg-ai-feedback/tg-ai-feedback.js +80 -0
- package/dist/collection/components/tg-ai-insight-card/tg-ai-insight-card.css +10 -0
- package/dist/collection/components/tg-ai-insight-card/tg-ai-insight-card.js +144 -0
- package/dist/collection/components/tg-alert/tg-alert.css +122 -0
- package/dist/collection/components/tg-alert/tg-alert.js +142 -0
- package/dist/collection/components/tg-audio-player/tg-audio-player.css +11 -0
- package/dist/collection/components/tg-audio-player/tg-audio-player.js +118 -0
- package/dist/collection/components/tg-autocomplete/tg-autocomplete.css +15 -0
- package/dist/collection/components/tg-autocomplete/tg-autocomplete.js +285 -0
- package/dist/collection/components/tg-avatar/tg-avatar.css +72 -0
- package/dist/collection/components/tg-avatar/tg-avatar.js +195 -0
- package/dist/collection/components/tg-badge/tg-badge.css +153 -0
- package/dist/collection/components/tg-badge/tg-badge.js +128 -0
- package/dist/collection/components/tg-bottom-nav/tg-bottom-nav.css +7 -0
- package/dist/collection/components/tg-bottom-nav/tg-bottom-nav.js +99 -0
- package/dist/collection/components/tg-bottom-sheet/tg-bottom-sheet.css +8 -0
- package/dist/collection/components/tg-bottom-sheet/tg-bottom-sheet.js +84 -0
- package/dist/collection/components/tg-breadcrumb/tg-breadcrumb.css +82 -0
- package/dist/collection/components/tg-breadcrumb/tg-breadcrumb.js +111 -0
- package/dist/collection/components/tg-button/tg-button.css +245 -0
- package/dist/collection/components/tg-button/tg-button.js +239 -0
- package/dist/collection/components/tg-calendar-view/tg-calendar-view.css +19 -0
- package/dist/collection/components/tg-calendar-view/tg-calendar-view.js +108 -0
- package/dist/collection/components/tg-card/tg-card.css +117 -0
- package/dist/collection/components/tg-card/tg-card.js +134 -0
- package/dist/collection/components/tg-chat/tg-chat.css +207 -0
- package/dist/collection/components/tg-chat/tg-chat.js +194 -0
- package/dist/collection/components/tg-chat-message/tg-chat-message.css +15 -0
- package/dist/collection/components/tg-chat-message/tg-chat-message.js +104 -0
- package/dist/collection/components/tg-checkbox/tg-checkbox.css +94 -0
- package/dist/collection/components/tg-checkbox/tg-checkbox.js +210 -0
- package/dist/collection/components/tg-combobox/tg-combobox.css +22 -0
- package/dist/collection/components/tg-combobox/tg-combobox.js +290 -0
- package/dist/collection/components/tg-command-palette/tg-command-palette.css +16 -0
- package/dist/collection/components/tg-command-palette/tg-command-palette.js +152 -0
- package/dist/collection/components/tg-confidence-badge/tg-confidence-badge.css +12 -0
- package/dist/collection/components/tg-confidence-badge/tg-confidence-badge.js +93 -0
- package/dist/collection/components/tg-confirm-dialog/tg-confirm-dialog.css +19 -0
- package/dist/collection/components/tg-confirm-dialog/tg-confirm-dialog.js +204 -0
- package/dist/collection/components/tg-context-menu/tg-context-menu.css +12 -0
- package/dist/collection/components/tg-context-menu/tg-context-menu.js +107 -0
- package/dist/collection/components/tg-data-table/tg-data-table.css +19 -0
- package/dist/collection/components/tg-data-table/tg-data-table.js +287 -0
- package/dist/collection/components/tg-date-picker/tg-date-picker.css +28 -0
- package/dist/collection/components/tg-date-picker/tg-date-picker.js +251 -0
- package/dist/collection/components/tg-empty-state/tg-empty-state.css +7 -0
- package/dist/collection/components/tg-empty-state/tg-empty-state.js +123 -0
- package/dist/collection/components/tg-expandable-row/tg-expandable-row.css +13 -0
- package/dist/collection/components/tg-expandable-row/tg-expandable-row.js +89 -0
- package/dist/collection/components/tg-fab/tg-fab.css +16 -0
- package/dist/collection/components/tg-fab/tg-fab.js +164 -0
- package/dist/collection/components/tg-file-upload/tg-file-upload.css +172 -0
- package/dist/collection/components/tg-file-upload/tg-file-upload.js +240 -0
- package/dist/collection/components/tg-global-loader/tg-global-loader.css +8 -0
- package/dist/collection/components/tg-global-loader/tg-global-loader.js +90 -0
- package/dist/collection/components/tg-heatmap/tg-heatmap.css +9 -0
- package/dist/collection/components/tg-heatmap/tg-heatmap.js +191 -0
- package/dist/collection/components/tg-image-gallery/tg-image-gallery.css +13 -0
- package/dist/collection/components/tg-image-gallery/tg-image-gallery.js +90 -0
- package/dist/collection/components/tg-input/tg-input.css +164 -0
- package/dist/collection/components/tg-input/tg-input.js +355 -0
- package/dist/collection/components/tg-kanban-board/tg-kanban-board.css +14 -0
- package/dist/collection/components/tg-kanban-board/tg-kanban-board.js +80 -0
- package/dist/collection/components/tg-kpi-card/tg-kpi-card.css +17 -0
- package/dist/collection/components/tg-kpi-card/tg-kpi-card.js +163 -0
- package/dist/collection/components/tg-live-badge/tg-live-badge.css +11 -0
- package/dist/collection/components/tg-live-badge/tg-live-badge.js +87 -0
- package/dist/collection/components/tg-login-form/tg-login-form.css +16 -0
- package/dist/collection/components/tg-login-form/tg-login-form.js +150 -0
- package/dist/collection/components/tg-mega-menu/tg-mega-menu.css +19 -0
- package/dist/collection/components/tg-mega-menu/tg-mega-menu.js +82 -0
- package/dist/collection/components/tg-modal/tg-modal.css +132 -0
- package/dist/collection/components/tg-modal/tg-modal.js +180 -0
- package/dist/collection/components/tg-model-selector/tg-model-selector.css +15 -0
- package/dist/collection/components/tg-model-selector/tg-model-selector.js +117 -0
- package/dist/collection/components/tg-multi-select/tg-multi-select.css +22 -0
- package/dist/collection/components/tg-multi-select/tg-multi-select.js +251 -0
- package/dist/collection/components/tg-navbar/tg-navbar.css +144 -0
- package/dist/collection/components/tg-navbar/tg-navbar.js +159 -0
- package/dist/collection/components/tg-otp-input/tg-otp-input.css +10 -0
- package/dist/collection/components/tg-otp-input/tg-otp-input.js +221 -0
- package/dist/collection/components/tg-pagination/tg-pagination.css +73 -0
- package/dist/collection/components/tg-pagination/tg-pagination.js +137 -0
- package/dist/collection/components/tg-presence-indicator/tg-presence-indicator.css +10 -0
- package/dist/collection/components/tg-presence-indicator/tg-presence-indicator.js +80 -0
- package/dist/collection/components/tg-progress/tg-progress.css +142 -0
- package/dist/collection/components/tg-progress/tg-progress.js +299 -0
- package/dist/collection/components/tg-prompt-input/tg-prompt-input.css +11 -0
- package/dist/collection/components/tg-prompt-input/tg-prompt-input.js +142 -0
- package/dist/collection/components/tg-pull-to-refresh/tg-pull-to-refresh.css +7 -0
- package/dist/collection/components/tg-pull-to-refresh/tg-pull-to-refresh.js +127 -0
- package/dist/collection/components/tg-quick-switcher/tg-quick-switcher.css +12 -0
- package/dist/collection/components/tg-quick-switcher/tg-quick-switcher.js +120 -0
- package/dist/collection/components/tg-radio/tg-radio.css +83 -0
- package/dist/collection/components/tg-radio/tg-radio.js +169 -0
- package/dist/collection/components/tg-retry-ui/tg-retry-ui.css +10 -0
- package/dist/collection/components/tg-retry-ui/tg-retry-ui.js +145 -0
- package/dist/collection/components/tg-rich-editor/tg-rich-editor.css +10 -0
- package/dist/collection/components/tg-rich-editor/tg-rich-editor.js +151 -0
- package/dist/collection/components/tg-role-badge/tg-role-badge.css +7 -0
- package/dist/collection/components/tg-role-badge/tg-role-badge.js +85 -0
- package/dist/collection/components/tg-select/tg-select.css +144 -0
- package/dist/collection/components/tg-select/tg-select.js +329 -0
- package/dist/collection/components/tg-session-expired/tg-session-expired.css +8 -0
- package/dist/collection/components/tg-session-expired/tg-session-expired.js +128 -0
- package/dist/collection/components/tg-sidebar/tg-sidebar.css +188 -0
- package/dist/collection/components/tg-sidebar/tg-sidebar.js +112 -0
- package/dist/collection/components/tg-skeleton/tg-skeleton.css +58 -0
- package/dist/collection/components/tg-skeleton/tg-skeleton.js +135 -0
- package/dist/collection/components/tg-slider/tg-slider.css +10 -0
- package/dist/collection/components/tg-slider/tg-slider.js +208 -0
- package/dist/collection/components/tg-source-citation/tg-source-citation.css +12 -0
- package/dist/collection/components/tg-source-citation/tg-source-citation.js +56 -0
- package/dist/collection/components/tg-spinner/tg-spinner.css +50 -0
- package/dist/collection/components/tg-spinner/tg-spinner.js +101 -0
- package/dist/collection/components/tg-stat-widget/tg-stat-widget.css +12 -0
- package/dist/collection/components/tg-stat-widget/tg-stat-widget.js +142 -0
- package/dist/collection/components/tg-status-badge/tg-status-badge.css +24 -0
- package/dist/collection/components/tg-status-badge/tg-status-badge.js +108 -0
- package/dist/collection/components/tg-stepper/tg-stepper.css +17 -0
- package/dist/collection/components/tg-stepper/tg-stepper.js +104 -0
- package/dist/collection/components/tg-stepper-input/tg-stepper-input.css +15 -0
- package/dist/collection/components/tg-stepper-input/tg-stepper-input.js +200 -0
- package/dist/collection/components/tg-streaming-response/tg-streaming-response.css +12 -0
- package/dist/collection/components/tg-streaming-response/tg-streaming-response.js +104 -0
- package/dist/collection/components/tg-switch/tg-switch.css +89 -0
- package/dist/collection/components/tg-switch/tg-switch.js +172 -0
- package/dist/collection/components/tg-table/tg-table.css +117 -0
- package/dist/collection/components/tg-table/tg-table.js +289 -0
- package/dist/collection/components/tg-tabs/tg-tabs.css +114 -0
- package/dist/collection/components/tg-tabs/tg-tabs.js +141 -0
- package/dist/collection/components/tg-tag/tg-tag.css +76 -0
- package/dist/collection/components/tg-tag/tg-tag.js +152 -0
- package/dist/collection/components/tg-textarea/tg-textarea.css +105 -0
- package/dist/collection/components/tg-textarea/tg-textarea.js +357 -0
- package/dist/collection/components/tg-time-picker/tg-time-picker.css +15 -0
- package/dist/collection/components/tg-time-picker/tg-time-picker.js +213 -0
- package/dist/collection/components/tg-timeline/tg-timeline.css +14 -0
- package/dist/collection/components/tg-timeline/tg-timeline.js +83 -0
- package/dist/collection/components/tg-toast/tg-toast.css +112 -0
- package/dist/collection/components/tg-toast/tg-toast.js +181 -0
- package/dist/collection/components/tg-token-usage/tg-token-usage.css +14 -0
- package/dist/collection/components/tg-token-usage/tg-token-usage.js +129 -0
- package/dist/collection/components/tg-tooltip/tg-tooltip.css +93 -0
- package/dist/collection/components/tg-tooltip/tg-tooltip.js +104 -0
- package/dist/collection/components/tg-tree-view/tg-tree-view.css +10 -0
- package/dist/collection/components/tg-tree-view/tg-tree-view.js +112 -0
- package/dist/collection/components/tg-undo-snackbar/tg-undo-snackbar.css +8 -0
- package/dist/collection/components/tg-undo-snackbar/tg-undo-snackbar.js +148 -0
- package/dist/collection/components/tg-video-player/tg-video-player.css +6 -0
- package/dist/collection/components/tg-video-player/tg-video-player.js +104 -0
- package/dist/collection/components/tg-wizard-nav/tg-wizard-nav.css +14 -0
- package/dist/collection/components/tg-wizard-nav/tg-wizard-nav.js +202 -0
- package/dist/collection/index.js +1 -0
- package/dist/collection/teranga-tokens.css +189 -0
- package/dist/components/index.d.ts +35 -0
- package/dist/components/index.js +1 -0
- package/dist/components/p-BWkBF3Ng.js +1 -0
- package/dist/components/p-DcG1qXzH.js +1 -0
- package/dist/components/tg-activity-feed.d.ts +11 -0
- package/dist/components/tg-activity-feed.js +1 -0
- package/dist/components/tg-activity-stream.d.ts +11 -0
- package/dist/components/tg-activity-stream.js +1 -0
- package/dist/components/tg-ai-feedback.d.ts +11 -0
- package/dist/components/tg-ai-feedback.js +1 -0
- package/dist/components/tg-ai-insight-card.d.ts +11 -0
- package/dist/components/tg-ai-insight-card.js +1 -0
- package/dist/components/tg-alert.d.ts +11 -0
- package/dist/components/tg-alert.js +1 -0
- package/dist/components/tg-audio-player.d.ts +11 -0
- package/dist/components/tg-audio-player.js +1 -0
- package/dist/components/tg-autocomplete.d.ts +11 -0
- package/dist/components/tg-autocomplete.js +1 -0
- package/dist/components/tg-avatar.d.ts +11 -0
- package/dist/components/tg-avatar.js +1 -0
- package/dist/components/tg-badge.d.ts +11 -0
- package/dist/components/tg-badge.js +1 -0
- package/dist/components/tg-bottom-nav.d.ts +11 -0
- package/dist/components/tg-bottom-nav.js +1 -0
- package/dist/components/tg-bottom-sheet.d.ts +11 -0
- package/dist/components/tg-bottom-sheet.js +1 -0
- package/dist/components/tg-breadcrumb.d.ts +11 -0
- package/dist/components/tg-breadcrumb.js +1 -0
- package/dist/components/tg-button.d.ts +11 -0
- package/dist/components/tg-button.js +1 -0
- package/dist/components/tg-calendar-view.d.ts +11 -0
- package/dist/components/tg-calendar-view.js +1 -0
- package/dist/components/tg-card.d.ts +11 -0
- package/dist/components/tg-card.js +1 -0
- package/dist/components/tg-chat-message.d.ts +11 -0
- package/dist/components/tg-chat-message.js +1 -0
- package/dist/components/tg-chat.d.ts +11 -0
- package/dist/components/tg-chat.js +1 -0
- package/dist/components/tg-checkbox.d.ts +11 -0
- package/dist/components/tg-checkbox.js +1 -0
- package/dist/components/tg-combobox.d.ts +11 -0
- package/dist/components/tg-combobox.js +1 -0
- package/dist/components/tg-command-palette.d.ts +11 -0
- package/dist/components/tg-command-palette.js +1 -0
- package/dist/components/tg-confidence-badge.d.ts +11 -0
- package/dist/components/tg-confidence-badge.js +1 -0
- package/dist/components/tg-confirm-dialog.d.ts +11 -0
- package/dist/components/tg-confirm-dialog.js +1 -0
- package/dist/components/tg-context-menu.d.ts +11 -0
- package/dist/components/tg-context-menu.js +1 -0
- package/dist/components/tg-data-table.d.ts +11 -0
- package/dist/components/tg-data-table.js +1 -0
- package/dist/components/tg-date-picker.d.ts +11 -0
- package/dist/components/tg-date-picker.js +1 -0
- package/dist/components/tg-empty-state.d.ts +11 -0
- package/dist/components/tg-empty-state.js +1 -0
- package/dist/components/tg-expandable-row.d.ts +11 -0
- package/dist/components/tg-expandable-row.js +1 -0
- package/dist/components/tg-fab.d.ts +11 -0
- package/dist/components/tg-fab.js +1 -0
- package/dist/components/tg-file-upload.d.ts +11 -0
- package/dist/components/tg-file-upload.js +1 -0
- package/dist/components/tg-global-loader.d.ts +11 -0
- package/dist/components/tg-global-loader.js +1 -0
- package/dist/components/tg-heatmap.d.ts +11 -0
- package/dist/components/tg-heatmap.js +1 -0
- package/dist/components/tg-image-gallery.d.ts +11 -0
- package/dist/components/tg-image-gallery.js +1 -0
- package/dist/components/tg-input.d.ts +11 -0
- package/dist/components/tg-input.js +1 -0
- package/dist/components/tg-kanban-board.d.ts +11 -0
- package/dist/components/tg-kanban-board.js +1 -0
- package/dist/components/tg-kpi-card.d.ts +11 -0
- package/dist/components/tg-kpi-card.js +1 -0
- package/dist/components/tg-live-badge.d.ts +11 -0
- package/dist/components/tg-live-badge.js +1 -0
- package/dist/components/tg-login-form.d.ts +11 -0
- package/dist/components/tg-login-form.js +1 -0
- package/dist/components/tg-mega-menu.d.ts +11 -0
- package/dist/components/tg-mega-menu.js +1 -0
- package/dist/components/tg-modal.d.ts +11 -0
- package/dist/components/tg-modal.js +1 -0
- package/dist/components/tg-model-selector.d.ts +11 -0
- package/dist/components/tg-model-selector.js +1 -0
- package/dist/components/tg-multi-select.d.ts +11 -0
- package/dist/components/tg-multi-select.js +1 -0
- package/dist/components/tg-navbar.d.ts +11 -0
- package/dist/components/tg-navbar.js +1 -0
- package/dist/components/tg-otp-input.d.ts +11 -0
- package/dist/components/tg-otp-input.js +1 -0
- package/dist/components/tg-pagination.d.ts +11 -0
- package/dist/components/tg-pagination.js +1 -0
- package/dist/components/tg-presence-indicator.d.ts +11 -0
- package/dist/components/tg-presence-indicator.js +1 -0
- package/dist/components/tg-progress.d.ts +11 -0
- package/dist/components/tg-progress.js +1 -0
- package/dist/components/tg-prompt-input.d.ts +11 -0
- package/dist/components/tg-prompt-input.js +1 -0
- package/dist/components/tg-pull-to-refresh.d.ts +11 -0
- package/dist/components/tg-pull-to-refresh.js +1 -0
- package/dist/components/tg-quick-switcher.d.ts +11 -0
- package/dist/components/tg-quick-switcher.js +1 -0
- package/dist/components/tg-radio.d.ts +11 -0
- package/dist/components/tg-radio.js +1 -0
- package/dist/components/tg-retry-ui.d.ts +11 -0
- package/dist/components/tg-retry-ui.js +1 -0
- package/dist/components/tg-rich-editor.d.ts +11 -0
- package/dist/components/tg-rich-editor.js +1 -0
- package/dist/components/tg-role-badge.d.ts +11 -0
- package/dist/components/tg-role-badge.js +1 -0
- package/dist/components/tg-select.d.ts +11 -0
- package/dist/components/tg-select.js +1 -0
- package/dist/components/tg-session-expired.d.ts +11 -0
- package/dist/components/tg-session-expired.js +1 -0
- package/dist/components/tg-sidebar.d.ts +11 -0
- package/dist/components/tg-sidebar.js +1 -0
- package/dist/components/tg-skeleton.d.ts +11 -0
- package/dist/components/tg-skeleton.js +1 -0
- package/dist/components/tg-slider.d.ts +11 -0
- package/dist/components/tg-slider.js +1 -0
- package/dist/components/tg-source-citation.d.ts +11 -0
- package/dist/components/tg-source-citation.js +1 -0
- package/dist/components/tg-spinner.d.ts +11 -0
- package/dist/components/tg-spinner.js +1 -0
- package/dist/components/tg-stat-widget.d.ts +11 -0
- package/dist/components/tg-stat-widget.js +1 -0
- package/dist/components/tg-status-badge.d.ts +11 -0
- package/dist/components/tg-status-badge.js +1 -0
- package/dist/components/tg-stepper-input.d.ts +11 -0
- package/dist/components/tg-stepper-input.js +1 -0
- package/dist/components/tg-stepper.d.ts +11 -0
- package/dist/components/tg-stepper.js +1 -0
- package/dist/components/tg-streaming-response.d.ts +11 -0
- package/dist/components/tg-streaming-response.js +1 -0
- package/dist/components/tg-switch.d.ts +11 -0
- package/dist/components/tg-switch.js +1 -0
- package/dist/components/tg-table.d.ts +11 -0
- package/dist/components/tg-table.js +1 -0
- package/dist/components/tg-tabs.d.ts +11 -0
- package/dist/components/tg-tabs.js +1 -0
- package/dist/components/tg-tag.d.ts +11 -0
- package/dist/components/tg-tag.js +1 -0
- package/dist/components/tg-textarea.d.ts +11 -0
- package/dist/components/tg-textarea.js +1 -0
- package/dist/components/tg-time-picker.d.ts +11 -0
- package/dist/components/tg-time-picker.js +1 -0
- package/dist/components/tg-timeline.d.ts +11 -0
- package/dist/components/tg-timeline.js +1 -0
- package/dist/components/tg-toast.d.ts +11 -0
- package/dist/components/tg-toast.js +1 -0
- package/dist/components/tg-token-usage.d.ts +11 -0
- package/dist/components/tg-token-usage.js +1 -0
- package/dist/components/tg-tooltip.d.ts +11 -0
- package/dist/components/tg-tooltip.js +1 -0
- package/dist/components/tg-tree-view.d.ts +11 -0
- package/dist/components/tg-tree-view.js +1 -0
- package/dist/components/tg-undo-snackbar.d.ts +11 -0
- package/dist/components/tg-undo-snackbar.js +1 -0
- package/dist/components/tg-video-player.d.ts +11 -0
- package/dist/components/tg-video-player.js +1 -0
- package/dist/components/tg-wizard-nav.d.ts +11 -0
- package/dist/components/tg-wizard-nav.js +1 -0
- package/dist/docs.d.ts +480 -0
- package/dist/docs.json +14240 -0
- package/dist/esm/index-CXqO9vvj.js +2010 -0
- package/dist/esm/index.js +1 -0
- package/dist/esm/loader.js +10 -0
- package/dist/esm/teranga-ds.js +20 -0
- package/dist/esm/tg-activity-feed.entry.js +27 -0
- package/dist/esm/tg-activity-stream.entry.js +28 -0
- package/dist/esm/tg-ai-feedback.entry.js +27 -0
- package/dist/esm/tg-ai-insight-card.entry.js +18 -0
- package/dist/esm/tg-alert.entry.js +40 -0
- package/dist/esm/tg-audio-player.entry.js +44 -0
- package/dist/esm/tg-autocomplete.entry.js +52 -0
- package/dist/esm/tg-avatar.entry.js +37 -0
- package/dist/esm/tg-badge.entry.js +29 -0
- package/dist/esm/tg-bottom-nav.entry.js +28 -0
- package/dist/esm/tg-bottom-sheet.entry.js +19 -0
- package/dist/esm/tg-breadcrumb.entry.js +51 -0
- package/dist/esm/tg-button.entry.js +43 -0
- package/dist/esm/tg-calendar-view.entry.js +51 -0
- package/dist/esm/tg-card.entry.js +29 -0
- package/dist/esm/tg-chat-message.entry.js +17 -0
- package/dist/esm/tg-chat.entry.js +57 -0
- package/dist/esm/tg-checkbox.entry.js +29 -0
- package/dist/esm/tg-combobox.entry.js +66 -0
- package/dist/esm/tg-command-palette.entry.js +64 -0
- package/dist/esm/tg-confidence-badge.entry.js +25 -0
- package/dist/esm/tg-confirm-dialog.entry.js +25 -0
- package/dist/esm/tg-context-menu.entry.js +33 -0
- package/dist/esm/tg-data-table.entry.js +88 -0
- package/dist/esm/tg-date-picker.entry.js +54 -0
- package/dist/esm/tg-empty-state.entry.js +17 -0
- package/dist/esm/tg-expandable-row.entry.js +17 -0
- package/dist/esm/tg-fab.entry.js +20 -0
- package/dist/esm/tg-file-upload.entry.js +84 -0
- package/dist/esm/tg-global-loader.entry.js +22 -0
- package/dist/esm/tg-heatmap.entry.js +63 -0
- package/dist/esm/tg-image-gallery.entry.js +30 -0
- package/dist/esm/tg-input.entry.js +49 -0
- package/dist/esm/tg-kanban-board.entry.js +28 -0
- package/dist/esm/tg-kpi-card.entry.js +18 -0
- package/dist/esm/tg-live-badge.entry.js +18 -0
- package/dist/esm/tg-login-form.entry.js +21 -0
- package/dist/esm/tg-mega-menu.entry.js +32 -0
- package/dist/esm/tg-modal.entry.js +41 -0
- package/dist/esm/tg-model-selector.entry.js +32 -0
- package/dist/esm/tg-multi-select.entry.js +65 -0
- package/dist/esm/tg-navbar.entry.js +41 -0
- package/dist/esm/tg-otp-input.entry.js +58 -0
- package/dist/esm/tg-pagination.entry.js +51 -0
- package/dist/esm/tg-presence-indicator.entry.js +31 -0
- package/dist/esm/tg-progress.entry.js +51 -0
- package/dist/esm/tg-prompt-input.entry.js +32 -0
- package/dist/esm/tg-pull-to-refresh.entry.js +35 -0
- package/dist/esm/tg-quick-switcher.entry.js +33 -0
- package/dist/esm/tg-radio.entry.js +27 -0
- package/dist/esm/tg-retry-ui.entry.js +20 -0
- package/dist/esm/tg-rich-editor.entry.js +22 -0
- package/dist/esm/tg-role-badge.entry.js +17 -0
- package/dist/esm/tg-select.entry.js +67 -0
- package/dist/esm/tg-session-expired.entry.js +22 -0
- package/dist/esm/tg-sidebar.entry.js +33 -0
- package/dist/esm/tg-skeleton.entry.js +28 -0
- package/dist/esm/tg-slider.entry.js +24 -0
- package/dist/esm/tg-source-citation.entry.js +27 -0
- package/dist/esm/tg-spinner.entry.js +25 -0
- package/dist/esm/tg-stat-widget.entry.js +17 -0
- package/dist/esm/tg-status-badge.entry.js +19 -0
- package/dist/esm/tg-stepper-input.entry.js +37 -0
- package/dist/esm/tg-stepper.entry.js +29 -0
- package/dist/esm/tg-streaming-response.entry.js +17 -0
- package/dist/esm/tg-switch.entry.js +29 -0
- package/dist/esm/tg-table.entry.js +111 -0
- package/dist/esm/tg-tabs.entry.js +45 -0
- package/dist/esm/tg-tag.entry.js +26 -0
- package/dist/esm/tg-textarea.entry.js +43 -0
- package/dist/esm/tg-time-picker.entry.js +35 -0
- package/dist/esm/tg-timeline.entry.js +28 -0
- package/dist/esm/tg-toast.entry.js +51 -0
- package/dist/esm/tg-token-usage.entry.js +21 -0
- package/dist/esm/tg-tooltip.entry.js +30 -0
- package/dist/esm/tg-tree-view.entry.js +51 -0
- package/dist/esm/tg-undo-snackbar.entry.js +28 -0
- package/dist/esm/tg-video-player.entry.js +17 -0
- package/dist/esm/tg-wizard-nav.entry.js +28 -0
- package/dist/index.cjs.js +1 -0
- package/dist/index.js +1 -0
- package/dist/teranga-ds/index.esm.js +0 -0
- package/dist/teranga-ds/p-003a47ca.entry.js +1 -0
- package/dist/teranga-ds/p-017ddeb1.entry.js +1 -0
- package/dist/teranga-ds/p-02c5a12d.entry.js +1 -0
- package/dist/teranga-ds/p-0a42664a.entry.js +1 -0
- package/dist/teranga-ds/p-0b076dde.entry.js +1 -0
- package/dist/teranga-ds/p-0c4d9863.entry.js +1 -0
- package/dist/teranga-ds/p-0e8e624c.entry.js +1 -0
- package/dist/teranga-ds/p-188921a5.entry.js +1 -0
- package/dist/teranga-ds/p-1925d476.entry.js +1 -0
- package/dist/teranga-ds/p-19a4e248.entry.js +1 -0
- package/dist/teranga-ds/p-223af07c.entry.js +1 -0
- package/dist/teranga-ds/p-229331e3.entry.js +1 -0
- package/dist/teranga-ds/p-229a048d.entry.js +1 -0
- package/dist/teranga-ds/p-2537b595.entry.js +1 -0
- package/dist/teranga-ds/p-256c5686.entry.js +1 -0
- package/dist/teranga-ds/p-25af1fe1.entry.js +1 -0
- package/dist/teranga-ds/p-293e42b5.entry.js +1 -0
- package/dist/teranga-ds/p-29ce1cb3.entry.js +1 -0
- package/dist/teranga-ds/p-2bcf5c49.entry.js +1 -0
- package/dist/teranga-ds/p-2e8eb1cd.entry.js +1 -0
- package/dist/teranga-ds/p-321ec5a3.entry.js +1 -0
- package/dist/teranga-ds/p-34c8b3db.entry.js +1 -0
- package/dist/teranga-ds/p-3722c1c8.entry.js +1 -0
- package/dist/teranga-ds/p-386e978e.entry.js +1 -0
- package/dist/teranga-ds/p-45825e6c.entry.js +1 -0
- package/dist/teranga-ds/p-45d69cd2.entry.js +1 -0
- package/dist/teranga-ds/p-4ca63079.entry.js +1 -0
- package/dist/teranga-ds/p-4cdefae6.entry.js +1 -0
- package/dist/teranga-ds/p-4d3e0645.entry.js +1 -0
- package/dist/teranga-ds/p-5179d2e1.entry.js +1 -0
- package/dist/teranga-ds/p-5888f1d1.entry.js +1 -0
- package/dist/teranga-ds/p-58fd7fc1.entry.js +1 -0
- package/dist/teranga-ds/p-5b34ae37.entry.js +1 -0
- package/dist/teranga-ds/p-5cb3cab5.entry.js +1 -0
- package/dist/teranga-ds/p-5f64253e.entry.js +1 -0
- package/dist/teranga-ds/p-61bab799.entry.js +1 -0
- package/dist/teranga-ds/p-63285c1c.entry.js +1 -0
- package/dist/teranga-ds/p-6b40af59.entry.js +1 -0
- package/dist/teranga-ds/p-6c275cd2.entry.js +1 -0
- package/dist/teranga-ds/p-700908a2.entry.js +1 -0
- package/dist/teranga-ds/p-71257d05.entry.js +1 -0
- package/dist/teranga-ds/p-727543e6.entry.js +1 -0
- package/dist/teranga-ds/p-73082aef.entry.js +1 -0
- package/dist/teranga-ds/p-7acaa999.entry.js +1 -0
- package/dist/teranga-ds/p-81041fa8.entry.js +1 -0
- package/dist/teranga-ds/p-816417c6.entry.js +1 -0
- package/dist/teranga-ds/p-82057162.entry.js +1 -0
- package/dist/teranga-ds/p-84506153.entry.js +1 -0
- package/dist/teranga-ds/p-9259b7ad.entry.js +1 -0
- package/dist/teranga-ds/p-968f33cd.entry.js +1 -0
- package/dist/teranga-ds/p-9a86750e.entry.js +1 -0
- package/dist/teranga-ds/p-9b661306.entry.js +1 -0
- package/dist/teranga-ds/p-9ddbbe0b.entry.js +1 -0
- package/dist/teranga-ds/p-9f6a460b.entry.js +1 -0
- package/dist/teranga-ds/p-CXqO9vvj.js +2 -0
- package/dist/teranga-ds/p-a02dc9c0.entry.js +1 -0
- package/dist/teranga-ds/p-a25e8482.entry.js +1 -0
- package/dist/teranga-ds/p-a7ed37b2.entry.js +1 -0
- package/dist/teranga-ds/p-b4b5570e.entry.js +1 -0
- package/dist/teranga-ds/p-b762afff.entry.js +1 -0
- package/dist/teranga-ds/p-ba67b6cb.entry.js +1 -0
- package/dist/teranga-ds/p-bd667d1b.entry.js +1 -0
- package/dist/teranga-ds/p-bd7eefaa.entry.js +1 -0
- package/dist/teranga-ds/p-cd11c0ce.entry.js +1 -0
- package/dist/teranga-ds/p-d783708a.entry.js +1 -0
- package/dist/teranga-ds/p-dab038ae.entry.js +1 -0
- package/dist/teranga-ds/p-dda9a7c3.entry.js +1 -0
- package/dist/teranga-ds/p-deb81958.entry.js +1 -0
- package/dist/teranga-ds/p-dfaff259.entry.js +1 -0
- package/dist/teranga-ds/p-e0c5a144.entry.js +1 -0
- package/dist/teranga-ds/p-e26d2a8d.entry.js +1 -0
- package/dist/teranga-ds/p-e58a4ab8.entry.js +1 -0
- package/dist/teranga-ds/p-e8736bde.entry.js +1 -0
- package/dist/teranga-ds/p-eca93015.entry.js +1 -0
- package/dist/teranga-ds/p-ed2a5ec6.entry.js +1 -0
- package/dist/teranga-ds/p-ed48b855.entry.js +1 -0
- package/dist/teranga-ds/p-ee8c0470.entry.js +1 -0
- package/dist/teranga-ds/p-efff537c.entry.js +1 -0
- package/dist/teranga-ds/p-f5d99e53.entry.js +1 -0
- package/dist/teranga-ds/p-f790b8f4.entry.js +1 -0
- package/dist/teranga-ds/teranga-ds.css +1 -0
- package/dist/teranga-ds/teranga-ds.esm.js +1 -0
- package/dist/teranga-ds/teranga-tokens.css +189 -0
- package/dist/types/components/tg-activity-feed/tg-activity-feed.d.ts +13 -0
- package/dist/types/components/tg-activity-stream/tg-activity-stream.d.ts +14 -0
- package/dist/types/components/tg-ai-feedback/tg-ai-feedback.d.ts +14 -0
- package/dist/types/components/tg-ai-insight-card/tg-ai-insight-card.d.ts +9 -0
- package/dist/types/components/tg-alert/tg-alert.d.ts +28 -0
- package/dist/types/components/tg-audio-player/tg-audio-player.d.ts +15 -0
- package/dist/types/components/tg-autocomplete/tg-autocomplete.d.ts +21 -0
- package/dist/types/components/tg-avatar/tg-avatar.d.ts +27 -0
- package/dist/types/components/tg-badge/tg-badge.d.ts +21 -0
- package/dist/types/components/tg-bottom-nav/tg-bottom-nav.d.ts +14 -0
- package/dist/types/components/tg-bottom-sheet/tg-bottom-sheet.d.ts +7 -0
- package/dist/types/components/tg-breadcrumb/tg-breadcrumb.d.ts +12 -0
- package/dist/types/components/tg-button/tg-button.d.ts +35 -0
- package/dist/types/components/tg-calendar-view/tg-calendar-view.d.ts +18 -0
- package/dist/types/components/tg-card/tg-card.d.ts +27 -0
- package/dist/types/components/tg-chat/tg-chat.d.ts +24 -0
- package/dist/types/components/tg-chat-message/tg-chat-message.d.ts +7 -0
- package/dist/types/components/tg-checkbox/tg-checkbox.d.ts +14 -0
- package/dist/types/components/tg-combobox/tg-combobox.d.ts +30 -0
- package/dist/types/components/tg-command-palette/tg-command-palette.d.ts +20 -0
- package/dist/types/components/tg-confidence-badge/tg-confidence-badge.d.ts +7 -0
- package/dist/types/components/tg-confirm-dialog/tg-confirm-dialog.d.ts +13 -0
- package/dist/types/components/tg-context-menu/tg-context-menu.d.ts +21 -0
- package/dist/types/components/tg-data-table/tg-data-table.d.ts +34 -0
- package/dist/types/components/tg-date-picker/tg-date-picker.d.ts +22 -0
- package/dist/types/components/tg-empty-state/tg-empty-state.d.ts +8 -0
- package/dist/types/components/tg-expandable-row/tg-expandable-row.d.ts +7 -0
- package/dist/types/components/tg-fab/tg-fab.d.ts +11 -0
- package/dist/types/components/tg-file-upload/tg-file-upload.d.ts +28 -0
- package/dist/types/components/tg-global-loader/tg-global-loader.d.ts +6 -0
- package/dist/types/components/tg-heatmap/tg-heatmap.d.ts +14 -0
- package/dist/types/components/tg-image-gallery/tg-image-gallery.d.ts +12 -0
- package/dist/types/components/tg-input/tg-input.d.ts +48 -0
- package/dist/types/components/tg-kanban-board/tg-kanban-board.d.ts +23 -0
- package/dist/types/components/tg-kpi-card/tg-kpi-card.d.ts +10 -0
- package/dist/types/components/tg-live-badge/tg-live-badge.d.ts +6 -0
- package/dist/types/components/tg-login-form/tg-login-form.d.ts +16 -0
- package/dist/types/components/tg-mega-menu/tg-mega-menu.d.ts +21 -0
- package/dist/types/components/tg-modal/tg-modal.d.ts +14 -0
- package/dist/types/components/tg-model-selector/tg-model-selector.d.ts +18 -0
- package/dist/types/components/tg-multi-select/tg-multi-select.d.ts +25 -0
- package/dist/types/components/tg-navbar/tg-navbar.d.ts +16 -0
- package/dist/types/components/tg-otp-input/tg-otp-input.d.ts +18 -0
- package/dist/types/components/tg-pagination/tg-pagination.d.ts +10 -0
- package/dist/types/components/tg-presence-indicator/tg-presence-indicator.d.ts +10 -0
- package/dist/types/components/tg-progress/tg-progress.d.ts +18 -0
- package/dist/types/components/tg-prompt-input/tg-prompt-input.d.ts +12 -0
- package/dist/types/components/tg-pull-to-refresh/tg-pull-to-refresh.d.ts +15 -0
- package/dist/types/components/tg-quick-switcher/tg-quick-switcher.d.ts +18 -0
- package/dist/types/components/tg-radio/tg-radio.d.ts +12 -0
- package/dist/types/components/tg-retry-ui/tg-retry-ui.d.ts +10 -0
- package/dist/types/components/tg-rich-editor/tg-rich-editor.d.ts +13 -0
- package/dist/types/components/tg-role-badge/tg-role-badge.d.ts +6 -0
- package/dist/types/components/tg-select/tg-select.d.ts +27 -0
- package/dist/types/components/tg-session-expired/tg-session-expired.d.ts +9 -0
- package/dist/types/components/tg-sidebar/tg-sidebar.d.ts +20 -0
- package/dist/types/components/tg-skeleton/tg-skeleton.d.ts +8 -0
- package/dist/types/components/tg-slider/tg-slider.d.ts +15 -0
- package/dist/types/components/tg-source-citation/tg-source-citation.d.ts +10 -0
- package/dist/types/components/tg-spinner/tg-spinner.d.ts +16 -0
- package/dist/types/components/tg-stat-widget/tg-stat-widget.d.ts +9 -0
- package/dist/types/components/tg-status-badge/tg-status-badge.d.ts +7 -0
- package/dist/types/components/tg-stepper/tg-stepper.d.ts +11 -0
- package/dist/types/components/tg-stepper-input/tg-stepper-input.d.ts +15 -0
- package/dist/types/components/tg-streaming-response/tg-streaming-response.d.ts +7 -0
- package/dist/types/components/tg-switch/tg-switch.d.ts +12 -0
- package/dist/types/components/tg-table/tg-table.d.ts +30 -0
- package/dist/types/components/tg-tabs/tg-tabs.d.ts +18 -0
- package/dist/types/components/tg-tag/tg-tag.d.ts +10 -0
- package/dist/types/components/tg-textarea/tg-textarea.d.ts +23 -0
- package/dist/types/components/tg-time-picker/tg-time-picker.d.ts +16 -0
- package/dist/types/components/tg-timeline/tg-timeline.d.ts +13 -0
- package/dist/types/components/tg-toast/tg-toast.d.ts +17 -0
- package/dist/types/components/tg-token-usage/tg-token-usage.d.ts +10 -0
- package/dist/types/components/tg-tooltip/tg-tooltip.d.ts +10 -0
- package/dist/types/components/tg-tree-view/tg-tree-view.d.ts +17 -0
- package/dist/types/components/tg-undo-snackbar/tg-undo-snackbar.d.ts +11 -0
- package/dist/types/components/tg-video-player/tg-video-player.d.ts +7 -0
- package/dist/types/components/tg-wizard-nav/tg-wizard-nav.d.ts +15 -0
- package/dist/types/components.d.ts +5028 -0
- package/dist/types/index.d.ts +8 -0
- package/dist/types/stencil-public-runtime.d.ts +1860 -0
- package/loader/cdn.js +1 -0
- package/loader/index.cjs.js +1 -0
- package/loader/index.d.ts +24 -0
- package/loader/index.es2017.js +1 -0
- package/loader/index.js +2 -0
- package/package.json +74 -0
|
@@ -0,0 +1,194 @@
|
|
|
1
|
+
import { h, Host } from "@stencil/core";
|
|
2
|
+
export class TgChat {
|
|
3
|
+
constructor() {
|
|
4
|
+
this.chatTitle = 'Teranga AI';
|
|
5
|
+
this.botInitial = 'T';
|
|
6
|
+
this.placeholder = 'Écrivez votre message…';
|
|
7
|
+
this.messages = [];
|
|
8
|
+
this.typing = false;
|
|
9
|
+
this.inputValue = '';
|
|
10
|
+
this.handleSend = () => {
|
|
11
|
+
const text = this.inputValue.trim();
|
|
12
|
+
if (!text)
|
|
13
|
+
return;
|
|
14
|
+
this.tgSend.emit(text);
|
|
15
|
+
this.inputValue = '';
|
|
16
|
+
};
|
|
17
|
+
this.handleKeyDown = (e) => {
|
|
18
|
+
if (e.key === 'Enter' && !e.shiftKey) {
|
|
19
|
+
e.preventDefault();
|
|
20
|
+
this.handleSend();
|
|
21
|
+
}
|
|
22
|
+
};
|
|
23
|
+
}
|
|
24
|
+
get parsedMessages() {
|
|
25
|
+
if (typeof this.messages === 'string') {
|
|
26
|
+
try {
|
|
27
|
+
return JSON.parse(this.messages);
|
|
28
|
+
}
|
|
29
|
+
catch (_a) {
|
|
30
|
+
return [];
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
return this.messages;
|
|
34
|
+
}
|
|
35
|
+
componentDidUpdate() {
|
|
36
|
+
this.scrollToBottom();
|
|
37
|
+
}
|
|
38
|
+
scrollToBottom() {
|
|
39
|
+
if (this.messagesRef) {
|
|
40
|
+
this.messagesRef.scrollTop = this.messagesRef.scrollHeight;
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
render() {
|
|
44
|
+
const msgs = this.parsedMessages;
|
|
45
|
+
const sendIcon = `<svg viewBox="0 0 20 20" fill="currentColor"><path d="M3.105 2.289a.75.75 0 00-.826.95l1.414 4.925A1.5 1.5 0 005.135 9.25H10.5a.75.75 0 010 1.5H5.135a1.5 1.5 0 00-1.442 1.086l-1.414 4.926a.75.75 0 00.826.95l14.095-5.638a.75.75 0 000-1.39L3.105 2.289z"/></svg>`;
|
|
46
|
+
return (h(Host, { key: '3c07f4d1c6c599cf0d35868d3ffe03994fdd5d19' }, h("div", { key: '822715425ecbce20177e6e7733dfc4d05d2db5ed', class: "tg-chat" }, h("div", { key: '0b0df62a9c73f7ff39beac69be771a339b0272f3', class: "tg-chat__header" }, h("div", { key: 'e1b2d914c8676ae17617b559cdeb7d8ecddf6ae4', class: "tg-chat__avatar" }, this.botInitial), h("div", { key: '6599d0a5c87221500339590925a91e00ec622ff3' }, h("div", { key: 'a814d5d5566324592a9916b147017b6e70bb5045', class: "tg-chat__name" }, this.chatTitle), h("div", { key: 'f6c60c941406e25a69df2d4acffc40103488d070', class: "tg-chat__status" }, this.typing ? 'En cours de saisie…' : 'En ligne'))), h("div", { key: '97d71ad1679aeab0083265192429fd8602f7cba8', class: "tg-chat__messages", ref: el => (this.messagesRef = el) }, msgs.map(msg => (h("div", { class: { 'tg-chat__bubble-row': true, [`tg-chat__bubble-row--${msg.role}`]: true }, key: msg.id }, msg.role === 'bot' && h("div", { class: "tg-chat__avatar", style: { width: '28px', height: '28px', fontSize: '0.7rem' } }, this.botInitial), h("div", null, h("div", { class: { 'tg-chat__bubble': true, [`tg-chat__bubble--${msg.role}`]: true } }, msg.content), msg.time && h("div", { class: "tg-chat__time" }, msg.time))))), this.typing && (h("div", { key: 'd50dc27b7714a270e748ab275926021dceb0639c', class: "tg-chat__bubble-row" }, h("div", { key: '452cd4e105b619acc2ba713b95b829cca12ee4d7', class: "tg-chat__avatar", style: { width: '28px', height: '28px', fontSize: '0.7rem' } }, this.botInitial), h("div", { key: '5f07a0fcc43e7a6ffd2b7a0e90f2c2d537a678ec', class: "tg-chat__typing" }, h("span", { key: 'a85767e97c3d77ad5fa793aa43e65792cc4517fc', class: "tg-chat__typing-dot" }), h("span", { key: '7a57588d308703763e816cac5a3cbf137753dbf6', class: "tg-chat__typing-dot" }), h("span", { key: '416b6cca53977055fba5d52bf76f024fe3ce53fc', class: "tg-chat__typing-dot" }))))), h("div", { key: '3c0c6dc9e4af5080213568e41c49635933bd9fbb', class: "tg-chat__composer" }, h("textarea", { key: 'c0a43e3e12b0e1ed3e6f75181939e42a1839107a', class: "tg-chat__input", placeholder: this.placeholder, rows: 1, value: this.inputValue, onInput: (e) => (this.inputValue = e.target.value), onKeyDown: this.handleKeyDown }), h("button", { key: 'f8d15458a911b1731798533b28fb4eff754db991', class: "tg-chat__send", onClick: this.handleSend, disabled: !this.inputValue.trim(), "aria-label": "Envoyer", innerHTML: sendIcon })))));
|
|
47
|
+
}
|
|
48
|
+
static get is() { return "tg-chat"; }
|
|
49
|
+
static get encapsulation() { return "shadow"; }
|
|
50
|
+
static get originalStyleUrls() {
|
|
51
|
+
return {
|
|
52
|
+
"$": ["tg-chat.css"]
|
|
53
|
+
};
|
|
54
|
+
}
|
|
55
|
+
static get styleUrls() {
|
|
56
|
+
return {
|
|
57
|
+
"$": ["tg-chat.css"]
|
|
58
|
+
};
|
|
59
|
+
}
|
|
60
|
+
static get properties() {
|
|
61
|
+
return {
|
|
62
|
+
"chatTitle": {
|
|
63
|
+
"type": "string",
|
|
64
|
+
"mutable": false,
|
|
65
|
+
"complexType": {
|
|
66
|
+
"original": "string",
|
|
67
|
+
"resolved": "string",
|
|
68
|
+
"references": {}
|
|
69
|
+
},
|
|
70
|
+
"required": false,
|
|
71
|
+
"optional": false,
|
|
72
|
+
"docs": {
|
|
73
|
+
"tags": [],
|
|
74
|
+
"text": ""
|
|
75
|
+
},
|
|
76
|
+
"getter": false,
|
|
77
|
+
"setter": false,
|
|
78
|
+
"reflect": false,
|
|
79
|
+
"attribute": "chat-title",
|
|
80
|
+
"defaultValue": "'Teranga AI'"
|
|
81
|
+
},
|
|
82
|
+
"botInitial": {
|
|
83
|
+
"type": "string",
|
|
84
|
+
"mutable": false,
|
|
85
|
+
"complexType": {
|
|
86
|
+
"original": "string",
|
|
87
|
+
"resolved": "string",
|
|
88
|
+
"references": {}
|
|
89
|
+
},
|
|
90
|
+
"required": false,
|
|
91
|
+
"optional": false,
|
|
92
|
+
"docs": {
|
|
93
|
+
"tags": [],
|
|
94
|
+
"text": ""
|
|
95
|
+
},
|
|
96
|
+
"getter": false,
|
|
97
|
+
"setter": false,
|
|
98
|
+
"reflect": false,
|
|
99
|
+
"attribute": "bot-initial",
|
|
100
|
+
"defaultValue": "'T'"
|
|
101
|
+
},
|
|
102
|
+
"placeholder": {
|
|
103
|
+
"type": "string",
|
|
104
|
+
"mutable": false,
|
|
105
|
+
"complexType": {
|
|
106
|
+
"original": "string",
|
|
107
|
+
"resolved": "string",
|
|
108
|
+
"references": {}
|
|
109
|
+
},
|
|
110
|
+
"required": false,
|
|
111
|
+
"optional": false,
|
|
112
|
+
"docs": {
|
|
113
|
+
"tags": [],
|
|
114
|
+
"text": ""
|
|
115
|
+
},
|
|
116
|
+
"getter": false,
|
|
117
|
+
"setter": false,
|
|
118
|
+
"reflect": false,
|
|
119
|
+
"attribute": "placeholder",
|
|
120
|
+
"defaultValue": "'\u00C9crivez votre message\u2026'"
|
|
121
|
+
},
|
|
122
|
+
"messages": {
|
|
123
|
+
"type": "string",
|
|
124
|
+
"mutable": false,
|
|
125
|
+
"complexType": {
|
|
126
|
+
"original": "string | TgChatMessage[]",
|
|
127
|
+
"resolved": "TgChatMessage[] | string",
|
|
128
|
+
"references": {
|
|
129
|
+
"TgChatMessage": {
|
|
130
|
+
"location": "local",
|
|
131
|
+
"path": "/Users/mahykane/work/Teranga-Design-Systems/packages/components/src/components/tg-chat/tg-chat.tsx",
|
|
132
|
+
"id": "src/components/tg-chat/tg-chat.tsx::TgChatMessage"
|
|
133
|
+
}
|
|
134
|
+
}
|
|
135
|
+
},
|
|
136
|
+
"required": false,
|
|
137
|
+
"optional": false,
|
|
138
|
+
"docs": {
|
|
139
|
+
"tags": [],
|
|
140
|
+
"text": ""
|
|
141
|
+
},
|
|
142
|
+
"getter": false,
|
|
143
|
+
"setter": false,
|
|
144
|
+
"reflect": false,
|
|
145
|
+
"attribute": "messages",
|
|
146
|
+
"defaultValue": "[]"
|
|
147
|
+
},
|
|
148
|
+
"typing": {
|
|
149
|
+
"type": "boolean",
|
|
150
|
+
"mutable": false,
|
|
151
|
+
"complexType": {
|
|
152
|
+
"original": "boolean",
|
|
153
|
+
"resolved": "boolean",
|
|
154
|
+
"references": {}
|
|
155
|
+
},
|
|
156
|
+
"required": false,
|
|
157
|
+
"optional": false,
|
|
158
|
+
"docs": {
|
|
159
|
+
"tags": [],
|
|
160
|
+
"text": ""
|
|
161
|
+
},
|
|
162
|
+
"getter": false,
|
|
163
|
+
"setter": false,
|
|
164
|
+
"reflect": false,
|
|
165
|
+
"attribute": "typing",
|
|
166
|
+
"defaultValue": "false"
|
|
167
|
+
}
|
|
168
|
+
};
|
|
169
|
+
}
|
|
170
|
+
static get states() {
|
|
171
|
+
return {
|
|
172
|
+
"inputValue": {}
|
|
173
|
+
};
|
|
174
|
+
}
|
|
175
|
+
static get events() {
|
|
176
|
+
return [{
|
|
177
|
+
"method": "tgSend",
|
|
178
|
+
"name": "tgSend",
|
|
179
|
+
"bubbles": true,
|
|
180
|
+
"cancelable": true,
|
|
181
|
+
"composed": true,
|
|
182
|
+
"docs": {
|
|
183
|
+
"tags": [],
|
|
184
|
+
"text": ""
|
|
185
|
+
},
|
|
186
|
+
"complexType": {
|
|
187
|
+
"original": "string",
|
|
188
|
+
"resolved": "string",
|
|
189
|
+
"references": {}
|
|
190
|
+
}
|
|
191
|
+
}];
|
|
192
|
+
}
|
|
193
|
+
static get elementRef() { return "el"; }
|
|
194
|
+
}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
:host { display: block; }
|
|
2
|
+
.tg-cm { display: flex; gap: var(--tg-spacing-2); font-family: var(--tg-font-family-sans); margin-bottom: var(--tg-spacing-3); animation: tg-cm-in 0.2s var(--tg-ease-out); }
|
|
3
|
+
@keyframes tg-cm-in { from { opacity: 0; transform: translateY(4px); } to { opacity: 1; transform: translateY(0); } }
|
|
4
|
+
.tg-cm--user { flex-direction: row-reverse; }
|
|
5
|
+
.tg-cm__avatar { width: 2rem; height: 2rem; border-radius: 50%; display: flex; align-items: center; justify-content: center; font-size: 1rem; flex-shrink: 0; }
|
|
6
|
+
.tg-cm--assistant .tg-cm__avatar { background: var(--tg-color-primary-subtle); }
|
|
7
|
+
.tg-cm--user .tg-cm__avatar { background: var(--tg-color-surface-sunken); }
|
|
8
|
+
.tg-cm__bubble { padding: var(--tg-spacing-3); border-radius: var(--tg-radius-xl); font-size: var(--tg-font-size-sm); line-height: var(--tg-line-height-relaxed); max-width: 80%; }
|
|
9
|
+
.tg-cm--assistant .tg-cm__bubble { background: var(--tg-color-surface-raised); border: 1px solid var(--tg-color-border); color: var(--tg-color-text-primary); border-bottom-left-radius: var(--tg-radius-sm); }
|
|
10
|
+
.tg-cm--user .tg-cm__bubble { background: var(--tg-color-primary); color: var(--tg-color-primary-on); border-bottom-right-radius: var(--tg-radius-sm); margin-left: auto; }
|
|
11
|
+
.tg-cm--system .tg-cm__bubble { background: var(--tg-color-warning-subtle); color: var(--tg-color-warning); text-align: center; max-width: 100%; font-size: var(--tg-font-size-xs); }
|
|
12
|
+
.tg-cm__cursor { display: inline-block; width: 2px; height: 1em; background: var(--tg-color-primary); animation: tg-cm-blink 0.8s infinite; vertical-align: middle; margin-left: 2px; }
|
|
13
|
+
@keyframes tg-cm-blink { 0%, 100% { opacity: 1; } 50% { opacity: 0; } }
|
|
14
|
+
.tg-cm__time { display: block; font-size: var(--tg-font-size-xs); color: var(--tg-color-text-disabled); margin-top: var(--tg-spacing-0-5); }
|
|
15
|
+
.tg-cm--user .tg-cm__time { text-align: right; }
|
|
@@ -0,0 +1,104 @@
|
|
|
1
|
+
import { h, Host } from "@stencil/core";
|
|
2
|
+
export class TgChatMessage {
|
|
3
|
+
constructor() {
|
|
4
|
+
this.role = 'user';
|
|
5
|
+
this.streaming = false;
|
|
6
|
+
}
|
|
7
|
+
render() {
|
|
8
|
+
return (h(Host, { key: '8f33ddbaf10f4111a7747d18afd4b8ae1ed6d9b2' }, h("div", { key: '4f0fef482ab9e2070a4a2ee5494bbcd9cd9c5f44', class: 'tg-cm tg-cm--' + this.role }, h("div", { key: 'ab5528b751f5947e2a2450dbb99ef777ce43562a', class: "tg-cm__avatar" }, this.avatar || (this.role === 'user' ? '\ud83d\udc64' : '\ud83e\udd16')), h("div", { key: '5cc89064ada68b7adf4ed56067acbfe2474610ad', class: "tg-cm__body" }, h("div", { key: '58b8b2b1d1748b9538824fa43a3c229fe4225a6f', class: "tg-cm__bubble" }, h("slot", { key: '42eaec7d0dcea1b24bdd37e1c9063f1eca3b97a4' }), this.streaming && h("span", { key: '500c8e09faf030ebee17ea6a05017b2fb1072c3a', class: "tg-cm__cursor" })), this.timestamp && h("span", { key: '66fc731892b0c1a15462f6e7868dca87b9e73fca', class: "tg-cm__time" }, this.timestamp)))));
|
|
9
|
+
}
|
|
10
|
+
static get is() { return "tg-chat-message"; }
|
|
11
|
+
static get encapsulation() { return "shadow"; }
|
|
12
|
+
static get originalStyleUrls() {
|
|
13
|
+
return {
|
|
14
|
+
"$": ["tg-chat-message.css"]
|
|
15
|
+
};
|
|
16
|
+
}
|
|
17
|
+
static get styleUrls() {
|
|
18
|
+
return {
|
|
19
|
+
"$": ["tg-chat-message.css"]
|
|
20
|
+
};
|
|
21
|
+
}
|
|
22
|
+
static get properties() {
|
|
23
|
+
return {
|
|
24
|
+
"role": {
|
|
25
|
+
"type": "string",
|
|
26
|
+
"mutable": false,
|
|
27
|
+
"complexType": {
|
|
28
|
+
"original": "'user' | 'assistant' | 'system'",
|
|
29
|
+
"resolved": "\"assistant\" | \"system\" | \"user\"",
|
|
30
|
+
"references": {}
|
|
31
|
+
},
|
|
32
|
+
"required": false,
|
|
33
|
+
"optional": false,
|
|
34
|
+
"docs": {
|
|
35
|
+
"tags": [],
|
|
36
|
+
"text": ""
|
|
37
|
+
},
|
|
38
|
+
"getter": false,
|
|
39
|
+
"setter": false,
|
|
40
|
+
"reflect": false,
|
|
41
|
+
"attribute": "role",
|
|
42
|
+
"defaultValue": "'user'"
|
|
43
|
+
},
|
|
44
|
+
"avatar": {
|
|
45
|
+
"type": "string",
|
|
46
|
+
"mutable": false,
|
|
47
|
+
"complexType": {
|
|
48
|
+
"original": "string",
|
|
49
|
+
"resolved": "string | undefined",
|
|
50
|
+
"references": {}
|
|
51
|
+
},
|
|
52
|
+
"required": false,
|
|
53
|
+
"optional": true,
|
|
54
|
+
"docs": {
|
|
55
|
+
"tags": [],
|
|
56
|
+
"text": ""
|
|
57
|
+
},
|
|
58
|
+
"getter": false,
|
|
59
|
+
"setter": false,
|
|
60
|
+
"reflect": false,
|
|
61
|
+
"attribute": "avatar"
|
|
62
|
+
},
|
|
63
|
+
"timestamp": {
|
|
64
|
+
"type": "string",
|
|
65
|
+
"mutable": false,
|
|
66
|
+
"complexType": {
|
|
67
|
+
"original": "string",
|
|
68
|
+
"resolved": "string | undefined",
|
|
69
|
+
"references": {}
|
|
70
|
+
},
|
|
71
|
+
"required": false,
|
|
72
|
+
"optional": true,
|
|
73
|
+
"docs": {
|
|
74
|
+
"tags": [],
|
|
75
|
+
"text": ""
|
|
76
|
+
},
|
|
77
|
+
"getter": false,
|
|
78
|
+
"setter": false,
|
|
79
|
+
"reflect": false,
|
|
80
|
+
"attribute": "timestamp"
|
|
81
|
+
},
|
|
82
|
+
"streaming": {
|
|
83
|
+
"type": "boolean",
|
|
84
|
+
"mutable": false,
|
|
85
|
+
"complexType": {
|
|
86
|
+
"original": "boolean",
|
|
87
|
+
"resolved": "boolean",
|
|
88
|
+
"references": {}
|
|
89
|
+
},
|
|
90
|
+
"required": false,
|
|
91
|
+
"optional": false,
|
|
92
|
+
"docs": {
|
|
93
|
+
"tags": [],
|
|
94
|
+
"text": ""
|
|
95
|
+
},
|
|
96
|
+
"getter": false,
|
|
97
|
+
"setter": false,
|
|
98
|
+
"reflect": false,
|
|
99
|
+
"attribute": "streaming",
|
|
100
|
+
"defaultValue": "false"
|
|
101
|
+
}
|
|
102
|
+
};
|
|
103
|
+
}
|
|
104
|
+
}
|
|
@@ -0,0 +1,94 @@
|
|
|
1
|
+
/* ============================================================
|
|
2
|
+
tg-checkbox — Teranga Design System
|
|
3
|
+
============================================================ */
|
|
4
|
+
|
|
5
|
+
:host {
|
|
6
|
+
display: inline-flex;
|
|
7
|
+
}
|
|
8
|
+
|
|
9
|
+
.tg-checkbox {
|
|
10
|
+
display: inline-flex;
|
|
11
|
+
align-items: flex-start;
|
|
12
|
+
gap: var(--tg-spacing-2);
|
|
13
|
+
cursor: pointer;
|
|
14
|
+
font-family: var(--tg-font-family-sans);
|
|
15
|
+
user-select: none;
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
.tg-checkbox--disabled {
|
|
19
|
+
opacity: 0.5;
|
|
20
|
+
cursor: not-allowed;
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
.tg-checkbox__input {
|
|
24
|
+
position: absolute;
|
|
25
|
+
opacity: 0;
|
|
26
|
+
width: 0;
|
|
27
|
+
height: 0;
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
.tg-checkbox__box {
|
|
31
|
+
position: relative;
|
|
32
|
+
width: 1.125rem;
|
|
33
|
+
height: 1.125rem;
|
|
34
|
+
flex-shrink: 0;
|
|
35
|
+
margin-top: 0.125rem;
|
|
36
|
+
border: 2px solid var(--tg-color-border-strong);
|
|
37
|
+
border-radius: var(--tg-radius-sm);
|
|
38
|
+
background: var(--tg-color-surface-raised);
|
|
39
|
+
transition: all var(--tg-duration-fast) var(--tg-ease-default);
|
|
40
|
+
display: flex;
|
|
41
|
+
align-items: center;
|
|
42
|
+
justify-content: center;
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
.tg-checkbox__input:checked + .tg-checkbox__box {
|
|
46
|
+
background: var(--tg-color-primary);
|
|
47
|
+
border-color: var(--tg-color-primary);
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
.tg-checkbox__input:checked + .tg-checkbox__box .tg-checkbox__icon {
|
|
51
|
+
opacity: 1;
|
|
52
|
+
transform: scale(1);
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
.tg-checkbox__input:focus-visible + .tg-checkbox__box {
|
|
56
|
+
box-shadow: var(--tg-focus-ring);
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
.tg-checkbox__input:indeterminate + .tg-checkbox__box {
|
|
60
|
+
background: var(--tg-color-primary);
|
|
61
|
+
border-color: var(--tg-color-primary);
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
.tg-checkbox__icon {
|
|
65
|
+
width: 0.75rem;
|
|
66
|
+
height: 0.75rem;
|
|
67
|
+
color: white;
|
|
68
|
+
opacity: 0;
|
|
69
|
+
transform: scale(0.5);
|
|
70
|
+
transition: all var(--tg-duration-fast) var(--tg-ease-bounce);
|
|
71
|
+
}
|
|
72
|
+
|
|
73
|
+
.tg-checkbox__content {
|
|
74
|
+
display: flex;
|
|
75
|
+
flex-direction: column;
|
|
76
|
+
gap: var(--tg-spacing-0-5);
|
|
77
|
+
}
|
|
78
|
+
|
|
79
|
+
.tg-checkbox__label-text {
|
|
80
|
+
font-size: var(--tg-font-size-sm);
|
|
81
|
+
color: var(--tg-color-text-primary);
|
|
82
|
+
line-height: var(--tg-line-height-snug);
|
|
83
|
+
}
|
|
84
|
+
|
|
85
|
+
.tg-checkbox__description {
|
|
86
|
+
font-size: var(--tg-font-size-xs);
|
|
87
|
+
color: var(--tg-color-text-secondary);
|
|
88
|
+
line-height: var(--tg-line-height-normal);
|
|
89
|
+
}
|
|
90
|
+
|
|
91
|
+
/* Error state */
|
|
92
|
+
.tg-checkbox--invalid .tg-checkbox__box {
|
|
93
|
+
border-color: var(--tg-color-danger);
|
|
94
|
+
}
|
|
@@ -0,0 +1,210 @@
|
|
|
1
|
+
import { h, Host } from "@stencil/core";
|
|
2
|
+
export class TgCheckbox {
|
|
3
|
+
constructor() {
|
|
4
|
+
this.checked = false;
|
|
5
|
+
this.disabled = false;
|
|
6
|
+
this.indeterminate = false;
|
|
7
|
+
this.handleChange = () => {
|
|
8
|
+
if (this.disabled)
|
|
9
|
+
return;
|
|
10
|
+
this.checked = !this.checked;
|
|
11
|
+
this.tgChange.emit(this.checked);
|
|
12
|
+
};
|
|
13
|
+
}
|
|
14
|
+
render() {
|
|
15
|
+
return (h(Host, { key: '177af6bbb10f104f97eff0b0bf6287cded07dbba' }, h("label", { key: 'c851c983bce7bb3a26831dcd32ce646371a8e078', class: {
|
|
16
|
+
'tg-checkbox': true,
|
|
17
|
+
'tg-checkbox--disabled': this.disabled,
|
|
18
|
+
'tg-checkbox--invalid': !!this.error,
|
|
19
|
+
} }, h("input", Object.assign({ key: 'e11145030298a01c20d4d2e6d42b5622f6f11141', type: "checkbox", class: "tg-checkbox__input", checked: this.checked, disabled: this.disabled, indeterminate: this.indeterminate }, (this.name ? { name: this.name } : {}), (this.value ? { value: this.value } : {}), { onChange: this.handleChange })), h("span", { key: '6c67f6e2aa4bdd1f9a76b914ba3ba97c1d1f2e3d', class: "tg-checkbox__box" }, h("svg", { key: '8c146d3de219541244f5c7487c1512dca05a357f', class: "tg-checkbox__icon", viewBox: "0 0 12 12", fill: "none" }, this.indeterminate ? (h("line", { x1: "2", y1: "6", x2: "10", y2: "6", stroke: "currentColor", "stroke-width": "2", "stroke-linecap": "round" })) : (h("path", { d: "M2 6l3 3 5-6", stroke: "currentColor", "stroke-width": "2", "stroke-linecap": "round", "stroke-linejoin": "round" })))), (this.label || this.description) && (h("span", { key: 'c27ad8bc80ce1ba645ca8e8fa41d7967b3896606', class: "tg-checkbox__content" }, this.label && h("span", { key: '46e3d0a598faac5495aa267c70ab2e8b77ab2767', class: "tg-checkbox__label-text" }, this.label), this.description && h("span", { key: '060b9bc82bbca637012140d0d5eebaa58594c2b7', class: "tg-checkbox__description" }, this.description))))));
|
|
20
|
+
}
|
|
21
|
+
static get is() { return "tg-checkbox"; }
|
|
22
|
+
static get encapsulation() { return "shadow"; }
|
|
23
|
+
static get originalStyleUrls() {
|
|
24
|
+
return {
|
|
25
|
+
"$": ["tg-checkbox.css"]
|
|
26
|
+
};
|
|
27
|
+
}
|
|
28
|
+
static get styleUrls() {
|
|
29
|
+
return {
|
|
30
|
+
"$": ["tg-checkbox.css"]
|
|
31
|
+
};
|
|
32
|
+
}
|
|
33
|
+
static get properties() {
|
|
34
|
+
return {
|
|
35
|
+
"label": {
|
|
36
|
+
"type": "string",
|
|
37
|
+
"mutable": false,
|
|
38
|
+
"complexType": {
|
|
39
|
+
"original": "string",
|
|
40
|
+
"resolved": "string | undefined",
|
|
41
|
+
"references": {}
|
|
42
|
+
},
|
|
43
|
+
"required": false,
|
|
44
|
+
"optional": true,
|
|
45
|
+
"docs": {
|
|
46
|
+
"tags": [],
|
|
47
|
+
"text": ""
|
|
48
|
+
},
|
|
49
|
+
"getter": false,
|
|
50
|
+
"setter": false,
|
|
51
|
+
"reflect": false,
|
|
52
|
+
"attribute": "label"
|
|
53
|
+
},
|
|
54
|
+
"description": {
|
|
55
|
+
"type": "string",
|
|
56
|
+
"mutable": false,
|
|
57
|
+
"complexType": {
|
|
58
|
+
"original": "string",
|
|
59
|
+
"resolved": "string | undefined",
|
|
60
|
+
"references": {}
|
|
61
|
+
},
|
|
62
|
+
"required": false,
|
|
63
|
+
"optional": true,
|
|
64
|
+
"docs": {
|
|
65
|
+
"tags": [],
|
|
66
|
+
"text": ""
|
|
67
|
+
},
|
|
68
|
+
"getter": false,
|
|
69
|
+
"setter": false,
|
|
70
|
+
"reflect": false,
|
|
71
|
+
"attribute": "description"
|
|
72
|
+
},
|
|
73
|
+
"checked": {
|
|
74
|
+
"type": "boolean",
|
|
75
|
+
"mutable": true,
|
|
76
|
+
"complexType": {
|
|
77
|
+
"original": "boolean",
|
|
78
|
+
"resolved": "boolean",
|
|
79
|
+
"references": {}
|
|
80
|
+
},
|
|
81
|
+
"required": false,
|
|
82
|
+
"optional": false,
|
|
83
|
+
"docs": {
|
|
84
|
+
"tags": [],
|
|
85
|
+
"text": ""
|
|
86
|
+
},
|
|
87
|
+
"getter": false,
|
|
88
|
+
"setter": false,
|
|
89
|
+
"reflect": true,
|
|
90
|
+
"attribute": "checked",
|
|
91
|
+
"defaultValue": "false"
|
|
92
|
+
},
|
|
93
|
+
"disabled": {
|
|
94
|
+
"type": "boolean",
|
|
95
|
+
"mutable": false,
|
|
96
|
+
"complexType": {
|
|
97
|
+
"original": "boolean",
|
|
98
|
+
"resolved": "boolean",
|
|
99
|
+
"references": {}
|
|
100
|
+
},
|
|
101
|
+
"required": false,
|
|
102
|
+
"optional": false,
|
|
103
|
+
"docs": {
|
|
104
|
+
"tags": [],
|
|
105
|
+
"text": ""
|
|
106
|
+
},
|
|
107
|
+
"getter": false,
|
|
108
|
+
"setter": false,
|
|
109
|
+
"reflect": true,
|
|
110
|
+
"attribute": "disabled",
|
|
111
|
+
"defaultValue": "false"
|
|
112
|
+
},
|
|
113
|
+
"indeterminate": {
|
|
114
|
+
"type": "boolean",
|
|
115
|
+
"mutable": false,
|
|
116
|
+
"complexType": {
|
|
117
|
+
"original": "boolean",
|
|
118
|
+
"resolved": "boolean",
|
|
119
|
+
"references": {}
|
|
120
|
+
},
|
|
121
|
+
"required": false,
|
|
122
|
+
"optional": false,
|
|
123
|
+
"docs": {
|
|
124
|
+
"tags": [],
|
|
125
|
+
"text": ""
|
|
126
|
+
},
|
|
127
|
+
"getter": false,
|
|
128
|
+
"setter": false,
|
|
129
|
+
"reflect": true,
|
|
130
|
+
"attribute": "indeterminate",
|
|
131
|
+
"defaultValue": "false"
|
|
132
|
+
},
|
|
133
|
+
"error": {
|
|
134
|
+
"type": "string",
|
|
135
|
+
"mutable": false,
|
|
136
|
+
"complexType": {
|
|
137
|
+
"original": "string",
|
|
138
|
+
"resolved": "string | undefined",
|
|
139
|
+
"references": {}
|
|
140
|
+
},
|
|
141
|
+
"required": false,
|
|
142
|
+
"optional": true,
|
|
143
|
+
"docs": {
|
|
144
|
+
"tags": [],
|
|
145
|
+
"text": ""
|
|
146
|
+
},
|
|
147
|
+
"getter": false,
|
|
148
|
+
"setter": false,
|
|
149
|
+
"reflect": false,
|
|
150
|
+
"attribute": "error"
|
|
151
|
+
},
|
|
152
|
+
"name": {
|
|
153
|
+
"type": "string",
|
|
154
|
+
"mutable": false,
|
|
155
|
+
"complexType": {
|
|
156
|
+
"original": "string",
|
|
157
|
+
"resolved": "string | undefined",
|
|
158
|
+
"references": {}
|
|
159
|
+
},
|
|
160
|
+
"required": false,
|
|
161
|
+
"optional": true,
|
|
162
|
+
"docs": {
|
|
163
|
+
"tags": [],
|
|
164
|
+
"text": ""
|
|
165
|
+
},
|
|
166
|
+
"getter": false,
|
|
167
|
+
"setter": false,
|
|
168
|
+
"reflect": false,
|
|
169
|
+
"attribute": "name"
|
|
170
|
+
},
|
|
171
|
+
"value": {
|
|
172
|
+
"type": "string",
|
|
173
|
+
"mutable": false,
|
|
174
|
+
"complexType": {
|
|
175
|
+
"original": "string",
|
|
176
|
+
"resolved": "string | undefined",
|
|
177
|
+
"references": {}
|
|
178
|
+
},
|
|
179
|
+
"required": false,
|
|
180
|
+
"optional": true,
|
|
181
|
+
"docs": {
|
|
182
|
+
"tags": [],
|
|
183
|
+
"text": ""
|
|
184
|
+
},
|
|
185
|
+
"getter": false,
|
|
186
|
+
"setter": false,
|
|
187
|
+
"reflect": false,
|
|
188
|
+
"attribute": "value"
|
|
189
|
+
}
|
|
190
|
+
};
|
|
191
|
+
}
|
|
192
|
+
static get events() {
|
|
193
|
+
return [{
|
|
194
|
+
"method": "tgChange",
|
|
195
|
+
"name": "tgChange",
|
|
196
|
+
"bubbles": true,
|
|
197
|
+
"cancelable": true,
|
|
198
|
+
"composed": true,
|
|
199
|
+
"docs": {
|
|
200
|
+
"tags": [],
|
|
201
|
+
"text": ""
|
|
202
|
+
},
|
|
203
|
+
"complexType": {
|
|
204
|
+
"original": "boolean",
|
|
205
|
+
"resolved": "boolean",
|
|
206
|
+
"references": {}
|
|
207
|
+
}
|
|
208
|
+
}];
|
|
209
|
+
}
|
|
210
|
+
}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
:host { display: block; }
|
|
2
|
+
.tg-combobox { position: relative; font-family: var(--tg-font-family-sans); }
|
|
3
|
+
.tg-combobox__label { display: block; font-size: var(--tg-font-size-sm); font-weight: var(--tg-font-weight-medium); color: var(--tg-color-text-primary); margin-bottom: var(--tg-spacing-1-5); }
|
|
4
|
+
.tg-combobox__input-wrap { display: flex; align-items: center; border: 1px solid var(--tg-color-border-strong); border-radius: var(--tg-radius-lg); background: var(--tg-color-surface-raised); transition: border-color var(--tg-duration-fast) var(--tg-ease-default), box-shadow var(--tg-duration-fast) var(--tg-ease-default); }
|
|
5
|
+
.tg-combobox__input-wrap:focus-within { border-color: var(--tg-color-border-focus); box-shadow: var(--tg-focus-ring); }
|
|
6
|
+
.tg-combobox__input-wrap--invalid { border-color: var(--tg-color-danger); }
|
|
7
|
+
.tg-combobox__input-wrap--disabled { opacity: 0.5; cursor: not-allowed; }
|
|
8
|
+
.tg-combobox__input { flex: 1; border: none; outline: none; background: transparent; color: var(--tg-color-text-primary); font-family: inherit; padding: 0 var(--tg-spacing-3); width: 100%; }
|
|
9
|
+
.tg-combobox__input::placeholder { color: var(--tg-color-text-disabled); }
|
|
10
|
+
.tg-combobox--sm .tg-combobox__input { height: 2rem; font-size: var(--tg-font-size-xs); }
|
|
11
|
+
.tg-combobox--md .tg-combobox__input { height: 2.5rem; font-size: var(--tg-font-size-sm); }
|
|
12
|
+
.tg-combobox--lg .tg-combobox__input { height: 3rem; font-size: var(--tg-font-size-md); }
|
|
13
|
+
.tg-combobox__chevron { display: flex; align-items: center; padding-right: var(--tg-spacing-2); color: var(--tg-color-text-secondary); transition: transform var(--tg-duration-fast); }
|
|
14
|
+
.tg-combobox__chevron--open { transform: rotate(180deg); }
|
|
15
|
+
.tg-combobox__dropdown { position: absolute; top: 100%; left: 0; right: 0; margin-top: var(--tg-spacing-1); background: var(--tg-color-surface-raised); border: 1px solid var(--tg-color-border); border-radius: var(--tg-radius-lg); box-shadow: var(--tg-shadow-lg); z-index: 1000; max-height: 14rem; overflow-y: auto; padding: var(--tg-spacing-1) 0; list-style: none; animation: tg-combo-enter var(--tg-duration-fast) var(--tg-ease-out); }
|
|
16
|
+
@keyframes tg-combo-enter { from { opacity: 0; transform: translateY(-4px); } to { opacity: 1; transform: translateY(0); } }
|
|
17
|
+
.tg-combobox__option { padding: var(--tg-spacing-2) var(--tg-spacing-3); font-size: var(--tg-font-size-sm); cursor: pointer; color: var(--tg-color-text-primary); transition: background var(--tg-duration-fast); }
|
|
18
|
+
.tg-combobox__option:hover, .tg-combobox__option--focused { background: var(--tg-color-primary-subtle); }
|
|
19
|
+
.tg-combobox__option--selected { color: var(--tg-color-primary); font-weight: var(--tg-font-weight-medium); }
|
|
20
|
+
.tg-combobox__option--disabled { opacity: 0.4; cursor: not-allowed; }
|
|
21
|
+
.tg-combobox__error { margin: var(--tg-spacing-1) 0 0; font-size: var(--tg-font-size-xs); color: var(--tg-color-danger); }
|
|
22
|
+
.tg-combobox__helper { margin: var(--tg-spacing-1) 0 0; font-size: var(--tg-font-size-xs); color: var(--tg-color-text-secondary); }
|