Commit Graph

39 Commits

Author SHA1 Message Date
Tessa Kelly
0cc0b37509 Update the Icons in the styleguide 2018-06-22 11:00:34 -07:00
Tessa Kelly
0a03d4d0e1 elm-format 0.7.0-exp 2018-06-20 13:15:33 -07:00
Jasper Woudenberg
8fb23ec8e4 Add styleguide section for checkboxes 2018-06-20 16:06:11 +01:00
Jasper Woudenberg
a56dc32d10 Merge branch 'master' into textarea-v2-minimum-height 2018-05-29 14:52:01 -07:00
Jasper Woudenberg
aac8229c0a 💀 Remove unused import 2018-05-29 10:52:39 -07:00
Brooke
22d856ceca add Nri.Ui.TextInput.V2 with writing style (styling not perfect yet) 2018-05-29 10:52:39 -07:00
Brooke
35e1473ad4 add text input to styleguide app 2018-05-29 10:52:39 -07:00
Jasper Woudenberg
716efba4dd Use TextArea.V2 in styleguide app 2018-05-18 10:17:51 +02:00
Tessa Kelly
3253e3466d Add V2 of Nri.Ui.Text using Html.Styled 2018-05-16 17:09:17 -07:00
Jasper Woudenberg
d6a10d1ed4 Merge branch 'master' into extract-nri-page 2018-05-03 14:19:22 +02:00
Jasper Woudenberg
44c58c2bc0 Merge branch 'master' into table-v2 2018-05-03 09:39:18 +02:00
Jasper Woudenberg
f8bd18a8a0 Add Nri.Ui.Page.V1 to styleguide 2018-05-01 17:34:16 +02:00
Jasper Woudenberg
14fd3c142e 🎨 elm-format 2018-04-30 13:24:03 +02:00
Jasper Woudenberg
1edf7da0ab Add buttons to the styleguide 2018-04-30 13:14:20 +02:00
Jasper Woudenberg
72a4a1c5e6 elm-format 2018-04-25 19:29:22 +02:00
Jasper Woudenberg
8f344774c3 Switch Table.V2 over to Html.Styled
This is probably better then relying on more deprecated elm css
functionality, like we were before.
2018-04-25 19:25:34 +02:00
Jasper Woudenberg
de10ffb43e New table version that takes any css width
This way you're not limited to creating tables with fixed-width columns.
This also makes the table take up the maximum available width space by
default.
2018-04-25 19:10:34 +02:00
Jasper Woudenberg
e950661c8b Add Table to the styleguide application 2018-04-24 17:49:29 +02:00
Hardy Jones
1647b2f358
Make selects expand to the full width of parent
There are places where we need the select to be as wide as possible.
Since it seems like a sensible default to have all the selects expand,
we take that approach.

If we find out that this is harder, we can release use the old version.
2018-04-18 07:58:19 -07:00
Hardy Jones
5036c63e28
Merge branch 'master' into extract-select 2018-04-17 07:56:22 -07:00
Hardy Jones
4977d00361
Style the selector
We need some styling that was implicit in the monolith.
2018-04-16 15:50:28 -07:00
Hardy Jones
bffaae0e3f
Extract Nri.Select from the monolith 2018-04-16 15:43:01 -07:00
Hardy Jones
199689abd0
Style the dropdown 2018-04-16 13:12:17 -07:00
Hardy Jones
1b86ec442f
Extract Nri.Dropdown to noredink-ui
There are a couple of minor differences here.
Some of the dependencies we had were inlined.
_Should_ be no behavioral changes though.
2018-04-16 12:19:43 -07:00
Hardy Jones
e5a56486d7
Allow segmented control to expand to parent's width
We want to allow the control to take up the full width of the parent.
This will most likely break something if you try to upgrade directly.
Should be fixable by putting the control in an element with
the appropriate width.
2018-03-30 09:10:33 -07:00
Hardy Jones
d4d6991643
Style the segmented control tabs directly
tl;dr; Use a class for each variant instead of overriding one variant.

Before, we relied on CSS specificity in an unclear way.
The `Focused` class was applying properly because it was ordered later
than the `Tab` class in the stylesheet.
The ordering that is important is the ordering in `styles` value.
Since `elm-css` generates the stylesheet in the order of the lists,
the `Focused` rule would be generated after the `Tab` rule.
Meaning the `Focused` rule would take precedence over the `Tab` rule
if an element had both classes as it was defined later in the stylesheet.

