Project import generated by Copybara.
GitOrigin-RevId: d9e9e3fb4e31372ec1fb43b178994ca78fa8fe70
diff --git a/static/js/tracker/tracker-install-ac.js b/static/js/tracker/tracker-install-ac.js
new file mode 100644
index 0000000..2fe1dcd
--- /dev/null
+++ b/static/js/tracker/tracker-install-ac.js
@@ -0,0 +1,53 @@
+/* Copyright 2016 The Chromium Authors. All Rights Reserved.
+ *
+ * Use of this source code is governed by a BSD-style
+ * license that can be found in the LICENSE file or at
+ * https://developers.google.com/open-source/licenses/bsd
+ */
+/* eslint-disable camelcase */
+/* eslint-disable no-unused-vars */
+
+/**
+ * Sets up the legacy autocomplete editing widget on DOM elements that are
+ * set to use it.
+ */
+function TKR_install_ac() {
+ _ac_install();
+
+ _ac_register(function(input, event) {
+ if (input.id.startsWith('hotlists')) return TKR_hotlistsStore;
+ if (input.id.startsWith('search')) return TKR_searchStore;
+ if (input.id.startsWith('query_') || input.id.startsWith('predicate_')) {
+ return TKR_projectQueryStore;
+ }
+ if (input.id.startsWith('cmd')) return TKR_quickEditStore;
+ if (input.id.startsWith('labelPrefix')) return TKR_labelPrefixStore;
+ if (input.id.startsWith('label') && input.id != 'labelsInput') return TKR_labelStore;
+ if (input.dataset.acType === 'label' && input.id != 'labelsInput') return TKR_labelMultiStore;
+ if ((input.id.startsWith('component') || input.dataset.acType === 'component')
+ && input.id != 'componentsInput') return TKR_componentListStore;
+ if (input.id.startsWith('status')) return TKR_statusStore;
+ if (input.id.startsWith('member') || input.dataset.acType === 'member') return TKR_memberListStore;
+
+ if (input.id == 'admin_names_editor') return TKR_memberListStore;
+ if (input.id.startsWith('owner') && input.id != 'ownerInput') return TKR_ownerStore;
+ if (input.name == 'needs_perm' || input.name == 'grants_perm') {
+ return TKR_customPermissionsStore;
+ }
+ if (input.id == 'owner_editor' || input.dataset.acType === 'owner') return TKR_ownerStore;
+ if (input.className.indexOf('userautocomplete') != -1) {
+ const customFieldIDStr = input.name;
+ const uac = TKR_userAutocompleteStores[customFieldIDStr];
+ if (uac) return uac;
+ return TKR_ownerStore;
+ }
+ if (input.className.indexOf('autocomplete') != -1) {
+ return TKR_autoCompleteStore;
+ }
+ if (input.id.startsWith('copy_to') || input.id.startsWith('move_to') ||
+ input.id.startsWith('new_savedquery_projects') ||
+ input.id.startsWith('savedquery_projects')) {
+ return TKR_projectStore;
+ }
+ });
+};