@ai-matrx/records 0.92.1 → 0.93.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 +43 -0
- package/README.md +4 -4
- package/dist/{client-Dzd8gtAo.d.ts → client-DsPuWFp0.d.ts} +8 -8
- package/dist/{client-Cn3odIIB.d.cts → client-EyD3rS0T.d.cts} +8 -8
- package/dist/core/index.cjs +101 -32
- package/dist/core/index.cjs.map +1 -1
- package/dist/core/index.d.cts +16 -15
- package/dist/core/index.d.ts +16 -15
- package/dist/core/index.js +101 -32
- package/dist/core/index.js.map +1 -1
- package/dist/data/index.cjs +46 -24
- package/dist/data/index.cjs.map +1 -1
- package/dist/data/index.d.cts +11 -11
- package/dist/data/index.d.ts +11 -11
- package/dist/data/index.js +46 -24
- package/dist/data/index.js.map +1 -1
- package/dist/{declareTable-CrL6AZKB.d.cts → declareTable-Bkk_Ewib.d.cts} +4 -4
- package/dist/{declareTable-ZRW5EsTQ.d.ts → declareTable-kL5qZoTe.d.ts} +4 -4
- package/dist/entity/index.cjs +43 -29
- package/dist/entity/index.cjs.map +1 -1
- package/dist/entity/index.d.cts +7 -6
- package/dist/entity/index.d.ts +7 -6
- package/dist/entity/index.js +43 -29
- package/dist/entity/index.js.map +1 -1
- package/dist/entity/react.cjs +43 -29
- package/dist/entity/react.cjs.map +1 -1
- package/dist/entity/react.js +43 -29
- package/dist/entity/react.js.map +1 -1
- package/dist/{field-CCY1rG9l.d.cts → field-6rwt4ejZ.d.cts} +1 -1
- package/dist/{field-enufS5ry.d.ts → field-B-WaVZnS.d.ts} +1 -1
- package/dist/forms/index.d.cts +3 -3
- package/dist/forms/index.d.ts +3 -3
- package/dist/index.cjs +92 -25
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +13 -33
- package/dist/index.d.ts +13 -33
- package/dist/index.js +92 -25
- package/dist/index.js.map +1 -1
- package/dist/memory/index.d.cts +7 -7
- package/dist/memory/index.d.ts +7 -7
- package/dist/objectOrganization-BII_K3Gm.d.ts +45 -0
- package/dist/objectOrganization-DfjDQtDb.d.cts +45 -0
- package/dist/{port-C54ykAOv.d.ts → port--acgmxh5.d.ts} +5 -2
- package/dist/{port-Drioh9al.d.cts → port-Cx76dq-X.d.cts} +5 -2
- package/dist/{portal-DRdmZ-xv.d.cts → portal-9sRr6cpG.d.cts} +1 -1
- package/dist/{portal-or_f7BkT.d.ts → portal-BDAqsGkg.d.ts} +1 -1
- package/dist/{ports-s0D2jvqn.d.cts → ports-9BQ3zo2y.d.cts} +108 -2
- package/dist/{ports-BeOgjwYl.d.ts → ports-DYWE1ENo.d.ts} +108 -2
- package/dist/react/index.cjs +101 -32
- package/dist/react/index.cjs.map +1 -1
- package/dist/react/index.d.cts +1463 -1363
- package/dist/react/index.d.ts +1463 -1363
- package/dist/react/index.js +101 -32
- package/dist/react/index.js.map +1 -1
- package/dist/realtime/index.cjs +43 -13
- package/dist/realtime/index.cjs.map +1 -1
- package/dist/realtime/index.d.cts +9 -3
- package/dist/realtime/index.d.ts +9 -3
- package/dist/realtime/index.js +43 -13
- package/dist/realtime/index.js.map +1 -1
- package/dist/{record-BwCf9wKW.d.cts → record-DmmeuUrC.d.cts} +1 -1
- package/dist/{record-BwCf9wKW.d.ts → record-DmmeuUrC.d.ts} +1 -1
- package/dist/{relation-eLMgv_dV.d.ts → relation-Op1M67le.d.ts} +2 -2
- package/dist/{relation-8vAWCa67.d.cts → relation-qrb2NbHf.d.cts} +2 -2
- package/dist/{rule-wHI5B0Ka.d.cts → rule-CeHg1sy1.d.cts} +1 -1
- package/dist/{rule-D9yNiorf.d.ts → rule-tN2lxvJ1.d.ts} +1 -1
- package/dist/search/index.d.cts +1 -1
- package/dist/search/index.d.ts +1 -1
- package/dist/setup/index.cjs +117 -42
- package/dist/setup/index.cjs.map +1 -1
- package/dist/setup/index.d.cts +25 -11
- package/dist/setup/index.d.ts +25 -11
- package/dist/setup/index.js +117 -42
- package/dist/setup/index.js.map +1 -1
- package/dist/{subscription-CdoI-UaB.d.cts → subscription-Drbxn-9Z.d.cts} +3 -3
- package/dist/{subscription-BynsG1K6.d.ts → subscription-hdTaRrfK.d.ts} +3 -3
- package/dist/{table-kind-i3lZJa3f.d.ts → table-kind-BZkvzBgc.d.ts} +4 -29
- package/dist/{table-kind-DzctQ7dO.d.cts → table-kind-C-hZxDN7.d.cts} +4 -29
- package/dist/templates/index.d.cts +10 -10
- package/dist/templates/index.d.ts +10 -10
- package/dist/typed-table/index.cjs +46 -24
- package/dist/typed-table/index.cjs.map +1 -1
- package/dist/typed-table/index.d.cts +10 -10
- package/dist/typed-table/index.d.ts +10 -10
- package/dist/typed-table/index.js +46 -24
- package/dist/typed-table/index.js.map +1 -1
- package/dist/{types-BvL_oKFl.d.ts → types-BauAeFW8.d.ts} +2 -2
- package/dist/{types-DAFP6XFe.d.cts → types-CBmUdBT0.d.cts} +2 -2
- package/dist/{types-BKYEeFt4.d.cts → types-Dek9owBe.d.cts} +2 -2
- package/dist/{types-D8qdG3Lg.d.cts → types-DsgXrESm.d.cts} +2 -2
- package/dist/{types-cpKY7Pjb.d.ts → types-HVgWcZDY.d.ts} +2 -2
- package/dist/{types-DYzXhD7j.d.ts → types-hrw-Eff1.d.ts} +2 -2
- package/dist/use-cases/index.d.cts +5 -5
- package/dist/use-cases/index.d.ts +5 -5
- package/dist/{validate-DfNMxjmU.d.cts → validate-B_iUeyh2.d.cts} +1 -1
- package/dist/{validate-DbvAParj.d.ts → validate-w-HGGTf-.d.ts} +1 -1
- package/dist/views/index.cjs +438 -0
- package/dist/views/index.cjs.map +1 -0
- package/dist/views/index.d.cts +401 -0
- package/dist/views/index.d.ts +401 -0
- package/dist/views/index.js +415 -0
- package/dist/views/index.js.map +1 -0
- package/package.json +12 -2
package/dist/data/index.cjs
CHANGED
|
@@ -626,25 +626,45 @@ function sourceArchivedOf(value) {
|
|
|
626
626
|
var import_global_slot2 = require("@ai-matrx/kit/global-slot");
|
|
627
627
|
var REMEMBER_MS = 3e4;
|
|
628
628
|
var REMEMBER_MAX = 500;
|
|
629
|
-
|
|
630
|
-
function trim(now) {
|
|
631
|
-
|
|
632
|
-
|
|
633
|
-
|
|
634
|
-
|
|
635
|
-
|
|
636
|
-
|
|
637
|
-
|
|
638
|
-
|
|
629
|
+
function ledgerOver(ours) {
|
|
630
|
+
function trim(now) {
|
|
631
|
+
for (const [id, at] of ours) {
|
|
632
|
+
if (now - at <= REMEMBER_MS) break;
|
|
633
|
+
ours.delete(id);
|
|
634
|
+
}
|
|
635
|
+
while (ours.size > REMEMBER_MAX) {
|
|
636
|
+
const oldest = ours.keys().next();
|
|
637
|
+
if (oldest.done === true) break;
|
|
638
|
+
ours.delete(oldest.value);
|
|
639
|
+
}
|
|
639
640
|
}
|
|
641
|
+
return {
|
|
642
|
+
mint() {
|
|
643
|
+
const id = crypto.randomUUID();
|
|
644
|
+
const now = Date.now();
|
|
645
|
+
ours.set(id, now);
|
|
646
|
+
trim(now);
|
|
647
|
+
return id;
|
|
648
|
+
},
|
|
649
|
+
isOwn(opId) {
|
|
650
|
+
if (!opId) return false;
|
|
651
|
+
const at = ours.get(opId);
|
|
652
|
+
if (at === void 0) return false;
|
|
653
|
+
if (Date.now() - at > REMEMBER_MS) {
|
|
654
|
+
ours.delete(opId);
|
|
655
|
+
return false;
|
|
656
|
+
}
|
|
657
|
+
return true;
|
|
658
|
+
},
|
|
659
|
+
clear() {
|
|
660
|
+
ours.clear();
|
|
661
|
+
},
|
|
662
|
+
get size() {
|
|
663
|
+
return ours.size;
|
|
664
|
+
}
|
|
665
|
+
};
|
|
640
666
|
}
|
|
641
|
-
|
|
642
|
-
const id = crypto.randomUUID();
|
|
643
|
-
const now = Date.now();
|
|
644
|
-
ours.set(id, now);
|
|
645
|
-
trim(now);
|
|
646
|
-
return id;
|
|
647
|
-
}
|
|
667
|
+
var defaultOpLedger = ledgerOver((0, import_global_slot2.globalSlot)("ai-matrx.records.op-ledger", () => /* @__PURE__ */ new Map()));
|
|
648
668
|
|
|
649
669
|
// src/placement.ts
|
|
650
670
|
function countOf(value) {
|
|
@@ -2701,6 +2721,8 @@ function createRecordsClient(given) {
|
|
|
2701
2721
|
const config = { ...given, dataSource: asRecordsDataSource(given.dataSource) };
|
|
2702
2722
|
const schema = config.schema ?? DEFAULT_SCHEMA;
|
|
2703
2723
|
const org = config.organizationId;
|
|
2724
|
+
const ledger = config.opLedger ?? defaultOpLedger;
|
|
2725
|
+
const mintOp = () => ledger.mint();
|
|
2704
2726
|
const scream = sink(config);
|
|
2705
2727
|
const BUNDLE_TTL_MS = 1e4;
|
|
2706
2728
|
const BUNDLE_OPENERS = /* @__PURE__ */ new Set(["applicable_fields", "views", "view_look_read", "table_decorations", "row_actions", "reverse_columns", "record_change_actions", "grid_layout", "io_imports"]);
|
|
@@ -3087,14 +3109,14 @@ function createRecordsClient(given) {
|
|
|
3087
3109
|
async recordWrite({ table_id, data }) {
|
|
3088
3110
|
const result = await callDoor(
|
|
3089
3111
|
DOORS.recordWrite,
|
|
3090
|
-
{ p_organization_id: org, p_table_id: table_id, p_data: { ...data, _op_id:
|
|
3112
|
+
{ p_organization_id: org, p_table_id: table_id, p_data: { ...data, _op_id: mintOp() } },
|
|
3091
3113
|
"recordWrite"
|
|
3092
3114
|
);
|
|
3093
3115
|
if (result.ok && typeof result.data === "string") announceRecordChanged(result.data);
|
|
3094
3116
|
return result;
|
|
3095
3117
|
},
|
|
3096
3118
|
async recordWriteMany({ table_id, rows, ids }) {
|
|
3097
|
-
const opId =
|
|
3119
|
+
const opId = mintOp();
|
|
3098
3120
|
return callDoor(
|
|
3099
3121
|
DOORS.recordWriteMany,
|
|
3100
3122
|
{
|
|
@@ -3107,7 +3129,7 @@ function createRecordsClient(given) {
|
|
|
3107
3129
|
);
|
|
3108
3130
|
},
|
|
3109
3131
|
async recordChangeMany({ table_id, changes }) {
|
|
3110
|
-
const opId =
|
|
3132
|
+
const opId = mintOp();
|
|
3111
3133
|
const result = await callDoor(
|
|
3112
3134
|
DOORS.recordChangeMany,
|
|
3113
3135
|
{
|
|
@@ -3130,7 +3152,7 @@ function createRecordsClient(given) {
|
|
|
3130
3152
|
return result;
|
|
3131
3153
|
},
|
|
3132
3154
|
async recordWriteGraph({ table_id, parent, children, edges }) {
|
|
3133
|
-
const opId =
|
|
3155
|
+
const opId = mintOp();
|
|
3134
3156
|
return callDoor(
|
|
3135
3157
|
DOORS.recordWriteGraph,
|
|
3136
3158
|
{
|
|
@@ -3154,7 +3176,7 @@ function createRecordsClient(given) {
|
|
|
3154
3176
|
{
|
|
3155
3177
|
p_organization_id: org,
|
|
3156
3178
|
p_record_id: record_id,
|
|
3157
|
-
p_patch: { ...patch, _op_id:
|
|
3179
|
+
p_patch: { ...patch, _op_id: mintOp() },
|
|
3158
3180
|
...expectedVersion === void 0 ? {} : { p_expected_version: expectedVersion }
|
|
3159
3181
|
},
|
|
3160
3182
|
"recordUpdate"
|
|
@@ -3168,7 +3190,7 @@ function createRecordsClient(given) {
|
|
|
3168
3190
|
{
|
|
3169
3191
|
p_organization_id: org,
|
|
3170
3192
|
p_record_id: record_id,
|
|
3171
|
-
p_patch: { ...patch, _op_id:
|
|
3193
|
+
p_patch: { ...patch, _op_id: mintOp() },
|
|
3172
3194
|
p_add: add,
|
|
3173
3195
|
...expectedVersion === void 0 ? {} : { p_expected_version: expectedVersion }
|
|
3174
3196
|
},
|
|
@@ -4193,7 +4215,7 @@ function createRecordsClient(given) {
|
|
|
4193
4215
|
p_table_id: table_id,
|
|
4194
4216
|
p_key: keys,
|
|
4195
4217
|
// The op id rides the envelope, as `recordWrite` / `recordUpdate` send it; each door takes it off.
|
|
4196
|
-
p_data: { ...data, _op_id:
|
|
4218
|
+
p_data: { ...data, _op_id: mintOp() },
|
|
4197
4219
|
...expectedVersion === void 0 ? {} : { p_expected_version: expectedVersion }
|
|
4198
4220
|
},
|
|
4199
4221
|
"recordUpsert"
|