@oslokommune/punkt-elements 14.3.0 → 14.5.2
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.
- package/CHANGELOG.md +34 -0
- package/dist/{accordionitem-C_URrDjP.js → accordionitem-DB3tAjIZ.js} +4 -4
- package/dist/{accordionitem-DCZrHVNR.cjs → accordionitem-DHYmPA-o.cjs} +1 -1
- package/dist/{alert-UFQFbbzZ.js → alert-DqXar67l.js} +6 -6
- package/dist/{alert-SvqEDHuW.cjs → alert-GrKyqxuR.cjs} +1 -1
- package/dist/{backlink-C7qUmUzs.js → backlink-CqUcmiPQ.js} +11 -11
- package/dist/{backlink-BrIIpgJ7.cjs → backlink-QDcQd6vK.cjs} +1 -1
- package/dist/{button-DaM4jvhJ.cjs → button-R4l10Nqd.cjs} +1 -1
- package/dist/{button-CjXih_Nx.js → button-f36menSU.js} +5 -5
- package/dist/{calendar-CvfMj3fA.js → calendar-DiNuZ8Ai.js} +7 -8
- package/dist/{calendar-ZzLAjDpv.cjs → calendar-wuD6ZH0t.cjs} +3 -3
- package/dist/{card-C1gRTfXb.cjs → card-C2hWaMev.cjs} +1 -1
- package/dist/{card-CO3D8wQE.js → card-CnINxZma.js} +7 -7
- package/dist/{checkbox-C0TPnShf.cjs → checkbox-B-0FOdwi.cjs} +1 -1
- package/dist/{checkbox-CnhA52o_.js → checkbox-CkAwPK_E.js} +4 -4
- package/dist/{class-map-C_erArZz.cjs → class-map-CApIYSRo.cjs} +1 -1
- package/dist/{class-map-wy7PUk0P.js → class-map-Dt2jXOlF.js} +1 -1
- package/dist/{combobox-Dcp_fHcL.js → combobox-Dxa7XjLz.js} +55 -55
- package/dist/{combobox-C1xwAju5.cjs → combobox-yy6hIGmB.cjs} +13 -13
- package/dist/{consent-Daj-Xa7w.cjs → consent-FbFS1pmz.cjs} +1 -1
- package/dist/{consent-BO3Ga8N4.js → consent-c9PhWxnP.js} +3 -3
- package/dist/{datepicker-Bjb9GK1E.js → datepicker-C7GWMtXH.js} +222 -241
- package/dist/{datepicker-COIRRau0.cjs → datepicker-D_3vYgMt.cjs} +25 -25
- package/dist/{directive-helpers-BzAtj9by.js → directive-helpers-CQef4qUQ.js} +1 -1
- package/dist/{directive-helpers-4oOjKnGY.cjs → directive-helpers-CYIEJ8pI.cjs} +1 -1
- package/dist/{element-CRDRygXu.js → element-BXsf_NlG.js} +3 -3
- package/dist/{element-CJ_QKaki.cjs → element-aUzIoa1s.cjs} +3 -3
- package/dist/{heading-Dv_cH6N1.cjs → heading-CBepYb7H.cjs} +1 -1
- package/dist/{heading-BUdy170t.js → heading-J7dN9nRi.js} +13 -13
- package/dist/{helptext-hlcc584n.cjs → helptext-DebHGRsD.cjs} +1 -1
- package/dist/{helptext-Bn17Picx.js → helptext-DuyRRfCn.js} +5 -5
- package/dist/{icon-BB7e5iQN.js → icon-BgG6oO4Q.js} +1 -1
- package/dist/{icon-MRx-m0Or.cjs → icon-Dl9ZPqe6.cjs} +1 -1
- package/dist/{if-defined-Bc9-_I01.cjs → if-defined-BElHLTlB.cjs} +1 -1
- package/dist/{if-defined-BWZGb3bh.js → if-defined-CxHgig4I.js} +1 -1
- package/dist/index.d.ts +213 -55
- package/dist/input-element-DVZhYDJ_.js +840 -0
- package/dist/input-element-RBQVA8i0.cjs +1 -0
- package/dist/{input-wrapper-1PCXqtiu.js → input-wrapper-3qfjLkrP.js} +7 -7
- package/dist/{input-wrapper-CtBiAb04.cjs → input-wrapper-rgXsRNkk.cjs} +1 -1
- package/dist/{link-BboUBUcg.js → link-CZvcdRek.js} +4 -4
- package/dist/{link-Dw39h-YN.cjs → link-D85g20GS.cjs} +1 -1
- package/dist/{linkcard-DUA3kGGd.cjs → linkcard-B-9K02q8.cjs} +1 -1
- package/dist/{linkcard-BqJmHFu8.js → linkcard-C3RTcMqc.js} +4 -4
- package/dist/{listbox-mvKKzH-v.js → listbox-CLtowV6W.js} +36 -36
- package/dist/{listbox-DnoqOo5u.cjs → listbox-C_0RhGhk.cjs} +2 -2
- package/dist/{loader-DjGxT7C3.cjs → loader-1EXLdxfq.cjs} +1 -1
- package/dist/{loader-DIum_s_D.js → loader-Dci0SrOz.js} +5 -5
- package/dist/{messagebox-aPlConlJ.js → messagebox-CnZlttZp.js} +5 -5
- package/dist/{messagebox-ChIKVTO_.cjs → messagebox-dscnWgCd.cjs} +1 -1
- package/dist/{modal-B4qq0VFB.cjs → modal-ncKVjcyZ.cjs} +1 -1
- package/dist/{modal-jAUtM-NP.js → modal-wSGthXAC.js} +5 -5
- package/dist/pkt-accordion.cjs +1 -1
- package/dist/pkt-accordion.js +2 -2
- package/dist/pkt-alert.cjs +1 -1
- package/dist/pkt-alert.js +1 -1
- package/dist/pkt-backlink.cjs +1 -1
- package/dist/pkt-backlink.js +1 -1
- package/dist/pkt-button.cjs +1 -1
- package/dist/pkt-button.js +1 -1
- package/dist/pkt-calendar.cjs +1 -1
- package/dist/pkt-calendar.js +1 -1
- package/dist/pkt-card.cjs +1 -1
- package/dist/pkt-card.js +1 -1
- package/dist/pkt-checkbox.cjs +1 -1
- package/dist/pkt-checkbox.js +1 -1
- package/dist/pkt-combobox.cjs +1 -1
- package/dist/pkt-combobox.js +1 -1
- package/dist/pkt-consent.cjs +1 -1
- package/dist/pkt-consent.js +1 -1
- package/dist/pkt-datepicker.cjs +1 -1
- package/dist/pkt-datepicker.js +2 -2
- package/dist/pkt-header.cjs +1 -1
- package/dist/pkt-header.js +9 -9
- package/dist/pkt-heading.cjs +1 -1
- package/dist/pkt-heading.js +1 -1
- package/dist/pkt-helptext.cjs +1 -1
- package/dist/pkt-helptext.js +1 -1
- package/dist/pkt-icon.cjs +1 -1
- package/dist/pkt-icon.js +1 -1
- package/dist/pkt-index.cjs +1 -29
- package/dist/pkt-index.js +60 -157
- package/dist/pkt-input-wrapper.cjs +1 -1
- package/dist/pkt-input-wrapper.js +1 -1
- package/dist/pkt-link.cjs +1 -1
- package/dist/pkt-link.js +1 -1
- package/dist/pkt-linkcard.cjs +1 -1
- package/dist/pkt-linkcard.js +1 -1
- package/dist/pkt-listbox.cjs +1 -1
- package/dist/pkt-listbox.js +1 -1
- package/dist/pkt-loader.cjs +1 -1
- package/dist/pkt-loader.js +1 -1
- package/dist/pkt-messagebox.cjs +1 -1
- package/dist/pkt-messagebox.js +1 -1
- package/dist/pkt-modal.cjs +1 -1
- package/dist/pkt-modal.js +1 -1
- package/dist/pkt-options-controller-DjBCEHU4.cjs +1 -0
- package/dist/{pkt-options-controller-CZO1nxZ8.js → pkt-options-controller-zn5cmMvL.js} +3 -3
- package/dist/pkt-progressbar.cjs +1 -1
- package/dist/pkt-progressbar.js +2 -2
- package/dist/pkt-radiobutton.cjs +1 -1
- package/dist/pkt-radiobutton.js +1 -1
- package/dist/pkt-select.cjs +1 -1
- package/dist/pkt-select.js +1 -1
- package/dist/pkt-tabs.cjs +1 -1
- package/dist/pkt-tabs.js +2 -2
- package/dist/pkt-tag.cjs +1 -1
- package/dist/pkt-tag.js +1 -1
- package/dist/pkt-textarea.cjs +1 -1
- package/dist/pkt-textarea.js +1 -1
- package/dist/pkt-textinput.cjs +1 -1
- package/dist/pkt-textinput.js +1 -1
- package/dist/{progressbar-CmAQ-DVW.cjs → progressbar-ClY1WgnM.cjs} +1 -1
- package/dist/{progressbar-CVt73-JQ.js → progressbar-D5WBW1Dm.js} +5 -5
- package/dist/{radiobutton-BkqaqO5E.cjs → radiobutton-iHuLnuAn.cjs} +1 -1
- package/dist/{radiobutton-Caq8-GhM.js → radiobutton-oA20HijB.js} +15 -15
- package/dist/{ref-Xa5dbh--.js → ref-BxiKhrfa.js} +2 -2
- package/dist/{ref-BFa5Utho.cjs → ref-C5iJMIE1.cjs} +1 -1
- package/dist/{repeat-CJ79egkN.js → repeat-B55jMEsG.js} +2 -2
- package/dist/{repeat-BZb41H64.cjs → repeat-DcYSFU2y.cjs} +1 -1
- package/dist/select-Bug9sfr5.js +228 -0
- package/dist/select-jbIbD7hW.cjs +49 -0
- package/dist/{state-DS_kr2Fy.js → state-DgnkjP0q.js} +1 -1
- package/dist/{state-DSjcvzDN.cjs → state-GDzxl12x.cjs} +1 -1
- package/dist/{tabitem-D5zyipN1.cjs → tabitem-CtltSqDK.cjs} +1 -1
- package/dist/{tabitem-NV2fzs_-.js → tabitem-CypTmORF.js} +30 -30
- package/dist/{tag-B02fKJ66.cjs → tag-BfjOlIyS.cjs} +1 -1
- package/dist/{tag-CES41g0D.js → tag-DgoTYNVA.js} +6 -6
- package/dist/{textarea-a6T4aJJU.js → textarea-Da9E3RM7.js} +9 -9
- package/dist/{textarea-DyUy8u7X.cjs → textarea-Dfa4_ZBy.cjs} +1 -1
- package/dist/{textinput-IN3b0nSH.cjs → textinput-CLM9fRjm.cjs} +1 -1
- package/dist/{textinput-DIuM70dd.js → textinput-DaMYc5gd.js} +8 -8
- package/package.json +2 -2
- package/src/components/checkbox/checkbox.ts +1 -1
- package/src/components/combobox/combobox.ts +2 -2
- package/src/components/datepicker/datepicker-utils.test.ts +0 -25
- package/src/components/datepicker/datepicker-utils.ts +0 -28
- package/src/components/datepicker/datepicker.ts +0 -6
- package/src/components/header/header.ts +2 -0
- package/src/components/index.ts +0 -1
- package/src/components/radiobutton/radiobutton.ts +1 -1
- package/src/components/select/select.ts +14 -47
- package/src/components/textarea/textarea.ts +1 -1
- package/src/components/textinput/textinput.ts +1 -1
- package/dist/input-element-B8M8Nppd.js +0 -708
- package/dist/input-element-D697OAJo.cjs +0 -1
- package/dist/pkt-options-controller-CiuBG6Lt.cjs +0 -1
- package/dist/select-3dwlk22G.cjs +0 -49
- package/dist/select-_C-yztI0.js +0 -173
package/dist/index.d.ts
CHANGED
|
@@ -621,7 +621,7 @@ export declare class PktCard extends PktElement implements IPktCard {
|
|
|
621
621
|
}
|
|
622
622
|
|
|
623
623
|
export declare class PktCheckbox extends PktInputElement<Props_3> {
|
|
624
|
-
|
|
624
|
+
inputRef: Ref<HTMLInputElement>;
|
|
625
625
|
value: string;
|
|
626
626
|
checkHelptext: string | null;
|
|
627
627
|
defaultChecked: boolean;
|
|
@@ -662,8 +662,8 @@ export declare class PktCombobox extends PktInputElement implements IPktCombobox
|
|
|
662
662
|
displayValueAs: string;
|
|
663
663
|
tagPlacement: TPktComboboxTagPlacement | null;
|
|
664
664
|
_options: IPktComboboxOption[];
|
|
665
|
+
_value: string[];
|
|
665
666
|
private _isOptionsOpen;
|
|
666
|
-
private _value;
|
|
667
667
|
private _userInfoMessage;
|
|
668
668
|
private _addValueText;
|
|
669
669
|
private _maxIsReached;
|
|
@@ -710,47 +710,6 @@ export declare class PktCombobox extends PktInputElement implements IPktCombobox
|
|
|
710
710
|
private removeLastValue;
|
|
711
711
|
}
|
|
712
712
|
|
|
713
|
-
export declare class PktComponent extends PktElement {
|
|
714
|
-
/**
|
|
715
|
-
* Element attributes => props
|
|
716
|
-
* Example:
|
|
717
|
-
* <pkt-component string="hei" strings="hei,og,hallo" darkmode>
|
|
718
|
-
* Hei!
|
|
719
|
-
* </pkt-component>
|
|
720
|
-
*/
|
|
721
|
-
string: string;
|
|
722
|
-
strings: string[];
|
|
723
|
-
darkmode: boolean;
|
|
724
|
-
/**
|
|
725
|
-
* Private properties, for internal use only
|
|
726
|
-
*/
|
|
727
|
-
private _list;
|
|
728
|
-
/**
|
|
729
|
-
* Runs on mount, used to set up various values and whatever you need to run
|
|
730
|
-
*/
|
|
731
|
-
connectedCallback(): void;
|
|
732
|
-
/**
|
|
733
|
-
* Set up slot support for Light DOM
|
|
734
|
-
*/
|
|
735
|
-
slotController: PktSlotController;
|
|
736
|
-
defaultSlot: Ref<HTMLElement>;
|
|
737
|
-
namedSlot: Ref<HTMLElement>;
|
|
738
|
-
constructor();
|
|
739
|
-
/**
|
|
740
|
-
* Render functions
|
|
741
|
-
*/
|
|
742
|
-
render(): TemplateResult<1>;
|
|
743
|
-
private renderList;
|
|
744
|
-
/**
|
|
745
|
-
* Add other functionality under here
|
|
746
|
-
*/
|
|
747
|
-
private doStuff;
|
|
748
|
-
/**
|
|
749
|
-
* Handlers for returning data from the component
|
|
750
|
-
*/
|
|
751
|
-
private handleGreeting;
|
|
752
|
-
}
|
|
753
|
-
|
|
754
713
|
export declare class PktConsent extends PktElement<IPktConsent> implements IPktConsent {
|
|
755
714
|
private _cookieEventHandler?;
|
|
756
715
|
devMode: boolean;
|
|
@@ -1155,8 +1114,18 @@ export declare class PktIcon extends PktElement<Props_5> {
|
|
|
1155
1114
|
* Base class for all Punkt input elements
|
|
1156
1115
|
* @extends PktElement
|
|
1157
1116
|
*/
|
|
1158
|
-
declare class PktInputElement<T = {}> extends PktElement<Props_2 & T> {
|
|
1117
|
+
declare class PktInputElement<T = {}, TOption extends PktInputOption = PktInputOption> extends PktElement<Props_2 & T> {
|
|
1159
1118
|
static get formAssociated(): boolean;
|
|
1119
|
+
internals: any;
|
|
1120
|
+
form: HTMLFormElement | null;
|
|
1121
|
+
checked?: boolean | string | null;
|
|
1122
|
+
defaultChecked?: boolean;
|
|
1123
|
+
multiple?: boolean;
|
|
1124
|
+
range?: boolean;
|
|
1125
|
+
type?: string;
|
|
1126
|
+
slotController?: PktSlotController;
|
|
1127
|
+
optionsController?: PktOptionsSlotController;
|
|
1128
|
+
_options?: TOption[];
|
|
1160
1129
|
defaultValue: string | string[] | null;
|
|
1161
1130
|
disabled: boolean;
|
|
1162
1131
|
readonly: boolean;
|
|
@@ -1192,22 +1161,124 @@ declare class PktInputElement<T = {}> extends PktElement<Props_2 & T> {
|
|
|
1192
1161
|
tagText: string | null;
|
|
1193
1162
|
dataTestid: string;
|
|
1194
1163
|
touched: boolean;
|
|
1195
|
-
_options?: any[];
|
|
1196
1164
|
constructor();
|
|
1197
|
-
|
|
1165
|
+
/**
|
|
1166
|
+
* Manages form validation state based on input validity
|
|
1167
|
+
* Called automatically by onChange, but can be called manually if needed
|
|
1168
|
+
*
|
|
1169
|
+
* @param input - The input element to validate (optional)
|
|
1170
|
+
* @protected
|
|
1171
|
+
*/
|
|
1172
|
+
protected manageValidity(input?: HTMLInputElement | HTMLSelectElement | HTMLTextAreaElement): void;
|
|
1173
|
+
/**
|
|
1174
|
+
* Updates the form value for this input
|
|
1175
|
+
* Handles both single values and arrays (for multi-select)
|
|
1176
|
+
*
|
|
1177
|
+
* @param value - The value(s) to set in the form
|
|
1178
|
+
* @protected
|
|
1179
|
+
*/
|
|
1198
1180
|
protected setFormValue(value: string | string[]): void;
|
|
1181
|
+
/**
|
|
1182
|
+
* Coordinates radio button group by unchecking other radios with the same name
|
|
1183
|
+
* Only affects radio inputs within the same form
|
|
1184
|
+
*
|
|
1185
|
+
* @protected
|
|
1186
|
+
*/
|
|
1187
|
+
protected coordinateRadioGroup(): void;
|
|
1188
|
+
/**
|
|
1189
|
+
* Updates checked state and form value for checkbox and radio inputs
|
|
1190
|
+
* Triggers this when you want to set the value of the radio or checkbox input to the form
|
|
1191
|
+
* Do not use valueChanged or onChange for radios and checkboxes!
|
|
1192
|
+
*
|
|
1193
|
+
* @param value - The checked state (string 'true'/'false', or boolean)
|
|
1194
|
+
* @protected
|
|
1195
|
+
*/
|
|
1199
1196
|
protected valueChecked(value: string | boolean | null): void;
|
|
1197
|
+
/**
|
|
1198
|
+
* Called when value changes (text inputs, select, etc.)
|
|
1199
|
+
* Subclasses can override to add custom value transformation logic
|
|
1200
|
+
*
|
|
1201
|
+
* @param value - The new value
|
|
1202
|
+
* @param _old - The previous value
|
|
1203
|
+
* @protected
|
|
1204
|
+
* @example
|
|
1205
|
+
* ```typescript
|
|
1206
|
+
* protected valueChanged(value: string, old: string): void {
|
|
1207
|
+
* const transformed = this.transformValue(value)
|
|
1208
|
+
* super.valueChanged(transformed, old)
|
|
1209
|
+
* }
|
|
1210
|
+
* ```
|
|
1211
|
+
*/
|
|
1200
1212
|
protected valueChanged(value: string | string[] | null, _old: string | string[] | null): void;
|
|
1213
|
+
/**
|
|
1214
|
+
* Dispatches change and value-change events
|
|
1215
|
+
*
|
|
1216
|
+
* @param value - The value to include in the event detail
|
|
1217
|
+
* @protected
|
|
1218
|
+
*/
|
|
1219
|
+
protected dispatchChangeEvents(value: unknown): void;
|
|
1220
|
+
/**
|
|
1221
|
+
* When input goes from content to no content
|
|
1222
|
+
* @protected
|
|
1223
|
+
*/
|
|
1201
1224
|
protected clearInputValue(): void;
|
|
1225
|
+
/**
|
|
1226
|
+
* When user enters the input, dispatch focus event
|
|
1227
|
+
* @protected
|
|
1228
|
+
*/
|
|
1202
1229
|
protected onFocus(): void;
|
|
1230
|
+
/**
|
|
1231
|
+
* When user leaves the input, dispatch blur event
|
|
1232
|
+
* @protected
|
|
1233
|
+
*/
|
|
1203
1234
|
protected onBlur(): void;
|
|
1235
|
+
/**
|
|
1236
|
+
* Trigger this when user types in the input
|
|
1237
|
+
* @protected
|
|
1238
|
+
*/
|
|
1204
1239
|
protected onInput(): void;
|
|
1240
|
+
/**
|
|
1241
|
+
* Normalizes value format based on multiple/range settings
|
|
1242
|
+
*
|
|
1243
|
+
* @param value - The value to normalize
|
|
1244
|
+
* @returns Normalized value (array if multiple/range, string otherwise)
|
|
1245
|
+
* @private
|
|
1246
|
+
*/
|
|
1247
|
+
private normalizeValue;
|
|
1248
|
+
/**
|
|
1249
|
+
* Validates the input element(s)
|
|
1250
|
+
* @private
|
|
1251
|
+
*/
|
|
1252
|
+
private validate;
|
|
1253
|
+
/**
|
|
1254
|
+
* Trigger this when you want to set the value of the input out to the form
|
|
1255
|
+
* Handles value normalization, form updates, validation, and event dispatching
|
|
1256
|
+
*
|
|
1257
|
+
* @param value - The value to set
|
|
1258
|
+
* @protected
|
|
1259
|
+
*/
|
|
1205
1260
|
protected onChange(value: string | string[]): void;
|
|
1261
|
+
/**
|
|
1262
|
+
* Called when the form is reset
|
|
1263
|
+
* Resets the input to its default state
|
|
1264
|
+
* @protected
|
|
1265
|
+
*/
|
|
1206
1266
|
protected formResetCallback(): void;
|
|
1207
1267
|
protected updated(_changedProperties: PropertyValues): void;
|
|
1208
1268
|
protected firstUpdated(_changedProperties: PropertyValues): void;
|
|
1209
1269
|
}
|
|
1210
1270
|
|
|
1271
|
+
/**
|
|
1272
|
+
* Base interface for input options used in select, combobox, etc.
|
|
1273
|
+
*/
|
|
1274
|
+
declare interface PktInputOption {
|
|
1275
|
+
value: string;
|
|
1276
|
+
label?: string;
|
|
1277
|
+
selected?: boolean;
|
|
1278
|
+
disabled?: boolean;
|
|
1279
|
+
hidden?: boolean;
|
|
1280
|
+
}
|
|
1281
|
+
|
|
1211
1282
|
export declare class PktInputWrapper extends PktElement<Props_6> {
|
|
1212
1283
|
defaultSlot: Ref<HTMLElement>;
|
|
1213
1284
|
helptextSlot: Ref<HTMLElement>;
|
|
@@ -1371,6 +1442,88 @@ export declare class PktModal extends PktElement implements IPktModal {
|
|
|
1371
1442
|
render(): TemplateResult<1>;
|
|
1372
1443
|
}
|
|
1373
1444
|
|
|
1445
|
+
/**
|
|
1446
|
+
* Base class for input elements that have options (select, combobox, etc.)
|
|
1447
|
+
* Provides common functionality for managing options from props or slots
|
|
1448
|
+
* @extends PktInputElement
|
|
1449
|
+
*/
|
|
1450
|
+
declare abstract class PktOptionsInputElement<T = {}, TOption extends PktInputOption = PktInputOption> extends PktInputElement<Props_10 & T, TOption> {
|
|
1451
|
+
/**
|
|
1452
|
+
* Options passed as a prop
|
|
1453
|
+
* @private
|
|
1454
|
+
*/
|
|
1455
|
+
protected _optionsProp: TOption[];
|
|
1456
|
+
/**
|
|
1457
|
+
* Internal state for parsed options
|
|
1458
|
+
* @protected
|
|
1459
|
+
*/
|
|
1460
|
+
_options: TOption[];
|
|
1461
|
+
/**
|
|
1462
|
+
* Controller for managing options from slots
|
|
1463
|
+
*/
|
|
1464
|
+
optionsController: PktOptionsSlotController;
|
|
1465
|
+
/**
|
|
1466
|
+
* Public getter for options that includes selected state
|
|
1467
|
+
* Override this in subclasses to customize the selected state logic
|
|
1468
|
+
*/
|
|
1469
|
+
get options(): TOption[];
|
|
1470
|
+
/**
|
|
1471
|
+
* Public setter for options
|
|
1472
|
+
*/
|
|
1473
|
+
set options(value: TOption[]);
|
|
1474
|
+
/**
|
|
1475
|
+
* Determines if an option is selected
|
|
1476
|
+
* Subclasses should override this to implement their selection logic
|
|
1477
|
+
*
|
|
1478
|
+
* @param option - The option to check
|
|
1479
|
+
* @returns True if the option is selected
|
|
1480
|
+
* @protected
|
|
1481
|
+
*/
|
|
1482
|
+
protected isOptionSelected(option: TOption): boolean;
|
|
1483
|
+
/**
|
|
1484
|
+
* Finds an option by its value
|
|
1485
|
+
*
|
|
1486
|
+
* @param value - The value to search for
|
|
1487
|
+
* @returns The option if found, undefined otherwise
|
|
1488
|
+
* @protected
|
|
1489
|
+
*/
|
|
1490
|
+
protected findOptionByValue(value: string): TOption | undefined;
|
|
1491
|
+
/**
|
|
1492
|
+
* Gets all currently selected options
|
|
1493
|
+
*
|
|
1494
|
+
* @returns Array of selected options
|
|
1495
|
+
* @protected
|
|
1496
|
+
*/
|
|
1497
|
+
protected getSelectedOptions(): TOption[];
|
|
1498
|
+
/**
|
|
1499
|
+
* Parses options from either props or slot controller
|
|
1500
|
+
* Call this in connectedCallback to initialize options
|
|
1501
|
+
*
|
|
1502
|
+
* @protected
|
|
1503
|
+
*/
|
|
1504
|
+
protected parseOptions(): void;
|
|
1505
|
+
/**
|
|
1506
|
+
* Re-parse options when the component updates
|
|
1507
|
+
* This ensures options stay in sync when they change dynamically
|
|
1508
|
+
*
|
|
1509
|
+
* @protected
|
|
1510
|
+
*/
|
|
1511
|
+
protected willUpdate(_changedProperties: Map<PropertyKey, unknown>): void;
|
|
1512
|
+
}
|
|
1513
|
+
|
|
1514
|
+
declare class PktOptionsSlotController implements ReactiveController {
|
|
1515
|
+
host: LitElement & ReactiveControllerHost;
|
|
1516
|
+
nodes: Element[];
|
|
1517
|
+
options: TOption[];
|
|
1518
|
+
observer: MutationObserver;
|
|
1519
|
+
constructor(host: LitElement & ReactiveControllerHost);
|
|
1520
|
+
hostConnected(): void;
|
|
1521
|
+
hostDisconnected(): void;
|
|
1522
|
+
private addNode;
|
|
1523
|
+
private createOptions;
|
|
1524
|
+
private handleMutations;
|
|
1525
|
+
}
|
|
1526
|
+
|
|
1374
1527
|
export declare class PktProgressbar extends PktElement implements IPktProgressbar {
|
|
1375
1528
|
constructor();
|
|
1376
1529
|
ariaLabel: string | null;
|
|
@@ -1402,7 +1555,7 @@ export declare class PktProgressbar extends PktElement implements IPktProgressba
|
|
|
1402
1555
|
}
|
|
1403
1556
|
|
|
1404
1557
|
declare class PktRadioButton extends PktInputElement<Props_7> {
|
|
1405
|
-
|
|
1558
|
+
inputRef: Ref<HTMLInputElement>;
|
|
1406
1559
|
value: string;
|
|
1407
1560
|
checkHelptext: string | null;
|
|
1408
1561
|
defaultChecked: boolean;
|
|
@@ -1423,16 +1576,12 @@ declare class PktRadioButton extends PktInputElement<Props_7> {
|
|
|
1423
1576
|
export { PktRadioButton }
|
|
1424
1577
|
export { PktRadioButton as PktRadiobutton }
|
|
1425
1578
|
|
|
1426
|
-
export declare class PktSelect extends
|
|
1427
|
-
|
|
1579
|
+
export declare class PktSelect extends PktOptionsInputElement<{}, TSelectOption> implements IPktSelect {
|
|
1580
|
+
inputRef: Ref<HTMLSelectElement>;
|
|
1428
1581
|
private helptextSlot;
|
|
1429
|
-
private _optionsProp;
|
|
1430
1582
|
value: string;
|
|
1431
|
-
_options: TSelectOption[];
|
|
1432
1583
|
selectedIndex: number | null;
|
|
1433
1584
|
selectedOptions: HTMLCollectionOf<HTMLOptionElement> | undefined;
|
|
1434
|
-
get options(): TSelectOption[];
|
|
1435
|
-
set options(value: TSelectOption[]);
|
|
1436
1585
|
constructor();
|
|
1437
1586
|
connectedCallback(): void;
|
|
1438
1587
|
add(item: HTMLOptionElement, before?: HTMLOptionElement | number): void;
|
|
@@ -1558,7 +1707,7 @@ export declare class PktTag extends PktElement<IPktTag> implements IPktTag {
|
|
|
1558
1707
|
}
|
|
1559
1708
|
|
|
1560
1709
|
export declare class PktTextarea extends PktInputElement<Props_8> {
|
|
1561
|
-
|
|
1710
|
+
inputRef: Ref<HTMLTextAreaElement>;
|
|
1562
1711
|
private helptextSlot;
|
|
1563
1712
|
value: string;
|
|
1564
1713
|
autocomplete: string;
|
|
@@ -1571,7 +1720,7 @@ export declare class PktTextarea extends PktInputElement<Props_8> {
|
|
|
1571
1720
|
}
|
|
1572
1721
|
|
|
1573
1722
|
export declare class PktTextinput extends PktInputElement<Props_9> {
|
|
1574
|
-
|
|
1723
|
+
inputRef: Ref<HTMLTextAreaElement>;
|
|
1575
1724
|
private helptextSlot;
|
|
1576
1725
|
value: string;
|
|
1577
1726
|
type: string;
|
|
@@ -1590,6 +1739,8 @@ export declare class PktTextinput extends PktInputElement<Props_9> {
|
|
|
1590
1739
|
|
|
1591
1740
|
declare type Props = ElementProps<PktElement, 'strings' | 'role'>;
|
|
1592
1741
|
|
|
1742
|
+
declare type Props_10 = ElementProps<PktOptionsInputElement, 'options'>;
|
|
1743
|
+
|
|
1593
1744
|
declare type Props_2 = ElementProps<PktInputElement, 'defaultValue' | 'disabled' | 'readonly' | 'required' | 'max' | 'maxlength' | 'min' | 'minlength' | 'ariaDescribedBy' | 'ariaLabelledby' | 'name' | 'pattern' | 'placeholder' | 'id' | 'counter' | 'hasError' | 'hasFieldset' | 'inline' | 'optionalTag' | 'requiredTag' | 'skipForwardTestid' | 'useWrapper' | 'fullwidth' | 'counterMaxLength' | 'errorMessage' | 'helptext' | 'helptextDropdown' | 'helptextDropdownButton' | 'label' | 'optionalText' | 'requiredText' | 'dataTestid'>;
|
|
1594
1745
|
|
|
1595
1746
|
declare type Props_3 = ElementProps<PktCheckbox, 'checkHelptext' | 'defaultChecked' | 'hasTile' | 'isSwitch' | 'labelPosition' | 'hideLabel' | 'tagText' | 'optionalTag' | 'optionalText' | 'requiredTag' | 'requiredText'>;
|
|
@@ -1647,6 +1798,13 @@ declare type TLinkCardSkin = 'normal' | 'no-padding' | 'blue' | 'beige' | 'green
|
|
|
1647
1798
|
|
|
1648
1799
|
declare type TMonth = `${number}${number}`;
|
|
1649
1800
|
|
|
1801
|
+
declare type TOption = {
|
|
1802
|
+
value: string;
|
|
1803
|
+
label: string;
|
|
1804
|
+
selected?: boolean;
|
|
1805
|
+
disabled?: boolean;
|
|
1806
|
+
};
|
|
1807
|
+
|
|
1650
1808
|
export declare type TPktAccordionSkin = TAccordionSkin;
|
|
1651
1809
|
|
|
1652
1810
|
export declare type TPktButtonColor = 'blue' | 'blue-outline' | 'green' | 'green-outline' | 'green-dark' | 'green-dark-outline' | 'beige-light' | 'beige-dark-outline' | 'yellow' | 'yellow-outline' | 'red' | 'red-outline';
|