@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.
Files changed (667) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +97 -0
  3. package/dist/cjs/index-BrBjyHdB.js +2038 -0
  4. package/dist/cjs/index.cjs.js +2 -0
  5. package/dist/cjs/loader.cjs.js +12 -0
  6. package/dist/cjs/teranga-ds.cjs.js +24 -0
  7. package/dist/cjs/tg-activity-feed.cjs.entry.js +29 -0
  8. package/dist/cjs/tg-activity-stream.cjs.entry.js +30 -0
  9. package/dist/cjs/tg-ai-feedback.cjs.entry.js +29 -0
  10. package/dist/cjs/tg-ai-insight-card.cjs.entry.js +20 -0
  11. package/dist/cjs/tg-alert.cjs.entry.js +42 -0
  12. package/dist/cjs/tg-audio-player.cjs.entry.js +46 -0
  13. package/dist/cjs/tg-autocomplete.cjs.entry.js +54 -0
  14. package/dist/cjs/tg-avatar.cjs.entry.js +39 -0
  15. package/dist/cjs/tg-badge.cjs.entry.js +31 -0
  16. package/dist/cjs/tg-bottom-nav.cjs.entry.js +30 -0
  17. package/dist/cjs/tg-bottom-sheet.cjs.entry.js +21 -0
  18. package/dist/cjs/tg-breadcrumb.cjs.entry.js +53 -0
  19. package/dist/cjs/tg-button.cjs.entry.js +45 -0
  20. package/dist/cjs/tg-calendar-view.cjs.entry.js +53 -0
  21. package/dist/cjs/tg-card.cjs.entry.js +31 -0
  22. package/dist/cjs/tg-chat-message.cjs.entry.js +19 -0
  23. package/dist/cjs/tg-chat.cjs.entry.js +59 -0
  24. package/dist/cjs/tg-checkbox.cjs.entry.js +31 -0
  25. package/dist/cjs/tg-combobox.cjs.entry.js +68 -0
  26. package/dist/cjs/tg-command-palette.cjs.entry.js +66 -0
  27. package/dist/cjs/tg-confidence-badge.cjs.entry.js +27 -0
  28. package/dist/cjs/tg-confirm-dialog.cjs.entry.js +27 -0
  29. package/dist/cjs/tg-context-menu.cjs.entry.js +35 -0
  30. package/dist/cjs/tg-data-table.cjs.entry.js +90 -0
  31. package/dist/cjs/tg-date-picker.cjs.entry.js +56 -0
  32. package/dist/cjs/tg-empty-state.cjs.entry.js +19 -0
  33. package/dist/cjs/tg-expandable-row.cjs.entry.js +19 -0
  34. package/dist/cjs/tg-fab.cjs.entry.js +22 -0
  35. package/dist/cjs/tg-file-upload.cjs.entry.js +86 -0
  36. package/dist/cjs/tg-global-loader.cjs.entry.js +24 -0
  37. package/dist/cjs/tg-heatmap.cjs.entry.js +65 -0
  38. package/dist/cjs/tg-image-gallery.cjs.entry.js +32 -0
  39. package/dist/cjs/tg-input.cjs.entry.js +51 -0
  40. package/dist/cjs/tg-kanban-board.cjs.entry.js +30 -0
  41. package/dist/cjs/tg-kpi-card.cjs.entry.js +20 -0
  42. package/dist/cjs/tg-live-badge.cjs.entry.js +20 -0
  43. package/dist/cjs/tg-login-form.cjs.entry.js +23 -0
  44. package/dist/cjs/tg-mega-menu.cjs.entry.js +34 -0
  45. package/dist/cjs/tg-modal.cjs.entry.js +43 -0
  46. package/dist/cjs/tg-model-selector.cjs.entry.js +34 -0
  47. package/dist/cjs/tg-multi-select.cjs.entry.js +67 -0
  48. package/dist/cjs/tg-navbar.cjs.entry.js +43 -0
  49. package/dist/cjs/tg-otp-input.cjs.entry.js +60 -0
  50. package/dist/cjs/tg-pagination.cjs.entry.js +53 -0
  51. package/dist/cjs/tg-presence-indicator.cjs.entry.js +33 -0
  52. package/dist/cjs/tg-progress.cjs.entry.js +53 -0
  53. package/dist/cjs/tg-prompt-input.cjs.entry.js +34 -0
  54. package/dist/cjs/tg-pull-to-refresh.cjs.entry.js +37 -0
  55. package/dist/cjs/tg-quick-switcher.cjs.entry.js +35 -0
  56. package/dist/cjs/tg-radio.cjs.entry.js +29 -0
  57. package/dist/cjs/tg-retry-ui.cjs.entry.js +22 -0
  58. package/dist/cjs/tg-rich-editor.cjs.entry.js +24 -0
  59. package/dist/cjs/tg-role-badge.cjs.entry.js +19 -0
  60. package/dist/cjs/tg-select.cjs.entry.js +69 -0
  61. package/dist/cjs/tg-session-expired.cjs.entry.js +24 -0
  62. package/dist/cjs/tg-sidebar.cjs.entry.js +35 -0
  63. package/dist/cjs/tg-skeleton.cjs.entry.js +30 -0
  64. package/dist/cjs/tg-slider.cjs.entry.js +26 -0
  65. package/dist/cjs/tg-source-citation.cjs.entry.js +29 -0
  66. package/dist/cjs/tg-spinner.cjs.entry.js +27 -0
  67. package/dist/cjs/tg-stat-widget.cjs.entry.js +19 -0
  68. package/dist/cjs/tg-status-badge.cjs.entry.js +21 -0
  69. package/dist/cjs/tg-stepper-input.cjs.entry.js +39 -0
  70. package/dist/cjs/tg-stepper.cjs.entry.js +31 -0
  71. package/dist/cjs/tg-streaming-response.cjs.entry.js +19 -0
  72. package/dist/cjs/tg-switch.cjs.entry.js +31 -0
  73. package/dist/cjs/tg-table.cjs.entry.js +113 -0
  74. package/dist/cjs/tg-tabs.cjs.entry.js +47 -0
  75. package/dist/cjs/tg-tag.cjs.entry.js +28 -0
  76. package/dist/cjs/tg-textarea.cjs.entry.js +45 -0
  77. package/dist/cjs/tg-time-picker.cjs.entry.js +37 -0
  78. package/dist/cjs/tg-timeline.cjs.entry.js +30 -0
  79. package/dist/cjs/tg-toast.cjs.entry.js +53 -0
  80. package/dist/cjs/tg-token-usage.cjs.entry.js +23 -0
  81. package/dist/cjs/tg-tooltip.cjs.entry.js +32 -0
  82. package/dist/cjs/tg-tree-view.cjs.entry.js +53 -0
  83. package/dist/cjs/tg-undo-snackbar.cjs.entry.js +30 -0
  84. package/dist/cjs/tg-video-player.cjs.entry.js +19 -0
  85. package/dist/cjs/tg-wizard-nav.cjs.entry.js +30 -0
  86. package/dist/collection/collection-manifest.json +91 -0
  87. package/dist/collection/components/tg-activity-feed/tg-activity-feed.css +10 -0
  88. package/dist/collection/components/tg-activity-feed/tg-activity-feed.js +81 -0
  89. package/dist/collection/components/tg-activity-stream/tg-activity-stream.css +11 -0
  90. package/dist/collection/components/tg-activity-stream/tg-activity-stream.js +83 -0
  91. package/dist/collection/components/tg-ai-feedback/tg-ai-feedback.css +12 -0
  92. package/dist/collection/components/tg-ai-feedback/tg-ai-feedback.js +80 -0
  93. package/dist/collection/components/tg-ai-insight-card/tg-ai-insight-card.css +10 -0
  94. package/dist/collection/components/tg-ai-insight-card/tg-ai-insight-card.js +144 -0
  95. package/dist/collection/components/tg-alert/tg-alert.css +122 -0
  96. package/dist/collection/components/tg-alert/tg-alert.js +142 -0
  97. package/dist/collection/components/tg-audio-player/tg-audio-player.css +11 -0
  98. package/dist/collection/components/tg-audio-player/tg-audio-player.js +118 -0
  99. package/dist/collection/components/tg-autocomplete/tg-autocomplete.css +15 -0
  100. package/dist/collection/components/tg-autocomplete/tg-autocomplete.js +285 -0
  101. package/dist/collection/components/tg-avatar/tg-avatar.css +72 -0
  102. package/dist/collection/components/tg-avatar/tg-avatar.js +195 -0
  103. package/dist/collection/components/tg-badge/tg-badge.css +153 -0
  104. package/dist/collection/components/tg-badge/tg-badge.js +128 -0
  105. package/dist/collection/components/tg-bottom-nav/tg-bottom-nav.css +7 -0
  106. package/dist/collection/components/tg-bottom-nav/tg-bottom-nav.js +99 -0
  107. package/dist/collection/components/tg-bottom-sheet/tg-bottom-sheet.css +8 -0
  108. package/dist/collection/components/tg-bottom-sheet/tg-bottom-sheet.js +84 -0
  109. package/dist/collection/components/tg-breadcrumb/tg-breadcrumb.css +82 -0
  110. package/dist/collection/components/tg-breadcrumb/tg-breadcrumb.js +111 -0
  111. package/dist/collection/components/tg-button/tg-button.css +245 -0
  112. package/dist/collection/components/tg-button/tg-button.js +239 -0
  113. package/dist/collection/components/tg-calendar-view/tg-calendar-view.css +19 -0
  114. package/dist/collection/components/tg-calendar-view/tg-calendar-view.js +108 -0
  115. package/dist/collection/components/tg-card/tg-card.css +117 -0
  116. package/dist/collection/components/tg-card/tg-card.js +134 -0
  117. package/dist/collection/components/tg-chat/tg-chat.css +207 -0
  118. package/dist/collection/components/tg-chat/tg-chat.js +194 -0
  119. package/dist/collection/components/tg-chat-message/tg-chat-message.css +15 -0
  120. package/dist/collection/components/tg-chat-message/tg-chat-message.js +104 -0
  121. package/dist/collection/components/tg-checkbox/tg-checkbox.css +94 -0
  122. package/dist/collection/components/tg-checkbox/tg-checkbox.js +210 -0
  123. package/dist/collection/components/tg-combobox/tg-combobox.css +22 -0
  124. package/dist/collection/components/tg-combobox/tg-combobox.js +290 -0
  125. package/dist/collection/components/tg-command-palette/tg-command-palette.css +16 -0
  126. package/dist/collection/components/tg-command-palette/tg-command-palette.js +152 -0
  127. package/dist/collection/components/tg-confidence-badge/tg-confidence-badge.css +12 -0
  128. package/dist/collection/components/tg-confidence-badge/tg-confidence-badge.js +93 -0
  129. package/dist/collection/components/tg-confirm-dialog/tg-confirm-dialog.css +19 -0
  130. package/dist/collection/components/tg-confirm-dialog/tg-confirm-dialog.js +204 -0
  131. package/dist/collection/components/tg-context-menu/tg-context-menu.css +12 -0
  132. package/dist/collection/components/tg-context-menu/tg-context-menu.js +107 -0
  133. package/dist/collection/components/tg-data-table/tg-data-table.css +19 -0
  134. package/dist/collection/components/tg-data-table/tg-data-table.js +287 -0
  135. package/dist/collection/components/tg-date-picker/tg-date-picker.css +28 -0
  136. package/dist/collection/components/tg-date-picker/tg-date-picker.js +251 -0
  137. package/dist/collection/components/tg-empty-state/tg-empty-state.css +7 -0
  138. package/dist/collection/components/tg-empty-state/tg-empty-state.js +123 -0
  139. package/dist/collection/components/tg-expandable-row/tg-expandable-row.css +13 -0
  140. package/dist/collection/components/tg-expandable-row/tg-expandable-row.js +89 -0
  141. package/dist/collection/components/tg-fab/tg-fab.css +16 -0
  142. package/dist/collection/components/tg-fab/tg-fab.js +164 -0
  143. package/dist/collection/components/tg-file-upload/tg-file-upload.css +172 -0
  144. package/dist/collection/components/tg-file-upload/tg-file-upload.js +240 -0
  145. package/dist/collection/components/tg-global-loader/tg-global-loader.css +8 -0
  146. package/dist/collection/components/tg-global-loader/tg-global-loader.js +90 -0
  147. package/dist/collection/components/tg-heatmap/tg-heatmap.css +9 -0
  148. package/dist/collection/components/tg-heatmap/tg-heatmap.js +191 -0
  149. package/dist/collection/components/tg-image-gallery/tg-image-gallery.css +13 -0
  150. package/dist/collection/components/tg-image-gallery/tg-image-gallery.js +90 -0
  151. package/dist/collection/components/tg-input/tg-input.css +164 -0
  152. package/dist/collection/components/tg-input/tg-input.js +355 -0
  153. package/dist/collection/components/tg-kanban-board/tg-kanban-board.css +14 -0
  154. package/dist/collection/components/tg-kanban-board/tg-kanban-board.js +80 -0
  155. package/dist/collection/components/tg-kpi-card/tg-kpi-card.css +17 -0
  156. package/dist/collection/components/tg-kpi-card/tg-kpi-card.js +163 -0
  157. package/dist/collection/components/tg-live-badge/tg-live-badge.css +11 -0
  158. package/dist/collection/components/tg-live-badge/tg-live-badge.js +87 -0
  159. package/dist/collection/components/tg-login-form/tg-login-form.css +16 -0
  160. package/dist/collection/components/tg-login-form/tg-login-form.js +150 -0
  161. package/dist/collection/components/tg-mega-menu/tg-mega-menu.css +19 -0
  162. package/dist/collection/components/tg-mega-menu/tg-mega-menu.js +82 -0
  163. package/dist/collection/components/tg-modal/tg-modal.css +132 -0
  164. package/dist/collection/components/tg-modal/tg-modal.js +180 -0
  165. package/dist/collection/components/tg-model-selector/tg-model-selector.css +15 -0
  166. package/dist/collection/components/tg-model-selector/tg-model-selector.js +117 -0
  167. package/dist/collection/components/tg-multi-select/tg-multi-select.css +22 -0
  168. package/dist/collection/components/tg-multi-select/tg-multi-select.js +251 -0
  169. package/dist/collection/components/tg-navbar/tg-navbar.css +144 -0
  170. package/dist/collection/components/tg-navbar/tg-navbar.js +159 -0
  171. package/dist/collection/components/tg-otp-input/tg-otp-input.css +10 -0
  172. package/dist/collection/components/tg-otp-input/tg-otp-input.js +221 -0
  173. package/dist/collection/components/tg-pagination/tg-pagination.css +73 -0
  174. package/dist/collection/components/tg-pagination/tg-pagination.js +137 -0
  175. package/dist/collection/components/tg-presence-indicator/tg-presence-indicator.css +10 -0
  176. package/dist/collection/components/tg-presence-indicator/tg-presence-indicator.js +80 -0
  177. package/dist/collection/components/tg-progress/tg-progress.css +142 -0
  178. package/dist/collection/components/tg-progress/tg-progress.js +299 -0
  179. package/dist/collection/components/tg-prompt-input/tg-prompt-input.css +11 -0
  180. package/dist/collection/components/tg-prompt-input/tg-prompt-input.js +142 -0
  181. package/dist/collection/components/tg-pull-to-refresh/tg-pull-to-refresh.css +7 -0
  182. package/dist/collection/components/tg-pull-to-refresh/tg-pull-to-refresh.js +127 -0
  183. package/dist/collection/components/tg-quick-switcher/tg-quick-switcher.css +12 -0
  184. package/dist/collection/components/tg-quick-switcher/tg-quick-switcher.js +120 -0
  185. package/dist/collection/components/tg-radio/tg-radio.css +83 -0
  186. package/dist/collection/components/tg-radio/tg-radio.js +169 -0
  187. package/dist/collection/components/tg-retry-ui/tg-retry-ui.css +10 -0
  188. package/dist/collection/components/tg-retry-ui/tg-retry-ui.js +145 -0
  189. package/dist/collection/components/tg-rich-editor/tg-rich-editor.css +10 -0
  190. package/dist/collection/components/tg-rich-editor/tg-rich-editor.js +151 -0
  191. package/dist/collection/components/tg-role-badge/tg-role-badge.css +7 -0
  192. package/dist/collection/components/tg-role-badge/tg-role-badge.js +85 -0
  193. package/dist/collection/components/tg-select/tg-select.css +144 -0
  194. package/dist/collection/components/tg-select/tg-select.js +329 -0
  195. package/dist/collection/components/tg-session-expired/tg-session-expired.css +8 -0
  196. package/dist/collection/components/tg-session-expired/tg-session-expired.js +128 -0
  197. package/dist/collection/components/tg-sidebar/tg-sidebar.css +188 -0
  198. package/dist/collection/components/tg-sidebar/tg-sidebar.js +112 -0
  199. package/dist/collection/components/tg-skeleton/tg-skeleton.css +58 -0
  200. package/dist/collection/components/tg-skeleton/tg-skeleton.js +135 -0
  201. package/dist/collection/components/tg-slider/tg-slider.css +10 -0
  202. package/dist/collection/components/tg-slider/tg-slider.js +208 -0
  203. package/dist/collection/components/tg-source-citation/tg-source-citation.css +12 -0
  204. package/dist/collection/components/tg-source-citation/tg-source-citation.js +56 -0
  205. package/dist/collection/components/tg-spinner/tg-spinner.css +50 -0
  206. package/dist/collection/components/tg-spinner/tg-spinner.js +101 -0
  207. package/dist/collection/components/tg-stat-widget/tg-stat-widget.css +12 -0
  208. package/dist/collection/components/tg-stat-widget/tg-stat-widget.js +142 -0
  209. package/dist/collection/components/tg-status-badge/tg-status-badge.css +24 -0
  210. package/dist/collection/components/tg-status-badge/tg-status-badge.js +108 -0
  211. package/dist/collection/components/tg-stepper/tg-stepper.css +17 -0
  212. package/dist/collection/components/tg-stepper/tg-stepper.js +104 -0
  213. package/dist/collection/components/tg-stepper-input/tg-stepper-input.css +15 -0
  214. package/dist/collection/components/tg-stepper-input/tg-stepper-input.js +200 -0
  215. package/dist/collection/components/tg-streaming-response/tg-streaming-response.css +12 -0
  216. package/dist/collection/components/tg-streaming-response/tg-streaming-response.js +104 -0
  217. package/dist/collection/components/tg-switch/tg-switch.css +89 -0
  218. package/dist/collection/components/tg-switch/tg-switch.js +172 -0
  219. package/dist/collection/components/tg-table/tg-table.css +117 -0
  220. package/dist/collection/components/tg-table/tg-table.js +289 -0
  221. package/dist/collection/components/tg-tabs/tg-tabs.css +114 -0
  222. package/dist/collection/components/tg-tabs/tg-tabs.js +141 -0
  223. package/dist/collection/components/tg-tag/tg-tag.css +76 -0
  224. package/dist/collection/components/tg-tag/tg-tag.js +152 -0
  225. package/dist/collection/components/tg-textarea/tg-textarea.css +105 -0
  226. package/dist/collection/components/tg-textarea/tg-textarea.js +357 -0
  227. package/dist/collection/components/tg-time-picker/tg-time-picker.css +15 -0
  228. package/dist/collection/components/tg-time-picker/tg-time-picker.js +213 -0
  229. package/dist/collection/components/tg-timeline/tg-timeline.css +14 -0
  230. package/dist/collection/components/tg-timeline/tg-timeline.js +83 -0
  231. package/dist/collection/components/tg-toast/tg-toast.css +112 -0
  232. package/dist/collection/components/tg-toast/tg-toast.js +181 -0
  233. package/dist/collection/components/tg-token-usage/tg-token-usage.css +14 -0
  234. package/dist/collection/components/tg-token-usage/tg-token-usage.js +129 -0
  235. package/dist/collection/components/tg-tooltip/tg-tooltip.css +93 -0
  236. package/dist/collection/components/tg-tooltip/tg-tooltip.js +104 -0
  237. package/dist/collection/components/tg-tree-view/tg-tree-view.css +10 -0
  238. package/dist/collection/components/tg-tree-view/tg-tree-view.js +112 -0
  239. package/dist/collection/components/tg-undo-snackbar/tg-undo-snackbar.css +8 -0
  240. package/dist/collection/components/tg-undo-snackbar/tg-undo-snackbar.js +148 -0
  241. package/dist/collection/components/tg-video-player/tg-video-player.css +6 -0
  242. package/dist/collection/components/tg-video-player/tg-video-player.js +104 -0
  243. package/dist/collection/components/tg-wizard-nav/tg-wizard-nav.css +14 -0
  244. package/dist/collection/components/tg-wizard-nav/tg-wizard-nav.js +202 -0
  245. package/dist/collection/index.js +1 -0
  246. package/dist/collection/teranga-tokens.css +189 -0
  247. package/dist/components/index.d.ts +35 -0
  248. package/dist/components/index.js +1 -0
  249. package/dist/components/p-BWkBF3Ng.js +1 -0
  250. package/dist/components/p-DcG1qXzH.js +1 -0
  251. package/dist/components/tg-activity-feed.d.ts +11 -0
  252. package/dist/components/tg-activity-feed.js +1 -0
  253. package/dist/components/tg-activity-stream.d.ts +11 -0
  254. package/dist/components/tg-activity-stream.js +1 -0
  255. package/dist/components/tg-ai-feedback.d.ts +11 -0
  256. package/dist/components/tg-ai-feedback.js +1 -0
  257. package/dist/components/tg-ai-insight-card.d.ts +11 -0
  258. package/dist/components/tg-ai-insight-card.js +1 -0
  259. package/dist/components/tg-alert.d.ts +11 -0
  260. package/dist/components/tg-alert.js +1 -0
  261. package/dist/components/tg-audio-player.d.ts +11 -0
  262. package/dist/components/tg-audio-player.js +1 -0
  263. package/dist/components/tg-autocomplete.d.ts +11 -0
  264. package/dist/components/tg-autocomplete.js +1 -0
  265. package/dist/components/tg-avatar.d.ts +11 -0
  266. package/dist/components/tg-avatar.js +1 -0
  267. package/dist/components/tg-badge.d.ts +11 -0
  268. package/dist/components/tg-badge.js +1 -0
  269. package/dist/components/tg-bottom-nav.d.ts +11 -0
  270. package/dist/components/tg-bottom-nav.js +1 -0
  271. package/dist/components/tg-bottom-sheet.d.ts +11 -0
  272. package/dist/components/tg-bottom-sheet.js +1 -0
  273. package/dist/components/tg-breadcrumb.d.ts +11 -0
  274. package/dist/components/tg-breadcrumb.js +1 -0
  275. package/dist/components/tg-button.d.ts +11 -0
  276. package/dist/components/tg-button.js +1 -0
  277. package/dist/components/tg-calendar-view.d.ts +11 -0
  278. package/dist/components/tg-calendar-view.js +1 -0
  279. package/dist/components/tg-card.d.ts +11 -0
  280. package/dist/components/tg-card.js +1 -0
  281. package/dist/components/tg-chat-message.d.ts +11 -0
  282. package/dist/components/tg-chat-message.js +1 -0
  283. package/dist/components/tg-chat.d.ts +11 -0
  284. package/dist/components/tg-chat.js +1 -0
  285. package/dist/components/tg-checkbox.d.ts +11 -0
  286. package/dist/components/tg-checkbox.js +1 -0
  287. package/dist/components/tg-combobox.d.ts +11 -0
  288. package/dist/components/tg-combobox.js +1 -0
  289. package/dist/components/tg-command-palette.d.ts +11 -0
  290. package/dist/components/tg-command-palette.js +1 -0
  291. package/dist/components/tg-confidence-badge.d.ts +11 -0
  292. package/dist/components/tg-confidence-badge.js +1 -0
  293. package/dist/components/tg-confirm-dialog.d.ts +11 -0
  294. package/dist/components/tg-confirm-dialog.js +1 -0
  295. package/dist/components/tg-context-menu.d.ts +11 -0
  296. package/dist/components/tg-context-menu.js +1 -0
  297. package/dist/components/tg-data-table.d.ts +11 -0
  298. package/dist/components/tg-data-table.js +1 -0
  299. package/dist/components/tg-date-picker.d.ts +11 -0
  300. package/dist/components/tg-date-picker.js +1 -0
  301. package/dist/components/tg-empty-state.d.ts +11 -0
  302. package/dist/components/tg-empty-state.js +1 -0
  303. package/dist/components/tg-expandable-row.d.ts +11 -0
  304. package/dist/components/tg-expandable-row.js +1 -0
  305. package/dist/components/tg-fab.d.ts +11 -0
  306. package/dist/components/tg-fab.js +1 -0
  307. package/dist/components/tg-file-upload.d.ts +11 -0
  308. package/dist/components/tg-file-upload.js +1 -0
  309. package/dist/components/tg-global-loader.d.ts +11 -0
  310. package/dist/components/tg-global-loader.js +1 -0
  311. package/dist/components/tg-heatmap.d.ts +11 -0
  312. package/dist/components/tg-heatmap.js +1 -0
  313. package/dist/components/tg-image-gallery.d.ts +11 -0
  314. package/dist/components/tg-image-gallery.js +1 -0
  315. package/dist/components/tg-input.d.ts +11 -0
  316. package/dist/components/tg-input.js +1 -0
  317. package/dist/components/tg-kanban-board.d.ts +11 -0
  318. package/dist/components/tg-kanban-board.js +1 -0
  319. package/dist/components/tg-kpi-card.d.ts +11 -0
  320. package/dist/components/tg-kpi-card.js +1 -0
  321. package/dist/components/tg-live-badge.d.ts +11 -0
  322. package/dist/components/tg-live-badge.js +1 -0
  323. package/dist/components/tg-login-form.d.ts +11 -0
  324. package/dist/components/tg-login-form.js +1 -0
  325. package/dist/components/tg-mega-menu.d.ts +11 -0
  326. package/dist/components/tg-mega-menu.js +1 -0
  327. package/dist/components/tg-modal.d.ts +11 -0
  328. package/dist/components/tg-modal.js +1 -0
  329. package/dist/components/tg-model-selector.d.ts +11 -0
  330. package/dist/components/tg-model-selector.js +1 -0
  331. package/dist/components/tg-multi-select.d.ts +11 -0
  332. package/dist/components/tg-multi-select.js +1 -0
  333. package/dist/components/tg-navbar.d.ts +11 -0
  334. package/dist/components/tg-navbar.js +1 -0
  335. package/dist/components/tg-otp-input.d.ts +11 -0
  336. package/dist/components/tg-otp-input.js +1 -0
  337. package/dist/components/tg-pagination.d.ts +11 -0
  338. package/dist/components/tg-pagination.js +1 -0
  339. package/dist/components/tg-presence-indicator.d.ts +11 -0
  340. package/dist/components/tg-presence-indicator.js +1 -0
  341. package/dist/components/tg-progress.d.ts +11 -0
  342. package/dist/components/tg-progress.js +1 -0
  343. package/dist/components/tg-prompt-input.d.ts +11 -0
  344. package/dist/components/tg-prompt-input.js +1 -0
  345. package/dist/components/tg-pull-to-refresh.d.ts +11 -0
  346. package/dist/components/tg-pull-to-refresh.js +1 -0
  347. package/dist/components/tg-quick-switcher.d.ts +11 -0
  348. package/dist/components/tg-quick-switcher.js +1 -0
  349. package/dist/components/tg-radio.d.ts +11 -0
  350. package/dist/components/tg-radio.js +1 -0
  351. package/dist/components/tg-retry-ui.d.ts +11 -0
  352. package/dist/components/tg-retry-ui.js +1 -0
  353. package/dist/components/tg-rich-editor.d.ts +11 -0
  354. package/dist/components/tg-rich-editor.js +1 -0
  355. package/dist/components/tg-role-badge.d.ts +11 -0
  356. package/dist/components/tg-role-badge.js +1 -0
  357. package/dist/components/tg-select.d.ts +11 -0
  358. package/dist/components/tg-select.js +1 -0
  359. package/dist/components/tg-session-expired.d.ts +11 -0
  360. package/dist/components/tg-session-expired.js +1 -0
  361. package/dist/components/tg-sidebar.d.ts +11 -0
  362. package/dist/components/tg-sidebar.js +1 -0
  363. package/dist/components/tg-skeleton.d.ts +11 -0
  364. package/dist/components/tg-skeleton.js +1 -0
  365. package/dist/components/tg-slider.d.ts +11 -0
  366. package/dist/components/tg-slider.js +1 -0
  367. package/dist/components/tg-source-citation.d.ts +11 -0
  368. package/dist/components/tg-source-citation.js +1 -0
  369. package/dist/components/tg-spinner.d.ts +11 -0
  370. package/dist/components/tg-spinner.js +1 -0
  371. package/dist/components/tg-stat-widget.d.ts +11 -0
  372. package/dist/components/tg-stat-widget.js +1 -0
  373. package/dist/components/tg-status-badge.d.ts +11 -0
  374. package/dist/components/tg-status-badge.js +1 -0
  375. package/dist/components/tg-stepper-input.d.ts +11 -0
  376. package/dist/components/tg-stepper-input.js +1 -0
  377. package/dist/components/tg-stepper.d.ts +11 -0
  378. package/dist/components/tg-stepper.js +1 -0
  379. package/dist/components/tg-streaming-response.d.ts +11 -0
  380. package/dist/components/tg-streaming-response.js +1 -0
  381. package/dist/components/tg-switch.d.ts +11 -0
  382. package/dist/components/tg-switch.js +1 -0
  383. package/dist/components/tg-table.d.ts +11 -0
  384. package/dist/components/tg-table.js +1 -0
  385. package/dist/components/tg-tabs.d.ts +11 -0
  386. package/dist/components/tg-tabs.js +1 -0
  387. package/dist/components/tg-tag.d.ts +11 -0
  388. package/dist/components/tg-tag.js +1 -0
  389. package/dist/components/tg-textarea.d.ts +11 -0
  390. package/dist/components/tg-textarea.js +1 -0
  391. package/dist/components/tg-time-picker.d.ts +11 -0
  392. package/dist/components/tg-time-picker.js +1 -0
  393. package/dist/components/tg-timeline.d.ts +11 -0
  394. package/dist/components/tg-timeline.js +1 -0
  395. package/dist/components/tg-toast.d.ts +11 -0
  396. package/dist/components/tg-toast.js +1 -0
  397. package/dist/components/tg-token-usage.d.ts +11 -0
  398. package/dist/components/tg-token-usage.js +1 -0
  399. package/dist/components/tg-tooltip.d.ts +11 -0
  400. package/dist/components/tg-tooltip.js +1 -0
  401. package/dist/components/tg-tree-view.d.ts +11 -0
  402. package/dist/components/tg-tree-view.js +1 -0
  403. package/dist/components/tg-undo-snackbar.d.ts +11 -0
  404. package/dist/components/tg-undo-snackbar.js +1 -0
  405. package/dist/components/tg-video-player.d.ts +11 -0
  406. package/dist/components/tg-video-player.js +1 -0
  407. package/dist/components/tg-wizard-nav.d.ts +11 -0
  408. package/dist/components/tg-wizard-nav.js +1 -0
  409. package/dist/docs.d.ts +480 -0
  410. package/dist/docs.json +14240 -0
  411. package/dist/esm/index-CXqO9vvj.js +2010 -0
  412. package/dist/esm/index.js +1 -0
  413. package/dist/esm/loader.js +10 -0
  414. package/dist/esm/teranga-ds.js +20 -0
  415. package/dist/esm/tg-activity-feed.entry.js +27 -0
  416. package/dist/esm/tg-activity-stream.entry.js +28 -0
  417. package/dist/esm/tg-ai-feedback.entry.js +27 -0
  418. package/dist/esm/tg-ai-insight-card.entry.js +18 -0
  419. package/dist/esm/tg-alert.entry.js +40 -0
  420. package/dist/esm/tg-audio-player.entry.js +44 -0
  421. package/dist/esm/tg-autocomplete.entry.js +52 -0
  422. package/dist/esm/tg-avatar.entry.js +37 -0
  423. package/dist/esm/tg-badge.entry.js +29 -0
  424. package/dist/esm/tg-bottom-nav.entry.js +28 -0
  425. package/dist/esm/tg-bottom-sheet.entry.js +19 -0
  426. package/dist/esm/tg-breadcrumb.entry.js +51 -0
  427. package/dist/esm/tg-button.entry.js +43 -0
  428. package/dist/esm/tg-calendar-view.entry.js +51 -0
  429. package/dist/esm/tg-card.entry.js +29 -0
  430. package/dist/esm/tg-chat-message.entry.js +17 -0
  431. package/dist/esm/tg-chat.entry.js +57 -0
  432. package/dist/esm/tg-checkbox.entry.js +29 -0
  433. package/dist/esm/tg-combobox.entry.js +66 -0
  434. package/dist/esm/tg-command-palette.entry.js +64 -0
  435. package/dist/esm/tg-confidence-badge.entry.js +25 -0
  436. package/dist/esm/tg-confirm-dialog.entry.js +25 -0
  437. package/dist/esm/tg-context-menu.entry.js +33 -0
  438. package/dist/esm/tg-data-table.entry.js +88 -0
  439. package/dist/esm/tg-date-picker.entry.js +54 -0
  440. package/dist/esm/tg-empty-state.entry.js +17 -0
  441. package/dist/esm/tg-expandable-row.entry.js +17 -0
  442. package/dist/esm/tg-fab.entry.js +20 -0
  443. package/dist/esm/tg-file-upload.entry.js +84 -0
  444. package/dist/esm/tg-global-loader.entry.js +22 -0
  445. package/dist/esm/tg-heatmap.entry.js +63 -0
  446. package/dist/esm/tg-image-gallery.entry.js +30 -0
  447. package/dist/esm/tg-input.entry.js +49 -0
  448. package/dist/esm/tg-kanban-board.entry.js +28 -0
  449. package/dist/esm/tg-kpi-card.entry.js +18 -0
  450. package/dist/esm/tg-live-badge.entry.js +18 -0
  451. package/dist/esm/tg-login-form.entry.js +21 -0
  452. package/dist/esm/tg-mega-menu.entry.js +32 -0
  453. package/dist/esm/tg-modal.entry.js +41 -0
  454. package/dist/esm/tg-model-selector.entry.js +32 -0
  455. package/dist/esm/tg-multi-select.entry.js +65 -0
  456. package/dist/esm/tg-navbar.entry.js +41 -0
  457. package/dist/esm/tg-otp-input.entry.js +58 -0
  458. package/dist/esm/tg-pagination.entry.js +51 -0
  459. package/dist/esm/tg-presence-indicator.entry.js +31 -0
  460. package/dist/esm/tg-progress.entry.js +51 -0
  461. package/dist/esm/tg-prompt-input.entry.js +32 -0
  462. package/dist/esm/tg-pull-to-refresh.entry.js +35 -0
  463. package/dist/esm/tg-quick-switcher.entry.js +33 -0
  464. package/dist/esm/tg-radio.entry.js +27 -0
  465. package/dist/esm/tg-retry-ui.entry.js +20 -0
  466. package/dist/esm/tg-rich-editor.entry.js +22 -0
  467. package/dist/esm/tg-role-badge.entry.js +17 -0
  468. package/dist/esm/tg-select.entry.js +67 -0
  469. package/dist/esm/tg-session-expired.entry.js +22 -0
  470. package/dist/esm/tg-sidebar.entry.js +33 -0
  471. package/dist/esm/tg-skeleton.entry.js +28 -0
  472. package/dist/esm/tg-slider.entry.js +24 -0
  473. package/dist/esm/tg-source-citation.entry.js +27 -0
  474. package/dist/esm/tg-spinner.entry.js +25 -0
  475. package/dist/esm/tg-stat-widget.entry.js +17 -0
  476. package/dist/esm/tg-status-badge.entry.js +19 -0
  477. package/dist/esm/tg-stepper-input.entry.js +37 -0
  478. package/dist/esm/tg-stepper.entry.js +29 -0
  479. package/dist/esm/tg-streaming-response.entry.js +17 -0
  480. package/dist/esm/tg-switch.entry.js +29 -0
  481. package/dist/esm/tg-table.entry.js +111 -0
  482. package/dist/esm/tg-tabs.entry.js +45 -0
  483. package/dist/esm/tg-tag.entry.js +26 -0
  484. package/dist/esm/tg-textarea.entry.js +43 -0
  485. package/dist/esm/tg-time-picker.entry.js +35 -0
  486. package/dist/esm/tg-timeline.entry.js +28 -0
  487. package/dist/esm/tg-toast.entry.js +51 -0
  488. package/dist/esm/tg-token-usage.entry.js +21 -0
  489. package/dist/esm/tg-tooltip.entry.js +30 -0
  490. package/dist/esm/tg-tree-view.entry.js +51 -0
  491. package/dist/esm/tg-undo-snackbar.entry.js +28 -0
  492. package/dist/esm/tg-video-player.entry.js +17 -0
  493. package/dist/esm/tg-wizard-nav.entry.js +28 -0
  494. package/dist/index.cjs.js +1 -0
  495. package/dist/index.js +1 -0
  496. package/dist/teranga-ds/index.esm.js +0 -0
  497. package/dist/teranga-ds/p-003a47ca.entry.js +1 -0
  498. package/dist/teranga-ds/p-017ddeb1.entry.js +1 -0
  499. package/dist/teranga-ds/p-02c5a12d.entry.js +1 -0
  500. package/dist/teranga-ds/p-0a42664a.entry.js +1 -0
  501. package/dist/teranga-ds/p-0b076dde.entry.js +1 -0
  502. package/dist/teranga-ds/p-0c4d9863.entry.js +1 -0
  503. package/dist/teranga-ds/p-0e8e624c.entry.js +1 -0
  504. package/dist/teranga-ds/p-188921a5.entry.js +1 -0
  505. package/dist/teranga-ds/p-1925d476.entry.js +1 -0
  506. package/dist/teranga-ds/p-19a4e248.entry.js +1 -0
  507. package/dist/teranga-ds/p-223af07c.entry.js +1 -0
  508. package/dist/teranga-ds/p-229331e3.entry.js +1 -0
  509. package/dist/teranga-ds/p-229a048d.entry.js +1 -0
  510. package/dist/teranga-ds/p-2537b595.entry.js +1 -0
  511. package/dist/teranga-ds/p-256c5686.entry.js +1 -0
  512. package/dist/teranga-ds/p-25af1fe1.entry.js +1 -0
  513. package/dist/teranga-ds/p-293e42b5.entry.js +1 -0
  514. package/dist/teranga-ds/p-29ce1cb3.entry.js +1 -0
  515. package/dist/teranga-ds/p-2bcf5c49.entry.js +1 -0
  516. package/dist/teranga-ds/p-2e8eb1cd.entry.js +1 -0
  517. package/dist/teranga-ds/p-321ec5a3.entry.js +1 -0
  518. package/dist/teranga-ds/p-34c8b3db.entry.js +1 -0
  519. package/dist/teranga-ds/p-3722c1c8.entry.js +1 -0
  520. package/dist/teranga-ds/p-386e978e.entry.js +1 -0
  521. package/dist/teranga-ds/p-45825e6c.entry.js +1 -0
  522. package/dist/teranga-ds/p-45d69cd2.entry.js +1 -0
  523. package/dist/teranga-ds/p-4ca63079.entry.js +1 -0
  524. package/dist/teranga-ds/p-4cdefae6.entry.js +1 -0
  525. package/dist/teranga-ds/p-4d3e0645.entry.js +1 -0
  526. package/dist/teranga-ds/p-5179d2e1.entry.js +1 -0
  527. package/dist/teranga-ds/p-5888f1d1.entry.js +1 -0
  528. package/dist/teranga-ds/p-58fd7fc1.entry.js +1 -0
  529. package/dist/teranga-ds/p-5b34ae37.entry.js +1 -0
  530. package/dist/teranga-ds/p-5cb3cab5.entry.js +1 -0
  531. package/dist/teranga-ds/p-5f64253e.entry.js +1 -0
  532. package/dist/teranga-ds/p-61bab799.entry.js +1 -0
  533. package/dist/teranga-ds/p-63285c1c.entry.js +1 -0
  534. package/dist/teranga-ds/p-6b40af59.entry.js +1 -0
  535. package/dist/teranga-ds/p-6c275cd2.entry.js +1 -0
  536. package/dist/teranga-ds/p-700908a2.entry.js +1 -0
  537. package/dist/teranga-ds/p-71257d05.entry.js +1 -0
  538. package/dist/teranga-ds/p-727543e6.entry.js +1 -0
  539. package/dist/teranga-ds/p-73082aef.entry.js +1 -0
  540. package/dist/teranga-ds/p-7acaa999.entry.js +1 -0
  541. package/dist/teranga-ds/p-81041fa8.entry.js +1 -0
  542. package/dist/teranga-ds/p-816417c6.entry.js +1 -0
  543. package/dist/teranga-ds/p-82057162.entry.js +1 -0
  544. package/dist/teranga-ds/p-84506153.entry.js +1 -0
  545. package/dist/teranga-ds/p-9259b7ad.entry.js +1 -0
  546. package/dist/teranga-ds/p-968f33cd.entry.js +1 -0
  547. package/dist/teranga-ds/p-9a86750e.entry.js +1 -0
  548. package/dist/teranga-ds/p-9b661306.entry.js +1 -0
  549. package/dist/teranga-ds/p-9ddbbe0b.entry.js +1 -0
  550. package/dist/teranga-ds/p-9f6a460b.entry.js +1 -0
  551. package/dist/teranga-ds/p-CXqO9vvj.js +2 -0
  552. package/dist/teranga-ds/p-a02dc9c0.entry.js +1 -0
  553. package/dist/teranga-ds/p-a25e8482.entry.js +1 -0
  554. package/dist/teranga-ds/p-a7ed37b2.entry.js +1 -0
  555. package/dist/teranga-ds/p-b4b5570e.entry.js +1 -0
  556. package/dist/teranga-ds/p-b762afff.entry.js +1 -0
  557. package/dist/teranga-ds/p-ba67b6cb.entry.js +1 -0
  558. package/dist/teranga-ds/p-bd667d1b.entry.js +1 -0
  559. package/dist/teranga-ds/p-bd7eefaa.entry.js +1 -0
  560. package/dist/teranga-ds/p-cd11c0ce.entry.js +1 -0
  561. package/dist/teranga-ds/p-d783708a.entry.js +1 -0
  562. package/dist/teranga-ds/p-dab038ae.entry.js +1 -0
  563. package/dist/teranga-ds/p-dda9a7c3.entry.js +1 -0
  564. package/dist/teranga-ds/p-deb81958.entry.js +1 -0
  565. package/dist/teranga-ds/p-dfaff259.entry.js +1 -0
  566. package/dist/teranga-ds/p-e0c5a144.entry.js +1 -0
  567. package/dist/teranga-ds/p-e26d2a8d.entry.js +1 -0
  568. package/dist/teranga-ds/p-e58a4ab8.entry.js +1 -0
  569. package/dist/teranga-ds/p-e8736bde.entry.js +1 -0
  570. package/dist/teranga-ds/p-eca93015.entry.js +1 -0
  571. package/dist/teranga-ds/p-ed2a5ec6.entry.js +1 -0
  572. package/dist/teranga-ds/p-ed48b855.entry.js +1 -0
  573. package/dist/teranga-ds/p-ee8c0470.entry.js +1 -0
  574. package/dist/teranga-ds/p-efff537c.entry.js +1 -0
  575. package/dist/teranga-ds/p-f5d99e53.entry.js +1 -0
  576. package/dist/teranga-ds/p-f790b8f4.entry.js +1 -0
  577. package/dist/teranga-ds/teranga-ds.css +1 -0
  578. package/dist/teranga-ds/teranga-ds.esm.js +1 -0
  579. package/dist/teranga-ds/teranga-tokens.css +189 -0
  580. package/dist/types/components/tg-activity-feed/tg-activity-feed.d.ts +13 -0
  581. package/dist/types/components/tg-activity-stream/tg-activity-stream.d.ts +14 -0
  582. package/dist/types/components/tg-ai-feedback/tg-ai-feedback.d.ts +14 -0
  583. package/dist/types/components/tg-ai-insight-card/tg-ai-insight-card.d.ts +9 -0
  584. package/dist/types/components/tg-alert/tg-alert.d.ts +28 -0
  585. package/dist/types/components/tg-audio-player/tg-audio-player.d.ts +15 -0
  586. package/dist/types/components/tg-autocomplete/tg-autocomplete.d.ts +21 -0
  587. package/dist/types/components/tg-avatar/tg-avatar.d.ts +27 -0
  588. package/dist/types/components/tg-badge/tg-badge.d.ts +21 -0
  589. package/dist/types/components/tg-bottom-nav/tg-bottom-nav.d.ts +14 -0
  590. package/dist/types/components/tg-bottom-sheet/tg-bottom-sheet.d.ts +7 -0
  591. package/dist/types/components/tg-breadcrumb/tg-breadcrumb.d.ts +12 -0
  592. package/dist/types/components/tg-button/tg-button.d.ts +35 -0
  593. package/dist/types/components/tg-calendar-view/tg-calendar-view.d.ts +18 -0
  594. package/dist/types/components/tg-card/tg-card.d.ts +27 -0
  595. package/dist/types/components/tg-chat/tg-chat.d.ts +24 -0
  596. package/dist/types/components/tg-chat-message/tg-chat-message.d.ts +7 -0
  597. package/dist/types/components/tg-checkbox/tg-checkbox.d.ts +14 -0
  598. package/dist/types/components/tg-combobox/tg-combobox.d.ts +30 -0
  599. package/dist/types/components/tg-command-palette/tg-command-palette.d.ts +20 -0
  600. package/dist/types/components/tg-confidence-badge/tg-confidence-badge.d.ts +7 -0
  601. package/dist/types/components/tg-confirm-dialog/tg-confirm-dialog.d.ts +13 -0
  602. package/dist/types/components/tg-context-menu/tg-context-menu.d.ts +21 -0
  603. package/dist/types/components/tg-data-table/tg-data-table.d.ts +34 -0
  604. package/dist/types/components/tg-date-picker/tg-date-picker.d.ts +22 -0
  605. package/dist/types/components/tg-empty-state/tg-empty-state.d.ts +8 -0
  606. package/dist/types/components/tg-expandable-row/tg-expandable-row.d.ts +7 -0
  607. package/dist/types/components/tg-fab/tg-fab.d.ts +11 -0
  608. package/dist/types/components/tg-file-upload/tg-file-upload.d.ts +28 -0
  609. package/dist/types/components/tg-global-loader/tg-global-loader.d.ts +6 -0
  610. package/dist/types/components/tg-heatmap/tg-heatmap.d.ts +14 -0
  611. package/dist/types/components/tg-image-gallery/tg-image-gallery.d.ts +12 -0
  612. package/dist/types/components/tg-input/tg-input.d.ts +48 -0
  613. package/dist/types/components/tg-kanban-board/tg-kanban-board.d.ts +23 -0
  614. package/dist/types/components/tg-kpi-card/tg-kpi-card.d.ts +10 -0
  615. package/dist/types/components/tg-live-badge/tg-live-badge.d.ts +6 -0
  616. package/dist/types/components/tg-login-form/tg-login-form.d.ts +16 -0
  617. package/dist/types/components/tg-mega-menu/tg-mega-menu.d.ts +21 -0
  618. package/dist/types/components/tg-modal/tg-modal.d.ts +14 -0
  619. package/dist/types/components/tg-model-selector/tg-model-selector.d.ts +18 -0
  620. package/dist/types/components/tg-multi-select/tg-multi-select.d.ts +25 -0
  621. package/dist/types/components/tg-navbar/tg-navbar.d.ts +16 -0
  622. package/dist/types/components/tg-otp-input/tg-otp-input.d.ts +18 -0
  623. package/dist/types/components/tg-pagination/tg-pagination.d.ts +10 -0
  624. package/dist/types/components/tg-presence-indicator/tg-presence-indicator.d.ts +10 -0
  625. package/dist/types/components/tg-progress/tg-progress.d.ts +18 -0
  626. package/dist/types/components/tg-prompt-input/tg-prompt-input.d.ts +12 -0
  627. package/dist/types/components/tg-pull-to-refresh/tg-pull-to-refresh.d.ts +15 -0
  628. package/dist/types/components/tg-quick-switcher/tg-quick-switcher.d.ts +18 -0
  629. package/dist/types/components/tg-radio/tg-radio.d.ts +12 -0
  630. package/dist/types/components/tg-retry-ui/tg-retry-ui.d.ts +10 -0
  631. package/dist/types/components/tg-rich-editor/tg-rich-editor.d.ts +13 -0
  632. package/dist/types/components/tg-role-badge/tg-role-badge.d.ts +6 -0
  633. package/dist/types/components/tg-select/tg-select.d.ts +27 -0
  634. package/dist/types/components/tg-session-expired/tg-session-expired.d.ts +9 -0
  635. package/dist/types/components/tg-sidebar/tg-sidebar.d.ts +20 -0
  636. package/dist/types/components/tg-skeleton/tg-skeleton.d.ts +8 -0
  637. package/dist/types/components/tg-slider/tg-slider.d.ts +15 -0
  638. package/dist/types/components/tg-source-citation/tg-source-citation.d.ts +10 -0
  639. package/dist/types/components/tg-spinner/tg-spinner.d.ts +16 -0
  640. package/dist/types/components/tg-stat-widget/tg-stat-widget.d.ts +9 -0
  641. package/dist/types/components/tg-status-badge/tg-status-badge.d.ts +7 -0
  642. package/dist/types/components/tg-stepper/tg-stepper.d.ts +11 -0
  643. package/dist/types/components/tg-stepper-input/tg-stepper-input.d.ts +15 -0
  644. package/dist/types/components/tg-streaming-response/tg-streaming-response.d.ts +7 -0
  645. package/dist/types/components/tg-switch/tg-switch.d.ts +12 -0
  646. package/dist/types/components/tg-table/tg-table.d.ts +30 -0
  647. package/dist/types/components/tg-tabs/tg-tabs.d.ts +18 -0
  648. package/dist/types/components/tg-tag/tg-tag.d.ts +10 -0
  649. package/dist/types/components/tg-textarea/tg-textarea.d.ts +23 -0
  650. package/dist/types/components/tg-time-picker/tg-time-picker.d.ts +16 -0
  651. package/dist/types/components/tg-timeline/tg-timeline.d.ts +13 -0
  652. package/dist/types/components/tg-toast/tg-toast.d.ts +17 -0
  653. package/dist/types/components/tg-token-usage/tg-token-usage.d.ts +10 -0
  654. package/dist/types/components/tg-tooltip/tg-tooltip.d.ts +10 -0
  655. package/dist/types/components/tg-tree-view/tg-tree-view.d.ts +17 -0
  656. package/dist/types/components/tg-undo-snackbar/tg-undo-snackbar.d.ts +11 -0
  657. package/dist/types/components/tg-video-player/tg-video-player.d.ts +7 -0
  658. package/dist/types/components/tg-wizard-nav/tg-wizard-nav.d.ts +15 -0
  659. package/dist/types/components.d.ts +5028 -0
  660. package/dist/types/index.d.ts +8 -0
  661. package/dist/types/stencil-public-runtime.d.ts +1860 -0
  662. package/loader/cdn.js +1 -0
  663. package/loader/index.cjs.js +1 -0
  664. package/loader/index.d.ts +24 -0
  665. package/loader/index.es2017.js +1 -0
  666. package/loader/index.js +2 -0
  667. package/package.json +74 -0
