@docsvision/webclient 6.2.0-beta.1 → 6.2.1-beta.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (76) hide show
  1. package/Approval/AgreementHistoryImpl.d.ts +8 -3
  2. package/Approval/ApprovalHistoryTable.d.ts +0 -3
  3. package/Approval/IApprovalHistoryTableProps.d.ts +4 -1
  4. package/Approval/IApprovalHistoryTableState.d.ts +0 -3
  5. package/BackOffice/$DigitalSignature.d.ts +27 -0
  6. package/BackOffice/AddressImpl.d.ts +1 -0
  7. package/BackOffice/DepartmentImpl.d.ts +7 -0
  8. package/BackOffice/DigitalSignatureService.d.ts +3 -1
  9. package/BackOffice/FileListConstants.d.ts +1 -0
  10. package/BackOffice/FileListControlLogic.d.ts +1 -1
  11. package/BackOffice/Powers.d.ts +2 -0
  12. package/BackOffice/PowersImpl.d.ts +2 -0
  13. package/BackOffice/PrintButton.d.ts +3 -1
  14. package/BackOffice/SetEmployeeCertificate.d.ts +1 -0
  15. package/BackOffice/StaffDirectoryItems.stories.d.ts +23 -0
  16. package/BackOffice/TaskGroupStatusComponent.d.ts +7 -0
  17. package/BackOffice/TaskGroupStatusTableComponent.d.ts +5 -0
  18. package/BackOffice/TaskGroupStatusTableRowComponent.d.ts +9 -0
  19. package/BackOffice/TaskGroupWorkStatus.d.ts +22 -0
  20. package/BackOffice/TaskGroupWorkStatusContainer.d.ts +11 -0
  21. package/BackOffice/TaskGroupWorkStatusLogic.d.ts +13 -0
  22. package/BackOffice/TaskGroupWorkStatusOptions.d.ts +18 -0
  23. package/BackOffice/TaskGroupWorkStatusView.d.ts +10 -0
  24. package/BackOffice/TaskGroupWrapper.d.ts +3 -0
  25. package/BackOffice/UserProfile.d.ts +1 -0
  26. package/Generated/DocsVision.WebClient.Controllers.d.ts +46 -5
  27. package/Generated/DocsVision.WebClient.Models.d.ts +451 -129
  28. package/Helpers/Button.d.ts +4 -1
  29. package/Helpers/DropdownButton/DropdownButton.d.ts +2 -0
  30. package/Helpers/FileViewZip/FileViewZip.d.ts +47 -0
  31. package/Helpers/FileViewZip/FileViewZipModal.d.ts +24 -0
  32. package/Helpers/IconButton.d.ts +1 -0
  33. package/Helpers/Menu/AdaptiveMenuBar.d.ts +1 -0
  34. package/Helpers/Menu/DesktopMenuBar.d.ts +1 -0
  35. package/Helpers/Menu/MobileMenuBar.d.ts +1 -0
  36. package/Helpers/MessageBox/MessageBox.d.ts +1 -0
  37. package/Helpers/ModalHost.d.ts +1 -0
  38. package/Helpers/PeriodicDebounce.d.ts +1 -0
  39. package/Helpers/PopoverHelpers/Popover.d.ts +1 -0
  40. package/Helpers/TextInput.d.ts +1 -0
  41. package/Legacy/StandardControllers.d.ts +1 -1
  42. package/Legacy/Utils.d.ts +9 -0
  43. package/Libs/CryptoPro/Crypto.d.ts +3 -0
  44. package/Platform/$EmployeeStatus.d.ts +9 -0
  45. package/Platform/$FolderMenuManagement.d.ts +12 -0
  46. package/Platform/AggregatesTree.d.ts +1 -1
  47. package/Platform/AggregatesTreeLoader.d.ts +1 -1
  48. package/Platform/CardLink.d.ts +2 -0
  49. package/Platform/DateTimePicker.d.ts +1 -0
  50. package/Platform/DateTimePickerImpl.d.ts +1 -1
  51. package/Platform/DropdownImpl.d.ts +6 -0
  52. package/Platform/EmployeeStatusService.d.ts +2 -0
  53. package/Platform/FilePicker.d.ts +3 -0
  54. package/Platform/FilePickerImpl.d.ts +11 -0
  55. package/Platform/FilePickerMenuItemsView.d.ts +1 -0
  56. package/Platform/FilePickerOperations.d.ts +1 -0
  57. package/Platform/FilePickerOperationsAvailability.d.ts +1 -0
  58. package/Platform/FolderDashboardWidgetImpl.d.ts +0 -1
  59. package/Platform/FolderDataLoadingService.d.ts +1 -1
  60. package/Platform/FolderGroupDashboardWidgetImpl.d.ts +0 -1
  61. package/Platform/FolderMainMenuItem.d.ts +2 -1
  62. package/Platform/FolderMainMenuItemImpl.d.ts +3 -0
  63. package/Platform/FolderManagementAdaptiveMenu.d.ts +12 -1
  64. package/Platform/FolderMenuManagementService.d.ts +14 -0
  65. package/Platform/FolderWebFrameRouteHandler.d.ts +1 -1
  66. package/Platform/IFilePickerMenuOpeningArgs.d.ts +4 -0
  67. package/Platform/TabImpl.d.ts +1 -0
  68. package/Platform/UnreadCounter.d.ts +1 -0
  69. package/Platform/WebFrameUserPanel.d.ts +2 -1
  70. package/StandardServices.d.ts +2 -1
  71. package/System/DateFormats.d.ts +3 -1
  72. package/System/InputBasedControlImpl.d.ts +0 -1
  73. package/System/TaskGroupWorkStatusStub.d.ts +62 -0
  74. package/System/TooltipUtils.d.ts +6 -0
  75. package/package.json +1 -1
  76. package/Legacy/TaskGroupWorkStatusRazorControl.d.ts +0 -5
@@ -77,11 +77,14 @@ export interface IButtonProperties {
77
77
  /** Атрибут для cypress-тестирования */
78
78
  dataTestId?: string;
79
79
  autoFocus?: boolean;
80
+ controlName?: string;
80
81
  }
81
82
  /** @internal Режимы выравнивания кнопки. */
