@oslokommune/punkt-elements 16.7.1 → 16.7.3

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 (193) hide show
  1. package/CHANGELOG.md +17 -0
  2. package/dist/accordionitem-_9AiCIvd.cjs +34 -0
  3. package/dist/{accordionitem-ZlaXvjt5.js → accordionitem-dCfSrxh5.js} +57 -55
  4. package/dist/alert-BtOk8yRH.cjs +33 -0
  5. package/dist/{alert-BuAXrnKl.js → alert-DlY2_grU.js} +48 -46
  6. package/dist/backlink-Ce5Vldop.js +49 -0
  7. package/dist/backlink-y3dwjKPC.cjs +13 -0
  8. package/dist/button-B_TXwNzt.cjs +27 -0
  9. package/dist/{button-DEyvt1LI.js → button-BiY-wlKF.js} +79 -77
  10. package/dist/calendar-B2pji2zn.cjs +90 -0
  11. package/dist/{calendar-S63oreVW.js → calendar-DhjQDC4C.js} +689 -687
  12. package/dist/card-BwMNB5Bb.cjs +87 -0
  13. package/dist/{card-DDiLfuO4.js → card-CGlmcMSR.js} +99 -97
  14. package/dist/checkbox-BsJZYA26.js +147 -0
  15. package/dist/checkbox-CTY8f_qn.cjs +31 -0
  16. package/dist/{combobox-BmxSecfE.js → combobox-DSB5WOxg.js} +223 -226
  17. package/dist/{combobox-Hb2V-fPX.cjs → combobox-DbICIgKG.cjs} +4 -4
  18. package/dist/consent-DkOQpbsg.cjs +11 -0
  19. package/dist/{consent-iXyx5v6J.js → consent-SNWV_mMU.js} +48 -46
  20. package/dist/datepicker-BEWl9iz3.cjs +273 -0
  21. package/dist/{datepicker-CZl7b8Na.js → datepicker-euHyzXnb.js} +341 -329
  22. package/dist/{heading-CKt7cVn7.js → heading-D2tVS6lS.js} +30 -28
  23. package/dist/heading-DrzbgDb6.cjs +1 -0
  24. package/dist/helptext-BKtU4mas.js +82 -0
  25. package/dist/helptext-DcRC7wW2.cjs +24 -0
  26. package/dist/icon-CxQcIa5F.js +105 -0
  27. package/dist/icon-q81vqPK_.cjs +9 -0
  28. package/dist/input-wrapper-Bs4CRNst.js +181 -0
  29. package/dist/input-wrapper-Bv9aqqVq.cjs +54 -0
  30. package/dist/link-C0rl-86s.cjs +7 -0
  31. package/dist/link-Cdqgl60z.js +55 -0
  32. package/dist/linkcard-Dimu7Rlx.cjs +13 -0
  33. package/dist/linkcard-Lbq_UhjZ.js +56 -0
  34. package/dist/{listbox-BQKDZvZn.js → listbox-Bia4_tvN.js} +131 -129
  35. package/dist/listbox-La2GZQei.cjs +106 -0
  36. package/dist/loader-D1ugDXGV.cjs +16 -0
  37. package/dist/{loader-Ci3CHU8k.js → loader-DyN6RGC5.js} +51 -49
  38. package/dist/messagebox-BGMVm2t9.js +71 -0
  39. package/dist/messagebox-M0yIgCz9.cjs +13 -0
  40. package/dist/modal-CMO1RtIi.cjs +36 -0
  41. package/dist/{modal-DzGe1g8Z.js → modal-DjPQDE-Z.js} +53 -51
  42. package/dist/pkt-accordion.cjs +1 -1
  43. package/dist/pkt-accordion.js +2 -2
  44. package/dist/pkt-alert.cjs +1 -1
  45. package/dist/pkt-alert.js +3 -4
  46. package/dist/pkt-backlink.cjs +1 -1
  47. package/dist/pkt-backlink.js +2 -3
  48. package/dist/pkt-breadcrumbs.cjs +11 -11
  49. package/dist/pkt-breadcrumbs.js +30 -28
  50. package/dist/pkt-button.cjs +1 -1
  51. package/dist/pkt-button.js +3 -4
  52. package/dist/pkt-calendar.cjs +1 -1
  53. package/dist/pkt-calendar.js +2 -3
  54. package/dist/pkt-card.cjs +1 -1
  55. package/dist/pkt-card.js +2 -3
  56. package/dist/pkt-checkbox.cjs +1 -1
  57. package/dist/pkt-checkbox.js +3 -4
  58. package/dist/pkt-combobox.cjs +1 -1
  59. package/dist/pkt-combobox.js +3 -4
  60. package/dist/pkt-consent.cjs +1 -1
  61. package/dist/pkt-consent.js +2 -3
  62. package/dist/pkt-datepicker.cjs +1 -1
  63. package/dist/pkt-datepicker.js +7 -8
  64. package/dist/pkt-header.cjs +35 -35
  65. package/dist/pkt-header.js +224 -218
  66. package/dist/pkt-heading.cjs +1 -1
  67. package/dist/pkt-heading.js +3 -4
  68. package/dist/pkt-helptext.cjs +1 -1
  69. package/dist/pkt-helptext.js +3 -4
  70. package/dist/pkt-icon.cjs +1 -1
  71. package/dist/pkt-icon.js +3 -4
  72. package/dist/pkt-index.cjs +1 -1
  73. package/dist/pkt-index.js +26 -26
  74. package/dist/pkt-input-wrapper.cjs +1 -1
  75. package/dist/pkt-input-wrapper.js +2 -3
  76. package/dist/pkt-link.cjs +1 -1
  77. package/dist/pkt-link.js +2 -3
  78. package/dist/pkt-linkcard.cjs +1 -1
  79. package/dist/pkt-linkcard.js +3 -4
  80. package/dist/pkt-listbox.cjs +1 -1
  81. package/dist/pkt-listbox.js +3 -4
  82. package/dist/pkt-loader.cjs +1 -1
  83. package/dist/pkt-loader.js +3 -4
  84. package/dist/pkt-messagebox.cjs +1 -1
  85. package/dist/pkt-messagebox.js +3 -4
  86. package/dist/pkt-modal.cjs +1 -1
  87. package/dist/pkt-modal.js +3 -4
  88. package/dist/pkt-progressbar.cjs +1 -1
  89. package/dist/pkt-progressbar.js +2 -3
  90. package/dist/pkt-radiobutton.cjs +1 -1
  91. package/dist/pkt-radiobutton.js +3 -4
  92. package/dist/pkt-select.cjs +1 -1
  93. package/dist/pkt-select.js +3 -4
  94. package/dist/pkt-tabs.cjs +1 -1
  95. package/dist/pkt-tabs.js +2 -2
  96. package/dist/pkt-tag.cjs +1 -1
  97. package/dist/pkt-tag.js +3 -4
  98. package/dist/pkt-textarea.cjs +1 -1
  99. package/dist/pkt-textarea.js +3 -4
  100. package/dist/pkt-textinput.cjs +1 -1
  101. package/dist/pkt-textinput.js +3 -4
  102. package/dist/pkt-timepicker.cjs +16 -16
  103. package/dist/pkt-timepicker.js +91 -89
  104. package/dist/progressbar-BqlMzkM_.cjs +21 -0
  105. package/dist/{progressbar-By7e0lEI.js → progressbar-sbHDFC12.js} +88 -88
  106. package/dist/radiobutton-5ZqVVtTT.cjs +31 -0
  107. package/dist/{radiobutton-6frNG9J_.js → radiobutton-D8Ai8ETa.js} +44 -42
  108. package/dist/select-De-n8on9.js +230 -0
  109. package/dist/select-dTWibR6_.cjs +49 -0
  110. package/dist/tabitem-B9-jeV97.js +334 -0
  111. package/dist/tabitem-BnhzqfW3.cjs +65 -0
  112. package/dist/tag-CbwO8yvD.cjs +27 -0
  113. package/dist/{tag-BuCpqaks.js → tag-D4FI5t3y.js} +42 -40
  114. package/dist/textarea-BmLaKzsc.cjs +50 -0
  115. package/dist/{textarea-Bzuymclz.js → textarea-CMiSJaYL.js} +62 -60
  116. package/dist/textinput-em9y4yrL.cjs +70 -0
  117. package/dist/{textinput-9lHjs4ce.js → textinput-r8udK0IX.js} +57 -55
  118. package/package.json +2 -2
  119. package/src/components/accordion/accordion.ts +6 -1
  120. package/src/components/accordion/accordionitem.ts +6 -1
  121. package/src/components/alert/alert.ts +6 -1
  122. package/src/components/backlink/backlink.ts +6 -1
  123. package/src/components/breadcrumbs/breadcrumbs.ts +6 -1
  124. package/src/components/button/button.ts +6 -1
  125. package/src/components/calendar/calendar.ts +6 -1
  126. package/src/components/card/card.ts +6 -1
  127. package/src/components/checkbox/checkbox.ts +6 -1
  128. package/src/components/combobox/combobox.ts +6 -1
  129. package/src/components/consent/consent.ts +6 -1
  130. package/src/components/datepicker/date-tags.ts +6 -1
  131. package/src/components/datepicker/datepicker-multiple.ts +6 -1
  132. package/src/components/datepicker/datepicker-popup.ts +6 -1
  133. package/src/components/datepicker/datepicker-range.ts +6 -1
  134. package/src/components/datepicker/datepicker-single.ts +6 -1
  135. package/src/components/datepicker/datepicker.ts +6 -1
  136. package/src/components/header/header-service.ts +6 -1
  137. package/src/components/header/header-user-menu.ts +6 -1
  138. package/src/components/header/header.ts +6 -1
  139. package/src/components/heading/heading.ts +6 -1
  140. package/src/components/helptext/helptext.ts +6 -1
  141. package/src/components/icon/icon.ts +6 -1
  142. package/src/components/input-wrapper/input-wrapper.ts +6 -1
  143. package/src/components/link/link.ts +6 -1
  144. package/src/components/linkcard/linkcard.ts +6 -1
  145. package/src/components/listbox/listbox.ts +6 -1
  146. package/src/components/loader/loader.ts +6 -1
  147. package/src/components/messagebox/messagebox.ts +6 -1
  148. package/src/components/modal/modal.ts +6 -1
  149. package/src/components/progressbar/progressbar.ts +6 -1
  150. package/src/components/radiobutton/radiobutton.ts +6 -1
  151. package/src/components/select/select.ts +6 -1
  152. package/src/components/tabs/tabitem.ts +6 -1
  153. package/src/components/tabs/tabs.ts +6 -1
  154. package/src/components/tag/tag.ts +6 -1
  155. package/src/components/textarea/textarea.ts +6 -1
  156. package/src/components/textinput/textinput.ts +6 -1
  157. package/src/components/timepicker/timepicker.ts +6 -1
  158. package/dist/accordionitem-D1Agl1bB.cjs +0 -34
  159. package/dist/alert-DFkFNTxh.cjs +0 -33
  160. package/dist/backlink-EiAXUUZP.cjs +0 -13
  161. package/dist/backlink-V4DAt17e.js +0 -47
  162. package/dist/button-DYv5Dg4M.cjs +0 -27
  163. package/dist/calendar-HIE9nxcc.cjs +0 -90
  164. package/dist/card-CyeH6l1c.cjs +0 -87
  165. package/dist/checkbox-BLlwTABj.cjs +0 -31
  166. package/dist/checkbox-ejBUa5qQ.js +0 -145
  167. package/dist/consent-ruWAEVXW.cjs +0 -11
  168. package/dist/datepicker-D2H7U6MS.cjs +0 -273
  169. package/dist/heading-Cvz8m1xL.cjs +0 -1
  170. package/dist/helptext-5Mzp65-F.cjs +0 -24
  171. package/dist/helptext-jIoWRcCF.js +0 -80
  172. package/dist/icon-BlKA8YuW.js +0 -103
  173. package/dist/icon-Bqj9oBbl.cjs +0 -9
  174. package/dist/input-wrapper-B0MkQ0IZ.cjs +0 -54
  175. package/dist/input-wrapper-B2JpK016.js +0 -179
  176. package/dist/link-R_lNhViF.cjs +0 -7
  177. package/dist/link-Z_GizclR.js +0 -53
  178. package/dist/linkcard-BlQvdB1a.js +0 -54
  179. package/dist/linkcard-C7HbSLlX.cjs +0 -13
  180. package/dist/listbox-CGgV9MAe.cjs +0 -106
  181. package/dist/loader-e2gs_1xz.cjs +0 -16
  182. package/dist/messagebox-Bf-XMlvW.js +0 -69
  183. package/dist/messagebox-D67w71VX.cjs +0 -13
  184. package/dist/modal-CyvEkbfQ.cjs +0 -36
  185. package/dist/progressbar-DsJ2B9Vm.cjs +0 -21
  186. package/dist/radiobutton-Bv-BZ1Hw.cjs +0 -31
  187. package/dist/select-CXZt1nHS.js +0 -228
  188. package/dist/select-WFhS4Vfp.cjs +0 -49
  189. package/dist/tabitem-CB8wkKmv.js +0 -332
  190. package/dist/tabitem-DZpspU4Q.cjs +0 -65
  191. package/dist/tag-X6xdjR0N.cjs +0 -27
  192. package/dist/textarea-DoeHJ7HR.cjs +0 -50
  193. package/dist/textinput-BNsLd26i.cjs +0 -70
