@gravity-ui/querieskit 1.3.0 → 1.3.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/build/cjs/components/AttachmentList/AttachmentList.d.ts +2 -2
- package/build/cjs/components/AttachmentList/AttachmentList.js +9 -1
- package/build/cjs/components/AttachmentList/AttachmentList.js.map +1 -1
- package/build/cjs/components/AttachmentList/AttachmentList.stories.d.ts +36 -20
- package/build/cjs/components/AttachmentList/AttachmentList.stories.js +3 -0
- package/build/cjs/components/AttachmentList/AttachmentList.stories.js.map +1 -1
- package/build/cjs/components/AttachmentList/helpers/isInteractiveTarget.d.ts +2 -0
- package/build/cjs/components/AttachmentList/helpers/isInteractiveTarget.js +11 -0
- package/build/cjs/components/AttachmentList/helpers/isInteractiveTarget.js.map +1 -0
- package/build/cjs/components/AttachmentListPlaceholder/AttachmentListPlaceholder.js +4 -4
- package/build/cjs/components/AttachmentListPlaceholder/AttachmentListPlaceholder.js.map +1 -1
- package/build/cjs/modules/Attachments/Attachments.css +4 -0
- package/build/cjs/modules/Attachments/Attachments.css.map +1 -1
- package/build/cjs/modules/Attachments/Attachments.d.ts +2 -1
- package/build/cjs/modules/Attachments/Attachments.js +8 -1
- package/build/cjs/modules/Attachments/Attachments.js.map +1 -1
- package/build/cjs/modules/Attachments/Attachments.stories.d.ts +2 -1
- package/build/cjs/modules/Attachments/Attachments.stories.js +7 -3
- package/build/cjs/modules/Attachments/Attachments.stories.js.map +1 -1
- package/build/cjs/modules/HistoryLayout/HistoryLayout.d.ts +1 -1
- package/build/cjs/modules/HistoryLayout/HistoryLayout.js +1 -1
- package/build/cjs/modules/HistoryLayout/HistoryLayout.js.map +1 -1
- package/build/cjs/modules/RowsList/RowsList.css +4 -0
- package/build/cjs/modules/RowsList/RowsList.css.map +1 -1
- package/build/cjs/types/queryList.d.ts +1 -1
- package/build/cjs/types/queryList.js.map +1 -1
- package/build/cjs/widgets/QueriesHistory/QueriesHistory.js +1 -2
- package/build/cjs/widgets/QueriesHistory/QueriesHistory.js.map +1 -1
- package/build/cjs/widgets/QueriesHistory/QueriesHistory.stories.d.ts +1 -0
- package/build/cjs/widgets/QueriesHistory/QueriesHistory.stories.js +82 -1
- package/build/cjs/widgets/QueriesHistory/QueriesHistory.stories.js.map +1 -1
- package/build/cjs/widgets/SavedQueries/SavedQueries.stories.js.map +1 -1
- package/build/esm/components/AttachmentList/AttachmentList.d.ts +2 -2
- package/build/esm/components/AttachmentList/AttachmentList.js +9 -1
- package/build/esm/components/AttachmentList/AttachmentList.js.map +1 -1
- package/build/esm/components/AttachmentList/AttachmentList.stories.d.ts +36 -20
- package/build/esm/components/AttachmentList/AttachmentList.stories.js +3 -0
- package/build/esm/components/AttachmentList/AttachmentList.stories.js.map +1 -1
- package/build/esm/components/AttachmentList/helpers/isInteractiveTarget.d.ts +2 -0
- package/build/esm/components/AttachmentList/helpers/isInteractiveTarget.js +5 -0
- package/build/esm/components/AttachmentList/helpers/isInteractiveTarget.js.map +1 -0
- package/build/esm/components/AttachmentListPlaceholder/AttachmentListPlaceholder.js +4 -4
- package/build/esm/components/AttachmentListPlaceholder/AttachmentListPlaceholder.js.map +1 -1
- package/build/esm/modules/Attachments/Attachments.css +4 -0
- package/build/esm/modules/Attachments/Attachments.css.map +1 -1
- package/build/esm/modules/Attachments/Attachments.d.ts +2 -1
- package/build/esm/modules/Attachments/Attachments.js +8 -1
- package/build/esm/modules/Attachments/Attachments.js.map +1 -1
- package/build/esm/modules/Attachments/Attachments.scss +5 -0
- package/build/esm/modules/Attachments/Attachments.stories.d.ts +2 -1
- package/build/esm/modules/Attachments/Attachments.stories.js +7 -3
- package/build/esm/modules/Attachments/Attachments.stories.js.map +1 -1
- package/build/esm/modules/HistoryLayout/HistoryLayout.d.ts +1 -1
- package/build/esm/modules/HistoryLayout/HistoryLayout.js +1 -1
- package/build/esm/modules/HistoryLayout/HistoryLayout.js.map +1 -1
- package/build/esm/modules/RowsList/RowsList.css +4 -0
- package/build/esm/modules/RowsList/RowsList.css.map +1 -1
- package/build/esm/modules/RowsList/RowsList.scss +3 -0
- package/build/esm/types/queryList.d.ts +1 -1
- package/build/esm/types/queryList.js.map +1 -1
- package/build/esm/widgets/QueriesHistory/QueriesHistory.js +1 -2
- package/build/esm/widgets/QueriesHistory/QueriesHistory.js.map +1 -1
- package/build/esm/widgets/QueriesHistory/QueriesHistory.stories.d.ts +1 -0
- package/build/esm/widgets/QueriesHistory/QueriesHistory.stories.js +81 -0
- package/build/esm/widgets/QueriesHistory/QueriesHistory.stories.js.map +1 -1
- package/build/esm/widgets/SavedQueries/SavedQueries.stories.js.map +1 -1
- package/package.json +29 -2
- package/.agents/skills/code-review-checklist/SKILL.md +0 -94
- package/.agents/skills/github-pr-review/SKILL.md +0 -24
- package/.agents/skills/gravity-ui/SKILL.md +0 -175
- package/.agents/skills/gravity-ui/references/icons.md +0 -60
- package/.agents/skills/gravity-ui/references/layout.md +0 -366
- package/.agents/skills/gravity-ui/references/package-routing.md +0 -424
- package/.agents/skills/gravity-ui/references/theming.md +0 -309
- package/.agents/skills/gravity-ui/rules/hallucination-traps.md +0 -361
- package/.agents/skills/gravity-ui/scripts/icon-image-search.sh +0 -63
- package/.eslintignore +0 -3
- package/.github/workflows/ci.yml +0 -25
- package/.github/workflows/main-preview.yml +0 -31
- package/.github/workflows/pr-preview-build.yml +0 -13
- package/.github/workflows/pr-preview-deploy.yml +0 -22
- package/.github/workflows/pr-title.yml +0 -27
- package/.github/workflows/release.yml +0 -20
- package/.nvmrc +0 -1
- package/.prettierrc.js +0 -1
- package/.storybook/main.ts +0 -31
- package/.storybook/preview.tsx +0 -43
- package/.storybook/redefinition.css +0 -3
- package/.storybook/tsconfig.json +0 -9
- package/.stylelintrc +0 -9
- package/AGENTS.md +0 -129
- package/CHANGELOG.md +0 -103
- package/CODEOWNERS +0 -2
- package/CONTRIBUTING.md +0 -31
- package/NOTICES.md +0 -8
- package/app-builder.config.ts +0 -9
- package/commitlint.config.cjs +0 -6
- package/eslint.config.mjs +0 -53
- package/plans/i18n-rules.md +0 -116
- package/plans/navigation-architecture.md +0 -262
- package/plans/queries-history-structure.md +0 -143
- package/plans/queries-navigation-architecture-review.md +0 -217
- package/plans/styles-rules.md +0 -137
- package/skills-lock.json +0 -11
- package/src/components/AddChartButton/AddChartButton.scss +0 -12
- package/src/components/AddChartButton/AddChartButton.stories.tsx +0 -34
- package/src/components/AddChartButton/AddChartButton.tsx +0 -139
- package/src/components/AddChartButton/index.ts +0 -6
- package/src/components/AttachmentList/AttachmentList.scss +0 -25
- package/src/components/AttachmentList/AttachmentList.stories.tsx +0 -243
- package/src/components/AttachmentList/AttachmentList.tsx +0 -67
- package/src/components/AttachmentList/helpers/getIconByAttachmentName.ts +0 -36
- package/src/components/AttachmentList/helpers/objectLinkValidator.ts +0 -40
- package/src/components/AttachmentList/helpers/stringRequiredValidator.ts +0 -24
- package/src/components/AttachmentList/hooks/useKeyDownFormControl.ts +0 -22
- package/src/components/AttachmentList/hooks/useLabelRef.ts +0 -25
- package/src/components/AttachmentList/i18n/dicts.ts +0 -4
- package/src/components/AttachmentList/i18n/en.json +0 -10
- package/src/components/AttachmentList/i18n/index.ts +0 -5
- package/src/components/AttachmentList/i18n/ru.json +0 -10
- package/src/components/AttachmentList/index.ts +0 -4
- package/src/components/AttachmentList/internal/AttachmentItem/AttachmentItem.scss +0 -23
- package/src/components/AttachmentList/internal/AttachmentItem/AttachmentItem.tsx +0 -75
- package/src/components/AttachmentList/internal/AttachmentItem/index.ts +0 -2
- package/src/components/AttachmentList/internal/EditAttachmentItem/EditAttachmentItem.tsx +0 -21
- package/src/components/AttachmentList/internal/EditAttachmentItem/EditLinkItem.scss +0 -21
- package/src/components/AttachmentList/internal/EditAttachmentItem/EditLinkItem.tsx +0 -194
- package/src/components/AttachmentList/internal/EditAttachmentItem/FileEdit.tsx +0 -92
- package/src/components/AttachmentList/internal/EditAttachmentItem/index.ts +0 -4
- package/src/components/AttachmentListPlaceholder/AttachmentListPlaceholder.scss +0 -5
- package/src/components/AttachmentListPlaceholder/AttachmentListPlaceholder.stories.tsx +0 -30
- package/src/components/AttachmentListPlaceholder/AttachmentListPlaceholder.tsx +0 -72
- package/src/components/AttachmentListPlaceholder/assets/empty-attachments.svg +0 -14
- package/src/components/AttachmentListPlaceholder/i18n/dicts.ts +0 -4
- package/src/components/AttachmentListPlaceholder/i18n/en.json +0 -7
- package/src/components/AttachmentListPlaceholder/i18n/index.ts +0 -5
- package/src/components/AttachmentListPlaceholder/i18n/ru.json +0 -7
- package/src/components/AttachmentListPlaceholder/index.ts +0 -2
- package/src/components/Breadcrumbs/Breadcrumbs.scss +0 -25
- package/src/components/Breadcrumbs/Breadcrumbs.tsx +0 -114
- package/src/components/Breadcrumbs/helpers/parsePathSegments.ts +0 -16
- package/src/components/Breadcrumbs/i18n/dicts.ts +0 -4
- package/src/components/Breadcrumbs/i18n/en.json +0 -4
- package/src/components/Breadcrumbs/i18n/index.ts +0 -5
- package/src/components/Breadcrumbs/i18n/ru.json +0 -4
- package/src/components/Breadcrumbs/index.ts +0 -2
- package/src/components/Chart/Chart.scss +0 -40
- package/src/components/Chart/Chart.stories.tsx +0 -75
- package/src/components/Chart/Chart.tsx +0 -120
- package/src/components/Chart/i18n/dicts.ts +0 -4
- package/src/components/Chart/i18n/en.json +0 -6
- package/src/components/Chart/i18n/index.ts +0 -5
- package/src/components/Chart/i18n/ru.json +0 -6
- package/src/components/Chart/index.ts +0 -2
- package/src/components/ChartEditorForm/ChartEditorForm.scss +0 -20
- package/src/components/ChartEditorForm/ChartEditorForm.stories.tsx +0 -88
- package/src/components/ChartEditorForm/ChartEditorForm.tsx +0 -120
- package/src/components/ChartEditorForm/helpers/resolveLabels.ts +0 -17
- package/src/components/ChartEditorForm/i18n/dicts.ts +0 -4
- package/src/components/ChartEditorForm/i18n/en.json +0 -12
- package/src/components/ChartEditorForm/i18n/index.ts +0 -5
- package/src/components/ChartEditorForm/i18n/ru.json +0 -12
- package/src/components/ChartEditorForm/index.ts +0 -7
- package/src/components/ChartEditorForm/internal/Field.tsx +0 -11
- package/src/components/ChartEditorForm/types.ts +0 -44
- package/src/components/ClusterRow/ClusterRow.tsx +0 -34
- package/src/components/ClusterRow/index.ts +0 -2
- package/src/components/Dashboard/Dashboard.scss +0 -4
- package/src/components/Dashboard/Dashboard.stories.scss +0 -18
- package/src/components/Dashboard/Dashboard.stories.tsx +0 -248
- package/src/components/Dashboard/Dashboard.tsx +0 -51
- package/src/components/Dashboard/helpers/createDefaultLayout.ts +0 -43
- package/src/components/Dashboard/hooks/useDashboardConfig.ts +0 -63
- package/src/components/Dashboard/index.ts +0 -2
- package/src/components/Dashboard/internal/DashPlate.scss +0 -23
- package/src/components/Dashboard/internal/DashPlate.tsx +0 -35
- package/src/components/Dashboard/internal/DashboardProvider.tsx +0 -37
- package/src/components/Dashboard/types.ts +0 -21
- package/src/components/DataTable/DataTable.scss +0 -27
- package/src/components/DataTable/DataTable.stories.tsx +0 -65
- package/src/components/DataTable/DataTable.tsx +0 -100
- package/src/components/DataTable/index.ts +0 -1
- package/src/components/EditableRowTitle/EditableRowTitle.tsx +0 -67
- package/src/components/EditableRowTitle/index.ts +0 -2
- package/src/components/EmptyContent/EmptyContent.scss +0 -3
- package/src/components/EmptyContent/EmptyContent.tsx +0 -57
- package/src/components/EmptyContent/i18n/dicts.ts +0 -4
- package/src/components/EmptyContent/i18n/en.json +0 -7
- package/src/components/EmptyContent/i18n/index.ts +0 -5
- package/src/components/EmptyContent/i18n/ru.json +0 -7
- package/src/components/EmptyContent/index.ts +0 -1
- package/src/components/ErrorTree/ErrorTree.stories.tsx +0 -94
- package/src/components/ErrorTree/ErrorTree.tsx +0 -30
- package/src/components/ErrorTree/helpers/formatAttributes.ts +0 -9
- package/src/components/ErrorTree/helpers/getIntermediateChain.ts +0 -21
- package/src/components/ErrorTree/i18n/dicts.ts +0 -4
- package/src/components/ErrorTree/i18n/en.json +0 -11
- package/src/components/ErrorTree/i18n/index.ts +0 -5
- package/src/components/ErrorTree/i18n/ru.json +0 -13
- package/src/components/ErrorTree/index.ts +0 -1
- package/src/components/ErrorTree/internal/ErrorTreeChildren.scss +0 -5
- package/src/components/ErrorTree/internal/ErrorTreeChildren.tsx +0 -25
- package/src/components/ErrorTree/internal/ErrorTreeNode.scss +0 -95
- package/src/components/ErrorTree/internal/ErrorTreeNode.tsx +0 -178
- package/src/components/ErrorTree/internal/IntermediateMessages.scss +0 -13
- package/src/components/ErrorTree/internal/IntermediateMessages.tsx +0 -127
- package/src/components/FieldsSearchToolbar/FieldsSearchToolbar.tsx +0 -48
- package/src/components/FieldsSearchToolbar/index.ts +0 -2
- package/src/components/FieldsSelector/FieldsSelector.scss +0 -18
- package/src/components/FieldsSelector/FieldsSelector.stories.tsx +0 -48
- package/src/components/FieldsSelector/FieldsSelector.tsx +0 -92
- package/src/components/FieldsSelector/i18n/dicts.ts +0 -4
- package/src/components/FieldsSelector/i18n/en.json +0 -3
- package/src/components/FieldsSelector/i18n/index.ts +0 -5
- package/src/components/FieldsSelector/i18n/ru.json +0 -3
- package/src/components/FieldsSelector/index.ts +0 -2
- package/src/components/HistoryFilter/HistoryFilter.scss +0 -5
- package/src/components/HistoryFilter/HistoryFilter.stories.tsx +0 -69
- package/src/components/HistoryFilter/HistoryFilter.tsx +0 -64
- package/src/components/HistoryFilter/i18n/dicts.ts +0 -4
- package/src/components/HistoryFilter/i18n/en.json +0 -4
- package/src/components/HistoryFilter/i18n/index.ts +0 -5
- package/src/components/HistoryFilter/i18n/ru.json +0 -4
- package/src/components/HistoryFilter/index.ts +0 -1
- package/src/components/HistoryGroupHeader/HistoryGroupHeader.scss +0 -7
- package/src/components/HistoryGroupHeader/HistoryGroupHeader.tsx +0 -18
- package/src/components/HistoryGroupHeader/index.ts +0 -1
- package/src/components/HistoryPrivateIcon/HistoryPrivateIcon.scss +0 -7
- package/src/components/HistoryPrivateIcon/HistoryPrivateIcon.tsx +0 -22
- package/src/components/HistoryPrivateIcon/index.ts +0 -1
- package/src/components/Icons/LogoCPlusPlus.tsx +0 -34
- package/src/components/Icons/index.ts +0 -1
- package/src/components/LazyList/LazyList.scss +0 -13
- package/src/components/LazyList/LazyList.tsx +0 -97
- package/src/components/LazyList/index.ts +0 -2
- package/src/components/ListSpinner/ListSpinner.scss +0 -3
- package/src/components/ListSpinner/ListSpinner.tsx +0 -18
- package/src/components/ListSpinner/index.ts +0 -2
- package/src/components/MonacoEditor/MonacoEditor.tsx +0 -112
- package/src/components/MonacoEditor/MonacoEditorThemes.tsx +0 -73
- package/src/components/MonacoEditor/index.ts +0 -11
- package/src/components/MonacoEditor/monaco-yql-languages/_.contribution.ts +0 -193
- package/src/components/MonacoEditor/monaco-yql-languages/clickhouse/clickhouse.contribution.ts +0 -14
- package/src/components/MonacoEditor/monaco-yql-languages/clickhouse/clickhouse.keywords.ts +0 -146
- package/src/components/MonacoEditor/monaco-yql-languages/clickhouse/clickhouse.ts +0 -217
- package/src/components/MonacoEditor/monaco-yql-languages/constants.ts +0 -6
- package/src/components/MonacoEditor/monaco-yql-languages/fillers/monaco-editor-core.ts +0 -3
- package/src/components/MonacoEditor/monaco-yql-languages/index.ts +0 -1
- package/src/components/MonacoEditor/monaco-yql-languages/monaco.contribution.ts +0 -5
- package/src/components/MonacoEditor/monaco-yql-languages/s-expressions/s-expressions.contribution.ts +0 -14
- package/src/components/MonacoEditor/monaco-yql-languages/s-expressions/s-expressions.keywords.ts +0 -97
- package/src/components/MonacoEditor/monaco-yql-languages/s-expressions/s-expressions.ts +0 -170
- package/src/components/MonacoEditor/monaco-yql-languages/themes/themes.contribution.ts +0 -35
- package/src/components/MonacoEditor/monaco-yql-languages/yql/yql.contribution.ts +0 -14
- package/src/components/MonacoEditor/monaco-yql-languages/yql/yql.keywords.ts +0 -13
- package/src/components/MonacoEditor/monaco-yql-languages/yql/yql.ts +0 -178
- package/src/components/MonacoEditor/monaco-yql-languages/yql_ansi/yql_ansi.contribution.ts +0 -14
- package/src/components/MonacoEditor/monaco-yql-languages/yql_ansi/yql_ansi.keywords.ts +0 -45
- package/src/components/MonacoEditor/monaco-yql-languages/yql_ansi/yql_ansi.ts +0 -142
- package/src/components/NavigationActionButtons/NavigationActionButtons.tsx +0 -46
- package/src/components/NavigationActionButtons/index.ts +0 -2
- package/src/components/NavigationItemRow/NavigationItemRow.tsx +0 -28
- package/src/components/NavigationItemRow/index.ts +0 -2
- package/src/components/PathEditor/PathEditor.scss +0 -41
- package/src/components/PathEditor/PathEditor.stories.helpers.ts +0 -118
- package/src/components/PathEditor/PathEditor.stories.tsx +0 -57
- package/src/components/PathEditor/PathEditor.tsx +0 -380
- package/src/components/PathEditor/helpers/suggestions.ts +0 -40
- package/src/components/PathEditor/i18n/dicts.ts +0 -4
- package/src/components/PathEditor/i18n/en.json +0 -4
- package/src/components/PathEditor/i18n/index.ts +0 -5
- package/src/components/PathEditor/i18n/ru.json +0 -4
- package/src/components/PathEditor/index.ts +0 -2
- package/src/components/QueryDuration/QueryDuration.scss +0 -6
- package/src/components/QueryDuration/QueryDuration.stories.tsx +0 -40
- package/src/components/QueryDuration/QueryDuration.tsx +0 -21
- package/src/components/QueryDuration/index.ts +0 -1
- package/src/components/QueryDuration/useQueryDuration.ts +0 -34
- package/src/components/QueryResultsTable/QueryResultsTable.scss +0 -65
- package/src/components/QueryResultsTable/QueryResultsTable.tsx +0 -112
- package/src/components/QueryResultsTable/helpers/formatQueryResultType.ts +0 -76
- package/src/components/QueryResultsTable/helpers/formatQueryResultValue.ts +0 -38
- package/src/components/QueryResultsTable/i18n/dicts.ts +0 -4
- package/src/components/QueryResultsTable/i18n/en.json +0 -5
- package/src/components/QueryResultsTable/i18n/index.ts +0 -4
- package/src/components/QueryResultsTable/i18n/ru.json +0 -5
- package/src/components/QueryResultsTable/index.ts +0 -3
- package/src/components/QueryResultsTable/internal/QueryResultCell.tsx +0 -63
- package/src/components/QueryStatusIcon/QueryStatusIcon.scss +0 -17
- package/src/components/QueryStatusIcon/QueryStatusIcon.stories.tsx +0 -50
- package/src/components/QueryStatusIcon/QueryStatusIcon.tsx +0 -37
- package/src/components/QueryStatusIcon/index.ts +0 -1
- package/src/components/RowActionsMenu/RowActionsMenu.tsx +0 -47
- package/src/components/RowActionsMenu/index.ts +0 -2
- package/src/components/RowLink/RowLink.scss +0 -8
- package/src/components/RowLink/RowLink.tsx +0 -23
- package/src/components/RowLink/index.ts +0 -2
- package/src/components/SearchRowLayout/SearchRowLayout.scss +0 -18
- package/src/components/SearchRowLayout/SearchRowLayout.tsx +0 -45
- package/src/components/SearchRowLayout/helpers/fitQueryToVisibleLines.ts +0 -10
- package/src/components/SearchRowLayout/helpers/monacoConfig.ts +0 -25
- package/src/components/SearchRowLayout/index.ts +0 -2
- package/src/components/SearchWithButtons/SearchWithButtons.scss +0 -10
- package/src/components/SearchWithButtons/SearchWithButtons.stories.tsx +0 -107
- package/src/components/SearchWithButtons/SearchWithButtons.tsx +0 -56
- package/src/components/SearchWithButtons/index.ts +0 -2
- package/src/components/SimpleForm/CheckboxGroupField.tsx +0 -53
- package/src/components/SimpleForm/RangeDatePickerField.tsx +0 -50
- package/src/components/SimpleForm/SelectField.tsx +0 -24
- package/src/components/SimpleForm/SimpleForm.stories.tsx +0 -115
- package/src/components/SimpleForm/SimpleForm.tsx +0 -65
- package/src/components/SimpleForm/SwitchField.tsx +0 -23
- package/src/components/SimpleForm/helpers/controlsRegistry.ts +0 -24
- package/src/components/SimpleForm/helpers/getInitialValues.ts +0 -10
- package/src/components/SimpleForm/helpers/index.ts +0 -2
- package/src/components/SimpleForm/index.ts +0 -7
- package/src/components/SkeletonRows/SkeletonRows.tsx +0 -24
- package/src/components/SkeletonRows/index.ts +0 -2
- package/src/components/index.ts +0 -71
- package/src/constants/query.ts +0 -10
- package/src/constants/row.ts +0 -2
- package/src/helpers/buildColumnsFromKeys.ts +0 -17
- package/src/helpers/createUuid.ts +0 -3
- package/src/helpers/getDefaultNavigationIcon.ts +0 -33
- package/src/helpers/getListKey.ts +0 -12
- package/src/helpers/getParentPath.ts +0 -10
- package/src/helpers/isEmptyValue.ts +0 -2
- package/src/helpers/isFieldVisible.ts +0 -20
- package/src/helpers/isObjectEqual.ts +0 -15
- package/src/helpers/time.ts +0 -29
- package/src/helpers/useDebouncedValue.ts +0 -14
- package/src/helpers/useLoadMoreSentinel.ts +0 -31
- package/src/helpers/useToggle.ts +0 -11
- package/src/helpers/useVisibleColumns.ts +0 -26
- package/src/i18n/index.ts +0 -26
- package/src/index.ts +0 -12
- package/src/modules/Attachments/Attachments.scss +0 -10
- package/src/modules/Attachments/Attachments.stories.tsx +0 -112
- package/src/modules/Attachments/Attachments.tsx +0 -336
- package/src/modules/Attachments/i18n/dicts.ts +0 -4
- package/src/modules/Attachments/i18n/en.json +0 -5
- package/src/modules/Attachments/i18n/index.ts +0 -5
- package/src/modules/Attachments/i18n/ru.json +0 -5
- package/src/modules/Attachments/index.ts +0 -2
- package/src/modules/ChartEditor/ChartEditor.scss +0 -12
- package/src/modules/ChartEditor/ChartEditor.tsx +0 -116
- package/src/modules/ChartEditor/i18n/dicts.ts +0 -4
- package/src/modules/ChartEditor/i18n/en.json +0 -3
- package/src/modules/ChartEditor/i18n/index.ts +0 -5
- package/src/modules/ChartEditor/i18n/ru.json +0 -3
- package/src/modules/ChartEditor/index.ts +0 -2
- package/src/modules/ChartEditor/story/ChartEditor.stories.tsx +0 -186
- package/src/modules/ChartEditor/story/mockData.ts +0 -222
- package/src/modules/ChartEditor/types.ts +0 -18
- package/src/modules/ClustersList/ClustersList.scss +0 -11
- package/src/modules/ClustersList/ClustersList.tsx +0 -49
- package/src/modules/ClustersList/index.ts +0 -2
- package/src/modules/HistoryComparisonActions/HistoryComparisonActions.scss +0 -4
- package/src/modules/HistoryComparisonActions/HistoryComparisonActions.tsx +0 -42
- package/src/modules/HistoryComparisonActions/index.ts +0 -2
- package/src/modules/HistoryHeader/HistoryHeader.stories.tsx +0 -47
- package/src/modules/HistoryHeader/HistoryHeader.tsx +0 -58
- package/src/modules/HistoryHeader/index.ts +0 -1
- package/src/modules/HistoryHeader/internal/FullSearchToggleButton.tsx +0 -16
- package/src/modules/HistoryLayout/HistoryLayout.scss +0 -7
- package/src/modules/HistoryLayout/HistoryLayout.tsx +0 -43
- package/src/modules/HistoryLayout/index.ts +0 -2
- package/src/modules/HistoryRow/HistoryRow.scss +0 -32
- package/src/modules/HistoryRow/HistoryRow.stories.tsx +0 -91
- package/src/modules/HistoryRow/HistoryRow.tsx +0 -77
- package/src/modules/HistoryRow/index.ts +0 -1
- package/src/modules/HistorySearchRow/HistorySearchRow.scss +0 -13
- package/src/modules/HistorySearchRow/HistorySearchRow.stories.tsx +0 -52
- package/src/modules/HistorySearchRow/HistorySearchRow.tsx +0 -62
- package/src/modules/HistorySearchRow/helpers/resolveMonacoLanguage.ts +0 -19
- package/src/modules/HistorySearchRow/index.ts +0 -1
- package/src/modules/NavigationDetail/NavigationDetail.scss +0 -13
- package/src/modules/NavigationDetail/NavigationDetail.tsx +0 -121
- package/src/modules/NavigationDetail/helpers/getInitialTab.ts +0 -9
- package/src/modules/NavigationDetail/helpers/getVisibleTabs.ts +0 -5
- package/src/modules/NavigationDetail/index.ts +0 -2
- package/src/modules/NavigationDetail/internal/NavigationDetailTabs.tsx +0 -32
- package/src/modules/NavigationHeader/NavigationHeader.stories.tsx +0 -118
- package/src/modules/NavigationHeader/NavigationHeader.tsx +0 -33
- package/src/modules/NavigationHeader/index.ts +0 -2
- package/src/modules/NavigationItemsList/NavigationItemsList.scss +0 -65
- package/src/modules/NavigationItemsList/NavigationItemsList.tsx +0 -92
- package/src/modules/NavigationItemsList/index.ts +0 -2
- package/src/modules/NavigationItemsList/internal/NavigationItemsListEmptyState.tsx +0 -45
- package/src/modules/NavigationItemsList/internal/NavigationItemsListHeader.scss +0 -6
- package/src/modules/NavigationItemsList/internal/NavigationItemsListHeader.tsx +0 -54
- package/src/modules/NavigationItemsList/internal/useParentRow.ts +0 -23
- package/src/modules/NavigationMeta/NavigationMeta.scss +0 -25
- package/src/modules/NavigationMeta/NavigationMeta.tsx +0 -81
- package/src/modules/NavigationMeta/helpers/buildMetaGroups.tsx +0 -27
- package/src/modules/NavigationMeta/i18n/dicts.ts +0 -4
- package/src/modules/NavigationMeta/i18n/en.json +0 -4
- package/src/modules/NavigationMeta/i18n/index.ts +0 -5
- package/src/modules/NavigationMeta/i18n/ru.json +0 -4
- package/src/modules/NavigationMeta/index.ts +0 -3
- package/src/modules/NavigationMeta/story/NavigationMeta.stories.tsx +0 -80
- package/src/modules/NavigationMeta/story/mockData.ts +0 -22
- package/src/modules/NavigationPreview/NavigationPreview.scss +0 -32
- package/src/modules/NavigationPreview/NavigationPreview.tsx +0 -155
- package/src/modules/NavigationPreview/helpers/buildPreviewColumns.tsx +0 -11
- package/src/modules/NavigationPreview/helpers/filterPreviewRows.ts +0 -29
- package/src/modules/NavigationPreview/i18n/dicts.ts +0 -4
- package/src/modules/NavigationPreview/i18n/en.json +0 -3
- package/src/modules/NavigationPreview/i18n/index.ts +0 -5
- package/src/modules/NavigationPreview/i18n/ru.json +0 -3
- package/src/modules/NavigationPreview/index.ts +0 -4
- package/src/modules/NavigationPreview/story/NavigationPreview.stories.tsx +0 -123
- package/src/modules/NavigationPreview/story/mockData.ts +0 -14
- package/src/modules/NavigationSchema/NavigationSchema.scss +0 -24
- package/src/modules/NavigationSchema/NavigationSchema.tsx +0 -118
- package/src/modules/NavigationSchema/helpers/buildSchemaColumns.tsx +0 -54
- package/src/modules/NavigationSchema/helpers/filterSchema.ts +0 -18
- package/src/modules/NavigationSchema/i18n/dicts.ts +0 -4
- package/src/modules/NavigationSchema/i18n/en.json +0 -9
- package/src/modules/NavigationSchema/i18n/index.ts +0 -5
- package/src/modules/NavigationSchema/i18n/ru.json +0 -9
- package/src/modules/NavigationSchema/index.ts +0 -4
- package/src/modules/NavigationSchema/story/NavigationSchema.stories.tsx +0 -112
- package/src/modules/NavigationSchema/story/mockData.ts +0 -9
- package/src/modules/NavigationView/NavigationView.scss +0 -44
- package/src/modules/NavigationView/NavigationView.tsx +0 -60
- package/src/modules/NavigationView/helpers/buildViewColumns.tsx +0 -11
- package/src/modules/NavigationView/i18n/dicts.ts +0 -4
- package/src/modules/NavigationView/i18n/en.json +0 -3
- package/src/modules/NavigationView/i18n/index.ts +0 -5
- package/src/modules/NavigationView/i18n/ru.json +0 -3
- package/src/modules/NavigationView/index.ts +0 -3
- package/src/modules/NavigationView/internal/NavigationViewSectionItem.tsx +0 -70
- package/src/modules/NavigationView/story/NavigationView.stories.tsx +0 -110
- package/src/modules/NavigationView/story/mockData.ts +0 -35
- package/src/modules/QueriesList/QueriesList.scss +0 -10
- package/src/modules/QueriesList/QueriesList.tsx +0 -98
- package/src/modules/QueriesList/index.ts +0 -2
- package/src/modules/QueryStatistics/QueryStatistics.scss +0 -3
- package/src/modules/QueryStatistics/QueryStatistics.tsx +0 -125
- package/src/modules/QueryStatistics/helpers.ts +0 -96
- package/src/modules/QueryStatistics/i18n/dicts.ts +0 -4
- package/src/modules/QueryStatistics/i18n/en.json +0 -16
- package/src/modules/QueryStatistics/i18n/index.ts +0 -4
- package/src/modules/QueryStatistics/i18n/ru.json +0 -16
- package/src/modules/QueryStatistics/index.ts +0 -13
- package/src/modules/QueryStatistics/internal/MetricCell.scss +0 -12
- package/src/modules/QueryStatistics/internal/MetricCell.tsx +0 -99
- package/src/modules/QueryStatistics/internal/QueryStatisticsTable.scss +0 -8
- package/src/modules/QueryStatistics/internal/QueryStatisticsTable.tsx +0 -135
- package/src/modules/QueryStatistics/internal/QueryStatisticsToolbar.scss +0 -1
- package/src/modules/QueryStatistics/internal/QueryStatisticsToolbar.tsx +0 -61
- package/src/modules/QueryStatistics/story/QueryStatistics.stories.tsx +0 -71
- package/src/modules/RowsList/RowsList.scss +0 -5
- package/src/modules/RowsList/RowsList.tsx +0 -96
- package/src/modules/RowsList/helpers/prepareRowData.ts +0 -61
- package/src/modules/RowsList/index.ts +0 -2
- package/src/modules/SavedQueryRow/SavedQueryRow.scss +0 -20
- package/src/modules/SavedQueryRow/SavedQueryRow.tsx +0 -60
- package/src/modules/SavedQueryRow/index.ts +0 -2
- package/src/modules/SavedQuerySearchRow/SavedQuerySearchRow.scss +0 -15
- package/src/modules/SavedQuerySearchRow/SavedQuerySearchRow.tsx +0 -58
- package/src/modules/SavedQuerySearchRow/index.ts +0 -2
- package/src/modules/TutorialRow/TutorialRow.scss +0 -9
- package/src/modules/TutorialRow/TutorialRow.stories.tsx +0 -43
- package/src/modules/TutorialRow/TutorialRow.tsx +0 -25
- package/src/modules/TutorialRow/index.ts +0 -2
- package/src/modules/TutorialSearchRow/TutorialSearchRow.scss +0 -5
- package/src/modules/TutorialSearchRow/TutorialSearchRow.stories.tsx +0 -44
- package/src/modules/TutorialSearchRow/TutorialSearchRow.tsx +0 -33
- package/src/modules/TutorialSearchRow/index.ts +0 -2
- package/src/modules/index.ts +0 -50
- package/src/types/declarations.d.ts +0 -25
- package/src/types/errorTree.ts +0 -30
- package/src/types/forms.ts +0 -33
- package/src/types/history.ts +0 -12
- package/src/types/navigation.ts +0 -209
- package/src/types/pathEditor.ts +0 -29
- package/src/types/queryList.ts +0 -92
- package/src/types/queryResults.ts +0 -48
- package/src/types/queryStatistics.ts +0 -67
- package/src/types/savedQueries.ts +0 -7
- package/src/types/tutorial.ts +0 -3
- package/src/widgets/DashboardCharts/DashboardCharts.scss +0 -25
- package/src/widgets/DashboardCharts/DashboardCharts.tsx +0 -214
- package/src/widgets/DashboardCharts/helpers/chartTypeIcons.ts +0 -33
- package/src/widgets/DashboardCharts/i18n/dicts.ts +0 -4
- package/src/widgets/DashboardCharts/i18n/en.json +0 -7
- package/src/widgets/DashboardCharts/i18n/index.ts +0 -5
- package/src/widgets/DashboardCharts/i18n/ru.json +0 -7
- package/src/widgets/DashboardCharts/index.ts +0 -2
- package/src/widgets/DashboardCharts/internal/EmptyDashboardPlaceholder.tsx +0 -26
- package/src/widgets/DashboardCharts/story/DashboardCharts.stories.scss +0 -6
- package/src/widgets/DashboardCharts/story/DashboardCharts.stories.tsx +0 -77
- package/src/widgets/DashboardCharts/story/mockData.ts +0 -419
- package/src/widgets/DashboardCharts/types.ts +0 -30
- package/src/widgets/QueriesHistory/QueriesHistory.scss +0 -3
- package/src/widgets/QueriesHistory/QueriesHistory.stories.tsx +0 -276
- package/src/widgets/QueriesHistory/QueriesHistory.tsx +0 -71
- package/src/widgets/QueriesHistory/i18n/dicts.ts +0 -4
- package/src/widgets/QueriesHistory/i18n/en.json +0 -3
- package/src/widgets/QueriesHistory/i18n/index.ts +0 -5
- package/src/widgets/QueriesHistory/i18n/ru.json +0 -3
- package/src/widgets/QueriesHistory/index.ts +0 -2
- package/src/widgets/QueriesHistory/internal/HistoryRowContent.tsx +0 -22
- package/src/widgets/QueriesNavigation/QueriesNavigation.scss +0 -9
- package/src/widgets/QueriesNavigation/QueriesNavigation.stories.tsx +0 -409
- package/src/widgets/QueriesNavigation/QueriesNavigation.tsx +0 -195
- package/src/widgets/QueriesNavigation/helpers/createEmptyDetailConfig.tsx +0 -8
- package/src/widgets/QueriesNavigation/helpers/createNavigationDetailResolver.ts +0 -28
- package/src/widgets/QueriesNavigation/helpers/createTableDetailConfig.tsx +0 -127
- package/src/widgets/QueriesNavigation/i18n/dicts.ts +0 -4
- package/src/widgets/QueriesNavigation/i18n/en.json +0 -10
- package/src/widgets/QueriesNavigation/i18n/index.ts +0 -5
- package/src/widgets/QueriesNavigation/i18n/ru.json +0 -10
- package/src/widgets/QueriesNavigation/index.ts +0 -13
- package/src/widgets/QueryResults/QueryResults.scss +0 -25
- package/src/widgets/QueryResults/QueryResults.stories.tsx +0 -155
- package/src/widgets/QueryResults/QueryResults.tsx +0 -121
- package/src/widgets/QueryResults/i18n/dicts.ts +0 -4
- package/src/widgets/QueryResults/i18n/en.json +0 -10
- package/src/widgets/QueryResults/i18n/index.ts +0 -4
- package/src/widgets/QueryResults/i18n/ru.json +0 -12
- package/src/widgets/QueryResults/index.ts +0 -2
- package/src/widgets/QueryResults/internal/QueryResultsSchema.tsx +0 -41
- package/src/widgets/SavedQueries/SavedQueries.scss +0 -3
- package/src/widgets/SavedQueries/SavedQueries.stories.tsx +0 -192
- package/src/widgets/SavedQueries/SavedQueries.tsx +0 -77
- package/src/widgets/SavedQueries/SavedQueryRowContent.tsx +0 -26
- package/src/widgets/SavedQueries/i18n/dicts.ts +0 -4
- package/src/widgets/SavedQueries/i18n/en.json +0 -3
- package/src/widgets/SavedQueries/i18n/index.ts +0 -4
- package/src/widgets/SavedQueries/i18n/ru.json +0 -3
- package/src/widgets/SavedQueries/index.ts +0 -2
- package/src/widgets/TutorialsHistory/TutorialRowContent.tsx +0 -16
- package/src/widgets/TutorialsHistory/TutorialsHistory.scss +0 -3
- package/src/widgets/TutorialsHistory/TutorialsHistory.stories.tsx +0 -135
- package/src/widgets/TutorialsHistory/TutorialsHistory.tsx +0 -63
- package/src/widgets/TutorialsHistory/i18n/dicts.ts +0 -4
- package/src/widgets/TutorialsHistory/i18n/en.json +0 -3
- package/src/widgets/TutorialsHistory/i18n/index.ts +0 -5
- package/src/widgets/TutorialsHistory/i18n/ru.json +0 -3
- package/src/widgets/TutorialsHistory/index.ts +0 -2
- package/src/widgets/index.ts +0 -20
- package/tsconfig.json +0 -20
- package/tsconfig.publish.json +0 -11
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","useMemo","useRef","useState","Button","Flex","Icon","Tab","TabList","TabPanel","TabProvider","Text","AttachmentList","AttachmentListPlaceholder","EditAttachmentItem","createUuid","isObjectEqual","Plus","cn","i18n","jsx","_jsx","jsxs","_jsxs","block","Attachments","_ref","tokens","placeholderProps","attachmentListProps","onChange","customerAttachments","attachments","customerDeletedAttachments","deletedAttachments","_useState","_useState2","_slicedToArray","currentTab","setCurrentTab","_useState3","_useState4","innerAttachList","setInnerAttachList","_useState5","_useState6","innerDeletedAttachList","setInnerDeletedAttachList","_useState7","_useState8","editingIds","setEditingIds","_useState9","_useState0","wasAddedIds","setWasAddedIds","_useState1","_useState10","wasEdited","setWasEditedIds","attachList","deletedAttachList","attachCount","filter","a","isNew","length","defaultAttachList","getDefaultValuesForLink","linkId","_currentLink$name","_currentLink$link","_currentLink$token","currentLink","find","id","name","link","token","runAfterAttachAdded","attachId","newAttach","editedAttach","current","concat","_toConsumableArray","handleAddEmptyFile","patchAttachList","handleAddEmptyLink","handleAcceptFile","fileId","fileName","patchedFile","patchEditingIds","map","attach","handleAcceptLink","patchedLink","_objectSpread","handleCancelEdit","wasItNewAttach","some","handleEdit","editAttachId","handleDelete","deletedAttachmen","patchDeletedAttachList","handleDeleteAll","handleRevertDelete","revertAttach","className","direction","width","height","children","value","onUpdate","tab","variant","color","spacing","pt","wasEditedIds","onEdit","onDelete","renderEditForm","isLink","defaultLinkValues","type","onAccept","defaultValues","onCancel","defaultFileName","pathName","onAddFile","onAddLink","Boolean","gap","onClick","data","view","isDeleted","onRevert"],"sources":["Attachments.tsx"],"sourcesContent":["import React, {useMemo, useRef, useState} from 'react';\nimport {Button, Flex, Icon, Tab, TabList, TabPanel, TabProvider, Text} from '@gravity-ui/uikit';\nimport {AttachmentList, AttachmentListPlaceholder, EditAttachmentItem} from '../../components';\nimport {createUuid} from '../../helpers/createUuid';\nimport {isObjectEqual} from '../../helpers/isObjectEqual';\nimport {Plus} from '@gravity-ui/icons';\nimport type {\n AttachmentItemProps,\n AttachmentListPlaceholderProps,\n AttachmentListProps,\n EditLinkValues,\n} from '../../components';\nimport cn from 'bem-cn-lite';\n\nimport i18n from './i18n';\n\nimport './Attachments.scss';\n\ntype TabVariants = 'Current' | 'Deleted';\n\nexport type AttachItem = AttachmentItemProps['attachment'] & {token?: string; isNew?: boolean};\n\nexport type AttachmentsProps = {\n tokens?: {value: string; title: string}[];\n placeholderProps?: Omit<AttachmentListPlaceholderProps, 'onAddFile' | 'onAddLink'>;\n attachmentListProps?: Pick<AttachmentListProps, 'className'>;\n attachments?: AttachItem[];\n deletedAttachments?: AttachItem[];\n onChange?: (payload: {attachments: AttachItem[]; deletedAttachments: AttachItem[]}) => void;\n};\n\nconst block = cn('qp-attachments');\n\nexport const Attachments = ({\n tokens,\n placeholderProps,\n attachmentListProps,\n onChange,\n attachments: customerAttachments,\n deletedAttachments: customerDeletedAttachments,\n}: AttachmentsProps) => {\n const [currentTab, setCurrentTab] = useState<'Current' | 'Deleted'>('Current');\n\n const [innerAttachList, setInnerAttachList] = useState<AttachItem[]>(customerAttachments ?? []);\n const [innerDeletedAttachList, setInnerDeletedAttachList] = useState<AttachItem[]>(\n customerDeletedAttachments ?? [],\n );\n\n const [editingIds, setEditingIds] = useState<string[]>([]);\n const [wasAddedIds, setWasAddedIds] = useState<string[]>([]);\n const [wasEdited, setWasEditedIds] = useState<string[]>([]);\n\n const attachList = customerAttachments ?? innerAttachList;\n const deletedAttachList = customerDeletedAttachments ?? innerDeletedAttachList;\n\n const attachCount = useMemo(() => attachList.filter((a) => !a.isNew).length, [attachList]);\n\n const defaultAttachList = useRef(attachList);\n\n const getDefaultValuesForLink = (linkId: string) => {\n const currentLink = attachList.find((a) => a.id === linkId);\n return {\n name: currentLink?.name ?? '',\n link: currentLink?.link ?? '',\n token: currentLink?.token ?? '',\n };\n };\n\n const runAfterAttachAdded = (attachId: string, newAttach: AttachItem) => {\n const editedAttach = defaultAttachList.current.find((a) => a.id === attachId);\n\n if (!editedAttach) return;\n\n if (isObjectEqual(editedAttach, newAttach)) {\n setWasEditedIds(wasEdited.filter((id) => id !== attachId));\n return;\n }\n\n setWasEditedIds([...wasEdited, attachId]);\n };\n\n const handleAddEmptyFile = () => {\n const id = createUuid();\n\n const patchAttachList = [\n ...attachList.filter((a) => !a.isNew),\n {id, name: '', isNew: true},\n ];\n\n setInnerAttachList(patchAttachList);\n setWasAddedIds([...wasAddedIds, id]);\n setEditingIds([...editingIds, id]);\n\n onChange?.({\n attachments: patchAttachList,\n deletedAttachments: deletedAttachList,\n });\n };\n\n const handleAddEmptyLink = () => {\n const id = createUuid();\n\n const patchAttachList = [\n ...attachList.filter((a) => !a.isNew),\n {id, name: '', token: '', link: '', isNew: true},\n ];\n\n setInnerAttachList(patchAttachList);\n setWasAddedIds([...wasAddedIds, id]);\n setEditingIds([...editingIds, id]);\n\n onChange?.({\n attachments: patchAttachList,\n deletedAttachments: deletedAttachList,\n });\n };\n\n const handleAcceptFile = (fileId: string, fileName: string) => {\n const patchedFile = attachList.find((a) => a.id === fileId);\n if (!patchedFile) return;\n\n const patchEditingIds = editingIds.filter((id) => id !== fileId);\n const patchAttachList = attachList.map((attach) => {\n if (attach.id === fileId) return {id: fileId, name: fileName};\n return attach;\n });\n\n setEditingIds(patchEditingIds);\n setInnerAttachList(patchAttachList);\n\n onChange?.({\n attachments: patchAttachList,\n deletedAttachments: deletedAttachList,\n });\n\n runAfterAttachAdded(fileId, {id: fileId, name: fileName});\n };\n\n const handleAcceptLink = (linkId: string, link: EditLinkValues) => {\n const patchedLink = attachList.find((a) => a.id === linkId);\n if (!patchedLink) return;\n\n const patchEditingIds = editingIds.filter((id) => id !== linkId);\n const patchAttachList = attachList.map((attach) => {\n if (attach.id === linkId) return {id: linkId, ...link};\n return attach;\n });\n\n setEditingIds(patchEditingIds);\n setInnerAttachList(patchAttachList);\n\n onChange?.({\n attachments: patchAttachList,\n deletedAttachments: deletedAttachList,\n });\n\n runAfterAttachAdded(linkId, {id: linkId, ...link});\n };\n\n const handleCancelEdit = (fileId: string) => {\n const patchEditingIds = editingIds.filter((id) => id !== fileId);\n const patchAttachList = attachList.filter((a) => !a.isNew);\n\n const wasItNewAttach = attachList.some((a) => a.isNew);\n if (wasItNewAttach) {\n setWasAddedIds(wasAddedIds.filter((id) => id !== fileId));\n }\n\n setInnerAttachList(patchAttachList);\n setEditingIds(patchEditingIds);\n\n onChange?.({\n attachments: patchAttachList,\n deletedAttachments: deletedAttachList,\n });\n };\n\n const handleEdit = (editAttachId: string) => {\n const patchEditingIds = [...editingIds, editAttachId];\n\n setEditingIds(patchEditingIds);\n };\n\n const handleDelete = (attachId: string) => {\n const deletedAttachmen = attachList.find((a) => a.id === attachId);\n\n if (!deletedAttachmen) return;\n\n const patchAttachList = attachList.filter((a) => a.id !== attachId);\n const patchDeletedAttachList = [...deletedAttachList, deletedAttachmen];\n\n setInnerAttachList(patchAttachList);\n setInnerDeletedAttachList(patchDeletedAttachList);\n\n onChange?.({\n attachments: patchAttachList,\n deletedAttachments: patchDeletedAttachList,\n });\n };\n\n const handleDeleteAll = () => {\n const patchAttachList: never[] = [];\n const patchDeletedAttachList = [\n ...deletedAttachList,\n ...attachList.filter((a) => !a.isNew),\n ];\n\n setInnerAttachList(patchAttachList);\n setInnerDeletedAttachList(patchDeletedAttachList);\n\n onChange?.({\n attachments: patchAttachList,\n deletedAttachments: patchDeletedAttachList,\n });\n };\n\n const handleRevertDelete = (attachId: string) => {\n const revertAttach = deletedAttachList.find((a) => a.id === attachId);\n\n if (!revertAttach) return;\n\n const patchAttachList = [...attachList, revertAttach];\n const patchDeletedAttachList = deletedAttachList.filter((a) => a.id !== attachId);\n\n setInnerAttachList(patchAttachList);\n setInnerDeletedAttachList(patchDeletedAttachList);\n\n onChange?.({\n attachments: patchAttachList,\n deletedAttachments: patchDeletedAttachList,\n });\n };\n\n return (\n <Flex className={block()} direction=\"column\" width=\"100%\" height=\"100%\">\n <TabProvider value={currentTab} onUpdate={(tab) => setCurrentTab(tab as TabVariants)}>\n <TabList>\n <Tab className={block('tab')} value=\"Current\">\n <Text variant=\"body-1\">Current</Text>\n <Text color=\"hint\" variant=\"body-1\">\n {attachCount}\n </Text>\n </Tab>\n <Tab className={block('tab')} value=\"Deleted\">\n <Text variant=\"body-1\">Deleted</Text>\n <Text color=\"hint\" variant=\"body-1\">\n {deletedAttachList.length}\n </Text>\n </Tab>\n </TabList>\n\n <TabPanel className={block('panel')} value=\"Current\">\n <Flex spacing={{pt: 3}} direction=\"column\" width=\"100%\" height=\"100%\">\n {attachList.length ? (\n <AttachmentList\n {...attachmentListProps}\n attachments={attachList}\n wasAddedIds={wasAddedIds}\n wasEditedIds={wasEdited}\n editingIds={editingIds}\n onEdit={(attach) => handleEdit(attach.id)}\n onDelete={(attach) => handleDelete(attach.id)}\n renderEditForm={(attach) => {\n const isLink = typeof attach.link === 'string';\n\n if (isLink) {\n const defaultLinkValues = getDefaultValuesForLink(\n attach.id,\n );\n\n return (\n <EditAttachmentItem\n type=\"link\"\n onAccept={(link) =>\n handleAcceptLink(attach.id, link)\n }\n defaultValues={defaultLinkValues}\n tokens={tokens}\n onCancel={() => handleCancelEdit(attach.id)}\n />\n );\n }\n\n return (\n <EditAttachmentItem\n type=\"file\"\n defaultFileName={attach.name}\n onAccept={(pathName) =>\n handleAcceptFile(attach.id, pathName)\n }\n onCancel={() => handleCancelEdit(attach.id)}\n />\n );\n }}\n />\n ) : (\n <AttachmentListPlaceholder\n onAddFile={handleAddEmptyFile}\n onAddLink={handleAddEmptyLink}\n {...placeholderProps}\n />\n )}\n {Boolean(attachList.length) && (\n <Flex gap={2}>\n <Button onClick={handleAddEmptyFile}>\n <Icon data={Plus} />\n {i18n('action_add-file')}\n </Button>\n\n <Button view=\"outlined\" onClick={handleAddEmptyLink}>\n <Icon data={Plus} />\n {i18n('action_add-link')}\n </Button>\n\n <Button view=\"flat\" onClick={handleDeleteAll}>\n {i18n('action_remove-all')}\n </Button>\n </Flex>\n )}\n </Flex>\n </TabPanel>\n\n <TabPanel className={block('panel')} value=\"Deleted\">\n <Flex spacing={{pt: 3}} width=\"100%\" height=\"100%\">\n <AttachmentList\n {...attachmentListProps}\n isDeleted\n attachments={deletedAttachList}\n onRevert={(attach) => handleRevertDelete(attach.id)}\n />\n </Flex>\n </TabPanel>\n </TabProvider>\n </Flex>\n );\n};\n"],"mappings":";;;;;;;;;;;;;;;;AAAA,OAAOA,KAAK,IAAGC,OAAO,EAAEC,MAAM,EAAEC,QAAQ,QAAO,OAAO;AACtD,SAAQC,MAAM,EAAEC,IAAI,EAAEC,IAAI,EAAEC,GAAG,EAAEC,OAAO,EAAEC,QAAQ,EAAEC,WAAW,EAAEC,IAAI,QAAO,mBAAmB;AAC/F,SAAQC,cAAc,EAAEC,yBAAyB,EAAEC,kBAAkB;AACrE,SAAQC,UAAU;AAClB,SAAQC,aAAa;AACrB,SAAQC,IAAI,QAAO,mBAAmB;AAOtC,OAAOC,EAAE,MAAM,aAAa;AAE5B,OAAOC,IAAI;AAEX;AAA4B,SAAAC,GAAA,IAAAC,IAAA,EAAAC,IAAA,IAAAC,KAAA;AAe5B,IAAMC,KAAK,GAAGN,EAAE,CAAC,gBAAgB,CAAC;AAElC,OAAO,IAAMO,WAAW,GAAG,SAAdA,WAAWA,CAAAC,IAAA,EAOA;EAAA,IANpBC,MAAM,GAAAD,IAAA,CAANC,MAAM;IACNC,gBAAgB,GAAAF,IAAA,CAAhBE,gBAAgB;IAChBC,mBAAmB,GAAAH,IAAA,CAAnBG,mBAAmB;IACnBC,QAAQ,GAAAJ,IAAA,CAARI,QAAQ;IACKC,mBAAmB,GAAAL,IAAA,CAAhCM,WAAW;IACSC,0BAA0B,GAAAP,IAAA,CAA9CQ,kBAAkB;EAElB,IAAAC,SAAA,GAAoChC,QAAQ,CAAwB,SAAS,CAAC;IAAAiC,UAAA,GAAAC,cAAA,CAAAF,SAAA;IAAvEG,UAAU,GAAAF,UAAA;IAAEG,aAAa,GAAAH,UAAA;EAEhC,IAAAI,UAAA,GAA8CrC,QAAQ,CAAe4B,mBAAmB,aAAnBA,mBAAmB,cAAnBA,mBAAmB,GAAI,EAAE,CAAC;IAAAU,UAAA,GAAAJ,cAAA,CAAAG,UAAA;IAAxFE,eAAe,GAAAD,UAAA;IAAEE,kBAAkB,GAAAF,UAAA;EAC1C,IAAAG,UAAA,GAA4DzC,QAAQ,CAChE8B,0BAA0B,aAA1BA,0BAA0B,cAA1BA,0BAA0B,GAAI,EAClC,CAAC;IAAAY,UAAA,GAAAR,cAAA,CAAAO,UAAA;IAFME,sBAAsB,GAAAD,UAAA;IAAEE,yBAAyB,GAAAF,UAAA;EAIxD,IAAAG,UAAA,GAAoC7C,QAAQ,CAAW,EAAE,CAAC;IAAA8C,UAAA,GAAAZ,cAAA,CAAAW,UAAA;IAAnDE,UAAU,GAAAD,UAAA;IAAEE,aAAa,GAAAF,UAAA;EAChC,IAAAG,UAAA,GAAsCjD,QAAQ,CAAW,EAAE,CAAC;IAAAkD,UAAA,GAAAhB,cAAA,CAAAe,UAAA;IAArDE,WAAW,GAAAD,UAAA;IAAEE,cAAc,GAAAF,UAAA;EAClC,IAAAG,UAAA,GAAqCrD,QAAQ,CAAW,EAAE,CAAC;IAAAsD,WAAA,GAAApB,cAAA,CAAAmB,UAAA;IAApDE,SAAS,GAAAD,WAAA;IAAEE,eAAe,GAAAF,WAAA;EAEjC,IAAMG,UAAU,GAAG7B,mBAAmB,aAAnBA,mBAAmB,cAAnBA,mBAAmB,GAAIW,eAAe;EACzD,IAAMmB,iBAAiB,GAAG5B,0BAA0B,aAA1BA,0BAA0B,cAA1BA,0BAA0B,GAAIa,sBAAsB;EAE9E,IAAMgB,WAAW,GAAG7D,OAAO,CAAC;IAAA,OAAM2D,UAAU,CAACG,MAAM,CAAC,UAACC,CAAC;MAAA,OAAK,CAACA,CAAC,CAACC,KAAK;IAAA,EAAC,CAACC,MAAM;EAAA,GAAE,CAACN,UAAU,CAAC,CAAC;EAE1F,IAAMO,iBAAiB,GAAGjE,MAAM,CAAC0D,UAAU,CAAC;EAE5C,IAAMQ,uBAAuB,GAAG,SAA1BA,uBAAuBA,CAAIC,MAAc,EAAK;IAAA,IAAAC,iBAAA,EAAAC,iBAAA,EAAAC,kBAAA;IAChD,IAAMC,WAAW,GAAGb,UAAU,CAACc,IAAI,CAAC,UAACV,CAAC;MAAA,OAAKA,CAAC,CAACW,EAAE,KAAKN,MAAM;IAAA,EAAC;IAC3D,OAAO;MACHO,IAAI,GAAAN,iBAAA,GAAEG,WAAW,aAAXA,WAAW,uBAAXA,WAAW,CAAEG,IAAI,cAAAN,iBAAA,cAAAA,iBAAA,GAAI,EAAE;MAC7BO,IAAI,GAAAN,iBAAA,GAAEE,WAAW,aAAXA,WAAW,uBAAXA,WAAW,CAAEI,IAAI,cAAAN,iBAAA,cAAAA,iBAAA,GAAI,EAAE;MAC7BO,KAAK,GAAAN,kBAAA,GAAEC,WAAW,aAAXA,WAAW,uBAAXA,WAAW,CAAEK,KAAK,cAAAN,kBAAA,cAAAA,kBAAA,GAAI;IACjC,CAAC;EACL,CAAC;EAED,IAAMO,mBAAmB,GAAG,SAAtBA,mBAAmBA,CAAIC,QAAgB,EAAEC,SAAqB,EAAK;IACrE,IAAMC,YAAY,GAAGf,iBAAiB,CAACgB,OAAO,CAACT,IAAI,CAAC,UAACV,CAAC;MAAA,OAAKA,CAAC,CAACW,EAAE,KAAKK,QAAQ;IAAA,EAAC;IAE7E,IAAI,CAACE,YAAY,EAAE;IAEnB,IAAIlE,aAAa,CAACkE,YAAY,EAAED,SAAS,CAAC,EAAE;MACxCtB,eAAe,CAACD,SAAS,CAACK,MAAM,CAAC,UAACY,EAAE;QAAA,OAAKA,EAAE,KAAKK,QAAQ;MAAA,EAAC,CAAC;MAC1D;IACJ;IAEArB,eAAe,IAAAyB,MAAA,CAAAC,kBAAA,CAAK3B,SAAS,IAAEsB,QAAQ,EAAC,CAAC;EAC7C,CAAC;EAED,IAAMM,kBAAkB,GAAG,SAArBA,kBAAkBA,CAAA,EAAS;IAC7B,IAAMX,EAAE,GAAG5D,UAAU,CAAC,CAAC;IAEvB,IAAMwE,eAAe,MAAAH,MAAA,CAAAC,kBAAA,CACdzB,UAAU,CAACG,MAAM,CAAC,UAACC,CAAC;MAAA,OAAK,CAACA,CAAC,CAACC,KAAK;IAAA,EAAC,IACrC;MAACU,EAAE,EAAFA,EAAE;MAAEC,IAAI,EAAE,EAAE;MAAEX,KAAK,EAAE;IAAI,CAAC,EAC9B;IAEDtB,kBAAkB,CAAC4C,eAAe,CAAC;IACnChC,cAAc,IAAA6B,MAAA,CAAAC,kBAAA,CAAK/B,WAAW,IAAEqB,EAAE,EAAC,CAAC;IACpCxB,aAAa,IAAAiC,MAAA,CAAAC,kBAAA,CAAKnC,UAAU,IAAEyB,EAAE,EAAC,CAAC;IAElC7C,QAAQ,aAARA,QAAQ,eAARA,QAAQ,CAAG;MACPE,WAAW,EAAEuD,eAAe;MAC5BrD,kBAAkB,EAAE2B;IACxB,CAAC,CAAC;EACN,CAAC;EAED,IAAM2B,kBAAkB,GAAG,SAArBA,kBAAkBA,CAAA,EAAS;IAC7B,IAAMb,EAAE,GAAG5D,UAAU,CAAC,CAAC;IAEvB,IAAMwE,eAAe,MAAAH,MAAA,CAAAC,kBAAA,CACdzB,UAAU,CAACG,MAAM,CAAC,UAACC,CAAC;MAAA,OAAK,CAACA,CAAC,CAACC,KAAK;IAAA,EAAC,IACrC;MAACU,EAAE,EAAFA,EAAE;MAAEC,IAAI,EAAE,EAAE;MAAEE,KAAK,EAAE,EAAE;MAAED,IAAI,EAAE,EAAE;MAAEZ,KAAK,EAAE;IAAI,CAAC,EACnD;IAEDtB,kBAAkB,CAAC4C,eAAe,CAAC;IACnChC,cAAc,IAAA6B,MAAA,CAAAC,kBAAA,CAAK/B,WAAW,IAAEqB,EAAE,EAAC,CAAC;IACpCxB,aAAa,IAAAiC,MAAA,CAAAC,kBAAA,CAAKnC,UAAU,IAAEyB,EAAE,EAAC,CAAC;IAElC7C,QAAQ,aAARA,QAAQ,eAARA,QAAQ,CAAG;MACPE,WAAW,EAAEuD,eAAe;MAC5BrD,kBAAkB,EAAE2B;IACxB,CAAC,CAAC;EACN,CAAC;EAED,IAAM4B,gBAAgB,GAAG,SAAnBA,gBAAgBA,CAAIC,MAAc,EAAEC,QAAgB,EAAK;IAC3D,IAAMC,WAAW,GAAGhC,UAAU,CAACc,IAAI,CAAC,UAACV,CAAC;MAAA,OAAKA,CAAC,CAACW,EAAE,KAAKe,MAAM;IAAA,EAAC;IAC3D,IAAI,CAACE,WAAW,EAAE;IAElB,IAAMC,eAAe,GAAG3C,UAAU,CAACa,MAAM,CAAC,UAACY,EAAE;MAAA,OAAKA,EAAE,KAAKe,MAAM;IAAA,EAAC;IAChE,IAAMH,eAAe,GAAG3B,UAAU,CAACkC,GAAG,CAAC,UAACC,MAAM,EAAK;MAC/C,IAAIA,MAAM,CAACpB,EAAE,KAAKe,MAAM,EAAE,OAAO;QAACf,EAAE,EAAEe,MAAM;QAAEd,IAAI,EAAEe;MAAQ,CAAC;MAC7D,OAAOI,MAAM;IACjB,CAAC,CAAC;IAEF5C,aAAa,CAAC0C,eAAe,CAAC;IAC9BlD,kBAAkB,CAAC4C,eAAe,CAAC;IAEnCzD,QAAQ,aAARA,QAAQ,eAARA,QAAQ,CAAG;MACPE,WAAW,EAAEuD,eAAe;MAC5BrD,kBAAkB,EAAE2B;IACxB,CAAC,CAAC;IAEFkB,mBAAmB,CAACW,MAAM,EAAE;MAACf,EAAE,EAAEe,MAAM;MAAEd,IAAI,EAAEe;IAAQ,CAAC,CAAC;EAC7D,CAAC;EAED,IAAMK,gBAAgB,GAAG,SAAnBA,gBAAgBA,CAAI3B,MAAc,EAAEQ,IAAoB,EAAK;IAC/D,IAAMoB,WAAW,GAAGrC,UAAU,CAACc,IAAI,CAAC,UAACV,CAAC;MAAA,OAAKA,CAAC,CAACW,EAAE,KAAKN,MAAM;IAAA,EAAC;IAC3D,IAAI,CAAC4B,WAAW,EAAE;IAElB,IAAMJ,eAAe,GAAG3C,UAAU,CAACa,MAAM,CAAC,UAACY,EAAE;MAAA,OAAKA,EAAE,KAAKN,MAAM;IAAA,EAAC;IAChE,IAAMkB,eAAe,GAAG3B,UAAU,CAACkC,GAAG,CAAC,UAACC,MAAM,EAAK;MAC/C,IAAIA,MAAM,CAACpB,EAAE,KAAKN,MAAM,EAAE,OAAA6B,aAAA;QAAQvB,EAAE,EAAEN;MAAM,GAAKQ,IAAI;MACrD,OAAOkB,MAAM;IACjB,CAAC,CAAC;IAEF5C,aAAa,CAAC0C,eAAe,CAAC;IAC9BlD,kBAAkB,CAAC4C,eAAe,CAAC;IAEnCzD,QAAQ,aAARA,QAAQ,eAARA,QAAQ,CAAG;MACPE,WAAW,EAAEuD,eAAe;MAC5BrD,kBAAkB,EAAE2B;IACxB,CAAC,CAAC;IAEFkB,mBAAmB,CAACV,MAAM,EAAA6B,aAAA;MAAGvB,EAAE,EAAEN;IAAM,GAAKQ,IAAI,CAAC,CAAC;EACtD,CAAC;EAED,IAAMsB,gBAAgB,GAAG,SAAnBA,gBAAgBA,CAAIT,MAAc,EAAK;IACzC,IAAMG,eAAe,GAAG3C,UAAU,CAACa,MAAM,CAAC,UAACY,EAAE;MAAA,OAAKA,EAAE,KAAKe,MAAM;IAAA,EAAC;IAChE,IAAMH,eAAe,GAAG3B,UAAU,CAACG,MAAM,CAAC,UAACC,CAAC;MAAA,OAAK,CAACA,CAAC,CAACC,KAAK;IAAA,EAAC;IAE1D,IAAMmC,cAAc,GAAGxC,UAAU,CAACyC,IAAI,CAAC,UAACrC,CAAC;MAAA,OAAKA,CAAC,CAACC,KAAK;IAAA,EAAC;IACtD,IAAImC,cAAc,EAAE;MAChB7C,cAAc,CAACD,WAAW,CAACS,MAAM,CAAC,UAACY,EAAE;QAAA,OAAKA,EAAE,KAAKe,MAAM;MAAA,EAAC,CAAC;IAC7D;IAEA/C,kBAAkB,CAAC4C,eAAe,CAAC;IACnCpC,aAAa,CAAC0C,eAAe,CAAC;IAE9B/D,QAAQ,aAARA,QAAQ,eAARA,QAAQ,CAAG;MACPE,WAAW,EAAEuD,eAAe;MAC5BrD,kBAAkB,EAAE2B;IACxB,CAAC,CAAC;EACN,CAAC;EAED,IAAMyC,UAAU,GAAG,SAAbA,UAAUA,CAAIC,YAAoB,EAAK;IACzC,IAAMV,eAAe,MAAAT,MAAA,CAAAC,kBAAA,CAAOnC,UAAU,IAAEqD,YAAY,EAAC;IAErDpD,aAAa,CAAC0C,eAAe,CAAC;EAClC,CAAC;EAED,IAAMW,YAAY,GAAG,SAAfA,YAAYA,CAAIxB,QAAgB,EAAK;IACvC,IAAMyB,gBAAgB,GAAG7C,UAAU,CAACc,IAAI,CAAC,UAACV,CAAC;MAAA,OAAKA,CAAC,CAACW,EAAE,KAAKK,QAAQ;IAAA,EAAC;IAElE,IAAI,CAACyB,gBAAgB,EAAE;IAEvB,IAAMlB,eAAe,GAAG3B,UAAU,CAACG,MAAM,CAAC,UAACC,CAAC;MAAA,OAAKA,CAAC,CAACW,EAAE,KAAKK,QAAQ;IAAA,EAAC;IACnE,IAAM0B,sBAAsB,MAAAtB,MAAA,CAAAC,kBAAA,CAAOxB,iBAAiB,IAAE4C,gBAAgB,EAAC;IAEvE9D,kBAAkB,CAAC4C,eAAe,CAAC;IACnCxC,yBAAyB,CAAC2D,sBAAsB,CAAC;IAEjD5E,QAAQ,aAARA,QAAQ,eAARA,QAAQ,CAAG;MACPE,WAAW,EAAEuD,eAAe;MAC5BrD,kBAAkB,EAAEwE;IACxB,CAAC,CAAC;EACN,CAAC;EAED,IAAMC,eAAe,GAAG,SAAlBA,eAAeA,CAAA,EAAS;IAC1B,IAAMpB,eAAwB,GAAG,EAAE;IACnC,IAAMmB,sBAAsB,MAAAtB,MAAA,CAAAC,kBAAA,CACrBxB,iBAAiB,GAAAwB,kBAAA,CACjBzB,UAAU,CAACG,MAAM,CAAC,UAACC,CAAC;MAAA,OAAK,CAACA,CAAC,CAACC,KAAK;IAAA,EAAC,EACxC;IAEDtB,kBAAkB,CAAC4C,eAAe,CAAC;IACnCxC,yBAAyB,CAAC2D,sBAAsB,CAAC;IAEjD5E,QAAQ,aAARA,QAAQ,eAARA,QAAQ,CAAG;MACPE,WAAW,EAAEuD,eAAe;MAC5BrD,kBAAkB,EAAEwE;IACxB,CAAC,CAAC;EACN,CAAC;EAED,IAAME,kBAAkB,GAAG,SAArBA,kBAAkBA,CAAI5B,QAAgB,EAAK;IAC7C,IAAM6B,YAAY,GAAGhD,iBAAiB,CAACa,IAAI,CAAC,UAACV,CAAC;MAAA,OAAKA,CAAC,CAACW,EAAE,KAAKK,QAAQ;IAAA,EAAC;IAErE,IAAI,CAAC6B,YAAY,EAAE;IAEnB,IAAMtB,eAAe,MAAAH,MAAA,CAAAC,kBAAA,CAAOzB,UAAU,IAAEiD,YAAY,EAAC;IACrD,IAAMH,sBAAsB,GAAG7C,iBAAiB,CAACE,MAAM,CAAC,UAACC,CAAC;MAAA,OAAKA,CAAC,CAACW,EAAE,KAAKK,QAAQ;IAAA,EAAC;IAEjFrC,kBAAkB,CAAC4C,eAAe,CAAC;IACnCxC,yBAAyB,CAAC2D,sBAAsB,CAAC;IAEjD5E,QAAQ,aAARA,QAAQ,eAARA,QAAQ,CAAG;MACPE,WAAW,EAAEuD,eAAe;MAC5BrD,kBAAkB,EAAEwE;IACxB,CAAC,CAAC;EACN,CAAC;EAED,oBACIrF,IAAA,CAAChB,IAAI;IAACyG,SAAS,EAAEtF,KAAK,CAAC,CAAE;IAACuF,SAAS,EAAC,QAAQ;IAACC,KAAK,EAAC,MAAM;IAACC,MAAM,EAAC,MAAM;IAAAC,QAAA,eACnE3F,KAAA,CAACb,WAAW;MAACyG,KAAK,EAAE7E,UAAW;MAAC8E,QAAQ,EAAE,SAAVA,QAAQA,CAAGC,GAAG;QAAA,OAAK9E,aAAa,CAAC8E,GAAkB,CAAC;MAAA,CAAC;MAAAH,QAAA,gBACjF3F,KAAA,CAACf,OAAO;QAAA0G,QAAA,gBACJ3F,KAAA,CAAChB,GAAG;UAACuG,SAAS,EAAEtF,KAAK,CAAC,KAAK,CAAE;UAAC2F,KAAK,EAAC,SAAS;UAAAD,QAAA,gBACzC7F,IAAA,CAACV,IAAI;YAAC2G,OAAO,EAAC,QAAQ;YAAAJ,QAAA,EAAC;UAAO,CAAM,CAAC,eACrC7F,IAAA,CAACV,IAAI;YAAC4G,KAAK,EAAC,MAAM;YAACD,OAAO,EAAC,QAAQ;YAAAJ,QAAA,EAC9BpD;UAAW,CACV,CAAC;QAAA,CACN,CAAC,eACNvC,KAAA,CAAChB,GAAG;UAACuG,SAAS,EAAEtF,KAAK,CAAC,KAAK,CAAE;UAAC2F,KAAK,EAAC,SAAS;UAAAD,QAAA,gBACzC7F,IAAA,CAACV,IAAI;YAAC2G,OAAO,EAAC,QAAQ;YAAAJ,QAAA,EAAC;UAAO,CAAM,CAAC,eACrC7F,IAAA,CAACV,IAAI;YAAC4G,KAAK,EAAC,MAAM;YAACD,OAAO,EAAC,QAAQ;YAAAJ,QAAA,EAC9BrD,iBAAiB,CAACK;UAAM,CACvB,CAAC;QAAA,CACN,CAAC;MAAA,CACD,CAAC,eAEV7C,IAAA,CAACZ,QAAQ;QAACqG,SAAS,EAAEtF,KAAK,CAAC,OAAO,CAAE;QAAC2F,KAAK,EAAC,SAAS;QAAAD,QAAA,eAChD3F,KAAA,CAAClB,IAAI;UAACmH,OAAO,EAAE;YAACC,EAAE,EAAE;UAAC,CAAE;UAACV,SAAS,EAAC,QAAQ;UAACC,KAAK,EAAC,MAAM;UAACC,MAAM,EAAC,MAAM;UAAAC,QAAA,GAChEtD,UAAU,CAACM,MAAM,gBACd7C,IAAA,CAACT,cAAc,EAAAsF,aAAA,CAAAA,aAAA,KACPrE,mBAAmB;YACvBG,WAAW,EAAE4B,UAAW;YACxBN,WAAW,EAAEA,WAAY;YACzBoE,YAAY,EAAEhE,SAAU;YACxBR,UAAU,EAAEA,UAAW;YACvByE,MAAM,EAAE,SAARA,MAAMA,CAAG5B,MAAM;cAAA,OAAKO,UAAU,CAACP,MAAM,CAACpB,EAAE,CAAC;YAAA,CAAC;YAC1CiD,QAAQ,EAAE,SAAVA,QAAQA,CAAG7B,MAAM;cAAA,OAAKS,YAAY,CAACT,MAAM,CAACpB,EAAE,CAAC;YAAA,CAAC;YAC9CkD,cAAc,EAAE,SAAhBA,cAAcA,CAAG9B,MAAM,EAAK;cACxB,IAAM+B,MAAM,GAAG,OAAO/B,MAAM,CAAClB,IAAI,KAAK,QAAQ;cAE9C,IAAIiD,MAAM,EAAE;gBACR,IAAMC,iBAAiB,GAAG3D,uBAAuB,CAC7C2B,MAAM,CAACpB,EACX,CAAC;gBAED,oBACItD,IAAA,CAACP,kBAAkB;kBACfkH,IAAI,EAAC,MAAM;kBACXC,QAAQ,EAAE,SAAVA,QAAQA,CAAGpD,IAAI;oBAAA,OACXmB,gBAAgB,CAACD,MAAM,CAACpB,EAAE,EAAEE,IAAI,CAAC;kBAAA,CACpC;kBACDqD,aAAa,EAAEH,iBAAkB;kBACjCpG,MAAM,EAAEA,MAAO;kBACfwG,QAAQ,EAAE,SAAVA,QAAQA,CAAA;oBAAA,OAAQhC,gBAAgB,CAACJ,MAAM,CAACpB,EAAE,CAAC;kBAAA;gBAAC,CAC/C,CAAC;cAEV;cAEA,oBACItD,IAAA,CAACP,kBAAkB;gBACfkH,IAAI,EAAC,MAAM;gBACXI,eAAe,EAAErC,MAAM,CAACnB,IAAK;gBAC7BqD,QAAQ,EAAE,SAAVA,QAAQA,CAAGI,QAAQ;kBAAA,OACf5C,gBAAgB,CAACM,MAAM,CAACpB,EAAE,EAAE0D,QAAQ,CAAC;gBAAA,CACxC;gBACDF,QAAQ,EAAE,SAAVA,QAAQA,CAAA;kBAAA,OAAQhC,gBAAgB,CAACJ,MAAM,CAACpB,EAAE,CAAC;gBAAA;cAAC,CAC/C,CAAC;YAEV;UAAE,EACL,CAAC,gBAEFtD,IAAA,CAACR,yBAAyB,EAAAqF,aAAA;YACtBoC,SAAS,EAAEhD,kBAAmB;YAC9BiD,SAAS,EAAE/C;UAAmB,GAC1B5D,gBAAgB,CACvB,CACJ,EACA4G,OAAO,CAAC5E,UAAU,CAACM,MAAM,CAAC,iBACvB3C,KAAA,CAAClB,IAAI;YAACoI,GAAG,EAAE,CAAE;YAAAvB,QAAA,gBACT3F,KAAA,CAACnB,MAAM;cAACsI,OAAO,EAAEpD,kBAAmB;cAAA4B,QAAA,gBAChC7F,IAAA,CAACf,IAAI;gBAACqI,IAAI,EAAE1H;cAAK,CAAE,CAAC,EACnBE,IAAI,CAAC,iBAAiB,CAAC;YAAA,CACpB,CAAC,eAETI,KAAA,CAACnB,MAAM;cAACwI,IAAI,EAAC,UAAU;cAACF,OAAO,EAAElD,kBAAmB;cAAA0B,QAAA,gBAChD7F,IAAA,CAACf,IAAI;gBAACqI,IAAI,EAAE1H;cAAK,CAAE,CAAC,EACnBE,IAAI,CAAC,iBAAiB,CAAC;YAAA,CACpB,CAAC,eAETE,IAAA,CAACjB,MAAM;cAACwI,IAAI,EAAC,MAAM;cAACF,OAAO,EAAE/B,eAAgB;cAAAO,QAAA,EACxC/F,IAAI,CAAC,mBAAmB;YAAC,CACtB,CAAC;UAAA,CACP,CACT;QAAA,CACC;MAAC,CACD,CAAC,eAEXE,IAAA,CAACZ,QAAQ;QAACqG,SAAS,EAAEtF,KAAK,CAAC,OAAO,CAAE;QAAC2F,KAAK,EAAC,SAAS;QAAAD,QAAA,eAChD7F,IAAA,CAAChB,IAAI;UAACmH,OAAO,EAAE;YAACC,EAAE,EAAE;UAAC,CAAE;UAACT,KAAK,EAAC,MAAM;UAACC,MAAM,EAAC,MAAM;UAAAC,QAAA,eAC9C7F,IAAA,CAACT,cAAc,EAAAsF,aAAA,CAAAA,aAAA,KACPrE,mBAAmB;YACvBgH,SAAS;YACT7G,WAAW,EAAE6B,iBAAkB;YAC/BiF,QAAQ,EAAE,SAAVA,QAAQA,CAAG/C,MAAM;cAAA,OAAKa,kBAAkB,CAACb,MAAM,CAACpB,EAAE,CAAC;YAAA;UAAC,EACvD;QAAC,CACA;MAAC,CACD,CAAC;IAAA,CACF;EAAC,CACZ,CAAC;AAEf,CAAC","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["React","useMemo","useRef","useState","Button","Flex","Icon","Tab","TabList","TabPanel","TabProvider","Text","AttachmentList","AttachmentListPlaceholder","EditAttachmentItem","createUuid","isObjectEqual","Plus","cn","i18n","jsx","_jsx","jsxs","_jsxs","block","Attachments","_ref","tokens","placeholderProps","attachmentListProps","onChange","onItemClick","customerAttachments","attachments","customerDeletedAttachments","deletedAttachments","_useState","_useState2","_slicedToArray","currentTab","setCurrentTab","_useState3","_useState4","innerAttachList","setInnerAttachList","_useState5","_useState6","innerDeletedAttachList","setInnerDeletedAttachList","_useState7","_useState8","editingIds","setEditingIds","_useState9","_useState0","wasAddedIds","setWasAddedIds","_useState1","_useState10","wasEdited","setWasEditedIds","attachList","deletedAttachList","attachCount","filter","a","isNew","length","defaultAttachList","getDefaultValuesForLink","linkId","_currentLink$name","_currentLink$link","_currentLink$token","currentLink","find","id","name","link","token","runAfterAttachAdded","attachId","newAttach","editedAttach","current","concat","_toConsumableArray","handleAddEmptyFile","patchAttachList","handleAddEmptyLink","handleAcceptFile","fileId","fileName","patchedFile","patchEditingIds","map","attach","handleAcceptLink","patchedLink","_objectSpread","handleCancelEdit","wasItNewAttach","some","handleEdit","editAttachId","handleDelete","deletedAttachmen","patchDeletedAttachList","handleDeleteAll","handleRevertDelete","revertAttach","className","direction","width","height","children","value","onUpdate","tab","variant","color","spacing","pt","wasEditedIds","onEdit","onDelete","renderEditForm","isLink","defaultLinkValues","type","onAccept","defaultValues","onCancel","defaultFileName","pathName","onAddFile","onAddLink","Boolean","px","gap","onClick","data","view","isDeleted","onRevert"],"sources":["Attachments.tsx"],"sourcesContent":["import React, {useMemo, useRef, useState} from 'react';\nimport {Button, Flex, Icon, Tab, TabList, TabPanel, TabProvider, Text} from '@gravity-ui/uikit';\nimport {AttachmentList, AttachmentListPlaceholder, EditAttachmentItem} from '../../components';\nimport {createUuid} from '../../helpers/createUuid';\nimport {isObjectEqual} from '../../helpers/isObjectEqual';\nimport {Plus} from '@gravity-ui/icons';\nimport type {\n AttachmentItemProps,\n AttachmentListPlaceholderProps,\n AttachmentListProps,\n EditLinkValues,\n} from '../../components';\nimport cn from 'bem-cn-lite';\n\nimport i18n from './i18n';\n\nimport './Attachments.scss';\n\ntype TabVariants = 'Current' | 'Deleted';\n\nexport type AttachItem = AttachmentItemProps['attachment'] & {token?: string; isNew?: boolean};\n\nexport type AttachmentsProps = {\n tokens?: {value: string; title: string}[];\n placeholderProps?: Omit<AttachmentListPlaceholderProps, 'onAddFile' | 'onAddLink'>;\n attachmentListProps?: Pick<AttachmentListProps, 'className'>;\n attachments?: AttachItem[];\n deletedAttachments?: AttachItem[];\n onItemClick?: AttachmentListProps<AttachItem>['onItemClick'];\n onChange?: (payload: {attachments: AttachItem[]; deletedAttachments: AttachItem[]}) => void;\n};\n\nconst block = cn('qp-attachments');\n\nexport const Attachments = ({\n tokens,\n placeholderProps,\n attachmentListProps,\n onChange,\n onItemClick,\n attachments: customerAttachments,\n deletedAttachments: customerDeletedAttachments,\n}: AttachmentsProps) => {\n const [currentTab, setCurrentTab] = useState<'Current' | 'Deleted'>('Current');\n\n const [innerAttachList, setInnerAttachList] = useState<AttachItem[]>(customerAttachments ?? []);\n const [innerDeletedAttachList, setInnerDeletedAttachList] = useState<AttachItem[]>(\n customerDeletedAttachments ?? [],\n );\n\n const [editingIds, setEditingIds] = useState<string[]>([]);\n const [wasAddedIds, setWasAddedIds] = useState<string[]>([]);\n const [wasEdited, setWasEditedIds] = useState<string[]>([]);\n\n const attachList = customerAttachments ?? innerAttachList;\n const deletedAttachList = customerDeletedAttachments ?? innerDeletedAttachList;\n\n const attachCount = useMemo(() => attachList.filter((a) => !a.isNew).length, [attachList]);\n\n const defaultAttachList = useRef(attachList);\n\n const getDefaultValuesForLink = (linkId: string) => {\n const currentLink = attachList.find((a) => a.id === linkId);\n return {\n name: currentLink?.name ?? '',\n link: currentLink?.link ?? '',\n token: currentLink?.token ?? '',\n };\n };\n\n const runAfterAttachAdded = (attachId: string, newAttach: AttachItem) => {\n const editedAttach = defaultAttachList.current.find((a) => a.id === attachId);\n\n if (!editedAttach) return;\n\n if (isObjectEqual(editedAttach, newAttach)) {\n setWasEditedIds(wasEdited.filter((id) => id !== attachId));\n return;\n }\n\n setWasEditedIds([...wasEdited, attachId]);\n };\n\n const handleAddEmptyFile = () => {\n const id = createUuid();\n\n const patchAttachList = [\n ...attachList.filter((a) => !a.isNew),\n {id, name: '', isNew: true},\n ];\n\n setInnerAttachList(patchAttachList);\n setWasAddedIds([...wasAddedIds, id]);\n setEditingIds([...editingIds, id]);\n\n onChange?.({\n attachments: patchAttachList,\n deletedAttachments: deletedAttachList,\n });\n };\n\n const handleAddEmptyLink = () => {\n const id = createUuid();\n\n const patchAttachList = [\n ...attachList.filter((a) => !a.isNew),\n {id, name: '', token: '', link: '', isNew: true},\n ];\n\n setInnerAttachList(patchAttachList);\n setWasAddedIds([...wasAddedIds, id]);\n setEditingIds([...editingIds, id]);\n\n onChange?.({\n attachments: patchAttachList,\n deletedAttachments: deletedAttachList,\n });\n };\n\n const handleAcceptFile = (fileId: string, fileName: string) => {\n const patchedFile = attachList.find((a) => a.id === fileId);\n if (!patchedFile) return;\n\n const patchEditingIds = editingIds.filter((id) => id !== fileId);\n const patchAttachList = attachList.map((attach) => {\n if (attach.id === fileId) return {id: fileId, name: fileName};\n return attach;\n });\n\n setEditingIds(patchEditingIds);\n setInnerAttachList(patchAttachList);\n\n onChange?.({\n attachments: patchAttachList,\n deletedAttachments: deletedAttachList,\n });\n\n runAfterAttachAdded(fileId, {id: fileId, name: fileName});\n };\n\n const handleAcceptLink = (linkId: string, link: EditLinkValues) => {\n const patchedLink = attachList.find((a) => a.id === linkId);\n if (!patchedLink) return;\n\n const patchEditingIds = editingIds.filter((id) => id !== linkId);\n const patchAttachList = attachList.map((attach) => {\n if (attach.id === linkId) return {id: linkId, ...link};\n return attach;\n });\n\n setEditingIds(patchEditingIds);\n setInnerAttachList(patchAttachList);\n\n onChange?.({\n attachments: patchAttachList,\n deletedAttachments: deletedAttachList,\n });\n\n runAfterAttachAdded(linkId, {id: linkId, ...link});\n };\n\n const handleCancelEdit = (fileId: string) => {\n const patchEditingIds = editingIds.filter((id) => id !== fileId);\n const patchAttachList = attachList.filter((a) => !a.isNew);\n\n const wasItNewAttach = attachList.some((a) => a.isNew);\n if (wasItNewAttach) {\n setWasAddedIds(wasAddedIds.filter((id) => id !== fileId));\n }\n\n setInnerAttachList(patchAttachList);\n setEditingIds(patchEditingIds);\n\n onChange?.({\n attachments: patchAttachList,\n deletedAttachments: deletedAttachList,\n });\n };\n\n const handleEdit = (editAttachId: string) => {\n const patchEditingIds = [...editingIds, editAttachId];\n\n setEditingIds(patchEditingIds);\n };\n\n const handleDelete = (attachId: string) => {\n const deletedAttachmen = attachList.find((a) => a.id === attachId);\n\n if (!deletedAttachmen) return;\n\n const patchAttachList = attachList.filter((a) => a.id !== attachId);\n const patchDeletedAttachList = [...deletedAttachList, deletedAttachmen];\n\n setInnerAttachList(patchAttachList);\n setInnerDeletedAttachList(patchDeletedAttachList);\n\n onChange?.({\n attachments: patchAttachList,\n deletedAttachments: patchDeletedAttachList,\n });\n };\n\n const handleDeleteAll = () => {\n const patchAttachList: never[] = [];\n const patchDeletedAttachList = [\n ...deletedAttachList,\n ...attachList.filter((a) => !a.isNew),\n ];\n\n setInnerAttachList(patchAttachList);\n setInnerDeletedAttachList(patchDeletedAttachList);\n\n onChange?.({\n attachments: patchAttachList,\n deletedAttachments: patchDeletedAttachList,\n });\n };\n\n const handleRevertDelete = (attachId: string) => {\n const revertAttach = deletedAttachList.find((a) => a.id === attachId);\n\n if (!revertAttach) return;\n\n const patchAttachList = [...attachList, revertAttach];\n const patchDeletedAttachList = deletedAttachList.filter((a) => a.id !== attachId);\n\n setInnerAttachList(patchAttachList);\n setInnerDeletedAttachList(patchDeletedAttachList);\n\n onChange?.({\n attachments: patchAttachList,\n deletedAttachments: patchDeletedAttachList,\n });\n };\n\n return (\n <Flex className={block()} direction=\"column\" width=\"100%\" height=\"100%\">\n <TabProvider value={currentTab} onUpdate={(tab) => setCurrentTab(tab as TabVariants)}>\n <TabList className={block('tab-list')}>\n <Tab className={block('tab')} value=\"Current\">\n <Text variant=\"body-1\">Current</Text>\n <Text color=\"hint\" variant=\"body-1\">\n {attachCount}\n </Text>\n </Tab>\n <Tab className={block('tab')} value=\"Deleted\">\n <Text variant=\"body-1\">Deleted</Text>\n <Text color=\"hint\" variant=\"body-1\">\n {deletedAttachList.length}\n </Text>\n </Tab>\n </TabList>\n\n <TabPanel className={block('panel')} value=\"Current\">\n <Flex spacing={{pt: 3}} direction=\"column\" width=\"100%\" height=\"100%\">\n {attachList.length ? (\n <AttachmentList\n {...attachmentListProps}\n attachments={attachList}\n wasAddedIds={wasAddedIds}\n wasEditedIds={wasEdited}\n editingIds={editingIds}\n onEdit={(attach) => handleEdit(attach.id)}\n onDelete={(attach) => handleDelete(attach.id)}\n onItemClick={onItemClick}\n renderEditForm={(attach) => {\n const isLink = typeof attach.link === 'string';\n\n if (isLink) {\n const defaultLinkValues = getDefaultValuesForLink(\n attach.id,\n );\n\n return (\n <EditAttachmentItem\n type=\"link\"\n onAccept={(link) =>\n handleAcceptLink(attach.id, link)\n }\n defaultValues={defaultLinkValues}\n tokens={tokens}\n onCancel={() => handleCancelEdit(attach.id)}\n />\n );\n }\n\n return (\n <EditAttachmentItem\n type=\"file\"\n defaultFileName={attach.name}\n onAccept={(pathName) =>\n handleAcceptFile(attach.id, pathName)\n }\n onCancel={() => handleCancelEdit(attach.id)}\n />\n );\n }}\n />\n ) : (\n <AttachmentListPlaceholder\n onAddFile={handleAddEmptyFile}\n onAddLink={handleAddEmptyLink}\n {...placeholderProps}\n />\n )}\n {Boolean(attachList.length) && (\n <Flex spacing={{px: 4}} gap={2}>\n <Button onClick={handleAddEmptyFile}>\n <Icon data={Plus} />\n {i18n('action_add-file')}\n </Button>\n\n <Button view=\"outlined\" onClick={handleAddEmptyLink}>\n <Icon data={Plus} />\n {i18n('action_add-link')}\n </Button>\n\n <Button view=\"flat\" onClick={handleDeleteAll}>\n {i18n('action_remove-all')}\n </Button>\n </Flex>\n )}\n </Flex>\n </TabPanel>\n\n <TabPanel className={block('panel')} value=\"Deleted\">\n <Flex spacing={{pt: 3}} width=\"100%\" height=\"100%\">\n <AttachmentList\n {...attachmentListProps}\n isDeleted\n attachments={deletedAttachList}\n onRevert={(attach) => handleRevertDelete(attach.id)}\n onItemClick={onItemClick}\n />\n </Flex>\n </TabPanel>\n </TabProvider>\n </Flex>\n );\n};\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -2,7 +2,7 @@ import React from 'react';
|
|
|
2
2
|
import type { StoryObj } from '@storybook/react';
|
|
3
3
|
declare const meta: {
|
|
4
4
|
title: string;
|
|
5
|
-
component: ({ tokens, placeholderProps, attachmentListProps, onChange, attachments: customerAttachments, deletedAttachments: customerDeletedAttachments, }: import("./Attachments").AttachmentsProps) => React.JSX.Element;
|
|
5
|
+
component: ({ tokens, placeholderProps, attachmentListProps, onChange, onItemClick, attachments: customerAttachments, deletedAttachments: customerDeletedAttachments, }: import("./Attachments").AttachmentsProps) => React.JSX.Element;
|
|
6
6
|
tags: string[];
|
|
7
7
|
parameters: {
|
|
8
8
|
layout: string;
|
|
@@ -16,6 +16,7 @@ declare const meta: {
|
|
|
16
16
|
attachmentListProps?: Pick<import("../..").AttachmentListProps, "className"> | undefined;
|
|
17
17
|
attachments?: import("./Attachments").AttachItem[] | undefined;
|
|
18
18
|
deletedAttachments?: import("./Attachments").AttachItem[] | undefined;
|
|
19
|
+
onItemClick?: ((item: import("@gravity-ui/uikit").ListItemData<import("./Attachments").AttachItem>, index: number, fromKeyboard?: boolean, event?: React.MouseEvent<HTMLDivElement, MouseEvent> | React.KeyboardEvent<HTMLElement>) => void) | undefined;
|
|
19
20
|
onChange?: ((payload: {
|
|
20
21
|
attachments: import("./Attachments").AttachItem[];
|
|
21
22
|
deletedAttachments: import("./Attachments").AttachItem[];
|
|
@@ -62,14 +62,16 @@ export var Default = {
|
|
|
62
62
|
description: 'Add files or links that should be available to the query.',
|
|
63
63
|
linkForDoc: '#attachments-help',
|
|
64
64
|
linkText: 'About attachments'
|
|
65
|
-
}
|
|
65
|
+
},
|
|
66
|
+
onItemClick: console.info
|
|
66
67
|
}
|
|
67
68
|
};
|
|
68
69
|
|
|
69
70
|
/** Initial files and links supplied through the uncontrolled `attachments` API. */
|
|
70
71
|
export var WithAttachments = {
|
|
71
72
|
args: {
|
|
72
|
-
attachments: attachments
|
|
73
|
+
attachments: attachments,
|
|
74
|
+
onItemClick: console.info
|
|
73
75
|
}
|
|
74
76
|
};
|
|
75
77
|
|
|
@@ -77,7 +79,8 @@ export var WithAttachments = {
|
|
|
77
79
|
export var WithDeletedAttachments = {
|
|
78
80
|
args: {
|
|
79
81
|
attachments: attachments,
|
|
80
|
-
deletedAttachments: deletedAttachments
|
|
82
|
+
deletedAttachments: deletedAttachments,
|
|
83
|
+
onItemClick: console.info
|
|
81
84
|
}
|
|
82
85
|
};
|
|
83
86
|
var ControlledAttachments = function ControlledAttachments(props) {
|
|
@@ -93,6 +96,7 @@ var ControlledAttachments = function ControlledAttachments(props) {
|
|
|
93
96
|
return /*#__PURE__*/_jsx(Attachments, _objectSpread(_objectSpread({}, props), {}, {
|
|
94
97
|
attachments: currentAttachments,
|
|
95
98
|
deletedAttachments: currentDeletedAttachments,
|
|
99
|
+
onItemClick: console.info,
|
|
96
100
|
onChange: function onChange(payload) {
|
|
97
101
|
var _props$onChange;
|
|
98
102
|
setCurrentAttachments(payload.attachments);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","useState","fn","Attachments","jsx","_jsx","attachments","id","name","link","token","deletedAttachments","tokens","value","title","meta","component","tags","parameters","layout","decorators","Story","style","height","width","children","args","onChange","Default","placeholderProps","description","linkForDoc","linkText","WithAttachments","WithDeletedAttachments","ControlledAttachments","props","_props$attachments","_props$deletedAttachm","_useState","_useState2","_slicedToArray","currentAttachments","setCurrentAttachments","_useState3","_useState4","currentDeletedAttachments","setCurrentDeletedAttachments","_objectSpread","payload","_props$onChange","call","Controlled","render"],"sources":["Attachments.stories.tsx"],"sourcesContent":["import React, {useState} from 'react';\nimport type {Meta, StoryObj} from '@storybook/react';\nimport {fn} from 'storybook/test';\nimport {Attachments} from './Attachments';\n\ntype AttachmentsProps = React.ComponentProps<typeof Attachments>;\ntype Attachment = NonNullable<AttachmentsProps['attachments']>[number];\n\nconst attachments: Attachment[] = [\n {id: 'readme', name: 'README.md'},\n {id: 'query', name: 'daily-report.sql'},\n {\n id: 'documentation',\n name: 'Query documentation',\n link: 'https://example.com/docs/query',\n token: 'documentation-token',\n },\n];\n\nconst deletedAttachments: Attachment[] = [\n {id: 'archive', name: 'archive.csv'},\n {\n id: 'old-dashboard',\n name: 'Old dashboard',\n link: 'https://example.com/dashboards/old',\n token: 'dashboard-token',\n },\n];\n\nconst tokens: NonNullable<AttachmentsProps['tokens']> = [\n {value: 'documentation-token', title: 'Documentation token'},\n {value: 'dashboard-token', title: 'Dashboard token'},\n];\n\nconst meta = {\n title: 'Modules/Attachments',\n component: Attachments,\n tags: ['autodocs'],\n parameters: {\n layout: 'padded',\n },\n decorators: [\n (Story) => (\n <div style={{height: 500, width: 322}}>\n <Story />\n </div>\n ),\n ],\n args: {\n tokens,\n onChange: fn(),\n },\n} satisfies Meta<typeof Attachments>;\n\nexport default meta;\ntype Story = StoryObj<typeof meta>;\n\n/** Empty state with content configured through `placeholderProps`. */\nexport const Default: Story = {\n args: {\n placeholderProps: {\n title: 'No attachments',\n description: 'Add files or links that should be available to the query.',\n linkForDoc: '#attachments-help',\n linkText: 'About attachments',\n },\n },\n};\n\n/** Initial files and links supplied through the uncontrolled `attachments` API. */\nexport const WithAttachments: Story = {\n args: {\n attachments,\n },\n};\n\n/** Current and deleted collections. Open the Deleted tab to restore an attachment. */\nexport const WithDeletedAttachments: Story = {\n args: {\n attachments,\n deletedAttachments,\n },\n};\n\nconst ControlledAttachments = (props: AttachmentsProps) => {\n const [currentAttachments, setCurrentAttachments] = useState(props.attachments ?? []);\n const [currentDeletedAttachments, setCurrentDeletedAttachments] = useState(\n props.deletedAttachments ?? [],\n );\n\n return (\n <Attachments\n {...props}\n attachments={currentAttachments}\n deletedAttachments={currentDeletedAttachments}\n onChange={(payload) => {\n setCurrentAttachments(payload.attachments);\n setCurrentDeletedAttachments(payload.deletedAttachments);\n props.onChange?.(payload);\n }}\n />\n );\n};\n\n/** Controlled usage: every edit, delete, restore, or addition is applied from `onChange`. */\nexport const Controlled: Story = {\n args: {\n attachments,\n deletedAttachments,\n },\n render: (args) => <ControlledAttachments {...args} />,\n};\n"],"mappings":";;AAAA,OAAOA,KAAK,IAAGC,QAAQ,QAAO,OAAO;AAErC,SAAQC,EAAE,QAAO,gBAAgB;AACjC,SAAQC,WAAW;AAAuB,SAAAC,GAAA,IAAAC,IAAA;AAK1C,IAAMC,WAAyB,GAAG,CAC9B;EAACC,EAAE,EAAE,QAAQ;EAAEC,IAAI,EAAE;AAAW,CAAC,EACjC;EAACD,EAAE,EAAE,OAAO;EAAEC,IAAI,EAAE;AAAkB,CAAC,EACvC;EACID,EAAE,EAAE,eAAe;EACnBC,IAAI,EAAE,qBAAqB;EAC3BC,IAAI,EAAE,gCAAgC;EACtCC,KAAK,EAAE;AACX,CAAC,CACJ;AAED,IAAMC,kBAAgC,GAAG,CACrC;EAACJ,EAAE,EAAE,SAAS;EAAEC,IAAI,EAAE;AAAa,CAAC,EACpC;EACID,EAAE,EAAE,eAAe;EACnBC,IAAI,EAAE,eAAe;EACrBC,IAAI,EAAE,oCAAoC;EAC1CC,KAAK,EAAE;AACX,CAAC,CACJ;AAED,IAAME,MAA+C,GAAG,CACpD;EAACC,KAAK,EAAE,qBAAqB;EAAEC,KAAK,EAAE;AAAqB,CAAC,EAC5D;EAACD,KAAK,EAAE,iBAAiB;EAAEC,KAAK,EAAE;AAAiB,CAAC,CACvD;AAED,IAAMC,IAAI,GAAG;EACTD,KAAK,EAAE,qBAAqB;EAC5BE,SAAS,EAAEb,WAAW;EACtBc,IAAI,EAAE,CAAC,UAAU,CAAC;EAClBC,UAAU,EAAE;IACRC,MAAM,EAAE;EACZ,CAAC;EACDC,UAAU,EAAE,CACR,UAACC,KAAK;IAAA,oBACFhB,IAAA;MAAKiB,KAAK,EAAE;QAACC,MAAM,EAAE,GAAG;QAAEC,KAAK,EAAE;MAAG,CAAE;MAAAC,QAAA,eAClCpB,IAAA,CAACgB,KAAK,IAAE;IAAC,CACR,CAAC;EAAA,CACT,CACJ;EACDK,IAAI,EAAE;IACFd,MAAM,EAANA,MAAM;IACNe,QAAQ,EAAEzB,EAAE,CAAC;EACjB;AACJ,CAAoC;AAEpC,eAAea,IAAI;AAGnB;AACA,OAAO,IAAMa,OAAc,GAAG;EAC1BF,IAAI,EAAE;IACFG,gBAAgB,EAAE;MACdf,KAAK,EAAE,gBAAgB;MACvBgB,WAAW,EAAE,2DAA2D;MACxEC,UAAU,EAAE,mBAAmB;MAC/BC,QAAQ,EAAE;IACd;
|
|
1
|
+
{"version":3,"names":["React","useState","fn","Attachments","jsx","_jsx","attachments","id","name","link","token","deletedAttachments","tokens","value","title","meta","component","tags","parameters","layout","decorators","Story","style","height","width","children","args","onChange","Default","placeholderProps","description","linkForDoc","linkText","onItemClick","console","info","WithAttachments","WithDeletedAttachments","ControlledAttachments","props","_props$attachments","_props$deletedAttachm","_useState","_useState2","_slicedToArray","currentAttachments","setCurrentAttachments","_useState3","_useState4","currentDeletedAttachments","setCurrentDeletedAttachments","_objectSpread","payload","_props$onChange","call","Controlled","render"],"sources":["Attachments.stories.tsx"],"sourcesContent":["import React, {useState} from 'react';\nimport type {Meta, StoryObj} from '@storybook/react';\nimport {fn} from 'storybook/test';\nimport {Attachments} from './Attachments';\n\ntype AttachmentsProps = React.ComponentProps<typeof Attachments>;\ntype Attachment = NonNullable<AttachmentsProps['attachments']>[number];\n\nconst attachments: Attachment[] = [\n {id: 'readme', name: 'README.md'},\n {id: 'query', name: 'daily-report.sql'},\n {\n id: 'documentation',\n name: 'Query documentation',\n link: 'https://example.com/docs/query',\n token: 'documentation-token',\n },\n];\n\nconst deletedAttachments: Attachment[] = [\n {id: 'archive', name: 'archive.csv'},\n {\n id: 'old-dashboard',\n name: 'Old dashboard',\n link: 'https://example.com/dashboards/old',\n token: 'dashboard-token',\n },\n];\n\nconst tokens: NonNullable<AttachmentsProps['tokens']> = [\n {value: 'documentation-token', title: 'Documentation token'},\n {value: 'dashboard-token', title: 'Dashboard token'},\n];\n\nconst meta = {\n title: 'Modules/Attachments',\n component: Attachments,\n tags: ['autodocs'],\n parameters: {\n layout: 'padded',\n },\n decorators: [\n (Story) => (\n <div style={{height: 500, width: 322}}>\n <Story />\n </div>\n ),\n ],\n args: {\n tokens,\n onChange: fn(),\n },\n} satisfies Meta<typeof Attachments>;\n\nexport default meta;\ntype Story = StoryObj<typeof meta>;\n\n/** Empty state with content configured through `placeholderProps`. */\nexport const Default: Story = {\n args: {\n placeholderProps: {\n title: 'No attachments',\n description: 'Add files or links that should be available to the query.',\n linkForDoc: '#attachments-help',\n linkText: 'About attachments',\n },\n onItemClick: console.info,\n },\n};\n\n/** Initial files and links supplied through the uncontrolled `attachments` API. */\nexport const WithAttachments: Story = {\n args: {\n attachments,\n onItemClick: console.info,\n },\n};\n\n/** Current and deleted collections. Open the Deleted tab to restore an attachment. */\nexport const WithDeletedAttachments: Story = {\n args: {\n attachments,\n deletedAttachments,\n onItemClick: console.info,\n },\n};\n\nconst ControlledAttachments = (props: AttachmentsProps) => {\n const [currentAttachments, setCurrentAttachments] = useState(props.attachments ?? []);\n const [currentDeletedAttachments, setCurrentDeletedAttachments] = useState(\n props.deletedAttachments ?? [],\n );\n\n return (\n <Attachments\n {...props}\n attachments={currentAttachments}\n deletedAttachments={currentDeletedAttachments}\n onItemClick={console.info}\n onChange={(payload) => {\n setCurrentAttachments(payload.attachments);\n setCurrentDeletedAttachments(payload.deletedAttachments);\n props.onChange?.(payload);\n }}\n />\n );\n};\n\n/** Controlled usage: every edit, delete, restore, or addition is applied from `onChange`. */\nexport const Controlled: Story = {\n args: {\n attachments,\n deletedAttachments,\n },\n render: (args) => <ControlledAttachments {...args} />,\n};\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -24,7 +24,7 @@ export var HistoryLayout = function HistoryLayout(_ref) {
|
|
|
24
24
|
alignItems: "center",
|
|
25
25
|
justifyContent: logo ? 'space-between' : 'flex-end',
|
|
26
26
|
children: [logo, actions]
|
|
27
|
-
}), /*#__PURE__*/_jsx(Text, {
|
|
27
|
+
}), title !== null && /*#__PURE__*/_jsx(Text, {
|
|
28
28
|
variant: "subheader-1",
|
|
29
29
|
children: title
|
|
30
30
|
}), header]
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","Flex","Text","cn","jsxs","_jsxs","jsx","_jsx","block","HistoryLayout","_ref","title","logo","actions","header","footer","className","children","direction","gap","alignItems","justifyContent","variant"],"sources":["HistoryLayout.tsx"],"sourcesContent":["import React, {FC, ReactNode} from 'react';\nimport {Flex, Text} from '@gravity-ui/uikit';\nimport cn from 'bem-cn-lite';\nimport './HistoryLayout.scss';\n\nconst block = cn('qp-history-layout');\n\nexport type HistoryLayoutProps = {\n title
|
|
1
|
+
{"version":3,"names":["React","Flex","Text","cn","jsxs","_jsxs","jsx","_jsx","block","HistoryLayout","_ref","title","logo","actions","header","footer","className","children","direction","gap","alignItems","justifyContent","variant"],"sources":["HistoryLayout.tsx"],"sourcesContent":["import React, {FC, ReactNode} from 'react';\nimport {Flex, Text} from '@gravity-ui/uikit';\nimport cn from 'bem-cn-lite';\nimport './HistoryLayout.scss';\n\nconst block = cn('qp-history-layout');\n\nexport type HistoryLayoutProps = {\n title?: ReactNode;\n logo?: ReactNode;\n actions?: ReactNode;\n header?: ReactNode;\n footer?: ReactNode;\n className?: string;\n children: ReactNode;\n};\n\nexport const HistoryLayout: FC<HistoryLayoutProps> = ({\n title,\n logo,\n actions,\n header,\n footer,\n className,\n children,\n}) => {\n return (\n <Flex direction=\"column\" gap={1} className={block(null, className)}>\n <Flex direction=\"column\" gap={1} className={block('header')}>\n {(logo || actions) && (\n <Flex alignItems=\"center\" justifyContent={logo ? 'space-between' : 'flex-end'}>\n {logo}\n {actions}\n </Flex>\n )}\n {title !== null && <Text variant=\"subheader-1\">{title}</Text>}\n {header}\n </Flex>\n {children}\n {footer}\n </Flex>\n );\n};\n"],"mappings":"AAAA,OAAOA,KAAK,MAAuB,OAAO;AAC1C,SAAQC,IAAI,EAAEC,IAAI,QAAO,mBAAmB;AAC5C,OAAOC,EAAE,MAAM,aAAa;AAC5B;AAA8B,SAAAC,IAAA,IAAAC,KAAA,EAAAC,GAAA,IAAAC,IAAA;AAE9B,IAAMC,KAAK,GAAGL,EAAE,CAAC,mBAAmB,CAAC;AAYrC,OAAO,IAAMM,aAAqC,GAAG,SAAxCA,aAAqCA,CAAAC,IAAA,EAQ5C;EAAA,IAPFC,KAAK,GAAAD,IAAA,CAALC,KAAK;IACLC,IAAI,GAAAF,IAAA,CAAJE,IAAI;IACJC,OAAO,GAAAH,IAAA,CAAPG,OAAO;IACPC,MAAM,GAAAJ,IAAA,CAANI,MAAM;IACNC,MAAM,GAAAL,IAAA,CAANK,MAAM;IACNC,SAAS,GAAAN,IAAA,CAATM,SAAS;IACTC,QAAQ,GAAAP,IAAA,CAARO,QAAQ;EAER,oBACIZ,KAAA,CAACJ,IAAI;IAACiB,SAAS,EAAC,QAAQ;IAACC,GAAG,EAAE,CAAE;IAACH,SAAS,EAAER,KAAK,CAAC,IAAI,EAAEQ,SAAS,CAAE;IAAAC,QAAA,gBAC/DZ,KAAA,CAACJ,IAAI;MAACiB,SAAS,EAAC,QAAQ;MAACC,GAAG,EAAE,CAAE;MAACH,SAAS,EAAER,KAAK,CAAC,QAAQ,CAAE;MAAAS,QAAA,GACvD,CAACL,IAAI,IAAIC,OAAO,kBACbR,KAAA,CAACJ,IAAI;QAACmB,UAAU,EAAC,QAAQ;QAACC,cAAc,EAAET,IAAI,GAAG,eAAe,GAAG,UAAW;QAAAK,QAAA,GACzEL,IAAI,EACJC,OAAO;MAAA,CACN,CACT,EACAF,KAAK,KAAK,IAAI,iBAAIJ,IAAA,CAACL,IAAI;QAACoB,OAAO,EAAC,aAAa;QAAAL,QAAA,EAAEN;MAAK,CAAO,CAAC,EAC5DG,MAAM;IAAA,CACL,CAAC,EACNG,QAAQ,EACRF,MAAM;EAAA,CACL,CAAC;AAEf,CAAC","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["RowsList.scss"],"names":[],"mappings":"AACE;EACE,qDAAA;
|
|
1
|
+
{"version":3,"sources":["RowsList.scss"],"names":[],"mappings":"AAAA;EACE,YAAA;EACA,cAAA;AACF;AACE;EACE,qDAAA;AACJ","file":"RowsList.css","sourcesContent":[".qp-rows-list {\n height: 100%;\n overflow: auto;\n\n .g-list__item_selected:hover {\n background-color: var(--g-color-base-selection-hover);\n }\n}\n"],"sourceRoot":""}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":[],"sources":["queryList.ts"],"sourcesContent":["import {ReactNode} from 'react';\nimport {RegisteredFormFields} from './forms';\n\n/** ISO 8601 date string or Unix timestamp in milliseconds. */\nexport type QueryTimestamp = string | number;\n\nexport type QueryListRowRenderProps = {height: number};\n\nexport type QueryListHeader = {header: string} & QueryListRowRenderProps;\n\nexport type QueryListRow = {\n id: number;\n title: string;\n query?: string;\n href?: string;\n} & QueryListRowRenderProps;\n\nexport type QueryListItem<T extends QueryListRow = QueryListRow> = QueryListHeader | T;\n\nexport type QueryListRowVariant = 'default' | 'search';\n\nexport type QueryListRowAction<T extends QueryListRow = QueryListRow> = {\n text: ReactNode;\n icon?: ReactNode;\n theme?: 'normal' | 'danger';\n hidden?: boolean;\n disabled?: boolean;\n onClick: (item: T) => void;\n};\n\nexport type QueryListSearchConfig = {\n value?: string;\n fullSearch?: boolean;\n hasClear?: boolean;\n onUpdate: (data: {value: string; fullSearch: boolean}) => void;\n};\n\nexport type QueryListFilterConfig = {\n fields?: RegisteredFormFields[];\n values?: Record<string, any>;\n initialValues?: Record<string, any>;\n isChanged?: boolean;\n onApply?: (values: Record<string, any>) => void;\n onReset?: () => void;\n};\n\nexport type QueryListEditingConfig<T extends QueryListRow = QueryListRow> = {\n rowId?: T['id'];\n onSubmit?: (item: T, title: string) => void;\n onCancel?: (item: T) => void;\n};\n\nexport type QueryListComparisonConfig<T extends QueryListRow = QueryListRow> = {\n enabled: boolean;\n comparedRowIds: T['id'][];\n onChange: (item: T, selected: boolean) => void;\n onCancel: () => void;\n onCompare: () => void;\n};\n\ntype RowFieldKey<T extends QueryListRow> = Exclude<keyof T & string, keyof QueryListRowRenderProps>;\n\nexport type QueryListFieldKey<T extends QueryListRow = QueryListRow> = RowFieldKey<T> | 'duration';\n\nexport type QueryListFieldOption<K extends string = string> = {\n id: K;\n title: ReactNode;\n};\n\nexport type QueryListVisibleFieldsConfig<T extends QueryListRow = QueryListRow> = {\n value: QueryListFieldKey<T>[];\n fields: QueryListFieldOption<QueryListFieldKey<T>>[];\n onChange: (value: QueryListFieldKey<T>[]) => void;\n};\n\nexport type QueryListEditingRenderData<T extends QueryListRow = QueryListRow> = {\n enabled: boolean;\n} & Pick<QueryListEditingConfig<T>, 'onSubmit' | 'onCancel'>;\n\nexport type QueryListRowRenderData<T extends QueryListRow = QueryListRow> = {\n item: QueryListItem<T>;\n index: number;\n isActive: boolean;\n variant: QueryListRowVariant;\n comparison?: {\n enabled: boolean;\n checked: boolean;\n };\n visibleFields?: QueryListVisibleFieldsConfig<T>;\n actions?: QueryListRowAction<T>[];\n editing?: QueryListEditingRenderData<T>;\n};\n"],"mappings":"","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":[],"sources":["queryList.ts"],"sourcesContent":["import {ReactNode} from 'react';\nimport {RegisteredFormFields} from './forms';\n\n/** ISO 8601 date string or Unix timestamp in milliseconds. */\nexport type QueryTimestamp = string | number;\n\nexport type QueryListRowRenderProps = {height: number};\n\nexport type QueryListHeader = {header: string} & QueryListRowRenderProps;\n\nexport type QueryListRow = {\n id: number | string;\n title: string;\n query?: string;\n href?: string;\n} & QueryListRowRenderProps;\n\nexport type QueryListItem<T extends QueryListRow = QueryListRow> = QueryListHeader | T;\n\nexport type QueryListRowVariant = 'default' | 'search';\n\nexport type QueryListRowAction<T extends QueryListRow = QueryListRow> = {\n text: ReactNode;\n icon?: ReactNode;\n theme?: 'normal' | 'danger';\n hidden?: boolean;\n disabled?: boolean;\n onClick: (item: T) => void;\n};\n\nexport type QueryListSearchConfig = {\n value?: string;\n fullSearch?: boolean;\n hasClear?: boolean;\n onUpdate: (data: {value: string; fullSearch: boolean}) => void;\n};\n\nexport type QueryListFilterConfig = {\n fields?: RegisteredFormFields[];\n values?: Record<string, any>;\n initialValues?: Record<string, any>;\n isChanged?: boolean;\n onApply?: (values: Record<string, any>) => void;\n onReset?: () => void;\n};\n\nexport type QueryListEditingConfig<T extends QueryListRow = QueryListRow> = {\n rowId?: T['id'];\n onSubmit?: (item: T, title: string) => void;\n onCancel?: (item: T) => void;\n};\n\nexport type QueryListComparisonConfig<T extends QueryListRow = QueryListRow> = {\n enabled: boolean;\n comparedRowIds: T['id'][];\n onChange: (item: T, selected: boolean) => void;\n onCancel: () => void;\n onCompare: () => void;\n};\n\ntype RowFieldKey<T extends QueryListRow> = Exclude<keyof T & string, keyof QueryListRowRenderProps>;\n\nexport type QueryListFieldKey<T extends QueryListRow = QueryListRow> = RowFieldKey<T> | 'duration';\n\nexport type QueryListFieldOption<K extends string = string> = {\n id: K;\n title: ReactNode;\n};\n\nexport type QueryListVisibleFieldsConfig<T extends QueryListRow = QueryListRow> = {\n value: QueryListFieldKey<T>[];\n fields: QueryListFieldOption<QueryListFieldKey<T>>[];\n onChange: (value: QueryListFieldKey<T>[]) => void;\n};\n\nexport type QueryListEditingRenderData<T extends QueryListRow = QueryListRow> = {\n enabled: boolean;\n} & Pick<QueryListEditingConfig<T>, 'onSubmit' | 'onCancel'>;\n\nexport type QueryListRowRenderData<T extends QueryListRow = QueryListRow> = {\n item: QueryListItem<T>;\n index: number;\n isActive: boolean;\n variant: QueryListRowVariant;\n comparison?: {\n enabled: boolean;\n checked: boolean;\n };\n visibleFields?: QueryListVisibleFieldsConfig<T>;\n actions?: QueryListRowAction<T>[];\n editing?: QueryListEditingRenderData<T>;\n};\n"],"mappings":"","ignoreList":[]}
|
|
@@ -8,7 +8,6 @@ import "core-js/modules/es.string.search.js";
|
|
|
8
8
|
import React from 'react';
|
|
9
9
|
import cn from 'bem-cn-lite';
|
|
10
10
|
import { QueriesList } from "../../modules";
|
|
11
|
-
import i18n from "./i18n";
|
|
12
11
|
import { HistoryRowContent } from "./internal/HistoryRowContent";
|
|
13
12
|
import "./QueriesHistory.css";
|
|
14
13
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
@@ -29,7 +28,7 @@ export var QueriesHistory = function QueriesHistory(_ref) {
|
|
|
29
28
|
className = _ref.className;
|
|
30
29
|
return /*#__PURE__*/_jsx(QueriesList, {
|
|
31
30
|
className: block(null, className),
|
|
32
|
-
title: title
|
|
31
|
+
title: title,
|
|
33
32
|
logo: logo,
|
|
34
33
|
search: search,
|
|
35
34
|
filter: filter,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","cn","QueriesList","
|
|
1
|
+
{"version":3,"names":["React","cn","QueriesList","HistoryRowContent","jsx","_jsx","block","QueriesHistory","_ref","title","logo","search","filter","items","selectedRowId","editing","comparison","visibleFields","renderRowItem","getRowActions","onListItemClick","className","renderRow","data","_objectSpread"],"sources":["QueriesHistory.tsx"],"sourcesContent":["import React from 'react';\nimport cn from 'bem-cn-lite';\nimport {QueriesList} from '../../modules';\nimport {\n QueryListComparisonConfig,\n QueryListEditingConfig,\n QueryListFilterConfig,\n QueryListItem,\n QueryListRowAction,\n QueryListRowRenderData,\n QueryListSearchConfig,\n QueryListVisibleFieldsConfig,\n} from '../../types/queryList';\nimport {QueryHistoryRow} from '../../types/history';\nimport {HistoryRowContent} from './internal/HistoryRowContent';\nimport './QueriesHistory.scss';\n\nexport type QueriesHistoryProps<T extends QueryHistoryRow = QueryHistoryRow> = {\n className?: string;\n title?: string;\n logo?: React.ReactNode;\n search: QueryListSearchConfig;\n filter?: QueryListFilterConfig;\n items: QueryListItem<T>[];\n selectedRowId?: T['id'];\n editing?: QueryListEditingConfig<T>;\n comparison?: QueryListComparisonConfig<T>;\n visibleFields?: QueryListVisibleFieldsConfig<T>;\n renderRowItem?: (data: QueryListRowRenderData<T>) => React.ReactNode;\n getRowActions?: (item: T) => QueryListRowAction<T>[];\n onListItemClick?: (item: QueryListItem<T>) => void;\n};\n\nconst block = cn('qp-query-history');\n\nexport const QueriesHistory = <T extends QueryHistoryRow>({\n title,\n logo,\n search,\n filter,\n items,\n selectedRowId,\n editing,\n comparison,\n visibleFields,\n renderRowItem,\n getRowActions,\n onListItemClick,\n className,\n}: QueriesHistoryProps<T>) => {\n return (\n <QueriesList\n className={block(null, className)}\n title={title}\n logo={logo}\n search={search}\n filter={filter}\n items={items}\n selectedRowId={selectedRowId}\n visibleFields={visibleFields}\n editing={editing}\n comparison={comparison}\n getRowActions={getRowActions}\n renderRow={(data) =>\n renderRowItem ? renderRowItem(data) : <HistoryRowContent {...data} />\n }\n onListItemClick={onListItemClick}\n />\n );\n};\n"],"mappings":";;;;;;;AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,OAAOC,EAAE,MAAM,aAAa;AAC5B,SAAQC,WAAW;AAYnB,SAAQC,iBAAiB;AACzB;AAA+B,SAAAC,GAAA,IAAAC,IAAA;AAkB/B,IAAMC,KAAK,GAAGL,EAAE,CAAC,kBAAkB,CAAC;AAEpC,OAAO,IAAMM,cAAc,GAAG,SAAjBA,cAAcA,CAAAC,IAAA,EAcG;EAAA,IAb1BC,KAAK,GAAAD,IAAA,CAALC,KAAK;IACLC,IAAI,GAAAF,IAAA,CAAJE,IAAI;IACJC,MAAM,GAAAH,IAAA,CAANG,MAAM;IACNC,MAAM,GAAAJ,IAAA,CAANI,MAAM;IACNC,KAAK,GAAAL,IAAA,CAALK,KAAK;IACLC,aAAa,GAAAN,IAAA,CAAbM,aAAa;IACbC,OAAO,GAAAP,IAAA,CAAPO,OAAO;IACPC,UAAU,GAAAR,IAAA,CAAVQ,UAAU;IACVC,aAAa,GAAAT,IAAA,CAAbS,aAAa;IACbC,aAAa,GAAAV,IAAA,CAAbU,aAAa;IACbC,aAAa,GAAAX,IAAA,CAAbW,aAAa;IACbC,eAAe,GAAAZ,IAAA,CAAfY,eAAe;IACfC,SAAS,GAAAb,IAAA,CAATa,SAAS;EAET,oBACIhB,IAAA,CAACH,WAAW;IACRmB,SAAS,EAAEf,KAAK,CAAC,IAAI,EAAEe,SAAS,CAAE;IAClCZ,KAAK,EAAEA,KAAM;IACbC,IAAI,EAAEA,IAAK;IACXC,MAAM,EAAEA,MAAO;IACfC,MAAM,EAAEA,MAAO;IACfC,KAAK,EAAEA,KAAM;IACbC,aAAa,EAAEA,aAAc;IAC7BG,aAAa,EAAEA,aAAc;IAC7BF,OAAO,EAAEA,OAAQ;IACjBC,UAAU,EAAEA,UAAW;IACvBG,aAAa,EAAEA,aAAc;IAC7BG,SAAS,EAAE,SAAXA,SAASA,CAAGC,IAAI;MAAA,OACZL,aAAa,GAAGA,aAAa,CAACK,IAAI,CAAC,gBAAGlB,IAAA,CAACF,iBAAiB,EAAAqB,aAAA,KAAKD,IAAI,CAAG,CAAC;IAAA,CACxE;IACDH,eAAe,EAAEA;EAAgB,CACpC,CAAC;AAEV,CAAC","ignoreList":[]}
|
|
@@ -12,6 +12,7 @@ import "core-js/modules/es.iterator.filter.js";
|
|
|
12
12
|
import "core-js/modules/es.object.to-string.js";
|
|
13
13
|
import "core-js/modules/es.string.includes.js";
|
|
14
14
|
import React, { useState } from 'react';
|
|
15
|
+
import { SegmentedRadioGroup } from '@gravity-ui/uikit';
|
|
15
16
|
import { QueriesHistory } from "./QueriesHistory";
|
|
16
17
|
import { action } from 'storybook/actions';
|
|
17
18
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
@@ -72,6 +73,33 @@ var BASE_ITEMS = [{
|
|
|
72
73
|
startTime: now - 30 * 60 * min,
|
|
73
74
|
query: QUERY,
|
|
74
75
|
height: 52
|
|
76
|
+
}, {
|
|
77
|
+
id: 6,
|
|
78
|
+
title: 'Query 6',
|
|
79
|
+
status: 'draft',
|
|
80
|
+
engine: 'YQL',
|
|
81
|
+
mode: 'Test',
|
|
82
|
+
startTime: now - 30 * 60 * min,
|
|
83
|
+
query: QUERY,
|
|
84
|
+
height: 52
|
|
85
|
+
}, {
|
|
86
|
+
id: 7,
|
|
87
|
+
title: 'Query 7',
|
|
88
|
+
status: 'draft',
|
|
89
|
+
engine: 'YQL',
|
|
90
|
+
mode: 'Test',
|
|
91
|
+
startTime: now - 30 * 60 * min,
|
|
92
|
+
query: QUERY,
|
|
93
|
+
height: 52
|
|
94
|
+
}, {
|
|
95
|
+
id: 8,
|
|
96
|
+
title: 'Query 8',
|
|
97
|
+
status: 'draft',
|
|
98
|
+
engine: 'YQL',
|
|
99
|
+
mode: 'Test',
|
|
100
|
+
startTime: now - 30 * 60 * min,
|
|
101
|
+
query: QUERY,
|
|
102
|
+
height: 52
|
|
75
103
|
}];
|
|
76
104
|
var activeFields = ['duration', 'mode', 'startTime', 'engine', 'isPrivate'];
|
|
77
105
|
var fields = [{
|
|
@@ -122,6 +150,13 @@ var meta = {
|
|
|
122
150
|
layout: 'padded'
|
|
123
151
|
}
|
|
124
152
|
};
|
|
153
|
+
var operationFilterOptions = [{
|
|
154
|
+
value: 'My',
|
|
155
|
+
content: 'My'
|
|
156
|
+
}, {
|
|
157
|
+
value: 'All',
|
|
158
|
+
content: 'All'
|
|
159
|
+
}];
|
|
125
160
|
export default meta;
|
|
126
161
|
var DefaultStory = function DefaultStory() {
|
|
127
162
|
var _useState = useState([].concat(BASE_ITEMS)),
|
|
@@ -277,6 +312,47 @@ var EmptyStory = function EmptyStory() {
|
|
|
277
312
|
})
|
|
278
313
|
});
|
|
279
314
|
};
|
|
315
|
+
var WithHeaderStory = function WithHeaderStory() {
|
|
316
|
+
var _useState13 = useState({
|
|
317
|
+
value: '',
|
|
318
|
+
fullSearch: false
|
|
319
|
+
}),
|
|
320
|
+
_useState14 = _slicedToArray(_useState13, 2),
|
|
321
|
+
search = _useState14[0],
|
|
322
|
+
setSearch = _useState14[1];
|
|
323
|
+
var _useState15 = useState(activeFields),
|
|
324
|
+
_useState16 = _slicedToArray(_useState15, 2),
|
|
325
|
+
visibleFields = _useState16[0],
|
|
326
|
+
setVisibleFields = _useState16[1];
|
|
327
|
+
return /*#__PURE__*/_jsx("div", {
|
|
328
|
+
style: {
|
|
329
|
+
width: 300,
|
|
330
|
+
height: 500
|
|
331
|
+
},
|
|
332
|
+
children: /*#__PURE__*/_jsx(QueriesHistory, {
|
|
333
|
+
items: BASE_ITEMS,
|
|
334
|
+
logo: /*#__PURE__*/_jsx(SegmentedRadioGroup, {
|
|
335
|
+
options: operationFilterOptions
|
|
336
|
+
}),
|
|
337
|
+
visibleFields: {
|
|
338
|
+
value: visibleFields,
|
|
339
|
+
fields: fields,
|
|
340
|
+
onChange: setVisibleFields
|
|
341
|
+
},
|
|
342
|
+
filter: {
|
|
343
|
+
fields: filterFields,
|
|
344
|
+
onApply: logFilterApply,
|
|
345
|
+
onReset: logFilterReset('reset')
|
|
346
|
+
},
|
|
347
|
+
search: {
|
|
348
|
+
value: search.value,
|
|
349
|
+
fullSearch: search.fullSearch,
|
|
350
|
+
hasClear: true,
|
|
351
|
+
onUpdate: setSearch
|
|
352
|
+
}
|
|
353
|
+
})
|
|
354
|
+
});
|
|
355
|
+
};
|
|
280
356
|
export var Default = {
|
|
281
357
|
render: function render() {
|
|
282
358
|
return /*#__PURE__*/_jsx(DefaultStory, {});
|
|
@@ -287,4 +363,9 @@ export var Empty = {
|
|
|
287
363
|
return /*#__PURE__*/_jsx(EmptyStory, {});
|
|
288
364
|
}
|
|
289
365
|
};
|
|
366
|
+
export var WithHeader = {
|
|
367
|
+
render: function render() {
|
|
368
|
+
return /*#__PURE__*/_jsx(WithHeaderStory, {});
|
|
369
|
+
}
|
|
370
|
+
};
|
|
290
371
|
// #sourceMappingURL=QueriesHistory.stories.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","useState","QueriesHistory","action","jsx","_jsx","now","Date","min","QUERY","BASE_ITEMS","header","height","id","title","status","engine","mode","startTime","endTime","query","activeFields","fields","filterFields","type","initialValue","items","logFilterApply","logFilterReset","meta","component","tags","parameters","layout","DefaultStory","_useState","concat","_useState2","_slicedToArray","setItems","_useState3","value","fullSearch","_useState4","search","setSearch","_useState5","_useState6","visibleFields","setVisibleFields","_useState7","_useState8","compareMode","setCompareMode","_useState9","_useState0","comparedRows","setComparedRows","_useState1","undefined","_useState10","editingId","setEditingId","handleCompareChange","item","selected","result","_toConsumableArray","slice","filter","length","handleCompareCancel","handleEditSubmit","index","findIndex","i","_objectSpread","handleEditCancel","handleCompare","handleOnSearch","data","newItems","_item$query","toLowerCase","searchValue","includes","style","width","children","onChange","hasClear","onUpdate","onApply","onReset","getRowActions","text","onClick","comparison","enabled","comparedRowIds","onCancel","onCompare","editing","rowId","onSubmit","EmptyStory","_useState11","_useState12","Default","render","Empty"],"sources":["QueriesHistory.stories.tsx"],"sourcesContent":["import React, {useState} from 'react';\nimport type {Meta, StoryObj} from '@storybook/react';\nimport {QueriesHistory} from './QueriesHistory';\nimport {\n QueryListFieldKey,\n QueryListFilterConfig,\n QueryListItem,\n QueryListVisibleFieldsConfig,\n} from '../../types/queryList';\nimport {QueryHistoryRow} from '../../types/history';\nimport {action} from 'storybook/actions';\n\nconst now = Date.now();\nconst min = 60 * 1000;\n\nconst QUERY = `use test;\n\nSELECT\n \"test_session\" AS session_id,\n \"test_task\" AS task_id,\n SUBSTRING(\"test\", 1, 1) AS truncated_char`;\n\nconst BASE_ITEMS: QueryListItem<QueryHistoryRow>[] = [\n {header: 'Today', height: 28},\n {\n id: 1,\n title: 'Query 1',\n status: 'completed',\n engine: 'YQL',\n mode: 'Validation',\n startTime: now - 2 * min,\n endTime: now - min,\n query: QUERY,\n height: 52,\n },\n {\n id: 2,\n title: 'Query 2',\n status: 'failed',\n engine: 'YQL',\n mode: 'Test',\n startTime: now - 10 * min,\n endTime: now - 9 * min,\n query: QUERY,\n height: 52,\n },\n {\n id: 3,\n title: 'Query 3',\n status: 'running',\n engine: 'YQL',\n mode: 'Test',\n startTime: now - min,\n query: QUERY,\n height: 52,\n },\n {header: 'Yesterday', height: 28},\n {\n id: 4,\n title: 'Query 4',\n status: 'aborted',\n engine: 'YQL',\n mode: 'Validation',\n startTime: now - 25 * 60 * min,\n endTime: now - 24 * 60 * min,\n query: 'SELECT 1',\n height: 52,\n },\n {\n id: 5,\n title: 'Query 5',\n status: 'draft',\n engine: 'YQL',\n mode: 'Test',\n startTime: now - 30 * 60 * min,\n query: QUERY,\n height: 52,\n },\n];\n\ntype VisibleFields = QueryListVisibleFieldsConfig<QueryHistoryRow>['fields'];\nconst activeFields: QueryListFieldKey<QueryHistoryRow>[] = [\n 'duration',\n 'mode',\n 'startTime',\n 'engine',\n 'isPrivate',\n];\nconst fields: VisibleFields = [\n {\n id: 'duration',\n title: 'Duration',\n },\n {\n id: 'mode',\n title: 'Mode',\n },\n {\n id: 'startTime',\n title: 'Start time',\n },\n {\n id: 'engine',\n title: 'Engine',\n },\n {\n id: 'isPrivate',\n title: 'ACO',\n },\n];\n\nconst filterFields: QueryListFilterConfig['fields'] = [\n {id: 'onlyMine', type: 'switch', title: 'My queries only', initialValue: true},\n {id: 'range', type: 'rangeDatePicker', title: 'Period'},\n {\n id: 'dialect',\n type: 'checkboxGroup',\n title: 'Dialect',\n initialValue: [],\n items: [\n {id: 'yql', title: 'YQL'},\n {id: 'sql', title: 'SQL'},\n ],\n },\n];\n\nconst logFilterApply = action('onFilterApply');\nconst logFilterReset = action('onFilterReset');\n\nconst meta: Meta<typeof QueriesHistory> = {\n title: 'Widgets/QueriesHistory',\n component: QueriesHistory,\n tags: ['autodocs'],\n parameters: {\n layout: 'padded',\n },\n};\n\nexport default meta;\ntype Story = StoryObj<typeof QueriesHistory>;\n\nconst DefaultStory = () => {\n const [items, setItems] = useState([...BASE_ITEMS]);\n const [search, setSearch] = useState({value: '', fullSearch: false});\n const [visibleFields, setVisibleFields] =\n useState<QueryListFieldKey<QueryHistoryRow>[]>(activeFields);\n const [compareMode, setCompareMode] = useState(false);\n const [comparedRows, setComparedRows] = useState<number[]>([]);\n const [editingId, setEditingId] = useState<number | undefined>(undefined);\n\n const handleCompareChange = (item: QueryHistoryRow, selected: boolean) => {\n const result = selected\n ? [...comparedRows.slice(0, 1), item.id]\n : comparedRows.filter((id) => id !== item.id);\n setComparedRows(result);\n\n if (!result.length) setCompareMode(false);\n };\n\n const handleCompareCancel = () => {\n setComparedRows([]);\n setCompareMode(false);\n };\n\n const handleEditSubmit = (item: QueryHistoryRow, title: string) => {\n const index = items.findIndex((i) => 'id' in i && i.id === item.id);\n if (index < 0) return;\n\n const result = [...items];\n result[index] = {...result[index], title};\n setItems(result);\n setEditingId(undefined);\n };\n\n const handleEditCancel = () => {\n setEditingId(undefined);\n };\n\n const handleCompare = () => {\n action('onCompare')(comparedRows);\n };\n\n const handleOnSearch = (data: {value: string; fullSearch: boolean}) => {\n setSearch(data);\n\n if (!data.value) {\n setItems(BASE_ITEMS);\n return;\n }\n\n const newItems = BASE_ITEMS.filter((item) => {\n if (!('id' in item)) return false;\n\n const title = item.title.toLowerCase();\n const query = item.query?.toLowerCase();\n const searchValue = data.value.toLowerCase();\n\n if (data.fullSearch) {\n return title.includes(searchValue) || query?.includes(searchValue);\n }\n\n return title.includes(searchValue);\n });\n setItems(newItems);\n };\n\n return (\n <div style={{width: 300, height: 500}}>\n <QueriesHistory\n title=\"History\"\n items={items}\n visibleFields={{value: visibleFields, fields, onChange: setVisibleFields}}\n search={{\n value: search.value,\n fullSearch: search.fullSearch,\n hasClear: true,\n onUpdate: handleOnSearch,\n }}\n filter={{\n fields: filterFields,\n onApply: logFilterApply,\n onReset: logFilterReset('reset'),\n }}\n getRowActions={() => [\n {\n text: 'Compare',\n onClick: (item) => {\n setCompareMode(true);\n setComparedRows([item.id]);\n },\n },\n {\n text: 'Edit',\n onClick: (item) => {\n setEditingId(item.id);\n },\n },\n ]}\n comparison={{\n enabled: compareMode,\n comparedRowIds: comparedRows,\n onChange: handleCompareChange,\n onCancel: handleCompareCancel,\n onCompare: handleCompare,\n }}\n editing={{\n rowId: editingId,\n onSubmit: handleEditSubmit,\n onCancel: handleEditCancel,\n }}\n />\n </div>\n );\n};\n\nconst EmptyStory = () => {\n const [search, setSearch] = useState({value: '', fullSearch: false});\n\n return (\n <div style={{width: 300, height: 500}}>\n <QueriesHistory\n title=\"History\"\n items={[]}\n search={{\n value: search.value,\n fullSearch: search.fullSearch,\n hasClear: true,\n onUpdate: setSearch,\n }}\n />\n </div>\n );\n};\n\nexport const Default: Story = {render: () => <DefaultStory />};\nexport const Empty: Story = {render: () => <EmptyStory />};\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["React","useState","SegmentedRadioGroup","QueriesHistory","action","jsx","_jsx","now","Date","min","QUERY","BASE_ITEMS","header","height","id","title","status","engine","mode","startTime","endTime","query","activeFields","fields","filterFields","type","initialValue","items","logFilterApply","logFilterReset","meta","component","tags","parameters","layout","operationFilterOptions","value","content","DefaultStory","_useState","concat","_useState2","_slicedToArray","setItems","_useState3","fullSearch","_useState4","search","setSearch","_useState5","_useState6","visibleFields","setVisibleFields","_useState7","_useState8","compareMode","setCompareMode","_useState9","_useState0","comparedRows","setComparedRows","_useState1","undefined","_useState10","editingId","setEditingId","handleCompareChange","item","selected","result","_toConsumableArray","slice","filter","length","handleCompareCancel","handleEditSubmit","index","findIndex","i","_objectSpread","handleEditCancel","handleCompare","handleOnSearch","data","newItems","_item$query","toLowerCase","searchValue","includes","style","width","children","onChange","hasClear","onUpdate","onApply","onReset","getRowActions","text","onClick","comparison","enabled","comparedRowIds","onCancel","onCompare","editing","rowId","onSubmit","EmptyStory","_useState11","_useState12","WithHeaderStory","_useState13","_useState14","_useState15","_useState16","logo","options","Default","render","Empty","WithHeader"],"sources":["QueriesHistory.stories.tsx"],"sourcesContent":["import React, {useState} from 'react';\nimport type {Meta, StoryObj} from '@storybook/react';\nimport {SegmentedRadioGroup} from '@gravity-ui/uikit';\nimport {QueriesHistory} from './QueriesHistory';\nimport {\n QueryListFieldKey,\n QueryListFilterConfig,\n QueryListItem,\n QueryListVisibleFieldsConfig,\n} from '../../types/queryList';\nimport {QueryHistoryRow} from '../../types/history';\nimport {action} from 'storybook/actions';\n\nconst now = Date.now();\nconst min = 60 * 1000;\n\nconst QUERY = `use test;\n\nSELECT\n \"test_session\" AS session_id,\n \"test_task\" AS task_id,\n SUBSTRING(\"test\", 1, 1) AS truncated_char`;\n\nconst BASE_ITEMS: QueryListItem<QueryHistoryRow>[] = [\n {header: 'Today', height: 28},\n {\n id: 1,\n title: 'Query 1',\n status: 'completed',\n engine: 'YQL',\n mode: 'Validation',\n startTime: now - 2 * min,\n endTime: now - min,\n query: QUERY,\n height: 52,\n },\n {\n id: 2,\n title: 'Query 2',\n status: 'failed',\n engine: 'YQL',\n mode: 'Test',\n startTime: now - 10 * min,\n endTime: now - 9 * min,\n query: QUERY,\n height: 52,\n },\n {\n id: 3,\n title: 'Query 3',\n status: 'running',\n engine: 'YQL',\n mode: 'Test',\n startTime: now - min,\n query: QUERY,\n height: 52,\n },\n {header: 'Yesterday', height: 28},\n {\n id: 4,\n title: 'Query 4',\n status: 'aborted',\n engine: 'YQL',\n mode: 'Validation',\n startTime: now - 25 * 60 * min,\n endTime: now - 24 * 60 * min,\n query: 'SELECT 1',\n height: 52,\n },\n {\n id: 5,\n title: 'Query 5',\n status: 'draft',\n engine: 'YQL',\n mode: 'Test',\n startTime: now - 30 * 60 * min,\n query: QUERY,\n height: 52,\n },\n {\n id: 6,\n title: 'Query 6',\n status: 'draft',\n engine: 'YQL',\n mode: 'Test',\n startTime: now - 30 * 60 * min,\n query: QUERY,\n height: 52,\n },\n {\n id: 7,\n title: 'Query 7',\n status: 'draft',\n engine: 'YQL',\n mode: 'Test',\n startTime: now - 30 * 60 * min,\n query: QUERY,\n height: 52,\n },\n {\n id: 8,\n title: 'Query 8',\n status: 'draft',\n engine: 'YQL',\n mode: 'Test',\n startTime: now - 30 * 60 * min,\n query: QUERY,\n height: 52,\n },\n];\n\ntype VisibleFields = QueryListVisibleFieldsConfig<QueryHistoryRow>['fields'];\nconst activeFields: QueryListFieldKey<QueryHistoryRow>[] = [\n 'duration',\n 'mode',\n 'startTime',\n 'engine',\n 'isPrivate',\n];\nconst fields: VisibleFields = [\n {\n id: 'duration',\n title: 'Duration',\n },\n {\n id: 'mode',\n title: 'Mode',\n },\n {\n id: 'startTime',\n title: 'Start time',\n },\n {\n id: 'engine',\n title: 'Engine',\n },\n {\n id: 'isPrivate',\n title: 'ACO',\n },\n];\n\nconst filterFields: QueryListFilterConfig['fields'] = [\n {id: 'onlyMine', type: 'switch', title: 'My queries only', initialValue: true},\n {id: 'range', type: 'rangeDatePicker', title: 'Period'},\n {\n id: 'dialect',\n type: 'checkboxGroup',\n title: 'Dialect',\n initialValue: [],\n items: [\n {id: 'yql', title: 'YQL'},\n {id: 'sql', title: 'SQL'},\n ],\n },\n];\n\nconst logFilterApply = action('onFilterApply');\nconst logFilterReset = action('onFilterReset');\n\nconst meta: Meta<typeof QueriesHistory> = {\n title: 'Widgets/QueriesHistory',\n component: QueriesHistory,\n tags: ['autodocs'],\n parameters: {\n layout: 'padded',\n },\n};\n\nconst operationFilterOptions = [\n {\n value: 'My',\n content: 'My',\n },\n {\n value: 'All',\n content: 'All',\n },\n];\n\nexport default meta;\ntype Story = StoryObj<typeof QueriesHistory>;\n\nconst DefaultStory = () => {\n const [items, setItems] = useState([...BASE_ITEMS]);\n const [search, setSearch] = useState({value: '', fullSearch: false});\n const [visibleFields, setVisibleFields] =\n useState<QueryListFieldKey<QueryHistoryRow>[]>(activeFields);\n const [compareMode, setCompareMode] = useState(false);\n const [comparedRows, setComparedRows] = useState<(number | string)[]>([]);\n const [editingId, setEditingId] = useState<number | string | undefined>(undefined);\n\n const handleCompareChange = (item: QueryHistoryRow, selected: boolean) => {\n const result = selected\n ? [...comparedRows.slice(0, 1), item.id]\n : comparedRows.filter((id) => id !== item.id);\n setComparedRows(result);\n\n if (!result.length) setCompareMode(false);\n };\n\n const handleCompareCancel = () => {\n setComparedRows([]);\n setCompareMode(false);\n };\n\n const handleEditSubmit = (item: QueryHistoryRow, title: string) => {\n const index = items.findIndex((i) => 'id' in i && i.id === item.id);\n if (index < 0) return;\n\n const result = [...items];\n result[index] = {...result[index], title};\n setItems(result);\n setEditingId(undefined);\n };\n\n const handleEditCancel = () => {\n setEditingId(undefined);\n };\n\n const handleCompare = () => {\n action('onCompare')(comparedRows);\n };\n\n const handleOnSearch = (data: {value: string; fullSearch: boolean}) => {\n setSearch(data);\n\n if (!data.value) {\n setItems(BASE_ITEMS);\n return;\n }\n\n const newItems = BASE_ITEMS.filter((item) => {\n if (!('id' in item)) return false;\n\n const title = item.title.toLowerCase();\n const query = item.query?.toLowerCase();\n const searchValue = data.value.toLowerCase();\n\n if (data.fullSearch) {\n return title.includes(searchValue) || query?.includes(searchValue);\n }\n\n return title.includes(searchValue);\n });\n setItems(newItems);\n };\n\n return (\n <div style={{width: 300, height: 500}}>\n <QueriesHistory\n title=\"History\"\n items={items}\n visibleFields={{value: visibleFields, fields, onChange: setVisibleFields}}\n search={{\n value: search.value,\n fullSearch: search.fullSearch,\n hasClear: true,\n onUpdate: handleOnSearch,\n }}\n filter={{\n fields: filterFields,\n onApply: logFilterApply,\n onReset: logFilterReset('reset'),\n }}\n getRowActions={() => [\n {\n text: 'Compare',\n onClick: (item) => {\n setCompareMode(true);\n setComparedRows([item.id]);\n },\n },\n {\n text: 'Edit',\n onClick: (item) => {\n setEditingId(item.id);\n },\n },\n ]}\n comparison={{\n enabled: compareMode,\n comparedRowIds: comparedRows,\n onChange: handleCompareChange,\n onCancel: handleCompareCancel,\n onCompare: handleCompare,\n }}\n editing={{\n rowId: editingId,\n onSubmit: handleEditSubmit,\n onCancel: handleEditCancel,\n }}\n />\n </div>\n );\n};\n\nconst EmptyStory = () => {\n const [search, setSearch] = useState({value: '', fullSearch: false});\n\n return (\n <div style={{width: 300, height: 500}}>\n <QueriesHistory\n title=\"History\"\n items={[]}\n search={{\n value: search.value,\n fullSearch: search.fullSearch,\n hasClear: true,\n onUpdate: setSearch,\n }}\n />\n </div>\n );\n};\n\nconst WithHeaderStory = () => {\n const [search, setSearch] = useState({value: '', fullSearch: false});\n const [visibleFields, setVisibleFields] =\n useState<QueryListFieldKey<QueryHistoryRow>[]>(activeFields);\n\n return (\n <div style={{width: 300, height: 500}}>\n <QueriesHistory\n items={BASE_ITEMS}\n logo={<SegmentedRadioGroup options={operationFilterOptions} />}\n visibleFields={{value: visibleFields, fields, onChange: setVisibleFields}}\n filter={{\n fields: filterFields,\n onApply: logFilterApply,\n onReset: logFilterReset('reset'),\n }}\n search={{\n value: search.value,\n fullSearch: search.fullSearch,\n hasClear: true,\n onUpdate: setSearch,\n }}\n />\n </div>\n );\n};\n\nexport const Default: Story = {render: () => <DefaultStory />};\nexport const Empty: Story = {render: () => <EmptyStory />};\nexport const WithHeader: Story = {render: () => <WithHeaderStory />};\n"],"mappings":"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","ignoreList":[]}
|