@warp-ds/elements 2.2.0-next.4 → 2.2.0-next.5

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 (173) hide show
  1. package/README.md +27 -17
  2. package/dist/.storybook/utilities.d.ts +28 -0
  3. package/dist/api.js +1 -49
  4. package/dist/api.js.map +2 -2
  5. package/dist/custom-elements.json +2799 -313
  6. package/dist/index.css +2 -0
  7. package/dist/index.css.map +7 -0
  8. package/dist/index.d.ts +4 -0
  9. package/dist/index.js +415 -7146
  10. package/dist/index.js.map +4 -4
  11. package/dist/packages/affix/affix.stories.d.ts +10 -0
  12. package/dist/packages/affix/affix.test.d.ts +1 -0
  13. package/dist/packages/affix/index.d.ts +52 -24
  14. package/dist/packages/affix/index.js +2448 -2241
  15. package/dist/packages/affix/index.js.map +4 -4
  16. package/dist/packages/affix/react.d.ts +2 -0
  17. package/dist/packages/affix/react.js +2482 -0
  18. package/dist/packages/affix/react.js.map +7 -0
  19. package/dist/packages/affix/styles.d.ts +1 -0
  20. package/dist/packages/alert/alert.stories.d.ts +15 -0
  21. package/dist/packages/alert/index.d.ts +16 -1
  22. package/dist/packages/alert/index.js +2472 -0
  23. package/dist/packages/alert/index.js.map +7 -0
  24. package/dist/packages/alert/react.d.ts +2 -0
  25. package/dist/packages/alert/react.js +2492 -0
  26. package/dist/packages/alert/react.js.map +7 -0
  27. package/dist/packages/alert/styles.d.ts +1 -0
  28. package/dist/packages/attention/attention.stories.d.ts +10 -0
  29. package/dist/packages/attention/index.d.ts +14 -1
  30. package/dist/packages/attention/index.js +17 -3977
  31. package/dist/packages/attention/index.js.map +4 -4
  32. package/dist/packages/badge/badge.stories.d.ts +17 -0
  33. package/dist/packages/badge/badge.test.d.ts +1 -0
  34. package/dist/packages/badge/index.d.ts +17 -12
  35. package/dist/packages/badge/index.js +2441 -300
  36. package/dist/packages/badge/index.js.map +4 -4
  37. package/dist/packages/badge/react.d.ts +2 -0
  38. package/dist/packages/badge/react.js +2465 -0
  39. package/dist/packages/badge/react.js.map +7 -0
  40. package/dist/packages/badge/styles.d.ts +1 -0
  41. package/dist/packages/box/box.stories.d.ts +14 -0
  42. package/dist/packages/box/box.test.d.ts +1 -0
  43. package/dist/packages/box/index.d.ts +21 -21
  44. package/dist/packages/box/index.js +2441 -304
  45. package/dist/packages/box/index.js.map +4 -4
  46. package/dist/packages/box/react.d.ts +2 -0
  47. package/dist/packages/box/react.js +2465 -0
  48. package/dist/packages/box/react.js.map +7 -0
  49. package/dist/packages/box/slot.test.d.ts +1 -0
  50. package/dist/packages/box/styles.d.ts +1 -0
  51. package/dist/packages/breadcrumbs/breadcrumbs.stories.d.ts +12 -0
  52. package/dist/packages/breadcrumbs/breadcrumbs.test.d.ts +1 -0
  53. package/dist/packages/breadcrumbs/index.d.ts +24 -16
  54. package/dist/packages/breadcrumbs/index.js +2402 -2049
  55. package/dist/packages/breadcrumbs/index.js.map +4 -4
  56. package/dist/packages/breadcrumbs/react.d.ts +2 -0
  57. package/dist/packages/breadcrumbs/react.js +2475 -0
  58. package/dist/packages/breadcrumbs/react.js.map +7 -0
  59. package/dist/packages/breadcrumbs/styles.d.ts +1 -0
  60. package/dist/packages/button/button.stories.d.ts +21 -0
  61. package/dist/packages/button/index.d.ts +82 -7
  62. package/dist/packages/button/index.js +2460 -0
  63. package/dist/packages/button/index.js.map +7 -0
  64. package/dist/packages/button/react.d.ts +2 -0
  65. package/dist/packages/button/react.js +2480 -0
  66. package/dist/packages/button/react.js.map +7 -0
  67. package/dist/packages/button/styles.d.ts +1 -0
  68. package/dist/packages/card/card.stories.d.ts +15 -0
  69. package/dist/packages/card/index.d.ts +27 -1
  70. package/dist/packages/card/index.js +2467 -0
  71. package/dist/packages/card/index.js.map +7 -0
  72. package/dist/packages/card/react.d.ts +2 -0
  73. package/dist/packages/card/react.js +2487 -0
  74. package/dist/packages/card/react.js.map +7 -0
  75. package/dist/packages/card/styles.d.ts +1 -0
  76. package/dist/packages/dead-toggle/dead-toggle.stories.d.ts +10 -0
  77. package/dist/packages/dead-toggle/dead-toggle.test.d.ts +1 -0
  78. package/dist/packages/dead-toggle/index.d.ts +21 -0
  79. package/dist/packages/dead-toggle/index.js +2487 -0
  80. package/dist/packages/dead-toggle/index.js.map +7 -0
  81. package/dist/packages/dead-toggle/react.d.ts +2 -0
  82. package/dist/packages/dead-toggle/react.js +2507 -0
  83. package/dist/packages/dead-toggle/react.js.map +7 -0
  84. package/dist/packages/expandable/expandable.stories.d.ts +19 -0
  85. package/dist/packages/expandable/index.d.ts +43 -0
  86. package/dist/packages/expandable/index.js +2475 -0
  87. package/dist/packages/expandable/index.js.map +7 -0
  88. package/dist/packages/expandable/react.d.ts +2 -0
  89. package/dist/packages/expandable/react.js +2495 -0
  90. package/dist/packages/expandable/react.js.map +7 -0
  91. package/dist/packages/expandable/styles.d.ts +1 -0
  92. package/dist/packages/modal/index.d.ts +5 -6
  93. package/dist/packages/modal/index.js +2568 -2445
  94. package/dist/packages/modal/index.js.map +4 -4
  95. package/dist/packages/modal/modal-footer.d.ts +17 -10
  96. package/dist/packages/modal/modal-header.d.ts +20 -13
  97. package/dist/packages/modal/modal-main.d.ts +18 -7
  98. package/dist/packages/modal/modal.stories.d.ts +19 -0
  99. package/dist/packages/modal/react.d.ts +4 -0
  100. package/dist/packages/modal/react.js +2754 -0
  101. package/dist/packages/modal/react.js.map +7 -0
  102. package/dist/packages/modal/util.d.ts +7 -17
  103. package/dist/packages/pagination/index.d.ts +34 -0
  104. package/dist/packages/pagination/index.js +2486 -0
  105. package/dist/packages/pagination/index.js.map +7 -0
  106. package/dist/packages/pagination/locales/da/messages.d.mts +1 -0
  107. package/dist/packages/pagination/locales/en/messages.d.mts +1 -0
  108. package/dist/packages/pagination/locales/fi/messages.d.mts +1 -0
  109. package/dist/packages/pagination/locales/nb/messages.d.mts +1 -0
  110. package/dist/packages/pagination/locales/sv/messages.d.mts +1 -0
  111. package/dist/packages/pagination/pagination.stories.d.ts +14 -0
  112. package/dist/packages/pagination/pagination.test.d.ts +1 -0
  113. package/dist/packages/pagination/react.d.ts +2 -0
  114. package/dist/packages/pagination/react.js +2506 -0
  115. package/dist/packages/pagination/react.js.map +7 -0
  116. package/dist/packages/pagination/styles.d.ts +1 -0
  117. package/dist/packages/pill/index.d.ts +44 -23
  118. package/dist/packages/pill/index.js +2408 -2173
  119. package/dist/packages/pill/index.js.map +4 -4
  120. package/dist/packages/pill/pill.stories.d.ts +12 -0
  121. package/dist/packages/pill/pill.test.d.ts +1 -0
  122. package/dist/packages/pill/styles.d.ts +1 -0
  123. package/dist/packages/rip-and-tear-checkbox/checkbox.d.ts +64 -0
  124. package/dist/packages/rip-and-tear-checkbox/index.css +2 -0
  125. package/dist/packages/rip-and-tear-checkbox/index.css.map +7 -0
  126. package/dist/packages/rip-and-tear-checkbox/index.d.ts +6 -0
  127. package/dist/packages/rip-and-tear-checkbox/index.js +36 -0
  128. package/dist/packages/rip-and-tear-checkbox/index.js.map +7 -0
  129. package/dist/packages/rip-and-tear-radio/base-element.d.ts +46 -0
  130. package/dist/packages/rip-and-tear-radio/custom-error-validator.d.ts +6 -0
  131. package/dist/packages/rip-and-tear-radio/form-associated-element.d.ts +103 -0
  132. package/dist/packages/rip-and-tear-radio/index.css +2 -0
  133. package/dist/packages/rip-and-tear-radio/index.css.map +7 -0
  134. package/dist/packages/rip-and-tear-radio/index.d.ts +8 -0
  135. package/dist/packages/rip-and-tear-radio/index.js +34 -0
  136. package/dist/packages/rip-and-tear-radio/index.js.map +7 -0
  137. package/dist/packages/rip-and-tear-radio/invalid.d.ts +8 -0
  138. package/dist/packages/rip-and-tear-radio/math.d.ts +1 -0
  139. package/dist/packages/rip-and-tear-radio/radio-group.d.ts +72 -0
  140. package/dist/packages/rip-and-tear-radio/radio.d.ts +38 -0
  141. package/dist/packages/rip-and-tear-radio/required-validator.d.ts +11 -0
  142. package/dist/packages/rip-and-tear-radio/slot.d.ts +20 -0
  143. package/dist/packages/rip-and-tear-radio/watch.d.ts +26 -0
  144. package/dist/packages/select/index.d.ts +59 -58
  145. package/dist/packages/select/index.js +2421 -2531
  146. package/dist/packages/select/index.js.map +4 -4
  147. package/dist/packages/select/react.d.ts +2 -0
  148. package/dist/packages/select/react.js +2494 -0
  149. package/dist/packages/select/react.js.map +7 -0
  150. package/dist/packages/select/select.stories.d.ts +10 -0
  151. package/dist/packages/select/select.test.d.ts +1 -0
  152. package/dist/packages/select/styles.d.ts +1 -0
  153. package/dist/packages/textfield/index.d.ts +70 -72
  154. package/dist/packages/textfield/index.js +2455 -701
  155. package/dist/packages/textfield/index.js.map +4 -4
  156. package/dist/packages/textfield/react.d.ts +2 -0
  157. package/dist/packages/textfield/react.js +2490 -0
  158. package/dist/packages/textfield/react.js.map +7 -0
  159. package/dist/packages/textfield/styles.d.ts +1 -0
  160. package/dist/packages/textfield/textfield.stories.d.ts +17 -0
  161. package/dist/packages/textfield/textfield.test.d.ts +1 -0
  162. package/dist/packages/toast/index.js +24 -2782
  163. package/dist/packages/toast/index.js.map +4 -4
  164. package/dist/packages/toast/toast-container.d.ts +16 -0
  165. package/dist/packages/toast/toast.d.ts +20 -0
  166. package/dist/packages/toast/toast.stories.d.ts +12 -0
  167. package/dist/packages/utils/index.d.ts +1 -1
  168. package/dist/packages/utils/unstyled-heading.d.ts +1 -1
  169. package/dist/setup-tests.d.ts +1 -0
  170. package/dist/vscode.css-custom-data.json +6 -0
  171. package/dist/vscode.html-custom-data.json +313 -0
  172. package/dist/web-types.json +707 -0
  173. package/package.json +47 -13
