@seamline-kit/seamline-settings 0.0.2 → 0.0.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/main.cjs +131 -1
- package/dist/main.d.cts +40 -0
- package/dist/main.d.cts.map +1 -0
- package/dist/main.d.ts +39 -3
- package/dist/main.d.ts.map +1 -1
- package/dist/main.js +121 -6
- package/dist/main.js.map +1 -0
- package/package.json +13 -22
- package/dist/adapters/solid.cjs +0 -2
- package/dist/adapters/solid.d.ts +0 -3
- package/dist/adapters/solid.d.ts.map +0 -1
- package/dist/adapters/solid.js +0 -1398
- package/dist/lib-DIb46Sli.js +0 -1607
- package/dist/lib-cjGq4QSq.cjs +0 -1
package/dist/main.cjs
CHANGED
|
@@ -1 +1,131 @@
|
|
|
1
|
-
Object.defineProperty(exports,Symbol.toStringTag,{value
|
|
1
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
|
|
2
|
+
let hastscript_jsx_runtime = require("hastscript/jsx-runtime");
|
|
3
|
+
|
|
4
|
+
//#region src/settings-page-names.ts
|
|
5
|
+
const DEFAULT_PREFIX = "slk-settings";
|
|
6
|
+
const SETTINGS_PAGE_NAMES = {
|
|
7
|
+
appearanceTitle: `${DEFAULT_PREFIX}-appearance-title`,
|
|
8
|
+
appearanceForm: `${DEFAULT_PREFIX}-appearance-form`,
|
|
9
|
+
themeSystem: `${DEFAULT_PREFIX}-theme-system`,
|
|
10
|
+
themeLight: `${DEFAULT_PREFIX}-theme-light`,
|
|
11
|
+
themeDark: `${DEFAULT_PREFIX}-theme-dark`
|
|
12
|
+
};
|
|
13
|
+
|
|
14
|
+
//#endregion
|
|
15
|
+
//#region src/theme.ts
|
|
16
|
+
const THEMES = [
|
|
17
|
+
"system",
|
|
18
|
+
"light",
|
|
19
|
+
"dark"
|
|
20
|
+
];
|
|
21
|
+
const THEME_FIELD_NAME = `${DEFAULT_PREFIX}-theme`;
|
|
22
|
+
const DEFAULT_THEME = THEMES[0];
|
|
23
|
+
function isTheme(value) {
|
|
24
|
+
return THEMES.some((theme) => theme === value);
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
//#endregion
|
|
28
|
+
//#region src/settings-page.tsx
|
|
29
|
+
function SettingsPage({ defaultTheme }) {
|
|
30
|
+
return /* @__PURE__ */ (0, hastscript_jsx_runtime.jsxs)(hastscript_jsx_runtime.Fragment, { children: [/* @__PURE__ */ (0, hastscript_jsx_runtime.jsx)("h1", { children: "Settings" }), /* @__PURE__ */ (0, hastscript_jsx_runtime.jsxs)("section", {
|
|
31
|
+
"aria-labelledby": SETTINGS_PAGE_NAMES.appearanceTitle,
|
|
32
|
+
children: [/* @__PURE__ */ (0, hastscript_jsx_runtime.jsx)("h2", {
|
|
33
|
+
id: SETTINGS_PAGE_NAMES.appearanceTitle,
|
|
34
|
+
children: "Appearance"
|
|
35
|
+
}), /* @__PURE__ */ (0, hastscript_jsx_runtime.jsx)("form", {
|
|
36
|
+
id: SETTINGS_PAGE_NAMES.appearanceForm,
|
|
37
|
+
children: /* @__PURE__ */ (0, hastscript_jsx_runtime.jsxs)("fieldset", { children: [
|
|
38
|
+
/* @__PURE__ */ (0, hastscript_jsx_runtime.jsx)("legend", { children: "Theme" }),
|
|
39
|
+
/* @__PURE__ */ (0, hastscript_jsx_runtime.jsx)("input", {
|
|
40
|
+
type: "radio",
|
|
41
|
+
id: SETTINGS_PAGE_NAMES.themeSystem,
|
|
42
|
+
name: THEME_FIELD_NAME,
|
|
43
|
+
value: "system",
|
|
44
|
+
checked: defaultTheme === "system"
|
|
45
|
+
}),
|
|
46
|
+
/* @__PURE__ */ (0, hastscript_jsx_runtime.jsx)("label", {
|
|
47
|
+
for: SETTINGS_PAGE_NAMES.themeSystem,
|
|
48
|
+
children: "System"
|
|
49
|
+
}),
|
|
50
|
+
/* @__PURE__ */ (0, hastscript_jsx_runtime.jsx)("input", {
|
|
51
|
+
type: "radio",
|
|
52
|
+
id: SETTINGS_PAGE_NAMES.themeLight,
|
|
53
|
+
name: THEME_FIELD_NAME,
|
|
54
|
+
value: "light",
|
|
55
|
+
checked: defaultTheme === "light"
|
|
56
|
+
}),
|
|
57
|
+
/* @__PURE__ */ (0, hastscript_jsx_runtime.jsx)("label", {
|
|
58
|
+
for: SETTINGS_PAGE_NAMES.themeLight,
|
|
59
|
+
children: "Light"
|
|
60
|
+
}),
|
|
61
|
+
/* @__PURE__ */ (0, hastscript_jsx_runtime.jsx)("input", {
|
|
62
|
+
type: "radio",
|
|
63
|
+
id: SETTINGS_PAGE_NAMES.themeDark,
|
|
64
|
+
name: THEME_FIELD_NAME,
|
|
65
|
+
value: "dark",
|
|
66
|
+
checked: defaultTheme === "dark"
|
|
67
|
+
}),
|
|
68
|
+
/* @__PURE__ */ (0, hastscript_jsx_runtime.jsx)("label", {
|
|
69
|
+
for: SETTINGS_PAGE_NAMES.themeDark,
|
|
70
|
+
children: "Dark"
|
|
71
|
+
})
|
|
72
|
+
] })
|
|
73
|
+
})]
|
|
74
|
+
})] });
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
//#endregion
|
|
78
|
+
//#region src/theme-form-controller.ts
|
|
79
|
+
function getSelectedTheme(form) {
|
|
80
|
+
const theme = new FormData(form).get(THEME_FIELD_NAME);
|
|
81
|
+
if (!isTheme(theme)) return null;
|
|
82
|
+
return theme;
|
|
83
|
+
}
|
|
84
|
+
function syncThemeStateToDom(radios, theme) {
|
|
85
|
+
for (const radio of radios) {
|
|
86
|
+
const checked = radio.value === theme;
|
|
87
|
+
radio.checked = checked;
|
|
88
|
+
radio.defaultChecked = checked;
|
|
89
|
+
}
|
|
90
|
+
document.documentElement.setAttribute(`data-${THEME_FIELD_NAME}`, theme);
|
|
91
|
+
}
|
|
92
|
+
function bindThemeForm(onThemeChange) {
|
|
93
|
+
const form = document.getElementById(SETTINGS_PAGE_NAMES.appearanceForm);
|
|
94
|
+
const radios = form.querySelectorAll(`input[name="${THEME_FIELD_NAME}"]`);
|
|
95
|
+
function syncThemeFromForm() {
|
|
96
|
+
const selectedTheme = getSelectedTheme(form);
|
|
97
|
+
if (!selectedTheme) return;
|
|
98
|
+
onThemeChange(selectedTheme);
|
|
99
|
+
}
|
|
100
|
+
const initialSelectedTheme = getSelectedTheme(form);
|
|
101
|
+
if (initialSelectedTheme) onThemeChange(initialSelectedTheme);
|
|
102
|
+
form.addEventListener("change", syncThemeFromForm);
|
|
103
|
+
return {
|
|
104
|
+
sync(theme) {
|
|
105
|
+
syncThemeStateToDom(radios, theme);
|
|
106
|
+
},
|
|
107
|
+
unbind() {
|
|
108
|
+
form.removeEventListener("change", syncThemeFromForm);
|
|
109
|
+
}
|
|
110
|
+
};
|
|
111
|
+
}
|
|
112
|
+
|
|
113
|
+
//#endregion
|
|
114
|
+
//#region src/main.ts
|
|
115
|
+
function init({ defaultTheme = DEFAULT_THEME } = {}) {
|
|
116
|
+
return { render() {
|
|
117
|
+
return render(defaultTheme);
|
|
118
|
+
} };
|
|
119
|
+
}
|
|
120
|
+
function render(defaultTheme) {
|
|
121
|
+
return SettingsPage({ defaultTheme });
|
|
122
|
+
}
|
|
123
|
+
|
|
124
|
+
//#endregion
|
|
125
|
+
exports.DEFAULT_PREFIX = DEFAULT_PREFIX;
|
|
126
|
+
exports.DEFAULT_THEME = DEFAULT_THEME;
|
|
127
|
+
exports.SETTINGS_PAGE_NAMES = SETTINGS_PAGE_NAMES;
|
|
128
|
+
exports.THEME_FIELD_NAME = THEME_FIELD_NAME;
|
|
129
|
+
exports.bindThemeForm = bindThemeForm;
|
|
130
|
+
exports.init = init;
|
|
131
|
+
exports.isTheme = isTheme;
|
package/dist/main.d.cts
ADDED
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import { Result } from "hastscript";
|
|
2
|
+
|
|
3
|
+
//#region src/theme.d.ts
|
|
4
|
+
declare const THEMES: readonly ["system", "light", "dark"];
|
|
5
|
+
type Theme = (typeof THEMES)[number];
|
|
6
|
+
declare const THEME_FIELD_NAME: string;
|
|
7
|
+
declare const DEFAULT_THEME: Theme;
|
|
8
|
+
declare function isTheme(value: unknown): value is Theme;
|
|
9
|
+
//#endregion
|
|
10
|
+
//#region src/settings-page-names.d.ts
|
|
11
|
+
declare const DEFAULT_PREFIX = "slk-settings";
|
|
12
|
+
interface SettingsPageNames {
|
|
13
|
+
appearanceTitle: string;
|
|
14
|
+
appearanceForm: string;
|
|
15
|
+
themeSystem: string;
|
|
16
|
+
themeLight: string;
|
|
17
|
+
themeDark: string;
|
|
18
|
+
}
|
|
19
|
+
declare const SETTINGS_PAGE_NAMES: SettingsPageNames;
|
|
20
|
+
//#endregion
|
|
21
|
+
//#region src/theme-form-controller.d.ts
|
|
22
|
+
interface ThemeFormBinding {
|
|
23
|
+
sync: (theme: Theme) => void;
|
|
24
|
+
unbind: () => void;
|
|
25
|
+
}
|
|
26
|
+
declare function bindThemeForm(onThemeChange: (theme: Theme) => void): ThemeFormBinding;
|
|
27
|
+
//#endregion
|
|
28
|
+
//#region src/main.d.ts
|
|
29
|
+
interface InitOptions {
|
|
30
|
+
defaultTheme?: Theme;
|
|
31
|
+
}
|
|
32
|
+
interface SettingsRenderer {
|
|
33
|
+
render: () => Result;
|
|
34
|
+
}
|
|
35
|
+
declare function init({
|
|
36
|
+
defaultTheme
|
|
37
|
+
}?: InitOptions): SettingsRenderer;
|
|
38
|
+
//#endregion
|
|
39
|
+
export { DEFAULT_PREFIX, DEFAULT_THEME, SETTINGS_PAGE_NAMES, THEME_FIELD_NAME, type Theme, bindThemeForm, init, isTheme };
|
|
40
|
+
//# sourceMappingURL=main.d.cts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"main.d.cts","names":[],"sources":["../src/theme.ts","../src/settings-page-names.ts","../src/theme-form-controller.ts","../src/main.ts"],"mappings":";;;cAEM,MAAA;AAAA,KACM,KAAA,WAAgB,MAAA;AAAA,cAEf,gBAAA;AAAA,cACA,aAAA,EAAe,KAAA;AAAA,iBAEZ,OAAA,CAAQ,KAAA,YAAiB,KAAA,IAAS,KAAA;;;cCRrC,cAAA;AAAA,UAEI,iBAAA;EACf,eAAA;EACA,cAAA;EACA,WAAA;EACA,UAAA;EACA,SAAA;AAAA;AAAA,cAGW,mBAAA,EAAqB,iBAAA;;;UCPxB,gBAAA;EACR,IAAA,GAAO,KAAA,EAAO,KAAA;EACd,MAAA;AAAA;AAAA,iBAsBc,aAAA,CAAc,aAAA,GAAgB,KAAA,EAAO,KAAA,YAAiB,gBAAA;;;UCvB5D,WAAA;EACR,YAAA,GAAe,KAAA;AAAA;AAAA,UAGP,gBAAA;EACR,MAAA,QAAc,MAAA;AAAA;AAAA,iBAGA,IAAA,CAAA;EAAO;AAAA,IAAgC,WAAA,GAAmB,gBAAA"}
|
package/dist/main.d.ts
CHANGED
|
@@ -1,4 +1,40 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
1
|
+
import { Result } from "hastscript";
|
|
2
|
+
|
|
3
|
+
//#region src/theme.d.ts
|
|
4
|
+
declare const THEMES: readonly ["system", "light", "dark"];
|
|
5
|
+
type Theme = (typeof THEMES)[number];
|
|
6
|
+
declare const THEME_FIELD_NAME: string;
|
|
7
|
+
declare const DEFAULT_THEME: Theme;
|
|
8
|
+
declare function isTheme(value: unknown): value is Theme;
|
|
9
|
+
//#endregion
|
|
10
|
+
//#region src/settings-page-names.d.ts
|
|
11
|
+
declare const DEFAULT_PREFIX = "slk-settings";
|
|
12
|
+
interface SettingsPageNames {
|
|
13
|
+
appearanceTitle: string;
|
|
14
|
+
appearanceForm: string;
|
|
15
|
+
themeSystem: string;
|
|
16
|
+
themeLight: string;
|
|
17
|
+
themeDark: string;
|
|
18
|
+
}
|
|
19
|
+
declare const SETTINGS_PAGE_NAMES: SettingsPageNames;
|
|
20
|
+
//#endregion
|
|
21
|
+
//#region src/theme-form-controller.d.ts
|
|
22
|
+
interface ThemeFormBinding {
|
|
23
|
+
sync: (theme: Theme) => void;
|
|
24
|
+
unbind: () => void;
|
|
25
|
+
}
|
|
26
|
+
declare function bindThemeForm(onThemeChange: (theme: Theme) => void): ThemeFormBinding;
|
|
27
|
+
//#endregion
|
|
28
|
+
//#region src/main.d.ts
|
|
29
|
+
interface InitOptions {
|
|
30
|
+
defaultTheme?: Theme;
|
|
31
|
+
}
|
|
32
|
+
interface SettingsRenderer {
|
|
33
|
+
render: () => Result;
|
|
34
|
+
}
|
|
35
|
+
declare function init({
|
|
36
|
+
defaultTheme
|
|
37
|
+
}?: InitOptions): SettingsRenderer;
|
|
38
|
+
//#endregion
|
|
39
|
+
export { DEFAULT_PREFIX, DEFAULT_THEME, SETTINGS_PAGE_NAMES, THEME_FIELD_NAME, type Theme, bindThemeForm, init, isTheme };
|
|
4
40
|
//# sourceMappingURL=main.d.ts.map
|
package/dist/main.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"main.d.ts","
|
|
1
|
+
{"version":3,"file":"main.d.ts","names":[],"sources":["../src/theme.ts","../src/settings-page-names.ts","../src/theme-form-controller.ts","../src/main.ts"],"mappings":";;;cAEM,MAAA;AAAA,KACM,KAAA,WAAgB,MAAA;AAAA,cAEf,gBAAA;AAAA,cACA,aAAA,EAAe,KAAA;AAAA,iBAEZ,OAAA,CAAQ,KAAA,YAAiB,KAAA,IAAS,KAAA;;;cCRrC,cAAA;AAAA,UAEI,iBAAA;EACf,eAAA;EACA,cAAA;EACA,WAAA;EACA,UAAA;EACA,SAAA;AAAA;AAAA,cAGW,mBAAA,EAAqB,iBAAA;;;UCPxB,gBAAA;EACR,IAAA,GAAO,KAAA,EAAO,KAAA;EACd,MAAA;AAAA;AAAA,iBAsBc,aAAA,CAAc,aAAA,GAAgB,KAAA,EAAO,KAAA,YAAiB,gBAAA;;;UCvB5D,WAAA;EACR,YAAA,GAAe,KAAA;AAAA;AAAA,UAGP,gBAAA;EACR,MAAA,QAAc,MAAA;AAAA;AAAA,iBAGA,IAAA,CAAA;EAAO;AAAA,IAAgC,WAAA,GAAmB,gBAAA"}
|
package/dist/main.js
CHANGED
|
@@ -1,10 +1,125 @@
|
|
|
1
|
-
import {
|
|
2
|
-
|
|
1
|
+
import { Fragment, jsx, jsxs } from "hastscript/jsx-runtime";
|
|
2
|
+
|
|
3
|
+
//#region src/settings-page-names.ts
|
|
4
|
+
const DEFAULT_PREFIX = "slk-settings";
|
|
5
|
+
const SETTINGS_PAGE_NAMES = {
|
|
6
|
+
appearanceTitle: `${DEFAULT_PREFIX}-appearance-title`,
|
|
7
|
+
appearanceForm: `${DEFAULT_PREFIX}-appearance-form`,
|
|
8
|
+
themeSystem: `${DEFAULT_PREFIX}-theme-system`,
|
|
9
|
+
themeLight: `${DEFAULT_PREFIX}-theme-light`,
|
|
10
|
+
themeDark: `${DEFAULT_PREFIX}-theme-dark`
|
|
11
|
+
};
|
|
12
|
+
|
|
13
|
+
//#endregion
|
|
14
|
+
//#region src/theme.ts
|
|
15
|
+
const THEMES = [
|
|
16
|
+
"system",
|
|
17
|
+
"light",
|
|
18
|
+
"dark"
|
|
19
|
+
];
|
|
20
|
+
const THEME_FIELD_NAME = `${DEFAULT_PREFIX}-theme`;
|
|
21
|
+
const DEFAULT_THEME = THEMES[0];
|
|
22
|
+
function isTheme(value) {
|
|
23
|
+
return THEMES.some((theme) => theme === value);
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
//#endregion
|
|
27
|
+
//#region src/settings-page.tsx
|
|
28
|
+
function SettingsPage({ defaultTheme }) {
|
|
29
|
+
return /* @__PURE__ */ jsxs(Fragment, { children: [/* @__PURE__ */ jsx("h1", { children: "Settings" }), /* @__PURE__ */ jsxs("section", {
|
|
30
|
+
"aria-labelledby": SETTINGS_PAGE_NAMES.appearanceTitle,
|
|
31
|
+
children: [/* @__PURE__ */ jsx("h2", {
|
|
32
|
+
id: SETTINGS_PAGE_NAMES.appearanceTitle,
|
|
33
|
+
children: "Appearance"
|
|
34
|
+
}), /* @__PURE__ */ jsx("form", {
|
|
35
|
+
id: SETTINGS_PAGE_NAMES.appearanceForm,
|
|
36
|
+
children: /* @__PURE__ */ jsxs("fieldset", { children: [
|
|
37
|
+
/* @__PURE__ */ jsx("legend", { children: "Theme" }),
|
|
38
|
+
/* @__PURE__ */ jsx("input", {
|
|
39
|
+
type: "radio",
|
|
40
|
+
id: SETTINGS_PAGE_NAMES.themeSystem,
|
|
41
|
+
name: THEME_FIELD_NAME,
|
|
42
|
+
value: "system",
|
|
43
|
+
checked: defaultTheme === "system"
|
|
44
|
+
}),
|
|
45
|
+
/* @__PURE__ */ jsx("label", {
|
|
46
|
+
for: SETTINGS_PAGE_NAMES.themeSystem,
|
|
47
|
+
children: "System"
|
|
48
|
+
}),
|
|
49
|
+
/* @__PURE__ */ jsx("input", {
|
|
50
|
+
type: "radio",
|
|
51
|
+
id: SETTINGS_PAGE_NAMES.themeLight,
|
|
52
|
+
name: THEME_FIELD_NAME,
|
|
53
|
+
value: "light",
|
|
54
|
+
checked: defaultTheme === "light"
|
|
55
|
+
}),
|
|
56
|
+
/* @__PURE__ */ jsx("label", {
|
|
57
|
+
for: SETTINGS_PAGE_NAMES.themeLight,
|
|
58
|
+
children: "Light"
|
|
59
|
+
}),
|
|
60
|
+
/* @__PURE__ */ jsx("input", {
|
|
61
|
+
type: "radio",
|
|
62
|
+
id: SETTINGS_PAGE_NAMES.themeDark,
|
|
63
|
+
name: THEME_FIELD_NAME,
|
|
64
|
+
value: "dark",
|
|
65
|
+
checked: defaultTheme === "dark"
|
|
66
|
+
}),
|
|
67
|
+
/* @__PURE__ */ jsx("label", {
|
|
68
|
+
for: SETTINGS_PAGE_NAMES.themeDark,
|
|
69
|
+
children: "Dark"
|
|
70
|
+
})
|
|
71
|
+
] })
|
|
72
|
+
})]
|
|
73
|
+
})] });
|
|
74
|
+
}
|
|
75
|
+
|
|
76
|
+
//#endregion
|
|
77
|
+
//#region src/theme-form-controller.ts
|
|
78
|
+
function getSelectedTheme(form) {
|
|
79
|
+
const theme = new FormData(form).get(THEME_FIELD_NAME);
|
|
80
|
+
if (!isTheme(theme)) return null;
|
|
81
|
+
return theme;
|
|
82
|
+
}
|
|
83
|
+
function syncThemeStateToDom(radios, theme) {
|
|
84
|
+
for (const radio of radios) {
|
|
85
|
+
const checked = radio.value === theme;
|
|
86
|
+
radio.checked = checked;
|
|
87
|
+
radio.defaultChecked = checked;
|
|
88
|
+
}
|
|
89
|
+
document.documentElement.setAttribute(`data-${THEME_FIELD_NAME}`, theme);
|
|
90
|
+
}
|
|
91
|
+
function bindThemeForm(onThemeChange) {
|
|
92
|
+
const form = document.getElementById(SETTINGS_PAGE_NAMES.appearanceForm);
|
|
93
|
+
const radios = form.querySelectorAll(`input[name="${THEME_FIELD_NAME}"]`);
|
|
94
|
+
function syncThemeFromForm() {
|
|
95
|
+
const selectedTheme = getSelectedTheme(form);
|
|
96
|
+
if (!selectedTheme) return;
|
|
97
|
+
onThemeChange(selectedTheme);
|
|
98
|
+
}
|
|
99
|
+
const initialSelectedTheme = getSelectedTheme(form);
|
|
100
|
+
if (initialSelectedTheme) onThemeChange(initialSelectedTheme);
|
|
101
|
+
form.addEventListener("change", syncThemeFromForm);
|
|
102
|
+
return {
|
|
103
|
+
sync(theme) {
|
|
104
|
+
syncThemeStateToDom(radios, theme);
|
|
105
|
+
},
|
|
106
|
+
unbind() {
|
|
107
|
+
form.removeEventListener("change", syncThemeFromForm);
|
|
108
|
+
}
|
|
109
|
+
};
|
|
110
|
+
}
|
|
111
|
+
|
|
112
|
+
//#endregion
|
|
113
|
+
//#region src/main.ts
|
|
114
|
+
function init({ defaultTheme = DEFAULT_THEME } = {}) {
|
|
3
115
|
return { render() {
|
|
4
|
-
return
|
|
116
|
+
return render(defaultTheme);
|
|
5
117
|
} };
|
|
6
118
|
}
|
|
7
|
-
function
|
|
8
|
-
return
|
|
119
|
+
function render(defaultTheme) {
|
|
120
|
+
return SettingsPage({ defaultTheme });
|
|
9
121
|
}
|
|
10
|
-
|
|
122
|
+
|
|
123
|
+
//#endregion
|
|
124
|
+
export { DEFAULT_PREFIX, DEFAULT_THEME, SETTINGS_PAGE_NAMES, THEME_FIELD_NAME, bindThemeForm, init, isTheme };
|
|
125
|
+
//# sourceMappingURL=main.js.map
|
package/dist/main.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"main.js","names":[],"sources":["../src/settings-page-names.ts","../src/theme.ts","../src/settings-page.tsx","../src/theme-form-controller.ts","../src/main.ts"],"sourcesContent":["export const DEFAULT_PREFIX = \"slk-settings\";\n\nexport interface SettingsPageNames {\n appearanceTitle: string;\n appearanceForm: string;\n themeSystem: string;\n themeLight: string;\n themeDark: string;\n}\n\nexport const SETTINGS_PAGE_NAMES: SettingsPageNames = {\n appearanceTitle: `${DEFAULT_PREFIX}-appearance-title`,\n appearanceForm: `${DEFAULT_PREFIX}-appearance-form`,\n themeSystem: `${DEFAULT_PREFIX}-theme-system`,\n themeLight: `${DEFAULT_PREFIX}-theme-light`,\n themeDark: `${DEFAULT_PREFIX}-theme-dark`,\n};\n","import { DEFAULT_PREFIX } from \"./settings-page-names\";\n\nconst THEMES = [\"system\", \"light\", \"dark\"] as const;\nexport type Theme = (typeof THEMES)[number];\n\nexport const THEME_FIELD_NAME: string = `${DEFAULT_PREFIX}-theme`;\nexport const DEFAULT_THEME: Theme = THEMES[0];\n\nexport function isTheme(value: unknown): value is Theme {\n return THEMES.some((theme) => theme === value);\n}\n","/** @jsxImportSource hastscript */\n\nimport type { Result as HastResult } from \"hastscript\";\nimport { SETTINGS_PAGE_NAMES } from \"./settings-page-names\";\nimport { THEME_FIELD_NAME, type Theme } from \"./theme\";\n\nexport interface SettingsPageProps {\n defaultTheme: Theme;\n}\n\nexport function SettingsPage({ defaultTheme }: SettingsPageProps): HastResult {\n return (\n <>\n <h1>Settings</h1>\n <section aria-labelledby={SETTINGS_PAGE_NAMES.appearanceTitle}>\n <h2 id={SETTINGS_PAGE_NAMES.appearanceTitle}>Appearance</h2>\n <form id={SETTINGS_PAGE_NAMES.appearanceForm}>\n <fieldset>\n <legend>Theme</legend>\n <input\n type=\"radio\"\n id={SETTINGS_PAGE_NAMES.themeSystem}\n name={THEME_FIELD_NAME}\n value=\"system\"\n checked={defaultTheme === \"system\"}\n />\n <label for={SETTINGS_PAGE_NAMES.themeSystem}>System</label>\n <input\n type=\"radio\"\n id={SETTINGS_PAGE_NAMES.themeLight}\n name={THEME_FIELD_NAME}\n value=\"light\"\n checked={defaultTheme === \"light\"}\n />\n <label for={SETTINGS_PAGE_NAMES.themeLight}>Light</label>\n <input\n type=\"radio\"\n id={SETTINGS_PAGE_NAMES.themeDark}\n name={THEME_FIELD_NAME}\n value=\"dark\"\n checked={defaultTheme === \"dark\"}\n />\n <label for={SETTINGS_PAGE_NAMES.themeDark}>Dark</label>\n </fieldset>\n </form>\n </section>\n </>\n );\n}\n","import { SETTINGS_PAGE_NAMES } from \"./settings-page-names\";\nimport { isTheme, THEME_FIELD_NAME, type Theme } from \"./theme\";\n\ninterface ThemeFormBinding {\n sync: (theme: Theme) => void;\n unbind: () => void;\n}\n\nfunction getSelectedTheme(form: HTMLFormElement): Theme | null {\n const theme = new FormData(form).get(THEME_FIELD_NAME);\n if (!isTheme(theme)) {\n return null;\n }\n\n return theme;\n}\n\nfunction syncThemeStateToDom(radios: NodeListOf<HTMLInputElement>, theme: Theme) {\n for (const radio of radios) {\n const checked = radio.value === theme;\n radio.checked = checked;\n radio.defaultChecked = checked;\n }\n\n document.documentElement.setAttribute(`data-${THEME_FIELD_NAME}`, theme);\n}\n\nexport function bindThemeForm(onThemeChange: (theme: Theme) => void): ThemeFormBinding {\n const form = document.getElementById(SETTINGS_PAGE_NAMES.appearanceForm) as HTMLFormElement;\n const radios = form.querySelectorAll<HTMLInputElement>(`input[name=\"${THEME_FIELD_NAME}\"]`);\n\n function syncThemeFromForm() {\n const selectedTheme = getSelectedTheme(form);\n if (!selectedTheme) {\n return;\n }\n\n onThemeChange(selectedTheme);\n }\n\n const initialSelectedTheme = getSelectedTheme(form);\n if (initialSelectedTheme) {\n onThemeChange(initialSelectedTheme);\n }\n\n form.addEventListener(\"change\", syncThemeFromForm);\n\n return {\n sync(theme: Theme) {\n syncThemeStateToDom(radios, theme);\n },\n unbind() {\n form.removeEventListener(\"change\", syncThemeFromForm);\n },\n };\n}\n","import type { Result as HastResult } from \"hastscript\";\nimport { SettingsPage } from \"./settings-page\";\nimport { DEFAULT_THEME, type Theme } from \"./theme\";\n\ninterface InitOptions {\n defaultTheme?: Theme;\n}\n\ninterface SettingsRenderer {\n render: () => HastResult;\n}\n\nexport function init({ defaultTheme = DEFAULT_THEME }: InitOptions = {}): SettingsRenderer {\n return {\n render() {\n return render(defaultTheme);\n },\n };\n}\n\nfunction render(defaultTheme: Theme): HastResult {\n return SettingsPage({ defaultTheme });\n}\n\nexport { DEFAULT_PREFIX, SETTINGS_PAGE_NAMES } from \"./settings-page-names\";\nexport { bindThemeForm } from \"./theme-form-controller\";\nexport { DEFAULT_THEME, THEME_FIELD_NAME, isTheme, type Theme } from \"./theme\";\n"],"mappings":";;;AAAA,MAAa,iBAAiB;AAU9B,MAAa,sBAAyC;CACpD,iBAAiB,GAAG,eAAe;CACnC,gBAAgB,GAAG,eAAe;CAClC,aAAa,GAAG,eAAe;CAC/B,YAAY,GAAG,eAAe;CAC9B,WAAW,GAAG,eAAe;CAC9B;;;;ACdD,MAAM,SAAS;CAAC;CAAU;CAAS;CAAO;AAG1C,MAAa,mBAA2B,GAAG,eAAe;AAC1D,MAAa,gBAAuB,OAAO;AAE3C,SAAgB,QAAQ,OAAgC;AACtD,QAAO,OAAO,MAAM,UAAU,UAAU,MAAM;;;;;ACChD,SAAgB,aAAa,EAAE,gBAA+C;AAC5E,QACE,4CACE,oBAAC,kBAAG,aAAa,EACjB,qBAAC;EAAQ,mBAAiB,oBAAoB;aAC5C,oBAAC;GAAG,IAAI,oBAAoB;aAAiB;IAAe,EAC5D,oBAAC;GAAK,IAAI,oBAAoB;aAC5B,qBAAC;IACC,oBAAC,sBAAO,UAAc;IACtB,oBAAC;KACC,MAAK;KACL,IAAI,oBAAoB;KACxB,MAAM;KACN,OAAM;KACN,SAAS,iBAAiB;MAC1B;IACF,oBAAC;KAAM,KAAK,oBAAoB;eAAa;MAAc;IAC3D,oBAAC;KACC,MAAK;KACL,IAAI,oBAAoB;KACxB,MAAM;KACN,OAAM;KACN,SAAS,iBAAiB;MAC1B;IACF,oBAAC;KAAM,KAAK,oBAAoB;eAAY;MAAa;IACzD,oBAAC;KACC,MAAK;KACL,IAAI,oBAAoB;KACxB,MAAM;KACN,OAAM;KACN,SAAS,iBAAiB;MAC1B;IACF,oBAAC;KAAM,KAAK,oBAAoB;eAAW;MAAY;OAC9C;IACN;GACC,IACT;;;;;ACtCP,SAAS,iBAAiB,MAAqC;CAC7D,MAAM,QAAQ,IAAI,SAAS,KAAK,CAAC,IAAI,iBAAiB;AACtD,KAAI,CAAC,QAAQ,MAAM,CACjB,QAAO;AAGT,QAAO;;AAGT,SAAS,oBAAoB,QAAsC,OAAc;AAC/E,MAAK,MAAM,SAAS,QAAQ;EAC1B,MAAM,UAAU,MAAM,UAAU;AAChC,QAAM,UAAU;AAChB,QAAM,iBAAiB;;AAGzB,UAAS,gBAAgB,aAAa,QAAQ,oBAAoB,MAAM;;AAG1E,SAAgB,cAAc,eAAyD;CACrF,MAAM,OAAO,SAAS,eAAe,oBAAoB,eAAe;CACxE,MAAM,SAAS,KAAK,iBAAmC,eAAe,iBAAiB,IAAI;CAE3F,SAAS,oBAAoB;EAC3B,MAAM,gBAAgB,iBAAiB,KAAK;AAC5C,MAAI,CAAC,cACH;AAGF,gBAAc,cAAc;;CAG9B,MAAM,uBAAuB,iBAAiB,KAAK;AACnD,KAAI,qBACF,eAAc,qBAAqB;AAGrC,MAAK,iBAAiB,UAAU,kBAAkB;AAElD,QAAO;EACL,KAAK,OAAc;AACjB,uBAAoB,QAAQ,MAAM;;EAEpC,SAAS;AACP,QAAK,oBAAoB,UAAU,kBAAkB;;EAExD;;;;;AC1CH,SAAgB,KAAK,EAAE,eAAe,kBAA+B,EAAE,EAAoB;AACzF,QAAO,EACL,SAAS;AACP,SAAO,OAAO,aAAa;IAE9B;;AAGH,SAAS,OAAO,cAAiC;AAC/C,QAAO,aAAa,EAAE,cAAc,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@seamline-kit/seamline-settings",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.4",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"files": [
|
|
6
6
|
"dist"
|
|
@@ -14,44 +14,35 @@
|
|
|
14
14
|
"types": "./dist/main.d.ts",
|
|
15
15
|
"import": "./dist/main.js",
|
|
16
16
|
"require": "./dist/main.cjs"
|
|
17
|
-
},
|
|
18
|
-
"./solid": {
|
|
19
|
-
"types": "./dist/adapters/solid.d.ts",
|
|
20
|
-
"import": "./dist/adapters/solid.js",
|
|
21
|
-
"require": "./dist/adapters/solid.cjs"
|
|
22
17
|
}
|
|
23
18
|
},
|
|
24
19
|
"publishConfig": {
|
|
25
20
|
"access": "public"
|
|
26
21
|
},
|
|
27
22
|
"scripts": {
|
|
28
|
-
"
|
|
29
|
-
"build
|
|
30
|
-
"
|
|
23
|
+
"dev": "tsdown --watch",
|
|
24
|
+
"build": "tsdown",
|
|
25
|
+
"test": "vitest run",
|
|
26
|
+
"test:watch": "vitest",
|
|
27
|
+
"test:browser": "vitest run --config=vitest.browser.config.ts",
|
|
28
|
+
"test:browser:watch": "vitest --config=vitest.browser.config.ts",
|
|
29
|
+
"test:browser:headless": "vitest run --browser.headless --config=vitest.browser.config.ts",
|
|
30
|
+
"test:browser:headless:watch": "vitest --browser.headless --config=vitest.browser.config.ts",
|
|
31
|
+
"typecheck": "tsgo -p tsconfig.build.json --noEmit",
|
|
31
32
|
"lint": "oxlint",
|
|
32
33
|
"lint:fix": "oxlint --fix",
|
|
33
34
|
"format": "oxfmt --ignore-path ../../.gitignore .",
|
|
34
35
|
"format:check": "oxfmt --check --ignore-path ../../.gitignore ."
|
|
35
36
|
},
|
|
36
37
|
"dependencies": {
|
|
37
|
-
"hast-util-to-jsx-runtime": "2.3.6",
|
|
38
38
|
"hastscript": "9.0.1"
|
|
39
39
|
},
|
|
40
40
|
"devDependencies": {
|
|
41
|
+
"@vitest/browser-playwright": "4.0.18",
|
|
41
42
|
"oxfmt": "0.32.0",
|
|
42
43
|
"oxlint": "1.47.0",
|
|
43
|
-
"
|
|
44
|
-
"
|
|
45
|
-
"typescript": "~5.9.3",
|
|
46
|
-
"vite": "8.0.0-beta.14"
|
|
47
|
-
},
|
|
48
|
-
"peerDependencies": {
|
|
49
|
-
"solid-js": "1.x"
|
|
50
|
-
},
|
|
51
|
-
"peerDependenciesMeta": {
|
|
52
|
-
"solid-js": {
|
|
53
|
-
"optional": true
|
|
54
|
-
}
|
|
44
|
+
"tsdown": "0.20.3",
|
|
45
|
+
"vitest": "4.0.18"
|
|
55
46
|
},
|
|
56
47
|
"packageManager": "pnpm@10.29.3"
|
|
57
48
|
}
|
package/dist/adapters/solid.cjs
DELETED
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:`Module`}});const e=require(`../lib-cjGq4QSq.cjs`),t=require(`../main.cjs`);let n=require(`solid-js`);var r=/^[$_\p{ID_Start}][$_\u{200C}\u{200D}\p{ID_Continue}]*$/u,i=/^[$_\p{ID_Start}][-$_\u{200C}\u{200D}\p{ID_Continue}]*$/u,a={};function o(e,t){return((t||a).jsx?i:r).test(e)}var s=/[ \t\n\f\r]/g;function c(e){return typeof e==`object`?e.type===`text`?l(e.value):!1:l(e)}function l(e){return e.replace(s,``)===``}var u=e.c(((e,t)=>{var n=/\/\*[^*]*\*+([^/*][^*]*\*+)*\//g,r=/\n/g,i=/^\s*/,a=/^(\*?[-#/*\\\w]+(\[[0-9a-z_-]+\])?)\s*/,o=/^:\s*/,s=/^((?:'(?:\\'|.)*?'|"(?:\\"|.)*?"|\([^)]*?\)|[^};])+)/,c=/^[;\s]*/,l=/^\s+|\s+$/g,u=`
|
|
2
|
-
`,d=`/`,f=`*`,p=``,m=`comment`,h=`declaration`;function g(e,t){if(typeof e!=`string`)throw TypeError(`First argument must be a string`);if(!e)return[];t||={};var l=1,g=1;function v(e){var t=e.match(r);t&&(l+=t.length);var n=e.lastIndexOf(u);g=~n?e.length-n:g+e.length}function y(){var e={line:l,column:g};return function(t){return t.position=new b(e),C(),t}}function b(e){this.start=e,this.end={line:l,column:g},this.source=t.source}b.prototype.content=e;function x(n){var r=Error(t.source+`:`+l+`:`+g+`: `+n);if(r.reason=n,r.filename=t.source,r.line=l,r.column=g,r.source=e,!t.silent)throw r}function S(t){var n=t.exec(e);if(n){var r=n[0];return v(r),e=e.slice(r.length),n}}function C(){S(i)}function w(e){var t;for(e||=[];t=T();)t!==!1&&e.push(t);return e}function T(){var t=y();if(!(d!=e.charAt(0)||f!=e.charAt(1))){for(var n=2;p!=e.charAt(n)&&(f!=e.charAt(n)||d!=e.charAt(n+1));)++n;if(n+=2,p===e.charAt(n-1))return x(`End of comment missing`);var r=e.slice(2,n-2);return g+=2,v(r),e=e.slice(n),g+=2,t({type:m,comment:r})}}function E(){var e=y(),t=S(a);if(t){if(T(),!S(o))return x(`property missing ':'`);var r=S(s),i=e({type:h,property:_(t[0].replace(n,p)),value:r?_(r[0].replace(n,p)):p});return S(c),i}}function D(){var e=[];w(e);for(var t;t=E();)t!==!1&&(e.push(t),w(e));return e}return C(),D()}function _(e){return e?e.replace(l,p):p}t.exports=g})),d=e.c((e=>{var t=e&&e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(e,`__esModule`,{value:!0}),e.default=r;var n=t(u());function r(e,t){let r=null;if(!e||typeof e!=`string`)return r;let i=(0,n.default)(e),a=typeof t==`function`;return i.forEach(e=>{if(e.type!==`declaration`)return;let{property:n,value:i}=e;a?t(n,i,e):i&&(r||={},r[n]=i)}),r}})),f=e.c((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.camelCase=void 0;var t=/^--[a-zA-Z0-9_-]+$/,n=/-([a-z])/g,r=/^[^-]+$/,i=/^-(webkit|moz|ms|o|khtml)-/,a=/^-(ms)-/,o=function(e){return!e||r.test(e)||t.test(e)},s=function(e,t){return t.toUpperCase()},c=function(e,t){return`${t}-`};e.camelCase=function(e,t){return t===void 0&&(t={}),o(e)?e:(e=e.toLowerCase(),e=t.reactCompat?e.replace(a,c):e.replace(i,c),e.replace(n,s))}})),p=e.c(((e,t)=>{var n=(e&&e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}})(d()),r=f();function i(e,t){var i={};return!e||typeof e!=`string`||(0,n.default)(e,function(e,n){e&&n&&(i[(0,r.camelCase)(e,t)]=n)}),i}i.default=i,t.exports=i}));const m=h(`start`);function h(e){return t;function t(t){let n=t&&t.position&&t.position[e]||{};if(typeof n.line==`number`&&n.line>0&&typeof n.column==`number`&&n.column>0)return{line:n.line,column:n.column,offset:typeof n.offset==`number`&&n.offset>-1?n.offset:void 0}}}function g(e){return!e||typeof e!=`object`?``:`position`in e||`type`in e?v(e.position):`start`in e||`end`in e?v(e):`line`in e||`column`in e?_(e):``}function _(e){return y(e&&e.line)+`:`+y(e&&e.column)}function v(e){return _(e&&e.start)+`-`+_(e&&e.end)}function y(e){return e&&typeof e==`number`?e:1}var b=class extends Error{constructor(e,t,n){super(),typeof t==`string`&&(n=t,t=void 0);let r=``,i={},a=!1;if(t&&(i=`line`in t&&`column`in t||`start`in t&&`end`in t?{place:t}:`type`in t?{ancestors:[t],place:t.position}:{...t}),typeof e==`string`?r=e:!i.cause&&e&&(a=!0,r=e.message,i.cause=e),!i.ruleId&&!i.source&&typeof n==`string`){let e=n.indexOf(`:`);e===-1?i.ruleId=n:(i.source=n.slice(0,e),i.ruleId=n.slice(e+1))}if(!i.place&&i.ancestors&&i.ancestors){let e=i.ancestors[i.ancestors.length-1];e&&(i.place=e.position)}let o=i.place&&`start`in i.place?i.place.start:i.place;this.ancestors=i.ancestors||void 0,this.cause=i.cause||void 0,this.column=o?o.column:void 0,this.fatal=void 0,this.file=``,this.message=r,this.line=o?o.line:void 0,this.name=g(i.place)||`1:1`,this.place=i.place||void 0,this.reason=this.message,this.ruleId=i.ruleId||void 0,this.source=i.source||void 0,this.stack=a&&i.cause&&typeof i.cause.stack==`string`?i.cause.stack:``,this.actual=void 0,this.expected=void 0,this.note=void 0,this.url=void 0}};b.prototype.file=``,b.prototype.name=``,b.prototype.reason=``,b.prototype.message=``,b.prototype.stack=``,b.prototype.column=void 0,b.prototype.line=void 0,b.prototype.ancestors=void 0,b.prototype.cause=void 0,b.prototype.fatal=void 0,b.prototype.place=void 0,b.prototype.ruleId=void 0,b.prototype.source=void 0;var x=e.l(p(),1),S={}.hasOwnProperty,C=new Map,w=/[A-Z]/g,T=new Set([`table`,`tbody`,`thead`,`tfoot`,`tr`]),E=new Set([`td`,`th`]),D=`https://github.com/syntax-tree/hast-util-to-jsx-runtime`;function ee(t,n){if(!n||n.Fragment===void 0)throw TypeError("Expected `Fragment` in options");let r=n.filePath||void 0,i;if(n.development){if(typeof n.jsxDEV!=`function`)throw TypeError("Expected `jsxDEV` in options when `development: true`");i=ce(r,n.jsxDEV)}else{if(typeof n.jsx!=`function`)throw TypeError("Expected `jsx` in production options");if(typeof n.jsxs!=`function`)throw TypeError("Expected `jsxs` in production options");i=se(r,n.jsx,n.jsxs)}let a={Fragment:n.Fragment,ancestors:[],components:n.components||{},create:i,elementAttributeNameCase:n.elementAttributeNameCase||`react`,evaluater:n.createEvaluater?n.createEvaluater():void 0,filePath:r,ignoreInvalidStyle:n.ignoreInvalidStyle||!1,passKeys:n.passKeys!==!1,passNode:n.passNode||!1,schema:n.space===`svg`?e.a:e.i,stylePropertyNameCase:n.stylePropertyNameCase||`dom`,tableCellAlignToStyle:n.tableCellAlignToStyle!==!1},o=O(a,t,void 0);return o&&typeof o!=`string`?o:a.create(t,a.Fragment,{children:o||void 0},void 0)}function O(e,t,n){if(t.type===`element`)return te(e,t,n);if(t.type===`mdxFlowExpression`||t.type===`mdxTextExpression`)return ne(e,t);if(t.type===`mdxJsxFlowElement`||t.type===`mdxJsxTextElement`)return ie(e,t,n);if(t.type===`mdxjsEsm`)return re(e,t);if(t.type===`root`)return ae(e,t,n);if(t.type===`text`)return oe(e,t)}function te(t,n,r){let i=t.schema,a=i;n.tagName.toLowerCase()===`svg`&&i.space===`html`&&(a=e.a,t.schema=a),t.ancestors.push(n);let o=M(t,n.tagName,!1),s=le(t,n),l=j(t,n);return T.has(n.tagName)&&(l=l.filter(function(e){return typeof e==`string`?!c(e):!0})),k(t,s,o,n),A(s,l),t.ancestors.pop(),t.schema=i,t.create(n,o,s,r)}function ne(e,t){if(t.data&&t.data.estree&&e.evaluater){let n=t.data.estree.body[0];return n.type,e.evaluater.evaluateExpression(n.expression)}N(e,t.position)}function re(e,t){if(t.data&&t.data.estree&&e.evaluater)return e.evaluater.evaluateProgram(t.data.estree);N(e,t.position)}function ie(t,n,r){let i=t.schema,a=i;n.name===`svg`&&i.space===`html`&&(a=e.a,t.schema=a),t.ancestors.push(n);let o=n.name===null?t.Fragment:M(t,n.name,!0),s=ue(t,n),c=j(t,n);return k(t,s,o,n),A(s,c),t.ancestors.pop(),t.schema=i,t.create(n,o,s,r)}function ae(e,t,n){let r={};return A(r,j(e,t)),e.create(t,e.Fragment,r,n)}function oe(e,t){return t.value}function k(e,t,n,r){typeof n!=`string`&&n!==e.Fragment&&e.passNode&&(t.node=r)}function A(e,t){if(t.length>0){let n=t.length>1?t:t[0];n&&(e.children=n)}}function se(e,t,n){return r;function r(e,r,i,a){let o=Array.isArray(i.children)?n:t;return a?o(r,i,a):o(r,i)}}function ce(e,t){return n;function n(n,r,i,a){let o=Array.isArray(i.children),s=m(n);return t(r,i,a,o,{columnNumber:s?s.column-1:void 0,fileName:e,lineNumber:s?s.line:void 0},void 0)}}function le(e,t){let n={},r,i;for(i in t.properties)if(i!==`children`&&S.call(t.properties,i)){let a=de(e,i,t.properties[i]);if(a){let[i,o]=a;e.tableCellAlignToStyle&&i===`align`&&typeof o==`string`&&E.has(t.tagName)?r=o:n[i]=o}}if(r){let t=n.style||={};t[e.stylePropertyNameCase===`css`?`text-align`:`textAlign`]=r}return n}function ue(e,t){let n={};for(let r of t.attributes)if(r.type===`mdxJsxExpressionAttribute`)if(r.data&&r.data.estree&&e.evaluater){let t=r.data.estree.body[0];t.type;let i=t.expression;i.type;let a=i.properties[0];a.type,Object.assign(n,e.evaluater.evaluateExpression(a.argument))}else N(e,t.position);else{let i=r.name,a;if(r.value&&typeof r.value==`object`)if(r.value.data&&r.value.data.estree&&e.evaluater){let t=r.value.data.estree.body[0];t.type,a=e.evaluater.evaluateExpression(t.expression)}else N(e,t.position);else a=r.value===null?!0:r.value;n[i]=a}return n}function j(e,t){let n=[],r=-1,i=e.passKeys?new Map:C;for(;++r<t.children.length;){let a=t.children[r],o;if(e.passKeys){let e=a.type===`element`?a.tagName:a.type===`mdxJsxFlowElement`||a.type===`mdxJsxTextElement`?a.name:void 0;if(e){let t=i.get(e)||0;o=e+`-`+t,i.set(e,t+1)}}let s=O(e,a,o);s!==void 0&&n.push(s)}return n}function de(t,n,r){let i=e.o(t.schema,n);if(!(r==null||typeof r==`number`&&Number.isNaN(r))){if(Array.isArray(r)&&(r=i.commaSeparated?e.r(r):e.n(r)),i.property===`style`){let e=typeof r==`object`?r:fe(t,String(r));return t.stylePropertyNameCase===`css`&&(e=pe(e)),[`style`,e]}return[t.elementAttributeNameCase===`react`&&i.space?e.s[i.property]||i.property:i.attribute,r]}}function fe(e,t){try{return(0,x.default)(t,{reactCompat:!0})}catch(t){if(e.ignoreInvalidStyle)return{};let n=t,r=new b("Cannot parse `style` attribute",{ancestors:e.ancestors,cause:n,ruleId:`style`,source:`hast-util-to-jsx-runtime`});throw r.file=e.filePath||void 0,r.url=D+`#cannot-parse-style-attribute`,r}}function M(e,t,n){let r;if(!n)r={type:`Literal`,value:t};else if(t.includes(`.`)){let e=t.split(`.`),n=-1,i;for(;++n<e.length;){let t=o(e[n])?{type:`Identifier`,name:e[n]}:{type:`Literal`,value:e[n]};i=i?{type:`MemberExpression`,object:i,property:t,computed:!!(n&&t.type===`Literal`),optional:!1}:t}r=i}else r=o(t)&&!/^[a-z]/.test(t)?{type:`Identifier`,name:t}:{type:`Literal`,value:t};if(r.type===`Literal`){let t=r.value;return S.call(e.components,t)?e.components[t]:t}if(e.evaluater)return e.evaluater.evaluateExpression(r);N(e)}function N(e,t){let n=new b("Cannot handle MDX estrees without `createEvaluater`",{ancestors:e.ancestors,place:t,ruleId:`mdx-estree`,source:`hast-util-to-jsx-runtime`});throw n.file=e.filePath||void 0,n.url=D+`#cannot-handle-mdx-estrees-without-createevaluater`,n}function pe(e){let t={},n;for(n in e)S.call(e,n)&&(t[me(n)]=e[n]);return t}function me(e){let t=e.replace(w,he);return t.slice(0,3)===`ms-`&&(t=`-`+t),t}function he(e){return`-`+e.toLowerCase()}var ge=new Set([`className`,`value`,`readOnly`,`noValidate`,`formNoValidate`,`isMap`,`noModule`,`playsInline`,`adAuctionHeaders`,`allowFullscreen`,`browsingTopics`,`defaultChecked`,`defaultMuted`,`defaultSelected`,`disablePictureInPicture`,`disableRemotePlayback`,`preservesPitch`,`shadowRootClonable`,`shadowRootCustomElementRegistry`,`shadowRootDelegatesFocus`,`shadowRootSerializable`,`sharedStorageWritable`,...`allowfullscreen.async.alpha.autofocus.autoplay.checked.controls.default.disabled.formnovalidate.hidden.indeterminate.inert.ismap.loop.multiple.muted.nomodule.novalidate.open.playsinline.readonly.required.reversed.seamless.selected.adauctionheaders.browsingtopics.credentialless.defaultchecked.defaultmuted.defaultselected.defer.disablepictureinpicture.disableremoteplayback.preservespitch.shadowrootclonable.shadowrootcustomelementregistry.shadowrootdelegatesfocus.shadowrootserializable.sharedstoragewritable`.split(`.`)]),_e=new Set([`innerHTML`,`textContent`,`innerText`,`children`]),ve=Object.assign(Object.create(null),{className:`class`,htmlFor:`for`}),P=Object.assign(Object.create(null),{class:`className`,novalidate:{$:`noValidate`,FORM:1},formnovalidate:{$:`formNoValidate`,BUTTON:1,INPUT:1},ismap:{$:`isMap`,IMG:1},nomodule:{$:`noModule`,SCRIPT:1},playsinline:{$:`playsInline`,VIDEO:1},readonly:{$:`readOnly`,INPUT:1,TEXTAREA:1},adauctionheaders:{$:`adAuctionHeaders`,IFRAME:1},allowfullscreen:{$:`allowFullscreen`,IFRAME:1},browsingtopics:{$:`browsingTopics`,IMG:1},defaultchecked:{$:`defaultChecked`,INPUT:1},defaultmuted:{$:`defaultMuted`,AUDIO:1,VIDEO:1},defaultselected:{$:`defaultSelected`,OPTION:1},disablepictureinpicture:{$:`disablePictureInPicture`,VIDEO:1},disableremoteplayback:{$:`disableRemotePlayback`,AUDIO:1,VIDEO:1},preservespitch:{$:`preservesPitch`,AUDIO:1,VIDEO:1},shadowrootclonable:{$:`shadowRootClonable`,TEMPLATE:1},shadowrootdelegatesfocus:{$:`shadowRootDelegatesFocus`,TEMPLATE:1},shadowrootserializable:{$:`shadowRootSerializable`,TEMPLATE:1},sharedstoragewritable:{$:`sharedStorageWritable`,IFRAME:1,IMG:1}});function F(e,t){let n=P[e];return typeof n==`object`?n[t]?n.$:void 0:n}var ye=new Set([`beforeinput`,`click`,`dblclick`,`contextmenu`,`focusin`,`focusout`,`input`,`keydown`,`keyup`,`mousedown`,`mousemove`,`mouseout`,`mouseover`,`mouseup`,`pointerdown`,`pointermove`,`pointerout`,`pointerover`,`pointerup`,`touchend`,`touchmove`,`touchstart`]),be=new Set(`altGlyph.altGlyphDef.altGlyphItem.animate.animateColor.animateMotion.animateTransform.circle.clipPath.color-profile.cursor.defs.desc.ellipse.feBlend.feColorMatrix.feComponentTransfer.feComposite.feConvolveMatrix.feDiffuseLighting.feDisplacementMap.feDistantLight.feDropShadow.feFlood.feFuncA.feFuncB.feFuncG.feFuncR.feGaussianBlur.feImage.feMerge.feMergeNode.feMorphology.feOffset.fePointLight.feSpecularLighting.feSpotLight.feTile.feTurbulence.filter.font.font-face.font-face-format.font-face-name.font-face-src.font-face-uri.foreignObject.g.glyph.glyphRef.hkern.image.line.linearGradient.marker.mask.metadata.missing-glyph.mpath.path.pattern.polygon.polyline.radialGradient.rect.set.stop.svg.switch.symbol.text.textPath.tref.tspan.use.view.vkern`.split(`.`)),xe={xlink:`http://www.w3.org/1999/xlink`,xml:`http://www.w3.org/XML/1998/namespace`};function Se(e,t,n){let r=n.length,i=t.length,a=r,o=0,s=0,c=t[i-1].nextSibling,l=null;for(;o<i||s<a;){if(t[o]===n[s]){o++,s++;continue}for(;t[i-1]===n[a-1];)i--,a--;if(i===o){let t=a<r?s?n[s-1].nextSibling:n[a-s]:c;for(;s<a;)e.insertBefore(n[s++],t)}else if(a===s)for(;o<i;)(!l||!l.has(t[o]))&&t[o].remove(),o++;else if(t[o]===n[a-1]&&n[s]===t[i-1]){let r=t[--i].nextSibling;e.insertBefore(n[s++],t[o++].nextSibling),e.insertBefore(n[--a],r),t[i]=n[a]}else{if(!l){l=new Map;let e=s;for(;e<a;)l.set(n[e],e++)}let r=l.get(t[o]);if(r!=null)if(s<r&&r<a){let c=o,u=1,d;for(;++c<i&&c<a&&!((d=l.get(t[c]))==null||d!==r+u);)u++;if(u>r-s){let i=t[o];for(;s<r;)e.insertBefore(n[s++],i)}else e.replaceChild(n[s++],t[o++])}else o++;else t[o++].remove()}}}var I=`_$DX_DELEGATE`;function Ce(e,t=window.document){let n=t[I]||(t[I]=new Set);for(let r=0,i=e.length;r<i;r++){let i=e[r];n.has(i)||(n.add(i),t.addEventListener(i,Fe))}}function L(e,t,n){R(e)||(n==null?e.removeAttribute(t):e.setAttribute(t,n))}function we(e,t,n,r){R(e)||(r==null?e.removeAttributeNS(t,n):e.setAttributeNS(t,n,r))}function Te(e,t,n){R(e)||(n?e.setAttribute(t,``):e.removeAttribute(t))}function Ee(e,t){R(e)||(t==null?e.removeAttribute(`class`):e.className=t)}function De(e,t,n,r){if(r)Array.isArray(n)?(e[`$$${t}`]=n[0],e[`$$${t}Data`]=n[1]):e[`$$${t}`]=n;else if(Array.isArray(n)){let r=n[0];e.addEventListener(t,n[0]=t=>r.call(e,n[1],t))}else e.addEventListener(t,n,typeof n!=`function`&&n)}function Oe(e,t,n={}){let r=Object.keys(t||{}),i=Object.keys(n),a,o;for(a=0,o=i.length;a<o;a++){let r=i[a];!r||r===`undefined`||t[r]||(z(e,r,!1),delete n[r])}for(a=0,o=r.length;a<o;a++){let i=r[a],o=!!t[i];!i||i===`undefined`||n[i]===o||!o||(z(e,i,!0),n[i]=o)}return n}function ke(e,t,n){if(!t)return n?L(e,`style`):t;let r=e.style;if(typeof t==`string`)return r.cssText=t;typeof n==`string`&&(r.cssText=n=void 0),n||={},t||={};let i,a;for(a in n)t[a]??r.removeProperty(a),delete n[a];for(a in t)i=t[a],i!==n[a]&&(r.setProperty(a,i),n[a]=i);return n}function Ae(e,t={},r,i){let a={};return i||(0,n.createRenderEffect)(()=>a.children=V(e,t.children,a.children)),(0,n.createRenderEffect)(()=>typeof t.ref==`function`&&je(t.ref,e)),(0,n.createRenderEffect)(()=>Me(e,t,r,!0,a,!0)),a}function je(e,t,r){return(0,n.untrack)(()=>e(t,r))}function Me(e,t,n,r,i={},a=!1){t||={};for(let r in i)if(!(r in t)){if(r===`children`)continue;i[r]=B(e,r,null,i[r],n,a,t)}for(let o in t){if(o===`children`){r||V(e,t.children);continue}let s=t[o];i[o]=B(e,o,s,i[o],n,a,t)}}function Ne(e){let t,r;return!R()||!(t=n.sharedConfig.registry.get(r=Ie()))?e():(n.sharedConfig.completed&&n.sharedConfig.completed.add(t),n.sharedConfig.registry.delete(r),t)}function R(e){return!!n.sharedConfig.context&&!n.sharedConfig.done&&(!e||e.isConnected)}function Pe(e){return e.toLowerCase().replace(/-([a-z])/g,(e,t)=>t.toUpperCase())}function z(e,t,n){let r=t.trim().split(/\s+/);for(let t=0,i=r.length;t<i;t++)e.classList.toggle(r[t],n)}function B(e,t,n,r,i,a,o){let s,c,l,u,d;if(t===`style`)return ke(e,n,r);if(t===`classList`)return Oe(e,n,r);if(n===r)return r;if(t===`ref`)a||n(e);else if(t.slice(0,3)===`on:`){let i=t.slice(3);r&&e.removeEventListener(i,r,typeof r!=`function`&&r),n&&e.addEventListener(i,n,typeof n!=`function`&&n)}else if(t.slice(0,10)===`oncapture:`){let i=t.slice(10);r&&e.removeEventListener(i,r,!0),n&&e.addEventListener(i,n,!0)}else if(t.slice(0,2)===`on`){let i=t.slice(2).toLowerCase(),a=ye.has(i);if(!a&&r){let t=Array.isArray(r)?r[0]:r;e.removeEventListener(i,t)}(a||n)&&(De(e,i,n,a),a&&Ce([i]))}else if(t.slice(0,5)===`attr:`)L(e,t.slice(5),n);else if(t.slice(0,5)===`bool:`)Te(e,t.slice(5),n);else if((d=t.slice(0,5)===`prop:`)||(l=_e.has(t))||!i&&((u=F(t,e.tagName))||(c=ge.has(t)))||(s=e.nodeName.includes(`-`)||`is`in o)){if(d)t=t.slice(5),c=!0;else if(R(e))return n;t===`class`||t===`className`?Ee(e,n):s&&!c&&!l?e[Pe(t)]=n:e[u||t]=n}else{let r=i&&t.indexOf(`:`)>-1&&xe[t.split(`:`)[0]];r?we(e,r,t,n):L(e,ve[t]||t,n)}return n}function Fe(e){if(n.sharedConfig.registry&&n.sharedConfig.events&&n.sharedConfig.events.find(([t,n])=>n===e))return;let t=e.target,r=`$$${e.type}`,i=e.target,a=e.currentTarget,o=t=>Object.defineProperty(e,`target`,{configurable:!0,value:t}),s=()=>{let n=t[r];if(n&&!t.disabled){let i=t[`${r}Data`];if(i===void 0?n.call(t,e):n.call(t,i,e),e.cancelBubble)return}return t.host&&typeof t.host!=`string`&&!t.host._$host&&t.contains(e.target)&&o(t.host),!0},c=()=>{for(;s()&&(t=t._$host||t.parentNode||t.host););};if(Object.defineProperty(e,`currentTarget`,{configurable:!0,get(){return t||document}}),n.sharedConfig.registry&&!n.sharedConfig.done&&(n.sharedConfig.done=_$HY.done=!0),e.composedPath){let n=e.composedPath();o(n[0]);for(let e=0;e<n.length-2&&(t=n[e],s());e++){if(t._$host){t=t._$host,c();break}if(t.parentNode===a)break}}else c();o(i)}function V(e,t,r,i,a){let o=R(e);if(o){!r&&(r=[...e.childNodes]);let t=[];for(let e=0;e<r.length;e++){let n=r[e];n.nodeType===8&&n.data.slice(0,2)===`!$`?n.remove():t.push(n)}r=t}for(;typeof r==`function`;)r=r();if(t===r)return r;let s=typeof t,c=i!==void 0;if(e=c&&r[0]&&r[0].parentNode||e,s===`string`||s===`number`){if(o||s===`number`&&(t=t.toString(),t===r))return r;if(c){let n=r[0];n&&n.nodeType===3?n.data!==t&&(n.data=t):n=document.createTextNode(t),r=W(e,r,i,n)}else r=r!==``&&typeof r==`string`?e.firstChild.data=t:e.textContent=t}else if(t==null||s===`boolean`){if(o)return r;r=W(e,r,i)}else if(s===`function`)return(0,n.createRenderEffect)(()=>{let n=t();for(;typeof n==`function`;)n=n();r=V(e,n,r,i)}),()=>r;else if(Array.isArray(t)){let s=[],l=r&&Array.isArray(r);if(H(s,t,r,a))return(0,n.createRenderEffect)(()=>r=V(e,s,r,i,!0)),()=>r;if(o){if(!s.length)return r;if(i===void 0)return r=[...e.childNodes];let t=s[0];if(t.parentNode!==e)return r;let n=[t];for(;(t=t.nextSibling)!==i;)n.push(t);return r=n}if(s.length===0){if(r=W(e,r,i),c)return r}else l?r.length===0?U(e,s,i):Se(e,r,s):(r&&W(e),U(e,s));r=s}else if(t.nodeType){if(o&&t.parentNode)return r=c?[t]:t;if(Array.isArray(r)){if(c)return r=W(e,r,i,t);W(e,r,null,t)}else r==null||r===``||!e.firstChild?e.appendChild(t):e.replaceChild(t,e.firstChild);r=t}return r}function H(e,t,n,r){let i=!1;for(let a=0,o=t.length;a<o;a++){let o=t[a],s=n&&n[e.length],c;if(!(o==null||o===!0||o===!1))if((c=typeof o)==`object`&&o.nodeType)e.push(o);else if(Array.isArray(o))i=H(e,o,s)||i;else if(c===`function`)if(r){for(;typeof o==`function`;)o=o();i=H(e,Array.isArray(o)?o:[o],Array.isArray(s)?s:[s])||i}else e.push(o),i=!0;else{let t=String(o);s&&s.nodeType===3&&s.data===t?e.push(s):e.push(document.createTextNode(t))}}return i}function U(e,t,n=null){for(let r=0,i=t.length;r<i;r++)e.insertBefore(t[r],n)}function W(e,t,n,r){if(n===void 0)return e.textContent=``;let i=r||document.createTextNode(``);if(t.length){let r=!1;for(let a=t.length-1;a>=0;a--){let o=t[a];if(i!==o){let t=o.parentNode===e;!r&&!a?t?e.replaceChild(i,o):e.insertBefore(i,n):t&&o.remove()}else r=!0}}else e.insertBefore(i,n);return[i]}function Ie(){return n.sharedConfig.getNextContextId()}var Le=`http://www.w3.org/2000/svg`;function Re(e,t=!1,n=void 0){return t?document.createElementNS(Le,e):document.createElement(e,{is:n})}function ze(e,t){let r=(0,n.createMemo)(e);return(0,n.createMemo)(()=>{let e=r();switch(typeof e){case`function`:return(0,n.untrack)(()=>e(t));case`string`:let r=be.has(e),i=n.sharedConfig.context?Ne():Re(e,r,(0,n.untrack)(()=>t.is));return Ae(i,t,r),i}})}function Be(e){let[,t]=(0,n.splitProps)(e,[`component`]);return ze(()=>e.component,t)}var Ve=e=>{let t=e.charAt(0);return t!==t.toLowerCase()},He=/e(r[HRWrv]|[Vawy])|Con|l(e[Tcs]|c)|s(eP|y)|a(t[rt]|u|v)|Of|Ex|f[XYa]|gt|hR|d[Pg]|t[TXYd]|[UZq]/,G=Object.create(null),Ue=/[A-Z]/g,We=e=>G[e]??(G[e]=He.test(e)?e:e.replaceAll(Ue,e=>`-${e.toLowerCase()}`)),Ge=/^(t(ext$|s)|s[vwy]|g)|^set|tad|ker|p(at|s)|s(to|c$|ca|k)|r(ec|cl)|ew|us|f($|e|s)|cu|n[ei]|l[ty]|[GOP]/,K=Object.create(null),Ke=e=>e in K?K[e]??!1:K[e]=Ge.test(e)&&!e.includes(`-`);(0,n.createContext)(Object.create(null));var qe=new Set([`mjx`]),q=RegExp(`(?:${[...qe].join(`|`)})-.+`,`g`),J=Object.create(null),Y=e=>typeof e==`string`?J[e]??(J[e]=e.replaceAll(q,e=>e.replaceAll(`-`,`_`))):e,X=(e,t)=>{let n={};for(let r of Object.keys(e))n[Je(r,t)]=typeof e[r]==`object`&&!Array.isArray(e[r])?X(e[r],t):Y(e[r]);return n},Z=e=>e.children,Q=(e,t)=>typeof e==`function`?e.name===`Fragment`?Z(t):e(X(t)):(0,n.createComponent)(Be,(0,n.mergeProps)(Ve(e)?t:X(t,e),{component:Y(e)})),Je=(e,t=``)=>Ke(t)?e=e===`xlinkHref`||e===`xlink:href`?`href`:We(e):e,Ye=Q;function $(){return ee(t.init().render(),{Fragment:Z,jsx:Q,jsxs:Ye,elementAttributeNameCase:`html`,stylePropertyNameCase:`css`})}exports.SeamlineSettings=$,exports.default=$;
|
package/dist/adapters/solid.d.ts
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"solid.d.ts","sourceRoot":"","sources":["../../src/adapters/solid.ts"],"names":[],"mappings":"AAIA,wBAAgB,gBAAgB,gBAU/B;AAED,eAAe,gBAAgB,CAAC"}
|