@nordhealth/components 4.12.8 → 4.13.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -2280,6 +2280,17 @@
2280
2280
  "description": "Controls the padding of the card component. When set to “none”,\nthe header and footer slots will still have padding.",
2281
2281
  "attribute": "padding",
2282
2282
  "reflects": true
2283
+ },
2284
+ {
2285
+ "kind": "field",
2286
+ "name": "footerDivider",
2287
+ "type": {
2288
+ "text": "boolean"
2289
+ },
2290
+ "default": "false",
2291
+ "description": "When set, adds a divider border above the footer slot.",
2292
+ "attribute": "footer-divider",
2293
+ "reflects": true
2283
2294
  }
2284
2295
  ],
2285
2296
  "attributes": [
@@ -2291,6 +2302,15 @@
2291
2302
  "default": "'m'",
2292
2303
  "description": "Controls the padding of the card component. When set to “none”,\nthe header and footer slots will still have padding.",
2293
2304
  "fieldName": "padding"
2305
+ },
2306
+ {
2307
+ "name": "footer-divider",
2308
+ "type": {
2309
+ "text": "boolean"
2310
+ },
2311
+ "default": "false",
2312
+ "description": "When set, adds a divider border above the footer slot.",
2313
+ "fieldName": "footerDivider"
2294
2314
  }
2295
2315
  ],
2296
2316
  "superclass": {
@@ -7923,6 +7943,17 @@
7923
7943
  "attribute": "disallow-pattern",
7924
7944
  "reflects": true
7925
7945
  },
7946
+ {
7947
+ "kind": "field",
7948
+ "name": "inputmode",
7949
+ "type": {
7950
+ "text": "InputMode | undefined"
7951
+ },
7952
+ "default": "undefined",
7953
+ "description": "The inputmode attribute provides a hint to the browser about what type of keyboard to open on mobile devices.\nValid values: none, text, decimal, numeric, tel, search, email, url\nWhen not explicitly set, defaults based on input type:\n- type=\"number\" → inputmode=\"numeric\"\n- type=\"email\" → inputmode=\"email\"\n- type=\"tel\" → inputmode=\"tel\"\n- type=\"url\" → inputmode=\"url\"\n- type=\"search\" → inputmode=\"search\"\nCan be explicitly overridden for any type.",
7954
+ "attribute": "inputmode",
7955
+ "reflects": true
7956
+ },
7926
7957
  {
7927
7958
  "kind": "method",
7928
7959
  "name": "handleKeydown",
@@ -8604,6 +8635,15 @@
8604
8635
  "description": "Optionally disallow certain characters from being used inside the input, using a regex pattern.",
8605
8636
  "fieldName": "disallowPattern"
8606
8637
  },
8638
+ {
8639
+ "name": "inputmode",
8640
+ "type": {
8641
+ "text": "InputMode | undefined"
8642
+ },
8643
+ "default": "undefined",
8644
+ "description": "The inputmode attribute provides a hint to the browser about what type of keyboard to open on mobile devices.\nValid values: none, text, decimal, numeric, tel, search, email, url\nWhen not explicitly set, defaults based on input type:\n- type=\"number\" → inputmode=\"numeric\"\n- type=\"email\" → inputmode=\"email\"\n- type=\"tel\" → inputmode=\"tel\"\n- type=\"url\" → inputmode=\"url\"\n- type=\"search\" → inputmode=\"search\"\nCan be explicitly overridden for any type.",
8645
+ "fieldName": "inputmode"
8646
+ },
8607
8647
  {
8608
8648
  "name": "size",
8609
8649
  "type": {
@@ -8819,7 +8859,7 @@
8819
8859
  "localization": [],
8820
8860
  "status": "ready",
8821
8861
  "category": "form",
8822
- "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 provide a text input where the expected input is short.\n- Use to only ask for information that’s really needed. Hide optional fields by default if possible or have them shown with a lower priority.\n- Use help text and placeholder to provide additional, non-critical instructions.\n- Validate input as soon as users have finished interacting with them (but not before).\n- Where necessary, label the input as “Optional” when you need to request input that’s not required.\n\n</div>\n<div class=\"n-usage n-usage-dont\">\n\n### Don’t\n\n- Don’t use when the expected text input is long. Use textarea component instead.\n- Don’t use the placeholder to provide information that’s required to use the input. Hint text should be used for this purpose instead.\n\n</div>\n\n---\n\n## Content guidelines\n\nInput labels act as a title for the text field. Labels should typically be short and in noun form:\n\n<div class=\"n-usage n-usage-do\">Company name</div>\n<div class=\"n-usage n-usage-dont\">What is your company name?</div>\n\nWhen writing input 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\">Company name</div>\n<div class=\"n-usage n-usage-dont\">Company Name</div>\n\nWhen an input isn’t part of a form and is placed individually on a page, you could provide the input label as a call to action:\n\n<div class=\"n-usage n-usage-do\">Leave a comment</div>\n<div class=\"n-usage n-usage-dont\">Comment</div>\n\nDo not use colons in input label:\n\n<div class=\"n-usage n-usage-do\">First name</div>\n<div class=\"n-usage n-usage-dont\">First name:</div>\n\n---\n\n## Types\n\nThis section describes the different input types, their purpose, and when to use each type.\n\n| Name | Purpose |\n| ---------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------ |\n| `text` | The default and most common variant. Displayed as a single-line text field. Line-breaks are automatically removed from the input value. |\n| `email` | A field for editing an email address. Looks similar to a text input, but has validation parameters and relevant keyboard for devices with dynamic keyboards. |\n| `password` | A single-line text field where the value is obscured. This type will alert user if a site is not secure. |\n| `tel` | A field for entering a telephone number. Displays a number keypad on mobile devices. |\n| `url` | A field variant that is used to let the user enter and edit an URL. |\n| `search` | A single-line text field for entering search strings. |\n| `number` | Used to let the user enter a number. |\n\n---\n\n## Icon usage in input\n\nEach [input size](/components/input/?example=size) has a recommended icon size. The medium input uses the `s` icon size, the small input uses the `xs` icon size, and the large input uses the `m` icon size. The icon will adjust size automatically based on the button size, so you will get the correct behavior by default. However, this can be overridden by explicitly setting a size on the icon.\n\n---\n\n## Input masking\n\nWe recommend using [Maskito](https://maskito.dev/) for creating an [input mask](/components/input/?example=input+mask) which ensures that users type values according to a predefined format.\n",
8862
+ "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 provide a text input where the expected input is short.\n- Use to only ask for information that’s really needed. Hide optional fields by default if possible or have them shown with a lower priority.\n- Use help text and placeholder to provide additional, non-critical instructions.\n- Validate input as soon as users have finished interacting with them (but not before).\n- Where necessary, label the input as “Optional” when you need to request input that’s not required.\n\n</div>\n<div class=\"n-usage n-usage-dont\">\n\n### Don’t\n\n- Don’t use when the expected text input is long. Use textarea component instead.\n- Don’t use the placeholder to provide information that’s required to use the input. Hint text should be used for this purpose instead.\n\n</div>\n\n---\n\n## Content guidelines\n\nInput labels act as a title for the text field. Labels should typically be short and in noun form:\n\n<div class=\"n-usage n-usage-do\">Company name</div>\n<div class=\"n-usage n-usage-dont\">What is your company name?</div>\n\nWhen writing input 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\">Company name</div>\n<div class=\"n-usage n-usage-dont\">Company Name</div>\n\nWhen an input isn’t part of a form and is placed individually on a page, you could provide the input label as a call to action:\n\n<div class=\"n-usage n-usage-do\">Leave a comment</div>\n<div class=\"n-usage n-usage-dont\">Comment</div>\n\nDo not use colons in input label:\n\n<div class=\"n-usage n-usage-do\">First name</div>\n<div class=\"n-usage n-usage-dont\">First name:</div>\n\n---\n\n## Types\n\nThis section describes the different input types, their purpose, and when to use each type.\n\n| Name | Purpose |\n| ---------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------ |\n| `text` | The default and most common variant. Displayed as a single-line text field. Line-breaks are automatically removed from the input value. |\n| `email` | A field for editing an email address. Looks similar to a text input, but has validation parameters and relevant keyboard for devices with dynamic keyboards. |\n| `password` | A single-line text field where the value is obscured. This type will alert user if a site is not secure. |\n| `tel` | A field for entering a telephone number. Displays a number keypad on mobile devices. |\n| `url` | A field variant that is used to let the user enter and edit an URL. |\n| `search` | A single-line text field for entering search strings. |\n| `number` | Used to let the user enter a number. |\n\n---\n\n## Icon usage in input\n\nEach [input size](/components/input/?example=size) has a recommended icon size. The medium input uses the `s` icon size, the small input uses the `xs` icon size, and the large input uses the `m` icon size. The icon will adjust size automatically based on the button size, so you will get the correct behavior by default. However, this can be overridden by explicitly setting a size on the icon.\n\n---\n\n## Input mode\n\nThe `inputmode` attribute provides a hint to the browser about what type of keyboard to show on mobile devices. This is particularly useful for optimizing the mobile experience by opening the appropriate keyboard (numeric, email, URL, etc.) based on the expected input.\n\n- The `inputmode` attribute accepts the following values: `none`, `text`, `decimal`, `numeric`, `tel`, `search`, `email`, and `url`.\n- The component automatically defaults `inputmode` based on the input `type`:\n - `type=\"number\"` → `inputmode=\"numeric\"`\n - `type=\"email\"` → `inputmode=\"email\"`\n - `type=\"tel\"` → `inputmode=\"tel\"`\n - `type=\"url\"` → `inputmode=\"url\"`\n - `type=\"search\"` → `inputmode=\"search\"`\n- You can override these defaults by explicitly setting a custom `inputmode` value, for example `inputmode=\"decimal\"` on a number type input, or `inputmode=\"numeric\"` on a text type input.\n\n---\n\n## Input masking\n\nWe recommend using [Maskito](https://maskito.dev/) for creating an [input mask](/components/input/?example=input+mask) which ensures that users type values according to a predefined format.\n",
8823
8863
  "examples": [],
8824
8864
  "dependencies": [
8825
8865
  "icon"
@@ -10846,6 +10886,15 @@
10846
10886
  "privacy": "private",
10847
10887
  "default": "new EventController(this)"
10848
10888
  },
10889
+ {
10890
+ "kind": "field",
10891
+ "name": "footerObserver",
10892
+ "type": {
10893
+ "text": "MutationObserver | null"
10894
+ },
10895
+ "privacy": "private",
10896
+ "default": "null"
10897
+ },
10849
10898
  {
10850
10899
  "kind": "field",
10851
10900
  "name": "allowItemsToRemainOpen",
@@ -10866,6 +10915,18 @@
10866
10915
  "attribute": "sticky-footer",
10867
10916
  "reflects": true
10868
10917
  },
10918
+ {
10919
+ "kind": "method",
10920
+ "name": "observeFooter",
10921
+ "privacy": "private",
10922
+ "description": "Observe the footer slot element for visibility changes.\nWatches style and class attributes on the footer element itself, and\nchildList on the host to detect footer being added/removed (e.g. v-if)."
10923
+ },
10924
+ {
10925
+ "kind": "field",
10926
+ "name": "isFooterVisible",
10927
+ "privacy": "private",
10928
+ "readonly": true
10929
+ },
10869
10930
  {
10870
10931
  "kind": "field",
10871
10932
  "name": "handleActivate",
@@ -15330,6 +15391,101 @@
15330
15391
  }
15331
15392
  ]
15332
15393
  },