@@ -1,2802 +1,44 @@
1
- var __create = Object.create;
2
- var __defProp = Object.defineProperty;
3
- var __defProps = Object.defineProperties;
4
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
- var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
6
- var __getOwnPropNames = Object.getOwnPropertyNames;
7
- var __getOwnPropSymbols = Object.getOwnPropertySymbols;
8
- var __getProtoOf = Object.getPrototypeOf;
9
- var __hasOwnProp = Object.prototype.hasOwnProperty;
10
- var __propIsEnum = Object.prototype.propertyIsEnumerable;
11
- var __typeError = (msg) => {
12
- throw TypeError(msg);
13
- };
14
- var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
15
- var __spreadValues = (a, b) => {
16
- for (var prop in b || (b = {}))
17
- if (__hasOwnProp.call(b, prop))
18
- __defNormalProp(a, prop, b[prop]);
19
- if (__getOwnPropSymbols)
20
- for (var prop of __getOwnPropSymbols(b)) {
21
- if (__propIsEnum.call(b, prop))
22
- __defNormalProp(a, prop, b[prop]);
23
- }
24
- return a;
25
- };
26
- var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
27
- var __objRest = (source, exclude) => {
28
- var target = {};
29
- for (var prop in source)
30
- if (__hasOwnProp.call(source, prop) && exclude.indexOf(prop) < 0)
31
- target[prop] = source[prop];
32
- if (source != null && __getOwnPropSymbols)
33
- for (var prop of __getOwnPropSymbols(source)) {
34
- if (exclude.indexOf(prop) < 0 && __propIsEnum.call(source, prop))
35
- target[prop] = source[prop];
36
- }
37
- return target;
38
- };
39
- var __commonJS = (cb, mod) => function __require() {
40
- return mod || (0, cb[__getOwnPropNames(cb)[0]])((mod = { exports: {} }).exports, mod), mod.exports;
41
- };
42
- var __copyProps = (to, from, except, desc) => {
43
- if (from && typeof from === "object" || typeof from === "function") {
44
- for (let key of __getOwnPropNames(from))
45
- if (!__hasOwnProp.call(to, key) && key !== except)
46
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
47
- }
48
- return to;
49
- };
50
- var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
51
- // If the importer is in node compatibility mode or this is not an ESM
52
- // file that has been converted to a CommonJS file using a Babel-
53
- // compatible transform (i.e. "__esModule" has not been set), then set
54
- // "default" to the CommonJS "module.exports" for node compatibility.
55
- isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
56
- mod
57
- ));
58
- var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
59
- var __accessCheck = (obj, member, msg) => member.has(obj) || __typeError("Cannot " + msg);
60
- var __privateGet = (obj, member, getter) => (__accessCheck(obj, member, "read from private field"), getter ? getter.call(obj) : member.get(obj));
61
- var __privateAdd = (obj, member, value) => member.has(obj) ? __typeError("Cannot add the same private member more than once") : member instanceof WeakSet ? member.add(obj) : member.set(obj, value);
1
+ var We=Object.create;var U=Object.defineProperty;var Ke=Object.getOwnPropertyDescriptor;var Ge=Object.getOwnPropertyNames;var Xe=Object.getPrototypeOf,Ze=Object.prototype.hasOwnProperty;var oe=t=>{throw TypeError(t)};var Ye=(t,e,r)=>e in t?U(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r;var se=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports);var et=(t,e,r,o)=>{if(e&&typeof e=="object"||typeof e=="function")for(let s of Ge(e))!Ze.call(t,s)&&s!==r&&U(t,s,{get:()=>e[s],enumerable:!(o=Ke(e,s))||o.enumerable});return t};var tt=(t,e,r)=>(r=t!=null?We(Xe(t)):{},et(e||!t||!t.__esModule?U(r,"default",{value:t,enumerable:!0}):r,t));var E=(t,e,r)=>Ye(t,typeof e!="symbol"?e+"":e,r),rt=(t,e,r)=>e.has(t)||oe("Cannot "+r);var H=(t,e,r)=>(rt(t,e,"read from private field"),r?r.call(t):e.get(t)),ne=(t,e,r)=>e.has(t)?oe("Cannot add the same private member more than once"):e instanceof WeakSet?e.add(t):e.set(t,r);var ie=se(S=>{"use strict";Object.defineProperty(S,"__esModule",{value:!0});S.errorMessages=S.ErrorType=void 0;var C;(function(t){t.MalformedUnicode="MALFORMED_UNICODE",t.MalformedHexadecimal="MALFORMED_HEXADECIMAL",t.CodePointLimit="CODE_POINT_LIMIT",t.OctalDeprecation="OCTAL_DEPRECATION",t.EndOfString="END_OF_STRING"})(C=S.ErrorType||(S.ErrorType={}));S.errorMessages=new Map([[C.MalformedUnicode,"malformed Unicode character escape sequence"],[C.MalformedHexadecimal,"malformed hexadecimal character escape sequence"],[C.CodePointLimit,"Unicode codepoint must not be greater than 0x10FFFF in escape sequence"],[C.OctalDeprecation,'"0"-prefixed octal literals and octal escape sequences are deprecated; for octal literals use the "0o" prefix instead'],[C.EndOfString,"malformed escape sequence at end of string"]])});var ce=se(v=>{"use strict";Object.defineProperty(v,"__esModule",{value:!0});v.unraw=v.errorMessages=v.ErrorType=void 0;var g=ie();Object.defineProperty(v,"ErrorType",{enumerable:!0,get:function(){return g.ErrorType}});Object.defineProperty(v,"errorMessages",{enumerable:!0,get:function(){return g.errorMessages}});function ot(t){return!t.match(/[^a-f0-9]/i)?parseInt(t,16):NaN}function P(t,e,r){let o=ot(t);if(Number.isNaN(o)||r!==void 0&&r!==t.length)throw new SyntaxError(g.errorMessages.get(e));return o}function st(t){let e=P(t,g.ErrorType.MalformedHexadecimal,2);return String.fromCharCode(e)}function ae(t,e){let r=P(t,g.ErrorType.MalformedUnicode,4);if(e!==void 0){let o=P(e,g.ErrorType.MalformedUnicode,4);return String.fromCharCode(r,o)}return String.fromCharCode(r)}function nt(t){return t.charAt(0)==="{"&&t.charAt(t.length-1)==="}"}function it(t){if(!nt(t))throw new SyntaxError(g.errorMessages.get(g.ErrorType.MalformedUnicode));let e=t.slice(1,-1),r=P(e,g.ErrorType.MalformedUnicode);try{return String.fromCodePoint(r)}catch(o){throw o instanceof RangeError?new SyntaxError(g.errorMessages.get(g.ErrorType.CodePointLimit)):o}}function at(t,e=!1){if(e)throw new SyntaxError(g.errorMessages.get(g.ErrorType.OctalDeprecation));let r=parseInt(t,8);return String.fromCharCode(r)}var lt=new Map([["b","\b"],["f","\f"],["n",`
2
+ `],["r","\r"],["t"," "],["v","\v"],["0","\0"]]);function ct(t){return lt.get(t)||t}var dt=/\\(?:(\\)|x([\s\S]{0,2})|u(\{[^}]*\}?)|u([\s\S]{4})\\u([^{][\s\S]{0,3})|u([\s\S]{0,4})|([0-3]?[0-7]{1,2})|([\s\S])|$)/g;function le(t,e=!1){return t.replace(dt,function(r,o,s,l,c,u,b,h,k){if(o!==void 0)return"\\";if(s!==void 0)return st(s);if(l!==void 0)return it(l);if(c!==void 0)return ae(c,u);if(b!==void 0)return ae(b);if(h==="0")return"\0";if(h!==void 0)return at(h,!e);if(k!==void 0)return ct(k);throw new SyntaxError(g.errorMessages.get(g.ErrorType.EndOfString))})}v.unraw=le;v.default=le});import{css as Sr,html as D}from"lit";var I=function(){for(var t=[],e=arguments.length;e--;)t[e]=arguments[e];return t.reduce(function(r,o){return r.concat(typeof o=="string"?o:Array.isArray(o)?I.apply(void 0,o):typeof o=="object"&&o?Object.keys(o).map(function(s){return o[s]?s:""}):"")},[]).join(" ")};var pe=tt(ce(),1);var w=t=>typeof t=="string",ut=t=>typeof t=="function",de=new Map,be="en";function W(t){return[...Array.isArray(t)?t:[t],be]}function K(t,e,r){let o=W(t);r||(r="default");let s;if(typeof r=="string")switch(s={day:"numeric",month:"short",year:"numeric"},r){case"full":s.weekday="long";case"long":s.month="long";break;case"short":s.month="numeric";break}else s=r;return A(()=>j("date",o,r),()=>new Intl.DateTimeFormat(o,s)).format(w(e)?new Date(e):e)}function pt(t,e,r){let o;if(r||(r="default"),typeof r=="string")switch(o={second:"numeric",minute:"numeric",hour:"numeric"},r){case"full":case"long":o.timeZoneName="short";break;case"short":delete o.second}else o=r;return K(t,e,o)}function J(t,e,r){let o=W(t);return A(()=>j("number",o,r),()=>new Intl.NumberFormat(o,r)).format(e)}function ue(t,e,r,{offset:o=0,...s}){var u,b;let l=W(t),c=e?A(()=>j("plural-ordinal",l),()=>new Intl.PluralRules(l,{type:"ordinal"})):A(()=>j("plural-cardinal",l),()=>new Intl.PluralRules(l,{type:"cardinal"}));return(b=(u=s[r])!=null?u:s[c.select(r-o)])!=null?b:s.other}function A(t,e){let r=t(),o=de.get(r);return o||(o=e(),de.set(r,o)),o}function j(t,e,r){let o=e.join("-");return`${t}-${o}-${JSON.stringify(r)}`}var me=/\\u[a-fA-F0-9]{4}|\\x[a-fA-F0-9]{2}/,ge="%__lingui_octothorpe__%",bt=(t,e,r={})=>{let o=e||t,s=c=>typeof c=="object"?c:r[c],l=(c,u)=>{let b=Object.keys(r).length?s("number"):void 0,h=J(o,c,b);return u.replace(new RegExp(ge,"g"),h)};return{plural:(c,u)=>{let{offset:b=0}=u,h=ue(o,!1,c,u);return l(c-b,h)},selectordinal:(c,u)=>{let{offset:b=0}=u,h=ue(o,!0,c,u);return l(c-b,h)},select:mt,number:(c,u)=>J(o,c,s(u)||{style:u}),date:(c,u)=>K(o,c,s(u)||u),time:(c,u)=>pt(o,c,s(u)||u)}},mt=(t,e)=>{var r;return(r=e[t])!=null?r:e.other};function gt(t,e,r){return(o={},s)=>{let l=bt(e,r,s),c=(b,h=!1)=>Array.isArray(b)?b.reduce((k,T)=>{if(T==="#"&&h)return k+ge;if(w(T))return k+T;let[te,_,re]=T,F={};_==="plural"||_==="selectordinal"||_==="select"?Object.entries(re).forEach(([q,Ve])=>{F[q]=c(Ve,_==="plural"||_==="selectordinal")}):F=re;let B;if(_){let q=l[_];B=q(o[te],F)}else B=o[te];return B==null?k:k+B},""):b,u=c(t);return w(u)&&me.test(u)?(0,pe.unraw)(u):w(u)?u:u?String(u):""}}var ft=Object.defineProperty,ht=(t,e,r)=>e in t?ft(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,vt=(t,e,r)=>(ht(t,typeof e!="symbol"?e+"":e,r),r),z=class{constructor(){vt(this,"_events",{})}on(e,r){var s;var o;return(s=(o=this._events)[e])!=null||(o[e]=[]),this._events[e].push(r),()=>this.removeListener(e,r)}removeListener(e,r){let o=this._getListeners(e);if(!o)return;let s=o.indexOf(r);~s&&o.splice(s,1)}emit(e,...r){let o=this._getListeners(e);o&&o.map(s=>s.apply(this,r))}_getListeners(e){let r=this._events[e];return Array.isArray(r)?r:!1}},wt=Object.defineProperty,xt=(t,e,r)=>e in t?wt(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,L=(t,e,r)=>(xt(t,typeof e!="symbol"?e+"":e,r),r),V=class extends z{constructor(e){var r;super(),L(this,"_locale",""),L(this,"_locales"),L(this,"_localeData",{}),L(this,"_messages",{}),L(this,"_missing"),L(this,"_messageCompiler"),L(this,"t",this._.bind(this)),e.missing!=null&&(this._missing=e.missing),e.messages!=null&&this.load(e.messages),e.localeData!=null&&this.loadLocaleData(e.localeData),(typeof e.locale=="string"||e.locales)&&this.activate((r=e.locale)!=null?r:be,e.locales)}get locale(){return this._locale}get locales(){return this._locales}get messages(){var e;return(e=this._messages[this._locale])!=null?e:{}}get localeData(){var e;return(e=this._localeData[this._locale])!=null?e:{}}_loadLocaleData(e,r){let o=this._localeData[e];o?Object.assign(o,r):this._localeData[e]=r}setMessagesCompiler(e){return this._messageCompiler=e,this}loadLocaleData(e,r){typeof e=="string"?this._loadLocaleData(e,r):Object.keys(e).forEach(o=>this._loadLocaleData(o,e[o])),this.emit("change")}_load(e,r){let o=this._messages[e];o?Object.assign(o,r):this._messages[e]=r}load(e,r){typeof e=="string"&&typeof r=="object"?this._load(e,r):Object.entries(e).forEach(([o,s])=>this._load(o,s)),this.emit("change")}loadAndActivate({locale:e,locales:r,messages:o}){this._locale=e,this._locales=r||void 0,this._messages[this._locale]=o,this.emit("change")}activate(e,r){this._locale=e,this._locales=r,this.emit("change")}_(e,r,o){if(!this.locale)throw new Error("Lingui: Attempted to call a translation function without setting a locale.\nMake sure to call `i18n.activate(locale)` before using Lingui functions.\nThis issue may also occur due to a race condition in your initialization logic.");let s=o==null?void 0:o.message;e||(e=""),w(e)||(r=e.values||r,s=e.message,e=e.id);let l=this.messages[e],c=l===void 0,u=this._missing;if(u&&c)return ut(u)?u(this._locale,e):u;c&&this.emit("missing",{id:e,locale:this._locale});let b=l||s||e;return w(b)&&(this._messageCompiler?b=this._messageCompiler(b):console.warn(`Uncompiled message detected! Message:
62
3
 
63
- // node_modules/.pnpm/unraw@3.0.0/node_modules/unraw/dist/errors.js
64
- var require_errors = __commonJS({
65
- "node_modules/.pnpm/unraw@3.0.0/node_modules/unraw/dist/errors.js"(exports) {
66
- "use strict";
67
- Object.defineProperty(exports, "__esModule", { value: true });
68
- exports.errorMessages = exports.ErrorType = void 0;
69
- var ErrorType;
70
- (function(ErrorType2) {
71
- ErrorType2["MalformedUnicode"] = "MALFORMED_UNICODE";
72
- ErrorType2["MalformedHexadecimal"] = "MALFORMED_HEXADECIMAL";
73
- ErrorType2["CodePointLimit"] = "CODE_POINT_LIMIT";
74
- ErrorType2["OctalDeprecation"] = "OCTAL_DEPRECATION";
75
- ErrorType2["EndOfString"] = "END_OF_STRING";
76
- })(ErrorType = exports.ErrorType || (exports.ErrorType = {}));
77
- exports.errorMessages = /* @__PURE__ */ new Map([
78
- [ErrorType.MalformedUnicode, "malformed Unicode character escape sequence"],
79
- [
80
- ErrorType.MalformedHexadecimal,
81
- "malformed hexadecimal character escape sequence"
82
- ],
83
- [
84
- ErrorType.CodePointLimit,
85
- "Unicode codepoint must not be greater than 0x10FFFF in escape sequence"
86
- ],
87
- [
88
- ErrorType.OctalDeprecation,
89
- '"0"-prefixed octal literals and octal escape sequences are deprecated; for octal literals use the "0o" prefix instead'
90
- ],
91
- [ErrorType.EndOfString, "malformed escape sequence at end of string"]
92
- ]);
93
- }
94
- });
95
-
96
- // node_modules/.pnpm/unraw@3.0.0/node_modules/unraw/dist/index.js
97
- var require_dist = __commonJS({
98
- "node_modules/.pnpm/unraw@3.0.0/node_modules/unraw/dist/index.js"(exports) {
99
- "use strict";
100
- Object.defineProperty(exports, "__esModule", { value: true });
101
- exports.unraw = exports.errorMessages = exports.ErrorType = void 0;
102
- var errors_1 = require_errors();
103
- Object.defineProperty(exports, "ErrorType", { enumerable: true, get: function() {
104
- return errors_1.ErrorType;
105
- } });
106
- Object.defineProperty(exports, "errorMessages", { enumerable: true, get: function() {
107
- return errors_1.errorMessages;
108
- } });
109
- function parseHexToInt(hex) {
110
- const isOnlyHexChars = !hex.match(/[^a-f0-9]/i);
111
- return isOnlyHexChars ? parseInt(hex, 16) : NaN;
112
- }
113
- function validateAndParseHex(hex, errorName, enforcedLength) {
114
- const parsedHex = parseHexToInt(hex);
115
- if (Number.isNaN(parsedHex) || enforcedLength !== void 0 && enforcedLength !== hex.length) {
116
- throw new SyntaxError(errors_1.errorMessages.get(errorName));
117
- }
118
- return parsedHex;
119
- }
120
- function parseHexadecimalCode(code) {
121
- const parsedCode = validateAndParseHex(code, errors_1.ErrorType.MalformedHexadecimal, 2);
122
- return String.fromCharCode(parsedCode);
123
- }
124
- function parseUnicodeCode(code, surrogateCode) {
125
- const parsedCode = validateAndParseHex(code, errors_1.ErrorType.MalformedUnicode, 4);
126
- if (surrogateCode !== void 0) {
127
- const parsedSurrogateCode = validateAndParseHex(surrogateCode, errors_1.ErrorType.MalformedUnicode, 4);
128
- return String.fromCharCode(parsedCode, parsedSurrogateCode);
129
- }
130
- return String.fromCharCode(parsedCode);
131
- }
132
- function isCurlyBraced(text) {
133
- return text.charAt(0) === "{" && text.charAt(text.length - 1) === "}";
134
- }
135
- function parseUnicodeCodePointCode(codePoint) {
136
- if (!isCurlyBraced(codePoint)) {
137
- throw new SyntaxError(errors_1.errorMessages.get(errors_1.ErrorType.MalformedUnicode));
138
- }
139
- const withoutBraces = codePoint.slice(1, -1);
140
- const parsedCode = validateAndParseHex(withoutBraces, errors_1.ErrorType.MalformedUnicode);
141
- try {
142
- return String.fromCodePoint(parsedCode);
143
- } catch (err) {
144
- throw err instanceof RangeError ? new SyntaxError(errors_1.errorMessages.get(errors_1.ErrorType.CodePointLimit)) : err;
145
- }
146
- }
147
- function parseOctalCode(code, error = false) {
148
- if (error) {
149
- throw new SyntaxError(errors_1.errorMessages.get(errors_1.ErrorType.OctalDeprecation));
150
- }
151
- const parsedCode = parseInt(code, 8);
152
- return String.fromCharCode(parsedCode);
153
- }
154
- var singleCharacterEscapes = /* @__PURE__ */ new Map([
155
- ["b", "\b"],
156
- ["f", "\f"],
157
- ["n", "\n"],
158
- ["r", "\r"],
159
- ["t", " "],
160
- ["v", "\v"],
161
- ["0", "\0"]
162
- ]);
163
- function parseSingleCharacterCode(code) {
164
- return singleCharacterEscapes.get(code) || code;
165
- }
166
- var escapeMatch = /\\(?:(\\)|x([\s\S]{0,2})|u(\{[^}]*\}?)|u([\s\S]{4})\\u([^{][\s\S]{0,3})|u([\s\S]{0,4})|([0-3]?[0-7]{1,2})|([\s\S])|$)/g;
167
- function unraw2(raw, allowOctals = false) {
168
- return raw.replace(escapeMatch, function(_, backslash, hex, codePoint, unicodeWithSurrogate, surrogate, unicode, octal, singleCharacter) {
169
- if (backslash !== void 0) {
170
- return "\\";
171
- }
172
- if (hex !== void 0) {
173
- return parseHexadecimalCode(hex);
174
- }
175
- if (codePoint !== void 0) {
176
- return parseUnicodeCodePointCode(codePoint);
177
- }
178
- if (unicodeWithSurrogate !== void 0) {
179
- return parseUnicodeCode(unicodeWithSurrogate, surrogate);
180
- }
181
- if (unicode !== void 0) {
182
- return parseUnicodeCode(unicode);
183
- }
184
- if (octal === "0") {
185
- return "\0";
186
- }
187
- if (octal !== void 0) {
188
- return parseOctalCode(octal, !allowOctals);
189
- }
190
- if (singleCharacter !== void 0) {
191
- return parseSingleCharacterCode(singleCharacter);
192
- }
193
- throw new SyntaxError(errors_1.errorMessages.get(errors_1.ErrorType.EndOfString));
194
- });
195
- }
196
- exports.unraw = unraw2;
197
- exports.default = unraw2;
198
- }
199
- });
200
-
201
- // node_modules/.pnpm/moo@0.5.2/node_modules/moo/moo.js
202
- var require_moo = __commonJS({
203
- "node_modules/.pnpm/moo@0.5.2/node_modules/moo/moo.js"(exports, module) {
204
- (function(root, factory) {
205
- if (typeof define === "function" && define.amd) {
206
- define([], factory);
207
- } else if (typeof module === "object" && module.exports) {
208
- module.exports = factory();
209
- } else {
210
- root.moo = factory();
211
- }
212
- })(exports, function() {
213
- "use strict";
214
- var hasOwnProperty = Object.prototype.hasOwnProperty;
215
- var toString = Object.prototype.toString;
216
- var hasSticky = typeof new RegExp().sticky === "boolean";
217
- function isRegExp(o) {
218
- return o && toString.call(o) === "[object RegExp]";
219
- }
220
- function isObject(o) {
221
- return o && typeof o === "object" && !isRegExp(o) && !Array.isArray(o);
222
- }
223
- function reEscape(s) {
224
- return s.replace(/[-\/\\^$*+?.()|[\]{}]/g, "\\$&");
225
- }
226
- function reGroups(s) {
227
- var re = new RegExp("|" + s);
228
- return re.exec("").length - 1;
229
- }
230
- function reCapture(s) {
231
- return "(" + s + ")";
232
- }
233
- function reUnion(regexps) {
234
- if (!regexps.length) return "(?!)";
235
- var source = regexps.map(function(s) {
236
- return "(?:" + s + ")";
237
- }).join("|");
238
- return "(?:" + source + ")";
239
- }
240
- function regexpOrLiteral(obj) {
241
- if (typeof obj === "string") {
242
- return "(?:" + reEscape(obj) + ")";
243
- } else if (isRegExp(obj)) {
244
- if (obj.ignoreCase) throw new Error("RegExp /i flag not allowed");
245
- if (obj.global) throw new Error("RegExp /g flag is implied");
246
- if (obj.sticky) throw new Error("RegExp /y flag is implied");
247
- if (obj.multiline) throw new Error("RegExp /m flag is implied");
248
- return obj.source;
249
- } else {
250
- throw new Error("Not a pattern: " + obj);
251
- }
252
- }
253
- function pad(s, length) {
254
- if (s.length > length) {
255
- return s;
256
- }
257
- return Array(length - s.length + 1).join(" ") + s;
258
- }
259
- function lastNLines(string, numLines) {
260
- var position = string.length;
261
- var lineBreaks = 0;
262
- while (true) {
263
- var idx = string.lastIndexOf("\n", position - 1);
264
- if (idx === -1) {
265
- break;
266
- } else {
267
- lineBreaks++;
268
- }
269
- position = idx;
270
- if (lineBreaks === numLines) {
271
- break;
272
- }
273
- if (position === 0) {
274
- break;
275
- }
276
- }
277
- var startPosition = lineBreaks < numLines ? 0 : position + 1;
278
- return string.substring(startPosition).split("\n");
279
- }
280
- function objectToRules(object) {
281
- var keys = Object.getOwnPropertyNames(object);
282
- var result = [];
283
- for (var i = 0; i < keys.length; i++) {
284
- var key = keys[i];
285
- var thing = object[key];
286
- var rules = [].concat(thing);
287
- if (key === "include") {
288
- for (var j = 0; j < rules.length; j++) {
289
- result.push({ include: rules[j] });
290
- }
291
- continue;
292
- }
293
- var match = [];
294
- rules.forEach(function(rule) {
295
- if (isObject(rule)) {
296
- if (match.length) result.push(ruleOptions(key, match));
297
- result.push(ruleOptions(key, rule));
298
- match = [];
299
- } else {
300
- match.push(rule);
301
- }
302
- });
303
- if (match.length) result.push(ruleOptions(key, match));
304
- }
305
- return result;
306
- }
307
- function arrayToRules(array) {
308
- var result = [];
309
- for (var i = 0; i < array.length; i++) {
310
- var obj = array[i];
311
- if (obj.include) {
312
- var include = [].concat(obj.include);
313
- for (var j = 0; j < include.length; j++) {
314
- result.push({ include: include[j] });
315
- }
316
- continue;
317
- }
318
- if (!obj.type) {
319
- throw new Error("Rule has no type: " + JSON.stringify(obj));
320
- }
321
- result.push(ruleOptions(obj.type, obj));
322
- }
323
- return result;
324
- }
325
- function ruleOptions(type, obj) {
326
- if (!isObject(obj)) {
327
- obj = { match: obj };
328
- }
329
- if (obj.include) {
330
- throw new Error("Matching rules cannot also include states");
331
- }
332
- var options = {
333
- defaultType: type,
334
- lineBreaks: !!obj.error || !!obj.fallback,
335
- pop: false,
336
- next: null,
337
- push: null,
338
- error: false,
339
- fallback: false,
340
- value: null,
341
- type: null,
342
- shouldThrow: false
343
- };
344
- for (var key in obj) {
345
- if (hasOwnProperty.call(obj, key)) {
346
- options[key] = obj[key];
347
- }
348
- }
349
- if (typeof options.type === "string" && type !== options.type) {
350
- throw new Error("Type transform cannot be a string (type '" + options.type + "' for token '" + type + "')");
351
- }
352
- var match = options.match;
353
- options.match = Array.isArray(match) ? match : match ? [match] : [];
354
- options.match.sort(function(a, b) {
355
- return isRegExp(a) && isRegExp(b) ? 0 : isRegExp(b) ? -1 : isRegExp(a) ? 1 : b.length - a.length;
356
- });
357
- return options;
358
- }
359
- function toRules(spec) {
360
- return Array.isArray(spec) ? arrayToRules(spec) : objectToRules(spec);
361
- }
362
- var defaultErrorRule = ruleOptions("error", { lineBreaks: true, shouldThrow: true });
363
- function compileRules(rules, hasStates) {
364
- var errorRule = null;
365
- var fast = /* @__PURE__ */ Object.create(null);
366
- var fastAllowed = true;
367
- var unicodeFlag = null;
368
- var groups = [];
369
- var parts = [];
370
- for (var i = 0; i < rules.length; i++) {
371
- if (rules[i].fallback) {
372
- fastAllowed = false;
373
- }
374
- }
375
- for (var i = 0; i < rules.length; i++) {
376
- var options = rules[i];
377
- if (options.include) {
378
- throw new Error("Inheritance is not allowed in stateless lexers");
379
- }
380
- if (options.error || options.fallback) {
381
- if (errorRule) {
382
- if (!options.fallback === !errorRule.fallback) {
383
- throw new Error("Multiple " + (options.fallback ? "fallback" : "error") + " rules not allowed (for token '" + options.defaultType + "')");
384
- } else {
385
- throw new Error("fallback and error are mutually exclusive (for token '" + options.defaultType + "')");
386
- }
387
- }
388
- errorRule = options;
389
- }
390
- var match = options.match.slice();
391
- if (fastAllowed) {
392
- while (match.length && typeof match[0] === "string" && match[0].length === 1) {
393
- var word = match.shift();
394
- fast[word.charCodeAt(0)] = options;
395
- }
396
- }
397
- if (options.pop || options.push || options.next) {
398
- if (!hasStates) {
399
- throw new Error("State-switching options are not allowed in stateless lexers (for token '" + options.defaultType + "')");
400
- }
401
- if (options.fallback) {
402
- throw new Error("State-switching options are not allowed on fallback tokens (for token '" + options.defaultType + "')");
403
- }
404
- }
405
- if (match.length === 0) {
406
- continue;
407
- }
408
- fastAllowed = false;
409
- groups.push(options);
410
- for (var j = 0; j < match.length; j++) {
411
- var obj = match[j];
412
- if (!isRegExp(obj)) {
413
- continue;
414
- }
415
- if (unicodeFlag === null) {
416
- unicodeFlag = obj.unicode;
417
- } else if (unicodeFlag !== obj.unicode && options.fallback === false) {
418
- throw new Error("If one rule is /u then all must be");
419
- }
420
- }
421
- var pat = reUnion(match.map(regexpOrLiteral));
422
- var regexp = new RegExp(pat);
423
- if (regexp.test("")) {
424
- throw new Error("RegExp matches empty string: " + regexp);
425
- }
426
- var groupCount = reGroups(pat);
427
- if (groupCount > 0) {
428
- throw new Error("RegExp has capture groups: " + regexp + "\nUse (?: \u2026 ) instead");
429
- }
430
- if (!options.lineBreaks && regexp.test("\n")) {
431
- throw new Error("Rule should declare lineBreaks: " + regexp);
432
- }
433
- parts.push(reCapture(pat));
434
- }
435
- var fallbackRule = errorRule && errorRule.fallback;
436
- var flags = hasSticky && !fallbackRule ? "ym" : "gm";
437
- var suffix2 = hasSticky || fallbackRule ? "" : "|";
438
- if (unicodeFlag === true) flags += "u";
439
- var combined = new RegExp(reUnion(parts) + suffix2, flags);
440
- return { regexp: combined, groups, fast, error: errorRule || defaultErrorRule };
441
- }
442
- function compile(rules) {
443
- var result = compileRules(toRules(rules));
444
- return new Lexer({ start: result }, "start");
445
- }
446
- function checkStateGroup(g, name, map) {
447
- var state = g && (g.push || g.next);
448
- if (state && !map[state]) {
449
- throw new Error("Missing state '" + state + "' (in token '" + g.defaultType + "' of state '" + name + "')");
450
- }
451
- if (g && g.pop && +g.pop !== 1) {
452
- throw new Error("pop must be 1 (in token '" + g.defaultType + "' of state '" + name + "')");
453
- }
454
- }
455
- function compileStates(states, start) {
456
- var all = states.$all ? toRules(states.$all) : [];
457
- delete states.$all;
458
- var keys = Object.getOwnPropertyNames(states);
459
- if (!start) start = keys[0];
460
- var ruleMap = /* @__PURE__ */ Object.create(null);
461
- for (var i = 0; i < keys.length; i++) {
462
- var key = keys[i];
463
- ruleMap[key] = toRules(states[key]).concat(all);
464
- }
465
- for (var i = 0; i < keys.length; i++) {
466
- var key = keys[i];
467
- var rules = ruleMap[key];
468
- var included = /* @__PURE__ */ Object.create(null);
469
- for (var j = 0; j < rules.length; j++) {
470
- var rule = rules[j];
471
- if (!rule.include) continue;
472
- var splice = [j, 1];
473
- if (rule.include !== key && !included[rule.include]) {
474
- included[rule.include] = true;
475
- var newRules = ruleMap[rule.include];
476
- if (!newRules) {
477
- throw new Error("Cannot include nonexistent state '" + rule.include + "' (in state '" + key + "')");
478
- }
479
- for (var k = 0; k < newRules.length; k++) {
480
- var newRule = newRules[k];
481
- if (rules.indexOf(newRule) !== -1) continue;
482
- splice.push(newRule);
483
- }
484
- }
485
- rules.splice.apply(rules, splice);
486
- j--;
487
- }
488
- }
489
- var map = /* @__PURE__ */ Object.create(null);
490
- for (var i = 0; i < keys.length; i++) {
491
- var key = keys[i];
492
- map[key] = compileRules(ruleMap[key], true);
493
- }
494
- for (var i = 0; i < keys.length; i++) {
495
- var name = keys[i];
496
- var state = map[name];
497
- var groups = state.groups;
498
- for (var j = 0; j < groups.length; j++) {
499
- checkStateGroup(groups[j], name, map);
500
- }
501
- var fastKeys = Object.getOwnPropertyNames(state.fast);
502
- for (var j = 0; j < fastKeys.length; j++) {
503
- checkStateGroup(state.fast[fastKeys[j]], name, map);
504
- }
505
- }
506
- return new Lexer(map, start);
507
- }
508
- function keywordTransform(map) {
509
- var isMap = typeof Map !== "undefined";
510
- var reverseMap = isMap ? /* @__PURE__ */ new Map() : /* @__PURE__ */ Object.create(null);
511
- var types = Object.getOwnPropertyNames(map);
512
- for (var i = 0; i < types.length; i++) {
513
- var tokenType = types[i];
514
- var item = map[tokenType];
515
- var keywordList = Array.isArray(item) ? item : [item];
516
- keywordList.forEach(function(keyword) {
517
- if (typeof keyword !== "string") {
518
- throw new Error("keyword must be string (in keyword '" + tokenType + "')");
519
- }
520
- if (isMap) {
521
- reverseMap.set(keyword, tokenType);
522
- } else {
523
- reverseMap[keyword] = tokenType;
524
- }
525
- });
526
- }
527
- return function(k) {
528
- return isMap ? reverseMap.get(k) : reverseMap[k];
529
- };
530
- }
531
- var Lexer = function(states, state) {
532
- this.startState = state;
533
- this.states = states;
534
- this.buffer = "";
535
- this.stack = [];
536
- this.reset();
537
- };
538
- Lexer.prototype.reset = function(data, info) {
539
- this.buffer = data || "";
540
- this.index = 0;
541
- this.line = info ? info.line : 1;
542
- this.col = info ? info.col : 1;
543
- this.queuedToken = info ? info.queuedToken : null;
544
- this.queuedText = info ? info.queuedText : "";
545
- this.queuedThrow = info ? info.queuedThrow : null;
546
- this.setState(info ? info.state : this.startState);
547
- this.stack = info && info.stack ? info.stack.slice() : [];
548
- return this;
549
- };
550
- Lexer.prototype.save = function() {
551
- return {
552
- line: this.line,
553
- col: this.col,
554
- state: this.state,
555
- stack: this.stack.slice(),
556
- queuedToken: this.queuedToken,
557
- queuedText: this.queuedText,
558
- queuedThrow: this.queuedThrow
559
- };
560
- };
561
- Lexer.prototype.setState = function(state) {
562
- if (!state || this.state === state) return;
563
- this.state = state;
564
- var info = this.states[state];
565
- this.groups = info.groups;
566
- this.error = info.error;
567
- this.re = info.regexp;
568
- this.fast = info.fast;
569
- };
570
- Lexer.prototype.popState = function() {
571
- this.setState(this.stack.pop());
572
- };
573
- Lexer.prototype.pushState = function(state) {
574
- this.stack.push(this.state);
575
- this.setState(state);
576
- };
577
- var eat = hasSticky ? function(re, buffer) {
578
- return re.exec(buffer);
579
- } : function(re, buffer) {
580
- var match = re.exec(buffer);
581
- if (match[0].length === 0) {
582
- return null;
583
- }
584
- return match;
585
- };
586
- Lexer.prototype._getGroup = function(match) {
587
- var groupCount = this.groups.length;
588
- for (var i = 0; i < groupCount; i++) {
589
- if (match[i + 1] !== void 0) {
590
- return this.groups[i];
591
- }
592
- }
593
- throw new Error("Cannot find token type for matched text");
594
- };
595
- function tokenToString() {
596
- return this.value;
597
- }
598
- Lexer.prototype.next = function() {
599
- var index = this.index;
600
- if (this.queuedGroup) {
601
- var token = this._token(this.queuedGroup, this.queuedText, index);
602
- this.queuedGroup = null;
603
- this.queuedText = "";
604
- return token;
605
- }
606
- var buffer = this.buffer;
607
- if (index === buffer.length) {
608
- return;
609
- }
610
- var group = this.fast[buffer.charCodeAt(index)];
611
- if (group) {
612
- return this._token(group, buffer.charAt(index), index);
613
- }
614
- var re = this.re;
615
- re.lastIndex = index;
616
- var match = eat(re, buffer);
617
- var error = this.error;
618
- if (match == null) {
619
- return this._token(error, buffer.slice(index, buffer.length), index);
620
- }
621
- var group = this._getGroup(match);
622
- var text = match[0];
623
- if (error.fallback && match.index !== index) {
624
- this.queuedGroup = group;
625
- this.queuedText = text;
626
- return this._token(error, buffer.slice(index, match.index), index);
627
- }
628
- return this._token(group, text, index);
629
- };
630
- Lexer.prototype._token = function(group, text, offset) {
631
- var lineBreaks = 0;
632
- if (group.lineBreaks) {
633
- var matchNL = /\n/g;
634
- var nl = 1;
635
- if (text === "\n") {
636
- lineBreaks = 1;
637
- } else {
638
- while (matchNL.exec(text)) {
639
- lineBreaks++;
640
- nl = matchNL.lastIndex;
641
- }
642
- }
643
- }
644
- var token = {
645
- type: typeof group.type === "function" && group.type(text) || group.defaultType,
646
- value: typeof group.value === "function" ? group.value(text) : text,
647
- text,
648
- toString: tokenToString,
649
- offset,
650
- lineBreaks,
651
- line: this.line,
652
- col: this.col
653
- };
654
- var size = text.length;
655
- this.index += size;
656
- this.line += lineBreaks;
657
- if (lineBreaks !== 0) {
658
- this.col = size - nl + 1;
659
- } else {
660
- this.col += size;
661
- }
662
- if (group.shouldThrow) {
663
- var err = new Error(this.formatError(token, "invalid syntax"));
664
- throw err;
665
- }
666
- if (group.pop) this.popState();
667
- else if (group.push) this.pushState(group.push);
668
- else if (group.next) this.setState(group.next);
669
- return token;
670
- };
671
- if (typeof Symbol !== "undefined" && Symbol.iterator) {
672
- var LexerIterator = function(lexer) {
673
- this.lexer = lexer;
674
- };
675
- LexerIterator.prototype.next = function() {
676
- var token = this.lexer.next();
677
- return { value: token, done: !token };
678
- };
679
- LexerIterator.prototype[Symbol.iterator] = function() {
680
- return this;
681
- };
682
- Lexer.prototype[Symbol.iterator] = function() {
683
- return new LexerIterator(this);
684
- };
685
- }
686
- Lexer.prototype.formatError = function(token, message) {
687
- if (token == null) {
688
- var text = this.buffer.slice(this.index);
689
- var token = {
690
- text,
691
- offset: this.index,
692
- lineBreaks: text.indexOf("\n") === -1 ? 0 : 1,
693
- line: this.line,
694
- col: this.col
695
- };
696
- }
697
- var numLinesAround = 2;
698
- var firstDisplayedLine = Math.max(token.line - numLinesAround, 1);
699
- var lastDisplayedLine = token.line + numLinesAround;
700
- var lastLineDigits = String(lastDisplayedLine).length;
701
- var displayedLines = lastNLines(
702
- this.buffer,
703
- this.line - token.line + numLinesAround + 1
704
- ).slice(0, 5);
705
- var errorLines = [];
706
- errorLines.push(message + " at line " + token.line + " col " + token.col + ":");
707
- errorLines.push("");
708
- for (var i = 0; i < displayedLines.length; i++) {
709
- var line = displayedLines[i];
710
- var lineNo = firstDisplayedLine + i;
711
- errorLines.push(pad(String(lineNo), lastLineDigits) + " " + line);
712
- if (lineNo === token.line) {
713
- errorLines.push(pad("", lastLineDigits + token.col + 1) + "^");
714
- }
715
- }
716
- return errorLines.join("\n");
717
- };
718
- Lexer.prototype.clone = function() {
719
- return new Lexer(this.states, this.state);
720
- };
721
- Lexer.prototype.has = function(tokenType) {
722
- return true;
723
- };
724
- return {
725
- compile,
726
- states: compileStates,
727
- error: Object.freeze({ error: true }),
728
- fallback: Object.freeze({ fallback: true }),
729
- keywords: keywordTransform
730
- };
731
- });
732
- }
733
- });
734
-
735
- // node_modules/.pnpm/@messageformat+parser@5.1.1/node_modules/@messageformat/parser/lib/lexer.js
736
- var require_lexer = __commonJS({
737
- "node_modules/.pnpm/@messageformat+parser@5.1.1/node_modules/@messageformat/parser/lib/lexer.js"(exports) {
738
- "use strict";
739
- var __importDefault = exports && exports.__importDefault || function(mod) {
740
- return mod && mod.__esModule ? mod : { "default": mod };
741
- };
742
- Object.defineProperty(exports, "__esModule", { value: true });
743
- exports.lexer = exports.states = void 0;
744
- var moo_1 = __importDefault(require_moo());
745
- exports.states = {
746
- body: {
747
- doubleapos: { match: "''", value: () => "'" },
748
- quoted: {
749
- lineBreaks: true,
750
- match: /'[{}#](?:[^']|'')*'(?!')/u,
751
- value: (src) => src.slice(1, -1).replace(/''/g, "'")
752
- },
753
- argument: {
754
- lineBreaks: true,
755
- match: /\{\s*[^\p{Pat_Syn}\p{Pat_WS}]+\s*/u,
756
- push: "arg",
757
- value: (src) => src.substring(1).trim()
758
- },
759
- octothorpe: "#",
760
- end: { match: "}", pop: 1 },
761
- content: { lineBreaks: true, match: /[^][^{}#']*/u }
762
- },
763
- arg: {
764
- select: {
765
- lineBreaks: true,
766
- match: /,\s*(?:plural|select|selectordinal)\s*,\s*/u,
767
- next: "select",
768
- value: (src) => src.split(",")[1].trim()
769
- },
770
- "func-args": {
771
- lineBreaks: true,
772
- match: /,\s*[^\p{Pat_Syn}\p{Pat_WS}]+\s*,/u,
773
- next: "body",
774
- value: (src) => src.split(",")[1].trim()
775
- },
776
- "func-simple": {
777
- lineBreaks: true,
778
- match: /,\s*[^\p{Pat_Syn}\p{Pat_WS}]+\s*/u,
779
- value: (src) => src.substring(1).trim()
780
- },
781
- end: { match: "}", pop: 1 }
782
- },
783
- select: {
784
- offset: {
785
- lineBreaks: true,
786
- match: /\s*offset\s*:\s*\d+\s*/u,
787
- value: (src) => src.split(":")[1].trim()
788
- },
789
- case: {
790
- lineBreaks: true,
791
- match: /\s*(?:=\d+|[^\p{Pat_Syn}\p{Pat_WS}]+)\s*\{/u,
792
- push: "body",
793
- value: (src) => src.substring(0, src.indexOf("{")).trim()
794
- },
795
- end: { match: /\s*\}/u, pop: 1 }
796
- }
797
- };
798
- exports.lexer = moo_1.default.states(exports.states);
799
- }
800
- });
801
-
802
- // node_modules/.pnpm/@messageformat+parser@5.1.1/node_modules/@messageformat/parser/lib/parser.js
803
- var require_parser = __commonJS({
804
- "node_modules/.pnpm/@messageformat+parser@5.1.1/node_modules/@messageformat/parser/lib/parser.js"(exports) {
805
- "use strict";
806
- Object.defineProperty(exports, "__esModule", { value: true });
807
- exports.ParseError = void 0;
808
- exports.parse = parse2;
809
- var lexer_js_1 = require_lexer();
810
- var getContext = (lt) => ({
811
- offset: lt.offset,
812
- line: lt.line,
813
- col: lt.col,
814
- text: lt.text,
815
- lineBreaks: lt.lineBreaks
816
- });
817
- var isSelectType = (type) => type === "plural" || type === "select" || type === "selectordinal";
818
- function strictArgStyleParam(lt, param) {
819
- let value = "";
820
- let text = "";
821
- for (const p of param) {
822
- const pText = p.ctx.text;
823
- text += pText;
824
- switch (p.type) {
825
- case "content":
826
- value += p.value;
827
- break;
828
- case "argument":
829
- case "function":
830
- case "octothorpe":
831
- value += pText;
832
- break;
833
- default:
834
- throw new ParseError(lt, `Unsupported part in strict mode function arg style: ${pText}`);
835
- }
836
- }
837
- const c = {
838
- type: "content",
839
- value: value.trim(),
840
- ctx: Object.assign({}, param[0].ctx, { text })
841
- };
842
- return [c];
843
- }
844
- var strictArgTypes = [
845
- "number",
846
- "date",
847
- "time",
848
- "spellout",
849
- "ordinal",
850
- "duration"
851
- ];
852
- var defaultPluralKeys = ["zero", "one", "two", "few", "many", "other"];
853
- var ParseError = class extends Error {
854
- /** @internal */
855
- constructor(lt, msg) {
856
- super(lexer_js_1.lexer.formatError(lt, msg));
857
- }
858
- };
859
- exports.ParseError = ParseError;
860
- var Parser = class {
861
- constructor(src, opt) {
862
- var _a, _b, _c, _d;
863
- this.lexer = lexer_js_1.lexer.reset(src);
864
- this.cardinalKeys = (_a = opt === null || opt === void 0 ? void 0 : opt.cardinal) !== null && _a !== void 0 ? _a : defaultPluralKeys;
865
- this.ordinalKeys = (_b = opt === null || opt === void 0 ? void 0 : opt.ordinal) !== null && _b !== void 0 ? _b : defaultPluralKeys;
866
- this.strict = (_c = opt === null || opt === void 0 ? void 0 : opt.strict) !== null && _c !== void 0 ? _c : false;
867
- this.strictPluralKeys = (_d = opt === null || opt === void 0 ? void 0 : opt.strictPluralKeys) !== null && _d !== void 0 ? _d : true;
868
- }
869
- parse() {
870
- return this.parseBody(false, true);
871
- }
872
- checkSelectKey(lt, type, key) {
873
- if (key[0] === "=") {
874
- if (type === "select") {
875
- throw new ParseError(lt, `The case ${key} is not valid with select`);
876
- }
877
- } else if (type !== "select") {
878
- const keys = type === "plural" ? this.cardinalKeys : this.ordinalKeys;
879
- if (this.strictPluralKeys && keys.length > 0 && !keys.includes(key)) {
880
- const msg = `The ${type} case ${key} is not valid in this locale`;
881
- throw new ParseError(lt, msg);
882
- }
883
- }
884
- }
885
- parseSelect({ value: arg }, inPlural, ctx, type) {
886
- const sel = { type, arg, cases: [], ctx };
887
- if (type === "plural" || type === "selectordinal")
888
- inPlural = true;
889
- else if (this.strict)
890
- inPlural = false;
891
- for (const lt of this.lexer) {
892
- switch (lt.type) {
893
- case "offset":
894
- if (type === "select") {
895
- throw new ParseError(lt, "Unexpected plural offset for select");
896
- }
897
- if (sel.cases.length > 0) {
898
- throw new ParseError(lt, "Plural offset must be set before cases");
899
- }
900
- sel.pluralOffset = Number(lt.value);
901
- ctx.text += lt.text;
902
- ctx.lineBreaks += lt.lineBreaks;
903
- break;
904
- case "case": {
905
- this.checkSelectKey(lt, type, lt.value);
906
- sel.cases.push({
907
- key: lt.value,
908
- tokens: this.parseBody(inPlural),
909
- ctx: getContext(lt)
910
- });
911
- break;
912
- }
913
- case "end":
914
- return sel;
915
- default:
916
- throw new ParseError(lt, `Unexpected lexer token: ${lt.type}`);
917
- }
918
- }
919
- throw new ParseError(null, "Unexpected message end");
920
- }
921
- parseArgToken(lt, inPlural) {
922
- const ctx = getContext(lt);
923
- const argType = this.lexer.next();
924
- if (!argType)
925
- throw new ParseError(null, "Unexpected message end");
926
- ctx.text += argType.text;
927
- ctx.lineBreaks += argType.lineBreaks;
928
- if (this.strict && (argType.type === "func-simple" || argType.type === "func-args") && !strictArgTypes.includes(argType.value)) {
929
- const msg = `Invalid strict mode function arg type: ${argType.value}`;
930
- throw new ParseError(lt, msg);
931
- }
932
- switch (argType.type) {
933
- case "end":
934
- return { type: "argument", arg: lt.value, ctx };
935
- case "func-simple": {
936
- const end = this.lexer.next();
937
- if (!end)
938
- throw new ParseError(null, "Unexpected message end");
939
- if (end.type !== "end") {
940
- throw new ParseError(end, `Unexpected lexer token: ${end.type}`);
941
- }
942
- ctx.text += end.text;
943
- if (isSelectType(argType.value.toLowerCase())) {
944
- throw new ParseError(argType, `Invalid type identifier: ${argType.value}`);
945
- }
946
- return {
947
- type: "function",
948
- arg: lt.value,
949
- key: argType.value,
950
- ctx
951
- };
952
- }
953
- case "func-args": {
954
- if (isSelectType(argType.value.toLowerCase())) {
955
- const msg = `Invalid type identifier: ${argType.value}`;
956
- throw new ParseError(argType, msg);
957
- }
958
- let param = this.parseBody(this.strict ? false : inPlural);
959
- if (this.strict && param.length > 0) {
960
- param = strictArgStyleParam(lt, param);
961
- }
962
- return {
963
- type: "function",
964
- arg: lt.value,
965
- key: argType.value,
966
- param,
967
- ctx
968
- };
969
- }
970
- case "select":
971
- if (isSelectType(argType.value)) {
972
- return this.parseSelect(lt, inPlural, ctx, argType.value);
973
- } else {
974
- throw new ParseError(argType, `Unexpected select type ${argType.value}`);
975
- }
976
- default:
977
- throw new ParseError(argType, `Unexpected lexer token: ${argType.type}`);
978
- }
979
- }
980
- parseBody(inPlural, atRoot) {
981
- const tokens = [];
982
- let content = null;
983
- for (const lt of this.lexer) {
984
- if (lt.type === "argument") {
985
- if (content)
986
- content = null;
987
- tokens.push(this.parseArgToken(lt, inPlural));
988
- } else if (lt.type === "octothorpe" && inPlural) {
989
- if (content)
990
- content = null;
991
- tokens.push({ type: "octothorpe", ctx: getContext(lt) });
992
- } else if (lt.type === "end" && !atRoot) {
993
- return tokens;
994
- } else {
995
- let value = lt.value;
996
- if (!inPlural && lt.type === "quoted" && value[0] === "#") {
997
- if (value.includes("{")) {
998
- const errMsg = `Unsupported escape pattern: ${value}`;
999
- throw new ParseError(lt, errMsg);
1000
- }
1001
- value = lt.text;
1002
- }
1003
- if (content) {
1004
- content.value += value;
1005
- content.ctx.text += lt.text;
1006
- content.ctx.lineBreaks += lt.lineBreaks;
1007
- } else {
1008
- content = { type: "content", value, ctx: getContext(lt) };
1009
- tokens.push(content);
1010
- }
1011
- }
1012
- }
1013
- if (atRoot)
1014
- return tokens;
1015
- throw new ParseError(null, "Unexpected message end");
1016
- }
1017
- };
1018
- function parse2(src, options = {}) {
1019
- const parser = new Parser(src, options);
1020
- return parser.parse();
1021
- }
1022
- }
1023
- });
1024
-
1025
- // packages/toast/toast.js
1026
- import { css, html as html5 } from "lit";
1027
-
1028
- // node_modules/.pnpm/@chbphone55+classnames@2.0.0/node_modules/@chbphone55/classnames/dist/index.m.js
1029
- var r = function() {
1030
- for (var t = [], n = arguments.length; n--; ) t[n] = arguments[n];
1031
- return t.reduce(function(t2, n2) {
1032
- return t2.concat("string" == typeof n2 ? n2 : Array.isArray(n2) ? r.apply(void 0, n2) : "object" == typeof n2 && n2 ? Object.keys(n2).map(function(r2) {
1033
- return n2[r2] ? r2 : "";
1034
- }) : "");
1035
- }, []).join(" ");
1036
- };
1037
-
1038
- // node_modules/.pnpm/@lingui+core@5.2.0_@lingui+babel-plugin-lingui-macro@5.2.0_babel-plugin-macros@3.1.0_ty_33a2537ce57a59324989ce8020998d0e/node_modules/@lingui/core/dist/index.mjs
1039
- var import_unraw = __toESM(require_dist(), 1);
1040
-
1041
- // node_modules/.pnpm/@lingui+message-utils@5.2.0/node_modules/@lingui/message-utils/dist/compileMessage.mjs
1042
- var import_parser = __toESM(require_parser(), 1);
1043
- var DateFormatError = class extends Error {
1044
- /** @internal */
1045
- constructor(msg, token, type) {
1046
- super(msg);
1047
- this.token = token;
1048
- this.type = type || "error";
1049
- }
1050
- };
1051
- var alpha = (width) => width < 4 ? "short" : width === 4 ? "long" : "narrow";
1052
- var numeric = (width) => width % 2 === 0 ? "2-digit" : "numeric";
1053
- function yearOptions(token, onError) {
1054
- switch (token.char) {
1055
- case "y":
1056
- return { year: numeric(token.width) };
1057
- case "r":
1058
- return { calendar: "gregory", year: "numeric" };
1059
- case "u":
1060
- case "U":
1061
- case "Y":
1062
- default:
1063
- onError(`${token.desc} is not supported; falling back to year:numeric`, DateFormatError.WARNING);
1064
- return { year: "numeric" };
1065
- }
1066
- }
1067
- function monthStyle(token, onError) {
1068
- switch (token.width) {
1069
- case 1:
1070
- return "numeric";
1071
- case 2:
1072
- return "2-digit";
1073
- case 3:
1074
- return "short";
1075
- case 4:
1076
- return "long";
1077
- case 5:
1078
- return "narrow";
1079
- default:
1080
- onError(`${token.desc} is not supported with width ${token.width}`);
1081
- return void 0;
1082
- }
1083
- }
1084
- function dayStyle(token, onError) {
1085
- const { char, desc, width } = token;
1086
- if (char === "d") {
1087
- return numeric(width);
1088
- } else {
1089
- onError(`${desc} is not supported`);
1090
- return void 0;
1091
- }
1092
- }
1093
- function weekdayStyle(token, onError) {
1094
- const { char, desc, width } = token;
1095
- if ((char === "c" || char === "e") && width < 3) {
1096
- const msg = `Numeric value is not supported for ${desc}; falling back to weekday:short`;
1097
- onError(msg, DateFormatError.WARNING);
1098
- }
1099
- return alpha(width);
1100
- }
1101
- function hourOptions(token) {
1102
- const hour = numeric(token.width);
1103
- let hourCycle;
1104
- switch (token.char) {
1105
- case "h":
1106
- hourCycle = "h12";
1107
- break;
1108
- case "H":
1109
- hourCycle = "h23";
1110
- break;
1111
- case "k":
1112
- hourCycle = "h24";
1113
- break;
1114
- case "K":
1115
- hourCycle = "h11";
1116
- break;
1117
- }
1118
- return hourCycle ? { hour, hourCycle } : { hour };
1119
- }
1120
- function timeZoneNameStyle(token, onError) {
1121
- const { char, desc, width } = token;
1122
- switch (char) {
1123
- case "v":
1124
- case "z":
1125
- return width === 4 ? "long" : "short";
1126
- case "V":
1127
- if (width === 4)
1128
- return "long";
1129
- onError(`${desc} is not supported with width ${width}`);
1130
- return void 0;
1131
- case "X":
1132
- onError(`${desc} is not supported`);
1133
- return void 0;
1134
- }
1135
- return "short";
1136
- }
1137
- function compileOptions(token, onError) {
1138
- switch (token.field) {
1139
- case "era":
1140
- return { era: alpha(token.width) };
1141
- case "year":
1142
- return yearOptions(token, onError);
1143
- case "month":
1144
- return { month: monthStyle(token, onError) };
1145
- case "day":
1146
- return { day: dayStyle(token, onError) };
1147
- case "weekday":
1148
- return { weekday: weekdayStyle(token, onError) };
1149
- case "period":
1150
- return void 0;
1151
- case "hour":
1152
- return hourOptions(token);
1153
- case "min":
1154
- return { minute: numeric(token.width) };
1155
- case "sec":
1156
- return { second: numeric(token.width) };
1157
- case "tz":
1158
- return { timeZoneName: timeZoneNameStyle(token, onError) };
1159
- case "quarter":
1160
- case "week":
1161
- case "sec-frac":
1162
- case "ms":
1163
- onError(`${token.desc} is not supported`);
1164
- }
1165
- return void 0;
1166
- }
1167
- function getDateFormatOptions(tokens, timeZone, onError = (error) => {
1168
- throw error;
1169
- }) {
1170
- const options = {
1171
- timeZone
1172
- };
1173
- const fields2 = [];
1174
- for (const token of tokens) {
1175
- const { error, field, str } = token;
1176
- if (error) {
1177
- const dte = new DateFormatError(error.message, token);
1178
- dte.stack = error.stack;
1179
- onError(dte);
1180
- }
1181
- if (str) {
1182
- const msg = `Ignoring string part: ${str}`;
1183
- onError(new DateFormatError(msg, token, DateFormatError.WARNING));
1184
- }
1185
- if (field) {
1186
- if (fields2.indexOf(field) === -1)
1187
- fields2.push(field);
1188
- else
1189
- onError(new DateFormatError(`Duplicate ${field} token`, token));
1190
- }
1191
- const opt = compileOptions(token, (msg, isWarning) => onError(new DateFormatError(msg, token, isWarning)));
1192
- if (opt)
1193
- Object.assign(options, opt);
1194
- }
1195
- return options;
1196
- }
1197
- var fields = {
1198
- G: { field: "era", desc: "Era" },
1199
- y: { field: "year", desc: "Year" },
1200
- Y: { field: "year", desc: 'Year of "Week of Year"' },
1201
- u: { field: "year", desc: "Extended year" },
1202
- U: { field: "year", desc: "Cyclic year name" },
1203
- r: { field: "year", desc: "Related Gregorian year" },
1204
- Q: { field: "quarter", desc: "Quarter" },
1205
- q: { field: "quarter", desc: "Stand-alone quarter" },
1206
- M: { field: "month", desc: "Month in year" },
1207
- L: { field: "month", desc: "Stand-alone month in year" },
1208
- w: { field: "week", desc: "Week of year" },
1209
- W: { field: "week", desc: "Week of month" },
1210
- d: { field: "day", desc: "Day in month" },
1211
- D: { field: "day", desc: "Day of year" },
1212
- F: { field: "day", desc: "Day of week in month" },
1213
- g: { field: "day", desc: "Modified julian day" },
1214
- E: { field: "weekday", desc: "Day of week" },
1215
- e: { field: "weekday", desc: "Local day of week" },
1216
- c: { field: "weekday", desc: "Stand-alone local day of week" },
1217
- a: { field: "period", desc: "AM/PM marker" },
1218
- b: { field: "period", desc: "AM/PM/noon/midnight marker" },
1219
- B: { field: "period", desc: "Flexible day period" },
1220
- h: { field: "hour", desc: "Hour in AM/PM (1~12)" },
1221
- H: { field: "hour", desc: "Hour in day (0~23)" },
1222
- k: { field: "hour", desc: "Hour in day (1~24)" },
1223
- K: { field: "hour", desc: "Hour in AM/PM (0~11)" },
1224
- j: { field: "hour", desc: "Hour in preferred cycle" },
1225
- J: { field: "hour", desc: "Hour in preferred cycle without marker" },
1226
- C: { field: "hour", desc: "Hour in preferred cycle with flexible marker" },
1227
- m: { field: "min", desc: "Minute in hour" },
1228
- s: { field: "sec", desc: "Second in minute" },
1229
- S: { field: "sec-frac", desc: "Fractional second" },
1230
- A: { field: "ms", desc: "Milliseconds in day" },
1231
- z: { field: "tz", desc: "Time Zone: specific non-location" },
1232
- Z: { field: "tz", desc: "Time Zone" },
1233
- O: { field: "tz", desc: "Time Zone: localized" },
1234
- v: { field: "tz", desc: "Time Zone: generic non-location" },
1235
- V: { field: "tz", desc: "Time Zone: ID" },
1236
- X: { field: "tz", desc: "Time Zone: ISO8601 with Z" },
1237
- x: { field: "tz", desc: "Time Zone: ISO8601" }
1238
- };
1239
- var isLetter = (char) => char >= "A" && char <= "Z" || char >= "a" && char <= "z";
1240
- function readFieldToken(src, pos) {
1241
- const char = src[pos];
1242
- let width = 1;
1243
- while (src[++pos] === char)
1244
- ++width;
1245
- const field = fields[char];
1246
- if (!field) {
1247
- const msg = `The letter ${char} is not a valid field identifier`;
1248
- return { char, error: new Error(msg), width };
1249
- }
1250
- return { char, field: field.field, desc: field.desc, width };
1251
- }
1252
- function readQuotedToken(src, pos) {
1253
- let str = src[++pos];
1254
- let width = 2;
1255
- if (str === "'")
1256
- return { char: "'", str, width };
1257
- while (true) {
1258
- const next = src[++pos];
1259
- ++width;
1260
- if (next === void 0) {
1261
- const msg = `Unterminated quoted literal in pattern: ${str || src}`;
1262
- return { char: "'", error: new Error(msg), str, width };
1263
- } else if (next === "'") {
1264
- if (src[++pos] !== "'")
1265
- return { char: "'", str, width };
1266
- else
1267
- ++width;
1268
- }
1269
- str += next;
1270
- }
1271
- }
1272
- function readToken(src, pos) {
1273
- const char = src[pos];
1274
- if (!char)
1275
- return null;
1276
- if (isLetter(char))
1277
- return readFieldToken(src, pos);
1278
- if (char === "'")
1279
- return readQuotedToken(src, pos);
1280
- let str = char;
1281
- let width = 1;
1282
- while (true) {
1283
- const next = src[++pos];
1284
- if (!next || isLetter(next) || next === "'")
1285
- return { char, str, width };
1286
- str += next;
1287
- width += 1;
1288
- }
1289
- }
1290
- function parseDateTokens(src) {
1291
- const tokens = [];
1292
- let pos = 0;
1293
- while (true) {
1294
- const token = readToken(src, pos);
1295
- if (!token)
1296
- return tokens;
1297
- tokens.push(token);
1298
- pos += token.width;
1299
- }
1300
- }
1301
- function processTokens(tokens, mapText) {
1302
- if (!tokens.filter((token) => token.type !== "content").length) {
1303
- return tokens.map((token) => mapText(token.value));
1304
- }
1305
- return tokens.map((token) => {
1306
- var _a;
1307
- if (token.type === "content") {
1308
- return mapText(token.value);
1309
- } else if (token.type === "octothorpe") {
1310
- return "#";
1311
- } else if (token.type === "argument") {
1312
- return [token.arg];
1313
- } else if (token.type === "function") {
1314
- const _param = (_a = token == null ? void 0 : token.param) == null ? void 0 : _a[0];
1315
- if (token.key === "date" && _param) {
1316
- const opts = compileDateExpression(_param.value.trim(), (e) => {
1317
- throw new Error(`Unable to compile date expression: ${e.message}`);
1318
- });
1319
- return [token.arg, token.key, opts];
1320
- }
1321
- if (_param) {
1322
- return [token.arg, token.key, _param.value.trim()];
1323
- } else {
1324
- return [token.arg, token.key];
1325
- }
1326
- }
1327
- const offset = token.pluralOffset;
1328
- const formatProps = {};
1329
- token.cases.forEach(({ key, tokens: tokens2 }) => {
1330
- const prop = key[0] === "=" ? key.slice(1) : key;
1331
- formatProps[prop] = processTokens(tokens2, mapText);
1332
- });
1333
- return [
1334
- token.arg,
1335
- token.type,
1336
- __spreadValues({
1337
- offset
1338
- }, formatProps)
1339
- ];
1340
- });
1341
- }
1342
- function compileDateExpression(format, onError) {
1343
- if (/^::/.test(format)) {
1344
- const tokens = parseDateTokens(format.substring(2));
1345
- return getDateFormatOptions(tokens, void 0, onError);
1346
- }
1347
- return format;
1348
- }
1349
- function compileMessage(message, mapText = (v) => v) {
1350
- try {
1351
- return processTokens((0, import_parser.parse)(message), mapText);
1352
- } catch (e) {
1353
- console.error(`${e.message}
1354
-
1355
- Message: ${message}`);
1356
- return [message];
1357
- }
1358
- }
1359
-
1360
- // node_modules/.pnpm/@lingui+core@5.2.0_@lingui+babel-plugin-lingui-macro@5.2.0_babel-plugin-macros@3.1.0_ty_33a2537ce57a59324989ce8020998d0e/node_modules/@lingui/core/dist/index.mjs
1361
- var isString = (s) => typeof s === "string";
1362
- var isFunction = (f) => typeof f === "function";
1363
- var cache = /* @__PURE__ */ new Map();
1364
- var defaultLocale = "en";
1365
- function normalizeLocales(locales) {
1366
- const out = Array.isArray(locales) ? locales : [locales];
1367
- return [...out, defaultLocale];
1368
- }
1369
- function date(locales, value, format) {
1370
- const _locales = normalizeLocales(locales);
1371
- if (!format) {
1372
- format = "default";
1373
- }
1374
- let o;
1375
- if (typeof format === "string") {
1376
- o = {
1377
- day: "numeric",
1378
- month: "short",
1379
- year: "numeric"
1380
- };
1381
- switch (format) {
1382
- case "full":
1383
- o.weekday = "long";
1384
- case "long":
1385
- o.month = "long";
1386
- break;
1387
- case "short":
1388
- o.month = "numeric";
1389
- break;
1390
- }
1391
- } else {
1392
- o = format;
1393
- }
1394
- const formatter = getMemoized(
1395
- () => cacheKey("date", _locales, format),
1396
- () => new Intl.DateTimeFormat(_locales, o)
1397
- );
1398
- return formatter.format(isString(value) ? new Date(value) : value);
1399
- }
1400
- function time(locales, value, format) {
1401
- let o;
1402
- if (!format) {
1403
- format = "default";
1404
- }
1405
- if (typeof format === "string") {
1406
- o = {
1407
- second: "numeric",
1408
- minute: "numeric",
1409
- hour: "numeric"
1410
- };
1411
- switch (format) {
1412
- case "full":
1413
- case "long":
1414
- o.timeZoneName = "short";
1415
- break;
1416
- case "short":
1417
- delete o.second;
1418
- }
1419
- } else {
1420
- o = format;
1421
- }
1422
- return date(locales, value, o);
1423
- }
1424
- function number(locales, value, format) {
1425
- const _locales = normalizeLocales(locales);
1426
- const formatter = getMemoized(
1427
- () => cacheKey("number", _locales, format),
1428
- () => new Intl.NumberFormat(_locales, format)
1429
- );
1430
- return formatter.format(value);
1431
- }
1432
- function plural(locales, ordinal, value, _a) {
1433
- var _b = _a, { offset = 0 } = _b, rules = __objRest(_b, ["offset"]);
1434
- var _a2, _b2;
1435
- const _locales = normalizeLocales(locales);
1436
- const plurals = ordinal ? getMemoized(
1437
- () => cacheKey("plural-ordinal", _locales),
1438
- () => new Intl.PluralRules(_locales, { type: "ordinal" })
1439
- ) : getMemoized(
1440
- () => cacheKey("plural-cardinal", _locales),
1441
- () => new Intl.PluralRules(_locales, { type: "cardinal" })
1442
- );
1443
- return (_b2 = (_a2 = rules[value]) != null ? _a2 : rules[plurals.select(value - offset)]) != null ? _b2 : rules.other;
1444
- }
1445
- function getMemoized(getKey, construct) {
1446
- const key = getKey();
1447
- let formatter = cache.get(key);
1448
- if (!formatter) {
1449
- formatter = construct();
1450
- cache.set(key, formatter);
1451
- }
1452
- return formatter;
1453
- }
1454
- function cacheKey(type, locales, options) {
1455
- const localeKey = locales.join("-");
1456
- return `${type}-${localeKey}-${JSON.stringify(options)}`;
1457
- }
1458
- var UNICODE_REGEX = /\\u[a-fA-F0-9]{4}|\\x[a-fA-F0-9]{2}/;
1459
- var OCTOTHORPE_PH = "%__lingui_octothorpe__%";
1460
- var getDefaultFormats = (locale, passedLocales, formats = {}) => {
1461
- const locales = passedLocales || locale;
1462
- const style = (format) => {
1463
- if (typeof format === "object")
1464
- return format;
1465
- return formats[format];
1466
- };
1467
- const replaceOctothorpe = (value, message) => {
1468
- const numberFormat = Object.keys(formats).length ? style("number") : void 0;
1469
- const valueStr = number(locales, value, numberFormat);
1470
- return message.replace(new RegExp(OCTOTHORPE_PH, "g"), valueStr);
1471
- };
1472
- return {
1473
- plural: (value, cases) => {
1474
- const { offset = 0 } = cases;
1475
- const message = plural(locales, false, value, cases);
1476
- return replaceOctothorpe(value - offset, message);
1477
- },
1478
- selectordinal: (value, cases) => {
1479
- const { offset = 0 } = cases;
1480
- const message = plural(locales, true, value, cases);
1481
- return replaceOctothorpe(value - offset, message);
1482
- },
1483
- select: selectFormatter,
1484
- number: (value, format) => number(
1485
- locales,
1486
- value,
1487
- style(format) || { style: format }
1488
- ),
1489
- date: (value, format) => date(locales, value, style(format) || format),
1490
- time: (value, format) => time(locales, value, style(format) || format)
1491
- };
1492
- };
1493
- var selectFormatter = (value, rules) => {
1494
- var _a;
1495
- return (_a = rules[value]) != null ? _a : rules.other;
1496
- };
1497
- function interpolate(translation, locale, locales) {
1498
- return (values = {}, formats) => {
1499
- const formatters = getDefaultFormats(locale, locales, formats);
1500
- const formatMessage = (tokens, replaceOctothorpe = false) => {
1501
- if (!Array.isArray(tokens))
1502
- return tokens;
1503
- return tokens.reduce((message, token) => {
1504
- if (token === "#" && replaceOctothorpe) {
1505
- return message + OCTOTHORPE_PH;
1506
- }
1507
- if (isString(token)) {
1508
- return message + token;
1509
- }
1510
- const [name, type, format] = token;
1511
- let interpolatedFormat = {};
1512
- if (type === "plural" || type === "selectordinal" || type === "select") {
1513
- Object.entries(format).forEach(
1514
- ([key, value2]) => {
1515
- interpolatedFormat[key] = formatMessage(
1516
- value2,
1517
- type === "plural" || type === "selectordinal"
1518
- );
1519
- }
1520
- );
1521
- } else {
1522
- interpolatedFormat = format;
1523
- }
1524
- let value;
1525
- if (type) {
1526
- const formatter = formatters[type];
1527
- value = formatter(values[name], interpolatedFormat);
1528
- } else {
1529
- value = values[name];
1530
- }
1531
- if (value == null) {
1532
- return message;
1533
- }
1534
- return message + value;
1535
- }, "");
1536
- };
1537
- const result = formatMessage(translation);
1538
- if (isString(result) && UNICODE_REGEX.test(result)) {
1539
- return (0, import_unraw.unraw)(result);
1540
- }
1541
- if (isString(result))
1542
- return result;
1543
- return result ? String(result) : "";
1544
- };
1545
- }
1546
- var __defProp$1 = Object.defineProperty;
1547
- var __defNormalProp$1 = (obj, key, value) => key in obj ? __defProp$1(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
1548
- var __publicField$1 = (obj, key, value) => {
1549
- __defNormalProp$1(obj, typeof key !== "symbol" ? key + "" : key, value);
1550
- return value;
1551
- };
1552
- var EventEmitter = class {
1553
- constructor() {
1554
- __publicField$1(this, "_events", {});
1555
- }
1556
- on(event, listener) {
1557
- var _a2;
1558
- var _a;
1559
- (_a2 = (_a = this._events)[event]) != null ? _a2 : _a[event] = [];
1560
- this._events[event].push(listener);
1561
- return () => this.removeListener(event, listener);
1562
- }
1563
- removeListener(event, listener) {
1564
- const maybeListeners = this._getListeners(event);
1565
- if (!maybeListeners)
1566
- return;
1567
- const index = maybeListeners.indexOf(listener);
1568
- if (~index)
1569
- maybeListeners.splice(index, 1);
1570
- }
1571
- emit(event, ...args) {
1572
- const maybeListeners = this._getListeners(event);
1573
- if (!maybeListeners)
1574
- return;
1575
- maybeListeners.map((listener) => listener.apply(this, args));
1576
- }
1577
- _getListeners(event) {
1578
- const maybeListeners = this._events[event];
1579
- return Array.isArray(maybeListeners) ? maybeListeners : false;
1580
- }
1581
- };
1582
- var __defProp2 = Object.defineProperty;
1583
- var __defNormalProp2 = (obj, key, value) => key in obj ? __defProp2(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
1584
- var __publicField2 = (obj, key, value) => {
1585
- __defNormalProp2(obj, typeof key !== "symbol" ? key + "" : key, value);
1586
- return value;
1587
- };
1588
- var I18n = class extends EventEmitter {
1589
- constructor(params) {
1590
- var _a;
1591
- super();
1592
- __publicField2(this, "_locale", "");
1593
- __publicField2(this, "_locales");
1594
- __publicField2(this, "_localeData", {});
1595
- __publicField2(this, "_messages", {});
1596
- __publicField2(this, "_missing");
1597
- __publicField2(this, "_messageCompiler");
1598
- __publicField2(this, "t", this._.bind(this));
1599
- if (true) {
1600
- this.setMessagesCompiler(compileMessage);
1601
- }
1602
- if (params.missing != null)
1603
- this._missing = params.missing;
1604
- if (params.messages != null)
1605
- this.load(params.messages);
1606
- if (params.localeData != null)
1607
- this.loadLocaleData(params.localeData);
1608
- if (typeof params.locale === "string" || params.locales) {
1609
- this.activate((_a = params.locale) != null ? _a : defaultLocale, params.locales);
1610
- }
1611
- }
1612
- get locale() {
1613
- return this._locale;
1614
- }
1615
- get locales() {
1616
- return this._locales;
1617
- }
1618
- get messages() {
1619
- var _a;
1620
- return (_a = this._messages[this._locale]) != null ? _a : {};
1621
- }
1622
- /**
1623
- * @deprecated this has no effect. Please remove this from the code. Deprecated in v4
1624
- */
1625
- get localeData() {
1626
- var _a;
1627
- return (_a = this._localeData[this._locale]) != null ? _a : {};
1628
- }
1629
- _loadLocaleData(locale, localeData) {
1630
- const maybeLocaleData = this._localeData[locale];
1631
- if (!maybeLocaleData) {
1632
- this._localeData[locale] = localeData;
1633
- } else {
1634
- Object.assign(maybeLocaleData, localeData);
1635
- }
1636
- }
1637
- /**
1638
- * Registers a `MessageCompiler` to enable the use of uncompiled catalogs at runtime.
1639
- *
1640
- * In production builds, the `MessageCompiler` is typically excluded to reduce bundle size.
1641
- * By default, message catalogs should be precompiled during the build process. However,
1642
- * if you need to compile catalogs at runtime, you can use this method to set a message compiler.
1643
- *
1644
- * Example usage:
1645
- *
1646
- * ```ts
1647
- * import { compileMessage } from "@lingui/message-utils/compileMessage";
1648
- *
1649
- * i18n.setMessagesCompiler(compileMessage);
1650
- * ```
1651
- */
1652
- setMessagesCompiler(compiler) {
1653
- this._messageCompiler = compiler;
1654
- return this;
1655
- }
1656
- /**
1657
- * @deprecated Plurals automatically used from Intl.PluralRules you can safely remove this call. Deprecated in v4
1658
- */
1659
- loadLocaleData(localeOrAllData, localeData) {
1660
- if (typeof localeOrAllData === "string") {
1661
- this._loadLocaleData(localeOrAllData, localeData);
1662
- } else {
1663
- Object.keys(localeOrAllData).forEach(
1664
- (locale) => this._loadLocaleData(locale, localeOrAllData[locale])
1665
- );
1666
- }
1667
- this.emit("change");
1668
- }
1669
- _load(locale, messages14) {
1670
- const maybeMessages = this._messages[locale];
1671
- if (!maybeMessages) {
1672
- this._messages[locale] = messages14;
1673
- } else {
1674
- Object.assign(maybeMessages, messages14);
1675
- }
1676
- }
1677
- load(localeOrMessages, messages14) {
1678
- if (typeof localeOrMessages == "string" && typeof messages14 === "object") {
1679
- this._load(localeOrMessages, messages14);
1680
- } else {
1681
- Object.entries(localeOrMessages).forEach(
1682
- ([locale, messages25]) => this._load(locale, messages25)
1683
- );
1684
- }
1685
- this.emit("change");
1686
- }
1687
- /**
1688
- * @param options {@link LoadAndActivateOptions}
1689
- */
1690
- loadAndActivate({ locale, locales, messages: messages14 }) {
1691
- this._locale = locale;
1692
- this._locales = locales || void 0;
1693
- this._messages[this._locale] = messages14;
1694
- this.emit("change");
1695
- }
1696
- activate(locale, locales) {
1697
- if (true) {
1698
- if (!this._messages[locale]) {
1699
- console.warn(`Messages for locale "${locale}" not loaded.`);
1700
- }
1701
- }
1702
- this._locale = locale;
1703
- this._locales = locales;
1704
- this.emit("change");
1705
- }
1706
- _(id, values, options) {
1707
- if (!this.locale) {
1708
- throw new Error(
1709
- "Lingui: Attempted to call a translation function without setting a locale.\nMake sure to call `i18n.activate(locale)` before using Lingui functions.\nThis issue may also occur due to a race condition in your initialization logic."
1710
- );
1711
- }
1712
- let message = options == null ? void 0 : options.message;
1713
- if (!id) {
1714
- id = "";
1715
- }
1716
- if (!isString(id)) {
1717
- values = id.values || values;
1718
- message = id.message;
1719
- id = id.id;
1720
- }
1721
- const messageForId = this.messages[id];
1722
- const messageMissing = messageForId === void 0;
1723
- const missing = this._missing;
1724
- if (missing && messageMissing) {
1725
- return isFunction(missing) ? missing(this._locale, id) : missing;
1726
- }
1727
- if (messageMissing) {
1728
- this.emit("missing", { id, locale: this._locale });
1729
- }
1730
- let translation = messageForId || message || id;
1731
- if (isString(translation)) {
1732
- if (this._messageCompiler) {
1733
- translation = this._messageCompiler(translation);
1734
- } else {
1735
- console.warn(`Uncompiled message detected! Message:
1736
-
1737
- > ${translation}
4
+ > ${b}
1738
5
 
1739
6
  That means you use raw catalog or your catalog doesn't have a translation for the message and fallback was used.
1740
7
  ICU features such as interpolation and plurals will not work properly for that message.
1741
8
 
1742
9
  Please compile your catalog first.
1743
- `);
1744
- }
1745
- }
1746
- if (isString(translation) && UNICODE_REGEX.test(translation))
1747
- return JSON.parse(`"${translation}"`);
1748
- if (isString(translation))
1749
- return translation;
1750
- return interpolate(
1751
- translation,
1752
- this._locale,
1753
- this._locales
1754
- )(values, options == null ? void 0 : options.formats);
1755
- }
1756
- date(value, format) {
1757
- return date(this._locales || this._locale, value, format);
1758
- }
1759
- number(value, format) {
1760
- return number(this._locales || this._locale, value, format);
1761
- }
1762
- };
1763
- function setupI18n(params = {}) {
1764
- return new I18n(params);
1765
- }
1766
- var i18n = setupI18n();
1767
-
1768
- // node_modules/.pnpm/@warp-ds+css@2.1.1_@warp-ds+uno@2.1.0_unocss@0.62.0_postcss@8.5.1_rollup@4.32.1_vite@5._43dfacbc4a7d78ad84ef685a7085e344/node_modules/@warp-ds/css/component-classes/index.js
1769
- var toaster = {
1770
- wrapper: "fixed transform translate-z-0 bottom-16 left-0 right-0 mx-8 sm:mx-16 z-50 pointer-events-none",
1771
- base: "grid auto-rows-auto justify-items-center justify-center mx-auto pointer-events-none",
1772
- content: "w-full"
1773
- };
1774
- var toast = {
1775
- wrapper: "relative overflow-hidden w-full",
1776
- base: "flex group p-8 mt-16 rounded-8 border-2 pointer-events-auto transition-all",
1777
- positive: "s-bg-positive-subtle s-border-positive-subtle s-text",
1778
- warning: "s-bg-warning-subtle s-border-warning-subtle s-text",
1779
- negative: "s-bg-negative-subtle s-border-negative-subtle s-text",
1780
- iconBase: "shrink-0 rounded-full w-[16px] h-[16px] m-[8px]",
1781
- iconPositive: "s-icon-positive",
1782
- iconWarning: "s-icon-warning",
1783
- iconNegative: "s-icon-negative",
1784
- iconLoading: "animate-bounce",
1785
- content: "self-center mr-8 py-4 last-child:mb-0",
1786
- close: "bg-transparent ml-auto p-[8px] s-icon hover:s-icon-hover active:s-icon-active"
1787
- };
1788
- var buttonDefaultStyling = "font-bold focusable justify-center transition-colors ease-in-out";
1789
- var buttonColors = {
1790
- primary: "s-text-inverted bg-[--w-color-button-primary-background] hover:bg-[--w-color-button-primary-background-hover] active:bg-[--w-color-button-primary-background-active]",
1791
- secondary: "s-text-link s-border s-bg hover:s-bg-hover hover:s-border-hover active:s-bg-active",
1792
- utility: "s-text s-bg hover:s-bg-hover active:s-bg-active s-border hover:s-border-hover active:s-border-active",
1793
- destructive: "s-bg-negative s-text-inverted hover:s-bg-negative-hover active:s-bg-negative-active",
1794
- pill: "s-icon hover:s-icon-hover active:s-icon-active bg-transparent hover:bg-[--w-color-button-pill-background-hover] active:bg-[--w-color-button-pill-background-active]",
1795
- disabled: "s-text-inverted s-bg-disabled",
1796
- quiet: "bg-transparent s-text-link hover:s-bg-hover active:s-bg-active",
1797
- utilityQuiet: "s-text bg-transparent hover:s-bg-hover active:s-bg-active",
1798
- negativeQuiet: "bg-transparent s-text-negative hover:s-bg-negative-subtle-hover active:s-bg-negative-subtle-active",
1799
- loading: "s-text s-bg-subtle",
1800
- link: "s-text-link"
1801
- };
1802
- var buttonTypes = {
1803
- primary: `border-0 rounded-8 ${buttonDefaultStyling}`,
1804
- secondary: `border-2 rounded-8 ${buttonDefaultStyling}`,
1805
- utility: `border rounded-4 ${buttonDefaultStyling}`,
1806
- negative: `border-0 rounded-8 ${buttonDefaultStyling}`,
1807
- pill: `p-4 rounded-full border-0 inline-flex items-center justify-center hover:bg-clip-padding ${buttonDefaultStyling}`,
1808
- link: `bg-transparent focusable ease-in-out inline active:underline hover:underline focus:underline ${buttonColors.link}`
1809
- };
1810
- var buttonSizes = {
1811
- xsmall: "py-6 px-16",
1812
- small: "py-8 px-16",
1813
- medium: "py-10 px-14",
1814
- large: "py-12 px-16",
1815
- utility: "py-[11px] px-[15px]",
1816
- smallUtility: "py-[7px] px-[15px]",
1817
- pill: "min-h-[44px] min-w-[44px]",
1818
- pillSmall: "min-h-32 min-w-32",
1819
- link: "p-0"
1820
- };
1821
- var buttonTextSizes = {
1822
- medium: "text-m leading-[24]",
1823
- xsmall: "text-xs"
1824
- };
1825
- var buttonVariants = {
1826
- inProgress: `border-transparent animate-inprogress pointer-events-none ${buttonColors.loading}`,
1827
- // .button--in-progress, a.button--in-progress:visited
1828
- quiet: `border-0 rounded-8 ${buttonDefaultStyling}`,
1829
- utilityQuiet: `border-0 rounded-4 ${buttonDefaultStyling}`,
1830
- negativeQuiet: `border-0 rounded-8 ${buttonDefaultStyling}`,
1831
- isDisabled: `font-bold justify-center transition-colors ease-in-out cursor-default pointer-events-none ${buttonColors.disabled}`
1832
- // .button:disabled, .button--is-disabled
1833
- };
1834
- var button = {
1835
- // Buttontypes
1836
- secondary: `${buttonSizes.medium} ${buttonTextSizes.medium} ${buttonTypes.secondary} ${buttonColors.secondary}`,
1837
- // .button--secondary, .button--default, .button
1838
- secondaryHref: `${buttonSizes.medium} ${buttonTextSizes.medium} ${buttonTypes.secondary} ${buttonColors.secondary}`,
1839
- secondaryDisabled: `${buttonSizes.medium} ${buttonTextSizes.medium} ${buttonTypes.secondary} ${buttonVariants.isDisabled}`,
1840
- secondarySmall: `${buttonTextSizes.xsmall} ${buttonSizes.xsmall} ${buttonTypes.secondary} ${buttonColors.secondary}`,
1841
- secondarySmallDisabled: `${buttonTextSizes.xsmall} ${buttonSizes.xsmall} ${buttonTypes.secondary} ${buttonVariants.isDisabled}`,
1842
- secondaryQuiet: `${buttonSizes.medium} ${buttonTextSizes.medium} ${buttonVariants.quiet} ${buttonColors.quiet}`,
1843
- secondaryQuietDisabled: `${buttonSizes.medium} ${buttonTextSizes.medium} ${buttonVariants.quiet} ${buttonVariants.isDisabled}`,
1844
- secondarySmallQuiet: `${buttonTextSizes.xsmall} ${buttonSizes.xsmall} ${buttonVariants.quiet} ${buttonColors.quiet}`,
1845
- secondarySmallQuietDisabled: `${buttonTextSizes.xsmall} ${buttonSizes.xsmall} ${buttonVariants.quiet} ${buttonVariants.isDisabled}`,
1846
- secondaryLoading: `${buttonSizes.medium} ${buttonTextSizes.medium} ${buttonTypes.secondary} ${buttonVariants.inProgress}`,
1847
- secondarySmallLoading: `${buttonTextSizes.xsmall} ${buttonSizes.xsmall} ${buttonTypes.secondary} ${buttonVariants.inProgress}`,
1848
- secondarySmallQuietLoading: `${buttonTextSizes.xsmall} ${buttonSizes.xsmall} ${buttonVariants.quiet} ${buttonVariants.inProgress}`,
1849
- secondaryQuietLoading: `${buttonSizes.medium} ${buttonTextSizes.medium} ${buttonVariants.quiet} ${buttonVariants.inProgress}`,
1850
- primary: `${buttonSizes.large} ${buttonTextSizes.medium} ${buttonTypes.primary} ${buttonColors.primary}`,
1851
- // .button--primary, .button--cta
1852
- primaryDisabled: `${buttonSizes.large} ${buttonTextSizes.medium} ${buttonVariants.isDisabled} ${buttonTypes.primary}`,
1853
- primarySmall: `${buttonSizes.small} ${buttonTextSizes.xsmall} ${buttonTypes.primary} ${buttonColors.primary}`,
1854
- primarySmallDisabled: `${buttonSizes.small} ${buttonTextSizes.xsmall} ${buttonVariants.isDisabled} ${buttonTypes.primary} `,
1855
- primaryQuiet: `${buttonSizes.large} ${buttonTextSizes.medium} ${buttonVariants.quiet} ${buttonColors.quiet}`,
1856
- primaryQuietDisabled: `${buttonSizes.large} ${buttonTextSizes.medium} ${buttonVariants.quiet} ${buttonVariants.isDisabled}`,
1857
- primarySmallQuiet: `${buttonSizes.small} ${buttonTextSizes.xsmall} ${buttonVariants.quiet} ${buttonColors.quiet}`,
1858
- primarySmallQuietDisabled: `${buttonSizes.small} ${buttonTextSizes.xsmall} ${buttonVariants.quiet} ${buttonVariants.isDisabled}`,
1859
- primaryLoading: `${buttonSizes.large} ${buttonTextSizes.medium} ${buttonVariants.inProgress} ${buttonTypes.primary}`,
1860
- primarySmallLoading: `${buttonSizes.small} ${buttonTextSizes.xsmall} ${buttonVariants.inProgress} ${buttonTypes.primary}`,
1861
- primarySmallQuietLoading: `${buttonSizes.small} ${buttonTextSizes.xsmall} ${buttonVariants.quiet} ${buttonVariants.inProgress} ${buttonTypes.primary}`,
1862
- primaryQuietLoading: `${buttonSizes.large} ${buttonTextSizes.medium} ${buttonVariants.quiet} ${buttonVariants.inProgress}`,
1863
- utility: `${buttonSizes.utility} ${buttonTextSizes.medium} ${buttonTypes.utility} ${buttonColors.utility}`,
1864
- // .button--utility
1865
- utilityDisabled: `${buttonSizes.utility} ${buttonTextSizes.medium} ${buttonTypes.utility} ${buttonVariants.isDisabled}`,
1866
- utilityQuiet: `${buttonSizes.large} ${buttonTextSizes.medium} ${buttonVariants.utilityQuiet} ${buttonColors.utilityQuiet}`,
1867
- // .button--utility-flat
1868
- utilityQuietDisabled: `${buttonSizes.large} ${buttonTextSizes.medium} ${buttonVariants.utilityQuiet} ${buttonVariants.isDisabled}`,
1869
- utilitySmall: `${buttonSizes.smallUtility} ${buttonTextSizes.xsmall} ${buttonTypes.utility} ${buttonColors.utility}`,
1870
- utilitySmallDisabled: `${buttonSizes.smallUtility} ${buttonTextSizes.xsmall} ${buttonTypes.utility} ${buttonVariants.isDisabled}`,
1871
- utilitySmallQuiet: `${buttonSizes.smallUtility} ${buttonTextSizes.xsmall} ${buttonVariants.utilityQuiet} ${buttonColors.utilityQuiet}`,
1872
- utilitySmallQuietDisabled: `${buttonSizes.smallUtility} ${buttonTextSizes.xsmall} ${buttonVariants.utilityQuiet} ${buttonVariants.isDisabled}`,
1873
- utilityLoading: `${buttonSizes.large} ${buttonTextSizes.medium} ${buttonTypes.utility} ${buttonVariants.inProgress}`,
1874
- utilitySmallLoading: `${buttonSizes.smallUtility} ${buttonTextSizes.xsmall} ${buttonTypes.utility} ${buttonVariants.inProgress}`,
1875
- utilityQuietLoading: `${buttonSizes.large} ${buttonTextSizes.medium} ${buttonVariants.inProgress} ${buttonVariants.utilityQuiet}`,
1876
- utilitySmallQuietLoading: `${buttonSizes.smallUtility} ${buttonTextSizes.xsmall} ${buttonVariants.inProgress} ${buttonVariants.utilityQuiet}`,
1877
- negative: `${buttonSizes.large} ${buttonTextSizes.medium} ${buttonTypes.negative} ${buttonColors.destructive}`,
1878
- // .button--destructive
1879
- negativeDisabled: `${buttonSizes.large} ${buttonTextSizes.medium} ${buttonTypes.negative} ${buttonVariants.isDisabled}`,
1880
- negativeQuiet: `${buttonSizes.large} ${buttonTextSizes.medium} ${buttonVariants.negativeQuiet} ${buttonColors.negativeQuiet}`,
1881
- // .button--destructive-flat
1882
- negativeQuietDisabled: `${buttonSizes.large} ${buttonTextSizes.medium} ${buttonVariants.negativeQuiet}${buttonVariants.isDisabled}`,
1883
- negativeSmall: `${buttonSizes.small} ${buttonTextSizes.xsmall} ${buttonTypes.negative} ${buttonColors.destructive}`,
1884
- negativeSmallDisabled: `${buttonSizes.small} ${buttonTextSizes.xsmall} ${buttonTypes.negative} ${buttonVariants.isDisabled}`,
1885
- negativeSmallQuiet: `${buttonSizes.small} ${buttonTextSizes.xsmall} ${buttonVariants.negativeQuiet} ${buttonColors.negativeQuiet}`,
1886
- negativeSmallQuietDisabled: `${buttonSizes.small} ${buttonTextSizes.xsmall} ${buttonVariants.negativeQuiet} ${buttonVariants.isDisabled}`,
1887
- negativeLoading: `${buttonSizes.large} ${buttonTextSizes.medium} ${buttonTypes.negative} ${buttonVariants.inProgress}`,
1888
- negativeSmallLoading: `${buttonSizes.small} ${buttonTextSizes.xsmall} ${buttonVariants.inProgress} ${buttonTypes.negative}`,
1889
- negativeQuietLoading: `${buttonSizes.large} ${buttonTextSizes.medium} ${buttonVariants.negativeQuiet} ${buttonTypes.negative} ${buttonVariants.inProgress}`,
1890
- negativeSmallQuietLoading: `${buttonSizes.small} ${buttonTextSizes.xsmall} ${buttonVariants.negativeQuiet} ${buttonVariants.inProgress}`,
1891
- pill: `${buttonSizes.pill} ${buttonTextSizes.medium} ${buttonTypes.pill} ${buttonColors.pill}`,
1892
- // .button--pill
1893
- pillSmall: `${buttonSizes.pillSmall} ${buttonTextSizes.xsmall} ${buttonTypes.pill} ${buttonColors.pill}`,
1894
- pillLoading: `${buttonSizes.pill} ${buttonTextSizes.medium} ${buttonTypes.pill} ${buttonVariants.inProgress}`,
1895
- pillSmallLoading: `${buttonSizes.pillSmall} ${buttonTextSizes.xsmall} ${buttonTypes.pill} ${buttonVariants.inProgress}`,
1896
- link: `${buttonSizes.link} ${buttonTextSizes.medium} ${buttonTypes.link}`,
1897
- linkSmall: `${buttonSizes.link} ${buttonTextSizes.xsmall} ${buttonTypes.link}`,
1898
- linkAsButton: "inline-block active:no-underline hover:no-underline focus:no-underline text-center",
1899
- a11y: "sr-only",
1900
- fullWidth: "w-full max-w-full",
1901
- contentWidth: "max-w-max"
1902
- };
1903
- var modal = {
1904
- backdrop: "fixed inset-0 flex sm:place-content-center sm:place-items-center items-end z-30 [--w-modal-max-height:80%] [--w-modal-width:640px] bg-[--w-black/25]",
1905
- base: "pb-safe-[32] shadow-m max-h-[--w-modal-max-height] min-h-[--w-modal-min-height] w-[--w-modal-width] h-[--w-modal-height] relative transition-300 ease-in-out backface-hidden will-change-height rounded-8 mx-0 sm:mx-16 bg-[--w-s-color-surface-elevated-100] flex flex-col overflow-hidden outline-none space-y-16 pt-8 sm:pt-32 sm:pb-32 rounded-b-0 sm:rounded-b-8",
1906
- content: "block overflow-y-auto overflow-x-hidden last-child:mb-0 grow shrink px-16 sm:px-32 relative",
1907
- footer: "flex justify-end shrink-0 px-16 sm:px-32",
1908
- transitionTitle: "transition-all duration-300",
1909
- transitionTitleCenter: "justify-self-center self-center",
1910
- transitionTitleColSpan: "col-span-2",
1911
- title: "py-8 sm:py-0 -mt-4 sm:-mt-8 min-h-40 sm:min-h-48 grid gap-8 sm:gap-16 grid-cols-[auto_1fr_auto] items-start px-16 sm:px-32 border-b sm:border-b-0 shrink-0",
1912
- titleText: "mb-0 h4 sm:h3",
1913
- titleButton: `${buttonTextSizes.medium} ${buttonTypes.pill} ${buttonColors.pill} sm:min-h-[44px] sm:min-w-[44px] min-h-[32px] min-w-[32px]`,
1914
- titleButtonLeft: "-ml-8 sm:-ml-12 justify-self-start",
1915
- titleButtonRight: "-mr-8 sm:-mr-12 justify-self-end",
1916
- titleButtonIcon: "h-16 w-16 sm:h-24 sm:w-24",
1917
- titleButtonIconRotated: "transform rotate-90"
1918
- };
1919
- var prefixSuffixWrapper = "absolute top-0 bottom-0 flex justify-center items-center focusable rounded-4 focus:[--w-outline-offset:-2px] bg-transparent ";
1920
- var suffix = {
1921
- wrapper: prefixSuffixWrapper + "right-0",
1922
- wrapperWithLabel: "w-max pr-12",
1923
- wrapperWithIcon: "w-40",
1924
- label: "antialiased block relative cursor-default pb-0 font-bold text-xs s-text"
1925
- };
1926
- var prefix = {
1927
- wrapper: prefixSuffixWrapper + "left-0",
1928
- wrapperWithLabel: "w-max pl-12",
1929
- wrapperWithIcon: "w-40",
1930
- label: "antialiased block relative cursor-default pb-0 font-bold text-xs s-text"
1931
- };
1932
- var toggle = {
1933
- // wrapper classes
1934
- field: "relative text-m",
1935
- // true
1936
- wrapper: "relative py-1",
1937
- // true
1938
- wrapperRadioButtons: "inline-flex font-bold rounded-8 focus-within:focusable",
1939
- // isRadioButton && !isEqualWidth
1940
- wrapperRadioButtonsJustified: "flex font-bold rounded-8 focus-within:focusable",
1941
- // isRadioButton && isEqualWidth,
1942
- // group classes
1943
- radioButtonsGroup: "group",
1944
- // isRadioButton
1945
- radioButtonsGroupJustified: "grow-1 shrink-0 basis-auto",
1946
- // isRadioButton && isEqualWidth
1947
- // input classes
1948
- input: "peer",
1949
- a11y: "sr-only",
1950
- // label classes
1951
- label: "peer-focus:focusable cursor-pointer text-m s-text s-border py-2 pl-28 select-none relative block before:border before:absolute before:transition-all before:left-0 before:w-20 before:h-20 before:top-2",
1952
- // !isRadioButton
1953
- labelBefore: 'before:content-[""] before:block',
1954
- // !isRadioButton && !isIndeterminate
1955
- checkbox: "before:s-bg before:rounded-2 hover:before:s-border-primary hover:before:s-bg-hover peer-checked:before:bg-center peer-checked:before:bg-[url(var(--w-icon-toggle-checked))] peer-checked:before:s-border-primary peer-checked:before:s-bg-primary peer-checked:peer-hover:before:s-border-primary-hover peer-checked:peer-hover:before:s-bg-primary-hover",
1956
- // isCheckbox && !isIndeterminate && !isInvalid && !isDisabled
1957
- checkboxInvalid: "before:s-bg before:s-border-negative before:rounded-2 hover:before:s-bg-negative-subtle-hover hover:before:s-border-negative-hover peer-checked:before:bg-center peer-checked:before:bg-[url(var(--w-icon-toggle-checked))] peer-checked:before:s-bg-negative peer-checked:before:s-border-negative peer-checked:peer-hover:before:s-bg-negative-hover peer-checked:peer-hover:before:s-border-negative-hover",
1958
- // isCheckbox && !isIndeterminate && isInvalid && !isDisabled
1959
- checkboxDisabled: "before:s-bg-disabled-subtle before:s-border-disabled pointer-events-none before:rounded-2 peer-checked:before:bg-center peer-checked:before:bg-[url(var(--w-icon-toggle-checked))] peer-checked:before:s-border-disabled peer-checked:before:s-bg-disabled",
1960
- // isCheckbox && !isIndeterminate && !isInvalid && isDisabled
1961
- indeterminate: 'before:content-["\u2013"] before:rounded-2 before:leading-xs before:text-center before:font-bold before:s-icon-inverted peer-indeterminate:before:s-border-primary peer-indeterminate:before:s-bg-primary peer-indeterminate:hover:before:s-border-primary-hover peer-indeterminate:hover:before:s-bg-primary-hover',
1962
- // isCheckbox && isIndeterminate && !isInvalid && !isDisabled
1963
- indeterminateInvalid: 'before:content-["\u2013"] before:rounded-2 before:leading-xs before:text-center before:font-bold before:s-icon-inverted peer-indeterminate:before:s-border-negative peer-indeterminate:before:s-bg-negative peer-indeterminate:hover:before:s-border-negative-hover peer-indeterminate:hover:before:s-bg-negative-hover',
1964
- // isCheckbox && isIndeterminate && isInvalid && !isDisabled
1965
- indeterminateDisabled: 'before:content-["\u2013"] before:rounded-2 before:leading-xs before:text-center before:font-bold pointer-events-none before:s-icon-inverted peer-indeterminate:before:s-border-disabled peer-indeterminate:before:s-bg-disabled',
1966
- // isCheckbox && isIndeterminate && !isInvalid && isDisabled
1967
- radio: "before:s-bg before:rounded-full peer-checked:before:border-[6] peer-checked:before:s-border-selected peer-checked:peer-hover:before:s-border-selected-hover peer-hover:before:s-border-primary peer-hover:before:s-bg-hover",
1968
- // isRadio && !isDisabled && !isInvalid
1969
- radioInvalid: "before:s-bg before:s-border-negative before:rounded-full peer-checked:before:border-[6] peer-hover:before:s-bg-negative-subtle peer-hover:before:s-border-negative-hover peer-checked:before:s-border-negative peer-checked:peer-hover:before:s-border-negative-hover",
1970
- // isRadio && isInvalid && !isDisabled
1971
- radioDisabled: "before:s-bg-disabled-subtle before:s-border-disabled pointer-events-none before:rounded-full peer-checked:before:border-[6]",
1972
- // isRadio && !isInvalid && isDisabled
1973
- radioButtonsLabel: "peer-hover:peer-not-checked:s-bg-hover peer-checked:s-text-inverted peer-checked:s-bg-primary peer-checked:s-border-primary block relative font-bold cursor-pointer s-text-link text-center s-bg border-2 s-border group-first-of-type:rounded-tl-8 group-first-of-type:rounded-bl-8 group-last-of-type:rounded-tr-8 group-last-of-type:rounded-br-8 group-not-last-of-type:border-r-0 peer-checked:z-10 group-not-first:-ml-2",
1974
- // isRadioButtons
1975
- radioButtonsRegular: "text-s py-8 pl-12 pr-14",
1976
- // isRadioButtons && !isSmall
1977
- radioButtonsSmall: "text-xs py-[5px] px-[8px]"
1978
- // isRadioButtons && isSmall
1979
- };
1980
- var deadToggle = {
1981
- wrapper: `${toggle.wrapper} h-20 w-20 pointer-events-none`,
1982
- input: `${toggle.input} hidden`,
1983
- inputVue: "hidden",
1984
- labelVue: "-mt-2",
1985
- labelRadio: `${toggle.label} ${toggle.labelBefore} ${toggle.radio}`,
1986
- labelCheckbox: `${toggle.label} ${toggle.labelBefore} ${toggle.checkbox}`
1987
- };
1988
- var attention = {
1989
- base: "border-2 relative flex items-start",
1990
- tooltip: "s-bg-inverted border-[--w-s-color-background-inverted] shadow-m s-text-inverted-static rounded-4 py-6 px-8",
1991
- callout: "bg-[--w-color-callout-background] border-[--w-color-callout-border] s-text py-8 px-16 rounded-8",
1992
- highlight: "bg-[--w-color-callout-background] border-[--w-color-callout-border] s-text py-8 px-16 rounded-8 drop-shadow-m translate-z-0",
1993
- popover: "bg-[--w-s-color-surface-elevated-300] border-[--w-s-color-surface-elevated-300] s-text rounded-8 p-16 drop-shadow-m translate-z-0",
1994
- arrowBase: "absolute h-[14px] w-[14px] border-2 border-b-0 border-r-0 rounded-tl-4 transform",
1995
- arrowDirectionLeftStart: "-left-[8px]",
1996
- arrowDirectionLeft: "-left-[8px]",
1997
- arrowDirectionLeftEnd: "-left-[8px]",
1998
- arrowDirectionRightStart: "-right-[8px]",
1999
- arrowDirectionRight: "-right-[8px]",
2000
- arrowDirectionRightEnd: "-right-[8px]",
2001
- arrowDirectionBottomStart: "-bottom-[8px]",
2002
- arrowDirectionBottom: "-bottom-[8px]",
2003
- arrowDirectionBottomEnd: "-bottom-[8px]",
2004
- arrowDirectionTopStart: "-top-[8px]",
2005
- arrowDirectionTop: "-top-[8px]",
2006
- arrowDirectionTopEnd: "-top-[8px]",
2007
- arrowTooltip: "s-bg-inverted border-[--w-s-color-background-inverted]",
2008
- arrowCallout: "bg-[--w-color-callout-background] border-[--w-color-callout-border]",
2009
- arrowPopover: "bg-[--w-s-color-surface-elevated-300] border-[--w-s-color-surface-elevated-300]",
2010
- arrowHighlight: "bg-[--w-color-callout-background] border-[--w-color-callout-border]",
2011
- content: "last-child:mb-0",
2012
- notCallout: "absolute z-50",
2013
- closeBtn: `${buttonTextSizes.medium} ${buttonTypes.pill} ${buttonColors.pill} justify-self-end -mr-8 ml-8`
2014
- };
2015
-
2016
- // packages/toast/toast.js
2017
- import WarpElement from "@warp-ds/elements-core";
2018
-
2019
- // node_modules/.pnpm/element-collapse@1.1.0/node_modules/element-collapse/index.js
2020
- var windowExists = typeof window !== "undefined";
2021
- var prefersMotion = true;
2022
- if (windowExists) {
2023
- const query = window.matchMedia("(prefers-reduced-motion: reduce)");
2024
- const callback = ({ matches }) => prefersMotion = !matches;
2025
- if (query.addEventListener) query.addEventListener("change", callback);
2026
- callback(query);
2027
- }
2028
- var removeTransition = (el) => {
2029
- el.style.transition = null;
2030
- el.style.backfaceVisibility = null;
2031
- el.style.overflow = null;
2032
- };
2033
- var addTransition = (el) => {
2034
- const timing = prefersMotion ? "var(--f-expansion-duration, 0.3s)" : "0.01s";
2035
- el.style.transition = `height ${timing}`;
2036
- el.style.backfaceVisibility = "hidden";
2037
- el.style.overflow = "hidden";
2038
- };
2039
- var getAfterExpandCallback = (el, done) => () => {
2040
- el.style.height = "auto";
2041
- el.style.overflow = null;
2042
- if (done) done();
2043
- };
2044
- var getAfterCollapseCallback = (done) => () => {
2045
- if (done) done();
2046
- };
2047
- var expand = (el, done) => {
2048
- const returnPromise = (() => {
2049
- if (!done) return new Promise((r2) => {
2050
- done = r2;
2051
- });
2052
- })();
2053
- const afterExpandCallback = getAfterExpandCallback(el, done);
2054
- removeTransition(el);
2055
- el.style.height = "auto";
2056
- let dest = el.scrollHeight;
2057
- windowExists && requestAnimationFrame(() => {
2058
- el.addEventListener("transitionend", afterExpandCallback, { once: true });
2059
- el.style.height = "0px";
2060
- el.style.transitionTimingFunction = "ease-out";
2061
- addTransition(el);
2062
- requestAnimationFrame(() => el.style.height = dest + "px");
2063
- });
2064
- if (returnPromise) return returnPromise;
2065
- };
2066
- var collapse = (el, done) => {
2067
- const returnPromise = (() => {
2068
- if (!done) return new Promise((r2) => {
2069
- done = r2;
2070
- });
2071
- })();
2072
- const afterCollapseCallback = getAfterCollapseCallback(done);
2073
- removeTransition(el);
2074
- let original = el.scrollHeight;
2075
- windowExists && requestAnimationFrame(() => {
2076
- el.addEventListener("transitionend", afterCollapseCallback, { once: true });
2077
- el.style.height = original + "px";
2078
- el.style.transitionTimingFunction = "ease-in";
2079
- addTransition(el);
2080
- requestAnimationFrame(() => el.style.height = "0px");
2081
- });
2082
- if (returnPromise) return returnPromise;
2083
- };
2084
-
2085
- // packages/toast/toast.js
2086
- import { when } from "lit/directives/when.js";
2087
-
2088
- // node_modules/.pnpm/@warp-ds+icons@2.5.0_@lingui+core@5.2.0_@lingui+babel-plugin-lingui-macro@5.2.0_babel-p_f73b1d3c5bd9121d6f30248535f1f172/node_modules/@warp-ds/icons/dist/elements/warning-16.js
2089
- import { LitElement } from "lit";
2090
- import { unsafeStatic, html } from "lit/static-html.js";
2091
- var messages = JSON.parse('{"icon.title.warning":["Varseltrekant med utropstegn"]}');
2092
- var messages2 = JSON.parse('{"icon.title.warning":["Warning triangle with exclamation point"]}');
2093
- var messages3 = JSON.parse('{"icon.title.warning":["Varoituskolmio, jonka sis\xE4ll\xE4 on huutomerkki"]}');
2094
- var messages4 = JSON.parse('{"icon.title.warning":["Advarselstrekant med et udr\xE5bstegn"]}');
2095
- var messages5 = JSON.parse('{"icon.title.warning":["Varningstriangel med utropstecken"]}');
2096
- var supportedLocales = ["en", "nb", "fi", "da", "sv"];
2097
- var defaultLocale2 = "en";
2098
- var detectByBrand = () => {
2099
- var _a;
2100
- let value;
2101
- switch ((_a = process == null ? void 0 : process.env) == null ? void 0 : _a.NMP_BRAND) {
2102
- case "FINN":
2103
- value = "nb";
2104
- break;
2105
- case "TORI":
2106
- value = "fi";
2107
- break;
2108
- case "BLOCKET":
2109
- value = "sv";
2110
- break;
2111
- case "DBA":
2112
- value = "da";
2113
- break;
2114
- default:
2115
- value = "en";
2116
- }
2117
- return value;
2118
- };
2119
- var detectByHost = () => {
2120
- var _a;
2121
- const hostname = (_a = document == null ? void 0 : document.location) == null ? void 0 : _a.hostname;
2122
- if (hostname == null ? void 0 : hostname.includes("finn")) {
2123
- return "nb";
2124
- } else if (hostname.includes("tori")) {
2125
- return "fi";
2126
- } else if (hostname.includes("blocket")) {
2127
- return "sv";
2128
- } else if (hostname.includes("dba")) {
2129
- return "da";
2130
- } else {
2131
- return defaultLocale2;
2132
- }
2133
- };
2134
- var getSupportedLocale = (usedLocale) => {
2135
- return supportedLocales.find(
2136
- (locale) => usedLocale === locale || usedLocale.toLowerCase().includes(locale)
2137
- ) || detectByHost();
2138
- };
2139
- function detectLocale() {
2140
- var _a;
2141
- if (typeof window === "undefined") {
2142
- const serverLocale = detectByBrand();
2143
- return getSupportedLocale(serverLocale);
2144
- }
2145
- try {
2146
- const htmlLocale = (_a = document == null ? void 0 : document.documentElement) == null ? void 0 : _a.lang;
2147
- const hostLocale = detectByHost();
2148
- if (!supportedLocales.includes(htmlLocale)) {
2149
- console.warn("Unsupported locale set in html lang tag, falling back to detection by hostname");
2150
- return getSupportedLocale(hostLocale);
2151
- }
2152
- return getSupportedLocale(htmlLocale != null ? htmlLocale : hostLocale);
2153
- } catch (e) {
2154
- console.warn("could not detect locale, falling back to source locale", e);
2155
- return defaultLocale2;
2156
- }
2157
- }
2158
- var getMessages = (locale, enMsg, nbMsg, fiMsg, daMsg, svMsg) => {
2159
- if (locale === "nb") return nbMsg;
2160
- if (locale === "fi") return fiMsg;
2161
- if (locale === "da") return daMsg;
2162
- if (locale === "sv") return svMsg;
2163
- return enMsg;
2164
- };
2165
- var activateI18n = (enMessages, nbMessages, fiMessages, daMessages, svMessages) => {
2166
- const locale = detectLocale();
2167
- const messages62 = getMessages(locale, enMessages, nbMessages, fiMessages, daMessages, svMessages);
2168
- i18n.load(locale, messages62);
2169
- i18n.activate(locale);
2170
- };
2171
- activateI18n(messages2, messages, messages3, messages4, messages5);
2172
- var IconWarning16 = class extends LitElement {
2173
- render() {
2174
- const title = i18n.t({ message: `Warning triangle with exclamation point`, id: "icon.title.warning", comment: "Title for warning icon" });
2175
- return html`<svg xmlns="http://www.w3.org/2000/svg"width="16"height="16"fill="none"viewBox="0 0 16 16" part="w-icon-warning-16-part">${unsafeStatic(`<title>${title}</title>`)}<path stroke="currentColor" d="m.712 14.07 6.25-12.994a1 1 0 0 1 1.792-.022l6.635 12.995a1 1 0 0 1-.89 1.455H1.613a1 1 0 0 1-.902-1.434Z"></path><path stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" d="M8 6v4.992M8 13v.333"></path></svg>`;
2176
- }
2177
- };
2178
- if (!customElements.get("w-icon-warning-16")) {
2179
- customElements.define("w-icon-warning-16", IconWarning16);
2180
- }
2181
-
2182
- // node_modules/.pnpm/@warp-ds+icons@2.5.0_@lingui+core@5.2.0_@lingui+babel-plugin-lingui-macro@5.2.0_babel-p_f73b1d3c5bd9121d6f30248535f1f172/node_modules/@warp-ds/icons/dist/elements/error-16.js
2183
- import { LitElement as LitElement2 } from "lit";
2184
- import { unsafeStatic as unsafeStatic2, html as html2 } from "lit/static-html.js";
2185
- var messages6 = JSON.parse('{"icon.title.error":["\xC5ttekant med utropstegn"]}');
2186
- var messages22 = JSON.parse('{"icon.title.error":["Octagon with exclamation point"]}');
2187
- var messages32 = JSON.parse('{"icon.title.error":["Kahdeksankulmio, jonka sis\xE4ll\xE4 on huutomerkki"]}');
2188
- var messages42 = JSON.parse('{"icon.title.error":["Ottekant med et udr\xE5bstegn"]}');
2189
- var messages52 = JSON.parse('{"icon.title.error":["Oktagon med utropstecken"]}');
2190
- var supportedLocales2 = ["en", "nb", "fi", "da", "sv"];
2191
- var defaultLocale3 = "en";
2192
- var detectByBrand2 = () => {
2193
- var _a;
2194
- let value;
2195
- switch ((_a = process == null ? void 0 : process.env) == null ? void 0 : _a.NMP_BRAND) {
2196
- case "FINN":
2197
- value = "nb";
2198
- break;
2199
- case "TORI":
2200
- value = "fi";
2201
- break;
2202
- case "BLOCKET":
2203
- value = "sv";
2204
- break;
2205
- case "DBA":
2206
- value = "da";
2207
- break;
2208
- default:
2209
- value = "en";
2210
- }
2211
- return value;
2212
- };
2213
- var detectByHost2 = () => {
2214
- var _a;
2215
- const hostname = (_a = document == null ? void 0 : document.location) == null ? void 0 : _a.hostname;
2216
- if (hostname == null ? void 0 : hostname.includes("finn")) {
2217
- return "nb";
2218
- } else if (hostname.includes("tori")) {
2219
- return "fi";
2220
- } else if (hostname.includes("blocket")) {
2221
- return "sv";
2222
- } else if (hostname.includes("dba")) {
2223
- return "da";
2224
- } else {
2225
- return defaultLocale3;
2226
- }
2227
- };
2228
- var getSupportedLocale2 = (usedLocale) => {
2229
- return supportedLocales2.find(
2230
- (locale) => usedLocale === locale || usedLocale.toLowerCase().includes(locale)
2231
- ) || detectByHost2();
2232
- };
2233
- function detectLocale2() {
2234
- var _a;
2235
- if (typeof window === "undefined") {
2236
- const serverLocale = detectByBrand2();
2237
- return getSupportedLocale2(serverLocale);
2238
- }
2239
- try {
2240
- const htmlLocale = (_a = document == null ? void 0 : document.documentElement) == null ? void 0 : _a.lang;
2241
- const hostLocale = detectByHost2();
2242
- if (!supportedLocales2.includes(htmlLocale)) {
2243
- console.warn("Unsupported locale set in html lang tag, falling back to detection by hostname");
2244
- return getSupportedLocale2(hostLocale);
2245
- }
2246
- return getSupportedLocale2(htmlLocale != null ? htmlLocale : hostLocale);
2247
- } catch (e) {
2248
- console.warn("could not detect locale, falling back to source locale", e);
2249
- return defaultLocale3;
2250
- }
2251
- }
2252
- var getMessages2 = (locale, enMsg, nbMsg, fiMsg, daMsg, svMsg) => {
2253
- if (locale === "nb") return nbMsg;
2254
- if (locale === "fi") return fiMsg;
2255
- if (locale === "da") return daMsg;
2256
- if (locale === "sv") return svMsg;
2257
- return enMsg;
2258
- };
2259
- var activateI18n2 = (enMessages, nbMessages, fiMessages, daMessages, svMessages) => {
2260
- const locale = detectLocale2();
2261
- const messages62 = getMessages2(locale, enMessages, nbMessages, fiMessages, daMessages, svMessages);
2262
- i18n.load(locale, messages62);
2263
- i18n.activate(locale);
2264
- };
2265
- activateI18n2(messages22, messages6, messages32, messages42, messages52);
2266
- var IconError16 = class extends LitElement2 {
2267
- render() {
2268
- const title = i18n.t({ message: `Octagon with exclamation point`, id: "icon.title.error", comment: "Title for error icon" });
2269
- return html2`<svg xmlns="http://www.w3.org/2000/svg"width="16"height="16"fill="none"viewBox="0 0 16 16" part="w-icon-error-16-part">${unsafeStatic2(`<title>${title}</title>`)}<path stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" d="M.5 11.107 4.748 15.5h6.503l4.248-4.393V4.893L11.252.5H4.748L.5 4.893z"></path><path stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" d="M8 11.398a.25.25 0 1 1 0-.5m0 .5a.25.25 0 1 0 0-.5"></path><path stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-miterlimit="10" d="M8 8.5V3"></path></svg>`;
2270
- }
2271
- };
2272
- if (!customElements.get("w-icon-error-16")) {
2273
- customElements.define("w-icon-error-16", IconError16);
2274
- }
2275
-
2276
- // node_modules/.pnpm/@warp-ds+icons@2.5.0_@lingui+core@5.2.0_@lingui+babel-plugin-lingui-macro@5.2.0_babel-p_f73b1d3c5bd9121d6f30248535f1f172/node_modules/@warp-ds/icons/dist/elements/success-16.js
2277
- import { LitElement as LitElement3 } from "lit";
2278
- import { unsafeStatic as unsafeStatic3, html as html3 } from "lit/static-html.js";
2279
- var messages7 = JSON.parse('{"icon.title.success":["Sirkel med sjekkmerke"]}');
2280
- var messages23 = JSON.parse('{"icon.title.success":["Circle with checkmark"]}');
2281
- var messages33 = JSON.parse('{"icon.title.success":["Ympyr\xE4, jonka sis\xE4ll\xE4 on valintamerkki"]}');
2282
- var messages43 = JSON.parse('{"icon.title.success":["Cirkel med et flueben"]}');
2283
- var messages53 = JSON.parse('{"icon.title.success":["Cirkel med bock"]}');
2284
- var supportedLocales3 = ["en", "nb", "fi", "da", "sv"];
2285
- var defaultLocale4 = "en";
2286
- var detectByBrand3 = () => {
2287
- var _a;
2288
- let value;
2289
- switch ((_a = process == null ? void 0 : process.env) == null ? void 0 : _a.NMP_BRAND) {
2290
- case "FINN":
2291
- value = "nb";
2292
- break;
2293
- case "TORI":
2294
- value = "fi";
2295
- break;
2296
- case "BLOCKET":
2297
- value = "sv";
2298
- break;
2299
- case "DBA":
2300
- value = "da";
2301
- break;
2302
- default:
2303
- value = "en";
2304
- }
2305
- return value;
2306
- };
2307
- var detectByHost3 = () => {
2308
- var _a;
2309
- const hostname = (_a = document == null ? void 0 : document.location) == null ? void 0 : _a.hostname;
2310
- if (hostname == null ? void 0 : hostname.includes("finn")) {
2311
- return "nb";
2312
- } else if (hostname.includes("tori")) {
2313
- return "fi";
2314
- } else if (hostname.includes("blocket")) {
2315
- return "sv";
2316
- } else if (hostname.includes("dba")) {
2317
- return "da";
2318
- } else {
2319
- return defaultLocale4;
2320
- }
2321
- };
2322
- var getSupportedLocale3 = (usedLocale) => {
2323
- return supportedLocales3.find(
2324
- (locale) => usedLocale === locale || usedLocale.toLowerCase().includes(locale)
2325
- ) || detectByHost3();
2326
- };
2327
- function detectLocale3() {
2328
- var _a;
2329
- if (typeof window === "undefined") {
2330
- const serverLocale = detectByBrand3();
2331
- return getSupportedLocale3(serverLocale);
2332
- }
2333
- try {
2334
- const htmlLocale = (_a = document == null ? void 0 : document.documentElement) == null ? void 0 : _a.lang;
2335
- const hostLocale = detectByHost3();
2336
- if (!supportedLocales3.includes(htmlLocale)) {
2337
- console.warn("Unsupported locale set in html lang tag, falling back to detection by hostname");
2338
- return getSupportedLocale3(hostLocale);
2339
- }
2340
- return getSupportedLocale3(htmlLocale != null ? htmlLocale : hostLocale);
2341
- } catch (e) {
2342
- console.warn("could not detect locale, falling back to source locale", e);
2343
- return defaultLocale4;
2344
- }
2345
- }
2346
- var getMessages3 = (locale, enMsg, nbMsg, fiMsg, daMsg, svMsg) => {
2347
- if (locale === "nb") return nbMsg;
2348
- if (locale === "fi") return fiMsg;
2349
- if (locale === "da") return daMsg;
2350
- if (locale === "sv") return svMsg;
2351
- return enMsg;
2352
- };
2353
- var activateI18n3 = (enMessages, nbMessages, fiMessages, daMessages, svMessages) => {
2354
- const locale = detectLocale3();
2355
- const messages62 = getMessages3(locale, enMessages, nbMessages, fiMessages, daMessages, svMessages);
2356
- i18n.load(locale, messages62);
2357
- i18n.activate(locale);
2358
- };
2359
- activateI18n3(messages23, messages7, messages33, messages43, messages53);
2360
- var IconSuccess16 = class extends LitElement3 {
2361
- render() {
2362
- const title = i18n.t({ message: `Circle with checkmark`, id: "icon.title.success", comment: "Title for success icon" });
2363
- return html3`<svg xmlns="http://www.w3.org/2000/svg"width="16"height="16"fill="none"viewBox="0 0 16 16" part="w-icon-success-16-part">${unsafeStatic3(`<title>${title}</title>`)}<path stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" d="m4 8.815 1.633 2.318a.7.7 0 0 0 1.138.034l5.228-6.615"></path><path stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" d="M.5 7.999a7.5 7.5 0 1 0 15 0 7.5 7.5 0 0 0-15 0"></path></svg>`;
2364
- }
2365
- };
2366
- if (!customElements.get("w-icon-success-16")) {
2367
- customElements.define("w-icon-success-16", IconSuccess16);
2368
- }
2369
-
2370
- // node_modules/.pnpm/@warp-ds+icons@2.5.0_@lingui+core@5.2.0_@lingui+babel-plugin-lingui-macro@5.2.0_babel-p_f73b1d3c5bd9121d6f30248535f1f172/node_modules/@warp-ds/icons/dist/elements/close-16.js
2371
- import { LitElement as LitElement4 } from "lit";
2372
- import { unsafeStatic as unsafeStatic4, html as html4 } from "lit/static-html.js";
2373
- var messages8 = JSON.parse('{"icon.title.close":["Kryss"]}');
2374
- var messages24 = JSON.parse('{"icon.title.close":["Cross"]}');
2375
- var messages34 = JSON.parse('{"icon.title.close":["Rasti"]}');
2376
- var messages44 = JSON.parse('{"icon.title.close":["Kryds"]}');
2377
- var messages54 = JSON.parse('{"icon.title.close":["Kryss"]}');
2378
- var supportedLocales4 = ["en", "nb", "fi", "da", "sv"];
2379
- var defaultLocale5 = "en";
2380
- var detectByBrand4 = () => {
2381
- var _a;
2382
- let value;
2383
- switch ((_a = process == null ? void 0 : process.env) == null ? void 0 : _a.NMP_BRAND) {
2384
- case "FINN":
2385
- value = "nb";
2386
- break;
2387
- case "TORI":
2388
- value = "fi";
2389
- break;
2390
- case "BLOCKET":
2391
- value = "sv";
2392
- break;
2393
- case "DBA":
2394
- value = "da";
2395
- break;
2396
- default:
2397
- value = "en";
2398
- }
2399
- return value;
2400
- };
2401
- var detectByHost4 = () => {
2402
- var _a;
2403
- const hostname = (_a = document == null ? void 0 : document.location) == null ? void 0 : _a.hostname;
2404
- if (hostname == null ? void 0 : hostname.includes("finn")) {
2405
- return "nb";
2406
- } else if (hostname.includes("tori")) {
2407
- return "fi";
2408
- } else if (hostname.includes("blocket")) {
2409
- return "sv";
2410
- } else if (hostname.includes("dba")) {
2411
- return "da";
2412
- } else {
2413
- return defaultLocale5;
2414
- }
2415
- };
2416
- var getSupportedLocale4 = (usedLocale) => {
2417
- return supportedLocales4.find(
2418
- (locale) => usedLocale === locale || usedLocale.toLowerCase().includes(locale)
2419
- ) || detectByHost4();
2420
- };
2421
- function detectLocale4() {
2422
- var _a;
2423
- if (typeof window === "undefined") {
2424
- const serverLocale = detectByBrand4();
2425
- return getSupportedLocale4(serverLocale);
2426
- }
2427
- try {
2428
- const htmlLocale = (_a = document == null ? void 0 : document.documentElement) == null ? void 0 : _a.lang;
2429
- const hostLocale = detectByHost4();
2430
- if (!supportedLocales4.includes(htmlLocale)) {
2431
- console.warn("Unsupported locale set in html lang tag, falling back to detection by hostname");
2432
- return getSupportedLocale4(hostLocale);
2433
- }
2434
- return getSupportedLocale4(htmlLocale != null ? htmlLocale : hostLocale);
2435
- } catch (e) {
2436
- console.warn("could not detect locale, falling back to source locale", e);
2437
- return defaultLocale5;
2438
- }
2439
- }
2440
- var getMessages4 = (locale, enMsg, nbMsg, fiMsg, daMsg, svMsg) => {
2441
- if (locale === "nb") return nbMsg;
2442
- if (locale === "fi") return fiMsg;
2443
- if (locale === "da") return daMsg;
2444
- if (locale === "sv") return svMsg;
2445
- return enMsg;
2446
- };
2447
- var activateI18n4 = (enMessages, nbMessages, fiMessages, daMessages, svMessages) => {
2448
- const locale = detectLocale4();
2449
- const messages62 = getMessages4(locale, enMessages, nbMessages, fiMessages, daMessages, svMessages);
2450
- i18n.load(locale, messages62);
2451
- i18n.activate(locale);
2452
- };
2453
- activateI18n4(messages24, messages8, messages34, messages44, messages54);
2454
- var IconClose16 = class extends LitElement4 {
2455
- render() {
2456
- const title = i18n.t({ message: `Cross`, id: "icon.title.close", comment: "Title for close icon" });
2457
- return html4`<svg xmlns="http://www.w3.org/2000/svg"width="16"height="16"fill="none"viewBox="0 0 16 16" part="w-icon-close-16-part">${unsafeStatic4(`<title>${title}</title>`)}<path stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5" d="m12.5 3.5-9 9m0-9 9 9"></path></svg>`;
2458
- }
2459
- };
2460
- if (!customElements.get("w-icon-close-16")) {
2461
- customElements.define("w-icon-close-16", IconClose16);
2462
- }
2463
-
2464
- // packages/i18n.ts
2465
- var supportedLocales5 = ["en", "nb", "fi", "da", "sv"];
2466
- var defaultLocale6 = "en";
2467
- var getSupportedLocale5 = (usedLocale) => {
2468
- return supportedLocales5.find((locale) => usedLocale === locale || usedLocale.toLowerCase().includes(locale)) || defaultLocale6;
2469
- };
2470
- function detectLocale5() {
2471
- if (typeof window === "undefined") {
2472
- const serverLocale = process.env.NMP_LANGUAGE || Intl.DateTimeFormat().resolvedOptions().locale;
2473
- return getSupportedLocale5(serverLocale);
2474
- }
2475
- try {
2476
- const htmlLocale = document.documentElement.lang;
2477
- return getSupportedLocale5(htmlLocale);
2478
- } catch (e) {
2479
- console.warn("could not detect locale, falling back to source locale", e);
2480
- return defaultLocale6;
2481
- }
2482
- }
2483
- var getMessages5 = (locale, enMsg, nbMsg, fiMsg, daMsg, svMsg) => {
2484
- if (locale === "nb") return nbMsg;
2485
- if (locale === "fi") return fiMsg;
2486
- if (locale === "da") return daMsg;
2487
- if (locale === "sv") return svMsg;
2488
- return enMsg;
2489
- };
2490
- var activateI18n5 = (enMessages, nbMessages, fiMessages, daMessages, svMessages) => {
2491
- const locale = detectLocale5();
2492
- const messages14 = getMessages5(locale, enMessages, nbMessages, fiMessages, daMessages, svMessages);
2493
- i18n.load(locale, messages14);
2494
- i18n.activate(locale);
2495
- };
2496
-
2497
- // packages/toast/locales/da/messages.mjs
2498
- var messages9 = JSON.parse('{"toast.aria.error":["Fejl"],"toast.aria.successful":["Fuldf\xF8rt"],"toast.aria.warning":["Advarsel"]}');
2499
-
2500
- // packages/toast/locales/en/messages.mjs
2501
- var messages10 = JSON.parse('{"toast.aria.error":["Error"],"toast.aria.successful":["Successful"],"toast.aria.warning":["Warning"]}');
2502
-
2503
- // packages/toast/locales/fi/messages.mjs
2504
- var messages11 = JSON.parse('{"toast.aria.error":["Virhe"],"toast.aria.successful":["Onnistui"],"toast.aria.warning":["Varoitus"]}');
2505
-
2506
- // packages/toast/locales/nb/messages.mjs
2507
- var messages12 = JSON.parse('{"toast.aria.error":["Feil"],"toast.aria.successful":["Vellykket"],"toast.aria.warning":["Advarsel"]}');
2508
-
2509
- // packages/toast/locales/sv/messages.mjs
2510
- var messages13 = JSON.parse('{"toast.aria.error":["Fel"],"toast.aria.successful":["Genomf\xF6rt"],"toast.aria.warning":["Varning"]}');
2511
-
2512
- // packages/toast/toast.js
2513
- var toastType = {
2514
- success: "success",
2515
- error: "error",
2516
- warning: "warning"
2517
- };
2518
- var _WarpToast_instances, primaryClasses_get, iconClasses_get;
2519
- var WarpToast = class extends WarpElement {
2520
- constructor() {
2521
- super();
2522
- __privateAdd(this, _WarpToast_instances);
2523
- activateI18n5(messages10, messages12, messages11, messages9, messages13);
2524
- this.id = Date.now().toString(36) + Math.random().toString(36).slice(2, 5);
2525
- this.type = "success";
2526
- this.text = "";
2527
- this.canclose = false;
2528
- }
2529
- connectedCallback() {
2530
- super.connectedCallback();
2531
- }
2532
- disconnectedCallback() {
2533
- super.disconnectedCallback();
2534
- }
2535
- updated() {
2536
- if (!this._expanded && this._wrapper) expand(this._wrapper, () => this._expanded = true);
2537
- }
2538
- get _wrapper() {
2539
- var _a, _b;
2540
- return (_b = (_a = this.renderRoot) == null ? void 0 : _a.querySelector(`section`)) != null ? _b : null;
2541
- }
2542
- get _warning() {
2543
- return this.type === toastType.warning;
2544
- }
2545
- get _error() {
2546
- return this.type === toastType.error;
2547
- }
2548
- get _role() {
2549
- return this._error || this._warning ? "alert" : "status";
2550
- }
2551
- get _typeLabel() {
2552
- if (this._warning) {
2553
- return i18n._({
2554
- id: "toast.aria.warning",
2555
- message: "Warning",
2556
- comment: "Default screenreader message for warning in toast component"
2557
- });
2558
- }
2559
- if (this._error) {
2560
- return i18n._({
2561
- id: "toast.aria.error",
2562
- message: "Error",
2563
- comment: "Default screenreader message for error in toast component"
2564
- });
2565
- } else {
2566
- return i18n._({
2567
- id: "toast.aria.successful",
2568
- message: "Successful",
2569
- comment: "Default screenreader message for successful in toast component"
2570
- });
2571
- }
2572
- }
2573
- get _iconMarkup() {
2574
- if (this._warning) return html5`<w-icon-warning-16></w-icon-warning-16>`;
2575
- if (this._error) return html5`<w-icon-error-16></w-icon-error-16>`;
2576
- else return html5`<w-icon-success-16></w-icon-success-16>`;
2577
- }
2578
- async collapse() {
2579
- return new Promise((resolve) => {
2580
- if (this._expanded && this._wrapper) collapse(this._wrapper, resolve);
2581
- else resolve();
2582
- });
2583
- }
2584
- close() {
2585
- const event = new CustomEvent("close", {
2586
- detail: { id: this.id },
2587
- bubbles: true,
2588
- composed: true
2589
- });
2590
- this.updateComplete.then(() => this.dispatchEvent(event));
2591
- }
2592
- render() {
2593
- if (!this.text) return html5``;
2594
- return html5` <section class="${toast.wrapper}" aria-label="${this._typeLabel}">
2595
- <div class="${__privateGet(this, _WarpToast_instances, primaryClasses_get)}">
2596
- <div class="${__privateGet(this, _WarpToast_instances, iconClasses_get)}">${this._iconMarkup}</div>
2597
- <div role="${this._role}" class="${toast.content}">
10
+ `)),w(b)&&me.test(b)?JSON.parse(`"${b}"`):w(b)?b:gt(b,this._locale,this._locales)(r,o==null?void 0:o.formats)}date(e,r){return K(this._locales||this._locale,e,r)}number(e,r){return J(this._locales||this._locale,e,r)}};function yt(t={}){return new V(t)}var p=yt();var Q={wrapper:"fixed transform translate-z-0 bottom-16 left-0 right-0 mx-8 sm:mx-16 z-50 pointer-events-none",base:"grid auto-rows-auto justify-items-center justify-center mx-auto pointer-events-none",content:"w-full"},f={wrapper:"relative overflow-hidden w-full",base:"flex group p-8 mt-16 rounded-8 border-2 pointer-events-auto transition-all",positive:"s-bg-positive-subtle s-border-positive-subtle s-text",warning:"s-bg-warning-subtle s-border-warning-subtle s-text",negative:"s-bg-negative-subtle s-border-negative-subtle s-text",iconBase:"shrink-0 rounded-full w-[16px] h-[16px] m-[8px]",iconPositive:"s-icon-positive",iconWarning:"s-icon-warning",iconNegative:"s-icon-negative",iconLoading:"animate-bounce",content:"self-center mr-8 py-4 last-child:mb-0",close:"bg-transparent ml-auto p-[8px] s-icon hover:s-icon-hover active:s-icon-active"};var y="font-bold focusable justify-center transition-colors ease-in-out",m={primary:"s-text-inverted bg-[--w-color-button-primary-background] hover:bg-[--w-color-button-primary-background-hover] active:bg-[--w-color-button-primary-background-active]",secondary:"s-text-link s-border s-bg hover:s-bg-hover hover:s-border-hover active:s-bg-active",utility:"s-text s-bg hover:s-bg-hover active:s-bg-active s-border hover:s-border-hover active:s-border-active",destructive:"s-bg-negative s-text-inverted hover:s-bg-negative-hover active:s-bg-negative-active",pill:"s-icon hover:s-icon-hover active:s-icon-active bg-transparent hover:bg-[--w-color-button-pill-background-hover] active:bg-[--w-color-button-pill-background-active]",disabled:"s-text-inverted s-bg-disabled",quiet:"bg-transparent s-text-link hover:s-bg-hover active:s-bg-active",utilityQuiet:"s-text bg-transparent hover:s-bg-hover active:s-bg-active",negativeQuiet:"bg-transparent s-text-negative hover:s-bg-negative-subtle-hover active:s-bg-negative-subtle-active",loading:"s-text s-bg-subtle",link:"s-text-link"},d={primary:`border-0 rounded-8 ${y}`,secondary:`border-2 rounded-8 ${y}`,utility:`border rounded-4 ${y}`,negative:`border-0 rounded-8 ${y}`,pill:`p-4 rounded-full border-0 inline-flex items-center justify-center hover:bg-clip-padding ${y}`,link:`bg-transparent focusable ease-in-out inline active:underline hover:underline focus:underline ${m.link}`},a={xsmall:"py-6 px-16",small:"py-8 px-16",medium:"py-10 px-14",large:"py-12 px-16",utility:"py-[11px] px-[15px]",smallUtility:"py-[7px] px-[15px]",pill:"min-h-[44px] min-w-[44px]",pillSmall:"min-h-32 min-w-32",link:"p-0"},i={medium:"text-m leading-[24]",xsmall:"text-xs"},n={inProgress:`border-transparent animate-inprogress pointer-events-none ${m.loading}`,quiet:`border-0 rounded-8 ${y}`,utilityQuiet:`border-0 rounded-4 ${y}`,negativeQuiet:`border-0 rounded-8 ${y}`,isDisabled:`font-bold justify-center transition-colors ease-in-out cursor-default pointer-events-none ${m.disabled}`},Ar={secondary:`${a.medium} ${i.medium} ${d.secondary} ${m.secondary}`,secondaryHref:`${a.medium} ${i.medium} ${d.secondary} ${m.secondary}`,secondaryDisabled:`${a.medium} ${i.medium} ${d.secondary} ${n.isDisabled}`,secondarySmall:`${i.xsmall} ${a.xsmall} ${d.secondary} ${m.secondary}`,secondarySmallDisabled:`${i.xsmall} ${a.xsmall} ${d.secondary} ${n.isDisabled}`,secondaryQuiet:`${a.medium} ${i.medium} ${n.quiet} ${m.quiet}`,secondaryQuietDisabled:`${a.medium} ${i.medium} ${n.quiet} ${n.isDisabled}`,secondarySmallQuiet:`${i.xsmall} ${a.xsmall} ${n.quiet} ${m.quiet}`,secondarySmallQuietDisabled:`${i.xsmall} ${a.xsmall} ${n.quiet} ${n.isDisabled}`,secondaryLoading:`${a.medium} ${i.medium} ${d.secondary} ${n.inProgress}`,secondarySmallLoading:`${i.xsmall} ${a.xsmall} ${d.secondary} ${n.inProgress}`,secondarySmallQuietLoading:`${i.xsmall} ${a.xsmall} ${n.quiet} ${n.inProgress}`,secondaryQuietLoading:`${a.medium} ${i.medium} ${n.quiet} ${n.inProgress}`,primary:`${a.large} ${i.medium} ${d.primary} ${m.primary}`,primaryDisabled:`${a.large} ${i.medium} ${n.isDisabled} ${d.primary}`,primarySmall:`${a.small} ${i.xsmall} ${d.primary} ${m.primary}`,primarySmallDisabled:`${a.small} ${i.xsmall} ${n.isDisabled} ${d.primary} `,primaryQuiet:`${a.large} ${i.medium} ${n.quiet} ${m.quiet}`,primaryQuietDisabled:`${a.large} ${i.medium} ${n.quiet} ${n.isDisabled}`,primarySmallQuiet:`${a.small} ${i.xsmall} ${n.quiet} ${m.quiet}`,primarySmallQuietDisabled:`${a.small} ${i.xsmall} ${n.quiet} ${n.isDisabled}`,primaryLoading:`${a.large} ${i.medium} ${n.inProgress} ${d.primary}`,primarySmallLoading:`${a.small} ${i.xsmall} ${n.inProgress} ${d.primary}`,primarySmallQuietLoading:`${a.small} ${i.xsmall} ${n.quiet} ${n.inProgress} ${d.primary}`,primaryQuietLoading:`${a.large} ${i.medium} ${n.quiet} ${n.inProgress}`,utility:`${a.utility} ${i.medium} ${d.utility} ${m.utility}`,utilityDisabled:`${a.utility} ${i.medium} ${d.utility} ${n.isDisabled}`,utilityQuiet:`${a.large} ${i.medium} ${n.utilityQuiet} ${m.utilityQuiet}`,utilityQuietDisabled:`${a.large} ${i.medium} ${n.utilityQuiet} ${n.isDisabled}`,utilitySmall:`${a.smallUtility} ${i.xsmall} ${d.utility} ${m.utility}`,utilitySmallDisabled:`${a.smallUtility} ${i.xsmall} ${d.utility} ${n.isDisabled}`,utilitySmallQuiet:`${a.smallUtility} ${i.xsmall} ${n.utilityQuiet} ${m.utilityQuiet}`,utilitySmallQuietDisabled:`${a.smallUtility} ${i.xsmall} ${n.utilityQuiet} ${n.isDisabled}`,utilityLoading:`${a.large} ${i.medium} ${d.utility} ${n.inProgress}`,utilitySmallLoading:`${a.smallUtility} ${i.xsmall} ${d.utility} ${n.inProgress}`,utilityQuietLoading:`${a.large} ${i.medium} ${n.inProgress} ${n.utilityQuiet}`,utilitySmallQuietLoading:`${a.smallUtility} ${i.xsmall} ${n.inProgress} ${n.utilityQuiet}`,negative:`${a.large} ${i.medium} ${d.negative} ${m.destructive}`,negativeDisabled:`${a.large} ${i.medium} ${d.negative} ${n.isDisabled}`,negativeQuiet:`${a.large} ${i.medium} ${n.negativeQuiet} ${m.negativeQuiet}`,negativeQuietDisabled:`${a.large} ${i.medium} ${n.negativeQuiet}${n.isDisabled}`,negativeSmall:`${a.small} ${i.xsmall} ${d.negative} ${m.destructive}`,negativeSmallDisabled:`${a.small} ${i.xsmall} ${d.negative} ${n.isDisabled}`,negativeSmallQuiet:`${a.small} ${i.xsmall} ${n.negativeQuiet} ${m.negativeQuiet}`,negativeSmallQuietDisabled:`${a.small} ${i.xsmall} ${n.negativeQuiet} ${n.isDisabled}`,negativeLoading:`${a.large} ${i.medium} ${d.negative} ${n.inProgress}`,negativeSmallLoading:`${a.small} ${i.xsmall} ${n.inProgress} ${d.negative}`,negativeQuietLoading:`${a.large} ${i.medium} ${n.negativeQuiet} ${d.negative} ${n.inProgress}`,negativeSmallQuietLoading:`${a.small} ${i.xsmall} ${n.negativeQuiet} ${n.inProgress}`,pill:`${a.pill} ${i.medium} ${d.pill} ${m.pill}`,pillSmall:`${a.pillSmall} ${i.xsmall} ${d.pill} ${m.pill}`,pillLoading:`${a.pill} ${i.medium} ${d.pill} ${n.inProgress}`,pillSmallLoading:`${a.pillSmall} ${i.xsmall} ${d.pill} ${n.inProgress}`,link:`${a.link} ${i.medium} ${d.link}`,linkSmall:`${a.link} ${i.xsmall} ${d.link}`,linkAsButton:"inline-block active:no-underline hover:no-underline focus:no-underline text-center",a11y:"sr-only",fullWidth:"w-full max-w-full",contentWidth:"max-w-max"};var jr={backdrop:"fixed inset-0 flex sm:place-content-center sm:place-items-center items-end z-30 [--w-modal-max-height:80%] [--w-modal-width:640px] bg-[--w-black/25]",base:"pb-safe-[32] shadow-m max-h-[--w-modal-max-height] min-h-[--w-modal-min-height] w-[--w-modal-width] h-[--w-modal-height] relative transition-300 ease-in-out backface-hidden will-change-height rounded-8 mx-0 sm:mx-16 bg-[--w-s-color-surface-elevated-100] flex flex-col overflow-hidden outline-none space-y-16 pt-8 sm:pt-32 sm:pb-32 rounded-b-0 sm:rounded-b-8",content:"block overflow-y-auto overflow-x-hidden last-child:mb-0 grow shrink px-16 sm:px-32 relative",footer:"flex justify-end shrink-0 px-16 sm:px-32",transitionTitle:"transition-all duration-300",transitionTitleCenter:"justify-self-center self-center",transitionTitleColSpan:"col-span-2",title:"py-8 sm:py-0 -mt-4 sm:-mt-8 min-h-40 sm:min-h-48 grid gap-8 sm:gap-16 grid-cols-[auto_1fr_auto] items-start px-16 sm:px-32 border-b sm:border-b-0 shrink-0",titleText:"mb-0 h4 sm:h3",titleButton:`${i.medium} ${d.pill} ${m.pill} sm:min-h-[44px] sm:min-w-[44px] min-h-[32px] min-w-[32px]`,titleButtonLeft:"-ml-8 sm:-ml-12 justify-self-start",titleButtonRight:"-mr-8 sm:-mr-12 justify-self-end",titleButtonIcon:"h-16 w-16 sm:h-24 sm:w-24",titleButtonIconRotated:"transform rotate-90"};var fe="absolute top-0 bottom-0 flex justify-center items-center focusable rounded-4 focus:[--w-outline-offset:-2px] bg-transparent ",Qr={wrapper:fe+"right-0",wrapperWithLabel:"w-max pr-12",wrapperWithIcon:"w-40",label:"antialiased block relative cursor-default pb-0 font-bold text-xs s-text"},Rr={wrapper:fe+"left-0",wrapperWithLabel:"w-max pl-12",wrapperWithIcon:"w-40",label:"antialiased block relative cursor-default pb-0 font-bold text-xs s-text"};var x={field:"relative text-m",wrapper:"relative py-1",wrapperRadioButtons:"inline-flex font-bold rounded-8 focus-within:focusable",wrapperRadioButtonsJustified:"flex font-bold rounded-8 focus-within:focusable",radioButtonsGroup:"group",radioButtonsGroupJustified:"grow-1 shrink-0 basis-auto",input:"peer",a11y:"sr-only",label:"peer-focus:focusable cursor-pointer text-m s-text s-border py-2 pl-28 select-none relative block before:border before:absolute before:transition-all before:left-0 before:w-20 before:h-20 before:top-2",labelBefore:'before:content-[""] before:block',checkbox:"before:s-bg before:rounded-2 hover:before:s-border-primary hover:before:s-bg-hover peer-checked:before:bg-center peer-checked:before:bg-[url(var(--w-icon-toggle-checked))] peer-checked:before:s-border-primary peer-checked:before:s-bg-primary peer-checked:peer-hover:before:s-border-primary-hover peer-checked:peer-hover:before:s-bg-primary-hover",checkboxInvalid:"before:s-bg before:s-border-negative before:rounded-2 hover:before:s-bg-negative-subtle-hover hover:before:s-border-negative-hover peer-checked:before:bg-center peer-checked:before:bg-[url(var(--w-icon-toggle-checked))] peer-checked:before:s-bg-negative peer-checked:before:s-border-negative peer-checked:peer-hover:before:s-bg-negative-hover peer-checked:peer-hover:before:s-border-negative-hover",checkboxDisabled:"before:s-bg-disabled-subtle before:s-border-disabled pointer-events-none before:rounded-2 peer-checked:before:bg-center peer-checked:before:bg-[url(var(--w-icon-toggle-checked))] peer-checked:before:s-border-disabled peer-checked:before:s-bg-disabled",indeterminate:'before:content-["\u2013"] before:rounded-2 before:leading-xs before:text-center before:font-bold before:s-icon-inverted peer-indeterminate:before:s-border-primary peer-indeterminate:before:s-bg-primary peer-indeterminate:hover:before:s-border-primary-hover peer-indeterminate:hover:before:s-bg-primary-hover',indeterminateInvalid:'before:content-["\u2013"] before:rounded-2 before:leading-xs before:text-center before:font-bold before:s-icon-inverted peer-indeterminate:before:s-border-negative peer-indeterminate:before:s-bg-negative peer-indeterminate:hover:before:s-border-negative-hover peer-indeterminate:hover:before:s-bg-negative-hover',indeterminateDisabled:'before:content-["\u2013"] before:rounded-2 before:leading-xs before:text-center before:font-bold pointer-events-none before:s-icon-inverted peer-indeterminate:before:s-border-disabled peer-indeterminate:before:s-bg-disabled',radio:"before:s-bg before:rounded-full peer-checked:before:border-[6] peer-checked:before:s-border-selected peer-checked:peer-hover:before:s-border-selected-hover peer-hover:before:s-border-primary peer-hover:before:s-bg-hover",radioInvalid:"before:s-bg before:s-border-negative before:rounded-full peer-checked:before:border-[6] peer-hover:before:s-bg-negative-subtle peer-hover:before:s-border-negative-hover peer-checked:before:s-border-negative peer-checked:peer-hover:before:s-border-negative-hover",radioDisabled:"before:s-bg-disabled-subtle before:s-border-disabled pointer-events-none before:rounded-full peer-checked:before:border-[6]",radioButtonsLabel:"peer-hover:peer-not-checked:s-bg-hover peer-checked:s-text-inverted peer-checked:s-bg-primary peer-checked:s-border-primary block relative font-bold cursor-pointer s-text-link text-center s-bg border-2 s-border group-first-of-type:rounded-tl-8 group-first-of-type:rounded-bl-8 group-last-of-type:rounded-tr-8 group-last-of-type:rounded-br-8 group-not-last-of-type:border-r-0 peer-checked:z-10 group-not-first:-ml-2",radioButtonsRegular:"text-s py-8 pl-12 pr-14",radioButtonsSmall:"text-xs py-[5px] px-[8px]"},Fr={wrapper:`${x.wrapper} h-20 w-20 pointer-events-none`,input:`${x.input} hidden`,inputVue:"hidden",labelVue:"-mt-2",labelRadio:`${x.label} ${x.labelBefore} ${x.radio}`,labelCheckbox:`${x.label} ${x.labelBefore} ${x.checkbox}`};var qr={base:"border-2 relative flex items-start",tooltip:"s-bg-inverted border-[--w-s-color-background-inverted] shadow-m s-text-inverted-static rounded-4 py-6 px-8",callout:"bg-[--w-color-callout-background] border-[--w-color-callout-border] s-text py-8 px-16 rounded-8",highlight:"bg-[--w-color-callout-background] border-[--w-color-callout-border] s-text py-8 px-16 rounded-8 drop-shadow-m translate-z-0",popover:"bg-[--w-s-color-surface-elevated-300] border-[--w-s-color-surface-elevated-300] s-text rounded-8 p-16 drop-shadow-m translate-z-0",arrowBase:"absolute h-[14px] w-[14px] border-2 border-b-0 border-r-0 rounded-tl-4 transform",arrowDirectionLeftStart:"-left-[8px]",arrowDirectionLeft:"-left-[8px]",arrowDirectionLeftEnd:"-left-[8px]",arrowDirectionRightStart:"-right-[8px]",arrowDirectionRight:"-right-[8px]",arrowDirectionRightEnd:"-right-[8px]",arrowDirectionBottomStart:"-bottom-[8px]",arrowDirectionBottom:"-bottom-[8px]",arrowDirectionBottomEnd:"-bottom-[8px]",arrowDirectionTopStart:"-top-[8px]",arrowDirectionTop:"-top-[8px]",arrowDirectionTopEnd:"-top-[8px]",arrowTooltip:"s-bg-inverted border-[--w-s-color-background-inverted]",arrowCallout:"bg-[--w-color-callout-background] border-[--w-color-callout-border]",arrowPopover:"bg-[--w-s-color-surface-elevated-300] border-[--w-s-color-surface-elevated-300]",arrowHighlight:"bg-[--w-color-callout-background] border-[--w-color-callout-border]",content:"last-child:mb-0",notCallout:"absolute z-50",closeBtn:`${i.medium} ${d.pill} ${m.pill} justify-self-end -mr-8 ml-8`};import qe from"@warp-ds/elements-core";var G=typeof window!="undefined",he=!0;if(G){let t=window.matchMedia("(prefers-reduced-motion: reduce)"),e=({matches:r})=>he=!r;t.addEventListener&&t.addEventListener("change",e),e(t)}var ve=t=>{t.style.transition=null,t.style.backfaceVisibility=null,t.style.overflow=null},we=t=>{let e=he?"var(--f-expansion-duration, 0.3s)":"0.01s";t.style.transition=`height ${e}`,t.style.backfaceVisibility="hidden",t.style.overflow="hidden"},$t=(t,e)=>()=>{t.style.height="auto",t.style.overflow=null,e&&e()},kt=t=>()=>{t&&t()},xe=(t,e)=>{let r=(()=>{if(!e)return new Promise(l=>{e=l})})(),o=$t(t,e);ve(t),t.style.height="auto";let s=t.scrollHeight;if(G&&requestAnimationFrame(()=>{t.addEventListener("transitionend",o,{once:!0}),t.style.height="0px",t.style.transitionTimingFunction="ease-out",we(t),requestAnimationFrame(()=>t.style.height=s+"px")}),r)return r},ye=(t,e)=>{let r=(()=>{if(!e)return new Promise(l=>{e=l})})(),o=kt(e);ve(t);let s=t.scrollHeight;if(G&&requestAnimationFrame(()=>{t.addEventListener("transitionend",o,{once:!0}),t.style.height=s+"px",t.style.transitionTimingFunction="ease-in",we(t),requestAnimationFrame(()=>t.style.height="0px")}),r)return r};import{when as Lr}from"lit/directives/when.js";import{LitElement as _t}from"lit";import{unsafeStatic as St,html as Lt}from"lit/static-html.js";var Et=JSON.parse('{"icon.title.warning":["Varseltrekant med utropstegn"]}'),Ct=JSON.parse('{"icon.title.warning":["Warning triangle with exclamation point"]}'),Dt=JSON.parse('{"icon.title.warning":["Varoituskolmio, jonka sis\xE4ll\xE4 on huutomerkki"]}'),Mt=JSON.parse('{"icon.title.warning":["Advarselstrekant med et udr\xE5bstegn"]}'),Ot=JSON.parse('{"icon.title.warning":["Varningstriangel med utropstecken"]}'),$e=["en","nb","fi","da","sv"],ke="en",Nt=()=>{var t;let e;switch((t=process==null?void 0:process.env)==null?void 0:t.NMP_BRAND){case"FINN":e="nb";break;case"TORI":e="fi";break;case"BLOCKET":e="sv";break;case"DBA":e="da";break;default:e="en"}return e},_e=()=>{var t;let e=(t=document==null?void 0:document.location)==null?void 0:t.hostname;return e!=null&&e.includes("finn")?"nb":e.includes("tori")?"fi":e.includes("blocket")?"sv":e.includes("dba")?"da":ke},X=t=>$e.find(e=>t===e||t.toLowerCase().includes(e))||_e();function Tt(){var t;if(typeof window=="undefined"){let e=Nt();return X(e)}try{let e=(t=document==null?void 0:document.documentElement)==null?void 0:t.lang,r=_e();return $e.includes(e)?X(e!=null?e:r):(console.warn("Unsupported locale set in html lang tag, falling back to detection by hostname"),X(r))}catch(e){return console.warn("could not detect locale, falling back to source locale",e),ke}}var Bt=(t,e,r,o,s,l)=>t==="nb"?r:t==="fi"?o:t==="da"?s:t==="sv"?l:e,It=(t,e,r,o,s)=>{let l=Tt(),c=Bt(l,t,e,r,o,s);p.load(l,c),p.activate(l)};It(Ct,Et,Dt,Mt,Ot);var Pt=class extends _t{render(){let t=p.t({message:"Warning triangle with exclamation point",id:"icon.title.warning",comment:"Title for warning icon"});return Lt`<svg xmlns="http://www.w3.org/2000/svg"width="16"height="16"fill="none"viewBox="0 0 16 16" part="w-icon-warning-16-part">${St(`<title>${t}</title>`)}<path stroke="currentColor" d="m.712 14.07 6.25-12.994a1 1 0 0 1 1.792-.022l6.635 12.995a1 1 0 0 1-.89 1.455H1.613a1 1 0 0 1-.902-1.434Z"></path><path stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" d="M8 6v4.992M8 13v.333"></path></svg>`}};customElements.get("w-icon-warning-16")||customElements.define("w-icon-warning-16",Pt);import{LitElement as At}from"lit";import{unsafeStatic as jt,html as Qt}from"lit/static-html.js";var Rt=JSON.parse('{"icon.title.error":["\xC5ttekant med utropstegn"]}'),Ft=JSON.parse('{"icon.title.error":["Octagon with exclamation point"]}'),qt=JSON.parse('{"icon.title.error":["Kahdeksankulmio, jonka sis\xE4ll\xE4 on huutomerkki"]}'),Ut=JSON.parse('{"icon.title.error":["Ottekant med et udr\xE5bstegn"]}'),Ht=JSON.parse('{"icon.title.error":["Oktagon med utropstecken"]}'),Se=["en","nb","fi","da","sv"],Le="en",Jt=()=>{var t;let e;switch((t=process==null?void 0:process.env)==null?void 0:t.NMP_BRAND){case"FINN":e="nb";break;case"TORI":e="fi";break;case"BLOCKET":e="sv";break;case"DBA":e="da";break;default:e="en"}return e},Ee=()=>{var t;let e=(t=document==null?void 0:document.location)==null?void 0:t.hostname;return e!=null&&e.includes("finn")?"nb":e.includes("tori")?"fi":e.includes("blocket")?"sv":e.includes("dba")?"da":Le},Z=t=>Se.find(e=>t===e||t.toLowerCase().includes(e))||Ee();function zt(){var t;if(typeof window=="undefined"){let e=Jt();return Z(e)}try{let e=(t=document==null?void 0:document.documentElement)==null?void 0:t.lang,r=Ee();return Se.includes(e)?Z(e!=null?e:r):(console.warn("Unsupported locale set in html lang tag, falling back to detection by hostname"),Z(r))}catch(e){return console.warn("could not detect locale, falling back to source locale",e),Le}}var Vt=(t,e,r,o,s,l)=>t==="nb"?r:t==="fi"?o:t==="da"?s:t==="sv"?l:e,Wt=(t,e,r,o,s)=>{let l=zt(),c=Vt(l,t,e,r,o,s);p.load(l,c),p.activate(l)};Wt(Ft,Rt,qt,Ut,Ht);var Kt=class extends At{render(){let t=p.t({message:"Octagon with exclamation point",id:"icon.title.error",comment:"Title for error icon"});return Qt`<svg xmlns="http://www.w3.org/2000/svg"width="16"height="16"fill="none"viewBox="0 0 16 16" part="w-icon-error-16-part">${jt(`<title>${t}</title>`)}<path stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" d="M.5 11.107 4.748 15.5h6.503l4.248-4.393V4.893L11.252.5H4.748L.5 4.893z"></path><path stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" d="M8 11.398a.25.25 0 1 1 0-.5m0 .5a.25.25 0 1 0 0-.5"></path><path stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-miterlimit="10" d="M8 8.5V3"></path></svg>`}};customElements.get("w-icon-error-16")||customElements.define("w-icon-error-16",Kt);import{LitElement as Gt}from"lit";import{unsafeStatic as Xt,html as Zt}from"lit/static-html.js";var Yt=JSON.parse('{"icon.title.success":["Sirkel med sjekkmerke"]}'),er=JSON.parse('{"icon.title.success":["Circle with checkmark"]}'),tr=JSON.parse('{"icon.title.success":["Ympyr\xE4, jonka sis\xE4ll\xE4 on valintamerkki"]}'),rr=JSON.parse('{"icon.title.success":["Cirkel med et flueben"]}'),or=JSON.parse('{"icon.title.success":["Cirkel med bock"]}'),Ce=["en","nb","fi","da","sv"],De="en",sr=()=>{var t;let e;switch((t=process==null?void 0:process.env)==null?void 0:t.NMP_BRAND){case"FINN":e="nb";break;case"TORI":e="fi";break;case"BLOCKET":e="sv";break;case"DBA":e="da";break;default:e="en"}return e},Me=()=>{var t;let e=(t=document==null?void 0:document.location)==null?void 0:t.hostname;return e!=null&&e.includes("finn")?"nb":e.includes("tori")?"fi":e.includes("blocket")?"sv":e.includes("dba")?"da":De},Y=t=>Ce.find(e=>t===e||t.toLowerCase().includes(e))||Me();function nr(){var t;if(typeof window=="undefined"){let e=sr();return Y(e)}try{let e=(t=document==null?void 0:document.documentElement)==null?void 0:t.lang,r=Me();return Ce.includes(e)?Y(e!=null?e:r):(console.warn("Unsupported locale set in html lang tag, falling back to detection by hostname"),Y(r))}catch(e){return console.warn("could not detect locale, falling back to source locale",e),De}}var ir=(t,e,r,o,s,l)=>t==="nb"?r:t==="fi"?o:t==="da"?s:t==="sv"?l:e,ar=(t,e,r,o,s)=>{let l=nr(),c=ir(l,t,e,r,o,s);p.load(l,c),p.activate(l)};ar(er,Yt,tr,rr,or);var lr=class extends Gt{render(){let t=p.t({message:"Circle with checkmark",id:"icon.title.success",comment:"Title for success icon"});return Zt`<svg xmlns="http://www.w3.org/2000/svg"width="16"height="16"fill="none"viewBox="0 0 16 16" part="w-icon-success-16-part">${Xt(`<title>${t}</title>`)}<path stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" d="m4 8.815 1.633 2.318a.7.7 0 0 0 1.138.034l5.228-6.615"></path><path stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" d="M.5 7.999a7.5 7.5 0 1 0 15 0 7.5 7.5 0 0 0-15 0"></path></svg>`}};customElements.get("w-icon-success-16")||customElements.define("w-icon-success-16",lr);import{LitElement as cr}from"lit";import{unsafeStatic as dr,html as ur}from"lit/static-html.js";var pr=JSON.parse('{"icon.title.close":["Kryss"]}'),br=JSON.parse('{"icon.title.close":["Cross"]}'),mr=JSON.parse('{"icon.title.close":["Rasti"]}'),gr=JSON.parse('{"icon.title.close":["Kryds"]}'),fr=JSON.parse('{"icon.title.close":["Kryss"]}'),Oe=["en","nb","fi","da","sv"],Ne="en",hr=()=>{var t;let e;switch((t=process==null?void 0:process.env)==null?void 0:t.NMP_BRAND){case"FINN":e="nb";break;case"TORI":e="fi";break;case"BLOCKET":e="sv";break;case"DBA":e="da";break;default:e="en"}return e},Te=()=>{var t;let e=(t=document==null?void 0:document.location)==null?void 0:t.hostname;return e!=null&&e.includes("finn")?"nb":e.includes("tori")?"fi":e.includes("blocket")?"sv":e.includes("dba")?"da":Ne},ee=t=>Oe.find(e=>t===e||t.toLowerCase().includes(e))||Te();function vr(){var t;if(typeof window=="undefined"){let e=hr();return ee(e)}try{let e=(t=document==null?void 0:document.documentElement)==null?void 0:t.lang,r=Te();return Oe.includes(e)?ee(e!=null?e:r):(console.warn("Unsupported locale set in html lang tag, falling back to detection by hostname"),ee(r))}catch(e){return console.warn("could not detect locale, falling back to source locale",e),Ne}}var wr=(t,e,r,o,s,l)=>t==="nb"?r:t==="fi"?o:t==="da"?s:t==="sv"?l:e,xr=(t,e,r,o,s)=>{let l=vr(),c=wr(l,t,e,r,o,s);p.load(l,c),p.activate(l)};xr(br,pr,mr,gr,fr);var yr=class extends cr{render(){let t=p.t({message:"Cross",id:"icon.title.close",comment:"Title for close icon"});return ur`<svg xmlns="http://www.w3.org/2000/svg"width="16"height="16"fill="none"viewBox="0 0 16 16" part="w-icon-close-16-part">${dr(`<title>${t}</title>`)}<path stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5" d="m12.5 3.5-9 9m0-9 9 9"></path></svg>`}};customElements.get("w-icon-close-16")||customElements.define("w-icon-close-16",yr);var $r=["en","nb","fi","da","sv"],Ie="en",Be=t=>$r.find(e=>t===e||t.toLowerCase().includes(e))||Ie;function kr(){if(typeof window=="undefined"){let t=process.env.NMP_LANGUAGE||Intl.DateTimeFormat().resolvedOptions().locale;return Be(t)}try{let t=document.documentElement.lang;return Be(t)}catch(t){return console.warn("could not detect locale, falling back to source locale",t),Ie}}var _r=(t,e,r,o,s,l)=>t==="nb"?r:t==="fi"?o:t==="da"?s:t==="sv"?l:e,Pe=(t,e,r,o,s)=>{let l=kr(),c=_r(l,t,e,r,o,s);p.load(l,c),p.activate(l)};var Ae=JSON.parse('{"toast.aria.error":["Fejl"],"toast.aria.successful":["Fuldf\xF8rt"],"toast.aria.warning":["Advarsel"]}');var je=JSON.parse('{"toast.aria.error":["Error"],"toast.aria.successful":["Successful"],"toast.aria.warning":["Warning"]}');var Qe=JSON.parse('{"toast.aria.error":["Virhe"],"toast.aria.successful":["Onnistui"],"toast.aria.warning":["Varoitus"]}');var Re=JSON.parse('{"toast.aria.error":["Feil"],"toast.aria.successful":["Vellykket"],"toast.aria.warning":["Advarsel"]}');var Fe=JSON.parse('{"toast.aria.error":["Fel"],"toast.aria.successful":["Genomf\xF6rt"],"toast.aria.warning":["Varning"]}');var $={success:"success",error:"error",warning:"warning"},O,Ue,He,M=class extends qe{constructor(){super();ne(this,O);Pe(je,Re,Qe,Ae,Fe),this.id=Date.now().toString(36)+Math.random().toString(36).slice(2,5),this.type="success",this.text="",this.canclose=!1}connectedCallback(){super.connectedCallback()}disconnectedCallback(){super.disconnectedCallback()}updated(){!this._expanded&&this._wrapper&&xe(this._wrapper,()=>this._expanded=!0)}get _wrapper(){var r,o;return(o=(r=this.renderRoot)==null?void 0:r.querySelector("section"))!=null?o:null}get _warning(){return this.type===$.warning}get _error(){return this.type===$.error}get _role(){return this._error||this._warning?"alert":"status"}get _typeLabel(){return this._warning?p._({id:"toast.aria.warning",message:"Warning",comment:"Default screenreader message for warning in toast component"}):this._error?p._({id:"toast.aria.error",message:"Error",comment:"Default screenreader message for error in toast component"}):p._({id:"toast.aria.successful",message:"Successful",comment:"Default screenreader message for successful in toast component"})}get _iconMarkup(){return this._warning?D`<w-icon-warning-16></w-icon-warning-16>`:this._error?D`<w-icon-error-16></w-icon-error-16>`:D`<w-icon-success-16></w-icon-success-16>`}async collapse(){return new Promise(r=>{this._expanded&&this._wrapper?ye(this._wrapper,r):r()})}close(){let r=new CustomEvent("close",{detail:{id:this.id},bubbles:!0,composed:!0});this.updateComplete.then(()=>this.dispatchEvent(r))}render(){return this.text?D` <section class="${f.wrapper}" aria-label="${this._typeLabel}">
11
+ <div class="${H(this,O,Ue)}">
12
+ <div class="${H(this,O,He)}">${this._iconMarkup}</div>
13
+ <div role="${this._role}" class="${f.content}">
2598
14
  <p>${this.text}</p>
2599
15
  </div>
2600
- ${when(
2601
- this.canclose === true,
2602
- () => html5`
2603
- <button class="${toast.close}" @click="${this.close}">
16
+ ${Lr(this.canclose===!0,()=>D`
17
+ <button class="${f.close}" @click="${this.close}">
2604
18
  <w-icon-close-16></w-icon-close-16>
2605
19
  </button>
2606
- `
2607
- )}
20
+ `)}
2608
21
  </div>
2609
- </section>`;
2610
- }
2611
- };
2612
- _WarpToast_instances = new WeakSet();
2613
- primaryClasses_get = function() {
2614
- return r([
2615
- toast.base,
2616
- this.type === toastType.success && toast.positive,
2617
- this.type === toastType.warning && toast.warning,
2618
- this.type === toastType.error && toast.negative
2619
- ]);
2620
- };
2621
- iconClasses_get = function() {
2622
- return r([
2623
- toast.iconBase,
2624
- this.type === toastType.success && toast.iconPositive,
2625
- this.type === toastType.warning && toast.iconWarning,
2626
- this.type === toastType.error && toast.iconNegative
2627
- ]);
2628
- };
2629
- __publicField(WarpToast, "styles", [
2630
- WarpElement.styles,
2631
- css`
22
+ </section>`:D``}};O=new WeakSet,Ue=function(){return I([f.base,this.type===$.success&&f.positive,this.type===$.warning&&f.warning,this.type===$.error&&f.negative])},He=function(){return I([f.iconBase,this.type===$.success&&f.iconPositive,this.type===$.warning&&f.iconWarning,this.type===$.error&&f.iconNegative])},E(M,"styles",[qe.styles,Sr`
2632
23
  :host {
2633
24
  display: block;
2634
25
  }
2635
- `
2636
- ]);
2637
- __publicField(WarpToast, "properties", {
2638
- id: { type: String, attribute: true, reflect: true },
2639
- type: { type: String, attribute: true, reflect: true },
2640
- text: { type: String, attribute: true, reflect: true },
2641
- canclose: { type: Boolean, attribute: true, reflect: true }
2642
- });
2643
- if (!customElements.get("w-toast")) {
2644
- customElements.define("w-toast", WarpToast);
2645
- }
2646
-
2647
- // packages/toast/toast-container.js
2648
- import { css as css2, html as html6 } from "lit";
2649
- import WarpElement2 from "@warp-ds/elements-core";
2650
- import { repeat } from "lit/directives/repeat.js";
2651
- var WarpToastContainer = class extends WarpElement2 {
2652
- constructor() {
2653
- super();
2654
- this._toasts = /* @__PURE__ */ new Map();
2655
- }
2656
- connectedCallback() {
2657
- super.connectedCallback();
2658
- this._interval = setInterval(() => {
2659
- const keep = [];
2660
- const remove = [];
2661
- for (const toast3 of this._toasts) {
2662
- if (Date.now() <= toast3[1].duration) keep.push(toast3);
2663
- else remove.push(toast3);
2664
- }
2665
- const collapseTasks = [];
2666
- for (const [id] of remove) {
2667
- const el = this.renderRoot.querySelector(`#${id}`);
2668
- collapseTasks.push(el.collapse());
2669
- }
2670
- Promise.all(collapseTasks).then(() => {
2671
- if (keep.length !== this._toasts.size) this._toasts = new Map(keep);
2672
- });
2673
- }, 500);
2674
- }
2675
- disconnectedCallback() {
2676
- super.disconnectedCallback();
2677
- if (this._interval) clearTimeout(this._interval);
2678
- }
2679
- static init() {
2680
- let el = document.querySelector("w-toast-container");
2681
- if (!el) {
2682
- el = document.createElement("w-toast-container");
2683
- document.body.appendChild(el);
2684
- }
2685
- return el;
2686
- }
2687
- get _toastsArray() {
2688
- return Array.from(this._toasts).map(([, toast3]) => toast3);
2689
- }
2690
- /**
2691
- *
2692
- * @param {String|Number} id
2693
- * @returns {ToastOptions}
2694
- */
2695
- get(id) {
2696
- if (!id) {
2697
- throw new Error('undefined "id" given when attempting to retrieve toast');
2698
- }
2699
- if (typeof id !== "string" && !Number.isInteger(id)) throw new Error('"id" must be number or string when attempting to retrieve toast');
2700
- return this._toasts.get(id);
2701
- }
2702
- /**
2703
- *
2704
- * @param {Object} toast
2705
- * @returns {WarpToastContainer}
2706
- */
2707
- set(toast3) {
2708
- if (!toast3.id) throw new Error('invalid or undefined "id" on toast object');
2709
- const result = this._toasts.set(toast3.id, __spreadProps(__spreadValues({}, toast3), {
2710
- duration: Date.now() + (toast3.duration || 5e3)
2711
- }));
2712
- this._toasts = new Map(Array.from(this._toasts));
2713
- return result;
2714
- }
2715
- /**
2716
- *
2717
- * @param {String|Number} id
2718
- * @returns {ToastOptions | false}
2719
- */
2720
- async del(id) {
2721
- if (!id) {
2722
- throw new Error('undefined "id" given when attempting to retrieve toast');
2723
- }
2724
- if (typeof id !== "string" && !Number.isInteger(id)) throw new Error('"id" must be number or string when attempting to retrieve toast');
2725
- const el = this.renderRoot.querySelector(`#${id}`);
2726
- if (!this._toasts.has(id)) return false;
2727
- await el.collapse();
2728
- const result = this._toasts.delete(id);
2729
- this._toasts = new Map(Array.from(this._toasts));
2730
- return result;
2731
- }
2732
- render() {
2733
- return html6`
2734
- <aside class="${toaster.wrapper}">
2735
- <div class="${toaster.base}" id="w-toast-container-list">
2736
- ${repeat(
2737
- this._toastsArray,
2738
- (toast3) => toast3.id,
2739
- (toast3) => html6` <w-toast
2740
- class="${toaster.content}"
2741
- id="${toast3.id}"
2742
- type="${toast3.type}"
2743
- text="${toast3.text}"
2744
- ?canclose=${toast3.canclose}
2745
- @close=${() => this.del(toast3.id)}>
2746
- </w-toast>`
2747
- )}
26
+ `]),E(M,"properties",{id:{type:String,attribute:!0,reflect:!0},type:{type:String,attribute:!0,reflect:!0},text:{type:String,attribute:!0,reflect:!0},canclose:{type:Boolean,attribute:!0,reflect:!0}});customElements.get("w-toast")||customElements.define("w-toast",M);import{css as Er,html as Je}from"lit";import ze from"@warp-ds/elements-core";import{repeat as Cr}from"lit/directives/repeat.js";var N=class extends ze{constructor(){super(),this._toasts=new Map}connectedCallback(){super.connectedCallback(),this._interval=setInterval(()=>{let e=[],r=[];for(let s of this._toasts)Date.now()<=s[1].duration?e.push(s):r.push(s);let o=[];for(let[s]of r){let l=this.renderRoot.querySelector(`#${s}`);o.push(l.collapse())}Promise.all(o).then(()=>{e.length!==this._toasts.size&&(this._toasts=new Map(e))})},500)}disconnectedCallback(){super.disconnectedCallback(),this._interval&&clearTimeout(this._interval)}static init(){let e=document.querySelector("w-toast-container");return e||(e=document.createElement("w-toast-container"),document.body.appendChild(e)),e}get _toastsArray(){return Array.from(this._toasts).map(([,e])=>e)}get(e){if(!e)throw new Error('undefined "id" given when attempting to retrieve toast');if(typeof e!="string"&&!Number.isInteger(e))throw new Error('"id" must be number or string when attempting to retrieve toast');return this._toasts.get(e)}set(e){if(!e.id)throw new Error('invalid or undefined "id" on toast object');let r=this._toasts.set(e.id,{...e,duration:Date.now()+(e.duration||5e3)});return this._toasts=new Map(Array.from(this._toasts)),r}async del(e){if(!e)throw new Error('undefined "id" given when attempting to retrieve toast');if(typeof e!="string"&&!Number.isInteger(e))throw new Error('"id" must be number or string when attempting to retrieve toast');let r=this.renderRoot.querySelector(`#${e}`);if(!this._toasts.has(e))return!1;await r.collapse();let o=this._toasts.delete(e);return this._toasts=new Map(Array.from(this._toasts)),o}render(){return Je`
27
+ <aside class="${Q.wrapper}">
28
+ <div class="${Q.base}" id="w-toast-container-list">
29
+ ${Cr(this._toastsArray,e=>e.id,e=>Je` <w-toast
30
+ class="${Q.content}"
31
+ id="${e.id}"
32
+ type="${e.type}"
33
+ text="${e.text}"
34
+ ?canclose=${e.canclose}
35
+ @close=${()=>this.del(e.id)}>
36
+ </w-toast>`)}
2748
37
  </div>
2749
38
  </aside>
2750
- `;
2751
- }
2752
- };
2753
- __publicField(WarpToastContainer, "styles", [
2754
- WarpElement2.styles,
2755
- css2`
39
+ `}};E(N,"styles",[ze.styles,Er`
2756
40
  :host {
2757
41
  display: block;
2758
42
  }
2759
- `
2760
- ]);
2761
- __publicField(WarpToastContainer, "properties", {
2762
- _toasts: { state: true }
2763
- });
2764
- if (!customElements.get("w-toast-container")) {
2765
- customElements.define("w-toast-container", WarpToastContainer);
2766
- }
2767
-
2768
- // packages/utils/window-exists.js
2769
- var windowExists2 = typeof window !== "undefined";
2770
-
2771
- // packages/toast/api.js
2772
- function toast2(message, options) {
2773
- if (!windowExists2) return;
2774
- const toast3 = customElements.get("w-toast-container").init();
2775
- const data = __spreadValues({
2776
- id: Date.now().toString(36) + Math.random().toString(36).slice(2, 5),
2777
- text: message,
2778
- duration: 5e3,
2779
- type: "success"
2780
- }, options);
2781
- toast3.set(data);
2782
- return data;
2783
- }
2784
- function removeToast(id) {
2785
- if (!windowExists2) return;
2786
- const toast3 = customElements.get("w-toast-container").init();
2787
- return toast3.del(id);
2788
- }
2789
- function updateToast(id, options) {
2790
- if (!windowExists2) return;
2791
- const toast3 = customElements.get("w-toast-container").init();
2792
- toast3.set(__spreadValues(__spreadValues({}, toast3.get(id)), options));
2793
- return toast3.get(id);
2794
- }
2795
- export {
2796
- WarpToast,
2797
- WarpToastContainer,
2798
- removeToast,
2799
- toast2 as toast,
2800
- updateToast
2801
- };
43
+ `]),E(N,"properties",{_toasts:{state:!0}});customElements.get("w-toast-container")||customElements.define("w-toast-container",N);var R=typeof window!="undefined";function Dr(t,e){if(!R)return;let r=customElements.get("w-toast-container").init(),o={id:Date.now().toString(36)+Math.random().toString(36).slice(2,5),text:t,duration:5e3,type:"success",...e};return r.set(o),o}function Mr(t){return R?customElements.get("w-toast-container").init().del(t):void 0}function Or(t,e){if(!R)return;let r=customElements.get("w-toast-container").init();return r.set({...r.get(t),...e}),r.get(t)}export{M as WarpToast,N as WarpToastContainer,Mr as removeToast,Dr as toast,Or as updateToast};
2802
44
  //# sourceMappingURL=index.js.map