UNPKG

35 kBSource Map (JSON)View Raw
1{"mappings":"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","sources":["src/index.ts","src/react-sortable.tsx","src/util.ts","src/types.ts"],"sourcesContent":["export {\n default as Sortable,\n Direction,\n DOMRect,\n GroupOptions,\n MoveEvent,\n Options,\n PullResult,\n PutResult,\n SortableEvent,\n SortableOptions,\n Utils,\n} from \"sortablejs\";\nexport { ReactSortable } from \"./react-sortable\";\nexport * from \"./types\";\n","import classNames from \"classnames\";\nimport {\n Children,\n cloneElement,\n Component,\n createElement,\n createRef,\n ReactElement,\n RefObject,\n} from \"react\";\nimport Sortable, { MoveEvent, Options, SortableEvent } from \"sortablejs\";\nimport invariant from \"tiny-invariant\";\nimport {\n AllMethodsExceptMove,\n HandledMethodNames,\n ItemInterface,\n ReactSortableProps,\n Store,\n UnHandledMethodNames,\n} from \"./types\";\nimport {\n createCustoms,\n destructurePropsForOptions,\n getMode,\n handleStateAdd,\n handleStateChanges,\n handleStateRemove,\n insertNodes,\n removeNode,\n removeNodes,\n} from \"./util\";\n\n/** Holds a global reference for which react element is being dragged */\n// @todo - use context to manage this. How does one use 2 different providers?\nconst store: Store = { dragging: null };\n\nexport class ReactSortable<T extends ItemInterface> extends Component<\n ReactSortableProps<T>\n> {\n /* eslint-disable-next-line */\n static defaultProps: Partial<ReactSortableProps<any>> = {\n clone: (item) => item,\n };\n\n private ref: RefObject<HTMLElement>;\n constructor(props: ReactSortableProps<T>) {\n super(props);\n // @todo forward ref this component\n this.ref = createRef<HTMLElement>();\n\n // make all state false because we can't change sortable unless a mouse gesture is made.\n const newList = [...props.list].map((item) =>\n Object.assign(item, {\n chosen: false,\n selected: false,\n })\n );\n\n props.setList(newList, this.sortable, store);\n invariant(\n //@ts-expect-error: Doesn't exist. Will deprecate soon.\n !props.plugins,\n `\nPlugins prop is no longer supported.\nInstead, mount it with \"Sortable.mount(new MultiDrag())\"\nPlease read the updated README.md at https://github.com/SortableJS/react-sortablejs.\n `\n );\n }\n\n componentDidMount(): void {\n if (this.ref.current === null) return;\n const newOptions = this.makeOptions();\n Sortable.create(this.ref.current, newOptions);\n }\n\n componentDidUpdate(prevProps: ReactSortableProps<T>): void {\n if (prevProps.disabled !== this.props.disabled && this.sortable) {\n this.sortable.option(\"disabled\", this.props.disabled);\n }\n }\n\n render(): JSX.Element {\n const { tag, style, className, id } = this.props;\n const classicProps = { style, className, id };\n\n // if no tag, default to a `div` element.\n const newTag = !tag || tag === null ? \"div\" : tag;\n return createElement(\n newTag,\n {\n // @todo - find a way (perhaps with the callback) to allow AntD components to work\n ref: this.ref,\n ...classicProps,\n },\n this.getChildren()\n );\n }\n\n private getChildren() {\n const {\n children,\n dataIdAttr,\n selectedClass = \"sortable-selected\",\n chosenClass = \"sortable-chosen\",\n /* eslint-disable */\n dragClass = \"sortable-drag\",\n fallbackClass = \"sortable-falback\",\n ghostClass = \"sortable-ghost\",\n swapClass = \"sortable-swap-highlight\",\n /* eslint-enable */\n filter = \"sortable-filter\",\n list,\n } = this.props;\n\n // if no children, don't do anything.\n if (!children || children == null) return null;\n const dataid = dataIdAttr || \"data-id\";\n /* eslint-disable-next-line */\n return Children.map(children as ReactElement<any>[], (child, index) => {\n if (child === undefined) return undefined;\n\n const item = list[index] || {};\n const { className: prevClassName } = child.props;\n\n // @todo - handle the function if avalable. I don't think anyone will be doing this soon.\n const filtered = typeof filter === \"string\" && {\n [filter.replace(\".\", \"\")]: !!item.filtered,\n };\n\n const className = classNames(prevClassName, {\n [selectedClass]: item.selected,\n [chosenClass]: item.chosen,\n ...filtered,\n // [dragClass]: true,\n // [fallbackClass]: true,\n // [ghostClass]: true,\n // [swapClass]: true\n });\n\n return cloneElement(child, {\n [dataid]: child.key,\n className,\n });\n });\n }\n\n /** Appends the `sortable` property to this component */\n private get sortable(): Sortable | null {\n const el = this.ref.current;\n if (el === null) return null;\n const key = Object.keys(el).find((k) => k.includes(\"Sortable\"));\n if (!key) return null;\n //@ts-expect-error: fix me.\n return el[key] as Sortable;\n }\n\n /** Converts all the props from `ReactSortable` into the `options` object that `Sortable.create(el, [options])` can use. */\n makeOptions(): Options {\n const DOMHandlers: HandledMethodNames[] = [\n \"onAdd\",\n \"onChoose\",\n \"onDeselect\",\n \"onEnd\",\n \"onRemove\",\n \"onSelect\",\n \"onSpill\",\n \"onStart\",\n \"onUnchoose\",\n \"onUpdate\",\n ];\n const NonDOMHandlers: UnHandledMethodNames[] = [\n \"onChange\",\n \"onClone\",\n \"onFilter\",\n \"onSort\",\n ];\n const newOptions: Options = destructurePropsForOptions(this.props);\n DOMHandlers.forEach(\n (name) => (newOptions[name] = this.prepareOnHandlerPropAndDOM(name))\n );\n NonDOMHandlers.forEach(\n (name) => (newOptions[name] = this.prepareOnHandlerProp(name))\n );\n\n /** onMove has 2 arguments and needs to be handled seperately. */\n const onMove = (evt: MoveEvent, originalEvt: Event) => {\n const { onMove } = this.props;\n const defaultValue = evt.willInsertAfter || -1;\n if (!onMove) return defaultValue;\n const result = onMove(evt, originalEvt, this.sortable, store);\n if (typeof result === \"undefined\") return false;\n return result;\n };\n\n return {\n ...newOptions,\n onMove,\n };\n }\n\n /** Prepares a method that will be used in the sortable options to call an `on[Handler]` prop & an `on[Handler]` ReactSortable method. */\n prepareOnHandlerPropAndDOM(\n evtName: HandledMethodNames\n ): (evt: SortableEvent) => void {\n return (evt) => {\n // call the component prop\n this.callOnHandlerProp(evt, evtName);\n // calls state change\n //@ts-expect-error: until @types multidrag item is in\n this[evtName](evt);\n };\n }\n\n /** Prepares a method that will be used in the sortable options to call an `on[Handler]` prop */\n prepareOnHandlerProp(\n evtName: Exclude<AllMethodsExceptMove, HandledMethodNames>\n ): (evt: SortableEvent) => void {\n return (evt) => {\n // call the component prop\n this.callOnHandlerProp(evt, evtName);\n };\n }\n\n /** Calls the `props.on[Handler]` function */\n callOnHandlerProp(evt: SortableEvent, evtName: AllMethodsExceptMove): void {\n const propEvent = this.props[evtName];\n if (propEvent) propEvent(evt, this.sortable, store);\n }\n\n // SORTABLE DOM HANDLING\n\n onAdd(evt: MultiDragEvent): void {\n const { list, setList, clone } = this.props;\n /* eslint-disable-next-line */\n const otherList = [...store.dragging!.props.list];\n const customs = createCustoms(evt, otherList);\n removeNodes(customs);\n\n const newList = handleStateAdd(customs, list, evt, clone).map((item) =>\n Object.assign(item, {\n selected: false,\n })\n );\n\n setList(newList, this.sortable, store);\n }\n\n onRemove(evt: MultiDragEvent): void {\n const { list, setList } = this.props;\n const mode = getMode(evt);\n const customs = createCustoms(evt, list);\n insertNodes(customs);\n\n let newList = [...list];\n // remove state if not in clone mode. otherwise, keep.\n if (evt.pullMode !== \"clone\") newList = handleStateRemove(customs, newList);\n // if clone, it doesn't really remove. instead it clones in place.\n // @todo -\n else {\n // switch used to get the clone\n let customClones = customs;\n switch (mode) {\n case \"multidrag\":\n customClones = customs.map((item, index) => ({\n ...item,\n element: evt.clones[index],\n }));\n break;\n case \"normal\":\n customClones = customs.map((item) => ({\n ...item,\n element: evt.clone,\n }));\n break;\n case \"swap\":\n default: {\n invariant(\n true,\n `mode \"${mode}\" cannot clone. Please remove \"props.clone\" from <ReactSortable/> when using the \"${mode}\" plugin`\n );\n }\n }\n removeNodes(customClones);\n\n // replace selected items with cloned items\n customs.forEach((curr) => {\n const index = curr.oldIndex;\n /* eslint-disable-next-line */\n const newItem = this.props.clone!(curr.item, evt);\n newList.splice(index, 1, newItem);\n });\n }\n\n // remove item.selected from list\n newList = newList.map((item: T) =>\n Object.assign(item, {\n selected: false,\n })\n );\n\n setList(newList, this.sortable, store);\n }\n\n onUpdate(evt: MultiDragEvent): void {\n const { list, setList } = this.props;\n const customs = createCustoms(evt, list);\n removeNodes(customs);\n insertNodes(customs);\n const newList = handleStateChanges(customs, list);\n return setList(newList, this.sortable, store);\n }\n\n onStart(): void {\n store.dragging = this;\n }\n\n onEnd(): void {\n store.dragging = null;\n }\n\n onChoose(evt: SortableEvent): void {\n const { list, setList } = this.props;\n const newList = list.map((item, index) => {\n let newItem = item;\n if (index === evt.oldIndex) {\n newItem = Object.assign(item, {\n chosen: true,\n });\n }\n return newItem;\n });\n setList(newList, this.sortable, store);\n }\n\n onUnchoose(evt: SortableEvent): void {\n const { list, setList } = this.props;\n const newList = list.map((item, index) => {\n let newItem = item;\n if (index === evt.oldIndex) {\n newItem = Object.assign(newItem, {\n chosen: false,\n });\n }\n return newItem;\n });\n setList(newList, this.sortable, store);\n }\n\n onSpill(evt: SortableEvent): void {\n const { removeOnSpill, revertOnSpill } = this.props;\n if (removeOnSpill && !revertOnSpill) removeNode(evt.item);\n }\n\n onSelect(evt: MultiDragEvent): void {\n const { list, setList } = this.props;\n const newList = list.map((item) =>\n Object.assign(item, {\n selected: false,\n })\n );\n\n evt.newIndicies.forEach((curr) => {\n const index = curr.index;\n if (index === -1) {\n console.log(\n `\"${evt.type}\" had indice of \"${curr.index}\", which is probably -1 and doesn't usually happen here.`\n );\n console.log(evt);\n return;\n }\n newList[index].selected = true;\n });\n setList(newList, this.sortable, store);\n }\n\n onDeselect(evt: MultiDragEvent): void {\n const { list, setList } = this.props;\n const newList = list.map((item) =>\n Object.assign(item, {\n selected: false,\n })\n );\n evt.newIndicies.forEach((curr) => {\n const index = curr.index;\n if (index === -1) return;\n newList[index].selected = true;\n });\n setList(newList, this.sortable, store);\n }\n}\n\n// everything below this point can be removed\n// once @types has been merged. PR submited\ninterface MultiIndices {\n multiDragElement: HTMLElement;\n index: number;\n}\n\nexport interface MultiDragEvent extends SortableEvent {\n // @todo - add this to @types\n clones: HTMLElement[];\n oldIndicies: MultiIndices[];\n newIndicies: MultiIndices[];\n swapItem: HTMLElement | null;\n}\n","import { PropsWithChildren } from \"react\";\nimport Sortable, { Options } from \"sortablejs\";\nimport { MultiDragEvent } from \"./react-sortable\";\nimport { AllMethodNames, ItemInterface, ReactSortableProps } from \"./types\";\n\n/**\n * Removes the `node` from the DOM\n * @param node\n */\nexport function removeNode(node: HTMLElement): void {\n if (node.parentElement !== null) node.parentElement.removeChild(node);\n}\n\n/**\n * Inserts the `newChild` node at the given index in a parent\n * @param parent The parent HTML Element.\n * @param newChild A HTML eement to add as a child of the parent.\n * @param index index of the parent to place the new child in.\n */\nexport function insertNodeAt(\n parent: HTMLElement,\n newChild: HTMLElement,\n index: number\n): void {\n const refChild = parent.children[index] || null;\n parent.insertBefore(newChild, refChild);\n}\n\n// @todo - create a dom handler function for arrays or not at all\n\n/** removes stuff from the dom in a nice order */\n// @todo - do I need parenElement?\nexport function handleDOMChanges<T extends ItemInterface>(\n customs: Normalized<T>[]\n): void {\n removeNodes(customs);\n insertNodes(customs);\n}\n\nexport function removeNodes<T extends ItemInterface>(\n customs: Normalized<T>[]\n): void {\n customs.forEach((curr) => removeNode(curr.element));\n}\n\nexport function insertNodes<T extends ItemInterface>(\n customs: Normalized<T>[]\n): void {\n customs.forEach((curr) => {\n insertNodeAt(curr.parentElement, curr.element, curr.oldIndex);\n });\n}\n\nexport function createCustoms<T extends ItemInterface>(\n evt: MultiDragEvent,\n list: T[]\n): Normalized<T>[] {\n const mode = getMode(evt);\n const parentElement = { parentElement: evt.from };\n let custom = [];\n switch (mode) {\n case \"normal\":\n /* eslint-disable */\n const item = {\n element: evt.item,\n newIndex: evt.newIndex!,\n oldIndex: evt.oldIndex!,\n parentElement: evt.from,\n };\n custom = [item];\n break;\n case \"swap\":\n const drag: Input = {\n element: evt.item,\n oldIndex: evt.oldIndex!,\n newIndex: evt.newIndex!,\n ...parentElement,\n };\n const swap: Input = {\n element: evt.swapItem!,\n oldIndex: evt.newIndex!,\n newIndex: evt.oldIndex!,\n ...parentElement,\n };\n custom = [drag, swap];\n break;\n case \"multidrag\":\n custom = evt.oldIndicies.map<Input>((curr, index) => ({\n element: curr.multiDragElement,\n oldIndex: curr.index,\n newIndex: evt.newIndicies[index].index,\n ...parentElement,\n }));\n break;\n }\n /* eslint-enable */\n\n const customs = createNormalized(custom, list);\n return customs;\n}\n\n/** moves items form old index to new index without breaking anything ideally. */\nexport function handleStateChanges<T extends ItemInterface>(\n normalized: Normalized<T>[],\n list: T[]\n): T[] {\n const a = handleStateRemove(normalized, list);\n const b = handleStateAdd(normalized, a);\n return b;\n}\n\nexport function handleStateRemove<T extends ItemInterface>(\n normalized: Normalized<T>[],\n list: T[]\n): T[] {\n const newList = [...list];\n normalized\n .concat()\n .reverse()\n .forEach((curr) => newList.splice(curr.oldIndex, 1));\n return newList;\n}\n\nexport function handleStateAdd<T extends ItemInterface>(\n normalized: Normalized<T>[],\n list: T[],\n evt?: Sortable.SortableEvent,\n clone?: ((currentItem: T, evt: Sortable.SortableEvent) => T) | undefined\n): T[] {\n const newList = [...list];\n normalized.forEach((curr) => {\n const newItem = clone && evt && clone(curr.item, evt);\n newList.splice(curr.newIndex, 0, newItem || curr.item);\n });\n return newList;\n}\n\nexport function getMode(evt: MultiDragEvent): \"multidrag\" | \"swap\" | \"normal\" {\n if (evt.oldIndicies && evt.oldIndicies.length > 0) return \"multidrag\";\n if (evt.swapItem) return \"swap\";\n return \"normal\";\n}\n\nexport function createNormalized<T extends ItemInterface>(\n inputs: Input[],\n list: T[]\n): Normalized<T>[] {\n const normalized = inputs\n .map<Normalized<T>>((curr) => ({ ...curr, item: list[curr.oldIndex] }))\n .sort((a, b) => a.oldIndex - b.oldIndex);\n return normalized;\n}\n\nexport interface Input {\n parentElement: HTMLElement;\n element: HTMLElement;\n oldIndex: number;\n newIndex: number;\n}\n\nexport interface Normalized<T> extends Input {\n item: T;\n}\n\n/**\n * Removes the following group of properties from `props`,\n * leaving only `Sortable.Options` without any `on` methods.\n * @param props `ReactSortable.Props`\n */\nexport function destructurePropsForOptions<T>(\n props: PropsWithChildren<ReactSortableProps<T>>\n): Exclude<Options, AllMethodNames> {\n /* eslint-disable */\n const {\n // react sortable props\n list,\n setList,\n children,\n tag,\n style,\n className,\n clone,\n // sortable options that have methods we want to overwrite\n onAdd,\n onChange,\n onChoose,\n onClone,\n onEnd,\n onFilter,\n onRemove,\n onSort,\n onStart,\n onUnchoose,\n onUpdate,\n onMove,\n onSpill,\n onSelect,\n onDeselect,\n ...options\n } = props;\n /* eslint-enable */\n return options;\n}\n\n/**\n * Construct a type with the properties of T except for those in type K.\n * Including this allows for backwards compatibility with earlier versions of TS.\n */\nexport type Omit<T, K extends keyof T> = Pick<T, Exclude<keyof T, K>>;\n","import {\n CSSProperties,\n ForwardRefExoticComponent,\n ReactHTML,\n ReactNode,\n RefAttributes,\n} from \"react\";\nimport Sortable, { MoveEvent, Options, SortableEvent } from \"sortablejs\";\nimport { ReactSortable } from \"./react-sortable\";\nimport { Omit } from \"./util\";\n\n// @todo: remove dynamic types and create declarative types instead for readability of user.\n// add these in docs as well\nexport interface ItemInterface {\n /** The unique id associated with your item. It's recommended this is the same as the key prop for your list item. */\n id: string | number;\n /** When true, the item is selected using MultiDrag */\n selected?: boolean;\n /** When true, the item is deemed \"chosen\", which basically just a mousedown event. */\n chosen?: boolean;\n /** When true, it will not be possible to pick this item up in the list. */\n filtered?: boolean;\n /* eslint-disable-next-line */\n [property: string]: any;\n}\n\nexport interface ReactSortableProps<T>\n extends ReactSortableOptions,\n Omit<Options, AllMethodNames> {\n /**\n * The list of items to use.\n */\n list: T[];\n /**\n * Sets the state for your list of items.\n */\n setList: (newState: T[], sortable: Sortable | null, store: Store) => void;\n /**\n * If parsing in a component WITHOUT a ref, an error will be thrown.\n *\n * To fix this, use the `forwardRef` component.\n *\n * @example\n * forwardRef<HTMLElement, YOURPROPS>((props, ref) => <button {...props} ref={ref} />)\n */\n /* eslint-disable-next-line */\n tag?: ForwardRefExoticComponent<RefAttributes<any>> | keyof ReactHTML;\n /**\n * If this is provided, the function will replace the clone in place.\n *\n * When an is moved from `A` to `B` with `pull: 'clone'`,\n * the original element will be moved to `B`\n * and the new clone will be placed in `A`\n */\n clone?: (currentItem: T, evt: SortableEvent) => T;\n\n // other classic DOM attributes.\n style?: CSSProperties;\n className?: string;\n id?: string;\n children?: ReactNode;\n}\n\n/**\n * Holds the react component as a reference so we can access it's store.\n *\n * Mainly used to access `props.list` within another components.\n */\nexport interface Store {\n /* eslint-disable-next-line */\n dragging: null | ReactSortable<any>;\n}\n\n//\n// TYPES FOR METHODS\n//\n\n/**\n * Change the `on[...]` methods in Sortable.Options,\n * so that they all have an extra arg that is `store: Store`\n */\nexport type ReactSortableOptions = Partial<\n Record<\n AllMethodsExceptMove,\n (evt: SortableEvent, sortable: Sortable | null, store: Store) => void\n >\n> & {\n /**\n * The default sortable behaviour has been changed.\n *\n * If the return value is void, then the defaults will kick in.\n * it saves the user trying to figure it out.\n * and they can just use onmove as a callback value\n */\n onMove?: (\n evt: MoveEvent,\n originalEvent: Event,\n sortable: Sortable | null,\n store: Store\n ) => boolean | -1 | 1 | void;\n};\n\n// STRINGS\n\n/** All method names starting with `on` in `Sortable.Options` */\nexport type AllMethodNames =\n | \"onAdd\"\n | \"onChange\"\n | \"onChoose\"\n | \"onClone\"\n | \"onEnd\"\n | \"onFilter\"\n | \"onMove\"\n | \"onRemove\"\n | \"onSort\"\n | \"onSpill\"\n | \"onStart\"\n | \"onUnchoose\"\n | \"onUpdate\"\n | \"onSelect\"\n | \"onDeselect\";\n\n/** Method names that fire in `this`, when this is react-sortable */\nexport type HandledMethodNames =\n | \"onAdd\"\n | \"onRemove\"\n | \"onUpdate\"\n | \"onStart\"\n | \"onEnd\"\n | \"onSpill\"\n | \"onSelect\"\n | \"onDeselect\"\n | \"onChoose\"\n | \"onUnchoose\";\n\nexport type UnHandledMethodNames = Exclude<\n AllMethodsExceptMove,\n HandledMethodNames | \"onMove\"\n>;\n\n/**\n * Same as `SortableMethodKeys` type but with out the string `onMove`.\n */\nexport type AllMethodsExceptMove = Exclude<AllMethodNames, \"onMove\">;\n"],"names":[],"version":3,"file":"index.js.map"}
\No newline at end of file