diff --git a/module/helpers/index.mjs b/module/helpers/index.mjs
index a8456b3..44fb372 100644
--- a/module/helpers/index.mjs
+++ b/module/helpers/index.mjs
@@ -4,6 +4,7 @@ import { detailsExpanded } from "./detailsExpanded.mjs";
import { objectValue } from "./objectValue.mjs";
import { toFriendlyDuration } from "./toFriendlyDuration.mjs";
import { localizer } from "../utils/localizer.mjs";
+import { options } from "./options.mjs";
export default {
@@ -14,6 +15,7 @@ export default {
"dd-objectValue": objectValue,
"dd-expanded": detailsExpanded,
"dd-i18n": localizer,
+ "dd-options": options,
// Simple helpers
"dd-stringify": v => JSON.stringify(v, null, ` `),
diff --git a/module/helpers/options.mjs b/module/helpers/options.mjs
new file mode 100644
index 0000000..8775ebc
--- /dev/null
+++ b/module/helpers/options.mjs
@@ -0,0 +1,32 @@
+/**
+ * @typedef {object} Option
+ * @property {string} [label]
+ * @property {string|number} value
+ * @property {boolean} [disabled]
+ */
+
+/**
+ * @param {string | number} selected
+ * @param {Array`
+ );
+ };
+ return htmlOptions.join(`\n`);
+};
diff --git a/templates/actors/char-sheet/v2/partials/stats.v2.pc.hbs b/templates/actors/char-sheet/v2/partials/stats.v2.pc.hbs
index f0d2c43..87bc6b1 100644
--- a/templates/actors/char-sheet/v2/partials/stats.v2.pc.hbs
+++ b/templates/actors/char-sheet/v2/partials/stats.v2.pc.hbs
@@ -19,14 +19,7 @@
name="system.stats.{{stat.key}}"
class="e-2dp"
>
- {{#select stat.value}}
-
- {{#each stat.dieOptions as | die |}}
-
- {{/each}}
- {{/select}}
+ {{{dd-options stat.value stat.dieOptions}}}