@momentum-design/components 0.92.4 → 0.93.0

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.
@@ -530,218 +530,6 @@
530
530
  }
531
531
  ]
532
532
  },
533
- {
534
- "kind": "javascript-module",
535
- "path": "components/animation/animation.component.js",
536
- "declarations": [
537
- {
538
- "kind": "class",
539
- "description": "The `mdc-animation` component is a wrapper around the Lottie animation library.\nIt fetches the animation data dynamically based on the provided name and renders it.\nThis is a display only component that does not have any interactive functionality.\nFrom accessibility perspective, (by default) it is a decorative image component.",
540
- "name": "Animation",
541
- "members": [
542
- {
543
- "kind": "field",
544
- "name": "name",
545
- "type": {
546
- "text": "AnimationNames | undefined"
547
- },
548
- "description": "Name of the animation (= filename)",
549
- "attribute": "name",
550
- "reflects": true
551
- },
552
- {
553
- "kind": "field",
554
- "name": "loop",
555
- "type": {
556
- "text": "LoopType | undefined"
557
- },
558
- "description": "How many times to loop the animation\n- \"true\" - infinite\n- \"false\" - no loop\n- number - number of times to loop",
559
- "attribute": "loop",
560
- "reflects": true
561
- },
562
- {
563
- "kind": "field",
564
- "name": "autoplay",
565
- "type": {
566
- "text": "boolean | undefined"
567
- },
568
- "description": "Weather start the animation automatically",
569
- "attribute": "autoplay",
570
- "reflects": true
571
- },
572
- {
573
- "kind": "field",
574
- "name": "ariaLabel",
575
- "type": {
576
- "text": "string | null"
577
- },
578
- "default": "null",
579
- "description": "Aria-label attribute to be set for accessibility",
580
- "attribute": "aria-label"
581
- },
582
- {
583
- "kind": "field",
584
- "name": "ariaLabelledBy",
585
- "type": {
586
- "text": "string | null"
587
- },
588
- "default": "null",
589
- "description": "Aria-labelledby attribute to be set for accessibility",
590
- "attribute": "aria-labelledby"
591
- },
592
- {
593
- "kind": "field",
594
- "name": "lottieInstance",
595
- "type": {
596
- "text": "AnimationItem | undefined"
597
- },
598
- "privacy": "private",
599
- "description": "Lottie animation instance"
600
- },
601
- {
602
- "kind": "field",
603
- "name": "containerRef",
604
- "type": {
605
- "text": "Ref<HTMLDivElement>"
606
- },
607
- "privacy": "private",
608
- "description": "Container for the animation"
609
- },
610
- {
611
- "kind": "field",
612
- "name": "animation",
613
- "description": "Exposed API of the animation library (lottie)",
614
- "readonly": true
615
- },
616
- {
617
- "kind": "method",
618
- "name": "getLoopValue",
619
- "privacy": "private"
620
- },
621
- {
622
- "kind": "method",
623
- "name": "onLoadSuccessHandler",
624
- "privacy": "private",
625
- "parameters": [
626
- {
627
- "name": "animationData",
628
- "type": {
629
- "text": "any"
630
- }
631
- }
632
- ],
633
- "description": "Create new lotty instance for the loaded data"
634
- },
635
- {
636
- "kind": "method",
637
- "name": "onLoadFailHandler",
638
- "privacy": "private",
639
- "parameters": [
640
- {
641
- "name": "error",
642
- "type": {
643
- "text": "Error"
644
- }
645
- }
646
- ],
647
- "description": "Error handler for animation loading"
648
- },
649
- {
650
- "kind": "method",
651
- "name": "getAnimationData",
652
- "privacy": "private",
653
- "description": "Import animation data dynamically"
654
- },
655
- {
656
- "kind": "field",
657
- "name": "onCompleteHandler",
658
- "description": "Re-dispatch the complete event from the animation library\n\nThis handler called with the animation instance instead of the component instance\nso we need to bind it to the component instance. The arrow function just does that."
659
- }
660
- ],
661
- "events": [
662
- {
663
- "name": "load",
664
- "type": {
665
- "text": "CustomEvent"
666
- },
667
- "description": "(React: onLoad) This event is dispatched when the animation is loaded",
668
- "reactName": "onLoad"
669
- },
670
- {
671
- "description": "(React: onComplete) This event is dispatched when all animation loops completed",
672
- "name": "complete",
673
- "reactName": "onComplete"
674
- },
675
- {
676
- "description": "(React: onError) This event is dispatched when animation loading failed",
677
- "name": "error",
678
- "reactName": "onError"
679
- }
680
- ],
681
- "attributes": [
682
- {
683
- "name": "name",
684
- "type": {
685
- "text": "AnimationNames | undefined"
686
- },
687
- "description": "Name of the animation (= filename)",
688
- "fieldName": "name"
689
- },
690
- {
691
- "name": "loop",
692
- "type": {
693
- "text": "LoopType | undefined"
694
- },
695
- "description": "How many times to loop the animation\n- \"true\" - infinite\n- \"false\" - no loop\n- number - number of times to loop",
696
- "fieldName": "loop"
697
- },
698
- {
699
- "name": "autoplay",
700
- "type": {
701
- "text": "boolean | undefined"
702
- },
703
- "description": "Weather start the animation automatically",
704
- "fieldName": "autoplay"
705
- },
706
- {
707
- "name": "aria-label",
708
- "type": {
709
- "text": "string | null"
710
- },
711
- "default": "null",
712
- "description": "Aria-label attribute to be set for accessibility",
713
- "fieldName": "ariaLabel"
714
- },
715
- {
716
- "name": "aria-labelledby",
717
- "type": {
718
- "text": "string | null"
719
- },
720
- "default": "null",
721
- "description": "Aria-labelledby attribute to be set for accessibility",
722
- "fieldName": "ariaLabelledBy"
723
- }
724
- ],
725
- "superclass": {
726
- "name": "Component",
727
- "module": "/src/models"
728
- },
729
- "tagName": "mdc-animation",
730
- "jsDoc": "/**\n * The `mdc-animation` component is a wrapper around the Lottie animation library.\n * It fetches the animation data dynamically based on the provided name and renders it.\n * This is a display only component that does not have any interactive functionality.\n * From accessibility perspective, (by default) it is a decorative image component.\n *\n * @tagname mdc-animation\n *\n * @event load - (React: onLoad) This event is dispatched when the animation is loaded\n * @event complete - (React: onComplete) This event is dispatched when all animation loops completed\n * @event error - (React: onError) This event is dispatched when animation loading failed\n */",
731
- "customElement": true
732
- }
733
- ],
734
- "exports": [
735
- {
736
- "kind": "js",
737
- "name": "default",
738
- "declaration": {
739
- "name": "Animation",
740
- "module": "components/animation/animation.component.js"
741
- }
742
- }
743
- ]
744
- },
745
533
  {
746
534
  "kind": "javascript-module",
747
535
  "path": "components/appheader/appheader.component.js",
@@ -1071,30 +859,242 @@
1071
859
  },
