gitextract_w464gyf3/ ├── .browserslistrc ├── .codeclimate.yml ├── .eslintignore ├── .eslintrc.cjs ├── .github/ │ ├── stale.yml │ └── workflows/ │ ├── publish.yml │ └── test.yml ├── .gitignore ├── .husky/ │ ├── .gitignore │ └── pre-commit ├── .npmignore ├── .npmrc ├── .nvmrc ├── .prettierignore ├── .prettierrc.json ├── .stylelintrc.cjs ├── .yarnrc ├── CHANGELOG.md ├── ISSUE_TEMPLATE.md ├── LICENSE ├── PULL_REQUEST_TEMPLATE.md ├── README.md ├── babel.config.cjs ├── bin/ │ ├── _add_plugin_indexes │ ├── _bundle │ ├── _check_deps │ ├── _clean │ ├── _link │ ├── _lint │ ├── _release │ ├── _types │ └── _version ├── bundle.rollup.config.cjs ├── docs/ │ ├── action-options.md │ ├── auto-start.md │ ├── draggable.md │ ├── dropzone.md │ ├── events.md │ ├── faq.md │ ├── gesturable.md │ ├── inertia.md │ ├── installation.md │ ├── introduction.md │ ├── migrating.md │ ├── modifiers.md │ ├── reflow.md │ ├── resizable.md │ ├── restriction.md │ ├── snapping.md │ └── tooling.md ├── esnext.rollup.config.cjs ├── examples/ │ ├── .eslintignore │ ├── .eslintrc.cjs │ ├── dropzones/ │ │ ├── index.css │ │ ├── index.html │ │ └── index.js │ ├── events/ │ │ ├── index.css │ │ ├── index.html │ │ └── index.js │ ├── iframes/ │ │ ├── bottom.html │ │ ├── index.css │ │ ├── index.html │ │ ├── index.js │ │ └── middle.html │ ├── snap/ │ │ ├── index.css │ │ ├── index.html │ │ └── index.js │ ├── sortable/ │ │ ├── index.html │ │ ├── react.js │ │ ├── shared.js │ │ ├── style.css │ │ └── vue.js │ ├── star/ │ │ ├── index.css │ │ └── index.js │ ├── svg-editor/ │ │ ├── index.html │ │ └── index.js │ └── transform/ │ ├── index.html │ └── index.js ├── jest.config.ts ├── lerna.json ├── package.json ├── packages/ │ ├── .eslintrc.cjs │ ├── @interactjs/ │ │ ├── actions/ │ │ │ ├── README.md │ │ │ ├── actions.spec.ts │ │ │ ├── drag/ │ │ │ │ ├── drag.spec.ts │ │ │ │ └── plugin.ts │ │ │ ├── drop/ │ │ │ │ ├── DropEvent.spec.ts │ │ │ │ ├── DropEvent.ts │ │ │ │ ├── drop.spec.ts │ │ │ │ └── plugin.ts │ │ │ ├── gesture/ │ │ │ │ ├── gesture.spec.ts │ │ │ │ └── plugin.ts │ │ │ ├── package.json │ │ │ ├── plugin.ts │ │ │ └── resize/ │ │ │ ├── plugin.ts │ │ │ └── resize.spec.ts │ │ ├── auto-scroll/ │ │ │ ├── README.md │ │ │ ├── package.json │ │ │ └── plugin.ts │ │ ├── auto-start/ │ │ │ ├── InteractableMethods.ts │ │ │ ├── README.md │ │ │ ├── autoStart.spec.ts │ │ │ ├── base.ts │ │ │ ├── dragAxis.ts │ │ │ ├── hold.spec.ts │ │ │ ├── hold.ts │ │ │ ├── package.json │ │ │ └── plugin.ts │ │ ├── core/ │ │ │ ├── BaseEvent.ts │ │ │ ├── Eventable.spec.ts │ │ │ ├── Eventable.ts │ │ │ ├── InteractEvent.ts │ │ │ ├── InteractStatic.ts │ │ │ ├── Interactable.spec.ts │ │ │ ├── Interactable.ts │ │ │ ├── InteractableSet.ts │ │ │ ├── Interaction.spec.ts │ │ │ ├── Interaction.ts │ │ │ ├── NativeTypes.ts │ │ │ ├── PointerInfo.ts │ │ │ ├── README.md │ │ │ ├── events.ts │ │ │ ├── interactablePreventDefault.spec.ts │ │ │ ├── interactablePreventDefault.ts │ │ │ ├── interactionFinder.spec.ts │ │ │ ├── interactionFinder.ts │ │ │ ├── interactions.spec.ts │ │ │ ├── interactions.ts │ │ │ ├── options.ts │ │ │ ├── package.json │ │ │ ├── scope.spec.ts │ │ │ ├── scope.ts │ │ │ ├── tests/ │ │ │ │ └── _helpers.ts │ │ │ └── types.ts │ │ ├── dev-tools/ │ │ │ ├── README.md │ │ │ ├── babel-plugin-prod.js │ │ │ ├── babel-plugin-prod.spec.ts │ │ │ ├── devTools.spec.ts │ │ │ ├── package.json │ │ │ ├── plugin.ts │ │ │ └── visualizer/ │ │ │ ├── plugin.stub.ts │ │ │ ├── plugin.ts │ │ │ ├── visualizer.spec.stub.ts │ │ │ ├── visualizer.spec.ts │ │ │ ├── vueModules.stub.ts │ │ │ └── vueModules.ts │ │ ├── inertia/ │ │ │ ├── README.md │ │ │ ├── inertia.spec.ts │ │ │ ├── package.json │ │ │ └── plugin.ts │ │ ├── interact/ │ │ │ ├── README.md │ │ │ ├── index.ts │ │ │ ├── interact.spec.ts │ │ │ └── package.json │ │ ├── interactjs/ │ │ │ ├── index.stub.ts │ │ │ ├── index.ts │ │ │ └── package.json │ │ ├── modifiers/ │ │ │ ├── Modification.ts │ │ │ ├── README.md │ │ │ ├── all.ts │ │ │ ├── aspectRatio.spec.ts │ │ │ ├── aspectRatio.ts │ │ │ ├── avoid/ │ │ │ │ ├── avoid.stub.ts │ │ │ │ └── avoid.ts │ │ │ ├── base.spec.ts │ │ │ ├── base.ts │ │ │ ├── noop.ts │ │ │ ├── package.json │ │ │ ├── plugin.ts │ │ │ ├── restrict/ │ │ │ │ ├── edges.spec.ts │ │ │ │ ├── edges.ts │ │ │ │ ├── pointer.spec.ts │ │ │ │ ├── pointer.ts │ │ │ │ ├── rect.ts │ │ │ │ ├── size.spec.ts │ │ │ │ └── size.ts │ │ │ ├── rubberband/ │ │ │ │ ├── rubberband.stub.ts │ │ │ │ └── rubberband.ts │ │ │ ├── snap/ │ │ │ │ ├── edges.spec.ts │ │ │ │ ├── edges.ts │ │ │ │ ├── pointer.spec.ts │ │ │ │ ├── pointer.ts │ │ │ │ ├── size.spec.ts │ │ │ │ └── size.ts │ │ │ ├── spring/ │ │ │ │ ├── spring.stub.ts │ │ │ │ └── spring.ts │ │ │ ├── transform/ │ │ │ │ ├── transform.stub.ts │ │ │ │ └── transform.ts │ │ │ └── types.ts │ │ ├── offset/ │ │ │ ├── offset.spec.ts │ │ │ ├── package.json │ │ │ └── plugin.ts │ │ ├── pointer-events/ │ │ │ ├── PointerEvent.spec.ts │ │ │ ├── PointerEvent.ts │ │ │ ├── README.md │ │ │ ├── base.spec.ts │ │ │ ├── base.ts │ │ │ ├── holdRepeat.spec.ts │ │ │ ├── holdRepeat.ts │ │ │ ├── interactableTargets.ts │ │ │ ├── package.json │ │ │ └── plugin.ts │ │ ├── reflow/ │ │ │ ├── README.md │ │ │ ├── package.json │ │ │ ├── plugin.ts │ │ │ └── reflow.spec.ts │ │ ├── snappers/ │ │ │ ├── all.ts │ │ │ ├── edgeTarget.stub.ts │ │ │ ├── edgeTarget.ts │ │ │ ├── elements.stub.ts │ │ │ ├── elements.ts │ │ │ ├── grid.ts │ │ │ ├── package.json │ │ │ └── plugin.ts │ │ ├── types/ │ │ │ ├── README.md │ │ │ ├── index.ts │ │ │ ├── package.json │ │ │ └── types.spec.ts │ │ └── utils/ │ │ ├── ElementState.stub.ts │ │ ├── ElementState.ts │ │ ├── README.md │ │ ├── arr.ts │ │ ├── browser.ts │ │ ├── center.ts │ │ ├── clone.ts │ │ ├── displace.stub.ts │ │ ├── displace.ts │ │ ├── domObjects.ts │ │ ├── domUtils.spec.ts │ │ ├── domUtils.ts │ │ ├── exchange.stub.ts │ │ ├── exchange.ts │ │ ├── extend.ts │ │ ├── getOriginXY.ts │ │ ├── hypot.ts │ │ ├── is.ts │ │ ├── isNonNativeEvent.ts │ │ ├── isWindow.ts │ │ ├── misc.ts │ │ ├── normalizeListeners.spec.ts │ │ ├── normalizeListeners.ts │ │ ├── package.json │ │ ├── pointerExtend.ts │ │ ├── pointerUtils.ts │ │ ├── raf.ts │ │ ├── rect.ts │ │ ├── shallowEqual.ts │ │ └── window.ts │ └── interactjs/ │ ├── .npmignore │ ├── LICENSE │ ├── README.md │ ├── bower.json │ ├── index.ts │ └── package.json ├── scripts/ │ ├── .eslintrc.cjs │ ├── addPluginIndexes.js │ ├── babel/ │ │ ├── absolute-imports.js │ │ ├── inline-env-vars.js │ │ ├── relative-imports.js │ │ └── vue-sfc.js │ ├── bin/ │ │ ├── _check_deps.js │ │ ├── add_plugin_indexes.js │ │ ├── bundle.js │ │ ├── clean.js │ │ ├── lint.js │ │ ├── release.js │ │ ├── types.js │ │ └── version.js │ ├── execTypes.js │ ├── getVersion.js │ ├── headers.js │ └── utils.js ├── shims.d.ts ├── test/ │ ├── .eslintrc.cjs │ └── fixtures/ │ ├── babelPluginProject/ │ │ ├── index.js │ │ └── node_modules/ │ │ └── @interactjs/ │ │ └── a/ │ │ ├── a.js │ │ ├── b/ │ │ │ ├── b.js │ │ │ └── index.js │ │ ├── package-main-file.js │ │ └── package.json │ └── dependentTsProject/ │ ├── index.ts │ └── tsconfig.json ├── tsconfig.json ├── typedoc.config.cjs ├── types.tsconfig.json ├── vijest.config.js └── vite.config.ts