@import '../../common/styles/variables'; $lines-width: 1px; $bullet-size: 7px; $cell-spacing: 25px; $cell-padding: 10px; $bullet-margin: 10px; $line-border: $lines-width solid $tree-lines-color; $line-border-erase: $lines-width solid white; $param-name-height: 20px; $sub-schema-offset: ($bullet-size/2) + $bullet-margin; .param-schema { padding-left: $sub-schema-offset - $lines-width; border-left: $line-border; } .param-wrap { position: relative; } .param-schema:before { content: ""; position: absolute; left: $sub-schema-offset; top: ($param-name-height/2) + $cell-padding; bottom: 0; border-left: $line-border; } .param-name { font-size: 14px; padding: $cell-padding $cell-spacing $cell-padding 0; font-weight: bold; box-sizing: border-box; line-height: $param-name-height; border-left: $line-border; white-space: nowrap; position: relative; > span { vertical-align: middle; } } .param-info { width: 100%; padding: $cell-padding 0; box-sizing: border-box; border-bottom: 1px solid #ccc; } .param { display: flex; } .param-required { color: red; font-weight: bold; font-size: 12px; line-height: $param-name-height; vertical-align: middle; } .param-type { text-transform: capitalize; color: #999; font-size: 12px; line-height: $param-name-height; vertical-align: middle; font-weight: bold; } /* tree */ // Bullet .param-name > span:before { content: ""; display: inline-block; width: $bullet-size; height: $bullet-size; background-color: $tree-lines-color; margin: 0 $bullet-margin; vertical-align: middle; } .param-name > span:after { content: ""; position: absolute; border-top: $line-border; width: $bullet-margin; left: 0; top: ($param-name-height/2) + $cell-padding; } .param-wrap:first-of-type .param-name:before { content: ""; display: block; position: absolute; left: -$lines-width; top: 0; border-left: $line-border-erase; height: ($param-name-height/2) + $cell-padding; } .param-wrap:last-of-type > .param > .param-name:after { content: ""; display: block; position: absolute; left: -$lines-width; border-left: $line-border-erase; top: ($param-name-height/2) + $cell-padding + $lines-width; background-color: white; bottom: 0; } .param-wrap:last-of-type > .param-schema { border-left-color: transparent; } .param-schema .param-wrap:first-of-type .param-name:before { display: none !important; } /* styles for array-schema for array */ $array-marker-font-sz: 12px; $array-marker-line-height: 1.5; .params-wrap.params-array:before, .params-wrap.params-array:after { display: block; font-weight: bold; color: #999; font-size: $array-marker-font-sz; line-height: $array-marker-line-height; } .params-wrap.params-array:after { content: "]"; } .params-wrap.params-array:before { content: "Array ["; } .params-wrap.params-array { padding-left: $bullet-margin; } .param-schema.param-array:before { bottom: ($array-marker-font-sz * $array-marker-line-height) / 2; width: $bullet-margin; border-left-style: dashed; border-bottom: $lines-width dashed $tree-lines-color; } .params-wrap.params-array > .param-wrap:first-of-type > .param > .param-name:after { content: ""; display: block; position: absolute; left: -$lines-width; top: 0; border-left: $line-border-erase; height: ($param-name-height/2) + $cell-padding; }