UNPKG

@wordpress/block-editor

Version:
8 lines (7 loc) 1.45 kB
{ "version": 3, "sources": ["../../src/store/array.js"], "sourcesContent": ["/**\n * Insert one or multiple elements into a given position of an array.\n *\n * @param {Array} array Source array.\n * @param {*} elements Elements to insert.\n * @param {number} index Insert Position.\n *\n * @return {Array} Result.\n */\nexport function insertAt( array, elements, index ) {\n\treturn [\n\t\t...array.slice( 0, index ),\n\t\t...( Array.isArray( elements ) ? elements : [ elements ] ),\n\t\t...array.slice( index ),\n\t];\n}\n\n/**\n * Moves an element in an array.\n *\n * @param {Array} array Source array.\n * @param {number} from Source index.\n * @param {number} to Destination index.\n * @param {number} count Number of elements to move.\n *\n * @return {Array} Result.\n */\nexport function moveTo( array, from, to, count = 1 ) {\n\tconst withoutMovedElements = [ ...array ];\n\twithoutMovedElements.splice( from, count );\n\treturn insertAt(\n\t\twithoutMovedElements,\n\t\tarray.slice( from, from + count ),\n\t\tto\n\t);\n}\n"], "mappings": ";AASO,SAAS,SAAU,OAAO,UAAU,OAAQ;AAClD,SAAO;AAAA,IACN,GAAG,MAAM,MAAO,GAAG,KAAM;AAAA,IACzB,GAAK,MAAM,QAAS,QAAS,IAAI,WAAW,CAAE,QAAS;AAAA,IACvD,GAAG,MAAM,MAAO,KAAM;AAAA,EACvB;AACD;AAYO,SAAS,OAAQ,OAAO,MAAM,IAAI,QAAQ,GAAI;AACpD,QAAM,uBAAuB,CAAE,GAAG,KAAM;AACxC,uBAAqB,OAAQ,MAAM,KAAM;AACzC,SAAO;AAAA,IACN;AAAA,IACA,MAAM,MAAO,MAAM,OAAO,KAAM;AAAA,IAChC;AAAA,EACD;AACD;", "names": [] }