@schukai/monster 3.97.0 → 3.97.1

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.
@@ -10,10 +10,10 @@
10
10
  * For more information about purchasing a commercial license, please contact schukai GmbH.
11
11
  */
12
12
 
13
- import {addAttributeToken} from "../../../dom/attributes.mjs";
14
- import {ATTRIBUTE_ERRORMESSAGE} from "../../../dom/constants.mjs";
13
+ import { addAttributeToken } from "../../../dom/attributes.mjs";
14
+ import { ATTRIBUTE_ERRORMESSAGE } from "../../../dom/constants.mjs";
15
15
 
16
- export {LocalePickerStyleSheet}
16
+ export { LocalePickerStyleSheet };
17
17
 
18
18
  /**
19
19
  * @private
@@ -22,10 +22,17 @@ export {LocalePickerStyleSheet}
22
22
  const LocalePickerStyleSheet = new CSSStyleSheet();
23
23
 
24
24
  try {
25
- LocalePickerStyleSheet.insertRule(`
25
+ LocalePickerStyleSheet.insertRule(
26
+ `
26
27
  @layer localepicker {
27
28
  :where(html){line-height:1.15;-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%}:where(h1){font-size:2em;margin-block-end:.67em;margin-block-start:.67em}:where(dl,ol,ul) :where(dl,ol,ul){margin-block-end:0;margin-block-start:0}:where(hr){box-sizing:content-box;color:inherit;height:0}:where(abbr[title]){text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}:where(b,strong){font-weight:bolder}:where(code,kbd,pre,samp){font-family:monospace,monospace;font-size:1em}:where(small){font-size:80%}:where(table){border-color:currentColor;text-indent:0}:where(button,input,select){margin:0}:where(button){text-transform:none}:where(button,input:is([type=button i],[type=reset i],[type=submit i])){-webkit-appearance:button}:where(progress){vertical-align:baseline}:where(select){text-transform:none}:where(textarea){margin:0}:where(input[type=search i]){-webkit-appearance:textfield;outline-offset:-2px}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}::-webkit-input-placeholder{color:inherit;opacity:.54}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}:where(button,input:is([type=button i],[type=color i],[type=reset i],[type=submit i]))::-moz-focus-inner{border-style:none;padding:0}:where(button,input:is([type=button i],[type=color i],[type=reset i],[type=submit i]))::-moz-focusring{outline:1px dotted ButtonText}:where(:-moz-ui-invalid){box-shadow:none}:where(dialog){background-color:#fff;border:solid;color:#000;height:-moz-fit-content;height:fit-content;left:0;margin:auto;padding:1em;position:absolute;right:0;width:-moz-fit-content;width:fit-content}:where(dialog:not([open])){display:none}:where(summary){display:list-item}html{height:100%}body,html{min-height:calc(100vh - 40px)}body{box-sizing:border-box;margin:0;padding:0;word-break:break-word}body:focus-visible{outline:none}:focus-visible{outline:none}.block{display:block}.inline{display:inline}.inline-block{display:inline-block}.grid{display:grid}.inline-grid{display:inline-grid}.flex{display:flex}.inline-flex{display:inline-flex}.hidden,.hide,.none{display:none}.visible{visibility:visible}.invisible{visibility:hidden}.monster-button-primary,button{align-items:center;background-color:var(--monster-bg-color-primary-1);background-position:50%;border-radius:var(--monster-border-radius);border-style:var(--monster-border-style);border-width:var(--monster-border-width);box-shadow:var(--monster-box-shadow-1);color:var(--monster-color-primary-1);cursor:pointer;display:flex;font-family:var(--monster-font-family);font-size:1rem;font-weight:400;gap:.4rem;justify-content:center;line-height:1.5;outline:none;overflow:hidden;padding:.375rem .75rem;position:relative;text-align:center;text-decoration:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;vertical-align:middle;width:-webkit-fill-available;width:-moz-available;width:stretch}.monster-button-primary{background-color:var(--monster-bg-color-primary-4);border-color:var(--monster-bg-color-primary-4);color:var(--monster-color-primary-4)}.monster-button-secondary{background-color:var(--monster-bg-color-primary-1);background-color:var(--monster-bg-color-secondary-4);border-color:var(--monster-bg-color-secondary-4);border-radius:var(--monster-border-radius);border-style:var(--monster-border-style);border-width:var(--monster-border-width);color:var(--monster-color-primary-1);color:var(--monster-color-secondary-4)}.monster-button-secondary,.monster-button-tertiary{align-items:center;background-position:50%;box-shadow:var(--monster-box-shadow-1);cursor:pointer;display:flex;font-family:var(--monster-font-family);font-size:1rem;font-weight:400;gap:.4rem;justify-content:center;line-height:1.5;outline:none;overflow:hidden;padding:.375rem .75rem;position:relative;text-align:center;text-decoration:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;vertical-align:middle;width:-webkit-fill-available;width:-moz-available;width:stretch}.monster-button-tertiary{background-color:var(--monster-bg-color-primary-1);background-color:var(--monster-bg-color-tertiary-4);border-color:var(--monster-bg-color-tertiary-4);border-radius:var(--monster-border-radius);border-style:var(--monster-border-style);border-width:var(--monster-border-width);color:var(--monster-color-primary-1);color:var(--monster-color-tertiary-4)}.monster-button-outline-primary{background-color:var(--monster-bg-color-primary-1);background-color:var(--monster-color-primary-4);border-color:var(--monster-bg-color-primary-4);border-radius:var(--monster-border-radius);border-style:var(--monster-border-style);border-width:var(--monster-border-width);color:var(--monster-color-primary-1);color:var(--monster-bg-color-primary-4)}.monster-button-outline-primary,.monster-button-outline-secondary{align-items:center;background-position:50%;box-shadow:var(--monster-box-shadow-1);cursor:pointer;display:flex;font-family:var(--monster-font-family);font-size:1rem;font-weight:400;gap:.4rem;justify-content:center;line-height:1.5;outline:none;overflow:hidden;padding:.375rem .75rem;position:relative;text-align:center;text-decoration:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;vertical-align:middle;width:-webkit-fill-available;width:-moz-available;width:stretch}.monster-button-outline-secondary{background-color:var(--monster-bg-color-primary-1);background-color:var(--monster-color-secondary-4);border-color:var(--monster-bg-color-secondary-4);border-radius:var(--monster-border-radius);border-style:var(--monster-border-style);border-width:var(--monster-border-width);color:var(--monster-color-primary-1);color:var(--monster-bg-color-secondary-4)}.monster-button-outline-tertiary{align-items:center;background-color:var(--monster-bg-color-primary-1);background-color:var(--monster-color-tertiary-4);background-position:50%;border-color:var(--monster-bg-color-tertiary-4);border-radius:var(--monster-border-radius);border-style:var(--monster-border-style);border-width:var(--monster-border-width);box-shadow:var(--monster-box-shadow-1);color:var(--monster-color-primary-1);color:var(--monster-bg-color-tertiary-4);cursor:pointer;display:flex;font-family:var(--monster-font-family);font-size:1rem;font-weight:400;gap:.4rem;justify-content:center;line-height:1.5;outline:none;overflow:hidden;padding:.375rem .75rem;position:relative;text-align:center;text-decoration:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;vertical-align:middle;width:-webkit-fill-available;width:-moz-available;width:stretch}button:active,button:hover{box-shadow:var(--monster-box-shadow-2);transition:background .8s,color .25s .0833333333s}button:active{z-index:var(--monster-z-index-outline)}.monster-button-bar,.monster-button-group{align-content:center;align-items:stretch;display:flex;flex-direction:row;flex-wrap:nowrap;justify-content:space-between}.monster-button-group{box-sizing:border-box;gap:0;margin:1rem 0}.monster-button-group>:not(:last-child){margin-right:calc(var(--monster-border-width)*-1)}.monster-button-group :hover{box-shadow:none}button:focus{outline:1px dashed var(--monster-color-selection-4);outline-offset:2px;z-index:var(--monster-z-index-outline)}@media (prefers-color-scheme:light){button:focus{outline:1px dashed var(--monster-color-selection-3);outline-offset:2px;z-index:var(--monster-z-index-outline)}}[data-monster-role=control]{box-sizing:border-box;outline:none;width:100%}[data-monster-role=control].flex{align-items:center;display:flex;flex-direction:row}:host{box-sizing:border-box;display:block}:after,:before,:root{--monster-font-family:-apple-system,BlinkMacSystemFont,\"Quicksand\",\"Segoe UI\",\"Roboto\",\"Oxygen\",\"Ubuntu\",\"Cantarell\",\"Fira Sans\",\"Droid Sans\",\"Helvetica Neue\",Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\",\"Segoe UI Symbol\";--monster-font-family-monospace:\"Consolas\",\"Courier New\",\"Roboto Mono\",\"Source Code Pro\",\"Fira Mono\",monospace;--monster-color-primary-1:var(--monster-color-gray-6);--monster-color-primary-2:var(--monster-color-gray-6);--monster-color-primary-3:var(--monster-color-cinnamon-1);--monster-color-primary-4:var(--monster-color-cinnamon-1);--monster-bg-color-primary-1:var(--monster-color-gray-1);--monster-bg-color-primary-2:var(--monster-color-gray-2);--monster-bg-color-primary-3:var(--monster-color-gray-6);--monster-bg-color-primary-4:var(--monster-color-gray-4)}@media (prefers-color-scheme:dark){:after,:before,:root{--monster-color-primary-1:var(--monster-color-gray-1);--monster-color-primary-2:var(--monster-color-gray-1);--monster-color-primary-3:var(--monster-color-gray-6);--monster-color-primary-4:var(--monster-color-gray-6);--monster-bg-color-primary-1:var(--monster-color-gray-6);--monster-bg-color-primary-2:var(--monster-color-gray-3);--monster-bg-color-primary-3:var(--monster-color-gray-2);--monster-bg-color-primary-4:var(--monster-color-gray-1)}}:after,:before,:root{--monster-color-secondary-1:var(--monster-color-red-4);--monster-color-secondary-2:var(--monster-color-red-4);--monster-color-secondary-3:var(--monster-color-red-1);--monster-color-secondary-4:var(--monster-color-red-1);--monster-bg-color-secondary-1:var(--monster-color-gray-1);--monster-bg-color-secondary-2:var(--monster-color-red-2);--monster-bg-color-secondary-3:var(--monster-color-red-3);--monster-bg-color-secondary-4:var(--monster-color-red-6)}@media (prefers-color-scheme:dark){:after,:before,:root{--monster-color-secondary-1:var(--monster-color-red-1);--monster-color-secondary-2:var(--monster-color-red-1);--monster-color-secondary-3:var(--monster-color-red-6);--monster-color-secondary-4:var(--monster-color-red-4);--monster-bg-color-secondary-1:var(--monster-color-gray-6);--monster-bg-color-secondary-2:var(--monster-color-red-3);--monster-bg-color-secondary-3:var(--monster-color-red-2);--monster-bg-color-secondary-4:var(--monster-color-red-1)}}:after,:before,:root{--monster-color-tertiary-1:var(--monster-color-magenta-4);--monster-color-tertiary-2:var(--monster-color-magenta-4);--monster-color-tertiary-3:var(--monster-color-magenta-6);--monster-color-tertiary-4:var(--monster-color-magenta-1);--monster-bg-color-tertiary-1:var(--monster-color-gray-1);--monster-bg-color-tertiary-2:var(--monster-color-magenta-1);--monster-bg-color-tertiary-3:var(--monster-color-magenta-2);--monster-bg-color-tertiary-4:var(--monster-color-magenta-6)}@media (prefers-color-scheme:dark){:after,:before,:root{--monster-color-tertiary-1:var(--monster-color-magenta-1);--monster-color-tertiary-2:var(--monster-color-magenta-6);--monster-color-tertiary-3:var(--monster-color-magenta-4);--monster-color-tertiary-4:var(--monster-color-magenta-4);--monster-bg-color-tertiary-1:var(--monster-color-gray-6);--monster-bg-color-tertiary-2:var(--monster-color-magenta-2);--monster-bg-color-tertiary-3:var(--monster-color-magenta-1);--monster-bg-color-tertiary-4:var(--monster-color-magenta-1)}}:after,:before,:root{--monster-color-destructive-1:var(--monster-color-red-1);--monster-color-destructive-2:var(--monster-color-red-4);--monster-color-destructive-3:var(--monster-color-red-6);--monster-color-destructive-4:var(--monster-color-red-1);--monster-bg-color-destructive-1:var(--monster-color-red-4);--monster-bg-color-destructive-2:var(--monster-color-gray-1);--monster-bg-color-destructive-3:var(--monster-color-red-2);--monster-bg-color-destructive-4:var(--monster-color-red-5)}@media (prefers-color-scheme:dark){:after,:before,:root{--monster-color-destructive-1:var(--monster-color-red-1);--monster-color-destructive-2:var(--monster-color-red-3);--monster-color-destructive-3:var(--monster-color-red-4);--monster-color-destructive-4:var(--monster-color-red-1);--monster-bg-color-destructive-1:var(--monster-color-red-5);--monster-bg-color-destructive-2:var(--monster-color-gray-6);--monster-bg-color-destructive-3:var(--monster-color-red-1);--monster-bg-color-destructive-4:var(--monster-color-red-4)}}:after,:before,:root{--monster-color-success-1:var(--monster-color-green-1);--monster-color-success-2:var(--monster-color-green-4);--monster-color-success-3:var(--monster-color-green-6);--monster-color-success-4:var(--monster-color-green-1);--monster-bg-color-success-1:var(--monster-color-green-3);--monster-bg-color-success-2:var(--monster-color-gray-1);--monster-bg-color-success-3:var(--monster-color-green-2);--monster-bg-color-success-4:var(--monster-color-green-5)}@media (prefers-color-scheme:dark){:after,:before,:root{--monster-color-success-1:var(--monster-color-green-1);--monster-color-success-2:var(--monster-color-green-2);--monster-color-success-3:var(--monster-color-green-4);--monster-color-success-4:var(--monster-color-green-1);--monster-bg-color-success-1:var(--monster-color-green-5);--monster-bg-color-success-2:var(--monster-color-gray-6);--monster-bg-color-success-3:var(--monster-color-green-1);--monster-bg-color-success-4:var(--monster-color-green-3)}}:after,:before,:root{--monster-color-warning-1:var(--monster-color-orange-1);--monster-color-warning-2:var(--monster-color-orange-4);--monster-color-warning-3:var(--monster-color-orange-6);--monster-color-warning-4:var(--monster-color-orange-1);--monster-bg-color-warning-1:var(--monster-color-orange-3);--monster-bg-color-warning-2:var(--monster-color-gray-1);--monster-bg-color-warning-3:var(--monster-color-orange-2);--monster-bg-color-warning-4:var(--monster-color-orange-5)}@media (prefers-color-scheme:dark){:after,:before,:root{--monster-color-warning-1:var(--monster-color-orange-1);--monster-color-warning-2:var(--monster-color-orange-3);--monster-color-warning-3:var(--monster-color-orange-4);--monster-color-warning-4:var(--monster-color-orange-1);--monster-bg-color-warning-1:var(--monster-color-orange-5);--monster-bg-color-warning-2:var(--monster-color-gray-6);--monster-bg-color-warning-3:var(--monster-color-orange-1);--monster-bg-color-warning-4:var(--monster-color-orange-3)}}:after,:before,:root{--monster-color-error-1:var(--monster-color-red-1);--monster-color-error-2:var(--monster-color-red-4);--monster-color-error-3:var(--monster-color-red-6);--monster-color-error-4:var(--monster-color-red-1);--monster-bg-color-error-1:var(--monster-color-red-4);--monster-bg-color-error-2:var(--monster-color-gray-1);--monster-bg-color-error-3:var(--monster-color-red-2);--monster-bg-color-error-4:var(--monster-color-red-5)}@media (prefers-color-scheme:dark){:after,:before,:root{--monster-color-error-1:var(--monster-color-red-1);--monster-color-error-2:var(--monster-color-red-3);--monster-color-error-3:var(--monster-color-red-4);--monster-color-error-4:var(--monster-color-red-1);--monster-bg-color-error-1:var(--monster-color-red-5);--monster-bg-color-error-2:var(--monster-color-gray-6);--monster-bg-color-error-3:var(--monster-color-red-1);--monster-bg-color-error-4:var(--monster-color-red-4)}}:after,:before,:root{--monster-color-selection-1:var(--monster-color-gray-6);--monster-color-selection-2:var(--monster-color-gray-6);--monster-color-selection-3:var(--monster-color-gray-6);--monster-color-selection-4:var(--monster-color-gray-1);--monster-bg-color-selection-1:var(--monster-color-yellow-2);--monster-bg-color-selection-2:var(--monster-color-yellow-1);--monster-bg-color-selection-3:var(--monster-color-yellow-2);--monster-bg-color-selection-4:var(--monster-color-yellow-6)}@media (prefers-color-scheme:dark){:after,:before,:root{--monster-color-selection-1:var(--monster-color-gray-6);--monster-color-selection-2:var(--monster-color-gray-6);--monster-color-selection-3:var(--monster-color-gray-6);--monster-color-selection-4:var(--monster-color-gray-1);--monster-bg-color-selection-1:var(--monster-color-yellow-2);--monster-bg-color-selection-2:var(--monster-color-yellow-1);--monster-bg-color-selection-3:var(--monster-color-yellow-2);--monster-bg-color-selection-4:var(--monster-color-yellow-6)}}:after,:before,:root{--monster-color-primary-disabled-1:var(--monster-color-gray-4);--monster-color-primary-disabled-2:var(--monster-color-gray-4);--monster-color-primary-disabled-3:var(--monster-color-gray-4);--monster-color-primary-disabled-4:var(--monster-color-gray-4);--monster-bg-color-primary-disabled-1:var(--monster-color-gray-1);--monster-bg-color-primary-disabled-2:var(--monster-color-gray-2);--monster-bg-color-primary-disabled-3:var(--monster-color-gray-3);--monster-bg-color-primary-disabled-4:var(--monster-color-gray-6)}@media (prefers-color-scheme:dark){:after,:before,:root{--monster-color-primary-disabled-1:var(--monster-color-gray-4);--monster-color-primary-disabled-2:var(--monster-color-gray-4);--monster-color-primary-disabled-3:var(--monster-color-gray-3);--monster-color-primary-disabled-4:var(--monster-color-gray-3);--monster-bg-color-primary-disabled-1:var(--monster-color-gray-6);--monster-bg-color-primary-disabled-2:var(--monster-color-gray-3);--monster-bg-color-primary-disabled-3:var(--monster-color-gray-2);--monster-bg-color-primary-disabled-4:var(--monster-color-gray-1)}}:after,:before,:root{--monster-color-gradient-1:#833ab4;--monster-color-gradient-2:#fd1d1d;--monster-color-gradient-3:#fcb045;--monster-box-shadow-1:none;--monster-box-shadow-2:-1px 1px 10px 1px hsla(0,0%,76%,.61);--monster-text-shadow:none;--monster-theme-control-bg-color:var(--monster-color-seashell-1);--monster-theme-control-color:var(--monster-color-seashell-6);--monster-theme-control-hover-color:var(--monster-color-seashell-6);--monster-theme-control-hover-bg-color:var(--monster-color-seashell-2);--monster-theme-control-border-width:2px;--monster-theme-control-border-style:solid;--monster-theme-control-border-radius:0;--monster-theme-control-border-color:var(--monster-color-primary-1)}@media (prefers-color-scheme:dark){:after,:before,:root{--monster-theme-control-bg-color:var(--monster-color-gray-5);--monster-theme-control-color:var(--monster-color-gray-1);--monster-theme-control-border-color:var(--monster-color-gray-3);--monster-theme-control-hover-color:var(--monster-color-gray-1);--monster-theme-control-hover-bg-color:var(--monster-color-gray-6)}}:after,:before,:root{--monster-theme-on-color:var(--monster-color-green-1);--monster-theme-on-bg-color:var(--monster-color-green-5);--monster-theme-off-color:var(--monster-color-gray-1);--monster-theme-off-bg-color:var(--monster-color-gray-4)}@media (prefers-color-scheme:dark){:after,:before,:root{--monster-theme-on-color:var(--monster-color-gray-6);--monster-theme-on-bg-color:var(--monster-color-gray-1);--monster-theme-off-color:var(--monster-color-gray-1);--monster-theme-off-bg-color:var(--monster-color-gray-5)}}:after,:before,:root{--monster-border-style:solid;--monster-border-width:3px;--monster-border-radius:0;--monster-outline-width:1px;--monster-popper-witharrrow-distance:-4px;--monster-z-index-default:0;--monster-z-index-outline:10;--monster-z-index-dropdown:200;--monster-z-index-dropdown-overlay:210;--monster-z-index-sticky:300;--monster-z-index-sticky-overlay:310;--monster-z-index-fixed:400;--monster-z-index-fixed-overlay:410;--monster-z-index-modal-backdrop:500;--monster-z-index-modal-backdrop-overlay:510;--monster-z-index-offcanvas:600;--monster-z-index-offcanvas-overlay:610;--monster-z-index-modal:700;--monster-z-index-modal-overlay:710;--monster-z-index-popover:800;--monster-z-index-popover-overlay:810;--monster-z-index-tooltip:800;--monster-z-index-tooltip-overlay:910;--monster-space-0:0;--monster-space-1:2px;--monster-space-2:4px;--monster-space-3:6px;--monster-space-4:10px;--monster-space-5:16px;--monster-space-6:26px;--monster-space-7:42px;--monster-breakpoint-0:480px;--monster-breakpoint-4:480px;--monster-breakpoint-7:768px;--monster-breakpoint-9:992px;--monster-breakpoint-12:1200px;--monster-dragger-width:2px;--monster-dragger-handle-width:4px;--monster-dragger-handle-height:50px}span.monster-fx-ripple{animation:monster-fx-ripple .6s linear;background-color:hsla(0,0%,100%,.7);border-radius:50%;position:absolute;transform:scale(0)}@keyframes monster-fx-ripple{to{opacity:0;transform:scale(4)}}[data-monster-role=container]{display:grid;gap:.3rem;grid-template-columns:1fr 1fr;grid-template-rows:auto auto}[data-monster-role=button-language],[data-monster-role=button-no-thanks]{grid-row:1}[data-monster-role=other-languages]{grid-column:1/-1;grid-row:2}
28
- }`, 0);
29
+ }`,
30
+ 0,
31
+ );
29
32
  } catch (e) {
30
- addAttributeToken(document.getRootNode().querySelector('html'), ATTRIBUTE_ERRORMESSAGE, e + "");
33
+ addAttributeToken(
34
+ document.getRootNode().querySelector("html"),
35
+ ATTRIBUTE_ERRORMESSAGE,
36
+ e + "",
37
+ );
31
38
  }
@@ -12,12 +12,12 @@
12
12
  * SPDX-License-Identifier: AGPL-3.0
13
13
  */
