impact-ui 5.0.0-beta.1 → 5.0.0-beta.2

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 (131) hide show
  1. package/dist/components/Avatar/index.js +1 -1
  2. package/dist/components/Chatbot/index.js +1 -1
  3. package/dist/components/CommentsPanel/CommentsPanel.impl.js +1 -1
  4. package/dist/components/DatePicker/datePickerInput.d.ts.map +1 -1
  5. package/dist/components/DatePicker/datePickerInput.js +5 -2
  6. package/dist/components/DatePicker/index.js +1 -1
  7. package/dist/components/DynamicLayout/index.js +1 -1
  8. package/dist/components/FileUpload/index.d.ts.map +1 -1
  9. package/dist/components/FileUpload/index.js +11 -4
  10. package/dist/components/FilterPanel/index.js +1 -1
  11. package/dist/components/FiltersStrip/index.js +1 -1
  12. package/dist/components/Header/Header.types.d.ts +16 -4
  13. package/dist/components/Header/Header.types.d.ts.map +1 -1
  14. package/dist/components/Header/index.d.ts +1 -1
  15. package/dist/components/Header/index.d.ts.map +1 -1
  16. package/dist/components/Header/index.js +36 -17
  17. package/dist/components/HomePage/constants.d.ts.map +1 -1
  18. package/dist/components/HomePage/constants.js +3 -4
  19. package/dist/components/HomePage/index.js +1 -1
  20. package/dist/components/MonthPicker/index.d.ts.map +1 -1
  21. package/dist/components/MonthPicker/index.js +6 -12
  22. package/dist/components/MonthRangePicker/index.d.ts.map +1 -1
  23. package/dist/components/MonthRangePicker/index.js +7 -3
  24. package/dist/components/NewDynamicLayout/index.js +1 -1
  25. package/dist/components/Notification/NotificationBody/NotificationList/NotificationList.js +1 -1
  26. package/dist/components/Notification/NotificationBody/NotificationList/NotificationListItem.js +1 -1
  27. package/dist/components/Notification/index.js +1 -1
  28. package/dist/components/OnboardingTour/index.d.ts.map +1 -1
  29. package/dist/components/OnboardingTour/index.js +10 -4
  30. package/dist/components/OnboardingTour/productTourList.js +4 -4
  31. package/dist/components/OnboardingTour/tooltipCard.d.ts.map +1 -1
  32. package/dist/components/OnboardingTour/tooltipCard.js +2 -2
  33. package/dist/components/Popover/Popover.types.d.ts +5 -0
  34. package/dist/components/Popover/Popover.types.d.ts.map +1 -1
  35. package/dist/components/Popover/index.d.ts +1 -1
  36. package/dist/components/Popover/index.d.ts.map +1 -1
  37. package/dist/components/Popover/index.js +11 -3
  38. package/dist/components/ProfileMenu/ProfileMenu.types.d.ts +16 -5
  39. package/dist/components/ProfileMenu/ProfileMenu.types.d.ts.map +1 -1
  40. package/dist/components/ProfileMenu/ProfileMenuListItem.d.ts +12 -0
  41. package/dist/components/ProfileMenu/ProfileMenuListItem.d.ts.map +1 -0
  42. package/dist/components/ProfileMenu/ProfileMenuListItem.js +42 -0
  43. package/dist/components/ProfileMenu/index.d.ts +3 -10
  44. package/dist/components/ProfileMenu/index.d.ts.map +1 -1
  45. package/dist/components/ProfileMenu/index.js +104 -244
  46. package/dist/components/Slider/index.d.ts.map +1 -1
  47. package/dist/components/Slider/index.js +3 -1
  48. package/dist/components/Slider/sliderValueLabel.d.ts +7 -0
  49. package/dist/components/Slider/sliderValueLabel.d.ts.map +1 -0
  50. package/dist/components/Slider/sliderValueLabel.js +31 -0
  51. package/dist/components/TableChat/EmptyContainer.js +1 -1
  52. package/dist/components/TableChat/TableChatSidePanel.js +1 -1
  53. package/dist/components/TableChat/components/TableChatLeftSection/AddChatContainer/AddChatContainer.js +1 -1
  54. package/dist/components/TableChat/components/TableChatLeftSection/TableChatChannelHeader.js +1 -1
  55. package/dist/components/TableChat/components/TableChatRightSection/AvatarGroup/AvatarGroup.js +1 -1
  56. package/dist/components/TableChat/components/TableChatRightSection/ChatDefaultMessageType/ChatDefaultMessageType.js +1 -1
  57. package/dist/components/TableChat/components/TableChatRightSection/ChatDeleteMessageType/ChatDeletedMessageType.js +1 -1
  58. package/dist/components/TableChat/components/TableChatRightSection/ChatHeader/ChatHeader.js +1 -1
  59. package/dist/components/TableChat/components/TableChatRightSection/ChatInput/ChatInput.js +1 -1
  60. package/dist/components/TableChat/components/TableChatRightSection/ChatMessages/ChatMessage.js +1 -1
  61. package/dist/components/TableChat/components/TableChatRightSection/ChatNotificationSettings/ChatNotificationSettings.js +1 -1
  62. package/dist/components/TableChat/components/TableChatRightSection/TableChatRightSection.js +1 -1
  63. package/dist/components/TableChat/components/TextEditor/EditorToolbar.js +1 -1
  64. package/dist/components/TableChat/components/TextEditor/Mention.js +1 -1
  65. package/dist/components/TableChat/components/TextEditor/MentionList.js +1 -1
  66. package/dist/components/TableV36/CommentsPortal.js +1 -1
  67. package/dist/components/TableV36/index.js +1 -1
  68. package/dist/components/TableV36/tableFunctions.js +4 -4
  69. package/dist/components/TableV36/tableHeader.d.ts +1 -3
  70. package/dist/components/TableV36/tableHeader.d.ts.map +1 -1
  71. package/dist/components/TableV36/tableHeader.js +3 -2
  72. package/dist/components/TableV36/tablePagination.js +1 -1
  73. package/dist/components/TableV36/tableSettings.d.ts.map +1 -1
  74. package/dist/components/TableV36/tableSettings.js +8 -9
  75. package/dist/components/ThemingPanel/AccentColorSection.d.ts +11 -0
  76. package/dist/components/ThemingPanel/AccentColorSection.d.ts.map +1 -0
  77. package/dist/components/ThemingPanel/AccentColorSection.js +43 -0
  78. package/dist/components/ThemingPanel/EnhanceContrastSection.d.ts +11 -0
  79. package/dist/components/ThemingPanel/EnhanceContrastSection.d.ts.map +1 -0
  80. package/dist/components/ThemingPanel/EnhanceContrastSection.js +42 -0
  81. package/dist/components/ThemingPanel/InterfaceThemeSection.d.ts +13 -0
  82. package/dist/components/ThemingPanel/InterfaceThemeSection.d.ts.map +1 -0
  83. package/dist/components/ThemingPanel/InterfaceThemeSection.js +118 -0
  84. package/dist/components/ThemingPanel/StylesSection.d.ts +11 -0
  85. package/dist/components/ThemingPanel/StylesSection.d.ts.map +1 -0
  86. package/dist/components/ThemingPanel/StylesSection.js +43 -0
  87. package/dist/components/ThemingPanel/ThemesTab.d.ts +18 -0
  88. package/dist/components/ThemingPanel/ThemesTab.d.ts.map +1 -0
  89. package/dist/components/ThemingPanel/ThemesTab.js +33 -0
  90. package/dist/components/ThemingPanel/ThemingPanel.d.ts +10 -0
  91. package/dist/components/ThemingPanel/ThemingPanel.d.ts.map +1 -0
  92. package/dist/components/ThemingPanel/ThemingPanel.js +178 -0
  93. package/dist/components/ThemingPanel/ThemingPanel.types.d.ts +21 -0
  94. package/dist/components/ThemingPanel/ThemingPanel.types.d.ts.map +1 -0
  95. package/dist/components/ThemingPanel/index.d.ts +9 -0
  96. package/dist/components/ThemingPanel/index.d.ts.map +1 -0
  97. package/dist/components/ThemingPanel/themingPanel.constants.d.ts +23 -0
  98. package/dist/components/ThemingPanel/themingPanel.constants.d.ts.map +1 -0
  99. package/dist/components/ThemingPanel/themingPanel.constants.js +44 -0
  100. package/dist/components/common/MentionEditor/MentionList/index.js +1 -1
  101. package/dist/components/common/MentionEditor/index.js +1 -1
  102. package/dist/components/index.d.ts +3 -1
  103. package/dist/components/index.d.ts.map +1 -1
  104. package/dist/components/index.js +4 -0
  105. package/dist/components/shared/tableColumnSettings/tableSettingsV36.d.ts.map +1 -1
  106. package/dist/locales/de-DE.json.d.ts +30 -0
  107. package/dist/locales/de-DE.json.js +30 -0
  108. package/dist/locales/en-US.json.d.ts +30 -0
  109. package/dist/locales/en-US.json.js +30 -0
  110. package/dist/locales/es-ES.json.d.ts +30 -0
  111. package/dist/locales/es-ES.json.js +30 -0
  112. package/dist/mcp-component-registry.json +131 -87
  113. package/dist/node_modules/@impactsmartsuite/impact-icons/dist/index.js +1 -3
  114. package/dist/styles/style.css +1 -1
  115. package/dist/styles/tokens/tokens.generated.d.ts +18 -0
  116. package/dist/styles/tokens/tokens.generated.d.ts.map +1 -1
  117. package/dist/styles/tokens/tokens.generated.js +20 -2
  118. package/dist/tokens/ImpactUiThemeProvider.d.ts.map +1 -1
  119. package/dist/tokens/ImpactUiThemeProvider.js +11 -3
  120. package/dist/tokens/index.d.ts +1 -1
  121. package/dist/tokens/index.d.ts.map +1 -1
  122. package/dist/tokens/themeDom.d.ts +8 -2
  123. package/dist/tokens/themeDom.d.ts.map +1 -1
  124. package/dist/tokens/themeDom.js +67 -3
  125. package/package.json +1 -1
  126. package/dist/_virtual/ArticleOutlined.js +0 -4
  127. package/dist/_virtual/Check.js +0 -4
  128. package/dist/_virtual/NotificationsOffOutlined.js +0 -4
  129. package/dist/node_modules/@mui/icons-material/ArticleOutlined.js +0 -19
  130. package/dist/node_modules/@mui/icons-material/Check.js +0 -17
  131. package/dist/node_modules/@mui/icons-material/NotificationsOffOutlined.js +0 -17
