(left, right, target, feature, runtime2)
| 9906 | return typeof expr.set === "function"; |
| 9907 | } |
| 9908 | function _bind(left, right, target, feature, runtime2) { |
| 9909 | var ctx = runtime2.makeContext(target, feature, target, null); |
| 9910 | var leftSide = _resolveSide(left, target, feature, runtime2, ctx); |
| 9911 | var rightSide = _resolveSide(right, target, feature, runtime2, ctx); |
| 9912 | var leftWritable = leftSide.element || _isAssignable(left); |
| 9913 | var rightWritable = rightSide.element || _isAssignable(right); |
| 9914 | if (!leftWritable && !rightWritable) { |
| 9915 | throw new Error("bind requires at least one writable side"); |
| 9916 | } |
| 9917 | if (leftWritable) { |
| 9918 | runtime2.reactivity.createEffect( |
| 9919 | function() { |
| 9920 | return rightSide.read(); |
| 9921 | }, |
| 9922 | function(newValue) { |
| 9923 | leftSide.write(newValue); |
| 9924 | }, |
| 9925 | { element: target } |
| 9926 | ); |
| 9927 | } |
| 9928 | if (rightWritable) { |
| 9929 | runtime2.reactivity.createEffect( |
| 9930 | function() { |
| 9931 | return leftSide.read(); |
| 9932 | }, |
| 9933 | function(newValue) { |
| 9934 | rightSide.write(newValue); |
| 9935 | }, |
| 9936 | { element: target } |
| 9937 | ); |
| 9938 | } |
| 9939 | _setupFormReset(leftSide, rightSide, target, runtime2); |
| 9940 | } |
| 9941 | function _resolveSide(expr, target, feature, runtime2, ctx) { |
| 9942 | var value = expr.evaluate(ctx); |
| 9943 | if (value instanceof Element) { |
no test coverage detected