@momentum-design/components 0.18.4 → 0.18.6

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 (35) hide show
  1. package/dist/browser/index.js +427 -62
  2. package/dist/browser/index.js.map +4 -4
  3. package/dist/components/checkbox/checkbox.component.d.ts +71 -0
  4. package/dist/components/checkbox/checkbox.component.js +150 -0
  5. package/dist/components/checkbox/checkbox.constants.d.ts +6 -0
  6. package/dist/components/checkbox/checkbox.constants.js +7 -0
  7. package/dist/components/checkbox/checkbox.styles.d.ts +2 -0
  8. package/dist/components/checkbox/checkbox.styles.js +106 -0
  9. package/dist/components/checkbox/index.d.ts +8 -0
  10. package/dist/components/checkbox/index.js +5 -0
  11. package/dist/components/formfieldwrapper/formfieldwrapper.constants.d.ts +3 -3
  12. package/dist/components/formfieldwrapper/formfieldwrapper.constants.js +3 -3
  13. package/dist/components/formfieldwrapper/formfieldwrapper.utils.js +4 -4
  14. package/dist/components/input/index.d.ts +10 -0
  15. package/dist/components/input/index.js +7 -0
  16. package/dist/components/input/input.component.d.ts +208 -0
  17. package/dist/components/input/input.component.js +401 -0
  18. package/dist/components/input/input.constants.d.ts +25 -0
  19. package/dist/components/input/input.constants.js +29 -0
  20. package/dist/components/input/input.styles.d.ts +2 -0
  21. package/dist/components/input/input.styles.js +118 -0
  22. package/dist/components/input/input.types.d.ts +4 -0
  23. package/dist/components/input/input.types.js +1 -0
  24. package/dist/custom-elements.json +2569 -1222
  25. package/dist/index.d.ts +3 -1
  26. package/dist/index.js +3 -1
  27. package/dist/react/checkbox/index.d.ts +27 -0
  28. package/dist/react/checkbox/index.js +36 -0
  29. package/dist/react/index.d.ts +5 -3
  30. package/dist/react/index.js +5 -3
  31. package/dist/react/input/index.d.ts +39 -0
  32. package/dist/react/input/index.js +48 -0
  33. package/dist/utils/mixins/DataAriaLabelMixin.d.ts +6 -0
  34. package/dist/utils/mixins/DataAriaLabelMixin.js +29 -0
  35. package/package.json +1 -1
@@ -244,915 +244,844 @@
244
244
  },
