Giter Club home page Giter Club logo

nl-rdo-manon's People

Contributors

dekkers avatar dependabot[bot] avatar heleensg avatar logisticscare avatar nicktencate avatar ppvg avatar ricklambrechts avatar ring-ring-ring avatar sigio avatar stefvanhouten avatar twistmeister avatar underdarknl avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

nl-rdo-manon's Issues

Expando rows in Manon triggers default form submission

There are many place where expando-rows are used to show extra info in dropdown box:

image

<button class="expando-button" data-icon-open-class="icon ti-chevron-down" data-icon-close-class="icon ti-chevron-up" data-close-label="{% translate "Close details" %}"> {% translate "Open details" %} </button>

The dropdown works good when it is outside a form

Issue: When the expando rows are included in a form element, it will automatically trigger form submission.

How to solve this problem?
Because the expando-rows is defined as a button an no type is defined it will automatically set type="submit"

Put type="button" on the expando-rows class button

<button type="button"></button>

Add default `exports` to all scripts

In order to make the .js scripts easier to use in other frameworks, we need default exports of init[...]() functions. For example navigation.js has export'ed it's initNavigation() function. The accordion.js file does not.

Expected behavior

All component scripts have a (default) export of some kind of init[...] function. So we can do something like:

import { initFoo } from '@minvws/manon/foo.js'

Or

import foo from '@minvws/manon/foo.js'

Governance

Focus only elements take up space (flex gap)

Flexbox calculates gap on all object within the parent object.

The goal is to hide the object but keep it accessible for accessibility tools. Display none would solve the visual problem but would also hide the object from screen readers. A solution is needed where the object doesn't get gap between the visually hidden object but is still accessible for screen readers.

Style button icon:before

We need to style button icon:before.

image

<a href="https://example.nl/create" class="button"><span class="icon icon-user"></span> Nieuwe organisatie aanmaken</a>

Design fluid grid system and how to implement it

A fluid grid system allows designers to design components that are responsive. Design choices made within that system should be translatable to manon components. So they can behave as intended.

A technical design is needed.

Thoughts:

  • Add the grid system choices to a css file which contains the expected breakpoints.
  • Connect these breakpoints to the components through variables. (note, css-variables can not be used within media queries. That's why we use sass. So these need to be sass variables that can be set. I believe sass variables can contain css-variables which means the breakpoints could be set through css-variables within a css file just as we define all other styling choices. But this needs to be tested.)

Inline links do not assume typography styles of it's parent

Describe the bug, issue or concern

When adding an <a> tag in a paragraph or heading, the <a> keeps it's own typography styles. I would assume that it would look the same as the text the link is placed within.

E.g.

Expected behavior

The <a> tag will assume it's direct parent's typography styles.

Screenshots

Scherm­afbeelding 2023-06-19 om 12 48 40

Governance

Documentation for navigation elements

Documentation needs to be updated/added for:

/* Text */
@use "@minvws/manon/link";

/* Navigation */
@use "@minvws/manon/navigation";
@use "@minvws/manon/navigation-link";
@use "@minvws/manon/navigation-link-hover";
@use "@minvws/manon/navigation-link-active";
@use "@minvws/manon/navigation-link-visited";

/* Header navigation */
@use "@minvws/manon/header-navigation";
@use "@minvws/manon/header-navigation-link";
@use "@minvws/manon/header-navigation-link-hover";
@use "@minvws/manon/header-navigation-link-active";
@use "@minvws/manon/header-navigation-link-visited";

/* Footer */
@use "@minvws/manon/footer";
@use "@minvws/manon/footer-link";
@use "@minvws/manon/footer-link-hover";
@use "@minvws/manon/footer-link-active";
@use "@minvws/manon/footer-link-visited";
@use "@minvws/manon/footer-two-thirds-one-third";

Breadcrumb link hover styling cannot be set

Currently the styling of header-navigation-link-hover is visible on the breadcrumb link hover but for the hover on the breadcrumb we want to set a different text-color for example.

Add fonts

Fonts matching Manon docs branding

First icon in nav item gets padding left

image

<div>
    <nav aria-label="@lang('Main Navigation')" id="main-nav">
        <div class="collapsing-menu">
            <ul>
                <li>
                    <a><span class="icon icon-home"></span> Homepage</a>
                </li>
            </ul>
        </div>
    </nav>
</div>

"Zijmenu" has `<nav>` inside `<main>` (not recommended)

The documentation for Zijmenu states:

  1. Voeg de class sidemenu toe aan de main.
  2. Voeg direct binnen de main een nav toe met de gewenste inhoud.

However, the HTML spec mentions:

To wrap the main content of the page (as opposed to the header, the footer, the navigation bar, and a sidebar), the main element is used.

…and MDN says:

Content that is repeated across a set of documents or document sections such as sidebars, navigation links, copyright information, site logos, and search forms shouldn't be included

So the following suggested HTML structure is opposite of what the HTML standard and MDN recommend:

<main nav="sidebar">
  <nav></nav></main>

Radio input requires wrapping `<form>` element, checkbox input does not.

Describe the bug, issue or concern

Currently the a radio button requires a wrapping <form> element to get the right styling applied correctly. A checkbox input does not require a wrapping <form>. Making wrapping it with a <form> element optional for both, AND achieving feature parity between them would be nice.

Expected behavior

Both radio buttons and checkboxes can be implemented without a required wrapping <form> element.

Screenshots

Without wrapping <form>:
Scherm­afbeelding 2023-06-13 om 16 17 43

With wrapping <form>:
Scherm­afbeelding 2023-06-13 om 16 17 52
Note the extra grey background the form element adds. That might also not be desirable in some cases.

Governance

Add body text set

Add body text set so it can be used throughout the application. And have multiple styling choices based on the type of text.

e.g
Default
Strong
Emphasized
Emphasized strong
De-emphasized
De-emphasized strong
etc

  • Add set
  • Integrate in manon docs
  • Update documentation

Component: Tags

  • Design
  • Build component
  • Add component to Manon docs
  • Add tests and examples to Manon docs
  • Style component in Manon docs branding

Design:
Screenshot 2022-12-09 at 17 12 18

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.