15394
+ {
15395
+ "kind": "javascript-module",
15396
+ "path": "src/tab/Tab.ts",
15397
+ "declarations": [
15398
+ {
15399
+ "kind": "class",
15400
+ "description": "The interactive tab button for use within the tab group component.",
15401
+ "name": "Tab",
15402
+ "cssProperties": [
15403
+ {
15404
+ "description": "Controls the text color of the tab, using our [color tokens](/tokens/#color).",
15405
+ "name": "--n-tab-color",
15406
+ "default": "var(--n-color-text-weak)"
15407
+ },
15408
+ {
15409
+ "description": "Controls the font weight of the tab, using our [font tokens](/tokens/#font).",
15410
+ "name": "--n-tab-font-weight",
15411
+ "default": "var(--n-font-weight)"
15412
+ }
15413
+ ],
15414
+ "slots": [
15415
+ {
15416
+ "description": "The tab button content.",
15417
+ "name": ""
15418
+ }
15419
+ ],
15420
+ "members": [
15421
+ {
15422
+ "kind": "field",
15423
+ "name": "defaultSlot",
15424
+ "privacy": "private",
15425
+ "default": "new SlotController(this)"
15426
+ },
15427
+ {
15428
+ "kind": "field",
15429
+ "name": "selected",
15430
+ "type": {
15431
+ "text": "boolean"
15432
+ },
15433
+ "default": "false",
15434
+ "description": "Whether the tab item is selected",
15435
+ "attribute": "selected",
15436
+ "reflects": true
15437
+ },
15438
+ {
15439
+ "kind": "method",
15440
+ "name": "handleSelectionChange",
15441
+ "privacy": "protected",
15442
+ "description": "Apply accessible attributes and values to the tab button.\nObserve the selected property if it changes"
15443
+ }
15444
+ ],
15445
+ "attributes": [
15446
+ {
15447
+ "name": "selected",
15448
+ "type": {
15449
+ "text": "boolean"
15450
+ },
15451
+ "default": "false",
15452
+ "description": "Whether the tab item is selected",
15453
+ "fieldName": "selected"
15454
+ }
15455
+ ],
15456
+ "superclass": {
15457
+ "name": "LitElement",
15458
+ "package": "lit"
15459
+ },
15460
+ "localization": [],
15461
+ "status": "ready",
15462
+ "category": "navigation",
15463
+ "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 the tab component within the tab group component.\n- Use the `selected` option to signify if the tab is selected.\n- Use text, icons and other non-interactive content within the tab.\n\n</div>\n<div class=\"n-usage n-usage-dont\">\n\n### Don’t\n\n- Don’t use tabs to navigate to other pages. Use navigation or links instead.\n- Don't use the tab component outside of the tab group component.\n- Don't add interactive elements, such as buttons and links, inside the tab component.\n\n</div>\n\n---\n\n## Content guidelines\n\nWhen writing tab 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\">My tasks</div>\n<div class=\"n-usage n-usage-dont\">My Tasks</div>\n\nAvoid unnecessary words and articles in tab labels, such as “the”, “an” or “a”:\n\n<div class=\"n-usage n-usage-do\">Dashboard</div>\n<div class=\"n-usage n-usage-dont\">The dashboard</div>\n\nAvoid ending tab labels in punctuation:\n\n<div class=\"n-usage n-usage-do\">Patients</div>\n<div class=\"n-usage n-usage-dont\">Patients.</div>\n\nUse as few words as possible to describe each tab label:\n\n<div class=\"n-usage n-usage-do\">Payments</div>\n<div class=\"n-usage n-usage-dont\">Payments in your clinic</div>\n\nAvoid all caps for tab labels:\n\n<div class=\"n-usage n-usage-do\">Dashboard</div>\n<div class=\"n-usage n-usage-dont\">DASHBOARD</div>\n\n---\n\n## Additional considerations\n\n- If the content contained within the tabs UI has significance or is important for the user to see, consider using a different form of presentation that doesn't obscure it.\n- If there is a particular section you wish to show out of order of the tabs UI itself consider using the `selected` option to select the tab but prevent the order of the tabs being affected.\n",
15464
+ "examples": [],
15465
+ "dependencies": [],
15466
+ "tagName": "nord-tab",
15467
+ "customElement": true
15468
+ }
15469
+ ],
15470
+ "exports": [
15471
+ {
15472
+ "kind": "js",
15473
+ "name": "default",
15474
+ "declaration": {
15475
+ "name": "Tab",
15476
+ "module": "src/tab/Tab.ts"
15477
+ }
15478
+ },
15479
+ {
15480
+ "kind": "custom-element-definition",
15481
+ "name": "nord-tab",
15482
+ "declaration": {
15483
+ "name": "Tab",
15484
+ "module": "src/tab/Tab.ts"
15485
+ }
15486
+ }
15487
+ ]
15488
+ },
15333
15489
  {
15334
15490
  "kind": "javascript-module",
15335
15491
  "path": "src/tab-group/TabGroup.ts",
@@ -15581,101 +15737,6 @@
15581
15737
  }
15582
15738
  ]
15583
15739
  },
15584
- {
15585
- "kind": "javascript-module",
15586
- "path": "src/tab/Tab.ts",
15587
- "declarations": [
15588
- {
15589
- "kind": "class",
15590
- "description": "The interactive tab button for use within the tab group component.",
15591
- "name": "Tab",
15592
- "cssProperties": [
15593
- {
15594
- "description": "Controls the text color of the tab, using our [color tokens](/tokens/#color).",
15595
- "name": "--n-tab-color",
15596
- "default": "var(--n-color-text-weak)"
15597
- },
15598
- {
15599
- "description": "Controls the font weight of the tab, using our [font tokens](/tokens/#font).",
15600
- "name": "--n-tab-font-weight",
15601
- "default": "var(--n-font-weight)"
15602
- }
15603
- ],
15604
- "slots": [
15605
- {
15606
- "description": "The tab button content.",
15607
- "name": ""
15608
- }
15609
- ],
15610
- "members": [
15611
- {
15612
- "kind": "field",
15613
- "name": "defaultSlot",
15614
- "privacy": "private",
15615
- "default": "new SlotController(this)"
15616
- },
15617
- {
15618
- "kind": "field",
15619
- "name": "selected",
15620
- "type": {
15621
- "text": "boolean"
15622
- },
15623
- "default": "false",
15624
- "description": "Whether the tab item is selected",
15625
- "attribute": "selected",
15626
- "reflects": true
15627
- },
15628
- {
15629
- "kind": "method",
15630
- "name": "handleSelectionChange",
15631
- "privacy": "protected",
15632
- "description": "Apply accessible attributes and values to the tab button.\nObserve the selected property if it changes"
15633
- }
15634
- ],
15635
- "attributes": [
15636
- {
15637
- "name": "selected",
15638
- "type": {
15639
- "text": "boolean"
15640
- },
15641
- "default": "false",
15642
- "description": "Whether the tab item is selected",
15643
- "fieldName": "selected"
15644
- }
15645
- ],
15646
- "superclass": {
15647
- "name": "LitElement",
15648
- "package": "lit"
15649
- },
15650
- "localization": [],
15651
- "status": "ready",
15652
- "category": "navigation",
15653
- "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 the tab component within the tab group component.\n- Use the `selected` option to signify if the tab is selected.\n- Use text, icons and other non-interactive content within the tab.\n\n</div>\n<div class=\"n-usage n-usage-dont\">\n\n### Don’t\n\n- Don’t use tabs to navigate to other pages. Use navigation or links instead.\n- Don't use the tab component outside of the tab group component.\n- Don't add interactive elements, such as buttons and links, inside the tab component.\n\n</div>\n\n---\n\n## Content guidelines\n\nWhen writing tab 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\">My tasks</div>\n<div class=\"n-usage n-usage-dont\">My Tasks</div>\n\nAvoid unnecessary words and articles in tab labels, such as “the”, “an” or “a”:\n\n<div class=\"n-usage n-usage-do\">Dashboard</div>\n<div class=\"n-usage n-usage-dont\">The dashboard</div>\n\nAvoid ending tab labels in punctuation:\n\n<div class=\"n-usage n-usage-do\">Patients</div>\n<div class=\"n-usage n-usage-dont\">Patients.</div>\n\nUse as few words as possible to describe each tab label:\n\n<div class=\"n-usage n-usage-do\">Payments</div>\n<div class=\"n-usage n-usage-dont\">Payments in your clinic</div>\n\nAvoid all caps for tab labels:\n\n<div class=\"n-usage n-usage-do\">Dashboard</div>\n<div class=\"n-usage n-usage-dont\">DASHBOARD</div>\n\n---\n\n## Additional considerations\n\n- If the content contained within the tabs UI has significance or is important for the user to see, consider using a different form of presentation that doesn't obscure it.\n- If there is a particular section you wish to show out of order of the tabs UI itself consider using the `selected` option to select the tab but prevent the order of the tabs being affected.\n",
15654
- "examples": [],
15655
- "dependencies": [],
15656
- "tagName": "nord-tab",
15657
- "customElement": true
15658
- }
15659
- ],
15660
- "exports": [
15661
- {
15662
- "kind": "js",
15663
- "name": "default",
15664
- "declaration": {
15665
- "name": "Tab",
15666
- "module": "src/tab/Tab.ts"
15667
- }
15668
- },
15669
- {
15670
- "kind": "custom-element-definition",
15671
- "name": "nord-tab",
15672
- "declaration": {
15673
- "name": "Tab",
15674
- "module": "src/tab/Tab.ts"
15675
- }
15676
- }
15677
- ]
15678
- },
15679
15740
  {
15680
15741
  "kind": "javascript-module",
15681
15742
  "path": "src/tab-panel/TabPanel.ts",
@@ -20176,210 +20237,224 @@
20176
20237
  },
