@elaraai/e3-ui 1.0.85 → 1.0.87
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/dist/src/bind/data-indexed.d.ts +159 -0
- package/dist/src/bind/data-indexed.d.ts.map +1 -0
- package/dist/src/bind/data-indexed.js +105 -0
- package/dist/src/bind/data-indexed.js.map +1 -0
- package/dist/src/bind/data.d.ts +5 -3
- package/dist/src/bind/data.d.ts.map +1 -1
- package/dist/src/bind/data.js +6 -0
- package/dist/src/bind/data.js.map +1 -1
- package/dist/src/bind/record.d.ts +34 -23
- package/dist/src/bind/record.d.ts.map +1 -1
- package/dist/src/bind/record.js +46 -19
- package/dist/src/bind/record.js.map +1 -1
- package/dist/src/calendar/index.d.ts +2923 -0
- package/dist/src/calendar/index.d.ts.map +1 -0
- package/dist/src/calendar/index.js +135 -0
- package/dist/src/calendar/index.js.map +1 -0
- package/dist/src/decision/queue.d.ts +3 -3
- package/dist/src/decision/queue.d.ts.map +1 -1
- package/dist/src/decision/queue.js +2 -2
- package/dist/src/decision/queue.js.map +1 -1
- package/dist/src/decision/types.d.ts +4 -0
- package/dist/src/decision/types.d.ts.map +1 -1
- package/dist/src/decision/types.js +4 -0
- package/dist/src/decision/types.js.map +1 -1
- package/dist/src/flowchart/canvas.d.ts +114 -0
- package/dist/src/flowchart/canvas.d.ts.map +1 -0
- package/dist/src/flowchart/canvas.js +84 -0
- package/dist/src/flowchart/canvas.js.map +1 -0
- package/dist/src/flowchart/flowchart.d.ts +79 -0
- package/dist/src/flowchart/flowchart.d.ts.map +1 -0
- package/dist/src/flowchart/flowchart.js +9 -0
- package/dist/src/flowchart/flowchart.js.map +1 -0
- package/dist/src/flowchart/index.d.ts +305 -0
- package/dist/src/flowchart/index.d.ts.map +1 -0
- package/dist/src/flowchart/index.js +267 -0
- package/dist/src/flowchart/index.js.map +1 -0
- package/dist/src/flowchart/library.d.ts +720 -0
- package/dist/src/flowchart/library.d.ts.map +1 -0
- package/dist/src/flowchart/library.js +611 -0
- package/dist/src/flowchart/library.js.map +1 -0
- package/dist/src/flowchart/over.d.ts +234 -0
- package/dist/src/flowchart/over.d.ts.map +1 -0
- package/dist/src/flowchart/over.js +220 -0
- package/dist/src/flowchart/over.js.map +1 -0
- package/dist/src/flowchart/patch.d.ts +64 -0
- package/dist/src/flowchart/patch.d.ts.map +1 -0
- package/dist/src/flowchart/patch.js +67 -0
- package/dist/src/flowchart/patch.js.map +1 -0
- package/dist/src/flowchart/payload.d.ts +8220 -0
- package/dist/src/flowchart/payload.d.ts.map +1 -0
- package/dist/src/flowchart/payload.js +521 -0
- package/dist/src/flowchart/payload.js.map +1 -0
- package/dist/src/flowchart/types.d.ts +393 -0
- package/dist/src/flowchart/types.d.ts.map +1 -0
- package/dist/src/flowchart/types.js +216 -0
- package/dist/src/flowchart/types.js.map +1 -0
- package/dist/src/flowchart/values.d.ts +267 -0
- package/dist/src/flowchart/values.d.ts.map +1 -0
- package/dist/src/flowchart/values.js +216 -0
- package/dist/src/flowchart/values.js.map +1 -0
- package/dist/src/flowchart/window.d.ts +521 -0
- package/dist/src/flowchart/window.d.ts.map +1 -0
- package/dist/src/flowchart/window.js +69 -0
- package/dist/src/flowchart/window.js.map +1 -0
- package/dist/src/index.d.ts +25 -1
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +48 -1
- package/dist/src/index.js.map +1 -1
- package/dist/src/internal.d.ts +35 -3
- package/dist/src/internal.d.ts.map +1 -1
- package/dist/src/internal.js +72 -3
- package/dist/src/internal.js.map +1 -1
- package/dist/src/plan/assemble.d.ts +2224 -0
- package/dist/src/plan/assemble.d.ts.map +1 -0
- package/dist/src/plan/assemble.js +210 -0
- package/dist/src/plan/assemble.js.map +1 -0
- package/dist/src/plan/builders.d.ts +790 -0
- package/dist/src/plan/builders.d.ts.map +1 -0
- package/dist/src/plan/builders.js +749 -0
- package/dist/src/plan/builders.js.map +1 -0
- package/dist/src/plan/event-rows.d.ts +2565 -0
- package/dist/src/plan/event-rows.d.ts.map +1 -0
- package/dist/src/plan/event-rows.js +689 -0
- package/dist/src/plan/event-rows.js.map +1 -0
- package/dist/src/plan/factories.d.ts +458 -0
- package/dist/src/plan/factories.d.ts.map +1 -0
- package/dist/src/plan/factories.js +484 -0
- package/dist/src/plan/factories.js.map +1 -0
- package/dist/src/plan/index.d.ts +672 -0
- package/dist/src/plan/index.d.ts.map +1 -0
- package/dist/src/plan/index.js +532 -0
- package/dist/src/plan/index.js.map +1 -0
- package/dist/src/plan/ir.d.ts +2594 -0
- package/dist/src/plan/ir.d.ts.map +1 -0
- package/dist/src/plan/ir.js +78 -0
- package/dist/src/plan/ir.js.map +1 -0
- package/dist/src/plan/library.d.ts +772 -0
- package/dist/src/plan/library.d.ts.map +1 -0
- package/dist/src/plan/library.js +424 -0
- package/dist/src/plan/library.js.map +1 -0
- package/dist/src/plan/ordered-source.d.ts +27 -0
- package/dist/src/plan/ordered-source.d.ts.map +1 -0
- package/dist/src/plan/ordered-source.js +48 -0
- package/dist/src/plan/ordered-source.js.map +1 -0
- package/dist/src/plan/over.d.ts +247 -0
- package/dist/src/plan/over.d.ts.map +1 -0
- package/dist/src/plan/over.js +266 -0
- package/dist/src/plan/over.js.map +1 -0
- package/dist/src/plan/pick.d.ts +78 -0
- package/dist/src/plan/pick.d.ts.map +1 -0
- package/dist/src/plan/pick.js +146 -0
- package/dist/src/plan/pick.js.map +1 -0
- package/dist/src/plan/plan.d.ts +11611 -0
- package/dist/src/plan/plan.d.ts.map +1 -0
- package/dist/src/plan/plan.js +428 -0
- package/dist/src/plan/plan.js.map +1 -0
- package/dist/src/plan/refs.d.ts +218 -0
- package/dist/src/plan/refs.d.ts.map +1 -0
- package/dist/src/plan/refs.js +226 -0
- package/dist/src/plan/refs.js.map +1 -0
- package/dist/src/plan/root.d.ts +290 -0
- package/dist/src/plan/root.d.ts.map +1 -0
- package/dist/src/plan/root.js +463 -0
- package/dist/src/plan/root.js.map +1 -0
- package/dist/src/plan/series.d.ts +13554 -0
- package/dist/src/plan/series.d.ts.map +1 -0
- package/dist/src/plan/series.js +1921 -0
- package/dist/src/plan/series.js.map +1 -0
- package/dist/src/plan/types.d.ts +12400 -0
- package/dist/src/plan/types.d.ts.map +1 -0
- package/dist/src/plan/types.js +1335 -0
- package/dist/src/plan/types.js.map +1 -0
- package/dist/src/roster/coverage.d.ts +240 -0
- package/dist/src/roster/coverage.d.ts.map +1 -0
- package/dist/src/roster/coverage.js +109 -0
- package/dist/src/roster/coverage.js.map +1 -0
- package/dist/src/roster/index.d.ts +4028 -0
- package/dist/src/roster/index.d.ts.map +1 -0
- package/dist/src/roster/index.js +115 -0
- package/dist/src/roster/index.js.map +1 -0
- package/dist/src/roster/library.d.ts +106 -0
- package/dist/src/roster/library.d.ts.map +1 -0
- package/dist/src/roster/library.js +78 -0
- package/dist/src/roster/library.js.map +1 -0
- package/dist/src/roster/people.d.ts +50 -0
- package/dist/src/roster/people.d.ts.map +1 -0
- package/dist/src/roster/people.js +32 -0
- package/dist/src/roster/people.js.map +1 -0
- package/dist/src/roster/rules.d.ts +275 -0
- package/dist/src/roster/rules.d.ts.map +1 -0
- package/dist/src/roster/rules.js +162 -0
- package/dist/src/roster/rules.js.map +1 -0
- package/dist/src/roster/types.d.ts +672 -0
- package/dist/src/roster/types.d.ts.map +1 -0
- package/dist/src/roster/types.js +248 -0
- package/dist/src/roster/types.js.map +1 -0
- package/dist/src/roster/visibility.d.ts +66 -0
- package/dist/src/roster/visibility.d.ts.map +1 -0
- package/dist/src/roster/visibility.js +25 -0
- package/dist/src/roster/visibility.js.map +1 -0
- package/dist/src/schedule/days.d.ts +54 -0
- package/dist/src/schedule/days.d.ts.map +1 -0
- package/dist/src/schedule/days.js +68 -0
- package/dist/src/schedule/days.js.map +1 -0
- package/dist/src/schedule/events.d.ts +433 -0
- package/dist/src/schedule/events.d.ts.map +1 -0
- package/dist/src/schedule/events.js +851 -0
- package/dist/src/schedule/events.js.map +1 -0
- package/dist/src/schedule/index.d.ts +150 -0
- package/dist/src/schedule/index.d.ts.map +1 -0
- package/dist/src/schedule/index.js +132 -0
- package/dist/src/schedule/index.js.map +1 -0
- package/dist/src/schedule/library.d.ts +70 -0
- package/dist/src/schedule/library.d.ts.map +1 -0
- package/dist/src/schedule/library.js +102 -0
- package/dist/src/schedule/library.js.map +1 -0
- package/dist/src/schedule/patch.d.ts +74 -0
- package/dist/src/schedule/patch.d.ts.map +1 -0
- package/dist/src/schedule/patch.js +68 -0
- package/dist/src/schedule/patch.js.map +1 -0
- package/dist/src/schedule/record-window.d.ts +189 -0
- package/dist/src/schedule/record-window.d.ts.map +1 -0
- package/dist/src/schedule/record-window.js +95 -0
- package/dist/src/schedule/record-window.js.map +1 -0
- package/dist/src/schedule/resources.d.ts +165 -0
- package/dist/src/schedule/resources.d.ts.map +1 -0
- package/dist/src/schedule/resources.js +234 -0
- package/dist/src/schedule/resources.js.map +1 -0
- package/dist/src/schedule/templates.d.ts +47 -0
- package/dist/src/schedule/templates.d.ts.map +1 -0
- package/dist/src/schedule/templates.js +61 -0
- package/dist/src/schedule/templates.js.map +1 -0
- package/dist/src/schedule/types.d.ts +1677 -0
- package/dist/src/schedule/types.d.ts.map +1 -0
- package/dist/src/schedule/types.js +374 -0
- package/dist/src/schedule/types.js.map +1 -0
- package/dist/src/schedule/window.d.ts +154 -0
- package/dist/src/schedule/window.d.ts.map +1 -0
- package/dist/src/schedule/window.js +363 -0
- package/dist/src/schedule/window.js.map +1 -0
- package/dist/src/sheet/bridge.d.ts +385 -0
- package/dist/src/sheet/bridge.d.ts.map +1 -0
- package/dist/src/sheet/bridge.js +809 -0
- package/dist/src/sheet/bridge.js.map +1 -0
- package/dist/src/sheet/columns.d.ts +410 -0
- package/dist/src/sheet/columns.d.ts.map +1 -0
- package/dist/src/sheet/columns.js +99 -0
- package/dist/src/sheet/columns.js.map +1 -0
- package/dist/src/sheet/context-bridge.d.ts +48 -0
- package/dist/src/sheet/context-bridge.d.ts.map +1 -0
- package/dist/src/sheet/context-bridge.js +216 -0
- package/dist/src/sheet/context-bridge.js.map +1 -0
- package/dist/src/sheet/draft-bridge.d.ts +37 -0
- package/dist/src/sheet/draft-bridge.d.ts.map +1 -0
- package/dist/src/sheet/draft-bridge.js +153 -0
- package/dist/src/sheet/draft-bridge.js.map +1 -0
- package/dist/src/sheet/drafts.d.ts +14 -0
- package/dist/src/sheet/drafts.d.ts.map +1 -0
- package/dist/src/sheet/drafts.js +14 -0
- package/dist/src/sheet/drafts.js.map +1 -0
- package/dist/src/sheet/editing-bridge.d.ts +40 -0
- package/dist/src/sheet/editing-bridge.d.ts.map +1 -0
- package/dist/src/sheet/editing-bridge.js +231 -0
- package/dist/src/sheet/editing-bridge.js.map +1 -0
- package/dist/src/sheet/editing-types.d.ts +268 -0
- package/dist/src/sheet/editing-types.d.ts.map +1 -0
- package/dist/src/sheet/editing-types.js +34 -0
- package/dist/src/sheet/editing-types.js.map +1 -0
- package/dist/src/sheet/edits.d.ts +37 -0
- package/dist/src/sheet/edits.d.ts.map +1 -0
- package/dist/src/sheet/edits.js +31 -0
- package/dist/src/sheet/edits.js.map +1 -0
- package/dist/src/sheet/fields.d.ts +693 -0
- package/dist/src/sheet/fields.d.ts.map +1 -0
- package/dist/src/sheet/fields.js +280 -0
- package/dist/src/sheet/fields.js.map +1 -0
- package/dist/src/sheet/group.d.ts +165 -0
- package/dist/src/sheet/group.d.ts.map +1 -0
- package/dist/src/sheet/group.js +52 -0
- package/dist/src/sheet/group.js.map +1 -0
- package/dist/src/sheet/index.d.ts +542 -0
- package/dist/src/sheet/index.d.ts.map +1 -0
- package/dist/src/sheet/index.js +387 -0
- package/dist/src/sheet/index.js.map +1 -0
- package/dist/src/sheet/library.d.ts +284 -0
- package/dist/src/sheet/library.d.ts.map +1 -0
- package/dist/src/sheet/library.js +259 -0
- package/dist/src/sheet/library.js.map +1 -0
- package/dist/src/sheet/link.d.ts +398 -0
- package/dist/src/sheet/link.d.ts.map +1 -0
- package/dist/src/sheet/link.js +228 -0
- package/dist/src/sheet/link.js.map +1 -0
- package/dist/src/sheet/record.d.ts +75 -0
- package/dist/src/sheet/record.d.ts.map +1 -0
- package/dist/src/sheet/record.js +128 -0
- package/dist/src/sheet/record.js.map +1 -0
- package/dist/src/sheet/registers.d.ts +681 -0
- package/dist/src/sheet/registers.d.ts.map +1 -0
- package/dist/src/sheet/registers.js +671 -0
- package/dist/src/sheet/registers.js.map +1 -0
- package/dist/src/sheet/root.d.ts +329 -0
- package/dist/src/sheet/root.d.ts.map +1 -0
- package/dist/src/sheet/root.js +511 -0
- package/dist/src/sheet/root.js.map +1 -0
- package/dist/src/sheet/seed-bridge.d.ts +14 -0
- package/dist/src/sheet/seed-bridge.d.ts.map +1 -0
- package/dist/src/sheet/seed-bridge.js +51 -0
- package/dist/src/sheet/seed-bridge.js.map +1 -0
- package/dist/src/sheet/sheet.d.ts +11819 -0
- package/dist/src/sheet/sheet.d.ts.map +1 -0
- package/dist/src/sheet/sheet.js +236 -0
- package/dist/src/sheet/sheet.js.map +1 -0
- package/dist/src/sheet/sub-rows.d.ts +299 -0
- package/dist/src/sheet/sub-rows.d.ts.map +1 -0
- package/dist/src/sheet/sub-rows.js +272 -0
- package/dist/src/sheet/sub-rows.js.map +1 -0
- package/dist/src/sheet/templates.d.ts +161 -0
- package/dist/src/sheet/templates.d.ts.map +1 -0
- package/dist/src/sheet/templates.js +122 -0
- package/dist/src/sheet/templates.js.map +1 -0
- package/dist/src/sheet/transactions.d.ts +76 -0
- package/dist/src/sheet/transactions.d.ts.map +1 -0
- package/dist/src/sheet/transactions.js +40 -0
- package/dist/src/sheet/transactions.js.map +1 -0
- package/dist/src/sheet/types.d.ts +15226 -0
- package/dist/src/sheet/types.d.ts.map +1 -0
- package/dist/src/sheet/types.js +1070 -0
- package/dist/src/sheet/types.js.map +1 -0
- package/dist/src/sheet/views.d.ts +29 -0
- package/dist/src/sheet/views.d.ts.map +1 -0
- package/dist/src/sheet/views.js +43 -0
- package/dist/src/sheet/views.js.map +1 -0
- package/dist/src/studio/component.d.ts.map +1 -1
- package/dist/src/studio/component.js +11 -8
- package/dist/src/studio/component.js.map +1 -1
- package/dist/src/utils/derive.d.ts +134 -8
- package/dist/src/utils/derive.d.ts.map +1 -1
- package/dist/src/utils/derive.js +409 -7
- package/dist/src/utils/derive.js.map +1 -1
- package/dist/src/utils/ordered-source.d.ts +38 -0
- package/dist/src/utils/ordered-source.d.ts.map +1 -0
- package/dist/src/utils/ordered-source.js +45 -0
- package/dist/src/utils/ordered-source.js.map +1 -0
- package/dist/src/utils/row-inspector.d.ts +36 -0
- package/dist/src/utils/row-inspector.d.ts.map +1 -0
- package/dist/src/utils/row-inspector.js +49 -0
- package/dist/src/utils/row-inspector.js.map +1 -0
- package/dist/test/bind/data/data.examples.d.ts +21 -19
- package/dist/test/bind/data/data.examples.d.ts.map +1 -1
- package/dist/test/bind/data/data.examples.js +122 -122
- package/dist/test/bind/data/data.examples.js.map +1 -1
- package/dist/test/bind/record/record.examples.d.ts.map +1 -1
- package/dist/test/bind/record/record.examples.js +9 -9
- package/dist/test/bind/record/record.examples.js.map +1 -1
- package/dist/test/calendar/calendar-records.examples.d.ts +228 -0
- package/dist/test/calendar/calendar-records.examples.d.ts.map +1 -0
- package/dist/test/calendar/calendar-records.examples.js +91 -0
- package/dist/test/calendar/calendar-records.examples.js.map +1 -0
- package/dist/test/calendar/calendar.examples.d.ts +776 -0
- package/dist/test/calendar/calendar.examples.d.ts.map +1 -0
- package/dist/test/calendar/calendar.examples.js +336 -0
- package/dist/test/calendar/calendar.examples.js.map +1 -0
- package/dist/test/decision/journal.examples.d.ts +28 -28
- package/dist/test/decision/journal.examples.d.ts.map +1 -1
- package/dist/test/decision/journal.examples.js +4 -4
- package/dist/test/decision/journal.examples.js.map +1 -1
- package/dist/test/decision/queue.examples.d.ts.map +1 -1
- package/dist/test/decision/queue.examples.js +5 -7
- package/dist/test/decision/queue.examples.js.map +1 -1
- package/dist/test/flowchart/flowchart.examples.d.ts +3713 -0
- package/dist/test/flowchart/flowchart.examples.d.ts.map +1 -0
- package/dist/test/flowchart/flowchart.examples.js +465 -0
- package/dist/test/flowchart/flowchart.examples.js.map +1 -0
- package/dist/test/plan/plan-events.examples.d.ts +3666 -0
- package/dist/test/plan/plan-events.examples.d.ts.map +1 -0
- package/dist/test/plan/plan-events.examples.js +773 -0
- package/dist/test/plan/plan-events.examples.js.map +1 -0
- package/dist/test/plan/plan-records.examples.d.ts +3 -0
- package/dist/test/plan/plan-records.examples.d.ts.map +1 -0
- package/dist/test/plan/plan-records.examples.js +45 -0
- package/dist/test/plan/plan-records.examples.js.map +1 -0
- package/dist/test/plan/plan-windows.examples.d.ts +588 -0
- package/dist/test/plan/plan-windows.examples.d.ts.map +1 -0
- package/dist/test/plan/plan-windows.examples.js +170 -0
- package/dist/test/plan/plan-windows.examples.js.map +1 -0
- package/dist/test/plan/plan.examples.d.ts +8095 -0
- package/dist/test/plan/plan.examples.d.ts.map +1 -0
- package/dist/test/plan/plan.examples.js +2500 -0
- package/dist/test/plan/plan.examples.js.map +1 -0
- package/dist/test/roster/domain.examples.d.ts +367 -0
- package/dist/test/roster/domain.examples.d.ts.map +1 -0
- package/dist/test/roster/domain.examples.js +72 -0
- package/dist/test/roster/domain.examples.js.map +1 -0
- package/dist/test/roster/roster-records.examples.d.ts +729 -0
- package/dist/test/roster/roster-records.examples.d.ts.map +1 -0
- package/dist/test/roster/roster-records.examples.js +86 -0
- package/dist/test/roster/roster-records.examples.js.map +1 -0
- package/dist/test/roster/roster.examples.d.ts +750 -0
- package/dist/test/roster/roster.examples.d.ts.map +1 -0
- package/dist/test/roster/roster.examples.js +198 -0
- package/dist/test/roster/roster.examples.js.map +1 -0
- package/dist/test/roster/warehouse.d.ts +87 -0
- package/dist/test/roster/warehouse.d.ts.map +1 -0
- package/dist/test/roster/warehouse.js +883 -0
- package/dist/test/roster/warehouse.js.map +1 -0
- package/dist/test/sheet/sheet-link.examples.d.ts +7 -0
- package/dist/test/sheet/sheet-link.examples.d.ts.map +1 -0
- package/dist/test/sheet/sheet-link.examples.js +41 -0
- package/dist/test/sheet/sheet-link.examples.js.map +1 -0
- package/dist/test/sheet/sheet-records.examples.d.ts +421 -0
- package/dist/test/sheet/sheet-records.examples.d.ts.map +1 -0
- package/dist/test/sheet/sheet-records.examples.js +79 -0
- package/dist/test/sheet/sheet-records.examples.js.map +1 -0
- package/dist/test/sheet/sheet-transactions.examples.d.ts +7 -0
- package/dist/test/sheet/sheet-transactions.examples.d.ts.map +1 -0
- package/dist/test/sheet/sheet-transactions.examples.js +58 -0
- package/dist/test/sheet/sheet-transactions.examples.js.map +1 -0
- package/dist/test/sheet/sheet.examples.d.ts +5562 -0
- package/dist/test/sheet/sheet.examples.d.ts.map +1 -0
- package/dist/test/sheet/sheet.examples.js +1178 -0
- package/dist/test/sheet/sheet.examples.js.map +1 -0
- package/dist/test/studio/studio.examples.d.ts.map +1 -1
- package/dist/test/studio/studio.examples.js +11 -11
- package/dist/test/studio/studio.examples.js.map +1 -1
- package/package.json +12 -9
|
@@ -0,0 +1,159 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright (c) 2025 Elara AI Pty Ltd
|
|
3
|
+
* Dual-licensed under AGPL-3.0 and commercial license. See LICENSE for details.
|
|
4
|
+
*/
|
|
5
|
+
/** Field-indexed record bindings for Slice; all reads use the paged runtime. */
|
|
6
|
+
import { BooleanType, StructType, VariantType, NullType, StringType, IntegerType, ArrayType, OptionType, FunctionType, DictType, SetType, type EastType } from "@elaraai/east";
|
|
7
|
+
import type { RecordDef, RecordIndexDef } from "@elaraai/e3";
|
|
8
|
+
import { type IndexedSource } from "@elaraai/east-ui/internal";
|
|
9
|
+
/** Field and computed index declarations accepted by Slice. */
|
|
10
|
+
export type FieldIndexes<T extends EastType> = readonly RecordIndexDef<string, T, EastType, EastType, readonly string[] | undefined>[];
|
|
11
|
+
/** The SDK supplies key types; empty collection markers retain them in the handle.
|
|
12
|
+
* RecordIndexDef does not preserve `multi` as a literal, so both marker types
|
|
13
|
+
* are possible statically. The declared index chooses the exact runtime type. */
|
|
14
|
+
type ComputedMarker<T extends EastType> = ArrayType<T> | SetType<T>;
|
|
15
|
+
type ComputedFields<D> = D extends {
|
|
16
|
+
name: infer Name extends string;
|
|
17
|
+
keyType: infer K extends EastType;
|
|
18
|
+
} ? K extends StructType<infer F> ? {
|
|
19
|
+
[N in keyof F]: ComputedMarker<F[N]>;
|
|
20
|
+
} : {
|
|
21
|
+
[N in Name]: ComputedMarker<K>;
|
|
22
|
+
} : Record<never, never>;
|
|
23
|
+
type DeclaredFields<D> = D extends {
|
|
24
|
+
on: readonly (infer F extends string)[];
|
|
25
|
+
} ? {
|
|
26
|
+
[N in F]: FieldMarker<D, N>;
|
|
27
|
+
} : ComputedFields<D>;
|
|
28
|
+
/** An interval start carries its end-field name in type metadata. */
|
|
29
|
+
type FieldMarker<D, F> = D extends {
|
|
30
|
+
interval: {
|
|
31
|
+
from: F;
|
|
32
|
+
to: infer End extends string;
|
|
33
|
+
};
|
|
34
|
+
} ? StructType<{
|
|
35
|
+
[E in End]: NullType;
|
|
36
|
+
}> : NullType;
|
|
37
|
+
/** Ordered fields of each named index, preserved in the source's East type. */
|
|
38
|
+
type IndexFields<I extends FieldIndexes<EastType>> = StructType<{
|
|
39
|
+
[D in I[number] as D["name"]]: StructType<DeclaredFields<D>>;
|
|
40
|
+
}>;
|
|
41
|
+
/** A common key space for a source that may read through any listed index. */
|
|
42
|
+
type IndexKeys<K extends EastType, I extends FieldIndexes<EastType>> = VariantType<{
|
|
43
|
+
primary: K;
|
|
44
|
+
} & {
|
|
45
|
+
[D in I[number] as D["name"]]: D["keyType"];
|
|
46
|
+
}>;
|
|
47
|
+
/**
|
|
48
|
+
* Bind a record with the field indexes its Slice may use.
|
|
49
|
+
*
|
|
50
|
+
* @typeParam T - Record state type.
|
|
51
|
+
* @typeParam I - The supplied field-index declarations.
|
|
52
|
+
* @property indexes - Nonempty list of this record's field or computed indexes.
|
|
53
|
+
* A computed scalar uses its index name as the field; Struct keys supply their
|
|
54
|
+
* own field names. A computed `keys` index must have one logical field so
|
|
55
|
+
* exact membership includes each primary row once. Types come from the index.
|
|
56
|
+
* @property join - Include record rows (default true). False requires a covering
|
|
57
|
+
* index without Set fields so the unfiltered view still has one entry per row.
|
|
58
|
+
*/
|
|
59
|
+
export interface BindPagedIndexesOptions<T extends EastType, I extends FieldIndexes<T>> {
|
|
60
|
+
/** Index declarations, retaining their literal names and fields. */
|
|
61
|
+
indexes: I;
|
|
62
|
+
/** Include each entry's record row; true unless explicitly disabled. */
|
|
63
|
+
join?: boolean;
|
|
64
|
+
}
|
|
65
|
+
/**
|
|
66
|
+
* The type of a field-indexed record binding.
|
|
67
|
+
* @typeParam T - Dict record type.
|
|
68
|
+
* @typeParam I - Supplied field-index declarations, with one common projection.
|
|
69
|
+
*/
|
|
70
|
+
export type IndexedPagedValue<T extends EastType, I extends FieldIndexes<T>> = T extends DictType<infer K extends EastType, infer R extends EastType> ? IndexedSource<K, R, I[number]["valueType"], IndexFields<I>, IndexKeys<K, I>> : never;
|
|
71
|
+
/**
|
|
72
|
+
* New platform contract for indexed record bindings. The previously released
|
|
73
|
+
* paged calls and their return types remain unchanged.
|
|
74
|
+
* @internal
|
|
75
|
+
*/
|
|
76
|
+
export declare const bindIndexedPagedPlatformFn: import("@elaraai/east").GenericPlatformDefinition<readonly ["K", "R", "P", "Indexes", "IK"], readonly [ArrayType<VariantType<{
|
|
77
|
+
readonly field: StringType;
|
|
78
|
+
}>>, "Indexes", BooleanType, FunctionType<[StringType, "K", "R"], ArrayType<StringType>>, StringType], StructType<{
|
|
79
|
+
readonly id: StringType;
|
|
80
|
+
readonly recordId: StringType;
|
|
81
|
+
readonly indexes: string;
|
|
82
|
+
readonly joined: BooleanType;
|
|
83
|
+
readonly defaultIndex: StringType;
|
|
84
|
+
readonly entryKeys: FunctionType<[StringType, string, string], ArrayType<StringType>>;
|
|
85
|
+
readonly page: FunctionType<[StringType, IntegerType, IntegerType], OptionType<ArrayType<StructType<{
|
|
86
|
+
readonly ik: string;
|
|
87
|
+
readonly key: string;
|
|
88
|
+
readonly value: OptionType<string>;
|
|
89
|
+
readonly row: OptionType<string>;
|
|
90
|
+
}>>>>;
|
|
91
|
+
readonly seek: FunctionType<[StringType, import("@elaraai/east").VariantType<{
|
|
92
|
+
readonly key: StringType;
|
|
93
|
+
readonly prefix: StringType;
|
|
94
|
+
readonly fields: StructType<{
|
|
95
|
+
readonly values: ArrayType<StringType>;
|
|
96
|
+
readonly prefix: OptionType<StringType>;
|
|
97
|
+
}>;
|
|
98
|
+
readonly range: StructType<{
|
|
99
|
+
readonly from: ArrayType<StringType>;
|
|
100
|
+
readonly to: ArrayType<StringType>;
|
|
101
|
+
}>;
|
|
102
|
+
}>], OptionType<StructType<{
|
|
103
|
+
readonly found: BooleanType;
|
|
104
|
+
readonly row: IntegerType;
|
|
105
|
+
readonly count: IntegerType;
|
|
106
|
+
}>>>;
|
|
107
|
+
readonly total: FunctionType<[StringType], OptionType<IntegerType>>;
|
|
108
|
+
readonly revision: FunctionType<[], OptionType<StringType>>;
|
|
109
|
+
readonly refresh: FunctionType<[OptionType<StringType>], NullType>;
|
|
110
|
+
}>>;
|
|
111
|
+
/** Serializable primitives backing the indexed handle; all reuse paged reads. @internal */
|
|
112
|
+
export declare const DataIndexedPrimitives: {
|
|
113
|
+
page: import("@elaraai/east").GenericPlatformDefinition<readonly ["K", "R", "P", "Indexes", "IK"], readonly [ArrayType<VariantType<{
|
|
114
|
+
readonly field: StringType;
|
|
115
|
+
}>>, "Indexes", BooleanType, StringType, IntegerType, IntegerType], OptionType<ArrayType<StructType<{
|
|
116
|
+
readonly ik: string;
|
|
117
|
+
readonly key: string;
|
|
118
|
+
readonly value: OptionType<string>;
|
|
119
|
+
readonly row: OptionType<string>;
|
|
120
|
+
}>>>>;
|
|
121
|
+
seek: import("@elaraai/east").GenericPlatformDefinition<readonly ["K", "R", "P", "Indexes", "IK"], readonly [ArrayType<VariantType<{
|
|
122
|
+
readonly field: StringType;
|
|
123
|
+
}>>, "Indexes", BooleanType, StringType, VariantType<{
|
|
124
|
+
readonly key: StringType;
|
|
125
|
+
readonly prefix: StringType;
|
|
126
|
+
readonly fields: StructType<{
|
|
127
|
+
readonly values: ArrayType<StringType>;
|
|
128
|
+
readonly prefix: OptionType<StringType>;
|
|
129
|
+
}>;
|
|
130
|
+
readonly range: StructType<{
|
|
131
|
+
readonly from: ArrayType<StringType>;
|
|
132
|
+
readonly to: ArrayType<StringType>;
|
|
133
|
+
}>;
|
|
134
|
+
}>], OptionType<StructType<{
|
|
135
|
+
readonly found: BooleanType;
|
|
136
|
+
readonly row: IntegerType;
|
|
137
|
+
readonly count: IntegerType;
|
|
138
|
+
}>>>;
|
|
139
|
+
total: import("@elaraai/east").GenericPlatformDefinition<readonly ["K", "R", "P", "Indexes", "IK"], readonly [ArrayType<VariantType<{
|
|
140
|
+
readonly field: StringType;
|
|
141
|
+
}>>, "Indexes", BooleanType, StringType], OptionType<IntegerType>>;
|
|
142
|
+
revision: import("@elaraai/east").GenericPlatformDefinition<readonly ["K", "R", "P", "Indexes", "IK"], readonly [ArrayType<VariantType<{
|
|
143
|
+
readonly field: StringType;
|
|
144
|
+
}>>, "Indexes", BooleanType], OptionType<StringType>>;
|
|
145
|
+
refresh: import("@elaraai/east").GenericPlatformDefinition<readonly ["K", "R", "P", "Indexes", "IK"], readonly [ArrayType<VariantType<{
|
|
146
|
+
readonly field: StringType;
|
|
147
|
+
}>>, "Indexes", BooleanType, OptionType<StringType>], NullType>;
|
|
148
|
+
};
|
|
149
|
+
/**
|
|
150
|
+
* Validate and assemble the indexed source. Query planning and read behavior
|
|
151
|
+
* belong to the runtime, not this authoring adapter.
|
|
152
|
+
* @param record - Owning Dict record.
|
|
153
|
+
* @param options - Index declarations and whether to join record rows.
|
|
154
|
+
* @returns A typed indexed source over this record.
|
|
155
|
+
* @internal
|
|
156
|
+
*/
|
|
157
|
+
export declare function bindDataIndexed<T extends EastType, const I extends FieldIndexes<T>>(record: RecordDef<T>, options: BindPagedIndexesOptions<T, I>): IndexedPagedValue<T, I>;
|
|
158
|
+
export {};
|
|
159
|
+
//# sourceMappingURL=data-indexed.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"data-indexed.d.ts","sourceRoot":"","sources":["../../../src/bind/data-indexed.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,105 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright (c) 2025 Elara AI Pty Ltd
|
|
3
|
+
* Dual-licensed under AGPL-3.0 and commercial license. See LICENSE for details.
|
|
4
|
+
*/
|
|
5
|
+
/** Field-indexed record bindings for Slice; all reads use the paged runtime. */
|
|
6
|
+
import { BooleanType, East, StructType, VariantType, NullType, StringType, IntegerType, ArrayType, OptionType, FunctionType, DictType, SetType, isSubtype, } from "@elaraai/east";
|
|
7
|
+
import { TreePathType } from "@elaraai/e3-types";
|
|
8
|
+
import { SeekQueryType, SeekRangeType } from "@elaraai/east-ui";
|
|
9
|
+
import { IndexedEntryType, IndexedSourceType } from "@elaraai/east-ui/internal";
|
|
10
|
+
/**
|
|
11
|
+
* New platform contract for indexed record bindings. The previously released
|
|
12
|
+
* paged calls and their return types remain unchanged.
|
|
13
|
+
* @internal
|
|
14
|
+
*/
|
|
15
|
+
export const bindIndexedPagedPlatformFn = East.genericPlatform("data_bind_indexed", ["K", "R", "P", "Indexes", "IK"], [TreePathType, "Indexes", BooleanType, FunctionType([StringType, "K", "R"], ArrayType(StringType)), StringType], IndexedSourceType("K", "R", "P", "Indexes", "IK"), { optional: true });
|
|
16
|
+
const descriptor = [TreePathType, "Indexes", BooleanType];
|
|
17
|
+
const arguments_ = ["K", "R", "P", "Indexes", "IK"];
|
|
18
|
+
/** Serializable primitives backing the indexed handle; all reuse paged reads. @internal */
|
|
19
|
+
export const DataIndexedPrimitives = {
|
|
20
|
+
page: East.genericPlatform("data_indexed_page", arguments_, [...descriptor, StringType, IntegerType, IntegerType], OptionType(ArrayType(IndexedEntryType("K", "R", "P", "IK"))), { optional: true }),
|
|
21
|
+
seek: East.genericPlatform("data_indexed_seek", arguments_, [...descriptor, StringType, SeekQueryType], OptionType(SeekRangeType), { optional: true }),
|
|
22
|
+
total: East.genericPlatform("data_indexed_total", arguments_, [...descriptor, StringType], OptionType(IntegerType), { optional: true }),
|
|
23
|
+
revision: East.genericPlatform("data_indexed_revision", arguments_, descriptor, OptionType(StringType), { optional: true }),
|
|
24
|
+
refresh: East.genericPlatform("data_indexed_refresh", arguments_, [...descriptor, OptionType(StringType)], NullType, { optional: true }),
|
|
25
|
+
};
|
|
26
|
+
/**
|
|
27
|
+
* Validate and assemble the indexed source. Query planning and read behavior
|
|
28
|
+
* belong to the runtime, not this authoring adapter.
|
|
29
|
+
* @param record - Owning Dict record.
|
|
30
|
+
* @param options - Index declarations and whether to join record rows.
|
|
31
|
+
* @returns A typed indexed source over this record.
|
|
32
|
+
* @internal
|
|
33
|
+
*/
|
|
34
|
+
export function bindDataIndexed(record, options) {
|
|
35
|
+
const type = record.type;
|
|
36
|
+
if (type.type !== "Dict" || type.value.type !== "Struct") {
|
|
37
|
+
throw new Error("Data.bindPaged with indexes requires a Dict record with Struct rows");
|
|
38
|
+
}
|
|
39
|
+
if (options.indexes.length === 0)
|
|
40
|
+
throw new Error("Data.bindPaged: indexes must list at least one field index");
|
|
41
|
+
const names = new Set();
|
|
42
|
+
const fields = {};
|
|
43
|
+
const metadata = {};
|
|
44
|
+
const keyTypes = { primary: type.key };
|
|
45
|
+
const projection = options.indexes[0].valueType;
|
|
46
|
+
let singleEntryIndex = false;
|
|
47
|
+
for (const index of options.indexes) {
|
|
48
|
+
if (index.record.name !== record.name || !isSubtype(index.record.type, type) || !isSubtype(type, index.record.type)) {
|
|
49
|
+
throw new Error(`Data.bindPaged: index '${index.name}' belongs to a different record`);
|
|
50
|
+
}
|
|
51
|
+
const computed = index.on === undefined;
|
|
52
|
+
if (computed && index.keyType.type === "Struct" && Object.keys(index.keyType.fields).length === 0) {
|
|
53
|
+
throw new Error(`Data.bindPaged: computed index '${index.name}' needs at least one key field for Slice`);
|
|
54
|
+
}
|
|
55
|
+
if (computed && index.multi && index.keyType.type === "Struct" && Object.keys(index.keyType.fields).length !== 1) {
|
|
56
|
+
throw new Error(`Data.bindPaged: computed keys index '${index.name}' needs one named field for Slice so exact membership cannot duplicate records; use { index } for an arbitrary compound fan-out`);
|
|
57
|
+
}
|
|
58
|
+
if (index.on?.length === 0)
|
|
59
|
+
throw new Error(`Data.bindPaged: index '${index.name}' needs at least one field`);
|
|
60
|
+
if (names.has(index.name))
|
|
61
|
+
throw new Error(`Data.bindPaged: repeated index '${index.name}'`);
|
|
62
|
+
names.add(index.name);
|
|
63
|
+
if (!isSubtype(index.valueType, projection) || !isSubtype(projection, index.valueType)) {
|
|
64
|
+
throw new Error("Data.bindPaged: all listed indexes must have the same covering projection type");
|
|
65
|
+
}
|
|
66
|
+
if (computed) {
|
|
67
|
+
const entries = index.keyType.type === "Struct"
|
|
68
|
+
? Object.entries(index.keyType.fields) : [[index.name, index.keyType]];
|
|
69
|
+
fields[index.name] = StructType(Object.fromEntries(entries.map(([field, type]) => [field, index.multi ? SetType(type) : ArrayType(type)])));
|
|
70
|
+
metadata[index.name] = Object.fromEntries(entries.map(([field]) => [field, index.multi ? new Set() : []]));
|
|
71
|
+
}
|
|
72
|
+
else {
|
|
73
|
+
fields[index.name] = StructType(Object.fromEntries(index.on.map(field => [field,
|
|
74
|
+
index.interval?.from === field ? StructType({ [index.interval.to]: NullType }) : NullType])));
|
|
75
|
+
metadata[index.name] = Object.fromEntries(index.on.map(field => [field,
|
|
76
|
+
index.interval?.from === field ? { [index.interval.to]: null } : null]));
|
|
77
|
+
}
|
|
78
|
+
keyTypes[index.name] = index.keyType;
|
|
79
|
+
singleEntryIndex ||= !index.multi;
|
|
80
|
+
}
|
|
81
|
+
if (options.join === false && !singleEntryIndex) {
|
|
82
|
+
throw new Error("Data.bindPaged with join: false needs an index without Set fields for its unfiltered view; add a one-entry-per-row field index or use join: true");
|
|
83
|
+
}
|
|
84
|
+
const indexFields = StructType(fields);
|
|
85
|
+
// Reuse the SDK's exact maintained-key functions. A Save checks individual
|
|
86
|
+
// primary identities with indexed seeks; it never scans a narrowed run.
|
|
87
|
+
const keyFunctions = new Map(options.indexes.map(index => {
|
|
88
|
+
const keys = East.function([type.key, type.value], ArrayType(StringType), ($, key, row) => {
|
|
89
|
+
if (index.multi) {
|
|
90
|
+
const fn = $.const(index.keyFn);
|
|
91
|
+
return fn(key, row).toArray((_$, ik) => East.print(ik));
|
|
92
|
+
}
|
|
93
|
+
const fn = $.const(index.keyFn);
|
|
94
|
+
return East.value([East.print(fn(key, row))], ArrayType(StringType));
|
|
95
|
+
});
|
|
96
|
+
return [index.name, keys];
|
|
97
|
+
}));
|
|
98
|
+
const keyFunctionsType = DictType(StringType, FunctionType([type.key, type.value], ArrayType(StringType)));
|
|
99
|
+
const entryKeys = East.function([StringType, type.key, type.value], ArrayType(StringType), ($, index, key, row) => {
|
|
100
|
+
const keys = $.const(keyFunctions, keyFunctionsType);
|
|
101
|
+
return keys.get(index)(key, row);
|
|
102
|
+
});
|
|
103
|
+
return bindIndexedPagedPlatformFn([type.key, type.value, projection, indexFields, VariantType(keyTypes)], East.value(record.path, TreePathType), East.value(metadata, indexFields), options.join !== false, entryKeys, record.name);
|
|
104
|
+
}
|
|
105
|
+
//# sourceMappingURL=data-indexed.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"data-indexed.js","sourceRoot":"","sources":["../../../src/bind/data-indexed.ts"],"names":[],"mappings":"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"}
|
package/dist/src/bind/data.d.ts
CHANGED
|
@@ -9,6 +9,7 @@
|
|
|
9
9
|
*/
|
|
10
10
|
import { ArrayType, NullType, BooleanType, FunctionType, IntegerType, StringType, StructType, VariantType, OptionType, type DictType, type EastType, type ExprType } from '@elaraai/east';
|
|
11
11
|
import type { DatasetDef, RecordDef, RecordIndexDef, TaskDef } from '@elaraai/e3';
|
|
12
|
+
import { type BindPagedIndexesOptions, type FieldIndexes, type IndexedPagedValue } from './data-indexed.js';
|
|
12
13
|
/**
|
|
13
14
|
* The two operating modes for {@link Data.bind}.
|
|
14
15
|
*
|
|
@@ -619,8 +620,8 @@ export declare const DataPagedPrimitives: {
|
|
|
619
620
|
* @example
|
|
620
621
|
* ```ts
|
|
621
622
|
* import { ArrayType, DictType, East, StringType, variant } from "@elaraai/east";
|
|
622
|
-
* import {
|
|
623
|
-
* import { Data } from "@elaraai/e3-ui";
|
|
623
|
+
* import { Reactive, UIComponentType } from "@elaraai/east-ui";
|
|
624
|
+
* import { Data, Plan } from "@elaraai/e3-ui";
|
|
624
625
|
* import * as e3 from "@elaraai/e3";
|
|
625
626
|
*
|
|
626
627
|
* // KEYED, because the Plan's canvas rows inherit the dataset's keys — the
|
|
@@ -637,11 +638,12 @@ export declare const DataPagedPrimitives: {
|
|
|
637
638
|
* const axis = $.const(Plan.axis({
|
|
638
639
|
* window: { min: week(24n), max: week(42n) }, resolution: "week",
|
|
639
640
|
* }));
|
|
640
|
-
* return Plan
|
|
641
|
+
* return Plan({ axis, data: paged, series });
|
|
641
642
|
* }));
|
|
642
643
|
* });
|
|
643
644
|
* ```
|
|
644
645
|
*/
|
|
646
|
+
declare function bindDataPaged<T extends EastType, const I extends FieldIndexes<T>>(record: RecordDef<T>, options: BindPagedIndexesOptions<T, I>): IndexedPagedValue<T, I>;
|
|
645
647
|
declare function bindDataPaged<T extends EastType>(dataset: DatasetDef<T> | TaskDef<T>): PagedValue<T>;
|
|
646
648
|
declare function bindDataPaged<T extends EastType, IK extends EastType, P extends EastType>(record: RecordDef<T>, options: BindPagedIndexOptions<T, IK, P>): PagedValue<IndexWindowType<T, IK, P>>;
|
|
647
649
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"data.d.ts","sourceRoot":"","sources":["../../../src/bind/data.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH;;;;GAIG;AAEH,OAAO,EAEH,SAAS,EACT,QAAQ,EACR,WAAW,EACX,YAAY,EACZ,WAAW,EACX,UAAU,EACV,UAAU,EACV,WAAW,EACX,UAAU,EAIV,KAAK,QAAQ,EACb,KAAK,QAAQ,EACb,KAAK,QAAQ,EAChB,MAAM,eAAe,CAAC;AAOvB,OAAO,KAAK,EAAE,UAAU,EAAE,SAAS,EAAE,cAAc,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"data.d.ts","sourceRoot":"","sources":["../../../src/bind/data.ts"],"names":[],"mappings":"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"}
|
package/dist/src/bind/data.js
CHANGED
|
@@ -14,6 +14,7 @@ import { TreePathType, DatasetStatusType, indexWindowType } from '@elaraai/e3-ty
|
|
|
14
14
|
// so Plan / Table / Sheet recognise it by its East type without either package
|
|
15
15
|
// importing the other's data layer. Paged data is bound: this is its producer.
|
|
16
16
|
import { SeekQueryType, SeekRangeType } from '@elaraai/east-ui';
|
|
17
|
+
import { bindDataIndexed } from './data-indexed.js';
|
|
17
18
|
// ============================================================================
|
|
18
19
|
// Mode + binding descriptor types — shared with the Diff component.
|
|
19
20
|
// ============================================================================
|
|
@@ -371,6 +372,11 @@ export const DataPagedPrimitives = {
|
|
|
371
372
|
// conditional over the record's Dict, which TypeScript cannot resolve against
|
|
372
373
|
// an unbound `T`. The overloads above carry the precise types.
|
|
373
374
|
function bindDataPaged(dataset, options) {
|
|
375
|
+
if (options !== undefined && "indexes" in options) {
|
|
376
|
+
if (!("recordKind" in dataset) || dataset.recordKind !== "record")
|
|
377
|
+
throw new Error("Data.bindPaged with indexes requires an e3.record");
|
|
378
|
+
return bindDataIndexed(dataset, options);
|
|
379
|
+
}
|
|
374
380
|
// A TaskDef binds its output dataset; a DatasetDef binds itself.
|
|
375
381
|
const def = dataset.kind === 'task' ? dataset.output : dataset;
|
|
376
382
|
// The source path comes from the def, so it is statically known by
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"data.js","sourceRoot":"","sources":["../../../src/bind/data.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH;;;;GAIG;AAEH,OAAO,EACH,IAAI,EACJ,SAAS,EACT,QAAQ,EACR,WAAW,EACX,YAAY,EACZ,WAAW,EACX,UAAU,EACV,UAAU,EACV,WAAW,EACX,UAAU,EACV,IAAI,EACJ,IAAI,EACJ,OAAO,GAIV,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,YAAY,EAAE,iBAAiB,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACrF,qEAAqE;AACrE,+EAA+E;AAC/E,+EAA+E;AAC/E,+EAA+E;AAC/E,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"data.js","sourceRoot":"","sources":["../../../src/bind/data.ts"],"names":[],"mappings":"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"}
|
|
@@ -179,7 +179,9 @@ export type RecordOutcomeType = typeof RecordOutcomeType;
|
|
|
179
179
|
* is a write without one. It runs on `mutate`'s channel, so `pending` /
|
|
180
180
|
* `status` / `error` show it too, and a conflict reads the record and its
|
|
181
181
|
* history again before the outcome settles — `read` and `history` then show
|
|
182
|
-
* what the write lost to.
|
|
182
|
+
* what the write lost to. A record also bound with `Data.bindPaged` is read
|
|
183
|
+
* a window at a time and never whole (#1199): its UI task holds no value of
|
|
184
|
+
* it for `read` to serve, and its windows follow the record's revision.
|
|
183
185
|
* @property start - Launch the workspace dataflow without mutating, so tasks
|
|
184
186
|
* that consume this record recompute against its latest committed state.
|
|
185
187
|
* The standalone "Run" affordance — a mutation refreshes the record's own
|
|
@@ -427,9 +429,11 @@ export interface RecordApplyOptions {
|
|
|
427
429
|
*
|
|
428
430
|
* @typeParam K - The record's key type
|
|
429
431
|
* @typeParam V - The record's entry type
|
|
430
|
-
* @typeParam C - The collection's row type
|
|
432
|
+
* @typeParam C - The collection's row type: a row struct, or the entries of
|
|
433
|
+
* groups and loose rows a Sheet edits (`Editing.Types.Entry(G, "lines")`),
|
|
434
|
+
* every arm carrying `idField`
|
|
431
435
|
*/
|
|
432
|
-
export interface RecordApplyInsideOptions<K extends EastType, V extends EastType, C extends
|
|
436
|
+
export interface RecordApplyInsideOptions<K extends EastType, V extends EastType, C extends EastType> {
|
|
433
437
|
/** The key of the entry the collection lives in. */
|
|
434
438
|
entry: SubtypeExprOrValue<K>;
|
|
435
439
|
/** The collection, read out of the entry. */
|
|
@@ -460,16 +464,22 @@ type RecordApplyFunction<B extends EastType> = ExprType<AsyncFunctionType<[B], t
|
|
|
460
464
|
* Each change is its entry's insert, update or delete: the batch's own
|
|
461
465
|
* entry patches, restated by key.
|
|
462
466
|
* - **Over a collection inside one entry** (`{ entry, get, set, idField }`):
|
|
463
|
-
* the rows of one entry's Array field
|
|
464
|
-
*
|
|
465
|
-
*
|
|
467
|
+
* the rows of one entry's Array field — row structs, or a Sheet's entries of
|
|
468
|
+
* groups and loose rows, as `Editing.apply` takes them. The batch is applied
|
|
469
|
+
* to the rows it began from, and the patch is the diff of that entry before
|
|
470
|
+
* and after — it reaches the rows and nothing else.
|
|
466
471
|
*
|
|
467
472
|
* Every patch carries what the entries were when the edit began, and the
|
|
468
473
|
* record checks it: an entry another write moved is a `conflict` naming it
|
|
469
|
-
* and who changed the record last, and nothing is overwritten. A
|
|
470
|
-
*
|
|
471
|
-
*
|
|
472
|
-
*
|
|
474
|
+
* and who changed the record last, and nothing is overwritten. A batch drafted
|
|
475
|
+
* over the record read a window at a time — at a revision, not a snapshot
|
|
476
|
+
* (#1199) — never reads the record whole: its conflict names the record, with
|
|
477
|
+
* what the record said of the write, and each entry the batch changed in the
|
|
478
|
+
* words a moved one takes; the editing session reads them at the record's new
|
|
479
|
+
* revision and keeps those another write moved. A commit is `applied` at the
|
|
480
|
+
* state it wrote; an invalid, failed or timed-out write is `rejected`. A write
|
|
481
|
+
* that got no answer throws, and the session's retry resolves to its commit,
|
|
482
|
+
* if it made one, through the batch's request id.
|
|
473
483
|
*
|
|
474
484
|
* The handle must be bound with the patch mutation — `Record.bind(record,
|
|
475
485
|
* [e3.mutation.patch(record)])` — and the record must be a `Dict`.
|
|
@@ -487,8 +497,8 @@ type RecordApplyFunction<B extends EastType> = ExprType<AsyncFunctionType<[B], t
|
|
|
487
497
|
* @example
|
|
488
498
|
* ```tsx
|
|
489
499
|
* import { DictType, East, IntegerType, StringType, StructType } from "@elaraai/east";
|
|
490
|
-
* import {
|
|
491
|
-
* import { Data, Record } from "@elaraai/e3-ui";
|
|
500
|
+
* import { Box, Reactive, UIComponentType } from "@elaraai/east-ui";
|
|
501
|
+
* import { Data, Record, Sheet } from "@elaraai/e3-ui";
|
|
492
502
|
* import e3 from "@elaraai/e3";
|
|
493
503
|
*
|
|
494
504
|
* const JobType = StructType({ task: StringType, qty: IntegerType });
|
|
@@ -501,15 +511,16 @@ type RecordApplyFunction<B extends EastType> = ExprType<AsyncFunctionType<[B], t
|
|
|
501
511
|
* const rows = $.let(Data.bindPaged(jobs));
|
|
502
512
|
* const record = $.let(Record.bind(jobs, [jobsPatch]));
|
|
503
513
|
* return (
|
|
504
|
-
* <
|
|
505
|
-
*
|
|
506
|
-
*
|
|
507
|
-
*
|
|
508
|
-
*
|
|
509
|
-
*
|
|
510
|
-
*
|
|
511
|
-
*
|
|
512
|
-
*
|
|
514
|
+
* <Box height="360px">
|
|
515
|
+
* <Sheet
|
|
516
|
+
* data={rows}
|
|
517
|
+
* columns={{
|
|
518
|
+
* task: Sheet.column.text(JobType, { header: "Task", width: "220px" }),
|
|
519
|
+
* qty: Sheet.column.integer(JobType, { header: "Qty", width: "96px" }),
|
|
520
|
+
* }}
|
|
521
|
+
* onApply={Record.onApply(record)}
|
|
522
|
+
* />
|
|
523
|
+
* </Box>
|
|
513
524
|
* );
|
|
514
525
|
* }}</Reactive>
|
|
515
526
|
* ));
|
|
@@ -535,12 +546,12 @@ declare function applyToRecord<K extends EastType, V extends EastType>(handle: K
|
|
|
535
546
|
*
|
|
536
547
|
* @typeParam K - The record's key type
|
|
537
548
|
* @typeParam V - The record's entry type
|
|
538
|
-
* @typeParam C - The collection's row type
|
|
549
|
+
* @typeParam C - The collection's row type: a row struct, or entries of groups and loose rows
|
|
539
550
|
* @param handle - The record, bound with its patch mutation
|
|
540
551
|
* @param options - The entry, how its rows are read and replaced, and their identity field
|
|
541
552
|
* @returns An async East function over `Editing.Types.ChangeSet(C)`
|
|
542
553
|
*/
|
|
543
|
-
declare function applyToRecord<K extends EastType, V extends EastType, C extends
|
|
554
|
+
declare function applyToRecord<K extends EastType, V extends EastType, C extends EastType>(handle: KeyedRecordHandle<K, V>, options: RecordApplyInsideOptions<K, V, C>): RecordApplyFunction<ReturnType<typeof Editing.Types.ChangeSet<C>>>;
|
|
544
555
|
/**
|
|
545
556
|
* The Record namespace — reactive record (read + mutate + history) binding for
|
|
546
557
|
* e3 UI tasks, and the Apply that commits an editable collection to a record.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"record.d.ts","sourceRoot":"","sources":["../../../src/bind/record.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH;;;;;;;;;;;;;;;;;;;GAmBG;AAEH,OAAO,EAEH,SAAS,EACT,iBAAiB,EACjB,WAAW,EACX,QAAQ,EAER,YAAY,EACZ,WAAW,EACX,QAAQ,EACR,UAAU,EAEV,UAAU,EACV,UAAU,EACV,WAAW,EAOX,KAAK,QAAQ,EACb,KAAK,QAAQ,EACb,KAAK,kBAAkB,EAC1B,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,iBAAiB,EAAsB,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAChG,OAAO,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAC3C,OAAO,KAAK,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAM1D;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,sBAAsB;;;;;;EAMjC,CAAC;AAEH,sEAAsE;AACtE,MAAM,MAAM,sBAAsB,GAAG,OAAO,sBAAsB,CAAC;AAEnE;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;EAU1B,CAAC;AAEH,+DAA+D;AAC/D,MAAM,MAAM,eAAe,GAAG,OAAO,eAAe,CAAC;AAErD;;;;;;GAMG;AACH,eAAO,MAAM,iBAAiB;;;EAG5B,CAAC;AAEH,iEAAiE;AACjE,MAAM,MAAM,iBAAiB,GAAG,OAAO,iBAAiB,CAAC;AAEzD;;;;;;;;;;;;;;;;;;GAkBG;AACH,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;EAG5B,CAAC;AAEH,iEAAiE;AACjE,MAAM,MAAM,iBAAiB,GAAG,OAAO,iBAAiB,CAAC;AAMzD
|
|
1
|
+
{"version":3,"file":"record.d.ts","sourceRoot":"","sources":["../../../src/bind/record.ts"],"names":[],"mappings":"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"}
|