Перейти к основному содержимому

index

@mineflow/client-react


@mineflow/client-react

Modules​

ModuleDescription
available-actions-
can-
context-
documents-
EAMEAM (активы) — рукописные хуки. Тривиальные read'ы (useAssets/useAsset) генерятся в ./eam.generated и ре-экспортируются ниже; здесь — write-хуки жизненного цикла актива (register/transfer/decommission + FSM-переходы), каждый инвалидирует список активов на успехе через useDomainMutation.
hooks-
HRHR (персонал, вахты, смены, табель, УЗ, закрепления техники) — рукописные хуки. Тривиальные read'ы (usePersonnel/useWatches/…) генерятся в ./hr.generated и ре-экспортируются ниже; здесь — нетривиальные read'ы (полный курсорный обход, singleton me, top-level asset-assignments, вахтовый ростер) и write-хуки жизненного цикла 5 агрегатов.
notifications-
offline-domain-
PRDPRD (сменные рапорты) — рукописные хуки. Тривиальные read'ы (useShiftReports/useShiftReport/useShiftReportEntries) генерятся в ./prd.generated и ре-экспортируются ниже. Здесь: - offline-устойчивый write-lifecycle (create→7 add→submit/reject) поверх shiftReportDomain (общий scope + стабильный mutationKey, ADR-0049); - approve / reject-after-approve саги (поллят статус, online-only).
provider-
query-keys-
realtime-
shift-report-offline-
use-available-actions-
use-can-
СправочникиСправочники (refs-kit, ADR-0014): кросс-областные lookups (core/refs, hr/refs, eam/refs), читаемые широким кругом ролей. Держим единым РУКОПИСНЫМ модулем, а не codegen (gen:hooks), потому что: 1. генератор жёстко единообразный — queryKeys.<group>.list(query)/.detail(id) + вывод по area; у refs ключи bespoke (refs.positions массив, refs.productionObjects(activeOnly) функция), а useProductionObjects(activeOnly=true) — руками подобранная сигнатура+дефолт (его потребляют web/mobile); codegen дал бы (query={}) и перевернул дефолт active-only→all, сломав вызовы; 2. cohesion — раздел «Справочники» живёт одним файлом, а codegen разнёс бы reads по core/hr/eam.generated.ts; 3. большинство refs-хуков — writes (PATCH/POST), которые codegen не трогает в принципе.