@@ -1,106 +0,0 @@
1
- "use strict";const n=require("./element-gR_VtSiD.cjs"),g=require("./state-Dg-53wQ8.cjs"),p=require("./if-defined-BOW3ODSj.cjs"),m=require("./repeat-Cfq8CDlf.cjs"),f=require("./class-map-CsENJXf1.cjs"),y=require("./utils-byXsEz1u.cjs"),v=(s,e)=>e&&(s.find(t=>t.value===e)||s.find(t=>t.label===e))||null,O=(s,e)=>{if(!e)return-1;const t=s.findIndex(i=>i.value===e);return t>=0?t:s.findIndex(i=>i.label===e)},_=(s,e)=>{if(!e)return[...s];const t=e.toLowerCase();return s.filter(i=>(i.fulltext||i.value+(i.label||"")+(i.prefix||"")).toLowerCase().includes(t))},w=s=>s.value+(s.label||"")+(s.prefix||""),$=(s,e)=>e!==null&&s>=e,L=(s,e)=>{if(!e)return{filtered:[...s],suggestion:null};const t=e.toLowerCase(),i=s.filter(o=>{var l;return(l=o.fulltext)==null?void 0:l.toLowerCase().includes(t)}),a=i.find(o=>{var l;return!o.selected&&((l=o.label)==null?void 0:l.toLowerCase().startsWith(t))})||null;return{filtered:i,suggestion:a}},S=(s,e,t,i)=>{if(!s.trim())return{addValueText:null,userInfoMessage:""};const a=s.trim().toLowerCase(),o=e.find(u=>u.toLowerCase()===a),l=t.filter(u=>{var d;return((d=u.label)==null?void 0:d.toLowerCase().includes(a))||u.value.toLowerCase().includes(a)}),k=l.find(u=>{var d;return((d=u.label)==null?void 0:d.toLowerCase())===a||u.value.toLowerCase()===a});return(l.length===0||!k)&&i?{addValueText:s,userInfoMessage:""}:l.length===0&&!i?{addValueText:null,userInfoMessage:"Ingen treff i søket"}:o?{addValueText:null,userInfoMessage:"Verdien er allerede valgt"}:{addValueText:null,userInfoMessage:""}},I=s=>/^[\p{L} ]$/u.test(s),C=(s=500)=>{let e="",t;return{append:o=>(e+=o.toLowerCase(),t!==void 0&&clearTimeout(t),t=setTimeout(()=>{e=""},s),e),reset:()=>{e="",t!==void 0&&(clearTimeout(t),t=void 0)},getBuffer:()=>e}},M=(s,e)=>{const t=e.toLowerCase();return s.findIndex(i=>{var a;return(a=i.textContent)==null?void 0:a.trim().toLowerCase().startsWith(t)})},c=s=>{s.scrollIntoView({block:"nearest"}),window.setTimeout(()=>s.focus(),0)},h=s=>Array.from(s.querySelectorAll('[role="option"]:not([data-disabled])')||[]),P=s=>{const e=s.nextElementSibling;e&&c(e)},E=(s,e,t)=>{const i=s.previousElementSibling;if(s.dataset.index==="0"&&t){const a=e.querySelector('[role="searchbox"]');a&&c(a)}else i&&c(i)},b=s=>{const e=h(s);e[0]&&c(e[0])},x=s=>{const e=h(s),t=e[e.length-1];t&&c(t)},T=(s,e)=>{if(e.disabled)return;const t=h(s);if(e.allowUserInput&&e.customUserInput){const a=s.querySelector('[data-type="new-option"]');if(a){c(a);return}}const i=t.find(a=>a.dataset.selected==="true");if(i){c(i);return}if(e.includeSearch&&!(document.activeElement instanceof HTMLInputElement)){const a=s.querySelector('[role="searchbox"]');if(a){window.setTimeout(()=>a.focus(),0);return}}t[0]&&c(t[0])};var U=Object.defineProperty,A=Object.getOwnPropertyDescriptor,r=(s,e,t,i)=>{for(var a=i>1?void 0:i?A(e,t):e,o=s.length-1,l;o>=0;o--)(l=s[o])&&(a=(i?l(e,t,a):l(a))||a);return i&&a&&U(e,t,a),a};exports.PktListbox=class extends n.PktElement{constructor(){super(...arguments),this.id=y.uuidish(),this.label=null,this.options=[],this.isOpen=!1,this.disabled=!1,this.includeSearch=!1,this.isMultiSelect=!1,this.allowUserInput=!1,this.maxIsReached=!1,this.customUserInput=null,this.searchPlaceholder=null,this.searchValue=null,this.maxLength=0,this.userMessage=null,this._selectedOptions=0,this.typeahead=C(),this._filteredOptions=[]}connectedCallback(){super.connectedCallback(),this.includeSearch&&!this.searchValue&&(this.searchValue=""),this.options.length>0&&this.filterOptions(),this.setAttribute("tabindex","-1"),this.addEventListener("focus",this.focusFirstOrSelectedOption)}disconnectedCallback(){super.disconnectedCallback(),this.typeahead.reset()}updated(e){(e.has("options")||e.has("searchValue"))&&this.filterOptions(),super.updated(e)}attributeChangedCallback(e,t,i){(e==="options"||e==="search-value")&&this.filterOptions(),super.attributeChangedCallback(e,t,i)}get _hasOptions(){return this._filteredOptions.length>0||this.options.length>0}render(){return n.b`
2
- <div
3
- class=${f.e({"pkt-listbox":!0,"pkt-listbox__open":this.isOpen,"pkt-txt-16-light":!0})}
4
- role=${p.o(this._hasOptions?"listbox":void 0)}
5
- aria-multiselectable=${p.o(this._hasOptions&&this.isMultiSelect?"true":void 0)}
6
- aria-label=${p.o(this._hasOptions?this.label??void 0:void 0)}
7
- >
8
- <div class="pkt-listbox__banners">
9
- ${this.renderSearch()} ${this.renderMaximumReachedBanner()} ${this.renderUserMessage()}
10
- ${this.renderEmptyMessage()} ${this.renderNewOptionBanner()}
11
- </div>
12
- <ul class="pkt-listbox__options" role="presentation">
13
- ${this.renderList()}
14
- </ul>
15
- </div>
16
- <div aria-live="polite" class="pkt-visually-hidden">${this.userMessage}</div>
17
- `}renderCheckboxOrCheckIcon(e,t){return this.isMultiSelect?n.b`
18
- <input
19
- class="pkt-input-check__input-checkbox"
20
- type="checkbox"
21
- role="presentation"
22
- tabindex="-1"
23
- value=${e.value}
24
- @change=${i=>{i.stopPropagation()}}
25
- .checked=${e.selected}
26
- aria-labelledby=${this.id+"-option-label-"+t}
27
- ?disabled=${this.disabled||e.disabled||this.maxIsReached&&!e.selected}
28
- />
29
- `:e.selected?n.b`<pkt-icon name="check-big"></pkt-icon>`:n.A}renderEmptyMessage(){return this.options.length>0||this._filteredOptions.length>0||this.userMessage?n.A:n.b`<div class="pkt-listbox__banner pkt-listbox__banner--empty">
30
- <pkt-icon
31
- class="pkt-listbox__banner-icon"
32
- name="exclamation-mark-circle"
33
- size="large"
34
- ></pkt-icon>
35
- Tom liste
36
- </div>`}renderList(){return n.b`
37
- ${m.c(this._filteredOptions,e=>e.value,(e,t)=>n.b`
38
- <li
39
- @click=${()=>{this.toggleOption(e)}}
40
- aria-selected=${e.selected?"true":"false"}
41
- @keydown=${this.handleOptionKeydown}
42
- class=${f.e({"pkt-listbox__option":!0,"pkt-listbox__option--selected":!!(!this.isMultiSelect&&e.selected),"pkt-listbox__option--checkBox":this.isMultiSelect})}
43
- tabindex="${this.disabled||e.disabled?"-1":"0"}"
44
- data-index=${t}
45
- data-value=${e.value}
46
- data-selected=${e.selected?"true":"false"}
47
- ?data-disabled=${this.disabled||e.disabled||this.maxIsReached&&!e.selected}
48
- aria-disabled=${this.disabled||e.disabled||this.maxIsReached&&!e.selected?"true":"false"}
49
- role="option"
50
- id=${`${this.id}-${t}`}
51
- >
52
- ${this.renderCheckboxOrCheckIcon(e,t)}
53
- <span class="pkt-listbox__option-label" id=${this.id+"-option-label-"+t}>
54
- ${e.prefix?n.b`<span class="pkt-listbox__option-prefix">${e.prefix}</span>`:n.A}
55
- ${e.label||e.value}
56
- </span>
57
- ${e.description?n.b`<span class="pkt-listbox__option-description pkt-txt-14-light"
58
- >${e.description}</span
59
- >`:n.A}
60
- </li>
61
- `)}
62
- `}renderNewOptionBanner(){return this.allowUserInput&&this.customUserInput?n.b`
63
- <div
64
- class="pkt-listbox__banner pkt-listbox__banner--new-option pkt-listbox__option"
65
- data-type="new-option"
66
- data-value=${this.customUserInput}
67
- data-selected="false"
68
- tabindex="0"
69
- @click=${()=>this.toggleOption({value:this.customUserInput||""})}
70
- @keydown=${this.handleOptionKeydown}
71
- >
72
- <pkt-icon class="pkt-listbox__banner-icon" name="plus-sign" size="large"></pkt-icon>
73
- Legg til "${this.customUserInput}"
74
- </div>
75
- `:n.A}renderMaximumReachedBanner(){return this._selectedOptions=this.options.filter(e=>e.selected).length,this.isMultiSelect&&this._selectedOptions>0&&this.maxLength>0?n.b`
76
- <div class="pkt-listbox__banner pkt-listbox__banner--maximum-reached">
77
- ${this._selectedOptions} av maks ${this.maxLength} mulige er valgt.
78
- </div>
79
- `:n.A}renderUserMessage(){return this.userMessage?n.b`<div class="pkt-listbox__banner pkt-listbox__banner--user-message">
80
- <pkt-icon
81
- class="pkt-listbox__banner-icon"
82
- name="exclamation-mark-circle"
83
- size="large"
84
- ></pkt-icon>
85
- ${this.userMessage}
86
- </div>`:n.A}renderSearch(){return this.includeSearch?n.b`
87
- <div class="pkt-listbox__search">
88
- <span class="pkt-listbox__search-icon">
89
- <pkt-icon name="magnifying-glass-small" size="large"></pkt-icon>
90
- </span>
91
- <input
92
- class="pkt-txt-16-light"
93
- type="text"
94
- aria-label="Søk i listen"
95
- form=""
96
- placeholder=${this.searchPlaceholder||n.strings.forms.search.placeholder}
97
- @input=${this.handleSearchInput}
98
- @keydown=${this.handleSearchKeydown}
99
- .value=${this.searchValue}
100
- data-type="searchbox"
101
- ?disabled=${this.disabled}
102
- ?readonly=${this.disabled}
103
- role="searchbox"
104
- />
105
- </div>
106
- `:n.A}handleSearchInput(e){this.searchValue=e.target.value,this.dispatchEvent(new CustomEvent("search",{detail:this.searchValue,bubbles:!1}))}handleSearchKeydown(e){switch(e.key){case"Enter":e.preventDefault();break;case"ArrowUp":case"Escape":this.closeOptions(),e.preventDefault();break;case"ArrowDown":this.focusFirstOrSelectedOption();break;case"Tab":this.tabClose();break}}handleOptionKeydown(e){const t=e.currentTarget,i=t.dataset.value,a=t.dataset.type,o=t.dataset.selected==="true";if(!(!h(this).length&&(!this.customUserInput||!this.allowUserInput&&this.customUserInput)&&a!=="new-option"&&a!=="searchbox"))switch(e.key){case" ":case"Enter":this.toggleOption(t),e.preventDefault();break;case"Backspace":i&&(o?this.toggleOption(t):this.closeOptions()),e.preventDefault();break;case"Escape":this.closeOptions(),e.preventDefault();break;case"Tab":this.tabClose();break;case"ArrowDown":e.altKey?x(this):a==="searchbox"||a==="new-option"?b(this):P(t),e.preventDefault();break;case"ArrowUp":if(e.altKey)b(this);else if(t.dataset.index==="0"&&this.includeSearch){const l=this.querySelector('[role="searchbox"]');l&&l.focus()}else if(t.dataset.index==="0"&&this.customUserInput){const l=this.querySelector('[data-type="new-option"]');l&&l.focus()}else E(t,this,this.includeSearch);e.preventDefault();break;case"Home":b(this),e.preventDefault();break;case"End":x(this),e.preventDefault();break;default:(e.metaKey||e.ctrlKey)&&e.key==="a"&&(this.selectAll(),e.preventDefault()),I(e.key)&&(this.handleTypeAhead(e.key),e.preventDefault());break}}focusFirstOrSelectedOption(){T(this,{disabled:this.disabled,allowUserInput:this.allowUserInput,customUserInput:this.customUserInput,includeSearch:this.includeSearch})}toggleOption(e){const t=e instanceof HTMLElement?e.dataset.disabled:e.disabled;if(this.disabled||t)return;const i=e instanceof HTMLElement?e.dataset.value:e.value;this.dispatchEvent(new CustomEvent("option-toggle",{detail:i,bubbles:!1}))}selectAll(){this.dispatchEvent(new CustomEvent("select-all",{bubbles:!1}))}closeOptions(){this.dispatchEvent(new CustomEvent("close-options",{bubbles:!1}))}tabClose(){this.dispatchEvent(new CustomEvent("tab-close",{bubbles:!1}))}filterOptions(){this._filteredOptions=_(this.options,this.searchValue)}handleTypeAhead(e){const t=this.typeahead.append(e),i=h(this),a=M(i,t);a>=0&&c(i[a])}};r([n.n({type:String})],exports.PktListbox.prototype,"id",2);r([n.n({type:String})],exports.PktListbox.prototype,"label",2);r([n.n({type:Array})],exports.PktListbox.prototype,"options",2);r([n.n({type:Boolean,reflect:!0,attribute:"is-open"})],exports.PktListbox.prototype,"isOpen",2);r([n.n({type:Boolean})],exports.PktListbox.prototype,"disabled",2);r([n.n({type:Boolean,attribute:"include-search"})],exports.PktListbox.prototype,"includeSearch",2);r([n.n({type:Boolean,attribute:"is-multi-select"})],exports.PktListbox.prototype,"isMultiSelect",2);r([n.n({type:Boolean,attribute:"allow-user-input"})],exports.PktListbox.prototype,"allowUserInput",2);r([n.n({type:Boolean,attribute:"max-is-reached"})],exports.PktListbox.prototype,"maxIsReached",2);r([n.n({type:String,attribute:"custom-user-input"})],exports.PktListbox.prototype,"customUserInput",2);r([n.n({type:String,attribute:"search-placeholder"})],exports.PktListbox.prototype,"searchPlaceholder",2);r([n.n({type:String,attribute:"search-value"})],exports.PktListbox.prototype,"searchValue",2);r([n.n({type:Number,attribute:"max-length"})],exports.PktListbox.prototype,"maxLength",2);r([n.n({type:String,attribute:"user-message"})],exports.PktListbox.prototype,"userMessage",2);r([g.r()],exports.PktListbox.prototype,"_filteredOptions",2);exports.PktListbox=r([n.t("pkt-listbox")],exports.PktListbox);exports.buildFulltext=w;exports.findOptionByValue=v;exports.findOptionIndex=O;exports.findTypeaheadMatches=L;exports.getSearchInfoMessage=S;exports.isMaxSelectionReached=$;
@@ -1,16 +0,0 @@
1
- "use strict";const d=require("./element-with-slot-ZX-up7jO.cjs"),p=require("./class-map-CsENJXf1.cjs"),t=require("./element-gR_VtSiD.cjs"),h=require("./state-Dg-53wQ8.cjs");require("./icon-Bqj9oBbl.cjs");var u=Object.defineProperty,c=Object.getOwnPropertyDescriptor,s=(r,e,a,o)=>{for(var i=o>1?void 0:o?c(e,a):e,n=r.length-1,l;n>=0;n--)(l=r[n])&&(i=(o?l(e,a,i):l(i))||i);return o&&i&&u(e,a,i),i};window.pktAnimationPath=window.pktAnimationPath||"https://punkt-cdn.oslo.kommune.no/latest/animations/";exports.PktLoader=class extends d.PktElementWithSlot{constructor(){super(...arguments),this.delay=0,this.inline=!1,this.isLoading=!0,this.message=null,this.size="medium",this.variant="shapes",this.loadingAnimationPath=window.pktAnimationPath,this._shouldDisplayLoader=!1}connectedCallback(){super.connectedCallback(),this._shouldDisplayLoader=this.delay===0,this.delay>0&&this.setupLoader()}updated(e){e.has("delay")&&this.setupLoader()}render(){const e=p.e({"pkt-loader":!0,[`pkt-loader--${this.inline?"inline":"box"}`]:!0,[`pkt-loader--${this.size}`]:!0}),a=p.e({"pkt-contents":!0,"pkt-hide":this.isLoading});return t.b`<div
2
- role="status"
3
- aria-live="polite"
4
- aria-busy=${this.isLoading?"true":"false"}
5
- class=${e}
6
- >
7
- ${this.isLoading&&this._shouldDisplayLoader?t.b`<div class="pkt-loader__spinner">
8
- <pkt-icon
9
- name=${this.getVariant(this.variant)}
10
- path=${this.loadingAnimationPath}
11
- class="pkt-loader__svg pkt-loader__${this.variant}"
12
- ></pkt-icon>
13
- ${this.message&&t.b`<p>${this.message}</p>`}
14
- </div>`:t.A}
15
- <div class=${a}>${d.slotContent(this)}</div>
16
- </div>`}getVariant(e){switch(e){case"blue":return"spinner-blue";case"rainbow":return"spinner";default:return"loader"}}setupLoader(){this.delay>0&&(this._shouldDisplayLoader=!1,setTimeout(()=>{this._shouldDisplayLoader=!0,this.requestUpdate()},this.delay))}};s([t.n({type:Number})],exports.PktLoader.prototype,"delay",2);s([t.n({type:Boolean})],exports.PktLoader.prototype,"inline",2);s([t.n({type:Boolean})],exports.PktLoader.prototype,"isLoading",2);s([t.n({type:String})],exports.PktLoader.prototype,"message",2);s([t.n({type:String})],exports.PktLoader.prototype,"size",2);s([t.n({type:String})],exports.PktLoader.prototype,"variant",2);s([t.n({type:String})],exports.PktLoader.prototype,"loadingAnimationPath",2);s([h.r()],exports.PktLoader.prototype,"_shouldDisplayLoader",2);exports.PktLoader=s([t.t("pkt-loader")],exports.PktLoader);
@@ -1,69 +0,0 @@
1
- import { P as d, s as m } from "./element-with-slot-Dqk6-TRR.js";
2
- import { A as u, b as n, n as p, t as h } from "./element-CPpT3rFQ.js";
3
- import { e as f } from "./class-map-CEnykyO_.js";
4
- import { r as k } from "./state-C_1EOo3D.js";
5
- import "./icon-BlKA8YuW.js";
6
- import { u as _ } from "./classutils-RQs1k6D9.js";
7
- const v = { skin: { default: "beige" }, compact: { default: !1 }, closable: { default: !1 } }, b = {
8
- props: v
9
- };
10
- var g = Object.defineProperty, x = Object.getOwnPropertyDescriptor, o = (t, i, a, l) => {
11
- for (var s = l > 1 ? void 0 : l ? x(i, a) : i, r = t.length - 1, c; r >= 0; r--)
12
- (c = t[r]) && (s = (l ? c(i, a, s) : c(s)) || s);
13
- return l && s && g(i, a, s), s;
14
- };
15
- let e = class extends d {
16
- constructor() {
17
- super(), this.closable = b.props.closable.default, this.compact = b.props.compact.default, this.title = "", this.skin = b.props.skin.default, this._isClosed = !1, this.close = (t) => {
18
- this._isClosed = !0, this.dispatchEvent(new CustomEvent("close", { detail: { origin: t }, bubbles: !0 })), this.dispatchEvent(new CustomEvent("on-close", { detail: { origin: t }, bubbles: !0 }));
19
- }, this._isClosed = !1;
20
- }
21
- // Lifecycle
22
- updated(t) {
23
- super.updated(t), t.has("_isClosed") && _(this, "pkt-hide", this._isClosed);
24
- }
25
- // Render
26
- render() {
27
- const t = {
28
- "pkt-messagebox": !0,
29
- "pkt-messagebox--compact": this.compact,
30
- [`pkt-messagebox--${this.skin}`]: this.skin,
31
- "pkt-messagebox--closable": this.closable,
32
- "pkt-hide": this._isClosed
33
- };
34
- return n`<div class=${f(t)}>
35
- ${this.closable ? n`<div class="pkt-messagebox__close">
36
- <button
37
- @click=${this.close}
38
- class="pkt-btn pkt-btn--tertiary pkt-btn--small pkt-btn--icon-only"
39
- aria-label="Lukk"
40
- >
41
- <pkt-icon name="close" class="pkt-link__icon"></pkt-icon>
42
- </button>
43
- </div>` : u}
44
- ${this.title ? n`<div class="pkt-messagebox__title">${this.title}</div>` : u}
45
- <div class="pkt-messagebox__text">${m(this)}</div>
46
- </div>`;
47
- }
48
- };
49
- o([
50
- p({ type: Boolean, reflect: !0 })
51
- ], e.prototype, "closable", 2);
52
- o([
53
- p({ type: Boolean, reflect: !0 })
54
- ], e.prototype, "compact", 2);
55
- o([
56
- p({ type: String, reflect: !0 })
57
- ], e.prototype, "title", 2);
58
- o([
59
- p({ type: String, reflect: !0 })
60
- ], e.prototype, "skin", 2);
61
- o([
62
- k()
63
- ], e.prototype, "_isClosed", 2);
64
- e = o([
65
- h("pkt-messagebox")
66
- ], e);
67
- export {
68
- e as P
69
- };
@@ -1,13 +0,0 @@
1
- "use strict";const n=require("./element-with-slot-ZX-up7jO.cjs"),e=require("./element-gR_VtSiD.cjs"),b=require("./class-map-CsENJXf1.cjs"),u=require("./state-Dg-53wQ8.cjs");require("./icon-Bqj9oBbl.cjs");const k=require("./classutils-BwNK82ZQ.cjs"),d={skin:{default:"beige"},compact:{default:!1},closable:{default:!1}},r={props:d};var h=Object.defineProperty,g=Object.getOwnPropertyDescriptor,o=(l,t,a,i)=>{for(var s=i>1?void 0:i?g(t,a):t,c=l.length-1,p;c>=0;c--)(p=l[c])&&(s=(i?p(t,a,s):p(s))||s);return i&&s&&h(t,a,s),s};exports.PktMessagebox=class extends n.PktElementWithSlot{constructor(){super(),this.closable=r.props.closable.default,this.compact=r.props.compact.default,this.title="",this.skin=r.props.skin.default,this._isClosed=!1,this.close=t=>{this._isClosed=!0,this.dispatchEvent(new CustomEvent("close",{detail:{origin:t},bubbles:!0})),this.dispatchEvent(new CustomEvent("on-close",{detail:{origin:t},bubbles:!0}))},this._isClosed=!1}updated(t){super.updated(t),t.has("_isClosed")&&k.updateClassAttribute(this,"pkt-hide",this._isClosed)}render(){const t={"pkt-messagebox":!0,"pkt-messagebox--compact":this.compact,[`pkt-messagebox--${this.skin}`]:this.skin,"pkt-messagebox--closable":this.closable,"pkt-hide":this._isClosed};return e.b`<div class=${b.e(t)}>
2
- ${this.closable?e.b`<div class="pkt-messagebox__close">
3
- <button
4
- @click=${this.close}
5
- class="pkt-btn pkt-btn--tertiary pkt-btn--small pkt-btn--icon-only"
6
- aria-label="Lukk"
7
- >
8
- <pkt-icon name="close" class="pkt-link__icon"></pkt-icon>
9
- </button>
10
- </div>`:e.A}
11
- ${this.title?e.b`<div class="pkt-messagebox__title">${this.title}</div>`:e.A}
12
- <div class="pkt-messagebox__text">${n.slotContent(this)}</div>
13
- </div>`}};o([e.n({type:Boolean,reflect:!0})],exports.PktMessagebox.prototype,"closable",2);o([e.n({type:Boolean,reflect:!0})],exports.PktMessagebox.prototype,"compact",2);o([e.n({type:String,reflect:!0})],exports.PktMessagebox.prototype,"title",2);o([e.n({type:String,reflect:!0})],exports.PktMessagebox.prototype,"skin",2);o([u.r()],exports.PktMessagebox.prototype,"_isClosed",2);exports.PktMessagebox=o([e.t("pkt-messagebox")],exports.PktMessagebox);
@@ -1,36 +0,0 @@
1
- "use strict";const d=require("./class-map-CsENJXf1.cjs"),o=require("./element-gR_VtSiD.cjs"),u=require("./state-Dg-53wQ8.cjs"),p=require("./element-with-slot-ZX-up7jO.cjs"),h=require("./ref-CL-Xk9Xm.cjs");require("./icon-Bqj9oBbl.cjs");const k={hideCloseButton:{default:!1},closeOnBackdropClick:{default:!1},size:{default:"medium"}},c={props:k};var m=Object.defineProperty,v=Object.getOwnPropertyDescriptor,n=(r,e,t,i)=>{for(var s=i>1?void 0:i?v(e,t):e,l=r.length-1,a;l>=0;l--)(a=r[l])&&(s=(i?a(e,t,s):a(s))||s);return i&&s&&m(e,t,s),s};exports.PktModal=class extends p.PktElementWithSlot{constructor(){super(),this.open=!1,this.headingText="",this.removePadding=!1,this.hideCloseButton=c.props.hideCloseButton.default,this.closeOnBackdropClick=c.props.closeOnBackdropClick.default,this.closeButtonSkin="blue",this.size=c.props.size.default,this.variant="dialog",this.drawerPosition="right",this.transparentBackdrop=!1,this.dialogRef=h.e(),this._isOpen=!1,this.close=(e,t=!1)=>{var s;if(!this._isOpen)return;this._isOpen=!1,this.open=!1,document.body.classList.remove("pkt-modal--open");const i=document.activeElement;i&&!this.isElementInViewport(i)&&i.scrollIntoView({behavior:"smooth",block:"nearest"}),this.dispatchEvent(new CustomEvent("close",{detail:{origin:e},bubbles:!0,composed:!0})),t||(s=this.dialogRef.value)==null||s.close(),this.requestUpdate()},this.showModal=(e=null)=>{var t;this._isOpen=!0,this.open=!0,(t=this.dialogRef.value)==null||t.showModal(),document.body.classList.add("pkt-modal--open"),this.dispatchEvent(new CustomEvent("showModal",{detail:{origin:e},bubbles:!0,composed:!0})),this.requestUpdate()},this._isOpen=!1}async connectedCallback(){super.connectedCallback(),document.addEventListener("keydown",this.handleKeyDown.bind(this)),document.addEventListener("click",this.handleBackdropClick.bind(this))}disconnectedCallback(){super.disconnectedCallback(),document.removeEventListener("keydown",this.handleKeyDown),document.removeEventListener("click",this.handleBackdropClick)}updated(e){super.updated(e),e.has("open")&&(this.open&&!this._isOpen?this.showModal():!this.open&&this._isOpen&&this.close(new Event("close"),!1))}async firstUpdated(e){super.firstUpdated(e),this.dialogRef.value&&!window.HTMLDialogElement&&!this.dialogRef.value.showModal&&("document"in window&&"createElement"in document&&(await Promise.resolve().then(()=>require("./dialog-polyfill.esm-CPKZe7AL.cjs")).then(i=>i.default)).registerDialog(this.dialogRef.value),this.dialogRef.value.addEventListener("close",()=>{this.close(new Event("close"),!0)}))}handleKeyDown(e){e.key==="Escape"&&this.close(e)}handleBackdropClick(e){var t;this.closeOnBackdropClick&&e.target===((t=this.dialogRef)==null?void 0:t.value)&&this.close(e)}isElementInViewport(e){const t=e.getBoundingClientRect();return t.top>=0&&t.left>=0&&t.bottom<=(window.innerHeight||document.documentElement.clientHeight)&&t.right<=(window.innerWidth||document.documentElement.clientWidth)}render(){const e={"pkt-modal":!0,"pkt-modal--removePadding":this.removePadding??!1,"pkt-modal--noHeadingText":this.headingText===""||this.headingText===void 0,"pkt-modal--noShadow":this.closeButtonSkin==="yellow-filled","pkt-modal--transparentBackdrop":this.transparentBackdrop??!1,[`pkt-modal--${this.size}`]:this.size!==void 0,[`pkt-modal__${this.variant}`]:this.variant!==void 0,[`pkt-modal__drawer--${this.drawerPosition}`]:this.variant==="drawer"},t={"pkt-modal__headingText":!0,"pkt-txt-24":!0},i={"pkt-modal__content":!0,"pkt-txt-18-light":!0},s=this.closeButtonSkin==="blue",l={"pkt-modal__closeButton":!0,[`pkt-modal__closeButton--${this.closeButtonSkin}`]:!0};return o.b`
2
- <dialog
3
- class=${d.e(e)}
4
- ${h.n(this.dialogRef)}
5
- aria-labelledby=${this.headingText?"pkt-modal__headingText":o.A}
6
- aria-describedby="pkt-modal__content"
7
- @close=${a=>this.close(a,!0)}
8
- >
9
- <div class="pkt-modal__wrapper">
10
- ${this.headingText||!this.hideCloseButton?o.b`<div class="pkt-modal__header">
11
- <div class="pkt-modal__header-background"></div>
12
- ${this.headingText?o.b`<h1 id="pkt-modal__headingText" class=${d.e(t)}>
13
- ${this.headingText}
14
- </h1>`:o.b`<div class="pkt-modal__headingText"></div>`}
15
- ${this.hideCloseButton?o.b`<div class="pkt-modal__noCloseButton"></div>`:o.b`<div class="${d.e(l)}">
16
- <pkt-button
17
- @click=${a=>this.close(a)}
18
- aria-label="close"
19
- iconname="close"
20
- variant="icon-only"
21
- size="medium"
22
- skin=${s?"tertiary":"primary"}
23
- >
24
- Lukk
25
- </pkt-button>
26
- </div>`}
27
- </div>`:o.A}
28
- <div class="pkt-modal__container">
29
- <div
30
- id="pkt-modal__content"
31
- class=${d.e(i)}
32
- >${p.slotContent(this)}</div>
33
- </div>
34
- </div>
35
- </dialog>
36
- `}};n([o.n({type:Boolean,reflect:!0})],exports.PktModal.prototype,"open",2);n([o.n({type:String})],exports.PktModal.prototype,"headingText",2);n([o.n({type:Boolean})],exports.PktModal.prototype,"removePadding",2);n([o.n({type:Boolean})],exports.PktModal.prototype,"hideCloseButton",2);n([o.n({type:Boolean})],exports.PktModal.prototype,"closeOnBackdropClick",2);n([o.n({type:String})],exports.PktModal.prototype,"closeButtonSkin",2);n([o.n({type:String})],exports.PktModal.prototype,"size",2);n([o.n({type:String})],exports.PktModal.prototype,"variant",2);n([o.n({type:String})],exports.PktModal.prototype,"drawerPosition",2);n([o.n({type:Boolean})],exports.PktModal.prototype,"transparentBackdrop",2);n([u.r()],exports.PktModal.prototype,"_isOpen",2);exports.PktModal=n([o.t("pkt-modal")],exports.PktModal);
@@ -1,21 +0,0 @@
1
- "use strict";const n=require("./class-map-CsENJXf1.cjs"),e=require("./element-gR_VtSiD.cjs"),p=require("./state-Dg-53wQ8.cjs"),h=require("./ref-CL-Xk9Xm.cjs"),b=require("./directive-C7oCP5Bh.cjs"),d=require("./utils-byXsEz1u.cjs");require("./icon-Bqj9oBbl.cjs");/**
2
- * @license
3
- * Copyright 2018 Google LLC
4
- * SPDX-License-Identifier: BSD-3-Clause
5
- */const c="important",v=" !"+c,f=b.e(class extends b.i{constructor(l){var t;if(super(l),l.type!==b.t.ATTRIBUTE||l.name!=="style"||((t=l.strings)==null?void 0:t.length)>2)throw Error("The `styleMap` directive must be used in the `style` attribute and must be the only part in the attribute.")}render(l){return Object.keys(l).reduce((t,s)=>{const r=l[s];return r==null?t:t+`${s=s.includes("-")?s:s.replace(/(?:^(webkit|moz|ms|o)|)(?=[A-Z])/g,"-$&").toLowerCase()}:${r};`},"")}update(l,[t]){const{style:s}=l.element;if(this.ft===void 0)return this.ft=new Set(Object.keys(t)),this.render(t);for(const r of this.ft)t[r]==null&&(this.ft.delete(r),r.includes("-")?s.removeProperty(r):s[r]=null);for(const r in t){const i=t[r];if(i!=null){this.ft.add(r);const u=typeof i=="string"&&i.endsWith(v);r.includes("-")||u?s.setProperty(r,u?i.slice(0,-11):i,u?c:""):s[r]=i}}return e.E}});var k=Object.defineProperty,m=Object.getOwnPropertyDescriptor,a=(l,t,s,r)=>{for(var i=r>1?void 0:r?m(t,s):t,u=l.length-1,o;u>=0;u--)(o=l[u])&&(i=(r?o(t,s,i):o(i))||i);return r&&i&&k(t,s,i),i};exports.PktProgressbar=class extends e.PktElement{constructor(){super(),this.ariaLabel=null,this.ariaLabelledby=null,this.ariaValueText=null,this.ariaLive="polite",this.id=d.uuidish(),this.role="progressbar",this.skin="dark-blue",this.statusPlacement="following",this.statusType="none",this.title="",this.titlePosition="left",this.valueCurrent=0,this.valueMax=100,this.valueMin=0,this.labelWidth=0,this.progressbarId=this.id,this.computedAriaLabelledby=null,this.computedAriaValueText="",this.labelRef=h.e(),this.progressBarRef=h.e()}firstUpdated(t){super.firstUpdated(t),this.setComputedValues(),this.syncAttributes()}updated(t){super.updated(t),t.has("valueCurrent")&&this.labelRef.value&&(this.labelWidth=this.labelRef.value.getBoundingClientRect().width||0),t.has("id")&&this.id&&(this.progressBarId=this.id),(t.has("statusType")||t.has("id")||t.has("ariaLabelledby"))&&(this.progressbarId=this.id||d.uuidish(),this.computedAriaLabelledby=this.ariaLabelledby||`${this.progressbarId}-title`),(t.has("ariaValueText")||t.has("valueCurrent")||t.has("valueMax"))&&(this.computedAriaValueText=this.statusType==="fraction"&&!this.ariaValueText?`${this.valueCurrent} av ${this.valueMax-this.valueMin}`:this.ariaValueText||""),this.syncAttributes()}render(){const t=this.statusType!=="none",s=this.valueMax-this.valueMin,r=this.valueCurrent/s*100,i=this.statusType==="fraction"?Math.round(r):Math.round((this.valueCurrent-this.valueMin)/(this.valueMax-this.valueMin)*100),u=`${this.valueCurrent} av ${s}`,o=n.e({"pkt-progressbar__bar":!0,[`pkt-progressbar__bar--${this.skin}`]:!!this.skin}),g=n.e({"pkt-progressbar__title":!0,"pkt-progressbar__title-center":this.titlePosition==="center"}),y=n.e({"pkt-progressbar__status":!0,"pkt-progressbar__status--center":this.statusPlacement==="center"}),P=n.e({"pkt-progressbar__status-placement--following":this.statusPlacement==="following","pkt-progressbar__status-placement--center":this.statusPlacement==="center","pkt-progressbar__status-placement--left":this.statusPlacement==="left"});return e.b` <div
6
- class="pkt-progressbar__container"
7
- .ref=${this.progressBarRef}
8
- style=${f({"--pkt-progress-label-width":`${this.labelWidth}px`,"--pkt-progress-width":`${i}%`})}
9
- >
10
- ${this.title?e.b`<p id=${`${this.progressBarId}-title`} class=${g}>${this.title}</p>`:e.A}
11
-
12
- <div class="pkt-progressbar__bar-wrapper">
13
- <div class=${o}></div>
14
- </div>
15
-
16
- ${t?e.b`<div class=${y}>
17
- <span class=${P} ${h.n(this.labelRef)}>
18
- ${this.statusType==="percentage"?`${i}%`:u}
19
- </span>
20
- </div>`:e.A}
21
- </div>`}setComputedValues(){this.progressbarId=this.id||d.uuidish(),this.computedAriaLabelledby=this.ariaLabelledby||`${this.progressbarId}-title`,this.computedAriaValueText=this.statusType==="fraction"&&!this.ariaValueText?`${this.valueCurrent} av ${this.valueMax-this.valueMin}`:this.ariaValueText||""}syncAttributes(){this._handleAttribute("aria-live",this.ariaLive),this._handleAttribute("aria-valuenow",this.valueCurrent),this._handleAttribute("aria-valuemin",this.valueMin),this._handleAttribute("aria-valuemax",this.valueMax),this._handleAttribute("aria-valuetext",this.computedAriaValueText),this._handleAttribute("aria-label",this.ariaLabel),this._handleAttribute("role",this.role),this._handleAttribute("aria-atomic","true"),this._handleAttribute("id",this.progressbarId),this.ariaLabel||this._handleAttribute("aria-labelledby",this.computedAriaLabelledby)}_handleAttribute(t,s){s==null||s===""?this.removeAttribute(t):this.setAttribute(t,String(s))}};a([e.n({type:String})],exports.PktProgressbar.prototype,"ariaLabel",2);a([e.n({type:String,reflect:!0})],exports.PktProgressbar.prototype,"ariaLabelledby",2);a([e.n({type:String,reflect:!0})],exports.PktProgressbar.prototype,"ariaValueText",2);a([e.n({type:String})],exports.PktProgressbar.prototype,"ariaLive",2);a([e.n({type:String,reflect:!0})],exports.PktProgressbar.prototype,"id",2);a([e.n({type:String})],exports.PktProgressbar.prototype,"role",2);a([e.n({type:String})],exports.PktProgressbar.prototype,"skin",2);a([e.n({type:String})],exports.PktProgressbar.prototype,"statusPlacement",2);a([e.n({type:String})],exports.PktProgressbar.prototype,"statusType",2);a([e.n({type:String,reflect:!0})],exports.PktProgressbar.prototype,"title",2);a([e.n({type:String})],exports.PktProgressbar.prototype,"titlePosition",2);a([e.n({type:Number,reflect:!0})],exports.PktProgressbar.prototype,"valueCurrent",2);a([e.n({type:Number})],exports.PktProgressbar.prototype,"valueMax",2);a([e.n({type:Number})],exports.PktProgressbar.prototype,"valueMin",2);a([p.r()],exports.PktProgressbar.prototype,"labelWidth",2);a([p.r()],exports.PktProgressbar.prototype,"progressbarId",2);a([p.r()],exports.PktProgressbar.prototype,"computedAriaLabelledby",2);a([p.r()],exports.PktProgressbar.prototype,"computedAriaValueText",2);exports.PktProgressbar=a([e.t("pkt-progressbar")],exports.PktProgressbar);const _=exports.PktProgressbar;exports.PktProgressbar$1=_;
@@ -1,31 +0,0 @@
1
- "use strict";const t=require("./element-gR_VtSiD.cjs"),r=require("./state-Dg-53wQ8.cjs"),u=require("./input-element-DdVhUvva.cjs"),h=require("./ref-CL-Xk9Xm.cjs"),c=require("./class-map-CsENJXf1.cjs");var d=Object.defineProperty,k=Object.getOwnPropertyDescriptor,i=(p,e,n,a)=>{for(var s=a>1?void 0:a?k(e,n):e,o=p.length-1,l;o>=0;o--)(l=p[o])&&(s=(a?l(e,n,s):l(s))||s);return a&&s&&d(e,n,s),s};exports.PktRadioButton=class extends u.PktInputElement{constructor(){super(...arguments),this.inputRef=h.e(),this.value="",this.checkHelptext=null,this.defaultChecked=!1,this.hasTile=!1,this.checked=null,this.type="radio",this.tagText=null,this.optionalTag=!1,this.optionalText="Valgfritt",this.requiredTag=!1,this.requiredText="Må fylles ut",this._checked=!1}connectedCallback(){super.connectedCallback()}attributeChangedCallback(e,n,a){e==="defaultChecked"&&(this._checked=this.defaultChecked),e==="checked"&&(this._checked=this.checked===""||this.checked==="true"||this.checked===!0),super.attributeChangedCallback(e,n,a)}render(){const e=c.e({"pkt-input-check__input":!0,"pkt-input-check__input--tile":this.hasTile,"pkt-input-check__input--tile-disabled":this.disabled&&this.hasTile}),n=c.e({"pkt-input-check__input-checkbox":!0,"pkt-input-check__input-checkbox--error":this.hasError}),a=c.e({"pkt-input-check__input-label":!0,"pkt-input-check__input-label--disabled":this.disabled,"pkt-sr-only":this.hideLabel}),s="pkt-tag pkt-tag--small pkt-tag--thin-text",o=()=>t.b`
2
- ${this.tagText?t.b`<span class=${s+" pkt-tag--gray"}>${this.tagText}</span>`:t.A}
3
- ${this.optionalTag?t.b`<span class=${s+" pkt-tag--blue-light"}>${this.optionalText}</span>`:t.A}
4
- ${this.requiredTag?t.b`<span class=${s+" pkt-tag--beige"}>${this.requiredText}</span>`:t.A}
5
- `,l=()=>t.b`
6
- <label class=${a} for=${this.id+"-internal"}>
7
- ${this.label} ${o()}
8
- ${this.checkHelptext?t.b`<div class="pkt-input-check__input-helptext">${this.checkHelptext}</div>`:t.A}
9
- </label>
10
- `;return t.b`
11
- <div class="pkt-input-check">
12
- <div class=${e}>
13
- <input
14
- id=${this.id+"-internal"}
15
- class=${n}
16
- type="radio"
17
- role="radio"
18
- ?disabled=${this.disabled}
19
- form=""
20
- name=${this.name+"-internal"}
21
- ${h.n(this.inputRef)}
22
- @change=${this.toggleChecked}
23
- @input=${this.onInput}
24
- @blur=${this.onBlur}
25
- @focus=${this.onFocus}
26
- ?checked=${this.checked}
27
- />
28
- ${l()}
29
- </div>
30
- </div>
31
- `}toggleChecked(e=null){e&&e.preventDefault(),e&&e.stopImmediatePropagation(),this.touched=!0,this.inputRef.value&&(this._checked=this.inputRef.value.matches(":checked"),this.valueChecked(this._checked))}};i([t.n({type:String,reflect:!0})],exports.PktRadioButton.prototype,"value",2);i([t.n({type:String})],exports.PktRadioButton.prototype,"checkHelptext",2);i([t.n({type:Boolean})],exports.PktRadioButton.prototype,"defaultChecked",2);i([t.n({type:Boolean})],exports.PktRadioButton.prototype,"hasTile",2);i([t.n({type:Boolean,reflect:!0})],exports.PktRadioButton.prototype,"checked",2);i([t.n({type:String,reflect:!0})],exports.PktRadioButton.prototype,"type",2);i([t.n({type:String})],exports.PktRadioButton.prototype,"tagText",2);i([t.n({type:Boolean})],exports.PktRadioButton.prototype,"optionalTag",2);i([t.n({type:String})],exports.PktRadioButton.prototype,"optionalText",2);i([t.n({type:Boolean})],exports.PktRadioButton.prototype,"requiredTag",2);i([t.n({type:String})],exports.PktRadioButton.prototype,"requiredText",2);i([r.r()],exports.PktRadioButton.prototype,"_checked",2);exports.PktRadioButton=i([t.t("pkt-radiobutton")],exports.PktRadioButton);
@@ -1,228 +0,0 @@
1
- import { n as u, b as a, t as v } from "./element-CPpT3rFQ.js";
2
- import { e as f, n as _ } from "./ref-Bg_Swj5w.js";
3
- import { o as l } from "./if-defined-B0krMLad.js";
4
- import { r as $ } from "./state-C_1EOo3D.js";
5
- import { P as x } from "./input-element-8nLwuQS4.js";
6
- import { P as m } from "./pkt-options-controller-B5YalfCb.js";
7
- import { s as b } from "./element-with-slot-Dqk6-TRR.js";
8
- import "./input-wrapper-B2JpK016.js";
9
- var g = Object.defineProperty, d = (e, t, s, o) => {
10
- for (var i = void 0, n = e.length - 1, p; n >= 0; n--)
11
- (p = e[n]) && (i = p(t, s, i) || i);
12
- return i && g(t, s, i), i;
13
- };
14
- class h extends x {
15
- constructor() {
16
- super(...arguments), this._optionsProp = [], this._options = [];
17
- }
18
- /**
19
- * Public getter for options that includes selected state
20
- * Override this in subclasses to customize the selected state logic
21
- */
22
- get options() {
23
- return this._options.map((t) => ({
24
- ...t,
25
- selected: this.isOptionSelected(t)
26
- }));
27
- }
28
- /**
29
- * Public setter for options
30
- */
31
- set options(t) {
32
- this._optionsProp = t, this.requestUpdate("_optionsProp", this._options);
33
- }
34
- /**
35
- * Determines if an option is selected
36
- * Subclasses should override this to implement their selection logic
37
- *
38
- * @param option - The option to check
39
- * @returns True if the option is selected
40
- * @protected
41
- */
42
- isOptionSelected(t) {
43
- return Array.isArray(this.value) ? this.value.includes(t.value) : t.value === this.value;
44
- }
45
- /**
46
- * Finds an option by its value
47
- *
48
- * @param value - The value to search for
49
- * @returns The option if found, undefined otherwise
50
- * @protected
51
- */
52
- findOptionByValue(t) {
53
- return this._options.find((s) => s.value === t);
54
- }
55
- /**
56
- * Gets all currently selected options
57
- *
58
- * @returns Array of selected options
59
- * @protected
60
- */
61
- getSelectedOptions() {
62
- return this._options.filter((t) => this.isOptionSelected(t));
63
- }
64
- /**
65
- * Parses options from either props or slot controller
66
- * Call this in connectedCallback to initialize options
67
- *
68
- * @protected
69
- */
70
- parseOptions() {
71
- var o, i;
72
- const t = this._optionsProp.length > 0, s = ((i = (o = this.optionsController) == null ? void 0 : o.nodes) == null ? void 0 : i.length) && this.optionsController.nodes.length > 0;
73
- t ? this._options = this._optionsProp : s && (this._options = this.optionsController.options);
74
- }
75
- /**
76
- * Re-parse options when the component updates
77
- * This ensures options stay in sync when they change dynamically
78
- *
79
- * @protected
80
- */
81
- willUpdate(t) {
82
- super.willUpdate(t), this.parseOptions();
83
- }
84
- }
85
- d([
86
- u({ type: Array, attribute: "options" })
87
- ], h.prototype, "_optionsProp");
88
- d([
89
- $()
90
- ], h.prototype, "_options");
91
- var O = Object.defineProperty, P = Object.getOwnPropertyDescriptor, c = (e, t, s, o) => {
92
- for (var i = o > 1 ? void 0 : o ? P(t, s) : t, n = e.length - 1, p; n >= 0; n--)
93
- (p = e[n]) && (i = (o ? p(t, s, i) : p(i)) || i);
94
- return o && i && O(t, s, i), i;
95
- };
96
- let r = class extends h {
97
- constructor() {
98
- super(), this.inputRef = f(), this.value = "", this.selectedIndex = -1, this.selectedOptions = void 0, this.optionsController = new m(this);
99
- }
100
- connectedCallback() {
101
- super.connectedCallback(), this.parseOptions(), this._options.forEach((e) => {
102
- e.selected && !this.value && (this.value = e.value);
103
- });
104
- }
105
- // Support native Select method `add`
106
- add(e, t) {
107
- const s = {
108
- value: e.value || e.text,
109
- label: e.text || e.value,
110
- selected: e.selected,
111
- disabled: e.disabled
112
- };
113
- if (t === void 0)
114
- this._options.push(s);
115
- else if (typeof t == "number")
116
- this._options.splice(t, 0, s);
117
- else {
118
- const o = t.value || t.text, i = this._options.findIndex((n) => n.value === o);
119
- i >= 0 ? this._options.splice(i, 0, s) : this._options.push(s);
120
- }
121
- e.selected && (this.value = e.value || e.text, this.selectedIndex = this._options.findIndex((o) => o.value === this.value)), this.requestUpdate();
122
- }
123
- // Support native Select method `remove`
124
- remove(e) {
125
- var t;
126
- typeof e == "number" && (this.selectedIndex === e && (this.value = ((t = this._options[0]) == null ? void 0 : t.value) || ""), this._options.splice(e, 1), this.requestUpdate());
127
- }
128
- // Support native Select method `item`
129
- item(e) {
130
- var t;
131
- return (t = this.inputRef.value) == null ? void 0 : t.item(e);
132
- }
133
- // Support native Select method `namedItem`
134
- namedItem(e) {
135
- var t;
136
- return (t = this.inputRef.value) == null ? void 0 : t.namedItem(e);
137
- }
138
- // Support native Select method `showPicker`
139
- showPicker() {
140
- this.inputRef.value && "showPicker" in this.inputRef.value && this.inputRef.value.showPicker();
141
- }
142
- attributeChangedCallback(e, t, s) {
143
- var o, i;
144
- e === "options" && (this._options = s ? JSON.parse(s) : []), e === "value" && this.value !== t && (this.selectedIndex = this.touched ? this.returnNumberOrNull((o = this.inputRef.value) == null ? void 0 : o.selectedIndex) : this._options.findIndex((n) => n.value === s), this.selectedOptions = (i = this.inputRef.value) == null ? void 0 : i.selectedOptions, this.valueChanged(s, t)), super.attributeChangedCallback(e, t, s);
145
- }
146
- update(e) {
147
- var t, s;
148
- super.update(e), e.has("_optionsProp") && this._optionsProp.length > 0 && (this._options = this._optionsProp, this.requestUpdate("_options"), !this.value && this._options.length > 0 && (this.value = this._options[0].value, this.selectedIndex = 0)), e.has("value") && this.value !== e.get("value") && (this.selectedIndex = this.touched ? this.returnNumberOrNull((t = this.inputRef.value) == null ? void 0 : t.selectedIndex) : this._options.findIndex((o) => o.value === this.value), this.selectedOptions = (s = this.inputRef.value) == null ? void 0 : s.selectedOptions, this.valueChanged(this.value, e.get("value"))), e.has("id") && !this.name && this.id && (this.name = this.id);
149
- }
150
- firstUpdated(e) {
151
- var t;
152
- super.firstUpdated(e), this._optionsProp.length && (this._options = this._optionsProp), !this.value && this._options.length > 0 ? (this.value = this._options[0].value, this.selectedIndex = 0) : this.selectedIndex = this._options.findIndex((s) => s.value === this.value), this.selectedOptions = (t = this.inputRef.value) == null ? void 0 : t.selectedOptions;
153
- }
154
- render() {
155
- const e = `pkt-input ${this.fullwidth ? "pkt-input--fullwidth" : ""}`;
156
- return a`
157
- <pkt-input-wrapper
158
- ?counter=${this.counter}
159
- ?disabled=${this.disabled}
160
- ?hasError=${this.hasError}
161
- ?hasFieldset=${this.hasFieldset}
162
- ?inline=${this.inline}
163
- ?optionalTag=${this.optionalTag}
164
- ?requiredTag=${this.requiredTag}
165
- useWrapper=${this.useWrapper}
166
- ariaDescribedBy=${l(this.ariaDescribedBy)}
167
- class="pkt-select"
168
- errorMessage=${l(this.errorMessage)}
169
- forId=${this.id + "-input"}
170
- helptext=${l(this.helptext)}
171
- helptextDropdown=${l(this.helptextDropdown)}
172
- helptextDropdownButton=${l(this.helptextDropdownButton)}
173
- label=${l(this.label)}
174
- optionalText=${l(this.optionalText)}
175
- requiredText=${l(this.requiredText)}
176
- tagText=${l(this.tagText)}
177
- >
178
- <select
179
- class=${e}
180
- aria-invalid=${this.hasError}
181
- aria-errormessage=${`${this.id}-error`}
182
- aria-labelledby=${l(this.ariaLabelledby)}
183
- ?disabled=${this.disabled}
184
- id=${this.id + "-input"}
185
- name=${(this.name || this.id) + "-input"}
186
- value=${this.value}
187
- @change=${(t) => {
188
- this.touched = !0, this.value = t.target.value, t.stopImmediatePropagation();
189
- }}
190
- @input=${(t) => {
191
- this.onInput(), t.stopImmediatePropagation();
192
- }}
193
- @focus=${(t) => {
194
- this.onFocus(), t.stopImmediatePropagation();
195
- }}
196
- @blur=${(t) => {
197
- this.onBlur(), t.stopImmediatePropagation();
198
- }}
199
- ${_(this.inputRef)}
200
- >
201
- ${this._options.length > 0 ? this._options.map(
202
- (t) => a`<option
203
- value=${t.value}
204
- ?selected=${this.value == t.value || t.selected}
205
- ?disabled=${t.disabled}
206
- ?hidden=${t.hidden}
207
- >
208
- ${t.label}
209
- </option>`
210
- ) : ""}
211
- </select>
212
- <div class="pkt-contents" slot="helptext">${b(this, "helptext")}</div>
213
- </pkt-input-wrapper>
214
- `;
215
- }
216
- returnNumberOrNull(e) {
217
- return e == null || isNaN(e) ? null : e;
218
- }
219
- };
220
- c([
221
- u({ type: String })
222
- ], r.prototype, "value", 2);
223
- r = c([
224
- v("pkt-select")
225
- ], r);
226
- export {
227
- r as P
228
- };
@@ -1,49 +0,0 @@
1
- "use strict";const p=require("./element-gR_VtSiD.cjs"),a=require("./ref-CL-Xk9Xm.cjs"),l=require("./if-defined-BOW3ODSj.cjs"),c=require("./state-Dg-53wQ8.cjs"),v=require("./input-element-DdVhUvva.cjs"),f=require("./pkt-options-controller-5LXbEzuk.cjs"),_=require("./element-with-slot-ZX-up7jO.cjs");require("./input-wrapper-B0MkQ0IZ.cjs");var $=Object.defineProperty,u=(r,t,e,i)=>{for(var s=void 0,o=r.length-1,n;o>=0;o--)(n=r[o])&&(s=n(t,e,s)||s);return s&&$(t,e,s),s};class h extends v.PktInputElement{constructor(){super(...arguments),this._optionsProp=[],this._options=[]}get options(){return this._options.map(t=>({...t,selected:this.isOptionSelected(t)}))}set options(t){this._optionsProp=t,this.requestUpdate("_optionsProp",this._options)}isOptionSelected(t){return Array.isArray(this.value)?this.value.includes(t.value):t.value===this.value}findOptionByValue(t){return this._options.find(e=>e.value===t)}getSelectedOptions(){return this._options.filter(t=>this.isOptionSelected(t))}parseOptions(){var i,s;const t=this._optionsProp.length>0,e=((s=(i=this.optionsController)==null?void 0:i.nodes)==null?void 0:s.length)&&this.optionsController.nodes.length>0;t?this._options=this._optionsProp:e&&(this._options=this.optionsController.options)}willUpdate(t){super.willUpdate(t),this.parseOptions()}}u([p.n({type:Array,attribute:"options"})],h.prototype,"_optionsProp");u([c.r()],h.prototype,"_options");var x=Object.defineProperty,b=Object.getOwnPropertyDescriptor,d=(r,t,e,i)=>{for(var s=i>1?void 0:i?b(t,e):t,o=r.length-1,n;o>=0;o--)(n=r[o])&&(s=(i?n(t,e,s):n(s))||s);return i&&s&&x(t,e,s),s};exports.PktSelect=class extends h{constructor(){super(),this.inputRef=a.e(),this.value="",this.selectedIndex=-1,this.selectedOptions=void 0,this.optionsController=new f.PktOptionsSlotController(this)}connectedCallback(){super.connectedCallback(),this.parseOptions(),this._options.forEach(t=>{t.selected&&!this.value&&(this.value=t.value)})}add(t,e){const i={value:t.value||t.text,label:t.text||t.value,selected:t.selected,disabled:t.disabled};if(e===void 0)this._options.push(i);else if(typeof e=="number")this._options.splice(e,0,i);else{const s=e.value||e.text,o=this._options.findIndex(n=>n.value===s);o>=0?this._options.splice(o,0,i):this._options.push(i)}t.selected&&(this.value=t.value||t.text,this.selectedIndex=this._options.findIndex(s=>s.value===this.value)),this.requestUpdate()}remove(t){var e;typeof t=="number"&&(this.selectedIndex===t&&(this.value=((e=this._options[0])==null?void 0:e.value)||""),this._options.splice(t,1),this.requestUpdate())}item(t){var e;return(e=this.inputRef.value)==null?void 0:e.item(t)}namedItem(t){var e;return(e=this.inputRef.value)==null?void 0:e.namedItem(t)}showPicker(){this.inputRef.value&&"showPicker"in this.inputRef.value&&this.inputRef.value.showPicker()}attributeChangedCallback(t,e,i){var s,o;t==="options"&&(this._options=i?JSON.parse(i):[]),t==="value"&&this.value!==e&&(this.selectedIndex=this.touched?this.returnNumberOrNull((s=this.inputRef.value)==null?void 0:s.selectedIndex):this._options.findIndex(n=>n.value===i),this.selectedOptions=(o=this.inputRef.value)==null?void 0:o.selectedOptions,this.valueChanged(i,e)),super.attributeChangedCallback(t,e,i)}update(t){var e,i;super.update(t),t.has("_optionsProp")&&this._optionsProp.length>0&&(this._options=this._optionsProp,this.requestUpdate("_options"),!this.value&&this._options.length>0&&(this.value=this._options[0].value,this.selectedIndex=0)),t.has("value")&&this.value!==t.get("value")&&(this.selectedIndex=this.touched?this.returnNumberOrNull((e=this.inputRef.value)==null?void 0:e.selectedIndex):this._options.findIndex(s=>s.value===this.value),this.selectedOptions=(i=this.inputRef.value)==null?void 0:i.selectedOptions,this.valueChanged(this.value,t.get("value"))),t.has("id")&&!this.name&&this.id&&(this.name=this.id)}firstUpdated(t){var e;super.firstUpdated(t),this._optionsProp.length&&(this._options=this._optionsProp),!this.value&&this._options.length>0?(this.value=this._options[0].value,this.selectedIndex=0):this.selectedIndex=this._options.findIndex(i=>i.value===this.value),this.selectedOptions=(e=this.inputRef.value)==null?void 0:e.selectedOptions}render(){const t=`pkt-input ${this.fullwidth?"pkt-input--fullwidth":""}`;return p.b`
2
- <pkt-input-wrapper
3
- ?counter=${this.counter}
4
- ?disabled=${this.disabled}
5
- ?hasError=${this.hasError}
6
- ?hasFieldset=${this.hasFieldset}
7
- ?inline=${this.inline}
8
- ?optionalTag=${this.optionalTag}
9
- ?requiredTag=${this.requiredTag}
10
- useWrapper=${this.useWrapper}
11
- ariaDescribedBy=${l.o(this.ariaDescribedBy)}
12
- class="pkt-select"
13
- errorMessage=${l.o(this.errorMessage)}
14
- forId=${this.id+"-input"}
15
- helptext=${l.o(this.helptext)}
16
- helptextDropdown=${l.o(this.helptextDropdown)}
17
- helptextDropdownButton=${l.o(this.helptextDropdownButton)}
18
- label=${l.o(this.label)}
19
- optionalText=${l.o(this.optionalText)}
20
- requiredText=${l.o(this.requiredText)}
21
- tagText=${l.o(this.tagText)}
22
- >
23
- <select
24
- class=${t}
25
- aria-invalid=${this.hasError}
26
- aria-errormessage=${`${this.id}-error`}
27
- aria-labelledby=${l.o(this.ariaLabelledby)}
28
- ?disabled=${this.disabled}
29
- id=${this.id+"-input"}
30
- name=${(this.name||this.id)+"-input"}
31
- value=${this.value}
32
- @change=${e=>{this.touched=!0,this.value=e.target.value,e.stopImmediatePropagation()}}
33
- @input=${e=>{this.onInput(),e.stopImmediatePropagation()}}
34
- @focus=${e=>{this.onFocus(),e.stopImmediatePropagation()}}
35
- @blur=${e=>{this.onBlur(),e.stopImmediatePropagation()}}
36
- ${a.n(this.inputRef)}
37
- >
38
- ${this._options.length>0?this._options.map(e=>p.b`<option
39
- value=${e.value}
40
- ?selected=${this.value==e.value||e.selected}
41
- ?disabled=${e.disabled}
42
- ?hidden=${e.hidden}
43
- >
44
- ${e.label}
45
- </option>`):""}
46
- </select>
47
- <div class="pkt-contents" slot="helptext">${_.slotContent(this,"helptext")}</div>
48
- </pkt-input-wrapper>
49
- `}returnNumberOrNull(t){return t==null||isNaN(t)?null:t}};d([p.n({type:String})],exports.PktSelect.prototype,"value",2);exports.PktSelect=d([p.t("pkt-select")],exports.PktSelect);