@ai-matrx/records 0.99.30 → 0.99.32

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 (74) hide show
  1. package/CHANGELOG.md +20 -1
  2. package/dist/{client-Dthx26hr.d.ts → client-CrwedBYU.d.ts} +8 -8
  3. package/dist/{client-B7KEs9hi.d.cts → client-D1EwyWfh.d.cts} +8 -8
  4. package/dist/core/index.cjs +64 -0
  5. package/dist/core/index.cjs.map +1 -1
  6. package/dist/core/index.d.cts +203 -35
  7. package/dist/core/index.d.ts +203 -35
  8. package/dist/core/index.js +64 -0
  9. package/dist/core/index.js.map +1 -1
  10. package/dist/data/index.d.cts +11 -11
  11. package/dist/data/index.d.ts +11 -11
  12. package/dist/{declareTable-enQs2N0E.d.cts → declareTable-BIIt0Wqt.d.cts} +3 -3
  13. package/dist/{declareTable-CvBu5dTJ.d.ts → declareTable-CC5rTTIA.d.ts} +3 -3
  14. package/dist/{doors-KbjyhBW-.d.cts → doors-D1yAs0a0.d.cts} +1 -1
  15. package/dist/{doors-C2-sFvAk.d.ts → doors-D2z3kH2i.d.ts} +1 -1
  16. package/dist/entity/index.d.cts +7 -7
  17. package/dist/entity/index.d.ts +7 -7
  18. package/dist/{field-ppX29ddi.d.cts → field-B8loYt-A.d.cts} +1 -1
  19. package/dist/{field-BHlhq24W.d.ts → field-DaE90BZ7.d.ts} +1 -1
  20. package/dist/forms/index.d.cts +3 -3
  21. package/dist/forms/index.d.ts +3 -3
  22. package/dist/index.d.cts +13 -13
  23. package/dist/index.d.ts +13 -13
  24. package/dist/memory/index.d.cts +7 -7
  25. package/dist/memory/index.d.ts +7 -7
  26. package/dist/{objectOrganization-DtR3lWG2.d.ts → objectOrganization-D1ox3gUx.d.ts} +1 -1
  27. package/dist/{objectOrganization-Cu73SBxH.d.cts → objectOrganization-DazBoDAq.d.cts} +1 -1
  28. package/dist/{port-Bk7TG0aE.d.ts → port-D6wepPvr.d.ts} +3 -3
  29. package/dist/{port-rqQEGhew.d.cts → port-O-UdH1HS.d.cts} +3 -3
  30. package/dist/{portal-DmxuUr2f.d.ts → portal-CAssJHRZ.d.ts} +1 -1
  31. package/dist/{portal-ffH13fsE.d.cts → portal-L_mN8l9P.d.cts} +1 -1
  32. package/dist/{ports-BCNNghmf.d.ts → ports-CmmvR8OI.d.ts} +2 -2
  33. package/dist/{ports-iATV-A2v.d.cts → ports-alv3bgKY.d.cts} +2 -2
  34. package/dist/questions/index.d.cts +9 -9
  35. package/dist/questions/index.d.ts +9 -9
  36. package/dist/realtime/index.d.cts +3 -3
  37. package/dist/realtime/index.d.ts +3 -3
  38. package/dist/{record-C8q21jjB.d.cts → record-CTgSgWe3.d.cts} +1 -1
  39. package/dist/{record-C8q21jjB.d.ts → record-CTgSgWe3.d.ts} +1 -1
  40. package/dist/{relation-Bwp8iuei.d.cts → relation-BjjjXyqn.d.cts} +2 -2
  41. package/dist/{relation-Bsjwkn6N.d.ts → relation-T4biacnz.d.ts} +2 -2
  42. package/dist/results/index.cjs +245 -0
  43. package/dist/results/index.cjs.map +1 -0
  44. package/dist/results/index.d.cts +24 -0
  45. package/dist/results/index.d.ts +24 -0
  46. package/dist/results/index.js +222 -0
  47. package/dist/results/index.js.map +1 -0
  48. package/dist/{rule-BQwUtKk5.d.cts → rule-49jO7lN-.d.cts} +1 -1
  49. package/dist/{rule-cGqclk_0.d.ts → rule-DzNj0QvN.d.ts} +1 -1
  50. package/dist/scopes/index.d.cts +3 -3
  51. package/dist/scopes/index.d.ts +3 -3
  52. package/dist/search/index.d.cts +1 -1
  53. package/dist/search/index.d.ts +1 -1
  54. package/dist/setup/index.d.cts +12 -12
  55. package/dist/setup/index.d.ts +12 -12
  56. package/dist/{subscription-eNzL9scc.d.ts → subscription-Bp1RSb6p.d.ts} +2 -2
  57. package/dist/{subscription-Ba8RKtPA.d.cts → subscription-CuaGi3lC.d.cts} +2 -2
  58. package/dist/templates/index.d.cts +10 -10
  59. package/dist/templates/index.d.ts +10 -10
  60. package/dist/typed-table/index.d.cts +10 -10
  61. package/dist/typed-table/index.d.ts +10 -10
  62. package/dist/{types-C4XCuv8O.d.cts → types-B54BeQzf.d.cts} +2 -2
  63. package/dist/{types-BlzdL4Vd.d.cts → types-BWfL38XJ.d.cts} +2 -2
  64. package/dist/{types-BBR2NGqj.d.ts → types-BZcYXFK3.d.ts} +2 -2
  65. package/dist/{types-EKwXJfxY.d.cts → types-Bztv0-pH.d.cts} +2 -2
  66. package/dist/{types-CmkHpvll.d.ts → types-CjGuR5ks.d.ts} +2 -2
  67. package/dist/{types-CrkzINrb.d.ts → types-bN7dG2ji.d.ts} +2 -2
  68. package/dist/use-cases/index.d.cts +5 -5
  69. package/dist/use-cases/index.d.ts +5 -5
  70. package/dist/{validate-BKeBAVSi.d.cts → validate-8VBa2xIU.d.cts} +1 -1
  71. package/dist/{validate-BB6DWgCP.d.ts → validate-xBnply7J.d.ts} +1 -1
  72. package/dist/views/index.d.cts +9 -9
  73. package/dist/views/index.d.ts +9 -9
  74. package/package.json +14 -4
