@kurone-kito/web-toybox-solid 0.1.0-alpha.1

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.
Files changed (31) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +14 -0
  3. package/dist/components/atoms/meta/LinkList.d.ts +25 -0
  4. package/dist/components/atoms/meta/LinkList.d.ts.map +1 -0
  5. package/dist/components/atoms/meta/LinkList.spec.d.ts +2 -0
  6. package/dist/components/atoms/meta/LinkList.spec.d.ts.map +1 -0
  7. package/dist/components/atoms/meta/MetaList.d.ts +21 -0
  8. package/dist/components/atoms/meta/MetaList.d.ts.map +1 -0
  9. package/dist/components/atoms/meta/MetaList.spec.d.ts +2 -0
  10. package/dist/components/atoms/meta/MetaList.spec.d.ts.map +1 -0
  11. package/dist/components/atoms/meta/Ogp.d.ts +31 -0
  12. package/dist/components/atoms/meta/Ogp.d.ts.map +1 -0
  13. package/dist/components/atoms/meta/Ogp.spec.d.ts +2 -0
  14. package/dist/components/atoms/meta/Ogp.spec.d.ts.map +1 -0
  15. package/dist/components/atoms/meta/Title.d.ts +15 -0
  16. package/dist/components/atoms/meta/Title.d.ts.map +1 -0
  17. package/dist/components/atoms/meta/Title.spec.d.ts +2 -0
  18. package/dist/components/atoms/meta/Title.spec.d.ts.map +1 -0
  19. package/dist/components/atoms/meta/XCard.d.ts +21 -0
  20. package/dist/components/atoms/meta/XCard.d.ts.map +1 -0
  21. package/dist/components/atoms/meta/XCard.spec.d.ts +2 -0
  22. package/dist/components/atoms/meta/XCard.spec.d.ts.map +1 -0
  23. package/dist/components/molecules/Head.d.ts +17 -0
  24. package/dist/components/molecules/Head.d.ts.map +1 -0
  25. package/dist/components/molecules/Head.spec.d.ts +2 -0
  26. package/dist/components/molecules/Head.spec.d.ts.map +1 -0
  27. package/dist/index.d.mts +13 -0
  28. package/dist/index.d.mts.map +1 -0
  29. package/dist/index.mjs +439 -0
  30. package/dist/index.mjs.map +1 -0
  31. package/package.json +69 -0
