@sqlrooms/kepler 0.27.0-rc.4 → 0.27.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
|
@@ -5,6 +5,7 @@ export interface KeplerImageExportProps {
|
|
|
5
5
|
cleanupExportImage: () => void;
|
|
6
6
|
exportImageSettings: ExportImage;
|
|
7
7
|
fileName?: string;
|
|
8
|
+
onExportStart?: () => void;
|
|
8
9
|
}
|
|
9
10
|
export declare const KeplerImageExport: React.FC<KeplerImageExportProps>;
|
|
10
11
|
//# sourceMappingURL=KeplerImageExport.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"KeplerImageExport.d.ts","sourceRoot":"","sources":["../../src/components/KeplerImageExport.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA+B,MAAM,OAAO,CAAC;AAwBpD,OAAO,EAAC,WAAW,EAAC,MAAM,kBAAkB,CAAC;AAE7C,MAAM,WAAW,sBAAsB;IACrC,qBAAqB,EAAE,CAAC,QAAQ,EAAE,OAAO,CAAC,WAAW,CAAC,KAAK,IAAI,CAAC;IAChE,kBAAkB,EAAE,MAAM,IAAI,CAAC;IAC/B,mBAAmB,EAAE,WAAW,CAAC;IACjC,QAAQ,CAAC,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"KeplerImageExport.d.ts","sourceRoot":"","sources":["../../src/components/KeplerImageExport.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA+B,MAAM,OAAO,CAAC;AAwBpD,OAAO,EAAC,WAAW,EAAC,MAAM,kBAAkB,CAAC;AAE7C,MAAM,WAAW,sBAAsB;IACrC,qBAAqB,EAAE,CAAC,QAAQ,EAAE,OAAO,CAAC,WAAW,CAAC,KAAK,IAAI,CAAC;IAChE,kBAAkB,EAAE,MAAM,IAAI,CAAC;IAC/B,mBAAmB,EAAE,WAAW,CAAC;IACjC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,aAAa,CAAC,EAAE,MAAM,IAAI,CAAC;CAC5B;AAED,eAAO,MAAM,iBAAiB,EAAE,KAAK,CAAC,EAAE,CAAC,sBAAsB,CAqG9D,CAAC"}
|
|
@@ -5,7 +5,7 @@ import { EXPORT_IMG_RATIO_OPTIONS, EXPORT_IMG_RESOLUTION_OPTIONS, } from '@keple
|
|
|
5
5
|
import { FormattedMessage } from '@kepler.gl/localization';
|
|
6
6
|
import { ImagePreview } from '@kepler.gl/components';
|
|
7
7
|
import { dataURItoBlob, downloadFile } from '@kepler.gl/utils';
|
|
8
|
-
export const KeplerImageExport = ({ setExportImageSetting, cleanupExportImage, exportImageSettings, fileName, }) => {
|
|
8
|
+
export const KeplerImageExport = ({ setExportImageSetting, cleanupExportImage, exportImageSettings, fileName, onExportStart, }) => {
|
|
9
9
|
const { legend, ratio, resolution, processing, imageDataUri } = exportImageSettings;
|
|
10
10
|
useEffect(() => {
|
|
11
11
|
setExportImageSetting({
|
|
@@ -15,10 +15,11 @@ export const KeplerImageExport = ({ setExportImageSetting, cleanupExportImage, e
|
|
|
15
15
|
}, [setExportImageSetting, cleanupExportImage]);
|
|
16
16
|
const handleExportImage = useCallback(() => {
|
|
17
17
|
if (!processing && imageDataUri) {
|
|
18
|
+
onExportStart?.();
|
|
18
19
|
const file = dataURItoBlob(imageDataUri);
|
|
19
20
|
downloadFile(file, `${fileName || 'Untitled'}.png`);
|
|
20
21
|
}
|
|
21
|
-
}, [processing, imageDataUri, fileName]);
|
|
22
|
+
}, [processing, imageDataUri, fileName, onExportStart]);
|
|
22
23
|
return (_jsxs("div", { className: "flex flex-col gap-6 px-[5px] pb-5 pt-1", children: [_jsx(ImagePreview, { exportImage: exportImageSettings }), _jsxs("div", { className: "grid grid-cols-[100px_auto] items-center gap-4", children: [_jsx(Label, { children: "Resolution" }), _jsxs(Select, { value: resolution, onValueChange: (value) => setExportImageSetting({
|
|
23
24
|
resolution: value,
|
|
24
25
|
}), children: [_jsx(SelectTrigger, { children: _jsx(SelectValue, { placeholder: "Select resolution" }) }), _jsx(SelectContent, { children: EXPORT_IMG_RESOLUTION_OPTIONS.map((option) => (_jsx(SelectItem, { value: option.id, disabled: !option.available, children: option.label }, option.id))) })] }), _jsx(Label, { children: "Ratio" }), _jsxs(Select, { value: ratio, onValueChange: (value) => setExportImageSetting({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"KeplerImageExport.js","sourceRoot":"","sources":["../../src/components/KeplerImageExport.tsx"],"names":[],"mappings":";AAAA,OAAc,EAAC,WAAW,EAAE,SAAS,EAAC,MAAM,OAAO,CAAC;AACpD,OAAO,EACL,MAAM,EACN,MAAM,EACN,aAAa,EACb,UAAU,EACV,aAAa,EACb,WAAW,EACX,KAAK,EACL,MAAM,GACP,MAAM,cAAc,CAAC;AAKtB,OAAO,EAGL,wBAAwB,EACxB,6BAA6B,GAC9B,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAC,gBAAgB,EAAC,MAAM,yBAAyB,CAAC;AACzD,OAAO,EAAC,YAAY,EAAC,MAAM,uBAAuB,CAAC;AACnD,OAAO,EAAC,aAAa,EAAE,YAAY,EAAC,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"KeplerImageExport.js","sourceRoot":"","sources":["../../src/components/KeplerImageExport.tsx"],"names":[],"mappings":"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","sourcesContent":["import React, {useCallback, useEffect} from 'react';\nimport {\n Button,\n Select,\n SelectContent,\n SelectItem,\n SelectTrigger,\n SelectValue,\n Label,\n Switch,\n} from '@sqlrooms/ui';\nimport type {\n ImageRatioOption,\n ImageResolutionOption,\n} from '@kepler.gl/constants';\nimport {\n EXPORT_IMG_RATIOS,\n RESOLUTIONS,\n EXPORT_IMG_RATIO_OPTIONS,\n EXPORT_IMG_RESOLUTION_OPTIONS,\n} from '@kepler.gl/constants';\nimport {FormattedMessage} from '@kepler.gl/localization';\nimport {ImagePreview} from '@kepler.gl/components';\nimport {dataURItoBlob, downloadFile} from '@kepler.gl/utils';\nimport {ExportImage} from '@kepler.gl/types';\n\nexport interface KeplerImageExportProps {\n setExportImageSetting: (settings: Partial<ExportImage>) => void;\n cleanupExportImage: () => void;\n exportImageSettings: ExportImage;\n fileName?: string;\n onExportStart?: () => void;\n}\n\nexport const KeplerImageExport: React.FC<KeplerImageExportProps> = ({\n setExportImageSetting,\n cleanupExportImage,\n exportImageSettings,\n fileName,\n onExportStart,\n}) => {\n const {legend, ratio, resolution, processing, imageDataUri} =\n exportImageSettings;\n\n useEffect(() => {\n setExportImageSetting({\n exporting: true,\n });\n return cleanupExportImage;\n }, [setExportImageSetting, cleanupExportImage]);\n\n const handleExportImage = useCallback(() => {\n if (!processing && imageDataUri) {\n onExportStart?.();\n const file = dataURItoBlob(imageDataUri);\n downloadFile(file, `${fileName || 'Untitled'}.png`);\n }\n }, [processing, imageDataUri, fileName, onExportStart]);\n\n return (\n <div className=\"flex flex-col gap-6 px-[5px] pb-5 pt-1\">\n <ImagePreview exportImage={exportImageSettings} />\n <div className=\"grid grid-cols-[100px_auto] items-center gap-4\">\n <Label>Resolution</Label>\n <Select\n value={resolution}\n onValueChange={(value) =>\n setExportImageSetting({\n resolution: value as keyof typeof RESOLUTIONS,\n })\n }\n >\n <SelectTrigger>\n <SelectValue placeholder=\"Select resolution\" />\n </SelectTrigger>\n <SelectContent>\n {EXPORT_IMG_RESOLUTION_OPTIONS.map(\n (option: ImageResolutionOption) => (\n <SelectItem\n key={option.id}\n value={option.id}\n disabled={!option.available}\n >\n {option.label}\n </SelectItem>\n ),\n )}\n </SelectContent>\n </Select>\n\n <Label>Ratio</Label>\n <Select\n value={ratio}\n onValueChange={(value) =>\n setExportImageSetting({\n ratio: value as keyof typeof EXPORT_IMG_RATIOS,\n })\n }\n >\n <SelectTrigger>\n <SelectValue placeholder=\"Select ratio\" />\n </SelectTrigger>\n <SelectContent>\n {EXPORT_IMG_RATIO_OPTIONS.filter(\n (op: ImageRatioOption) => !op.hidden,\n ).map((option: ImageRatioOption) => (\n <SelectItem key={option.id} value={option.id}>\n <FormattedMessage id={option.label} />\n </SelectItem>\n ))}\n </SelectContent>\n </Select>\n\n <Label className=\"font-normal\">Show legend</Label>\n <Switch\n checked={legend}\n onCheckedChange={(checked) =>\n setExportImageSetting({\n legend: checked === true,\n })\n }\n />\n </div>\n\n <div className=\"flex flex-col gap-2\">\n <Button\n variant=\"default\"\n className=\"w-full\"\n onClick={handleExportImage}\n >\n Export Image\n </Button>\n </div>\n </div>\n );\n};\n"]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@sqlrooms/kepler",
|
|
3
|
-
"version": "0.27.0
|
|
3
|
+
"version": "0.27.0",
|
|
4
4
|
"main": "dist/index.js",
|
|
5
5
|
"types": "dist/index.d.ts",
|
|
6
6
|
"module": "dist/index.js",
|
|
@@ -34,11 +34,11 @@
|
|
|
34
34
|
"@kepler.gl/types": "3.2.4",
|
|
35
35
|
"@kepler.gl/utils": "3.2.4",
|
|
36
36
|
"@paralleldrive/cuid2": "^3.0.0",
|
|
37
|
-
"@sqlrooms/duckdb": "0.27.0
|
|
38
|
-
"@sqlrooms/kepler-config": "0.27.0
|
|
39
|
-
"@sqlrooms/room-shell": "0.27.0
|
|
40
|
-
"@sqlrooms/s3-browser": "0.27.0
|
|
41
|
-
"@sqlrooms/ui": "0.27.0
|
|
37
|
+
"@sqlrooms/duckdb": "0.27.0",
|
|
38
|
+
"@sqlrooms/kepler-config": "0.27.0",
|
|
39
|
+
"@sqlrooms/room-shell": "0.27.0",
|
|
40
|
+
"@sqlrooms/s3-browser": "0.27.0",
|
|
41
|
+
"@sqlrooms/ui": "0.27.0",
|
|
42
42
|
"apache-arrow": "17.0.0",
|
|
43
43
|
"immer": "^11.0.1",
|
|
44
44
|
"lucide-react": "^0.556.0",
|
|
@@ -62,5 +62,5 @@
|
|
|
62
62
|
"devDependencies": {
|
|
63
63
|
"@types/redux-logger": "^3.0.13"
|
|
64
64
|
},
|
|
65
|
-
"gitHead": "
|
|
65
|
+
"gitHead": "f215995ab4adeac4c58171739261a15cbba9e82b"
|
|
66
66
|
}
|