buli
2022-05-13 08a21f49f2eaf9cfc19ceb67b196cc36ba689305
force-app/main/default/staticresources/jquerysuggestjs.js
@@ -1,13 +1,13 @@
    // resetの場合true
    // NamaとId ともに変更しない場合true
    // 新しい値設定した場合false
// reset銇牬鍚坱rue
    // Nama銇↖d 銇ㄣ倐銇鏇淬仐銇亜鍫村悎true
    // 鏂般仐銇勫€よō瀹氥仐銇熷牬鍚坒alse
    function resetValue(htmlId){
        v = j$(escapeVfId(htmlId)).value();
        vb = j$(escapeVfId(htmlId + 'Hidden')).value();
        vid = j$(escapeVfId(htmlId + 'Id')).value();
        vidb = j$(escapeVfId(htmlId + 'HiddenId')).value();
        // NamaとId ともに変更しない場合
        // Nama銇↖d 銇ㄣ倐銇鏇淬仐銇亜鍫村悎
        if(v == vb){
            if(vid == vidb){
                return true;
@@ -19,26 +19,26 @@
            j$(escapeVfId(htmlId + 'HiddenId')).val('');
            return false;
        }
        // Id全部空っぽ(つまりsuggestからIdを設定できていない)
        // Id鍏ㄩ儴绌恒仯銇�(銇ゃ伨銈妔uggest銇嬨倝Id銈掕ō瀹氥仹銇嶃仸銇勩仾銇�)
        if(vid == '' && vidb == '') {
            j$(escapeVfId(htmlId)).val('');
            j$(escapeVfId(htmlId + 'Hidden')).val('');
            return false;
        }
        // Name全部空っぽ(ありえない)
        // Name鍏ㄩ儴绌恒仯銇�(銇傘倞銇堛仾銇�)
        if(v == '' && vb == '') {
            j$(escapeVfId(htmlId + 'Id')).val('');
            j$(escapeVfId(htmlId + 'HiddenId')).val('');
            return false;
        }
        // Id一致Name変更(reset)
        // Id涓€鑷碞ame澶夋洿锛坮eset锛�
        if(vid == vidb){
            if(v != vb){
                j$(escapeVfId(htmlId)).val(vb);
                return true;
            }
        }
        // Name一致Id変更(suggest選択)
        // Name涓€鑷碔d澶夋洿锛坰uggest閬告姙锛�
        if(v == vb){
            if(vid != vidb){
                j$(escapeVfId(htmlId + 'Hidden')).val(v);
@@ -46,7 +46,7 @@
                return false;
            }
        }
        // Id と Name ともに違う場合
        // Id 銇� Name 銇ㄣ倐銇仌銇嗗牬鍚�
        j$(escapeVfId(htmlId + 'Hidden')).val(v);
        j$(escapeVfId(htmlId + 'HiddenId')).val(vid);
        return false;
@@ -54,23 +54,23 @@
    /*
     *  jquery.suggest 1.1 - 2007-08-06
     *
     *
     *  Uses code and techniques from following libraries:
     *  1. http://www.dyve.net/jquery/?autocomplete
     *  2. http://dev.jquery.com/browser/trunk/plugins/interface/iautocompleter.js
     *  2. http://dev.jquery.com/browser/trunk/plugins/interface/iautocompleter.js
     *
     *  All the new stuff written by Peter Vulgaris (www.vulgarisoip.com)
     *  All the new stuff written by Peter Vulgaris (www.vulgarisoip.com)
     *  Feel free to do whatever you want with this file
     *
     */
    (function($) {
        $.suggest = function(input, options) {
            var $input = $(input).attr("autocomplete", "off");
            var $results = $(document.createElement("ul"));
            var timeout = false;        // hold timeout ID for suggestion results to appear
            var timeout = false;        // hold timeout ID for suggestion results to appear
            var prevLength = 0;         // last recorded length of $input.value()
            var cache = [];             // cache MRU list
            var beforerequest = null;
@@ -128,8 +128,6 @@
                $input.keypress(processKey);    // onkeypress repeats arrow keys in Mozilla/Opera
            else
                $input.keydown(processKey);     // onkeydown repeats arrow keys in IE/Safari
            function resetPosition() {
@@ -140,15 +138,15 @@
                    left: offset.left + 'px'
                });
            }
            function processKey(e) {
                // handling up/down/escape requires results to be visible
                // handling enter/tab requires that AND a result to be selected
                if ((/27$|38$|40$/.test(e.keyCode) && $results.is(':visible')) ||
                    (/^13$|^9$/.test(e.keyCode) && getCurrentResult())) {
                    if (e.preventDefault)
                        e.preventDefault();
                    if (e.stopPropagation)
@@ -156,46 +154,46 @@
                    e.cancelBubble = true;
                    e.returnValue = false;
                    switch(e.keyCode) {
                        case 38: // up
                            prevResult();
                            break;
                        case 40: // down
                            nextResult();
                            break;
                        case 9:  // tab
                        case 13: // return
                            selectCurrentResult();
                            break;
                        case 27: // escape
                            $results.hide();
                            $input.removeAttr("jquerysuggest");
                            break;
                    }
                } else if ($input.value().length != prevLength) {
                    if (e.keyCode == 9) {
                        return;
                    }
                    if (timeout)
                    if (timeout)
                        clearTimeout(timeout);
                    timeout = setTimeout(suggest, options.delay);
                    prevLength = $input.value().length;
                }
                }
            }
            function suggest() {
                var q = $.trim($input.value());
                var qwords = [];
                if (options.minwords > 0 && q.length > 0) {
@@ -208,13 +206,13 @@
                }
                if (qwords.length >= options.minwords || q.length >= options.minchars) {
//                  cached = checkCache(q);
//                  if (cached) {
//                      displayItems(cached['items']);
//                  } else {
                        if (beforerequest != null) {
                            beforerequest.abort();
@@ -223,24 +221,24 @@
                            $results.hide();
                            $input.removeAttr("jquerysuggest");
                            var items = parseTxt(txt, q);
                            displayItems(items);
//                          addToCache(q, items, txt.length);
                        });
//                  }
                } else {
                    $results.hide();
                    $input.removeAttr("jquerysuggest");
                }
            }
            function checkCache(q) {
                for (var i = 0; i < cache.length; i++)
@@ -248,38 +246,38 @@
                        cache.unshift(cache.splice(i, 1)[0]);
                        return cache[0];
                    }
                return false;
            }
            function addToCache(q, items, size) {
                while (cache.length && (cacheSize + size > options.maxCacheSize)) {
                    var cached = cache.pop();
                    cacheSize -= cached['size'];
                }
                cache.push({
                    q: q,
                    size: size,
                    items: items
                    });
                cacheSize += size;
            }
            function displayItems(items) {
                if (!items)
                    return;
                if (!items.length) {
                    $results.hide();
                    $input.removeAttr("jquerysuggest");
                    return;
                }
                var html = '';
                for (var i = 0; i < items.length; i++)
                    html += '<li>' + items[i] + '</li>';
@@ -294,50 +292,50 @@
                        $(this).addClass(options.selectClass);
                    })
                    .click(function(e) {
                        e.preventDefault();
                        e.preventDefault();
                        e.stopPropagation();
                        selectCurrentResult();
                    });
            }
            function parseTxt(txt, q) {
                var items = [];
                var tokens = txt.split(options.delimiter);
                // parse returned data for non-empty items
                for (var i = 0; i < tokens.length; i++) {
                    var token = $.trim(tokens[i]);
                    if (token) {
                        token = token.replace(
                            new RegExp(q, 'ig'),
                            new RegExp(q, 'ig'),
                            function(q) { return '<span class="' + options.matchClass + '">' + q + '</span>' }
                            );
                        items[items.length] = token;
                    }
                }
                return items;
            }
            function getCurrentResult() {
                if (!$results.is(':visible'))
                    return false;
                var $currentResult = $results.children('li.' + options.selectClass);
                if (!$currentResult.length)
                    $currentResult = false;
                return $currentResult;
            }
            function selectCurrentResult() {
                $currentResult = getCurrentResult();
                if ($currentResult) {
                    var $name = $currentResult.children("span.result_name");
                    var $id = $currentResult.children("span.result_id");
@@ -347,26 +345,26 @@
                    var idId = $input.attr("id");
                    idId = escapeVfId(idId + "Id");
                    $(idId).val($id.text());
                    idId = $input.attr("id");
                    // onchangeとonblurは1つしか実装しないと想定、両方呼び出す
                    // entryキー対応のため、直接 onchangeとonblurを呼び出す必要です。
                    // onchange銇╫nblur銇紤銇ゃ仐銇嬪疅瑁呫仐銇亜銇ㄦ兂瀹氥€佷浮鏂瑰懠銇冲嚭銇�
                    // entry銈兗瀵惧繙銇仧銈併€佺洿鎺� onchange銇╫nblur銈掑懠銇冲嚭銇欏繀瑕併仹銇欍€�
                    $input.change();
                    $input.blur();
                  }
/*------------------------------------------------*/
                    $results.hide();
                    $input.removeAttr("jquerysuggest");
                    if (options.onSelect)
                        options.onSelect.apply($input[0]);
                }
            }
            function nextResult() {
                $currentResult = getCurrentResult();
                if ($currentResult)
                    $currentResult
@@ -375,13 +373,13 @@
                        .addClass(options.selectClass);
                else
                    $results.children('li:first-child').addClass(options.selectClass);
            }
            function prevResult() {
                $currentResult = getCurrentResult();
                if ($currentResult)
                    $currentResult
                        .removeClass(options.selectClass)
@@ -389,16 +387,16 @@
                            .addClass(options.selectClass);
                else
                    $results.children('li:last-child').addClass(options.selectClass);
            }
        }
        $.fn.suggest = function(source, options) {
            if (!source)
                return;
            options = options || {};
            options.source = source;
            options.delay = options.delay || 100;
@@ -410,14 +408,13 @@
            options.delimiter = options.delimiter || '\n';
            options.onSelect = options.onSelect || false;
            options.maxCacheSize = options.maxCacheSize || 65536;
            this.each(function() {
                new $.suggest(this, options);
            });
            return this;
        };
    })(jQuery);
    })(jQuery);