var sketch = require('sketch');
var ss = context.document.documentData().layerTextStyles();
var sty = ss.objects();
var artboard = context.selection.firstObject();
artboard.removeAllLayers();
var bg = artboard.backgroundColor();
bg.setRed(0.83);
bg.setGreen(0.90);
bg.setBlue(1.0);
artboard.hasBackgroundColor = true;
var ts = context.document.documentData().layerTextStyles();
var styles = ts.objects();
var sortedStyles = [];
for(var i = 0 ; i < styles.length ; ++i){
sortedStyles.push({
name: styles[i].name(),
style: styles[i],
textStyle: styles[i].style().textStyle()
});
}
sortedStyles.sort(function(a,b){
if(a.name < b.name){
return -1;
}
if(a.name > b.name){
return 1;
}
return 0;
});
var previousSection = null;
var offset = 30;
var maxWidth = 60;
for(var i = 0 ; i < sortedStyles.length ; ++i){
var sharedStyle = sortedStyles[i];
var tempLayer = MSTextLayer.alloc().init();
tempLayer.name = sharedStyle.name;
tempLayer.stringValue = sharedStyle.name;
artboard.addLayer_(tempLayer);
var apiTempLayer = sketch.fromNative(tempLayer);
var apiSharedStyle = sketch.fromNative(sharedStyle.style);
apiTempLayer.style.syncWithSharedStyle(apiSharedStyle);
var sections = sharedStyle.name.split('/');
var section = sections[0] + sections[1] ? ('/' + sections[1]) : '';
if(previousSection && previousSection !== section){
offset += 30;
}
tempLayer.frame().setY(offset);
tempLayer.frame().setX(30);
offset += tempLayer.frame().height();
maxWidth = maxWidth < tempLayer.frame().width() + 60 ? tempLayer.frame().width() + 60 : maxWidth;
if(offset > artboard.frame().height()){
artboard.frame().setHeight(offset);
}
if(maxWidth > artboard.frame().width()){
artboard.frame().setWidth(maxWidth);
}
previousSection = section;
}
artboard.frame().setHeight(offset + 30);
var ss = context.document.documentData().layerTextStyles();
var sty = ss.objects();
var artboard = context.selection.firstObject();
artboard.removeAllLayers();
var bg = artboard.backgroundColor();
bg.setRed(0.83);
bg.setGreen(0.90);
bg.setBlue(1.0);
artboard.hasBackgroundColor = true;
var ts = context.document.documentData().layerTextStyles();
var styles = ts.objects();
var sortedStyles = [];
for(var i = 0 ; i < styles.length ; ++i){
sortedStyles.push({
name: styles[i].name(),
style: styles[i],
textStyle: styles[i].style().textStyle()
});
}
sortedStyles.sort(function(a,b){
if(a.name < b.name){
return -1;
}
if(a.name > b.name){
return 1;
}
return 0;
});
var previousSection = null;
var offset = 30;
var maxWidth = 60;
for(var i = 0 ; i < sortedStyles.length ; ++i){
var sharedStyle = sortedStyles[i];
var tempLayer = MSTextLayer.alloc().init();
tempLayer.name = sharedStyle.name;
tempLayer.stringValue = sharedStyle.name;
artboard.addLayer_(tempLayer);
var apiTempLayer = sketch.fromNative(tempLayer);
var apiSharedStyle = sketch.fromNative(sharedStyle.style);
apiTempLayer.style.syncWithSharedStyle(apiSharedStyle);
var sections = sharedStyle.name.split('/');
var section = sections[0] + sections[1] ? ('/' + sections[1]) : '';
if(previousSection && previousSection !== section){
offset += 30;
}
tempLayer.frame().setY(offset);
tempLayer.frame().setX(30);
offset += tempLayer.frame().height();
maxWidth = maxWidth < tempLayer.frame().width() + 60 ? tempLayer.frame().width() + 60 : maxWidth;
if(offset > artboard.frame().height()){
artboard.frame().setHeight(offset);
}
if(maxWidth > artboard.frame().width()){
artboard.frame().setWidth(maxWidth);
}
previousSection = section;
}
artboard.frame().setHeight(offset + 30);