@appartmint/mint 0.8.12 → 0.9.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (58) hide show
  1. package/dist/css/mint.css +161 -4
  2. package/dist/css/mint.css.map +1 -1
  3. package/dist/css/mint.min.css +1 -1
  4. package/dist/css/mint.min.css.map +1 -1
  5. package/dist/css/noscript.css +8 -0
  6. package/dist/css/noscript.css.map +1 -0
  7. package/dist/css/noscript.min.css +3 -0
  8. package/dist/css/noscript.min.css.map +1 -0
  9. package/dist/js/imports/components/header.d.ts +110 -0
  10. package/dist/js/imports/components/header.d.ts.map +1 -0
  11. package/dist/js/imports/enum.d.ts +10 -0
  12. package/dist/js/imports/enum.d.ts.map +1 -0
  13. package/dist/js/imports/models/color.d.ts +32 -0
  14. package/dist/js/imports/models/color.d.ts.map +1 -0
  15. package/dist/js/imports/models/item.d.ts +48 -0
  16. package/dist/js/imports/models/item.d.ts.map +1 -0
  17. package/dist/js/imports/util/display.d.ts +7 -0
  18. package/dist/js/imports/util/display.d.ts.map +1 -0
  19. package/dist/js/imports/util/event.d.ts +7 -0
  20. package/dist/js/imports/util/event.d.ts.map +1 -0
  21. package/dist/js/imports/util/icon.d.ts +24 -0
  22. package/dist/js/imports/util/icon.d.ts.map +1 -0
  23. package/dist/js/imports/util/math.d.ts +14 -0
  24. package/dist/js/imports/util/math.d.ts.map +1 -0
  25. package/dist/js/imports/util/object.d.ts +59 -0
  26. package/dist/js/imports/util/object.d.ts.map +1 -0
  27. package/dist/js/imports/util/selectors.d.ts +146 -0
  28. package/dist/js/imports/util/selectors.d.ts.map +1 -0
  29. package/dist/js/imports/util/settings.d.ts +53 -0
  30. package/dist/js/imports/util/settings.d.ts.map +1 -0
  31. package/dist/js/imports/util/text.d.ts +7 -0
  32. package/dist/js/imports/util/text.d.ts.map +1 -0
  33. package/dist/js/imports/util/window.d.ts +7 -0
  34. package/dist/js/imports/util/window.d.ts.map +1 -0
  35. package/dist/js/index.d.ts +19 -2
  36. package/dist/js/index.d.ts.map +1 -1
  37. package/dist/js/index.js +1505 -80
  38. package/dist/js/index.js.map +1 -1
  39. package/dist/js/index.min.js +1 -1
  40. package/dist/js/index.min.js.map +1 -1
  41. package/dist/js/util.d.ts +78 -0
  42. package/dist/js/util.d.ts.map +1 -0
  43. package/dist/js/util.js +638 -0
  44. package/dist/js/util.js.map +1 -0
  45. package/dist/js/util.min.js +2 -0
  46. package/dist/js/util.min.js.map +1 -0
  47. package/package.json +1 -5
  48. package/src/scss/imports/components/_buttons.scss +1 -0
  49. package/src/scss/imports/components/_header.scss +196 -0
  50. package/src/scss/imports/components/_index.scss +2 -1
  51. package/src/scss/imports/global/_animations.scss +5 -1
  52. package/src/scss/imports/global/_global.scss +5 -1
  53. package/src/scss/imports/global/_themes.scss +0 -1
  54. package/src/scss/imports/{_mint.scss → util/_index.scss} +1 -1
  55. package/src/scss/imports/util/_util.scss +713 -0
  56. package/src/scss/noscript.scss +14 -0
  57. package/src/scss/imports/_util.scss +0 -7
  58. /package/src/scss/imports/{_vars.scss → util/_vars.scss} +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"css/mint.min.css","mappings":"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","sources":["webpack://mint/./src/scss/imports/components/_backgrounds.scss","webpack://mint/./src/scss/imports/components/_buttons.scss","webpack://mint/./node_modules/@appartmint/util/src/scss/imports/_util.scss","webpack://mint/./src/scss/imports/components/_cards.scss","webpack://mint/./src/scss/imports/global/_animations.scss","webpack://mint/./src/scss/imports/global/_global.scss","webpack://mint/./src/scss/imports/global/_structure.scss","webpack://mint/./src/scss/imports/global/_text.scss","webpack://mint/./src/scss/imports/global/_themes.scss"],"sourcesContent":["/// background.scss - Static background styles\n/// @author App Art Mint LLC\n/// \n/// @group Background\n@charset 'utf-8';\n\n/// Imports\n@use '../util' as *;\n\n/// Background Styles\n#{class(bg)} {\n display: block;\n opacity: 0;\n height: 0;\n width: 0;\n z-index: -1;\n}\n","/// buttons.scss - Button styles\n/// @author App Art Mint LLC\n/// \n/// @group Buttons\n@charset 'utf-8';\n\n/// Imports\n@use '../util' as *;\n\n#{class(pill)} {\n display: inline-flex;\n padding: 0 0.75rem;\n border-radius: 1rem;\n color: css-var(fore);\n background: css-var(brand-5);\n text-decoration: none;\n white-space: nowrap;\n\n @include states(hover, focus, active) {\n color: css-var(back);\n background: css-var(brand-3);\n outline-color: css-var(brand-0);\n }\n\n &#{class(alt)} {\n color: css-var(brand-3);\n background: css-var(trans);\n\n @include states(hover, focus, active) {\n color: css-var(fore);\n background: css-var(trans);\n outline-color: css-var(accent-2);\n }\n }\n}\n","/// util.scss - Variables, Functions, and Mixins to import elsewhere\n/// @author App/Art Mint\n/// \n/// @group Util\n\n/// Imports\n@use 'sass:color';\n@use 'sass:math';\n@use 'sass:string';\n\n/// Library name\n/// @group Variables\n/// @type String\n$lib: mint !default;\n\n/// Dash - variable name separator\n/// @group Variables\n/// @type String\n$dash: #{'-'};\n\n/// Prefix added to selectors\n/// @group Variables\n/// @type String\n$pre: #{$lib}#{$dash};\n\n/// Dot - added to classes\n/// @group Variables\n/// @type String\n$dot: #{'.'};\n\n/// Hash - added to ids\n/// @group Variables\n/// @type String\n$hash: #{'#'};\n\n/// CSS-selector for disabled elements\n/// @group Variables\n/// @type String\n$disabled: #{'[disabled]'};\n\n/// CSS-selector for elements with an aria-controls attribute\n/// @group Variables\n/// @type String\n$has-controls: #{'[aria-controls]'};\n\n/// CSS-selector for elements with an aria-expanded attribute\n/// @group Variables\n/// @type String\n$has-expanded: #{'[aria-expanded]'};\n\n/// CSS-selector for elements with an aria-hidden attribute\n/// @group Variables\n/// @type String\n$has-hidden: #{'[aria-hidden]'};\n\n/// CSS-selector for elements with an href attribute\n/// @group Variables\n/// @type String\n$has-link: #{'[href]'};\n\n/// CSS-selector for elements with a routerLink attribute\n/// @group Variables\n/// @type String\n$has-router-link: #{'[routerLink]'};\n\n/// CSS-selector for elements with an id attribute\n/// @group Variables\n/// @type String\n$has-id: #{'[id]'};\n\n/// CSS-selector for elements that aren't tabbable (i.e. tabindex is negative)\n/// @group Variables\n/// @type String\n$not-tabbable: #{'[tabindex^=\"-\"]'};\n\n/// CSS-selector for elements that are tabbable (i.e. tabindex isn't negative)\n/// @group Variables\n/// @type String\n$tabbable: #{'[tabindex]'}#{neg($not-tabbable)};\n\n/// CSS-selector for submenu buttons\n/// @group Variables\n/// @type String\n$sub-menu-buttons: #{'button'}#{$has-controls};\n\n/// CSS-selector for submenus\n/// @group Variables\n/// @type String\n$sub-menu: #{$sub-menu-buttons}#{' + ul'}#{$has-id};\n\n/// Value added to all delay variables\n/// @group Variables\n/// @type Number\n$delay-base: 0 !default;\n\n/// Value added to all delay variables\n/// @group Variables\n/// @type Number\n$delay-step: 100 !default;\n\n/// Delay variables\n/// @group Maps\n/// @prop {Number} $delay.instant [0] - Instant: the quickest delay; close or equal to 0\n/// @prop {Number} $delay.fast [100] - Fast: delays that happen quickly\n/// @prop {Number} $delay.med-fast [200] - Med-Fast: delays that happen faster\n/// @prop {Number} $delay.default [300] - Default: delays that are average\n/// @prop {Number} $delay.med-slow [400] - Med-Slow: delays that happen slower\n/// @prop {Number} $delay.slow [500] - Slow: delays that happen slowly\n$delay: (\n instant: $delay-base + $delay-step * 0,\n fast: $delay-base + $delay-step * 1,\n med-fast: $delay-base + $delay-step * 2,\n default: $delay-base + $delay-step * 3,\n med-slow: $delay-base + $delay-step * 4,\n slow: $delay-base + $delay-step * 5\n) !default;\n\n/// Breakpoint variables\n/// @group Maps\n/// @prop {Number} $break.xs [480] - Extra-Small: mobile devices\n/// @prop {Number} $break.sm [768] - Small: small tablets, landscape mobiles\n/// @prop {Number} $break.md [1024] - Medium: small desktops, large tablets\n/// @prop {Number} $break.lg [1200] - Large: large desktops, landscape tablets\n/// @prop {Number} $break.xl [1440] - Extra-Large: larger desktops\n$break: (\n xs: 480,\n sm: 768,\n md: 1024,\n lg: 1200,\n xl: 1440\n) !default;\n\n/// True if Bootstrap5 is used in the project\n/// @group Variables\n/// @type Boolean\n$bootstrap5: false !default;\n@if ($bootstrap5) {\n $break: (\n sm: 576,\n md: 768,\n lg: 992,\n xl: 1200,\n xxl: 1400\n ) !default;\n}\n\n/// Prefixes the provided string with the library name if it isn't already\n/// @group Functions\n/// \n/// @example scss - prefix function\n/// prefix(header) // -> sun-header\n/// \n/// @param {String} $base - the string to be prefixed\n/// @return {String} - a prefixed string\n@function prefix ($base) {\n @if (type-of($base) != 'string') {\n @error 'The prefix function requires a string value.';\n }\n\n $base: string.to-lower-case($base);\n\n @if (string.index($base, $pre) != 1) {\n $base: $pre + $base;\n }\n\n @return $base;\n}\n\n/// Prefixes the provided string with two dashes and the library name if it isn't already\n/// @group Functions\n/// \n/// @example scss - css-prefix function\n/// css-prefix(background) // -> --sun-background\n/// \n/// @param {String} $base - the string to be prefixed\n/// @return {String} - a prefixed string\n@function css-prefix ($base) {\n @if (type-of($base) != 'string') {\n @error 'The css-prefix function requires a string value.';\n }\n\n @while (string.index($base, $dash) == 1) {\n $base: string.slice($base, 2);\n }\n\n @return $dash + $dash + prefix($base);\n}\n\n/// Creates a CSS-var call for the prefixed `$base`\n/// @group Functions\n/// \n/// @example scss - css-var function\n/// css-var(background) // -> var(--sun-background)\n/// \n/// @param {String} $base - the CSS-var to create a call for\n/// @return {String} - a CSS-var call\n@function css-var ($base) {\n @if (type-of($base) != 'string') {\n @error 'The css-var function requires a string value.';\n }\n\n @return var(css-prefix($base));\n}\n\n/// Negates a provided CSS-selector\n/// @group Functions\n/// \n/// @example scss - neg function\n/// neg(.sun-open) // -> :not(.sun-open)\n/// \n/// @param {String} $base - the CSS-selector to negate\n/// @return {String} - a negated CSS-selector\n@function neg ($base) {\n @if (type-of($base) != 'string') {\n @error 'The neg function requires a string value.';\n }\n\n @return ':not(' + $base + ')';\n}\n\n/// Creates a class selector with the library prefix\n/// @group Functions\n/// \n/// @example scss - class function\n/// class(open) // -> .sun-open\n/// \n/// @param {String} $base - the name of the class\n/// @return {String} - a class selector\n@function class($base) {\n @if (type-of($base) != 'string') {\n @error 'The class function requires a string value.';\n }\n\n @return $dot + prefix($base);\n}\n\n/// Creates an id selector with the library prefix\n/// @group Functions\n/// \n/// @example scss - id function\n/// id(header) // -> #sun-header\n/// \n/// @param {String} $base - the name of the id\n/// @param {String} $op - the comparison operator\n/// @return {String} - an id selector\n@function id ($base, $op: '=') {\n @if (type-of($base) != 'string') {\n @error 'The id function requires a string value.';\n }\n @if (type-of($op) != 'string') {\n @error 'The controls function requires a string value for param 2.';\n }\n @if not($op == '=' or $op == '~=' or $op == '|=' or $op == '^=' or $op == '$=' or $op == '*=') {\n @error 'The controls function requires a valid attribute comparison operator for param 2.';\n }\n\n @if ($op == '=') {\n @return $hash + prefix($base);\n }\n @return '[id' + $op + prefix($base) + ']';\n}\n\n/// Creates an aria-controls selector with the library prefix\n/// @group Functions\n/// \n/// @example scss - controls function\n/// controls(header) // -> [aria-controls=sun-header]\n/// \n/// @param {String} $id - the id of the controlled element\n/// @param {String} $op - the comparison operator\n/// @return {String} - an aria-controls selector\n@function controls ($id, $op: '=') {\n @if (type-of($id) != 'string') {\n @error 'The controls function requires a string value for param 1.';\n }\n @if (type-of($op) != 'string') {\n @error 'The controls function requires a string value for param 2.';\n }\n @if not($op == '=' or $op == '~=' or $op == '|=' or $op == '^=' or $op == '$=' or $op == '*=') {\n @error 'The controls function requires a valid attribute comparison operator for param 2.';\n }\n\n @return '[aria-controls' + $op + prefix($id) + ']';\n}\n\n/// Creates an aria-expanded selector\n/// @group Functions\n/// \n/// @example scss - expanded function\n/// expanded(true) // -> [aria-expanded=true]\n/// \n/// @param {Bool} $bool - the value of the selector\n/// @return {String} - an aria-expanded selector\n@function expanded ($bool) {\n @if (type-of($bool) == 'string') {\n $bool: string.to-lower-case($bool);\n\n @if not($bool == 'true' or $bool == 'false') {\n @error 'The expanded function requires a boolean value.';\n }\n } @else if (type-of($bool) != 'bool') {\n @error 'The expanded function requires a boolean value.';\n }\n \n @return '[aria-expanded=' + $bool + ']';\n}\n\n/// Creates an aria-hidden selector\n/// @group Functions\n/// \n/// @example scss - hidden function\n/// hidden(true) // -> [aria-hidden=true]\n/// \n/// @param {Bool} $bool - the value of the selector\n/// @return {String} - an aria-hidden selector\n@function hidden ($bool) {\n @if (type-of($bool) == 'string') {\n $bool: string.to-lower-case($bool);\n\n @if not($bool == 'true' or $bool == 'false') {\n @error 'The hidden function requires a boolean value. Received: ' + $bool;\n }\n } @else if (type-of($bool) != 'bool') {\n @error 'The hidden function requires a boolean value. Received: ' + $bool;\n }\n \n @return '[aria-hidden=' + $bool + ']';\n}\n\n/// Converts a number to ms\n/// @group Functions\n/// \n/// @example scss - ms function\n/// ms(100) // -> 100ms\n/// \n/// @param {Number} $val - the number of ms to return\n/// @return {Number} the number as ms\n@function ms ($val) {\n @if (type-of($val) != 'number') {\n @error 'The ms function requires a number value.';\n }\n\n @return $val * 1ms;\n}\n\n/// Converts a number to px\n/// @group Functions\n/// \n/// @example scss - px function\n/// px(100) // -> 100px\n/// \n/// @param {Number} $val - the number of px to return\n/// @return {Number} - the number as px\n@function px ($val) {\n @if (type-of($val) != 'number') {\n @error 'The px function requires a number value.';\n }\n\n @return $val * 1px;\n}\n\n/// Removes the unit from the given value\n/// @group Functions\n/// \n/// @example scss - strip-unit function\n/// strip-unit(100px) // -> 100\n/// \n/// @param {Number} $val - the value to strip\n/// @return {Number} - the number without units\n@function strip-unit($val) {\n @if (type-of($val) != 'number') {\n @error 'The strip-unit function requires a number value.';\n }\n\n @return math.div($val, $val * 0 + 1);\n}\n\n/// Returns the percentage of the given values\n/// @group Functions\n/// \n/// @example scss - percent function\n/// percent(100, 200) // -> 50%\n/// \n/// @param {Number} $dividend - the value that will be devided\n/// @param {Number} $divisor - the value that will devided by\n/// @return {Number} - the percentage of the given values\n/// @throws {Error} - if the values are not numbers\n/// @throws {Error} - if the divisor is 0\n@function percent($dividend, $divisor, $padding: 0) {\n @if (type-of($dividend) != 'number' or type-of($divisor) != 'number' or type-of($padding) != 'number') {\n @error 'The percent function requires number parameters.';\n }\n @if ($divisor == 0) {\n @error 'The percent function requires a non-zero value for param 2.';\n }\n @if (strip-unit($padding) != 0) {\n @return calc((($dividend * 100%) - $padding) / $divisor) + '%';\n }\n @return math.div($dividend * 100%, $divisor);\n}\n\n/// Returns the requested delay value as ms\n/// @group Functions\n/// \n/// @example scss - delay function\n/// delay(default) // -> 300ms\n/// \n/// @param {Number} $key - the key of the delay to use\n/// @return {Number} - the delay value as ms\n@function delay($key) {\n @if not(map-has-key($delay, $key)) {\n @error 'The delay function requires one of the following values: #{map-keys($delay)}';\n }\n\n @return ms(map-get($delay, $key));\n}\n\n/// Returns the requested breakpoint value as px\n/// @group Functions\n/// \n/// @example scss - break function\n/// break(md) // -> 1024px\n/// \n/// @param {Number} $key - the key of the breakpoint to use\n/// @return {Number} - the breakpoint value as px\n@function break($key) {\n @if not(map-has-key($break, $key)) {\n @error 'The break function requires one of the following values: #{map-keys($break)}';\n }\n\n @return px(map-get($break, $key));\n}\n\n/// Creates a prefixed CSS var definition\n/// @group Mixins\n/// \n/// @example scss - css-var mixin\n/// @include css-var(bg, black) // -> --sun-bg: black;\n/// \n/// @param {String} $key - the key of the CSS var\n/// @param {Any} $val - the value of the CSS var\n/// @output a prefixed CSS var definition\n@mixin css-var ($key, $val) {\n #{css-prefix($key)}: #{$val};\n}\n\n/// Creates a prefixed CSS var reference\n/// @group Mixins\n/// \n/// @example scss - css-var-ref mixin\n/// @include css-var-ref(fill, bg) // -> --sun-fill: var(--sun-bg);\n/// \n/// @param {String} $key1 - the key of the new CSS var to define\n/// @param {String} $key2 - the key of the referenced CSS var\n/// @output a prefixed CSS var reference\n@mixin css-var-ref ($key1, $key2) {\n @include css-var($key1, css-var($key2));\n}\n\n/// Wraps the provided content in a media query\n/// @group Mixins\n/// \n/// @example scss - break mixin\n/// @include break(md) { // -> @media (min-width: 1024px) {\n/// display: none; // display: none;\n/// } // }\n/// \n/// @param {String} $min - the key of the breakpoint to use with min-width\n/// @param {String} $max - the key of the breakpoint to use with max-width\n/// @output the provided content wrapped in a media query\n@mixin break ($min, $max: null) {\n @if not(map-has-key($break, $min) and (type-of($max) == 'null' or map-has-key($break, $max))) {\n @error 'The break mixin requires one or two of the following values: #{map-keys($break)}';\n }\n\n @if (map-has-key($break, $max)) {\n @media (min-width: break($min)) and (max-width: break($max)) {\n @content;\n }\n } @else {\n @media (min-width: break($min)) {\n @content;\n }\n }\n}\n\n/// Creates utility selectors for a given property at each breakpoint\n/// @group Mixins\n/// \n/// @example scss- break-util mixin\n/// @include break-util(display, flex); // -> & {\n/// // display: flex;\n/// // \n/// // &-xs {\n/// // display: none;\n/// // @include break(xs) {\n/// // display: flex;\n/// // }\n/// // }\n/// // &-to-xs {\n/// // display: flex;\n/// // @include break(xs) {\n/// // display: none;\n/// // }\n/// // }\n/// // ...\n/// // &-xl {\n/// // display: none;\n/// // @include break(xl) {\n/// // display: flex;\n/// // }\n/// // }\n/// // &-to-xl {\n/// // display: flex;\n/// // @include break(xl) {\n/// // display: none;\n/// // }\n/// // }\n/// // }\n///\n/// @param {String} $prop - the property to toggle\n/// @param {Any} $val - the active value of the property\n/// @param {Any} $none - the inactive value of the property\n/// @output utility selectors for the given property at each breakpoint\n@mixin break-util ($prop, $val, $none: \"none\") {\n @if (type-of($prop) != 'string') {\n @error 'The break-util mixin requires a string for the $prop argument.';\n }\n\n & {\n #{$prop}: #{$val};\n\n @each $key, $width in $break {\n &-#{$key} {\n #{$prop}: #{$none};\n\n @include break($key) {\n #{$prop}: #{$val};\n }\n }\n\n &-to-#{$key} {\n #{$prop}: #{$val};\n\n @include break($key) {\n #{$prop}: #{$none};\n }\n }\n }\n }\n}\n\n/// Generates a property with a fluid value between specified screen sizes\n/// @group Mixins\n/// \n/// @example scss - fluid mixin\n/// @include fluid(font-size, 480px, 1024px, 18px, 16px); // -> & {\n/// // font-size: 16px;\n/// // @media (min-width: 480px) {\n/// // font-size: calc(16px + 2 * ((100vw - 480px) / 544));\n/// // }\n/// // @media (min-width: 1024px) {\n/// // font-size: 18px;\n/// // }\n/// // }\n/// \n/// @param {String} $prop - the property whose value will be fluid\n/// @param {String} $min-vw - the minimum screen width of the fluid property\n/// @param {String} $max-vw - the maximum screen width of the fluid property\n/// @param {String} $min-size - the minimum value of the fluid property\n/// @param {String} $max-size - the maximum value of the fluid property\n/// @output the definitions for the property at different screen sizes\n@mixin fluid ($prop, $min-vw, $max-vw, $min-size, $max-size) {\n $u1: unit($min-vw);\n $u2: unit($max-vw);\n $u3: unit($min-size);\n $u4: unit($max-size);\n\n @if (type-of($prop) != 'string') {\n @error 'The fluid mixin requires a string for the $prop argument.';\n }\n @if not(type-of($u1) == 'string' and type-of($u2) == 'string' and type-of($u3) == 'string' and type-of($u4) == 'string') {\n @error 'The fluid mixin requires numbers for the width and size arguments.';\n }\n @if not($u1 == $u2 and $u1 == $u3 and $u1 == $u4) {\n @error 'The fluid mixin requires width and size arguments with the same units.';\n }\n\n // See if you can get rid of this wrapping & selector\n & {\n #{$prop}: $min-size;\n @media (min-width: $min-vw) {\n #{$prop}: calc(#{$min-size} + #{strip-unit($max-size - $min-size)} * ((100vw - #{$min-vw}) / #{strip-unit($max-vw - $min-vw)}));\n }\n @media (min-width: $max-vw) {\n #{$prop}: $max-size;\n }\n }\n}\n\n/// Generates css varibles for lighter, darker, or both variations\n/// @group Mixins\n///\n/// @param {String} $name - the name of the color\n/// @param {Color} $color - the color to generate variations for\n/// @param {String} $type - the type of variation to generate\n/// @param {Number} $number - the number of variations to generate\n/// @param {String} $amount - the amount to vary the color by\n/// @param {Boolean} $alpha - whether to generate alpha variations\n/// @output css variables for different shades of the source color\n@mixin shades ($name, $color, $type: both, $number: 7, $amount: 10%, $alpha: false) {\n @if (type-of($name) != 'string') {\n @error 'The shades mixin requires a string for the $name argument.';\n }\n @if (type-of($color) != 'color') {\n @error 'The shades mixin requires a color for the $color argument.';\n }\n @if not($type == lighten or $type == darken or $type == both) {\n @error 'The shades mixin requires a string of \"lighten\", \"darken\", or \"both\" for the $type argument.';\n }\n @if (type-of($number) != 'number') {\n @error 'The shades mixin requires a number for the $number argument.';\n }\n @if (type-of($alpha) == 'string') {\n $bool: string.to-lower-case($bool);\n\n @if not($bool == 'true' or $bool == 'false') {\n @error 'The shades mixin requires a boolean value for the $alpha argument. Received: ' + $bool;\n }\n } @else if (type-of($alpha) != 'bool') {\n @error 'The shades mixin requires a boolean value for the $alpha argument. Received: ' + $bool;\n }\n\n @include css-var(#{$name}, $color);\n\n @if ($alpha) {\n @if ($type == lighten) {\n @for $i from 0 through $number - 1 {\n @include css-var(#{$name}-#{$i}, color.adjust($color, $alpha: -$i * math.div($amount, 100%)));\n }\n } @else if ($type == darken) {\n @for $i from 0 through $number - 1 {\n @include css-var(#{$name}-#{$i}, color.adjust($color, $alpha: $i * math.div($amount, 100%)));\n }\n } @else if ($type == both) {\n $num-light: floor(math.div($number, 2));\n @for $i from 0 through $num-light - 1 {\n @include css-var(#{$name}-#{$i}, color.adjust($color, $alpha: -$i * math.div($amount, 100%)));\n }\n @include css-var(#{$name}-#{$num-light}, $color);\n @for $i from $num-light + 1 through $number - 1 {\n @include css-var(#{$name}-#{$i}, color.adjust($color, $alpha: ($num-light - $i) * math.div($amount, 100%)));\n }\n }\n } @else {\n @if ($type == lighten) {\n @for $i from 0 through $number - 1 {\n @include css-var(#{$name}-#{$i}, lighten($color, $i * $amount));\n }\n } @else if ($type == darken) {\n @for $i from 0 through $number - 1 {\n @include css-var(#{$name}-#{$i}, darken($color, $i * $amount));\n }\n } @else if ($type == both) {\n $num-light: floor(math.div($number, 2));\n @for $i from 0 through $num-light - 1 {\n @include css-var(#{$name}-#{$i}, lighten($color, ($num-light - $i) * $amount));\n }\n @include css-var(#{$name}-#{$num-light}, $color);\n @for $i from $num-light + 1 through $number - 1 {\n @include css-var(#{$name}-#{$i}, darken($color, ($i - $num-light) * $amount));\n }\n }\n }\n}\n\n/// TODO: Document this\n@mixin states ($states...) {\n @each $state in $states {\n @if (type-of($state) != 'string') {\n @error 'The states mixin requires a string for each state argument.';\n }\n @if not($state == 'hover' or $state == 'focus' or $state == 'active' or $state == 'visited' or $state == 'disabled') {\n @error 'The states mixin requires a string of \"hover\", \"focus\", \"active\", \"visited\", or \"disabled\" for each state argument.';\n }\n }\n\n @if (index($states, 'hover') != null) {\n &:hover {\n @content;\n }\n }\n @if (index($states, 'focus') != null) {\n &:focus {\n @content;\n }\n }\n @if (index($states, 'active') != null) {\n &:active, &#{class(active)} {\n @content;\n }\n }\n @if (index($states, 'visited') != null) {\n &:visited {\n @content;\n }\n }\n @if (index($states, 'disabled') != null) {\n &:disabled {\n @content;\n }\n }\n}\n","/// cards.scss - Card styles\n/// @author App Art Mint LLC\n/// \n/// @group Cards\n@charset 'utf-8';\n\n/// Imports\n@use '../util' as *;\n\n/// Variables\n$border-radius: 1rem;\n$padding: 1.5rem;\n$box-shadow: 0 0 2rem -0.5rem #{css-var(glow-2)};\n\n/// Card Styles\n#{class(card)} {\n display: flex;\n flex-direction: column;\n margin: $padding * 2 0;\n border-radius: $border-radius;\n box-shadow: $box-shadow;\n overflow: hidden;\n\n @include break(sm) {\n flex-direction: row;\n\n &#{class(reverse)} {\n flex-direction: row-reverse;\n }\n }\n\n &#{class(stagger)} {\n position: relative;\n\n @include break(sm) {\n flex-direction: row-reverse;\n border-radius: 0;\n box-shadow: none;\n overflow: visible;\n\n #{class(image)} {\n position: absolute;\n top: 0;\n left: 0;\n width: 50%;\n height: calc(100% - 3rem);\n border-radius: $border-radius;\n box-shadow: $box-shadow;\n\n img {\n height: 100%;\n object-fit: cover;\n }\n }\n\n #{class(content)} {\n width: calc(50% + $padding * 2);\n margin-top: $padding * 2;\n border-radius: $border-radius;\n box-shadow: $box-shadow;\n }\n }\n\n &#{class(reverse)} {\n @include break(sm) {\n flex-direction: row;\n\n #{class(image)} {\n left: auto;\n right: 0;\n }\n }\n }\n }\n\n & > #{class(image)}:only-child, & > mint-image:only-child #{class(image)} {\n width: 100%;\n }\n\n #{class(image)} {\n overflow: hidden;\n\n @include break(sm) {\n width: 50%;\n }\n\n img {\n display: block;\n }\n }\n\n #{class(content)} {\n padding: $padding;\n background: css-var(black-2);\n\n @include break(sm) {\n width: 50%;\n }\n\n :first-child {\n margin-top: 0;\n }\n\n :last-child {\n margin-bottom: 0;\n }\n\n #{class(buttons)} {\n display: flex;\n align-items: center;\n\n & > * {\n margin-right: 0.5rem;\n }\n\n :last-child {\n margin-right: 0;\n }\n }\n }\n}\n","/// animations.scss - Global animations\n/// @author App/Art Mint\n/// \n/// @group Animations\n@charset 'utf-8';\n\n/// Imports\n@use 'sass:math';\n@use '../util' as *;\n\n/// Animations\n/// Cycle through instagram colors\n@keyframes instafade {\n @for $i from 0 through 6 {\n $percent: percentage(math.div($i, 6));\n #{$percent} {\n color: css-var(instagram-#{$i});\n }\n }\n}\n\n/// CSS variables\n:root {\n @include css-var(delay-instant, delay(instant));\n @include css-var(delay-fast, delay(fast));\n @include css-var(delay-med-fast, delay(med-fast));\n @include css-var(delay-default, delay(default));\n @include css-var(delay-med-slow, delay(med-slow));\n @include css-var(delay-slow, delay(slow));\n}\n\n#{class(vp-fall-in)} {\n opacity: 0;\n transform: translateY(-100px);\n transition: all delay(slow), box-shadow delay(slow) delay(med-slow) !important;\n pointer-events: none;\n\n &#{class(show)}#{neg(class(loading))} {\n opacity: 1;\n transform: translateY(0%);\n pointer-events: auto;\n }\n\n &#{neg(class(show))}, &#{class(loading)} {\n box-shadow: 0 0 0 0 transparent !important;\n }\n}\n\n#{class(shine)} {\n position: relative;\n overflow: hidden;\n\n @include states(hover, focus, active) {\n &::after {\n transition-duration: delay(default);\n transform: translate(100%, -100%);\n }\n }\n\n &::after {\n content: '';\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n transform: translate(-100%, 100%);\n background: linear-gradient(45deg, rgba(255,255,255,0) 0%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0) 100%);\n transition: transform delay(med-fast) ease-in;\n }\n}\n","/// Imports\n@use '../util' as *;\n\n/// Global styles\n* {\n &, &::before, &::after {\n box-sizing: border-box;\n }\n}\n\nhtml, body {\n color: css-var(fore);\n background-color: css-var(back);\n overflow-x: hidden;\n}\n\nhtml, body, main {\n width: 100%;\n min-height: 100vh;\n margin: 0;\n padding: 0;\n}\n\nmain {\n display: flex;\n flex-direction: column;\n position: relative;\n z-index: 1000;\n}\n\nnav {\n a {\n display: block;\n text-decoration: none;\n }\n\n ul {\n display: flex;\n margin: 0;\n padding: 0;\n list-style: none;\n\n & > li > ul {\n flex-direction: column;\n }\n }\n}\n\na {\n &[href^='tel:'], &[href^='mailto:'] {\n white-space: nowrap;\n }\n}\n\nbutton, a[routerLink] {\n cursor: pointer;\n}\n\na, button {\n font-size: inherit;\n}\n\nimg {\n width: 100%;\n}\n\n#{class(glow)} {\n box-shadow: 0 0 2rem -0.5rem css-var(glow-2);\n}\n\n#{class(noglow)} {\n box-shadow: none !important;\n}\n","/// Imports\n@use '../util' as *;\n\n/// Structure styles\n#{class(pad)} {\n @include break-util(padding, 1rem, 0);\n}\n\n#{class(margin)} {\n @include break-util(margin, 1rem, 0);\n\n &-auto {\n margin-left: auto;\n margin-right: auto;\n\n &-v {\n margin: 1rem auto;\n\n @for $i from 0 through 6 {\n &#{$i} {\n margin: 1rem * $i auto;\n }\n }\n }\n }\n\n &-v {\n margin: 1rem 0;\n\n @for $i from 0 through 6 {\n &#{$i} {\n margin: 1rem * $i 0;\n }\n }\n }\n\n &-h {\n margin: 0 1rem;\n\n @for $i from 0 through 6 {\n &#{$i} {\n margin: 0 1rem * $i;\n }\n }\n }\n}\n\nsection {\n &#{class(smaller)} {\n margin-left: auto;\n margin-right: auto;\n max-width: break(xs);\n }\n\n &#{class(small)} {\n margin-left: auto;\n margin-right: auto;\n max-width: break(sm);\n }\n\n &#{class(default)} {\n margin-left: auto;\n margin-right: auto;\n max-width: break(md);\n }\n\n &#{class(big)} {\n margin-left: auto;\n margin-right: auto;\n max-width: break(lg);\n }\n\n &#{class(bigger)} {\n margin-left: auto;\n margin-right: auto;\n max-width: break(xl);\n }\n}\n\n#{class(center)} {\n align-items: center;\n justify-content: center;\n text-align: center;\n}\n","/// text.scss - Text styles\n/// @author App/Art Mint\n/// \n/// @group Animations\n@charset 'utf-8';\n\n/// Imports\n@use '../util' as *;\n\n/// Fonts\n$font-primary: 'Palanquin' !default;\n$font-secondary: 'JosefinSans' !default;\n$font-backups: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, 'Noto Sans', sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji' !default;\n\n/// Font Sizes\n$font-size-mobile: (\n h1: 2.5rem,\n h2: 2rem,\n h3: 1.75rem,\n h4: 1.5rem,\n h5: 1.25rem,\n h6: 1.125rem,\n p: 1rem,\n) !default;\n$font-size-desktop: (\n h1: 3rem,\n h2: 2.5rem,\n h3: 2rem,\n h4: 1.75rem,\n h5: 1.5rem,\n h6: 1.25rem,\n p: 1.125rem,\n) !default;\n\n/// Text Styles\nhtml, body {\n font-family: $font-primary, $font-backups;\n font-size: 1rem;\n\n @include break(md) {\n font-size: 1.125rem;\n }\n}\n\n@for $i from 1 through 6 {\n h#{$i}, #{class(h#{$i})} {\n font-family: $font-secondary, $font-backups;\n }\n}\n\n@each $tag in map-keys($font-size-mobile) {\n #{$tag}, #{class($tag)} {\n margin: 1rem 0;\n font-size: map-get($font-size-mobile, $tag);\n\n @include break(md) {\n font-size: map-get($font-size-desktop, $tag);\n }\n }\n}\n","/// themes.scss - Styles for light and dark themes\n/// @author App/Art Mint\n/// \n/// @group Themes\n@charset 'utf-8';\n\n/// Imports\n@use '../util' as *;\n@use '../vars' as *;\n\n/// Global theme\n:root {\n /// Global Colors\n /// Brands\n @include css-var(bitcoin, $bitcoin);\n @include css-var(ethereum, $ethereum);\n @include css-var(venmo, $venmo);\n @include css-var(facebook, $facebook);\n @include css-var(youtube, $youtube);\n @include css-var(itunes, $itunes);\n @include css-var(spotify, $spotify);\n @include css-var(amazon-0, $amazon-0);\n @include css-var(amazon-1, $amazon-1);\n @include css-var(napster-0, $napster-0);\n @include css-var(napster-1, $napster-1);\n @include css-var(google-play-0, $google-play-0);\n @include css-var(google-play-1, $google-play-1);\n @include css-var(google-play-2, $google-play-2);\n @include css-var(instagram-0, $instagram-0);\n @include css-var(instagram-1, $instagram-1);\n @include css-var(instagram-2, $instagram-2);\n @include css-var(instagram-3, $instagram-3);\n @include css-var(instagram-4, $instagram-4);\n @include css-var(instagram-5, $instagram-5);\n @include css-var(instagram-6, $instagram-6);\n\n /// Application Colors\n @include shades('black', $black, lighten);\n @include shades('white', $white, darken);\n @include shades(glow, $trans-light, darken, 7, 10%, true);\n @include shades(shadow, $trans-dark, darken, 7, 10%, true);\n\n @include shades(brand, $brand);\n @include shades(accent, $accent);\n @include shades(success, $success);\n @include shades(danger, $danger);\n @include shades(warning, $warning);\n @include shades(info, $info);\n}\n\n/// Light theme\n@mixin light-theme {\n @include css-var(fore, $fore);\n @include css-var(back, $back);\n}\n\n/// Dark theme\n@mixin dark-theme {\n @include css-var(fore, $back);\n @include css-var(back, $fore);\n}\n\n/// Apply themes\n:root {\n @if ($theme-default == light) {\n @include light-theme;\n } @else {\n @include dark-theme;\n }\n}\n\n#{class(dark)} {\n @include dark-theme;\n color: css-var(fore);\n}\n\n#{class(light)} {\n @include light-theme;\n color: css-var(fore);\n}\n\na {\n color: css-var(brand);\n\n @include states(hover, focus, active) {\n color: css-var(accent-0);\n \n .fa-github {\n color: css-var(white-1);\n }\n\n .fa-youtube {\n color: css-var(youtube);\n }\n\n .fa-instagram {\n color: css-var(instagram-0)\n }\n\n .fa-bitcoin {\n color: css-var(bitcoin);\n }\n\n .fa-ethereum {\n color: css-var(ethereum);\n }\n\n .fa-vimeo {\n color: css-var(venmo);\n }\n }\n \n i {\n transition: color delay(slow);\n }\n}\n"],"names":[],"sourceRoot":""}
