@oslokommune/punkt-elements 16.7.3 → 16.7.7

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 (248) hide show
  1. package/CHANGELOG.md +35 -0
  2. package/dist/accordion-BB1JrONI.cjs +34 -0
  3. package/dist/accordion-nNH87Y60.js +130 -0
  4. package/dist/alert-BEEnTiCb.cjs +33 -0
  5. package/dist/alert-ePJuDtmm.js +171 -0
  6. package/dist/async-directive-B9P1Qa0k.cjs +1 -0
  7. package/dist/async-directive-CaQiqjyV.js +55 -0
  8. package/dist/backlink-Ba03LlbB.cjs +13 -0
  9. package/dist/backlink-CiwXrQYD.js +38 -0
  10. package/dist/booleanish-BmcOU-43.js +11 -0
  11. package/dist/booleanish-jJLlnr6-.cjs +1 -0
  12. package/dist/breadcrumbs-CD1zib3s.cjs +43 -0
  13. package/dist/breadcrumbs-CpuVqWhF.js +76 -0
  14. package/dist/button-BIpd1xJh.js +95 -0
  15. package/dist/button-D-TOBaJB.cjs +27 -0
  16. package/dist/calendar-BzEtOJla.js +2031 -0
  17. package/dist/calendar-E5jJLt8D.cjs +90 -0
  18. package/dist/card-BYJu1MYm.js +339 -0
  19. package/dist/card-CUFhMVim.cjs +87 -0
  20. package/dist/checkbox-BARDb9iV.cjs +31 -0
  21. package/dist/checkbox-Cspxcvt_.js +111 -0
  22. package/dist/class-map-C8HuhNzZ.js +27 -0
  23. package/dist/class-map-CJ-msbHs.cjs +1 -0
  24. package/dist/classutils-DEL164Ur.js +7 -0
  25. package/dist/classutils-z8YsPlOf.cjs +1 -0
  26. package/dist/combobox-BcdLZRDU.js +984 -0
  27. package/dist/combobox-CGbFTWq_.cjs +135 -0
  28. package/dist/consent-DeB_5sWH.js +197 -0
  29. package/dist/consent-hwu7pp3S.cjs +11 -0
  30. package/dist/datepicker-DpmlsnH_.cjs +273 -0
  31. package/dist/datepicker-OVd8pmnZ.js +1125 -0
  32. package/dist/dialog-polyfill.esm-1hPr0gl9.js +280 -0
  33. package/dist/dialog-polyfill.esm-D3Oinvk0.cjs +1 -0
  34. package/dist/directive-3THFsVew.js +28 -0
  35. package/dist/directive-CJ2giQBZ.cjs +1 -0
  36. package/dist/directive-helpers-D1QSxY17.cjs +1 -0
  37. package/dist/directive-helpers-Dkv2gKgs.js +25 -0
  38. package/dist/element-DjtxO-1r.cjs +2 -0
  39. package/dist/element-cZ85T_aa.js +693 -0
  40. package/dist/element-with-slot-4J2o3SeU.js +166 -0
  41. package/dist/element-with-slot-CWoTGA1B.cjs +1 -0
  42. package/dist/header-DWgPgGfS.cjs +304 -0
  43. package/dist/header-a6ztVNp3.js +782 -0
  44. package/dist/heading-BgSWIRii.cjs +1 -0
  45. package/dist/heading-DiQLPxdf.js +73 -0
  46. package/dist/helptext-CCBKKLus.js +65 -0
  47. package/dist/helptext-D-3QfZv5.cjs +24 -0
  48. package/dist/icon-Co72KtgF.js +86 -0
  49. package/dist/icon-Dr8sfT2X.cjs +1 -0
  50. package/dist/if-defined-Cjj8qN-Z.js +5 -0
  51. package/dist/if-defined-XKOD_t_V.cjs +1 -0
  52. package/dist/index.d.ts +1 -2
  53. package/dist/input-element-B1yxcfz4.cjs +1 -0
  54. package/dist/input-element-Bw1s6NlF.js +643 -0
  55. package/dist/input-wrapper-BRuVELpK.cjs +54 -0
  56. package/dist/input-wrapper-CDyHTR1V.js +164 -0
  57. package/dist/input-wrapper-Dwd-_sKm.cjs +1 -0
  58. package/dist/input-wrapper-YfTmpSSY.js +117 -0
  59. package/dist/link-CKAFMz9j.js +89 -0
  60. package/dist/link-CyTCpI0k.cjs +7 -0
  61. package/dist/linkcard-B0KOGaGj.js +55 -0
  62. package/dist/linkcard-BE4-FewK.cjs +13 -0
  63. package/dist/listbox-DCA2JoPV.cjs +106 -0
  64. package/dist/listbox-DuBgTFvH.js +397 -0
  65. package/dist/loader-6kFZUErT.js +66 -0
  66. package/dist/loader-CX2rsC01.cjs +16 -0
  67. package/dist/messagebox-Cwlg5sOr.js +110 -0
  68. package/dist/messagebox-Din9X53b.cjs +13 -0
  69. package/dist/modal-C_wtsh9m.js +209 -0
  70. package/dist/modal-DS_wUOIv.cjs +36 -0
  71. package/dist/pkt-accordion.cjs +1 -1
  72. package/dist/pkt-accordion.js +2 -7
  73. package/dist/pkt-alert.cjs +1 -1
  74. package/dist/pkt-alert.js +2 -5
  75. package/dist/pkt-backlink.cjs +1 -1
  76. package/dist/pkt-backlink.js +2 -5
  77. package/dist/pkt-breadcrumbs.cjs +1 -43
  78. package/dist/pkt-breadcrumbs.js +2 -81
  79. package/dist/pkt-button.cjs +1 -1
  80. package/dist/pkt-button.js +2 -5
  81. package/dist/pkt-calendar.cjs +1 -1
  82. package/dist/pkt-calendar.js +2 -5
  83. package/dist/pkt-card.cjs +1 -1
  84. package/dist/pkt-card.js +2 -5
  85. package/dist/pkt-checkbox.cjs +1 -1
  86. package/dist/pkt-checkbox.js +2 -5
  87. package/dist/pkt-combobox.cjs +1 -1
  88. package/dist/pkt-combobox.js +2 -5
  89. package/dist/pkt-consent.cjs +1 -1
  90. package/dist/pkt-consent.js +2 -5
  91. package/dist/pkt-datepicker.cjs +1 -1
  92. package/dist/pkt-datepicker.js +5 -9
  93. package/dist/pkt-header.cjs +1 -304
  94. package/dist/pkt-header.js +2 -861
  95. package/dist/pkt-heading.cjs +1 -1
  96. package/dist/pkt-heading.js +2 -5
  97. package/dist/pkt-helptext.cjs +1 -1
  98. package/dist/pkt-helptext.js +2 -5
  99. package/dist/pkt-icon.cjs +1 -1
  100. package/dist/pkt-icon.js +2 -5
  101. package/dist/pkt-index.cjs +1 -1
  102. package/dist/pkt-index.js +30 -66
  103. package/dist/pkt-input-wrapper.cjs +1 -1
  104. package/dist/pkt-input-wrapper.js +2 -5
  105. package/dist/pkt-link.cjs +1 -1
  106. package/dist/pkt-link.js +2 -5
  107. package/dist/pkt-linkcard.cjs +1 -1
  108. package/dist/pkt-linkcard.js +2 -5
  109. package/dist/pkt-listbox.cjs +1 -1
  110. package/dist/pkt-listbox.js +2 -5
  111. package/dist/pkt-loader.cjs +1 -1
  112. package/dist/pkt-loader.js +2 -5
  113. package/dist/pkt-messagebox.cjs +1 -1
  114. package/dist/pkt-messagebox.js +2 -5
  115. package/dist/pkt-modal.cjs +1 -1
  116. package/dist/pkt-modal.js +2 -5
  117. package/dist/pkt-options-controller-CRrI6WMk.js +43 -0
  118. package/dist/pkt-options-controller-CXUGx134.cjs +1 -0
  119. package/dist/pkt-progressbar.cjs +1 -1
  120. package/dist/pkt-progressbar.js +2 -5
  121. package/dist/pkt-radiobutton.cjs +1 -1
  122. package/dist/pkt-radiobutton.js +2 -5
  123. package/dist/pkt-select.cjs +1 -1
  124. package/dist/pkt-select.js +2 -5
  125. package/dist/pkt-tabs.cjs +1 -1
  126. package/dist/pkt-tabs.js +2 -7
  127. package/dist/pkt-tag.cjs +1 -1
  128. package/dist/pkt-tag.js +2 -5
  129. package/dist/pkt-textarea.cjs +1 -1
  130. package/dist/pkt-textarea.js +2 -5
  131. package/dist/pkt-textinput.cjs +1 -1
  132. package/dist/pkt-textinput.js +2 -5
  133. package/dist/pkt-timepicker.cjs +1 -191
  134. package/dist/pkt-timepicker.js +2 -560
  135. package/dist/progressbar-CdXtmOBb.cjs +17 -0
  136. package/dist/progressbar-Dy9AiYQz.js +113 -0
  137. package/dist/radiobutton-GOnpUbCW.cjs +31 -0
  138. package/dist/radiobutton-V_KPbup_.js +84 -0
  139. package/dist/ref-BaJ0mBT_.cjs +1 -0
  140. package/dist/ref-RS8Uv6uC.js +30 -0
  141. package/dist/repeat-Cepr3469.js +57 -0
  142. package/dist/repeat-CqcDYBxr.cjs +1 -0
  143. package/dist/select-BSAFd8Wa.js +164 -0
  144. package/dist/select-C2i8sOk5.cjs +49 -0
  145. package/dist/tabs-D8nL9rWx.cjs +37 -0
  146. package/dist/tabs-Y7utmJi9.js +318 -0
  147. package/dist/tag-DLthw5b4.cjs +27 -0
  148. package/dist/tag-VwykmuQR.js +179 -0
  149. package/dist/textarea-D7aGOyDf.cjs +46 -0
  150. package/dist/textarea-DYOBhJrN.js +115 -0
  151. package/dist/textinput-BUgntXnM.js +124 -0
  152. package/dist/textinput-DFh8_9cx.cjs +70 -0
  153. package/dist/timepicker-BIfE7KKJ.cjs +191 -0
  154. package/dist/timepicker-DaSwn1FA.js +503 -0
  155. package/dist/utils-CUqCKGvp.js +7 -0
  156. package/dist/utils-CjAbIttF.cjs +1 -0
  157. package/package.json +6 -6
  158. package/src/components/alert/alert.test.ts +1 -1
  159. package/src/components/alert/alert.ts +6 -6
  160. package/src/components/datepicker/datepicker-utils.test.ts +16 -23
  161. package/dist/accordionitem-_9AiCIvd.cjs +0 -34
  162. package/dist/accordionitem-dCfSrxh5.js +0 -140
  163. package/dist/alert-BtOk8yRH.cjs +0 -33
  164. package/dist/alert-DlY2_grU.js +0 -117
  165. package/dist/async-directive-CMzWMlZ5.js +0 -65
  166. package/dist/async-directive-DoMuclel.cjs +0 -5
  167. package/dist/backlink-Ce5Vldop.js +0 -49
  168. package/dist/backlink-y3dwjKPC.cjs +0 -13
  169. package/dist/booleanish-BKVonob4.cjs +0 -1
  170. package/dist/booleanish-C9R0tdXH.js +0 -11
  171. package/dist/button-B_TXwNzt.cjs +0 -27
  172. package/dist/button-BiY-wlKF.js +0 -139
  173. package/dist/calendar-B2pji2zn.cjs +0 -90
  174. package/dist/calendar-DhjQDC4C.js +0 -2140
  175. package/dist/card-BwMNB5Bb.cjs +0 -87
  176. package/dist/card-CGlmcMSR.js +0 -233
  177. package/dist/checkbox-BsJZYA26.js +0 -147
  178. package/dist/checkbox-CTY8f_qn.cjs +0 -31
  179. package/dist/class-map-CEnykyO_.js +0 -34
  180. package/dist/class-map-CsENJXf1.cjs +0 -5
  181. package/dist/classutils-BwNK82ZQ.cjs +0 -1
  182. package/dist/classutils-RQs1k6D9.js +0 -7
  183. package/dist/combobox-DSB5WOxg.js +0 -815
  184. package/dist/combobox-DbICIgKG.cjs +0 -135
  185. package/dist/consent-DkOQpbsg.cjs +0 -11
  186. package/dist/consent-SNWV_mMU.js +0 -175
  187. package/dist/datepicker-BEWl9iz3.cjs +0 -273
  188. package/dist/datepicker-euHyzXnb.js +0 -1170
  189. package/dist/dialog-polyfill.esm-CPKZe7AL.cjs +0 -1
  190. package/dist/dialog-polyfill.esm-CbjBMXAG.js +0 -395
  191. package/dist/directive-C7oCP5Bh.cjs +0 -5
  192. package/dist/directive-helpers-BP2WOx60.cjs +0 -5
  193. package/dist/directive-helpers-rm-28gIj.js +0 -38
  194. package/dist/directive-oAbCiebi.js +0 -27
  195. package/dist/element-CPpT3rFQ.js +0 -638
  196. package/dist/element-gR_VtSiD.cjs +0 -27
  197. package/dist/element-with-slot-Dqk6-TRR.js +0 -240
  198. package/dist/element-with-slot-ZX-up7jO.cjs +0 -1
  199. package/dist/heading-D2tVS6lS.js +0 -103
  200. package/dist/heading-DrzbgDb6.cjs +0 -1
  201. package/dist/helptext-BKtU4mas.js +0 -82
  202. package/dist/helptext-DcRC7wW2.cjs +0 -24
  203. package/dist/icon-CxQcIa5F.js +0 -105
  204. package/dist/icon-q81vqPK_.cjs +0 -9
  205. package/dist/if-defined-B0krMLad.js +0 -10
  206. package/dist/if-defined-BOW3ODSj.cjs +0 -5
  207. package/dist/input-element-8nLwuQS4.js +0 -837
  208. package/dist/input-element-DdVhUvva.cjs +0 -1
  209. package/dist/input-wrapper-Bs4CRNst.js +0 -181
  210. package/dist/input-wrapper-Bv9aqqVq.cjs +0 -54
  211. package/dist/input-wrapper-CDgenrYA.js +0 -6
  212. package/dist/input-wrapper-EoSAbU-U.cjs +0 -1
  213. package/dist/link-C0rl-86s.cjs +0 -7
  214. package/dist/link-Cdqgl60z.js +0 -55
  215. package/dist/linkcard-Dimu7Rlx.cjs +0 -13
  216. package/dist/linkcard-Lbq_UhjZ.js +0 -56
  217. package/dist/listbox-Bia4_tvN.js +0 -440
  218. package/dist/listbox-La2GZQei.cjs +0 -106
  219. package/dist/loader-D1ugDXGV.cjs +0 -16
  220. package/dist/loader-DyN6RGC5.js +0 -95
  221. package/dist/messagebox-BGMVm2t9.js +0 -71
  222. package/dist/messagebox-M0yIgCz9.cjs +0 -13
  223. package/dist/modal-CMO1RtIi.cjs +0 -36
  224. package/dist/modal-DjPQDE-Z.js +0 -156
  225. package/dist/pkt-options-controller-5LXbEzuk.cjs +0 -1
  226. package/dist/pkt-options-controller-B5YalfCb.js +0 -39
  227. package/dist/progressbar-BqlMzkM_.cjs +0 -21
  228. package/dist/progressbar-sbHDFC12.js +0 -162
  229. package/dist/radiobutton-5ZqVVtTT.cjs +0 -31
  230. package/dist/radiobutton-D8Ai8ETa.js +0 -113
  231. package/dist/ref-Bg_Swj5w.js +0 -42
  232. package/dist/ref-CL-Xk9Xm.cjs +0 -5
  233. package/dist/repeat-BD8TKgJb.js +0 -61
  234. package/dist/repeat-Cfq8CDlf.cjs +0 -5
  235. package/dist/select-De-n8on9.js +0 -230
  236. package/dist/select-dTWibR6_.cjs +0 -49
  237. package/dist/state-C_1EOo3D.js +0 -12
  238. package/dist/state-Dg-53wQ8.cjs +0 -5
  239. package/dist/tabitem-B9-jeV97.js +0 -334
  240. package/dist/tabitem-BnhzqfW3.cjs +0 -65
  241. package/dist/tag-CbwO8yvD.cjs +0 -27
  242. package/dist/tag-D4FI5t3y.js +0 -117
  243. package/dist/textarea-BmLaKzsc.cjs +0 -50
  244. package/dist/textarea-CMiSJaYL.js +0 -133
  245. package/dist/textinput-em9y4yrL.cjs +0 -70
  246. package/dist/textinput-r8udK0IX.js +0 -152
  247. package/dist/utils-DznhwRXm.js +0 -8
  248. package/dist/utils-byXsEz1u.cjs +0 -1