14
14
 
15
- import {instanceSymbol} from "../constants.mjs";
16
- import {Base} from "../types/base.mjs";
17
- import {validateString} from "../types/validate.mjs";
18
- import {clone} from "../util/clone.mjs";
15
+ import { instanceSymbol } from "../constants.mjs";
16
+ import { Base } from "../types/base.mjs";
17
+ import { validateString } from "../types/validate.mjs";
18
+ import { clone } from "../util/clone.mjs";
19
19
 
20
- export {Locale, parseLocale};
20
+ export { Locale, parseLocale };
21
21
 
22
22
  /**
23
23
  * @type {symbol}
@@ -69,116 +69,116 @@ const localeStringSymbol = Symbol("localeString");
69
69
  * @see https://datatracker.ietf.org/doc/html/rfc3066
70
70
  */
71
71
  class Locale extends Base {
72
- /**
73
- * @param {string} language
74
- * @param {string} [region]
75
- * @param {string} [script]
76
- * @param {string} [variants]
77
- * @param {string} [extlang]
78
- * @param {string} [privateUse]
79
- * @throws {Error} unsupported locale
80
- */
81
- constructor(language, region, script, variants, extlang, privateUse) {
82
- super();
72
+ /**
73
+ * @param {string} language
74
+ * @param {string} [region]
75
+ * @param {string} [script]
76
+ * @param {string} [variants]
77
+ * @param {string} [extlang]
78
+ * @param {string} [privateUse]
79
+ * @throws {Error} unsupported locale
80
+ */
81
+ constructor(language, region, script, variants, extlang, privateUse) {
82
+ super();
83
83
 
84
- this[propertiesSymbol] = {
85
- language: language === undefined ? undefined : validateString(language),
86
- script: script === undefined ? undefined : validateString(script),
87
- region: region === undefined ? undefined : validateString(region),
88
- variants: variants === undefined ? undefined : validateString(variants),
89
- extlang: extlang === undefined ? undefined : validateString(extlang),
90
- privateUse:
91
- privateUse === undefined ? undefined : validateString(privateUse),
92
- };
84
+ this[propertiesSymbol] = {
85
+ language: language === undefined ? undefined : validateString(language),
86
+ script: script === undefined ? undefined : validateString(script),
87
+ region: region === undefined ? undefined : validateString(region),
88
+ variants: variants === undefined ? undefined : validateString(variants),
89
+ extlang: extlang === undefined ? undefined : validateString(extlang),
90
+ privateUse:
91
+ privateUse === undefined ? undefined : validateString(privateUse),
92
+ };
93
93
 
94
- const s = [];
95
- if (language !== undefined) s.push(language);
96
- if (script !== undefined) s.push(script);
97
- if (region !== undefined) s.push(region);
98
- if (variants !== undefined) s.push(variants);
99
- if (extlang !== undefined) s.push(extlang);
100
- if (privateUse !== undefined) s.push(privateUse);
94
+ const s = [];
95
+ if (language !== undefined) s.push(language);
96
+ if (script !== undefined) s.push(script);
97
+ if (region !== undefined) s.push(region);
98
+ if (variants !== undefined) s.push(variants);
99
+ if (extlang !== undefined) s.push(extlang);
100
+ if (privateUse !== undefined) s.push(privateUse);
101
101
 
102
- if (s.length === 0) {
103
- throw new Error("unsupported locale");
104
- }
102
+ if (s.length === 0) {
103
+ throw new Error("unsupported locale");
104
+ }
105
105
 
106
- this[localeStringSymbol] = s.join("-");
107
- }
106
+ this[localeStringSymbol] = s.join("-");
107
+ }
108
108
 
109
- /**
110
- * This method is called by the `instanceof` operator.
111
- * @return {symbol}
112
- * @since 3.27.0
113
- */
114
- static get [instanceSymbol]() {
115
- return Symbol.for("@schukai/monster/i18n/locale@@instance");
116
- }
109
+ /**
110
+ * This method is called by the `instanceof` operator.
111
+ * @return {symbol}
112
+ * @since 3.27.0
113
+ */
114
+ static get [instanceSymbol]() {
115
+ return Symbol.for("@schukai/monster/i18n/locale@@instance");
116
+ }
117
117
 
118
- /**
119
- * @return {string}
120
- */
121
- get localeString() {
122
- return this[localeStringSymbol];
123
- }
118
+ /**
119
+ * @return {string}
120
+ */
121
+ get localeString() {
122
+ return this[localeStringSymbol];
123
+ }
124
124
 
125
- /**
126
- * @return {string|undefined}
127
- */
128
- get language() {
129
- return this[propertiesSymbol].language;
130
- }
125
+ /**
126
+ * @return {string|undefined}
127
+ */
128
+ get language() {
129
+ return this[propertiesSymbol].language;
130
+ }
131
131
 
132
- /**
133
- * @return {string|undefined}
134
- */
135
- get region() {
136
- return this[propertiesSymbol].region;
137
- }
132
+ /**
133
+ * @return {string|undefined}
134
+ */
135
+ get region() {
136
+ return this[propertiesSymbol].region;
137
+ }
138
138
 
139
- /**
140
- * @return {string|undefined}
141
- */
142
- get script() {
143
- return this[propertiesSymbol].script;
144
- }
139
+ /**
140
+ * @return {string|undefined}
141
+ */
142
+ get script() {
143
+ return this[propertiesSymbol].script;
144
+ }
145
145
 
146
- /**
147
- * @return {string|undefined}
148
- */
149
- get variants() {
150
- return this[propertiesSymbol].variants;
151
- }
146
+ /**
147
+ * @return {string|undefined}
148
+ */
149
+ get variants() {
150
+ return this[propertiesSymbol].variants;
151
+ }
152
152
 
153
- /**
154
- * @return {string|undefined}
155
- */
156
- get extlang() {
157
- return this[propertiesSymbol].extlang;
158
- }
153
+ /**
154
+ * @return {string|undefined}
155
+ */
156
+ get extlang() {
157
+ return this[propertiesSymbol].extlang;
158
+ }
159
159
 
160
- /**
161
- * @return {string|undefined}
162
- */
163
- get privateUse() {
164
- return this[propertiesSymbol].privateValue;
165
- }
160
+ /**
161
+ * @return {string|undefined}
162
+ */
163
+ get privateUse() {
164
+ return this[propertiesSymbol].privateValue;
165
+ }
166
166
 
167
- /**
168
- * @return {string}
169
- */
170
- toString() {
171
- return `${this.localeString}`;
172
- }
167
+ /**
168
+ * @return {string}
169
+ */
170
+ toString() {
171
+ return `${this.localeString}`;
172
+ }
173
173
 
174
- /**
175
- * The structure has the following: language, script, region, variants, extlang, privateUse
176
- *
177
- * @return {Monster.I18n.LocaleMap}
178
- */
179
- getMap() {
180
- return clone(this[propertiesSymbol]);
181
- }
174
+ /**
175
+ * The structure has the following: language, script, region, variants, extlang, privateUse
176
+ *
177
+ * @return {Monster.I18n.LocaleMap}
178
+ */
179
+ getMap() {
180
+ return clone(this[propertiesSymbol]);
181
+ }
182
182
  }