245
245
  {
246
246
  "kind": "javascript-module",
247
- "path": "components/badge/badge.component.js",
247
+ "path": "components/avatarbutton/avatarbutton.component.js",
248
248
  "declarations": [
249
249
  {
250
250
  "kind": "class",
251
- "description": "The `mdc-badge` component is a versatile UI element used to\ndisplay dot, icons, counters, success, warning and error type badge.\n\nSupported badge types:\n- `dot`: Displays a dot notification badge with a blue color.\n- `icon`: Displays a badge with a specified icon using the `icon-name` attribute.\n- `counter`: Displays a badge with a counter value. If the counter exceeds the `max-counter`,\nit shows `maxCounter+`. The maximum value of the counter is 999 and anything above that will be set to `999+`.\n- `success`: Displays a success badge with a check circle icon and green color.\n- `warning`: Displays a warning badge with a warning icon and yellow color.\n- `error`: Displays a error badge with a error legacy icon and red color.\n\nFor `icon`, `success`, `warning` and `error` types, the `mdc-icon` component is used to render the icon.\n\nFor the `counter` type, the `mdc-text` component is used to render the counter value.",
252
- "name": "Badge",
253
- "cssProperties": [
254
- {
255
- "description": "The foreground color of the primary badge.",
256
- "name": "--mdc-badge-primary-foreground-color"
257
- },
258
- {
259
- "description": "The background color of the primary badge.",
260
- "name": "--mdc-badge-primary-background-color"
261
- },
251
+ "description": "The `mdc-avatarbutton` component is an interactable version of the `mdc-avatar` component.\n\nThis component is made by extending `buttonsimple` class.\nThe button component acts as a wrapper for the avatar component.",
252
+ "name": "AvatarButton",
253
+ "members": [
262
254
  {
263
- "description": "The foreground color of the secondary badge.",
264
- "name": "--mdc-badge-secondary-foreground-color"
255
+ "kind": "field",
256
+ "name": "ariaLabel",
257
+ "type": {
258
+ "text": "string | null"
259
+ },
260
+ "default": "null",
261
+ "description": "Aria-label attribute to be set for accessibility",
262
+ "attribute": "aria-label"
265
263
  },
266
264
  {
267
- "description": "The background color of the secondary badge.",
268
- "name": "--mdc-badge-secondary-background-color"
265
+ "kind": "method",
266
+ "name": "setSize",
267
+ "privacy": "private",
268
+ "parameters": [
269
+ {
270
+ "name": "size",
271
+ "type": {
272
+ "text": "AvatarSize"
273
+ }
274
+ }
275
+ ]
269
276
  },
270
277
  {
271
- "description": "The foreground color of the success badge.",
272
- "name": "--mdc-badge-success-foreground-color"
278
+ "kind": "field",
279
+ "name": "active",
280
+ "type": {
281
+ "text": "boolean"
282
+ },
283
+ "default": "undefined as unknown",
284
+ "description": "The button's active state indicates whether it is currently toggled on (active) or off (inactive).\nWhen the active state is true, the button is considered to be in an active state, meaning it is toggled on.\nConversely, when the active state is false, the button is in an inactive state, indicating it is toggled off.",
285
+ "attribute": "active",
286
+ "inheritedFrom": {
287
+ "name": "Buttonsimple",
288
+ "module": "components/buttonsimple/buttonsimple.component.js"
289
+ }
273
290
  },
274
291
  {
275
- "description": "The background color of the success badge.",
276
- "name": "--mdc-badge-success-background-color"
292
+ "kind": "field",
293
+ "name": "disabled",
294
+ "type": {
295
+ "text": "boolean"
296
+ },
297
+ "default": "undefined as unknown",
298
+ "description": "Indicates whether the component is disabled.\nWhen the component is disabled for user interaction; it is not focusable or clickable.",
299
+ "attribute": "disabled",
300
+ "reflects": true,
301
+ "inheritedFrom": {
302
+ "name": "DisabledMixin",
303
+ "module": "utils/mixins/DisabledMixin.js"
304
+ }
277
305
  },
278
306
  {
279
- "description": "The foreground color of the warning badge.",
280
- "name": "--mdc-badge-warning-foreground-color"
307
+ "kind": "field",
308
+ "name": "softDisabled",
309
+ "type": {
310
+ "text": "boolean"
311
+ },
312
+ "default": "undefined as unknown",
313
+ "description": "Indicates whether the button is soft disabled.\nWhen set to `true`, the button appears visually disabled but still allows\nfocus, click, and keyboard actions to be passed through.\n\n**Important:** When using soft disabled, consumers must ensure that\nthe button behaves like a disabled button, allowing only focus and\npreventing any interactions (clicks or keyboard actions) from triggering unintended actions.",
314
+ "attribute": "soft-disabled",
315
+ "inheritedFrom": {
316
+ "name": "Buttonsimple",
317
+ "module": "components/buttonsimple/buttonsimple.component.js"
318
+ }
281
319
  },
282
320
  {
283
- "description": "The background color of the warning badge.",
284
- "name": "--mdc-badge-warning-background-color"
321
+ "kind": "field",
322
+ "name": "role",
323
+ "description": "This property defines the ARIA role for the element. By default, it is set to 'button'.\nConsumers should override this role when:\n- The element is being used in a context where a different role is more appropriate.\n- Custom behaviors are implemented that require a specific ARIA role for accessibility purposes.",
324
+ "default": "'button'",
325
+ "attribute": "role",
326
+ "reflects": true,
327
+ "type": {
328
+ "text": "string"
329
+ },
330
+ "inheritedFrom": {
331
+ "name": "Buttonsimple",
332
+ "module": "components/buttonsimple/buttonsimple.component.js"
333
+ }
285
334
  },
286
335
  {
287
- "description": "The foreground color of the error badge.",
288
- "name": "--mdc-badge-error-foreground-color"
336
+ "kind": "field",
337
+ "name": "type",
338
+ "type": {
339
+ "text": "ButtonType"
340
+ },
341
+ "description": "This property defines the type attribute for the button element.\nThe type attribute specifies the behavior of the button when it is clicked.\n- **submit**: The button submits the form data to the server.\n- **reset**: The button resets the form data to its initial state.\n- **button**: The button does nothing when clicked.",
342
+ "default": "button",
343
+ "attribute": "type",
344
+ "reflects": true,
345
+ "inheritedFrom": {
346
+ "name": "Buttonsimple",
347
+ "module": "components/buttonsimple/buttonsimple.component.js"
348
+ }
289
349
  },
290
350
  {
291
- "description": "The background color of the error badge.",
292
- "name": "--mdc-badge-error-background-color"
351
+ "kind": "field",
352
+ "name": "src",
353
+ "type": {
354
+ "text": "string | undefined"
355
+ },
356
+ "description": "The src is the url which will be used to display the avatar.\nWhen the src is loading, we will display the initials as a placeholder.",
357
+ "attribute": "src",
358
+ "inheritedFrom": {
359
+ "name": "AvatarComponentMixin",
360
+ "module": "utils/mixins/AvatarComponentMixin.js"
361
+ }
293
362
  },
294
- {
295
- "description": "The background color of the badge overlay.",
296
- "name": "--mdc-badge-overlay-background-color"
297
- }
298
- ],
299
- "members": [
300
363
  {
301
364
  "kind": "field",
302
- "name": "type",
365
+ "name": "initials",
303
366
  "type": {
304
- "text": "BadgeType | undefined"
367
+ "text": "string | undefined"
305
368
  },
306
- "description": "Type of the badge\nCan be `dot` (notification) , `icon`, `counter`, `success`, `warning` or `error`.",
307
- "attribute": "type",
308
- "reflects": true
369
+ "description": "The initials to be displayed for the avatar.",
370
+ "attribute": "initials",
371
+ "inheritedFrom": {
372
+ "name": "AvatarComponentMixin",
373
+ "module": "utils/mixins/AvatarComponentMixin.js"
374
+ }
309
375
  },
310
376
  {
311
377
  "kind": "field",
312
- "name": "iconName",
378
+ "name": "presence",
313
379
  "type": {
314
- "text": "IconNames | undefined"
380
+ "text": "PresenceType | undefined"
315
381
  },
316
- "description": "Name of the icon (= filename).\n\nIf no `icon-name` is provided, no icon will be rendered.",
317
- "attribute": "icon-name"
382
+ "description": "The presence is the status which can be used to display the\nactivity state of a user or a space within an avatar component.\n\nAcceptable values include:\n- `active`\n- `away`\n- `away-calling`\n- `busy`\n- `dnd`\n- `meeting`\n- `on-call`\n- `on-device`\n- `on-mobile`\n- `pause`\n- `pto`\n- `presenting`\n- `quiet`\n- `scheduled`",
383
+ "attribute": "presence",
384
+ "inheritedFrom": {
385
+ "name": "AvatarComponentMixin",
386
+ "module": "utils/mixins/AvatarComponentMixin.js"
387
+ }
318
388
  },
319
389
  {
320
390
  "kind": "field",
321
- "name": "variant",
391
+ "name": "size",
322
392
  "type": {
323
- "text": "IconVariant"
393
+ "text": "ButtonSize"
324
394
  },
325
- "description": "Type of the variant can be `primary` or `secondary`.\nIt defines the background and foreground color of the icon.",
326
- "default": "primary",
327
- "attribute": "variant",
328
- "reflects": true
395
+ "description": "Acceptable values include (size in px unit):\n- 24\n- 32\n- 48\n- 64\n- 72\n- 88\n- 124",
396
+ "default": "32",
397
+ "attribute": "size",
398
+ "reflects": true,
399
+ "inheritedFrom": {
400
+ "name": "Buttonsimple",
401
+ "module": "components/buttonsimple/buttonsimple.component.js"
402
+ }
329
403
  },
330
404
  {
331
405
  "kind": "field",
332
- "name": "counter",
406
+ "name": "iconName",
333
407
  "type": {
334
- "text": "number | undefined"
408
+ "text": "IconNames | undefined"
335
409
  },
336
- "description": "Counter is the number which can be provided in the badge.",
337
- "attribute": "counter"
410
+ "description": "Name of the icon to be displayed inside the Avatar.\nMust be a valid icon name.",
411
+ "attribute": "icon-name",
412
+ "inheritedFrom": {
413
+ "name": "AvatarComponentMixin",
414
+ "module": "utils/mixins/AvatarComponentMixin.js"
415
+ }
338
416
  },
339
417
  {
340
418
  "kind": "field",
341
- "name": "maxCounter",
419
+ "name": "counter",
342
420
  "type": {
343
- "text": "number"
421
+ "text": "number | undefined"
344
422
  },
345
- "description": "The maximum number can be set up to 999, anything above that will be rendered as _999+_.\nThe max counter can be `9`, `99` or `999`.",
346
- "default": "99",
347
- "attribute": "max-counter",
348
- "reflects": true
423
+ "description": "The counter is the number which can be displayed on the avatar.\nThe maximum number is 99 and if the given number is greater than 99,\nthen the avatar will be displayed as `99+`.\nIf the given number is a negative number,\nthen the avatar will be displayed as `0`.",
424
+ "attribute": "counter",
425
+ "inheritedFrom": {
426
+ "name": "AvatarComponentMixin",
427
+ "module": "utils/mixins/AvatarComponentMixin.js"
428
+ }
349
429
  },
350
430
  {
351
431
  "kind": "field",
352
- "name": "overlay",
432
+ "name": "isTyping",
353
433
  "type": {
354
434
  "text": "boolean"
355
435
  },
356
436
  "default": "false",
357
- "description": "Overlay is to add a thin outline to the badge.\nThis will help distinguish between the badge and the button,\nwhere the badge will be layered on top of a button.",
358
- "attribute": "overlay"
437
+ "description": "Represents the typing indicator when the user is typing.",
438
+ "attribute": "is-typing",
439
+ "inheritedFrom": {
440
+ "name": "AvatarComponentMixin",
441
+ "module": "utils/mixins/AvatarComponentMixin.js"
442
+ }
359
443
  },
360
444
  {
361
445
  "kind": "field",
362
- "name": "ariaLabel",
446
+ "name": "tabIndex",
363
447
  "type": {
364
- "text": "string | null"
448
+ "text": "number"
365
449
  },
366
- "default": "null",
367
- "description": "Aria-label attribute to be set for accessibility",
368
- "attribute": "aria-label"
450
+ "default": "0",
451
+ "description": "This property specifies the tab order of the element.",
452
+ "attribute": "tabIndex",
453
+ "reflects": true,
454
+ "inheritedFrom": {
455
+ "name": "TabIndexMixin",
456
+ "module": "utils/mixins/TabIndexMixin.js"
457
+ }
369
458
  },
370
459
  {
371
460
  "kind": "method",
372
- "name": "getCounterText",
461
+ "name": "executeAction",
462
+ "privacy": "private",
463
+ "inheritedFrom": {
464
+ "name": "Buttonsimple",
465
+ "module": "components/buttonsimple/buttonsimple.component.js"
466
+ }
467
+ },
468
+ {
469
+ "kind": "method",
470
+ "name": "setAriaPressed",
373
471
  "privacy": "private",
374
- "return": {
375
- "type": {
376
- "text": ""
377
- }
378
- },
379
472
  "parameters": [
380
473
  {
381
- "name": "maxCounter",
474
+ "name": "element",
382
475
  "type": {
383
- "text": "number"
476
+ "text": "HTMLElement"
384
477
  },
385
- "description": "the maximum limit which can be displayed on the badge"
478
+ "description": "The target element."
386
479
  },
387
480
  {
388
- "name": "counter",
389
- "optional": true,
481
+ "name": "active",
390
482
  "type": {
391
- "text": "number"
483
+ "text": "boolean"
392
484
  },
393
- "description": "the number to be displayed on the badge"
485
+ "description": "The active state."
394
486
  }
395
487
  ],
396
- "description": "If `type` is set to `counter` and if `counter` is greater than `maxCounter`,\nthen it will return a string the maxCounter value as string.\nOtherwise, it will return a string representation of `counter`.\nIf `counter` is not a number, it will return an empty string."
397
- },
398
- {
399
- "kind": "method",
400
- "name": "getBadgeIcon",
488
+ "description": "Sets the aria-pressed attribute based on the active state.",
489
+ "inheritedFrom": {
490
+ "name": "Buttonsimple",
491
+ "module": "components/buttonsimple/buttonsimple.component.js"
492
+ }
493
+ },
494
+ {
495
+ "kind": "method",
496
+ "name": "setSoftDisabled",
401
497
  "privacy": "private",
402
- "return": {
403
- "type": {
404
- "text": ""
405
- }
406
- },
407
498
  "parameters": [
408
499
  {
409
- "name": "iconName",
500
+ "name": "element",
410
501
  "type": {
411
- "text": "string"
502
+ "text": "HTMLElement"
412
503
  },
413
- "description": "the name of the icon from the icon set"
504
+ "description": "The button element."
414
505
  },
415
506
  {
416
- "name": "backgroundClassPostfix",
507
+ "name": "softDisabled",
417
508
  "type": {
418
- "text": "string"
509
+ "text": "boolean"
419
510
  },
420
- "description": "postfix for the class to style the badge icon."
511
+ "description": "The soft-disabled state."
421
512
  }
422
513
  ],
423
- "description": "Method to generate the badge icon."
514
+ "description": "Sets the soft-disabled attribute for the button.\nWhen soft-disabled, the button looks to be disabled but remains focusable and clickable.\nAlso sets/removes aria-disabled attribute.",
515
+ "inheritedFrom": {
516
+ "name": "Buttonsimple",
517
+ "module": "components/buttonsimple/buttonsimple.component.js"
518
+ }
424
519
  },
425
520
  {
426
521
  "kind": "method",
427
- "name": "getBadgeDot",
522
+ "name": "setDisabled",
428
523
  "privacy": "private",
429
- "return": {
430
- "type": {
431
- "text": ""
524
+ "parameters": [
525
+ {
526
+ "name": "element",
527
+ "type": {
528
+ "text": "HTMLElement"
529
+ },
530
+ "description": "The button element."
531
+ },
532
+ {
533
+ "name": "disabled",
534
+ "type": {
535
+ "text": "boolean"
536
+ },
537
+ "description": "The disabled state."
432
538
  }
433
- },
434
- "description": "Method to generate the badge dot template."
539
+ ],
540
+ "description": "Sets the disabled attribute for the button.\nWhen disabled, the button is not focusable or clickable, and tabindex is set to -1.\nThe previous tabindex is stored and restored when enabled.\nAlso sets/removes aria-disabled attribute.",
541
+ "inheritedFrom": {
542
+ "name": "Buttonsimple",
543
+ "module": "components/buttonsimple/buttonsimple.component.js"
544
+ }
435
545
  },
436
546
  {
437
547
  "kind": "method",
438
- "name": "getBadgeCounterText",
548
+ "name": "triggerClickEvent",
439
549
  "privacy": "private",
440
- "return": {
441
- "type": {
442
- "text": ""
443
- }
444
- },
445
- "description": "Method to generate the badge text and counter template."
550
+ "inheritedFrom": {
551
+ "name": "Buttonsimple",
552
+ "module": "components/buttonsimple/buttonsimple.component.js"
553
+ }
446
554
  },
447
555
  {
448
556
  "kind": "method",
449
- "name": "setRoleByAriaLabel",
557
+ "name": "handleKeyDown",
450
558
  "privacy": "private",
451
- "return": {
452
- "type": {
453
- "text": "void"
559
+ "parameters": [
560
+ {
561
+ "name": "event",
562
+ "type": {
563
+ "text": "KeyboardEvent"
564
+ },
565
+ "description": "The keyboard event."
454
566
  }
455
- },
456
- "description": "Method to set the role based on the aria-label provided.\nIf the aria-label is provided, the role of the element will be 'img'.\nOtherwise, the role will be null."
567
+ ],
568
+ "description": "Handles the keydown event on the button.\nIf the key is 'Enter' or 'Space', the button is pressed.\nIf the key is 'Enter', the button is pressed. The native HTML button works in the same way.",
569
+ "inheritedFrom": {
570
+ "name": "Buttonsimple",
571
+ "module": "components/buttonsimple/buttonsimple.component.js"
572
+ }
457
573
  },
458
574
  {
459
575
  "kind": "method",
460
- "name": "getBadgeContentBasedOnType",
576
+ "name": "handleKeyUp",
461
577
  "privacy": "private",
462
- "return": {
463
- "type": {
464
- "text": ""
578
+ "parameters": [
579
+ {
580
+ "name": "event",
581
+ "type": {
582
+ "text": "KeyboardEvent"
583
+ },
584
+ "description": "The keyboard event."
465
585
  }
466
- },
467
- "description": "Generates the badge content based on the badge type.\nUtilizes various helper methods to create the appropriate badge template based on the\ncurrent badge type. Supports 'dot', 'icon', 'counter', 'success', 'warning', and 'error'\ntypes, returning the corresponding template result for each type."
586
+ ],
587
+ "description": "Handles the keyup event on the button.\nIf the key is 'Enter' or 'Space', the button is clicked.\nIf the key is 'Space', the button is pressed. The native HTML button works in the same way.",
588
+ "inheritedFrom": {
589
+ "name": "Buttonsimple",
590
+ "module": "components/buttonsimple/buttonsimple.component.js"
591
+ }
468
592
  }
469
593
  ],
470
594
  "attributes": [
471
595
  {
472
- "name": "type",
596
+ "name": "aria-label",
473
597
  "type": {
474
- "text": "BadgeType | undefined"
598
+ "text": "string | null"
475
599
  },
476
- "description": "Type of the badge\nCan be `dot` (notification) , `icon`, `counter`, `success`, `warning` or `error`.",
477
- "fieldName": "type"
600
+ "default": "null",
601
+ "description": "Aria-label attribute to be set for accessibility",
602
+ "fieldName": "ariaLabel"
478
603
  },
479
604
  {
480
- "name": "icon-name",
605
+ "name": "src",
481
606
  "type": {
482
- "text": "IconNames | undefined"
607
+ "text": "string | undefined"
483
608
  },
484
- "description": "Name of the icon (= filename).\n\nIf no `icon-name` is provided, no icon will be rendered.",
485
- "fieldName": "iconName"
609
+ "description": "The src is the url which will be used to display the avatar.\nWhen the src is loading, we will display the initials as a placeholder.",
610
+ "fieldName": "src",
611
+ "inheritedFrom": {
612
+ "name": "AvatarComponentMixin",
613
+ "module": "src/utils/mixins/AvatarComponentMixin.ts"
614
+ }
486
615
  },
487
616
  {
488
- "name": "variant",
617
+ "name": "initials",
489
618
  "type": {
490
- "text": "IconVariant"
619
+ "text": "string | undefined"
491
620
  },
492
- "description": "Type of the variant can be `primary` or `secondary`.\nIt defines the background and foreground color of the icon.",
493
- "default": "primary",
494
- "fieldName": "variant"
621
+ "description": "The initials to be displayed for the avatar.",
622
+ "fieldName": "initials",
623
+ "inheritedFrom": {
624
+ "name": "AvatarComponentMixin",
625
+ "module": "src/utils/mixins/AvatarComponentMixin.ts"
626
+ }
495
627
  },
496
628
  {
497
- "name": "counter",
629
+ "name": "presence",
498
630
  "type": {
499
- "text": "number | undefined"
631
+ "text": "PresenceType | undefined"
500
632
  },
501
- "description": "Counter is the number which can be provided in the badge.",
502
- "fieldName": "counter"
633
+ "description": "The presence is the status which can be used to display the\nactivity state of a user or a space within an avatar component.\n\nAcceptable values include:\n- `active`\n- `away`\n- `away-calling`\n- `busy`\n- `dnd`\n- `meeting`\n- `on-call`\n- `on-device`\n- `on-mobile`\n- `pause`\n- `pto`\n- `presenting`\n- `quiet`\n- `scheduled`",
634
+ "fieldName": "presence",
635
+ "inheritedFrom": {
636
+ "name": "AvatarComponentMixin",
637
+ "module": "src/utils/mixins/AvatarComponentMixin.ts"
638
+ }
503
639
  },
504
640
  {
505
- "name": "max-counter",
641
+ "name": "size",
506
642
  "type": {
507
- "text": "number"
643
+ "text": "ButtonSize"
508
644
  },
509
- "description": "The maximum number can be set up to 999, anything above that will be rendered as _999+_.\nThe max counter can be `9`, `99` or `999`.",
510
- "default": "99",
511
- "fieldName": "maxCounter"
645
+ "description": "Acceptable values include (size in px unit):\n- 24\n- 32\n- 48\n- 64\n- 72\n- 88\n- 124",
646
+ "default": "32",
647
+ "fieldName": "size",
648
+ "inheritedFrom": {
649
+ "name": "Buttonsimple",
650
+ "module": "src/components/buttonsimple/buttonsimple.component.ts"
651
+ }
512
652
  },
513
653
  {
514
- "name": "overlay",
654
+ "name": "icon-name",
515
655
  "type": {
516
- "text": "boolean"
656
+ "text": "IconNames | undefined"
517
657
  },
518
- "default": "false",
519
- "description": "Overlay is to add a thin outline to the badge.\nThis will help distinguish between the badge and the button,\nwhere the badge will be layered on top of a button.",
520
- "fieldName": "overlay"
658
+ "description": "Name of the icon to be displayed inside the Avatar.\nMust be a valid icon name.",
659
+ "fieldName": "iconName",
660
+ "inheritedFrom": {
661
+ "name": "AvatarComponentMixin",
662
+ "module": "src/utils/mixins/AvatarComponentMixin.ts"
663
+ }
521
664
  },
522
665
  {
523
- "name": "aria-label",
524
- "type": {
525
- "text": "string | null"
526
- },
527
- "default": "null",
528
- "description": "Aria-label attribute to be set for accessibility",
529
- "fieldName": "ariaLabel"
530
- }
531
- ],
532
- "superclass": {
533
- "name": "Component",
534
- "module": "/src/models"
535
- },
536
- "tagName": "mdc-badge",
537
- "jsDoc": "/**\n * The `mdc-badge` component is a versatile UI element used to\n * display dot, icons, counters, success, warning and error type badge.\n *\n * Supported badge types:\n * - `dot`: Displays a dot notification badge with a blue color.\n * - `icon`: Displays a badge with a specified icon using the `icon-name` attribute.\n * - `counter`: Displays a badge with a counter value. If the counter exceeds the `max-counter`,\n * it shows `maxCounter+`. The maximum value of the counter is 999 and anything above that will be set to `999+`.\n * - `success`: Displays a success badge with a check circle icon and green color.\n * - `warning`: Displays a warning badge with a warning icon and yellow color.\n * - `error`: Displays a error badge with a error legacy icon and red color.\n *\n * For `icon`, `success`, `warning` and `error` types, the `mdc-icon` component is used to render the icon.\n *\n * For the `counter` type, the `mdc-text` component is used to render the counter value.\n *\n * @dependency mdc-icon\n * @dependency mdc-text\n *\n * @tagname mdc-badge\n *\n * @cssproperty --mdc-badge-primary-foreground-color - The foreground color of the primary badge.\n * @cssproperty --mdc-badge-primary-background-color - The background color of the primary badge.\n * @cssproperty --mdc-badge-secondary-foreground-color - The foreground color of the secondary badge.\n * @cssproperty --mdc-badge-secondary-background-color - The background color of the secondary badge.\n * @cssproperty --mdc-badge-success-foreground-color - The foreground color of the success badge.\n * @cssproperty --mdc-badge-success-background-color - The background color of the success badge.\n * @cssproperty --mdc-badge-warning-foreground-color - The foreground color of the warning badge.\n * @cssproperty --mdc-badge-warning-background-color - The background color of the warning badge.\n * @cssproperty --mdc-badge-error-foreground-color - The foreground color of the error badge.\n * @cssproperty --mdc-badge-error-background-color - The background color of the error badge.\n * @cssproperty --mdc-badge-overlay-background-color - The background color of the badge overlay.\n */",
538
- "customElement": true
539
- }
540
- ],
541
- "exports": [
542
- {
543
- "kind": "js",
544
- "name": "default",
545
- "declaration": {
546
- "name": "Badge",
547
- "module": "components/badge/badge.component.js"
548
- }
549
- }
550
- ]
551
- },
552
- {
553
- "kind": "javascript-module",
554
- "path": "components/avatarbutton/avatarbutton.component.js",
555
- "declarations": [
556
- {
557
- "kind": "class",
558
- "description": "The `mdc-avatarbutton` component is an interactable version of the `mdc-avatar` component.\n\nThis component is made by extending `buttonsimple` class.\nThe button component acts as a wrapper for the avatar component.",
559
- "name": "AvatarButton",
560
- "members": [
561
- {
562
- "kind": "field",
563
- "name": "ariaLabel",
666
+ "name": "counter",
564
667
  "type": {
565
- "text": "string | null"
668
+ "text": "number | undefined"
566
669
  },
567
- "default": "null",
568
- "description": "Aria-label attribute to be set for accessibility",
569
- "attribute": "aria-label"
570
- },
571
- {
572
- "kind": "method",
573
- "name": "setSize",
574
- "privacy": "private",
575
- "parameters": [
576
- {
577
- "name": "size",
578
- "type": {
579
- "text": "AvatarSize"
580
- }
581
- }
582
- ]
670
+ "description": "The counter is the number which can be displayed on the avatar.\nThe maximum number is 99 and if the given number is greater than 99,\nthen the avatar will be displayed as `99+`.\nIf the given number is a negative number,\nthen the avatar will be displayed as `0`.",
671
+ "fieldName": "counter",
672
+ "inheritedFrom": {
673
+ "name": "AvatarComponentMixin",
674
+ "module": "src/utils/mixins/AvatarComponentMixin.ts"
675
+ }
583
676
  },
584
677
  {
585
- "kind": "field",
586
- "name": "active",
678
+ "name": "is-typing",
587
679
  "type": {
588
680
  "text": "boolean"
589
681
  },
590
- "default": "undefined as unknown",
591
- "description": "The button's active state indicates whether it is currently toggled on (active) or off (inactive).\nWhen the active state is true, the button is considered to be in an active state, meaning it is toggled on.\nConversely, when the active state is false, the button is in an inactive state, indicating it is toggled off.",
592
- "attribute": "active",
682
+ "default": "false",
683
+ "description": "Represents the typing indicator when the user is typing.",
684
+ "fieldName": "isTyping",
593
685
  "inheritedFrom": {
594
- "name": "Buttonsimple",
595
- "module": "components/buttonsimple/buttonsimple.component.js"
686
+ "name": "AvatarComponentMixin",
687
+ "module": "src/utils/mixins/AvatarComponentMixin.ts"
688
+ }
689
+ },
690
+ {
691
+ "name": "tabIndex",
692
+ "type": {
693
+ "text": "number"
694
+ },
695
+ "default": "0",
696
+ "description": "This property specifies the tab order of the element.",
697
+ "fieldName": "tabIndex",
698
+ "inheritedFrom": {
699
+ "name": "TabIndexMixin",
700
+ "module": "src/utils/mixins/TabIndexMixin.ts"
596
701
  }
597
702
  },
598
703
  {
599
- "kind": "field",
600
704
  "name": "disabled",
601
705
  "type": {
602
706
  "text": "boolean"
603
707
  },
604
- "default": "undefined as unknown",
708
+ "default": "false",
605
709
  "description": "Indicates whether the component is disabled.\nWhen the component is disabled for user interaction; it is not focusable or clickable.",
606
- "attribute": "disabled",
607
- "reflects": true,
710
+ "fieldName": "disabled",
608
711
  "inheritedFrom": {
609
712
  "name": "DisabledMixin",
610
- "module": "utils/mixins/DisabledMixin.js"
713
+ "module": "src/utils/mixins/DisabledMixin.ts"
611
714
  }
612
715
  },
613
716
  {
614
- "kind": "field",
615
- "name": "softDisabled",
717
+ "name": "active",
616
718
  "type": {
617
719
  "text": "boolean"
618
720
  },
619
- "default": "undefined as unknown",
721
+ "default": "false",
722
+ "description": "The button's active state indicates whether it is currently toggled on (active) or off (inactive).\nWhen the active state is true, the button is considered to be in an active state, meaning it is toggled on.\nConversely, when the active state is false, the button is in an inactive state, indicating it is toggled off.",
723
+ "fieldName": "active",
724
+ "inheritedFrom": {
725
+ "name": "Buttonsimple",
726
+ "module": "src/components/buttonsimple/buttonsimple.component.ts"
727
+ }
728
+ },
729
+ {
730
+ "name": "soft-disabled",
731
+ "type": {
732
+ "text": "boolean"
733
+ },
734
+ "default": "false",
620
735
  "description": "Indicates whether the button is soft disabled.\nWhen set to `true`, the button appears visually disabled but still allows\nfocus, click, and keyboard actions to be passed through.\n\n**Important:** When using soft disabled, consumers must ensure that\nthe button behaves like a disabled button, allowing only focus and\npreventing any interactions (clicks or keyboard actions) from triggering unintended actions.",
621
- "attribute": "soft-disabled",
736
+ "fieldName": "softDisabled",
622
737
  "inheritedFrom": {
623
738
  "name": "Buttonsimple",
624
- "module": "components/buttonsimple/buttonsimple.component.js"
739
+ "module": "src/components/buttonsimple/buttonsimple.component.ts"
625
740
  }
626
741
  },
627
742
  {
628
- "kind": "field",
629
743
  "name": "role",
630
744
  "description": "This property defines the ARIA role for the element. By default, it is set to 'button'.\nConsumers should override this role when:\n- The element is being used in a context where a different role is more appropriate.\n- Custom behaviors are implemented that require a specific ARIA role for accessibility purposes.",
631
- "default": "'button'",
632
- "attribute": "role",
633
- "reflects": true,
634
- "type": {
635
- "text": "string"
636
- },
745
+ "default": "button",
746
+ "fieldName": "role",
637
747
  "inheritedFrom": {
638
748
  "name": "Buttonsimple",
639
- "module": "components/buttonsimple/buttonsimple.component.js"
749
+ "module": "src/components/buttonsimple/buttonsimple.component.ts"
640
750
  }
641
751
  },
642
752
  {
643
- "kind": "field",
644
753
  "name": "type",
645
754
  "type": {
646
755
  "text": "ButtonType"
647
756
  },
648
757
  "description": "This property defines the type attribute for the button element.\nThe type attribute specifies the behavior of the button when it is clicked.\n- **submit**: The button submits the form data to the server.\n- **reset**: The button resets the form data to its initial state.\n- **button**: The button does nothing when clicked.",
649
758
  "default": "button",
650
- "attribute": "type",
651
- "reflects": true,
759
+ "fieldName": "type",
652
760
  "inheritedFrom": {
653
761
  "name": "Buttonsimple",
654
- "module": "components/buttonsimple/buttonsimple.component.js"
762
+ "module": "src/components/buttonsimple/buttonsimple.component.ts"
655
763
  }
764
+ }
765
+ ],
766
+ "mixins": [
767
+ {
768
+ "name": "AvatarComponentMixin",
769
+ "module": "/src/utils/mixins/AvatarComponentMixin"
770
+ }
771
+ ],
772
+ "superclass": {
773
+ "name": "Buttonsimple",
774
+ "module": "/src/components/buttonsimple/buttonsimple.component"
775
+ },
776
+ "tagName": "mdc-avatarbutton",
777
+ "jsDoc": "/**\n * The `mdc-avatarbutton` component is an interactable version of the `mdc-avatar` component.\n *\n * This component is made by extending `buttonsimple` class.\n * The button component acts as a wrapper for the avatar component.\n *\n * @dependency mdc-avatar\n *\n * @tagname mdc-avatarbutton\n */",
778
+ "customElement": true
779
+ }
780
+ ],
781
+ "exports": [
782
+ {
783
+ "kind": "js",
784
+ "name": "default",
785
+ "declaration": {
786
+ "name": "AvatarButton",
787
+ "module": "components/avatarbutton/avatarbutton.component.js"
788
+ }
789
+ }
790
+ ]
791
+ },
792
+ {
793
+ "kind": "javascript-module",
794
+ "path": "components/badge/badge.component.js",
795
+ "declarations": [
796
+ {
797
+ "kind": "class",
798
+ "description": "The `mdc-badge` component is a versatile UI element used to\ndisplay dot, icons, counters, success, warning and error type badge.\n\nSupported badge types:\n- `dot`: Displays a dot notification badge with a blue color.\n- `icon`: Displays a badge with a specified icon using the `icon-name` attribute.\n- `counter`: Displays a badge with a counter value. If the counter exceeds the `max-counter`,\nit shows `maxCounter+`. The maximum value of the counter is 999 and anything above that will be set to `999+`.\n- `success`: Displays a success badge with a check circle icon and green color.\n- `warning`: Displays a warning badge with a warning icon and yellow color.\n- `error`: Displays a error badge with a error legacy icon and red color.\n\nFor `icon`, `success`, `warning` and `error` types, the `mdc-icon` component is used to render the icon.\n\nFor the `counter` type, the `mdc-text` component is used to render the counter value.",
799
+ "name": "Badge",
800
+ "cssProperties": [
801
+ {
802
+ "description": "The foreground color of the primary badge.",
803
+ "name": "--mdc-badge-primary-foreground-color"
656
804
  },
657
805
  {
658
- "kind": "field",
659
- "name": "src",
660
- "type": {
661
- "text": "string | undefined"
662
- },
663
- "description": "The src is the url which will be used to display the avatar.\nWhen the src is loading, we will display the initials as a placeholder.",
664
- "attribute": "src",
665
- "inheritedFrom": {
666
- "name": "AvatarComponentMixin",
667
- "module": "utils/mixins/AvatarComponentMixin.js"
668
- }
806
+ "description": "The background color of the primary badge.",
807
+ "name": "--mdc-badge-primary-background-color"
808
+ },
809
+ {
810
+ "description": "The foreground color of the secondary badge.",
811
+ "name": "--mdc-badge-secondary-foreground-color"
812
+ },
813
+ {
814
+ "description": "The background color of the secondary badge.",
815
+ "name": "--mdc-badge-secondary-background-color"
816
+ },
817
+ {
818
+ "description": "The foreground color of the success badge.",
819
+ "name": "--mdc-badge-success-foreground-color"
820
+ },
821
+ {
822
+ "description": "The background color of the success badge.",
823
+ "name": "--mdc-badge-success-background-color"
824
+ },
825
+ {
826
+ "description": "The foreground color of the warning badge.",
827
+ "name": "--mdc-badge-warning-foreground-color"
828
+ },
829
+ {
830
+ "description": "The background color of the warning badge.",
831
+ "name": "--mdc-badge-warning-background-color"
832
+ },
833
+ {
834
+ "description": "The foreground color of the error badge.",
835
+ "name": "--mdc-badge-error-foreground-color"
836
+ },
837
+ {
838
+ "description": "The background color of the error badge.",
839
+ "name": "--mdc-badge-error-background-color"
669
840
  },
841
+ {
842
+ "description": "The background color of the badge overlay.",
843
+ "name": "--mdc-badge-overlay-background-color"
844
+ }
845
+ ],
846
+ "members": [
670
847
  {
671
848
  "kind": "field",
672
- "name": "initials",
849
+ "name": "type",
673
850
  "type": {
674
- "text": "string | undefined"
851
+ "text": "BadgeType | undefined"
675
852
  },
676
- "description": "The initials to be displayed for the avatar.",
677
- "attribute": "initials",
678
- "inheritedFrom": {
679
- "name": "AvatarComponentMixin",
680
- "module": "utils/mixins/AvatarComponentMixin.js"
681
- }
853
+ "description": "Type of the badge\nCan be `dot` (notification) , `icon`, `counter`, `success`, `warning` or `error`.",
854
+ "attribute": "type",
855
+ "reflects": true
682
856
  },
683
857
  {
684
858
  "kind": "field",
685
- "name": "presence",
859
+ "name": "iconName",
686
860
  "type": {
687
- "text": "PresenceType | undefined"
861
+ "text": "IconNames | undefined"
688
862
  },
689
- "description": "The presence is the status which can be used to display the\nactivity state of a user or a space within an avatar component.\n\nAcceptable values include:\n- `active`\n- `away`\n- `away-calling`\n- `busy`\n- `dnd`\n- `meeting`\n- `on-call`\n- `on-device`\n- `on-mobile`\n- `pause`\n- `pto`\n- `presenting`\n- `quiet`\n- `scheduled`",
690
- "attribute": "presence",
691
- "inheritedFrom": {
692
- "name": "AvatarComponentMixin",
693
- "module": "utils/mixins/AvatarComponentMixin.js"
694
- }
863
+ "description": "Name of the icon (= filename).\n\nIf no `icon-name` is provided, no icon will be rendered.",
864
+ "attribute": "icon-name"
695
865
  },
696
866
  {
697
867
  "kind": "field",
698
- "name": "size",
868
+ "name": "variant",
699
869
  "type": {
700
- "text": "ButtonSize"
870
+ "text": "IconVariant"
701
871
  },
702
- "description": "Acceptable values include (size in px unit):\n- 24\n- 32\n- 48\n- 64\n- 72\n- 88\n- 124",
703
- "default": "32",
704
- "attribute": "size",
705
- "reflects": true,
706
- "inheritedFrom": {
707
- "name": "Buttonsimple",
708
- "module": "components/buttonsimple/buttonsimple.component.js"
709
- }
872
+ "description": "Type of the variant can be `primary` or `secondary`.\nIt defines the background and foreground color of the icon.",
873
+ "default": "primary",
874
+ "attribute": "variant",
875
+ "reflects": true
710
876
  },
711
877
  {
712
878
  "kind": "field",
713
- "name": "iconName",
879
+ "name": "counter",
714
880
  "type": {
715
- "text": "IconNames | undefined"
881
+ "text": "number | undefined"
716
882
  },
717
- "description": "Name of the icon to be displayed inside the Avatar.\nMust be a valid icon name.",
718
- "attribute": "icon-name",
719
- "inheritedFrom": {
720
- "name": "AvatarComponentMixin",
721
- "module": "utils/mixins/AvatarComponentMixin.js"
722
- }
883
+ "description": "Counter is the number which can be provided in the badge.",
884
+ "attribute": "counter"
723
885
  },
724
886
  {
725
887
  "kind": "field",
726
- "name": "counter",
888
+ "name": "maxCounter",
727
889
  "type": {
728
- "text": "number | undefined"
890
+ "text": "number"
729
891
  },
730
- "description": "The counter is the number which can be displayed on the avatar.\nThe maximum number is 99 and if the given number is greater than 99,\nthen the avatar will be displayed as `99+`.\nIf the given number is a negative number,\nthen the avatar will be displayed as `0`.",
731
- "attribute": "counter",
732
- "inheritedFrom": {
733
- "name": "AvatarComponentMixin",
734
- "module": "utils/mixins/AvatarComponentMixin.js"
735
- }
892
+ "description": "The maximum number can be set up to 999, anything above that will be rendered as _999+_.\nThe max counter can be `9`, `99` or `999`.",
893
+ "default": "99",
894
+ "attribute": "max-counter",
895
+ "reflects": true
736
896
  },
737
897
  {
738
898
  "kind": "field",
739
- "name": "isTyping",
899
+ "name": "overlay",
740
900
  "type": {
741
901
  "text": "boolean"
742
902
  },
743
903
  "default": "false",
744
- "description": "Represents the typing indicator when the user is typing.",
745
- "attribute": "is-typing",
746
- "inheritedFrom": {
747
- "name": "AvatarComponentMixin",
748
- "module": "utils/mixins/AvatarComponentMixin.js"
749
- }
904
+ "description": "Overlay is to add a thin outline to the badge.\nThis will help distinguish between the badge and the button,\nwhere the badge will be layered on top of a button.",
905
+ "attribute": "overlay"
750
906
  },
751
907
  {
752
908
  "kind": "field",
753
- "name": "tabIndex",
909
+ "name": "ariaLabel",
754
910
  "type": {
755
- "text": "number"
911
+ "text": "string | null"
756
912
  },
757
- "default": "0",
758
- "description": "This property specifies the tab order of the element.",
759
- "attribute": "tabIndex",
760
- "reflects": true,
761
- "inheritedFrom": {
762
- "name": "TabIndexMixin",
763
- "module": "utils/mixins/TabIndexMixin.js"
764
- }
913
+ "default": "null",
914
+ "description": "Aria-label attribute to be set for accessibility",
915
+ "attribute": "aria-label"
765
916
  },
766
917
  {
767
918
  "kind": "method",
768
- "name": "executeAction",
769
- "privacy": "private",
770
- "inheritedFrom": {
771
- "name": "Buttonsimple",
772
- "module": "components/buttonsimple/buttonsimple.component.js"
773
- }
774
- },
775
- {
776
- "kind": "method",
777
- "name": "setAriaPressed",
919
+ "name": "getCounterText",
778
920
  "privacy": "private",
921
+ "return": {
922
+ "type": {
923
+ "text": ""
924
+ }
925
+ },
779
926
  "parameters": [
780
927
  {
781
- "name": "element",
928
+ "name": "maxCounter",
782
929
  "type": {
783
- "text": "HTMLElement"
930
+ "text": "number"
784
931
  },
785
- "description": "The target element."
932
+ "description": "the maximum limit which can be displayed on the badge"
786
933
  },
787
934
  {
788
- "name": "active",
935
+ "name": "counter",
936
+ "optional": true,
789
937
  "type": {
790
- "text": "boolean"
938
+ "text": "number"
791
939
  },
792
- "description": "The active state."
940
+ "description": "the number to be displayed on the badge"
793
941
  }
794
942
  ],
795
- "description": "Sets the aria-pressed attribute based on the active state.",
796
- "inheritedFrom": {
797
- "name": "Buttonsimple",
798
- "module": "components/buttonsimple/buttonsimple.component.js"
799
- }
943
+ "description": "If `type` is set to `counter` and if `counter` is greater than `maxCounter`,\nthen it will return a string the maxCounter value as string.\nOtherwise, it will return a string representation of `counter`.\nIf `counter` is not a number, it will return an empty string."
800
944
  },
801
945
  {
802
946
  "kind": "method",
803
- "name": "setSoftDisabled",
947
+ "name": "getBadgeIcon",
804
948
  "privacy": "private",
949
+ "return": {
950
+ "type": {
951
+ "text": ""
952
+ }
953
+ },
805
954
  "parameters": [
806
955
  {
807
- "name": "element",
956
+ "name": "iconName",
808
957
  "type": {
809
- "text": "HTMLElement"
958
+ "text": "string"
810
959
  },
811
- "description": "The button element."
960
+ "description": "the name of the icon from the icon set"
812
961
  },
813
962
  {
814
- "name": "softDisabled",
963
+ "name": "backgroundClassPostfix",
815
964
  "type": {
816
- "text": "boolean"
965
+ "text": "string"
817
966
  },
818
- "description": "The soft-disabled state."
967
+ "description": "postfix for the class to style the badge icon."
819
968
  }
820
969
  ],
821
- "description": "Sets the soft-disabled attribute for the button.\nWhen soft-disabled, the button looks to be disabled but remains focusable and clickable.\nAlso sets/removes aria-disabled attribute.",
822
- "inheritedFrom": {
823
- "name": "Buttonsimple",
824
- "module": "components/buttonsimple/buttonsimple.component.js"
825
- }
970
+ "description": "Method to generate the badge icon."
826
971
  },
827
972
  {
828
973
  "kind": "method",
829
- "name": "setDisabled",
974
+ "name": "getBadgeDot",
830
975
  "privacy": "private",
831
- "parameters": [
832
- {
833
- "name": "element",
834
- "type": {
835
- "text": "HTMLElement"
836
- },
837
- "description": "The button element."
838
- },
839
- {
840
- "name": "disabled",
841
- "type": {
842
- "text": "boolean"
843
- },
844
- "description": "The disabled state."
976
+ "return": {
977
+ "type": {
978
+ "text": ""
845
979
  }
846
- ],
847
- "description": "Sets the disabled attribute for the button.\nWhen disabled, the button is not focusable or clickable, and tabindex is set to -1.\nThe previous tabindex is stored and restored when enabled.\nAlso sets/removes aria-disabled attribute.",
848
- "inheritedFrom": {
849
- "name": "Buttonsimple",
850
- "module": "components/buttonsimple/buttonsimple.component.js"
851
- }
980
+ },
981
+ "description": "Method to generate the badge dot template."
852
982
  },
853
983
  {
854
984
  "kind": "method",
855
- "name": "triggerClickEvent",
985
+ "name": "getBadgeCounterText",
856
986
  "privacy": "private",
857
- "inheritedFrom": {
858
- "name": "Buttonsimple",
859
- "module": "components/buttonsimple/buttonsimple.component.js"
860
- }
987
+ "return": {
988
+ "type": {
989
+ "text": ""
990
+ }
991
+ },
992
+ "description": "Method to generate the badge text and counter template."
861
993
  },
862
994
  {
863
995
  "kind": "method",
864
- "name": "handleKeyDown",
996
+ "name": "setRoleByAriaLabel",
865
997
  "privacy": "private",
866
- "parameters": [
867
- {
868
- "name": "event",
869
- "type": {
870
- "text": "KeyboardEvent"
871
- },
872
- "description": "The keyboard event."
998
+ "return": {
999
+ "type": {
1000
+ "text": "void"
873
1001
  }
874
- ],
875
- "description": "Handles the keydown event on the button.\nIf the key is 'Enter' or 'Space', the button is pressed.\nIf the key is 'Enter', the button is pressed. The native HTML button works in the same way.",
876
- "inheritedFrom": {
877
- "name": "Buttonsimple",
878
- "module": "components/buttonsimple/buttonsimple.component.js"
879
- }
1002
+ },
1003
+ "description": "Method to set the role based on the aria-label provided.\nIf the aria-label is provided, the role of the element will be 'img'.\nOtherwise, the role will be null."
880
1004
  },
881
1005
  {
882
1006
  "kind": "method",
883
- "name": "handleKeyUp",
1007
+ "name": "getBadgeContentBasedOnType",
884
1008
  "privacy": "private",
885
- "parameters": [
886
- {
887
- "name": "event",
888
- "type": {
889
- "text": "KeyboardEvent"
890
- },
891
- "description": "The keyboard event."
1009
+ "return": {
1010
+ "type": {
1011
+ "text": ""
892
1012
  }
893
- ],
894
- "description": "Handles the keyup event on the button.\nIf the key is 'Enter' or 'Space', the button is clicked.\nIf the key is 'Space', the button is pressed. The native HTML button works in the same way.",
895
- "inheritedFrom": {
896
- "name": "Buttonsimple",
897
- "module": "components/buttonsimple/buttonsimple.component.js"
898
- }
1013
+ },
1014
+ "description": "Generates the badge content based on the badge type.\nUtilizes various helper methods to create the appropriate badge template based on the\ncurrent badge type. Supports 'dot', 'icon', 'counter', 'success', 'warning', and 'error'\ntypes, returning the corresponding template result for each type."
899
1015
  }
900
1016
  ],
901
1017
  "attributes": [
902
1018
  {
903
- "name": "aria-label",
904
- "type": {
905
- "text": "string | null"
906
- },
907
- "default": "null",
908
- "description": "Aria-label attribute to be set for accessibility",
909
- "fieldName": "ariaLabel"
910
- },
911
- {
912
- "name": "src",
913
- "type": {
914
- "text": "string | undefined"
915
- },
916
- "description": "The src is the url which will be used to display the avatar.\nWhen the src is loading, we will display the initials as a placeholder.",
917
- "fieldName": "src",
918
- "inheritedFrom": {
919
- "name": "AvatarComponentMixin",
920
- "module": "src/utils/mixins/AvatarComponentMixin.ts"
921
- }
922
- },
923
- {
924
- "name": "initials",
925
- "type": {
926
- "text": "string | undefined"
927
- },
928
- "description": "The initials to be displayed for the avatar.",
929
- "fieldName": "initials",
930
- "inheritedFrom": {
931
- "name": "AvatarComponentMixin",
932
- "module": "src/utils/mixins/AvatarComponentMixin.ts"
933
- }
934
- },
935
- {
936
- "name": "presence",
937
- "type": {
938
- "text": "PresenceType | undefined"
939
- },
940
- "description": "The presence is the status which can be used to display the\nactivity state of a user or a space within an avatar component.\n\nAcceptable values include:\n- `active`\n- `away`\n- `away-calling`\n- `busy`\n- `dnd`\n- `meeting`\n- `on-call`\n- `on-device`\n- `on-mobile`\n- `pause`\n- `pto`\n- `presenting`\n- `quiet`\n- `scheduled`",
941
- "fieldName": "presence",
942
- "inheritedFrom": {
943
- "name": "AvatarComponentMixin",
944
- "module": "src/utils/mixins/AvatarComponentMixin.ts"
945
- }
946
- },
947
- {
948
- "name": "size",
1019
+ "name": "type",
949
1020
  "type": {
950
- "text": "ButtonSize"
1021
+ "text": "BadgeType | undefined"
951
1022
  },
952
- "description": "Acceptable values include (size in px unit):\n- 24\n- 32\n- 48\n- 64\n- 72\n- 88\n- 124",
953
- "default": "32",
954
- "fieldName": "size",
955
- "inheritedFrom": {
956
- "name": "Buttonsimple",
957
- "module": "src/components/buttonsimple/buttonsimple.component.ts"
958
- }
1023
+ "description": "Type of the badge\nCan be `dot` (notification) , `icon`, `counter`, `success`, `warning` or `error`.",
1024
+ "fieldName": "type"
959
1025
  },
960
1026
  {
961
1027
  "name": "icon-name",
962
1028
  "type": {
963
1029
  "text": "IconNames | undefined"
964
1030
  },
965
- "description": "Name of the icon to be displayed inside the Avatar.\nMust be a valid icon name.",
966
- "fieldName": "iconName",
967
- "inheritedFrom": {
968
- "name": "AvatarComponentMixin",
969
- "module": "src/utils/mixins/AvatarComponentMixin.ts"
970
- }
1031
+ "description": "Name of the icon (= filename).\n\nIf no `icon-name` is provided, no icon will be rendered.",
1032
+ "fieldName": "iconName"
971
1033
  },
972
1034
  {
973
- "name": "counter",
1035
+ "name": "variant",
974
1036
  "type": {
975
- "text": "number | undefined"
1037
+ "text": "IconVariant"
976
1038
  },
977
- "description": "The counter is the number which can be displayed on the avatar.\nThe maximum number is 99 and if the given number is greater than 99,\nthen the avatar will be displayed as `99+`.\nIf the given number is a negative number,\nthen the avatar will be displayed as `0`.",
978
- "fieldName": "counter",
979
- "inheritedFrom": {
980
- "name": "AvatarComponentMixin",
981
- "module": "src/utils/mixins/AvatarComponentMixin.ts"
982
- }
1039
+ "description": "Type of the variant can be `primary` or `secondary`.\nIt defines the background and foreground color of the icon.",
1040
+ "default": "primary",
1041
+ "fieldName": "variant"
983
1042
  },
984
1043
  {
985
- "name": "is-typing",
1044
+ "name": "counter",
986
1045
  "type": {
987
- "text": "boolean"
1046
+ "text": "number | undefined"
988
1047
  },
989
- "default": "false",
990
- "description": "Represents the typing indicator when the user is typing.",
991
- "fieldName": "isTyping",
992
- "inheritedFrom": {
993
- "name": "AvatarComponentMixin",
994
- "module": "src/utils/mixins/AvatarComponentMixin.ts"
995
- }
1048
+ "description": "Counter is the number which can be provided in the badge.",
1049
+ "fieldName": "counter"
996
1050
  },
997
1051
  {
998
- "name": "tabIndex",
1052
+ "name": "max-counter",
999
1053
  "type": {
1000
1054
  "text": "number"
1001
1055
  },
1002
- "default": "0",
1003
- "description": "This property specifies the tab order of the element.",
1004
- "fieldName": "tabIndex",
1005
- "inheritedFrom": {
1006
- "name": "TabIndexMixin",
1007
- "module": "src/utils/mixins/TabIndexMixin.ts"
1008
- }
1056
+ "description": "The maximum number can be set up to 999, anything above that will be rendered as _999+_.\nThe max counter can be `9`, `99` or `999`.",
1057
+ "default": "99",
1058
+ "fieldName": "maxCounter"
1009
1059
  },
1010
1060
  {
1011
- "name": "disabled",
1061
+ "name": "overlay",
1012
1062
  "type": {
1013
1063
  "text": "boolean"
1014
1064
  },
1015
1065
  "default": "false",
1016
- "description": "Indicates whether the component is disabled.\nWhen the component is disabled for user interaction; it is not focusable or clickable.",
1017
- "fieldName": "disabled",
1018
- "inheritedFrom": {
1019
- "name": "DisabledMixin",
1020
- "module": "src/utils/mixins/DisabledMixin.ts"
1021
- }
1066
+ "description": "Overlay is to add a thin outline to the badge.\nThis will help distinguish between the badge and the button,\nwhere the badge will be layered on top of a button.",
1067
+ "fieldName": "overlay"
1022
1068
  },
1023
1069
  {
1024
- "name": "active",
1070
+ "name": "aria-label",
1025
1071
  "type": {
1026
- "text": "boolean"
1072
+ "text": "string | null"
1027
1073
  },
1028
- "default": "false",
1029
- "description": "The button's active state indicates whether it is currently toggled on (active) or off (inactive).\nWhen the active state is true, the button is considered to be in an active state, meaning it is toggled on.\nConversely, when the active state is false, the button is in an inactive state, indicating it is toggled off.",
1030
- "fieldName": "active",
1031
- "inheritedFrom": {
1032
- "name": "Buttonsimple",
1033
- "module": "src/components/buttonsimple/buttonsimple.component.ts"
1034
- }
1035
- },
1036
- {
1037
- "name": "soft-disabled",
1038
- "type": {
1039
- "text": "boolean"
1040
- },
1041
- "default": "false",
1042
- "description": "Indicates whether the button is soft disabled.\nWhen set to `true`, the button appears visually disabled but still allows\nfocus, click, and keyboard actions to be passed through.\n\n**Important:** When using soft disabled, consumers must ensure that\nthe button behaves like a disabled button, allowing only focus and\npreventing any interactions (clicks or keyboard actions) from triggering unintended actions.",
1043
- "fieldName": "softDisabled",
1044
- "inheritedFrom": {
1045
- "name": "Buttonsimple",
1046
- "module": "src/components/buttonsimple/buttonsimple.component.ts"
1047
- }
1048
- },
1049
- {
1050
- "name": "role",
1051
- "description": "This property defines the ARIA role for the element. By default, it is set to 'button'.\nConsumers should override this role when:\n- The element is being used in a context where a different role is more appropriate.\n- Custom behaviors are implemented that require a specific ARIA role for accessibility purposes.",
1052
- "default": "button",
1053
- "fieldName": "role",
1054
- "inheritedFrom": {
1055
- "name": "Buttonsimple",
1056
- "module": "src/components/buttonsimple/buttonsimple.component.ts"
1057
- }
1058
- },
1059
- {
1060
- "name": "type",
1061
- "type": {
1062
- "text": "ButtonType"
1063
- },
1064
- "description": "This property defines the type attribute for the button element.\nThe type attribute specifies the behavior of the button when it is clicked.\n- **submit**: The button submits the form data to the server.\n- **reset**: The button resets the form data to its initial state.\n- **button**: The button does nothing when clicked.",
1065
- "default": "button",
1066
- "fieldName": "type",
1067
- "inheritedFrom": {
1068
- "name": "Buttonsimple",
1069
- "module": "src/components/buttonsimple/buttonsimple.component.ts"
1070
- }
1071
- }
1072
- ],
1073
- "mixins": [
1074
- {
1075
- "name": "AvatarComponentMixin",
1076
- "module": "/src/utils/mixins/AvatarComponentMixin"
1077
- }
1078
- ],
1079
- "superclass": {
1080
- "name": "Buttonsimple",
1081
- "module": "/src/components/buttonsimple/buttonsimple.component"
1082
- },
1083
- "tagName": "mdc-avatarbutton",
1084
- "jsDoc": "/**\n * The `mdc-avatarbutton` component is an interactable version of the `mdc-avatar` component.\n *\n * This component is made by extending `buttonsimple` class.\n * The button component acts as a wrapper for the avatar component.\n *\n * @dependency mdc-avatar\n *\n * @tagname mdc-avatarbutton\n */",
1085
- "customElement": true
1086
- }
1087
- ],
1088
- "exports": [
1089
- {
1090
- "kind": "js",
1091
- "name": "default",
1092
- "declaration": {
1093
- "name": "AvatarButton",
1094
- "module": "components/avatarbutton/avatarbutton.component.js"
1095
- }
1096
- }
1097
- ]
1098
- },
1099
- {
1100
- "kind": "javascript-module",
1101
- "path": "components/bullet/bullet.component.js",
1102
- "declarations": [
1103
- {
1104
- "kind": "class",
1105
- "description": "Bullet component, which is a visual marker\nand be used to organize and present items in a list format.",
1106
- "name": "Bullet",
1107
- "cssProperties": [
1108
- {
1109
- "description": "background color of the bullet",
1110
- "name": "--mdc-bullet-background-color"
1111
- },
1112
- {
1113
- "description": "small size value of the bullet",
1114
- "name": "--mdc-bullet-size-small"
1115
- },
1116
- {
1117
- "description": "medium size value of the bullet",
1118
- "name": "--mdc-bullet-size-medium"
1119
- },
1120
- {
1121
- "description": "large size value of the bullet",
1122
- "name": "--mdc-bullet-size-large"
1123
- }
1124
- ],
1125
- "members": [
1126
- {
1127
- "kind": "field",
1128
- "name": "size",
1129
- "type": {
1130
- "text": "Size"
1131
- },
1132
- "privacy": "public",
1133
- "description": "Size of the bullet\n\nPossible values: 'small', 'medium', 'large'",
1134
- "default": "small",
1135
- "attribute": "size",
1136
- "reflects": true
1137
- }
1138
- ],
1139
- "attributes": [
1140
- {
1141
- "name": "size",
1142
- "type": {
1143
- "text": "Size"
1144
- },
1145
- "description": "Size of the bullet\n\nPossible values: 'small', 'medium', 'large'",
1146
- "default": "small",
1147
- "fieldName": "size"
1074
+ "default": "null",
1075
+ "description": "Aria-label attribute to be set for accessibility",
1076
+ "fieldName": "ariaLabel"
1148
1077
  }
1149
1078
  ],
1150
1079
  "superclass": {
1151
1080
  "name": "Component",
1152
1081
  "module": "/src/models"
1153
1082
  },
1154
- "tagName": "mdc-bullet",
1155
- "jsDoc": "/**\n * Bullet component, which is a visual marker\n * and be used to organize and present items in a list format.\n *\n * @tagname mdc-bullet\n *\n * @cssproperty --mdc-bullet-background-color - background color of the bullet\n * @cssproperty --mdc-bullet-size-small - small size value of the bullet\n * @cssproperty --mdc-bullet-size-medium - medium size value of the bullet\n * @cssproperty --mdc-bullet-size-large - large size value of the bullet\n*/",
1083
+ "tagName": "mdc-badge",
1084
+ "jsDoc": "/**\n * The `mdc-badge` component is a versatile UI element used to\n * display dot, icons, counters, success, warning and error type badge.\n *\n * Supported badge types:\n * - `dot`: Displays a dot notification badge with a blue color.\n * - `icon`: Displays a badge with a specified icon using the `icon-name` attribute.\n * - `counter`: Displays a badge with a counter value. If the counter exceeds the `max-counter`,\n * it shows `maxCounter+`. The maximum value of the counter is 999 and anything above that will be set to `999+`.\n * - `success`: Displays a success badge with a check circle icon and green color.\n * - `warning`: Displays a warning badge with a warning icon and yellow color.\n * - `error`: Displays a error badge with a error legacy icon and red color.\n *\n * For `icon`, `success`, `warning` and `error` types, the `mdc-icon` component is used to render the icon.\n *\n * For the `counter` type, the `mdc-text` component is used to render the counter value.\n *\n * @dependency mdc-icon\n * @dependency mdc-text\n *\n * @tagname mdc-badge\n *\n * @cssproperty --mdc-badge-primary-foreground-color - The foreground color of the primary badge.\n * @cssproperty --mdc-badge-primary-background-color - The background color of the primary badge.\n * @cssproperty --mdc-badge-secondary-foreground-color - The foreground color of the secondary badge.\n * @cssproperty --mdc-badge-secondary-background-color - The background color of the secondary badge.\n * @cssproperty --mdc-badge-success-foreground-color - The foreground color of the success badge.\n * @cssproperty --mdc-badge-success-background-color - The background color of the success badge.\n * @cssproperty --mdc-badge-warning-foreground-color - The foreground color of the warning badge.\n * @cssproperty --mdc-badge-warning-background-color - The background color of the warning badge.\n * @cssproperty --mdc-badge-error-foreground-color - The foreground color of the error badge.\n * @cssproperty --mdc-badge-error-background-color - The background color of the error badge.\n * @cssproperty --mdc-badge-overlay-background-color - The background color of the badge overlay.\n */",
1156
1085
  "customElement": true
1157
1086
  }
1158
1087
  ],
@@ -1161,8 +1090,8 @@
1161
1090
  "kind": "js",
1162
1091
  "name": "default",
1163
1092
  "declaration": {
1164
- "name": "Bullet",
1165
- "module": "components/bullet/bullet.component.js"
1093
+ "name": "Badge",
1094
+ "module": "components/badge/badge.component.js"
1166
1095
  }
1167
1096
  }
1168
1097
  ]
@@ -1977,249 +1906,1717 @@
1977
1906
  },
1978
1907
  {
1979
1908
  "kind": "javascript-module",
1980
- "path": "components/divider/divider.component.js",
1909
+ "path": "components/bullet/bullet.component.js",
1981
1910
  "declarations": [
1982
1911
  {
1983
1912
  "kind": "class",
1984
- "description": "`mdc-divider` is a component that provides a line to separate and organize content.\nIt can also include a button or text positioned centrally, allowing users to interact with the layout.\n\n**Divider Orientation:**\n- **Horizontal**: A thin, horizontal line.\n- **Vertical**: A thin, vertical line.\n\n**Divider Variants:**\n- **solid**: Solid line.\n- **gradient**: Gradient Line.\n\n**Divider Types:**\n- The type of divider is inferred based on the kind of slot present.\n - **Primary**: A simple horizontal or vertical divider.\n - **Text**: A horizontal divider with a text label in the center.\n - **Grabber Button**: A horizontal or vertical divider with a styled button in the center.\n\n**Accessibility:**\n- When the slot is replaced by an `mdc-button`:\n - `aria-label` should be passed to the `mdc-button`.\n - `aria-expanded` should be passed to the `mdc-button`.\n\n**Notes:**\n- If the slot is replaced by an invalid tag name or contains multiple elements,\n the divider defaults to the **Primary** type.\n- To override the styles of the divider, use the provided CSS custom properties.",
1985
- "name": "Divider",
1913
+ "description": "Bullet component, which is a visual marker\nand be used to organize and present items in a list format.",
1914
+ "name": "Bullet",
1915
+ "cssProperties": [
1916
+ {
1917
+ "description": "background color of the bullet",
1918
+ "name": "--mdc-bullet-background-color"
1919
+ },
1920
+ {
1921
+ "description": "small size value of the bullet",
1922
+ "name": "--mdc-bullet-size-small"
1923
+ },
1924
+ {
1925
+ "description": "medium size value of the bullet",
1926
+ "name": "--mdc-bullet-size-medium"
1927
+ },
1928
+ {
1929
+ "description": "large size value of the bullet",
1930
+ "name": "--mdc-bullet-size-large"
1931
+ }
1932
+ ],
1933
+ "members": [
1934
+ {
1935
+ "kind": "field",
1936
+ "name": "size",
1937
+ "type": {
1938
+ "text": "Size"
1939
+ },
1940
+ "privacy": "public",
1941
+ "description": "Size of the bullet\n\nPossible values: 'small', 'medium', 'large'",
1942
+ "default": "small",
1943
+ "attribute": "size",
1944
+ "reflects": true
1945
+ }
1946
+ ],
1947
+ "attributes": [
1948
+ {
1949
+ "name": "size",
1950
+ "type": {
1951
+ "text": "Size"
1952
+ },
1953
+ "description": "Size of the bullet\n\nPossible values: 'small', 'medium', 'large'",
1954
+ "default": "small",
1955
+ "fieldName": "size"
1956
+ }
1957
+ ],
1958
+ "superclass": {
1959
+ "name": "Component",
1960
+ "module": "/src/models"
1961
+ },
1962
+ "tagName": "mdc-bullet",
1963
+ "jsDoc": "/**\n * Bullet component, which is a visual marker\n * and be used to organize and present items in a list format.\n *\n * @tagname mdc-bullet\n *\n * @cssproperty --mdc-bullet-background-color - background color of the bullet\n * @cssproperty --mdc-bullet-size-small - small size value of the bullet\n * @cssproperty --mdc-bullet-size-medium - medium size value of the bullet\n * @cssproperty --mdc-bullet-size-large - large size value of the bullet\n*/",
1964
+ "customElement": true
1965
+ }
1966
+ ],
1967
+ "exports": [
1968
+ {
1969
+ "kind": "js",
1970
+ "name": "default",
1971
+ "declaration": {
1972
+ "name": "Bullet",
1973
+ "module": "components/bullet/bullet.component.js"
1974
+ }
1975
+ }
1976
+ ]
1977
+ },
1978
+ {
1979
+ "kind": "javascript-module",
1980
+ "path": "components/checkbox/checkbox.component.js",
1981
+ "declarations": [
1982
+ {
1983
+ "kind": "class",
1984
+ "description": "Checkboxes allow users to select multiple options from a list or turn an item/feature on or off.\nThese are often used in forms, settings, and selections in lists.\n\nA checkbox component contains an optional label and an optional helper text.",
1985
+ "name": "Checkbox",
1986
1986
  "cssProperties": [
1987
1987
  {
1988
- "description": "background color of the divider",
1989
- "name": "--mdc-divider-background-color"
1988
+ "description": "Allows customization of the background color on hover.",
1989
+ "name": "--mdc-checkbox-background-color-hover"
1990
+ },
1991
+ {
1992
+ "description": "Border color in high contrast.",
1993
+ "name": "--mdc-checkbox-border-color"
1994
+ },
1995
+ {
1996
+ "description": "Background color for a selected checkbox.",
1997
+ "name": "--mdc-checkbox-checked-background-color"
1998
+ },
1999
+ {
2000
+ "description": "Background color for a selected checkbox when hovered.",
2001
+ "name": "--mdc-checkbox-checked-background-color-hover"
2002
+ },
2003
+ {
2004
+ "description": "Background color for a selected checkbox when pressed.",
2005
+ "name": "--mdc-checkbox-checked-pressed-icon-color"
2006
+ },
2007
+ {
2008
+ "description": "Background color for a disabled checkbox.",
2009
+ "name": "--mdc-checkbox-disabled-background-color"
2010
+ },
2011
+ {
2012
+ "description": "Border color for a disabled checkbox.",
2013
+ "name": "--mdc-checkbox-disabled-border-color"
2014
+ },
2015
+ {
2016
+ "description": "Background color for a disabled, selected checkbox.",
2017
+ "name": "--mdc-checkbox-disabled-checked-icon-color"
2018
+ },
2019
+ {
2020
+ "description": "Icon color for a disabled checkbox.",
2021
+ "name": "--mdc-checkbox-disabled-icon-color"
2022
+ },
2023
+ {
2024
+ "description": "Background color for an unselected checkbox.",
2025
+ "name": "--mdc-checkbox-icon-background-color"
2026
+ },
2027
+ {
2028
+ "description": "Default background color for an unselected checkbox.",
2029
+ "name": "--mdc-checkbox-icon-border-color"
2030
+ },
2031
+ {
2032
+ "description": "Icon color for an unselected checkbox.",
2033
+ "name": "--mdc-checkbox-icon-color"
2034
+ },
2035
+ {
2036
+ "description": "Background color for a selected checkbox when pressed.",
2037
+ "name": "--mdc-checkbox-pressed-icon-color"
2038
+ }
2039
+ ],
2040
+ "members": [
2041
+ {
2042
+ "kind": "field",
2043
+ "name": "checked",
2044
+ "type": {
2045
+ "text": "boolean"
2046
+ },
2047
+ "default": "false",
2048
+ "description": "Determines whether the checkbox is selected or unselected.",
2049
+ "attribute": "checked",
2050
+ "reflects": true
2051
+ },
2052
+ {
2053
+ "kind": "field",
2054
+ "name": "indeterminate",
2055
+ "type": {
2056
+ "text": "boolean"
2057
+ },
2058
+ "default": "false",
2059
+ "description": "This property is used to determine the parent checkbox in a nested checkbox group.\nIf any one of the children is unselected, then the parent checkbox will be indeterminate.\nIf all children are either selected or unselected, then the parent checkbox will not be indeterminate.",
2060
+ "attribute": "indeterminate",
2061
+ "reflects": true
2062
+ },
2063
+ {
2064
+ "kind": "method",
2065
+ "name": "setFormValue",
2066
+ "privacy": "private",
2067
+ "description": "Updates the form value to reflect the current state of the checkbox.\nIf checked, the value is set to either the user-provided value or 'on' if no value is provided.\nIf unchecked, the value is set to null."
2068
+ },
2069
+ {
2070
+ "kind": "method",
2071
+ "name": "toggleState",
2072
+ "privacy": "private",
2073
+ "return": {
2074
+ "type": {
2075
+ "text": "void"
2076
+ }
2077
+ },
2078
+ "description": "Toggles the state of the checkbox element.\nIf the element is not disabled, then\nthe checked property is toggled and the indeterminate property is set to false."
2079
+ },
2080
+ {
2081
+ "kind": "method",
2082
+ "name": "handleChange",
2083
+ "privacy": "public",
2084
+ "return": {
2085
+ "type": {
2086
+ "text": "void"
2087
+ }
2088
+ },
2089
+ "parameters": [
2090
+ {
2091
+ "name": "event",
2092
+ "type": {
2093
+ "text": "Event"
2094
+ }
2095
+ }
2096
+ ],
2097
+ "description": "Toggles the state of the checkbox element.\nand dispatch the new event."
2098
+ },
2099
+ {
2100
+ "kind": "field",
2101
+ "name": "internals"
2102
+ },
2103
+ {
2104
+ "kind": "field",
2105
+ "name": "helpTextType",
2106
+ "type": {
2107
+ "text": "ValidationType"
2108
+ },
2109
+ "description": "The type of help text. It can be 'default', 'error', 'warning', 'success', 'priority'.",
2110
+ "attribute": "help-text-type",
2111
+ "reflects": true,
2112
+ "default": "undefined as unknown",
2113
+ "inheritedFrom": {
2114
+ "name": "FormfieldWrapper",
2115
+ "module": "components/formfieldwrapper/formfieldwrapper.component.js"
2116
+ }
2117
+ },
2118
+ {
2119
+ "kind": "field",
2120
+ "name": "name",
2121
+ "type": {
2122
+ "text": "string"
2123
+ },
2124
+ "default": "''",
2125
+ "description": "Indicates the name of the component group (ex: checkbox, radio group).\nThey are used to group elements in a form together.",
2126
+ "attribute": "name",
2127
+ "reflects": true,
2128
+ "inheritedFrom": {
2129
+ "name": "NameMixin",
2130
+ "module": "utils/mixins/NameMixin.js"
2131
+ }
2132
+ },
2133
+ {
2134
+ "kind": "field",
2135
+ "name": "value",
2136
+ "type": {
2137
+ "text": "string"
2138
+ },
2139
+ "default": "''",
2140
+ "description": "Indicates the value of the component group (ex: input, checkbox, radio, select etc...)",
2141
+ "attribute": "value",
2142
+ "reflects": true,
2143
+ "inheritedFrom": {
2144
+ "name": "ValueMixin",
2145
+ "module": "utils/mixins/ValueMixin.js"
2146
+ }
2147
+ },
2148
+ {
2149
+ "kind": "field",
2150
+ "name": "dataAriaLabel",
2151
+ "type": {
2152
+ "text": "string | null"
2153
+ },
2154
+ "default": "null",
2155
+ "description": "Defines a string value that labels the current element.\nThe Aria-Label attribute to be set for accessibility.",
2156
+ "attribute": "data-aria-label",
2157
+ "reflects": true,
2158
+ "inheritedFrom": {
2159
+ "name": "DataAriaLabelMixin",
2160
+ "module": "utils/mixins/DataAriaLabelMixin.js"
2161
+ }
2162
+ },
2163
+ {
2164
+ "kind": "field",
2165
+ "name": "disabled",
2166
+ "type": {
2167
+ "text": "boolean"
2168
+ },
2169
+ "default": "false",
2170
+ "description": "Indicates whether the component is disabled.\nWhen the component is disabled for user interaction; it is not focusable or clickable.",
2171
+ "attribute": "disabled",
2172
+ "reflects": true,
2173
+ "inheritedFrom": {
2174
+ "name": "DisabledMixin",
2175
+ "module": "utils/mixins/DisabledMixin.js"
2176
+ }
2177
+ },
2178
+ {
2179
+ "kind": "field",
2180
+ "name": "label",
2181
+ "type": {
2182
+ "text": "string | undefined"
2183
+ },
2184
+ "description": "The label of the input field. It is linked to the input field using the `for` attribute.",
2185
+ "attribute": "label",
2186
+ "reflects": true,
2187
+ "inheritedFrom": {
2188
+ "name": "FormfieldWrapper",
2189
+ "module": "components/formfieldwrapper/formfieldwrapper.component.js"
2190
+ }
2191
+ },
2192
+ {
2193
+ "kind": "field",
2194
+ "name": "id",
2195
+ "default": "`mdc-input-${uuidv4()}`",
2196
+ "description": "The unique id of the input field. It is used to link the input field with the label.",
2197
+ "attribute": "id",
2198
+ "inheritedFrom": {
2199
+ "name": "FormfieldWrapper",
2200
+ "module": "components/formfieldwrapper/formfieldwrapper.component.js"
2201
+ }
2202
+ },
2203
+ {
2204
+ "kind": "field",
2205
+ "name": "helpText",
2206
+ "type": {
2207
+ "text": "string | undefined"
2208
+ },
2209
+ "description": "The help text that is displayed below the input field.",
2210
+ "attribute": "help-text",
2211
+ "reflects": true,
2212
+ "inheritedFrom": {
2213
+ "name": "FormfieldWrapper",
2214
+ "module": "components/formfieldwrapper/formfieldwrapper.component.js"
2215
+ }
2216
+ },
2217
+ {
2218
+ "kind": "method",
2219
+ "name": "renderLabelElement",
2220
+ "privacy": "protected",
2221
+ "description": "creates the label element when the label property is set.\nid is used to link the label with the input field.",
2222
+ "return": {
2223
+ "type": {
2224
+ "text": ""
2225
+ }
2226
+ },
2227
+ "inheritedFrom": {
2228
+ "name": "FormfieldWrapper",
2229
+ "module": "components/formfieldwrapper/formfieldwrapper.component.js"
2230
+ }
2231
+ },
2232
+ {
2233
+ "kind": "method",
2234
+ "name": "renderHelpTextIcon",
2235
+ "privacy": "protected",
2236
+ "description": "creates the helpertext icon based on the helpTextType for validation.\nIf the helpTextType is not set, it defaults to 'default' and it doesn't display any icon.",
2237
+ "return": {
2238
+ "type": {
2239
+ "text": ""
2240
+ }
2241
+ },
2242
+ "inheritedFrom": {
2243
+ "name": "FormfieldWrapper",
2244
+ "module": "components/formfieldwrapper/formfieldwrapper.component.js"
2245
+ }
2246
+ },
2247
+ {
2248
+ "kind": "method",
2249
+ "name": "renderHelpText",
2250
+ "privacy": "protected",
2251
+ "description": "creates the helper text component when the helpertext value is set.\nIt is also used to display the validation message based on the helpTextType.",
2252
+ "return": {
2253
+ "type": {
2254
+ "text": ""
2255
+ }
2256
+ },
2257
+ "inheritedFrom": {
2258
+ "name": "FormfieldWrapper",
2259
+ "module": "components/formfieldwrapper/formfieldwrapper.component.js"
2260
+ }
2261
+ },
2262
+ {
2263
+ "kind": "method",
2264
+ "name": "renderLabel",
2265
+ "privacy": "protected",
2266
+ "description": "renders the mdc-label-text container that contains the label and labelInfoToggleTip.",
2267
+ "return": {
2268
+ "type": {
2269
+ "text": ""
2270
+ }
2271
+ },
2272
+ "inheritedFrom": {
2273
+ "name": "FormfieldWrapper",
2274
+ "module": "components/formfieldwrapper/formfieldwrapper.component.js"
2275
+ }
2276
+ },
2277
+ {
2278
+ "kind": "method",
2279
+ "name": "renderHelperText",
2280
+ "privacy": "protected",
2281
+ "description": "renders the mdc-help-text container that contains the helpertext icon and helpertext.",
2282
+ "return": {
2283
+ "type": {
2284
+ "text": ""
2285
+ }
2286
+ },
2287
+ "inheritedFrom": {
2288
+ "name": "FormfieldWrapper",
2289
+ "module": "components/formfieldwrapper/formfieldwrapper.component.js"
2290
+ }
2291
+ }
2292
+ ],
2293
+ "events": [
2294
+ {
2295
+ "type": {
2296
+ "text": "Event"
2297
+ }
2298
+ }
2299
+ ],
2300
+ "attributes": [
2301
+ {
2302
+ "name": "checked",
2303
+ "type": {
2304
+ "text": "boolean"
2305
+ },
2306
+ "default": "false",
2307
+ "description": "Determines whether the checkbox is selected or unselected.",
2308
+ "fieldName": "checked"
2309
+ },
2310
+ {
2311
+ "name": "indeterminate",
2312
+ "type": {
2313
+ "text": "boolean"
2314
+ },
2315
+ "default": "false",
2316
+ "description": "This property is used to determine the parent checkbox in a nested checkbox group.\nIf any one of the children is unselected, then the parent checkbox will be indeterminate.\nIf all children are either selected or unselected, then the parent checkbox will not be indeterminate.",
2317
+ "fieldName": "indeterminate"
2318
+ },
2319
+ {
2320
+ "name": "name",
2321
+ "type": {
2322
+ "text": "string"
2323
+ },
2324
+ "default": "''",
2325
+ "description": "Indicates the name of the component group (ex: checkbox, radio group).\nThey are used to group elements in a form together.",
2326
+ "fieldName": "name",
2327
+ "inheritedFrom": {
2328
+ "name": "NameMixin",
2329
+ "module": "src/utils/mixins/NameMixin.ts"
2330
+ }
2331
+ },
2332
+ {
2333
+ "name": "value",
2334
+ "type": {
2335
+ "text": "string"
2336
+ },
2337
+ "default": "''",
2338
+ "description": "Indicates the value of the component group (ex: input, checkbox, radio, select etc...)",
2339
+ "fieldName": "value",
2340
+ "inheritedFrom": {
2341
+ "name": "ValueMixin",
2342
+ "module": "src/utils/mixins/ValueMixin.ts"
2343
+ }
2344
+ },
2345
+ {
2346
+ "name": "data-aria-label",
2347
+ "type": {
2348
+ "text": "string | null"
2349
+ },
2350
+ "default": "null",
2351
+ "description": "Defines a string value that labels the current element.\nThe Aria-Label attribute to be set for accessibility.",
2352
+ "fieldName": "dataAriaLabel",
2353
+ "inheritedFrom": {
2354
+ "name": "DataAriaLabelMixin",
2355
+ "module": "src/utils/mixins/DataAriaLabelMixin.ts"
2356
+ }
2357
+ },
2358
+ {
2359
+ "name": "disabled",
2360
+ "type": {
2361
+ "text": "boolean"
2362
+ },
2363
+ "default": "false",
2364
+ "description": "Indicates whether the component is disabled.\nWhen the component is disabled for user interaction; it is not focusable or clickable.",
2365
+ "fieldName": "disabled",
2366
+ "inheritedFrom": {
2367
+ "name": "DisabledMixin",
2368
+ "module": "src/utils/mixins/DisabledMixin.ts"
2369
+ }
2370
+ },
2371
+ {
2372
+ "name": "label",
2373
+ "type": {
2374
+ "text": "string | undefined"
2375
+ },
2376
+ "description": "The label of the input field. It is linked to the input field using the `for` attribute.",
2377
+ "fieldName": "label",
2378
+ "inheritedFrom": {
2379
+ "name": "FormfieldWrapper",
2380
+ "module": "src/components/formfieldwrapper/formfieldwrapper.component.ts"
2381
+ }
2382
+ },
2383
+ {
2384
+ "name": "id",
2385
+ "default": "`mdc-input-${uuidv4()}`",
2386
+ "description": "The unique id of the input field. It is used to link the input field with the label.",
2387
+ "fieldName": "id",
2388
+ "inheritedFrom": {
2389
+ "name": "FormfieldWrapper",
2390
+ "module": "src/components/formfieldwrapper/formfieldwrapper.component.ts"
2391
+ }
2392
+ },
2393
+ {
2394
+ "name": "help-text-type",
2395
+ "type": {
2396
+ "text": "ValidationType"
2397
+ },
2398
+ "description": "The type of help text. It can be 'default', 'error', 'warning', 'success', 'priority'.",
2399
+ "fieldName": "helpTextType",
2400
+ "inheritedFrom": {
2401
+ "name": "FormfieldWrapper",
2402
+ "module": "src/components/formfieldwrapper/formfieldwrapper.component.ts"
2403
+ }
2404
+ },
2405
+ {
2406
+ "name": "help-text",
2407
+ "type": {
2408
+ "text": "string | undefined"
2409
+ },
2410
+ "description": "The help text that is displayed below the input field.",
2411
+ "fieldName": "helpText",
2412
+ "inheritedFrom": {
2413
+ "name": "FormfieldWrapper",
2414
+ "module": "src/components/formfieldwrapper/formfieldwrapper.component.ts"
2415
+ }
2416
+ }
2417
+ ],
2418
+ "mixins": [
2419
+ {
2420
+ "name": "NameMixin",
2421
+ "module": "/src/utils/mixins/NameMixin"
2422
+ },
2423
+ {
2424
+ "name": "ValueMixin",
2425
+ "module": "/src/utils/mixins/ValueMixin"
2426
+ },
2427
+ {
2428
+ "name": "DataAriaLabelMixin",
2429
+ "module": "/src/utils/mixins/DataAriaLabelMixin"
2430
+ }
2431
+ ],
2432
+ "superclass": {
2433
+ "name": "FormfieldWrapper",
2434
+ "module": "/src/components/formfieldwrapper/formfieldwrapper.component"
2435
+ },
2436
+ "tagName": "mdc-checkbox",
2437
+ "jsDoc": "/**\n * Checkboxes allow users to select multiple options from a list or turn an item/feature on or off.\n * These are often used in forms, settings, and selections in lists.\n *\n * A checkbox component contains an optional label and an optional helper text.\n *\n * @dependency mdc-icon\n *\n * @tagname mdc-checkbox\n *\n * @cssproperty --mdc-checkbox-background-color-hover - Allows customization of the background color on hover.\n * @cssproperty --mdc-checkbox-border-color - Border color in high contrast.\n * @cssproperty --mdc-checkbox-checked-background-color - Background color for a selected checkbox.\n * @cssproperty --mdc-checkbox-checked-background-color-hover - Background color for a selected checkbox when hovered.\n * @cssproperty --mdc-checkbox-checked-pressed-icon-color - Background color for a selected checkbox when pressed.\n * @cssproperty --mdc-checkbox-disabled-background-color - Background color for a disabled checkbox.\n * @cssproperty --mdc-checkbox-disabled-border-color - Border color for a disabled checkbox.\n * @cssproperty --mdc-checkbox-disabled-checked-icon-color - Background color for a disabled, selected checkbox.\n * @cssproperty --mdc-checkbox-disabled-icon-color - Icon color for a disabled checkbox.\n * @cssproperty --mdc-checkbox-icon-background-color - Background color for an unselected checkbox.\n * @cssproperty --mdc-checkbox-icon-border-color - Default background color for an unselected checkbox.\n * @cssproperty --mdc-checkbox-icon-color - Icon color for an unselected checkbox.\n * @cssproperty --mdc-checkbox-pressed-icon-color - Background color for a selected checkbox when pressed.\n */",
2438
+ "customElement": true,
2439
+ "slots": [
2440
+ {
2441
+ "description": "slot to add the label info icon",
2442
+ "name": "label-info",
2443
+ "inheritedFrom": {
2444
+ "name": "FormfieldWrapper",
2445
+ "module": "src/components/formfieldwrapper/formfieldwrapper.component.ts"
2446
+ }
2447
+ }
2448
+ ]
2449
+ }
2450
+ ],
2451
+ "exports": [
2452
+ {
2453
+ "kind": "js",
2454
+ "name": "default",
2455
+ "declaration": {
2456
+ "name": "Checkbox",
2457
+ "module": "components/checkbox/checkbox.component.js"
2458
+ }
2459
+ }
2460
+ ]
2461
+ },
2462
+ {
2463
+ "kind": "javascript-module",
2464
+ "path": "components/divider/divider.component.js",
2465
+ "declarations": [
2466
+ {
2467
+ "kind": "class",
2468
+ "description": "`mdc-divider` is a component that provides a line to separate and organize content.\nIt can also include a button or text positioned centrally, allowing users to interact with the layout.\n\n**Divider Orientation:**\n- **Horizontal**: A thin, horizontal line.\n- **Vertical**: A thin, vertical line.\n\n**Divider Variants:**\n- **solid**: Solid line.\n- **gradient**: Gradient Line.\n\n**Divider Types:**\n- The type of divider is inferred based on the kind of slot present.\n - **Primary**: A simple horizontal or vertical divider.\n - **Text**: A horizontal divider with a text label in the center.\n - **Grabber Button**: A horizontal or vertical divider with a styled button in the center.\n\n**Accessibility:**\n- When the slot is replaced by an `mdc-button`:\n - `aria-label` should be passed to the `mdc-button`.\n - `aria-expanded` should be passed to the `mdc-button`.\n\n**Notes:**\n- If the slot is replaced by an invalid tag name or contains multiple elements,\n the divider defaults to the **Primary** type.\n- To override the styles of the divider, use the provided CSS custom properties.",
2469
+ "name": "Divider",
2470
+ "cssProperties": [
2471
+ {
2472
+ "description": "background color of the divider",
2473
+ "name": "--mdc-divider-background-color"
2474
+ },
2475
+ {
2476
+ "description": "width of the divider",
2477
+ "name": "--mdc-divider-width"
2478
+ },
2479
+ {
2480
+ "description": "gradient of the horizontal divider",
2481
+ "name": "--mdc-divider-horizontal-gradient"
2482
+ },
2483
+ {
2484
+ "description": "gradient of the vertical divider",
2485
+ "name": "--mdc-divider-vertical-gradient"
2486
+ },
2487
+ {
2488
+ "description": "font size of label in the text divider",
2489
+ "name": "--mdc-divider-text-size"
2490
+ },
2491
+ {
2492
+ "description": "font color of label in the text divider",
2493
+ "name": "--mdc-divider-text-color"
2494
+ },
2495
+ {
2496
+ "description": "left and right margin of label in the text divider",
2497
+ "name": "--mdc-divider-text-margin"
2498
+ },
2499
+ {
2500
+ "description": "line height of label in the text divider",
2501
+ "name": "--mdc-divider-text-line-height"
2502
+ },
2503
+ {
2504
+ "description": "border radius of the grabber button",
2505
+ "name": "--mdc-divider-grabber-button-border-radius"
2506
+ }
2507
+ ],
2508
+ "members": [
2509
+ {
2510
+ "kind": "field",
2511
+ "name": "orientation",
2512
+ "type": {
2513
+ "text": "DividerOrientation"
2514
+ },
2515
+ "description": "Two orientations of divider\n- **horizontal**: A thin, horizontal line with 0.0625rem width.\n- **vertical**: A thin, vertical line with 0.0625rem width.\n\nNote: We do not support \"Vertical Text Divider\" as of now.",
2516
+ "default": "horizontal",
2517
+ "attribute": "orientation",
2518
+ "reflects": true
2519
+ },
2520
+ {
2521
+ "kind": "field",
2522
+ "name": "variant",
2523
+ "type": {
2524
+ "text": "DividerVariant"
2525
+ },
2526
+ "description": "Two variants of divider\n- **solid**: Solid line.\n- **gradient**: Gradient Line that fades on either sides of the divider.",
2527
+ "default": "solid",
2528
+ "attribute": "variant",
2529
+ "reflects": true
2530
+ },
2531
+ {
2532
+ "kind": "field",
2533
+ "name": "arrowDirection",
2534
+ "type": {
2535
+ "text": "Directions"
2536
+ },
2537
+ "description": "Direction of the arrow icon, if applicable.\n- **positive**\n- **negative**\n\nNote: Positive and Negative directions are defined based on Cartesian plane.",
2538
+ "default": "'negative'",
2539
+ "attribute": "arrow-direction",
2540
+ "reflects": true
2541
+ },
2542
+ {
2543
+ "kind": "field",
2544
+ "name": "buttonPosition",
2545
+ "type": {
2546
+ "text": "Directions"
2547
+ },
2548
+ "description": "Position of the button, if applicable.\n- **positive**\n- **negative**\n\nNote: Positive and Negative directions are defined based on Cartesian plane.",
2549
+ "default": "'negative'",
2550
+ "attribute": "button-position",
2551
+ "reflects": true
2552
+ },
2553
+ {
2554
+ "kind": "method",
2555
+ "name": "setVariant",
2556
+ "privacy": "private",
2557
+ "parameters": [
2558
+ {
2559
+ "name": "variant",
2560
+ "type": {
2561
+ "text": "DividerVariant"
2562
+ },
2563
+ "description": "The variant to set."
2564
+ }
2565
+ ],
2566
+ "description": "Sets the variant attribute for the divider component.\nIf the provided variant is not included in the DIVIDER_VARIANT,\nit defaults to the value specified in DEFAULTS.VARIANT."
2567
+ },
2568
+ {
2569
+ "kind": "method",
2570
+ "name": "setOrientation",
2571
+ "privacy": "private",
2572
+ "parameters": [
2573
+ {
2574
+ "name": "orientation",
2575
+ "type": {
2576
+ "text": "DividerOrientation"
2577
+ },
2578
+ "description": "The orientation to set."
2579
+ }
2580
+ ],
2581
+ "description": "Sets the orientation attribute for the divider component.\nIf the provided orientation is not included in the DIVIDER_ORIENTATION,\nit defaults to the value specified in DEFAULTS.ORIENTATION."
2582
+ },
2583
+ {
2584
+ "kind": "method",
2585
+ "name": "ensureValidDirections",
2586
+ "privacy": "private",
2587
+ "description": "Sets the buttonPosition and arrowDirection attribute for the divider component.\nIf the provided buttonPosition and arrowDirection are not included in the DIRECTIONS,\nit defaults to the value specified in DIRECTIONS based on the ORIENTATION.",
2588
+ "parameters": [
2589
+ {
2590
+ "description": "The buttonPosition to set.",
2591
+ "name": "buttonPosition"
2592
+ },
2593
+ {
2594
+ "description": "The arrowDirection to set.",
2595
+ "name": "arrowDirection"
2596
+ }
2597
+ ]
2598
+ },
2599
+ {
2600
+ "kind": "method",
2601
+ "name": "setGrabberButton",
2602
+ "privacy": "private",
2603
+ "return": {
2604
+ "type": {
2605
+ "text": "void"
2606
+ }
2607
+ },
2608
+ "description": "Configures the grabber button within the divider.\n\n- Sets the `prefix-icon` attribute for the grabber button based\non the `arrow-direction` and `orientation` properties.\n\nThis method updates the DOM element dynamically if a grabber button is present."
2609
+ },
2610
+ {
2611
+ "kind": "method",
2612
+ "name": "getArrowIcon",
2613
+ "privacy": "private",
2614
+ "return": {
2615
+ "type": {
2616
+ "text": ""
2617
+ }
2618
+ },
2619
+ "description": "Determines the arrow icon based on the consumer-defined `arrowDirection`."
2620
+ },
2621
+ {
2622
+ "kind": "method",
2623
+ "name": "inferDividerType",
2624
+ "privacy": "private",
2625
+ "description": "Infers the type of divider based on the kind of slot present.",
2626
+ "parameters": [
2627
+ {
2628
+ "description": "default slot of divider",
2629
+ "name": "slot"
2630
+ }
2631
+ ]
2632
+ }
2633
+ ],
2634
+ "attributes": [
2635
+ {
2636
+ "name": "orientation",
2637
+ "type": {
2638
+ "text": "DividerOrientation"
2639
+ },
2640
+ "description": "Two orientations of divider\n- **horizontal**: A thin, horizontal line with 0.0625rem width.\n- **vertical**: A thin, vertical line with 0.0625rem width.\n\nNote: We do not support \"Vertical Text Divider\" as of now.",
2641
+ "default": "horizontal",
2642
+ "fieldName": "orientation"
2643
+ },
2644
+ {
2645
+ "name": "variant",
2646
+ "type": {
2647
+ "text": "DividerVariant"
2648
+ },
2649
+ "description": "Two variants of divider\n- **solid**: Solid line.\n- **gradient**: Gradient Line that fades on either sides of the divider.",
2650
+ "default": "solid",
2651
+ "fieldName": "variant"
2652
+ },
2653
+ {
2654
+ "name": "arrow-direction",
2655
+ "type": {
2656
+ "text": "Directions"
2657
+ },
2658
+ "description": "Direction of the arrow icon, if applicable.\n- **positive**\n- **negative**\n\nNote: Positive and Negative directions are defined based on Cartesian plane.",
2659
+ "default": "'negative'",
2660
+ "fieldName": "arrowDirection"
2661
+ },
2662
+ {
2663
+ "name": "button-position",
2664
+ "type": {
2665
+ "text": "Directions"
2666
+ },
2667
+ "description": "Position of the button, if applicable.\n- **positive**\n- **negative**\n\nNote: Positive and Negative directions are defined based on Cartesian plane.",
2668
+ "default": "'negative'",
2669
+ "fieldName": "buttonPosition"
2670
+ }
2671
+ ],
2672
+ "superclass": {
2673
+ "name": "Component",
2674
+ "module": "/src/models"
2675
+ },
2676
+ "tagName": "mdc-divider",
2677
+ "jsDoc": "/**\n * `mdc-divider` is a component that provides a line to separate and organize content.\n * It can also include a button or text positioned centrally, allowing users to interact with the layout.\n *\n * **Divider Orientation:**\n * - **Horizontal**: A thin, horizontal line.\n * - **Vertical**: A thin, vertical line.\n *\n * **Divider Variants:**\n * - **solid**: Solid line.\n * - **gradient**: Gradient Line.\n *\n * **Divider Types:**\n * - The type of divider is inferred based on the kind of slot present.\n * - **Primary**: A simple horizontal or vertical divider.\n * - **Text**: A horizontal divider with a text label in the center.\n * - **Grabber Button**: A horizontal or vertical divider with a styled button in the center.\n *\n * **Accessibility:**\n * - When the slot is replaced by an `mdc-button`:\n * - `aria-label` should be passed to the `mdc-button`.\n * - `aria-expanded` should be passed to the `mdc-button`.\n *\n * **Notes:**\n * - If the slot is replaced by an invalid tag name or contains multiple elements,\n * the divider defaults to the **Primary** type.\n * - To override the styles of the divider, use the provided CSS custom properties.\n *\n * @tagname mdc-divider\n *\n * @cssproperty --mdc-divider-background-color - background color of the divider\n * @cssproperty --mdc-divider-width - width of the divider\n * @cssproperty --mdc-divider-horizontal-gradient - gradient of the horizontal divider\n * @cssproperty --mdc-divider-vertical-gradient - gradient of the vertical divider\n * @cssproperty --mdc-divider-text-size - font size of label in the text divider\n * @cssproperty --mdc-divider-text-color - font color of label in the text divider\n * @cssproperty --mdc-divider-text-margin - left and right margin of label in the text divider\n * @cssproperty --mdc-divider-text-line-height - line height of label in the text divider\n * @cssproperty --mdc-divider-grabber-button-border-radius - border radius of the grabber button\n */",
2678
+ "customElement": true
2679
+ }
2680
+ ],
2681
+ "exports": [
2682
+ {
2683
+ "kind": "js",
2684
+ "name": "default",
2685
+ "declaration": {
2686
+ "name": "Divider",
2687
+ "module": "components/divider/divider.component.js"
2688
+ }
2689
+ }
2690
+ ]
2691
+ },
2692
+ {
2693
+ "kind": "javascript-module",
2694
+ "path": "components/formfieldwrapper/formfieldwrapper.component.js",
2695
+ "declarations": [
2696
+ {
2697
+ "kind": "class",
2698
+ "description": "formfieldwrapper is a component that contains the label and helper/validation text\n that can be configured in various ways to suit different use cases (most of the input related components).\nIt is used as an internal component and is not intended to be used directly by consumers.",
2699
+ "name": "FormfieldWrapper",
2700
+ "slots": [
2701
+ {
2702
+ "description": "slot to add the label info icon",
2703
+ "name": "label-info"
2704
+ }
2705
+ ],
2706
+ "members": [
2707
+ {
2708
+ "kind": "field",
2709
+ "name": "label",
2710
+ "type": {
2711
+ "text": "string | undefined"
2712
+ },
2713
+ "description": "The label of the input field. It is linked to the input field using the `for` attribute.",
2714
+ "attribute": "label",
2715
+ "reflects": true
2716
+ },
2717
+ {
2718
+ "kind": "field",
2719
+ "name": "id",
2720
+ "default": "`mdc-input-${uuidv4()}`",
2721
+ "description": "The unique id of the input field. It is used to link the input field with the label.",
2722
+ "attribute": "id"
2723
+ },
2724
+ {
2725
+ "kind": "field",
2726
+ "name": "helpTextType",
2727
+ "type": {
2728
+ "text": "ValidationType"
2729
+ },
2730
+ "description": "The type of help text. It can be 'default', 'error', 'warning', 'success', 'priority'.",
2731
+ "attribute": "help-text-type",
2732
+ "reflects": true
2733
+ },
2734
+ {
2735
+ "kind": "field",
2736
+ "name": "helpText",
2737
+ "type": {
2738
+ "text": "string | undefined"
2739
+ },
2740
+ "description": "The help text that is displayed below the input field.",
2741
+ "attribute": "help-text",
2742
+ "reflects": true
2743
+ },
2744
+ {
2745
+ "kind": "method",
2746
+ "name": "renderLabelElement",
2747
+ "privacy": "protected",
2748
+ "description": "creates the label element when the label property is set.\nid is used to link the label with the input field.",
2749
+ "return": {
2750
+ "type": {
2751
+ "text": ""
2752
+ }
2753
+ }
2754
+ },
2755
+ {
2756
+ "kind": "method",
2757
+ "name": "renderHelpTextIcon",
2758
+ "privacy": "protected",
2759
+ "description": "creates the helpertext icon based on the helpTextType for validation.\nIf the helpTextType is not set, it defaults to 'default' and it doesn't display any icon.",
2760
+ "return": {
2761
+ "type": {
2762
+ "text": ""
2763
+ }
2764
+ }
2765
+ },
2766
+ {
2767
+ "kind": "method",
2768
+ "name": "renderHelpText",
2769
+ "privacy": "protected",
2770
+ "description": "creates the helper text component when the helpertext value is set.\nIt is also used to display the validation message based on the helpTextType.",
2771
+ "return": {
2772
+ "type": {
2773
+ "text": ""
2774
+ }
2775
+ }
2776
+ },
2777
+ {
2778
+ "kind": "method",
2779
+ "name": "renderLabel",
2780
+ "privacy": "protected",
2781
+ "description": "renders the mdc-label-text container that contains the label and labelInfoToggleTip.",
2782
+ "return": {
2783
+ "type": {
2784
+ "text": ""
2785
+ }
2786
+ }
2787
+ },
2788
+ {
2789
+ "kind": "method",
2790
+ "name": "renderHelperText",
2791
+ "privacy": "protected",
2792
+ "description": "renders the mdc-help-text container that contains the helpertext icon and helpertext.",
2793
+ "return": {
2794
+ "type": {
2795
+ "text": ""
2796
+ }
2797
+ }
2798
+ },
2799
+ {
2800
+ "kind": "field",
2801
+ "name": "disabled",
2802
+ "type": {
2803
+ "text": "boolean"
2804
+ },
2805
+ "default": "false",
2806
+ "description": "Indicates whether the component is disabled.\nWhen the component is disabled for user interaction; it is not focusable or clickable.",
2807
+ "attribute": "disabled",
2808
+ "reflects": true,
2809
+ "inheritedFrom": {
2810
+ "name": "DisabledMixin",
2811
+ "module": "utils/mixins/DisabledMixin.js"
2812
+ }
2813
+ }
2814
+ ],
2815
+ "attributes": [
2816
+ {
2817
+ "name": "label",
2818
+ "type": {
2819
+ "text": "string | undefined"
2820
+ },
2821
+ "description": "The label of the input field. It is linked to the input field using the `for` attribute.",
2822
+ "fieldName": "label"
2823
+ },
2824
+ {
2825
+ "name": "id",
2826
+ "default": "`mdc-input-${uuidv4()}`",
2827
+ "description": "The unique id of the input field. It is used to link the input field with the label.",
2828
+ "fieldName": "id"
2829
+ },
2830
+ {
2831
+ "name": "help-text-type",
2832
+ "type": {
2833
+ "text": "ValidationType"
2834
+ },
2835
+ "description": "The type of help text. It can be 'default', 'error', 'warning', 'success', 'priority'.",
2836
+ "fieldName": "helpTextType"
2837
+ },
2838
+ {
2839
+ "name": "help-text",
2840
+ "type": {
2841
+ "text": "string | undefined"
2842
+ },
2843
+ "description": "The help text that is displayed below the input field.",
2844
+ "fieldName": "helpText"
2845
+ },
2846
+ {
2847
+ "name": "disabled",
2848
+ "type": {
2849
+ "text": "boolean"
2850
+ },
2851
+ "default": "false",
2852
+ "description": "Indicates whether the component is disabled.\nWhen the component is disabled for user interaction; it is not focusable or clickable.",
2853
+ "fieldName": "disabled",
2854
+ "inheritedFrom": {
2855
+ "name": "DisabledMixin",
2856
+ "module": "src/utils/mixins/DisabledMixin.ts"
2857
+ }
2858
+ }
2859
+ ],
2860
+ "mixins": [
2861
+ {
2862
+ "name": "DisabledMixin",
2863
+ "module": "/src/utils/mixins/DisabledMixin"
2864
+ }
2865
+ ],
2866
+ "superclass": {
2867
+ "name": "Component",
2868
+ "module": "/src/models"
2869
+ },
2870
+ "tagName": "mdc-formfieldwrapper",
2871
+ "jsDoc": "/**\n * formfieldwrapper is a component that contains the label and helper/validation text\n * that can be configured in various ways to suit different use cases (most of the input related components).\n * It is used as an internal component and is not intended to be used directly by consumers.\n *\n * @tagname mdc-formfieldwrapper\n *\n * @slot label-info - slot to add the label info icon\n *\n */",
2872
+ "customElement": true
2873
+ }
2874
+ ],
2875
+ "exports": [
2876
+ {
2877
+ "kind": "js",
2878
+ "name": "default",
2879
+ "declaration": {
2880
+ "name": "FormfieldWrapper",
2881
+ "module": "components/formfieldwrapper/formfieldwrapper.component.js"
2882
+ }
2883
+ }
2884
+ ]
2885
+ },
2886
+ {
2887
+ "kind": "javascript-module",
2888
+ "path": "components/icon/icon.component.js",
2889
+ "declarations": [
2890
+ {
2891
+ "kind": "class",
2892
+ "description": "Icon component that dynamically displays SVG icons based on a valid name.\n\nThis component must be mounted within an `IconProvider` component.\n\nThe `IconProvider` defines the source URL from which icons are consumed.\nThe `Icon` component accepts a `name` attribute, which corresponds to\nthe file name of the icon to be loaded from the specified URL.\n\nOnce fetched, the icon will be rendered. If the fetching process is unsuccessful,\nno icon will be displayed.\n\nThe `size` attribute allows for dynamic sizing of the icon based on the provided\n`length-unit` attribute. This unit can either come from the `IconProvider`\nor can be overridden for each individual icon. For example:\nif `size = 1` and `length-unit = 'em'`, the dimensions of the icon will be\n`width: 1em; height: 1em`.\n\nRegarding accessibility, there are three types of icons: decorative, informative and informative standalone.\n\n### Decorative Icons\n- Decorative icons do not convey any essential information to the content of a page.\n- They should be hidden from screen readers (SR) to prevent confusion for users.\n- For decorative icons, an `aria-label` is not required, and the `role` will be set to null.\n\n### Informative Icons\n- Informative icons convey important information that is not adequately represented\n by surrounding text or components.\n- They provide valuable context and must be announced by assistive technologies.\n- For informative icons, an `aria-label` is required, and the `role` will be set to \"img\" automatically.\n- If an `aria-label` is provided, the role will be set to 'img'; if it is absent,\n the role will be unset.\n\n### Informative Standalone Icons\n- If an icon is informative (as mentioned above) and does not belong to a button (=standalone), it must\nhave a Tooltip that describes what it means.\n- For informative standalone icons, an `aria-label` & `tabindex=\"0\"` is required,\nand the `role` will be set to \"img\" automatically.\n- **Only use this when a Icon is standalone and is not part of a button or other interactive elements.**",
2893
+ "name": "Icon",
2894
+ "cssProperties": [
2895
+ {
2896
+ "description": "Allows customization of the default fill color.",
2897
+ "name": "--mdc-icon-fill-color"
2898
+ },
2899
+ {
2900
+ "description": "Allows customization of the icon size.",
2901
+ "name": "--mdc-icon-size"
2902
+ },
2903
+ {
2904
+ "description": "Allows customization of the icon border radius.",
2905
+ "name": "--mdc-icon-border-radius"
2906
+ }
2907
+ ],
2908
+ "members": [
2909
+ {
2910
+ "kind": "field",
2911
+ "name": "iconData",
2912
+ "type": {
2913
+ "text": "HTMLElement | undefined"
2914
+ },
2915
+ "privacy": "private"
2916
+ },
2917
+ {
2918
+ "kind": "field",
2919
+ "name": "lengthUnitFromContext",
2920
+ "type": {
2921
+ "text": "string | undefined"
2922
+ },
2923
+ "privacy": "private"
2924
+ },
2925
+ {
2926
+ "kind": "field",
2927
+ "name": "sizeFromContext",
2928
+ "type": {
2929
+ "text": "number | undefined"
2930
+ },
2931
+ "privacy": "private"
2932
+ },
2933
+ {
2934
+ "kind": "field",
2935
+ "name": "name",
2936
+ "type": {
2937
+ "text": "IconNames | undefined"
2938
+ },
2939
+ "description": "Name of the icon (= filename)",
2940
+ "attribute": "name",
2941
+ "reflects": true
2942
+ },
2943
+ {
2944
+ "kind": "field",
2945
+ "name": "size",
2946
+ "type": {
2947
+ "text": "number | undefined"
2948
+ },
2949
+ "description": "Size of the icon (works in combination with length unit)",
2950
+ "attribute": "size"
2951
+ },
2952
+ {
2953
+ "kind": "field",
2954
+ "name": "lengthUnit",
2955
+ "type": {
2956
+ "text": "string | undefined"
2957
+ },
2958
+ "description": "Length unit attribute for overriding length-unit from `IconProvider`",
2959
+ "attribute": "length-unit"
2960
+ },
2961
+ {
2962
+ "kind": "field",
2963
+ "name": "ariaLabel",
2964
+ "type": {
2965
+ "text": "string | null"
2966
+ },
2967
+ "default": "null",
2968
+ "description": "Aria-label attribute to be set for accessibility",
2969
+ "attribute": "aria-label"
2970
+ },
2971
+ {
2972
+ "kind": "field",
2973
+ "name": "iconProviderContext",
2974
+ "privacy": "private",
2975
+ "readonly": true
2976
+ },
2977
+ {
2978
+ "kind": "field",
2979
+ "name": "abortController",
2980
+ "type": {
2981
+ "text": "AbortController"
2982
+ },
2983
+ "privacy": "private",
2984
+ "default": "new AbortController()"
2985
+ },
2986
+ {
2987
+ "kind": "method",
2988
+ "name": "getIconData",
2989
+ "privacy": "private",
2990
+ "description": "Get Icon Data function which will fetch the icon (currently only svg)\nand sets state and attributes once fetched successfully\n\nThis method uses abortController.signal to cancel the fetch request when the component is disconnected or updated.\nIf the request is aborted after the fetch() call has been fulfilled but before the response body has been read,\nthen attempting to read the response body will reject with an AbortError exception."
2991
+ },
2992
+ {
2993
+ "kind": "method",
2994
+ "name": "handleIconLoadedSuccess",
2995
+ "privacy": "private",
2996
+ "parameters": [
2997
+ {
2998
+ "name": "iconHtml",
2999
+ "type": {
3000
+ "text": "HTMLElement"
3001
+ },
3002
+ "description": "The icon html element which has been fetched from the icon provider."
3003
+ }
3004
+ ],
3005
+ "description": "Sets the iconData state to the fetched icon.\nDispatches a 'load' event on the component once the icon has been successfully loaded."
3006
+ },
3007
+ {
3008
+ "kind": "method",
3009
+ "name": "handleIconLoadedFailure",
3010
+ "privacy": "private",
3011
+ "parameters": [
3012
+ {
3013
+ "name": "error",
3014
+ "type": {
3015
+ "text": "unknown"
3016
+ }
3017
+ }
3018
+ ],
3019
+ "description": "Dispatches an 'error' event on the component when the icon fetching has failed.\nThis event bubbles and is cancelable.\nThe error detail is set to the error object."
3020
+ },
3021
+ {
3022
+ "kind": "method",
3023
+ "name": "updateSize",
3024
+ "privacy": "private",
3025
+ "description": "Updates the size by setting the width and height"
3026
+ },
3027
+ {
3028
+ "kind": "field",
3029
+ "name": "computedIconSize",
3030
+ "privacy": "private",
3031
+ "readonly": true
3032
+ }
3033
+ ],
3034
+ "attributes": [
3035
+ {
3036
+ "name": "name",
3037
+ "type": {
3038
+ "text": "IconNames | undefined"
3039
+ },
3040
+ "description": "Name of the icon (= filename)",
3041
+ "fieldName": "name"
3042
+ },
3043
+ {
3044
+ "name": "size",
3045
+ "type": {
3046
+ "text": "number | undefined"
3047
+ },
3048
+ "description": "Size of the icon (works in combination with length unit)",
3049
+ "fieldName": "size"
3050
+ },
3051
+ {
3052
+ "name": "length-unit",
3053
+ "type": {
3054
+ "text": "string | undefined"
3055
+ },
3056
+ "description": "Length unit attribute for overriding length-unit from `IconProvider`",
3057
+ "fieldName": "lengthUnit"
3058
+ },
3059
+ {
3060
+ "name": "aria-label",
3061
+ "type": {
3062
+ "text": "string | null"
3063
+ },
3064
+ "default": "null",
3065
+ "description": "Aria-label attribute to be set for accessibility",
3066
+ "fieldName": "ariaLabel"
3067
+ }
3068
+ ],
3069
+ "superclass": {
3070
+ "name": "Component",
3071
+ "module": "/src/models"
3072
+ },
3073
+ "tagName": "mdc-icon",
3074
+ "jsDoc": "/**\n * Icon component that dynamically displays SVG icons based on a valid name.\n *\n * This component must be mounted within an `IconProvider` component.\n *\n * The `IconProvider` defines the source URL from which icons are consumed.\n * The `Icon` component accepts a `name` attribute, which corresponds to\n * the file name of the icon to be loaded from the specified URL.\n *\n * Once fetched, the icon will be rendered. If the fetching process is unsuccessful,\n * no icon will be displayed.\n *\n * The `size` attribute allows for dynamic sizing of the icon based on the provided\n * `length-unit` attribute. This unit can either come from the `IconProvider`\n * or can be overridden for each individual icon. For example:\n * if `size = 1` and `length-unit = 'em'`, the dimensions of the icon will be\n * `width: 1em; height: 1em`.\n *\n * Regarding accessibility, there are three types of icons: decorative, informative and informative standalone.\n *\n * ### Decorative Icons\n * - Decorative icons do not convey any essential information to the content of a page.\n * - They should be hidden from screen readers (SR) to prevent confusion for users.\n * - For decorative icons, an `aria-label` is not required, and the `role` will be set to null.\n *\n * ### Informative Icons\n * - Informative icons convey important information that is not adequately represented\n * by surrounding text or components.\n * - They provide valuable context and must be announced by assistive technologies.\n * - For informative icons, an `aria-label` is required, and the `role` will be set to \"img\" automatically.\n * - If an `aria-label` is provided, the role will be set to 'img'; if it is absent,\n * the role will be unset.\n *\n * ### Informative Standalone Icons\n * - If an icon is informative (as mentioned above) and does not belong to a button (=standalone), it must\n * have a Tooltip that describes what it means.\n * - For informative standalone icons, an `aria-label` & `tabindex=\"0\"` is required,\n * and the `role` will be set to \"img\" automatically.\n * - **Only use this when a Icon is standalone and is not part of a button or other interactive elements.**\n *\n * @tagname mdc-icon\n *\n * @cssproperty --mdc-icon-fill-color - Allows customization of the default fill color.\n * @cssproperty --mdc-icon-size - Allows customization of the icon size.\n * @cssproperty --mdc-icon-border-radius - Allows customization of the icon border radius.\n */",
3075
+ "customElement": true
3076
+ }
3077
+ ],
3078
+ "exports": [
3079
+ {
3080
+ "kind": "js",
3081
+ "name": "default",
3082
+ "declaration": {
3083
+ "name": "Icon",
3084
+ "module": "components/icon/icon.component.js"
3085
+ }
3086
+ }
3087
+ ]
3088
+ },
3089
+ {
3090
+ "kind": "javascript-module",
3091
+ "path": "components/iconprovider/iconprovider.component.js",
3092
+ "declarations": [
3093
+ {
3094
+ "kind": "class",
3095
+ "description": "IconProvider component, which allows to be consumed from sub components\n(see `providerUtils.consume` for how to consume)\n\nBundling icons will be up to the consumer of this component, such\nthat only a url has to be passed in from which the icons will be\nfetched.",
3096
+ "name": "IconProvider",
3097
+ "slots": [
3098
+ {
3099
+ "description": "children",
3100
+ "name": ""
3101
+ }
3102
+ ],
3103
+ "members": [
3104
+ {
3105
+ "kind": "field",
3106
+ "name": "Context",
3107
+ "privacy": "public",
3108
+ "static": true,
3109
+ "description": "Context object of the IconProvider, to be consumed by child components",
3110
+ "readonly": true
3111
+ },
3112
+ {
3113
+ "kind": "field",
3114
+ "name": "url",
3115
+ "type": {
3116
+ "text": "string | undefined"
3117
+ },
3118
+ "description": "Url of where icons will be fetched from",
3119
+ "attribute": "url"
3120
+ },
3121
+ {
3122
+ "kind": "field",
3123
+ "name": "fileExtension",
3124
+ "type": {
3125
+ "text": "string | undefined"
3126
+ },
3127
+ "description": "File extension of icons",
3128
+ "default": "svg",
3129
+ "attribute": "file-extension",
3130
+ "reflects": true
3131
+ },
3132
+ {
3133
+ "kind": "field",
3134
+ "name": "lengthUnit",
3135
+ "type": {
3136
+ "text": "string"
3137
+ },
3138
+ "description": "Length unit used for sizing of icons",
3139
+ "default": "em",
3140
+ "attribute": "length-unit",
3141
+ "reflects": true
3142
+ },
3143
+ {
3144
+ "kind": "field",
3145
+ "name": "size",
3146
+ "type": {
3147
+ "text": "number | undefined"
3148
+ },
3149
+ "description": "The default size of the icon.\nIf not set, it falls back to the size defined by the length unit.",
3150
+ "default": "1",
3151
+ "attribute": "size",
3152
+ "reflects": true
3153
+ },
3154
+ {
3155
+ "kind": "method",
3156
+ "name": "updateValuesInContext",
3157
+ "privacy": "private"
3158
+ },
3159
+ {
3160
+ "kind": "method",
3161
+ "name": "updateContext",
3162
+ "privacy": "protected",
3163
+ "return": {
3164
+ "type": {
3165
+ "text": "void"
3166
+ }
3167
+ }
3168
+ }
3169
+ ],
3170
+ "attributes": [
3171
+ {
3172
+ "name": "url",
3173
+ "type": {
3174
+ "text": "string | undefined"
3175
+ },
3176
+ "description": "Url of where icons will be fetched from",
3177
+ "fieldName": "url"
3178
+ },
3179
+ {
3180
+ "name": "file-extension",
3181
+ "type": {
3182
+ "text": "string | undefined"
3183
+ },
3184
+ "description": "File extension of icons",
3185
+ "default": "svg",
3186
+ "fieldName": "fileExtension"
3187
+ },
3188
+ {
3189
+ "name": "length-unit",
3190
+ "type": {
3191
+ "text": "string"
3192
+ },
3193
+ "description": "Length unit used for sizing of icons",
3194
+ "default": "em",
3195
+ "fieldName": "lengthUnit"
3196
+ },
3197
+ {
3198
+ "name": "size",
3199
+ "type": {
3200
+ "text": "number | undefined"
3201
+ },
3202
+ "description": "The default size of the icon.\nIf not set, it falls back to the size defined by the length unit.",
3203
+ "default": "1",
3204
+ "fieldName": "size"
3205
+ }
3206
+ ],
3207
+ "superclass": {
3208
+ "name": "Provider",
3209
+ "module": "/src/models"
3210
+ },
3211
+ "tagName": "mdc-iconprovider",
3212
+ "jsDoc": "/**\n * IconProvider component, which allows to be consumed from sub components\n * (see `providerUtils.consume` for how to consume)\n *\n * Bundling icons will be up to the consumer of this component, such\n * that only a url has to be passed in from which the icons will be\n * fetched.\n *\n * @tagname mdc-iconprovider\n *\n * @slot - children\n */",
3213
+ "customElement": true
3214
+ }
3215
+ ],
3216
+ "exports": [
3217
+ {
3218
+ "kind": "js",
3219
+ "name": "default",
3220
+ "declaration": {
3221
+ "name": "IconProvider",
3222
+ "module": "components/iconprovider/iconprovider.component.js"
3223
+ }
3224
+ }
3225
+ ]
3226
+ },
3227
+ {
3228
+ "kind": "javascript-module",
3229
+ "path": "components/input/input.component.js",
3230
+ "declarations": [
3231
+ {
3232
+ "kind": "class",
3233
+ "description": "mdc-input is a component that allows users to input text.\n It contains:\n- label field - describe the input field.\n- input field - contains the value\n- help text or validation message - displayed below the input field.\n- trailing button - it displays a clear the input field.\n- prefix text - displayed before the input field.\n- leading icon - displayed before the input field.\n- clear-aria-label - aria label for the trailing button.\n- all the attributes of the input field.",
3234
+ "name": "Input",
3235
+ "cssProperties": [
3236
+ {
3237
+ "description": "Border color for the input container when disabled",
3238
+ "name": "--mdc-input-disabled-border-color"
3239
+ },
3240
+ {
3241
+ "description": "Text color for the input field when disabled",
3242
+ "name": "--mdc-input-disabled-text-color"
3243
+ },
3244
+ {
3245
+ "description": "Background color for the input field when disabled",
3246
+ "name": "--mdc-input-disabled-background-color"
3247
+ },
3248
+ {
3249
+ "description": "Border color for the input container",
3250
+ "name": "--mdc-input-border-color"
3251
+ },
3252
+ {
3253
+ "description": "Text color for the input field",
3254
+ "name": "--mdc-input-text-color"
3255
+ },
3256
+ {
3257
+ "description": "Background color for the input field",
3258
+ "name": "--mdc-input-background-color"
3259
+ },
3260
+ {
3261
+ "description": "Background color for the selected text",
3262
+ "name": "--mdc-input-selection-background-color"
3263
+ },
3264
+ {
3265
+ "description": "Text color for the selected text",
3266
+ "name": "--mdc-input-selection-text-color"
3267
+ },
3268
+ {
3269
+ "description": "Text color for the help text",
3270
+ "name": "--mdc-input-support-text-color"
3271
+ },
3272
+ {
3273
+ "description": "Background color for the input field when hovered",
3274
+ "name": "--mdc-input-hover-background-color"
3275
+ },
3276
+ {
3277
+ "description": "Background color for the input field when focused",
3278
+ "name": "--mdc-input-focused-background-color"
3279
+ },
3280
+ {
3281
+ "description": "Border color for the input container when focused",
3282
+ "name": "--mdc-input-focused-border-color"
3283
+ },
3284
+ {
3285
+ "description": "Border color for the input container when error",
3286
+ "name": "--mdc-input-error-border-color"
3287
+ },
3288
+ {
3289
+ "description": "Border color for the input container when warning",
3290
+ "name": "--mdc-input-warning-border-color"
3291
+ },
3292
+ {
3293
+ "description": "Border color for the input container when success",
3294
+ "name": "--mdc-input-success-border-color"
3295
+ },
3296
+ {
3297
+ "description": "Border color for the input container when primary",
3298
+ "name": "--mdc-input-primary-border-color"
3299
+ }
3300
+ ],
3301
+ "members": [
3302
+ {
3303
+ "kind": "field",
3304
+ "name": "placeholder",
3305
+ "type": {
3306
+ "text": "string"
3307
+ },
3308
+ "default": "''",
3309
+ "description": "The placeholder text that is displayed when the input field is empty.",
3310
+ "attribute": "placeholder"
3311
+ },
3312
+ {
3313
+ "kind": "field",
3314
+ "name": "required",
3315
+ "type": {
3316
+ "text": "boolean"
3317
+ },
3318
+ "default": "false",
3319
+ "description": "required attribute of the input field.\nIf true, the consumer should indicate it on the label that the input field is required.",
3320
+ "attribute": "required"
3321
+ },
3322
+ {
3323
+ "kind": "field",
3324
+ "name": "readonly",
3325
+ "type": {
3326
+ "text": "boolean"
3327
+ },
3328
+ "default": "false",
3329
+ "description": "readonly attribute of the input field. If true, the input field is read-only.",
3330
+ "attribute": "readonly"
3331
+ },
3332
+ {
3333
+ "kind": "field",
3334
+ "name": "prefixText",
3335
+ "type": {
3336
+ "text": "string | undefined"
3337
+ },
3338
+ "description": "The prefix text that is displayed before the input field. It has a max length of 10 characters.\nWhen the prefix text is set, make sure to set the 'data-aria-label'\nattribute with the appropriate value for accessibility.",
3339
+ "attribute": "prefix-text"
1990
3340
  },
1991
3341
  {
1992
- "description": "width of the divider",
1993
- "name": "--mdc-divider-width"
3342
+ "kind": "field",
3343
+ "name": "leadingIcon",
3344
+ "type": {
3345
+ "text": "IconNames | undefined"
3346
+ },
3347
+ "description": "The leading icon that is displayed before the input field.",
3348
+ "attribute": "leading-icon"
1994
3349
  },
1995
3350
  {
1996
- "description": "gradient of the horizontal divider",
1997
- "name": "--mdc-divider-horizontal-gradient"
3351
+ "kind": "field",
3352
+ "name": "trailingButton",
3353
+ "type": {
3354
+ "text": "boolean"
3355
+ },
3356
+ "default": "false",
3357
+ "description": "The trailing button when set to true, shows a clear button that clears the input field.",
3358
+ "attribute": "trailing-button"
1998
3359
  },
1999
3360
  {
2000
- "description": "gradient of the vertical divider",
2001
- "name": "--mdc-divider-vertical-gradient"
3361
+ "kind": "field",
3362
+ "name": "maxlength",
3363
+ "type": {
3364
+ "text": "number | undefined"
3365
+ },
3366
+ "description": "The maximum number of characters that the input field can accept.",
3367
+ "attribute": "maxlength"
2002
3368
  },
2003
3369
  {
2004
- "description": "font size of label in the text divider",
2005
- "name": "--mdc-divider-text-size"
3370
+ "kind": "field",
3371
+ "name": "minlength",
3372
+ "type": {
3373
+ "text": "number | undefined"
3374
+ },
3375
+ "description": "The minimum number of characters that the input field can accept.",
3376
+ "attribute": "minlength"
2006
3377
  },
2007
3378
  {
2008
- "description": "font color of label in the text divider",
2009
- "name": "--mdc-divider-text-color"
3379
+ "kind": "field",
3380
+ "name": "autocapitalize",
3381
+ "type": {
3382
+ "text": "AutoCapitalizeType"
3383
+ },
3384
+ "description": "The autocapitalize attribute of the input field.",
3385
+ "default": "'off'",
3386
+ "attribute": "autocapitalize"
2010
3387
  },
2011
3388
  {
2012
- "description": "left and right margin of label in the text divider",
2013
- "name": "--mdc-divider-text-margin"
3389
+ "kind": "field",
3390
+ "name": "autocomplete",
3391
+ "type": {
3392
+ "text": "any"
3393
+ },
3394
+ "default": "'off'",
3395
+ "description": "The autocomplete attribute of the input field.",
3396
+ "attribute": "autocomplete"
2014
3397
  },
2015
3398
  {
2016
- "description": "line height of label in the text divider",
2017
- "name": "--mdc-divider-text-line-height"
3399
+ "kind": "field",
3400
+ "name": "autofocus",
3401
+ "type": {
3402
+ "text": "boolean"
3403
+ },
3404
+ "default": "false",
3405
+ "description": "If true, the input field is focused when the component is rendered.",
3406
+ "attribute": "autofocus"
2018
3407
  },
2019
3408
  {
2020
- "description": "border radius of the grabber button",
2021
- "name": "--mdc-divider-grabber-button-border-radius"
2022
- }
2023
- ],
2024
- "members": [
3409
+ "kind": "field",
3410
+ "name": "dirname",
3411
+ "type": {
3412
+ "text": "string | undefined"
3413
+ },
3414
+ "description": "Specifies the name of the directionality of text for submission purposes (e.g., \"rtl\" for right-to-left).",
3415
+ "attribute": "dirname"
3416
+ },
2025
3417
  {
2026
3418
  "kind": "field",
2027
- "name": "orientation",
3419
+ "name": "pattern",
2028
3420
  "type": {
2029
- "text": "DividerOrientation"
3421
+ "text": "string | undefined"
2030
3422
  },
2031
- "description": "Two orientations of divider\n- **horizontal**: A thin, horizontal line with 0.0625rem width.\n- **vertical**: A thin, vertical line with 0.0625rem width.\n\nNote: We do not support \"Vertical Text Divider\" as of now.",
2032
- "default": "horizontal",
2033
- "attribute": "orientation",
2034
- "reflects": true
3423
+ "description": "The pattern attribute of the input field.\nSpecifies a regular expression that the input value must match for validation purposes.",
3424
+ "attribute": "pattern"
2035
3425
  },
2036
3426
  {
2037
3427
  "kind": "field",
2038
- "name": "variant",
3428
+ "name": "list",
2039
3429
  "type": {
2040
- "text": "DividerVariant"
3430
+ "text": "string | undefined"
2041
3431
  },
2042
- "description": "Two variants of divider\n- **solid**: Solid line.\n- **gradient**: Gradient Line that fades on either sides of the divider.",
2043
- "default": "solid",
2044
- "attribute": "variant",
2045
- "reflects": true
3432
+ "description": "The list attribute of the input field.\nIdentifies a list of pre-defined options to suggest to the user.",
3433
+ "attribute": "list"
2046
3434
  },
2047
3435
  {
2048
3436
  "kind": "field",
2049
- "name": "arrowDirection",
3437
+ "name": "size",
2050
3438
  "type": {
2051
- "text": "Directions"
3439
+ "text": "number | undefined | undefined"
2052
3440
  },
2053
- "description": "Direction of the arrow icon, if applicable.\n- **positive**\n- **negative**\n\nNote: Positive and Negative directions are defined based on Cartesian plane.",
2054
- "default": "'negative'",
2055
- "attribute": "arrow-direction",
2056
- "reflects": true
3441
+ "description": "The size attribute of the input field.\nSpecifies the width of the input field.",
3442
+ "default": "undefined",
3443
+ "attribute": "size"
2057
3444
  },
2058
3445
  {
2059
3446
  "kind": "field",
2060
- "name": "buttonPosition",
3447
+ "name": "clearAriaLabel",
2061
3448
  "type": {
2062
- "text": "Directions"
3449
+ "text": "string"
2063
3450
  },
2064
- "description": "Position of the button, if applicable.\n- **positive**\n- **negative**\n\nNote: Positive and Negative directions are defined based on Cartesian plane.",
2065
- "default": "'negative'",
2066
- "attribute": "button-position",
2067
- "reflects": true
3451
+ "default": "''",
3452
+ "description": "Aria label for the trailing button. If trailing button is set to true, this label is used for the clear button.",
3453
+ "attribute": "clear-aria-label"
2068
3454
  },
2069
3455
  {
2070
3456
  "kind": "method",
2071
- "name": "setVariant",
3457
+ "name": "checkValidity",
3458
+ "return": {
3459
+ "type": {
3460
+ "text": "boolean"
3461
+ }
3462
+ }
3463
+ },
3464
+ {
3465
+ "kind": "method",
3466
+ "name": "reportValidity"
3467
+ },
3468
+ {
3469
+ "kind": "method",
3470
+ "name": "handleValueChange",
3471
+ "description": "Handles the value change of the input field.\nSets the form value and updates the validity of the input field.",
3472
+ "return": {
3473
+ "type": {
3474
+ "text": ""
3475
+ }
3476
+ }
3477
+ },
3478
+ {
3479
+ "kind": "method",
3480
+ "name": "setValidityFromInput",
2072
3481
  "privacy": "private",
2073
- "parameters": [
2074
- {
2075
- "name": "variant",
2076
- "type": {
2077
- "text": "DividerVariant"
2078
- },
2079
- "description": "The variant to set."
3482
+ "description": "Sets the validity of the input field based on the input field's validity.",
3483
+ "return": {
3484
+ "type": {
3485
+ "text": ""
2080
3486
  }
2081
- ],
2082
- "description": "Sets the variant attribute for the divider component.\nIf the provided variant is not included in the DIVIDER_VARIANT,\nit defaults to the value specified in DEFAULTS.VARIANT."
3487
+ }
2083
3488
  },
2084
3489
  {
2085
3490
  "kind": "method",
2086
- "name": "setOrientation",
3491
+ "name": "updateValue",
2087
3492
  "privacy": "private",
2088
- "parameters": [
2089
- {
2090
- "name": "orientation",
2091
- "type": {
2092
- "text": "DividerOrientation"
2093
- },
2094
- "description": "The orientation to set."
3493
+ "description": "Updates the value of the input field.\nSets the form value.",
3494
+ "return": {
3495
+ "type": {
3496
+ "text": ""
2095
3497
  }
2096
- ],
2097
- "description": "Sets the orientation attribute for the divider component.\nIf the provided orientation is not included in the DIVIDER_ORIENTATION,\nit defaults to the value specified in DEFAULTS.ORIENTATION."
3498
+ }
2098
3499
  },
2099
3500
  {
2100
3501
  "kind": "method",
2101
- "name": "ensureValidDirections",
3502
+ "name": "onInput",
3503
+ "privacy": "private",
3504
+ "description": "Handles the input event of the input field.\nUpdates the value and sets the validity of the input field."
3505
+ },
3506
+ {
3507
+ "kind": "method",
3508
+ "name": "onChange",
2102
3509
  "privacy": "private",
2103
- "description": "Sets the buttonPosition and arrowDirection attribute for the divider component.\nIf the provided buttonPosition and arrowDirection are not included in the DIRECTIONS,\nit defaults to the value specified in DIRECTIONS based on the ORIENTATION.",
2104
3510
  "parameters": [
2105
3511
  {
2106
- "description": "The buttonPosition to set.",
2107
- "name": "buttonPosition"
2108
- },
2109
- {
2110
- "description": "The arrowDirection to set.",
2111
- "name": "arrowDirection"
3512
+ "name": "event",
3513
+ "type": {
3514
+ "text": "Event"
3515
+ },
3516
+ "description": "Event which contains information about the value change."
2112
3517
  }
2113
- ]
3518
+ ],
3519
+ "description": "Handles the change event of the input field.\nUpdates the value and sets the validity of the input field.\n\nThe 'change' event does not bubble up through the shadow DOM as it was not composed.\nTherefore, we need to re-dispatch the same event to ensure it is propagated correctly.\nRead more: https://developer.mozilla.org/en-US/docs/Web/API/Event/composed"
2114
3520
  },
2115
3521
  {
2116
3522
  "kind": "method",
2117
- "name": "setGrabberButton",
2118
- "privacy": "private",
3523
+ "name": "renderLeadingIcon",
3524
+ "privacy": "protected",
3525
+ "description": "Renders the leading icon before the input field.\nIf the leading icon is not set, it will not be displayed.",
2119
3526
  "return": {
2120
3527
  "type": {
2121
- "text": "void"
3528
+ "text": ""
2122
3529
  }
2123
- },
2124
- "description": "Configures the grabber button within the divider.\n\n- Sets the `prefix-icon` attribute for the grabber button based\non the `arrow-direction` and `orientation` properties.\n\nThis method updates the DOM element dynamically if a grabber button is present."
3530
+ }
2125
3531
  },
2126
3532
  {
2127
3533
  "kind": "method",
2128
- "name": "getArrowIcon",
2129
- "privacy": "private",
3534
+ "name": "renderPrefixText",
3535
+ "privacy": "protected",
3536
+ "description": "Renders the prefix text before the input field.\nIf the prefix text is more than 10 characters,\n- it will not be displayed.\n- the validation messsage will be displayed.\n\n Note: We are setting aria-hidden so that the screen reader does not read the prefix text.\n The consumers should set the appropriate aria-label for the input field using 'data-aria-label' attribute.",
2130
3537
  "return": {
2131
3538
  "type": {
2132
3539
  "text": ""
2133
3540
  }
2134
- },
2135
- "description": "Determines the arrow icon based on the consumer-defined `arrowDirection`."
3541
+ }
2136
3542
  },
2137
3543
  {
2138
3544
  "kind": "method",
2139
- "name": "inferDividerType",
3545
+ "name": "clearInputText",
2140
3546
  "privacy": "private",
2141
- "description": "Infers the type of divider based on the kind of slot present.",
2142
- "parameters": [
2143
- {
2144
- "description": "default slot of divider",
2145
- "name": "slot"
2146
- }
2147
- ]
2148
- }
2149
- ],
2150
- "attributes": [
3547
+ "description": "Clears the input field."
3548
+ },
2151
3549
  {
2152
- "name": "orientation",
2153
- "type": {
2154
- "text": "DividerOrientation"
2155
- },
2156
- "description": "Two orientations of divider\n- **horizontal**: A thin, horizontal line with 0.0625rem width.\n- **vertical**: A thin, vertical line with 0.0625rem width.\n\nNote: We do not support \"Vertical Text Divider\" as of now.",
2157
- "default": "horizontal",
2158
- "fieldName": "orientation"
3550
+ "kind": "method",
3551
+ "name": "renderTrailingButton",
3552
+ "privacy": "protected",
3553
+ "description": "Renders the trailing button to clear the input field if the trailingButton is set to true.",
3554
+ "return": {
3555
+ "type": {
3556
+ "text": ""
3557
+ }
3558
+ }
2159
3559
  },
2160
3560
  {
2161
- "name": "variant",
3561
+ "kind": "field",
3562
+ "name": "dataAriaLabel",
2162
3563
  "type": {
2163
- "text": "DividerVariant"
3564
+ "text": "string | null"
2164
3565
  },
2165
- "description": "Two variants of divider\n- **solid**: Solid line.\n- **gradient**: Gradient Line that fades on either sides of the divider.",
2166
- "default": "solid",
2167
- "fieldName": "variant"
3566
+ "default": "null",
3567
+ "description": "Defines a string value that labels the current element.\nThe Aria-Label attribute to be set for accessibility.",
3568
+ "attribute": "data-aria-label",
3569
+ "reflects": true,
3570
+ "inheritedFrom": {
3571
+ "name": "DataAriaLabelMixin",
3572
+ "module": "utils/mixins/DataAriaLabelMixin.js"
3573
+ }
2168
3574
  },
2169
3575
  {
2170
- "name": "arrow-direction",
3576
+ "kind": "field",
3577
+ "name": "value",
2171
3578
  "type": {
2172
- "text": "Directions"
3579
+ "text": "string"
2173
3580
  },
2174
- "description": "Direction of the arrow icon, if applicable.\n- **positive**\n- **negative**\n\nNote: Positive and Negative directions are defined based on Cartesian plane.",
2175
- "default": "'negative'",
2176
- "fieldName": "arrowDirection"
3581
+ "default": "''",
3582
+ "description": "Indicates the value of the component group (ex: input, checkbox, radio, select etc...)",
3583
+ "attribute": "value",
3584
+ "reflects": true,
3585
+ "inheritedFrom": {
3586
+ "name": "ValueMixin",
3587
+ "module": "utils/mixins/ValueMixin.js"
3588
+ }
2177
3589
  },
2178
3590
  {
2179
- "name": "button-position",
2180
- "type": {
2181
- "text": "Directions"
2182
- },
2183
- "description": "Position of the button, if applicable.\n- **positive**\n- **negative**\n\nNote: Positive and Negative directions are defined based on Cartesian plane.",
2184
- "default": "'negative'",
2185
- "fieldName": "buttonPosition"
2186
- }
2187
- ],
2188
- "superclass": {
2189
- "name": "Component",
2190
- "module": "/src/models"
2191
- },
2192
- "tagName": "mdc-divider",
2193
- "jsDoc": "/**\n * `mdc-divider` is a component that provides a line to separate and organize content.\n * It can also include a button or text positioned centrally, allowing users to interact with the layout.\n *\n * **Divider Orientation:**\n * - **Horizontal**: A thin, horizontal line.\n * - **Vertical**: A thin, vertical line.\n *\n * **Divider Variants:**\n * - **solid**: Solid line.\n * - **gradient**: Gradient Line.\n *\n * **Divider Types:**\n * - The type of divider is inferred based on the kind of slot present.\n * - **Primary**: A simple horizontal or vertical divider.\n * - **Text**: A horizontal divider with a text label in the center.\n * - **Grabber Button**: A horizontal or vertical divider with a styled button in the center.\n *\n * **Accessibility:**\n * - When the slot is replaced by an `mdc-button`:\n * - `aria-label` should be passed to the `mdc-button`.\n * - `aria-expanded` should be passed to the `mdc-button`.\n *\n * **Notes:**\n * - If the slot is replaced by an invalid tag name or contains multiple elements,\n * the divider defaults to the **Primary** type.\n * - To override the styles of the divider, use the provided CSS custom properties.\n *\n * @tagname mdc-divider\n *\n * @cssproperty --mdc-divider-background-color - background color of the divider\n * @cssproperty --mdc-divider-width - width of the divider\n * @cssproperty --mdc-divider-horizontal-gradient - gradient of the horizontal divider\n * @cssproperty --mdc-divider-vertical-gradient - gradient of the vertical divider\n * @cssproperty --mdc-divider-text-size - font size of label in the text divider\n * @cssproperty --mdc-divider-text-color - font color of label in the text divider\n * @cssproperty --mdc-divider-text-margin - left and right margin of label in the text divider\n * @cssproperty --mdc-divider-text-line-height - line height of label in the text divider\n * @cssproperty --mdc-divider-grabber-button-border-radius - border radius of the grabber button\n */",
2194
- "customElement": true
2195
- }
2196
- ],
2197
- "exports": [
2198
- {
2199
- "kind": "js",
2200
- "name": "default",
2201
- "declaration": {
2202
- "name": "Divider",
2203
- "module": "components/divider/divider.component.js"
2204
- }
2205
- }
2206
- ]
2207
- },
2208
- {
2209
- "kind": "javascript-module",
2210
- "path": "components/formfieldwrapper/formfieldwrapper.component.js",
2211
- "declarations": [
2212
- {
2213
- "kind": "class",
2214
- "description": "formfieldwrapper is a component that contains the label and helper/validation text\n that can be configured in various ways to suit different use cases (most of the input related components).\nIt is used as an internal component and is not intended to be used directly by consumers.",
2215
- "name": "FormfieldWrapper",
2216
- "slots": [
3591
+ "kind": "field",
3592
+ "name": "name",
3593
+ "type": {
3594
+ "text": "string"
3595
+ },
3596
+ "default": "''",
3597
+ "description": "Indicates the name of the component group (ex: checkbox, radio group).\nThey are used to group elements in a form together.",
3598
+ "attribute": "name",
3599
+ "reflects": true,
3600
+ "inheritedFrom": {
3601
+ "name": "NameMixin",
3602
+ "module": "utils/mixins/NameMixin.js"
3603
+ }
3604
+ },
2217
3605
  {
2218
- "description": "slot to add the label info icon",
2219
- "name": "label-info"
2220
- }
2221
- ],
2222
- "members": [
3606
+ "kind": "field",
3607
+ "name": "disabled",
3608
+ "type": {
3609
+ "text": "boolean"
3610
+ },
3611
+ "default": "false",
3612
+ "description": "Indicates whether the component is disabled.\nWhen the component is disabled for user interaction; it is not focusable or clickable.",
3613
+ "attribute": "disabled",
3614
+ "reflects": true,
3615
+ "inheritedFrom": {
3616
+ "name": "FormfieldWrapper",
3617
+ "module": "components/formfieldwrapper/formfieldwrapper.component.js"
3618
+ }
3619
+ },
2223
3620
  {
2224
3621
  "kind": "field",
2225
3622
  "name": "label",
@@ -2228,14 +3625,22 @@
2228
3625
  },
2229
3626
  "description": "The label of the input field. It is linked to the input field using the `for` attribute.",
2230
3627
  "attribute": "label",
2231
- "reflects": true
3628
+ "reflects": true,
3629
+ "inheritedFrom": {
3630
+ "name": "FormfieldWrapper",
3631
+ "module": "components/formfieldwrapper/formfieldwrapper.component.js"
3632
+ }
2232
3633
  },
2233
3634
  {
2234
3635
  "kind": "field",
2235
3636
  "name": "id",
2236
3637
  "default": "`mdc-input-${uuidv4()}`",
2237
3638
  "description": "The unique id of the input field. It is used to link the input field with the label.",
2238
- "attribute": "id"
3639
+ "attribute": "id",
3640
+ "inheritedFrom": {
3641
+ "name": "FormfieldWrapper",
3642
+ "module": "components/formfieldwrapper/formfieldwrapper.component.js"
3643
+ }
2239
3644
  },
2240
3645
  {
2241
3646
  "kind": "field",
@@ -2245,7 +3650,11 @@
2245
3650
  },
2246
3651
  "description": "The type of help text. It can be 'default', 'error', 'warning', 'success', 'priority'.",
2247
3652
  "attribute": "help-text-type",
2248
- "reflects": true
3653
+ "reflects": true,
3654
+ "inheritedFrom": {
3655
+ "name": "FormfieldWrapper",
3656
+ "module": "components/formfieldwrapper/formfieldwrapper.component.js"
3657
+ }
2249
3658
  },
2250
3659
  {
2251
3660
  "kind": "field",
@@ -2255,7 +3664,11 @@
2255
3664
  },
2256
3665
  "description": "The help text that is displayed below the input field.",
2257
3666
  "attribute": "help-text",
2258
- "reflects": true
3667
+ "reflects": true,
3668
+ "inheritedFrom": {
3669
+ "name": "FormfieldWrapper",
3670
+ "module": "components/formfieldwrapper/formfieldwrapper.component.js"
3671
+ }
2259
3672
  },
2260
3673
  {
2261
3674
  "kind": "method",
@@ -2266,6 +3679,10 @@
2266
3679
  "type": {
2267
3680
  "text": ""
2268
3681
  }
3682
+ },
3683
+ "inheritedFrom": {
3684
+ "name": "FormfieldWrapper",
3685
+ "module": "components/formfieldwrapper/formfieldwrapper.component.js"
2269
3686
  }
2270
3687
  },