@@ -1,273 +0,0 @@
1
- "use strict";const l=require("./element-gR_VtSiD.cjs"),F=require("./state-Dg-53wQ8.cjs"),u=require("./calendar-B2pji2zn.cjs"),V=require("./input-element-DdVhUvva.cjs"),p=require("./ref-CL-Xk9Xm.cjs");require("./icon-q81vqPK_.cjs");require("./input-wrapper-Bv9aqqVq.cjs");const $=require("./class-map-CsENJXf1.cjs"),j=require("./repeat-Cfq8CDlf.cjs");require("./tag-CbwO8yvD.cjs");const q=require("./utils-byXsEz1u.cjs"),g=require("./if-defined-BOW3ODSj.cjs"),K=require("./element-with-slot-ZX-up7jO.cjs"),L={calendar:{buttonAltText:"Åpne kalender"}},U={calendar:{buttonAltText:"Åpne kalender"},generic:{from:"Fra",to:"Til"}};var N=Object.defineProperty,R=(i,e,t,a)=>{for(var s=void 0,r=i.length-1,n;r>=0;r--)(n=i[r])&&(s=n(e,t,s)||s);return s&&N(e,t,s),s};class k extends l.PktElement{constructor(){super(...arguments),this.dates=[],this.dateformat="dd.MM.yyyy",this.className="pkt-datepicker__tags",this.idBase=q.uuidish()}render(){return this.classes={"pkt-date-tags":!0,[this.className]:!0},l.b`
2
- <div class=${$.e(this.classes)} aria-live="polite">
3
- ${Array.isArray(this.dates)&&this.dates[0]?j.c(u.sortDateStrings((this.dates??[]).filter(Boolean)),e=>e,e=>{var t;return l.b` <pkt-tag
4
- id=${this.idBase+e+"-tag"}
5
- closeTag
6
- @close=${()=>{this.dispatchEvent(new CustomEvent("date-tag-removed",{detail:e}))}}
7
- .ariaLabel=${`${(t=this.strings)==null?void 0:t.calendar.deleteDate} ${u.fromISOtoLocal(e,this.dateformat)}`}
8
- >
9
- <time datetime=${e}>${u.fromISOtoLocal(e,this.dateformat)}</time>
10
- </pkt-tag>`}):l.A}
11
- </div>
12
- `}}R([l.n({type:Array})],k.prototype,"dates");R([l.n({type:String})],k.prototype,"dateformat");R([l.n({type:String,attribute:"class"})],k.prototype,"className");R([l.n({type:String,attribute:"id-base"})],k.prototype,"idBase");try{l.t("pkt-date-tags")(k)}catch{console.warn("Forsøker å definere <pkt-date-tags>, men den er allerede definert")}const z={dateformat:{default:"dd.MM.yyyy"},weeknumbers:{default:!1},withcontrols:{default:!1},multiple:{default:!1},range:{default:!1}},C={props:z},b=()=>{const i=navigator.userAgent;return!!(/iP(hone|od|ad)/.test(i)||/Macintosh/.test(i)&&"ontouchend"in document)},W=()=>b()?"text":"date",H=i=>!i||i.length!==2?!0:u.isValidDateRange(i[0],i[1]),G=i=>u.sortDateStrings(i),J=(i,e,t,a,s)=>u.filterSelectableDates(i,e,t,a,s),Q=(i,e,t,a,s,r)=>({"pkt-input":!0,"pkt-datepicker__input":!0,"pkt-input--fullwidth":i,"pkt-datepicker--hasrangelabels":e,"pkt-datepicker--multiple":t,"pkt-datepicker--range":a,"ios-readonly-hack":s===!1&&r==="text"}),X=()=>({"pkt-input-icon":!0,"pkt-btn":!0,"pkt-btn--icon-only":!0,"pkt-btn--tertiary":!0,"pkt-datepicker__calendar-button":!0}),Y=i=>({"pkt-input-prefix":i,"pkt-hide":!i}),Z=(i,e,t)=>!e&&!t?Array.isArray(i)?i[0]||"":i:Array.isArray(i)?i.join(","):i,ee=(i,e,t=!1)=>{var o;if(!i||!e)return;const a=((o=e.parentElement)==null?void 0:o.getBoundingClientRect())||e.getBoundingClientRect(),s=t?a.height+30:a.height,r=i.getBoundingClientRect().height;let n=t?"calc(100% - 30px)":"100%";a&&a.top+r>window.innerHeight&&a.top-r>0&&(n=`calc(100% - ${s}px - ${r}px)`),i.style.top=n},te=(i,e,t,a,s,r)=>{const{key:n}=i;n===","&&(i.preventDefault(),r?r(i):s&&s()),(n==="Space"||n===" ")&&(i.preventDefault(),e(i)),n==="Enter"&&(i.preventDefault(),t?t():a?a():s&&s())},se=(i,e)=>{const{key:t}=i;(t==="Enter"||t===" "||t==="Space")&&(i.preventDefault(),e(i))},A={validateRangeOrder:H,sortDates:G,filterSelectableDates:J},ie={getInputType:W},x={submitForm(i){var t;const e=(t=i.internals)==null?void 0:t.form;e&&e.requestSubmit()},submitFormOrFallback(i,e){const t=i==null?void 0:i.form;t?t.requestSubmit():e()},validateDateInput(i,e,t,a,s){var n,o,y,O;const r=i.value;r&&(t&&t>r?e.setValidity({rangeUnderflow:!0},((o=(n=s==null?void 0:s.forms)==null?void 0:n.messages)==null?void 0:o.rangeUnderflow)||"Value is below minimum",i):a&&a<r&&e.setValidity({rangeOverflow:!0},((O=(y=s==null?void 0:s.forms)==null?void 0:y.messages)==null?void 0:O.rangeOverflow)||"Value is above maximum",i))}},T={addToSelected(i,e,t,a){const s=i.target;if(!s.value)return;const r=t?u.newDate(t):null,n=a?u.newDate(a):null,o=u.newDate(s.value.split(",")[0]);o&&!isNaN(o.getTime())&&(!r||o>=r)&&(!n||o<=n)&&e.value&&e.value.handleDateSelect(o),s.value=""},handleCalendarPosition(i,e,t=!1){ee(i.value??null,e.value??null,t)}},P={getInputClasses:Q,getButtonClasses:X,getRangeLabelClasses:Y},I={processDateSelection:Z,updateInputValues(i,e,t,a,s,r){i.value&&(a&&(e!=null&&e.value)?(i.value.value=t[0]??"",e.value.value=t[1]??"",r(i.value),r(e.value)):s||(i.value.value=t.length?t[0]:"",r(i.value)))},processRangeBlur(i,e,t,a,s){var n;const r=i.target;if(r.value){s(r);const o=u.fromISOToDate(r.value);o&&((n=t==null?void 0:t.value)==null||n.handleDateSelect(o))}else e[0]&&a()}},_={handleInputKeydown:te,handleButtonKeydown:se};var ae=Object.defineProperty,f=(i,e,t,a)=>{for(var s=void 0,r=i.length-1,n;r>=0;r--)(n=i[r])&&(s=n(e,t,s)||s);return s&&ae(e,t,s),s};class c extends l.PktElement{constructor(){super(...arguments),this.open=!1,this.multiple=!1,this.range=!1,this.weeknumbers=!1,this.withcontrols=!1,this.maxMultiple=null,this.selected=[],this.earliest=null,this.latest=null,this.excludedates=[],this.excludeweekdays=[],this.currentmonth=null,this.today=null,this._hasBeenOpened=!1,this.popupRef=p.e(),this.calendarRef=p.e(),this.handleDocumentClick=e=>{if(!this.open)return;const t=e.composedPath(),a=this.parentElement,s=this.popupRef.value;!t.includes(this)&&!t.includes(s)&&!(a&&t.includes(a))&&(this.hide(),this.dispatchEvent(new CustomEvent("close",{bubbles:!0,composed:!0})))},this.handleDocumentKeydown=e=>{this.open&&e.key==="Escape"&&(this.hide(),this.dispatchEvent(new CustomEvent("close",{bubbles:!0,composed:!0})))}}firstUpdated(){this.calRef=this.calendarRef}updated(e){super.updated(e),e.has("open")&&(this.open?(this._hasBeenOpened=!0,document.addEventListener("keydown",this.handleDocumentKeydown),document.addEventListener("click",this.handleDocumentClick)):(document.removeEventListener("click",this.handleDocumentClick),document.removeEventListener("keydown",this.handleDocumentKeydown)))}disconnectedCallback(){super.disconnectedCallback(),document.removeEventListener("click",this.handleDocumentClick),document.removeEventListener("keydown",this.handleDocumentKeydown)}show(){var e;this.open=!0,(e=this.calendarRef.value)==null||e.focus()}hide(){this.open=!1}toggle(){this.open?this.hide():this.show()}contains(e){var t;return!!e&&!!((t=this.popupRef.value)!=null&&t.contains(e))}focusOnCurrentDate(){const e=this.calendarRef.value;e&&typeof e.focusOnCurrentDate=="function"&&e.focusOnCurrentDate()}addToSelected(e,t,a){if(this.calendarRef.value&&typeof T.addToSelected=="function")return T.addToSelected(e,this.calendarRef,t,a);const r=e.target;if(!r.value)return;const n=t?u.newDate(t):null,o=a?u.newDate(a):null,y=u.newDate(r.value.split(",")[0]);y&&!isNaN(y.getTime())&&(!n||y>=n)&&(!o||y<=o)&&this.handleDateSelect(y),r.value=""}handleDateSelect(e){const t=this.calendarRef.value;if(t&&typeof t.handleDateSelect=="function")return t.handleDateSelect(e);const a=u.formatISODate(e),r=this.selected.indexOf(a)>=0?this.selected.filter(n=>n!==a):[...this.selected,a];this.selected=r,this.dispatchEvent(new CustomEvent("date-selected",{detail:r,bubbles:!0,composed:!0}))}render(){const e={"pkt-calendar-popup":!0,show:this.open,hide:!this.open};return l.b`
13
- <div
14
- class="${$.e(e)}"
15
- ${p.n(this.popupRef)}
16
- id="date-popup"
17
- ?hidden=${!this.open}
18
- aria-hidden="${!this.open}"
19
- >
20
- ${this.open||this._hasBeenOpened?l.b`<pkt-calendar
21
- ${p.n(this.calendarRef)}
22
- ?multiple=${this.multiple}
23
- ?range=${this.range}
24
- ?weeknumbers=${this.weeknumbers}
25
- ?withcontrols=${this.withcontrols}
26
- .maxMultiple=${this.maxMultiple}
27
- .selected=${this.selected}
28
- .earliest=${this.earliest}
29
- .latest=${this.latest}
30
- .excludedates=${this.excludedates}
31
- .excludeweekdays=${this.excludeweekdays}
32
- .currentmonth=${this.currentmonth}
33
- .today=${this.today}
34
- @date-selected=${t=>{this.selected=t.detail,this.dispatchEvent(new CustomEvent("date-selected",{detail:t.detail,bubbles:!0,composed:!0}))}}
35
- @close=${()=>{this.hide(),this.dispatchEvent(new CustomEvent("close",{bubbles:!0,composed:!0}))}}
36
- ></pkt-calendar>`:l.A}
37
- </div>
38
- `}}f([l.n({type:Boolean,reflect:!0})],c.prototype,"open");f([l.n({type:Boolean})],c.prototype,"multiple");f([l.n({type:Boolean})],c.prototype,"range");f([l.n({type:Boolean})],c.prototype,"weeknumbers");f([l.n({type:Boolean})],c.prototype,"withcontrols");f([l.n({type:Number})],c.prototype,"maxMultiple");f([l.n({type:Array})],c.prototype,"selected");f([l.n({type:String})],c.prototype,"earliest");f([l.n({type:String})],c.prototype,"latest");f([l.n({type:Array})],c.prototype,"excludedates");f([l.n({type:Array})],c.prototype,"excludeweekdays");f([l.n({type:String})],c.prototype,"currentmonth");f([l.n({type:String})],c.prototype,"today");f([F.r()],c.prototype,"_hasBeenOpened");try{l.t("pkt-datepicker-popup")(c)}catch{console.warn("Forsøker å definere <pkt-datepicker-popup>, men den er allerede definert")}var ne=Object.defineProperty,m=(i,e,t,a)=>{for(var s=void 0,r=i.length-1,n;r>=0;r--)(n=i[r])&&(s=n(e,t,s)||s);return s&&ne(e,t,s),s};class v extends l.PktElement{constructor(){super(...arguments),this.inputType="date",this.id="",this.readonly=!1,this.disabled=!1,this.inputClasses={},this.inputRef=p.e(),this.btnRef=p.e()}get inputElement(){return this.inputRef.value}get buttonElement(){return this.btnRef.value}get isInputReadonly(){return this.readonly||this.inputType==="text"}dispatchToggleCalendar(e){this.readonly||this.dispatchEvent(new CustomEvent("toggle-calendar",{detail:e,bubbles:!0,composed:!0}))}dispatchInput(e){this.dispatchEvent(new CustomEvent("input-change",{detail:e,bubbles:!0,composed:!0}))}dispatchFocus(){this.dispatchEvent(new CustomEvent("input-focus",{bubbles:!0,composed:!0}))}dispatchBlur(e){this.dispatchEvent(new CustomEvent("input-blur",{detail:e,bubbles:!0,composed:!0}))}dispatchChange(e){this.dispatchEvent(new CustomEvent("input-changed",{detail:e,bubbles:!0,composed:!0}))}renderCalendarButton(){var e;return l.b`
39
- <button
40
- class="${$.e(P.getButtonClasses())}"
41
- type="button"
42
- @click=${t=>this.dispatchToggleCalendar(t)}
43
- @keydown=${t=>{const{key:a}=t;(a==="Enter"||a===" "||a==="Space")&&(t.preventDefault(),this.dispatchToggleCalendar(t))}}
44
- ?disabled=${this.disabled}
45
- ${this.btnRef}
46
- >
47
- <pkt-icon name="calendar"></pkt-icon>
48
- <span class="pkt-btn__text">${((e=this.strings.calendar)==null?void 0:e.buttonAltText)||"Åpne kalender"}</span>
49
- </button>
50
- `}createRenderRoot(){return this}}m([l.n({type:String})],v.prototype,"inputType");m([l.n({type:String})],v.prototype,"id");m([l.n({type:String})],v.prototype,"min");m([l.n({type:String})],v.prototype,"max");m([l.n({type:String})],v.prototype,"placeholder");m([l.n({type:Boolean})],v.prototype,"readonly");m([l.n({type:Boolean})],v.prototype,"disabled");m([l.n({type:Object})],v.prototype,"inputClasses");m([l.n({type:Object})],v.prototype,"internals");var le=Object.defineProperty,M=(i,e,t,a)=>{for(var s=void 0,r=i.length-1,n;r>=0;r--)(n=i[r])&&(s=n(e,t,s)||s);return s&&le(e,t,s),s};class E extends v{constructor(){super(...arguments),this.value="",this.strings=L}dispatchManageValidity(e){this.dispatchEvent(new CustomEvent("manage-validity",{detail:e,bubbles:!0,composed:!0}))}render(){return l.b`
51
- <div class="pkt-input__container">
52
- <input
53
- class="${$.e(this.inputClasses)}"
54
- .type=${this.inputType}
55
- id="${this.id}-input"
56
- .value=${this.value}
57
- min=${g.o(this.min)}
58
- max=${g.o(this.max)}
59
- placeholder=${g.o(this.placeholder)}
60
- ?readonly=${this.isInputReadonly}
61
- aria-describedby="${this.id}-helptext"
62
- @click=${e=>{e.preventDefault(),this.dispatchToggleCalendar(e)}}
63
- @touchend=${e=>{e.preventDefault(),this.dispatchToggleCalendar(e)}}
64
- ?disabled=${this.disabled}
65
- @keydown=${e=>_.handleInputKeydown(e,t=>this.dispatchToggleCalendar(t),()=>x.submitFormOrFallback(this.internals,()=>{var t;return(t=this.inputRef.value)==null?void 0:t.blur()}),void 0,()=>{var t;return(t=this.inputRef.value)==null?void 0:t.blur()})}
66
- @input=${e=>{this.dispatchInput(e),e.stopImmediatePropagation()}}
67
- @focus=${()=>{this.dispatchFocus(),b()&&this.dispatchToggleCalendar(new Event("focus"))}}
68
- @blur=${e=>{this.dispatchBlur(e),this.dispatchManageValidity(e.target),this.dispatchEvent(new CustomEvent("value-change",{detail:e.target.value,bubbles:!0,composed:!0}))}}
69
- @change=${e=>{this.dispatchChange(e),e.stopImmediatePropagation()}}
70
- ${p.n(this.inputRef)}
71
- />
72
- ${this.renderCalendarButton()}
73
- </div>
74
- `}}M([l.n({type:String})],E.prototype,"value");M([l.n({type:Object})],E.prototype,"strings");try{l.t("pkt-datepicker-single")(E)}catch{console.warn("Forsøker å definere <pkt-datepicker-single>, men den er allerede definert")}var re=Object.defineProperty,S=(i,e,t,a)=>{for(var s=void 0,r=i.length-1,n;r>=0;r--)(n=i[r])&&(s=n(e,t,s)||s);return s&&re(e,t,s),s};class w extends v{constructor(){super(...arguments),this.value=[],this.label="",this.showRangeLabels=!1,this.strings=U,this.inputRefTo=p.e()}get inputElementTo(){return this.inputRefTo.value}render(){var t,a,s,r;const e=P.getRangeLabelClasses(this.showRangeLabels);return l.b`
75
- <div class="pkt-input__container">
76
- ${this.showRangeLabels?l.b` <div class="pkt-input-prefix">${(t=this.strings.generic)==null?void 0:t.from}</div> `:l.A}
77
- <input
78
- class=${$.e(this.inputClasses)}
79
- .type=${this.inputType}
80
- id="${this.id}-input"
81
- aria-label="${this.label} ${((a=this.strings.generic)==null?void 0:a.from)??"Fra"}"
82
- .value=${this.value[0]??""}
83
- min=${g.o(this.min)}
84
- max=${g.o(this.max)}
85
- placeholder=${g.o(this.placeholder)}
86
- ?readonly=${this.isInputReadonly}
87
- ?disabled=${this.disabled}
88
- @click=${n=>{n.preventDefault(),this.dispatchToggleCalendar(n)}}
89
- @touchend=${n=>{n.preventDefault(),this.dispatchToggleCalendar(n)}}
90
- @keydown=${n=>_.handleInputKeydown(n,o=>this.dispatchToggleCalendar(o),()=>x.submitFormOrFallback(this.internals,()=>{var o;return(o=this.inputRefTo.value)==null?void 0:o.focus()}),()=>{var o;return(o=this.inputRefTo.value)==null?void 0:o.focus()},()=>{var o;return(o=this.inputRef.value)==null?void 0:o.blur()})}
91
- @input=${n=>{this.dispatchInput(n),n.stopImmediatePropagation()}}
92
- @focus=${()=>{this.dispatchFocus(),b()&&this.dispatchToggleCalendar(new Event("focus"))}}
93
- @blur=${n=>{this.dispatchBlur(n),this.dispatchEvent(new CustomEvent("range-blur",{detail:{event:n,values:this.value,inputType:"from"},bubbles:!0,composed:!0}))}}
94
- @change=${n=>{this.dispatchChange(n),n.stopImmediatePropagation()}}
95
- ${p.n(this.inputRef)}
96
- />
97
- <div class="${$.e(e)}" id="${this.id}-to-label">
98
- ${(s=this.strings.generic)==null?void 0:s.to}
99
- </div>
100
- ${this.showRangeLabels?l.A:l.b` <div class="pkt-input-separator">–</div> `}
101
- <input
102
- class=${$.e(this.inputClasses)}
103
- .type=${this.inputType}
104
- id="${this.id}-to"
105
- aria-label="${this.label} ${((r=this.strings.generic)==null?void 0:r.to)??"Til"}"
106
- .value=${this.value[1]??""}
107
- min=${g.o(this.min)}
108
- max=${g.o(this.max)}
109
- placeholder=${g.o(this.placeholder)}
110
- ?readonly=${this.isInputReadonly}
111
- ?disabled=${this.disabled}
112
- @click=${n=>{n.preventDefault(),this.dispatchToggleCalendar(n)}}
113
- @touchend=${n=>{n.preventDefault(),this.dispatchToggleCalendar(n)}}
114
- @keydown=${n=>_.handleInputKeydown(n,o=>this.dispatchToggleCalendar(o),()=>x.submitFormOrFallback(this.internals,()=>{var o;return(o=this.inputRefTo.value)==null?void 0:o.blur()}),void 0,()=>{var o;return(o=this.inputRefTo.value)==null?void 0:o.blur()})}
115
- @input=${n=>{this.dispatchInput(n),n.stopImmediatePropagation()}}
116
- @focus=${()=>{this.dispatchFocus(),b()&&this.dispatchToggleCalendar(new Event("focus"))}}
117
- @blur=${n=>{this.dispatchBlur(n),this.dispatchEvent(new CustomEvent("range-blur",{detail:{event:n,values:this.value,inputType:"to"},bubbles:!0,composed:!0}))}}
118
- @change=${n=>{this.dispatchChange(n),n.stopImmediatePropagation()}}
119
- ${p.n(this.inputRefTo)}
120
- />
121
- ${this.renderCalendarButton()}
122
- </div>
123
- `}}S([l.n({type:Array})],w.prototype,"value");S([l.n({type:String})],w.prototype,"label");S([l.n({type:Boolean})],w.prototype,"showRangeLabels");S([l.n({type:Object})],w.prototype,"strings");try{l.t("pkt-datepicker-range")(w)}catch{console.warn("Forsøker å definere <pkt-datepicker-range>, men den er allerede definert")}var oe=Object.defineProperty,B=(i,e,t,a)=>{for(var s=void 0,r=i.length-1,n;r>=0;r--)(n=i[r])&&(s=n(e,t,s)||s);return s&&oe(e,t,s),s};class D extends v{constructor(){super(...arguments),this.value=[],this.strings=L}get isInputDisabled(){return this.disabled||this.maxlength!==void 0&&this.maxlength!==null&&this.value.length>=this.maxlength}dispatchAddToSelected(e){this.dispatchEvent(new CustomEvent("add-to-selected",{detail:e,bubbles:!0,composed:!0}))}render(){return l.b`
124
- <div class="pkt-input__container">
125
- <input
126
- class=${$.e(this.inputClasses)}
127
- .type=${this.inputType}
128
- id="${this.id}-input"
129
- min=${g.o(this.min)}
130
- max=${g.o(this.max)}
131
- placeholder=${g.o(this.placeholder)}
132
- ?readonly=${this.isInputReadonly}
133
- ?disabled=${this.isInputDisabled}
134
- @click=${e=>{e.preventDefault(),this.dispatchToggleCalendar(e)}}
135
- @touchend=${e=>{e.preventDefault(),this.dispatchToggleCalendar(e)}}
136
- @blur=${e=>{this.dispatchBlur(e),this.dispatchAddToSelected(e)}}
137
- @input=${e=>{this.dispatchInput(e),e.stopImmediatePropagation()}}
138
- @focus=${()=>{this.dispatchFocus(),b()&&this.dispatchToggleCalendar(new Event("focus"))}}
139
- @keydown=${e=>_.handleInputKeydown(e,t=>this.dispatchToggleCalendar(t),()=>x.submitFormOrFallback(this.internals,()=>{var t;return(t=this.inputRef.value)==null?void 0:t.blur()}),void 0,void 0,t=>this.dispatchAddToSelected(t))}
140
- @change=${e=>{this.dispatchChange(e),e.stopImmediatePropagation()}}
141
- ${p.n(this.inputRef)}
142
- />
143
- ${this.renderCalendarButton()}
144
- </div>
145
- `}}B([l.n({type:Array})],D.prototype,"value");B([l.n({type:Number})],D.prototype,"maxlength");B([l.n({type:Object})],D.prototype,"strings");try{l.t("pkt-datepicker-multiple")(D)}catch{console.warn("Forsøker å definere <pkt-datepicker-multiple>, men den er allerede definert")}var ue=Object.defineProperty,pe=Object.getOwnPropertyDescriptor,d=(i,e,t,a)=>{for(var s=a>1?void 0:a?pe(e,t):e,r=i.length-1,n;r>=0;r--)(n=i[r])&&(s=(a?n(e,t,s):n(s))||s);return a&&s&&ue(e,t,s),s};class h extends V.PktInputElement{constructor(){super(...arguments),this._valueProperty="",this._valueProcessing=!1,this.datepickerPopupRef=p.e(),this._value=[],this.label="Datovelger",this.dateformat=C.props.dateformat.default,this.multiple=C.props.multiple.default,this.maxlength=null,this.range=C.props.range.default,this.showRangeLabels=!1,this.min=null,this.max=null,this.weeknumbers=C.props.weeknumbers.default,this.withcontrols=C.props.withcontrols.default,this.excludedates=[],this.excludeweekdays=[],this.currentmonth=null,this.today=null,this.calendarOpen=!1,this.timezone="Europe/Oslo",this.inputClasses={},this.calRef=p.e(),this.popupRef=p.e(),this.singleInputRef=p.e(),this.rangeInputRef=p.e(),this.multipleInputRef=p.e(),this.addToSelected=e=>{const t=this.datepickerPopupRef.value;return t&&typeof t.addToSelected=="function"?t.addToSelected(e,this.min,this.max):T.addToSelected(e,this.calRef,this.min,this.max)}}get value(){return this._valueProperty}set value(e){const t=this._valueProperty;this._valueProperty=Array.isArray(e)?e.join(","):e||"",this.valueChanged(this._valueProperty,t),this.requestUpdate("value",t)}get inputType(){return ie.getInputType()}connectedCallback(){super.connectedCallback(),this.timezone&&this.timezone!==window.pktTz&&(window.pktTz=this.timezone)}disconnectedCallback(){super.disconnectedCallback()}onInput(){this.dispatchEvent(new Event("input",{bubbles:!0}))}valueChanged(e,t){if(!(this._valueProcessing||e===t)){this._valueProcessing=!0;try{const a=u.valueToArray(e),s=this.multiple&&a.length>1?A.filterSelectableDates(a,this.min,this.max,this.excludedates,this.excludeweekdays):a;if(this.range&&!A.validateRangeOrder(s)){this._value=[],this._valueProperty="",super.valueChanged("",t);return}this._value=s;const r=u.arrayToCsv(s);if(this._valueProperty!==r&&(this._valueProperty=r),this.range&&s.length<2)return;super.valueChanged(r,t)}finally{this._valueProcessing=!1}}}attributeChangedCallback(e,t,a){e==="value"&&this.value!==t&&this.valueChanged(a,t),e==="excludedates"&&typeof this.excludedates=="string"&&(this.excludedates=u.valueToArray(a||"")),e==="excludeweekdays"&&typeof this.excludeweekdays=="string"&&(this.excludeweekdays=u.valueToArray(a||"")),super.attributeChangedCallback(e,t,a)}updated(e){if(e.has("value")&&(e.has("multiple")||e.has("range"))){const t=Array.isArray(this.value)?this.value.join(","):this.value,a=e.get("value"),s=Array.isArray(a)?a.join(","):a;this.valueChanged(t,s)}e.has("multiple")&&(this.multiple&&!Array.isArray(this._value)?this._value=u.valueToArray(this.value):!this.multiple&&Array.isArray(this._value)&&(this._value=this._value.filter(Boolean)),!this.multiple&&!this.range&&Array.isArray(this._value)&&(this._value=[this._value[0]??""])),super.updated(e)}get inputRef(){return{value:this.currentInputElement}}get inputRefTo(){return{value:this.currentInputElementTo}}get currentInputElement(){var e,t,a;return this.multiple?(e=this.multipleInputRef.value)==null?void 0:e.inputElement:this.range?(t=this.rangeInputRef.value)==null?void 0:t.inputElement:(a=this.singleInputRef.value)==null?void 0:a.inputElement}get currentInputElementTo(){var e;if(this.range)return(e=this.rangeInputRef.value)==null?void 0:e.inputElementTo}get currentButtonElement(){var e,t,a;return this.multiple?(e=this.multipleInputRef.value)==null?void 0:e.buttonElement:this.range?(t=this.rangeInputRef.value)==null?void 0:t.buttonElement:(a=this.singleInputRef.value)==null?void 0:a.buttonElement}get btnRef(){return{value:this.currentButtonElement}}renderInput(){return l.b`
146
- <pkt-datepicker-single
147
- .value=${this._value[0]??""}
148
- .inputType=${this.inputType}
149
- .id=${this.id}
150
- .min=${this.min}
151
- .max=${this.max}
152
- .placeholder=${this.placeholder}
153
- .readonly=${this.readonly}
154
- .disabled=${this.disabled}
155
- .inputClasses=${this.inputClasses}
156
- .internals=${this.internals}
157
- .strings=${this.strings}
158
- @toggle-calendar=${e=>this.toggleCalendar(e.detail)}
159
- @input-change=${()=>this.onInput()}
160
- @input-focus=${()=>this.onFocus()}
161
- @input-blur=${e=>{var t;(t=this.calRef.value)!=null&&t.contains(e.detail.relatedTarget)||this.onBlur()}}
162
- @manage-validity=${e=>this.manageValidity(e.detail)}
163
- @value-change=${e=>{this.value=e.detail}}
164
- @input-changed=${()=>{this.touched=!0}}
165
- ${p.n(this.singleInputRef)}
166
- ></pkt-datepicker-single>
167
- `}renderRangeInput(){return l.b`
168
- <pkt-datepicker-range
169
- .value=${this._value}
170
- .inputType=${this.inputType}
171
- .id=${this.id}
172
- .label=${this.label}
173
- .min=${this.min}
174
- .max=${this.max}
175
- .placeholder=${this.placeholder}
176
- .readonly=${this.readonly}
177
- .disabled=${this.disabled}
178
- .showRangeLabels=${this.showRangeLabels}
179
- .inputClasses=${this.inputClasses}
180
- .internals=${this.internals}
181
- .strings=${this.strings}
182
- @toggle-calendar=${e=>this.toggleCalendar(e.detail)}
183
- @input-change=${()=>this.onInput()}
184
- @input-focus=${()=>this.onFocus()}
185
- @input-blur=${e=>{var t;(t=this.calRef.value)!=null&&t.contains(e.detail.relatedTarget)||this.onBlur()}}
186
- @range-blur=${e=>{const t=this.currentInputElement,a=this.currentInputElementTo;if(t&&a){const s=t.value,r=a.value;if(s&&r&&s>r)a.value="",this._value=[s],this.value=s;else{const n=[s,r].filter(Boolean);n.length>0&&(n[0]!==this._value[0]||n[1]!==this._value[1])&&(this._value=n,this.value=n.join(","))}}I.processRangeBlur(e.detail.event,e.detail.values,this.calRef,()=>this.clearInputValue(),s=>this.manageValidity(s))}}
187
- @manage-validity=${e=>this.manageValidity(e.detail)}
188
- @validate-date-input=${e=>{x.validateDateInput(e.detail,this.internals,this.min,this.max,this.strings)}}
189
- @handle-date-select=${e=>{var a,s;const t=u.fromISOToDate(e.detail);if(t){const r=u.formatISODate(t);this._value[0]!==r&&this._value[1]!==r&&((s=(a=this.calRef)==null?void 0:a.value)==null||s.handleDateSelect(t))}}}
190
- @input-changed=${()=>{this.touched=!0}}
191
- ${p.n(this.rangeInputRef)}
192
- ></pkt-datepicker-range>
193
- `}renderMultipleInput(){return l.b`
194
- <pkt-datepicker-multiple
195
- .value=${this._value}
196
- .inputType=${this.inputType}
197
- .id=${this.id}
198
- .min=${this.min}
199
- .max=${this.max}
200
- .placeholder=${this.placeholder}
201
- .readonly=${this.readonly}
202
- .disabled=${this.disabled}
203
- .maxlength=${this.maxlength}
204
- .inputClasses=${this.inputClasses}
205
- .internals=${this.internals}
206
- .strings=${this.strings}
207
- @toggle-calendar=${e=>this.toggleCalendar(e.detail)}
208
- @input-change=${()=>this.onInput()}
209
- @input-focus=${()=>this.onFocus()}
210
- @input-blur=${e=>{var t;(t=this.calRef.value)!=null&&t.contains(e.detail.relatedTarget)||this.onBlur()}}
211
- @add-to-selected=${e=>this.addToSelected(e.detail)}
212
- @input-changed=${()=>{this.touched=!0}}
213
- ${p.n(this.multipleInputRef)}
214
- ></pkt-datepicker-multiple>
215
- `}renderCalendar(){return l.b`
216
- <pkt-datepicker-popup
217
- class="pkt-contents"
218
- ?open=${this.calendarOpen}
219
- ?multiple=${this.multiple}
220
- ?range=${this.range}
221
- ?weeknumbers=${this.weeknumbers}
222
- ?withcontrols=${this.withcontrols}
223
- .maxMultiple=${this.maxlength}
224
- .selected=${this._value}
225
- .earliest=${this.min}
226
- .latest=${this.max}
227
- .excludedates=${Array.isArray(this.excludedates)?this.excludedates:this.excludedates.split(",")}
228
- .excludeweekdays=${this.excludeweekdays}
229
- .currentmonth=${this.currentmonth?u.parseISODateString(this.currentmonth):null}
230
- .today=${this.today}
231
- @date-selected=${e=>{this.value=I.processDateSelection(e.detail,this.multiple,this.range),this._value=e.detail,I.updateInputValues(this.inputRef,this.inputRefTo,this._value,this.range,this.multiple,t=>this.manageValidity(t))}}
232
- @close=${()=>{this.onBlur(),this.hideCalendar()}}
233
- ${p.n(this.datepickerPopupRef)}
234
- ></pkt-datepicker-popup>
235
- `}render(){return this.inputClasses=P.getInputClasses(this.fullwidth,this.showRangeLabels,this.multiple,this.range,this.readonly,this.inputType),l.b`
236
- <pkt-input-wrapper
237
- label="${this.label}"
238
- forId="${this.id}-input"
239
- ?counter=${this.multiple&&!!this.maxlength}
240
- .counterCurrent=${this.value?this._value.length:0}
241
- .counterMaxLength=${this.maxlength}
242
- ?disabled=${this.disabled}
243
- ?hasError=${this.hasError}
244
- ?hasFieldset=${this.hasFieldset}
245
- ?inline=${this.inline}
246
- ?required=${this.required}
247
- ?optionalTag=${this.optionalTag}
248
- ?requiredTag=${this.requiredTag}
249
- useWrapper=${this.useWrapper}
250
- .optionalText=${this.optionalText}
251
- .requiredText=${this.requiredText}
252
- .tagText=${this.tagText}
253
- .errorMessage=${this.errorMessage}
254
- .helptext=${this.helptext}
255
- .helptextDropdown=${this.helptextDropdown}
256
- .helptextDropdownButton=${this.helptextDropdownButton}
257
- .ariaDescribedBy=${this.ariaDescribedBy}
258
- class="pkt-datepicker"
259
- >
260
- <div class="pkt-contents" slot="helptext">${K.slotContent(this,"helptext")}</div>
261
- ${this.multiple?l.b`<pkt-date-tags
262
- .dates=${this._value}
263
- dateformat=${this.dateformat}
264
- strings=${this.strings}
265
- id-base=${this.id}
266
- @date-tag-removed=${e=>{var s;const t=this.datepickerPopupRef.value,a=u.fromISOToDate(e.detail);t&&a&&typeof t.handleDateSelect=="function"?t.handleDateSelect(a):(s=this.calRef.value)==null||s.handleDateSelect(a)}}
267
- ></pkt-date-tags>`:l.A}
268
- <div class="pkt-datepicker__inputs ${this.range?"pkt-input__range-inputs":""}">
269
- ${this.range?this.renderRangeInput():this.multiple?this.renderMultipleInput():this.renderInput()}
270
- </div>
271
- </pkt-input-wrapper>
272
- ${this.renderCalendar()}
273
- `}handleCalendarPosition(){const e=this.multiple&&!!this.maxlength;T.handleCalendarPosition(this.popupRef,this.inputRef,e)}async showCalendar(){var t;const e=this.datepickerPopupRef.value;if(this.calendarOpen=!0,e&&typeof e.show=="function"){e.show(),b()&&e.focusOnCurrentDate();return}await q.sleep(20),this.handleCalendarPosition(),b()&&((t=this.calRef.value)==null||t.focusOnCurrentDate())}hideCalendar(){const e=this.datepickerPopupRef.value;if(this.calendarOpen=!1,e&&typeof e.hide=="function")return e.hide()}async toggleCalendar(e){e.preventDefault();const t=this.datepickerPopupRef.value;if(t&&typeof t.toggle=="function"){const a=!!t.open;t.toggle(),this.calendarOpen=!a;return}this.calendarOpen?this.hideCalendar():this.showCalendar()}clearInputValue(){this._value=[],this.value="",this.internals.setFormValue(this.value),this.dispatchEvent(new Event("change",{bubbles:!0,composed:!0})),this.dispatchEvent(new CustomEvent("value-change",{detail:this._value,bubbles:!0,composed:!0}))}}d([l.n({type:String,reflect:!0})],h.prototype,"value",1);d([l.n({type:String,reflect:!0})],h.prototype,"label",2);d([l.n({type:String})],h.prototype,"dateformat",2);d([l.n({type:Boolean,reflect:!0})],h.prototype,"multiple",2);d([l.n({type:Number,reflect:!0})],h.prototype,"maxlength",2);d([l.n({type:Boolean,reflect:!0})],h.prototype,"range",2);d([l.n({type:Boolean,attribute:"show-range-labels"})],h.prototype,"showRangeLabels",2);d([l.n({type:String,reflect:!0})],h.prototype,"min",2);d([l.n({type:String,reflect:!0})],h.prototype,"max",2);d([l.n({type:Boolean})],h.prototype,"weeknumbers",2);d([l.n({type:Boolean,reflect:!0})],h.prototype,"withcontrols",2);d([l.n({converter:u.converters.csvToArray})],h.prototype,"excludedates",2);d([l.n({converter:u.converters.csvToArray})],h.prototype,"excludeweekdays",2);d([l.n({type:String})],h.prototype,"currentmonth",2);d([l.n({type:String})],h.prototype,"today",2);d([l.n({type:Boolean,reflect:!0,attribute:"calendar-open"})],h.prototype,"calendarOpen",2);d([l.n({type:String})],h.prototype,"timezone",2);d([F.r()],h.prototype,"inputClasses",2);try{l.t("pkt-datepicker")(h)}catch{console.warn("Forsøker å definere <pkt-datepicker>, men den er allerede definert")}exports.PktDateTags=k;exports.PktDatepicker=h;exports.PktDatepickerMultiple=D;exports.PktDatepickerRange=w;exports.PktDatepickerSingle=E;