diff --git a/src/index.ts b/src/index.ts
index 6fb4f0a..349aca6 100644
--- a/src/index.ts
+++ b/src/index.ts
@@ -17,7 +17,7 @@ import {
import "@/index.scss";
import HelloExample from "@/hello.svelte";
-import SettingPannel from "@/libs/setting-panel.svelte";
+import SettingExample from "@/setting-example.svelte";
import { SettingUtils } from "./libs/setting-utils";
@@ -173,16 +173,10 @@ export default class PluginSample extends Plugin {
title: "Readonly text",
description: "Select description",
select: {
- options: [
- {
- val: 1,
- text: "Option 1"
- },
- {
- val: 2,
- text: "Option 2"
- }
- ]
+ options: {
+ 1: "Option 1",
+ 2: "Option 2"
+ }
}
});
this.settingUtils.addItem({
@@ -270,7 +264,7 @@ export default class PluginSample extends Plugin {
pannel.$destroy();
}
});
- let pannel = new SettingPannel({
+ let pannel = new SettingExample({
target: dialog.element.querySelector("#SettingPanel"),
});
}
diff --git a/src/libs/index.d.ts b/src/libs/index.d.ts
index b46f655..379d841 100644
--- a/src/libs/index.d.ts
+++ b/src/libs/index.d.ts
@@ -5,13 +5,16 @@ interface ISettingItem {
type: TSettingItemType;
title: string;
description?: string;
+ text?: {
+ placeholder?: string;
+ };
slider?: {
min: number;
max: number;
step: number;
};
select?: {
- options: {val: any; text: string}[];
+ options: { [key: string | number]: string };
};
button?: {
label: string;
diff --git a/src/libs/setting-item.svelte b/src/libs/setting-item.svelte
index b728cf4..6f17890 100644
--- a/src/libs/setting-item.svelte
+++ b/src/libs/setting-item.svelte
@@ -2,13 +2,13 @@
import { createEventDispatcher } from "svelte";
export let type: string; // Setting Type
export let title: string; // Displayint Setting Title
- export let text: string; // Displaying Setting Text
+ export let description: string; // Displaying Setting Text
export let settingKey: string;
export let settingValue: any;
//Optional
export let placeholder: string = ""; // Use it if type is input
- export let options: { [key: string]: string } = {}; // Use it if type is select
+ export let options: { [key: string | number]: string } = {}; // Use it if type is select
export let slider: {
min: number;
max: number;
@@ -30,7 +30,7 @@
{title}
- {text}
+ {@html description}
@@ -53,6 +53,14 @@
bind:value={settingValue}
on:change={changed}
/>
+ {:else if type === "number"}
+
{:else if type === "button"}