@ -18,32 +18,41 @@ const TPL = `
}
. promoted - attributes - container {
margin : auto ;
display : flex ;
flex - direction : row ;
flex - shrink : 0 ;
flex - grow : 0 ;
justify - content : space - evenly ;
margin : 0 1.5 em ;
overflow : auto ;
max - height : 400 px ;
flex - wrap : wrap ;
display : table ;
}
. promoted - attribute - cell {
display : flex ;
align - items : center ;
margin : 10 px ;
display : table - row ;
}
. promoted - attribute - cell > label {
user - select : none ;
font - weight : bold ;
vertical - align : middle ;
}
. promoted - attribute - cell > * {
display : table - cell ;
padding : 1 px 0 ;
}
. promoted - attribute - cell div . input - group {
margin - left : 10 px ;
display : flex ;
min - height : 40 px ;
}
. promoted - attribute - cell strong {
word - break : keep - all ;
white - space : nowrap ;
}
. promoted - attribute - cell input [ type = "checkbox" ] {
height : 1.5 em ;
width : 22 px ! important ;
flex - grow : 0 ;
width : unset ;
}
< / s t y l e >
@ -137,9 +146,11 @@ export default class PromotedAttributesWidget extends NoteContextAwareWidget {
async createPromotedAttributeCell ( definitionAttr , valueAttr , valueName ) {
const definition = definitionAttr . getDefinition ( ) ;
const id = ` value- ${ this . noteId } - ${ definitionAttr . position } ` ;
const $input = $ ( "<input>" )
. prop ( "tabindex" , 200 + definitionAttr . position )
. prop ( "id" , id )
. attr ( "data-attribute-id" , valueAttr . noteId === this . noteId ? valueAttr . attributeId : '' ) // if not owned, we'll force creation of a new attribute instead of updating the inherited one
. attr ( "data-attribute-type" , valueAttr . type )
. attr ( "data-attribute-name" , valueAttr . name )
@ -154,7 +165,7 @@ export default class PromotedAttributesWidget extends NoteContextAwareWidget {
. attr ( "nowrap" , true ) ;
const $wrapper = $ ( '<div class="promoted-attribute-cell">' )
. append ( $ ( "< strong>" ) . text ( definition . promotedAlias ? ? valueName ) )
. append ( $ ( "< label>") . prop ( "for" , id ) . text ( definition . promotedAlias ? ? valueName ) )
. append ( $ ( "<div>" ) . addClass ( "input-group" ) . append ( $input ) )
. append ( $actionCell )
. append ( $multiplicityCell ) ;
@ -211,9 +222,6 @@ export default class PromotedAttributesWidget extends NoteContextAwareWidget {
}
else if ( definition . labelType === 'boolean' ) {
$input . prop ( "type" , "checkbox" ) ;
// hack, without this the checkbox is invisible
// we should be using a different bootstrap structure for checkboxes
$input . css ( 'width' , '80px' ) ;
if ( valueAttr . value === "true" ) {
$input . prop ( "checked" , "checked" ) ;