@bitrise/bitkit-v2 0.3.206 → 0.3.208

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -27,6 +27,20 @@ Chakra UI and Emotion are included as regular runtime dependencies of this packa
27
27
  - React 18+ (peer dependency)
28
28
  - React DOM 18+ (peer dependency)
29
29
 
30
+ ### Theme typings
31
+
32
+ Bitkit ships a Chakra UI v3 theme with custom recipes, semantic tokens, and design tokens. For TypeScript autocompletion to recognize bitkit-specific values (e.g. `<BitkitButton variant="ai-primary">`, `colors.purple.60`), Chakra's typegen must run in your project's `node_modules` after install.
33
+
34
+ This happens automatically via a `postinstall` hook bundled with the package — no setup is required for standard npm installs.
35
+
36
+ If the postinstall is skipped (e.g. you ran `npm install --ignore-scripts`, or a CI runner blocks lifecycle scripts), regenerate the typings manually:
37
+
38
+ ```bash
39
+ npx chakra typegen node_modules/@bitrise/bitkit-v2/dist/theme/index.js
40
+ ```
41
+
42
+ You can verify it worked by checking that `<BitkitButton variant="ai-primary" />` type-checks in your editor while `<BitkitButton variant="solid" />` errors.
43
+
30
44
  ## Quick Start
31
45
 
