Add memoization in search
diff --git a/erpnext/selling/page/point_of_sale/point_of_sale.js b/erpnext/selling/page/point_of_sale/point_of_sale.js
index 236e923..a3ea04e 100644
--- a/erpnext/selling/page/point_of_sale/point_of_sale.js
+++ b/erpnext/selling/page/point_of_sale/point_of_sale.js
@@ -808,12 +808,23 @@
 	filter_items(search_term) {
 		search_term = search_term.toLowerCase();
 
+
+		// memoize
+		this.search_index = this.search_index || {};
+		if (this.search_index[search_term]) {
+			const items = this.search_index[search_term];
+			this.render_items(items);
+			return;
+		}
+
 		this.get_items({search_value: search_term})
 			.then((items) => {
+				this.search_index[search_term] = items;
+
 				this.render_items(items);
 				if(this.serial_no) {
 					this.events.update_cart(items[0].item_code,
-						'serial_no', this.serial_no)
+						'serial_no', this.serial_no);
 				}
 			});
 	}