diff --git a/frontend/src/@dasig/api/functions/getApi.ts b/frontend/@dasig/api/functions/getApi.ts
similarity index 100%
rename from frontend/src/@dasig/api/functions/getApi.ts
rename to frontend/@dasig/api/functions/getApi.ts
diff --git a/frontend/src/@dasig/api/functions/postApi.ts b/frontend/@dasig/api/functions/postApi.ts
similarity index 100%
rename from frontend/src/@dasig/api/functions/postApi.ts
rename to frontend/@dasig/api/functions/postApi.ts
diff --git a/frontend/src/@dasig/api/index.ts b/frontend/@dasig/api/index.ts
similarity index 100%
rename from frontend/src/@dasig/api/index.ts
rename to frontend/@dasig/api/index.ts
diff --git a/frontend/src/@dasig/components/Background.tsx b/frontend/@dasig/components/Background.tsx
similarity index 100%
rename from frontend/src/@dasig/components/Background.tsx
rename to frontend/@dasig/components/Background.tsx
diff --git a/frontend/@dasig/components/Box.tsx b/frontend/@dasig/components/Box.tsx
new file mode 100644
index 0000000..c48cebc
--- /dev/null
+++ b/frontend/@dasig/components/Box.tsx
@@ -0,0 +1,22 @@
+import { createMemo, type JSXElement } from "solid-js";
+import "../styles/Box.sass";
+
+interface Props {
+ thickness: number;
+ color?: string;
+ children: JSXElement;
+ curved?: boolean;
+}
+
+export default (props: Props) => {
+ const boxClass = createMemo(() => (props.curved ? "curvedbox" : "box"));
+
+ return (
+
+ );
+};
diff --git a/frontend/@dasig/components/Button.tsx b/frontend/@dasig/components/Button.tsx
new file mode 100644
index 0000000..22bfd24
--- /dev/null
+++ b/frontend/@dasig/components/Button.tsx
@@ -0,0 +1,124 @@
+import { Match, Show, Switch } from "solid-js";
+import "../styles/Button.sass";
+
+interface Props {
+ label?: string;
+ to?: string;
+ onClick?: () => void;
+ edges?: "curved" | "rounded" | "flat";
+ design?:
+ | "bu-primary"
+ | "bu-link"
+ | "bu-info"
+ | "bu-success"
+ | "bu-warning"
+ | "bu-danger"
+ | "bu-dark"
+ | "bu-light"
+ | "bu-text"
+ | "bu-ghost"
+ | "bo-primary"
+ | "bo-secondary"
+ | "bo-success"
+ | "bo-danger"
+ | "bo-warning"
+ | "bo-info"
+ | "bo-light"
+ | "bo-dark"
+ | "bo-link";
+ submit?: boolean;
+ newtab?: boolean;
+}
+
+const getBorderRadius = (edge: Props["edges"]) => {
+ switch (edge) {
+ case "curved":
+ return "border-radius: 6px";
+ case "rounded":
+ return "border-radius: 32px";
+ case "flat":
+ return "border-radius: 0";
+ default:
+ return "border-radius: 0";
+ }
+};
+
+export default (props: Props) => {
+ const borderRadius = getBorderRadius(props.edges);
+
+ return (
+ <>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ >
+ );
+};
diff --git a/frontend/src/@dasig/components/Column.tsx b/frontend/@dasig/components/Column.tsx
similarity index 80%
rename from frontend/src/@dasig/components/Column.tsx
rename to frontend/@dasig/components/Column.tsx
index e683a7c..9126208 100644
--- a/frontend/src/@dasig/components/Column.tsx
+++ b/frontend/@dasig/components/Column.tsx
@@ -1,5 +1,5 @@
-import '../styles/Column.sass'
-import type { JSXElement } from 'solid-js'
+import type { JSXElement } from 'solid-js';
+import '../styles/Column.sass';
interface Props {
children: JSXElement
diff --git a/frontend/src/@dasig/components/Copyright.tsx b/frontend/@dasig/components/Copyright.tsx
similarity index 68%
rename from frontend/src/@dasig/components/Copyright.tsx
rename to frontend/@dasig/components/Copyright.tsx
index 7ecb7d6..f221fc2 100644
--- a/frontend/src/@dasig/components/Copyright.tsx
+++ b/frontend/@dasig/components/Copyright.tsx
@@ -1,4 +1,4 @@
-import { $companyName, $copyRightYear } from "../../../configs/config.site"
+import { $companyName, $copyRightYear } from "../../configs/config.site.ts";
export default () => {
return (
diff --git a/frontend/src/@dasig/components/Display.tsx b/frontend/@dasig/components/Display.tsx
similarity index 92%
rename from frontend/src/@dasig/components/Display.tsx
rename to frontend/@dasig/components/Display.tsx
index 704405e..6bb68f3 100644
--- a/frontend/src/@dasig/components/Display.tsx
+++ b/frontend/@dasig/components/Display.tsx
@@ -1,5 +1,5 @@
-import { type JSXElement, Match, Switch } from 'solid-js'
-import '../styles/Display.sass'
+import { type JSXElement, Match, Switch } from 'solid-js';
+import '../styles/Display.sass';
interface Props {
children: JSXElement
diff --git a/frontend/src/@dasig/components/HTML.tsx b/frontend/@dasig/components/HTML.tsx
similarity index 51%
rename from frontend/src/@dasig/components/HTML.tsx
rename to frontend/@dasig/components/HTML.tsx
index 7e5906c..d3ca69c 100644
--- a/frontend/src/@dasig/components/HTML.tsx
+++ b/frontend/@dasig/components/HTML.tsx
@@ -1,18 +1,24 @@
-import '../styles/HTML.sass'
-import { type JSXElement, Show } from 'solid-js'
-import background1 from '../images/background.avif'
-import background2 from '../images/background.webp'
-import { $fontSource } from '../../../configs/config.site'
+import { type JSXElement, Show } from "solid-js";
+import { $fontSource } from "../../configs/config.site.ts";
+import background1 from "../images/background.avif";
+import background2 from "../images/background.webp";
+import "../styles/HTML.sass";
interface Props {
- name: string
- description: string
- children: JSXElement
- font?: 'roboto' | 'inter' | 'montserrat' | 'open-sans' | 'public-sans' | string
- preloadBackground?: boolean
- author: string
- assets: JSXElement
- scripts: JSXElement
+ name: string;
+ description: string;
+ children: JSXElement;
+ font?:
+ | "roboto"
+ | "inter"
+ | "montserrat"
+ | "open-sans"
+ | "public-sans"
+ | string;
+ preloadBackground?: boolean;
+ author: string;
+ assets: JSXElement;
+ scripts: JSXElement;
}
export default (props: Props) => {
@@ -22,7 +28,10 @@ export default (props: Props) => {
-
+
@@ -31,12 +40,22 @@ export default (props: Props) => {
-
+
-
-
+
+
{props.assets}
@@ -49,5 +68,5 @@ export default (props: Props) => {