2271
3688
  {
@@ -2277,6 +3694,10 @@
2277
3694
  "type": {
2278
3695
  "text": ""
2279
3696
  }
3697
+ },
3698
+ "inheritedFrom": {
3699
+ "name": "FormfieldWrapper",
3700
+ "module": "components/formfieldwrapper/formfieldwrapper.component.js"
2280
3701
  }
2281
3702
  },
2282
3703
  {
@@ -2288,6 +3709,10 @@
2288
3709
  "type": {
2289
3710
  "text": ""
2290
3711
  }
3712
+ },
3713
+ "inheritedFrom": {
3714
+ "name": "FormfieldWrapper",
3715
+ "module": "components/formfieldwrapper/formfieldwrapper.component.js"
2291
3716
  }
2292
3717
  },
2293
3718
  {
@@ -2299,6 +3724,10 @@
2299
3724
  "type": {
2300
3725
  "text": ""
2301
3726
  }
3727
+ },
3728
+ "inheritedFrom": {
3729
+ "name": "FormfieldWrapper",
3730
+ "module": "components/formfieldwrapper/formfieldwrapper.component.js"
2302
3731
  }
2303
3732
  },
2304
3733
  {
@@ -2310,423 +3739,288 @@
2310
3739
  "type": {
2311
3740
  "text": ""
2312
3741
  }
3742
+ },
3743
+ "inheritedFrom": {
3744
+ "name": "FormfieldWrapper",
3745
+ "module": "components/formfieldwrapper/formfieldwrapper.component.js"
2313
3746
  }