1072
860
  {
1073
861
  "kind": "javascript-module",
1074
- "path": "components/avatarbutton/avatarbutton.component.js",
862
+ "path": "components/animation/animation.component.js",
1075
863
  "declarations": [
1076
864
  {
1077
865
  "kind": "class",
1078
- "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.\n\nTo override styles of the avatar inside, use the specified css parts.",
1079
- "name": "AvatarButton",
1080
- "cssProperties": [
866
+ "description": "The `mdc-animation` component is a wrapper around the Lottie animation library.\nIt fetches the animation data dynamically based on the provided name and renders it.\nThis is a display only component that does not have any interactive functionality.\nFrom accessibility perspective, (by default) it is a decorative image component.",
867
+ "name": "Animation",
868
+ "members": [
1081
869
  {
1082
- "description": "Background color of the overlay in rest state",
1083
- "name": "--mdc-avatarbutton-overlay-background-color-rest"
870
+ "kind": "field",
871
+ "name": "name",
872
+ "type": {
873
+ "text": "AnimationNames | undefined"
874
+ },
875
+ "description": "Name of the animation (= filename)",
876
+ "attribute": "name",
877
+ "reflects": true
1084
878
  },
1085
879
  {
1086
- "description": "Background color of the overlay in hover state",
1087
- "name": "--mdc-avatarbutton-overlay-background-color-hover"
880
+ "kind": "field",
881
+ "name": "loop",
882
+ "type": {
883
+ "text": "LoopType | undefined"
884
+ },
885
+ "description": "How many times to loop the animation\n- \"true\" - infinite\n- \"false\" - no loop\n- number - number of times to loop",
886
+ "attribute": "loop",
887
+ "reflects": true
1088
888
  },
1089
889
  {
1090
- "description": "Background color of the overlay in active state",
1091
- "name": "--mdc-avatarbutton-overlay-background-color-active"
1092
- }
1093
- ],
1094
- "cssParts": [
1095
- {
1096
- "description": "The overlay part of the avatar button.",
1097
- "name": "overlay"
890
+ "kind": "field",
891
+ "name": "autoplay",
892
+ "type": {
893
+ "text": "boolean | undefined"
894
+ },
895
+ "description": "Weather start the animation automatically",
896
+ "attribute": "autoplay",
897
+ "reflects": true
898
+ },
899
+ {
900
+ "kind": "field",
901
+ "name": "ariaLabel",
902
+ "type": {
903
+ "text": "string | null"
904
+ },
905
+ "default": "null",
906
+ "description": "Aria-label attribute to be set for accessibility",
907
+ "attribute": "aria-label"
908
+ },
909
+ {
910
+ "kind": "field",
911
+ "name": "ariaLabelledBy",
912
+ "type": {
913
+ "text": "string | null"
914
+ },
915
+ "default": "null",
916
+ "description": "Aria-labelledby attribute to be set for accessibility",
917
+ "attribute": "aria-labelledby"
918
+ },
919
+ {
920
+ "kind": "field",
921
+ "name": "lottieInstance",
922
+ "type": {
923
+ "text": "AnimationItem | undefined"
924
+ },
925
+ "privacy": "private",
926
+ "description": "Lottie animation instance"
927
+ },
928
+ {
929
+ "kind": "field",
930
+ "name": "containerRef",
931
+ "type": {
932
+ "text": "Ref<HTMLDivElement>"
933
+ },
934
+ "privacy": "private",
935
+ "description": "Container for the animation"
936
+ },
937
+ {
938
+ "kind": "field",
939
+ "name": "animation",
940
+ "description": "Exposed API of the animation library (lottie)",
941
+ "readonly": true
942
+ },
943
+ {
944
+ "kind": "method",
945
+ "name": "getLoopValue",
946
+ "privacy": "private"
947
+ },
948
+ {
949
+ "kind": "method",
950
+ "name": "onLoadSuccessHandler",
951
+ "privacy": "private",
952
+ "parameters": [
953
+ {
954
+ "name": "animationData",
955
+ "type": {
956
+ "text": "any"
957
+ }
958
+ }
959
+ ],
960
+ "description": "Create new lotty instance for the loaded data"
961
+ },
962
+ {
963
+ "kind": "method",
964
+ "name": "onLoadFailHandler",
965
+ "privacy": "private",
966
+ "parameters": [
967
+ {
968
+ "name": "error",
969
+ "type": {
970
+ "text": "Error"
971
+ }
972
+ }
973
+ ],
974
+ "description": "Error handler for animation loading"
975
+ },
976
+ {
977
+ "kind": "method",
978
+ "name": "getAnimationData",
979
+ "privacy": "private",
980
+ "description": "Import animation data dynamically"
981
+ },
982
+ {
983
+ "kind": "field",
984
+ "name": "onCompleteHandler",
985
+ "description": "Re-dispatch the complete event from the animation library\n\nThis handler called with the animation instance instead of the component instance\nso we need to bind it to the component instance. The arrow function just does that."
986
+ }
987
+ ],
988
+ "events": [
989
+ {
990
+ "name": "load",
991
+ "type": {
992
+ "text": "CustomEvent"
993
+ },
994
+ "description": "(React: onLoad) This event is dispatched when the animation is loaded",
995
+ "reactName": "onLoad"
996
+ },
997
+ {
998
+ "description": "(React: onComplete) This event is dispatched when all animation loops completed",
999
+ "name": "complete",
1000
+ "reactName": "onComplete"
1001
+ },
1002
+ {
1003
+ "description": "(React: onError) This event is dispatched when animation loading failed",
1004
+ "name": "error",
1005
+ "reactName": "onError"
1006
+ }
1007
+ ],
1008
+ "attributes": [
1009
+ {
1010
+ "name": "name",
1011
+ "type": {
1012
+ "text": "AnimationNames | undefined"
1013
+ },
1014
+ "description": "Name of the animation (= filename)",
1015
+ "fieldName": "name"
1016
+ },
1017
+ {
1018
+ "name": "loop",
1019
+ "type": {
1020
+ "text": "LoopType | undefined"
1021
+ },
1022
+ "description": "How many times to loop the animation\n- \"true\" - infinite\n- \"false\" - no loop\n- number - number of times to loop",
1023
+ "fieldName": "loop"
1024
+ },
1025
+ {
1026
+ "name": "autoplay",
1027
+ "type": {
1028
+ "text": "boolean | undefined"
1029
+ },
1030
+ "description": "Weather start the animation automatically",
1031
+ "fieldName": "autoplay"
1032
+ },
1033
+ {
1034
+ "name": "aria-label",
1035
+ "type": {
1036
+ "text": "string | null"
1037
+ },
1038
+ "default": "null",
1039
+ "description": "Aria-label attribute to be set for accessibility",
1040
+ "fieldName": "ariaLabel"
1041
+ },
1042
+ {
1043
+ "name": "aria-labelledby",
1044
+ "type": {
1045
+ "text": "string | null"
1046
+ },
1047
+ "default": "null",
1048
+ "description": "Aria-labelledby attribute to be set for accessibility",
1049
+ "fieldName": "ariaLabelledBy"
1050
+ }
1051
+ ],
1052
+ "superclass": {
1053
+ "name": "Component",
1054
+ "module": "/src/models"
1055
+ },
1056
+ "tagName": "mdc-animation",
1057
+ "jsDoc": "/**\n * The `mdc-animation` component is a wrapper around the Lottie animation library.\n * It fetches the animation data dynamically based on the provided name and renders it.\n * This is a display only component that does not have any interactive functionality.\n * From accessibility perspective, (by default) it is a decorative image component.\n *\n * @tagname mdc-animation\n *\n * @event load - (React: onLoad) This event is dispatched when the animation is loaded\n * @event complete - (React: onComplete) This event is dispatched when all animation loops completed\n * @event error - (React: onError) This event is dispatched when animation loading failed\n */",
1058
+ "customElement": true
1059
+ }
1060
+ ],
1061
+ "exports": [
1062
+ {
1063
+ "kind": "js",
1064
+ "name": "default",
1065
+ "declaration": {
1066
+ "name": "Animation",
1067
+ "module": "components/animation/animation.component.js"
1068
+ }
1069
+ }
1070
+ ]
1071
+ },
1072
+ {
1073
+ "kind": "javascript-module",
1074
+ "path": "components/avatarbutton/avatarbutton.component.js",
1075
+ "declarations": [
1076
+ {
1077
+ "kind": "class",
1078
+ "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.\n\nTo override styles of the avatar inside, use the specified css parts.",
1079
+ "name": "AvatarButton",
1080
+ "cssProperties": [
1081
+ {
1082
+ "description": "Background color of the overlay in rest state",
1083
+ "name": "--mdc-avatarbutton-overlay-background-color-rest"
1084
+ },
1085
+ {
1086
+ "description": "Background color of the overlay in hover state",
1087
+ "name": "--mdc-avatarbutton-overlay-background-color-hover"
1088
+ },
1089
+ {
1090
+ "description": "Background color of the overlay in active state",
1091
+ "name": "--mdc-avatarbutton-overlay-background-color-active"
1092
+ }
1093
+ ],
1094
+ "cssParts": [
1095
+ {
1096
+ "description": "The overlay part of the avatar button.",
1097
+ "name": "overlay"
1098
1098
  },
1099
1099
  {
1100
1100
  "description": "The main content of the avatar.",
@@ -12180,186 +12180,238 @@
12180
12180
  },
12181
12181
  {
12182
12182
  "kind": "javascript-module",
12183
- "path": "components/iconprovider/iconprovider.component.js",
12183
+ "path": "components/icon/icon.component.js",
12184
12184
  "declarations": [
12185
12185
  {
12186
12186
  "kind": "class",
12187
- "description": "IconProvider component, which allows to be consumed from sub components\n(see `providerUtils.consume` for how to consume)\n\nAttribute `iconSet` can be set to either `momentum-icons` or `custom-icons`.\nIf `momentum-icons` is selected, the icons will be fetched from the\nMomentum Design System icon set per a dynamic JS Import (no need to provide a URL).\nThis requires the consumer to have the `@momentum-designs` package installed and the\nbuild tooling needs to support dynamic imports.\n\nIf `custom-icons` is selected, the icons will be fetched from the provided URL.\nThis requires the consumer to provide a URL from which the icons will be fetched and\nthe consumer needs to make sure to bundle the icons in the application.\n\nIf `cacheStrategy` is provided (only works with iconSet = `custom-icons`), the\nIconProvider will cache the icons in the selected cache (either web-api-cache or in-memory-cache),\nto avoid fetching the same icon multiple times over the network.\nThis is useful when the same icon is used multiple times in the application.\nTo consider:\n- The `in-memory-cache` is not persisted and will be lost when the\nIconProvider is removed from the DOM.\n- The `web-api-cache` is persisted, but only works in https environments\n(https://developer.mozilla.org/en-US/docs/Web/API/Cache).",
12188
- "name": "IconProvider",
12189
- "slots": [
12187
+ "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.**",
12188
+ "name": "Icon",
12189
+ "cssProperties": [
12190
12190
  {
12191
- "description": "children",
12192
- "name": ""
12191
+ "description": "Allows customization of the default fill color.",
12192
+ "name": "--mdc-icon-fill-color"
12193
+ },
12194
+ {
12195
+ "description": "Allows customization of the icon size.",
12196
+ "name": "--mdc-icon-size"
12197
+ },
12198
+ {
12199
+ "description": "Allows customization of the icon border radius.",
12200
+ "name": "--mdc-icon-border-radius"
12201
+ }
12202
+ ],
12203
+ "cssParts": [
12204
+ {
12205
+ "description": "The svg inside the icon element.",
12206
+ "name": "icon"
12193
12207
  }
12194
12208
  ],
12195
12209
  "members": [
12196
12210
  {
12197
12211
  "kind": "field",
12198
- "name": "Context",
12199
- "privacy": "public",
12200
- "static": true,
12201
- "description": "Context object of the IconProvider, to be consumed by child components",
12202
- "readonly": true
12212
+ "name": "iconData",
12213
+ "type": {
12214
+ "text": "HTMLElement | undefined"
12215
+ },
12216
+ "privacy": "private"
12203
12217
  },
12204
12218
  {
12205
12219
  "kind": "field",
12206
- "name": "iconSet",
12220
+ "name": "lengthUnitFromContext",
12207
12221
  "type": {
12208
- "text": "IconSet | undefined"
12222
+ "text": "string | undefined"
12209
12223
  },
12210
- "description": "Icon set to be used\n\nIf `momentum-icons` is selected, the icons will be fetched from the\nMomentum Design System icon set per a dynamic JS Import (no need to provide a URL).\nThis requires the consumer to have the `@momentum-designs` package installed and the\nbuild tooling needs to support dynamic imports.\n\nIf `custom-icons` is selected, the icons will be fetched from the provided URL.\nThis requires the consumer to provide a URL from which the icons will be fetched and\nthe consumer needs to make sure to bundle the icons in the application.",
12211
- "default": "momentum-icons",
12212
- "attribute": "icon-set",
12213
- "reflects": true
12224
+ "privacy": "private"
12214
12225
  },
12215
12226
  {
12216
12227
  "kind": "field",
12217
- "name": "url",
12228
+ "name": "sizeFromContext",
12218
12229
  "type": {
12219
- "text": "string | undefined"
12230
+ "text": "number | undefined"
12220
12231
  },
12221
- "description": "Url of where icons will be fetched from\n(if Icon set is `custom-icons`, this will be the base url)",
12222
- "attribute": "url"
12232
+ "privacy": "private"
12223
12233
  },
12224
12234
  {
12225
12235
  "kind": "field",
12226
- "name": "fileExtension",
12236
+ "name": "name",
12227
12237
  "type": {
12228
- "text": "string | undefined"
12238
+ "text": "IconNames | undefined"
12229
12239
  },
12230
- "description": "File extension of icons\n(if Icon set is `custom-icons`, this will be the file extension for icons)",
12231
- "default": "svg",
12232
- "attribute": "file-extension",
12240
+ "description": "Name of the icon (= filename)",
12241
+ "attribute": "name",
12233
12242
  "reflects": true
12234
12243
  },
12235
12244
  {
12236
12245
  "kind": "field",
12237
- "name": "lengthUnit",
12246
+ "name": "size",
12238
12247
  "type": {
12239
- "text": "string"
12248
+ "text": "number | undefined"
12240
12249
  },
12241
- "description": "Length unit used for sizing of icons",
12242
- "default": "em",
12243
- "attribute": "length-unit",
12244
- "reflects": true
12250
+ "description": "Size of the icon (works in combination with length unit)",
12251
+ "attribute": "size"
12245
12252
  },
12246
12253
  {
12247
12254
  "kind": "field",
12248
- "name": "size",
12255
+ "name": "lengthUnit",
12249
12256
  "type": {
12250
- "text": "number | undefined"
12257
+ "text": "string | undefined"
12251
12258
  },
12252
- "description": "The default size of the icon.\nIf not set, it falls back to the size defined by the length unit.",
12253
- "default": "1",
12254
- "attribute": "size",
12255
- "reflects": true
12259
+ "description": "Length unit attribute for overriding length-unit from `IconProvider`",
12260
+ "attribute": "length-unit"
12256
12261
  },
12257
12262
  {
12258
12263
  "kind": "field",
12259
- "name": "cacheStrategy",
12264
+ "name": "ariaLabel",
12260
12265
  "type": {
12261
- "text": "CacheStrategy | undefined"
12266
+ "text": "string | null"
12262
12267
  },
12263
- "description": "Icons Cache Strategy to use\n\n**Can only be used if Icon set is `custom-icons`**\n\nChoose `in-memory-cache` to cache icons in a JS cache (in-memory cache).\nChoose `web-cache-api` to cache icons using the Web Cache API.\n\nNOTE: `cache-name` must be provided if `cache-strategy` is provided.\n\nIf not provided or invalid value provided, the icons will not be cached.",
12264
- "default": "undefined",
12265
- "attribute": "cache-strategy"
12268
+ "default": "null",
12269
+ "description": "Aria-label attribute to be set for accessibility",
12270
+ "attribute": "aria-label"
12266
12271
  },
12267
12272
  {
12268
12273
  "kind": "field",
12269
- "name": "cacheName",
12274
+ "name": "ariaLabelledBy",
12270
12275
  "type": {
12271
- "text": "string | undefined"
12276
+ "text": "string | null"
12272
12277
  },
12273
- "description": "Icons Cache Name to use (cache strategy must be provided)\n\nIf provided, Icons inside the provider will be cached in the\ncache (determined by `cache-strategy`) with the provided name.\n\nNOTE: `cache-name` requires `cache-strategy` to be set.\n\nIf not provided, the icons will not be cached.",
12274
- "default": "undefined",
12275
- "attribute": "cache-name"
12278
+ "default": "null",
12279
+ "description": "Aria-labelledby attribute to be set for accessibility",
12280
+ "attribute": "aria-labelledby"
12276
12281
  },
12277
12282
  {
12278
- "kind": "method",
12279
- "name": "updateValuesInContext",
12280
- "privacy": "private"
12283
+ "kind": "field",
12284
+ "name": "iconProviderContext",
12285
+ "privacy": "private",
12286
+ "readonly": true
12287
+ },
12288
+ {
12289
+ "kind": "field",
12290
+ "name": "abortController",
12291
+ "type": {
12292
+ "text": "AbortController"
12293
+ },
12294
+ "privacy": "private",
12295
+ "default": "new AbortController()"
12281
12296
  },
12282
12297
  {
12283
12298
  "kind": "method",
12284
- "name": "updateContext",
12285
- "privacy": "protected",
12299
+ "name": "prepareIconElement",
12300
+ "privacy": "private",
12301
+ "parameters": [
12302
+ {
12303
+ "name": "iconData",
12304
+ "type": {
12305
+ "text": "string"
12306
+ },
12307
+ "description": "The icon string to be parsed"
12308
+ }
12309
+ ],
12310
+ "description": "Parse the icon string to an html element, set the attributes and\nreturn the icon element",
12286
12311
  "return": {
12287
12312
  "type": {
12288
- "text": "void"
12313
+ "text": ""
12289
12314
  }
12290
12315
  }
12291
- }
12292
- ],
12293
- "attributes": [
12316
+ },
12294
12317
  {
12295
- "name": "icon-set",
12296
- "type": {
12297
- "text": "IconSet | undefined"
12298
- },
12299
- "description": "Icon set to be used\n\nIf `momentum-icons` is selected, the icons will be fetched from the\nMomentum Design System icon set per a dynamic JS Import (no need to provide a URL).\nThis requires the consumer to have the `@momentum-designs` package installed and the\nbuild tooling needs to support dynamic imports.\n\nIf `custom-icons` is selected, the icons will be fetched from the provided URL.\nThis requires the consumer to provide a URL from which the icons will be fetched and\nthe consumer needs to make sure to bundle the icons in the application.",
12300
- "default": "momentum-icons",
12301
- "fieldName": "iconSet"
12318
+ "kind": "method",
12319
+ "name": "getIconData",
12320
+ "privacy": "private",
12321
+ "description": "Fetches the icon (currently only svg) and 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."
12302
12322
  },
12303
12323
  {
12304
- "name": "url",
12305
- "type": {
12306
- "text": "string | undefined"
12307
- },
12308
- "description": "Url of where icons will be fetched from\n(if Icon set is `custom-icons`, this will be the base url)",
12309
- "fieldName": "url"
12324
+ "kind": "method",
12325
+ "name": "handleIconLoadedSuccess",
12326
+ "privacy": "private",
12327
+ "parameters": [
12328
+ {
12329
+ "name": "iconHtml",
12330
+ "type": {
12331
+ "text": "HTMLElement"
12332
+ },
12333
+ "description": "The icon html element which has been fetched from the icon provider."
12334
+ }
12335
+ ],
12336
+ "description": "Sets the iconData state to the fetched icon.\nDispatches a 'load' event on the component once the icon has been successfully loaded."
12310
12337
  },
12311
12338
  {
12312
- "name": "file-extension",
12313
- "type": {
12314
- "text": "string | undefined"
12315
- },
12316
- "description": "File extension of icons\n(if Icon set is `custom-icons`, this will be the file extension for icons)",
12317
- "default": "svg",
12318
- "fieldName": "fileExtension"
12339
+ "kind": "method",
12340
+ "name": "handleIconLoadedFailure",
12341
+ "privacy": "private",
12342
+ "parameters": [
12343
+ {
12344
+ "name": "error",
12345
+ "type": {
12346
+ "text": "unknown"
12347
+ }
12348
+ }
12349
+ ],
12350
+ "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."
12319
12351
  },
12320
12352
  {
12321
- "name": "length-unit",
12353
+ "kind": "method",
12354
+ "name": "updateSize",
12355
+ "privacy": "private",
12356
+ "description": "Updates the size by setting the width and height"
12357
+ },
12358
+ {
12359
+ "kind": "field",
12360
+ "name": "computedIconSize",
12361
+ "privacy": "private",
12362
+ "readonly": true
12363
+ }
12364
+ ],
12365
+ "attributes": [
12366
+ {
12367
+ "name": "name",
12322
12368
  "type": {
12323
- "text": "string"
12369
+ "text": "IconNames | undefined"
12324
12370
  },
12325
- "description": "Length unit used for sizing of icons",
12326
- "default": "em",
12327
- "fieldName": "lengthUnit"
12371
+ "description": "Name of the icon (= filename)",
12372
+ "fieldName": "name"
12328
12373
  },
12329
12374
  {
12330
12375
  "name": "size",
12331
12376
  "type": {
12332
12377
  "text": "number | undefined"
12333
12378
  },
12334
- "description": "The default size of the icon.\nIf not set, it falls back to the size defined by the length unit.",
12335
- "default": "1",
12379
+ "description": "Size of the icon (works in combination with length unit)",
12336
12380
  "fieldName": "size"
12337
12381
  },
12338
12382
  {
12339
- "name": "cache-strategy",
12383
+ "name": "length-unit",
12340
12384
  "type": {
12341
- "text": "CacheStrategy | undefined"
12385
+ "text": "string | undefined"
12342
12386
  },
12343
- "description": "Icons Cache Strategy to use\n\n**Can only be used if Icon set is `custom-icons`**\n\nChoose `in-memory-cache` to cache icons in a JS cache (in-memory cache).\nChoose `web-cache-api` to cache icons using the Web Cache API.\n\nNOTE: `cache-name` must be provided if `cache-strategy` is provided.\n\nIf not provided or invalid value provided, the icons will not be cached.",
12344
- "default": "undefined",
12345
- "fieldName": "cacheStrategy"
12387
+ "description": "Length unit attribute for overriding length-unit from `IconProvider`",
12388
+ "fieldName": "lengthUnit"
12346
12389
  },
12347
12390
  {
12348
- "name": "cache-name",
12391
+ "name": "aria-label",
12349
12392
  "type": {
12350
- "text": "string | undefined"
12393
+ "text": "string | null"
12351
12394
  },
12352
- "description": "Icons Cache Name to use (cache strategy must be provided)\n\nIf provided, Icons inside the provider will be cached in the\ncache (determined by `cache-strategy`) with the provided name.\n\nNOTE: `cache-name` requires `cache-strategy` to be set.\n\nIf not provided, the icons will not be cached.",
12353
- "default": "undefined",
12354
- "fieldName": "cacheName"
12395
+ "default": "null",
12396
+ "description": "Aria-label attribute to be set for accessibility",
12397
+ "fieldName": "ariaLabel"
12398
+ },
12399
+ {
12400
+ "name": "aria-labelledby",
12401
+ "type": {
12402
+ "text": "string | null"
12403
+ },
12404
+ "default": "null",
12405
+ "description": "Aria-labelledby attribute to be set for accessibility",
12406
+ "fieldName": "ariaLabelledBy"
12355
12407
  }
12356
12408
  ],
12357
12409
  "superclass": {
12358
- "name": "Provider",
12410
+ "name": "Component",
12359
12411
  "module": "/src/models"
12360
12412
  },
12361
- "tagName": "mdc-iconprovider",
12362
- "jsDoc": "/**\n * IconProvider component, which allows to be consumed from sub components\n * (see `providerUtils.consume` for how to consume)\n *\n * Attribute `iconSet` can be set to either `momentum-icons` or `custom-icons`.\n * If `momentum-icons` is selected, the icons will be fetched from the\n * Momentum Design System icon set per a dynamic JS Import (no need to provide a URL).\n * This requires the consumer to have the `@momentum-designs` package installed and the\n * build tooling needs to support dynamic imports.\n *\n * If `custom-icons` is selected, the icons will be fetched from the provided URL.\n * This requires the consumer to provide a URL from which the icons will be fetched and\n * the consumer needs to make sure to bundle the icons in the application.\n *\n * If `cacheStrategy` is provided (only works with iconSet = `custom-icons`), the\n * IconProvider will cache the icons in the selected cache (either web-api-cache or in-memory-cache),\n * to avoid fetching the same icon multiple times over the network.\n * This is useful when the same icon is used multiple times in the application.\n * To consider:\n * - The `in-memory-cache` is not persisted and will be lost when the\n * IconProvider is removed from the DOM.\n * - The `web-api-cache` is persisted, but only works in https environments\n * (https://developer.mozilla.org/en-US/docs/Web/API/Cache).\n *\n * @tagname mdc-iconprovider\n *\n * @slot - children\n */",
12413
+ "tagName": "mdc-icon",
12414
+ "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 *\n * @csspart icon - The svg inside the icon element.\n */",
12363
12415
  "customElement": true
12364
12416
  }
12365
12417
  ],
@@ -12368,246 +12420,194 @@
12368
12420
  "kind": "js",
12369
12421
  "name": "default",
12370
12422
  "declaration": {
12371
- "name": "IconProvider",
12372
- "module": "components/iconprovider/iconprovider.component.js"
12423
+ "name": "Icon",
12424
+ "module": "components/icon/icon.component.js"
12373
12425
  }
12374
12426
  }
12375
12427
  ]
12376
12428
  },
12377
12429
  {
12378
12430
  "kind": "javascript-module",
12379
- "path": "components/icon/icon.component.js",
12431
+ "path": "components/iconprovider/iconprovider.component.js",
12380
12432
  "declarations": [
12381
12433
  {
12382
12434
  "kind": "class",
12383
- "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.**",
12384
- "name": "Icon",
12385
- "cssProperties": [
12386
- {
12387
- "description": "Allows customization of the default fill color.",
12388
- "name": "--mdc-icon-fill-color"
12389
- },
12390
- {
12391
- "description": "Allows customization of the icon size.",
12392
- "name": "--mdc-icon-size"
12393
- },
12394
- {
12395
- "description": "Allows customization of the icon border radius.",
12396
- "name": "--mdc-icon-border-radius"
12397
- }
12398
- ],
12399
- "cssParts": [
12435
+ "description": "IconProvider component, which allows to be consumed from sub components\n(see `providerUtils.consume` for how to consume)\n\nAttribute `iconSet` can be set to either `momentum-icons` or `custom-icons`.\nIf `momentum-icons` is selected, the icons will be fetched from the\nMomentum Design System icon set per a dynamic JS Import (no need to provide a URL).\nThis requires the consumer to have the `@momentum-designs` package installed and the\nbuild tooling needs to support dynamic imports.\n\nIf `custom-icons` is selected, the icons will be fetched from the provided URL.\nThis requires the consumer to provide a URL from which the icons will be fetched and\nthe consumer needs to make sure to bundle the icons in the application.\n\nIf `cacheStrategy` is provided (only works with iconSet = `custom-icons`), the\nIconProvider will cache the icons in the selected cache (either web-api-cache or in-memory-cache),\nto avoid fetching the same icon multiple times over the network.\nThis is useful when the same icon is used multiple times in the application.\nTo consider:\n- The `in-memory-cache` is not persisted and will be lost when the\nIconProvider is removed from the DOM.\n- The `web-api-cache` is persisted, but only works in https environments\n(https://developer.mozilla.org/en-US/docs/Web/API/Cache).",
12436
+ "name": "IconProvider",
12437
+ "slots": [
12400
12438
  {
12401
- "description": "The svg inside the icon element.",
12402
- "name": "icon"
12439
+ "description": "children",
12440
+ "name": ""
12403
12441
  }
12404
12442
  ],
12405
12443
  "members": [
12406
12444
  {
12407
12445
  "kind": "field",
12408
- "name": "iconData",
12409
- "type": {
12410
- "text": "HTMLElement | undefined"
12411
- },
12412
- "privacy": "private"
12446
+ "name": "Context",
12447
+ "privacy": "public",
12448
+ "static": true,
12449
+ "description": "Context object of the IconProvider, to be consumed by child components",
12450
+ "readonly": true
12413
12451
  },
12414
12452
  {
12415
12453
  "kind": "field",
12416
- "name": "lengthUnitFromContext",
12454
+ "name": "iconSet",
12417
12455
  "type": {
12418
- "text": "string | undefined"
12456
+ "text": "IconSet | undefined"
12419
12457
  },
12420
- "privacy": "private"
12458
+ "description": "Icon set to be used\n\nIf `momentum-icons` is selected, the icons will be fetched from the\nMomentum Design System icon set per a dynamic JS Import (no need to provide a URL).\nThis requires the consumer to have the `@momentum-designs` package installed and the\nbuild tooling needs to support dynamic imports.\n\nIf `custom-icons` is selected, the icons will be fetched from the provided URL.\nThis requires the consumer to provide a URL from which the icons will be fetched and\nthe consumer needs to make sure to bundle the icons in the application.",
12459
+ "default": "momentum-icons",
12460
+ "attribute": "icon-set",
12461
+ "reflects": true
12421
12462
  },
12422
12463
  {
12423
12464
  "kind": "field",
12424
- "name": "sizeFromContext",
12465
+ "name": "url",
12425
12466
  "type": {
12426
- "text": "number | undefined"
12467
+ "text": "string | undefined"
12427
12468
  },
12428
- "privacy": "private"
12469
+ "description": "Url of where icons will be fetched from\n(if Icon set is `custom-icons`, this will be the base url)",
12470
+ "attribute": "url"
12429
12471
  },
12430
12472
  {
12431
12473
  "kind": "field",
12432
- "name": "name",
12474
+ "name": "fileExtension",
12433
12475
  "type": {
12434
- "text": "IconNames | undefined"
12476
+ "text": "string | undefined"
12435
12477
  },
12436
- "description": "Name of the icon (= filename)",
12437
- "attribute": "name",
12478
+ "description": "File extension of icons\n(if Icon set is `custom-icons`, this will be the file extension for icons)",
12479
+ "default": "svg",
12480
+ "attribute": "file-extension",
12438
12481
  "reflects": true
12439
12482
  },
12440
- {
12441
- "kind": "field",
12442
- "name": "size",
12443
- "type": {
12444
- "text": "number | undefined"
12445
- },
12446
- "description": "Size of the icon (works in combination with length unit)",
12447
- "attribute": "size"
12448
- },
12449
12483
  {
12450
12484
  "kind": "field",
12451
12485
  "name": "lengthUnit",
12452
12486
  "type": {
12453
- "text": "string | undefined"
12487
+ "text": "string"
12454
12488
  },
12455
- "description": "Length unit attribute for overriding length-unit from `IconProvider`",
12456
- "attribute": "length-unit"
12489
+ "description": "Length unit used for sizing of icons",
12490
+ "default": "em",
12491
+ "attribute": "length-unit",
12492
+ "reflects": true
12457
12493
  },
12458
12494
  {
12459
12495
  "kind": "field",
12460
- "name": "ariaLabel",
12496
+ "name": "size",
12461
12497
  "type": {
12462
- "text": "string | null"
12498
+ "text": "number | undefined"
12463
12499
  },
12464
- "default": "null",
12465
- "description": "Aria-label attribute to be set for accessibility",
12466
- "attribute": "aria-label"
12500
+ "description": "The default size of the icon.\nIf not set, it falls back to the size defined by the length unit.",
12501
+ "default": "1",
12502
+ "attribute": "size",
12503
+ "reflects": true
12467
12504
  },
12468
12505
  {
12469
12506
  "kind": "field",
12470
- "name": "ariaLabelledBy",
12507
+ "name": "cacheStrategy",
12471
12508
  "type": {
12472
- "text": "string | null"
12509
+ "text": "CacheStrategy | undefined"
12473
12510
  },
12474
- "default": "null",
12475
- "description": "Aria-labelledby attribute to be set for accessibility",
12476
- "attribute": "aria-labelledby"
12477
- },
12478
- {
12479
- "kind": "field",
12480
- "name": "iconProviderContext",
12481
- "privacy": "private",
12482
- "readonly": true
12511
+ "description": "Icons Cache Strategy to use\n\n**Can only be used if Icon set is `custom-icons`**\n\nChoose `in-memory-cache` to cache icons in a JS cache (in-memory cache).\nChoose `web-cache-api` to cache icons using the Web Cache API.\n\nNOTE: `cache-name` must be provided if `cache-strategy` is provided.\n\nIf not provided or invalid value provided, the icons will not be cached.",
12512
+ "default": "undefined",
12513
+ "attribute": "cache-strategy"
12483
12514
  },
12484
12515
  {
12485
12516
  "kind": "field",
12486
- "name": "abortController",
12517
+ "name": "cacheName",
12487
12518
  "type": {
12488
- "text": "AbortController"
12519
+ "text": "string | undefined"
12489
12520
  },
12490
- "privacy": "private",
12491
- "default": "new AbortController()"
12492
- },
12493
- {
12494
- "kind": "method",
12495
- "name": "prepareIconElement",
12496
- "privacy": "private",
12497
- "parameters": [
12498
- {
12499
- "name": "iconData",
12500
- "type": {
12501
- "text": "string"
12502
- },
12503
- "description": "The icon string to be parsed"
12504
- }
12505
- ],
12506
- "description": "Parse the icon string to an html element, set the attributes and\nreturn the icon element",
12507
- "return": {
12508
- "type": {
12509
- "text": ""
12510
- }
12511
- }
12512
- },
12513
- {
12514
- "kind": "method",
12515
- "name": "getIconData",
12516
- "privacy": "private",
12517
- "description": "Fetches the icon (currently only svg) and 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."
12518
- },
12519
- {
12520
- "kind": "method",
12521
- "name": "handleIconLoadedSuccess",
12522
- "privacy": "private",
12523
- "parameters": [
12524
- {
12525
- "name": "iconHtml",
12526
- "type": {
12527
- "text": "HTMLElement"
12528
- },
12529
- "description": "The icon html element which has been fetched from the icon provider."
12530
- }
12531
- ],
12532
- "description": "Sets the iconData state to the fetched icon.\nDispatches a 'load' event on the component once the icon has been successfully loaded."
12533
- },
12534
- {
12535
- "kind": "method",
12536
- "name": "handleIconLoadedFailure",
12537
- "privacy": "private",
12538
- "parameters": [
12539
- {
12540
- "name": "error",
12541
- "type": {
12542
- "text": "unknown"
12543
- }
12544
- }
12545
- ],
12546
- "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."
12521
+ "description": "Icons Cache Name to use (cache strategy must be provided)\n\nIf provided, Icons inside the provider will be cached in the\ncache (determined by `cache-strategy`) with the provided name.\n\nNOTE: `cache-name` requires `cache-strategy` to be set.\n\nIf not provided, the icons will not be cached.",
12522
+ "default": "undefined",
12523
+ "attribute": "cache-name"
12547
12524
  },
12548
12525
  {
12549
12526
  "kind": "method",
12550
- "name": "updateSize",
12551
- "privacy": "private",
12552
- "description": "Updates the size by setting the width and height"
12527
+ "name": "updateValuesInContext",
12528
+ "privacy": "private"
12553
12529
  },
12554
12530
  {
12555
- "kind": "field",
12556
- "name": "computedIconSize",
12557
- "privacy": "private",
12558
- "readonly": true
12531
+ "kind": "method",
12532
+ "name": "updateContext",
12533
+ "privacy": "protected",
12534
+ "return": {
12535
+ "type": {
12536
+ "text": "void"
12537
+ }
12538
+ }
12559
12539
  }
12560
12540
  ],
12561
12541
  "attributes": [
12562
12542
  {
12563
- "name": "name",
12543
+ "name": "icon-set",
12564
12544
  "type": {
12565
- "text": "IconNames | undefined"
12545
+ "text": "IconSet | undefined"
12566
12546
  },
12567
- "description": "Name of the icon (= filename)",
12568
- "fieldName": "name"
12547
+ "description": "Icon set to be used\n\nIf `momentum-icons` is selected, the icons will be fetched from the\nMomentum Design System icon set per a dynamic JS Import (no need to provide a URL).\nThis requires the consumer to have the `@momentum-designs` package installed and the\nbuild tooling needs to support dynamic imports.\n\nIf `custom-icons` is selected, the icons will be fetched from the provided URL.\nThis requires the consumer to provide a URL from which the icons will be fetched and\nthe consumer needs to make sure to bundle the icons in the application.",
12548
+ "default": "momentum-icons",
12549
+ "fieldName": "iconSet"
12569
12550
  },
12570
12551
  {
12571
- "name": "size",
12552
+ "name": "url",
12572
12553
  "type": {
12573
- "text": "number | undefined"
12554
+ "text": "string | undefined"
12574
12555
  },
12575
- "description": "Size of the icon (works in combination with length unit)",
12576
- "fieldName": "size"
12556
+ "description": "Url of where icons will be fetched from\n(if Icon set is `custom-icons`, this will be the base url)",
12557
+ "fieldName": "url"
12577
12558
  },
12578
12559
  {
12579
- "name": "length-unit",
12560
+ "name": "file-extension",
12580
12561
  "type": {
12581
12562
  "text": "string | undefined"
12582
12563
  },
12583
- "description": "Length unit attribute for overriding length-unit from `IconProvider`",
12564
+ "description": "File extension of icons\n(if Icon set is `custom-icons`, this will be the file extension for icons)",
12565
+ "default": "svg",
12566
+ "fieldName": "fileExtension"
12567
+ },
12568
+ {
12569
+ "name": "length-unit",
12570
+ "type": {
12571
+ "text": "string"
12572
+ },
12573
+ "description": "Length unit used for sizing of icons",
12574
+ "default": "em",
12584
12575
  "fieldName": "lengthUnit"
12585
12576
  },
12586
12577
  {
12587
- "name": "aria-label",
12578
+ "name": "size",
12588
12579
  "type": {
12589
- "text": "string | null"
12580
+ "text": "number | undefined"
12590
12581
  },
12591
- "default": "null",
12592
- "description": "Aria-label attribute to be set for accessibility",
12593
- "fieldName": "ariaLabel"
12582
+ "description": "The default size of the icon.\nIf not set, it falls back to the size defined by the length unit.",
12583
+ "default": "1",
12584
+ "fieldName": "size"
12594
12585
  },
12595
12586
  {
12596
- "name": "aria-labelledby",
12587
+ "name": "cache-strategy",
12597
12588
  "type": {
12598
- "text": "string | null"
12589
+ "text": "CacheStrategy | undefined"
12599
12590
  },
12600
- "default": "null",
12601
- "description": "Aria-labelledby attribute to be set for accessibility",
12602
- "fieldName": "ariaLabelledBy"
12591
+ "description": "Icons Cache Strategy to use\n\n**Can only be used if Icon set is `custom-icons`**\n\nChoose `in-memory-cache` to cache icons in a JS cache (in-memory cache).\nChoose `web-cache-api` to cache icons using the Web Cache API.\n\nNOTE: `cache-name` must be provided if `cache-strategy` is provided.\n\nIf not provided or invalid value provided, the icons will not be cached.",
12592
+ "default": "undefined",
12593
+ "fieldName": "cacheStrategy"
12594
+ },
12595
+ {
12596
+ "name": "cache-name",
12597
+ "type": {
12598
+ "text": "string | undefined"
12599
+ },
12600
+ "description": "Icons Cache Name to use (cache strategy must be provided)\n\nIf provided, Icons inside the provider will be cached in the\ncache (determined by `cache-strategy`) with the provided name.\n\nNOTE: `cache-name` requires `cache-strategy` to be set.\n\nIf not provided, the icons will not be cached.",
12601
+ "default": "undefined",
12602
+ "fieldName": "cacheName"
12603
12603
  }
12604
12604
  ],
12605
12605
  "superclass": {
12606
- "name": "Component",
12606
+ "name": "Provider",
12607
12607
  "module": "/src/models"
12608
12608
  },
12609
- "tagName": "mdc-icon",
12610
- "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 *\n * @csspart icon - The svg inside the icon element.\n */",
12609
+ "tagName": "mdc-iconprovider",
12610
+ "jsDoc": "/**\n * IconProvider component, which allows to be consumed from sub components\n * (see `providerUtils.consume` for how to consume)\n *\n * Attribute `iconSet` can be set to either `momentum-icons` or `custom-icons`.\n * If `momentum-icons` is selected, the icons will be fetched from the\n * Momentum Design System icon set per a dynamic JS Import (no need to provide a URL).\n * This requires the consumer to have the `@momentum-designs` package installed and the\n * build tooling needs to support dynamic imports.\n *\n * If `custom-icons` is selected, the icons will be fetched from the provided URL.\n * This requires the consumer to provide a URL from which the icons will be fetched and\n * the consumer needs to make sure to bundle the icons in the application.\n *\n * If `cacheStrategy` is provided (only works with iconSet = `custom-icons`), the\n * IconProvider will cache the icons in the selected cache (either web-api-cache or in-memory-cache),\n * to avoid fetching the same icon multiple times over the network.\n * This is useful when the same icon is used multiple times in the application.\n * To consider:\n * - The `in-memory-cache` is not persisted and will be lost when the\n * IconProvider is removed from the DOM.\n * - The `web-api-cache` is persisted, but only works in https environments\n * (https://developer.mozilla.org/en-US/docs/Web/API/Cache).\n *\n * @tagname mdc-iconprovider\n *\n * @slot - children\n */",
12611
12611
  "customElement": true
12612
12612
  }
12613
12613
  ],
@@ -12616,8 +12616,8 @@
12616
12616
  "kind": "js",
12617
12617
  "name": "default",
12618
12618
  "declaration": {
12619
- "name": "Icon",
12620
- "module": "components/icon/icon.component.js"
12619
+ "name": "IconProvider",
12620
+ "module": "components/iconprovider/iconprovider.component.js"
12621
12621
  }
12622
12622
  }
12623
12623
  ]
@@ -15223,6 +15223,26 @@
15223
15223
  "description": "(React: onFocus) This event is dispatched when the listitem receives focus.",
15224
15224
  "name": "focus",
15225
15225
  "reactName": "onFocus"
15226
+ },
15227
+ {
15228
+ "description": "(React: onEnabled) This event is dispatched after the listitem is enabled",
15229
+ "name": "enabled",
15230
+ "reactName": "onEnabled"
15231
+ },
15232
+ {
15233
+ "description": "(React: onDisabled) This event is dispatched after the listitem is disabled",
15234
+ "name": "disabled",
15235
+ "reactName": "onDisabled"
15236
+ },
15237
+ {
15238
+ "description": "(React: onCreated) This event is dispatched after the listitem is created (added to the DOM)",
15239
+ "name": "created",
15240
+ "reactName": "onCreated"
15241
+ },
15242
+ {
15243
+ "description": "(React: onDestroyed) This event is dispatched after the listitem is destroyed (removed from the DOM)",
15244
+ "name": "destroyed",
15245
+ "reactName": "onDestroyed"
15226
15246
  }
15227
15247
  ],
15228
15248
  "attributes": [
@@ -15343,7 +15363,7 @@
15343
15363
  "module": "/src/models"
15344
15364
  },
15345
15365
  "tagName": "mdc-listitem",
15346
- "jsDoc": "/**\n * mdc-listitem component is used to display a label with different types of controls.\n * There can be three types of controls, a radio button, a checkbox on the\n * leading side and a toggle on the trailing side.\n * The list item can contain an avatar on the leading side and a badge on the trailing side.\n * Additionally, the list item can contain a side header and a subline text.\n *\n * The leading and trailing slots can be used to display controls and text. <br/>\n * Based on the leading/trailing slot, the position of the controls and text can be adjusted. <br/>\n * Please use mdc-list as a parent element even when there is only listitem for a11y purpose.\n *\n * By providing the tooltip-text attribute, a tooltip will be displayed on hover of the listitem.\n * The placement of the tooltip can be adjusted using the tooltip-placement attribute.\n * This will be helpful when the listitem text is truncated or\n * when you want to display additional information about the listitem.\n *\n * @tagname mdc-listitem\n *\n * @dependency mdc-text\n * @dependency mdc-tooltip\n *\n * @slot leading-controls - slot for list item controls to appear of leading end.\n * @slot leading-text-primary-label - slot for list item primary label.\n * @slot leading-text-secondary-label - slot for list item secondary label.\n * @slot leading-text-tertiary-label - slot for list item tertiary label.\n * @slot trailing-text-side-header - slot for list item side header text.\n * @slot trailing-text-subline - slot for list item subline text.\n * @slot trailing-controls - slot for list item controls to appear of trailing end.\n *\n * @cssproperty --mdc-listitem-default-background-color - Allows customization of the default background color.\n * @cssproperty --mdc-listitem-background-color-hover - Allows customization of the background color on hover.\n * @cssproperty --mdc-listitem-background-color-active - Allows customization of the background color when pressed.\n * @cssproperty --mdc-listitem-primary-label-color\n * - Allows customization of the primary label, side header and subline text slot color.\n * @cssproperty --mdc-listitem-secondary-label-color\n * - Allows customization of the secondary and tertiary label text slot color.\n * @cssproperty --mdc-listitem-disabled-color - Allows customization of the disabled color.\n * @cssproperty --mdc-listitem-column-gap - Allows customization of column gap.\n * @cssproperty --mdc-listitem-padding-left-and-right - Allows customization of padding left and right.\n *\n * @event click - (React: onClick) This event is dispatched when the listitem is clicked.\n * @event keydown - (React: onKeyDown) This event is dispatched when a key is pressed down on the listitem.\n * @event keyup - (React: onKeyUp) This event is dispatched when a key is released on the listitem.\n * @event focus - (React: onFocus) This event is dispatched when the listitem receives focus.\n */",
15366
+ "jsDoc": "/**\n * mdc-listitem component is used to display a label with different types of controls.\n * There can be three types of controls, a radio button, a checkbox on the\n * leading side and a toggle on the trailing side.\n * The list item can contain an avatar on the leading side and a badge on the trailing side.\n * Additionally, the list item can contain a side header and a subline text.\n *\n * The leading and trailing slots can be used to display controls and text. <br/>\n * Based on the leading/trailing slot, the position of the controls and text can be adjusted. <br/>\n * Please use mdc-list as a parent element even when there is only listitem for a11y purpose.\n *\n * By providing the tooltip-text attribute, a tooltip will be displayed on hover of the listitem.\n * The placement of the tooltip can be adjusted using the tooltip-placement attribute.\n * This will be helpful when the listitem text is truncated or\n * when you want to display additional information about the listitem.\n *\n * @tagname mdc-listitem\n *\n * @dependency mdc-text\n * @dependency mdc-tooltip\n *\n * @slot leading-controls - slot for list item controls to appear of leading end.\n * @slot leading-text-primary-label - slot for list item primary label.\n * @slot leading-text-secondary-label - slot for list item secondary label.\n * @slot leading-text-tertiary-label - slot for list item tertiary label.\n * @slot trailing-text-side-header - slot for list item side header text.\n * @slot trailing-text-subline - slot for list item subline text.\n * @slot trailing-controls - slot for list item controls to appear of trailing end.\n *\n * @cssproperty --mdc-listitem-default-background-color - Allows customization of the default background color.\n * @cssproperty --mdc-listitem-background-color-hover - Allows customization of the background color on hover.\n * @cssproperty --mdc-listitem-background-color-active - Allows customization of the background color when pressed.\n * @cssproperty --mdc-listitem-primary-label-color\n * - Allows customization of the primary label, side header and subline text slot color.\n * @cssproperty --mdc-listitem-secondary-label-color\n * - Allows customization of the secondary and tertiary label text slot color.\n * @cssproperty --mdc-listitem-disabled-color - Allows customization of the disabled color.\n * @cssproperty --mdc-listitem-column-gap - Allows customization of column gap.\n * @cssproperty --mdc-listitem-padding-left-and-right - Allows customization of padding left and right.\n *\n * @event click - (React: onClick) This event is dispatched when the listitem is clicked.\n * @event keydown - (React: onKeyDown) This event is dispatched when a key is pressed down on the listitem.\n * @event keyup - (React: onKeyUp) This event is dispatched when a key is released on the listitem.\n * @event focus - (React: onFocus) This event is dispatched when the listitem receives focus.\n * @event enabled - (React: onEnabled) This event is dispatched after the listitem is enabled\n * @event disabled - (React: onDisabled) This event is dispatched after the listitem is disabled\n * @event created - (React: onCreated) This event is dispatched after the listitem is created (added to the DOM)\n * @event destroyed - (React: onDestroyed) This event is dispatched after the listitem is destroyed (removed from the DOM)\n */",
15347
15367
  "customElement": true
15348
15368
  }
