Skip to content

Commit 3e76089

Browse files
committed
feat(code-connect-urls): resolve build errors
1 parent 56b3962 commit 3e76089

File tree

6 files changed

+18
-16
lines changed

6 files changed

+18
-16
lines changed

CONTRIBUTING.md

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -329,4 +329,5 @@ The process for revoking someone's maintainer status is a discussion limited to
329329

330330
[1]: https://www.contributor-covenant.org/version/2/1/code_of_conduct/
331331
[2]: mailto:patternfly@redhat.com
332-
[3]: https://github.com/angular/angular.js/blob/master/DEVELOPERS.md#type
332+
[3]: https://github.com/angular/angular.js/blob/master/DEVELOPERS.md#type
333+

packages/react-core/.gitignore

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,4 +3,4 @@
33
/components
44
/layouts
55
/helpers
6-
yarn.lock
6+
yarn.lock

packages/react-core/codeConnect/scripts/iconGenerator.mjs

Lines changed: 13 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,9 @@ import { existsSync } from 'fs';
1010
* @returns {string|null} - Node ID or null if not found
1111
*/
1212
function extractNodeId(url) {
13-
if (!url) return null;
13+
if (!url) {
14+
return null;
15+
}
1416
const nodeIdMatch = url.match(/node-id=([^&]+)/);
1517
return nodeIdMatch ? nodeIdMatch[1] : null;
1618
}
@@ -67,20 +69,22 @@ async function generateIcons() {
6769
}
6870

6971
// Check and log node ID coverage
70-
const iconsWithNodeIds = iconData.filter(icon => icon.url && extractNodeId(icon.url));
72+
const iconsWithNodeIds = iconData.filter((icon) => icon.url && extractNodeId(icon.url));
7173
logger.info(`Found node IDs for ${iconsWithNodeIds.length} of ${iconData.length} icons`);
7274

