2020-07-17 15:57:02 +02:00
|
|
|
import classDiagram from './diagrams/class/styles';
|
2020-07-20 14:13:05 +02:00
|
|
|
import er from './diagrams/er/styles';
|
2020-07-17 15:57:02 +02:00
|
|
|
import flowchart from './diagrams/flowchart/styles';
|
|
|
|
import gantt from './diagrams/gantt/styles';
|
|
|
|
import git from './diagrams/git/styles';
|
|
|
|
import info from './diagrams/info/styles';
|
|
|
|
import pie from './diagrams/pie/styles';
|
2022-02-10 20:32:21 +01:00
|
|
|
import requirement from './diagrams/requirement/styles';
|
2020-07-17 15:57:02 +02:00
|
|
|
import sequence from './diagrams/sequence/styles';
|
|
|
|
import stateDiagram from './diagrams/state/styles';
|
|
|
|
import journey from './diagrams/user-journey/styles';
|
2020-07-16 20:27:42 +02:00
|
|
|
|
|
|
|
const themes = {
|
2020-07-17 15:57:02 +02:00
|
|
|
flowchart,
|
|
|
|
'flowchart-v2': flowchart,
|
|
|
|
sequence,
|
|
|
|
gantt,
|
2020-07-23 06:03:04 -04:00
|
|
|
classDiagram,
|
2020-07-22 19:25:26 +02:00
|
|
|
'classDiagram-v2': classDiagram,
|
2020-07-23 05:57:15 -04:00
|
|
|
class: classDiagram,
|
2020-07-17 15:57:02 +02:00
|
|
|
stateDiagram,
|
|
|
|
state: stateDiagram,
|
|
|
|
git,
|
|
|
|
info,
|
|
|
|
pie,
|
|
|
|
er,
|
2022-02-10 20:32:21 +01:00
|
|
|
journey,
|
|
|
|
requirement,
|
2020-07-16 20:27:42 +02:00
|
|
|
};
|
|
|
|
|
2020-07-19 15:02:53 +02:00
|
|
|
export const calcThemeVariables = (theme, userOverRides) => theme.calcColors(userOverRides);
|
|
|
|
|
|
|
|
const getStyles = (type, userStyles, options) => {
|
2020-08-16 13:01:45 +02:00
|
|
|
//console.warn('options in styles: ', options);
|
2020-07-19 15:02:53 +02:00
|
|
|
return ` {
|
2020-07-17 15:57:02 +02:00
|
|
|
font-family: ${options.fontFamily};
|
|
|
|
font-size: ${options.fontSize};
|
2020-07-20 09:44:09 +02:00
|
|
|
fill: ${options.textColor}
|
2020-07-16 20:27:42 +02:00
|
|
|
}
|
|
|
|
|
|
|
|
/* Classes common for multiple diagrams */
|
|
|
|
|
|
|
|
.error-icon {
|
|
|
|
fill: ${options.errorBkgColor};
|
|
|
|
}
|
|
|
|
.error-text {
|
|
|
|
fill: ${options.errorTextColor};
|
|
|
|
stroke: ${options.errorTextColor};
|
|
|
|
}
|
|
|
|
|
|
|
|
.edge-thickness-normal {
|
|
|
|
stroke-width: 2px;
|
|
|
|
}
|
|
|
|
.edge-thickness-thick {
|
|
|
|
stroke-width: 3.5px
|
|
|
|
}
|
|
|
|
.edge-pattern-solid {
|
|
|
|
stroke-dasharray: 0;
|
|
|
|
}
|
|
|
|
|
|
|
|
.edge-pattern-dashed{
|
|
|
|
stroke-dasharray: 3;
|
|
|
|
}
|
|
|
|
.edge-pattern-dotted {
|
|
|
|
stroke-dasharray: 2;
|
|
|
|
}
|
|
|
|
|
|
|
|
.marker {
|
|
|
|
fill: ${options.lineColor};
|
2022-02-10 20:32:21 +01:00
|
|
|
stroke: ${options.lineColor};
|
2020-07-16 20:27:42 +02:00
|
|
|
}
|
|
|
|
.marker.cross {
|
|
|
|
stroke: ${options.lineColor};
|
|
|
|
}
|
|
|
|
|
|
|
|
svg {
|
2020-07-17 15:57:02 +02:00
|
|
|
font-family: ${options.fontFamily};
|
|
|
|
font-size: ${options.fontSize};
|
2020-07-16 20:27:42 +02:00
|
|
|
}
|
|
|
|
|
2020-07-16 23:39:38 +02:00
|
|
|
${themes[type](options)}
|
2020-07-16 20:27:42 +02:00
|
|
|
|
|
|
|
${userStyles}
|
|
|
|
`;
|
2020-07-19 15:02:53 +02:00
|
|
|
};
|
2020-07-16 20:27:42 +02:00
|
|
|
|
|
|
|
export default getStyles;
|