@oslokommune/punkt-elements 12.31.2 → 12.32.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 (181) hide show
  1. package/dist/alert-C2WKLFow.cjs +27 -0
  2. package/dist/alert-XGjypFHe.js +115 -0
  3. package/dist/alert.d.ts +32 -0
  4. package/dist/{backlink-CzpB-ih9.js → backlink-BX8HBhw5.js} +2 -2
  5. package/dist/{backlink-Dn4DfWVR.cjs → backlink-NJdC0FAO.cjs} +1 -1
  6. package/dist/backlink.d.ts +32 -0
  7. package/dist/{button-9NwGr-OS.js → button-Bn8jVB0f.js} +33 -33
  8. package/dist/{button-Beo3c7cx.cjs → button-Bpbh8A_a.cjs} +2 -2
  9. package/dist/button.d.ts +32 -0
  10. package/dist/{calendar-BbZNxsKY.js → calendar-BNHDEEwT.js} +20 -84
  11. package/dist/{calendar-CxBo98iI.cjs → calendar-Ds13AKr5.cjs} +4 -4
  12. package/dist/calendar.d.ts +32 -0
  13. package/dist/card-CEv3DL-o.js +94 -0
  14. package/dist/card-c5EEPaNh.cjs +28 -0
  15. package/dist/card.d.ts +32 -0
  16. package/dist/{checkbox-9Zjy_NU7.cjs → checkbox-DDBBDM85.cjs} +1 -1
  17. package/dist/{checkbox-CzDpR6_8.js → checkbox-DoMYxp83.js} +9 -9
  18. package/dist/checkbox.d.ts +32 -0
  19. package/dist/{class-map-DWtqmIRS.js → class-map-D4tSZX70.js} +2 -2
  20. package/dist/{class-map-Dj5mbCUg.cjs → class-map-DvBKxTiW.cjs} +1 -1
  21. package/dist/combobox-BflWORVa.cjs +115 -0
  22. package/dist/combobox-l7LmWQYu.js +491 -0
  23. package/dist/combobox.d.ts +47 -0
  24. package/dist/datepicker-Bkiyh5P5.cjs +153 -0
  25. package/dist/datepicker-nWd89NwP.js +449 -0
  26. package/dist/datepicker.d.ts +32 -0
  27. package/dist/directive-C7oCP5Bh.cjs +5 -0
  28. package/dist/directive-helpers-BmXIK-1b.js +45 -0
  29. package/dist/directive-helpers-donnvcEO.cjs +5 -0
  30. package/dist/{directive-B76A7YXI.js → directive-oAbCiebi.js} +4 -4
  31. package/dist/element-DJpGVXjq.cjs +238 -0
  32. package/dist/{element-C7XjZtLU.js → element-DiqKrDty.js} +8851 -8847
  33. package/dist/{helptext-CqnoPodd.js → helptext-DfRusn5R.js} +13 -13
  34. package/dist/{helptext-B9kxDc2b.cjs → helptext-aHD9icur.cjs} +2 -2
  35. package/dist/helptext.d.ts +32 -0
  36. package/dist/{icon-BEUgV9Wo.js → icon-BdY52BIt.js} +2 -2
  37. package/dist/{icon-BOKusjAA.cjs → icon-UtDKPH3R.cjs} +1 -1
  38. package/dist/icon.d.ts +32 -0
  39. package/dist/{if-defined-CpIkv1A4.cjs → if-defined-CoBDkDGb.cjs} +1 -1
  40. package/dist/{if-defined-eRX4e5zO.js → if-defined-DeANa4n5.js} +1 -1
  41. package/dist/index.d.ts +210 -15
  42. package/dist/{input-element-BK8UkQli.js → input-element-C4mmTk6h.js} +23 -20
  43. package/dist/input-element-VNai8bsq.cjs +1 -0
  44. package/dist/input-wrapper-8iKEzDRZ.js +40 -0
  45. package/dist/input-wrapper-DWOw7Yn-.cjs +52 -0
  46. package/dist/input-wrapper-EoSAbU-U.cjs +1 -0
  47. package/dist/input-wrapper-P_oEi6dk.js +185 -0
  48. package/dist/input-wrapper.d.ts +32 -0
  49. package/dist/link-D9dJ6F-R.js +73 -0
  50. package/dist/link-DBxXqsnP.cjs +8 -0
  51. package/dist/link.d.ts +32 -0
  52. package/dist/{linkcard-2WzDJPZz.cjs → linkcard-D5O1hR7N.cjs} +1 -1
  53. package/dist/{linkcard-CRpo3tiw.js → linkcard-DcEE9IVw.js} +4 -4
  54. package/dist/linkcard.d.ts +32 -0
  55. package/dist/listbox-CK1GmwCE.cjs +95 -0
  56. package/dist/listbox-CfJWJDrc.js +360 -0
  57. package/dist/listbox.d.ts +47 -0
  58. package/dist/{loader-B1edLWTg.js → loader-DZvOlXzI.js} +6 -6
  59. package/dist/{loader-DI74pe25.cjs → loader-SDXJp58K.cjs} +1 -1
  60. package/dist/loader.d.ts +32 -0
  61. package/dist/messagebox-Ce5e1gga.js +79 -0
  62. package/dist/messagebox-D2_-WZQG.cjs +12 -0
  63. package/dist/messagebox.d.ts +32 -0
  64. package/dist/modal-CCtUsYKk.cjs +33 -0
  65. package/dist/{modal-kPX8nO_L.js → modal-CdgIOp8Q.js} +51 -94
  66. package/dist/modal.d.ts +32 -0
  67. package/dist/pkt-alert.cjs +1 -1
  68. package/dist/pkt-alert.js +1 -1
  69. package/dist/pkt-backlink.cjs +1 -1
  70. package/dist/pkt-backlink.js +1 -1
  71. package/dist/pkt-button.cjs +1 -1
  72. package/dist/pkt-button.js +1 -1
  73. package/dist/pkt-calendar.cjs +1 -1
  74. package/dist/pkt-calendar.js +1 -1
  75. package/dist/pkt-card.cjs +1 -1
  76. package/dist/pkt-card.js +1 -1
  77. package/dist/pkt-checkbox.cjs +1 -1
  78. package/dist/pkt-checkbox.js +1 -1
  79. package/dist/pkt-combobox.cjs +1 -0
  80. package/dist/pkt-combobox.js +6 -0
  81. package/dist/pkt-datepicker.cjs +1 -1
  82. package/dist/pkt-datepicker.js +1 -1
  83. package/dist/pkt-helptext.cjs +1 -1
  84. package/dist/pkt-helptext.js +1 -1
  85. package/dist/pkt-icon.cjs +1 -1
  86. package/dist/pkt-icon.js +1 -1
  87. package/dist/pkt-index.cjs +3 -3
  88. package/dist/pkt-index.js +45 -43
  89. package/dist/pkt-input-wrapper.cjs +1 -1
  90. package/dist/pkt-input-wrapper.js +1 -1
  91. package/dist/pkt-link.cjs +1 -1
  92. package/dist/pkt-link.js +1 -1
  93. package/dist/pkt-linkcard.cjs +1 -1
  94. package/dist/pkt-linkcard.js +1 -1
  95. package/dist/pkt-listbox.cjs +1 -0
  96. package/dist/pkt-listbox.js +6 -0
  97. package/dist/pkt-loader.cjs +1 -1
  98. package/dist/pkt-loader.js +1 -1
  99. package/dist/pkt-messagebox.cjs +1 -1
  100. package/dist/pkt-messagebox.js +1 -1
  101. package/dist/pkt-modal.cjs +1 -1
  102. package/dist/pkt-modal.js +1 -1
  103. package/dist/pkt-options-controller-BkWE4pZe.js +38 -0
  104. package/dist/pkt-options-controller-TJ1apYGF.cjs +1 -0
  105. package/dist/pkt-progressbar.cjs +1 -1
  106. package/dist/pkt-progressbar.js +2 -2
  107. package/dist/pkt-radiobutton.cjs +1 -1
  108. package/dist/pkt-radiobutton.js +1 -1
  109. package/dist/pkt-select.cjs +1 -1
  110. package/dist/pkt-select.js +1 -1
  111. package/dist/pkt-slot-controller-BtVLTZb7.js +79 -0
  112. package/dist/pkt-slot-controller-plQxXRvV.cjs +1 -0
  113. package/dist/pkt-tag.cjs +1 -1
  114. package/dist/pkt-tag.js +1 -1
  115. package/dist/pkt-textarea.cjs +1 -1
  116. package/dist/pkt-textarea.js +1 -1
  117. package/dist/pkt-textinput.cjs +1 -1
  118. package/dist/pkt-textinput.js +1 -1
  119. package/dist/{progressbar-D0nxLqHu.js → progressbar-DvFz9KBo.js} +6 -6
  120. package/dist/{progressbar-B6A9UVXS.cjs → progressbar-jASTnhti.cjs} +1 -1
  121. package/dist/progressbar.d.ts +32 -0
  122. package/dist/{radiobutton-BWyQgR_x.cjs → radiobutton-C-Xd5sSq.cjs} +1 -1
  123. package/dist/{radiobutton-DLWjvLBO.js → radiobutton-D03aN4yn.js} +5 -5
  124. package/dist/radiobutton.d.ts +32 -0
  125. package/dist/ref-B70YZNXm.js +102 -0
  126. package/dist/ref-CLqTsViF.cjs +9 -0
  127. package/dist/repeat-CNLpCTun.js +61 -0
  128. package/dist/repeat-t2oms1o6.cjs +5 -0
  129. package/dist/select-BLDaK5Rd.js +118 -0
  130. package/dist/select-Dvds7MzS.cjs +49 -0
  131. package/dist/select.d.ts +32 -0
  132. package/dist/{state-HNj0_316.cjs → state-C4LdlTYO.cjs} +1 -1
  133. package/dist/{state-CDQk0DFQ.js → state-CDwPbiQj.js} +1 -1
  134. package/dist/tag-C52KeBmR.cjs +18 -0
  135. package/dist/{tag-CmFcSdOV.js → tag-DoS5S2Bq.js} +28 -77
  136. package/dist/tag.d.ts +32 -0
  137. package/dist/{textarea-BPqWCymU.js → textarea-C9EvdPGi.js} +18 -17
  138. package/dist/{textarea-VG-UTMLP.cjs → textarea-DJvNBmEL.cjs} +6 -6
  139. package/dist/textarea.d.ts +32 -0
  140. package/dist/{textinput-CEP7QA3E.cjs → textinput-Cg3ObBuw.cjs} +5 -4
  141. package/dist/{textinput-VD74aGzx.js → textinput-CxRSSYaN.js} +34 -33
  142. package/dist/textinput.d.ts +32 -0
  143. package/package.json +4 -4
  144. package/src/components/button/button.ts +3 -2
  145. package/src/components/combobox/combobox.ts +873 -0
  146. package/src/components/combobox/countrycodes.json +927 -0
  147. package/src/components/combobox/index.ts +6 -0
  148. package/src/components/datepicker/datepicker.ts +6 -4
  149. package/src/components/helptext/helptext.ts +1 -1
  150. package/src/components/index.ts +7 -0
  151. package/src/components/input-wrapper/input-wrapper.ts +42 -34
  152. package/src/components/listbox/index.ts +4 -0
  153. package/src/components/listbox/listbox.ts +474 -0
  154. package/src/components/select/select.ts +7 -0
  155. package/src/components/tag/tag.ts +1 -1
  156. package/src/components/textinput/textinput.ts +3 -2
  157. package/dist/alert-BDxxRqgi.cjs +0 -27
  158. package/dist/alert-D0S57u0r.js +0 -163
  159. package/dist/card-C63x_nll.cjs +0 -28
  160. package/dist/card-DQfNKnKl.js +0 -176
  161. package/dist/datepicker-CYUvRGhE.js +0 -663
  162. package/dist/datepicker-FuAL0uNU.cjs +0 -155
  163. package/dist/directive-C_VV3qwo.cjs +0 -5
  164. package/dist/element-CzFXQBoS.cjs +0 -238
  165. package/dist/input-element-Dtyuf6s8.cjs +0 -1
  166. package/dist/input-wrapper-Bo2_t6pA.cjs +0 -50
  167. package/dist/input-wrapper-Bw9tARAD.js +0 -125
  168. package/dist/input-wrapper-DaZZq8c0.js +0 -172
  169. package/dist/input-wrapper-jPnKsfEC.cjs +0 -1
  170. package/dist/link-1iq0Pmuf.cjs +0 -8
  171. package/dist/link-D3U0Jkz8.js +0 -109
  172. package/dist/messagebox-DQpEMkS2.cjs +0 -12
  173. package/dist/messagebox-KP-8-tA9.js +0 -114
  174. package/dist/modal-ytIJwfr3.cjs +0 -33
  175. package/dist/pkt-slot-controller-Clbye6cM.js +0 -85
  176. package/dist/pkt-slot-controller-Oc32unDk.cjs +0 -1
  177. package/dist/ref-2anvRHT4.cjs +0 -13
  178. package/dist/ref-DbOSDQbk.js +0 -143
  179. package/dist/select-CzuxXKll.js +0 -150
  180. package/dist/select-DZL6aa2s.cjs +0 -48
  181. package/dist/tag-BeLSOjNh.cjs +0 -18
