Commit Graph

4 Commits

Author SHA1 Message Date
Тимур Городецкий f0272c2170 fix: check report access with the user id of the lists site
The user id differs per site, so the id from the page context showed
"Нет доступа" in reports when the page was not on /sites/stroy.
The id and the photo folder path now come from settings.siteUrl.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-10-19 16:17:56 +05:00
Тимур Городецкий 3128190b5c fix: retry AAD client creation after a failed token request
The rejected promise was cached, so a single network hiccup while
getting the Dataverse or API token broke every request to that resource
until the page was reloaded. Seen once in T-OBJ-11.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-10-19 10:07:07 +05:00
Тимур Городецкий 1c568ef81c fix: make HttpError detectable with instanceof
SPFx compiles to ES5, where subclasses of Error lose their prototype, so
`instanceof HttpError` was always false and the hub export showed the
generic message instead of "Ошибка API: {status} {statusText}".

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-10-16 08:58:17 +05:00
Тимур Городецкий b868e8012d feat: add StroyBot app shell with URL routing
One web part replaces the separate stroy-bot-* web parts. The section and
its parameters live in the page query string (?page=objects&projectId=5),
so links can be copied, opened in a new tab and the browser Back button works.

- shared config: site/Dataverse/API addresses, list and table names
- HTTP layer behind IHttpClient so repositories can be unit-tested
- ui-kit AppLayout + Sidebar, placeholder for sections not ported yet
- migration checklist with every feature of the old web parts
- design tokens mirrored from ui-kit instead of 8 copies

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-10-15 16:42:37 +05:00