<commit_before>(function(root, factory) {
	if (typeof define === 'function' && define.amd) {
		define([], factory);
	} else if (typeof exports === 'object') {
		module.exports = factory();
	} else {
		root.Collapsible = factory();
	}
}(this, function() {
	'use strict';

	return function($control) {
		var $region = document.getElementById($control.getAttribute('aria-controls'));

		if ($control && $region) {
			var handleClick = function(event) {
				event.preventDefault();

				toggle();
			};

			var toggle = function() {
				var value = $control.getAttribute('aria-expanded') !== 'true';

				$control.setAttribute('aria-expanded', value);

				if (value) {
					$region.removeAttribute('aria-hidden');
					$region.focus();
				} else {
					$region.setAttribute('aria-hidden', true);
				}
			};

			return {
				init: function() {
					$control.setAttribute('aria-expanded', false);
					$control.removeAttribute('aria-hidden');

					$region.setAttribute('aria-hidden', true);
					$region.setAttribute('tabindex', -1);

					$control.addEventListener('click', handleClick);

					this.toggle = toggle;
				},

				teardown: function() {
					$control.setAttribute('aria-expanded', true);
					$control.setAttribute('aria-hidden', true);

					$region.removeAttribute('aria-hidden');
					$region.removeAttribute('tabindex');

					$control.removeEventListener('click', handleClick);
				}
			};
		}
	};
}));<commit_msg>Refactor library source file<commit_after>export default function Collapsible($control) {
  const $region = document.getElementById($control.getAttribute('aria-controls'));

  if ($control && $region) {
    const handleClick = event => {
      event.preventDefault();

      handleToggle();
    };

    const handleToggle = () => {
      const value = $control.getAttribute('aria-expanded') !== 'true';

      $control.setAttribute('aria-expanded', value);

      if (value) {
        $region.removeAttribute('aria-hidden');
        $region.focus();
      } else {
        $region.setAttribute('aria-hidden', true);
      }
    };

    return {
      setup: () => {
        $control.setAttribute('aria-expanded', false);
        $control.removeAttribute('aria-hidden');

        $region.setAttribute('aria-hidden', true);
        $region.setAttribute('tabindex', -1);

        $control.addEventListener('click', handleClick);

        this.toggle = handleToggle;
      },

      teardown: () => {
        $control.setAttribute('aria-expanded', true);
        $control.setAttribute('aria-hidden', true);

        $region.removeAttribute('aria-hidden');
        $region.removeAttribute('tabindex');

        $control.removeEventListener('click', handleClick);
      }
    };
  }
}
{'fraction_non_alphanumeric': 0.17121771217712178, 'fraction_numerical': 0.0007380073800738007, 'mean_word_length': 3.170769230769231, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 7, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '2064169', 'n_tokens_mistral': 882, 'n_tokens_neox': 769, 'n_words': 131}