From 8b1657ef0c95d39339d02f5fbf905dd79c21eac0 Mon Sep 17 00:00:00 2001 From: Luke Else Date: Sun, 29 Jun 2025 13:24:07 +0100 Subject: [PATCH] Uploaded base set of components --- .gitea/workflows/release.yml | 30 +++++++++++ package.json | 4 +- src/lib/components/Card.svelte | 23 +++++++++ src/lib/components/Collapsible.svelte | 33 ++++++++++++ src/lib/components/GridGallery.svelte | 7 +++ src/lib/components/Loading.svelte | 73 +++++++++++++++++++++++++++ src/lib/components/Section.svelte | 26 ++++++++++ src/lib/components/Timeline.svelte | 29 +++++++++++ src/lib/index.ts | 6 +++ 9 files changed, 230 insertions(+), 1 deletion(-) create mode 100644 .gitea/workflows/release.yml create mode 100644 src/lib/components/Card.svelte create mode 100644 src/lib/components/Collapsible.svelte create mode 100644 src/lib/components/GridGallery.svelte create mode 100644 src/lib/components/Loading.svelte create mode 100644 src/lib/components/Section.svelte create mode 100644 src/lib/components/Timeline.svelte diff --git a/.gitea/workflows/release.yml b/.gitea/workflows/release.yml new file mode 100644 index 0000000..f8cfe63 --- /dev/null +++ b/.gitea/workflows/release.yml @@ -0,0 +1,30 @@ +name: Publish to Gitea Packages + +on: + push: + tags: + - 'v*' + +jobs: + publish: + runs-on: ubuntu-latest + steps: + - name: Checkout repo + uses: actions/checkout@v3 + + - name: Setup Node.js + uses: actions/setup-node@v3 + with: + node-version: '20' + registry-url: https://git.luke-else.co.uk/api/packages/luke-else/npm/ + + - name: Install dependencies + run: npm ci + + - name: Run build + run: npm run build + + - name: Publish to Gitea Registry + run: npm publish + env: + NODE_AUTH_TOKEN: ${{ secrets.CONTAINER_REGISTRY_PASSKEY }} \ No newline at end of file diff --git a/package.json b/package.json index c67ee8f..fc44c19 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,7 @@ { "name": "svelte-component-toolkit", "version": "0.0.1", + "description": "A collection of reusable Svelte components for rapid modern development.", "scripts": { "dev": "vite dev", "build": "vite build && npm run prepack", @@ -63,5 +64,6 @@ "onlyBuiltDependencies": [ "esbuild" ] - } + }, + "license": "MIT" } diff --git a/src/lib/components/Card.svelte b/src/lib/components/Card.svelte new file mode 100644 index 0000000..7cfe334 --- /dev/null +++ b/src/lib/components/Card.svelte @@ -0,0 +1,23 @@ + + +
+
+
+ + +
+
+
+ +
+ +
+
+ + +
+
+
diff --git a/src/lib/components/Collapsible.svelte b/src/lib/components/Collapsible.svelte new file mode 100644 index 0000000..b45e247 --- /dev/null +++ b/src/lib/components/Collapsible.svelte @@ -0,0 +1,33 @@ + + +
+ +
+
+ +
+
+
\ No newline at end of file diff --git a/src/lib/components/GridGallery.svelte b/src/lib/components/GridGallery.svelte new file mode 100644 index 0000000..801ff62 --- /dev/null +++ b/src/lib/components/GridGallery.svelte @@ -0,0 +1,7 @@ + + + +
+ +
\ No newline at end of file diff --git a/src/lib/components/Loading.svelte b/src/lib/components/Loading.svelte new file mode 100644 index 0000000..4ccf026 --- /dev/null +++ b/src/lib/components/Loading.svelte @@ -0,0 +1,73 @@ + + +
+
+
+
+
\ No newline at end of file diff --git a/src/lib/components/Section.svelte b/src/lib/components/Section.svelte new file mode 100644 index 0000000..2789f22 --- /dev/null +++ b/src/lib/components/Section.svelte @@ -0,0 +1,26 @@ + + +
+ + + +
+ +
+ {label} +
+
+
+ +
+
+
\ No newline at end of file diff --git a/src/lib/components/Timeline.svelte b/src/lib/components/Timeline.svelte new file mode 100644 index 0000000..ab0ee3b --- /dev/null +++ b/src/lib/components/Timeline.svelte @@ -0,0 +1,29 @@ + + +
+
+ {#each timelineData as entry, i} +
+ {#if i == 0} +
+ {:else} +
+ {/if} +

{entry.duration}

+ + + {entry.title} + {@html entry.description} + +
+ {/each} +
+
\ No newline at end of file diff --git a/src/lib/index.ts b/src/lib/index.ts index 47d3c46..87b4962 100644 --- a/src/lib/index.ts +++ b/src/lib/index.ts @@ -1 +1,7 @@ // Reexport your entry components here +export { default as Card } from './components/Card.svelte'; +export { default as Collapsible } from './components/Collapsible.svelte'; +export { default as GridGallery } from './components/GridGallery.svelte'; +export { default as Loading } from './components/Loading.svelte'; +export { default as Section } from './components/Section.svelte'; +export { default as Timeline } from './components/Timeline.svelte'; \ No newline at end of file