183
183
 
184
184
  /**
@@ -260,63 +260,63 @@ class Locale extends Base {
260
260
  * @throws {Error} unsupported locale
261
261
  */
262
262
  function parseLocale(locale) {
263
- locale = validateString(locale).replace(/_/g, "-");
263
+ locale = validateString(locale).replace(/_/g, "-");
264
264
 
265
- let language;
266
- let region;
267
- let variants;
268
- let parts;
269
- let script;
270
- let extlang;
271
- const regexRegular =
272
- "(art-lojban|cel-gaulish|no-bok|no-nyn|zh-guoyu|zh-hakka|zh-min|zh-min-nan|zh-xiang)";
273
- const regexIrregular =
274
- "(en-GB-oed|i-ami|i-bnn|i-default|i-enochian|i-hak|i-klingon|i-lux|i-mingo|i-navajo|i-pwn|i-tao|i-tay|i-tsu|sgn-BE-FR|sgn-BE-NL|sgn-CH-DE)";
275
- const regexGrandfathered = `(${regexIrregular}|${regexRegular})`;
276
- const regexPrivateUse = "(x(-[A-Za-z0-9]{1,8})+)";
277
- const regexSingleton = "[0-9A-WY-Za-wy-z]";
278
- const regexExtension = `(${regexSingleton}(-[A-Za-z0-9]{2,8})+)`;
279
- const regexVariant = "([A-Za-z0-9]{5,8}|[0-9][A-Za-z0-9]{3})";
280
- const regexRegion = "([A-Za-z]{2}|[0-9]{3})";
281
- const regexScript = "([A-Za-z]{4})";
282
- const regexExtlang = "([A-Za-z]{3}(-[A-Za-z]{3}){0,2})";
283
- const regexLanguage = `(([A-Za-z]{2,3}(-${regexExtlang})?)|[A-Za-z]{4}|[A-Za-z]{5,8})`;
284
- const regexLangtag = `(${regexLanguage}(-${regexScript})?(-${regexRegion})?(-${regexVariant})*(-${regexExtension})*(-${regexPrivateUse})?)`;
285
- const regexLanguageTag = `^(${regexGrandfathered}|${regexLangtag}|${regexPrivateUse})$`;
286
- const regex = new RegExp(regexLanguageTag);
287
- let match;
265
+ let language;
266
+ let region;
267
+ let variants;
268
+ let parts;
269
+ let script;
270
+ let extlang;
271
+ const regexRegular =
272
+ "(art-lojban|cel-gaulish|no-bok|no-nyn|zh-guoyu|zh-hakka|zh-min|zh-min-nan|zh-xiang)";
273
+ const regexIrregular =
274
+ "(en-GB-oed|i-ami|i-bnn|i-default|i-enochian|i-hak|i-klingon|i-lux|i-mingo|i-navajo|i-pwn|i-tao|i-tay|i-tsu|sgn-BE-FR|sgn-BE-NL|sgn-CH-DE)";
275
+ const regexGrandfathered = `(${regexIrregular}|${regexRegular})`;
276
+ const regexPrivateUse = "(x(-[A-Za-z0-9]{1,8})+)";
277
+ const regexSingleton = "[0-9A-WY-Za-wy-z]";
278
+ const regexExtension = `(${regexSingleton}(-[A-Za-z0-9]{2,8})+)`;
279
+ const regexVariant = "([A-Za-z0-9]{5,8}|[0-9][A-Za-z0-9]{3})";
280
+ const regexRegion = "([A-Za-z]{2}|[0-9]{3})";
281
+ const regexScript = "([A-Za-z]{4})";
282
+ const regexExtlang = "([A-Za-z]{3}(-[A-Za-z]{3}){0,2})";
283
+ const regexLanguage = `(([A-Za-z]{2,3}(-${regexExtlang})?)|[A-Za-z]{4}|[A-Za-z]{5,8})`;
284
+ const regexLangtag = `(${regexLanguage}(-${regexScript})?(-${regexRegion})?(-${regexVariant})*(-${regexExtension})*(-${regexPrivateUse})?)`;
285
+ const regexLanguageTag = `^(${regexGrandfathered}|${regexLangtag}|${regexPrivateUse})$`;
286
+ const regex = new RegExp(regexLanguageTag);
287
+ let match;
288
288
 
289
- if ((match = regex.exec(locale)) !== null) {
290
- if (match.index === regex.lastIndex) {
291
- regex.lastIndex++;
292
- }
293
- }
289
+ if ((match = regex.exec(locale)) !== null) {
290
+ if (match.index === regex.lastIndex) {
291
+ regex.lastIndex++;
292
+ }
293
+ }
294
294
 
295
- if (match === undefined || match === null) {
296
- throw new Error("unsupported locale");
297
- }
295
+ if (match === undefined || match === null) {
296
+ throw new Error("unsupported locale");
297
+ }
298
298
 
299
- if (match[6] !== undefined) {
300
- language = match[6];
299
+ if (match[6] !== undefined) {
300
+ language = match[6];
301
301
 
302
- parts = language.split("-");
303
- if (parts.length > 1) {
304
- language = parts[0];
305
- extlang = parts[1];
306
- }
307
- }
302
+ parts = language.split("-");
303
+ if (parts.length > 1) {
304
+ language = parts[0];
305
+ extlang = parts[1];
306
+ }
307
+ }
308
308
 
309
- if (match[14] !== undefined) {
310
- region = match[14];
311
- }
309
+ if (match[14] !== undefined) {
310
+ region = match[14];
311
+ }
312
312
 
313
- if (match[12] !== undefined) {
314
- script = match[12];
315
- }
313
+ if (match[12] !== undefined) {
314
+ script = match[12];
315
+ }
316
316
 
317
- if (match[16] !== undefined) {
318
- variants = match[16];
319
- }
317
+ if (match[16] !== undefined) {
318
+ variants = match[16];
319
+ }
320
320
 
321
- return new Locale(language, region, script, variants, extlang);
321
+ return new Locale(language, region, script, variants, extlang);
322
322
  }
