From 4b857abcaf282fd3ab03d51806cc6fd5e3b99c22 Mon Sep 17 00:00:00 2001 From: KJ Monahan Date: Mon, 24 Nov 2025 08:51:37 -0600 Subject: [PATCH 1/2] [153] Update path aliases to use ~ --- app/about/page.tsx | 2 +- app/layout.tsx | 26 +-- app/page.tsx | 10 +- plopfile.mjs | 212 ------------------ .../Constrain/Constrain.stories.tsx | 2 +- source/02-layouts/Constrain/constrainArgs.ts | 2 +- source/02-layouts/Footer/Footer.stories.tsx | 2 +- source/02-layouts/Footer/Footer.tsx | 2 +- source/02-layouts/Footer/footerArgs.ts | 2 +- source/02-layouts/Grid/Grid.stories.tsx | 2 +- source/02-layouts/Grid/gridArgs.ts | 2 +- source/02-layouts/Header/Header.stories.tsx | 2 +- source/02-layouts/Header/Header.tsx | 2 +- source/02-layouts/Header/headerArgs.ts | 2 +- .../InlineForm/InlineForm.stories.tsx | 2 +- .../02-layouts/InlineForm/inlineFormArgs.ts | 2 +- source/02-layouts/Main/Main.stories.tsx | 2 +- source/02-layouts/Main/Main.tsx | 2 +- source/02-layouts/Main/mainArgs.ts | 2 +- source/02-layouts/Media/mediaArgs.tsx | 2 +- .../ResponsiveTable/responsiveTableArgs.ts | 2 +- source/02-layouts/Section/Section.tsx | 2 +- source/02-layouts/Section/sectionArgs.ts | 2 +- source/02-layouts/Sidebar/Sidebar.stories.tsx | 2 +- source/02-layouts/Sidebar/sidebarArgs.ts | 2 +- .../SiteContainer/siteContainerArgs.tsx | 4 +- source/03-components/Accordion/Accordion.tsx | 2 +- .../03-components/Accordion/AccordionItem.tsx | 2 +- .../03-components/Accordion/accordionArgs.tsx | 2 +- source/03-components/Article/Article.tsx | 6 +- source/03-components/Article/articleArgs.tsx | 2 +- source/03-components/BackToTop/BackToTop.tsx | 2 +- .../03-components/BackToTop/backToTopArgs.ts | 2 +- .../03-components/Breadcrumb/Breadcrumb.tsx | 2 +- .../Breadcrumb/breadcrumbArgs.ts | 2 +- .../03-components/Button/Button.stories.tsx | 2 +- source/03-components/Button/buttonArgs.ts | 2 +- .../ButtonGroup/ButtonGroup.stories.tsx | 2 +- .../ButtonGroup/buttonGroupArgs.ts | 2 +- .../CallToAction/CallToAction.tsx | 2 +- .../CallToAction/callToActionArgs.tsx | 2 +- source/03-components/Card/Card.stories.tsx | 4 +- source/03-components/Card/Card.tsx | 6 +- source/03-components/Card/cardArgs.tsx | 2 +- .../03-components/Details/Details.stories.tsx | 2 +- source/03-components/Details/detailsArgs.tsx | 2 +- .../Fieldset/Fieldset.stories.tsx | 2 +- .../03-components/Fieldset/fieldsetArgs.tsx | 2 +- .../03-components/Figure/Figure.stories.tsx | 6 +- source/03-components/Figure/figureArgs.tsx | 2 +- .../FormItem/Checkboxes.stories.tsx | 6 +- .../FormItem/FormItem.stories.tsx | 2 +- .../03-components/FormItem/Input.stories.tsx | 2 +- .../03-components/FormItem/Radios.stories.tsx | 6 +- .../03-components/FormItem/Select.stories.tsx | 2 +- .../FormItem/Textarea.stories.tsx | 2 +- source/03-components/FormItem/checkboxArgs.ts | 2 +- source/03-components/FormItem/colorArgs.ts | 2 +- source/03-components/FormItem/dateArgs.ts | 2 +- source/03-components/FormItem/decimalArgs.ts | 2 +- source/03-components/FormItem/emailArgs.ts | 2 +- source/03-components/FormItem/fileArgs.ts | 2 +- source/03-components/FormItem/floatArgs.ts | 2 +- source/03-components/FormItem/integerArgs.ts | 2 +- source/03-components/FormItem/monthArgs.ts | 2 +- source/03-components/FormItem/passwordArgs.ts | 2 +- source/03-components/FormItem/radioArgs.ts | 2 +- source/03-components/FormItem/rangeArgs.ts | 2 +- source/03-components/FormItem/searchArgs.ts | 2 +- source/03-components/FormItem/selectArgs.tsx | 2 +- .../FormItem/selectWithGroups.tsx | 2 +- .../03-components/FormItem/telephoneArgs.ts | 2 +- source/03-components/FormItem/textArgs.ts | 2 +- source/03-components/FormItem/textareaArgs.ts | 2 +- source/03-components/FormItem/timeArgs.ts | 2 +- source/03-components/FormItem/urlArgs.ts | 2 +- source/03-components/FormItem/weekArgs.ts | 2 +- .../03-components/HeroBgImage/HeroBgImage.tsx | 2 +- .../HeroBgImage/heroBgImageArgs.tsx | 2 +- .../HeroInlineImage/HeroInlineImage.tsx | 2 +- .../HeroInlineImage/heroInlineImageArgs.tsx | 2 +- .../ImageTeaser/ImageTeaser.stories.tsx | 2 +- .../03-components/ImageTeaser/ImageTeaser.tsx | 2 +- .../ImageTeaser/imageTeaserArgs.tsx | 2 +- source/03-components/List/List.stories.tsx | 2 +- .../Menu/OverlayMenu/OverlayMenu.tsx | 6 +- .../Menu/OverlayMenu/overlayMenuArgs.ts | 2 +- .../Menu/ResponsiveMenu/ResponsiveMenu.tsx | 4 +- .../Menu/ResponsiveMenu/responsiveMenuArgs.ts | 2 +- source/03-components/Menu/menuArgs.ts | 2 +- source/03-components/Menu/menuFooterArgs.ts | 2 +- source/03-components/Modal/Modal.stories.tsx | 4 +- source/03-components/Modal/modalArgs.tsx | 2 +- .../PageTitle/PageTitle.stories.tsx | 2 +- .../03-components/PageTitle/pageTitleArgs.ts | 2 +- source/03-components/Pager/Pager.tsx | 10 +- source/03-components/Pager/pagerArgs.ts | 2 +- .../ReadMoreLink/ReadMoreLink.stories.tsx | 2 +- .../ReadMoreLink/readMoreLinkArgs.ts | 2 +- .../SiteName/SiteName.stories.tsx | 2 +- source/03-components/SiteName/siteNameArgs.ts | 2 +- source/03-components/Skiplink/Skiplink.tsx | 2 +- source/03-components/Skiplink/skiplinkArgs.ts | 2 +- .../StyledSelect/StyledSelect.stories.tsx | 2 +- .../StyledSelect/styledSelectArgs.ts | 2 +- .../StyledSelect/withGroupsArgs.ts | 2 +- source/03-components/Tag/Tag.stories.tsx | 2 +- source/03-components/Tag/tagArgs.ts | 2 +- .../03-components/TagList/TagList.stories.tsx | 2 +- source/03-components/TagList/TagList.tsx | 2 +- source/03-components/TagList/tagListArgs.ts | 2 +- source/03-components/Video/Video.stories.tsx | 2 +- source/03-components/Video/videoArgs.ts | 2 +- .../03-components/Wysiwyg/Wysiwyg.stories.tsx | 2 +- source/03-components/Wysiwyg/wysiwygArgs.tsx | 2 +- .../LandingPage/LandingPage.stories.tsx | 2 +- .../04-templates/LandingPage/LandingPage.tsx | 6 +- source/04-templates/Page/Page.stories.tsx | 2 +- source/04-templates/Page/Page.tsx | 6 +- source/05-pages/Homepage.stories.tsx | 14 +- source/05-pages/Page.stories.tsx | 10 +- source/05-pages/page-wrappers/default.tsx | 22 +- starterkits/drupal/app/[...slug]/page.tsx | 18 +- .../app/_components/content/ArticleCard.tsx | 4 +- .../app/_components/content/ArticleFull.tsx | 6 +- .../app/_components/content/BasicPageCard.tsx | 4 +- .../app/_components/content/BasicPageFull.tsx | 6 +- .../_components/content/LandingPageFull.tsx | 6 +- .../navigation/MenuItemFragment.ts | 2 +- .../paragraphs/AccordionParagraph.tsx | 6 +- .../paragraphs/AllParagraphsFragment.ts | 2 +- .../paragraphs/BlockEmbedParagraph.tsx | 2 +- .../paragraphs/CallToActionParagraph.tsx | 4 +- .../_components/paragraphs/CardParagraph.tsx | 4 +- .../_components/paragraphs/CardsParagraph.tsx | 8 +- .../paragraphs/DynamicCardParagraph.tsx | 2 +- .../_components/paragraphs/HeroParagraph.tsx | 4 +- .../paragraphs/WysiwygParagraph.tsx | 4 +- .../_components/paragraphs/mapParagraph.tsx | 2 +- starterkits/drupal/app/api/preview/route.ts | 2 +- starterkits/drupal/app/blog/[slug]/page.tsx | 14 +- starterkits/drupal/app/layout.tsx | 26 +-- starterkits/drupal/app/page.tsx | 10 +- .../examples/_components/content/FilmFull.tsx | 4 +- .../_components/content/FilmTeaser.tsx | 4 +- .../_components/layout/GlobalFooter.tsx | 8 +- .../_components/layout/GlobalHeader.tsx | 8 +- .../_components/navigation/FooterMenu.tsx | 8 +- .../_components/navigation/MainMenu.tsx | 8 +- .../_components/navigation/SocialMenu.tsx | 8 +- .../_components/paragraphs/QuoteParagraph.tsx | 4 +- .../paragraphs/TriviaParagraph.tsx | 4 +- .../_components/views/FilmsListing.tsx | 8 +- starterkits/drupal/examples/films/page.tsx | 4 +- starterkits/drupal/examples/layout.tsx | 16 +- starterkits/drupal/util/dataIsEntityType.ts | 4 +- starterkits/drupal/util/prepMenuItems.ts | 8 +- starterkits/wp/app/ClientProvider.tsx | 2 +- starterkits/wp/app/[slug]/getPageQuery.ts | 2 +- starterkits/wp/app/[slug]/page.tsx | 24 +- .../app/_components/content/BlocksViewer.tsx | 4 +- .../_components/content/CursorNavigation.tsx | 2 +- .../_components/content/FaustBlockViewer.tsx | 2 +- .../content/SiteSearch/SiteSearch.tsx | 8 +- .../wp/app/blog/[slug]/getPostQuery.ts | 2 +- starterkits/wp/app/blog/[slug]/page.tsx | 24 +- starterkits/wp/app/blog/page.tsx | 18 +- starterkits/wp/app/layout.tsx | 36 +-- starterkits/wp/app/not-found.tsx | 4 +- starterkits/wp/app/page.tsx | 28 +-- starterkits/wp/app/search/SearchForm.tsx | 6 +- starterkits/wp/app/search/page.tsx | 18 +- starterkits/wp/editor-styles/editor-styles.ts | 12 +- .../custom-block/AuthorBlock/index.tsx | 2 +- .../examples/making-client-queries/page.tsx | 2 +- starterkits/wp/util/acfTools.ts | 2 +- starterkits/wp/util/hasPreviewProp.ts | 2 +- starterkits/wp/util/stringParamsFromSearch.ts | 2 +- tsconfig.json | 20 +- 179 files changed, 417 insertions(+), 611 deletions(-) delete mode 100644 plopfile.mjs diff --git a/app/about/page.tsx b/app/about/page.tsx index 08ab6540..6f2f7897 100644 --- a/app/about/page.tsx +++ b/app/about/page.tsx @@ -1,5 +1,5 @@ import { Metadata } from 'next'; -import Page from '../../source/04-templates/Page/Page'; +import Page from '~templates/Page/Page'; const title = 'About Forum One Next.js Starter App'; diff --git a/app/layout.tsx b/app/layout.tsx index 21f75e65..ec6f6244 100644 --- a/app/layout.tsx +++ b/app/layout.tsx @@ -1,18 +1,18 @@ -import '../source/00-config/index.css'; +import '~/source/00-config/index.css'; import { JSX, PropsWithChildren } from 'react'; -import sourceSansPro from '../source/01-global/fonts/source-sans'; -import '../source/01-global/index.css'; -import Footer from '../source/02-layouts/Footer/Footer'; -import Header from '../source/02-layouts/Header/Header'; -import SiteContainer from '../source/02-layouts/SiteContainer/SiteContainer'; -import BackToTop from '../source/03-components/BackToTop/BackToTop'; -import Menu from '../source/03-components/Menu/Menu'; -import ResponsiveMenu from '../source/03-components/Menu/ResponsiveMenu/ResponsiveMenu'; -import footerStyles from '../source/03-components/Menu/menu-footer.module.css'; -import SiteName from '../source/03-components/SiteName/SiteName'; -import Skiplink from '../source/03-components/Skiplink/Skiplink'; -import '../source/06-utility/index.css'; +import BackToTop from '~components/BackToTop/BackToTop'; +import Menu from '~components/Menu/Menu'; +import ResponsiveMenu from '~components/Menu/ResponsiveMenu/ResponsiveMenu'; +import footerStyles from '~components/Menu/menu-footer.module.css'; +import SiteName from '~components/SiteName/SiteName'; +import Skiplink from '~components/Skiplink/Skiplink'; +import sourceSansPro from '~global/fonts/source-sans'; +import '~global/index.css'; +import Footer from '~layouts/Footer/Footer'; +import Header from '~layouts/Header/Header'; +import SiteContainer from '~layouts/SiteContainer/SiteContainer'; +import '~utility/index.css'; function RootLayout({ children }: PropsWithChildren): JSX.Element { return ( diff --git a/app/page.tsx b/app/page.tsx index a045c516..73bfc7db 100644 --- a/app/page.tsx +++ b/app/page.tsx @@ -1,10 +1,10 @@ import { Metadata } from 'next'; import Image from 'next/image'; -import heroPlaceholder from '../public/images/hero-placeholder.jpg'; -import Section from '../source/02-layouts/Section/Section'; -import HeroBgImage from '../source/03-components/HeroBgImage/HeroBgImage'; -import Wysiwyg from '../source/03-components/Wysiwyg/Wysiwyg'; -import LandingPage from '../source/04-templates/LandingPage/LandingPage'; +import heroPlaceholder from '~/public/images/hero-placeholder.jpg'; +import HeroBgImage from '~components/HeroBgImage/HeroBgImage'; +import Wysiwyg from '~components/Wysiwyg/Wysiwyg'; +import Section from '~layouts/Section/Section'; +import LandingPage from '~templates/LandingPage/LandingPage'; const title = 'Forum One Next.js Starter App'; diff --git a/plopfile.mjs b/plopfile.mjs deleted file mode 100644 index aeafb0d8..00000000 --- a/plopfile.mjs +++ /dev/null @@ -1,212 +0,0 @@ -import { lstat } from 'fs/promises'; -import inquirer from 'inquirer'; -import { readdir } from 'node:fs/promises'; -import path from 'node:path'; - -/** - * Creates the machine name from a human-readable name. - * @param {string} name - The human-readable name - * @return {string} - The machine name - */ -function machineName(name) { - return name - .split(/[\s-_]/) - .map(piece => `${piece.charAt(0).toUpperCase()}${piece.slice(1)}`) - .join(''); -} - -/** - * Creates a human name from a machine name. - * @param {string} name - The machine name - * @return {string} - The human-readable name - */ -function humanName(name) { - const words = name - .split(/[\s-_]/) - .map(word => word.charAt(0).toUpperCase() + word.slice(1)); - return words.join(' '); -} - -/** - * Creates the cascade layer name from the directory name. - * @param {string} directoryName - The directory name - * @return {string} - */ -function cascadeLayer(directoryName) { - const parts = directoryName.split('-'); - return parts[parts.length - 1]; -} - -/** - * Checks whether the source directory is an accessible directory. - * @param {node:fs.PathLike} source - Source path - * @return {Promise} - True if source is an accessible directory - */ -async function isDirectory(source) { - const stats = await lstat(source); - return stats.isDirectory(); -} - -/** - * Get available component directories. - * @param {node:fs.PathLike} source - Source path - * @return {Promise} - Array of component directory paths - */ -async function getDirectories(source) { - /** @type {string[]} */ - const directoryFiles = await readdir(source); - /** @type {string[]} */ - const directoryPaths = directoryFiles - .filter( - dirName => !['00-config', '05-pages', '06-utility'].includes(dirName), - ) - .map(name => path.join(source, name)); - /** @type {Awaited[]} */ - const isDirectoryResults = await Promise.all(directoryPaths.map(isDirectory)); - return directoryPaths.filter((value, index) => isDirectoryResults[index]); -} - -/** - * Get the machine name from user input. - * @return {Promise} - Machine name of new component - */ -async function getMachineName() { - const questions = [ - { - type: 'input', - name: 'componentName', - message: 'What is the name of your component?', - filter: machineName, - }, - ]; - const { componentName } = await inquirer.prompt(questions); - return componentName.trim(); -} - -async function generator(plop) { - const patternSrc = path.join(process.cwd(), 'source'); - const patternDir = await getDirectories(patternSrc); - - plop.setHelper('machineName', text => machineName(text)); - plop.setHelper('humanName', text => humanName(text)); - plop.setHelper('cascadeLayer', text => cascadeLayer(text)); - - plop.setPartial('propsName', '{{ componentName }}Props'); - plop.setPartial('componentAlias', '{{ componentName }}Component'); - plop.setPartial('argsName', '{{ camelCase componentName }}Args'); - - plop.setGenerator('component', { - description: 'Create a new React component', - prompts: async inquirer => { - let { componentName } = await inquirer.prompt({ - type: 'input', - name: 'componentName', - message: 'What is the name of your component?', - filter: machineName, - }); - componentName = componentName.trim(); - const defaultComponentTitle = plop.renderString( - '{{ humanName (kebabCase componentName) }}', - { componentName }, - ); - const detailedQuestions = [ - { - type: 'input', - name: 'componentTitle', - message: 'What is the human-readable title of your component?', - default: defaultComponentTitle, - }, - { - type: 'list', - name: 'componentFolder', - message: 'Component Location', - choices: patternDir.map(item => path.basename(item)), - }, - { - type: 'input', - name: 'componentFolderSub', - message: 'Include subfolder or leave blank', - }, - { - type: 'confirm', - name: 'useStorybook', - message: 'Create a Storybook story?', - default: true, - }, - ]; - const { - componentTitle, - componentFolder, - componentFolderSub, - useStorybook, - } = await inquirer.prompt(detailedQuestions); - const componentLocation = path.join( - componentFolder, - machineName(componentFolderSub), - ); - - // These are the variables that can be used in the handlebars templates. - const answers = { - componentName, - componentTitle, - componentFolder, - componentLocation, - useStorybook, - }; - - const output = `--- -Component Name: {{ machineName componentName }} -Component Title: {{ componentTitle }} -Component Location: {{ componentLocation }} -Include Story?: {{ useStorybook }} ---- -`; - console.log(plop.renderString(output, answers)); - const { confirm } = await inquirer.prompt({ - type: 'confirm', - name: 'confirm', - message: 'Is this what you want?', - }); - // Resolve successfully even if the user didn't confirm. - // We need to throw the error in the *action* in order to get - // a sensible display. - return Promise.resolve({ - ...answers, - confirm, - }); - }, - actions: data => { - const actions = []; - if (!data.confirm) { - actions.push(() => { - throw new Error('Component canceled'); - }); - } - actions.push({ - type: 'add', - path: './source/{{ componentLocation }}/{{ componentName }}/{{ componentName }}.tsx', - templateFile: './lib/templates/Component.hbs', - }); - actions.push({ - type: 'add', - path: './source/{{ componentLocation }}/{{ componentName }}/{{ kebabCase componentName }}.module.css', - templateFile: './lib/templates/Stylesheet.hbs', - }); - if (data.useStorybook) { - actions.push({ - type: 'add', - path: './source/{{ componentLocation }}/{{ componentName }}/{{ camelCase componentName }}Args.ts', - templateFile: './lib/templates/Data.hbs', - }); - actions.push({ - type: 'add', - path: './source/{{ componentLocation }}/{{ componentName }}/{{ componentName }}.stories.tsx', - templateFile: './lib/templates/Story.hbs', - }); - } - return actions; - }, - }); -} - -export default generator; diff --git a/source/02-layouts/Constrain/Constrain.stories.tsx b/source/02-layouts/Constrain/Constrain.stories.tsx index 74343d10..2c489899 100644 --- a/source/02-layouts/Constrain/Constrain.stories.tsx +++ b/source/02-layouts/Constrain/Constrain.stories.tsx @@ -1,5 +1,5 @@ import { Meta, StoryObj } from '@storybook/nextjs'; -import SampleContent from '../../06-utility/storybook/SampleContent'; +import SampleContent from '~utility/storybook/SampleContent'; import ConstrainLayout from './Constrain'; import constrainArgs from './constrainArgs'; diff --git a/source/02-layouts/Constrain/constrainArgs.ts b/source/02-layouts/Constrain/constrainArgs.ts index adb8d9aa..4408842b 100644 --- a/source/02-layouts/Constrain/constrainArgs.ts +++ b/source/02-layouts/Constrain/constrainArgs.ts @@ -1,4 +1,4 @@ -import { ConstrainProps } from '@/source/02-layouts/Constrain/Constrain'; +import { ConstrainProps } from '~layouts/Constrain/Constrain'; export default { modifierClasses: '', diff --git a/source/02-layouts/Footer/Footer.stories.tsx b/source/02-layouts/Footer/Footer.stories.tsx index 9ea433db..adbebcf5 100644 --- a/source/02-layouts/Footer/Footer.stories.tsx +++ b/source/02-layouts/Footer/Footer.stories.tsx @@ -1,5 +1,5 @@ import { Meta, StoryObj } from '@storybook/nextjs'; -import SampleContent from '../../06-utility/storybook/SampleContent'; +import SampleContent from '~utility/storybook/SampleContent'; import FooterLayout from './Footer'; import footerArgs from './footerArgs'; diff --git a/source/02-layouts/Footer/Footer.tsx b/source/02-layouts/Footer/Footer.tsx index 5450a039..1af40f98 100644 --- a/source/02-layouts/Footer/Footer.tsx +++ b/source/02-layouts/Footer/Footer.tsx @@ -1,7 +1,7 @@ import clsx from 'clsx'; import { ConstrainComponent } from 'gesso'; import { JSX, ReactNode } from 'react'; -import Constrain from '../Constrain/Constrain'; +import Constrain from '~layouts/Constrain/Constrain'; import styles from './footer.module.css'; interface FooterProps extends ConstrainComponent { diff --git a/source/02-layouts/Footer/footerArgs.ts b/source/02-layouts/Footer/footerArgs.ts index b7ea20a3..58881734 100644 --- a/source/02-layouts/Footer/footerArgs.ts +++ b/source/02-layouts/Footer/footerArgs.ts @@ -1,4 +1,4 @@ -import { FooterProps } from '@/source/02-layouts/Footer/Footer'; +import { FooterProps } from '~layouts/Footer/Footer'; export default { hasConstrain: true, diff --git a/source/02-layouts/Grid/Grid.stories.tsx b/source/02-layouts/Grid/Grid.stories.tsx index 50a5ab58..78d97eac 100644 --- a/source/02-layouts/Grid/Grid.stories.tsx +++ b/source/02-layouts/Grid/Grid.stories.tsx @@ -1,5 +1,5 @@ import { Meta, StoryObj } from '@storybook/nextjs'; -import SampleContent from '../../06-utility/storybook/SampleContent'; +import SampleContent from '~utility/storybook/SampleContent'; import GridLayout from './Grid'; import gridArgs from './gridArgs'; diff --git a/source/02-layouts/Grid/gridArgs.ts b/source/02-layouts/Grid/gridArgs.ts index ecd70eee..57efa10e 100644 --- a/source/02-layouts/Grid/gridArgs.ts +++ b/source/02-layouts/Grid/gridArgs.ts @@ -1,4 +1,4 @@ -import { GridProps } from '@/source/02-layouts/Grid/Grid'; +import { GridProps } from '~layouts/Grid/Grid'; export default { numCols: 3, diff --git a/source/02-layouts/Header/Header.stories.tsx b/source/02-layouts/Header/Header.stories.tsx index 2c7ef1f1..93468cd3 100644 --- a/source/02-layouts/Header/Header.stories.tsx +++ b/source/02-layouts/Header/Header.stories.tsx @@ -1,5 +1,5 @@ import { Meta, StoryObj } from '@storybook/nextjs'; -import SampleContent from '../../06-utility/storybook/SampleContent'; +import SampleContent from '~utility/storybook/SampleContent'; import HeaderLayout from './Header'; import headerArgs from './headerArgs'; diff --git a/source/02-layouts/Header/Header.tsx b/source/02-layouts/Header/Header.tsx index 42302d6b..abc821fc 100644 --- a/source/02-layouts/Header/Header.tsx +++ b/source/02-layouts/Header/Header.tsx @@ -1,7 +1,7 @@ import clsx from 'clsx'; import { ConstrainComponent } from 'gesso'; import { JSX, ReactNode } from 'react'; -import Constrain from '../Constrain/Constrain'; +import Constrain from '~layouts/Constrain/Constrain'; import styles from './header.module.css'; interface HeaderProps extends ConstrainComponent { diff --git a/source/02-layouts/Header/headerArgs.ts b/source/02-layouts/Header/headerArgs.ts index 7948657d..2c30e522 100644 --- a/source/02-layouts/Header/headerArgs.ts +++ b/source/02-layouts/Header/headerArgs.ts @@ -1,4 +1,4 @@ -import { HeaderProps } from '@/source/02-layouts/Header/Header'; +import { HeaderProps } from '~layouts/Header/Header'; export default { hasConstrain: true, diff --git a/source/02-layouts/InlineForm/InlineForm.stories.tsx b/source/02-layouts/InlineForm/InlineForm.stories.tsx index 12beced2..e3c8d768 100644 --- a/source/02-layouts/InlineForm/InlineForm.stories.tsx +++ b/source/02-layouts/InlineForm/InlineForm.stories.tsx @@ -1,5 +1,5 @@ import { Meta, StoryObj } from '@storybook/nextjs'; -import SampleContent from '../../06-utility/storybook/SampleContent'; +import SampleContent from '~utility/storybook/SampleContent'; import InlineFormLayout from './InlineForm'; import inlineFormArgs from './inlineFormArgs'; diff --git a/source/02-layouts/InlineForm/inlineFormArgs.ts b/source/02-layouts/InlineForm/inlineFormArgs.ts index 3b39bf3b..b3eca716 100644 --- a/source/02-layouts/InlineForm/inlineFormArgs.ts +++ b/source/02-layouts/InlineForm/inlineFormArgs.ts @@ -1,4 +1,4 @@ -import { InlineFormProps } from '@/source/02-layouts/InlineForm/InlineForm'; +import { InlineFormProps } from '~layouts/InlineForm/InlineForm'; export default { wrap: true, diff --git a/source/02-layouts/Main/Main.stories.tsx b/source/02-layouts/Main/Main.stories.tsx index 481d7d33..9a0a7286 100644 --- a/source/02-layouts/Main/Main.stories.tsx +++ b/source/02-layouts/Main/Main.stories.tsx @@ -1,5 +1,5 @@ import { Meta, StoryObj } from '@storybook/nextjs'; -import SampleContent from '../../06-utility/storybook/SampleContent'; +import SampleContent from '~utility/storybook/SampleContent'; import MainLayout from './Main'; import mainArgs from './mainArgs'; diff --git a/source/02-layouts/Main/Main.tsx b/source/02-layouts/Main/Main.tsx index c8c13f5f..fbac3598 100644 --- a/source/02-layouts/Main/Main.tsx +++ b/source/02-layouts/Main/Main.tsx @@ -1,7 +1,7 @@ import clsx from 'clsx'; import { ConstrainComponent } from 'gesso'; import { JSX, ReactNode } from 'react'; -import Constrain from '../Constrain/Constrain'; +import Constrain from '~layouts/Constrain/Constrain'; import styles from './main.module.css'; interface MainProps extends ConstrainComponent { diff --git a/source/02-layouts/Main/mainArgs.ts b/source/02-layouts/Main/mainArgs.ts index ca6120e9..2371cd1f 100644 --- a/source/02-layouts/Main/mainArgs.ts +++ b/source/02-layouts/Main/mainArgs.ts @@ -1,4 +1,4 @@ -import { MainProps } from '@/source/02-layouts/Main/Main'; +import { MainProps } from '~layouts/Main/Main'; export default { id: 'main', diff --git a/source/02-layouts/Media/mediaArgs.tsx b/source/02-layouts/Media/mediaArgs.tsx index 78f4d946..028d9660 100644 --- a/source/02-layouts/Media/mediaArgs.tsx +++ b/source/02-layouts/Media/mediaArgs.tsx @@ -1,4 +1,4 @@ -import { MediaProps } from '@/source/02-layouts/Media/Media'; +import { MediaProps } from '~layouts/Media/Media'; export default { media: ( diff --git a/source/02-layouts/ResponsiveTable/responsiveTableArgs.ts b/source/02-layouts/ResponsiveTable/responsiveTableArgs.ts index 1f125088..0cd2aa17 100644 --- a/source/02-layouts/ResponsiveTable/responsiveTableArgs.ts +++ b/source/02-layouts/ResponsiveTable/responsiveTableArgs.ts @@ -1,4 +1,4 @@ -import { ResponsiveTableProps } from '@/source/02-layouts/ResponsiveTable/ResponsiveTable'; +import { ResponsiveTableProps } from '~layouts/ResponsiveTable/ResponsiveTable'; export default { labelledBy: 'tablecaption01', diff --git a/source/02-layouts/Section/Section.tsx b/source/02-layouts/Section/Section.tsx index 2d42e892..b73ce098 100644 --- a/source/02-layouts/Section/Section.tsx +++ b/source/02-layouts/Section/Section.tsx @@ -1,7 +1,7 @@ import clsx from 'clsx'; import { ConstrainComponent } from 'gesso'; import { ElementType, JSX, ReactNode } from 'react'; -import Constrain from '../Constrain/Constrain'; +import Constrain from '~layouts/Constrain/Constrain'; import styles from './section.module.css'; interface SectionProps extends ConstrainComponent { diff --git a/source/02-layouts/Section/sectionArgs.ts b/source/02-layouts/Section/sectionArgs.ts index 9473e9a3..8ea26cdf 100644 --- a/source/02-layouts/Section/sectionArgs.ts +++ b/source/02-layouts/Section/sectionArgs.ts @@ -1,4 +1,4 @@ -import { SectionProps } from '@/source/02-layouts/Section/Section'; +import { SectionProps } from '~layouts/Section/Section'; export default { title: 'Section title', diff --git a/source/02-layouts/Sidebar/Sidebar.stories.tsx b/source/02-layouts/Sidebar/Sidebar.stories.tsx index 01e6ed6e..95bf2f87 100644 --- a/source/02-layouts/Sidebar/Sidebar.stories.tsx +++ b/source/02-layouts/Sidebar/Sidebar.stories.tsx @@ -1,5 +1,5 @@ import { Meta, StoryObj } from '@storybook/nextjs'; -import SampleContent from '../../06-utility/storybook/SampleContent'; +import SampleContent from '~utility/storybook/SampleContent'; import SidebarLayout from './Sidebar'; import sidebarArgs from './sidebarArgs'; diff --git a/source/02-layouts/Sidebar/sidebarArgs.ts b/source/02-layouts/Sidebar/sidebarArgs.ts index ade93b01..301397ce 100644 --- a/source/02-layouts/Sidebar/sidebarArgs.ts +++ b/source/02-layouts/Sidebar/sidebarArgs.ts @@ -1,4 +1,4 @@ -import { SidebarProps } from '@/source/02-layouts/Sidebar/Sidebar'; +import { SidebarProps } from '~layouts/Sidebar/Sidebar'; export default { sidebarFirstLabel: '', diff --git a/source/02-layouts/SiteContainer/siteContainerArgs.tsx b/source/02-layouts/SiteContainer/siteContainerArgs.tsx index fb069f8a..639cd7fe 100644 --- a/source/02-layouts/SiteContainer/siteContainerArgs.tsx +++ b/source/02-layouts/SiteContainer/siteContainerArgs.tsx @@ -1,5 +1,5 @@ -import { SiteContainerProps } from '@/source/02-layouts/SiteContainer/SiteContainer'; -import SampleContent from '@/source/06-utility/storybook/SampleContent'; +import { SiteContainerProps } from '~layouts/SiteContainer/SiteContainer'; +import SampleContent from '~utility/storybook/SampleContent'; export default { modifierClasses: '', diff --git a/source/03-components/Accordion/Accordion.tsx b/source/03-components/Accordion/Accordion.tsx index 34041f1a..4bd32185 100644 --- a/source/03-components/Accordion/Accordion.tsx +++ b/source/03-components/Accordion/Accordion.tsx @@ -10,7 +10,7 @@ import React, { useMemo, useState, } from 'react'; -import getCssVar from '../../06-utility/getCssVar'; +import getCssVar from '~utility/getCssVar'; import AccordionItem, { AccordionItemProps } from './AccordionItem'; import styles from './accordion.module.css'; diff --git a/source/03-components/Accordion/AccordionItem.tsx b/source/03-components/Accordion/AccordionItem.tsx index 199684f1..8a7419c0 100644 --- a/source/03-components/Accordion/AccordionItem.tsx +++ b/source/03-components/Accordion/AccordionItem.tsx @@ -9,7 +9,7 @@ import { useEffect, useRef, } from 'react'; -import { slideCollapse, slideExpand } from '../../06-utility/slide'; +import { slideCollapse, slideExpand } from '~utility/slide'; import styles from './accordion-item.module.css'; interface AccordionItemProps extends GessoComponent { diff --git a/source/03-components/Accordion/accordionArgs.tsx b/source/03-components/Accordion/accordionArgs.tsx index d4e74ccb..9bb29c96 100644 --- a/source/03-components/Accordion/accordionArgs.tsx +++ b/source/03-components/Accordion/accordionArgs.tsx @@ -1,4 +1,4 @@ -import { AccordionProps } from '@/source/03-components/Accordion/Accordion'; +import { AccordionProps } from '~components/Accordion/Accordion'; const accordionArgs = { allowMultiple: true, diff --git a/source/03-components/Article/Article.tsx b/source/03-components/Article/Article.tsx index 064d696e..07130887 100644 --- a/source/03-components/Article/Article.tsx +++ b/source/03-components/Article/Article.tsx @@ -1,9 +1,9 @@ import clsx from 'clsx'; import { GessoComponent } from 'gesso'; import { JSX, ReactNode } from 'react'; -import listStyles from '../List/list.module.css'; -import PageTitle from '../PageTitle/PageTitle'; -import Wysiwyg from '../Wysiwyg/Wysiwyg'; +import listStyles from '~components/List/list.module.css'; +import PageTitle from '~components/PageTitle/PageTitle'; +import Wysiwyg from '~components/Wysiwyg/Wysiwyg'; import styles from './article.module.css'; interface ArticleProps extends GessoComponent { diff --git a/source/03-components/Article/articleArgs.tsx b/source/03-components/Article/articleArgs.tsx index 83dd7a00..94242015 100644 --- a/source/03-components/Article/articleArgs.tsx +++ b/source/03-components/Article/articleArgs.tsx @@ -1,4 +1,4 @@ -import { ArticleProps } from '@/source/03-components/Article/Article'; +import { ArticleProps } from '~components/Article/Article'; const articleArgs = { title: 'Article Title', diff --git a/source/03-components/BackToTop/BackToTop.tsx b/source/03-components/BackToTop/BackToTop.tsx index 95da51d6..3bd9b3f5 100644 --- a/source/03-components/BackToTop/BackToTop.tsx +++ b/source/03-components/BackToTop/BackToTop.tsx @@ -3,7 +3,7 @@ import clsx from 'clsx'; import { GessoComponent } from 'gesso'; import { JSX, MouseEvent, useEffect, useState } from 'react'; -import AngleUp from '../../01-global/icon/icons/AngleUp'; +import AngleUp from '~global/icon/icons/AngleUp'; import styles from './back-to-top.module.css'; interface BackToTopProps extends GessoComponent { diff --git a/source/03-components/BackToTop/backToTopArgs.ts b/source/03-components/BackToTop/backToTopArgs.ts index dd75a59a..2fcbcdec 100644 --- a/source/03-components/BackToTop/backToTopArgs.ts +++ b/source/03-components/BackToTop/backToTopArgs.ts @@ -1,4 +1,4 @@ -import { BackToTopProps } from '@/source/03-components/BackToTop/BackToTop'; +import { BackToTopProps } from '~components/BackToTop/BackToTop'; const backToTopArgs = { topElement: 'top', diff --git a/source/03-components/Breadcrumb/Breadcrumb.tsx b/source/03-components/Breadcrumb/Breadcrumb.tsx index cc0257f0..99c21826 100644 --- a/source/03-components/Breadcrumb/Breadcrumb.tsx +++ b/source/03-components/Breadcrumb/Breadcrumb.tsx @@ -2,7 +2,7 @@ import clsx from 'clsx'; import { GessoComponent } from 'gesso'; import Link from 'next/link'; import { ElementType, JSX } from 'react'; -import Constrain from '../../02-layouts/Constrain/Constrain'; +import Constrain from '~layouts/Constrain/Constrain'; import styles from './breadcrumb.module.css'; interface Crumbs { diff --git a/source/03-components/Breadcrumb/breadcrumbArgs.ts b/source/03-components/Breadcrumb/breadcrumbArgs.ts index 99dd3b61..ad565276 100644 --- a/source/03-components/Breadcrumb/breadcrumbArgs.ts +++ b/source/03-components/Breadcrumb/breadcrumbArgs.ts @@ -1,4 +1,4 @@ -import { BreadcrumbProps } from '@/source/03-components/Breadcrumb/Breadcrumb'; +import { BreadcrumbProps } from '~components/Breadcrumb/Breadcrumb'; const breadcrumbArgs = { title: 'Breadcrumb', diff --git a/source/03-components/Button/Button.stories.tsx b/source/03-components/Button/Button.stories.tsx index 6834ac5a..0679a07d 100644 --- a/source/03-components/Button/Button.stories.tsx +++ b/source/03-components/Button/Button.stories.tsx @@ -1,5 +1,5 @@ import { Meta, StoryObj } from '@storybook/nextjs'; -import { withGlobalWrapper } from '../../../.storybook/decorators'; +import { withGlobalWrapper } from '~/.storybook/decorators'; import { Button as ButtonComponent, LinkButton as LinkButtonComponent, diff --git a/source/03-components/Button/buttonArgs.ts b/source/03-components/Button/buttonArgs.ts index 50fceaeb..106df4c6 100644 --- a/source/03-components/Button/buttonArgs.ts +++ b/source/03-components/Button/buttonArgs.ts @@ -1,4 +1,4 @@ -import { SharedButtonProps } from '@/source/03-components/Button/Button'; +import { SharedButtonProps } from '~components/Button/Button'; const buttonArgs = { label: 'Button', diff --git a/source/03-components/ButtonGroup/ButtonGroup.stories.tsx b/source/03-components/ButtonGroup/ButtonGroup.stories.tsx index 792c0294..4d75b62c 100644 --- a/source/03-components/ButtonGroup/ButtonGroup.stories.tsx +++ b/source/03-components/ButtonGroup/ButtonGroup.stories.tsx @@ -1,5 +1,5 @@ import { Meta, StoryObj } from '@storybook/nextjs'; -import { withGlobalWrapper } from '../../../.storybook/decorators'; +import { withGlobalWrapper } from '~/.storybook/decorators'; import ButtonGroupComponent from './ButtonGroup'; import buttonGroupArgs from './buttonGroupArgs'; diff --git a/source/03-components/ButtonGroup/buttonGroupArgs.ts b/source/03-components/ButtonGroup/buttonGroupArgs.ts index 04599606..a5ad4d60 100644 --- a/source/03-components/ButtonGroup/buttonGroupArgs.ts +++ b/source/03-components/ButtonGroup/buttonGroupArgs.ts @@ -1,4 +1,4 @@ -import { ButtonGroupProps } from '@/source/03-components/ButtonGroup/ButtonGroup'; +import { ButtonGroupProps } from '~components/ButtonGroup/ButtonGroup'; const buttonGroupArgs = { heading: 'Heading', diff --git a/source/03-components/CallToAction/CallToAction.tsx b/source/03-components/CallToAction/CallToAction.tsx index 82c25ae7..8b736029 100644 --- a/source/03-components/CallToAction/CallToAction.tsx +++ b/source/03-components/CallToAction/CallToAction.tsx @@ -1,7 +1,7 @@ import clsx from 'clsx'; import { GessoComponent } from 'gesso'; import { JSX, ReactNode } from 'react'; -import { LinkButton, LinkProps } from '../Button/Button'; +import { LinkButton, LinkProps } from '~components/Button/Button'; import styles from './call-to-action.module.css'; interface CallToActionProps extends GessoComponent { diff --git a/source/03-components/CallToAction/callToActionArgs.tsx b/source/03-components/CallToAction/callToActionArgs.tsx index 9bdf50e1..0a33aec3 100644 --- a/source/03-components/CallToAction/callToActionArgs.tsx +++ b/source/03-components/CallToAction/callToActionArgs.tsx @@ -1,4 +1,4 @@ -import { CallToActionProps } from '@/source/03-components/CallToAction/CallToAction'; +import { CallToActionProps } from '~components/CallToAction/CallToAction'; const callToActionArgs = { body:

CTA content goes here…

, diff --git a/source/03-components/Card/Card.stories.tsx b/source/03-components/Card/Card.stories.tsx index 85998216..28d7ceaa 100644 --- a/source/03-components/Card/Card.stories.tsx +++ b/source/03-components/Card/Card.stories.tsx @@ -1,6 +1,6 @@ import { Meta, StoryObj } from '@storybook/nextjs'; -import { withGlobalWrapper } from '../../../.storybook/decorators'; -import Grid from '../../02-layouts/Grid/Grid'; +import { withGlobalWrapper } from '~/.storybook/decorators'; +import Grid from '~layouts/Grid/Grid'; import CardComponent from './Card'; import styles from './card.module.css'; import cardArgs from './cardArgs'; diff --git a/source/03-components/Card/Card.tsx b/source/03-components/Card/Card.tsx index 5865bb8b..28ee75cf 100644 --- a/source/03-components/Card/Card.tsx +++ b/source/03-components/Card/Card.tsx @@ -2,9 +2,9 @@ import clsx from 'clsx'; import { GessoComponent } from 'gesso'; import Link from 'next/link'; import { JSX, ReactNode } from 'react'; -import ReadMoreLink from '../ReadMoreLink/ReadMoreLink'; -import { TagProps } from '../Tag/Tag'; -import TagList from '../TagList/TagList'; +import ReadMoreLink from '~components/ReadMoreLink/ReadMoreLink'; +import { TagProps } from '~components/Tag/Tag'; +import TagList from '~components/TagList/TagList'; import styles from './card.module.css'; interface CardProps extends GessoComponent { diff --git a/source/03-components/Card/cardArgs.tsx b/source/03-components/Card/cardArgs.tsx index 52c8b4a2..1ebfc23d 100644 --- a/source/03-components/Card/cardArgs.tsx +++ b/source/03-components/Card/cardArgs.tsx @@ -1,4 +1,4 @@ -import { CardProps } from '@/source/03-components/Card/Card'; +import { CardProps } from '~components/Card/Card'; const cardArgs = { title: 'Card title', diff --git a/source/03-components/Details/Details.stories.tsx b/source/03-components/Details/Details.stories.tsx index 0cc7008c..08607ddf 100644 --- a/source/03-components/Details/Details.stories.tsx +++ b/source/03-components/Details/Details.stories.tsx @@ -1,5 +1,5 @@ import { Meta, StoryObj } from '@storybook/nextjs'; -import { withGlobalWrapper } from '../../../.storybook/decorators'; +import { withGlobalWrapper } from '~/.storybook/decorators'; import DetailsComponent from './Details'; import detailsArgs from './detailsArgs'; diff --git a/source/03-components/Details/detailsArgs.tsx b/source/03-components/Details/detailsArgs.tsx index 2df9cd57..ad3dbe23 100644 --- a/source/03-components/Details/detailsArgs.tsx +++ b/source/03-components/Details/detailsArgs.tsx @@ -1,4 +1,4 @@ -import { DetailsProps } from '@/source/03-components/Details/Details'; +import { DetailsProps } from '~components/Details/Details'; const detailsArgs = { detailsSummary: 'Details summary', diff --git a/source/03-components/Fieldset/Fieldset.stories.tsx b/source/03-components/Fieldset/Fieldset.stories.tsx index e008c40a..8428b5b5 100644 --- a/source/03-components/Fieldset/Fieldset.stories.tsx +++ b/source/03-components/Fieldset/Fieldset.stories.tsx @@ -1,5 +1,5 @@ import { Meta, StoryObj } from '@storybook/nextjs'; -import { withGlobalWrapper } from '../../../.storybook/decorators'; +import { withGlobalWrapper } from '~/.storybook/decorators'; import FieldsetComponent from './Fieldset'; import styles from './fieldset.module.css'; import fieldsetArgs from './fieldsetArgs'; diff --git a/source/03-components/Fieldset/fieldsetArgs.tsx b/source/03-components/Fieldset/fieldsetArgs.tsx index 31fda95d..818864da 100644 --- a/source/03-components/Fieldset/fieldsetArgs.tsx +++ b/source/03-components/Fieldset/fieldsetArgs.tsx @@ -1,4 +1,4 @@ -import { FieldsetProps } from '@/source/03-components/Fieldset/Fieldset'; +import { FieldsetProps } from '~components/Fieldset/Fieldset'; const fieldsetArgs = { legend: 'Fieldset', diff --git a/source/03-components/Figure/Figure.stories.tsx b/source/03-components/Figure/Figure.stories.tsx index 060b407f..659a96c5 100644 --- a/source/03-components/Figure/Figure.stories.tsx +++ b/source/03-components/Figure/Figure.stories.tsx @@ -1,7 +1,7 @@ import { Meta, StoryObj } from '@storybook/nextjs'; -import { withGlobalWrapper } from '../../../.storybook/decorators'; -import Video from '../Video/Video'; -import { Video as VideoStory } from '../Video/Video.stories'; +import { withGlobalWrapper } from '~/.storybook/decorators'; +import Video from '~components/Video/Video'; +import { Video as VideoStory } from '~components/Video/Video.stories'; import FigureComponent from './Figure'; import styles from './figure.module.css'; import figureArgs from './figureArgs'; diff --git a/source/03-components/Figure/figureArgs.tsx b/source/03-components/Figure/figureArgs.tsx index d99e3ca7..3276b00e 100644 --- a/source/03-components/Figure/figureArgs.tsx +++ b/source/03-components/Figure/figureArgs.tsx @@ -1,4 +1,4 @@ -import { FigureProps } from '@/source/03-components/Figure/Figure'; +import { FigureProps } from '~components/Figure/Figure'; const figureArgs = { media: ( diff --git a/source/03-components/FormItem/Checkboxes.stories.tsx b/source/03-components/FormItem/Checkboxes.stories.tsx index 30e270a6..05832c22 100644 --- a/source/03-components/FormItem/Checkboxes.stories.tsx +++ b/source/03-components/FormItem/Checkboxes.stories.tsx @@ -1,7 +1,7 @@ import { Meta, StoryObj } from '@storybook/nextjs'; -import { withGlobalWrapper } from '../../../.storybook/decorators'; -import Fieldset from '../Fieldset/Fieldset'; -import fieldsetStyles from '../Fieldset/fieldset.module.css'; +import { withGlobalWrapper } from '~/.storybook/decorators'; +import Fieldset from '~components/Fieldset/Fieldset'; +import fieldsetStyles from '~components/Fieldset/fieldset.module.css'; import { Input } from './FormItem'; import { Checkbox } from './FormItem.stories'; diff --git a/source/03-components/FormItem/FormItem.stories.tsx b/source/03-components/FormItem/FormItem.stories.tsx index 7b480d9f..c7897f1c 100644 --- a/source/03-components/FormItem/FormItem.stories.tsx +++ b/source/03-components/FormItem/FormItem.stories.tsx @@ -1,5 +1,5 @@ import { Meta, StoryObj } from '@storybook/nextjs'; -import { withGlobalWrapper } from '../../../.storybook/decorators'; +import { withGlobalWrapper } from '~/.storybook/decorators'; import { Input } from './FormItem'; import checkboxArgs from './checkboxArgs'; import radioArgs from './radioArgs'; diff --git a/source/03-components/FormItem/Input.stories.tsx b/source/03-components/FormItem/Input.stories.tsx index 837edb2b..72da8031 100644 --- a/source/03-components/FormItem/Input.stories.tsx +++ b/source/03-components/FormItem/Input.stories.tsx @@ -1,5 +1,5 @@ import { Meta, StoryObj } from '@storybook/nextjs'; -import { withGlobalWrapper } from '../../../.storybook/decorators'; +import { withGlobalWrapper } from '~/.storybook/decorators'; import { Input } from './FormItem'; import colorArgs from './colorArgs'; import dateArgs from './dateArgs'; diff --git a/source/03-components/FormItem/Radios.stories.tsx b/source/03-components/FormItem/Radios.stories.tsx index d36d5b72..d81d15a2 100644 --- a/source/03-components/FormItem/Radios.stories.tsx +++ b/source/03-components/FormItem/Radios.stories.tsx @@ -1,7 +1,7 @@ import { Meta, StoryObj } from '@storybook/nextjs'; -import { withGlobalWrapper } from '../../../.storybook/decorators'; -import Fieldset from '../Fieldset/Fieldset'; -import fieldsetStyles from '../Fieldset/fieldset.module.css'; +import { withGlobalWrapper } from '~/.storybook/decorators'; +import Fieldset from '~components/Fieldset/Fieldset'; +import fieldsetStyles from '~components/Fieldset/fieldset.module.css'; import { Input } from './FormItem'; import { Radio } from './FormItem.stories'; diff --git a/source/03-components/FormItem/Select.stories.tsx b/source/03-components/FormItem/Select.stories.tsx index 5a3f3a8a..899ad99d 100644 --- a/source/03-components/FormItem/Select.stories.tsx +++ b/source/03-components/FormItem/Select.stories.tsx @@ -1,5 +1,5 @@ import { Meta, StoryObj } from '@storybook/nextjs'; -import { withGlobalWrapper } from '../../../.storybook/decorators'; +import { withGlobalWrapper } from '~/.storybook/decorators'; import { Select } from './FormItem'; import selectArgs from './selectArgs'; import withGroupArgs from './selectWithGroups'; diff --git a/source/03-components/FormItem/Textarea.stories.tsx b/source/03-components/FormItem/Textarea.stories.tsx index f576bdb4..d409c05f 100644 --- a/source/03-components/FormItem/Textarea.stories.tsx +++ b/source/03-components/FormItem/Textarea.stories.tsx @@ -1,5 +1,5 @@ import { Meta, StoryObj } from '@storybook/nextjs'; -import { withGlobalWrapper } from '../../../.storybook/decorators'; +import { withGlobalWrapper } from '~/.storybook/decorators'; import { Textarea } from './FormItem'; import textareaArgs from './textareaArgs'; diff --git a/source/03-components/FormItem/checkboxArgs.ts b/source/03-components/FormItem/checkboxArgs.ts index 6b6e8176..488ca948 100644 --- a/source/03-components/FormItem/checkboxArgs.ts +++ b/source/03-components/FormItem/checkboxArgs.ts @@ -1,4 +1,4 @@ -import { InputProps } from '@/source/03-components/FormItem/FormItem'; +import { InputProps } from '~components/FormItem/FormItem'; const checkboxArgs = { id: 'checkbox', diff --git a/source/03-components/FormItem/colorArgs.ts b/source/03-components/FormItem/colorArgs.ts index 3d36760d..cf5afec2 100644 --- a/source/03-components/FormItem/colorArgs.ts +++ b/source/03-components/FormItem/colorArgs.ts @@ -1,4 +1,4 @@ -import { InputProps } from '@/source/03-components/FormItem/FormItem'; +import { InputProps } from '~components/FormItem/FormItem'; const colorArgs = { id: 'color', diff --git a/source/03-components/FormItem/dateArgs.ts b/source/03-components/FormItem/dateArgs.ts index 462290cc..df09df75 100644 --- a/source/03-components/FormItem/dateArgs.ts +++ b/source/03-components/FormItem/dateArgs.ts @@ -1,4 +1,4 @@ -import { InputProps } from '@/source/03-components/FormItem/FormItem'; +import { InputProps } from '~components/FormItem/FormItem'; const dateArgs = { id: 'date', diff --git a/source/03-components/FormItem/decimalArgs.ts b/source/03-components/FormItem/decimalArgs.ts index b112721d..f32499f1 100644 --- a/source/03-components/FormItem/decimalArgs.ts +++ b/source/03-components/FormItem/decimalArgs.ts @@ -1,4 +1,4 @@ -import { InputProps } from '@/source/03-components/FormItem/FormItem'; +import { InputProps } from '~components/FormItem/FormItem'; const decimalArgs = { id: 'decimal', diff --git a/source/03-components/FormItem/emailArgs.ts b/source/03-components/FormItem/emailArgs.ts index fa2595ab..90bf2db2 100644 --- a/source/03-components/FormItem/emailArgs.ts +++ b/source/03-components/FormItem/emailArgs.ts @@ -1,4 +1,4 @@ -import { InputProps } from '@/source/03-components/FormItem/FormItem'; +import { InputProps } from '~components/FormItem/FormItem'; const emailArgs = { id: 'email', diff --git a/source/03-components/FormItem/fileArgs.ts b/source/03-components/FormItem/fileArgs.ts index 3cf1230f..af11ba4a 100644 --- a/source/03-components/FormItem/fileArgs.ts +++ b/source/03-components/FormItem/fileArgs.ts @@ -1,4 +1,4 @@ -import { InputProps } from '@/source/03-components/FormItem/FormItem'; +import { InputProps } from '~components/FormItem/FormItem'; const fileArgs = { id: 'file', diff --git a/source/03-components/FormItem/floatArgs.ts b/source/03-components/FormItem/floatArgs.ts index 3bb1f30c..02799118 100644 --- a/source/03-components/FormItem/floatArgs.ts +++ b/source/03-components/FormItem/floatArgs.ts @@ -1,4 +1,4 @@ -import { InputProps } from '@/source/03-components/FormItem/FormItem'; +import { InputProps } from '~components/FormItem/FormItem'; const floatArgs = { id: 'float', diff --git a/source/03-components/FormItem/integerArgs.ts b/source/03-components/FormItem/integerArgs.ts index f9548020..a7dccdb0 100644 --- a/source/03-components/FormItem/integerArgs.ts +++ b/source/03-components/FormItem/integerArgs.ts @@ -1,4 +1,4 @@ -import { InputProps } from '@/source/03-components/FormItem/FormItem'; +import { InputProps } from '~components/FormItem/FormItem'; const integerArgs = { id: 'integer', diff --git a/source/03-components/FormItem/monthArgs.ts b/source/03-components/FormItem/monthArgs.ts index 11723640..a6202b8b 100644 --- a/source/03-components/FormItem/monthArgs.ts +++ b/source/03-components/FormItem/monthArgs.ts @@ -1,4 +1,4 @@ -import { InputProps } from '@/source/03-components/FormItem/FormItem'; +import { InputProps } from '~components/FormItem/FormItem'; const monthArgs = { id: 'month', diff --git a/source/03-components/FormItem/passwordArgs.ts b/source/03-components/FormItem/passwordArgs.ts index 673342ff..f23e5630 100644 --- a/source/03-components/FormItem/passwordArgs.ts +++ b/source/03-components/FormItem/passwordArgs.ts @@ -1,4 +1,4 @@ -import { InputProps } from '@/source/03-components/FormItem/FormItem'; +import { InputProps } from '~components/FormItem/FormItem'; const passwordArgs = { id: 'password', diff --git a/source/03-components/FormItem/radioArgs.ts b/source/03-components/FormItem/radioArgs.ts index ccb9446a..199c15b8 100644 --- a/source/03-components/FormItem/radioArgs.ts +++ b/source/03-components/FormItem/radioArgs.ts @@ -1,4 +1,4 @@ -import { InputProps } from '@/source/03-components/FormItem/FormItem'; +import { InputProps } from '~components/FormItem/FormItem'; const radioArgs = { id: 'radio', diff --git a/source/03-components/FormItem/rangeArgs.ts b/source/03-components/FormItem/rangeArgs.ts index 8f6bb92a..d0e385d1 100644 --- a/source/03-components/FormItem/rangeArgs.ts +++ b/source/03-components/FormItem/rangeArgs.ts @@ -1,4 +1,4 @@ -import { InputProps } from '@/source/03-components/FormItem/FormItem'; +import { InputProps } from '~components/FormItem/FormItem'; const rangeArgs = { id: 'range', diff --git a/source/03-components/FormItem/searchArgs.ts b/source/03-components/FormItem/searchArgs.ts index 11399096..b18c32aa 100644 --- a/source/03-components/FormItem/searchArgs.ts +++ b/source/03-components/FormItem/searchArgs.ts @@ -1,4 +1,4 @@ -import { InputProps } from '@/source/03-components/FormItem/FormItem'; +import { InputProps } from '~components/FormItem/FormItem'; const searchArgs = { id: 'search', diff --git a/source/03-components/FormItem/selectArgs.tsx b/source/03-components/FormItem/selectArgs.tsx index b5f0724d..f0b5e887 100644 --- a/source/03-components/FormItem/selectArgs.tsx +++ b/source/03-components/FormItem/selectArgs.tsx @@ -1,4 +1,4 @@ -import { SelectProps } from '@/source/03-components/FormItem/FormItem'; +import { SelectProps } from '~components/FormItem/FormItem'; const selectArgs = { label: 'Select', diff --git a/source/03-components/FormItem/selectWithGroups.tsx b/source/03-components/FormItem/selectWithGroups.tsx index 90792b34..fab44f7a 100644 --- a/source/03-components/FormItem/selectWithGroups.tsx +++ b/source/03-components/FormItem/selectWithGroups.tsx @@ -1,4 +1,4 @@ -import { SelectProps } from '@/source/03-components/FormItem/FormItem'; +import { SelectProps } from '~components/FormItem/FormItem'; const selectWithGroups = { label: 'Select with groups', diff --git a/source/03-components/FormItem/telephoneArgs.ts b/source/03-components/FormItem/telephoneArgs.ts index e2d7fa1a..2c610f7f 100644 --- a/source/03-components/FormItem/telephoneArgs.ts +++ b/source/03-components/FormItem/telephoneArgs.ts @@ -1,4 +1,4 @@ -import { InputProps } from '@/source/03-components/FormItem/FormItem'; +import { InputProps } from '~components/FormItem/FormItem'; const telephoneArgs = { id: 'tel', diff --git a/source/03-components/FormItem/textArgs.ts b/source/03-components/FormItem/textArgs.ts index fd4a6ff3..39217f68 100644 --- a/source/03-components/FormItem/textArgs.ts +++ b/source/03-components/FormItem/textArgs.ts @@ -1,4 +1,4 @@ -import { InputProps } from '@/source/03-components/FormItem/FormItem'; +import { InputProps } from '~components/FormItem/FormItem'; const textArgs = { id: 'text', diff --git a/source/03-components/FormItem/textareaArgs.ts b/source/03-components/FormItem/textareaArgs.ts index cbb59fbf..93366eb6 100644 --- a/source/03-components/FormItem/textareaArgs.ts +++ b/source/03-components/FormItem/textareaArgs.ts @@ -1,4 +1,4 @@ -import { TextareaProps } from '@/source/03-components/FormItem/FormItem'; +import { TextareaProps } from '~components/FormItem/FormItem'; const textareaArgs = { id: 'text', diff --git a/source/03-components/FormItem/timeArgs.ts b/source/03-components/FormItem/timeArgs.ts index d4e79d8d..d3bc0df9 100644 --- a/source/03-components/FormItem/timeArgs.ts +++ b/source/03-components/FormItem/timeArgs.ts @@ -1,4 +1,4 @@ -import { InputProps } from '@/source/03-components/FormItem/FormItem'; +import { InputProps } from '~components/FormItem/FormItem'; const timeArgs = { id: 'time', diff --git a/source/03-components/FormItem/urlArgs.ts b/source/03-components/FormItem/urlArgs.ts index 2331655c..cffb31a0 100644 --- a/source/03-components/FormItem/urlArgs.ts +++ b/source/03-components/FormItem/urlArgs.ts @@ -1,4 +1,4 @@ -import { InputProps } from '@/source/03-components/FormItem/FormItem'; +import { InputProps } from '~components/FormItem/FormItem'; const urlArgs = { id: 'url', diff --git a/source/03-components/FormItem/weekArgs.ts b/source/03-components/FormItem/weekArgs.ts index 8b09c55f..40798d10 100644 --- a/source/03-components/FormItem/weekArgs.ts +++ b/source/03-components/FormItem/weekArgs.ts @@ -1,4 +1,4 @@ -import { InputProps } from '@/source/03-components/FormItem/FormItem'; +import { InputProps } from '~components/FormItem/FormItem'; const weekArgs = { id: 'week', diff --git a/source/03-components/HeroBgImage/HeroBgImage.tsx b/source/03-components/HeroBgImage/HeroBgImage.tsx index 052d2842..bbb4054a 100644 --- a/source/03-components/HeroBgImage/HeroBgImage.tsx +++ b/source/03-components/HeroBgImage/HeroBgImage.tsx @@ -1,7 +1,7 @@ import clsx from 'clsx'; import { GessoComponent } from 'gesso'; import { ReactNode, type JSX } from 'react'; -import { LinkButton, LinkProps } from '../Button/Button'; +import { LinkButton, LinkProps } from '~components/Button/Button'; import styles from './hero-bg-image.module.css'; interface HeroBgImageProps extends GessoComponent { diff --git a/source/03-components/HeroBgImage/heroBgImageArgs.tsx b/source/03-components/HeroBgImage/heroBgImageArgs.tsx index 64aed227..6374e8a0 100644 --- a/source/03-components/HeroBgImage/heroBgImageArgs.tsx +++ b/source/03-components/HeroBgImage/heroBgImageArgs.tsx @@ -1,4 +1,4 @@ -import { HeroBgImageProps } from '@/source/03-components/HeroBgImage/HeroBgImage'; +import { HeroBgImageProps } from '~components/HeroBgImage/HeroBgImage'; const heroBgImageArgs = { hasOverlay: true, diff --git a/source/03-components/HeroInlineImage/HeroInlineImage.tsx b/source/03-components/HeroInlineImage/HeroInlineImage.tsx index c2a9824b..a4d9f6c7 100644 --- a/source/03-components/HeroInlineImage/HeroInlineImage.tsx +++ b/source/03-components/HeroInlineImage/HeroInlineImage.tsx @@ -1,7 +1,7 @@ import clsx from 'clsx'; import { GessoComponent } from 'gesso'; import { ReactNode, type JSX } from 'react'; -import { LinkButton, LinkProps } from '../Button/Button'; +import { LinkButton, LinkProps } from '~components/Button/Button'; import styles from './hero-inline-image.module.css'; interface HeroInlineImageProps extends GessoComponent { diff --git a/source/03-components/HeroInlineImage/heroInlineImageArgs.tsx b/source/03-components/HeroInlineImage/heroInlineImageArgs.tsx index 10cd5f2f..2947ce9e 100644 --- a/source/03-components/HeroInlineImage/heroInlineImageArgs.tsx +++ b/source/03-components/HeroInlineImage/heroInlineImageArgs.tsx @@ -1,4 +1,4 @@ -import { HeroInlineImageProps } from '@/source/03-components/HeroInlineImage/HeroInlineImage'; +import { HeroInlineImageProps } from '~components/HeroInlineImage/HeroInlineImage'; const heroInlineImageArgs = { hasOverlay: true, diff --git a/source/03-components/ImageTeaser/ImageTeaser.stories.tsx b/source/03-components/ImageTeaser/ImageTeaser.stories.tsx index e36bc05f..b45b95dd 100644 --- a/source/03-components/ImageTeaser/ImageTeaser.stories.tsx +++ b/source/03-components/ImageTeaser/ImageTeaser.stories.tsx @@ -1,5 +1,5 @@ import { Meta, StoryObj } from '@storybook/nextjs'; -import { withGlobalWrapper } from '../../../.storybook/decorators'; +import { withGlobalWrapper } from '~/.storybook/decorators'; import ImageTeaserComponent from './ImageTeaser'; import imageTeaserArgs from './imageTeaserArgs'; diff --git a/source/03-components/ImageTeaser/ImageTeaser.tsx b/source/03-components/ImageTeaser/ImageTeaser.tsx index 10db43f8..42beeb5e 100644 --- a/source/03-components/ImageTeaser/ImageTeaser.tsx +++ b/source/03-components/ImageTeaser/ImageTeaser.tsx @@ -2,7 +2,7 @@ import clsx from 'clsx'; import { GessoComponent } from 'gesso'; import Link from 'next/link'; import { ElementType, ReactNode, type JSX } from 'react'; -import Media from '../../02-layouts/Media/Media'; +import Media from '~layouts/Media/Media'; import styles from './image-teaser.module.css'; interface ImageTeaserProps extends GessoComponent { diff --git a/source/03-components/ImageTeaser/imageTeaserArgs.tsx b/source/03-components/ImageTeaser/imageTeaserArgs.tsx index f1be656f..1599a70d 100644 --- a/source/03-components/ImageTeaser/imageTeaserArgs.tsx +++ b/source/03-components/ImageTeaser/imageTeaserArgs.tsx @@ -1,4 +1,4 @@ -import { ImageTeaserProps } from '@/source/03-components/ImageTeaser/ImageTeaser'; +import { ImageTeaserProps } from '~components/ImageTeaser/ImageTeaser'; const imageTeaserArgs = { url: '#0', diff --git a/source/03-components/List/List.stories.tsx b/source/03-components/List/List.stories.tsx index 39e57260..5a5c45b7 100644 --- a/source/03-components/List/List.stories.tsx +++ b/source/03-components/List/List.stories.tsx @@ -1,5 +1,5 @@ import { Meta, StoryObj } from '@storybook/nextjs'; -import { withGlobalWrapper } from '../../../.storybook/decorators'; +import { withGlobalWrapper } from '~/.storybook/decorators'; import listStyles from './list.module.css'; import type { JSX } from 'react'; diff --git a/source/03-components/Menu/OverlayMenu/OverlayMenu.tsx b/source/03-components/Menu/OverlayMenu/OverlayMenu.tsx index 571abcc2..72ea9a60 100644 --- a/source/03-components/Menu/OverlayMenu/OverlayMenu.tsx +++ b/source/03-components/Menu/OverlayMenu/OverlayMenu.tsx @@ -3,9 +3,9 @@ import clsx from 'clsx'; import { GessoComponent } from 'gesso'; import { JSX, useCallback, useEffect, useId, useRef, useState } from 'react'; -import HamburgerButton from '../../HamburgerButton/HamburgerButton'; -import buttonStyles from '../../HamburgerButton/hamburger-button.module.css'; -import Menu, { MenuItem } from '../Menu'; +import HamburgerButton from '~components/HamburgerButton/HamburgerButton'; +import buttonStyles from '~components/HamburgerButton/hamburger-button.module.css'; +import Menu, { MenuItem } from '~components/Menu/Menu'; import styles from './overlay-menu.module.css'; interface OverlayMenuProps extends GessoComponent { diff --git a/source/03-components/Menu/OverlayMenu/overlayMenuArgs.ts b/source/03-components/Menu/OverlayMenu/overlayMenuArgs.ts index e601107f..9a5057ac 100644 --- a/source/03-components/Menu/OverlayMenu/overlayMenuArgs.ts +++ b/source/03-components/Menu/OverlayMenu/overlayMenuArgs.ts @@ -1,4 +1,4 @@ -import { OverlayMenuProps } from '@/source/03-components/Menu/OverlayMenu/OverlayMenu'; +import { OverlayMenuProps } from '~components/Menu/OverlayMenu/OverlayMenu'; const overlayMenuArgs = { items: [ diff --git a/source/03-components/Menu/ResponsiveMenu/ResponsiveMenu.tsx b/source/03-components/Menu/ResponsiveMenu/ResponsiveMenu.tsx index 96c880f5..c0b0259e 100644 --- a/source/03-components/Menu/ResponsiveMenu/ResponsiveMenu.tsx +++ b/source/03-components/Menu/ResponsiveMenu/ResponsiveMenu.tsx @@ -2,8 +2,8 @@ import { GessoComponent } from 'gesso'; import { useEffect, useState, type JSX } from 'react'; -import Menu, { MenuItem } from '../Menu'; -import OverlayMenu from '../OverlayMenu/OverlayMenu'; +import Menu, { MenuItem } from '~components/Menu/Menu'; +import OverlayMenu from '~components/Menu/OverlayMenu/OverlayMenu'; import styles from './responsive-menu.module.css'; interface ResponsiveMenuProps extends GessoComponent { diff --git a/source/03-components/Menu/ResponsiveMenu/responsiveMenuArgs.ts b/source/03-components/Menu/ResponsiveMenu/responsiveMenuArgs.ts index f9303900..9d2bd732 100644 --- a/source/03-components/Menu/ResponsiveMenu/responsiveMenuArgs.ts +++ b/source/03-components/Menu/ResponsiveMenu/responsiveMenuArgs.ts @@ -1,4 +1,4 @@ -import { ResponsiveMenuProps } from '@/source/03-components/Menu/ResponsiveMenu/ResponsiveMenu'; +import { ResponsiveMenuProps } from '~components/Menu/ResponsiveMenu/ResponsiveMenu'; const responsiveMenuArgs = { items: [ diff --git a/source/03-components/Menu/menuArgs.ts b/source/03-components/Menu/menuArgs.ts index d091344f..85b15ba7 100644 --- a/source/03-components/Menu/menuArgs.ts +++ b/source/03-components/Menu/menuArgs.ts @@ -1,4 +1,4 @@ -import { MenuProps } from '@/source/03-components/Menu/Menu'; +import { MenuProps } from '~components/Menu/Menu'; const menuArgs = { items: [ diff --git a/source/03-components/Menu/menuFooterArgs.ts b/source/03-components/Menu/menuFooterArgs.ts index d00439c2..315f15db 100644 --- a/source/03-components/Menu/menuFooterArgs.ts +++ b/source/03-components/Menu/menuFooterArgs.ts @@ -1,4 +1,4 @@ -import { MenuProps } from '@/source/03-components/Menu/Menu'; +import { MenuProps } from '~components/Menu/Menu'; const menuFooterArgs = { items: [ diff --git a/source/03-components/Modal/Modal.stories.tsx b/source/03-components/Modal/Modal.stories.tsx index ca8a045a..699fd36f 100644 --- a/source/03-components/Modal/Modal.stories.tsx +++ b/source/03-components/Modal/Modal.stories.tsx @@ -1,6 +1,6 @@ import { Meta, StoryObj } from '@storybook/nextjs'; -import Constrain from '../../02-layouts/Constrain/Constrain'; -import { Button } from '../Button'; +import { Button } from '~components/Button/Button'; +import Constrain from '~layouts/Constrain/Constrain'; import ModalComponent from './Modal'; import modalArgs from './modalArgs'; diff --git a/source/03-components/Modal/modalArgs.tsx b/source/03-components/Modal/modalArgs.tsx index 539e7d6b..64a2591e 100644 --- a/source/03-components/Modal/modalArgs.tsx +++ b/source/03-components/Modal/modalArgs.tsx @@ -1,4 +1,4 @@ -import { ModalProps } from '@/source/03-components/Modal/Modal'; +import { ModalProps } from '~components/Modal/Modal'; const modalArgs = { defaultOpen: true, diff --git a/source/03-components/PageTitle/PageTitle.stories.tsx b/source/03-components/PageTitle/PageTitle.stories.tsx index f70178dd..46e8e53d 100644 --- a/source/03-components/PageTitle/PageTitle.stories.tsx +++ b/source/03-components/PageTitle/PageTitle.stories.tsx @@ -1,5 +1,5 @@ import { Meta, StoryObj } from '@storybook/nextjs'; -import { withGlobalWrapper } from '../../../.storybook/decorators'; +import { withGlobalWrapper } from '~/.storybook/decorators'; import PageTitleComponent from './PageTitle'; import pageTitleArgs from './page-title.yml'; diff --git a/source/03-components/PageTitle/pageTitleArgs.ts b/source/03-components/PageTitle/pageTitleArgs.ts index e63b12cc..70b08838 100644 --- a/source/03-components/PageTitle/pageTitleArgs.ts +++ b/source/03-components/PageTitle/pageTitleArgs.ts @@ -1,4 +1,4 @@ -import { PageTitleProps } from '@/source/03-components/PageTitle/PageTitle'; +import { PageTitleProps } from '~components/PageTitle/PageTitle'; const pageTitleArgs = { pageTitle: 'Page Title', diff --git a/source/03-components/Pager/Pager.tsx b/source/03-components/Pager/Pager.tsx index 6db18b87..1795d7d4 100644 --- a/source/03-components/Pager/Pager.tsx +++ b/source/03-components/Pager/Pager.tsx @@ -1,14 +1,14 @@ 'use client'; -import AngleDoubleLeft from '@/source/01-global/icon/icons/AngleDoubleLeft'; -import AngleDoubleRight from '@/source/01-global/icon/icons/AngleDoubleRight'; -import AngleLeft from '@/source/01-global/icon/icons/AngleLeft'; -import AngleRight from '@/source/01-global/icon/icons/AngleRight'; -import generatePagination from '@/source/06-utility/generatePagination'; import clsx from 'clsx'; import { GessoComponent } from 'gesso'; import Link from 'next/link'; import { usePathname, useSearchParams } from 'next/navigation'; +import AngleDoubleLeft from '~global/icon/icons/AngleDoubleLeft'; +import AngleDoubleRight from '~global/icon/icons/AngleDoubleRight'; +import AngleLeft from '~global/icon/icons/AngleLeft'; +import AngleRight from '~global/icon/icons/AngleRight'; +import generatePagination from '~utility/generatePagination'; import styles from './pager.module.css'; interface PagerProps extends GessoComponent { diff --git a/source/03-components/Pager/pagerArgs.ts b/source/03-components/Pager/pagerArgs.ts index f2600f51..6d6421ee 100644 --- a/source/03-components/Pager/pagerArgs.ts +++ b/source/03-components/Pager/pagerArgs.ts @@ -1,4 +1,4 @@ -import { PagerProps } from '@/source/03-components/Pager/Pager'; +import { PagerProps } from '~components/Pager/Pager'; const pagerArgs = { totalPages: 16, diff --git a/source/03-components/ReadMoreLink/ReadMoreLink.stories.tsx b/source/03-components/ReadMoreLink/ReadMoreLink.stories.tsx index e25396e4..2b80b841 100644 --- a/source/03-components/ReadMoreLink/ReadMoreLink.stories.tsx +++ b/source/03-components/ReadMoreLink/ReadMoreLink.stories.tsx @@ -1,5 +1,5 @@ import { Meta, StoryObj } from '@storybook/nextjs'; -import { withGlobalWrapper } from '../../../.storybook/decorators'; +import { withGlobalWrapper } from '~/.storybook/decorators'; import ReadMoreLinkComponent from './ReadMoreLink'; import readMoreLinkArgs from './readMoreLinkArgs'; diff --git a/source/03-components/ReadMoreLink/readMoreLinkArgs.ts b/source/03-components/ReadMoreLink/readMoreLinkArgs.ts index 07950888..0f7bcdfa 100644 --- a/source/03-components/ReadMoreLink/readMoreLinkArgs.ts +++ b/source/03-components/ReadMoreLink/readMoreLinkArgs.ts @@ -1,4 +1,4 @@ -import { ReadMoreLinkProps } from '@/source/03-components/ReadMoreLink/ReadMoreLink'; +import { ReadMoreLinkProps } from '~components/ReadMoreLink/ReadMoreLink'; const readMoreLinkArgs = { title: 'Title', diff --git a/source/03-components/SiteName/SiteName.stories.tsx b/source/03-components/SiteName/SiteName.stories.tsx index aec8a27b..265f4664 100644 --- a/source/03-components/SiteName/SiteName.stories.tsx +++ b/source/03-components/SiteName/SiteName.stories.tsx @@ -1,5 +1,5 @@ import { Meta, StoryObj } from '@storybook/nextjs'; -import { withGlobalWrapper } from '../../../.storybook/decorators'; +import { withGlobalWrapper } from '~/.storybook/decorators'; import SiteNameComponent from './SiteName'; import siteNameArgs from './siteNameArgs'; diff --git a/source/03-components/SiteName/siteNameArgs.ts b/source/03-components/SiteName/siteNameArgs.ts index 4697a99c..6cc02d31 100644 --- a/source/03-components/SiteName/siteNameArgs.ts +++ b/source/03-components/SiteName/siteNameArgs.ts @@ -1,4 +1,4 @@ -import { SiteNameProps } from '@/source/03-components/SiteName/SiteName'; +import { SiteNameProps } from '~components/SiteName/SiteName'; const siteNameArgs = { siteName: 'Site Name', diff --git a/source/03-components/Skiplink/Skiplink.tsx b/source/03-components/Skiplink/Skiplink.tsx index 4489d9c3..f000924a 100644 --- a/source/03-components/Skiplink/Skiplink.tsx +++ b/source/03-components/Skiplink/Skiplink.tsx @@ -1,7 +1,7 @@ import clsx from 'clsx'; import { GessoComponent } from 'gesso'; import { JSX } from 'react'; -import { MAIN_ID } from '../../00-config/constants'; +import { MAIN_ID } from '~/source/00-config/constants'; import styles from './skiplink.module.css'; interface SkiplinkProps extends GessoComponent { diff --git a/source/03-components/Skiplink/skiplinkArgs.ts b/source/03-components/Skiplink/skiplinkArgs.ts index 45415f8f..403cb151 100644 --- a/source/03-components/Skiplink/skiplinkArgs.ts +++ b/source/03-components/Skiplink/skiplinkArgs.ts @@ -1,4 +1,4 @@ -import { SkiplinkProps } from '@/source/03-components/Skiplink/Skiplink'; +import { SkiplinkProps } from '~components/Skiplink/Skiplink'; const skiplinkArgs = { id: 'main', diff --git a/source/03-components/StyledSelect/StyledSelect.stories.tsx b/source/03-components/StyledSelect/StyledSelect.stories.tsx index bbe15417..e6f9296c 100644 --- a/source/03-components/StyledSelect/StyledSelect.stories.tsx +++ b/source/03-components/StyledSelect/StyledSelect.stories.tsx @@ -1,5 +1,5 @@ import { Meta, StoryObj } from '@storybook/nextjs'; -import { withGlobalWrapper } from '../../../.storybook/decorators'; +import { withGlobalWrapper } from '~/.storybook/decorators'; import StyledSelectComponent from './StyledSelect'; import styledSelectArgs from './styledSelectArgs'; import withGroupsArgs from './withGroupsArgs'; diff --git a/source/03-components/StyledSelect/styledSelectArgs.ts b/source/03-components/StyledSelect/styledSelectArgs.ts index dea736e5..fbd28210 100644 --- a/source/03-components/StyledSelect/styledSelectArgs.ts +++ b/source/03-components/StyledSelect/styledSelectArgs.ts @@ -1,5 +1,5 @@ -import DropdownOption from '@/source/03-components/StyledSelect/DropdownOption'; import { Props } from 'react-select'; +import DropdownOption from './DropdownOption'; const styledSelectArgs = { options: [ diff --git a/source/03-components/StyledSelect/withGroupsArgs.ts b/source/03-components/StyledSelect/withGroupsArgs.ts index a27b5a46..b701cba5 100644 --- a/source/03-components/StyledSelect/withGroupsArgs.ts +++ b/source/03-components/StyledSelect/withGroupsArgs.ts @@ -1,5 +1,5 @@ -import DropdownOption from '@/source/03-components/StyledSelect/DropdownOption'; import { Props } from 'react-select'; +import DropdownOption from './DropdownOption'; const withGroupsArgs = { options: [ diff --git a/source/03-components/Tag/Tag.stories.tsx b/source/03-components/Tag/Tag.stories.tsx index 902fb811..b4f6edd7 100644 --- a/source/03-components/Tag/Tag.stories.tsx +++ b/source/03-components/Tag/Tag.stories.tsx @@ -1,5 +1,5 @@ import { Meta, StoryObj } from '@storybook/nextjs'; -import { withGlobalWrapper } from '../../../.storybook/decorators'; +import { withGlobalWrapper } from '~/.storybook/decorators'; import TagComponent from './Tag'; import tagArgs from './tagArgs'; diff --git a/source/03-components/Tag/tagArgs.ts b/source/03-components/Tag/tagArgs.ts index 676c6def..e17e7af6 100644 --- a/source/03-components/Tag/tagArgs.ts +++ b/source/03-components/Tag/tagArgs.ts @@ -1,4 +1,4 @@ -import { TagProps } from '@/source/03-components/Tag/Tag'; +import { TagProps } from '~components/Tag/Tag'; const tagArgs = { title: 'Title', diff --git a/source/03-components/TagList/TagList.stories.tsx b/source/03-components/TagList/TagList.stories.tsx index 39c07a7b..7105fbeb 100644 --- a/source/03-components/TagList/TagList.stories.tsx +++ b/source/03-components/TagList/TagList.stories.tsx @@ -1,5 +1,5 @@ import { Meta, StoryObj } from '@storybook/nextjs'; -import { withGlobalWrapper } from '../../../.storybook/decorators'; +import { withGlobalWrapper } from '~/.storybook/decorators'; import TagListComponent from './TagList'; import tagListArgs from './tagListArgs'; diff --git a/source/03-components/TagList/TagList.tsx b/source/03-components/TagList/TagList.tsx index b501fda1..952759ec 100644 --- a/source/03-components/TagList/TagList.tsx +++ b/source/03-components/TagList/TagList.tsx @@ -1,6 +1,6 @@ import clsx from 'clsx'; import { GessoComponent } from 'gesso'; -import Tag, { TagProps } from '../Tag/Tag'; +import Tag, { TagProps } from '~components/Tag/Tag'; import styles from './tag-list.module.css'; import type { JSX } from 'react'; diff --git a/source/03-components/TagList/tagListArgs.ts b/source/03-components/TagList/tagListArgs.ts index d7076c6d..7997919e 100644 --- a/source/03-components/TagList/tagListArgs.ts +++ b/source/03-components/TagList/tagListArgs.ts @@ -1,4 +1,4 @@ -import { TagListProps } from '@/source/03-components/TagList/TagList'; +import { TagListProps } from '~components/TagList/TagList'; const tagListArgs = { items: [ diff --git a/source/03-components/Video/Video.stories.tsx b/source/03-components/Video/Video.stories.tsx index 685967f6..a405622d 100644 --- a/source/03-components/Video/Video.stories.tsx +++ b/source/03-components/Video/Video.stories.tsx @@ -1,5 +1,5 @@ import { Meta, StoryObj } from '@storybook/nextjs'; -import { withGlobalWrapper } from '../../../.storybook/decorators'; +import { withGlobalWrapper } from '~/.storybook/decorators'; import VideoComponent from './Video'; import videoArgs from './videoArgs'; diff --git a/source/03-components/Video/videoArgs.ts b/source/03-components/Video/videoArgs.ts index 21448510..4e4b0f69 100644 --- a/source/03-components/Video/videoArgs.ts +++ b/source/03-components/Video/videoArgs.ts @@ -1,4 +1,4 @@ -import { VideoProps } from '@/source/03-components/Video/Video'; +import { VideoProps } from '~components/Video/Video'; const videoArgs = { iframeSrc: 'https://player.vimeo.com/video/505735218', diff --git a/source/03-components/Wysiwyg/Wysiwyg.stories.tsx b/source/03-components/Wysiwyg/Wysiwyg.stories.tsx index 2478945e..d454e64a 100644 --- a/source/03-components/Wysiwyg/Wysiwyg.stories.tsx +++ b/source/03-components/Wysiwyg/Wysiwyg.stories.tsx @@ -1,5 +1,5 @@ import { Meta, StoryObj } from '@storybook/nextjs'; -import { withGlobalWrapper } from '../../../.storybook/decorators'; +import { withGlobalWrapper } from '~/.storybook/decorators'; import WysiwygComponent from './Wysiwyg'; import wysiwygArgs from './wysiwygArgs'; diff --git a/source/03-components/Wysiwyg/wysiwygArgs.tsx b/source/03-components/Wysiwyg/wysiwygArgs.tsx index 697b0ef4..7ef42070 100644 --- a/source/03-components/Wysiwyg/wysiwygArgs.tsx +++ b/source/03-components/Wysiwyg/wysiwygArgs.tsx @@ -1,4 +1,4 @@ -import { WysiwygProps } from '@/source/03-components/Wysiwyg/Wysiwyg'; +import { WysiwygProps } from '~components/Wysiwyg/Wysiwyg'; const wysiwygArgs = { children: ( diff --git a/source/04-templates/LandingPage/LandingPage.stories.tsx b/source/04-templates/LandingPage/LandingPage.stories.tsx index 5ed91019..dfee5a62 100644 --- a/source/04-templates/LandingPage/LandingPage.stories.tsx +++ b/source/04-templates/LandingPage/LandingPage.stories.tsx @@ -1,5 +1,5 @@ import { Meta, StoryObj } from '@storybook/nextjs'; -import SampleContent from '../../06-utility/storybook/SampleContent'; +import SampleContent from '~utility/storybook/SampleContent'; import LandingPageTemplate from './LandingPage'; const meta: Meta = { diff --git a/source/04-templates/LandingPage/LandingPage.tsx b/source/04-templates/LandingPage/LandingPage.tsx index b0362dc3..a3d551b9 100644 --- a/source/04-templates/LandingPage/LandingPage.tsx +++ b/source/04-templates/LandingPage/LandingPage.tsx @@ -1,7 +1,7 @@ import { JSX, ReactNode } from 'react'; -import { MAIN_ID } from '../../00-config/constants'; -import Main from '../../02-layouts/Main/Main'; -import PageTitle from '../../03-components/PageTitle/PageTitle'; +import { MAIN_ID } from '~/source/00-config/constants'; +import PageTitle from '~components/PageTitle/PageTitle'; +import Main from '~layouts/Main/Main'; interface PageProps { mainId?: string; diff --git a/source/04-templates/Page/Page.stories.tsx b/source/04-templates/Page/Page.stories.tsx index 783bf6e4..6fa44e43 100644 --- a/source/04-templates/Page/Page.stories.tsx +++ b/source/04-templates/Page/Page.stories.tsx @@ -1,5 +1,5 @@ import { Meta, StoryObj } from '@storybook/nextjs'; -import SampleContent from '../../06-utility/storybook/SampleContent'; +import SampleContent from '~utility/storybook/SampleContent'; import PageTemplate from './Page'; const meta: Meta = { diff --git a/source/04-templates/Page/Page.tsx b/source/04-templates/Page/Page.tsx index 517e13b7..4f48bf07 100644 --- a/source/04-templates/Page/Page.tsx +++ b/source/04-templates/Page/Page.tsx @@ -1,7 +1,7 @@ import { JSX, ReactNode } from 'react'; -import { MAIN_ID } from '../../00-config/constants'; -import Main from '../../02-layouts/Main/Main'; -import Article from '../../03-components/Article/Article'; +import { MAIN_ID } from '~/source/00-config/constants'; +import Article from '~components/Article/Article'; +import Main from '~layouts/Main/Main'; interface PageProps { mainId?: string; diff --git a/source/05-pages/Homepage.stories.tsx b/source/05-pages/Homepage.stories.tsx index fb2c54d9..a0f5e2d3 100644 --- a/source/05-pages/Homepage.stories.tsx +++ b/source/05-pages/Homepage.stories.tsx @@ -1,13 +1,13 @@ import { Meta, StoryObj } from '@storybook/nextjs'; -import Grid from '../02-layouts/Grid/Grid'; -import Section from '../02-layouts/Section/Section'; -import Card, { CardProps } from '../03-components/Card/Card'; -import { Default as CardStory } from '../03-components/Card/Card.stories'; +import Card, { CardProps } from '~components/Card/Card'; +import { Default as CardStory } from '~components/Card/Card.stories'; import HeroBgImage, { HeroBgImageProps, -} from '../03-components/HeroBgImage/HeroBgImage'; -import { Default as HeroStory } from '../03-components/HeroBgImage/HeroBgImage.stories'; -import LandingPage from '../04-templates/LandingPage/LandingPage'; +} from '~components/HeroBgImage/HeroBgImage'; +import { Default as HeroStory } from '~components/HeroBgImage/HeroBgImage.stories'; +import Grid from '~layouts/Grid/Grid'; +import Section from '~layouts/Section/Section'; +import LandingPage from '~templates/LandingPage/LandingPage'; import PageWrapper from './page-wrappers/default'; interface HomepageStoryArgs { diff --git a/source/05-pages/Page.stories.tsx b/source/05-pages/Page.stories.tsx index 1c1403b5..40abf239 100644 --- a/source/05-pages/Page.stories.tsx +++ b/source/05-pages/Page.stories.tsx @@ -1,9 +1,9 @@ -import { WYSIWYG as WysiwygStory } from '@/source/03-components/Wysiwyg/Wysiwyg.stories'; import { Meta, StoryObj } from '@storybook/nextjs'; -import Breadcrumb from '../03-components/Breadcrumb/Breadcrumb'; -import { Breadcrumb as BreadcrumbStory } from '../03-components/Breadcrumb/Breadcrumb.stories'; -import Wysiwyg from '../03-components/Wysiwyg/Wysiwyg'; -import PageTemplate, { PageProps } from '../04-templates/Page/Page'; +import Breadcrumb from '~components/Breadcrumb/Breadcrumb'; +import { Breadcrumb as BreadcrumbStory } from '~components/Breadcrumb/Breadcrumb.stories'; +import Wysiwyg from '~components/Wysiwyg/Wysiwyg'; +import { WYSIWYG as WysiwygStory } from '~components/Wysiwyg/Wysiwyg.stories'; +import PageTemplate, { PageProps } from '~templates/Page/Page'; import PageWrapper from './page-wrappers/default'; interface PageStoryArgs { diff --git a/source/05-pages/page-wrappers/default.tsx b/source/05-pages/page-wrappers/default.tsx index 5c327e37..14b081b8 100644 --- a/source/05-pages/page-wrappers/default.tsx +++ b/source/05-pages/page-wrappers/default.tsx @@ -1,15 +1,15 @@ -import { FooterMenu as FooterMenuStory } from '@/source/03-components/Menu/Menu.stories'; import { ReactNode, type JSX } from 'react'; -import Footer from '../../02-layouts/Footer/Footer'; -import Header from '../../02-layouts/Header/Header'; -import SiteContainer from '../../02-layouts/SiteContainer/SiteContainer'; -import BackToTop from '../../03-components/BackToTop/BackToTop'; -import Menu from '../../03-components/Menu/Menu'; -import ResponsiveMenu from '../../03-components/Menu/ResponsiveMenu/ResponsiveMenu'; -import { ResponsiveMenu as ResponsiveMenuStory } from '../../03-components/Menu/ResponsiveMenu/ResponsiveMenu.stories'; -import SiteName from '../../03-components/SiteName/SiteName'; -import { SiteName as SiteNameStory } from '../../03-components/SiteName/SiteName.stories'; -import Skiplink from '../../03-components/Skiplink/Skiplink'; +import BackToTop from '~components/BackToTop/BackToTop'; +import Menu from '~components/Menu/Menu'; +import { FooterMenu as FooterMenuStory } from '~components/Menu/Menu.stories'; +import ResponsiveMenu from '~components/Menu/ResponsiveMenu/ResponsiveMenu'; +import { ResponsiveMenu as ResponsiveMenuStory } from '~components/Menu/ResponsiveMenu/ResponsiveMenu.stories'; +import SiteName from '~components/SiteName/SiteName'; +import { SiteName as SiteNameStory } from '~components/SiteName/SiteName.stories'; +import Skiplink from '~components/Skiplink/Skiplink'; +import Footer from '~layouts/Footer/Footer'; +import Header from '~layouts/Header/Header'; +import SiteContainer from '~layouts/SiteContainer/SiteContainer'; interface PageWrapperProps { children?: ReactNode; diff --git a/starterkits/drupal/app/[...slug]/page.tsx b/starterkits/drupal/app/[...slug]/page.tsx index 5d0ace2a..cb22db19 100644 --- a/starterkits/drupal/app/[...slug]/page.tsx +++ b/starterkits/drupal/app/[...slug]/page.tsx @@ -1,21 +1,21 @@ -import LandingPageFull from '@/app/_components/content/LandingPageFull'; -import { graphql } from '@/types/__generated__'; +import { draftMode } from 'next/headers'; +import { notFound } from 'next/navigation'; +import BasicPageFull from '~/app/_components/content/BasicPageFull'; +import LandingPageFull from '~/app/_components/content/LandingPageFull'; +import { graphql } from '~/types/__generated__'; import { GetNodeByPathQuery, GetNodeByPathQueryVariables, NodeLandingPage, NodePage, -} from '@/types/__generated__/graphql'; +} from '~/types/__generated__/graphql'; import { canShowEntity, entityExists, routeIsInternal, -} from '@/util/drupal/dataIsEntityType'; -import query from '@/util/drupal/query'; -import entityIsType from '@/util/entityIsType'; -import { draftMode } from 'next/headers'; -import { notFound } from 'next/navigation'; -import BasicPageFull from '../_components/content/BasicPageFull'; +} from '~/util/drupal/dataIsEntityType'; +import query from '~/util/drupal/query'; +import entityIsType from '~/util/entityIsType'; const getNodeByPath = graphql(` query GetNodeByPath($path: String!) { diff --git a/starterkits/drupal/app/_components/content/ArticleCard.tsx b/starterkits/drupal/app/_components/content/ArticleCard.tsx index e42a848d..01d52b36 100644 --- a/starterkits/drupal/app/_components/content/ArticleCard.tsx +++ b/starterkits/drupal/app/_components/content/ArticleCard.tsx @@ -1,7 +1,7 @@ -import Card from '@/source/03-components/Card/Card'; -import { FragmentType, getFragmentData, graphql } from '@/types/__generated__'; import Image from 'next/image'; import { JSX } from 'react'; +import { FragmentType, getFragmentData, graphql } from '~/types/__generated__'; +import Card from '~components/Card/Card'; const ArticleCardFragment = graphql(` fragment ArticleCardFragment on NodeArticle { diff --git a/starterkits/drupal/app/_components/content/ArticleFull.tsx b/starterkits/drupal/app/_components/content/ArticleFull.tsx index 79ac36e3..b64f8d13 100644 --- a/starterkits/drupal/app/_components/content/ArticleFull.tsx +++ b/starterkits/drupal/app/_components/content/ArticleFull.tsx @@ -1,8 +1,8 @@ -import Article from '@/source/03-components/Article/Article'; -import Wysiwyg from '@/source/03-components/Wysiwyg/Wysiwyg'; -import { FragmentType, getFragmentData, graphql } from '@/types/__generated__'; import parse from 'html-react-parser'; import { JSX } from 'react'; +import { FragmentType, getFragmentData, graphql } from '~/types/__generated__'; +import Article from '~components/Article/Article'; +import Wysiwyg from '~components/Wysiwyg/Wysiwyg'; const ArticleFullFragment = graphql(` fragment ArticleFullFragment on NodeArticle { diff --git a/starterkits/drupal/app/_components/content/BasicPageCard.tsx b/starterkits/drupal/app/_components/content/BasicPageCard.tsx index bea77612..dc1557ce 100644 --- a/starterkits/drupal/app/_components/content/BasicPageCard.tsx +++ b/starterkits/drupal/app/_components/content/BasicPageCard.tsx @@ -1,6 +1,6 @@ -import Card from '@/source/03-components/Card/Card'; -import { FragmentType, getFragmentData, graphql } from '@/types/__generated__'; import { JSX } from 'react'; +import { FragmentType, getFragmentData, graphql } from '~/types/__generated__'; +import Card from '~components/Card/Card'; const BasicPageCardFragment = graphql(` fragment BasicPageCardFragment on NodePage { diff --git a/starterkits/drupal/app/_components/content/BasicPageFull.tsx b/starterkits/drupal/app/_components/content/BasicPageFull.tsx index 730bdfa2..055020e6 100644 --- a/starterkits/drupal/app/_components/content/BasicPageFull.tsx +++ b/starterkits/drupal/app/_components/content/BasicPageFull.tsx @@ -1,8 +1,8 @@ -import Wysiwyg from '@/source/03-components/Wysiwyg/Wysiwyg'; -import Page from '@/source/04-templates/Page/Page'; -import { FragmentType, getFragmentData, graphql } from '@/types/__generated__'; import parse from 'html-react-parser'; import { JSX } from 'react'; +import { FragmentType, getFragmentData, graphql } from '~/types/__generated__'; +import Wysiwyg from '~components/Wysiwyg/Wysiwyg'; +import Page from '~templates/Page/Page'; const BasicPageFragment = graphql(` fragment BasicPageFragment on NodePage { diff --git a/starterkits/drupal/app/_components/content/LandingPageFull.tsx b/starterkits/drupal/app/_components/content/LandingPageFull.tsx index c834d08a..bb728dc5 100644 --- a/starterkits/drupal/app/_components/content/LandingPageFull.tsx +++ b/starterkits/drupal/app/_components/content/LandingPageFull.tsx @@ -1,6 +1,6 @@ -import mapParagraph from '@/app/_components/paragraphs/mapParagraph'; -import Page from '@/source/04-templates/Page/Page'; -import { FragmentType, getFragmentData, graphql } from '@/types/__generated__'; +import mapParagraph from '~/app/_components/paragraphs/mapParagraph'; +import { FragmentType, getFragmentData, graphql } from '~/types/__generated__'; +import Page from '~templates/Page/Page'; const LandingPageFragment = graphql(` fragment LandingPageFragment on NodeLandingPage { diff --git a/starterkits/drupal/app/_components/navigation/MenuItemFragment.ts b/starterkits/drupal/app/_components/navigation/MenuItemFragment.ts index 8cab4776..51d1c6a5 100644 --- a/starterkits/drupal/app/_components/navigation/MenuItemFragment.ts +++ b/starterkits/drupal/app/_components/navigation/MenuItemFragment.ts @@ -1,4 +1,4 @@ -import { graphql } from '@/types/__generated__'; +import { graphql } from '~/types/__generated__'; const MenuItemFragment = graphql(` fragment MenuItemFragment on MenuItem { diff --git a/starterkits/drupal/app/_components/paragraphs/AccordionParagraph.tsx b/starterkits/drupal/app/_components/paragraphs/AccordionParagraph.tsx index 06b1d215..3a3d2a0c 100644 --- a/starterkits/drupal/app/_components/paragraphs/AccordionParagraph.tsx +++ b/starterkits/drupal/app/_components/paragraphs/AccordionParagraph.tsx @@ -1,6 +1,6 @@ -import Accordion from '@/source/03-components/Accordion/Accordion'; -import { FragmentType, getFragmentData, graphql } from '@/types/__generated__'; -import entityIsType from '@/util/entityIsType'; +import { FragmentType, getFragmentData, graphql } from '~/types/__generated__'; +import entityIsType from '~/util/entityIsType'; +import Accordion from '~components/Accordion/Accordion'; const AccordionItemParagraphFragment = graphql(` fragment AccordionItemParagraphFragment on ParagraphAccordionItem { diff --git a/starterkits/drupal/app/_components/paragraphs/AllParagraphsFragment.ts b/starterkits/drupal/app/_components/paragraphs/AllParagraphsFragment.ts index 0107f748..86d33073 100644 --- a/starterkits/drupal/app/_components/paragraphs/AllParagraphsFragment.ts +++ b/starterkits/drupal/app/_components/paragraphs/AllParagraphsFragment.ts @@ -1,4 +1,4 @@ -import { graphql } from '@/types/__generated__'; +import { graphql } from '~/types/__generated__'; /** * Fragment for all potential paragraph types we want to retrieve if they're diff --git a/starterkits/drupal/app/_components/paragraphs/BlockEmbedParagraph.tsx b/starterkits/drupal/app/_components/paragraphs/BlockEmbedParagraph.tsx index 56cabda0..74a9d138 100644 --- a/starterkits/drupal/app/_components/paragraphs/BlockEmbedParagraph.tsx +++ b/starterkits/drupal/app/_components/paragraphs/BlockEmbedParagraph.tsx @@ -1,4 +1,4 @@ -import { FragmentType, getFragmentData, graphql } from '@/types/__generated__'; +import { FragmentType, getFragmentData, graphql } from '~/types/__generated__'; const BlockEmbedParagraphFragment = graphql(` fragment BlockEmbedParagraphFragment on ParagraphBlockEmbed { diff --git a/starterkits/drupal/app/_components/paragraphs/CallToActionParagraph.tsx b/starterkits/drupal/app/_components/paragraphs/CallToActionParagraph.tsx index 411bc64f..ca9a5695 100644 --- a/starterkits/drupal/app/_components/paragraphs/CallToActionParagraph.tsx +++ b/starterkits/drupal/app/_components/paragraphs/CallToActionParagraph.tsx @@ -1,5 +1,5 @@ -import CallToAction from '@/source/03-components/CallToAction/CallToAction'; -import { FragmentType, getFragmentData, graphql } from '@/types/__generated__'; +import { FragmentType, getFragmentData, graphql } from '~/types/__generated__'; +import CallToAction from '~components/CallToAction/CallToAction'; const CallToActionParagraphFragment = graphql(` fragment CallToActionParagraphFragment on ParagraphCallToAction { diff --git a/starterkits/drupal/app/_components/paragraphs/CardParagraph.tsx b/starterkits/drupal/app/_components/paragraphs/CardParagraph.tsx index edb9e5dc..edb1446a 100644 --- a/starterkits/drupal/app/_components/paragraphs/CardParagraph.tsx +++ b/starterkits/drupal/app/_components/paragraphs/CardParagraph.tsx @@ -1,6 +1,6 @@ -import Card from '@/source/03-components/Card/Card'; -import { FragmentType, getFragmentData, graphql } from '@/types/__generated__'; import Image from 'next/image'; +import { FragmentType, getFragmentData, graphql } from '~/types/__generated__'; +import Card from '~components/Card/Card'; const CardParagraphFragment = graphql(` fragment CardParagraphFragment on ParagraphCard { diff --git a/starterkits/drupal/app/_components/paragraphs/CardsParagraph.tsx b/starterkits/drupal/app/_components/paragraphs/CardsParagraph.tsx index 77b750e1..a1c2c64c 100644 --- a/starterkits/drupal/app/_components/paragraphs/CardsParagraph.tsx +++ b/starterkits/drupal/app/_components/paragraphs/CardsParagraph.tsx @@ -1,7 +1,7 @@ -import Grid from '@/source/02-layouts/Grid/Grid'; -import { FragmentType, getFragmentData, graphql } from '@/types/__generated__'; -import { ParagraphCard } from '@/types/__generated__/graphql'; -import entityIsType from '@/util/entityIsType'; +import { FragmentType, getFragmentData, graphql } from '~/types/__generated__'; +import { ParagraphCard } from '~/types/__generated__/graphql'; +import entityIsType from '~/util/entityIsType'; +import Grid from '~layouts/Grid/Grid'; import { paragraphMapping } from './mapParagraph'; const CardsParagraphFragment = graphql(` diff --git a/starterkits/drupal/app/_components/paragraphs/DynamicCardParagraph.tsx b/starterkits/drupal/app/_components/paragraphs/DynamicCardParagraph.tsx index 2a8ba863..d9b78603 100644 --- a/starterkits/drupal/app/_components/paragraphs/DynamicCardParagraph.tsx +++ b/starterkits/drupal/app/_components/paragraphs/DynamicCardParagraph.tsx @@ -1,6 +1,6 @@ -import { FragmentType, getFragmentData, graphql } from '@/types/__generated__'; import dynamic from 'next/dynamic'; import { ComponentType } from 'react'; +import { FragmentType, getFragmentData, graphql } from '~/types/__generated__'; const DynamicCardParagraphFragment = graphql(` fragment DynamicCardParagraphFragment on ParagraphDynamicCard { diff --git a/starterkits/drupal/app/_components/paragraphs/HeroParagraph.tsx b/starterkits/drupal/app/_components/paragraphs/HeroParagraph.tsx index 2e999bdc..54138ac7 100644 --- a/starterkits/drupal/app/_components/paragraphs/HeroParagraph.tsx +++ b/starterkits/drupal/app/_components/paragraphs/HeroParagraph.tsx @@ -1,6 +1,6 @@ -import HeroInlineImage from '@/source/03-components/HeroInlineImage/HeroInlineImage'; -import { FragmentType, getFragmentData, graphql } from '@/types/__generated__'; import Image from 'next/image'; +import { FragmentType, getFragmentData, graphql } from '~/types/__generated__'; +import HeroInlineImage from '~components/HeroInlineImage/HeroInlineImage'; const HeroParagraphFragment = graphql(` fragment HeroParagraphFragment on ParagraphHero { diff --git a/starterkits/drupal/app/_components/paragraphs/WysiwygParagraph.tsx b/starterkits/drupal/app/_components/paragraphs/WysiwygParagraph.tsx index 5f6b2d12..590ef375 100644 --- a/starterkits/drupal/app/_components/paragraphs/WysiwygParagraph.tsx +++ b/starterkits/drupal/app/_components/paragraphs/WysiwygParagraph.tsx @@ -1,6 +1,6 @@ -import Wysiwyg from '@/source/03-components/Wysiwyg/Wysiwyg'; -import { FragmentType, getFragmentData, graphql } from '@/types/__generated__'; import parse from 'html-react-parser'; +import { FragmentType, getFragmentData, graphql } from '~/types/__generated__'; +import Wysiwyg from '~components/Wysiwyg/Wysiwyg'; const WysiwygParagraphFragment = graphql(` fragment WysiwygParagraphFragment on ParagraphWysiwyg { diff --git a/starterkits/drupal/app/_components/paragraphs/mapParagraph.tsx b/starterkits/drupal/app/_components/paragraphs/mapParagraph.tsx index 6b470b63..c96a9047 100644 --- a/starterkits/drupal/app/_components/paragraphs/mapParagraph.tsx +++ b/starterkits/drupal/app/_components/paragraphs/mapParagraph.tsx @@ -1,6 +1,6 @@ -import { FragmentType, getFragmentData } from '@/types/__generated__'; import dynamic from 'next/dynamic'; import { JSX } from 'react'; +import { FragmentType, getFragmentData } from '~/types/__generated__'; import AllParagraphsFragment from './AllParagraphsFragment'; /** diff --git a/starterkits/drupal/app/api/preview/route.ts b/starterkits/drupal/app/api/preview/route.ts index 20eef51f..eab88fcf 100644 --- a/starterkits/drupal/app/api/preview/route.ts +++ b/starterkits/drupal/app/api/preview/route.ts @@ -1,7 +1,7 @@ -import drupal from '@/util/drupal/drupal'; import { draftMode } from 'next/headers'; import { redirect } from 'next/navigation'; import { NextRequest, NextResponse } from 'next/server'; +import drupal from '~/util/drupal/drupal'; async function GET(request: NextRequest) { if (!request) { diff --git a/starterkits/drupal/app/blog/[slug]/page.tsx b/starterkits/drupal/app/blog/[slug]/page.tsx index 0239d12d..4f2ac9b0 100644 --- a/starterkits/drupal/app/blog/[slug]/page.tsx +++ b/starterkits/drupal/app/blog/[slug]/page.tsx @@ -1,18 +1,18 @@ -import { graphql } from '@/types/__generated__'; +import { draftMode } from 'next/headers'; +import { notFound } from 'next/navigation'; +import ArticleFull from '~/app/_components/content/ArticleFull'; +import { graphql } from '~/types/__generated__'; import { GetArticleByPathQuery, GetArticleByPathQueryVariables, NodeArticle, -} from '@/types/__generated__/graphql'; +} from '~/types/__generated__/graphql'; import { canShowEntity, entityExists, routeIsInternal, -} from '@/util/drupal/dataIsEntityType'; -import query from '@/util/drupal/query'; -import { draftMode } from 'next/headers'; -import { notFound } from 'next/navigation'; -import ArticleFull from '../../_components/content/ArticleFull'; +} from '~/util/drupal/dataIsEntityType'; +import query from '~/util/drupal/query'; const getArticleByName = graphql(` query GetArticleByPath($path: String!) { diff --git a/starterkits/drupal/app/layout.tsx b/starterkits/drupal/app/layout.tsx index 21f75e65..ec6f6244 100644 --- a/starterkits/drupal/app/layout.tsx +++ b/starterkits/drupal/app/layout.tsx @@ -1,18 +1,18 @@ -import '../source/00-config/index.css'; +import '~/source/00-config/index.css'; import { JSX, PropsWithChildren } from 'react'; -import sourceSansPro from '../source/01-global/fonts/source-sans'; -import '../source/01-global/index.css'; -import Footer from '../source/02-layouts/Footer/Footer'; -import Header from '../source/02-layouts/Header/Header'; -import SiteContainer from '../source/02-layouts/SiteContainer/SiteContainer'; -import BackToTop from '../source/03-components/BackToTop/BackToTop'; -import Menu from '../source/03-components/Menu/Menu'; -import ResponsiveMenu from '../source/03-components/Menu/ResponsiveMenu/ResponsiveMenu'; -import footerStyles from '../source/03-components/Menu/menu-footer.module.css'; -import SiteName from '../source/03-components/SiteName/SiteName'; -import Skiplink from '../source/03-components/Skiplink/Skiplink'; -import '../source/06-utility/index.css'; +import BackToTop from '~components/BackToTop/BackToTop'; +import Menu from '~components/Menu/Menu'; +import ResponsiveMenu from '~components/Menu/ResponsiveMenu/ResponsiveMenu'; +import footerStyles from '~components/Menu/menu-footer.module.css'; +import SiteName from '~components/SiteName/SiteName'; +import Skiplink from '~components/Skiplink/Skiplink'; +import sourceSansPro from '~global/fonts/source-sans'; +import '~global/index.css'; +import Footer from '~layouts/Footer/Footer'; +import Header from '~layouts/Header/Header'; +import SiteContainer from '~layouts/SiteContainer/SiteContainer'; +import '~utility/index.css'; function RootLayout({ children }: PropsWithChildren): JSX.Element { return ( diff --git a/starterkits/drupal/app/page.tsx b/starterkits/drupal/app/page.tsx index a045c516..73bfc7db 100644 --- a/starterkits/drupal/app/page.tsx +++ b/starterkits/drupal/app/page.tsx @@ -1,10 +1,10 @@ import { Metadata } from 'next'; import Image from 'next/image'; -import heroPlaceholder from '../public/images/hero-placeholder.jpg'; -import Section from '../source/02-layouts/Section/Section'; -import HeroBgImage from '../source/03-components/HeroBgImage/HeroBgImage'; -import Wysiwyg from '../source/03-components/Wysiwyg/Wysiwyg'; -import LandingPage from '../source/04-templates/LandingPage/LandingPage'; +import heroPlaceholder from '~/public/images/hero-placeholder.jpg'; +import HeroBgImage from '~components/HeroBgImage/HeroBgImage'; +import Wysiwyg from '~components/Wysiwyg/Wysiwyg'; +import Section from '~layouts/Section/Section'; +import LandingPage from '~templates/LandingPage/LandingPage'; const title = 'Forum One Next.js Starter App'; diff --git a/starterkits/drupal/examples/_components/content/FilmFull.tsx b/starterkits/drupal/examples/_components/content/FilmFull.tsx index 04f78750..294e3cf3 100644 --- a/starterkits/drupal/examples/_components/content/FilmFull.tsx +++ b/starterkits/drupal/examples/_components/content/FilmFull.tsx @@ -6,10 +6,10 @@ * of a content field that uses Paragraphs. */ -import Film from '@/source/04-templates/Film/Film'; -import { FragmentType, getFragmentData, graphql } from '@/types/__generated__'; import Image from 'next/image'; import { JSX } from 'react'; +import { FragmentType, getFragmentData, graphql } from '~/types/__generated__'; +import Film from '~templates/Film/Film'; import mapParagraph from '../paragraphs/mapParagraph'; /** diff --git a/starterkits/drupal/examples/_components/content/FilmTeaser.tsx b/starterkits/drupal/examples/_components/content/FilmTeaser.tsx index 7bb10323..a1f2c833 100644 --- a/starterkits/drupal/examples/_components/content/FilmTeaser.tsx +++ b/starterkits/drupal/examples/_components/content/FilmTeaser.tsx @@ -6,9 +6,9 @@ * reused the same way a view mode would be. */ -import ImageTeaser from '@/source/03-components/ImageTeaser/ImageTeaser.tsx'; -import { FragmentType, getFragmentData, graphql } from '@/types/__generated__'; import Image from 'next/image'; +import { FragmentType, getFragmentData, graphql } from '~/types/__generated__'; +import ImageTeaser from '~components/ImageTeaser/ImageTeaser.tsx'; /** * Fragment for the film teaser. Compare with the fragment in FilmFull.tsx -- diff --git a/starterkits/drupal/examples/_components/layout/GlobalFooter.tsx b/starterkits/drupal/examples/_components/layout/GlobalFooter.tsx index 9fcc1a52..b47617b8 100644 --- a/starterkits/drupal/examples/_components/layout/GlobalFooter.tsx +++ b/starterkits/drupal/examples/_components/layout/GlobalFooter.tsx @@ -5,12 +5,12 @@ * Also includes an example of retrieving a Custom Block from GraphQL. */ -import Footer from '@/source/02-layouts/Footer/Footer'; -import { FragmentType, getFragmentData, graphql } from '@/types/__generated__'; import parse from 'html-react-parser'; import { JSX } from 'react'; -import FooterMenu from '../navigation/FooterMenu'; -import SocialMenu from '../navigation/SocialMenu'; +import FooterMenu from '~/app/navigation/FooterMenu'; +import SocialMenu from '~/app/navigation/SocialMenu'; +import { FragmentType, getFragmentData, graphql } from '~/types/__generated__'; +import Footer from '~layouts/Footer/Footer'; /** * Fragment for the global footer. diff --git a/starterkits/drupal/examples/_components/layout/GlobalHeader.tsx b/starterkits/drupal/examples/_components/layout/GlobalHeader.tsx index a8f39717..3a08e2c6 100644 --- a/starterkits/drupal/examples/_components/layout/GlobalHeader.tsx +++ b/starterkits/drupal/examples/_components/layout/GlobalHeader.tsx @@ -3,11 +3,11 @@ * Example integration for global header. */ -import Header from '@/source/02-layouts/Header/Header'; -import SiteName from '@/source/03-components/SiteName/SiteName'; -import { FragmentType, getFragmentData, graphql } from '@/types/__generated__'; import { JSX } from 'react'; -import MainMenu from '../_navigation/MainMenu'; +import MainMenu from '~/app/_navigation/MainMenu'; +import { FragmentType, getFragmentData, graphql } from '~/types/__generated__'; +import SiteName from '~components/SiteName/SiteName'; +import Header from '~layouts/Header/Header'; /** * Fragment for the global header. diff --git a/starterkits/drupal/examples/_components/navigation/FooterMenu.tsx b/starterkits/drupal/examples/_components/navigation/FooterMenu.tsx index 71150603..2daebb30 100644 --- a/starterkits/drupal/examples/_components/navigation/FooterMenu.tsx +++ b/starterkits/drupal/examples/_components/navigation/FooterMenu.tsx @@ -3,15 +3,15 @@ * Example integration for a simple one-level menu, such as in a footer. */ -import Menu from '@/source/03-components/Menu/Menu'; +import { FragmentType, getFragmentData, graphql } from '~/types/__generated__'; +import { prepMenuItems } from '~/util/prepMenuItems'; +import Menu from '~components/Menu/Menu'; /** * The styles are imported here in order to pass the footer-specific class names * into the Menu component. Another option would be to create a component for * the footer menu in Storybook and import it instead of the generic Menu. */ -import styles from '@/source/03-components/Menu/menu-footer.module.css'; -import { FragmentType, getFragmentData, graphql } from '@/types/__generated__'; -import { prepMenuItems } from '@/util/prepMenuItems'; +import styles from '~components/Menu/menu-footer.module.css'; /** * Fragment for the footer menu items. diff --git a/starterkits/drupal/examples/_components/navigation/MainMenu.tsx b/starterkits/drupal/examples/_components/navigation/MainMenu.tsx index ade42e55..d61e0626 100644 --- a/starterkits/drupal/examples/_components/navigation/MainMenu.tsx +++ b/starterkits/drupal/examples/_components/navigation/MainMenu.tsx @@ -4,10 +4,10 @@ * shown on mobile. */ -import { MenuItem as GessoMenuItem } from '@/source/03-components/Menu/Menu'; -import ResponsiveMenu from '@/source/03-components/Menu/ResponsiveMenu/ResponsiveMenu'; -import { FragmentType, getFragmentData, graphql } from '@/types/__generated__'; -import { prepMenuItems } from '@/util/prepMenuItems'; +import { FragmentType, getFragmentData, graphql } from '~/types/__generated__'; +import { prepMenuItems } from '~/util/prepMenuItems'; +import { MenuItem as GessoMenuItem } from '~components/Menu/Menu'; +import ResponsiveMenu from '~components/Menu/ResponsiveMenu/ResponsiveMenu'; /** * Fragment for the main menu. diff --git a/starterkits/drupal/examples/_components/navigation/SocialMenu.tsx b/starterkits/drupal/examples/_components/navigation/SocialMenu.tsx index 2ac9f12f..7bc655a3 100644 --- a/starterkits/drupal/examples/_components/navigation/SocialMenu.tsx +++ b/starterkits/drupal/examples/_components/navigation/SocialMenu.tsx @@ -6,10 +6,10 @@ * to each menu item, which is then mapped to an icon using the Icon component. */ -import Icons from '@/source/01-global/icon/icons'; -import Menu, { MenuItem } from '@/source/03-components/Menu/Menu'; -import styles from '@/source/03-components/Menu/menu-social.module.css'; -import { FragmentType, getFragmentData, graphql } from '@/types/__generated__'; +import { FragmentType, getFragmentData, graphql } from '~/types/__generated__'; +import Menu, { MenuItem } from '~components/Menu/Menu'; +import styles from '~components/Menu/menu-social.module.css'; +import Icons from '~global/icon/icons'; /** * Fragment for the menu items. You may need to use the beta version of the diff --git a/starterkits/drupal/examples/_components/paragraphs/QuoteParagraph.tsx b/starterkits/drupal/examples/_components/paragraphs/QuoteParagraph.tsx index 8a49abef..c6957ae7 100644 --- a/starterkits/drupal/examples/_components/paragraphs/QuoteParagraph.tsx +++ b/starterkits/drupal/examples/_components/paragraphs/QuoteParagraph.tsx @@ -1,5 +1,5 @@ -import Quote from '@/source/03-components/Quote/Quote'; -import { FragmentType, getFragmentData, graphql } from '@/types/__generated__'; +import { FragmentType, getFragmentData, graphql } from '~/types/__generated__'; +import Quote from '~components/Quote/Quote'; /** * Fragment for a quote paragraph with just two plain text fields, diff --git a/starterkits/drupal/examples/_components/paragraphs/TriviaParagraph.tsx b/starterkits/drupal/examples/_components/paragraphs/TriviaParagraph.tsx index c3fccee7..a51a7964 100644 --- a/starterkits/drupal/examples/_components/paragraphs/TriviaParagraph.tsx +++ b/starterkits/drupal/examples/_components/paragraphs/TriviaParagraph.tsx @@ -1,5 +1,5 @@ -import Box from '@/source/03-components/Box/Box'; -import { FragmentType, getFragmentData, graphql } from '@/types/__generated__'; +import { FragmentType, getFragmentData, graphql } from '~/types/__generated__'; +import Box from '~components/Box/Box'; /** * Fragment for a trivia paragraph with a text field for the title and diff --git a/starterkits/drupal/examples/_components/views/FilmsListing.tsx b/starterkits/drupal/examples/_components/views/FilmsListing.tsx index 8d07492c..879e429e 100644 --- a/starterkits/drupal/examples/_components/views/FilmsListing.tsx +++ b/starterkits/drupal/examples/_components/views/FilmsListing.tsx @@ -3,11 +3,11 @@ * Component to integrate a paginated view of films. */ -import Pager from '@/source/03-components/Pager/Pager'; -import ListingPage from '@/source/04-templates/ListingPage/ListingPage;'; -import { FragmentType, getFragmentData, graphql } from '@/types/__generated__'; -import entityIsType from '@/util/entityIsType'; import { JSX, Suspense } from 'react'; +import { FragmentType, getFragmentData, graphql } from '~/types/__generated__'; +import entityIsType from '~/util/entityIsType'; +import Pager from '~components/Pager/Pager'; +import ListingPage from '~templates/ListingPage/ListingPage;'; import FilmTeaser, { FilmTeaserFragment } from '../content/FilmTeaser'; /** diff --git a/starterkits/drupal/examples/films/page.tsx b/starterkits/drupal/examples/films/page.tsx index fee0d6d4..0331e90e 100644 --- a/starterkits/drupal/examples/films/page.tsx +++ b/starterkits/drupal/examples/films/page.tsx @@ -3,8 +3,8 @@ * * Example query and integration for a films listing page. */ -import { graphql } from '@/types/__generated__'; -import query from '@/util/query'; +import { graphql } from '~/types/__generated__'; +import query from '~/util/query'; import FilmsListing from '../views/FilmsListing'; /** diff --git a/starterkits/drupal/examples/layout.tsx b/starterkits/drupal/examples/layout.tsx index 7e7eb4dd..1391e8b5 100644 --- a/starterkits/drupal/examples/layout.tsx +++ b/starterkits/drupal/examples/layout.tsx @@ -3,16 +3,16 @@ * Example of an outer layout that uses the example header and footer. */ -import '@/source/00-config/index.css'; +import '~/source/00-config/index.css'; -import sourceSansPro from '@/source/01-global/fonts/source-sans'; -import '@/source/01-global/index.css'; -import SiteContainer from '@/source/02-layouts/SiteContainer/SiteContainer'; -import Skiplink from '@/source/03-components/Skiplink/Skiplink'; -import '@/source/06-utility/index.css'; -import { graphql } from '@/types/drupal/__generated__'; -import { query } from '@/util/drupal/drupal'; import { JSX, PropsWithChildren } from 'react'; +import { graphql } from '~/types/drupal/__generated__'; +import { query } from '~/util/drupal/drupal'; +import Skiplink from '~components/Skiplink/Skiplink'; +import sourceSansPro from '~global/fonts/source-sans'; +import '~global/index.css'; +import SiteContainer from '~layouts/SiteContainer/SiteContainer'; +import '~utility/index.css'; import GlobalFooter from './layout/GlobalFooter.tsx'; import GlobalHeader from './layout/GlobalHeader.tsx'; diff --git a/starterkits/drupal/util/dataIsEntityType.ts b/starterkits/drupal/util/dataIsEntityType.ts index 83d12372..bf62585c 100644 --- a/starterkits/drupal/util/dataIsEntityType.ts +++ b/starterkits/drupal/util/dataIsEntityType.ts @@ -1,5 +1,5 @@ -import { RouteInternal } from '@/types/__generated__/graphql'; -import entityIsType from '@/util/entityIsType'; +import { RouteInternal } from '~/types/__generated__/graphql'; +import entityIsType from '~/util/entityIsType'; function routeIsInternal( route: { __typename?: string } | null | undefined, diff --git a/starterkits/drupal/util/prepMenuItems.ts b/starterkits/drupal/util/prepMenuItems.ts index 64e87cbf..e553acff 100644 --- a/starterkits/drupal/util/prepMenuItems.ts +++ b/starterkits/drupal/util/prepMenuItems.ts @@ -1,7 +1,7 @@ -import MenuItemFragment from '@/app/_components/navigation/MenuItemFragment'; -import { MenuItem as GessoMenuItem } from '@/source/03-components/Menu/Menu'; -import { FragmentType, getFragmentData } from '@/types/__generated__'; -import { MenuItemFragmentFragment } from '@/types/__generated__/graphql'; +import MenuItemFragment from '~/app/_components/navigation/MenuItemFragment'; +import { FragmentType, getFragmentData } from '~/types/__generated__'; +import { MenuItemFragmentFragment } from '~/types/__generated__/graphql'; +import { MenuItem as GessoMenuItem } from '~components/Menu/Menu'; interface MenuItemFragmentWithUrl extends MenuItemFragmentFragment { url: string; diff --git a/starterkits/wp/app/ClientProvider.tsx b/starterkits/wp/app/ClientProvider.tsx index 5751d2ae..c83689d4 100644 --- a/starterkits/wp/app/ClientProvider.tsx +++ b/starterkits/wp/app/ClientProvider.tsx @@ -1,8 +1,8 @@ 'use client'; -import coreBlocks from '@/app/_components/blocks/core'; import { WordPressBlocksProvider } from '@faustwp/blocks'; import { PropsWithChildren } from 'react'; +import coreBlocks from '~/app/_components/blocks/core'; type ClientProviderProps = PropsWithChildren; /** diff --git a/starterkits/wp/app/[slug]/getPageQuery.ts b/starterkits/wp/app/[slug]/getPageQuery.ts index 681511fc..94c5c571 100644 --- a/starterkits/wp/app/[slug]/getPageQuery.ts +++ b/starterkits/wp/app/[slug]/getPageQuery.ts @@ -1,5 +1,5 @@ -import WpBlocksFragment from '@/app/_components/blocks/WpBlocksFragment'; import { gql } from '@apollo/client'; +import WpBlocksFragment from '~/app/_components/blocks/WpBlocksFragment'; const getPageQuery = gql` ${WpBlocksFragment} diff --git a/starterkits/wp/app/[slug]/page.tsx b/starterkits/wp/app/[slug]/page.tsx index 432d5b5b..a3e41e92 100644 --- a/starterkits/wp/app/[slug]/page.tsx +++ b/starterkits/wp/app/[slug]/page.tsx @@ -1,19 +1,19 @@ -import LoginForm from '@/app/[slug]/LoginForm'; -import getPageQuery from '@/app/[slug]/getPageQuery'; -import BlocksViewer from '@/app/_components/content/BlocksViewer'; -import Article from '@/source/03-components/Article/Article'; -import LandingPage from '@/source/04-templates/LandingPage/LandingPage'; -import { NextSearchParamsProp } from '@/types/NextSearchParams'; -import { - GetPageQuery, - GetPageQueryVariables, - PageIdType, -} from '@/types/__generated__/graphql'; -import { hasPreviewProps } from '@/util/wp/hasPreviewProp'; import { ApolloClient } from '@apollo/client'; import { getAuthClient, getClient } from '@faustwp/experimental-app-router'; import { Metadata } from 'next'; import { notFound } from 'next/navigation'; +import LoginForm from '~/app/[slug]/LoginForm'; +import getPageQuery from '~/app/[slug]/getPageQuery'; +import BlocksViewer from '~/app/_components/content/BlocksViewer'; +import { NextSearchParamsProp } from '~/types/NextSearchParams'; +import { + GetPageQuery, + GetPageQueryVariables, + PageIdType, +} from '~/types/__generated__/graphql'; +import { hasPreviewProps } from '~/util/wp/hasPreviewProp'; +import Article from '~components/Article/Article'; +import LandingPage from '~templates/LandingPage/LandingPage'; async function getWpPageData( id: string, diff --git a/starterkits/wp/app/_components/content/BlocksViewer.tsx b/starterkits/wp/app/_components/content/BlocksViewer.tsx index f6547acd..9d7741b2 100644 --- a/starterkits/wp/app/_components/content/BlocksViewer.tsx +++ b/starterkits/wp/app/_components/content/BlocksViewer.tsx @@ -1,6 +1,6 @@ -import { isNotNullNorUndefined } from '@/util/isNullOrUndefined'; -import { Data, flatListToHierarchical } from '@/util/wp/flatListToHierarchical'; import { Fragment, JSX } from 'react'; +import { isNotNullNorUndefined } from '~/util/isNullOrUndefined'; +import { Data, flatListToHierarchical } from '~/util/wp/flatListToHierarchical'; import customBlocks from '../blocks/custom'; import FaustBlockViewer from './FaustBlockViewer'; diff --git a/starterkits/wp/app/_components/content/CursorNavigation.tsx b/starterkits/wp/app/_components/content/CursorNavigation.tsx index a6f80bdd..5c96e401 100644 --- a/starterkits/wp/app/_components/content/CursorNavigation.tsx +++ b/starterkits/wp/app/_components/content/CursorNavigation.tsx @@ -1,4 +1,4 @@ -import { LinkButton } from '@/source/03-components/Button'; +import { LinkButton } from '~components/Button'; enum ArchiveParams { AFTER = 'after', diff --git a/starterkits/wp/app/_components/content/FaustBlockViewer.tsx b/starterkits/wp/app/_components/content/FaustBlockViewer.tsx index 1128cb23..3c496636 100644 --- a/starterkits/wp/app/_components/content/FaustBlockViewer.tsx +++ b/starterkits/wp/app/_components/content/FaustBlockViewer.tsx @@ -1,8 +1,8 @@ 'use client'; -import { Data } from '@/util/wp/flatListToHierarchical'; import { WordPressBlocksViewer } from '@faustwp/blocks'; import { JSX } from 'react'; +import { Data } from '~/util/wp/flatListToHierarchical'; function FaustBlockViewer(block: Data): JSX.Element | null { if (block?.block && typeof block.block === 'object') { diff --git a/starterkits/wp/app/_components/content/SiteSearch/SiteSearch.tsx b/starterkits/wp/app/_components/content/SiteSearch/SiteSearch.tsx index 09f79279..108a7cec 100644 --- a/starterkits/wp/app/_components/content/SiteSearch/SiteSearch.tsx +++ b/starterkits/wp/app/_components/content/SiteSearch/SiteSearch.tsx @@ -1,14 +1,14 @@ 'use client'; -import SearchParams from '@/app/search/SearchParams'; -import Constrain from '@/source/02-layouts/Constrain/Constrain'; -import { Button } from '@/source/03-components/Button'; -import FormItem from '@/source/03-components/FormItem/FormItem'; import clsx from 'clsx'; import { ConstrainComponent } from 'gesso'; import Image from 'next/image'; import { useRouter } from 'next/navigation'; import { FormEvent, FormEventHandler, JSX, useId, useState } from 'react'; +import SearchParams from '~/app/search/SearchParams'; +import { Button } from '~components/Button'; +import FormItem from '~components/FormItem/FormItem'; +import Constrain from '~layouts/Constrain/Constrain'; import styles from './site-search.module.css'; interface SiteSearchFormProps extends ConstrainComponent { diff --git a/starterkits/wp/app/blog/[slug]/getPostQuery.ts b/starterkits/wp/app/blog/[slug]/getPostQuery.ts index 838f9c59..aa728999 100644 --- a/starterkits/wp/app/blog/[slug]/getPostQuery.ts +++ b/starterkits/wp/app/blog/[slug]/getPostQuery.ts @@ -1,5 +1,5 @@ -import WpBlocksFragment from '@/app/_components/blocks/WpBlocksFragment'; import { gql } from '@apollo/client'; +import WpBlocksFragment from '~/app/_components/blocks/WpBlocksFragment'; const getPostQuery = gql` ${WpBlocksFragment} diff --git a/starterkits/wp/app/blog/[slug]/page.tsx b/starterkits/wp/app/blog/[slug]/page.tsx index 3d6a694d..155f55db 100644 --- a/starterkits/wp/app/blog/[slug]/page.tsx +++ b/starterkits/wp/app/blog/[slug]/page.tsx @@ -1,19 +1,19 @@ -import LoginForm from '@/app/[slug]/LoginForm'; -import BlocksViewer from '@/app/_components/content/BlocksViewer'; -import getPostQuery from '@/app/blog/[slug]/getPostQuery'; -import Article from '@/source/03-components/Article/Article'; -import LandingPage from '@/source/04-templates/LandingPage/LandingPage'; -import { NextSearchParamsProp } from '@/types/NextSearchParams'; -import { - GetPostQuery, - GetPostQueryVariables, - PostIdType, -} from '@/types/__generated__/graphql'; -import { hasPreviewProps } from '@/util/wp/hasPreviewProp'; import { ApolloClient } from '@apollo/client'; import { getAuthClient, getClient } from '@faustwp/experimental-app-router'; import { Metadata } from 'next'; import { notFound } from 'next/navigation'; +import LoginForm from '~/app/[slug]/LoginForm'; +import BlocksViewer from '~/app/_components/content/BlocksViewer'; +import getPostQuery from '~/app/blog/[slug]/getPostQuery'; +import { NextSearchParamsProp } from '~/types/NextSearchParams'; +import { + GetPostQuery, + GetPostQueryVariables, + PostIdType, +} from '~/types/__generated__/graphql'; +import { hasPreviewProps } from '~/util/wp/hasPreviewProp'; +import Article from '~components/Article/Article'; +import LandingPage from '~templates/LandingPage/LandingPage'; async function getWpPostData( id: string, diff --git a/starterkits/wp/app/blog/page.tsx b/starterkits/wp/app/blog/page.tsx index f359f735..26aef19c 100644 --- a/starterkits/wp/app/blog/page.tsx +++ b/starterkits/wp/app/blog/page.tsx @@ -1,17 +1,17 @@ +import { getClient } from '@faustwp/experimental-app-router'; +import { Metadata } from 'next'; +import Link from 'next/link'; import CursorNavigation, { ArchiveParams, -} from '@/app/_components/content/CursorNavigation'; -import Article from '@/source/03-components/Article/Article'; -import LandingPage from '@/source/04-templates/LandingPage/LandingPage'; -import { NextSearchParamsProp } from '@/types/NextSearchParams'; +} from '~/app/_components/content/CursorNavigation'; +import { NextSearchParamsProp } from '~/types/NextSearchParams'; import { BlogArchiveQuery, BlogArchiveQueryVariables, -} from '@/types/__generated__/graphql'; -import stringParamsFromSearch from '@/util/wp/stringParamsFromSearch'; -import { getClient } from '@faustwp/experimental-app-router'; -import { Metadata } from 'next'; -import Link from 'next/link'; +} from '~/types/__generated__/graphql'; +import stringParamsFromSearch from '~/util/wp/stringParamsFromSearch'; +import Article from '~components/Article/Article'; +import LandingPage from '~templates/LandingPage/LandingPage'; import blogArchiveQuery from './blogArchiveQuery'; const PAGE_TITLE = 'Blog'; diff --git a/starterkits/wp/app/layout.tsx b/starterkits/wp/app/layout.tsx index fac02a1e..2611c9bd 100644 --- a/starterkits/wp/app/layout.tsx +++ b/starterkits/wp/app/layout.tsx @@ -1,27 +1,27 @@ -import '@/source/00-config/index.css'; +import '~/source/00-config/index.css'; -import ClientProvider from '@/app/ClientProvider'; -import layoutMetadataQuery from '@/app/layoutMetadataQuery'; -import '@/faust.config.js'; -import sourceSansPro from '@/source/01-global/fonts/source-sans'; -import '@/source/01-global/index.css'; -import Footer from '@/source/02-layouts/Footer/Footer'; -import Header from '@/source/02-layouts/Header/Header'; -import SiteContainer from '@/source/02-layouts/SiteContainer/SiteContainer'; -import BackToTop from '@/source/03-components/BackToTop/BackToTop'; -import Menu from '@/source/03-components/Menu/Menu'; -import addBasePath from '@/source/06-utility/addBasePath'; -import '@/source/06-utility/index.css'; -import { - GetLayoutQuery, - LayoutMetadataQuery, -} from '@/types/__generated__/graphql'; -import { arrayFromAcf } from '@/util/wp/acfTools'; import { gql } from '@apollo/client'; import { getClient } from '@faustwp/experimental-app-router'; import { FaustProvider } from '@faustwp/experimental-app-router/ssr'; import { Metadata } from 'next'; import { PropsWithChildren } from 'react'; +import ClientProvider from '~/app/ClientProvider'; +import layoutMetadataQuery from '~/app/layoutMetadataQuery'; +import '~/faust.config.js'; +import { + GetLayoutQuery, + LayoutMetadataQuery, +} from '~/types/__generated__/graphql'; +import { arrayFromAcf } from '~/util/wp/acfTools'; +import BackToTop from '~components/BackToTop/BackToTop'; +import Menu from '~components/Menu/Menu'; +import sourceSansPro from '~global/fonts/source-sans'; +import '~global/index.css'; +import Footer from '~layouts/Footer/Footer'; +import Header from '~layouts/Header/Header'; +import SiteContainer from '~layouts/SiteContainer/SiteContainer'; +import addBasePath from '~utility/addBasePath'; +import '~utility/index.css'; export async function generateMetadata(): Promise { const client = await getClient(); diff --git a/starterkits/wp/app/not-found.tsx b/starterkits/wp/app/not-found.tsx index 7414716f..d071df7b 100644 --- a/starterkits/wp/app/not-found.tsx +++ b/starterkits/wp/app/not-found.tsx @@ -1,5 +1,5 @@ -import Main from '@/source/02-layouts/Main/Main'; -import PageTitle from '@/source/03-components/PageTitle/PageTitle'; +import PageTitle from '~components/PageTitle/PageTitle'; +import Main from '~layouts/Main/Main'; function NotFoundPage() { return ( diff --git a/starterkits/wp/app/page.tsx b/starterkits/wp/app/page.tsx index 54b103a9..4bdfbb4b 100644 --- a/starterkits/wp/app/page.tsx +++ b/starterkits/wp/app/page.tsx @@ -1,12 +1,14 @@ -import getPageQuery from '@/app/[slug]/getPageQuery'; -import BlocksViewer from '@/app/_components/content/BlocksViewer'; +import { ApolloClient } from '@apollo/client'; +import { getAuthClient, getClient } from '@faustwp/experimental-app-router'; +import { Metadata } from 'next'; +import Link from 'next/link'; +import getPageQuery from '~/app/[slug]/getPageQuery'; +import BlocksViewer from '~/app/_components/content/BlocksViewer'; import CursorNavigation, { ArchiveParams, -} from '@/app/_components/content/CursorNavigation'; -import blogArchiveQuery from '@/app/blog/blogArchiveQuery'; -import Article from '@/source/03-components/Article/Article'; -import LandingPage from '@/source/04-templates/LandingPage/LandingPage'; -import { NextSearchParamsProp } from '@/types/NextSearchParams'; +} from '~/app/_components/content/CursorNavigation'; +import blogArchiveQuery from '~/app/blog/blogArchiveQuery'; +import { NextSearchParamsProp } from '~/types/NextSearchParams'; import { BlogArchiveQuery, BlogArchiveQueryVariables, @@ -15,15 +17,13 @@ import { GetReadingSettingsQuery, HomeMetadataQuery, PageIdType, -} from '@/types/__generated__/graphql'; -import { hasPreviewProps } from '@/util/wp/hasPreviewProp'; +} from '~/types/__generated__/graphql'; +import { hasPreviewProps } from '~/util/wp/hasPreviewProp'; import stringParamsFromSearch, { StringParams, -} from '@/util/wp/stringParamsFromSearch'; -import { ApolloClient } from '@apollo/client'; -import { getAuthClient, getClient } from '@faustwp/experimental-app-router'; -import { Metadata } from 'next'; -import Link from 'next/link'; +} from '~/util/wp/stringParamsFromSearch'; +import Article from '~components/Article/Article'; +import LandingPage from '~templates/LandingPage/LandingPage'; import LoginForm from './[slug]/LoginForm'; import homeMetadataQuery from './homeMetadataQuery'; import readingSettingsQuery from './readingSettingsQuery'; diff --git a/starterkits/wp/app/search/SearchForm.tsx b/starterkits/wp/app/search/SearchForm.tsx index 48b9e440..b6ef2bb2 100644 --- a/starterkits/wp/app/search/SearchForm.tsx +++ b/starterkits/wp/app/search/SearchForm.tsx @@ -1,10 +1,10 @@ 'use client'; -import SearchParams from '@/app/search/SearchParams'; -import { Button } from '@/source/03-components/Button'; -import usePrevious from '@/util/usePrevious'; import { usePathname, useRouter, useSearchParams } from 'next/navigation'; import { FormEventHandler, useEffect, useState } from 'react'; +import SearchParams from '~/app/search/SearchParams'; +import usePrevious from '~/util/usePrevious'; +import { Button } from '~components/Button'; function SearchForm() { const pathname = usePathname(); diff --git a/starterkits/wp/app/search/page.tsx b/starterkits/wp/app/search/page.tsx index 3bbb0a04..d08645cd 100644 --- a/starterkits/wp/app/search/page.tsx +++ b/starterkits/wp/app/search/page.tsx @@ -1,16 +1,16 @@ -import Main from '@/source/02-layouts/Main/Main'; -import Article from '@/source/03-components/Article/Article'; -import { LinkButton } from '@/source/03-components/Button'; -import { NextSearchParamsProp } from '@/types/NextSearchParams'; -import { - SearchQuery, - SearchQueryVariables, -} from '@/types/__generated__/graphql'; -import stringParamsFromSearch from '@/util/wp/stringParamsFromSearch'; import { getClient } from '@faustwp/experimental-app-router'; import parse from 'html-react-parser'; import { Metadata } from 'next'; import Link from 'next/link'; +import { NextSearchParamsProp } from '~/types/NextSearchParams'; +import { + SearchQuery, + SearchQueryVariables, +} from '~/types/__generated__/graphql'; +import stringParamsFromSearch from '~/util/wp/stringParamsFromSearch'; +import Article from '~components/Article/Article'; +import { LinkButton } from '~components/Button'; +import Main from '~layouts/Main/Main'; import SearchForm from './SearchForm'; import SearchParams from './SearchParams'; import searchQuery from './searchQuery'; diff --git a/starterkits/wp/editor-styles/editor-styles.ts b/starterkits/wp/editor-styles/editor-styles.ts index d1ca3ae4..7be94760 100644 --- a/starterkits/wp/editor-styles/editor-styles.ts +++ b/starterkits/wp/editor-styles/editor-styles.ts @@ -1,10 +1,10 @@ -import '@/source/00-config/index.css'; -import '@/source/00-config/mixins.css'; -import '@/source/01-global/fonts/fonts'; -import '@/source/01-global/index.css'; +import '~/source/00-config/index.css'; +import '~/source/00-config/mixins.css'; +import '~global/fonts/fonts'; +import '~global/index.css'; -import '@/app/_components/blocks/core'; +import '~/app/_components/blocks/core'; // Place imports to custom blocks here... -import '@/source/06-utility/index.css'; +import '~utility/index.css'; diff --git a/starterkits/wp/examples/custom-block/AuthorBlock/index.tsx b/starterkits/wp/examples/custom-block/AuthorBlock/index.tsx index 8fa13747..c0a11eb4 100644 --- a/starterkits/wp/examples/custom-block/AuthorBlock/index.tsx +++ b/starterkits/wp/examples/custom-block/AuthorBlock/index.tsx @@ -3,7 +3,7 @@ * See README.md */ -import { AuthorBlockFragmentFragment } from '@/types/__generated__/graphql'; +import { AuthorBlockFragmentFragment } from '~/types/__generated__/graphql'; import fragments from './fragments'; import type { JSX } from 'react'; diff --git a/starterkits/wp/examples/making-client-queries/page.tsx b/starterkits/wp/examples/making-client-queries/page.tsx index 7301e4de..effed809 100644 --- a/starterkits/wp/examples/making-client-queries/page.tsx +++ b/starterkits/wp/examples/making-client-queries/page.tsx @@ -1,7 +1,7 @@ 'use client'; -import { MyQueryQuery } from '@/types/__generated__/graphql'; import { gql, useQuery } from '@apollo/client'; +import { MyQueryQuery } from '~/types/__generated__/graphql'; /** * You can make client side queries as well with Apollo's `useQuery` hook within diff --git a/starterkits/wp/util/acfTools.ts b/starterkits/wp/util/acfTools.ts index 6f9d6278..6f3a8379 100644 --- a/starterkits/wp/util/acfTools.ts +++ b/starterkits/wp/util/acfTools.ts @@ -1,4 +1,4 @@ -import { isNotNullNorUndefined } from '@/util/isNullOrUndefined'; +import { isNotNullNorUndefined } from '~/util/isNullOrUndefined'; /** * Returns an array of objects given data from an ACF repeater/flex content field. diff --git a/starterkits/wp/util/hasPreviewProp.ts b/starterkits/wp/util/hasPreviewProp.ts index 0738b7e9..675e3fad 100644 --- a/starterkits/wp/util/hasPreviewProp.ts +++ b/starterkits/wp/util/hasPreviewProp.ts @@ -1,4 +1,4 @@ -import { NextSearchParamsProp } from '@/types/NextSearchParams'; +import { NextSearchParamsProp } from '~/types/NextSearchParams'; export async function hasPreviewProps(props: NextSearchParamsProp) { const searchParams = await props.searchParams; diff --git a/starterkits/wp/util/stringParamsFromSearch.ts b/starterkits/wp/util/stringParamsFromSearch.ts index 48bf6b63..08e6d8e7 100644 --- a/starterkits/wp/util/stringParamsFromSearch.ts +++ b/starterkits/wp/util/stringParamsFromSearch.ts @@ -1,4 +1,4 @@ -import NextSearchParams from '@/types/NextSearchParams'; +import NextSearchParams from '~/types/NextSearchParams'; type StringParams = Record; diff --git a/tsconfig.json b/tsconfig.json index f302b513..e5ac6f24 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -32,7 +32,25 @@ "incremental": true, "strictBindCallApply": true, "paths": { - "@/*": [ + "~global/*": [ + "./source/01-global/*" + ], + "~layouts/*": [ + "./source/02-layouts/*" + ], + "~components/*": [ + "./source/03-components/*" + ], + "~templates/*": [ + "./source/04-templates/*" + ], + "~pages/*": [ + "./source/05-pages/*" + ], + "~utility/*": [ + "./source/06-utility/*" + ], + "~/*": [ "./*" ] }, From d9045c7bc7e15ce502af6a40b03ff9977d431eeb Mon Sep 17 00:00:00 2001 From: KJ Monahan Date: Mon, 24 Nov 2025 08:57:21 -0600 Subject: [PATCH 2/2] [153] Add path aliases to README --- README.project.md | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/README.project.md b/README.project.md index 5531cd68..048fd707 100644 --- a/README.project.md +++ b/README.project.md @@ -8,7 +8,7 @@ This is a starter app for [Next.js](https://nextjs.org/) (bootstrapped with [`cr * [Stylelint](https://stylelint.io/) * [Prettier](https://prettier.io/) -Note that Next v14 comes with the following installed already: +Note that Next v15 comes with the following installed already: * [Webpack v5](https://webpack.js.org/concepts/) * [CSS Modules](https://github.com/css-modules/css-modules) @@ -84,6 +84,18 @@ ddev nextjs icons - `util`: Utility functions for working with CMSes or working with queries. Front-end utilities and Storybook helpers are in `source/06-utility` +## Path alias +TypeScript is configured with several path aliases for use in imports. +- `~global/`: `source/01-global/` +- `~layouts/`: `source/02-layouts/` +- `~components/`: `source/03-components/` +- `~templates/`: `source/04-templates/` +- `~pages/`: `source/05-pages/` +- `~utility`: `source/06-utilities/` +- `~/`: project root + +Other aliases can be added in tsconfig.json. + ## Helpful commands ### Monitoring the applications