chore: update dependencies and add global styles for Primer React
- Updated @primer/react to version 37.30.0 and added @primer/primitives and @primer/view-components. - Introduced a new global CSS file for consolidated Primer React styles. - Added empty stubs for deprecated and removed components in the view-components library. - Updated the _app.tsx file to include the new global CSS. - Changed the import of Banner component from @primer/react/drafts to @primer/react/experimental in SearchOverlay.
This commit is contained in:
@@ -36,6 +36,8 @@ export default {
|
||||
'color-4-api',
|
||||
'mixed-decls',
|
||||
],
|
||||
// Allow resolving our local stubs for removed @primer/view-components sass partials
|
||||
includePaths: [path.join(process.cwd(), 'src/frame/stylesheets/vendor')],
|
||||
},
|
||||
// Don't use automatic Next.js logging in dev unless the log level is `debug` or higher
|
||||
// See `src/observability/logger/README.md` for log levels
|
||||
@@ -53,6 +55,16 @@ export default {
|
||||
config.experiments = config.experiments || {}
|
||||
config.experiments.topLevelAwait = true
|
||||
config.resolve.fallback = { fs: false, async_hooks: false }
|
||||
// Alias missing Ruby view-components SCSS imports to local empty stubs
|
||||
config.resolve.alias = {
|
||||
...(config.resolve.alias || {}),
|
||||
'@primer/view-components': path.join(
|
||||
process.cwd(),
|
||||
'src/frame/stylesheets/vendor/@primer/view-components',
|
||||
),
|
||||
// Force ESM build of @primer/react so restored TabNav export is used and to avoid CJS CSS requires
|
||||
'@primer/react$': path.join(process.cwd(), 'node_modules/@primer/react/lib-esm/index.js'),
|
||||
}
|
||||
return config
|
||||
},
|
||||
|
||||
|
||||
8881
package-lock.json
generated
8881
package-lock.json
generated
File diff suppressed because it is too large
Load Diff
@@ -257,7 +257,9 @@
|
||||
"@primer/live-region-element": "^0.7.2",
|
||||
"@primer/octicons": "^19.14.0",
|
||||
"@primer/octicons-react": "^19.14.0",
|
||||
"@primer/react": "36.27.0",
|
||||
"@primer/primitives": "^10.7.0",
|
||||
"@primer/react": "^37.30.0",
|
||||
"@primer/view-components": "^0.43.6",
|
||||
"accept-language-parser": "^1.5.0",
|
||||
"ajv": "^8.17.1",
|
||||
"ajv-errors": "^3.0.0",
|
||||
@@ -311,8 +313,8 @@
|
||||
"ora": "^8.0.1",
|
||||
"parse5": "7.1.2",
|
||||
"quick-lru": "7.0.1",
|
||||
"react": "18.3.1",
|
||||
"react-dom": "18.3.1",
|
||||
"react": "^18.3.1",
|
||||
"react-dom": "^18.3.1",
|
||||
"react-markdown": "^10.1.0",
|
||||
"rehype-highlight": "^7.0.2",
|
||||
"rehype-raw": "^7.0.0",
|
||||
|
||||
83
src/frame/stylesheets/primer-react-global.css
Normal file
83
src/frame/stylesheets/primer-react-global.css
Normal file
@@ -0,0 +1,83 @@
|
||||
/* Consolidated Primer React hashed component CSS imported once at app root */
|
||||
@import '../../../node_modules/@primer/react/lib-esm/ActionList/ActionList-167cf6c7.css';
|
||||
@import '../../../node_modules/@primer/react/lib-esm/ActionList/Group-2c8b5711.css';
|
||||
@import '../../../node_modules/@primer/react/lib-esm/ActionList/Heading-b9360636.css';
|
||||
@import '../../../node_modules/@primer/react/lib-esm/ActionBar/ActionBar-e6a5d54e.css';
|
||||
@import '../../../node_modules/@primer/react/lib-esm/ActionMenu/ActionMenu-5fe972e2.css';
|
||||
@import '../../../node_modules/@primer/react/lib-esm/AnchoredOverlay/AnchoredOverlay-73c1b2d1.css';
|
||||
@import '../../../node_modules/@primer/react/lib-esm/Autocomplete/AutocompleteMenu-7f135c03.css';
|
||||
@import '../../../node_modules/@primer/react/lib-esm/Autocomplete/AutocompleteOverlay-d99d778c.css';
|
||||
@import '../../../node_modules/@primer/react/lib-esm/Avatar/Avatar-61b19061.css';
|
||||
@import '../../../node_modules/@primer/react/lib-esm/AvatarPair/AvatarPair-68990abe.css';
|
||||
@import '../../../node_modules/@primer/react/lib-esm/AvatarStack/AvatarStack-f0712fca.css';
|
||||
@import '../../../node_modules/@primer/react/lib-esm/Banner/Banner-a1837714.css';
|
||||
@import '../../../node_modules/@primer/react/lib-esm/SideNav-baa2364d.css';
|
||||
@import '../../../node_modules/@primer/react/lib-esm/BaseStyles-79fd37c4.css';
|
||||
@import '../../../node_modules/@primer/react/lib-esm/Blankslate/Blankslate-2be5efdc.css';
|
||||
@import '../../../node_modules/@primer/react/lib-esm/BranchName/BranchName-2fad4f4b.css';
|
||||
@import '../../../node_modules/@primer/react/lib-esm/Breadcrumbs/Breadcrumbs-99078f17.css';
|
||||
@import '../../../node_modules/@primer/react/lib-esm/Button/ButtonBase-0a7871f4.css';
|
||||
@import '../../../node_modules/@primer/react/lib-esm/ButtonGroup/ButtonGroup-10292330.css';
|
||||
@import '../../../node_modules/@primer/react/lib-esm/Checkbox/Checkbox-2aef6693.css';
|
||||
@import '../../../node_modules/@primer/react/lib-esm/Checkbox/shared-edc41e16.css';
|
||||
@import '../../../node_modules/@primer/react/lib-esm/ConfirmationDialog/ConfirmationDialog-de0401ff.css';
|
||||
@import '../../../node_modules/@primer/react/lib-esm/CounterLabel/CounterLabel-44fb5d16.css';
|
||||
@import '../../../node_modules/@primer/react/lib-esm/DataTable/Pagination-b6f8418c.css';
|
||||
@import '../../../node_modules/@primer/react/lib-esm/DataTable/Table-87f4043f.css';
|
||||
@import '../../../node_modules/@primer/react/lib-esm/Details/Details-8093044f.css';
|
||||
@import '../../../node_modules/@primer/react/lib-esm/Dialog/Dialog-8a809d11.css';
|
||||
@import '../../../node_modules/@primer/react/lib-esm/FilteredActionList/FilteredActionList-c11b6d2f.css';
|
||||
@import '../../../node_modules/@primer/react/lib-esm/FilteredActionList/FilteredActionListLoaders-6f14c45b.css';
|
||||
@import '../../../node_modules/@primer/react/lib-esm/Flash/Flash-a3596568.css';
|
||||
@import '../../../node_modules/@primer/react/lib-esm/FormControl/FormControl-fa33984d.css';
|
||||
@import '../../../node_modules/@primer/react/lib-esm/FormControl/FormControlCaption-f58db5f7.css';
|
||||
@import '../../../node_modules/@primer/react/lib-esm/Header/Header-aff64597.css';
|
||||
@import '../../../node_modules/@primer/react/lib-esm/Heading/Heading-26b4879b.css';
|
||||
@import '../../../node_modules/@primer/react/lib-esm/Hidden/Hidden-b3896306.css';
|
||||
@import '../../../node_modules/@primer/react/lib-esm/InlineMessage/InlineMessage-80d97643.css';
|
||||
@import '../../../node_modules/@primer/react/lib-esm/Label/Label-7904957c.css';
|
||||
@import '../../../node_modules/@primer/react/lib-esm/Overlay/Overlay-e34594a5.css';
|
||||
@import '../../../node_modules/@primer/react/lib-esm/PageLayout/PageLayout-8a294e74.css';
|
||||
@import '../../../node_modules/@primer/react/lib-esm/Pagination/Pagination-e98833e8.css';
|
||||
@import '../../../node_modules/@primer/react/lib-esm/Popover/Popover-b609f443.css';
|
||||
@import '../../../node_modules/@primer/react/lib-esm/ProgressBar/ProgressBar-430cdef7.css';
|
||||
@import '../../../node_modules/@primer/react/lib-esm/Radio/Radio-b2a92b7d.css';
|
||||
@import '../../../node_modules/@primer/react/lib-esm/KeybindingHint/KeybindingHint-0856c11b.css';
|
||||
@import '../../../node_modules/@primer/react/lib-esm/Link/Link-948b910e.css';
|
||||
@import '../../../node_modules/@primer/react/lib-esm/PageHeader/PageHeader-4e1d8fee.css';
|
||||
@import '../../../node_modules/@primer/react/lib-esm/SegmentedControl/SegmentedControl-459caec8.css';
|
||||
@import '../../../node_modules/@primer/react/lib-esm/Skeleton/SkeletonBox-248bfcc3.css';
|
||||
@import '../../../node_modules/@primer/react/lib-esm/SkeletonAvatar/SkeletonAvatar-e00fff32.css';
|
||||
@import '../../../node_modules/@primer/react/lib-esm/SkeletonText/SkeletonText-5cf908c1.css';
|
||||
@import '../../../node_modules/@primer/react/lib-esm/Spinner/Spinner-2dbceeca.css';
|
||||
@import '../../../node_modules/@primer/react/lib-esm/Stack/Stack-9e7b935d.css';
|
||||
@import '../../../node_modules/@primer/react/lib-esm/SubNav/SubNav-88128e5c.css';
|
||||
@import '../../../node_modules/@primer/react/lib-esm/TabNav/TabNav-83c6145e.css';
|
||||
@import '../../../node_modules/@primer/react/lib-esm/Text/Text-ca7603b7.css';
|
||||
@import '../../../node_modules/@primer/react/lib-esm/TextInputWithTokens/TextInputWithTokens-fb9b5109.css';
|
||||
@import '../../../node_modules/@primer/react/lib-esm/Textarea/TextArea-54099020.css';
|
||||
@import '../../../node_modules/@primer/react/lib-esm/Timeline/Timeline-e8e88a13.css';
|
||||
@import '../../../node_modules/@primer/react/lib-esm/Token/Token-942271b0.css';
|
||||
@import '../../../node_modules/@primer/react/lib-esm/Token/IssueLabelToken-99c9b914.css';
|
||||
@import '../../../node_modules/@primer/react/lib-esm/Token/TokenBase-0386597b.css';
|
||||
@import '../../../node_modules/@primer/react/lib-esm/Token/AvatarToken-ff45cc85.css';
|
||||
@import '../../../node_modules/@primer/react/lib-esm/Token/_RemoveTokenButton-d7f5985b.css';
|
||||
@import '../../../node_modules/@primer/react/lib-esm/Token/_TokenTextContainer-2ab10996.css';
|
||||
@import '../../../node_modules/@primer/react/lib-esm/VisuallyHidden/VisuallyHidden-ce2a3270.css';
|
||||
@import '../../../node_modules/@primer/react/lib-esm/experimental/IssueLabel/IssueLabel-5507fbf3.css';
|
||||
@import '../../../node_modules/@primer/react/lib-esm/experimental/UnderlinePanels/UnderlinePanels-e4b325b9.css';
|
||||
@import '../../../node_modules/@primer/react/lib-esm/experimental/SelectPanel2/SelectPanel-e919f619.css';
|
||||
@import '../../../node_modules/@primer/react/lib-esm/internal/components/ButtonReset-904f2483.css';
|
||||
@import '../../../node_modules/@primer/react/lib-esm/internal/components/CheckboxOrRadioGroup/CheckboxOrRadioGroup-e38b5339.css';
|
||||
@import '../../../node_modules/@primer/react/lib-esm/internal/components/InputLabel-eb267c58.css';
|
||||
@import '../../../node_modules/@primer/react/lib-esm/internal/components/InputValidation-057236a4.css';
|
||||
@import '../../../node_modules/@primer/react/lib-esm/internal/components/TextInputInnerAction-477e9b99.css';
|
||||
@import '../../../node_modules/@primer/react/lib-esm/internal/components/TextInputInnerVisualSlot-4a14b955.css';
|
||||
@import '../../../node_modules/@primer/react/lib-esm/internal/components/TextInputWrapper-889df5d3.css';
|
||||
@import '../../../node_modules/@primer/react/lib-esm/internal/components/UnderlineTabbedInterface-addc90dd.css';
|
||||
@import '../../../node_modules/@primer/react/lib-esm/internal/components/UnstyledTextInput-8270f063.css';
|
||||
@import '../../../node_modules/@primer/react/lib-esm/TooltipV2/Tooltip-5a80d7b2.css';
|
||||
@import '../../../node_modules/@primer/react/lib-esm/TreeView/TreeView-cd08cabc.css';
|
||||
@import '../../../node_modules/@primer/react/lib-esm/Truncate/Truncate-030d5f52.css';
|
||||
@import '../../../node_modules/@primer/react/lib-esm/Select/Select-ab428dc7.css';
|
||||
@import '../../../node_modules/@primer/react/lib-esm/SelectPanel/SelectPanel-06900070.css';
|
||||
1
src/frame/stylesheets/vendor/@primer/view-components/app/components/primer/_truncate.scss
vendored
Normal file
1
src/frame/stylesheets/vendor/@primer/view-components/app/components/primer/_truncate.scss
vendored
Normal file
@@ -0,0 +1 @@
|
||||
// Empty stub for removed @primer/view-components truncate partial
|
||||
@@ -0,0 +1 @@
|
||||
// Empty stub for alpha dialog partial
|
||||
@@ -0,0 +1 @@
|
||||
// Stub for deprecated alpha layout.
|
||||
1
src/frame/stylesheets/vendor/@primer/view-components/app/components/primer/alpha/_menu.scss
vendored
Normal file
1
src/frame/stylesheets/vendor/@primer/view-components/app/components/primer/alpha/_menu.scss
vendored
Normal file
@@ -0,0 +1 @@
|
||||
// Stub for removed alpha menu view-component.
|
||||
@@ -0,0 +1 @@
|
||||
// Empty stub for alpha tab nav partial
|
||||
@@ -0,0 +1 @@
|
||||
// Stub for deprecated alpha text_field.
|
||||
@@ -0,0 +1 @@
|
||||
// Empty stub for alpha underline nav partial
|
||||
1
src/frame/stylesheets/vendor/@primer/view-components/app/components/primer/beta/_avatar.scss
vendored
Normal file
1
src/frame/stylesheets/vendor/@primer/view-components/app/components/primer/beta/_avatar.scss
vendored
Normal file
@@ -0,0 +1 @@
|
||||
// Empty stub for beta avatar partial
|
||||
@@ -0,0 +1,3 @@
|
||||
// Placeholder stub for deprecated Primer ViewComponents border_box import.
|
||||
// The original Ruby-based ViewComponent stylesheet is not needed in this
|
||||
// Next.js docs site build. This file intentionally left blank.
|
||||
@@ -0,0 +1 @@
|
||||
// Stub for deprecated breadcrumbs component. Intentionally empty.
|
||||
@@ -0,0 +1 @@
|
||||
// Empty stub for beta counter partial
|
||||
1
src/frame/stylesheets/vendor/@primer/view-components/app/components/primer/beta/_flash.scss
vendored
Normal file
1
src/frame/stylesheets/vendor/@primer/view-components/app/components/primer/beta/_flash.scss
vendored
Normal file
@@ -0,0 +1 @@
|
||||
// Empty stub for beta flash partial
|
||||
1
src/frame/stylesheets/vendor/@primer/view-components/app/components/primer/beta/_label.scss
vendored
Normal file
1
src/frame/stylesheets/vendor/@primer/view-components/app/components/primer/beta/_label.scss
vendored
Normal file
@@ -0,0 +1 @@
|
||||
// Empty stub for beta label partial
|
||||
1
src/frame/stylesheets/vendor/@primer/view-components/app/components/primer/beta/_link.scss
vendored
Normal file
1
src/frame/stylesheets/vendor/@primer/view-components/app/components/primer/beta/_link.scss
vendored
Normal file
@@ -0,0 +1 @@
|
||||
// Stub for deprecated beta link.
|
||||
@@ -0,0 +1 @@
|
||||
// Empty stub for beta popover partial
|
||||
1
src/frame/stylesheets/vendor/@primer/view-components/app/components/primer/beta/_state.scss
vendored
Normal file
1
src/frame/stylesheets/vendor/@primer/view-components/app/components/primer/beta/_state.scss
vendored
Normal file
@@ -0,0 +1 @@
|
||||
// Empty stub for beta state partial
|
||||
@@ -0,0 +1 @@
|
||||
// Empty stub for beta truncate partial
|
||||
@@ -1,3 +1,4 @@
|
||||
import '@/frame/stylesheets/index.scss'
|
||||
import '@/frame/stylesheets/primer-react-global.css'
|
||||
|
||||
export { default } from '@/frame/pages/app'
|
||||
|
||||
@@ -33,7 +33,7 @@ import {
|
||||
} from '../helpers/execute-search-actions'
|
||||
|
||||
import styles from './SearchOverlay.module.scss'
|
||||
import { Banner } from '@primer/react/drafts'
|
||||
import { Banner } from '@primer/react/experimental'
|
||||
import { useCombinedSearchResults } from '@/search/components/hooks/useAISearchAutocomplete'
|
||||
import { AskAIResults } from './AskAIResults'
|
||||
import { sendEvent, uuidv4 } from '@/events/components/events'
|
||||
|
||||
Reference in New Issue
Block a user