@progress/kendo-themes-html 14.5.1-dev.6 → 14.5.1-dev.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/colorgradient/demos/colorgradient.js +1 -1
- package/dist/cjs/colorpicker/colorpicker.spec.js +1 -1
- package/dist/cjs/colorpicker/templates/colorpicker-adaptive.js +1 -1
- package/dist/cjs/colorpicker/templates/colorpicker-disabled.js +1 -1
- package/dist/cjs/colorpicker/templates/colorpicker-normal.js +1 -1
- package/dist/cjs/combobox/demos/combobox.js +1 -1
- package/dist/cjs/combobox/templates/combobox-grouping-modern-custom-value.js +1 -1
- package/dist/cjs/filemanager/filemanager-listview.spec.js +1 -1
- package/dist/cjs/floating-toolbar/floating-toolbar.spec.js +1 -1
- package/dist/cjs/imageeditor/imageeditor-option-list.js +1 -0
- package/dist/cjs/imageeditor/imageeditor-option-preview.js +1 -0
- package/dist/cjs/imageeditor/imageeditor-pane.js +1 -0
- package/dist/cjs/imageeditor/imageeditor-placeholder.js +1 -0
- package/dist/cjs/imageeditor/imageeditor-preview-thumbnail.js +1 -0
- package/dist/cjs/imageeditor/imageeditor-resize-handles.js +1 -0
- package/dist/cjs/imageeditor/imageeditor-sidebar.js +1 -0
- package/dist/cjs/imageeditor/imageeditor-toolbar.js +1 -1
- package/dist/cjs/imageeditor/imageeditor.spec.js +1 -1
- package/dist/cjs/imageeditor/templates/imageeditor-adjustments.js +1 -0
- package/dist/cjs/imageeditor/templates/imageeditor-blur.js +1 -0
- package/dist/cjs/imageeditor/templates/imageeditor-crop.js +1 -1
- package/dist/cjs/imageeditor/templates/imageeditor-disabled.js +1 -0
- package/dist/cjs/imageeditor/templates/imageeditor-filters.js +1 -0
- package/dist/cjs/imageeditor/templates/imageeditor-frames.js +1 -0
- package/dist/cjs/imageeditor/templates/imageeditor-insert-line.js +1 -0
- package/dist/cjs/imageeditor/templates/imageeditor-insert-shape.js +1 -0
- package/dist/cjs/imageeditor/templates/imageeditor-insert-text.js +1 -0
- package/dist/cjs/imageeditor/templates/imageeditor-normal.js +1 -1
- package/dist/cjs/imageeditor/templates/imageeditor-pixelate.js +1 -0
- package/dist/cjs/imageeditor/templates/imageeditor-resize.js +1 -1
- package/dist/cjs/imageeditor/templates/imageeditor-rotate.js +1 -0
- package/dist/cjs/imageeditor/templates/imageeditor-shadow.js +1 -0
- package/dist/cjs/index.js +8 -8
- package/dist/cjs/listview/demos/listview.js +1 -1
- package/dist/cjs/listview/listview.spec.js +1 -1
- package/dist/cjs/listview/templates/listview-no-data.js +1 -1
- package/dist/cjs/listview/templates/listview-normal.js +1 -1
- package/dist/cjs/listview/templates/listview-selectable.js +1 -1
- package/dist/cjs/pager/index.js +1 -1
- package/dist/cjs/prompt/templates/prompt-inline-input-only.js +1 -1
- package/dist/cjs/prompt/templates/prompt-inline.js +1 -1
- package/dist/cjs/prompt/templates/prompt-more-actions.js +1 -1
- package/dist/cjs/prompt/templates/prompt-normal.js +1 -1
- package/dist/cjs/prompt/templates/prompt-output.js +1 -1
- package/dist/cjs/prompt/templates/prompt-popup.js +1 -1
- package/dist/cjs/prompt/templates/prompt-settings.js +1 -1
- package/dist/cjs/prompt/templates/prompt-suggestions.js +1 -1
- package/dist/cjs/scheduler/scheduler-toolbar.spec.js +1 -1
- package/dist/cjs/signature/index.js +1 -1
- package/dist/cjs/signature/signature.spec.js +1 -1
- package/dist/cjs/signature/templates/signature-maximized.js +1 -1
- package/dist/cjs/signature/templates/signature-normal.js +1 -1
- package/dist/cjs/spreadsheet/spreadsheet-action-bar.js +1 -1
- package/dist/cjs/toolbar/demos/toolbar.js +1 -1
- package/dist/cjs/toolbar/templates/toolbar-scrollable-buttons-hidden.js +1 -1
- package/dist/cjs/toolbar/templates/toolbar-scrollable.js +1 -1
- package/dist/esm/colorgradient/demos/colorgradient.mjs +1 -1
- package/dist/esm/colorpicker/colorpicker.spec.mjs +1 -1
- package/dist/esm/colorpicker/templates/colorpicker-adaptive.mjs +1 -1
- package/dist/esm/colorpicker/templates/colorpicker-disabled.mjs +1 -1
- package/dist/esm/colorpicker/templates/colorpicker-normal.mjs +1 -1
- package/dist/esm/combobox/demos/combobox.mjs +1 -1
- package/dist/esm/combobox/templates/combobox-grouping-modern-custom-value.mjs +1 -1
- package/dist/esm/filemanager/filemanager-listview.spec.mjs +1 -1
- package/dist/esm/floating-toolbar/floating-toolbar.spec.mjs +1 -1
- package/dist/esm/imageeditor/imageeditor-option-list.mjs +1 -0
- package/dist/esm/imageeditor/imageeditor-option-preview.mjs +1 -0
- package/dist/esm/imageeditor/imageeditor-pane.mjs +1 -0
- package/dist/esm/imageeditor/imageeditor-placeholder.mjs +1 -0
- package/dist/esm/imageeditor/imageeditor-preview-thumbnail.mjs +1 -0
- package/dist/esm/imageeditor/imageeditor-resize-handles.mjs +1 -0
- package/dist/esm/imageeditor/imageeditor-sidebar.mjs +1 -0
- package/dist/esm/imageeditor/imageeditor-toolbar.mjs +1 -1
- package/dist/esm/imageeditor/imageeditor.spec.mjs +1 -1
- package/dist/esm/imageeditor/templates/imageeditor-adjustments.mjs +1 -0
- package/dist/esm/imageeditor/templates/imageeditor-blur.mjs +1 -0
- package/dist/esm/imageeditor/templates/imageeditor-crop.mjs +1 -1
- package/dist/esm/imageeditor/templates/imageeditor-disabled.mjs +1 -0
- package/dist/esm/imageeditor/templates/imageeditor-filters.mjs +1 -0
- package/dist/esm/imageeditor/templates/imageeditor-frames.mjs +1 -0
- package/dist/esm/imageeditor/templates/imageeditor-insert-line.mjs +1 -0
- package/dist/esm/imageeditor/templates/imageeditor-insert-shape.mjs +1 -0
- package/dist/esm/imageeditor/templates/imageeditor-insert-text.mjs +1 -0
- package/dist/esm/imageeditor/templates/imageeditor-normal.mjs +1 -1
- package/dist/esm/imageeditor/templates/imageeditor-pixelate.mjs +1 -0
- package/dist/esm/imageeditor/templates/imageeditor-resize.mjs +1 -1
- package/dist/esm/imageeditor/templates/imageeditor-rotate.mjs +1 -0
- package/dist/esm/imageeditor/templates/imageeditor-shadow.mjs +1 -0
- package/dist/esm/index.mjs +8 -8
- package/dist/esm/listview/demos/listview.mjs +1 -1
- package/dist/esm/listview/templates/listview-no-data.mjs +1 -1
- package/dist/esm/listview/templates/listview-normal.mjs +1 -1
- package/dist/esm/listview/templates/listview-selectable.mjs +1 -1
- package/dist/esm/pager/index.mjs +1 -1
- package/dist/esm/prompt/templates/prompt-inline-input-only.mjs +1 -1
- package/dist/esm/prompt/templates/prompt-inline.mjs +1 -1
- package/dist/esm/prompt/templates/prompt-more-actions.mjs +1 -1
- package/dist/esm/prompt/templates/prompt-normal.mjs +1 -1
- package/dist/esm/prompt/templates/prompt-output.mjs +1 -1
- package/dist/esm/prompt/templates/prompt-popup.mjs +1 -1
- package/dist/esm/prompt/templates/prompt-settings.mjs +1 -1
- package/dist/esm/prompt/templates/prompt-suggestions.mjs +1 -1
- package/dist/esm/scheduler/scheduler-toolbar.spec.mjs +1 -1
- package/dist/esm/signature/index.mjs +1 -1
- package/dist/esm/signature/signature.spec.mjs +1 -1
- package/dist/esm/signature/templates/signature-maximized.mjs +1 -1
- package/dist/esm/signature/templates/signature-normal.mjs +1 -1
- package/dist/esm/spreadsheet/spreadsheet-action-bar.mjs +1 -1
- package/dist/esm/toolbar/demos/toolbar.mjs +1 -1
- package/dist/esm/toolbar/templates/toolbar-scrollable-buttons-hidden.mjs +1 -1
- package/dist/esm/toolbar/templates/toolbar-scrollable.mjs +1 -1
- package/dist/types/combobox/combobox.spec.d.ts +1 -1
- package/dist/types/imageeditor/imageeditor-option-list.d.ts +18 -0
- package/dist/types/imageeditor/imageeditor-option-preview.d.ts +18 -0
- package/dist/types/imageeditor/imageeditor-pane.d.ts +21 -0
- package/dist/types/imageeditor/imageeditor-placeholder.d.ts +7 -0
- package/dist/types/imageeditor/imageeditor-preview-thumbnail.d.ts +12 -0
- package/dist/types/imageeditor/imageeditor-resize-handles.d.ts +14 -0
- package/dist/types/imageeditor/imageeditor-sidebar.d.ts +11 -0
- package/dist/types/imageeditor/imageeditor-toolbar.d.ts +1 -0
- package/dist/types/imageeditor/imageeditor.spec.d.ts +40 -4
- package/dist/types/imageeditor/index.d.ts +18 -0
- package/dist/types/imageeditor/templates/imageeditor-adjustments.d.ts +1 -0
- package/dist/types/imageeditor/templates/imageeditor-blur.d.ts +1 -0
- package/dist/types/imageeditor/templates/imageeditor-disabled.d.ts +1 -0
- package/dist/types/imageeditor/templates/imageeditor-filters.d.ts +6 -0
- package/dist/types/imageeditor/templates/imageeditor-frames.d.ts +1 -0
- package/dist/types/imageeditor/templates/imageeditor-insert-line.d.ts +2 -0
- package/dist/types/imageeditor/templates/imageeditor-insert-shape.d.ts +2 -0
- package/dist/types/imageeditor/templates/imageeditor-insert-text.d.ts +2 -0
- package/dist/types/imageeditor/templates/imageeditor-pixelate.d.ts +1 -0
- package/dist/types/imageeditor/templates/imageeditor-rotate.d.ts +1 -0
- package/dist/types/imageeditor/templates/imageeditor-shadow.d.ts +1 -0
- package/dist/types/numerictextbox/numerictextbox.spec.d.ts +1 -1
- package/package.json +5 -5
- package/src/combobox/combobox.spec.tsx +2 -2
- package/src/imageeditor/imageeditor-option-list.tsx +53 -0
- package/src/imageeditor/imageeditor-option-preview.tsx +56 -0
- package/src/imageeditor/imageeditor-pane.tsx +70 -0
- package/src/imageeditor/imageeditor-placeholder.tsx +51 -0
- package/src/imageeditor/imageeditor-preview-thumbnail.tsx +42 -0
- package/src/imageeditor/imageeditor-resize-handles.tsx +37 -0
- package/src/imageeditor/imageeditor-sidebar.tsx +66 -0
- package/src/imageeditor/imageeditor-toolbar.tsx +14 -13
- package/src/imageeditor/imageeditor.spec.tsx +79 -13
- package/src/imageeditor/index.ts +19 -0
- package/src/imageeditor/templates/imageeditor-adjustments.tsx +88 -0
- package/src/imageeditor/templates/imageeditor-blur.tsx +92 -0
- package/src/imageeditor/templates/imageeditor-crop.tsx +64 -59
- package/src/imageeditor/templates/imageeditor-disabled.tsx +45 -0
- package/src/imageeditor/templates/imageeditor-filters.tsx +98 -0
- package/src/imageeditor/templates/imageeditor-frames.tsx +180 -0
- package/src/imageeditor/templates/imageeditor-insert-line.tsx +141 -0
- package/src/imageeditor/templates/imageeditor-insert-shape.tsx +195 -0
- package/src/imageeditor/templates/imageeditor-insert-text.tsx +143 -0
- package/src/imageeditor/templates/imageeditor-normal.tsx +20 -1
- package/src/imageeditor/templates/imageeditor-pixelate.tsx +92 -0
- package/src/imageeditor/templates/imageeditor-resize.tsx +68 -50
- package/src/imageeditor/templates/imageeditor-rotate.tsx +98 -0
- package/src/imageeditor/templates/imageeditor-shadow.tsx +96 -0
- package/src/imageeditor/tests/imageeditor-adaptive-small.tsx +373 -0
- package/src/imageeditor/tests/imageeditor-adjustments-pane.tsx +14 -0
- package/src/imageeditor/tests/imageeditor-blur-pane.tsx +29 -0
- package/src/imageeditor/tests/imageeditor-crop-pane.tsx +3 -2
- package/src/imageeditor/tests/imageeditor-export-dialog.tsx +85 -0
- package/src/imageeditor/tests/imageeditor-filters-pane.tsx +14 -0
- package/src/imageeditor/tests/imageeditor-frames-pane.tsx +22 -0
- package/src/imageeditor/tests/imageeditor-insert-line-pane.tsx +52 -0
- package/src/imageeditor/tests/imageeditor-insert-shape-pane.tsx +57 -0
- package/src/imageeditor/tests/imageeditor-insert-text-pane.tsx +51 -0
- package/src/imageeditor/tests/imageeditor-interactive-states.tsx +79 -0
- package/src/imageeditor/tests/imageeditor-option-list-states.tsx +17 -0
- package/src/imageeditor/tests/imageeditor-pixelate-pane.tsx +29 -0
- package/src/imageeditor/tests/imageeditor-resize-pane.tsx +15 -1
- package/src/imageeditor/tests/imageeditor-responsive.tsx +71 -0
- package/src/imageeditor/tests/imageeditor-rotate-pane.tsx +27 -0
- package/src/imageeditor/tests/imageeditor-shadow-pane.tsx +14 -0
- package/src/imageeditor/tests/imageeditor-sidebar-scrollable.tsx +97 -0
- package/src/numerictextbox/numerictextbox.spec.tsx +2 -2
- package/src/signature/signature.spec.tsx +4 -17
- package/src/signature/tests/signature-flat.tsx +0 -3
- package/src/signature/tests/signature-outline.tsx +0 -3
- package/src/signature/tests/signature-solid.tsx +0 -3
- package/src/signature/tests/signature.tsx +0 -3
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
import { ImageEditor } from '..';
|
|
2
|
+
import { Button } from '../../button';
|
|
3
|
+
import { Dialog } from '../../dialog';
|
|
4
|
+
import { Form, FormField, FormHint } from '../../form';
|
|
5
|
+
import { Textbox } from '../../textbox';
|
|
6
|
+
import { RadioGroup, RadioItem, RadioButtonWithLabelAfter } from '../../radio';
|
|
7
|
+
|
|
8
|
+
const styles = `
|
|
9
|
+
.k-dialog-wrapper {
|
|
10
|
+
position: absolute;
|
|
11
|
+
}
|
|
12
|
+
.k-overlay {
|
|
13
|
+
position: absolute;
|
|
14
|
+
}
|
|
15
|
+
`;
|
|
16
|
+
|
|
17
|
+
export default () => (
|
|
18
|
+
<>
|
|
19
|
+
<style>{styles}</style>
|
|
20
|
+
<div id="test-area" className="k-d-grid k-grid-cols-1">
|
|
21
|
+
|
|
22
|
+
<h4>Image Editor Export Dialog</h4>
|
|
23
|
+
|
|
24
|
+
<div className="k-pos-relative">
|
|
25
|
+
<ImageEditor contentHeight="482px">
|
|
26
|
+
<canvas
|
|
27
|
+
width="860"
|
|
28
|
+
height="430"
|
|
29
|
+
role="img"
|
|
30
|
+
aria-label="Image being edited"
|
|
31
|
+
style={{ backgroundImage: "url('/packages/html/assets/sofia.jpg')", backgroundSize: "cover" }}
|
|
32
|
+
></canvas>
|
|
33
|
+
</ImageEditor>
|
|
34
|
+
|
|
35
|
+
<Dialog
|
|
36
|
+
title="Export Image"
|
|
37
|
+
actions={[ 'x' ]}
|
|
38
|
+
actionButtonsAlign="end"
|
|
39
|
+
style={{ width: "520px" }}
|
|
40
|
+
actionButtons={
|
|
41
|
+
<>
|
|
42
|
+
<Button>Cancel</Button>
|
|
43
|
+
<Button themeColor="primary">Export</Button>
|
|
44
|
+
</>
|
|
45
|
+
}
|
|
46
|
+
>
|
|
47
|
+
<div className="k-imageeditor-dialog-row">
|
|
48
|
+
<div>
|
|
49
|
+
<img
|
|
50
|
+
src="/packages/html/assets/sofia.jpg"
|
|
51
|
+
alt="Preview of the exported image"
|
|
52
|
+
style={{ width: "144px", height: "144px", objectFit: "cover", borderRadius: "4px", border: "1px solid var(--kendo-color-secondary, #9c27b0)" }}
|
|
53
|
+
/>
|
|
54
|
+
<FormHint>Size: 12.34 MB</FormHint>
|
|
55
|
+
</div>
|
|
56
|
+
<Form tag="div" style={{ flex: "1" }}>
|
|
57
|
+
<FormField
|
|
58
|
+
label="File Name"
|
|
59
|
+
editorId="export-file-name"
|
|
60
|
+
editor={ <Textbox id="export-file-name" showClearButton={false} value="sofia" /> }
|
|
61
|
+
/>
|
|
62
|
+
<FormField
|
|
63
|
+
label="File Format"
|
|
64
|
+
editor={
|
|
65
|
+
<RadioGroup layout="horizontal">
|
|
66
|
+
<RadioItem>
|
|
67
|
+
<RadioButtonWithLabelAfter id="export-format-jpeg" name="export-format" checked>JPEG</RadioButtonWithLabelAfter>
|
|
68
|
+
</RadioItem>
|
|
69
|
+
<RadioItem>
|
|
70
|
+
<RadioButtonWithLabelAfter id="export-format-png" name="export-format">PNG</RadioButtonWithLabelAfter>
|
|
71
|
+
</RadioItem>
|
|
72
|
+
<RadioItem>
|
|
73
|
+
<RadioButtonWithLabelAfter id="export-format-webp" name="export-format">WebP</RadioButtonWithLabelAfter>
|
|
74
|
+
</RadioItem>
|
|
75
|
+
</RadioGroup>
|
|
76
|
+
}
|
|
77
|
+
/>
|
|
78
|
+
</Form>
|
|
79
|
+
</div>
|
|
80
|
+
</Dialog>
|
|
81
|
+
</div>
|
|
82
|
+
|
|
83
|
+
</div>
|
|
84
|
+
</>
|
|
85
|
+
);
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { ImageEditorFilters } from '..';
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
export default () => (
|
|
5
|
+
<>
|
|
6
|
+
<div id="test-area" className="k-d-grid k-grid-cols-1">
|
|
7
|
+
|
|
8
|
+
<h4>Image Editor Filters Pane — None Selected</h4>
|
|
9
|
+
|
|
10
|
+
<ImageEditorFilters contentHeight="640px" preset="none" />
|
|
11
|
+
|
|
12
|
+
</div>
|
|
13
|
+
</>
|
|
14
|
+
);
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { ImageEditorFrames } from '..';
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
export default () => (
|
|
5
|
+
<>
|
|
6
|
+
<div id="test-area" className="k-d-grid k-grid-cols-1">
|
|
7
|
+
|
|
8
|
+
<h4>Image Editor Frames Pane - None</h4>
|
|
9
|
+
|
|
10
|
+
<ImageEditorFrames contentHeight="640px" style="none" />
|
|
11
|
+
|
|
12
|
+
<h4>Image Editor Frames Pane - Single</h4>
|
|
13
|
+
|
|
14
|
+
<ImageEditorFrames contentHeight="640px" style="single" />
|
|
15
|
+
|
|
16
|
+
<h4>Image Editor Frames Pane - Multiple</h4>
|
|
17
|
+
|
|
18
|
+
<ImageEditorFrames contentHeight="640px" style="multiple" />
|
|
19
|
+
|
|
20
|
+
</div>
|
|
21
|
+
</>
|
|
22
|
+
);
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
import { ImageEditorInsertLine } from '..';
|
|
2
|
+
import { Button } from '../../button';
|
|
3
|
+
import { FloatingToolbar } from '../../floating-toolbar/floating-toolbar.spec';
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
export default () => (
|
|
7
|
+
<>
|
|
8
|
+
<div id="test-area" className="k-d-grid k-grid-cols-1">
|
|
9
|
+
|
|
10
|
+
<h4>Image Editor Insert Line Pane</h4>
|
|
11
|
+
|
|
12
|
+
<ImageEditorInsertLine contentHeight="640px">
|
|
13
|
+
<canvas width="494" height="307" role="img" aria-label="Image being edited" style={{ backgroundImage: "url('/packages/html/assets/sofia.jpg')", backgroundSize: "cover" }}></canvas>
|
|
14
|
+
<div style={{ position: "absolute", top: "150px", left: "90px", width: "220px", height: "0" }}>
|
|
15
|
+
<div style={{
|
|
16
|
+
position: "absolute", left: "0", right: "0", top: "-1px", height: "2px",
|
|
17
|
+
background: "#5558e8"
|
|
18
|
+
}}></div>
|
|
19
|
+
<div style={{
|
|
20
|
+
position: "absolute", left: "0", right: "0", top: "-4px", height: "8px",
|
|
21
|
+
backgroundImage: "radial-gradient(circle, #b0e855 45%, transparent 46%)",
|
|
22
|
+
backgroundSize: "16px 8px", backgroundRepeat: "repeat-x", backgroundPosition: "left center"
|
|
23
|
+
}}></div>
|
|
24
|
+
<span style={{
|
|
25
|
+
position: "absolute", left: "-7px", top: "-7px",
|
|
26
|
+
width: "14px", height: "14px", borderRadius: "50%",
|
|
27
|
+
background: "#fff", border: "2px solid #5558e8", boxSizing: "border-box"
|
|
28
|
+
}}></span>
|
|
29
|
+
<span style={{
|
|
30
|
+
position: "absolute", right: "-9px", top: "-9px",
|
|
31
|
+
width: "18px", height: "18px", transform: "rotate(45deg)",
|
|
32
|
+
background: "#b0e855", border: "2px solid #5558e8", boxSizing: "border-box"
|
|
33
|
+
}}>
|
|
34
|
+
<span style={{
|
|
35
|
+
position: "absolute", left: "50%", top: "50%",
|
|
36
|
+
width: "5px", height: "5px", borderRadius: "50%",
|
|
37
|
+
background: "#fff", transform: "translate(-50%, -50%)"
|
|
38
|
+
}}></span>
|
|
39
|
+
</span>
|
|
40
|
+
<FloatingToolbar fillMode="flat" resizable offset={{ top: "36px", left: "-10px" }}>
|
|
41
|
+
<Button fillMode="flat" icon="copy" aria-label="Duplicate"></Button>
|
|
42
|
+
<Button fillMode="flat" icon="pencil" aria-label="Edit"></Button>
|
|
43
|
+
<Button fillMode="flat" icon="flip-horizontal" aria-label="Flip Horizontal"></Button>
|
|
44
|
+
<Button fillMode="flat" icon="flip-vertical" aria-label="Flip Vertical"></Button>
|
|
45
|
+
<Button fillMode="flat" icon="trash" aria-label="Delete"></Button>
|
|
46
|
+
</FloatingToolbar>
|
|
47
|
+
</div>
|
|
48
|
+
</ImageEditorInsertLine>
|
|
49
|
+
|
|
50
|
+
</div>
|
|
51
|
+
</>
|
|
52
|
+
);
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
import { ImageEditorInsertShape } from '..';
|
|
2
|
+
import { Button } from '../../button';
|
|
3
|
+
import { FloatingToolbar } from '../../floating-toolbar/floating-toolbar.spec';
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
export default () => (
|
|
7
|
+
<>
|
|
8
|
+
<div id="test-area" className="k-d-grid k-grid-cols-1">
|
|
9
|
+
|
|
10
|
+
<h4>Image Editor Insert Shape Pane</h4>
|
|
11
|
+
|
|
12
|
+
<ImageEditorInsertShape contentHeight="860px">
|
|
13
|
+
<canvas width="494" height="307" role="img" aria-label="Image being edited" style={{ backgroundImage: "url('/packages/html/assets/sofia.jpg')", backgroundSize: "cover" }}></canvas>
|
|
14
|
+
<div className="k-imageeditor-resize" style={{ width: "165px", height: "54px", top: "140px", left: "165px" }}>
|
|
15
|
+
<div style={{
|
|
16
|
+
width: "100%",
|
|
17
|
+
height: "100%",
|
|
18
|
+
borderRadius: "50%",
|
|
19
|
+
background: "#eae382",
|
|
20
|
+
border: "2px solid #b0e855",
|
|
21
|
+
boxSizing: "border-box"
|
|
22
|
+
}}>
|
|
23
|
+
<p style={{
|
|
24
|
+
margin: 0,
|
|
25
|
+
width: "100%",
|
|
26
|
+
height: "100%",
|
|
27
|
+
display: "flex",
|
|
28
|
+
alignItems: "center",
|
|
29
|
+
justifyContent: "center",
|
|
30
|
+
fontFamily: "'Trebuchet MS', sans-serif",
|
|
31
|
+
fontSize: "16px",
|
|
32
|
+
lineHeight: 1,
|
|
33
|
+
color: "#4a4500",
|
|
34
|
+
whiteSpace: "nowrap"
|
|
35
|
+
}}>Shape text</p>
|
|
36
|
+
</div>
|
|
37
|
+
<span className="k-scale-handle k-resize-nw"></span>
|
|
38
|
+
<span className="k-scale-handle k-resize-ne"></span>
|
|
39
|
+
<span className="k-scale-handle k-resize-sw"></span>
|
|
40
|
+
<span className="k-scale-handle k-resize-se"></span>
|
|
41
|
+
<span className="k-resize-handle k-resize-n"></span>
|
|
42
|
+
<span className="k-resize-handle k-resize-s"></span>
|
|
43
|
+
<span className="k-resize-handle k-resize-w"></span>
|
|
44
|
+
<span className="k-resize-handle k-resize-e"></span>
|
|
45
|
+
<FloatingToolbar fillMode="flat" resizable offset={{ top: "62px", left: "0" }}>
|
|
46
|
+
<Button fillMode="flat" icon="copy" aria-label="Duplicate"></Button>
|
|
47
|
+
<Button fillMode="flat" icon="pencil" aria-label="Edit"></Button>
|
|
48
|
+
<Button fillMode="flat" icon="flip-horizontal" aria-label="Flip Horizontal"></Button>
|
|
49
|
+
<Button fillMode="flat" icon="flip-vertical" aria-label="Flip Vertical"></Button>
|
|
50
|
+
<Button fillMode="flat" icon="trash" aria-label="Delete"></Button>
|
|
51
|
+
</FloatingToolbar>
|
|
52
|
+
</div>
|
|
53
|
+
</ImageEditorInsertShape>
|
|
54
|
+
|
|
55
|
+
</div>
|
|
56
|
+
</>
|
|
57
|
+
);
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
import { ImageEditorInsertText } from '..';
|
|
2
|
+
import { Button } from '../../button';
|
|
3
|
+
import { FloatingToolbar } from '../../floating-toolbar/floating-toolbar.spec';
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
export default () => (
|
|
7
|
+
<>
|
|
8
|
+
<div id="test-area" className="k-d-grid k-grid-cols-1">
|
|
9
|
+
|
|
10
|
+
<h4>Image Editor Insert Text Pane</h4>
|
|
11
|
+
|
|
12
|
+
<ImageEditorInsertText contentHeight="640px">
|
|
13
|
+
<canvas width="494" height="307" role="img" aria-label="Image being edited" style={{ backgroundImage: "url('/packages/html/assets/sofia.jpg')", backgroundSize: "cover" }}></canvas>
|
|
14
|
+
<div className="k-imageeditor-resize" style={{ width: "270px", height: "64px", top: "122px", left: "112px" }}>
|
|
15
|
+
<p style={{
|
|
16
|
+
margin: 0,
|
|
17
|
+
width: "100%",
|
|
18
|
+
height: "100%",
|
|
19
|
+
display: "flex",
|
|
20
|
+
alignItems: "center",
|
|
21
|
+
justifyContent: "center",
|
|
22
|
+
fontFamily: "'Trebuchet MS', sans-serif",
|
|
23
|
+
fontWeight: "bold",
|
|
24
|
+
fontSize: "38px",
|
|
25
|
+
lineHeight: 1,
|
|
26
|
+
color: "#f5e93d",
|
|
27
|
+
opacity: 0.7,
|
|
28
|
+
textTransform: "uppercase",
|
|
29
|
+
whiteSpace: "nowrap"
|
|
30
|
+
}}>Text Example</p>
|
|
31
|
+
<span className="k-scale-handle k-resize-nw"></span>
|
|
32
|
+
<span className="k-scale-handle k-resize-ne"></span>
|
|
33
|
+
<span className="k-scale-handle k-resize-sw"></span>
|
|
34
|
+
<span className="k-scale-handle k-resize-se"></span>
|
|
35
|
+
<span className="k-resize-handle k-resize-n"></span>
|
|
36
|
+
<span className="k-resize-handle k-resize-s"></span>
|
|
37
|
+
<span className="k-resize-handle k-resize-w"></span>
|
|
38
|
+
<span className="k-resize-handle k-resize-e"></span>
|
|
39
|
+
<FloatingToolbar fillMode="flat" offset={{ top: "72px", left: "0" }}>
|
|
40
|
+
<Button fillMode="flat" icon="copy" aria-label="Duplicate"></Button>
|
|
41
|
+
<Button fillMode="flat" icon="pencil" aria-label="Edit"></Button>
|
|
42
|
+
<Button fillMode="flat" icon="flip-horizontal" aria-label="Flip Horizontal"></Button>
|
|
43
|
+
<Button fillMode="flat" icon="flip-vertical" aria-label="Flip Vertical"></Button>
|
|
44
|
+
<Button fillMode="flat" icon="trash" aria-label="Delete"></Button>
|
|
45
|
+
</FloatingToolbar>
|
|
46
|
+
</div>
|
|
47
|
+
</ImageEditorInsertText>
|
|
48
|
+
|
|
49
|
+
</div>
|
|
50
|
+
</>
|
|
51
|
+
);
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
import { ImageEditor, ImageEditorDisabled } from '..';
|
|
2
|
+
import { ImageEditorPlaceholder } from '../imageeditor-placeholder';
|
|
3
|
+
import { Loader } from '../../loader';
|
|
4
|
+
|
|
5
|
+
export default () => (
|
|
6
|
+
<div id="test-area" className="k-d-grid k-grid-cols-1">
|
|
7
|
+
|
|
8
|
+
<span>Empty</span>
|
|
9
|
+
<ImageEditorDisabled
|
|
10
|
+
contentHeight="260px"
|
|
11
|
+
placeholder={
|
|
12
|
+
<ImageEditorPlaceholder
|
|
13
|
+
icon="image-add"
|
|
14
|
+
title="Ready to create?"
|
|
15
|
+
text="Upload a JPEG or PNG image to unlock the full capabilities of ImageEditor."
|
|
16
|
+
/>
|
|
17
|
+
}
|
|
18
|
+
/>
|
|
19
|
+
|
|
20
|
+
<span>Loading</span>
|
|
21
|
+
<ImageEditorDisabled
|
|
22
|
+
contentHeight="260px"
|
|
23
|
+
placeholder={
|
|
24
|
+
<ImageEditorPlaceholder>
|
|
25
|
+
<Loader
|
|
26
|
+
animation="pulsing"
|
|
27
|
+
themeColor="secondary"
|
|
28
|
+
size="large"
|
|
29
|
+
className="k-imageeditor-placeholder-loader"
|
|
30
|
+
/>
|
|
31
|
+
<div className="k-imageeditor-placeholder-hint">
|
|
32
|
+
<div className="k-imageeditor-placeholder-title">Getting your canvas ready...</div>
|
|
33
|
+
<div className="k-imageeditor-placeholder-text">Just a moment while we load your image!</div>
|
|
34
|
+
</div>
|
|
35
|
+
</ImageEditorPlaceholder>
|
|
36
|
+
}
|
|
37
|
+
/>
|
|
38
|
+
|
|
39
|
+
<span>Exporting</span>
|
|
40
|
+
<ImageEditor contentHeight="260px" exporting>
|
|
41
|
+
<canvas
|
|
42
|
+
width="400"
|
|
43
|
+
height="200"
|
|
44
|
+
role="img"
|
|
45
|
+
aria-label="Image being edited"
|
|
46
|
+
style={{
|
|
47
|
+
backgroundImage: "url('/packages/html/assets/sofia.jpg')",
|
|
48
|
+
backgroundSize: "cover",
|
|
49
|
+
backgroundPosition: "center"
|
|
50
|
+
}}
|
|
51
|
+
></canvas>
|
|
52
|
+
</ImageEditor>
|
|
53
|
+
|
|
54
|
+
<span>Error - Failed Upload</span>
|
|
55
|
+
<ImageEditorDisabled
|
|
56
|
+
contentHeight="260px"
|
|
57
|
+
placeholder={
|
|
58
|
+
<ImageEditorPlaceholder
|
|
59
|
+
icon="file-error"
|
|
60
|
+
title="Upload failed!"
|
|
61
|
+
text="Try again so you can get back to creating."
|
|
62
|
+
/>
|
|
63
|
+
}
|
|
64
|
+
/>
|
|
65
|
+
|
|
66
|
+
<span>Error - Unsupported File Format</span>
|
|
67
|
+
<ImageEditorDisabled
|
|
68
|
+
contentHeight="260px"
|
|
69
|
+
placeholder={
|
|
70
|
+
<ImageEditorPlaceholder
|
|
71
|
+
icon="file-error"
|
|
72
|
+
title="Unsupported file format"
|
|
73
|
+
text="Please upload a JPEG or PNG file."
|
|
74
|
+
/>
|
|
75
|
+
}
|
|
76
|
+
/>
|
|
77
|
+
|
|
78
|
+
</div>
|
|
79
|
+
);
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { ImageEditorOptionList, ImageEditorOptionPreview } from '..';
|
|
2
|
+
|
|
3
|
+
export default () => (
|
|
4
|
+
<div id="test-area" className="k-d-grid k-grid-cols-1">
|
|
5
|
+
|
|
6
|
+
<h4>Option List / States</h4>
|
|
7
|
+
<ImageEditorOptionList>
|
|
8
|
+
<ImageEditorOptionPreview label="Normal" />
|
|
9
|
+
<ImageEditorOptionPreview label="Hover" hover />
|
|
10
|
+
<ImageEditorOptionPreview label="Focused" focus />
|
|
11
|
+
<ImageEditorOptionPreview label="Selected" selected />
|
|
12
|
+
<ImageEditorOptionPreview label="Selected + Hover" selected hover />
|
|
13
|
+
<ImageEditorOptionPreview label="Selected + Focused" selected focus />
|
|
14
|
+
</ImageEditorOptionList>
|
|
15
|
+
|
|
16
|
+
</div>
|
|
17
|
+
);
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { ImageEditorPixelate } from '..';
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
export default () =>(
|
|
5
|
+
<>
|
|
6
|
+
<div id="test-area" className="k-d-grid k-grid-cols-1">
|
|
7
|
+
|
|
8
|
+
<h4>Image Editor Pixelate Pane — Rectangular Markee</h4>
|
|
9
|
+
|
|
10
|
+
<ImageEditorPixelate contentHeight="482px" shape="rectangular" intensity={24}>
|
|
11
|
+
<canvas width="494" height="307" role="img" aria-label="Image being edited" style={{ backgroundImage: "url('/packages/html/assets/sofia-pixelated.jpg')", backgroundSize: "cover", imageRendering: "pixelated" }}></canvas>
|
|
12
|
+
<div className="k-imageeditor-crop-overlay">
|
|
13
|
+
<div className="k-imageeditor-crop" style={{ borderStyle: "dashed" }}></div>
|
|
14
|
+
</div>
|
|
15
|
+
</ImageEditorPixelate>
|
|
16
|
+
|
|
17
|
+
<h4>Image Editor Pixelate Pane — Elliptical Markee</h4>
|
|
18
|
+
|
|
19
|
+
<ImageEditorPixelate contentHeight="482px" shape="elliptical" intensity={24}>
|
|
20
|
+
<canvas width="494" height="307" role="img" aria-label="Image being edited" style={{ backgroundImage: "url('/packages/html/assets/sofia.jpg')", backgroundSize: "cover" }}></canvas>
|
|
21
|
+
<canvas width="494" height="307" aria-hidden="true" style={{ position: "absolute", insetBlockStart: 0, insetInlineStart: 0, backgroundImage: "url('/packages/html/assets/sofia-pixelated.jpg')", backgroundSize: "cover", imageRendering: "pixelated", clipPath: "ellipse(160px 98.5px at center)" }}></canvas>
|
|
22
|
+
<div className="k-imageeditor-crop-overlay">
|
|
23
|
+
<div className="k-imageeditor-crop" style={{ width: "320px", height: "197px", borderStyle: "dashed", borderRadius: "50%", insetInlineStart: "50%", insetBlockStart: "50%", transform: "translate(-50%, -50%)" }}></div>
|
|
24
|
+
</div>
|
|
25
|
+
</ImageEditorPixelate>
|
|
26
|
+
|
|
27
|
+
</div>
|
|
28
|
+
</>
|
|
29
|
+
);
|
|
@@ -6,7 +6,21 @@ export default () =>(
|
|
|
6
6
|
<div id="test-area" className="k-d-grid k-grid-cols-1">
|
|
7
7
|
|
|
8
8
|
<h4>Image Editor Resize Pane</h4>
|
|
9
|
-
|
|
9
|
+
|
|
10
|
+
<ImageEditorResize contentHeight="482px">
|
|
11
|
+
<canvas width="494" height="307" role="img" aria-label="Image being edited" style={{ backgroundImage: "url('/packages/html/assets/sofia.jpg')", backgroundSize: "cover" }}></canvas>
|
|
12
|
+
<div className="k-imageeditor-resize">
|
|
13
|
+
<span className="k-scale-handle k-resize-nw"></span>
|
|
14
|
+
<span className="k-scale-handle k-resize-ne"></span>
|
|
15
|
+
<span className="k-scale-handle k-resize-sw"></span>
|
|
16
|
+
<span className="k-scale-handle k-resize-se"></span>
|
|
17
|
+
<span className="k-resize-handle k-resize-n"></span>
|
|
18
|
+
<span className="k-resize-handle k-resize-s"></span>
|
|
19
|
+
<span className="k-resize-handle k-resize-w"></span>
|
|
20
|
+
<span className="k-resize-handle k-resize-e"></span>
|
|
21
|
+
</div>
|
|
22
|
+
</ImageEditorResize>
|
|
23
|
+
|
|
10
24
|
</div>
|
|
11
25
|
</>
|
|
12
26
|
);
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
import { ImageEditorNormal, ImageEditorInsertShape, ImageEditorResizeHandles } from '..';
|
|
2
|
+
import { Button } from '../../button';
|
|
3
|
+
import { FloatingToolbar } from '../../floating-toolbar/floating-toolbar.spec';
|
|
4
|
+
|
|
5
|
+
// Tablet-width container (768px) - the plain desktop layout (left icon sidebar, right side panel)
|
|
6
|
+
// simply reflows into the available width; no adaptive/bottom-sheet behaviour kicks in here.
|
|
7
|
+
const styles = `
|
|
8
|
+
#test-area {
|
|
9
|
+
display: flex;
|
|
10
|
+
gap: 24px;
|
|
11
|
+
flex-wrap: wrap;
|
|
12
|
+
}
|
|
13
|
+
#test-area .k-imageeditor {
|
|
14
|
+
width: 768px;
|
|
15
|
+
}
|
|
16
|
+
`;
|
|
17
|
+
|
|
18
|
+
export default () => (
|
|
19
|
+
<>
|
|
20
|
+
<style>{styles}</style>
|
|
21
|
+
<div id="test-area">
|
|
22
|
+
|
|
23
|
+
<div>
|
|
24
|
+
<h4>Tablet / Responsive / Unselected Tool</h4>
|
|
25
|
+
<ImageEditorNormal contentHeight="841px">
|
|
26
|
+
<canvas width="659" height="410" role="img" aria-label="Image being edited" style={{ backgroundImage: "url('/packages/html/assets/sofia.jpg')", backgroundSize: "cover", backgroundPosition: "center", backgroundRepeat: "no-repeat" }}></canvas>
|
|
27
|
+
</ImageEditorNormal>
|
|
28
|
+
</div>
|
|
29
|
+
|
|
30
|
+
<div>
|
|
31
|
+
<h4>Tablet / Responsive / Selected Tool / Panel Opened</h4>
|
|
32
|
+
<ImageEditorInsertShape contentHeight="841px">
|
|
33
|
+
<canvas width="338" height="211" role="img" aria-label="Image being edited" style={{ backgroundImage: "url('/packages/html/assets/sofia.jpg')", backgroundSize: "cover", backgroundPosition: "center", backgroundRepeat: "no-repeat" }}></canvas>
|
|
34
|
+
<div className="k-imageeditor-resize" style={{ width: "130px", height: "43px", top: "84px", left: "105px" }}>
|
|
35
|
+
<div style={{
|
|
36
|
+
width: "100%",
|
|
37
|
+
height: "100%",
|
|
38
|
+
borderRadius: "50%",
|
|
39
|
+
background: "#eae382",
|
|
40
|
+
border: "2px solid #b0e855",
|
|
41
|
+
boxSizing: "border-box"
|
|
42
|
+
}}>
|
|
43
|
+
<p style={{
|
|
44
|
+
margin: 0,
|
|
45
|
+
width: "100%",
|
|
46
|
+
height: "100%",
|
|
47
|
+
display: "flex",
|
|
48
|
+
alignItems: "center",
|
|
49
|
+
justifyContent: "center",
|
|
50
|
+
fontFamily: "'Trebuchet MS', sans-serif",
|
|
51
|
+
fontSize: "13px",
|
|
52
|
+
lineHeight: 1,
|
|
53
|
+
color: "#4a4500",
|
|
54
|
+
whiteSpace: "nowrap"
|
|
55
|
+
}}>Shape text</p>
|
|
56
|
+
</div>
|
|
57
|
+
<ImageEditorResizeHandles variant="mixed" />
|
|
58
|
+
<FloatingToolbar fillMode="flat" resizable offset={{ top: "51px", left: "0" }}>
|
|
59
|
+
<Button fillMode="flat" icon="copy" aria-label="Duplicate"></Button>
|
|
60
|
+
<Button fillMode="flat" icon="pencil" aria-label="Edit"></Button>
|
|
61
|
+
<Button fillMode="flat" icon="flip-horizontal" aria-label="Flip Horizontal"></Button>
|
|
62
|
+
<Button fillMode="flat" icon="flip-vertical" aria-label="Flip Vertical"></Button>
|
|
63
|
+
<Button fillMode="flat" icon="trash" aria-label="Delete"></Button>
|
|
64
|
+
</FloatingToolbar>
|
|
65
|
+
</div>
|
|
66
|
+
</ImageEditorInsertShape>
|
|
67
|
+
</div>
|
|
68
|
+
|
|
69
|
+
</div>
|
|
70
|
+
</>
|
|
71
|
+
);
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { ImageEditorRotate } from '..';
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
export default () =>(
|
|
5
|
+
<>
|
|
6
|
+
<div id="test-area" className="k-d-grid k-grid-cols-1">
|
|
7
|
+
|
|
8
|
+
<h4>Image Editor Rotate Pane</h4>
|
|
9
|
+
|
|
10
|
+
<ImageEditorRotate contentHeight="482px">
|
|
11
|
+
<canvas width="494" height="307" role="img" aria-label="Image being edited" style={{ backgroundImage: "url('/packages/html/assets/sofia.jpg')", backgroundSize: "cover" }}></canvas>
|
|
12
|
+
<div className="k-imageeditor-rotate">
|
|
13
|
+
<div className="k-imageeditor-crop-grid"></div>
|
|
14
|
+
<span className="k-scale-handle k-resize-nw"></span>
|
|
15
|
+
<span className="k-scale-handle k-resize-n"></span>
|
|
16
|
+
<span className="k-scale-handle k-resize-ne"></span>
|
|
17
|
+
<span className="k-scale-handle k-resize-w"></span>
|
|
18
|
+
<span className="k-scale-handle k-resize-e"></span>
|
|
19
|
+
<span className="k-scale-handle k-resize-sw"></span>
|
|
20
|
+
<span className="k-scale-handle k-resize-s"></span>
|
|
21
|
+
<span className="k-scale-handle k-resize-se"></span>
|
|
22
|
+
</div>
|
|
23
|
+
</ImageEditorRotate>
|
|
24
|
+
|
|
25
|
+
</div>
|
|
26
|
+
</>
|
|
27
|
+
);
|