@ai-matrx/records-ui 0.50.0 → 0.51.0
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.
- package/CHANGELOG.md +40 -0
- package/dist/index.cjs +3475 -2308
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +95 -1
- package/dist/index.d.ts +95 -1
- package/dist/index.js +3226 -2057
- package/dist/index.js.map +1 -1
- package/package.json +3 -3
package/dist/index.d.cts
CHANGED
|
@@ -393,6 +393,33 @@ interface RecordsUiHost {
|
|
|
393
393
|
* never a composer that goes nowhere and never silence.
|
|
394
394
|
*/
|
|
395
395
|
onReask?: (question: string, context: ReaskContext) => Promise<void>;
|
|
396
|
+
/**
|
|
397
|
+
* OPTIONAL. ASK AN AGENT FOR A WHOLE FORM, BOOKING PAGE, PORTAL OR DIGEST.
|
|
398
|
+
*
|
|
399
|
+
* This is the FASTER of the two ways every builder offers (`BuildOrAsk`), and
|
|
400
|
+
* it is a port for the same reason `onReask` is: the server's `records` tool
|
|
401
|
+
* is what calls `form_propose`, `booking_propose`, `portal_propose` and
|
|
402
|
+
* `subscription_propose`, and a browser stamping itself `agent` would be a
|
|
403
|
+
* browser claiming to be one.
|
|
404
|
+
*
|
|
405
|
+
* `suggestion` is the sentence this package would put in the person's mouth —
|
|
406
|
+
* a host normally opens its composer with it already typed, so the person
|
|
407
|
+
* edits rather than starts.
|
|
408
|
+
*
|
|
409
|
+
* Unbound, the "Ask an agent" button is ABSENT — not greyed — and every
|
|
410
|
+
* builder's empty state says so in one sentence naming this port, with the
|
|
411
|
+
* hand-built way still right there. The product walk of 2026-09-21 found the
|
|
412
|
+
* opposite arrangement (the agent named and no builder at all), which left a
|
|
413
|
+
* person who did not know what to say with nothing to press.
|
|
414
|
+
*/
|
|
415
|
+
onAskForOne?: (ask: AgentBuildAsk) => void;
|
|
416
|
+
}
|
|
417
|
+
/** What a person is asking an agent to make, and where they were standing. */
|
|
418
|
+
interface AgentBuildAsk {
|
|
419
|
+
kind: "form" | "booking" | "portal" | "digest";
|
|
420
|
+
tableId: Uuid$1;
|
|
421
|
+
/** The sentence this package would say. A host opens its composer with it. */
|
|
422
|
+
suggestion: string;
|
|
396
423
|
}
|
|
397
424
|
/**
|
|
398
425
|
* WHAT A CLICK ON A NUMBER ASKS FOR. The filter is already merged: the block's
|
|
@@ -1730,6 +1757,20 @@ declare function submissionStamp(args: {
|
|
|
1730
1757
|
onBehalfOf?: string | null;
|
|
1731
1758
|
}): Record<string, unknown>;
|
|
1732
1759
|
|
|
1760
|
+
interface PortalBuilderProps {
|
|
1761
|
+
/**
|
|
1762
|
+
* OPTIONAL. The Table whose rail this was opened from. It is pre-ticked as a
|
|
1763
|
+
* Table to expose, because that is the thing the person was looking at.
|
|
1764
|
+
*/
|
|
1765
|
+
tableId?: Uuid | null | undefined;
|
|
1766
|
+
/** Re-state an existing portal rather than making a second one. */
|
|
1767
|
+
portalId?: Uuid | null | undefined;
|
|
1768
|
+
onSaved?: ((portalId: Uuid) => void) | undefined;
|
|
1769
|
+
onClose?: (() => void) | undefined;
|
|
1770
|
+
className?: string | undefined;
|
|
1771
|
+
}
|
|
1772
|
+
declare function PortalBuilder({ tableId, portalId, onSaved, onClose, className }: PortalBuilderProps): react.JSX.Element;
|
|
1773
|
+
|
|
1733
1774
|
interface PortalsPanelProps {
|
|
1734
1775
|
/**
|
|
1735
1776
|
* OPTIONAL. The Table whose page this rail is on. It is used for ONE thing:
|
|
@@ -1789,6 +1830,39 @@ interface SubscriptionsPanelProps {
|
|
|
1789
1830
|
}
|
|
1790
1831
|
declare function SubscriptionsPanel({ tableId, className }: SubscriptionsPanelProps): react.JSX.Element;
|
|
1791
1832
|
|
|
1833
|
+
/** What a person is asking to have made, in the store's own word for it. */
|
|
1834
|
+
type BuildableKind = "form" | "booking" | "portal" | "digest";
|
|
1835
|
+
interface BuildOrAskProps {
|
|
1836
|
+
/**
|
|
1837
|
+
* The sentence that says what this thing IS, in a practitioner's words —
|
|
1838
|
+
* never "You have no forms." A person who does not already know what a
|
|
1839
|
+
* booking page does is not helped by being told they have none.
|
|
1840
|
+
*/
|
|
1841
|
+
children: ReactNode;
|
|
1842
|
+
/** Pressed, the builder opens in place. Absent when `mayBuild` is false. */
|
|
1843
|
+
onBuild: () => void;
|
|
1844
|
+
/** The store's answer, never a guess on this screen. */
|
|
1845
|
+
mayBuild: boolean;
|
|
1846
|
+
/**
|
|
1847
|
+
* WHY NOT, in the store's words, shown where the button would have been.
|
|
1848
|
+
* A missing control with no explanation is the same dead end as a dead one.
|
|
1849
|
+
*/
|
|
1850
|
+
whyNot?: string | null | undefined;
|
|
1851
|
+
/**
|
|
1852
|
+
* The host's agent port. Unbound, the second button is absent and the
|
|
1853
|
+
* sentence below names what is missing.
|
|
1854
|
+
*/
|
|
1855
|
+
onAsk?: (() => void) | undefined;
|
|
1856
|
+
/** The words a person would actually say, offered as the starting sentence. */
|
|
1857
|
+
suggestion: string;
|
|
1858
|
+
/** "Build the form", "Build the booking page" — the act, never "New". */
|
|
1859
|
+
buildLabel: string;
|
|
1860
|
+
className?: string | undefined;
|
|
1861
|
+
}
|
|
1862
|
+
/** What this package tells a host that has bound no agent. One sentence, one remedy. */
|
|
1863
|
+
declare const NO_AGENT_PORT: string;
|
|
1864
|
+
declare function BuildOrAsk({ children, onBuild, mayBuild, whyNot, onAsk, suggestion, buildLabel, className, }: BuildOrAskProps): react.JSX.Element;
|
|
1865
|
+
|
|
1792
1866
|
interface FormBuilderProps {
|
|
1793
1867
|
/** The Table this form collects into. A form is a view on a real Table. */
|
|
1794
1868
|
tableId: Uuid;
|
|
@@ -2160,6 +2234,26 @@ declare function ChecklistTemplateEditor({ aboutTableId, templateId, onDone, cla
|
|
|
2160
2234
|
className?: string | undefined;
|
|
2161
2235
|
}): react.JSX.Element;
|
|
2162
2236
|
|
|
2237
|
+
/**
|
|
2238
|
+
* THE THREE THE STORE FILLS IN. Named here so this screen never offers them —
|
|
2239
|
+
* `custom.booking_declare` refuses a question naming any of the three, and a
|
|
2240
|
+
* control that is always refused is a dead control.
|
|
2241
|
+
*/
|
|
2242
|
+
declare const STORE_ANSWERS_THESE: readonly ["slot", "status", "booked_with"];
|
|
2243
|
+
interface BookingBuilderProps {
|
|
2244
|
+
/** The Table the appointments land in. An appointment is an ordinary record in it. */
|
|
2245
|
+
tableId: Uuid;
|
|
2246
|
+
/** Re-state an existing page rather than making a second one over the same Table. */
|
|
2247
|
+
bookingId?: Uuid | null | undefined;
|
|
2248
|
+
/** Called after a save, so the list this opened from re-reads the store. */
|
|
2249
|
+
onSaved?: ((page: {
|
|
2250
|
+
form_id: string;
|
|
2251
|
+
}) => void) | undefined;
|
|
2252
|
+
onClose?: (() => void) | undefined;
|
|
2253
|
+
className?: string | undefined;
|
|
2254
|
+
}
|
|
2255
|
+
declare function BookingBuilder({ tableId, bookingId, onSaved, onClose, className }: BookingBuilderProps): react.JSX.Element;
|
|
2256
|
+
|
|
2163
2257
|
interface BookingSlotsProps {
|
|
2164
2258
|
/**
|
|
2165
2259
|
* One Table's booking pages. Omitted — on the Records home — it is every
|
|
@@ -2679,4 +2773,4 @@ interface PipelineBoardProps {
|
|
|
2679
2773
|
}
|
|
2680
2774
|
declare function PipelineBoard({ tableId, rows, measure, onMeasureChange, onOpenRecord, onMoved, className, }: PipelineBoardProps): react.JSX.Element;
|
|
2681
2775
|
|
|
2682
|
-
export { ACTION_KINDS, ActionInbox, type ActionInboxProps, type ActionKind, BookingSlots, type BookingSlotsProps, CAPTURE_MODES, CHART_KINDS, CHART_KIND_LABEL, CHART_NEEDS, CONDITION_OPS, type Capability, type CaptureMode, type CaptureQueuePort, CaptureRun, type CaptureRunProps, CaptureSheet, type CaptureSheetProps, type CellAddress, type CellRefusal, type CellState, ChartBlock, type ChartBlockProps, type ChartConfig, ChartFrame, type ChartKind, ChartLegendContent, type ChartSpec, ChartTooltipContent, ChecklistRunner, type ChecklistRunnerProps, ChecklistTemplateEditor, ChecklistsPanel, type ChecklistsPanelProps, CommentThread, type CommentThreadProps, type ConditionField, ConditionRow, type ConditionRowProps, CustomFieldsSection, type CustomFieldsSectionProps, DEFAULT_FIELDS, DEFAULT_VIEW_NAME, DashboardCanvas, type DashboardCanvasProps, type DeclareResult, DocRender, type DocRenderProps, DocTemplate, type DocTemplateProps, type DocTemplateSpec, EMPTY_PRESENTATION, type EditorKind, EmbedFrame, type EmbedFrameProps, type EnrichAsk, EnrichBadge, type EnrichBadgeProps, type EnrichOutcome, EnrichPanel, type EnrichPanelProps, ExportMenu, type ExportMenuProps, FIELD_TYPE_CHOICES, FIELD_TYPE_GROUPS, FORM_FLOWS, FROZEN_COLUMN_WIDTH, FieldControl, FieldEditor, type FieldEditorControlProps, type FieldEditorProps, FieldHistoryPanel, type FieldHistoryPanelProps, FieldLabel, type FieldProposalRow, type FieldTypeChoice, FormBuilder, type FormBuilderProps, type FormFlow, type FormQuestionSpec, FormRunner, type FormRunnerProps, type FormSpec, type FormSubmitOutcome, type FormTheme, FormsPanel, type FormsPanelProps, Grid, GridCell, type GridEditing, type GridGrouping, type GridPresentation, type GridProps, HistoryPanel, type HistoryPanelProps, IN_MEMORY_QUEUE_REASON, ImportWizard, type ImportWizardProps, KERNEL_REASON, LANE_EMPTY, LANE_TITLE, LAYOUT_FIELD_KIND, LAYOUT_LABEL, LAYOUT_NEEDS, LAYOUT_NO_FIELD, LEVEL_WORD, type LabelLookup, MACHINE_IDENTITY, MAX_ROW_HEIGHT, MIN_ROW_HEIGHT, type MainView, MyChecklistSteps, NEEDS_A_SENTENCE, NOT_ANSWERED_YET, NO_CHAT_REASON, NO_COLUMNS_WHY, NO_COLUMNS_YET, NO_ENRICH_REASON, NO_MEMBERS_REASON, NO_OPEN_RECORDS_REASON, NO_REASK_REASON, NO_RIGHTS, NO_RULES_YET, NO_SAVED_VIEWS_REASON, NO_SHARE_REASON, NO_UPLOAD_REASON, type NewFieldSpec, type NewTableSpec, NotifyRuleEditor, type NotifyRuleEditorProps, type NotifyRuleSpec, type OpenRecordsAsk, type OrganizationMember, PARITY_LABEL, PARITY_MADE_OF, Peek, type PeekProps, type PendingCapture, PersonPicker, type PersonPickerProps, type PickableFieldType, PipelineBoard, type PipelineBoardProps, type PlainFieldType, type PlainRefusal, type PortalAnswer, PortalCardView, type PortalCardViewProps, PortalShell, type PortalShellProps, PortalsPanel, type PortalsPanelProps, type ProposalOutcome, ProposalRow, type ProposalRowProps, type ProposedChange, ProvenanceBadge, PublicViewPage, type PublicViewPageProps, type ReaskContext, RecordChat, type RecordChatContext, type RecordChatEntry, type RecordChatProps, type RecordChatWithheld, RecordChip, RecordForm, type RecordFormProps, RecordLabelProvider, RecordValue, RecordsMount, type RecordsMountProps, type RecordsUiHost, RecordsUiProvider, RefusalLine, RefusalNotice, type RelationFieldType, RelationPicker, type RelationPickerProps, type ResolveName, SAVED_VIEWS_UNAVAILABLE, SERIES_COLORS, SOMEBODY, STORE_DECIDES_REASON, type SavedDashboard, type SavedForm, type SavedView, type SavedViewSpec, ShareControl, type ShareControlProps, type ShareSubject, SignBlock, type SignBlockProps, StageRulesSection, type StageRulesSectionProps, StepRow, SubscriptionsPanel, type SubscriptionsPanelProps, type Surface, type SurfacePress, type SystemFieldSpec, type SystemTableSpec, TABLE_LANES, TABLE_NOT_REACHABLE, THE_SYSTEM, type TableLane, TablePage, type TablePageProps, type TableRights, TableSettings, type TableSettingsProps, TablesHome, type TablesHomeProps, type TrackedVersion, type UseSystemTableState, VIEW_LAYOUTS, VIEW_NOT_SAVED_YET, VIEW_TABLE, ViewBar, type ViewBarProps, type ViewLayout, type ViewSort, ViewSwitcher, type ViewSwitcherProps, type WhatYouMayDo, type WhoChanged, WhoChangedSource, actorBadge, actorWords, addFields, blockFromSpec, bodyForReading, bodyFromKeys, cellState, chooseSurface, colorFromTheValue, columnForField, conditionValue, controlFor, currencyCodeFor, dashboardDeclareArgs, dashboardFromSummary, declareTable, editorKindFor, ensureSystemTable, envelopeFor, fieldDeclarationFor, fieldIsEditable, fieldName, fieldToken, fieldTypeChoice, fieldTypeLabel, formDeclareArgs, formFromSummary, formPresentation, formatForField, groupLabel, hintForAPerson, hintIsMachineIdentity, humanize, idsOf, isId, isMachineIdentity, isPlainFieldType, isRelationFieldType, isSignatureField, keyFor, laneFor, lastChangeSentence, machineIdentityIn, memberName, nextInWords, parityTypesWithNoExplanation, parseGridPresentation, personActor, personRecordForMember, pointsAtRecords, presentationDocument, presentationIsEmpty, previewLine, recordName, recordsDataSource, refusalForAPerson, refusalLineForAPerson, renderValue, revokeConsequence, rowName, scalarText, shareUnavailableReason, specFromBlock, storeDecidesRights, submissionStamp, surfaceChosen, tableName, tableRightsAt, tokenFor, useCanShare, useEmbedHandshake, useEnrichCells, useGridEditing, useMeasuredWidth, useMyChecklistSteps, useRecordLabels, useRecordRights, useRecordsUi, useRowRights, useSystemTable, useTableRights, useViewRecords, useWhoChanged, viewDocument, viewFromRecord, viewPatchDocument, whatIsMissing, whatYouMayDo, whatYouMayDoWithTable, whenWords };
|
|
2776
|
+
export { ACTION_KINDS, ActionInbox, type ActionInboxProps, type ActionKind, type AgentBuildAsk, BookingBuilder, type BookingBuilderProps, BookingSlots, type BookingSlotsProps, BuildOrAsk, type BuildOrAskProps, type BuildableKind, CAPTURE_MODES, CHART_KINDS, CHART_KIND_LABEL, CHART_NEEDS, CONDITION_OPS, type Capability, type CaptureMode, type CaptureQueuePort, CaptureRun, type CaptureRunProps, CaptureSheet, type CaptureSheetProps, type CellAddress, type CellRefusal, type CellState, ChartBlock, type ChartBlockProps, type ChartConfig, ChartFrame, type ChartKind, ChartLegendContent, type ChartSpec, ChartTooltipContent, ChecklistRunner, type ChecklistRunnerProps, ChecklistTemplateEditor, ChecklistsPanel, type ChecklistsPanelProps, CommentThread, type CommentThreadProps, type ConditionField, ConditionRow, type ConditionRowProps, CustomFieldsSection, type CustomFieldsSectionProps, DEFAULT_FIELDS, DEFAULT_VIEW_NAME, DashboardCanvas, type DashboardCanvasProps, type DeclareResult, DocRender, type DocRenderProps, DocTemplate, type DocTemplateProps, type DocTemplateSpec, EMPTY_PRESENTATION, type EditorKind, EmbedFrame, type EmbedFrameProps, type EnrichAsk, EnrichBadge, type EnrichBadgeProps, type EnrichOutcome, EnrichPanel, type EnrichPanelProps, ExportMenu, type ExportMenuProps, FIELD_TYPE_CHOICES, FIELD_TYPE_GROUPS, FORM_FLOWS, FROZEN_COLUMN_WIDTH, FieldControl, FieldEditor, type FieldEditorControlProps, type FieldEditorProps, FieldHistoryPanel, type FieldHistoryPanelProps, FieldLabel, type FieldProposalRow, type FieldTypeChoice, FormBuilder, type FormBuilderProps, type FormFlow, type FormQuestionSpec, FormRunner, type FormRunnerProps, type FormSpec, type FormSubmitOutcome, type FormTheme, FormsPanel, type FormsPanelProps, Grid, GridCell, type GridEditing, type GridGrouping, type GridPresentation, type GridProps, HistoryPanel, type HistoryPanelProps, IN_MEMORY_QUEUE_REASON, ImportWizard, type ImportWizardProps, KERNEL_REASON, LANE_EMPTY, LANE_TITLE, LAYOUT_FIELD_KIND, LAYOUT_LABEL, LAYOUT_NEEDS, LAYOUT_NO_FIELD, LEVEL_WORD, type LabelLookup, MACHINE_IDENTITY, MAX_ROW_HEIGHT, MIN_ROW_HEIGHT, type MainView, MyChecklistSteps, NEEDS_A_SENTENCE, NOT_ANSWERED_YET, NO_AGENT_PORT, NO_CHAT_REASON, NO_COLUMNS_WHY, NO_COLUMNS_YET, NO_ENRICH_REASON, NO_MEMBERS_REASON, NO_OPEN_RECORDS_REASON, NO_REASK_REASON, NO_RIGHTS, NO_RULES_YET, NO_SAVED_VIEWS_REASON, NO_SHARE_REASON, NO_UPLOAD_REASON, type NewFieldSpec, type NewTableSpec, NotifyRuleEditor, type NotifyRuleEditorProps, type NotifyRuleSpec, type OpenRecordsAsk, type OrganizationMember, PARITY_LABEL, PARITY_MADE_OF, Peek, type PeekProps, type PendingCapture, PersonPicker, type PersonPickerProps, type PickableFieldType, PipelineBoard, type PipelineBoardProps, type PlainFieldType, type PlainRefusal, type PortalAnswer, PortalBuilder, type PortalBuilderProps, PortalCardView, type PortalCardViewProps, PortalShell, type PortalShellProps, PortalsPanel, type PortalsPanelProps, type ProposalOutcome, ProposalRow, type ProposalRowProps, type ProposedChange, ProvenanceBadge, PublicViewPage, type PublicViewPageProps, type ReaskContext, RecordChat, type RecordChatContext, type RecordChatEntry, type RecordChatProps, type RecordChatWithheld, RecordChip, RecordForm, type RecordFormProps, RecordLabelProvider, RecordValue, RecordsMount, type RecordsMountProps, type RecordsUiHost, RecordsUiProvider, RefusalLine, RefusalNotice, type RelationFieldType, RelationPicker, type RelationPickerProps, type ResolveName, SAVED_VIEWS_UNAVAILABLE, SERIES_COLORS, SOMEBODY, STORE_ANSWERS_THESE, STORE_DECIDES_REASON, type SavedDashboard, type SavedForm, type SavedView, type SavedViewSpec, ShareControl, type ShareControlProps, type ShareSubject, SignBlock, type SignBlockProps, StageRulesSection, type StageRulesSectionProps, StepRow, SubscriptionsPanel, type SubscriptionsPanelProps, type Surface, type SurfacePress, type SystemFieldSpec, type SystemTableSpec, TABLE_LANES, TABLE_NOT_REACHABLE, THE_SYSTEM, type TableLane, TablePage, type TablePageProps, type TableRights, TableSettings, type TableSettingsProps, TablesHome, type TablesHomeProps, type TrackedVersion, type UseSystemTableState, VIEW_LAYOUTS, VIEW_NOT_SAVED_YET, VIEW_TABLE, ViewBar, type ViewBarProps, type ViewLayout, type ViewSort, ViewSwitcher, type ViewSwitcherProps, type WhatYouMayDo, type WhoChanged, WhoChangedSource, actorBadge, actorWords, addFields, blockFromSpec, bodyForReading, bodyFromKeys, cellState, chooseSurface, colorFromTheValue, columnForField, conditionValue, controlFor, currencyCodeFor, dashboardDeclareArgs, dashboardFromSummary, declareTable, editorKindFor, ensureSystemTable, envelopeFor, fieldDeclarationFor, fieldIsEditable, fieldName, fieldToken, fieldTypeChoice, fieldTypeLabel, formDeclareArgs, formFromSummary, formPresentation, formatForField, groupLabel, hintForAPerson, hintIsMachineIdentity, humanize, idsOf, isId, isMachineIdentity, isPlainFieldType, isRelationFieldType, isSignatureField, keyFor, laneFor, lastChangeSentence, machineIdentityIn, memberName, nextInWords, parityTypesWithNoExplanation, parseGridPresentation, personActor, personRecordForMember, pointsAtRecords, presentationDocument, presentationIsEmpty, previewLine, recordName, recordsDataSource, refusalForAPerson, refusalLineForAPerson, renderValue, revokeConsequence, rowName, scalarText, shareUnavailableReason, specFromBlock, storeDecidesRights, submissionStamp, surfaceChosen, tableName, tableRightsAt, tokenFor, useCanShare, useEmbedHandshake, useEnrichCells, useGridEditing, useMeasuredWidth, useMyChecklistSteps, useRecordLabels, useRecordRights, useRecordsUi, useRowRights, useSystemTable, useTableRights, useViewRecords, useWhoChanged, viewDocument, viewFromRecord, viewPatchDocument, whatIsMissing, whatYouMayDo, whatYouMayDoWithTable, whenWords };
|
package/dist/index.d.ts
CHANGED
|
@@ -393,6 +393,33 @@ interface RecordsUiHost {
|
|
|
393
393
|
* never a composer that goes nowhere and never silence.
|
|
394
394
|
*/
|
|
395
395
|
onReask?: (question: string, context: ReaskContext) => Promise<void>;
|
|
396
|
+
/**
|
|
397
|
+
* OPTIONAL. ASK AN AGENT FOR A WHOLE FORM, BOOKING PAGE, PORTAL OR DIGEST.
|
|
398
|
+
*
|
|
399
|
+
* This is the FASTER of the two ways every builder offers (`BuildOrAsk`), and
|
|
400
|
+
* it is a port for the same reason `onReask` is: the server's `records` tool
|
|
401
|
+
* is what calls `form_propose`, `booking_propose`, `portal_propose` and
|
|
402
|
+
* `subscription_propose`, and a browser stamping itself `agent` would be a
|
|
403
|
+
* browser claiming to be one.
|
|
404
|
+
*
|
|
405
|
+
* `suggestion` is the sentence this package would put in the person's mouth —
|
|
406
|
+
* a host normally opens its composer with it already typed, so the person
|
|
407
|
+
* edits rather than starts.
|
|
408
|
+
*
|
|
409
|
+
* Unbound, the "Ask an agent" button is ABSENT — not greyed — and every
|
|
410
|
+
* builder's empty state says so in one sentence naming this port, with the
|
|
411
|
+
* hand-built way still right there. The product walk of 2026-09-21 found the
|
|
412
|
+
* opposite arrangement (the agent named and no builder at all), which left a
|
|
413
|
+
* person who did not know what to say with nothing to press.
|
|
414
|
+
*/
|
|
415
|
+
onAskForOne?: (ask: AgentBuildAsk) => void;
|
|
416
|
+
}
|
|
417
|
+
/** What a person is asking an agent to make, and where they were standing. */
|
|
418
|
+
interface AgentBuildAsk {
|
|
419
|
+
kind: "form" | "booking" | "portal" | "digest";
|
|
420
|
+
tableId: Uuid$1;
|
|
421
|
+
/** The sentence this package would say. A host opens its composer with it. */
|
|
422
|
+
suggestion: string;
|
|
396
423
|
}
|
|
397
424
|
/**
|
|
398
425
|
* WHAT A CLICK ON A NUMBER ASKS FOR. The filter is already merged: the block's
|
|
@@ -1730,6 +1757,20 @@ declare function submissionStamp(args: {
|
|
|
1730
1757
|
onBehalfOf?: string | null;
|
|
1731
1758
|
}): Record<string, unknown>;
|
|
1732
1759
|
|
|
1760
|
+
interface PortalBuilderProps {
|
|
1761
|
+
/**
|
|
1762
|
+
* OPTIONAL. The Table whose rail this was opened from. It is pre-ticked as a
|
|
1763
|
+
* Table to expose, because that is the thing the person was looking at.
|
|
1764
|
+
*/
|
|
1765
|
+
tableId?: Uuid | null | undefined;
|
|
1766
|
+
/** Re-state an existing portal rather than making a second one. */
|
|
1767
|
+
portalId?: Uuid | null | undefined;
|
|
1768
|
+
onSaved?: ((portalId: Uuid) => void) | undefined;
|
|
1769
|
+
onClose?: (() => void) | undefined;
|
|
1770
|
+
className?: string | undefined;
|
|
1771
|
+
}
|
|
1772
|
+
declare function PortalBuilder({ tableId, portalId, onSaved, onClose, className }: PortalBuilderProps): react.JSX.Element;
|
|
1773
|
+
|
|
1733
1774
|
interface PortalsPanelProps {
|
|
1734
1775
|
/**
|
|
1735
1776
|
* OPTIONAL. The Table whose page this rail is on. It is used for ONE thing:
|
|
@@ -1789,6 +1830,39 @@ interface SubscriptionsPanelProps {
|
|
|
1789
1830
|
}
|
|
1790
1831
|
declare function SubscriptionsPanel({ tableId, className }: SubscriptionsPanelProps): react.JSX.Element;
|
|
1791
1832
|
|
|
1833
|
+
/** What a person is asking to have made, in the store's own word for it. */
|
|
1834
|
+
type BuildableKind = "form" | "booking" | "portal" | "digest";
|
|
1835
|
+
interface BuildOrAskProps {
|
|
1836
|
+
/**
|
|
1837
|
+
* The sentence that says what this thing IS, in a practitioner's words —
|
|
1838
|
+
* never "You have no forms." A person who does not already know what a
|
|
1839
|
+
* booking page does is not helped by being told they have none.
|
|
1840
|
+
*/
|
|
1841
|
+
children: ReactNode;
|
|
1842
|
+
/** Pressed, the builder opens in place. Absent when `mayBuild` is false. */
|
|
1843
|
+
onBuild: () => void;
|
|
1844
|
+
/** The store's answer, never a guess on this screen. */
|
|
1845
|
+
mayBuild: boolean;
|
|
1846
|
+
/**
|
|
1847
|
+
* WHY NOT, in the store's words, shown where the button would have been.
|
|
1848
|
+
* A missing control with no explanation is the same dead end as a dead one.
|
|
1849
|
+
*/
|
|
1850
|
+
whyNot?: string | null | undefined;
|
|
1851
|
+
/**
|
|
1852
|
+
* The host's agent port. Unbound, the second button is absent and the
|
|
1853
|
+
* sentence below names what is missing.
|
|
1854
|
+
*/
|
|
1855
|
+
onAsk?: (() => void) | undefined;
|
|
1856
|
+
/** The words a person would actually say, offered as the starting sentence. */
|
|
1857
|
+
suggestion: string;
|
|
1858
|
+
/** "Build the form", "Build the booking page" — the act, never "New". */
|
|
1859
|
+
buildLabel: string;
|
|
1860
|
+
className?: string | undefined;
|
|
1861
|
+
}
|
|
1862
|
+
/** What this package tells a host that has bound no agent. One sentence, one remedy. */
|
|
1863
|
+
declare const NO_AGENT_PORT: string;
|
|
1864
|
+
declare function BuildOrAsk({ children, onBuild, mayBuild, whyNot, onAsk, suggestion, buildLabel, className, }: BuildOrAskProps): react.JSX.Element;
|
|
1865
|
+
|
|
1792
1866
|
interface FormBuilderProps {
|
|
1793
1867
|
/** The Table this form collects into. A form is a view on a real Table. */
|
|
1794
1868
|
tableId: Uuid;
|
|
@@ -2160,6 +2234,26 @@ declare function ChecklistTemplateEditor({ aboutTableId, templateId, onDone, cla
|
|
|
2160
2234
|
className?: string | undefined;
|
|
2161
2235
|
}): react.JSX.Element;
|
|
2162
2236
|
|
|
2237
|
+
/**
|
|
2238
|
+
* THE THREE THE STORE FILLS IN. Named here so this screen never offers them —
|
|
2239
|
+
* `custom.booking_declare` refuses a question naming any of the three, and a
|
|
2240
|
+
* control that is always refused is a dead control.
|
|
2241
|
+
*/
|
|
2242
|
+
declare const STORE_ANSWERS_THESE: readonly ["slot", "status", "booked_with"];
|
|
2243
|
+
interface BookingBuilderProps {
|
|
2244
|
+
/** The Table the appointments land in. An appointment is an ordinary record in it. */
|
|
2245
|
+
tableId: Uuid;
|
|
2246
|
+
/** Re-state an existing page rather than making a second one over the same Table. */
|
|
2247
|
+
bookingId?: Uuid | null | undefined;
|
|
2248
|
+
/** Called after a save, so the list this opened from re-reads the store. */
|
|
2249
|
+
onSaved?: ((page: {
|
|
2250
|
+
form_id: string;
|
|
2251
|
+
}) => void) | undefined;
|
|
2252
|
+
onClose?: (() => void) | undefined;
|
|
2253
|
+
className?: string | undefined;
|
|
2254
|
+
}
|
|
2255
|
+
declare function BookingBuilder({ tableId, bookingId, onSaved, onClose, className }: BookingBuilderProps): react.JSX.Element;
|
|
2256
|
+
|
|
2163
2257
|
interface BookingSlotsProps {
|
|
2164
2258
|
/**
|
|
2165
2259
|
* One Table's booking pages. Omitted — on the Records home — it is every
|
|
@@ -2679,4 +2773,4 @@ interface PipelineBoardProps {
|
|
|
2679
2773
|
}
|
|
2680
2774
|
declare function PipelineBoard({ tableId, rows, measure, onMeasureChange, onOpenRecord, onMoved, className, }: PipelineBoardProps): react.JSX.Element;
|
|
2681
2775
|
|
|
2682
|
-
export { ACTION_KINDS, ActionInbox, type ActionInboxProps, type ActionKind, BookingSlots, type BookingSlotsProps, CAPTURE_MODES, CHART_KINDS, CHART_KIND_LABEL, CHART_NEEDS, CONDITION_OPS, type Capability, type CaptureMode, type CaptureQueuePort, CaptureRun, type CaptureRunProps, CaptureSheet, type CaptureSheetProps, type CellAddress, type CellRefusal, type CellState, ChartBlock, type ChartBlockProps, type ChartConfig, ChartFrame, type ChartKind, ChartLegendContent, type ChartSpec, ChartTooltipContent, ChecklistRunner, type ChecklistRunnerProps, ChecklistTemplateEditor, ChecklistsPanel, type ChecklistsPanelProps, CommentThread, type CommentThreadProps, type ConditionField, ConditionRow, type ConditionRowProps, CustomFieldsSection, type CustomFieldsSectionProps, DEFAULT_FIELDS, DEFAULT_VIEW_NAME, DashboardCanvas, type DashboardCanvasProps, type DeclareResult, DocRender, type DocRenderProps, DocTemplate, type DocTemplateProps, type DocTemplateSpec, EMPTY_PRESENTATION, type EditorKind, EmbedFrame, type EmbedFrameProps, type EnrichAsk, EnrichBadge, type EnrichBadgeProps, type EnrichOutcome, EnrichPanel, type EnrichPanelProps, ExportMenu, type ExportMenuProps, FIELD_TYPE_CHOICES, FIELD_TYPE_GROUPS, FORM_FLOWS, FROZEN_COLUMN_WIDTH, FieldControl, FieldEditor, type FieldEditorControlProps, type FieldEditorProps, FieldHistoryPanel, type FieldHistoryPanelProps, FieldLabel, type FieldProposalRow, type FieldTypeChoice, FormBuilder, type FormBuilderProps, type FormFlow, type FormQuestionSpec, FormRunner, type FormRunnerProps, type FormSpec, type FormSubmitOutcome, type FormTheme, FormsPanel, type FormsPanelProps, Grid, GridCell, type GridEditing, type GridGrouping, type GridPresentation, type GridProps, HistoryPanel, type HistoryPanelProps, IN_MEMORY_QUEUE_REASON, ImportWizard, type ImportWizardProps, KERNEL_REASON, LANE_EMPTY, LANE_TITLE, LAYOUT_FIELD_KIND, LAYOUT_LABEL, LAYOUT_NEEDS, LAYOUT_NO_FIELD, LEVEL_WORD, type LabelLookup, MACHINE_IDENTITY, MAX_ROW_HEIGHT, MIN_ROW_HEIGHT, type MainView, MyChecklistSteps, NEEDS_A_SENTENCE, NOT_ANSWERED_YET, NO_CHAT_REASON, NO_COLUMNS_WHY, NO_COLUMNS_YET, NO_ENRICH_REASON, NO_MEMBERS_REASON, NO_OPEN_RECORDS_REASON, NO_REASK_REASON, NO_RIGHTS, NO_RULES_YET, NO_SAVED_VIEWS_REASON, NO_SHARE_REASON, NO_UPLOAD_REASON, type NewFieldSpec, type NewTableSpec, NotifyRuleEditor, type NotifyRuleEditorProps, type NotifyRuleSpec, type OpenRecordsAsk, type OrganizationMember, PARITY_LABEL, PARITY_MADE_OF, Peek, type PeekProps, type PendingCapture, PersonPicker, type PersonPickerProps, type PickableFieldType, PipelineBoard, type PipelineBoardProps, type PlainFieldType, type PlainRefusal, type PortalAnswer, PortalCardView, type PortalCardViewProps, PortalShell, type PortalShellProps, PortalsPanel, type PortalsPanelProps, type ProposalOutcome, ProposalRow, type ProposalRowProps, type ProposedChange, ProvenanceBadge, PublicViewPage, type PublicViewPageProps, type ReaskContext, RecordChat, type RecordChatContext, type RecordChatEntry, type RecordChatProps, type RecordChatWithheld, RecordChip, RecordForm, type RecordFormProps, RecordLabelProvider, RecordValue, RecordsMount, type RecordsMountProps, type RecordsUiHost, RecordsUiProvider, RefusalLine, RefusalNotice, type RelationFieldType, RelationPicker, type RelationPickerProps, type ResolveName, SAVED_VIEWS_UNAVAILABLE, SERIES_COLORS, SOMEBODY, STORE_DECIDES_REASON, type SavedDashboard, type SavedForm, type SavedView, type SavedViewSpec, ShareControl, type ShareControlProps, type ShareSubject, SignBlock, type SignBlockProps, StageRulesSection, type StageRulesSectionProps, StepRow, SubscriptionsPanel, type SubscriptionsPanelProps, type Surface, type SurfacePress, type SystemFieldSpec, type SystemTableSpec, TABLE_LANES, TABLE_NOT_REACHABLE, THE_SYSTEM, type TableLane, TablePage, type TablePageProps, type TableRights, TableSettings, type TableSettingsProps, TablesHome, type TablesHomeProps, type TrackedVersion, type UseSystemTableState, VIEW_LAYOUTS, VIEW_NOT_SAVED_YET, VIEW_TABLE, ViewBar, type ViewBarProps, type ViewLayout, type ViewSort, ViewSwitcher, type ViewSwitcherProps, type WhatYouMayDo, type WhoChanged, WhoChangedSource, actorBadge, actorWords, addFields, blockFromSpec, bodyForReading, bodyFromKeys, cellState, chooseSurface, colorFromTheValue, columnForField, conditionValue, controlFor, currencyCodeFor, dashboardDeclareArgs, dashboardFromSummary, declareTable, editorKindFor, ensureSystemTable, envelopeFor, fieldDeclarationFor, fieldIsEditable, fieldName, fieldToken, fieldTypeChoice, fieldTypeLabel, formDeclareArgs, formFromSummary, formPresentation, formatForField, groupLabel, hintForAPerson, hintIsMachineIdentity, humanize, idsOf, isId, isMachineIdentity, isPlainFieldType, isRelationFieldType, isSignatureField, keyFor, laneFor, lastChangeSentence, machineIdentityIn, memberName, nextInWords, parityTypesWithNoExplanation, parseGridPresentation, personActor, personRecordForMember, pointsAtRecords, presentationDocument, presentationIsEmpty, previewLine, recordName, recordsDataSource, refusalForAPerson, refusalLineForAPerson, renderValue, revokeConsequence, rowName, scalarText, shareUnavailableReason, specFromBlock, storeDecidesRights, submissionStamp, surfaceChosen, tableName, tableRightsAt, tokenFor, useCanShare, useEmbedHandshake, useEnrichCells, useGridEditing, useMeasuredWidth, useMyChecklistSteps, useRecordLabels, useRecordRights, useRecordsUi, useRowRights, useSystemTable, useTableRights, useViewRecords, useWhoChanged, viewDocument, viewFromRecord, viewPatchDocument, whatIsMissing, whatYouMayDo, whatYouMayDoWithTable, whenWords };
|
|
2776
|
+
export { ACTION_KINDS, ActionInbox, type ActionInboxProps, type ActionKind, type AgentBuildAsk, BookingBuilder, type BookingBuilderProps, BookingSlots, type BookingSlotsProps, BuildOrAsk, type BuildOrAskProps, type BuildableKind, CAPTURE_MODES, CHART_KINDS, CHART_KIND_LABEL, CHART_NEEDS, CONDITION_OPS, type Capability, type CaptureMode, type CaptureQueuePort, CaptureRun, type CaptureRunProps, CaptureSheet, type CaptureSheetProps, type CellAddress, type CellRefusal, type CellState, ChartBlock, type ChartBlockProps, type ChartConfig, ChartFrame, type ChartKind, ChartLegendContent, type ChartSpec, ChartTooltipContent, ChecklistRunner, type ChecklistRunnerProps, ChecklistTemplateEditor, ChecklistsPanel, type ChecklistsPanelProps, CommentThread, type CommentThreadProps, type ConditionField, ConditionRow, type ConditionRowProps, CustomFieldsSection, type CustomFieldsSectionProps, DEFAULT_FIELDS, DEFAULT_VIEW_NAME, DashboardCanvas, type DashboardCanvasProps, type DeclareResult, DocRender, type DocRenderProps, DocTemplate, type DocTemplateProps, type DocTemplateSpec, EMPTY_PRESENTATION, type EditorKind, EmbedFrame, type EmbedFrameProps, type EnrichAsk, EnrichBadge, type EnrichBadgeProps, type EnrichOutcome, EnrichPanel, type EnrichPanelProps, ExportMenu, type ExportMenuProps, FIELD_TYPE_CHOICES, FIELD_TYPE_GROUPS, FORM_FLOWS, FROZEN_COLUMN_WIDTH, FieldControl, FieldEditor, type FieldEditorControlProps, type FieldEditorProps, FieldHistoryPanel, type FieldHistoryPanelProps, FieldLabel, type FieldProposalRow, type FieldTypeChoice, FormBuilder, type FormBuilderProps, type FormFlow, type FormQuestionSpec, FormRunner, type FormRunnerProps, type FormSpec, type FormSubmitOutcome, type FormTheme, FormsPanel, type FormsPanelProps, Grid, GridCell, type GridEditing, type GridGrouping, type GridPresentation, type GridProps, HistoryPanel, type HistoryPanelProps, IN_MEMORY_QUEUE_REASON, ImportWizard, type ImportWizardProps, KERNEL_REASON, LANE_EMPTY, LANE_TITLE, LAYOUT_FIELD_KIND, LAYOUT_LABEL, LAYOUT_NEEDS, LAYOUT_NO_FIELD, LEVEL_WORD, type LabelLookup, MACHINE_IDENTITY, MAX_ROW_HEIGHT, MIN_ROW_HEIGHT, type MainView, MyChecklistSteps, NEEDS_A_SENTENCE, NOT_ANSWERED_YET, NO_AGENT_PORT, NO_CHAT_REASON, NO_COLUMNS_WHY, NO_COLUMNS_YET, NO_ENRICH_REASON, NO_MEMBERS_REASON, NO_OPEN_RECORDS_REASON, NO_REASK_REASON, NO_RIGHTS, NO_RULES_YET, NO_SAVED_VIEWS_REASON, NO_SHARE_REASON, NO_UPLOAD_REASON, type NewFieldSpec, type NewTableSpec, NotifyRuleEditor, type NotifyRuleEditorProps, type NotifyRuleSpec, type OpenRecordsAsk, type OrganizationMember, PARITY_LABEL, PARITY_MADE_OF, Peek, type PeekProps, type PendingCapture, PersonPicker, type PersonPickerProps, type PickableFieldType, PipelineBoard, type PipelineBoardProps, type PlainFieldType, type PlainRefusal, type PortalAnswer, PortalBuilder, type PortalBuilderProps, PortalCardView, type PortalCardViewProps, PortalShell, type PortalShellProps, PortalsPanel, type PortalsPanelProps, type ProposalOutcome, ProposalRow, type ProposalRowProps, type ProposedChange, ProvenanceBadge, PublicViewPage, type PublicViewPageProps, type ReaskContext, RecordChat, type RecordChatContext, type RecordChatEntry, type RecordChatProps, type RecordChatWithheld, RecordChip, RecordForm, type RecordFormProps, RecordLabelProvider, RecordValue, RecordsMount, type RecordsMountProps, type RecordsUiHost, RecordsUiProvider, RefusalLine, RefusalNotice, type RelationFieldType, RelationPicker, type RelationPickerProps, type ResolveName, SAVED_VIEWS_UNAVAILABLE, SERIES_COLORS, SOMEBODY, STORE_ANSWERS_THESE, STORE_DECIDES_REASON, type SavedDashboard, type SavedForm, type SavedView, type SavedViewSpec, ShareControl, type ShareControlProps, type ShareSubject, SignBlock, type SignBlockProps, StageRulesSection, type StageRulesSectionProps, StepRow, SubscriptionsPanel, type SubscriptionsPanelProps, type Surface, type SurfacePress, type SystemFieldSpec, type SystemTableSpec, TABLE_LANES, TABLE_NOT_REACHABLE, THE_SYSTEM, type TableLane, TablePage, type TablePageProps, type TableRights, TableSettings, type TableSettingsProps, TablesHome, type TablesHomeProps, type TrackedVersion, type UseSystemTableState, VIEW_LAYOUTS, VIEW_NOT_SAVED_YET, VIEW_TABLE, ViewBar, type ViewBarProps, type ViewLayout, type ViewSort, ViewSwitcher, type ViewSwitcherProps, type WhatYouMayDo, type WhoChanged, WhoChangedSource, actorBadge, actorWords, addFields, blockFromSpec, bodyForReading, bodyFromKeys, cellState, chooseSurface, colorFromTheValue, columnForField, conditionValue, controlFor, currencyCodeFor, dashboardDeclareArgs, dashboardFromSummary, declareTable, editorKindFor, ensureSystemTable, envelopeFor, fieldDeclarationFor, fieldIsEditable, fieldName, fieldToken, fieldTypeChoice, fieldTypeLabel, formDeclareArgs, formFromSummary, formPresentation, formatForField, groupLabel, hintForAPerson, hintIsMachineIdentity, humanize, idsOf, isId, isMachineIdentity, isPlainFieldType, isRelationFieldType, isSignatureField, keyFor, laneFor, lastChangeSentence, machineIdentityIn, memberName, nextInWords, parityTypesWithNoExplanation, parseGridPresentation, personActor, personRecordForMember, pointsAtRecords, presentationDocument, presentationIsEmpty, previewLine, recordName, recordsDataSource, refusalForAPerson, refusalLineForAPerson, renderValue, revokeConsequence, rowName, scalarText, shareUnavailableReason, specFromBlock, storeDecidesRights, submissionStamp, surfaceChosen, tableName, tableRightsAt, tokenFor, useCanShare, useEmbedHandshake, useEnrichCells, useGridEditing, useMeasuredWidth, useMyChecklistSteps, useRecordLabels, useRecordRights, useRecordsUi, useRowRights, useSystemTable, useTableRights, useViewRecords, useWhoChanged, viewDocument, viewFromRecord, viewPatchDocument, whatIsMissing, whatYouMayDo, whatYouMayDoWithTable, whenWords };
|