diff --git a/src/templates/characters/view_character.html.tera b/src/templates/characters/view_character.html.tera
index c37ff75..93ef9b6 100644
--- a/src/templates/characters/view_character.html.tera
+++ b/src/templates/characters/view_character.html.tera
@@ -1,15 +1,148 @@
+
+{% import "characters/view_character_macros" as macros %}
{% extends "base" %}
{% block content %}
-
+
Core Sheet
+
+
Name:
+
System: {{data_type}}
+
+
+ {{ macros::attribute(name="Intelligence", value=sheet.intelligence) }}
+ {{ macros::attribute(name="Wits", value=sheet.wits) }}
+ {{ macros::attribute(name="Resolve", value=sheet.resolve) }}
+
+
+
+ {{ macros::attribute(name="Strength", value=sheet.strength) }}
+ {{ macros::attribute(name="Dexterity", value=sheet.dexterity) }}
+ {{ macros::attribute(name="Stamina", value=sheet.stamina) }}
+
+
+
+ {{ macros::attribute(name="Presence", value=sheet.presence) }}
+ {{ macros::attribute(name="Manipulation", value=sheet.manipulation) }}
+ {{ macros::attribute(name="Composure", value=sheet.composure) }}
+
+
+
+
+
+ {% for skill_name, skill in sheet.mentalSkills %}
+ {{ macros::skill(name=skill_name, value=skill.dots) }}
+ {% endfor %}
+
+
+
+ {% for skill_name, skill in sheet.physicalSkills %}
+ {{ macros::skill(name=skill_name, value=skill.dots) }}
+ {% endfor %}
+
+
+
+ {% for skill_name, skill in sheet.socialSkills %}
+ {{ macros::skill(name=skill_name, value=skill.dots) }}
+ {% endfor %}
+
+
+
+
+
{% endblock content %}
diff --git a/src/templates/characters/view_character_macros.html.tera b/src/templates/characters/view_character_macros.html.tera
new file mode 100644
index 0000000..fdd3fce
--- /dev/null
+++ b/src/templates/characters/view_character_macros.html.tera
@@ -0,0 +1,13 @@
+{% macro attribute(name, value) %}
+
+
+
{{value}}
+
+{% endmacro attribute %}
+
+{% macro skill(name, value) %}
+
+
+
{{value}}
+
+{% endmacro skill %}
diff --git a/static/scripts/webpack.config.js b/static/scripts/webpack.config.js
index 98236b7..6363218 100644
--- a/static/scripts/webpack.config.js
+++ b/static/scripts/webpack.config.js
@@ -6,57 +6,58 @@ const path = require('path');
const root = path.resolve(__dirname, '..', '..');
function packPage(page, chunks) {
- if (!chunks) chunks = [];
- return new HtmlWebpackPlugin({
- template: `${root}/src/templates/${page}`,
- filename: `${root}/static/templates/${page}`,
- publicPath: '/scripts/dist',
- scriptLoading: 'defer',
- chunks: chunks,
- inject: false,
- minify: false
- });
+ if (!chunks) chunks = [];
+ return new HtmlWebpackPlugin({
+ template: `${root}/src/templates/${page}`,
+ filename: `${root}/static/templates/${page}`,
+ publicPath: '/scripts/dist',
+ scriptLoading: 'defer',
+ chunks: chunks,
+ inject: false,
+ minify: false
+ });
}
module.exports = {
- entry: {
- edit_character: "./src/characters/edit.ts",
- },
- optimization: {
- runtimeChunk: "single",
- splitChunks: {
- chunks: 'all',
+ entry: {
+ edit_character: "./src/characters/edit.ts",
},
- },
- mode: "development",
- output: {
- path: path.resolve(__dirname, 'dist'),
- filename: '[name].bundle.js'
- },
- devtool: 'inline-source-map',
- module: {
- rules: [
- {
- test: /\.ts$/,
- include: /src|_proto/,
- exclude: /node_modules/,
- loader: "ts-loader"
- }
+ optimization: {
+ runtimeChunk: "single",
+ splitChunks: {
+ chunks: 'all',
+ },
+ },
+ mode: "development",
+ output: {
+ path: path.resolve(__dirname, 'dist'),
+ filename: '[name].bundle.js'
+ },
+ devtool: 'inline-source-map',
+ module: {
+ rules: [
+ {
+ test: /\.ts$/,
+ include: /src|_proto/,
+ exclude: /node_modules/,
+ loader: "ts-loader"
+ }
+ ]
+ },
+ resolve: {
+ extensions: [".ts", ".js"]
+ },
+ plugins: [
+ new CleanWebpackPlugin(),
+ packPage('login.html.tera'),
+ packPage('base.html.tera'),
+ packPage('error.html.tera'),
+ packPage('index.html.tera'),
+ packPage('registration.html.tera'),
+ packPage('characters/edit_character.html.tera', ['edit_character']),
+ packPage('characters/edit_character_macros.html.tera'),
+ packPage('characters/new_character.html.tera'),
+ packPage('characters/view_character.html.tera'),
+ packPage('characters/view_character_macros.html.tera'),
]
- },
- resolve: {
- extensions: [".ts", ".js"]
- },
- plugins: [
- new CleanWebpackPlugin(),
- packPage('login.html.tera'),
- packPage('base.html.tera'),
- packPage('error.html.tera'),
- packPage('index.html.tera'),
- packPage('registration.html.tera'),
- packPage('characters/edit_character.html.tera', ['edit_character']),
- packPage('characters/edit_character_macros.html.tera'),
- packPage('characters/new_character.html.tera'),
- packPage('characters/view_character.html.tera')
- ]
};