@momentum-design/components 0.27.1 → 0.27.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.
@@ -1192,33 +1192,48 @@
1192
1192
  },
1193
1193
  {
1194
1194
  "kind": "javascript-module",
1195
- "path": "components/buttonsimple/buttonsimple.component.js",
1195
+ "path": "components/button/button.component.js",
1196
1196
  "declarations": [
1197
1197
  {
1198
1198
  "kind": "class",
1199
- "description": "`mdc-buttonsimple` is a component that can be configured in various ways to suit different use cases.\nIt is used as an internal component and is not intended to be used directly by consumers.\nConsumers should use the `mdc-button` component instead.",
1200
- "name": "Buttonsimple",
1199
+ "description": "`mdc-button` is a component that can be configured in various ways to suit different use cases.\n\nButton Variants:\n- **Primary**: Solid background color.\n- **Secondary**: Transparent background with a solid border.\n- **Tertiary**: No background or border, appears as plain text but retains all button functionalities.\n\nButton Colors:\n- **Positive**: Green color.\n- **Negative**: Red color.\n- **Accent**: Blue color.\n- **Promotional**: Purple color.\n- **Default**: White color.\n\nButton Sizes (in REM units):\n- **Pill button**: 40, 32, 28, 24.\n- **Icon button**: 64, 52, 40, 32, 28, 24.\n- **Tertiary icon button**: 20.\n\nButton Types:\n- **Pill button**: A button that contains text value. Commonly used for call to action, tags, or filters.\n- **Pill button with icons**: A button containing an icon either on the left or right side of the button.\n- **Icon button**: A button represented by just an icon without any text.\nThe type of button is inferred based on the presence of slot and/or prefix and postfix icons.",
1200
+ "name": "Button",
1201
+ "slots": [
1202
+ {
1203
+ "description": "Text label of the button.",
1204
+ "name": ""
1205
+ }
1206
+ ],
1201
1207
  "members": [
1202
1208
  {
1203
1209
  "kind": "field",
1204
- "name": "active",
1210
+ "name": "prefixIcon",
1205
1211
  "type": {
1206
- "text": "boolean"
1212
+ "text": "string | undefined"
1207
1213
  },
1208
- "default": "false",
1209
- "description": "The button's active state indicates whether it is currently toggled on (active) or off (inactive).\nWhen the active state is true, the button is considered to be in an active state, meaning it is toggled on.\nConversely, when the active state is false, the button is in an inactive state, indicating it is toggled off.",
1210
- "attribute": "active",
1214
+ "description": "The name of the icon to display as a prefix.\nThe icon is displayed on the left side of the button.",
1215
+ "attribute": "prefix-icon",
1211
1216
  "reflects": true
1212
1217
  },
1213
1218
  {
1214
1219
  "kind": "field",
1215
- "name": "softDisabled",
1220
+ "name": "postfixIcon",
1216
1221
  "type": {
1217
- "text": "boolean"
1222
+ "text": "string | undefined"
1218
1223
  },
1219
- "default": "false",
1220
- "description": "Indicates whether the button is soft disabled.\nWhen set to `true`, the button appears visually disabled but still allows\nfocus, click, and keyboard actions to be passed through.\n\n**Important:** When using soft disabled, consumers must ensure that\nthe button behaves like a disabled button, allowing only focus and\npreventing any interactions (clicks or keyboard actions) from triggering unintended actions.",
1221
- "attribute": "soft-disabled"
1224
+ "description": "The name of the icon to display as a postfix.\nThe icon is displayed on the right side of the button.",
1225
+ "attribute": "postfix-icon",
1226
+ "reflects": true
1227
+ },
1228
+ {
1229
+ "kind": "field",
1230
+ "name": "variant",
1231
+ "type": {
1232
+ "text": "ButtonVariant"
1233
+ },
1234
+ "description": "There are 3 variants of button: primary, secondary, tertiary. They are styled differently.\n- **Primary**: Solid background color.\n- **Secondary**: Transparent background with a solid border.\n- **Tertiary**: No background or border, appears as plain text but retains all button functionalities.",
1235
+ "default": "primary",
1236
+ "attribute": "variant"
1222
1237
  },
1223
1238
  {
1224
1239
  "kind": "field",
@@ -1226,135 +1241,111 @@
1226
1241
  "type": {
1227
1242
  "text": "ButtonSize"
1228
1243
  },
1229
- "description": "Simplebutton size is a super set of all the sizes supported by children components.",
1244
+ "description": "Button sizing is based on the button type.\n- **Pill button**: 40, 32, 28, 24.\n- **Icon button**: 64, 52, 40, 32, 28, 24.\n- Tertiary icon button can also be 20.",
1230
1245
  "default": "32",
1231
1246
  "attribute": "size",
1232
- "reflects": true
1247
+ "reflects": true,
1248
+ "inheritedFrom": {
1249
+ "name": "Buttonsimple",
1250
+ "module": "components/buttonsimple/buttonsimple.component.js"
1251
+ }
1233
1252
  },
1234
1253
  {
1235
1254
  "kind": "field",
1236
- "name": "role",
1237
- "description": "This property defines the ARIA role for the element. By default, it is set to 'button'.\nConsumers should override this role when:\n- The element is being used in a context where a different role is more appropriate.\n- Custom behaviors are implemented that require a specific ARIA role for accessibility purposes.",
1238
- "default": "button",
1239
- "attribute": "role",
1240
- "reflects": true
1255
+ "name": "color",
1256
+ "type": {
1257
+ "text": "ButtonColor"
1258
+ },
1259
+ "description": "There are 5 colors for button: positive, negative, accent, promotional, default.",
1260
+ "default": "default",
1261
+ "attribute": "color"
1241
1262
  },
1242
1263
  {
1243
1264
  "kind": "field",
1244
- "name": "type",
1265
+ "name": "role",
1266
+ "description": "This property defines the ARIA role for the element. By default, it is set to 'button'.\nConsumers should override this role when:\n- The element is being used in a context where a different role is more appropriate.\n- Custom behaviors are implemented that require a specific ARIA role for accessibility purposes.",
1267
+ "default": "'button'",
1268
+ "attribute": "role",
1269
+ "reflects": true,
1245
1270
  "type": {
1246
- "text": "ButtonType"
1271
+ "text": "string"
1247
1272
  },
1248
- "description": "This property defines the type attribute for the button element.\nThe type attribute specifies the behavior of the button when it is clicked.\n- **submit**: The button submits the form data to the server.\n- **reset**: The button resets the form data to its initial state.\n- **button**: The button does nothing when clicked.",
1249
- "default": "button",
1250
- "attribute": "type",
1251
- "reflects": true
1252
- },
1253
- {
1254
- "kind": "method",
1255
- "name": "executeAction",
1256
- "privacy": "protected"
1273
+ "inheritedFrom": {
1274
+ "name": "Buttonsimple",
1275
+ "module": "components/buttonsimple/buttonsimple.component.js"
1276
+ }
1257
1277
  },
1258
1278
  {
1259
1279
  "kind": "method",
1260
- "name": "setActive",
1261
- "privacy": "protected",
1280
+ "name": "modifyIconName",
1281
+ "privacy": "private",
1262
1282
  "parameters": [
1263
- {
1264
- "name": "element",
1265
- "type": {
1266
- "text": "HTMLElement"
1267
- },
1268
- "description": "The button element"
1269
- },
1270
1283
  {
1271
1284
  "name": "active",
1272
1285
  "type": {
1273
1286
  "text": "boolean"
1274
1287
  },
1275
- "description": "The active state of the element"
1288
+ "description": "The active state."
1276
1289
  }
1277
1290
  ],
1278
- "description": "Sets the aria-pressed attribute based on the active state of the button."
1291
+ "description": "Modifies the icon name based on the active state.\nIf the button is active, the icon name is suffixed with '-filled'.\nIf the button is inactive, the icon name is restored to its original value.\nIf '-filled' icon is not available, the icon name remains unchanged."
1279
1292
  },
1280
1293
  {
1281
1294
  "kind": "method",
1282
- "name": "setSoftDisabled",
1295
+ "name": "setVariant",
1283
1296
  "privacy": "private",
1284
1297
  "parameters": [
1285
1298
  {
1286
- "name": "element",
1287
- "type": {
1288
- "text": "HTMLElement"
1289
- },
1290
- "description": "The button element."
1291
- },
1292
- {
1293
- "name": "softDisabled",
1299
+ "name": "variant",
1294
1300
  "type": {
1295
- "text": "boolean"
1301
+ "text": "ButtonVariant"
1296
1302
  },
1297
- "description": "The soft-disabled state."
1303
+ "description": "The variant to set."
1298
1304
  }
1299
1305
  ],
1300
- "description": "Sets the soft-disabled attribute for the button.\nWhen soft-disabled, the button looks to be disabled but remains focusable and clickable.\nAlso sets/removes aria-disabled attribute."
1306
+ "description": "Sets the variant attribute for the button component.\nIf the provided variant is not included in the BUTTON_VARIANTS,\nit defaults to the value specified in DEFAULTS.VARIANT."
1301
1307
  },
1302
1308
  {
1303
1309
  "kind": "method",
1304
- "name": "setDisabled",
1310
+ "name": "setSize",
1305
1311
  "privacy": "private",
1306
1312
  "parameters": [
1307
1313
  {
1308
- "name": "element",
1309
- "type": {
1310
- "text": "HTMLElement"
1311
- },
1312
- "description": "The button element."
1313
- },
1314
- {
1315
- "name": "disabled",
1314
+ "name": "size",
1316
1315
  "type": {
1317
- "text": "boolean"
1316
+ "text": "PillButtonSize | IconButtonSize"
1318
1317
  },
1319
- "description": "The disabled state."
1318
+ "description": "The size to set."
1320
1319
  }
1321
1320
  ],
1322
- "description": "Sets the disabled attribute for the button.\nWhen disabled, the button is not focusable or clickable, and tabindex is set to -1.\nThe previous tabindex is stored and restored when enabled.\nAlso sets/removes aria-disabled attribute."
1323
- },
1324
- {
1325
- "kind": "method",
1326
- "name": "triggerClickEvent",
1327
- "privacy": "private"
1321
+ "description": "Sets the size attribute for the button component.\nValidates the size based on the button type (icon, pill, or tertiary).\nDefaults to DEFAULTS.SIZE if invalid."
1328
1322
  },
1329
1323
  {
1330
1324
  "kind": "method",
1331
- "name": "handleKeyDown",
1325
+ "name": "setColor",
1332
1326
  "privacy": "private",
1333
1327
  "parameters": [
1334
1328
  {
1335
- "name": "event",
1329
+ "name": "color",
1336
1330
  "type": {
1337
- "text": "KeyboardEvent"
1331
+ "text": "ButtonColor"
1338
1332
  },
1339
- "description": "The keyboard event."
1333
+ "description": "The color to set."
1340
1334
  }
1341
1335
  ],
1342
- "description": "Handles the keydown event on the button.\nIf the key is 'Enter' or 'Space', the button is pressed.\nIf the key is 'Enter', the button is pressed. The native HTML button works in the same way."
1336
+ "description": "Sets the color attribute for the button.\nDefaults to DEFAULTS.COLOR if invalid or for tertiary buttons."
1343
1337
  },
1344
1338
  {
1345
1339
  "kind": "method",
1346
- "name": "handleKeyUp",
1340
+ "name": "inferButtonType",
1347
1341
  "privacy": "private",
1342
+ "description": "Infers the type of button based on the presence of slot and/or prefix and postfix icons.",
1348
1343
  "parameters": [
1349
1344
  {
1350
- "name": "event",
1351
- "type": {
1352
- "text": "KeyboardEvent"
1353
- },
1354
- "description": "The keyboard event."
1345
+ "description": "default slot of button",
1346
+ "name": "slot"
1355
1347
  }
1356
- ],
1357
- "description": "Handles the keyup event on the button.\nIf the key is 'Enter' or 'Space', the button is clicked.\nIf the key is 'Space', the button is pressed. The native HTML button works in the same way."
1348
+ ]
1358
1349
  },
1359
1350
  {
1360
1351
  "kind": "field",
@@ -1385,238 +1376,170 @@
1385
1376
  "name": "DisabledMixin",
1386
1377
  "module": "utils/mixins/DisabledMixin.js"
1387
1378
  }
1388
- }
1389
- ],
1390
- "attributes": [
1379
+ },
1391
1380
  {
1381
+ "kind": "field",
1392
1382
  "name": "active",
1393
1383
  "type": {
1394
1384
  "text": "boolean"
1395
1385
  },
1396
1386
  "default": "false",
1397
1387
  "description": "The button's active state indicates whether it is currently toggled on (active) or off (inactive).\nWhen the active state is true, the button is considered to be in an active state, meaning it is toggled on.\nConversely, when the active state is false, the button is in an inactive state, indicating it is toggled off.",
1398
- "fieldName": "active"
1388
+ "attribute": "active",
1389
+ "reflects": true,
1390
+ "inheritedFrom": {
1391
+ "name": "Buttonsimple",
1392
+ "module": "components/buttonsimple/buttonsimple.component.js"
1393
+ }
1399
1394
  },
1400
1395
  {
1401
- "name": "soft-disabled",
1396
+ "kind": "field",
1397
+ "name": "softDisabled",
1402
1398
  "type": {
1403
1399
  "text": "boolean"
1404
1400
  },
1405
1401
  "default": "false",
1406
1402
  "description": "Indicates whether the button is soft disabled.\nWhen set to `true`, the button appears visually disabled but still allows\nfocus, click, and keyboard actions to be passed through.\n\n**Important:** When using soft disabled, consumers must ensure that\nthe button behaves like a disabled button, allowing only focus and\npreventing any interactions (clicks or keyboard actions) from triggering unintended actions.",
1407
- "fieldName": "softDisabled"
1408
- },
1409
- {
1410
- "name": "size",
1411
- "type": {
1412
- "text": "ButtonSize"
1413
- },
1414
- "description": "Simplebutton size is a super set of all the sizes supported by children components.",
1415
- "default": "32",
1416
- "fieldName": "size"
1417
- },
1418
- {
1419
- "name": "role",
1420
- "description": "This property defines the ARIA role for the element. By default, it is set to 'button'.\nConsumers should override this role when:\n- The element is being used in a context where a different role is more appropriate.\n- Custom behaviors are implemented that require a specific ARIA role for accessibility purposes.",
1421
- "default": "button",
1422
- "fieldName": "role"
1403
+ "attribute": "soft-disabled",
1404
+ "inheritedFrom": {
1405
+ "name": "Buttonsimple",
1406
+ "module": "components/buttonsimple/buttonsimple.component.js"
1407
+ }
1423
1408
  },
1424
1409
  {
1410
+ "kind": "field",
1425
1411
  "name": "type",
1426
1412
  "type": {
1427
1413
  "text": "ButtonType"
1428
1414
  },
1429
1415
  "description": "This property defines the type attribute for the button element.\nThe type attribute specifies the behavior of the button when it is clicked.\n- **submit**: The button submits the form data to the server.\n- **reset**: The button resets the form data to its initial state.\n- **button**: The button does nothing when clicked.",
1430
1416
  "default": "button",
1431
- "fieldName": "type"
1417
+ "attribute": "type",
1418
+ "reflects": true,
1419
+ "inheritedFrom": {
1420
+ "name": "Buttonsimple",
1421
+ "module": "components/buttonsimple/buttonsimple.component.js"
1422
+ }
1432
1423
  },
1433
1424
  {
1434
- "name": "tabIndex",
1435
- "type": {
1436
- "text": "number"
1437
- },
1438
- "default": "0",
1439
- "description": "This property specifies the tab order of the element.",
1440
- "fieldName": "tabIndex",
1425
+ "kind": "method",
1426
+ "name": "executeAction",
1427
+ "privacy": "protected",
1441
1428
  "inheritedFrom": {
1442
- "name": "TabIndexMixin",
1443
- "module": "src/utils/mixins/TabIndexMixin.ts"
1429
+ "name": "Buttonsimple",
1430
+ "module": "components/buttonsimple/buttonsimple.component.js"
1444
1431
  }
1445
1432
  },
1446
1433
  {
1447
- "name": "disabled",
1448
- "type": {
1449
- "text": "boolean"
1450
- },
1451
- "default": "false",
1452
- "description": "Indicates whether the component is disabled.\nWhen the component is disabled for user interaction; it is not focusable or clickable.",
1453
- "fieldName": "disabled",
1434
+ "kind": "method",
1435
+ "name": "setActive",
1436
+ "privacy": "protected",
1437
+ "parameters": [
1438
+ {
1439
+ "name": "element",
1440
+ "type": {
1441
+ "text": "HTMLElement"
1442
+ },
1443
+ "description": "The button element"
1444
+ },
1445
+ {
1446
+ "name": "active",
1447
+ "type": {
1448
+ "text": "boolean"
1449
+ },
1450
+ "description": "The active state of the element"
1451
+ }
1452
+ ],
1453
+ "description": "Sets the aria-pressed attribute based on the active state of the button.",
1454
1454
  "inheritedFrom": {
1455
- "name": "DisabledMixin",
1456
- "module": "src/utils/mixins/DisabledMixin.ts"
1455
+ "name": "Buttonsimple",
1456
+ "module": "components/buttonsimple/buttonsimple.component.js"
1457
1457
  }
1458
- }
1459
- ],
1460
- "mixins": [
1461
- {
1462
- "name": "TabIndexMixin",
1463
- "module": "/src/utils/mixins/TabIndexMixin"
1464
1458
  },
1465
1459
  {
1466
- "name": "DisabledMixin",
1467
- "module": "/src/utils/mixins/DisabledMixin"
1468
- }
1469
- ],
1470
- "superclass": {
1471
- "name": "Component",
1472
- "module": "/src/models"
1473
- },
1474
- "tagName": "mdc-buttonsimple",
1475
- "jsDoc": "/**\n * `mdc-buttonsimple` is a component that can be configured in various ways to suit different use cases.\n * It is used as an internal component and is not intended to be used directly by consumers.\n * Consumers should use the `mdc-button` component instead.\n *\n * @tagname mdc-buttonsimple\n */",
1476
- "customElement": true
1477
- }
1478
- ],
1479
- "exports": [
1480
- {
1481
- "kind": "js",
1482
- "name": "default",
1483
- "declaration": {
1484
- "name": "Buttonsimple",
1485
- "module": "components/buttonsimple/buttonsimple.component.js"
1486
- }
1487
- }
1488
- ]
1489
- },
1490
- {
1491
- "kind": "javascript-module",
1492
- "path": "components/checkbox/checkbox.component.js",
1493
- "declarations": [
1494
- {
1495
- "kind": "class",
1496
- "description": "Checkboxes allow users to select multiple options from a list or turn an item/feature on or off.\nThese are often used in forms, settings, and selections in lists.\n\nA checkbox component contains an optional label and an optional helper text.\n\nTo create a group of checkboxes, use the FormFieldGroup component.",
1497
- "name": "Checkbox",
1498
- "cssProperties": [
1499
- {
1500
- "description": "Allows customization of the background color on hover.",
1501
- "name": "--mdc-checkbox-background-color-hover"
1502
- },
1503
- {
1504
- "description": "Border color in high contrast.",
1505
- "name": "--mdc-checkbox-border-color"
1506
- },
1507
- {
1508
- "description": "Background color for a selected checkbox.",
1509
- "name": "--mdc-checkbox-checked-background-color"
1510
- },
1511
- {
1512
- "description": "Background color for a selected checkbox when hovered.",
1513
- "name": "--mdc-checkbox-checked-background-color-hover"
1514
- },
1515
- {
1516
- "description": "Background color for a selected checkbox when pressed.",
1517
- "name": "--mdc-checkbox-checked-pressed-icon-color"
1518
- },
1519
- {
1520
- "description": "Background color for a disabled checkbox.",
1521
- "name": "--mdc-checkbox-disabled-background-color"
1522
- },
1523
- {
1524
- "description": "Border color for a disabled checkbox.",
1525
- "name": "--mdc-checkbox-disabled-border-color"
1526
- },
1527
- {
1528
- "description": "Background color for a disabled, selected checkbox.",
1529
- "name": "--mdc-checkbox-disabled-checked-icon-color"
1530
- },
1531
- {
1532
- "description": "Icon color for a disabled checkbox.",
1533
- "name": "--mdc-checkbox-disabled-icon-color"
1534
- },
1535
- {
1536
- "description": "Background color for an unselected checkbox.",
1537
- "name": "--mdc-checkbox-icon-background-color"
1538
- },
1539
- {
1540
- "description": "Default background color for an unselected checkbox.",
1541
- "name": "--mdc-checkbox-icon-border-color"
1542
- },
1543
- {
1544
- "description": "Icon color for an unselected checkbox.",
1545
- "name": "--mdc-checkbox-icon-color"
1546
- },
1547
- {
1548
- "description": "Background color for a selected checkbox when pressed.",
1549
- "name": "--mdc-checkbox-pressed-icon-color"
1550
- }
1551
- ],
1552
- "members": [
1553
- {
1554
- "kind": "field",
1555
- "name": "checked",
1556
- "type": {
1557
- "text": "boolean"
1558
- },
1559
- "default": "false",
1560
- "description": "Determines whether the checkbox is selected or unselected.",
1561
- "attribute": "checked",
1562
- "reflects": true
1563
- },
1564
- {
1565
- "kind": "field",
1566
- "name": "indeterminate",
1567
- "type": {
1568
- "text": "boolean"
1569
- },
1570
- "default": "false",
1571
- "description": "This property is used to determine the parent checkbox in a nested checkbox group.\nIf any one of the children is unselected, then the parent checkbox will be indeterminate.\nIf all children are either selected or unselected, then the parent checkbox will not be indeterminate.",
1572
- "attribute": "indeterminate",
1573
- "reflects": true
1460
+ "kind": "method",
1461
+ "name": "setSoftDisabled",
1462
+ "privacy": "private",
1463
+ "parameters": [
1464
+ {
1465
+ "name": "element",
1466
+ "type": {
1467
+ "text": "HTMLElement"
1468
+ },
1469
+ "description": "The button element."
1470
+ },
1471
+ {
1472
+ "name": "softDisabled",
1473
+ "type": {
1474
+ "text": "boolean"
1475
+ },
1476
+ "description": "The soft-disabled state."
1477
+ }
1478
+ ],
1479
+ "description": "Sets the soft-disabled attribute for the button.\nWhen soft-disabled, the button looks to be disabled but remains focusable and clickable.\nAlso sets/removes aria-disabled attribute.",
1480
+ "inheritedFrom": {
1481
+ "name": "Buttonsimple",
1482
+ "module": "components/buttonsimple/buttonsimple.component.js"
1483
+ }
1574
1484
  },
1575
1485
  {
1576
1486
  "kind": "method",
1577
- "name": "setFormValue",
1487
+ "name": "setDisabled",
1578
1488
  "privacy": "private",
1579
- "description": "Updates the form value to reflect the current state of the checkbox.\nIf checked, the value is set to either the user-provided value or 'on' if no value is provided.\nIf unchecked, the value is set to null."
1489
+ "parameters": [
1490
+ {
1491
+ "name": "element",
1492
+ "type": {
1493
+ "text": "HTMLElement"
1494
+ },
1495
+ "description": "The button element."
1496
+ },
1497
+ {
1498
+ "name": "disabled",
1499
+ "type": {
1500
+ "text": "boolean"
1501
+ },
1502
+ "description": "The disabled state."
1503
+ }
1504
+ ],
1505
+ "description": "Sets the disabled attribute for the button.\nWhen disabled, the button is not focusable or clickable, and tabindex is set to -1.\nThe previous tabindex is stored and restored when enabled.\nAlso sets/removes aria-disabled attribute.",
1506
+ "inheritedFrom": {
1507
+ "name": "Buttonsimple",
1508
+ "module": "components/buttonsimple/buttonsimple.component.js"
1509
+ }
1580
1510
  },
1581
1511
  {
1582
1512
  "kind": "method",
1583
- "name": "toggleState",
1513
+ "name": "triggerClickEvent",
1584
1514
  "privacy": "private",
1585
- "return": {
1586
- "type": {
1587
- "text": "void"
1588
- }
1589
- },
1590
- "description": "Toggles the state of the checkbox element.\nIf the element is not disabled, then\nthe checked property is toggled and the indeterminate property is set to false."
1515
+ "inheritedFrom": {
1516
+ "name": "Buttonsimple",
1517
+ "module": "components/buttonsimple/buttonsimple.component.js"
1518
+ }
1591
1519
  },
1592
1520
  {
1593
1521
  "kind": "method",
1594
- "name": "handleChange",
1595
- "privacy": "public",
1596
- "return": {
1597
- "type": {
1598
- "text": "void"
1599
- }
1600
- },
1522
+ "name": "handleKeyDown",
1523
+ "privacy": "private",
1601
1524
  "parameters": [
1602
1525
  {
1603
1526
  "name": "event",
1604
1527
  "type": {
1605
- "text": "Event"
1606
- }
1528
+ "text": "KeyboardEvent"
1529
+ },
1530
+ "description": "The keyboard event."
1607
1531
  }
1608
1532
  ],
1609
- "description": "Toggles the state of the checkbox element.\nand dispatch the new change event."
1533
+ "description": "Handles the keydown event on the button.\nIf the key is 'Enter' or 'Space', the button is pressed.\nIf the key is 'Enter', the button is pressed. The native HTML button works in the same way.",
1534
+ "inheritedFrom": {
1535
+ "name": "Buttonsimple",
1536
+ "module": "components/buttonsimple/buttonsimple.component.js"
1537
+ }
1610
1538
  },
1611
1539
  {
1612
1540
  "kind": "method",
1613
- "name": "handleKeyDown",
1541
+ "name": "handleKeyUp",
1614
1542
  "privacy": "private",
1615
- "return": {
1616
- "type": {
1617
- "text": "void"
1618
- }
1619
- },
1620
1543
  "parameters": [
1621
1544
  {
1622
1545
  "name": "event",
@@ -1626,393 +1549,444 @@
1626
1549
  "description": "The keyboard event."
1627
1550
  }
1628
1551
  ],
1629
- "description": "Handles the keydown event on the checkbox.\nWhen the user presses Enter, the form is submitted."
1552
+ "description": "Handles the keyup event on the button.\nIf the key is 'Enter' or 'Space', the button is clicked.\nIf the key is 'Space', the button is pressed. The native HTML button works in the same way.",
1553
+ "inheritedFrom": {
1554
+ "name": "Buttonsimple",
1555
+ "module": "components/buttonsimple/buttonsimple.component.js"
1556
+ }
1557
+ }
1558
+ ],
1559
+ "attributes": [
1560
+ {
1561
+ "name": "prefix-icon",
1562
+ "type": {
1563
+ "text": "string | undefined"
1564
+ },
1565
+ "description": "The name of the icon to display as a prefix.\nThe icon is displayed on the left side of the button.",
1566
+ "fieldName": "prefixIcon"
1630
1567
  },
1631
1568
  {
1632
- "kind": "field",
1633
- "name": "internals"
1569
+ "name": "postfix-icon",
1570
+ "type": {
1571
+ "text": "string | undefined"
1572
+ },
1573
+ "description": "The name of the icon to display as a postfix.\nThe icon is displayed on the right side of the button.",
1574
+ "fieldName": "postfixIcon"
1634
1575
  },
1635
1576
  {
1636
- "kind": "field",
1637
- "name": "helpTextType",
1577
+ "name": "variant",
1638
1578
  "type": {
1639
- "text": "ValidationType"
1579
+ "text": "ButtonVariant"
1640
1580
  },
1641
- "description": "The type of help text. It can be 'default', 'error', 'warning', 'success', 'priority'.",
1642
- "attribute": "help-text-type",
1643
- "reflects": true,
1644
- "default": "undefined as unknown",
1645
- "inheritedFrom": {
1646
- "name": "FormfieldWrapper",
1647
- "module": "components/formfieldwrapper/formfieldwrapper.component.js"
1648
- }
1581
+ "description": "There are 3 variants of button: primary, secondary, tertiary. They are styled differently.\n- **Primary**: Solid background color.\n- **Secondary**: Transparent background with a solid border.\n- **Tertiary**: No background or border, appears as plain text but retains all button functionalities.",
1582
+ "default": "primary",
1583
+ "fieldName": "variant"
1649
1584
  },
1650
1585
  {
1651
- "kind": "field",
1652
- "name": "name",
1586
+ "name": "size",
1653
1587
  "type": {
1654
- "text": "string"
1588
+ "text": "ButtonSize"
1655
1589
  },
1656
- "default": "''",
1657
- "description": "Indicates the name of the component group (ex: checkbox, radio group).\nThey are used to group elements in a form together.",
1658
- "attribute": "name",
1659
- "reflects": true,
1590
+ "description": "Button sizing is based on the button type.\n- **Pill button**: 40, 32, 28, 24.\n- **Icon button**: 64, 52, 40, 32, 28, 24.\n- Tertiary icon button can also be 20.",
1591
+ "default": "32",
1592
+ "fieldName": "size",
1660
1593
  "inheritedFrom": {
1661
- "name": "NameMixin",
1662
- "module": "utils/mixins/NameMixin.js"
1594
+ "name": "Buttonsimple",
1595
+ "module": "src/components/buttonsimple/buttonsimple.component.ts"
1663
1596
  }
1664
1597
  },
1665
1598
  {
1666
- "kind": "field",
1667
- "name": "value",
1599
+ "name": "color",
1668
1600
  "type": {
1669
- "text": "string"
1601
+ "text": "ButtonColor"
1602
+ },
1603
+ "description": "There are 5 colors for button: positive, negative, accent, promotional, default.",
1604
+ "default": "default",
1605
+ "fieldName": "color"
1606
+ },
1607
+ {
1608
+ "name": "role",
1609
+ "description": "This property defines the ARIA role for the element. By default, it is set to 'button'.\nConsumers should override this role when:\n- The element is being used in a context where a different role is more appropriate.\n- Custom behaviors are implemented that require a specific ARIA role for accessibility purposes.",
1610
+ "default": "'button'",
1611
+ "fieldName": "role",
1612
+ "type": {
1613
+ "text": "string"
1670
1614
  },
1671
- "default": "''",
1672
- "description": "Indicates the value of the component group (ex: input, checkbox, radio, select etc...)",
1673
- "attribute": "value",
1674
- "reflects": true,
1675
1615
  "inheritedFrom": {
1676
- "name": "ValueMixin",
1677
- "module": "utils/mixins/ValueMixin.js"
1616
+ "name": "Buttonsimple",
1617
+ "module": "src/components/buttonsimple/buttonsimple.component.ts"
1678
1618
  }
1679
1619
  },
1680
1620
  {
1681
- "kind": "field",
1682
- "name": "dataAriaLabel",
1621
+ "name": "tabIndex",
1683
1622
  "type": {
1684
- "text": "string | null"
1623
+ "text": "number"
1685
1624
  },
1686
- "default": "null",
1687
- "description": "Defines a string value that labels the current element.\nThe Aria-Label attribute to be set for accessibility.",
1688
- "attribute": "data-aria-label",
1689
- "reflects": true,
1625
+ "default": "0",
1626
+ "description": "This property specifies the tab order of the element.",
1627
+ "fieldName": "tabIndex",
1690
1628
  "inheritedFrom": {
1691
- "name": "DataAriaLabelMixin",
1692
- "module": "utils/mixins/DataAriaLabelMixin.js"
1629
+ "name": "TabIndexMixin",
1630
+ "module": "src/utils/mixins/TabIndexMixin.ts"
1693
1631
  }
1694
1632
  },
1695
1633
  {
1696
- "kind": "field",
1697
1634
  "name": "disabled",
1698
1635
  "type": {
1699
1636
  "text": "boolean"
1700
1637
  },
1701
1638
  "default": "false",
1702
1639
  "description": "Indicates whether the component is disabled.\nWhen the component is disabled for user interaction; it is not focusable or clickable.",
1703
- "attribute": "disabled",
1704
- "reflects": true,
1640
+ "fieldName": "disabled",
1705
1641
  "inheritedFrom": {
1706
1642
  "name": "DisabledMixin",
1707
- "module": "utils/mixins/DisabledMixin.js"
1643
+ "module": "src/utils/mixins/DisabledMixin.ts"
1708
1644
  }
1709
1645
  },
1710
1646
  {
1711
- "kind": "field",
1712
- "name": "label",
1647
+ "name": "active",
1713
1648
  "type": {
1714
- "text": "string | undefined"
1649
+ "text": "boolean"
1715
1650
  },
1716
- "description": "The label of the input field. It is linked to the input field using the `for` attribute.",
1717
- "attribute": "label",
1718
- "reflects": true,
1651
+ "default": "false",
1652
+ "description": "The button's active state indicates whether it is currently toggled on (active) or off (inactive).\nWhen the active state is true, the button is considered to be in an active state, meaning it is toggled on.\nConversely, when the active state is false, the button is in an inactive state, indicating it is toggled off.",
1653
+ "fieldName": "active",
1719
1654
  "inheritedFrom": {
1720
- "name": "FormfieldWrapper",
1721
- "module": "components/formfieldwrapper/formfieldwrapper.component.js"
1655
+ "name": "Buttonsimple",
1656
+ "module": "src/components/buttonsimple/buttonsimple.component.ts"
1722
1657
  }
1723
1658
  },
1724
1659
  {
1725
- "kind": "field",
1726
- "name": "requiredLabel",
1660
+ "name": "soft-disabled",
1727
1661
  "type": {
1728
- "text": "string | undefined"
1662
+ "text": "boolean"
1729
1663
  },
1730
- "description": "The required label of the input field.\nWhen an appropriate string value is set,\nthe input field is marked as required and the label is appended with this text.",
1731
- "attribute": "required-label",
1732
- "reflects": true,
1664
+ "default": "false",
1665
+ "description": "Indicates whether the button is soft disabled.\nWhen set to `true`, the button appears visually disabled but still allows\nfocus, click, and keyboard actions to be passed through.\n\n**Important:** When using soft disabled, consumers must ensure that\nthe button behaves like a disabled button, allowing only focus and\npreventing any interactions (clicks or keyboard actions) from triggering unintended actions.",
1666
+ "fieldName": "softDisabled",
1733
1667
  "inheritedFrom": {
1734
- "name": "FormfieldWrapper",
1735
- "module": "components/formfieldwrapper/formfieldwrapper.component.js"
1668
+ "name": "Buttonsimple",
1669
+ "module": "src/components/buttonsimple/buttonsimple.component.ts"
1736
1670
  }
1737
1671
  },
1738
1672
  {
1739
- "kind": "field",
1740
- "name": "id",
1741
- "default": "`mdc-input-${uuidv4()}`",
1742
- "description": "The unique id of the input field. It is used to link the input field with the label.",
1743
- "attribute": "id",
1673
+ "name": "type",
1674
+ "type": {
1675
+ "text": "ButtonType"
1676
+ },
1677
+ "description": "This property defines the type attribute for the button element.\nThe type attribute specifies the behavior of the button when it is clicked.\n- **submit**: The button submits the form data to the server.\n- **reset**: The button resets the form data to its initial state.\n- **button**: The button does nothing when clicked.",
1678
+ "default": "button",
1679
+ "fieldName": "type",
1744
1680
  "inheritedFrom": {
1745
- "name": "FormfieldWrapper",
1746
- "module": "components/formfieldwrapper/formfieldwrapper.component.js"
1681
+ "name": "Buttonsimple",
1682
+ "module": "src/components/buttonsimple/buttonsimple.component.ts"
1747
1683
  }
1684
+ }
1685
+ ],
1686
+ "superclass": {
1687
+ "name": "Buttonsimple",
1688
+ "module": "/src/components/buttonsimple/buttonsimple.component"
1689
+ },
1690
+ "tagName": "mdc-button",
1691
+ "jsDoc": "/**\n * `mdc-button` is a component that can be configured in various ways to suit different use cases.\n *\n * Button Variants:\n * - **Primary**: Solid background color.\n * - **Secondary**: Transparent background with a solid border.\n * - **Tertiary**: No background or border, appears as plain text but retains all button functionalities.\n *\n * Button Colors:\n * - **Positive**: Green color.\n * - **Negative**: Red color.\n * - **Accent**: Blue color.\n * - **Promotional**: Purple color.\n * - **Default**: White color.\n *\n * Button Sizes (in REM units):\n * - **Pill button**: 40, 32, 28, 24.\n * - **Icon button**: 64, 52, 40, 32, 28, 24.\n * - **Tertiary icon button**: 20.\n *\n * Button Types:\n * - **Pill button**: A button that contains text value. Commonly used for call to action, tags, or filters.\n * - **Pill button with icons**: A button containing an icon either on the left or right side of the button.\n * - **Icon button**: A button represented by just an icon without any text.\n * The type of button is inferred based on the presence of slot and/or prefix and postfix icons.\n *\n * @dependency mdc-icon\n *\n * @tagname mdc-button\n *\n * @slot - Text label of the button.\n */",
1692
+ "customElement": true
1693
+ }
1694
+ ],
1695
+ "exports": [
1696
+ {
1697
+ "kind": "js",
1698
+ "name": "default",
1699
+ "declaration": {
1700
+ "name": "Button",
1701
+ "module": "components/button/button.component.js"
1702
+ }
1703
+ }
1704
+ ]
1705
+ },
1706
+ {
1707
+ "kind": "javascript-module",
1708
+ "path": "components/buttonsimple/buttonsimple.component.js",
1709
+ "declarations": [
1710
+ {
1711
+ "kind": "class",
1712
+ "description": "`mdc-buttonsimple` is a component that can be configured in various ways to suit different use cases.\nIt is used as an internal component and is not intended to be used directly by consumers.\nConsumers should use the `mdc-button` component instead.",
1713
+ "name": "Buttonsimple",
1714
+ "members": [
1715
+ {
1716
+ "kind": "field",
1717
+ "name": "active",
1718
+ "type": {
1719
+ "text": "boolean"
1720
+ },
1721
+ "default": "false",
1722
+ "description": "The button's active state indicates whether it is currently toggled on (active) or off (inactive).\nWhen the active state is true, the button is considered to be in an active state, meaning it is toggled on.\nConversely, when the active state is false, the button is in an inactive state, indicating it is toggled off.",
1723
+ "attribute": "active",
1724
+ "reflects": true
1748
1725
  },
1749
1726
  {
1750
1727
  "kind": "field",
1751
- "name": "helpText",
1728
+ "name": "softDisabled",
1752
1729
  "type": {
1753
- "text": "string | undefined"
1730
+ "text": "boolean"
1754
1731
  },
1755
- "description": "The help text that is displayed below the input field.",
1756
- "attribute": "help-text",
1757
- "reflects": true,
1758
- "inheritedFrom": {
1759
- "name": "FormfieldWrapper",
1760
- "module": "components/formfieldwrapper/formfieldwrapper.component.js"
1761
- }
1732
+ "default": "false",
1733
+ "description": "Indicates whether the button is soft disabled.\nWhen set to `true`, the button appears visually disabled but still allows\nfocus, click, and keyboard actions to be passed through.\n\n**Important:** When using soft disabled, consumers must ensure that\nthe button behaves like a disabled button, allowing only focus and\npreventing any interactions (clicks or keyboard actions) from triggering unintended actions.",
1734
+ "attribute": "soft-disabled"
1762
1735
  },
1763
1736
  {
1764
- "kind": "method",
1765
- "name": "renderLabelElement",
1766
- "privacy": "protected",
1767
- "description": "creates the label element when the label property is set.\nid is used to link the label with the input field.",
1768
- "return": {
1769
- "type": {
1770
- "text": ""
1771
- }
1737
+ "kind": "field",
1738
+ "name": "size",
1739
+ "type": {
1740
+ "text": "ButtonSize"
1772
1741
  },
1773
- "inheritedFrom": {
1774
- "name": "FormfieldWrapper",
1775
- "module": "components/formfieldwrapper/formfieldwrapper.component.js"
1776
- }
1742
+ "description": "Simplebutton size is a super set of all the sizes supported by children components.",
1743
+ "default": "32",
1744
+ "attribute": "size",
1745
+ "reflects": true
1777
1746
  },
1778
1747
  {
1779
- "kind": "method",
1780
- "name": "renderRequiredLabel",
1781
- "privacy": "protected",
1782
- "inheritedFrom": {
1783
- "name": "FormfieldWrapper",
1784
- "module": "components/formfieldwrapper/formfieldwrapper.component.js"
1785
- }
1748
+ "kind": "field",
1749
+ "name": "role",
1750
+ "description": "This property defines the ARIA role for the element. By default, it is set to 'button'.\nConsumers should override this role when:\n- The element is being used in a context where a different role is more appropriate.\n- Custom behaviors are implemented that require a specific ARIA role for accessibility purposes.",
1751
+ "default": "button",
1752
+ "attribute": "role",
1753
+ "reflects": true
1786
1754
  },
1787
1755
  {
1788
- "kind": "method",
1789
- "name": "renderHelpTextIcon",
1790
- "privacy": "protected",
1791
- "description": "creates the helpertext icon based on the helpTextType for validation.\nIf the helpTextType is not set, it defaults to 'default' and it doesn't display any icon.",
1792
- "return": {
1793
- "type": {
1794
- "text": ""
1795
- }
1756
+ "kind": "field",
1757
+ "name": "type",
1758
+ "type": {
1759
+ "text": "ButtonType"
1796
1760
  },
1797
- "inheritedFrom": {
1798
- "name": "FormfieldWrapper",
1799
- "module": "components/formfieldwrapper/formfieldwrapper.component.js"
1800
- }
1761
+ "description": "This property defines the type attribute for the button element.\nThe type attribute specifies the behavior of the button when it is clicked.\n- **submit**: The button submits the form data to the server.\n- **reset**: The button resets the form data to its initial state.\n- **button**: The button does nothing when clicked.",
1762
+ "default": "button",
1763
+ "attribute": "type",
1764
+ "reflects": true
1801
1765
  },
1802
1766
  {
1803
1767
  "kind": "method",
1804
- "name": "renderHelpText",
1805
- "privacy": "protected",
1806
- "description": "creates the helper text component when the helpertext value is set.\nIt is also used to display the validation message based on the helpTextType.",
1807
- "return": {
1808
- "type": {
1809
- "text": ""
1810
- }
1811
- },
1812
- "inheritedFrom": {
1813
- "name": "FormfieldWrapper",
1814
- "module": "components/formfieldwrapper/formfieldwrapper.component.js"
1815
- }
1768
+ "name": "executeAction",
1769
+ "privacy": "protected"
1816
1770
  },
1817
1771
  {
1818
1772
  "kind": "method",
1819
- "name": "renderLabel",
1773
+ "name": "setActive",
1820
1774
  "privacy": "protected",
1821
- "description": "renders the mdc-label-text container that contains the label and labelInfoToggleTip.",
1822
- "return": {
1823
- "type": {
1824
- "text": ""
1775
+ "parameters": [
1776
+ {
1777
+ "name": "element",
1778
+ "type": {
1779
+ "text": "HTMLElement"
1780
+ },
1781
+ "description": "The button element"
1782
+ },
1783
+ {
1784
+ "name": "active",
1785
+ "type": {
1786
+ "text": "boolean"
1787
+ },
1788
+ "description": "The active state of the element"
1825
1789
  }
1826
- },
1827
- "inheritedFrom": {
1828
- "name": "FormfieldWrapper",
1829
- "module": "components/formfieldwrapper/formfieldwrapper.component.js"
1830
- }
1790
+ ],
1791
+ "description": "Sets the aria-pressed attribute based on the active state of the button."
1831
1792
  },
1832
1793
  {
1833
1794
  "kind": "method",
1834
- "name": "renderHelperText",
1835
- "privacy": "protected",
1836
- "description": "renders the mdc-help-text container that contains the helpertext icon and helpertext.",
1837
- "return": {
1838
- "type": {
1839
- "text": ""
1795
+ "name": "setSoftDisabled",
1796
+ "privacy": "private",
1797
+ "parameters": [
1798
+ {
1799
+ "name": "element",
1800
+ "type": {
1801
+ "text": "HTMLElement"
1802
+ },
1803
+ "description": "The button element."
1804
+ },
1805
+ {
1806
+ "name": "softDisabled",
1807
+ "type": {
1808
+ "text": "boolean"
1809
+ },
1810
+ "description": "The soft-disabled state."
1840
1811
  }
1841
- },
1842
- "inheritedFrom": {
1843
- "name": "FormfieldWrapper",
1844
- "module": "components/formfieldwrapper/formfieldwrapper.component.js"
1845
- }
1846
- }
1847
- ],
1848
- "events": [
1812
+ ],
1813
+ "description": "Sets the soft-disabled attribute for the button.\nWhen soft-disabled, the button looks to be disabled but remains focusable and clickable.\nAlso sets/removes aria-disabled attribute."
1814
+ },
1849
1815
  {
1850
- "type": {
1851
- "text": "EventConstructor"
1852
- }
1853
- }
1854
- ],
1855
- "attributes": [
1816
+ "kind": "method",
1817
+ "name": "setDisabled",
1818
+ "privacy": "private",
1819
+ "parameters": [
1820
+ {
1821
+ "name": "element",
1822
+ "type": {
1823
+ "text": "HTMLElement"
1824
+ },
1825
+ "description": "The button element."
1826
+ },
1827
+ {
1828
+ "name": "disabled",
1829
+ "type": {
1830
+ "text": "boolean"
1831
+ },
1832
+ "description": "The disabled state."
1833
+ }
1834
+ ],
1835
+ "description": "Sets the disabled attribute for the button.\nWhen disabled, the button is not focusable or clickable, and tabindex is set to -1.\nThe previous tabindex is stored and restored when enabled.\nAlso sets/removes aria-disabled attribute."
1836
+ },
1856
1837
  {
1857
- "name": "checked",
1858
- "type": {
1859
- "text": "boolean"
1860
- },
1861
- "default": "false",
1862
- "description": "Determines whether the checkbox is selected or unselected.",
1863
- "fieldName": "checked"
1838
+ "kind": "method",
1839
+ "name": "triggerClickEvent",
1840
+ "privacy": "private"
1864
1841
  },
1865
1842
  {
1866
- "name": "indeterminate",
1867
- "type": {
1868
- "text": "boolean"
1869
- },
1870
- "default": "false",
1871
- "description": "This property is used to determine the parent checkbox in a nested checkbox group.\nIf any one of the children is unselected, then the parent checkbox will be indeterminate.\nIf all children are either selected or unselected, then the parent checkbox will not be indeterminate.",
1872
- "fieldName": "indeterminate"
1843
+ "kind": "method",
1844
+ "name": "handleKeyDown",
1845
+ "privacy": "private",
1846
+ "parameters": [
1847
+ {
1848
+ "name": "event",
1849
+ "type": {
1850
+ "text": "KeyboardEvent"
1851
+ },
1852
+ "description": "The keyboard event."
1853
+ }
1854
+ ],
1855
+ "description": "Handles the keydown event on the button.\nIf the key is 'Enter' or 'Space', the button is pressed.\nIf the key is 'Enter', the button is pressed. The native HTML button works in the same way."
1873
1856
  },
1874
1857
  {
1875
- "name": "name",
1876
- "type": {
1877
- "text": "string"
1878
- },
1879
- "default": "''",
1880
- "description": "Indicates the name of the component group (ex: checkbox, radio group).\nThey are used to group elements in a form together.",
1881
- "fieldName": "name",
1882
- "inheritedFrom": {
1883
- "name": "NameMixin",
1884
- "module": "src/utils/mixins/NameMixin.ts"
1885
- }
1858
+ "kind": "method",
1859
+ "name": "handleKeyUp",
1860
+ "privacy": "private",
1861
+ "parameters": [
1862
+ {
1863
+ "name": "event",
1864
+ "type": {
1865
+ "text": "KeyboardEvent"
1866
+ },
1867
+ "description": "The keyboard event."
1868
+ }
1869
+ ],
1870
+ "description": "Handles the keyup event on the button.\nIf the key is 'Enter' or 'Space', the button is clicked.\nIf the key is 'Space', the button is pressed. The native HTML button works in the same way."
1886
1871
  },
1887
1872
  {
1888
- "name": "value",
1873
+ "kind": "field",
1874
+ "name": "tabIndex",
1889
1875
  "type": {
1890
- "text": "string"
1876
+ "text": "number"
1891
1877
  },
1892
- "default": "''",
1893
- "description": "Indicates the value of the component group (ex: input, checkbox, radio, select etc...)",
1894
- "fieldName": "value",
1878
+ "default": "0",
1879
+ "description": "This property specifies the tab order of the element.",
1880
+ "attribute": "tabIndex",
1881
+ "reflects": true,
1895
1882
  "inheritedFrom": {
1896
- "name": "ValueMixin",
1897
- "module": "src/utils/mixins/ValueMixin.ts"
1883
+ "name": "TabIndexMixin",
1884
+ "module": "utils/mixins/TabIndexMixin.js"
1898
1885
  }
1899
1886
  },
1900
1887
  {
1901
- "name": "data-aria-label",
1888
+ "kind": "field",
1889
+ "name": "disabled",
1902
1890
  "type": {
1903
- "text": "string | null"
1891
+ "text": "boolean"
1904
1892
  },
1905
- "default": "null",
1906
- "description": "Defines a string value that labels the current element.\nThe Aria-Label attribute to be set for accessibility.",
1907
- "fieldName": "dataAriaLabel",
1893
+ "default": "false",
1894
+ "description": "Indicates whether the component is disabled.\nWhen the component is disabled for user interaction; it is not focusable or clickable.",
1895
+ "attribute": "disabled",
1896
+ "reflects": true,
1908
1897
  "inheritedFrom": {
1909
- "name": "DataAriaLabelMixin",
1910
- "module": "src/utils/mixins/DataAriaLabelMixin.ts"
1898
+ "name": "DisabledMixin",
1899
+ "module": "utils/mixins/DisabledMixin.js"
1911
1900
  }
1912
- },
1901
+ }
1902
+ ],
1903
+ "attributes": [
1913
1904
  {
1914
- "name": "disabled",
1905
+ "name": "active",
1915
1906
  "type": {
1916
1907
  "text": "boolean"
1917
1908
  },
1918
1909
  "default": "false",
1919
- "description": "Indicates whether the component is disabled.\nWhen the component is disabled for user interaction; it is not focusable or clickable.",
1920
- "fieldName": "disabled",
1921
- "inheritedFrom": {
1922
- "name": "DisabledMixin",
1923
- "module": "src/utils/mixins/DisabledMixin.ts"
1924
- }
1910
+ "description": "The button's active state indicates whether it is currently toggled on (active) or off (inactive).\nWhen the active state is true, the button is considered to be in an active state, meaning it is toggled on.\nConversely, when the active state is false, the button is in an inactive state, indicating it is toggled off.",
1911
+ "fieldName": "active"
1925
1912
  },
1926
1913
  {
1927
- "name": "label",
1914
+ "name": "soft-disabled",
1928
1915
  "type": {
1929
- "text": "string | undefined"
1916
+ "text": "boolean"
1930
1917
  },
1931
- "description": "The label of the input field. It is linked to the input field using the `for` attribute.",
1932
- "fieldName": "label",
1933
- "inheritedFrom": {
1934
- "name": "FormfieldWrapper",
1935
- "module": "src/components/formfieldwrapper/formfieldwrapper.component.ts"
1936
- }
1918
+ "default": "false",
1919
+ "description": "Indicates whether the button is soft disabled.\nWhen set to `true`, the button appears visually disabled but still allows\nfocus, click, and keyboard actions to be passed through.\n\n**Important:** When using soft disabled, consumers must ensure that\nthe button behaves like a disabled button, allowing only focus and\npreventing any interactions (clicks or keyboard actions) from triggering unintended actions.",
1920
+ "fieldName": "softDisabled"
1937
1921
  },
1938
1922
  {
1939
- "name": "required-label",
1923
+ "name": "size",
1940
1924
  "type": {
1941
- "text": "string | undefined"
1925
+ "text": "ButtonSize"
1942
1926
  },
1943
- "description": "The required label of the input field.\nWhen an appropriate string value is set,\nthe input field is marked as required and the label is appended with this text.",
1944
- "fieldName": "requiredLabel",
1945
- "inheritedFrom": {
1946
- "name": "FormfieldWrapper",
1947
- "module": "src/components/formfieldwrapper/formfieldwrapper.component.ts"
1948
- }
1927
+ "description": "Simplebutton size is a super set of all the sizes supported by children components.",
1928
+ "default": "32",
1929
+ "fieldName": "size"
1949
1930
  },
1950
1931
  {
1951
- "name": "id",
1952
- "default": "`mdc-input-${uuidv4()}`",
1953
- "description": "The unique id of the input field. It is used to link the input field with the label.",
1954
- "fieldName": "id",
1955
- "inheritedFrom": {
1956
- "name": "FormfieldWrapper",
1957
- "module": "src/components/formfieldwrapper/formfieldwrapper.component.ts"
1958
- }
1932
+ "name": "role",
1933
+ "description": "This property defines the ARIA role for the element. By default, it is set to 'button'.\nConsumers should override this role when:\n- The element is being used in a context where a different role is more appropriate.\n- Custom behaviors are implemented that require a specific ARIA role for accessibility purposes.",
1934
+ "default": "button",
1935
+ "fieldName": "role"
1959
1936
  },
1960
1937
  {
1961
- "name": "help-text-type",
1938
+ "name": "type",
1962
1939
  "type": {
1963
- "text": "ValidationType"
1940
+ "text": "ButtonType"
1964
1941
  },
1965
- "description": "The type of help text. It can be 'default', 'error', 'warning', 'success', 'priority'.",
1966
- "fieldName": "helpTextType",
1942
+ "description": "This property defines the type attribute for the button element.\nThe type attribute specifies the behavior of the button when it is clicked.\n- **submit**: The button submits the form data to the server.\n- **reset**: The button resets the form data to its initial state.\n- **button**: The button does nothing when clicked.",
1943
+ "default": "button",
1944
+ "fieldName": "type"
1945
+ },
1946
+ {
1947
+ "name": "tabIndex",
1948
+ "type": {
1949
+ "text": "number"
1950
+ },
1951
+ "default": "0",
1952
+ "description": "This property specifies the tab order of the element.",
1953
+ "fieldName": "tabIndex",
1967
1954
  "inheritedFrom": {
1968
- "name": "FormfieldWrapper",
1969
- "module": "src/components/formfieldwrapper/formfieldwrapper.component.ts"
1955
+ "name": "TabIndexMixin",
1956
+ "module": "src/utils/mixins/TabIndexMixin.ts"
1970
1957
  }
1971
1958
  },
1972
1959
  {
1973
- "name": "help-text",
1960
+ "name": "disabled",
1974
1961
  "type": {
1975
- "text": "string | undefined"
1962
+ "text": "boolean"
1976
1963
  },
1977
- "description": "The help text that is displayed below the input field.",
1978
- "fieldName": "helpText",
1964
+ "default": "false",
1965
+ "description": "Indicates whether the component is disabled.\nWhen the component is disabled for user interaction; it is not focusable or clickable.",
1966
+ "fieldName": "disabled",
1979
1967
  "inheritedFrom": {
1980
- "name": "FormfieldWrapper",
1981
- "module": "src/components/formfieldwrapper/formfieldwrapper.component.ts"
1968
+ "name": "DisabledMixin",
1969
+ "module": "src/utils/mixins/DisabledMixin.ts"
1982
1970
  }
1983
1971
  }
1984
1972
  ],
1985
1973
  "mixins": [
1986
1974
  {
1987
- "name": "NameMixin",
1988
- "module": "/src/utils/mixins/NameMixin"
1989
- },
1990
- {
1991
- "name": "ValueMixin",
1992
- "module": "/src/utils/mixins/ValueMixin"
1975
+ "name": "TabIndexMixin",
1976
+ "module": "/src/utils/mixins/TabIndexMixin"
1993
1977
  },
1994
1978
  {
1995
- "name": "DataAriaLabelMixin",
1996
- "module": "/src/utils/mixins/DataAriaLabelMixin"
1979
+ "name": "DisabledMixin",
1980
+ "module": "/src/utils/mixins/DisabledMixin"
1997
1981
  }
1998
1982
  ],
1999
1983
  "superclass": {
2000
- "name": "FormfieldWrapper",
2001
- "module": "/src/components/formfieldwrapper/formfieldwrapper.component"
1984
+ "name": "Component",
1985
+ "module": "/src/models"
2002
1986
  },
2003
- "tagName": "mdc-checkbox",
2004
- "jsDoc": "/**\n * Checkboxes allow users to select multiple options from a list or turn an item/feature on or off.\n * These are often used in forms, settings, and selections in lists.\n *\n * A checkbox component contains an optional label and an optional helper text.\n *\n * To create a group of checkboxes, use the FormFieldGroup component.\n *\n * @dependency mdc-icon\n *\n * @tagname mdc-checkbox\n *\n * @cssproperty --mdc-checkbox-background-color-hover - Allows customization of the background color on hover.\n * @cssproperty --mdc-checkbox-border-color - Border color in high contrast.\n * @cssproperty --mdc-checkbox-checked-background-color - Background color for a selected checkbox.\n * @cssproperty --mdc-checkbox-checked-background-color-hover - Background color for a selected checkbox when hovered.\n * @cssproperty --mdc-checkbox-checked-pressed-icon-color - Background color for a selected checkbox when pressed.\n * @cssproperty --mdc-checkbox-disabled-background-color - Background color for a disabled checkbox.\n * @cssproperty --mdc-checkbox-disabled-border-color - Border color for a disabled checkbox.\n * @cssproperty --mdc-checkbox-disabled-checked-icon-color - Background color for a disabled, selected checkbox.\n * @cssproperty --mdc-checkbox-disabled-icon-color - Icon color for a disabled checkbox.\n * @cssproperty --mdc-checkbox-icon-background-color - Background color for an unselected checkbox.\n * @cssproperty --mdc-checkbox-icon-border-color - Default background color for an unselected checkbox.\n * @cssproperty --mdc-checkbox-icon-color - Icon color for an unselected checkbox.\n * @cssproperty --mdc-checkbox-pressed-icon-color - Background color for a selected checkbox when pressed.\n */",
2005
- "customElement": true,
2006
- "slots": [
2007
- {
2008
- "description": "slot to add the label info icon",
2009
- "name": "label-info",
2010
- "inheritedFrom": {
2011
- "name": "FormfieldWrapper",
2012
- "module": "src/components/formfieldwrapper/formfieldwrapper.component.ts"
2013
- }
2014
- }
2015
- ]
1987
+ "tagName": "mdc-buttonsimple",
1988
+ "jsDoc": "/**\n * `mdc-buttonsimple` is a component that can be configured in various ways to suit different use cases.\n * It is used as an internal component and is not intended to be used directly by consumers.\n * Consumers should use the `mdc-button` component instead.\n *\n * @tagname mdc-buttonsimple\n */",
1989
+ "customElement": true
2016
1990
  }
2017
1991
  ],
2018
1992
  "exports": [
@@ -2020,450 +1994,433 @@
2020
1994
  "kind": "js",
2021
1995
  "name": "default",
2022
1996
  "declaration": {
2023
- "name": "Checkbox",
2024
- "module": "components/checkbox/checkbox.component.js"
1997
+ "name": "Buttonsimple",
1998
+ "module": "components/buttonsimple/buttonsimple.component.js"
2025
1999
  }
2026
2000
  }
2027
2001
  ]
2028
2002
  },