2314
- },
3747
+ }
3748
+ ],
3749
+ "events": [
2315
3750
  {
2316
- "kind": "field",
2317
- "name": "disabled",
2318
3751
  "type": {
2319
- "text": "boolean"
2320
- },
2321
- "default": "false",
2322
- "description": "Indicates whether the component is disabled.\nWhen the component is disabled for user interaction; it is not focusable or clickable.",
2323
- "attribute": "disabled",
2324
- "reflects": true,
2325
- "inheritedFrom": {
2326
- "name": "DisabledMixin",
2327
- "module": "utils/mixins/DisabledMixin.js"
3752
+ "text": "EventConstructor"
2328
3753
  }
2329
3754
  }
2330
3755
  ],
2331
3756
  "attributes": [
2332
3757
  {
2333
- "name": "label",
3758
+ "name": "placeholder",
2334
3759
  "type": {
2335
- "text": "string | undefined"
3760
+ "text": "string"
2336
3761
  },
2337
- "description": "The label of the input field. It is linked to the input field using the `for` attribute.",
2338
- "fieldName": "label"
3762
+ "default": "''",
3763
+ "description": "The placeholder text that is displayed when the input field is empty.",
3764
+ "fieldName": "placeholder"
2339
3765
  },
2340
3766
  {
2341
- "name": "id",
2342
- "default": "`mdc-input-${uuidv4()}`",
2343
- "description": "The unique id of the input field. It is used to link the input field with the label.",
2344
- "fieldName": "id"
3767
+ "name": "required",
3768
+ "type": {
3769
+ "text": "boolean"
3770
+ },
3771
+ "default": "false",
3772
+ "description": "required attribute of the input field.\nIf true, the consumer should indicate it on the label that the input field is required.",
3773
+ "fieldName": "required"
2345
3774
  },
2346
3775
  {
2347
- "name": "help-text-type",
3776
+ "name": "readonly",
2348
3777
  "type": {
2349
- "text": "ValidationType"
3778
+ "text": "boolean"
2350
3779
  },
2351
- "description": "The type of help text. It can be 'default', 'error', 'warning', 'success', 'priority'.",
2352
- "fieldName": "helpTextType"
3780
+ "default": "false",
3781
+ "description": "readonly attribute of the input field. If true, the input field is read-only.",
3782
+ "fieldName": "readonly"
2353
3783
  },
2354
3784
  {
2355
- "name": "help-text",
3785
+ "name": "prefix-text",
2356
3786
  "type": {
2357
3787
  "text": "string | undefined"
2358
3788
  },
2359
- "description": "The help text that is displayed below the input field.",
2360
- "fieldName": "helpText"
3789
+ "description": "The prefix text that is displayed before the input field. It has a max length of 10 characters.\nWhen the prefix text is set, make sure to set the 'data-aria-label'\nattribute with the appropriate value for accessibility.",
3790
+ "fieldName": "prefixText"
2361
3791
  },
2362
3792
  {
2363
- "name": "disabled",
3793
+ "name": "leading-icon",
2364
3794
  "type": {
2365
- "text": "boolean"
3795
+ "text": "IconNames | undefined"
2366
3796
  },
2367
- "default": "false",
2368
- "description": "Indicates whether the component is disabled.\nWhen the component is disabled for user interaction; it is not focusable or clickable.",
2369
- "fieldName": "disabled",
2370
- "inheritedFrom": {
2371
- "name": "DisabledMixin",
2372
- "module": "src/utils/mixins/DisabledMixin.ts"
2373
- }
2374
- }
2375
- ],
2376
- "mixins": [
2377
- {
2378
- "name": "DisabledMixin",
2379
- "module": "/src/utils/mixins/DisabledMixin"
2380
- }
2381
- ],
2382
- "superclass": {
2383
- "name": "Component",
2384
- "module": "/src/models"
2385
- },
2386
- "tagName": "mdc-formfieldwrapper",
2387
- "jsDoc": "/**\n * formfieldwrapper is a component that contains the label and helper/validation text\n * that can be configured in various ways to suit different use cases (most of the input related components).\n * It is used as an internal component and is not intended to be used directly by consumers.\n *\n * @tagname mdc-formfieldwrapper\n *\n * @slot label-info - slot to add the label info icon\n *\n */",
2388
- "customElement": true
2389
- }
2390
- ],
2391
- "exports": [
2392
- {
2393
- "kind": "js",
2394
- "name": "default",
2395
- "declaration": {
2396
- "name": "FormfieldWrapper",
2397
- "module": "components/formfieldwrapper/formfieldwrapper.component.js"
2398
- }
2399
- }
2400
- ]
2401
- },
2402
- {
2403
- "kind": "javascript-module",
2404
- "path": "components/icon/icon.component.js",
2405
- "declarations": [
2406
- {
2407
- "kind": "class",
2408
- "description": "Icon component that dynamically displays SVG icons based on a valid name.\n\nThis component must be mounted within an `IconProvider` component.\n\nThe `IconProvider` defines the source URL from which icons are consumed.\nThe `Icon` component accepts a `name` attribute, which corresponds to\nthe file name of the icon to be loaded from the specified URL.\n\nOnce fetched, the icon will be rendered. If the fetching process is unsuccessful,\nno icon will be displayed.\n\nThe `size` attribute allows for dynamic sizing of the icon based on the provided\n`length-unit` attribute. This unit can either come from the `IconProvider`\nor can be overridden for each individual icon. For example:\nif `size = 1` and `length-unit = 'em'`, the dimensions of the icon will be\n`width: 1em; height: 1em`.\n\nRegarding accessibility, there are three types of icons: decorative, informative and informative standalone.\n\n### Decorative Icons\n- Decorative icons do not convey any essential information to the content of a page.\n- They should be hidden from screen readers (SR) to prevent confusion for users.\n- For decorative icons, an `aria-label` is not required, and the `role` will be set to null.\n\n### Informative Icons\n- Informative icons convey important information that is not adequately represented\n by surrounding text or components.\n- They provide valuable context and must be announced by assistive technologies.\n- For informative icons, an `aria-label` is required, and the `role` will be set to \"img\" automatically.\n- If an `aria-label` is provided, the role will be set to 'img'; if it is absent,\n the role will be unset.\n\n### Informative Standalone Icons\n- If an icon is informative (as mentioned above) and does not belong to a button (=standalone), it must\nhave a Tooltip that describes what it means.\n- For informative standalone icons, an `aria-label` & `tabindex=\"0\"` is required,\nand the `role` will be set to \"img\" automatically.\n- **Only use this when a Icon is standalone and is not part of a button or other interactive elements.**",
2409
- "name": "Icon",
2410
- "cssProperties": [
2411
- {
2412
- "description": "Allows customization of the default fill color.",
2413
- "name": "--mdc-icon-fill-color"
2414
- },
2415
- {
2416
- "description": "Allows customization of the icon size.",
2417
- "name": "--mdc-icon-size"
3797
+ "description": "The leading icon that is displayed before the input field.",
3798
+ "fieldName": "leadingIcon"
2418
3799
  },
2419
3800
  {
2420
- "description": "Allows customization of the icon border radius.",
2421
- "name": "--mdc-icon-border-radius"
2422
- }
2423
- ],
2424
- "members": [
2425
- {
2426
- "kind": "field",
2427
- "name": "iconData",
3801
+ "name": "trailing-button",
2428
3802
  "type": {
2429
- "text": "HTMLElement | undefined"
3803
+ "text": "boolean"
2430
3804
  },
2431
- "privacy": "private"
3805
+ "default": "false",
3806
+ "description": "The trailing button when set to true, shows a clear button that clears the input field.",
3807
+ "fieldName": "trailingButton"
2432
3808
  },
2433
3809
  {
2434
- "kind": "field",
2435
- "name": "lengthUnitFromContext",
3810
+ "name": "maxlength",
2436
3811
  "type": {
2437
- "text": "string | undefined"
3812
+ "text": "number | undefined"
2438
3813
  },
2439
- "privacy": "private"
3814
+ "description": "The maximum number of characters that the input field can accept.",
3815
+ "fieldName": "maxlength"
2440
3816
  },
2441
3817
  {
2442
- "kind": "field",
2443
- "name": "sizeFromContext",
3818
+ "name": "minlength",
2444
3819
  "type": {
2445
3820
  "text": "number | undefined"
2446
3821
  },
2447
- "privacy": "private"
3822
+ "description": "The minimum number of characters that the input field can accept.",
3823
+ "fieldName": "minlength"
2448
3824
  },
2449
3825
  {
2450
- "kind": "field",
2451
- "name": "name",
3826
+ "name": "autocapitalize",
2452
3827
  "type": {
2453
- "text": "IconNames | undefined"
3828
+ "text": "AutoCapitalizeType"
2454
3829
  },
2455
- "description": "Name of the icon (= filename)",
2456
- "attribute": "name",
2457
- "reflects": true
3830
+ "description": "The autocapitalize attribute of the input field.",
3831
+ "default": "'off'",
3832
+ "fieldName": "autocapitalize"
2458
3833
  },
2459
3834
  {
2460
- "kind": "field",
2461
- "name": "size",
3835
+ "name": "autocomplete",
2462
3836
  "type": {
2463
- "text": "number | undefined"
3837
+ "text": "any"
2464
3838
  },
2465
- "description": "Size of the icon (works in combination with length unit)",
2466
- "attribute": "size"
3839
+ "default": "'off'",
3840
+ "description": "The autocomplete attribute of the input field.",
3841
+ "fieldName": "autocomplete"
2467
3842
  },
2468
3843
  {
2469
- "kind": "field",
2470
- "name": "lengthUnit",
3844
+ "name": "autofocus",
2471
3845
  "type": {
2472
- "text": "string | undefined"
3846
+ "text": "boolean"
2473
3847
  },
2474
- "description": "Length unit attribute for overriding length-unit from `IconProvider`",
2475
- "attribute": "length-unit"
3848
+ "default": "false",
3849
+ "description": "If true, the input field is focused when the component is rendered.",
3850
+ "fieldName": "autofocus"
2476
3851
  },
2477
3852
  {
2478
- "kind": "field",
2479
- "name": "ariaLabel",
3853
+ "name": "dirname",
2480
3854
  "type": {
2481
- "text": "string | null"
3855
+ "text": "string | undefined"
2482
3856
  },
2483
- "default": "null",
2484
- "description": "Aria-label attribute to be set for accessibility",
2485
- "attribute": "aria-label"
2486
- },
2487
- {
2488
- "kind": "field",
2489
- "name": "iconProviderContext",
2490
- "privacy": "private",
2491
- "readonly": true
3857
+ "description": "Specifies the name of the directionality of text for submission purposes (e.g., \"rtl\" for right-to-left).",
3858
+ "fieldName": "dirname"
2492
3859
  },
2493
3860
  {
2494
- "kind": "field",
2495
- "name": "abortController",
3861
+ "name": "pattern",
2496
3862
  "type": {
2497
- "text": "AbortController"
3863
+ "text": "string | undefined"
2498
3864
  },
2499
- "privacy": "private",
2500
- "default": "new AbortController()"
2501
- },
2502
- {
2503
- "kind": "method",
2504
- "name": "getIconData",
2505
- "privacy": "private",
2506
- "description": "Get Icon Data function which will fetch the icon (currently only svg)\nand sets state and attributes once fetched successfully\n\nThis method uses abortController.signal to cancel the fetch request when the component is disconnected or updated.\nIf the request is aborted after the fetch() call has been fulfilled but before the response body has been read,\nthen attempting to read the response body will reject with an AbortError exception."
2507
- },
2508
- {
2509
- "kind": "method",
2510
- "name": "handleIconLoadedSuccess",
2511
- "privacy": "private",
2512
- "parameters": [
2513
- {
2514
- "name": "iconHtml",
2515
- "type": {
2516
- "text": "HTMLElement"
2517
- },
2518
- "description": "The icon html element which has been fetched from the icon provider."
2519
- }
2520
- ],
2521
- "description": "Sets the iconData state to the fetched icon.\nDispatches a 'load' event on the component once the icon has been successfully loaded."
2522
- },
2523
- {
2524
- "kind": "method",
2525
- "name": "handleIconLoadedFailure",
2526
- "privacy": "private",
2527
- "parameters": [
2528
- {
2529
- "name": "error",
2530
- "type": {
2531
- "text": "unknown"
2532
- }
2533
- }
2534
- ],
2535
- "description": "Dispatches an 'error' event on the component when the icon fetching has failed.\nThis event bubbles and is cancelable.\nThe error detail is set to the error object."
2536
- },
2537
- {
2538
- "kind": "method",
2539
- "name": "updateSize",
2540
- "privacy": "private",
2541
- "description": "Updates the size by setting the width and height"
2542
- },
2543
- {
2544
- "kind": "field",
2545
- "name": "computedIconSize",
2546
- "privacy": "private",
2547
- "readonly": true
2548
- }
2549
- ],
2550
- "attributes": [
3865
+ "description": "The pattern attribute of the input field.\nSpecifies a regular expression that the input value must match for validation purposes.",
3866
+ "fieldName": "pattern"
3867
+ },
2551
3868
  {
2552
- "name": "name",
3869
+ "name": "list",
2553
3870
  "type": {
2554
- "text": "IconNames | undefined"
3871
+ "text": "string | undefined"
2555
3872
  },
2556
- "description": "Name of the icon (= filename)",
2557
- "fieldName": "name"
3873
+ "description": "The list attribute of the input field.\nIdentifies a list of pre-defined options to suggest to the user.",
3874
+ "fieldName": "list"
2558
3875
  },
2559
3876
  {
2560
3877
  "name": "size",
2561
3878
  "type": {
2562
- "text": "number | undefined"
3879
+ "text": "number | undefined | undefined"
2563
3880
  },
2564
- "description": "Size of the icon (works in combination with length unit)",
3881
+ "description": "The size attribute of the input field.\nSpecifies the width of the input field.",
3882
+ "default": "undefined",
2565
3883
  "fieldName": "size"
2566
3884
  },
2567
3885
  {
2568
- "name": "length-unit",
3886
+ "name": "clear-aria-label",
2569
3887
  "type": {
2570
- "text": "string | undefined"
3888
+ "text": "string"
2571
3889
  },
2572
- "description": "Length unit attribute for overriding length-unit from `IconProvider`",
2573
- "fieldName": "lengthUnit"
3890
+ "default": "''",
3891
+ "description": "Aria label for the trailing button. If trailing button is set to true, this label is used for the clear button.",
3892
+ "fieldName": "clearAriaLabel"
2574
3893
  },
2575
3894
  {
2576
- "name": "aria-label",
3895
+ "name": "data-aria-label",
2577
3896
  "type": {
2578
3897
  "text": "string | null"
2579
3898
  },
2580
3899
  "default": "null",
2581
- "description": "Aria-label attribute to be set for accessibility",
2582
- "fieldName": "ariaLabel"
2583
- }
2584
- ],
2585
- "superclass": {
2586
- "name": "Component",
2587
- "module": "/src/models"
2588
- },
2589
- "tagName": "mdc-icon",
2590
- "jsDoc": "/**\n * Icon component that dynamically displays SVG icons based on a valid name.\n *\n * This component must be mounted within an `IconProvider` component.\n *\n * The `IconProvider` defines the source URL from which icons are consumed.\n * The `Icon` component accepts a `name` attribute, which corresponds to\n * the file name of the icon to be loaded from the specified URL.\n *\n * Once fetched, the icon will be rendered. If the fetching process is unsuccessful,\n * no icon will be displayed.\n *\n * The `size` attribute allows for dynamic sizing of the icon based on the provided\n * `length-unit` attribute. This unit can either come from the `IconProvider`\n * or can be overridden for each individual icon. For example:\n * if `size = 1` and `length-unit = 'em'`, the dimensions of the icon will be\n * `width: 1em; height: 1em`.\n *\n * Regarding accessibility, there are three types of icons: decorative, informative and informative standalone.\n *\n * ### Decorative Icons\n * - Decorative icons do not convey any essential information to the content of a page.\n * - They should be hidden from screen readers (SR) to prevent confusion for users.\n * - For decorative icons, an `aria-label` is not required, and the `role` will be set to null.\n *\n * ### Informative Icons\n * - Informative icons convey important information that is not adequately represented\n * by surrounding text or components.\n * - They provide valuable context and must be announced by assistive technologies.\n * - For informative icons, an `aria-label` is required, and the `role` will be set to \"img\" automatically.\n * - If an `aria-label` is provided, the role will be set to 'img'; if it is absent,\n * the role will be unset.\n *\n * ### Informative Standalone Icons\n * - If an icon is informative (as mentioned above) and does not belong to a button (=standalone), it must\n * have a Tooltip that describes what it means.\n * - For informative standalone icons, an `aria-label` & `tabindex=\"0\"` is required,\n * and the `role` will be set to \"img\" automatically.\n * - **Only use this when a Icon is standalone and is not part of a button or other interactive elements.**\n *\n * @tagname mdc-icon\n *\n * @cssproperty --mdc-icon-fill-color - Allows customization of the default fill color.\n * @cssproperty --mdc-icon-size - Allows customization of the icon size.\n * @cssproperty --mdc-icon-border-radius - Allows customization of the icon border radius.\n */",
2591
- "customElement": true
2592
- }
2593
- ],
2594
- "exports": [
2595
- {
2596
- "kind": "js",
2597
- "name": "default",
2598
- "declaration": {
2599
- "name": "Icon",
2600
- "module": "components/icon/icon.component.js"
2601
- }
2602
- }
2603
- ]
2604
- },
2605
- {
2606
- "kind": "javascript-module",
2607
- "path": "components/iconprovider/iconprovider.component.js",
2608
- "declarations": [
2609
- {
2610
- "kind": "class",
2611
- "description": "IconProvider component, which allows to be consumed from sub components\n(see `providerUtils.consume` for how to consume)\n\nBundling icons will be up to the consumer of this component, such\nthat only a url has to be passed in from which the icons will be\nfetched.",
2612
- "name": "IconProvider",
2613
- "slots": [
2614
- {
2615
- "description": "children",
2616
- "name": ""
2617
- }
2618
- ],
2619
- "members": [
2620
- {
2621
- "kind": "field",
2622
- "name": "Context",
2623
- "privacy": "public",
2624
- "static": true,
2625
- "description": "Context object of the IconProvider, to be consumed by child components",
2626
- "readonly": true
3900
+ "description": "Defines a string value that labels the current element.\nThe Aria-Label attribute to be set for accessibility.",
3901
+ "fieldName": "dataAriaLabel",
3902
+ "inheritedFrom": {
3903
+ "name": "DataAriaLabelMixin",
3904
+ "module": "src/utils/mixins/DataAriaLabelMixin.ts"
3905
+ }
2627
3906
  },
2628
3907
  {
2629
- "kind": "field",
2630
- "name": "url",
3908
+ "name": "value",
2631
3909
  "type": {
2632
- "text": "string | undefined"
3910
+ "text": "string"
2633
3911
  },
2634
- "description": "Url of where icons will be fetched from",
2635
- "attribute": "url"
3912
+ "default": "''",
3913
+ "description": "Indicates the value of the component group (ex: input, checkbox, radio, select etc...)",
3914
+ "fieldName": "value",
3915
+ "inheritedFrom": {
3916
+ "name": "ValueMixin",
3917
+ "module": "src/utils/mixins/ValueMixin.ts"
3918
+ }
2636
3919
  },
2637
3920
  {
2638
- "kind": "field",
2639
- "name": "fileExtension",
3921
+ "name": "name",
2640
3922
  "type": {
2641
- "text": "string | undefined"
3923
+ "text": "string"
2642
3924
  },
2643
- "description": "File extension of icons",
2644
- "default": "svg",
2645
- "attribute": "file-extension",
2646
- "reflects": true
3925
+ "default": "''",
3926
+ "description": "Indicates the name of the component group (ex: checkbox, radio group).\nThey are used to group elements in a form together.",
3927
+ "fieldName": "name",
3928
+ "inheritedFrom": {
3929
+ "name": "NameMixin",
3930
+ "module": "src/utils/mixins/NameMixin.ts"
3931
+ }
2647
3932
  },
2648
3933
  {
2649
- "kind": "field",
2650
- "name": "lengthUnit",
3934
+ "name": "disabled",
2651
3935
  "type": {
2652
- "text": "string"
3936
+ "text": "boolean"
2653
3937
  },
2654
- "description": "Length unit used for sizing of icons",
2655
- "default": "em",
2656
- "attribute": "length-unit",
2657
- "reflects": true
3938
+ "default": "false",
3939
+ "description": "Indicates whether the component is disabled.\nWhen the component is disabled for user interaction; it is not focusable or clickable.",
3940
+ "fieldName": "disabled",
3941
+ "inheritedFrom": {
3942
+ "name": "FormfieldWrapper",
3943
+ "module": "src/components/formfieldwrapper/formfieldwrapper.component.ts"
3944
+ }
2658
3945
  },
2659
3946
  {
2660
- "kind": "field",
2661
- "name": "size",
3947
+ "name": "label",
2662
3948
  "type": {
2663
- "text": "number | undefined"
3949
+ "text": "string | undefined"
2664
3950
  },
2665
- "description": "The default size of the icon.\nIf not set, it falls back to the size defined by the length unit.",
2666
- "default": "1",
2667
- "attribute": "size",
2668
- "reflects": true
2669
- },
2670
- {
2671
- "kind": "method",
2672
- "name": "updateValuesInContext",
2673
- "privacy": "private"
3951
+ "description": "The label of the input field. It is linked to the input field using the `for` attribute.",
3952
+ "fieldName": "label",
3953
+ "inheritedFrom": {
3954
+ "name": "FormfieldWrapper",
3955
+ "module": "src/components/formfieldwrapper/formfieldwrapper.component.ts"
3956
+ }
2674
3957
  },
2675
3958
  {
2676
- "kind": "method",
2677
- "name": "updateContext",
2678
- "privacy": "protected",
2679
- "return": {
2680
- "type": {
2681
- "text": "void"
2682
- }
3959
+ "name": "id",
3960
+ "default": "`mdc-input-${uuidv4()}`",
3961
+ "description": "The unique id of the input field. It is used to link the input field with the label.",
3962
+ "fieldName": "id",
3963
+ "inheritedFrom": {
3964
+ "name": "FormfieldWrapper",
3965
+ "module": "src/components/formfieldwrapper/formfieldwrapper.component.ts"
2683
3966
  }
2684
- }
2685
- ],
2686
- "attributes": [
3967
+ },
2687
3968
  {
2688
- "name": "url",
3969
+ "name": "help-text-type",
2689
3970
  "type": {
2690
- "text": "string | undefined"
3971
+ "text": "ValidationType"
2691
3972
  },
2692
- "description": "Url of where icons will be fetched from",
2693
- "fieldName": "url"
3973
+ "description": "The type of help text. It can be 'default', 'error', 'warning', 'success', 'priority'.",
3974
+ "fieldName": "helpTextType",
3975
+ "inheritedFrom": {
3976
+ "name": "FormfieldWrapper",
3977
+ "module": "src/components/formfieldwrapper/formfieldwrapper.component.ts"
3978
+ }
2694
3979
  },
2695
3980
  {
2696
- "name": "file-extension",
3981
+ "name": "help-text",
2697
3982
  "type": {
2698
3983
  "text": "string | undefined"
2699
3984
  },
2700
- "description": "File extension of icons",
2701
- "default": "svg",
2702
- "fieldName": "fileExtension"
3985
+ "description": "The help text that is displayed below the input field.",
3986
+ "fieldName": "helpText",
3987
+ "inheritedFrom": {
3988
+ "name": "FormfieldWrapper",
3989
+ "module": "src/components/formfieldwrapper/formfieldwrapper.component.ts"
3990
+ }
3991
+ }
3992
+ ],
3993
+ "mixins": [
3994
+ {
3995
+ "name": "DataAriaLabelMixin",
3996
+ "module": "/src/utils/mixins/DataAriaLabelMixin"
2703
3997
  },
2704
3998
  {
2705
- "name": "length-unit",
2706
- "type": {
2707
- "text": "string"
2708
- },
2709
- "description": "Length unit used for sizing of icons",
2710
- "default": "em",
2711
- "fieldName": "lengthUnit"
3999
+ "name": "ValueMixin",
4000
+ "module": "/src/utils/mixins/ValueMixin"
2712
4001
  },
2713
4002
  {
2714
- "name": "size",
2715
- "type": {
2716
- "text": "number | undefined"
2717
- },
2718
- "description": "The default size of the icon.\nIf not set, it falls back to the size defined by the length unit.",
2719
- "default": "1",
2720
- "fieldName": "size"
4003
+ "name": "NameMixin",
4004
+ "module": "/src/utils/mixins/NameMixin"
2721
4005
  }
2722
4006
  ],
2723
4007
  "superclass": {
2724
- "name": "Provider",
2725
- "module": "/src/models"
4008
+ "name": "FormfieldWrapper",
4009
+ "module": "/src/components/formfieldwrapper"
2726
4010
  },
2727
- "tagName": "mdc-iconprovider",
2728
- "jsDoc": "/**\n * IconProvider component, which allows to be consumed from sub components\n * (see `providerUtils.consume` for how to consume)\n *\n * Bundling icons will be up to the consumer of this component, such\n * that only a url has to be passed in from which the icons will be\n * fetched.\n *\n * @tagname mdc-iconprovider\n *\n * @slot - children\n */",
2729
- "customElement": true
4011
+ "tagName": "mdc-input",
4012
+ "jsDoc": "/**\n * mdc-input is a component that allows users to input text.\n * It contains:\n * - label field - describe the input field.\n * - input field - contains the value\n * - help text or validation message - displayed below the input field.\n * - trailing button - it displays a clear the input field.\n * - prefix text - displayed before the input field.\n * - leading icon - displayed before the input field.\n * - clear-aria-label - aria label for the trailing button.\n * - all the attributes of the input field.\n *\n * @tagname mdc-input\n *\n * @dependency mdc-icon\n * @dependency mdc-text\n * @dependency mdc-button\n *\n * @cssproperty --mdc-input-disabled-border-color - Border color for the input container when disabled\n * @cssproperty --mdc-input-disabled-text-color - Text color for the input field when disabled\n * @cssproperty --mdc-input-disabled-background-color - Background color for the input field when disabled\n * @cssproperty --mdc-input-border-color - Border color for the input container\n * @cssproperty --mdc-input-text-color - Text color for the input field\n * @cssproperty --mdc-input-background-color - Background color for the input field\n * @cssproperty --mdc-input-selection-background-color - Background color for the selected text\n * @cssproperty --mdc-input-selection-text-color - Text color for the selected text\n * @cssproperty --mdc-input-support-text-color - Text color for the help text\n * @cssproperty --mdc-input-hover-background-color - Background color for the input field when hovered\n * @cssproperty --mdc-input-focused-background-color - Background color for the input field when focused\n * @cssproperty --mdc-input-focused-border-color - Border color for the input container when focused\n * @cssproperty --mdc-input-error-border-color - Border color for the input container when error\n * @cssproperty --mdc-input-warning-border-color - Border color for the input container when warning\n * @cssproperty --mdc-input-success-border-color - Border color for the input container when success\n * @cssproperty --mdc-input-primary-border-color - Border color for the input container when primary\n *\n */",
4013
+ "customElement": true,
4014
+ "slots": [
4015
+ {
4016
+ "description": "slot to add the label info icon",
4017
+ "name": "label-info",
4018
+ "inheritedFrom": {
4019
+ "name": "FormfieldWrapper",
4020
+ "module": "src/components/formfieldwrapper/formfieldwrapper.component.ts"
4021
+ }
4022
+ }
4023
+ ]
2730
4024
  }
2731
4025
  ],
2732
4026
  "exports": [
@@ -2734,8 +4028,8 @@
2734
4028
  "kind": "js",
2735
4029
  "name": "default",
2736
4030
  "declaration": {
2737
- "name": "IconProvider",
2738
- "module": "components/iconprovider/iconprovider.component.js"
4031
+ "name": "Input",
4032
+ "module": "components/input/input.component.js"
2739
4033
  }
2740
4034
  }
2741
4035
  ]