package/LICENSE ADDED
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2025 Kuroné Kito (黒音キト)
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
package/README.md ADDED
@@ -0,0 +1,14 @@
1
+ # ⚙️ Web ToyBox
2
+
3
+ Common functions and component library for Solid.js web applications
4
+
5
+ ## Usage
6
+
7
+ ```ts
8
+ import hello from '@kurone-kito/web-toybox-solid';
9
+ console.log(hello); // => 'Hello, world!'
10
+ ```
11
+
12
+ ## LICENSE
13
+
14
+ MIT
@@ -0,0 +1,25 @@
1
+ import { Component } from 'solid-js';
2
+ /** Type definition for the properties. */
3
+ export interface LinkListProps {
4
+ /** The author URL. */
5
+ readonly authorUrl?: string | undefined;
6
+ /** The mime type of the favicon. */
7
+ readonly faviconType?: string | undefined;
8
+ /** The favicon URL. */
9
+ readonly faviconUrl?: string | undefined;
10
+ /** The license URL. */
11
+ readonly licenseUrl?: string | undefined;
12
+ /** The images to preload. */
13
+ readonly preloadImages?: readonly string[] | undefined;
14
+ /** The next page URL. */
15
+ readonly next?: string | undefined;
16
+ /** The previous page URL. */
17
+ readonly prev?: string | undefined;
18
+ }
19
+ /**
20
+ * The link list component.
21
+ * @param props The component properties.
22
+ * @returns The component.
23
+ */
24
+ export declare const LinkList: Component<LinkListProps>;
25
+ //# sourceMappingURL=LinkList.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LinkList.d.ts","sourceRoot":"","sources":["../../../../src/components/atoms/meta/LinkList.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAG1C,0CAA0C;AAC1C,MAAM,WAAW,aAAa;IAC5B,sBAAsB;IACtB,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAExC,oCAAoC;IACpC,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAE1C,uBAAuB;IACvB,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAEzC,uBAAuB;IACvB,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAEzC,6BAA6B;IAC7B,QAAQ,CAAC,aAAa,CAAC,EAAE,SAAS,MAAM,EAAE,GAAG,SAAS,CAAC;IAEvD,yBAAyB;IACzB,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAEnC,6BAA6B;IAC7B,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CACpC;AAED;;;;GAIG;AACH,eAAO,MAAM,QAAQ,EAAE,SAAS,CAAC,aAAa,CAsB7C,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=LinkList.spec.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LinkList.spec.d.ts","sourceRoot":"","sources":["../../../../src/components/atoms/meta/LinkList.spec.tsx"],"names":[],"mappings":""}
@@ -0,0 +1,21 @@
1
+ import { Component } from 'solid-js';
2
+ /** Type definition for the properties. */
3
+ export interface MetaListProps {
4
+ /** The author of the meta tag. */
5
+ readonly author?: string | undefined;
6
+ /** The color of the meta tag on the dark mode. */
7
+ readonly colorDark?: string | undefined;
8
+ /** The color of the meta tag on the light mode. */
9
+ readonly colorLight?: string | undefined;
10
+ /** The description of the meta tag. */
11
+ readonly description?: string | undefined;
12
+ /** The keywords of the meta tag. */
13
+ readonly keywords?: string | undefined;
14
+ }
15
+ /**
16
+ * The meta list component.
17
+ * @param props The component properties.
18
+ * @returns The component.
19
+ */
20
+ export declare const MetaList: Component<MetaListProps>;
21
+ //# sourceMappingURL=MetaList.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MetaList.d.ts","sourceRoot":"","sources":["../../../../src/components/atoms/meta/MetaList.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAG1C,0CAA0C;AAC1C,MAAM,WAAW,aAAa;IAC5B,kCAAkC;IAClC,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAErC,kDAAkD;IAClD,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAExC,mDAAmD;IACnD,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAEzC,uCAAuC;IACvC,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAE1C,oCAAoC;IACpC,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CACxC;AAED;;;;GAIG;AACH,eAAO,MAAM,QAAQ,EAAE,SAAS,CAAC,aAAa,CA2C7C,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=MetaList.spec.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MetaList.spec.d.ts","sourceRoot":"","sources":["../../../../src/components/atoms/meta/MetaList.spec.tsx"],"names":[],"mappings":""}
@@ -0,0 +1,31 @@
1
+ import { Component } from 'solid-js';
2
+ /** Type definition for the properties. */
3
+ export interface OgpProps {
4
+ /** The description of the page. */
5
+ readonly description?: string | undefined;
6
+ /** The alt text of the images. */
7
+ readonly imageAlt?: string | undefined;
8
+ /** The height of the images. */
9
+ readonly imageHeight?: number | string | undefined;
10
+ /** The mime type of the images. */
11
+ readonly imageType?: string | undefined;
12
+ /** The width of the images. */
13
+ readonly imageWidth?: number | string | undefined;
14
+ /** The image URLs of the page. */
15
+ readonly images?: readonly string[] | undefined;
16
+ /** The language of the page. */
17
+ readonly language?: string | undefined;
18
+ /** The site name. */
19
+ readonly siteName: string;
20
+ /** The title of the page. */
21
+ readonly title?: string | undefined;
22
+ /** The URL of the page. */
23
+ readonly url?: string | undefined;
24
+ }
25
+ /**
26
+ * The OGP component.
27
+ * @param props The component properties.
28
+ * @returns The component.
29
+ */
30
+ export declare const Ogp: Component<OgpProps>;
31
+ //# sourceMappingURL=Ogp.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Ogp.d.ts","sourceRoot":"","sources":["../../../../src/components/atoms/meta/Ogp.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAG1C,0CAA0C;AAC1C,MAAM,WAAW,QAAQ;IACvB,mCAAmC;IACnC,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAE1C,kCAAkC;IAClC,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAEvC,gCAAgC;IAChC,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAAC;IAEnD,mCAAmC;IACnC,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAExC,+BAA+B;IAC/B,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAAC;IAElD,kCAAkC;IAClC,QAAQ,CAAC,MAAM,CAAC,EAAE,SAAS,MAAM,EAAE,GAAG,SAAS,CAAC;IAEhD,gCAAgC;IAChC,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAEvC,qBAAqB;IACrB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAE1B,6BAA6B;IAC7B,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAEpC,2BAA2B;IAC3B,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CACnC;AAED;;;;GAIG;AACH,eAAO,MAAM,GAAG,EAAE,SAAS,CAAC,QAAQ,CAwCnC,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=Ogp.spec.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Ogp.spec.d.ts","sourceRoot":"","sources":["../../../../src/components/atoms/meta/Ogp.spec.tsx"],"names":[],"mappings":""}
@@ -0,0 +1,15 @@
1
+ import { Component } from 'solid-js';
2
+ /** Type definition for the properties. */
3
+ export interface TitleProps {
4
+ /** The site name. */
5
+ readonly siteName: string;
6
+ /** The title of the page. */
7
+ readonly title?: string | undefined;
8
+ }
9
+ /**
10
+ * The title component.
11
+ * @param props The component properties.
12
+ * @returns The component.
13
+ */
14
+ export declare const Title: Component<TitleProps>;
15
+ //# sourceMappingURL=Title.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Title.d.ts","sourceRoot":"","sources":["../../../../src/components/atoms/meta/Title.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAG1C,0CAA0C;AAC1C,MAAM,WAAW,UAAU;IACzB,qBAAqB;IACrB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAE1B,6BAA6B;IAC7B,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CACrC;AAED;;;;GAIG;AACH,eAAO,MAAM,KAAK,EAAE,SAAS,CAAC,UAAU,CAMvC,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=Title.spec.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Title.spec.d.ts","sourceRoot":"","sources":["../../../../src/components/atoms/meta/Title.spec.tsx"],"names":[],"mappings":""}
@@ -0,0 +1,21 @@
1
+ import { Component } from 'solid-js';
2
+ /** Type definition for the properties. */
3
+ export interface XCardProps {
4
+ /** The author of the meta tag. */
5
+ readonly author?: string | undefined;
6
+ /** The card description. */
7
+ readonly description?: string | undefined;
8
+ /** The card image URL. */
9
+ readonly image?: string | undefined;
10
+ /** The site name. */
11
+ readonly siteName: string;
12
+ /** The title of the page. */
13
+ readonly title?: string | undefined;
14
+ }
15
+ /**
16
+ * The X card component.
17
+ * @param props The component properties.
18
+ * @returns The component.
19
+ */
20
+ export declare const XCard: Component<XCardProps>;
21
+ //# sourceMappingURL=XCard.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"XCard.d.ts","sourceRoot":"","sources":["../../../../src/components/atoms/meta/XCard.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAG1C,0CAA0C;AAC1C,MAAM,WAAW,UAAU;IACzB,kCAAkC;IAClC,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAErC,4BAA4B;IAC5B,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAE1C,0BAA0B;IAC1B,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAEpC,qBAAqB;IACrB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAE1B,6BAA6B;IAC7B,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CACrC;AAED;;;;GAIG;AACH,eAAO,MAAM,KAAK,EAAE,SAAS,CAAC,UAAU,CAyBvC,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=XCard.spec.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"XCard.spec.d.ts","sourceRoot":"","sources":["../../../../src/components/atoms/meta/XCard.spec.tsx"],"names":[],"mappings":""}
@@ -0,0 +1,17 @@
1
+ import { Component } from 'solid-js';
2
+ import { Except } from 'type-fest';
3
+ import { LinkListProps } from '../atoms/meta/LinkList.js';
4
+ import { MetaListProps } from '../atoms/meta/MetaList.js';
5
+ import { OgpProps } from '../atoms/meta/Ogp.js';
6
+ import { TitleProps } from '../atoms/meta/Title.js';
7
+ import { XCardProps } from '../atoms/meta/XCard.js';
8
+ /** Type definition for the properties. */
9
+ export interface HeadProps extends LinkListProps, MetaListProps, OgpProps, TitleProps, Except<XCardProps, 'image'> {
10
+ }
11
+ /**
12
+ * The head metadata component.
13
+ * @param props The properties.
14
+ * @returns The component.
15
+ */
16
+ export declare const Head: Component<HeadProps>;
17
+ //# sourceMappingURL=Head.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Head.d.ts","sourceRoot":"","sources":["../../../src/components/molecules/Head.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAE1C,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AACxC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAE/D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAE/D,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAErD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAEzD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAGzD,0CAA0C;AAC1C,MAAM,WAAW,SACf,SAAQ,aAAa,EACnB,aAAa,EACb,QAAQ,EACR,UAAU,EACV,MAAM,CAAC,UAAU,EAAE,OAAO,CAAC;CAAG;AAElC;;;;GAIG;AACH,eAAO,MAAM,IAAI,EAAE,SAAS,CAAC,SAAS,CAarC,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=Head.spec.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Head.spec.d.ts","sourceRoot":"","sources":["../../../src/components/molecules/Head.spec.tsx"],"names":[],"mappings":""}
@@ -0,0 +1,13 @@
1
+ export type { LinkListProps } from './components/atoms/meta/LinkList.js';
2
+ export { LinkList } from './components/atoms/meta/LinkList.js';
3
+ export type { MetaListProps } from './components/atoms/meta/MetaList.js';
4
+ export { MetaList } from './components/atoms/meta/MetaList.js';
5
+ export type { OgpProps } from './components/atoms/meta/Ogp.js';
6
+ export { Ogp } from './components/atoms/meta/Ogp.js';
7
+ export type { TitleProps } from './components/atoms/meta/Title.js';
8
+ export { Title } from './components/atoms/meta/Title.js';
9
+ export type { XCardProps } from './components/atoms/meta/XCard.js';
10
+ export { XCard } from './components/atoms/meta/XCard.js';
11
+ export type { HeadProps } from './components/molecules/Head.js';
12
+ export { Head } from './components/molecules/Head.js';
13
+ //# sourceMappingURL=index.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.mts","sourceRoot":"","sources":["../src/index.mts"],"names":[],"mappings":"AAAA,YAAY,EAAE,aAAa,EAAE,MAAM,qCAAqC,CAAC;AACzE,OAAO,EAAE,QAAQ,EAAE,MAAM,qCAAqC,CAAC;AAC/D,YAAY,EAAE,aAAa,EAAE,MAAM,qCAAqC,CAAC;AACzE,OAAO,EAAE,QAAQ,EAAE,MAAM,qCAAqC,CAAC;AAC/D,YAAY,EAAE,QAAQ,EAAE,MAAM,gCAAgC,CAAC;AAC/D,OAAO,EAAE,GAAG,EAAE,MAAM,gCAAgC,CAAC;AACrD,YAAY,EAAE,UAAU,EAAE,MAAM,kCAAkC,CAAC;AACnE,OAAO,EAAE,KAAK,EAAE,MAAM,kCAAkC,CAAC;AACzD,YAAY,EAAE,UAAU,EAAE,MAAM,kCAAkC,CAAC;AACnE,OAAO,EAAE,KAAK,EAAE,MAAM,kCAAkC,CAAC;AAEzD,YAAY,EAAE,SAAS,EAAE,MAAM,gCAAgC,CAAC;AAChE,OAAO,EAAE,IAAI,EAAE,MAAM,gCAAgC,CAAC"}
package/dist/index.mjs ADDED
@@ -0,0 +1,439 @@
1
+ import { createComponent, mergeProps } from "solid-js/web";
2
+ import { Link, Meta, Title as Title$1 } from "@solidjs/meta";
3
+ import { Show, Switch, Match, Index, splitProps } from "solid-js";
4
+ const LinkList = (props) => [createComponent(Show, {
5
+ get when() {
6
+ return props.authorUrl;
7
+ },
8
+ children: (href) => createComponent(Link, {
9
+ get href() {
10
+ return href();
11
+ },
12
+ rel: "author"
13
+ })
14
+ }), createComponent(Switch, {
15
+ get children() {
16
+ return [createComponent(Match, {
17
+ get when() {
18
+ return props.faviconType && props.faviconUrl;
19
+ },
20
+ get children() {
21
+ return createComponent(Link, {
22
+ get href() {
23
+ return props.faviconUrl;
24
+ },
25
+ rel: "icon",
26
+ get type() {
27
+ return props.faviconType;
28
+ }
29
+ });
30
+ }
31
+ }), createComponent(Match, {
32
+ get when() {
33
+ return !props.faviconType && props.faviconUrl;
34
+ },
35
+ get children() {
36
+ return createComponent(Link, {
37
+ get href() {
38
+ return props.faviconUrl;
39
+ },
40
+ rel: "icon"
41
+ });
42
+ }
43
+ })];
44
+ }
45
+ }), createComponent(Show, {
46
+ get when() {
47
+ return props.licenseUrl;
48
+ },
49
+ children: (href) => createComponent(Link, {
50
+ get href() {
51
+ return href();
52
+ },
53
+ hreflang: "en",
54
+ rel: "license"
55
+ })
56
+ }), createComponent(Show, {
57
+ get when() {
58
+ return props.next;
59
+ },
60
+ children: (href) => createComponent(Link, {
61
+ get href() {
62
+ return href();
63
+ },
64
+ rel: "next"
65
+ })
66
+ }), createComponent(Index, {
67
+ get each() {
68
+ return props.preloadImages;
69
+ },
70
+ children: (image) => createComponent(Link, {
71
+ as: "image",
72
+ get href() {
73
+ return image();
74
+ },
75
+ rel: "preload"
76
+ })
77
+ }), createComponent(Show, {
78
+ get when() {
79
+ return props.prev;
80
+ },
81
+ children: (href) => createComponent(Link, {
82
+ get href() {
83
+ return href();
84
+ },
85
+ rel: "prev"
86
+ })
87
+ })];
88
+ const MetaList = (props) => [createComponent(Show, {
89
+ get when() {
90
+ return props.author;
91
+ },
92
+ get children() {
93
+ return createComponent(Meta, {
94
+ name: "author",
95
+ get content() {
96
+ return props.author;
97
+ }
98
+ });
99
+ }
100
+ }), createComponent(Switch, {
101
+ get children() {
102
+ return [createComponent(Match, {
103
+ get when() {
104
+ return props.colorDark && props.colorLight;
105
+ },
106
+ get children() {
107
+ return createComponent(Meta, {
108
+ name: "color-scheme",
109
+ content: "light dark"
110
+ });
111
+ }
112
+ }), createComponent(Match, {
113
+ get when() {
114
+ return props.colorDark && !props.colorLight;
115
+ },
116
+ get children() {
117
+ return createComponent(Meta, {
118
+ name: "color-scheme",
119
+ content: "dark"
120
+ });
121
+ }
122
+ }), createComponent(Match, {
123
+ get when() {
124
+ return !props.colorDark && props.colorLight;
125
+ },
126
+ get children() {
127
+ return createComponent(Meta, {
128
+ name: "color-scheme",
129
+ content: "light"
130
+ });
131
+ }
132
+ })];
133
+ }
134
+ }), createComponent(Show, {
135
+ get when() {
136
+ return props.description;
137
+ },
138
+ get children() {
139
+ return createComponent(Meta, {
140
+ name: "description",
141
+ get content() {
142
+ return props.description;
143
+ }
144
+ });
145
+ }
146
+ }), createComponent(Meta, {
147
+ name: "generator",
148
+ content: "SolidStart"
149
+ }), createComponent(Show, {
150
+ get when() {
151
+ return props.keywords;
152
+ },
153
+ get children() {
154
+ return createComponent(Meta, {
155
+ name: "keywords",
156
+ get content() {
157
+ return props.keywords;
158
+ }
159
+ });
160
+ }
161
+ }), createComponent(Meta, {
162
+ name: "referer",
163
+ content: "strict-origin-when-cross-origin"
164
+ }), createComponent(Show, {
165
+ get when() {
166
+ return props.colorLight;
167
+ },
168
+ get children() {
169
+ return createComponent(Meta, {
170
+ name: "theme-color",
171
+ media: "(prefers-color-scheme: light)",
172
+ get content() {
173
+ return props.colorLight;
174
+ }
175
+ });
176
+ }
177
+ }), createComponent(Show, {
178
+ get when() {
179
+ return props.colorDark;
180
+ },
181
+ get children() {
182
+ return createComponent(Meta, {
183
+ name: "theme-color",
184
+ media: "(prefers-color-scheme: dark)",
185
+ get content() {
186
+ return props.colorDark;
187
+ }
188
+ });
189
+ }
190
+ }), createComponent(Meta, {
191
+ name: "viewport",
192
+ content: "width=device-width, initial-scale=1, viewport-fit=cover"
193
+ })];
194
+ const Ogp = (props) => [createComponent(Show, {
195
+ get when() {
196
+ return props.description;
197
+ },
198
+ get children() {
199
+ return createComponent(Meta, {
200
+ property: "og:description",
201
+ get content() {
202
+ return props.description;
203
+ }
204
+ });
205
+ }
206
+ }), createComponent(Index, {
207
+ get each() {
208
+ return props.images;
209
+ },
210
+ children: (image) => createComponent(Meta, {
211
+ property: "og:image",
212
+ get content() {
213
+ return image();
214
+ }
215
+ })
216
+ }), createComponent(Show, {
217
+ get when() {
218
+ return props.imageAlt;
219
+ },
220
+ get children() {
221
+ return createComponent(Meta, {
222
+ property: "og:image:alt",
223
+ get content() {
224
+ return props.imageAlt;
225
+ }
226
+ });
227
+ }
228
+ }), createComponent(Show, {
229
+ get when() {
230
+ return props.imageHeight;
231
+ },
232
+ get children() {
233
+ return createComponent(Meta, {
234
+ property: "og:image:height",
235
+ get content() {
236
+ return `${props.imageHeight}`;
237
+ }
238
+ });
239
+ }
240
+ }), createComponent(Show, {
241
+ get when() {
242
+ return props.imageType;
243
+ },
244
+ get children() {
245
+ return createComponent(Meta, {
246
+ property: "og:image:type",
247
+ get content() {
248
+ return props.imageType;
249
+ }
250
+ });
251
+ }
252
+ }), createComponent(Show, {
253
+ get when() {
254
+ return props.imageWidth;
255
+ },
256
+ get children() {
257
+ return createComponent(Meta, {
258
+ property: "og:image:width",
259
+ get content() {
260
+ return `${props.imageWidth}`;
261
+ }
262
+ });
263
+ }
264
+ }), createComponent(Show, {
265
+ get when() {
266
+ return props.language;
267
+ },
268
+ get children() {
269
+ return createComponent(Meta, {
270
+ property: "og:locale",
271
+ get content() {
272
+ return props.language;
273
+ }
274
+ });
275
+ }
276
+ }), createComponent(Show, {
277
+ get when() {
278
+ return props.siteName;
279
+ },
280
+ get children() {
281
+ return createComponent(Meta, {
282
+ property: "og:site_name",
283
+ get content() {
284
+ return props.siteName;
285
+ }
286
+ });
287
+ }
288
+ }), createComponent(Show, {
289
+ get fallback() {
290
+ return createComponent(Meta, {
291
+ property: "og:title",
292
+ get content() {
293
+ return props.siteName;
294
+ }
295
+ });
296
+ },
297
+ get when() {
298
+ return props.title;
299
+ },
300
+ get children() {
301
+ return createComponent(Meta, {
302
+ property: "og:title",
303
+ get content() {
304
+ return `${props.title} | ${props.siteName}`;
305
+ }
306
+ });
307
+ }
308
+ }), createComponent(Meta, {
309
+ property: "og:type",
310
+ content: "website"
311
+ }), createComponent(Show, {
312
+ get when() {
313
+ return props.url;
314
+ },
315
+ get children() {
316
+ return createComponent(Meta, {
317
+ property: "og:url",
318
+ get content() {
319
+ return props.url;
320
+ }
321
+ });
322
+ }
323
+ })];
324
+ const Title = (props) => createComponent(Title$1, {
325
+ get children() {
326
+ return createComponent(Show, {
327
+ get fallback() {
328
+ return props.siteName;
329
+ },
330
+ get when() {
331
+ return props.title;
332
+ },
333
+ get children() {
334
+ return [props.title, " :: ", props.siteName];
335
+ }
336
+ });
337
+ }
338
+ });
339
+ const XCard = (props) => [createComponent(Meta, {
340
+ name: "twitter:card",
341
+ content: "summary_large_image"
342
+ }), createComponent(Show, {
343
+ get when() {
344
+ return props.author;
345
+ },
346
+ get children() {
347
+ return createComponent(Meta, {
348
+ name: "twitter:creator",
349
+ get content() {
350
+ return props.author;
351
+ }
352
+ });
353
+ }
354
+ }), createComponent(Show, {
355
+ get when() {
356
+ return props.description;
357
+ },
358
+ get children() {
359
+ return createComponent(Meta, {
360
+ name: "twitter:description",
361
+ get content() {
362
+ return props.description;
363
+ }
364
+ });
365
+ }
366
+ }), createComponent(Show, {
367
+ get when() {
368
+ return props.image;
369
+ },
370
+ get children() {
371
+ return createComponent(Meta, {
372
+ name: "twitter:image",
373
+ get content() {
374
+ return props.image;
375
+ }
376
+ });
377
+ }
378
+ }), createComponent(Show, {
379
+ get when() {
380
+ return props.author;
381
+ },
382
+ get children() {
383
+ return createComponent(Meta, {
384
+ name: "twitter:author",
385
+ get content() {
386
+ return props.author;
387
+ }
388
+ });
389
+ }
390
+ }), createComponent(Show, {
391
+ get fallback() {
392
+ return createComponent(Meta, {
393
+ name: "twitter:title",
394
+ get content() {
395
+ return props.siteName;
396
+ }
397
+ });
398
+ },
399
+ get when() {
400
+ return props.title;
401
+ },
402
+ get children() {
403
+ return createComponent(Meta, {
404
+ name: "twitter:title",
405
+ get content() {
406
+ return `${props.title} | ${props.siteName}`;
407
+ }
408
+ });
409
+ }
410
+ })];
411
+ const Head = (props) => {
412
+ const [local, rest] = splitProps(props, ["images"]);
413
+ return [createComponent(Title, rest), createComponent(MetaList, rest), createComponent(Ogp, mergeProps({
414
+ get images() {
415
+ return local.images;
416
+ }
417
+ }, rest)), createComponent(Show, {
418
+ get fallback() {
419
+ return createComponent(XCard, rest);
420
+ },
421
+ get when() {
422
+ return local.images?.[0];
423
+ },
424
+ children: (images) => createComponent(XCard, mergeProps({
425
+ get image() {
426
+ return images();
427
+ }
428
+ }, rest))
429
+ }), createComponent(LinkList, rest)];
430
+ };
431
+ export {
432
+ Head,
433
+ LinkList,
434
+ MetaList,
435
+ Ogp,
436
+ Title,
437
+ XCard
438
+ };
439
+ //# sourceMappingURL=index.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.mjs","sources":["../src/components/atoms/meta/LinkList.tsx","../src/components/atoms/meta/MetaList.tsx","../src/components/atoms/meta/Ogp.tsx","../src/components/atoms/meta/Title.tsx","../src/components/atoms/meta/XCard.tsx","../src/components/molecules/Head.tsx"],"sourcesContent":["import { Link } from '@solidjs/meta';\nimport type { Component } from 'solid-js';\nimport { Index, Match, Show, Switch } from 'solid-js';\n\n/** Type definition for the properties. */\nexport interface LinkListProps {\n /** The author URL. */\n readonly authorUrl?: string | undefined;\n\n /** The mime type of the favicon. */\n readonly faviconType?: string | undefined;\n\n /** The favicon URL. */\n readonly faviconUrl?: string | undefined;\n\n /** The license URL. */\n readonly licenseUrl?: string | undefined;\n\n /** The images to preload. */\n readonly preloadImages?: readonly string[] | undefined;\n\n /** The next page URL. */\n readonly next?: string | undefined;\n\n /** The previous page URL. */\n readonly prev?: string | undefined;\n}\n\n/**\n * The link list component.\n * @param props The component properties.\n * @returns The component.\n */\nexport const LinkList: Component<LinkListProps> = (props) => (\n <>\n <Show when={props.authorUrl}>\n {(href) => <Link href={href()} rel=\"author\" />}\n </Show>\n <Switch>\n <Match when={props.faviconType && props.faviconUrl}>\n <Link href={props.faviconUrl} rel=\"icon\" type={props.faviconType} />\n </Match>\n <Match when={!props.faviconType && props.faviconUrl}>\n <Link href={props.faviconUrl} rel=\"icon\" />\n </Match>\n </Switch>\n <Show when={props.licenseUrl}>\n {(href) => <Link href={href()} hreflang=\"en\" rel=\"license\" />}\n </Show>\n <Show when={props.next}>{(href) => <Link href={href()} rel=\"next\" />}</Show>\n <Index each={props.preloadImages}>\n {(image) => <Link as=\"image\" href={image()} rel=\"preload\" />}\n </Index>\n <Show when={props.prev}>{(href) => <Link href={href()} rel=\"prev\" />}</Show>\n </>\n);\n","import { Meta } from '@solidjs/meta';\nimport type { Component } from 'solid-js';\nimport { Match, Show, Switch } from 'solid-js';\n\n/** Type definition for the properties. */\nexport interface MetaListProps {\n /** The author of the meta tag. */\n readonly author?: string | undefined;\n\n /** The color of the meta tag on the dark mode. */\n readonly colorDark?: string | undefined;\n\n /** The color of the meta tag on the light mode. */\n readonly colorLight?: string | undefined;\n\n /** The description of the meta tag. */\n readonly description?: string | undefined;\n\n /** The keywords of the meta tag. */\n readonly keywords?: string | undefined;\n}\n\n/**\n * The meta list component.\n * @param props The component properties.\n * @returns The component.\n */\nexport const MetaList: Component<MetaListProps> = (props) => (\n <>\n <Show when={props.author}>\n <Meta name=\"author\" content={props.author} />\n </Show>\n <Switch>\n <Match when={props.colorDark && props.colorLight}>\n <Meta name=\"color-scheme\" content=\"light dark\" />\n </Match>\n <Match when={props.colorDark && !props.colorLight}>\n <Meta name=\"color-scheme\" content=\"dark\" />\n </Match>\n <Match when={!props.colorDark && props.colorLight}>\n <Meta name=\"color-scheme\" content=\"light\" />\n </Match>\n </Switch>\n <Show when={props.description}>\n <Meta name=\"description\" content={props.description} />\n </Show>\n <Meta name=\"generator\" content=\"SolidStart\" />\n <Show when={props.keywords}>\n <Meta name=\"keywords\" content={props.keywords} />\n </Show>\n <Meta name=\"referer\" content=\"strict-origin-when-cross-origin\" />\n <Show when={props.colorLight}>\n <Meta\n name=\"theme-color\"\n media=\"(prefers-color-scheme: light)\"\n content={props.colorLight}\n />\n </Show>\n <Show when={props.colorDark}>\n <Meta\n name=\"theme-color\"\n media=\"(prefers-color-scheme: dark)\"\n content={props.colorDark}\n />\n </Show>\n <Meta\n name=\"viewport\"\n content=\"width=device-width, initial-scale=1, viewport-fit=cover\"\n />\n </>\n);\n","import { Meta } from '@solidjs/meta';\nimport type { Component } from 'solid-js';\nimport { Index, Show } from 'solid-js';\n\n/** Type definition for the properties. */\nexport interface OgpProps {\n /** The description of the page. */\n readonly description?: string | undefined;\n\n /** The alt text of the images. */\n readonly imageAlt?: string | undefined;\n\n /** The height of the images. */\n readonly imageHeight?: number | string | undefined;\n\n /** The mime type of the images. */\n readonly imageType?: string | undefined;\n\n /** The width of the images. */\n readonly imageWidth?: number | string | undefined;\n\n /** The image URLs of the page. */\n readonly images?: readonly string[] | undefined;\n\n /** The language of the page. */\n readonly language?: string | undefined;\n\n /** The site name. */\n readonly siteName: string;\n\n /** The title of the page. */\n readonly title?: string | undefined;\n\n /** The URL of the page. */\n readonly url?: string | undefined;\n}\n\n/**\n * The OGP component.\n * @param props The component properties.\n * @returns The component.\n */\nexport const Ogp: Component<OgpProps> = (props) => (\n <>\n <Show when={props.description}>\n <Meta property=\"og:description\" content={props.description} />\n </Show>\n <Index each={props.images}>\n {(image) => <Meta property=\"og:image\" content={image()} />}\n </Index>\n <Show when={props.imageAlt}>\n <Meta property=\"og:image:alt\" content={props.imageAlt} />\n </Show>\n <Show when={props.imageHeight}>\n <Meta property=\"og:image:height\" content={`${props.imageHeight}`} />\n </Show>\n <Show when={props.imageType}>\n <Meta property=\"og:image:type\" content={props.imageType} />\n </Show>\n <Show when={props.imageWidth}>\n <Meta property=\"og:image:width\" content={`${props.imageWidth}`} />\n </Show>\n <Show when={props.language}>\n <Meta property=\"og:locale\" content={props.language} />\n </Show>\n <Show when={props.siteName}>\n <Meta property=\"og:site_name\" content={props.siteName} />\n </Show>\n <Show\n fallback={<Meta property=\"og:title\" content={props.siteName} />}\n when={props.title}\n >\n <Meta\n property=\"og:title\"\n content={`${props.title} | ${props.siteName}`}\n />\n </Show>\n <Meta property=\"og:type\" content=\"website\" />\n <Show when={props.url}>\n <Meta property=\"og:url\" content={props.url} />\n </Show>\n </>\n);\n","import { Title as SolidTitle } from '@solidjs/meta';\nimport type { Component } from 'solid-js';\nimport { Show } from 'solid-js';\n\n/** Type definition for the properties. */\nexport interface TitleProps {\n /** The site name. */\n readonly siteName: string;\n\n /** The title of the page. */\n readonly title?: string | undefined;\n}\n\n/**\n * The title component.\n * @param props The component properties.\n * @returns The component.\n */\nexport const Title: Component<TitleProps> = (props) => (\n <SolidTitle>\n <Show fallback={props.siteName} when={props.title}>\n {props.title} :: {props.siteName}\n </Show>\n </SolidTitle>\n);\n","import { Meta } from '@solidjs/meta';\nimport type { Component } from 'solid-js';\nimport { Show } from 'solid-js';\n\n/** Type definition for the properties. */\nexport interface XCardProps {\n /** The author of the meta tag. */\n readonly author?: string | undefined;\n\n /** The card description. */\n readonly description?: string | undefined;\n\n /** The card image URL. */\n readonly image?: string | undefined;\n\n /** The site name. */\n readonly siteName: string;\n\n /** The title of the page. */\n readonly title?: string | undefined;\n}\n\n/**\n * The X card component.\n * @param props The component properties.\n * @returns The component.\n */\nexport const XCard: Component<XCardProps> = (props) => (\n <>\n <Meta name=\"twitter:card\" content=\"summary_large_image\" />\n <Show when={props.author}>\n <Meta name=\"twitter:creator\" content={props.author} />\n </Show>\n <Show when={props.description}>\n <Meta name=\"twitter:description\" content={props.description} />\n </Show>\n <Show when={props.image}>\n <Meta name=\"twitter:image\" content={props.image} />\n </Show>\n <Show when={props.author}>\n <Meta name=\"twitter:author\" content={props.author} />\n </Show>\n <Show\n fallback={<Meta name=\"twitter:title\" content={props.siteName} />}\n when={props.title}\n >\n <Meta\n name=\"twitter:title\"\n content={`${props.title} | ${props.siteName}`}\n />\n </Show>\n </>\n);\n","import type { Component } from 'solid-js';\nimport { Show, splitProps } from 'solid-js';\nimport type { Except } from 'type-fest';\nimport type { LinkListProps } from '../atoms/meta/LinkList.js';\nimport { LinkList } from '../atoms/meta/LinkList.js';\nimport type { MetaListProps } from '../atoms/meta/MetaList.js';\nimport { MetaList } from '../atoms/meta/MetaList.js';\nimport type { OgpProps } from '../atoms/meta/Ogp.js';\nimport { Ogp } from '../atoms/meta/Ogp.js';\nimport type { TitleProps } from '../atoms/meta/Title.js';\nimport { Title } from '../atoms/meta/Title.js';\nimport type { XCardProps } from '../atoms/meta/XCard.js';\nimport { XCard } from '../atoms/meta/XCard.js';\n\n/** Type definition for the properties. */\nexport interface HeadProps\n extends LinkListProps,\n MetaListProps,\n OgpProps,\n TitleProps,\n Except<XCardProps, 'image'> {}\n\n/**\n * The head metadata component.\n * @param props The properties.\n * @returns The component.\n */\nexport const Head: Component<HeadProps> = (props) => {\n const [local, rest] = splitProps(props, ['images']);\n return (\n <>\n <Title {...rest} />\n <MetaList {...rest} />\n <Ogp images={local.images} {...rest} />\n <Show fallback={<XCard {...rest} />} when={local.images?.[0]}>\n {(images) => <XCard image={images()} {...rest} />}\n </Show>\n <LinkList {...rest} />\n </>\n );\n};\n"],"names":["LinkList","props","_$createComponent","Show","when","authorUrl","children","href","Link","rel","Switch","Match","faviconType","faviconUrl","type","licenseUrl","hreflang","next","Index","each","preloadImages","image","as","prev","MetaList","author","Meta","name","content","colorDark","colorLight","description","keywords","media","Ogp","property","images","imageAlt","imageHeight","imageType","imageWidth","language","siteName","fallback","title","url","Title","SolidTitle","XCard","Head","local","rest","splitProps","_$mergeProps"],"mappings":"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"}
package/package.json ADDED
@@ -0,0 +1,69 @@
1
+ {
2
+ "name": "@kurone-kito/web-toybox-solid",
3
+ "version": "0.1.0-alpha.1",
4
+ "description": "Common functions and component library for Solid.js web applications",
5
+ "keywords": [
6
+ "components",
7
+ "library",
8
+ "solid-js",
9
+ "web-toybox"
10
+ ],
11
+ "homepage": "https://github.com/kurone-kito/web-toybox#readme",
12
+ "bugs": "https://github.com/kurone-kito/web-toybox/issues",
13
+ "repository": {
14
+ "type": "git",
15
+ "url": "https://github.com/kurone-kito/web-toybox.git",
16
+ "directory": "packages/lib-solid"
17
+ },
18
+ "license": "MIT",
19
+ "author": "kurone-kito <krone@kit.black> (https://kit.black/)",
20
+ "type": "module",
21
+ "exports": "./dist/index.mjs",
22
+ "types": "./dist/index.d.mts",
23
+ "files": [
24
+ "dist"
25
+ ],
26
+ "dependencies": {
27
+ "type-fest": "^4.41.0",
28
+ "@kurone-kito/web-toybox": "^0.1.0-alpha.1"
29
+ },
30
+ "devDependencies": {
31
+ "@kurone-kito/typescript-config": "^0.20.0",
32
+ "@kurone-kito/vite-lib-config": "^0.20.0",
33
+ "@solidjs/meta": "^0.29.4",
34
+ "@solidjs/testing-library": "^0.8.10",
35
+ "@testing-library/jest-dom": "^6.6.3",
36
+ "@vitest/coverage-v8": "^3.2.4",
37
+ "cpy-cli": "^5.0.0",
38
+ "jsdom": "^26.1.0",
39
+ "rimraf": "^6.0.1",
40
+ "solid-js": "^1.9.7",
41
+ "typedoc": "^0.28.7",
42
+ "typedoc-plugin-markdown": "^4.7.0",
43
+ "typescript": "~5.8.3",
44
+ "vite": "^7.0.5",
45
+ "vite-plugin-solid": "^2.11.7",
46
+ "vitest": "^3.2.4"
47
+ },
48
+ "peerDependencies": {
49
+ "@solidjs/meta": ">=0.29.x",
50
+ "solid-js": ">=1.9.x"
51
+ },
52
+ "engines": {
53
+ "node": "^20.11 || ^22 || >=24"
54
+ },
55
+ "publishConfig": {
56
+ "access": "public"
57
+ },
58
+ "scripts": {
59
+ "build": "pnpm run \"/^build:.+/\"",
60
+ "build:doc": "rimraf -g docs && typedoc",
61
+ "build:vite": "vite build",
62
+ "clean": "rimraf -g \"*.tgz\" \"*.tsbuildinfo\" coverage dist LICENSE node_modules/.cache",
63
+ "dev": "vite build --watch",
64
+ "prebuild": "cpy --flat ../../LICENSE .",
65
+ "test": "pnpm run \"/test:.+/\"",
66
+ "test:ts": "tsc -p tsconfig.test.json --noEmit",
67
+ "test:vitest": "vitest run --coverage"
68
+ }
69
+ }