1.2.0 • Published 3 years ago

dit-vue-components v1.2.0

Weekly downloads
54
License
-
Repository
-
Last release
3 years ago

DIT Vue-components

​ Inside this package you find out a set of DIT customize vue components. ​

Install

//npm
npm i dit-vue-components --save
​
//yarn
yarn add dit-vue-components

Import

After installation, you can import the CSS file into your project using this snippet:

@import "~dit-vue-components/dist/css/app.css";

or if you want custom styles, import scss files

@import "~foundation-sites/scss/foundation.scss";
@import "~dit-vue-components/styles/variables.scss";
@import "~dit-vue-components/styles/app.scss";

Availables vars

@use 'sass:color';

// Body
$body-bg: #f9fafc;

// Typography
$font-family-sans-serif: 'Nunito', sans-serif;
$font-size-base: 0.9rem;
$font-size-items-sidebar: 0.7em;
$line-height-base: 1.6;

// Colors
$blue: #337ab7;
$dark-blue: #163575;
$indigo: #6574cd;
$purple: #9561e2;
$pink: #f66d9b;
$red: #e3342f;
$orange: #f6993f;
$yellow: #ffed4a;
$green: #38c172;
$teal: #4dc0b5;
$cyan: #6cb2eb;
$box-shadow: #dddddd;
$color-titles: #777777;
$text-color: #9A9A9A;
$light-gray: #b6b6b6;
$light-gray-30: rgba(102, 97, 91, 0.3);
$active: #68B3C8;
$navbar-border-color: #e4e4e4;
$card-border-color: #e4e4e4;
$color-card-shadow: rgba(204, 197, 185, 0.5);

$medium-gray: #cacaca;
$input-prefix-background: $white;
$input-prefix-border: 1px solid $medium-gray;;
$input-prefix-color: $light-gray;
$input-shadow: none;
$input-shadow-focus: none;
$input-line-height: 1.6;
$input-radius: 0.25rem;
$button-padding: 0.5rem 1rem;
$button-radius: 0.25rem;
$input-background-disabled: $box-shadow;

$button-background: $blue;
$button-background-hover: $dark-blue;

$text-color-menu-item: #66615B;
$font-size-icon-default: 25px;

// Modals
$modal-background: $white;
$modal-radius: 5px;
$modal-header-background: $blue;
$modal-header-color: $white;
$modal-border-top: none;
$modal-border-bottom: 1px solid $light-gray;
$modal-footer-align: right;

// Calendar
$noCalendarBorder: 1;
$bezier: cubic-bezier(0.23, 1, 0.32, 1);
$slideTime: 400ms;
$daySize: 39px;
$padding: $daySize / 16;
$dayMargin: 2px;
$daysWidth: $daySize * 7 + $dayMargin * 14 + $padding * 2 + 2;
$calendarWidth: $daysWidth;
$monthNavHeight: 34px !default;
$weekdaysHeight: 28px !default;
$timeHeight: 40px;
$calendarBackground: #ffffff !default;
$calendarBorderColor: #e6e6e6 !default;
$monthForeground: $white !default;
$arrowHoverColor: #c4c4c4 !default;
$monthBackground: $dark-blue !default;
$weekdaysBackground: $dark-blue !default;
$weekdaysForeground: $white !default;
$dayForeground: $text-color !default;
$dayHoverColor: $white;
$dayHoverBackground: color.adjust($dark-blue, $alpha: -0.3) !default;
$todayColor: #bbb !default;
$selectedDayBackground: $dark-blue !default;
$selectedDayForeground: $white !default;
$invertedBg: color.adjust(black, $alpha: -0.9);

// Loaders
$color-pie-separators: $white;
$background-table-loader: #eee;
$background-bar-loader: #eee;

Components availables

Bar Loader

Register component local

<template>
    <BarLoader :bars="10" />
</template>
<script>
import {BarLoader} from 'dit-vue-components';
export default {
    name: 'ComponentName',
    components: {
        BarLoader
    }
}
</script>
<style lang="scss">
@import "~dit-vue-components/styles/components/bar_loader.scss";
</style>

Register component global

# main.js
import {BarLoader} from 'dit-vue-components';
Vue.component('bar-loader', BarLoader);

Pie Loader

Register component local

<template>
    <PieLoader />
</template>
<script>
import {PieLoader} from 'dit-vue-components';
export default {
    name: 'ComponentName',
    components: {
        PieLoader
    }
}
</script>
<style lang="scss">
@import "~dit-vue-components/styles/components/pie_loader.scss";
</style>

Register component global

# main.js
import {PieLoader} from 'dit-vue-components';
Vue.component('pie-loader', PieLoader);

Table Loader

Register component local

<template>
    <TableLoader :rows="3" :cols="4" />
</template>
<script>
import {TableLoader} from 'dit-vue-components';
export default {
    name: 'ComponentName',
    components: {
        TableLoader
    }
}
</script>
<style lang="scss">
@import "~dit-vue-components/styles/components/table_loader.scss";
</style>

Register component global

# main.js
import {TableLoader} from 'dit-vue-components';
Vue.component('table-loader', TableLoader);

Table Pagination

Register component local

<template>
    <TablePagination :params="table" v-on:page-selected="search">
        <template v-slot:head>
            <th>Num</th>
            <th>Num</th>
        </template>
        <tr v-for="(row, index) in table.data" :key="index">
            <td>{{row}}</td>
            <td>{{row}}</td>
        </tr>
    </TablePagination>
</template>
<script>
import {TablePagination} from 'dit-vue-components';
export default {
    name: 'ComponentName',
    components: {
        TablePagination
    },
    data() {
        return {
            table // Laravel paginate response is good,
        }
    },
    methods: {
        search(page = 1) {
            // This method is executed when page is selected
        },
    },
}
</script>
<style lang="scss">
@import "~dit-vue-components/styles/components/table_pagination.scss";
</style>

Register component global

# main.js
import {TablePagination} from 'dit-vue-components';
Vue.component('table-pagination', TablePagination);

Why dit-vue-components?

The purpose of dit-vue-components is to ease front-end construction process. Besides, with this set of components DIT wanna