@svgrid/enterprise 2.7.0 → 3.0.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/README.md +95 -95
- package/dist/ExpressionEditorHarness.svelte.d.ts +2 -2
- package/dist/SvAdvancedFilter.svelte.d.ts +2 -2
- package/dist/SvAlertRuleEditor.svelte.d.ts +2 -2
- package/dist/SvAlertsManager.svelte.d.ts +3 -3
- package/dist/SvAlertsPanel.svelte.d.ts +1 -1
- package/dist/SvAuthGate.svelte +115 -115
- package/dist/SvAuthGate.svelte.d.ts +1 -1
- package/dist/SvBoard.svelte.d.ts +1 -1
- package/dist/SvExportMenu.svelte +553 -553
- package/dist/SvExportMenu.svelte.d.ts +2 -2
- package/dist/SvExpressionEditor.svelte.d.ts +2 -2
- package/dist/SvFileInput.svelte +113 -113
- package/dist/SvGridAlerts.svelte.d.ts +2 -2
- package/dist/SvGridBoard.svelte +2358 -2358
- package/dist/SvGridBulkEditDrawer.svelte.d.ts +1 -1
- package/dist/SvGridEditPanel.svelte +1157 -1157
- package/dist/SvGridEditPanel.svelte.d.ts +3 -3
- package/dist/SvGridMasterDetail.svelte +116 -116
- package/dist/SvGridMasterDetail.svelte.d.ts +1 -1
- package/dist/SvGridScheduler.svelte +5358 -5358
- package/dist/SvImportDialog.svelte +1020 -1020
- package/dist/SvImportDialog.svelte.d.ts +2 -2
- package/dist/SvLookupInput.svelte +180 -180
- package/dist/SvLookupInput.svelte.d.ts +1 -1
- package/dist/SvPivotDesigner.svelte +1990 -1990
- package/dist/SvPivotDesigner.svelte.d.ts +2 -2
- package/dist/SvRecordDetail.svelte.d.ts +1 -1
- package/dist/SvSchedule.svelte.d.ts +1 -1
- package/dist/SvSchemaChart.svelte +234 -234
- package/dist/SvSchemaChart.svelte.d.ts +2 -2
- package/dist/SvSchemaDashboard.svelte +130 -130
- package/dist/SvSchemaDashboard.svelte.d.ts +3 -3
- package/dist/advanced-filter/expr-columns-from-grid.d.ts +1 -1
- package/dist/advanced-filter-enable.js +3 -3
- package/dist/alerts/alert-engine-attach.d.ts +2 -2
- package/dist/alerts/alert-engine-attach.js +3 -3
- package/dist/alerts/alert-engine.d.ts +1 -1
- package/dist/alerts/alert-engine.js +2 -2
- package/dist/alerts/alert-formats.d.ts +1 -1
- package/dist/alerts/alert-formats.js +1 -1
- package/dist/alerts/alert-observer.d.ts +3 -3
- package/dist/alerts/alert-observer.js +1 -1
- package/dist/alerts/alert-storage.d.ts +1 -1
- package/dist/alerts/alert-store.svelte.d.ts +1 -1
- package/dist/alerts/alert-types.d.ts +2 -2
- package/dist/alerts.js +2 -2
- package/dist/board.js +2 -2
- package/dist/cdn/svgrid-enterprise.svelte-external.js +1162 -1145
- package/dist/designer/assets/GridMenus-B1JtIN21.js +8 -0
- package/dist/designer/assets/SvDateRangeInput-C0iCCZ8o.css +1 -0
- package/dist/designer/assets/{SvDateRangeInput-CVn-yqrQ.js → SvDateRangeInput-CjO7nn_x.js} +1 -1
- package/dist/designer/assets/SvDateTimePicker-ByBD_ov6.js +1 -0
- package/dist/designer/assets/SvDateTimePicker-DPv09DIT.css +1 -0
- package/dist/designer/assets/SvField-YDLipR6O.css +1 -0
- package/dist/designer/assets/{SvField-BsqiA5me.js → SvField-cj1PFNgZ.js} +1 -1
- package/dist/designer/assets/{preload-helper-CG0n22O7.js → SvGrid.helpers-BgT-gnCo.js} +1 -1
- package/dist/designer/assets/SvGridCellEditor-0W1L2hJ1.js +2 -0
- package/dist/designer/assets/SvGridChart-DBOR4xcz.js +2 -0
- package/dist/designer/assets/SvGridChart-fkMWeh1J.css +1 -0
- package/dist/designer/assets/SvGridChartPanel-symrhNnR.js +11 -0
- package/dist/designer/assets/SvGridChartView-BmRxq6mU.js +1 -0
- package/dist/designer/assets/SvGridChartView-DUc-1RUf.css +1 -0
- package/dist/designer/assets/SvGridDropdown-Bb3HH2Aj.js +1 -0
- package/dist/designer/assets/SvGridDropdown-CcidB3rm.css +1 -0
- package/dist/designer/assets/SvListBox-1oUF6Iav.js +110 -0
- package/dist/designer/assets/SvListBox-BXfyqy4a.css +1 -0
- package/dist/designer/assets/cell-formatting-wr5wm7US.js +1 -0
- package/dist/designer/assets/chart-DXFganU8.js +1 -0
- package/dist/designer/assets/date-format-DGagAqRc.css +1 -0
- package/dist/designer/assets/{date-format-4DJvNtG2.js → date-format-onlYDsrY.js} +1 -1
- package/dist/designer/assets/export-format-D-eP4b2l.js +6 -0
- package/dist/designer/assets/{index-BvaLmQSd.js → index-C_a9Cj8Y.js} +2984 -141
- package/dist/designer/assets/index-k2stW6L8.css +1 -0
- package/dist/designer/assets/preload-helper-HclGiUj8.js +1 -0
- package/dist/designer/assets/{row-drag-touch-IuJPEt0z.js → row-drag-touch-BdknxBNL.js} +1 -1
- package/dist/designer/assets/src-D9p27OGC.js +58 -0
- package/dist/designer/index.html +22 -22
- package/dist/export-conditional.d.ts +1 -1
- package/dist/export-print.js +19 -19
- package/dist/export-xls.d.ts +2 -2
- package/dist/export.d.ts +2 -2
- package/dist/export.js +7 -7
- package/dist/expressions/builder-tree.d.ts +2 -2
- package/dist/expressions/builder-tree.js +1 -1
- package/dist/expressions/compile.d.ts +1 -1
- package/dist/import.js +1 -1
- package/dist/index.d.ts +53 -53
- package/dist/index.js +50 -50
- package/dist/install.d.ts +4 -4
- package/dist/install.js +11 -11
- package/dist/license.d.ts +3 -2
- package/dist/license.js +9 -4
- package/dist/node/studio.js +124 -115
- package/dist/pivot-chart.d.ts +1 -1
- package/dist/pivot-designer.d.ts +1 -1
- package/dist/pivot-enable.js +3 -3
- package/dist/print.d.ts +1 -1
- package/dist/print.js +4 -4
- package/dist/scheduler-config.d.ts +5 -5
- package/dist/scheduler-freebusy.d.ts +1 -1
- package/dist/scheduler-freebusy.js +1 -1
- package/dist/scheduler.js +2 -2
- package/dist/schema-designer.d.ts +1 -1
- package/dist/schema-designer.js +2 -2
- package/dist/selection-bar.js +2 -2
- package/dist/sources/aggregate.d.ts +1 -1
- package/dist/sources/auth-supabase.js +1 -1
- package/dist/sources/dashboard.d.ts +2 -2
- package/dist/sources/dashboard.js +1 -1
- package/dist/sources/index.d.ts +13 -13
- package/dist/sources/index.js +13 -13
- package/dist/sources/realtime-supabase.js +1 -1
- package/dist/sources/relation-lookup.d.ts +1 -1
- package/dist/sources/relation-lookup.js +1 -1
- package/dist/sources/rest-adapters.d.ts +1 -1
- package/dist/sources/rest-adapters.js +1 -1
- package/dist/sources/rest.d.ts +2 -2
- package/dist/sources/rest.js +3 -3
- package/dist/sources/supabase.d.ts +2 -2
- package/dist/sources/supabase.js +3 -3
- package/dist/sources/with-entity-rules.d.ts +1 -1
- package/dist/sources/with-entity-rules.js +1 -1
- package/dist/sources/with-relation-labels.d.ts +1 -1
- package/dist/studio/emit-project.js +2161 -2127
- package/dist/studio/emit-schema.js +369 -369
- package/dist/studio/index.d.ts +1 -1
- package/dist/studio/index.js +1 -1
- package/dist/studio/introspect-db.js +45 -45
- package/dist/studio/project.d.ts +10 -0
- package/dist/studio/samples/crm.js +6 -6
- package/dist/studio/samples/fleet.js +7 -7
- package/dist/studio/samples/insurance.js +9 -9
- package/dist/studio/samples/inventory.js +12 -12
- package/dist/studio/samples/projects.js +5 -5
- package/dist/studio/samples/support.js +8 -8
- package/dist/studio/scaffold-app.js +104 -104
- package/dist/studio/scaffold.js +151 -151
- package/dist/studio/ui-components.d.ts +7 -0
- package/dist/studio/ui-components.js +35 -0
- package/dist/sveltekit/in-memory.d.ts +3 -3
- package/dist/sveltekit/in-memory.js +4 -4
- package/dist/sveltekit/index.d.ts +6 -6
- package/dist/sveltekit/index.js +5 -5
- package/dist/sveltekit/query-plan.d.ts +1 -1
- package/dist/sveltekit/sql-source.d.ts +4 -4
- package/dist/sveltekit/sql-source.js +4 -4
- package/dist/sveltekit/sql.d.ts +1 -1
- package/dist/sveltekit/transport.d.ts +2 -2
- package/dist/sveltekit/transport.js +1 -1
- package/dist/upgrade-prompt.js +25 -25
- package/dist/version.d.ts +1 -1
- package/dist/version.js +1 -1
- package/package.json +6 -3
- package/dist/designer/assets/GridMenus-Cgilexpk.js +0 -8
- package/dist/designer/assets/SvDateRangeInput-BV5OXYQ2.css +0 -1
- package/dist/designer/assets/SvDateTimePicker-BdioTrJQ.js +0 -1
- package/dist/designer/assets/SvDateTimePicker-CY8TK4BT.css +0 -1
- package/dist/designer/assets/SvField-BF-9TJSd.css +0 -1
- package/dist/designer/assets/SvGridCellEditor-dLY7_kk9.js +0 -2
- package/dist/designer/assets/SvGridChart-BEDNTdc5.js +0 -2
- package/dist/designer/assets/SvGridChart-Vu4Nvjiv.css +0 -1
- package/dist/designer/assets/SvGridChartPanel-x3lzSxuf.js +0 -10
- package/dist/designer/assets/SvGridChartView-CAKhPELi.js +0 -1
- package/dist/designer/assets/SvGridChartView-DX9HfkBR.css +0 -1
- package/dist/designer/assets/SvGridDropdown-CAYG7Y-O.js +0 -1
- package/dist/designer/assets/SvGridDropdown-Crwb2P3Q.css +0 -1
- package/dist/designer/assets/SvListBox-CVYQcLX9.js +0 -1
- package/dist/designer/assets/SvListBox-DgN8kvjt.css +0 -1
- package/dist/designer/assets/chart-DHEgt4lN.js +0 -1
- package/dist/designer/assets/date-format-Dzy4mTGh.css +0 -1
- package/dist/designer/assets/export-format-DwjuTfrQ.js +0 -6
- package/dist/designer/assets/index-Cp7fDJ3b.css +0 -1
- package/dist/designer/assets/js-scroller.svelte-Bhxqb3-c.js +0 -110
- package/dist/designer/assets/src-7qOYsBug.js +0 -2896
- package/dist/designer/assets/src-B7DNcoQK.css +0 -1
- package/dist/studio/node_modules/.vite/vitest/be65d27ae088a0e03fd8e1331d90b01649464cb6/_svelte_metadata.json +0 -1
- package/dist/studio/node_modules/.vite/vitest/be65d27ae088a0e03fd8e1331d90b01649464cb6/deps___vitest__/_metadata.json +0 -178
- package/dist/studio/node_modules/.vite/vitest/be65d27ae088a0e03fd8e1331d90b01649464cb6/deps___vitest__/attachments-BOv1rBKp.js +0 -3875
- package/dist/studio/node_modules/.vite/vitest/be65d27ae088a0e03fd8e1331d90b01649464cb6/deps___vitest__/attachments-BOv1rBKp.js.map +0 -1
- package/dist/studio/node_modules/.vite/vitest/be65d27ae088a0e03fd8e1331d90b01649464cb6/deps___vitest__/constants-B9vgIdCd.js +0 -21
- package/dist/studio/node_modules/.vite/vitest/be65d27ae088a0e03fd8e1331d90b01649464cb6/deps___vitest__/constants-B9vgIdCd.js.map +0 -1
- package/dist/studio/node_modules/.vite/vitest/be65d27ae088a0e03fd8e1331d90b01649464cb6/deps___vitest__/dev-T1qbW_qD.js +0 -1938
- package/dist/studio/node_modules/.vite/vitest/be65d27ae088a0e03fd8e1331d90b01649464cb6/deps___vitest__/dev-T1qbW_qD.js.map +0 -1
- package/dist/studio/node_modules/.vite/vitest/be65d27ae088a0e03fd8e1331d90b01649464cb6/deps___vitest__/events-Bo11SfVK.js +0 -205
- package/dist/studio/node_modules/.vite/vitest/be65d27ae088a0e03fd8e1331d90b01649464cb6/deps___vitest__/events-Bo11SfVK.js.map +0 -1
- package/dist/studio/node_modules/.vite/vitest/be65d27ae088a0e03fd8e1331d90b01649464cb6/deps___vitest__/flags-X7D4vfrZ.js +0 -18
- package/dist/studio/node_modules/.vite/vitest/be65d27ae088a0e03fd8e1331d90b01649464cb6/deps___vitest__/flags-X7D4vfrZ.js.map +0 -1
- package/dist/studio/node_modules/.vite/vitest/be65d27ae088a0e03fd8e1331d90b01649464cb6/deps___vitest__/hydration-oyUje5i1.js +0 -264
- package/dist/studio/node_modules/.vite/vitest/be65d27ae088a0e03fd8e1331d90b01649464cb6/deps___vitest__/hydration-oyUje5i1.js.map +0 -1
- package/dist/studio/node_modules/.vite/vitest/be65d27ae088a0e03fd8e1331d90b01649464cb6/deps___vitest__/legacy-client-DeSQgSFm.js +0 -697
- package/dist/studio/node_modules/.vite/vitest/be65d27ae088a0e03fd8e1331d90b01649464cb6/deps___vitest__/legacy-client-DeSQgSFm.js.map +0 -1
- package/dist/studio/node_modules/.vite/vitest/be65d27ae088a0e03fd8e1331d90b01649464cb6/deps___vitest__/package.json +0 -3
- package/dist/studio/node_modules/.vite/vitest/be65d27ae088a0e03fd8e1331d90b01649464cb6/deps___vitest__/svelte.js +0 -134
- package/dist/studio/node_modules/.vite/vitest/be65d27ae088a0e03fd8e1331d90b01649464cb6/deps___vitest__/svelte.js.map +0 -1
- package/dist/studio/node_modules/.vite/vitest/be65d27ae088a0e03fd8e1331d90b01649464cb6/deps___vitest__/svelte_animate.js +0 -55
- package/dist/studio/node_modules/.vite/vitest/be65d27ae088a0e03fd8e1331d90b01649464cb6/deps___vitest__/svelte_animate.js.map +0 -1
- package/dist/studio/node_modules/.vite/vitest/be65d27ae088a0e03fd8e1331d90b01649464cb6/deps___vitest__/svelte_attachments.js +0 -2
- package/dist/studio/node_modules/.vite/vitest/be65d27ae088a0e03fd8e1331d90b01649464cb6/deps___vitest__/svelte_compiler.js +0 -46843
- package/dist/studio/node_modules/.vite/vitest/be65d27ae088a0e03fd8e1331d90b01649464cb6/deps___vitest__/svelte_compiler.js.map +0 -1
- package/dist/studio/node_modules/.vite/vitest/be65d27ae088a0e03fd8e1331d90b01649464cb6/deps___vitest__/svelte_easing.js +0 -237
- package/dist/studio/node_modules/.vite/vitest/be65d27ae088a0e03fd8e1331d90b01649464cb6/deps___vitest__/svelte_easing.js.map +0 -1
- package/dist/studio/node_modules/.vite/vitest/be65d27ae088a0e03fd8e1331d90b01649464cb6/deps___vitest__/svelte_events.js +0 -2
- package/dist/studio/node_modules/.vite/vitest/be65d27ae088a0e03fd8e1331d90b01649464cb6/deps___vitest__/svelte_internal.js +0 -4
- package/dist/studio/node_modules/.vite/vitest/be65d27ae088a0e03fd8e1331d90b01649464cb6/deps___vitest__/svelte_internal.js.map +0 -1
- package/dist/studio/node_modules/.vite/vitest/be65d27ae088a0e03fd8e1331d90b01649464cb6/deps___vitest__/svelte_internal_client.js +0 -7
- package/dist/studio/node_modules/.vite/vitest/be65d27ae088a0e03fd8e1331d90b01649464cb6/deps___vitest__/svelte_internal_disclose-version.js +0 -4
- package/dist/studio/node_modules/.vite/vitest/be65d27ae088a0e03fd8e1331d90b01649464cb6/deps___vitest__/svelte_internal_disclose-version.js.map +0 -1
- package/dist/studio/node_modules/.vite/vitest/be65d27ae088a0e03fd8e1331d90b01649464cb6/deps___vitest__/svelte_internal_flags_async.js +0 -5
- package/dist/studio/node_modules/.vite/vitest/be65d27ae088a0e03fd8e1331d90b01649464cb6/deps___vitest__/svelte_internal_flags_async.js.map +0 -1
- package/dist/studio/node_modules/.vite/vitest/be65d27ae088a0e03fd8e1331d90b01649464cb6/deps___vitest__/svelte_internal_flags_legacy.js +0 -5
- package/dist/studio/node_modules/.vite/vitest/be65d27ae088a0e03fd8e1331d90b01649464cb6/deps___vitest__/svelte_internal_flags_legacy.js.map +0 -1
- package/dist/studio/node_modules/.vite/vitest/be65d27ae088a0e03fd8e1331d90b01649464cb6/deps___vitest__/svelte_internal_flags_tracing.js +0 -5
- package/dist/studio/node_modules/.vite/vitest/be65d27ae088a0e03fd8e1331d90b01649464cb6/deps___vitest__/svelte_internal_flags_tracing.js.map +0 -1
- package/dist/studio/node_modules/.vite/vitest/be65d27ae088a0e03fd8e1331d90b01649464cb6/deps___vitest__/svelte_internal_server.js +0 -6
- package/dist/studio/node_modules/.vite/vitest/be65d27ae088a0e03fd8e1331d90b01649464cb6/deps___vitest__/svelte_legacy.js +0 -83
- package/dist/studio/node_modules/.vite/vitest/be65d27ae088a0e03fd8e1331d90b01649464cb6/deps___vitest__/svelte_legacy.js.map +0 -1
- package/dist/studio/node_modules/.vite/vitest/be65d27ae088a0e03fd8e1331d90b01649464cb6/deps___vitest__/svelte_motion.js +0 -559
- package/dist/studio/node_modules/.vite/vitest/be65d27ae088a0e03fd8e1331d90b01649464cb6/deps___vitest__/svelte_motion.js.map +0 -1
- package/dist/studio/node_modules/.vite/vitest/be65d27ae088a0e03fd8e1331d90b01649464cb6/deps___vitest__/svelte_reactivity.js +0 -24
- package/dist/studio/node_modules/.vite/vitest/be65d27ae088a0e03fd8e1331d90b01649464cb6/deps___vitest__/svelte_reactivity.js.map +0 -1
- package/dist/studio/node_modules/.vite/vitest/be65d27ae088a0e03fd8e1331d90b01649464cb6/deps___vitest__/svelte_reactivity_window.js +0 -122
- package/dist/studio/node_modules/.vite/vitest/be65d27ae088a0e03fd8e1331d90b01649464cb6/deps___vitest__/svelte_reactivity_window.js.map +0 -1
- package/dist/studio/node_modules/.vite/vitest/be65d27ae088a0e03fd8e1331d90b01649464cb6/deps___vitest__/svelte_server.js +0 -2
- package/dist/studio/node_modules/.vite/vitest/be65d27ae088a0e03fd8e1331d90b01649464cb6/deps___vitest__/svelte_store.js +0 -89
- package/dist/studio/node_modules/.vite/vitest/be65d27ae088a0e03fd8e1331d90b01649464cb6/deps___vitest__/svelte_store.js.map +0 -1
- package/dist/studio/node_modules/.vite/vitest/be65d27ae088a0e03fd8e1331d90b01649464cb6/deps___vitest__/svelte_transition.js +0 -241
- package/dist/studio/node_modules/.vite/vitest/be65d27ae088a0e03fd8e1331d90b01649464cb6/deps___vitest__/svelte_transition.js.map +0 -1
- package/dist/studio/node_modules/.vite/vitest/be65d27ae088a0e03fd8e1331d90b01649464cb6/deps___vitest__/utils-BbWyXNk1.js +0 -4938
- package/dist/studio/node_modules/.vite/vitest/be65d27ae088a0e03fd8e1331d90b01649464cb6/deps___vitest__/utils-BbWyXNk1.js.map +0 -1
- package/dist/studio/node_modules/.vite/vitest/be65d27ae088a0e03fd8e1331d90b01649464cb6/deps___vitest__/utils-DI_fC7vt.js +0 -495
- package/dist/studio/node_modules/.vite/vitest/be65d27ae088a0e03fd8e1331d90b01649464cb6/deps___vitest__/utils-DI_fC7vt.js.map +0 -1
- package/dist/studio/node_modules/.vite/vitest/be65d27ae088a0e03fd8e1331d90b01649464cb6/deps___vitest__/validate-Dyr3lQv9.js +0 -190
- package/dist/studio/node_modules/.vite/vitest/be65d27ae088a0e03fd8e1331d90b01649464cb6/deps___vitest__/validate-Dyr3lQv9.js.map +0 -1
- package/dist/studio/node_modules/.vite/vitest/be65d27ae088a0e03fd8e1331d90b01649464cb6/deps___vitest__/version-_9FHH-LF.js +0 -8
- package/dist/studio/node_modules/.vite/vitest/be65d27ae088a0e03fd8e1331d90b01649464cb6/deps___vitest__/version-_9FHH-LF.js.map +0 -1
- package/dist/studio/node_modules/.vite/vitest/be65d27ae088a0e03fd8e1331d90b01649464cb6/deps___vitest__/warnings-CUbSPnyP.js +0 -138
- package/dist/studio/node_modules/.vite/vitest/be65d27ae088a0e03fd8e1331d90b01649464cb6/deps___vitest__/warnings-CUbSPnyP.js.map +0 -1
package/dist/index.js
CHANGED
|
@@ -1,55 +1,55 @@
|
|
|
1
1
|
export { setLicenseKey, clearLicenseKey, getLicenseKey, isLicenseKeySet, hasValidLicense, assertEnterpriseLicensed, nudgeEnterprise, checkLicenseKey,
|
|
2
2
|
// Trial expiry. The built-in card already appears on its own once a trial
|
|
3
3
|
// lapses; these are for hosts that would rather render their own banner.
|
|
4
|
-
isLicenseExpired, getLicenseExpiry, } from './license';
|
|
5
|
-
export { parseLicenseExpiry } from './license-core';
|
|
6
|
-
export { exportGrid, copyExportToClipboard, } from './export';
|
|
4
|
+
isLicenseExpired, getLicenseExpiry, } from './license.js';
|
|
5
|
+
export { parseLicenseExpiry } from './license-core.js';
|
|
6
|
+
export { exportGrid, copyExportToClipboard, } from './export.js';
|
|
7
7
|
export { default as SvExportMenu } from './SvExportMenu.svelte';
|
|
8
|
-
export { buildPdfDocDefinition } from './export-pdf';
|
|
9
|
-
export { printGrid } from './print';
|
|
10
|
-
export { importData, readImportMatrix, mapImportMatrix, mapImportMatrixAsync, autoMapColumns, inferImportColumnTypes, } from './import';
|
|
8
|
+
export { buildPdfDocDefinition } from './export-pdf.js';
|
|
9
|
+
export { printGrid } from './print.js';
|
|
10
|
+
export { importData, readImportMatrix, mapImportMatrix, mapImportMatrixAsync, autoMapColumns, inferImportColumnTypes, } from './import.js';
|
|
11
11
|
export { default as SvImportDialog } from './SvImportDialog.svelte';
|
|
12
|
-
export { installEnterprise } from './install';
|
|
12
|
+
export { installEnterprise } from './install.js';
|
|
13
13
|
// Scheduler / calendar view (Pro). `enableSchedulerView()` registers the
|
|
14
14
|
// renderer so `<SvGrid scheduler={...}>` shows a Month/Week/Day/Agenda calendar.
|
|
15
15
|
// The pure model helpers + config types live in @svgrid/grid; import them from there.
|
|
16
|
-
export { enableSchedulerView, SvGridScheduler } from './scheduler';
|
|
16
|
+
export { enableSchedulerView, SvGridScheduler } from './scheduler.js';
|
|
17
17
|
// Kanban board view (Pro). `enableBoardView()` registers the renderer so
|
|
18
18
|
// `<SvGrid board={...}>` shows lanes of cards. Config types live in @svgrid/grid.
|
|
19
|
-
export { enableBoardView, SvGridBoard } from './board';
|
|
19
|
+
export { enableBoardView, SvGridBoard } from './board.js';
|
|
20
20
|
// Bulk-action bar over the row selection (Pro). `enableSelectionBar()` registers
|
|
21
21
|
// the renderer so `<SvGrid selectionBar={...}>` floats a bar over the grid while
|
|
22
22
|
// rows are selected. The prop + its config types live in @svgrid/grid.
|
|
23
|
-
export { enableSelectionBar, SvGridSelectionBar } from './selection-bar';
|
|
23
|
+
export { enableSelectionBar, SvGridSelectionBar } from './selection-bar.js';
|
|
24
24
|
// Bulk edit engine behind the bar's `editFields` button - exported so an app
|
|
25
25
|
// can drive the same write from its own UI.
|
|
26
|
-
export { applyBulkEdit, bulkEditableFields, bulkEditInitialValues, coerceBulkValue } from './bulk-edit';
|
|
26
|
+
export { applyBulkEdit, bulkEditableFields, bulkEditInitialValues, coerceBulkValue } from './bulk-edit.js';
|
|
27
27
|
export { default as SvGridBulkEditDrawer } from './SvGridBulkEditDrawer.svelte';
|
|
28
28
|
// In-grid pivot mode (Pro). `enablePivot()` registers the pivot engine so
|
|
29
29
|
// `<SvGrid pivot={...}>` renders a pivot table in place of the flat table.
|
|
30
|
-
export { enablePivot } from './pivot-enable';
|
|
31
|
-
export { enableAdvancedFilter } from './advanced-filter-enable';
|
|
30
|
+
export { enablePivot } from './pivot-enable.js';
|
|
31
|
+
export { enableAdvancedFilter } from './advanced-filter-enable.js';
|
|
32
32
|
export { default as SvAdvancedFilter } from './SvAdvancedFilter.svelte';
|
|
33
|
-
export { exprColumnsFromGrid, } from './advanced-filter/expr-columns-from-grid';
|
|
34
|
-
export { compilePredicate, compileScalar, } from './expressions/compile';
|
|
35
|
-
export { buildDependencyGraph, topoOrder, hasCycle, requiredStart, cascade, violations, } from './scheduler-dependencies';
|
|
36
|
-
export { expandAssignments, resourceLoad, overallocations, assignedMinutes, } from './scheduler-assignments';
|
|
37
|
-
export { columnSummaries, sumReducer, countReducer, busyMinutesReducer, } from './scheduler-summary';
|
|
38
|
-
export { buildAxis, timeToX, xToTime, resolveZoom, zoomPresets, } from './scheduler-axis';
|
|
39
|
-
export { buildResourceRows, visibleResourceIds, } from './scheduler-resource-tree';
|
|
40
|
-
export { heatCells, heatPeak } from './scheduler-heatmap';
|
|
41
|
-
export { respectsBuffer, withinDurationBounds, afterLead, } from './scheduler-booking';
|
|
42
|
-
export { availableSlots, mergeIntervals, subtractIntervals, } from './scheduler-slots';
|
|
43
|
-
export { mergeBusy, commonFree } from './scheduler-freebusy';
|
|
44
|
-
export { createStagedEditing, } from './staged-editing';
|
|
45
|
-
export { createScheduler, parseCron, cronMatches, cronMatchesParsed, isScheduleDue, nextRun, CRON_PRESETS, } from './scheduling';
|
|
46
|
-
export { dismissUnlicensedNudge } from './watermark';
|
|
47
|
-
export { showUpgradePrompt, dismissUpgradePrompt, } from './upgrade-prompt';
|
|
48
|
-
export { createPivotModel, pivotAggregators, filterCollapsedPivotRows, } from './pivot';
|
|
49
|
-
export { titleCase, resolveIdField, schemaToColumns, schemaToFormFields, isFieldHidden, validateField, applyComputed, validateEntity, } from './schema';
|
|
50
|
-
export { planQuery, coerce, createInMemoryDataSource, createKitDataSource, createKitHandlers, createSqlDataSource, planToSql, } from './sveltekit';
|
|
51
|
-
export { createSupabaseDataSource, createRestDataSource, offsetLimitAdapter, dummyJsonAdapter, jsonServerAdapter, introspectSupabaseTable, listSupabaseTables, createSupabaseRealtime, createRelationLookup, createSupabaseAuth, aggregateRows, chartFieldsFromSchema, normalizeFilters, buildEntitySchema, pickLabelField, linkRelationLabels, withEntityRules, withRelationLabels, reduceValue, kpiSeries, sparklinePoints, seriesDelta, formatKpiValue, dashboardFromSchema, } from './sources';
|
|
52
|
-
export { buildInitialValues, controlKind, editMode, evalValidationRules, fieldState, sectionVisible, hasFieldConditions, rowId, stripHiddenValues, toSubmitValues, validateAll, visibleFormFields, } from './edit-panel';
|
|
33
|
+
export { exprColumnsFromGrid, } from './advanced-filter/expr-columns-from-grid.js';
|
|
34
|
+
export { compilePredicate, compileScalar, } from './expressions/compile.js';
|
|
35
|
+
export { buildDependencyGraph, topoOrder, hasCycle, requiredStart, cascade, violations, } from './scheduler-dependencies.js';
|
|
36
|
+
export { expandAssignments, resourceLoad, overallocations, assignedMinutes, } from './scheduler-assignments.js';
|
|
37
|
+
export { columnSummaries, sumReducer, countReducer, busyMinutesReducer, } from './scheduler-summary.js';
|
|
38
|
+
export { buildAxis, timeToX, xToTime, resolveZoom, zoomPresets, } from './scheduler-axis.js';
|
|
39
|
+
export { buildResourceRows, visibleResourceIds, } from './scheduler-resource-tree.js';
|
|
40
|
+
export { heatCells, heatPeak } from './scheduler-heatmap.js';
|
|
41
|
+
export { respectsBuffer, withinDurationBounds, afterLead, } from './scheduler-booking.js';
|
|
42
|
+
export { availableSlots, mergeIntervals, subtractIntervals, } from './scheduler-slots.js';
|
|
43
|
+
export { mergeBusy, commonFree } from './scheduler-freebusy.js';
|
|
44
|
+
export { createStagedEditing, } from './staged-editing.js';
|
|
45
|
+
export { createScheduler, parseCron, cronMatches, cronMatchesParsed, isScheduleDue, nextRun, CRON_PRESETS, } from './scheduling.js';
|
|
46
|
+
export { dismissUnlicensedNudge } from './watermark.js';
|
|
47
|
+
export { showUpgradePrompt, dismissUpgradePrompt, } from './upgrade-prompt.js';
|
|
48
|
+
export { createPivotModel, pivotAggregators, filterCollapsedPivotRows, } from './pivot.js';
|
|
49
|
+
export { titleCase, resolveIdField, schemaToColumns, schemaToFormFields, isFieldHidden, validateField, applyComputed, validateEntity, } from './schema.js';
|
|
50
|
+
export { planQuery, coerce, createInMemoryDataSource, createKitDataSource, createKitHandlers, createSqlDataSource, planToSql, } from './sveltekit/index.js';
|
|
51
|
+
export { createSupabaseDataSource, createRestDataSource, offsetLimitAdapter, dummyJsonAdapter, jsonServerAdapter, introspectSupabaseTable, listSupabaseTables, createSupabaseRealtime, createRelationLookup, createSupabaseAuth, aggregateRows, chartFieldsFromSchema, normalizeFilters, buildEntitySchema, pickLabelField, linkRelationLabels, withEntityRules, withRelationLabels, reduceValue, kpiSeries, sparklinePoints, seriesDelta, formatKpiValue, dashboardFromSchema, } from './sources/index.js';
|
|
52
|
+
export { buildInitialValues, controlKind, editMode, evalValidationRules, fieldState, sectionVisible, hasFieldConditions, rowId, stripHiddenValues, toSubmitValues, validateAll, visibleFormFields, } from './edit-panel.js';
|
|
53
53
|
export { default as SvGridEditPanel } from './SvGridEditPanel.svelte';
|
|
54
54
|
export { default as SvLookupInput } from './SvLookupInput.svelte';
|
|
55
55
|
export { default as SvFileInput } from './SvFileInput.svelte';
|
|
@@ -59,7 +59,7 @@ export { default as SvSchemaDashboard } from './SvSchemaDashboard.svelte';
|
|
|
59
59
|
export { default as SvBoard } from './SvBoard.svelte';
|
|
60
60
|
export { default as SvSchedule } from './SvSchedule.svelte';
|
|
61
61
|
export { default as SvRecordDetail } from './SvRecordDetail.svelte';
|
|
62
|
-
export { FIELD_TYPES, blankField, addField, removeField, updateField, moveField, validateSchema, isSchemaValid, sampleRows, } from './schema-designer';
|
|
62
|
+
export { FIELD_TYPES, blankField, addField, removeField, updateField, moveField, validateSchema, isSchemaValid, sampleRows, } from './schema-designer.js';
|
|
63
63
|
// NOTE: The visual designer components (SvSchemaDesigner, SvStudioDesigner) are
|
|
64
64
|
// the commercial "SvGrid Studio" seller. They live entirely in the PRIVATE
|
|
65
65
|
// website repo (website/src/lib/designer), NOT in this public package - they
|
|
@@ -67,36 +67,36 @@ export { FIELD_TYPES, blankField, addField, removeField, updateField, moveField,
|
|
|
67
67
|
// the MCP server depends on it.
|
|
68
68
|
// The Studio project model + codegen (also on the pure `@svgrid/enterprise/studio`
|
|
69
69
|
// subpath) - re-exported so the designer and its model come from one import.
|
|
70
|
-
export { createProject, defaultScreenFor, emitStudioProject, emitStudioAppBundle, emitStudioApp, sampleApps, getSampleApp, starterProject, liveDataSamples, getLiveDataSample, starterDatasets, getStarterDataset, crudSuiteScreens, addCrudSuite, crudAppFromSchemas, introspectJson, sanitizeStudioProject, buildStudioBugReport, addBlock, addBlockAt, removeBlock, moveBlock, reorderBlock, updateBlock, addScreen, removeScreen, updateScreen, duplicateScreen, reorderScreen, insertBlock, addEntity, removeEntity, updateEntity, formPlan, setEntityForm, setFormColumns, addFormSection, updateFormSection, removeFormSection, moveFormSection, moveFormField, moveFormFields, setFieldConditions, updateEntityField, setFieldInput, setFieldHidden, formControlsFor, formControlSettings, suggestFormSections, setDataSource, defaultEntitySource, setEntityDataSource, entityDataSource, setTheme, setThemePreset, setShell, sanitizeProject, screenFromTemplate, addScreenFromTemplate, addFreestandingScreen, serializeProject, parseProject, blockPalette, validateProject, isProjectValid, entityOf, studioThemes, defaultStudioTheme, getStudioTheme, resolveThemeTokens, isDarkTheme, themeStyleString, } from './studio';
|
|
71
|
-
export { buildConnectionString, parseConnectionString, redactConnectionString, isFileDialect, DRIVER_PACKAGE, DEFAULT_PORT, countTableRows, probeConnection, } from './studio';
|
|
72
|
-
export { buildDisplayRows, isDetailRow, toggleExpanded, } from './master-detail';
|
|
70
|
+
export { createProject, defaultScreenFor, emitStudioProject, emitStudioAppBundle, emitStudioApp, sampleApps, getSampleApp, starterProject, liveDataSamples, getLiveDataSample, starterDatasets, getStarterDataset, crudSuiteScreens, addCrudSuite, crudAppFromSchemas, introspectJson, sanitizeStudioProject, buildStudioBugReport, addBlock, addBlockAt, removeBlock, moveBlock, reorderBlock, updateBlock, addScreen, removeScreen, updateScreen, duplicateScreen, reorderScreen, insertBlock, addEntity, removeEntity, updateEntity, formPlan, setEntityForm, setFormColumns, addFormSection, updateFormSection, removeFormSection, moveFormSection, moveFormField, moveFormFields, setFieldConditions, updateEntityField, setFieldInput, setFieldHidden, formControlsFor, formControlSettings, suggestFormSections, setDataSource, defaultEntitySource, setEntityDataSource, entityDataSource, setTheme, setThemePreset, setShell, sanitizeProject, screenFromTemplate, addScreenFromTemplate, addFreestandingScreen, serializeProject, parseProject, blockPalette, validateProject, isProjectValid, entityOf, studioThemes, defaultStudioTheme, getStudioTheme, resolveThemeTokens, isDarkTheme, themeStyleString, } from './studio/index.js';
|
|
71
|
+
export { buildConnectionString, parseConnectionString, redactConnectionString, isFileDialect, DRIVER_PACKAGE, DEFAULT_PORT, countTableRows, probeConnection, } from './studio/index.js';
|
|
72
|
+
export { buildDisplayRows, isDetailRow, toggleExpanded, } from './master-detail.js';
|
|
73
73
|
export { default as SvGridMasterDetail } from './SvGridMasterDetail.svelte';
|
|
74
74
|
export { default as SvPivotDesigner } from './SvPivotDesigner.svelte';
|
|
75
|
-
export { ALL_AGGREGATORS, AGG_LABEL, EMPTY_LAYOUT, defaultLayoutFor, } from './pivot-designer';
|
|
75
|
+
export { ALL_AGGREGATORS, AGG_LABEL, EMPTY_LAYOUT, defaultLayoutFor, } from './pivot-designer.js';
|
|
76
76
|
// The AI helpers (setAIProvider, aiFilter, aiSmartFill, aiSummarize, aiClassify,
|
|
77
77
|
// aiExport, aiFindAnomalies, aiChart, enableAiCharting, ...) are now BUILT-IN and
|
|
78
78
|
// FREE in @svgrid/grid - import them from there. Enterprise only registers its
|
|
79
79
|
// export engine so AI-planned Excel/PDF exports can run (see install.ts).
|
|
80
|
-
export { pivotToChartSpec } from './pivot-chart';
|
|
80
|
+
export { pivotToChartSpec } from './pivot-chart.js';
|
|
81
81
|
// Expression / query language (Pro). One predicate/scalar/change model that
|
|
82
82
|
// powers alerts (and, in time, styled + calculated columns). Leaf comparisons
|
|
83
83
|
// reuse the grid's own `applyExcelFilter`, so operators match the filter row.
|
|
84
|
-
export { evaluatePredicate, evaluateScalar, evaluateChange, BUILTIN_FUNCTION_NAMES, isBuiltinFunction, } from './expressions/evaluate';
|
|
85
|
-
export { parsePredicate, stringifyPredicate, stringifyScalar, validateExpression, collectColumnRefs, ExpressionParseError, } from './expressions/parse';
|
|
86
|
-
export { OPERATORS, operatorMeta, operatorsForType, isValueless, isSetOperator, isRangeOperator, columnById, resolveColumnRef, columnLabel, columnRefText, } from './expressions/expression-columns';
|
|
84
|
+
export { evaluatePredicate, evaluateScalar, evaluateChange, BUILTIN_FUNCTION_NAMES, isBuiltinFunction, } from './expressions/evaluate.js';
|
|
85
|
+
export { parsePredicate, stringifyPredicate, stringifyScalar, validateExpression, collectColumnRefs, ExpressionParseError, } from './expressions/parse.js';
|
|
86
|
+
export { OPERATORS, operatorMeta, operatorsForType, isValueless, isSetOperator, isRangeOperator, columnById, resolveColumnRef, columnLabel, columnRefText, } from './expressions/expression-columns.js';
|
|
87
87
|
export { default as SvExpressionEditor } from './SvExpressionEditor.svelte';
|
|
88
88
|
// Alert Rules engine (Pro). Declarative "when this holds / this moves -> toast /
|
|
89
89
|
// badge / highlight / flash / prevent-edit / log". Authored at runtime,
|
|
90
90
|
// persisted, shareable. Surfacing reuses the grid's toast + conditional-format
|
|
91
91
|
// engines; `<SvGridAlerts>` is the runtime overlay the consumer mounts.
|
|
92
|
-
export { enableAlerts } from './alerts';
|
|
93
|
-
export { createAlertEngine, renderTemplate, } from './alerts/alert-engine';
|
|
94
|
-
export { attachAlertEngine, applyAlertEvents, } from './alerts/alert-engine-attach';
|
|
95
|
-
export { memoryAlertRules, localStorageAlertRules, createAlertRules, } from './alerts/alert-storage';
|
|
96
|
-
export { createAlertObserver, } from './alerts/alert-observer';
|
|
97
|
-
export { createAlertScheduler, } from './alerts/alert-scheduler';
|
|
98
|
-
export { toConditionalFormats, rulesToConditionalFormats } from './alerts/alert-formats';
|
|
99
|
-
export { alertStore } from './alerts/alert-store.svelte';
|
|
92
|
+
export { enableAlerts } from './alerts.js';
|
|
93
|
+
export { createAlertEngine, renderTemplate, } from './alerts/alert-engine.js';
|
|
94
|
+
export { attachAlertEngine, applyAlertEvents, } from './alerts/alert-engine-attach.js';
|
|
95
|
+
export { memoryAlertRules, localStorageAlertRules, createAlertRules, } from './alerts/alert-storage.js';
|
|
96
|
+
export { createAlertObserver, } from './alerts/alert-observer.js';
|
|
97
|
+
export { createAlertScheduler, } from './alerts/alert-scheduler.js';
|
|
98
|
+
export { toConditionalFormats, rulesToConditionalFormats } from './alerts/alert-formats.js';
|
|
99
|
+
export { alertStore } from './alerts/alert-store.svelte.js';
|
|
100
100
|
export { default as SvGridAlerts } from './SvGridAlerts.svelte';
|
|
101
101
|
export { default as SvAlertRuleEditor } from './SvAlertRuleEditor.svelte';
|
|
102
102
|
export { default as SvAlertsManager } from './SvAlertsManager.svelte';
|
package/dist/install.d.ts
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import type { RowData, TableFeatures, SvGridApi } from '@svgrid/grid';
|
|
2
|
-
import { type ExportOptions, type ExportResult, type ClipboardExportOptions } from './export';
|
|
3
|
-
import { type PrintOptions } from './print';
|
|
4
|
-
import { type ImportOptions, type ImportResult } from './import';
|
|
2
|
+
import { type ExportOptions, type ExportResult, type ClipboardExportOptions } from './export.js';
|
|
3
|
+
import { type PrintOptions } from './print.js';
|
|
4
|
+
import { type ImportOptions, type ImportResult } from './import.js';
|
|
5
5
|
import { type AIChartOptions, type AIChartPlan, type AIFilterOptions, type AIFilterResult, type AISmartFillOptions, type AISmartFillResult, type AISummarizeOptions, type AISummary, type AIClassifyOptions, type AIClassifyResult, type AIExportOptions, type AIExportPlan, type AIAnomalyOptions, type AIAnomalyResult } from '@svgrid/grid';
|
|
6
|
-
import { type PivotConfig, type PivotResult } from './pivot';
|
|
6
|
+
import { type PivotConfig, type PivotResult } from './pivot.js';
|
|
7
7
|
/** The `api.ai.*` namespace added by the enterprise install. */
|
|
8
8
|
export type EnterpriseAIApi<TData extends RowData> = {
|
|
9
9
|
/** Natural-language -> filter + sort plan (and optionally apply it). */
|
package/dist/install.js
CHANGED
|
@@ -1,17 +1,17 @@
|
|
|
1
|
-
import { exportGrid, copyExportToClipboard, } from './export';
|
|
2
|
-
import { printGrid } from './print';
|
|
3
|
-
import { importData } from './import';
|
|
4
|
-
import { isLicenseKeySet } from './license';
|
|
5
|
-
import { emitUnlicensedNudge } from './watermark';
|
|
1
|
+
import { exportGrid, copyExportToClipboard, } from './export.js';
|
|
2
|
+
import { printGrid } from './print.js';
|
|
3
|
+
import { importData } from './import.js';
|
|
4
|
+
import { isLicenseKeySet } from './license.js';
|
|
5
|
+
import { emitUnlicensedNudge } from './watermark.js';
|
|
6
6
|
// AI helpers are built-in + free in @svgrid/grid now; enterprise just wires them
|
|
7
7
|
// into the Pro API and registers its export engine so AI exports can write xlsx/pdf.
|
|
8
8
|
import { aiFilter, aiSmartFill, aiSummarize, aiClassify, aiExport, aiFindAnomalies, aiChart, enableAiCharting, registerExportProvider, } from '@svgrid/grid';
|
|
9
|
-
import { createPivotModel, } from './pivot';
|
|
10
|
-
import { enableSchedulerView } from './scheduler';
|
|
11
|
-
import { enableBoardView } from './board';
|
|
12
|
-
import { enableSelectionBar } from './selection-bar';
|
|
13
|
-
import { enableAdvancedFilter } from './advanced-filter-enable';
|
|
14
|
-
import { enablePivot } from './pivot-enable';
|
|
9
|
+
import { createPivotModel, } from './pivot.js';
|
|
10
|
+
import { enableSchedulerView } from './scheduler.js';
|
|
11
|
+
import { enableBoardView } from './board.js';
|
|
12
|
+
import { enableSelectionBar } from './selection-bar.js';
|
|
13
|
+
import { enableAdvancedFilter } from './advanced-filter-enable.js';
|
|
14
|
+
import { enablePivot } from './pivot-enable.js';
|
|
15
15
|
/**
|
|
16
16
|
* Augment a SvGridApi instance with Pro methods (`exportData`, `print`,
|
|
17
17
|
* `ai.*`). Mutates and returns the same object so existing references
|
package/dist/license.d.ts
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
|
-
import { type EnterpriseFeatureLabel } from './upgrade-prompt';
|
|
2
|
-
export { checkLicenseKey, type LicenseInfo, type LicenseStatus } from './license-core';
|
|
1
|
+
import { type EnterpriseFeatureLabel } from './upgrade-prompt.js';
|
|
2
|
+
export { checkLicenseKey, type LicenseInfo, type LicenseStatus } from './license-core.js';
|
|
3
|
+
export { dismissUnlicensedNudge } from './watermark.js';
|
|
3
4
|
export declare function setLicenseKey(key: string): void;
|
|
4
5
|
export declare function clearLicenseKey(): void;
|
|
5
6
|
export declare function getLicenseKey(): string | null;
|
package/dist/license.js
CHANGED
|
@@ -18,10 +18,15 @@
|
|
|
18
18
|
// + the upgrade card. Stays a soft gate
|
|
19
19
|
// so a trial ending cannot break a build.
|
|
20
20
|
// any other "SVENTERPRISE-..." -> works silently (paid production)
|
|
21
|
-
import { checkLicenseKey, VALID_PREFIX } from './license-core';
|
|
22
|
-
import { emitUnlicensedNudge } from './watermark';
|
|
23
|
-
import { showUpgradePrompt } from './upgrade-prompt';
|
|
24
|
-
export { checkLicenseKey } from './license-core';
|
|
21
|
+
import { checkLicenseKey, VALID_PREFIX } from './license-core.js';
|
|
22
|
+
import { emitUnlicensedNudge } from './watermark.js';
|
|
23
|
+
import { showUpgradePrompt } from './upgrade-prompt.js';
|
|
24
|
+
export { checkLicenseKey } from './license-core.js';
|
|
25
|
+
// The nudge the key silences, on the same subpath as the key: an app that only
|
|
26
|
+
// wants to set its licence imports `@svgrid/enterprise/license` and never
|
|
27
|
+
// pulls the component barrel (the package has no `sideEffects` flag, so a
|
|
28
|
+
// barrel import carries every module it reaches into the importer's chunk).
|
|
29
|
+
export { dismissUnlicensedNudge } from './watermark.js';
|
|
25
30
|
let currentKey = null;
|
|
26
31
|
let noticedDev = false;
|
|
27
32
|
let noticedExpired = false;
|
package/dist/node/studio.js
CHANGED
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import { defaultThemePreset, getThemePreset, resolveThemeTokens as resolveThemeTokens$1, themePresets } from "@svgrid/grid/themes";
|
|
2
|
-
import { isRangeOperator, isSetOperator, isValuelessOperator } from "@svgrid/grid/filtering";
|
|
3
2
|
//#region src/schema.ts
|
|
4
3
|
/** `first_name` / `firstName` / `first-name` -> `First Name`. */
|
|
5
4
|
function titleCase$2(field) {
|
|
@@ -1130,7 +1129,7 @@ function introspectOpenApi(specText) {
|
|
|
1130
1129
|
}
|
|
1131
1130
|
//#endregion
|
|
1132
1131
|
//#region src/studio/introspect-db.ts
|
|
1133
|
-
function truthy
|
|
1132
|
+
function truthy(v) {
|
|
1134
1133
|
return v === 1 || v === "1" || v === true;
|
|
1135
1134
|
}
|
|
1136
1135
|
function identQuote(name) {
|
|
@@ -1165,7 +1164,7 @@ function fieldFrom(name, rawType, pk, notNull) {
|
|
|
1165
1164
|
}
|
|
1166
1165
|
/** Map catalog rows (aliased name/type/nullable/pk) from information_schema dialects. */
|
|
1167
1166
|
function infoSchemaFields(rows) {
|
|
1168
|
-
return rows.map((r) => fieldFrom(String(r.name), String(r.type ?? ""), truthy
|
|
1167
|
+
return rows.map((r) => fieldFrom(String(r.name), String(r.type ?? ""), truthy(r.pk), !truthy(r.nullable)));
|
|
1169
1168
|
}
|
|
1170
1169
|
/** Map SQLite `PRAGMA table_info` rows (name/type/notnull/pk-as-index). */
|
|
1171
1170
|
function sqliteFields(rows) {
|
|
@@ -2011,112 +2010,6 @@ function scaffoldApp(schemas, options = {}) {
|
|
|
2011
2010
|
return { files };
|
|
2012
2011
|
}
|
|
2013
2012
|
//#endregion
|
|
2014
|
-
//#region src/expressions/expression-columns.ts
|
|
2015
|
-
/**
|
|
2016
|
-
* Column metadata for the expression layer - the small, self-contained operator
|
|
2017
|
-
* catalogue the editor draws from, plus name <-> id resolution for the
|
|
2018
|
-
* `[Bracketed Name]` reference syntax.
|
|
2019
|
-
*
|
|
2020
|
-
* The operator set mirrors the grid's own filter row (text / number / date),
|
|
2021
|
-
* so an expression's operators line up with what a user already knows from the
|
|
2022
|
-
* column menu.
|
|
2023
|
-
*
|
|
2024
|
-
* Identity and input-shape semantics come from the grid's shared catalogue, so
|
|
2025
|
-
* the two surfaces cannot disagree about which operators exist or which need a
|
|
2026
|
-
* chip input / no input / a second value. Labels and ordering stay local on
|
|
2027
|
-
* purpose: the editor leads with `Equals` where the filter menu leads with
|
|
2028
|
-
* `Contains`, and each is right for its context.
|
|
2029
|
-
*/
|
|
2030
|
-
var TEXT = ["text"];
|
|
2031
|
-
var NUM = ["number"];
|
|
2032
|
-
var DATES = ["date", "datetime"];
|
|
2033
|
-
var ALL = [
|
|
2034
|
-
"text",
|
|
2035
|
-
"number",
|
|
2036
|
-
"date",
|
|
2037
|
-
"datetime",
|
|
2038
|
-
"boolean"
|
|
2039
|
-
];
|
|
2040
|
-
/** The full operator catalogue, ordered as the editor should present it. */
|
|
2041
|
-
var OPERATORS = [
|
|
2042
|
-
{
|
|
2043
|
-
value: "equals",
|
|
2044
|
-
label: "Equals",
|
|
2045
|
-
types: ALL
|
|
2046
|
-
},
|
|
2047
|
-
{
|
|
2048
|
-
value: "notEquals",
|
|
2049
|
-
label: "Not equals",
|
|
2050
|
-
types: ALL
|
|
2051
|
-
},
|
|
2052
|
-
{
|
|
2053
|
-
value: "contains",
|
|
2054
|
-
label: "Contains",
|
|
2055
|
-
types: TEXT
|
|
2056
|
-
},
|
|
2057
|
-
{
|
|
2058
|
-
value: "notContains",
|
|
2059
|
-
label: "Not contains",
|
|
2060
|
-
types: TEXT
|
|
2061
|
-
},
|
|
2062
|
-
{
|
|
2063
|
-
value: "startsWith",
|
|
2064
|
-
label: "Starts with",
|
|
2065
|
-
types: TEXT
|
|
2066
|
-
},
|
|
2067
|
-
{
|
|
2068
|
-
value: "endsWith",
|
|
2069
|
-
label: "Ends with",
|
|
2070
|
-
types: TEXT
|
|
2071
|
-
},
|
|
2072
|
-
{
|
|
2073
|
-
value: "regex",
|
|
2074
|
-
label: "Matches regex",
|
|
2075
|
-
types: TEXT
|
|
2076
|
-
},
|
|
2077
|
-
{
|
|
2078
|
-
value: "greaterThan",
|
|
2079
|
-
label: "Greater than",
|
|
2080
|
-
types: [...NUM, ...DATES]
|
|
2081
|
-
},
|
|
2082
|
-
{
|
|
2083
|
-
value: "lessThan",
|
|
2084
|
-
label: "Less than",
|
|
2085
|
-
types: [...NUM, ...DATES]
|
|
2086
|
-
},
|
|
2087
|
-
{
|
|
2088
|
-
value: "between",
|
|
2089
|
-
label: "Between",
|
|
2090
|
-
types: [...NUM, ...DATES]
|
|
2091
|
-
},
|
|
2092
|
-
{
|
|
2093
|
-
value: "in",
|
|
2094
|
-
label: "In",
|
|
2095
|
-
types: ["text", "number"]
|
|
2096
|
-
},
|
|
2097
|
-
{
|
|
2098
|
-
value: "notIn",
|
|
2099
|
-
label: "Not in",
|
|
2100
|
-
types: ["text", "number"]
|
|
2101
|
-
},
|
|
2102
|
-
{
|
|
2103
|
-
value: "isBlank",
|
|
2104
|
-
label: "Is blank",
|
|
2105
|
-
types: ALL
|
|
2106
|
-
},
|
|
2107
|
-
{
|
|
2108
|
-
value: "isNotBlank",
|
|
2109
|
-
label: "Is not blank",
|
|
2110
|
-
types: ALL
|
|
2111
|
-
}
|
|
2112
|
-
].map((op) => ({
|
|
2113
|
-
...op,
|
|
2114
|
-
...isValuelessOperator(op.value) ? { valueless: true } : {},
|
|
2115
|
-
...isSetOperator(op.value) ? { set: true } : {},
|
|
2116
|
-
...isRangeOperator(op.value) ? { range: true } : {}
|
|
2117
|
-
}));
|
|
2118
|
-
new Map(OPERATORS.map((op) => [op.value, op]));
|
|
2119
|
-
//#endregion
|
|
2120
2013
|
//#region src/expressions/parse.ts
|
|
2121
2014
|
/** Every column id referenced anywhere in a predicate (deduped, in order). */
|
|
2122
2015
|
function collectColumnRefs(expr) {
|
|
@@ -11408,7 +11301,8 @@ var GRID_CURATED_PROPS = /* @__PURE__ */ new Set([
|
|
|
11408
11301
|
"conditionalFormats",
|
|
11409
11302
|
"features",
|
|
11410
11303
|
"editable",
|
|
11411
|
-
"enableInlineEditing"
|
|
11304
|
+
"enableInlineEditing",
|
|
11305
|
+
"icons"
|
|
11412
11306
|
]);
|
|
11413
11307
|
/** The Grid's raw prop surface for the "All properties" panel: every extracted SvGrid
|
|
11414
11308
|
* prop the curated controls do NOT already manage. Sorted by group then label. */
|
|
@@ -11423,6 +11317,83 @@ function gridPropSurface() {
|
|
|
11423
11317
|
};
|
|
11424
11318
|
return g.props.filter((p) => !GRID_CURATED_PROPS.has(p.key)).map((p) => ({ ...p })).sort((a, b) => order[a.group ?? "common"] - order[b.group ?? "common"] || a.label.localeCompare(b.label));
|
|
11425
11319
|
}
|
|
11320
|
+
var GRID_ICON_GROUP_RULES = [
|
|
11321
|
+
{
|
|
11322
|
+
label: "Header + column menu",
|
|
11323
|
+
match: (n) => [
|
|
11324
|
+
"sort",
|
|
11325
|
+
"sort-asc",
|
|
11326
|
+
"sort-desc",
|
|
11327
|
+
"filter",
|
|
11328
|
+
"menu",
|
|
11329
|
+
"chevron-down",
|
|
11330
|
+
"chevron-right",
|
|
11331
|
+
"autosize",
|
|
11332
|
+
"columns",
|
|
11333
|
+
"reset"
|
|
11334
|
+
].includes(n)
|
|
11335
|
+
},
|
|
11336
|
+
{
|
|
11337
|
+
label: "Filter operators",
|
|
11338
|
+
match: (n) => n.startsWith("op-")
|
|
11339
|
+
},
|
|
11340
|
+
{
|
|
11341
|
+
label: "Pinning",
|
|
11342
|
+
match: (n) => n === "pin-left" || n === "pin-right" || n === "unpin"
|
|
11343
|
+
},
|
|
11344
|
+
{
|
|
11345
|
+
label: "Rows + grouping",
|
|
11346
|
+
match: (n) => [
|
|
11347
|
+
"group",
|
|
11348
|
+
"group-add",
|
|
11349
|
+
"row-number",
|
|
11350
|
+
"pinned-row-top",
|
|
11351
|
+
"pinned-row-bottom",
|
|
11352
|
+
"drag-handle",
|
|
11353
|
+
"breadcrumb-separator"
|
|
11354
|
+
].includes(n)
|
|
11355
|
+
},
|
|
11356
|
+
{
|
|
11357
|
+
label: "Toolbar + overlays",
|
|
11358
|
+
match: (n) => [
|
|
11359
|
+
"search",
|
|
11360
|
+
"tool-panel",
|
|
11361
|
+
"chart",
|
|
11362
|
+
"advanced-filter",
|
|
11363
|
+
"column-group-caret"
|
|
11364
|
+
].includes(n)
|
|
11365
|
+
},
|
|
11366
|
+
{
|
|
11367
|
+
label: "Pager",
|
|
11368
|
+
match: (n) => n.startsWith("page-")
|
|
11369
|
+
},
|
|
11370
|
+
{
|
|
11371
|
+
label: "Find + move",
|
|
11372
|
+
match: (n) => n.startsWith("find-") || n.startsWith("move-")
|
|
11373
|
+
},
|
|
11374
|
+
{
|
|
11375
|
+
label: "Close + clear",
|
|
11376
|
+
match: (n) => [
|
|
11377
|
+
"x",
|
|
11378
|
+
"close",
|
|
11379
|
+
"clear",
|
|
11380
|
+
"remove"
|
|
11381
|
+
].includes(n)
|
|
11382
|
+
},
|
|
11383
|
+
{
|
|
11384
|
+
label: "Other",
|
|
11385
|
+
match: () => true
|
|
11386
|
+
}
|
|
11387
|
+
];
|
|
11388
|
+
/** Split the grid's icon catalogue into the picker's display groups, in order,
|
|
11389
|
+
* dropping any that came out empty. Takes the names rather than importing them so
|
|
11390
|
+
* the studio metadata module stays free of a runtime dependency on the grid. */
|
|
11391
|
+
function gridIconGroups(names) {
|
|
11392
|
+
return GRID_ICON_GROUP_RULES.map((rule, i) => ({
|
|
11393
|
+
label: rule.label,
|
|
11394
|
+
names: names.filter((n) => GRID_ICON_GROUP_RULES.findIndex((c) => c.match(n)) === i)
|
|
11395
|
+
})).filter((g) => g.names.length);
|
|
11396
|
+
}
|
|
11426
11397
|
var GRID_API_UNSETTABLE = /* @__PURE__ */ new Set([
|
|
11427
11398
|
"data",
|
|
11428
11399
|
"columns",
|
|
@@ -15880,7 +15851,7 @@ function hasFieldConditions(schema) {
|
|
|
15880
15851
|
*
|
|
15881
15852
|
* `version.test.ts` asserts this matches `package.json`, so the two cannot drift.
|
|
15882
15853
|
*/
|
|
15883
|
-
var SVGRID_VERSION = "
|
|
15854
|
+
var SVGRID_VERSION = "3.0.0";
|
|
15884
15855
|
//#endregion
|
|
15885
15856
|
//#region src/studio/emit-project.ts
|
|
15886
15857
|
var has = (blocks, kind) => blocks.some((b) => b.config.kind === kind);
|
|
@@ -16000,17 +15971,18 @@ function blockMarkup(entity, schemaVar, typeName, block, resolve, ctx = { hasRec
|
|
|
16000
15971
|
const idSafe = block.id.replace(/-/g, "_");
|
|
16001
15972
|
const colVar = `columns_${idSafe}`;
|
|
16002
15973
|
const emptyMsg = `No ${(entity.label ?? entity.name).toLowerCase()} yet.`;
|
|
15974
|
+
const gridIcons = gridIconParts(cfg, idSafe);
|
|
16003
15975
|
if (cfg.scheduler) {
|
|
16004
15976
|
const schDisp = relationDisplayFields(ctx.rawEntity ?? entity, resolve);
|
|
16005
15977
|
const schAsText = (f) => schDisp.get(f) ?? f;
|
|
16006
15978
|
return ` <div ${span}${cls}>
|
|
16007
|
-
<SvGrid
|
|
15979
|
+
${gridIcons.decls} <SvGrid
|
|
16008
15980
|
data={allRows}
|
|
16009
15981
|
columns={${colVar}}
|
|
16010
15982
|
getRowId={(r) => String((r as Record<string, unknown>)[idField])}
|
|
16011
15983
|
loading={!allRowsReady}
|
|
16012
15984
|
scheduler={${schedulerConfigExpr(cfg.scheduler, typeName, schAsText)}}
|
|
16013
|
-
containerHeight=${ctx.pane ? "\"100%\"" : `{${block.height ?? 640}}`}
|
|
15985
|
+
${gridIcons.attr ? ` ${gridIcons.attr}\n` : ""} containerHeight=${ctx.pane ? "\"100%\"" : `{${block.height ?? 640}}`}
|
|
16014
15986
|
/>
|
|
16015
15987
|
</div>`;
|
|
16016
15988
|
}
|
|
@@ -16090,6 +16062,7 @@ function blockMarkup(entity, schemaVar, typeName, block, resolve, ctx = { hasRec
|
|
|
16090
16062
|
if (apiBody.length === 1 && ctx.captureApi && !grouped) lines.push(`onApiReady={(a) => (${ctx.captureApi} = a)}`);
|
|
16091
16063
|
else if (apiBody.length) lines.push(`onApiReady={(a) => { ${apiBody.join("; ")} }}`);
|
|
16092
16064
|
lines.push(`containerHeight=${ctx.pane ? "\"100%\"" : `{${block.height ?? 360}}`}`);
|
|
16065
|
+
if (gridIcons.attr) lines.push(gridIcons.attr);
|
|
16093
16066
|
if (cfg.props && Object.keys(cfg.props).length) {
|
|
16094
16067
|
const emitted = new Set(lines.map((l) => l.split(/[=\s]/)[0]));
|
|
16095
16068
|
for (const [k, v] of Object.entries(cfg.props)) {
|
|
@@ -16097,8 +16070,9 @@ function blockMarkup(entity, schemaVar, typeName, block, resolve, ctx = { hasRec
|
|
|
16097
16070
|
lines.push(v === true ? k : `${k}={${JSON.stringify(v)}}`);
|
|
16098
16071
|
}
|
|
16099
16072
|
}
|
|
16073
|
+
const exportBar = gridHasExport(cfg) && ctx.captureApi ? exportToolbarMarkup(cfg.export, ctx.captureApi, entity.name) : "";
|
|
16100
16074
|
return ` <div ${span}${cls}>
|
|
16101
|
-
${
|
|
16075
|
+
${gridIcons.decls}${exportBar} <SvGrid
|
|
16102
16076
|
${lines.join("\n ")}
|
|
16103
16077
|
/>
|
|
16104
16078
|
</div>`;
|
|
@@ -16434,6 +16408,41 @@ function conditionalFormatsExpr(cfg) {
|
|
|
16434
16408
|
}
|
|
16435
16409
|
return entries.length ? `[${entries.join(", ")}]` : null;
|
|
16436
16410
|
}
|
|
16411
|
+
/** Snippet declarations + the `icons={...}` attribute for a grid's no-code icon
|
|
16412
|
+
* overrides. SvGrid's `icons` prop takes a map of SNIPPETS, so each override has to
|
|
16413
|
+
* become a real snippet declared next to the grid; it cannot be a value the way
|
|
16414
|
+
* every other prop in the panel is. That is the whole reason icons get their own
|
|
16415
|
+
* config field instead of riding along in `props`, which is JSON.stringify'd.
|
|
16416
|
+
*
|
|
16417
|
+
* A value that reads as a tag is emitted as markup, so a user can paste an inline
|
|
16418
|
+
* `<svg>` or reference a component they imported in code-behind. Anything else goes
|
|
16419
|
+
* through an expression rather than as bare template text, so a glyph containing a
|
|
16420
|
+
* brace, a quote or an angle bracket cannot break the page it lands in. That last
|
|
16421
|
+
* case is not hypothetical: `<` and `>` are perfectly good pager arrows, which is
|
|
16422
|
+
* why this looks for a whole tag rather than just a leading bracket.
|
|
16423
|
+
*
|
|
16424
|
+
* Snippets are declared inside the block's own wrapper and prefixed with the block
|
|
16425
|
+
* id, so two grids on one screen can override the same icon differently. */
|
|
16426
|
+
function gridIconParts(cfg, idSafe) {
|
|
16427
|
+
const entries = Object.entries(cfg.icons ?? {}).filter(([name, v]) => name && typeof v === "string" && v.trim() !== "");
|
|
16428
|
+
if (!entries.length) return {
|
|
16429
|
+
decls: "",
|
|
16430
|
+
attr: ""
|
|
16431
|
+
};
|
|
16432
|
+
const decls = [];
|
|
16433
|
+
const pairs = [];
|
|
16434
|
+
for (const [name, glyph] of entries) {
|
|
16435
|
+
const snip = `icon_${idSafe}_${name.replace(/[^A-Za-z0-9]/g, "_")}`;
|
|
16436
|
+
const g = glyph.trim();
|
|
16437
|
+
const body = /^<[a-zA-Z][\s\S]*>$/.test(g) ? g : `{${jsStr(glyph)}}`;
|
|
16438
|
+
decls.push(` {#snippet ${snip}()}${body}{/snippet}`);
|
|
16439
|
+
pairs.push(`${jsStr(name)}: ${snip}`);
|
|
16440
|
+
}
|
|
16441
|
+
return {
|
|
16442
|
+
decls: decls.join("\n") + "\n",
|
|
16443
|
+
attr: `icons={{ ${pairs.join(", ")} }}`
|
|
16444
|
+
};
|
|
16445
|
+
}
|
|
16437
16446
|
var fieldLabel = (f) => f.label ?? f.field;
|
|
16438
16447
|
/** Stable per-block identifiers for a filter panel's state + apply function. */
|
|
16439
16448
|
var facetNames = (block) => {
|
|
@@ -41586,4 +41595,4 @@ function checkLicenseKey(key, now = /* @__PURE__ */ new Date()) {
|
|
|
41586
41595
|
};
|
|
41587
41596
|
}
|
|
41588
41597
|
//#endregion
|
|
41589
|
-
export { CANVAS_COLS, CANVAS_GAP_PX, CANVAS_ROW_PX, CONTAINER_CHILD_KINDS, CONTAINER_DISPLAY_KINDS, CRUD_ACTIONS, DEFAULT_PORT, DRIVER_PACKAGE, FORM_SUBMIT, GRID_API_MEMBERS, GRID_CURATED_PROPS, GRID_EVENTS, GRID_PRESETS, MANAGED_END, MANAGED_START, ON_LOAD, PANE_LAYOUTS, STANDARD_UI_EVENTS, TAB_CHILD_KINDS, TRIGGER_EVENTS, UI_COMPONENT_REGISTRY, UserError, addAccordionBlock, addAccordionComponent, addAccordionSection, addBlock, addBlockAt, addComponentBlock, addCrudSuite, addEntity, addFormSection, addFreestandingScreen, addHandlerStep, addScreen, addScreenAction, addScreenFromTemplate, addStateVar, addTab, addTabBlock, addTabComponent, applyGridPreset, blockClassName, blockColumns, blockPalette, blockStyleCss, buildCanvasLayout, buildConnectionString, buildCopilotMessages, buildDockLayout, buildStudioBugReport, canvasOpts, canvasRectOf, changeSlot, checkLicenseKey, clickSlot, compileCondition, compileHandlerSteps, compileStep, compileTriggerStep, compileTriggerSteps, compileValue, componentHandleMembers, componentHandleName, componentHasBindings, countTableRows, createProject, crudAppFromSchemas, crudSuiteScreens, csvToEntity, ctxAmbientDts, ctxCompletions, dashScreen, defaultBlockConfig, defaultEntitySource, defaultScreenFor, defaultStudioTheme, deployCommands, detailScreen, detectDelimiter, disableScreenCode, dockOpts, dockPaneIds, dockPaneTitleOf, duplicateBlock, duplicateScreen, emitEntityModules, emitStudioApp, emitStudioAppBundle, emitStudioFragment, emitStudioProject, enableScreenCode, entityDataSource, entityOf, entityScreenPage, eventSlot, flattenBlocks, formControlSettings, formControlsFor, formPlan, formScreen, generateRows, generateValue, getLiveDataSample, getSampleApp, getStarterDataset, getStudioTheme, gridApiSettableProps, gridColumns, gridConfig, gridOpts, gridPresetLabel, gridPropSurface, inferType, insertBlock, introspectDatabase, introspectDrizzle, introspectDrizzleAll, introspectJson, introspectOpenApi, introspectPrisma, introspectPrismaAll, isDarkTheme, isFieldHidden, isFileDialect, isPaneLayout, isProjectValid, isTenantScoped, isUserError, linkRelationLabels, listDatabaseTables, listScreen, liveDataSamples, mapSqlType, mergeBlockStyle, mergeManaged, missingEnvKeys, moveBlock, moveFormField, moveFormFields, moveFormSection, moveHandlerStep, parseConnectionString, parseCsv, parseProject, parseSelection, pickLabelField, prepareEntities, probeConnection, projectFromModelText, reconcileDock, redactConnectionString, refineField, refineFields, removeAccordionBlock, removeAccordionSection, removeBlock, removeEntity, removeFormSection, removeScreen, removeScreenAction, removeStateVar, removeTab, removeTabBlock, renameAccordionSection, renameTab, reorderBlock, reorderScreen, reseedScreenDock, resolveDeployTarget, resolveIdField, resolveSchema, resolveSchemas, resolveThemeTokens, resolveThemeTokensFor, roleCanAction, roleCanScreen, rowSelectSlot, runStudioAdd, runStudioAddApp, runStudioInit, runtimeDeps, sampleApps, sanitizeClassName, sanitizeProject, sanitizeStudioProject, scaffold, scaffoldApp, schemaToColumns, schemaToFormFields, screenDataset, screenFromTemplate, screenHandles, screenLayoutOf, seedUsers, serializeProject, setAccordionMultiple, setAuth, setCanvasRect, setComponentBinding, setComponentName, setDataLayer, setDataSource, setDeployTarget, setDockPaneTitle, setEntityDataSource, setEntityForm, setFieldConditions, setFieldHidden, setFieldInput, setFormColumns, setHandlerBody, setHandlerSteps, setJob, setLayoutOpts, setScreenDock, setScreenHandlersSource, setScreenLayout, setScreenRenderGrid, setScreenRenderMode, setShell, setTenancy, setTheme, setThemePreset, setTrigger, skipUserOwned, splitOpts, ssrEligible, ssrScreenShape, stackOpts, starterDatasets, starterProject, stateInitExpr, stateTsType, statusPills, stepsToCode, studioDeployInfo, studioThemes, suggestFormSections, summarizeVerify, syncDockPanes, tenantField, themeStyleString, triggersOf, uiComponentSpec, updateBlock, updateEntity, updateEntityField, updateFormSection, updateHandlerStep, updateScreen, updateStateVar, validateProject, verifyScaffold, withSsrDefaults };
|
|
41598
|
+
export { CANVAS_COLS, CANVAS_GAP_PX, CANVAS_ROW_PX, CONTAINER_CHILD_KINDS, CONTAINER_DISPLAY_KINDS, CRUD_ACTIONS, DEFAULT_PORT, DRIVER_PACKAGE, FORM_SUBMIT, GRID_API_MEMBERS, GRID_CURATED_PROPS, GRID_EVENTS, GRID_PRESETS, MANAGED_END, MANAGED_START, ON_LOAD, PANE_LAYOUTS, STANDARD_UI_EVENTS, TAB_CHILD_KINDS, TRIGGER_EVENTS, UI_COMPONENT_REGISTRY, UserError, addAccordionBlock, addAccordionComponent, addAccordionSection, addBlock, addBlockAt, addComponentBlock, addCrudSuite, addEntity, addFormSection, addFreestandingScreen, addHandlerStep, addScreen, addScreenAction, addScreenFromTemplate, addStateVar, addTab, addTabBlock, addTabComponent, applyGridPreset, blockClassName, blockColumns, blockPalette, blockStyleCss, buildCanvasLayout, buildConnectionString, buildCopilotMessages, buildDockLayout, buildStudioBugReport, canvasOpts, canvasRectOf, changeSlot, checkLicenseKey, clickSlot, compileCondition, compileHandlerSteps, compileStep, compileTriggerStep, compileTriggerSteps, compileValue, componentHandleMembers, componentHandleName, componentHasBindings, countTableRows, createProject, crudAppFromSchemas, crudSuiteScreens, csvToEntity, ctxAmbientDts, ctxCompletions, dashScreen, defaultBlockConfig, defaultEntitySource, defaultScreenFor, defaultStudioTheme, deployCommands, detailScreen, detectDelimiter, disableScreenCode, dockOpts, dockPaneIds, dockPaneTitleOf, duplicateBlock, duplicateScreen, emitEntityModules, emitStudioApp, emitStudioAppBundle, emitStudioFragment, emitStudioProject, enableScreenCode, entityDataSource, entityOf, entityScreenPage, eventSlot, flattenBlocks, formControlSettings, formControlsFor, formPlan, formScreen, generateRows, generateValue, getLiveDataSample, getSampleApp, getStarterDataset, getStudioTheme, gridApiSettableProps, gridColumns, gridConfig, gridIconGroups, gridOpts, gridPresetLabel, gridPropSurface, inferType, insertBlock, introspectDatabase, introspectDrizzle, introspectDrizzleAll, introspectJson, introspectOpenApi, introspectPrisma, introspectPrismaAll, isDarkTheme, isFieldHidden, isFileDialect, isPaneLayout, isProjectValid, isTenantScoped, isUserError, linkRelationLabels, listDatabaseTables, listScreen, liveDataSamples, mapSqlType, mergeBlockStyle, mergeManaged, missingEnvKeys, moveBlock, moveFormField, moveFormFields, moveFormSection, moveHandlerStep, parseConnectionString, parseCsv, parseProject, parseSelection, pickLabelField, prepareEntities, probeConnection, projectFromModelText, reconcileDock, redactConnectionString, refineField, refineFields, removeAccordionBlock, removeAccordionSection, removeBlock, removeEntity, removeFormSection, removeScreen, removeScreenAction, removeStateVar, removeTab, removeTabBlock, renameAccordionSection, renameTab, reorderBlock, reorderScreen, reseedScreenDock, resolveDeployTarget, resolveIdField, resolveSchema, resolveSchemas, resolveThemeTokens, resolveThemeTokensFor, roleCanAction, roleCanScreen, rowSelectSlot, runStudioAdd, runStudioAddApp, runStudioInit, runtimeDeps, sampleApps, sanitizeClassName, sanitizeProject, sanitizeStudioProject, scaffold, scaffoldApp, schemaToColumns, schemaToFormFields, screenDataset, screenFromTemplate, screenHandles, screenLayoutOf, seedUsers, serializeProject, setAccordionMultiple, setAuth, setCanvasRect, setComponentBinding, setComponentName, setDataLayer, setDataSource, setDeployTarget, setDockPaneTitle, setEntityDataSource, setEntityForm, setFieldConditions, setFieldHidden, setFieldInput, setFormColumns, setHandlerBody, setHandlerSteps, setJob, setLayoutOpts, setScreenDock, setScreenHandlersSource, setScreenLayout, setScreenRenderGrid, setScreenRenderMode, setShell, setTenancy, setTheme, setThemePreset, setTrigger, skipUserOwned, splitOpts, ssrEligible, ssrScreenShape, stackOpts, starterDatasets, starterProject, stateInitExpr, stateTsType, statusPills, stepsToCode, studioDeployInfo, studioThemes, suggestFormSections, summarizeVerify, syncDockPanes, tenantField, themeStyleString, triggersOf, uiComponentSpec, updateBlock, updateEntity, updateEntityField, updateFormSection, updateHandlerStep, updateScreen, updateStateVar, validateProject, verifyScaffold, withSsrDefaults };
|
package/dist/pivot-chart.d.ts
CHANGED
|
@@ -14,7 +14,7 @@
|
|
|
14
14
|
* - values = each leaf row's aggregated cell for that series column.
|
|
15
15
|
*/
|
|
16
16
|
import type { ChartSpec, ChartType, TableFeatures } from '@svgrid/grid';
|
|
17
|
-
import type { PivotResult } from './pivot';
|
|
17
|
+
import type { PivotResult } from './pivot.js';
|
|
18
18
|
export type PivotChartOptions = {
|
|
19
19
|
/** Chart type. Default `'bar'`. */
|
|
20
20
|
type?: ChartType;
|
package/dist/pivot-designer.d.ts
CHANGED
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
* normalisation + serialisation without instantiating the component.
|
|
8
8
|
*/
|
|
9
9
|
import type { CellFormatConfig } from '@svgrid/grid';
|
|
10
|
-
import type { PivotAggregatorId } from './pivot';
|
|
10
|
+
import type { PivotAggregatorId } from './pivot.js';
|
|
11
11
|
/** One field the designer offers in its left-rail picker.
|
|
12
12
|
* Dimensions land in Rows by default; measures land in Values. */
|
|
13
13
|
export type PivotField<T extends Record<string, unknown> = Record<string, unknown>> = {
|
package/dist/pivot-enable.js
CHANGED
|
@@ -17,9 +17,9 @@
|
|
|
17
17
|
* ```
|
|
18
18
|
*/
|
|
19
19
|
import { registerPivotEngine } from '@svgrid/grid';
|
|
20
|
-
import { isLicenseKeySet } from './license';
|
|
21
|
-
import { emitUnlicensedNudge } from './watermark';
|
|
22
|
-
import { createPivotModel } from './pivot';
|
|
20
|
+
import { isLicenseKeySet } from './license.js';
|
|
21
|
+
import { emitUnlicensedNudge } from './watermark.js';
|
|
22
|
+
import { createPivotModel } from './pivot.js';
|
|
23
23
|
let enabled = false;
|
|
24
24
|
// The grid's `PivotEngine` seam is generic over row type; `createPivotModel` is
|
|
25
25
|
// the concrete implementation. Bridge them with a single boundary cast.
|
package/dist/print.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { RowData, TableFeatures, SvGridApi } from '@svgrid/grid';
|
|
2
|
-
import { type ExportColumn, type ExportRowSource } from './export';
|
|
2
|
+
import { type ExportColumn, type ExportRowSource } from './export.js';
|
|
3
3
|
import type { ConditionalFormat } from '@svgrid/grid/format';
|
|
4
4
|
export type PrintOptions<TData> = {
|
|
5
5
|
/** Title placed above the printed grid. Defaults to "Grid". */
|
package/dist/print.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { assertEnterpriseLicensed } from './license';
|
|
2
|
-
import { buildLinkResolver, projectRows, resolveColumns, resolveRowSource, } from './export';
|
|
3
|
-
import { buildPrintDocument } from './export-print';
|
|
4
|
-
import { buildConditionalResolver } from './export-conditional';
|
|
1
|
+
import { assertEnterpriseLicensed } from './license.js';
|
|
2
|
+
import { buildLinkResolver, projectRows, resolveColumns, resolveRowSource, } from './export.js';
|
|
3
|
+
import { buildPrintDocument } from './export-print.js';
|
|
4
|
+
import { buildConditionalResolver } from './export-conditional.js';
|
|
5
5
|
export async function printGrid(api, opts) {
|
|
6
6
|
assertEnterpriseLicensed('Print');
|
|
7
7
|
if (typeof window === 'undefined') {
|