Files
huly-platform/plugins/text-editor-resources/src/components/DrawingBoardPopup.svelte
T
Denis 'GeneralGDA' GladkiyandGitHub 84431f7c6b Drawing board undo/redo and bug fixes (#9726)
* Undo-redo for screenshot drawer, several bugfixes.

Signed-off-by: Denis Gladkiy <denis.gladkiy@hardcoreeng.com>

* Undo-redo for collaborative drawer.

Signed-off-by: Denis Gladkiy <denis.gladkiy@hardcoreeng.com>

* Drawing board refinement: bugfixes, component refactoring and unit testing

Signed-off-by: Denis Gladkiy <denis.gladkiy@hardcoreeng.com>

* More tests, canvas resize fix, types for different points

Signed-off-by: Denis Gladkiy <denis.gladkiy@hardcoreeng.com>

* Version lock

Signed-off-by: Denis Gladkiy <denis.gladkiy@hardcoreeng.com>

* Names refactoring

Signed-off-by: Denis Gladkiy <denis.gladkiy@hardcoreeng.com>

* Formatting

Signed-off-by: Denis Gladkiy <denis.gladkiy@hardcoreeng.com>

* Formatting

Signed-off-by: Denis Gladkiy <denis.gladkiy@hardcoreeng.com>

---------

Signed-off-by: Denis Gladkiy <denis.gladkiy@hardcoreeng.com>
2025-08-28 11:54:27 +06:00

50 lines
1.6 KiB
Svelte

<!--
// Copyright © 2024-2025 Hardcore Engineering Inc.
//
// Licensed under the Eclipse Public License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License. You may
// obtain a copy of the License at https://www.eclipse.org/legal/epl-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
//
// See the License for the specific language governing permissions and
// limitations under the License.
-->
<script lang="ts">
import { DrawingCmd } from '@hcengineering/presentation'
import textEditor from '@hcengineering/text-editor'
import { Dialog } from '@hcengineering/ui'
import { createEventDispatcher } from 'svelte'
import { Array as YArray, Map as YMap, Doc as YDoc } from 'yjs'
import DrawingBoardEditor from './DrawingBoardEditor.svelte'
export let boardId: string
export let document: YDoc
export let savedCmds: YArray<DrawingCmd>
export let savedProps: YMap<any>
export let readonly = false
const dispatch = createEventDispatcher()
let dialog: Dialog
$: if (dialog !== undefined) {
dialog.maximize()
}
</script>
{#if savedCmds !== undefined && savedProps !== undefined}
<Dialog
label={textEditor.string.DrawingBoard}
padding="0"
bind:this={dialog}
on:fullsize
on:close={() => {
dispatch('close')
}}
>
<DrawingBoardEditor {boardId} {document} {savedCmds} {savedProps} {readonly} selected fullSize grabFocus />
</Dialog>
{/if}