@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,19 @@
|
|
|
1
|
+
:host { display: block; }
|
|
2
|
+
.tg-cal { font-family: var(--tg-font-family-sans); background: var(--tg-color-surface-raised); border: 1px solid var(--tg-color-border); border-radius: var(--tg-radius-xl); padding: var(--tg-spacing-4); }
|
|
3
|
+
.tg-cal__nav { display: flex; align-items: center; justify-content: space-between; margin-bottom: var(--tg-spacing-3); }
|
|
4
|
+
.tg-cal__nav-btn { background: none; border: none; cursor: pointer; font-size: 1.5rem; color: var(--tg-color-text-primary); padding: var(--tg-spacing-1) var(--tg-spacing-2); border-radius: var(--tg-radius-md); }
|
|
5
|
+
.tg-cal__nav-btn:hover { background: var(--tg-color-primary-subtle); }
|
|
6
|
+
.tg-cal__month { font-size: var(--tg-font-size-md); font-weight: var(--tg-font-weight-semibold); }
|
|
7
|
+
.tg-cal__weekdays { display: grid; grid-template-columns: repeat(7, 1fr); margin-bottom: var(--tg-spacing-1); }
|
|
8
|
+
.tg-cal__wd { text-align: center; font-size: var(--tg-font-size-xs); color: var(--tg-color-text-secondary); font-weight: var(--tg-font-weight-medium); padding: var(--tg-spacing-2) 0; }
|
|
9
|
+
.tg-cal__grid { display: grid; grid-template-columns: repeat(7, 1fr); gap: 1px; background: var(--tg-color-border); border: 1px solid var(--tg-color-border); border-radius: var(--tg-radius-lg); overflow: hidden; }
|
|
10
|
+
.tg-cal__cell { min-height: 5rem; padding: var(--tg-spacing-1); background: var(--tg-color-surface-raised); cursor: pointer; }
|
|
11
|
+
.tg-cal__cell:hover { background: var(--tg-color-primary-subtle); }
|
|
12
|
+
.tg-cal__cell--empty { cursor: default; background: var(--tg-color-surface-sunken); }
|
|
13
|
+
.tg-cal__cell--today { background: var(--tg-color-primary-subtle); }
|
|
14
|
+
.tg-cal__day-num { display: block; font-size: var(--tg-font-size-xs); font-weight: var(--tg-font-weight-medium); margin-bottom: var(--tg-spacing-0-5); }
|
|
15
|
+
.tg-cal__event { font-size: 0.625rem; padding: 1px var(--tg-spacing-1); border-radius: var(--tg-radius-sm); margin-bottom: 1px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
|
|
16
|
+
.tg-cal__event--default { background: var(--tg-color-primary-subtle); color: var(--tg-color-primary); }
|
|
17
|
+
.tg-cal__event--success { background: var(--tg-color-success-subtle); color: var(--tg-color-success); }
|
|
18
|
+
.tg-cal__event--warning { background: var(--tg-color-warning-subtle); color: var(--tg-color-warning); }
|
|
19
|
+
.tg-cal__event--danger { background: var(--tg-color-danger-subtle); color: var(--tg-color-danger); }
|
|
@@ -0,0 +1,108 @@
|
|
|
1
|
+
import { h, Host } from "@stencil/core";
|
|
2
|
+
export class TgCalendarView {
|
|
3
|
+
constructor() {
|
|
4
|
+
this.events = [];
|
|
5
|
+
this.viewDate = new Date();
|
|
6
|
+
this.prevMonth = () => { const d = new Date(this.viewDate); d.setMonth(d.getMonth() - 1); this.viewDate = d; };
|
|
7
|
+
this.nextMonth = () => { const d = new Date(this.viewDate); d.setMonth(d.getMonth() + 1); this.viewDate = d; };
|
|
8
|
+
}
|
|
9
|
+
get parsed() {
|
|
10
|
+
if (typeof this.events === 'string') {
|
|
11
|
+
try {
|
|
12
|
+
return JSON.parse(this.events);
|
|
13
|
+
}
|
|
14
|
+
catch (_a) {
|
|
15
|
+
return [];
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
return this.events;
|
|
19
|
+
}
|
|
20
|
+
daysInMonth(y, m) { return new Date(y, m + 1, 0).getDate(); }
|
|
21
|
+
firstDow(y, m) { return new Date(y, m, 1).getDay(); }
|
|
22
|
+
getEvents(day) {
|
|
23
|
+
const y = this.viewDate.getFullYear();
|
|
24
|
+
const m = String(this.viewDate.getMonth() + 1).padStart(2, '0');
|
|
25
|
+
const d = String(day).padStart(2, '0');
|
|
26
|
+
const dateStr = y + '-' + m + '-' + d;
|
|
27
|
+
return this.parsed.filter(e => e.date === dateStr);
|
|
28
|
+
}
|
|
29
|
+
render() {
|
|
30
|
+
const y = this.viewDate.getFullYear();
|
|
31
|
+
const m = this.viewDate.getMonth();
|
|
32
|
+
const days = this.daysInMonth(y, m);
|
|
33
|
+
const first = this.firstDow(y, m);
|
|
34
|
+
const months = ['Janvier', 'F\u00e9vrier', 'Mars', 'Avril', 'Mai', 'Juin', 'Juillet', 'Ao\u00fbt', 'Septembre', 'Octobre', 'Novembre', 'D\u00e9cembre'];
|
|
35
|
+
const dNames = ['Di', 'Lu', 'Ma', 'Me', 'Je', 'Ve', 'Sa'];
|
|
36
|
+
const cells = [];
|
|
37
|
+
for (let i = 0; i < first; i++)
|
|
38
|
+
cells.push(null);
|
|
39
|
+
for (let i = 1; i <= days; i++)
|
|
40
|
+
cells.push(i);
|
|
41
|
+
return (h(Host, { key: '5d19cf4407abf802127e686e26b4ce2e50aa4e48' }, h("div", { key: 'ed361d104dde29bec0e44e90782fb0387e7ec907', class: "tg-cal" }, h("div", { key: 'b386975ff0453e1562352f92cc2362376b278574', class: "tg-cal__nav" }, h("button", { key: '961f0a5748d053dbc4c44bd2cb92d89427ab8fc5', class: "tg-cal__nav-btn", type: "button", onClick: this.prevMonth }, "\\u2039"), h("span", { key: '204c44557e626d4b39dbed6a40b617147bad7eeb', class: "tg-cal__month" }, months[m], " ", y), h("button", { key: '74ec81ffccd6367023aca4b340099a19162d5669', class: "tg-cal__nav-btn", type: "button", onClick: this.nextMonth }, "\\u203a")), h("div", { key: 'c4d5c746da64d14044f46585961a16923d913401', class: "tg-cal__weekdays" }, dNames.map(d => h("span", { class: "tg-cal__wd" }, d))), h("div", { key: '3227acc2de576a8322f847457e840c00b70d1efb', class: "tg-cal__grid" }, cells.map(day => (h("div", { class: { 'tg-cal__cell': true, 'tg-cal__cell--empty': !day, 'tg-cal__cell--today': day !== null && new Date().getDate() === day && new Date().getMonth() === m && new Date().getFullYear() === y }, onClick: () => day && this.tgDateSelect.emit(y + '-' + String(m + 1).padStart(2, '0') + '-' + String(day).padStart(2, '0')) }, day && h("span", { class: "tg-cal__day-num" }, day), day && this.getEvents(day).map(ev => h("div", { class: 'tg-cal__event tg-cal__event--' + (ev.variant || 'default') }, ev.title)))))))));
|
|
42
|
+
}
|
|
43
|
+
static get is() { return "tg-calendar-view"; }
|
|
44
|
+
static get encapsulation() { return "shadow"; }
|
|
45
|
+
static get originalStyleUrls() {
|
|
46
|
+
return {
|
|
47
|
+
"$": ["tg-calendar-view.css"]
|
|
48
|
+
};
|
|
49
|
+
}
|
|
50
|
+
static get styleUrls() {
|
|
51
|
+
return {
|
|
52
|
+
"$": ["tg-calendar-view.css"]
|
|
53
|
+
};
|
|
54
|
+
}
|
|
55
|
+
static get properties() {
|
|
56
|
+
return {
|
|
57
|
+
"events": {
|
|
58
|
+
"type": "string",
|
|
59
|
+
"mutable": false,
|
|
60
|
+
"complexType": {
|
|
61
|
+
"original": "string | CalendarEvent[]",
|
|
62
|
+
"resolved": "CalendarEvent[] | string",
|
|
63
|
+
"references": {
|
|
64
|
+
"CalendarEvent": {
|
|
65
|
+
"location": "local",
|
|
66
|
+
"path": "/Users/mahykane/work/Teranga-Design-Systems/packages/components/src/components/tg-calendar-view/tg-calendar-view.tsx",
|
|
67
|
+
"id": "src/components/tg-calendar-view/tg-calendar-view.tsx::CalendarEvent"
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
},
|
|
71
|
+
"required": false,
|
|
72
|
+
"optional": false,
|
|
73
|
+
"docs": {
|
|
74
|
+
"tags": [],
|
|
75
|
+
"text": ""
|
|
76
|
+
},
|
|
77
|
+
"getter": false,
|
|
78
|
+
"setter": false,
|
|
79
|
+
"reflect": false,
|
|
80
|
+
"attribute": "events",
|
|
81
|
+
"defaultValue": "[]"
|
|
82
|
+
}
|
|
83
|
+
};
|
|
84
|
+
}
|
|
85
|
+
static get states() {
|
|
86
|
+
return {
|
|
87
|
+
"viewDate": {}
|
|
88
|
+
};
|
|
89
|
+
}
|
|
90
|
+
static get events() {
|
|
91
|
+
return [{
|
|
92
|
+
"method": "tgDateSelect",
|
|
93
|
+
"name": "tgDateSelect",
|
|
94
|
+
"bubbles": true,
|
|
95
|
+
"cancelable": true,
|
|
96
|
+
"composed": true,
|
|
97
|
+
"docs": {
|
|
98
|
+
"tags": [],
|
|
99
|
+
"text": ""
|
|
100
|
+
},
|
|
101
|
+
"complexType": {
|
|
102
|
+
"original": "string",
|
|
103
|
+
"resolved": "string",
|
|
104
|
+
"references": {}
|
|
105
|
+
}
|
|
106
|
+
}];
|
|
107
|
+
}
|
|
108
|
+
}
|
|
@@ -0,0 +1,117 @@
|
|
|
1
|
+
/* ============================================================
|
|
2
|
+
tg-card — Teranga Design System
|
|
3
|
+
============================================================ */
|
|
4
|
+
|
|
5
|
+
:host {
|
|
6
|
+
display: block;
|
|
7
|
+
}
|
|
8
|
+
|
|
9
|
+
:host([full-width]) {
|
|
10
|
+
width: 100%;
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
.tg-card {
|
|
14
|
+
background-color: var(--tg-color-surface-raised);
|
|
15
|
+
border-radius: var(--tg-radius-xl);
|
|
16
|
+
border: 1px solid var(--tg-color-border);
|
|
17
|
+
overflow: hidden;
|
|
18
|
+
display: flex;
|
|
19
|
+
flex-direction: column;
|
|
20
|
+
font-family: var(--tg-font-family-sans);
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
/* ── Elevations */
|
|
24
|
+
.tg-card--flat {
|
|
25
|
+
box-shadow: none;
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
.tg-card--raised {
|
|
29
|
+
box-shadow: var(--tg-shadow-sm);
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
.tg-card--floating {
|
|
33
|
+
box-shadow: var(--tg-shadow-md);
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
/* ── Interactive */
|
|
37
|
+
.tg-card--interactive {
|
|
38
|
+
cursor: pointer;
|
|
39
|
+
transition: box-shadow var(--tg-duration-normal) var(--tg-ease-default),
|
|
40
|
+
transform var(--tg-duration-normal) var(--tg-ease-default);
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
.tg-card--interactive:hover {
|
|
44
|
+
box-shadow: var(--tg-shadow-lg);
|
|
45
|
+
transform: translateY(-1px);
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
.tg-card--interactive:active {
|
|
49
|
+
box-shadow: var(--tg-shadow-sm);
|
|
50
|
+
transform: translateY(0);
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
/* ── Media slot */
|
|
54
|
+
::slotted([slot='media']) {
|
|
55
|
+
display: block;
|
|
56
|
+
width: 100%;
|
|
57
|
+
object-fit: cover;
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
/* ── Header */
|
|
61
|
+
.tg-card__header-slot:not(:empty) {
|
|
62
|
+
padding: var(--tg-spacing-4) var(--tg-spacing-5);
|
|
63
|
+
border-bottom: 1px solid var(--tg-color-border);
|
|
64
|
+
font-weight: var(--tg-font-weight-semibold);
|
|
65
|
+
font-size: var(--tg-font-size-md);
|
|
66
|
+
color: var(--tg-color-text-primary);
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
/* ── Body */
|
|
70
|
+
.tg-card__body {
|
|
71
|
+
flex: 1;
|
|
72
|
+
padding: var(--tg-spacing-5);
|
|
73
|
+
color: var(--tg-color-text-secondary);
|
|
74
|
+
font-size: var(--tg-font-size-sm);
|
|
75
|
+
line-height: var(--tg-line-height-relaxed);
|
|
76
|
+
}
|
|
77
|
+
|
|
78
|
+
.tg-card--no-padding .tg-card__body {
|
|
79
|
+
padding: 0;
|
|
80
|
+
}
|
|
81
|
+
|
|
82
|
+
/* ── Footer */
|
|
83
|
+
.tg-card__footer-slot:not(:empty) {
|
|
84
|
+
padding: var(--tg-spacing-4) var(--tg-spacing-5);
|
|
85
|
+
border-top: 1px solid var(--tg-color-border);
|
|
86
|
+
display: flex;
|
|
87
|
+
align-items: center;
|
|
88
|
+
gap: var(--tg-spacing-3);
|
|
89
|
+
}
|
|
90
|
+
|
|
91
|
+
/* ── Accent border */
|
|
92
|
+
.tg-card--accent-primary { border-top: 3px solid var(--tg-color-primary); }
|
|
93
|
+
.tg-card--accent-secondary { border-top: 3px solid var(--tg-color-secondary); }
|
|
94
|
+
.tg-card--accent-danger { border-top: 3px solid var(--tg-color-danger); }
|
|
95
|
+
.tg-card--accent-success { border-top: 3px solid var(--tg-color-success); }
|
|
96
|
+
.tg-card--accent-accent { border-top: 3px solid var(--tg-color-accent, #C2703A); }
|
|
97
|
+
|
|
98
|
+
/* ── Flag accent (green-gold-red gradient) */
|
|
99
|
+
.tg-card--accent-flag {
|
|
100
|
+
border-top: 3px solid transparent;
|
|
101
|
+
border-image: linear-gradient(90deg, var(--tg-color-green-500), var(--tg-color-gold-600), var(--tg-color-red-500)) 1;
|
|
102
|
+
}
|
|
103
|
+
|
|
104
|
+
/* ── Enter animation */
|
|
105
|
+
.tg-card {
|
|
106
|
+
animation: tg-card-enter var(--tg-duration-normal, 200ms) var(--tg-ease-out, ease-out);
|
|
107
|
+
}
|
|
108
|
+
|
|
109
|
+
@keyframes tg-card-enter {
|
|
110
|
+
from { opacity: 0; transform: translateY(8px); }
|
|
111
|
+
to { opacity: 1; transform: translateY(0); }
|
|
112
|
+
}
|
|
113
|
+
|
|
114
|
+
/* ── Focus within */
|
|
115
|
+
.tg-card--interactive:focus-within {
|
|
116
|
+
box-shadow: var(--tg-focus-ring);
|
|
117
|
+
}
|
|
@@ -0,0 +1,134 @@
|
|
|
1
|
+
import { h, Host } from "@stencil/core";
|
|
2
|
+
/**
|
|
3
|
+
* @component tg-card
|
|
4
|
+
* @description Container component for grouping related content.
|
|
5
|
+
*
|
|
6
|
+
* @slot default — Main content
|
|
7
|
+
* @slot header — Card header area (title, actions)
|
|
8
|
+
* @slot footer — Card footer area (buttons, meta)
|
|
9
|
+
* @slot media — Full-width media area (image, video) placed above header
|
|
10
|
+
*
|
|
11
|
+
* @example
|
|
12
|
+
* <tg-card>
|
|
13
|
+
* <span slot="header">Identité Nationale</span>
|
|
14
|
+
* <p>Gérez vos informations d'identité.</p>
|
|
15
|
+
* <tg-button slot="footer" variant="primary">Voir les détails</tg-button>
|
|
16
|
+
* </tg-card>
|
|
17
|
+
*/
|
|
18
|
+
export class TgCard {
|
|
19
|
+
constructor() {
|
|
20
|
+
/** Visual elevation / shadow level */
|
|
21
|
+
this.elevation = 'raised';
|
|
22
|
+
/** Removes internal padding for flush content */
|
|
23
|
+
this.noPadding = false;
|
|
24
|
+
/** Makes the card take full width of its container */
|
|
25
|
+
this.fullWidth = false;
|
|
26
|
+
/** Makes the card interactive (hover + cursor pointer) */
|
|
27
|
+
this.interactive = false;
|
|
28
|
+
}
|
|
29
|
+
render() {
|
|
30
|
+
return (h(Host, { key: '8c305fbeed5f77c0f32ca5c3cefe5af1ad84e623' }, h("div", { key: 'dcd60171d6321db97fa864093df5d42ad82bbb8e', class: {
|
|
31
|
+
'tg-card': true,
|
|
32
|
+
[`tg-card--${this.elevation}`]: true,
|
|
33
|
+
'tg-card--no-padding': this.noPadding,
|
|
34
|
+
'tg-card--full-width': this.fullWidth,
|
|
35
|
+
'tg-card--interactive': this.interactive,
|
|
36
|
+
} }, h("slot", { key: '3dd0f10efc40225b531384c75a1bd317750bb2fc', name: "media" }), h("div", { key: '7c96f4e1c507e42edb495ce0a6963ca28e6a308d', class: "tg-card__header-slot" }, h("slot", { key: '6fafb906f219aa6e8f9c8699034710fecc567a9f', name: "header" })), h("div", { key: '48cfed9312a3a7fa41c2cc4e0e81608587807a63', class: "tg-card__body" }, h("slot", { key: 'cc717ecfa2aa6a5e9c8fc0aff3d61bc99921f188' })), h("div", { key: '0ebcde8f0af639ccda9cdbf96fdff087e7152070', class: "tg-card__footer-slot" }, h("slot", { key: '34d345e1cc83580d1f864f802f53a6f0df327d13', name: "footer" })))));
|
|
37
|
+
}
|
|
38
|
+
static get is() { return "tg-card"; }
|
|
39
|
+
static get encapsulation() { return "shadow"; }
|
|
40
|
+
static get originalStyleUrls() {
|
|
41
|
+
return {
|
|
42
|
+
"$": ["tg-card.css"]
|
|
43
|
+
};
|
|
44
|
+
}
|
|
45
|
+
static get styleUrls() {
|
|
46
|
+
return {
|
|
47
|
+
"$": ["tg-card.css"]
|
|
48
|
+
};
|
|
49
|
+
}
|
|
50
|
+
static get properties() {
|
|
51
|
+
return {
|
|
52
|
+
"elevation": {
|
|
53
|
+
"type": "string",
|
|
54
|
+
"mutable": false,
|
|
55
|
+
"complexType": {
|
|
56
|
+
"original": "'flat' | 'raised' | 'floating'",
|
|
57
|
+
"resolved": "\"flat\" | \"floating\" | \"raised\"",
|
|
58
|
+
"references": {}
|
|
59
|
+
},
|
|
60
|
+
"required": false,
|
|
61
|
+
"optional": false,
|
|
62
|
+
"docs": {
|
|
63
|
+
"tags": [],
|
|
64
|
+
"text": "Visual elevation / shadow level"
|
|
65
|
+
},
|
|
66
|
+
"getter": false,
|
|
67
|
+
"setter": false,
|
|
68
|
+
"reflect": true,
|
|
69
|
+
"attribute": "elevation",
|
|
70
|
+
"defaultValue": "'raised'"
|
|
71
|
+
},
|
|
72
|
+
"noPadding": {
|
|
73
|
+
"type": "boolean",
|
|
74
|
+
"mutable": false,
|
|
75
|
+
"complexType": {
|
|
76
|
+
"original": "boolean",
|
|
77
|
+
"resolved": "boolean",
|
|
78
|
+
"references": {}
|
|
79
|
+
},
|
|
80
|
+
"required": false,
|
|
81
|
+
"optional": false,
|
|
82
|
+
"docs": {
|
|
83
|
+
"tags": [],
|
|
84
|
+
"text": "Removes internal padding for flush content"
|
|
85
|
+
},
|
|
86
|
+
"getter": false,
|
|
87
|
+
"setter": false,
|
|
88
|
+
"reflect": true,
|
|
89
|
+
"attribute": "no-padding",
|
|
90
|
+
"defaultValue": "false"
|
|
91
|
+
},
|
|
92
|
+
"fullWidth": {
|
|
93
|
+
"type": "boolean",
|
|
94
|
+
"mutable": false,
|
|
95
|
+
"complexType": {
|
|
96
|
+
"original": "boolean",
|
|
97
|
+
"resolved": "boolean",
|
|
98
|
+
"references": {}
|
|
99
|
+
},
|
|
100
|
+
"required": false,
|
|
101
|
+
"optional": false,
|
|
102
|
+
"docs": {
|
|
103
|
+
"tags": [],
|
|
104
|
+
"text": "Makes the card take full width of its container"
|
|
105
|
+
},
|
|
106
|
+
"getter": false,
|
|
107
|
+
"setter": false,
|
|
108
|
+
"reflect": true,
|
|
109
|
+
"attribute": "full-width",
|
|
110
|
+
"defaultValue": "false"
|
|
111
|
+
},
|
|
112
|
+
"interactive": {
|
|
113
|
+
"type": "boolean",
|
|
114
|
+
"mutable": false,
|
|
115
|
+
"complexType": {
|
|
116
|
+
"original": "boolean",
|
|
117
|
+
"resolved": "boolean",
|
|
118
|
+
"references": {}
|
|
119
|
+
},
|
|
120
|
+
"required": false,
|
|
121
|
+
"optional": false,
|
|
122
|
+
"docs": {
|
|
123
|
+
"tags": [],
|
|
124
|
+
"text": "Makes the card interactive (hover + cursor pointer)"
|
|
125
|
+
},
|
|
126
|
+
"getter": false,
|
|
127
|
+
"setter": false,
|
|
128
|
+
"reflect": true,
|
|
129
|
+
"attribute": "interactive",
|
|
130
|
+
"defaultValue": "false"
|
|
131
|
+
}
|
|
132
|
+
};
|
|
133
|
+
}
|
|
134
|
+
}
|
|
@@ -0,0 +1,207 @@
|
|
|
1
|
+
:host {
|
|
2
|
+
display: flex;
|
|
3
|
+
flex-direction: column;
|
|
4
|
+
height: 100%;
|
|
5
|
+
}
|
|
6
|
+
|
|
7
|
+
.tg-chat {
|
|
8
|
+
display: flex;
|
|
9
|
+
flex-direction: column;
|
|
10
|
+
height: 100%;
|
|
11
|
+
font-family: var(--tg-font-family, sans-serif);
|
|
12
|
+
background: var(--tg-color-surface, #fff);
|
|
13
|
+
border: 1px solid var(--tg-color-neutral-200, #e5e7eb);
|
|
14
|
+
border-radius: var(--tg-radius-xl, 16px);
|
|
15
|
+
overflow: hidden;
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
/* Header */
|
|
19
|
+
.tg-chat__header {
|
|
20
|
+
display: flex;
|
|
21
|
+
align-items: center;
|
|
22
|
+
gap: var(--tg-spacing-sm, 12px);
|
|
23
|
+
padding: var(--tg-spacing-md, 16px) var(--tg-spacing-lg, 24px);
|
|
24
|
+
border-bottom: 1px solid var(--tg-color-neutral-100, #f3f4f6);
|
|
25
|
+
background: var(--tg-color-neutral-50, #f9fafb);
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
.tg-chat__avatar {
|
|
29
|
+
width: 36px;
|
|
30
|
+
height: 36px;
|
|
31
|
+
border-radius: 50%;
|
|
32
|
+
background: var(--tg-color-primary, #00853F);
|
|
33
|
+
color: #fff;
|
|
34
|
+
display: flex;
|
|
35
|
+
align-items: center;
|
|
36
|
+
justify-content: center;
|
|
37
|
+
font-weight: var(--tg-font-weight-bold, 700);
|
|
38
|
+
font-size: 0.875rem;
|
|
39
|
+
flex-shrink: 0;
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
.tg-chat__name {
|
|
43
|
+
font-weight: var(--tg-font-weight-semibold, 600);
|
|
44
|
+
font-size: var(--tg-font-size-sm, 0.8125rem);
|
|
45
|
+
color: var(--tg-color-text, #111827);
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
.tg-chat__status {
|
|
49
|
+
font-size: 0.75rem;
|
|
50
|
+
color: var(--tg-color-success, #059669);
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
/* Messages area */
|
|
54
|
+
.tg-chat__messages {
|
|
55
|
+
flex: 1;
|
|
56
|
+
overflow-y: auto;
|
|
57
|
+
padding: var(--tg-spacing-md, 16px) var(--tg-spacing-lg, 24px);
|
|
58
|
+
display: flex;
|
|
59
|
+
flex-direction: column;
|
|
60
|
+
gap: var(--tg-spacing-md, 16px);
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
/* Bubbles */
|
|
64
|
+
.tg-chat__bubble-row {
|
|
65
|
+
display: flex;
|
|
66
|
+
gap: var(--tg-spacing-xs, 8px);
|
|
67
|
+
align-items: flex-end;
|
|
68
|
+
animation: tg-chat-bubble-in var(--tg-duration-normal, 200ms) var(--tg-ease-out, ease-out);
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
.tg-chat__bubble-row--user {
|
|
72
|
+
flex-direction: row-reverse;
|
|
73
|
+
}
|
|
74
|
+
|
|
75
|
+
@keyframes tg-chat-bubble-in {
|
|
76
|
+
from { opacity: 0; transform: translateY(8px); }
|
|
77
|
+
to { opacity: 1; transform: translateY(0); }
|
|
78
|
+
}
|
|
79
|
+
|
|
80
|
+
.tg-chat__bubble {
|
|
81
|
+
max-width: 75%;
|
|
82
|
+
padding: var(--tg-spacing-sm, 12px) var(--tg-spacing-md, 16px);
|
|
83
|
+
border-radius: var(--tg-radius-lg, 12px);
|
|
84
|
+
font-size: var(--tg-font-size-sm, 0.8125rem);
|
|
85
|
+
line-height: 1.6;
|
|
86
|
+
word-break: break-word;
|
|
87
|
+
}
|
|
88
|
+
|
|
89
|
+
.tg-chat__bubble--bot {
|
|
90
|
+
background: var(--tg-color-neutral-100, #f3f4f6);
|
|
91
|
+
color: var(--tg-color-text, #111827);
|
|
92
|
+
border-bottom-left-radius: var(--tg-radius-xs, 4px);
|
|
93
|
+
}
|
|
94
|
+
|
|
95
|
+
.tg-chat__bubble--user {
|
|
96
|
+
background: var(--tg-color-primary, #00853F);
|
|
97
|
+
color: #fff;
|
|
98
|
+
border-bottom-right-radius: var(--tg-radius-xs, 4px);
|
|
99
|
+
}
|
|
100
|
+
|
|
101
|
+
.tg-chat__time {
|
|
102
|
+
font-size: 0.65rem;
|
|
103
|
+
color: var(--tg-color-text-secondary, #6b7280);
|
|
104
|
+
margin-top: var(--tg-spacing-2xs, 4px);
|
|
105
|
+
}
|
|
106
|
+
|
|
107
|
+
/* Typing indicator */
|
|
108
|
+
.tg-chat__typing {
|
|
109
|
+
display: flex;
|
|
110
|
+
align-items: center;
|
|
111
|
+
gap: 4px;
|
|
112
|
+
padding: var(--tg-spacing-sm, 12px) var(--tg-spacing-md, 16px);
|
|
113
|
+
background: var(--tg-color-neutral-100, #f3f4f6);
|
|
114
|
+
border-radius: var(--tg-radius-lg, 12px);
|
|
115
|
+
border-bottom-left-radius: var(--tg-radius-xs, 4px);
|
|
116
|
+
width: fit-content;
|
|
117
|
+
}
|
|
118
|
+
|
|
119
|
+
.tg-chat__typing-dot {
|
|
120
|
+
width: 6px;
|
|
121
|
+
height: 6px;
|
|
122
|
+
border-radius: 50%;
|
|
123
|
+
background: var(--tg-color-neutral-400, #9ca3af);
|
|
124
|
+
animation: tg-chat-typing 1.4s infinite;
|
|
125
|
+
}
|
|
126
|
+
|
|
127
|
+
.tg-chat__typing-dot:nth-child(2) { animation-delay: 0.2s; }
|
|
128
|
+
.tg-chat__typing-dot:nth-child(3) { animation-delay: 0.4s; }
|
|
129
|
+
|
|
130
|
+
@keyframes tg-chat-typing {
|
|
131
|
+
0%, 60%, 100% { transform: translateY(0); }
|
|
132
|
+
30% { transform: translateY(-6px); }
|
|
133
|
+
}
|
|
134
|
+
|
|
135
|
+
/* Composer */
|
|
136
|
+
.tg-chat__composer {
|
|
137
|
+
display: flex;
|
|
138
|
+
align-items: flex-end;
|
|
139
|
+
gap: var(--tg-spacing-xs, 8px);
|
|
140
|
+
padding: var(--tg-spacing-md, 16px) var(--tg-spacing-lg, 24px);
|
|
141
|
+
border-top: 1px solid var(--tg-color-neutral-100, #f3f4f6);
|
|
142
|
+
}
|
|
143
|
+
|
|
144
|
+
.tg-chat__input {
|
|
145
|
+
flex: 1;
|
|
146
|
+
resize: none;
|
|
147
|
+
border: 1px solid var(--tg-color-neutral-200, #e5e7eb);
|
|
148
|
+
border-radius: var(--tg-radius-lg, 12px);
|
|
149
|
+
padding: var(--tg-spacing-sm, 12px) var(--tg-spacing-md, 16px);
|
|
150
|
+
font-family: inherit;
|
|
151
|
+
font-size: var(--tg-font-size-sm, 0.8125rem);
|
|
152
|
+
line-height: 1.5;
|
|
153
|
+
color: var(--tg-color-text, #111827);
|
|
154
|
+
background: var(--tg-color-surface, #fff);
|
|
155
|
+
min-height: 44px;
|
|
156
|
+
max-height: 120px;
|
|
157
|
+
transition: border-color var(--tg-duration-fast, 150ms);
|
|
158
|
+
}
|
|
159
|
+
|
|
160
|
+
.tg-chat__input::placeholder {
|
|
161
|
+
color: var(--tg-color-neutral-400, #9ca3af);
|
|
162
|
+
}
|
|
163
|
+
|
|
164
|
+
.tg-chat__input:focus {
|
|
165
|
+
outline: none;
|
|
166
|
+
border-color: var(--tg-color-primary, #00853F);
|
|
167
|
+
box-shadow: var(--tg-focus-ring);
|
|
168
|
+
}
|
|
169
|
+
|
|
170
|
+
.tg-chat__send {
|
|
171
|
+
appearance: none;
|
|
172
|
+
border: none;
|
|
173
|
+
background: var(--tg-color-primary, #00853F);
|
|
174
|
+
color: #fff;
|
|
175
|
+
cursor: pointer;
|
|
176
|
+
width: 44px;
|
|
177
|
+
height: 44px;
|
|
178
|
+
border-radius: var(--tg-radius-lg, 12px);
|
|
179
|
+
display: flex;
|
|
180
|
+
align-items: center;
|
|
181
|
+
justify-content: center;
|
|
182
|
+
flex-shrink: 0;
|
|
183
|
+
transition: background var(--tg-duration-fast, 150ms), transform var(--tg-duration-fast, 150ms);
|
|
184
|
+
}
|
|
185
|
+
|
|
186
|
+
.tg-chat__send:hover {
|
|
187
|
+
background: var(--tg-color-primary-dark, #006B32);
|
|
188
|
+
}
|
|
189
|
+
|
|
190
|
+
.tg-chat__send:active {
|
|
191
|
+
transform: scale(0.95);
|
|
192
|
+
}
|
|
193
|
+
|
|
194
|
+
.tg-chat__send:focus-visible {
|
|
195
|
+
outline: none;
|
|
196
|
+
box-shadow: var(--tg-focus-ring);
|
|
197
|
+
}
|
|
198
|
+
|
|
199
|
+
.tg-chat__send:disabled {
|
|
200
|
+
opacity: 0.5;
|
|
201
|
+
cursor: not-allowed;
|
|
202
|
+
}
|
|
203
|
+
|
|
204
|
+
.tg-chat__send svg {
|
|
205
|
+
width: 20px;
|
|
206
|
+
height: 20px;
|
|
207
|
+
}
|