@@ -2968,175 +4262,56 @@
2968
4262
  {
2969
4263
  "kind": "class",
2970
4264
  "description": "`mdc-marker`, which is a vertical line and\nused to draw attention to specific parts of\nthe content or to signify important information.\n\n**Marker Variants**:\n- **solid**: Solid marker.\n- **striped**: Striped marker.",
2971
- "name": "Marker",
2972
- "cssProperties": [
2973
- {
2974
- "description": "Allows customization of the default background color in solid variant.",
2975
- "name": "--mdc-marker-solid-background-color"
2976
- },
2977
- {
2978
- "description": "Allows customization of the default stripes in striped variant.",
2979
- "name": "--mdc-marker-striped-color"
2980
- },
2981
- {
2982
- "description": "Allows customization of the default background color in striped variant.",
2983
- "name": "--mdc-marker-striped-background-color"
2984
- },
2985
- {
2986
- "description": "Allows customization of the default width.",
2987
- "name": "--mdc-marker-width"
2988
- }
2989
- ],
2990
- "members": [
2991
- {
2992
- "kind": "field",
2993
- "name": "variant",
2994
- "type": {
2995
- "text": "MarkerVariants"
2996
- },
2997
- "privacy": "public",
2998
- "description": "There are two variants of markers, each with a width of 0.25rem:\n- **solid**: Solid marker.\n- **striped**: Striped marker.",
2999
- "default": "solid",
3000
- "attribute": "variant",
3001
- "reflects": true
3002
- }
3003
- ],
3004
- "attributes": [
3005
- {
3006
- "name": "variant",
3007
- "type": {
3008
- "text": "MarkerVariants"
3009
- },
3010
- "description": "There are two variants of markers, each with a width of 0.25rem:\n- **solid**: Solid marker.\n- **striped**: Striped marker.",
3011
- "default": "solid",
3012
- "fieldName": "variant"
3013
- }
3014
- ],
3015
- "superclass": {
3016
- "name": "Component",
3017
- "module": "/src/models"
3018
- },
3019
- "tagName": "mdc-marker",
3020
- "jsDoc": "/**\n * `mdc-marker`, which is a vertical line and\n * used to draw attention to specific parts of\n * the content or to signify important information.\n *\n * **Marker Variants**:\n * - **solid**: Solid marker.\n * - **striped**: Striped marker.\n *\n * @tagname mdc-marker\n *\n * @cssproperty --mdc-marker-solid-background-color - Allows customization of the default background color\n * in solid variant.\n * @cssproperty --mdc-marker-striped-color - Allows customization of the default stripes in striped variant.\n * @cssproperty --mdc-marker-striped-background-color - Allows customization of the default background color\n * in striped variant.\n * @cssproperty --mdc-marker-width - Allows customization of the default width.\n */",
3021
- "customElement": true
3022
- }
3023
- ],
3024
- "exports": [
3025
- {
3026
- "kind": "js",
3027
- "name": "default",
3028
- "declaration": {
3029
- "name": "Marker",
3030
- "module": "components/marker/marker.component.js"
3031
- }
3032
- }
3033
- ]
3034
- },
3035
- {
3036
- "kind": "javascript-module",
3037
- "path": "components/modalcontainer/modalcontainer.component.js",
3038
- "declarations": [
3039
- {
3040
- "kind": "class",
3041
- "description": "The `mdc-modalcontainer` component is an element used to\ndisplay a modal container that can further be used in popover.",
3042
- "name": "Modalcontainer",
4265
+ "name": "Marker",
3043
4266
  "cssProperties": [
3044
4267
  {
3045
- "description": "primary background color of the modalcontainer",
3046
- "name": "--mdc-modalcontainer-primary-background-color"
3047
- },
3048
- {
3049
- "description": "border color of the modalcontainer",
3050
- "name": "--mdc-modalcontainer-border-color"
4268
+ "description": "Allows customization of the default background color in solid variant.",
4269
+ "name": "--mdc-marker-solid-background-color"
3051
4270
  },
3052
4271
  {
3053
- "description": "inverted background color of the modalcontainer",
3054
- "name": "--mdc-modalcontainer-inverted-background-color"
4272
+ "description": "Allows customization of the default stripes in striped variant.",
4273
+ "name": "--mdc-marker-striped-color"
3055
4274
  },
3056
4275
  {
3057
- "description": "inverted border color of the modalcontainer",
3058
- "name": "--mdc-modalcontainer-inverted-border-color"
4276
+ "description": "Allows customization of the default background color in striped variant.",
4277
+ "name": "--mdc-marker-striped-background-color"
3059
4278
  },
3060
4279
  {
3061
- "description": "inverted text color of the modalcontainer",
3062
- "name": "--mdc-modalcontainer-inverted-text-color"
3063
- }
3064
- ],
3065
- "slots": [
3066
- {
3067
- "description": "Default slot for modal container",
3068
- "name": ""
4280
+ "description": "Allows customization of the default width.",
4281
+ "name": "--mdc-marker-width"
3069
4282
  }
3070
4283
  ],
3071
4284
  "members": [
3072
4285
  {
3073
4286
  "kind": "field",
3074
- "name": "color",
3075
- "type": {
3076
- "text": "ModalContainerColor"
3077
- },
3078
- "description": "Color of the modalcontainer\n- **tonal**\n- **contrast**",
3079
- "default": "tonal",
3080
- "attribute": "color",
3081
- "reflects": true
3082
- },
3083
- {
3084
- "kind": "field",
3085
- "name": "elevation",
4287
+ "name": "variant",
3086
4288
  "type": {
3087
- "text": "ModalContainerElevation"
4289
+ "text": "MarkerVariants"
3088
4290
  },
3089
- "description": "Elevation of the modalcontainer where each value corresponds to a different drop shadow.\n- **0**\n- **1**\n- **2**\n- **3**\n- **4**",
3090
- "default": "0",
3091
- "attribute": "elevation",
4291
+ "privacy": "public",
4292
+ "description": "There are two variants of markers, each with a width of 0.25rem:\n- **solid**: Solid marker.\n- **striped**: Striped marker.",
4293
+ "default": "solid",
4294
+ "attribute": "variant",
3092
4295
  "reflects": true
3093
- },
3094
- {
3095
- "kind": "field",
3096
- "name": "role",
3097
- "type": {
3098
- "text": "ModalContainerRole"
3099
- },
3100
- "description": "Role of the modalcontainer",
3101
- "default": "dialog",
3102
- "attribute": "role"
3103
4296
  }
3104
4297
  ],
3105
4298
  "attributes": [
3106
4299
  {
3107
- "name": "color",
3108
- "type": {
3109
- "text": "ModalContainerColor"
3110
- },
3111
- "description": "Color of the modalcontainer\n- **tonal**\n- **contrast**",
3112
- "default": "tonal",
3113
- "fieldName": "color"
3114
- },
3115
- {
3116
- "name": "elevation",
3117
- "type": {
3118
- "text": "ModalContainerElevation"
3119
- },
3120
- "description": "Elevation of the modalcontainer where each value corresponds to a different drop shadow.\n- **0**\n- **1**\n- **2**\n- **3**\n- **4**",
3121
- "default": "0",
3122
- "fieldName": "elevation"
3123
- },
3124
- {
3125
- "name": "role",
4300
+ "name": "variant",
3126
4301
  "type": {
3127
- "text": "ModalContainerRole"
4302
+ "text": "MarkerVariants"
3128
4303
  },
3129
- "description": "Role of the modalcontainer",
3130
- "default": "dialog",
3131
- "fieldName": "role"
4304
+ "description": "There are two variants of markers, each with a width of 0.25rem:\n- **solid**: Solid marker.\n- **striped**: Striped marker.",
4305
+ "default": "solid",
4306
+ "fieldName": "variant"
3132
4307
  }
3133
4308
  ],
3134
4309
  "superclass": {
3135
4310
  "name": "Component",
3136
4311
  "module": "/src/models"
3137
4312
  },
3138
- "tagName": "mdc-modalcontainer",
3139
- "jsDoc": "/**\n * The `mdc-modalcontainer` component is an element used to\n * display a modal container that can further be used in popover.\n *\n * @tagname mdc-modalcontainer\n *\n * @cssproperty --mdc-modalcontainer-primary-background-color - primary background color of the modalcontainer\n * @cssproperty --mdc-modalcontainer-border-color - border color of the modalcontainer\n * @cssproperty --mdc-modalcontainer-inverted-background-color - inverted background color of the modalcontainer\n * @cssproperty --mdc-modalcontainer-inverted-border-color - inverted border color of the modalcontainer\n * @cssproperty --mdc-modalcontainer-inverted-text-color - inverted text color of the modalcontainer\n *\n * @slot - Default slot for modal container\n */",
4313
+ "tagName": "mdc-marker",
4314
+ "jsDoc": "/**\n * `mdc-marker`, which is a vertical line and\n * used to draw attention to specific parts of\n * the content or to signify important information.\n *\n * **Marker Variants**:\n * - **solid**: Solid marker.\n * - **striped**: Striped marker.\n *\n * @tagname mdc-marker\n *\n * @cssproperty --mdc-marker-solid-background-color - Allows customization of the default background color\n * in solid variant.\n * @cssproperty --mdc-marker-striped-color - Allows customization of the default stripes in striped variant.\n * @cssproperty --mdc-marker-striped-background-color - Allows customization of the default background color\n * in striped variant.\n * @cssproperty --mdc-marker-width - Allows customization of the default width.\n */",
3140
4315
  "customElement": true
3141
4316
  }
3142
4317
  ],
@@ -3145,8 +4320,8 @@
3145
4320
  "kind": "js",
3146
4321
  "name": "default",
3147
4322
  "declaration": {
3148
- "name": "Modalcontainer",
3149
- "module": "components/modalcontainer/modalcontainer.component.js"
4323
+ "name": "Marker",
4324
+ "module": "components/marker/marker.component.js"
3150
4325
  }
3151
4326
  }