@@ -1,155 +0,0 @@
1
- "use strict";const $=require("./class-map-Dj5mbCUg.cjs"),k=require("./if-defined-CpIkv1A4.cjs"),n=require("./element-CzFXQBoS.cjs"),S=require("./state-HNj0_316.cjs"),g=require("./calendar-CxBo98iI.cjs"),P=require("./input-element-Dtyuf6s8.cjs"),r=require("./ref-2anvRHT4.cjs"),w=require("./directive-C_VV3qwo.cjs");require("./icon-BOKusjAA.cjs");require("./input-wrapper-Bo2_t6pA.cjs");require("./tag-BeLSOjNh.cjs");const I=require("./pkt-slot-controller-Oc32unDk.cjs");/**
2
- * @license
3
- * Copyright 2017 Google LLC
4
- * SPDX-License-Identifier: BSD-3-Clause
5
- */const C=(o,e,t)=>{const i=new Map;for(let s=e;s<=t;s++)i.set(o[s],s);return i},_=w.e(class extends w.i{constructor(o){if(super(o),o.type!==w.t.CHILD)throw Error("repeat() can only be used in text expressions")}dt(o,e,t){let i;t===void 0?t=e:e!==void 0&&(i=e);const s=[],a=[];let l=0;for(const c of o)s[l]=i?i(c,l):l,a[l]=t(c,l),l++;return{values:a,keys:s}}render(o,e,t){return this.dt(o,e,t).values}update(o,[e,t,i]){const s=r.p(o),{values:a,keys:l}=this.dt(e,t,i);if(!Array.isArray(s))return this.ut=l,a;const c=this.ut??(this.ut=[]),m=[];let b,D,u=0,h=s.length-1,d=0,f=a.length-1;for(;u<=h&&d<=f;)if(s[u]===null)u++;else if(s[h]===null)h--;else if(c[u]===l[d])m[d]=r.v(s[u],a[d]),u++,d++;else if(c[h]===l[f])m[f]=r.v(s[h],a[f]),h--,f--;else if(c[u]===l[f])m[f]=r.v(s[u],a[f]),r.r(o,m[f+1],s[u]),u++,f--;else if(c[h]===l[d])m[d]=r.v(s[h],a[d]),r.r(o,s[u],s[h]),h--,d++;else if(b===void 0&&(b=C(l,d,f),D=C(c,u,h)),b.has(c[u]))if(b.has(c[h])){const v=D.get(l[d]),x=v!==void 0?s[v]:null;if(x===null){const R=r.r(o,s[u]);r.v(R,a[d]),m[d]=R}else m[d]=r.v(x,a[d]),r.r(o,s[u],x),s[v]=null;d++}else r.M(s[h]),h--;else r.M(s[u]),u++;for(;d<=f;){const v=r.r(o,m[f+1]);r.v(v,a[d]),m[d++]=v}for(;u<=h;){const v=s[u++];v!==null&&r.M(v)}return this.ut=l,r.m(o,m),n.T}}),O="pkt-datepicker",E=!0,M={name:{type:"string",name:"Navn",description:"Navn som sendes brukes i skjema ved innsending"},label:{type:"string",name:"Etikett",description:"Tekst som vises over datovelgeren"},helptext:{type:"string",name:"Hjelpetekst",description:"Hjelpetekst som vises over datovelgeren"},helptextDropdown:{type:"string",name:"Utvidet hjelpetekst",description:"Hjelpetekst som vises i en lukket boks man kan åpne"},helptextDropdownButton:{type:"string",name:"Knappetekst for hjelpetekst",description:"Tekst som vises på knappen for å åpne/lukke utvidet hjelpetekst",default:"Les mer"},dateformat:{name:"Datoformat",description:"Datoformat for valgte datoer i flervalgsmodus",type:"string",default:"dd.MM.yyyy"},currentmonth:{name:"Nåværende måned",type:"ISOdatestring",description:"Måneden som skal vises i datovelgeren"},value:{name:"Verdi",type:"ISOdatestring",variant:"multiple",reflect:!0,description:"Kommaseparert liste av valgte datoer"},excludeweekdays:{name:"Utelat ukedager",type:"string",description:"Kommaseparert liste over ukedager (1-7) som skal ekskluderes"},excludedates:{name:"Utelat datoer",type:"ISOdatestring",variant:"multiple",description:"Kommaseparert liste over datoer som skal ekskluderes"},min:{name:"Tidligst tillatt",type:"ISOdatestring",default:null,description:"Første tillate dato i datovelgeren"},max:{name:"Senest tillatt",type:"ISOdatestring",default:null,description:"Siste tillate dato i datovelgeren"},weeknumbers:{name:"Vis ukenummer",type:"boolean",reflect:!0,default:!1,description:"Vis ukedager i datovelgerens kalender"},withcontrols:{name:"Med kontroller",type:"boolean",reflect:!0,default:!1,description:"Vis avanserte velgere for måned og år"},multiple:{name:"Flervalg",type:"boolean",reflect:!0,default:!1,description:"Tillat valg av flere enn én dato i samme velger"},maxlength:{name:"Maks antall",description:"Maks valgte datoer i flervalgsmodus",type:"number"},range:{name:"Datotidsrom",type:"boolean",reflect:!0,default:!1,description:"Tillat å velge et tidsrom mellom to datoer i samme velger"},hasError:{type:"boolean",name:"Feil",default:!1,description:"Viser feiltilstand for datovelgeren"},errorMessage:{type:"string",name:"Feilmelding",description:"Tekst som vises under datovelgeren ved feiltilstand"},disabled:{type:"boolean",name:"Deaktivert",default:!1,reflect:!0,description:"Er datovelgeren deaktivert?"},fullwidth:{type:"boolean",name:"Full bredde",default:!1,reflect:!0,description:"Skal datovelgeren ta opp hele bredden?"},required:{type:"boolean",name:"Påkrevd",default:!1,reflect:!0,description:"Er datovelgeren påkrevd?"},requiredTag:{type:"boolean",name:"Vise påkrevd-merking",default:!1,description:"Viser en merking som indikerer at datovelgeren er påkrevd"},requiredText:{type:"string",name:"Påkrevd-tekst",default:"Må fylles ut",description:"Tekst som vises i påkrevd-merkingen"},optionalTag:{type:"boolean",name:"Vise valgfritt-merking",default:!1,description:"Viser en merking som indikerer at datovelgeren er valgfri"},optionalText:{type:"string",name:"Valgfritt-tekst",default:"Valgfritt",description:"Tekst som vises i valgfritt-merkingen"},useWrapper:{type:"boolean",name:"Bruk wrapper",description:"Indikerer at feltet skal ha synlig label og hjelpetekst",displayAsFalse:!0,default:!0},id:{type:"string",name:"ID",description:"Unik identifikasjon for datovelgeren"}},q={change:{type:"Event",description:"Returnerer valgt dato som streng i ISO-format"},"value-change":{type:"CustomEvent",description:"Returnerer en <code>array</code> med valgte datoer i ISO-format"},toggleHelpText:{type:"CustomEvent",description:"Returnerer <code>event.detail { isOpen: true }</code> eller <code>event.detail { isOpen: false }</code> når hjelpeteksten åpnes eller lukkes"}},y={name:O,"css-class":"pkt-datepicker",isElement:E,props:M,events:q};var B=Object.defineProperty,V=Object.getOwnPropertyDescriptor,p=(o,e,t,i)=>{for(var s=i>1?void 0:i?V(e,t):e,a=o.length-1,l;a>=0;a--)(l=o[a])&&(s=(i?l(e,t,s):l(s))||s);return i&&s&&B(e,t,s),s};const T=o=>new Promise(e=>setTimeout(e,o));exports.PktDatepicker=class extends P.PktInputElement{constructor(){super(),this.value="",this._value=this.value?Array.isArray(this.value)?this.value:this.value.split(","):[],this.label="Datovelger",this.dateformat=y.props.dateformat.default,this.multiple=y.props.multiple.default,this.maxlength=null,this.range=y.props.range.default,this.showRangeLabels=!1,this.min=null,this.max=null,this.weeknumbers=y.props.weeknumbers.default,this.withcontrols=y.props.withcontrols.default,this.excludedates=[],this.excludeweekdays=[],this.currentmonth=null,this.calendarOpen=!1,this.timezone="Europe/Oslo",this.inputClasses={},this.buttonClasses={},this.inputRef=r.e(),this.inputRefTo=r.e(),this.btnRef=r.e(),this.calRef=r.e(),this.popupRef=r.e(),this.helptextSlot=r.e(),this.addToSelected=e=>{const t=e.target;if(!t.value)return;const i=this.min?g.newDate(this.min):null,s=this.max?g.newDate(this.max):null,a=g.newDate(t.value.split(",")[0]);a&&!isNaN(a.getTime())&&(!i||a>=i)&&(!s||a<=s)&&this.calRef.value&&this.calRef.value.handleDateSelect(a),t.value=""},this.slotController=new I.PktSlotController(this,this.helptextSlot)}async connectedCallback(){super.connectedCallback(),this.isMobileSafari=/iP(ad|od|hone)/i.test(window.navigator.userAgent)&&!!navigator.userAgent.match(/Version\/[\d\.]+.*Safari/),this.inputType=this.isMobileSafari?"text":"date",document&&document.body.addEventListener("click",e=>{var t,i;(t=this.inputRef)!=null&&t.value&&((i=this.btnRef)!=null&&i.value)&&!this.inputRef.value.contains(e.target)&&!(this.inputRefTo.value&&this.inputRefTo.value.contains(e.target))&&!this.btnRef.value.contains(e.target)&&!e.target.closest(".pkt-calendar-popup")&&this.calendarOpen&&(this.onBlur(),this.hideCalendar())}),this.value.length&&this._value.length===0&&(this._value=Array.isArray(this.value)?this.value:this.value.split(",")),this.min=this.min||y.props.min.default,this.max=this.max||y.props.max.default,typeof this.excludedates=="string"&&(this.excludedates=this.excludedates.split(",")),typeof this.excludeweekdays=="string"&&(this.excludeweekdays=this.excludeweekdays.split(",")),(this.multiple||this.range)&&this.name&&!this.name.endsWith("[]")&&(this.name=this.name+"[]"),this.calendarOpen&&(await T(20),this.handleCalendarPosition())}disconnectedCallback(){super.disconnectedCallback(),document&&document.body.removeEventListener("click",e=>{var t,i;(t=this.inputRef)!=null&&t.value&&((i=this.btnRef)!=null&&i.value)&&!this.inputRef.value.contains(e.target)&&!this.btnRef.value.contains(e.target)&&this.hideCalendar()})}attributeChangedCallback(e,t,i){if(e==="value"){if(this.range&&(i==null?void 0:i.split(",").length)===1)return;this.value!==t&&this.valueChanged(i,t)}e==="excludedates"&&typeof this.excludedates=="string"&&(this.excludedates=(i==null?void 0:i.split(","))??[]),e==="excludeweekdays"&&typeof this.excludeweekdays=="string"&&(this.excludeweekdays=(i==null?void 0:i.split(","))??[]),super.attributeChangedCallback(e,t,i)}updated(e){if(e.has("value")){if(this.range&&this.value.length===1)return;this.valueChanged(this.value,e.get("value"))}super.updated(e)}renderInput(){return n.x`
6
- <input
7
- class="${$.e(this.inputClasses)}"
8
- .type=${this.inputType}
9
- id="${this.id}-input"
10
- .value=${this._value[0]??""}
11
- min=${k.o(this.min)}
12
- max=${k.o(this.max)}
13
- @click=${e=>{e.preventDefault(),this.showCalendar()}}
14
- ?disabled=${this.disabled}
15
- @keydown=${e=>{var t;(e.key===","||e.key==="Enter")&&((t=this.inputRef.value)==null||t.blur()),(e.key==="Space"||e.key===" ")&&(e.preventDefault(),this.toggleCalendar(e))}}
16
- @input=${e=>{this.onInput(),e.stopImmediatePropagation()}}
17
- @focus=${()=>{this.onFocus(),this.isMobileSafari&&this.showCalendar()}}
18
- @blur=${e=>{var t;(t=this.calRef.value)!=null&&t.contains(e.relatedTarget)||this.onBlur(),this.manageValidity(e.target),this.value=e.target.value}}
19
- @change=${e=>{e.stopImmediatePropagation()}}
20
- ${r.n(this.inputRef)}
21
- />
22
- `}renderRangeInput(){const e={"pkt-input-prefix":this.showRangeLabels,"pkt-hide":!this.showRangeLabels};return n.x`
23
- ${this.showRangeLabels?n.x` <div class="pkt-input-prefix">${this.strings.generic.from}</div> `:n.E}
24
- <input
25
- class=${$.e(this.inputClasses)}
26
- .type=${this.inputType}
27
- id="${this.id}-input"
28
- .value=${this._value[0]??""}
29
- min=${k.o(this.min)}
30
- max=${k.o(this.max)}
31
- ?disabled=${this.disabled}
32
- @click=${t=>{t.preventDefault(),this.showCalendar()}}
33
- @keydown=${t=>{var i;(t.key===","||t.key==="Enter")&&((i=this.inputRef.value)==null||i.blur()),(t.key==="Space"||t.key===" ")&&(t.preventDefault(),this.toggleCalendar(t))}}
34
- @input=${t=>{this.onInput(),t.stopImmediatePropagation()}}
35
- @focus=${()=>{this.onFocus(),this.isMobileSafari&&this.showCalendar()}}
36
- @blur=${t=>{var i,s;if(t.target.value){this.manageValidity(t.target);const a=g.fromISOToDate(t.target.value);a&&this._value[0]!==t.target.value&&this._value[1]&&(this.clearInputValue(),(s=(i=this.calRef)==null?void 0:i.value)==null||s.handleDateSelect(a))}else this._value[0]&&this.clearInputValue()}}
37
- @change=${t=>{t.stopImmediatePropagation()}}
38
- ${r.n(this.inputRef)}
39
- />
40
- <div class="${$.e(e)}" id="${this.id}-to-label">
41
- ${this.strings.generic.to}
42
- </div>
43
- ${this.showRangeLabels?n.E:n.x` <div class="pkt-input-separator">–</div> `}
44
- <input
45
- class=${$.e(this.inputClasses)}
46
- .type=${this.inputType}
47
- id="${this.id}-to"
48
- aria-labelledby="${this.id}-to-label"
49
- .value=${this._value[1]??""}
50
- min=${k.o(this.min)}
51
- max=${k.o(this.max)}
52
- ?disabled=${this.disabled}
53
- @click=${t=>{t.preventDefault(),this.showCalendar()}}
54
- @keydown=${t=>{var i;(t.key===","||t.key==="Enter")&&((i=this.inputRefTo.value)==null||i.blur()),(t.key==="Space"||t.key===" ")&&(t.preventDefault(),this.toggleCalendar(t))}}
55
- @input=${t=>{this.onInput(),t.stopImmediatePropagation()}}
56
- @focus=${()=>{this.onFocus(),this.isMobileSafari&&this.showCalendar()}}
57
- @blur=${t=>{var i,s,a;if((i=this.calRef.value)!=null&&i.contains(t.relatedTarget)||this.onBlur(),t.target.value){this.manageValidity(t.target);const l=t.target.value;this.min&&this.min>l?this.internals.setValidity({rangeUnderflow:!0},this.strings.forms.messages.rangeUnderflow,t.target):this.max&&this.max<l&&this.internals.setValidity({rangeOverflow:!0},this.strings.forms.messages.rangeOverflow,t.target);const c=g.fromISOToDate(t.target.value);c&&this._value[1]!==g.formatISODate(c)&&((a=(s=this.calRef)==null?void 0:s.value)==null||a.handleDateSelect(c))}}}
58
- @change=${t=>{t.stopImmediatePropagation()}}
59
- ${r.n(this.inputRefTo)}
60
- />
61
- `}renderMultipleInput(){return n.x`
62
- <input
63
- class=${$.e(this.inputClasses)}
64
- .type=${this.inputType}
65
- id="${this.id}-input"
66
- min=${k.o(this.min)}
67
- max=${k.o(this.max)}
68
- ?disabled=${this.disabled||this.maxlength&&this._value.length>=this.maxlength}
69
- @click=${e=>{e.preventDefault(),this.showCalendar()}}
70
- @blur=${e=>{var t;(t=this.calRef.value)!=null&&t.contains(e.relatedTarget)||this.onBlur(),this.addToSelected(e)}}
71
- @input=${e=>{this.onInput(),e.stopImmediatePropagation()}}
72
- @focus=${()=>{this.onFocus(),this.isMobileSafari&&this.showCalendar()}}
73
- @keydown=${e=>{(e.key===","||e.key==="Enter")&&(e.preventDefault(),this.addToSelected(e)),(e.key==="Space"||e.key===" ")&&(e.preventDefault(),this.toggleCalendar(e))}}
74
- @change=${e=>{e.stopImmediatePropagation()}}
75
- ${r.n(this.inputRef)}
76
- />
77
- `}renderTags(){return n.x`
78
- <div class="pkt-datepicker__tags" aria-live="polite">
79
- ${this._value[0]?_(this._value??[],e=>e,e=>n.x`
80
- <pkt-tag
81
- .id="${this.id+e+"-tag"}"
82
- closeTag
83
- ariaLabel="${this.strings.calendar.deleteDate} ${g.fromISOtoLocal(e,this.dateformat)}"
84
- @close=${()=>{var t;return(t=this.calRef.value)==null?void 0:t.handleDateSelect(g.fromISOToDate(e))}}
85
- ><time datetime="${e}">${g.fromISOtoLocal(e,this.dateformat)}</time></pkt-tag
86
- >
87
- `):n.E}
88
- </div>
89
- `}renderCalendar(){return n.x`<div
90
- class="pkt-calendar-popup pkt-${this.calendarOpen?"show":"hide"}"
91
- @focusout=${e=>{this.calendarOpen&&this.handleFocusOut(e)}}
92
- id="${this.id}-popup"
93
- ${r.n(this.popupRef)}
94
- >
95
- <pkt-calendar
96
- id="${this.id}-calendar"
97
- ?multiple=${this.multiple}
98
- ?range=${this.range}
99
- ?weeknumbers=${this.weeknumbers}
100
- ?withcontrols=${this.withcontrols}
101
- .maxMultiple=${this.maxlength}
102
- .selected=${this._value}
103
- .earliest=${this.min}
104
- .latest=${this.max}
105
- .excludedates=${Array.isArray(this.excludedates)?this.excludedates:this.excludedates.split(",")}
106
- .excludeweekdays=${this.excludeweekdays}
107
- .currentmonth=${this.currentmonth?g.newDate(this.currentmonth):null}
108
- @date-selected=${e=>{this.value=!this.multiple&&!this.range?e.detail[0]:e.detail,this._value=e.detail,this.inputRef.value&&(this.range&&this.inputRefTo.value?(this.inputRef.value.value=this._value[0]??"",this.inputRefTo.value.value=this._value[1]??""):this.multiple||(this.inputRef.value.value=this._value.length?this._value[0]:""))}}
109
- @close=${()=>{this.onBlur(),this.hideCalendar()}}
110
- ${r.n(this.calRef)}
111
- ></pkt-calendar>
112
- </div>`}render(){return this.inputClasses={"pkt-input":!0,"pkt-datepicker__input":!0,"pkt-input--fullwidth":this.fullwidth,"pkt-datepicker--hasrangelabels":this.showRangeLabels,"pkt-datepicker--multiple":this.multiple,"pkt-datepicker--range":this.range},this.buttonClasses={"pkt-input-icon":!0,"pkt-btn":!0,"pkt-btn--icon-only":!0,"pkt-btn--tertiary":!0},n.x`
113
- <pkt-input-wrapper
114
- label="${this.label}"
115
- forId="${this.id}-input"
116
- ?counter=${this.multiple&&!!this.maxlength}
117
- .counterCurrent=${this.value?this._value.length:0}
118
- .counterMaxLength=${this.maxlength}
119
- ?disabled=${this.disabled}
120
- ?hasError=${this.hasError}
121
- ?required=${this.required}
122
- ?optionalTag=${this.optionalTag}
123
- ?requiredTag=${this.requiredTag}
124
- ?useWrapper=${this.useWrapper}
125
- .optionalText=${this.optionalText}
126
- .requiredText=${this.requiredText}
127
- .errorMessage=${this.errorMessage}
128
- .helptext=${this.helptext}
129
- .helptextDropdown=${this.helptextDropdown}
130
- .helptextDropdownButton=${this.helptextDropdownButton}
131
- .ariaDescribedBy=${this.ariaDescribedBy}
132
- class="pkt-datepicker"
133
- >
134
- <div class="pkt-contents" ${r.n(this.helptextSlot)} name="helptext" slot="helptext"></div>
135
- ${this.multiple?this.renderTags():n.E}
136
- <div
137
- class="pkt-datepicker__inputs ${this.range&&this.showRangeLabels?"pkt-input__range-inputs":""}"
138
- >
139
- <div class="pkt-input__container">
140
- ${this.range?this.renderRangeInput():this.multiple?this.renderMultipleInput():this.renderInput()}
141
- <button
142
- class="${$.e(this.buttonClasses)}"
143
- type="button"
144
- @click=${this.toggleCalendar}
145
- ?disabled=${this.disabled}
146
- ${r.n(this.btnRef)}
147
- >
148
- <pkt-icon name="calendar"></pkt-icon>
149
- <span class="pkt-btn__text">${this.strings.calendar.buttonAltText}</span>
150
- </button>
151
- </div>
152
- </div>
153
- </pkt-input-wrapper>
154
- ${this.renderCalendar()}
155
- `}handleCalendarPosition(){var e;if(this.popupRef.value&&this.inputRef.value){const t=this.multiple&&!!this.maxlength,i=((e=this.inputRef.value.parentElement)==null?void 0:e.getBoundingClientRect())||this.inputRef.value.getBoundingClientRect(),s=t?i.height+30:i.height,a=this.popupRef.value.getBoundingClientRect().height;let l=t?"calc(100% - 30px)":"100%";i&&i.top+a>window.innerHeight&&i.top-a>0&&(l=`calc(100% - ${s}px - ${a}px)`),this.popupRef.value.style.top=l}}handleFocusOut(e){this.contains(e.target)||(this.onBlur(),this.hideCalendar())}async showCalendar(){var e;this.calendarOpen=!0,await T(20),this.handleCalendarPosition(),this.isMobileSafari&&((e=this.calRef.value)==null||e.focusOnCurrentDate())}hideCalendar(){this.calendarOpen=!1}async toggleCalendar(e){e.preventDefault(),this.calendarOpen?this.hideCalendar():this.showCalendar()}};p([n.n({type:String,reflect:!0})],exports.PktDatepicker.prototype,"value",2);p([n.n({type:Array})],exports.PktDatepicker.prototype,"_value",2);p([n.n({type:String,reflect:!0})],exports.PktDatepicker.prototype,"label",2);p([n.n({type:String})],exports.PktDatepicker.prototype,"dateformat",2);p([n.n({type:Boolean,reflect:!0})],exports.PktDatepicker.prototype,"multiple",2);p([n.n({type:Number,reflect:!0})],exports.PktDatepicker.prototype,"maxlength",2);p([n.n({type:Boolean,reflect:!0})],exports.PktDatepicker.prototype,"range",2);p([n.n({type:Boolean})],exports.PktDatepicker.prototype,"showRangeLabels",2);p([n.n({type:String,reflect:!0})],exports.PktDatepicker.prototype,"min",2);p([n.n({type:String,reflect:!0})],exports.PktDatepicker.prototype,"max",2);p([n.n({type:Boolean})],exports.PktDatepicker.prototype,"weeknumbers",2);p([n.n({type:Boolean,reflect:!0})],exports.PktDatepicker.prototype,"withcontrols",2);p([n.n({converter:g.converters.csvToArray})],exports.PktDatepicker.prototype,"excludedates",2);p([n.n({converter:g.converters.csvToArray})],exports.PktDatepicker.prototype,"excludeweekdays",2);p([n.n({type:String})],exports.PktDatepicker.prototype,"currentmonth",2);p([n.n({type:Boolean,reflect:!0})],exports.PktDatepicker.prototype,"calendarOpen",2);p([n.n({type:String})],exports.PktDatepicker.prototype,"timezone",2);p([S.r()],exports.PktDatepicker.prototype,"inputClasses",2);p([S.r()],exports.PktDatepicker.prototype,"buttonClasses",2);exports.PktDatepicker=p([n.t("pkt-datepicker")],exports.PktDatepicker);
@@ -1,5 +0,0 @@
1
- "use strict";/**
2
- * @license
3
- * Copyright 2017 Google LLC
4
- * SPDX-License-Identifier: BSD-3-Clause
5
- */const r={ATTRIBUTE:1,CHILD:2,PROPERTY:3,BOOLEAN_ATTRIBUTE:4,EVENT:5,ELEMENT:6},T=i=>(...t)=>({_$litDirective$:i,values:t});class _{constructor(t){}get _$AU(){return this._$AM._$AU}_$AT(t,e,s){this._$Ct=t,this._$AM=e,this._$Ci=s}_$AS(t,e){return this.update(t,e)}update(t,e){return this.render(...e)}}exports.e=T;exports.i=_;exports.t=r;