15349
15369
  ],
@@ -16286,6 +16306,42 @@
16286
16306
  "name": "ListItem",
16287
16307
  "module": "src/components/listitem/listitem.component.ts"
16288
16308
  }
16309
+ },
16310
+ {
16311
+ "description": "(React: onEnabled) This event is dispatched after the listitem is enabled",
16312
+ "name": "enabled",
16313
+ "reactName": "onEnabled",
16314
+ "inheritedFrom": {
16315
+ "name": "ListItem",
16316
+ "module": "src/components/listitem/listitem.component.ts"
16317
+ }
16318
+ },
16319
+ {
16320
+ "description": "(React: onDisabled) This event is dispatched after the listitem is disabled",
16321
+ "name": "disabled",
16322
+ "reactName": "onDisabled",
16323
+ "inheritedFrom": {
16324
+ "name": "ListItem",
16325
+ "module": "src/components/listitem/listitem.component.ts"
16326
+ }
16327
+ },
16328
+ {
16329
+ "description": "(React: onCreated) This event is dispatched after the listitem is created (added to the DOM)",
16330
+ "name": "created",
16331
+ "reactName": "onCreated",
16332
+ "inheritedFrom": {
16333
+ "name": "ListItem",
16334
+ "module": "src/components/listitem/listitem.component.ts"
16335
+ }
16336
+ },
16337
+ {
16338
+ "description": "(React: onDestroyed) This event is dispatched after the listitem is destroyed (removed from the DOM)",
16339
+ "name": "destroyed",
16340
+ "reactName": "onDestroyed",
16341
+ "inheritedFrom": {
16342
+ "name": "ListItem",
16343
+ "module": "src/components/listitem/listitem.component.ts"
16344
+ }
16289
16345
  }