20177
20238
  {
20178
20239
  "kind": "javascript-module",
20179
- "path": "src/common/directives/cond.ts",
20240
+ "path": "src/common/mixins/AutocompleteMixin.ts",
20180
20241
  "declarations": [
20181
20242
  {
20182
- "kind": "function",
20183
- "name": "cond",
20184
- "return": {
20185
- "type": {
20186
- "text": "typeof value | typeof nothing"
20187
- }
20188
- },
20189
- "parameters": [
20243
+ "kind": "class",
20244
+ "description": "",
20245
+ "name": "AutocompleteMixinInterface",
20246
+ "members": [
20190
20247
  {
20191
- "name": "value",
20248
+ "kind": "field",
20249
+ "name": "autocomplete",
20192
20250
  "type": {
20193
- "text": "any"
20251
+ "text": "AutocompleteAttribute"
20194
20252
  }
20195
20253
  }
20196
- ],
20197
- "description": "if value is truthy, return it, otherwise return nothing"
20254
+ ]
20198
20255
  },
20199
20256
  {
20200
- "kind": "function",
20201
- "name": "cond",
20202
- "return": {
20203
- "type": {
20204
- "text": "typeof trueCase | typeof nothing"
20205
- }
20206
- },
20207
- "parameters": [
20257
+ "kind": "mixin",
20258
+ "description": "",
20259
+ "name": "AutocompleteMixin",
20260
+ "members": [
20208
20261
  {
20209
- "name": "condition",
20262
+ "kind": "field",
20263
+ "name": "autocomplete",
20210
20264
  "type": {
20211
- "text": "unknown"
20212
- }
20213
- },
20265
+ "text": "AutocompleteAttribute"
20266
+ },
20267
+ "default": "'off'",
20268
+ "description": "Specifies the data type of the field, so that the browser may attempt to fill out the field automatically on behalf of the user.",
20269
+ "attribute": "autocomplete"
20270
+ }
20271
+ ],
20272
+ "attributes": [
20214
20273
  {
20215
- "name": "trueCase",
20274
+ "name": "autocomplete",
20216
20275
  "type": {
20217
- "text": "any"
20218
- }
20276
+ "text": "AutocompleteAttribute"
20277
+ },
20278
+ "default": "'off'",
20279
+ "description": "Specifies the data type of the field, so that the browser may attempt to fill out the field automatically on behalf of the user.",
20280
+ "fieldName": "autocomplete"
20219
20281
  }
20220
20282
  ],
20221
- "description": "if condition is truthy, return trueCase, otherwise return nothing"
20222
- },
20223
- {
20224
- "kind": "function",
20225
- "name": "cond",
20226
- "return": {
20227
- "type": {
20228
- "text": "typeof trueCase"
20229
- }
20230
- },
20231
20283
  "parameters": [
20232
20284
  {
20233
- "name": "condition",
20234
- "type": {
20235
- "text": "true"
20236
- }
20237
- },
20238
- {
20239
- "name": "trueCase",
20285
+ "name": "superClass",
20240
20286
  "type": {
20241
- "text": "any"
20287
+ "text": "T"
20242
20288
  }
20243
20289
  }
20244
- ],
20245
- "description": "condition is true, so always return trueCase"
20290
+ ]
20291
+ }
20292
+ ],
20293
+ "exports": [
20294
+ {
20295
+ "kind": "js",
20296
+ "name": "AutocompleteMixinInterface",
20297
+ "declaration": {
20298
+ "name": "AutocompleteMixinInterface",
20299
+ "module": "src/common/mixins/AutocompleteMixin.ts"
20300
+ }
20246
20301
  },
20247
20302
  {
20248
- "kind": "function",
20249
- "name": "cond",
20250
- "return": {
20251
- "type": {
20252
- "text": "typeof nothing"
20253
- }
20254
- },
20255
- "parameters": [
20303
+ "kind": "js",
20304
+ "name": "AutocompleteMixin",
20305
+ "declaration": {
20306
+ "name": "AutocompleteMixin",
20307
+ "module": "src/common/mixins/AutocompleteMixin.ts"
20308
+ }
20309
+ }
20310
+ ]
20311
+ },
20312
+ {
20313
+ "kind": "javascript-module",
20314
+ "path": "src/common/mixins/DraftComponentMixin.ts",
20315
+ "declarations": [
20316
+ {
20317
+ "kind": "mixin",
20318
+ "description": "",
20319
+ "name": "DraftComponentMixin",
20320
+ "members": [
20256
20321
  {
20257
- "name": "condition",
20322
+ "kind": "field",
20323
+ "name": "_warningLogged",
20258
20324
  "type": {
20259
- "text": "false"
20260
- }
20261
- },
20325
+ "text": "boolean"
20326
+ },
20327
+ "privacy": "private",
20328
+ "static": true,
20329
+ "default": "false"
20330
+ }
20331
+ ],
20332
+ "parameters": [
20262
20333
  {
20263
- "name": "trueCase",
20334
+ "name": "superClass",
20264
20335
  "type": {
20265
- "text": "any"
20336
+ "text": "T"
20266
20337
  }
20267
20338
  }
20268
- ],
20269
- "description": "condition is false, to will always return nothing"
20270
- },
20339
+ ]
20340
+ }
20341
+ ],
20342
+ "exports": [
20271
20343
  {
20272
- "kind": "function",
20273
- "name": "cond",
20274
- "return": {
20275
- "type": {
20276
- "text": "typeof trueCase | typeof falseCase"
20277
- }
20278
- },
20279
- "parameters": [
20344
+ "kind": "js",
20345
+ "name": "DraftComponentMixin",
20346
+ "declaration": {
20347
+ "name": "DraftComponentMixin",
20348
+ "module": "src/common/mixins/DraftComponentMixin.ts"
20349
+ }
20350
+ }
20351
+ ]
20352
+ },
20353
+ {
20354
+ "kind": "javascript-module",
20355
+ "path": "src/common/mixins/FloatingComponentMixin.ts",
20356
+ "declarations": [
20357
+ {
20358
+ "kind": "class",
20359
+ "description": "",
20360
+ "name": "FloatingMixinInterface",
20361
+ "members": [
20280
20362
  {
20281
- "name": "condition",
20363
+ "kind": "field",
20364
+ "name": "open",
20282
20365
  "type": {
20283
- "text": "unknown"
20366
+ "text": "boolean"
20284
20367
  }
20285
20368
  },
20286
20369
  {
20287
- "name": "trueCase",
20370
+ "kind": "field",
20371
+ "name": "align",
20288
20372
  "type": {
20289
- "text": "any"
20373
+ "text": "Alignment"
20290
20374
  }
20291
20375
  },
20292
20376
  {
20293
- "name": "falseCase",
20377
+ "kind": "field",
20378
+ "name": "position",
20294
20379
  "type": {
20295
- "text": "any"
20380
+ "text": "LogicalSide | 'auto'"
20296
20381
  }
20297
20382
  }
20298
- ],
20299
- "description": "if condition is truthy, return trueCase, otherwise return falseCase"
20383
+ ]
20300
20384
  },
20301
20385
  {
20302
- "kind": "function",
20303
- "name": "cond",
20304
- "return": {
20305
- "type": {
20306
- "text": "typeof trueCase"
20307
- }
20308
- },
20309
- "parameters": [
20386
+ "kind": "mixin",
20387
+ "description": "",
20388
+ "name": "FloatingMixin",
20389
+ "members": [
20310
20390
  {
20311
- "name": "condition",
20391
+ "kind": "field",
20392
+ "name": "open",
20312
20393
  "type": {
20313
- "text": "true"
20314
- }
20394
+ "text": "boolean"
20395
+ },
20396
+ "default": "false",
20397
+ "description": "Controls whether the component is open or not.",
20398
+ "attribute": "open",
20399
+ "reflects": true
20315
20400
  },
20316
20401
  {
20317
- "name": "trueCase",
20402
+ "kind": "field",
20403
+ "name": "align",
20318
20404
  "type": {
20319
- "text": "any"
20320
- }
20405
+ "text": "'start' | 'end'"
20406
+ },
20407
+ "default": "'start'",
20408
+ "description": "Set the alignment in relation to the toggle (or anchor) depending on the position.\n`start` will align it to the left of the toggle (or anchor).\n`end` will align it to the right of the toggle (or anchor).\nSetting the `position` to `inline-start` or `inline-end` will switch\n`start` and `end` to the top and bottom respectively.",
20409
+ "attribute": "align",
20410
+ "reflects": true
20321
20411
  },
20322
20412
  {
20323
- "name": "falseCase",
20413
+ "kind": "field",
20414
+ "name": "position",
20324
20415
  "type": {
20325
- "text": "any"
20326
- }
20416
+ "text": "'block-end' | 'block-start' | 'inline-start' | 'inline-end' | 'auto'"
20417
+ },
20418
+ "default": "'block-end'",
20419
+ "description": "Set the position in relation to the toggle (or anchor).\nOptions follow logical properties.\n`block-start` and `block-end` referring to top and bottom respectively,\n`inline-start` and `inline-end` referring to left and right respectively.\nYou can also set it to `auto` for automatic positioning depending on\nwhich side has the most space available.",
20420
+ "attribute": "position",
20421
+ "reflects": true
20327
20422
  }
20328
20423
  ],
20329
- "description": "condition is true, so always return trueCase"
20330
- },
20331
- {
20332
- "kind": "function",
20333
- "name": "cond",
20334
- "return": {
20335
- "type": {
20336
- "text": "typeof falseCase"
20337
- }
20338
- },
20339
- "parameters": [
20424
+ "attributes": [
20340
20425
  {
20341
- "name": "condition",
20426
+ "name": "open",
20342
20427
  "type": {
20343
- "text": "false"
20344
- }
20428
+ "text": "boolean"
20429
+ },
20430
+ "default": "false",
20431
+ "description": "Controls whether the component is open or not.",
20432
+ "fieldName": "open"
20345
20433
  },
20346
20434
  {
20347
- "name": "trueCase",
20435
+ "name": "align",
20348
20436
  "type": {
20349
- "text": "any"
20350
- }
20437
+ "text": "'start' | 'end'"
20438
+ },
20439
+ "default": "'start'",
20440
+ "description": "Set the alignment in relation to the toggle (or anchor) depending on the position.\n`start` will align it to the left of the toggle (or anchor).\n`end` will align it to the right of the toggle (or anchor).\nSetting the `position` to `inline-start` or `inline-end` will switch\n`start` and `end` to the top and bottom respectively.",
20441
+ "fieldName": "align"
20351
20442
  },
20352
20443
  {
20353
- "name": "falseCase",
20444
+ "name": "position",
20354
20445
  "type": {
20355
- "text": "any"
20356
- }
20446
+ "text": "'block-end' | 'block-start' | 'inline-start' | 'inline-end' | 'auto'"
20447
+ },
20448
+ "default": "'block-end'",
20449
+ "description": "Set the position in relation to the toggle (or anchor).\nOptions follow logical properties.\n`block-start` and `block-end` referring to top and bottom respectively,\n`inline-start` and `inline-end` referring to left and right respectively.\nYou can also set it to `auto` for automatic positioning depending on\nwhich side has the most space available.",
20450
+ "fieldName": "position"
20357
20451
  }
20358
20452
  ],
20359
- "description": "condition is false, so always return falseCase"
20360
- },
20361
- {
20362
- "kind": "function",
20363
- "name": "cond",
20364
20453
  "parameters": [
20365
20454
  {
20366
- "name": "condition",
20455
+ "name": "superClass",
20367
20456
  "type": {
20368
- "text": "unknown"
20369
- }
20370
- },
20371
- {
20372
- "name": "trueCase",
20373
- "default": "condition",
20374
- "type": {
20375
- "text": "any"
20376
- }
20377
- },
20378
- {
20379
- "name": "falseCase",
20380
- "default": "nothing",
20381
- "type": {
20382
- "text": "any"
20457
+ "text": "T"
20383
20458
  }
20384
20459
  }
20385
20460
  ]
@@ -20388,490 +20463,287 @@
20388
20463
  "exports": [
20389
20464
  {
20390
20465
  "kind": "js",
20391
- "name": "cond",
20392
- "declaration": {
20393
- "name": "cond",
20394
- "module": "src/common/directives/cond.ts"
20395
- }
20396
- },
20397
- {
20398
- "kind": "js",
20399
- "name": "cond",
20400
- "declaration": {
20401
- "name": "cond",
20402
- "module": "src/common/directives/cond.ts"
20403
- }
20404
- },
20405
- {
20406
- "kind": "js",
20407
- "name": "cond",
20408
- "declaration": {
20409
- "name": "cond",
20410
- "module": "src/common/directives/cond.ts"
20411
- }
20412
- },
20413
- {
20414
- "kind": "js",
20415
- "name": "cond",
20416
- "declaration": {
20417
- "name": "cond",
20418
- "module": "src/common/directives/cond.ts"
20419
- }
20420
- },
20421
- {
20422
- "kind": "js",
20423
- "name": "cond",
20424
- "declaration": {
20425
- "name": "cond",
20426
- "module": "src/common/directives/cond.ts"
20427
- }
20428
- },
20429
- {
20430
- "kind": "js",
20431
- "name": "cond",
20432
- "declaration": {
20433
- "name": "cond",
20434
- "module": "src/common/directives/cond.ts"
20435
- }
20436
- },
20437
- {
20438
- "kind": "js",
20439
- "name": "cond",
20466
+ "name": "FloatingMixinInterface",
20440
20467
  "declaration": {
20441
- "name": "cond",
20442
- "module": "src/common/directives/cond.ts"
20468
+ "name": "FloatingMixinInterface",
20469
+ "module": "src/common/mixins/FloatingComponentMixin.ts"
20443
20470
  }
20444
20471
  },
20445
20472
  {
20446
20473
  "kind": "js",
20447
- "name": "cond",
20474
+ "name": "FloatingMixin",
20448
20475
  "declaration": {
20449
- "name": "cond",
20450
- "module": "src/common/directives/cond.ts"
20476
+ "name": "FloatingMixin",
20477
+ "module": "src/common/mixins/FloatingComponentMixin.ts"
20451
20478
  }
20452
20479
  }
20453
20480
  ]
20454
20481
  },