@@ -1,20 +1,21 @@
1
- import { a as RecordsError, R as RecordsResult, P as PgError, q as StaleWriteDetail, n as RecordDocument, r as PredictedRefusal, s as ReadValue, U as Uuid } from '../record-C8q21jjB.js';
2
- export { t as ABSENCE_REASONS, u as ACTOR_VOCABULARY, v as AbsenceReason, A as Actor, w as COMPUTE_ON, x as CONTEXT_POLICIES, C as ComputeOn, d as ContextPolicy, y as DECLARABLE_FIELD_KINDS, z as DELIVERIES, D as DeclarableFieldKind, B as Delivery, E as ENTITY_TOKENS, G as EntityToken, I as FIELD_SENSITIVITIES, J as FIELD_SOURCES, K as FORMULA_NODE_RESULTS, L as FRESHNESS, o as FieldBehavior, c as FieldSensitivity, F as FieldSource, M as ForbiddenEnvelopeWord, N as Freshness, H as HiddenFieldNotice, Q as KERNEL_TABLES, V as KernelTableName, W as KeysetRow, X as MERGE_FIELD_MODIFIERS, Y as MERGE_FIELD_SEMANTIC_TYPES, Z as MERGE_FIELD_SOURCES, _ as MergeFieldModifier, $ as MergeFieldSemanticType, a0 as MergeFieldSource, a1 as ON_DELETE, a2 as OVERRIDE_POLICIES, O as OnDelete, a3 as OverridePolicy, a4 as PARITY_FIELD_TYPES, a5 as PER_VALUE_ACCESS_WORDS, p as ParityFieldType, a6 as PerValueAccessWord, a7 as ProvenancePointer, a8 as RELATION_BINDINGS, a9 as RELATION_CARDINALITIES, aa as RELATION_FLAVORS, ab as RETIRED_ACTOR_WORDS, ac as RULE_NODE_KINDS, ad as RULE_USES, l as ReadRow, ae as RecordChange, af as RecordChangeResult, ag as RecordGraphWritten, ah as RecordKeysetPage, ai as RecordPage, k as RecordPageSort, aj as RecordRead, ak as RecordRevision, m as RecordsErrorCode, g as RelationBinding, f as RelationCardinality, e as RelationFlavor, al as RetiredActorWord, i as RuleNodeKind, j as RuleUse, am as STORAGE_MODES, an as STORE_DOORS, ao as STORE_KNOBS, ap as STORE_REFUSAL_CODES, S as StorageMode, aq as StoreDoorName, ar as StoreRefusalCode, as as StoredRecord, at as TABLE_DISPLAYS, au as TABLE_ORIGINS, av as TABLE_TYPES, b as TableDisplay, aw as TableOrigin, T as TableType, h as Timestamp, ax as VALUE_ALTERNATE_KEYS, ay as VALUE_ENVELOPE_KEYS, az as ValueAlternate, aA as ValueAlternateKey, aB as ValueEnvelope, aC as ValueEnvelopeKey, aD as ValueSource, aE as WriteConflict, aF as err, aG as isLockedStub, aH as isRecordsErr, aI as ok, aJ as splitLockedRows, aK as unwrapRecords } from '../record-C8q21jjB.js';
3
- export { A as ARCHIVE_LANES, a as ARCHIVE_LANE_LABEL, b as ARCHIVE_LANE_MEANS, c as A_PERSONS_REFUSAL, d as ActionRefusal, e as ActionRunResult, f as AdminTable, g as AnonTokenBinding, h as ArchiveLane, i as ArchivedChecklistTemplate, j as ArchivedDoorRow, k as ArchivedForm, l as ArchivedRow, m as AsOf, n as AutomationAction, o as AutomationComparison, p as AutomationDeclared, q as AutomationFilter, r as AutomationFlipped, s as AutomationItem, t as AutomationLastRun, u as AutomationList, v as AutomationRevision, w as AutomationRevisions, x as AutomationRun, y as AutomationRunStatus, z as AutomationRuns, B as AutomationSpec, C as AutomationStep, D as AutomationTested, E as AutomationToken, G as AutomationTrigger, H as AutomationValue, I as AutomationValues, J as AutomationWeekday, K as AutomationWhen, L as BUILT_KIND_WORD, M as CHOICE_NUDGES, N as CaptureField, O as CaptureFileRef, P as CaptureOutcome, Q as CaptureQuestion, S as CaptureSheetFace, U as CaptureSheetSummary, V as ChecklistDeclared, W as ChecklistRequirement, X as ChecklistRequirementKind, Y as ChecklistRoleSpec, Z as ChecklistRunStarted, _ as ChecklistRunStep, $ as ChecklistRunSummary, a0 as ChecklistSpec, a1 as ChecklistStepCompleted, a2 as ChecklistStepSpec, a3 as ChecklistTemplateShape, a4 as ChecklistTemplateSummary, a5 as ChecklistTrigger, a6 as ChecklistTriggerKind, a7 as ChoiceCellBack, a8 as ChoiceLike, a9 as ChoiceNudge, aa as ChoiceOption, ab as ChoiceRehome, ac as ChoiceUsage, ad as ChoicesRehomed, ae as CommentThreadRead, af as CommentWritten, ag as ConversationScope, ah as ConversationScopeContext, ai as CustomFieldTableType, aj as DEFAULT_ARCHIVE_LANE, ak as DEFAULT_PAGE_SIZE, al as DRILL_CHART_TOKENS, am as DRILL_DESCRIPTION_MAX, an as DRILL_DOORS, ao as DRILL_SCHEMA, ap as DataHomeTable, aq as DecorationColor, ar as DecorationPath, as as DecorationRule, at as DecorationRuleOp, au as DecorationTarget, av as DocRenderRow, aw as DocSignatureCheck, ax as DocSignatureRow, ay as DocTemplateRow, az as DocToken, aA as DocUnresolvedToken, aB as DrillAdHocOp, aC as DrillAnswer, aD as DrillAnswerRow, aE as DrillChartToken, aF as DrillDeclaration, aG as DrillDefinition, aH as DrillDimension, aI as DrillFinding, aJ as DrillGrain, aK as DrillHaving, aL as DrillLane, aM as DrillLevel, aN as DrillMeasure, aO as DrillMeasureOp, aP as DrillMeasureWhereValue, aQ as DrillPath, aR as DrillQuestion, aS as DrillRecords, aT as DrillRowsPage, aU as DrillSource, aV as DrillView, aW as EnrichAlternate, aX as EnrichCell, aY as EnrichDeclared, aZ as EnrichDueRow, a_ as EnrichRun, a$ as EnrichSource, b0 as Enrichment, b1 as EnrichmentSummary, b2 as EntityBackLinkItem, b3 as EntityBackLinks, b4 as EntityFieldRights, b5 as EntityFieldValue, b6 as EntityFieldsAcross, b7 as EntityRecordMatch, b8 as EntityRecordRead, b9 as EntityRecordsFound, ba as EntityRowWritten, bb as EntityTableFacts, bc as ExternalPrincipalCard, F as FieldDrift, bd as FieldDriftAspect, be as FieldHistoryEntry, bf as FieldRetyped, bg as FormArchiveAnswer, bh as FormulaParse, bi as FormulaPreview, bj as GridLayout, bk as GridLayoutMode, bl as GridRowHeight, bm as HistoryActor, bn as HistoryActorKind, bo as HistoryChange, bp as Home, bq as ImportBatchResult, br as ImportColumnPlan, bs as ImportColumnsDeclared, bt as ImportFinished, bu as ImportOpened, bv as ImportOutcome, bw as ImportPlan, bx as ImportPolicy, by as ImportProposal, bz as ImportReport, bA as ImportRun, bB as InboundAddress, bC as InboundDeclared, bD as InboxCounts, bE as InboxStateChange, bF as IoExportPage, bG as MigrationEntry, bH as MigrationUndone, bI as NewEntityFieldDeclaration, bJ as OutsideShareAnswer, bK as PIPELINE_RULE_KINDS, bL as ParentExtracted, bM as PickListDocument, bN as PickListItem, bO as PickListItemInput, bP as Pipeline, bQ as PipelineColumn, bR as PipelineDeclared, bS as PipelineGate, bT as PipelineGatePreview, bU as PipelineMissingField, bV as PipelineMoveMany, bW as PipelineMoveManyItem, bX as PipelineMoveManyResult, bY as PipelineMoveResult, bZ as PipelineMoveVerdict, b_ as PipelineRule, b$ as PipelineRuleKind, c0 as PipelineSpec, c1 as PipelineStage, c2 as PipelineVerdict, c3 as PromotedPredicate, c4 as PublishBinding, c5 as PublishBindingKind, c6 as QueryPlan, c7 as ROW_LABEL_FORMULA_MAX_LENGTH, c8 as ROW_WEB_NOT_READY, c9 as RecordChangeAction, ca as RecordComment, cb as RecordEvent, cc as RecordHeader, cd as RecordHistoryEntry, ce as RecordQuery, cf as RecordRowControls, cg as RecordScopeComment, ch as RecordScopeContext, ci as RecordScopeField, cj as RecordScopeHistoryEntry, ck as RecordScopeRelation, cl as RecordScopeWithheld, cm as RecordSplit, R as RecordsClient, cn as RecordsMerged, co as RegisteredTable, cp as ResolvedPublishBinding, cq as ResolvedPublishBindingKind, cr as RestorePreview, cs as RestoreResult, ct as RetypeBehaviour, cu as RetypePreview, cv as RowAction, cw as RowActionStep, cx as RowDefaultsApplied, cy as SHOWN_TO_LABEL, cz as SHOWN_TO_VALUES, cA as SHOWN_TO_WHO_MAY_CHANGE, cB as STAGE_RULE_ENFORCEMENT, cC as STAGE_RULE_ON_FAIL, cD as ShownTo, cE as StagePending, cF as StagePendingOnBoard, cG as StageRuleEnforcement, cH as StageRuleOnFail, cI as StageRuleWarning, cJ as SyncAutoRefresh, cK as Table, T as TableArchiveProgress, cL as TableCapacity, cM as TableCopyInProgress, cN as TableCopySpec, cO as TableDecorations, cP as TableDuplicateProgress, cQ as TableDuplicated, cR as TableFact, cS as TableHome, cT as TableHomeDestination, cU as TableLevel, cV as TableLevelApproval, cW as TableLevelFacts, cX as TableLevelSet, cY as TableListEntry, cZ as TableLiveLocation, c_ as TableMoved, c$ as TablePlacement, d0 as TablePlacementFact, d1 as TableReaderRule, d2 as TableRestoreProgress, d3 as TableRowCount, d4 as TableRowDefaults, d5 as TableRowDefaultsPatch, d6 as TableRowLabel, d7 as TableSyncAnswer, d8 as TableSyncResult, d9 as TableSyncSettings, da as TableSyncSource, db as TableSyncSourceDocument, dc as TableSyncSpec, dd as TableWebhook, de as TableWebhookDeclared, df as TypedChoiceDecision, dg as ViewLayout, dh as ViewOrderSet, di as WorkApprovalDecision, dj as WorkApprovalFiled, dk as WorkApprovalState, dl as WorkApprover, dm as WorkAssignment, dn as WorkAssignmentField, dp as WorkChange, dq as WorkDecideMany, dr as WorkDecideManyItem, ds as WorkDecideManyResult, dt as WorkDecideVerdict, du as WorkDueState, dv as WorkGraph, dw as WorkInboxItem, dx as WorkInboxKind, dy as WorkInboxView, dz as WorkInstantiation, dA as WorkListFlavour, dB as WorkListItem, dC as WorkOrigin, dD as WorkRecordState, dE as WorkSlotHold, dF as WorkState, dG as WorkTemplateNode, dH as WorkTemplateRelation, dI as WorkTurn, dJ as actionRefusals, dK as archivedByLine, dL as archivedWhen, dM as asChoiceNudge, dN as asWriteConflict, dO as automationWebhookUrl, dP as choiceSlug, dQ as choiceValuesOf, dR as choicesOf, dS as clearsRowLabel, dT as createRecordsClient, dU as decideTypedChoice, dV as declareDrillDefinition, dW as drillAnswerOf, dX as drillFindingKnob, dY as emptyArchiveLine, dZ as exportPageXlsx, d_ as holdsARetiredChoice, d$ as intersectIds, e0 as isAPersonsRefusal, e1 as isArchiveLane, e2 as isFoundation, e3 as isShownTo, e4 as isTheChosen, e5 as keptGroups, e6 as keptOutOfSight, e7 as keptTableHref, e8 as levelHasShownTo, e9 as looksLikeAnId, ea as mayDrag, eb as moveConsequence, ec as moveInOrder, ed as offeredAsContext, ee as optionKey, ef as optionLabel, eg as parseFieldDrift, eh as parseTableCopiesInProgress, ei as parseTableDuplicateProgress, ej as parseTableDuplicated, ek as parseTableHome, el as parseTableMoved, em as planQuery, en as previewRetype, eo as previewRuleChange, ep as recordChangeTrigger, eq as recordSourceKey, er as recordSourceTable, es as recordsUseSentence, et as rehomeSentence, eu as removedChoicesInUse, ev as ruleThatRefuses, ew as rulesWithTopStar, ex as sameDocument, ey as scopeChip, ez as sheetSyncSpec, eA as valueConverts, eB as withRowCounts, eC as withTableFacts, eD as withTablePlacement } from '../client-Dthx26hr.js';
4
- import { d as RecordsDataSource } from '../ports-BCNNghmf.js';
5
- export { M as MyLevel, O as OpLedger, P as PERMISSION_LEVELS, g as PermissionLevel, h as RecordsActor, e as RecordsChangeSink, a as RecordsConfig, c as RecordsErrorSink, i as RecordsFilter, R as RecordsRealtimePort, j as RecordsResolverPort, k as RecordsResponse, l as RecordsTableQuery, b as RowAgentPort, f as RowAgentTarget, m as asPermissionLevel, n as atLeast, o as createOpLedger, p as defaultOpLedger, q as forgetAllOps, r as highestLevel, s as isOwnOp, t as mintOpId, u as rememberedOpCount } from '../ports-BCNNghmf.js';
6
- import { F as Field } from '../field-BHlhq24W.js';
7
- export { A as ADDRESS_PARTS, c as AGENT_WRITER_WORDS, d as AddressPart, e as AddressValue, B as BARCODE_SYMBOLOGIES, f as BUTTON_DOES, g as ButtonDoes, h as ButtonPressed, i as ButtonSettings, C as ChoiceOptions, j as CoerceOptions, k as Coerced, l as CoercedAnswers, m as CoercibleField, n as FIELD_KINDS, o as FieldDuplicated, p as FieldKind, q as FieldOptionEdit, r as FieldPatch, s as FieldProposal, b as FieldRule, a as FieldTypeWord, K as KernelTargets, t as NEWER_FIELD_KINDS, u as NOT_A_MEMBER_WORDS, N as NewFieldDeclaration, v as NewerFieldKind, P as ParityFieldTypeDescriptor, w as PersonStamp, R as RelationDisplay, x as RelationNameIndex, y as RelationNameMatch, z as RelationNamesAnswer, S as STATUS_GROUPS, D as STATUS_GROUP_WORDS, E as SYSTEM_WRITER_WORDS, G as StatusGroup, T as TableProposal, H as addressFromText, I as addressMapUrl, J as addressText, L as allowsOtherValues, M as buttonNeeds, O as buttonOf, Q as buttonUrlPlaceholders, U as coerceTypedAnswer, V as coerceTypedAnswers, W as coercionLabel, X as durationText, Y as entityReferenceKindsOf, Z as fieldKindFor, _ as isAddressValue, $ as isButtonField, a0 as isEntityReferenceConfig, a1 as isPersonStamp, a2 as newerKindExportWords, a3 as newerKindOf, a4 as newerKindWords, a5 as personStampText, a6 as ratingMaxOf, a7 as readTypedDuration, a8 as relationNameIndexOf, a9 as relationNameKey, aa as relationNamesIn, ab as richTextPlain, ac as safeLinkHref, ad as splitListCell, ae as statusGroupOf } from '../field-BHlhq24W.js';
1
+ import { a as RecordsError, R as RecordsResult, P as PgError, n as RecordDocument, q as PredictedRefusal, r as ReadValue, U as Uuid } from '../record-CTgSgWe3.js';
2
+ export { s as ABSENCE_REASONS, t as ACTOR_VOCABULARY, u as AbsenceReason, A as Actor, v as COMPUTE_ON, w as CONTEXT_POLICIES, C as ComputeOn, d as ContextPolicy, x as DECLARABLE_FIELD_KINDS, y as DELIVERIES, D as DeclarableFieldKind, z as Delivery, E as ENTITY_TOKENS, B as EntityToken, G as FIELD_SENSITIVITIES, I as FIELD_SOURCES, J as FORMULA_NODE_RESULTS, K as FRESHNESS, o as FieldBehavior, c as FieldSensitivity, F as FieldSource, L as ForbiddenEnvelopeWord, M as Freshness, H as HiddenFieldNotice, N as KERNEL_TABLES, Q as KernelTableName, V as KeysetRow, W as MERGE_FIELD_MODIFIERS, X as MERGE_FIELD_SEMANTIC_TYPES, Y as MERGE_FIELD_SOURCES, Z as MergeFieldModifier, _ as MergeFieldSemanticType, $ as MergeFieldSource, a0 as ON_DELETE, a1 as OVERRIDE_POLICIES, O as OnDelete, a2 as OverridePolicy, a3 as PARITY_FIELD_TYPES, a4 as PER_VALUE_ACCESS_WORDS, p as ParityFieldType, a5 as PerValueAccessWord, a6 as ProvenancePointer, a7 as RELATION_BINDINGS, a8 as RELATION_CARDINALITIES, a9 as RELATION_FLAVORS, aa as RETIRED_ACTOR_WORDS, ab as RULE_NODE_KINDS, ac as RULE_USES, l as ReadRow, ad as RecordChange, ae as RecordChangeResult, af as RecordGraphWritten, ag as RecordKeysetPage, ah as RecordPage, k as RecordPageSort, ai as RecordRead, aj as RecordRevision, m as RecordsErrorCode, g as RelationBinding, f as RelationCardinality, e as RelationFlavor, ak as RetiredActorWord, i as RuleNodeKind, j as RuleUse, al as STORAGE_MODES, am as STORE_DOORS, an as STORE_KNOBS, ao as STORE_REFUSAL_CODES, ap as StaleWriteDetail, S as StorageMode, aq as StoreDoorName, ar as StoreRefusalCode, as as StoredRecord, at as TABLE_DISPLAYS, au as TABLE_ORIGINS, av as TABLE_TYPES, b as TableDisplay, aw as TableOrigin, T as TableType, h as Timestamp, ax as VALUE_ALTERNATE_KEYS, ay as VALUE_ENVELOPE_KEYS, az as ValueAlternate, aA as ValueAlternateKey, aB as ValueEnvelope, aC as ValueEnvelopeKey, aD as ValueSource, aE as WriteConflict, aF as err, aG as isLockedStub, aH as isRecordsErr, aI as ok, aJ as splitLockedRows, aK as unwrapRecords } from '../record-CTgSgWe3.js';
3
+ export { A as ARCHIVE_LANES, a as ARCHIVE_LANE_LABEL, b as ARCHIVE_LANE_MEANS, c as A_PERSONS_REFUSAL, d as ActionRefusal, e as ActionRunResult, f as AdminTable, g as AnonTokenBinding, h as ArchiveLane, i as ArchivedChecklistTemplate, j as ArchivedDoorRow, k as ArchivedForm, l as ArchivedRow, m as AsOf, n as AutomationAction, o as AutomationComparison, p as AutomationDeclared, q as AutomationFilter, r as AutomationFlipped, s as AutomationItem, t as AutomationLastRun, u as AutomationList, v as AutomationRevision, w as AutomationRevisions, x as AutomationRun, y as AutomationRunStatus, z as AutomationRuns, B as AutomationSpec, C as AutomationStep, D as AutomationTested, E as AutomationToken, G as AutomationTrigger, H as AutomationValue, I as AutomationValues, J as AutomationWeekday, K as AutomationWhen, L as BUILT_KIND_WORD, M as CHOICE_NUDGES, N as CaptureField, O as CaptureFileRef, P as CaptureOutcome, Q as CaptureQuestion, S as CaptureSheetFace, U as CaptureSheetSummary, V as ChecklistDeclared, W as ChecklistRequirement, X as ChecklistRequirementKind, Y as ChecklistRoleSpec, Z as ChecklistRunStarted, _ as ChecklistRunStep, $ as ChecklistRunSummary, a0 as ChecklistSpec, a1 as ChecklistStepCompleted, a2 as ChecklistStepSpec, a3 as ChecklistTemplateShape, a4 as ChecklistTemplateSummary, a5 as ChecklistTrigger, a6 as ChecklistTriggerKind, a7 as ChoiceCellBack, a8 as ChoiceLike, a9 as ChoiceNudge, aa as ChoiceOption, ab as ChoiceRehome, ac as ChoiceUsage, ad as ChoicesRehomed, ae as CommentThreadRead, af as CommentWritten, ag as ConversationScope, ah as ConversationScopeContext, ai as CustomFieldTableType, aj as DEFAULT_ARCHIVE_LANE, ak as DEFAULT_PAGE_SIZE, al as DRILL_CHART_TOKENS, am as DRILL_DESCRIPTION_MAX, an as DRILL_DOORS, ao as DRILL_SCHEMA, ap as DataHomeTable, aq as DecorationColor, ar as DecorationPath, as as DecorationRule, at as DecorationRuleOp, au as DecorationTarget, av as DocRenderRow, aw as DocSignatureCheck, ax as DocSignatureRow, ay as DocTemplateRow, az as DocToken, aA as DocUnresolvedToken, aB as DrillAdHocOp, aC as DrillAnswer, aD as DrillAnswerRow, aE as DrillChartToken, aF as DrillDeclaration, aG as DrillDefinition, aH as DrillDimension, aI as DrillFinding, aJ as DrillGrain, aK as DrillHaving, aL as DrillLane, aM as DrillLevel, aN as DrillMeasure, aO as DrillMeasureOp, aP as DrillMeasureWhereValue, aQ as DrillPath, aR as DrillQuestion, aS as DrillRecords, aT as DrillRowsPage, aU as DrillSource, aV as DrillView, aW as EnrichAlternate, aX as EnrichCell, aY as EnrichDeclared, aZ as EnrichDueRow, a_ as EnrichRun, a$ as EnrichSource, b0 as Enrichment, b1 as EnrichmentSummary, b2 as EntityBackLinkItem, b3 as EntityBackLinks, b4 as EntityFieldRights, b5 as EntityFieldValue, b6 as EntityFieldsAcross, b7 as EntityRecordMatch, b8 as EntityRecordRead, b9 as EntityRecordsFound, ba as EntityRowWritten, bb as EntityTableFacts, bc as ExternalPrincipalCard, F as FieldDrift, bd as FieldDriftAspect, be as FieldHistoryEntry, bf as FieldRetyped, bg as FormArchiveAnswer, bh as FormulaParse, bi as FormulaPreview, bj as GridLayout, bk as GridLayoutMode, bl as GridRowHeight, bm as HistoryActor, bn as HistoryActorKind, bo as HistoryChange, bp as Home, bq as ImportBatchResult, br as ImportColumnPlan, bs as ImportColumnsDeclared, bt as ImportFinished, bu as ImportOpened, bv as ImportOutcome, bw as ImportPlan, bx as ImportPolicy, by as ImportProposal, bz as ImportReport, bA as ImportRun, bB as InboundAddress, bC as InboundDeclared, bD as InboxCounts, bE as InboxStateChange, bF as IoExportPage, bG as MigrationEntry, bH as MigrationUndone, bI as NewEntityFieldDeclaration, bJ as OutsideShareAnswer, bK as PIPELINE_RULE_KINDS, bL as ParentExtracted, bM as PickListDocument, bN as PickListItem, bO as PickListItemInput, bP as Pipeline, bQ as PipelineColumn, bR as PipelineDeclared, bS as PipelineGate, bT as PipelineGatePreview, bU as PipelineMissingField, bV as PipelineMoveMany, bW as PipelineMoveManyItem, bX as PipelineMoveManyResult, bY as PipelineMoveResult, bZ as PipelineMoveVerdict, b_ as PipelineRule, b$ as PipelineRuleKind, c0 as PipelineSpec, c1 as PipelineStage, c2 as PipelineVerdict, c3 as PromotedPredicate, c4 as PublishBinding, c5 as PublishBindingKind, c6 as QueryPlan, c7 as ROW_LABEL_FORMULA_MAX_LENGTH, c8 as ROW_WEB_NOT_READY, c9 as RecordChangeAction, ca as RecordComment, cb as RecordEvent, cc as RecordHeader, cd as RecordHistoryEntry, ce as RecordQuery, cf as RecordRowControls, cg as RecordScopeComment, ch as RecordScopeContext, ci as RecordScopeField, cj as RecordScopeHistoryEntry, ck as RecordScopeRelation, cl as RecordScopeWithheld, cm as RecordSplit, R as RecordsClient, cn as RecordsMerged, co as RegisteredTable, cp as ResolvedPublishBinding, cq as ResolvedPublishBindingKind, cr as RestorePreview, cs as RestoreResult, ct as RetypeBehaviour, cu as RetypePreview, cv as RowAction, cw as RowActionStep, cx as RowDefaultsApplied, cy as SHOWN_TO_LABEL, cz as SHOWN_TO_VALUES, cA as SHOWN_TO_WHO_MAY_CHANGE, cB as STAGE_RULE_ENFORCEMENT, cC as STAGE_RULE_ON_FAIL, cD as ShownTo, cE as StagePending, cF as StagePendingOnBoard, cG as StageRuleEnforcement, cH as StageRuleOnFail, cI as StageRuleWarning, cJ as SyncAutoRefresh, cK as Table, T as TableArchiveProgress, cL as TableCapacity, cM as TableCopyInProgress, cN as TableCopySpec, cO as TableDecorations, cP as TableDuplicateProgress, cQ as TableDuplicated, cR as TableFact, cS as TableHome, cT as TableHomeDestination, cU as TableLevel, cV as TableLevelApproval, cW as TableLevelFacts, cX as TableLevelSet, cY as TableListEntry, cZ as TableLiveLocation, c_ as TableMoved, c$ as TablePlacement, d0 as TablePlacementFact, d1 as TableReaderRule, d2 as TableRestoreProgress, d3 as TableRowCount, d4 as TableRowDefaults, d5 as TableRowDefaultsPatch, d6 as TableRowLabel, d7 as TableSyncAnswer, d8 as TableSyncResult, d9 as TableSyncSettings, da as TableSyncSource, db as TableSyncSourceDocument, dc as TableSyncSpec, dd as TableWebhook, de as TableWebhookDeclared, df as TypedChoiceDecision, dg as ViewLayout, dh as ViewOrderSet, di as WorkApprovalDecision, dj as WorkApprovalFiled, dk as WorkApprovalState, dl as WorkApprover, dm as WorkAssignment, dn as WorkAssignmentField, dp as WorkChange, dq as WorkDecideMany, dr as WorkDecideManyItem, ds as WorkDecideManyResult, dt as WorkDecideVerdict, du as WorkDueState, dv as WorkGraph, dw as WorkInboxItem, dx as WorkInboxKind, dy as WorkInboxView, dz as WorkInstantiation, dA as WorkListFlavour, dB as WorkListItem, dC as WorkOrigin, dD as WorkRecordState, dE as WorkSlotHold, dF as WorkState, dG as WorkTemplateNode, dH as WorkTemplateRelation, dI as WorkTurn, dJ as actionRefusals, dK as archivedByLine, dL as archivedWhen, dM as asChoiceNudge, dN as asWriteConflict, dO as automationWebhookUrl, dP as choiceSlug, dQ as choiceValuesOf, dR as choicesOf, dS as clearsRowLabel, dT as createRecordsClient, dU as decideTypedChoice, dV as declareDrillDefinition, dW as drillAnswerOf, dX as drillFindingKnob, dY as emptyArchiveLine, dZ as exportPageXlsx, d_ as holdsARetiredChoice, d$ as intersectIds, e0 as isAPersonsRefusal, e1 as isArchiveLane, e2 as isFoundation, e3 as isShownTo, e4 as isTheChosen, e5 as keptGroups, e6 as keptOutOfSight, e7 as keptTableHref, e8 as levelHasShownTo, e9 as looksLikeAnId, ea as mayDrag, eb as moveConsequence, ec as moveInOrder, ed as offeredAsContext, ee as optionKey, ef as optionLabel, eg as parseFieldDrift, eh as parseTableCopiesInProgress, ei as parseTableDuplicateProgress, ej as parseTableDuplicated, ek as parseTableHome, el as parseTableMoved, em as planQuery, en as previewRetype, eo as previewRuleChange, ep as recordChangeTrigger, eq as recordSourceKey, er as recordSourceTable, es as recordsUseSentence, et as rehomeSentence, eu as removedChoicesInUse, ev as ruleThatRefuses, ew as rulesWithTopStar, ex as sameDocument, ey as scopeChip, ez as sheetSyncSpec, eA as valueConverts, eB as withRowCounts, eC as withTableFacts, eD as withTablePlacement } from '../client-CrwedBYU.js';
4
+ import { d as RecordsDataSource } from '../ports-CmmvR8OI.js';
5
+ export { M as MyLevel, O as OpLedger, P as PERMISSION_LEVELS, g as PermissionLevel, h as RecordsActor, e as RecordsChangeSink, a as RecordsConfig, c as RecordsErrorSink, i as RecordsFilter, R as RecordsRealtimePort, j as RecordsResolverPort, k as RecordsResponse, l as RecordsTableQuery, b as RowAgentPort, f as RowAgentTarget, m as asPermissionLevel, n as atLeast, o as createOpLedger, p as defaultOpLedger, q as forgetAllOps, r as highestLevel, s as isOwnOp, t as mintOpId, u as rememberedOpCount } from '../ports-CmmvR8OI.js';
6
+ import { F as Field } from '../field-DaE90BZ7.js';
7
+ export { A as ADDRESS_PARTS, c as AGENT_WRITER_WORDS, d as AddressPart, e as AddressValue, B as BARCODE_SYMBOLOGIES, f as BUTTON_DOES, g as ButtonDoes, h as ButtonPressed, i as ButtonSettings, C as ChoiceOptions, j as CoerceOptions, k as Coerced, l as CoercedAnswers, m as CoercibleField, n as FIELD_KINDS, o as FieldDuplicated, p as FieldKind, q as FieldOptionEdit, r as FieldPatch, s as FieldProposal, b as FieldRule, a as FieldTypeWord, K as KernelTargets, t as NEWER_FIELD_KINDS, u as NOT_A_MEMBER_WORDS, N as NewFieldDeclaration, v as NewerFieldKind, P as ParityFieldTypeDescriptor, w as PersonStamp, R as RelationDisplay, x as RelationNameIndex, y as RelationNameMatch, z as RelationNamesAnswer, S as STATUS_GROUPS, D as STATUS_GROUP_WORDS, E as SYSTEM_WRITER_WORDS, G as StatusGroup, T as TableProposal, H as addressFromText, I as addressMapUrl, J as addressText, L as allowsOtherValues, M as buttonNeeds, O as buttonOf, Q as buttonUrlPlaceholders, U as coerceTypedAnswer, V as coerceTypedAnswers, W as coercionLabel, X as durationText, Y as entityReferenceKindsOf, Z as fieldKindFor, _ as isAddressValue, $ as isButtonField, a0 as isEntityReferenceConfig, a1 as isPersonStamp, a2 as newerKindExportWords, a3 as newerKindOf, a4 as newerKindWords, a5 as personStampText, a6 as ratingMaxOf, a7 as readTypedDuration, a8 as relationNameIndexOf, a9 as relationNameKey, aa as relationNamesIn, ab as richTextPlain, ac as safeLinkHref, ad as splitListCell, ae as statusGroupOf } from '../field-DaE90BZ7.js';
8
8
  export { BaseCopied, BaseCopyProgress, BaseCopyResult, BasePort, BaseSnapshotRecord, BaseTable, CaptureQueue, CaptureQueueCounts, CaptureQueueOptions, CaptureQueuePorts, CaptureQueueStore, CaptureSyncReport, ChooseAlternateArgs, MergeField, MergeFieldProvenance, MergeFieldResolution, MergeFieldTransform, MissingBehavior, QueuedCapture, QueuedCaptureFile, QueuedCaptureState, REFUSALS_WORTH_REPEATING, ResolutionTriple, TypedDate, TypedMatchScore, TypedNumber, TypedTime, alternatePatch, autonumberJoin, autonumberPrefixOf, autonumberSearchOf, autonumberWords, baseCopyName, chooseAlternate, duplicateBase, filterWithAutonumber, idsOfCopies, indexedDbStore, isAutonumberField, isDecided, localeDateOrder, memoryStore, mintClientKey, openCaptureQueue, pointAtCopies, rankTypedMatches, readTypedDate, readTypedNumber, readTypedTime, restoreSnapshot, restoredBaseName, snapshotBase, twoDigitYear, typedDateText, typedMatchScore, typedTimeText } from '../index.js';
