@nous-excalidraw/excalidraw 0.18.9-beta.21 → 0.18.9-beta.23

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.
Files changed (26) hide show
  1. package/dist/dev/{chunk-6PNL5SR6.js → chunk-NJT6NRP4.js} +3 -3
  2. package/dist/dev/{chunk-FGNDYJ2B.js → chunk-NLSPUT7I.js} +2 -2
  3. package/dist/dev/components/TTDDialog/{CodeMirrorEditor-LUWBT76B.js → CodeMirrorEditor-FWL3IAFT.js} +2 -2
  4. package/dist/dev/data/{image-5IO6LC6F.js → image-PPDUIIUO.js} +3 -3
  5. package/dist/dev/index.js +79 -63
  6. package/dist/dev/index.js.map +3 -3
  7. package/dist/dev/subset-shared.chunk.js +1 -1
  8. package/dist/dev/subset-worker.chunk.js +1 -1
  9. package/dist/prod/{chunk-YAGSAM37.js → chunk-NVZF4XB3.js} +2 -2
  10. package/dist/prod/{chunk-TFET7NMD.js → chunk-XN6AQKMR.js} +1 -1
  11. package/dist/prod/components/TTDDialog/{CodeMirrorEditor-QL4RYZUZ.js → CodeMirrorEditor-7VTRX6DQ.js} +1 -1
  12. package/dist/prod/data/image-S4BV24I2.js +1 -0
  13. package/dist/prod/index.js +26 -26
  14. package/dist/prod/subset-shared.chunk.js +1 -1
  15. package/dist/prod/subset-worker.chunk.js +1 -1
  16. package/dist/types/excalidraw/actions/actionFrame.d.ts +1 -471
  17. package/dist/types/excalidraw/components/App.d.ts +1 -5
  18. package/dist/types/excalidraw/index.d.ts +1 -0
  19. package/dist/types/excalidraw/scene/types.d.ts +0 -3
  20. package/dist/types/excalidraw/types.d.ts +3 -3
  21. package/package.json +1 -1
  22. package/dist/prod/data/image-LRQMDLTI.js +0 -1
  23. /package/dist/dev/{chunk-6PNL5SR6.js.map → chunk-NJT6NRP4.js.map} +0 -0
  24. /package/dist/dev/{chunk-FGNDYJ2B.js.map → chunk-NLSPUT7I.js.map} +0 -0
  25. /package/dist/dev/components/TTDDialog/{CodeMirrorEditor-LUWBT76B.js.map → CodeMirrorEditor-FWL3IAFT.js.map} +0 -0
  26. /package/dist/dev/data/{image-5IO6LC6F.js.map → image-PPDUIIUO.js.map} +0 -0
@@ -1 +1 @@
1
- import{a,b,c,d}from"./chunk-Z5NKEFVG.js";import"./chunk-TFET7NMD.js";import"./chunk-SRAX5OIU.js";export{a as Commands,b as subsetToBase64,c as subsetToBinary,d as toBase64};
1
+ import{a,b,c,d}from"./chunk-Z5NKEFVG.js";import"./chunk-XN6AQKMR.js";import"./chunk-SRAX5OIU.js";export{a as Commands,b as subsetToBase64,c as subsetToBinary,d as toBase64};
@@ -1 +1 @@
1
- import{a as r,c as t}from"./chunk-Z5NKEFVG.js";import"./chunk-TFET7NMD.js";import"./chunk-SRAX5OIU.js";var s=import.meta.url?new URL(import.meta.url):void 0;typeof window>"u"&&typeof self<"u"&&(self.onmessage=async e=>{switch(e.data.command){case r.Subset:let a=await t(e.data.arrayBuffer,e.data.codePoints);self.postMessage(a,{transfer:[a]});break}});export{s as WorkerUrl};
1
+ import{a as r,c as t}from"./chunk-Z5NKEFVG.js";import"./chunk-XN6AQKMR.js";import"./chunk-SRAX5OIU.js";var s=import.meta.url?new URL(import.meta.url):void 0;typeof window>"u"&&typeof self<"u"&&(self.onmessage=async e=>{switch(e.data.command){case r.Subset:let a=await t(e.data.arrayBuffer,e.data.codePoints);self.postMessage(a,{transfer:[a]});break}});export{s as WorkerUrl};
@@ -717,477 +717,7 @@ export declare const actionWrapSelectionInFrame: {
717
717
  };