20455
20482
  {
20456
20483
  "kind": "javascript-module",
20457
- "path": "src/common/directives/wrapIf.ts",
20484
+ "path": "src/common/mixins/FocusableMixin.ts",
20458
20485
  "declarations": [
20459
20486
  {
20460
- "kind": "function",
20461
- "name": "wrapIf",
20462
- "return": {
20463
- "type": {
20464
- "text": "TInner"
20465
- }
20466
- },
20467
- "parameters": [
20487
+ "kind": "class",
20488
+ "description": "",
20489
+ "name": "FocusableMixinInterface",
20490
+ "members": [
20468
20491
  {
20469
- "name": "condition",
20492
+ "kind": "field",
20493
+ "name": "focusableRef",
20470
20494
  "type": {
20471
- "text": "false"
20472
- }
20495
+ "text": "Ref<HTMLElement>"
20496
+ },
20497
+ "privacy": "protected"
20473
20498
  },
20474
20499
  {
20475
- "name": "inner",
20476
- "type": {
20477
- "text": "() => TInner"
20500
+ "kind": "method",
20501
+ "name": "focus",
20502
+ "return": {
20503
+ "type": {
20504
+ "text": "void"
20505
+ }
20506
+ },
20507
+ "parameters": [
20508
+ {
20509
+ "name": "options",
20510
+ "optional": true,
20511
+ "type": {
20512
+ "text": "FocusOptions"
20513
+ }
20514
+ }
20515
+ ]
20516
+ },
20517
+ {
20518
+ "kind": "method",
20519
+ "name": "blur",
20520
+ "return": {
20521
+ "type": {
20522
+ "text": "void"
20523
+ }
20478
20524
  }
20479
20525
  },
20480
20526
  {
20481
- "name": "wrapper",
20482
- "type": {
20483
- "text": "(inner: TInner) => TWrapper"
20527
+ "kind": "method",
20528
+ "name": "click",
20529
+ "return": {
20530
+ "type": {
20531
+ "text": "void"
20532
+ }
20484
20533
  }
20485
20534
  }
20486
20535
  ]
20487
20536
  },
20488
20537
  {
20489
- "kind": "function",
20490
- "name": "wrapIf",
20491
- "return": {
20492
- "type": {
20493
- "text": "TWrapper"
20494
- }
20495
- },
20496
- "parameters": [
20538
+ "kind": "mixin",
20539
+ "description": "",
20540
+ "name": "FocusableMixin",
20541
+ "members": [
20497
20542
  {
20498
- "name": "condition",
20499
- "type": {
20500
- "text": "true"
20501
- }
20543
+ "kind": "field",
20544
+ "name": "focusableRef",
20545
+ "privacy": "protected"
20502
20546
  },
20503
20547
  {
20504
- "name": "inner",
20505
- "type": {
20506
- "text": "() => TInner"
20507
- }
20548
+ "kind": "method",
20549
+ "name": "focus",
20550
+ "parameters": [
20551
+ {
20552
+ "name": "options",
20553
+ "optional": true,
20554
+ "type": {
20555
+ "text": "FocusOptions"
20556
+ },
20557
+ "description": "An object which controls aspects of the focusing process."
20558
+ }
20559
+ ],
20560
+ "description": "Programmatically move focus to the component."
20508
20561
  },
20509
20562
  {
20510
- "name": "wrapper",
20563
+ "kind": "method",
20564
+ "name": "blur",
20565
+ "description": "Programmatically remove focus from the component."
20566
+ },
20567
+ {
20568
+ "kind": "method",
20569
+ "name": "click",
20570
+ "description": "Programmatically simulates a click on the component."
20571
+ }
20572
+ ],
20573
+ "parameters": [
20574
+ {
20575
+ "name": "superClass",
20511
20576
  "type": {
20512
- "text": "(inner: TInner) => TWrapper"
20577
+ "text": "T"
20513
20578
  }
20514
20579
  }
20515
20580
  ]
20581
+ }
20582
+ ],
20583
+ "exports": [
20584
+ {
20585
+ "kind": "js",
20586
+ "name": "FocusableMixinInterface",
20587
+ "declaration": {
20588
+ "name": "FocusableMixinInterface",
20589
+ "module": "src/common/mixins/FocusableMixin.ts"
20590
+ }
20516
20591
  },
20517
20592
  {
20518
- "kind": "function",
20519
- "name": "wrapIf",
20520
- "return": {
20521
- "type": {
20522
- "text": "TInner | TWrapper"
20523
- }
20524
- },
20525
- "parameters": [
20593
+ "kind": "js",
20594
+ "name": "FocusableMixin",
20595
+ "declaration": {
20596
+ "name": "FocusableMixin",
20597
+ "module": "src/common/mixins/FocusableMixin.ts"
20598
+ }
20599
+ }
20600
+ ]
20601
+ },
20602
+ {
20603
+ "kind": "javascript-module",
20604
+ "path": "src/common/mixins/FormAssociatedMixin.ts",
20605
+ "declarations": [
20606
+ {
20607
+ "kind": "class",
20608
+ "description": "",
20609
+ "name": "FormAssociatedMixinInterface",
20610
+ "members": [
20526
20611
  {
20527
- "name": "condition",
20612
+ "kind": "field",
20613
+ "name": "label",
20528
20614
  "type": {
20529
- "text": "unknown"
20615
+ "text": "string"
20530
20616
  }
20531
20617
  },
20532
20618
  {
20533
- "name": "inner",
20619
+ "kind": "field",
20620
+ "name": "required",
20534
20621
  "type": {
20535
- "text": "() => TInner"
20622
+ "text": "boolean"
20536
20623
  }
20537
20624
  },
20538
20625
  {
20539
- "name": "wrapper",
20626
+ "kind": "field",
20627
+ "name": "hideRequired",
20540
20628
  "type": {
20541
- "text": "(inner: TInner) => TWrapper"
20629
+ "text": "boolean"
20542
20630
  }
20543
- }
20544
- ]
20545
- },
20546
- {
20547
- "kind": "function",
20548
- "name": "wrapIf",
20549
- "parameters": [
20631
+ },
20550
20632
  {
20551
- "name": "condition",
20633
+ "kind": "field",
20634
+ "name": "hint",
20552
20635
  "type": {
20553
- "text": "any"
20636
+ "text": "string | undefined"
20554
20637
  }
20555
20638
  },
20556
20639
  {
20557
- "name": "inner",
20640
+ "kind": "field",
20641
+ "name": "hideLabel",
20558
20642
  "type": {
20559
- "text": "() => TInner"
20643
+ "text": "boolean"
20560
20644
  }
20561
20645
  },
20562
20646
  {
20563
- "name": "wrapper",
20647
+ "kind": "field",
20648
+ "name": "placeholder",
20564
20649
  "type": {
20565
- "text": "(innards: TInner) => TWrapper"
20650
+ "text": "string | undefined"
20566
20651
  }
20567
- }
20568
- ],
20569
- "return": {
20570
- "type": {
20571
- "text": ""
20572
- }
20573
- }
20574
- }
20575
- ],
20576
- "exports": [
20577
- {
20578
- "kind": "js",
20579
- "name": "wrapIf",
20580
- "declaration": {
20581
- "name": "wrapIf",
20582
- "module": "src/common/directives/wrapIf.ts"
20583
- }
20584
- },
20585
- {
20586
- "kind": "js",
20587
- "name": "wrapIf",
20588
- "declaration": {
20589
- "name": "wrapIf",
20590
- "module": "src/common/directives/wrapIf.ts"
20591
- }
20592
- },
20593
- {
20594
- "kind": "js",
20595
- "name": "wrapIf",
20596
- "declaration": {
20597
- "name": "wrapIf",
20598
- "module": "src/common/directives/wrapIf.ts"
20599
- }
20600
- },
20601
- {
20602
- "kind": "js",
20603
- "name": "wrapIf",
20604
- "declaration": {
20605
- "name": "wrapIf",
20606
- "module": "src/common/directives/wrapIf.ts"
20607
- }
20608
- }
20609
- ]
20610
- },
20611
- {
20612
- "kind": "javascript-module",
20613
- "path": "src/common/mixins/AutocompleteMixin.ts",
20614
- "declarations": [
20615
- {
20616
- "kind": "class",
20617
- "description": "",
20618
- "name": "AutocompleteMixinInterface",
20619
- "members": [
20652
+ },
20620
20653
  {
20621
20654
  "kind": "field",
20622
- "name": "autocomplete",
20655
+ "name": "error",
20623
20656
  "type": {
20624
- "text": "AutocompleteAttribute"
20657
+ "text": "string | undefined"
20625
20658
  }
20626
- }
20627
- ]
20628
- },
20629
- {
20630
- "kind": "mixin",
20631
- "description": "",
20632
- "name": "AutocompleteMixin",
20633
- "members": [
20659
+ },
20634
20660
  {
20635
20661
  "kind": "field",
20636
- "name": "autocomplete",
20637
- "type": {
20638
- "text": "AutocompleteAttribute"
20639
- },
20640
- "default": "'off'",
20641
- "description": "Specifies the data type of the field, so that the browser may attempt to fill out the field automatically on behalf of the user.",
20642
- "attribute": "autocomplete"
20643
- }
20644
- ],
20645
- "attributes": [
20646
- {
20647
- "name": "autocomplete",
20662
+ "name": "inputId",
20648
20663
  "type": {
20649
- "text": "AutocompleteAttribute"
20664
+ "text": "string"
20650
20665
  },
20651
- "default": "'off'",
20652
- "description": "Specifies the data type of the field, so that the browser may attempt to fill out the field automatically on behalf of the user.",
20653
- "fieldName": "autocomplete"
20654
- }
20655
- ],
20656
- "parameters": [
20657
- {
20658
- "name": "superClass",
20659
- "type": {
20660
- "text": "T"
20661
- }
20662
- }
20663
- ]
20664
- }
20665
- ],
20666
- "exports": [
20667
- {
20668
- "kind": "js",
20669
- "name": "AutocompleteMixinInterface",
20670
- "declaration": {
20671
- "name": "AutocompleteMixinInterface",
20672
- "module": "src/common/mixins/AutocompleteMixin.ts"
20673
- }
20674
- },
20675
- {
20676
- "kind": "js",
20677
- "name": "AutocompleteMixin",
20678
- "declaration": {
20679
- "name": "AutocompleteMixin",
20680
- "module": "src/common/mixins/AutocompleteMixin.ts"
20681
- }
20682
- }
20683
- ]
20684
- },
20685
- {
20686
- "kind": "javascript-module",
20687
- "path": "src/common/mixins/DraftComponentMixin.ts",
20688
- "declarations": [
20689
- {
20690
- "kind": "mixin",
20691
- "description": "",
20692
- "name": "DraftComponentMixin",
20693
- "members": [
20666
+ "privacy": "protected"
20667
+ },
20694
20668
  {
20695
20669
  "kind": "field",
20696
- "name": "_warningLogged",
20670
+ "name": "errorId",
20697
20671
  "type": {
20698
- "text": "boolean"
20672
+ "text": "string"
20699
20673
  },
20700
- "privacy": "private",
20701
- "static": true,
20702
- "default": "false"
20703
- }
20704
- ],
20705
- "parameters": [
20706
- {
20707
- "name": "superClass",
20708
- "type": {
20709
- "text": "T"
20710
- }
20711
- }
20712
- ]
20713
- }
20714
- ],
20715
- "exports": [
20716
- {
20717
- "kind": "js",
20718
- "name": "DraftComponentMixin",
20719
- "declaration": {
20720
- "name": "DraftComponentMixin",
20721
- "module": "src/common/mixins/DraftComponentMixin.ts"
20722
- }
20723
- }
20724
- ]
20725
- },
20726
- {
20727
- "kind": "javascript-module",
20728
- "path": "src/common/mixins/FloatingComponentMixin.ts",
20729
- "declarations": [
20730
- {
20731
- "kind": "class",
20732
- "description": "",
20733
- "name": "FloatingMixinInterface",
20734
- "members": [
20674
+ "privacy": "protected"
20675
+ },
20735
20676
  {
20736
20677
  "kind": "field",
20737
- "name": "open",
20678
+ "name": "hintId",
20738
20679
  "type": {
20739
- "text": "boolean"
20740
- }
20680
+ "text": "string"
20681
+ },
20682
+ "privacy": "protected"
20741
20683
  },
20742
20684
  {
20743
20685
  "kind": "field",
20744
- "name": "align",
20686
+ "name": "labelSlot",
20745
20687
  "type": {
20746
- "text": "Alignment"
20747
- }
20688
+ "text": "SlotController"
20689
+ },
20690
+ "privacy": "protected"
20748
20691
  },
20749
20692
  {
20750
20693
  "kind": "field",
20751
- "name": "position",
20694
+ "name": "hintSlot",
20752
20695
  "type": {
20753
- "text": "LogicalSide | 'auto'"
20754
- }
20755
- }
20756
- ]
20757
- },
20758
- {
20759
- "kind": "mixin",
20760
- "description": "",
20761
- "name": "FloatingMixin",
20762
- "members": [
20696
+ "text": "SlotController"
20697
+ },
20698
+ "privacy": "protected"
20699
+ },
20763
20700
  {
20764
20701
  "kind": "field",
20765
- "name": "open",
20702
+ "name": "errorSlot",
20766
20703
  "type": {
20767
- "text": "boolean"
20704
+ "text": "SlotController"
20768
20705
  },
20769
- "default": "false",
20770
- "description": "Controls whether the component is open or not.",
20771
- "attribute": "open",
20772
- "reflects": true
20706
+ "privacy": "protected"
20773
20707
  },
20774
20708
  {
20775
20709
  "kind": "field",
20776
- "name": "align",
20710
+ "name": "formData",
20777
20711
  "type": {
20778
- "text": "'start' | 'end'"
20712
+ "text": "FormDataController"
20779
20713
  },
20780
- "default": "'start'",
20781
- "description": "Set the alignment in relation to the toggle (or anchor) depending on the position.\n`start` will align it to the left of the toggle (or anchor).\n`end` will align it to the right of the toggle (or anchor).\nSetting the `position` to `inline-start` or `inline-end` will switch\n`start` and `end` to the top and bottom respectively.",
20782
- "attribute": "align",
20783
- "reflects": true
20714
+ "privacy": "protected"
20784
20715
  },