16290
16346
  ],
16291
16347
  "attributes": [
@@ -17155,6 +17211,42 @@
17155
17211
  "name": "ListItem",
17156
17212
  "module": "src/components/listitem/listitem.component.ts"
17157
17213
  }
17214
+ },
17215
+ {
17216
+ "description": "(React: onEnabled) This event is dispatched after the listitem is enabled",
17217
+ "name": "enabled",
17218
+ "reactName": "onEnabled",
17219
+ "inheritedFrom": {
17220
+ "name": "ListItem",
17221
+ "module": "src/components/listitem/listitem.component.ts"
17222
+ }
17223
+ },
17224
+ {
17225
+ "description": "(React: onDisabled) This event is dispatched after the listitem is disabled",
17226
+ "name": "disabled",
17227
+ "reactName": "onDisabled",
17228
+ "inheritedFrom": {
17229
+ "name": "ListItem",
17230
+ "module": "src/components/listitem/listitem.component.ts"
17231
+ }
17232
+ },
17233
+ {
17234
+ "description": "(React: onCreated) This event is dispatched after the listitem is created (added to the DOM)",
17235
+ "name": "created",
17236
+ "reactName": "onCreated",
17237
+ "inheritedFrom": {
17238
+ "name": "ListItem",
17239
+ "module": "src/components/listitem/listitem.component.ts"
17240
+ }
17241
+ },
17242
+ {
17243
+ "description": "(React: onDestroyed) This event is dispatched after the listitem is destroyed (removed from the DOM)",
17244
+ "name": "destroyed",
17245
+ "reactName": "onDestroyed",
17246
+ "inheritedFrom": {
17247
+ "name": "ListItem",
17248
+ "module": "src/components/listitem/listitem.component.ts"
17249
+ }
17158
17250
  }