1
+ {"version":3,"file":"css/mint.min.css","mappings":"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","sources":["webpack://mint/./src/scss/imports/components/_backgrounds.scss","webpack://mint/./src/scss/imports/components/_buttons.scss","webpack://mint/./src/scss/imports/util/_util.scss","webpack://mint/./src/scss/imports/components/_cards.scss","webpack://mint/./src/scss/imports/components/_header.scss","webpack://mint/./src/scss/imports/global/_animations.scss","webpack://mint/./src/scss/imports/global/_global.scss","webpack://mint/./src/scss/imports/global/_structure.scss","webpack://mint/./src/scss/imports/global/_text.scss","webpack://mint/./src/scss/imports/global/_themes.scss"],"sourcesContent":["/// background.scss - Static background styles\n/// @author App Art Mint LLC\n/// \n/// @group Background\n@charset 'utf-8';\n\n/// Imports\n@use '../util' as *;\n\n/// Background Styles\n#{class(bg)} {\n display: block;\n opacity: 0;\n height: 0;\n width: 0;\n z-index: -1;\n}\n","/// buttons.scss - Button styles\n/// @author App Art Mint LLC\n/// \n/// @group Buttons\n@charset 'utf-8';\n\n/// Imports\n@use '../util' as *;\n\n#{class(pill)} {\n display: inline-flex;\n align-items: center;\n padding: 0 0.75rem;\n border-radius: 1rem;\n color: css-var(fore);\n background: css-var(brand-5);\n text-decoration: none;\n white-space: nowrap;\n\n @include states(hover, focus, active) {\n color: css-var(back);\n background: css-var(brand-3);\n outline-color: css-var(brand-0);\n }\n\n &#{class(alt)} {\n color: css-var(brand-3);\n background: css-var(trans);\n\n @include states(hover, focus, active) {\n color: css-var(fore);\n background: css-var(trans);\n outline-color: css-var(accent-2);\n }\n }\n}\n","/// util.scss - Variables, Functions, and Mixins to import elsewhere\n/// @author App/Art Mint\n/// \n/// @group Util\n\n/// Imports\n@use 'sass:color';\n@use 'sass:math';\n@use 'sass:string';\n\n/// Library name\n/// @group Variables\n/// @type String\n$lib: mint !default;\n\n/// Dash - variable name separator\n/// @group Variables\n/// @type String\n$dash: #{'-'};\n\n/// Prefix added to selectors\n/// @group Variables\n/// @type String\n$pre: #{$lib}#{$dash};\n\n/// Dot - added to classes\n/// @group Variables\n/// @type String\n$dot: #{'.'};\n\n/// Hash - added to ids\n/// @group Variables\n/// @type String\n$hash: #{'#'};\n\n/// CSS-selector for disabled elements\n/// @group Variables\n/// @type String\n$disabled: #{'[disabled]'};\n\n/// CSS-selector for elements with an aria-controls attribute\n/// @group Variables\n/// @type String\n$has-controls: #{'[aria-controls]'};\n\n/// CSS-selector for elements with an aria-expanded attribute\n/// @group Variables\n/// @type String\n$has-expanded: #{'[aria-expanded]'};\n\n/// CSS-selector for elements with an aria-hidden attribute\n/// @group Variables\n/// @type String\n$has-hidden: #{'[aria-hidden]'};\n\n/// CSS-selector for elements with an href attribute\n/// @group Variables\n/// @type String\n$has-link: #{'[href]'};\n\n/// CSS-selector for elements with a routerLink attribute\n/// @group Variables\n/// @type String\n$has-router-link: #{'[routerLink]'};\n\n/// CSS-selector for elements with an id attribute\n/// @group Variables\n/// @type String\n$has-id: #{'[id]'};\n\n/// CSS-selector for elements that aren't tabbable (i.e. tabindex is negative)\n/// @group Variables\n/// @type String\n$not-tabbable: #{'[tabindex^=\"-\"]'};\n\n/// CSS-selector for elements that are tabbable (i.e. tabindex isn't negative)\n/// @group Variables\n/// @type String\n$tabbable: #{'[tabindex]'}#{neg($not-tabbable)};\n\n/// CSS-selector for submenu buttons\n/// @group Variables\n/// @type String\n$sub-menu-buttons: #{'button'}#{$has-controls};\n\n/// CSS-selector for submenus\n/// @group Variables\n/// @type String\n$sub-menu: #{$sub-menu-buttons}#{' + ul'}#{$has-id};\n\n/// Value added to all delay variables\n/// @group Variables\n/// @type Number\n$delay-base: 0 !default;\n\n/// Value added to all delay variables\n/// @group Variables\n/// @type Number\n$delay-step: 100 !default;\n\n/// Delay variables\n/// @group Maps\n/// @prop {Number} $delay.instant [0] - Instant: the quickest delay; close or equal to 0\n/// @prop {Number} $delay.fast [100] - Fast: delays that happen quickly\n/// @prop {Number} $delay.med-fast [200] - Med-Fast: delays that happen faster\n/// @prop {Number} $delay.default [300] - Default: delays that are average\n/// @prop {Number} $delay.med-slow [400] - Med-Slow: delays that happen slower\n/// @prop {Number} $delay.slow [500] - Slow: delays that happen slowly\n$delay: (\n instant: $delay-base + $delay-step * 0,\n fast: $delay-base + $delay-step * 1,\n med-fast: $delay-base + $delay-step * 2,\n default: $delay-base + $delay-step * 3,\n med-slow: $delay-base + $delay-step * 4,\n slow: $delay-base + $delay-step * 5\n) !default;\n\n/// Breakpoint variables\n/// @group Maps\n/// @prop {Number} $break.xs [480] - Extra-Small: mobile devices\n/// @prop {Number} $break.sm [768] - Small: small tablets, landscape mobiles\n/// @prop {Number} $break.md [1024] - Medium: small desktops, large tablets\n/// @prop {Number} $break.lg [1200] - Large: large desktops, landscape tablets\n/// @prop {Number} $break.xl [1440] - Extra-Large: larger desktops\n$break: (\n xs: 480,\n sm: 768,\n md: 1024,\n lg: 1200,\n xl: 1440\n) !default;\n\n/// True if Bootstrap5 is used in the project\n/// @group Variables\n/// @type Boolean\n$bootstrap5: false !default;\n@if ($bootstrap5) {\n $break: (\n sm: 576,\n md: 768,\n lg: 992,\n xl: 1200,\n xxl: 1400\n ) !default;\n}\n\n/// Prefixes the provided string with the library name if it isn't already\n/// @group Functions\n/// \n/// @example scss - prefix function\n/// prefix(header) // -> sun-header\n/// \n/// @param {String} $base - the string to be prefixed\n/// @return {String} - a prefixed string\n@function prefix ($base) {\n @if (type-of($base) != 'string') {\n @error 'The prefix function requires a string value.';\n }\n\n $base: string.to-lower-case($base);\n\n @if (string.index($base, $pre) != 1) {\n $base: $pre + $base;\n }\n\n @return $base;\n}\n\n/// Prefixes the provided string with two dashes and the library name if it isn't already\n/// @group Functions\n/// \n/// @example scss - css-prefix function\n/// css-prefix(background) // -> --sun-background\n/// \n/// @param {String} $base - the string to be prefixed\n/// @return {String} - a prefixed string\n@function css-prefix ($base) {\n @if (type-of($base) != 'string') {\n @error 'The css-prefix function requires a string value.';\n }\n\n @while (string.index($base, $dash) == 1) {\n $base: string.slice($base, 2);\n }\n\n @return $dash + $dash + prefix($base);\n}\n\n/// Creates a CSS-var call for the prefixed `$base`\n/// @group Functions\n/// \n/// @example scss - css-var function\n/// css-var(background) // -> var(--sun-background)\n/// \n/// @param {String} $base - the CSS-var to create a call for\n/// @return {String} - a CSS-var call\n@function css-var ($base) {\n @if (type-of($base) != 'string') {\n @error 'The css-var function requires a string value.';\n }\n\n @return var(css-prefix($base));\n}\n\n/// Negates a provided CSS-selector\n/// @group Functions\n/// \n/// @example scss - neg function\n/// neg(.sun-open) // -> :not(.sun-open)\n/// \n/// @param {String} $base - the CSS-selector to negate\n/// @return {String} - a negated CSS-selector\n@function neg ($base) {\n @if (type-of($base) != 'string') {\n @error 'The neg function requires a string value.';\n }\n\n @return ':not(' + $base + ')';\n}\n\n/// Creates a class selector with the library prefix\n/// @group Functions\n/// \n/// @example scss - class function\n/// class(open) // -> .sun-open\n/// \n/// @param {String} $base - the name of the class\n/// @return {String} - a class selector\n@function class($base) {\n @if (type-of($base) != 'string') {\n @error 'The class function requires a string value.';\n }\n\n @return $dot + prefix($base);\n}\n\n/// Creates an id selector with the library prefix\n/// @group Functions\n/// \n/// @example scss - id function\n/// id(header) // -> #sun-header\n/// \n/// @param {String} $base - the name of the id\n/// @param {String} $op - the comparison operator\n/// @return {String} - an id selector\n@function id ($base, $op: '=') {\n @if (type-of($base) != 'string') {\n @error 'The id function requires a string value.';\n }\n @if (type-of($op) != 'string') {\n @error 'The controls function requires a string value for param 2.';\n }\n @if not($op == '=' or $op == '~=' or $op == '|=' or $op == '^=' or $op == '$=' or $op == '*=') {\n @error 'The controls function requires a valid attribute comparison operator for param 2.';\n }\n\n @if ($op == '=') {\n @return $hash + prefix($base);\n }\n @return '[id' + $op + prefix($base) + ']';\n}\n\n/// Creates an aria-controls selector with the library prefix\n/// @group Functions\n/// \n/// @example scss - controls function\n/// controls(header) // -> [aria-controls=sun-header]\n/// \n/// @param {String} $id - the id of the controlled element\n/// @param {String} $op - the comparison operator\n/// @return {String} - an aria-controls selector\n@function controls ($id, $op: '=') {\n @if (type-of($id) != 'string') {\n @error 'The controls function requires a string value for param 1.';\n }\n @if (type-of($op) != 'string') {\n @error 'The controls function requires a string value for param 2.';\n }\n @if not($op == '=' or $op == '~=' or $op == '|=' or $op == '^=' or $op == '$=' or $op == '*=') {\n @error 'The controls function requires a valid attribute comparison operator for param 2.';\n }\n\n @return '[aria-controls' + $op + prefix($id) + ']';\n}\n\n/// Creates an aria-expanded selector\n/// @group Functions\n/// \n/// @example scss - expanded function\n/// expanded(true) // -> [aria-expanded=true]\n/// \n/// @param {Bool} $bool - the value of the selector\n/// @return {String} - an aria-expanded selector\n@function expanded ($bool) {\n @if (type-of($bool) == 'string') {\n $bool: string.to-lower-case($bool);\n\n @if not($bool == 'true' or $bool == 'false') {\n @error 'The expanded function requires a boolean value.';\n }\n } @else if (type-of($bool) != 'bool') {\n @error 'The expanded function requires a boolean value.';\n }\n \n @return '[aria-expanded=' + $bool + ']';\n}\n\n/// Creates an aria-hidden selector\n/// @group Functions\n/// \n/// @example scss - hidden function\n/// hidden(true) // -> [aria-hidden=true]\n/// \n/// @param {Bool} $bool - the value of the selector\n/// @return {String} - an aria-hidden selector\n@function hidden ($bool) {\n @if (type-of($bool) == 'string') {\n $bool: string.to-lower-case($bool);\n\n @if not($bool == 'true' or $bool == 'false') {\n @error 'The hidden function requires a boolean value. Received: ' + $bool;\n }\n } @else if (type-of($bool) != 'bool') {\n @error 'The hidden function requires a boolean value. Received: ' + $bool;\n }\n \n @return '[aria-hidden=' + $bool + ']';\n}\n\n/// Converts a number to ms\n/// @group Functions\n/// \n/// @example scss - ms function\n/// ms(100) // -> 100ms\n/// \n/// @param {Number} $val - the number of ms to return\n/// @return {Number} the number as ms\n@function ms ($val) {\n @if (type-of($val) != 'number') {\n @error 'The ms function requires a number value.';\n }\n\n @return $val * 1ms;\n}\n\n/// Converts a number to px\n/// @group Functions\n/// \n/// @example scss - px function\n/// px(100) // -> 100px\n/// \n/// @param {Number} $val - the number of px to return\n/// @return {Number} - the number as px\n@function px ($val) {\n @if (type-of($val) != 'number') {\n @error 'The px function requires a number value.';\n }\n\n @return $val * 1px;\n}\n\n/// Removes the unit from the given value\n/// @group Functions\n/// \n/// @example scss - strip-unit function\n/// strip-unit(100px) // -> 100\n/// \n/// @param {Number} $val - the value to strip\n/// @return {Number} - the number without units\n@function strip-unit($val) {\n @if (type-of($val) != 'number') {\n @error 'The strip-unit function requires a number value.';\n }\n\n @return math.div($val, $val * 0 + 1);\n}\n\n/// Returns the percentage of the given values\n/// @group Functions\n/// \n/// @example scss - percent function\n/// percent(100, 200) // -> 50%\n/// \n/// @param {Number} $dividend - the value that will be devided\n/// @param {Number} $divisor - the value that will devided by\n/// @return {Number} - the percentage of the given values\n/// @throws {Error} - if the values are not numbers\n/// @throws {Error} - if the divisor is 0\n@function percent($dividend, $divisor, $padding: 0) {\n @if (type-of($dividend) != 'number' or type-of($divisor) != 'number' or type-of($padding) != 'number') {\n @error 'The percent function requires number parameters.';\n }\n @if ($divisor == 0) {\n @error 'The percent function requires a non-zero value for param 2.';\n }\n @if (strip-unit($padding) != 0) {\n @return calc((($dividend * 100%) - $padding) / $divisor) + '%';\n }\n @return math.div($dividend * 100%, $divisor);\n}\n\n/// Returns the requested delay value as ms\n/// @group Functions\n/// \n/// @example scss - delay function\n/// delay(default) // -> 300ms\n/// \n/// @param {Number} $key - the key of the delay to use\n/// @return {Number} - the delay value as ms\n@function delay($key) {\n @if not(map-has-key($delay, $key)) {\n @error 'The delay function requires one of the following values: #{map-keys($delay)}';\n }\n\n @return ms(map-get($delay, $key));\n}\n\n/// Returns the requested breakpoint value as px\n/// @group Functions\n/// \n/// @example scss - break function\n/// break(md) // -> 1024px\n/// \n/// @param {Number} $key - the key of the breakpoint to use\n/// @return {Number} - the breakpoint value as px\n@function break($key) {\n @if not(map-has-key($break, $key)) {\n @error 'The break function requires one of the following values: #{map-keys($break)}';\n }\n\n @return px(map-get($break, $key));\n}\n\n/// Creates a prefixed CSS var definition\n/// @group Mixins\n/// \n/// @example scss - css-var mixin\n/// @include css-var(bg, black) // -> --sun-bg: black;\n/// \n/// @param {String} $key - the key of the CSS var\n/// @param {Any} $val - the value of the CSS var\n/// @output a prefixed CSS var definition\n@mixin css-var ($key, $val) {\n #{css-prefix($key)}: #{$val};\n}\n\n/// Creates a prefixed CSS var reference\n/// @group Mixins\n/// \n/// @example scss - css-var-ref mixin\n/// @include css-var-ref(fill, bg) // -> --sun-fill: var(--sun-bg);\n/// \n/// @param {String} $key1 - the key of the new CSS var to define\n/// @param {String} $key2 - the key of the referenced CSS var\n/// @output a prefixed CSS var reference\n@mixin css-var-ref ($key1, $key2) {\n @include css-var($key1, css-var($key2));\n}\n\n/// Wraps the provided content in a media query\n/// @group Mixins\n/// \n/// @example scss - break mixin\n/// @include break(md) { // -> @media (min-width: 1024px) {\n/// display: none; // display: none;\n/// } // }\n/// \n/// @param {String} $min - the key of the breakpoint to use with min-width\n/// @param {String} $max - the key of the breakpoint to use with max-width\n/// @output the provided content wrapped in a media query\n@mixin break ($min, $max: null) {\n @if not(map-has-key($break, $min) and (type-of($max) == 'null' or map-has-key($break, $max))) {\n @error 'The break mixin requires one or two of the following values: #{map-keys($break)}';\n }\n\n @if (map-has-key($break, $max)) {\n @media (min-width: break($min)) and (max-width: break($max)) {\n @content;\n }\n } @else {\n @media (min-width: break($min)) {\n @content;\n }\n }\n}\n\n/// Creates utility selectors for a given property at each breakpoint\n/// @group Mixins\n/// \n/// @example scss- break-util mixin\n/// @include break-util(display, flex); // -> & {\n/// // display: flex;\n/// // \n/// // &-xs {\n/// // display: none;\n/// // @include break(xs) {\n/// // display: flex;\n/// // }\n/// // }\n/// // &-to-xs {\n/// // display: flex;\n/// // @include break(xs) {\n/// // display: none;\n/// // }\n/// // }\n/// // ...\n/// // &-xl {\n/// // display: none;\n/// // @include break(xl) {\n/// // display: flex;\n/// // }\n/// // }\n/// // &-to-xl {\n/// // display: flex;\n/// // @include break(xl) {\n/// // display: none;\n/// // }\n/// // }\n/// // }\n///\n/// @param {String} $prop - the property to toggle\n/// @param {Any} $val - the active value of the property\n/// @param {Any} $none - the inactive value of the property\n/// @output utility selectors for the given property at each breakpoint\n@mixin break-util ($prop, $val, $none: \"none\") {\n @if (type-of($prop) != 'string') {\n @error 'The break-util mixin requires a string for the $prop argument.';\n }\n\n & {\n #{$prop}: #{$val};\n\n @each $key, $width in $break {\n &-#{$key} {\n #{$prop}: #{$none};\n\n @include break($key) {\n #{$prop}: #{$val};\n }\n }\n\n &-to-#{$key} {\n #{$prop}: #{$val};\n\n @include break($key) {\n #{$prop}: #{$none};\n }\n }\n }\n }\n}\n\n/// Generates a property with a fluid value between specified screen sizes\n/// @group Mixins\n/// \n/// @example scss - fluid mixin\n/// @include fluid(font-size, 480px, 1024px, 18px, 16px); // -> & {\n/// // font-size: 16px;\n/// // @media (min-width: 480px) {\n/// // font-size: calc(16px + 2 * ((100vw - 480px) / 544));\n/// // }\n/// // @media (min-width: 1024px) {\n/// // font-size: 18px;\n/// // }\n/// // }\n/// \n/// @param {String} $prop - the property whose value will be fluid\n/// @param {String} $min-vw - the minimum screen width of the fluid property\n/// @param {String} $max-vw - the maximum screen width of the fluid property\n/// @param {String} $min-size - the minimum value of the fluid property\n/// @param {String} $max-size - the maximum value of the fluid property\n/// @output the definitions for the property at different screen sizes\n@mixin fluid ($prop, $min-vw, $max-vw, $min-size, $max-size) {\n $u1: unit($min-vw);\n $u2: unit($max-vw);\n $u3: unit($min-size);\n $u4: unit($max-size);\n\n @if (type-of($prop) != 'string') {\n @error 'The fluid mixin requires a string for the $prop argument.';\n }\n @if not(type-of($u1) == 'string' and type-of($u2) == 'string' and type-of($u3) == 'string' and type-of($u4) == 'string') {\n @error 'The fluid mixin requires numbers for the width and size arguments.';\n }\n @if not($u1 == $u2 and $u1 == $u3 and $u1 == $u4) {\n @error 'The fluid mixin requires width and size arguments with the same units.';\n }\n\n // See if you can get rid of this wrapping & selector\n & {\n #{$prop}: $min-size;\n @media (min-width: $min-vw) {\n #{$prop}: calc(#{$min-size} + #{strip-unit($max-size - $min-size)} * ((100vw - #{$min-vw}) / #{strip-unit($max-vw - $min-vw)}));\n }\n @media (min-width: $max-vw) {\n #{$prop}: $max-size;\n }\n }\n}\n\n/// Generates css varibles for lighter, darker, or both variations\n/// @group Mixins\n///\n/// @param {String} $name - the name of the color\n/// @param {Color} $color - the color to generate variations for\n/// @param {String} $type - the type of variation to generate\n/// @param {Number} $number - the number of variations to generate\n/// @param {String} $amount - the amount to vary the color by\n/// @param {Boolean} $alpha - whether to generate alpha variations\n/// @output css variables for different shades of the source color\n@mixin shades ($name, $color, $type: both, $number: 7, $amount: 10%, $alpha: false) {\n @if (type-of($name) != 'string') {\n @error 'The shades mixin requires a string for the $name argument.';\n }\n @if (type-of($color) != 'color') {\n @error 'The shades mixin requires a color for the $color argument.';\n }\n @if not($type == lighten or $type == darken or $type == both) {\n @error 'The shades mixin requires a string of \"lighten\", \"darken\", or \"both\" for the $type argument.';\n }\n @if (type-of($number) != 'number') {\n @error 'The shades mixin requires a number for the $number argument.';\n }\n @if (type-of($alpha) == 'string') {\n $bool: string.to-lower-case($bool);\n\n @if not($bool == 'true' or $bool == 'false') {\n @error 'The shades mixin requires a boolean value for the $alpha argument. Received: ' + $bool;\n }\n } @else if (type-of($alpha) != 'bool') {\n @error 'The shades mixin requires a boolean value for the $alpha argument. Received: ' + $bool;\n }\n\n @include css-var(#{$name}, $color);\n\n @if ($alpha) {\n @if ($type == lighten) {\n @for $i from 0 through $number - 1 {\n @include css-var(#{$name}-#{$i}, color.adjust($color, $alpha: -$i * math.div($amount, 100%)));\n }\n } @else if ($type == darken) {\n @for $i from 0 through $number - 1 {\n @include css-var(#{$name}-#{$i}, color.adjust($color, $alpha: $i * math.div($amount, 100%)));\n }\n } @else if ($type == both) {\n $num-light: floor(math.div($number, 2));\n @for $i from 0 through $num-light - 1 {\n @include css-var(#{$name}-#{$i}, color.adjust($color, $alpha: -$i * math.div($amount, 100%)));\n }\n @include css-var(#{$name}-#{$num-light}, $color);\n @for $i from $num-light + 1 through $number - 1 {\n @include css-var(#{$name}-#{$i}, color.adjust($color, $alpha: ($num-light - $i) * math.div($amount, 100%)));\n }\n }\n } @else {\n @if ($type == lighten) {\n @for $i from 0 through $number - 1 {\n @include css-var(#{$name}-#{$i}, lighten($color, $i * $amount));\n }\n } @else if ($type == darken) {\n @for $i from 0 through $number - 1 {\n @include css-var(#{$name}-#{$i}, darken($color, $i * $amount));\n }\n } @else if ($type == both) {\n $num-light: floor(math.div($number, 2));\n @for $i from 0 through $num-light - 1 {\n @include css-var(#{$name}-#{$i}, lighten($color, ($num-light - $i) * $amount));\n }\n @include css-var(#{$name}-#{$num-light}, $color);\n @for $i from $num-light + 1 through $number - 1 {\n @include css-var(#{$name}-#{$i}, darken($color, ($i - $num-light) * $amount));\n }\n }\n }\n}\n\n/// TODO: Document this\n@mixin states ($states...) {\n @each $state in $states {\n @if (type-of($state) != 'string') {\n @error 'The states mixin requires a string for each state argument.';\n }\n @if not($state == 'hover' or $state == 'focus' or $state == 'active' or $state == 'visited' or $state == 'disabled') {\n @error 'The states mixin requires a string of \"hover\", \"focus\", \"active\", \"visited\", or \"disabled\" for each state argument.';\n }\n }\n\n @if (index($states, 'hover') != null) {\n &:hover {\n @content;\n }\n }\n @if (index($states, 'focus') != null) {\n &:focus {\n @content;\n }\n }\n @if (index($states, 'active') != null) {\n &:active, &#{class(active)} {\n @content;\n }\n }\n @if (index($states, 'visited') != null) {\n &:visited {\n @content;\n }\n }\n @if (index($states, 'disabled') != null) {\n &:disabled {\n @content;\n }\n }\n}\n","/// cards.scss - Card styles\n/// @author App Art Mint LLC\n/// \n/// @group Cards\n@charset 'utf-8';\n\n/// Imports\n@use '../util' as *;\n\n/// Variables\n$border-radius: 1rem;\n$padding: 1.5rem;\n$box-shadow: 0 0 2rem -0.5rem #{css-var(glow-2)};\n\n/// Card Styles\n#{class(card)} {\n display: flex;\n flex-direction: column;\n margin: $padding * 2 0;\n border-radius: $border-radius;\n box-shadow: $box-shadow;\n overflow: hidden;\n\n @include break(sm) {\n flex-direction: row;\n\n &#{class(reverse)} {\n flex-direction: row-reverse;\n }\n }\n\n &#{class(stagger)} {\n position: relative;\n\n @include break(sm) {\n flex-direction: row-reverse;\n border-radius: 0;\n box-shadow: none;\n overflow: visible;\n\n #{class(image)} {\n position: absolute;\n top: 0;\n left: 0;\n width: 50%;\n height: calc(100% - 3rem);\n border-radius: $border-radius;\n box-shadow: $box-shadow;\n\n img {\n height: 100%;\n object-fit: cover;\n }\n }\n\n #{class(content)} {\n width: calc(50% + $padding * 2);\n margin-top: $padding * 2;\n border-radius: $border-radius;\n box-shadow: $box-shadow;\n }\n }\n\n &#{class(reverse)} {\n @include break(sm) {\n flex-direction: row;\n\n #{class(image)} {\n left: auto;\n right: 0;\n }\n }\n }\n }\n\n & > #{class(image)}:only-child, & > mint-image:only-child #{class(image)} {\n width: 100%;\n }\n\n #{class(image)} {\n overflow: hidden;\n\n @include break(sm) {\n width: 50%;\n }\n\n img {\n display: block;\n }\n }\n\n #{class(content)} {\n padding: $padding;\n background: css-var(black-2);\n\n @include break(sm) {\n width: 50%;\n }\n\n :first-child {\n margin-top: 0;\n }\n\n :last-child {\n margin-bottom: 0;\n }\n\n #{class(buttons)} {\n display: flex;\n align-items: center;\n\n & > * {\n margin-right: 0.5rem;\n }\n\n :last-child {\n margin-right: 0;\n }\n }\n }\n}\n","/// styles.scss - Header styles\n/// @author App/Art Mint\n/// \n/// @group Main\n@charset 'utf-8';\n\n/// Imports\n@use '../util' as *;\n\n/// CSS variables\n:root {\n @include css-var(delay-instant, delay(instant));\n @include css-var(delay-fast, delay(fast));\n @include css-var(delay-med-fast, delay(med-fast));\n @include css-var(delay-default, delay(default));\n @include css-var(delay-med-slow, delay(med-slow));\n @include css-var(delay-slow, delay(slow));\n}\n\n/// Styles\n#{class(sr-only)} {\n position: absolute !important;\n width: 1px !important;\n height: 1px !important;\n padding: 0 !important;\n margin: -1px !important;\n overflow: hidden !important;\n clip: rect(0, 0, 0, 0) !important;\n border: 0 !important;\n}\n\n#{id(header)} {\n display: flex;\n flex-direction: column;\n position: relative;\n width: 100%;\n color: css-var(fg);\n background-color: css-var(header-bg);\n z-index: 1000;\n\n &#{class(js)} {\n align-items: center;\n flex-direction: row;\n height: css-var(height);\n padding: calc((css-var(height) - css-var(btn-height)) / 2);\n\n #{controls(wrapper)} {\n display: inline-block;\n }\n\n #{$has-controls + neg(controls(wrapper))} {\n & + ul {\n display: flex;\n flex-direction: column;\n height: 0;\n overflow: hidden;\n transition: height css-var(delay-default), margin css-var(delay-default);\n }\n \n &#{$has-expanded + neg(expanded(true))} {\n & + ul {\n margin: 0;\n }\n }\n }\n\n &#{class(fixed)} {\n position: fixed;\n top: 0;\n left: 0;\n }\n \n #{id(wrapper)} {\n background: css-var(bg);\n transition-duration: css-var(delay-default);\n transition-property: top, right, bottom, left;\n overflow: auto;\n }\n }\n\n &.mint-right {\n #{id(wrapper)} {\n top: css-var(height);\n right: -100%;\n left: unset;\n\n &#{class(open)} {\n right: 0;\n }\n }\n }\n\n &.mint-bottom {\n #{id(wrapper)} {\n top: unset;\n bottom: -100%;\n\n &#{class(open)} {\n bottom: 0;\n }\n }\n }\n\n &.mint-left {\n #{id(wrapper)} {\n top: css-var(height);\n left: -100%;\n\n &#{class(open)} {\n left: 0;\n }\n }\n }\n\n &::before {\n content: '';\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: css-var(height);\n background: css-var(header-bg);\n z-index: -1;\n }\n \n nav {\n & > ul {\n display: flex;\n flex-direction: column;\n }\n }\n \n ul {\n list-style: none;\n margin-top: 0;\n margin-bottom: 1rem;\n padding-left: 0;\n }\n \n a, button {\n display: flex;\n align-items: center;\n padding: calc((css-var(height) - css-var(btn-height)) / 2);\n }\n \n #{controls(wrapper)} {\n display: none;\n }\n \n #{id(logo)} {\n margin: calc((css-var(height) - css-var(btn-height)) / 2);\n padding: 0;\n }\n\n #{id(wrapper)} {\n display: flex;\n flex-direction: column;\n position: fixed;\n top: -100%;\n left: 0;\n width: 100%;\n height: calc(100vh - css-var(height));\n transition: none;\n z-index: -2;\n \n &#{class(open)} {\n top: css-var(height);\n }\n }\n\n #{id(widgets)} {\n position: absolute;\n top: 0;\n right: 0;\n height: css-var(height);\n }\n \n #{class(dropdown)} {\n background: css-var(header-bg);\n\n button {\n display: flex;\n align-items: center;\n justify-content: center;\n min-width: css-var(height);\n height: css-var(height);\n padding: calc((css-var(height) - css-var(btn-height)) / 2);\n }\n\n li {\n padding: calc((css-var(height) - css-var(btn-height)) / 2);\n line-height: 1;\n cursor: pointer;\n }\n }\n}\n","/// animations.scss - Global animations\n/// @author App/Art Mint\n/// \n/// @group Animations\n@charset 'utf-8';\n\n/// Imports\n@use 'sass:math';\n@use '../util' as *;\n\n/// Animations\n/// Cycle through instagram colors\n@keyframes instafade {\n @for $i from 0 through 6 {\n $percent: percentage(math.div($i, 6));\n #{$percent} {\n color: css-var(instagram-#{$i});\n }\n }\n}\n\n/// CSS variables\n:root {\n @include css-var(delay-instant, delay(instant));\n @include css-var(delay-fast, delay(fast));\n @include css-var(delay-med-fast, delay(med-fast));\n @include css-var(delay-default, delay(default));\n @include css-var(delay-med-slow, delay(med-slow));\n @include css-var(delay-slow, delay(slow));\n}\n\n#{class(fall-in)} {\n opacity: 0;\n transform: translateY(-100px);\n transition: all delay(slow), box-shadow delay(slow) delay(med-slow) !important;\n pointer-events: none;\n\n &#{class(show)}#{neg(class(loading))} {\n opacity: 1;\n transform: translateY(0%);\n pointer-events: auto;\n }\n\n &#{neg(class(show))}, &#{class(loading)} {\n box-shadow: 0 0 0 0 transparent !important;\n }\n\n &#{class(fast)} {\n transition: all delay(fast), box-shadow delay(fast) delay(fast) !important;\n }\n}\n\n#{class(shine)} {\n position: relative;\n overflow: hidden;\n\n @include states(hover, focus, active) {\n &::after {\n transition-duration: delay(default);\n transform: translate(100%, -100%);\n }\n }\n\n &::after {\n content: '';\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n transform: translate(-100%, 100%);\n background: linear-gradient(45deg, rgba(255,255,255,0) 0%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0) 100%);\n transition: transform delay(med-fast) ease-in;\n }\n}\n","/// Imports\n@use '../util' as *;\n\n/// Global styles\n* {\n &, &::before, &::after {\n box-sizing: border-box;\n }\n}\n\nhtml, body {\n color: css-var(fore);\n background-color: css-var(back);\n overflow-x: hidden;\n}\n\nhtml, body, main {\n width: 100%;\n min-height: 100vh;\n margin: 0;\n padding: 0;\n}\n\nmain {\n display: flex;\n flex-direction: column;\n position: relative;\n z-index: 1000;\n}\n\nnav {\n a {\n display: block;\n text-decoration: none;\n }\n\n ul {\n display: flex;\n margin: 0;\n padding: 0;\n list-style: none;\n\n & > li > ul {\n flex-direction: column;\n }\n }\n}\n\na {\n &[href^='mailto:'], &[href^='tel:'], &[href^='sms:'] {\n white-space: nowrap;\n }\n\n i {\n margin-left: 0.25rem;\n }\n}\n\nbutton, a[routerLink] {\n cursor: pointer;\n}\n\na, button {\n font-size: inherit;\n}\n\nimg {\n width: 100%;\n}\n\n#{class(glow)} {\n box-shadow: 0 0 2rem -0.5rem css-var(glow-2);\n}\n\n#{class(noglow)} {\n box-shadow: none !important;\n}\n","/// Imports\n@use '../util' as *;\n\n/// Structure styles\n#{class(pad)} {\n @include break-util(padding, 1rem, 0);\n}\n\n#{class(margin)} {\n @include break-util(margin, 1rem, 0);\n\n &-auto {\n margin-left: auto;\n margin-right: auto;\n\n &-v {\n margin: 1rem auto;\n\n @for $i from 0 through 6 {\n &#{$i} {\n margin: 1rem * $i auto;\n }\n }\n }\n }\n\n &-v {\n margin: 1rem 0;\n\n @for $i from 0 through 6 {\n &#{$i} {\n margin: 1rem * $i 0;\n }\n }\n }\n\n &-h {\n margin: 0 1rem;\n\n @for $i from 0 through 6 {\n &#{$i} {\n margin: 0 1rem * $i;\n }\n }\n }\n}\n\nsection {\n &#{class(smaller)} {\n margin-left: auto;\n margin-right: auto;\n max-width: break(xs);\n }\n\n &#{class(small)} {\n margin-left: auto;\n margin-right: auto;\n max-width: break(sm);\n }\n\n &#{class(default)} {\n margin-left: auto;\n margin-right: auto;\n max-width: break(md);\n }\n\n &#{class(big)} {\n margin-left: auto;\n margin-right: auto;\n max-width: break(lg);\n }\n\n &#{class(bigger)} {\n margin-left: auto;\n margin-right: auto;\n max-width: break(xl);\n }\n}\n\n#{class(center)} {\n align-items: center;\n justify-content: center;\n text-align: center;\n}\n","/// text.scss - Text styles\n/// @author App/Art Mint\n/// \n/// @group Animations\n@charset 'utf-8';\n\n/// Imports\n@use '../util' as *;\n\n/// Fonts\n$font-primary: 'Palanquin' !default;\n$font-secondary: 'JosefinSans' !default;\n$font-backups: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, 'Noto Sans', sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji' !default;\n\n/// Font Sizes\n$font-size-mobile: (\n h1: 2.5rem,\n h2: 2rem,\n h3: 1.75rem,\n h4: 1.5rem,\n h5: 1.25rem,\n h6: 1.125rem,\n p: 1rem,\n) !default;\n$font-size-desktop: (\n h1: 3rem,\n h2: 2.5rem,\n h3: 2rem,\n h4: 1.75rem,\n h5: 1.5rem,\n h6: 1.25rem,\n p: 1.125rem,\n) !default;\n\n/// Text Styles\nhtml, body {\n font-family: $font-primary, $font-backups;\n font-size: 1rem;\n\n @include break(md) {\n font-size: 1.125rem;\n }\n}\n\n@for $i from 1 through 6 {\n h#{$i}, #{class(h#{$i})} {\n font-family: $font-secondary, $font-backups;\n }\n}\n\n@each $tag in map-keys($font-size-mobile) {\n #{$tag}, #{class($tag)} {\n margin: 1rem 0;\n font-size: map-get($font-size-mobile, $tag);\n\n @include break(md) {\n font-size: map-get($font-size-desktop, $tag);\n }\n }\n}\n","/// themes.scss - Styles for light and dark themes\n/// @author App/Art Mint\n/// \n/// @group Themes\n@charset 'utf-8';\n\n/// Imports\n@use '../util' as *;\n\n/// Global theme\n:root {\n /// Global Colors\n /// Brands\n @include css-var(bitcoin, $bitcoin);\n @include css-var(ethereum, $ethereum);\n @include css-var(venmo, $venmo);\n @include css-var(facebook, $facebook);\n @include css-var(youtube, $youtube);\n @include css-var(itunes, $itunes);\n @include css-var(spotify, $spotify);\n @include css-var(amazon-0, $amazon-0);\n @include css-var(amazon-1, $amazon-1);\n @include css-var(napster-0, $napster-0);\n @include css-var(napster-1, $napster-1);\n @include css-var(google-play-0, $google-play-0);\n @include css-var(google-play-1, $google-play-1);\n @include css-var(google-play-2, $google-play-2);\n @include css-var(instagram-0, $instagram-0);\n @include css-var(instagram-1, $instagram-1);\n @include css-var(instagram-2, $instagram-2);\n @include css-var(instagram-3, $instagram-3);\n @include css-var(instagram-4, $instagram-4);\n @include css-var(instagram-5, $instagram-5);\n @include css-var(instagram-6, $instagram-6);\n\n /// Application Colors\n @include shades('black', $black, lighten);\n @include shades('white', $white, darken);\n @include shades(glow, $trans-light, darken, 7, 10%, true);\n @include shades(shadow, $trans-dark, darken, 7, 10%, true);\n\n @include shades(brand, $brand);\n @include shades(accent, $accent);\n @include shades(success, $success);\n @include shades(danger, $danger);\n @include shades(warning, $warning);\n @include shades(info, $info);\n}\n\n/// Light theme\n@mixin light-theme {\n @include css-var(fore, $fore);\n @include css-var(back, $back);\n}\n\n/// Dark theme\n@mixin dark-theme {\n @include css-var(fore, $back);\n @include css-var(back, $fore);\n}\n\n/// Apply themes\n:root {\n @if ($theme-default == light) {\n @include light-theme;\n } @else {\n @include dark-theme;\n }\n}\n\n#{class(dark)} {\n @include dark-theme;\n color: css-var(fore);\n}\n\n#{class(light)} {\n @include light-theme;\n color: css-var(fore);\n}\n\na {\n color: css-var(brand);\n\n @include states(hover, focus, active) {\n color: css-var(accent-0);\n \n .fa-github {\n color: css-var(white-1);\n }\n\n .fa-youtube {\n color: css-var(youtube);\n }\n\n .fa-instagram {\n color: css-var(instagram-0)\n }\n\n .fa-bitcoin {\n color: css-var(bitcoin);\n }\n\n .fa-ethereum {\n color: css-var(ethereum);\n }\n\n .fa-vimeo {\n color: css-var(venmo);\n }\n }\n \n i {\n transition: color delay(slow);\n }\n}\n"],"names":[],"sourceRoot":""}
@@ -0,0 +1,8 @@
1
+ /*!**************************************************************************************************************************************************************************************************!*\
2
+ !*** css ./node_modules/css-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js!./node_modules/webpack-shebang-plugin/loader.js?{"shebangRegExp":{},"chmod":493}!./src/scss/noscript.scss ***!
3
+ \**************************************************************************************************************************************************************************************************/
4
+ #mint-header #mint-wrapper {
5
+ position: unset !important;
6
+ }
7
+
8
+ /*# sourceMappingURL=noscript.css.map*/
@@ -0,0 +1 @@
1
+ {"version":3,"file":"css/noscript.css","mappings":";;;AAUI;EACI;AATR,C","sources":["webpack://mint/./src/scss/noscript.scss"],"sourcesContent":["/// noscript.scss - Styles for when JavaScript is disabled\n/// @author App/Art Mint\n/// \n/// @group Main\n@charset 'utf-8';\n\n/// Imports\n@use './imports/util' as *;\n\n#{id(header)} {\n #{id(wrapper)} {\n position: unset !important;\n }\n}\n"],"names":[],"sourceRoot":""}
@@ -0,0 +1,3 @@
1
+ #mint-header #mint-wrapper{position:unset !important}
2
+
3
+ /*# sourceMappingURL=noscript.min.css.map*/
@@ -0,0 +1 @@
1
+ {"version":3,"file":"css/noscript.min.css","mappings":"AAUI,2BACI,0B","sources":["webpack://mint/./src/scss/noscript.scss"],"sourcesContent":["/// noscript.scss - Styles for when JavaScript is disabled\n/// @author App/Art Mint\n/// \n/// @group Main\n@charset 'utf-8';\n\n/// Imports\n@use './imports/util' as *;\n\n#{id(header)} {\n #{id(wrapper)} {\n position: unset !important;\n }\n}\n"],"names":[],"sourceRoot":""}
@@ -0,0 +1,110 @@
1
+ /**
2
+ * Main header functionality
3
+ * @public
4
+ */
5
+ export declare class mintHeader {
6
+ /**
7
+ * Frequently-referenced elements
8
+ */
9
+ el: {
10
+ [key: string]: HTMLElement | null;
11
+ };
12
+ /**
13
+ * Initializes and closes the menu
14
+ */
15
+ constructor(settings?: {
16
+ [key: string]: any;
17
+ });
18
+ /**
19
+ * Adds elements to {@link el | `this.el`}
20
+ */
21
+ attachElements(): void;
22
+ /**
23
+ * Adds events to the dom
24
+ */
25
+ attachEvents(): void;
26
+ /**
27
+ * Adds classes that inform the styles that javascript is enabled
28
+ */
29
+ enableJavascript(): void;
30
+ /**
31
+ * Sets the state of the mobile menu
32
+ * @param open - `true` to open the menu or `false` to close it
33
+ */
34
+ setMobileMenu(open?: boolean): void;
35
+ /**
36
+ * Toggles the state of the mobile menu
37
+ */
38
+ toggleMobileMenu(): void;
39
+ /**
40
+ * Sets the state of the provided button's menu
41
+ * @param button - Button element to set
42
+ * @param open - `true` to open the menu or `false` to close it
43
+ */
44
+ setMenu(button?: HTMLElement | null, open?: boolean): void;
45
+ /**
46
+ * Toggles the state of the provided button's menu
47
+ * @param button - Button element to toggle
48
+ */
49
+ toggleMenu(button?: HTMLElement | null): void;
50
+ /**
51
+ * Closes all submenus of the provided button's menu
52
+ * @param button - Button element of the parent menu
53
+ */
54
+ closeSubMenus(button?: HTMLElement | null): void;
55
+ /**
56
+ * Closes all submenus of the n4vbar
57
+ */
58
+ closeAllMenus(): void;
59
+ /**
60
+ * Opens the menu closest to the document's focus
61
+ */
62
+ openClosestMenu(): void;
63
+ /**
64
+ * Closes the menu closest to the document's focus
65
+ */
66
+ closeClosestMenu(): void;
67
+ /**
68
+ * Toggles the menu closest to the document's focus
69
+ */
70
+ toggleClosestMenu(): void;
71
+ /**
72
+ * Closes the mobile menu when the window resizes
73
+ */
74
+ eHandleResize(): void;
75
+ /**
76
+ * Closes all submenus when the page is scrolled
77
+ */
78
+ eHandleScroll(): void;
79
+ /**
80
+ * Sends the focus to the menu button after tabbing past the last menu item
81
+ * @param e - Keyboard event
82
+ */
83
+ eWrapTab(e: KeyboardEvent): void;
84
+ /**
85
+ * Handles keypresses on n4vbar buttons
86
+ * @param e - Keyboard event
87
+ */
88
+ eHandleButtonKeypress(e: KeyboardEvent): void;
89
+ /**
90
+ * Handles keypresses on n4vbar links
91
+ * @param e - Keyboard event
92
+ */
93
+ eHandleLinkKeypress(e: KeyboardEvent): void;
94
+ /**
95
+ * Handles keypresses on the n4vbar
96
+ * @param e - Keyboard event
97
+ */
98
+ eHandleKeypress(e: KeyboardEvent): void;
99
+ /**
100
+ * Toggles the mobile menu
101
+ */
102
+ eToggleMobileMenu(): void;
103
+ /**
104
+ * Toggles the clicked submenu
105
+ * @param e - Mouse event
106
+ */
107
+ eToggleMenu(e: MouseEvent): void;
108
+ }
109
+ export default mintHeader;
110
+ //# sourceMappingURL=header.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"header.d.ts","sourceRoot":"","sources":["../../../../src/ts/imports/components/header.ts"],"names":[],"mappings":"AAQA;;;GAGG;AACH,qBAAa,UAAU;IACnB;;OAEG;IACH,EAAE,EAAE;QAAC,CAAC,GAAG,EAAE,MAAM,GAAG,WAAW,GAAG,IAAI,CAAA;KAAC,CAAM;IAE7C;;OAEG;gBACU,QAAQ,CAAC,EAAE;QAAC,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;KAAC;IAa5C;;OAEG;IACH,cAAc,IAAM,IAAI;IAOxB;;OAEG;IACH,YAAY,IAAM,IAAI;IAmBtB;;OAEG;IACH,gBAAgB,IAAM,IAAI;IAI1B;;;OAGG;IACH,aAAa,CAAE,IAAI,GAAE,OAAe,GAAI,IAAI;IAgC5C;;OAEG;IACH,gBAAgB,IAAM,IAAI;IAI1B;;;;OAIG;IACH,OAAO,CAAE,MAAM,CAAC,EAAE,WAAW,GAAG,IAAI,EAC3B,IAAI,GAAE,OAAe,GAAI,IAAI;IActC;;;OAGG;IACH,UAAU,CAAE,MAAM,CAAC,EAAE,WAAW,GAAG,IAAI,GAAI,IAAI;IAI/C;;;OAGG;IACH,aAAa,CAAE,MAAM,CAAC,EAAE,WAAW,GAAG,IAAI,GAAI,IAAI;IAWlD;;OAEG;IACH,aAAa,IAAM,IAAI;IAOvB;;OAEG;IACH,eAAe,IAAM,IAAI;IAezB;;OAEG;IACH,gBAAgB,IAAM,IAAI;IAc1B;;OAEG;IACH,iBAAiB,IAAM,IAAI;IAQ3B;;OAEG;IACH,aAAa,IAAM,IAAI;IAIvB;;OAEG;IACH,aAAa,IAAM,IAAI;IAIvB;;;OAGG;IACH,QAAQ,CAAE,CAAC,EAAE,aAAa,GAAI,IAAI;IASlC;;;OAGG;IACH,qBAAqB,CAAE,CAAC,EAAE,aAAa,GAAI,IAAI;IAsB/C;;;OAGG;IACH,mBAAmB,CAAE,CAAC,EAAE,aAAa,GAAI,IAAI;IAgB7C;;;OAGG;IACH,eAAe,CAAE,CAAC,EAAE,aAAa,GAAI,IAAI;IAezC;;OAEG;IACH,iBAAiB,IAAM,IAAI;IAI3B;;;OAGG;IACH,WAAW,CAAE,CAAC,EAAE,UAAU,GAAI,IAAI;CAGrC;AACD,eAAe,UAAU,CAAC"}
@@ -0,0 +1,10 @@
1
+ /**
2
+ * Side Enum
3
+ */
4
+ export declare enum mintSide {
5
+ Top = 0,
6
+ Right = 1,
7
+ Bottom = 2,
8
+ Left = 3
9
+ }
10
+ //# sourceMappingURL=enum.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"enum.d.ts","sourceRoot":"","sources":["../../../src/ts/imports/enum.ts"],"names":[],"mappings":"AAAA;;GAEG;AACF,oBAAY,QAAQ;IACjB,GAAG,IAAA;IACH,KAAK,IAAA;IACL,MAAM,IAAA;IACN,IAAI,IAAA;CACP"}
@@ -0,0 +1,32 @@
1
+ /**
2
+ * Color
3
+ */
4
+ export declare class mintColor {
5
+ protected static hexBase: number;
6
+ protected static hexMax: string;
7
+ r: number;
8
+ g: number;
9
+ b: number;
10
+ a: number;
11
+ constructor(args: {
12
+ [key: string]: number | string;
13
+ });
14
+ /**
15
+ * Constructor from a string argument
16
+ */
17
+ protected stringConstructor(str: string): void;
18
+ /**
19
+ * Constructor from a hex argument
20
+ */
21
+ protected hexConstructor(hex: string): void;
22
+ /**
23
+ * Constructor from an rgba argument
24
+ */
25
+ protected rgbConstructor(rgb: string): void;
26
+ /**
27
+ * Returns the perceived brightness of the color
28
+ */
29
+ getBrightness(): number;
30
+ }
31
+ export default mintColor;
32
+ //# sourceMappingURL=color.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"color.d.ts","sourceRoot":"","sources":["../../../../src/ts/imports/models/color.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,qBAAa,SAAS;IAClB,SAAS,CAAC,MAAM,CAAC,OAAO,EAAE,MAAM,CAAM;IACtC,SAAS,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAQ;IAChC,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;gBAEJ,IAAI,EAAE;QAAC,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,CAAA;KAAC;IAUnD;;OAEG;IACH,SAAS,CAAC,iBAAiB,CAAE,GAAG,EAAE,MAAM,GAAI,IAAI;IAWhD;;OAEG;IACH,SAAS,CAAC,cAAc,CAAE,GAAG,EAAE,MAAM,GAAI,IAAI;IA+B7C;;OAEG;IACH,SAAS,CAAC,cAAc,CAAE,GAAG,EAAE,MAAM,GAAI,IAAI;IAU7C;;OAEG;IACH,aAAa,IAAM,MAAM;CAS5B;AACD,eAAe,SAAS,CAAC"}
@@ -0,0 +1,48 @@
1
+ /**
2
+ * A generic item
3
+ */
4
+ export declare class mintItem {
5
+ /**
6
+ * Item settings
7
+ */
8
+ version?: number;
9
+ priority?: number;
10
+ centered?: boolean;
11
+ disabled?: boolean;
12
+ /**
13
+ * Item properties
14
+ */
15
+ id?: string;
16
+ name?: string;
17
+ title?: string;
18
+ subtitle?: string;
19
+ description?: string;
20
+ icon?: string;
21
+ position?: string;
22
+ transform?: string;
23
+ /**
24
+ * Item links
25
+ */
26
+ src?: string;
27
+ href?: string;
28
+ target?: string;
29
+ routerLink?: string;
30
+ /**
31
+ * Item data
32
+ */
33
+ queryParams?: {
34
+ [key: string]: string;
35
+ };
36
+ attributes?: {
37
+ [key: string]: string;
38
+ };
39
+ /**
40
+ * Item lists
41
+ */
42
+ classes?: string[];
43
+ buttons?: mintItem[];
44
+ images?: mintItem[];
45
+ children?: mintItem[];
46
+ }
47
+ export default mintItem;
48
+ //# sourceMappingURL=item.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"item.d.ts","sourceRoot":"","sources":["../../../../src/ts/imports/models/item.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,qBAAa,QAAQ;IACjB;;OAEG;IACH,OAAO,CAAC,EAAE,MAAM,CAAK;IACrB,QAAQ,CAAC,EAAE,MAAM,CAAK;IACtB,QAAQ,CAAC,EAAE,OAAO,CAAS;IAC3B,QAAQ,CAAC,EAAE,OAAO,CAAS;IAE3B;;OAEG;IACH,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB;;OAEG;IACH,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB;;OAEG;IACH,WAAW,CAAC,EAAE;QAAC,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;KAAC,CAAM;IAC3C,UAAU,CAAC,EAAE;QAAC,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;KAAC,CAAM;IAE1C;;OAEG;IACH,OAAO,CAAC,EAAE,MAAM,EAAE,CAAM;IACxB,OAAO,CAAC,EAAE,QAAQ,EAAE,CAAM;IAC1B,MAAM,CAAC,EAAE,QAAQ,EAAE,CAAM;IACzB,QAAQ,CAAC,EAAE,QAAQ,EAAE,CAAM;CAC9B;AACD,eAAe,QAAQ,CAAC"}
@@ -0,0 +1,7 @@
1
+ /**
2
+ * Handles the display of elements
3
+ */
4
+ export declare abstract class mintDisplay {
5
+ }
6
+ export default mintDisplay;
7
+ //# sourceMappingURL=display.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"display.d.ts","sourceRoot":"","sources":["../../../../src/ts/imports/util/display.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,8BAAsB,WAAW;CAEhC;AACD,eAAe,WAAW,CAAC"}
@@ -0,0 +1,7 @@
1
+ /**
2
+ * Event helper functions
3
+ */
4
+ export declare abstract class mintEvent {
5
+ }
6
+ export default mintEvent;
7
+ //# sourceMappingURL=event.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"event.d.ts","sourceRoot":"","sources":["../../../../src/ts/imports/util/event.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,8BAAsB,SAAS;CAE9B;AACD,eAAe,SAAS,CAAC"}
@@ -0,0 +1,24 @@
1
+ /**
2
+ * Icon helper functions
3
+ */
4
+ export declare abstract class mintIcon {
5
+ /**
6
+ * Default icons
7
+ */
8
+ static icons: {
9
+ [key: string]: string;
10
+ };
11
+ /**
12
+ * Appends the given icon to the given selector
13
+ */
14
+ static append(icon: string, selector: string): void;
15
+ /**
16
+ * Updates the icons
17
+ * @param icons - the icons to update
18
+ */
19
+ static update(icons?: {
20
+ [key: string]: string | false;
21
+ }): void;
22
+ }
23
+ export default mintIcon;
24
+ //# sourceMappingURL=icon.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"icon.d.ts","sourceRoot":"","sources":["../../../../src/ts/imports/util/icon.ts"],"names":[],"mappings":"AAKA;;GAEG;AACH,8BAAsB,QAAQ;IAC1B;;OAEG;IACH,MAAM,CAAC,KAAK,EAAE;QAAC,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;KAAC,CAMnC;IAEF;;OAEG;IACH,MAAM,CAAC,MAAM,CAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,IAAI;IAcpD;;;OAGG;IACH,MAAM,CAAC,MAAM,CAAE,KAAK,CAAC,EAAE;QAAC,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,KAAK,CAAA;KAAC,GAAG,IAAI;CAUhE;AACD,eAAe,QAAQ,CAAC"}
@@ -0,0 +1,14 @@
1
+ /**
2
+ * Math functions for the util library
3
+ */
4
+ export declare abstract class mintMath {
5
+ /**
6
+ * Get a random integer between min and max
7
+ * @param max Maximum value to return
8
+ * @param min Minimum value to return (default is 0)
9
+ * @returns a random integer between min and max
10
+ */
11
+ static randomInt(max: number, min?: number): number;
12
+ }
13
+ export default mintMath;
14
+ //# sourceMappingURL=math.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"math.d.ts","sourceRoot":"","sources":["../../../../src/ts/imports/util/math.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,8BAAsB,QAAQ;IAC1B;;;;;OAKG;IACH,MAAM,CAAC,SAAS,CAAE,GAAG,EAAE,MAAM,EAAE,GAAG,GAAE,MAAU,GAAG,MAAM;CAK1D;AACD,eAAe,QAAQ,CAAC"}
@@ -0,0 +1,59 @@
1
+ /**
2
+ * Object functions for the util library
3
+ */
4
+ export declare abstract class mintObject {
5
+ /**
6
+ * Returns true if the provided objects have the same entries
7
+ */
8
+ static isSimilar(obj1: any, obj2: any): boolean;
9
+ /**
10
+ * Returns true if the first object has at least the same
11
+ * entries as the second object
12
+ * @param superset - the object to check
13
+ * @param subset - the object whose entries are required
14
+ * @returns - true if the first object is a superset of the second
15
+ * @recursive
16
+ */
17
+ static isSuperset(superset: any, subset: any): boolean;
18
+ /**
19
+ * Removes object entries by key
20
+ * @alias mintObject.removeKeys
21
+ * @param object - the object to remove entries from
22
+ * @param keys - the keys to remove
23
+ */
24
+ static remove(object: any, keys: string[]): Object;
25
+ /**
26
+ * Removes object entries by key
27
+ * @param object - the object to remove entries from
28
+ * @param keys - the keys to remove
29
+ */
30
+ static removeKeys(object: any, keys: string[]): any;
31
+ /**
32
+ * Removes object entries by value
33
+ */
34
+ static removeValues(object: any, values: any[]): any;
35
+ /**
36
+ * Sorts an object's entries alphabetically by key
37
+ */
38
+ static sort(object: any): Object;
39
+ /**
40
+ * @alias mintObject.filterKeys
41
+ */
42
+ static filter(object: any, keys: string[]): Object;
43
+ /**
44
+ * Filters an object by its keys
45
+ * @param object - the object to filter
46
+ * @param keys - the keys to keep
47
+ * @returns - the filtered object
48
+ */
49
+ static filterKeys(object: any, keys: string[]): Object;
50
+ /**
51
+ * Filters an object by its values
52
+ * @param object - the object to filter
53
+ * @param values - the values to keep
54
+ * @returns - the filtered object
55
+ */
56
+ static filterValues(object: any, values: any[]): Object;
57
+ }
58
+ export default mintObject;
59
+ //# sourceMappingURL=object.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"object.d.ts","sourceRoot":"","sources":["../../../../src/ts/imports/util/object.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,8BAAsB,UAAU;IAC5B;;OAEG;IACF,MAAM,CAAC,SAAS,CAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,GAAI,OAAO;IAalD;;;;;;;OAOG;IACH,MAAM,CAAC,UAAU,CAAE,QAAQ,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,GAAI,OAAO;IA8BxD;;;;;OAKG;IACH,MAAM,CAAC,MAAM,CAAE,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,GAAI,MAAM;IAIpD;;;;OAIG;IACH,MAAM,CAAC,UAAU,CAAE,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,GAAI,GAAG;IASrD;;OAEG;IACH,MAAM,CAAC,YAAY,CAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,GAAI,GAAG;IAStD;;OAEG;IACH,MAAM,CAAC,IAAI,CAAE,MAAM,EAAE,GAAG,GAAI,MAAM;IAOlC;;OAEG;IACH,MAAM,CAAC,MAAM,CAAE,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,GAAI,MAAM;IAIpD;;;;;OAKG;IACH,MAAM,CAAC,UAAU,CAAE,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,GAAI,MAAM;IAOxD;;;;;OAKG;IACH,MAAM,CAAC,YAAY,CAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,GAAI,MAAM;CAQ5D;AACD,eAAe,UAAU,CAAC"}