@@ -1546,7 +1546,7 @@ const Columns = forwardRef((props, ref) => {
1546
1546
  ImpactIcon,
1547
1547
  {
1548
1548
  icon: impactIconSource(SaveViewEditIcon_default),
1549
- size: 16,
1549
+ size: 14,
1550
1550
  style: { cursor: "pointer" },
1551
1551
  onClick: (e) => {
1552
1552
  handleEditView(view, e);
@@ -1557,7 +1557,7 @@ const Columns = forwardRef((props, ref) => {
1557
1557
  ImpactIcon,
1558
1558
  {
1559
1559
  icon: impactIconSource(SaveViewDeleteIcon_default),
1560
- size: 16,
1560
+ size: 14,
1561
1561
  style: { cursor: "pointer" },
1562
1562
  onClick: (e) => {
1563
1563
  handleDeleteView(view, e);
@@ -1569,7 +1569,7 @@ const Columns = forwardRef((props, ref) => {
1569
1569
  {
1570
1570
  className: "default-view-active-icon",
1571
1571
  icon: impactIconSource(DefaultViewIconActive_default),
1572
- size: 16,
1572
+ size: 14,
1573
1573
  style: { cursor: "pointer" },
1574
1574
  onClick: (e) => {
1575
1575
  e.stopPropagation();
@@ -1581,7 +1581,7 @@ const Columns = forwardRef((props, ref) => {
1581
1581
  ImpactIcon,
1582
1582
  {
1583
1583
  icon: impactIconSource(DefaultViewIcon_default),
1584
- size: 16,
1584
+ size: 14,
1585
1585
  style: { cursor: "pointer" },
1586
1586
  onClick: (e) => {
1587
1587
  e.stopPropagation();
@@ -1,5 +1,3 @@
1
- import { default as React } from 'react';
2
-
3
1
  export default function TableHeader({ actualRef, colDefs, Columns, tableFontSize, setTableFontSize, rowHeight, setRowHeight, tableHeader, topRightOptions, topLeftOptions, onGlobalSearchClick, cardContainer, onNumberFormatChange, hideRowHeightOptionMenu, showDownloadButton, onDownloadButtonClick, closeButton, handleCloseButtonClick, additionalButtons, setTableSettingOpen, showHideEditableCells, handleShowHideEditableCells, topCenterOptions, showContentualFilter, showContentualFilterBadge, onContentualFilterClick, contentualFilterProps, contentualFilterComponent, tableActions, onTableActionsTabClick, hideTableFormat, hideTableActions, hideTableSetting, explicitlyCloseTableSetting, customSystemButton, isChatEnabled, handleChatClick, isChatOpen, handleChatClose, chatConfiguration, savedViewsOptions, handleSaveAndApply, maxSavedViews, handleSavedViewClick, handleEditSaveView, isSaveViewEnabled, isSavingViewLoading, handleDeleteViewClick, isDeleteViewLoading, handleSetDefaultView, isCommentFeatureEnabled, showCommentBadge, toggleCommentMode, commentMode, hideFontSize, hideNumericFormat, onContentDensityChange, isCommentResolvedAlertOpen, setIsCommentResolvedAlertOpen, showCommentPanel, setShowCommentPanel, customTabInTableSettings, closeTableSettingOnOutsideClick, saveViewCustomFilter, customRenderSaveViewContent, onTableSettingClick, deleteViewPromptText, isViewNameUniqueAcrossTypes, contentualFilterOpenByDefault, tableSettingsTitle, registerTableSettingToggle, numericFormatDefault, extraNumericFormatOptions, viewPoint, disableContextualFilter, disableTableSettings, onAdvanceSortClick, advanceSortEnabled, }: {
4
2
  actualRef: any;
5
3
  colDefs: any;
@@ -79,5 +77,5 @@ export default function TableHeader({ actualRef, colDefs, Columns, tableFontSize
79
77
  disableTableSettings: any;
80
78
  onAdvanceSortClick: any;
81
79
  advanceSortEnabled: any;
82
- }): React.JSX.Element | null;
80
+ }): import("react").JSX.Element | null;
83
81
  //# sourceMappingURL=tableHeader.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"tableHeader.d.ts","sourceRoot":"","sources":["../../../src/components/TableV36/tableHeader.tsx"],"names":[],"mappings":"AACA,OAAO,KAA+D,MAAM,OAAO,CAAC;AAkBpF,MAAM,CAAC,OAAO,UAAU,WAAW,CAAC,EAClC,SAAS,EACT,OAAO,EACP,OAAO,EACP,aAAa,EACb,gBAAgB,EAChB,SAAS,EACT,YAAY,EACZ,WAAW,EACX,eAAe,EACf,cAAc,EACd,mBAAmB,EACnB,aAAa,EACb,oBAAoB,EACpB,uBAAuB,EACvB,kBAAkB,EAClB,qBAAqB,EACrB,WAAW,EACX,sBAAsB,EACtB,iBAAiB,EACjB,mBAAmB,EACnB,qBAAqB,EACrB,2BAA2B,EAC3B,gBAAgB,EAChB,oBAAoB,EACpB,yBAAyB,EACzB,uBAAuB,EACvB,qBAA0B,EAC1B,yBAAyB,EACzB,YAAY,EACZ,sBAAsB,EACtB,eAAe,EACf,gBAAgB,EAChB,gBAAgB,EAChB,2BAA2B,EAC3B,kBAAkB,EAClB,aAAoB,EACpB,eAA0B,EAC1B,UAAU,EACV,eAAe,EACf,iBAAiB,EACjB,iBAAiB,EACjB,kBAAkB,EAClB,aAAa,EACb,oBAAoB,EACpB,kBAAkB,EAClB,iBAAiB,EACjB,mBAAmB,EACnB,qBAAqB,EACrB,mBAAmB,EACnB,oBAAoB,EACpB,uBAAuB,EACvB,gBAAgB,EAChB,iBAAiB,EACjB,WAAW,EACX,YAAY,EACZ,iBAAiB,EACjB,sBAAsB,EACtB,0BAA0B,EAC1B,6BAA6B,EAC7B,gBAAgB,EAChB,mBAAmB,EACnB,wBAAwB,EACxB,+BAA+B,EAC/B,oBAAoB,EACpB,2BAA2B,EAC3B,mBAAmB,EACnB,oBAAoB,EACpB,2BAA2B,EAC3B,6BAA6B,EAC7B,kBAAkB,EAClB,0BAA0B,EAC1B,oBAAoB,EACpB,yBAAyB,EACzB,SAAS,EACT,uBAAuB,EACvB,oBAAoB,EACpB,kBAAkB,EAClB,kBAAkB,GACnB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAAA,4BAsWA"}
1
+ {"version":3,"file":"tableHeader.d.ts","sourceRoot":"","sources":["../../../src/components/TableV36/tableHeader.tsx"],"names":[],"mappings":"AAeA,MAAM,CAAC,OAAO,UAAU,WAAW,CAAC,EAClC,SAAS,EACT,OAAO,EACP,OAAO,EACP,aAAa,EACb,gBAAgB,EAChB,SAAS,EACT,YAAY,EACZ,WAAW,EACX,eAAe,EACf,cAAc,EACd,mBAAmB,EACnB,aAAa,EACb,oBAAoB,EACpB,uBAAuB,EACvB,kBAAkB,EAClB,qBAAqB,EACrB,WAAW,EACX,sBAAsB,EACtB,iBAAiB,EACjB,mBAAmB,EACnB,qBAAqB,EACrB,2BAA2B,EAC3B,gBAAgB,EAChB,oBAAoB,EACpB,yBAAyB,EACzB,uBAAuB,EACvB,qBAA0B,EAC1B,yBAAyB,EACzB,YAAY,EACZ,sBAAsB,EACtB,eAAe,EACf,gBAAgB,EAChB,gBAAgB,EAChB,2BAA2B,EAC3B,kBAAkB,EAClB,aAAoB,EACpB,eAA0B,EAC1B,UAAU,EACV,eAAe,EACf,iBAAiB,EACjB,iBAAiB,EACjB,kBAAkB,EAClB,aAAa,EACb,oBAAoB,EACpB,kBAAkB,EAClB,iBAAiB,EACjB,mBAAmB,EACnB,qBAAqB,EACrB,mBAAmB,EACnB,oBAAoB,EACpB,uBAAuB,EACvB,gBAAgB,EAChB,iBAAiB,EACjB,WAAW,EACX,YAAY,EACZ,iBAAiB,EACjB,sBAAsB,EACtB,0BAA0B,EAC1B,6BAA6B,EAC7B,gBAAgB,EAChB,mBAAmB,EACnB,wBAAwB,EACxB,+BAA+B,EAC/B,oBAAoB,EACpB,2BAA2B,EAC3B,mBAAmB,EACnB,oBAAoB,EACpB,2BAA2B,EAC3B,6BAA6B,EAC7B,kBAAkB,EAClB,0BAA0B,EAC1B,oBAAoB,EACpB,yBAAyB,EACzB,SAAS,EACT,uBAAuB,EACvB,oBAAoB,EACpB,kBAAkB,EAClB,kBAAkB,GACnB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAAA,sCAuWA"}
@@ -1,6 +1,6 @@
1
1
  import { jsxs, jsx, Fragment } from "react/jsx-runtime";
2
2
  import { useState, useRef, useEffect, useMemo } from "react";
3
- import { ChatIcon as ChatIcon_default } from "../../node_modules/@impactsmartsuite/impact-icons/dist/index.js";
3
+ import { CommentGray as CommentGray_default } from "../../node_modules/@impactsmartsuite/impact-icons/dist/index.js";
4
4
  import default_1 from "../../node_modules/@mui/icons-material/FilterAltOffOutlined.js";
5
5
  import default_1$1 from "../../node_modules/@mui/icons-material/FilterAltOutlined.js";
6
6
  import default_1$2 from "../../node_modules/@mui/icons-material/MoreHorizOutlined.js";
@@ -262,7 +262,7 @@ function TableHeader({
262
262
  className: "table-chat-icon-button",
263
263
  "data-icon": "chat",
264
264
  "data-type": "table-icon",
265
- icon: /* @__PURE__ */ jsx(ImpactIcon, { icon: impactIconSource(ChatIcon_default), size: 16 }),
265
+ icon: /* @__PURE__ */ jsx(ImpactIcon, { icon: impactIconSource(CommentGray_default), size: 16 }),
266
266
  variant: "tertiary",
267
267
  onClick: handleChatClick
268
268
  }
@@ -286,6 +286,7 @@ function TableHeader({
286
286
  "data-active": commentMode ? "true" : void 0,
287
287
  "data-icon": "comment",
288
288
  "data-type": "table-icon",
289
+ icon: /* @__PURE__ */ jsx(ImpactIcon, { icon: impactIconSource(CommentGray_default), size: 16 }),
289
290
  variant: "text",
290
291
  onClick: handleCommentClick
291
292
  }
@@ -17,7 +17,7 @@ function TablePagination({
17
17
  const onPageSizeChange = (val) => {
18
18
  var _a, _b;
19
19
  setLocalPageSize(val);
20
- (_b = (_a = actualRef == null ? void 0 : actualRef.current) == null ? void 0 : _a.api) == null ? void 0 : _b.paginationSetPageSize(val);
20
+ (_b = (_a = actualRef == null ? void 0 : actualRef.current) == null ? void 0 : _a.api) == null ? void 0 : _b.setGridOption("paginationPageSize", val);
21
21
  setPaginationOptionsAnchorEl(null);
22
22
  };
23
23
  return /* @__PURE__ */ jsxs("div", { className: "pagination-container", children: [
@@ -1 +1 @@
1
- {"version":3,"file":"tableSettings.d.ts","sourceRoot":"","sources":["../../../src/components/TableV36/tableSettings.tsx"],"names":[],"mappings":"AACA,OAAO,KAA4D,MAAM,OAAO,CAAC;AAOjF,MAAM,CAAC,OAAO,UAAU,aAAa,CAAC,EACpC,QAAQ,EACR,OAAO,EACP,SAAS,EACT,aAAa,EACb,gBAAgB,EAChB,eAAe,EACf,oBAAoB,EACpB,OAAO,EACP,WAAW,EACX,gBAAgB,EAChB,mBAAmB,EACnB,mBAAmB,EACnB,YAAY,EACZ,sBAAsB,EACtB,eAAe,EACf,eAAe,EACf,gBAAgB,EAChB,iBAAiB,EACjB,kBAAkB,EAClB,aAAa,EACb,oBAAoB,EACpB,kBAAkB,EAClB,iBAAiB,EACjB,mBAAmB,EACnB,qBAAqB,EACrB,mBAAmB,EACnB,oBAAoB,EACpB,iBAAiB,EACjB,YAAY,EACZ,wBAAwB,EACxB,oBAAoB,EACpB,2BAA2B,EAC3B,mBAAmB,EACnB,oBAAoB,EACpB,2BAA2B,EAC3B,kBAAqC,EACrC,0BAA0B,EAC1B,oBAAoB,EACpB,yBAAyB,GAC1B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAAA,qBA6NA"}
1
+ {"version":3,"file":"tableSettings.d.ts","sourceRoot":"","sources":["../../../src/components/TableV36/tableSettings.tsx"],"names":[],"mappings":"AACA,OAAO,KAA4D,MAAM,OAAO,CAAC;AAUjF,MAAM,CAAC,OAAO,UAAU,aAAa,CAAC,EACpC,QAAQ,EACR,OAAO,EACP,SAAS,EACT,aAAa,EACb,gBAAgB,EAChB,eAAe,EACf,oBAAoB,EACpB,OAAO,EACP,WAAW,EACX,gBAAgB,EAChB,mBAAmB,EACnB,mBAAmB,EACnB,YAAY,EACZ,sBAAsB,EACtB,eAAe,EACf,eAAe,EACf,gBAAgB,EAChB,iBAAiB,EACjB,kBAAkB,EAClB,aAAa,EACb,oBAAoB,EACpB,kBAAkB,EAClB,iBAAiB,EACjB,mBAAmB,EACnB,qBAAqB,EACrB,mBAAmB,EACnB,oBAAoB,EACpB,iBAAiB,EACjB,YAAY,EACZ,wBAAwB,EACxB,oBAAoB,EACpB,2BAA2B,EAC3B,mBAAmB,EACnB,oBAAoB,EACpB,2BAA2B,EAC3B,kBAAqC,EACrC,0BAA0B,EAC1B,oBAAoB,EACpB,yBAAyB,GAC1B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAAA,qBA0NA"}
@@ -1,10 +1,13 @@
1
1
  import { jsx, jsxs } from "react/jsx-runtime";
2
2
  import React__default, { useState, useRef, useCallback, useEffect, useMemo } from "react";
3
+ import { Close as Close_default } from "../../node_modules/@impactsmartsuite/impact-icons/dist/index.js";
3
4
  import default_1$2 from "../../node_modules/@mui/icons-material/AutoFixHigh.js";
4
5
  import default_1$1 from "../../node_modules/@mui/icons-material/FormatColorTextOutlined.js";
5
6
  import default_1 from "../../node_modules/@mui/icons-material/ViewColumnOutlined.js";
7
+ import { ImpactIcon, impactIconSource } from "../ImpactIcon/index.js";
6
8
  import { RadioButtonGroup } from "../RadioButtonGroup/index.js";
7
9
  import { Tabs } from "../Tabs/index.js";
10
+ import { useTranslation } from "../../i18n/useTranslation.js";
8
11
  function TableSettings({
9
12
  showMenu,
10
13
  Columns,
@@ -46,6 +49,7 @@ function TableSettings({
46
49
  numericFormatDefault,
47
50
  extraNumericFormatOptions
48
51
  }) {
52
+ const { t } = useTranslation();
49
53
  const [selectedMenuTab, setSelectedMenuTab] = useState("Columns");
50
54
  const [numericFormat, setNumericFormat] = useState(numericFormatDefault || "full_no");
51
55
  const showTableSettingRef = useRef(showTableSetting);
@@ -227,18 +231,13 @@ function TableSettings({
227
231
  /* @__PURE__ */ jsxs("div", { className: "table-setting-header", children: [
228
232
  /* @__PURE__ */ jsx("h2", { children: tableSettingsTitle }),
229
233
  /* @__PURE__ */ jsx(
230
- "span",
234
+ "button",
231
235
  {
236
+ "aria-label": t("common.close"),
232
237
  className: "close_icon",
233
- role: "button",
234
- tabIndex: 0,
238
+ type: "button",
235
239
  onClick: onCloseTableSetting,
236
- onKeyDown: (e) => {
237
- if (e.key === "Enter" || e.key === " ") {
238
- e.preventDefault();
239
- onCloseTableSetting();
240
- }
241
- }
240
+ children: /* @__PURE__ */ jsx(ImpactIcon, { icon: impactIconSource(Close_default), size: 12 })
242
241
  }
243
242
  )
244
243
  ] }),
@@ -0,0 +1,11 @@
1
+ import { AccentColorId } from './ThemingPanel.types';
2
+
3
+ export interface AccentColorSectionProps {
4
+ value: AccentColorId;
5
+ onChange: (color: AccentColorId) => void;
6
+ }
7
+ export declare function AccentColorSection({ value, onChange }: AccentColorSectionProps): import("react").JSX.Element;
8
+ export declare namespace AccentColorSection {
9
+ var displayName: string;
10
+ }
11
+ //# sourceMappingURL=AccentColorSection.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AccentColorSection.d.ts","sourceRoot":"","sources":["../../../src/components/ThemingPanel/AccentColorSection.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAE1D,MAAM,WAAW,uBAAuB;IACtC,KAAK,EAAE,aAAa,CAAC;IACrB,QAAQ,EAAE,CAAC,KAAK,EAAE,aAAa,KAAK,IAAI,CAAC;CAC1C;AAED,wBAAgB,kBAAkB,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE,uBAAuB,+BAuC9E;yBAvCe,kBAAkB"}
@@ -0,0 +1,43 @@
1
+ import { jsxs, jsx } from "react/jsx-runtime";
2
+ import { ACCENT_COLORS, getAccentColorCssVar } from "./themingPanel.constants.js";
3
+ import { useTranslation } from "../../i18n/useTranslation.js";
4
+ function AccentColorSection({ value, onChange }) {
5
+ const { t } = useTranslation();
6
+ return /* @__PURE__ */ jsxs("section", { className: "ia-theming-panel-row", children: [
7
+ /* @__PURE__ */ jsxs("div", { className: "ia-theming-panel-row-copy", children: [
8
+ /* @__PURE__ */ jsx("h3", { className: "ia-theming-panel-section-title", children: t("themingPanel.accentColor.title") }),
9
+ /* @__PURE__ */ jsx("p", { className: "ia-theming-panel-section-subtitle", children: t("themingPanel.accentColor.subtitle") })
10
+ ] }),
11
+ /* @__PURE__ */ jsx(
12
+ "div",
13
+ {
14
+ "aria-label": t("themingPanel.accentColor.title"),
15
+ className: "ia-theming-panel-swatches",
16
+ role: "radiogroup",
17
+ children: ACCENT_COLORS.map(({ id }) => {
18
+ const selected = value === id;
19
+ return /* @__PURE__ */ jsx(
20
+ "button",
21
+ {
22
+ "aria-checked": selected,
23
+ "aria-label": t(`themingPanel.accentColor.${id}`),
24
+ className: `ia-theming-panel-swatch ${selected ? "ia-theming-panel-swatch-selected" : ""}`,
25
+ role: "radio",
26
+ style: { "--ia-theming-swatch-color": getAccentColorCssVar(id) },
27
+ type: "button",
28
+ onClick: () => {
29
+ onChange(id);
30
+ },
31
+ children: /* @__PURE__ */ jsx("span", { className: "ia-theming-panel-swatch-fill" })
32
+ },
33
+ id
34
+ );
35
+ })
36
+ }
37
+ )
38
+ ] });
39
+ }
40
+ AccentColorSection.displayName = "AccentColorSection";
41
+ export {
42
+ AccentColorSection
43
+ };
@@ -0,0 +1,11 @@
1
+ import { ContrastLevel } from './ThemingPanel.types';
2
+
3
+ export interface EnhanceContrastSectionProps {
4
+ value: ContrastLevel;
5
+ onChange: (level: ContrastLevel) => void;
6
+ }
7
+ export declare function EnhanceContrastSection({ value, onChange }: EnhanceContrastSectionProps): import("react").JSX.Element;
8
+ export declare namespace EnhanceContrastSection {
9
+ var displayName: string;
10
+ }
11
+ //# sourceMappingURL=EnhanceContrastSection.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EnhanceContrastSection.d.ts","sourceRoot":"","sources":["../../../src/components/ThemingPanel/EnhanceContrastSection.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAE1D,MAAM,WAAW,2BAA2B;IAC1C,KAAK,EAAE,aAAa,CAAC;IACrB,QAAQ,EAAE,CAAC,KAAK,EAAE,aAAa,KAAK,IAAI,CAAC;CAC1C;AAED,wBAAgB,sBAAsB,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE,2BAA2B,+BAmCtF;yBAnCe,sBAAsB"}
@@ -0,0 +1,42 @@
1
+ import { jsxs, jsx } from "react/jsx-runtime";
2
+ import { Chips } from "../Chips/index.js";
3
+ import { CONTRAST_LEVELS } from "./themingPanel.constants.js";
4
+ import { useTranslation } from "../../i18n/useTranslation.js";
5
+ function EnhanceContrastSection({ value, onChange }) {
6
+ const { t } = useTranslation();
7
+ const labels = {
8
+ subtle: t("themingPanel.contrast.subtle"),
9
+ default: t("themingPanel.contrast.default"),
10
+ dark: t("themingPanel.contrast.dark")
11
+ };
12
+ return /* @__PURE__ */ jsxs("section", { className: "ia-theming-panel-row", children: [
13
+ /* @__PURE__ */ jsxs("div", { className: "ia-theming-panel-row-copy", children: [
14
+ /* @__PURE__ */ jsx("h3", { className: "ia-theming-panel-section-title", children: t("themingPanel.contrast.title") }),
15
+ /* @__PURE__ */ jsx("p", { className: "ia-theming-panel-section-subtitle", children: t("themingPanel.contrast.subtitle") })
16
+ ] }),
17
+ /* @__PURE__ */ jsx(
18
+ "div",
19
+ {
20
+ "aria-label": t("themingPanel.contrast.title"),
21
+ className: "ia-theming-panel-chips",
22
+ role: "radiogroup",
23
+ children: CONTRAST_LEVELS.map((level) => /* @__PURE__ */ jsx(
24
+ Chips,
25
+ {
26
+ isActive: value === level,
27
+ label: labels[level],
28
+ type: "default",
29
+ onClick: () => {
30
+ onChange(level);
31
+ }
32
+ },
33
+ level
34
+ ))
35
+ }
36
+ )
37
+ ] });
38
+ }
39
+ EnhanceContrastSection.displayName = "EnhanceContrastSection";
40
+ export {
41
+ EnhanceContrastSection
42
+ };
@@ -0,0 +1,13 @@
1
+ import { ImpactUiThemeMode } from '../../tokens';
2
+
3
+ export interface InterfaceThemeSectionProps {
4
+ /** Theme preference from the parent (e.g. `useImpactUiTheme().mode` or panel draft state). */
5
+ value: ImpactUiThemeMode;
6
+ /** Called when the user picks System / Light / Dark (wire to `setMode` or draft handler). */
7
+ onChange: (mode: ImpactUiThemeMode) => void;
8
+ }
9
+ export declare function InterfaceThemeSection({ value, onChange }: InterfaceThemeSectionProps): import("react").JSX.Element;
10
+ export declare namespace InterfaceThemeSection {
11
+ var displayName: string;
12
+ }
13
+ //# sourceMappingURL=InterfaceThemeSection.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"InterfaceThemeSection.d.ts","sourceRoot":"","sources":["../../../src/components/ThemingPanel/InterfaceThemeSection.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AAEtD,MAAM,WAAW,0BAA0B;IACzC,8FAA8F;IAC9F,KAAK,EAAE,iBAAiB,CAAC;IACzB,6FAA6F;IAC7F,QAAQ,EAAE,CAAC,IAAI,EAAE,iBAAiB,KAAK,IAAI,CAAC;CAC7C;AAiED,wBAAgB,qBAAqB,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE,0BAA0B,+BA6DpF;yBA7De,qBAAqB"}
@@ -0,0 +1,118 @@
1
+ import { jsxs, jsx } from "react/jsx-runtime";
2
+ import { useTranslation } from "../../i18n/useTranslation.js";
3
+ import Radio from "../../node_modules/@mui/material/Radio/Radio.js";
4
+ const MODES = ["system", "light", "dark"];
5
+ function WindowDots({ variant }) {
6
+ if (variant === "dark") {
7
+ return /* @__PURE__ */ jsxs("div", { "aria-hidden": true, className: "ia-theming-panel-preview-chrome", children: [
8
+ /* @__PURE__ */ jsx("span", { className: "ia-theming-panel-preview-dots ia-theming-panel-preview-dots--dark" }),
9
+ /* @__PURE__ */ jsx("span", { className: "ia-theming-panel-preview-accent" })
10
+ ] });
11
+ }
12
+ return /* @__PURE__ */ jsxs("div", { "aria-hidden": true, className: "ia-theming-panel-preview-chrome", children: [
13
+ /* @__PURE__ */ jsx("span", { className: "ia-theming-panel-preview-dot ia-theming-panel-preview-dot--red" }),
14
+ /* @__PURE__ */ jsx("span", { className: "ia-theming-panel-preview-dot ia-theming-panel-preview-dot--amber" }),
15
+ /* @__PURE__ */ jsx("span", { className: "ia-theming-panel-preview-dot ia-theming-panel-preview-dot--green" }),
16
+ /* @__PURE__ */ jsx("span", { className: "ia-theming-panel-preview-accent" })
17
+ ] });
18
+ }
19
+ function MockEditor({ tone }) {
20
+ return /* @__PURE__ */ jsxs("div", { className: `ia-theming-panel-preview-editor ia-theming-panel-preview-editor--${tone}`, children: [
21
+ /* @__PURE__ */ jsx("div", { className: "ia-theming-panel-preview-sidebar" }),
22
+ /* @__PURE__ */ jsxs("div", { className: "ia-theming-panel-preview-main", children: [
23
+ /* @__PURE__ */ jsx("div", { className: "ia-theming-panel-preview-navbar" }),
24
+ /* @__PURE__ */ jsx("div", { className: "ia-theming-panel-preview-body" })
25
+ ] })
26
+ ] });
27
+ }
28
+ function ThemePreview({ mode }) {
29
+ if (mode === "system") {
30
+ return /* @__PURE__ */ jsxs("div", { className: "ia-theming-panel-theme-preview ia-theming-panel-theme-preview--system", children: [
31
+ /* @__PURE__ */ jsxs("div", { className: "ia-theming-panel-theme-preview-half ia-theming-panel-theme-preview-half--light", children: [
32
+ /* @__PURE__ */ jsx(WindowDots, { variant: "system-light" }),
33
+ /* @__PURE__ */ jsx(MockEditor, { tone: "light" })
34
+ ] }),
35
+ /* @__PURE__ */ jsxs("div", { className: "ia-theming-panel-theme-preview-half ia-theming-panel-theme-preview-half--dark", children: [
36
+ /* @__PURE__ */ jsx(
37
+ "div",
38
+ {
39
+ "aria-hidden": true,
40
+ className: "ia-theming-panel-preview-chrome ia-theming-panel-preview-chrome--end",
41
+ children: /* @__PURE__ */ jsx("span", { className: "ia-theming-panel-preview-accent" })
42
+ }
43
+ ),
44
+ /* @__PURE__ */ jsx(MockEditor, { tone: "dark" })
45
+ ] })
46
+ ] });
47
+ }
48
+ return /* @__PURE__ */ jsxs("div", { className: `ia-theming-panel-theme-preview ia-theming-panel-theme-preview--${mode}`, children: [
49
+ /* @__PURE__ */ jsx(WindowDots, { variant: mode }),
50
+ /* @__PURE__ */ jsx(MockEditor, { tone: mode })
51
+ ] });
52
+ }
53
+ function InterfaceThemeSection({ value, onChange }) {
54
+ const { t } = useTranslation();
55
+ const labels = {
56
+ light: t("profileMenu.themeLight"),
57
+ dark: t("profileMenu.themeDark"),
58
+ system: t("themingPanel.theme.system")
59
+ };
60
+ return /* @__PURE__ */ jsxs("section", { className: "ia-theming-panel-row", children: [
61
+ /* @__PURE__ */ jsxs("div", { className: "ia-theming-panel-row-copy", children: [
62
+ /* @__PURE__ */ jsx("h3", { className: "ia-theming-panel-section-title", children: t("themingPanel.interfaceTheme.title") }),
63
+ /* @__PURE__ */ jsx("p", { className: "ia-theming-panel-section-subtitle", children: t("themingPanel.interfaceTheme.subtitle") })
64
+ ] }),
65
+ /* @__PURE__ */ jsx(
66
+ "div",
67
+ {
68
+ "aria-label": t("themingPanel.interfaceTheme.title"),
69
+ className: "ia-theming-panel-theme-cards",
70
+ role: "radiogroup",
71
+ children: MODES.map((themeOption) => {
72
+ const selected = value === themeOption;
73
+ return /* @__PURE__ */ jsxs(
74
+ "div",
75
+ {
76
+ "aria-checked": selected,
77
+ className: `ia-theming-panel-theme-card ${selected ? "ia-theming-panel-theme-card-selected" : ""}`,
78
+ role: "radio",
79
+ tabIndex: 0,
80
+ onClick: () => {
81
+ onChange(themeOption);
82
+ },
83
+ onKeyDown: (e) => {
84
+ if (e.key === "Enter" || e.key === " ") {
85
+ e.preventDefault();
86
+ onChange(themeOption);
87
+ }
88
+ },
89
+ children: [
90
+ /* @__PURE__ */ jsx(ThemePreview, { mode: themeOption }),
91
+ /* @__PURE__ */ jsxs("div", { className: "ia-theming-panel-theme-card-footer", children: [
92
+ /* @__PURE__ */ jsx("span", { className: "ia-theming-panel-theme-card-label", children: labels[themeOption] }),
93
+ /* @__PURE__ */ jsx(
94
+ Radio,
95
+ {
96
+ disableRipple: true,
97
+ checked: selected,
98
+ className: "ia-styles ia-radioButton ia-theming-panel-theme-card-radio",
99
+ inputProps: { "aria-hidden": true },
100
+ size: "small",
101
+ tabIndex: -1,
102
+ value: themeOption
103
+ }
104
+ )
105
+ ] })
106
+ ]
107
+ },
108
+ themeOption
109
+ );
110
+ })
111
+ }
112
+ )
113
+ ] });
114
+ }
115
+ InterfaceThemeSection.displayName = "InterfaceThemeSection";
116
+ export {
117
+ InterfaceThemeSection
118
+ };
@@ -0,0 +1,11 @@
1
+ import { InterfaceStyleId } from './ThemingPanel.types';
2
+
3
+ export interface StylesSectionProps {
4
+ value: InterfaceStyleId;
5
+ onChange: (style: InterfaceStyleId) => void;
6
+ }
7
+ export declare function StylesSection({ value, onChange }: StylesSectionProps): import("react").JSX.Element;
8
+ export declare namespace StylesSection {
9
+ var displayName: string;
10
+ }
11
+ //# sourceMappingURL=StylesSection.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"StylesSection.d.ts","sourceRoot":"","sources":["../../../src/components/ThemingPanel/StylesSection.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAE7D,MAAM,WAAW,kBAAkB;IACjC,KAAK,EAAE,gBAAgB,CAAC;IACxB,QAAQ,EAAE,CAAC,KAAK,EAAE,gBAAgB,KAAK,IAAI,CAAC;CAC7C;AAED,wBAAgB,aAAa,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE,kBAAkB,+BA0CpE;yBA1Ce,aAAa"}
@@ -0,0 +1,43 @@
1
+ import { jsxs, jsx } from "react/jsx-runtime";
2
+ import { INTERFACE_STYLES } from "./themingPanel.constants.js";
3
+ import { useTranslation } from "../../i18n/useTranslation.js";
4
+ function StylesSection({ value, onChange }) {
5
+ const { t } = useTranslation();
6
+ return /* @__PURE__ */ jsxs("section", { className: "ia-theming-panel-row", children: [
7
+ /* @__PURE__ */ jsxs("div", { className: "ia-theming-panel-row-copy", children: [
8
+ /* @__PURE__ */ jsx("h3", { className: "ia-theming-panel-section-title", children: t("themingPanel.styles.title") }),
9
+ /* @__PURE__ */ jsx("p", { className: "ia-theming-panel-section-subtitle", children: t("themingPanel.styles.subtitle") })
10
+ ] }),
11
+ /* @__PURE__ */ jsx(
12
+ "div",
13
+ {
14
+ "aria-label": t("themingPanel.styles.title"),
15
+ className: "ia-theming-panel-styles",
16
+ role: "radiogroup",
17
+ children: INTERFACE_STYLES.map(({ id, image }) => {
18
+ const selected = value === id;
19
+ const label = t(`themingPanel.styles.${id}`);
20
+ return /* @__PURE__ */ jsx(
21
+ "button",
22
+ {
23
+ "aria-checked": selected,
24
+ "aria-label": label,
25
+ className: `ia-theming-panel-style-card ${selected ? "ia-theming-panel-style-card-selected" : ""}`,
26
+ role: "radio",
27
+ type: "button",
28
+ onClick: () => {
29
+ onChange(id);
30
+ },
31
+ children: image ? /* @__PURE__ */ jsx("img", { alt: "", className: "ia-theming-panel-style-image", src: image }) : /* @__PURE__ */ jsx("span", { className: "ia-theming-panel-style-none-label", children: label })
32
+ },
33
+ id
34
+ );
35
+ })
36
+ }
37
+ )
38
+ ] });
39
+ }
40
+ StylesSection.displayName = "StylesSection";
41
+ export {
42
+ StylesSection
43
+ };
@@ -0,0 +1,18 @@
1
+ import { AccentColorId, ContrastLevel, InterfaceStyleId } from './ThemingPanel.types';
2
+ import { ImpactUiThemeMode } from '../../tokens';
3
+
4
+ export interface ThemesTabProps {
5
+ mode: ImpactUiThemeMode;
6
+ accentColor: AccentColorId;
7
+ contrast: ContrastLevel;
8
+ style: InterfaceStyleId;
9
+ onModeChange: (mode: ImpactUiThemeMode) => void;
10
+ onAccentColorChange: (color: AccentColorId) => void;
11
+ onContrastChange: (level: ContrastLevel) => void;
12
+ onStyleChange: (style: InterfaceStyleId) => void;
13
+ }
14
+ export declare function ThemesTab({ mode, accentColor, contrast, style, onModeChange, onAccentColorChange, onContrastChange, onStyleChange, }: ThemesTabProps): import("react").JSX.Element;
15
+ export declare namespace ThemesTab {
16
+ var displayName: string;
17
+ }
18
+ //# sourceMappingURL=ThemesTab.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ThemesTab.d.ts","sourceRoot":"","sources":["../../../src/components/ThemingPanel/ThemesTab.tsx"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,aAAa,EAAE,aAAa,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAC3F,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AAEtD,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,iBAAiB,CAAC;IACxB,WAAW,EAAE,aAAa,CAAC;IAC3B,QAAQ,EAAE,aAAa,CAAC;IACxB,KAAK,EAAE,gBAAgB,CAAC;IACxB,YAAY,EAAE,CAAC,IAAI,EAAE,iBAAiB,KAAK,IAAI,CAAC;IAChD,mBAAmB,EAAE,CAAC,KAAK,EAAE,aAAa,KAAK,IAAI,CAAC;IACpD,gBAAgB,EAAE,CAAC,KAAK,EAAE,aAAa,KAAK,IAAI,CAAC;IACjD,aAAa,EAAE,CAAC,KAAK,EAAE,gBAAgB,KAAK,IAAI,CAAC;CAClD;AAED,wBAAgB,SAAS,CAAC,EACxB,IAAI,EACJ,WAAW,EACX,QAAQ,EACR,KAAK,EACL,YAAY,EACZ,mBAAmB,EACnB,gBAAgB,EAChB,aAAa,GACd,EAAE,cAAc,+BAgBhB;yBAzBe,SAAS"}
@@ -0,0 +1,33 @@
1
+ import { jsxs, jsx } from "react/jsx-runtime";
2
+ import { AccentColorSection } from "./AccentColorSection.js";
3
+ import { EnhanceContrastSection } from "./EnhanceContrastSection.js";
4
+ import { InterfaceThemeSection } from "./InterfaceThemeSection.js";
5
+ import { StylesSection } from "./StylesSection.js";
6
+ import { getAccentColorCssVar } from "./themingPanel.constants.js";
7
+ function ThemesTab({
8
+ mode,
9
+ accentColor,
10
+ contrast,
11
+ style,
12
+ onModeChange,
13
+ onAccentColorChange,
14
+ onContrastChange,
15
+ onStyleChange
16
+ }) {
17
+ const previewAccentStyle = {
18
+ "--ia-theming-preview-accent": getAccentColorCssVar(accentColor)
19
+ };
20
+ return /* @__PURE__ */ jsxs("div", { className: "ia-theming-panel-themes", style: previewAccentStyle, children: [
21
+ /* @__PURE__ */ jsx(InterfaceThemeSection, { value: mode, onChange: onModeChange }),
22
+ /* @__PURE__ */ jsx("div", { "aria-hidden": true, className: "ia-theming-panel-divider" }),
23
+ /* @__PURE__ */ jsx(AccentColorSection, { value: accentColor, onChange: onAccentColorChange }),
24
+ /* @__PURE__ */ jsx("div", { "aria-hidden": true, className: "ia-theming-panel-divider" }),
25
+ /* @__PURE__ */ jsx(EnhanceContrastSection, { value: contrast, onChange: onContrastChange }),
26
+ /* @__PURE__ */ jsx("div", { "aria-hidden": true, className: "ia-theming-panel-divider" }),
27
+ /* @__PURE__ */ jsx(StylesSection, { value: style, onChange: onStyleChange })
28
+ ] });
29
+ }
30
+ ThemesTab.displayName = "ThemesTab";
31
+ export {
32
+ ThemesTab
33
+ };
@@ -0,0 +1,10 @@
1
+ import { ThemingPanelProps } from './ThemingPanel.types';
2
+
3
+ /**
4
+ * Appearance settings modal — opened from Profile menu → Themes.
5
+ */
6
+ export declare function ThemingPanel({ open, onClose, onApply, className, 'data-testid': dataTestId, }: ThemingPanelProps): import("react").JSX.Element | null;
7
+ export declare namespace ThemingPanel {
8
+ var displayName: string;
9
+ }
10
+ //# sourceMappingURL=ThemingPanel.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ThemingPanel.d.ts","sourceRoot":"","sources":["../../../src/components/ThemingPanel/ThemingPanel.tsx"],"names":[],"mappings":"AAkBA,OAAO,KAAK,EAIV,iBAAiB,EAClB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,4BAA4B,CAAC;AAQpC;;GAEG;AACH,wBAAgB,YAAY,CAAC,EAC3B,IAAI,EACJ,OAAO,EACP,OAAO,EACP,SAAS,EACT,aAAa,EAAE,UAAU,GAC1B,EAAE,iBAAiB,sCAwKnB;yBA9Ke,YAAY"}