17159
17251
  ],
17160
17252
  "attributes": [
@@ -18069,6 +18161,42 @@
18069
18161
  "name": "ListItem",
18070
18162
  "module": "src/components/listitem/listitem.component.ts"
18071
18163
  }
18164
+ },
18165
+ {
18166
+ "description": "(React: onEnabled) This event is dispatched after the listitem is enabled",
18167
+ "name": "enabled",
18168
+ "reactName": "onEnabled",
18169
+ "inheritedFrom": {
18170
+ "name": "ListItem",
18171
+ "module": "src/components/listitem/listitem.component.ts"
18172
+ }
18173
+ },
18174
+ {
18175
+ "description": "(React: onDisabled) This event is dispatched after the listitem is disabled",
18176
+ "name": "disabled",
18177
+ "reactName": "onDisabled",
18178
+ "inheritedFrom": {
18179
+ "name": "ListItem",
18180
+ "module": "src/components/listitem/listitem.component.ts"
18181
+ }
18182
+ },
18183
+ {
18184
+ "description": "(React: onCreated) This event is dispatched after the listitem is created (added to the DOM)",
18185
+ "name": "created",
18186
+ "reactName": "onCreated",
18187
+ "inheritedFrom": {
18188
+ "name": "ListItem",
18189
+ "module": "src/components/listitem/listitem.component.ts"
18190
+ }
18191
+ },
18192
+ {
18193
+ "description": "(React: onDestroyed) This event is dispatched after the listitem is destroyed (removed from the DOM)",
18194
+ "name": "destroyed",
18195
+ "reactName": "onDestroyed",
18196
+ "inheritedFrom": {
18197
+ "name": "ListItem",
18198
+ "module": "src/components/listitem/listitem.component.ts"
18199
+ }
18072
18200
  }