9
- export { B as BookingAvailability, a as BookingDeclared, b as BookingSummary, c as BookingWindow, d as FormResults, e as FormRoute, F as FormSummary, f as Rule, g as RuleAnswer, R as RuleExpression, h as bookingPath, p as publicFormPath } from '../rule-cGqclk_0.js';
10
- export { D as DEFAULT_PORTAL_ARCHIVE_FILTER, F as FormLookOptions, a as PORTAL_ACCENTS, b as PORTAL_ARCHIVE_FILTERS, P as PortalAccent, c as PortalArchiveAnswer, d as PortalArchiveFilter, e as PortalCard, f as PortalConfig, g as PortalConfigInput, h as PortalFooterLink, i as PortalFormAnswer, j as PortalFormInput, k as PortalFormRef, l as PortalFormSpec, m as PortalInvitation, n as PortalPreviewRow, o as PortalPrincipal, p as PortalRevocation, q as PortalStage, r as PortalStyle, s as PortalStyleInput, t as PortalSummary, u as PortalTableExposure, v as PortalTableRef, w as PublicPicture, x as emptyPortalArchiveLine, y as isPortalAccent, z as isPortalArchiveFilter, A as portalArchiveConsequence, B as portalConfirmLine, C as portalPath, E as portalTitleTypedBack } from '../portal-DmxuUr2f.js';
11
- export { A as AggregateBucket, e as AggregateCompare, f as AggregateCompareKind, g as AggregateCompareWindows, h as AggregateDelta, b as AggregateFilter, i as AggregateGroupValue, c as AggregateMeasure, a as AggregateOperation, j as AggregateRow, k as AggregateWindow, l as DashboardBlock, D as DashboardBlockKind, m as DashboardBlockResult, n as DashboardRunResult, o as DashboardSummary, p as DashboardTarget, q as DashboardTargetBase, r as DashboardTargetOp, s as DashboardTargetResult, t as DashboardTotals, u as DigestPreview, I as InterfaceRead, v as InterfaceRows, w as InterfaceRowsField, M as MySubscription, Q as QuietHours, R as RecordFilter, x as RowTemplateRow, y as SavedViewColorBy, z as SavedViewDefinition, B as SavedViewLayout, d as SavedViewRow, C as SavedViewSpecIn, E as StoreFilter, F as StuckRow, G as Subscription, H as SubscriptionBlock, S as SubscriptionCadence, J as SubscriptionSpec, K as callersTimeZone, L as hasQuietHours, N as isRuleFilter, O as liftWithheld, P as measureKey, T as stableFilterKey, U as withCallersClock } from '../subscription-eNzL9scc.js';
12
- export { a as EntityRef, E as EntityRefWithWords, b as EntityReferenceKind, R as REVERSE_LINKS_PAGE_MAX, c as REVERSE_LINKS_RECORDS_PER_CALL, d as Relation, e as RelationCarries, f as RelationCoordinate, g as RelationIcons, h as RelationProperties, i as RelationTarget, j as RelationWordsManyArgs, k as ReverseColumn, l as ReverseLink, m as ReverseLinks, n as ReverseLinksFieldsArgs, o as ReverseLinksManyArgs, S as SourceArchived, p as entityReferenceKinds, q as entityReferenceSearch, r as entityReferenceWords, s as entityRefsOf, t as entityRefsToWrite, u as isReverseField, v as sourceArchivedOf } from '../relation-Bsjwkn6N.js';
13
- export { a as ObjectKind, O as ObjectOrganizationAnswer, R as RecordOrganizationPort, W as WHERE_ID_OPENS_DOOR, r as readObjectOrganizationAnswer, b as resolveObjectOrganization, w as whereIdOpensPort } from '../objectOrganization-DtR3lWG2.js';
9
+ export { B as BookingAvailability, a as BookingDeclared, b as BookingSummary, c as BookingWindow, d as FormResults, e as FormRoute, F as FormSummary, f as Rule, g as RuleAnswer, R as RuleExpression, h as bookingPath, p as publicFormPath } from '../rule-DzNj0QvN.js';
10
+ export { D as DEFAULT_PORTAL_ARCHIVE_FILTER, F as FormLookOptions, a as PORTAL_ACCENTS, b as PORTAL_ARCHIVE_FILTERS, P as PortalAccent, c as PortalArchiveAnswer, d as PortalArchiveFilter, e as PortalCard, f as PortalConfig, g as PortalConfigInput, h as PortalFooterLink, i as PortalFormAnswer, j as PortalFormInput, k as PortalFormRef, l as PortalFormSpec, m as PortalInvitation, n as PortalPreviewRow, o as PortalPrincipal, p as PortalRevocation, q as PortalStage, r as PortalStyle, s as PortalStyleInput, t as PortalSummary, u as PortalTableExposure, v as PortalTableRef, w as PublicPicture, x as emptyPortalArchiveLine, y as isPortalAccent, z as isPortalArchiveFilter, A as portalArchiveConsequence, B as portalConfirmLine, C as portalPath, E as portalTitleTypedBack } from '../portal-CAssJHRZ.js';
11
+ export { A as AggregateBucket, e as AggregateCompare, f as AggregateCompareKind, g as AggregateCompareWindows, h as AggregateDelta, b as AggregateFilter, i as AggregateGroupValue, c as AggregateMeasure, a as AggregateOperation, j as AggregateRow, k as AggregateWindow, l as DashboardBlock, D as DashboardBlockKind, m as DashboardBlockResult, n as DashboardRunResult, o as DashboardSummary, p as DashboardTarget, q as DashboardTargetBase, r as DashboardTargetOp, s as DashboardTargetResult, t as DashboardTotals, u as DigestPreview, I as InterfaceRead, v as InterfaceRows, w as InterfaceRowsField, M as MySubscription, Q as QuietHours, R as RecordFilter, x as RowTemplateRow, y as SavedViewColorBy, z as SavedViewDefinition, B as SavedViewLayout, d as SavedViewRow, C as SavedViewSpecIn, E as StoreFilter, F as StuckRow, G as Subscription, H as SubscriptionBlock, S as SubscriptionCadence, J as SubscriptionSpec, K as callersTimeZone, L as hasQuietHours, N as isRuleFilter, O as liftWithheld, P as measureKey, T as stableFilterKey, U as withCallersClock } from '../subscription-Bp1RSb6p.js';
12
+ export { a as EntityRef, E as EntityRefWithWords, b as EntityReferenceKind, R as REVERSE_LINKS_PAGE_MAX, c as REVERSE_LINKS_RECORDS_PER_CALL, d as Relation, e as RelationCarries, f as RelationCoordinate, g as RelationIcons, h as RelationProperties, i as RelationTarget, j as RelationWordsManyArgs, k as ReverseColumn, l as ReverseLink, m as ReverseLinks, n as ReverseLinksFieldsArgs, o as ReverseLinksManyArgs, S as SourceArchived, p as entityReferenceKinds, q as entityReferenceSearch, r as entityReferenceWords, s as entityRefsOf, t as entityRefsToWrite, u as isReverseField, v as sourceArchivedOf } from '../relation-T4biacnz.js';
13
+ export { a as ObjectKind, O as ObjectOrganizationAnswer, R as RecordOrganizationPort, W as WHERE_ID_OPENS_DOOR, r as readObjectOrganizationAnswer, b as resolveObjectOrganization, w as whereIdOpensPort } from '../objectOrganization-D1ox3gUx.js';
14
14
  import { TableKindFacts } from '../table-kind/index.js';
