tecitheme 0.3.4 → 0.4.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.
- package/README.md +0 -1
- package/dist/components/CountrySelector.svelte +2 -2
- package/dist/index.d.ts +31 -0
- package/dist/index.js +31 -0
- package/dist/utils.d.ts +1 -1
- package/dist/utils.js +2 -1
- package/dist/variables.d.ts +3 -3
- package/dist/variables.js +3 -1
- package/package.json +28 -27
- package/.eslintrc.cjs +0 -24
- package/.frontmatter/content/mediaDb.json +0 -1
- package/.frontmatter/templates/article.md +0 -11
- package/.gitpod.yml +0 -19
- package/.vscode/ltex.dictionary.en-US.txt +0 -3
- package/.vscode/settings.json +0 -7
- package/frontmatter.json +0 -17
- package/mdsvex.config.js +0 -19
- package/netlify.toml +0 -7
- package/postcss.config.cjs +0 -13
- package/src/app.css +0 -49
- package/src/app.html +0 -22
- package/src/global.d.ts +0 -5
- package/src/lib/assets/TECi_logo.svelte +0 -177
- package/src/lib/assets/js/store.js +0 -4
- package/src/lib/components/Banner.svelte +0 -91
- package/src/lib/components/Button.svelte +0 -12
- package/src/lib/components/CTA.svelte +0 -36
- package/src/lib/components/CTABranded.svelte +0 -15
- package/src/lib/components/CTASplitImage.svelte +0 -27
- package/src/lib/components/Card.svelte +0 -93
- package/src/lib/components/ContentTwoColumns.svelte +0 -47
- package/src/lib/components/CountrySelector.svelte +0 -167
- package/src/lib/components/FeatureGrid.svelte +0 -40
- package/src/lib/components/Figure.svelte +0 -37
- package/src/lib/components/Footer.svelte +0 -270
- package/src/lib/components/Header.svelte +0 -1230
- package/src/lib/components/HeadingCentered.svelte +0 -33
- package/src/lib/components/Hero.svelte +0 -72
- package/src/lib/components/Icon.svelte +0 -138
- package/src/lib/components/LogoCloud.svelte +0 -25
- package/src/lib/components/Math.svelte +0 -24
- package/src/lib/components/MediaFeature.svelte +0 -66
- package/src/lib/components/Modal.svelte +0 -68
- package/src/lib/components/NewsGrid.svelte +0 -182
- package/src/lib/components/PricingTable.svelte +0 -92
- package/src/lib/components/SidebarContent.svelte +0 -122
- package/src/lib/components/Stats.svelte +0 -34
- package/src/lib/components/Subscribe.svelte +0 -24
- package/src/lib/components/Testimonial.svelte +0 -169
- package/src/lib/components/ThreeColumn.svelte +0 -19
- package/src/lib/components/TrialForm.svelte +0 -302
- package/src/lib/components/Video.svelte +0 -118
- package/src/lib/components/Wrap.svelte +0 -12
- package/src/lib/get-content.js +0 -98
- package/src/lib/layouts/blocks.svelte +0 -93
- package/src/lib/req_utils.js +0 -63
- package/src/lib/site_config.json +0 -11
- package/src/lib/utils.js +0 -92
- package/src/lib/variables.ts +0 -3
- package/src/routes/+layout.server.js +0 -20
- package/src/routes/+layout.svelte +0 -24
- package/src/routes/+page.md +0 -61
- package/src/routes/features/+page.md +0 -78
- package/src/routes/news/+page.md +0 -21
- package/src/routes/news/[slug]/+page.svelte +0 -33
- package/src/routes/news/[slug]/+page.ts +0 -16
- package/src/routes/news/filter/[tag]/+page.svelte +0 -36
- package/src/routes/news/filter/[tag]/+page.ts +0 -14
- package/src/routes/news/post1.md +0 -45
- package/src/routes/news/post2.md +0 -46
- package/src/routes/pathfinder/+page.md +0 -240
- package/src/routes/pathfinder/news/+page.md +0 -20
- package/src/routes/posts.json/+server.js +0 -9
- package/src/routes/product/+page.md +0 -240
- package/src/routes/product/news/+page.md +0 -20
- package/src/routes/product/trial/+page.svelte +0 -7
- package/src/routes/sidebar/+page.md +0 -357
- package/static/favicon.ico +0 -0
- package/static/uploads/company_pathfinder.png +0 -0
- package/static/uploads/company_petrasim.png +0 -0
- package/static/uploads/company_pyrosim.jpg +0 -0
- package/static/uploads/fire.jpg +0 -0
- package/static/uploads/pyrosim_libraries_386x395.png +0 -0
- package/static/uploads/rocks.jpg +0 -0
- package/static/uploads/water.jpg +0 -0
- package/svelte.config.js +0 -32
- package/tailwind.config.cjs +0 -26
- package/tsconfig.json +0 -32
- package/vite.config.js +0 -20
package/src/lib/site_config.json
DELETED
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"showBanner": false,
|
|
3
|
-
"bannerData": {
|
|
4
|
-
"showCTA": true,
|
|
5
|
-
"shortText": "Short text in a few words to show how it works.",
|
|
6
|
-
"longText": "Long test text that goes on and on for a while with some information about something that people should know about.",
|
|
7
|
-
"ctaText": "Take Action",
|
|
8
|
-
"ctaLink": "https://www.thunderheadeng.com",
|
|
9
|
-
"allowClose": false
|
|
10
|
-
}
|
|
11
|
-
}
|
package/src/lib/utils.js
DELETED
|
@@ -1,92 +0,0 @@
|
|
|
1
|
-
export function scrollTo(anchor) {
|
|
2
|
-
document.querySelector("#" + anchor).scrollIntoView({
|
|
3
|
-
behavior: "smooth",
|
|
4
|
-
});
|
|
5
|
-
}
|
|
6
|
-
|
|
7
|
-
export function validateEmail(email) {
|
|
8
|
-
const re =
|
|
9
|
-
/^(([^<>()[\]\\.,;:\s@"]+(\.[^<>()[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/;
|
|
10
|
-
return re.test(String(email).toLowerCase());
|
|
11
|
-
}
|
|
12
|
-
|
|
13
|
-
export const slugFromPath = (path) =>
|
|
14
|
-
path.match(/([\w-]+)\.(svelte\.md|md|svx)/i)?.[1] ?? null;
|
|
15
|
-
|
|
16
|
-
export function buildToC() {
|
|
17
|
-
// Based on https://projectcodeed.blogspot.com/2020/04/an-automatic-table-of-contents.html
|
|
18
|
-
|
|
19
|
-
// Get ToC div
|
|
20
|
-
let toc = document.getElementById("ToC");
|
|
21
|
-
|
|
22
|
-
//Add a header
|
|
23
|
-
var tocHeader = document.createElement("a");
|
|
24
|
-
tocHeader.classList.add(
|
|
25
|
-
"mb-2",
|
|
26
|
-
"inline-block",
|
|
27
|
-
"w-auto",
|
|
28
|
-
"text-center",
|
|
29
|
-
"bg-gray-50",
|
|
30
|
-
"hover:bg-gray-100",
|
|
31
|
-
"py-1",
|
|
32
|
-
"px-2",
|
|
33
|
-
"border"
|
|
34
|
-
);
|
|
35
|
-
tocHeader.innerHTML =
|
|
36
|
-
"<span class='material-icons-outlined text-sm font-bold text-gray-500 align-text-bottom'>vertical_align_top</span>";
|
|
37
|
-
tocHeader.setAttribute("href", "#top");
|
|
38
|
-
tocHeader.setAttribute("title", "To Top of Page");
|
|
39
|
-
toc.appendChild(tocHeader);
|
|
40
|
-
|
|
41
|
-
// Create a list for the ToC entries
|
|
42
|
-
let tocList = document.createElement("ul");
|
|
43
|
-
|
|
44
|
-
// Find the primary content section
|
|
45
|
-
let content = document.getElementById("content");
|
|
46
|
-
|
|
47
|
-
// Get the h2 tags - ToC entries
|
|
48
|
-
let headers = content.getElementsByTagName("h2");
|
|
49
|
-
|
|
50
|
-
if (headers.length == 0) {
|
|
51
|
-
console.log("There are not any H2 elements in the document.");
|
|
52
|
-
} else {
|
|
53
|
-
// For each h2
|
|
54
|
-
for (let i = 0; i < headers.length; i++) {
|
|
55
|
-
// Get Heading ID
|
|
56
|
-
let name = headers[i].id;
|
|
57
|
-
|
|
58
|
-
// list item for the entry
|
|
59
|
-
let tocListItem = document.createElement("li");
|
|
60
|
-
tocListItem.classList.add(
|
|
61
|
-
"text-teci-blue-light",
|
|
62
|
-
"hover:text-teci-blue-dark",
|
|
63
|
-
"text-sm",
|
|
64
|
-
"truncate"
|
|
65
|
-
);
|
|
66
|
-
|
|
67
|
-
// link for the h2
|
|
68
|
-
let tocEntry = document.createElement("a");
|
|
69
|
-
tocEntry.setAttribute("href", "#" + name);
|
|
70
|
-
tocEntry.innerText = headers[i].innerText;
|
|
71
|
-
|
|
72
|
-
// add link to list item list
|
|
73
|
-
tocListItem.appendChild(tocEntry);
|
|
74
|
-
|
|
75
|
-
// add list item to list
|
|
76
|
-
tocList.appendChild(tocListItem);
|
|
77
|
-
}
|
|
78
|
-
|
|
79
|
-
// add list to toc element
|
|
80
|
-
toc.appendChild(tocList);
|
|
81
|
-
|
|
82
|
-
//Add a footer
|
|
83
|
-
//var tocFooter = document.createElement("a");
|
|
84
|
-
//tocFooter.classList.add("mt-2", "inline-block", "w-auto", "text-center", "bg-gray-50", "hover:bg-gray-100", "py-1", "px-2", "border")
|
|
85
|
-
//tocFooter.innerHTML="<span class='material-icons-outlined text-sm font-bold text-gray-500 align-text-bottom'>vertical_align_bottom</span>";
|
|
86
|
-
//tocFooter.setAttribute("href","#bottom");
|
|
87
|
-
//tocFooter.setAttribute("title","To Bottom of Page");
|
|
88
|
-
//toc.appendChild(tocFooter);
|
|
89
|
-
|
|
90
|
-
return true;
|
|
91
|
-
}
|
|
92
|
-
}
|
package/src/lib/variables.ts
DELETED
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
import { error } from '@sveltejs/kit'
|
|
2
|
-
import configFile from '$lib/site_config.json'
|
|
3
|
-
|
|
4
|
-
export const prerender = true;
|
|
5
|
-
|
|
6
|
-
export const load = async ({ url, fetch }) => {
|
|
7
|
-
try {
|
|
8
|
-
const posts = "/posts.json";
|
|
9
|
-
const resPosts = await fetch(posts);
|
|
10
|
-
return {
|
|
11
|
-
config: configFile,
|
|
12
|
-
newsPosts: await resPosts.json(),
|
|
13
|
-
currentURL: url.href,
|
|
14
|
-
currentHost: url.hostname,
|
|
15
|
-
}
|
|
16
|
-
}
|
|
17
|
-
catch(err) {
|
|
18
|
-
throw error(500, err)
|
|
19
|
-
}
|
|
20
|
-
}
|
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
<script>
|
|
2
|
-
import "../app.css";
|
|
3
|
-
|
|
4
|
-
/** @type {import('./$types').PageData} */
|
|
5
|
-
export let data;
|
|
6
|
-
|
|
7
|
-
import Header from "$lib/components/Header.svelte";
|
|
8
|
-
import Footer from "$lib/components/Footer.svelte";
|
|
9
|
-
import Banner from "$lib/components/Banner.svelte";
|
|
10
|
-
</script>
|
|
11
|
-
|
|
12
|
-
<Header />
|
|
13
|
-
|
|
14
|
-
{#if data.config.showBanner}
|
|
15
|
-
<Banner {...data.config.bannerData} />
|
|
16
|
-
{/if}
|
|
17
|
-
|
|
18
|
-
<main
|
|
19
|
-
class="relative my-0 mx-auto box-border flex w-full max-w-7xl flex-grow flex-col py-12 px-4 sm:px-6 lg:px-8"
|
|
20
|
-
>
|
|
21
|
-
<slot />
|
|
22
|
-
</main>
|
|
23
|
-
|
|
24
|
-
<Footer />
|
package/src/routes/+page.md
DELETED
|
@@ -1,61 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
title: Home of ThunderTheme
|
|
3
|
-
summary: Design System for Thunderhead Engineering.
|
|
4
|
-
lastmod: 2022-05-31T22:44:15.366Z
|
|
5
|
-
date: 2022-03-20T18:50:14.618Z
|
|
6
|
-
page_sections:
|
|
7
|
-
- name: Section Heading
|
|
8
|
-
fieldGroup: heading-centered
|
|
9
|
-
toptext: Home of
|
|
10
|
-
title: ThunderTheme
|
|
11
|
-
subtitle: The Thunderhead Design System
|
|
12
|
-
- name: Main Content
|
|
13
|
-
fieldGroup: sidebar-content
|
|
14
|
-
fullWidth: true
|
|
15
|
-
rightRail: false
|
|
16
|
-
toc: false
|
|
17
|
-
hideTitle: true
|
|
18
|
-
- name: Modal Test
|
|
19
|
-
fieldGroup: modal
|
|
20
|
-
title: Modal Dialog
|
|
21
|
-
text: You can pop up a modal dialog with the Modal component.
|
|
22
|
-
buttonText: Click Me!
|
|
23
|
-
modalContent: <h2 class="text-lg leading-6 font-medium text-gray-900">Sweet
|
|
24
|
-
Modal!</h2> <div class="mt-2 px-7 py-3"> <p class="text-sm
|
|
25
|
-
text-gray-500">This is a demo of the Modal Dialog.</p></div>
|
|
26
|
-
- name: News Grid
|
|
27
|
-
fieldGroup: news-grid
|
|
28
|
-
title: All the News
|
|
29
|
-
subtitle: You should know.
|
|
30
|
-
pageSize: 1
|
|
31
|
-
layout: blocks
|
|
32
|
-
---
|
|
33
|
-
|
|
34
|
-
## Demo Homepage
|
|
35
|
-
|
|
36
|
-
This is a demo of some components in a Markdown page.
|
|
37
|
-
Where we have enough text to expand the text to full prose width when `fullWidth` is not true.
|
|
38
|
-
|
|
39
|
-
## Links
|
|
40
|
-
|
|
41
|
-
- [Product](/product)
|
|
42
|
-
- [Pathfinder](/pathfinder)
|
|
43
|
-
- [Features](/features)
|
|
44
|
-
- [Sidebar](/sidebar)
|
|
45
|
-
- [News Index](/news)
|
|
46
|
-
- [Post 1](/news/post1)
|
|
47
|
-
- [Post 2](/news/post2)
|
|
48
|
-
- [posts.json](/posts.json)
|
|
49
|
-
|
|
50
|
-
## Image for Visual Interest
|
|
51
|
-
|
|
52
|
-
<Figure
|
|
53
|
-
title="Monochrome Red Frog"
|
|
54
|
-
caption="Monochrome Red Frog (http test image)"
|
|
55
|
-
image="https://static-b.imgix.net/treefrog.jpg?monochrome=990000&fit=crop&w=620&h=465"
|
|
56
|
-
/>
|
|
57
|
-
|
|
58
|
-
<Video
|
|
59
|
-
v="page-path-background-2.mp4"
|
|
60
|
-
thumbnail="bank-phrom-Tzm3Oyu_6sk-unsplash.jpg"
|
|
61
|
-
/>
|
|
@@ -1,78 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
title: Product Features
|
|
3
|
-
summary: Overview of all product features.
|
|
4
|
-
images: rocks.jpg
|
|
5
|
-
layout: blocks
|
|
6
|
-
page_sections:
|
|
7
|
-
- name: Section Heading
|
|
8
|
-
fieldGroup: heading-centered
|
|
9
|
-
toptext: Product Name
|
|
10
|
-
title: Features
|
|
11
|
-
subtitle: null
|
|
12
|
-
- name: Feature 1
|
|
13
|
-
fieldGroup: media-feature
|
|
14
|
-
image: pyrosim_libraries_386x395.png
|
|
15
|
-
imageClass: object-left-top
|
|
16
|
-
v: null
|
|
17
|
-
text: >
|
|
18
|
-
Lorem ipsum dolor sit amet, <a
|
|
19
|
-
href="https://standards.buildingsmart.org/">IFC files</a> consectetur
|
|
20
|
-
adipiscing elit. Sed faucibus, nisi finibus euismod iaculis, lorem orci
|
|
21
|
-
ultricies velit, non euismod tortor justo vel turpis. Curabitur ac magna
|
|
22
|
-
mattis, blandit est sit amet, ornare nisi.
|
|
23
|
-
ctaText: Documentation
|
|
24
|
-
ctaURL: https://support.thunderheadeng.com/docs/pyrosim/2021-4/user-manual/#_importing_cad_files
|
|
25
|
-
position: left
|
|
26
|
-
- name: Feature 2
|
|
27
|
-
fieldGroup: media-feature
|
|
28
|
-
image: pyrosim_libraries_386x395.png
|
|
29
|
-
v: XcDEfUbes04
|
|
30
|
-
text: >
|
|
31
|
-
In feugiat lectus justo, eu efficitur ex egestas et. Donec vel malesuada
|
|
32
|
-
massa, a viverra augue. Sed faucibus, nisi finibus euismod iaculis, lorem
|
|
33
|
-
orci ultricies velit, non euismod tortor justo vel turpis. Curabitur ac
|
|
34
|
-
magna mattis, blandit est sit amet, ornare nisi. Pellentesque et
|
|
35
|
-
consectetur eros. Nam lacinia, neque vitae ultrices pulvinar, lectus ipsum
|
|
36
|
-
congue nisl, quis consequat massa enim vitae urna. Donec sit amet sapien
|
|
37
|
-
mattis tellus pellentesque porttitor vel a mauris. Proin a nisl sed erat
|
|
38
|
-
porta bibendum eu sed massa. Aliquam aliquet pellentesque lectus vel
|
|
39
|
-
blandit. Vestibulum sed purus leo. Nullam arcu metus, sollicitudin ut
|
|
40
|
-
justo quis, luctus convallis massa.
|
|
41
|
-
ctaText: Documentation
|
|
42
|
-
ctaURL: https://support.thunderheadeng.com/docs/pyrosim/2021-4/user-manual/#_importing_cad_files
|
|
43
|
-
position: right
|
|
44
|
-
- name: Feature 3
|
|
45
|
-
fieldGroup: media-feature
|
|
46
|
-
image: pyrosim_libraries_386x395.png
|
|
47
|
-
link: https://www.femtc.com
|
|
48
|
-
imageClass: null
|
|
49
|
-
v: null
|
|
50
|
-
text: >
|
|
51
|
-
In feugiat lectus justo, eu efficitur ex egestas et. Donec vel malesuada
|
|
52
|
-
massa, a viverra augue. Sed faucibus, nisi finibus euismod iaculis, lorem
|
|
53
|
-
orci ultricies velit, non euismod tortor justo vel turpis. Curabitur ac
|
|
54
|
-
magna mattis, blandit est sit amet, ornare nisi. Pellentesque et
|
|
55
|
-
consectetur eros. Nam lacinia, neque vitae ultrices pulvinar, lectus ipsum
|
|
56
|
-
congue nisl, quis consequat massa enim vitae urna. Donec sit amet sapien
|
|
57
|
-
mattis tellus pellentesque porttitor vel a mauris. Proin a nisl sed erat
|
|
58
|
-
porta bibendum eu sed massa. Aliquam aliquet pellentesque lectus vel
|
|
59
|
-
blandit. Vestibulum sed purus leo. Nullam arcu metus, sollicitudin ut
|
|
60
|
-
justo quis, luctus convallis massa.
|
|
61
|
-
ctaText: Documentation
|
|
62
|
-
ctaURL: https://support.thunderheadeng.com/docs/pyrosim/2021-4/user-manual/#_importing_cad_files
|
|
63
|
-
position: left
|
|
64
|
-
- name: Feature 4
|
|
65
|
-
fieldGroup: media-feature
|
|
66
|
-
image: pyrosim_libraries_386x395.png
|
|
67
|
-
v: XcDEfUbes04
|
|
68
|
-
text: >
|
|
69
|
-
Lorem ipsum dolor sit amet, <a
|
|
70
|
-
href="https://standards.buildingsmart.org/">IFC files</a> consectetur
|
|
71
|
-
adipiscing elit. Sed faucibus, nisi finibus euismod iaculis, lorem orci
|
|
72
|
-
ultricies velit, non euismod tortor justo vel turpis. Curabitur ac magna
|
|
73
|
-
mattis, blandit est sit amet, ornare nisi.
|
|
74
|
-
ctaText: Documentation
|
|
75
|
-
ctaURL: https://support.thunderheadeng.com/docs/pyrosim/2021-4/user-manual/#_importing_cad_files
|
|
76
|
-
position: right
|
|
77
|
-
lastmod: 2022-05-31T23:11:25.054Z
|
|
78
|
-
---
|
package/src/routes/news/+page.md
DELETED
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
title: News for ThunderTheme
|
|
3
|
-
summary: Design System for Thunderhead Engineering.
|
|
4
|
-
lastmod: 2022-06-10T00:11:24.059Z
|
|
5
|
-
date: 2022-03-20T18:50:14.618Z
|
|
6
|
-
page_sections:
|
|
7
|
-
- name: News Grid
|
|
8
|
-
fieldGroup: news-grid
|
|
9
|
-
title: All the News
|
|
10
|
-
subtitle: You should know.
|
|
11
|
-
pageSize: 2
|
|
12
|
-
filter:
|
|
13
|
-
- pyrosim
|
|
14
|
-
- featured
|
|
15
|
-
layout: blocks
|
|
16
|
-
---
|
|
17
|
-
|
|
18
|
-
The **NewsGrid** component has 2 inputs used to paginate and filter the items shown in the grid.
|
|
19
|
-
|
|
20
|
-
- **pageSize** : The number of items displayed per page.
|
|
21
|
-
- **filter** : An optional list of post 'categories' that you can filter the list by.
|
|
@@ -1,33 +0,0 @@
|
|
|
1
|
-
<!-- src/routes/[slug]/+page.svelte -->
|
|
2
|
-
<script>
|
|
3
|
-
export let data;
|
|
4
|
-
const { title, date, summary, image } = data.meta
|
|
5
|
-
const { PostContent } = data
|
|
6
|
-
|
|
7
|
-
let featuredImage;
|
|
8
|
-
|
|
9
|
-
if (image) {
|
|
10
|
-
featuredImage = "https://teci-files.imgix.net/www/images/" + image + "?w=1200&h=627&fit=crop&auto=compress&auto=format";
|
|
11
|
-
} else {
|
|
12
|
-
featuredImage = "https://teci-files.imgix.net/www/images/teci_icon_250.png";
|
|
13
|
-
}
|
|
14
|
-
</script>
|
|
15
|
-
|
|
16
|
-
<svelte:head>
|
|
17
|
-
<title>{title} | Thunderhead Engineering</title>
|
|
18
|
-
<meta data-key="description" name="description" content={summary}>
|
|
19
|
-
<meta property="og:type" content="article" />
|
|
20
|
-
<meta property="og:title" content={title} />
|
|
21
|
-
<meta name="twitter:title" content={title} />
|
|
22
|
-
<meta property="og:description" content={summary} />
|
|
23
|
-
<meta name="twitter:description" content={summary} />
|
|
24
|
-
<meta name="twitter:card" content="summary_large_image" />
|
|
25
|
-
<meta name="twitter:site" content="@thunderheadeng" />
|
|
26
|
-
<meta name="twitter:creator" content="@thunderheadeng" />
|
|
27
|
-
<meta property="og:image" content={featuredImage} />
|
|
28
|
-
<meta name="twitter:card" content={featuredImage} />
|
|
29
|
-
<!-- <meta property="og:image:width" content={coverWidth} />
|
|
30
|
-
<meta property="og:image:height" content={coverHeight} /> -->
|
|
31
|
-
</svelte:head>
|
|
32
|
-
|
|
33
|
-
<svelte:component this={PostContent} />
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
// src/routes/news/[slug]/+page.ts
|
|
2
|
-
import type { PageLoad } from './$types';
|
|
3
|
-
import { error } from '@sveltejs/kit'
|
|
4
|
-
|
|
5
|
-
export const load = (async ({ params }) => {
|
|
6
|
-
try {
|
|
7
|
-
const post = await import(`../${params.slug}.md`)
|
|
8
|
-
|
|
9
|
-
return {
|
|
10
|
-
PostContent: post.default,
|
|
11
|
-
meta: {... post.metadata, slug: params.slug }
|
|
12
|
-
}
|
|
13
|
-
} catch(err) {
|
|
14
|
-
throw error(404, err)
|
|
15
|
-
}
|
|
16
|
-
}) satisfies PageLoad;
|
|
@@ -1,36 +0,0 @@
|
|
|
1
|
-
<script>
|
|
2
|
-
import NewsGrid from "$lib/components/NewsGrid.svelte";
|
|
3
|
-
import { page } from '$app/stores';
|
|
4
|
-
|
|
5
|
-
const tagData = {
|
|
6
|
-
name: "News Grid",
|
|
7
|
-
fieldGroup: "news-grid",
|
|
8
|
-
title: "Filtered News Posts",
|
|
9
|
-
subtitle: `In the "${$page.params.tag}" category.`,
|
|
10
|
-
pageSize: 6,
|
|
11
|
-
filter: [`${$page.params.tag}`],
|
|
12
|
-
};
|
|
13
|
-
</script>
|
|
14
|
-
|
|
15
|
-
<svelte:head>
|
|
16
|
-
<title>{tagData.title} - {tagData.subtitle} | Thunderhead Engineering</title>
|
|
17
|
-
<meta data-key="description" name="description" content="{tagData.title} - {tagData.subtitle}">
|
|
18
|
-
<meta property="og:type" content="article" />
|
|
19
|
-
<meta property="og:title" content={tagData.title} />
|
|
20
|
-
<meta name="twitter:title" content={tagData.title} />
|
|
21
|
-
<meta property="og:description" content="{tagData.title} - {tagData.subtitle} | Thunderhead Engineering" />
|
|
22
|
-
<meta name="twitter:description" content="{tagData.title} - {tagData.subtitle} | Thunderhead Engineering" />
|
|
23
|
-
<meta name="twitter:card" content="summary_large_image" />
|
|
24
|
-
<meta name="twitter:site" content="@thunderheadeng" />
|
|
25
|
-
<meta name="twitter:creator" content="@thunderheadeng" />
|
|
26
|
-
<meta property="og:image" content="https://teci-files.imgix.net/www/images/teci_icon_250.png" />
|
|
27
|
-
<meta name="twitter:card" content="https://teci-files.imgix.net/www/images/teci_icon_250.png" />
|
|
28
|
-
<!-- <meta property="og:image:width" content={coverWidth} />
|
|
29
|
-
<meta property="og:image:height" content={coverHeight} /> -->
|
|
30
|
-
</svelte:head>
|
|
31
|
-
|
|
32
|
-
<NewsGrid data={tagData} />
|
|
33
|
-
|
|
34
|
-
<div class="mt-8">
|
|
35
|
-
<a class="btn" href="/news" rel="external">All News Posts</a>
|
|
36
|
-
</div>
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
// src/routes/news/filter/[tag]/+page.ts
|
|
2
|
-
import type { PageLoad } from './$types';
|
|
3
|
-
import { error } from '@sveltejs/kit'
|
|
4
|
-
|
|
5
|
-
export const load = (async ({ params }) => {
|
|
6
|
-
try {
|
|
7
|
-
const postTag = (params.tag?params.tag:"")
|
|
8
|
-
return {
|
|
9
|
-
postTag
|
|
10
|
-
}
|
|
11
|
-
} catch(err) {
|
|
12
|
-
throw error(404, err)
|
|
13
|
-
}
|
|
14
|
-
}) satisfies PageLoad;
|
package/src/routes/news/post1.md
DELETED
|
@@ -1,45 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
title: Demo of MDsveX and Svelte Components in Markdown
|
|
3
|
-
summary: How to use Svelte components in Markdown content.
|
|
4
|
-
image: path-thumb.png
|
|
5
|
-
date: 2021-12-29T08:00:00.000Z
|
|
6
|
-
lastmod: 2022-05-31T23:22:46.431Z
|
|
7
|
-
categories:
|
|
8
|
-
- pyrosim
|
|
9
|
-
- announce
|
|
10
|
-
layout: blocks
|
|
11
|
-
page_sections:
|
|
12
|
-
- name: Main Content
|
|
13
|
-
fieldGroup: sidebar-content
|
|
14
|
-
fullWidth: true
|
|
15
|
-
rightRail: false
|
|
16
|
-
toc: true
|
|
17
|
-
---
|
|
18
|
-
|
|
19
|
-
## Svelte Components
|
|
20
|
-
|
|
21
|
-
You can use the Math component in your document to render complex Math expressions, inline <Math math={'v\_{b}'} /> like this.
|
|
22
|
-
|
|
23
|
-
Or as a block, centered in the document as shown below.
|
|
24
|
-
|
|
25
|
-
<Math math={'v*{b}=v*{max}\\times v*{f}(D)\\times v*{ft}'} displayMode />
|
|
26
|
-
|
|
27
|
-
There any component can be created and added in to the text in the same way.
|
|
28
|
-
|
|
29
|
-
<Subscribe classes='border border-2 border-teci-blue-dark float-right' />
|
|
30
|
-
|
|
31
|
-
## Embeds
|
|
32
|
-
|
|
33
|
-
Below is an embedded YouTube video, followed by a Figure image with a caption.
|
|
34
|
-
|
|
35
|
-
### YouTube
|
|
36
|
-
|
|
37
|
-
<Video v='9Z4fh9OaSmE' />
|
|
38
|
-
|
|
39
|
-
### Figure
|
|
40
|
-
|
|
41
|
-
<Figure
|
|
42
|
-
title="Javascript on Laptop"
|
|
43
|
-
caption='Javascript on Laptop, Photo by <a href="https://unsplash.com/@clemhlrdt?utm_source=unsplash&utm_medium=referral&utm_content=creditCopyText">Clément Hélardot</a> on <a href="https://unsplash.com/s/photos/computer?utm_source=unsplash&utm_medium=referral&utm_content=creditCopyText">Unsplash</a>'
|
|
44
|
-
image="https://images.unsplash.com/photo-1504868584819-f8e8b4b6d7e3?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=MXwxfDB8MXxhbGx8fHx8fHx8fA&ixlib=rb-1.2.1&q=80&w=250&utm_source=unsplash_source&utm_medium=referral&utm_campaign=api-credit"
|
|
45
|
-
/>
|
package/src/routes/news/post2.md
DELETED
|
@@ -1,46 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
title: Lorem Ipsum
|
|
3
|
-
summary:
|
|
4
|
-
Neque porro quisquam est qui dolorem ipsum quia dolor sit amet, consectetur,
|
|
5
|
-
adipisci velit. Neque porro quisquam est qui dolorem ipsum quia dolor sit
|
|
6
|
-
amet, consectetur, adipisci velit. Neque porro quisquam est qui dolorem ipsum
|
|
7
|
-
quia dolor sit amet, consectetur, adipisci velit. Neque porro quisquam est qui
|
|
8
|
-
dolorem ipsum quia dolor sit amet, consectetur, adipisci velit.
|
|
9
|
-
date: 2022-04-15T21:47:18.619Z
|
|
10
|
-
categories:
|
|
11
|
-
- pathfinder
|
|
12
|
-
- featured
|
|
13
|
-
- demo
|
|
14
|
-
- total
|
|
15
|
-
- many
|
|
16
|
-
- overflow
|
|
17
|
-
layout: blocks
|
|
18
|
-
page_sections:
|
|
19
|
-
- name: Main Content
|
|
20
|
-
fieldGroup: sidebar-content
|
|
21
|
-
fullWidth: false
|
|
22
|
-
rightRail: false
|
|
23
|
-
toc: false
|
|
24
|
-
hideTitle: true
|
|
25
|
-
showDate: true
|
|
26
|
-
lastmod: 2022-06-01T05:09:36.397Z
|
|
27
|
-
---
|
|
28
|
-
|
|
29
|
-
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nunc pharetra posuere egestas. Nunc fringilla pellentesque nulla sed ultrices. Vestibulum mattis, nisl suscipit interdum tempus, arcu nunc auctor tortor, a condimentum purus turpis sed ex. Ut in rutrum odio. Pellentesque in arcu quis leo consectetur dignissim. Duis sed porttitor dui. Proin aliquam nec leo ornare pretium. In dapibus aliquam tortor a aliquam. Sed convallis mattis mauris et sodales. Nam id purus placerat, ullamcorper erat sit amet, semper urna. Phasellus congue convallis urna in gravida. Vivamus egestas augue id mattis ultricies. Integer in eros eget tortor consectetur molestie lobortis viverra elit. Sed scelerisque lectus orci. Morbi vitae tellus at dui tempus venenatis in id dui. Mauris dictum vitae enim sed rutrum.
|
|
30
|
-
|
|
31
|
-
<Figure
|
|
32
|
-
title="Javascript on Laptop"
|
|
33
|
-
caption='Javascript on Laptop, Photo by <a href="https://unsplash.com/@clemhlrdt?utm_source=unsplash&utm_medium=referral&utm_content=creditCopyText">Clément Hélardot</a> on <a href="https://unsplash.com/s/photos/computer?utm_source=unsplash&utm_medium=referral&utm_content=creditCopyText">Unsplash</a>'
|
|
34
|
-
image="https://images.unsplash.com/photo-1504868584819-f8e8b4b6d7e3?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=MXwxfDB8MXxhbGx8fHx8fHx8fA&ixlib=rb-1.2.1&q=80&w=1080&utm_source=unsplash_source&utm_medium=referral&utm_campaign=api-credit"
|
|
35
|
-
link="/news/post1"
|
|
36
|
-
/>
|
|
37
|
-
|
|
38
|
-
Duis viverra ex nec venenatis euismod. Praesent dapibus augue sed magna aliquam, ac molestie sem luctus. Phasellus non sapien eros. Orci varius natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Suspendisse potenti. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Praesent diam velit, vulputate et volutpat et, suscipit quis nulla. Duis vel consectetur leo, nec consectetur massa. Aliquam erat volutpat. Aenean et nisi hendrerit, gravida leo volutpat, ultrices urna. Mauris id tincidunt neque. Aliquam turpis ex, accumsan vitae aliquam sed, feugiat sit amet nulla. Nunc eget mollis arcu. Donec posuere, felis vitae pellentesque rutrum, lacus urna congue ex, eu vulputate metus orci in urna.
|
|
39
|
-
|
|
40
|
-
<Video v="YDfkLl1ziL4" />
|
|
41
|
-
|
|
42
|
-
Mauris mattis, quam in auctor rutrum, metus ligula tristique metus, eu suscipit lacus metus lobortis sapien. Aliquam erat volutpat. Morbi at ex vel arcu tempor lacinia suscipit quis lorem. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Cras ultricies posuere posuere. Sed consectetur ante eu purus molestie, ut iaculis turpis sodales. Nulla porttitor ligula tortor, ut tincidunt turpis euismod ut.
|
|
43
|
-
|
|
44
|
-
Nam ultrices risus eu urna ullamcorper, id posuere nunc volutpat. Quisque ultricies, dolor ac viverra consequat, nulla metus venenatis ante, aliquam ultrices ante nisi sed ipsum. Curabitur ut varius ipsum. Maecenas sapien quam, consectetur id ultrices non, malesuada egestas lorem. Donec et ex vel nibh consequat elementum. Aliquam porta interdum aliquam. Nulla maximus porta fringilla.
|
|
45
|
-
|
|
46
|
-
Duis nisi risus, tincidunt nec neque et, ornare dignissim nulla. Morbi libero ex, vehicula id leo id, blandit vehicula odio. Duis vitae justo consequat, finibus odio cursus, egestas leo. Maecenas sem purus, gravida sed viverra quis, condimentum ut ante. Sed mollis, eros et blandit dapibus, tortor velit elementum quam, vel cursus ante nunc id mi. Praesent mi ante, dapibus eu odio id, porta porta enim. Fusce et turpis pellentesque, semper quam a, molestie augue. Sed nunc est, fringilla a dictum ut, elementum sed tellus. Mauris sem libero, tincidunt eu leo eget, egestas tempus ante. Proin non ligula sollicitudin, luctus ligula ut, congue elit. Fusce bibendum diam vel tellus volutpat, ut imperdiet purus luctus. Vestibulum aliquam scelerisque ante, vel ornare magna elementum vitae. Mauris auctor eget tellus a commodo.
|