32
46
  ```tsx
@@ -0,0 +1,12 @@
1
+ import { TextareaProps } from '@chakra-ui/react/textarea';
2
+ import { BitkitFieldProps } from '../BitkitField/BitkitField';
3
+ export interface BitkitTextAreaProps extends Omit<BitkitFieldProps, 'children' | 'state'> {
4
+ autoresize?: boolean;
5
+ placeholder?: string;
6
+ resize?: 'none' | 'both' | 'horizontal' | 'vertical';
7
+ size?: 'md' | 'lg';
8
+ state?: 'disabled' | 'error' | 'readOnly' | 'warning';
9
+ textareaProps?: TextareaProps;
10
+ }
11
+ declare const BitkitTextArea: import('react').ForwardRefExoticComponent<BitkitTextAreaProps & import('react').RefAttributes<HTMLTextAreaElement>>;
12
+ export default BitkitTextArea;
@@ -0,0 +1,25 @@
1
+ import BitkitField from "../BitkitField/BitkitField.js";
2
+ import { forwardRef } from "react";
3
+ import { jsx } from "react/jsx-runtime";
4
+ import { Textarea } from "@chakra-ui/react/textarea";
5
+ //#region lib/components/BitkitTextArea/BitkitTextArea.tsx
6
+ var BitkitTextArea = forwardRef((props, ref) => {
7
+ const { autoresize, placeholder, resize, size, state, textareaProps, ...fieldProps } = props;
8
+ return /* @__PURE__ */ jsx(BitkitField, {
9
+ state,
10
+ ...fieldProps,
11
+ children: /* @__PURE__ */ jsx(Textarea, {
12
+ ref,
13
+ autoresize,
14
+ placeholder,
15
+ resize,
16
+ size,
17
+ ...textareaProps
18
+ })
19
+ });
20
+ });
21
+ BitkitTextArea.displayName = "BitkitTextArea";
22
+ //#endregion
23
+ export { BitkitTextArea as default };
24
+
25
+ //# sourceMappingURL=BitkitTextArea.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BitkitTextArea.js","names":[],"sources":["../../../lib/components/BitkitTextArea/BitkitTextArea.tsx"],"sourcesContent":["import { Textarea, type TextareaProps } from '@chakra-ui/react/textarea';\nimport { forwardRef } from 'react';\n\nimport BitkitField, { type BitkitFieldProps } from '../BitkitField/BitkitField';\n\nexport interface BitkitTextAreaProps extends Omit<BitkitFieldProps, 'children' | 'state'> {\n autoresize?: boolean;\n placeholder?: string;\n resize?: 'none' | 'both' | 'horizontal' | 'vertical';\n size?: 'md' | 'lg';\n state?: 'disabled' | 'error' | 'readOnly' | 'warning';\n textareaProps?: TextareaProps;\n}\n\nconst BitkitTextArea = forwardRef<HTMLTextAreaElement, BitkitTextAreaProps>((props, ref) => {\n const { autoresize, placeholder, resize, size, state, textareaProps, ...fieldProps } = props;\n\n return (\n <BitkitField state={state} {...fieldProps}>\n <Textarea\n ref={ref}\n autoresize={autoresize}\n placeholder={placeholder}\n resize={resize}\n size={size}\n {...textareaProps}\n />\n </BitkitField>\n );\n});\n\nBitkitTextArea.displayName = 'BitkitTextArea';\n\nexport default BitkitTextArea;\n"],"mappings":";;;;;AAcA,IAAM,iBAAiB,YAAsD,OAAO,QAAQ;CAC1F,MAAM,EAAE,YAAY,aAAa,QAAQ,MAAM,OAAO,eAAe,GAAG,eAAe;AAEvF,QACE,oBAAC,aAAD;EAAoB;EAAO,GAAI;YAC7B,oBAAC,UAAD;GACO;GACO;GACC;GACL;GACF;GACN,GAAI;GACJ,CAAA;EACU,CAAA;EAEhB;AAEF,eAAe,cAAc"}
@@ -70,6 +70,7 @@ export { default as BitkitSwitch, type BitkitSwitchProps } from './BitkitSwitch'
70
70
  export { default as BitkitTabs } from './BitkitTabs/BitkitTabs';
71
71
  export { default as BitkitTag, type BitkitTagProps } from './BitkitTag/BitkitTag';
72
72
  export { default as BitkitTagsInput, type BitkitTagsInputProps } from './BitkitTagsInput/BitkitTagsInput';
73
+ export { default as BitkitTextArea, type BitkitTextAreaProps } from './BitkitTextArea/BitkitTextArea';
73
74
  export { default as BitkitTextInput, type BitkitTextInputProps } from './BitkitTextInput/BitkitTextInput';
74
75
  export { type BitkitToastProps, default as createBitkitToast } from './BitkitToast/BitkitToast';
75
76
  export { default as BitkitToggleButton, type BitkitToggleButtonProps } from './BitkitToggleButton/BitkitToggleButton';
package/dist/main.js CHANGED
@@ -352,10 +352,11 @@ import BitkitStepsCard_default from "./components/BitkitStepsCard/BitkitStepsCar
352
352
  import BitkitSwitch from "./components/BitkitSwitch/BitkitSwitch.js";
353
353
  import BitkitTabs from "./components/BitkitTabs/BitkitTabs.js";
354
354
  import BitkitTagsInput from "./components/BitkitTagsInput/BitkitTagsInput.js";
355
+ import BitkitTextArea from "./components/BitkitTextArea/BitkitTextArea.js";
355
356
  import BitkitTextInput from "./components/BitkitTextInput/BitkitTextInput.js";
356
357
  import createBitkitToast from "./components/BitkitToast/BitkitToast.js";
357
358
  import BitkitToggleButton from "./components/BitkitToggleButton/BitkitToggleButton.js";
358
359
  import BitkitTreeView, { createTreeCollection } from "./components/BitkitTreeView/BitkitTreeView.js";
359
360
  import bitkitTheme from "./theme/index.js";
360
361
  import Provider from "./providers/BitkitProvider.js";
361
- export { BitkitAccordion, BitkitActionBar, BitkitAlert, BitkitAvatar, BitkitBadge, BitkitButton, BitkitCalendar, BitkitCard, BitkitCheckbox, BitkitCheckboxGroup, BitkitCloseButton, BitkitCodeSnippet, BitkitCollapsible, BitkitColorButton, BitkitCombobox, BitkitControlButton, BitkitDataWidget, BitkitDefinitionTooltip, BitkitDialog_default as BitkitDialog, BitkitDialogBody, BitkitDialogButtons, BitkitDialogContent, BitkitDialogHeader, BitkitDialogRoot, BitkitDialogStep, BitkitDraggableCard, BitkitDrawer, BitkitEmptyState, BitkitExpandableCard, BitkitField, BitkitFileInput, BitkitGroupHeading, BitkitIconButton, BitkitInlineLoading, BitkitLabel, BitkitLabelTooltip, BitkitLabeledData, BitkitLink, BitkitLinkButton, BitkitList_default as BitkitList, BitkitMarkdown, BitkitMarkdownCard, BitkitMultiselect, BitkitMultiselectMenu, BitkitNativeSelect, BitkitNoteCard, BitkitNumberInput, BitkitOverflowContent, BitkitOverflowTooltip, BitkitPageFooter_default as BitkitPageFooter, BitkitPagination, BitkitPaginationLoadMore, Provider as BitkitProvider, BitkitRadio, BitkitRadioGroup, BitkitRibbon, BitkitSearchInput, BitkitSectionHeading, BitkitSegmentedControl_default as BitkitSegmentedControl, BitkitSelect, BitkitSelectMenu, BitkitSelectableTag_default as BitkitSelectableTag, BitkitSettingsCard_default as BitkitSettingsCard, BitkitSidebar_default as BitkitSidebar, BitkitSpinner, BitkitSplitButton_default as BitkitSplitButton, BitkitStat, BitkitSteps_default as BitkitSteps, BitkitStepsCard_default as BitkitStepsCard, BitkitSwitch, BitkitTabs, BitkitTag, BitkitTagsInput, BitkitTextInput, BitkitToggleButton, BitkitTooltip, BitkitTreeView, IconAbortCircle, IconAbortCircleFilled, IconAddons, IconAgent, IconAnchor, IconAndroid, IconApp, IconAppSettings, IconAppStore, IconAppStoreColor, IconApple, IconArchive, IconArchiveDelete, IconArchiveRestore, IconArrowBackAndDown, IconArrowBackAndUp, IconArrowDown, IconArrowForwardAndDown, IconArrowForwardAndUp, IconArrowLeft, IconArrowNortheast, IconArrowNorthwest, IconArrowRight, IconArrowUp, IconArrowsHorizontal, IconArrowsVertical, IconAutomation, IconAws, IconAwsColor, IconBadge3RdParty, IconBadgeBitrise, IconBadgeUpgrade, IconBadgeVersionOk, IconBazel, IconBell, IconBitbot, IconBitbotError, IconBitbucket, IconBitbucketColor, IconBitbucketNeutral, IconBitbucketWhite, IconBlockCircle, IconBook, IconBoxArrowDown, IconBoxDot, IconBoxLinesOverflow, IconBoxLinesWrap, IconBranch, IconBrowserstackColor, IconBug, IconBuild, IconBuildCache, IconBuildCacheFilled, IconBuildEnvSetup, IconCalendar, IconChangePlan, IconChat, IconCheck, IconCheckCircle, IconCheckCircleFilled, IconChevronDown, IconChevronLeft, IconChevronRight, IconChevronUp, IconCi, IconCiFilled, IconCircle, IconCircleDashed, IconCircleHalfFilled, IconClaude, IconClaudeColor, IconClock, IconCode, IconCodePush, IconCodeSigning, IconCoffee, IconCommit, IconConfigure, IconConnectedAccounts, IconContainer, IconCopy, IconCordova, IconCpu, IconCreditcard, IconCredits, IconCross, IconCrossCircle, IconCrossCircleFilled, IconCrown, IconCycle, IconDashboard, IconDashboardFilled, IconDeployment, IconDetails, IconDoc, IconDollar, IconDot, IconDotnet, IconDotnetColor, IconDotnetText, IconDotnetTextColor, IconDoubleCircle, IconDownload, IconDragHandle, IconEc2Ami, IconEnterprise, IconErrorCircle, IconErrorCircleFilled, IconExpand, IconExtraBuildCapacity, IconEye, IconEyeSlash, IconFastlane, IconFileDoc, IconFilePdf, IconFilePlist, IconFileZip, IconFilter, IconFlag, IconFlutter, IconFolder, IconFullscreen, IconFullscreenExit, IconGauge, IconGit, IconGithub, IconGitlab, IconGitlabColor, IconGitlabWhite, IconGlobe, IconGo, IconGoogleColor, IconGooglePlay, IconGooglePlayColor, IconGradle, IconGroup, IconHashtag, IconHeadset, IconHeart, IconHistory, IconHourglass, IconImage, IconInfoCircle, IconInfoCircleFilled, IconInsights, IconInsightsFilled, IconInstall, IconInteraction, IconInvoice, IconIonic, IconJapanese, IconJava, IconJavaColor, IconJavaDuke, IconJavaDukeColor, IconKey, IconKotlin, IconKotlinColor, IconKotlinWhite, IconLaptop, IconLaunchdarkly, IconLegacyApp, IconLightbulb, IconLink, IconLinux, IconLock, IconLockOpen, IconLogin, IconLogout, IconMacos, IconMagicWand, IconMagnifier, IconMail, IconMedal, IconMemory, IconMenuGrid, IconMenuHamburger, IconMessage, IconMessageAlert, IconMessageQuestion, IconMicrophone, IconMinus, IconMinusCircle, IconMinusCircleFilled, IconMobile, IconMobileLandscape, IconMonitorChart, IconMoreHorizontal, IconMoreVertical, IconNews, IconNextjs, IconNodejs, IconOpenInNew, IconOther, IconOutsideContributor, IconOverview, IconPause, IconPencil, IconPeople, IconPercent, IconPerson, IconPersonWithDesk, IconPlay, IconPlus, IconPlusCircle, IconPlusCircleFilled, IconPower, IconProject, IconProjectSettings, IconPull, IconPush, IconPuzzle, IconPython, IconPythonColor, IconQuestionCircle, IconQuestionCircleFilled, IconReact, IconRefresh, IconRegex, IconRelease, IconReleaseFilled, IconRemoteAccess, IconReplace, IconResponsiveness, IconReviewerApproved, IconReviewerAssigned, IconReviewerRejected, IconRuby, IconRubyColor, IconSave, IconSecurityShield, IconSettings, IconSettingsFilled, IconShuffle, IconSiren, IconSkip, IconSkipCircle, IconSkipCircleFilled, IconSlack, IconSlackColor, IconSparkle, IconSparkleFilled, IconSpinnerOnDisabled, IconSpinnerPurple, IconSpinnerPurpleDouble, IconSpinnerWhite, IconStability, IconStack, IconStar, IconStep, IconStop, IconStopwatch, IconTag, IconTasks, IconTeams, IconTeamsColor, IconTemplateCode, IconTerminal, IconTestQuarantine, IconThemeDarkToggle, IconThumbDown, IconThumbUp, IconTools, IconTrash, IconTrigger, IconUbuntu, IconUbuntuColor, IconUnity3D, IconUpload, IconValidateShield, IconVideo, IconWarning, IconWarningYellow, IconWebUi, IconWebhooks, IconWorkflow, IconWorkflowFlow, IconXTwitter, IconXamarin, IconXcode, bitkitIcon, bitkitTheme as bitriseTheme, createBitkitToast, createTreeCollection };
362
+ export { BitkitAccordion, BitkitActionBar, BitkitAlert, BitkitAvatar, BitkitBadge, BitkitButton, BitkitCalendar, BitkitCard, BitkitCheckbox, BitkitCheckboxGroup, BitkitCloseButton, BitkitCodeSnippet, BitkitCollapsible, BitkitColorButton, BitkitCombobox, BitkitControlButton, BitkitDataWidget, BitkitDefinitionTooltip, BitkitDialog_default as BitkitDialog, BitkitDialogBody, BitkitDialogButtons, BitkitDialogContent, BitkitDialogHeader, BitkitDialogRoot, BitkitDialogStep, BitkitDraggableCard, BitkitDrawer, BitkitEmptyState, BitkitExpandableCard, BitkitField, BitkitFileInput, BitkitGroupHeading, BitkitIconButton, BitkitInlineLoading, BitkitLabel, BitkitLabelTooltip, BitkitLabeledData, BitkitLink, BitkitLinkButton, BitkitList_default as BitkitList, BitkitMarkdown, BitkitMarkdownCard, BitkitMultiselect, BitkitMultiselectMenu, BitkitNativeSelect, BitkitNoteCard, BitkitNumberInput, BitkitOverflowContent, BitkitOverflowTooltip, BitkitPageFooter_default as BitkitPageFooter, BitkitPagination, BitkitPaginationLoadMore, Provider as BitkitProvider, BitkitRadio, BitkitRadioGroup, BitkitRibbon, BitkitSearchInput, BitkitSectionHeading, BitkitSegmentedControl_default as BitkitSegmentedControl, BitkitSelect, BitkitSelectMenu, BitkitSelectableTag_default as BitkitSelectableTag, BitkitSettingsCard_default as BitkitSettingsCard, BitkitSidebar_default as BitkitSidebar, BitkitSpinner, BitkitSplitButton_default as BitkitSplitButton, BitkitStat, BitkitSteps_default as BitkitSteps, BitkitStepsCard_default as BitkitStepsCard, BitkitSwitch, BitkitTabs, BitkitTag, BitkitTagsInput, BitkitTextArea, BitkitTextInput, BitkitToggleButton, BitkitTooltip, BitkitTreeView, IconAbortCircle, IconAbortCircleFilled, IconAddons, IconAgent, IconAnchor, IconAndroid, IconApp, IconAppSettings, IconAppStore, IconAppStoreColor, IconApple, IconArchive, IconArchiveDelete, IconArchiveRestore, IconArrowBackAndDown, IconArrowBackAndUp, IconArrowDown, IconArrowForwardAndDown, IconArrowForwardAndUp, IconArrowLeft, IconArrowNortheast, IconArrowNorthwest, IconArrowRight, IconArrowUp, IconArrowsHorizontal, IconArrowsVertical, IconAutomation, IconAws, IconAwsColor, IconBadge3RdParty, IconBadgeBitrise, IconBadgeUpgrade, IconBadgeVersionOk, IconBazel, IconBell, IconBitbot, IconBitbotError, IconBitbucket, IconBitbucketColor, IconBitbucketNeutral, IconBitbucketWhite, IconBlockCircle, IconBook, IconBoxArrowDown, IconBoxDot, IconBoxLinesOverflow, IconBoxLinesWrap, IconBranch, IconBrowserstackColor, IconBug, IconBuild, IconBuildCache, IconBuildCacheFilled, IconBuildEnvSetup, IconCalendar, IconChangePlan, IconChat, IconCheck, IconCheckCircle, IconCheckCircleFilled, IconChevronDown, IconChevronLeft, IconChevronRight, IconChevronUp, IconCi, IconCiFilled, IconCircle, IconCircleDashed, IconCircleHalfFilled, IconClaude, IconClaudeColor, IconClock, IconCode, IconCodePush, IconCodeSigning, IconCoffee, IconCommit, IconConfigure, IconConnectedAccounts, IconContainer, IconCopy, IconCordova, IconCpu, IconCreditcard, IconCredits, IconCross, IconCrossCircle, IconCrossCircleFilled, IconCrown, IconCycle, IconDashboard, IconDashboardFilled, IconDeployment, IconDetails, IconDoc, IconDollar, IconDot, IconDotnet, IconDotnetColor, IconDotnetText, IconDotnetTextColor, IconDoubleCircle, IconDownload, IconDragHandle, IconEc2Ami, IconEnterprise, IconErrorCircle, IconErrorCircleFilled, IconExpand, IconExtraBuildCapacity, IconEye, IconEyeSlash, IconFastlane, IconFileDoc, IconFilePdf, IconFilePlist, IconFileZip, IconFilter, IconFlag, IconFlutter, IconFolder, IconFullscreen, IconFullscreenExit, IconGauge, IconGit, IconGithub, IconGitlab, IconGitlabColor, IconGitlabWhite, IconGlobe, IconGo, IconGoogleColor, IconGooglePlay, IconGooglePlayColor, IconGradle, IconGroup, IconHashtag, IconHeadset, IconHeart, IconHistory, IconHourglass, IconImage, IconInfoCircle, IconInfoCircleFilled, IconInsights, IconInsightsFilled, IconInstall, IconInteraction, IconInvoice, IconIonic, IconJapanese, IconJava, IconJavaColor, IconJavaDuke, IconJavaDukeColor, IconKey, IconKotlin, IconKotlinColor, IconKotlinWhite, IconLaptop, IconLaunchdarkly, IconLegacyApp, IconLightbulb, IconLink, IconLinux, IconLock, IconLockOpen, IconLogin, IconLogout, IconMacos, IconMagicWand, IconMagnifier, IconMail, IconMedal, IconMemory, IconMenuGrid, IconMenuHamburger, IconMessage, IconMessageAlert, IconMessageQuestion, IconMicrophone, IconMinus, IconMinusCircle, IconMinusCircleFilled, IconMobile, IconMobileLandscape, IconMonitorChart, IconMoreHorizontal, IconMoreVertical, IconNews, IconNextjs, IconNodejs, IconOpenInNew, IconOther, IconOutsideContributor, IconOverview, IconPause, IconPencil, IconPeople, IconPercent, IconPerson, IconPersonWithDesk, IconPlay, IconPlus, IconPlusCircle, IconPlusCircleFilled, IconPower, IconProject, IconProjectSettings, IconPull, IconPush, IconPuzzle, IconPython, IconPythonColor, IconQuestionCircle, IconQuestionCircleFilled, IconReact, IconRefresh, IconRegex, IconRelease, IconReleaseFilled, IconRemoteAccess, IconReplace, IconResponsiveness, IconReviewerApproved, IconReviewerAssigned, IconReviewerRejected, IconRuby, IconRubyColor, IconSave, IconSecurityShield, IconSettings, IconSettingsFilled, IconShuffle, IconSiren, IconSkip, IconSkipCircle, IconSkipCircleFilled, IconSlack, IconSlackColor, IconSparkle, IconSparkleFilled, IconSpinnerOnDisabled, IconSpinnerPurple, IconSpinnerPurpleDouble, IconSpinnerWhite, IconStability, IconStack, IconStar, IconStep, IconStop, IconStopwatch, IconTag, IconTasks, IconTeams, IconTeamsColor, IconTemplateCode, IconTerminal, IconTestQuarantine, IconThemeDarkToggle, IconThumbDown, IconThumbUp, IconTools, IconTrash, IconTrigger, IconUbuntu, IconUbuntuColor, IconUnity3D, IconUpload, IconValidateShield, IconVideo, IconWarning, IconWarningYellow, IconWebUi, IconWebhooks, IconWorkflow, IconWorkflowFlow, IconXTwitter, IconXamarin, IconXcode, bitkitIcon, bitkitTheme as bitriseTheme, createBitkitToast, createTreeCollection };
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@bitrise/bitkit-v2",
3
3
  "private": false,
4
- "version": "0.3.206",
4
+ "version": "0.3.208",
5
5
  "description": "Bitrise Design System Components built with Chakra UI V3",
6
6
  "keywords": [
7
7
  "react",
@@ -13,6 +13,7 @@
13
13
  "type": "module",
14
14
  "files": [
15
15
  "dist",
16
+ "scripts/postinstall.cjs",
16
17
  "README.md",
17
18
  "package.json"
18
19
  ],
@@ -47,7 +48,9 @@
47
48
  "pregenerate:icons": "figma-export use-config",
48
49
  "generate:icons": "tsx ./scripts/generateIconComponents.ts",
49
50
  "postgenerate:icons": "eslint ./lib/icons --fix",
50
- "prepare": "npm run theme:generate-types"
51
+ "prepare": "npm run theme:generate-types",
52
+ "prepublishOnly": "npm run build",
53
+ "postinstall": "node ./scripts/postinstall.cjs"
51
54
  },
52
55
  "peerDependencies": {
53
56
  "react": ">=18",
@@ -55,7 +58,6 @@
55
58
  },
56
59
  "devDependencies": {
57
60
  "@bitrise/eslint-plugin": "^4.1.0",
58
- "@chakra-ui/cli": "^3.35.0",
59
61
  "@figma-export/cli": "^6.4.0",
60
62
  "@figma-export/output-components-as-svg": "^6.4.0",
61
63
  "@figma-export/transform-svg-with-svgo": "^6.4.0",
@@ -68,7 +70,6 @@
68
70
  "@types/react": "^18.3.28",
69
71
  "@types/react-dom": "^18.3.7",
70
72
  "@vitejs/plugin-react": "^6.0.1",
71
- "es-toolkit": "^1.46.0",
72
73
  "react": "^18.3.1",
73
74
  "react-dom": "^18.3.1",
74
75
  "release-it": "^20.0.1",
@@ -80,11 +81,13 @@
80
81
  "vite-plugin-svgr": "^5.2.0"
81
82
  },
82
83
  "dependencies": {
84
+ "@chakra-ui/cli": "^3.35.0",
83
85
  "@chakra-ui/react": "^3.35.0",
84
86
  "@emotion/react": "^11.14.0",
85
87
  "@emotion/styled": "^11.14.1",
86
88
  "@fontsource-variable/figtree": "^5.2.10",
87
89
  "@fontsource-variable/source-code-pro": "^5.2.7",
90
+ "es-toolkit": "^1.46.0",
88
91
  "react-markdown": "^10.1.0"
89
92
  },
90
93
  "overrides": {
@@ -0,0 +1,38 @@
1
+ #!/usr/bin/env node
2
+
3
+ const { spawnSync } = require('node:child_process');
4
+ const { existsSync } = require('node:fs');
5
+ const { dirname, resolve } = require('node:path');
6
+
7
+ const packageRoot = resolve(__dirname, '..');
8
+ const themeEntry = resolve(packageRoot, 'dist/theme/index.js');
9
+
10
+ if (!existsSync(themeEntry)) {
11
+ process.exit(0);
12
+ }
13
+
14
+ let cliBin;
15
+ try {
16
+ const cliPkg = require.resolve('@chakra-ui/cli/package.json');
17
+ cliBin = resolve(dirname(cliPkg), 'bin/index.js');
18
+ } catch {
19
+ console.warn(
20
+ '[@bitrise/bitkit-v2] @chakra-ui/cli not found — Chakra theme typings will not be generated. ' +
21
+ 'Run `npx chakra typegen node_modules/@bitrise/bitkit-v2/dist/theme/index.js` manually.',
22
+ );
23
+ process.exit(0);
24
+ }
25
+
26
+ const result = spawnSync(process.execPath, [cliBin, 'typegen', themeEntry], {
27
+ cwd: packageRoot,
28
+ stdio: 'inherit',
29
+ });
30
+
31
+ if (result.status !== 0) {
32
+ console.warn(
33
+ '[@bitrise/bitkit-v2] Chakra typegen failed — bitkit-specific theme types are unavailable. ' +
34
+ 'You can retry manually with `npx chakra typegen node_modules/@bitrise/bitkit-v2/dist/theme/index.js`.',
35
+ );
36
+ }
37
+
38
+ process.exit(0);