@ai-matrx/records 0.80.2 → 0.80.4
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 +11 -0
- package/dist/app-table/index.cjs +12 -0
- package/dist/app-table/index.cjs.map +1 -1
- package/dist/app-table/index.d.cts +7 -7
- package/dist/app-table/index.d.ts +7 -7
- package/dist/app-table/index.js +12 -0
- package/dist/app-table/index.js.map +1 -1
- package/dist/{client-DKKRZKNw.d.ts → client-CB_Klj1P.d.ts} +10 -5
- package/dist/{client-BfNJEpar.d.cts → client-D0yGEof4.d.cts} +10 -5
- package/dist/core/index.cjs +18 -0
- package/dist/core/index.cjs.map +1 -1
- package/dist/core/index.d.cts +12 -11
- package/dist/core/index.d.ts +12 -11
- package/dist/core/index.js +18 -0
- package/dist/core/index.js.map +1 -1
- package/dist/data/index.cjs +12 -0
- package/dist/data/index.cjs.map +1 -1
- package/dist/data/index.d.cts +7 -7
- package/dist/data/index.d.ts +7 -7
- package/dist/data/index.js +12 -0
- package/dist/data/index.js.map +1 -1
- package/dist/{declareTable-Cg522Sk0.d.ts → declareTable-DoYVueVF.d.ts} +4 -4
- package/dist/{declareTable-CzLMdOSy.d.cts → declareTable-l7ktxN6p.d.cts} +4 -4
- package/dist/{field-DJAvDExi.d.ts → field-6UtYgFeu.d.ts} +1 -1
- package/dist/{field-DCXU6k9i.d.cts → field-DpJR_5Pe.d.cts} +1 -1
- package/dist/index.cjs +10 -0
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +7 -7
- package/dist/index.d.ts +7 -7
- package/dist/index.js +10 -0
- package/dist/index.js.map +1 -1
- package/dist/memory/index.cjs +4 -0
- package/dist/memory/index.cjs.map +1 -1
- package/dist/memory/index.d.cts +6 -6
- package/dist/memory/index.d.ts +6 -6
- package/dist/memory/index.js +4 -0
- package/dist/memory/index.js.map +1 -1
- package/dist/{ports-DaHUjVg7.d.cts → ports-CE7umTp-.d.cts} +1 -1
- package/dist/{ports-Kpc-RihV.d.ts → ports-CiEYhwi5.d.ts} +1 -1
- package/dist/react/index.cjs +18 -0
- package/dist/react/index.cjs.map +1 -1
- package/dist/react/index.d.cts +26 -1
- package/dist/react/index.d.ts +26 -1
- package/dist/react/index.js +18 -0
- package/dist/react/index.js.map +1 -1
- package/dist/realtime/index.d.cts +2 -2
- package/dist/realtime/index.d.ts +2 -2
- package/dist/{record-DCaOJbhA.d.cts → record-CvqV8wyO.d.cts} +21 -1
- package/dist/{record-DCaOJbhA.d.ts → record-CvqV8wyO.d.ts} +21 -1
- package/dist/{subscription-C_hNjbaR.d.cts → subscription-CC0kgkwa.d.cts} +1 -1
- package/dist/{subscription-B9znK2dw.d.ts → subscription-DjkuDMcX.d.ts} +1 -1
- package/dist/{table-kind-DXktQGzR.d.cts → table-kind-DHpMEOHd.d.cts} +3 -3
- package/dist/{table-kind-B9RBUmSb.d.ts → table-kind-FMYq3nCr.d.ts} +3 -3
- package/dist/templates/index.cjs +67 -4
- package/dist/templates/index.cjs.map +1 -1
- package/dist/templates/index.d.cts +26 -10
- package/dist/templates/index.d.ts +26 -10
- package/dist/templates/index.js +67 -4
- package/dist/templates/index.js.map +1 -1
- package/dist/{types-CHEFgCu1.d.ts → types-B4LF3sFx.d.ts} +2 -2
- package/dist/{types-b-VGi15H.d.ts → types-BbCZJh1C.d.ts} +2 -2
- package/dist/{types-DuyBN2im.d.cts → types-DuceX7js.d.cts} +2 -2
- package/dist/{types-CD2HoaZt.d.cts → types-Flsf_KU5.d.cts} +2 -2
- package/dist/use-cases/index.cjs.map +1 -1
- package/dist/use-cases/index.d.cts +5 -5
- package/dist/use-cases/index.d.ts +5 -5
- package/dist/use-cases/index.js.map +1 -1
- package/dist/{validate-BEfYwBpA.d.ts → validate-DyVwSD74.d.ts} +1 -1
- package/dist/{validate-CubFFxpu.d.cts → validate-EvZGkD96.d.cts} +1 -1
- package/package.json +1 -1
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
import { A as AgentSnapshotRow, T as TemplateSpec, a as TemplateTable, S as SharedBlockId, C as CapabilityWord, b as TemplateField, c as TemplateAgent, d as TemplateAutomation, e as TemplateBooking, f as TemplateChecklist, g as TemplateDashboard, h as TemplateDigest, i as TemplateDocument, j as TemplateDrillDown, k as TemplateDimensions, l as TemplateForm, m as TemplateNotification, n as TemplatePortal, o as TemplateRowAction, p as TemplateStageRules, q as TemplateView, r as TemplateMergeBinding, s as TemplateTryIt, t as TemplateWorkflow, u as TemplateFootprint, I as IndustryGroup, v as TemplateJob, w as TeachesFeature, x as TemplateViewKind, y as TemplateBookingWindow } from '../types-
|
|
2
|
-
export { z as CAPABILITY_WORDS, B as CATALOGUE_QUOTAS, D as CATALOGUE_STATUSES, E as CHOICE_COLORS, F as CHOICE_COLORS_DISTINCT_UP_TO, G as CatalogueRow, H as CatalogueStatus, J as ChoiceColor, K as ConfidentialLevel, L as ConfidentialRequest, M as DEFAULT_TEMPLATE_AGENT, N as ENTITY_REFERENCE_KINDS, O as INDUSTRY_GROUPS, R as RELATIVE_DATE, P as RetiredId, Q as SHARED_BLOCKS, U as SHARED_BLOCK_IDS, V as STRENGTHS, W as SharedBlock, X as SharedBlockField, Y as SharedBlockUse, Z as Strength, _ as TABLE_KERNEL_ID, $ as TEACHES_FEATURES, a0 as TEMPLATE_AUDIENCES, a1 as TEMPLATE_EXTRA_KINDS, a2 as TEMPLATE_JOBS, a3 as TEMPLATE_REFERENCE_DATE, a4 as TEMPLATE_SPEC_VERSION, a5 as TEMPLATE_VIEW_KINDS, a6 as TemplateAgentQuestion, a7 as TemplateAgentVariable, a8 as TemplateAudience, a9 as TemplateCalendarView, aa as TemplateChecklistStep, ab as TemplateConfidential, ac as TemplateConfidentialReader, ad as TemplateDashboardBlock, ae as TemplateDimensionOverride, af as TemplateDrillPath, ag as TemplateExtra, ah as TemplateExtraAgent, ai as TemplateExtraAgentVariable, aj as TemplateExtraKind, ak as TemplateFormField, al as TemplateFoundation, am as TemplateGalleryView, an as TemplateGridView, ao as TemplateGuideStep, ap as TemplateKanbanView, aq as TemplateMeasureOverride, ar as TemplatePortalTable, as as TemplateProvenance, at as TemplateSource, au as TemplateTableSettings, av as TemplateTimelineView, aw as TemplateViewSort, ax as UseCaseSingulars, ay as WalkAction, az as WalkAssertion, aA as WalkImport, aB as WalkMove, aC as WalkStep, aD as confidentialPending, aE as confidentialRequests, aF as footprintOf, aG as membersAddRowsSteps, aH as tableSettingsProblems, aI as whenRule } from '../types-
|
|
3
|
-
import { i as AggregateMeasure, r as AggregateFilter } from '../subscription-
|
|
4
|
-
import { U as UseCase, o as UseCaseRelationship } from '../types-
|
|
5
|
-
import { U as UseCaseProblem } from '../validate-
|
|
6
|
-
export { R as RESOLVABLE_FIELD_TYPE_WORDS } from '../validate-
|
|
7
|
-
import { b as RecordsDataSource } from '../ports-
|
|
8
|
-
import '../record-
|
|
9
|
-
import '../field-
|
|
1
|
+
import { A as AgentSnapshotRow, T as TemplateSpec, a as TemplateTable, S as SharedBlockId, C as CapabilityWord, b as TemplateField, c as TemplateAgent, d as TemplateAutomation, e as TemplateBooking, f as TemplateChecklist, g as TemplateDashboard, h as TemplateDigest, i as TemplateDocument, j as TemplateDrillDown, k as TemplateDimensions, l as TemplateForm, m as TemplateNotification, n as TemplatePortal, o as TemplateRowAction, p as TemplateStageRules, q as TemplateView, r as TemplateMergeBinding, s as TemplateTryIt, t as TemplateWorkflow, u as TemplateFootprint, I as IndustryGroup, v as TemplateJob, w as TeachesFeature, x as TemplateViewKind, y as TemplateBookingWindow } from '../types-Flsf_KU5.cjs';
|
|
2
|
+
export { z as CAPABILITY_WORDS, B as CATALOGUE_QUOTAS, D as CATALOGUE_STATUSES, E as CHOICE_COLORS, F as CHOICE_COLORS_DISTINCT_UP_TO, G as CatalogueRow, H as CatalogueStatus, J as ChoiceColor, K as ConfidentialLevel, L as ConfidentialRequest, M as DEFAULT_TEMPLATE_AGENT, N as ENTITY_REFERENCE_KINDS, O as INDUSTRY_GROUPS, R as RELATIVE_DATE, P as RetiredId, Q as SHARED_BLOCKS, U as SHARED_BLOCK_IDS, V as STRENGTHS, W as SharedBlock, X as SharedBlockField, Y as SharedBlockUse, Z as Strength, _ as TABLE_KERNEL_ID, $ as TEACHES_FEATURES, a0 as TEMPLATE_AUDIENCES, a1 as TEMPLATE_EXTRA_KINDS, a2 as TEMPLATE_JOBS, a3 as TEMPLATE_REFERENCE_DATE, a4 as TEMPLATE_SPEC_VERSION, a5 as TEMPLATE_VIEW_KINDS, a6 as TemplateAgentQuestion, a7 as TemplateAgentVariable, a8 as TemplateAudience, a9 as TemplateCalendarView, aa as TemplateChecklistStep, ab as TemplateConfidential, ac as TemplateConfidentialReader, ad as TemplateDashboardBlock, ae as TemplateDimensionOverride, af as TemplateDrillPath, ag as TemplateExtra, ah as TemplateExtraAgent, ai as TemplateExtraAgentVariable, aj as TemplateExtraKind, ak as TemplateFormField, al as TemplateFoundation, am as TemplateGalleryView, an as TemplateGridView, ao as TemplateGuideStep, ap as TemplateKanbanView, aq as TemplateMeasureOverride, ar as TemplatePortalTable, as as TemplateProvenance, at as TemplateSource, au as TemplateTableSettings, av as TemplateTimelineView, aw as TemplateViewSort, ax as UseCaseSingulars, ay as WalkAction, az as WalkAssertion, aA as WalkImport, aB as WalkMove, aC as WalkStep, aD as confidentialPending, aE as confidentialRequests, aF as footprintOf, aG as membersAddRowsSteps, aH as tableSettingsProblems, aI as whenRule } from '../types-Flsf_KU5.cjs';
|
|
3
|
+
import { i as AggregateMeasure, r as AggregateFilter } from '../subscription-CC0kgkwa.cjs';
|
|
4
|
+
import { U as UseCase, o as UseCaseRelationship } from '../types-DuceX7js.cjs';
|
|
5
|
+
import { U as UseCaseProblem } from '../validate-EvZGkD96.cjs';
|
|
6
|
+
export { R as RESOLVABLE_FIELD_TYPE_WORDS } from '../validate-EvZGkD96.cjs';
|
|
7
|
+
import { b as RecordsDataSource } from '../ports-CE7umTp-.cjs';
|
|
8
|
+
import '../record-CvqV8wyO.cjs';
|
|
9
|
+
import '../field-DpJR_5Pe.cjs';
|
|
10
10
|
|
|
11
11
|
/** The UTC offset ("-04:00") of a local wall-clock moment in an IANA zone. */
|
|
12
12
|
declare function zoneOffset(localIso: string, timeZone: string): string;
|
|
@@ -928,4 +928,20 @@ declare function sameMeaning(a: {
|
|
|
928
928
|
parityType: string;
|
|
929
929
|
}): boolean;
|
|
930
930
|
|
|
931
|
-
|
|
931
|
+
type Reuse = DescribeResult["reuses"][number];
|
|
932
|
+
interface SafeReusesResult {
|
|
933
|
+
spec: TemplateSpec;
|
|
934
|
+
/** The reuses that remain: link-only, safe to bind. */
|
|
935
|
+
reuses: Reuse[];
|
|
936
|
+
/** One line per reuse turned into a new table. */
|
|
937
|
+
notes: string[];
|
|
938
|
+
converted: Array<{
|
|
939
|
+
token: string;
|
|
940
|
+
existingName: string;
|
|
941
|
+
newName: string;
|
|
942
|
+
why: string;
|
|
943
|
+
}>;
|
|
944
|
+
}
|
|
945
|
+
declare function safeReuses(spec: TemplateSpec, reuses: Reuse[], existingTables: ExistingTable[]): SafeReusesResult;
|
|
946
|
+
|
|
947
|
+
export { AgentSnapshotRow, type AggregateOutcome, type ApplyResult, type AutofixResult, BAD_OUTCOME, BOOKING_AVAILABILITY_FACTS, type CapabilityStatus, CapabilityWord, DESIGNATED_REAL_NUMBERS, type DerivedUseCase, type DescribeCheckResult, type DescribeCtx, type DescribePlan, type DescribePlanDoor, type DescribePlanTable, type DescribeProblem, type DescribeResult, type DoorsPart, type ExistingTable, FORMULA_FUNCTIONS, type FieldRequest, GALLERY_ONLY, GOOD_OUTCOME, INSTALL_PLAN_VERSION, IndustryGroup, MAIN_TABLE_ROWS_MAX, MAIN_TABLE_ROWS_MIN, PUBLIC_MAIL_DOMAINS, RECORDS_UI_CALENDAR_MODES, RECORDS_UI_FIELD_SURFACES, RECORDS_UI_VIEW_LAYOUTS, type RepairAnswer, type RepairPatch, type RepairSlice, SERVER_DATE_GRAMMAR, type SafeReusesResult, type SeedRow, SharedBlockId, TABLES_MAX, TABLES_MIN, TEMPLATE_PLAN_DOORS, TIME_BOUND_STAGE, TITLE_DISTINCT_SHARE, type TablesPart, TeachesFeature, TemplateAgent, type TemplateAgentBinding, type TemplateAgentCopyRequest, type TemplateAssetRow, type TemplateAttachment, TemplateAutomation, TemplateBooking, TemplateBookingWindow, type TemplateCard, TemplateChecklist, TemplateDashboard, type TemplateDeclaration, TemplateDigest, TemplateDimensions, TemplateDocument, type TemplateDoorAnswer, type TemplateDoorRun, TemplateDrillDown, type TemplateFamilyDoor, TemplateField, TemplateFootprint, TemplateForm, type TemplateHostExtras, type TemplateInstallPlan, TemplateJob, type TemplateMadeKind, TemplateMergeBinding, TemplateNotification, type TemplatePlanAgent, type TemplatePlanBinding, type TemplatePlanDoor, type TemplatePlanExtraAgent, type TemplatePlanStep, TemplatePortal, TemplateRowAction, TemplateSpec, type TemplateSpecWithAttachments, TemplateStageRules, type TemplateStatus, TemplateTable, TemplateTryIt, type TemplateUpgradeAnswer, type TemplateUpgradeHint, type TemplateUpgradeRun, type TemplateVerdict, TemplateView, TemplateViewKind, TemplateWorkflow, type TrimResult, VIEW_SHAPE_FACTS, type ValidateOptions, type ViewsPart, agentCopyRequest, allTables, anyOfWhere, applyRepairPatches, assertTemplate, attachmentProblems, autofixDescribeSpec, automationHeld, blockTable, bookingArgs, bookingColumnsProblem, capabilitiesUsed, capabilityStatus, checklistSpec, choiceDisplayFormat, compileHostExtras, compileInstallPlan, dashboardBlocks, deferredRelationFields, deferredRelations, derivedFieldSpec, describeCheck, describeSpec, describeVocabulary, digestSpec, documentBody, domainsIn, drillDownDashboard, evalFormula, extrasProblems, fallbackView, foreignTextProblems, formArgs, formulaFieldSpec, formulaOrder, formulaRefs, foundationTokens, isSelfDeclaredField, isTimedField, lastResortTrim, meaningWords, mergeDescribeParts, normalizeForPhones, notificationParts, numberText, numberedStreet, packageDescribeResult, parseAt, parseFormula, parseNumeric, pathOfAt, peopleOf, phonesOutsideFictionalRange, planTables, portalArgs, relationFieldSpec, relationPatches, relativeHasTime, repairSlices, requiredCircleProblem, resolveDateToken, resolvePath, resolveRelativeDates, reusesOf, rowActionList, rowLevels, rowsFor, ruleBreak, runTemplateDoor, safeReuses, sameMeaning, selfDeclaredFieldSpec, sensitivityFloorOf, shellsPayload, stageFieldOf, stageRulesSpec, storeAggregate, storeFilterMatches, storeText, tableShellPayload, templateCard, templateDeclaration, templateText, templateUpgradeHint, timedFieldSpec, toUseCase, unwrap, upgradeTemplateInstall, useCaseProblemsOf, validateTemplate, viewMatches, viewSpec, zoneOffset };
|
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
import { A as AgentSnapshotRow, T as TemplateSpec, a as TemplateTable, S as SharedBlockId, C as CapabilityWord, b as TemplateField, c as TemplateAgent, d as TemplateAutomation, e as TemplateBooking, f as TemplateChecklist, g as TemplateDashboard, h as TemplateDigest, i as TemplateDocument, j as TemplateDrillDown, k as TemplateDimensions, l as TemplateForm, m as TemplateNotification, n as TemplatePortal, o as TemplateRowAction, p as TemplateStageRules, q as TemplateView, r as TemplateMergeBinding, s as TemplateTryIt, t as TemplateWorkflow, u as TemplateFootprint, I as IndustryGroup, v as TemplateJob, w as TeachesFeature, x as TemplateViewKind, y as TemplateBookingWindow } from '../types-
|
|
2
|
-
export { z as CAPABILITY_WORDS, B as CATALOGUE_QUOTAS, D as CATALOGUE_STATUSES, E as CHOICE_COLORS, F as CHOICE_COLORS_DISTINCT_UP_TO, G as CatalogueRow, H as CatalogueStatus, J as ChoiceColor, K as ConfidentialLevel, L as ConfidentialRequest, M as DEFAULT_TEMPLATE_AGENT, N as ENTITY_REFERENCE_KINDS, O as INDUSTRY_GROUPS, R as RELATIVE_DATE, P as RetiredId, Q as SHARED_BLOCKS, U as SHARED_BLOCK_IDS, V as STRENGTHS, W as SharedBlock, X as SharedBlockField, Y as SharedBlockUse, Z as Strength, _ as TABLE_KERNEL_ID, $ as TEACHES_FEATURES, a0 as TEMPLATE_AUDIENCES, a1 as TEMPLATE_EXTRA_KINDS, a2 as TEMPLATE_JOBS, a3 as TEMPLATE_REFERENCE_DATE, a4 as TEMPLATE_SPEC_VERSION, a5 as TEMPLATE_VIEW_KINDS, a6 as TemplateAgentQuestion, a7 as TemplateAgentVariable, a8 as TemplateAudience, a9 as TemplateCalendarView, aa as TemplateChecklistStep, ab as TemplateConfidential, ac as TemplateConfidentialReader, ad as TemplateDashboardBlock, ae as TemplateDimensionOverride, af as TemplateDrillPath, ag as TemplateExtra, ah as TemplateExtraAgent, ai as TemplateExtraAgentVariable, aj as TemplateExtraKind, ak as TemplateFormField, al as TemplateFoundation, am as TemplateGalleryView, an as TemplateGridView, ao as TemplateGuideStep, ap as TemplateKanbanView, aq as TemplateMeasureOverride, ar as TemplatePortalTable, as as TemplateProvenance, at as TemplateSource, au as TemplateTableSettings, av as TemplateTimelineView, aw as TemplateViewSort, ax as UseCaseSingulars, ay as WalkAction, az as WalkAssertion, aA as WalkImport, aB as WalkMove, aC as WalkStep, aD as confidentialPending, aE as confidentialRequests, aF as footprintOf, aG as membersAddRowsSteps, aH as tableSettingsProblems, aI as whenRule } from '../types-
|
|
3
|
-
import { i as AggregateMeasure, r as AggregateFilter } from '../subscription-
|
|
4
|
-
import { U as UseCase, o as UseCaseRelationship } from '../types-
|
|
5
|
-
import { U as UseCaseProblem } from '../validate-
|
|
6
|
-
export { R as RESOLVABLE_FIELD_TYPE_WORDS } from '../validate-
|
|
7
|
-
import { b as RecordsDataSource } from '../ports-
|
|
8
|
-
import '../record-
|
|
9
|
-
import '../field-
|
|
1
|
+
import { A as AgentSnapshotRow, T as TemplateSpec, a as TemplateTable, S as SharedBlockId, C as CapabilityWord, b as TemplateField, c as TemplateAgent, d as TemplateAutomation, e as TemplateBooking, f as TemplateChecklist, g as TemplateDashboard, h as TemplateDigest, i as TemplateDocument, j as TemplateDrillDown, k as TemplateDimensions, l as TemplateForm, m as TemplateNotification, n as TemplatePortal, o as TemplateRowAction, p as TemplateStageRules, q as TemplateView, r as TemplateMergeBinding, s as TemplateTryIt, t as TemplateWorkflow, u as TemplateFootprint, I as IndustryGroup, v as TemplateJob, w as TeachesFeature, x as TemplateViewKind, y as TemplateBookingWindow } from '../types-B4LF3sFx.js';
|
|
2
|
+
export { z as CAPABILITY_WORDS, B as CATALOGUE_QUOTAS, D as CATALOGUE_STATUSES, E as CHOICE_COLORS, F as CHOICE_COLORS_DISTINCT_UP_TO, G as CatalogueRow, H as CatalogueStatus, J as ChoiceColor, K as ConfidentialLevel, L as ConfidentialRequest, M as DEFAULT_TEMPLATE_AGENT, N as ENTITY_REFERENCE_KINDS, O as INDUSTRY_GROUPS, R as RELATIVE_DATE, P as RetiredId, Q as SHARED_BLOCKS, U as SHARED_BLOCK_IDS, V as STRENGTHS, W as SharedBlock, X as SharedBlockField, Y as SharedBlockUse, Z as Strength, _ as TABLE_KERNEL_ID, $ as TEACHES_FEATURES, a0 as TEMPLATE_AUDIENCES, a1 as TEMPLATE_EXTRA_KINDS, a2 as TEMPLATE_JOBS, a3 as TEMPLATE_REFERENCE_DATE, a4 as TEMPLATE_SPEC_VERSION, a5 as TEMPLATE_VIEW_KINDS, a6 as TemplateAgentQuestion, a7 as TemplateAgentVariable, a8 as TemplateAudience, a9 as TemplateCalendarView, aa as TemplateChecklistStep, ab as TemplateConfidential, ac as TemplateConfidentialReader, ad as TemplateDashboardBlock, ae as TemplateDimensionOverride, af as TemplateDrillPath, ag as TemplateExtra, ah as TemplateExtraAgent, ai as TemplateExtraAgentVariable, aj as TemplateExtraKind, ak as TemplateFormField, al as TemplateFoundation, am as TemplateGalleryView, an as TemplateGridView, ao as TemplateGuideStep, ap as TemplateKanbanView, aq as TemplateMeasureOverride, ar as TemplatePortalTable, as as TemplateProvenance, at as TemplateSource, au as TemplateTableSettings, av as TemplateTimelineView, aw as TemplateViewSort, ax as UseCaseSingulars, ay as WalkAction, az as WalkAssertion, aA as WalkImport, aB as WalkMove, aC as WalkStep, aD as confidentialPending, aE as confidentialRequests, aF as footprintOf, aG as membersAddRowsSteps, aH as tableSettingsProblems, aI as whenRule } from '../types-B4LF3sFx.js';
|
|
3
|
+
import { i as AggregateMeasure, r as AggregateFilter } from '../subscription-DjkuDMcX.js';
|
|
4
|
+
import { U as UseCase, o as UseCaseRelationship } from '../types-BbCZJh1C.js';
|
|
5
|
+
import { U as UseCaseProblem } from '../validate-DyVwSD74.js';
|
|
6
|
+
export { R as RESOLVABLE_FIELD_TYPE_WORDS } from '../validate-DyVwSD74.js';
|
|
7
|
+
import { b as RecordsDataSource } from '../ports-CiEYhwi5.js';
|
|
8
|
+
import '../record-CvqV8wyO.js';
|
|
9
|
+
import '../field-6UtYgFeu.js';
|
|
10
10
|
|
|
11
11
|
/** The UTC offset ("-04:00") of a local wall-clock moment in an IANA zone. */
|
|
12
12
|
declare function zoneOffset(localIso: string, timeZone: string): string;
|
|
@@ -928,4 +928,20 @@ declare function sameMeaning(a: {
|
|
|
928
928
|
parityType: string;
|
|
929
929
|
}): boolean;
|
|
930
930
|
|
|
931
|
-
|
|
931
|
+
type Reuse = DescribeResult["reuses"][number];
|
|
932
|
+
interface SafeReusesResult {
|
|
933
|
+
spec: TemplateSpec;
|
|
934
|
+
/** The reuses that remain: link-only, safe to bind. */
|
|
935
|
+
reuses: Reuse[];
|
|
936
|
+
/** One line per reuse turned into a new table. */
|
|
937
|
+
notes: string[];
|
|
938
|
+
converted: Array<{
|
|
939
|
+
token: string;
|
|
940
|
+
existingName: string;
|
|
941
|
+
newName: string;
|
|
942
|
+
why: string;
|
|
943
|
+
}>;
|
|
944
|
+
}
|
|
945
|
+
declare function safeReuses(spec: TemplateSpec, reuses: Reuse[], existingTables: ExistingTable[]): SafeReusesResult;
|
|
946
|
+
|
|
947
|
+
export { AgentSnapshotRow, type AggregateOutcome, type ApplyResult, type AutofixResult, BAD_OUTCOME, BOOKING_AVAILABILITY_FACTS, type CapabilityStatus, CapabilityWord, DESIGNATED_REAL_NUMBERS, type DerivedUseCase, type DescribeCheckResult, type DescribeCtx, type DescribePlan, type DescribePlanDoor, type DescribePlanTable, type DescribeProblem, type DescribeResult, type DoorsPart, type ExistingTable, FORMULA_FUNCTIONS, type FieldRequest, GALLERY_ONLY, GOOD_OUTCOME, INSTALL_PLAN_VERSION, IndustryGroup, MAIN_TABLE_ROWS_MAX, MAIN_TABLE_ROWS_MIN, PUBLIC_MAIL_DOMAINS, RECORDS_UI_CALENDAR_MODES, RECORDS_UI_FIELD_SURFACES, RECORDS_UI_VIEW_LAYOUTS, type RepairAnswer, type RepairPatch, type RepairSlice, SERVER_DATE_GRAMMAR, type SafeReusesResult, type SeedRow, SharedBlockId, TABLES_MAX, TABLES_MIN, TEMPLATE_PLAN_DOORS, TIME_BOUND_STAGE, TITLE_DISTINCT_SHARE, type TablesPart, TeachesFeature, TemplateAgent, type TemplateAgentBinding, type TemplateAgentCopyRequest, type TemplateAssetRow, type TemplateAttachment, TemplateAutomation, TemplateBooking, TemplateBookingWindow, type TemplateCard, TemplateChecklist, TemplateDashboard, type TemplateDeclaration, TemplateDigest, TemplateDimensions, TemplateDocument, type TemplateDoorAnswer, type TemplateDoorRun, TemplateDrillDown, type TemplateFamilyDoor, TemplateField, TemplateFootprint, TemplateForm, type TemplateHostExtras, type TemplateInstallPlan, TemplateJob, type TemplateMadeKind, TemplateMergeBinding, TemplateNotification, type TemplatePlanAgent, type TemplatePlanBinding, type TemplatePlanDoor, type TemplatePlanExtraAgent, type TemplatePlanStep, TemplatePortal, TemplateRowAction, TemplateSpec, type TemplateSpecWithAttachments, TemplateStageRules, type TemplateStatus, TemplateTable, TemplateTryIt, type TemplateUpgradeAnswer, type TemplateUpgradeHint, type TemplateUpgradeRun, type TemplateVerdict, TemplateView, TemplateViewKind, TemplateWorkflow, type TrimResult, VIEW_SHAPE_FACTS, type ValidateOptions, type ViewsPart, agentCopyRequest, allTables, anyOfWhere, applyRepairPatches, assertTemplate, attachmentProblems, autofixDescribeSpec, automationHeld, blockTable, bookingArgs, bookingColumnsProblem, capabilitiesUsed, capabilityStatus, checklistSpec, choiceDisplayFormat, compileHostExtras, compileInstallPlan, dashboardBlocks, deferredRelationFields, deferredRelations, derivedFieldSpec, describeCheck, describeSpec, describeVocabulary, digestSpec, documentBody, domainsIn, drillDownDashboard, evalFormula, extrasProblems, fallbackView, foreignTextProblems, formArgs, formulaFieldSpec, formulaOrder, formulaRefs, foundationTokens, isSelfDeclaredField, isTimedField, lastResortTrim, meaningWords, mergeDescribeParts, normalizeForPhones, notificationParts, numberText, numberedStreet, packageDescribeResult, parseAt, parseFormula, parseNumeric, pathOfAt, peopleOf, phonesOutsideFictionalRange, planTables, portalArgs, relationFieldSpec, relationPatches, relativeHasTime, repairSlices, requiredCircleProblem, resolveDateToken, resolvePath, resolveRelativeDates, reusesOf, rowActionList, rowLevels, rowsFor, ruleBreak, runTemplateDoor, safeReuses, sameMeaning, selfDeclaredFieldSpec, sensitivityFloorOf, shellsPayload, stageFieldOf, stageRulesSpec, storeAggregate, storeFilterMatches, storeText, tableShellPayload, templateCard, templateDeclaration, templateText, templateUpgradeHint, timedFieldSpec, toUseCase, unwrap, upgradeTemplateInstall, useCaseProblemsOf, validateTemplate, viewMatches, viewSpec, zoneOffset };
|
package/dist/templates/index.js
CHANGED
|
@@ -901,21 +901,25 @@ var STORE_DOORS = [
|
|
|
901
901
|
{ name: "form_declare", args: "p_organization_id uuid, p_table_id uuid, p_title text, p_questions jsonb, p_presentation jsonb DEFAULT '{}'::jsonb, p_submission_cap integer DEFAULT NULL::integer, p_quarantine_rule_id uuid DEFAULT NULL::uuid, p_notify_rule_id uuid DEFAULT NULL::uuid, p_form_id uuid DEFAULT NULL::uuid, p_slug text DEFAULT NULL::text", returns: "uuid", security: "definer" },
|
|
902
902
|
{ name: "form_draft_read", args: "p_form_id uuid, p_secret text", returns: "TABLE(answers jsonb, saved_at timestamp with time zone, expires_at timestamp with time zone, state text, message text)", security: "definer" },
|
|
903
903
|
{ name: "form_draft_save", args: "p_form_id uuid, p_answers jsonb, p_secret text DEFAULT NULL::text, p_bucket text DEFAULT NULL::text, p_origin text DEFAULT NULL::text", returns: "TABLE(draft_secret text, saved_at timestamp with time zone, expires_at timestamp with time zone, state text, message text)", security: "definer" },
|
|
904
|
+
{ name: "form_knobs", args: "p_organization_id uuid", returns: "jsonb", security: "definer" },
|
|
904
905
|
{ name: "form_look_options", args: "p_organization_id uuid, p_presentation jsonb DEFAULT '{}'::jsonb", returns: "jsonb", security: "definer" },
|
|
905
906
|
{ name: "form_notify", args: "p_organization_id uuid, p_form_id uuid, p_record_id uuid, p_submission_id uuid", returns: "uuid", security: "invoker" },
|
|
906
907
|
{ name: "form_preview_asks", args: "p_organization_id uuid, p_table_id uuid, p_questions jsonb, p_values jsonb", returns: "TABLE(field_key text, asked boolean, decided boolean, said text)", security: "definer" },
|
|
907
908
|
{ name: "form_preview_route", args: "p_organization_id uuid, p_table_id uuid, p_questions jsonb, p_endings jsonb, p_values jsonb", returns: "jsonb", security: "definer" },
|
|
908
909
|
{ name: "form_public", args: "p_form_id uuid", returns: "TABLE(form_id uuid, organization_id uuid, table_id uuid, title text, presentation jsonb, fields jsonb, honeypot_key text, state text, message text)", security: "definer" },
|
|
909
910
|
{ name: "form_public_asks", args: "p_form_id uuid, p_values jsonb, p_secret text DEFAULT NULL::text, p_origin text DEFAULT NULL::text", returns: "TABLE(field_key text, asked boolean, decided boolean, said text)", security: "definer" },
|
|
911
|
+
{ name: "form_public_options", args: "p_form_id uuid", returns: "jsonb", security: "definer" },
|
|
910
912
|
{ name: "form_public_route", args: "p_form_id uuid, p_values jsonb", returns: "jsonb", security: "definer" },
|
|
911
913
|
{ name: "form_redirect_domains", args: "p_organization_id uuid", returns: "text[]", security: "invoker" },
|
|
912
914
|
{ name: "form_redirect_refusal", args: "p_organization_id uuid, p_url text", returns: "text", security: "invoker" },
|
|
915
|
+
{ name: "form_respondent_copy", args: "p_organization_id uuid, p_form_id uuid, p_record_id uuid, p_submission_id uuid", returns: "jsonb", security: "definer" },
|
|
913
916
|
{ name: "form_restore", args: "p_organization_id uuid, p_form_id uuid", returns: "jsonb", security: "definer" },
|
|
914
917
|
{ name: "form_results", args: "p_organization_id uuid, p_form_id uuid", returns: "jsonb", security: "definer" },
|
|
915
918
|
{ name: "form_slug", args: "p_organization_id uuid, p_title text, p_form_id uuid DEFAULT NULL::uuid", returns: "text", security: "invoker" },
|
|
916
919
|
{ name: "form_submit", args: "p_form_id uuid, p_origin text, p_payload jsonb, p_bucket text, p_honeypot text DEFAULT NULL::text, p_client_key text DEFAULT NULL::text", returns: "TABLE(submission_id uuid, record_id uuid, state text, message text)", security: "definer" },
|
|
917
920
|
{ name: "form_theme_options", args: "", returns: "jsonb", security: "invoker" },
|
|
918
921
|
{ name: "form_visit", args: "p_form_id uuid, p_visit text, p_event text, p_field text DEFAULT NULL::text", returns: "text", security: "definer" },
|
|
922
|
+
{ name: "form_visit_admit", args: "p_form_id uuid, p_bucket text", returns: "boolean", security: "definer" },
|
|
919
923
|
{ name: "forms", args: "p_organization_id uuid, p_table_id uuid DEFAULT NULL::uuid", returns: "TABLE(form_id uuid, table_id uuid, title text, slug text, published_at timestamp with time zone, closed_at timestamp with time zone, submission_cap integer, responses bigint, in_table bigint, held bigint, rejected bigint, state text, quarantine_rule_id uuid, notify_rule_id uuid, presentation jsonb)", security: "definer" },
|
|
920
924
|
{ name: "forms_archived", args: "p_organization_id uuid, p_table_id uuid DEFAULT NULL::uuid, p_limit integer DEFAULT 100", returns: "TABLE(form_id uuid, table_id uuid, table_name text, kind text, title text, slug text, archived_at timestamp with time zone, archived_by uuid, table_archived boolean, can_restore boolean)", security: "definer" },
|
|
921
925
|
{ name: "formula_compile_sql", args: "p_organization_id uuid, p_expr jsonb, p_values_sql text", returns: "text", security: "invoker" },
|
|
@@ -6545,13 +6549,13 @@ function viewHolds(v, tables) {
|
|
|
6545
6549
|
return typeof v.token === "string" && !!v.token && typeof v.name === "string" && !!v.name;
|
|
6546
6550
|
}
|
|
6547
6551
|
function fallbackView(t) {
|
|
6548
|
-
const
|
|
6552
|
+
const plural2 = typeof t.name === "string" ? t.name : labelOfKey(t.token);
|
|
6549
6553
|
const stage = t.fields.find((f) => STAGE_KEY.test(f.key) && CHOICE.includes(f.parityType));
|
|
6550
|
-
if (stage) return { token: `${t.token}_board`, name: `${
|
|
6554
|
+
if (stage) return { token: `${t.token}_board`, name: `${plural2} board`, table: t.token, kind: "kanban", groupBy: stage.key, isDefault: true };
|
|
6551
6555
|
if (t.fields.some((f) => f.key === "slot" && f.parityType === "datetime")) {
|
|
6552
|
-
return { token: `${t.token}_calendar`, name: `${
|
|
6556
|
+
return { token: `${t.token}_calendar`, name: `${plural2} calendar`, table: t.token, kind: "calendar", dateField: "slot", isDefault: true };
|
|
6553
6557
|
}
|
|
6554
|
-
return { token: `${t.token}_list`, name: `All ${
|
|
6558
|
+
return { token: `${t.token}_list`, name: `All ${plural2.toLowerCase()}`, table: t.token, kind: "grid", isDefault: true, sorts: [{ field: String(t.titleField), direction: "asc" }] };
|
|
6555
6559
|
}
|
|
6556
6560
|
function mergeViews(plan, part, tables) {
|
|
6557
6561
|
const given = Array.isArray(part?.views) ? part.views : [];
|
|
@@ -7211,6 +7215,64 @@ function describeVocabulary() {
|
|
|
7211
7215
|
title_field: "a table's titleField is the key of a plain text-like field of that same table (a name, a title) \u2014 never a link to another table, a formula or a timed date"
|
|
7212
7216
|
};
|
|
7213
7217
|
}
|
|
7218
|
+
|
|
7219
|
+
// src/templates/describe/safe-reuse.ts
|
|
7220
|
+
var norm2 = (s) => String(s ?? "").trim().toLowerCase().replace(/[\s_-]+/g, " ");
|
|
7221
|
+
var nameKey = (s) => norm2(s).replace(/ies$/, "y").replace(/s$/, "");
|
|
7222
|
+
var sameChoices = (a, b) => {
|
|
7223
|
+
const x = Array.isArray(a) ? a.map(String).sort() : [];
|
|
7224
|
+
const y = Array.isArray(b) ? b.map(String).sort() : [];
|
|
7225
|
+
return x.length === y.length && x.every((v, i) => v === y[i]);
|
|
7226
|
+
};
|
|
7227
|
+
function changeOf(declared, existing) {
|
|
7228
|
+
for (const f of declared) {
|
|
7229
|
+
const match = existing.fields.find((e) => e.key === f.key) ?? existing.fields.find((e) => norm2(e.label) === norm2(f.label));
|
|
7230
|
+
if (!match) return `adds the field "${f.label ?? f.key}"`;
|
|
7231
|
+
if (match.key !== f.key) return `renames "${match.label}"`;
|
|
7232
|
+
if (norm2(match.label) !== norm2(f.label)) return `renames "${match.label}"`;
|
|
7233
|
+
if (f.parityType && norm2(match.kind) !== norm2(f.parityType)) return `changes the kind of "${match.label}"`;
|
|
7234
|
+
if (match.choices || f.choices) {
|
|
7235
|
+
if (!sameChoices(match.choices, f.choices)) return `changes the choices of "${match.label}"`;
|
|
7236
|
+
}
|
|
7237
|
+
}
|
|
7238
|
+
return null;
|
|
7239
|
+
}
|
|
7240
|
+
function plural(s) {
|
|
7241
|
+
return /[^aeiou]y$/i.test(s) ? s.replace(/y$/i, "ies") : /s$/i.test(s) ? s : `${s}s`;
|
|
7242
|
+
}
|
|
7243
|
+
function safeReuses(spec, reuses, existingTables) {
|
|
7244
|
+
const byId = new Map(existingTables.map((t) => [t.id, t]));
|
|
7245
|
+
const taken = /* @__PURE__ */ new Set([...existingTables.map((t) => nameKey(t.name)), ...(spec.tables ?? []).map((t) => nameKey(t.name))]);
|
|
7246
|
+
const kept = [];
|
|
7247
|
+
const notes = [];
|
|
7248
|
+
const converted = [];
|
|
7249
|
+
const rename = /* @__PURE__ */ new Map();
|
|
7250
|
+
for (const r of reuses) {
|
|
7251
|
+
const existing = byId.get(r.existing_table_id);
|
|
7252
|
+
const table = (spec.tables ?? []).find((t2) => t2.token === r.token);
|
|
7253
|
+
if (!existing || !table) {
|
|
7254
|
+
kept.push(r);
|
|
7255
|
+
continue;
|
|
7256
|
+
}
|
|
7257
|
+
const why = changeOf(table.fields ?? [], existing);
|
|
7258
|
+
if (!why) {
|
|
7259
|
+
kept.push(r);
|
|
7260
|
+
continue;
|
|
7261
|
+
}
|
|
7262
|
+
const t = table;
|
|
7263
|
+
const candidates = [t.labelPlural, t.labelSingular && plural(t.labelSingular)].filter((c) => !!c);
|
|
7264
|
+
const free = candidates.find((c) => !taken.has(nameKey(c)));
|
|
7265
|
+
let name = free ?? `${existing.name} (new)`;
|
|
7266
|
+
for (let n = 2; taken.has(nameKey(name)); n++) name = `${existing.name} (new ${n})`;
|
|
7267
|
+
taken.add(nameKey(name));
|
|
7268
|
+
rename.set(r.token, { name, labelPlural: name });
|
|
7269
|
+
converted.push({ token: r.token, existingName: existing.name, newName: name, why });
|
|
7270
|
+
notes.push(`Built a new ${name} table instead of changing your existing ${existing.name}.`);
|
|
7271
|
+
}
|
|
7272
|
+
if (!rename.size) return { spec, reuses: kept, notes, converted };
|
|
7273
|
+
const out = { ...spec, tables: spec.tables.map((t) => rename.has(t.token) ? { ...t, ...rename.get(t.token) } : t) };
|
|
7274
|
+
return { spec: out, reuses: kept, notes, converted };
|
|
7275
|
+
}
|
|
7214
7276
|
export {
|
|
7215
7277
|
BAD_OUTCOME,
|
|
7216
7278
|
BOOKING_AVAILABILITY_FACTS,
|
|
@@ -7326,6 +7388,7 @@ export {
|
|
|
7326
7388
|
rowsFor,
|
|
7327
7389
|
ruleBreak,
|
|
7328
7390
|
runTemplateDoor,
|
|
7391
|
+
safeReuses,
|
|
7329
7392
|
sameMeaning,
|
|
7330
7393
|
selfDeclaredFieldSpec,
|
|
7331
7394
|
sensitivityFloorOf,
|