@nordhealth/components 2.8.1 → 2.8.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -552,6 +552,175 @@
552
552
  ],
553
553
  "readme": "## Usage\n\nThis section includes guidelines for designers and developers about the usage of this component in different contexts.\n\n<div class=\"n-usage n-usage-do\">\n\n### Do\n\n- Always add the name of the person using the `name` property.\n- For the best results, use square images or images cropped into a square.\n\n</div>\n<div class=\"n-usage n-usage-dont\">\n\n### Don’t\n\n- Try to avoid using landscape or portrait images as avatars. Let users crop their images before or after uploading if possible.\n\n</div>\n"
554
554
  },
555
+ {
556
+ "kind": "javascript-module",
557
+ "path": "src/badge/Badge.ts",
558
+ "declarations": [
559
+ {
560
+ "kind": "class",
561
+ "description": "Badges are used to inform users of the status of an object\nor of an action that’s been taken. Commonly used in tabular\ndata to indicate status.",
562
+ "name": "Badge",
563
+ "slots": [
564
+ {
565
+ "description": "The badge content.",
566
+ "name": ""
567
+ }
568
+ ],
569
+ "members": [
570
+ {
571
+ "kind": "field",
572
+ "name": "type",
573
+ "type": {
574
+ "text": "\"warning\" | \"success\" | \"danger\" | \"highlight\" | \"info\" | \"neutral\" | \"progress\" | undefined"
575
+ },
576
+ "default": "\"neutral\"",
577
+ "description": "The type of badge.\nDetermines the background color of the badge.",
578
+ "attribute": "type",
579
+ "reflects": true
580
+ },
581
+ {
582
+ "kind": "field",
583
+ "name": "progress",
584
+ "type": {
585
+ "text": "\"cancelled\" | \"complete\" | \"incomplete\" | \"partially-complete\" | undefined"
586
+ },
587
+ "description": "The progress of the badge. Displays a progress\nindicator next to the label.",
588
+ "attribute": "progress"
589
+ }
590
+ ],
591
+ "attributes": [
592
+ {
593
+ "name": "type",
594
+ "type": {
595
+ "text": "\"warning\" | \"success\" | \"danger\" | \"highlight\" | \"info\" | \"neutral\" | \"progress\" | undefined"
596
+ },
597
+ "default": "\"neutral\"",
598
+ "description": "The type of badge.\nDetermines the background color of the badge.",
599
+ "fieldName": "type"
600
+ },
601
+ {
602
+ "name": "progress",
603
+ "type": {
604
+ "text": "\"cancelled\" | \"complete\" | \"incomplete\" | \"partially-complete\" | undefined"
605
+ },
606
+ "description": "The progress of the badge. Displays a progress\nindicator next to the label.",
607
+ "fieldName": "progress"
608
+ }
609
+ ],
610
+ "superclass": {
611
+ "name": "LitElement",
612
+ "package": "lit"
613
+ },
614
+ "status": "ready",
615
+ "category": "text",
616
+ "displayName": null,
617
+ "examples": [],
618
+ "tagName": "nord-badge",
619
+ "customElement": true
620
+ }
621
+ ],
622
+ "exports": [
623
+ {
624
+ "kind": "js",
625
+ "name": "default",
626
+ "declaration": {
627
+ "name": "Badge",
628
+ "module": "src/badge/Badge.ts"
629
+ }
630
+ },
631
+ {
632
+ "kind": "custom-element-definition",
633
+ "name": "nord-badge",
634
+ "declaration": {
635
+ "name": "Badge",
636
+ "module": "src/badge/Badge.ts"
637
+ }
638
+ }
639
+ ],
640
+ "readme": "## Usage\n\nThis section includes guidelines for designers and developers about the usage of this component in different contexts.\n\n<div class=\"n-usage n-usage-do\">\n\n### Do\n\n- Use established variants and color patterns so that users can clearly identify the importance level.\n- Use to show a status update on a piece of information or action.\n- Use to mark something as a “draft” or “new”.\n- Use when you want to highlight something that has been added recently.\n- Always position badge so that it’s clear to understand what object it’s related to.\n\n</div>\n<div class=\"n-usage n-usage-dont\">\n\n### Don’t\n\n- Don’t make badges clickable. Instead use button component’s small variant.\n- Don’t use alternatives to existing badge variants.\n\n</div>\n\n---\n\n## Content guidelines\n\nBadge labels should use a single word to describe the status of an object. Only use two words if you need to describe a complex state:\n\n<div class=\"n-usage n-usage-do\">Complete</div>\n<div class=\"n-usage n-usage-dont\">Action completed</div>\n\nWhen writing badge labels, always write them in sentence case, not title case. The first word should be capitalized and the rest lowercase (unless a proper noun):\n\n<div class=\"n-usage n-usage-do\">Partially refunded</div>\n<div class=\"n-usage n-usage-dont\">Partially Refunded</div>\n\nAvoid unnecessary words and articles in badge labels, such as “is”, “the”, “an” or “a”:\n\n<div class=\"n-usage n-usage-do\">Pending</div>\n<div class=\"n-usage n-usage-dont\">Item is pending</div>\n\nAlways describe the status in the past tense:\n\n<div class=\"n-usage n-usage-do\">Refunded</div>\n<div class=\"n-usage n-usage-dont\">Refund</div>\n\n---\n\n## Variants\n\nThis section describes the different component variants, their purpose, and when to use each variant.\n\n| Name | Purpose |\n| ----------- | --------------------------------------------------------------------------------------------------------------------------------------- |\n| `neutral` | The default style variant. |\n| `info` | Used to convey general information that isn’t critical. |\n| `success` | Used to convey success states. For example, you might want to show a badge that tells the user a payment was successful. |\n| `highlight` | Used to highlight specific items in the interface, like notifications. |\n| `danger` | Used to communicate problems that have to be resolved so that user can continue forward. Should always be used for highlighting errors. |\n| `warning` | Used to display information that needs a user’s attention attention and may require further steps. |\n| `progress` | Used to convey something that’s in progress. |\n"
641
+ },
642
+ {
643
+ "kind": "javascript-module",
644
+ "path": "src/banner/Banner.ts",
645
+ "declarations": [
646
+ {
647
+ "kind": "class",
648
+ "description": "Banner informs users about important changes or conditions in the\ninterface. Use this component if you need to communicate to users\nin a prominent way.",
649
+ "name": "Banner",
650
+ "cssProperties": [
651
+ {
652
+ "description": "Controls how rounded the corners are, using [border radius tokens](/tokens/#border-radius).",
653
+ "name": "--n-banner-border-radius",
654
+ "default": "var(--n-border-radius)"
655
+ },
656
+ {
657
+ "description": "Controls the surrounding shadow, using [box shadow tokens](/tokens/#box-shadow).",
658
+ "name": "--n-banner-box-shadow",
659
+ "default": "var(--n-box-shadow-card)"
660
+ }
661
+ ],
662
+ "slots": [
663
+ {
664
+ "description": "default slot",
665
+ "name": ""
666
+ }
667
+ ],
668
+ "members": [
669
+ {
670
+ "kind": "field",
671
+ "name": "variant",
672
+ "type": {
673
+ "text": "\"info\" | \"danger\" | \"success\" | \"warning\""
674
+ },
675
+ "default": "\"info\"",
676
+ "description": "The style variant of the banner.",
677
+ "attribute": "variant",
678
+ "reflects": true
679
+ }
680
+ ],
681
+ "attributes": [
682
+ {
683
+ "name": "variant",
684
+ "type": {
685
+ "text": "\"info\" | \"danger\" | \"success\" | \"warning\""
686
+ },
687
+ "default": "\"info\"",
688
+ "description": "The style variant of the banner.",
689
+ "fieldName": "variant"
690
+ }
691
+ ],
692
+ "superclass": {
693
+ "name": "LitElement",
694
+ "package": "lit"
695
+ },
696
+ "status": "ready",
697
+ "category": "feedback",
698
+ "displayName": null,
699
+ "examples": [],
700
+ "tagName": "nord-banner",
701
+ "customElement": true
702
+ }
703
+ ],
704
+ "exports": [
705
+ {
706
+ "kind": "js",
707
+ "name": "default",
708
+ "declaration": {
709
+ "name": "Banner",
710
+ "module": "src/banner/Banner.ts"
711
+ }
712
+ },
713
+ {
714
+ "kind": "custom-element-definition",
715
+ "name": "nord-banner",
716
+ "declaration": {
717
+ "name": "Banner",
718
+ "module": "src/banner/Banner.ts"
719
+ }
720
+ }
721
+ ],
722
+ "readme": "## Usage\n\nThis section includes guidelines for designers and developers about the usage of this component in different contexts.\n\n<div class=\"n-usage n-usage-do\">\n\n### Do\n\n- Use this component if you need to communicate in a prominent way.\n- Place banner at the top of the section it applies to.\n- Use for highlighting errors and success statuses.\n- Put banner close to the context it’s referring to.\n- Move focus to the banner if it’s relevant to the current workflow.\n\n</div>\n<div class=\"n-usage n-usage-dont\">\n\n### Don’t\n\n- Move focus to banner if it appears on page load.\n- Use for highlighting general content or as a banner.\n- Use to replace an error page.\n\n</div>\n\n---\n\n## Content guidelines\n\nBanner content should be clear, accurate and easy to understand:\n\n<div class=\"n-usage n-usage-do\">We’re experiencing an incident. Please see our status page for more details.</div>\n<div class=\"n-usage n-usage-dont\">There was an error.</div>\n\nWhen writing banner content, always write it in sentence case, not title case. The first word should be capitalized and the rest lowercase (unless a proper noun):\n\n<div class=\"n-usage n-usage-do\">We’re experiencing an incident.</div>\n<div class=\"n-usage n-usage-dont\">We’re Experiencing An Incident.</div>\n\nAlways end in punctuation:\n\n<div class=\"n-usage n-usage-do\">We’re experiencing an incident.</div>\n<div class=\"n-usage n-usage-dont\">We’re experiencing an incident</div>\n"
723
+ },
555
724
  {
556
725
  "kind": "javascript-module",
557
726
  "path": "src/button/Button.ts",
@@ -1059,211 +1228,42 @@
1059
1228
  },
1060
1229
  {
1061
1230
  "kind": "javascript-module",
1062
- "path": "src/banner/Banner.ts",
1231
+ "path": "src/calendar/Calendar.ts",
1063
1232
  "declarations": [
1064
1233
  {
1065
1234
  "kind": "class",
1066
- "description": "Banner informs users about important changes or conditions in the\ninterface. Use this component if you need to communicate to users\nin a prominent way.",
1067
- "name": "Banner",
1235
+ "description": "Calendar allows user to pick a date. It comes with built-in\nfunctionality that allows you to set a minimum and a maximum allowed date.\nPlease note that the date must be passed in ISO-8601 format.",
1236
+ "name": "Calendar",
1068
1237
  "cssProperties": [
1069
1238
  {
1070
1239
  "description": "Controls how rounded the corners are, using [border radius tokens](/tokens/#border-radius).",
1071
- "name": "--n-banner-border-radius",
1240
+ "name": "--n-calendar-border-radius",
1072
1241
  "default": "var(--n-border-radius)"
1073
1242
  },
1074
1243
  {
1075
1244
  "description": "Controls the surrounding shadow, using [box shadow tokens](/tokens/#box-shadow).",
1076
- "name": "--n-banner-box-shadow",
1077
- "default": "var(--n-box-shadow-card)"
1078
- }
1079
- ],
1080
- "slots": [
1081
- {
1082
- "description": "default slot",
1083
- "name": ""
1245
+ "name": "--n-calendar-box-shadow",
1246
+ "default": "var(--n-box-shadow-popout)"
1084
1247
  }
1085
1248
  ],
1086
1249
  "members": [
1087
1250
  {
1088
1251
  "kind": "field",
1089
- "name": "variant",
1252
+ "name": "dialogLabelId",
1090
1253
  "type": {
1091
- "text": "\"info\" | \"danger\" | \"success\" | \"warning\""
1254
+ "text": "string"
1092
1255
  },
1093
- "default": "\"info\"",
1094
- "description": "The style variant of the banner.",
1095
- "attribute": "variant",
1096
- "reflects": true
1097
- }
1098
- ],
1099
- "attributes": [
1256
+ "privacy": "private",
1257
+ "default": "\"dialog-header\""
1258
+ },
1100
1259
  {
1101
- "name": "variant",
1260
+ "kind": "field",
1261
+ "name": "monthSelectNode",
1102
1262
  "type": {
1103
- "text": "\"info\" | \"danger\" | \"success\" | \"warning\""
1263
+ "text": "HTMLElement"
1104
1264
  },
1105
- "default": "\"info\"",
1106
- "description": "The style variant of the banner.",
1107
- "fieldName": "variant"
1108
- }
1109
- ],
1110
- "superclass": {
1111
- "name": "LitElement",
1112
- "package": "lit"
1113
- },
1114
- "status": "ready",
1115
- "category": "feedback",
1116
- "displayName": null,
1117
- "examples": [],
1118
- "tagName": "nord-banner",
1119
- "customElement": true
1120
- }
1121
- ],
1122
- "exports": [
1123
- {
1124
- "kind": "js",
1125
- "name": "default",
1126
- "declaration": {
1127
- "name": "Banner",
1128
- "module": "src/banner/Banner.ts"
1129
- }
1130
- },
1131
- {
1132
- "kind": "custom-element-definition",
1133
- "name": "nord-banner",
1134
- "declaration": {
1135
- "name": "Banner",
1136
- "module": "src/banner/Banner.ts"
1137
- }
1138
- }
1139
- ],
1140
- "readme": "## Usage\n\nThis section includes guidelines for designers and developers about the usage of this component in different contexts.\n\n<div class=\"n-usage n-usage-do\">\n\n### Do\n\n- Use this component if you need to communicate in a prominent way.\n- Place banner at the top of the section it applies to.\n- Use for highlighting errors and success statuses.\n- Put banner close to the context it’s referring to.\n- Move focus to the banner if it’s relevant to the current workflow.\n\n</div>\n<div class=\"n-usage n-usage-dont\">\n\n### Don’t\n\n- Move focus to banner if it appears on page load.\n- Use for highlighting general content or as a banner.\n- Use to replace an error page.\n\n</div>\n\n---\n\n## Content guidelines\n\nBanner content should be clear, accurate and easy to understand:\n\n<div class=\"n-usage n-usage-do\">We’re experiencing an incident. Please see our status page for more details.</div>\n<div class=\"n-usage n-usage-dont\">There was an error.</div>\n\nWhen writing banner content, always write it in sentence case, not title case. The first word should be capitalized and the rest lowercase (unless a proper noun):\n\n<div class=\"n-usage n-usage-do\">We’re experiencing an incident.</div>\n<div class=\"n-usage n-usage-dont\">We’re Experiencing An Incident.</div>\n\nAlways end in punctuation:\n\n<div class=\"n-usage n-usage-do\">We’re experiencing an incident.</div>\n<div class=\"n-usage n-usage-dont\">We’re experiencing an incident</div>\n"
1141
- },
1142
- {
1143
- "kind": "javascript-module",
1144
- "path": "src/badge/Badge.ts",
1145
- "declarations": [
1146
- {
1147
- "kind": "class",
1148
- "description": "Badges are used to inform users of the status of an object\nor of an action that’s been taken. Commonly used in tabular\ndata to indicate status.",
1149
- "name": "Badge",
1150
- "slots": [
1151
- {
1152
- "description": "The badge content.",
1153
- "name": ""
1154
- }
1155
- ],
1156
- "members": [
1157
- {
1158
- "kind": "field",
1159
- "name": "type",
1160
- "type": {
1161
- "text": "\"warning\" | \"success\" | \"danger\" | \"highlight\" | \"info\" | \"neutral\" | \"progress\" | undefined"
1162
- },
1163
- "default": "\"neutral\"",
1164
- "description": "The type of badge.\nDetermines the background color of the badge.",
1165
- "attribute": "type",
1166
- "reflects": true
1167
- },
1168
- {
1169
- "kind": "field",
1170
- "name": "progress",
1171
- "type": {
1172
- "text": "\"cancelled\" | \"complete\" | \"incomplete\" | \"partially-complete\" | undefined"
1173
- },
1174
- "description": "The progress of the badge. Displays a progress\nindicator next to the label.",
1175
- "attribute": "progress"
1176
- }
1177
- ],
1178
- "attributes": [
1179
- {
1180
- "name": "type",
1181
- "type": {
1182
- "text": "\"warning\" | \"success\" | \"danger\" | \"highlight\" | \"info\" | \"neutral\" | \"progress\" | undefined"
1183
- },
1184
- "default": "\"neutral\"",
1185
- "description": "The type of badge.\nDetermines the background color of the badge.",
1186
- "fieldName": "type"
1187
- },
1188
- {
1189
- "name": "progress",
1190
- "type": {
1191
- "text": "\"cancelled\" | \"complete\" | \"incomplete\" | \"partially-complete\" | undefined"
1192
- },
1193
- "description": "The progress of the badge. Displays a progress\nindicator next to the label.",
1194
- "fieldName": "progress"
1195
- }
1196
- ],
1197
- "superclass": {
1198
- "name": "LitElement",
1199
- "package": "lit"
1200
- },
1201
- "status": "ready",
1202
- "category": "text",
1203
- "displayName": null,
1204
- "examples": [],
1205
- "tagName": "nord-badge",
1206
- "customElement": true
1207
- }
1208
- ],
1209
- "exports": [
1210
- {
1211
- "kind": "js",
1212
- "name": "default",
1213
- "declaration": {
1214
- "name": "Badge",
1215
- "module": "src/badge/Badge.ts"
1216
- }
1217
- },
1218
- {
1219
- "kind": "custom-element-definition",
1220
- "name": "nord-badge",
1221
- "declaration": {
1222
- "name": "Badge",
1223
- "module": "src/badge/Badge.ts"
1224
- }
1225
- }
1226
- ],
1227
- "readme": "## Usage\n\nThis section includes guidelines for designers and developers about the usage of this component in different contexts.\n\n<div class=\"n-usage n-usage-do\">\n\n### Do\n\n- Use established variants and color patterns so that users can clearly identify the importance level.\n- Use to show a status update on a piece of information or action.\n- Use to mark something as a “draft” or “new”.\n- Use when you want to highlight something that has been added recently.\n- Always position badge so that it’s clear to understand what object it’s related to.\n\n</div>\n<div class=\"n-usage n-usage-dont\">\n\n### Don’t\n\n- Don’t make badges clickable. Instead use button component’s small variant.\n- Don’t use alternatives to existing badge variants.\n\n</div>\n\n---\n\n## Content guidelines\n\nBadge labels should use a single word to describe the status of an object. Only use two words if you need to describe a complex state:\n\n<div class=\"n-usage n-usage-do\">Complete</div>\n<div class=\"n-usage n-usage-dont\">Action completed</div>\n\nWhen writing badge labels, always write them in sentence case, not title case. The first word should be capitalized and the rest lowercase (unless a proper noun):\n\n<div class=\"n-usage n-usage-do\">Partially refunded</div>\n<div class=\"n-usage n-usage-dont\">Partially Refunded</div>\n\nAvoid unnecessary words and articles in badge labels, such as “is”, “the”, “an” or “a”:\n\n<div class=\"n-usage n-usage-do\">Pending</div>\n<div class=\"n-usage n-usage-dont\">Item is pending</div>\n\nAlways describe the status in the past tense:\n\n<div class=\"n-usage n-usage-do\">Refunded</div>\n<div class=\"n-usage n-usage-dont\">Refund</div>\n\n---\n\n## Variants\n\nThis section describes the different component variants, their purpose, and when to use each variant.\n\n| Name | Purpose |\n| ----------- | --------------------------------------------------------------------------------------------------------------------------------------- |\n| `neutral` | The default style variant. |\n| `info` | Used to convey general information that isn’t critical. |\n| `success` | Used to convey success states. For example, you might want to show a badge that tells the user a payment was successful. |\n| `highlight` | Used to highlight specific items in the interface, like notifications. |\n| `danger` | Used to communicate problems that have to be resolved so that user can continue forward. Should always be used for highlighting errors. |\n| `warning` | Used to display information that needs a user’s attention attention and may require further steps. |\n| `progress` | Used to convey something that’s in progress. |\n"
1228
- },
1229
- {
1230
- "kind": "javascript-module",
1231
- "path": "src/calendar/Calendar.ts",
1232
- "declarations": [
1233
- {
1234
- "kind": "class",
1235
- "description": "Calendar allows user to pick a date. It comes with built-in\nfunctionality that allows you to set a minimum and a maximum allowed date.\nPlease note that the date must be passed in ISO-8601 format.",
1236
- "name": "Calendar",
1237
- "cssProperties": [
1238
- {
1239
- "description": "Controls how rounded the corners are, using [border radius tokens](/tokens/#border-radius).",
1240
- "name": "--n-calendar-border-radius",
1241
- "default": "var(--n-border-radius)"
1242
- },
1243
- {
1244
- "description": "Controls the surrounding shadow, using [box shadow tokens](/tokens/#box-shadow).",
1245
- "name": "--n-calendar-box-shadow",
1246
- "default": "var(--n-box-shadow-popout)"
1247
- }
1248
- ],
1249
- "members": [
1250
- {
1251
- "kind": "field",
1252
- "name": "dialogLabelId",
1253
- "type": {
1254
- "text": "string"
1255
- },
1256
- "privacy": "private",
1257
- "default": "\"dialog-header\""
1258
- },
1259
- {
1260
- "kind": "field",
1261
- "name": "monthSelectNode",
1262
- "type": {
1263
- "text": "HTMLElement"
1264
- },
1265
- "privacy": "private"
1266
- },
1265
+ "privacy": "private"
1266
+ },
1267
1267
  {
1268
1268
  "kind": "field",
1269
1269
  "name": "focusedDayNode",
@@ -7210,6 +7210,11 @@
7210
7210
  "description": "Controls the width of the drawer area, when used.",
7211
7211
  "name": "--n-layout-drawer-inline-size",
7212
7212
  "default": "320px"
7213
+ },
7214
+ {
7215
+ "description": "Controls the background color of the layout, using [color tokens](/tokens/#color).",
7216
+ "name": "--n-layout-background-color",
7217
+ "default": "var(--n-color-background)"
7213
7218
  }
7214
7219
  ],
7215
7220
  "slots": [
@@ -9284,306 +9289,121 @@
9284
9289
  },
9285
9290
  {
9286
9291
  "kind": "javascript-module",
9287
- "path": "src/qrcode/Qrcode.ts",
9292
+ "path": "src/radio/Radio.ts",
9288
9293
  "declarations": [
9289
9294
  {
9290
9295
  "kind": "class",
9291
- "description": "QR Code component is used for providing information or links\nto users which they can quickly scan with their smartphone.",
9292
- "name": "Qrcode",
9296
+ "description": "Radio buttons are graphical user interface elements that allow user to choose only one option from\na predefined set of mutually exclusive options.",
9297
+ "name": "Radio",
9298
+ "slots": [
9299
+ {
9300
+ "description": "Use when a label requires more than plain text.",
9301
+ "name": "label"
9302
+ },
9303
+ {
9304
+ "description": "Optional slot that holds hint text for the input.",
9305
+ "name": "hint"
9306
+ },
9307
+ {
9308
+ "description": "Optional slot that holds error text for the input.",
9309
+ "name": "error"
9310
+ }
9311
+ ],
9293
9312
  "members": [
9294
9313
  {
9295
9314
  "kind": "field",
9296
- "name": "canvas",
9315
+ "name": "inputId",
9297
9316
  "type": {
9298
- "text": "HTMLElement"
9317
+ "text": "string"
9299
9318
  },
9300
- "privacy": "private"
9319
+ "privacy": "protected",
9320
+ "default": "\"input\"",
9321
+ "inheritedFrom": {
9322
+ "name": "FormAssociatedMixin",
9323
+ "module": "src/common/mixins/FormAssociatedMixin.ts"
9324
+ }
9301
9325
  },
9302
9326
  {
9303
9327
  "kind": "field",
9304
- "name": "computed",
9328
+ "name": "hintId",
9305
9329
  "type": {
9306
- "text": "HTMLElement"
9330
+ "text": "string"
9307
9331
  },
9308
- "privacy": "private"
9332
+ "privacy": "protected",
9333
+ "default": "\"hint\"",
9334
+ "inheritedFrom": {
9335
+ "name": "FormAssociatedMixin",
9336
+ "module": "src/common/mixins/FormAssociatedMixin.ts"
9337
+ }
9309
9338
  },
9310
9339
  {
9311
9340
  "kind": "field",
9312
- "name": "value",
9341
+ "name": "errorId",
9313
9342
  "type": {
9314
9343
  "text": "string"
9315
9344
  },
9316
- "default": "\"\"",
9317
- "description": "The value of the QR Code, most commonly an URL.",
9318
- "attribute": "value",
9319
- "reflects": true
9345
+ "privacy": "protected",
9346
+ "default": "\"error\"",
9347
+ "inheritedFrom": {
9348
+ "name": "FormAssociatedMixin",
9349
+ "module": "src/common/mixins/FormAssociatedMixin.ts"
9350
+ }
9320
9351
  },
9321
9352
  {
9322
9353
  "kind": "field",
9323
- "name": "label",
9324
- "type": {
9325
- "text": "string"
9326
- },
9327
- "default": "\"\"",
9328
- "description": "Label used by assistive technology. If unspecified, the value will\nbe used instead.",
9329
- "attribute": "label",
9330
- "reflects": true
9354
+ "name": "hintSlot",
9355
+ "privacy": "protected",
9356
+ "default": "new LightSlotController(this, {\n slotName: \"hint\",\n render: () => (this.hint ? html`<div slot=\"hint-internal\" id=${this.hintId}>${this.hint}</div>` : nothing),\n syncLightDom: element => {\n element.id = this.hintId\n },\n })",
9357
+ "description": "For accessibility reasons, we render some parts of the component to the light DOM.",
9358
+ "inheritedFrom": {
9359
+ "name": "FormAssociatedMixin",
9360
+ "module": "src/common/mixins/FormAssociatedMixin.ts"
9361
+ }
9331
9362
  },
9332
9363
  {
9333
9364
  "kind": "field",
9334
- "name": "size",
9335
- "type": {
9336
- "text": "number"
9337
- },
9338
- "default": "128",
9339
- "description": "The size of the rendered QR Code in pixels.",
9340
- "attribute": "size",
9341
- "reflects": true
9365
+ "name": "labelSlot",
9366
+ "privacy": "protected",
9367
+ "default": "new LightSlotController(this, {\n slotName: \"label\",\n render: () => (this.label ? html`<label slot=\"label-internal\" for=${this.inputId}>${this.label}</label>` : nothing),\n syncLightDom: element => {\n if (!isLabel(element)) {\n // eslint-disable-next-line no-console\n console.warn(`NORD: Only <label> elements should be placed in radio's \"label\" slot`)\n } else {\n element.htmlFor = this.inputId\n }\n },\n })",
9368
+ "inheritedFrom": {
9369
+ "name": "FormAssociatedMixin",
9370
+ "module": "src/common/mixins/FormAssociatedMixin.ts"
9371
+ }
9342
9372
  },
9343
9373
  {
9344
9374
  "kind": "field",
9345
- "name": "color",
9346
- "type": {
9347
- "text": "string"
9348
- },
9349
- "default": "\"var(--n-color-text)\"",
9350
- "description": "The fill color of the QR Code.\nCan accept any valid CSS color value, including custom properties.",
9351
- "attribute": "color",
9352
- "reflects": true
9375
+ "name": "errorSlot",
9376
+ "privacy": "protected",
9377
+ "default": "new LightSlotController(this, {\n slotName: \"error\",\n render: () => (this.error ? html`<div slot=\"error-internal\" id=${this.errorId}>${this.error}</div>` : nothing),\n syncLightDom: element => {\n element.id = this.hintId\n },\n })",
9378
+ "inheritedFrom": {
9379
+ "name": "FormAssociatedMixin",
9380
+ "module": "src/common/mixins/FormAssociatedMixin.ts"
9381
+ }
9353
9382
  },
9354
9383
  {
9355
9384
  "kind": "field",
9356
- "name": "background",
9357
- "type": {
9358
- "text": "string"
9359
- },
9360
- "default": "\"var(--n-color-surface)\"",
9361
- "description": "The background color of the QR Code.\nCan accept any valid CSS color value, including custom properties.",
9362
- "attribute": "background",
9363
- "reflects": true
9385
+ "name": "inputSlot",
9386
+ "privacy": "protected",
9387
+ "default": "new LightDomController(this, {\n render: () =>\n html`\n <input\n slot=\"input\"\n @blur=${this.handleBlur}\n @focus=${this.handleFocus}\n ${ref(this.focusableRef)}\n class=\"n-input\"\n id=${this.inputId}\n type=\"radio\"\n name=${cond(this.name)}\n .value=${cond(this.value)}\n .checked=${this.checked}\n ?disabled=${this.disabled}\n ?required=${this.required}\n aria-describedby=${cond(this.getDescribedBy())}\n aria-invalid=${cond(this.getInvalid())}\n form=${cond(this.getAttribute(\"form\") || undefined)}\n />\n `,\n })"
9364
9388
  },
9365
9389
  {
9366
9390
  "kind": "field",
9367
- "name": "correction",
9391
+ "name": "formValue",
9392
+ "privacy": "protected",
9393
+ "inheritedFrom": {
9394
+ "name": "FormAssociatedMixin",
9395
+ "module": "src/common/mixins/FormAssociatedMixin.ts"
9396
+ }
9397
+ },
9398
+ {
9399
+ "kind": "field",
9400
+ "name": "checked",
9368
9401
  "type": {
9369
- "text": "\"L\" | \"M\" | \"Q\" | \"H\""
9402
+ "text": "boolean"
9370
9403
  },
9371
- "default": "\"H\"",
9372
- "description": "Error correction level makes the QR Code bigger and helps users to\nscan it without issues. L, M, Q and H values will use 7%, 15%, 25%\nand 30% of the QR code for error correction respectively.",
9373
- "attribute": "correction",
9374
- "reflects": true
9375
- },
9376
- {
9377
- "kind": "method",
9378
- "name": "generate",
9379
- "privacy": "private"
9380
- }
9381
- ],
9382
- "attributes": [
9383
- {
9384
- "name": "value",
9385
- "type": {
9386
- "text": "string"
9387
- },
9388
- "default": "\"\"",
9389
- "description": "The value of the QR Code, most commonly an URL.",
9390
- "fieldName": "value"
9391
- },
9392
- {
9393
- "name": "label",
9394
- "type": {
9395
- "text": "string"
9396
- },
9397
- "default": "\"\"",
9398
- "description": "Label used by assistive technology. If unspecified, the value will\nbe used instead.",
9399
- "fieldName": "label"
9400
- },
9401
- {
9402
- "name": "size",
9403
- "type": {
9404
- "text": "number"
9405
- },
9406
- "default": "128",
9407
- "description": "The size of the rendered QR Code in pixels.",
9408
- "fieldName": "size"
9409
- },
9410
- {
9411
- "name": "color",
9412
- "type": {
9413
- "text": "string"
9414
- },
9415
- "default": "\"var(--n-color-text)\"",
9416
- "description": "The fill color of the QR Code.\nCan accept any valid CSS color value, including custom properties.",
9417
- "fieldName": "color"
9418
- },
9419
- {
9420
- "name": "background",
9421
- "type": {
9422
- "text": "string"
9423
- },
9424
- "default": "\"var(--n-color-surface)\"",
9425
- "description": "The background color of the QR Code.\nCan accept any valid CSS color value, including custom properties.",
9426
- "fieldName": "background"
9427
- },
9428
- {
9429
- "name": "correction",
9430
- "type": {
9431
- "text": "\"L\" | \"M\" | \"Q\" | \"H\""
9432
- },
9433
- "default": "\"H\"",
9434
- "description": "Error correction level makes the QR Code bigger and helps users to\nscan it without issues. L, M, Q and H values will use 7%, 15%, 25%\nand 30% of the QR code for error correction respectively.",
9435
- "fieldName": "correction"
9436
- }
9437
- ],
9438
- "superclass": {
9439
- "name": "LitElement",
9440
- "package": "lit"
9441
- },
9442
- "status": "new",
9443
- "category": "image",
9444
- "displayName": "QR Code",
9445
- "examples": [],
9446
- "tagName": "nord-qrcode",
9447
- "customElement": true
9448
- }
9449
- ],
9450
- "exports": [
9451
- {
9452
- "kind": "js",
9453
- "name": "default",
9454
- "declaration": {
9455
- "name": "Qrcode",
9456
- "module": "src/qrcode/Qrcode.ts"
9457
- }
9458
- },
9459
- {
9460
- "kind": "custom-element-definition",
9461
- "name": "nord-qrcode",
9462
- "declaration": {
9463
- "name": "Qrcode",
9464
- "module": "src/qrcode/Qrcode.ts"
9465
- }
9466
- }
9467
- ],
9468
- "readme": "## Usage\n\nThis section includes guidelines for designers and developers about the usage of this component in different contexts.\n\n<div class=\"n-usage n-usage-do\">\n\n### Do\n\n- Use to allow people to access information on their smartphone without the need to type.\n- Always provide an alternative way to access the same information.\n\n</div>\n<div class=\"n-usage n-usage-dont\">\n\n### Don’t\n\n- Don’t hide important information behind a QR Code only.\n\n</div>\n"
9469
- },
9470
- {
9471
- "kind": "javascript-module",
9472
- "path": "src/radio/Radio.ts",
9473
- "declarations": [
9474
- {
9475
- "kind": "class",
9476
- "description": "Radio buttons are graphical user interface elements that allow user to choose only one option from\na predefined set of mutually exclusive options.",
9477
- "name": "Radio",
9478
- "slots": [
9479
- {
9480
- "description": "Use when a label requires more than plain text.",
9481
- "name": "label"
9482
- },
9483
- {
9484
- "description": "Optional slot that holds hint text for the input.",
9485
- "name": "hint"
9486
- },
9487
- {
9488
- "description": "Optional slot that holds error text for the input.",
9489
- "name": "error"
9490
- }
9491
- ],
9492
- "members": [
9493
- {
9494
- "kind": "field",
9495
- "name": "inputId",
9496
- "type": {
9497
- "text": "string"
9498
- },
9499
- "privacy": "protected",
9500
- "default": "\"input\"",
9501
- "inheritedFrom": {
9502
- "name": "FormAssociatedMixin",
9503
- "module": "src/common/mixins/FormAssociatedMixin.ts"
9504
- }
9505
- },
9506
- {
9507
- "kind": "field",
9508
- "name": "hintId",
9509
- "type": {
9510
- "text": "string"
9511
- },
9512
- "privacy": "protected",
9513
- "default": "\"hint\"",
9514
- "inheritedFrom": {
9515
- "name": "FormAssociatedMixin",
9516
- "module": "src/common/mixins/FormAssociatedMixin.ts"
9517
- }
9518
- },
9519
- {
9520
- "kind": "field",
9521
- "name": "errorId",
9522
- "type": {
9523
- "text": "string"
9524
- },
9525
- "privacy": "protected",
9526
- "default": "\"error\"",
9527
- "inheritedFrom": {
9528
- "name": "FormAssociatedMixin",
9529
- "module": "src/common/mixins/FormAssociatedMixin.ts"
9530
- }
9531
- },
9532
- {
9533
- "kind": "field",
9534
- "name": "hintSlot",
9535
- "privacy": "protected",
9536
- "default": "new LightSlotController(this, {\n slotName: \"hint\",\n render: () => (this.hint ? html`<div slot=\"hint-internal\" id=${this.hintId}>${this.hint}</div>` : nothing),\n syncLightDom: element => {\n element.id = this.hintId\n },\n })",
9537
- "description": "For accessibility reasons, we render some parts of the component to the light DOM.",
9538
- "inheritedFrom": {
9539
- "name": "FormAssociatedMixin",
9540
- "module": "src/common/mixins/FormAssociatedMixin.ts"
9541
- }
9542
- },
9543
- {
9544
- "kind": "field",
9545
- "name": "labelSlot",
9546
- "privacy": "protected",
9547
- "default": "new LightSlotController(this, {\n slotName: \"label\",\n render: () => (this.label ? html`<label slot=\"label-internal\" for=${this.inputId}>${this.label}</label>` : nothing),\n syncLightDom: element => {\n if (!isLabel(element)) {\n // eslint-disable-next-line no-console\n console.warn(`NORD: Only <label> elements should be placed in radio's \"label\" slot`)\n } else {\n element.htmlFor = this.inputId\n }\n },\n })",
9548
- "inheritedFrom": {
9549
- "name": "FormAssociatedMixin",
9550
- "module": "src/common/mixins/FormAssociatedMixin.ts"
9551
- }
9552
- },
9553
- {
9554
- "kind": "field",
9555
- "name": "errorSlot",
9556
- "privacy": "protected",
9557
- "default": "new LightSlotController(this, {\n slotName: \"error\",\n render: () => (this.error ? html`<div slot=\"error-internal\" id=${this.errorId}>${this.error}</div>` : nothing),\n syncLightDom: element => {\n element.id = this.hintId\n },\n })",
9558
- "inheritedFrom": {
9559
- "name": "FormAssociatedMixin",
9560
- "module": "src/common/mixins/FormAssociatedMixin.ts"
9561
- }
9562
- },
9563
- {
9564
- "kind": "field",
9565
- "name": "inputSlot",
9566
- "privacy": "protected",
9567
- "default": "new LightDomController(this, {\n render: () =>\n html`\n <input\n slot=\"input\"\n @blur=${this.handleBlur}\n @focus=${this.handleFocus}\n ${ref(this.focusableRef)}\n class=\"n-input\"\n id=${this.inputId}\n type=\"radio\"\n name=${cond(this.name)}\n .value=${cond(this.value)}\n .checked=${this.checked}\n ?disabled=${this.disabled}\n ?required=${this.required}\n aria-describedby=${cond(this.getDescribedBy())}\n aria-invalid=${cond(this.getInvalid())}\n form=${cond(this.getAttribute(\"form\") || undefined)}\n />\n `,\n })"
9568
- },
9569
- {
9570
- "kind": "field",
9571
- "name": "formValue",
9572
- "privacy": "protected",
9573
- "inheritedFrom": {
9574
- "name": "FormAssociatedMixin",
9575
- "module": "src/common/mixins/FormAssociatedMixin.ts"
9576
- }
9577
- },
9578
- {
9579
- "kind": "field",
9580
- "name": "checked",
9581
- "type": {
9582
- "text": "boolean"
9583
- },
9584
- "default": "false",
9585
- "description": "Controls whether the checkbox is checked or not.",
9586
- "attribute": "checked",
9404
+ "default": "false",
9405
+ "description": "Controls whether the checkbox is checked or not.",
9406
+ "attribute": "checked",
9587
9407
  "reflects": true
9588
9408
  },
9589
9409
  {
@@ -10092,60 +9912,245 @@
10092
9912
  },
10093
9913
  {
10094
9914
  "kind": "javascript-module",
10095
- "path": "src/select/Select.ts",
9915
+ "path": "src/qrcode/Qrcode.ts",
10096
9916
  "declarations": [
10097
9917
  {
10098
9918
  "kind": "class",
10099
- "description": "Select lets users choose one option from an options menu.\nConsider using select when you have 5 or more options to choose from.",
10100
- "name": "Select",
10101
- "slots": [
10102
- {
10103
- "description": "Default slot for holding <option> elements.",
10104
- "name": ""
10105
- },
10106
- {
10107
- "description": "Use when a label requires more than plain text.",
10108
- "name": "label"
10109
- },
10110
- {
10111
- "description": "Use when a hint requires more than plain text.",
10112
- "name": "hint"
10113
- },
10114
- {
10115
- "description": "Optional slot that holds error text for the input.",
10116
- "name": "error"
10117
- }
10118
- ],
9919
+ "description": "QR Code component is used for providing information or links\nto users which they can quickly scan with their smartphone.",
9920
+ "name": "Qrcode",
10119
9921
  "members": [
10120
9922
  {
10121
9923
  "kind": "field",
10122
- "name": "formValue",
10123
- "privacy": "protected",
10124
- "inheritedFrom": {
10125
- "name": "FormAssociatedMixin",
10126
- "module": "src/common/mixins/FormAssociatedMixin.ts"
10127
- }
9924
+ "name": "canvas",
9925
+ "type": {
9926
+ "text": "HTMLElement"
9927
+ },
9928
+ "privacy": "private"
10128
9929
  },
10129
9930
  {
10130
9931
  "kind": "field",
10131
- "name": "defaultSlot",
10132
- "privacy": "private",
10133
- "default": "new SlotController(this)"
9932
+ "name": "computed",
9933
+ "type": {
9934
+ "text": "HTMLElement"
9935
+ },
9936
+ "privacy": "private"
10134
9937
  },
10135
9938
  {
10136
9939
  "kind": "field",
10137
- "name": "inputId",
9940
+ "name": "value",
10138
9941
  "type": {
10139
9942
  "text": "string"
10140
9943
  },
10141
- "privacy": "protected",
10142
- "default": "\"select\"",
10143
- "inheritedFrom": {
10144
- "name": "FormAssociatedMixin",
10145
- "module": "src/common/mixins/FormAssociatedMixin.ts"
10146
- }
10147
- },
10148
- {
9944
+ "default": "\"\"",
9945
+ "description": "The value of the QR Code, most commonly an URL.",
9946
+ "attribute": "value",
9947
+ "reflects": true
9948
+ },
9949
+ {
9950
+ "kind": "field",
9951
+ "name": "label",
9952
+ "type": {
9953
+ "text": "string"
9954
+ },
9955
+ "default": "\"\"",
9956
+ "description": "Label used by assistive technology. If unspecified, the value will\nbe used instead.",
9957
+ "attribute": "label",
9958
+ "reflects": true
9959
+ },
9960
+ {
9961
+ "kind": "field",
9962
+ "name": "size",
9963
+ "type": {
9964
+ "text": "number"
9965
+ },
9966
+ "default": "128",
9967
+ "description": "The size of the rendered QR Code in pixels.",
9968
+ "attribute": "size",
9969
+ "reflects": true
9970
+ },
9971
+ {
9972
+ "kind": "field",
9973
+ "name": "color",
9974
+ "type": {
9975
+ "text": "string"
9976
+ },
9977
+ "default": "\"var(--n-color-text)\"",
9978
+ "description": "The fill color of the QR Code.\nCan accept any valid CSS color value, including custom properties.",
9979
+ "attribute": "color",
9980
+ "reflects": true
9981
+ },
9982
+ {
9983
+ "kind": "field",
9984
+ "name": "background",
9985
+ "type": {
9986
+ "text": "string"
9987
+ },
9988
+ "default": "\"var(--n-color-surface)\"",
9989
+ "description": "The background color of the QR Code.\nCan accept any valid CSS color value, including custom properties.",
9990
+ "attribute": "background",
9991
+ "reflects": true
9992
+ },
9993
+ {
9994
+ "kind": "field",
9995
+ "name": "correction",
9996
+ "type": {
9997
+ "text": "\"L\" | \"M\" | \"Q\" | \"H\""
9998
+ },
9999
+ "default": "\"H\"",
10000
+ "description": "Error correction level makes the QR Code bigger and helps users to\nscan it without issues. L, M, Q and H values will use 7%, 15%, 25%\nand 30% of the QR code for error correction respectively.",
10001
+ "attribute": "correction",
10002
+ "reflects": true
10003
+ },
10004
+ {
10005
+ "kind": "method",
10006
+ "name": "generate",
10007
+ "privacy": "private"
10008
+ }
10009
+ ],
10010
+ "attributes": [
10011
+ {
10012
+ "name": "value",
10013
+ "type": {
10014
+ "text": "string"
10015
+ },
10016
+ "default": "\"\"",
10017
+ "description": "The value of the QR Code, most commonly an URL.",
10018
+ "fieldName": "value"
10019
+ },
10020
+ {
10021
+ "name": "label",
10022
+ "type": {
10023
+ "text": "string"
10024
+ },
10025
+ "default": "\"\"",
10026
+ "description": "Label used by assistive technology. If unspecified, the value will\nbe used instead.",
10027
+ "fieldName": "label"
10028
+ },
10029
+ {
10030
+ "name": "size",
10031
+ "type": {
10032
+ "text": "number"
10033
+ },
10034
+ "default": "128",
10035
+ "description": "The size of the rendered QR Code in pixels.",
10036
+ "fieldName": "size"
10037
+ },
10038
+ {
10039
+ "name": "color",
10040
+ "type": {
10041
+ "text": "string"
10042
+ },
10043
+ "default": "\"var(--n-color-text)\"",
10044
+ "description": "The fill color of the QR Code.\nCan accept any valid CSS color value, including custom properties.",
10045
+ "fieldName": "color"
10046
+ },
10047
+ {
10048
+ "name": "background",
10049
+ "type": {
10050
+ "text": "string"
10051
+ },
10052
+ "default": "\"var(--n-color-surface)\"",
10053
+ "description": "The background color of the QR Code.\nCan accept any valid CSS color value, including custom properties.",
10054
+ "fieldName": "background"
10055
+ },
10056
+ {
10057
+ "name": "correction",
10058
+ "type": {
10059
+ "text": "\"L\" | \"M\" | \"Q\" | \"H\""
10060
+ },
10061
+ "default": "\"H\"",
10062
+ "description": "Error correction level makes the QR Code bigger and helps users to\nscan it without issues. L, M, Q and H values will use 7%, 15%, 25%\nand 30% of the QR code for error correction respectively.",
10063
+ "fieldName": "correction"
10064
+ }
10065
+ ],
10066
+ "superclass": {
10067
+ "name": "LitElement",
10068
+ "package": "lit"
10069
+ },
10070
+ "status": "new",
10071
+ "category": "image",
10072
+ "displayName": "QR Code",
10073
+ "examples": [],
10074
+ "tagName": "nord-qrcode",
10075
+ "customElement": true
10076
+ }
10077
+ ],
10078
+ "exports": [
10079
+ {
10080
+ "kind": "js",
10081
+ "name": "default",
10082
+ "declaration": {
10083
+ "name": "Qrcode",
10084
+ "module": "src/qrcode/Qrcode.ts"
10085
+ }
10086
+ },
10087
+ {
10088
+ "kind": "custom-element-definition",
10089
+ "name": "nord-qrcode",
10090
+ "declaration": {
10091
+ "name": "Qrcode",
10092
+ "module": "src/qrcode/Qrcode.ts"
10093
+ }
10094
+ }
10095
+ ],
10096
+ "readme": "## Usage\n\nThis section includes guidelines for designers and developers about the usage of this component in different contexts.\n\n<div class=\"n-usage n-usage-do\">\n\n### Do\n\n- Use to allow people to access information on their smartphone without the need to type.\n- Always provide an alternative way to access the same information.\n\n</div>\n<div class=\"n-usage n-usage-dont\">\n\n### Don’t\n\n- Don’t hide important information behind a QR Code only.\n\n</div>\n"
10097
+ },
10098
+ {
10099
+ "kind": "javascript-module",
10100
+ "path": "src/select/Select.ts",
10101
+ "declarations": [
10102
+ {
10103
+ "kind": "class",
10104
+ "description": "Select lets users choose one option from an options menu.\nConsider using select when you have 5 or more options to choose from.",
10105
+ "name": "Select",
10106
+ "slots": [
10107
+ {
10108
+ "description": "Default slot for holding <option> elements.",
10109
+ "name": ""
10110
+ },
10111
+ {
10112
+ "description": "Use when a label requires more than plain text.",
10113
+ "name": "label"
10114
+ },
10115
+ {
10116
+ "description": "Use when a hint requires more than plain text.",
10117
+ "name": "hint"
10118
+ },
10119
+ {
10120
+ "description": "Optional slot that holds error text for the input.",
10121
+ "name": "error"
10122
+ }
10123
+ ],
10124
+ "members": [
10125
+ {
10126
+ "kind": "field",
10127
+ "name": "formValue",
10128
+ "privacy": "protected",
10129
+ "inheritedFrom": {
10130
+ "name": "FormAssociatedMixin",
10131
+ "module": "src/common/mixins/FormAssociatedMixin.ts"
10132
+ }
10133
+ },
10134
+ {
10135
+ "kind": "field",
10136
+ "name": "defaultSlot",
10137
+ "privacy": "private",
10138
+ "default": "new SlotController(this)"
10139
+ },
10140
+ {
10141
+ "kind": "field",
10142
+ "name": "inputId",
10143
+ "type": {
10144
+ "text": "string"
10145
+ },
10146
+ "privacy": "protected",
10147
+ "default": "\"select\"",
10148
+ "inheritedFrom": {
10149
+ "name": "FormAssociatedMixin",
10150
+ "module": "src/common/mixins/FormAssociatedMixin.ts"
10151
+ }
10152
+ },
10153
+ {
10149
10154
  "kind": "field",
10150
10155
  "name": "expand",
10151
10156
  "type": {
@@ -12410,90 +12415,15 @@
12410
12415
  },
12411
12416
  {
12412
12417
  "kind": "javascript-module",
12413
- "path": "src/toast-group/ToastGroup.ts",
12418
+ "path": "src/toast/Toast.ts",
12414
12419
  "declarations": [
12415
12420
  {
12416
12421
  "kind": "class",
12417
- "description": "Toast group is used to position and style a group of toasts, whilst ensuring they are announced by screen readers.",
12418
- "name": "ToastGroup",
12422
+ "description": "Toasts are non-disruptive messages that appear in the interface\nto provide quick, at-a-glance feedback on the outcome of an action.",
12423
+ "name": "Toast",
12419
12424
  "slots": [
12420
12425
  {
12421
- "description": "Default slot in which to place toasts.",
12422
- "name": ""
12423
- }
12424
- ],
12425
- "members": [
12426
- {
12427
- "kind": "method",
12428
- "name": "addToast",
12429
- "parameters": [
12430
- {
12431
- "name": "text",
12432
- "type": {
12433
- "text": "string"
12434
- },
12435
- "description": "The text/message of the toast."
12436
- },
12437
- {
12438
- "name": "options",
12439
- "default": "{}",
12440
- "type": {
12441
- "text": "ToastOptions"
12442
- },
12443
- "description": "An optional object for configuring the toast's `variant` and `autoDismiss`."
12444
- }
12445
- ],
12446
- "description": "Convenience method for creating and adding a toast to the group.",
12447
- "return": {
12448
- "type": {
12449
- "text": "Toast"
12450
- }
12451
- }
12452
- }
12453
- ],
12454
- "superclass": {
12455
- "name": "LitElement",
12456
- "package": "lit"
12457
- },
12458
- "status": "new",
12459
- "category": "feedback",
12460
- "displayName": null,
12461
- "examples": [],
12462
- "tagName": "nord-toast-group",
12463
- "customElement": true
12464
- }
12465
- ],
12466
- "exports": [
12467
- {
12468
- "kind": "js",
12469
- "name": "default",
12470
- "declaration": {
12471
- "name": "ToastGroup",
12472
- "module": "src/toast-group/ToastGroup.ts"
12473
- }
12474
- },
12475
- {
12476
- "kind": "custom-element-definition",
12477
- "name": "nord-toast-group",
12478
- "declaration": {
12479
- "name": "ToastGroup",
12480
- "module": "src/toast-group/ToastGroup.ts"
12481
- }
12482
- }
12483
- ],
12484
- "readme": "## Usage\n\nThis section includes guidelines for designers and developers about the usage of this component in different contexts.\n\n<div class=\"n-usage n-usage-do\">\n\n### Do\n\n- Use in combination with [Toast](/components/toast/) so that toasts get styled and announced to screen readers correctly.\n- Add as close to the bottom of the document as possible, ideally near the body closing tag, to maintain correct stacking order.\n\n</div>\n<div class=\"n-usage n-usage-dont\">\n\n### Don’t\n\n- Don’t use for grouping anything other than toast components\n\n</div>\n\n---\n\n## Content guidelines\n\nToast content should be clear, accurate and understandable by the user:\n\n<div class=\"n-usage n-usage-do\">Message sent</div>\n<div class=\"n-usage n-usage-dont\">Your message has been sent</div>\n\nWhen writing the toast content, use the {noun} + {verb} content formula:\n\n<div class=\"n-usage n-usage-do\">Patient created</div>\n<div class=\"n-usage n-usage-dont\">Your patient has been successfully updated</div>\n\nUse a maximum of 3 words when writing the toast content:\n\n<div class=\"n-usage n-usage-do\">Product updated</div>\n<div class=\"n-usage n-usage-dont\">Your product was updated just now</div>\n\nWhen writing the toast content, always write it in sentence case, not title case. The first word should be capitalized and the rest lowercase (unless a proper noun):\n\n<div class=\"n-usage n-usage-do\">Message sent</div>\n<div class=\"n-usage n-usage-dont\">Message Sent</div>\n\nAvoid unnecessary words and articles in the toast content, such as “the”, “an” or “a”:\n\n<div class=\"n-usage n-usage-do\">Changes saved</div>\n<div class=\"n-usage n-usage-dont\">The changes were saved</div>\n\nNever end in punctuation:\n\n<div class=\"n-usage n-usage-do\">Message sent</div>\n<div class=\"n-usage n-usage-dont\">Message sent.</div>\n\n---\n\n## Additional considerations\n\n- Toasts are complicated from an accessibility perspective. Whilst they are a convenient UI pattern for messaging, they present difficulties for keyboard or screen reader users. Therefore careful consideration should be given as to whether a toast is the correct choice.\n- If the message cannot be conveyed in 3 words or less, consider re-wording. If the message cannot be shortened any further, consider choosing a different pattern than toast.\n"
12485
- },
12486
- {
12487
- "kind": "javascript-module",
12488
- "path": "src/toast/Toast.ts",
12489
- "declarations": [
12490
- {
12491
- "kind": "class",
12492
- "description": "Toasts are non-disruptive messages that appear in the interface\nto provide quick, at-a-glance feedback on the outcome of an action.",
12493
- "name": "Toast",
12494
- "slots": [
12495
- {
12496
- "description": "Default slot used for the toast text/message.",
12426
+ "description": "Default slot used for the toast text/message.",
12497
12427
  "name": ""
12498
12428
  }
12499
12429
  ],
@@ -13248,6 +13178,81 @@
13248
13178
  ],
13249
13179
  "readme": "## Usage\n\nThis section includes guidelines for designers and developers about the usage of this component in different contexts.\n\n<div class=\"n-usage n-usage-do\">\n\n### Do\n\n- Use toggles when your intent is to turn something on or off instantly.\n- Use for any feature or option that can be turned on or off.\n- If a physical switch would work for the action, the toggle is probably the best component to use.\n- Use for making it possible to choose one or more options from a limited number of options.\n\n</div>\n<div class=\"n-usage n-usage-dont\">\n\n### Don’t\n\n- Toggles should never require users to click a button to apply or save the setting.\n- Avoid using when you have more than 10 options to choose from.\n- Don’t change the selection of another toggle when another one is clicked. Only exception is when a toggle is used to make a bulk selection of multiple items.\n\n</div>\n\n---\n\n## Content guidelines\n\nToggle labels should be clear, accurate and predictable. It should be possible for the user to understand what they are selecting:\n\n<div class=\"n-usage n-usage-do\">User settings</div>\n<div class=\"n-usage n-usage-dont\">Option 1</div>\n\nWhen writing toggle labels, always write them in sentence case, not title case. The first word should be capitalized and the rest lowercase (unless a proper noun):\n\n<div class=\"n-usage n-usage-do\">User settings</div>\n<div class=\"n-usage n-usage-dont\">User Settings</div>\n\nAvoid ending in punctuation if it’s a single sentence, word, or a fragment:\n\n<div class=\"n-usage n-usage-do\">Show dashboard</div>\n<div class=\"n-usage n-usage-dont\">Show dashboard.</div>\n\nDo not use commas or semicolons at the end of each line\n\n<div class=\"n-usage n-usage-do\">Patients</div>\n<div class=\"n-usage n-usage-dont\">Patients;</div>\n"
13250
13180
  },
13181
+ {
13182
+ "kind": "javascript-module",
13183
+ "path": "src/toast-group/ToastGroup.ts",
13184
+ "declarations": [
13185
+ {
13186
+ "kind": "class",
13187
+ "description": "Toast group is used to position and style a group of toasts, whilst ensuring they are announced by screen readers.",
13188
+ "name": "ToastGroup",
13189
+ "slots": [
13190
+ {
13191
+ "description": "Default slot in which to place toasts.",
13192
+ "name": ""
13193
+ }
13194
+ ],
13195
+ "members": [
13196
+ {
13197
+ "kind": "method",
13198
+ "name": "addToast",
13199
+ "parameters": [
13200
+ {
13201
+ "name": "text",
13202
+ "type": {
13203
+ "text": "string"
13204
+ },
13205
+ "description": "The text/message of the toast."
13206
+ },
13207
+ {
13208
+ "name": "options",
13209
+ "default": "{}",
13210
+ "type": {
13211
+ "text": "ToastOptions"
13212
+ },
13213
+ "description": "An optional object for configuring the toast's `variant` and `autoDismiss`."
13214
+ }
13215
+ ],
13216
+ "description": "Convenience method for creating and adding a toast to the group.",
13217
+ "return": {
13218
+ "type": {
13219
+ "text": "Toast"
13220
+ }
13221
+ }
13222
+ }
13223
+ ],
13224
+ "superclass": {
13225
+ "name": "LitElement",
13226
+ "package": "lit"
13227
+ },
13228
+ "status": "new",
13229
+ "category": "feedback",
13230
+ "displayName": null,
13231
+ "examples": [],
13232
+ "tagName": "nord-toast-group",
13233
+ "customElement": true
13234
+ }
13235
+ ],
13236
+ "exports": [
13237
+ {
13238
+ "kind": "js",
13239
+ "name": "default",
13240
+ "declaration": {
13241
+ "name": "ToastGroup",
13242
+ "module": "src/toast-group/ToastGroup.ts"
13243
+ }
13244
+ },
13245
+ {
13246
+ "kind": "custom-element-definition",
13247
+ "name": "nord-toast-group",
13248
+ "declaration": {
13249
+ "name": "ToastGroup",
13250
+ "module": "src/toast-group/ToastGroup.ts"
13251
+ }
13252
+ }
13253
+ ],
13254
+ "readme": "## Usage\n\nThis section includes guidelines for designers and developers about the usage of this component in different contexts.\n\n<div class=\"n-usage n-usage-do\">\n\n### Do\n\n- Use in combination with [Toast](/components/toast/) so that toasts get styled and announced to screen readers correctly.\n- Add as close to the bottom of the document as possible, ideally near the body closing tag, to maintain correct stacking order.\n\n</div>\n<div class=\"n-usage n-usage-dont\">\n\n### Don’t\n\n- Don’t use for grouping anything other than toast components\n\n</div>\n\n---\n\n## Content guidelines\n\nToast content should be clear, accurate and understandable by the user:\n\n<div class=\"n-usage n-usage-do\">Message sent</div>\n<div class=\"n-usage n-usage-dont\">Your message has been sent</div>\n\nWhen writing the toast content, use the {noun} + {verb} content formula:\n\n<div class=\"n-usage n-usage-do\">Patient created</div>\n<div class=\"n-usage n-usage-dont\">Your patient has been successfully updated</div>\n\nUse a maximum of 3 words when writing the toast content:\n\n<div class=\"n-usage n-usage-do\">Product updated</div>\n<div class=\"n-usage n-usage-dont\">Your product was updated just now</div>\n\nWhen writing the toast content, always write it in sentence case, not title case. The first word should be capitalized and the rest lowercase (unless a proper noun):\n\n<div class=\"n-usage n-usage-do\">Message sent</div>\n<div class=\"n-usage n-usage-dont\">Message Sent</div>\n\nAvoid unnecessary words and articles in the toast content, such as “the”, “an” or “a”:\n\n<div class=\"n-usage n-usage-do\">Changes saved</div>\n<div class=\"n-usage n-usage-dont\">The changes were saved</div>\n\nNever end in punctuation:\n\n<div class=\"n-usage n-usage-do\">Message sent</div>\n<div class=\"n-usage n-usage-dont\">Message sent.</div>\n\n---\n\n## Additional considerations\n\n- Toasts are complicated from an accessibility perspective. Whilst they are a convenient UI pattern for messaging, they present difficulties for keyboard or screen reader users. Therefore careful consideration should be given as to whether a toast is the correct choice.\n- If the message cannot be conveyed in 3 words or less, consider re-wording. If the message cannot be shortened any further, consider choosing a different pattern than toast.\n"
13255
+ },
13251
13256
  {
13252
13257
  "kind": "javascript-module",
13253
13258
  "path": "src/tooltip/Tooltip.ts",
@@ -13559,771 +13564,759 @@
13559
13564
  },
13560
13565
  {
13561
13566
  "kind": "javascript-module",
13562
- "path": "src/common/decorators/observe.ts",
13567
+ "path": "src/common/controllers/DirectionController.ts",
13563
13568
  "declarations": [
13564
13569
  {
13565
- "kind": "function",
13566
- "name": "observe",
13567
- "parameters": [
13570
+ "kind": "class",
13571
+ "description": "",
13572
+ "name": "DirectionController",
13573
+ "members": [
13568
13574
  {
13569
- "name": "propertyName",
13575
+ "kind": "field",
13576
+ "name": "hosts",
13577
+ "privacy": "private",
13578
+ "static": true,
13579
+ "default": "new Set<ReactiveControllerHost>()"
13580
+ },
13581
+ {
13582
+ "kind": "field",
13583
+ "name": "observer",
13570
13584
  "type": {
13571
- "text": "string"
13572
- }
13585
+ "text": "MutationObserver | undefined"
13586
+ },
13587
+ "privacy": "private",
13588
+ "static": true
13573
13589
  },
13574
13590
  {
13575
- "name": "lifecycle",
13576
- "default": "\"update\"",
13591
+ "kind": "field",
13592
+ "name": "dir",
13577
13593
  "type": {
13578
- "text": "ObserveLifecycle"
13594
+ "text": "WritingDirection"
13579
13595
  }
13596
+ },
13597
+ {
13598
+ "kind": "field",
13599
+ "name": "isLTR"
13600
+ },
13601
+ {
13602
+ "kind": "field",
13603
+ "name": "isRTL"
13604
+ },
13605
+ {
13606
+ "kind": "method",
13607
+ "name": "hostConnected"
13608
+ },
13609
+ {
13610
+ "kind": "method",
13611
+ "name": "hostDisconnected"
13612
+ },
13613
+ {
13614
+ "kind": "method",
13615
+ "name": "observe",
13616
+ "privacy": "private",
13617
+ "static": true
13580
13618
  }
13581
- ]
13619
+ ],
13620
+ "examples": []
13582
13621
  }
13583
13622
  ],
13584
13623
  "exports": [
13585
13624
  {
13586
13625
  "kind": "js",
13587
- "name": "observe",
13626
+ "name": "DirectionController",
13588
13627
  "declaration": {
13589
- "name": "observe",
13590
- "module": "src/common/decorators/observe.ts"
13628
+ "name": "DirectionController",
13629
+ "module": "src/common/controllers/DirectionController.ts"
13591
13630
  }
13592
13631
  }
13593
13632
  ]
13594
13633
  },
13595
13634
  {
13596
13635
  "kind": "javascript-module",
13597
- "path": "src/common/directives/cond.ts",
13636
+ "path": "src/common/controllers/EventController.ts",
13598
13637
  "declarations": [
13599
13638
  {
13600
- "kind": "function",
13601
- "name": "cond",
13602
- "return": {
13603
- "type": {
13604
- "text": "typeof value | typeof nothing"
13605
- }
13606
- },
13607
- "parameters": [
13608
- {
13609
- "name": "value",
13610
- "type": {
13611
- "text": "any"
13612
- }
13613
- }
13614
- ],
13615
- "description": "if value is truthy, return it, otherwise return nothing"
13616
- },
13617
- {
13618
- "kind": "function",
13619
- "name": "cond",
13620
- "return": {
13621
- "type": {
13622
- "text": "typeof trueCase | typeof nothing"
13623
- }
13624
- },
13625
- "parameters": [
13639
+ "kind": "class",
13640
+ "description": "",
13641
+ "name": "EventController",
13642
+ "members": [
13626
13643
  {
13627
- "name": "condition",
13644
+ "kind": "field",
13645
+ "name": "listeners",
13628
13646
  "type": {
13629
- "text": "unknown"
13630
- }
13647
+ "text": "Array<() => void>"
13648
+ },
13649
+ "privacy": "private",
13650
+ "default": "[]"
13631
13651
  },
13632
13652
  {
13633
- "name": "trueCase",
13634
- "type": {
13635
- "text": "any"
13636
- }
13637
- }
13638
- ],
13639
- "description": "if condition is truthy, return trueCase, otherwise return nothing"
13640
- },
13641
- {
13642
- "kind": "function",
13643
- "name": "cond",
13644
- "return": {
13645
- "type": {
13646
- "text": "typeof trueCase"
13647
- }
13648
- },
13649
- "parameters": [
13650
- {
13651
- "name": "condition",
13652
- "type": {
13653
- "text": "true"
13654
- }
13653
+ "kind": "method",
13654
+ "name": "hostDisconnected"
13655
13655
  },
13656
13656
  {
13657
- "name": "trueCase",
13658
- "type": {
13659
- "text": "any"
13660
- }
13661
- }
13662
- ],
13663
- "description": "condition is true, so always return trueCase"
13664
- },
13665
- {
13666
- "kind": "function",
13667
- "name": "cond",
13668
- "return": {
13669
- "type": {
13670
- "text": "typeof nothing"
13671
- }
13672
- },
13673
- "parameters": [
13657
+ "kind": "method",
13658
+ "name": "listen",
13659
+ "return": {
13660
+ "type": {
13661
+ "text": "void"
13662
+ }
13663
+ },
13664
+ "parameters": [
13665
+ {
13666
+ "name": "window",
13667
+ "type": {
13668
+ "text": "Window"
13669
+ }
13670
+ },
13671
+ {
13672
+ "name": "type",
13673
+ "type": {
13674
+ "text": "K"
13675
+ }
13676
+ },
13677
+ {
13678
+ "name": "listener",
13679
+ "type": {
13680
+ "text": "(this: Window, ev: WindowEventMap[K]) => any"
13681
+ }
13682
+ },
13683
+ {
13684
+ "name": "options",
13685
+ "optional": true,
13686
+ "type": {
13687
+ "text": "boolean | AddEventListenerOptions"
13688
+ }
13689
+ }
13690
+ ]
13691
+ },
13674
13692
  {
13675
- "name": "condition",
13676
- "type": {
13677
- "text": "false"
13678
- }
13693
+ "kind": "method",
13694
+ "name": "listen",
13695
+ "return": {
13696
+ "type": {
13697
+ "text": "void"
13698
+ }
13699
+ },
13700
+ "parameters": [
13701
+ {
13702
+ "name": "document",
13703
+ "type": {
13704
+ "text": "Document"
13705
+ }
13706
+ },
13707
+ {
13708
+ "name": "type",
13709
+ "type": {
13710
+ "text": "K"
13711
+ }
13712
+ },
13713
+ {
13714
+ "name": "listener",
13715
+ "type": {
13716
+ "text": "(this: Document, ev: DocumentEventMap[K]) => any"
13717
+ }
13718
+ },
13719
+ {
13720
+ "name": "options",
13721
+ "optional": true,
13722
+ "type": {
13723
+ "text": "boolean | AddEventListenerOptions"
13724
+ }
13725
+ }
13726
+ ]
13679
13727
  },
13680
13728
  {
13681
- "name": "trueCase",
13682
- "type": {
13683
- "text": "any"
13684
- }
13685
- }
13686
- ],
13687
- "description": "condition is false, to will always return nothing"
13688
- },
13689
- {
13690
- "kind": "function",
13691
- "name": "cond",
13692
- "return": {
13693
- "type": {
13694
- "text": "typeof trueCase | typeof falseCase"
13695
- }
13696
- },
13697
- "parameters": [
13729
+ "kind": "method",
13730
+ "name": "listen",
13731
+ "return": {
13732
+ "type": {
13733
+ "text": "void"
13734
+ }
13735
+ },
13736
+ "parameters": [
13737
+ {
13738
+ "name": "element",
13739
+ "type": {
13740
+ "text": "HTMLElement"
13741
+ }
13742
+ },
13743
+ {
13744
+ "name": "type",
13745
+ "type": {
13746
+ "text": "K"
13747
+ }
13748
+ },
13749
+ {
13750
+ "name": "listener",
13751
+ "type": {
13752
+ "text": "(this: HTMLElement, ev: HTMLElementEventMap[K]) => any"
13753
+ }
13754
+ },
13755
+ {
13756
+ "name": "options",
13757
+ "optional": true,
13758
+ "type": {
13759
+ "text": "boolean | AddEventListenerOptions"
13760
+ }
13761
+ }
13762
+ ]
13763
+ },
13698
13764
  {
13699
- "name": "condition",
13700
- "type": {
13701
- "text": "unknown"
13702
- }
13765
+ "kind": "method",
13766
+ "name": "listen",
13767
+ "return": {
13768
+ "type": {
13769
+ "text": "void"
13770
+ }
13771
+ },
13772
+ "parameters": [
13773
+ {
13774
+ "name": "element",
13775
+ "type": {
13776
+ "text": "ShadowRoot"
13777
+ }
13778
+ },
13779
+ {
13780
+ "name": "type",
13781
+ "type": {
13782
+ "text": "K"
13783
+ }
13784
+ },
13785
+ {
13786
+ "name": "listener",
13787
+ "type": {
13788
+ "text": "(this: ShadowRoot, ev: ShadowRootEventMap[K]) => any"
13789
+ }
13790
+ },
13791
+ {
13792
+ "name": "options",
13793
+ "optional": true,
13794
+ "type": {
13795
+ "text": "boolean | AddEventListenerOptions"
13796
+ }
13797
+ }
13798
+ ]
13703
13799
  },
13704
13800
  {
13705
- "name": "trueCase",
13706
- "type": {
13707
- "text": "any"
13708
- }
13801
+ "kind": "method",
13802
+ "name": "listen",
13803
+ "return": {
13804
+ "type": {
13805
+ "text": "void"
13806
+ }
13807
+ },
13808
+ "parameters": [
13809
+ {
13810
+ "name": "element",
13811
+ "type": {
13812
+ "text": "MediaQueryList"
13813
+ }
13814
+ },
13815
+ {
13816
+ "name": "type",
13817
+ "type": {
13818
+ "text": "K"
13819
+ }
13820
+ },
13821
+ {
13822
+ "name": "listener",
13823
+ "type": {
13824
+ "text": "(this: ShadowRoot, ev: MediaQueryListEventMap[K]) => any"
13825
+ }
13826
+ },
13827
+ {
13828
+ "name": "options",
13829
+ "optional": true,
13830
+ "type": {
13831
+ "text": "boolean | AddEventListenerOptions"
13832
+ }
13833
+ }
13834
+ ]
13709
13835
  },
13710
13836
  {
13711
- "name": "falseCase",
13712
- "type": {
13713
- "text": "any"
13714
- }
13837
+ "kind": "method",
13838
+ "name": "listen",
13839
+ "parameters": [
13840
+ {
13841
+ "name": "element",
13842
+ "type": {
13843
+ "text": "Window | Document | HTMLElement | ShadowRoot | MediaQueryList"
13844
+ }
13845
+ },
13846
+ {
13847
+ "name": "type",
13848
+ "type": {
13849
+ "text": "string"
13850
+ }
13851
+ },
13852
+ {
13853
+ "name": "listener",
13854
+ "type": {
13855
+ "text": "(ev: any) => any"
13856
+ }
13857
+ },
13858
+ {
13859
+ "name": "options",
13860
+ "optional": true,
13861
+ "type": {
13862
+ "text": "boolean | AddEventListenerOptions"
13863
+ }
13864
+ }
13865
+ ]
13715
13866
  }
13716
13867
  ],
13717
- "description": "if condition is truthy, return trueCase, otherwise return falseCase"
13718
- },
13868
+ "examples": []
13869
+ }
13870
+ ],
13871
+ "exports": [
13719
13872
  {
13720
- "kind": "function",
13721
- "name": "cond",
13722
- "return": {
13723
- "type": {
13724
- "text": "typeof trueCase"
13725
- }
13726
- },
13727
- "parameters": [
13873
+ "kind": "js",
13874
+ "name": "EventController",
13875
+ "declaration": {
13876
+ "name": "EventController",
13877
+ "module": "src/common/controllers/EventController.ts"
13878
+ }
13879
+ }
13880
+ ]
13881
+ },
13882
+ {
13883
+ "kind": "javascript-module",
13884
+ "path": "src/common/controllers/FocusTrapController.ts",
13885
+ "declarations": [
13886
+ {
13887
+ "kind": "class",
13888
+ "description": "",
13889
+ "name": "FocusTrapController",
13890
+ "members": [
13728
13891
  {
13729
- "name": "condition",
13892
+ "kind": "field",
13893
+ "name": "lastScrollY",
13730
13894
  "type": {
13731
- "text": "true"
13732
- }
13895
+ "text": "number"
13896
+ },
13897
+ "privacy": "private",
13898
+ "default": "0"
13733
13899
  },
13734
13900
  {
13735
- "name": "trueCase",
13901
+ "kind": "field",
13902
+ "name": "lastFocused",
13736
13903
  "type": {
13737
- "text": "any"
13738
- }
13904
+ "text": "HTMLElement | undefined"
13905
+ },
13906
+ "privacy": "private"
13739
13907
  },
13740
13908
  {
13741
- "name": "falseCase",
13742
- "type": {
13743
- "text": "any"
13744
- }
13745
- }
13746
- ],
13747
- "description": "condition is true, so always return trueCase"
13748
- },
13749
- {
13750
- "kind": "function",
13751
- "name": "cond",
13752
- "return": {
13753
- "type": {
13754
- "text": "typeof falseCase"
13755
- }
13756
- },
13757
- "parameters": [
13909
+ "kind": "method",
13910
+ "name": "hostDisconnected"
13911
+ },
13758
13912
  {
13759
- "name": "condition",
13760
- "type": {
13761
- "text": "false"
13762
- }
13913
+ "kind": "method",
13914
+ "name": "trap"
13763
13915
  },
13764
13916
  {
13765
- "name": "trueCase",
13766
- "type": {
13767
- "text": "any"
13768
- }
13917
+ "kind": "method",
13918
+ "name": "release"
13769
13919
  },
13770
13920
  {
13771
- "name": "falseCase",
13772
- "type": {
13773
- "text": "any"
13774
- }
13921
+ "kind": "field",
13922
+ "name": "handleFocusOut",
13923
+ "privacy": "private"
13924
+ },
13925
+ {
13926
+ "kind": "field",
13927
+ "name": "handleFocusIn",
13928
+ "privacy": "private"
13929
+ },
13930
+ {
13931
+ "kind": "method",
13932
+ "name": "recaptureFocus",
13933
+ "privacy": "private"
13934
+ },
13935
+ {
13936
+ "kind": "field",
13937
+ "name": "restoreScroll",
13938
+ "privacy": "private"
13775
13939
  }
13776
13940
  ],
13777
- "description": "condition is false, so always return falseCase"
13778
- },
13941
+ "examples": []
13942
+ }
13943
+ ],
13944
+ "exports": [
13779
13945
  {
13780
- "kind": "function",
13781
- "name": "cond",
13782
- "parameters": [
13946
+ "kind": "js",
13947
+ "name": "FocusTrapController",
13948
+ "declaration": {
13949
+ "name": "FocusTrapController",
13950
+ "module": "src/common/controllers/FocusTrapController.ts"
13951
+ }
13952
+ }
13953
+ ]
13954
+ },
13955
+ {
13956
+ "kind": "javascript-module",
13957
+ "path": "src/common/controllers/FormDataController.ts",
13958
+ "declarations": [
13959
+ {
13960
+ "kind": "class",
13961
+ "description": "",
13962
+ "name": "FormDataController",
13963
+ "members": [
13783
13964
  {
13784
- "name": "condition",
13965
+ "kind": "field",
13966
+ "name": "events",
13785
13967
  "type": {
13786
- "text": "unknown"
13787
- }
13968
+ "text": "EventController"
13969
+ },
13970
+ "privacy": "private",
13971
+ "default": "new EventController(host)"
13788
13972
  },
13789
13973
  {
13790
- "name": "trueCase",
13791
- "default": "condition",
13792
- "type": {
13793
- "text": "any"
13794
- }
13974
+ "kind": "method",
13975
+ "name": "hostConnected"
13795
13976
  },
13796
13977
  {
13797
- "name": "falseCase",
13798
- "default": "nothing",
13799
- "type": {
13800
- "text": "any"
13801
- }
13978
+ "kind": "field",
13979
+ "name": "handleFormData",
13980
+ "privacy": "private"
13802
13981
  }
13803
- ]
13982
+ ],
13983
+ "examples": []
13804
13984
  }
13805
13985
  ],
13806
13986
  "exports": [
13807
13987
  {
13808
13988
  "kind": "js",
13809
- "name": "cond",
13810
- "declaration": {
13811
- "name": "cond",
13812
- "module": "src/common/directives/cond.ts"
13813
- }
13814
- },
13815
- {
13816
- "kind": "js",
13817
- "name": "cond",
13818
- "declaration": {
13819
- "name": "cond",
13820
- "module": "src/common/directives/cond.ts"
13821
- }
13822
- },
13823
- {
13824
- "kind": "js",
13825
- "name": "cond",
13826
- "declaration": {
13827
- "name": "cond",
13828
- "module": "src/common/directives/cond.ts"
13829
- }
13830
- },
13831
- {
13832
- "kind": "js",
13833
- "name": "cond",
13834
- "declaration": {
13835
- "name": "cond",
13836
- "module": "src/common/directives/cond.ts"
13837
- }
13838
- },
13839
- {
13840
- "kind": "js",
13841
- "name": "cond",
13842
- "declaration": {
13843
- "name": "cond",
13844
- "module": "src/common/directives/cond.ts"
13845
- }
13846
- },
13847
- {
13848
- "kind": "js",
13849
- "name": "cond",
13850
- "declaration": {
13851
- "name": "cond",
13852
- "module": "src/common/directives/cond.ts"
13853
- }
13854
- },
13855
- {
13856
- "kind": "js",
13857
- "name": "cond",
13858
- "declaration": {
13859
- "name": "cond",
13860
- "module": "src/common/directives/cond.ts"
13861
- }
13862
- },
13863
- {
13864
- "kind": "js",
13865
- "name": "cond",
13989
+ "name": "FormDataController",
13866
13990
  "declaration": {
13867
- "name": "cond",
13868
- "module": "src/common/directives/cond.ts"
13991
+ "name": "FormDataController",
13992
+ "module": "src/common/controllers/FormDataController.ts"
13869
13993
  }
13870
13994
  }
13871
13995
  ]
13872
13996
  },
13873
13997
  {
13874
13998
  "kind": "javascript-module",
13875
- "path": "src/common/directives/wrapIf.ts",
13999
+ "path": "src/common/controllers/LightDismissController.ts",
13876
14000
  "declarations": [
13877
14001
  {
13878
- "kind": "function",
13879
- "name": "wrapIf",
13880
- "return": {
13881
- "type": {
13882
- "text": "TInner"
13883
- }
13884
- },
13885
- "parameters": [
14002
+ "kind": "class",
14003
+ "description": "",
14004
+ "name": "LightDismissController",
14005
+ "members": [
13886
14006
  {
13887
- "name": "condition",
14007
+ "kind": "field",
14008
+ "name": "shortcut",
13888
14009
  "type": {
13889
- "text": "false"
13890
- }
14010
+ "text": "ShortcutController"
14011
+ },
14012
+ "privacy": "private",
14013
+ "default": "new ShortcutController(host, { Escape: this.handleEsc })"
13891
14014
  },
13892
14015
  {
13893
- "name": "inner",
14016
+ "kind": "field",
14017
+ "name": "events",
13894
14018
  "type": {
13895
- "text": "() => TInner"
13896
- }
14019
+ "text": "EventController"
14020
+ },
14021
+ "privacy": "private",
14022
+ "default": "new EventController(host)"
13897
14023
  },
13898
14024
  {
13899
- "name": "wrapper",
13900
- "type": {
13901
- "text": "(inner: TInner) => TWrapper"
13902
- }
13903
- }
13904
- ]
13905
- },
13906
- {
13907
- "kind": "function",
13908
- "name": "wrapIf",
13909
- "return": {
13910
- "type": {
13911
- "text": "TWrapper"
13912
- }
13913
- },
13914
- "parameters": [
13915
- {
13916
- "name": "condition",
13917
- "type": {
13918
- "text": "true"
13919
- }
14025
+ "kind": "method",
14026
+ "name": "hostConnected"
13920
14027
  },
13921
14028
  {
13922
- "name": "inner",
13923
- "type": {
13924
- "text": "() => TInner"
13925
- }
14029
+ "kind": "field",
14030
+ "name": "handleEsc",
14031
+ "privacy": "private"
13926
14032
  },
13927
14033
  {
13928
- "name": "wrapper",
13929
- "type": {
13930
- "text": "(inner: TInner) => TWrapper"
13931
- }
14034
+ "kind": "field",
14035
+ "name": "handleClickOut",
14036
+ "privacy": "private"
13932
14037
  }
13933
- ]
13934
- },
14038
+ ],
14039
+ "examples": []
14040
+ }
14041
+ ],
14042
+ "exports": [
13935
14043
  {
13936
- "kind": "function",
13937
- "name": "wrapIf",
13938
- "return": {
13939
- "type": {
13940
- "text": "TInner | TWrapper"
13941
- }
13942
- },
13943
- "parameters": [
13944
- {
13945
- "name": "condition",
13946
- "type": {
13947
- "text": "unknown"
13948
- }
13949
- },
13950
- {
13951
- "name": "inner",
13952
- "type": {
13953
- "text": "() => TInner"
13954
- }
13955
- },
13956
- {
13957
- "name": "wrapper",
13958
- "type": {
13959
- "text": "(inner: TInner) => TWrapper"
13960
- }
13961
- }
13962
- ]
13963
- },
14044
+ "kind": "js",
14045
+ "name": "LightDismissController",
14046
+ "declaration": {
14047
+ "name": "LightDismissController",
14048
+ "module": "src/common/controllers/LightDismissController.ts"
14049
+ }
14050
+ }
14051
+ ]
14052
+ },
14053
+ {
14054
+ "kind": "javascript-module",
14055
+ "path": "src/common/controllers/LightDomController.ts",
14056
+ "declarations": [
13964
14057
  {
13965
- "kind": "function",
13966
- "name": "wrapIf",
13967
- "parameters": [
14058
+ "kind": "class",
14059
+ "description": "",
14060
+ "name": "LightDomController",
14061
+ "members": [
13968
14062
  {
13969
- "name": "condition",
14063
+ "kind": "field",
14064
+ "name": "container",
13970
14065
  "type": {
13971
- "text": "any"
13972
- }
14066
+ "text": "HTMLElement"
14067
+ },
14068
+ "privacy": "private"
13973
14069
  },
13974
14070
  {
13975
- "name": "inner",
13976
- "type": {
13977
- "text": "() => TInner"
13978
- }
14071
+ "kind": "method",
14072
+ "name": "hostUpdated"
13979
14073
  },
13980
14074
  {
13981
- "name": "wrapper",
13982
- "type": {
13983
- "text": "(innards: TInner) => TWrapper"
13984
- }
14075
+ "kind": "method",
14076
+ "name": "hostDisconnected"
13985
14077
  }
13986
14078
  ],
13987
- "return": {
13988
- "type": {
13989
- "text": ""
13990
- }
13991
- }
14079
+ "examples": []
13992
14080
  }
13993
14081
  ],
13994
14082
  "exports": [
13995
14083
  {
13996
14084
  "kind": "js",
13997
- "name": "wrapIf",
13998
- "declaration": {
13999
- "name": "wrapIf",
14000
- "module": "src/common/directives/wrapIf.ts"
14001
- }
14002
- },
14003
- {
14004
- "kind": "js",
14005
- "name": "wrapIf",
14006
- "declaration": {
14007
- "name": "wrapIf",
14008
- "module": "src/common/directives/wrapIf.ts"
14009
- }
14010
- },
14011
- {
14012
- "kind": "js",
14013
- "name": "wrapIf",
14014
- "declaration": {
14015
- "name": "wrapIf",
14016
- "module": "src/common/directives/wrapIf.ts"
14017
- }
14018
- },
14019
- {
14020
- "kind": "js",
14021
- "name": "wrapIf",
14085
+ "name": "LightDomController",
14022
14086
  "declaration": {
14023
- "name": "wrapIf",
14024
- "module": "src/common/directives/wrapIf.ts"
14087
+ "name": "LightDomController",
14088
+ "module": "src/common/controllers/LightDomController.ts"
14025
14089
  }
14026
14090
  }
14027
14091
  ]
14028
14092
  },
14029
14093
  {
14030
14094
  "kind": "javascript-module",
14031
- "path": "src/common/controllers/DirectionController.ts",
14095
+ "path": "src/common/controllers/LightSlotController.ts",
14032
14096
  "declarations": [
14033
14097
  {
14034
14098
  "kind": "class",
14035
- "description": "",
14036
- "name": "DirectionController",
14099
+ "description": "Handles cases where a component needs to render to light DOM,\nand potentially sync component properties to user-supplied content.",
14100
+ "name": "LightSlotController",
14037
14101
  "members": [
14038
14102
  {
14039
14103
  "kind": "field",
14040
- "name": "hosts",
14041
- "privacy": "private",
14042
- "static": true,
14043
- "default": "new Set<ReactiveControllerHost>()"
14104
+ "name": "renderHook",
14105
+ "type": {
14106
+ "text": "Comment"
14107
+ },
14108
+ "privacy": "private"
14044
14109
  },
14045
14110
  {
14046
14111
  "kind": "field",
14047
- "name": "observer",
14112
+ "name": "lightDom",
14048
14113
  "type": {
14049
- "text": "MutationObserver | undefined"
14114
+ "text": "LightDomController"
14050
14115
  },
14051
14116
  "privacy": "private",
14052
- "static": true
14117
+ "default": "new LightDomController(host, {\n render: () => (this.hasContent ? nothing : this.options.render()),\n renderOptions: { renderBefore: this.renderHook },\n })"
14118
+ },
14119
+ {
14120
+ "kind": "method",
14121
+ "name": "hostConnected",
14122
+ "inheritedFrom": {
14123
+ "name": "SlotController",
14124
+ "module": "src/common/controllers/SlotController.ts"
14125
+ }
14126
+ },
14127
+ {
14128
+ "kind": "method",
14129
+ "name": "hostDisconnected"
14053
14130
  },
14054
14131
  {
14055
14132
  "kind": "field",
14056
- "name": "dir",
14057
- "type": {
14058
- "text": "WritingDirection"
14133
+ "name": "onChange",
14134
+ "privacy": "protected",
14135
+ "parameters": [
14136
+ {
14137
+ "name": "_e",
14138
+ "type": {
14139
+ "text": "Event"
14140
+ }
14141
+ }
14142
+ ],
14143
+ "inheritedFrom": {
14144
+ "name": "SlotController",
14145
+ "module": "src/common/controllers/SlotController.ts"
14059
14146
  }
14060
14147
  },
14148
+ {
14149
+ "kind": "method",
14150
+ "name": "syncLightDom",
14151
+ "privacy": "private"
14152
+ },
14061
14153
  {
14062
14154
  "kind": "field",
14063
- "name": "isLTR"
14155
+ "name": "events",
14156
+ "type": {
14157
+ "text": "EventController"
14158
+ },
14159
+ "privacy": "private",
14160
+ "default": "new EventController(host)",
14161
+ "inheritedFrom": {
14162
+ "name": "SlotController",
14163
+ "module": "src/common/controllers/SlotController.ts"
14164
+ }
14064
14165
  },
14065
14166
  {
14066
14167
  "kind": "field",
14067
- "name": "isRTL"
14168
+ "name": "hasContent",
14169
+ "inheritedFrom": {
14170
+ "name": "SlotController",
14171
+ "module": "src/common/controllers/SlotController.ts"
14172
+ }
14068
14173
  },
14069
14174
  {
14070
- "kind": "method",
14071
- "name": "hostConnected"
14175
+ "kind": "field",
14176
+ "name": "isEmpty",
14177
+ "inheritedFrom": {
14178
+ "name": "SlotController",
14179
+ "module": "src/common/controllers/SlotController.ts"
14180
+ }
14072
14181
  },
14073
14182
  {
14074
- "kind": "method",
14075
- "name": "hostDisconnected"
14183
+ "kind": "field",
14184
+ "name": "content",
14185
+ "inheritedFrom": {
14186
+ "name": "SlotController",
14187
+ "module": "src/common/controllers/SlotController.ts"
14188
+ }
14076
14189
  },
14077
14190
  {
14078
- "kind": "method",
14079
- "name": "observe",
14191
+ "kind": "field",
14192
+ "name": "handleSlotChange",
14080
14193
  "privacy": "private",
14081
- "static": true
14194
+ "inheritedFrom": {
14195
+ "name": "SlotController",
14196
+ "module": "src/common/controllers/SlotController.ts"
14197
+ }
14082
14198
  }
14083
14199
  ],
14200
+ "superclass": {
14201
+ "name": "SlotController",
14202
+ "module": "/src/common/controllers/SlotController.js"
14203
+ },
14204
+ "status": null,
14205
+ "category": null,
14206
+ "displayName": null,
14084
14207
  "examples": []
14085
14208
  }
14086
14209
  ],
14087
14210
  "exports": [
14088
14211
  {
14089
14212
  "kind": "js",
14090
- "name": "DirectionController",
14213
+ "name": "LightSlotController",
14091
14214
  "declaration": {
14092
- "name": "DirectionController",
14093
- "module": "src/common/controllers/DirectionController.ts"
14215
+ "name": "LightSlotController",
14216
+ "module": "src/common/controllers/LightSlotController.ts"
14094
14217
  }
14095
14218
  }
14096
14219
  ]
14097
14220
  },
14098
14221
  {
14099
14222
  "kind": "javascript-module",
14100
- "path": "src/common/controllers/EventController.ts",
14223
+ "path": "src/common/controllers/PortalController.ts",
14101
14224
  "declarations": [
14102
14225
  {
14103
14226
  "kind": "class",
14104
14227
  "description": "",
14105
- "name": "EventController",
14228
+ "name": "PortalController",
14106
14229
  "members": [
14107
14230
  {
14108
14231
  "kind": "field",
14109
- "name": "listeners",
14232
+ "name": "renderHook",
14110
14233
  "type": {
14111
- "text": "Array<() => void>"
14234
+ "text": "Comment"
14112
14235
  },
14113
- "privacy": "private",
14114
- "default": "[]"
14236
+ "privacy": "private"
14115
14237
  },
14116
14238
  {
14117
- "kind": "method",
14118
- "name": "hostDisconnected"
14239
+ "kind": "field",
14240
+ "name": "lightDom",
14241
+ "type": {
14242
+ "text": "LightDomController"
14243
+ },
14244
+ "privacy": "private",
14245
+ "default": "new LightDomController(host, {\n render: () => this.options.render.call(host),\n container: options.outlet,\n renderOptions: {\n renderBefore: this.renderHook,\n host,\n },\n })"
14119
14246
  },
14120
14247
  {
14121
14248
  "kind": "method",
14122
- "name": "listen",
14123
- "return": {
14124
- "type": {
14125
- "text": "void"
14126
- }
14127
- },
14128
- "parameters": [
14129
- {
14130
- "name": "window",
14131
- "type": {
14132
- "text": "Window"
14133
- }
14134
- },
14135
- {
14136
- "name": "type",
14137
- "type": {
14138
- "text": "K"
14139
- }
14140
- },
14141
- {
14142
- "name": "listener",
14143
- "type": {
14144
- "text": "(this: Window, ev: WindowEventMap[K]) => any"
14145
- }
14146
- },
14147
- {
14148
- "name": "options",
14149
- "optional": true,
14150
- "type": {
14151
- "text": "boolean | AddEventListenerOptions"
14152
- }
14153
- }
14154
- ]
14249
+ "name": "hostConnected"
14155
14250
  },
14156
14251
  {
14157
14252
  "kind": "method",
14158
- "name": "listen",
14159
- "return": {
14160
- "type": {
14161
- "text": "void"
14162
- }
14163
- },
14164
- "parameters": [
14165
- {
14166
- "name": "document",
14167
- "type": {
14168
- "text": "Document"
14169
- }
14170
- },
14171
- {
14172
- "name": "type",
14173
- "type": {
14174
- "text": "K"
14175
- }
14176
- },
14177
- {
14178
- "name": "listener",
14179
- "type": {
14180
- "text": "(this: Document, ev: DocumentEventMap[K]) => any"
14181
- }
14182
- },
14183
- {
14184
- "name": "options",
14185
- "optional": true,
14186
- "type": {
14187
- "text": "boolean | AddEventListenerOptions"
14188
- }
14189
- }
14190
- ]
14253
+ "name": "hostUpdated"
14191
14254
  },
14192
14255
  {
14193
14256
  "kind": "method",
14194
- "name": "listen",
14195
- "return": {
14196
- "type": {
14197
- "text": "void"
14198
- }
14199
- },
14200
- "parameters": [
14201
- {
14202
- "name": "element",
14203
- "type": {
14204
- "text": "HTMLElement"
14205
- }
14206
- },
14207
- {
14208
- "name": "type",
14209
- "type": {
14210
- "text": "K"
14211
- }
14212
- },
14213
- {
14214
- "name": "listener",
14215
- "type": {
14216
- "text": "(this: HTMLElement, ev: HTMLElementEventMap[K]) => any"
14217
- }
14218
- },
14219
- {
14220
- "name": "options",
14221
- "optional": true,
14222
- "type": {
14223
- "text": "boolean | AddEventListenerOptions"
14224
- }
14225
- }
14226
- ]
14257
+ "name": "hostDisconnected"
14258
+ }
14259
+ ],
14260
+ "examples": []
14261
+ }
14262
+ ],
14263
+ "exports": [
14264
+ {
14265
+ "kind": "js",
14266
+ "name": "PortalController",
14267
+ "declaration": {
14268
+ "name": "PortalController",
14269
+ "module": "src/common/controllers/PortalController.ts"
14270
+ }
14271
+ }
14272
+ ]
14273
+ },
14274
+ {
14275
+ "kind": "javascript-module",
14276
+ "path": "src/common/controllers/ScrollbarController.ts",
14277
+ "declarations": [
14278
+ {
14279
+ "kind": "class",
14280
+ "description": "",
14281
+ "name": "ScrollbarController",
14282
+ "members": [
14283
+ {
14284
+ "kind": "field",
14285
+ "name": "resets",
14286
+ "privacy": "private",
14287
+ "default": "new Set<() => void>()"
14227
14288
  },
14228
14289
  {
14229
14290
  "kind": "method",
14230
- "name": "listen",
14231
- "return": {
14232
- "type": {
14233
- "text": "void"
14234
- }
14235
- },
14236
- "parameters": [
14237
- {
14238
- "name": "element",
14239
- "type": {
14240
- "text": "ShadowRoot"
14241
- }
14242
- },
14243
- {
14244
- "name": "type",
14245
- "type": {
14246
- "text": "K"
14247
- }
14248
- },
14249
- {
14250
- "name": "listener",
14251
- "type": {
14252
- "text": "(this: ShadowRoot, ev: ShadowRootEventMap[K]) => any"
14253
- }
14254
- },
14255
- {
14256
- "name": "options",
14257
- "optional": true,
14258
- "type": {
14259
- "text": "boolean | AddEventListenerOptions"
14260
- }
14261
- }
14262
- ]
14291
+ "name": "hostDisconnected"
14292
+ },
14293
+ {
14294
+ "kind": "field",
14295
+ "name": "width"
14263
14296
  },
14264
14297
  {
14265
14298
  "kind": "method",
14266
- "name": "listen",
14267
- "return": {
14268
- "type": {
14269
- "text": "void"
14270
- }
14271
- },
14272
- "parameters": [
14273
- {
14274
- "name": "element",
14275
- "type": {
14276
- "text": "MediaQueryList"
14277
- }
14278
- },
14279
- {
14280
- "name": "type",
14281
- "type": {
14282
- "text": "K"
14283
- }
14284
- },
14285
- {
14286
- "name": "listener",
14287
- "type": {
14288
- "text": "(this: ShadowRoot, ev: MediaQueryListEventMap[K]) => any"
14289
- }
14290
- },
14291
- {
14292
- "name": "options",
14293
- "optional": true,
14294
- "type": {
14295
- "text": "boolean | AddEventListenerOptions"
14296
- }
14297
- }
14298
- ]
14299
+ "name": "hide"
14299
14300
  },
14300
14301
  {
14301
14302
  "kind": "method",
14302
- "name": "listen",
14303
+ "name": "restore"
14304
+ },
14305
+ {
14306
+ "kind": "method",
14307
+ "name": "setStyle",
14308
+ "privacy": "private",
14303
14309
  "parameters": [
14304
14310
  {
14305
- "name": "element",
14306
- "type": {
14307
- "text": "Window | Document | HTMLElement | ShadowRoot | MediaQueryList"
14308
- }
14309
- },
14310
- {
14311
- "name": "type",
14311
+ "name": "property",
14312
14312
  "type": {
14313
14313
  "text": "string"
14314
14314
  }
14315
14315
  },
14316
14316
  {
14317
- "name": "listener",
14318
- "type": {
14319
- "text": "(ev: any) => any"
14320
- }
14321
- },
14322
- {
14323
- "name": "options",
14324
- "optional": true,
14317
+ "name": "value",
14325
14318
  "type": {
14326
- "text": "boolean | AddEventListenerOptions"
14319
+ "text": "string"
14327
14320
  }
14328
14321
  }
14329
14322
  ]
@@ -14335,71 +14328,54 @@
14335
14328
  "exports": [
14336
14329
  {
14337
14330
  "kind": "js",
14338
- "name": "EventController",
14331
+ "name": "ScrollbarController",
14339
14332
  "declaration": {
14340
- "name": "EventController",
14341
- "module": "src/common/controllers/EventController.ts"
14333
+ "name": "ScrollbarController",
14334
+ "module": "src/common/controllers/ScrollbarController.ts"
14342
14335
  }
14343
14336
  }
14344
14337
  ]
14345
14338
  },
14346
14339
  {
14347
14340
  "kind": "javascript-module",
14348
- "path": "src/common/controllers/FocusTrapController.ts",
14341
+ "path": "src/common/controllers/ShortcutController.ts",
14349
14342
  "declarations": [
14350
14343
  {
14351
14344
  "kind": "class",
14352
14345
  "description": "",
14353
- "name": "FocusTrapController",
14346
+ "name": "ShortcutController",
14354
14347
  "members": [
14355
14348
  {
14356
14349
  "kind": "field",
14357
- "name": "lastScrollY",
14358
- "type": {
14359
- "text": "number"
14360
- },
14361
- "privacy": "private",
14362
- "default": "0"
14363
- },
14364
- {
14365
- "kind": "field",
14366
- "name": "lastFocused",
14350
+ "name": "unregister",
14367
14351
  "type": {
14368
- "text": "HTMLElement | undefined"
14352
+ "text": "ReturnType<typeof tinykeys> | undefined"
14369
14353
  },
14370
14354
  "privacy": "private"
14371
14355
  },
14372
14356
  {
14373
14357
  "kind": "method",
14374
- "name": "hostDisconnected"
14358
+ "name": "hostConnected"
14375
14359
  },
14376
14360
  {
14377
14361
  "kind": "method",
14378
- "name": "trap"
14362
+ "name": "hostDisconnected"
14379
14363
  },
14380
14364
  {
14381
14365
  "kind": "method",
14382
- "name": "release"
14383
- },
14384
- {
14385
- "kind": "field",
14386
- "name": "handleFocusOut",
14387
- "privacy": "private"
14388
- },
14389
- {
14390
- "kind": "field",
14391
- "name": "handleFocusIn",
14392
- "privacy": "private"
14366
+ "name": "unbind"
14393
14367
  },
14394
14368
  {
14395
14369
  "kind": "method",
14396
- "name": "recaptureFocus",
14397
- "privacy": "private"
14398
- },
14399
- {
14400
- "kind": "field",
14401
- "name": "restoreScroll",
14402
- "privacy": "private"
14370
+ "name": "bind",
14371
+ "parameters": [
14372
+ {
14373
+ "name": "shortcuts",
14374
+ "type": {
14375
+ "text": "KeyBindingMap"
14376
+ }
14377
+ }
14378
+ ]
14403
14379
  }
14404
14380
  ],
14405
14381
  "examples": []
@@ -14408,22 +14384,30 @@
14408
14384
  "exports": [
14409
14385
  {
14410
14386
  "kind": "js",
14411
- "name": "FocusTrapController",
14387
+ "name": "ShortcutController",
14412
14388
  "declaration": {
14413
- "name": "FocusTrapController",
14414
- "module": "src/common/controllers/FocusTrapController.ts"
14389
+ "name": "ShortcutController",
14390
+ "module": "src/common/controllers/ShortcutController.ts"
14391
+ }
14392
+ },
14393
+ {
14394
+ "kind": "js",
14395
+ "name": "ShortcutMap",
14396
+ "declaration": {
14397
+ "name": "KeyBindingMap",
14398
+ "module": "src/common/controllers/ShortcutController.ts"
14415
14399
  }
14416
14400
  }
14417
14401
  ]
14418
14402
  },
14419
14403
  {
14420
14404
  "kind": "javascript-module",
14421
- "path": "src/common/controllers/FormDataController.ts",
14405
+ "path": "src/common/controllers/SlotController.ts",
14422
14406
  "declarations": [
14423
14407
  {
14424
14408
  "kind": "class",
14425
14409
  "description": "",
14426
- "name": "FormDataController",
14410
+ "name": "SlotController",
14427
14411
  "members": [
14428
14412
  {
14429
14413
  "kind": "field",
@@ -14440,8 +14424,33 @@
14440
14424
  },
14441
14425
  {
14442
14426
  "kind": "field",
14443
- "name": "handleFormData",
14427
+ "name": "hasContent"
14428
+ },
14429
+ {
14430
+ "kind": "field",
14431
+ "name": "isEmpty"
14432
+ },
14433
+ {
14434
+ "kind": "field",
14435
+ "name": "content"
14436
+ },
14437
+ {
14438
+ "kind": "field",
14439
+ "name": "handleSlotChange",
14444
14440
  "privacy": "private"
14441
+ },
14442
+ {
14443
+ "kind": "method",
14444
+ "name": "onChange",
14445
+ "privacy": "protected",
14446
+ "parameters": [
14447
+ {
14448
+ "name": "_e",
14449
+ "type": {
14450
+ "text": "Event"
14451
+ }
14452
+ }
14453
+ ]
14445
14454
  }
14446
14455
  ],
14447
14456
  "examples": []
@@ -14450,610 +14459,606 @@
14450
14459
  "exports": [
14451
14460
  {
14452
14461
  "kind": "js",
14453
- "name": "FormDataController",
14462
+ "name": "SlotController",
14454
14463
  "declaration": {
14455
- "name": "FormDataController",
14456
- "module": "src/common/controllers/FormDataController.ts"
14464
+ "name": "SlotController",
14465
+ "module": "src/common/controllers/SlotController.ts"
14457
14466
  }
14458
14467
  }
14459
14468
  ]
14460
14469
  },
14461
14470
  {
14462
14471
  "kind": "javascript-module",
14463
- "path": "src/common/controllers/LightDismissController.ts",
14472
+ "path": "src/common/controllers/SwipeController.ts",
14464
14473
  "declarations": [
14465
14474
  {
14466
14475
  "kind": "class",
14467
14476
  "description": "",
14468
- "name": "LightDismissController",
14477
+ "name": "SwipeController",
14469
14478
  "members": [
14470
14479
  {
14471
14480
  "kind": "field",
14472
- "name": "shortcut",
14481
+ "name": "events",
14473
14482
  "type": {
14474
- "text": "ShortcutController"
14483
+ "text": "EventController"
14475
14484
  },
14476
14485
  "privacy": "private",
14477
- "default": "new ShortcutController(host, { Escape: this.handleEsc })"
14486
+ "default": "new EventController(host)"
14478
14487
  },
14479
14488
  {
14480
14489
  "kind": "field",
14481
- "name": "events",
14490
+ "name": "hadFirstUpdate",
14482
14491
  "type": {
14483
- "text": "EventController"
14492
+ "text": "boolean"
14484
14493
  },
14485
14494
  "privacy": "private",
14486
- "default": "new EventController(host)"
14495
+ "default": "false"
14496
+ },
14497
+ {
14498
+ "kind": "field",
14499
+ "name": "initialTouchX",
14500
+ "type": {
14501
+ "text": "number"
14502
+ },
14503
+ "privacy": "private",
14504
+ "default": "0"
14505
+ },
14506
+ {
14507
+ "kind": "field",
14508
+ "name": "initialTouchY",
14509
+ "type": {
14510
+ "text": "number"
14511
+ },
14512
+ "privacy": "private",
14513
+ "default": "0"
14514
+ },
14515
+ {
14516
+ "kind": "field",
14517
+ "name": "options",
14518
+ "type": {
14519
+ "text": "SetRequired<SwipeControllerOptions, \"target\">"
14520
+ },
14521
+ "privacy": "private",
14522
+ "default": "{\n target: () => host,\n ...options,\n }"
14487
14523
  },
14488
14524
  {
14489
14525
  "kind": "method",
14490
- "name": "hostConnected"
14526
+ "name": "hostUpdated"
14527
+ },
14528
+ {
14529
+ "kind": "method",
14530
+ "name": "hostDisconnected"
14491
14531
  },
14492
14532
  {
14493
14533
  "kind": "field",
14494
- "name": "handleEsc",
14534
+ "name": "handleTouchStart",
14495
14535
  "privacy": "private"
14496
14536
  },
14497
14537
  {
14498
14538
  "kind": "field",
14499
- "name": "handleClickOut",
14539
+ "name": "handleTouchEnd",
14500
14540
  "privacy": "private"
14501
14541
  }
14502
14542
  ],
14503
14543
  "examples": []
14544
+ },
14545
+ {
14546
+ "kind": "function",
14547
+ "name": "isHorizontalSwipe",
14548
+ "parameters": [
14549
+ {
14550
+ "name": "{ distX, distY }",
14551
+ "type": {
14552
+ "text": "SwipeDetails"
14553
+ }
14554
+ }
14555
+ ]
14556
+ },
14557
+ {
14558
+ "kind": "function",
14559
+ "name": "isDownwardsSwipe",
14560
+ "parameters": [
14561
+ {
14562
+ "name": "{ distX, distY }",
14563
+ "type": {
14564
+ "text": "SwipeDetails"
14565
+ }
14566
+ }
14567
+ ]
14504
14568
  }
14505
14569
  ],
14506
14570
  "exports": [
14507
14571
  {
14508
14572
  "kind": "js",
14509
- "name": "LightDismissController",
14573
+ "name": "SwipeController",
14510
14574
  "declaration": {
14511
- "name": "LightDismissController",
14512
- "module": "src/common/controllers/LightDismissController.ts"
14575
+ "name": "SwipeController",
14576
+ "module": "src/common/controllers/SwipeController.ts"
14577
+ }
14578
+ },
14579
+ {
14580
+ "kind": "js",
14581
+ "name": "isHorizontalSwipe",
14582
+ "declaration": {
14583
+ "name": "isHorizontalSwipe",
14584
+ "module": "src/common/controllers/SwipeController.ts"
14585
+ }
14586
+ },
14587
+ {
14588
+ "kind": "js",
14589
+ "name": "isDownwardsSwipe",
14590
+ "declaration": {
14591
+ "name": "isDownwardsSwipe",
14592
+ "module": "src/common/controllers/SwipeController.ts"
14513
14593
  }
14514
14594
  }
14515
14595
  ]
14516
14596
  },
14517
14597
  {
14518
14598
  "kind": "javascript-module",
14519
- "path": "src/common/controllers/LightDomController.ts",
14599
+ "path": "src/common/decorators/observe.ts",
14520
14600
  "declarations": [
14521
14601
  {
14522
- "kind": "class",
14523
- "description": "",
14524
- "name": "LightDomController",
14525
- "members": [
14602
+ "kind": "function",
14603
+ "name": "observe",
14604
+ "parameters": [
14526
14605
  {
14527
- "kind": "field",
14528
- "name": "container",
14606
+ "name": "propertyName",
14529
14607
  "type": {
14530
- "text": "HTMLElement"
14531
- },
14532
- "privacy": "private"
14533
- },
14534
- {
14535
- "kind": "method",
14536
- "name": "hostUpdated"
14608
+ "text": "string"
14609
+ }
14537
14610
  },
14538
14611
  {
14539
- "kind": "method",
14540
- "name": "hostDisconnected"
14612
+ "name": "lifecycle",
14613
+ "default": "\"update\"",
14614
+ "type": {
14615
+ "text": "ObserveLifecycle"
14616
+ }
14541
14617
  }
14542
- ],
14543
- "examples": []
14618
+ ]
14544
14619
  }
14545
14620
  ],
14546
14621
  "exports": [
14547
14622
  {
14548
14623
  "kind": "js",
14549
- "name": "LightDomController",
14624
+ "name": "observe",
14550
14625
  "declaration": {
14551
- "name": "LightDomController",
14552
- "module": "src/common/controllers/LightDomController.ts"
14626
+ "name": "observe",
14627
+ "module": "src/common/decorators/observe.ts"
14553
14628
  }
14554
14629
  }
14555
14630
  ]
14556
14631
  },
14557
14632
  {
14558
14633
  "kind": "javascript-module",
14559
- "path": "src/common/controllers/LightSlotController.ts",
14634
+ "path": "src/common/directives/cond.ts",
14560
14635
  "declarations": [
14561
14636
  {
14562
- "kind": "class",
14563
- "description": "Handles cases where a component needs to render to light DOM,\nand potentially sync component properties to user-supplied content.",
14564
- "name": "LightSlotController",
14565
- "members": [
14637
+ "kind": "function",
14638
+ "name": "cond",
14639
+ "return": {
14640
+ "type": {
14641
+ "text": "typeof value | typeof nothing"
14642
+ }
14643
+ },
14644
+ "parameters": [
14566
14645
  {
14567
- "kind": "field",
14568
- "name": "renderHook",
14646
+ "name": "value",
14569
14647
  "type": {
14570
- "text": "Comment"
14571
- },
14572
- "privacy": "private"
14573
- },
14648
+ "text": "any"
14649
+ }
14650
+ }
14651
+ ],
14652
+ "description": "if value is truthy, return it, otherwise return nothing"
14653
+ },
14654
+ {
14655
+ "kind": "function",
14656
+ "name": "cond",
14657
+ "return": {
14658
+ "type": {
14659
+ "text": "typeof trueCase | typeof nothing"
14660
+ }
14661
+ },
14662
+ "parameters": [
14574
14663
  {
14575
- "kind": "field",
14576
- "name": "lightDom",
14664
+ "name": "condition",
14577
14665
  "type": {
14578
- "text": "LightDomController"
14579
- },
14580
- "privacy": "private",
14581
- "default": "new LightDomController(host, {\n render: () => (this.hasContent ? nothing : this.options.render()),\n renderOptions: { renderBefore: this.renderHook },\n })"
14666
+ "text": "unknown"
14667
+ }
14582
14668
  },
14583
14669
  {
14584
- "kind": "method",
14585
- "name": "hostConnected",
14586
- "inheritedFrom": {
14587
- "name": "SlotController",
14588
- "module": "src/common/controllers/SlotController.ts"
14670
+ "name": "trueCase",
14671
+ "type": {
14672
+ "text": "any"
14673
+ }
14674
+ }
14675
+ ],
14676
+ "description": "if condition is truthy, return trueCase, otherwise return nothing"
14677
+ },
14678
+ {
14679
+ "kind": "function",
14680
+ "name": "cond",
14681
+ "return": {
14682
+ "type": {
14683
+ "text": "typeof trueCase"
14684
+ }
14685
+ },
14686
+ "parameters": [
14687
+ {
14688
+ "name": "condition",
14689
+ "type": {
14690
+ "text": "true"
14589
14691
  }
14590
14692
  },
14591
14693
  {
14592
- "kind": "method",
14593
- "name": "hostDisconnected"
14694
+ "name": "trueCase",
14695
+ "type": {
14696
+ "text": "any"
14697
+ }
14698
+ }
14699
+ ],
14700
+ "description": "condition is true, so always return trueCase"
14701
+ },
14702
+ {
14703
+ "kind": "function",
14704
+ "name": "cond",
14705
+ "return": {
14706
+ "type": {
14707
+ "text": "typeof nothing"
14708
+ }
14709
+ },
14710
+ "parameters": [
14711
+ {
14712
+ "name": "condition",
14713
+ "type": {
14714
+ "text": "false"
14715
+ }
14594
14716
  },
14595
14717
  {
14596
- "kind": "field",
14597
- "name": "onChange",
14598
- "privacy": "protected",
14599
- "parameters": [
14600
- {
14601
- "name": "_e",
14602
- "type": {
14603
- "text": "Event"
14604
- }
14605
- }
14606
- ],
14607
- "inheritedFrom": {
14608
- "name": "SlotController",
14609
- "module": "src/common/controllers/SlotController.ts"
14718
+ "name": "trueCase",
14719
+ "type": {
14720
+ "text": "any"
14721
+ }
14722
+ }
14723
+ ],
14724
+ "description": "condition is false, to will always return nothing"
14725
+ },
14726
+ {
14727
+ "kind": "function",
14728
+ "name": "cond",
14729
+ "return": {
14730
+ "type": {
14731
+ "text": "typeof trueCase | typeof falseCase"
14732
+ }
14733
+ },
14734
+ "parameters": [
14735
+ {
14736
+ "name": "condition",
14737
+ "type": {
14738
+ "text": "unknown"
14610
14739
  }
14611
14740
  },
14612
14741
  {
14613
- "kind": "method",
14614
- "name": "syncLightDom",
14615
- "privacy": "private"
14742
+ "name": "trueCase",
14743
+ "type": {
14744
+ "text": "any"
14745
+ }
14616
14746
  },
14617
14747
  {
14618
- "kind": "field",
14619
- "name": "events",
14748
+ "name": "falseCase",
14620
14749
  "type": {
14621
- "text": "EventController"
14622
- },
14623
- "privacy": "private",
14624
- "default": "new EventController(host)",
14625
- "inheritedFrom": {
14626
- "name": "SlotController",
14627
- "module": "src/common/controllers/SlotController.ts"
14750
+ "text": "any"
14751
+ }
14752
+ }
14753
+ ],
14754
+ "description": "if condition is truthy, return trueCase, otherwise return falseCase"
14755
+ },
14756
+ {
14757
+ "kind": "function",
14758
+ "name": "cond",
14759
+ "return": {
14760
+ "type": {
14761
+ "text": "typeof trueCase"
14762
+ }
14763
+ },
14764
+ "parameters": [
14765
+ {
14766
+ "name": "condition",
14767
+ "type": {
14768
+ "text": "true"
14628
14769
  }
14629
14770
  },
14630
14771
  {
14631
- "kind": "field",
14632
- "name": "hasContent",
14633
- "inheritedFrom": {
14634
- "name": "SlotController",
14635
- "module": "src/common/controllers/SlotController.ts"
14772
+ "name": "trueCase",
14773
+ "type": {
14774
+ "text": "any"
14636
14775
  }
14637
14776
  },
14638
14777
  {
14639
- "kind": "field",
14640
- "name": "isEmpty",
14641
- "inheritedFrom": {
14642
- "name": "SlotController",
14643
- "module": "src/common/controllers/SlotController.ts"
14778
+ "name": "falseCase",
14779
+ "type": {
14780
+ "text": "any"
14781
+ }
14782
+ }
14783
+ ],
14784
+ "description": "condition is true, so always return trueCase"
14785
+ },
14786
+ {
14787
+ "kind": "function",
14788
+ "name": "cond",
14789
+ "return": {
14790
+ "type": {
14791
+ "text": "typeof falseCase"
14792
+ }
14793
+ },
14794
+ "parameters": [
14795
+ {
14796
+ "name": "condition",
14797
+ "type": {
14798
+ "text": "false"
14644
14799
  }
14645
14800
  },
14646
14801
  {
14647
- "kind": "field",
14648
- "name": "content",
14649
- "inheritedFrom": {
14650
- "name": "SlotController",
14651
- "module": "src/common/controllers/SlotController.ts"
14802
+ "name": "trueCase",
14803
+ "type": {
14804
+ "text": "any"
14652
14805
  }
14653
14806
  },
14654
14807
  {
14655
- "kind": "field",
14656
- "name": "handleSlotChange",
14657
- "privacy": "private",
14658
- "inheritedFrom": {
14659
- "name": "SlotController",
14660
- "module": "src/common/controllers/SlotController.ts"
14808
+ "name": "falseCase",
14809
+ "type": {
14810
+ "text": "any"
14661
14811
  }
14662
14812
  }
14663
14813
  ],
14664
- "superclass": {
14665
- "name": "SlotController",
14666
- "module": "/src/common/controllers/SlotController.js"
14667
- },
14668
- "status": null,
14669
- "category": null,
14670
- "displayName": null,
14671
- "examples": []
14672
- }
14673
- ],
14674
- "exports": [
14675
- {
14676
- "kind": "js",
14677
- "name": "LightSlotController",
14678
- "declaration": {
14679
- "name": "LightSlotController",
14680
- "module": "src/common/controllers/LightSlotController.ts"
14681
- }
14682
- }
14683
- ]
14684
- },
14685
- {
14686
- "kind": "javascript-module",
14687
- "path": "src/common/controllers/PortalController.ts",
14688
- "declarations": [
14814
+ "description": "condition is false, so always return falseCase"
14815
+ },
14689
14816
  {
14690
- "kind": "class",
14691
- "description": "",
14692
- "name": "PortalController",
14693
- "members": [
14817
+ "kind": "function",
14818
+ "name": "cond",
14819
+ "parameters": [
14694
14820
  {
14695
- "kind": "field",
14696
- "name": "renderHook",
14821
+ "name": "condition",
14697
14822
  "type": {
14698
- "text": "Comment"
14699
- },
14700
- "privacy": "private"
14823
+ "text": "unknown"
14824
+ }
14701
14825
  },
14702
14826
  {
14703
- "kind": "field",
14704
- "name": "lightDom",
14827
+ "name": "trueCase",
14828
+ "default": "condition",
14705
14829
  "type": {
14706
- "text": "LightDomController"
14707
- },
14708
- "privacy": "private",
14709
- "default": "new LightDomController(host, {\n render: () => this.options.render.call(host),\n container: options.outlet,\n renderOptions: {\n renderBefore: this.renderHook,\n host,\n },\n })"
14710
- },
14711
- {
14712
- "kind": "method",
14713
- "name": "hostConnected"
14714
- },
14715
- {
14716
- "kind": "method",
14717
- "name": "hostUpdated"
14830
+ "text": "any"
14831
+ }
14718
14832
  },
14719
14833
  {
14720
- "kind": "method",
14721
- "name": "hostDisconnected"
14834
+ "name": "falseCase",
14835
+ "default": "nothing",
14836
+ "type": {
14837
+ "text": "any"
14838
+ }
14722
14839
  }
14723
- ],
14724
- "examples": []
14840
+ ]
14725
14841
  }
14726
14842
  ],
14727
14843
  "exports": [
14728
14844
  {
14729
14845
  "kind": "js",
14730
- "name": "PortalController",
14846
+ "name": "cond",
14731
14847
  "declaration": {
14732
- "name": "PortalController",
14733
- "module": "src/common/controllers/PortalController.ts"
14848
+ "name": "cond",
14849
+ "module": "src/common/directives/cond.ts"
14734
14850
  }
14735
- }
14736
- ]
14737
- },
14738
- {
14739
- "kind": "javascript-module",
14740
- "path": "src/common/controllers/ScrollbarController.ts",
14741
- "declarations": [
14851
+ },
14742
14852
  {
14743
- "kind": "class",
14744
- "description": "",
14745
- "name": "ScrollbarController",
14746
- "members": [
14747
- {
14748
- "kind": "field",
14749
- "name": "resets",
14750
- "privacy": "private",
14751
- "default": "new Set<() => void>()"
14752
- },
14753
- {
14754
- "kind": "method",
14755
- "name": "hostDisconnected"
14756
- },
14757
- {
14758
- "kind": "field",
14759
- "name": "width"
14760
- },
14761
- {
14762
- "kind": "method",
14763
- "name": "hide"
14764
- },
14765
- {
14766
- "kind": "method",
14767
- "name": "restore"
14768
- },
14769
- {
14770
- "kind": "method",
14771
- "name": "setStyle",
14772
- "privacy": "private",
14773
- "parameters": [
14774
- {
14775
- "name": "property",
14776
- "type": {
14777
- "text": "string"
14778
- }
14779
- },
14780
- {
14781
- "name": "value",
14782
- "type": {
14783
- "text": "string"
14784
- }
14785
- }
14786
- ]
14787
- }
14788
- ],
14789
- "examples": []
14790
- }
14791
- ],
14792
- "exports": [
14853
+ "kind": "js",
14854
+ "name": "cond",
14855
+ "declaration": {
14856
+ "name": "cond",
14857
+ "module": "src/common/directives/cond.ts"
14858
+ }
14859
+ },
14793
14860
  {
14794
14861
  "kind": "js",
14795
- "name": "ScrollbarController",
14862
+ "name": "cond",
14796
14863
  "declaration": {
14797
- "name": "ScrollbarController",
14798
- "module": "src/common/controllers/ScrollbarController.ts"
14864
+ "name": "cond",
14865
+ "module": "src/common/directives/cond.ts"
14799
14866
  }
14800
- }
14801
- ]
14802
- },
14803
- {
14804
- "kind": "javascript-module",
14805
- "path": "src/common/controllers/ShortcutController.ts",
14806
- "declarations": [
14867
+ },
14807
14868
  {
14808
- "kind": "class",
14809
- "description": "",
14810
- "name": "ShortcutController",
14811
- "members": [
14812
- {
14813
- "kind": "field",
14814
- "name": "unregister",
14815
- "type": {
14816
- "text": "ReturnType<typeof tinykeys> | undefined"
14817
- },
14818
- "privacy": "private"
14819
- },
14820
- {
14821
- "kind": "method",
14822
- "name": "hostConnected"
14823
- },
14824
- {
14825
- "kind": "method",
14826
- "name": "hostDisconnected"
14827
- },
14828
- {
14829
- "kind": "method",
14830
- "name": "unbind"
14831
- },
14832
- {
14833
- "kind": "method",
14834
- "name": "bind",
14835
- "parameters": [
14836
- {
14837
- "name": "shortcuts",
14838
- "type": {
14839
- "text": "KeyBindingMap"
14840
- }
14841
- }
14842
- ]
14843
- }
14844
- ],
14845
- "examples": []
14846
- }
14847
- ],
14848
- "exports": [
14869
+ "kind": "js",
14870
+ "name": "cond",
14871
+ "declaration": {
14872
+ "name": "cond",
14873
+ "module": "src/common/directives/cond.ts"
14874
+ }
14875
+ },
14849
14876
  {
14850
14877
  "kind": "js",
14851
- "name": "ShortcutController",
14878
+ "name": "cond",
14852
14879
  "declaration": {
14853
- "name": "ShortcutController",
14854
- "module": "src/common/controllers/ShortcutController.ts"
14880
+ "name": "cond",
14881
+ "module": "src/common/directives/cond.ts"
14855
14882
  }
14856
14883
  },
14857
14884
  {
14858
14885
  "kind": "js",
14859
- "name": "ShortcutMap",
14886
+ "name": "cond",
14860
14887
  "declaration": {
14861
- "name": "KeyBindingMap",
14862
- "module": "src/common/controllers/ShortcutController.ts"
14888
+ "name": "cond",
14889
+ "module": "src/common/directives/cond.ts"
14863
14890
  }
14864
- }
14865
- ]
14866
- },
14867
- {
14868
- "kind": "javascript-module",
14869
- "path": "src/common/controllers/SlotController.ts",
14870
- "declarations": [
14891
+ },
14871
14892
  {
14872
- "kind": "class",
14873
- "description": "",
14874
- "name": "SlotController",
14875
- "members": [
14876
- {
14877
- "kind": "field",
14878
- "name": "events",
14879
- "type": {
14880
- "text": "EventController"
14881
- },
14882
- "privacy": "private",
14883
- "default": "new EventController(host)"
14884
- },
14885
- {
14886
- "kind": "method",
14887
- "name": "hostConnected"
14888
- },
14889
- {
14890
- "kind": "field",
14891
- "name": "hasContent"
14892
- },
14893
- {
14894
- "kind": "field",
14895
- "name": "isEmpty"
14896
- },
14897
- {
14898
- "kind": "field",
14899
- "name": "content"
14900
- },
14901
- {
14902
- "kind": "field",
14903
- "name": "handleSlotChange",
14904
- "privacy": "private"
14905
- },
14906
- {
14907
- "kind": "method",
14908
- "name": "onChange",
14909
- "privacy": "protected",
14910
- "parameters": [
14911
- {
14912
- "name": "_e",
14913
- "type": {
14914
- "text": "Event"
14915
- }
14916
- }
14917
- ]
14918
- }
14919
- ],
14920
- "examples": []
14921
- }
14922
- ],
14923
- "exports": [
14893
+ "kind": "js",
14894
+ "name": "cond",
14895
+ "declaration": {
14896
+ "name": "cond",
14897
+ "module": "src/common/directives/cond.ts"
14898
+ }
14899
+ },
14924
14900
  {
14925
14901
  "kind": "js",
14926
- "name": "SlotController",
14902
+ "name": "cond",
14927
14903
  "declaration": {
14928
- "name": "SlotController",
14929
- "module": "src/common/controllers/SlotController.ts"
14904
+ "name": "cond",
14905
+ "module": "src/common/directives/cond.ts"
14930
14906
  }
14931
14907
  }
14932
14908
  ]
14933
14909
  },
14934
14910
  {
14935
14911
  "kind": "javascript-module",
14936
- "path": "src/common/controllers/SwipeController.ts",
14912
+ "path": "src/common/directives/wrapIf.ts",
14937
14913
  "declarations": [
14938
14914
  {
14939
- "kind": "class",
14940
- "description": "",
14941
- "name": "SwipeController",
14942
- "members": [
14915
+ "kind": "function",
14916
+ "name": "wrapIf",
14917
+ "return": {
14918
+ "type": {
14919
+ "text": "TInner"
14920
+ }
14921
+ },
14922
+ "parameters": [
14943
14923
  {
14944
- "kind": "field",
14945
- "name": "events",
14924
+ "name": "condition",
14946
14925
  "type": {
14947
- "text": "EventController"
14948
- },
14949
- "privacy": "private",
14950
- "default": "new EventController(host)"
14926
+ "text": "false"
14927
+ }
14951
14928
  },
14952
14929
  {
14953
- "kind": "field",
14954
- "name": "hadFirstUpdate",
14930
+ "name": "inner",
14955
14931
  "type": {
14956
- "text": "boolean"
14957
- },
14958
- "privacy": "private",
14959
- "default": "false"
14932
+ "text": "() => TInner"
14933
+ }
14960
14934
  },
14961
14935
  {
14962
- "kind": "field",
14963
- "name": "initialTouchX",
14936
+ "name": "wrapper",
14964
14937
  "type": {
14965
- "text": "number"
14966
- },
14967
- "privacy": "private",
14968
- "default": "0"
14969
- },
14938
+ "text": "(inner: TInner) => TWrapper"
14939
+ }
14940
+ }
14941
+ ]
14942
+ },
14943
+ {
14944
+ "kind": "function",
14945
+ "name": "wrapIf",
14946
+ "return": {
14947
+ "type": {
14948
+ "text": "TWrapper"
14949
+ }
14950
+ },
14951
+ "parameters": [
14970
14952
  {
14971
- "kind": "field",
14972
- "name": "initialTouchY",
14953
+ "name": "condition",
14973
14954
  "type": {
14974
- "text": "number"
14975
- },
14976
- "privacy": "private",
14977
- "default": "0"
14955
+ "text": "true"
14956
+ }
14978
14957
  },
14979
14958
  {
14980
- "kind": "field",
14981
- "name": "options",
14959
+ "name": "inner",
14982
14960
  "type": {
14983
- "text": "SetRequired<SwipeControllerOptions, \"target\">"
14984
- },
14985
- "privacy": "private",
14986
- "default": "{\n target: () => host,\n ...options,\n }"
14987
- },
14988
- {
14989
- "kind": "method",
14990
- "name": "hostUpdated"
14991
- },
14992
- {
14993
- "kind": "method",
14994
- "name": "hostDisconnected"
14995
- },
14996
- {
14997
- "kind": "field",
14998
- "name": "handleTouchStart",
14999
- "privacy": "private"
14961
+ "text": "() => TInner"
14962
+ }
15000
14963
  },
15001
14964
  {
15002
- "kind": "field",
15003
- "name": "handleTouchEnd",
15004
- "privacy": "private"
14965
+ "name": "wrapper",
14966
+ "type": {
14967
+ "text": "(inner: TInner) => TWrapper"
14968
+ }
15005
14969
  }
15006
- ],
15007
- "examples": []
14970
+ ]
15008
14971
  },
15009
14972
  {
15010
14973
  "kind": "function",
15011
- "name": "isHorizontalSwipe",
14974
+ "name": "wrapIf",
14975
+ "return": {
14976
+ "type": {
14977
+ "text": "TInner | TWrapper"
14978
+ }
14979
+ },
15012
14980
  "parameters": [
15013
14981
  {
15014
- "name": "{ distX, distY }",
14982
+ "name": "condition",
15015
14983
  "type": {
15016
- "text": "SwipeDetails"
14984
+ "text": "unknown"
14985
+ }
14986
+ },
14987
+ {
14988
+ "name": "inner",
14989
+ "type": {
14990
+ "text": "() => TInner"
14991
+ }
14992
+ },
14993
+ {
14994
+ "name": "wrapper",
14995
+ "type": {
14996
+ "text": "(inner: TInner) => TWrapper"
15017
14997
  }
15018
14998
  }
15019
14999
  ]
15020
15000
  },
15021
15001
  {
15022
15002
  "kind": "function",
15023
- "name": "isDownwardsSwipe",
15003
+ "name": "wrapIf",
15024
15004
  "parameters": [
15025
15005
  {
15026
- "name": "{ distX, distY }",
15006
+ "name": "condition",
15027
15007
  "type": {
15028
- "text": "SwipeDetails"
15008
+ "text": "any"
15009
+ }
15010
+ },
15011
+ {
15012
+ "name": "inner",
15013
+ "type": {
15014
+ "text": "() => TInner"
15015
+ }
15016
+ },
15017
+ {
15018
+ "name": "wrapper",
15019
+ "type": {
15020
+ "text": "(innards: TInner) => TWrapper"
15029
15021
  }
15030
15022
  }
15031
- ]
15023
+ ],
15024
+ "return": {
15025
+ "type": {
15026
+ "text": ""
15027
+ }
15028
+ }
15032
15029
  }
15033
15030
  ],
15034
15031
  "exports": [
15035
15032
  {
15036
15033
  "kind": "js",
15037
- "name": "SwipeController",
15034
+ "name": "wrapIf",
15038
15035
  "declaration": {
15039
- "name": "SwipeController",
15040
- "module": "src/common/controllers/SwipeController.ts"
15036
+ "name": "wrapIf",
15037
+ "module": "src/common/directives/wrapIf.ts"
15041
15038
  }
15042
15039
  },
15043
15040
  {
15044
15041
  "kind": "js",
15045
- "name": "isHorizontalSwipe",
15042
+ "name": "wrapIf",
15046
15043
  "declaration": {
15047
- "name": "isHorizontalSwipe",
15048
- "module": "src/common/controllers/SwipeController.ts"
15044
+ "name": "wrapIf",
15045
+ "module": "src/common/directives/wrapIf.ts"
15049
15046
  }
15050
15047
  },
15051
15048
  {
15052
15049
  "kind": "js",
15053
- "name": "isDownwardsSwipe",
15050
+ "name": "wrapIf",
15054
15051
  "declaration": {
15055
- "name": "isDownwardsSwipe",
15056
- "module": "src/common/controllers/SwipeController.ts"
15052
+ "name": "wrapIf",
15053
+ "module": "src/common/directives/wrapIf.ts"
15054
+ }
15055
+ },
15056
+ {
15057
+ "kind": "js",
15058
+ "name": "wrapIf",
15059
+ "declaration": {
15060
+ "name": "wrapIf",
15061
+ "module": "src/common/directives/wrapIf.ts"
15057
15062
  }
15058
15063
  }
15059
15064
  ]