@@ -0,0 +1,54 @@
1
+ import { r as registerInstance, c as createEvent, h, H as Host } from './index-CXqO9vvj.js';
2
+
3
+ const tgDatePickerCss = () => `:host{display:block}.tg-date-picker{position:relative;font-family:var(--tg-font-family-sans)}.tg-dp__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)}.tg-dp__input-wrap{display:flex;align-items:center;gap:var(--tg-spacing-2);border:1px solid var(--tg-color-border-strong);border-radius:var(--tg-radius-lg);background:var(--tg-color-surface-raised);padding:0 var(--tg-spacing-3);cursor:pointer;transition:border-color var(--tg-duration-fast), box-shadow var(--tg-duration-fast)}.tg-dp__input-wrap:focus-within{border-color:var(--tg-color-border-focus);box-shadow:var(--tg-focus-ring)}.tg-dp__input-wrap--invalid{border-color:var(--tg-color-danger)}.tg-dp__icon{color:var(--tg-color-text-secondary);flex-shrink:0}.tg-dp__input{flex:1;border:none;outline:none;background:transparent;color:var(--tg-color-text-primary);font-family:inherit;cursor:pointer}.tg-date-picker--sm .tg-dp__input{height:2rem;font-size:var(--tg-font-size-xs)}.tg-date-picker--md .tg-dp__input{height:2.5rem;font-size:var(--tg-font-size-sm)}.tg-date-picker--lg .tg-dp__input{height:3rem;font-size:var(--tg-font-size-md)}.tg-dp__input::placeholder{color:var(--tg-color-text-disabled)}.tg-dp__calendar{position:absolute;top:100%;left: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-xl);box-shadow:var(--tg-shadow-lg);z-index:1000;padding:var(--tg-spacing-3);min-width:280px;animation:tg-dp-enter var(--tg-duration-fast) var(--tg-ease-out)}@keyframes tg-dp-enter{from{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.tg-dp__nav{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--tg-spacing-2)}.tg-dp__nav-btn{background:none;border:none;cursor:pointer;font-size:1.25rem;color:var(--tg-color-text-primary);padding:var(--tg-spacing-1);border-radius:var(--tg-radius-md);transition:background var(--tg-duration-fast)}.tg-dp__nav-btn:hover{background:var(--tg-color-primary-subtle)}.tg-dp__month-year{font-size:var(--tg-font-size-sm);font-weight:var(--tg-font-weight-semibold)}.tg-dp__weekdays{display:grid;grid-template-columns:repeat(7, 1fr);margin-bottom:var(--tg-spacing-1)}.tg-dp__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-1) 0}.tg-dp__days{display:grid;grid-template-columns:repeat(7, 1fr);gap:2px}.tg-dp__day{display:flex;align-items:center;justify-content:center;width:2rem;height:2rem;margin:auto;border:none;background:none;cursor:pointer;font-size:var(--tg-font-size-xs);color:var(--tg-color-text-primary);border-radius:var(--tg-radius-md);transition:background var(--tg-duration-fast)}.tg-dp__day:hover{background:var(--tg-color-primary-subtle)}.tg-dp__day--sel{background:var(--tg-color-primary);color:var(--tg-color-primary-on);font-weight:var(--tg-font-weight-semibold)}.tg-dp__day--today{border:1px solid var(--tg-color-primary)}.tg-dp__day--empty{cursor:default}.tg-dp__error{margin:var(--tg-spacing-1) 0 0;font-size:var(--tg-font-size-xs);color:var(--tg-color-danger)}.tg-dp__helper{margin:var(--tg-spacing-1) 0 0;font-size:var(--tg-font-size-xs);color:var(--tg-color-text-secondary)}`;
4
+
5
+ const TgDatePicker = class {
6
+ constructor(hostRef) {
7
+ registerInstance(this, hostRef);
8
+ this.tgChange = createEvent(this, "tgChange");
9
+ this.placeholder = 'JJ/MM/AAAA';
10
+ this.disabled = false;
11
+ this.invalid = false;
12
+ this.size = 'md';
13
+ this.open = false;
14
+ this.viewDate = new Date();
15
+ this.prevMonth = () => { const d = new Date(this.viewDate); d.setMonth(d.getMonth() - 1); this.viewDate = d; };
16
+ this.nextMonth = () => { const d = new Date(this.viewDate); d.setMonth(d.getMonth() + 1); this.viewDate = d; };
17
+ }
18
+ onDocClick() { this.open = false; }
19
+ daysInMonth(y, m) { return new Date(y, m + 1, 0).getDate(); }
20
+ firstDow(y, m) { return new Date(y, m, 1).getDay(); }
21
+ selectDay(day) {
22
+ const y = this.viewDate.getFullYear();
23
+ const m = String(this.viewDate.getMonth() + 1).padStart(2, '0');
24
+ const d = String(day).padStart(2, '0');
25
+ this.tgChange.emit(y + '-' + m + '-' + d);
26
+ this.open = false;
27
+ }
28
+ formatDisplay() {
29
+ if (!this.value)
30
+ return '';
31
+ const p = this.value.split('-');
32
+ return p[2] + '/' + p[1] + '/' + p[0];
33
+ }
34
+ render() {
35
+ const y = this.viewDate.getFullYear();
36
+ const m = this.viewDate.getMonth();
37
+ const days = this.daysInMonth(y, m);
38
+ const first = this.firstDow(y, m);
39
+ const months = ['Janvier', 'Février', 'Mars', 'Avril', 'Mai', 'Juin', 'Juillet', 'Août', 'Septembre', 'Octobre', 'Novembre', 'Décembre'];
40
+ const dNames = ['Di', 'Lu', 'Ma', 'Me', 'Je', 'Ve', 'Sa'];
41
+ const cells = [];
42
+ for (let i = 0; i < first; i++)
43
+ cells.push(null);
44
+ for (let i = 1; i <= days; i++)
45
+ cells.push(i);
46
+ return (h(Host, { key: '1bdb0e804ddd590b60b2babcee9189ccfc8103b0' }, h("div", { key: '5a7506eabbc0cefded2504d5266eb3a1ddfe525f', class: 'tg-date-picker tg-date-picker--' + this.size, onClick: (e) => e.stopPropagation() }, this.label && h("label", { key: 'd97ca1c91f0a1d2aef7f4ffabd1704621f702b76', class: "tg-dp__label" }, this.label), h("div", { key: 'fe526741305cebfe28998b3571e036971de8bac2', class: { 'tg-dp__input-wrap': true, 'tg-dp__input-wrap--invalid': this.invalid }, onClick: () => {
47
+ if (!this.disabled)
48
+ this.open = !this.open;
49
+ } }, h("svg", { key: '65662ba0e277a24d7872564383f57d9e62a6af91', class: "tg-dp__icon", viewBox: "0 0 20 20", fill: "currentColor", width: "16", height: "16" }, h("path", { key: '32dc549db6c1176eb768b93d9b8f9229bfb50d04', "fill-rule": "evenodd", d: "M5.75 2a.75.75 0 01.75.75V4h7V2.75a.75.75 0 011.5 0V4h.25A2.75 2.75 0 0118 6.75v8.5A2.75 2.75 0 0115.25 18H4.75A2.75 2.75 0 012 15.25v-8.5A2.75 2.75 0 014.75 4H5V2.75A.75.75 0 015.75 2zm-1 5.5a.75.75 0 000 1.5h10.5a.75.75 0 000-1.5H4.75z" })), h("input", { key: '4042c9d0da06a27715fe0f90a02d327b53c64942', class: "tg-dp__input", type: "text", readonly: true, value: this.formatDisplay(), placeholder: this.placeholder, disabled: this.disabled })), this.open && (h("div", { key: 'c197780bc0024a4dd861ee916596fd46e83aaceb', class: "tg-dp__calendar" }, h("div", { key: '1e0f610b1e5334f44c6cc986efe2dc054a9bc91c', class: "tg-dp__nav" }, h("button", { key: '194e3c5829de2c81497a453ff0f3e32229e1b8eb', class: "tg-dp__nav-btn", type: "button", onClick: this.prevMonth }, "\u2039"), h("span", { key: '7976fef62f152f1707f9aa8bd263ea6ca440b27b', class: "tg-dp__month-year" }, months[m], " ", y), h("button", { key: 'ffe86d738629bfce856af063efb4c4fe333ff81f', class: "tg-dp__nav-btn", type: "button", onClick: this.nextMonth }, "\u203A")), h("div", { key: '1392d14a55be0f9761f48b63dfaf5ed87c576de9', class: "tg-dp__weekdays" }, dNames.map(d => h("span", { class: "tg-dp__wd" }, d))), h("div", { key: 'a238b5c68e95aaba5d09e5eb8926414ccf9f3ff7', class: "tg-dp__days" }, cells.map(day => day ? (h("button", { class: { 'tg-dp__day': true, 'tg-dp__day--sel': this.value === y + '-' + String(m + 1).padStart(2, '0') + '-' + String(day).padStart(2, '0'), 'tg-dp__day--today': new Date().getDate() === day && new Date().getMonth() === m && new Date().getFullYear() === y }, type: "button", onClick: () => this.selectDay(day) }, day)) : h("span", { class: "tg-dp__day tg-dp__day--empty" }))))), this.errorText && h("p", { key: 'b2806b9a78c219aeb93df813b1154359b9b8622d', class: "tg-dp__error" }, this.errorText), !this.errorText && this.helperText && h("p", { key: '5dd972b9d8229e6aa5c8c8a8ada81e302c375518', class: "tg-dp__helper" }, this.helperText))));
50
+ }
51
+ };
52
+ TgDatePicker.style = tgDatePickerCss();
53
+
54
+ export { TgDatePicker as tg_date_picker };
@@ -0,0 +1,17 @@
1
+ import { r as registerInstance, h, H as Host } from './index-CXqO9vvj.js';
2
+
3
+ const tgEmptyStateCss = () => `:host{display:block}.tg-es{display:flex;flex-direction:column;align-items:center;text-align:center;padding:var(--tg-spacing-10) var(--tg-spacing-6);font-family:var(--tg-font-family-sans)}.tg-es__icon{font-size:3rem;margin-bottom:var(--tg-spacing-4);color:var(--tg-color-text-disabled)}.tg-es__heading{margin:0 0 var(--tg-spacing-2);font-size:var(--tg-font-size-lg);font-weight:var(--tg-font-weight-semibold);color:var(--tg-color-text-primary)}.tg-es__desc{margin:0 0 var(--tg-spacing-4);max-width:24rem;font-size:var(--tg-font-size-sm);color:var(--tg-color-text-secondary);line-height:var(--tg-line-height-relaxed)}.tg-es__action{background:var(--tg-color-primary);color:var(--tg-color-primary-on);border:none;border-radius:var(--tg-radius-lg);padding:var(--tg-spacing-2) var(--tg-spacing-5);font-size:var(--tg-font-size-sm);font-weight:var(--tg-font-weight-medium);cursor:pointer;transition:filter var(--tg-duration-fast)}.tg-es__action:hover{filter:brightness(1.1)}`;
4
+
5
+ const TgEmptyState = class {
6
+ constructor(hostRef) {
7
+ registerInstance(this, hostRef);
8
+ this.heading = '';
9
+ this.variant = 'default';
10
+ }
11
+ render() {
12
+ return (h(Host, { key: 'd944e9a58cddd66f6219051f03796f6aa57d99f2' }, h("div", { key: '2f4dbe36de5e2de74ef26c21e836cd44c3d54268', class: 'tg-es tg-es--' + this.variant }, this.icon && h("div", { key: 'c2ee8e4d1efa67ddb57a9ad9578fd2ac308a84e4', class: "tg-es__icon" }, this.icon), h("slot", { key: '88a9a65a7a33a12c534420a7c8cead7359293dbd', name: "illustration" }), h("h3", { key: 'd0e4e54fdce2b3c0c508f858f3f8748d741da683', class: "tg-es__heading" }, this.heading), this.description && h("p", { key: 'ff6e9dc56b7d0952ee375639df242737490a9bfc', class: "tg-es__desc" }, this.description), this.actionLabel && h("button", { key: '76d760c3aa4eb844639156a333635ac277ff960d', class: "tg-es__action", type: "button" }, this.actionLabel), h("slot", { key: 'af147b503e0736ad1de68def15514799e1f8fbf2' }))));
13
+ }
14
+ };
15
+ TgEmptyState.style = tgEmptyStateCss();
16
+
17
+ export { TgEmptyState as tg_empty_state };
@@ -0,0 +1,17 @@
1
+ import { r as registerInstance, h, H as Host } from './index-CXqO9vvj.js';
2
+
3
+ const tgExpandableRowCss = () => `:host{display:block}.tg-er{font-family:var(--tg-font-family-sans);border:1px solid var(--tg-color-border);border-radius:var(--tg-radius-lg);overflow:hidden;transition:box-shadow var(--tg-duration-fast)}.tg-er--open{box-shadow:var(--tg-shadow-sm)}.tg-er__header{display:flex;align-items:center;gap:var(--tg-spacing-3);padding:var(--tg-spacing-3) var(--tg-spacing-4);cursor:pointer;background:var(--tg-color-surface-raised);transition:background var(--tg-duration-fast)}.tg-er__header:hover{background:var(--tg-color-primary-subtle)}.tg-er__icon{font-size:1.25rem;flex-shrink:0}.tg-er__text{flex:1}.tg-er__title{display:block;font-size:var(--tg-font-size-sm);font-weight:var(--tg-font-weight-medium);color:var(--tg-color-text-primary)}.tg-er__sub{display:block;font-size:var(--tg-font-size-xs);color:var(--tg-color-text-secondary);margin-top:2px}.tg-er__chevron{display:flex;color:var(--tg-color-text-secondary);transition:transform var(--tg-duration-fast)}.tg-er__chevron--open{transform:rotate(180deg)}.tg-er__body{padding:var(--tg-spacing-4);border-top:1px solid var(--tg-color-border);background:var(--tg-color-surface-raised);font-size:var(--tg-font-size-sm);color:var(--tg-color-text-primary);animation:tg-er-slide var(--tg-duration-fast) var(--tg-ease-out)}@keyframes tg-er-slide{from{opacity:0;max-height:0}to{opacity:1;max-height:500px}}`;
4
+
5
+ const TgExpandableRow = class {
6
+ constructor(hostRef) {
7
+ registerInstance(this, hostRef);
8
+ this.header = '';
9
+ this.expanded = false;
10
+ }
11
+ render() {
12
+ return (h(Host, { key: '265ad774c81210f43635085f8891f0aba5bf305f' }, h("div", { key: '9d0f0fbe35d033abe53d49c34fc29010a1fff3e6', class: { 'tg-er': true, 'tg-er--open': this.expanded } }, h("div", { key: '8fd0aed7ffa9221024fa33ff8508ed33764a2e16', class: "tg-er__header", onClick: () => { this.expanded = !this.expanded; } }, this.icon && h("span", { key: '27aa57c9e0c28a49f4fbd6610296c2cba1d8e9b3', class: "tg-er__icon" }, this.icon), h("div", { key: '916ee17fc8df06f0a7691a2415c84ee5e9e0ab1d', class: "tg-er__text" }, h("span", { key: '6730a2d337f3bb278a11683e4c36c7fa19aa652b', class: "tg-er__title" }, this.header), this.subtext && h("span", { key: 'f3ce90306dc584cd19f1a5f950ddb861acb1761c', class: "tg-er__sub" }, this.subtext)), h("span", { key: '10d999cde3027935a97ebfa50781518eec9abfac', class: { 'tg-er__chevron': true, 'tg-er__chevron--open': this.expanded } }, h("svg", { key: '99db2edc13b678d2b3b68f96a900e026904f0a0f', viewBox: "0 0 20 20", fill: "currentColor", width: "16", height: "16" }, h("path", { key: '03f5b1f103022a583bfbab4065591f32541c5253', "fill-rule": "evenodd", d: "M5.23 7.21a.75.75 0 011.06.02L10 11.168l3.71-3.938a.75.75 0 111.08 1.04l-4.25 4.5a.75.75 0 01-1.08 0l-4.25-4.5a.75.75 0 01.02-1.06z" })))), this.expanded && h("div", { key: '443203e99952b3fcf307f8b6527e0108a9e8ee23', class: "tg-er__body" }, h("slot", { key: 'c344a5dda39a42ab4e62498eb8f9326b768364fa' })))));
13
+ }
14
+ };
15
+ TgExpandableRow.style = tgExpandableRowCss();
16
+
17
+ export { TgExpandableRow as tg_expandable_row };
@@ -0,0 +1,20 @@
1
+ import { r as registerInstance, c as createEvent, h, H as Host } from './index-CXqO9vvj.js';
2
+
3
+ const tgFabCss = () => `:host{display:inline-flex}.tg-fab{display:inline-flex;align-items:center;justify-content:center;gap:var(--tg-spacing-2);border:none;border-radius:var(--tg-radius-full);cursor:pointer;font-family:var(--tg-font-family-sans);font-weight:var(--tg-font-weight-medium);transition:all var(--tg-duration-fast);box-shadow:var(--tg-shadow-lg)}.tg-fab:hover{transform:scale(1.05);box-shadow:var(--tg-shadow-xl)}.tg-fab:active{transform:scale(0.95)}.tg-fab--sm{width:2.5rem;height:2.5rem;font-size:var(--tg-font-size-xs)}.tg-fab--md{min-width:3rem;height:3rem;padding:0 var(--tg-spacing-3);font-size:var(--tg-font-size-sm)}.tg-fab--lg{min-width:3.5rem;height:3.5rem;padding:0 var(--tg-spacing-4);font-size:var(--tg-font-size-md)}.tg-fab--primary{background:var(--tg-color-primary);color:var(--tg-color-primary-on)}.tg-fab--secondary{background:var(--tg-color-surface-raised);color:var(--tg-color-text-primary);border:1px solid var(--tg-color-border)}.tg-fab--success{background:var(--tg-color-success);color:white}.tg-fab--danger{background:var(--tg-color-danger);color:white}.tg-fab--fixed{position:fixed;z-index:1000}.tg-fab--bottom-right{bottom:var(--tg-spacing-6);right:var(--tg-spacing-6)}.tg-fab--bottom-left{bottom:var(--tg-spacing-6);left:var(--tg-spacing-6)}.tg-fab--bottom-center{bottom:var(--tg-spacing-6);left:50%;transform:translateX(-50%)}.tg-fab__icon{font-size:1.25em}`;
4
+
5
+ const TgFab = class {
6
+ constructor(hostRef) {
7
+ registerInstance(this, hostRef);
8
+ this.tgClick = createEvent(this, "tgClick");
9
+ this.variant = 'primary';
10
+ this.size = 'md';
11
+ this.position = 'bottom-right';
12
+ this.fixed = true;
13
+ }
14
+ render() {
15
+ return (h(Host, { key: '6dd636b4f00a9e639a1c16e116a3d1baca5116f4' }, h("button", { key: '37a5641cc8f781ecdf7d1e7a2f8571a553c66d71', class: 'tg-fab tg-fab--' + this.variant + ' tg-fab--' + this.size + (this.fixed ? ' tg-fab--fixed tg-fab--' + this.position : ''), type: "button", onClick: () => this.tgClick.emit() }, this.icon && h("span", { key: '8d327d220b24a43fdac63984e014b9a10da0c141', class: "tg-fab__icon" }, this.icon), this.label && h("span", { key: 'df06e983206107d5d80f3a184576447152e4be40', class: "tg-fab__label" }, this.label), !this.icon && !this.label && h("svg", { key: '31e5b6735e0aac2bc6d958a489e6f9beaa6ea75d', viewBox: "0 0 20 20", fill: "currentColor", width: "20", height: "20" }, h("path", { key: '52fe468dd13cc4978ee607a3f3886e562cfefa29', d: "M10.75 4.75a.75.75 0 00-1.5 0v4.5h-4.5a.75.75 0 000 1.5h4.5v4.5a.75.75 0 001.5 0v-4.5h4.5a.75.75 0 000-1.5h-4.5v-4.5z" })))));
16
+ }
17
+ };
18
+ TgFab.style = tgFabCss();
19
+
20
+ export { TgFab as tg_fab };
@@ -0,0 +1,84 @@
1
+ import { r as registerInstance, c as createEvent, h, H as Host, a as getElement } from './index-CXqO9vvj.js';
2
+
3
+ const tgFileUploadCss = () => `:host{display:block}.tg-file-upload{display:flex;flex-direction:column;gap:var(--tg-spacing-sm, 12px);font-family:var(--tg-font-family, sans-serif)}.tg-file-upload__dropzone{border:2px dashed var(--tg-color-neutral-300, #d1d5db);border-radius:var(--tg-radius-lg, 12px);padding:var(--tg-spacing-xl, 32px) var(--tg-spacing-lg, 24px);text-align:center;cursor:pointer;transition:border-color var(--tg-duration-fast, 150ms), background var(--tg-duration-fast, 150ms);background:var(--tg-color-neutral-50, #f9fafb)}.tg-file-upload__dropzone:hover{border-color:var(--tg-color-primary, #00853F);background:var(--tg-color-primary-50, #ecfdf5)}.tg-file-upload__dropzone--active{border-color:var(--tg-color-primary, #00853F);background:var(--tg-color-primary-50, #ecfdf5);border-style:solid}.tg-file-upload__dropzone--error{border-color:var(--tg-color-danger, #dc2626);background:#fef2f2}.tg-file-upload__icon{width:48px;height:48px;margin:0 auto var(--tg-spacing-sm, 12px);color:var(--tg-color-neutral-400, #9ca3af);transition:color var(--tg-duration-fast, 150ms)}.tg-file-upload__dropzone:hover .tg-file-upload__icon,.tg-file-upload__dropzone--active .tg-file-upload__icon{color:var(--tg-color-primary, #00853F)}.tg-file-upload__icon svg{width:100%;height:100%}.tg-file-upload__text{font-size:var(--tg-font-size-sm, 0.8125rem);color:var(--tg-color-text-secondary, #6b7280)}.tg-file-upload__text strong{color:var(--tg-color-primary, #00853F);font-weight:var(--tg-font-weight-semibold, 600)}.tg-file-upload__hint{font-size:0.75rem;color:var(--tg-color-neutral-400, #9ca3af);margin-top:var(--tg-spacing-2xs, 4px)}.tg-file-upload__list{display:flex;flex-direction:column;gap:var(--tg-spacing-xs, 8px)}.tg-file-upload__file{display:flex;align-items:center;gap:var(--tg-spacing-sm, 12px);padding:var(--tg-spacing-sm, 12px);background:var(--tg-color-surface, #fff);border:1px solid var(--tg-color-neutral-200, #e5e7eb);border-radius:var(--tg-radius-md, 8px);animation:tg-file-upload-in var(--tg-duration-normal, 200ms) var(--tg-ease-out, ease-out)}@keyframes tg-file-upload-in{from{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.tg-file-upload__file-icon{width:36px;height:36px;border-radius:var(--tg-radius-md, 8px);background:var(--tg-color-primary-50, #ecfdf5);color:var(--tg-color-primary, #00853F);display:flex;align-items:center;justify-content:center;flex-shrink:0}.tg-file-upload__file-icon svg{width:18px;height:18px}.tg-file-upload__file-info{flex:1;min-width:0}.tg-file-upload__file-name{font-size:var(--tg-font-size-sm, 0.8125rem);font-weight:var(--tg-font-weight-medium, 500);color:var(--tg-color-text, #111827);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tg-file-upload__file-size{font-size:0.75rem;color:var(--tg-color-text-secondary, #6b7280)}.tg-file-upload__file-remove{appearance:none;border:none;background:transparent;cursor:pointer;color:var(--tg-color-text-secondary, #6b7280);padding:var(--tg-spacing-2xs, 4px);border-radius:var(--tg-radius-sm, 4px);display:flex;align-items:center;justify-content:center;transition:color var(--tg-duration-fast, 150ms), background var(--tg-duration-fast, 150ms);flex-shrink:0}.tg-file-upload__file-remove:hover{color:var(--tg-color-danger, #dc2626);background:#fef2f2}.tg-file-upload__file-remove:focus-visible{outline:none;box-shadow:var(--tg-focus-ring)}.tg-file-upload__file-remove svg{width:16px;height:16px}.tg-file-upload__error{font-size:0.75rem;color:var(--tg-color-danger, #dc2626);padding:0 var(--tg-spacing-2xs, 4px)}.tg-file-upload__input{display:none}`;
4
+
5
+ const TgFileUpload = class {
6
+ constructor(hostRef) {
7
+ registerInstance(this, hostRef);
8
+ this.tgFilesChange = createEvent(this, "tgFilesChange");
9
+ this.multiple = false;
10
+ this.maxSize = 10; // MB
11
+ this.maxFiles = 5;
12
+ this.label = 'Déposez vos fichiers ici';
13
+ this.files = [];
14
+ this.dragActive = false;
15
+ this.error = null;
16
+ this.addFiles = (fileList) => {
17
+ if (!fileList)
18
+ return;
19
+ const arr = Array.from(fileList);
20
+ const err = this.validate(arr);
21
+ if (err) {
22
+ this.error = err;
23
+ return;
24
+ }
25
+ this.error = null;
26
+ const newFiles = arr.map(f => ({
27
+ file: f,
28
+ id: `${Date.now()}-${Math.random().toString(36).slice(2, 8)}`,
29
+ }));
30
+ this.files = [...this.files, ...newFiles];
31
+ this.tgFilesChange.emit(this.files.map(f => f.file));
32
+ };
33
+ this.removeFile = (id) => {
34
+ this.files = this.files.filter(f => f.id !== id);
35
+ this.error = null;
36
+ this.tgFilesChange.emit(this.files.map(f => f.file));
37
+ };
38
+ this.handleDrop = (e) => {
39
+ var _a, _b;
40
+ e.preventDefault();
41
+ this.dragActive = false;
42
+ this.addFiles((_b = (_a = e.dataTransfer) === null || _a === void 0 ? void 0 : _a.files) !== null && _b !== void 0 ? _b : null);
43
+ };
44
+ this.handleDragOver = (e) => {
45
+ e.preventDefault();
46
+ this.dragActive = true;
47
+ };
48
+ this.handleDragLeave = () => {
49
+ this.dragActive = false;
50
+ };
51
+ }
52
+ formatSize(bytes) {
53
+ if (bytes < 1024)
54
+ return `${bytes} B`;
55
+ if (bytes < 1048576)
56
+ return `${(bytes / 1024).toFixed(1)} KB`;
57
+ return `${(bytes / 1048576).toFixed(1)} MB`;
58
+ }
59
+ validate(fileList) {
60
+ for (const f of fileList) {
61
+ if (f.size > this.maxSize * 1048576) {
62
+ return `Le fichier "${f.name}" dépasse la taille maximale de ${this.maxSize} Mo`;
63
+ }
64
+ }
65
+ if (this.files.length + fileList.length > this.maxFiles) {
66
+ return `Maximum ${this.maxFiles} fichier${this.maxFiles > 1 ? 's' : ''} autorisé${this.maxFiles > 1 ? 's' : ''}`;
67
+ }
68
+ return null;
69
+ }
70
+ render() {
71
+ const uploadIcon = `<svg viewBox="0 0 48 48" fill="none" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"><path d="M8 32l0 4a4 4 0 004 4h24a4 4 0 004-4v-4"/><polyline points="16 16 24 8 32 16"/><line x1="24" y1="8" x2="24" y2="32"/></svg>`;
72
+ const fileIcon = `<svg viewBox="0 0 18 18" fill="none" stroke="currentColor" stroke-width="1.5" stroke-linecap="round"><path d="M10 2H5a2 2 0 00-2 2v10a2 2 0 002 2h8a2 2 0 002-2V7l-5-5z"/><polyline points="10 2 10 7 15 7"/></svg>`;
73
+ const removeIcon = `<svg viewBox="0 0 16 16" fill="none" stroke="currentColor" stroke-width="1.5" stroke-linecap="round"><line x1="4" y1="4" x2="12" y2="12"/><line x1="12" y1="4" x2="4" y2="12"/></svg>`;
74
+ return (h(Host, { key: '77cf3751962242d553184585a76a7f87bf736df7' }, h("div", { key: '552c2b59d032b752bd6d6924e21ec7700a3da16e', class: "tg-file-upload" }, h("div", { key: 'e26907046c0bda2fe4a2c5a490248d55b7e340bf', class: {
75
+ 'tg-file-upload__dropzone': true,
76
+ 'tg-file-upload__dropzone--active': this.dragActive,
77
+ 'tg-file-upload__dropzone--error': !!this.error,
78
+ }, onDrop: this.handleDrop, onDragOver: this.handleDragOver, onDragLeave: this.handleDragLeave, onClick: () => this.inputRef.click() }, h("div", { key: 'affad26d9f57aaca4abc5e71810cf80d98272807', class: "tg-file-upload__icon", innerHTML: uploadIcon }), h("div", { key: 'be3e1fdc89bed47844e280d8116c4d3b9c11e342', class: "tg-file-upload__text" }, h("strong", { key: '7fa44dba9212c9622eab4a35e7d6e1e78985c222' }, "Cliquez pour choisir"), " ou glissez-d\u00E9posez"), this.hint && h("div", { key: '7be94286d4723c79738348b7a18f29de48df8365', class: "tg-file-upload__hint" }, this.hint)), h("input", Object.assign({ key: '176b2e8ec8cd4fa436de45e6d1b94e482c8359c6', class: "tg-file-upload__input", type: "file" }, (this.accept ? { accept: this.accept } : {}), { multiple: this.multiple, ref: el => (this.inputRef = el), onChange: e => this.addFiles(e.target.files) })), this.error && h("div", { key: '8fffd203e887c00f9574b39477104d3237285bd6', class: "tg-file-upload__error" }, this.error), this.files.length > 0 && (h("div", { key: '686f996491f2a54ed8c2ae760d88337abd77cdb9', class: "tg-file-upload__list" }, this.files.map(f => (h("div", { class: "tg-file-upload__file", key: f.id }, h("div", { class: "tg-file-upload__file-icon", innerHTML: fileIcon }), h("div", { class: "tg-file-upload__file-info" }, h("div", { class: "tg-file-upload__file-name" }, f.file.name), h("div", { class: "tg-file-upload__file-size" }, this.formatSize(f.file.size))), h("button", { class: "tg-file-upload__file-remove", onClick: () => this.removeFile(f.id), "aria-label": "Supprimer", innerHTML: removeIcon })))))))));
79
+ }
80
+ get el() { return getElement(this); }
81
+ };
82
+ TgFileUpload.style = tgFileUploadCss();
83
+
84
+ export { TgFileUpload as tg_file_upload };
@@ -0,0 +1,22 @@
1
+ import { r as registerInstance, h, H as Host } from './index-CXqO9vvj.js';
2
+
3
+ const tgGlobalLoaderCss = () => `:host{display:contents}.tg-gl-bar{position:fixed;top:0;left:0;right:0;height:3px;z-index:99999;overflow:hidden}.tg-gl-bar__track{width:40%;height:100%;background:var(--tg-color-primary);border-radius:var(--tg-radius-full);animation:tg-gl-slide 1.2s ease-in-out infinite}@keyframes tg-gl-slide{0%{transform:translateX(-100%)}100%{transform:translateX(350%)}}.tg-gl-overlay{position:fixed;inset:0;z-index:99999;background:rgba(255,255,255,0.85);backdrop-filter:blur(4px);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--tg-spacing-3);font-family:var(--tg-font-family-sans)}.tg-gl-overlay__spinner{width:2.5rem;height:2.5rem;border:3px solid var(--tg-color-border);border-top-color:var(--tg-color-primary);border-radius:50%;animation:tg-gl-spin 0.7s linear infinite}@keyframes tg-gl-spin{to{transform:rotate(360deg)}}.tg-gl-overlay__label{font-size:var(--tg-font-size-sm);color:var(--tg-color-text-secondary)}`;
4
+
5
+ const TgGlobalLoader = class {
6
+ constructor(hostRef) {
7
+ registerInstance(this, hostRef);
8
+ this.active = false;
9
+ this.variant = 'bar';
10
+ }
11
+ render() {
12
+ if (!this.active)
13
+ return h(Host, null);
14
+ if (this.variant === 'bar') {
15
+ return (h(Host, null, h("div", { class: "tg-gl-bar" }, h("div", { class: "tg-gl-bar__track" }))));
16
+ }
17
+ return (h(Host, null, h("div", { class: "tg-gl-overlay" }, h("div", { class: "tg-gl-overlay__spinner" }), this.label && h("span", { class: "tg-gl-overlay__label" }, this.label))));
18
+ }
19
+ };
20
+ TgGlobalLoader.style = tgGlobalLoaderCss();
21
+
22
+ export { TgGlobalLoader as tg_global_loader };
@@ -0,0 +1,63 @@
1
+ import { r as registerInstance, h, H as Host } from './index-CXqO9vvj.js';
2
+
3
+ const tgHeatmapCss = () => `:host{display:block}.tg-heatmap{font-family:var(--tg-font-family-sans)}.tg-heatmap__title{margin:0 0 var(--tg-spacing-3);font-size:var(--tg-font-size-md);font-weight:var(--tg-font-weight-semibold);color:var(--tg-color-text-primary)}.tg-heatmap__grid{display:grid;gap:2px}.tg-heatmap__corner{background:transparent}.tg-heatmap__xlabel{font-size:var(--tg-font-size-xs);color:var(--tg-color-text-secondary);text-align:center;padding:var(--tg-spacing-1)}.tg-heatmap__ylabel{font-size:var(--tg-font-size-xs);color:var(--tg-color-text-secondary);display:flex;align-items:center;padding-right:var(--tg-spacing-2)}.tg-heatmap__cell{display:flex;align-items:center;justify-content:center;padding:var(--tg-spacing-2);font-size:var(--tg-font-size-xs);font-weight:var(--tg-font-weight-medium);color:var(--tg-color-text-primary);border-radius:var(--tg-radius-sm);min-height:2rem;transition:transform var(--tg-duration-fast)}.tg-heatmap__cell:hover{transform:scale(1.05)}`;
4
+
5
+ const TgHeatmap = class {
6
+ constructor(hostRef) {
7
+ registerInstance(this, hostRef);
8
+ this.data = [];
9
+ this.xLabels = [];
10
+ this.yLabels = [];
11
+ this.colorMin = '#f0fdf4';
12
+ this.colorMax = '#166534';
13
+ }
14
+ get grid() {
15
+ if (typeof this.data === 'string') {
16
+ try {
17
+ return JSON.parse(this.data);
18
+ }
19
+ catch (_a) {
20
+ return [];
21
+ }
22
+ }
23
+ return this.data;
24
+ }
25
+ get xl() {
26
+ if (typeof this.xLabels === 'string') {
27
+ try {
28
+ return JSON.parse(this.xLabels);
29
+ }
30
+ catch (_a) {
31
+ return [];
32
+ }
33
+ }
34
+ return this.xLabels;
35
+ }
36
+ get yl() {
37
+ if (typeof this.yLabels === 'string') {
38
+ try {
39
+ return JSON.parse(this.yLabels);
40
+ }
41
+ catch (_a) {
42
+ return [];
43
+ }
44
+ }
45
+ return this.yLabels;
46
+ }
47
+ get maxVal() { return Math.max(...this.grid.flatMap(r => r), 1); }
48
+ cellColor(val) {
49
+ const pct = val / this.maxVal;
50
+ const opacity = 0.15 + pct * 0.85;
51
+ return 'rgba(22, 101, 52, ' + opacity.toFixed(2) + ')';
52
+ }
53
+ render() {
54
+ var _a;
55
+ return (h(Host, { key: '29b99401781ab130feadedf8d0205cc95ff90400' }, h("div", { key: '4e74b38344b353c7121789124c64b8a641cc59f9', class: "tg-heatmap" }, this.heading && h("h3", { key: 'bb8fe84d77a651150b2dfc3a7337d1749766a565', class: "tg-heatmap__title" }, this.heading), h("div", { key: 'df74fa440f9803a8432ff18ab06118cfdb60efbb', class: "tg-heatmap__grid", style: { gridTemplateColumns: (this.yl.length ? '4rem ' : '') + 'repeat(' + (this.xl.length || (((_a = this.grid[0]) === null || _a === void 0 ? void 0 : _a.length) || 1)) + ', 1fr)' } }, this.yl.length > 0 && h("div", { key: '33bc2dea9ad7d048d880772bba8dc40b471d86c3', class: "tg-heatmap__corner" }), this.xl.map(l => h("div", { class: "tg-heatmap__xlabel" }, l)), this.grid.map((row, ri) => [
56
+ this.yl[ri] ? h("div", { class: "tg-heatmap__ylabel" }, this.yl[ri]) : null,
57
+ ...row.map(val => h("div", { class: "tg-heatmap__cell", style: { background: this.cellColor(val) }, title: String(val) }, val))
58
+ ])))));
59
+ }
60
+ };
61
+ TgHeatmap.style = tgHeatmapCss();
62
+
63
+ export { TgHeatmap as tg_heatmap };
@@ -0,0 +1,30 @@
1
+ import { r as registerInstance, h, H as Host } from './index-CXqO9vvj.js';
2
+
3
+ const tgImageGalleryCss = () => `:host{display:block}.tg-ig{display:grid;gap:var(--tg-spacing-2);font-family:var(--tg-font-family-sans)}.tg-ig__item{position:relative;overflow:hidden;border-radius:var(--tg-radius-lg);cursor:pointer;aspect-ratio:1}.tg-ig__item:hover .tg-ig__img{transform:scale(1.05)}.tg-ig__img{width:100%;height:100%;object-fit:cover;transition:transform var(--tg-duration-normal)}.tg-ig__caption{position:absolute;bottom:0;left:0;right:0;padding:var(--tg-spacing-2);background:linear-gradient(transparent, rgba(0,0,0,0.6));color:white;font-size:var(--tg-font-size-xs)}.tg-ig__lightbox{position:fixed;inset:0;z-index:10000;background:rgba(0,0,0,0.9);display:flex;align-items:center;justify-content:center}.tg-ig__lb-close{position:absolute;top:var(--tg-spacing-4);right:var(--tg-spacing-4);background:none;border:none;color:white;font-size:2rem;cursor:pointer;z-index:1}.tg-ig__lb-img{max-width:90vw;max-height:85vh;object-fit:contain;border-radius:var(--tg-radius-lg)}.tg-ig__lb-prev,.tg-ig__lb-next{position:absolute;top:50%;transform:translateY(-50%);background:rgba(255,255,255,0.1);border:none;color:white;font-size:2rem;padding:var(--tg-spacing-2) var(--tg-spacing-3);cursor:pointer;border-radius:var(--tg-radius-lg)}.tg-ig__lb-prev{left:var(--tg-spacing-4)}.tg-ig__lb-next{right:var(--tg-spacing-4)}.tg-ig__lb-caption{position:absolute;bottom:var(--tg-spacing-4);text-align:center;width:100%;color:white;font-size:var(--tg-font-size-sm)}`;
4
+
5
+ const TgImageGallery = class {
6
+ constructor(hostRef) {
7
+ registerInstance(this, hostRef);
8
+ this.images = [];
9
+ this.columns = 3;
10
+ this.lightboxIndex = -1;
11
+ }
12
+ get parsed() {
13
+ if (typeof this.images === 'string') {
14
+ try {
15
+ return JSON.parse(this.images);
16
+ }
17
+ catch (_a) {
18
+ return [];
19
+ }
20
+ }
21
+ return this.images;
22
+ }
23
+ render() {
24
+ const imgs = this.parsed;
25
+ return (h(Host, { key: '54f0a5f4c8cb69c7601f751a6e3a4fa9c039aa03' }, h("div", { key: '43db45820a7a66b647aec8f22d8b1237e7937ea0', class: "tg-ig", style: { gridTemplateColumns: 'repeat(' + this.columns + ', 1fr)' } }, imgs.map((img, i) => (h("div", { class: "tg-ig__item", onClick: () => { this.lightboxIndex = i; } }, h("img", { class: "tg-ig__img", src: img.src, alt: img.alt || '', loading: "lazy" }), img.caption && h("span", { class: "tg-ig__caption" }, img.caption))))), this.lightboxIndex >= 0 && (h("div", { key: '34f7696e87ffb3032535406680dbbc356d53c473', class: "tg-ig__lightbox", onClick: () => { this.lightboxIndex = -1; } }, h("button", { key: 'af12d664a0067352ca81546308a49fbfb2fcc9e3', class: "tg-ig__lb-close", type: "button", "aria-label": "Close" }, "\\u00d7"), this.lightboxIndex > 0 && h("button", { key: 'a0850fa101999ceb4449f013439f0d4b6b0e605d', class: "tg-ig__lb-prev", type: "button", onClick: (e) => { e.stopPropagation(); this.lightboxIndex--; } }, "\\u2039"), h("img", { key: 'b5c77f37b9cbbad132bfddedaa9e01c6537679f3', class: "tg-ig__lb-img", src: imgs[this.lightboxIndex].src, alt: imgs[this.lightboxIndex].alt || '', onClick: (e) => e.stopPropagation() }), this.lightboxIndex < imgs.length - 1 && h("button", { key: 'b0e845547338cde60e62d1b860884694068bc4a1', class: "tg-ig__lb-next", type: "button", onClick: (e) => { e.stopPropagation(); this.lightboxIndex++; } }, "\\u203a"), imgs[this.lightboxIndex].caption && h("p", { key: 'ff6ed839f25df6052c42ffcf7257577d2bd27740', class: "tg-ig__lb-caption" }, imgs[this.lightboxIndex].caption)))));
26
+ }
27
+ };
28
+ TgImageGallery.style = tgImageGalleryCss();
29
+
30
+ export { TgImageGallery as tg_image_gallery };
@@ -0,0 +1,49 @@
1
+ import { r as registerInstance, c as createEvent, h, H as Host } from './index-CXqO9vvj.js';
2
+
3
+ const tgInputCss = () => `:host{display:block}.tg-input-wrapper{display:flex;flex-direction:column;gap:var(--tg-spacing-1-5);font-family:var(--tg-font-family-sans)}.tg-input-wrapper--full-width{width:100%}.tg-input__label{display:block;font-size:var(--tg-font-size-sm);font-weight:var(--tg-font-weight-medium);color:var(--tg-color-text-primary);line-height:var(--tg-line-height-tight)}.tg-input__required{color:var(--tg-color-danger)}.tg-input__field-wrapper{position:relative;display:flex;align-items:center;border:1px solid var(--tg-color-border-strong);border-radius:var(--tg-radius-lg);background-color:var(--tg-color-surface-page);transition:border-color var(--tg-duration-normal) var(--tg-ease-default), box-shadow var(--tg-duration-normal) var(--tg-ease-default);overflow:hidden}.tg-input__field-wrapper:focus-within{border-color:var(--tg-color-border-focus);box-shadow:var(--tg-focus-ring)}.tg-input-wrapper--sm .tg-input__field{height:2rem;font-size:var(--tg-font-size-xs);padding:0 var(--tg-spacing-3)}.tg-input-wrapper--md .tg-input__field{height:2.5rem;font-size:var(--tg-font-size-sm);padding:0 var(--tg-spacing-3)}.tg-input-wrapper--lg .tg-input__field{height:3rem;font-size:var(--tg-font-size-md);padding:0 var(--tg-spacing-4)}.tg-input__field{flex:1;min-width:0;border:none;outline:none;background:transparent;color:var(--tg-color-text-primary);font-family:inherit;width:100%}.tg-input__field::placeholder{color:var(--tg-color-text-disabled)}.tg-input-wrapper--disabled .tg-input__field-wrapper{background-color:var(--tg-color-surface-sunken);opacity:0.6;cursor:not-allowed}.tg-input-wrapper--disabled .tg-input__field{cursor:not-allowed}.tg-input-wrapper--invalid .tg-input__field-wrapper{border-color:var(--tg-color-danger)}.tg-input-wrapper--invalid .tg-input__field-wrapper:focus-within{border-color:var(--tg-color-danger);box-shadow:0 0 0 3px rgba(227, 27, 35, 0.25)}.tg-input__toggle-password{display:inline-flex;align-items:center;justify-content:center;padding:0 var(--tg-spacing-2-5);height:100%;background:none;border:none;border-left:1px solid var(--tg-color-border);cursor:pointer;color:var(--tg-color-text-secondary);transition:color var(--tg-duration-normal) var(--tg-ease-default)}.tg-input__toggle-password:hover{color:var(--tg-color-text-primary)}.tg-input__toggle-password svg{width:1.125rem;height:1.125rem}.tg-input__helper,.tg-input__error{margin:0;font-size:var(--tg-font-size-xs);line-height:var(--tg-line-height-snug)}.tg-input__helper{color:var(--tg-color-text-secondary)}.tg-input__error{display:flex;align-items:center;gap:var(--tg-spacing-1);color:var(--tg-color-danger)}.tg-input__error svg{width:0.875rem;height:0.875rem;flex-shrink:0}::slotted([slot='icon-start']){display:inline-flex;padding-left:var(--tg-spacing-3);color:var(--tg-color-text-secondary)}::slotted([slot='icon-end']){display:inline-flex;padding-right:var(--tg-spacing-3);color:var(--tg-color-text-secondary)}`;
4
+
5
+ const TgInput = class {
6
+ constructor(hostRef) {
7
+ registerInstance(this, hostRef);
8
+ this.tgChange = createEvent(this, "tgChange");
9
+ this.tgFocus = createEvent(this, "tgFocus");
10
+ this.tgBlur = createEvent(this, "tgBlur");
11
+ /** Input type */
12
+ this.type = 'text';
13
+ /** Current value */
14
+ this.value = '';
15
+ /** Marks the field as required */
16
+ this.required = false;
17
+ /** Disables the input */
18
+ this.disabled = false;
19
+ /** Makes the input read-only */
20
+ this.readonly = false;
21
+ /** Full-width input */
22
+ this.fullWidth = false;
23
+ /** Size of the input */
24
+ this.size = 'md';
25
+ /** Unique id (auto-generated if not provided) */
26
+ this.inputId = `tg-input-${Math.random().toString(36).slice(2, 9)}`;
27
+ /** Shows password visibility toggle (only for type=password) */
28
+ this.passwordVisible = false;
29
+ this.handleInput = (e) => {
30
+ this.value = e.target.value;
31
+ this.tgChange.emit(this.value);
32
+ };
33
+ }
34
+ render() {
35
+ var _a;
36
+ const isInvalid = !!this.error;
37
+ const inputType = this.type === 'password' && this.passwordVisible ? 'text' : this.type;
38
+ return (h(Host, { key: '39e10a36aa30f6714c47e2d7071a1b4e8a40cc95' }, h("div", { key: '09c8a9f5ccf97c8e2cf7b04e373cd664a51ae33f', class: {
39
+ 'tg-input-wrapper': true,
40
+ 'tg-input-wrapper--full-width': this.fullWidth,
41
+ 'tg-input-wrapper--disabled': this.disabled,
42
+ 'tg-input-wrapper--invalid': isInvalid,
43
+ [`tg-input-wrapper--${this.size}`]: true,
44
+ } }, this.label && (h("label", { key: '593efd7e643d2853bf92990a20daa6fb34e84dfa', class: "tg-input__label", htmlFor: this.inputId }, this.label, this.required && h("span", { key: '6c58fd8c27e6859b44654b4f9bc0fe1e0a601cda', class: "tg-input__required", "aria-hidden": "true" }, " *"))), h("div", { key: '5103029e9374a63a3739a4f737d6dfa4a3af2d19', class: "tg-input__field-wrapper" }, h("slot", { key: 'b5e7b13ee91f87115b1f391eccd95012a18d5fe2', name: "icon-start" }), h("input", { key: '8909c5ec22eed69d23b65663c5fd4bc3e6e376b7', id: this.inputId, class: "tg-input__field", type: inputType, value: this.value, placeholder: (_a = this.placeholder) !== null && _a !== void 0 ? _a : '', disabled: this.disabled, readOnly: this.readonly, required: this.required, "aria-invalid": isInvalid ? 'true' : undefined, "aria-describedby": isInvalid ? `${this.inputId}-error` : this.helperText ? `${this.inputId}-helper` : undefined, onInput: this.handleInput, onFocus: () => this.tgFocus.emit(), onBlur: () => this.tgBlur.emit() }), this.type === 'password' && (h("button", { key: '7978ffedb461c2894710605aa3a722c0d5daee3d', type: "button", class: "tg-input__toggle-password", onClick: () => (this.passwordVisible = !this.passwordVisible), "aria-label": this.passwordVisible ? 'Masquer le mot de passe' : 'Afficher le mot de passe' }, this.passwordVisible ? (h("svg", { xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 20 20", fill: "currentColor" }, h("path", { "fill-rule": "evenodd", d: "M3.28 2.22a.75.75 0 0 0-1.06 1.06l14.5 14.5a.75.75 0 1 0 1.06-1.06l-1.745-1.745a10.029 10.029 0 0 0 3.3-4.38 1.651 1.651 0 0 0 0-1.185A10.004 10.004 0 0 0 9.999 3a9.956 9.956 0 0 0-4.744 1.194L3.28 2.22ZM7.752 6.69l1.092 1.092a2.5 2.5 0 0 1 3.374 3.373l1.091 1.092a4 4 0 0 0-5.557-5.557Z", "clip-rule": "evenodd" }), h("path", { d: "M10.748 13.93l2.523 2.523a9.987 9.987 0 0 1-3.27.547c-4.258 0-7.894-2.66-9.337-6.41a1.651 1.651 0 0 1 0-1.186A10.007 10.007 0 0 1 2.839 6.02L6.07 9.252a4 4 0 0 0 4.678 4.678Z" }))) : (h("svg", { xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 20 20", fill: "currentColor" }, h("path", { d: "M10 12.5a2.5 2.5 0 1 0 0-5 2.5 2.5 0 0 0 0 5Z" }), h("path", { "fill-rule": "evenodd", d: "M.664 10.59a1.651 1.651 0 0 1 0-1.186A10.004 10.004 0 0 1 10 3c4.257 0 7.893 2.66 9.336 6.41.147.381.146.804 0 1.186A10.004 10.004 0 0 1 10 17c-4.257 0-7.893-2.66-9.336-6.41ZM14 10a4 4 0 1 1-8 0 4 4 0 0 1 8 0Z", "clip-rule": "evenodd" }))))), h("slot", { key: '6ca491e27e06a60b80a721194f0be211efba72cb', name: "icon-end" })), isInvalid && (h("p", { key: '9c395300d317050bdb30b0c45a3e0ea10148b955', id: `${this.inputId}-error`, class: "tg-input__error", role: "alert" }, h("svg", { key: '4dde577fba2b01b4df4289ab4024a9ec3d0bea4b', xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 16 16", fill: "currentColor", "aria-hidden": "true" }, h("path", { key: '6e7ab516c75bec64ded397090d9761bf13bca68a', "fill-rule": "evenodd", d: "M8 15A7 7 0 1 0 8 1a7 7 0 0 0 0 14Zm.75-10a.75.75 0 0 0-1.5 0v4.5a.75.75 0 0 0 1.5 0V5Zm0 7a.75.75 0 1 0-1.5 0 .75.75 0 0 0 1.5 0Z", "clip-rule": "evenodd" })), this.error)), !isInvalid && this.helperText && (h("p", { key: '684ca4c4b93f22aaf25e53b21f68c797e5c22454', id: `${this.inputId}-helper`, class: "tg-input__helper" }, this.helperText)))));
45
+ }
46
+ };
47
+ TgInput.style = tgInputCss();
48
+
49
+ export { TgInput as tg_input };
@@ -0,0 +1,28 @@
1
+ import { r as registerInstance, c as createEvent, h, H as Host } from './index-CXqO9vvj.js';
2
+
3
+ const tgKanbanBoardCss = () => `:host{display:block}.tg-kb{display:flex;gap:var(--tg-spacing-4);overflow-x:auto;padding-bottom:var(--tg-spacing-2);font-family:var(--tg-font-family-sans)}.tg-kb__col{flex:0 0 18rem;background:var(--tg-color-surface-sunken);border-radius:var(--tg-radius-xl);padding:var(--tg-spacing-3)}.tg-kb__col-header{display:flex;align-items:center;gap:var(--tg-spacing-2);margin-bottom:var(--tg-spacing-3)}.tg-kb__col-dot{width:0.625rem;height:0.625rem;border-radius:50%;background:var(--tg-color-primary);flex-shrink:0}.tg-kb__col-title{margin:0;font-size:var(--tg-font-size-sm);font-weight:var(--tg-font-weight-semibold);flex:1}.tg-kb__col-count{font-size:var(--tg-font-size-xs);color:var(--tg-color-text-secondary);background:var(--tg-color-surface-raised);padding:2px var(--tg-spacing-2);border-radius:var(--tg-radius-full)}.tg-kb__cards{display:flex;flex-direction:column;gap:var(--tg-spacing-2)}.tg-kb__card{background:var(--tg-color-surface-raised);border:1px solid var(--tg-color-border);border-radius:var(--tg-radius-lg);padding:var(--tg-spacing-3);cursor:pointer;transition:box-shadow var(--tg-duration-fast), transform var(--tg-duration-fast)}.tg-kb__card:hover{box-shadow:var(--tg-shadow-md);transform:translateY(-1px)}.tg-kb__card-tag{display:inline-block;font-size:var(--tg-font-size-xs);padding:1px var(--tg-spacing-2);border-radius:var(--tg-radius-full);background:var(--tg-color-primary-subtle);color:var(--tg-color-primary);margin-bottom:var(--tg-spacing-1-5);font-weight:var(--tg-font-weight-medium)}.tg-kb__card-title{margin:0;font-size:var(--tg-font-size-sm);font-weight:var(--tg-font-weight-medium);color:var(--tg-color-text-primary)}.tg-kb__card-desc{margin:var(--tg-spacing-1) 0 0;font-size:var(--tg-font-size-xs);color:var(--tg-color-text-secondary);line-height:var(--tg-line-height-relaxed)}.tg-kb__card-assignee{margin-top:var(--tg-spacing-2);font-size:var(--tg-font-size-xs);color:var(--tg-color-text-secondary)}`;
4
+
5
+ const TgKanbanBoard = class {
6
+ constructor(hostRef) {
7
+ registerInstance(this, hostRef);
8
+ this.tgCardClick = createEvent(this, "tgCardClick");
9
+ this.columns = [];
10
+ }
11
+ get parsed() {
12
+ if (typeof this.columns === 'string') {
13
+ try {
14
+ return JSON.parse(this.columns);
15
+ }
16
+ catch (_a) {
17
+ return [];
18
+ }
19
+ }
20
+ return this.columns;
21
+ }
22
+ render() {
23
+ return (h(Host, { key: '3f837f4ad3e240f95aad5ba3ffa631d0cd1f3d5f' }, h("div", { key: 'd2200c09dbd8133a0deba07836c7ac9f02370835', class: "tg-kb" }, this.parsed.map(col => (h("div", { class: "tg-kb__col" }, h("div", { class: "tg-kb__col-header" }, h("span", { class: "tg-kb__col-dot", style: col.color ? { background: col.color } : {} }), h("h3", { class: "tg-kb__col-title" }, col.title), h("span", { class: "tg-kb__col-count" }, col.cards.length)), h("div", { class: "tg-kb__cards" }, col.cards.map(card => (h("div", { class: "tg-kb__card", onClick: () => this.tgCardClick.emit({ columnId: col.id, cardId: card.id }) }, card.tag && h("span", { class: "tg-kb__card-tag" }, card.tag), h("h4", { class: "tg-kb__card-title" }, card.title), card.description && h("p", { class: "tg-kb__card-desc" }, card.description), card.assignee && h("div", { class: "tg-kb__card-assignee" }, card.assignee)))))))))));
24
+ }
25
+ };
26
+ TgKanbanBoard.style = tgKanbanBoardCss();
27
+
28
+ export { TgKanbanBoard as tg_kanban_board };
@@ -0,0 +1,18 @@
1
+ import { r as registerInstance, h, H as Host } from './index-CXqO9vvj.js';
2
+
3
+ const tgKpiCardCss = () => `:host{display:block}.tg-kpi{font-family:var(--tg-font-family-sans);padding:var(--tg-spacing-5);border-radius:var(--tg-radius-xl);background:var(--tg-color-surface-raised);border:1px solid var(--tg-color-border);transition:box-shadow var(--tg-duration-normal)}.tg-kpi:hover{box-shadow:var(--tg-shadow-md)}.tg-kpi__header{display:flex;align-items:center;gap:var(--tg-spacing-2);margin-bottom:var(--tg-spacing-2)}.tg-kpi__icon{font-size:1.25rem}.tg-kpi__title{font-size:var(--tg-font-size-sm);color:var(--tg-color-text-secondary);font-weight:var(--tg-font-weight-medium)}.tg-kpi__body{display:flex;align-items:baseline;gap:var(--tg-spacing-1);margin-bottom:var(--tg-spacing-2)}.tg-kpi__value{font-size:var(--tg-font-size-3xl);font-weight:var(--tg-font-weight-bold);font-family:var(--tg-font-family-display);color:var(--tg-color-text-primary)}.tg-kpi__unit{font-size:var(--tg-font-size-sm);color:var(--tg-color-text-secondary)}.tg-kpi__trend{display:inline-flex;align-items:center;gap:var(--tg-spacing-1);padding:var(--tg-spacing-0-5) var(--tg-spacing-2);border-radius:var(--tg-radius-full);font-size:var(--tg-font-size-xs);font-weight:var(--tg-font-weight-medium)}.tg-kpi__trend--up{background:var(--tg-color-success-subtle);color:var(--tg-color-success)}.tg-kpi__trend--down{background:var(--tg-color-danger-subtle);color:var(--tg-color-danger)}.tg-kpi__trend--neutral{background:var(--tg-color-surface-sunken);color:var(--tg-color-text-secondary)}.tg-kpi--primary .tg-kpi__value{color:var(--tg-color-primary)}.tg-kpi--success .tg-kpi__value{color:var(--tg-color-success)}.tg-kpi--warning .tg-kpi__value{color:var(--tg-color-warning)}.tg-kpi--danger .tg-kpi__value{color:var(--tg-color-danger)}`;
4
+
5
+ const TgKpiCard = class {
6
+ constructor(hostRef) {
7
+ registerInstance(this, hostRef);
8
+ this.heading = '';
9
+ this.value = '';
10
+ this.variant = 'default';
11
+ }
12
+ render() {
13
+ return (h(Host, { key: '59a6b36432315e5fa734c9692f77b9d992c3cdb4' }, h("div", { key: '761450ae5065d82379e7bd020244709b214bdf76', class: 'tg-kpi tg-kpi--' + this.variant }, h("div", { key: 'c9f9d54951bf507128b6acc7ddd3638b57dabec1', class: "tg-kpi__header" }, this.icon && h("span", { key: 'daf8d996d601e5064b58da5a8381a96eb3bc2bdc', class: "tg-kpi__icon" }, this.icon), h("span", { key: 'df039f3a57f0d6e7536579ab0d3e54892e9de19a', class: "tg-kpi__title" }, this.heading)), h("div", { key: 'd75dde0f1857d31bfa66b9f82ea8b3b3c4f2b6c9', class: "tg-kpi__body" }, h("span", { key: 'e68fe293bc795a2ca90f88972da6c2f08b86e30f', class: "tg-kpi__value" }, this.value), this.unit && h("span", { key: '6cafc1dbe979dc0e74cb8d116f048c19edd65bb2', class: "tg-kpi__unit" }, this.unit)), this.trend && (h("div", { key: '1e9b6ce2fb01c19a01df0a6aeae3522782ddb21f', class: 'tg-kpi__trend tg-kpi__trend--' + this.trend }, h("span", { key: '55300f6c15a71fb63f5f5a5a26642a68ddbec5d5', class: "tg-kpi__trend-arrow" }, this.trend === 'up' ? '\u2191' : this.trend === 'down' ? '\u2193' : '\u2192'), this.trendValue && h("span", { key: '921388ed870275169e331d0e664091a99577fc46', class: "tg-kpi__trend-val" }, this.trendValue))))));
14
+ }
15
+ };
16
+ TgKpiCard.style = tgKpiCardCss();
17
+
18
+ export { TgKpiCard as tg_kpi_card };
@@ -0,0 +1,18 @@
1
+ import { r as registerInstance, h, H as Host } from './index-CXqO9vvj.js';
2
+
3
+ const tgLiveBadgeCss = () => `:host{display:inline-flex}.tg-lb{display:inline-flex;align-items:center;gap:var(--tg-spacing-1-5);padding:var(--tg-spacing-1) var(--tg-spacing-2-5);border-radius:var(--tg-radius-full);font-family:var(--tg-font-family-sans);font-size:var(--tg-font-size-xs);font-weight:var(--tg-font-weight-bold);text-transform:uppercase;letter-spacing:var(--tg-tracking-wide)}.tg-lb--default{background:var(--tg-color-danger-subtle);color:var(--tg-color-danger)}.tg-lb--recording{background:var(--tg-color-danger);color:white}.tg-lb--streaming{background:var(--tg-color-primary-subtle);color:var(--tg-color-primary)}.tg-lb__dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.tg-lb--active .tg-lb__dot{animation:tg-lb-pulse 1.5s ease-in-out infinite}.tg-lb--default .tg-lb__dot{background:var(--tg-color-danger)}.tg-lb--recording .tg-lb__dot{background:white}.tg-lb--streaming .tg-lb__dot{background:var(--tg-color-primary)}@keyframes tg-lb-pulse{0%,100%{opacity:1}50%{opacity:0.3}}`;
4
+
5
+ const TgLiveBadge = class {
6
+ constructor(hostRef) {
7
+ registerInstance(this, hostRef);
8
+ this.label = 'EN DIRECT';
9
+ this.active = true;
10
+ this.variant = 'default';
11
+ }
12
+ render() {
13
+ return (h(Host, { key: 'b067884844e5f89173d4d073e41f5d2d1502b399' }, h("span", { key: 'b93f121f7496d2d7dabecec78346877500308922', class: { 'tg-lb': true, 'tg-lb--active': this.active, ['tg-lb--' + this.variant]: true } }, h("span", { key: 'ebfbafc6b00754d56991f537216862478b3dc4b1', class: "tg-lb__dot" }), h("span", { key: '4bf6bb7e6c0296a90fb214c46715d6977e9790a3', class: "tg-lb__label" }, this.label))));
14
+ }
15
+ };
16
+ TgLiveBadge.style = tgLiveBadgeCss();
17
+
18
+ export { TgLiveBadge as tg_live_badge };
@@ -0,0 +1,21 @@
1
+ import { r as registerInstance, c as createEvent, h, H as Host } from './index-CXqO9vvj.js';
2
+
3
+ const tgLoginFormCss = () => `:host{display:block}.tg-lf{max-width:24rem;margin:0 auto;padding:var(--tg-spacing-8);background:var(--tg-color-surface-raised);border:1px solid var(--tg-color-border);border-radius:var(--tg-radius-2xl);font-family:var(--tg-font-family-sans)}.tg-lf__logo{text-align:center;font-size:2rem;margin-bottom:var(--tg-spacing-4)}.tg-lf__title{margin:0 0 var(--tg-spacing-1);font-size:var(--tg-font-size-xl);font-weight:var(--tg-font-weight-bold);color:var(--tg-color-text-primary);text-align:center;font-family:var(--tg-font-family-display)}.tg-lf__subtitle{margin:0 0 var(--tg-spacing-5);font-size:var(--tg-font-size-sm);color:var(--tg-color-text-secondary);text-align:center}.tg-lf__error{padding:var(--tg-spacing-2) var(--tg-spacing-3);background:var(--tg-color-danger-subtle);color:var(--tg-color-danger);border-radius:var(--tg-radius-lg);font-size:var(--tg-font-size-sm);margin-bottom:var(--tg-spacing-4)}.tg-lf__form{display:flex;flex-direction:column;gap:var(--tg-spacing-4)}.tg-lf__field{display:flex;flex-direction:column;gap:var(--tg-spacing-1-5)}.tg-lf__label{font-size:var(--tg-font-size-sm);font-weight:var(--tg-font-weight-medium);color:var(--tg-color-text-primary)}.tg-lf__input{padding:var(--tg-spacing-2-5) var(--tg-spacing-3);border:1px solid var(--tg-color-border-strong);border-radius:var(--tg-radius-lg);font-family:inherit;font-size:var(--tg-font-size-sm);color:var(--tg-color-text-primary);background:var(--tg-color-surface-raised);outline:none;transition:border-color var(--tg-duration-fast), box-shadow var(--tg-duration-fast)}.tg-lf__input:focus{border-color:var(--tg-color-border-focus);box-shadow:var(--tg-focus-ring)}.tg-lf__btn{padding:var(--tg-spacing-2-5);background:var(--tg-color-primary);color:var(--tg-color-primary-on);border:none;border-radius:var(--tg-radius-lg);font-size:var(--tg-font-size-sm);font-weight:var(--tg-font-weight-semibold);cursor:pointer;transition:filter var(--tg-duration-fast);display:flex;align-items:center;justify-content:center}.tg-lf__btn:hover:not(:disabled){filter:brightness(1.1)}.tg-lf__btn:disabled{opacity:0.7;cursor:wait}.tg-lf__spinner{width:1.25rem;height:1.25rem;border:2px solid rgba(255,255,255,0.3);border-top-color:white;border-radius:50%;animation:tg-lf-spin 0.6s linear infinite}@keyframes tg-lf-spin{to{transform:rotate(360deg)}}`;
4
+
5
+ const TgLoginForm = class {
6
+ constructor(hostRef) {
7
+ registerInstance(this, hostRef);
8
+ this.tgLogin = createEvent(this, "tgLogin");
9
+ this.heading = 'Connexion';
10
+ this.loading = false;
11
+ this.email = '';
12
+ this.password = '';
13
+ this.handleSubmit = (e) => { e.preventDefault(); this.tgLogin.emit({ email: this.email, password: this.password }); };
14
+ }
15
+ render() {
16
+ return (h(Host, { key: 'b4683389c890e1d32044f434268f53e1e019af4f' }, h("div", { key: '7306773a637114600431addb51e2ba89ff6eb08c', class: "tg-lf" }, this.logo && h("div", { key: '04c8b07072f23256a18f298391bc52740f06f490', class: "tg-lf__logo" }, this.logo), h("h2", { key: '47ecfb023fa7c5e962d58f75cea46ff0f0fdebf3', class: "tg-lf__title" }, this.heading), this.subtitle && h("p", { key: 'effc0c05996109765eb6d85aa6213e51932b9b70', class: "tg-lf__subtitle" }, this.subtitle), this.error && h("div", { key: '38e4bfdbb4a58e24b78b1022db4643bf2e975873', class: "tg-lf__error" }, this.error), h("form", { key: '4b79ce663b680a20d6aef1315f4bd9fd6e796a3a', class: "tg-lf__form", onSubmit: this.handleSubmit }, h("div", { key: 'c281a3a248b954276fede1583034f8d97261575b', class: "tg-lf__field" }, h("label", { key: '6c0b4cc43142ef2fe26f591f6a5e65a95245d84a', class: "tg-lf__label" }, "Email"), h("input", { key: '3183a8d211e8c385b97711f86ee7c532b2249d6b', class: "tg-lf__input", type: "email", value: this.email, placeholder: "nom@exemple.com", autocomplete: "email", onInput: (e) => { this.email = e.target.value; }, required: true })), h("div", { key: '4e28fd9a15c5d1b356087475f62e7d1816613391', class: "tg-lf__field" }, h("label", { key: '3e33adbd530d2794b152af3a4f393b7ef33aa9fc', class: "tg-lf__label" }, "Mot de passe"), h("input", { key: '4c1292a6eb18c6d374cf7d60f317f0b943d94c69', class: "tg-lf__input", type: "password", value: this.password, placeholder: "\\u2022\\u2022\\u2022\\u2022\\u2022\\u2022\\u2022\\u2022", autocomplete: "current-password", onInput: (e) => { this.password = e.target.value; }, required: true })), h("button", { key: 'c4409e3003528e874746cec210b7407639280fbd', class: "tg-lf__btn", type: "submit", disabled: this.loading }, this.loading ? h("span", { class: "tg-lf__spinner" }) : 'Se connecter')), h("slot", { key: '21d6a4bb469c1c3ea4a360e97de1ca42c4798e02' }))));
17
+ }
18
+ };
19
+ TgLoginForm.style = tgLoginFormCss();
20
+
21
+ export { TgLoginForm as tg_login_form };
@@ -0,0 +1,32 @@
1
+ import { r as registerInstance, h, H as Host } from './index-CXqO9vvj.js';
2
+
3
+ const tgMegaMenuCss = () => `:host{display:inline-block;position:relative}.tg-mega{font-family:var(--tg-font-family-sans)}.tg-mega__trigger{display:inline-flex;align-items:center;gap:var(--tg-spacing-1);background:none;border:none;cursor:pointer;font-size:var(--tg-font-size-sm);font-weight:var(--tg-font-weight-medium);color:var(--tg-color-text-primary);padding:var(--tg-spacing-2) var(--tg-spacing-3);border-radius:var(--tg-radius-lg);transition:background var(--tg-duration-fast)}.tg-mega__trigger:hover{background:var(--tg-color-primary-subtle)}.tg-mega__chev{transition:transform var(--tg-duration-fast)}.tg-mega__chev--open{transform:rotate(180deg)}.tg-mega__panel{position:absolute;top:100%;left: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-xl);box-shadow:var(--tg-shadow-xl);z-index:1000;min-width:36rem;animation:tg-mega-enter var(--tg-duration-fast) var(--tg-ease-out)}@keyframes tg-mega-enter{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.tg-mega__tabs{display:flex;border-bottom:1px solid var(--tg-color-border);padding:var(--tg-spacing-1) var(--tg-spacing-2) 0}.tg-mega__tab{background:none;border:none;border-bottom:2px solid transparent;padding:var(--tg-spacing-2) var(--tg-spacing-3);font-size:var(--tg-font-size-sm);cursor:pointer;color:var(--tg-color-text-secondary);transition:all var(--tg-duration-fast)}.tg-mega__tab:hover{color:var(--tg-color-primary)}.tg-mega__tab--active{color:var(--tg-color-primary);border-bottom-color:var(--tg-color-primary);font-weight:var(--tg-font-weight-medium)}.tg-mega__sections{display:grid;grid-template-columns:repeat(auto-fit, minmax(14rem, 1fr));gap:var(--tg-spacing-4);padding:var(--tg-spacing-4)}.tg-mega__sec-title{margin:0 0 var(--tg-spacing-2);font-size:var(--tg-font-size-xs);font-weight:var(--tg-font-weight-semibold);text-transform:uppercase;letter-spacing:var(--tg-tracking-wide);color:var(--tg-color-text-secondary)}.tg-mega__item{display:flex;gap:var(--tg-spacing-2);padding:var(--tg-spacing-2);border-radius:var(--tg-radius-md);text-decoration:none;color:var(--tg-color-text-primary);transition:background var(--tg-duration-fast)}.tg-mega__item:hover{background:var(--tg-color-primary-subtle)}.tg-mega__item-icon{font-size:1.25rem;flex-shrink:0}.tg-mega__item-label{display:block;font-size:var(--tg-font-size-sm);font-weight:var(--tg-font-weight-medium)}.tg-mega__item-desc{display:block;font-size:var(--tg-font-size-xs);color:var(--tg-color-text-secondary);margin-top:2px}`;
4
+
5
+ const TgMegaMenu = class {
6
+ constructor(hostRef) {
7
+ registerInstance(this, hostRef);
8
+ this.tabs = [];
9
+ this.open = false;
10
+ this.activeTab = 0;
11
+ }
12
+ get parsed() {
13
+ if (typeof this.tabs === 'string') {
14
+ try {
15
+ return JSON.parse(this.tabs);
16
+ }
17
+ catch (_a) {
18
+ return [];
19
+ }
20
+ }
21
+ return this.tabs;
22
+ }
23
+ onDocClick() { this.open = false; }
24
+ render() {
25
+ const tabs = this.parsed;
26
+ const active = tabs[this.activeTab];
27
+ return (h(Host, { key: '2fe88e550f40cd033df85d4f6a31866d9e3f7ebd' }, h("div", { key: '7245fd5e21bd7ae398c00472f1aba4c03eea4a33', class: "tg-mega", onClick: (e) => e.stopPropagation() }, h("button", { key: 'c54f6d55c5a337eca50144f11a5ac30ebad51ed0', class: "tg-mega__trigger", type: "button", onClick: () => { this.open = !this.open; } }, h("slot", { key: '7bdc928608dffadc862af62075249ac6afe1c85d', name: "trigger" }, "Menu"), h("svg", { key: 'a3d6184a5be6532d22ca7ef34c4508258578f8ff', class: { 'tg-mega__chev': true, 'tg-mega__chev--open': this.open }, viewBox: "0 0 20 20", fill: "currentColor", width: "14", height: "14" }, h("path", { key: '59cf945ebea3c9d7eb73e00c36caa1ec8ab4a38f', "fill-rule": "evenodd", d: "M5.23 7.21a.75.75 0 011.06.02L10 11.168l3.71-3.938a.75.75 0 111.08 1.04l-4.25 4.5a.75.75 0 01-1.08 0l-4.25-4.5a.75.75 0 01.02-1.06z" }))), this.open && (h("div", { key: '484d4184425b2d7f24e7672307822b2778e7fa1d', class: "tg-mega__panel" }, tabs.length > 1 && h("div", { key: 'f9ea6f620a83c1fb6cbaa9d419361b80e502dcc1', class: "tg-mega__tabs" }, tabs.map((t, i) => h("button", { class: { 'tg-mega__tab': true, 'tg-mega__tab--active': i === this.activeTab }, type: "button", onClick: () => { this.activeTab = i; } }, t.label))), active && h("div", { key: '8108298cb4d800605bdbeb7c8d22cbf21c0c1518', class: "tg-mega__sections" }, active.sections.map(sec => (h("div", { class: "tg-mega__section" }, h("h4", { class: "tg-mega__sec-title" }, sec.title), sec.items.map(item => (h("a", { class: "tg-mega__item", href: item.href || '#' }, item.icon && h("span", { class: "tg-mega__item-icon" }, item.icon), h("div", null, h("span", { class: "tg-mega__item-label" }, item.label), item.description && h("span", { class: "tg-mega__item-desc" }, item.description))))))))))))));
28
+ }
29
+ };
30
+ TgMegaMenu.style = tgMegaMenuCss();
31
+
32
+ export { TgMegaMenu as tg_mega_menu };
@@ -0,0 +1,41 @@
1
+ import { r as registerInstance, c as createEvent, h, H as Host } from './index-CXqO9vvj.js';
2
+
3
+ const tgModalCss = () => `:host{display:contents}.tg-modal__backdrop{position:fixed;inset:0;background:rgba(0, 0, 0, 0.5);backdrop-filter:blur(4px);z-index:1000;display:flex;align-items:center;justify-content:center;padding:var(--tg-spacing-lg);animation:tg-modal-backdrop-in var(--tg-duration-normal, 200ms) var(--tg-ease-default, ease) forwards}.tg-modal__backdrop--exiting{animation:tg-modal-backdrop-out var(--tg-duration-normal, 200ms) var(--tg-ease-default, ease) forwards}@keyframes tg-modal-backdrop-in{from{opacity:0}to{opacity:1}}@keyframes tg-modal-backdrop-out{from{opacity:1}to{opacity:0}}.tg-modal__panel{background:var(--tg-color-surface, #fff);border-radius:var(--tg-radius-xl, 16px);box-shadow:var(--tg-shadow-xl, 0 20px 60px rgba(0,0,0,0.15));width:100%;max-height:90vh;display:flex;flex-direction:column;overflow:hidden;animation:tg-modal-panel-in var(--tg-duration-normal, 200ms) var(--tg-ease-out, ease-out) forwards}.tg-modal__backdrop--exiting .tg-modal__panel{animation:tg-modal-panel-out var(--tg-duration-fast, 150ms) var(--tg-ease-in, ease-in) forwards}.tg-modal__panel--sm{max-width:400px}.tg-modal__panel--md{max-width:560px}.tg-modal__panel--lg{max-width:720px}.tg-modal__panel--xl{max-width:960px}.tg-modal__panel--full{max-width:100%;max-height:100vh;height:100vh;border-radius:0}@keyframes tg-modal-panel-in{from{opacity:0;transform:scale(0.95) translateY(8px)}to{opacity:1;transform:scale(1) translateY(0)}}@keyframes tg-modal-panel-out{from{opacity:1;transform:scale(1) translateY(0)}to{opacity:0;transform:scale(0.95) translateY(8px)}}.tg-modal__header{display:flex;align-items:center;justify-content:space-between;padding:var(--tg-spacing-lg, 24px) var(--tg-spacing-lg, 24px) var(--tg-spacing-sm, 12px);gap:var(--tg-spacing-sm, 12px)}.tg-modal__title{font-family:var(--tg-font-family, sans-serif);font-size:var(--tg-font-size-lg, 1.125rem);font-weight:var(--tg-font-weight-semibold, 600);color:var(--tg-color-text, #111827);margin:0;line-height:1.3}.tg-modal__close{appearance:none;border:none;background:transparent;cursor:pointer;padding:var(--tg-spacing-xs, 8px);border-radius:var(--tg-radius-md, 8px);color:var(--tg-color-text-secondary, #6b7280);transition:background var(--tg-duration-fast, 150ms), color var(--tg-duration-fast, 150ms);display:flex;align-items:center;justify-content:center;flex-shrink:0}.tg-modal__close:hover{background:var(--tg-color-neutral-100, #f3f4f6);color:var(--tg-color-text, #111827)}.tg-modal__close:focus-visible{outline:none;box-shadow:var(--tg-focus-ring)}.tg-modal__close svg{width:16px;height:16px}.tg-modal__body{padding:var(--tg-spacing-sm, 12px) var(--tg-spacing-lg, 24px);overflow-y:auto;flex:1;font-family:var(--tg-font-family, sans-serif);font-size:var(--tg-font-size-md, 0.875rem);color:var(--tg-color-text-secondary, #6b7280);line-height:1.6}.tg-modal__footer{padding:var(--tg-spacing-sm, 12px) var(--tg-spacing-lg, 24px) var(--tg-spacing-lg, 24px);display:flex;align-items:center;justify-content:flex-end;gap:var(--tg-spacing-sm, 12px)}`;
4
+
5
+ const TgModal = class {
6
+ constructor(hostRef) {
7
+ registerInstance(this, hostRef);
8
+ this.tgClose = createEvent(this, "tgClose");
9
+ this.open = false;
10
+ this.size = 'md';
11
+ this.closeOnBackdrop = true;
12
+ this.closeOnEscape = true;
13
+ this.exiting = false;
14
+ this.close = () => {
15
+ this.exiting = true;
16
+ setTimeout(() => {
17
+ this.exiting = false;
18
+ this.open = false;
19
+ this.tgClose.emit();
20
+ }, 200);
21
+ };
22
+ this.handleBackdropClick = (e) => {
23
+ if (this.closeOnBackdrop && e.target.classList.contains('tg-modal__backdrop')) {
24
+ this.close();
25
+ }
26
+ };
27
+ }
28
+ handleKeydown(e) {
29
+ if (this.open && this.closeOnEscape && e.key === 'Escape') {
30
+ this.close();
31
+ }
32
+ }
33
+ render() {
34
+ if (!this.open)
35
+ return null;
36
+ return (h(Host, null, h("div", { class: { 'tg-modal__backdrop': true, 'tg-modal__backdrop--exiting': this.exiting }, onClick: this.handleBackdropClick, role: "dialog", "aria-modal": "true", "aria-labelledby": "modal-title" }, h("div", { class: { 'tg-modal__panel': true, [`tg-modal__panel--${this.size}`]: true } }, h("div", { class: "tg-modal__header" }, this.modalTitle && h("h2", { class: "tg-modal__title", id: "modal-title" }, this.modalTitle), h("button", { class: "tg-modal__close", onClick: this.close, "aria-label": "Fermer" }, h("svg", { viewBox: "0 0 14 14", fill: "none", stroke: "currentColor", "stroke-width": "1.5", "stroke-linecap": "round" }, h("line", { x1: "3", y1: "3", x2: "11", y2: "11" }), h("line", { x1: "11", y1: "3", x2: "3", y2: "11" })))), h("div", { class: "tg-modal__body" }, h("slot", null)), h("div", { class: "tg-modal__footer" }, h("slot", { name: "footer" }))))));
37
+ }
38
+ };
39
+ TgModal.style = tgModalCss();
40
+
41
+ export { TgModal as tg_modal };