Commits
Back
Последние изменения из mirror GitHub. Здесь видны не только SHA, но и автор, дата, количество файлов и зоны риска.
905f66a
fix(clients): give the fixed-layout table width:100% and swap the percentage name column for a fixed 150px (percentage collapsed to 0 in fixed layout when table width is unset)
2026-08-11T15:16:40+00:00
Anton Barinov <55404783+Anton-Barinov@users.noreply.github.com>
Files: 1 | core 0 | module 0 | forbidden 0
Flags:
06771de
fix(clients): name column 12% + email 130px so the fixed-layout table fits the 875px content area exactly
2026-08-11T15:13:40+00:00
Anton Barinov <55404783+Anton-Barinov@users.noreply.github.com>
Files: 1 | core 0 | module 0 | forbidden 0
Flags:
5fb3e43
fix(clients): drop the 760px min-width floor for the fixed-layout clients table so it shrinks exactly to the content area (no tiny internal scroll)
2026-08-11T15:11:48+00:00
Anton Barinov <55404783+Anton-Barinov@users.noreply.github.com>
Files: 1 | core 0 | module 0 | forbidden 0
Flags:
08adeb1
fix(clients): squeeze columns a touch more (name 16%, email 140px) so the table fits the ~875px content area exactly
2026-08-11T15:10:38+00:00
Anton Barinov <55404783+Anton-Barinov@users.noreply.github.com>
Files: 1 | core 0 | module 0 | forbidden 0
Flags:
7ea36c1
fix(clients): fixed table layout with explicit per-column widths (name 19%, INN/email/phone/extra/status/updated/actions pinned) so the 10-column table fits the content area; long values ellipsize with native hover tooltips
2026-08-11T15:09:24+00:00
Anton Barinov <55404783+Anton-Barinov@users.noreply.github.com>
Files: 1 | core 0 | module 0 | forbidden 0
Flags:
de3f142
fix(clients): cap name/email/phone/extra-fields columns (170/130/115px + ellipsis) so the 10-column table fits the content area without an internal horizontal scroll
2026-08-11T15:07:33+00:00
Anton Barinov <55404783+Anton-Barinov@users.noreply.github.com>
Files: 1 | core 0 | module 0 | forbidden 0
Flags:
97c6291
fix(tables): replace the global table safety layer fixed widths (clients/companies/contacts 1080px, counterparties 1400px) with a responsive floor (760/700/620px) plus per-column caps and ellipsis - the counterparties table drops from ~1400px to fit the ~875px content area, long names get native tooltips, nothing overflows the page
2026-08-11T15:05:44+00:00
Anton Barinov <55404783+Anton-Barinov@users.noreply.github.com>
Files: 3 | core 0 | module 0 | forbidden 0
Flags:
ce830d1
fix(tables): global thead min-width 200px->100px so auto-layout tables (projects/counterparties/clients) stop inflating every column to 200px - projects was 1125px, counterparties ~1400px, clients ~1841px, all with an internal horizontal scroll; narrow columns now size by content, wide fixed tables keep their explicit widths
2026-08-11T15:00:20+00:00
Anton Barinov <55404783+Anton-Barinov@users.noreply.github.com>
Files: 2 | core 0 | module 0 | forbidden 0
Flags:
e90741d
fix(tasks): responsive table min-width (980/780/660px) so the task list stops forcing an internal horizontal scroll at 1024-1280px viewports with the sidebar; the card wrapper still scrolls on phones and the page never scrolls horizontally
2026-08-11T14:52:11+00:00
Anton Barinov <55404783+Anton-Barinov@users.noreply.github.com>
Files: 2 | core 0 | module 0 | forbidden 0
Flags:
bd94199
feat(tasks): hover tooltip on truncated client/manager/assignee lines - title added only when the line is clipped (data-people-title + delegated mouseover/mouseout), so narrow windows still reveal the full text
2026-08-11T14:46:03+00:00
Anton Barinov <55404783+Anton-Barinov@users.noreply.github.com>
Files: 2 | core 0 | module 0 | forbidden 0
Flags:
f51a82b
fix(tasks): key column 88->72px, people column 170->230px (cap 240px) so long client/assignee names stop being ellipsized; task column yields space (31%->25%)
2026-08-11T14:42:14+00:00
Anton Barinov <55404783+Anton-Barinov@users.noreply.github.com>
Files: 3 | core 0 | module 0 | forbidden 0
Flags:
19eee57
fix(tasks): widen the client/manager/assignee column so long client names stop being ellipsized (110->170px, cap 200px); task column yields space (36%->31%), state column 160->150px; drop the now-redundant 190px min-width floor
2026-08-11T14:37:39+00:00
Anton Barinov <55404783+Anton-Barinov@users.noreply.github.com>
Files: 3 | core 0 | module 0 | forbidden 0
Flags:
b05ecff
fix(tasks): key column now truly content-sized - slash its cell padding (fixed layout adds padding to column width, so 96px rendered ~105px vs 58px badges) and narrow to 88px with nowrap
2026-08-11T14:34:50+00:00
Anton Barinov <55404783+Anton-Barinov@users.noreply.github.com>
Files: 3 | core 0 | module 0 | forbidden 0
Flags:
852ad3a
fix(i18n): retrying_data key now exists in the js.notify client-message namespace in all 7 locales
2026-08-11T14:30:05+00:00
Anton Barinov <55404783+Anton-Barinov@users.noreply.github.com>
Files: 8 | core 0 | module 0 | forbidden 0
Flags:
0fdd7d9
fix(tasks): drop the level-rank number from sort headers - only the direction arrow (▲/▼) is shown, multi-level sorting still works
2026-08-11T14:22:55+00:00
Anton Barinov <55404783+Anton-Barinov@users.noreply.github.com>
Files: 2 | core 0 | module 0 | forbidden 0
Flags:
814c850
fix(tasks): right-align the actions header too (generic thead th rule forces text-align:left !important, so the override needs !important as well)
2026-08-11T14:20:01+00:00
Anton Barinov <55404783+Anton-Barinov@users.noreply.github.com>
Files: 1 | core 0 | module 0 | forbidden 0
Flags:
a9b89de
fix(tasks): right-align the actions column (header text was left while the buttons were already flush right)
2026-08-11T14:17:43+00:00
Anton Barinov <55404783+Anton-Barinov@users.noreply.github.com>
Files: 2 | core 0 | module 0 | forbidden 0
Flags:
27f7241
fix(tasks): force table-layout:fixed with !important so the generic .crm-content table rule cannot reset it to auto (which stretched every column to ~200px)
2026-08-11T14:13:10+00:00
Anton Barinov <55404783+Anton-Barinov@users.noreply.github.com>
Files: 1 | core 0 | module 0 | forbidden 0
Flags:
8cc088f
fix(tasks): hard-cap narrow columns in fixed table layout so the key column stays content-sized (auto layout made every column stretch to its max-content)
2026-08-11T14:06:10+00:00
Anton Barinov <55404783+Anton-Barinov@users.noreply.github.com>
Files: 1 | core 0 | module 0 | forbidden 0
Flags:
5a6928e
fix(tasks): key column now content-sized (96px) instead of a leftover 32%; auto table layout so narrow columns stay narrow and the task column absorbs the space
2026-08-11T14:03:54+00:00
Anton Barinov <55404783+Anton-Barinov@users.noreply.github.com>
Files: 3 | core 0 | module 0 | forbidden 0
Flags:
c36895f
feat(tasks): multi-level sorting on the list table headers (click adds level, second click flips, third removes; sort=key1:ASC,key2:DESC in URL; API builds ORDER BY chain; key column sortable; legacy sort+order still accepted)
2026-08-11T13:51:12+00:00
Anton Barinov <55404783+Anton-Barinov@users.noreply.github.com>
Files: 4 | core 0 | module 0 | forbidden 0
Flags:
a5f7047
fix(tasks): unify thead typography - sort buttons inherit the plain th style
2026-08-11T13:32:27+00:00
Anton Barinov <55404783+Anton-Barinov@users.noreply.github.com>
Files: 2 | core 0 | module 0 | forbidden 0
Flags:
3696ed5
feat(my-day): merge due/status/priority into one stacked state column
2026-08-11T13:27:23+00:00
Anton Barinov <55404783+Anton-Barinov@users.noreply.github.com>
Files: 4 | core 0 | module 0 | forbidden 0
Flags:
afbeabe
feat(tasks): add project_title sort button to the task column header
2026-08-11T13:20:13+00:00
Anton Barinov <55404783+Anton-Barinov@users.noreply.github.com>
Files: 3 | core 0 | module 0 | forbidden 0
Flags:
84a8d3b
feat(tasks): merge the project column into the task column in the list view
2026-08-11T13:12:58+00:00
Anton Barinov <55404783+Anton-Barinov@users.noreply.github.com>
Files: 5 | core 0 | module 0 | forbidden 0
Flags:
6a8dfb9
feat(tasks): merge the due column into the status/priority column in the list view
2026-08-11T13:06:21+00:00
Anton Barinov <55404783+Anton-Barinov@users.noreply.github.com>
Files: 5 | core 0 | module 0 | forbidden 0
Flags:
81f3210
ci(web): add workflow that runs the frontend unit tests on push/PR
2026-08-11T12:32:38+00:00
Anton Barinov <55404783+Anton-Barinov@users.noreply.github.com>
Files: 3 | core 0 | module 0 | forbidden 0
Flags:
2dfc776
chore(i18n): drop dead tasks.views_* keys from all 7 web locales
2026-08-11T12:26:13+00:00
Anton Barinov <55404783+Anton-Barinov@users.noreply.github.com>
Files: 8 | core 0 | module 0 | forbidden 0
Flags:
f1ba7d2
test(web): add local regression test for the compact projects/counterparties tables
2026-08-11T12:22:40+00:00
Anton Barinov <55404783+Anton-Barinov@users.noreply.github.com>
Files: 2 | core 0 | module 0 | forbidden 0
Flags:
12f1ade
test(web): add local regression test for the compact tasks-list render
2026-08-11T12:18:06+00:00
Anton Barinov <55404783+Anton-Barinov@users.noreply.github.com>
Files: 2 | core 0 | module 0 | forbidden 0
Flags:
8dd76dc
refactor(tasks): remove the dead saved-views machinery entirely
2026-08-11T12:13:45+00:00
Anton Barinov <55404783+Anton-Barinov@users.noreply.github.com>
Files: 5 | core 0 | module 0 | forbidden 0
Flags:
ba19039
feat(tables): compact counterparties (10->7) and projects (7->6) list tables
2026-08-11T12:08:11+00:00
Anton Barinov <55404783+Anton-Barinov@users.noreply.github.com>
Files: 5 | core 0 | module 0 | forbidden 0
Flags:
6951a43
fix(day-week): parent links de-emphasized like the tasks list
2026-08-11T12:01:40+00:00
Anton Barinov <55404783+Anton-Barinov@users.noreply.github.com>
Files: 1 | core 0 | module 0 | forbidden 0
Flags:
1fca637
fix(tasks): parent link must beat the global table-link style
2026-08-11T11:56:54+00:00
Anton Barinov <55404783+Anton-Barinov@users.noreply.github.com>
Files: 1 | core 0 | module 0 | forbidden 0
Flags:
033d53b
feat(tasks): compact list table - merged people and state columns, narrower widths
2026-08-11T11:53:54+00:00
Anton Barinov <55404783+Anton-Barinov@users.noreply.github.com>
Files: 11 | core 0 | module 0 | forbidden 0
Flags:
73f3b0f
feat(theme): contrast theme is fully flat - all shadows removed
2026-08-11T09:48:56+00:00
Anton Barinov <55404783+Anton-Barinov@users.noreply.github.com>
Files: 2 | core 0 | module 0 | forbidden 0
Flags:
ec588d9
feat(theme): high-contrast theme now meets WCAG (AA text 4.5:1 / non-text 3:1, most pairs AAA 7:1)
2026-08-11T09:42:40+00:00
Anton Barinov <55404783+Anton-Barinov@users.noreply.github.com>
Files: 2 | core 0 | module 0 | forbidden 0
Flags:
ada7f18
fix(profile): theme hint now reminds to press the save button after choosing a scheme
2026-08-11T09:08:50+00:00
Anton Barinov <55404783+Anton-Barinov@users.noreply.github.com>
Files: 9 | core 0 | module 0 | forbidden 0
Flags:
9da1200
feat(profile): explain the high-contrast theme under the theme select
2026-08-11T08:53:41+00:00
Anton Barinov <55404783+Anton-Barinov@users.noreply.github.com>
Files: 10 | core 0 | module 0 | forbidden 0
Flags:
e59ed42
fix(web): rename high-contrast theme option to describe the theme, not the audience
2026-08-11T08:25:08+00:00
Anton Barinov <55404783+Anton-Barinov@users.noreply.github.com>
Files: 9 | core 0 | module 0 | forbidden 0
Flags:
b97e869
fix(api): feature-flag and AI-intent seeding is idempotent and race-safe (unique index + once-per-request)
2026-08-11T08:02:36+00:00
Anton Barinov <55404783+Anton-Barinov@users.noreply.github.com>
Files: 4 | core 0 | module 0 | forbidden 0
Flags:
bfcc098
fix(api): module scheduler task registration is idempotent (registerTask upsert + unique index + self-healing dedupe) - stops module_scheduled_tasks growing by 4 rows per API request
2026-08-11T07:20:21+00:00
Anton Barinov <55404783+Anton-Barinov@users.noreply.github.com>
Files: 2 | core 0 | module 0 | forbidden 0
Flags:
1f7a6a6
fix(web): service-worker retry page language follows the CRM locale (crm_locale cookie), Accept-Language parsed by q-priority
2026-08-11T06:35:24+00:00
Anton Barinov <55404783+Anton-Barinov@users.noreply.github.com>
Files: 2 | core 0 | module 0 | forbidden 0
Flags:
f14078f
feat(api): idempotency for contact/client/counterparty/company/subtask creates + double-click protection
2026-08-11T06:29:46+00:00
Anton Barinov <55404783+Anton-Barinov@users.noreply.github.com>
Files: 8 | core 0 | module 0 | forbidden 0
Flags:
fc43ae2
feat(web): auto-retry page loads on 5xx via service worker + recoverable 500 page
2026-08-11T05:57:14+00:00
Anton Barinov <55404783+Anton-Barinov@users.noreply.github.com>
Files: 5 | core 0 | module 0 | forbidden 0
Flags:
53fdad1
feat(api): automatic 5xx retry for idempotent writes (POST/PUT/PATCH with X-Idempotency-Key)
2026-08-11T05:46:00+00:00
Anton Barinov <55404783+Anton-Barinov@users.noreply.github.com>
Files: 3 | core 0 | module 0 | forbidden 0
Flags:
dc06f83
fix(web): status-bar retry message now resolves its translation key (js.notify.retrying_data)
2026-08-11T05:28:49+00:00
Anton Barinov <55404783+Anton-Barinov@users.noreply.github.com>
Files: 1 | core 0 | module 0 | forbidden 0
Flags:
d4bee40
feat(kanban): always stream tasks in fixed 100-card portions
2026-08-10T21:20:25+00:00
Anton Barinov <55404783+Anton-Barinov@users.noreply.github.com>
Files: 5 | core 0 | module 0 | forbidden 0
Flags:
61323db
test(web): graceful npm fallback + body-preservation assert for non-idempotent 425
2026-08-10T21:08:57+00:00
Anton Barinov <55404783+Anton-Barinov@users.noreply.github.com>
Files: 1 | core 0 | module 0 | forbidden 0
Flags:
2c882dd
test(web): unit tests for api.js anti-replay retry path (425/307/opaqueredirect)
2026-08-10T21:07:47+00:00
Anton Barinov <55404783+Anton-Barinov@users.noreply.github.com>
Files: 1 | core 0 | module 0 | forbidden 0
Flags: