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.
- package/dist/components/Avatar/index.js +1 -1
- package/dist/components/Chatbot/index.js +1 -1
- package/dist/components/CommentsPanel/CommentsPanel.impl.js +1 -1
- package/dist/components/DatePicker/datePickerInput.d.ts.map +1 -1
- package/dist/components/DatePicker/datePickerInput.js +5 -2
- package/dist/components/DatePicker/index.js +1 -1
- package/dist/components/DynamicLayout/index.js +1 -1
- package/dist/components/FileUpload/index.d.ts.map +1 -1
- package/dist/components/FileUpload/index.js +11 -4
- package/dist/components/FilterPanel/index.js +1 -1
- package/dist/components/FiltersStrip/index.js +1 -1
- package/dist/components/Header/Header.types.d.ts +16 -4
- package/dist/components/Header/Header.types.d.ts.map +1 -1
- package/dist/components/Header/index.d.ts +1 -1
- package/dist/components/Header/index.d.ts.map +1 -1
- package/dist/components/Header/index.js +36 -17
- package/dist/components/HomePage/constants.d.ts.map +1 -1
- package/dist/components/HomePage/constants.js +3 -4
- package/dist/components/HomePage/index.js +1 -1
- package/dist/components/MonthPicker/index.d.ts.map +1 -1
- package/dist/components/MonthPicker/index.js +6 -12
- package/dist/components/MonthRangePicker/index.d.ts.map +1 -1
- package/dist/components/MonthRangePicker/index.js +7 -3
- package/dist/components/NewDynamicLayout/index.js +1 -1
- package/dist/components/Notification/NotificationBody/NotificationList/NotificationList.js +1 -1
- package/dist/components/Notification/NotificationBody/NotificationList/NotificationListItem.js +1 -1
- package/dist/components/Notification/index.js +1 -1
- package/dist/components/OnboardingTour/index.d.ts.map +1 -1
- package/dist/components/OnboardingTour/index.js +10 -4
- package/dist/components/OnboardingTour/productTourList.js +4 -4
- package/dist/components/OnboardingTour/tooltipCard.d.ts.map +1 -1
- package/dist/components/OnboardingTour/tooltipCard.js +2 -2
- package/dist/components/Popover/Popover.types.d.ts +5 -0
- package/dist/components/Popover/Popover.types.d.ts.map +1 -1
- package/dist/components/Popover/index.d.ts +1 -1
- package/dist/components/Popover/index.d.ts.map +1 -1
- package/dist/components/Popover/index.js +11 -3
- package/dist/components/ProfileMenu/ProfileMenu.types.d.ts +16 -5
- package/dist/components/ProfileMenu/ProfileMenu.types.d.ts.map +1 -1
- package/dist/components/ProfileMenu/ProfileMenuListItem.d.ts +12 -0
- package/dist/components/ProfileMenu/ProfileMenuListItem.d.ts.map +1 -0
- package/dist/components/ProfileMenu/ProfileMenuListItem.js +42 -0
- package/dist/components/ProfileMenu/index.d.ts +3 -10
- package/dist/components/ProfileMenu/index.d.ts.map +1 -1
- package/dist/components/ProfileMenu/index.js +104 -244
- package/dist/components/Slider/index.d.ts.map +1 -1
- package/dist/components/Slider/index.js +3 -1
- package/dist/components/Slider/sliderValueLabel.d.ts +7 -0
- package/dist/components/Slider/sliderValueLabel.d.ts.map +1 -0
- package/dist/components/Slider/sliderValueLabel.js +31 -0
- package/dist/components/TableChat/EmptyContainer.js +1 -1
- package/dist/components/TableChat/TableChatSidePanel.js +1 -1
- package/dist/components/TableChat/components/TableChatLeftSection/AddChatContainer/AddChatContainer.js +1 -1
- package/dist/components/TableChat/components/TableChatLeftSection/TableChatChannelHeader.js +1 -1
- package/dist/components/TableChat/components/TableChatRightSection/AvatarGroup/AvatarGroup.js +1 -1
- package/dist/components/TableChat/components/TableChatRightSection/ChatDefaultMessageType/ChatDefaultMessageType.js +1 -1
- package/dist/components/TableChat/components/TableChatRightSection/ChatDeleteMessageType/ChatDeletedMessageType.js +1 -1
- package/dist/components/TableChat/components/TableChatRightSection/ChatHeader/ChatHeader.js +1 -1
- package/dist/components/TableChat/components/TableChatRightSection/ChatInput/ChatInput.js +1 -1
- package/dist/components/TableChat/components/TableChatRightSection/ChatMessages/ChatMessage.js +1 -1
- package/dist/components/TableChat/components/TableChatRightSection/ChatNotificationSettings/ChatNotificationSettings.js +1 -1
- package/dist/components/TableChat/components/TableChatRightSection/TableChatRightSection.js +1 -1
- package/dist/components/TableChat/components/TextEditor/EditorToolbar.js +1 -1
- package/dist/components/TableChat/components/TextEditor/Mention.js +1 -1
- package/dist/components/TableChat/components/TextEditor/MentionList.js +1 -1
- package/dist/components/TableV36/CommentsPortal.js +1 -1
- package/dist/components/TableV36/index.js +1 -1
- package/dist/components/TableV36/tableFunctions.js +4 -4
- package/dist/components/TableV36/tableHeader.d.ts +1 -3
- package/dist/components/TableV36/tableHeader.d.ts.map +1 -1
- package/dist/components/TableV36/tableHeader.js +3 -2
- package/dist/components/TableV36/tablePagination.js +1 -1
- package/dist/components/TableV36/tableSettings.d.ts.map +1 -1
- package/dist/components/TableV36/tableSettings.js +8 -9
- package/dist/components/ThemingPanel/AccentColorSection.d.ts +11 -0
- package/dist/components/ThemingPanel/AccentColorSection.d.ts.map +1 -0
- package/dist/components/ThemingPanel/AccentColorSection.js +43 -0
- package/dist/components/ThemingPanel/EnhanceContrastSection.d.ts +11 -0
- package/dist/components/ThemingPanel/EnhanceContrastSection.d.ts.map +1 -0
- package/dist/components/ThemingPanel/EnhanceContrastSection.js +42 -0
- package/dist/components/ThemingPanel/InterfaceThemeSection.d.ts +13 -0
- package/dist/components/ThemingPanel/InterfaceThemeSection.d.ts.map +1 -0
- package/dist/components/ThemingPanel/InterfaceThemeSection.js +118 -0
- package/dist/components/ThemingPanel/StylesSection.d.ts +11 -0
- package/dist/components/ThemingPanel/StylesSection.d.ts.map +1 -0
- package/dist/components/ThemingPanel/StylesSection.js +43 -0
- package/dist/components/ThemingPanel/ThemesTab.d.ts +18 -0
- package/dist/components/ThemingPanel/ThemesTab.d.ts.map +1 -0
- package/dist/components/ThemingPanel/ThemesTab.js +33 -0
- package/dist/components/ThemingPanel/ThemingPanel.d.ts +10 -0
- package/dist/components/ThemingPanel/ThemingPanel.d.ts.map +1 -0
- package/dist/components/ThemingPanel/ThemingPanel.js +178 -0
- package/dist/components/ThemingPanel/ThemingPanel.types.d.ts +21 -0
- package/dist/components/ThemingPanel/ThemingPanel.types.d.ts.map +1 -0
- package/dist/components/ThemingPanel/index.d.ts +9 -0
- package/dist/components/ThemingPanel/index.d.ts.map +1 -0
- package/dist/components/ThemingPanel/themingPanel.constants.d.ts +23 -0
- package/dist/components/ThemingPanel/themingPanel.constants.d.ts.map +1 -0
- package/dist/components/ThemingPanel/themingPanel.constants.js +44 -0
- package/dist/components/common/MentionEditor/MentionList/index.js +1 -1
- package/dist/components/common/MentionEditor/index.js +1 -1
- package/dist/components/index.d.ts +3 -1
- package/dist/components/index.d.ts.map +1 -1
- package/dist/components/index.js +4 -0
- package/dist/components/shared/tableColumnSettings/tableSettingsV36.d.ts.map +1 -1
- package/dist/locales/de-DE.json.d.ts +30 -0
- package/dist/locales/de-DE.json.js +30 -0
- package/dist/locales/en-US.json.d.ts +30 -0
- package/dist/locales/en-US.json.js +30 -0
- package/dist/locales/es-ES.json.d.ts +30 -0
- package/dist/locales/es-ES.json.js +30 -0
- package/dist/mcp-component-registry.json +131 -87
- package/dist/node_modules/@impactsmartsuite/impact-icons/dist/index.js +1 -3
- package/dist/styles/style.css +1 -1
- package/dist/styles/tokens/tokens.generated.d.ts +18 -0
- package/dist/styles/tokens/tokens.generated.d.ts.map +1 -1
- package/dist/styles/tokens/tokens.generated.js +20 -2
- package/dist/tokens/ImpactUiThemeProvider.d.ts.map +1 -1
- package/dist/tokens/ImpactUiThemeProvider.js +11 -3
- package/dist/tokens/index.d.ts +1 -1
- package/dist/tokens/index.d.ts.map +1 -1
- package/dist/tokens/themeDom.d.ts +8 -2
- package/dist/tokens/themeDom.d.ts.map +1 -1
- package/dist/tokens/themeDom.js +67 -3
- package/package.json +1 -1
- package/dist/_virtual/ArticleOutlined.js +0 -4
- package/dist/_virtual/Check.js +0 -4
- package/dist/_virtual/NotificationsOffOutlined.js +0 -4
- package/dist/node_modules/@mui/icons-material/ArticleOutlined.js +0 -19
- package/dist/node_modules/@mui/icons-material/Check.js +0 -17
- 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:
|
|
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:
|
|
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:
|
|
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:
|
|
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
|
-
}):
|
|
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":"
|
|
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 {
|
|
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(
|
|
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.
|
|
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;
|
|
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
|
-
"
|
|
234
|
+
"button",
|
|
231
235
|
{
|
|
236
|
+
"aria-label": t("common.close"),
|
|
232
237
|
className: "close_icon",
|
|
233
|
-
|
|
234
|
-
tabIndex: 0,
|
|
238
|
+
type: "button",
|
|
235
239
|
onClick: onCloseTableSetting,
|
|
236
|
-
|
|
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"}
|