From 2d6af6004856b457498d4f4e70e386317fb9e317 Mon Sep 17 00:00:00 2001 From: Josh Black Date: Fri, 10 Apr 2020 14:30:27 -0500 Subject: [PATCH 01/11] chore(github): update CODEOWNERS syntax for PublicAPI files --- CODEOWNERS | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/CODEOWNERS b/CODEOWNERS index e591e82d6590..a530d7313f5f 100644 --- a/CODEOWNERS +++ b/CODEOWNERS @@ -13,5 +13,5 @@ # Release team should be notified of Public API changes in the following # packages -/packages/react/__tests__/PublicAPI-test.js @carbon-design-system/release @carbon-design-system/developers-system -/packages/react/__tests__/__snapshots__/PublicAPI-test.js.snap @carbon-design-system/release @carbon-design-system/developers-system +**/PublicAPI-test.js @carbon-design-system/release @carbon-design-system/developers-system +**/PublicAPI-test.js.snap @carbon-design-system/release @carbon-design-system/developers-system From 4bc8bd60d0f8746f1f178c2bcadce7874f8ed0a2 Mon Sep 17 00:00:00 2001 From: Josh Black Date: Fri, 10 Apr 2020 14:31:17 -0500 Subject: [PATCH 02/11] test(e2e): add PublicAPI tests and use metadata for icon tests --- e2e/icons-react/PublicAPI-test.js | 18 + .../__snapshots__/PublicAPI-test.js.snap | 4063 +++++++++++++++++ e2e/icons-react/components-test.js | 56 +- e2e/icons/PublicAPI-test.js | 18 + .../__snapshots__/PublicAPI-test.js.snap | 4063 +++++++++++++++++ e2e/icons/components-test.js | 56 +- 6 files changed, 8251 insertions(+), 23 deletions(-) create mode 100644 e2e/icons-react/PublicAPI-test.js create mode 100644 e2e/icons-react/__snapshots__/PublicAPI-test.js.snap create mode 100644 e2e/icons/PublicAPI-test.js create mode 100644 e2e/icons/__snapshots__/PublicAPI-test.js.snap diff --git a/e2e/icons-react/PublicAPI-test.js b/e2e/icons-react/PublicAPI-test.js new file mode 100644 index 000000000000..5df1cf8e9992 --- /dev/null +++ b/e2e/icons-react/PublicAPI-test.js @@ -0,0 +1,18 @@ +/** + * Copyright IBM Corp. 2018, 2018 + * + * This source code is licensed under the Apache-2.0 license found in the + * LICENSE file in the root directory of this source tree. + * + * @jest-environment node + */ + +'use strict'; + +const CarbonIconsReact = require('@carbon/icons-react'); + +describe('@carbon/icons-react', () => { + it('should not update exports without a semver change', () => { + expect(Object.keys(CarbonIconsReact).sort()).toMatchSnapshot(); + }); +}); diff --git a/e2e/icons-react/__snapshots__/PublicAPI-test.js.snap b/e2e/icons-react/__snapshots__/PublicAPI-test.js.snap new file mode 100644 index 000000000000..a1a7f404def4 --- /dev/null +++ b/e2e/icons-react/__snapshots__/PublicAPI-test.js.snap @@ -0,0 +1,4063 @@ +// Jest Snapshot v1, https://goo.gl/fbAQLP + +exports[`@carbon/icons-react should not update exports without a semver change 1`] = ` +Array [ + "Accessibility16", + "Accessibility20", + "Accessibility24", + "Accessibility32", + "AccessibilityAlt16", + "AccessibilityAlt20", + "AccessibilityAlt24", + "AccessibilityAlt32", + "AccessibilityColor16", + "AccessibilityColor20", + "AccessibilityColor24", + "AccessibilityColor32", + "AccessibilityColorFilled16", + "AccessibilityColorFilled20", + "AccessibilityColorFilled24", + "AccessibilityColorFilled32", + "Account16", + "Account20", + "Account24", + "Account32", + "Activity16", + "Activity20", + "Activity24", + "Activity32", + "Add16", + "Add20", + "Add24", + "Add32", + "AddAlt16", + "AddAlt20", + "AddAlt24", + "AddAlt32", + "AddComment16", + "AddComment20", + "AddComment24", + "AddComment32", + "AddFilled16", + "AddFilled20", + "AddFilled24", + "AddFilled32", + "Alarm16", + "Alarm20", + "Alarm24", + "Alarm32", + "AlarmAdd16", + "AlarmAdd20", + "AlarmAdd24", + "AlarmAdd32", + "AlarmSubtract16", + "AlarmSubtract20", + "AlarmSubtract24", + "AlarmSubtract32", + "AlignHorizontalCenter16", + "AlignHorizontalCenter20", + "AlignHorizontalCenter24", + "AlignHorizontalCenter32", + "AlignHorizontalLeft16", + "AlignHorizontalLeft20", + "AlignHorizontalLeft24", + "AlignHorizontalLeft32", + "AlignHorizontalRight16", + "AlignHorizontalRight20", + "AlignHorizontalRight24", + "AlignHorizontalRight32", + "AlignVerticalBottom16", + "AlignVerticalBottom20", + "AlignVerticalBottom24", + "AlignVerticalBottom32", + "AlignVerticalCenter16", + "AlignVerticalCenter20", + "AlignVerticalCenter24", + "AlignVerticalCenter32", + "AlignVerticalTop16", + "AlignVerticalTop20", + "AlignVerticalTop24", + "AlignVerticalTop32", + "Analytics16", + "Analytics20", + "Analytics24", + "Analytics32", + "Aperture16", + "Aperture20", + "Aperture24", + "Aperture32", + "Api16", + "Api20", + "Api24", + "Api32", + "Api_116", + "Api_120", + "Api_124", + "Api_132", + "App16", + "App20", + "App24", + "App32", + "AppSwitcher16", + "AppSwitcher20", + "AppSwitcher24", + "AppSwitcher32", + "Apple16", + "Apple20", + "Apple24", + "Apple32", + "Application16", + "Application20", + "Application24", + "Application32", + "Apps16", + "Apps20", + "Apps24", + "Apps32", + "Archive16", + "Archive20", + "Archive24", + "Archive32", + "Arrival16", + "Arrival20", + "Arrival24", + "Arrival32", + "ArrowDown16", + "ArrowDown20", + "ArrowDown24", + "ArrowDown32", + "ArrowDownLeft16", + "ArrowDownLeft20", + "ArrowDownLeft24", + "ArrowDownLeft32", + "ArrowDownRight16", + "ArrowDownRight20", + "ArrowDownRight24", + "ArrowDownRight32", + "ArrowLeft16", + "ArrowLeft20", + "ArrowLeft24", + "ArrowLeft32", + "ArrowRight16", + "ArrowRight20", + "ArrowRight24", + "ArrowRight32", + "ArrowShiftDown16", + "ArrowShiftDown20", + "ArrowShiftDown24", + "ArrowShiftDown32", + "ArrowUp16", + "ArrowUp20", + "ArrowUp24", + "ArrowUp32", + "ArrowUpLeft16", + "ArrowUpLeft20", + "ArrowUpLeft24", + "ArrowUpLeft32", + "ArrowUpRight16", + "ArrowUpRight20", + "ArrowUpRight24", + "ArrowUpRight32", + "Arrows16", + "Arrows20", + "Arrows24", + "Arrows32", + "ArrowsHorizontal16", + "ArrowsHorizontal20", + "ArrowsHorizontal24", + "ArrowsHorizontal32", + "ArrowsVertical16", + "ArrowsVertical20", + "ArrowsVertical24", + "ArrowsVertical32", + "Asleep16", + "Asleep20", + "Asleep24", + "Asleep32", + "AsleepFilled16", + "AsleepFilled20", + "AsleepFilled24", + "AsleepFilled32", + "Asset16", + "Asset20", + "Asset24", + "Asset32", + "At16", + "At20", + "At24", + "At32", + "Attachment16", + "Attachment20", + "Attachment24", + "Attachment32", + "AudioConsole16", + "AudioConsole20", + "AudioConsole24", + "AudioConsole32", + "AugmentedReality16", + "AugmentedReality20", + "AugmentedReality24", + "AugmentedReality32", + "Awake16", + "Awake20", + "Awake24", + "Awake32", + "BackToTop16", + "BackToTop20", + "BackToTop24", + "BackToTop32", + "Badge16", + "Badge20", + "Badge24", + "Badge32", + "Bar16", + "Bar20", + "Bar24", + "Bar32", + "Basketball16", + "Basketball20", + "Basketball24", + "Basketball32", + "BatteryCharging16", + "BatteryCharging20", + "BatteryCharging24", + "BatteryCharging32", + "BatteryEmpty16", + "BatteryEmpty20", + "BatteryEmpty24", + "BatteryEmpty32", + "BatteryFull16", + "BatteryFull20", + "BatteryFull24", + "BatteryFull32", + "BatteryHalf16", + "BatteryHalf20", + "BatteryHalf24", + "BatteryHalf32", + "BatteryLow16", + "BatteryLow20", + "BatteryLow24", + "BatteryLow32", + "BatteryQuarter16", + "BatteryQuarter20", + "BatteryQuarter24", + "BatteryQuarter32", + "Bee16", + "Bee20", + "Bee24", + "Bee32", + "Bicycle16", + "Bicycle20", + "Bicycle24", + "Bicycle32", + "Binoculars16", + "Binoculars20", + "Binoculars24", + "Binoculars32", + "Blockchain16", + "Blockchain20", + "Blockchain24", + "Blockchain32", + "Blog16", + "Blog20", + "Blog24", + "Blog32", + "Bluetooth16", + "Bluetooth20", + "Bluetooth24", + "Bluetooth32", + "BluetoothOff16", + "BluetoothOff20", + "BluetoothOff24", + "BluetoothOff32", + "Bookmark16", + "Bookmark20", + "Bookmark24", + "Bookmark32", + "Box16", + "Box20", + "Box24", + "Box32", + "Branch16", + "Branch20", + "Branch24", + "Branch32", + "BrightnessContrast16", + "BrightnessContrast20", + "BrightnessContrast24", + "BrightnessContrast32", + "Building16", + "Building20", + "Building24", + "Building32", + "BuildingInsights_116", + "BuildingInsights_120", + "BuildingInsights_124", + "BuildingInsights_132", + "BuildingInsights_216", + "BuildingInsights_220", + "BuildingInsights_224", + "BuildingInsights_232", + "BuildingInsights_316", + "BuildingInsights_320", + "BuildingInsights_324", + "BuildingInsights_332", + "Bullhorn16", + "Bullhorn20", + "Bullhorn24", + "Bullhorn32", + "Bus16", + "Bus20", + "Bus24", + "Bus32", + "Cad16", + "Cad20", + "Cad24", + "Cad32", + "Cafe16", + "Cafe20", + "Cafe24", + "Cafe32", + "Calculator16", + "Calculator20", + "Calculator24", + "Calculator32", + "CalculatorCheck16", + "CalculatorCheck20", + "CalculatorCheck24", + "CalculatorCheck32", + "Calendar16", + "Calendar20", + "Calendar24", + "Calendar32", + "Calibrate16", + "Calibrate20", + "Calibrate24", + "Calibrate32", + "Camera16", + "Camera20", + "Camera24", + "Camera32", + "CameraAction16", + "CameraAction20", + "CameraAction24", + "CameraAction32", + "Car16", + "Car20", + "Car24", + "Car32", + "CarFront16", + "CarFront20", + "CarFront24", + "CarFront32", + "Carbon16", + "Carbon20", + "Carbon24", + "Carbon32", + "CaretDown16", + "CaretDown20", + "CaretDown24", + "CaretDown32", + "CaretDownGlyph", + "CaretLeft16", + "CaretLeft20", + "CaretLeft24", + "CaretLeft32", + "CaretLeftGlyph", + "CaretRight16", + "CaretRight20", + "CaretRight24", + "CaretRight32", + "CaretRightGlyph", + "CaretSort16", + "CaretSort20", + "CaretSort24", + "CaretSort32", + "CaretSortDown16", + "CaretSortDown20", + "CaretSortDown24", + "CaretSortDown32", + "CaretSortUp16", + "CaretSortUp20", + "CaretSortUp24", + "CaretSortUp32", + "CaretUp16", + "CaretUp20", + "CaretUp24", + "CaretUp32", + "CaretUpGlyph", + "CarouselHorizontal16", + "CarouselHorizontal20", + "CarouselHorizontal24", + "CarouselHorizontal32", + "CarouselVertical16", + "CarouselVertical20", + "CarouselVertical24", + "CarouselVertical32", + "Catalog16", + "Catalog20", + "Catalog24", + "Catalog32", + "Categories16", + "Categories20", + "Categories24", + "Categories32", + "Category16", + "Category20", + "Category24", + "Category32", + "CategoryAdd16", + "CategoryAdd20", + "CategoryAdd24", + "CategoryAdd32", + "CategoryAnd16", + "CategoryAnd20", + "CategoryAnd24", + "CategoryAnd32", + "CategoryNew16", + "CategoryNew20", + "CategoryNew24", + "CategoryNew32", + "CategoryNewEach16", + "CategoryNewEach20", + "CategoryNewEach24", + "CategoryNewEach32", + "Cda16", + "Cda20", + "Cda24", + "Cda32", + "CenterCircle16", + "CenterCircle20", + "CenterCircle24", + "CenterCircle32", + "CenterSquare16", + "CenterSquare20", + "CenterSquare24", + "CenterSquare32", + "Certificate16", + "Certificate20", + "Certificate24", + "Certificate32", + "CertificateCheck16", + "CertificateCheck20", + "CertificateCheck24", + "CertificateCheck32", + "ChangeCatalog16", + "ChangeCatalog20", + "ChangeCatalog24", + "ChangeCatalog32", + "CharacterPatterns16", + "CharacterPatterns20", + "CharacterPatterns24", + "CharacterPatterns32", + "ChargingStation16", + "ChargingStation20", + "ChargingStation24", + "ChargingStation32", + "ChargingStationFilled16", + "ChargingStationFilled20", + "ChargingStationFilled24", + "ChargingStationFilled32", + "ChartBar16", + "ChartBar20", + "ChartBar24", + "ChartBar32", + "ChartBubble16", + "ChartBubble20", + "ChartBubble24", + "ChartBubble32", + "ChartLine16", + "ChartLine20", + "ChartLine24", + "ChartLine32", + "ChartLineData16", + "ChartLineData20", + "ChartLineData24", + "ChartLineData32", + "ChartNetwork16", + "ChartNetwork20", + "ChartNetwork24", + "ChartNetwork32", + "ChartPie16", + "ChartPie20", + "ChartPie24", + "ChartPie32", + "ChartScatter16", + "ChartScatter20", + "ChartScatter24", + "ChartScatter32", + "ChartVennDiagram16", + "ChartVennDiagram20", + "ChartVennDiagram24", + "ChartVennDiagram32", + "Chat16", + "Chat20", + "Chat24", + "Chat32", + "ChatBot16", + "ChatBot20", + "ChatBot24", + "ChatBot32", + "Checkbox16", + "Checkbox20", + "Checkbox24", + "Checkbox32", + "CheckboxChecked16", + "CheckboxChecked20", + "CheckboxChecked24", + "CheckboxChecked32", + "CheckboxCheckedFilled16", + "CheckboxCheckedFilled20", + "CheckboxCheckedFilled24", + "CheckboxCheckedFilled32", + "CheckboxIndeterminate16", + "CheckboxIndeterminate20", + "CheckboxIndeterminate24", + "CheckboxIndeterminate32", + "CheckboxIndeterminateFilled16", + "CheckboxIndeterminateFilled20", + "CheckboxIndeterminateFilled24", + "CheckboxIndeterminateFilled32", + "CheckboxUndeterminate16", + "CheckboxUndeterminate20", + "CheckboxUndeterminate24", + "CheckboxUndeterminate32", + "CheckboxUndeterminateFilled16", + "CheckboxUndeterminateFilled20", + "CheckboxUndeterminateFilled24", + "CheckboxUndeterminateFilled32", + "Checkmark16", + "Checkmark20", + "Checkmark24", + "Checkmark32", + "CheckmarkFilled16", + "CheckmarkFilled20", + "CheckmarkFilled24", + "CheckmarkFilled32", + "CheckmarkOutline16", + "CheckmarkOutline20", + "CheckmarkOutline24", + "CheckmarkOutline32", + "Chemistry16", + "Chemistry20", + "Chemistry24", + "Chemistry32", + "ChevronDown16", + "ChevronDown20", + "ChevronDown24", + "ChevronDown32", + "ChevronDownGlyph", + "ChevronLeft16", + "ChevronLeft20", + "ChevronLeft24", + "ChevronLeft32", + "ChevronLeftGlyph", + "ChevronMini16", + "ChevronMini20", + "ChevronMini24", + "ChevronMini32", + "ChevronRight16", + "ChevronRight20", + "ChevronRight24", + "ChevronRight32", + "ChevronRightGlyph", + "ChevronSort16", + "ChevronSort20", + "ChevronSort24", + "ChevronSort32", + "ChevronSortDown16", + "ChevronSortDown20", + "ChevronSortDown24", + "ChevronSortDown32", + "ChevronSortUp16", + "ChevronSortUp20", + "ChevronSortUp24", + "ChevronSortUp32", + "ChevronUp16", + "ChevronUp20", + "ChevronUp24", + "ChevronUp32", + "ChevronUpGlyph", + "Chip16", + "Chip20", + "Chip24", + "Chip32", + "Choices16", + "Choices20", + "Choices24", + "Choices32", + "CircleDash16", + "CircleDash20", + "CircleDash24", + "CircleDash32", + "CircleFilled16", + "CircleFilled20", + "CircleFilled24", + "CircleFilled32", + "Classification16", + "Classification20", + "Classification24", + "Classification32", + "ClassifierLanguage16", + "ClassifierLanguage20", + "ClassifierLanguage24", + "ClassifierLanguage32", + "Close16", + "Close20", + "Close24", + "Close32", + "CloseFilled16", + "CloseFilled20", + "CloseFilled24", + "CloseFilled32", + "CloseOutline16", + "CloseOutline20", + "CloseOutline24", + "CloseOutline32", + "ClosedCaption16", + "ClosedCaption20", + "ClosedCaption24", + "ClosedCaption32", + "ClosedCaptionAlt16", + "ClosedCaptionAlt20", + "ClosedCaptionAlt24", + "ClosedCaptionAlt32", + "ClosedCaptionFilled16", + "ClosedCaptionFilled20", + "ClosedCaptionFilled24", + "ClosedCaptionFilled32", + "Cloud16", + "Cloud20", + "Cloud24", + "Cloud32", + "CloudApp16", + "CloudApp20", + "CloudApp24", + "CloudApp32", + "CloudDownload16", + "CloudDownload20", + "CloudDownload24", + "CloudDownload32", + "CloudFoundry_116", + "CloudFoundry_120", + "CloudFoundry_124", + "CloudFoundry_132", + "CloudFoundry_216", + "CloudFoundry_220", + "CloudFoundry_224", + "CloudFoundry_232", + "CloudLightning16", + "CloudLightning20", + "CloudLightning24", + "CloudLightning32", + "CloudRain16", + "CloudRain20", + "CloudRain24", + "CloudRain32", + "CloudSnow16", + "CloudSnow20", + "CloudSnow24", + "CloudSnow32", + "CloudUpload16", + "CloudUpload20", + "CloudUpload24", + "CloudUpload32", + "Cloudy16", + "Cloudy20", + "Cloudy24", + "Cloudy32", + "Code16", + "Code20", + "Code24", + "Code32", + "Cognitive16", + "Cognitive20", + "Cognitive24", + "Cognitive32", + "Collaborate16", + "Collaborate20", + "Collaborate24", + "Collaborate32", + "CollapseAll16", + "CollapseAll20", + "CollapseAll24", + "CollapseAll32", + "CollapseCategories16", + "CollapseCategories20", + "CollapseCategories24", + "CollapseCategories32", + "ColorPalette16", + "ColorPalette20", + "ColorPalette24", + "ColorPalette32", + "ColorSwitch16", + "ColorSwitch20", + "ColorSwitch24", + "ColorSwitch32", + "Column16", + "Column20", + "Column24", + "Column32", + "Compare16", + "Compare20", + "Compare24", + "Compare32", + "Compass16", + "Compass20", + "Compass24", + "Compass32", + "Concept16", + "Concept20", + "Concept24", + "Concept32", + "Connect16", + "Connect20", + "Connect24", + "Connect32", + "ConnectionSignal16", + "ConnectionSignal20", + "ConnectionSignal24", + "ConnectionSignal32", + "ContainerSoftware16", + "ContainerSoftware20", + "ContainerSoftware24", + "ContainerSoftware32", + "Contrast16", + "Contrast20", + "Contrast24", + "Contrast32", + "Copy16", + "Copy20", + "Copy24", + "Copy32", + "CopyFile16", + "CopyFile20", + "CopyFile24", + "CopyFile32", + "Corn16", + "Corn20", + "Corn24", + "Corn32", + "Corner16", + "Corner20", + "Corner24", + "Corner32", + "Course16", + "Course20", + "Course24", + "Course32", + "Covariate16", + "Covariate20", + "Covariate24", + "Covariate32", + "Credentials16", + "Credentials20", + "Credentials24", + "Credentials32", + "Crop16", + "Crop20", + "Crop24", + "Crop32", + "Csv16", + "Csv20", + "Csv24", + "Csv32", + "Cursor_116", + "Cursor_120", + "Cursor_124", + "Cursor_132", + "Cursor_216", + "Cursor_220", + "Cursor_224", + "Cursor_232", + "Cut16", + "Cut20", + "Cut24", + "Cut32", + "Cyclist16", + "Cyclist20", + "Cyclist24", + "Cyclist32", + "Dashboard16", + "Dashboard20", + "Dashboard24", + "Dashboard32", + "DataBase16", + "DataBase20", + "DataBase24", + "DataBase32", + "DataCheck16", + "DataCheck20", + "DataCheck24", + "DataCheck32", + "DataClass16", + "DataClass20", + "DataClass24", + "DataClass32", + "DataConnected16", + "DataConnected20", + "DataConnected24", + "DataConnected32", + "DataError16", + "DataError20", + "DataError24", + "DataError32", + "DataReference16", + "DataReference20", + "DataReference24", + "DataReference32", + "DataRefinery16", + "DataRefinery20", + "DataRefinery24", + "DataRefinery32", + "DataSet16", + "DataSet20", + "DataSet24", + "DataSet32", + "DataShare16", + "DataShare20", + "DataShare24", + "DataShare32", + "DataStructured16", + "DataStructured20", + "DataStructured24", + "DataStructured32", + "DataTable16", + "DataTable20", + "DataTable24", + "DataTable32", + "DataUnstructured16", + "DataUnstructured20", + "DataUnstructured24", + "DataUnstructured32", + "DataVis_116", + "DataVis_120", + "DataVis_124", + "DataVis_132", + "DataVis_216", + "DataVis_220", + "DataVis_224", + "DataVis_232", + "DataVis_316", + "DataVis_320", + "DataVis_324", + "DataVis_332", + "DataVis_416", + "DataVis_420", + "DataVis_424", + "DataVis_432", + "Data_116", + "Data_120", + "Data_124", + "Data_132", + "Data_216", + "Data_220", + "Data_224", + "Data_232", + "Datastore16", + "Datastore20", + "Datastore24", + "Datastore32", + "Debug16", + "Debug20", + "Debug24", + "Debug32", + "Delete16", + "Delete20", + "Delete24", + "Delete32", + "DeliveryTruck16", + "DeliveryTruck20", + "DeliveryTruck24", + "DeliveryTruck32", + "Departure16", + "Departure20", + "Departure24", + "Departure32", + "Deploy16", + "Deploy20", + "Deploy24", + "Deploy32", + "DeployRules16", + "DeployRules20", + "DeployRules24", + "DeployRules32", + "Development16", + "Development20", + "Development24", + "Development32", + "Devices16", + "Devices20", + "Devices24", + "Devices32", + "Diagram16", + "Diagram20", + "Diagram24", + "Diagram32", + "DistributeHorizontalCenter16", + "DistributeHorizontalCenter20", + "DistributeHorizontalCenter24", + "DistributeHorizontalCenter32", + "DistributeHorizontalLeft16", + "DistributeHorizontalLeft20", + "DistributeHorizontalLeft24", + "DistributeHorizontalLeft32", + "DistributeHorizontalRight16", + "DistributeHorizontalRight20", + "DistributeHorizontalRight24", + "DistributeHorizontalRight32", + "DistributeVerticalBottom16", + "DistributeVerticalBottom20", + "DistributeVerticalBottom24", + "DistributeVerticalBottom32", + "DistributeVerticalCenter16", + "DistributeVerticalCenter20", + "DistributeVerticalCenter24", + "DistributeVerticalCenter32", + "DistributeVerticalTop16", + "DistributeVerticalTop20", + "DistributeVerticalTop24", + "DistributeVerticalTop32", + "Doc16", + "Doc20", + "Doc24", + "Doc32", + "Document16", + "Document20", + "Document24", + "Document32", + "DocumentAdd16", + "DocumentAdd20", + "DocumentAdd24", + "DocumentAdd32", + "DocumentBlank16", + "DocumentBlank20", + "DocumentBlank24", + "DocumentBlank32", + "DocumentDownload16", + "DocumentDownload20", + "DocumentDownload24", + "DocumentDownload32", + "DocumentExport16", + "DocumentExport20", + "DocumentExport24", + "DocumentExport32", + "DocumentImport16", + "DocumentImport20", + "DocumentImport24", + "DocumentImport32", + "DocumentPdf16", + "DocumentPdf20", + "DocumentPdf24", + "DocumentPdf32", + "DocumentSentiment16", + "DocumentSentiment20", + "DocumentSentiment24", + "DocumentSentiment32", + "DocumentSubtract16", + "DocumentSubtract20", + "DocumentSubtract24", + "DocumentSubtract32", + "DocumentTasks16", + "DocumentTasks20", + "DocumentTasks24", + "DocumentTasks32", + "DocumentView16", + "DocumentView20", + "DocumentView24", + "DocumentView32", + "DotMark16", + "DotMark20", + "DotMark24", + "DotMark32", + "DoubleInteger16", + "DoubleInteger20", + "DoubleInteger24", + "DoubleInteger32", + "DownToBottom16", + "DownToBottom20", + "DownToBottom24", + "DownToBottom32", + "Download16", + "Download20", + "Download24", + "Download32", + "DragHorizontal16", + "DragHorizontal20", + "DragHorizontal24", + "DragHorizontal32", + "DragVertical16", + "DragVertical20", + "DragVertical24", + "DragVertical32", + "Draggable16", + "Draggable20", + "Draggable24", + "Draggable32", + "Draw16", + "Draw20", + "Draw24", + "Draw32", + "DropPhoto16", + "DropPhoto20", + "DropPhoto24", + "DropPhoto32", + "DropPhotoFilled16", + "DropPhotoFilled20", + "DropPhotoFilled24", + "DropPhotoFilled32", + "Dvr16", + "Dvr20", + "Dvr24", + "Dvr32", + "Earth16", + "Earth20", + "Earth24", + "Earth32", + "EarthAmericas16", + "EarthAmericas20", + "EarthAmericas24", + "EarthAmericas32", + "EarthAmericasFilled16", + "EarthAmericasFilled20", + "EarthAmericasFilled24", + "EarthAmericasFilled32", + "EarthEuropeAfrica16", + "EarthEuropeAfrica20", + "EarthEuropeAfrica24", + "EarthEuropeAfrica32", + "EarthEuropeAfricaFilled16", + "EarthEuropeAfricaFilled20", + "EarthEuropeAfricaFilled24", + "EarthEuropeAfricaFilled32", + "EarthFilled16", + "EarthFilled20", + "EarthFilled24", + "EarthFilled32", + "EarthSoutheastAsia16", + "EarthSoutheastAsia20", + "EarthSoutheastAsia24", + "EarthSoutheastAsia32", + "EarthSoutheastAsiaFilled16", + "EarthSoutheastAsiaFilled20", + "EarthSoutheastAsiaFilled24", + "EarthSoutheastAsiaFilled32", + "Edit16", + "Edit20", + "Edit24", + "Edit32", + "EditOff16", + "EditOff20", + "EditOff24", + "EditOff32", + "EdtLoop16", + "EdtLoop20", + "EdtLoop24", + "EdtLoop32", + "Education16", + "Education20", + "Education24", + "Education32", + "Email16", + "Email20", + "Email24", + "Email32", + "EmailNew16", + "EmailNew20", + "EmailNew24", + "EmailNew32", + "Enterprise16", + "Enterprise20", + "Enterprise24", + "Enterprise32", + "Erase16", + "Erase20", + "Erase24", + "Erase32", + "Error16", + "Error20", + "Error24", + "Error32", + "ErrorFilled16", + "ErrorFilled20", + "ErrorFilled24", + "ErrorFilled32", + "ErrorOutline16", + "ErrorOutline20", + "ErrorOutline24", + "ErrorOutline32", + "Event16", + "Event20", + "Event24", + "Event32", + "EventSchedule16", + "EventSchedule20", + "EventSchedule24", + "EventSchedule32", + "Events16", + "Events20", + "Events24", + "Events32", + "EventsAlt16", + "EventsAlt20", + "EventsAlt24", + "EventsAlt32", + "ExamMode16", + "ExamMode20", + "ExamMode24", + "ExamMode32", + "Exit16", + "Exit20", + "Exit24", + "Exit32", + "ExpandAll16", + "ExpandAll20", + "ExpandAll24", + "ExpandAll32", + "ExpandCategories16", + "ExpandCategories20", + "ExpandCategories24", + "ExpandCategories32", + "Export16", + "Export20", + "Export24", + "Export32", + "Eyedropper16", + "Eyedropper20", + "Eyedropper24", + "Eyedropper32", + "FaceActivated16", + "FaceActivated20", + "FaceActivated24", + "FaceActivated32", + "FaceActivatedAdd16", + "FaceActivatedAdd20", + "FaceActivatedAdd24", + "FaceActivatedAdd32", + "FaceActivatedFilled16", + "FaceActivatedFilled20", + "FaceActivatedFilled24", + "FaceActivatedFilled32", + "FaceAdd16", + "FaceAdd20", + "FaceAdd24", + "FaceAdd32", + "FaceCool16", + "FaceCool20", + "FaceCool24", + "FaceCool32", + "FaceDissatisfied16", + "FaceDissatisfied20", + "FaceDissatisfied24", + "FaceDissatisfied32", + "FaceDissatisfiedFilled16", + "FaceDissatisfiedFilled20", + "FaceDissatisfiedFilled24", + "FaceDissatisfiedFilled32", + "FaceDizzy16", + "FaceDizzy20", + "FaceDizzy24", + "FaceDizzy32", + "FaceDizzyFilled16", + "FaceDizzyFilled20", + "FaceDizzyFilled24", + "FaceDizzyFilled32", + "FaceNeutral16", + "FaceNeutral20", + "FaceNeutral24", + "FaceNeutral32", + "FaceNeutralFilled16", + "FaceNeutralFilled20", + "FaceNeutralFilled24", + "FaceNeutralFilled32", + "FacePending16", + "FacePending20", + "FacePending24", + "FacePending32", + "FacePendingFilled16", + "FacePendingFilled20", + "FacePendingFilled24", + "FacePendingFilled32", + "FaceSatisfied16", + "FaceSatisfied20", + "FaceSatisfied24", + "FaceSatisfied32", + "FaceSatisfiedFilled16", + "FaceSatisfiedFilled20", + "FaceSatisfiedFilled24", + "FaceSatisfiedFilled32", + "FaceWink16", + "FaceWink20", + "FaceWink24", + "FaceWink32", + "FaceWinkFilled16", + "FaceWinkFilled20", + "FaceWinkFilled24", + "FaceWinkFilled32", + "Factor16", + "Factor20", + "Factor24", + "Factor32", + "Fade16", + "Fade20", + "Fade24", + "Fade32", + "Favorite16", + "Favorite20", + "Favorite24", + "Favorite32", + "FavoriteFilled16", + "FavoriteFilled20", + "FavoriteFilled24", + "FavoriteFilled32", + "FetchUpload16", + "FetchUpload20", + "FetchUpload24", + "FetchUpload32", + "FetchUploadCloud16", + "FetchUploadCloud20", + "FetchUploadCloud24", + "FetchUploadCloud32", + "Filter16", + "Filter20", + "Filter24", + "Filter32", + "FilterEdit16", + "FilterEdit20", + "FilterEdit24", + "FilterEdit32", + "Finance16", + "Finance20", + "Finance24", + "Finance32", + "FingerprintRecognition16", + "FingerprintRecognition20", + "FingerprintRecognition24", + "FingerprintRecognition32", + "Fish16", + "Fish20", + "Fish24", + "Fish32", + "FishMultiple16", + "FishMultiple20", + "FishMultiple24", + "FishMultiple32", + "FitToScreen16", + "FitToScreen20", + "FitToScreen24", + "FitToScreen32", + "Flag16", + "Flag20", + "Flag24", + "Flag32", + "FlaggingTaxi16", + "FlaggingTaxi20", + "FlaggingTaxi24", + "FlaggingTaxi32", + "Flash16", + "Flash20", + "Flash24", + "Flash32", + "FlashFilled16", + "FlashFilled20", + "FlashFilled24", + "FlashFilled32", + "FlashOff16", + "FlashOff20", + "FlashOff24", + "FlashOff32", + "FlashOffFilled16", + "FlashOffFilled20", + "FlashOffFilled24", + "FlashOffFilled32", + "Flow16", + "Flow20", + "Flow24", + "Flow32", + "FlowData16", + "FlowData20", + "FlowData24", + "FlowData32", + "FlowStream16", + "FlowStream20", + "FlowStream24", + "FlowStream32", + "Fog16", + "Fog20", + "Fog24", + "Fog32", + "Folder16", + "Folder20", + "Folder24", + "Folder32", + "FolderAdd16", + "FolderAdd20", + "FolderAdd24", + "FolderAdd32", + "FolderDetails16", + "FolderDetails20", + "FolderDetails24", + "FolderDetails32", + "FolderOff16", + "FolderOff20", + "FolderOff24", + "FolderOff32", + "FolderShared16", + "FolderShared20", + "FolderShared24", + "FolderShared32", + "Folders16", + "Folders20", + "Folders24", + "Folders32", + "Fork16", + "Fork20", + "Fork24", + "Fork32", + "Forum16", + "Forum20", + "Forum24", + "Forum32", + "Forward_1016", + "Forward_1020", + "Forward_1024", + "Forward_1032", + "Forward_3016", + "Forward_3020", + "Forward_3024", + "Forward_3032", + "Forward_516", + "Forward_520", + "Forward_524", + "Forward_532", + "FruitBowl16", + "FruitBowl20", + "FruitBowl24", + "FruitBowl32", + "Function16", + "Function20", + "Function24", + "Function32", + "GameConsole16", + "GameConsole20", + "GameConsole24", + "GameConsole32", + "GameWireless16", + "GameWireless20", + "GameWireless24", + "GameWireless32", + "Gamification16", + "Gamification20", + "Gamification24", + "Gamification32", + "GeneratePdf16", + "GeneratePdf20", + "GeneratePdf24", + "GeneratePdf32", + "Gif16", + "Gif20", + "Gif24", + "Gif32", + "Gift16", + "Gift20", + "Gift24", + "Gift32", + "Globe16", + "Globe20", + "Globe24", + "Globe32", + "GraphicalDataFlow16", + "GraphicalDataFlow20", + "GraphicalDataFlow24", + "GraphicalDataFlow32", + "Grid16", + "Grid20", + "Grid24", + "Grid32", + "Group16", + "Group20", + "Group24", + "Group32", + "Hail16", + "Hail20", + "Hail24", + "Hail32", + "Hashtag16", + "Hashtag20", + "Hashtag24", + "Hashtag32", + "Haze16", + "Haze20", + "Haze24", + "Haze32", + "HazeNight16", + "HazeNight20", + "HazeNight24", + "HazeNight32", + "Hd16", + "Hd20", + "Hd24", + "Hd32", + "HdFilled16", + "HdFilled20", + "HdFilled24", + "HdFilled32", + "Hdr16", + "Hdr20", + "Hdr24", + "Hdr32", + "Headphones16", + "Headphones20", + "Headphones24", + "Headphones32", + "Headset16", + "Headset20", + "Headset24", + "Headset32", + "HealthCross16", + "HealthCross20", + "HealthCross24", + "HealthCross32", + "Hearing16", + "Hearing20", + "Hearing24", + "Hearing32", + "Help16", + "Help20", + "Help24", + "Help32", + "HelpDesk16", + "HelpDesk20", + "HelpDesk24", + "HelpDesk32", + "HelpFilled16", + "HelpFilled20", + "HelpFilled24", + "HelpFilled32", + "Home16", + "Home20", + "Home24", + "Home32", + "Hotel16", + "Hotel20", + "Hotel24", + "Hotel32", + "Hourglass16", + "Hourglass20", + "Hourglass24", + "Hourglass32", + "Http16", + "Http20", + "Http24", + "Http32", + "Humidity16", + "Humidity20", + "Humidity24", + "Humidity32", + "Hurricane16", + "Hurricane20", + "Hurricane24", + "Hurricane32", + "HybridNetworking16", + "HybridNetworking20", + "HybridNetworking24", + "HybridNetworking32", + "IbmCloud16", + "IbmCloud20", + "IbmCloud24", + "IbmCloud32", + "IbmSecurity16", + "IbmSecurity20", + "IbmSecurity24", + "IbmSecurity32", + "Icon", + "Idea16", + "Idea20", + "Idea24", + "Idea32", + "Identification16", + "Identification20", + "Identification24", + "Identification32", + "Image16", + "Image20", + "Image24", + "Image32", + "ImageMedical16", + "ImageMedical20", + "ImageMedical24", + "ImageMedical32", + "ImproveRelevance16", + "ImproveRelevance20", + "ImproveRelevance24", + "ImproveRelevance32", + "InProgress16", + "InProgress20", + "InProgress24", + "InProgress32", + "IncreaseLevel16", + "IncreaseLevel20", + "IncreaseLevel24", + "IncreaseLevel32", + "Industry16", + "Industry20", + "Industry24", + "Industry32", + "Information16", + "Information20", + "Information24", + "Information32", + "InformationFilled16", + "InformationFilled20", + "InformationFilled24", + "InformationFilled32", + "Insert16", + "Insert20", + "Insert24", + "Insert32", + "Integration16", + "Integration20", + "Integration24", + "Integration32", + "Interactions16", + "Interactions20", + "Interactions24", + "Interactions32", + "InventoryManagement16", + "InventoryManagement20", + "InventoryManagement24", + "InventoryManagement32", + "IotConnect16", + "IotConnect20", + "IotConnect24", + "IotConnect32", + "IotPlatform16", + "IotPlatform20", + "IotPlatform24", + "IotPlatform32", + "Iso16", + "Iso20", + "Iso24", + "Iso32", + "IsoFilled16", + "IsoFilled20", + "IsoFilled24", + "IsoFilled32", + "IsoOutline16", + "IsoOutline20", + "IsoOutline24", + "IsoOutline32", + "Jpg16", + "Jpg20", + "Jpg24", + "Jpg32", + "Json16", + "Json20", + "Json24", + "Json32", + "JumpLink16", + "JumpLink20", + "JumpLink24", + "JumpLink32", + "Keyboard16", + "Keyboard20", + "Keyboard24", + "Keyboard32", + "Language16", + "Language20", + "Language24", + "Language32", + "Laptop16", + "Laptop20", + "Laptop24", + "Laptop32", + "Launch16", + "Launch20", + "Launch24", + "Launch32", + "Legend16", + "Legend20", + "Legend24", + "Legend32", + "LetterAa16", + "LetterAa20", + "LetterAa24", + "LetterAa32", + "LetterBb16", + "LetterBb20", + "LetterBb24", + "LetterBb32", + "LetterCc16", + "LetterCc20", + "LetterCc24", + "LetterCc32", + "LetterDd16", + "LetterDd20", + "LetterDd24", + "LetterDd32", + "LetterEe16", + "LetterEe20", + "LetterEe24", + "LetterEe32", + "LetterFf16", + "LetterFf20", + "LetterFf24", + "LetterFf32", + "LetterGg16", + "LetterGg20", + "LetterGg24", + "LetterGg32", + "LetterHh16", + "LetterHh20", + "LetterHh24", + "LetterHh32", + "LetterIi16", + "LetterIi20", + "LetterIi24", + "LetterIi32", + "LetterJj16", + "LetterJj20", + "LetterJj24", + "LetterJj32", + "LetterKk16", + "LetterKk20", + "LetterKk24", + "LetterKk32", + "LetterLl16", + "LetterLl20", + "LetterLl24", + "LetterLl32", + "LetterMm16", + "LetterMm20", + "LetterMm24", + "LetterMm32", + "LetterNn16", + "LetterNn20", + "LetterNn24", + "LetterNn32", + "LetterOo16", + "LetterOo20", + "LetterOo24", + "LetterOo32", + "LetterPp16", + "LetterPp20", + "LetterPp24", + "LetterPp32", + "LetterQq16", + "LetterQq20", + "LetterQq24", + "LetterQq32", + "LetterRr16", + "LetterRr20", + "LetterRr24", + "LetterRr32", + "LetterSs16", + "LetterSs20", + "LetterSs24", + "LetterSs32", + "LetterTt16", + "LetterTt20", + "LetterTt24", + "LetterTt32", + "LetterUu16", + "LetterUu20", + "LetterUu24", + "LetterUu32", + "LetterVv16", + "LetterVv20", + "LetterVv24", + "LetterVv32", + "LetterWw16", + "LetterWw20", + "LetterWw24", + "LetterWw32", + "LetterXx16", + "LetterXx20", + "LetterXx24", + "LetterXx32", + "LetterYy16", + "LetterYy20", + "LetterYy24", + "LetterYy32", + "LetterZz16", + "LetterZz20", + "LetterZz24", + "LetterZz32", + "Light16", + "Light20", + "Light24", + "Light32", + "LightFilled16", + "LightFilled20", + "LightFilled24", + "LightFilled32", + "Lightning16", + "Lightning20", + "Lightning24", + "Lightning32", + "Link16", + "Link20", + "Link24", + "Link32", + "List16", + "List20", + "List24", + "List32", + "ListBoxes16", + "ListBoxes20", + "ListBoxes24", + "ListBoxes32", + "ListBulleted16", + "ListBulleted20", + "ListBulleted24", + "ListBulleted32", + "ListChecked16", + "ListChecked20", + "ListChecked24", + "ListChecked32", + "ListDropdown16", + "ListDropdown20", + "ListDropdown24", + "ListDropdown32", + "ListNumbered16", + "ListNumbered20", + "ListNumbered24", + "ListNumbered32", + "Location16", + "Location20", + "Location24", + "Location32", + "Locked16", + "Locked20", + "Locked24", + "Locked32", + "Login16", + "Login20", + "Login24", + "Login32", + "LogoDigg16", + "LogoDigg20", + "LogoDigg24", + "LogoDigg32", + "LogoFacebook16", + "LogoFacebook20", + "LogoFacebook24", + "LogoFacebook32", + "LogoFlickr16", + "LogoFlickr20", + "LogoFlickr24", + "LogoFlickr32", + "LogoGithub16", + "LogoGithub20", + "LogoGithub24", + "LogoGithub32", + "LogoGlassdoor16", + "LogoGlassdoor20", + "LogoGlassdoor24", + "LogoGlassdoor32", + "LogoInstagram16", + "LogoInstagram20", + "LogoInstagram24", + "LogoInstagram32", + "LogoJupyter16", + "LogoJupyter20", + "LogoJupyter24", + "LogoJupyter32", + "LogoLinkedin16", + "LogoLinkedin20", + "LogoLinkedin24", + "LogoLinkedin32", + "LogoLivestream16", + "LogoLivestream20", + "LogoLivestream24", + "LogoLivestream32", + "LogoMedium16", + "LogoMedium20", + "LogoMedium24", + "LogoMedium32", + "LogoOpenshift16", + "LogoOpenshift20", + "LogoOpenshift24", + "LogoOpenshift32", + "LogoPinterest16", + "LogoPinterest20", + "LogoPinterest24", + "LogoPinterest32", + "LogoPython16", + "LogoPython20", + "LogoPython24", + "LogoPython32", + "LogoQuora16", + "LogoQuora20", + "LogoQuora24", + "LogoQuora32", + "LogoRScript16", + "LogoRScript20", + "LogoRScript24", + "LogoRScript32", + "LogoSkype16", + "LogoSkype20", + "LogoSkype24", + "LogoSkype32", + "LogoSlack16", + "LogoSlack20", + "LogoSlack24", + "LogoSlack32", + "LogoSnapchat16", + "LogoSnapchat20", + "LogoSnapchat24", + "LogoSnapchat32", + "LogoTumblr16", + "LogoTumblr20", + "LogoTumblr24", + "LogoTumblr32", + "LogoTwitter16", + "LogoTwitter20", + "LogoTwitter24", + "LogoTwitter32", + "LogoVmware16", + "LogoVmware20", + "LogoVmware24", + "LogoVmware32", + "LogoXing16", + "LogoXing20", + "LogoXing24", + "LogoXing32", + "LogoYelp16", + "LogoYelp20", + "LogoYelp24", + "LogoYelp32", + "LogoYoutube16", + "LogoYoutube20", + "LogoYoutube24", + "LogoYoutube32", + "Logout16", + "Logout20", + "Logout24", + "Logout32", + "Loop16", + "Loop20", + "Loop24", + "Loop32", + "MacCommand16", + "MacCommand20", + "MacCommand24", + "MacCommand32", + "MacOption16", + "MacOption20", + "MacOption24", + "MacOption32", + "MacShift16", + "MacShift20", + "MacShift24", + "MacShift32", + "MachineLearning16", + "MachineLearning20", + "MachineLearning24", + "MachineLearning32", + "MagicWand16", + "MagicWand20", + "MagicWand24", + "MagicWand32", + "MagicWandFilled16", + "MagicWandFilled20", + "MagicWandFilled24", + "MagicWandFilled32", + "MailAll16", + "MailAll20", + "MailAll24", + "MailAll32", + "ManageProtection16", + "ManageProtection20", + "ManageProtection24", + "ManageProtection32", + "ManagedSolutions16", + "ManagedSolutions20", + "ManagedSolutions24", + "ManagedSolutions32", + "Map16", + "Map20", + "Map24", + "Map32", + "Maximize16", + "Maximize20", + "Maximize24", + "Maximize32", + "Medication16", + "Medication20", + "Medication24", + "Medication32", + "MedicationAlert16", + "MedicationAlert20", + "MedicationAlert24", + "MedicationAlert32", + "MedicationReminder16", + "MedicationReminder20", + "MedicationReminder24", + "MedicationReminder32", + "Menu16", + "Menu20", + "Menu24", + "Menu32", + "Meter16", + "Meter20", + "Meter24", + "Meter32", + "Microphone16", + "Microphone20", + "Microphone24", + "Microphone32", + "MicrophoneFilled16", + "MicrophoneFilled20", + "MicrophoneFilled24", + "MicrophoneFilled32", + "MicrophoneOff16", + "MicrophoneOff20", + "MicrophoneOff24", + "MicrophoneOff32", + "MicrophoneOffFilled16", + "MicrophoneOffFilled20", + "MicrophoneOffFilled24", + "MicrophoneOffFilled32", + "Microscope16", + "Microscope20", + "Microscope24", + "Microscope32", + "Migrate16", + "Migrate20", + "Migrate24", + "Migrate32", + "MigrateAlt16", + "MigrateAlt20", + "MigrateAlt24", + "MigrateAlt32", + "Minimize16", + "Minimize20", + "Minimize24", + "Minimize32", + "Misuse16", + "Misuse20", + "Misuse24", + "Misuse32", + "MisuseAlt16", + "MisuseAlt20", + "MisuseAlt24", + "MisuseAlt32", + "MisuseOutline16", + "MisuseOutline20", + "MisuseOutline24", + "MisuseOutline32", + "MixedRainHail16", + "MixedRainHail20", + "MixedRainHail24", + "MixedRainHail32", + "Mobile16", + "Mobile20", + "Mobile24", + "Mobile32", + "MobileAdd16", + "MobileAdd20", + "MobileAdd24", + "MobileAdd32", + "MobileAudio16", + "MobileAudio20", + "MobileAudio24", + "MobileAudio32", + "MobileCheck16", + "MobileCheck20", + "MobileCheck24", + "MobileCheck32", + "MobileDownload16", + "MobileDownload20", + "MobileDownload24", + "MobileDownload32", + "MobileLandscape16", + "MobileLandscape20", + "MobileLandscape24", + "MobileLandscape32", + "Model16", + "Model20", + "Model24", + "Model32", + "ModelBuilder16", + "ModelBuilder20", + "ModelBuilder24", + "ModelBuilder32", + "ModelReference16", + "ModelReference20", + "ModelReference24", + "ModelReference32", + "Money16", + "Money20", + "Money24", + "Money32", + "Moon16", + "Moon20", + "Moon24", + "Moon32", + "MostlyCloudy16", + "MostlyCloudy20", + "MostlyCloudy24", + "MostlyCloudy32", + "MostlyCloudyNight16", + "MostlyCloudyNight20", + "MostlyCloudyNight24", + "MostlyCloudyNight32", + "Mov16", + "Mov20", + "Mov24", + "Mov32", + "Move16", + "Move20", + "Move24", + "Move32", + "Movement16", + "Movement20", + "Movement24", + "Movement32", + "Mp316", + "Mp320", + "Mp324", + "Mp332", + "Mp416", + "Mp420", + "Mp424", + "Mp432", + "Mpeg16", + "Mpeg20", + "Mpeg24", + "Mpeg32", + "Mpg216", + "Mpg220", + "Mpg224", + "Mpg232", + "Music16", + "Music20", + "Music24", + "Music32", + "Network_116", + "Network_120", + "Network_124", + "Network_132", + "Network_216", + "Network_220", + "Network_224", + "Network_232", + "Network_316", + "Network_320", + "Network_324", + "Network_332", + "Network_416", + "Network_420", + "Network_424", + "Network_432", + "NewTab16", + "NewTab20", + "NewTab24", + "NewTab32", + "NoImage16", + "NoImage20", + "NoImage24", + "NoImage32", + "NoTicket16", + "NoTicket20", + "NoTicket24", + "NoTicket32", + "Nominal16", + "Nominal20", + "Nominal24", + "Nominal32", + "NoodleBowl16", + "NoodleBowl20", + "NoodleBowl24", + "NoodleBowl32", + "NotAvailable16", + "NotAvailable20", + "NotAvailable24", + "NotAvailable32", + "NotSent16", + "NotSent20", + "NotSent24", + "NotSent32", + "NotSentFilled16", + "NotSentFilled20", + "NotSentFilled24", + "NotSentFilled32", + "Notebook16", + "Notebook20", + "Notebook24", + "Notebook32", + "NotebookReference16", + "NotebookReference20", + "NotebookReference24", + "NotebookReference32", + "Notification16", + "Notification20", + "Notification24", + "Notification32", + "NotificationFilled16", + "NotificationFilled20", + "NotificationFilled24", + "NotificationFilled32", + "NotificationNew16", + "NotificationNew20", + "NotificationNew24", + "NotificationNew32", + "NotificationOff16", + "NotificationOff20", + "NotificationOff24", + "NotificationOff32", + "NotificationOffFilled16", + "NotificationOffFilled20", + "NotificationOffFilled24", + "NotificationOffFilled32", + "NumberSmall_016", + "NumberSmall_020", + "NumberSmall_024", + "NumberSmall_032", + "NumberSmall_116", + "NumberSmall_120", + "NumberSmall_124", + "NumberSmall_132", + "NumberSmall_216", + "NumberSmall_220", + "NumberSmall_224", + "NumberSmall_232", + "NumberSmall_316", + "NumberSmall_320", + "NumberSmall_324", + "NumberSmall_332", + "NumberSmall_416", + "NumberSmall_420", + "NumberSmall_424", + "NumberSmall_432", + "NumberSmall_516", + "NumberSmall_520", + "NumberSmall_524", + "NumberSmall_532", + "NumberSmall_616", + "NumberSmall_620", + "NumberSmall_624", + "NumberSmall_632", + "NumberSmall_716", + "NumberSmall_720", + "NumberSmall_724", + "NumberSmall_732", + "NumberSmall_816", + "NumberSmall_820", + "NumberSmall_824", + "NumberSmall_832", + "NumberSmall_916", + "NumberSmall_920", + "NumberSmall_924", + "NumberSmall_932", + "Number_016", + "Number_020", + "Number_024", + "Number_032", + "Number_116", + "Number_120", + "Number_124", + "Number_132", + "Number_216", + "Number_220", + "Number_224", + "Number_232", + "Number_316", + "Number_320", + "Number_324", + "Number_332", + "Number_416", + "Number_420", + "Number_424", + "Number_432", + "Number_516", + "Number_520", + "Number_524", + "Number_532", + "Number_616", + "Number_620", + "Number_624", + "Number_632", + "Number_716", + "Number_720", + "Number_724", + "Number_732", + "Number_816", + "Number_820", + "Number_824", + "Number_832", + "Number_916", + "Number_920", + "Number_924", + "Number_932", + "Omega16", + "Omega20", + "Omega24", + "Omega32", + "Opacity16", + "Opacity20", + "Opacity24", + "Opacity32", + "OpenPanelBottom16", + "OpenPanelBottom20", + "OpenPanelBottom24", + "OpenPanelBottom32", + "OpenPanelFilledBottom16", + "OpenPanelFilledBottom20", + "OpenPanelFilledBottom24", + "OpenPanelFilledBottom32", + "OpenPanelFilledLeft16", + "OpenPanelFilledLeft20", + "OpenPanelFilledLeft24", + "OpenPanelFilledLeft32", + "OpenPanelFilledRight16", + "OpenPanelFilledRight20", + "OpenPanelFilledRight24", + "OpenPanelFilledRight32", + "OpenPanelFilledTop16", + "OpenPanelFilledTop20", + "OpenPanelFilledTop24", + "OpenPanelFilledTop32", + "OpenPanelLeft16", + "OpenPanelLeft20", + "OpenPanelLeft24", + "OpenPanelLeft32", + "OpenPanelRight16", + "OpenPanelRight20", + "OpenPanelRight24", + "OpenPanelRight32", + "OpenPanelTop16", + "OpenPanelTop20", + "OpenPanelTop24", + "OpenPanelTop32", + "OperationsField16", + "OperationsField20", + "OperationsField24", + "OperationsField32", + "OperationsRecord16", + "OperationsRecord20", + "OperationsRecord24", + "OperationsRecord32", + "Ordinal16", + "Ordinal20", + "Ordinal24", + "Ordinal32", + "OverflowMenuHorizontal16", + "OverflowMenuHorizontal20", + "OverflowMenuHorizontal24", + "OverflowMenuHorizontal32", + "OverflowMenuVertical16", + "OverflowMenuVertical20", + "OverflowMenuVertical24", + "OverflowMenuVertical32", + "Package16", + "Package20", + "Package24", + "Package32", + "PageFirst16", + "PageFirst20", + "PageFirst24", + "PageFirst32", + "PageLast16", + "PageLast20", + "PageLast24", + "PageLast32", + "PaintBrush16", + "PaintBrush20", + "PaintBrush24", + "PaintBrush32", + "PaintBrushAlt16", + "PaintBrushAlt20", + "PaintBrushAlt24", + "PaintBrushAlt32", + "PanelExpansion16", + "PanelExpansion20", + "PanelExpansion24", + "PanelExpansion32", + "Paragraph16", + "Paragraph20", + "Paragraph24", + "Paragraph32", + "ParentChild16", + "ParentChild20", + "ParentChild24", + "ParentChild32", + "PartlyCloudy16", + "PartlyCloudy20", + "PartlyCloudy24", + "PartlyCloudy32", + "PartlyCloudyNight16", + "PartlyCloudyNight20", + "PartlyCloudyNight24", + "PartlyCloudyNight32", + "Partnership16", + "Partnership20", + "Partnership24", + "Partnership32", + "Password16", + "Password20", + "Password24", + "Password32", + "Paste16", + "Paste20", + "Paste24", + "Paste32", + "Pause16", + "Pause20", + "Pause24", + "Pause32", + "PauseFilled16", + "PauseFilled20", + "PauseFilled24", + "PauseFilled32", + "PauseOutline16", + "PauseOutline20", + "PauseOutline24", + "PauseOutline32", + "PauseOutlineFilled16", + "PauseOutlineFilled20", + "PauseOutlineFilled24", + "PauseOutlineFilled32", + "Pdf16", + "Pdf20", + "Pdf24", + "Pdf32", + "Pedestrian16", + "Pedestrian20", + "Pedestrian24", + "Pedestrian32", + "PedestrianChild16", + "PedestrianChild20", + "PedestrianChild24", + "PedestrianChild32", + "Percentage16", + "Percentage20", + "Percentage24", + "Percentage32", + "PercentageFilled16", + "PercentageFilled20", + "PercentageFilled24", + "PercentageFilled32", + "Person16", + "Person20", + "Person24", + "Person32", + "PersonFavorite16", + "PersonFavorite20", + "PersonFavorite24", + "PersonFavorite32", + "Phone16", + "Phone20", + "Phone24", + "Phone32", + "PhoneFilled16", + "PhoneFilled20", + "PhoneFilled24", + "PhoneFilled32", + "PhoneOff16", + "PhoneOff20", + "PhoneOff24", + "PhoneOff32", + "PhoneOffFilled16", + "PhoneOffFilled20", + "PhoneOffFilled24", + "PhoneOffFilled32", + "PhraseSentiment16", + "PhraseSentiment20", + "PhraseSentiment24", + "PhraseSentiment32", + "Pills16", + "Pills20", + "Pills24", + "Pills32", + "PillsAdd16", + "PillsAdd20", + "PillsAdd24", + "PillsAdd32", + "PillsSubtract16", + "PillsSubtract20", + "PillsSubtract24", + "PillsSubtract32", + "Pin16", + "Pin20", + "Pin24", + "Pin32", + "Plane16", + "Plane20", + "Plane24", + "Plane32", + "Play16", + "Play20", + "Play24", + "Play32", + "PlayFilled16", + "PlayFilled20", + "PlayFilled24", + "PlayFilled32", + "PlayFilledAlt16", + "PlayFilledAlt20", + "PlayFilledAlt24", + "PlayFilledAlt32", + "PlayOutline16", + "PlayOutline20", + "PlayOutline24", + "PlayOutline32", + "PlayOutlineFilled16", + "PlayOutlineFilled20", + "PlayOutlineFilled24", + "PlayOutlineFilled32", + "Playlist16", + "Playlist20", + "Playlist24", + "Playlist32", + "Png16", + "Png20", + "Png24", + "Png32", + "Policy16", + "Policy20", + "Policy24", + "Policy32", + "Popup16", + "Popup20", + "Popup24", + "Popup32", + "Portfolio16", + "Portfolio20", + "Portfolio24", + "Portfolio32", + "Power16", + "Power20", + "Power24", + "Power32", + "Ppt16", + "Ppt20", + "Ppt24", + "Ppt32", + "PresentationFile16", + "PresentationFile20", + "PresentationFile24", + "PresentationFile32", + "Printer16", + "Printer20", + "Printer24", + "Printer32", + "Product16", + "Product20", + "Product24", + "Product32", + "Purchase16", + "Purchase20", + "Purchase24", + "Purchase32", + "QBarrier16", + "QBarrier20", + "QBarrier24", + "QBarrier32", + "QBlochSphere16", + "QBlochSphere20", + "QBlochSphere24", + "QBlochSphere32", + "QCU116", + "QCU120", + "QCU124", + "QCU132", + "QCU316", + "QCU320", + "QCU324", + "QCU332", + "QCY16", + "QCY20", + "QCY24", + "QCY32", + "QCZ16", + "QCZ20", + "QCZ24", + "QCZ32", + "QCcX16", + "QCcX20", + "QCcX24", + "QCcX32", + "QCircuitComposer16", + "QCircuitComposer20", + "QCircuitComposer24", + "QCircuitComposer32", + "QComposerEdit16", + "QComposerEdit20", + "QComposerEdit24", + "QComposerEdit32", + "QH16", + "QH20", + "QH24", + "QH32", + "QHintonPlot16", + "QHintonPlot20", + "QHintonPlot24", + "QHintonPlot32", + "QID16", + "QID20", + "QID24", + "QID32", + "QMatrix16", + "QMatrix20", + "QMatrix24", + "QMatrix32", + "QOperation16", + "QOperation20", + "QOperation24", + "QOperation32", + "QOperationGauge16", + "QOperationGauge20", + "QOperationGauge24", + "QOperationGauge32", + "QOperationIf16", + "QOperationIf20", + "QOperationIf24", + "QOperationIf32", + "QS16", + "QS20", + "QS24", + "QS32", + "QSAlt16", + "QSAlt20", + "QSAlt24", + "QSAlt32", + "QT16", + "QT20", + "QT24", + "QT32", + "QTAlt16", + "QTAlt20", + "QTAlt24", + "QTAlt32", + "QU116", + "QU120", + "QU124", + "QU132", + "QU216", + "QU220", + "QU224", + "QU232", + "QU316", + "QU320", + "QU324", + "QU332", + "QX16", + "QX20", + "QX24", + "QX32", + "QY16", + "QY20", + "QY24", + "QY32", + "QZ16", + "QZ20", + "QZ24", + "QZ32", + "QrCode16", + "QrCode20", + "QrCode24", + "QrCode32", + "QueryQueue16", + "QueryQueue20", + "QueryQueue24", + "QueryQueue32", + "Quotes16", + "Quotes20", + "Quotes24", + "Quotes32", + "Radio16", + "Radio20", + "Radio24", + "Radio32", + "RadioButton16", + "RadioButton20", + "RadioButton24", + "RadioButton32", + "RadioButtonChecked16", + "RadioButtonChecked20", + "RadioButtonChecked24", + "RadioButtonChecked32", + "Rain16", + "Rain20", + "Rain24", + "Rain32", + "RainDrizzle16", + "RainDrizzle20", + "RainDrizzle24", + "RainDrizzle32", + "RainDrop16", + "RainDrop20", + "RainDrop24", + "RainDrop32", + "RainHeavy16", + "RainHeavy20", + "RainHeavy24", + "RainHeavy32", + "RainScattered16", + "RainScattered20", + "RainScattered24", + "RainScattered32", + "RainScatteredNight16", + "RainScatteredNight20", + "RainScatteredNight24", + "RainScatteredNight32", + "Raw16", + "Raw20", + "Raw24", + "Raw32", + "Receipt16", + "Receipt20", + "Receipt24", + "Receipt32", + "RecentlyViewed16", + "RecentlyViewed20", + "RecentlyViewed24", + "RecentlyViewed32", + "Recommend16", + "Recommend20", + "Recommend24", + "Recommend32", + "Recording16", + "Recording20", + "Recording24", + "Recording32", + "RecordingFilled16", + "RecordingFilled20", + "RecordingFilled24", + "RecordingFilled32", + "RecordingFilledAlt16", + "RecordingFilledAlt20", + "RecordingFilledAlt24", + "RecordingFilledAlt32", + "Redo16", + "Redo20", + "Redo24", + "Redo32", + "Reminder16", + "Reminder20", + "Reminder24", + "Reminder32", + "ReminderMedical16", + "ReminderMedical20", + "ReminderMedical24", + "ReminderMedical32", + "Renew16", + "Renew20", + "Renew24", + "Renew32", + "Repeat16", + "Repeat20", + "Repeat24", + "Repeat32", + "RepeatOne16", + "RepeatOne20", + "RepeatOne24", + "RepeatOne32", + "Reply16", + "Reply20", + "Reply24", + "Reply32", + "Report16", + "Report20", + "Report24", + "Report32", + "ReportData16", + "ReportData20", + "ReportData24", + "ReportData32", + "RequestQuote16", + "RequestQuote20", + "RequestQuote24", + "RequestQuote32", + "ResearchBlochSphere16", + "ResearchBlochSphere20", + "ResearchBlochSphere24", + "ResearchBlochSphere32", + "ResearchHintonPlot16", + "ResearchHintonPlot20", + "ResearchHintonPlot24", + "ResearchHintonPlot32", + "ResearchMatrix16", + "ResearchMatrix20", + "ResearchMatrix24", + "ResearchMatrix32", + "Reset16", + "Reset20", + "Reset24", + "Reset32", + "ResetAlt16", + "ResetAlt20", + "ResetAlt24", + "ResetAlt32", + "Restart16", + "Restart20", + "Restart24", + "Restart32", + "Restaurant16", + "Restaurant20", + "Restaurant24", + "Restaurant32", + "RestaurantFine16", + "RestaurantFine20", + "RestaurantFine24", + "RestaurantFine32", + "Rewind_1016", + "Rewind_1020", + "Rewind_1024", + "Rewind_1032", + "Rewind_3016", + "Rewind_3020", + "Rewind_3024", + "Rewind_3032", + "Rewind_516", + "Rewind_520", + "Rewind_524", + "Rewind_532", + "Rocket16", + "Rocket20", + "Rocket24", + "Rocket32", + "Rotate16", + "Rotate20", + "Rotate24", + "Rotate32", + "RotateClockwise16", + "RotateClockwise20", + "RotateClockwise24", + "RotateClockwise32", + "RotateClockwiseAlt16", + "RotateClockwiseAlt20", + "RotateClockwiseAlt24", + "RotateClockwiseAlt32", + "RotateClockwiseAltFilled16", + "RotateClockwiseAltFilled20", + "RotateClockwiseAltFilled24", + "RotateClockwiseAltFilled32", + "RotateClockwiseFilled16", + "RotateClockwiseFilled20", + "RotateClockwiseFilled24", + "RotateClockwiseFilled32", + "RotateCounterclockwise16", + "RotateCounterclockwise20", + "RotateCounterclockwise24", + "RotateCounterclockwise32", + "RotateCounterclockwiseAlt16", + "RotateCounterclockwiseAlt20", + "RotateCounterclockwiseAlt24", + "RotateCounterclockwiseAlt32", + "RotateCounterclockwiseAltFilled16", + "RotateCounterclockwiseAltFilled20", + "RotateCounterclockwiseAltFilled24", + "RotateCounterclockwiseAltFilled32", + "RotateCounterclockwiseFilled16", + "RotateCounterclockwiseFilled20", + "RotateCounterclockwiseFilled24", + "RotateCounterclockwiseFilled32", + "Row16", + "Row20", + "Row24", + "Row32", + "Rss16", + "Rss20", + "Rss24", + "Rss32", + "Rule16", + "Rule20", + "Rule24", + "Rule32", + "Ruler16", + "Ruler20", + "Ruler24", + "Ruler32", + "RulerAlt16", + "RulerAlt20", + "RulerAlt24", + "RulerAlt32", + "Run16", + "Run20", + "Run24", + "Run32", + "Save16", + "Save20", + "Save24", + "Save32", + "SaveModel16", + "SaveModel20", + "SaveModel24", + "SaveModel32", + "Scale16", + "Scale20", + "Scale24", + "Scale32", + "Scalpel16", + "Scalpel20", + "Scalpel24", + "Scalpel32", + "Scan16", + "Scan20", + "Scan24", + "Scan32", + "Schematics16", + "Schematics20", + "Schematics24", + "Schematics32", + "Scooter16", + "Scooter20", + "Scooter24", + "Scooter32", + "ScooterFront16", + "ScooterFront20", + "ScooterFront24", + "ScooterFront32", + "Screen16", + "Screen20", + "Screen24", + "Screen32", + "ScreenOff16", + "ScreenOff20", + "ScreenOff24", + "ScreenOff32", + "Script16", + "Script20", + "Script24", + "Script32", + "Sdk16", + "Sdk20", + "Sdk24", + "Sdk32", + "Search16", + "Search20", + "Search24", + "Search32", + "Send16", + "Send20", + "Send24", + "Send32", + "SendAlt16", + "SendAlt20", + "SendAlt24", + "SendAlt32", + "SendAltFilled16", + "SendAltFilled20", + "SendAltFilled24", + "SendAltFilled32", + "SendFilled16", + "SendFilled20", + "SendFilled24", + "SendFilled32", + "ServiceDesk16", + "ServiceDesk20", + "ServiceDesk24", + "ServiceDesk32", + "Settings16", + "Settings20", + "Settings24", + "Settings32", + "SettingsAdjust16", + "SettingsAdjust20", + "SettingsAdjust24", + "SettingsAdjust32", + "Share16", + "Share20", + "Share24", + "Share32", + "ShareKnowledge16", + "ShareKnowledge20", + "ShareKnowledge24", + "ShareKnowledge32", + "ShoppingBag16", + "ShoppingBag20", + "ShoppingBag24", + "ShoppingBag32", + "ShoppingCart16", + "ShoppingCart20", + "ShoppingCart24", + "ShoppingCart32", + "ShoppingCatalog16", + "ShoppingCatalog20", + "ShoppingCatalog24", + "ShoppingCatalog32", + "ShrinkScreen16", + "ShrinkScreen20", + "ShrinkScreen24", + "ShrinkScreen32", + "ShrinkScreenFilled16", + "ShrinkScreenFilled20", + "ShrinkScreenFilled24", + "ShrinkScreenFilled32", + "Shuffle16", + "Shuffle20", + "Shuffle24", + "Shuffle32", + "Shuttle16", + "Shuttle20", + "Shuttle24", + "Shuttle32", + "Sigma16", + "Sigma20", + "Sigma24", + "Sigma32", + "SkillLevel16", + "SkillLevel20", + "SkillLevel24", + "SkillLevel32", + "SkipBack16", + "SkipBack20", + "SkipBack24", + "SkipBack32", + "SkipBackFilled16", + "SkipBackFilled20", + "SkipBackFilled24", + "SkipBackFilled32", + "SkipForward16", + "SkipForward20", + "SkipForward24", + "SkipForward32", + "SkipForwardFilled16", + "SkipForwardFilled20", + "SkipForwardFilled24", + "SkipForwardFilled32", + "Sleet16", + "Sleet20", + "Sleet24", + "Sleet32", + "Smell16", + "Smell20", + "Smell24", + "Smell32", + "Smoke16", + "Smoke20", + "Smoke24", + "Smoke32", + "Snooze16", + "Snooze20", + "Snooze24", + "Snooze32", + "Snow16", + "Snow20", + "Snow24", + "Snow32", + "SnowBlizzard16", + "SnowBlizzard20", + "SnowBlizzard24", + "SnowBlizzard32", + "SnowHeavy16", + "SnowHeavy20", + "SnowHeavy24", + "SnowHeavy32", + "SnowScattered16", + "SnowScattered20", + "SnowScattered24", + "SnowScattered32", + "SnowScatteredNight16", + "SnowScatteredNight20", + "SnowScatteredNight24", + "SnowScatteredNight32", + "Snowflake16", + "Snowflake20", + "Snowflake24", + "Snowflake32", + "Soccer16", + "Soccer20", + "Soccer24", + "Soccer32", + "SpellCheck16", + "SpellCheck20", + "SpellCheck24", + "SpellCheck32", + "SplitScreen16", + "SplitScreen20", + "SplitScreen24", + "SplitScreen32", + "SprayPaint16", + "SprayPaint20", + "SprayPaint24", + "SprayPaint32", + "Sprout16", + "Sprout20", + "Sprout24", + "Sprout32", + "Sql16", + "Sql20", + "Sql24", + "Sql32", + "Stamp16", + "Stamp20", + "Stamp24", + "Stamp32", + "Star16", + "Star20", + "Star24", + "Star32", + "StarFilled16", + "StarFilled20", + "StarFilled24", + "StarFilled32", + "StarHalf16", + "StarHalf20", + "StarHalf24", + "StarHalf32", + "Stop16", + "Stop20", + "Stop24", + "Stop32", + "StopFilled16", + "StopFilled20", + "StopFilled24", + "StopFilled32", + "StopFilledAlt16", + "StopFilledAlt20", + "StopFilledAlt24", + "StopFilledAlt32", + "StopOutline16", + "StopOutline20", + "StopOutline24", + "StopOutline32", + "StopOutlineFilled16", + "StopOutlineFilled20", + "StopOutlineFilled24", + "StopOutlineFilled32", + "Store16", + "Store20", + "Store24", + "Store32", + "Strawberry16", + "Strawberry20", + "Strawberry24", + "Strawberry32", + "StringInteger16", + "StringInteger20", + "StringInteger24", + "StringInteger32", + "StringText16", + "StringText20", + "StringText24", + "StringText32", + "Subtract16", + "Subtract20", + "Subtract24", + "Subtract32", + "SubtractAlt16", + "SubtractAlt20", + "SubtractAlt24", + "SubtractAlt32", + "Sun16", + "Sun20", + "Sun24", + "Sun32", + "Sunny16", + "Sunny20", + "Sunny24", + "Sunny32", + "Sunrise16", + "Sunrise20", + "Sunrise24", + "Sunrise32", + "Sunset16", + "Sunset20", + "Sunset24", + "Sunset32", + "Svg16", + "Svg20", + "Svg24", + "Svg32", + "Switcher16", + "Switcher20", + "Switcher24", + "Switcher32", + "SysProvision16", + "SysProvision20", + "SysProvision24", + "SysProvision32", + "Table16", + "Table20", + "Table24", + "Table32", + "TableOfContents16", + "TableOfContents20", + "TableOfContents24", + "TableOfContents32", + "TableSplit16", + "TableSplit20", + "TableSplit24", + "TableSplit32", + "Tablet16", + "Tablet20", + "Tablet24", + "Tablet32", + "TabletLandscape16", + "TabletLandscape20", + "TabletLandscape24", + "TabletLandscape32", + "Tag16", + "Tag20", + "Tag24", + "Tag32", + "TagEdit16", + "TagEdit20", + "TagEdit24", + "TagEdit32", + "TagGroup16", + "TagGroup20", + "TagGroup24", + "TagGroup32", + "Task16", + "Task20", + "Task24", + "Task32", + "TaskView16", + "TaskView20", + "TaskView24", + "TaskView32", + "Taste16", + "Taste20", + "Taste24", + "Taste32", + "Taxi16", + "Taxi20", + "Taxi24", + "Taxi32", + "Temperature16", + "Temperature20", + "Temperature24", + "Temperature32", + "TemperatureFrigid16", + "TemperatureFrigid20", + "TemperatureFrigid24", + "TemperatureFrigid32", + "TemperatureHot16", + "TemperatureHot20", + "TemperatureHot24", + "TemperatureHot32", + "Template16", + "Template20", + "Template24", + "Template32", + "Tennis16", + "Tennis20", + "Tennis24", + "Tennis32", + "TennisBall16", + "TennisBall20", + "TennisBall24", + "TennisBall32", + "Term16", + "Term20", + "Term24", + "Term32", + "Terminal16", + "Terminal20", + "Terminal24", + "Terminal32", + "TextAlignCenter16", + "TextAlignCenter20", + "TextAlignCenter24", + "TextAlignCenter32", + "TextAlignJustify16", + "TextAlignJustify20", + "TextAlignJustify24", + "TextAlignJustify32", + "TextAlignLeft16", + "TextAlignLeft20", + "TextAlignLeft24", + "TextAlignLeft32", + "TextAlignRight16", + "TextAlignRight20", + "TextAlignRight24", + "TextAlignRight32", + "TextAllCaps16", + "TextAllCaps20", + "TextAllCaps24", + "TextAllCaps32", + "TextBold16", + "TextBold20", + "TextBold24", + "TextBold32", + "TextColor16", + "TextColor20", + "TextColor24", + "TextColor32", + "TextCreation16", + "TextCreation20", + "TextCreation24", + "TextCreation32", + "TextFill16", + "TextFill20", + "TextFill24", + "TextFill32", + "TextHighlight16", + "TextHighlight20", + "TextHighlight24", + "TextHighlight32", + "TextIndent16", + "TextIndent20", + "TextIndent24", + "TextIndent32", + "TextIndentLess16", + "TextIndentLess20", + "TextIndentLess24", + "TextIndentLess32", + "TextIndentMore16", + "TextIndentMore20", + "TextIndentMore24", + "TextIndentMore32", + "TextItalic16", + "TextItalic20", + "TextItalic24", + "TextItalic32", + "TextKerning16", + "TextKerning20", + "TextKerning24", + "TextKerning32", + "TextLeading16", + "TextLeading20", + "TextLeading24", + "TextLeading32", + "TextLineSpacing16", + "TextLineSpacing20", + "TextLineSpacing24", + "TextLineSpacing32", + "TextLink16", + "TextLink20", + "TextLink24", + "TextLink32", + "TextLinkAnalysis16", + "TextLinkAnalysis20", + "TextLinkAnalysis24", + "TextLinkAnalysis32", + "TextMining16", + "TextMining20", + "TextMining24", + "TextMining32", + "TextMiningApplier16", + "TextMiningApplier20", + "TextMiningApplier24", + "TextMiningApplier32", + "TextNewLine16", + "TextNewLine20", + "TextNewLine24", + "TextNewLine32", + "TextScale16", + "TextScale20", + "TextScale24", + "TextScale32", + "TextSelection16", + "TextSelection20", + "TextSelection24", + "TextSelection32", + "TextSmallCaps16", + "TextSmallCaps20", + "TextSmallCaps24", + "TextSmallCaps32", + "TextStrikethrough16", + "TextStrikethrough20", + "TextStrikethrough24", + "TextStrikethrough32", + "TextSubscript16", + "TextSubscript20", + "TextSubscript24", + "TextSubscript32", + "TextSuperscript16", + "TextSuperscript20", + "TextSuperscript24", + "TextSuperscript32", + "TextTracking16", + "TextTracking20", + "TextTracking24", + "TextTracking32", + "TextUnderline16", + "TextUnderline20", + "TextUnderline24", + "TextUnderline32", + "TextWrap16", + "TextWrap20", + "TextWrap24", + "TextWrap32", + "Thumbnail_116", + "Thumbnail_120", + "Thumbnail_124", + "Thumbnail_132", + "Thumbnail_216", + "Thumbnail_220", + "Thumbnail_224", + "Thumbnail_232", + "ThumbsDown16", + "ThumbsDown20", + "ThumbsDown24", + "ThumbsDown32", + "ThumbsUp16", + "ThumbsUp20", + "ThumbsUp24", + "ThumbsUp32", + "Thunderstorm16", + "Thunderstorm20", + "Thunderstorm24", + "Thunderstorm32", + "ThunderstormScattered16", + "ThunderstormScattered20", + "ThunderstormScattered24", + "ThunderstormScattered32", + "ThunderstormScatteredNight16", + "ThunderstormScatteredNight20", + "ThunderstormScatteredNight24", + "ThunderstormScatteredNight32", + "ThunderstormSevere16", + "ThunderstormSevere20", + "ThunderstormSevere24", + "ThunderstormSevere32", + "ThunderstormStrong16", + "ThunderstormStrong20", + "ThunderstormStrong24", + "ThunderstormStrong32", + "Ticket16", + "Ticket20", + "Ticket24", + "Ticket32", + "Tif16", + "Tif20", + "Tif24", + "Tif32", + "Time16", + "Time20", + "Time24", + "Time32", + "Timer16", + "Timer20", + "Timer24", + "Timer32", + "ToolBox16", + "ToolBox20", + "ToolBox24", + "ToolBox32", + "Tools16", + "Tools20", + "Tools24", + "Tools32", + "Tornado16", + "Tornado20", + "Tornado24", + "Tornado32", + "Touch_116", + "Touch_120", + "Touch_124", + "Touch_132", + "Touch_216", + "Touch_220", + "Touch_224", + "Touch_232", + "Train16", + "Train20", + "Train24", + "Train32", + "Tram16", + "Tram20", + "Tram24", + "Tram32", + "Translate16", + "Translate20", + "Translate24", + "Translate32", + "TrashCan16", + "TrashCan20", + "TrashCan24", + "TrashCan32", + "Tree16", + "Tree20", + "Tree24", + "Tree32", + "TreeView16", + "TreeView20", + "TreeView24", + "TreeView32", + "TreeViewAlt16", + "TreeViewAlt20", + "TreeViewAlt24", + "TreeViewAlt32", + "Trophy16", + "Trophy20", + "Trophy24", + "Trophy32", + "TrophyFilled16", + "TrophyFilled20", + "TrophyFilled24", + "TrophyFilled32", + "TropicalStorm16", + "TropicalStorm20", + "TropicalStorm24", + "TropicalStorm32", + "Tsv16", + "Tsv20", + "Tsv24", + "Tsv32", + "Txt16", + "Txt20", + "Txt24", + "Txt32", + "TypePattern16", + "TypePattern20", + "TypePattern24", + "TypePattern32", + "Types16", + "Types20", + "Types24", + "Types32", + "Undefined16", + "Undefined20", + "Undefined24", + "Undefined32", + "UndefinedFilled16", + "UndefinedFilled20", + "UndefinedFilled24", + "UndefinedFilled32", + "Undo16", + "Undo20", + "Undo24", + "Undo32", + "Unknown16", + "Unknown20", + "Unknown24", + "Unknown32", + "UnknownFilled16", + "UnknownFilled20", + "UnknownFilled24", + "UnknownFilled32", + "Unlink16", + "Unlink20", + "Unlink24", + "Unlink32", + "Unlocked16", + "Unlocked20", + "Unlocked24", + "Unlocked32", + "UpToTop16", + "UpToTop20", + "UpToTop24", + "UpToTop32", + "Upload16", + "Upload20", + "Upload24", + "Upload32", + "Usb16", + "Usb20", + "Usb24", + "Usb32", + "User16", + "User20", + "User24", + "User32", + "UserActivity16", + "UserActivity20", + "UserActivity24", + "UserActivity32", + "UserAdmin16", + "UserAdmin20", + "UserAdmin24", + "UserAdmin32", + "UserAvatar16", + "UserAvatar20", + "UserAvatar24", + "UserAvatar32", + "UserAvatarFilled16", + "UserAvatarFilled20", + "UserAvatarFilled24", + "UserAvatarFilled32", + "UserAvatarFilledAlt16", + "UserAvatarFilledAlt20", + "UserAvatarFilledAlt24", + "UserAvatarFilledAlt32", + "UserCertification16", + "UserCertification20", + "UserCertification24", + "UserCertification32", + "UserData16", + "UserData20", + "UserData24", + "UserData32", + "UserFavorite16", + "UserFavorite20", + "UserFavorite24", + "UserFavorite32", + "UserFavoriteAlt16", + "UserFavoriteAlt20", + "UserFavoriteAlt24", + "UserFavoriteAlt32", + "UserFavoriteAltFilled16", + "UserFavoriteAltFilled20", + "UserFavoriteAltFilled24", + "UserFavoriteAltFilled32", + "UserFilled16", + "UserFilled20", + "UserFilled24", + "UserFilled32", + "UserFollow16", + "UserFollow20", + "UserFollow24", + "UserFollow32", + "UserIdentification16", + "UserIdentification20", + "UserIdentification24", + "UserIdentification32", + "UserOnline16", + "UserOnline20", + "UserOnline24", + "UserOnline32", + "UserProfile16", + "UserProfile20", + "UserProfile24", + "UserProfile32", + "UserProfileAlt16", + "UserProfileAlt20", + "UserProfileAlt24", + "UserProfileAlt32", + "UserRole16", + "UserRole20", + "UserRole24", + "UserRole32", + "UserSimulation16", + "UserSimulation20", + "UserSimulation24", + "UserSimulation32", + "UserSpeaker16", + "UserSpeaker20", + "UserSpeaker24", + "UserSpeaker32", + "UserXRay16", + "UserXRay20", + "UserXRay24", + "UserXRay32", + "Van16", + "Van20", + "Van24", + "Van32", + "Video16", + "Video20", + "Video24", + "Video32", + "VideoAdd16", + "VideoAdd20", + "VideoAdd24", + "VideoAdd32", + "VideoChat16", + "VideoChat20", + "VideoChat24", + "VideoChat32", + "VideoFilled16", + "VideoFilled20", + "VideoFilled24", + "VideoFilled32", + "VideoOff16", + "VideoOff20", + "VideoOff24", + "VideoOff32", + "VideoOffFilled16", + "VideoOffFilled20", + "VideoOffFilled24", + "VideoOffFilled32", + "View16", + "View20", + "View24", + "View32", + "ViewFilled16", + "ViewFilled20", + "ViewFilled24", + "ViewFilled32", + "ViewMode_116", + "ViewMode_120", + "ViewMode_124", + "ViewMode_132", + "ViewMode_216", + "ViewMode_220", + "ViewMode_224", + "ViewMode_232", + "ViewOff16", + "ViewOff20", + "ViewOff24", + "ViewOff32", + "ViewOffFilled16", + "ViewOffFilled20", + "ViewOffFilled24", + "ViewOffFilled32", + "VirtualColumn16", + "VirtualColumn20", + "VirtualColumn24", + "VirtualColumn32", + "VirtualColumnKey16", + "VirtualColumnKey20", + "VirtualColumnKey24", + "VirtualColumnKey32", + "VirtualMachine16", + "VirtualMachine20", + "VirtualMachine24", + "VirtualMachine32", + "VirtualPrivateCloud16", + "VirtualPrivateCloud20", + "VirtualPrivateCloud24", + "VirtualPrivateCloud32", + "VirtualPrivateCloudAlt16", + "VirtualPrivateCloudAlt20", + "VirtualPrivateCloudAlt24", + "VirtualPrivateCloudAlt32", + "VisualRecognition16", + "VisualRecognition20", + "VisualRecognition24", + "VisualRecognition32", + "VmdkDisk16", + "VmdkDisk20", + "VmdkDisk24", + "VmdkDisk32", + "Voicemail16", + "Voicemail20", + "Voicemail24", + "Voicemail32", + "VolumeDown16", + "VolumeDown20", + "VolumeDown24", + "VolumeDown32", + "VolumeDownFilled16", + "VolumeDownFilled20", + "VolumeDownFilled24", + "VolumeDownFilled32", + "VolumeMute16", + "VolumeMute20", + "VolumeMute24", + "VolumeMute32", + "VolumeMuteFilled16", + "VolumeMuteFilled20", + "VolumeMuteFilled24", + "VolumeMuteFilled32", + "VolumeUp16", + "VolumeUp20", + "VolumeUp24", + "VolumeUp32", + "VolumeUpFilled16", + "VolumeUpFilled20", + "VolumeUpFilled24", + "VolumeUpFilled32", + "Vpn16", + "Vpn20", + "Vpn24", + "Vpn32", + "Wallet16", + "Wallet20", + "Wallet24", + "Wallet32", + "Warning16", + "Warning20", + "Warning24", + "Warning32", + "WarningAlt16", + "WarningAlt20", + "WarningAlt24", + "WarningAlt32", + "WarningAltFilled16", + "WarningAltFilled20", + "WarningAltFilled24", + "WarningAltFilled32", + "WarningAltInverted16", + "WarningAltInverted20", + "WarningAltInverted24", + "WarningAltInverted32", + "WarningAltInvertedFilled16", + "WarningAltInvertedFilled20", + "WarningAltInvertedFilled24", + "WarningAltInvertedFilled32", + "WarningFilled16", + "WarningFilled20", + "WarningFilled24", + "WarningFilled32", + "WarningSquare16", + "WarningSquare20", + "WarningSquare24", + "WarningSquare32", + "WarningSquareFilled16", + "WarningSquareFilled20", + "WarningSquareFilled24", + "WarningSquareFilled32", + "Watch16", + "Watch20", + "Watch24", + "Watch32", + "Watson16", + "Watson20", + "Watson24", + "Watson32", + "WatsonHealth3DCursor16", + "WatsonHealth3DCursor20", + "WatsonHealth3DCursor24", + "WatsonHealth3DCursor32", + "WatsonHealth3DCursorAlt16", + "WatsonHealth3DCursorAlt20", + "WatsonHealth3DCursorAlt24", + "WatsonHealth3DCursorAlt32", + "WatsonHealth3DCurveAutoColon16", + "WatsonHealth3DCurveAutoColon20", + "WatsonHealth3DCurveAutoColon24", + "WatsonHealth3DCurveAutoColon32", + "WatsonHealth3DCurveAutoVessels16", + "WatsonHealth3DCurveAutoVessels20", + "WatsonHealth3DCurveAutoVessels24", + "WatsonHealth3DCurveAutoVessels32", + "WatsonHealth3DCurveManual16", + "WatsonHealth3DCurveManual20", + "WatsonHealth3DCurveManual24", + "WatsonHealth3DCurveManual32", + "WatsonHealth3DICa16", + "WatsonHealth3DICa20", + "WatsonHealth3DICa24", + "WatsonHealth3DICa32", + "WatsonHealth3DMprToggle16", + "WatsonHealth3DMprToggle20", + "WatsonHealth3DMprToggle24", + "WatsonHealth3DMprToggle32", + "WatsonHealth3DSoftware16", + "WatsonHealth3DSoftware20", + "WatsonHealth3DSoftware24", + "WatsonHealth3DSoftware32", + "WatsonHealth3rdPartyConnected16", + "WatsonHealth3rdPartyConnected20", + "WatsonHealth3rdPartyConnected24", + "WatsonHealth3rdPartyConnected32", + "WatsonHealthAngle16", + "WatsonHealthAngle20", + "WatsonHealthAngle24", + "WatsonHealthAngle32", + "WatsonHealthAnnotationVisibility16", + "WatsonHealthAnnotationVisibility20", + "WatsonHealthAnnotationVisibility24", + "WatsonHealthAnnotationVisibility32", + "WatsonHealthArrowAnnotation16", + "WatsonHealthArrowAnnotation20", + "WatsonHealthArrowAnnotation24", + "WatsonHealthArrowAnnotation32", + "WatsonHealthAutoScroll16", + "WatsonHealthAutoScroll20", + "WatsonHealthAutoScroll24", + "WatsonHealthAutoScroll32", + "WatsonHealthCdArchive16", + "WatsonHealthCdArchive20", + "WatsonHealthCdArchive24", + "WatsonHealthCdArchive32", + "WatsonHealthCdCreateArchive16", + "WatsonHealthCdCreateArchive20", + "WatsonHealthCdCreateArchive24", + "WatsonHealthCdCreateArchive32", + "WatsonHealthCdCreateExchange16", + "WatsonHealthCdCreateExchange20", + "WatsonHealthCdCreateExchange24", + "WatsonHealthCdCreateExchange32", + "WatsonHealthCircleMeasurement16", + "WatsonHealthCircleMeasurement20", + "WatsonHealthCircleMeasurement24", + "WatsonHealthCircleMeasurement32", + "WatsonHealthCobbAngle16", + "WatsonHealthCobbAngle20", + "WatsonHealthCobbAngle24", + "WatsonHealthCobbAngle32", + "WatsonHealthCrossReference16", + "WatsonHealthCrossReference20", + "WatsonHealthCrossReference24", + "WatsonHealthCrossReference32", + "WatsonHealthDenominate16", + "WatsonHealthDenominate20", + "WatsonHealthDenominate24", + "WatsonHealthDenominate32", + "WatsonHealthDicomOverlay16", + "WatsonHealthDicomOverlay20", + "WatsonHealthDicomOverlay24", + "WatsonHealthDicomOverlay32", + "WatsonHealthDicom_600016", + "WatsonHealthDicom_600020", + "WatsonHealthDicom_600024", + "WatsonHealthDicom_600032", + "WatsonHealthDna16", + "WatsonHealthDna20", + "WatsonHealthDna24", + "WatsonHealthDna32", + "WatsonHealthDownloadStudy16", + "WatsonHealthDownloadStudy20", + "WatsonHealthDownloadStudy24", + "WatsonHealthDownloadStudy32", + "WatsonHealthEdgeEnhancement16", + "WatsonHealthEdgeEnhancement20", + "WatsonHealthEdgeEnhancement24", + "WatsonHealthEdgeEnhancement32", + "WatsonHealthEditFilter16", + "WatsonHealthEditFilter20", + "WatsonHealthEditFilter24", + "WatsonHealthEditFilter32", + "WatsonHealthErase_3D16", + "WatsonHealthErase_3D20", + "WatsonHealthErase_3D24", + "WatsonHealthErase_3D32", + "WatsonHealthFusionBlender16", + "WatsonHealthFusionBlender20", + "WatsonHealthFusionBlender24", + "WatsonHealthFusionBlender32", + "WatsonHealthHangingProtocol16", + "WatsonHealthHangingProtocol20", + "WatsonHealthHangingProtocol24", + "WatsonHealthHangingProtocol32", + "WatsonHealthHoleFilling16", + "WatsonHealthHoleFilling20", + "WatsonHealthHoleFilling24", + "WatsonHealthHoleFilling32", + "WatsonHealthHoleFillingCursor16", + "WatsonHealthHoleFillingCursor20", + "WatsonHealthHoleFillingCursor24", + "WatsonHealthHoleFillingCursor32", + "WatsonHealthICa_2D16", + "WatsonHealthICa_2D20", + "WatsonHealthICa_2D24", + "WatsonHealthICa_2D32", + "WatsonHealthInteractiveSegmentationCursor16", + "WatsonHealthInteractiveSegmentationCursor20", + "WatsonHealthInteractiveSegmentationCursor24", + "WatsonHealthInteractiveSegmentationCursor32", + "WatsonHealthLaunchStudy_116", + "WatsonHealthLaunchStudy_120", + "WatsonHealthLaunchStudy_124", + "WatsonHealthLaunchStudy_132", + "WatsonHealthLaunchStudy_216", + "WatsonHealthLaunchStudy_220", + "WatsonHealthLaunchStudy_224", + "WatsonHealthLaunchStudy_232", + "WatsonHealthLaunchStudy_316", + "WatsonHealthLaunchStudy_320", + "WatsonHealthLaunchStudy_324", + "WatsonHealthLaunchStudy_332", + "WatsonHealthMagnify16", + "WatsonHealthMagnify20", + "WatsonHealthMagnify24", + "WatsonHealthMagnify32", + "WatsonHealthMammogram16", + "WatsonHealthMammogram20", + "WatsonHealthMammogram24", + "WatsonHealthMammogram32", + "WatsonHealthNominate16", + "WatsonHealthNominate20", + "WatsonHealthNominate24", + "WatsonHealthNominate32", + "WatsonHealthPageScroll16", + "WatsonHealthPageScroll20", + "WatsonHealthPageScroll24", + "WatsonHealthPageScroll32", + "WatsonHealthPetImageB16", + "WatsonHealthPetImageB20", + "WatsonHealthPetImageB24", + "WatsonHealthPetImageB32", + "WatsonHealthPetImageO16", + "WatsonHealthPetImageO20", + "WatsonHealthPetImageO24", + "WatsonHealthPetImageO32", + "WatsonHealthPointerText16", + "WatsonHealthPointerText20", + "WatsonHealthPointerText24", + "WatsonHealthPointerText32", + "WatsonHealthRegionAnalysisArea16", + "WatsonHealthRegionAnalysisArea20", + "WatsonHealthRegionAnalysisArea24", + "WatsonHealthRegionAnalysisArea32", + "WatsonHealthRegionAnalysisVolume16", + "WatsonHealthRegionAnalysisVolume20", + "WatsonHealthRegionAnalysisVolume24", + "WatsonHealthRegionAnalysisVolume32", + "WatsonHealthRegistration16", + "WatsonHealthRegistration20", + "WatsonHealthRegistration24", + "WatsonHealthRegistration32", + "WatsonHealthRotate_18016", + "WatsonHealthRotate_18020", + "WatsonHealthRotate_18024", + "WatsonHealthRotate_18032", + "WatsonHealthRotate_36016", + "WatsonHealthRotate_36020", + "WatsonHealthRotate_36024", + "WatsonHealthRotate_36032", + "WatsonHealthSaveAnnotation16", + "WatsonHealthSaveAnnotation20", + "WatsonHealthSaveAnnotation24", + "WatsonHealthSaveAnnotation32", + "WatsonHealthSaveImage16", + "WatsonHealthSaveImage20", + "WatsonHealthSaveImage24", + "WatsonHealthSaveImage32", + "WatsonHealthSaveSeries16", + "WatsonHealthSaveSeries20", + "WatsonHealthSaveSeries24", + "WatsonHealthSaveSeries32", + "WatsonHealthScalpelCursor16", + "WatsonHealthScalpelCursor20", + "WatsonHealthScalpelCursor24", + "WatsonHealthScalpelCursor32", + "WatsonHealthScalpelLasso16", + "WatsonHealthScalpelLasso20", + "WatsonHealthScalpelLasso24", + "WatsonHealthScalpelLasso32", + "WatsonHealthScalpelSelect16", + "WatsonHealthScalpelSelect20", + "WatsonHealthScalpelSelect24", + "WatsonHealthScalpelSelect32", + "WatsonHealthSmoothing16", + "WatsonHealthSmoothing20", + "WatsonHealthSmoothing24", + "WatsonHealthSmoothing32", + "WatsonHealthSmoothingCursor16", + "WatsonHealthSmoothingCursor20", + "WatsonHealthSmoothingCursor24", + "WatsonHealthSmoothingCursor32", + "WatsonHealthSpineLabel16", + "WatsonHealthSpineLabel20", + "WatsonHealthSpineLabel24", + "WatsonHealthSpineLabel32", + "WatsonHealthStackedMove16", + "WatsonHealthStackedMove20", + "WatsonHealthStackedMove24", + "WatsonHealthStackedMove32", + "WatsonHealthStackedScrolling_116", + "WatsonHealthStackedScrolling_120", + "WatsonHealthStackedScrolling_124", + "WatsonHealthStackedScrolling_132", + "WatsonHealthStackedScrolling_216", + "WatsonHealthStackedScrolling_220", + "WatsonHealthStackedScrolling_224", + "WatsonHealthStackedScrolling_232", + "WatsonHealthStressBreathEditor16", + "WatsonHealthStressBreathEditor20", + "WatsonHealthStressBreathEditor24", + "WatsonHealthStressBreathEditor32", + "WatsonHealthStudyNext16", + "WatsonHealthStudyNext20", + "WatsonHealthStudyNext24", + "WatsonHealthStudyNext32", + "WatsonHealthStudyPrevious16", + "WatsonHealthStudyPrevious20", + "WatsonHealthStudyPrevious24", + "WatsonHealthStudyPrevious32", + "WatsonHealthStudySkip16", + "WatsonHealthStudySkip20", + "WatsonHealthStudySkip24", + "WatsonHealthStudySkip32", + "WatsonHealthTextAnnotationToggle16", + "WatsonHealthTextAnnotationToggle20", + "WatsonHealthTextAnnotationToggle24", + "WatsonHealthTextAnnotationToggle32", + "WatsonHealthThumbnailPreview16", + "WatsonHealthThumbnailPreview20", + "WatsonHealthThumbnailPreview24", + "WatsonHealthThumbnailPreview32", + "WatsonHealthWindowAuto16", + "WatsonHealthWindowAuto20", + "WatsonHealthWindowAuto24", + "WatsonHealthWindowAuto32", + "WatsonHealthWindowBase16", + "WatsonHealthWindowBase20", + "WatsonHealthWindowBase24", + "WatsonHealthWindowBase32", + "WatsonHealthWindowOverlay16", + "WatsonHealthWindowOverlay20", + "WatsonHealthWindowOverlay24", + "WatsonHealthWindowOverlay32", + "WatsonHealthZoomPan16", + "WatsonHealthZoomPan20", + "WatsonHealthZoomPan24", + "WatsonHealthZoomPan32", + "WatsonMachineLearning16", + "WatsonMachineLearning20", + "WatsonMachineLearning24", + "WatsonMachineLearning32", + "Wheat16", + "Wheat20", + "Wheat24", + "Wheat32", + "Wifi16", + "Wifi20", + "Wifi24", + "Wifi32", + "WifiOff16", + "WifiOff20", + "WifiOff24", + "WifiOff32", + "Wikis16", + "Wikis20", + "Wikis24", + "Wikis32", + "Windy16", + "Windy20", + "Windy24", + "Windy32", + "WindyDust16", + "WindyDust20", + "WindyDust24", + "WindyDust32", + "WindySnow16", + "WindySnow20", + "WindySnow24", + "WindySnow32", + "WindyStrong16", + "WindyStrong20", + "WindyStrong24", + "WindyStrong32", + "WintryMix16", + "WintryMix20", + "WintryMix24", + "WintryMix32", + "WirelessCheckout16", + "WirelessCheckout20", + "WirelessCheckout24", + "WirelessCheckout32", + "Wmv16", + "Wmv20", + "Wmv24", + "Wmv32", + "Workspace16", + "Workspace20", + "Workspace24", + "Workspace32", + "XAxis16", + "XAxis20", + "XAxis24", + "XAxis32", + "Xls16", + "Xls20", + "Xls24", + "Xls32", + "Xml16", + "Xml20", + "Xml24", + "Xml32", + "YAxis16", + "YAxis20", + "YAxis24", + "YAxis32", + "ZAxis16", + "ZAxis20", + "ZAxis24", + "ZAxis32", + "Zip16", + "Zip20", + "Zip24", + "Zip32", + "ZoomIn16", + "ZoomIn20", + "ZoomIn24", + "ZoomIn32", + "ZoomOut16", + "ZoomOut20", + "ZoomOut24", + "ZoomOut32", + "ZoomReset16", + "ZoomReset20", + "ZoomReset24", + "ZoomReset32", + "_4K16", + "_4K20", + "_4K24", + "_4K32", + "_4KFilled16", + "_4KFilled20", + "_4KFilled24", + "_4KFilled32", +] +`; diff --git a/e2e/icons-react/components-test.js b/e2e/icons-react/components-test.js index 98ccb0f031c9..f5956110124e 100644 --- a/e2e/icons-react/components-test.js +++ b/e2e/icons-react/components-test.js @@ -9,20 +9,54 @@ 'use strict'; -const meta = require('../../packages/icons/build-info.json'); +const path = require('path'); +const CarbonIconsReact = require('@carbon/icons-react'); +const { Metadata } = require('../../packages/icon-build-helpers'); + +const PACKAGE_DIR = path.resolve(__dirname, '../../packages/icons-react'); +const ICONS_PACKAGE_DIR = path.resolve(__dirname, '../../packages/icons'); +const sizes = [16, 20, 24, 32]; describe('@carbon/icons-react', () => { - test('entrypoint is require-able', () => { - expect(() => { - require('@carbon/icons-react'); - }).not.toThrow(); + let metadata; + + beforeAll(async () => { + metadata = await Metadata.load({ + input: ICONS_PACKAGE_DIR, + extensions: [ + Metadata.extensions.icons, + Metadata.extensions.deprecated, + Metadata.extensions.moduleName, + ], + }); }); - test.each(meta.map(icon => [icon.moduleName, icon.outputOptions.file]))( - '%s is require-able', - (name, file) => { - expect(require('@carbon/icons-react')[name]).toBeDefined(); - expect(require(`@carbon/icons-react/${file}`)).toBeDefined(); + it('should export each SVG asset', () => { + for (const icon of metadata.icons) { + const { moduleName } = icon; + for (const size of sizes) { + const exportName = `${moduleName}${size}`; + expect(CarbonIconsReact[exportName]).toBeDefined(); + } } - ); + }); + + it('should export each SVG asset as a direct path', () => { + for (const icon of metadata.icons) { + // CommonJS should be require-able + const commonjs = path.join( + PACKAGE_DIR, + 'lib', + ...icon.namespace, + icon.name + ); + + for (const size of sizes) { + const filepath = path.join(commonjs, `${size}.js`); + expect(() => { + require(filepath); + }).not.toThrow(); + } + } + }); }); diff --git a/e2e/icons/PublicAPI-test.js b/e2e/icons/PublicAPI-test.js new file mode 100644 index 000000000000..e7c4b8f5c331 --- /dev/null +++ b/e2e/icons/PublicAPI-test.js @@ -0,0 +1,18 @@ +/** + * Copyright IBM Corp. 2018, 2018 + * + * This source code is licensed under the Apache-2.0 license found in the + * LICENSE file in the root directory of this source tree. + * + * @jest-environment node + */ + +'use strict'; + +const CarbonIcons = require('@carbon/icons-react'); + +describe('@carbon/icons', () => { + it('should not update exports without a semver change', () => { + expect(Object.keys(CarbonIcons).sort()).toMatchSnapshot(); + }); +}); diff --git a/e2e/icons/__snapshots__/PublicAPI-test.js.snap b/e2e/icons/__snapshots__/PublicAPI-test.js.snap new file mode 100644 index 000000000000..3c16dbcabd71 --- /dev/null +++ b/e2e/icons/__snapshots__/PublicAPI-test.js.snap @@ -0,0 +1,4063 @@ +// Jest Snapshot v1, https://goo.gl/fbAQLP + +exports[`@carbon/icons should not update exports without a semver change 1`] = ` +Array [ + "Accessibility16", + "Accessibility20", + "Accessibility24", + "Accessibility32", + "AccessibilityAlt16", + "AccessibilityAlt20", + "AccessibilityAlt24", + "AccessibilityAlt32", + "AccessibilityColor16", + "AccessibilityColor20", + "AccessibilityColor24", + "AccessibilityColor32", + "AccessibilityColorFilled16", + "AccessibilityColorFilled20", + "AccessibilityColorFilled24", + "AccessibilityColorFilled32", + "Account16", + "Account20", + "Account24", + "Account32", + "Activity16", + "Activity20", + "Activity24", + "Activity32", + "Add16", + "Add20", + "Add24", + "Add32", + "AddAlt16", + "AddAlt20", + "AddAlt24", + "AddAlt32", + "AddComment16", + "AddComment20", + "AddComment24", + "AddComment32", + "AddFilled16", + "AddFilled20", + "AddFilled24", + "AddFilled32", + "Alarm16", + "Alarm20", + "Alarm24", + "Alarm32", + "AlarmAdd16", + "AlarmAdd20", + "AlarmAdd24", + "AlarmAdd32", + "AlarmSubtract16", + "AlarmSubtract20", + "AlarmSubtract24", + "AlarmSubtract32", + "AlignHorizontalCenter16", + "AlignHorizontalCenter20", + "AlignHorizontalCenter24", + "AlignHorizontalCenter32", + "AlignHorizontalLeft16", + "AlignHorizontalLeft20", + "AlignHorizontalLeft24", + "AlignHorizontalLeft32", + "AlignHorizontalRight16", + "AlignHorizontalRight20", + "AlignHorizontalRight24", + "AlignHorizontalRight32", + "AlignVerticalBottom16", + "AlignVerticalBottom20", + "AlignVerticalBottom24", + "AlignVerticalBottom32", + "AlignVerticalCenter16", + "AlignVerticalCenter20", + "AlignVerticalCenter24", + "AlignVerticalCenter32", + "AlignVerticalTop16", + "AlignVerticalTop20", + "AlignVerticalTop24", + "AlignVerticalTop32", + "Analytics16", + "Analytics20", + "Analytics24", + "Analytics32", + "Aperture16", + "Aperture20", + "Aperture24", + "Aperture32", + "Api16", + "Api20", + "Api24", + "Api32", + "Api_116", + "Api_120", + "Api_124", + "Api_132", + "App16", + "App20", + "App24", + "App32", + "AppSwitcher16", + "AppSwitcher20", + "AppSwitcher24", + "AppSwitcher32", + "Apple16", + "Apple20", + "Apple24", + "Apple32", + "Application16", + "Application20", + "Application24", + "Application32", + "Apps16", + "Apps20", + "Apps24", + "Apps32", + "Archive16", + "Archive20", + "Archive24", + "Archive32", + "Arrival16", + "Arrival20", + "Arrival24", + "Arrival32", + "ArrowDown16", + "ArrowDown20", + "ArrowDown24", + "ArrowDown32", + "ArrowDownLeft16", + "ArrowDownLeft20", + "ArrowDownLeft24", + "ArrowDownLeft32", + "ArrowDownRight16", + "ArrowDownRight20", + "ArrowDownRight24", + "ArrowDownRight32", + "ArrowLeft16", + "ArrowLeft20", + "ArrowLeft24", + "ArrowLeft32", + "ArrowRight16", + "ArrowRight20", + "ArrowRight24", + "ArrowRight32", + "ArrowShiftDown16", + "ArrowShiftDown20", + "ArrowShiftDown24", + "ArrowShiftDown32", + "ArrowUp16", + "ArrowUp20", + "ArrowUp24", + "ArrowUp32", + "ArrowUpLeft16", + "ArrowUpLeft20", + "ArrowUpLeft24", + "ArrowUpLeft32", + "ArrowUpRight16", + "ArrowUpRight20", + "ArrowUpRight24", + "ArrowUpRight32", + "Arrows16", + "Arrows20", + "Arrows24", + "Arrows32", + "ArrowsHorizontal16", + "ArrowsHorizontal20", + "ArrowsHorizontal24", + "ArrowsHorizontal32", + "ArrowsVertical16", + "ArrowsVertical20", + "ArrowsVertical24", + "ArrowsVertical32", + "Asleep16", + "Asleep20", + "Asleep24", + "Asleep32", + "AsleepFilled16", + "AsleepFilled20", + "AsleepFilled24", + "AsleepFilled32", + "Asset16", + "Asset20", + "Asset24", + "Asset32", + "At16", + "At20", + "At24", + "At32", + "Attachment16", + "Attachment20", + "Attachment24", + "Attachment32", + "AudioConsole16", + "AudioConsole20", + "AudioConsole24", + "AudioConsole32", + "AugmentedReality16", + "AugmentedReality20", + "AugmentedReality24", + "AugmentedReality32", + "Awake16", + "Awake20", + "Awake24", + "Awake32", + "BackToTop16", + "BackToTop20", + "BackToTop24", + "BackToTop32", + "Badge16", + "Badge20", + "Badge24", + "Badge32", + "Bar16", + "Bar20", + "Bar24", + "Bar32", + "Basketball16", + "Basketball20", + "Basketball24", + "Basketball32", + "BatteryCharging16", + "BatteryCharging20", + "BatteryCharging24", + "BatteryCharging32", + "BatteryEmpty16", + "BatteryEmpty20", + "BatteryEmpty24", + "BatteryEmpty32", + "BatteryFull16", + "BatteryFull20", + "BatteryFull24", + "BatteryFull32", + "BatteryHalf16", + "BatteryHalf20", + "BatteryHalf24", + "BatteryHalf32", + "BatteryLow16", + "BatteryLow20", + "BatteryLow24", + "BatteryLow32", + "BatteryQuarter16", + "BatteryQuarter20", + "BatteryQuarter24", + "BatteryQuarter32", + "Bee16", + "Bee20", + "Bee24", + "Bee32", + "Bicycle16", + "Bicycle20", + "Bicycle24", + "Bicycle32", + "Binoculars16", + "Binoculars20", + "Binoculars24", + "Binoculars32", + "Blockchain16", + "Blockchain20", + "Blockchain24", + "Blockchain32", + "Blog16", + "Blog20", + "Blog24", + "Blog32", + "Bluetooth16", + "Bluetooth20", + "Bluetooth24", + "Bluetooth32", + "BluetoothOff16", + "BluetoothOff20", + "BluetoothOff24", + "BluetoothOff32", + "Bookmark16", + "Bookmark20", + "Bookmark24", + "Bookmark32", + "Box16", + "Box20", + "Box24", + "Box32", + "Branch16", + "Branch20", + "Branch24", + "Branch32", + "BrightnessContrast16", + "BrightnessContrast20", + "BrightnessContrast24", + "BrightnessContrast32", + "Building16", + "Building20", + "Building24", + "Building32", + "BuildingInsights_116", + "BuildingInsights_120", + "BuildingInsights_124", + "BuildingInsights_132", + "BuildingInsights_216", + "BuildingInsights_220", + "BuildingInsights_224", + "BuildingInsights_232", + "BuildingInsights_316", + "BuildingInsights_320", + "BuildingInsights_324", + "BuildingInsights_332", + "Bullhorn16", + "Bullhorn20", + "Bullhorn24", + "Bullhorn32", + "Bus16", + "Bus20", + "Bus24", + "Bus32", + "Cad16", + "Cad20", + "Cad24", + "Cad32", + "Cafe16", + "Cafe20", + "Cafe24", + "Cafe32", + "Calculator16", + "Calculator20", + "Calculator24", + "Calculator32", + "CalculatorCheck16", + "CalculatorCheck20", + "CalculatorCheck24", + "CalculatorCheck32", + "Calendar16", + "Calendar20", + "Calendar24", + "Calendar32", + "Calibrate16", + "Calibrate20", + "Calibrate24", + "Calibrate32", + "Camera16", + "Camera20", + "Camera24", + "Camera32", + "CameraAction16", + "CameraAction20", + "CameraAction24", + "CameraAction32", + "Car16", + "Car20", + "Car24", + "Car32", + "CarFront16", + "CarFront20", + "CarFront24", + "CarFront32", + "Carbon16", + "Carbon20", + "Carbon24", + "Carbon32", + "CaretDown16", + "CaretDown20", + "CaretDown24", + "CaretDown32", + "CaretDownGlyph", + "CaretLeft16", + "CaretLeft20", + "CaretLeft24", + "CaretLeft32", + "CaretLeftGlyph", + "CaretRight16", + "CaretRight20", + "CaretRight24", + "CaretRight32", + "CaretRightGlyph", + "CaretSort16", + "CaretSort20", + "CaretSort24", + "CaretSort32", + "CaretSortDown16", + "CaretSortDown20", + "CaretSortDown24", + "CaretSortDown32", + "CaretSortUp16", + "CaretSortUp20", + "CaretSortUp24", + "CaretSortUp32", + "CaretUp16", + "CaretUp20", + "CaretUp24", + "CaretUp32", + "CaretUpGlyph", + "CarouselHorizontal16", + "CarouselHorizontal20", + "CarouselHorizontal24", + "CarouselHorizontal32", + "CarouselVertical16", + "CarouselVertical20", + "CarouselVertical24", + "CarouselVertical32", + "Catalog16", + "Catalog20", + "Catalog24", + "Catalog32", + "Categories16", + "Categories20", + "Categories24", + "Categories32", + "Category16", + "Category20", + "Category24", + "Category32", + "CategoryAdd16", + "CategoryAdd20", + "CategoryAdd24", + "CategoryAdd32", + "CategoryAnd16", + "CategoryAnd20", + "CategoryAnd24", + "CategoryAnd32", + "CategoryNew16", + "CategoryNew20", + "CategoryNew24", + "CategoryNew32", + "CategoryNewEach16", + "CategoryNewEach20", + "CategoryNewEach24", + "CategoryNewEach32", + "Cda16", + "Cda20", + "Cda24", + "Cda32", + "CenterCircle16", + "CenterCircle20", + "CenterCircle24", + "CenterCircle32", + "CenterSquare16", + "CenterSquare20", + "CenterSquare24", + "CenterSquare32", + "Certificate16", + "Certificate20", + "Certificate24", + "Certificate32", + "CertificateCheck16", + "CertificateCheck20", + "CertificateCheck24", + "CertificateCheck32", + "ChangeCatalog16", + "ChangeCatalog20", + "ChangeCatalog24", + "ChangeCatalog32", + "CharacterPatterns16", + "CharacterPatterns20", + "CharacterPatterns24", + "CharacterPatterns32", + "ChargingStation16", + "ChargingStation20", + "ChargingStation24", + "ChargingStation32", + "ChargingStationFilled16", + "ChargingStationFilled20", + "ChargingStationFilled24", + "ChargingStationFilled32", + "ChartBar16", + "ChartBar20", + "ChartBar24", + "ChartBar32", + "ChartBubble16", + "ChartBubble20", + "ChartBubble24", + "ChartBubble32", + "ChartLine16", + "ChartLine20", + "ChartLine24", + "ChartLine32", + "ChartLineData16", + "ChartLineData20", + "ChartLineData24", + "ChartLineData32", + "ChartNetwork16", + "ChartNetwork20", + "ChartNetwork24", + "ChartNetwork32", + "ChartPie16", + "ChartPie20", + "ChartPie24", + "ChartPie32", + "ChartScatter16", + "ChartScatter20", + "ChartScatter24", + "ChartScatter32", + "ChartVennDiagram16", + "ChartVennDiagram20", + "ChartVennDiagram24", + "ChartVennDiagram32", + "Chat16", + "Chat20", + "Chat24", + "Chat32", + "ChatBot16", + "ChatBot20", + "ChatBot24", + "ChatBot32", + "Checkbox16", + "Checkbox20", + "Checkbox24", + "Checkbox32", + "CheckboxChecked16", + "CheckboxChecked20", + "CheckboxChecked24", + "CheckboxChecked32", + "CheckboxCheckedFilled16", + "CheckboxCheckedFilled20", + "CheckboxCheckedFilled24", + "CheckboxCheckedFilled32", + "CheckboxIndeterminate16", + "CheckboxIndeterminate20", + "CheckboxIndeterminate24", + "CheckboxIndeterminate32", + "CheckboxIndeterminateFilled16", + "CheckboxIndeterminateFilled20", + "CheckboxIndeterminateFilled24", + "CheckboxIndeterminateFilled32", + "CheckboxUndeterminate16", + "CheckboxUndeterminate20", + "CheckboxUndeterminate24", + "CheckboxUndeterminate32", + "CheckboxUndeterminateFilled16", + "CheckboxUndeterminateFilled20", + "CheckboxUndeterminateFilled24", + "CheckboxUndeterminateFilled32", + "Checkmark16", + "Checkmark20", + "Checkmark24", + "Checkmark32", + "CheckmarkFilled16", + "CheckmarkFilled20", + "CheckmarkFilled24", + "CheckmarkFilled32", + "CheckmarkOutline16", + "CheckmarkOutline20", + "CheckmarkOutline24", + "CheckmarkOutline32", + "Chemistry16", + "Chemistry20", + "Chemistry24", + "Chemistry32", + "ChevronDown16", + "ChevronDown20", + "ChevronDown24", + "ChevronDown32", + "ChevronDownGlyph", + "ChevronLeft16", + "ChevronLeft20", + "ChevronLeft24", + "ChevronLeft32", + "ChevronLeftGlyph", + "ChevronMini16", + "ChevronMini20", + "ChevronMini24", + "ChevronMini32", + "ChevronRight16", + "ChevronRight20", + "ChevronRight24", + "ChevronRight32", + "ChevronRightGlyph", + "ChevronSort16", + "ChevronSort20", + "ChevronSort24", + "ChevronSort32", + "ChevronSortDown16", + "ChevronSortDown20", + "ChevronSortDown24", + "ChevronSortDown32", + "ChevronSortUp16", + "ChevronSortUp20", + "ChevronSortUp24", + "ChevronSortUp32", + "ChevronUp16", + "ChevronUp20", + "ChevronUp24", + "ChevronUp32", + "ChevronUpGlyph", + "Chip16", + "Chip20", + "Chip24", + "Chip32", + "Choices16", + "Choices20", + "Choices24", + "Choices32", + "CircleDash16", + "CircleDash20", + "CircleDash24", + "CircleDash32", + "CircleFilled16", + "CircleFilled20", + "CircleFilled24", + "CircleFilled32", + "Classification16", + "Classification20", + "Classification24", + "Classification32", + "ClassifierLanguage16", + "ClassifierLanguage20", + "ClassifierLanguage24", + "ClassifierLanguage32", + "Close16", + "Close20", + "Close24", + "Close32", + "CloseFilled16", + "CloseFilled20", + "CloseFilled24", + "CloseFilled32", + "CloseOutline16", + "CloseOutline20", + "CloseOutline24", + "CloseOutline32", + "ClosedCaption16", + "ClosedCaption20", + "ClosedCaption24", + "ClosedCaption32", + "ClosedCaptionAlt16", + "ClosedCaptionAlt20", + "ClosedCaptionAlt24", + "ClosedCaptionAlt32", + "ClosedCaptionFilled16", + "ClosedCaptionFilled20", + "ClosedCaptionFilled24", + "ClosedCaptionFilled32", + "Cloud16", + "Cloud20", + "Cloud24", + "Cloud32", + "CloudApp16", + "CloudApp20", + "CloudApp24", + "CloudApp32", + "CloudDownload16", + "CloudDownload20", + "CloudDownload24", + "CloudDownload32", + "CloudFoundry_116", + "CloudFoundry_120", + "CloudFoundry_124", + "CloudFoundry_132", + "CloudFoundry_216", + "CloudFoundry_220", + "CloudFoundry_224", + "CloudFoundry_232", + "CloudLightning16", + "CloudLightning20", + "CloudLightning24", + "CloudLightning32", + "CloudRain16", + "CloudRain20", + "CloudRain24", + "CloudRain32", + "CloudSnow16", + "CloudSnow20", + "CloudSnow24", + "CloudSnow32", + "CloudUpload16", + "CloudUpload20", + "CloudUpload24", + "CloudUpload32", + "Cloudy16", + "Cloudy20", + "Cloudy24", + "Cloudy32", + "Code16", + "Code20", + "Code24", + "Code32", + "Cognitive16", + "Cognitive20", + "Cognitive24", + "Cognitive32", + "Collaborate16", + "Collaborate20", + "Collaborate24", + "Collaborate32", + "CollapseAll16", + "CollapseAll20", + "CollapseAll24", + "CollapseAll32", + "CollapseCategories16", + "CollapseCategories20", + "CollapseCategories24", + "CollapseCategories32", + "ColorPalette16", + "ColorPalette20", + "ColorPalette24", + "ColorPalette32", + "ColorSwitch16", + "ColorSwitch20", + "ColorSwitch24", + "ColorSwitch32", + "Column16", + "Column20", + "Column24", + "Column32", + "Compare16", + "Compare20", + "Compare24", + "Compare32", + "Compass16", + "Compass20", + "Compass24", + "Compass32", + "Concept16", + "Concept20", + "Concept24", + "Concept32", + "Connect16", + "Connect20", + "Connect24", + "Connect32", + "ConnectionSignal16", + "ConnectionSignal20", + "ConnectionSignal24", + "ConnectionSignal32", + "ContainerSoftware16", + "ContainerSoftware20", + "ContainerSoftware24", + "ContainerSoftware32", + "Contrast16", + "Contrast20", + "Contrast24", + "Contrast32", + "Copy16", + "Copy20", + "Copy24", + "Copy32", + "CopyFile16", + "CopyFile20", + "CopyFile24", + "CopyFile32", + "Corn16", + "Corn20", + "Corn24", + "Corn32", + "Corner16", + "Corner20", + "Corner24", + "Corner32", + "Course16", + "Course20", + "Course24", + "Course32", + "Covariate16", + "Covariate20", + "Covariate24", + "Covariate32", + "Credentials16", + "Credentials20", + "Credentials24", + "Credentials32", + "Crop16", + "Crop20", + "Crop24", + "Crop32", + "Csv16", + "Csv20", + "Csv24", + "Csv32", + "Cursor_116", + "Cursor_120", + "Cursor_124", + "Cursor_132", + "Cursor_216", + "Cursor_220", + "Cursor_224", + "Cursor_232", + "Cut16", + "Cut20", + "Cut24", + "Cut32", + "Cyclist16", + "Cyclist20", + "Cyclist24", + "Cyclist32", + "Dashboard16", + "Dashboard20", + "Dashboard24", + "Dashboard32", + "DataBase16", + "DataBase20", + "DataBase24", + "DataBase32", + "DataCheck16", + "DataCheck20", + "DataCheck24", + "DataCheck32", + "DataClass16", + "DataClass20", + "DataClass24", + "DataClass32", + "DataConnected16", + "DataConnected20", + "DataConnected24", + "DataConnected32", + "DataError16", + "DataError20", + "DataError24", + "DataError32", + "DataReference16", + "DataReference20", + "DataReference24", + "DataReference32", + "DataRefinery16", + "DataRefinery20", + "DataRefinery24", + "DataRefinery32", + "DataSet16", + "DataSet20", + "DataSet24", + "DataSet32", + "DataShare16", + "DataShare20", + "DataShare24", + "DataShare32", + "DataStructured16", + "DataStructured20", + "DataStructured24", + "DataStructured32", + "DataTable16", + "DataTable20", + "DataTable24", + "DataTable32", + "DataUnstructured16", + "DataUnstructured20", + "DataUnstructured24", + "DataUnstructured32", + "DataVis_116", + "DataVis_120", + "DataVis_124", + "DataVis_132", + "DataVis_216", + "DataVis_220", + "DataVis_224", + "DataVis_232", + "DataVis_316", + "DataVis_320", + "DataVis_324", + "DataVis_332", + "DataVis_416", + "DataVis_420", + "DataVis_424", + "DataVis_432", + "Data_116", + "Data_120", + "Data_124", + "Data_132", + "Data_216", + "Data_220", + "Data_224", + "Data_232", + "Datastore16", + "Datastore20", + "Datastore24", + "Datastore32", + "Debug16", + "Debug20", + "Debug24", + "Debug32", + "Delete16", + "Delete20", + "Delete24", + "Delete32", + "DeliveryTruck16", + "DeliveryTruck20", + "DeliveryTruck24", + "DeliveryTruck32", + "Departure16", + "Departure20", + "Departure24", + "Departure32", + "Deploy16", + "Deploy20", + "Deploy24", + "Deploy32", + "DeployRules16", + "DeployRules20", + "DeployRules24", + "DeployRules32", + "Development16", + "Development20", + "Development24", + "Development32", + "Devices16", + "Devices20", + "Devices24", + "Devices32", + "Diagram16", + "Diagram20", + "Diagram24", + "Diagram32", + "DistributeHorizontalCenter16", + "DistributeHorizontalCenter20", + "DistributeHorizontalCenter24", + "DistributeHorizontalCenter32", + "DistributeHorizontalLeft16", + "DistributeHorizontalLeft20", + "DistributeHorizontalLeft24", + "DistributeHorizontalLeft32", + "DistributeHorizontalRight16", + "DistributeHorizontalRight20", + "DistributeHorizontalRight24", + "DistributeHorizontalRight32", + "DistributeVerticalBottom16", + "DistributeVerticalBottom20", + "DistributeVerticalBottom24", + "DistributeVerticalBottom32", + "DistributeVerticalCenter16", + "DistributeVerticalCenter20", + "DistributeVerticalCenter24", + "DistributeVerticalCenter32", + "DistributeVerticalTop16", + "DistributeVerticalTop20", + "DistributeVerticalTop24", + "DistributeVerticalTop32", + "Doc16", + "Doc20", + "Doc24", + "Doc32", + "Document16", + "Document20", + "Document24", + "Document32", + "DocumentAdd16", + "DocumentAdd20", + "DocumentAdd24", + "DocumentAdd32", + "DocumentBlank16", + "DocumentBlank20", + "DocumentBlank24", + "DocumentBlank32", + "DocumentDownload16", + "DocumentDownload20", + "DocumentDownload24", + "DocumentDownload32", + "DocumentExport16", + "DocumentExport20", + "DocumentExport24", + "DocumentExport32", + "DocumentImport16", + "DocumentImport20", + "DocumentImport24", + "DocumentImport32", + "DocumentPdf16", + "DocumentPdf20", + "DocumentPdf24", + "DocumentPdf32", + "DocumentSentiment16", + "DocumentSentiment20", + "DocumentSentiment24", + "DocumentSentiment32", + "DocumentSubtract16", + "DocumentSubtract20", + "DocumentSubtract24", + "DocumentSubtract32", + "DocumentTasks16", + "DocumentTasks20", + "DocumentTasks24", + "DocumentTasks32", + "DocumentView16", + "DocumentView20", + "DocumentView24", + "DocumentView32", + "DotMark16", + "DotMark20", + "DotMark24", + "DotMark32", + "DoubleInteger16", + "DoubleInteger20", + "DoubleInteger24", + "DoubleInteger32", + "DownToBottom16", + "DownToBottom20", + "DownToBottom24", + "DownToBottom32", + "Download16", + "Download20", + "Download24", + "Download32", + "DragHorizontal16", + "DragHorizontal20", + "DragHorizontal24", + "DragHorizontal32", + "DragVertical16", + "DragVertical20", + "DragVertical24", + "DragVertical32", + "Draggable16", + "Draggable20", + "Draggable24", + "Draggable32", + "Draw16", + "Draw20", + "Draw24", + "Draw32", + "DropPhoto16", + "DropPhoto20", + "DropPhoto24", + "DropPhoto32", + "DropPhotoFilled16", + "DropPhotoFilled20", + "DropPhotoFilled24", + "DropPhotoFilled32", + "Dvr16", + "Dvr20", + "Dvr24", + "Dvr32", + "Earth16", + "Earth20", + "Earth24", + "Earth32", + "EarthAmericas16", + "EarthAmericas20", + "EarthAmericas24", + "EarthAmericas32", + "EarthAmericasFilled16", + "EarthAmericasFilled20", + "EarthAmericasFilled24", + "EarthAmericasFilled32", + "EarthEuropeAfrica16", + "EarthEuropeAfrica20", + "EarthEuropeAfrica24", + "EarthEuropeAfrica32", + "EarthEuropeAfricaFilled16", + "EarthEuropeAfricaFilled20", + "EarthEuropeAfricaFilled24", + "EarthEuropeAfricaFilled32", + "EarthFilled16", + "EarthFilled20", + "EarthFilled24", + "EarthFilled32", + "EarthSoutheastAsia16", + "EarthSoutheastAsia20", + "EarthSoutheastAsia24", + "EarthSoutheastAsia32", + "EarthSoutheastAsiaFilled16", + "EarthSoutheastAsiaFilled20", + "EarthSoutheastAsiaFilled24", + "EarthSoutheastAsiaFilled32", + "Edit16", + "Edit20", + "Edit24", + "Edit32", + "EditOff16", + "EditOff20", + "EditOff24", + "EditOff32", + "EdtLoop16", + "EdtLoop20", + "EdtLoop24", + "EdtLoop32", + "Education16", + "Education20", + "Education24", + "Education32", + "Email16", + "Email20", + "Email24", + "Email32", + "EmailNew16", + "EmailNew20", + "EmailNew24", + "EmailNew32", + "Enterprise16", + "Enterprise20", + "Enterprise24", + "Enterprise32", + "Erase16", + "Erase20", + "Erase24", + "Erase32", + "Error16", + "Error20", + "Error24", + "Error32", + "ErrorFilled16", + "ErrorFilled20", + "ErrorFilled24", + "ErrorFilled32", + "ErrorOutline16", + "ErrorOutline20", + "ErrorOutline24", + "ErrorOutline32", + "Event16", + "Event20", + "Event24", + "Event32", + "EventSchedule16", + "EventSchedule20", + "EventSchedule24", + "EventSchedule32", + "Events16", + "Events20", + "Events24", + "Events32", + "EventsAlt16", + "EventsAlt20", + "EventsAlt24", + "EventsAlt32", + "ExamMode16", + "ExamMode20", + "ExamMode24", + "ExamMode32", + "Exit16", + "Exit20", + "Exit24", + "Exit32", + "ExpandAll16", + "ExpandAll20", + "ExpandAll24", + "ExpandAll32", + "ExpandCategories16", + "ExpandCategories20", + "ExpandCategories24", + "ExpandCategories32", + "Export16", + "Export20", + "Export24", + "Export32", + "Eyedropper16", + "Eyedropper20", + "Eyedropper24", + "Eyedropper32", + "FaceActivated16", + "FaceActivated20", + "FaceActivated24", + "FaceActivated32", + "FaceActivatedAdd16", + "FaceActivatedAdd20", + "FaceActivatedAdd24", + "FaceActivatedAdd32", + "FaceActivatedFilled16", + "FaceActivatedFilled20", + "FaceActivatedFilled24", + "FaceActivatedFilled32", + "FaceAdd16", + "FaceAdd20", + "FaceAdd24", + "FaceAdd32", + "FaceCool16", + "FaceCool20", + "FaceCool24", + "FaceCool32", + "FaceDissatisfied16", + "FaceDissatisfied20", + "FaceDissatisfied24", + "FaceDissatisfied32", + "FaceDissatisfiedFilled16", + "FaceDissatisfiedFilled20", + "FaceDissatisfiedFilled24", + "FaceDissatisfiedFilled32", + "FaceDizzy16", + "FaceDizzy20", + "FaceDizzy24", + "FaceDizzy32", + "FaceDizzyFilled16", + "FaceDizzyFilled20", + "FaceDizzyFilled24", + "FaceDizzyFilled32", + "FaceNeutral16", + "FaceNeutral20", + "FaceNeutral24", + "FaceNeutral32", + "FaceNeutralFilled16", + "FaceNeutralFilled20", + "FaceNeutralFilled24", + "FaceNeutralFilled32", + "FacePending16", + "FacePending20", + "FacePending24", + "FacePending32", + "FacePendingFilled16", + "FacePendingFilled20", + "FacePendingFilled24", + "FacePendingFilled32", + "FaceSatisfied16", + "FaceSatisfied20", + "FaceSatisfied24", + "FaceSatisfied32", + "FaceSatisfiedFilled16", + "FaceSatisfiedFilled20", + "FaceSatisfiedFilled24", + "FaceSatisfiedFilled32", + "FaceWink16", + "FaceWink20", + "FaceWink24", + "FaceWink32", + "FaceWinkFilled16", + "FaceWinkFilled20", + "FaceWinkFilled24", + "FaceWinkFilled32", + "Factor16", + "Factor20", + "Factor24", + "Factor32", + "Fade16", + "Fade20", + "Fade24", + "Fade32", + "Favorite16", + "Favorite20", + "Favorite24", + "Favorite32", + "FavoriteFilled16", + "FavoriteFilled20", + "FavoriteFilled24", + "FavoriteFilled32", + "FetchUpload16", + "FetchUpload20", + "FetchUpload24", + "FetchUpload32", + "FetchUploadCloud16", + "FetchUploadCloud20", + "FetchUploadCloud24", + "FetchUploadCloud32", + "Filter16", + "Filter20", + "Filter24", + "Filter32", + "FilterEdit16", + "FilterEdit20", + "FilterEdit24", + "FilterEdit32", + "Finance16", + "Finance20", + "Finance24", + "Finance32", + "FingerprintRecognition16", + "FingerprintRecognition20", + "FingerprintRecognition24", + "FingerprintRecognition32", + "Fish16", + "Fish20", + "Fish24", + "Fish32", + "FishMultiple16", + "FishMultiple20", + "FishMultiple24", + "FishMultiple32", + "FitToScreen16", + "FitToScreen20", + "FitToScreen24", + "FitToScreen32", + "Flag16", + "Flag20", + "Flag24", + "Flag32", + "FlaggingTaxi16", + "FlaggingTaxi20", + "FlaggingTaxi24", + "FlaggingTaxi32", + "Flash16", + "Flash20", + "Flash24", + "Flash32", + "FlashFilled16", + "FlashFilled20", + "FlashFilled24", + "FlashFilled32", + "FlashOff16", + "FlashOff20", + "FlashOff24", + "FlashOff32", + "FlashOffFilled16", + "FlashOffFilled20", + "FlashOffFilled24", + "FlashOffFilled32", + "Flow16", + "Flow20", + "Flow24", + "Flow32", + "FlowData16", + "FlowData20", + "FlowData24", + "FlowData32", + "FlowStream16", + "FlowStream20", + "FlowStream24", + "FlowStream32", + "Fog16", + "Fog20", + "Fog24", + "Fog32", + "Folder16", + "Folder20", + "Folder24", + "Folder32", + "FolderAdd16", + "FolderAdd20", + "FolderAdd24", + "FolderAdd32", + "FolderDetails16", + "FolderDetails20", + "FolderDetails24", + "FolderDetails32", + "FolderOff16", + "FolderOff20", + "FolderOff24", + "FolderOff32", + "FolderShared16", + "FolderShared20", + "FolderShared24", + "FolderShared32", + "Folders16", + "Folders20", + "Folders24", + "Folders32", + "Fork16", + "Fork20", + "Fork24", + "Fork32", + "Forum16", + "Forum20", + "Forum24", + "Forum32", + "Forward_1016", + "Forward_1020", + "Forward_1024", + "Forward_1032", + "Forward_3016", + "Forward_3020", + "Forward_3024", + "Forward_3032", + "Forward_516", + "Forward_520", + "Forward_524", + "Forward_532", + "FruitBowl16", + "FruitBowl20", + "FruitBowl24", + "FruitBowl32", + "Function16", + "Function20", + "Function24", + "Function32", + "GameConsole16", + "GameConsole20", + "GameConsole24", + "GameConsole32", + "GameWireless16", + "GameWireless20", + "GameWireless24", + "GameWireless32", + "Gamification16", + "Gamification20", + "Gamification24", + "Gamification32", + "GeneratePdf16", + "GeneratePdf20", + "GeneratePdf24", + "GeneratePdf32", + "Gif16", + "Gif20", + "Gif24", + "Gif32", + "Gift16", + "Gift20", + "Gift24", + "Gift32", + "Globe16", + "Globe20", + "Globe24", + "Globe32", + "GraphicalDataFlow16", + "GraphicalDataFlow20", + "GraphicalDataFlow24", + "GraphicalDataFlow32", + "Grid16", + "Grid20", + "Grid24", + "Grid32", + "Group16", + "Group20", + "Group24", + "Group32", + "Hail16", + "Hail20", + "Hail24", + "Hail32", + "Hashtag16", + "Hashtag20", + "Hashtag24", + "Hashtag32", + "Haze16", + "Haze20", + "Haze24", + "Haze32", + "HazeNight16", + "HazeNight20", + "HazeNight24", + "HazeNight32", + "Hd16", + "Hd20", + "Hd24", + "Hd32", + "HdFilled16", + "HdFilled20", + "HdFilled24", + "HdFilled32", + "Hdr16", + "Hdr20", + "Hdr24", + "Hdr32", + "Headphones16", + "Headphones20", + "Headphones24", + "Headphones32", + "Headset16", + "Headset20", + "Headset24", + "Headset32", + "HealthCross16", + "HealthCross20", + "HealthCross24", + "HealthCross32", + "Hearing16", + "Hearing20", + "Hearing24", + "Hearing32", + "Help16", + "Help20", + "Help24", + "Help32", + "HelpDesk16", + "HelpDesk20", + "HelpDesk24", + "HelpDesk32", + "HelpFilled16", + "HelpFilled20", + "HelpFilled24", + "HelpFilled32", + "Home16", + "Home20", + "Home24", + "Home32", + "Hotel16", + "Hotel20", + "Hotel24", + "Hotel32", + "Hourglass16", + "Hourglass20", + "Hourglass24", + "Hourglass32", + "Http16", + "Http20", + "Http24", + "Http32", + "Humidity16", + "Humidity20", + "Humidity24", + "Humidity32", + "Hurricane16", + "Hurricane20", + "Hurricane24", + "Hurricane32", + "HybridNetworking16", + "HybridNetworking20", + "HybridNetworking24", + "HybridNetworking32", + "IbmCloud16", + "IbmCloud20", + "IbmCloud24", + "IbmCloud32", + "IbmSecurity16", + "IbmSecurity20", + "IbmSecurity24", + "IbmSecurity32", + "Icon", + "Idea16", + "Idea20", + "Idea24", + "Idea32", + "Identification16", + "Identification20", + "Identification24", + "Identification32", + "Image16", + "Image20", + "Image24", + "Image32", + "ImageMedical16", + "ImageMedical20", + "ImageMedical24", + "ImageMedical32", + "ImproveRelevance16", + "ImproveRelevance20", + "ImproveRelevance24", + "ImproveRelevance32", + "InProgress16", + "InProgress20", + "InProgress24", + "InProgress32", + "IncreaseLevel16", + "IncreaseLevel20", + "IncreaseLevel24", + "IncreaseLevel32", + "Industry16", + "Industry20", + "Industry24", + "Industry32", + "Information16", + "Information20", + "Information24", + "Information32", + "InformationFilled16", + "InformationFilled20", + "InformationFilled24", + "InformationFilled32", + "Insert16", + "Insert20", + "Insert24", + "Insert32", + "Integration16", + "Integration20", + "Integration24", + "Integration32", + "Interactions16", + "Interactions20", + "Interactions24", + "Interactions32", + "InventoryManagement16", + "InventoryManagement20", + "InventoryManagement24", + "InventoryManagement32", + "IotConnect16", + "IotConnect20", + "IotConnect24", + "IotConnect32", + "IotPlatform16", + "IotPlatform20", + "IotPlatform24", + "IotPlatform32", + "Iso16", + "Iso20", + "Iso24", + "Iso32", + "IsoFilled16", + "IsoFilled20", + "IsoFilled24", + "IsoFilled32", + "IsoOutline16", + "IsoOutline20", + "IsoOutline24", + "IsoOutline32", + "Jpg16", + "Jpg20", + "Jpg24", + "Jpg32", + "Json16", + "Json20", + "Json24", + "Json32", + "JumpLink16", + "JumpLink20", + "JumpLink24", + "JumpLink32", + "Keyboard16", + "Keyboard20", + "Keyboard24", + "Keyboard32", + "Language16", + "Language20", + "Language24", + "Language32", + "Laptop16", + "Laptop20", + "Laptop24", + "Laptop32", + "Launch16", + "Launch20", + "Launch24", + "Launch32", + "Legend16", + "Legend20", + "Legend24", + "Legend32", + "LetterAa16", + "LetterAa20", + "LetterAa24", + "LetterAa32", + "LetterBb16", + "LetterBb20", + "LetterBb24", + "LetterBb32", + "LetterCc16", + "LetterCc20", + "LetterCc24", + "LetterCc32", + "LetterDd16", + "LetterDd20", + "LetterDd24", + "LetterDd32", + "LetterEe16", + "LetterEe20", + "LetterEe24", + "LetterEe32", + "LetterFf16", + "LetterFf20", + "LetterFf24", + "LetterFf32", + "LetterGg16", + "LetterGg20", + "LetterGg24", + "LetterGg32", + "LetterHh16", + "LetterHh20", + "LetterHh24", + "LetterHh32", + "LetterIi16", + "LetterIi20", + "LetterIi24", + "LetterIi32", + "LetterJj16", + "LetterJj20", + "LetterJj24", + "LetterJj32", + "LetterKk16", + "LetterKk20", + "LetterKk24", + "LetterKk32", + "LetterLl16", + "LetterLl20", + "LetterLl24", + "LetterLl32", + "LetterMm16", + "LetterMm20", + "LetterMm24", + "LetterMm32", + "LetterNn16", + "LetterNn20", + "LetterNn24", + "LetterNn32", + "LetterOo16", + "LetterOo20", + "LetterOo24", + "LetterOo32", + "LetterPp16", + "LetterPp20", + "LetterPp24", + "LetterPp32", + "LetterQq16", + "LetterQq20", + "LetterQq24", + "LetterQq32", + "LetterRr16", + "LetterRr20", + "LetterRr24", + "LetterRr32", + "LetterSs16", + "LetterSs20", + "LetterSs24", + "LetterSs32", + "LetterTt16", + "LetterTt20", + "LetterTt24", + "LetterTt32", + "LetterUu16", + "LetterUu20", + "LetterUu24", + "LetterUu32", + "LetterVv16", + "LetterVv20", + "LetterVv24", + "LetterVv32", + "LetterWw16", + "LetterWw20", + "LetterWw24", + "LetterWw32", + "LetterXx16", + "LetterXx20", + "LetterXx24", + "LetterXx32", + "LetterYy16", + "LetterYy20", + "LetterYy24", + "LetterYy32", + "LetterZz16", + "LetterZz20", + "LetterZz24", + "LetterZz32", + "Light16", + "Light20", + "Light24", + "Light32", + "LightFilled16", + "LightFilled20", + "LightFilled24", + "LightFilled32", + "Lightning16", + "Lightning20", + "Lightning24", + "Lightning32", + "Link16", + "Link20", + "Link24", + "Link32", + "List16", + "List20", + "List24", + "List32", + "ListBoxes16", + "ListBoxes20", + "ListBoxes24", + "ListBoxes32", + "ListBulleted16", + "ListBulleted20", + "ListBulleted24", + "ListBulleted32", + "ListChecked16", + "ListChecked20", + "ListChecked24", + "ListChecked32", + "ListDropdown16", + "ListDropdown20", + "ListDropdown24", + "ListDropdown32", + "ListNumbered16", + "ListNumbered20", + "ListNumbered24", + "ListNumbered32", + "Location16", + "Location20", + "Location24", + "Location32", + "Locked16", + "Locked20", + "Locked24", + "Locked32", + "Login16", + "Login20", + "Login24", + "Login32", + "LogoDigg16", + "LogoDigg20", + "LogoDigg24", + "LogoDigg32", + "LogoFacebook16", + "LogoFacebook20", + "LogoFacebook24", + "LogoFacebook32", + "LogoFlickr16", + "LogoFlickr20", + "LogoFlickr24", + "LogoFlickr32", + "LogoGithub16", + "LogoGithub20", + "LogoGithub24", + "LogoGithub32", + "LogoGlassdoor16", + "LogoGlassdoor20", + "LogoGlassdoor24", + "LogoGlassdoor32", + "LogoInstagram16", + "LogoInstagram20", + "LogoInstagram24", + "LogoInstagram32", + "LogoJupyter16", + "LogoJupyter20", + "LogoJupyter24", + "LogoJupyter32", + "LogoLinkedin16", + "LogoLinkedin20", + "LogoLinkedin24", + "LogoLinkedin32", + "LogoLivestream16", + "LogoLivestream20", + "LogoLivestream24", + "LogoLivestream32", + "LogoMedium16", + "LogoMedium20", + "LogoMedium24", + "LogoMedium32", + "LogoOpenshift16", + "LogoOpenshift20", + "LogoOpenshift24", + "LogoOpenshift32", + "LogoPinterest16", + "LogoPinterest20", + "LogoPinterest24", + "LogoPinterest32", + "LogoPython16", + "LogoPython20", + "LogoPython24", + "LogoPython32", + "LogoQuora16", + "LogoQuora20", + "LogoQuora24", + "LogoQuora32", + "LogoRScript16", + "LogoRScript20", + "LogoRScript24", + "LogoRScript32", + "LogoSkype16", + "LogoSkype20", + "LogoSkype24", + "LogoSkype32", + "LogoSlack16", + "LogoSlack20", + "LogoSlack24", + "LogoSlack32", + "LogoSnapchat16", + "LogoSnapchat20", + "LogoSnapchat24", + "LogoSnapchat32", + "LogoTumblr16", + "LogoTumblr20", + "LogoTumblr24", + "LogoTumblr32", + "LogoTwitter16", + "LogoTwitter20", + "LogoTwitter24", + "LogoTwitter32", + "LogoVmware16", + "LogoVmware20", + "LogoVmware24", + "LogoVmware32", + "LogoXing16", + "LogoXing20", + "LogoXing24", + "LogoXing32", + "LogoYelp16", + "LogoYelp20", + "LogoYelp24", + "LogoYelp32", + "LogoYoutube16", + "LogoYoutube20", + "LogoYoutube24", + "LogoYoutube32", + "Logout16", + "Logout20", + "Logout24", + "Logout32", + "Loop16", + "Loop20", + "Loop24", + "Loop32", + "MacCommand16", + "MacCommand20", + "MacCommand24", + "MacCommand32", + "MacOption16", + "MacOption20", + "MacOption24", + "MacOption32", + "MacShift16", + "MacShift20", + "MacShift24", + "MacShift32", + "MachineLearning16", + "MachineLearning20", + "MachineLearning24", + "MachineLearning32", + "MagicWand16", + "MagicWand20", + "MagicWand24", + "MagicWand32", + "MagicWandFilled16", + "MagicWandFilled20", + "MagicWandFilled24", + "MagicWandFilled32", + "MailAll16", + "MailAll20", + "MailAll24", + "MailAll32", + "ManageProtection16", + "ManageProtection20", + "ManageProtection24", + "ManageProtection32", + "ManagedSolutions16", + "ManagedSolutions20", + "ManagedSolutions24", + "ManagedSolutions32", + "Map16", + "Map20", + "Map24", + "Map32", + "Maximize16", + "Maximize20", + "Maximize24", + "Maximize32", + "Medication16", + "Medication20", + "Medication24", + "Medication32", + "MedicationAlert16", + "MedicationAlert20", + "MedicationAlert24", + "MedicationAlert32", + "MedicationReminder16", + "MedicationReminder20", + "MedicationReminder24", + "MedicationReminder32", + "Menu16", + "Menu20", + "Menu24", + "Menu32", + "Meter16", + "Meter20", + "Meter24", + "Meter32", + "Microphone16", + "Microphone20", + "Microphone24", + "Microphone32", + "MicrophoneFilled16", + "MicrophoneFilled20", + "MicrophoneFilled24", + "MicrophoneFilled32", + "MicrophoneOff16", + "MicrophoneOff20", + "MicrophoneOff24", + "MicrophoneOff32", + "MicrophoneOffFilled16", + "MicrophoneOffFilled20", + "MicrophoneOffFilled24", + "MicrophoneOffFilled32", + "Microscope16", + "Microscope20", + "Microscope24", + "Microscope32", + "Migrate16", + "Migrate20", + "Migrate24", + "Migrate32", + "MigrateAlt16", + "MigrateAlt20", + "MigrateAlt24", + "MigrateAlt32", + "Minimize16", + "Minimize20", + "Minimize24", + "Minimize32", + "Misuse16", + "Misuse20", + "Misuse24", + "Misuse32", + "MisuseAlt16", + "MisuseAlt20", + "MisuseAlt24", + "MisuseAlt32", + "MisuseOutline16", + "MisuseOutline20", + "MisuseOutline24", + "MisuseOutline32", + "MixedRainHail16", + "MixedRainHail20", + "MixedRainHail24", + "MixedRainHail32", + "Mobile16", + "Mobile20", + "Mobile24", + "Mobile32", + "MobileAdd16", + "MobileAdd20", + "MobileAdd24", + "MobileAdd32", + "MobileAudio16", + "MobileAudio20", + "MobileAudio24", + "MobileAudio32", + "MobileCheck16", + "MobileCheck20", + "MobileCheck24", + "MobileCheck32", + "MobileDownload16", + "MobileDownload20", + "MobileDownload24", + "MobileDownload32", + "MobileLandscape16", + "MobileLandscape20", + "MobileLandscape24", + "MobileLandscape32", + "Model16", + "Model20", + "Model24", + "Model32", + "ModelBuilder16", + "ModelBuilder20", + "ModelBuilder24", + "ModelBuilder32", + "ModelReference16", + "ModelReference20", + "ModelReference24", + "ModelReference32", + "Money16", + "Money20", + "Money24", + "Money32", + "Moon16", + "Moon20", + "Moon24", + "Moon32", + "MostlyCloudy16", + "MostlyCloudy20", + "MostlyCloudy24", + "MostlyCloudy32", + "MostlyCloudyNight16", + "MostlyCloudyNight20", + "MostlyCloudyNight24", + "MostlyCloudyNight32", + "Mov16", + "Mov20", + "Mov24", + "Mov32", + "Move16", + "Move20", + "Move24", + "Move32", + "Movement16", + "Movement20", + "Movement24", + "Movement32", + "Mp316", + "Mp320", + "Mp324", + "Mp332", + "Mp416", + "Mp420", + "Mp424", + "Mp432", + "Mpeg16", + "Mpeg20", + "Mpeg24", + "Mpeg32", + "Mpg216", + "Mpg220", + "Mpg224", + "Mpg232", + "Music16", + "Music20", + "Music24", + "Music32", + "Network_116", + "Network_120", + "Network_124", + "Network_132", + "Network_216", + "Network_220", + "Network_224", + "Network_232", + "Network_316", + "Network_320", + "Network_324", + "Network_332", + "Network_416", + "Network_420", + "Network_424", + "Network_432", + "NewTab16", + "NewTab20", + "NewTab24", + "NewTab32", + "NoImage16", + "NoImage20", + "NoImage24", + "NoImage32", + "NoTicket16", + "NoTicket20", + "NoTicket24", + "NoTicket32", + "Nominal16", + "Nominal20", + "Nominal24", + "Nominal32", + "NoodleBowl16", + "NoodleBowl20", + "NoodleBowl24", + "NoodleBowl32", + "NotAvailable16", + "NotAvailable20", + "NotAvailable24", + "NotAvailable32", + "NotSent16", + "NotSent20", + "NotSent24", + "NotSent32", + "NotSentFilled16", + "NotSentFilled20", + "NotSentFilled24", + "NotSentFilled32", + "Notebook16", + "Notebook20", + "Notebook24", + "Notebook32", + "NotebookReference16", + "NotebookReference20", + "NotebookReference24", + "NotebookReference32", + "Notification16", + "Notification20", + "Notification24", + "Notification32", + "NotificationFilled16", + "NotificationFilled20", + "NotificationFilled24", + "NotificationFilled32", + "NotificationNew16", + "NotificationNew20", + "NotificationNew24", + "NotificationNew32", + "NotificationOff16", + "NotificationOff20", + "NotificationOff24", + "NotificationOff32", + "NotificationOffFilled16", + "NotificationOffFilled20", + "NotificationOffFilled24", + "NotificationOffFilled32", + "NumberSmall_016", + "NumberSmall_020", + "NumberSmall_024", + "NumberSmall_032", + "NumberSmall_116", + "NumberSmall_120", + "NumberSmall_124", + "NumberSmall_132", + "NumberSmall_216", + "NumberSmall_220", + "NumberSmall_224", + "NumberSmall_232", + "NumberSmall_316", + "NumberSmall_320", + "NumberSmall_324", + "NumberSmall_332", + "NumberSmall_416", + "NumberSmall_420", + "NumberSmall_424", + "NumberSmall_432", + "NumberSmall_516", + "NumberSmall_520", + "NumberSmall_524", + "NumberSmall_532", + "NumberSmall_616", + "NumberSmall_620", + "NumberSmall_624", + "NumberSmall_632", + "NumberSmall_716", + "NumberSmall_720", + "NumberSmall_724", + "NumberSmall_732", + "NumberSmall_816", + "NumberSmall_820", + "NumberSmall_824", + "NumberSmall_832", + "NumberSmall_916", + "NumberSmall_920", + "NumberSmall_924", + "NumberSmall_932", + "Number_016", + "Number_020", + "Number_024", + "Number_032", + "Number_116", + "Number_120", + "Number_124", + "Number_132", + "Number_216", + "Number_220", + "Number_224", + "Number_232", + "Number_316", + "Number_320", + "Number_324", + "Number_332", + "Number_416", + "Number_420", + "Number_424", + "Number_432", + "Number_516", + "Number_520", + "Number_524", + "Number_532", + "Number_616", + "Number_620", + "Number_624", + "Number_632", + "Number_716", + "Number_720", + "Number_724", + "Number_732", + "Number_816", + "Number_820", + "Number_824", + "Number_832", + "Number_916", + "Number_920", + "Number_924", + "Number_932", + "Omega16", + "Omega20", + "Omega24", + "Omega32", + "Opacity16", + "Opacity20", + "Opacity24", + "Opacity32", + "OpenPanelBottom16", + "OpenPanelBottom20", + "OpenPanelBottom24", + "OpenPanelBottom32", + "OpenPanelFilledBottom16", + "OpenPanelFilledBottom20", + "OpenPanelFilledBottom24", + "OpenPanelFilledBottom32", + "OpenPanelFilledLeft16", + "OpenPanelFilledLeft20", + "OpenPanelFilledLeft24", + "OpenPanelFilledLeft32", + "OpenPanelFilledRight16", + "OpenPanelFilledRight20", + "OpenPanelFilledRight24", + "OpenPanelFilledRight32", + "OpenPanelFilledTop16", + "OpenPanelFilledTop20", + "OpenPanelFilledTop24", + "OpenPanelFilledTop32", + "OpenPanelLeft16", + "OpenPanelLeft20", + "OpenPanelLeft24", + "OpenPanelLeft32", + "OpenPanelRight16", + "OpenPanelRight20", + "OpenPanelRight24", + "OpenPanelRight32", + "OpenPanelTop16", + "OpenPanelTop20", + "OpenPanelTop24", + "OpenPanelTop32", + "OperationsField16", + "OperationsField20", + "OperationsField24", + "OperationsField32", + "OperationsRecord16", + "OperationsRecord20", + "OperationsRecord24", + "OperationsRecord32", + "Ordinal16", + "Ordinal20", + "Ordinal24", + "Ordinal32", + "OverflowMenuHorizontal16", + "OverflowMenuHorizontal20", + "OverflowMenuHorizontal24", + "OverflowMenuHorizontal32", + "OverflowMenuVertical16", + "OverflowMenuVertical20", + "OverflowMenuVertical24", + "OverflowMenuVertical32", + "Package16", + "Package20", + "Package24", + "Package32", + "PageFirst16", + "PageFirst20", + "PageFirst24", + "PageFirst32", + "PageLast16", + "PageLast20", + "PageLast24", + "PageLast32", + "PaintBrush16", + "PaintBrush20", + "PaintBrush24", + "PaintBrush32", + "PaintBrushAlt16", + "PaintBrushAlt20", + "PaintBrushAlt24", + "PaintBrushAlt32", + "PanelExpansion16", + "PanelExpansion20", + "PanelExpansion24", + "PanelExpansion32", + "Paragraph16", + "Paragraph20", + "Paragraph24", + "Paragraph32", + "ParentChild16", + "ParentChild20", + "ParentChild24", + "ParentChild32", + "PartlyCloudy16", + "PartlyCloudy20", + "PartlyCloudy24", + "PartlyCloudy32", + "PartlyCloudyNight16", + "PartlyCloudyNight20", + "PartlyCloudyNight24", + "PartlyCloudyNight32", + "Partnership16", + "Partnership20", + "Partnership24", + "Partnership32", + "Password16", + "Password20", + "Password24", + "Password32", + "Paste16", + "Paste20", + "Paste24", + "Paste32", + "Pause16", + "Pause20", + "Pause24", + "Pause32", + "PauseFilled16", + "PauseFilled20", + "PauseFilled24", + "PauseFilled32", + "PauseOutline16", + "PauseOutline20", + "PauseOutline24", + "PauseOutline32", + "PauseOutlineFilled16", + "PauseOutlineFilled20", + "PauseOutlineFilled24", + "PauseOutlineFilled32", + "Pdf16", + "Pdf20", + "Pdf24", + "Pdf32", + "Pedestrian16", + "Pedestrian20", + "Pedestrian24", + "Pedestrian32", + "PedestrianChild16", + "PedestrianChild20", + "PedestrianChild24", + "PedestrianChild32", + "Percentage16", + "Percentage20", + "Percentage24", + "Percentage32", + "PercentageFilled16", + "PercentageFilled20", + "PercentageFilled24", + "PercentageFilled32", + "Person16", + "Person20", + "Person24", + "Person32", + "PersonFavorite16", + "PersonFavorite20", + "PersonFavorite24", + "PersonFavorite32", + "Phone16", + "Phone20", + "Phone24", + "Phone32", + "PhoneFilled16", + "PhoneFilled20", + "PhoneFilled24", + "PhoneFilled32", + "PhoneOff16", + "PhoneOff20", + "PhoneOff24", + "PhoneOff32", + "PhoneOffFilled16", + "PhoneOffFilled20", + "PhoneOffFilled24", + "PhoneOffFilled32", + "PhraseSentiment16", + "PhraseSentiment20", + "PhraseSentiment24", + "PhraseSentiment32", + "Pills16", + "Pills20", + "Pills24", + "Pills32", + "PillsAdd16", + "PillsAdd20", + "PillsAdd24", + "PillsAdd32", + "PillsSubtract16", + "PillsSubtract20", + "PillsSubtract24", + "PillsSubtract32", + "Pin16", + "Pin20", + "Pin24", + "Pin32", + "Plane16", + "Plane20", + "Plane24", + "Plane32", + "Play16", + "Play20", + "Play24", + "Play32", + "PlayFilled16", + "PlayFilled20", + "PlayFilled24", + "PlayFilled32", + "PlayFilledAlt16", + "PlayFilledAlt20", + "PlayFilledAlt24", + "PlayFilledAlt32", + "PlayOutline16", + "PlayOutline20", + "PlayOutline24", + "PlayOutline32", + "PlayOutlineFilled16", + "PlayOutlineFilled20", + "PlayOutlineFilled24", + "PlayOutlineFilled32", + "Playlist16", + "Playlist20", + "Playlist24", + "Playlist32", + "Png16", + "Png20", + "Png24", + "Png32", + "Policy16", + "Policy20", + "Policy24", + "Policy32", + "Popup16", + "Popup20", + "Popup24", + "Popup32", + "Portfolio16", + "Portfolio20", + "Portfolio24", + "Portfolio32", + "Power16", + "Power20", + "Power24", + "Power32", + "Ppt16", + "Ppt20", + "Ppt24", + "Ppt32", + "PresentationFile16", + "PresentationFile20", + "PresentationFile24", + "PresentationFile32", + "Printer16", + "Printer20", + "Printer24", + "Printer32", + "Product16", + "Product20", + "Product24", + "Product32", + "Purchase16", + "Purchase20", + "Purchase24", + "Purchase32", + "QBarrier16", + "QBarrier20", + "QBarrier24", + "QBarrier32", + "QBlochSphere16", + "QBlochSphere20", + "QBlochSphere24", + "QBlochSphere32", + "QCU116", + "QCU120", + "QCU124", + "QCU132", + "QCU316", + "QCU320", + "QCU324", + "QCU332", + "QCY16", + "QCY20", + "QCY24", + "QCY32", + "QCZ16", + "QCZ20", + "QCZ24", + "QCZ32", + "QCcX16", + "QCcX20", + "QCcX24", + "QCcX32", + "QCircuitComposer16", + "QCircuitComposer20", + "QCircuitComposer24", + "QCircuitComposer32", + "QComposerEdit16", + "QComposerEdit20", + "QComposerEdit24", + "QComposerEdit32", + "QH16", + "QH20", + "QH24", + "QH32", + "QHintonPlot16", + "QHintonPlot20", + "QHintonPlot24", + "QHintonPlot32", + "QID16", + "QID20", + "QID24", + "QID32", + "QMatrix16", + "QMatrix20", + "QMatrix24", + "QMatrix32", + "QOperation16", + "QOperation20", + "QOperation24", + "QOperation32", + "QOperationGauge16", + "QOperationGauge20", + "QOperationGauge24", + "QOperationGauge32", + "QOperationIf16", + "QOperationIf20", + "QOperationIf24", + "QOperationIf32", + "QS16", + "QS20", + "QS24", + "QS32", + "QSAlt16", + "QSAlt20", + "QSAlt24", + "QSAlt32", + "QT16", + "QT20", + "QT24", + "QT32", + "QTAlt16", + "QTAlt20", + "QTAlt24", + "QTAlt32", + "QU116", + "QU120", + "QU124", + "QU132", + "QU216", + "QU220", + "QU224", + "QU232", + "QU316", + "QU320", + "QU324", + "QU332", + "QX16", + "QX20", + "QX24", + "QX32", + "QY16", + "QY20", + "QY24", + "QY32", + "QZ16", + "QZ20", + "QZ24", + "QZ32", + "QrCode16", + "QrCode20", + "QrCode24", + "QrCode32", + "QueryQueue16", + "QueryQueue20", + "QueryQueue24", + "QueryQueue32", + "Quotes16", + "Quotes20", + "Quotes24", + "Quotes32", + "Radio16", + "Radio20", + "Radio24", + "Radio32", + "RadioButton16", + "RadioButton20", + "RadioButton24", + "RadioButton32", + "RadioButtonChecked16", + "RadioButtonChecked20", + "RadioButtonChecked24", + "RadioButtonChecked32", + "Rain16", + "Rain20", + "Rain24", + "Rain32", + "RainDrizzle16", + "RainDrizzle20", + "RainDrizzle24", + "RainDrizzle32", + "RainDrop16", + "RainDrop20", + "RainDrop24", + "RainDrop32", + "RainHeavy16", + "RainHeavy20", + "RainHeavy24", + "RainHeavy32", + "RainScattered16", + "RainScattered20", + "RainScattered24", + "RainScattered32", + "RainScatteredNight16", + "RainScatteredNight20", + "RainScatteredNight24", + "RainScatteredNight32", + "Raw16", + "Raw20", + "Raw24", + "Raw32", + "Receipt16", + "Receipt20", + "Receipt24", + "Receipt32", + "RecentlyViewed16", + "RecentlyViewed20", + "RecentlyViewed24", + "RecentlyViewed32", + "Recommend16", + "Recommend20", + "Recommend24", + "Recommend32", + "Recording16", + "Recording20", + "Recording24", + "Recording32", + "RecordingFilled16", + "RecordingFilled20", + "RecordingFilled24", + "RecordingFilled32", + "RecordingFilledAlt16", + "RecordingFilledAlt20", + "RecordingFilledAlt24", + "RecordingFilledAlt32", + "Redo16", + "Redo20", + "Redo24", + "Redo32", + "Reminder16", + "Reminder20", + "Reminder24", + "Reminder32", + "ReminderMedical16", + "ReminderMedical20", + "ReminderMedical24", + "ReminderMedical32", + "Renew16", + "Renew20", + "Renew24", + "Renew32", + "Repeat16", + "Repeat20", + "Repeat24", + "Repeat32", + "RepeatOne16", + "RepeatOne20", + "RepeatOne24", + "RepeatOne32", + "Reply16", + "Reply20", + "Reply24", + "Reply32", + "Report16", + "Report20", + "Report24", + "Report32", + "ReportData16", + "ReportData20", + "ReportData24", + "ReportData32", + "RequestQuote16", + "RequestQuote20", + "RequestQuote24", + "RequestQuote32", + "ResearchBlochSphere16", + "ResearchBlochSphere20", + "ResearchBlochSphere24", + "ResearchBlochSphere32", + "ResearchHintonPlot16", + "ResearchHintonPlot20", + "ResearchHintonPlot24", + "ResearchHintonPlot32", + "ResearchMatrix16", + "ResearchMatrix20", + "ResearchMatrix24", + "ResearchMatrix32", + "Reset16", + "Reset20", + "Reset24", + "Reset32", + "ResetAlt16", + "ResetAlt20", + "ResetAlt24", + "ResetAlt32", + "Restart16", + "Restart20", + "Restart24", + "Restart32", + "Restaurant16", + "Restaurant20", + "Restaurant24", + "Restaurant32", + "RestaurantFine16", + "RestaurantFine20", + "RestaurantFine24", + "RestaurantFine32", + "Rewind_1016", + "Rewind_1020", + "Rewind_1024", + "Rewind_1032", + "Rewind_3016", + "Rewind_3020", + "Rewind_3024", + "Rewind_3032", + "Rewind_516", + "Rewind_520", + "Rewind_524", + "Rewind_532", + "Rocket16", + "Rocket20", + "Rocket24", + "Rocket32", + "Rotate16", + "Rotate20", + "Rotate24", + "Rotate32", + "RotateClockwise16", + "RotateClockwise20", + "RotateClockwise24", + "RotateClockwise32", + "RotateClockwiseAlt16", + "RotateClockwiseAlt20", + "RotateClockwiseAlt24", + "RotateClockwiseAlt32", + "RotateClockwiseAltFilled16", + "RotateClockwiseAltFilled20", + "RotateClockwiseAltFilled24", + "RotateClockwiseAltFilled32", + "RotateClockwiseFilled16", + "RotateClockwiseFilled20", + "RotateClockwiseFilled24", + "RotateClockwiseFilled32", + "RotateCounterclockwise16", + "RotateCounterclockwise20", + "RotateCounterclockwise24", + "RotateCounterclockwise32", + "RotateCounterclockwiseAlt16", + "RotateCounterclockwiseAlt20", + "RotateCounterclockwiseAlt24", + "RotateCounterclockwiseAlt32", + "RotateCounterclockwiseAltFilled16", + "RotateCounterclockwiseAltFilled20", + "RotateCounterclockwiseAltFilled24", + "RotateCounterclockwiseAltFilled32", + "RotateCounterclockwiseFilled16", + "RotateCounterclockwiseFilled20", + "RotateCounterclockwiseFilled24", + "RotateCounterclockwiseFilled32", + "Row16", + "Row20", + "Row24", + "Row32", + "Rss16", + "Rss20", + "Rss24", + "Rss32", + "Rule16", + "Rule20", + "Rule24", + "Rule32", + "Ruler16", + "Ruler20", + "Ruler24", + "Ruler32", + "RulerAlt16", + "RulerAlt20", + "RulerAlt24", + "RulerAlt32", + "Run16", + "Run20", + "Run24", + "Run32", + "Save16", + "Save20", + "Save24", + "Save32", + "SaveModel16", + "SaveModel20", + "SaveModel24", + "SaveModel32", + "Scale16", + "Scale20", + "Scale24", + "Scale32", + "Scalpel16", + "Scalpel20", + "Scalpel24", + "Scalpel32", + "Scan16", + "Scan20", + "Scan24", + "Scan32", + "Schematics16", + "Schematics20", + "Schematics24", + "Schematics32", + "Scooter16", + "Scooter20", + "Scooter24", + "Scooter32", + "ScooterFront16", + "ScooterFront20", + "ScooterFront24", + "ScooterFront32", + "Screen16", + "Screen20", + "Screen24", + "Screen32", + "ScreenOff16", + "ScreenOff20", + "ScreenOff24", + "ScreenOff32", + "Script16", + "Script20", + "Script24", + "Script32", + "Sdk16", + "Sdk20", + "Sdk24", + "Sdk32", + "Search16", + "Search20", + "Search24", + "Search32", + "Send16", + "Send20", + "Send24", + "Send32", + "SendAlt16", + "SendAlt20", + "SendAlt24", + "SendAlt32", + "SendAltFilled16", + "SendAltFilled20", + "SendAltFilled24", + "SendAltFilled32", + "SendFilled16", + "SendFilled20", + "SendFilled24", + "SendFilled32", + "ServiceDesk16", + "ServiceDesk20", + "ServiceDesk24", + "ServiceDesk32", + "Settings16", + "Settings20", + "Settings24", + "Settings32", + "SettingsAdjust16", + "SettingsAdjust20", + "SettingsAdjust24", + "SettingsAdjust32", + "Share16", + "Share20", + "Share24", + "Share32", + "ShareKnowledge16", + "ShareKnowledge20", + "ShareKnowledge24", + "ShareKnowledge32", + "ShoppingBag16", + "ShoppingBag20", + "ShoppingBag24", + "ShoppingBag32", + "ShoppingCart16", + "ShoppingCart20", + "ShoppingCart24", + "ShoppingCart32", + "ShoppingCatalog16", + "ShoppingCatalog20", + "ShoppingCatalog24", + "ShoppingCatalog32", + "ShrinkScreen16", + "ShrinkScreen20", + "ShrinkScreen24", + "ShrinkScreen32", + "ShrinkScreenFilled16", + "ShrinkScreenFilled20", + "ShrinkScreenFilled24", + "ShrinkScreenFilled32", + "Shuffle16", + "Shuffle20", + "Shuffle24", + "Shuffle32", + "Shuttle16", + "Shuttle20", + "Shuttle24", + "Shuttle32", + "Sigma16", + "Sigma20", + "Sigma24", + "Sigma32", + "SkillLevel16", + "SkillLevel20", + "SkillLevel24", + "SkillLevel32", + "SkipBack16", + "SkipBack20", + "SkipBack24", + "SkipBack32", + "SkipBackFilled16", + "SkipBackFilled20", + "SkipBackFilled24", + "SkipBackFilled32", + "SkipForward16", + "SkipForward20", + "SkipForward24", + "SkipForward32", + "SkipForwardFilled16", + "SkipForwardFilled20", + "SkipForwardFilled24", + "SkipForwardFilled32", + "Sleet16", + "Sleet20", + "Sleet24", + "Sleet32", + "Smell16", + "Smell20", + "Smell24", + "Smell32", + "Smoke16", + "Smoke20", + "Smoke24", + "Smoke32", + "Snooze16", + "Snooze20", + "Snooze24", + "Snooze32", + "Snow16", + "Snow20", + "Snow24", + "Snow32", + "SnowBlizzard16", + "SnowBlizzard20", + "SnowBlizzard24", + "SnowBlizzard32", + "SnowHeavy16", + "SnowHeavy20", + "SnowHeavy24", + "SnowHeavy32", + "SnowScattered16", + "SnowScattered20", + "SnowScattered24", + "SnowScattered32", + "SnowScatteredNight16", + "SnowScatteredNight20", + "SnowScatteredNight24", + "SnowScatteredNight32", + "Snowflake16", + "Snowflake20", + "Snowflake24", + "Snowflake32", + "Soccer16", + "Soccer20", + "Soccer24", + "Soccer32", + "SpellCheck16", + "SpellCheck20", + "SpellCheck24", + "SpellCheck32", + "SplitScreen16", + "SplitScreen20", + "SplitScreen24", + "SplitScreen32", + "SprayPaint16", + "SprayPaint20", + "SprayPaint24", + "SprayPaint32", + "Sprout16", + "Sprout20", + "Sprout24", + "Sprout32", + "Sql16", + "Sql20", + "Sql24", + "Sql32", + "Stamp16", + "Stamp20", + "Stamp24", + "Stamp32", + "Star16", + "Star20", + "Star24", + "Star32", + "StarFilled16", + "StarFilled20", + "StarFilled24", + "StarFilled32", + "StarHalf16", + "StarHalf20", + "StarHalf24", + "StarHalf32", + "Stop16", + "Stop20", + "Stop24", + "Stop32", + "StopFilled16", + "StopFilled20", + "StopFilled24", + "StopFilled32", + "StopFilledAlt16", + "StopFilledAlt20", + "StopFilledAlt24", + "StopFilledAlt32", + "StopOutline16", + "StopOutline20", + "StopOutline24", + "StopOutline32", + "StopOutlineFilled16", + "StopOutlineFilled20", + "StopOutlineFilled24", + "StopOutlineFilled32", + "Store16", + "Store20", + "Store24", + "Store32", + "Strawberry16", + "Strawberry20", + "Strawberry24", + "Strawberry32", + "StringInteger16", + "StringInteger20", + "StringInteger24", + "StringInteger32", + "StringText16", + "StringText20", + "StringText24", + "StringText32", + "Subtract16", + "Subtract20", + "Subtract24", + "Subtract32", + "SubtractAlt16", + "SubtractAlt20", + "SubtractAlt24", + "SubtractAlt32", + "Sun16", + "Sun20", + "Sun24", + "Sun32", + "Sunny16", + "Sunny20", + "Sunny24", + "Sunny32", + "Sunrise16", + "Sunrise20", + "Sunrise24", + "Sunrise32", + "Sunset16", + "Sunset20", + "Sunset24", + "Sunset32", + "Svg16", + "Svg20", + "Svg24", + "Svg32", + "Switcher16", + "Switcher20", + "Switcher24", + "Switcher32", + "SysProvision16", + "SysProvision20", + "SysProvision24", + "SysProvision32", + "Table16", + "Table20", + "Table24", + "Table32", + "TableOfContents16", + "TableOfContents20", + "TableOfContents24", + "TableOfContents32", + "TableSplit16", + "TableSplit20", + "TableSplit24", + "TableSplit32", + "Tablet16", + "Tablet20", + "Tablet24", + "Tablet32", + "TabletLandscape16", + "TabletLandscape20", + "TabletLandscape24", + "TabletLandscape32", + "Tag16", + "Tag20", + "Tag24", + "Tag32", + "TagEdit16", + "TagEdit20", + "TagEdit24", + "TagEdit32", + "TagGroup16", + "TagGroup20", + "TagGroup24", + "TagGroup32", + "Task16", + "Task20", + "Task24", + "Task32", + "TaskView16", + "TaskView20", + "TaskView24", + "TaskView32", + "Taste16", + "Taste20", + "Taste24", + "Taste32", + "Taxi16", + "Taxi20", + "Taxi24", + "Taxi32", + "Temperature16", + "Temperature20", + "Temperature24", + "Temperature32", + "TemperatureFrigid16", + "TemperatureFrigid20", + "TemperatureFrigid24", + "TemperatureFrigid32", + "TemperatureHot16", + "TemperatureHot20", + "TemperatureHot24", + "TemperatureHot32", + "Template16", + "Template20", + "Template24", + "Template32", + "Tennis16", + "Tennis20", + "Tennis24", + "Tennis32", + "TennisBall16", + "TennisBall20", + "TennisBall24", + "TennisBall32", + "Term16", + "Term20", + "Term24", + "Term32", + "Terminal16", + "Terminal20", + "Terminal24", + "Terminal32", + "TextAlignCenter16", + "TextAlignCenter20", + "TextAlignCenter24", + "TextAlignCenter32", + "TextAlignJustify16", + "TextAlignJustify20", + "TextAlignJustify24", + "TextAlignJustify32", + "TextAlignLeft16", + "TextAlignLeft20", + "TextAlignLeft24", + "TextAlignLeft32", + "TextAlignRight16", + "TextAlignRight20", + "TextAlignRight24", + "TextAlignRight32", + "TextAllCaps16", + "TextAllCaps20", + "TextAllCaps24", + "TextAllCaps32", + "TextBold16", + "TextBold20", + "TextBold24", + "TextBold32", + "TextColor16", + "TextColor20", + "TextColor24", + "TextColor32", + "TextCreation16", + "TextCreation20", + "TextCreation24", + "TextCreation32", + "TextFill16", + "TextFill20", + "TextFill24", + "TextFill32", + "TextHighlight16", + "TextHighlight20", + "TextHighlight24", + "TextHighlight32", + "TextIndent16", + "TextIndent20", + "TextIndent24", + "TextIndent32", + "TextIndentLess16", + "TextIndentLess20", + "TextIndentLess24", + "TextIndentLess32", + "TextIndentMore16", + "TextIndentMore20", + "TextIndentMore24", + "TextIndentMore32", + "TextItalic16", + "TextItalic20", + "TextItalic24", + "TextItalic32", + "TextKerning16", + "TextKerning20", + "TextKerning24", + "TextKerning32", + "TextLeading16", + "TextLeading20", + "TextLeading24", + "TextLeading32", + "TextLineSpacing16", + "TextLineSpacing20", + "TextLineSpacing24", + "TextLineSpacing32", + "TextLink16", + "TextLink20", + "TextLink24", + "TextLink32", + "TextLinkAnalysis16", + "TextLinkAnalysis20", + "TextLinkAnalysis24", + "TextLinkAnalysis32", + "TextMining16", + "TextMining20", + "TextMining24", + "TextMining32", + "TextMiningApplier16", + "TextMiningApplier20", + "TextMiningApplier24", + "TextMiningApplier32", + "TextNewLine16", + "TextNewLine20", + "TextNewLine24", + "TextNewLine32", + "TextScale16", + "TextScale20", + "TextScale24", + "TextScale32", + "TextSelection16", + "TextSelection20", + "TextSelection24", + "TextSelection32", + "TextSmallCaps16", + "TextSmallCaps20", + "TextSmallCaps24", + "TextSmallCaps32", + "TextStrikethrough16", + "TextStrikethrough20", + "TextStrikethrough24", + "TextStrikethrough32", + "TextSubscript16", + "TextSubscript20", + "TextSubscript24", + "TextSubscript32", + "TextSuperscript16", + "TextSuperscript20", + "TextSuperscript24", + "TextSuperscript32", + "TextTracking16", + "TextTracking20", + "TextTracking24", + "TextTracking32", + "TextUnderline16", + "TextUnderline20", + "TextUnderline24", + "TextUnderline32", + "TextWrap16", + "TextWrap20", + "TextWrap24", + "TextWrap32", + "Thumbnail_116", + "Thumbnail_120", + "Thumbnail_124", + "Thumbnail_132", + "Thumbnail_216", + "Thumbnail_220", + "Thumbnail_224", + "Thumbnail_232", + "ThumbsDown16", + "ThumbsDown20", + "ThumbsDown24", + "ThumbsDown32", + "ThumbsUp16", + "ThumbsUp20", + "ThumbsUp24", + "ThumbsUp32", + "Thunderstorm16", + "Thunderstorm20", + "Thunderstorm24", + "Thunderstorm32", + "ThunderstormScattered16", + "ThunderstormScattered20", + "ThunderstormScattered24", + "ThunderstormScattered32", + "ThunderstormScatteredNight16", + "ThunderstormScatteredNight20", + "ThunderstormScatteredNight24", + "ThunderstormScatteredNight32", + "ThunderstormSevere16", + "ThunderstormSevere20", + "ThunderstormSevere24", + "ThunderstormSevere32", + "ThunderstormStrong16", + "ThunderstormStrong20", + "ThunderstormStrong24", + "ThunderstormStrong32", + "Ticket16", + "Ticket20", + "Ticket24", + "Ticket32", + "Tif16", + "Tif20", + "Tif24", + "Tif32", + "Time16", + "Time20", + "Time24", + "Time32", + "Timer16", + "Timer20", + "Timer24", + "Timer32", + "ToolBox16", + "ToolBox20", + "ToolBox24", + "ToolBox32", + "Tools16", + "Tools20", + "Tools24", + "Tools32", + "Tornado16", + "Tornado20", + "Tornado24", + "Tornado32", + "Touch_116", + "Touch_120", + "Touch_124", + "Touch_132", + "Touch_216", + "Touch_220", + "Touch_224", + "Touch_232", + "Train16", + "Train20", + "Train24", + "Train32", + "Tram16", + "Tram20", + "Tram24", + "Tram32", + "Translate16", + "Translate20", + "Translate24", + "Translate32", + "TrashCan16", + "TrashCan20", + "TrashCan24", + "TrashCan32", + "Tree16", + "Tree20", + "Tree24", + "Tree32", + "TreeView16", + "TreeView20", + "TreeView24", + "TreeView32", + "TreeViewAlt16", + "TreeViewAlt20", + "TreeViewAlt24", + "TreeViewAlt32", + "Trophy16", + "Trophy20", + "Trophy24", + "Trophy32", + "TrophyFilled16", + "TrophyFilled20", + "TrophyFilled24", + "TrophyFilled32", + "TropicalStorm16", + "TropicalStorm20", + "TropicalStorm24", + "TropicalStorm32", + "Tsv16", + "Tsv20", + "Tsv24", + "Tsv32", + "Txt16", + "Txt20", + "Txt24", + "Txt32", + "TypePattern16", + "TypePattern20", + "TypePattern24", + "TypePattern32", + "Types16", + "Types20", + "Types24", + "Types32", + "Undefined16", + "Undefined20", + "Undefined24", + "Undefined32", + "UndefinedFilled16", + "UndefinedFilled20", + "UndefinedFilled24", + "UndefinedFilled32", + "Undo16", + "Undo20", + "Undo24", + "Undo32", + "Unknown16", + "Unknown20", + "Unknown24", + "Unknown32", + "UnknownFilled16", + "UnknownFilled20", + "UnknownFilled24", + "UnknownFilled32", + "Unlink16", + "Unlink20", + "Unlink24", + "Unlink32", + "Unlocked16", + "Unlocked20", + "Unlocked24", + "Unlocked32", + "UpToTop16", + "UpToTop20", + "UpToTop24", + "UpToTop32", + "Upload16", + "Upload20", + "Upload24", + "Upload32", + "Usb16", + "Usb20", + "Usb24", + "Usb32", + "User16", + "User20", + "User24", + "User32", + "UserActivity16", + "UserActivity20", + "UserActivity24", + "UserActivity32", + "UserAdmin16", + "UserAdmin20", + "UserAdmin24", + "UserAdmin32", + "UserAvatar16", + "UserAvatar20", + "UserAvatar24", + "UserAvatar32", + "UserAvatarFilled16", + "UserAvatarFilled20", + "UserAvatarFilled24", + "UserAvatarFilled32", + "UserAvatarFilledAlt16", + "UserAvatarFilledAlt20", + "UserAvatarFilledAlt24", + "UserAvatarFilledAlt32", + "UserCertification16", + "UserCertification20", + "UserCertification24", + "UserCertification32", + "UserData16", + "UserData20", + "UserData24", + "UserData32", + "UserFavorite16", + "UserFavorite20", + "UserFavorite24", + "UserFavorite32", + "UserFavoriteAlt16", + "UserFavoriteAlt20", + "UserFavoriteAlt24", + "UserFavoriteAlt32", + "UserFavoriteAltFilled16", + "UserFavoriteAltFilled20", + "UserFavoriteAltFilled24", + "UserFavoriteAltFilled32", + "UserFilled16", + "UserFilled20", + "UserFilled24", + "UserFilled32", + "UserFollow16", + "UserFollow20", + "UserFollow24", + "UserFollow32", + "UserIdentification16", + "UserIdentification20", + "UserIdentification24", + "UserIdentification32", + "UserOnline16", + "UserOnline20", + "UserOnline24", + "UserOnline32", + "UserProfile16", + "UserProfile20", + "UserProfile24", + "UserProfile32", + "UserProfileAlt16", + "UserProfileAlt20", + "UserProfileAlt24", + "UserProfileAlt32", + "UserRole16", + "UserRole20", + "UserRole24", + "UserRole32", + "UserSimulation16", + "UserSimulation20", + "UserSimulation24", + "UserSimulation32", + "UserSpeaker16", + "UserSpeaker20", + "UserSpeaker24", + "UserSpeaker32", + "UserXRay16", + "UserXRay20", + "UserXRay24", + "UserXRay32", + "Van16", + "Van20", + "Van24", + "Van32", + "Video16", + "Video20", + "Video24", + "Video32", + "VideoAdd16", + "VideoAdd20", + "VideoAdd24", + "VideoAdd32", + "VideoChat16", + "VideoChat20", + "VideoChat24", + "VideoChat32", + "VideoFilled16", + "VideoFilled20", + "VideoFilled24", + "VideoFilled32", + "VideoOff16", + "VideoOff20", + "VideoOff24", + "VideoOff32", + "VideoOffFilled16", + "VideoOffFilled20", + "VideoOffFilled24", + "VideoOffFilled32", + "View16", + "View20", + "View24", + "View32", + "ViewFilled16", + "ViewFilled20", + "ViewFilled24", + "ViewFilled32", + "ViewMode_116", + "ViewMode_120", + "ViewMode_124", + "ViewMode_132", + "ViewMode_216", + "ViewMode_220", + "ViewMode_224", + "ViewMode_232", + "ViewOff16", + "ViewOff20", + "ViewOff24", + "ViewOff32", + "ViewOffFilled16", + "ViewOffFilled20", + "ViewOffFilled24", + "ViewOffFilled32", + "VirtualColumn16", + "VirtualColumn20", + "VirtualColumn24", + "VirtualColumn32", + "VirtualColumnKey16", + "VirtualColumnKey20", + "VirtualColumnKey24", + "VirtualColumnKey32", + "VirtualMachine16", + "VirtualMachine20", + "VirtualMachine24", + "VirtualMachine32", + "VirtualPrivateCloud16", + "VirtualPrivateCloud20", + "VirtualPrivateCloud24", + "VirtualPrivateCloud32", + "VirtualPrivateCloudAlt16", + "VirtualPrivateCloudAlt20", + "VirtualPrivateCloudAlt24", + "VirtualPrivateCloudAlt32", + "VisualRecognition16", + "VisualRecognition20", + "VisualRecognition24", + "VisualRecognition32", + "VmdkDisk16", + "VmdkDisk20", + "VmdkDisk24", + "VmdkDisk32", + "Voicemail16", + "Voicemail20", + "Voicemail24", + "Voicemail32", + "VolumeDown16", + "VolumeDown20", + "VolumeDown24", + "VolumeDown32", + "VolumeDownFilled16", + "VolumeDownFilled20", + "VolumeDownFilled24", + "VolumeDownFilled32", + "VolumeMute16", + "VolumeMute20", + "VolumeMute24", + "VolumeMute32", + "VolumeMuteFilled16", + "VolumeMuteFilled20", + "VolumeMuteFilled24", + "VolumeMuteFilled32", + "VolumeUp16", + "VolumeUp20", + "VolumeUp24", + "VolumeUp32", + "VolumeUpFilled16", + "VolumeUpFilled20", + "VolumeUpFilled24", + "VolumeUpFilled32", + "Vpn16", + "Vpn20", + "Vpn24", + "Vpn32", + "Wallet16", + "Wallet20", + "Wallet24", + "Wallet32", + "Warning16", + "Warning20", + "Warning24", + "Warning32", + "WarningAlt16", + "WarningAlt20", + "WarningAlt24", + "WarningAlt32", + "WarningAltFilled16", + "WarningAltFilled20", + "WarningAltFilled24", + "WarningAltFilled32", + "WarningAltInverted16", + "WarningAltInverted20", + "WarningAltInverted24", + "WarningAltInverted32", + "WarningAltInvertedFilled16", + "WarningAltInvertedFilled20", + "WarningAltInvertedFilled24", + "WarningAltInvertedFilled32", + "WarningFilled16", + "WarningFilled20", + "WarningFilled24", + "WarningFilled32", + "WarningSquare16", + "WarningSquare20", + "WarningSquare24", + "WarningSquare32", + "WarningSquareFilled16", + "WarningSquareFilled20", + "WarningSquareFilled24", + "WarningSquareFilled32", + "Watch16", + "Watch20", + "Watch24", + "Watch32", + "Watson16", + "Watson20", + "Watson24", + "Watson32", + "WatsonHealth3DCursor16", + "WatsonHealth3DCursor20", + "WatsonHealth3DCursor24", + "WatsonHealth3DCursor32", + "WatsonHealth3DCursorAlt16", + "WatsonHealth3DCursorAlt20", + "WatsonHealth3DCursorAlt24", + "WatsonHealth3DCursorAlt32", + "WatsonHealth3DCurveAutoColon16", + "WatsonHealth3DCurveAutoColon20", + "WatsonHealth3DCurveAutoColon24", + "WatsonHealth3DCurveAutoColon32", + "WatsonHealth3DCurveAutoVessels16", + "WatsonHealth3DCurveAutoVessels20", + "WatsonHealth3DCurveAutoVessels24", + "WatsonHealth3DCurveAutoVessels32", + "WatsonHealth3DCurveManual16", + "WatsonHealth3DCurveManual20", + "WatsonHealth3DCurveManual24", + "WatsonHealth3DCurveManual32", + "WatsonHealth3DICa16", + "WatsonHealth3DICa20", + "WatsonHealth3DICa24", + "WatsonHealth3DICa32", + "WatsonHealth3DMprToggle16", + "WatsonHealth3DMprToggle20", + "WatsonHealth3DMprToggle24", + "WatsonHealth3DMprToggle32", + "WatsonHealth3DSoftware16", + "WatsonHealth3DSoftware20", + "WatsonHealth3DSoftware24", + "WatsonHealth3DSoftware32", + "WatsonHealth3rdPartyConnected16", + "WatsonHealth3rdPartyConnected20", + "WatsonHealth3rdPartyConnected24", + "WatsonHealth3rdPartyConnected32", + "WatsonHealthAngle16", + "WatsonHealthAngle20", + "WatsonHealthAngle24", + "WatsonHealthAngle32", + "WatsonHealthAnnotationVisibility16", + "WatsonHealthAnnotationVisibility20", + "WatsonHealthAnnotationVisibility24", + "WatsonHealthAnnotationVisibility32", + "WatsonHealthArrowAnnotation16", + "WatsonHealthArrowAnnotation20", + "WatsonHealthArrowAnnotation24", + "WatsonHealthArrowAnnotation32", + "WatsonHealthAutoScroll16", + "WatsonHealthAutoScroll20", + "WatsonHealthAutoScroll24", + "WatsonHealthAutoScroll32", + "WatsonHealthCdArchive16", + "WatsonHealthCdArchive20", + "WatsonHealthCdArchive24", + "WatsonHealthCdArchive32", + "WatsonHealthCdCreateArchive16", + "WatsonHealthCdCreateArchive20", + "WatsonHealthCdCreateArchive24", + "WatsonHealthCdCreateArchive32", + "WatsonHealthCdCreateExchange16", + "WatsonHealthCdCreateExchange20", + "WatsonHealthCdCreateExchange24", + "WatsonHealthCdCreateExchange32", + "WatsonHealthCircleMeasurement16", + "WatsonHealthCircleMeasurement20", + "WatsonHealthCircleMeasurement24", + "WatsonHealthCircleMeasurement32", + "WatsonHealthCobbAngle16", + "WatsonHealthCobbAngle20", + "WatsonHealthCobbAngle24", + "WatsonHealthCobbAngle32", + "WatsonHealthCrossReference16", + "WatsonHealthCrossReference20", + "WatsonHealthCrossReference24", + "WatsonHealthCrossReference32", + "WatsonHealthDenominate16", + "WatsonHealthDenominate20", + "WatsonHealthDenominate24", + "WatsonHealthDenominate32", + "WatsonHealthDicomOverlay16", + "WatsonHealthDicomOverlay20", + "WatsonHealthDicomOverlay24", + "WatsonHealthDicomOverlay32", + "WatsonHealthDicom_600016", + "WatsonHealthDicom_600020", + "WatsonHealthDicom_600024", + "WatsonHealthDicom_600032", + "WatsonHealthDna16", + "WatsonHealthDna20", + "WatsonHealthDna24", + "WatsonHealthDna32", + "WatsonHealthDownloadStudy16", + "WatsonHealthDownloadStudy20", + "WatsonHealthDownloadStudy24", + "WatsonHealthDownloadStudy32", + "WatsonHealthEdgeEnhancement16", + "WatsonHealthEdgeEnhancement20", + "WatsonHealthEdgeEnhancement24", + "WatsonHealthEdgeEnhancement32", + "WatsonHealthEditFilter16", + "WatsonHealthEditFilter20", + "WatsonHealthEditFilter24", + "WatsonHealthEditFilter32", + "WatsonHealthErase_3D16", + "WatsonHealthErase_3D20", + "WatsonHealthErase_3D24", + "WatsonHealthErase_3D32", + "WatsonHealthFusionBlender16", + "WatsonHealthFusionBlender20", + "WatsonHealthFusionBlender24", + "WatsonHealthFusionBlender32", + "WatsonHealthHangingProtocol16", + "WatsonHealthHangingProtocol20", + "WatsonHealthHangingProtocol24", + "WatsonHealthHangingProtocol32", + "WatsonHealthHoleFilling16", + "WatsonHealthHoleFilling20", + "WatsonHealthHoleFilling24", + "WatsonHealthHoleFilling32", + "WatsonHealthHoleFillingCursor16", + "WatsonHealthHoleFillingCursor20", + "WatsonHealthHoleFillingCursor24", + "WatsonHealthHoleFillingCursor32", + "WatsonHealthICa_2D16", + "WatsonHealthICa_2D20", + "WatsonHealthICa_2D24", + "WatsonHealthICa_2D32", + "WatsonHealthInteractiveSegmentationCursor16", + "WatsonHealthInteractiveSegmentationCursor20", + "WatsonHealthInteractiveSegmentationCursor24", + "WatsonHealthInteractiveSegmentationCursor32", + "WatsonHealthLaunchStudy_116", + "WatsonHealthLaunchStudy_120", + "WatsonHealthLaunchStudy_124", + "WatsonHealthLaunchStudy_132", + "WatsonHealthLaunchStudy_216", + "WatsonHealthLaunchStudy_220", + "WatsonHealthLaunchStudy_224", + "WatsonHealthLaunchStudy_232", + "WatsonHealthLaunchStudy_316", + "WatsonHealthLaunchStudy_320", + "WatsonHealthLaunchStudy_324", + "WatsonHealthLaunchStudy_332", + "WatsonHealthMagnify16", + "WatsonHealthMagnify20", + "WatsonHealthMagnify24", + "WatsonHealthMagnify32", + "WatsonHealthMammogram16", + "WatsonHealthMammogram20", + "WatsonHealthMammogram24", + "WatsonHealthMammogram32", + "WatsonHealthNominate16", + "WatsonHealthNominate20", + "WatsonHealthNominate24", + "WatsonHealthNominate32", + "WatsonHealthPageScroll16", + "WatsonHealthPageScroll20", + "WatsonHealthPageScroll24", + "WatsonHealthPageScroll32", + "WatsonHealthPetImageB16", + "WatsonHealthPetImageB20", + "WatsonHealthPetImageB24", + "WatsonHealthPetImageB32", + "WatsonHealthPetImageO16", + "WatsonHealthPetImageO20", + "WatsonHealthPetImageO24", + "WatsonHealthPetImageO32", + "WatsonHealthPointerText16", + "WatsonHealthPointerText20", + "WatsonHealthPointerText24", + "WatsonHealthPointerText32", + "WatsonHealthRegionAnalysisArea16", + "WatsonHealthRegionAnalysisArea20", + "WatsonHealthRegionAnalysisArea24", + "WatsonHealthRegionAnalysisArea32", + "WatsonHealthRegionAnalysisVolume16", + "WatsonHealthRegionAnalysisVolume20", + "WatsonHealthRegionAnalysisVolume24", + "WatsonHealthRegionAnalysisVolume32", + "WatsonHealthRegistration16", + "WatsonHealthRegistration20", + "WatsonHealthRegistration24", + "WatsonHealthRegistration32", + "WatsonHealthRotate_18016", + "WatsonHealthRotate_18020", + "WatsonHealthRotate_18024", + "WatsonHealthRotate_18032", + "WatsonHealthRotate_36016", + "WatsonHealthRotate_36020", + "WatsonHealthRotate_36024", + "WatsonHealthRotate_36032", + "WatsonHealthSaveAnnotation16", + "WatsonHealthSaveAnnotation20", + "WatsonHealthSaveAnnotation24", + "WatsonHealthSaveAnnotation32", + "WatsonHealthSaveImage16", + "WatsonHealthSaveImage20", + "WatsonHealthSaveImage24", + "WatsonHealthSaveImage32", + "WatsonHealthSaveSeries16", + "WatsonHealthSaveSeries20", + "WatsonHealthSaveSeries24", + "WatsonHealthSaveSeries32", + "WatsonHealthScalpelCursor16", + "WatsonHealthScalpelCursor20", + "WatsonHealthScalpelCursor24", + "WatsonHealthScalpelCursor32", + "WatsonHealthScalpelLasso16", + "WatsonHealthScalpelLasso20", + "WatsonHealthScalpelLasso24", + "WatsonHealthScalpelLasso32", + "WatsonHealthScalpelSelect16", + "WatsonHealthScalpelSelect20", + "WatsonHealthScalpelSelect24", + "WatsonHealthScalpelSelect32", + "WatsonHealthSmoothing16", + "WatsonHealthSmoothing20", + "WatsonHealthSmoothing24", + "WatsonHealthSmoothing32", + "WatsonHealthSmoothingCursor16", + "WatsonHealthSmoothingCursor20", + "WatsonHealthSmoothingCursor24", + "WatsonHealthSmoothingCursor32", + "WatsonHealthSpineLabel16", + "WatsonHealthSpineLabel20", + "WatsonHealthSpineLabel24", + "WatsonHealthSpineLabel32", + "WatsonHealthStackedMove16", + "WatsonHealthStackedMove20", + "WatsonHealthStackedMove24", + "WatsonHealthStackedMove32", + "WatsonHealthStackedScrolling_116", + "WatsonHealthStackedScrolling_120", + "WatsonHealthStackedScrolling_124", + "WatsonHealthStackedScrolling_132", + "WatsonHealthStackedScrolling_216", + "WatsonHealthStackedScrolling_220", + "WatsonHealthStackedScrolling_224", + "WatsonHealthStackedScrolling_232", + "WatsonHealthStressBreathEditor16", + "WatsonHealthStressBreathEditor20", + "WatsonHealthStressBreathEditor24", + "WatsonHealthStressBreathEditor32", + "WatsonHealthStudyNext16", + "WatsonHealthStudyNext20", + "WatsonHealthStudyNext24", + "WatsonHealthStudyNext32", + "WatsonHealthStudyPrevious16", + "WatsonHealthStudyPrevious20", + "WatsonHealthStudyPrevious24", + "WatsonHealthStudyPrevious32", + "WatsonHealthStudySkip16", + "WatsonHealthStudySkip20", + "WatsonHealthStudySkip24", + "WatsonHealthStudySkip32", + "WatsonHealthTextAnnotationToggle16", + "WatsonHealthTextAnnotationToggle20", + "WatsonHealthTextAnnotationToggle24", + "WatsonHealthTextAnnotationToggle32", + "WatsonHealthThumbnailPreview16", + "WatsonHealthThumbnailPreview20", + "WatsonHealthThumbnailPreview24", + "WatsonHealthThumbnailPreview32", + "WatsonHealthWindowAuto16", + "WatsonHealthWindowAuto20", + "WatsonHealthWindowAuto24", + "WatsonHealthWindowAuto32", + "WatsonHealthWindowBase16", + "WatsonHealthWindowBase20", + "WatsonHealthWindowBase24", + "WatsonHealthWindowBase32", + "WatsonHealthWindowOverlay16", + "WatsonHealthWindowOverlay20", + "WatsonHealthWindowOverlay24", + "WatsonHealthWindowOverlay32", + "WatsonHealthZoomPan16", + "WatsonHealthZoomPan20", + "WatsonHealthZoomPan24", + "WatsonHealthZoomPan32", + "WatsonMachineLearning16", + "WatsonMachineLearning20", + "WatsonMachineLearning24", + "WatsonMachineLearning32", + "Wheat16", + "Wheat20", + "Wheat24", + "Wheat32", + "Wifi16", + "Wifi20", + "Wifi24", + "Wifi32", + "WifiOff16", + "WifiOff20", + "WifiOff24", + "WifiOff32", + "Wikis16", + "Wikis20", + "Wikis24", + "Wikis32", + "Windy16", + "Windy20", + "Windy24", + "Windy32", + "WindyDust16", + "WindyDust20", + "WindyDust24", + "WindyDust32", + "WindySnow16", + "WindySnow20", + "WindySnow24", + "WindySnow32", + "WindyStrong16", + "WindyStrong20", + "WindyStrong24", + "WindyStrong32", + "WintryMix16", + "WintryMix20", + "WintryMix24", + "WintryMix32", + "WirelessCheckout16", + "WirelessCheckout20", + "WirelessCheckout24", + "WirelessCheckout32", + "Wmv16", + "Wmv20", + "Wmv24", + "Wmv32", + "Workspace16", + "Workspace20", + "Workspace24", + "Workspace32", + "XAxis16", + "XAxis20", + "XAxis24", + "XAxis32", + "Xls16", + "Xls20", + "Xls24", + "Xls32", + "Xml16", + "Xml20", + "Xml24", + "Xml32", + "YAxis16", + "YAxis20", + "YAxis24", + "YAxis32", + "ZAxis16", + "ZAxis20", + "ZAxis24", + "ZAxis32", + "Zip16", + "Zip20", + "Zip24", + "Zip32", + "ZoomIn16", + "ZoomIn20", + "ZoomIn24", + "ZoomIn32", + "ZoomOut16", + "ZoomOut20", + "ZoomOut24", + "ZoomOut32", + "ZoomReset16", + "ZoomReset20", + "ZoomReset24", + "ZoomReset32", + "_4K16", + "_4K20", + "_4K24", + "_4K32", + "_4KFilled16", + "_4KFilled20", + "_4KFilled24", + "_4KFilled32", +] +`; diff --git a/e2e/icons/components-test.js b/e2e/icons/components-test.js index 6ce5751030ff..4b6f39df684c 100644 --- a/e2e/icons/components-test.js +++ b/e2e/icons/components-test.js @@ -10,20 +10,52 @@ 'use strict'; const path = require('path'); -const meta = require('../../packages/icons/build-info.json'); +const CarbonIcons = require('@carbon/icons'); +const { Metadata } = require('../../packages/icon-build-helpers'); + +const ICONS_PACKAGE_DIR = path.resolve(__dirname, '../../packages/icons'); +const sizes = [16, 20, 24, 32]; describe('@carbon/icons', () => { - test.each(meta.map(icon => [icon.moduleName, icon]))( - '%s is require-able', - (name, icon) => { - const filepath = path.resolve( - __dirname, - '../../packages/icons', - icon.outputOptions.file.replace(/es/, 'lib') + let metadata; + + beforeAll(async () => { + metadata = await Metadata.load({ + input: ICONS_PACKAGE_DIR, + extensions: [ + Metadata.extensions.icons, + Metadata.extensions.deprecated, + Metadata.extensions.moduleName, + ], + }); + }); + + it('should export each SVG asset', () => { + for (const icon of metadata.icons) { + const { moduleName } = icon; + for (const size of sizes) { + const exportName = `${moduleName}${size}`; + expect(CarbonIcons[exportName]).toBeDefined(); + } + } + }); + + it('should export each SVG asset as a direct path', () => { + for (const icon of metadata.icons) { + // CommonJS should be require-able + const commonjs = path.join( + ICONS_PACKAGE_DIR, + 'lib', + ...icon.namespace, + icon.name ); - expect(() => { - require(filepath); - }).not.toThrow(); + + for (const size of sizes) { + const filepath = path.join(commonjs, `${size}.js`); + expect(() => { + require(filepath); + }).not.toThrow(); + } } - ); + }); }); From 4ce809ff1f7c2c423777523652fdc37f47e15381 Mon Sep 17 00:00:00 2001 From: Josh Black Date: Fri, 10 Apr 2020 14:31:55 -0500 Subject: [PATCH 03/11] fix(icons): add registry to exports and check for duplicate sizes --- .../{metadata => }/__tests__/registry-test.js | 0 packages/icon-build-helpers/src/index.js | 2 ++ .../src/metadata/extensions/icons.js | 19 +++++++++++-- .../icon-build-helpers/src/metadata/index.js | 28 ++++++++++++++++++- .../src/{metadata => }/registry.js | 0 packages/icons/icons.yml | 1 - packages/icons/svg/32/composer-edit.svg | 1 - 7 files changed, 45 insertions(+), 6 deletions(-) rename packages/icon-build-helpers/src/{metadata => }/__tests__/registry-test.js (100%) rename packages/icon-build-helpers/src/{metadata => }/registry.js (100%) delete mode 100644 packages/icons/svg/32/composer-edit.svg diff --git a/packages/icon-build-helpers/src/metadata/__tests__/registry-test.js b/packages/icon-build-helpers/src/__tests__/registry-test.js similarity index 100% rename from packages/icon-build-helpers/src/metadata/__tests__/registry-test.js rename to packages/icon-build-helpers/src/__tests__/registry-test.js diff --git a/packages/icon-build-helpers/src/index.js b/packages/icon-build-helpers/src/index.js index 4e798bf14734..672f33406ed4 100644 --- a/packages/icon-build-helpers/src/index.js +++ b/packages/icon-build-helpers/src/index.js @@ -9,8 +9,10 @@ const builders = require('./builders'); const Metadata = require('./metadata'); +const Registry = require('./registry'); module.exports = { builders, Metadata, + Registry, }; diff --git a/packages/icon-build-helpers/src/metadata/extensions/icons.js b/packages/icon-build-helpers/src/metadata/extensions/icons.js index 2aabb3dff787..088952a2cc56 100644 --- a/packages/icon-build-helpers/src/metadata/extensions/icons.js +++ b/packages/icon-build-helpers/src/metadata/extensions/icons.js @@ -47,9 +47,7 @@ const icons = { const icon = registry.get(entry.name); // Add namespace information for the icon - if (Array.isArray(icon.namespace) && icon.namespace.length > 0) { - entry.namespace = icon.namespace.join('/'); - } + entry.namespace = Array.isArray(icon.namespace) ? icon.namespace : []; // We currently support bespoke assets called "glyphs". If there is no // size for an asset, then for icons we would call it a glyph. If the @@ -123,6 +121,21 @@ const icons = { ); } } + + // Verify that all sizes are unique + for (const icon of data) { + const sizes = []; + for (const size of icon.sizes) { + if (sizes.includes(size)) { + throw new Error( + `Expected the metadata entry \`${icon.name}\` to have unique ` + + `sizes. Instead there is a duplicate size \`${size}\`.` + ); + } + + sizes.push(size); + } + } }, }; diff --git a/packages/icon-build-helpers/src/metadata/index.js b/packages/icon-build-helpers/src/metadata/index.js index ef77e50104e6..9fe71d31c673 100644 --- a/packages/icon-build-helpers/src/metadata/index.js +++ b/packages/icon-build-helpers/src/metadata/index.js @@ -11,7 +11,7 @@ const fs = require('fs-extra'); const path = require('path'); const adapters = require('./adapters'); const Extensions = require('./extensions'); -const Registry = require('./registry'); +const Registry = require('../registry'); const Storage = require('./storage'); const validate = require('./validate'); @@ -75,6 +75,31 @@ async function build({ return metadata; } +async function load({ + adapter = adapters.yml, + extensions = [Extensions.icons], + input, +}) { + const registry = await Registry.create(path.join(input, 'svg')); + const loaded = await Storage.load(adapter, input, extensions); + validate(registry, loaded); + + const metadata = {}; + const context = { + input, + }; + + // For each extension, extend the icon metadata with the given loaded data + // for the extension + for (const { data, extend } of loaded) { + if (extend) { + extend(metadata, data, registry, context); + } + } + + return metadata; +} + /** * Help generate metadata info for icons that have an asset (.svg) but no * metadata information @@ -131,5 +156,6 @@ module.exports = { // Commands to run for icon packages build, check, + load, scaffold, }; diff --git a/packages/icon-build-helpers/src/metadata/registry.js b/packages/icon-build-helpers/src/registry.js similarity index 100% rename from packages/icon-build-helpers/src/metadata/registry.js rename to packages/icon-build-helpers/src/registry.js diff --git a/packages/icons/icons.yml b/packages/icons/icons.yml index 252ad336de26..5d33b5bd36a9 100644 --- a/packages/icons/icons.yml +++ b/packages/icons/icons.yml @@ -2285,7 +2285,6 @@ - edit sizes: - 32 - - 32 - name: hinton-plot friendly_name: Hinton plot aliases: diff --git a/packages/icons/svg/32/composer-edit.svg b/packages/icons/svg/32/composer-edit.svg deleted file mode 100644 index a2ffc25b94ee..000000000000 --- a/packages/icons/svg/32/composer-edit.svg +++ /dev/null @@ -1 +0,0 @@ -composer-edit \ No newline at end of file From 6fd7ad1ed93f4ba3c51adb7850eae8bbbc49616f Mon Sep 17 00:00:00 2001 From: Josh Black Date: Fri, 10 Apr 2020 14:32:13 -0500 Subject: [PATCH 04/11] test(matchers): defer AAT module resolution until called --- tasks/jest/matchers/toHaveNoDAPViolations.js | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/tasks/jest/matchers/toHaveNoDAPViolations.js b/tasks/jest/matchers/toHaveNoDAPViolations.js index 53ab3bbe943d..7b9595040de0 100644 --- a/tasks/jest/matchers/toHaveNoDAPViolations.js +++ b/tasks/jest/matchers/toHaveNoDAPViolations.js @@ -7,9 +7,16 @@ 'use strict'; -const AAT = require('@ibma/aat'); +let AAT; async function toHaveNoDAPViolations(node, label) { + // We defer initialization of AAT as it seems to have a race condition if + // we are running a test suite in node instead of jsdom. As a result, we only + // initialize it if this matcher is called + if (!AAT) { + AAT = require('@ibma/aat'); + } + const results = await AAT.getCompliance(node, label); if (AAT.assertCompliance(results.report) === 0) { return { From d9f5e7da8e5f0120692c779406c329d98029f2d7 Mon Sep 17 00:00:00 2001 From: Josh Black Date: Fri, 10 Apr 2020 14:35:38 -0500 Subject: [PATCH 05/11] docs(icon-build-helpers): add jsdoc for load export --- packages/icon-build-helpers/src/metadata/index.js | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/packages/icon-build-helpers/src/metadata/index.js b/packages/icon-build-helpers/src/metadata/index.js index 9fe71d31c673..1c5abc011cb9 100644 --- a/packages/icon-build-helpers/src/metadata/index.js +++ b/packages/icon-build-helpers/src/metadata/index.js @@ -35,7 +35,7 @@ async function check({ /** * Build the metadata for the assets in the given directory with a given list of - * extensions + * extensions and write it to disk * @param {object} options * @param {Adapter} [options.adapter] The adapter to use to load the extensions * @param {string} options.input The directory of source files @@ -71,10 +71,18 @@ async function build({ await fs.writeJson(metadataFilePath, metadata, { spaces: 2, }); - - return metadata; } +/** + * Load the metadata for the assets in the given directory with a given list of + * extensions and return it + * @param {object} options + * @param {Adapter} [options.adapter] The adapter to use to load the extensions + * @param {string} options.input The directory of source files + * @param {string} [options.output] The directory for the built metadata + * @param {Array} [options.extensions] The extensions to load + * @returns {Promise} + */ async function load({ adapter = adapters.yml, extensions = [Extensions.icons], From 57ed57b3d896d734b8b3f9cfa1e39e0f6ac99c42 Mon Sep 17 00:00:00 2001 From: Josh Black Date: Fri, 10 Apr 2020 15:01:22 -0500 Subject: [PATCH 06/11] test(e2e): add ESM files to exports test --- e2e/icons-react/components-test.js | 18 +++++++++++------- e2e/icons/components-test.js | 24 +++++++++++++++++------- 2 files changed, 28 insertions(+), 14 deletions(-) diff --git a/e2e/icons-react/components-test.js b/e2e/icons-react/components-test.js index f5956110124e..ec438dd0fdce 100644 --- a/e2e/icons-react/components-test.js +++ b/e2e/icons-react/components-test.js @@ -10,7 +10,6 @@ 'use strict'; const path = require('path'); -const CarbonIconsReact = require('@carbon/icons-react'); const { Metadata } = require('../../packages/icon-build-helpers'); const PACKAGE_DIR = path.resolve(__dirname, '../../packages/icons-react'); @@ -31,19 +30,22 @@ describe('@carbon/icons-react', () => { }); }); - it('should export each SVG asset', () => { + it('should export each SVG asset', async () => { + const CarbonIconsReactCommonJS = require('@carbon/icons-react'); + const CarbonIconsReactESM = await import('@carbon/icons-react'); for (const icon of metadata.icons) { const { moduleName } = icon; for (const size of sizes) { const exportName = `${moduleName}${size}`; - expect(CarbonIconsReact[exportName]).toBeDefined(); + expect(CarbonIconsReactCommonJS[exportName]).toBeDefined(); + expect(CarbonIconsReactESM[exportName]).toBeDefined(); } } }); - it('should export each SVG asset as a direct path', () => { + it('should export each SVG asset as a direct path', async () => { for (const icon of metadata.icons) { - // CommonJS should be require-able + const esm = path.join(PACKAGE_DIR, 'es', ...icon.namespace, icon.name); const commonjs = path.join( PACKAGE_DIR, 'lib', @@ -52,10 +54,12 @@ describe('@carbon/icons-react', () => { ); for (const size of sizes) { - const filepath = path.join(commonjs, `${size}.js`); + const es = path.join(esm, `${size}.js`); + const lib = path.join(commonjs, `${size}.js`); expect(() => { - require(filepath); + require(lib); }).not.toThrow(); + await expect(import(es)).resolves.toBeDefined(); } } }); diff --git a/e2e/icons/components-test.js b/e2e/icons/components-test.js index 4b6f39df684c..8596247c7358 100644 --- a/e2e/icons/components-test.js +++ b/e2e/icons/components-test.js @@ -10,7 +10,6 @@ 'use strict'; const path = require('path'); -const CarbonIcons = require('@carbon/icons'); const { Metadata } = require('../../packages/icon-build-helpers'); const ICONS_PACKAGE_DIR = path.resolve(__dirname, '../../packages/icons'); @@ -30,19 +29,28 @@ describe('@carbon/icons', () => { }); }); - it('should export each SVG asset', () => { + it('should export each SVG asset', async () => { + const CarbonIconsCommonJS = require('@carbon/icons'); + const CarbonIconsESM = await import('@carbon/icons'); + for (const icon of metadata.icons) { const { moduleName } = icon; for (const size of sizes) { const exportName = `${moduleName}${size}`; - expect(CarbonIcons[exportName]).toBeDefined(); + expect(CarbonIconsCommonJS[exportName]).toBeDefined(); + expect(CarbonIconsESM[exportName]).toBeDefined(); } } }); - it('should export each SVG asset as a direct path', () => { + it('should export each SVG asset as a direct path', async () => { for (const icon of metadata.icons) { - // CommonJS should be require-able + const esm = path.join( + ICONS_PACKAGE_DIR, + 'es', + ...icon.namespace, + icon.name + ); const commonjs = path.join( ICONS_PACKAGE_DIR, 'lib', @@ -51,10 +59,12 @@ describe('@carbon/icons', () => { ); for (const size of sizes) { - const filepath = path.join(commonjs, `${size}.js`); + const es = path.join(esm, `${size}.js`); + const lib = path.join(commonjs, `${size}.js`); expect(() => { - require(filepath); + require(lib); }).not.toThrow(); + await expect(import(es)).resolves.toBeDefined(); } } }); From c7b060360dc88c9c4e8ec6d02a5db48717bfb425 Mon Sep 17 00:00:00 2001 From: Josh Black Date: Fri, 10 Apr 2020 15:04:46 -0500 Subject: [PATCH 07/11] chore(test): update paths for registry --- .../src/metadata/extensions/__tests__/categories-test.js | 2 +- .../src/metadata/extensions/__tests__/deprecated-test.js | 2 +- .../src/metadata/extensions/__tests__/icons-test.js | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/packages/icon-build-helpers/src/metadata/extensions/__tests__/categories-test.js b/packages/icon-build-helpers/src/metadata/extensions/__tests__/categories-test.js index 39215642a372..a59b48e11b70 100644 --- a/packages/icon-build-helpers/src/metadata/extensions/__tests__/categories-test.js +++ b/packages/icon-build-helpers/src/metadata/extensions/__tests__/categories-test.js @@ -24,7 +24,7 @@ describe('categories', () => { return memfs.fs; }); - Registry = require('../../registry'); + Registry = require('../../../registry'); Storage = require('../../storage'); extension = require('../categories'); validate = require('../../validate'); diff --git a/packages/icon-build-helpers/src/metadata/extensions/__tests__/deprecated-test.js b/packages/icon-build-helpers/src/metadata/extensions/__tests__/deprecated-test.js index ef6ed7c593f2..e17910b111e4 100644 --- a/packages/icon-build-helpers/src/metadata/extensions/__tests__/deprecated-test.js +++ b/packages/icon-build-helpers/src/metadata/extensions/__tests__/deprecated-test.js @@ -24,7 +24,7 @@ describe('deprecated', () => { return memfs.fs; }); - Registry = require('../../registry'); + Registry = require('../../../registry'); Storage = require('../../storage'); extension = require('../deprecated'); validate = require('../../validate'); diff --git a/packages/icon-build-helpers/src/metadata/extensions/__tests__/icons-test.js b/packages/icon-build-helpers/src/metadata/extensions/__tests__/icons-test.js index 675966822003..accd27ad9555 100644 --- a/packages/icon-build-helpers/src/metadata/extensions/__tests__/icons-test.js +++ b/packages/icon-build-helpers/src/metadata/extensions/__tests__/icons-test.js @@ -24,7 +24,7 @@ describe('icons', () => { return memfs.fs; }); - Registry = require('../../registry'); + Registry = require('../../../registry'); Storage = require('../../storage'); extension = require('../icons'); validate = require('../../validate'); From e44d8137e75952da40685a89f6b75743fe808972 Mon Sep 17 00:00:00 2001 From: Josh Black Date: Fri, 10 Apr 2020 15:08:13 -0500 Subject: [PATCH 08/11] chore(github): update CODEOWNERS comments --- CODEOWNERS | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/CODEOWNERS b/CODEOWNERS index a530d7313f5f..11ff189ca20d 100644 --- a/CODEOWNERS +++ b/CODEOWNERS @@ -11,7 +11,6 @@ # Brand /packages/colors/artifacts/ @lisalind-ibm -# Release team should be notified of Public API changes in the following -# packages +# Release team should be notified of Public API changes in the system **/PublicAPI-test.js @carbon-design-system/release @carbon-design-system/developers-system **/PublicAPI-test.js.snap @carbon-design-system/release @carbon-design-system/developers-system From 034fb40f9da47dcc30ecdb0f9cc921011bee805f Mon Sep 17 00:00:00 2001 From: Josh Black Date: Fri, 10 Apr 2020 15:21:40 -0500 Subject: [PATCH 09/11] fix(icon-build-helpers): set namespace for pictograms --- .../src/metadata/extensions/pictograms.js | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) diff --git a/packages/icon-build-helpers/src/metadata/extensions/pictograms.js b/packages/icon-build-helpers/src/metadata/extensions/pictograms.js index 904c2ae24358..705b9b816722 100644 --- a/packages/icon-build-helpers/src/metadata/extensions/pictograms.js +++ b/packages/icon-build-helpers/src/metadata/extensions/pictograms.js @@ -38,12 +38,9 @@ const pictograms = { const pictogram = registry.get(entry.name); // Add namespace information for the pictogram - if ( - Array.isArray(pictogram.namespace) && - pictogram.namespace.length > 0 - ) { - entry.namespace = pictogram.namespace.join('/'); - } + entry.namespace = Array.isArray(pictogram.namespace) + ? pictogram.namespace + : []; } }, From e06023a252595bc02c71a752264ff09f6c9c7c3f Mon Sep 17 00:00:00 2001 From: Josh Black Date: Fri, 10 Apr 2020 15:21:55 -0500 Subject: [PATCH 10/11] fix(pictograms): add main and module fields to package.json --- packages/pictograms/package.json | 2 ++ 1 file changed, 2 insertions(+) diff --git a/packages/pictograms/package.json b/packages/pictograms/package.json index 5533c0ce58d0..6933ce8fad18 100644 --- a/packages/pictograms/package.json +++ b/packages/pictograms/package.json @@ -3,6 +3,8 @@ "description": "Pictograms for digital and software products using the Carbon Design System", "version": "10.9.2", "license": "Apache-2.0", + "main": "lib/index.js", + "module": "es/index.js", "repository": "https://github.com/carbon-design-system/carbon/tree/master/packages/pictograms", "bugs": "https://github.com/carbon-design-system/carbon/issues", "keywords": [ From 5fc87868f2b2a375bee9a2bb17c13b5330746bbd Mon Sep 17 00:00:00 2001 From: Josh Black Date: Fri, 10 Apr 2020 15:22:06 -0500 Subject: [PATCH 11/11] test(e2e): add e2e tests for pictograms and pictograms-react --- e2e/pictograms-react/PublicAPI-test.js | 18 + .../__snapshots__/PublicAPI-test.js.snap | 489 ++++++++++++++++++ e2e/pictograms-react/components-test.js | 68 +++ e2e/pictograms/PublicAPI-test.js | 18 + .../__snapshots__/PublicAPI-test.js.snap | 488 +++++++++++++++++ e2e/pictograms/components-test.js | 68 +++ 6 files changed, 1149 insertions(+) create mode 100644 e2e/pictograms-react/PublicAPI-test.js create mode 100644 e2e/pictograms-react/__snapshots__/PublicAPI-test.js.snap create mode 100644 e2e/pictograms-react/components-test.js create mode 100644 e2e/pictograms/PublicAPI-test.js create mode 100644 e2e/pictograms/__snapshots__/PublicAPI-test.js.snap create mode 100644 e2e/pictograms/components-test.js diff --git a/e2e/pictograms-react/PublicAPI-test.js b/e2e/pictograms-react/PublicAPI-test.js new file mode 100644 index 000000000000..a3db94de95f6 --- /dev/null +++ b/e2e/pictograms-react/PublicAPI-test.js @@ -0,0 +1,18 @@ +/** + * Copyright IBM Corp. 2018, 2018 + * + * This source code is licensed under the Apache-2.0 license found in the + * LICENSE file in the root directory of this source tree. + * + * @jest-environment node + */ + +'use strict'; + +const CarbonPictograms = require('@carbon/pictograms-react'); + +describe('@carbon/pictograms-react', () => { + it('should not update exports without a semver change', () => { + expect(Object.keys(CarbonPictograms).sort()).toMatchSnapshot(); + }); +}); diff --git a/e2e/pictograms-react/__snapshots__/PublicAPI-test.js.snap b/e2e/pictograms-react/__snapshots__/PublicAPI-test.js.snap new file mode 100644 index 000000000000..288cedca5ed6 --- /dev/null +++ b/e2e/pictograms-react/__snapshots__/PublicAPI-test.js.snap @@ -0,0 +1,489 @@ +// Jest Snapshot v1, https://goo.gl/fbAQLP + +exports[`@carbon/pictograms-react should not update exports without a semver change 1`] = ` +Array [ + "ActiveServer", + "Advocate", + "Agriculture", + "AirConditioner", + "Airplane", + "Alarm", + "AlchemyDataNews", + "AlchemyLanguage", + "AlchemyLanguageAlphabetAExpanded", + "AlchemyVision", + "Americas", + "AmsterdamCanal", + "AmsterdamFarm", + "AmsterdamWindmill", + "Analyze", + "AnalyzesData", + "Apartment", + "Api", + "AppDeveloper", + "Apple", + "Application", + "Archive", + "AsiaAustralia", + "AugmentedReality", + "Austin", + "AutomateModularManagement", + "Automobile", + "Bag", + "Bangalore", + "Bee", + "BeijingMunicipal", + "BeijingTower", + "BerlinBrandenburg", + "BerlinBrandenburgGate", + "BerlinCathedral", + "BerlinTower", + "Bicycle", + "Blockchain", + "BoxPlot", + "Build", + "Building", + "Bulldozer", + "Bus", + "Cafe", + "Calendar", + "CalendarDate", + "CalendarEvent", + "Camera", + "Capitol", + "Care", + "Cell", + "ChartArea", + "ChartBar", + "ChartBubble", + "ChartBubbleLine", + "ChartCandlestick", + "ChartErrorBar", + "ChartEvaluation", + "ChartHighLow", + "ChartHistogram", + "ChartLine", + "ChartMultiLine", + "ChartParallel", + "ChartRadar", + "ChartRiver", + "ChartScatterplot", + "ChartTSne", + "Chart_3D", + "Cherries", + "ChipCircuit", + "ChipCredit", + "ChipDebit", + "CirclePacking", + "CloudAnalytics", + "CloudAssets", + "CloudBuilderProfessionalServices", + "CloudComputing", + "CloudDataServices", + "CloudDownload", + "CloudEcosystem", + "CloudGuidelines", + "CloudManagedServices", + "CloudOracle", + "CloudPartners", + "CloudPlanning", + "CloudSap", + "CloudServices", + "CloudServicesPricing", + "CloudStorage", + "CloudStrategy", + "CloudTutorials", + "CloudUpload", + "CloudVmware", + "Cloudy", + "CloudyDewy", + "CloudyHazy", + "CloudyHumid", + "CloudyPartial", + "CloudyWindy", + "CoatHanger", + "CognosAnalytics", + "College", + "ConceptExpansion", + "ConceptInsights", + "Connect", + "Console", + "ConsoleWireless", + "Construct", + "Conversation", + "CopenhagenPlanetarium", + "CopenhagenSnekkja", + "CreditCard", + "Crop", + "CustomerService", + "DataBackup", + "DataInsights", + "DataProcessing", + "DataStorage", + "Delete", + "DeliverInsights", + "DeliveryTruck", + "DesignAndDevelopment_01", + "DesignAndDevelopment_02", + "Desktop", + "Devops", + "Dialogue", + "Digital", + "Dining", + "Dna", + "DoNot", + "Docker", + "Doctor", + "DocumentConversion", + "DoorHandle", + "Download", + "DownloadAlt", + "DubaiPalmIslands", + "DubaiSkyscraper", + "DublinBrewery", + "DublinCastle", + "DuplicateFile", + "Education", + "Electric", + "ElectricCharge", + "Elevator", + "Embed", + "Engine", + "EnterpriseDesignThinking", + "EnterpriseDesignThinkingAlt", + "Envelope", + "ErlenmeyerFlask", + "EscalatorDown", + "EscalatorUp", + "EuropeAfrica", + "ExpandHorz", + "ExpandUser", + "ExpandVert", + "Export", + "ExportAlt", + "Eye", + "FaceDissatisfied", + "FaceNeutral", + "FaceSatisfied", + "FaceVeryDissatisfied", + "FaceVerySatisfied", + "Factory", + "Farm", + "Faucet", + "Feedback", + "FileBackup", + "FileTransfer", + "FinancialConsultant", + "FinancialGain", + "FinancialNews", + "FireAlarm", + "FireExtinguisher", + "Firewall", + "FlowChart", + "FlowChartDetail", + "Fog", + "Folder", + "Forklift", + "FreeTrial", + "Fuel", + "Gear", + "GlobalBusinessServices", + "GlobalFinanceEuro", + "GlobalFinanceSterling", + "GlobalNetwork", + "GlobalTechnologyServices", + "Globe", + "GlobeLocations", + "Group", + "Hail", + "HailHeavy", + "HailMixed", + "Handicap", + "HandicapActive", + "HardDrive", + "HardDriveNetwork", + "HardIceCream", + "Hazy", + "Headphones", + "Heart", + "HeartHealth", + "HeatMap", + "HeatMap_02", + "HighFive", + "HomeFront", + "HomeGarage", + "HomeProfile", + "Hospital", + "Humid", + "Hurricane", + "HybridCloud", + "HybridCloudServices", + "IbmIx", + "IbmZ", + "Icon", + "Idea", + "Ideate", + "Innovate", + "Integration", + "Intelligence", + "Intercom", + "IotMunich", + "Java", + "Javascript", + "Justice", + "KeyUsers", + "KnowsDarkData", + "Language", + "LanguageTranslation", + "LanguageTranslationAlphabetAExpanded", + "Language_01", + "Language_02", + "Language_03", + "Language_04", + "Launch", + "Lightning", + "ListBullet", + "ListCheckbox", + "Location", + "Lock", + "LockAlt", + "LockedNetwork", + "LockedNetworkAlt", + "London", + "LondonBigBen", + "LondonExpandedBase", + "Lungs", + "MachineLearning_01", + "MachineLearning_02", + "MachineLearning_03", + "MachineLearning_04", + "MachineLearning_05", + "MachineLearning_06", + "MadridCathedral", + "MadridSkyscrapers", + "MadridStatue", + "Magnify", + "Marketplace", + "Mas", + "MathCurve", + "Maximize", + "Medical", + "MedicalCharts", + "MedicalStaff", + "Melbourne", + "Meter", + "MexicoCityAngelOfIndependence", + "MexicoCityMuseoSoumaya", + "Microorganisms", + "Microscope", + "MilanDuomoDiMilano", + "MilanSkyscrapers", + "Minimize", + "MobileAdd", + "MobileChat", + "MobileDevices", + "MobilePhone", + "MortarAndPestle", + "Moscow", + "Mqa", + "Multitask", + "Munich", + "NaturalLanguageClassifier", + "Network", + "NetworkServices", + "Networking_01", + "Networking_02", + "Networking_03", + "Networking_04", + "Networking_05", + "Nice", + "NightClear", + "NycBrooklyn", + "NycManhattan", + "NycManhattanAlt", + "Office", + "OilPump", + "OilRig", + "Overcast", + "PaperClip", + "Parliament", + "PartnerRelationship", + "Path", + "Pattern", + "Perfume", + "Person_01", + "Person_02", + "Person_03", + "Person_04", + "Person_05", + "Person_06", + "Person_07", + "Person_08", + "Person_09", + "PersonalityInsights", + "PetriCulture", + "PillBottle_01", + "Pills", + "Podcast", + "Police", + "PopulationDiagram", + "Power", + "Presentation", + "Presenter", + "Price", + "Printer", + "PrivateNetwork", + "PrivateNetworkAlt", + "PrivateNetworkAlt_01", + "PrivateNetwork_01", + "Progress", + "Puzzle", + "QQPlot", + "Question", + "QuestionAndAnswer", + "Rainy", + "RainyHeavy", + "Rank", + "Receipt", + "Recycle", + "Refinery", + "Refresh", + "RelationshipDiagram", + "RelationshipExtraction", + "Renew", + "RenewTeam", + "Repeat", + "Report", + "Reset", + "ResetHybridCloud", + "ResetSettings", + "RetrieveAndRank", + "RichTextFormat", + "Robot", + "Robotics", + "Rome", + "SaasEnablement", + "SanFrancisco", + "SanFranciscoFog", + "SaoPaulo", + "SaoPauloExpandedBase", + "Satellite", + "SatelliteDish", + "Scale", + "ScatterMatrix", + "Seattle", + "SecureData", + "SecureProfile", + "Security", + "SecurityShield", + "ServerRack", + "Servers", + "Shop", + "ShoppingCart", + "Shower", + "Singapore", + "SingleSignOn", + "Slider", + "Sneaker", + "Snow", + "SoftIceCream", + "SoftlayerEnablement", + "Solve", + "Spaceship", + "Speech", + "SpeechAlphabetAExpanded", + "SpeechToText", + "Speedometer", + "StairsPlanView", + "StationaryBicycle", + "Steel", + "SteeringWheel", + "Stethoscope", + "Strategy", + "StrategyDirect", + "StrategyMove", + "StrategyPlay", + "Streamline", + "Sunny", + "SunnyHazy", + "SupportServices", + "SwipeLeft", + "SwipeRight", + "Tags", + "Target", + "TargetArea", + "TelAviv", + "Telecom", + "Telephone", + "Television", + "TemperatureHigh", + "TemperatureLow", + "Tennis", + "TestTubes", + "TextToSpeech", + "Time", + "TimeLapse", + "Toggle", + "TokyoCherryBlossom", + "TokyoGates", + "TokyoTemple", + "TokyoVolcano", + "ToneAnalyzer", + "Tools", + "Tornado", + "Toronto", + "Touch", + "TouchGesture", + "TouchId", + "TouchScreen", + "TouchSwipe", + "Tractor", + "TradeoffAnalytics", + "Train", + "Transform", + "Trash", + "TreeDiagram", + "TreeMap", + "University", + "Unlock", + "UnlockAlt", + "Upload", + "UploadAlt", + "UserAnalytics", + "UserInsights", + "UserSearch", + "Vancouver", + "Video", + "VideoAlt", + "VideoChat", + "VideoPlay", + "Virus", + "Vision", + "VisualInsights", + "VisualRecognition", + "Warning", + "WarningAlt", + "Washer", + "WashingtonDc", + "WashingtonDcCapitol", + "WashingtonDcMonument", + "WatsonAvatar", + "Weather", + "WebDeveloper", + "Webcast", + "Wheat", + "Wifi", + "WindPower", + "Windows", + "Windy", + "Wine", + "WirelessHome", + "WirelessModem", + "WordCloud", + "WreckingBall", + "Yoga_01", + "Yoga_02", + "Yoga_03", + "Yoga_04", +] +`; diff --git a/e2e/pictograms-react/components-test.js b/e2e/pictograms-react/components-test.js new file mode 100644 index 000000000000..178da18d0b19 --- /dev/null +++ b/e2e/pictograms-react/components-test.js @@ -0,0 +1,68 @@ +/** + * Copyright IBM Corp. 2018, 2018 + * + * This source code is licensed under the Apache-2.0 license found in the + * LICENSE file in the root directory of this source tree. + * + * @jest-environment node + */ + +'use strict'; + +const path = require('path'); +const { Metadata } = require('../../packages/icon-build-helpers'); + +const PACKAGE_DIR = path.resolve(__dirname, '../../packages/pictograms-react'); +const PICTOGRAMS_PACKAGE_DIR = path.resolve( + __dirname, + '../../packages/pictograms' +); + +describe('@carbon/pictograms-react', () => { + let metadata; + + beforeAll(async () => { + metadata = await Metadata.load({ + input: PICTOGRAMS_PACKAGE_DIR, + extensions: [ + Metadata.extensions.pictograms, + Metadata.extensions.deprecated, + Metadata.extensions.moduleName, + ], + }); + }); + + it('should export each SVG asset', async () => { + const CarbonPictogramsReactCommonJS = require('@carbon/pictograms-react'); + const CarbonPictogramsReactESM = await import('@carbon/pictograms-react'); + for (const icon of metadata.icons) { + const { moduleName } = icon; + expect(CarbonPictogramsReactCommonJS[moduleName]).toBeDefined(); + expect(CarbonPictogramsReactESM[moduleName]).toBeDefined(); + } + }); + + it('should export each SVG asset as a direct path', async () => { + for (const icon of metadata.icons) { + const esm = path.join( + PACKAGE_DIR, + 'es', + ...icon.namespace, + icon.name, + 'index.js' + ); + const commonjs = path.join( + PACKAGE_DIR, + 'lib', + ...icon.namespace, + icon.name, + 'index.js' + ); + + expect(() => { + require(commonjs); + }).not.toThrow(); + await expect(import(esm)).resolves.toBeDefined(); + } + }); +}); diff --git a/e2e/pictograms/PublicAPI-test.js b/e2e/pictograms/PublicAPI-test.js new file mode 100644 index 000000000000..f8817637529c --- /dev/null +++ b/e2e/pictograms/PublicAPI-test.js @@ -0,0 +1,18 @@ +/** + * Copyright IBM Corp. 2018, 2018 + * + * This source code is licensed under the Apache-2.0 license found in the + * LICENSE file in the root directory of this source tree. + * + * @jest-environment node + */ + +'use strict'; + +const CarbonPictograms = require('@carbon/pictograms'); + +describe('@carbon/pictograms', () => { + it('should not update exports without a semver change', () => { + expect(Object.keys(CarbonPictograms).sort()).toMatchSnapshot(); + }); +}); diff --git a/e2e/pictograms/__snapshots__/PublicAPI-test.js.snap b/e2e/pictograms/__snapshots__/PublicAPI-test.js.snap new file mode 100644 index 000000000000..f7b5947ba19d --- /dev/null +++ b/e2e/pictograms/__snapshots__/PublicAPI-test.js.snap @@ -0,0 +1,488 @@ +// Jest Snapshot v1, https://goo.gl/fbAQLP + +exports[`@carbon/pictograms should not update exports without a semver change 1`] = ` +Array [ + "ActiveServer", + "Advocate", + "Agriculture", + "AirConditioner", + "Airplane", + "Alarm", + "AlchemyDataNews", + "AlchemyLanguage", + "AlchemyLanguageAlphabetAExpanded", + "AlchemyVision", + "Americas", + "AmsterdamCanal", + "AmsterdamFarm", + "AmsterdamWindmill", + "Analyze", + "AnalyzesData", + "Apartment", + "Api", + "AppDeveloper", + "Apple", + "Application", + "Archive", + "AsiaAustralia", + "AugmentedReality", + "Austin", + "AutomateModularManagement", + "Automobile", + "Bag", + "Bangalore", + "Bee", + "BeijingMunicipal", + "BeijingTower", + "BerlinBrandenburg", + "BerlinBrandenburgGate", + "BerlinCathedral", + "BerlinTower", + "Bicycle", + "Blockchain", + "BoxPlot", + "Build", + "Building", + "Bulldozer", + "Bus", + "Cafe", + "Calendar", + "CalendarDate", + "CalendarEvent", + "Camera", + "Capitol", + "Care", + "Cell", + "ChartArea", + "ChartBar", + "ChartBubble", + "ChartBubbleLine", + "ChartCandlestick", + "ChartErrorBar", + "ChartEvaluation", + "ChartHighLow", + "ChartHistogram", + "ChartLine", + "ChartMultiLine", + "ChartParallel", + "ChartRadar", + "ChartRiver", + "ChartScatterplot", + "ChartTSne", + "Chart_3D", + "Cherries", + "ChipCircuit", + "ChipCredit", + "ChipDebit", + "CirclePacking", + "CloudAnalytics", + "CloudAssets", + "CloudBuilderProfessionalServices", + "CloudComputing", + "CloudDataServices", + "CloudDownload", + "CloudEcosystem", + "CloudGuidelines", + "CloudManagedServices", + "CloudOracle", + "CloudPartners", + "CloudPlanning", + "CloudSap", + "CloudServices", + "CloudServicesPricing", + "CloudStorage", + "CloudStrategy", + "CloudTutorials", + "CloudUpload", + "CloudVmware", + "Cloudy", + "CloudyDewy", + "CloudyHazy", + "CloudyHumid", + "CloudyPartial", + "CloudyWindy", + "CoatHanger", + "CognosAnalytics", + "College", + "ConceptExpansion", + "ConceptInsights", + "Connect", + "Console", + "ConsoleWireless", + "Construct", + "Conversation", + "CopenhagenPlanetarium", + "CopenhagenSnekkja", + "CreditCard", + "Crop", + "CustomerService", + "DataBackup", + "DataInsights", + "DataProcessing", + "DataStorage", + "Delete", + "DeliverInsights", + "DeliveryTruck", + "DesignAndDevelopment_01", + "DesignAndDevelopment_02", + "Desktop", + "Devops", + "Dialogue", + "Digital", + "Dining", + "Dna", + "DoNot", + "Docker", + "Doctor", + "DocumentConversion", + "DoorHandle", + "Download", + "DownloadAlt", + "DubaiPalmIslands", + "DubaiSkyscraper", + "DublinBrewery", + "DublinCastle", + "DuplicateFile", + "Education", + "Electric", + "ElectricCharge", + "Elevator", + "Embed", + "Engine", + "EnterpriseDesignThinking", + "EnterpriseDesignThinkingAlt", + "Envelope", + "ErlenmeyerFlask", + "EscalatorDown", + "EscalatorUp", + "EuropeAfrica", + "ExpandHorz", + "ExpandUser", + "ExpandVert", + "Export", + "ExportAlt", + "Eye", + "FaceDissatisfied", + "FaceNeutral", + "FaceSatisfied", + "FaceVeryDissatisfied", + "FaceVerySatisfied", + "Factory", + "Farm", + "Faucet", + "Feedback", + "FileBackup", + "FileTransfer", + "FinancialConsultant", + "FinancialGain", + "FinancialNews", + "FireAlarm", + "FireExtinguisher", + "Firewall", + "FlowChart", + "FlowChartDetail", + "Fog", + "Folder", + "Forklift", + "FreeTrial", + "Fuel", + "Gear", + "GlobalBusinessServices", + "GlobalFinanceEuro", + "GlobalFinanceSterling", + "GlobalNetwork", + "GlobalTechnologyServices", + "Globe", + "GlobeLocations", + "Group", + "Hail", + "HailHeavy", + "HailMixed", + "Handicap", + "HandicapActive", + "HardDrive", + "HardDriveNetwork", + "HardIceCream", + "Hazy", + "Headphones", + "Heart", + "HeartHealth", + "HeatMap", + "HeatMap_02", + "HighFive", + "HomeFront", + "HomeGarage", + "HomeProfile", + "Hospital", + "Humid", + "Hurricane", + "HybridCloud", + "HybridCloudServices", + "IbmIx", + "IbmZ", + "Idea", + "Ideate", + "Innovate", + "Integration", + "Intelligence", + "Intercom", + "IotMunich", + "Java", + "Javascript", + "Justice", + "KeyUsers", + "KnowsDarkData", + "Language", + "LanguageTranslation", + "LanguageTranslationAlphabetAExpanded", + "Language_01", + "Language_02", + "Language_03", + "Language_04", + "Launch", + "Lightning", + "ListBullet", + "ListCheckbox", + "Location", + "Lock", + "LockAlt", + "LockedNetwork", + "LockedNetworkAlt", + "London", + "LondonBigBen", + "LondonExpandedBase", + "Lungs", + "MachineLearning_01", + "MachineLearning_02", + "MachineLearning_03", + "MachineLearning_04", + "MachineLearning_05", + "MachineLearning_06", + "MadridCathedral", + "MadridSkyscrapers", + "MadridStatue", + "Magnify", + "Marketplace", + "Mas", + "MathCurve", + "Maximize", + "Medical", + "MedicalCharts", + "MedicalStaff", + "Melbourne", + "Meter", + "MexicoCityAngelOfIndependence", + "MexicoCityMuseoSoumaya", + "Microorganisms", + "Microscope", + "MilanDuomoDiMilano", + "MilanSkyscrapers", + "Minimize", + "MobileAdd", + "MobileChat", + "MobileDevices", + "MobilePhone", + "MortarAndPestle", + "Moscow", + "Mqa", + "Multitask", + "Munich", + "NaturalLanguageClassifier", + "Network", + "NetworkServices", + "Networking_01", + "Networking_02", + "Networking_03", + "Networking_04", + "Networking_05", + "Nice", + "NightClear", + "NycBrooklyn", + "NycManhattan", + "NycManhattanAlt", + "Office", + "OilPump", + "OilRig", + "Overcast", + "PaperClip", + "Parliament", + "PartnerRelationship", + "Path", + "Pattern", + "Perfume", + "Person_01", + "Person_02", + "Person_03", + "Person_04", + "Person_05", + "Person_06", + "Person_07", + "Person_08", + "Person_09", + "PersonalityInsights", + "PetriCulture", + "PillBottle_01", + "Pills", + "Podcast", + "Police", + "PopulationDiagram", + "Power", + "Presentation", + "Presenter", + "Price", + "Printer", + "PrivateNetwork", + "PrivateNetworkAlt", + "PrivateNetworkAlt_01", + "PrivateNetwork_01", + "Progress", + "Puzzle", + "QQPlot", + "Question", + "QuestionAndAnswer", + "Rainy", + "RainyHeavy", + "Rank", + "Receipt", + "Recycle", + "Refinery", + "Refresh", + "RelationshipDiagram", + "RelationshipExtraction", + "Renew", + "RenewTeam", + "Repeat", + "Report", + "Reset", + "ResetHybridCloud", + "ResetSettings", + "RetrieveAndRank", + "RichTextFormat", + "Robot", + "Robotics", + "Rome", + "SaasEnablement", + "SanFrancisco", + "SanFranciscoFog", + "SaoPaulo", + "SaoPauloExpandedBase", + "Satellite", + "SatelliteDish", + "Scale", + "ScatterMatrix", + "Seattle", + "SecureData", + "SecureProfile", + "Security", + "SecurityShield", + "ServerRack", + "Servers", + "Shop", + "ShoppingCart", + "Shower", + "Singapore", + "SingleSignOn", + "Slider", + "Sneaker", + "Snow", + "SoftIceCream", + "SoftlayerEnablement", + "Solve", + "Spaceship", + "Speech", + "SpeechAlphabetAExpanded", + "SpeechToText", + "Speedometer", + "StairsPlanView", + "StationaryBicycle", + "Steel", + "SteeringWheel", + "Stethoscope", + "Strategy", + "StrategyDirect", + "StrategyMove", + "StrategyPlay", + "Streamline", + "Sunny", + "SunnyHazy", + "SupportServices", + "SwipeLeft", + "SwipeRight", + "Tags", + "Target", + "TargetArea", + "TelAviv", + "Telecom", + "Telephone", + "Television", + "TemperatureHigh", + "TemperatureLow", + "Tennis", + "TestTubes", + "TextToSpeech", + "Time", + "TimeLapse", + "Toggle", + "TokyoCherryBlossom", + "TokyoGates", + "TokyoTemple", + "TokyoVolcano", + "ToneAnalyzer", + "Tools", + "Tornado", + "Toronto", + "Touch", + "TouchGesture", + "TouchId", + "TouchScreen", + "TouchSwipe", + "Tractor", + "TradeoffAnalytics", + "Train", + "Transform", + "Trash", + "TreeDiagram", + "TreeMap", + "University", + "Unlock", + "UnlockAlt", + "Upload", + "UploadAlt", + "UserAnalytics", + "UserInsights", + "UserSearch", + "Vancouver", + "Video", + "VideoAlt", + "VideoChat", + "VideoPlay", + "Virus", + "Vision", + "VisualInsights", + "VisualRecognition", + "Warning", + "WarningAlt", + "Washer", + "WashingtonDc", + "WashingtonDcCapitol", + "WashingtonDcMonument", + "WatsonAvatar", + "Weather", + "WebDeveloper", + "Webcast", + "Wheat", + "Wifi", + "WindPower", + "Windows", + "Windy", + "Wine", + "WirelessHome", + "WirelessModem", + "WordCloud", + "WreckingBall", + "Yoga_01", + "Yoga_02", + "Yoga_03", + "Yoga_04", +] +`; diff --git a/e2e/pictograms/components-test.js b/e2e/pictograms/components-test.js new file mode 100644 index 000000000000..0e5f112046d8 --- /dev/null +++ b/e2e/pictograms/components-test.js @@ -0,0 +1,68 @@ +/** + * Copyright IBM Corp. 2018, 2018 + * + * This source code is licensed under the Apache-2.0 license found in the + * LICENSE file in the root directory of this source tree. + * + * @jest-environment node + */ + +'use strict'; + +const path = require('path'); +const { Metadata } = require('../../packages/icon-build-helpers'); + +const PICTOGRAMS_PACKAGE_DIR = path.resolve( + __dirname, + '../../packages/pictograms' +); + +describe('@carbon/pictograms', () => { + let metadata; + + beforeAll(async () => { + metadata = await Metadata.load({ + input: PICTOGRAMS_PACKAGE_DIR, + extensions: [ + Metadata.extensions.pictograms, + Metadata.extensions.deprecated, + Metadata.extensions.moduleName, + ], + }); + }); + + it('should export each SVG asset', async () => { + const CarbonPictogramsCommonJS = require('@carbon/pictograms'); + const CarbonPictogramsESM = await import('@carbon/pictograms'); + + for (const icon of metadata.icons) { + const { moduleName } = icon; + expect(CarbonPictogramsCommonJS[moduleName]).toBeDefined(); + expect(CarbonPictogramsESM[moduleName]).toBeDefined(); + } + }); + + it('should export each SVG asset as a direct path', async () => { + for (const icon of metadata.icons) { + const esm = path.join( + PICTOGRAMS_PACKAGE_DIR, + 'es', + ...icon.namespace, + icon.name, + 'index.js' + ); + const commonjs = path.join( + PICTOGRAMS_PACKAGE_DIR, + 'lib', + ...icon.namespace, + icon.name, + 'index.js' + ); + + expect(() => { + require(commonjs); + }).not.toThrow(); + await expect(import(esm)).resolves.toBeDefined(); + } + }); +});