---
title: "Discussion on \"OmniStudio : The Power of extending OmniscriptTypeahead\" | Hashnode"
description: "Discussion on \"OmniStudio : The Power of extending OmniscriptTypeahead\". Optimize OmniStudio with extended OmniscriptTypeahead combobox, featuring autocomplete, multi-select, time-saving, and UI consistency"
url: "https://hashnode.com/posts/omnistudio-the-power-of-extending-omniscripttypeahead/65182dcf6848f24685e25d36"
---

[Feed](https://hashnode.com/feed) /

Discussion

# [OmniStudio : The Power of extending OmniscriptTypeahead](https://connectsalesforce.hashnode.dev/omnistudio-the-power-of-extending-omniscripttypeahead?utm_source=hashnode&utm_medium=feed)

Optimize OmniStudio with extended OmniscriptTypeahead combobox, featuring autocomplete, multi-select, time-saving, and UI consistency

Sep 30, 2023 · 4 min read · connectsalesforce.hashnode.dev  
Read the article

-   [#omnistudio](https://hashnode.com/tag/omnistudio)
-   [#extend-omnistudio](https://hashnode.com/tag/extend-omnistudio)
-   [#extend-omniscipttypeahead](https://hashnode.com/tag/extend-omniscipttypeahead)

## Written by

[Nagendra Singh](https://hashnode.com/@nagendra1401)

@nagendra1401 · Pune, India

  
[View profile](https://hashnode.com/@nagendra1401)

Senior Technical Architect at Salesforce

Allow me to introduce myself, the Salesforce Technical Architect who's got more game than a seasoned poker player! With a decade of experience under my belt, I've been designing tailor-made solutions that drive business growth like a rocket launching into space. 🚀 When it comes to programming languages like JavaScript and Python, I wield them like a skilled chef with a set of knives, slicing and dicing my way to seamless integrations and robust applications. 🍽️ As a fervent advocate for automation, I've whipped up efficient DevOps pipelines with Jenkins, and even crafted a deployment app using AngularJS that's as sleek as a luxury sports car. 🏎️ Not one to rest on my laurels, I keep my finger on the pulse of industry trends, share my wisdom on technical blogs, and actively participate in the Salesforce Stackexchange community. In fact, this year I've climbed my way to the top 3% of the rankings! 🧗‍♂️ So, here's to me – your humor-loving, ultra-professional Salesforce Technical Architect! 🥳

## Responses 1

Markdown supported · ⌘↵ to post

[Tayfun Esmer](https://hashnode.com/@tayfunesmer)

[Oct 4, 2024](https://hashnode.com/posts/omnistudio-the-power-of-extending-omniscripttypeahead/65182dcf6848f24685e25d36/comment/66fffad2f3216191b2930f65)

Hey Nagendra,

Thanks for this great post! It is extremely useful and I already implemented it in some parts of my project. I am experiencing a problem though which I'm hoping you can guide me to the right direction. When I extend the Typeahead Block in a repeated node (EditBlock and Repeated Group) and update the JSON, the other repeated nodes in the array are being removed. I'm assuming this is because the name of the node I'm updating through dispatchOmniEvent are duplicated in the array. Any idea how should I proceed in this case? Thank you!

[Nagendra Singh](https://hashnode.com/@nagendra1401)

[Oct 5, 2024](https://hashnode.com/posts/omnistudio-the-power-of-extending-omniscripttypeahead/65182dcf6848f24685e25d36/comment/66fffad2f3216191b2930f65#reply-6700ab1cd6d34656eb458abe)

Yes the node name should be unique or else it will override the previous value. I will see if I can extends this blog or a new blob to resolve that issue as well. But the high level idea is to identify / generate the unique value in the repeated blocks and dynamically append that to the node key being created in dispatchOmniEvent.

[Tayfun Esmer](https://hashnode.com/@tayfunesmer)

[Oct 8, 2024](https://hashnode.com/posts/omnistudio-the-power-of-extending-omniscripttypeahead/65182dcf6848f24685e25d36/comment/66fffad2f3216191b2930f65#reply-6705556141f3e0b2c5eb303a)

Thanks for the response Nagendra, much appreciated! Since the node names are generated automatically and as duplicates, I ended up extending from OmniscriptBaseMixin(OmniscriptTypeAhead) and matching the items though their values to be updated with omniApplyCallResp.