3152
4327
  ]
@@ -3321,6 +4496,125 @@
3321
4496
  }
3322
4497
  ]
3323
4498
  },
4499
+ {
4500
+ "kind": "javascript-module",
4501
+ "path": "components/modalcontainer/modalcontainer.component.js",
4502
+ "declarations": [
4503
+ {
4504
+ "kind": "class",
4505
+ "description": "The `mdc-modalcontainer` component is an element used to\ndisplay a modal container that can further be used in popover.",
4506
+ "name": "Modalcontainer",
4507
+ "cssProperties": [
4508
+ {
4509
+ "description": "primary background color of the modalcontainer",
4510
+ "name": "--mdc-modalcontainer-primary-background-color"
4511
+ },
4512
+ {
4513
+ "description": "border color of the modalcontainer",
4514
+ "name": "--mdc-modalcontainer-border-color"
4515
+ },
4516
+ {
4517
+ "description": "inverted background color of the modalcontainer",
4518
+ "name": "--mdc-modalcontainer-inverted-background-color"
4519
+ },
4520
+ {
4521
+ "description": "inverted border color of the modalcontainer",
4522
+ "name": "--mdc-modalcontainer-inverted-border-color"
4523
+ },
4524
+ {
4525
+ "description": "inverted text color of the modalcontainer",
4526
+ "name": "--mdc-modalcontainer-inverted-text-color"
4527
+ }
4528
+ ],
4529
+ "slots": [
4530
+ {
4531
+ "description": "Default slot for modal container",
4532
+ "name": ""
4533
+ }
4534
+ ],
4535
+ "members": [
4536
+ {
4537
+ "kind": "field",
4538
+ "name": "color",
4539
+ "type": {
4540
+ "text": "ModalContainerColor"
4541
+ },
4542
+ "description": "Color of the modalcontainer\n- **tonal**\n- **contrast**",
4543
+ "default": "tonal",
4544
+ "attribute": "color",
4545
+ "reflects": true
4546
+ },
4547
+ {
4548
+ "kind": "field",
4549
+ "name": "elevation",
4550
+ "type": {
4551
+ "text": "ModalContainerElevation"
4552
+ },
4553
+ "description": "Elevation of the modalcontainer where each value corresponds to a different drop shadow.\n- **0**\n- **1**\n- **2**\n- **3**\n- **4**",
4554
+ "default": "0",
4555
+ "attribute": "elevation",
4556
+ "reflects": true
4557
+ },
4558
+ {
4559
+ "kind": "field",
4560
+ "name": "role",
4561
+ "type": {
4562
+ "text": "ModalContainerRole"
4563
+ },
4564
+ "description": "Role of the modalcontainer",
4565
+ "default": "dialog",
4566
+ "attribute": "role"
4567
+ }
4568
+ ],
4569
+ "attributes": [
4570
+ {
4571
+ "name": "color",
4572
+ "type": {
4573
+ "text": "ModalContainerColor"
4574
+ },
4575
+ "description": "Color of the modalcontainer\n- **tonal**\n- **contrast**",
4576
+ "default": "tonal",
4577
+ "fieldName": "color"
4578
+ },
4579
+ {
4580
+ "name": "elevation",
4581
+ "type": {
4582
+ "text": "ModalContainerElevation"
4583
+ },
4584
+ "description": "Elevation of the modalcontainer where each value corresponds to a different drop shadow.\n- **0**\n- **1**\n- **2**\n- **3**\n- **4**",
4585
+ "default": "0",
4586
+ "fieldName": "elevation"
4587
+ },
4588
+ {
4589
+ "name": "role",
4590
+ "type": {
4591
+ "text": "ModalContainerRole"
4592
+ },
4593
+ "description": "Role of the modalcontainer",
4594
+ "default": "dialog",
4595
+ "fieldName": "role"
4596
+ }
4597
+ ],
4598
+ "superclass": {
4599
+ "name": "Component",
4600
+ "module": "/src/models"
4601
+ },
4602
+ "tagName": "mdc-modalcontainer",
4603
+ "jsDoc": "/**\n * The `mdc-modalcontainer` component is an element used to\n * display a modal container that can further be used in popover.\n *\n * @tagname mdc-modalcontainer\n *\n * @cssproperty --mdc-modalcontainer-primary-background-color - primary background color of the modalcontainer\n * @cssproperty --mdc-modalcontainer-border-color - border color of the modalcontainer\n * @cssproperty --mdc-modalcontainer-inverted-background-color - inverted background color of the modalcontainer\n * @cssproperty --mdc-modalcontainer-inverted-border-color - inverted border color of the modalcontainer\n * @cssproperty --mdc-modalcontainer-inverted-text-color - inverted text color of the modalcontainer\n *\n * @slot - Default slot for modal container\n */",
4604
+ "customElement": true
4605
+ }
4606
+ ],
4607
+ "exports": [
4608
+ {
4609
+ "kind": "js",
4610
+ "name": "default",
4611
+ "declaration": {
4612
+ "name": "Modalcontainer",
4613
+ "module": "components/modalcontainer/modalcontainer.component.js"
4614
+ }
4615
+ }
4616
+ ]
4617
+ },
3324
4618
  {
3325
4619
  "kind": "javascript-module",
3326
4620
  "path": "components/text/text.component.js",
@@ -3660,6 +4954,59 @@
3660
4954
  }
