@ynput/ayon-frontend-shared 0.2.30 → 0.2.32
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/_virtual/index.cjs5.js +1 -1
- package/dist/_virtual/index.cjs6.js +1 -1
- package/dist/_virtual/index.es5.js +5 -2
- package/dist/_virtual/index.es5.js.map +1 -1
- package/dist/_virtual/index.es6.js +2 -5
- package/dist/_virtual/index.es6.js.map +1 -1
- package/dist/node_modules/rehype-prism-plus/dist/index.es.cjs.js +1 -1
- package/dist/node_modules/rehype-prism-plus/dist/index.es.es.js +1 -1
- package/dist/node_modules/remove-accents/index.cjs.js +1 -1
- package/dist/node_modules/remove-accents/index.es.js +1 -1
- package/dist/shared/src/api/generated/access.cjs.js.map +1 -1
- package/dist/shared/src/api/generated/access.es.js.map +1 -1
- package/dist/shared/src/api/generated/authentication.cjs.js +1 -1
- package/dist/shared/src/api/generated/authentication.cjs.js.map +1 -1
- package/dist/shared/src/api/generated/authentication.es.js +9 -6
- package/dist/shared/src/api/generated/authentication.es.js.map +1 -1
- package/dist/shared/src/api/generated/entityLists.cjs.js.map +1 -1
- package/dist/shared/src/api/generated/entityLists.es.js.map +1 -1
- package/dist/shared/src/api/generated/folders.cjs.js.map +1 -1
- package/dist/shared/src/api/generated/folders.es.js.map +1 -1
- package/dist/shared/src/api/generated/graphql.cjs.js.map +1 -1
- package/dist/shared/src/api/generated/graphql.es.js.map +1 -1
- package/dist/shared/src/api/generated/graphqlLinks.cjs.js.map +1 -1
- package/dist/shared/src/api/generated/graphqlLinks.es.js.map +1 -1
- package/dist/shared/src/api/generated/links.cjs.js +1 -1
- package/dist/shared/src/api/generated/links.cjs.js.map +1 -1
- package/dist/shared/src/api/generated/links.es.js +13 -5
- package/dist/shared/src/api/generated/links.es.js.map +1 -1
- package/dist/shared/src/api/generated/onboarding.cjs.js.map +1 -1
- package/dist/shared/src/api/generated/onboarding.es.js.map +1 -1
- package/dist/shared/src/api/generated/operations.cjs.js +1 -1
- package/dist/shared/src/api/generated/operations.cjs.js.map +1 -1
- package/dist/shared/src/api/generated/operations.es.js +16 -0
- package/dist/shared/src/api/generated/operations.es.js.map +1 -1
- package/dist/shared/src/api/generated/products.cjs.js +1 -1
- package/dist/shared/src/api/generated/products.cjs.js.map +1 -1
- package/dist/shared/src/api/generated/products.es.js +6 -3
- package/dist/shared/src/api/generated/products.es.js.map +1 -1
- package/dist/shared/src/api/generated/projects.cjs.js +1 -1
- package/dist/shared/src/api/generated/projects.cjs.js.map +1 -1
- package/dist/shared/src/api/generated/projects.es.js +19 -0
- package/dist/shared/src/api/generated/projects.es.js.map +1 -1
- package/dist/shared/src/api/generated/system.cjs.js.map +1 -1
- package/dist/shared/src/api/generated/system.es.js.map +1 -1
- package/dist/shared/src/api/generated/tasks.cjs.js.map +1 -1
- package/dist/shared/src/api/generated/tasks.es.js.map +1 -1
- package/dist/shared/src/api/generated/users.cjs.js.map +1 -1
- package/dist/shared/src/api/generated/users.es.js.map +1 -1
- package/dist/shared/src/api/generated/versions.cjs.js.map +1 -1
- package/dist/shared/src/api/generated/versions.es.js.map +1 -1
- package/dist/shared/src/api/generated/views.cjs.js.map +1 -1
- package/dist/shared/src/api/generated/views.es.js.map +1 -1
- package/dist/shared/src/api/queries/entityLists/listFolders.cjs.js +1 -1
- package/dist/shared/src/api/queries/entityLists/listFolders.cjs.js.map +1 -1
- package/dist/shared/src/api/queries/entityLists/listFolders.es.js +96 -59
- package/dist/shared/src/api/queries/entityLists/listFolders.es.js.map +1 -1
- package/dist/shared/src/components/AttributeEditor/AttributeEditor.cjs.js +1 -1
- package/dist/shared/src/components/AttributeEditor/AttributeEditor.cjs.js.map +1 -1
- package/dist/shared/src/components/AttributeEditor/AttributeEditor.es.js +15 -10
- package/dist/shared/src/components/AttributeEditor/AttributeEditor.es.js.map +1 -1
- package/dist/shared/src/components/ProjectTableSettings/RowHeightSettings.cjs.js +60 -0
- package/dist/shared/src/components/ProjectTableSettings/RowHeightSettings.cjs.js.map +1 -0
- package/dist/shared/src/components/ProjectTableSettings/RowHeightSettings.es.js +332 -0
- package/dist/shared/src/components/ProjectTableSettings/RowHeightSettings.es.js.map +1 -0
- package/dist/shared/src/components/SettingsPanel/SettingsPanel.cjs.js +4 -4
- package/dist/shared/src/components/SettingsPanel/SettingsPanel.cjs.js.map +1 -1
- package/dist/shared/src/components/SettingsPanel/SettingsPanel.es.js +37 -33
- package/dist/shared/src/components/SettingsPanel/SettingsPanel.es.js.map +1 -1
- package/dist/shared/src/components/Thumbnail/Thumbnail.styled.cjs.js +3 -5
- package/dist/shared/src/components/Thumbnail/Thumbnail.styled.cjs.js.map +1 -1
- package/dist/shared/src/components/Thumbnail/Thumbnail.styled.es.js +4 -6
- package/dist/shared/src/components/Thumbnail/Thumbnail.styled.es.js.map +1 -1
- package/dist/shared/src/components/ThumbnailSimple/ThumbnailSimple.cjs.js +1 -2
- package/dist/shared/src/components/ThumbnailSimple/ThumbnailSimple.cjs.js.map +1 -1
- package/dist/shared/src/components/ThumbnailSimple/ThumbnailSimple.es.js +0 -1
- package/dist/shared/src/components/ThumbnailSimple/ThumbnailSimple.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.es.js +555 -537
- package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.styled.cjs.js +0 -1
- package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.styled.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.styled.es.js +4 -5
- package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.styled.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/buildTreeTableColumns.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/buildTreeTableColumns.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/buildTreeTableColumns.es.js +92 -91
- package/dist/shared/src/containers/ProjectTreeTable/buildTreeTableColumns.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/ColumnSettingsContext.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/ColumnSettingsContext.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/ColumnSettingsProvider.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/ColumnSettingsProvider.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/ColumnSettingsProvider.es.js +126 -108
- package/dist/shared/src/containers/ProjectTreeTable/context/ColumnSettingsProvider.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useDynamicRowHeight.cjs.js +2 -0
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useDynamicRowHeight.cjs.js.map +1 -0
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useDynamicRowHeight.es.js +9 -0
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useDynamicRowHeight.es.js.map +1 -0
- package/dist/shared/src/containers/ProjectTreeTable/widgets/CellWidget.cjs.js +2 -2
- package/dist/shared/src/containers/ProjectTreeTable/widgets/CellWidget.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/CellWidget.es.js +49 -48
- package/dist/shared/src/containers/ProjectTreeTable/widgets/CellWidget.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/EntityNameWidget.cjs.js +38 -9
- package/dist/shared/src/containers/ProjectTreeTable/widgets/EntityNameWidget.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/EntityNameWidget.es.js +74 -39
- package/dist/shared/src/containers/ProjectTreeTable/widgets/EntityNameWidget.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/EnumCellValue.cjs.js +24 -15
- package/dist/shared/src/containers/ProjectTreeTable/widgets/EnumCellValue.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/EnumCellValue.es.js +71 -59
- package/dist/shared/src/containers/ProjectTreeTable/widgets/EnumCellValue.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/ThumbnailWidget.cjs.js +6 -6
- package/dist/shared/src/containers/ProjectTreeTable/widgets/ThumbnailWidget.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/ThumbnailWidget.es.js +12 -12
- package/dist/shared/src/containers/ProjectTreeTable/widgets/ThumbnailWidget.es.js.map +1 -1
- package/dist/shared/src/util/columnConfigConverter.cjs.js +1 -1
- package/dist/shared/src/util/columnConfigConverter.cjs.js.map +1 -1
- package/dist/shared/src/util/columnConfigConverter.es.js +35 -33
- package/dist/shared/src/util/columnConfigConverter.es.js.map +1 -1
- package/dist/types/api/generated/access.d.ts +6 -0
- package/dist/types/api/generated/authentication.d.ts +6 -0
- package/dist/types/api/generated/entityLists.d.ts +7 -7
- package/dist/types/api/generated/folders.d.ts +2 -2
- package/dist/types/api/generated/graphql.d.ts +3 -1
- package/dist/types/api/generated/graphqlLinks.d.ts +21 -15
- package/dist/types/api/generated/links.d.ts +4 -0
- package/dist/types/api/generated/onboarding.d.ts +3 -0
- package/dist/types/api/generated/operations.d.ts +22 -1
- package/dist/types/api/generated/products.d.ts +23 -0
- package/dist/types/api/generated/projects.d.ts +63 -0
- package/dist/types/api/generated/representations.d.ts +1 -0
- package/dist/types/api/generated/system.d.ts +9 -2
- package/dist/types/api/generated/tasks.d.ts +1 -0
- package/dist/types/api/generated/users.d.ts +1 -1
- package/dist/types/api/generated/versions.d.ts +1 -0
- package/dist/types/api/generated/views.d.ts +50 -9
- package/dist/types/api/queries/authentication/getAuthentication.d.ts +1 -0
- package/dist/types/api/queries/overview/updateOverview.d.ts +2 -0
- package/dist/types/api/queries/project/getProject.d.ts +4 -0
- package/dist/types/components/ProjectTableSettings/RowHeightSettings.d.ts +3 -0
- package/dist/types/containers/ProjectTreeTable/context/ColumnSettingsContext.d.ts +4 -0
- package/dist/types/containers/ProjectTreeTable/hooks/useDynamicRowHeight.d.ts +11 -0
- package/dist/types/containers/ProjectTreeTable/widgets/EntityNameWidget.d.ts +2 -1
- package/dist/types/containers/ProjectTreeTable/widgets/EnumCellValue.d.ts +2 -1
- package/package.json +3 -3
|
@@ -0,0 +1,332 @@
|
|
|
1
|
+
import { j as m } from "../../../../_virtual/jsx-runtime.es.js";
|
|
2
|
+
import { useState as l, useEffect as c, useCallback as s } from "react";
|
|
3
|
+
import e from "styled-components";
|
|
4
|
+
import "../../containers/ProjectTreeTable/ProjectTreeTable.es.js";
|
|
5
|
+
import "react-toastify";
|
|
6
|
+
import "lodash";
|
|
7
|
+
import "uuid";
|
|
8
|
+
import "../../util/pubsub.es.js";
|
|
9
|
+
import "../../containers/ProjectTreeTable/context/CellEditingContext.es.js";
|
|
10
|
+
import "@ynput/ayon-react-components";
|
|
11
|
+
import "@tanstack/react-table";
|
|
12
|
+
import "../../containers/ProjectTreeTable/widgets/CollapsedWidget.es.js";
|
|
13
|
+
import "../../containers/ProjectTreeTable/widgets/DateWidget.es.js";
|
|
14
|
+
import "../../containers/ProjectTreeTable/widgets/EnumWidget.es.js";
|
|
15
|
+
import "../../containers/ProjectTreeTable/widgets/TextWidget.es.js";
|
|
16
|
+
import "../../containers/ProjectTreeTable/widgets/BooleanWidget.es.js";
|
|
17
|
+
import "../../containers/ProjectTreeTable/widgets/CellWidget.es.js";
|
|
18
|
+
import "../../containers/ProjectTreeTable/widgets/EntityNameWidget.es.js";
|
|
19
|
+
import "../../containers/ProjectTreeTable/widgets/GroupHeaderWidget.es.js";
|
|
20
|
+
import "../../containers/ProjectTreeTable/widgets/ThumbnailWidget.es.js";
|
|
21
|
+
import "clsx";
|
|
22
|
+
import "../ThumbnailSimple/ThumbnailSimple.es.js";
|
|
23
|
+
import "../EmptyPlaceholder/EmptyPlaceholder.es.js";
|
|
24
|
+
import "../EmptyPlaceholder/EmptyPlaceholderFlex.styled.es.js";
|
|
25
|
+
import "../../api/base/client.es.js";
|
|
26
|
+
import "../../api/generated/graphql.es.js";
|
|
27
|
+
import "../../api/generated/graphqlLinks.es.js";
|
|
28
|
+
import "../../api/generated/access.es.js";
|
|
29
|
+
import "../../api/generated/actions.es.js";
|
|
30
|
+
import "../../api/generated/activityFeed.es.js";
|
|
31
|
+
import "../../api/generated/addons.es.js";
|
|
32
|
+
import "../../api/generated/anatomy.es.js";
|
|
33
|
+
import "../../api/generated/attributes.es.js";
|
|
34
|
+
import "../../api/generated/authentication.es.js";
|
|
35
|
+
import "../../api/generated/bundles.es.js";
|
|
36
|
+
import "../../api/generated/configuration.es.js";
|
|
37
|
+
import "../../api/generated/desktop.es.js";
|
|
38
|
+
import "../../api/generated/entityLists.es.js";
|
|
39
|
+
import "../../api/generated/events.es.js";
|
|
40
|
+
import "../../api/generated/files.es.js";
|
|
41
|
+
import "../../api/generated/folders.es.js";
|
|
42
|
+
import "../../api/generated/inbox.es.js";
|
|
43
|
+
import "../../api/generated/links.es.js";
|
|
44
|
+
import "../../api/generated/market.es.js";
|
|
45
|
+
import "../../api/generated/onboarding.es.js";
|
|
46
|
+
import "../../api/generated/operations.es.js";
|
|
47
|
+
import "../../api/generated/products.es.js";
|
|
48
|
+
import "../../api/generated/projectDashboard.es.js";
|
|
49
|
+
import "../../api/generated/projects.es.js";
|
|
50
|
+
import "../../api/generated/reviewables.es.js";
|
|
51
|
+
import "../../api/generated/services.es.js";
|
|
52
|
+
import "../../api/generated/system.es.js";
|
|
53
|
+
import "../../api/generated/tasks.es.js";
|
|
54
|
+
import "../../api/generated/teams.es.js";
|
|
55
|
+
import "../../api/generated/thumbnails.es.js";
|
|
56
|
+
import "../../api/generated/uRIs.es.js";
|
|
57
|
+
import "../../api/generated/users.es.js";
|
|
58
|
+
import "../../api/generated/versions.es.js";
|
|
59
|
+
import "../../api/generated/workfiles.es.js";
|
|
60
|
+
import "../../api/generated/ynputCloud.es.js";
|
|
61
|
+
import "../../api/generated/grouping.es.js";
|
|
62
|
+
import "../../api/generated/views.es.js";
|
|
63
|
+
import "../../api/queries/actions/getActions.es.js";
|
|
64
|
+
import "../../api/queries/activities/getActivities.es.js";
|
|
65
|
+
import "../../api/queries/activities/updateActivities.es.js";
|
|
66
|
+
import "../../api/queries/activities/updateReaction.es.js";
|
|
67
|
+
import "../../api/queries/activities/getMentions.es.js";
|
|
68
|
+
import "../../api/queries/addons/getAddons.es.js";
|
|
69
|
+
import "../../api/queries/addons/updateAddons.es.js";
|
|
70
|
+
import "../../api/queries/attributes/getAttributes.es.js";
|
|
71
|
+
import "../../api/queries/attributes/updateAttributes.es.js";
|
|
72
|
+
import "../../api/queries/authentication/getAuthentication.es.js";
|
|
73
|
+
import "../../api/queries/cloud/cloud.es.js";
|
|
74
|
+
import "../../api/queries/entities/getEntity.es.js";
|
|
75
|
+
import "../../api/queries/entities/getEntityPanel.es.js";
|
|
76
|
+
import "../../api/queries/entities/updateEntity.es.js";
|
|
77
|
+
import "../../api/queries/entityLists/getLists.es.js";
|
|
78
|
+
import "../../api/queries/entityLists/updateLists.es.js";
|
|
79
|
+
import "../../api/queries/entityLists/getListsAttributes.es.js";
|
|
80
|
+
import "../../api/queries/entityLists/updateListsAttributes.es.js";
|
|
81
|
+
import "../../api/queries/entityLists/listFolders.es.js";
|
|
82
|
+
import "../../api/queries/folders/getFolders.es.js";
|
|
83
|
+
import "../../api/queries/grouping/getGrouping.es.js";
|
|
84
|
+
import "../../api/queries/links/updateLinks.es.js";
|
|
85
|
+
import "../../api/queries/links/getLinks.es.js";
|
|
86
|
+
import "../../api/queries/links/getEntityLinks.es.js";
|
|
87
|
+
import "../../api/queries/overview/getOverview.es.js";
|
|
88
|
+
import "../../api/queries/overview/updateOverview.es.js";
|
|
89
|
+
import "../../api/queries/permissions/getPermissions.es.js";
|
|
90
|
+
import "../../api/queries/products/createProduct.es.js";
|
|
91
|
+
import "../../api/queries/project/getProject.es.js";
|
|
92
|
+
import "../../api/queries/project/updateProject.es.js";
|
|
93
|
+
import "../../api/queries/review/getReview.es.js";
|
|
94
|
+
import "../../api/queries/review/updateReview.es.js";
|
|
95
|
+
import "../../api/queries/share/share.es.js";
|
|
96
|
+
import "../../api/queries/system/getSystem.es.js";
|
|
97
|
+
import "../../api/queries/userDashboard/getUserDashboard.es.js";
|
|
98
|
+
import "../../api/queries/users/getUsers.es.js";
|
|
99
|
+
import "../../api/queries/users/updateUsers.es.js";
|
|
100
|
+
import "../../api/queries/versions/updateVersions.es.js";
|
|
101
|
+
import "../../api/queries/views/getViews.es.js";
|
|
102
|
+
import "../../api/queries/views/updateViews.es.js";
|
|
103
|
+
import "../../api/queries/watchers/getWatchers.es.js";
|
|
104
|
+
import "@dnd-kit/core";
|
|
105
|
+
import "@dnd-kit/sortable";
|
|
106
|
+
import "../ReviewablesList/ReviewablesList.styled.es.js";
|
|
107
|
+
import "../../containers/ContextMenu/ContextMenuContext.es.js";
|
|
108
|
+
/* empty css */
|
|
109
|
+
import "../ReviewablesList/ReviewablesUpload.styled.es.js";
|
|
110
|
+
import "axios";
|
|
111
|
+
import "../../context/RemoteModulesContext.es.js";
|
|
112
|
+
import "../../context/DetailsPanelContext.es.js";
|
|
113
|
+
import "../../context/ThumbnailUploaderContext.es.js";
|
|
114
|
+
import "../../context/SettingsPanelContext.es.js";
|
|
115
|
+
import "../../context/pip/PiPProvider.es.js";
|
|
116
|
+
import "react-dom";
|
|
117
|
+
import "../../context/pip/PiPWrapper.es.js";
|
|
118
|
+
import "../../context/AddonProjectContext.es.js";
|
|
119
|
+
import "../../context/AddonContext.es.js";
|
|
120
|
+
import "../../context/PowerpackContext.es.js";
|
|
121
|
+
import "../../context/MoveEntityContext.es.js";
|
|
122
|
+
import "../../context/MenuContext.es.js";
|
|
123
|
+
import "../ReviewableCard/ReviewableCard.es.js";
|
|
124
|
+
import "../ReviewableProgressCard/ReviewableProgressCard.styled.es.js";
|
|
125
|
+
import "../FileThumbnail/FileThumbnail.es.js";
|
|
126
|
+
import "../Thumbnail/Thumbnail.styled.es.js";
|
|
127
|
+
import "../Thumbnail/StackedThumbnails.es.js";
|
|
128
|
+
import "../../containers/Feed/context/FeedContext.es.js";
|
|
129
|
+
import "../../containers/Feed/components/Tooltips/UserTooltip/UserTooltip.styled.es.js";
|
|
130
|
+
import "../../containers/Feed/components/Tooltips/EntityTooltip/EntityTooltip.styled.es.js";
|
|
131
|
+
import "../../containers/Feed/components/FileUploadPreview/FileUploadPreview.styled.es.js";
|
|
132
|
+
import "../../containers/Feed/components/FileUploadPreview/Mimes/TextMime.es.js";
|
|
133
|
+
import "react-markdown";
|
|
134
|
+
import "remark-emoji";
|
|
135
|
+
import "remark-gfm";
|
|
136
|
+
import "remark-directive";
|
|
137
|
+
import "remark-directive-rehype";
|
|
138
|
+
import "../../containers/Feed/components/CommentInput/CommentInput.es.js";
|
|
139
|
+
import "../../containers/Feed/components/ReactionContainer/Reactions.styled.es.js";
|
|
140
|
+
import "../../containers/Feed/components/FilesGrid/FilesGrid.styled.es.js";
|
|
141
|
+
import "../../containers/Feed/components/FileUploadCard/FileUploadCard.styled.es.js";
|
|
142
|
+
import "../../containers/Feed/components/CommentInput/quillToMarkdown.es.js";
|
|
143
|
+
import "../../containers/Feed/components/ActivityComment/ActivityComment.styled.es.js";
|
|
144
|
+
import "../../containers/Feed/components/ActivityCheckbox/ActivityCheckbox.styled.es.js";
|
|
145
|
+
import "../../containers/Feed/components/ActivityReference/ActivityReference.styled.es.js";
|
|
146
|
+
import "react-router-dom";
|
|
147
|
+
import "../../containers/Feed/components/ActivityStatus/ActivityStatus.es.js";
|
|
148
|
+
import "../../containers/Feed/components/ActivityHeader/ActivityHeader.styled.es.js";
|
|
149
|
+
import "../../containers/Feed/components/ActivityDate.es.js";
|
|
150
|
+
import "../../containers/Feed/components/ActivityStatusChange/ActivityStatusChange.styled.es.js";
|
|
151
|
+
import "../../containers/Feed/components/ActivityAssigneeChange/ActivityAssigneeChange.styled.es.js";
|
|
152
|
+
import "../../containers/Feed/components/ActivityVersions/ActivityVersions.styled.es.js";
|
|
153
|
+
import "../../containers/Feed/components/ActivityGroup/ActivityGroup.styled.es.js";
|
|
154
|
+
import "../../containers/Feed/Feed.styled.es.js";
|
|
155
|
+
import "date-fns";
|
|
156
|
+
import "../../containers/DetailsPanel/DetailsPanel.styled.es.js";
|
|
157
|
+
import "../../../../_virtual/runtime.es.js";
|
|
158
|
+
import "../../../../_virtual/semver.es.js";
|
|
159
|
+
import "react-redux";
|
|
160
|
+
import "custom-protocol-check";
|
|
161
|
+
import "../../containers/DetailsPanel/FeedFilters/FeedFilters.styled.es.js";
|
|
162
|
+
import "../../containers/DetailsPanel/DetailsPanelHeader/DetailsPanelHeader.styled.es.js";
|
|
163
|
+
import "../PlayableIcon/PlayableIcon.es.js";
|
|
164
|
+
import "../../containers/DetailsPanel/DetailsPanelFiles/DetailsPanelFiles.es.js";
|
|
165
|
+
import "../../containers/DetailsPanel/DetailsPanelSlideOut/DetailsPanelSlideOut.styled.es.js";
|
|
166
|
+
import "../../containers/DetailsPanel/DetailsPanelFloating/DetailsPanelFloating.styled.es.js";
|
|
167
|
+
import "../../containers/Actions/Actions.styled.es.js";
|
|
168
|
+
import "../../containers/Actions/ActionsDropdown/ActionsDropdown.es.js";
|
|
169
|
+
import "../../containers/Actions/ActionIcon.es.js";
|
|
170
|
+
import "../../containers/Views/context/ViewsContext.es.js";
|
|
171
|
+
import "../../containers/Views/Views.styled.es.js";
|
|
172
|
+
import "../../containers/Views/ViewsMenuContainer/ViewsMenuContainer.es.js";
|
|
173
|
+
import "../../containers/Views/ViewsMenu/ViewsMenu.es.js";
|
|
174
|
+
import "../EntityPanelUploader/EntityPanelUploader.styled.es.js";
|
|
175
|
+
import "../SimpleFormDialog/SimpleFormDialog.es.js";
|
|
176
|
+
import "../EntityPath/EntityPath.styled.es.js";
|
|
177
|
+
import "../EntityPath/SegmentProvider.es.js";
|
|
178
|
+
import "../DetailsPanelAttributes/DetailsPanelAttributesEditor.es.js";
|
|
179
|
+
import "../DetailsPanelDetails/DetailsPanelDetails.es.js";
|
|
180
|
+
import "../DetailsPanelDetails/DetailsSection.es.js";
|
|
181
|
+
import "../DetailsPanelDetails/FieldLabel.es.js";
|
|
182
|
+
import "../Watchers/Watchers.es.js";
|
|
183
|
+
import "./ProjectTableSettings.es.js";
|
|
184
|
+
import "../Powerpack/PowerpackButton.es.js";
|
|
185
|
+
import "../Powerpack/PricingLink.es.js";
|
|
186
|
+
import "../Powerpack/PowerpackDialog.styled.es.js";
|
|
187
|
+
import "../Powerpack/CTAButton.es.js";
|
|
188
|
+
import "../SettingsPanel/SettingsPanel.es.js";
|
|
189
|
+
import "../SettingsPanel/SettingsPanelItemTemplate.es.js";
|
|
190
|
+
import "../AttributeEditor/components/MinMaxField.es.js";
|
|
191
|
+
import "../EnumEditor/EnumEditor.styled.es.js";
|
|
192
|
+
import "../SearchFilter/filterDates.es.js";
|
|
193
|
+
import "../Badge/Badge.es.js";
|
|
194
|
+
import "../VersionUploader/components/UploadVersionDialog.es.js";
|
|
195
|
+
import "../VersionUploader/context/VersionUploadContext.es.js";
|
|
196
|
+
import "../Feedback/FeedbackContext.es.js";
|
|
197
|
+
import "../Feedback/SupportBubble.es.js";
|
|
198
|
+
import "../Chips/Chips.es.js";
|
|
199
|
+
import "../LinksManager/LinksManager.styled.es.js";
|
|
200
|
+
import "../../containers/EntityPickerDialog/EntityPickerDialog.es.js";
|
|
201
|
+
import "../StyledLink/StyledLink.es.js";
|
|
202
|
+
import "../LinksManager/CellEditingDialog.es.js";
|
|
203
|
+
import "../../containers/ProjectTreeTable/context/DetailsPanelEntityContext.es.js";
|
|
204
|
+
import "../../containers/ProjectTreeTable/context/SelectedRowsContext.es.js";
|
|
205
|
+
import "../../containers/ProjectTreeTable/ProjectTreeTable.styled.es.js";
|
|
206
|
+
import "../../containers/ProjectTreeTable/components/SelectionCell.es.js";
|
|
207
|
+
import "../../containers/ProjectTreeTable/components/RowSelectionHeader.es.js";
|
|
208
|
+
import "../../containers/ProjectTreeTable/context/SelectionCellsContext.es.js";
|
|
209
|
+
import "../../containers/ProjectTreeTable/widgets/LoadMoreWidget.es.js";
|
|
210
|
+
import "../../containers/ProjectTreeTable/context/ProjectTableQueriesContext.es.js";
|
|
211
|
+
import "../../containers/ProjectTreeTable/context/ProjectTableContext.es.js";
|
|
212
|
+
import "../../containers/ProjectTreeTable/context/ClipboardContext.es.js";
|
|
213
|
+
import { useColumnSettingsContext as f } from "../../containers/ProjectTreeTable/context/ColumnSettingsContext.es.js";
|
|
214
|
+
import "../../containers/ProjectTreeTable/context/ProjectDataContext.es.js";
|
|
215
|
+
import "../../containers/ProjectTreeTable/components/GroupSettingsFallback.es.js";
|
|
216
|
+
import "../../containers/ProjectTreeTable/components/HeaderActionButton.es.js";
|
|
217
|
+
import "../../containers/ProjectTreeTable/components/ColumnHeaderMenu.es.js";
|
|
218
|
+
const v = (o, t) => {
|
|
219
|
+
const [i, r] = l(o);
|
|
220
|
+
return c(() => {
|
|
221
|
+
const a = setTimeout(() => {
|
|
222
|
+
r(o);
|
|
223
|
+
}, t);
|
|
224
|
+
return () => {
|
|
225
|
+
clearTimeout(a);
|
|
226
|
+
};
|
|
227
|
+
}, [o, t]), i;
|
|
228
|
+
}, y = e.div`
|
|
229
|
+
padding: 16px;
|
|
230
|
+
display: flex;
|
|
231
|
+
flex-direction: column;
|
|
232
|
+
gap: 12px;
|
|
233
|
+
`, k = e.label`
|
|
234
|
+
font-weight: 500;
|
|
235
|
+
color: var(--md-sys-color-on-surface);
|
|
236
|
+
font-size: 14px;
|
|
237
|
+
`, R = e.div`
|
|
238
|
+
display: flex;
|
|
239
|
+
align-items: center;
|
|
240
|
+
gap: 12px;
|
|
241
|
+
`, S = e.input`
|
|
242
|
+
flex: 1;
|
|
243
|
+
height: 4px;
|
|
244
|
+
border-radius: 2px;
|
|
245
|
+
background: var(--md-sys-color-outline-variant);
|
|
246
|
+
outline: none;
|
|
247
|
+
-webkit-appearance: none;
|
|
248
|
+
appearance: none;
|
|
249
|
+
|
|
250
|
+
&::-webkit-slider-thumb {
|
|
251
|
+
-webkit-appearance: none;
|
|
252
|
+
appearance: none;
|
|
253
|
+
width: 16px;
|
|
254
|
+
height: 16px;
|
|
255
|
+
border-radius: 50%;
|
|
256
|
+
background: var(--md-sys-color-primary);
|
|
257
|
+
cursor: grab;
|
|
258
|
+
box-shadow: var(--box-fill);
|
|
259
|
+
}
|
|
260
|
+
|
|
261
|
+
&:active::-webkit-slider-thumb {
|
|
262
|
+
cursor: grabbing;
|
|
263
|
+
}
|
|
264
|
+
|
|
265
|
+
&::-moz-range-thumb {
|
|
266
|
+
width: 16px;
|
|
267
|
+
height: 16px;
|
|
268
|
+
border-radius: 50%;
|
|
269
|
+
background: var(--md-sys-color-primary);
|
|
270
|
+
cursor: grabbing;
|
|
271
|
+
border: 2px solid var(--md-sys-color-surface);
|
|
272
|
+
box-shadow: 0 1px 3px rgba(0, 0, 0, 0.2);
|
|
273
|
+
}
|
|
274
|
+
|
|
275
|
+
&:hover::-webkit-slider-thumb {
|
|
276
|
+
background: var(--md-sys-color-primary-hover);
|
|
277
|
+
}
|
|
278
|
+
|
|
279
|
+
&:hover::-moz-range-thumb {
|
|
280
|
+
background: var(--md-sys-color-primary-container);
|
|
281
|
+
}
|
|
282
|
+
`, H = e.span`
|
|
283
|
+
color: var(--md-sys-color-on-surface-variant);
|
|
284
|
+
min-width: 40px;
|
|
285
|
+
text-align: right;
|
|
286
|
+
`, Di = () => {
|
|
287
|
+
const {
|
|
288
|
+
rowHeight: o = 34,
|
|
289
|
+
updateRowHeight: t,
|
|
290
|
+
updateRowHeightWithPersistence: i
|
|
291
|
+
} = f(), [r, a] = l(o), [p, d] = l(!1), u = v(r, 25);
|
|
292
|
+
c(() => {
|
|
293
|
+
p || a(o);
|
|
294
|
+
}, [o, p]), c(() => {
|
|
295
|
+
p && t(u);
|
|
296
|
+
}, [u, t, p]);
|
|
297
|
+
const h = s((w) => {
|
|
298
|
+
const n = parseInt(w.target.value, 10);
|
|
299
|
+
a(n), p || (t(n), i(n));
|
|
300
|
+
}, [p, t, i]), b = s(() => {
|
|
301
|
+
d(!0);
|
|
302
|
+
}, []), x = s(() => {
|
|
303
|
+
d(!1), i(r);
|
|
304
|
+
}, [r, i]), g = (r - 24) / 176 * 100;
|
|
305
|
+
return /* @__PURE__ */ m.jsxs(y, { children: [
|
|
306
|
+
/* @__PURE__ */ m.jsx(k, { htmlFor: "row-height-slider", children: "Row height" }),
|
|
307
|
+
/* @__PURE__ */ m.jsxs(R, { children: [
|
|
308
|
+
/* @__PURE__ */ m.jsx(
|
|
309
|
+
S,
|
|
310
|
+
{
|
|
311
|
+
id: "row-height-slider",
|
|
312
|
+
type: "range",
|
|
313
|
+
min: 24,
|
|
314
|
+
max: 200,
|
|
315
|
+
step: 2,
|
|
316
|
+
value: r,
|
|
317
|
+
onChange: h,
|
|
318
|
+
onMouseDown: b,
|
|
319
|
+
onMouseUp: x,
|
|
320
|
+
style: {
|
|
321
|
+
background: `linear-gradient(to right, var(--md-sys-color-primary) 0%, var(--md-sys-color-primary) ${g}%, var(--md-sys-color-outline-variant) ${g}%, var(--md-sys-color-outline-variant) 100%)`
|
|
322
|
+
}
|
|
323
|
+
}
|
|
324
|
+
),
|
|
325
|
+
/* @__PURE__ */ m.jsx(H, { children: r })
|
|
326
|
+
] })
|
|
327
|
+
] });
|
|
328
|
+
};
|
|
329
|
+
export {
|
|
330
|
+
Di as default
|
|
331
|
+
};
|
|
332
|
+
//# sourceMappingURL=RowHeightSettings.es.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RowHeightSettings.es.js","sources":["../../../../../src/components/ProjectTableSettings/RowHeightSettings.tsx"],"sourcesContent":["import { FC, useState, useCallback, useEffect } from 'react'\nimport styled from 'styled-components'\nimport { useColumnSettingsContext } from '@shared/containers/ProjectTreeTable'\n\n// Debounce hook for smooth slider performance\nconst useDebounce = (value: number, delay: number) => {\n const [debouncedValue, setDebouncedValue] = useState(value)\n\n useEffect(() => {\n const handler = setTimeout(() => {\n setDebouncedValue(value)\n }, delay)\n\n return () => {\n clearTimeout(handler)\n }\n }, [value, delay])\n\n return debouncedValue\n}\n\nconst Container = styled.div`\n padding: 16px;\n display: flex;\n flex-direction: column;\n gap: 12px;\n`\n\nconst Label = styled.label`\n font-weight: 500;\n color: var(--md-sys-color-on-surface);\n font-size: 14px;\n`\n\nconst SliderContainer = styled.div`\n display: flex;\n align-items: center;\n gap: 12px;\n`\n\nconst Slider = styled.input`\n flex: 1;\n height: 4px;\n border-radius: 2px;\n background: var(--md-sys-color-outline-variant);\n outline: none;\n -webkit-appearance: none;\n appearance: none;\n\n &::-webkit-slider-thumb {\n -webkit-appearance: none;\n appearance: none;\n width: 16px;\n height: 16px;\n border-radius: 50%;\n background: var(--md-sys-color-primary);\n cursor: grab;\n box-shadow: var(--box-fill);\n }\n\n &:active::-webkit-slider-thumb {\n cursor: grabbing;\n }\n\n &::-moz-range-thumb {\n width: 16px;\n height: 16px;\n border-radius: 50%;\n background: var(--md-sys-color-primary);\n cursor: grabbing;\n border: 2px solid var(--md-sys-color-surface);\n box-shadow: 0 1px 3px rgba(0, 0, 0, 0.2);\n }\n\n &:hover::-webkit-slider-thumb {\n background: var(--md-sys-color-primary-hover);\n }\n\n &:hover::-moz-range-thumb {\n background: var(--md-sys-color-primary-container);\n }\n`\n\nconst ValueDisplay = styled.span`\n color: var(--md-sys-color-on-surface-variant);\n min-width: 40px;\n text-align: right;\n`\n\nconst RowHeightSettings: FC = () => {\n const {\n rowHeight: contextRowHeight = 34,\n updateRowHeight,\n updateRowHeightWithPersistence,\n } = useColumnSettingsContext()\n\n // Local state for immediate UI updates during slider drag\n const [localRowHeight, setLocalRowHeight] = useState(contextRowHeight)\n const [isDragging, setIsDragging] = useState(false)\n\n // Debounced value for smooth table updates during drag\n const debouncedRowHeight = useDebounce(localRowHeight, 25)\n\n // Sync with context row height when it changes externally (but not while dragging)\n useEffect(() => {\n if (!isDragging) {\n setLocalRowHeight(contextRowHeight)\n }\n }, [contextRowHeight, isDragging])\n\n // Update table rows during slider drag (no API persistence)\n useEffect(() => {\n if (isDragging) {\n updateRowHeight(debouncedRowHeight)\n }\n }, [debouncedRowHeight, updateRowHeight, isDragging])\n\n const handleSliderChange = useCallback((e: React.ChangeEvent<HTMLInputElement>) => {\n const newValue = parseInt(e.target.value, 10)\n setLocalRowHeight(newValue)\n\n // If not dragging (e.g., arrow keys), update immediately\n if (!isDragging) {\n updateRowHeight(newValue)\n updateRowHeightWithPersistence(newValue)\n }\n }, [isDragging, updateRowHeight, updateRowHeightWithPersistence])\n\n const handleSliderStart = useCallback(() => {\n setIsDragging(true)\n }, [])\n\n const handleSliderRelease = useCallback(() => {\n setIsDragging(false)\n // Persist to API only when user finishes adjusting\n updateRowHeightWithPersistence(localRowHeight)\n }, [localRowHeight, updateRowHeightWithPersistence])\n\n // Calculate the percentage for the gradient fill\n const fillPercentage = ((localRowHeight - 24) / (200 - 24)) * 100\n\n return (\n <Container>\n <Label htmlFor=\"row-height-slider\">Row height</Label>\n <SliderContainer>\n <Slider\n id=\"row-height-slider\"\n type=\"range\"\n min={24}\n max={200}\n step={2}\n value={localRowHeight}\n onChange={handleSliderChange}\n onMouseDown={handleSliderStart}\n onMouseUp={handleSliderRelease}\n style={{\n background: `linear-gradient(to right, var(--md-sys-color-primary) 0%, var(--md-sys-color-primary) ${fillPercentage}%, var(--md-sys-color-outline-variant) ${fillPercentage}%, var(--md-sys-color-outline-variant) 100%)`,\n }}\n />\n <ValueDisplay>{localRowHeight}</ValueDisplay>\n </SliderContainer>\n </Container>\n )\n}\n\nexport default RowHeightSettings\n"],"names":["useDebounce","value","delay","debouncedValue","setDebouncedValue","useState","useEffect","handler","Container","styled","Label","SliderContainer","Slider","ValueDisplay","RowHeightSettings","contextRowHeight","updateRowHeight","updateRowHeightWithPersistence","useColumnSettingsContext","localRowHeight","setLocalRowHeight","isDragging","setIsDragging","debouncedRowHeight","handleSliderChange","useCallback","e","newValue","handleSliderStart","handleSliderRelease","fillPercentage","jsx"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAKA,MAAMA,IAAc,CAACC,GAAeC,MAAkB;AACpD,QAAM,CAACC,GAAgBC,CAAiB,IAAIC,EAASJ,CAAK;AAE1D,SAAAK,EAAU,MAAM;AACR,UAAAC,IAAU,WAAW,MAAM;AAC/B,MAAAH,EAAkBH,CAAK;AAAA,OACtBC,CAAK;AAER,WAAO,MAAM;AACX,mBAAaK,CAAO;AAAA,IACtB;AAAA,EAAA,GACC,CAACN,GAAOC,CAAK,CAAC,GAEVC;AACT,GAEMK,IAAYC,EAAO;AAAA;AAAA;AAAA;AAAA;AAAA,GAOnBC,IAAQD,EAAO;AAAA;AAAA;AAAA;AAAA,GAMfE,IAAkBF,EAAO;AAAA;AAAA;AAAA;AAAA,GAMzBG,IAASH,EAAO;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,GA2ChBI,IAAeJ,EAAO;AAAA;AAAA;AAAA;AAAA,GAMtBK,KAAwB,MAAM;AAC5B,QAAA;AAAA,IACJ,WAAWC,IAAmB;AAAA,IAC9B,iBAAAC;AAAA,IACA,gCAAAC;AAAA,MACEC,EAAyB,GAGvB,CAACC,GAAgBC,CAAiB,IAAIf,EAASU,CAAgB,GAC/D,CAACM,GAAYC,CAAa,IAAIjB,EAAS,EAAK,GAG5CkB,IAAqBvB,EAAYmB,GAAgB,EAAE;AAGzD,EAAAb,EAAU,MAAM;AACd,IAAKe,KACHD,EAAkBL,CAAgB;AAAA,EACpC,GACC,CAACA,GAAkBM,CAAU,CAAC,GAGjCf,EAAU,MAAM;AACd,IAAIe,KACFL,EAAgBO,CAAkB;AAAA,EAEnC,GAAA,CAACA,GAAoBP,GAAiBK,CAAU,CAAC;AAE9C,QAAAG,IAAqBC,EAAY,CAACC,MAA2C;AACjF,UAAMC,IAAW,SAASD,EAAE,OAAO,OAAO,EAAE;AAC5C,IAAAN,EAAkBO,CAAQ,GAGrBN,MACHL,EAAgBW,CAAQ,GACxBV,EAA+BU,CAAQ;AAAA,EAExC,GAAA,CAACN,GAAYL,GAAiBC,CAA8B,CAAC,GAE1DW,IAAoBH,EAAY,MAAM;AAC1C,IAAAH,EAAc,EAAI;AAAA,EACpB,GAAG,EAAE,GAECO,IAAsBJ,EAAY,MAAM;AAC5C,IAAAH,EAAc,EAAK,GAEnBL,EAA+BE,CAAc;AAAA,EAAA,GAC5C,CAACA,GAAgBF,CAA8B,CAAC,GAG7Ca,KAAmBX,IAAiB,MAAO,MAAa;AAE9D,gCACGX,GACC,EAAA,UAAA;AAAA,IAACuB,gBAAAA,EAAA,IAAArB,GAAA,EAAM,SAAQ,qBAAoB,UAAU,cAAA;AAAA,2BAC5CC,GACC,EAAA,UAAA;AAAA,MAAAoB,gBAAAA,EAAA;AAAA,QAACnB;AAAA,QAAA;AAAA,UACC,IAAG;AAAA,UACH,MAAK;AAAA,UACL,KAAK;AAAA,UACL,KAAK;AAAA,UACL,MAAM;AAAA,UACN,OAAOO;AAAA,UACP,UAAUK;AAAA,UACV,aAAaI;AAAA,UACb,WAAWC;AAAA,UACX,OAAO;AAAA,YACL,YAAY,yFAAyFC,CAAc,0CAA0CA,CAAc;AAAA,UAAA;AAAA,QAC7K;AAAA,MACF;AAAA,MACAC,gBAAAA,EAAAA,IAAClB,KAAc,UAAeM,EAAA,CAAA;AAAA,IAAA,EAChC,CAAA;AAAA,EAAA,GACF;AAEJ;"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("../../../../_virtual/jsx-runtime.cjs.js"),s=require("@ynput/ayon-react-components"),r=require("styled-components");require("../../context/RemoteModulesContext.cjs.js");require("../../context/DetailsPanelContext.cjs.js");require("../../context/ThumbnailUploaderContext.cjs.js");const g=require("../../context/SettingsPanelContext.cjs.js");require("../../context/pip/PiPProvider.cjs.js");require("react-dom");require("../../context/pip/PiPWrapper.cjs.js");require("../../context/AddonProjectContext.cjs.js");require("../../context/AddonContext.cjs.js");require("../../context/PowerpackContext.cjs.js");require("../../context/MoveEntityContext.cjs.js");require("../../context/MenuContext.cjs.js");const v=r.div`
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("../../../../_virtual/jsx-runtime.cjs.js"),s=require("@ynput/ayon-react-components"),r=require("styled-components");require("../../context/RemoteModulesContext.cjs.js");require("../../context/DetailsPanelContext.cjs.js");require("../../context/ThumbnailUploaderContext.cjs.js");const g=require("../../context/SettingsPanelContext.cjs.js");require("../../context/pip/PiPProvider.cjs.js");require("react-dom");require("../../context/pip/PiPWrapper.cjs.js");require("../../context/AddonProjectContext.cjs.js");require("../../context/AddonContext.cjs.js");require("../../context/PowerpackContext.cjs.js");require("../../context/MoveEntityContext.cjs.js");require("../../context/MenuContext.cjs.js");const h=require("../ProjectTableSettings/RowHeightSettings.cjs.js"),v=r.div`
|
|
2
2
|
height: 100%;
|
|
3
3
|
overflow: hidden;
|
|
4
4
|
background-color: var(--md-sys-color-surface-container-low);
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
z-index: 10;
|
|
7
7
|
display: flex;
|
|
8
8
|
flex-direction: column;
|
|
9
|
-
`,
|
|
9
|
+
`,f=r.div`
|
|
10
10
|
display: flex;
|
|
11
11
|
align-items: center;
|
|
12
12
|
gap: var(--base-gap-small);
|
|
@@ -20,7 +20,7 @@
|
|
|
20
20
|
}
|
|
21
21
|
`,l=r(s.Button)`
|
|
22
22
|
padding: 4px !important;
|
|
23
|
-
`,
|
|
23
|
+
`,R=r.h3`
|
|
24
24
|
margin: 0;
|
|
25
25
|
flex: 1;
|
|
26
26
|
`,q=r.div`
|
|
@@ -44,5 +44,5 @@
|
|
|
44
44
|
.arrow {
|
|
45
45
|
color: var(--md-sys-color-outline);
|
|
46
46
|
}
|
|
47
|
-
`,
|
|
47
|
+
`,S=({settings:o})=>{const{isPanelOpen:c,selectedSetting:i,closePanel:d,backToMainMenu:u,selectSetting:p}=g.useSettingsPanel(),m=()=>{if(!i)return"Settings";const n=o.find(t=>t.id===i);return(n==null?void 0:n.title)||"Settings"},j=()=>{if(!i)return e.jsxRuntimeExports.jsx(e.jsxRuntimeExports.Fragment,{children:o.map(t=>{var a;return e.jsxRuntimeExports.jsxs(x,{onClick:()=>p(t.id),variant:"text",children:[t.icon&&e.jsxRuntimeExports.jsx(s.Icon,{icon:t.icon}),e.jsxRuntimeExports.jsx("span",{className:"title",children:t.title}),!!((a=t.preview)!=null&&a.toString())&&e.jsxRuntimeExports.jsx("span",{className:"preview",children:t.preview}),e.jsxRuntimeExports.jsx(s.Icon,{icon:"chevron_right",className:"arrow"})]},t.id)})});const n=o.find(t=>t.id===i);return n==null?void 0:n.component};return e.jsxRuntimeExports.jsxs(v,{open:c,children:[e.jsxRuntimeExports.jsxs(f,{children:[i&&o.length>1&&e.jsxRuntimeExports.jsx(l,{variant:"text",icon:"arrow_back",onClick:u}),e.jsxRuntimeExports.jsx(R,{children:m()}),e.jsxRuntimeExports.jsx(l,{variant:"text",icon:"close",onClick:d})]}),e.jsxRuntimeExports.jsxs(q,{children:[j(),e.jsxRuntimeExports.jsx(h,{})]})]})};exports.SettingOption=x;exports.SettingsPanel=S;
|
|
48
48
|
//# sourceMappingURL=SettingsPanel.cjs.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SettingsPanel.cjs.js","sources":["../../../../../src/components/SettingsPanel/SettingsPanel.tsx"],"sourcesContent":["import { Button, Icon } from '@ynput/ayon-react-components'\nimport { FC, ReactNode } from 'react'\nimport styled from 'styled-components'\nimport { SettingField, useSettingsPanel } from '@shared/context'\n\n// Side panel styled components\nconst SidePanel = styled.div<{ open: boolean }>`\n height: 100%;\n overflow: hidden;\n background-color: var(--md-sys-color-surface-container-low);\n border-radius: 4px;\n z-index: 10;\n display: flex;\n flex-direction: column;\n`\n\nconst PanelHeader = styled.div`\n display: flex;\n align-items: center;\n gap: var(--base-gap-small);\n height: 34px;\n padding: 0px 4px;\n border-bottom: 1px solid var(--md-sys-color-outline-variant);\n\n h3 {\n margin-left: 4px;\n padding: 0;\n }\n`\n\nconst ToolButton = styled(Button)`\n padding: 4px !important;\n`\n\nconst PanelTitle = styled.h3`\n margin: 0;\n flex: 1;\n`\n\nconst PanelContent = styled.div`\n padding: 8px;\n flex: 1;\n overflow-y: auto;\n`\n\nexport const SettingOption = styled(Button)`\n width: 100%;\n justify-content: flex-start;\n margin-bottom: 8px;\n text-align: left;\n display: flex;\n gap: var(--base-gap-small);\n padding-right: var(--padding-s);\n\n .title {\n flex: 1;\n }\n\n .preview,\n .arrow {\n color: var(--md-sys-color-outline);\n }\n`\n\nexport interface SettingConfig {\n id: SettingField\n title: string\n component: ReactNode\n icon?: string\n preview?: string | number\n}\n\nexport interface SettingsPanelProps {\n settings: SettingConfig[]\n}\n\nexport const SettingsPanel: FC<SettingsPanelProps> = ({ settings }) => {\n const { isPanelOpen, selectedSetting, closePanel, backToMainMenu, selectSetting } =\n useSettingsPanel()\n\n const getPanelTitle = () => {\n if (!selectedSetting) return 'Settings'\n const setting = settings.find((s) => s.id === selectedSetting)\n return setting?.title || 'Settings'\n }\n\n const renderSettingContent = () => {\n if (!selectedSetting) {\n // Render main menu\n return (\n <>\n {settings.map((setting) => (\n <SettingOption\n key={setting.id}\n onClick={() => selectSetting(setting.id)}\n variant=\"text\"\n >\n {setting.icon && <Icon icon={setting.icon} />}\n <span className=\"title\">{setting.title}</span>\n {!!setting.preview?.toString() && <span className=\"preview\">{setting.preview}</span>}\n <Icon icon=\"chevron_right\" className=\"arrow\" />\n </SettingOption>\n ))}\n </>\n )\n }\n\n const setting = settings.find((s) => s.id === selectedSetting)\n return setting?.component\n }\n\n return (\n <SidePanel open={isPanelOpen}>\n <PanelHeader>\n {selectedSetting && settings.length > 1 && (\n <ToolButton variant=\"text\" icon=\"arrow_back\" onClick={backToMainMenu} />\n )}\n <PanelTitle>{getPanelTitle()}</PanelTitle>\n <ToolButton variant=\"text\" icon=\"close\" onClick={closePanel} />\n </PanelHeader>\n <PanelContent
|
|
1
|
+
{"version":3,"file":"SettingsPanel.cjs.js","sources":["../../../../../src/components/SettingsPanel/SettingsPanel.tsx"],"sourcesContent":["import { Button, Icon } from '@ynput/ayon-react-components'\nimport { FC, ReactNode } from 'react'\nimport styled from 'styled-components'\nimport { SettingField, useSettingsPanel } from '@shared/context'\nimport RowHeightSettings from '@shared/components/ProjectTableSettings/RowHeightSettings'\n\n// Side panel styled components\nconst SidePanel = styled.div<{ open: boolean }>`\n height: 100%;\n overflow: hidden;\n background-color: var(--md-sys-color-surface-container-low);\n border-radius: 4px;\n z-index: 10;\n display: flex;\n flex-direction: column;\n`\n\nconst PanelHeader = styled.div`\n display: flex;\n align-items: center;\n gap: var(--base-gap-small);\n height: 34px;\n padding: 0px 4px;\n border-bottom: 1px solid var(--md-sys-color-outline-variant);\n\n h3 {\n margin-left: 4px;\n padding: 0;\n }\n`\n\nconst ToolButton = styled(Button)`\n padding: 4px !important;\n`\n\nconst PanelTitle = styled.h3`\n margin: 0;\n flex: 1;\n`\n\nconst PanelContent = styled.div`\n padding: 8px;\n flex: 1;\n overflow-y: auto;\n`\n\nexport const SettingOption = styled(Button)`\n width: 100%;\n justify-content: flex-start;\n margin-bottom: 8px;\n text-align: left;\n display: flex;\n gap: var(--base-gap-small);\n padding-right: var(--padding-s);\n\n .title {\n flex: 1;\n }\n\n .preview,\n .arrow {\n color: var(--md-sys-color-outline);\n }\n`\n\nexport interface SettingConfig {\n id: SettingField\n title: string\n component: ReactNode\n icon?: string\n preview?: string | number\n}\n\nexport interface SettingsPanelProps {\n settings: SettingConfig[]\n}\n\nexport const SettingsPanel: FC<SettingsPanelProps> = ({ settings }) => {\n const { isPanelOpen, selectedSetting, closePanel, backToMainMenu, selectSetting } =\n useSettingsPanel()\n\n const getPanelTitle = () => {\n if (!selectedSetting) return 'Settings'\n const setting = settings.find((s) => s.id === selectedSetting)\n return setting?.title || 'Settings'\n }\n\n const renderSettingContent = () => {\n if (!selectedSetting) {\n // Render main menu\n return (\n <>\n {settings.map((setting) => (\n <SettingOption\n key={setting.id}\n onClick={() => selectSetting(setting.id)}\n variant=\"text\"\n >\n {setting.icon && <Icon icon={setting.icon} />}\n <span className=\"title\">{setting.title}</span>\n {!!setting.preview?.toString() && <span className=\"preview\">{setting.preview}</span>}\n <Icon icon=\"chevron_right\" className=\"arrow\" />\n </SettingOption>\n ))}\n </>\n )\n }\n\n const setting = settings.find((s) => s.id === selectedSetting)\n return setting?.component\n }\n\n return (\n <SidePanel open={isPanelOpen}>\n <PanelHeader>\n {selectedSetting && settings.length > 1 && (\n <ToolButton variant=\"text\" icon=\"arrow_back\" onClick={backToMainMenu} />\n )}\n <PanelTitle>{getPanelTitle()}</PanelTitle>\n <ToolButton variant=\"text\" icon=\"close\" onClick={closePanel} />\n </PanelHeader>\n <PanelContent>\n {renderSettingContent()}\n <RowHeightSettings />\n </PanelContent>\n </SidePanel>\n )\n}\n"],"names":["SidePanel","styled","PanelHeader","ToolButton","Button","PanelTitle","PanelContent","SettingOption","SettingsPanel","settings","isPanelOpen","selectedSetting","closePanel","backToMainMenu","selectSetting","useSettingsPanel","getPanelTitle","setting","s","renderSettingContent","jsx","Fragment","jsxs","Icon","RowHeightSettings"],"mappings":"21BAOMA,EAAYC,EAAO;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAUnBC,EAAcD,EAAO;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAcrBE,EAAaF,EAAOG,QAAM;AAAA;AAAA,EAI1BC,EAAaJ,EAAO;AAAA;AAAA;AAAA,EAKpBK,EAAeL,EAAO;AAAA;AAAA;AAAA;AAAA,EAMfM,EAAgBN,EAAOG,QAAM;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EA+B7BI,EAAwC,CAAC,CAAE,SAAAC,KAAe,CACrE,KAAM,CAAE,YAAAC,EAAa,gBAAAC,EAAiB,WAAAC,EAAY,eAAAC,EAAgB,cAAAC,GAChEC,mBAAiB,EAEbC,EAAgB,IAAM,CACtB,GAAA,CAACL,EAAwB,MAAA,WAC7B,MAAMM,EAAUR,EAAS,KAAMS,GAAMA,EAAE,KAAOP,CAAe,EAC7D,OAAOM,GAAA,YAAAA,EAAS,QAAS,UAC3B,EAEME,EAAuB,IAAM,CACjC,GAAI,CAACR,EAEH,OAEKS,EAAAA,kBAAAA,IAAAC,EAAAA,kBAAAA,SAAA,CAAA,SAAAZ,EAAS,IAAKQ,UACbK,OAAAA,EAAA,kBAAA,KAACf,EAAA,CAEC,QAAS,IAAMO,EAAcG,EAAQ,EAAE,EACvC,QAAQ,OAEP,SAAA,CAAAA,EAAQ,MAAQG,wBAACG,EAAAA,KAAK,CAAA,KAAMN,EAAQ,KAAM,0BAC1C,OAAK,CAAA,UAAU,QAAS,SAAAA,EAAQ,MAAM,EACtC,CAAC,GAACA,EAAAA,EAAQ,UAARA,MAAAA,EAAiB,aAAeG,EAAAA,kBAAAA,IAAA,OAAA,CAAK,UAAU,UAAW,SAAAH,EAAQ,OAAQ,CAAA,EAC5EG,EAAA,kBAAA,IAAAG,EAAA,KAAA,CAAK,KAAK,gBAAgB,UAAU,OAAQ,CAAA,CAAA,CAAA,EAPxCN,EAAQ,EAShB,EAAA,EACH,EAIJ,MAAMA,EAAUR,EAAS,KAAMS,GAAMA,EAAE,KAAOP,CAAe,EAC7D,OAAOM,GAAA,YAAAA,EAAS,SAClB,EAGE,OAAAK,EAAA,kBAAA,KAACtB,EAAU,CAAA,KAAMU,EACf,SAAA,CAAAY,yBAACpB,EACE,CAAA,SAAA,CAAmBS,GAAAF,EAAS,OAAS,GACnCW,EAAA,kBAAA,IAAAjB,EAAA,CAAW,QAAQ,OAAO,KAAK,aAAa,QAASU,CAAgB,CAAA,EAExEO,EAAAA,kBAAAA,IAACf,EAAY,CAAA,SAAAW,EAAgB,CAAA,CAAA,0BAC5Bb,EAAW,CAAA,QAAQ,OAAO,KAAK,QAAQ,QAASS,CAAY,CAAA,CAAA,EAC/D,2BACCN,EACE,CAAA,SAAA,CAAqBa,EAAA,0BACrBK,EAAkB,CAAA,CAAA,CAAA,CACrB,CAAA,CAAA,EACF,CAEJ"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { j as
|
|
1
|
+
import { j as t } from "../../../../_virtual/jsx-runtime.es.js";
|
|
2
2
|
import { Button as c, Icon as l } from "@ynput/ayon-react-components";
|
|
3
|
-
import
|
|
3
|
+
import i from "styled-components";
|
|
4
4
|
import "../../context/RemoteModulesContext.es.js";
|
|
5
5
|
import "../../context/DetailsPanelContext.es.js";
|
|
6
6
|
import "../../context/ThumbnailUploaderContext.es.js";
|
|
@@ -13,7 +13,8 @@ import "../../context/AddonContext.es.js";
|
|
|
13
13
|
import "../../context/PowerpackContext.es.js";
|
|
14
14
|
import "../../context/MoveEntityContext.es.js";
|
|
15
15
|
import "../../context/MenuContext.es.js";
|
|
16
|
-
|
|
16
|
+
import v from "../ProjectTableSettings/RowHeightSettings.es.js";
|
|
17
|
+
const u = i.div`
|
|
17
18
|
height: 100%;
|
|
18
19
|
overflow: hidden;
|
|
19
20
|
background-color: var(--md-sys-color-surface-container-low);
|
|
@@ -21,7 +22,7 @@ const v = o.div`
|
|
|
21
22
|
z-index: 10;
|
|
22
23
|
display: flex;
|
|
23
24
|
flex-direction: column;
|
|
24
|
-
`,
|
|
25
|
+
`, j = i.div`
|
|
25
26
|
display: flex;
|
|
26
27
|
align-items: center;
|
|
27
28
|
gap: var(--base-gap-small);
|
|
@@ -33,16 +34,16 @@ const v = o.div`
|
|
|
33
34
|
margin-left: 4px;
|
|
34
35
|
padding: 0;
|
|
35
36
|
}
|
|
36
|
-
`, s =
|
|
37
|
+
`, s = i(c)`
|
|
37
38
|
padding: 4px !important;
|
|
38
|
-
`,
|
|
39
|
+
`, w = i.h3`
|
|
39
40
|
margin: 0;
|
|
40
41
|
flex: 1;
|
|
41
|
-
`,
|
|
42
|
+
`, S = i.div`
|
|
42
43
|
padding: 8px;
|
|
43
44
|
flex: 1;
|
|
44
45
|
overflow-y: auto;
|
|
45
|
-
`,
|
|
46
|
+
`, b = i(c)`
|
|
46
47
|
width: 100%;
|
|
47
48
|
justify-content: flex-start;
|
|
48
49
|
margin-bottom: 8px;
|
|
@@ -59,44 +60,47 @@ const v = o.div`
|
|
|
59
60
|
.arrow {
|
|
60
61
|
color: var(--md-sys-color-outline);
|
|
61
62
|
}
|
|
62
|
-
`,
|
|
63
|
-
const { isPanelOpen: p, selectedSetting:
|
|
64
|
-
if (!
|
|
65
|
-
const
|
|
66
|
-
return (
|
|
63
|
+
`, q = ({ settings: r }) => {
|
|
64
|
+
const { isPanelOpen: p, selectedSetting: n, closePanel: d, backToMainMenu: m, selectSetting: x } = h(), f = () => {
|
|
65
|
+
if (!n) return "Settings";
|
|
66
|
+
const o = r.find((e) => e.id === n);
|
|
67
|
+
return (o == null ? void 0 : o.title) || "Settings";
|
|
67
68
|
}, g = () => {
|
|
68
|
-
if (!
|
|
69
|
-
return /* @__PURE__ */
|
|
69
|
+
if (!n)
|
|
70
|
+
return /* @__PURE__ */ t.jsx(t.Fragment, { children: r.map((e) => {
|
|
70
71
|
var a;
|
|
71
|
-
return /* @__PURE__ */
|
|
72
|
-
|
|
72
|
+
return /* @__PURE__ */ t.jsxs(
|
|
73
|
+
b,
|
|
73
74
|
{
|
|
74
|
-
onClick: () => x(
|
|
75
|
+
onClick: () => x(e.id),
|
|
75
76
|
variant: "text",
|
|
76
77
|
children: [
|
|
77
|
-
|
|
78
|
-
/* @__PURE__ */
|
|
79
|
-
!!((a =
|
|
80
|
-
/* @__PURE__ */
|
|
78
|
+
e.icon && /* @__PURE__ */ t.jsx(l, { icon: e.icon }),
|
|
79
|
+
/* @__PURE__ */ t.jsx("span", { className: "title", children: e.title }),
|
|
80
|
+
!!((a = e.preview) != null && a.toString()) && /* @__PURE__ */ t.jsx("span", { className: "preview", children: e.preview }),
|
|
81
|
+
/* @__PURE__ */ t.jsx(l, { icon: "chevron_right", className: "arrow" })
|
|
81
82
|
]
|
|
82
83
|
},
|
|
83
|
-
|
|
84
|
+
e.id
|
|
84
85
|
);
|
|
85
86
|
}) });
|
|
86
|
-
const
|
|
87
|
-
return
|
|
87
|
+
const o = r.find((e) => e.id === n);
|
|
88
|
+
return o == null ? void 0 : o.component;
|
|
88
89
|
};
|
|
89
|
-
return /* @__PURE__ */
|
|
90
|
-
/* @__PURE__ */
|
|
91
|
-
|
|
92
|
-
/* @__PURE__ */
|
|
93
|
-
/* @__PURE__ */
|
|
90
|
+
return /* @__PURE__ */ t.jsxs(u, { open: p, children: [
|
|
91
|
+
/* @__PURE__ */ t.jsxs(j, { children: [
|
|
92
|
+
n && r.length > 1 && /* @__PURE__ */ t.jsx(s, { variant: "text", icon: "arrow_back", onClick: m }),
|
|
93
|
+
/* @__PURE__ */ t.jsx(w, { children: f() }),
|
|
94
|
+
/* @__PURE__ */ t.jsx(s, { variant: "text", icon: "close", onClick: d })
|
|
94
95
|
] }),
|
|
95
|
-
/* @__PURE__ */
|
|
96
|
+
/* @__PURE__ */ t.jsxs(S, { children: [
|
|
97
|
+
g(),
|
|
98
|
+
/* @__PURE__ */ t.jsx(v, {})
|
|
99
|
+
] })
|
|
96
100
|
] });
|
|
97
101
|
};
|
|
98
102
|
export {
|
|
99
|
-
|
|
100
|
-
|
|
103
|
+
b as SettingOption,
|
|
104
|
+
q as SettingsPanel
|
|
101
105
|
};
|
|
102
106
|
//# sourceMappingURL=SettingsPanel.es.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SettingsPanel.es.js","sources":["../../../../../src/components/SettingsPanel/SettingsPanel.tsx"],"sourcesContent":["import { Button, Icon } from '@ynput/ayon-react-components'\nimport { FC, ReactNode } from 'react'\nimport styled from 'styled-components'\nimport { SettingField, useSettingsPanel } from '@shared/context'\n\n// Side panel styled components\nconst SidePanel = styled.div<{ open: boolean }>`\n height: 100%;\n overflow: hidden;\n background-color: var(--md-sys-color-surface-container-low);\n border-radius: 4px;\n z-index: 10;\n display: flex;\n flex-direction: column;\n`\n\nconst PanelHeader = styled.div`\n display: flex;\n align-items: center;\n gap: var(--base-gap-small);\n height: 34px;\n padding: 0px 4px;\n border-bottom: 1px solid var(--md-sys-color-outline-variant);\n\n h3 {\n margin-left: 4px;\n padding: 0;\n }\n`\n\nconst ToolButton = styled(Button)`\n padding: 4px !important;\n`\n\nconst PanelTitle = styled.h3`\n margin: 0;\n flex: 1;\n`\n\nconst PanelContent = styled.div`\n padding: 8px;\n flex: 1;\n overflow-y: auto;\n`\n\nexport const SettingOption = styled(Button)`\n width: 100%;\n justify-content: flex-start;\n margin-bottom: 8px;\n text-align: left;\n display: flex;\n gap: var(--base-gap-small);\n padding-right: var(--padding-s);\n\n .title {\n flex: 1;\n }\n\n .preview,\n .arrow {\n color: var(--md-sys-color-outline);\n }\n`\n\nexport interface SettingConfig {\n id: SettingField\n title: string\n component: ReactNode\n icon?: string\n preview?: string | number\n}\n\nexport interface SettingsPanelProps {\n settings: SettingConfig[]\n}\n\nexport const SettingsPanel: FC<SettingsPanelProps> = ({ settings }) => {\n const { isPanelOpen, selectedSetting, closePanel, backToMainMenu, selectSetting } =\n useSettingsPanel()\n\n const getPanelTitle = () => {\n if (!selectedSetting) return 'Settings'\n const setting = settings.find((s) => s.id === selectedSetting)\n return setting?.title || 'Settings'\n }\n\n const renderSettingContent = () => {\n if (!selectedSetting) {\n // Render main menu\n return (\n <>\n {settings.map((setting) => (\n <SettingOption\n key={setting.id}\n onClick={() => selectSetting(setting.id)}\n variant=\"text\"\n >\n {setting.icon && <Icon icon={setting.icon} />}\n <span className=\"title\">{setting.title}</span>\n {!!setting.preview?.toString() && <span className=\"preview\">{setting.preview}</span>}\n <Icon icon=\"chevron_right\" className=\"arrow\" />\n </SettingOption>\n ))}\n </>\n )\n }\n\n const setting = settings.find((s) => s.id === selectedSetting)\n return setting?.component\n }\n\n return (\n <SidePanel open={isPanelOpen}>\n <PanelHeader>\n {selectedSetting && settings.length > 1 && (\n <ToolButton variant=\"text\" icon=\"arrow_back\" onClick={backToMainMenu} />\n )}\n <PanelTitle>{getPanelTitle()}</PanelTitle>\n <ToolButton variant=\"text\" icon=\"close\" onClick={closePanel} />\n </PanelHeader>\n <PanelContent
|
|
1
|
+
{"version":3,"file":"SettingsPanel.es.js","sources":["../../../../../src/components/SettingsPanel/SettingsPanel.tsx"],"sourcesContent":["import { Button, Icon } from '@ynput/ayon-react-components'\nimport { FC, ReactNode } from 'react'\nimport styled from 'styled-components'\nimport { SettingField, useSettingsPanel } from '@shared/context'\nimport RowHeightSettings from '@shared/components/ProjectTableSettings/RowHeightSettings'\n\n// Side panel styled components\nconst SidePanel = styled.div<{ open: boolean }>`\n height: 100%;\n overflow: hidden;\n background-color: var(--md-sys-color-surface-container-low);\n border-radius: 4px;\n z-index: 10;\n display: flex;\n flex-direction: column;\n`\n\nconst PanelHeader = styled.div`\n display: flex;\n align-items: center;\n gap: var(--base-gap-small);\n height: 34px;\n padding: 0px 4px;\n border-bottom: 1px solid var(--md-sys-color-outline-variant);\n\n h3 {\n margin-left: 4px;\n padding: 0;\n }\n`\n\nconst ToolButton = styled(Button)`\n padding: 4px !important;\n`\n\nconst PanelTitle = styled.h3`\n margin: 0;\n flex: 1;\n`\n\nconst PanelContent = styled.div`\n padding: 8px;\n flex: 1;\n overflow-y: auto;\n`\n\nexport const SettingOption = styled(Button)`\n width: 100%;\n justify-content: flex-start;\n margin-bottom: 8px;\n text-align: left;\n display: flex;\n gap: var(--base-gap-small);\n padding-right: var(--padding-s);\n\n .title {\n flex: 1;\n }\n\n .preview,\n .arrow {\n color: var(--md-sys-color-outline);\n }\n`\n\nexport interface SettingConfig {\n id: SettingField\n title: string\n component: ReactNode\n icon?: string\n preview?: string | number\n}\n\nexport interface SettingsPanelProps {\n settings: SettingConfig[]\n}\n\nexport const SettingsPanel: FC<SettingsPanelProps> = ({ settings }) => {\n const { isPanelOpen, selectedSetting, closePanel, backToMainMenu, selectSetting } =\n useSettingsPanel()\n\n const getPanelTitle = () => {\n if (!selectedSetting) return 'Settings'\n const setting = settings.find((s) => s.id === selectedSetting)\n return setting?.title || 'Settings'\n }\n\n const renderSettingContent = () => {\n if (!selectedSetting) {\n // Render main menu\n return (\n <>\n {settings.map((setting) => (\n <SettingOption\n key={setting.id}\n onClick={() => selectSetting(setting.id)}\n variant=\"text\"\n >\n {setting.icon && <Icon icon={setting.icon} />}\n <span className=\"title\">{setting.title}</span>\n {!!setting.preview?.toString() && <span className=\"preview\">{setting.preview}</span>}\n <Icon icon=\"chevron_right\" className=\"arrow\" />\n </SettingOption>\n ))}\n </>\n )\n }\n\n const setting = settings.find((s) => s.id === selectedSetting)\n return setting?.component\n }\n\n return (\n <SidePanel open={isPanelOpen}>\n <PanelHeader>\n {selectedSetting && settings.length > 1 && (\n <ToolButton variant=\"text\" icon=\"arrow_back\" onClick={backToMainMenu} />\n )}\n <PanelTitle>{getPanelTitle()}</PanelTitle>\n <ToolButton variant=\"text\" icon=\"close\" onClick={closePanel} />\n </PanelHeader>\n <PanelContent>\n {renderSettingContent()}\n <RowHeightSettings />\n </PanelContent>\n </SidePanel>\n )\n}\n"],"names":["SidePanel","styled","PanelHeader","ToolButton","Button","PanelTitle","PanelContent","SettingOption","SettingsPanel","settings","isPanelOpen","selectedSetting","closePanel","backToMainMenu","selectSetting","useSettingsPanel","getPanelTitle","setting","s","renderSettingContent","jsx","Fragment","jsxs","Icon","RowHeightSettings"],"mappings":";;;;;;;;;;;;;;;;AAOA,MAAMA,IAAYC,EAAO;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,GAUnBC,IAAcD,EAAO;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,GAcrBE,IAAaF,EAAOG,CAAM;AAAA;AAAA,GAI1BC,IAAaJ,EAAO;AAAA;AAAA;AAAA,GAKpBK,IAAeL,EAAO;AAAA;AAAA;AAAA;AAAA,GAMfM,IAAgBN,EAAOG,CAAM;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,GA+B7BI,IAAwC,CAAC,EAAE,UAAAC,QAAe;AACrE,QAAM,EAAE,aAAAC,GAAa,iBAAAC,GAAiB,YAAAC,GAAY,gBAAAC,GAAgB,eAAAC,MAChEC,EAAiB,GAEbC,IAAgB,MAAM;AACtB,QAAA,CAACL,EAAwB,QAAA;AAC7B,UAAMM,IAAUR,EAAS,KAAK,CAACS,MAAMA,EAAE,OAAOP,CAAe;AAC7D,YAAOM,KAAA,gBAAAA,EAAS,UAAS;AAAA,EAC3B,GAEME,IAAuB,MAAM;AACjC,QAAI,CAACR;AAEH,aAEKS,gBAAAA,EAAAA,IAAAC,EAAAA,UAAA,EAAA,UAAAZ,EAAS,IAAI,CAACQ;;AACbK,+BAAAA,EAAA;AAAA,UAACf;AAAA,UAAA;AAAA,YAEC,SAAS,MAAMO,EAAcG,EAAQ,EAAE;AAAA,YACvC,SAAQ;AAAA,YAEP,UAAA;AAAA,cAAAA,EAAQ,QAAQG,gBAAAA,MAACG,GAAK,EAAA,MAAMN,EAAQ,MAAM;AAAA,oCAC1C,QAAK,EAAA,WAAU,SAAS,UAAAA,EAAQ,OAAM;AAAA,cACtC,CAAC,GAACA,IAAAA,EAAQ,YAARA,QAAAA,EAAiB,eAAeG,gBAAAA,EAAAA,IAAA,QAAA,EAAK,WAAU,WAAW,UAAAH,EAAQ,QAAQ,CAAA;AAAA,cAC5EG,gBAAAA,EAAA,IAAAG,GAAA,EAAK,MAAK,iBAAgB,WAAU,QAAQ,CAAA;AAAA,YAAA;AAAA,UAAA;AAAA,UAPxCN,EAAQ;AAAA,QAShB;AAAA,OAAA,GACH;AAIJ,UAAMA,IAAUR,EAAS,KAAK,CAACS,MAAMA,EAAE,OAAOP,CAAe;AAC7D,WAAOM,KAAA,gBAAAA,EAAS;AAAA,EAClB;AAGE,SAAAK,gBAAAA,EAAA,KAACtB,GAAU,EAAA,MAAMU,GACf,UAAA;AAAA,IAAAY,gBAAAA,OAACpB,GACE,EAAA,UAAA;AAAA,MAAmBS,KAAAF,EAAS,SAAS,KACnCW,gBAAAA,EAAA,IAAAjB,GAAA,EAAW,SAAQ,QAAO,MAAK,cAAa,SAASU,EAAgB,CAAA;AAAA,MAExEO,gBAAAA,EAAAA,IAACf,GAAY,EAAA,UAAAW,EAAgB,EAAA,CAAA;AAAA,4BAC5Bb,GAAW,EAAA,SAAQ,QAAO,MAAK,SAAQ,SAASS,EAAY,CAAA;AAAA,IAAA,GAC/D;AAAA,2BACCN,GACE,EAAA,UAAA;AAAA,MAAqBa,EAAA;AAAA,4BACrBK,GAAkB,CAAA,CAAA;AAAA,IAAA,EACrB,CAAA;AAAA,EAAA,GACF;AAEJ;"}
|
|
@@ -1,10 +1,9 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const o=require("styled-components"),
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const o=require("styled-components"),e=o.div`
|
|
2
2
|
position: relative;
|
|
3
3
|
width: 100%;
|
|
4
4
|
height: 52px;
|
|
5
5
|
aspect-ratio: 1.7;
|
|
6
6
|
overflow: hidden;
|
|
7
|
-
border-radius: var(--border-radius-l);
|
|
8
7
|
margin: auto;
|
|
9
8
|
|
|
10
9
|
background-color: var(--md-sys-color-surface-container-lowest);
|
|
@@ -89,11 +88,10 @@
|
|
|
89
88
|
border: none;
|
|
90
89
|
border-color: transparent;
|
|
91
90
|
}
|
|
92
|
-
`,
|
|
91
|
+
`,i=o.img`
|
|
93
92
|
width: 100%;
|
|
94
93
|
height: 100%;
|
|
95
94
|
object-fit: contain;
|
|
96
|
-
border-radius: var(--border-radius-m);
|
|
97
95
|
overflow: hidden;
|
|
98
96
|
|
|
99
97
|
/* ensures it always fills the parent */
|
|
@@ -102,5 +100,5 @@
|
|
|
102
100
|
inset: 0;
|
|
103
101
|
|
|
104
102
|
transition: scale 0.2s, opacity 0.2s;
|
|
105
|
-
`;exports.Card=
|
|
103
|
+
`;exports.Card=e;exports.Image=i;
|
|
106
104
|
//# sourceMappingURL=Thumbnail.styled.cjs.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Thumbnail.styled.cjs.js","sources":["../../../../../src/components/Thumbnail/Thumbnail.styled.ts"],"sourcesContent":["import styled from 'styled-components'\n\nexport const Card = styled.div`\n position: relative;\n width: 100%;\n height: 52px;\n aspect-ratio: 1.7;\n overflow: hidden;\n
|
|
1
|
+
{"version":3,"file":"Thumbnail.styled.cjs.js","sources":["../../../../../src/components/Thumbnail/Thumbnail.styled.ts"],"sourcesContent":["import styled from 'styled-components'\n\nexport const Card = styled.div`\n position: relative;\n width: 100%;\n height: 52px;\n aspect-ratio: 1.7;\n overflow: hidden;\n margin: auto;\n\n background-color: var(--md-sys-color-surface-container-lowest);\n\n transition: border-color 0.2s, background-color 0.2s;\n\n &.border {\n border: solid 2px var(--md-sys-color-outline-variant);\n }\n\n /* icon */\n .icon {\n position: absolute;\n user-select: none;\n display: flex;\n justify-content: center;\n align-items: center;\n inset: 0;\n\n transition: opacity 0.2s;\n }\n\n .type-icon {\n color: var(--md-sys-color-outline);\n }\n\n .hover-icon {\n inset: unset;\n left: 50%;\n top: 50%;\n transform: translate(-50%, -50%);\n font-size: 30px;\n\n border-radius: 50%;\n\n background-color: rgba(0, 0, 0, 0.7);\n }\n\n /* hide the image until it has been loaded */\n img,\n .icon {\n opacity: 0;\n }\n\n &.loaded {\n /* show img if not error otherwise show icon */\n &:not(.error) {\n img {\n opacity: 1;\n }\n }\n\n /* show icon if error */\n &.error {\n .type-icon {\n opacity: 1;\n }\n }\n }\n\n &.clickable {\n cursor: pointer;\n\n &:hover {\n img {\n scale: 1.1;\n }\n\n /* show play icon */\n .hover-icon {\n opacity: 1;\n }\n\n /* if :has a hover-icon hide the type-cion */\n .type-icon {\n opacity: 0;\n }\n }\n }\n\n &.loading {\n border: none;\n border-color: transparent;\n }\n`\n\nexport const Image = styled.img`\n width: 100%;\n height: 100%;\n object-fit: contain;\n overflow: hidden;\n\n /* ensures it always fills the parent */\n display: block;\n position: absolute;\n inset: 0;\n\n transition: scale 0.2s, opacity 0.2s;\n`\n"],"names":["Card","styled","Image"],"mappings":"qHAEaA,EAAOC,EAAO;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EA4FdC,EAAQD,EAAO;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA"}
|