diff --git a/spec/justify_items_spec.cr b/spec/justify_items_spec.cr new file mode 100644 index 0000000..2fa1965 --- /dev/null +++ b/spec/justify_items_spec.cr @@ -0,0 +1,31 @@ +require "./spec_helper" + +class JustifyItemsStyle < CSS::Stylesheet + rule div do + justify_items :normal + justify_items :left + justify_items :safe, :center + justify_items :first, :baseline + justify_items :legacy + justify_items :legacy, :right + justify_items :anchor_center + end +end + +describe "JustifyItemsStyle.to_s" do + it "should return the correct CSS" do + expected = <<-CSS + div { + justify-items: normal; + justify-items: left; + justify-items: safe center; + justify-items: first baseline; + justify-items: legacy; + justify-items: legacy right; + justify-items: anchor-center; + } + CSS + + JustifyItemsStyle.to_s.should eq(expected) + end +end diff --git a/src/css/enums/justify_items.cr b/src/css/enums/justify_items.cr new file mode 100644 index 0000000..5981a66 --- /dev/null +++ b/src/css/enums/justify_items.cr @@ -0,0 +1,5 @@ +css_enum JustifyItems do + Normal + Stretch + AnchorCenter +end diff --git a/src/css/enums/justify_items_legacy.cr b/src/css/enums/justify_items_legacy.cr new file mode 100644 index 0000000..8408940 --- /dev/null +++ b/src/css/enums/justify_items_legacy.cr @@ -0,0 +1,3 @@ +css_enum JustifyItemsLegacy do + Legacy +end diff --git a/src/css/enums/justify_items_legacy_positional.cr b/src/css/enums/justify_items_legacy_positional.cr new file mode 100644 index 0000000..5fef38e --- /dev/null +++ b/src/css/enums/justify_items_legacy_positional.cr @@ -0,0 +1,5 @@ +css_enum JustifyItemsLegacyPositional do + Left + Right + Center +end diff --git a/src/css/enums/justify_items_positional.cr b/src/css/enums/justify_items_positional.cr new file mode 100644 index 0000000..3ac0621 --- /dev/null +++ b/src/css/enums/justify_items_positional.cr @@ -0,0 +1,11 @@ +css_enum JustifyItemsPositional do + Center + Start + End + FlexStart + FlexEnd + SelfStart + SelfEnd + Left + Right +end diff --git a/src/stylesheet.cr b/src/stylesheet.cr index 7d617da..6274569 100644 --- a/src/stylesheet.cr +++ b/src/stylesheet.cr @@ -1033,7 +1033,10 @@ module CSS prop isolation, String prop justify_content, CSS::Enums::JustifyContent | CSS::Enums::JustifyContentPositional prop2 justify_content, CSS::Enums::Safety, CSS::Enums::JustifyContentPositional - prop justify_items, String + prop justify_items, CSS::Enums::JustifyItems | CSS::Enums::JustifyItemsPositional | CSS::Enums::AlignmentBaseline | CSS::Enums::JustifyItemsLegacy + prop2 justify_items, CSS::Enums::Safety, CSS::Enums::JustifyItemsPositional + prop2 justify_items, CSS::Enums::FirstLast, CSS::Enums::AlignmentBaseline + prop2 justify_items, CSS::Enums::JustifyItemsLegacy, CSS::Enums::JustifyItemsLegacyPositional prop justify_self, String prop left, CSS::LengthPercentage | CSS::Enums::Auto prop letter_spacing, String