20785
20716
  {
20786
20717
  "kind": "field",
20787
- "name": "position",
20718
+ "name": "formValue",
20788
20719
  "type": {
20789
- "text": "'block-end' | 'block-start' | 'inline-start' | 'inline-end' | 'auto'"
20720
+ "text": "string | undefined"
20790
20721
  },
20791
- "default": "'block-end'",
20792
- "description": "Set the position in relation to the toggle (or anchor).\nOptions follow logical properties.\n`block-start` and `block-end` referring to top and bottom respectively,\n`inline-start` and `inline-end` referring to left and right respectively.\nYou can also set it to `auto` for automatic positioning depending on\nwhich side has the most space available.",
20793
- "attribute": "position",
20794
- "reflects": true
20795
- }
20796
- ],
20797
- "attributes": [
20722
+ "privacy": "protected",
20723
+ "readonly": true
20724
+ },
20798
20725
  {
20799
- "name": "open",
20726
+ "kind": "field",
20727
+ "name": "hasError",
20800
20728
  "type": {
20801
20729
  "text": "boolean"
20802
20730
  },
20803
- "default": "false",
20804
- "description": "Controls whether the component is open or not.",
20805
- "fieldName": "open"
20731
+ "privacy": "protected",
20732
+ "readonly": true
20806
20733
  },
20807
20734
  {
20808
- "name": "align",
20735
+ "kind": "field",
20736
+ "name": "hasHint",
20809
20737
  "type": {
20810
- "text": "'start' | 'end'"
20738
+ "text": "boolean"
20811
20739
  },
20812
- "default": "'start'",
20813
- "description": "Set the alignment in relation to the toggle (or anchor) depending on the position.\n`start` will align it to the left of the toggle (or anchor).\n`end` will align it to the right of the toggle (or anchor).\nSetting the `position` to `inline-start` or `inline-end` will switch\n`start` and `end` to the top and bottom respectively.",
20814
- "fieldName": "align"
20815
- },
20816
- {
20817
- "name": "position",
20818
- "type": {
20819
- "text": "'block-end' | 'block-start' | 'inline-start' | 'inline-end' | 'auto'"
20820
- },
20821
- "default": "'block-end'",
20822
- "description": "Set the position in relation to the toggle (or anchor).\nOptions follow logical properties.\n`block-start` and `block-end` referring to top and bottom respectively,\n`inline-start` and `inline-end` referring to left and right respectively.\nYou can also set it to `auto` for automatic positioning depending on\nwhich side has the most space available.",
20823
- "fieldName": "position"
20824
- }
20825
- ],
20826
- "parameters": [
20827
- {
20828
- "name": "superClass",
20829
- "type": {
20830
- "text": "T"
20831
- }
20832
- }
20833
- ]
20834
- }
20835
- ],
20836
- "exports": [
20837
- {
20838
- "kind": "js",
20839
- "name": "FloatingMixinInterface",
20840
- "declaration": {
20841
- "name": "FloatingMixinInterface",
20842
- "module": "src/common/mixins/FloatingComponentMixin.ts"
20843
- }
20844
- },
20845
- {
20846
- "kind": "js",
20847
- "name": "FloatingMixin",
20848
- "declaration": {
20849
- "name": "FloatingMixin",
20850
- "module": "src/common/mixins/FloatingComponentMixin.ts"
20851
- }
20852
- }
20853
- ]
20854
- },
20855
- {
20856
- "kind": "javascript-module",
20857
- "path": "src/common/mixins/FocusableMixin.ts",
20858
- "declarations": [
20859
- {
20860
- "kind": "class",
20861
- "description": "",
20862
- "name": "FocusableMixinInterface",
20863
- "members": [
20864
- {
20865
- "kind": "field",
20866
- "name": "focusableRef",
20867
- "type": {
20868
- "text": "Ref<HTMLElement>"
20869
- },
20870
- "privacy": "protected"
20740
+ "privacy": "protected",
20741
+ "readonly": true
20871
20742
  },
20872
20743
  {
20873
20744
  "kind": "method",
20874
- "name": "focus",
20745
+ "name": "handleChange",
20746
+ "privacy": "protected",
20875
20747
  "return": {
20876
20748
  "type": {
20877
20749
  "text": "void"
@@ -20879,156 +20751,116 @@
20879
20751
  },
20880
20752
  "parameters": [
20881
20753
  {
20882
- "name": "options",
20883
- "optional": true,
20754
+ "name": "e",
20884
20755
  "type": {
20885
- "text": "FocusOptions"
20756
+ "text": "Event"
20886
20757
  }
20887
20758
  }
20888
20759
  ]
20889
20760
  },
20890
20761
  {
20891
20762
  "kind": "method",
20892
- "name": "blur",
20763
+ "name": "handleInput",
20764
+ "privacy": "protected",
20893
20765
  "return": {
20894
20766
  "type": {
20895
20767
  "text": "void"
20896
20768
  }
20897
- }
20769
+ },
20770
+ "parameters": [
20771
+ {
20772
+ "name": "e",
20773
+ "type": {
20774
+ "text": "Event"
20775
+ }
20776
+ }
20777
+ ]
20898
20778
  },
20899
20779
  {
20900
20780
  "kind": "method",
20901
- "name": "click",
20781
+ "name": "renderLabel",
20782
+ "privacy": "protected",
20902
20783
  "return": {
20903
20784
  "type": {
20904
- "text": "void"
20785
+ "text": "TemplateResult"
20905
20786
  }
20906
- }
20907
- }
20908
- ]
20909
- },
20910
- {
20911
- "kind": "mixin",
20912
- "description": "",
20913
- "name": "FocusableMixin",
20914
- "members": [
20915
- {
20916
- "kind": "field",
20917
- "name": "focusableRef",
20918
- "privacy": "protected"
20919
- },
20920
- {
20921
- "kind": "method",
20922
- "name": "focus",
20787
+ },
20923
20788
  "parameters": [
20924
20789
  {
20925
- "name": "options",
20790
+ "name": "additionalContent",
20926
20791
  "optional": true,
20927
20792
  "type": {
20928
- "text": "FocusOptions"
20929
- },
20930
- "description": "An object which controls aspects of the focusing process."
20793
+ "text": "TemplateResult"
20794
+ }
20931
20795
  }
20932
- ],
20933
- "description": "Programmatically move focus to the component."
20796
+ ]
20934
20797
  },
20935
20798
  {
20936
20799
  "kind": "method",
20937
- "name": "blur",
20938
- "description": "Programmatically remove focus from the component."
20800
+ "name": "renderError",
20801
+ "privacy": "protected",
20802
+ "return": {
20803
+ "type": {
20804
+ "text": "TemplateResult"
20805
+ }
20806
+ }
20939
20807
  },
20940
20808
  {
20941
20809
  "kind": "method",
20942
- "name": "click",
20943
- "description": "Programmatically simulates a click on the component."
20944
- }
20945
- ],
20946
- "parameters": [
20810
+ "name": "getDescribedBy",
20811
+ "privacy": "protected",
20812
+ "return": {
20813
+ "type": {
20814
+ "text": "string | undefined"
20815
+ }
20816
+ }
20817
+ },
20947
20818
  {
20948
- "name": "superClass",
20949
- "type": {
20950
- "text": "T"
20819
+ "kind": "method",
20820
+ "name": "getInvalid",
20821
+ "privacy": "protected",
20822
+ "return": {
20823
+ "type": {
20824
+ "text": "'true' | undefined"
20825
+ }
20951
20826
  }
20952
20827
  }
20953
20828
  ]