18073
18201
  ],
18074
18202
  "attributes": [
@@ -18604,6 +18732,29 @@
18604
18732
  ],
18605
18733
  "description": "Handles mouse click events on the menu items.\nThis method checks if the clicked element is a valid menu item and not a submenu trigger.\nIf it is, it closes all other menu popovers to ensure only one menu is open at a time."
18606
18734
  },
18735
+ {
18736
+ "kind": "method",
18737
+ "name": "handleItemCreation",
18738
+ "privacy": "private",
18739
+ "parameters": [
18740
+ {
18741
+ "name": "event",
18742
+ "type": {
18743
+ "text": "Event"
18744
+ }
18745
+ }
18746
+ ]
18747
+ },
18748
+ {
18749
+ "kind": "field",
18750
+ "name": "handleItemChangeEvent",
18751
+ "privacy": "private"
18752
+ },
18753
+ {
18754
+ "kind": "field",
18755
+ "name": "resetMenuNavigation",
18756
+ "privacy": "private"
18757
+ },
18607
18758
  {
18608
18759
  "kind": "method",
18609
18760
  "name": "resolveDirectionKey",
@@ -21311,6 +21462,42 @@
21311
21462
  "description": "(React: onActiveChange) Dispatched when the active state of the navmenuitem changes.",
21312
21463
  "name": "activechange",
21313
21464
  "reactName": "onActiveChange"
21465
+ },
21466
+ {
21467
+ "description": "(React: onEnabled) This event is dispatched after the listitem is enabled",
21468
+ "name": "enabled",
21469
+ "reactName": "onEnabled",
21470
+ "inheritedFrom": {
21471
+ "name": "ListItem",
21472
+ "module": "src/components/listitem/listitem.component.ts"
21473
+ }
21474
+ },
21475
+ {
21476
+ "description": "(React: onDisabled) This event is dispatched after the listitem is disabled",
21477
+ "name": "disabled",
21478
+ "reactName": "onDisabled",
21479
+ "inheritedFrom": {
21480
+ "name": "ListItem",
21481
+ "module": "src/components/listitem/listitem.component.ts"
21482
+ }
21483
+ },
21484
+ {
21485
+ "description": "(React: onCreated) This event is dispatched after the listitem is created (added to the DOM)",
21486
+ "name": "created",
21487
+ "reactName": "onCreated",
21488
+ "inheritedFrom": {
21489
+ "name": "ListItem",
21490
+ "module": "src/components/listitem/listitem.component.ts"
21491
+ }
21492
+ },
21493
+ {
21494
+ "description": "(React: onDestroyed) This event is dispatched after the listitem is destroyed (removed from the DOM)",
21495
+ "name": "destroyed",
21496
+ "reactName": "onDestroyed",
21497
+ "inheritedFrom": {
21498
+ "name": "ListItem",
21499
+ "module": "src/components/listitem/listitem.component.ts"
21500
+ }
21314
21501
  }
