@use '../tools' as tools;

@mixin regularComplete($font-prefix: $font-prefix) {
	@font-face {
		font-family: 'IBM Plex Sans';
		font-style: normal;
		font-weight: 400;
		src: local('IBM Plex Sans'), local('IBMPlexSans'), url('#{$font-prefix}/fonts/complete/woff2/IBMPlexSans-Regular.woff2') format('woff2'), url('#{$font-prefix}/fonts/complete/woff/IBMPlexSans-Regular.woff') format('woff');
	}
}

@mixin regularSplit($font-prefix: $font-prefix, $unicode-ranges: $unicode-ranges) {
	@each $unicode-range in $unicode-ranges {
		@font-face {
			font-family: 'IBM Plex Sans';
			font-style: normal;
			font-weight: 400;
			src: local('IBM Plex Sans'), local('IBMPlexSans'), url('#{$font-prefix}/fonts/split/woff2/IBMPlexSans-Regular-#{tools.split-range($unicode-range)}.woff2') format('woff2');
			unicode-range: tools.get-range($unicode-range);
		}	}
}

@mixin all($font-prefix: $font-prefix, $unicode-ranges: $unicode-ranges) {
	@include regularComplete($font-prefix);
	@include regularSplit($font-prefix, $unicode-ranges);
}