82
83
  export declare enum ButtonAlignModes {
83
84
  Center = 0,
84
85
  Left = 1
85
86
  }
86
- /** @internal Представляет собой кнопку с иконкой. */
87
+ /**
88
+ * @deprecated Используй Button из docsvision.web
89
+ * @internal Представляет собой кнопку с иконкой. */
87
90
  export declare function Button(props: IButtonProperties): JSX.Element;
@@ -14,6 +14,8 @@ declare type DropdownHtmlProps = IDropdownMenuProps & HtmlProps.div;
14
14
  export interface IDropdownButtonProps extends DropdownHtmlProps, IComponentProps<any, DropdownButtonView> {
15
15
  /** Текст кнопки */
16
16
  buttonText: string;
17
+ /** Иконка кнопки */
18
+ iconClass?: string;
17
19
  /** Цвет кнопки */
18
20
  colorMode?: ButtonColorModes;
19
21
  /** Растягивать ли кнопку */
@@ -0,0 +1,47 @@
1
+ import React from "react";
2
+ import { $FilePickerController } from "@docsvision/webclient/Generated/DocsVision.WebClient.Controllers";
3
+ import { RequestHelper } from "@docsvision/webclient/System/RequestHelper";
4
+ import { GenModels } from "../../Generated/DocsVision.WebClient.Models";
5
+
6
+ /** @internal Свойства для {@link FileViewZip} */
7
+ export interface IFileViewZipProps {
8
+ /** Список элементов содержимого zip-архива */
9
+ items?: string[];
10
+ /** Идентификатор карточки файла. */
11
+ fileCardId: string;
12
+ /** Кнопка закрытия окна комментариев. */
13
+ closeButton?: boolean;
14
+ /** Своя функция отрисовки. */
15
+ customRender?: (component: FileViewZip) => React.ReactNode;
16
+ /** По нажатию на кнопку закрытия окна просмотра zip-архива. */
17
+ onClose?: () => void;
18
+ services: $FilePickerController;
19
+ }
20
+ /** @internal */
21
+ export interface IFileViewZipState {
22
+ items?: string[];
23
+ /** Загружаются ли в данный момент данные для предпросмотра файла. */
24
+ isLoading: boolean;
25
+ /** Помощник для загрузки данных о содержимом zip-архива. */
26
+ loadingHelper: RequestHelper;
27
+ }
28
+ export declare class FileViewZip extends React.Component<IFileViewZipProps, IFileViewZipState> {
29
+ protected viewZipContainer: HTMLElement;
30
+ protected viewZipDialog: HTMLDivElement;
31
+ constructor(props: IFileViewZipProps);
32
+ /** @internal */
33
+ componentDidMount(): Promise<void>;
34
+ /** @internal */
35
+ componentDidUpdate(prevProps: any): void;
36
+ /** Загружается ли содержание zip в данный момент */
37
+ get isLoading(): boolean;
38
+ /** Загрузить список узлов zip-архива */
39
+ protected load: () => Promise<GenModels.FilePickerViewZipItemModel[]>;
40
+ /** @internal Отрисовка заголовка блока просмотра zip-архива. */
41
+ renderHeader(): JSX.Element;
42
+ renderItems: () => JSX.Element[];
43
+ /** @internal Отрисовка блока просмотра zip-архива */
44
+ renderViewZip(): JSX.Element;
45
+ /** @internal */
46
+ render(): {};
47
+ }
@@ -0,0 +1,24 @@
1
+ import React from "react";
2
+ import { $FilePickerController } from "@docsvision/webclient/Generated/DocsVision.WebClient.Controllers";
3
+ import { FileViewZip, IFileViewZipProps } from "@docsvision/webclient/Helpers/FileViewZip/FileViewZip";
4
+ /** @internal Свойства для {@link FileViewZipModal} */
5
+ export interface IFileViewZipModalProps extends IFileViewZipProps {
6
+ services: $FilePickerController;
7
+ }
8
+ /** @internal */
9
+ export interface IFileViewZipModalState {
10
+ /** Показывается ли модальное окно. */
11
+ isOpened: boolean;
12
+ }
13
+ /**
14
+ * Модальное окно с содержимым zip-файла
15
+ */
16
+ export declare class FileViewZipModal extends React.Component<IFileViewZipModalProps, IFileViewZipModalState> {
17
+ constructor(props: IFileViewZipModalProps);
18
+ /** Закрытие модального окна. */
19
+ protected closeModal: () => Promise<void>;
20
+ /** Отрисовка блока с содержимым zip-файла. */
21
+ protected renderViewZipBody: (component: FileViewZip) => JSX.Element;
22
+ /** @internal */
23
+ render(): JSX.Element;
24
+ }
@@ -40,6 +40,7 @@ export interface IIconButtonProps {
40
40
  children?: React.ReactNode[];
41
41
  }
42
42
  /**
43
+ * @deprecated Используй IconButton из docsvision.web
43
44
  * @internal Представляет собой кнопку, которая выглядит как маленькая иконка.
44
45
  *
45
46
  * Пример использования:
@@ -18,6 +18,7 @@ export interface IAdaptiveMenuBarState {
18
18
  parentEl: HTMLElement;
19
19
  }
20
20
  /**
21
+ * @deprecated Используй ContextMenu из docsvision.web
21
22
  * @internal Представляет собой адаптивное меню.
22
23
  *
23
24
  * Пример использования:
@@ -5,6 +5,7 @@ export interface IDesktopMenuBarProps {
5
5
  children?: React.ReactNode;
6
6
  }
7
7
  /**
8
+ * @deprecated Используй ContextMenu из docsvision.web
8
9
  * @internal Представляет собой панель с меню для настольной версии.
9
10
  */
10
11
  export declare function DesktopMenuBar(props: IDesktopMenuBarProps): JSX.Element;
@@ -10,6 +10,7 @@ export interface IMobileMenuBarProps {
10
10
  renderBackdrop?: boolean;
11
11
  }
12
12
  /**
13
+ * @deprecated Используй ContextMenu из docsvision.web
13
14
  * @internal Представляет собой панель с меню для мобильной версии.
14
15
  */
15
16
  export declare function MobileMenuBar(props: IMobileMenuBarProps): JSX.Element;
@@ -2,6 +2,7 @@ import { BodyContainerProvider } from "@docsvision/webclient/Helpers/BodyContain
2
2
  import React from "react";
3
3
  import { MessageBoxButton } from "@docsvision/webclient/System/$MessageBox";
4
4
  /**
5
+ * @deprecated Используй сервис $MessageWindow
5
6
  * Предоставляет статические методы для отображения простых модальных окон.
6
7
  */
7
8
  export declare class MessageBox {
@@ -5,6 +5,7 @@ import { IEventArgs } from "@docsvision/webclient/System/IEventArgs";
5
5
  import { Optional } from "@docsvision/web/core/services";
6
6
  import { $RootCssClass } from "@docsvision/webclient/Helpers/$RootCssClass";
7
7
  /**
8
+ * @deprecated Используй ModalHost из docsvision.web
8
9
  * Предоставляет контейнер для отрисовки модального окна. Позволяет отображать диалоговое окно вне react-компонент.
9
10
  *
10
11
  * Пример использования:
@@ -0,0 +1 @@
1
+ export declare function periodicDebounce<T>(callee: (T: any) => unknown, timeoutMs: any): (T: any) => void;
@@ -109,6 +109,7 @@ export declare enum PopoverMode {
109
109
  UnderCursor = 5
110
110
  }
111
111
  /**
112
+ * @deprecated Используй Popover из docsvision.web
112
113
  * Компонент, который обеспечивает позиционирование всплывающего модального окна.
113
114
  *
114
115
  * Замечание: при показе всплывающего окна создается элемент в body документа (или в указанном контейнере) с абсолютной позицией,
@@ -15,6 +15,7 @@ export interface ITextInputProps {
15
15
  onKeyDown?: (e: React.KeyboardEvent) => void;
16
16
  }
17
17
  /**
18
+ * @deprecated Используй TextInput из docsvision.web
18
19
  * @internal Текстовое поле для ввода теста
19
20
  */
20
21
  export declare class TextInput extends React.Component<ITextInputProps, undefined> {
@@ -2,4 +2,4 @@ import { $BarcodeSearchButtonController, $BusinessCalendarController, $ClientLog
2
2
  import { $DocumentCardController } from "@docsvision/webclient/Legacy/DocumentCard";
3
3
  import { $EmployeesController } from "@docsvision/webclient/Legacy/EmployeesController";
4
4
  import { $FileController } from "@docsvision/webclient/Legacy/FileController";
5
- export declare type $StandardControllers = $BusinessCalendarController & $DocumentCardController & $FileController & $LayoutAgreementController & $LayoutCardController & $LayoutCardKindController & $LayoutController & $LayoutDirectoryDesignerController & $LayoutDocumentController & $LayoutFileController & $LayoutFolderController & $LayoutHistoryController & $LayoutLinksController & $LayoutPartnerController & $LayoutStaffController & $LayoutTasksController & $LayoutUserSettingsController & $PagesController & $EmployeesController & $CommentsController & $LayoutFileApiController & $LocalizationController & $BarcodeSearchButtonController & $ClientLogController & $CardKindController & $DirectoryDesignerRowController & $EmployeeController & $DepartmentController & $PartnerEmployeeController & $SignatureController & $GridController & $CardDataController & $LayoutRowController & $StaffDirectoryItemsController & $FilePickerController & $TaskGroupPerformersController & $DataVisualizationController & $CardOperationsController & $CardsPresentationController & $TasksTreeController & $SecurityController & $CardController & $BaseCardController & $SignatureMethodsController & $PowersDirectoryController & $TaskCardController & $R7OfficeController;
5
+ export declare type $StandardControllers = $BusinessCalendarController & $DocumentCardController & $FileController & $LayoutAgreementController & $LayoutCardController & $LayoutCardKindController & $LayoutController & $LayoutDirectoryDesignerController & $LayoutDocumentController & $LayoutFileController & $LayoutFolderController & $LayoutHistoryController & $LayoutLinksController & $LayoutPartnerController & $LayoutStaffController & $LayoutTasksController & $LayoutUserSettingsController & $PagesController & $EmployeesController & $CommentsController & $LayoutFileApiController & $LocalizationController & $BarcodeSearchButtonController & $ClientLogController & $CardKindController & $DirectoryDesignerRowController & $EmployeeController & $DepartmentController & $PartnerEmployeeController & $SignatureController & $GridController & $CardDataController & $LayoutRowController & $StaffDirectoryItemsController & $FilePickerController & $TaskGroupPerformersController & $DataVisualizationController & $CardOperationsController & $CardsPresentationController & $TasksTreeController & $SecurityController & $CardController & $BaseCardController & $SignatureMethodsController & $TaskCardController & $R7OfficeController & $PowersDirectoryController;
package/Legacy/Utils.d.ts CHANGED
@@ -5,6 +5,7 @@ import { DateTimeFormat } from "@docsvision/webclient/Legacy/DateTimeFormat";
5
5
  import { $CardId, $CardTimestamp, $ExtendedDataSourceInfos, $RowId } from '@docsvision/webclient/System/LayoutServices';
6
6
  import { Optional } from "@docsvision/web/core/services";
7
7
  import { StandardRouteSemantics } from "@docsvision/webclient/System/StandardRouteSemantics";
8
+ import { IFileViewZipModalProps } from "@docsvision/webclient/Helpers/FileViewZip/FileViewZipModal";
8
9
  /** @internal */
9
10
  export declare class Helpers {
10
11
  constructor();
@@ -47,6 +48,14 @@ export declare class Helpers {
47
48
  * @returns Функция, вызов которой закрывает модальное окно
48
49
  */
49
50
  static ShowRenameFileDialog(props: any): () => void;
51
+ /**
52
+ * Показать окно содержимого zip-файла.
53
+ * @returns Функция, вызов которой закрывает модальное окно
54
+ */
55
+ static ShowViewZipFileDialog(props: IFileViewZipModalProps, options?: {
56
+ onClose?: () => void;
57
+ onShowed?: () => void;
58
+ }): () => void;
50
59
  static ValidateForm(form: HTMLFormElement): boolean;
51
60
  static FindParentElement(headerFolderName: HTMLElement, parentClassName: string): HTMLElement;
52
61
  static SuppressEvents(e: Event): void;
@@ -1,4 +1,5 @@
1
1
  import { $SignatureController } from "@docsvision/webclient/Generated/DocsVision.WebClient.Controllers";
2
+ import { GenModels } from "@docsvision/webclient/Generated/DocsVision.WebClient.Models";
2
3
  import { EncryptedInfo } from "@docsvision/webclient/Legacy/EncryptedInfo";
3
4
  import { IFileSignInfo } from "@docsvision/webclient/Legacy/IFileSingInfo";
4
5
  import { $MessageBox } from "@docsvision/webclient/System/$MessageBox";
@@ -49,6 +50,7 @@ export declare class Crypto {
49
50
  static DocumentFileOIDAttribute: string;
50
51
  static DocumentVersionOIDAttribute: string;
51
52
  static EmployeeOIDAttribute: string;
53
+ static THE_URL_OF_OCSP_SERVICE_IS_NOT_SPECIFIED_ERROR: string;
52
54
  static ProviderName: string;
53
55
  static ProviderType: string;
54
56
  static CADESCOM_CERT_INFO_TYPE_SUBJECT_SIMPLE_NAME: number;
@@ -97,6 +99,7 @@ export declare class Crypto {
97
99
  tspAddress: string;
98
100
  certificateThumberpint: string;
99
101
  }>;
102
+ static GetCadesSignType(signType: GenModels.DigitalSignatureKind): number;
100
103
  private static SignData_NPAPI;
101
104
  }
102
105
  export declare function getBstrBase64(str: string): string;
@@ -1,16 +1,25 @@
1
1
  import { GenModels } from "@docsvision/webclient/Generated/DocsVision.WebClient.Models";
2
2
  import { BasicEvent } from "@docsvision/webclient/System/BasicEvent";
3
+ import { SimpleEvent } from "@docsvision/webclient/System/SimpleEvent";
3
4
  export interface IEmployeeStatusInfo {
4
5
  employeeId: string;
5
6
  status: GenModels.StaffEmployeeStatus;
6
7
  }
8
+ export interface IEmployeeDisplayNameInfo {
9
+ employeeId: string;
10
+ displayName: string;
11
+ }
7
12
  export interface IEmployeeInfo {
8
13
  employeeModel: GenModels.EmployeeStatusModel;
9
14
  }
10
15
  /** Сервис для получения актуального статуса сотрудника. */
11
16
  export interface IEmployeeStatusService {
17
+ tryChangeCurrentEmployeeAvatar: boolean;
12
18
  readonly employeeStatusChanged: BasicEvent<IEmployeeStatusInfo>;
19
+ readonly employeeDisplayNameChanged: BasicEvent<IEmployeeDisplayNameInfo>;
20
+ readonly currentEmployeeAvatarChanged: SimpleEvent<string>;
13
21
  setEmployeeStatus(employeeId: string, status: GenModels.StaffEmployeeStatus): any;
22
+ setEmployeeDisplayName(employeeId: string, displayName: string): any;
14
23
  /** Выполняет запрос вызов {@see getEmployeeStatusUnobtrusively} для текущего сотрудника. */
15
24
  getCurrentEmployeeStatusUnobtrusively(): Promise<GenModels.StaffEmployeeStatus>;
16
25
  /** Выполняет запрос вызов {@see getEmployeeDisplayNameUnobtrusively} для текущего сотрудника. */
@@ -0,0 +1,12 @@
1
+ import { FolderMainMenuItem } from "@docsvision/webclient/Platform/FolderMainMenuItem";
2
+ import { FolderMenuManagementItemProps } from "@docsvision/webclient/Platform/FolderManagementAdaptiveMenu";
3
+ import { Store, Event } from "effector";
4
+ export interface IFolderMenuManagementService {
5
+ $customMenuItems: Store<FolderMenuManagementItemProps[]>;
6
+ getMenuItems(folder: FolderMainMenuItem, defaultItems: FolderMenuManagementItemProps[]): FolderMenuManagementItemProps[];
7
+ setCustomMenuItems: Event<FolderMenuManagementItemProps[]>;
8
+ }
9
+ export declare type $FolderMenuManagement = {
10
+ folderMenuManagement: IFolderMenuManagementService;
11
+ };
12
+ export declare const $FolderMenuManagement: string | ((model?: $FolderMenuManagement) => IFolderMenuManagementService);
@@ -14,4 +14,4 @@ export interface IAggregateTreeProps {
14
14
  onItemSelect?: (data: ISelectItemData) => void;
15
15
  onLoadMoreItems?: (aggregates: GenModels.GridAggregateModel[]) => void;
16
16
  }
17
- export declare const AggregatesTree: ({ aggregates, aggregatesState, ...props }: IAggregateTreeProps) => JSX.Element;
17
+ export declare function AggregatesTree({ aggregates, aggregatesState, ...props }: IAggregateTreeProps): JSX.Element;
@@ -1,2 +1,2 @@
1
1
  /// <reference types="react" />
2
- export declare const AggregatesTreeLoader: () => JSX.Element;
2
+ export declare function AggregatesTreeLoader(): JSX.Element;
@@ -53,6 +53,8 @@ export declare class CardLinkParams extends InputBasedControlParams<GenModels.Ca
53
53
  searchDelay?: number;
54
54
  /** Минимальное количество символов для поиска */
55
55
  searchIndex?: number;
56
+ /** Режим отображения ссылок при поиске */
57
+ searchViewMode?: GenModels.SearchCardLinksViewMode;
56
58
  /** Событие, возникающее перед очисткой значения. */
57
59
  linkDeleting?: CancelableApiEvent<IEventArgs>;
58
60
  /** Событие, возникающее после очистки значения. */
@@ -77,6 +77,7 @@ export declare class DateTimePicker extends InputBasedControl<Date, DateTimePick
77
77
  protected set defaultValue(val: Date);
78
78
  private set defaultWorkTimeBinding(value);
79
79
  private set dateTimePickerMode(value);
80
+ set setDateTimePickerMode(value: GenModels.DateTimePickerType);
80
81
  private get defaultCurrentDateTime();
81
82
  protected onSaveRequest(sender: unknown, args: ICancelableEventArgs<unknown>): Promise<void>;
82
83
  /**
@@ -53,7 +53,7 @@ export declare class DateTimePickerImpl extends InputBasedControlImpl<Date, Date
53
53
  constructor(props: DateTimePickerParams, state: IDateTimePickerState);
54
54
  componentDidMount(): Promise<void>;
55
55
  getColor: () => "#7BB652" | "rgba(0, 149, 218, 0.8)" | "#3B4C60" | "#0095da" | "#7bb652";
56
- protected initializeCultureSettings(): void;
56
+ initializeCultureSettings(): void;
57
57
  protected setEditInPlaceWidth(element: Element): void;
58
58
  protected getMask(date: string): string;
59
59
  protected getTextValue(): string;
@@ -1,6 +1,7 @@
1
1
  import { GenModels } from "@docsvision/webclient/Generated/DocsVision.WebClient.Models";
2
2
  import { ComboBoxTitle } from "@docsvision/webclient/Helpers/ComboBox/ComboBoxTitle";
3
3
  import { IEditPopoverProps } from "@docsvision/webclient/Helpers/PopoverHelpers/EditPopover/IEditPopoverProps";
4
+ import { Popover } from "@docsvision/webclient/Helpers/PopoverHelpers/Popover";
4
5
  import { Dropdown, DropdownParams } from "@docsvision/webclient/Platform/Dropdown";
5
6
  import { InputBasedControlImpl, IInputBasedControlState } from "@docsvision/webclient/System/InputBasedControlImpl";
6
7
  import { IBindingResult } from "@docsvision/webclient/System/IBindingResult";
@@ -33,6 +34,10 @@ export declare class DropdownImpl extends InputBasedControlImpl<string, Dropdown
33
34
  * Заголовок комбобокса
34
35
  */
35
36
  protected comboboxTitle: ComboBoxTitle;
37
+ /**
38
+ * Элемент позиционирования списка
39
+ */
40
+ protected popover: Popover;
36
41
  /**
37
42
  * Предыдущий сфокусированный элемент (глобально)
38
43
  */
@@ -47,6 +52,7 @@ export declare class DropdownImpl extends InputBasedControlImpl<string, Dropdown
47
52
  UNSAFE_componentWillMount(): void;
48
53
  componentDidMount(): void;
49
54
  componentWillUnmount(): void;
55
+ protected handleParentModalScroll: (event?: Event) => void;
50
56
  protected handleDocumentClick: (event?: Event) => void;
51
57
  protected handleDocumentFocus: (event: FocusEvent) => void;
52
58
  setValue(value: string, redraw: boolean): void;
@@ -16,9 +16,11 @@ export declare class EmployeeStatusService implements IEmployeeStatusService {
16
16
  */
17
17
  private receiveTimeout;
18
18
  private startupTime;
19
+ tryChangeCurrentEmployeeAvatar: boolean;
19
20
  constructor(services: $CurrentEmployee & $EmployeeController & $CacheManagement, receiveTimeout?: number);
20
21
  employeeStatusChanged: SimpleEvent<unknown>;
21
22
  employeeDisplayNameChanged: SimpleEvent<unknown>;
23
+ currentEmployeeAvatarChanged: SimpleEvent<unknown>;
22
24
  setEmployeeStatus(employeeId: string, status: GenModels.StaffEmployeeStatus): Promise<void>;
23
25
  setEmployeeDisplayName(employeeId: string, displayName: string): Promise<void>;
24
26
  getCurrentEmployeeStatusUnobtrusively(): Promise<GenModels.StaffEmployeeStatus>;
@@ -22,6 +22,7 @@ import { $MessageBox } from "@docsvision/webclient/System/$MessageBox";
22
22
  import { $Layout } from "@docsvision/webclient/System/$Layout";
23
23
  import { $FilePreviewServices } from "@docsvision/webclient/Platform/FilePreview";
24
24
  import { $RealtimeCommunicationService } from "@docsvision/webclient/System/$RealtimeCommunicationService";
25
+ import { IFilePickerMenuOpeningArgs } from "@docsvision/webclient/Platform/IFilePickerMenuOpeningArgs";
25
26
  import { LoadingState } from "@docsvision/webclient/System/LoadingState";
26
27
  /**
27
28
  * Содержит публичные свойства элемента управления [Файл]{@link FilePicker}.
@@ -120,6 +121,8 @@ export declare class FilePickerParams extends BaseControlParams {
120
121
  fileVersionsDialogClosed?: BasicApiEvent<IEventArgs>;
121
122
  /** Событие возникает после подгрузки информации о версиях файла. @covered */
122
123
  fileVersionsLoaded?: BasicApiEvent<IEventArgs>;
124
+ /** Событие возникает при открытии меню файла. */
125
+ fileMenuOpening?: CancelableApiEvent<IFilePickerMenuOpeningArgs>;
123
126
  /** Событие возникает при сохранении файла в WebDAV. */
124
127
  fileSaveByWebDAV?: BasicApiEvent<IEventArgs>;
125
128
  services?: $EditOperationStore & $FilePickerUpload & $MessageBox & $WindowLocation & $FileController & $LayoutFileController & $CardId & $FilePickerController & $DeviceType & $FileDownload & $Layout & $RealtimeCommunicationService & $FilePreviewServices & $LayoutInfo;
@@ -43,6 +43,8 @@ export declare class FilePickerImpl extends BaseControlImpl<FilePickerParams, IF
43
43
  protected operations: FilePickerOperations;
44
44
  protected availability: FilePickerOperationsAvailability;
45
45
  protected dragOverState: BooleanState;
46
+ protected menuItems: IFilePickerMenuItem[];
47
+ static readonly illegalFileNameCharacters: RegExp;
46
48
  constructor(props: FilePickerParams, state: IFilePickerState);
47
49
  componentDidMount(): void;
48
50
  componentWillUnmount(): void;
@@ -54,6 +56,7 @@ export declare class FilePickerImpl extends BaseControlImpl<FilePickerParams, IF
54
56
  hasValue(): boolean;
55
57
  uploadSelectedInternal(): Promise<GenModels.FileCardModel>;
56
58
  onMenuOpenChange: (newVal: boolean) => void;
59
+ onFileMenuOpen: () => Promise<void>;
57
60
  protected shouldSaveImmediately(): boolean;
58
61
  protected getAccessState(): FilePickerAccessState;
59
62
  openVersionsDialog: () => Promise<void>;
@@ -106,6 +109,13 @@ import("./Components/FilePickerMenuItemsView").IFilePickerMenuItemProps) => JSX.
106
109
  getDeleteMenuItem: () => {
107
110
  name: string;
108
111
  component: (props:
112
+ import("./Components/FilePickerMenuItemsView").IFilePickerMenuItemProps) => JSX.Element;
113
+ isAvailable: boolean;
114
+ onClick: () => Promise<unknown>;
115
+ };
116
+ getViewZipMenuItem: () => {
117
+ name: string;
118
+ component: (props:
109
119
  import("./Components/FilePickerMenuItemsView").IFilePickerMenuItemProps) => JSX.Element;
110
120
  isAvailable: boolean;
111
121
  onClick: () => Promise<unknown>;
@@ -117,6 +127,7 @@ import("./Components/FilePickerMenuItemsView").IFilePickerMenuItemProps) => JSX.
117
127
  renderMenu(): JSX.Element;
118
128
  renderEmptyModeContent(): JSX.Element;
119
129
  renderEmptyMode(): JSX.Element;
130
+ isLayoutViewMode(): boolean;
120
131
  showDeleteButton: () => boolean;
121
132
  renderValueContent(): JSX.Element;
122
133
  renderValueContentWithPlaceholder(): JSX.Element;
@@ -23,3 +23,4 @@ export interface IDownloadFilePickerMenuItemProps extends IFilePickerMenuItemPro
23
23
  }
24
24
  export declare const DownloadFilePickerMenuItem: (props: IDownloadFilePickerMenuItemProps) => JSX.Element;
25
25
  export declare const DeleteFilePickerMenuItem: (props: IFilePickerMenuItemProps) => JSX.Element;
26
+ export declare const ViewZipFilePickerMenuItem: (props: IFilePickerMenuItemProps) => JSX.Element;
@@ -20,4 +20,5 @@ export declare class FilePickerOperations {
20
20
  openSelectFileDialog(file: GenModels.FileCardModel, inputContainer: HTMLElement, services: $MessageBox & $FilePickerUpload): Promise<File>;
21
21
  download(file: GenModels.FileCardModel, version: GenModels.FileCardVersionModel | null, events: EventEmitter, logInfo: GenModels.LogInfo, services: $FileDownload & $FilePickerController): Promise<void>;
22
22
  saveAs(file: GenModels.FileCardModel, version: GenModels.FileCardVersionModel | null, events: EventEmitter, logInfo: GenModels.LogInfo, services: $FilePickerController & $FileDownload): Promise<Blob>;
23
+ showViewZipDialog(file: GenModels.FileCardModel, services: $FilePickerController & $CardId): Promise<void>;
23
24
  }
@@ -9,6 +9,7 @@ export declare class FilePickerOperationsAvailability {
9
9
  private getServices;
10
10
  constructor(getAccessState: () => FilePickerAccessState, getEditMode: () => EditMode, getFile: () => GenModels.FileCardModel, getServices: () => $DeviceType);
11
11
  private check;
12
+ get canRead(): boolean;
12
13
  get canOpen(): boolean;
13
14
  get canPreview(): boolean;
14
15
  get canComment(): boolean;
@@ -14,7 +14,6 @@ export declare class FolderDashboardWidgetImpl<PropsT extends FolderDashboardWid
14
14
  getHeader(): string;
15
15
  getNavigationHref(): string;
16
16
  private attachUnreadCounter;
17
- private shouldShowUnreadCounter;
18
17
  updateUnreadCounter(count: number): void;
19
18
  getCssStyle(): React.CSSProperties;
20
19
  renderControl(): JSX.Element;
@@ -43,7 +43,7 @@ export declare class FolderDataLoadingService implements IFolderDataLoadingServi
43
43
  setDefaultDataLoader(loader: IFolderDataLoader): void;
44
44
  updateUserSettings(customLoader?: IFolderDataLoader): Promise<void>;
45
45
  private checkSystemFolderSearchResultsText;
46
- downloadExcelReport(): void;
46
+ downloadExcelReport(): Promise<void>;
47
47
  saveColumnSettings(columns: IColumnsWidth[]): Promise<void>;
48
48
  savePresentation(tablePresentation: GenModels.TablePresentation): Promise<void>;
49
49
  resetUserSettings(): Promise<void>;
@@ -14,7 +14,6 @@ export declare class FolderGroupDashboardWidgetImpl<PropsT extends FolderGroupDa
14
14
  getHeader(): string;
15
15
  getNavigationHref(): string;
16
16
  private attachUnreadCounter;
17
- private shouldShowUnreadCounter;
18
17
  updateUnreadCounter(count: number): void;
19
18
  getCssStyle(): React.CSSProperties;
20
19
  getWidgetStyle(): {
@@ -4,6 +4,7 @@ import { GenModels } from "@docsvision/webclient/Generated/DocsVision.WebClient.
4
4
  import { $Folders } from "@docsvision/webclient/Legacy/$Folders";
5
5
  import { BaseNavigationMainMenuItem, BaseNavigationMainMenuItemParams } from "@docsvision/webclient/Platform/BaseNavigationMainMenuItem";
6
6
  import { FolderMainMenuItemImpl, IFolderMainMenuItemState } from "@docsvision/webclient/Platform/FolderMainMenuItemImpl";
7
+ import { $FolderMenuManagement } from "@docsvision/webclient/Platform/$FolderMenuManagement";
7
8
  import { FolderEditedEventArgs, SubfolderAddedEventArgs } from "@docsvision/webclient/Platform/FolderOperationManager";
8
9
  import { $UnreadCounter } from "@docsvision/webclient/Platform/$UnreadCounter";
9
10
  import { $DeviceType } from "@docsvision/webclient/StandardServices";
@@ -65,7 +66,7 @@ export declare class FolderMainMenuItemParams extends BaseNavigationMainMenuItem
65
66
  subfolderAdding?: CancelableEvent<Layout>;
66
67
  /** Событие после сохраниния подпапки */
67
68
  subfolderAdded?: BasicEvent<SubfolderAddedEventArgs>;
68
- services?: $LayoutFolderController & $ControlStore & $Router & $UnreadCounter & $Folders & $DeviceType & $FolderColors;
69
+ services?: $LayoutFolderController & $ControlStore & $Router & $UnreadCounter & $Folders & $DeviceType & $FolderColors & $FolderMenuManagement;
69
70
  }
70
71
  /**
71
72
  * Контрол для отображения ссылки на папку в списке элементов главной панели.
@@ -29,8 +29,11 @@ export declare type FolderMainMenuItemImplState = IFolderMainMenuItemState;
29
29
  export declare class FolderMainMenuItemImpl extends BaseNavigationMainMenuItemImpl<FolderMainMenuItemParams, IFolderMainMenuItemState> {
30
30
  private unreadCounter;
31
31
  private operationManager;
32
+ private folderMenuManagementWatcher;
32
33
  constructor(props: FolderMainMenuItemParams, state: IFolderMainMenuItemState);
33
34
  componentDidMount(): void;
35
+ componentWillUnmount(): void;
36
+ private getFolderMenuManagementItems;
34
37
  generateControlName(folderId: string): void;
35
38
  protected getAutoExpandLevelsCount: () => number;
36
39
  protected getChildrenAutoExpandLevelsCount: () => number;
@@ -1,4 +1,5 @@
1
1
  /// <reference types="react" />
2
+ import { FolderMainMenuItem } from "@docsvision/webclient/Platform/FolderMainMenuItem";
2
3
  import { FolderManagementOperationType } from "@docsvision/webclient/Platform/FolderManagementData";
3
4
  export declare type FolderManagementAdaptiveMenuProps = {
4
5
  visible?: boolean;
@@ -6,4 +7,14 @@ export declare type FolderManagementAdaptiveMenuProps = {
6
7
  expanded?: boolean;
7
8
  onClick?: (operation: FolderManagementOperationType) => void;
8
9
  };
9
- export declare function FolderManagementAdaptiveMenu(props: FolderManagementAdaptiveMenuProps): JSX.Element;
10
+ export declare type FolderMenuManagementItemProps = {
11
+ name?: string;
12
+ title?: string;
13
+ action?: (folder?: FolderMainMenuItem) => void;
14
+ };
15
+ export declare const FOLDER_MANAGEMENT_DEFAULT_MENU_ITEMS: {
16
+ name: string;
17
+ }[];
18
+ export declare function FolderManagementAdaptiveMenu(props: FolderManagementAdaptiveMenuProps & {
19
+ items: FolderMenuManagementItemProps[];
20
+ }): JSX.Element;
@@ -0,0 +1,14 @@
1
+ import { FolderMainMenuItem } from "@docsvision/webclient/Platform/FolderMainMenuItem";
2
+ import { IFolderMenuManagementService } from "@docsvision/webclient/Platform/$FolderMenuManagement";
3
+ import { FolderMenuManagementItemProps } from "@docsvision/webclient/Platform/FolderManagementAdaptiveMenu";
4
+ import { Store, Event } from "effector";
5
+ export declare class FolderMenuManagementService implements IFolderMenuManagementService {
6
+ $customMenuItems: Store<FolderMenuManagementItemProps[]>;
7
+ setCustomMenuItems: Event<FolderMenuManagementItemProps[]>;
8
+ constructor(items?: FolderMenuManagementItemProps[]);
9
+ getMenuItems: (folder: FolderMainMenuItem, defaultItems: FolderMenuManagementItemProps[]) => (FolderMenuManagementItemProps | {
10
+ action: any;
11
+ name?: string;
12
+ title?: string;
13
+ })[];
14
+ }
@@ -16,6 +16,6 @@ export declare class FolderWebFrameRouteHandler implements IRouteHandler<IFolder
16
16
  private get useNewGrid();
17
17
  private routeTypeCheck;
18
18
  private filterClasses;
19
- mountRoute(data: IFolderPageRouteData, routeType: RouteType): Promise<RouteHandleResult>;
19
+ prepareRouteMount(data: IFolderPageRouteData, routeType: RouteType): Promise<RouteHandleResult>;
20
20
  unmountRoute(data: IFolderPageRouteData, routeType: RouteType): Promise<void>;
21
21
  }
@@ -0,0 +1,4 @@
1
+ import { IFilePickerMenuItem } from "@docsvision/webclient/Platform/FilePickerMenu";
2
+ export interface IFilePickerMenuOpeningArgs {
3
+ fileMenuItems: IFilePickerMenuItem[];
4
+ }
@@ -20,6 +20,7 @@ export declare class TabImpl extends PanelImpl<TabParams, ITabState> {
20
20
  [key: string]: number;
21
21
  };
22
22
  constructor(props: TabParams, state: ITabState);
23
+ componentDidMount(): void;
23
24
  componentWillUnmount(): void;
24
25
  openTab(tab: TabPageInfo): Promise<void>;
25
26
  loadTab(tab: TabPageInfo): Promise<TabPageInfo>;
@@ -23,6 +23,7 @@ export declare class UnreadCounter implements IUnreadCounter {
23
23
  private static CurrentUnreadCountersMessage;
24
24
  private static RequestCurrentCountersMessage;
25
25
  static SendLocalCountsMessage: string;
26
+ debouncedOnConnected: (message: IRealTimeCommunicationMessage<unknown>) => void;
26
27
  constructor(services: $RealtimeCommunicationService & $ApplicationSettings);
27
28
  get foldersToCount(): IFoldersToCountData;
28
29
  set foldersToCount(data: IFoldersToCountData);
@@ -55,7 +55,8 @@ export declare class WebFrameUserPanel extends BaseControl<WebFrameUserPanelPara
55
55
  set setUserDataDisplay(value: boolean);
56
56
  /** @covered */
57
57
  set setUserPanelDisplayMode(value: number);
58
- getUserAvatar(): Promise<void>;
58
+ refreshUserAvatar: () => Promise<void>;
59
+ getUserAvatar: (forceUpdate?: boolean) => Promise<void>;
59
60
  getEmployeeStatus(): GenModels.StaffEmployeeStatus;
60
61
  renderUserData(userDataDisplay?: boolean, userPanelDisplayMode?: GenModels.UserPanelDisplayMode): JSX.Element;
61
62
  renderAvatar(statusDisplay: boolean, status: GenModels.StaffEmployeeStatus): JSX.Element;
@@ -61,6 +61,7 @@ import { $HoverPanel } from "@docsvision/webclient/Platform/$HoverPanel";
61
61
  import { $WebFrameContentHeight } from "@docsvision/webclient/System/$WebFrameContentHeight";
62
62
  import { $DigitalSignature } from "@docsvision/webclient/BackOffice/$DigitalSignature";
63
63
  import { $FolderColors } from "@docsvision/webclient/System/$FolderColors";
64
+ import { $FolderMenuManagement } from "@docsvision/webclient/Platform/$FolderMenuManagement";
64
65
  /** Сервис доступа к идентификатору текущего пользователя. */
65
66
  export declare type $CurrentEmployeeId = {
66
67
  currentEmployeeId: string;
@@ -150,4 +151,4 @@ export declare type $ApplicationSettings = {
150
151
  };
151
152
  export declare const $ApplicationSettings: string | ((model?: $ApplicationSettings) => GenModels.ApplicationSettings);
152
153
  /** Стандартные сервисы Web-клиента. */
153
- export declare type $StandardServices = $Layout & $Router & $CurrentEmployeeId & $CurrentEmployeeAccountName & $DeviceType & $SiteUrl & $Locale & $FullTextSearchEnabled & $RequestManager & $Sidebar & $FolderViews & $SearchPanel & $NavBar & $Folders & $UnreadCounter & $InstalledCSP & $ApplicationTimestamp & $LayoutManager & $RealtimeCommunicationService & $UserMenu & $LayoutControlFactory & $EditOperationStore & $LayoutInfo & $CardInfo & $RowInfo & $CardId & $RowId & $CardTimestamp & $ControlStore & $LocalStorage & $BaseName & $RouteTimestamp & $EnableRouterLogging & $IsMobileSafari & $LogEnabled & $IsIE & $IsSafari & $LastSearchRequest & $UrlStore & $UrlResolver & $CurrentEmployee & $RouterNavigation & $OwnerLayout & $ApplicationSettings & $ExtensionManager & $WebServices & $BatchOperationsProgressDialog & $BatchOperationsPerformer & $InsideMainMenu & $Timeout & $WebFrameContext & $ExtendedDataSourceInfos & $FilePickerUpload & $MessageBox & $WindowLocation & $FileDownload & $ExperimentalFeature & $UnreadCounterNotification & $EmployeeStatus & $CacheManagement & $FileScan & $LayoutCheck & $ScanDialog & $FileService & $CompanyLogo & $ContentElementProvider & $RootCssClass & $FilePreview & $WebViewIOSEnabled & $FileUpload & Partial<$WebFrameDirectorySearchPanelService> & $Domain & $Resources & $MessageWindow & $DialogManagement & $WebFrameDirectorySearchInfoStorageService & $WebFrameSearchPanel & $LastSearchResponse & $RefreshUnreadCounters & $LastSearchParameters & $CloudSignature & $CryptoPro & $CurrentFolder & $LastSearchResponse & $Poll & $FolderPluginProvider & $LayoutBackground & $ApprovalPathVisualizationController & $HoverPanel & $HoverPanel & $DigitalSignature & $WebFrameDirectorySearchPanelService & $WebFrameContentHeight & $FolderColors;
154
+ export declare type $StandardServices = $Layout & $Router & $CurrentEmployeeId & $CurrentEmployeeAccountName & $DeviceType & $SiteUrl & $Locale & $FullTextSearchEnabled & $RequestManager & $Sidebar & $FolderViews & $SearchPanel & $NavBar & $Folders & $UnreadCounter & $InstalledCSP & $ApplicationTimestamp & $LayoutManager & $RealtimeCommunicationService & $UserMenu & $LayoutControlFactory & $EditOperationStore & $LayoutInfo & $CardInfo & $RowInfo & $CardId & $RowId & $CardTimestamp & $ControlStore & $LocalStorage & $BaseName & $RouteTimestamp & $EnableRouterLogging & $IsMobileSafari & $LogEnabled & $IsIE & $IsSafari & $LastSearchRequest & $UrlStore & $UrlResolver & $CurrentEmployee & $RouterNavigation & $OwnerLayout & $ApplicationSettings & $ExtensionManager & $WebServices & $BatchOperationsProgressDialog & $BatchOperationsPerformer & $InsideMainMenu & $Timeout & $WebFrameContext & $ExtendedDataSourceInfos & $FilePickerUpload & $MessageBox & $WindowLocation & $FileDownload & $ExperimentalFeature & $UnreadCounterNotification & $EmployeeStatus & $CacheManagement & $FileScan & $LayoutCheck & $ScanDialog & $FileService & $CompanyLogo & $ContentElementProvider & $RootCssClass & $FilePreview & $WebViewIOSEnabled & $FileUpload & Partial<$WebFrameDirectorySearchPanelService> & $Domain & $Resources & $MessageWindow & $DialogManagement & $WebFrameDirectorySearchInfoStorageService & $WebFrameSearchPanel & $LastSearchResponse & $RefreshUnreadCounters & $LastSearchParameters & $CloudSignature & $CryptoPro & $CurrentFolder & $LastSearchResponse & $Poll & $FolderPluginProvider & $LayoutBackground & $ApprovalPathVisualizationController & $HoverPanel & $HoverPanel & $DigitalSignature & $WebFrameDirectorySearchPanelService & $WebFrameContentHeight & $FolderColors & $FolderMenuManagement;
@@ -9,5 +9,7 @@ export declare enum DateFormats {
9
9
  /** Дата и время для отправки на сервер. */
10
10
  ServerDateTime = 3,
11
11
  /** Дата со строковым значением месяца */
12
- UserDate = 4
12
+ UserDate = 4,
13
+ /** Дата и время в формате UTC */
14
+ AsUtc = 5
13
15
  }