(function (global, factory) {
    typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('@angular/core'), require('@angular/common')) :
    typeof define === 'function' && define.amd ? define('@logo-software/theme', ['exports', '@angular/core', '@angular/common'], factory) :
    (global = typeof globalThis !== 'undefined' ? globalThis : global || self, factory((global['logo-software'] = global['logo-software'] || {}, global['logo-software'].theme = {}), global.ng.core, global.ng.common));
}(this, (function (exports, core, common) { 'use strict';

    /*
     * @license
     * Copyright LOGO YAZILIM SANAYİ VE TİCARET A.Ş. All Rights Reserved.
     *
     * Save to the extent permitted by law, you may not use, copy, modify,
     * distribute or create derivative works of this material or any part
     * of it without the prior written consent of LOGO YAZILIM SANAYİ VE TİCARET A.Ş. Limited.
     * Any reproduction of this material must contain this notice.
     */
    var ThemeComponent = /** @class */ (function () {
        function ThemeComponent() {
            this.statuses = ['brand', 'primary', 'secondary', 'success', 'info', 'warning', 'danger', 'light', 'dark', 'gray'];
            this.states = ['hover', 'active', 'focus'];
            this.types = ['fill', 'outline', 'ghost'];
            this.shades = [50, 100, 200, 300, 400, 500, 600, 700, 800, 900];
            this.sizes = ['large', 'medium', 'small'];
        }
        return ThemeComponent;
    }());
    ThemeComponent.decorators = [
        { type: core.Component, args: [{
                    selector: 'logo-theme',
                    template: "",
                    styles: [""]
                },] }
    ];

    /*
     * @license
     * Copyright LOGO YAZILIM SANAYİ VE TİCARET A.Ş. All Rights Reserved.
     *
     * Save to the extent permitted by law, you may not use, copy, modify,
     * distribute or create derivative works of this material or any part
     * of it without the prior written consent of LOGO YAZILIM SANAYİ VE TİCARET A.Ş. Limited.
     * Any reproduction of this material must contain this notice.
     */
    /**
     * Theme module customize UI of the elements with Logo Element Design standard. It also support bootstrap, .Net, Angular and ReactNative based projects.
     *
     * @stacked-example(Theme Showcase, logo/theme-sample/theme-showcase/theme-showcase.component)
     *
     * ### Installation
     *
     * All public npm packages of Logo Software is at [https://www.npmjs.com/~logofe](https://www.npmjs.com/~logofe). To
     * install Theme Module:
     *
     * ```bash
     * $ npm set registry https://registry.npmjs.org/
     * $ npm install @logo-software/theme -s
     * ```
     *
     * __Usage Example__
     *
     * 1. Create `_config.scss` file, if you change some settings then just import `scss` to your project main `style.scss`
     *
     * <sub>_config.scss</sub>
     *
     * ```scss
     * $config: (
     *  grid:(status: true),
     *  bootstrap:(status: false),
     *  extend-colors: true,
     *  customize: (status: true),
     *  debug: true
     * );
     * ```
     *
     * 2. Add `_config.scss` to your __main__ `style.scss`
     *
     * <sub>style.scss</style>
     *
     * ```scss
     * @import "/src/config";
     * @import "~@logo-software/theme/style";
     * ```
     *
     * 3. And additionally if you use theme in a any component just add base `scss` file. It contains basic property not all things (all things before already added to style.scss).
     *
     * <sub>any.component.scss</sub>\
     *
     * ```scss
     * // if you customize the config add first `config.scss` file
     * @import "/src/config";
     * @import "~@logo-software/theme/base";
     * :host{
     *   // component custom css goes here
     * }
     * ```
     *
     * 4. And use in component's html
     *
     * <sub>app.component.html</sub>
     *
     * ```html
     * <div>
     *   Three type form size exist `large | medium | small`:<br/>
     *   <input class="large"/> <input class="medium"/> <input class="small"/>
     * </div>
     * <div>
     *   Three type form display exist `fill | outline | ghost`:<br/>
     *   <input class="fill"/> <input class="outline"/> <input class="ghost"/>
     * </div>
     * ```
     */
    var ThemeModule = /** @class */ (function () {
        function ThemeModule() {
        }
        return ThemeModule;
    }());
    ThemeModule.decorators = [
        { type: core.NgModule, args: [{
                    imports: [common.CommonModule],
                    declarations: [ThemeComponent],
                    exports: [ThemeComponent],
                },] }
    ];

    /**
     * @license
     * Copyright LOGO YAZILIM SANAYİ VE TİCARET A.Ş. All Rights Reserved.
     *
     * Save to the extent permitted by law, you may not use, copy, modify,
     * distribute or create derivative works of this material or any part
     * of it without the prior written consent of LOGO YAZILIM SANAYİ VE TİCARET A.Ş. Limited.
     * Any reproduction of this material must contain this notice.
     */
    // IMPORTANT: THIS TS FILE IS AUTO GENERATED! DO NOT MANUALLY EDIT OR CHECKIN!
    var THEME = {
        statuses: ['brand', 'primary', 'secondary', 'success', 'info', 'warning', 'danger', 'light', 'dark', 'gray'],
        states: ['hover', 'active', 'focus'],
        types: ['fill', 'outline', 'ghost'],
        sizes: ['large', 'medium', 'small'],
        shades: [100, 200, 300, 400, 500, 600, 700, 800, 900, 1000],
    };

    /*
     * Public API Surface of theme
     */

    /**
     * Generated bundle index. Do not edit.
     */

    exports.THEME = THEME;
    exports.ThemeComponent = ThemeComponent;
    exports.ThemeModule = ThemeModule;

    Object.defineProperty(exports, '__esModule', { value: true });

})));
//# sourceMappingURL=logo-software-theme.umd.js.map