3661
4955
  ]
3662
4956
  },
4957
+ {
4958
+ "kind": "javascript-module",
4959
+ "path": "utils/mixins/DataAriaLabelMixin.js",
4960
+ "declarations": [
4961
+ {
4962
+ "kind": "mixin",
4963
+ "description": "",
4964
+ "name": "DataAriaLabelMixin",
4965
+ "members": [
4966
+ {
4967
+ "kind": "field",
4968
+ "name": "dataAriaLabel",
4969
+ "type": {
4970
+ "text": "string | null"
4971
+ },
4972
+ "default": "null",
4973
+ "description": "Defines a string value that labels the current element.\nThe Aria-Label attribute to be set for accessibility.",
4974
+ "attribute": "data-aria-label",
4975
+ "reflects": true
4976
+ }
4977
+ ],
4978
+ "attributes": [
4979
+ {
4980
+ "name": "data-aria-label",
4981
+ "type": {
4982
+ "text": "string | null"
4983
+ },
4984
+ "default": "null",
4985
+ "description": "Defines a string value that labels the current element.\nThe Aria-Label attribute to be set for accessibility.",
4986
+ "fieldName": "dataAriaLabel"
4987
+ }
4988
+ ],
4989
+ "parameters": [
4990
+ {
4991
+ "name": "superClass",
4992
+ "type": {
4993
+ "text": "T"
4994
+ }
4995
+ }
4996
+ ]
4997
+ }
4998
+ ],
4999
+ "exports": [
5000
+ {
5001
+ "kind": "js",
5002
+ "name": "DataAriaLabelMixin",
5003
+ "declaration": {
5004
+ "name": "DataAriaLabelMixin",
5005
+ "module": "utils/mixins/DataAriaLabelMixin.js"
5006
+ }
5007
+ }
5008
+ ]
5009
+ },
3663
5010
  {
3664
5011
  "kind": "javascript-module",
3665
5012
  "path": "utils/mixins/DisabledMixin.js",