15
15
  export { TABLE_KIND_PREFIX, TableRenderSchema, TableSchemaMode, fieldKindOf, isTableKind, tableIdOf, tableJsonSchema, tableKindMapping, tableKindSlug, tableRenderSchema } from '../table-kind/index.js';
16
- export { D as DEFAULT_FIELDS, a as DeclareResult, E as EnsureResult, N as NewFieldSpec, b as NewTableSpec, c as addFields, d as declareTable, e as ensureTable, f as fieldDeclarationFor, t as tokenFor } from '../declareTable-CvBu5dTJ.js';
17
- import '../doors-C2-sFvAk.js';
16
+ export { D as DEFAULT_FIELDS, a as DeclareResult, E as EnsureResult, N as NewFieldSpec, b as NewTableSpec, c as addFields, d as declareTable, e as ensureTable, f as fieldDeclarationFor, t as tokenFor } from '../declareTable-CC5rTTIA.js';
17
+ export { MAPPED_SQLSTATES, archivedOrganizationId, mapPgError, mapThrownError, staleWriteDetail } from '../results/index.js';
18
+ import '../doors-D2z3kH2i.js';
18
19
 
19
20
  declare function doorExists(name: string): boolean;
20
21
  /**
@@ -683,26 +684,6 @@ interface StoreDoors extends StoreCaller {
683
684
  */