718
718
  predicate: (elements: readonly ExcalidrawElement[], appState: AppState, _: import("../types").ExcalidrawProps, app: AppClassProperties) => boolean;
719
719
  perform: (elements: readonly import("@nous-excalidraw/element/types").OrderedExcalidrawElement[], appState: Readonly<AppState>, _: unknown, app: AppClassProperties) => {
720
- elements: ((Readonly<{
721
- id: string;
722
- x: number;
723
- y: number;
724
- strokeColor: string;
725
- backgroundColor: string;
726
- fillStyle: import("@nous-excalidraw/element/types").FillStyle;
727
- strokeWidth: number;
728
- strokeStyle: import("@nous-excalidraw/element/types").StrokeStyle;
729
- roundness: null | {
730
- type: import("@nous-excalidraw/element/types").RoundnessType;
731
- value?: number;
732
- };
733
- roughness: number;
734
- opacity: number;
735
- width: number;
736
- height: number;
737
- angle: import("@nous-excalidraw/math").Radians;
738
- seed: number;
739
- version: number;
740
- versionNonce: number;
741
- index: import("@nous-excalidraw/element/types").FractionalIndex | null;
742
- isDeleted: boolean;
743
- groupIds: readonly import("@nous-excalidraw/element/types").GroupId[];
744
- frameId: string | null;
745
- boundElements: readonly import("@nous-excalidraw/element/types").BoundElement[] | null;
746
- updated: number;
747
- link: string | null;
748
- locked: boolean;
749
- customData?: Record<string, any>;
750
- }> & Readonly<{
751
- type: "line" | "arrow";
752
- points: readonly import("@nous-excalidraw/math").LocalPoint[];
753
- startBinding: import("@nous-excalidraw/element/types").FixedPointBinding | null;
754
- endBinding: import("@nous-excalidraw/element/types").FixedPointBinding | null;
755
- startArrowhead: import("@nous-excalidraw/element/types").Arrowhead | null;
756
- endArrowhead: import("@nous-excalidraw/element/types").Arrowhead | null;
757
- }> & {
758
- index: import("@nous-excalidraw/element/types").FractionalIndex;
759
- }) | (Readonly<{
760
- id: string;
761
- x: number;
762
- y: number;
763
- strokeColor: string;
764
- backgroundColor: string;
765
- fillStyle: import("@nous-excalidraw/element/types").FillStyle;
766
- strokeWidth: number;
767
- strokeStyle: import("@nous-excalidraw/element/types").StrokeStyle;
768
- roundness: null | {
769
- type: import("@nous-excalidraw/element/types").RoundnessType;
770
- value?: number;
771
- };
772
- roughness: number;
773
- opacity: number;
774
- width: number;
775
- height: number;
776
- angle: import("@nous-excalidraw/math").Radians;
777
- seed: number;
778
- version: number;
779
- versionNonce: number;
780
- index: import("@nous-excalidraw/element/types").FractionalIndex | null;
781
- isDeleted: boolean;
782
- groupIds: readonly import("@nous-excalidraw/element/types").GroupId[];
783
- frameId: string | null;
784
- boundElements: readonly import("@nous-excalidraw/element/types").BoundElement[] | null;
785
- updated: number;
786
- link: string | null;
787
- locked: boolean;
788
- customData?: Record<string, any>;
789
- }> & {
790
- type: "selection";
791
- } & {
792
- index: import("@nous-excalidraw/element/types").FractionalIndex;
793
- }) | (Readonly<{
794
- id: string;
795
- x: number;
796
- y: number;
797
- strokeColor: string;
798
- backgroundColor: string;
799
- fillStyle: import("@nous-excalidraw/element/types").FillStyle;
800
- strokeWidth: number;
801
- strokeStyle: import("@nous-excalidraw/element/types").StrokeStyle;
802
- roundness: null | {
803
- type: import("@nous-excalidraw/element/types").RoundnessType;
804
- value?: number;
805
- };
806
- roughness: number;
807
- opacity: number;
808
- width: number;
809
- height: number;
810
- angle: import("@nous-excalidraw/math").Radians;
811
- seed: number;
812
- version: number;
813
- versionNonce: number;
814
- index: import("@nous-excalidraw/element/types").FractionalIndex | null;
815
- isDeleted: boolean;
816
- groupIds: readonly import("@nous-excalidraw/element/types").GroupId[];
817
- frameId: string | null;
818
- boundElements: readonly import("@nous-excalidraw/element/types").BoundElement[] | null;
819
- updated: number;
820
- link: string | null;
821
- locked: boolean;
822
- customData?: Record<string, any>;
823
- }> & {
824
- type: "rectangle";
825
- } & {
826
- index: import("@nous-excalidraw/element/types").FractionalIndex;
827
- }) | (Readonly<{
828
- id: string;
829
- x: number;
830
- y: number;
831
- strokeColor: string;
832
- backgroundColor: string;
833
- fillStyle: import("@nous-excalidraw/element/types").FillStyle;
834
- strokeWidth: number;
835
- strokeStyle: import("@nous-excalidraw/element/types").StrokeStyle;
836
- roundness: null | {
837
- type: import("@nous-excalidraw/element/types").RoundnessType;
838
- value?: number;
839
- };
840
- roughness: number;
841
- opacity: number;
842
- width: number;
843
- height: number;
844
- angle: import("@nous-excalidraw/math").Radians;
845
- seed: number;
846
- version: number;
847
- versionNonce: number;
848
- index: import("@nous-excalidraw/element/types").FractionalIndex | null;
849
- isDeleted: boolean;
850
- groupIds: readonly import("@nous-excalidraw/element/types").GroupId[];
851
- frameId: string | null;
852
- boundElements: readonly import("@nous-excalidraw/element/types").BoundElement[] | null;
853
- updated: number;
854
- link: string | null;
855
- locked: boolean;
856
- customData?: Record<string, any>;
857
- }> & {
858
- type: "diamond";
859
- } & {
860
- index: import("@nous-excalidraw/element/types").FractionalIndex;
861
- }) | (Readonly<{
862
- id: string;
863
- x: number;
864
- y: number;
865
- strokeColor: string;
866
- backgroundColor: string;
867
- fillStyle: import("@nous-excalidraw/element/types").FillStyle;
868
- strokeWidth: number;
869
- strokeStyle: import("@nous-excalidraw/element/types").StrokeStyle;
870
- roundness: null | {
871
- type: import("@nous-excalidraw/element/types").RoundnessType;
872
- value?: number;
873
- };
874
- roughness: number;
875
- opacity: number;
876
- width: number;
877
- height: number;
878
- angle: import("@nous-excalidraw/math").Radians;
879
- seed: number;
880
- version: number;
881
- versionNonce: number;
882
- index: import("@nous-excalidraw/element/types").FractionalIndex | null;
883
- isDeleted: boolean;
884
- groupIds: readonly import("@nous-excalidraw/element/types").GroupId[];
885
- frameId: string | null;
886
- boundElements: readonly import("@nous-excalidraw/element/types").BoundElement[] | null;
887
- updated: number;
888
- link: string | null;
889
- locked: boolean;
890
- customData?: Record<string, any>;
891
- }> & {
892
- type: "triangle";
893
- } & {
894
- index: import("@nous-excalidraw/element/types").FractionalIndex;
895
- }) | (Readonly<{
896
- id: string;
897
- x: number;
898
- y: number;
899
- strokeColor: string;
900
- backgroundColor: string;
901
- fillStyle: import("@nous-excalidraw/element/types").FillStyle;
902
- strokeWidth: number;
903
- strokeStyle: import("@nous-excalidraw/element/types").StrokeStyle;
904
- roundness: null | {
905
- type: import("@nous-excalidraw/element/types").RoundnessType;
906
- value?: number;
907
- };
908
- roughness: number;
909
- opacity: number;
910
- width: number;
911
- height: number;
912
- angle: import("@nous-excalidraw/math").Radians;
913
- seed: number;
914
- version: number;
915
- versionNonce: number;
916
- index: import("@nous-excalidraw/element/types").FractionalIndex | null;
917
- isDeleted: boolean;
918
- groupIds: readonly import("@nous-excalidraw/element/types").GroupId[];
919
- frameId: string | null;
920
- boundElements: readonly import("@nous-excalidraw/element/types").BoundElement[] | null;
921
- updated: number;
922
- link: string | null;
923
- locked: boolean;
924
- customData?: Record<string, any>;
925
- }> & {
926
- type: "ellipse";
927
- } & {
928
- index: import("@nous-excalidraw/element/types").FractionalIndex;
929
- }) | (Readonly<{
930
- id: string;
931
- x: number;
932
- y: number;
933
- strokeColor: string;
934
- backgroundColor: string;
935
- fillStyle: import("@nous-excalidraw/element/types").FillStyle;
936
- strokeWidth: number;
937
- strokeStyle: import("@nous-excalidraw/element/types").StrokeStyle;
938
- roundness: null | {
939
- type: import("@nous-excalidraw/element/types").RoundnessType;
940
- value?: number;
941
- };
942
- roughness: number;
943
- opacity: number;
944
- width: number;
945
- height: number;
946
- angle: import("@nous-excalidraw/math").Radians;
947
- seed: number;
948
- version: number;
949
- versionNonce: number;
950
- index: import("@nous-excalidraw/element/types").FractionalIndex | null;
951
- isDeleted: boolean;
952
- groupIds: readonly import("@nous-excalidraw/element/types").GroupId[];
953
- frameId: string | null;
954
- boundElements: readonly import("@nous-excalidraw/element/types").BoundElement[] | null;
955
- updated: number;
956
- link: string | null;
957
- locked: boolean;
958
- customData?: Record<string, any>;
959
- }> & Readonly<{
960
- type: "embeddable";
961
- }> & {
962
- index: import("@nous-excalidraw/element/types").FractionalIndex;
963
- }) | (Readonly<{
964
- id: string;
965
- x: number;
966
- y: number;
967
- strokeColor: string;
968
- backgroundColor: string;
969
- fillStyle: import("@nous-excalidraw/element/types").FillStyle;
970
- strokeWidth: number;
971
- strokeStyle: import("@nous-excalidraw/element/types").StrokeStyle;
972
- roundness: null | {
973
- type: import("@nous-excalidraw/element/types").RoundnessType;
974
- value?: number;
975
- };
976
- roughness: number;
977
- opacity: number;
978
- width: number;
979
- height: number;
980
- angle: import("@nous-excalidraw/math").Radians;
981
- seed: number;
982
- version: number;
983
- versionNonce: number;
984
- index: import("@nous-excalidraw/element/types").FractionalIndex | null;
985
- isDeleted: boolean;
986
- groupIds: readonly import("@nous-excalidraw/element/types").GroupId[];
987
- frameId: string | null;
988
- boundElements: readonly import("@nous-excalidraw/element/types").BoundElement[] | null;
989
- updated: number;
990
- link: string | null;
991
- locked: boolean;
992
- customData?: Record<string, any>;
993
- }> & Readonly<{
994
- type: "iframe";
995
- customData?: {
996
- generationData?: import("@nous-excalidraw/element/types").MagicGenerationData;
997
- };
998
- }> & {
999
- index: import("@nous-excalidraw/element/types").FractionalIndex;
1000
- }) | (Readonly<{
1001
- id: string;
1002
- x: number;
1003
- y: number;
1004
- strokeColor: string;
1005
- backgroundColor: string;
1006
- fillStyle: import("@nous-excalidraw/element/types").FillStyle;
1007
- strokeWidth: number;
1008
- strokeStyle: import("@nous-excalidraw/element/types").StrokeStyle;
1009
- roundness: null | {
1010
- type: import("@nous-excalidraw/element/types").RoundnessType;
1011
- value?: number;
1012
- };
1013
- roughness: number;
1014
- opacity: number;
1015
- width: number;
1016
- height: number;
1017
- angle: import("@nous-excalidraw/math").Radians;
1018
- seed: number;
1019
- version: number;
1020
- versionNonce: number;
1021
- index: import("@nous-excalidraw/element/types").FractionalIndex | null;
1022
- isDeleted: boolean;
1023
- groupIds: readonly import("@nous-excalidraw/element/types").GroupId[];
1024
- frameId: string | null;
1025
- boundElements: readonly import("@nous-excalidraw/element/types").BoundElement[] | null;
1026
- updated: number;
1027
- link: string | null;
1028
- locked: boolean;
1029
- customData?: Record<string, any>;
1030
- }> & Readonly<{
1031
- type: "image";
1032
- fileId: import("@nous-excalidraw/element/types").FileId | null;
1033
- status: "pending" | "saved" | "error";
1034
- scale: [number, number];
1035
- crop: import("@nous-excalidraw/element/types").ImageCrop | null;
1036
- }> & {
1037
- index: import("@nous-excalidraw/element/types").FractionalIndex;
1038
- }) | (Readonly<{
1039
- id: string;
1040
- x: number;
1041
- y: number;
1042
- strokeColor: string;
1043
- backgroundColor: string;
1044
- fillStyle: import("@nous-excalidraw/element/types").FillStyle;
1045
- strokeWidth: number;
1046
- strokeStyle: import("@nous-excalidraw/element/types").StrokeStyle;
1047
- roundness: null | {
1048
- type: import("@nous-excalidraw/element/types").RoundnessType;
1049
- value?: number;
1050
- };
1051
- roughness: number;
1052
- opacity: number;
1053
- width: number;
1054
- height: number;
1055
- angle: import("@nous-excalidraw/math").Radians;
1056
- seed: number;
1057
- version: number;
1058
- versionNonce: number;
1059
- index: import("@nous-excalidraw/element/types").FractionalIndex | null;
1060
- isDeleted: boolean;
1061
- groupIds: readonly import("@nous-excalidraw/element/types").GroupId[];
1062
- frameId: string | null;
1063
- boundElements: readonly import("@nous-excalidraw/element/types").BoundElement[] | null;
1064
- updated: number;
1065
- link: string | null;
1066
- locked: boolean;
1067
- customData?: Record<string, any>;
1068
- }> & {
1069
- type: "frame";
1070
- name: string | null;
1071
- } & {
1072
- index: import("@nous-excalidraw/element/types").FractionalIndex;
1073
- }) | (Readonly<{
1074
- id: string;
1075
- x: number;
1076
- y: number;
1077
- strokeColor: string;
1078
- backgroundColor: string;
1079
- fillStyle: import("@nous-excalidraw/element/types").FillStyle;
1080
- strokeWidth: number;
1081
- strokeStyle: import("@nous-excalidraw/element/types").StrokeStyle;
1082
- roundness: null | {
1083
- type: import("@nous-excalidraw/element/types").RoundnessType;
1084
- value?: number;
1085
- };
1086
- roughness: number;
1087
- opacity: number;
1088
- width: number;
1089
- height: number;
1090
- angle: import("@nous-excalidraw/math").Radians;
1091
- seed: number;
1092
- version: number;
1093
- versionNonce: number;
1094
- index: import("@nous-excalidraw/element/types").FractionalIndex | null;
1095
- isDeleted: boolean;
1096
- groupIds: readonly import("@nous-excalidraw/element/types").GroupId[];
1097
- frameId: string | null;
1098
- boundElements: readonly import("@nous-excalidraw/element/types").BoundElement[] | null;
1099
- updated: number;
1100
- link: string | null;
1101
- locked: boolean;
1102
- customData?: Record<string, any>;
1103
- }> & {
1104
- type: "magicframe";
1105
- name: string | null;
1106
- } & {
1107
- index: import("@nous-excalidraw/element/types").FractionalIndex;
1108
- }) | (Readonly<{
1109
- id: string;
1110
- x: number;
1111
- y: number;
1112
- strokeColor: string;
1113
- backgroundColor: string;
1114
- fillStyle: import("@nous-excalidraw/element/types").FillStyle;
1115
- strokeWidth: number;
1116
- strokeStyle: import("@nous-excalidraw/element/types").StrokeStyle;
1117
- roundness: null | {
1118
- type: import("@nous-excalidraw/element/types").RoundnessType;
1119
- value?: number;
1120
- };
1121
- roughness: number;
1122
- opacity: number;
1123
- width: number;
1124
- height: number;
1125
- angle: import("@nous-excalidraw/math").Radians;
1126
- seed: number;
1127
- version: number;
1128
- versionNonce: number;
1129
- index: import("@nous-excalidraw/element/types").FractionalIndex | null;
1130
- isDeleted: boolean;
1131
- groupIds: readonly import("@nous-excalidraw/element/types").GroupId[];
1132
- frameId: string | null;
1133
- boundElements: readonly import("@nous-excalidraw/element/types").BoundElement[] | null;
1134
- updated: number;
1135
- link: string | null;
1136
- locked: boolean;
1137
- customData?: Record<string, any>;
1138
- }> & Readonly<{
1139
- type: "text";
1140
- fontSize: number;
1141
- fontFamily: import("@nous-excalidraw/element/types").FontFamilyValues;
1142
- text: string;
1143
- textAlign: import("@nous-excalidraw/element/types").TextAlign;
1144
- verticalAlign: import("@nous-excalidraw/element/types").VerticalAlign;
1145
- containerId: import("@nous-excalidraw/element/types").ExcalidrawGenericElement["id"] | null;
1146
- originalText: string;
1147
- autoResize: boolean;
1148
- lineHeight: number & {
1149
- _brand: "unitlessLineHeight";
1150
- };
1151
- }> & {
1152
- index: import("@nous-excalidraw/element/types").FractionalIndex;
1153
- }) | (Readonly<{
1154
- id: string;
1155
- x: number;
1156
- y: number;
1157
- strokeColor: string;
1158
- backgroundColor: string;
1159
- fillStyle: import("@nous-excalidraw/element/types").FillStyle;
1160
- strokeWidth: number;
1161
- strokeStyle: import("@nous-excalidraw/element/types").StrokeStyle;
1162
- roundness: null | {
1163
- type: import("@nous-excalidraw/element/types").RoundnessType;
1164
- value?: number;
1165
- };
1166
- roughness: number;
1167
- opacity: number;
1168
- width: number;
1169
- height: number;
1170
- angle: import("@nous-excalidraw/math").Radians;
1171
- seed: number;
1172
- version: number;
1173
- versionNonce: number;
1174
- index: import("@nous-excalidraw/element/types").FractionalIndex | null;
1175
- isDeleted: boolean;
1176
- groupIds: readonly import("@nous-excalidraw/element/types").GroupId[];
1177
- frameId: string | null;
1178
- boundElements: readonly import("@nous-excalidraw/element/types").BoundElement[] | null;
1179
- updated: number;
1180
- link: string | null;
1181
- locked: boolean;
1182
- customData?: Record<string, any>;
1183
- }> & Readonly<{
1184
- type: "freedraw";
1185
- points: readonly import("@nous-excalidraw/math").LocalPoint[];
1186
- pressures: readonly number[];
1187
- simulatePressure: boolean;
1188
- }> & {
1189
- index: import("@nous-excalidraw/element/types").FractionalIndex;
1190
- }) | import("@nous-excalidraw/element/types").NonDeleted<import("@nous-excalidraw/element/types").ExcalidrawFrameElement>)[];
720
+ elements: import("@nous-excalidraw/element/types").OrderedExcalidrawElement[];
1191
721
  appState: {
1192
722
  selectedElementIds: {
1193
723
  [x: string]: true;
@@ -1,7 +1,7 @@
1
1
  import React from "react";
2
2
  import { AppEventBus, type EXPORT_IMAGE_TYPES, Emitter, type EditorInterface, type StylesPanelMode } from "@nous-excalidraw/common";
3
3
  import { LinearElementEditor, FlowChartCreator, Scene, Store, type ElementUpdate, StoreDelta, type ApplyToOptions } from "@nous-excalidraw/element";
4
- import type { MaybeTransformHandleType, TransformHandleType } from "@nous-excalidraw/element";
4
+ import type { MaybeTransformHandleType } from "@nous-excalidraw/element";
5
5
  import type { ExcalidrawElement, NonDeleted, NonDeletedExcalidrawElement, ExcalidrawFrameLikeElement, ExcalidrawIframeElement, ExcalidrawEmbeddableElement, Ordered, SceneElementsMap } from "@nous-excalidraw/element/types";
6
6
  import type { Mutable } from "@nous-excalidraw/common/utility-types";
7
7
  import { ActionManager } from "../actions/manager";
@@ -122,7 +122,6 @@ declare class App extends React.Component<AppProps, AppState> {
122
122
  x: number;
123
123
  y: number;
124
124
  } | null;
125
- hoveredCornerTransformHandleType: TransformHandleType | null;
126
125
  private lastCompletedCanvasClicks;
127
126
  /** previous frame pointer coords */
128
127
  previousPointerMoveCoords: {
@@ -523,9 +522,6 @@ declare class App extends React.Component<AppProps, AppState> {
523
522
  private getElementLinkAtPosition;
524
523
  private handleElementLinkClick;
525
524
  private getTopLayerFrameAtSceneCoords;
526
- private getHoveredCornerTransformHandleType;
527
- private syncHoveredCornerTransformHandleType;
528
- private clearHoveredCornerTransformHandleType;
529
525
  private clearHoverOutlineIfNeeded;
530
526
  /** Unified frame hover: title band, frame interior, or any element inside the frame. */
531
527
  private computeHoveredFrameId;
@@ -47,6 +47,7 @@ export { TTDDialogTrigger } from "./components/TTDDialog/TTDDialogTrigger";
47
47
  export { TTDStreamFetch } from "./components/TTDDialog/utils/TTDStreamFetch";
48
48
  export type { TTDPersistenceAdapter, SavedChat, SavedChats, } from "./components/TTDDialog/types";
49
49
  export { zoomToFitBounds } from "./actions/actionCanvas";
50
+ export { actionWrapSelectionInFrame } from "./actions/actionFrame";
50
51
  export { getCommonBounds, getVisibleSceneBounds, convertToExcalidrawElements, } from "@nous-excalidraw/element";
51
52
  export { elementsOverlappingBBox, isElementInsideBBox, elementPartiallyOverlapsWithOrContainsBBox, } from "@nous-excalidraw/utils/withinBounds";
52
53
  export { DiagramToCodePlugin } from "./components/DiagramToCodePlugin/DiagramToCodePlugin";
@@ -1,5 +1,4 @@
1
1
  import type { UserIdleState, EditorInterface } from "@nous-excalidraw/common";
2
- import type { TransformHandleType } from "@nous-excalidraw/element";
3
2
  import type { ExcalidrawElement, NonDeletedElementsMap, NonDeletedExcalidrawElement, NonDeletedSceneElementsMap } from "@nous-excalidraw/element/types";
4
3
  import type { MakeBrand } from "@nous-excalidraw/common/utility-types";
5
4
  import type { AppClassProperties, AppState, EmbedsValidationStatus, ElementsPendingErasure, InteractiveCanvasAppState, StaticCanvasAppState, SocketId, PendingExcalidrawElements } from "../types";
@@ -49,8 +48,6 @@ export type InteractiveCanvasRenderConfig = {
49
48
  remotePointerUsernames: Map<SocketId, string>;
50
49
  remotePointerButton: Map<SocketId, string | undefined>;
51
50
  selectionColor: string;
52
- /** nw/ne/sw/se when cursor is over a corner resize handle */
53
- hoveredCornerTransformHandleType: TransformHandleType | null;
54
51
  lastViewportPosition: {
55
52
  x: number;
56
53
  y: number;
@@ -1,6 +1,6 @@
1
1
  import type { IMAGE_MIME_TYPES, UserIdleState, throttleRAF, MIME_TYPES, EditorInterface } from "@nous-excalidraw/common";
2
2
  import type { LinearElementEditor } from "@nous-excalidraw/element";
3
- import type { MaybeTransformHandleType, TransformHandleType } from "@nous-excalidraw/element";
3
+ import type { MaybeTransformHandleType } from "@nous-excalidraw/element";
4
4
  import type { PointerType, ExcalidrawLinearElement, NonDeletedExcalidrawElement, NonDeleted, TextAlign, ExcalidrawElement, GroupId, ExcalidrawBindableElement, Arrowhead, FontFamilyValues, FileId, Theme, StrokeRoundness, ExcalidrawEmbeddableElement, ExcalidrawMagicFrameElement, ExcalidrawFrameLikeElement, ExcalidrawElementType, ExcalidrawIframeLikeElement, OrderedExcalidrawElement, ExcalidrawNonSelectionElement, BindMode, ExcalidrawTextElement } from "@nous-excalidraw/element/types";
5
5
  import type { Merge, MaybePromise, ValueOf, MakeBrand } from "@nous-excalidraw/common/utility-types";
6
6
  import type { CaptureUpdateActionType, DurableIncrement, EphemeralIncrement } from "@nous-excalidraw/element";
@@ -657,8 +657,6 @@ export type AppClassProperties = {
657
657
  onEvent: App["onEvent"];
658
658
  onStateChange: App["onStateChange"];
659
659
  lastPointerMoveCoords: App["lastPointerMoveCoords"];
660
- /** Corner resize handle (nw/ne/sw/se) under cursor; for selection-handle hover fill. */
661
- hoveredCornerTransformHandleType: TransformHandleType | null;
662
660
  bindModeHandler: App["bindModeHandler"];
663
661
  setAppState: App["setAppState"];
664
662
  };
@@ -749,6 +747,8 @@ export interface ExcalidrawImperativeAPI {
749
747
  getName: InstanceType<typeof App>["getName"];
750
748
  scrollToContent: InstanceType<typeof App>["scrollToContent"];
751
749
  registerAction: (action: Action) => void;
750
+ /** Execute a registered editor action (e.g. wrapSelectionInFrame). */
751
+ executeAction: <T extends Action>(action: T, value?: Parameters<T["perform"]>[2]) => void;
752
752
  refresh: InstanceType<typeof App>["refresh"];
753
753
  setToast: InstanceType<typeof App>["setToast"];
754
754
  addFiles: (data: BinaryFileData[]) => void;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@nous-excalidraw/excalidraw",
3
- "version": "0.18.9-beta.21",
3
+ "version": "0.18.9-beta.23",
4
4
  "type": "module",
5
5
  "types": "./dist/types/excalidraw/index.d.ts",
6
6
  "main": "./dist/prod/index.js",
@@ -1 +0,0 @@
1
- import{T as a,U as b,V as c}from"../chunk-YAGSAM37.js";import"../chunk-TFET7NMD.js";import"../chunk-SRAX5OIU.js";export{c as decodePngMetadata,b as encodePngMetadata,a as getTEXtChunk};