20954
- }
20955
- ],
20956
- "exports": [
20957
- {
20958
- "kind": "js",
20959
- "name": "FocusableMixinInterface",
20960
- "declaration": {
20961
- "name": "FocusableMixinInterface",
20962
- "module": "src/common/mixins/FocusableMixin.ts"
20963
- }
20964
20829
  },
20965
20830
  {
20966
- "kind": "js",
20967
- "name": "FocusableMixin",
20968
- "declaration": {
20969
- "name": "FocusableMixin",
20970
- "module": "src/common/mixins/FocusableMixin.ts"
20971
- }
20972
- }
20973
- ]
20974
- },
20975
- {
20976
- "kind": "javascript-module",
20977
- "path": "src/common/mixins/FormAssociatedMixin.ts",
20978
- "declarations": [
20979
- {
20980
- "kind": "class",
20831
+ "kind": "mixin",
20981
20832
  "description": "",
20982
- "name": "FormAssociatedMixinInterface",
20833
+ "name": "FormAssociatedMixin",
20983
20834
  "members": [
20984
20835
  {
20985
20836
  "kind": "field",
20986
- "name": "label",
20987
- "type": {
20988
- "text": "string"
20989
- }
20990
- },
20991
- {
20992
- "kind": "field",
20993
- "name": "required",
20994
- "type": {
20995
- "text": "boolean"
20996
- }
20997
- },
20998
- {
20999
- "kind": "field",
21000
- "name": "hideRequired",
21001
- "type": {
21002
- "text": "boolean"
21003
- }
20837
+ "name": "labelSlot",
20838
+ "privacy": "protected",
20839
+ "default": "new SlotController(this, 'label')"
21004
20840
  },
21005
20841
  {
21006
20842
  "kind": "field",
21007
- "name": "hint",
21008
- "type": {
21009
- "text": "string | undefined"
21010
- }
20843
+ "name": "errorSlot",
20844
+ "privacy": "protected",
20845
+ "default": "new SlotController(this, 'error')"
21011
20846
  },
21012
20847
  {
21013
20848
  "kind": "field",
21014
- "name": "hideLabel",
21015
- "type": {
21016
- "text": "boolean"
21017
- }
20849
+ "name": "hintSlot",
20850
+ "privacy": "protected",
20851
+ "default": "new SlotController(this, 'hint')"
21018
20852
  },
21019
20853
  {
21020
20854
  "kind": "field",
21021
- "name": "placeholder",
21022
- "type": {
21023
- "text": "string | undefined"
21024
- }
20855
+ "name": "formData",
20856
+ "privacy": "protected",
20857
+ "default": "new FormDataController(this, { value: () => this.formValue })"
21025
20858
  },
21026
20859
  {
21027
20860
  "kind": "field",
21028
- "name": "error",
21029
- "type": {
21030
- "text": "string | undefined"
21031
- }
20861
+ "name": "formValue",
20862
+ "privacy": "protected",
20863
+ "readonly": true
21032
20864
  },
21033
20865
  {
21034
20866
  "kind": "field",
@@ -21036,7 +20868,8 @@
21036
20868
  "type": {
21037
20869
  "text": "string"
21038
20870
  },
21039
- "privacy": "protected"
20871
+ "privacy": "protected",
20872
+ "default": "'input'"
21040
20873
  },
21041
20874
  {
21042
20875
  "kind": "field",
@@ -21044,7 +20877,8 @@
21044
20877
  "type": {
21045
20878
  "text": "string"
21046
20879
  },
21047
- "privacy": "protected"
20880
+ "privacy": "protected",
20881
+ "default": "'error'"
21048
20882
  },
21049
20883
  {
21050
20884
  "kind": "field",
@@ -21052,261 +20886,54 @@
21052
20886
  "type": {
21053
20887
  "text": "string"
21054
20888
  },
21055
- "privacy": "protected"
20889
+ "privacy": "protected",
20890
+ "default": "'hint'"
21056
20891
  },
21057
20892
  {
21058
20893
  "kind": "field",
21059
- "name": "labelSlot",
20894
+ "name": "label",
21060
20895
  "type": {
21061
- "text": "SlotController"
20896
+ "text": "string"
21062
20897
  },
21063
- "privacy": "protected"
20898
+ "default": "''",
20899
+ "description": "Label for the input.",
20900
+ "attribute": "label",
20901
+ "reflects": true
21064
20902
  },
21065
20903
  {
21066
20904
  "kind": "field",
21067
- "name": "hintSlot",
20905
+ "name": "hint",
21068
20906
  "type": {
21069
- "text": "SlotController"
20907
+ "text": "string | undefined"
21070
20908
  },
21071
- "privacy": "protected"
20909
+ "description": "Optional hint text to be displayed with the input. Alternatively use the hint slot.",
20910
+ "attribute": "hint",
20911
+ "reflects": true
21072
20912
  },
21073
20913
  {
21074
20914
  "kind": "field",
21075
- "name": "errorSlot",
20915
+ "name": "hideLabel",
21076
20916
  "type": {
21077
- "text": "SlotController"
20917
+ "text": "boolean"
21078
20918
  },
21079
- "privacy": "protected"
20919
+ "default": "false",
20920
+ "description": "Visually hide the label, but still show it to assistive technologies like screen readers.",
20921
+ "attribute": "hide-label",
20922
+ "reflects": true
21080
20923
  },
21081
20924
  {
21082
20925
  "kind": "field",
21083
- "name": "formData",
20926
+ "name": "placeholder",
21084
20927
  "type": {
21085
- "text": "FormDataController"
20928
+ "text": "string | undefined"
21086
20929
  },
21087
- "privacy": "protected"
20930
+ "description": "Placeholder text to display within the input.",
20931
+ "attribute": "placeholder",
20932
+ "reflects": true
21088
20933
  },
21089
20934
  {
21090
20935
  "kind": "field",
21091
- "name": "formValue",
21092
- "type": {
21093
- "text": "string | undefined"
21094
- },
21095
- "privacy": "protected",
21096
- "readonly": true
21097
- },
21098
- {
21099
- "kind": "field",
21100
- "name": "hasError",
21101
- "type": {
21102
- "text": "boolean"
21103
- },
21104
- "privacy": "protected",
21105
- "readonly": true
21106
- },
21107
- {
21108
- "kind": "field",
21109
- "name": "hasHint",
21110
- "type": {
21111
- "text": "boolean"
21112
- },
21113
- "privacy": "protected",
21114
- "readonly": true
21115
- },
21116
- {
21117
- "kind": "method",
21118
- "name": "handleChange",
21119
- "privacy": "protected",
21120
- "return": {
21121
- "type": {
21122
- "text": "void"
21123
- }
21124
- },
21125
- "parameters": [
21126
- {
21127
- "name": "e",
21128
- "type": {
21129
- "text": "Event"
21130
- }
21131
- }
21132
- ]
21133
- },
21134
- {
21135
- "kind": "method",
21136
- "name": "handleInput",
21137
- "privacy": "protected",
21138
- "return": {
21139
- "type": {
21140
- "text": "void"
21141
- }
21142
- },
21143
- "parameters": [
21144
- {
21145
- "name": "e",
21146
- "type": {
21147
- "text": "Event"
21148
- }
21149
- }
21150
- ]
21151
- },
21152
- {
21153
- "kind": "method",
21154
- "name": "renderLabel",
21155
- "privacy": "protected",
21156
- "return": {
21157
- "type": {
21158
- "text": "TemplateResult"
21159
- }
21160
- },
21161
- "parameters": [
21162
- {
21163
- "name": "additionalContent",
21164
- "optional": true,
21165
- "type": {
21166
- "text": "TemplateResult"
21167
- }
21168
- }
21169
- ]
21170
- },
21171
- {
21172
- "kind": "method",
21173
- "name": "renderError",
21174
- "privacy": "protected",
21175
- "return": {
21176
- "type": {
21177
- "text": "TemplateResult"
21178
- }
21179
- }
21180
- },
21181
- {
21182
- "kind": "method",
21183
- "name": "getDescribedBy",
21184
- "privacy": "protected",
21185
- "return": {
21186
- "type": {
21187
- "text": "string | undefined"
21188
- }
21189
- }
21190
- },
21191
- {
21192
- "kind": "method",
21193
- "name": "getInvalid",
21194
- "privacy": "protected",
21195
- "return": {
21196
- "type": {
21197
- "text": "'true' | undefined"
21198
- }
21199
- }
21200
- }
21201
- ]
21202
- },
21203
- {
21204
- "kind": "mixin",
21205
- "description": "",
21206
- "name": "FormAssociatedMixin",
21207
- "members": [
21208
- {
21209
- "kind": "field",
21210
- "name": "labelSlot",
21211
- "privacy": "protected",
21212
- "default": "new SlotController(this, 'label')"
21213
- },
21214
- {
21215
- "kind": "field",
21216
- "name": "errorSlot",
21217
- "privacy": "protected",
21218
- "default": "new SlotController(this, 'error')"
21219
- },
21220
- {
21221
- "kind": "field",
21222
- "name": "hintSlot",
21223
- "privacy": "protected",
21224
- "default": "new SlotController(this, 'hint')"
21225
- },
21226
- {
21227
- "kind": "field",
21228
- "name": "formData",
21229
- "privacy": "protected",
21230
- "default": "new FormDataController(this, { value: () => this.formValue })"
21231
- },
21232
- {
21233
- "kind": "field",
21234
- "name": "formValue",
21235
- "privacy": "protected",
21236
- "readonly": true
21237
- },
21238
- {
21239
- "kind": "field",
21240
- "name": "inputId",
21241
- "type": {
21242
- "text": "string"
21243
- },
21244
- "privacy": "protected",
21245
- "default": "'input'"
21246
- },
21247
- {
21248
- "kind": "field",
21249
- "name": "errorId",
21250
- "type": {
21251
- "text": "string"
21252
- },
21253
- "privacy": "protected",
21254
- "default": "'error'"
21255
- },
21256
- {
21257
- "kind": "field",
21258
- "name": "hintId",
21259
- "type": {
21260
- "text": "string"
21261
- },
21262
- "privacy": "protected",
21263
- "default": "'hint'"
21264
- },
21265
- {
21266
- "kind": "field",
21267
- "name": "label",
21268
- "type": {
21269
- "text": "string"
21270
- },
21271
- "default": "''",
21272
- "description": "Label for the input.",
21273
- "attribute": "label",
21274
- "reflects": true
21275
- },
21276
- {
21277
- "kind": "field",
21278
- "name": "hint",
21279
- "type": {
21280
- "text": "string | undefined"
21281
- },
21282
- "description": "Optional hint text to be displayed with the input. Alternatively use the hint slot.",
21283
- "attribute": "hint",
21284
- "reflects": true
21285
- },
21286
- {
21287
- "kind": "field",
21288
- "name": "hideLabel",
21289
- "type": {
21290
- "text": "boolean"
21291
- },
21292
- "default": "false",
21293
- "description": "Visually hide the label, but still show it to assistive technologies like screen readers.",
21294
- "attribute": "hide-label",
21295
- "reflects": true
21296
- },
21297
- {
21298
- "kind": "field",
21299
- "name": "placeholder",
21300
- "type": {
21301
- "text": "string | undefined"
21302
- },
21303
- "description": "Placeholder text to display within the input.",
21304
- "attribute": "placeholder",
21305
- "reflects": true
21306
- },
21307
- {
21308
- "kind": "field",
21309
- "name": "error",
20936
+ "name": "error",
21310
20937
  "type": {
21311
20938
  "text": "string | undefined"
21312
20939
  },
@@ -22175,6 +21802,440 @@
22175
21802
  }
22176
21803
  }
22177
21804
  ]
21805
+ },
21806
+ {
21807
+ "kind": "javascript-module",
21808
+ "path": "src/common/directives/cond.ts",
21809
+ "declarations": [
21810
+ {
21811
+ "kind": "function",
21812
+ "name": "cond",
21813
+ "return": {
21814
+ "type": {
21815
+ "text": "typeof value | typeof nothing"
21816
+ }
21817
+ },
21818
+ "parameters": [
21819
+ {
21820
+ "name": "value",
21821
+ "type": {
21822
+ "text": "any"
21823
+ }
21824
+ }
21825
+ ],
21826
+ "description": "if value is truthy, return it, otherwise return nothing"
21827
+ },
21828
+ {
21829
+ "kind": "function",
21830
+ "name": "cond",
21831
+ "return": {
21832
+ "type": {
21833
+ "text": "typeof trueCase | typeof nothing"
21834
+ }
21835
+ },
21836
+ "parameters": [
21837
+ {
21838
+ "name": "condition",
21839
+ "type": {
21840
+ "text": "unknown"
21841
+ }
21842
+ },
21843
+ {
21844
+ "name": "trueCase",
21845
+ "type": {
21846
+ "text": "any"
21847
+ }
21848
+ }
21849
+ ],
21850
+ "description": "if condition is truthy, return trueCase, otherwise return nothing"
21851
+ },
21852
+ {
21853
+ "kind": "function",
21854
+ "name": "cond",
21855
+ "return": {
21856
+ "type": {
21857
+ "text": "typeof trueCase"
21858
+ }
21859
+ },
21860
+ "parameters": [
21861
+ {
21862
+ "name": "condition",
21863
+ "type": {
21864
+ "text": "true"
21865
+ }
21866
+ },
21867
+ {
21868
+ "name": "trueCase",
21869
+ "type": {
21870
+ "text": "any"
21871
+ }
21872
+ }
21873
+ ],
21874
+ "description": "condition is true, so always return trueCase"
21875
+ },
21876
+ {
21877
+ "kind": "function",
21878
+ "name": "cond",
21879
+ "return": {
21880
+ "type": {
21881
+ "text": "typeof nothing"
21882
+ }
21883
+ },
21884
+ "parameters": [
21885
+ {
21886
+ "name": "condition",
21887
+ "type": {
21888
+ "text": "false"
21889
+ }
21890
+ },
21891
+ {
21892
+ "name": "trueCase",
21893
+ "type": {
21894
+ "text": "any"
21895
+ }
21896
+ }
21897
+ ],
21898
+ "description": "condition is false, to will always return nothing"
21899
+ },
21900
+ {
21901
+ "kind": "function",
21902
+ "name": "cond",
21903
+ "return": {
21904
+ "type": {
21905
+ "text": "typeof trueCase | typeof falseCase"
21906
+ }
21907
+ },
21908
+ "parameters": [
21909
+ {
21910
+ "name": "condition",
21911
+ "type": {
21912
+ "text": "unknown"
21913
+ }
21914
+ },
21915
+ {
21916
+ "name": "trueCase",
21917
+ "type": {
21918
+ "text": "any"
21919
+ }
21920
+ },
21921
+ {
21922
+ "name": "falseCase",
21923
+ "type": {
21924
+ "text": "any"
21925
+ }
21926
+ }
21927
+ ],
21928
+ "description": "if condition is truthy, return trueCase, otherwise return falseCase"
21929
+ },
21930
+ {
21931
+ "kind": "function",
21932
+ "name": "cond",
21933
+ "return": {
21934
+ "type": {
21935
+ "text": "typeof trueCase"
21936
+ }
21937
+ },
21938
+ "parameters": [
21939
+ {
21940
+ "name": "condition",
21941
+ "type": {
21942
+ "text": "true"
21943
+ }
21944
+ },
21945
+ {
21946
+ "name": "trueCase",
21947
+ "type": {
21948
+ "text": "any"
21949
+ }
21950
+ },
21951
+ {
21952
+ "name": "falseCase",
21953
+ "type": {
21954
+ "text": "any"
21955
+ }
21956
+ }
21957
+ ],
21958
+ "description": "condition is true, so always return trueCase"
21959
+ },
21960
+ {
21961
+ "kind": "function",
21962
+ "name": "cond",
21963
+ "return": {
21964
+ "type": {
21965
+ "text": "typeof falseCase"
21966
+ }
21967
+ },
21968
+ "parameters": [
21969
+ {
21970
+ "name": "condition",
21971
+ "type": {
21972
+ "text": "false"
21973
+ }
21974
+ },
21975
+ {
21976
+ "name": "trueCase",
21977
+ "type": {
21978
+ "text": "any"
21979
+ }
21980
+ },
21981
+ {
21982
+ "name": "falseCase",
21983
+ "type": {
21984
+ "text": "any"
21985
+ }
21986
+ }
21987
+ ],
21988
+ "description": "condition is false, so always return falseCase"
21989
+ },
21990
+ {
21991
+ "kind": "function",
21992
+ "name": "cond",
21993
+ "parameters": [
21994
+ {
21995
+ "name": "condition",
21996
+ "type": {
21997
+ "text": "unknown"
21998
+ }
21999
+ },
22000
+ {
22001
+ "name": "trueCase",
22002
+ "default": "condition",
22003
+ "type": {
22004
+ "text": "any"
22005
+ }
22006
+ },
22007
+ {
22008
+ "name": "falseCase",
22009
+ "default": "nothing",
22010
+ "type": {
22011
+ "text": "any"
22012
+ }
22013
+ }
22014
+ ]
22015
+ }
22016
+ ],
22017
+ "exports": [
22018
+ {
22019
+ "kind": "js",
22020
+ "name": "cond",
22021
+ "declaration": {
22022
+ "name": "cond",
22023
+ "module": "src/common/directives/cond.ts"
22024
+ }
22025
+ },
22026
+ {
22027
+ "kind": "js",
22028
+ "name": "cond",
22029
+ "declaration": {
22030
+ "name": "cond",
22031
+ "module": "src/common/directives/cond.ts"
22032
+ }
22033
+ },
22034
+ {
22035
+ "kind": "js",
22036
+ "name": "cond",
22037
+ "declaration": {
22038
+ "name": "cond",
22039
+ "module": "src/common/directives/cond.ts"
22040
+ }
22041
+ },
22042
+ {
22043
+ "kind": "js",
22044
+ "name": "cond",
22045
+ "declaration": {
22046
+ "name": "cond",
22047
+ "module": "src/common/directives/cond.ts"
22048
+ }
22049
+ },
22050
+ {
22051
+ "kind": "js",
22052
+ "name": "cond",
22053
+ "declaration": {
22054
+ "name": "cond",
22055
+ "module": "src/common/directives/cond.ts"
22056
+ }
22057
+ },
22058
+ {
22059
+ "kind": "js",
22060
+ "name": "cond",
22061
+ "declaration": {
22062
+ "name": "cond",
22063
+ "module": "src/common/directives/cond.ts"
22064
+ }
22065
+ },
22066
+ {
22067
+ "kind": "js",
22068
+ "name": "cond",
22069
+ "declaration": {
22070
+ "name": "cond",
22071
+ "module": "src/common/directives/cond.ts"
22072
+ }
22073
+ },
22074
+ {
22075
+ "kind": "js",
22076
+ "name": "cond",
22077
+ "declaration": {
22078
+ "name": "cond",
22079
+ "module": "src/common/directives/cond.ts"
22080
+ }
22081
+ }
22082
+ ]
22083
+ },
22084
+ {
22085
+ "kind": "javascript-module",
22086
+ "path": "src/common/directives/wrapIf.ts",
22087
+ "declarations": [
22088
+ {
22089
+ "kind": "function",
22090
+ "name": "wrapIf",
22091
+ "return": {
22092
+ "type": {
22093
+ "text": "TInner"
22094
+ }
22095
+ },
22096
+ "parameters": [
22097
+ {
22098
+ "name": "condition",
22099
+ "type": {
22100
+ "text": "false"
22101
+ }
22102
+ },
22103
+ {
22104
+ "name": "inner",
22105
+ "type": {
22106
+ "text": "() => TInner"
22107
+ }
22108
+ },
22109
+ {
22110
+ "name": "wrapper",
22111
+ "type": {
22112
+ "text": "(inner: TInner) => TWrapper"
22113
+ }
22114
+ }
22115
+ ]
22116
+ },
22117
+ {
22118
+ "kind": "function",
22119
+ "name": "wrapIf",
22120
+ "return": {
22121
+ "type": {
22122
+ "text": "TWrapper"
22123
+ }
22124
+ },
22125
+ "parameters": [
22126
+ {
22127
+ "name": "condition",
22128
+ "type": {
22129
+ "text": "true"
22130
+ }
22131
+ },
22132
+ {
22133
+ "name": "inner",
22134
+ "type": {
22135
+ "text": "() => TInner"
22136
+ }
22137
+ },
22138
+ {
22139
+ "name": "wrapper",
22140
+ "type": {
22141
+ "text": "(inner: TInner) => TWrapper"
22142
+ }
22143
+ }
22144
+ ]
22145
+ },
22146
+ {
22147
+ "kind": "function",
22148
+ "name": "wrapIf",
22149
+ "return": {
22150
+ "type": {
22151
+ "text": "TInner | TWrapper"
22152
+ }
22153
+ },
22154
+ "parameters": [
22155
+ {
22156
+ "name": "condition",
22157
+ "type": {
22158
+ "text": "unknown"
22159
+ }
22160
+ },
22161
+ {
22162
+ "name": "inner",
22163
+ "type": {
22164
+ "text": "() => TInner"
22165
+ }
22166
+ },
22167
+ {
22168
+ "name": "wrapper",
22169
+ "type": {
22170
+ "text": "(inner: TInner) => TWrapper"
22171
+ }
22172
+ }
22173
+ ]
22174
+ },
22175
+ {
22176
+ "kind": "function",
22177
+ "name": "wrapIf",
22178
+ "parameters": [
22179
+ {
22180
+ "name": "condition",
22181
+ "type": {
22182
+ "text": "any"
22183
+ }
22184
+ },
22185
+ {
22186
+ "name": "inner",
22187
+ "type": {
22188
+ "text": "() => TInner"
22189
+ }
22190
+ },
22191
+ {
22192
+ "name": "wrapper",
22193
+ "type": {
22194
+ "text": "(innards: TInner) => TWrapper"
22195
+ }
22196
+ }
22197
+ ],
22198
+ "return": {
22199
+ "type": {
22200
+ "text": ""
22201
+ }
22202
+ }
22203
+ }
22204
+ ],
22205
+ "exports": [
22206
+ {
22207
+ "kind": "js",
22208
+ "name": "wrapIf",
22209
+ "declaration": {
22210
+ "name": "wrapIf",
22211
+ "module": "src/common/directives/wrapIf.ts"
22212
+ }
22213
+ },
22214
+ {
22215
+ "kind": "js",
22216
+ "name": "wrapIf",
22217
+ "declaration": {
22218
+ "name": "wrapIf",
22219
+ "module": "src/common/directives/wrapIf.ts"
22220
+ }
22221
+ },
22222
+ {
22223
+ "kind": "js",
22224
+ "name": "wrapIf",
22225
+ "declaration": {
22226
+ "name": "wrapIf",
22227
+ "module": "src/common/directives/wrapIf.ts"
22228
+ }
22229
+ },
22230
+ {
22231
+ "kind": "js",
22232
+ "name": "wrapIf",
22233
+ "declaration": {
22234
+ "name": "wrapIf",
22235
+ "module": "src/common/directives/wrapIf.ts"
22236
+ }
22237
+ }
22238
+ ]
22178
22239
  }
22179
22240
  ]
22180
22241
  }