684
685
  declare function storeDoors(client: unknown): StoreDoors;
685
686
 
686
- /** The SQLSTATEs this package claims to understand. Exported for the guard. */
687
- declare const MAPPED_SQLSTATES: string[];
688
- /** Map a PostgREST/supabase-js failure into the package's refusal shape. */
689
- declare function mapPgError(error: PgError, where: string): RecordsError;
690
- /**
691
- * Anything a host caught (a supabase-js error object, a thrown `Error`, a string) as the package's
692
- * refusal, through `mapPgError` — so a host service's `catch` speaks the same words as its doors.
693
- */
694
- declare function mapThrownError(thrown: unknown, where: string): RecordsError;
695
- /** Pull the conflict out of a `stale_write`, when the store sent one. */
696
- declare function staleWriteDetail(error: RecordsError): StaleWriteDetail | null;
697
- /**
698
- * HONEST-REFUSALS 1 — a member of an ARCHIVED organization is refused with the store's own sentence
699
- * ("This organization is archived, …") and DETAIL `organization_archived:<organization id>`. The sentence
700
- * and the restore hint ride `message` and `hint` verbatim like every refusal; this reads the organization out
701
- * so a screen can offer "Restore" (the owner's `iam.organization_restore` door) instead of a dead end.
702
- * Null for every other refusal, including the non-member's "You are not a member of that organization".
703
- */
704
- declare function archivedOrganizationId(error: RecordsError): string | null;
705
-
706
687
  /** The published defaults, which are also what the store falls back to when it cannot read a knob. */
