@lvce-editor/renderer-process 30.39.0 → 30.40.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.
@@ -2619,6 +2619,18 @@ const focusSelectorAfterRender = (uid, selector) => {
2619
2619
  });
2620
2620
  });
2621
2621
  };
2622
+ const scrollSelectorBy = (uid, selector, delta) => {
2623
+ const element = getElement(uid).querySelector(selector);
2624
+ if (element) {
2625
+ element.scrollLeft += delta;
2626
+ }
2627
+ };
2628
+ const scrollSelectorIntoView = (uid, selector) => {
2629
+ getElement(uid).querySelector(selector)?.scrollIntoView({
2630
+ block: 'nearest',
2631
+ inline: 'nearest'
2632
+ });
2633
+ };
2622
2634
  const setBounds = (uid, left, top, width, height) => {
2623
2635
  const element = getElement(uid);
2624
2636
  element.style.left = `${left}px`;
@@ -2664,6 +2676,8 @@ const commandHandlers = {
2664
2676
  'Viewlet.dispose': dispose,
2665
2677
  'Viewlet.focusSelector': focusSelector,
2666
2678
  'Viewlet.focusSelectorAfterRender': focusSelectorAfterRender,
2679
+ 'Viewlet.scrollSelectorBy': scrollSelectorBy,
2680
+ 'Viewlet.scrollSelectorIntoView': scrollSelectorIntoView,
2667
2681
  'Viewlet.setAdditionalFocus': ignoreCommand,
2668
2682
  'Viewlet.setBounds': setBounds,
2669
2683
  'Viewlet.setCss': addCssStyleSheet,
@@ -3978,6 +3978,11 @@ const send$1 = (method, ...params) => {
3978
3978
  // @ts-ignore
3979
3979
  state$9.rpc.send(method, ...params);
3980
3980
  };
3981
+ const invoke$1 = (method, ...params) => {
3982
+ record('sent', method, params);
3983
+ // @ts-ignore
3984
+ return state$9.rpc.invoke(method, ...params);
3985
+ };
3981
3986
  const invokeAndTransfer = (method, ...params) => {
3982
3987
  record('sent', method, params);
3983
3988
  // @ts-ignore
@@ -9685,6 +9690,37 @@ const setProperty = (id, selector, property, value) => {
9685
9690
  }
9686
9691
  $Element[property] = value;
9687
9692
  };
9693
+ const scrollSelectorBy = (id, selector, delta) => {
9694
+ const instance = get$a(id);
9695
+ if (!instance) {
9696
+ return;
9697
+ }
9698
+ const {
9699
+ $Viewlet
9700
+ } = instance.state;
9701
+ const $Element = $Viewlet.matches(selector) ? $Viewlet : $Viewlet.querySelector(selector);
9702
+ if (!($Element instanceof HTMLElement)) {
9703
+ return;
9704
+ }
9705
+ $Element.scrollLeft += delta;
9706
+ };
9707
+ const scrollSelectorIntoView = (id, selector) => {
9708
+ const instance = get$a(id);
9709
+ if (!instance) {
9710
+ return;
9711
+ }
9712
+ const {
9713
+ $Viewlet
9714
+ } = instance.state;
9715
+ const $Element = $Viewlet.matches(selector) ? $Viewlet : $Viewlet.querySelector(selector);
9716
+ if (!($Element instanceof HTMLElement)) {
9717
+ return;
9718
+ }
9719
+ $Element.scrollIntoView({
9720
+ block: 'nearest',
9721
+ inline: 'nearest'
9722
+ });
9723
+ };
9688
9724
  const renderCanvas = (id, selector, canvasClassName, width, height, rectangles, revision) => {
9689
9725
  const instance = get$a(id);
9690
9726
  if (!instance) {
@@ -9717,6 +9753,8 @@ const commandHandlers = {
9717
9753
  'Viewlet.removeKeyBindings': removeKeyBindings,
9718
9754
  'Viewlet.renderCanvas': renderCanvas,
9719
9755
  'Viewlet.replaceChildren': replaceChildren,
9756
+ 'Viewlet.scrollSelectorBy': scrollSelectorBy,
9757
+ 'Viewlet.scrollSelectorIntoView': scrollSelectorIntoView,
9720
9758
  'Viewlet.send': invoke,
9721
9759
  'Viewlet.setBounds': setBounds$1,
9722
9760
  'Viewlet.setCheckBoxValue': setCheckboxValue,
@@ -9783,6 +9821,9 @@ const unmaximize = () => {};
9783
9821
  const close = () => {
9784
9822
  // window.close()
9785
9823
  };
9824
+ const prepareClose = async () => {
9825
+ await invoke$1('SaveState.handleVisibilityChange', 'hidden');
9826
+ };
9786
9827
  const toggleFullScreen = () => {
9787
9828
  if (document.fullscreenElement) {
9788
9829
  return document.exitFullscreen();
@@ -10182,6 +10223,8 @@ const commandMap = {
10182
10223
  'Viewlet.refresh': refresh,
10183
10224
  'Viewlet.registerEventListeners': registerEventListeners,
10184
10225
  'Viewlet.removeKeyBindings': removeKeyBindings,
10226
+ 'Viewlet.scrollSelectorBy': scrollSelectorBy,
10227
+ 'Viewlet.scrollSelectorIntoView': scrollSelectorIntoView,
10185
10228
  'Viewlet.send': invoke,
10186
10229
  'Viewlet.sendMultiple': sendMultiple,
10187
10230
  'Viewlet.setBounds': setBounds$1,
@@ -10205,6 +10248,7 @@ const commandMap = {
10205
10248
  'Window.maximize': maximize,
10206
10249
  'Window.minimize': minimize,
10207
10250
  'Window.onVisibilityChange': onVisibilityChange,
10251
+ 'Window.prepareClose': prepareClose,
10208
10252
  'Window.reload': reload,
10209
10253
  'Window.toggleFullScreen': toggleFullScreen,
10210
10254
  'Window.unmaximize': unmaximize,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@lvce-editor/renderer-process",
3
- "version": "30.39.0",
3
+ "version": "30.40.0",
4
4
  "keywords": [
5
5
  "lvce-editor",
6
6
  "renderer-process"