<script>import { BEM } from "../../models/BEM";
export let col = null;
export let offset = false;
export let auto = null;
export let sm = null;
export let md = null;
export let lg = null;
export let xl = null;
export let xxl = null;
const _data = offset ? 'offset' : 'col';
const _col = col ? `${_data}-${col}` : '';
const _sm = sm ? `${_data}-sm-${sm}` : '';
const _md = md ? `${_data}-md-${md}` : '';
const _lg = lg ? `${_data}-lg-${lg}` : '';
const _xl = xl ? `${_data}-xl-${xl}` : '';
const _xxl = xxl ? `${_data}-xxl-${xxl}` : '';
const bm = new BEM('UI-Col', {
    [_col]: !!_col,
    [_sm]: !!_sm,
    [_md]: !!_md,
    [_lg]: !!_lg,
    [_xl]: !!_xl,
    [_xxl]: !!_xxl,
});
bm.append($$props.class);
</script>

<div
	class={bm.toString()}
	class:offset
	class:auto
>
	<slot/>
</div>

<style>.UI-Col {
  flex: 1 0 0%;
}

.auto {
  flex: 0 0 auto;
  width: auto;
}

.col-1 {
  flex: 0 0 calc(100% * 1 / var(--ui-columns));
}

.offset-0 {
  margin-left: calc(100% * 1 / var(--ui-columns));
}

.col-2 {
  flex: 0 0 calc(100% * 2 / var(--ui-columns));
}

.offset-1 {
  margin-left: calc(100% * 2 / var(--ui-columns));
}

.col-3 {
  flex: 0 0 calc(100% * 3 / var(--ui-columns));
}

.offset-2 {
  margin-left: calc(100% * 3 / var(--ui-columns));
}

.col-4 {
  flex: 0 0 calc(100% * 4 / var(--ui-columns));
}

.offset-3 {
  margin-left: calc(100% * 4 / var(--ui-columns));
}

.col-5 {
  flex: 0 0 calc(100% * 5 / var(--ui-columns));
}

.offset-4 {
  margin-left: calc(100% * 5 / var(--ui-columns));
}

.col-6 {
  flex: 0 0 calc(100% * 6 / var(--ui-columns));
}

.offset-5 {
  margin-left: calc(100% * 6 / var(--ui-columns));
}

.col-7 {
  flex: 0 0 calc(100% * 7 / var(--ui-columns));
}

.offset-6 {
  margin-left: calc(100% * 7 / var(--ui-columns));
}

.col-8 {
  flex: 0 0 calc(100% * 8 / var(--ui-columns));
}

.offset-7 {
  margin-left: calc(100% * 8 / var(--ui-columns));
}

.col-9 {
  flex: 0 0 calc(100% * 9 / var(--ui-columns));
}

.offset-8 {
  margin-left: calc(100% * 9 / var(--ui-columns));
}

.col-10 {
  flex: 0 0 calc(100% * 10 / var(--ui-columns));
}

.offset-9 {
  margin-left: calc(100% * 10 / var(--ui-columns));
}

.col-11 {
  flex: 0 0 calc(100% * 11 / var(--ui-columns));
}

.offset-10 {
  margin-left: calc(100% * 11 / var(--ui-columns));
}

.col-12 {
  flex: 0 0 calc(100% * 12 / var(--ui-columns));
}

.offset-11 {
  margin-left: calc(100% * 12 / var(--ui-columns));
}