@@ -13,92 +13,92 @@
13
13
  */
14
14
 
15
15
  export const languages = {
16
- "en": "English",
17
- "en-GB": "English (United Kingdom)",
18
- "en-US": "English (United States)",
19
- "en-CA": "English (Canada)",
20
- "en-AU": "English (Australia)",
21
- "es": "Español",
22
- "es-ES": "Español (España)",
23
- "es-MX": "Español (México)",
24
- "es-AR": "Español (Argentina)",
25
- "zh": "中文",
26
- "zh-CN": "中文(简体)",
27
- "zh-TW": "中文(繁體)",
28
- "zh-HK": "中文(香港)",
29
- "fr": "Français",
30
- "fr-FR": "Français (France)",
31
- "fr-CA": "Français (Canada)",
32
- "fr-BE": "Français (Belgique)",
33
- "de": "Deutsch",
34
- "de-DE": "Deutsch (Deutschland)",
35
- "de-AT": "Deutsch (Österreich)",
36
- "de-CH": "Deutsch (Schweiz)",
37
- "ja": "日本語",
38
- "ru": "Русский",
39
- "ru-RU": "Русский (Россия)",
40
- "it": "Italiano",
41
- "it-IT": "Italiano (Italia)",
42
- "pt": "Português",
43
- "pt-PT": "Português (Portugal)",
44
- "pt-BR": "Português (Brasil)",
45
- "ko": "한국어",
46
- "ar": "العربية",
47
- "hi": "हिन्दी",
48
- "bn": "বাংলা",
49
- "pa": "ਪੰਜਾਬੀ",
50
- "id": "Bahasa Indonesia",
51
- "vi": "Tiếng Việt",
52
- "tr": "Türkçe",
53
- "tr-TR": "Türkçe (Türkiye)",
54
- "pl": "Polski",
55
- "pl-PL": "Polski (Polska)",
56
- "uk": "Українська",
57
- "uk-UA": "Українська (Україна)",
58
- "ro": "Română",
59
- "ro-RO": "Română (România)",
60
- "nl": "Nederlands",
61
- "nl-NL": "Nederlands (Nederland)",
62
- "el": "Ελληνικά",
63
- "el-GR": "Ελληνικά (Ελλάδα)",
64
- "hu": "Magyar",
65
- "hu-HU": "Magyar (Magyarország)",
66
- "sv": "Svenska",
67
- "sv-SE": "Svenska (Sverige)",
68
- "cs": "Čeština",
69
- "cs-CZ": "Čeština (Česká republika)",
70
- "bg": "Български",
71
- "bg-BG": "Български (България)",
72
- "da": "Dansk",
73
- "da-DK": "Dansk (Danmark)",
74
- "fi": "Suomi",
75
- "fi-FI": "Suomi (Suomi)",
76
- "sk": "Slovenčina",
77
- "sk-SK": "Slovenčina (Slovensko)",
78
- "he": "עברית",
79
- "th": "ไทย",
80
- "sr": "Српски",
81
- "sr-RS": "Српски (Србија)",
82
- "no": "Norsk",
83
- "no-NO": "Norsk (Norge)",
84
- "lt": "Lietuvių",
85
- "lt-LT": "Lietuvių (Lietuva)",
86
- "lv": "Latviešu",
87
- "lv-LV": "Latviešu (Latvija)",
88
- "et": "Eesti",
89
- "et-EE": "Eesti (Eesti)",
90
- "hr": "Hrvatski",
91
- "hr-HR": "Hrvatski (Hrvatska)",
92
- "sl": "Slovenščina",
93
- "sl-SI": "Slovenščina (Slovenija)",
94
- "mt": "Malti",
95
- "mt-MT": "Malti (Malta)",
96
- "is": "Íslenska",
97
- "is-IS": "Íslenska (Ísland)",
98
- "ga": "Gaeilge",
99
- "ga-IE": "Gaeilge (Éire)",
100
- "cy": "Cymraeg",
101
- "cy-GB": "Cymraeg (Y Deyrnas Unedig)",
102
- "sq": "Shqip",
103
- "sq-AL": "Shqip (Shqipëria)"
16
+ en: "English",
17
+ "en-GB": "English (United Kingdom)",
18
+ "en-US": "English (United States)",
19
+ "en-CA": "English (Canada)",
20
+ "en-AU": "English (Australia)",
21
+ es: "Español",
22
+ "es-ES": "Español (España)",
23
+ "es-MX": "Español (México)",
24
+ "es-AR": "Español (Argentina)",
25
+ zh: "中文",
26
+ "zh-CN": "中文(简体)",
27
+ "zh-TW": "中文(繁體)",
28
+ "zh-HK": "中文(香港)",
29
+ fr: "Français",
30
+ "fr-FR": "Français (France)",
31
+ "fr-CA": "Français (Canada)",
32
+ "fr-BE": "Français (Belgique)",
33
+ de: "Deutsch",
34
+ "de-DE": "Deutsch (Deutschland)",
35
+ "de-AT": "Deutsch (Österreich)",
36
+ "de-CH": "Deutsch (Schweiz)",
37
+ ja: "日本語",
38
+ ru: "Русский",
39
+ "ru-RU": "Русский (Россия)",
40
+ it: "Italiano",
41
+ "it-IT": "Italiano (Italia)",
42
+ pt: "Português",
43
+ "pt-PT": "Português (Portugal)",
44
+ "pt-BR": "Português (Brasil)",
45
+ ko: "한국어",
46
+ ar: "العربية",
47
+ hi: "हिन्दी",
48
+ bn: "বাংলা",
49
+ pa: "ਪੰਜਾਬੀ",
50
+ id: "Bahasa Indonesia",
51
+ vi: "Tiếng Việt",
52
+ tr: "Türkçe",
53
+ "tr-TR": "Türkçe (Türkiye)",
54
+ pl: "Polski",
55
+ "pl-PL": "Polski (Polska)",
56
+ uk: "Українська",
57
+ "uk-UA": "Українська (Україна)",
58
+ ro: "Română",
59
+ "ro-RO": "Română (România)",
60
+ nl: "Nederlands",
61
+ "nl-NL": "Nederlands (Nederland)",
62
+ el: "Ελληνικά",
63
+ "el-GR": "Ελληνικά (Ελλάδα)",
64
+ hu: "Magyar",
65
+ "hu-HU": "Magyar (Magyarország)",
66
+ sv: "Svenska",
67
+ "sv-SE": "Svenska (Sverige)",
68
+ cs: "Čeština",
69
+ "cs-CZ": "Čeština (Česká republika)",
70
+ bg: "Български",
71
+ "bg-BG": "Български (България)",
72
+ da: "Dansk",
73
+ "da-DK": "Dansk (Danmark)",
74
+ fi: "Suomi",
75
+ "fi-FI": "Suomi (Suomi)",
76
+ sk: "Slovenčina",
77
+ "sk-SK": "Slovenčina (Slovensko)",
78
+ he: "עברית",
79
+ th: "ไทย",
80
+ sr: "Српски",
81
+ "sr-RS": "Српски (Србија)",
82
+ no: "Norsk",
83
+ "no-NO": "Norsk (Norge)",
84
+ lt: "Lietuvių",
85
+ "lt-LT": "Lietuvių (Lietuva)",
86
+ lv: "Latviešu",
87
+ "lv-LV": "Latviešu (Latvija)",
88
+ et: "Eesti",
89
+ "et-EE": "Eesti (Eesti)",
90
+ hr: "Hrvatski",
91
+ "hr-HR": "Hrvatski (Hrvatska)",
92
+ sl: "Slovenščina",
93
+ "sl-SI": "Slovenščina (Slovenija)",
94
+ mt: "Malti",
95
+ "mt-MT": "Malti (Malta)",
96
+ is: "Íslenska",
97
+ "is-IS": "Íslenska (Ísland)",
98
+ ga: "Gaeilge",
99
+ "ga-IE": "Gaeilge (Éire)",
100
+ cy: "Cymraeg",
101
+ "cy-GB": "Cymraeg (Y Deyrnas Unedig)",
102
+ sq: "Shqip",
103
+ "sq-AL": "Shqip (Shqipëria)",
104
104
  };