@databricks/appkit-ui 0.0.2
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/CLAUDE.md +3 -0
- package/DCO +25 -0
- package/LICENSE +203 -0
- package/NOTICE.md +73 -0
- package/README.md +35 -0
- package/bin/setup-claude.js +190 -0
- package/dist/js/arrow/arrow-client.d.ts +64 -0
- package/dist/js/arrow/arrow-client.d.ts.map +1 -0
- package/dist/js/arrow/arrow-client.js +181 -0
- package/dist/js/arrow/arrow-client.js.map +1 -0
- package/dist/js/arrow/index.js +3 -0
- package/dist/js/arrow/lazy-arrow.d.ts +23 -0
- package/dist/js/arrow/lazy-arrow.d.ts.map +1 -0
- package/dist/js/arrow/lazy-arrow.js +86 -0
- package/dist/js/arrow/lazy-arrow.js.map +1 -0
- package/dist/js/constants.d.ts +10 -0
- package/dist/js/constants.d.ts.map +1 -0
- package/dist/js/constants.js +30 -0
- package/dist/js/constants.js.map +1 -0
- package/dist/js/index.d.ts +8 -0
- package/dist/js/index.js +8 -0
- package/dist/js/sse/connect-sse.d.ts +14 -0
- package/dist/js/sse/connect-sse.d.ts.map +1 -0
- package/dist/js/sse/connect-sse.js +128 -0
- package/dist/js/sse/connect-sse.js.map +1 -0
- package/dist/js/sse/types.d.ts +34 -0
- package/dist/js/sse/types.d.ts.map +1 -0
- package/dist/react/charts/area/index.d.ts +33 -0
- package/dist/react/charts/area/index.d.ts.map +1 -0
- package/dist/react/charts/area/index.js +29 -0
- package/dist/react/charts/area/index.js.map +1 -0
- package/dist/react/charts/bar/index.d.ts +43 -0
- package/dist/react/charts/bar/index.d.ts.map +1 -0
- package/dist/react/charts/bar/index.js +39 -0
- package/dist/react/charts/bar/index.js.map +1 -0
- package/dist/react/charts/base.d.ts +89 -0
- package/dist/react/charts/base.d.ts.map +1 -0
- package/dist/react/charts/base.js +123 -0
- package/dist/react/charts/base.js.map +1 -0
- package/dist/react/charts/chart-error-boundary.js +37 -0
- package/dist/react/charts/chart-error-boundary.js.map +1 -0
- package/dist/react/charts/constants.d.ts +22 -0
- package/dist/react/charts/constants.d.ts.map +1 -0
- package/dist/react/charts/constants.js +86 -0
- package/dist/react/charts/constants.js.map +1 -0
- package/dist/react/charts/create-chart.d.ts +26 -0
- package/dist/react/charts/create-chart.d.ts.map +1 -0
- package/dist/react/charts/create-chart.js +55 -0
- package/dist/react/charts/create-chart.js.map +1 -0
- package/dist/react/charts/empty.js +16 -0
- package/dist/react/charts/empty.js.map +1 -0
- package/dist/react/charts/error.js +16 -0
- package/dist/react/charts/error.js.map +1 -0
- package/dist/react/charts/heatmap/index.d.ts +42 -0
- package/dist/react/charts/heatmap/index.d.ts.map +1 -0
- package/dist/react/charts/heatmap/index.js +38 -0
- package/dist/react/charts/heatmap/index.js.map +1 -0
- package/dist/react/charts/index.js +18 -0
- package/dist/react/charts/line/index.d.ts +34 -0
- package/dist/react/charts/line/index.d.ts.map +1 -0
- package/dist/react/charts/line/index.js +30 -0
- package/dist/react/charts/line/index.js.map +1 -0
- package/dist/react/charts/loading.js +13 -0
- package/dist/react/charts/loading.js.map +1 -0
- package/dist/react/charts/normalize.d.ts +37 -0
- package/dist/react/charts/normalize.d.ts.map +1 -0
- package/dist/react/charts/normalize.js +256 -0
- package/dist/react/charts/normalize.js.map +1 -0
- package/dist/react/charts/options.d.ts +39 -0
- package/dist/react/charts/options.d.ts.map +1 -0
- package/dist/react/charts/options.js +212 -0
- package/dist/react/charts/options.js.map +1 -0
- package/dist/react/charts/pie/index.d.ts +57 -0
- package/dist/react/charts/pie/index.d.ts.map +1 -0
- package/dist/react/charts/pie/index.js +50 -0
- package/dist/react/charts/pie/index.js.map +1 -0
- package/dist/react/charts/radar/index.d.ts +32 -0
- package/dist/react/charts/radar/index.d.ts.map +1 -0
- package/dist/react/charts/radar/index.js +28 -0
- package/dist/react/charts/radar/index.js.map +1 -0
- package/dist/react/charts/scatter/index.d.ts +32 -0
- package/dist/react/charts/scatter/index.d.ts.map +1 -0
- package/dist/react/charts/scatter/index.js +28 -0
- package/dist/react/charts/scatter/index.js.map +1 -0
- package/dist/react/charts/theme.d.ts +23 -0
- package/dist/react/charts/theme.d.ts.map +1 -0
- package/dist/react/charts/theme.js +96 -0
- package/dist/react/charts/theme.js.map +1 -0
- package/dist/react/charts/types.d.ts +160 -0
- package/dist/react/charts/types.d.ts.map +1 -0
- package/dist/react/charts/types.js +17 -0
- package/dist/react/charts/types.js.map +1 -0
- package/dist/react/charts/utils.d.ts +36 -0
- package/dist/react/charts/utils.d.ts.map +1 -0
- package/dist/react/charts/utils.js +77 -0
- package/dist/react/charts/utils.js.map +1 -0
- package/dist/react/charts/wrapper.d.ts +65 -0
- package/dist/react/charts/wrapper.d.ts.map +1 -0
- package/dist/react/charts/wrapper.js +94 -0
- package/dist/react/charts/wrapper.js.map +1 -0
- package/dist/react/hooks/index.js +2 -0
- package/dist/react/hooks/types.d.ts +101 -0
- package/dist/react/hooks/types.d.ts.map +1 -0
- package/dist/react/hooks/use-analytics-query.d.ts +33 -0
- package/dist/react/hooks/use-analytics-query.d.ts.map +1 -0
- package/dist/react/hooks/use-analytics-query.js +146 -0
- package/dist/react/hooks/use-analytics-query.js.map +1 -0
- package/dist/react/hooks/use-chart-data.d.ts +54 -0
- package/dist/react/hooks/use-chart-data.d.ts.map +1 -0
- package/dist/react/hooks/use-chart-data.js +80 -0
- package/dist/react/hooks/use-chart-data.js.map +1 -0
- package/dist/react/hooks/use-mobile.js +21 -0
- package/dist/react/hooks/use-mobile.js.map +1 -0
- package/dist/react/hooks/use-query-hmr.js +19 -0
- package/dist/react/hooks/use-query-hmr.js.map +1 -0
- package/dist/react/index.d.ts +75 -0
- package/dist/react/index.js +79 -0
- package/dist/react/lib/format.js +42 -0
- package/dist/react/lib/format.js.map +1 -0
- package/dist/react/lib/utils.js +11 -0
- package/dist/react/lib/utils.js.map +1 -0
- package/dist/react/table/data-table.d.ts +47 -0
- package/dist/react/table/data-table.d.ts.map +1 -0
- package/dist/react/table/data-table.js +205 -0
- package/dist/react/table/data-table.js.map +1 -0
- package/dist/react/table/empty.js +16 -0
- package/dist/react/table/empty.js.map +1 -0
- package/dist/react/table/error.js +16 -0
- package/dist/react/table/error.js.map +1 -0
- package/dist/react/table/index.js +1 -0
- package/dist/react/table/loading.js +50 -0
- package/dist/react/table/loading.js.map +1 -0
- package/dist/react/table/table-wrapper.js +143 -0
- package/dist/react/table/table-wrapper.js.map +1 -0
- package/dist/react/table/types.d.ts +55 -0
- package/dist/react/table/types.d.ts.map +1 -0
- package/dist/react/ui/accordion.d.ts +25 -0
- package/dist/react/ui/accordion.d.ts.map +1 -0
- package/dist/react/ui/accordion.js +45 -0
- package/dist/react/ui/accordion.js.map +1 -0
- package/dist/react/ui/alert-dialog.d.ts +49 -0
- package/dist/react/ui/alert-dialog.d.ts.map +1 -0
- package/dist/react/ui/alert-dialog.js +82 -0
- package/dist/react/ui/alert-dialog.js.map +1 -0
- package/dist/react/ui/alert.d.ts +25 -0
- package/dist/react/ui/alert.d.ts.map +1 -0
- package/dist/react/ui/alert.js +38 -0
- package/dist/react/ui/alert.js.map +1 -0
- package/dist/react/ui/aspect-ratio.d.ts +10 -0
- package/dist/react/ui/aspect-ratio.d.ts.map +1 -0
- package/dist/react/ui/aspect-ratio.js +16 -0
- package/dist/react/ui/aspect-ratio.js.map +1 -0
- package/dist/react/ui/avatar.d.ts +20 -0
- package/dist/react/ui/avatar.d.ts.map +1 -0
- package/dist/react/ui/avatar.js +30 -0
- package/dist/react/ui/avatar.js.map +1 -0
- package/dist/react/ui/badge.d.ts +20 -0
- package/dist/react/ui/badge.d.ts.map +1 -0
- package/dist/react/ui/badge.js +26 -0
- package/dist/react/ui/badge.js.map +1 -0
- package/dist/react/ui/breadcrumb.d.ts +38 -0
- package/dist/react/ui/breadcrumb.d.ts.map +1 -0
- package/dist/react/ui/breadcrumb.js +71 -0
- package/dist/react/ui/breadcrumb.js.map +1 -0
- package/dist/react/ui/button-group.d.ts +29 -0
- package/dist/react/ui/button-group.d.ts.map +1 -0
- package/dist/react/ui/button-group.js +41 -0
- package/dist/react/ui/button-group.js.map +1 -0
- package/dist/react/ui/button.d.ts +22 -0
- package/dist/react/ui/button.d.ts.map +1 -0
- package/dist/react/ui/button.js +45 -0
- package/dist/react/ui/button.js.map +1 -0
- package/dist/react/ui/calendar.d.ts +27 -0
- package/dist/react/ui/calendar.d.ts.map +1 -0
- package/dist/react/ui/calendar.js +109 -0
- package/dist/react/ui/calendar.js.map +1 -0
- package/dist/react/ui/card.d.ts +35 -0
- package/dist/react/ui/card.d.ts.map +1 -0
- package/dist/react/ui/card.js +57 -0
- package/dist/react/ui/card.js.map +1 -0
- package/dist/react/ui/carousel.d.ts +48 -0
- package/dist/react/ui/carousel.d.ts.map +1 -0
- package/dist/react/ui/carousel.js +134 -0
- package/dist/react/ui/carousel.js.map +1 -0
- package/dist/react/ui/chart.d.ts +80 -0
- package/dist/react/ui/chart.d.ts.map +1 -0
- package/dist/react/ui/chart.js +143 -0
- package/dist/react/ui/chart.js.map +1 -0
- package/dist/react/ui/checkbox.d.ts +12 -0
- package/dist/react/ui/checkbox.d.ts.map +1 -0
- package/dist/react/ui/checkbox.js +24 -0
- package/dist/react/ui/checkbox.js.map +1 -0
- package/dist/react/ui/collapsible.d.ts +16 -0
- package/dist/react/ui/collapsible.d.ts.map +1 -0
- package/dist/react/ui/collapsible.js +26 -0
- package/dist/react/ui/collapsible.js.map +1 -0
- package/dist/react/ui/command.d.ts +53 -0
- package/dist/react/ui/command.d.ts.map +1 -0
- package/dist/react/ui/command.js +87 -0
- package/dist/react/ui/command.js.map +1 -0
- package/dist/react/ui/context-menu.d.ts +77 -0
- package/dist/react/ui/context-menu.d.ts.map +1 -0
- package/dist/react/ui/context-menu.js +125 -0
- package/dist/react/ui/context-menu.js.map +1 -0
- package/dist/react/ui/dialog.d.ts +48 -0
- package/dist/react/ui/dialog.d.ts.map +1 -0
- package/dist/react/ui/dialog.js +87 -0
- package/dist/react/ui/dialog.js.map +1 -0
- package/dist/react/ui/drawer.d.ts +45 -0
- package/dist/react/ui/drawer.d.ts.map +1 -0
- package/dist/react/ui/drawer.js +81 -0
- package/dist/react/ui/drawer.js.map +1 -0
- package/dist/react/ui/dropdown-menu.d.ts +78 -0
- package/dist/react/ui/dropdown-menu.d.ts.map +1 -0
- package/dist/react/ui/dropdown-menu.js +124 -0
- package/dist/react/ui/dropdown-menu.js.map +1 -0
- package/dist/react/ui/empty.d.ts +36 -0
- package/dist/react/ui/empty.d.ts.map +1 -0
- package/dist/react/ui/empty.js +62 -0
- package/dist/react/ui/empty.js.map +1 -0
- package/dist/react/ui/field.d.ts +65 -0
- package/dist/react/ui/field.d.ts.map +1 -0
- package/dist/react/ui/field.js +120 -0
- package/dist/react/ui/field.js.map +1 -0
- package/dist/react/ui/form.d.ts +46 -0
- package/dist/react/ui/form.d.ts.map +1 -0
- package/dist/react/ui/form.js +92 -0
- package/dist/react/ui/form.js.map +1 -0
- package/dist/react/ui/hover-card.d.ts +20 -0
- package/dist/react/ui/hover-card.d.ts.map +1 -0
- package/dist/react/ui/hover-card.js +35 -0
- package/dist/react/ui/hover-card.js.map +1 -0
- package/dist/react/ui/index.js +53 -0
- package/dist/react/ui/input-group.d.ts +44 -0
- package/dist/react/ui/input-group.d.ts.map +1 -0
- package/dist/react/ui/input-group.js +82 -0
- package/dist/react/ui/input-group.js.map +1 -0
- package/dist/react/ui/input-otp.d.ts +29 -0
- package/dist/react/ui/input-otp.d.ts.map +1 -0
- package/dist/react/ui/input-otp.js +47 -0
- package/dist/react/ui/input-otp.js.map +1 -0
- package/dist/react/ui/input.d.ts +12 -0
- package/dist/react/ui/input.d.ts.map +1 -0
- package/dist/react/ui/input.js +16 -0
- package/dist/react/ui/input.js.map +1 -0
- package/dist/react/ui/item.d.ts +63 -0
- package/dist/react/ui/item.d.ts.map +1 -0
- package/dist/react/ui/item.js +118 -0
- package/dist/react/ui/item.js.map +1 -0
- package/dist/react/ui/kbd.d.ts +14 -0
- package/dist/react/ui/kbd.d.ts.map +1 -0
- package/dist/react/ui/kbd.js +22 -0
- package/dist/react/ui/kbd.js.map +1 -0
- package/dist/react/ui/label.d.ts +12 -0
- package/dist/react/ui/label.d.ts.map +1 -0
- package/dist/react/ui/label.js +18 -0
- package/dist/react/ui/label.js.map +1 -0
- package/dist/react/ui/menubar.d.ts +85 -0
- package/dist/react/ui/menubar.d.ts.map +1 -0
- package/dist/react/ui/menubar.js +134 -0
- package/dist/react/ui/menubar.js.map +1 -0
- package/dist/react/ui/navigation-menu.d.ts +47 -0
- package/dist/react/ui/navigation-menu.d.ts.map +1 -0
- package/dist/react/ui/navigation-menu.js +82 -0
- package/dist/react/ui/navigation-menu.js.map +1 -0
- package/dist/react/ui/pagination.d.ts +40 -0
- package/dist/react/ui/pagination.d.ts.map +1 -0
- package/dist/react/ui/pagination.js +80 -0
- package/dist/react/ui/pagination.js.map +1 -0
- package/dist/react/ui/popover.d.ts +23 -0
- package/dist/react/ui/popover.d.ts.map +1 -0
- package/dist/react/ui/popover.js +38 -0
- package/dist/react/ui/popover.js.map +1 -0
- package/dist/react/ui/progress.d.ts +13 -0
- package/dist/react/ui/progress.d.ts.map +1 -0
- package/dist/react/ui/progress.js +21 -0
- package/dist/react/ui/progress.js.map +1 -0
- package/dist/react/ui/radio-group.d.ts +16 -0
- package/dist/react/ui/radio-group.d.ts.map +1 -0
- package/dist/react/ui/radio-group.js +31 -0
- package/dist/react/ui/radio-group.js.map +1 -0
- package/dist/react/ui/resizable.d.ts +22 -0
- package/dist/react/ui/resizable.d.ts.map +1 -0
- package/dist/react/ui/resizable.js +34 -0
- package/dist/react/ui/resizable.js.map +1 -0
- package/dist/react/ui/scroll-area.d.ts +18 -0
- package/dist/react/ui/scroll-area.d.ts.map +1 -0
- package/dist/react/ui/scroll-area.js +39 -0
- package/dist/react/ui/scroll-area.js.map +1 -0
- package/dist/react/ui/select.d.ts +53 -0
- package/dist/react/ui/select.d.ts.map +1 -0
- package/dist/react/ui/select.js +98 -0
- package/dist/react/ui/select.js.map +1 -0
- package/dist/react/ui/separator.d.ts +14 -0
- package/dist/react/ui/separator.d.ts.map +1 -0
- package/dist/react/ui/separator.js +20 -0
- package/dist/react/ui/separator.js.map +1 -0
- package/dist/react/ui/sheet.d.ts +41 -0
- package/dist/react/ui/sheet.d.ts.map +1 -0
- package/dist/react/ui/sheet.js +83 -0
- package/dist/react/ui/sheet.js.map +1 -0
- package/dist/react/ui/sidebar.d.ts +167 -0
- package/dist/react/ui/sidebar.d.ts.map +1 -0
- package/dist/react/ui/sidebar.js +379 -0
- package/dist/react/ui/sidebar.js.map +1 -0
- package/dist/react/ui/skeleton.d.ts +10 -0
- package/dist/react/ui/skeleton.d.ts.map +1 -0
- package/dist/react/ui/skeleton.js +15 -0
- package/dist/react/ui/skeleton.js.map +1 -0
- package/dist/react/ui/slider.d.ts +16 -0
- package/dist/react/ui/slider.d.ts.map +1 -0
- package/dist/react/ui/slider.js +40 -0
- package/dist/react/ui/slider.js.map +1 -0
- package/dist/react/ui/sonner.d.ts +10 -0
- package/dist/react/ui/sonner.d.ts.map +1 -0
- package/dist/react/ui/sonner.js +31 -0
- package/dist/react/ui/sonner.js.map +1 -0
- package/dist/react/ui/spinner.d.ts +10 -0
- package/dist/react/ui/spinner.d.ts.map +1 -0
- package/dist/react/ui/spinner.js +17 -0
- package/dist/react/ui/spinner.js.map +1 -0
- package/dist/react/ui/switch.d.ts +12 -0
- package/dist/react/ui/switch.d.ts.map +1 -0
- package/dist/react/ui/switch.js +22 -0
- package/dist/react/ui/switch.js.map +1 -0
- package/dist/react/ui/table.d.ts +39 -0
- package/dist/react/ui/table.d.ts.map +1 -0
- package/dist/react/ui/table.js +68 -0
- package/dist/react/ui/table.js.map +1 -0
- package/dist/react/ui/tabs.d.ts +24 -0
- package/dist/react/ui/tabs.d.ts.map +1 -0
- package/dist/react/ui/tabs.js +39 -0
- package/dist/react/ui/tabs.js.map +1 -0
- package/dist/react/ui/textarea.d.ts +11 -0
- package/dist/react/ui/textarea.d.ts.map +1 -0
- package/dist/react/ui/textarea.js +15 -0
- package/dist/react/ui/textarea.js.map +1 -0
- package/dist/react/ui/toggle-group.d.ts +27 -0
- package/dist/react/ui/toggle-group.d.ts.map +1 -0
- package/dist/react/ui/toggle-group.js +50 -0
- package/dist/react/ui/toggle-group.js.map +1 -0
- package/dist/react/ui/toggle.d.ts +20 -0
- package/dist/react/ui/toggle.d.ts.map +1 -0
- package/dist/react/ui/toggle.js +38 -0
- package/dist/react/ui/toggle.js.map +1 -0
- package/dist/react/ui/tooltip.d.ts +24 -0
- package/dist/react/ui/tooltip.d.ts.map +1 -0
- package/dist/react/ui/tooltip.js +39 -0
- package/dist/react/ui/tooltip.js.map +1 -0
- package/dist/shared/src/sql/helpers.d.ts +160 -0
- package/dist/shared/src/sql/helpers.d.ts.map +1 -0
- package/dist/shared/src/sql/helpers.js +103 -0
- package/dist/shared/src/sql/helpers.js.map +1 -0
- package/dist/shared/src/sql/types.d.ts +34 -0
- package/dist/shared/src/sql/types.d.ts.map +1 -0
- package/dist/styles.css +425 -0
- package/llms.txt +193 -0
- package/package.json +98 -0
- package/scripts/postinstall.js +6 -0
|
@@ -0,0 +1,160 @@
|
|
|
1
|
+
import { SQLBinaryMarker, SQLBooleanMarker, SQLDateMarker, SQLNumberMarker, SQLStringMarker, SQLTimestampMarker, SQLTypeMarker } from "./types.js";
|
|
2
|
+
|
|
3
|
+
//#region ../shared/src/sql/helpers.d.ts
|
|
4
|
+
|
|
5
|
+
/**
|
|
6
|
+
* SQL helper namespace
|
|
7
|
+
*/
|
|
8
|
+
declare const sql: {
|
|
9
|
+
/**
|
|
10
|
+
* Creates a DATE type parameter
|
|
11
|
+
* Accepts Date objects or ISO date strings (YYYY-MM-DD format)
|
|
12
|
+
* @param value - Date object or ISO date string
|
|
13
|
+
* @returns Marker object for DATE type parameter
|
|
14
|
+
* @example
|
|
15
|
+
* ```typescript
|
|
16
|
+
* const params = { startDate: sql.date(new Date("2024-01-01")) };
|
|
17
|
+
* params = { startDate: "2024-01-01" }
|
|
18
|
+
* ```
|
|
19
|
+
* @example
|
|
20
|
+
* ```typescript
|
|
21
|
+
* const params = { startDate: sql.date("2024-01-01") };
|
|
22
|
+
* params = { startDate: "2024-01-01" }
|
|
23
|
+
* ```
|
|
24
|
+
*/
|
|
25
|
+
date(value: Date | string): SQLDateMarker;
|
|
26
|
+
/**
|
|
27
|
+
* Creates a TIMESTAMP type parameter
|
|
28
|
+
* Accepts Date objects, ISO timestamp strings, or Unix timestamp numbers
|
|
29
|
+
* @param value - Date object, ISO timestamp string, or Unix timestamp number
|
|
30
|
+
* @returns Marker object for TIMESTAMP type parameter
|
|
31
|
+
* @example
|
|
32
|
+
* ```typescript
|
|
33
|
+
* const params = { createdTime: sql.timestamp(new Date("2024-01-01T12:00:00Z")) };
|
|
34
|
+
* params = { createdTime: "2024-01-01T12:00:00Z" }
|
|
35
|
+
* ```
|
|
36
|
+
* @example
|
|
37
|
+
* ```typescript
|
|
38
|
+
* const params = { createdTime: sql.timestamp("2024-01-01T12:00:00Z") };
|
|
39
|
+
* params = { createdTime: "2024-01-01T12:00:00Z" }
|
|
40
|
+
* ```
|
|
41
|
+
* @example
|
|
42
|
+
* ```typescript
|
|
43
|
+
* const params = { createdTime: sql.timestamp(1704110400000) };
|
|
44
|
+
* params = { createdTime: "2024-01-01T12:00:00Z" }
|
|
45
|
+
* ```
|
|
46
|
+
*/
|
|
47
|
+
timestamp(value: Date | string | number): SQLTimestampMarker;
|
|
48
|
+
/**
|
|
49
|
+
* Creates a NUMERIC type parameter
|
|
50
|
+
* Accepts numbers or numeric strings
|
|
51
|
+
* @param value - Number or numeric string
|
|
52
|
+
* @returns Marker object for NUMERIC type parameter
|
|
53
|
+
* @example
|
|
54
|
+
* ```typescript
|
|
55
|
+
* const params = { userId: sql.number(123) };
|
|
56
|
+
* params = { userId: "123" }
|
|
57
|
+
* ```
|
|
58
|
+
* @example
|
|
59
|
+
* ```typescript
|
|
60
|
+
* const params = { userId: sql.number("123") };
|
|
61
|
+
* params = { userId: "123" }
|
|
62
|
+
* ```
|
|
63
|
+
*/
|
|
64
|
+
number(value: number | string): SQLNumberMarker;
|
|
65
|
+
/**
|
|
66
|
+
* Creates a STRING type parameter
|
|
67
|
+
* Accepts strings, numbers, or booleans
|
|
68
|
+
* @param value - String, number, or boolean
|
|
69
|
+
* @returns Marker object for STRING type parameter
|
|
70
|
+
* @example
|
|
71
|
+
* ```typescript
|
|
72
|
+
* const params = { name: sql.string("John") };
|
|
73
|
+
* params = { name: "John" }
|
|
74
|
+
* ```
|
|
75
|
+
* @example
|
|
76
|
+
* ```typescript
|
|
77
|
+
* const params = { name: sql.string(123) };
|
|
78
|
+
* params = { name: "123" }
|
|
79
|
+
* ```
|
|
80
|
+
* @example
|
|
81
|
+
* ```typescript
|
|
82
|
+
* const params = { name: sql.string(true) };
|
|
83
|
+
* params = { name: "true" }
|
|
84
|
+
* ```
|
|
85
|
+
*/
|
|
86
|
+
string(value: string | number | boolean): SQLStringMarker;
|
|
87
|
+
/**
|
|
88
|
+
* Create a BOOLEAN type parameter
|
|
89
|
+
* Accepts booleans, strings, or numbers
|
|
90
|
+
* @param value - Boolean, string, or number
|
|
91
|
+
* @returns Marker object for BOOLEAN type parameter
|
|
92
|
+
* @example
|
|
93
|
+
* ```typescript
|
|
94
|
+
* const params = { isActive: sql.boolean(true) };
|
|
95
|
+
* params = { isActive: "true" }
|
|
96
|
+
* ```
|
|
97
|
+
* @example
|
|
98
|
+
* ```typescript
|
|
99
|
+
* const params = { isActive: sql.boolean("true") };
|
|
100
|
+
* params = { isActive: "true" }
|
|
101
|
+
* ```
|
|
102
|
+
* @example
|
|
103
|
+
* ```typescript
|
|
104
|
+
* const params = { isActive: sql.boolean(1) };
|
|
105
|
+
* params = { isActive: "true" }
|
|
106
|
+
* ```
|
|
107
|
+
* @example
|
|
108
|
+
* ```typescript
|
|
109
|
+
* const params = { isActive: sql.boolean("false") };
|
|
110
|
+
* params = { isActive: "false" }
|
|
111
|
+
* ```
|
|
112
|
+
* @example
|
|
113
|
+
* ```typescript
|
|
114
|
+
* const params = { isActive: sql.boolean(0) };
|
|
115
|
+
* params = { isActive: "false" }
|
|
116
|
+
* ```
|
|
117
|
+
* @returns
|
|
118
|
+
*/
|
|
119
|
+
boolean(value: boolean | string | number): SQLBooleanMarker;
|
|
120
|
+
/**
|
|
121
|
+
* Creates a BINARY parameter as hex-encoded STRING
|
|
122
|
+
* Accepts Uint8Array, ArrayBuffer, or hex string
|
|
123
|
+
* Note: Databricks SQL Warehouse doesn't support BINARY as parameter type,
|
|
124
|
+
* so this helper returns a STRING with hex encoding. Use UNHEX(:param) in your SQL.
|
|
125
|
+
* @param value - Uint8Array, ArrayBuffer, or hex string
|
|
126
|
+
* @returns Marker object with STRING type and hex-encoded value
|
|
127
|
+
* @example
|
|
128
|
+
* ```typescript
|
|
129
|
+
* // From Uint8Array:
|
|
130
|
+
* const params = { data: sql.binary(new Uint8Array([0x53, 0x70, 0x61, 0x72, 0x6b])) };
|
|
131
|
+
* // Returns: { __sql_type: "STRING", value: "537061726B" }
|
|
132
|
+
* // SQL: SELECT UNHEX(:data) as binary_value
|
|
133
|
+
* ```
|
|
134
|
+
* @example
|
|
135
|
+
* ```typescript
|
|
136
|
+
* // From hex string:
|
|
137
|
+
* const params = { data: sql.binary("537061726B") };
|
|
138
|
+
* // Returns: { __sql_type: "STRING", value: "537061726B" }
|
|
139
|
+
* ```
|
|
140
|
+
*/
|
|
141
|
+
binary(value: Uint8Array | ArrayBuffer | string): SQLBinaryMarker;
|
|
142
|
+
};
|
|
143
|
+
/**
|
|
144
|
+
* Type guard to check if a value is a SQL type marker
|
|
145
|
+
* @param value - Value to check
|
|
146
|
+
* @returns True if the value is a SQL type marker, false otherwise
|
|
147
|
+
* @example
|
|
148
|
+
* ```typescript
|
|
149
|
+
* const value = {
|
|
150
|
+
* __sql_type: "DATE",
|
|
151
|
+
* value: "2024-01-01",
|
|
152
|
+
* };
|
|
153
|
+
* const isSQLTypeMarker = isSQLTypeMarker(value);
|
|
154
|
+
* console.log(isSQLTypeMarker); // true
|
|
155
|
+
* ```
|
|
156
|
+
*/
|
|
157
|
+
declare function isSQLTypeMarker(value: any): value is SQLTypeMarker;
|
|
158
|
+
//#endregion
|
|
159
|
+
export { isSQLTypeMarker, sql };
|
|
160
|
+
//# sourceMappingURL=helpers.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"helpers.d.ts","names":[],"sources":["../../../../../shared/src/sql/helpers.ts"],"sourcesContent":[],"mappings":";;;;;;AAaA;AA0TC,cA1TY,GA0TZ,EAAA;;;;;;;;;;;;AAgBD;;;;;cAzTc,gBAAgB;;;;;;;;;;;;;;;;;;;;;;mBAmDX,yBAAyB;;;;;;;;;;;;;;;;;kCA6CV;;;;;;;;;;;;;;;;;;;;;;4CAkDU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6CAyDC;;;;;;;;;;;;;;;;;;;;;;gBA8D7B,aAAa,uBAAuB;;;;;;;;;;;;;;;;iBAgDpC,eAAA,uBAAsC"}
|
|
@@ -0,0 +1,103 @@
|
|
|
1
|
+
//#region ../shared/src/sql/helpers.ts
|
|
2
|
+
/**
|
|
3
|
+
* SQL helper namespace
|
|
4
|
+
*/
|
|
5
|
+
const sql = {
|
|
6
|
+
date(value) {
|
|
7
|
+
let dateValue = "";
|
|
8
|
+
if (value instanceof Date) dateValue = value.toISOString().split("T")[0];
|
|
9
|
+
else if (typeof value === "string") {
|
|
10
|
+
if (!/^\d{4}-\d{2}-\d{2}$/.test(value)) throw new Error(`sql.date() expects Date or ISO date string (YYYY-MM-DD format), got: ${value}`);
|
|
11
|
+
dateValue = value;
|
|
12
|
+
} else throw new Error(`sql.date() expects Date or ISO date string (YYYY-MM-DD format), got: ${typeof value}`);
|
|
13
|
+
return {
|
|
14
|
+
__sql_type: "DATE",
|
|
15
|
+
value: dateValue
|
|
16
|
+
};
|
|
17
|
+
},
|
|
18
|
+
timestamp(value) {
|
|
19
|
+
let timestampValue = "";
|
|
20
|
+
if (value instanceof Date) timestampValue = value.toISOString().replace(/\.000(Z|[+-])/, "$1");
|
|
21
|
+
else if (typeof value === "string") {
|
|
22
|
+
if (!/^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}(\.\d{1,9})?(Z|[+-]\d{2}:\d{2})?$/.test(value)) throw new Error(`sql.timestamp() expects ISO timestamp string (YYYY-MM-DDTHH:MM:SS.mmmZ or YYYY-MM-DDTHH:MM:SS.mmm+HH:MM), got: ${value}`);
|
|
23
|
+
timestampValue = value;
|
|
24
|
+
} else if (typeof value === "number") timestampValue = new Date(value > 0xe8d4a51000 ? value : value * 1e3).toISOString().replace(/\.000(Z|[+-])/, "$1");
|
|
25
|
+
else throw new Error(`sql.timestamp() expects Date, ISO timestamp string, or Unix timestamp number, got: ${typeof value}`);
|
|
26
|
+
return {
|
|
27
|
+
__sql_type: "TIMESTAMP",
|
|
28
|
+
value: timestampValue
|
|
29
|
+
};
|
|
30
|
+
},
|
|
31
|
+
number(value) {
|
|
32
|
+
let numValue = "";
|
|
33
|
+
if (typeof value === "number") numValue = value.toString();
|
|
34
|
+
else if (typeof value === "string") {
|
|
35
|
+
if (value === "" || Number.isNaN(Number(value))) throw new Error(`sql.number() expects number or numeric string, got: ${value === "" ? "empty string" : value}`);
|
|
36
|
+
numValue = value;
|
|
37
|
+
} else throw new Error(`sql.number() expects number or numeric string, got: ${typeof value}`);
|
|
38
|
+
return {
|
|
39
|
+
__sql_type: "NUMERIC",
|
|
40
|
+
value: numValue
|
|
41
|
+
};
|
|
42
|
+
},
|
|
43
|
+
string(value) {
|
|
44
|
+
if (typeof value !== "string" && typeof value !== "number" && typeof value !== "boolean") throw new Error(`sql.string() expects string or number or boolean, got: ${typeof value}`);
|
|
45
|
+
let stringValue = "";
|
|
46
|
+
if (typeof value === "string") stringValue = value;
|
|
47
|
+
else stringValue = value.toString();
|
|
48
|
+
return {
|
|
49
|
+
__sql_type: "STRING",
|
|
50
|
+
value: stringValue
|
|
51
|
+
};
|
|
52
|
+
},
|
|
53
|
+
boolean(value) {
|
|
54
|
+
if (typeof value !== "boolean" && typeof value !== "string" && typeof value !== "number") throw new Error(`sql.boolean() expects boolean or string (true or false) or number (1 or 0), got: ${typeof value}`);
|
|
55
|
+
let booleanValue = "";
|
|
56
|
+
if (typeof value === "boolean") booleanValue = value.toString();
|
|
57
|
+
else if (typeof value === "number") {
|
|
58
|
+
if (value !== 1 && value !== 0) throw new Error(`sql.boolean() expects boolean or string (true or false) or number (1 or 0), got: ${value}`);
|
|
59
|
+
booleanValue = value === 1 ? "true" : "false";
|
|
60
|
+
} else if (typeof value === "string") {
|
|
61
|
+
if (value !== "true" && value !== "false") throw new Error(`sql.boolean() expects boolean or string (true or false) or number (1 or 0), got: ${value}`);
|
|
62
|
+
booleanValue = value;
|
|
63
|
+
}
|
|
64
|
+
return {
|
|
65
|
+
__sql_type: "BOOLEAN",
|
|
66
|
+
value: booleanValue
|
|
67
|
+
};
|
|
68
|
+
},
|
|
69
|
+
binary(value) {
|
|
70
|
+
let hexValue = "";
|
|
71
|
+
if (value instanceof Uint8Array) hexValue = Array.from(value).map((b) => b.toString(16).padStart(2, "0").toUpperCase()).join("");
|
|
72
|
+
else if (value instanceof ArrayBuffer) hexValue = Array.from(new Uint8Array(value)).map((b) => b.toString(16).padStart(2, "0").toUpperCase()).join("");
|
|
73
|
+
else if (typeof value === "string") {
|
|
74
|
+
if (!/^[0-9A-Fa-f]*$/.test(value)) throw new Error(`sql.binary() expects Uint8Array, ArrayBuffer, or hex string, got invalid hex: ${value}`);
|
|
75
|
+
hexValue = value.toUpperCase();
|
|
76
|
+
} else throw new Error(`sql.binary() expects Uint8Array, ArrayBuffer, or hex string, got: ${typeof value}`);
|
|
77
|
+
return {
|
|
78
|
+
__sql_type: "STRING",
|
|
79
|
+
value: hexValue
|
|
80
|
+
};
|
|
81
|
+
}
|
|
82
|
+
};
|
|
83
|
+
/**
|
|
84
|
+
* Type guard to check if a value is a SQL type marker
|
|
85
|
+
* @param value - Value to check
|
|
86
|
+
* @returns True if the value is a SQL type marker, false otherwise
|
|
87
|
+
* @example
|
|
88
|
+
* ```typescript
|
|
89
|
+
* const value = {
|
|
90
|
+
* __sql_type: "DATE",
|
|
91
|
+
* value: "2024-01-01",
|
|
92
|
+
* };
|
|
93
|
+
* const isSQLTypeMarker = isSQLTypeMarker(value);
|
|
94
|
+
* console.log(isSQLTypeMarker); // true
|
|
95
|
+
* ```
|
|
96
|
+
*/
|
|
97
|
+
function isSQLTypeMarker(value) {
|
|
98
|
+
return value !== null && typeof value === "object" && "__sql_type" in value && "value" in value && typeof value.__sql_type === "string" && typeof value.value === "string";
|
|
99
|
+
}
|
|
100
|
+
|
|
101
|
+
//#endregion
|
|
102
|
+
export { isSQLTypeMarker, sql };
|
|
103
|
+
//# sourceMappingURL=helpers.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"helpers.js","names":["dateValue: string","timestampValue: string","numValue: string","stringValue: string","booleanValue: string","hexValue: string"],"sources":["../../../../../shared/src/sql/helpers.ts"],"sourcesContent":["import type {\n SQLBinaryMarker,\n SQLBooleanMarker,\n SQLDateMarker,\n SQLNumberMarker,\n SQLStringMarker,\n SQLTimestampMarker,\n SQLTypeMarker,\n} from \"./types\";\n\n/**\n * SQL helper namespace\n */\nexport const sql = {\n /**\n * Creates a DATE type parameter\n * Accepts Date objects or ISO date strings (YYYY-MM-DD format)\n * @param value - Date object or ISO date string\n * @returns Marker object for DATE type parameter\n * @example\n * ```typescript\n * const params = { startDate: sql.date(new Date(\"2024-01-01\")) };\n * params = { startDate: \"2024-01-01\" }\n * ```\n * @example\n * ```typescript\n * const params = { startDate: sql.date(\"2024-01-01\") };\n * params = { startDate: \"2024-01-01\" }\n * ```\n */\n date(value: Date | string): SQLDateMarker {\n let dateValue: string = \"\";\n\n // check if value is a Date object\n if (value instanceof Date) {\n dateValue = value.toISOString().split(\"T\")[0];\n }\n // check if value is a string\n else if (typeof value === \"string\") {\n // validate format\n if (!/^\\d{4}-\\d{2}-\\d{2}$/.test(value)) {\n throw new Error(\n `sql.date() expects Date or ISO date string (YYYY-MM-DD format), got: ${value}`,\n );\n }\n dateValue = value;\n }\n // if value is not a Date object or string, throw an error\n else {\n throw new Error(\n `sql.date() expects Date or ISO date string (YYYY-MM-DD format), got: ${typeof value}`,\n );\n }\n\n return {\n __sql_type: \"DATE\",\n value: dateValue,\n };\n },\n\n /**\n * Creates a TIMESTAMP type parameter\n * Accepts Date objects, ISO timestamp strings, or Unix timestamp numbers\n * @param value - Date object, ISO timestamp string, or Unix timestamp number\n * @returns Marker object for TIMESTAMP type parameter\n * @example\n * ```typescript\n * const params = { createdTime: sql.timestamp(new Date(\"2024-01-01T12:00:00Z\")) };\n * params = { createdTime: \"2024-01-01T12:00:00Z\" }\n * ```\n * @example\n * ```typescript\n * const params = { createdTime: sql.timestamp(\"2024-01-01T12:00:00Z\") };\n * params = { createdTime: \"2024-01-01T12:00:00Z\" }\n * ```\n * @example\n * ```typescript\n * const params = { createdTime: sql.timestamp(1704110400000) };\n * params = { createdTime: \"2024-01-01T12:00:00Z\" }\n * ```\n */\n timestamp(value: Date | string | number): SQLTimestampMarker {\n let timestampValue: string = \"\";\n\n if (value instanceof Date) {\n timestampValue = value.toISOString().replace(/\\.000(Z|[+-])/, \"$1\");\n } else if (typeof value === \"string\") {\n const isoRegex =\n /^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}(\\.\\d{1,9})?(Z|[+-]\\d{2}:\\d{2})?$/;\n if (!isoRegex.test(value)) {\n throw new Error(\n `sql.timestamp() expects ISO timestamp string (YYYY-MM-DDTHH:MM:SS.mmmZ or YYYY-MM-DDTHH:MM:SS.mmm+HH:MM), got: ${value}`,\n );\n }\n timestampValue = value;\n } else if (typeof value === \"number\") {\n const date = new Date(value > 1e12 ? value : value * 1000);\n timestampValue = date.toISOString().replace(/\\.000(Z|[+-])/, \"$1\");\n } else {\n throw new Error(\n `sql.timestamp() expects Date, ISO timestamp string, or Unix timestamp number, got: ${typeof value}`,\n );\n }\n\n return {\n __sql_type: \"TIMESTAMP\",\n value: timestampValue,\n };\n },\n\n /**\n * Creates a NUMERIC type parameter\n * Accepts numbers or numeric strings\n * @param value - Number or numeric string\n * @returns Marker object for NUMERIC type parameter\n * @example\n * ```typescript\n * const params = { userId: sql.number(123) };\n * params = { userId: \"123\" }\n * ```\n * @example\n * ```typescript\n * const params = { userId: sql.number(\"123\") };\n * params = { userId: \"123\" }\n * ```\n */\n number(value: number | string): SQLNumberMarker {\n let numValue: string = \"\";\n\n // check if value is a number\n if (typeof value === \"number\") {\n numValue = value.toString();\n }\n // check if value is a string\n else if (typeof value === \"string\") {\n if (value === \"\" || Number.isNaN(Number(value))) {\n throw new Error(\n `sql.number() expects number or numeric string, got: ${value === \"\" ? \"empty string\" : value}`,\n );\n }\n numValue = value;\n }\n // if value is not a number or string, throw an error\n else {\n throw new Error(\n `sql.number() expects number or numeric string, got: ${typeof value}`,\n );\n }\n\n return {\n __sql_type: \"NUMERIC\",\n value: numValue,\n };\n },\n\n /**\n * Creates a STRING type parameter\n * Accepts strings, numbers, or booleans\n * @param value - String, number, or boolean\n * @returns Marker object for STRING type parameter\n * @example\n * ```typescript\n * const params = { name: sql.string(\"John\") };\n * params = { name: \"John\" }\n * ```\n * @example\n * ```typescript\n * const params = { name: sql.string(123) };\n * params = { name: \"123\" }\n * ```\n * @example\n * ```typescript\n * const params = { name: sql.string(true) };\n * params = { name: \"true\" }\n * ```\n */\n string(value: string | number | boolean): SQLStringMarker {\n if (\n typeof value !== \"string\" &&\n typeof value !== \"number\" &&\n typeof value !== \"boolean\"\n ) {\n throw new Error(\n `sql.string() expects string or number or boolean, got: ${typeof value}`,\n );\n }\n\n let stringValue: string = \"\";\n\n if (typeof value === \"string\") {\n stringValue = value;\n } else {\n stringValue = value.toString();\n }\n\n return {\n __sql_type: \"STRING\",\n value: stringValue,\n };\n },\n\n /**\n * Create a BOOLEAN type parameter\n * Accepts booleans, strings, or numbers\n * @param value - Boolean, string, or number\n * @returns Marker object for BOOLEAN type parameter\n * @example\n * ```typescript\n * const params = { isActive: sql.boolean(true) };\n * params = { isActive: \"true\" }\n * ```\n * @example\n * ```typescript\n * const params = { isActive: sql.boolean(\"true\") };\n * params = { isActive: \"true\" }\n * ```\n * @example\n * ```typescript\n * const params = { isActive: sql.boolean(1) };\n * params = { isActive: \"true\" }\n * ```\n * @example\n * ```typescript\n * const params = { isActive: sql.boolean(\"false\") };\n * params = { isActive: \"false\" }\n * ```\n * @example\n * ```typescript\n * const params = { isActive: sql.boolean(0) };\n * params = { isActive: \"false\" }\n * ```\n * @returns\n */\n boolean(value: boolean | string | number): SQLBooleanMarker {\n if (\n typeof value !== \"boolean\" &&\n typeof value !== \"string\" &&\n typeof value !== \"number\"\n ) {\n throw new Error(\n `sql.boolean() expects boolean or string (true or false) or number (1 or 0), got: ${typeof value}`,\n );\n }\n\n let booleanValue: string = \"\";\n\n if (typeof value === \"boolean\") {\n booleanValue = value.toString();\n }\n // check if value is a number\n else if (typeof value === \"number\") {\n if (value !== 1 && value !== 0) {\n throw new Error(\n `sql.boolean() expects boolean or string (true or false) or number (1 or 0), got: ${value}`,\n );\n }\n booleanValue = value === 1 ? \"true\" : \"false\";\n }\n // check if value is a string\n else if (typeof value === \"string\") {\n if (value !== \"true\" && value !== \"false\") {\n throw new Error(\n `sql.boolean() expects boolean or string (true or false) or number (1 or 0), got: ${value}`,\n );\n }\n booleanValue = value;\n }\n\n return {\n __sql_type: \"BOOLEAN\",\n value: booleanValue,\n };\n },\n\n /**\n * Creates a BINARY parameter as hex-encoded STRING\n * Accepts Uint8Array, ArrayBuffer, or hex string\n * Note: Databricks SQL Warehouse doesn't support BINARY as parameter type,\n * so this helper returns a STRING with hex encoding. Use UNHEX(:param) in your SQL.\n * @param value - Uint8Array, ArrayBuffer, or hex string\n * @returns Marker object with STRING type and hex-encoded value\n * @example\n * ```typescript\n * // From Uint8Array:\n * const params = { data: sql.binary(new Uint8Array([0x53, 0x70, 0x61, 0x72, 0x6b])) };\n * // Returns: { __sql_type: \"STRING\", value: \"537061726B\" }\n * // SQL: SELECT UNHEX(:data) as binary_value\n * ```\n * @example\n * ```typescript\n * // From hex string:\n * const params = { data: sql.binary(\"537061726B\") };\n * // Returns: { __sql_type: \"STRING\", value: \"537061726B\" }\n * ```\n */\n binary(value: Uint8Array | ArrayBuffer | string): SQLBinaryMarker {\n let hexValue: string = \"\";\n\n if (value instanceof Uint8Array) {\n // if value is a Uint8Array, convert it to a hex string\n hexValue = Array.from(value)\n .map((b) => b.toString(16).padStart(2, \"0\").toUpperCase())\n .join(\"\");\n } else if (value instanceof ArrayBuffer) {\n // if value is an ArrayBuffer, convert it to a hex string\n hexValue = Array.from(new Uint8Array(value))\n .map((b) => b.toString(16).padStart(2, \"0\").toUpperCase())\n .join(\"\");\n } else if (typeof value === \"string\") {\n // validate hex string\n if (!/^[0-9A-Fa-f]*$/.test(value)) {\n throw new Error(\n `sql.binary() expects Uint8Array, ArrayBuffer, or hex string, got invalid hex: ${value}`,\n );\n }\n hexValue = value.toUpperCase();\n } else {\n throw new Error(\n `sql.binary() expects Uint8Array, ArrayBuffer, or hex string, got: ${typeof value}`,\n );\n }\n\n return {\n __sql_type: \"STRING\",\n value: hexValue,\n };\n },\n};\n\n/**\n * Type guard to check if a value is a SQL type marker\n * @param value - Value to check\n * @returns True if the value is a SQL type marker, false otherwise\n * @example\n * ```typescript\n * const value = {\n * __sql_type: \"DATE\",\n * value: \"2024-01-01\",\n * };\n * const isSQLTypeMarker = isSQLTypeMarker(value);\n * console.log(isSQLTypeMarker); // true\n * ```\n */\nexport function isSQLTypeMarker(value: any): value is SQLTypeMarker {\n return (\n value !== null &&\n typeof value === \"object\" &&\n \"__sql_type\" in value &&\n \"value\" in value &&\n typeof value.__sql_type === \"string\" &&\n typeof value.value === \"string\"\n );\n}\n"],"mappings":"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"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
//#region ../shared/src/sql/types.d.ts
|
|
2
|
+
interface SQLStringMarker {
|
|
3
|
+
__sql_type: "STRING";
|
|
4
|
+
value: string;
|
|
5
|
+
}
|
|
6
|
+
interface SQLNumberMarker {
|
|
7
|
+
__sql_type: "NUMERIC";
|
|
8
|
+
value: string;
|
|
9
|
+
}
|
|
10
|
+
interface SQLBooleanMarker {
|
|
11
|
+
__sql_type: "BOOLEAN";
|
|
12
|
+
value: string;
|
|
13
|
+
}
|
|
14
|
+
/** SQL Binary marker is a STRING with hex encoding */
|
|
15
|
+
interface SQLBinaryMarker {
|
|
16
|
+
__sql_type: "STRING";
|
|
17
|
+
value: string;
|
|
18
|
+
}
|
|
19
|
+
interface SQLDateMarker {
|
|
20
|
+
__sql_type: "DATE";
|
|
21
|
+
value: string;
|
|
22
|
+
}
|
|
23
|
+
interface SQLTimestampMarker {
|
|
24
|
+
__sql_type: "TIMESTAMP";
|
|
25
|
+
value: string;
|
|
26
|
+
}
|
|
27
|
+
/**
|
|
28
|
+
* Object that identifies a typed SQL parameter.
|
|
29
|
+
* Created using sql.date(), sql.string(), sql.number(), sql.boolean(), sql.timestamp(), sql.binary(), or sql.interval().
|
|
30
|
+
*/
|
|
31
|
+
type SQLTypeMarker = SQLStringMarker | SQLNumberMarker | SQLBooleanMarker | SQLBinaryMarker | SQLDateMarker | SQLTimestampMarker;
|
|
32
|
+
//#endregion
|
|
33
|
+
export { SQLBinaryMarker, SQLBooleanMarker, SQLDateMarker, SQLNumberMarker, SQLStringMarker, SQLTimestampMarker, SQLTypeMarker };
|
|
34
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","names":[],"sources":["../../../../../shared/src/sql/types.ts"],"sourcesContent":[],"mappings":";UAAiB,eAAA;EAAA,UAAA,EAAA,QAAe;EAKf,KAAA,EAAA,MAAA;AAKjB;AAMiB,UAXA,eAAA,CAWe;EAKf,UAAA,EAAA,SAAa;EAKb,KAAA,EAAA,MAAA;AASjB;AAAyB,UAzBR,gBAAA,CAyBQ;YACrB,EAAA,SAAA;OACA,EAAA,MAAA;;;AAGA,UAxBa,eAAA,CAwBb;YACA,EAAA,QAAA;EAAkB,KAAA,EAAA,MAAA;;UApBL,aAAA;;;;UAKA,kBAAA;;;;;;;;KASL,aAAA,GACR,kBACA,kBACA,mBACA,kBACA,gBACA"}
|