aboutsummaryrefslogtreecommitdiffstats
path: root/src/styles/pages
Commit message (Collapse)AuthorAgeFilesLines
* fix(styles): increase CSS specifity for some selectorsArmand Philippot2023-12-201-0/+3
| | | | | | | | | | | Since `sideEffects` has been added to activate tree shakings, the styles are imported in the wrong order in production build. There is an open issue (again) on Next.js repo. I'm not sure it will be fixed soon so in the meantime I had to increase the specifity of some selectors to avoid broken styles. I also fixed two minor layout errors: * CV page widgets should use headings of level 2 * Homepage should wrap the cards in list items
* refactor(pages): refine 404 pageArmand Philippot2023-12-091-1/+1
| | | | | * refresh topics and thematics list using hooks * add Cypress tests
* refactor(pages): refine Project pagesArmand Philippot2023-12-082-11/+14
| | | | | | | | | | | * refactor ProjectOverview component to let consumers handle the value * extract project overview depending on Github to avoid fetching Github API if the project is not on Github * wrap dynamic import in a useMemo hook to avoid infinite rerender * fix table of contents by adding a useMutationObserver hook to refresh headings tree (without it useHeadingsTree is not retriggered once the dynamic import is done) * add Cypress tests
* refactor(pages): refine Projects pageArmand Philippot2023-12-071-0/+4
| | | | | | | * add a `contexts` meta key to projects * replace `technologies` with `contexts` key in projects list * make getProjectsFilenames async * add Cypress tests
* refactor(pages): refine Search pageArmand Philippot2023-12-071-0/+4
| | | | | | | * extract NoResults component to improve readability * provide a different message when the url does not contain a query * use hooks to refresh Thematics and Topics lists * remove useDataFromApi hook
* refactor(pages): refine Blog pagesArmand Philippot2023-12-042-44/+16
| | | | | | | | | | * replace usePostsList with useArticlesList to keep names coherent * remove useIsMounted hook * rewrite useRedirection hook * add redirect in getStaticProps to avoid unecessary fetching * move Pagination component in a noscript tag * use hooks to refresh thematics and topics lists * complete Cypress tests
* refactor(pages): refine Topic pagesArmand Philippot2023-12-011-11/+0
| | | | | | * add useTopic and useTopicsList hooks to refresh data * add a table of contents * add Cypress tests
* refactor(pages): refine Thematic pagesArmand Philippot2023-12-011-2/+2
| | | | | | | | | | | * add a table of contents (however posts heading are not included) * rename posts list section title * add a useThematic hook to refresh thematic contents * add a useThematicLists hook to refresh thematics list * add a `notIn` filter in thematics list fetcher to directly remove unwanted thematics * add Cypress tests
* refactor(pages): refine Article pagesArmand Philippot2023-12-014-87/+32
| | | | | | | | | | | * use rehype to update code blocks class names * fix widget heading level (after a level 1 it should always be a level 2 and not 3) * replace Spinner with LoadingPage and LoadingPageComments components to keep layout coherent * refactor useArticle and useComments hooks * fix URLs in JSON LD schema * add Cypress tests
* refactor(pages): improve HomepageArmand Philippot2023-11-291-34/+0
| | | | | | | | | * move custom homepage components that does not require props to the MDX file (links should not need to be translated here but where they are defined) * move SEO title and meta desc to MDX file * make Page component the wrapper instead of using a React fragment * fix MDX module types
* fix(pages,services): make thematics & topics pages usable againArmand Philippot2023-11-291-0/+50
| | | | | | | | | | When I refactored the fetchers and convertors in #f111685 I forgot to convert WPThematicPreview and WPTopicPreview so the thematics and topics pages was broken. I also: * removed the ToC added by error in #70b4f63 * fix heading styles * fix website url in topics pages
* refactor(components): replace PageLayout template with PageArmand Philippot2023-11-201-2/+3
| | | | | | | | | * split pages in smaller components (it is both easier to maintain and more readable, we avoid the use of fragments in pages directory) * extract breadcrumbs from article tag (the navigation is not related to the page contents) * remove useReadingTime hook * remove layout options except `isHome`
* refactor(components): replace Sharing with SharingWidget componentArmand Philippot2023-11-141-2/+3
| | | | | | | * all the widgets should have a coherent name * fix mailto uri * remove useless CSS * add tests
* refactor(components): rewrite PostsList componentArmand Philippot2023-11-132-6/+18
| | | | | | | | | | | | | | | * remove NoResults component and move logic to Search page * add a usePostsList hook * remove Pagination from PostsList (it is only used if javascript is disabled and not on every posts list) * replace `byYear` prop with `sortByYear` * replace `loadMore` prop with `onLoadMore` * remove `showLoadMoreBtn` (we can use `loadMore` prop instead to determine if we need to display the button) * replace `titleLevel` prop with `headingLvl` * add `firstNewResult` prop to handle focus on the new results when loading more article (we should not focus a useless span but the item directly)
* refactor(components): rewrite ContactForm componentArmand Philippot2023-11-111-3/+0
| | | | | | * remove `Notice` props to handle it directly inside the form * replace `sendMail` prop with `onSubmit` prop * use `useForm` hook to handle fields
* refactor(components): rewrite Code component and usePrism hookArmand Philippot2023-11-112-304/+1
| | | | | | | | | | | | * move Prism styles to Sass placeholders to avoid repeats * let usePrism consumer define its plugins (remove default ones) * remove `plugins` prop from Code component * add new props to Code component to let consumer configure plugins (and handle plugin list from the given options) However there are some problems with Prism plugins: line-highlight and treeview does not seems to be loaded. I don't want to use Babel instead of SWC so I have no solution for now.
* refactor(components): replace Meta component with MetaListArmand Philippot2023-11-111-2/+1
| | | | | | It removes items complexity by allowing consumers to use any label/value association. Translations should also be defined by the consumer. Each item can now be configured separately (borders, layout...).
* refactor(components): rewrite Link componentArmand Philippot2023-11-112-183/+56
| | | | | | | | | * rename `external` prop to `isExternal` * rename `download` prop to `isDownload` * rewrite CSS to reduce code length and complexity * move link styles in Sass placeholders to avoid repeats because of WordPress articles * move NavLink component to molecules
* refactor(components): rewrite DescriptionList componentArmand Philippot2023-11-111-11/+4
| | | | | | | | | | | | | * add a `spacing` prop * replace `layout` prop with `isInline` prop * remove `items` prop (and classNames props) in favor of new components: Description, Group, Term * remove `withSeparator` prop (CSS content is announced by screen readers and Firefox/Safari have no support for alternative text so the consumer should add itself an element with `aria-hidden` if it need a separator) Be aware, Meta component and its consumers can be visually broken, they should be refactored before using them in production.
* refactor(components): rewrite List componentArmand Philippot2023-11-113-47/+17
| | | | | | | | | * change `items` prop to children * replace `kind` prop with `isHierarchical`, `isOrdered` & `isInline` props * add `hideMarker` prop * add `spacing` prop to control item spacing * move lists styles to Sass placeholders to avoid repeats because of headless WordPress
* feat(components): replace icons with a generic Icon componentArmand Philippot2023-10-241-2/+0
| | | | | Sizes are also predefined and can be set using the `size` prop, so the consumers should no longer adjust the size in CSS.
* refactor(components): rewrite Heading componentArmand Philippot2023-10-242-28/+11
| | | | | | | | | * remove `alignment` and `withMargin` props (consumer should handle that) * move styles to Sass placeholders to avoid repeats with headings coming from WordPress * refactor some other components that depend on Heading to avoid ESlint errors
* refactor(build): replace paths aliases with relative pathsArmand Philippot2023-09-1911-22/+20
| | | | | | Using paths aliases starting with "@" can be confusing and can lead to conflict with existings modules. I prefer to use relative paths to avoid extra configuration in tools because of these aliases.
* chore: adjust cards list spacingArmand Philippot2022-05-231-1/+3
|
* chore: adjust dark mode stylesArmand Philippot2022-05-221-0/+100
|
* chore: update some stylesArmand Philippot2022-05-213-20/+30
| | | | | | | * Improve wp-blocks-columns, wp-block-quote and some images * Make Sharing widget consistent between pages * Remove margin option from lists * Fix Topic logo alignement
* chore: update images stylesArmand Philippot2022-05-203-16/+35
|
* chore: udpate code blocks styleArmand Philippot2022-05-202-134/+134
|
* refactor: rewrite Prism hooks and providersArmand Philippot2022-05-191-1/+1
| | | | | It avoid some hydratation errors on project pages (not in article however) and the hooks are now reusable.
* chore: adjust articles stylesArmand Philippot2022-05-171-0/+1
| | | | | * change animation on article card hover * change comments section alignment
* chore: adjust and complete missing stylesArmand Philippot2022-05-168-0/+748
| | | | | | * add logo to topics pages and links * add Prism styles to articles * and a few other adjustements
* chore: add a Contact pageArmand Philippot2022-05-071-0/+3
|
* chore: add a Projects pageArmand Philippot2022-05-052-13/+9
|
* chore: add a CV pageArmand Philippot2022-05-031-0/+3
|
* chore: add homepageArmand Philippot2022-05-032-49/+36
|
* chore: add a banner for users with JS disabledArmand Philippot2022-02-141-0/+6
|
* refactor: extract contact form from contact pageArmand Philippot2022-02-101-20/+0
| | | | | The contact page file was too long. By extracting the contact form the readability is improved.
* chore: improve contact form behaviorArmand Philippot2022-02-101-0/+20
| | | | | | | * The status was not visile in top of the form, so I moved it under the submit button. * It was possible to send an empty form. * The input type for email should be email instead of text.
* chore: add a page for projectsArmand Philippot2022-01-201-0/+13
|
* feat: implement dark modeArmand Philippot2022-01-171-4/+16
|
* refactor(styles): rename shadow and border variablesArmand Philippot2022-01-162-3/+3
|
* chore: update sidebar and widgets stylesArmand Philippot2022-01-151-29/+0
| | | | | | | | | I'm now using a widget that can be expanded/collapsed. It also allows me to handle more effectively widgets overflow and to avoid styles repetitions. However, with stylelint rule "no-descending-specificity", I'm not sure if the stylesheets are really logical... Maybe I should deactivate this rule.
* chore(homepage): add icons to some buttonsArmand Philippot2022-01-141-0/+4
|
* chore: change posts list stylesArmand Philippot2022-01-142-53/+2
|
* chore: add meta, toc and widgets on thematic pagesArmand Philippot2022-01-111-0/+20
|
* refactor(sidebar): use a component to avoid styles repetitionArmand Philippot2022-01-112-34/+15
| | | | | | I also fix some overflow/sticky issues. I have to set overflow auto only when there is no button-like links otherwise, with translate, the button is cropped on hover.
* refactor(aside): move width from aside to sharing widgetArmand Philippot2022-01-101-1/+0
| | | | Only the Sharing widget needs the "min-content" width.
* refactor(styles): use compose to declare grid layouts onceArmand Philippot2022-01-103-59/+17
| | | | | | | I'm using same grid layouts in multiple places. To avoid maintenance issue, I think it is better to declare the grid once and to import its declaration where it is needed. Thanks to CSS modules, I can use compose to do that.
* chore: update homepage stylesArmand Philippot2022-01-081-1/+18
|
* chore: add article header stylesArmand Philippot2022-01-071-3/+4
|