2029
2003
  {
2030
2004
  "kind": "javascript-module",
2031
- "path": "components/button/button.component.js",
2005
+ "path": "components/checkbox/checkbox.component.js",
2032
2006
  "declarations": [
2033
2007
  {
2034
2008
  "kind": "class",
2035
- "description": "`mdc-button` is a component that can be configured in various ways to suit different use cases.\n\nButton Variants:\n- **Primary**: Solid background color.\n- **Secondary**: Transparent background with a solid border.\n- **Tertiary**: No background or border, appears as plain text but retains all button functionalities.\n\nButton Colors:\n- **Positive**: Green color.\n- **Negative**: Red color.\n- **Accent**: Blue color.\n- **Promotional**: Purple color.\n- **Default**: White color.\n\nButton Sizes (in REM units):\n- **Pill button**: 40, 32, 28, 24.\n- **Icon button**: 64, 52, 40, 32, 28, 24.\n- **Tertiary icon button**: 20.\n\nButton Types:\n- **Pill button**: A button that contains text value. Commonly used for call to action, tags, or filters.\n- **Pill button with icons**: A button containing an icon either on the left or right side of the button.\n- **Icon button**: A button represented by just an icon without any text.\nThe type of button is inferred based on the presence of slot and/or prefix and postfix icons.",
2036
- "name": "Button",
2037
- "slots": [
2009
+ "description": "Checkboxes allow users to select multiple options from a list or turn an item/feature on or off.\nThese are often used in forms, settings, and selections in lists.\n\nA checkbox component contains an optional label and an optional helper text.\n\nTo create a group of checkboxes, use the FormFieldGroup component.",
2010
+ "name": "Checkbox",
2011
+ "cssProperties": [
2038
2012
  {
2039
- "description": "Text label of the button.",
2040
- "name": ""
2041
- }
2042
- ],
2043
- "members": [
2013
+ "description": "Allows customization of the background color on hover.",
2014
+ "name": "--mdc-checkbox-background-color-hover"
2015
+ },
2044
2016
  {
2045
- "kind": "field",
2046
- "name": "prefixIcon",
2047
- "type": {
2048
- "text": "string | undefined"
2049
- },
2050
- "description": "The name of the icon to display as a prefix.\nThe icon is displayed on the left side of the button.",
2051
- "attribute": "prefix-icon",
2052
- "reflects": true
2017
+ "description": "Border color in high contrast.",
2018
+ "name": "--mdc-checkbox-border-color"
2053
2019
  },
2054
2020
  {
2055
- "kind": "field",
2056
- "name": "postfixIcon",
2057
- "type": {
2058
- "text": "string | undefined"
2059
- },
2060
- "description": "The name of the icon to display as a postfix.\nThe icon is displayed on the right side of the button.",
2061
- "attribute": "postfix-icon",
2062
- "reflects": true
2021
+ "description": "Background color for a selected checkbox.",
2022
+ "name": "--mdc-checkbox-checked-background-color"
2063
2023
  },
2064
2024
  {
2065
- "kind": "field",
2066
- "name": "variant",
2067
- "type": {
2068
- "text": "ButtonVariant"
2069
- },
2070
- "description": "There are 3 variants of button: primary, secondary, tertiary. They are styled differently.\n- **Primary**: Solid background color.\n- **Secondary**: Transparent background with a solid border.\n- **Tertiary**: No background or border, appears as plain text but retains all button functionalities.",
2071
- "default": "primary",
2072
- "attribute": "variant"
2025
+ "description": "Background color for a selected checkbox when hovered.",
2026
+ "name": "--mdc-checkbox-checked-background-color-hover"
2073
2027
  },
2074
2028
  {
2075
- "kind": "field",
2076
- "name": "size",
2077
- "type": {
2078
- "text": "ButtonSize"
2079
- },
2080
- "description": "Button sizing is based on the button type.\n- **Pill button**: 40, 32, 28, 24.\n- **Icon button**: 64, 52, 40, 32, 28, 24.\n- Tertiary icon button can also be 20.",
2081
- "default": "32",
2082
- "attribute": "size",
2083
- "reflects": true,
2084
- "inheritedFrom": {
2085
- "name": "Buttonsimple",
2086
- "module": "components/buttonsimple/buttonsimple.component.js"
2087
- }
2029
+ "description": "Background color for a selected checkbox when pressed.",
2030
+ "name": "--mdc-checkbox-checked-pressed-icon-color"
2031
+ },
2032
+ {
2033
+ "description": "Background color for a disabled checkbox.",
2034
+ "name": "--mdc-checkbox-disabled-background-color"
2035
+ },
2036
+ {
2037
+ "description": "Border color for a disabled checkbox.",
2038
+ "name": "--mdc-checkbox-disabled-border-color"
2039
+ },
2040
+ {
2041
+ "description": "Background color for a disabled, selected checkbox.",
2042
+ "name": "--mdc-checkbox-disabled-checked-icon-color"
2043
+ },
2044
+ {
2045
+ "description": "Icon color for a disabled checkbox.",
2046
+ "name": "--mdc-checkbox-disabled-icon-color"
2047
+ },
2048
+ {
2049
+ "description": "Background color for an unselected checkbox.",
2050
+ "name": "--mdc-checkbox-icon-background-color"
2051
+ },
2052
+ {
2053
+ "description": "Default background color for an unselected checkbox.",
2054
+ "name": "--mdc-checkbox-icon-border-color"
2055
+ },
2056
+ {
2057
+ "description": "Icon color for an unselected checkbox.",
2058
+ "name": "--mdc-checkbox-icon-color"
2088
2059
  },
2060
+ {
2061
+ "description": "Background color for a selected checkbox when pressed.",
2062
+ "name": "--mdc-checkbox-pressed-icon-color"
2063
+ }
2064
+ ],
2065
+ "members": [
2089
2066
  {
2090
2067
  "kind": "field",
2091
- "name": "color",
2068
+ "name": "checked",
2092
2069
  "type": {
2093
- "text": "ButtonColor"
2070
+ "text": "boolean"
2094
2071
  },
2095
- "description": "There are 5 colors for button: positive, negative, accent, promotional, default.",
2096
- "default": "default",
2097
- "attribute": "color"
2072
+ "default": "false",
2073
+ "description": "Determines whether the checkbox is selected or unselected.",
2074
+ "attribute": "checked",
2075
+ "reflects": true
2098
2076
  },
2099
2077
  {
2100
2078
  "kind": "field",
2101
- "name": "role",
2102
- "description": "This property defines the ARIA role for the element. By default, it is set to 'button'.\nConsumers should override this role when:\n- The element is being used in a context where a different role is more appropriate.\n- Custom behaviors are implemented that require a specific ARIA role for accessibility purposes.",
2103
- "default": "'button'",
2104
- "attribute": "role",
2105
- "reflects": true,
2079
+ "name": "indeterminate",
2106
2080
  "type": {
2107
- "text": "string"
2081
+ "text": "boolean"
2108
2082
  },
2109
- "inheritedFrom": {
2110
- "name": "Buttonsimple",
2111
- "module": "components/buttonsimple/buttonsimple.component.js"
2112
- }
2083
+ "default": "false",
2084
+ "description": "This property is used to determine the parent checkbox in a nested checkbox group.\nIf any one of the children is unselected, then the parent checkbox will be indeterminate.\nIf all children are either selected or unselected, then the parent checkbox will not be indeterminate.",
2085
+ "attribute": "indeterminate",
2086
+ "reflects": true
2113
2087
  },
2114
2088
  {
2115
- "kind": "method",
2116
- "name": "modifyIconName",
2117
- "privacy": "private",
2118
- "parameters": [
2119
- {
2120
- "name": "active",
2121
- "type": {
2122
- "text": "boolean"
2123
- },
2124
- "description": "The active state."
2125
- }
2126
- ],
2127
- "description": "Modifies the icon name based on the active state.\nIf the button is active, the icon name is suffixed with '-filled'.\nIf the button is inactive, the icon name is restored to its original value.\nIf '-filled' icon is not available, the icon name remains unchanged."
2089
+ "kind": "method",
2090
+ "name": "setFormValue",
2091
+ "privacy": "private",
2092
+ "description": "Updates the form value to reflect the current state of the checkbox.\nIf checked, the value is set to either the user-provided value or 'on' if no value is provided.\nIf unchecked, the value is set to null."
2128
2093
  },
2129
2094
  {
2130
2095
  "kind": "method",
2131
- "name": "setVariant",
2096
+ "name": "toggleState",
2132
2097
  "privacy": "private",
2133
- "parameters": [
2134
- {
2135
- "name": "variant",
2136
- "type": {
2137
- "text": "ButtonVariant"
2138
- },
2139
- "description": "The variant to set."
2098
+ "return": {
2099
+ "type": {
2100
+ "text": "void"
2140
2101
  }
2141
- ],
2142
- "description": "Sets the variant attribute for the button component.\nIf the provided variant is not included in the BUTTON_VARIANTS,\nit defaults to the value specified in DEFAULTS.VARIANT."
2102
+ },
2103
+ "description": "Toggles the state of the checkbox element.\nIf the element is not disabled, then\nthe checked property is toggled and the indeterminate property is set to false."
2143
2104
  },
2144
2105
  {
2145
2106
  "kind": "method",
2146
- "name": "setSize",
2147
- "privacy": "private",
2107
+ "name": "handleChange",
2108
+ "privacy": "public",
2109
+ "return": {
2110
+ "type": {
2111
+ "text": "void"
2112
+ }
2113
+ },
2148
2114
  "parameters": [
2149
2115
  {
2150
- "name": "size",
2116
+ "name": "event",
2151
2117
  "type": {
2152
- "text": "PillButtonSize | IconButtonSize"
2153
- },
2154
- "description": "The size to set."
2118
+ "text": "Event"
2119
+ }
2155
2120
  }
2156
2121
  ],
2157
- "description": "Sets the size attribute for the button component.\nValidates the size based on the button type (icon, pill, or tertiary).\nDefaults to DEFAULTS.SIZE if invalid."
2122
+ "description": "Toggles the state of the checkbox element.\nand dispatch the new change event."
2158
2123
  },
2159
2124
  {
2160
2125
  "kind": "method",
2161
- "name": "setColor",
2126
+ "name": "handleKeyDown",
2162
2127
  "privacy": "private",
2128
+ "return": {
2129
+ "type": {
2130
+ "text": "void"
2131
+ }
2132
+ },
2163
2133
  "parameters": [
2164
2134
  {
2165
- "name": "color",
2135
+ "name": "event",
2166
2136
  "type": {
2167
- "text": "ButtonColor"
2137
+ "text": "KeyboardEvent"
2168
2138
  },
2169
- "description": "The color to set."
2139
+ "description": "The keyboard event."
2170
2140
  }
2171
2141
  ],
2172
- "description": "Sets the color attribute for the button.\nDefaults to DEFAULTS.COLOR if invalid or for tertiary buttons."
2142
+ "description": "Handles the keydown event on the checkbox.\nWhen the user presses Enter, the form is submitted."
2173
2143
  },
2174
2144
  {
2175
- "kind": "method",
2176
- "name": "inferButtonType",
2177
- "privacy": "private",
2178
- "description": "Infers the type of button based on the presence of slot and/or prefix and postfix icons.",
2179
- "parameters": [
2180
- {
2181
- "description": "default slot of button",
2182
- "name": "slot"
2183
- }
2184
- ]
2145
+ "kind": "field",
2146
+ "name": "internals"
2185
2147
  },
2186
2148
  {
2187
2149
  "kind": "field",
2188
- "name": "tabIndex",
2150
+ "name": "helpTextType",
2189
2151
  "type": {
2190
- "text": "number"
2152
+ "text": "ValidationType"
2191
2153
  },
2192
- "default": "0",
2193
- "description": "This property specifies the tab order of the element.",
2194
- "attribute": "tabIndex",
2154
+ "description": "The type of help text. It can be 'default', 'error', 'warning', 'success', 'priority'.",
2155
+ "attribute": "help-text-type",
2195
2156
  "reflects": true,
2157
+ "default": "undefined as unknown",
2196
2158
  "inheritedFrom": {
2197
- "name": "Buttonsimple",
2198
- "module": "components/buttonsimple/buttonsimple.component.js"
2159
+ "name": "FormfieldWrapper",
2160
+ "module": "components/formfieldwrapper/formfieldwrapper.component.js"
2199
2161
  }
2200
2162
  },
2201
2163
  {
2202
2164
  "kind": "field",
2203
- "name": "disabled",
2165
+ "name": "name",
2204
2166
  "type": {
2205
- "text": "boolean"
2167
+ "text": "string"
2206
2168
  },
2207
- "default": "false",
2208
- "description": "Indicates whether the component is disabled.\nWhen the component is disabled for user interaction; it is not focusable or clickable.",
2209
- "attribute": "disabled",
2169
+ "default": "''",
2170
+ "description": "Indicates the name of the component group (ex: checkbox, radio group).\nThey are used to group elements in a form together.",
2171
+ "attribute": "name",
2210
2172
  "reflects": true,
2211
2173
  "inheritedFrom": {
2212
- "name": "Buttonsimple",
2213
- "module": "components/buttonsimple/buttonsimple.component.js"
2174
+ "name": "NameMixin",
2175
+ "module": "utils/mixins/NameMixin.js"
2214
2176
  }
2215
2177
  },
2216
2178
  {
2217
2179
  "kind": "field",
2218
- "name": "active",
2180
+ "name": "value",
2219
2181
  "type": {
2220
- "text": "boolean"
2182
+ "text": "string"
2221
2183
  },
2222
- "default": "false",
2223
- "description": "The button's active state indicates whether it is currently toggled on (active) or off (inactive).\nWhen the active state is true, the button is considered to be in an active state, meaning it is toggled on.\nConversely, when the active state is false, the button is in an inactive state, indicating it is toggled off.",
2224
- "attribute": "active",
2184
+ "default": "''",
2185
+ "description": "Indicates the value of the component group (ex: input, checkbox, radio, select etc...)",
2186
+ "attribute": "value",
2225
2187
  "reflects": true,
2226
2188
  "inheritedFrom": {
2227
- "name": "Buttonsimple",
2228
- "module": "components/buttonsimple/buttonsimple.component.js"
2189
+ "name": "ValueMixin",
2190
+ "module": "utils/mixins/ValueMixin.js"
2229
2191
  }
2230
2192
  },
2231
2193
  {
2232
2194
  "kind": "field",
2233
- "name": "softDisabled",
2195
+ "name": "dataAriaLabel",
2196
+ "type": {
2197
+ "text": "string | null"
2198
+ },
2199
+ "default": "null",
2200
+ "description": "Defines a string value that labels the current element.\nThe Aria-Label attribute to be set for accessibility.",
2201
+ "attribute": "data-aria-label",
2202
+ "reflects": true,
2203
+ "inheritedFrom": {
2204
+ "name": "DataAriaLabelMixin",
2205
+ "module": "utils/mixins/DataAriaLabelMixin.js"
2206
+ }
2207
+ },
2208
+ {
2209
+ "kind": "field",
2210
+ "name": "disabled",
2234
2211
  "type": {
2235
2212
  "text": "boolean"
2236
2213
  },
2237
2214
  "default": "false",
2238
- "description": "Indicates whether the button is soft disabled.\nWhen set to `true`, the button appears visually disabled but still allows\nfocus, click, and keyboard actions to be passed through.\n\n**Important:** When using soft disabled, consumers must ensure that\nthe button behaves like a disabled button, allowing only focus and\npreventing any interactions (clicks or keyboard actions) from triggering unintended actions.",
2239
- "attribute": "soft-disabled",
2215
+ "description": "Indicates whether the component is disabled.\nWhen the component is disabled for user interaction; it is not focusable or clickable.",
2216
+ "attribute": "disabled",
2217
+ "reflects": true,
2240
2218
  "inheritedFrom": {
2241
- "name": "Buttonsimple",
2242
- "module": "components/buttonsimple/buttonsimple.component.js"
2219
+ "name": "DisabledMixin",
2220
+ "module": "utils/mixins/DisabledMixin.js"
2243
2221
  }
2244
2222
  },
2245
2223
  {
2246
2224
  "kind": "field",
2247
- "name": "type",
2225
+ "name": "label",
2248
2226
  "type": {
2249
- "text": "ButtonType"
2227
+ "text": "string | undefined"
2250
2228
  },
2251
- "description": "This property defines the type attribute for the button element.\nThe type attribute specifies the behavior of the button when it is clicked.\n- **submit**: The button submits the form data to the server.\n- **reset**: The button resets the form data to its initial state.\n- **button**: The button does nothing when clicked.",
2252
- "default": "button",
2253
- "attribute": "type",
2229
+ "description": "The label of the input field. It is linked to the input field using the `for` attribute.",
2230
+ "attribute": "label",
2254
2231
  "reflects": true,
2255
2232
  "inheritedFrom": {
2256
- "name": "Buttonsimple",
2257
- "module": "components/buttonsimple/buttonsimple.component.js"
2233
+ "name": "FormfieldWrapper",
2234
+ "module": "components/formfieldwrapper/formfieldwrapper.component.js"
2258
2235
  }
2259
2236
  },
2260
2237
  {
2261
- "kind": "method",
2262
- "name": "executeAction",
2263
- "privacy": "protected",
2238
+ "kind": "field",
2239
+ "name": "requiredLabel",
2240
+ "type": {
2241
+ "text": "string | undefined"
2242
+ },
2243
+ "description": "The required label of the input field.\nWhen an appropriate string value is set,\nthe input field is marked as required and the label is appended with this text.",
2244
+ "attribute": "required-label",
2245
+ "reflects": true,
2264
2246
  "inheritedFrom": {
2265
- "name": "Buttonsimple",
2266
- "module": "components/buttonsimple/buttonsimple.component.js"
2247
+ "name": "FormfieldWrapper",
2248
+ "module": "components/formfieldwrapper/formfieldwrapper.component.js"
2249
+ }
2250
+ },
2251
+ {
2252
+ "kind": "field",
2253
+ "name": "id",
2254
+ "default": "`mdc-input-${uuidv4()}`",
2255
+ "description": "The unique id of the input field. It is used to link the input field with the label.",
2256
+ "attribute": "id",
2257
+ "inheritedFrom": {
2258
+ "name": "FormfieldWrapper",
2259
+ "module": "components/formfieldwrapper/formfieldwrapper.component.js"
2260
+ }
2261
+ },
2262
+ {
2263
+ "kind": "field",
2264
+ "name": "helpText",
2265
+ "type": {
2266
+ "text": "string | undefined"
2267
+ },
2268
+ "description": "The help text that is displayed below the input field.",
2269
+ "attribute": "help-text",
2270
+ "reflects": true,
2271
+ "inheritedFrom": {
2272
+ "name": "FormfieldWrapper",
2273
+ "module": "components/formfieldwrapper/formfieldwrapper.component.js"
2267
2274
  }
2268
2275
  },
2269
2276
  {
2270
2277
  "kind": "method",
2271
- "name": "setActive",
2278
+ "name": "renderLabelElement",
2272
2279
  "privacy": "protected",
2273
- "parameters": [
2274
- {
2275
- "name": "element",
2276
- "type": {
2277
- "text": "HTMLElement"
2278
- },
2279
- "description": "The button element"
2280
- },
2281
- {
2282
- "name": "active",
2283
- "type": {
2284
- "text": "boolean"
2285
- },
2286
- "description": "The active state of the element"
2280
+ "description": "creates the label element when the label property is set.\nid is used to link the label with the input field.",
2281
+ "return": {
2282
+ "type": {
2283
+ "text": ""
2287
2284
  }
2288
- ],
2289
- "description": "Sets the aria-pressed attribute based on the active state of the button.",
2285
+ },
2290
2286
  "inheritedFrom": {
2291
- "name": "Buttonsimple",
2292
- "module": "components/buttonsimple/buttonsimple.component.js"
2287
+ "name": "FormfieldWrapper",
2288
+ "module": "components/formfieldwrapper/formfieldwrapper.component.js"
2293
2289
  }
2294
2290
  },
2295
2291
  {
2296
2292
  "kind": "method",
2297
- "name": "setSoftDisabled",
2298
- "privacy": "private",
2299
- "parameters": [
2300
- {
2301
- "name": "element",
2302
- "type": {
2303
- "text": "HTMLElement"
2304
- },
2305
- "description": "The button element."
2306
- },
2307
- {
2308
- "name": "softDisabled",
2309
- "type": {
2310
- "text": "boolean"
2311
- },
2312
- "description": "The soft-disabled state."
2313
- }
2314
- ],
2315
- "description": "Sets the soft-disabled attribute for the button.\nWhen soft-disabled, the button looks to be disabled but remains focusable and clickable.\nAlso sets/removes aria-disabled attribute.",
2293
+ "name": "renderRequiredLabel",
2294
+ "privacy": "protected",
2316
2295
  "inheritedFrom": {
2317
- "name": "Buttonsimple",
2318
- "module": "components/buttonsimple/buttonsimple.component.js"
2296
+ "name": "FormfieldWrapper",
2297
+ "module": "components/formfieldwrapper/formfieldwrapper.component.js"
2319
2298
  }
2320
2299
  },
2321
2300
  {
2322
2301
  "kind": "method",
2323
- "name": "setDisabled",
2324
- "privacy": "private",
2325
- "parameters": [
2326
- {
2327
- "name": "element",
2328
- "type": {
2329
- "text": "HTMLElement"
2330
- },
2331
- "description": "The button element."
2332
- },
2333
- {
2334
- "name": "disabled",
2335
- "type": {
2336
- "text": "boolean"
2337
- },
2338
- "description": "The disabled state."
2302
+ "name": "renderHelpTextIcon",
2303
+ "privacy": "protected",
2304
+ "description": "creates the helpertext icon based on the helpTextType for validation.\nIf the helpTextType is not set, it defaults to 'default' and it doesn't display any icon.",
2305
+ "return": {
2306
+ "type": {
2307
+ "text": ""
2339
2308
  }
2340
- ],
2341
- "description": "Sets the disabled attribute for the button.\nWhen disabled, the button is not focusable or clickable, and tabindex is set to -1.\nThe previous tabindex is stored and restored when enabled.\nAlso sets/removes aria-disabled attribute.",
2309
+ },
2342
2310
  "inheritedFrom": {
2343
- "name": "Buttonsimple",
2344
- "module": "components/buttonsimple/buttonsimple.component.js"
2311
+ "name": "FormfieldWrapper",
2312
+ "module": "components/formfieldwrapper/formfieldwrapper.component.js"
2345
2313
  }
2346
2314
  },
2347
2315
  {
2348
2316
  "kind": "method",
2349
- "name": "triggerClickEvent",
2350
- "privacy": "private",
2317
+ "name": "renderHelpText",
2318
+ "privacy": "protected",
2319
+ "description": "creates the helper text component when the helpertext value is set.\nIt is also used to display the validation message based on the helpTextType.",
2320
+ "return": {
2321
+ "type": {
2322
+ "text": ""
2323
+ }
2324
+ },
2351
2325
  "inheritedFrom": {
2352
- "name": "Buttonsimple",
2353
- "module": "components/buttonsimple/buttonsimple.component.js"
2326
+ "name": "FormfieldWrapper",
2327
+ "module": "components/formfieldwrapper/formfieldwrapper.component.js"
2354
2328
  }
2355
2329
  },
2356
2330
  {
2357
2331
  "kind": "method",
2358
- "name": "handleKeyDown",
2359
- "privacy": "private",
2360
- "parameters": [
2361
- {
2362
- "name": "event",
2363
- "type": {
2364
- "text": "KeyboardEvent"
2365
- },
2366
- "description": "The keyboard event."
2332
+ "name": "renderLabel",
2333
+ "privacy": "protected",
2334
+ "description": "renders the mdc-label-text container that contains the label and labelInfoToggleTip.",
2335
+ "return": {
2336
+ "type": {
2337
+ "text": ""
2367
2338
  }
2368
- ],
2369
- "description": "Handles the keydown event on the button.\nIf the key is 'Enter' or 'Space', the button is pressed.\nIf the key is 'Enter', the button is pressed. The native HTML button works in the same way.",
2339
+ },
2370
2340
  "inheritedFrom": {
2371
- "name": "Buttonsimple",
2372
- "module": "components/buttonsimple/buttonsimple.component.js"
2341
+ "name": "FormfieldWrapper",
2342
+ "module": "components/formfieldwrapper/formfieldwrapper.component.js"
2373
2343
  }
2374
2344
  },
2375
2345
  {
2376
2346
  "kind": "method",
2377
- "name": "handleKeyUp",
2378
- "privacy": "private",
2379
- "parameters": [
2380
- {
2381
- "name": "event",
2382
- "type": {
2383
- "text": "KeyboardEvent"
2384
- },
2385
- "description": "The keyboard event."
2347
+ "name": "renderHelperText",
2348
+ "privacy": "protected",
2349
+ "description": "renders the mdc-help-text container that contains the helpertext icon and helpertext.",
2350
+ "return": {
2351
+ "type": {
2352
+ "text": ""
2386
2353
  }
2387
- ],
2388
- "description": "Handles the keyup event on the button.\nIf the key is 'Enter' or 'Space', the button is clicked.\nIf the key is 'Space', the button is pressed. The native HTML button works in the same way.",
2354
+ },
2389
2355
  "inheritedFrom": {
2390
- "name": "Buttonsimple",
2391
- "module": "components/buttonsimple/buttonsimple.component.js"
2356
+ "name": "FormfieldWrapper",
2357
+ "module": "components/formfieldwrapper/formfieldwrapper.component.js"
2392
2358
  }
2393
2359
  }
2394
2360
  ],
2395
- "attributes": [
2361
+ "events": [
2396
2362
  {
2397
- "name": "prefix-icon",
2398
2363
  "type": {
2399
- "text": "string | undefined"
2400
- },
2401
- "description": "The name of the icon to display as a prefix.\nThe icon is displayed on the left side of the button.",
2402
- "fieldName": "prefixIcon"
2403
- },
2364
+ "text": "EventConstructor"
2365
+ }
2366
+ }
2367
+ ],
2368
+ "attributes": [
2404
2369
  {
2405
- "name": "postfix-icon",
2370
+ "name": "checked",
2406
2371
  "type": {
2407
- "text": "string | undefined"
2372
+ "text": "boolean"
2408
2373
  },
2409
- "description": "The name of the icon to display as a postfix.\nThe icon is displayed on the right side of the button.",
2410
- "fieldName": "postfixIcon"
2374
+ "default": "false",
2375
+ "description": "Determines whether the checkbox is selected or unselected.",
2376
+ "fieldName": "checked"
2411
2377
  },
2412
2378
  {
2413
- "name": "variant",
2379
+ "name": "indeterminate",
2414
2380
  "type": {
2415
- "text": "ButtonVariant"
2381
+ "text": "boolean"
2416
2382
  },
2417
- "description": "There are 3 variants of button: primary, secondary, tertiary. They are styled differently.\n- **Primary**: Solid background color.\n- **Secondary**: Transparent background with a solid border.\n- **Tertiary**: No background or border, appears as plain text but retains all button functionalities.",
2418
- "default": "primary",
2419
- "fieldName": "variant"
2383
+ "default": "false",
2384
+ "description": "This property is used to determine the parent checkbox in a nested checkbox group.\nIf any one of the children is unselected, then the parent checkbox will be indeterminate.\nIf all children are either selected or unselected, then the parent checkbox will not be indeterminate.",
2385
+ "fieldName": "indeterminate"
2420
2386
  },
2421
2387
  {
2422
- "name": "size",
2388
+ "name": "name",
2423
2389
  "type": {
2424
- "text": "ButtonSize"
2390
+ "text": "string"
2425
2391
  },
2426
- "description": "Button sizing is based on the button type.\n- **Pill button**: 40, 32, 28, 24.\n- **Icon button**: 64, 52, 40, 32, 28, 24.\n- Tertiary icon button can also be 20.",
2427
- "default": "32",
2428
- "fieldName": "size",
2392
+ "default": "''",
2393
+ "description": "Indicates the name of the component group (ex: checkbox, radio group).\nThey are used to group elements in a form together.",
2394
+ "fieldName": "name",
2429
2395
  "inheritedFrom": {
2430
- "name": "Buttonsimple",
2431
- "module": "src/components/buttonsimple/buttonsimple.component.ts"
2396
+ "name": "NameMixin",
2397
+ "module": "src/utils/mixins/NameMixin.ts"
2432
2398
  }
2433
2399
  },
2434
2400
  {
2435
- "name": "color",
2436
- "type": {
2437
- "text": "ButtonColor"
2438
- },
2439
- "description": "There are 5 colors for button: positive, negative, accent, promotional, default.",
2440
- "default": "default",
2441
- "fieldName": "color"
2442
- },
2443
- {
2444
- "name": "role",
2445
- "description": "This property defines the ARIA role for the element. By default, it is set to 'button'.\nConsumers should override this role when:\n- The element is being used in a context where a different role is more appropriate.\n- Custom behaviors are implemented that require a specific ARIA role for accessibility purposes.",
2446
- "default": "'button'",
2447
- "fieldName": "role",
2401
+ "name": "value",
2448
2402
  "type": {
2449
2403
  "text": "string"
2450
2404
  },
2405
+ "default": "''",
2406
+ "description": "Indicates the value of the component group (ex: input, checkbox, radio, select etc...)",
2407
+ "fieldName": "value",
2451
2408
  "inheritedFrom": {
2452
- "name": "Buttonsimple",
2453
- "module": "src/components/buttonsimple/buttonsimple.component.ts"
2409
+ "name": "ValueMixin",
2410
+ "module": "src/utils/mixins/ValueMixin.ts"
2454
2411
  }
2455
2412
  },
2456
2413
  {
2457
- "name": "tabIndex",
2414
+ "name": "data-aria-label",
2458
2415
  "type": {
2459
- "text": "number"
2416
+ "text": "string | null"
2460
2417
  },
2461
- "default": "0",
2462
- "description": "This property specifies the tab order of the element.",
2463
- "fieldName": "tabIndex",
2418
+ "default": "null",
2419
+ "description": "Defines a string value that labels the current element.\nThe Aria-Label attribute to be set for accessibility.",
2420
+ "fieldName": "dataAriaLabel",
2464
2421
  "inheritedFrom": {
2465
- "name": "Buttonsimple",
2466
- "module": "src/components/buttonsimple/buttonsimple.component.ts"
2422
+ "name": "DataAriaLabelMixin",
2423
+ "module": "src/utils/mixins/DataAriaLabelMixin.ts"
2467
2424
  }
2468
2425
  },
2469
2426
  {
@@ -2475,57 +2432,100 @@
2475
2432
  "description": "Indicates whether the component is disabled.\nWhen the component is disabled for user interaction; it is not focusable or clickable.",
2476
2433
  "fieldName": "disabled",
2477
2434
  "inheritedFrom": {
2478
- "name": "Buttonsimple",
2479
- "module": "src/components/buttonsimple/buttonsimple.component.ts"
2435
+ "name": "DisabledMixin",
2436
+ "module": "src/utils/mixins/DisabledMixin.ts"
2480
2437
  }
2481
2438
  },
2482
2439
  {
2483
- "name": "active",
2440
+ "name": "label",
2484
2441
  "type": {
2485
- "text": "boolean"
2442
+ "text": "string | undefined"
2486
2443
  },
2487
- "default": "false",
2488
- "description": "The button's active state indicates whether it is currently toggled on (active) or off (inactive).\nWhen the active state is true, the button is considered to be in an active state, meaning it is toggled on.\nConversely, when the active state is false, the button is in an inactive state, indicating it is toggled off.",
2489
- "fieldName": "active",
2444
+ "description": "The label of the input field. It is linked to the input field using the `for` attribute.",
2445
+ "fieldName": "label",
2490
2446
  "inheritedFrom": {
2491
- "name": "Buttonsimple",
2492
- "module": "src/components/buttonsimple/buttonsimple.component.ts"
2447
+ "name": "FormfieldWrapper",
2448
+ "module": "src/components/formfieldwrapper/formfieldwrapper.component.ts"
2493
2449
  }
2494
2450
  },
2495
2451
  {
2496
- "name": "soft-disabled",
2452
+ "name": "required-label",
2497
2453
  "type": {
2498
- "text": "boolean"
2454
+ "text": "string | undefined"
2499
2455
  },
2500
- "default": "false",
2501
- "description": "Indicates whether the button is soft disabled.\nWhen set to `true`, the button appears visually disabled but still allows\nfocus, click, and keyboard actions to be passed through.\n\n**Important:** When using soft disabled, consumers must ensure that\nthe button behaves like a disabled button, allowing only focus and\npreventing any interactions (clicks or keyboard actions) from triggering unintended actions.",
2502
- "fieldName": "softDisabled",
2456
+ "description": "The required label of the input field.\nWhen an appropriate string value is set,\nthe input field is marked as required and the label is appended with this text.",
2457
+ "fieldName": "requiredLabel",
2503
2458
  "inheritedFrom": {
2504
- "name": "Buttonsimple",
2505
- "module": "src/components/buttonsimple/buttonsimple.component.ts"
2459
+ "name": "FormfieldWrapper",
2460
+ "module": "src/components/formfieldwrapper/formfieldwrapper.component.ts"
2506
2461
  }
2507
2462
  },
2508
2463
  {
2509
- "name": "type",
2464
+ "name": "id",
2465
+ "default": "`mdc-input-${uuidv4()}`",
2466
+ "description": "The unique id of the input field. It is used to link the input field with the label.",
2467
+ "fieldName": "id",
2468
+ "inheritedFrom": {
2469
+ "name": "FormfieldWrapper",
2470
+ "module": "src/components/formfieldwrapper/formfieldwrapper.component.ts"
2471
+ }
2472
+ },
2473
+ {
2474
+ "name": "help-text-type",
2510
2475
  "type": {
2511
- "text": "ButtonType"
2476
+ "text": "ValidationType"
2512
2477
  },
2513
- "description": "This property defines the type attribute for the button element.\nThe type attribute specifies the behavior of the button when it is clicked.\n- **submit**: The button submits the form data to the server.\n- **reset**: The button resets the form data to its initial state.\n- **button**: The button does nothing when clicked.",
2514
- "default": "button",
2515
- "fieldName": "type",
2478
+ "description": "The type of help text. It can be 'default', 'error', 'warning', 'success', 'priority'.",
2479
+ "fieldName": "helpTextType",
2516
2480
  "inheritedFrom": {
2517
- "name": "Buttonsimple",
2518
- "module": "src/components/buttonsimple/buttonsimple.component.ts"
2481
+ "name": "FormfieldWrapper",
2482
+ "module": "src/components/formfieldwrapper/formfieldwrapper.component.ts"
2483
+ }
2484
+ },
2485
+ {
2486
+ "name": "help-text",
2487
+ "type": {
2488
+ "text": "string | undefined"
2489
+ },
2490
+ "description": "The help text that is displayed below the input field.",
2491
+ "fieldName": "helpText",
2492
+ "inheritedFrom": {
2493
+ "name": "FormfieldWrapper",
2494
+ "module": "src/components/formfieldwrapper/formfieldwrapper.component.ts"
2519
2495
  }
2520
2496
  }
2521
2497
  ],
2498
+ "mixins": [
2499
+ {
2500
+ "name": "NameMixin",
2501
+ "module": "/src/utils/mixins/NameMixin"
2502
+ },
2503
+ {
2504
+ "name": "ValueMixin",
2505
+ "module": "/src/utils/mixins/ValueMixin"
2506
+ },
2507
+ {
2508
+ "name": "DataAriaLabelMixin",
2509
+ "module": "/src/utils/mixins/DataAriaLabelMixin"
2510
+ }
2511
+ ],
2522
2512
  "superclass": {
2523
- "name": "Buttonsimple",
2524
- "module": "/src/components/buttonsimple/buttonsimple.component"
2513
+ "name": "FormfieldWrapper",
2514
+ "module": "/src/components/formfieldwrapper/formfieldwrapper.component"
2525
2515
  },
2526
- "tagName": "mdc-button",
2527
- "jsDoc": "/**\n * `mdc-button` is a component that can be configured in various ways to suit different use cases.\n *\n * Button Variants:\n * - **Primary**: Solid background color.\n * - **Secondary**: Transparent background with a solid border.\n * - **Tertiary**: No background or border, appears as plain text but retains all button functionalities.\n *\n * Button Colors:\n * - **Positive**: Green color.\n * - **Negative**: Red color.\n * - **Accent**: Blue color.\n * - **Promotional**: Purple color.\n * - **Default**: White color.\n *\n * Button Sizes (in REM units):\n * - **Pill button**: 40, 32, 28, 24.\n * - **Icon button**: 64, 52, 40, 32, 28, 24.\n * - **Tertiary icon button**: 20.\n *\n * Button Types:\n * - **Pill button**: A button that contains text value. Commonly used for call to action, tags, or filters.\n * - **Pill button with icons**: A button containing an icon either on the left or right side of the button.\n * - **Icon button**: A button represented by just an icon without any text.\n * The type of button is inferred based on the presence of slot and/or prefix and postfix icons.\n *\n * @dependency mdc-icon\n *\n * @tagname mdc-button\n *\n * @slot - Text label of the button.\n */",
2528
- "customElement": true
2516
+ "tagName": "mdc-checkbox",
2517
+ "jsDoc": "/**\n * Checkboxes allow users to select multiple options from a list or turn an item/feature on or off.\n * These are often used in forms, settings, and selections in lists.\n *\n * A checkbox component contains an optional label and an optional helper text.\n *\n * To create a group of checkboxes, use the FormFieldGroup component.\n *\n * @dependency mdc-icon\n *\n * @tagname mdc-checkbox\n *\n * @cssproperty --mdc-checkbox-background-color-hover - Allows customization of the background color on hover.\n * @cssproperty --mdc-checkbox-border-color - Border color in high contrast.\n * @cssproperty --mdc-checkbox-checked-background-color - Background color for a selected checkbox.\n * @cssproperty --mdc-checkbox-checked-background-color-hover - Background color for a selected checkbox when hovered.\n * @cssproperty --mdc-checkbox-checked-pressed-icon-color - Background color for a selected checkbox when pressed.\n * @cssproperty --mdc-checkbox-disabled-background-color - Background color for a disabled checkbox.\n * @cssproperty --mdc-checkbox-disabled-border-color - Border color for a disabled checkbox.\n * @cssproperty --mdc-checkbox-disabled-checked-icon-color - Background color for a disabled, selected checkbox.\n * @cssproperty --mdc-checkbox-disabled-icon-color - Icon color for a disabled checkbox.\n * @cssproperty --mdc-checkbox-icon-background-color - Background color for an unselected checkbox.\n * @cssproperty --mdc-checkbox-icon-border-color - Default background color for an unselected checkbox.\n * @cssproperty --mdc-checkbox-icon-color - Icon color for an unselected checkbox.\n * @cssproperty --mdc-checkbox-pressed-icon-color - Background color for a selected checkbox when pressed.\n */",
2518
+ "customElement": true,
2519
+ "slots": [
2520
+ {
2521
+ "description": "slot to add the label info icon",
2522
+ "name": "label-info",
2523
+ "inheritedFrom": {
2524
+ "name": "FormfieldWrapper",
2525
+ "module": "src/components/formfieldwrapper/formfieldwrapper.component.ts"
2526
+ }
2527
+ }
2528
+ ]
2529
2529
  }
2530
2530
  ],
2531
2531
  "exports": [
@@ -2533,8 +2533,8 @@
2533
2533
  "kind": "js",
2534
2534
  "name": "default",
2535
2535
  "declaration": {
2536
- "name": "Button",
2537
- "module": "components/button/button.component.js"
2536
+ "name": "Checkbox",
2537
+ "module": "components/checkbox/checkbox.component.js"
2538
2538
  }
2539
2539
  }
2540
2540
  ]
@@ -5823,7 +5823,8 @@
5823
5823
  },
5824
5824
  "description": "There are 2 variants of spinner: default and button. Their coloring is different.\n- **Standalone (Default)**: Track has a blue color.\n- **Button**: To be used when placed in a button to show that the button’s action is currently in progress.\nTo ensure a minimum 3:1 contrast ratio, change the active indicator color to be the same color as the button’s\nicon or label text.",
5825
5825
  "default": "standalone",
5826
- "attribute": "variant"
5826
+ "attribute": "variant",
5827
+ "reflects": true
5827
5828
  }
5828
5829
  ],
5829
5830
  "attributes": [