Архивация списков (#13)
Tests / frontend-test (push) Successful in 44s
Tests / backend-test (push) Failing after 17m4s

Co-authored-by: gorbenko.pavel <gorbenko.pavel@tansu.kz>
Reviewed-on: http://git.tnsu.kz/gorbenko.pavel/tnsu-approval-route/pulls/13
This commit was merged in pull request #13.
This commit is contained in:
2026-08-19 09:08:36 +00:00
parent a2672042d7
commit 82512eb1db
56 changed files with 2587 additions and 51 deletions
@@ -1,7 +1,7 @@
import * as React from 'react';
import * as ReactDom from 'react-dom';
import { Version } from '@microsoft/sp-core-library';
import { type IPropertyPaneConfiguration, PropertyPaneTextField } from '@microsoft/sp-property-pane';
import { type IPropertyPaneConfiguration, PropertyPaneDropdown, PropertyPaneTextField } from '@microsoft/sp-property-pane';
import { BaseClientSideWebPart } from '@microsoft/sp-webpart-base';
import ApprovalAdmin from './components/ApprovalAdmin';
@@ -13,6 +13,13 @@ export interface IApprovalAdminWebPartProps {
portalBaseUrl: string;
}
// Единственные два адреса, которыми реально пользуются (прод и локальный backend,
// см. backend/Tnsu.ApprovalRoute.Api/Properties/launchSettings.json) — селект
// вместо текстового поля, чтобы переключаться одним кликом, а не перепечатывать
// url и рисковать опечаткой в проде.
const API_BASE_URL_PROD = 'https://api.tnsu.kz/approval-route';
const API_BASE_URL_LOCAL = 'http://localhost:5080';
export default class ApprovalAdminWebPart extends BaseClientSideWebPart<IApprovalAdminWebPartProps> {
public render(): void {
@@ -28,9 +35,8 @@ export default class ApprovalAdminWebPart extends BaseClientSideWebPart<IApprova
protected onInit(): Promise<void> {
// Прод-адрес по умолчанию: пакуем именно под прод (heft package-solution --production).
// Для локальной разработки переопределите значение в панели свойств веб-части
// (например, на http://localhost:5080 — порт из backend/.../launchSettings.json).
this.properties.apiBaseUrl = this.properties.apiBaseUrl || 'https://api.tnsu.kz/approval-route';
// Для локальной разработки переключите в панели свойств веб-части на «Локально».
this.properties.apiBaseUrl = this.properties.apiBaseUrl || API_BASE_URL_PROD;
this.properties.aadResourceId = this.properties.aadResourceId || 'api://9232d9e2-9807-4753-808f-07250e5474b0';
this.properties.portalBaseUrl = this.properties.portalBaseUrl || 'https://api.tnsu.kz';
return Promise.resolve();
@@ -55,9 +61,13 @@ export default class ApprovalAdminWebPart extends BaseClientSideWebPart<IApprova
{
groupName: 'API',
groupFields: [
PropertyPaneTextField('apiBaseUrl', {
PropertyPaneDropdown('apiBaseUrl', {
label: 'Api Base Url',
description: 'По умолчанию — прод (https://api.tnsu.kz/approval-route). Для локальной разработки укажите http://localhost:5080.'
selectedKey: this.properties.apiBaseUrl,
options: [
{ key: API_BASE_URL_PROD, text: `Прод (${API_BASE_URL_PROD})` },
{ key: API_BASE_URL_LOCAL, text: `Локально (${API_BASE_URL_LOCAL})` }
]
}),
PropertyPaneTextField('aadResourceId', {
label: 'AAD Resource Id (App ID URI)',