707
688
  declare const DEFAULT_VALUE_MAX_BYTES = 100000;
708
689
  declare const DEFAULT_DOCUMENT_MAX_BYTES = 1048576;
@@ -868,4 +849,191 @@ declare function seededDataSource(index: Map<string, unknown>): {
868
849
  missed: () => boolean;
869
850
  };
870
851
 
871
- export { type BlockOutcome, DEFAULT_DOCUMENT_MAX_BYTES, DEFAULT_VALUE_MAX_BYTES, DOORS, type DoorKey, type ExportRow, Field, LANDING_SOURCE_TYPE, LANDING_TARGET_TYPES, type Landing, type LandingBlock, type LandingOutcomes, type LandingState, type LandingStore, MAPPED_SQLSTATES, type MirrorLimits, OUTPUT_KEPT_KEY, PRIMED_DOOR_TTL_MS, PRODUCED_BY_LABEL, type ParsedImport, PgError, PredictedRefusal, type PrimedBundleAnswer, type ReadFileText, ReadValue, RecordDocument, RecordsDataSource, RecordsError, RecordsResult, type RecordsSeed, type RecordsSeedAnswer, STORE_SCHEMA, StaleWriteDetail, type StoreCaller, type StoreDoorAnswer, type StoreDoorError, type StoreDoors, type SupabaseLike, TableKindFacts, Uuid, WHOLE_VALUE_SOURCE_KIND, type WholeValuePointer, announceRecordChanged, announceTableStructureChanged, archivedOrganizationId, asRecordsDataSource, blockLandedInStore, cellText, doorAbsent, doorCensus, doorExists, doorReady, dropPrimedDoorAnswers, exportCellText, exportCsv, exportMarkdown, exportXlsx, forgetPrimedTablePageBundles, importCsv, importXlsx, isRecordRemoved, landingOutcomesFor, mapPgError, mapThrownError, markRecordRemoved, markRecordRestored, onRecordChanged, onTableStructureChanged, outcomeForBlock, outputIsKept, parseCsv, predictEnvelopeRefusal, predictSizeRefusal, predictValueRefusals, predictWriteRefusals, primeDoorAnswer, primeRecordPageBundle, primeTablePageBundle, recordingDataSource, seedIndex, seedKey, seededDataSource, staleWriteDetail, storeDoors, supabaseDataSource, tableKindFacts, takePrimedTablePageBundle, toAoa, valuesAreUnconfirmed, wholeValueNotRead, wholeValueOf, wholeValueOfRead, wholeValueSize, withWholeValues };
852
+ /** A database JSON column. Nothing is assumed about it; a reader narrows what it reads. */
853
+ type Json = unknown;
854
+ /** `public.field_data_type`. */
855
+ type FieldDataType = "string" | "number" | "integer" | "boolean" | "date" | "datetime" | "json" | "array";
856
+ /** A column as the grid draws it. */
857
+ type DatasetField = {
858
+ id: string;
859
+ table_id: string;
860
+ field_name: string;
861
+ display_name: string;
862
+ data_type: FieldDataType;
863
+ field_order: number;
864
+ is_required: boolean;
865
+ is_public: boolean;
866
+ default_value: Json | null;
867
+ validation_rules: Json | null;
868
+ metadata: Json;
869
+ custom_fields: Json;
870
+ organization_id: string;
871
+ user_id: string;
872
+ created_at: string;
873
+ created_by: string | null;
874
+ updated_at: string;
875
+ updated_by: string | null;
876
+ deleted_at: string | null;
877
+ version: number;
878
+ };
879
+ /** A row as the grid holds it. */
880
+ type DatasetRow = {
881
+ id: string;
882
+ table_id: string;
883
+ data: Json;
884
+ metadata: Json;
885
+ custom_fields: Json;
886
+ is_public: boolean;
887
+ organization_id: string;
888
+ user_id: string;
889
+ source_row_ref: string | null;
890
+ created_at: string;
891
+ created_by: string | null;
892
+ updated_at: string;
893
+ updated_by: string | null;
894
+ deleted_at: string | null;
895
+ version: number;
896
+ };
897
+ type BulkInsertOp = {
898
+ op: "insert";
899
+ data: Record<string, unknown>;
900
+ };
901
+ type BulkUpdateOp = {
902
+ op: "update";
903
+ row_id: string;
904
+ /** REPLACES the row's data wholesale. Keys not in `data` are dropped. */
905
+ data: Record<string, unknown>;
906
+ /**
907
+ * The version the person saw this row at, when the caller holds it (an undo carries the version its
908
+ * own write produced). Absent = the seam's ledger of the rows it drew (`lib/records/record-versions.ts`).
909
+ */
910
+ expected_version?: number | null;
911
+ };
912
+ type BulkMergeOp = {
913
+ op: "merge";
914
+ row_id: string;
915
+ /**
916
+ * Partial update — `data = existing_data || patch`. Keys in `data` overwrite
917
+ * the row's matching keys; keys absent from `data` are preserved. Use this
918
+ * when sending only changed fields.
919
+ */
920
+ data: Record<string, unknown>;
921
+ /**
922
+ * The version the person saw this row at, when the caller holds it (an undo carries the version its
923
+ * own write produced). Absent = the seam's ledger of the rows it drew (`lib/records/record-versions.ts`).
924
+ */
925
+ expected_version?: number | null;
926
+ };
927
+ type BulkCellOp = {
928
+ op: "cell";
929
+ row_id: string;
930
+ field_name: string;
931
+ value: unknown;
932
+ /**
933
+ * The version the person saw this row at, when the caller holds it (an undo carries the version its
934
+ * own write produced). Absent = the seam's ledger of the rows it drew (`lib/records/record-versions.ts`).
935
+ */
936
+ expected_version?: number | null;
937
+ };
938
+ type BulkDeleteOp = {
939
+ op: "delete";
940
+ row_id: string;
941
+ };
942
+ type BulkOp = BulkInsertOp | BulkUpdateOp | BulkMergeOp | BulkCellOp | BulkDeleteOp;
943
+ /**
944
+ * Per-op result envelope returned inside `bulkWrite`'s `results[]`.
945
+ *
946
+ * Note: insert / update / cell / delete that succeed return the full row.
947
+ * Update / cell / delete against a row that is gone return `row_not_found`;
948
+ * update / cell / merge against a row that is in Trash return `row_in_trash`
949
+ * (with the server's own sentence in `message`). Both are soft failures — the
950
+ * rest of the batch continues. Inserts that fail RAISE and abort the batch.
951
+ */
952
+ type BulkOpError = {
953
+ error: "row_not_found" | "row_in_trash";
954
+ row_id: string;
955
+ message?: string;
956
+ };
957
+ type BulkOpResult = DatasetRow | BulkOpError;
958
+ /**
959
+ * Narrow a bulk-write result slot to the error variant.
960
+ * Successful results carry the full DatasetRow shape (no discriminator key
961
+ * on the success side, so consumers narrow via this guard).
962
+ */
963
+ declare function isBulkOpError(r: BulkOpResult): r is BulkOpError;
964
+ /**
965
+ * One plain sentence for the rows a batch could not change — the ONE wording
966
+ * every bulk surface uses. A row in Trash is named as such (it can be restored),
967
+ * never reported as "could not be found".
968
+ */
969
+ declare function describeBulkFailures(failed: BulkOpError[]): string;
970
+ type BulkWriteResponse = {
971
+ table_id: string;
972
+ count: number;
973
+ results: BulkOpResult[];
974
+ };
975
+ type ServiceOk<T> = {
976
+ success: true;
977
+ data: T;
978
+ };
979
+ /**
980
+ * THE STORE'S OWN REFUSAL, kept whole (lane FIX-15, 2026-09-23).
981
+ *
982
+ * `error` is `PostgrestError.message` and nothing else, so a refusal written as
983
+ * three parts — what happened, what the column is, what to do instead — reached
984
+ * the screen as one third of itself, and the other two thirds (DETAIL and HINT)
985
+ * were thrown away in this envelope. On production a name typed into a relation
986
+ * column was refused by the store with a perfectly good sentence
987
+ * and the person saw nothing usable.
988
+ *
989
+ * `refusal` carries the whole thing in the shape every Matrx screen already
990
+ * knows how to draw (`RefusalNotice` / `RefusalLine` from `@ai-matrx/records-ui`,
991
+ * which run it through `plainWords` so no machine identity is ever printed at a
992
+ * person). `error` stays exactly what it was for the callers that print a line.
993
+ */
994
+ type ServiceErr = {
995
+ success: false;
996
+ error: string;
997
+ refusal?: RecordsError;
998
+ };
999
+ type ServiceResult<T> = ServiceOk<T> | ServiceErr;
1000
+ /**
1001
+ * Narrow a ServiceResult to the failure variant. Use instead of `!result.success`
1002
+ * inside generic functions where TS's narrow through `Promise<ServiceResult<T>>`
1003
+ * sometimes fails to discriminate the union members reliably.
1004
+ */
1005
+ declare function isServiceFailure<T>(r: ServiceResult<T>): r is ServiceErr;
1006
+ /**
1007
+ * Infer a table column's data type for a single value. Used by both the
1008
+ * CSV/Excel import path and the JSON-to-table path. The returned strings
1009
+ * align with `VALID_DATA_TYPES` in `table-utils.ts`.
1010
+ */
1011
+ declare function inferDataType(value: unknown): string;
1012
+ /**
1013
+ * Sanitize a display name into a valid field name
1014
+ * Converts to lowercase, replaces special chars with underscores, follows snake_case
1015
+ *
1016
+ * @param displayName - The user-entered display name
1017
+ * @returns Sanitized field name in snake_case format
1018
+ *
1019
+ * @example
1020
+ * sanitizeFieldName("Total Revenue") // returns "total_revenue"
1021
+ * sanitizeFieldName("Price ($)") // returns "price"
1022
+ * sanitizeFieldName("2024 Sales") // returns "_2024_sales"
1023
+ */
1024
+ declare function sanitizeFieldName(displayName: string): string;
1025
+ /**
1026
+ * Validate that a field name follows the required format
1027
+ * Must start with lowercase letter, contain only lowercase letters, numbers, and underscores
1028
+ *
1029
+ * @param fieldName - The field name to validate
1030
+ * @returns true if valid, false otherwise
1031
+ *
1032
+ * @example
1033
+ * validateFieldName("total_revenue") // returns true
1034
+ * validateFieldName("Total Revenue") // returns false
1035
+ * validateFieldName("123_sales") // returns false
1036
+ */
1037
+ declare function validateFieldName(fieldName: string): boolean;
1038
+
1039
+ export { type BlockOutcome, type BulkCellOp, type BulkDeleteOp, type BulkInsertOp, type BulkMergeOp, type BulkOp, type BulkOpError, type BulkOpResult, type BulkUpdateOp, type BulkWriteResponse, DEFAULT_DOCUMENT_MAX_BYTES, DEFAULT_VALUE_MAX_BYTES, DOORS, type DatasetField, type DatasetRow, type DoorKey, type ExportRow, Field, type FieldDataType, type Json, LANDING_SOURCE_TYPE, LANDING_TARGET_TYPES, type Landing, type LandingBlock, type LandingOutcomes, type LandingState, type LandingStore, type MirrorLimits, OUTPUT_KEPT_KEY, PRIMED_DOOR_TTL_MS, PRODUCED_BY_LABEL, type ParsedImport, PgError, PredictedRefusal, type PrimedBundleAnswer, type ReadFileText, ReadValue, RecordDocument, RecordsDataSource, RecordsError, RecordsResult, type RecordsSeed, type RecordsSeedAnswer, STORE_SCHEMA, type ServiceErr, type ServiceOk, type ServiceResult, type StoreCaller, type StoreDoorAnswer, type StoreDoorError, type StoreDoors, type SupabaseLike, TableKindFacts, Uuid, WHOLE_VALUE_SOURCE_KIND, type WholeValuePointer, announceRecordChanged, announceTableStructureChanged, asRecordsDataSource, blockLandedInStore, cellText, describeBulkFailures, doorAbsent, doorCensus, doorExists, doorReady, dropPrimedDoorAnswers, exportCellText, exportCsv, exportMarkdown, exportXlsx, forgetPrimedTablePageBundles, importCsv, importXlsx, inferDataType, isBulkOpError, isRecordRemoved, isServiceFailure, landingOutcomesFor, markRecordRemoved, markRecordRestored, onRecordChanged, onTableStructureChanged, outcomeForBlock, outputIsKept, parseCsv, predictEnvelopeRefusal, predictSizeRefusal, predictValueRefusals, predictWriteRefusals, primeDoorAnswer, primeRecordPageBundle, primeTablePageBundle, recordingDataSource, sanitizeFieldName, seedIndex, seedKey, seededDataSource, storeDoors, supabaseDataSource, tableKindFacts, takePrimedTablePageBundle, toAoa, validateFieldName, valuesAreUnconfirmed, wholeValueNotRead, wholeValueOf, wholeValueOfRead, wholeValueSize, withWholeValues };
@@ -12059,6 +12059,64 @@ function seededDataSource(index) {
12059
12059
  };
