<commit_before>import Ember from 'ember';

/**
 * @module components
 * @class  sl-tab-panel
 */
export default Ember.Component.extend({

    // -------------------------------------------------------------------------
    // Dependencies

    // -------------------------------------------------------------------------
    // Attributes

    /**
     * Class names for the root element
     *
     * @property {Ember.Array} classNames
     */
    classNames: [ 'sl-tab-panel' ],

    /**
     * Class name bindings for the containing element
     *
     * @property {Ember.Array} classNameBindings
     */
    classNameBindings: [ 'tabAlignmentClass' ],

    // -------------------------------------------------------------------------
    // Actions

    /**
     * Object of action functions
     *
     * @property {Ember.Object} actions
     */
    actions: {

        /**
         * Action to trigger when a tab is clicked
         *
         * @function actions.change
         * @param    {string} tabName - The name of the tab to change into
         * @returns  {void}
         */
        change: function( tabName ) {
            var activeTabName = this.get( 'activeTabName' ),
                self          = this;

            if ( activeTabName ) {
                if ( activeTabName !== tabName ) {
                    this.setActiveTab( tabName );
                    this.deactivatePane( activeTabName, function() {
                        self.activatePane( tabName );
                    });
                }
            } else {
                this.setActiveTab( tabName );
                this.activatePane( tabName );
            }
        }
    },

    // -------------------------------------------------------------------------
    // Events

    // -------------------------------------------------------------------------
    // Properties

    /**
     * The currently active tab name
     *
     * @private
     * @property {Ember.String} activeTabName
     * @default  null
     */
    activeTabName: null,

    /**
     * Determines the alignment of tabs at the top of the panel,
     * "left" or "right"
     *
     * @property {Ember.String} alignTabs
     * @default  "left"
     */
    alignTabs: 'left',

    /**<commit_msg>Close issue #175<commit_after>import Ember from 'ember';

/**
 * @module components
 * @class  sl-tab-panel
 */
export default Ember.Component.extend({

    // -------------------------------------------------------------------------
    // Dependencies

    // -------------------------------------------------------------------------
    // Attributes

    /**
     * Class names for the root element
     *
     * @property {Ember.Array} classNames
     */
    classNames: [ 'sl-tab-panel' ],

    /**
     * Class name bindings for the containing element
     *
     * @property {Ember.Array} classNameBindings
     */
    classNameBindings: [ 'tabAlignmentClass' ],

    // -------------------------------------------------------------------------
    // Actions

    /**
     * Object of action functions
     *
     * @property {Ember.Object} actions
     */
    actions: {

        /**
         * Action to trigger when a tab is clicked
         *
         * @function actions.change
         * @param    {string} tabName - The name of the tab to change into
         * @returns  {void}
         */
        change: function( tabName ) {
            var activeTabName = this.get( 'activeTabName' ),
                self          = this;

            if ( activeTabName ) {
                if ( activeTabName !== tabName ) {
                    this.setActiveTab( tabName );
                    this.deactivatePane( activeTabName, function() {
                        self.activatePane( tabName );
                    });
                }
            }
        }
    },

    // -------------------------------------------------------------------------
    // Events

    // -------------------------------------------------------------------------
    // Properties

    /**
     * The currently active tab name
     *
     * @private
     * @property {Ember.String} activeTabName
     * @default  null
     */
    activeTabName: null,

    /**
     * Determines the alignment of tabs at the top of the panel,
     * "left" or "right"
     *
     * @property {Ember.String} alignTabs
     * @default  "left"
     */
    alignTabs: 'left',

    /**
{'fraction_non_alphanumeric': 0.2596197374377546, 'fraction_numerical': 0.000679040289723857, 'mean_word_length': 0.9398595258999122, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, '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': '1985254', 'n_tokens_mistral': 1074, 'n_tokens_neox': 1019, 'n_words': 257}