@ai-matrx/records 0.3.3 → 0.5.1
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 +68 -18
- package/dist/core/index.cjs +53 -0
- package/dist/core/index.cjs.map +1 -1
- package/dist/core/index.d.cts +35 -3
- package/dist/core/index.d.ts +35 -3
- package/dist/core/index.js +53 -0
- package/dist/core/index.js.map +1 -1
- package/dist/index.cjs +2 -0
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +23 -1
- package/dist/index.d.ts +23 -1
- package/dist/index.js +2 -0
- package/dist/index.js.map +1 -1
- package/dist/react/index.cjs +16 -0
- package/dist/react/index.cjs.map +1 -1
- package/dist/react/index.d.cts +23 -1
- package/dist/react/index.d.ts +23 -1
- package/dist/react/index.js +16 -0
- package/dist/react/index.js.map +1 -1
- package/package.json +1 -1
package/dist/core/index.d.cts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { Timestamp, Uuid, RelationCoordinate, RecordsConfig, RecordDocument, RecordsResult, RecordRead, ReadRow, Table, Field, StoredRecord, TableCapacity, AggregateMeasure, AggregateBucket, AggregateRow, Subscription, DocToken, DocUnresolvedToken, DocTemplateRow, DocRenderRow, DocSignatureRow, RecordRevision, ReadValue, AnonTokenBinding, WorkState, WorkGraph, WorkInstantiation, WorkTurn, WorkAssignmentField, WorkSlotHold, ExternalPrincipalCard, PublishBinding, ResolvedPublishBinding, FieldProposal, TableProposal, RecordsError, WriteConflict, PgError, StaleWriteDetail, PredictedRefusal } from '../index.cjs';
|
|
2
|
-
export { ABSENCE_REASONS, ACTOR_VOCABULARY, AbsenceReason, Actor, AggregateOperation, COMPUTE_ON, CONTEXT_POLICIES, ComputeOn, ContextPolicy, DELIVERIES, Delivery, DocSignatureCheck, ENTITY_TOKENS, EntityToken, FIELD_SENSITIVITIES, FIELD_SOURCES, FRESHNESS, FieldBehavior, FieldRule, FieldSensitivity, FieldSource, ForbiddenEnvelopeWord, Freshness, HiddenFieldNotice, Home, KERNEL_TABLES, KernelTableName, MERGE_FIELD_MODIFIERS, MERGE_FIELD_SEMANTIC_TYPES, MERGE_FIELD_SOURCES, MergeField, MergeFieldModifier, MergeFieldProvenance, MergeFieldResolution, MergeFieldSemanticType, MergeFieldSource, MergeFieldTransform, MissingBehavior, ON_DELETE, OVERRIDE_POLICIES, OnDelete, OverridePolicy, PARITY_FIELD_TYPES, PER_VALUE_ACCESS_WORDS, ParityFieldType, ParityFieldTypeDescriptor, PerValueAccessWord, ProvenancePointer, RELATION_BINDINGS, RELATION_CARDINALITIES, RELATION_FLAVORS, RETIRED_ACTOR_WORDS, RULE_NODE_KINDS, RULE_USES, RecordsActor,
|
|
1
|
+
import { Timestamp, Uuid, RelationCoordinate, RecordsConfig, RecordDocument, RecordsResult, RecordRead, ReadRow, Table, Field, StoredRecord, TableCapacity, AggregateMeasure, AggregateBucket, AggregateRow, Subscription, DocToken, DocUnresolvedToken, DocTemplateRow, DocRenderRow, DocSignatureRow, RecordRevision, ReadValue, AnonTokenBinding, WorkState, WorkGraph, WorkInstantiation, WorkTurn, WorkAssignmentField, WorkSlotHold, ExternalPrincipalCard, PublishBinding, ResolvedPublishBinding, FieldProposal, TableProposal, RecordsError, WriteConflict, PgError, RecordsDataSource, StaleWriteDetail, PredictedRefusal } from '../index.cjs';
|
|
2
|
+
export { ABSENCE_REASONS, ACTOR_VOCABULARY, AbsenceReason, Actor, AggregateOperation, COMPUTE_ON, CONTEXT_POLICIES, ComputeOn, ContextPolicy, DELIVERIES, Delivery, DocSignatureCheck, ENTITY_TOKENS, EntityToken, FIELD_SENSITIVITIES, FIELD_SOURCES, FRESHNESS, FieldBehavior, FieldRule, FieldSensitivity, FieldSource, ForbiddenEnvelopeWord, Freshness, HiddenFieldNotice, Home, KERNEL_TABLES, KernelTableName, MERGE_FIELD_MODIFIERS, MERGE_FIELD_SEMANTIC_TYPES, MERGE_FIELD_SOURCES, MergeField, MergeFieldModifier, MergeFieldProvenance, MergeFieldResolution, MergeFieldSemanticType, MergeFieldSource, MergeFieldTransform, MissingBehavior, ON_DELETE, OVERRIDE_POLICIES, OnDelete, OverridePolicy, PARITY_FIELD_TYPES, PER_VALUE_ACCESS_WORDS, ParityFieldType, ParityFieldTypeDescriptor, PerValueAccessWord, ProvenancePointer, RELATION_BINDINGS, RELATION_CARDINALITIES, RELATION_FLAVORS, RETIRED_ACTOR_WORDS, RULE_NODE_KINDS, RULE_USES, RecordsActor, RecordsErrorCode, RecordsErrorSink, RecordsFilter, RecordsRealtimePort, RecordsResolverPort, RecordsResponse, RecordsTableQuery, RegisteredTable, Relation, RelationBinding, RelationCardinality, RelationCarries, RelationFlavor, RelationProperties, RelationTarget, ResolutionTriple, RetiredActorWord, Rule, RuleAnswer, RuleExpression, RuleNodeKind, RuleUse, STORAGE_MODES, STORE_DOORS, STORE_KNOBS, STORE_REFUSAL_CODES, StorageMode, StoreDoorName, StoreRefusalCode, SubscriptionBlock, SubscriptionCadence, TABLE_DISPLAYS, TABLE_ORIGINS, TABLE_TYPES, TableDisplay, TableOrigin, TableType, VALUE_ALTERNATE_KEYS, VALUE_ENVELOPE_KEYS, ValueAlternate, ValueAlternateKey, ValueEnvelope, ValueEnvelopeKey, ValueSource, WorkTemplateNode, WorkTemplateRelation, err, isRecordsErr, measureKey, ok } from '../index.cjs';
|
|
3
3
|
|
|
4
4
|
/**
|
|
5
5
|
* DOOR-8. As-of on EITHER clock, and they are different questions:
|
|
@@ -574,6 +574,38 @@ declare function doorCensus(): {
|
|
|
574
574
|
absent: string[];
|
|
575
575
|
};
|
|
576
576
|
|
|
577
|
+
/**
|
|
578
|
+
* The structural shape of the supabase client this adapter needs. Deliberately
|
|
579
|
+
* NOT `SupabaseClient<Database>`: a generated `Database` type makes
|
|
580
|
+
* `schema().from().select()` enormous, and a host app that passed its typed
|
|
581
|
+
* client in got `TS2589: Type instantiation is excessively deep and possibly
|
|
582
|
+
* infinite` in its own build (matrx-frontend, 2026-09-18, on all three campaign
|
|
583
|
+
* routes at once). The cast lives here, once, where it is explained.
|
|
584
|
+
*/
|
|
585
|
+
interface SupabaseLike {
|
|
586
|
+
schema(name: string): {
|
|
587
|
+
rpc(fn: string, args?: Record<string, unknown>): PromiseLike<{
|
|
588
|
+
data: unknown;
|
|
589
|
+
error: PgError | null;
|
|
590
|
+
}>;
|
|
591
|
+
from(table: string): unknown;
|
|
592
|
+
};
|
|
593
|
+
}
|
|
594
|
+
/**
|
|
595
|
+
* Bind a supabase-js client (or anything with the same `schema(name).rpc()`
|
|
596
|
+
* shape) as this package's data seam.
|
|
597
|
+
*
|
|
598
|
+
* Two things never happen here, both of them loudly:
|
|
599
|
+
*
|
|
600
|
+
* - A call with NO schema is never sent. It is refused by name, because
|
|
601
|
+
* sending it would reach `public` and get the store's PGRST202 several
|
|
602
|
+
* layers away from the mistake.
|
|
603
|
+
* - A client with no `.schema()` is never used. supabase-js has had it since
|
|
604
|
+
* v2.0; a host that binds something else is told exactly what is missing
|
|
605
|
+
* instead of throwing `undefined is not a function` inside a render.
|
|
606
|
+
*/
|
|
607
|
+
declare function supabaseDataSource(client: object): RecordsDataSource;
|
|
608
|
+
|
|
577
609
|
/** The SQLSTATEs this package claims to understand. Exported for the guard. */
|
|
578
610
|
declare const MAPPED_SQLSTATES: string[];
|
|
579
611
|
/** Map a PostgREST/supabase-js failure into the package's refusal shape. */
|
|
@@ -649,4 +681,4 @@ declare function parseCsv(text: string): string[][];
|
|
|
649
681
|
declare function importCsv(fields: Field[], text: string): ParsedImport;
|
|
650
682
|
declare function importXlsx(fields: Field[], bytes: ArrayBuffer | Uint8Array): Promise<ParsedImport>;
|
|
651
683
|
|
|
652
|
-
export { AggregateBucket, AggregateMeasure, AggregateRow, AnonTokenBinding, type AsOf, DEFAULT_DOCUMENT_MAX_BYTES, DEFAULT_PAGE_SIZE, DEFAULT_VALUE_MAX_BYTES, DOORS, DocRenderRow, DocSignatureRow, DocTemplateRow, DocToken, DocUnresolvedToken, type DoorKey, type ExportRow, ExternalPrincipalCard, Field, FieldProposal, MAPPED_SQLSTATES, type MirrorLimits, type ParsedImport, PgError, PredictedRefusal, type PromotedPredicate, PublishBinding, type QueryPlan, ReadRow, ReadValue, RecordDocument, type RecordQuery, RecordRead, RecordRevision, type RecordsClient, RecordsConfig, RecordsError, RecordsResult, RelationCoordinate, ResolvedPublishBinding, StaleWriteDetail, StoredRecord, Subscription, Table, TableCapacity, TableProposal, Timestamp, Uuid, WorkAssignmentField, WorkGraph, WorkInstantiation, WorkSlotHold, WorkState, WorkTurn, WriteConflict, asWriteConflict, cellText, createRecordsClient, doorAbsent, doorCensus, doorExists, exportCsv, exportXlsx, importCsv, importXlsx, intersectIds, mapPgError, parseCsv, planQuery, predictEnvelopeRefusal, predictSizeRefusal, predictValueRefusals, predictWriteRefusals, staleWriteDetail, toAoa };
|
|
684
|
+
export { AggregateBucket, AggregateMeasure, AggregateRow, AnonTokenBinding, type AsOf, DEFAULT_DOCUMENT_MAX_BYTES, DEFAULT_PAGE_SIZE, DEFAULT_VALUE_MAX_BYTES, DOORS, DocRenderRow, DocSignatureRow, DocTemplateRow, DocToken, DocUnresolvedToken, type DoorKey, type ExportRow, ExternalPrincipalCard, Field, FieldProposal, MAPPED_SQLSTATES, type MirrorLimits, type ParsedImport, PgError, PredictedRefusal, type PromotedPredicate, PublishBinding, type QueryPlan, ReadRow, ReadValue, RecordDocument, type RecordQuery, RecordRead, RecordRevision, type RecordsClient, RecordsConfig, RecordsDataSource, RecordsError, RecordsResult, RelationCoordinate, ResolvedPublishBinding, StaleWriteDetail, StoredRecord, Subscription, type SupabaseLike, Table, TableCapacity, TableProposal, Timestamp, Uuid, WorkAssignmentField, WorkGraph, WorkInstantiation, WorkSlotHold, WorkState, WorkTurn, WriteConflict, asWriteConflict, cellText, createRecordsClient, doorAbsent, doorCensus, doorExists, exportCsv, exportXlsx, importCsv, importXlsx, intersectIds, mapPgError, parseCsv, planQuery, predictEnvelopeRefusal, predictSizeRefusal, predictValueRefusals, predictWriteRefusals, staleWriteDetail, supabaseDataSource, toAoa };
|
package/dist/core/index.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { Timestamp, Uuid, RelationCoordinate, RecordsConfig, RecordDocument, RecordsResult, RecordRead, ReadRow, Table, Field, StoredRecord, TableCapacity, AggregateMeasure, AggregateBucket, AggregateRow, Subscription, DocToken, DocUnresolvedToken, DocTemplateRow, DocRenderRow, DocSignatureRow, RecordRevision, ReadValue, AnonTokenBinding, WorkState, WorkGraph, WorkInstantiation, WorkTurn, WorkAssignmentField, WorkSlotHold, ExternalPrincipalCard, PublishBinding, ResolvedPublishBinding, FieldProposal, TableProposal, RecordsError, WriteConflict, PgError, StaleWriteDetail, PredictedRefusal } from '../index.js';
|
|
2
|
-
export { ABSENCE_REASONS, ACTOR_VOCABULARY, AbsenceReason, Actor, AggregateOperation, COMPUTE_ON, CONTEXT_POLICIES, ComputeOn, ContextPolicy, DELIVERIES, Delivery, DocSignatureCheck, ENTITY_TOKENS, EntityToken, FIELD_SENSITIVITIES, FIELD_SOURCES, FRESHNESS, FieldBehavior, FieldRule, FieldSensitivity, FieldSource, ForbiddenEnvelopeWord, Freshness, HiddenFieldNotice, Home, KERNEL_TABLES, KernelTableName, MERGE_FIELD_MODIFIERS, MERGE_FIELD_SEMANTIC_TYPES, MERGE_FIELD_SOURCES, MergeField, MergeFieldModifier, MergeFieldProvenance, MergeFieldResolution, MergeFieldSemanticType, MergeFieldSource, MergeFieldTransform, MissingBehavior, ON_DELETE, OVERRIDE_POLICIES, OnDelete, OverridePolicy, PARITY_FIELD_TYPES, PER_VALUE_ACCESS_WORDS, ParityFieldType, ParityFieldTypeDescriptor, PerValueAccessWord, ProvenancePointer, RELATION_BINDINGS, RELATION_CARDINALITIES, RELATION_FLAVORS, RETIRED_ACTOR_WORDS, RULE_NODE_KINDS, RULE_USES, RecordsActor,
|
|
1
|
+
import { Timestamp, Uuid, RelationCoordinate, RecordsConfig, RecordDocument, RecordsResult, RecordRead, ReadRow, Table, Field, StoredRecord, TableCapacity, AggregateMeasure, AggregateBucket, AggregateRow, Subscription, DocToken, DocUnresolvedToken, DocTemplateRow, DocRenderRow, DocSignatureRow, RecordRevision, ReadValue, AnonTokenBinding, WorkState, WorkGraph, WorkInstantiation, WorkTurn, WorkAssignmentField, WorkSlotHold, ExternalPrincipalCard, PublishBinding, ResolvedPublishBinding, FieldProposal, TableProposal, RecordsError, WriteConflict, PgError, RecordsDataSource, StaleWriteDetail, PredictedRefusal } from '../index.js';
|
|
2
|
+
export { ABSENCE_REASONS, ACTOR_VOCABULARY, AbsenceReason, Actor, AggregateOperation, COMPUTE_ON, CONTEXT_POLICIES, ComputeOn, ContextPolicy, DELIVERIES, Delivery, DocSignatureCheck, ENTITY_TOKENS, EntityToken, FIELD_SENSITIVITIES, FIELD_SOURCES, FRESHNESS, FieldBehavior, FieldRule, FieldSensitivity, FieldSource, ForbiddenEnvelopeWord, Freshness, HiddenFieldNotice, Home, KERNEL_TABLES, KernelTableName, MERGE_FIELD_MODIFIERS, MERGE_FIELD_SEMANTIC_TYPES, MERGE_FIELD_SOURCES, MergeField, MergeFieldModifier, MergeFieldProvenance, MergeFieldResolution, MergeFieldSemanticType, MergeFieldSource, MergeFieldTransform, MissingBehavior, ON_DELETE, OVERRIDE_POLICIES, OnDelete, OverridePolicy, PARITY_FIELD_TYPES, PER_VALUE_ACCESS_WORDS, ParityFieldType, ParityFieldTypeDescriptor, PerValueAccessWord, ProvenancePointer, RELATION_BINDINGS, RELATION_CARDINALITIES, RELATION_FLAVORS, RETIRED_ACTOR_WORDS, RULE_NODE_KINDS, RULE_USES, RecordsActor, RecordsErrorCode, RecordsErrorSink, RecordsFilter, RecordsRealtimePort, RecordsResolverPort, RecordsResponse, RecordsTableQuery, RegisteredTable, Relation, RelationBinding, RelationCardinality, RelationCarries, RelationFlavor, RelationProperties, RelationTarget, ResolutionTriple, RetiredActorWord, Rule, RuleAnswer, RuleExpression, RuleNodeKind, RuleUse, STORAGE_MODES, STORE_DOORS, STORE_KNOBS, STORE_REFUSAL_CODES, StorageMode, StoreDoorName, StoreRefusalCode, SubscriptionBlock, SubscriptionCadence, TABLE_DISPLAYS, TABLE_ORIGINS, TABLE_TYPES, TableDisplay, TableOrigin, TableType, VALUE_ALTERNATE_KEYS, VALUE_ENVELOPE_KEYS, ValueAlternate, ValueAlternateKey, ValueEnvelope, ValueEnvelopeKey, ValueSource, WorkTemplateNode, WorkTemplateRelation, err, isRecordsErr, measureKey, ok } from '../index.js';
|
|
3
3
|
|
|
4
4
|
/**
|
|
5
5
|
* DOOR-8. As-of on EITHER clock, and they are different questions:
|
|
@@ -574,6 +574,38 @@ declare function doorCensus(): {
|
|
|
574
574
|
absent: string[];
|
|
575
575
|
};
|
|
576
576
|
|
|
577
|
+
/**
|
|
578
|
+
* The structural shape of the supabase client this adapter needs. Deliberately
|
|
579
|
+
* NOT `SupabaseClient<Database>`: a generated `Database` type makes
|
|
580
|
+
* `schema().from().select()` enormous, and a host app that passed its typed
|
|
581
|
+
* client in got `TS2589: Type instantiation is excessively deep and possibly
|
|
582
|
+
* infinite` in its own build (matrx-frontend, 2026-09-18, on all three campaign
|
|
583
|
+
* routes at once). The cast lives here, once, where it is explained.
|
|
584
|
+
*/
|
|
585
|
+
interface SupabaseLike {
|
|
586
|
+
schema(name: string): {
|
|
587
|
+
rpc(fn: string, args?: Record<string, unknown>): PromiseLike<{
|
|
588
|
+
data: unknown;
|
|
589
|
+
error: PgError | null;
|
|
590
|
+
}>;
|
|
591
|
+
from(table: string): unknown;
|
|
592
|
+
};
|
|
593
|
+
}
|
|
594
|
+
/**
|
|
595
|
+
* Bind a supabase-js client (or anything with the same `schema(name).rpc()`
|
|
596
|
+
* shape) as this package's data seam.
|
|
597
|
+
*
|
|
598
|
+
* Two things never happen here, both of them loudly:
|
|
599
|
+
*
|
|
600
|
+
* - A call with NO schema is never sent. It is refused by name, because
|
|
601
|
+
* sending it would reach `public` and get the store's PGRST202 several
|
|
602
|
+
* layers away from the mistake.
|
|
603
|
+
* - A client with no `.schema()` is never used. supabase-js has had it since
|
|
604
|
+
* v2.0; a host that binds something else is told exactly what is missing
|
|
605
|
+
* instead of throwing `undefined is not a function` inside a render.
|
|
606
|
+
*/
|
|
607
|
+
declare function supabaseDataSource(client: object): RecordsDataSource;
|
|
608
|
+
|
|
577
609
|
/** The SQLSTATEs this package claims to understand. Exported for the guard. */
|
|
578
610
|
declare const MAPPED_SQLSTATES: string[];
|
|
579
611
|
/** Map a PostgREST/supabase-js failure into the package's refusal shape. */
|
|
@@ -649,4 +681,4 @@ declare function parseCsv(text: string): string[][];
|
|
|
649
681
|
declare function importCsv(fields: Field[], text: string): ParsedImport;
|
|
650
682
|
declare function importXlsx(fields: Field[], bytes: ArrayBuffer | Uint8Array): Promise<ParsedImport>;
|
|
651
683
|
|
|
652
|
-
export { AggregateBucket, AggregateMeasure, AggregateRow, AnonTokenBinding, type AsOf, DEFAULT_DOCUMENT_MAX_BYTES, DEFAULT_PAGE_SIZE, DEFAULT_VALUE_MAX_BYTES, DOORS, DocRenderRow, DocSignatureRow, DocTemplateRow, DocToken, DocUnresolvedToken, type DoorKey, type ExportRow, ExternalPrincipalCard, Field, FieldProposal, MAPPED_SQLSTATES, type MirrorLimits, type ParsedImport, PgError, PredictedRefusal, type PromotedPredicate, PublishBinding, type QueryPlan, ReadRow, ReadValue, RecordDocument, type RecordQuery, RecordRead, RecordRevision, type RecordsClient, RecordsConfig, RecordsError, RecordsResult, RelationCoordinate, ResolvedPublishBinding, StaleWriteDetail, StoredRecord, Subscription, Table, TableCapacity, TableProposal, Timestamp, Uuid, WorkAssignmentField, WorkGraph, WorkInstantiation, WorkSlotHold, WorkState, WorkTurn, WriteConflict, asWriteConflict, cellText, createRecordsClient, doorAbsent, doorCensus, doorExists, exportCsv, exportXlsx, importCsv, importXlsx, intersectIds, mapPgError, parseCsv, planQuery, predictEnvelopeRefusal, predictSizeRefusal, predictValueRefusals, predictWriteRefusals, staleWriteDetail, toAoa };
|
|
684
|
+
export { AggregateBucket, AggregateMeasure, AggregateRow, AnonTokenBinding, type AsOf, DEFAULT_DOCUMENT_MAX_BYTES, DEFAULT_PAGE_SIZE, DEFAULT_VALUE_MAX_BYTES, DOORS, DocRenderRow, DocSignatureRow, DocTemplateRow, DocToken, DocUnresolvedToken, type DoorKey, type ExportRow, ExternalPrincipalCard, Field, FieldProposal, MAPPED_SQLSTATES, type MirrorLimits, type ParsedImport, PgError, PredictedRefusal, type PromotedPredicate, PublishBinding, type QueryPlan, ReadRow, ReadValue, RecordDocument, type RecordQuery, RecordRead, RecordRevision, type RecordsClient, RecordsConfig, RecordsDataSource, RecordsError, RecordsResult, RelationCoordinate, ResolvedPublishBinding, StaleWriteDetail, StoredRecord, Subscription, type SupabaseLike, Table, TableCapacity, TableProposal, Timestamp, Uuid, WorkAssignmentField, WorkGraph, WorkInstantiation, WorkSlotHold, WorkState, WorkTurn, WriteConflict, asWriteConflict, cellText, createRecordsClient, doorAbsent, doorCensus, doorExists, exportCsv, exportXlsx, importCsv, importXlsx, intersectIds, mapPgError, parseCsv, planQuery, predictEnvelopeRefusal, predictSizeRefusal, predictValueRefusals, predictWriteRefusals, staleWriteDetail, supabaseDataSource, toAoa };
|
package/dist/core/index.js
CHANGED
|
@@ -185,6 +185,8 @@ var STORE_DOORS = [
|
|
|
185
185
|
{ name: "doc_unresolved_tokens", args: "p_organization_id uuid, p_table_id uuid, p_body text", returns: "TABLE(raw text, field_id uuid, why text)", security: "invoker" },
|
|
186
186
|
{ name: "doors_not_deciding_the_caller", args: "", returns: "TABLE(function_name text, identity_args text)", security: "invoker" },
|
|
187
187
|
{ name: "doors_not_deciding_the_record", args: "", returns: "TABLE(function_name text, identity_args text, why text)", security: "invoker" },
|
|
188
|
+
{ name: "doors_not_on_one_ladder", args: "", returns: "TABLE(function_name text, identity_args text, why text)", security: "invoker" },
|
|
189
|
+
{ name: "effective_level", args: "p_user_id uuid, p_organization_id uuid, p_id uuid, p_type text DEFAULT 'record'::text", returns: "permission_level", security: "definer" },
|
|
188
190
|
{ name: "export_records", args: "p_organization_id uuid, p_table_id uuid, p_limit integer DEFAULT 1000", returns: "TABLE(id uuid, document jsonb)", security: "invoker" },
|
|
189
191
|
{ name: "external_foreign_table_findings", args: "", returns: "SETOF text", security: "definer" },
|
|
190
192
|
{ name: "external_history_event", args: "p_organization_id uuid, p_link_id uuid, p_operation text", returns: "bigint", security: "definer" },
|
|
@@ -1616,6 +1618,13 @@ var BY_SQLSTATE = {
|
|
|
1616
1618
|
"23514": "refused_by_rule",
|
|
1617
1619
|
"22004": "invalid_argument",
|
|
1618
1620
|
"22023": "invalid_argument",
|
|
1621
|
+
// 22P02 — a value does not fit the type the store holds for it. The class is
|
|
1622
|
+
// real and was hit live: an organization whose copy of a package table grew
|
|
1623
|
+
// `status` as a uuid-valued Field was sent the text "open", and the store
|
|
1624
|
+
// answered `invalid input syntax for type uuid: "open"`. It is the CALL that
|
|
1625
|
+
// is wrong for the shape the store holds, which is what `invalid_argument`
|
|
1626
|
+
// already means — the store's own sentence names the value and the type.
|
|
1627
|
+
"22P02": "invalid_argument",
|
|
1619
1628
|
"02000": "not_found",
|
|
1620
1629
|
"23503": "missing_reference",
|
|
1621
1630
|
"23505": "already_exists",
|
|
@@ -1627,6 +1636,13 @@ var BY_SQLSTATE = {
|
|
|
1627
1636
|
// they just lost access to. It is retryable on a fresher connection, which is
|
|
1628
1637
|
// a different instruction from every other refusal here.
|
|
1629
1638
|
"40001": "stale_read",
|
|
1639
|
+
// 57014 — the store cancelled the statement at its own timeout. Like
|
|
1640
|
+
// `stale_read` and unlike every other refusal here, the call was never
|
|
1641
|
+
// refused on its merits: the same call on a smaller page, or once the
|
|
1642
|
+
// organization's kernel is not being rewritten, can succeed. It gets its own
|
|
1643
|
+
// code so a screen can offer "try again" honestly instead of showing a
|
|
1644
|
+
// failure sentence the caller cannot act on.
|
|
1645
|
+
"57014": "timed_out",
|
|
1630
1646
|
// PostgREST's own two: the store is not being SERVED, which is a different
|
|
1631
1647
|
// thing from the store refusing. `custom` absent from `pgrst.db_schemas`, or
|
|
1632
1648
|
// the grants not copied, land here.
|
|
@@ -2479,6 +2495,42 @@ function asWriteConflict(error, recordId) {
|
|
|
2479
2495
|
};
|
|
2480
2496
|
}
|
|
2481
2497
|
|
|
2498
|
+
// src/core/supabase.ts
|
|
2499
|
+
function refuse(code, message, hint) {
|
|
2500
|
+
return { data: null, error: { code, message, hint, details: "" } };
|
|
2501
|
+
}
|
|
2502
|
+
function supabaseDataSource(client) {
|
|
2503
|
+
const supabase = client;
|
|
2504
|
+
const hasSchema = typeof supabase.schema === "function";
|
|
2505
|
+
return {
|
|
2506
|
+
rpc(fn, args, options) {
|
|
2507
|
+
if (!hasSchema) {
|
|
2508
|
+
return Promise.resolve(
|
|
2509
|
+
refuse(
|
|
2510
|
+
"data_source_unbound",
|
|
2511
|
+
`The records client was given something that is not a supabase client: it has no schema() method, so the door ${fn} cannot be called in the schema it lives in.`,
|
|
2512
|
+
"Pass a supabase-js v2 client (createClient(...)) to supabaseDataSource()."
|
|
2513
|
+
)
|
|
2514
|
+
);
|
|
2515
|
+
}
|
|
2516
|
+
const name = options?.schema;
|
|
2517
|
+
if (!name) {
|
|
2518
|
+
return Promise.resolve(
|
|
2519
|
+
refuse(
|
|
2520
|
+
"schema_unsaid",
|
|
2521
|
+
`The door ${fn} was called without saying which schema it lives in. Every door of this store is custom.${fn} and every trust door is iam.${fn}; an unqualified call reaches PostgREST's default profile (public) and is refused there.`,
|
|
2522
|
+
"This is a bug in the caller, not in your data: /core says the schema on every call."
|
|
2523
|
+
)
|
|
2524
|
+
);
|
|
2525
|
+
}
|
|
2526
|
+
return supabase.schema(name).rpc(fn, args);
|
|
2527
|
+
},
|
|
2528
|
+
schema(name) {
|
|
2529
|
+
return supabase.schema(name);
|
|
2530
|
+
}
|
|
2531
|
+
};
|
|
2532
|
+
}
|
|
2533
|
+
|
|
2482
2534
|
// src/core/validation.ts
|
|
2483
2535
|
var DEFAULT_VALUE_MAX_BYTES = 1e5;
|
|
2484
2536
|
var DEFAULT_DOCUMENT_MAX_BYTES = 1048576;
|
|
@@ -2980,6 +3032,7 @@ export {
|
|
|
2980
3032
|
predictValueRefusals,
|
|
2981
3033
|
predictWriteRefusals,
|
|
2982
3034
|
staleWriteDetail,
|
|
3035
|
+
supabaseDataSource,
|
|
2983
3036
|
toAoa
|
|
2984
3037
|
};
|
|
2985
3038
|
//# sourceMappingURL=index.js.map
|