12060
12060
  return { source, missed: () => missed };
12061
12061
  }
12062
+
12063
+ // src/core/table-logic.ts
12064
+ function isBulkOpError(r) {
12065
+ return typeof r === "object" && r !== null && "error" in r;
12066
+ }
12067
+ function describeBulkFailures(failed) {
12068
+ const inTrash = failed.filter((f) => f.error === "row_in_trash").length;
12069
+ const missing = failed.length - inTrash;
12070
+ const parts = [];
12071
+ if (inTrash > 0) {
12072
+ parts.push(
12073
+ `${inTrash} row${inTrash === 1 ? " is" : "s are"} in Trash \u2014 restore ${inTrash === 1 ? "it" : "them"} from Trash to edit`
12074
+ );
12075
+ }
12076
+ if (missing > 0) {
12077
+ parts.push(
12078
+ `${missing} row${missing === 1 ? "" : "s"} could not be found \u2014 ${missing === 1 ? "it" : "they"} may have been removed by someone else`
12079
+ );
12080
+ }
12081
+ return `${parts.join("; ")}.`;
12082
+ }
12083
+ function isServiceFailure(r) {
12084
+ return r.success === false;
12085
+ }
12086
+ var DATE_PATTERN = /^\d{4}-\d{2}-\d{2}$/;
12087
+ var DATETIME_PATTERN = /^\d{4}-\d{2}-\d{2}[T\s]\d{2}:\d{2}/;
12088
+ function inferDataType(value) {
12089
+ if (value === null || value === void 0 || value === "") return "string";
12090
+ if (typeof value === "boolean") return "boolean";
12091
+ if (typeof value === "number") {
12092
+ return Number.isInteger(value) ? "integer" : "number";
12093
+ }
12094
+ if (typeof value === "object") {
12095
+ return Array.isArray(value) ? "array" : "json";
12096
+ }
12097
+ const str2 = String(value);
12098
+ const num2 = Number(str2);
12099
+ if (!isNaN(num2) && str2.trim() !== "") {
12100
+ return Number.isInteger(num2) ? "integer" : "number";
12101
+ }
12102
+ const lower = str2.toLowerCase().trim();
12103
+ if (lower === "true" || lower === "false") return "boolean";
12104
+ if (DATE_PATTERN.test(str2)) return "date";
12105
+ if (DATETIME_PATTERN.test(str2)) return "datetime";
12106
+ return "string";
12107
+ }
12108
+ function sanitizeFieldName(displayName) {
12109
+ if (!displayName || typeof displayName !== "string") {
12110
+ return "";
12111
+ }
12112
+ return displayName.toLowerCase().trim().replace(/[^a-z0-9\s_]/g, "").replace(/\s+/g, "_").replace(/^_+|_+$/g, "").replace(/_+/g, "_").replace(/^(\d)/, "_$1");
12113
+ }
12114
+ function validateFieldName(fieldName) {
12115
+ if (!fieldName || typeof fieldName !== "string") {
12116
+ return false;
12117
+ }
12118
+ return /^[a-z][a-z0-9_]*$/.test(fieldName);
12119
+ }
12062
12120
  export {
12063
12121
  ABSENCE_REASONS,
12064
12122
  ACTOR_VOCABULARY,
@@ -12189,6 +12247,7 @@ export {
12189
12247
  declareDrillDefinition,
12190
12248
  declareTable,
12191
12249
  defaultOpLedger,
12250
+ describeBulkFailures,
12192
12251
  doorAbsent,
12193
12252
  doorCensus,
12194
12253
  doorExists,
@@ -12226,11 +12285,13 @@ export {
12226
12285
  importCsv,
12227
12286
  importXlsx,
12228
12287
  indexedDbStore,
12288
+ inferDataType,
12229
12289
  intersectIds,
12230
12290
  isAPersonsRefusal,
12231
12291
  isAddressValue,
12232
12292
  isArchiveLane,
12233
12293
  isAutonumberField,
12294
+ isBulkOpError,
12234
12295
  isButtonField,
12235
12296
  isDecided,
12236
12297
  isEntityReferenceConfig,
@@ -12244,6 +12305,7 @@ export {
12244
12305
  isRecordsErr,
12245
12306
  isReverseField,
12246
12307
  isRuleFilter,
12308
+ isServiceFailure,
12247
12309
  isShownTo,
12248
12310
  isTableKind,
12249
12311
  isTheChosen,
@@ -12328,6 +12390,7 @@ export {
12328
12390
  rulesWithTopStar,
12329
12391
  safeLinkHref,
12330
12392
  sameDocument,
12393
+ sanitizeFieldName,
12331
12394
  scopeChip,
12332
12395
  seedIndex,
12333
12396
  seedKey,
@@ -12356,6 +12419,7 @@ export {
12356
12419
  typedMatchScore,
12357
12420
  typedTimeText,
12358
12421
  unwrapRecords,
12422
+ validateFieldName,
12359
12423
  valueConverts,
12360
12424
  valuesAreUnconfirmed,
12361
12425
  whereIdOpensPort,