File tree Expand file tree Collapse file tree 3 files changed +14
-6
lines changed
examples/landing/components/selectors Expand file tree Collapse file tree 3 files changed +14
-6
lines changed Original file line number Diff line number Diff line change @@ -17,7 +17,7 @@ export const OnlyButtons = ({ children, ...props }) => {
1717
1818OnlyButtons . craft = {
1919 rules : {
20- canMoveIn : ( node ) => node . data . type === Button ,
20+ canMoveIn : ( nodes ) => nodes . every ( ( node ) => node . data . type === Button ) ,
2121 } ,
2222} ;
2323
Original file line number Diff line number Diff line change @@ -16,9 +16,9 @@ export const Custom2VideoDrop = ({ children }) => {
1616} ;
1717Custom2VideoDrop . craft = {
1818 rules : {
19- canMoveIn : ( incoming , self , helper ) => {
19+ canMoveIn : ( nodes , self , helper ) => {
2020 return (
21- incoming . data . type === Video &&
21+ nodes . every ( ( node ) => node . data . type === Video ) &&
2222 helper ( self . id ) . decendants ( ) . length === 0
2323 ) ;
2424 } ,
Original file line number Diff line number Diff line change @@ -17,15 +17,23 @@ export const Custom3BtnDrop = ({ children }) => {
1717
1818Custom3BtnDrop . craft = {
1919 rules : {
20- canMoveOut : ( target , self , helpers ) => {
20+ canMoveOut : ( outgoingNodes , self , helpers ) => {
2121 const {
2222 data : { nodes } ,
2323 } = self ;
2424 const btnNodes = nodes . filter (
2525 ( id ) => helpers ( id ) . get ( ) . data . type === Button
2626 ) ;
27- if ( target . data . type === Button && btnNodes . length === 1 ) return false ;
28- return true ;
27+
28+ const outgoingButtonNodes = outgoingNodes . filter (
29+ ( node ) => node . data . type === Button
30+ ) ;
31+
32+ if ( outgoingButtonNodes . length < btnNodes . length ) {
33+ return true ;
34+ }
35+
36+ return false ;
2937 } ,
3038 } ,
3139} ;
You can’t perform that action at this time.
0 commit comments