@media (min-width: 576px) {
  .col-sm-auto {
    flex: 0 0 auto;
    width: auto;
  }
  .col-sm-1 {
    flex: 0 0 calc(100% * 1 / var(--ui-columns));
  }
  .offset-sm-0 {
    margin-left: calc(100% * 1 / var(--ui-columns));
  }
  .col-sm-2 {
    flex: 0 0 calc(100% * 2 / var(--ui-columns));
  }
  .offset-sm-1 {
    margin-left: calc(100% * 2 / var(--ui-columns));
  }
  .col-sm-3 {
    flex: 0 0 calc(100% * 3 / var(--ui-columns));
  }
  .offset-sm-2 {
    margin-left: calc(100% * 3 / var(--ui-columns));
  }
  .col-sm-4 {
    flex: 0 0 calc(100% * 4 / var(--ui-columns));
  }
  .offset-sm-3 {
    margin-left: calc(100% * 4 / var(--ui-columns));
  }
  .col-sm-5 {
    flex: 0 0 calc(100% * 5 / var(--ui-columns));
  }
  .offset-sm-4 {
    margin-left: calc(100% * 5 / var(--ui-columns));
  }
  .col-sm-6 {
    flex: 0 0 calc(100% * 6 / var(--ui-columns));
  }
  .offset-sm-5 {
    margin-left: calc(100% * 6 / var(--ui-columns));
  }
  .col-sm-7 {
    flex: 0 0 calc(100% * 7 / var(--ui-columns));
  }
  .offset-sm-6 {
    margin-left: calc(100% * 7 / var(--ui-columns));
  }
  .col-sm-8 {
    flex: 0 0 calc(100% * 8 / var(--ui-columns));
  }
  .offset-sm-7 {
    margin-left: calc(100% * 8 / var(--ui-columns));
  }
  .col-sm-9 {
    flex: 0 0 calc(100% * 9 / var(--ui-columns));
  }
  .offset-sm-8 {
    margin-left: calc(100% * 9 / var(--ui-columns));
  }
  .col-sm-10 {
    flex: 0 0 calc(100% * 10 / var(--ui-columns));
  }
  .offset-sm-9 {
    margin-left: calc(100% * 10 / var(--ui-columns));
  }
  .col-sm-11 {
    flex: 0 0 calc(100% * 11 / var(--ui-columns));
  }
  .offset-sm-10 {
    margin-left: calc(100% * 11 / var(--ui-columns));
  }
  .col-sm-12 {
    flex: 0 0 calc(100% * 12 / var(--ui-columns));
  }
  .offset-sm-11 {
    margin-left: calc(100% * 12 / var(--ui-columns));
  }
}
@media (min-width: 768px) {
  .col-md-auto {
    flex: 0 0 auto;
    width: auto;
  }
  .col-md-1 {
    flex: 0 0 calc(100% * 1 / var(--ui-columns));
  }
  .offset-md-0 {
    margin-left: calc(100% * 1 / var(--ui-columns));
  }
  .col-md-2 {
    flex: 0 0 calc(100% * 2 / var(--ui-columns));
  }
  .offset-md-1 {
    margin-left: calc(100% * 2 / var(--ui-columns));
  }
  .col-md-3 {
    flex: 0 0 calc(100% * 3 / var(--ui-columns));
  }
  .offset-md-2 {
    margin-left: calc(100% * 3 / var(--ui-columns));
  }
  .col-md-4 {
    flex: 0 0 calc(100% * 4 / var(--ui-columns));
  }
  .offset-md-3 {
    margin-left: calc(100% * 4 / var(--ui-columns));
  }
  .col-md-5 {
    flex: 0 0 calc(100% * 5 / var(--ui-columns));
  }
  .offset-md-4 {
    margin-left: calc(100% * 5 / var(--ui-columns));
  }
  .col-md-6 {
    flex: 0 0 calc(100% * 6 / var(--ui-columns));
  }
  .offset-md-5 {
    margin-left: calc(100% * 6 / var(--ui-columns));
  }
  .col-md-7 {
    flex: 0 0 calc(100% * 7 / var(--ui-columns));
  }
  .offset-md-6 {
    margin-left: calc(100% * 7 / var(--ui-columns));
  }
  .col-md-8 {
    flex: 0 0 calc(100% * 8 / var(--ui-columns));
  }
  .offset-md-7 {
    margin-left: calc(100% * 8 / var(--ui-columns));
  }
  .col-md-9 {
    flex: 0 0 calc(100% * 9 / var(--ui-columns));
  }
  .offset-md-8 {
    margin-left: calc(100% * 9 / var(--ui-columns));
  }
  .col-md-10 {
    flex: 0 0 calc(100% * 10 / var(--ui-columns));
  }
  .offset-md-9 {
    margin-left: calc(100% * 10 / var(--ui-columns));
  }
  .col-md-11 {
    flex: 0 0 calc(100% * 11 / var(--ui-columns));
  }
  .offset-md-10 {
    margin-left: calc(100% * 11 / var(--ui-columns));
  }
  .col-md-12 {
    flex: 0 0 calc(100% * 12 / var(--ui-columns));
  }
  .offset-md-11 {
    margin-left: calc(100% * 12 / var(--ui-columns));
  }
}
@media (min-width: 992px) {
  .col-lg-auto {
    flex: 0 0 auto;
    width: auto;
  }
  .col-lg-1 {
    flex: 0 0 calc(100% * 1 / var(--ui-columns));
  }
  .offset-lg-0 {
    margin-left: calc(100% * 1 / var(--ui-columns));
  }
  .col-lg-2 {
    flex: 0 0 calc(100% * 2 / var(--ui-columns));
  }
  .offset-lg-1 {
    margin-left: calc(100% * 2 / var(--ui-columns));
  }
  .col-lg-3 {
    flex: 0 0 calc(100% * 3 / var(--ui-columns));
  }
  .offset-lg-2 {
    margin-left: calc(100% * 3 / var(--ui-columns));
  }
  .col-lg-4 {
    flex: 0 0 calc(100% * 4 / var(--ui-columns));
  }
  .offset-lg-3 {
    margin-left: calc(100% * 4 / var(--ui-columns));
  }
  .col-lg-5 {
    flex: 0 0 calc(100% * 5 / var(--ui-columns));
  }
  .offset-lg-4 {
    margin-left: calc(100% * 5 / var(--ui-columns));
  }
  .col-lg-6 {
    flex: 0 0 calc(100% * 6 / var(--ui-columns));
  }
  .offset-lg-5 {
    margin-left: calc(100% * 6 / var(--ui-columns));
  }
  .col-lg-7 {
    flex: 0 0 calc(100% * 7 / var(--ui-columns));
  }
  .offset-lg-6 {
    margin-left: calc(100% * 7 / var(--ui-columns));
  }
  .col-lg-8 {
    flex: 0 0 calc(100% * 8 / var(--ui-columns));
  }
  .offset-lg-7 {
    margin-left: calc(100% * 8 / var(--ui-columns));
  }
  .col-lg-9 {
    flex: 0 0 calc(100% * 9 / var(--ui-columns));
  }
  .offset-lg-8 {
    margin-left: calc(100% * 9 / var(--ui-columns));
  }
  .col-lg-10 {
    flex: 0 0 calc(100% * 10 / var(--ui-columns));
  }
  .offset-lg-9 {
    margin-left: calc(100% * 10 / var(--ui-columns));
  }
  .col-lg-11 {
    flex: 0 0 calc(100% * 11 / var(--ui-columns));
  }
  .offset-lg-10 {
    margin-left: calc(100% * 11 / var(--ui-columns));
  }
  .col-lg-12 {
    flex: 0 0 calc(100% * 12 / var(--ui-columns));
  }
  .offset-lg-11 {
    margin-left: calc(100% * 12 / var(--ui-columns));
  }
}
@media (min-width: 1200px) {
  .col-xl-auto {
    flex: 0 0 auto;
    width: auto;
  }
  .col-xl-1 {
    flex: 0 0 calc(100% * 1 / var(--ui-columns));
  }
  .offset-xl-0 {
    margin-left: calc(100% * 1 / var(--ui-columns));
  }
  .col-xl-2 {
    flex: 0 0 calc(100% * 2 / var(--ui-columns));
  }
  .offset-xl-1 {
    margin-left: calc(100% * 2 / var(--ui-columns));
  }
  .col-xl-3 {
    flex: 0 0 calc(100% * 3 / var(--ui-columns));
  }
  .offset-xl-2 {
    margin-left: calc(100% * 3 / var(--ui-columns));
  }
  .col-xl-4 {
    flex: 0 0 calc(100% * 4 / var(--ui-columns));
  }
  .offset-xl-3 {
    margin-left: calc(100% * 4 / var(--ui-columns));
  }
  .col-xl-5 {
    flex: 0 0 calc(100% * 5 / var(--ui-columns));
  }
  .offset-xl-4 {
    margin-left: calc(100% * 5 / var(--ui-columns));
  }
  .col-xl-6 {
    flex: 0 0 calc(100% * 6 / var(--ui-columns));
  }
  .offset-xl-5 {
    margin-left: calc(100% * 6 / var(--ui-columns));
  }
  .col-xl-7 {
    flex: 0 0 calc(100% * 7 / var(--ui-columns));
  }
  .offset-xl-6 {
    margin-left: calc(100% * 7 / var(--ui-columns));
  }
  .col-xl-8 {
    flex: 0 0 calc(100% * 8 / var(--ui-columns));
  }
  .offset-xl-7 {
    margin-left: calc(100% * 8 / var(--ui-columns));
  }
  .col-xl-9 {
    flex: 0 0 calc(100% * 9 / var(--ui-columns));
  }
  .offset-xl-8 {
    margin-left: calc(100% * 9 / var(--ui-columns));
  }
  .col-xl-10 {
    flex: 0 0 calc(100% * 10 / var(--ui-columns));
  }
  .offset-xl-9 {
    margin-left: calc(100% * 10 / var(--ui-columns));
  }
  .col-xl-11 {
    flex: 0 0 calc(100% * 11 / var(--ui-columns));
  }
  .offset-xl-10 {
    margin-left: calc(100% * 11 / var(--ui-columns));
  }
  .col-xl-12 {
    flex: 0 0 calc(100% * 12 / var(--ui-columns));
  }
  .offset-xl-11 {
    margin-left: calc(100% * 12 / var(--ui-columns));
  }
}
@media (min-width: 1400px) {
  .col-xxl-auto {
    flex: 0 0 auto;
    width: auto;
  }
  .col-xxl-1 {
    flex: 0 0 calc(100% * 1 / var(--ui-columns));
  }
  .offset-xxl-0 {
    margin-left: calc(100% * 1 / var(--ui-columns));
  }
  .col-xxl-2 {
    flex: 0 0 calc(100% * 2 / var(--ui-columns));
  }
  .offset-xxl-1 {
    margin-left: calc(100% * 2 / var(--ui-columns));
  }
  .col-xxl-3 {
    flex: 0 0 calc(100% * 3 / var(--ui-columns));
  }
  .offset-xxl-2 {
    margin-left: calc(100% * 3 / var(--ui-columns));
  }
  .col-xxl-4 {
    flex: 0 0 calc(100% * 4 / var(--ui-columns));
  }
  .offset-xxl-3 {
    margin-left: calc(100% * 4 / var(--ui-columns));
  }
  .col-xxl-5 {
    flex: 0 0 calc(100% * 5 / var(--ui-columns));
  }
  .offset-xxl-4 {
    margin-left: calc(100% * 5 / var(--ui-columns));
  }
  .col-xxl-6 {
    flex: 0 0 calc(100% * 6 / var(--ui-columns));
  }
  .offset-xxl-5 {
    margin-left: calc(100% * 6 / var(--ui-columns));
  }
  .col-xxl-7 {
    flex: 0 0 calc(100% * 7 / var(--ui-columns));
  }
  .offset-xxl-6 {
    margin-left: calc(100% * 7 / var(--ui-columns));
  }
  .col-xxl-8 {
    flex: 0 0 calc(100% * 8 / var(--ui-columns));
  }
  .offset-xxl-7 {
    margin-left: calc(100% * 8 / var(--ui-columns));
  }
  .col-xxl-9 {
    flex: 0 0 calc(100% * 9 / var(--ui-columns));
  }
  .offset-xxl-8 {
    margin-left: calc(100% * 9 / var(--ui-columns));
  }
  .col-xxl-10 {
    flex: 0 0 calc(100% * 10 / var(--ui-columns));
  }
  .offset-xxl-9 {
    margin-left: calc(100% * 10 / var(--ui-columns));
  }
  .col-xxl-11 {
    flex: 0 0 calc(100% * 11 / var(--ui-columns));
  }
  .offset-xxl-10 {
    margin-left: calc(100% * 11 / var(--ui-columns));
  }
  .col-xxl-12 {
    flex: 0 0 calc(100% * 12 / var(--ui-columns));
  }
  .offset-xxl-11 {
    margin-left: calc(100% * 12 / var(--ui-columns));
  }
}</style>