7375
// Generate individual icon files
7476
const iconGenerationPromises = iconData.map(async (icon) => {
7577
// Use safe defaults for all properties to avoid undefined errors
76-
const iconFileName = (icon && icon.fileName) ? icon.fileName : 'default-icon';
78+
const iconFileName = icon && icon.fileName ? icon.fileName : 'default-icon';
7779

7880
// Use the template and replace placeholders with safe defaults
7981
const iconContent = iconTemplate
80-
.replace('ICON_NAME', (icon && icon.reactName) ? icon.reactName : 'DefaultIcon')
82+
.replace('ICON_NAME', icon && icon.reactName ? icon.reactName : 'DefaultIcon')
8183
.replace(
8284
'SVG_PATH',
83-
(icon && icon.svgPath) ? icon.svgPath : '<path d="M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2z" />'
85+
icon && icon.svgPath
86+
? icon.svgPath
87+
: '<path d="M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2z" />'
8488
);
8589

8690
const iconPath = path.join(config.iconsGeneratedDir, `${iconFileName}.tsx`);
@@ -109,7 +113,7 @@ export interface IconProps extends SVGProps<SVGSVGElement> {
109113

110114
// Generate Figma connection file
111115
const componentNames = generatedIcons
112-
.filter(icon => icon && icon.reactName) // Filter out any undefined values
116+
.filter((icon) => icon && icon.reactName) // Filter out any undefined values
113117
.map((icon) => icon.reactName)
114118
.sort();
115119

@@ -124,12 +128,10 @@ import { ${componentNames.join(', ')} } from "./generated";
124128
*/
125129
126130
${generatedIcons
127-
.filter(icon => icon && icon.reactName) // Filter out any icons without a reactName
131+
.filter((icon) => icon && icon.reactName) // Filter out any icons without a reactName
128132
.map((icon) => {
129133
// Extract node ID from URL or use default
130-
const nodeId = icon.url
131-
? extractNodeId(icon.url) || config.defaultNodeId
132-
: config.defaultNodeId;
134+
const nodeId = icon.url ? extractNodeId(icon.url) || config.defaultNodeId : config.defaultNodeId;
133135
134136
const url = `${config.figmaBaseUrl}?node-id=${nodeId}&m=dev`;
135137
@@ -152,7 +154,7 @@ ${generatedIcons
152154

153155
// Generate index file for generated icons
154156
const indexContent = generatedIcons
155-
.filter(icon => icon && icon.reactName && icon.fileName) // Filter out any undefined values
157+
.filter((icon) => icon && icon.reactName && icon.fileName) // Filter out any undefined values
156158
.map((icon) => `export { ${icon.reactName} } from './${icon.fileName}';`)
157159
.join('\n');
158160

packages/react-core/figma.config.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33
"parser": "react",
44
"label": "PF-React",
55
"include": [
6+
"src/components/**/*.tsx",
67
"icons/generated/*.tsx",
78
"icons/**/*.tsx",
89
"icons/*.tsx",

packages/react-core/icons/IconWrapper.figma.tsx

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,4 @@
1-
import React from 'react';
2-
import IconWrapper from 'src/components/Icon/IconWrapper.tsx';
1+
import { IconWrapper } from 'src/components/Icon/IconWrapper.tsx';
32
import figma from '@figma/code-connect';
43

54
figma.connect(

packages/react-core/icons/icons.figma.tsx

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,3 @@
1-
import React from "react";
21
import {
32
AddCircleOIcon, AngleDoubleLeftIcon, AngleDoubleRightIcon, AngleDownIcon, AngleLeftIcon, AngleRightIcon, AngleUpIcon, AnsibleIcon, ArrowCircleDownIcon, ArrowCircleUpIcon, ArrowRightIcon, ArrowsAltVIcon, AsleepIcon, AttentionBellIcon, AutomationIcon, BalanceScaleIcon, BanIcon, BarsIcon, BellIcon, BitbucketIcon, BlueprintIcon, BugIcon, BuildIcon, BuilderImageIcon, BundleIcon, CalendarIcon, CaretDownIcon, CatalogIcon, CheckCircle2xlIcon, CheckCircleIcon, CheckIcon, ClipboardCheckIcon, ClockIcon, CloudSecurityIcon, CloudTenantIcon, ClusterIcon, CodeBranchIcon, CodeIcon, CogIcon, CogsIcon, ColumnsIcon, CommentsIcon, CompressArrowsAltIcon, CompressIcon, ConnectedIcon, CopyIcon, CubeIcon, CubesIcon, DataProcessorIcon, DataSinkIcon, DataSourceIcon, DatabaseIcon, DegradedIcon, DesktopIcon, DisconnectedIcon, DomainIcon, DownLeftAndUpRightToCenterSolidIcon, DownloadIcon, DropboxIcon, DrupalIcon, EllipsisVIcon, EnhancementIcon, EnterpriseIcon, ExclamationCircleIcon, ExclamationTriangleIcon, ExpandArrowsAltIcon, ExpandIcon, ExportIcon, ExternalLinkAltIcon, EyeIcon, EyeSlashIcon, FacebookIcon, FileIcon, FilterIcon, FingerprintIcon, FlagIcon, FlavorIcon, FolderIcon, FolderOpenIcon, GithubIcon, GitlabIcon, GoogleIcon, GripHorizontalIcon, GripVerticalIcon, HardDriveIcon, HddIcon, HistoryIcon, HomeIcon, ImageIcon, ImportIcon, InProgressIcon, InfoCircleIcon, InfrastructureIcon, IntegrationIcon, JsIcon, KeyIcon, LinkedinIcon, LinuxIcon, ListIcon, LockIcon, LockOpenIcon, LongArrowAltDownIcon, LongArrowAltUpIcon, MapMarkerIcon, MemoryIcon, MessageIcon, MicrochipIcon, MicrophoneIcon, MiddlewareIcon, MigrationIcon, MinusCircleIcon, MinusIcon, MonitoringIcon, MulticlusterIcon, NetworkIcon, NetworkRangeIcon, NewProcessIcon, NotStartedIcon, OffIcon, OpenDrawerRightIcon, OpenshiftIcon, OpenstackIcon, OptimizeIcon, PanelCloseIcon, PanelOpenIcon, PaperPlaneIcon, PaperclipIcon, PatternflyIcon, PauseCircleIcon, PauseIcon, PencilAltIcon, PendingIcon, PlayIcon, PlusCircleIcon, PlusIcon, PortIcon, PowerOffIcon, PrintIcon, PrivateIcon, ProcessAutomationIcon, QuestionCircleIcon, RedoIcon, RegionsIcon, RegistryIcon, ReplicatorIcon, RepositoryIcon, ResourcePoolIcon, ResourcesAlmostEmptyIcon, ResourcesAlmostFullIcon, ResourcesEmptyIcon, ResourcesFullIcon, RobotIcon, RouteIcon, RunningIcon, SatelliteIcon, SaveIcon, SearchIcon, SearchMinusIcon, SearchPlusIcon, SecurityIcon, ServerGroupIcon, ServiceCatalogIcon, ServiceIcon, ServicesIcon, SeverityCriticalIcon, SeverityImportantIcon, SeverityMinorIcon, SeverityModerateIcon, SeverityNoneIcon, SeverityUnidentifiedIcon, ShareSquareIcon, ShareSquareOutlineIcon, SlidersIcon, SortAmountDownAltIcon, SortAmountDownIcon, SpaceShuttle2xlIcon, StackOverflowIcon, StarIcon, StopIcon, StorageDomainIcon, SyncAltIcon, TableIcon, TachometerAltIcon, TagIcon, TaskIcon, TemplateIcon, TenantIcon, ThIcon, ThLargeIcon, ThumbsDownIcon, ThumbsDownRegularIcon, ThumbsUpIcon, ThumbsUpRegularIcon, ThumbtackIcon, TimesCircleIcon, TimesIcon, TopologyIcon, TrashIcon, TreeviewIcon, TrendDownIcon, TrendUpIcon, TwitterIcon, UndoIcon, UnknownIcon, UpRightAndDownLeftFromCenterSolidIcon, UploadIcon, UserIcon, VcenterIcon, VirtualMachineIcon, VolumeHighIcon, VolumeIcon, WindowRestoreIcon, WindowsIcon, WrenchIcon, ZoneIcon
43
} from "./generated";

0 commit comments

Comments
 (0)