21315
21502
  ],
21316
21503
  "attributes": [
@@ -22398,6 +22585,42 @@
22398
22585
  "name": "ListItem",
22399
22586
  "module": "src/components/listitem/listitem.component.ts"
22400
22587
  }
22588
+ },
22589
+ {
22590
+ "description": "(React: onEnabled) This event is dispatched after the listitem is enabled",
22591
+ "name": "enabled",
22592
+ "reactName": "onEnabled",
22593
+ "inheritedFrom": {
22594
+ "name": "ListItem",
22595
+ "module": "src/components/listitem/listitem.component.ts"
22596
+ }
22597
+ },
22598
+ {
22599
+ "description": "(React: onDisabled) This event is dispatched after the listitem is disabled",
22600
+ "name": "disabled",
22601
+ "reactName": "onDisabled",
22602
+ "inheritedFrom": {
22603
+ "name": "ListItem",
22604
+ "module": "src/components/listitem/listitem.component.ts"
22605
+ }
22606
+ },
22607
+ {
22608
+ "description": "(React: onCreated) This event is dispatched after the listitem is created (added to the DOM)",
22609
+ "name": "created",
22610
+ "reactName": "onCreated",
22611
+ "inheritedFrom": {
22612
+ "name": "ListItem",
22613
+ "module": "src/components/listitem/listitem.component.ts"
22614
+ }
22615
+ },
22616
+ {
22617
+ "description": "(React: onDestroyed) This event is dispatched after the listitem is destroyed (removed from the DOM)",
22618
+ "name": "destroyed",
22619
+ "reactName": "onDestroyed",
22620
+ "inheritedFrom": {
22621
+ "name": "ListItem",
22622
+ "module": "src/components/listitem/listitem.component.ts"
22623
+ }
22401
22624
  }
22402
22625
  ],
22403
22626
  "attributes": [