@haiiro/docuflow 0.0.13 → 0.0.15

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 (38) hide show
  1. package/README.md +3 -1
  2. package/bin/install.mjs +69 -3
  3. package/manifest.json +30 -20
  4. package/package.json +1 -1
  5. package/public/app/docflow-app.js +8 -7
  6. package/src/front-components/docflow-documents.front-component.mjs +41 -41
  7. package/src/front-components/docflow-documents.front-component.tsx +49 -32
  8. package/src/front-components/docflow-processes.front-component.mjs +34 -34
  9. package/src/front-components/docflow-processes.front-component.tsx +6 -9
  10. package/src/front-components/docflow-tasks.front-component.mjs +40 -39
  11. package/src/front-components/docflow-tasks.front-component.tsx +19 -14
  12. package/src/front-components/launch-process.front-component.mjs +30 -30
  13. package/src/front-components/process-steps.front-component.mjs +25 -25
  14. package/src/front-components/process-steps.front-component.tsx +2 -1
  15. package/src/front-components/task-form.front-component.mjs +45 -44
  16. package/src/front-components/task-form.front-component.tsx +12 -1
  17. package/src/logic-functions/bitrix-app.logic-function.mjs +27 -2
  18. package/src/logic-functions/bitrix-app.logic-function.ts +2 -2
  19. package/src/logic-functions/bitrix-event.logic-function.mjs +22 -1
  20. package/src/logic-functions/bitrix-event.logic-function.ts +2 -2
  21. package/src/logic-functions/bitrix-install.logic-function.mjs +26 -1
  22. package/src/logic-functions/bitrix-install.logic-function.ts +2 -2
  23. package/src/logic-functions/complete-task.logic-function.mjs +22 -1
  24. package/src/logic-functions/complete-task.logic-function.ts +2 -2
  25. package/src/logic-functions/docflow-app-session.logic-function.mjs +22 -1
  26. package/src/logic-functions/docflow-app-session.logic-function.ts +2 -2
  27. package/src/logic-functions/docflow-app.logic-function.mjs +29 -2
  28. package/src/logic-functions/docflow-app.logic-function.ts +2 -1
  29. package/src/logic-functions/launch-process.logic-function.mjs +23 -13
  30. package/src/logic-functions/launch-process.logic-function.ts +2 -2
  31. package/src/logic-functions/publish-process.logic-function.mjs +32 -11
  32. package/src/logic-functions/publish-process.logic-function.ts +8 -4
  33. package/src/logic-functions/save-launch-fields.logic-function.mjs +18 -8
  34. package/src/logic-functions/save-launch-fields.logic-function.ts +2 -2
  35. package/src/logic-functions/save-step-settings.logic-function.mjs +24 -2
  36. package/src/logic-functions/save-step-settings.logic-function.ts +2 -2
  37. package/src/logic-functions/save-task-form.logic-function.mjs +22 -1
  38. package/src/logic-functions/save-task-form.logic-function.ts +2 -2
@@ -37,7 +37,6 @@ import { type DocflowTask, type WorkspaceMember } from 'src/front/types';
37
37
  import {
38
38
  DataTable,
39
39
  DocflowRoot,
40
- formatTotal,
41
40
  ListToolbar,
42
41
  Message,
43
42
  pluralize,
@@ -56,8 +55,9 @@ import {
56
55
  useRowSelection,
57
56
  } from 'src/front/ui/components';
58
57
  import { FormFieldsBuilder } from 'src/front/ui/form-fields-builder';
59
- import { BulkChangeDialog, Button, type MenuAction, MenuButton, StatusChip, ViewTabs } from 'src/front/ui/kit';
58
+ import { BulkChangeDialog, Button, type MenuAction, MenuButton, QuickViews, StatusChip } from 'src/front/ui/kit';
60
59
 
60
+ import { TableSkeleton } from 'src/front/ui/skeleton';
61
61
  import { UrgentTaskCards } from 'src/front/ui/task-cards';
62
62
  import { TaskWorkPanel } from 'src/front/ui/task-work-panel';
63
63
  import {
@@ -427,11 +427,17 @@ const DocflowTasks = () => {
427
427
 
428
428
  const selectedIds = selection.selectedIds;
429
429
  const openSelectedCount = selectedTasks.filter((task) => task.status !== TASK_DONE_STATUS).length;
430
+ const openTask =
431
+ panel.kind === 'task'
432
+ ? (tasks.find(({ id }) => id === panel.taskId) ?? urgentTasks.find(({ id }) => id === panel.taskId))
433
+ : undefined;
434
+ const panelTitle =
435
+ panel.kind === 'create' ? 'Новое задание' : openTask?.title?.trim() || (panel.kind === 'task' ? 'Без названия' : undefined);
430
436
 
431
437
  return (
432
438
  <DocflowRoot>
433
439
  <SplitView
434
- panelTitle={panel.kind === 'create' ? 'Новое задание' : 'Задание'}
440
+ panelTitle={panelTitle}
435
441
  onClosePanel={() => setPanel({ kind: 'closed' })}
436
442
  panel={
437
443
  panel.kind === 'create' ? (
@@ -444,7 +450,13 @@ const DocflowTasks = () => {
444
450
  }}
445
451
  />
446
452
  ) : panel.kind === 'task' ? (
447
- <TaskWorkPanel key={panel.taskId} taskId={panel.taskId} withChat onChanged={() => void reloadAll()} />
453
+ <TaskWorkPanel
454
+ key={panel.taskId}
455
+ taskId={panel.taskId}
456
+ withChat
457
+ showTitle={false}
458
+ onChanged={() => void reloadAll()}
459
+ />
448
460
  ) : undefined
449
461
  }
450
462
  >
@@ -506,20 +518,12 @@ const DocflowTasks = () => {
506
518
  ],
507
519
  }}
508
520
  views={
509
- <ViewTabs
521
+ <QuickViews
510
522
  value={view}
511
523
  onChange={changeView}
512
524
  options={VIEWS.map((option) => ({ ...option, count: counts?.[option.value] }))}
513
525
  />
514
526
  }
515
- total={
516
- data === undefined
517
- ? undefined
518
- : formatTotal(tasks.length + urgentTasks.length, (data.totalCount ?? tasks.length) + urgentTasks.length, TASK_NOUN)
519
- }
520
- columns={{ columns: COLUMNS, hiddenKeys: hiddenColumns, onChange: setHiddenColumns }}
521
- onRefresh={() => void reloadAll()}
522
- isRefreshing={loading}
523
527
  onCreate={() => setPanel({ kind: 'create' })}
524
528
  />
525
529
  {hasCards && (
@@ -536,7 +540,7 @@ const DocflowTasks = () => {
536
540
  <Message tone="danger">{getErrorMessage(error, 'Не удалось загрузить задания')}</Message>
537
541
  </div>
538
542
  )}
539
- {loading && data === undefined && <Message>Загрузка…</Message>}
543
+ {loading && data === undefined && <TableSkeleton />}
540
544
  {!loading && error === undefined && tasks.length === 0 && (
541
545
  <Message>{urgentTasks.length > 0 ? 'Остальных заданий нет: все срочные — в карточках выше.' : 'Заданий нет.'}</Message>
542
546
  )}
@@ -550,6 +554,7 @@ const DocflowTasks = () => {
550
554
  <DataTable
551
555
  columns={COLUMNS}
552
556
  hiddenColumnKeys={hiddenColumns}
557
+ onHiddenColumnsChange={setHiddenColumns}
553
558
  sort={sort}
554
559
  onSortChange={(next) => {
555
560
  setSort(next);