There are some concerns with this approach:
1. It's not readily apparent that the ordering in `styles` is important.
    It is pretty easy to change the ordering of the list
    and have it break the styling.
2. We rely on `elm-css` to generate the stylesheet in a specific order.
    If it changes the order of rules it generates,
    we're almost surely going to break the styling.
3. Altering styles for tabs that are not focused is even less intuitive.
    Since the specificity is the same,
    you might not know why a given rule applies (or doesn't apply).

Rather, we can eschew the specificity/precedence issues
by applying a different class to each tab.
The stuff that is the same can stay on the `Tab` class,
and the stuff that differs can be on different classes.

We are now able to set the background color for `Unfocused` tabs.
We were relying on the control being placed atop a white background.
When we moved to using the control atop a non-whitebackground,
it showed that the `Unfocused` tabs had a transparent backround.
All of our designs show `Unfocused` tabs with a white backround.

See https://github.com/NoRedInk/noredink-ui/pull/14 for more information.
2018-03-30 09:10:33 -07:00
Jasper Woudenberg
6e041d9364 Styleguide uses latest Icon / SegmentedControl 2018-03-29 12:58:41 +02:00
Hardy Jones
fb2dbbfb47
Extract updated segmented control from the monolith
This version is like `Nri.Ui.SegmentedControl.V1` with the icon changes.
It has the fix for `box-sizing`.

All the other caveats from `Nri.Ui.SegmentedControl.V1`
(if there were any) apply here as well.
2018-03-28 18:20:58 -07:00
Hardy Jones
0a75e8229b
Extract Nri.Icon from the monolith
The recommendation is to break the styles API rather than the view API
when moving something out of the monolith into this repo.

`Nri.Icon` is not really setup for that sort of breakage.
If we would prefer to have the styles break rather than the view,
that will take more work.
Work that can be done independent of the extraction.

The transition in the monolith ought to look something like:

```elm
module Nri.Icon exposing (..)

import Html exposing (Html)
import Nri.SvgSprite
import Nri.Ui.Icon.V1 exposing (Assets, IconType)

icon : { alt : String, icon : IconType } -> Html msg
icon config =
  Nri.Ui.Icon.V1.icon assets

assets : Assets {}
assets =
  { activity = Nri.SvgSprite.activity
  , arrowDown = Nri.SvgSprite.arrowDown
  , attention_svg = Nri.Assets.attention_svg
  ...
  }
```

So hopefully, the change is still very small on the monolith side.

There's maybe a bigger concern than which API breaks.
`Nri.Icon` has some behavior for a11y.
We could definitely change the internals over during the extraction.
But, since all of these changes are value-level changes,
it's very likely that we'll break something in the process.
That's a bigger concern because instead of affecting
the handful of Engineers working at NRI,
we would be affecting the millions of people using the site.

We shouldn't fear making those kinds of changes.
However, we should make them when we can give them the appropriate
attention they deserve.
Not when one person is trying to move as fast as possible to avoid
race conditions of moving modules between repos.
2018-03-28 18:20:16 -07:00
Hardy Jones
349e9760a3
Use V2 of the segmented control in the style guide 2018-03-26 19:56:20 -07:00
Hardy Jones
3b99ba56a7
Add SegmentedControl 2018-03-23 19:05:34 -07:00
Tessa Kelly
f9c3884e6a Adds Colors 2018-03-16 16:24:29 -07:00
Tessa Kelly
7f7826bcae Display the Fonts 2018-03-16 16:24:09 -07:00
Jasper Woudenberg
12dd71a68d Merge branch 'master' into update-textarea 2018-03-02 09:45:27 -08:00
Stoeffel
b9c913ec19 rename to Writing and use Html.Styled 2018-03-01 13:37:58 -08:00
Jasper Woudenberg
2f92a1ec4a Add TextArea to styleguide 2018-02-28 16:22:48 -08:00
Stoeffel
168bf35682 upgrade styleguide-app to latest version of elm-css 2018-02-28 14:18:52 -08:00
Jasper Woudenberg
8ea6b7360a Include text styles in example 2018-02-21 15:49:12 +01:00
Brooke
0c33c83d73 add mini styleguide for ui components 2018-02-12 13:32:38 -08:00