tecitheme 0.3.3 → 0.3.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.
Files changed (156) hide show
  1. package/.eslintrc.cjs +24 -0
  2. package/.frontmatter/content/mediaDb.json +1 -0
  3. package/.frontmatter/templates/article.md +11 -0
  4. package/.gitpod.yml +19 -0
  5. package/.vscode/ltex.dictionary.en-US.txt +3 -0
  6. package/.vscode/settings.json +7 -0
  7. package/dist/assets/js/store.d.ts +2 -0
  8. package/dist/assets/js/store.js +4 -0
  9. package/{components → dist/components}/CountrySelector.svelte +2 -2
  10. package/{components → dist/components}/Footer.svelte +24 -60
  11. package/{components → dist/components}/Footer.svelte.d.ts +2 -5
  12. package/{components → dist/components}/NewsGrid.svelte +3 -3
  13. package/{components → dist/components}/Video.svelte +1 -1
  14. package/{get-content.d.ts → dist/get-content.d.ts} +2 -1
  15. package/{get-content.js → dist/get-content.js} +5 -2
  16. package/{layouts → dist/layouts}/blocks.svelte +15 -15
  17. package/{site_config.json → dist/site_config.json} +1 -1
  18. package/frontmatter.json +17 -0
  19. package/mdsvex.config.js +19 -0
  20. package/netlify.toml +7 -0
  21. package/package.json +22 -46
  22. package/postcss.config.cjs +13 -0
  23. package/src/app.css +49 -0
  24. package/src/app.html +22 -0
  25. package/src/global.d.ts +5 -0
  26. package/src/lib/assets/TECi_logo.svelte +177 -0
  27. package/src/lib/assets/js/store.js +4 -0
  28. package/src/lib/components/Banner.svelte +91 -0
  29. package/src/lib/components/Button.svelte +12 -0
  30. package/src/lib/components/CTA.svelte +36 -0
  31. package/src/lib/components/CTABranded.svelte +15 -0
  32. package/src/lib/components/CTASplitImage.svelte +27 -0
  33. package/src/lib/components/Card.svelte +93 -0
  34. package/src/lib/components/ContentTwoColumns.svelte +47 -0
  35. package/src/lib/components/CountrySelector.svelte +167 -0
  36. package/src/lib/components/FeatureGrid.svelte +40 -0
  37. package/src/lib/components/Figure.svelte +37 -0
  38. package/src/lib/components/Footer.svelte +270 -0
  39. package/src/lib/components/Header.svelte +1230 -0
  40. package/src/lib/components/HeadingCentered.svelte +33 -0
  41. package/src/lib/components/Hero.svelte +72 -0
  42. package/src/lib/components/Icon.svelte +138 -0
  43. package/src/lib/components/LogoCloud.svelte +25 -0
  44. package/src/lib/components/Math.svelte +24 -0
  45. package/src/lib/components/MediaFeature.svelte +66 -0
  46. package/src/lib/components/Modal.svelte +68 -0
  47. package/src/lib/components/NewsGrid.svelte +182 -0
  48. package/src/lib/components/PricingTable.svelte +92 -0
  49. package/src/lib/components/SidebarContent.svelte +122 -0
  50. package/src/lib/components/Stats.svelte +34 -0
  51. package/src/lib/components/Subscribe.svelte +24 -0
  52. package/src/lib/components/Testimonial.svelte +169 -0
  53. package/src/lib/components/ThreeColumn.svelte +19 -0
  54. package/src/lib/components/TrialForm.svelte +302 -0
  55. package/src/lib/components/Video.svelte +118 -0
  56. package/src/lib/components/Wrap.svelte +12 -0
  57. package/src/lib/get-content.js +98 -0
  58. package/src/lib/layouts/blocks.svelte +93 -0
  59. package/src/lib/req_utils.js +63 -0
  60. package/src/lib/site_config.json +11 -0
  61. package/src/lib/utils.js +92 -0
  62. package/src/lib/variables.ts +3 -0
  63. package/src/routes/+layout.server.js +20 -0
  64. package/src/routes/+layout.svelte +24 -0
  65. package/src/routes/+page.md +61 -0
  66. package/src/routes/features/+page.md +78 -0
  67. package/src/routes/news/+page.md +21 -0
  68. package/src/routes/news/[slug]/+page.svelte +33 -0
  69. package/src/routes/news/[slug]/+page.ts +16 -0
  70. package/src/routes/news/filter/[tag]/+page.svelte +36 -0
  71. package/src/routes/news/filter/[tag]/+page.ts +14 -0
  72. package/src/routes/news/post1.md +45 -0
  73. package/src/routes/news/post2.md +46 -0
  74. package/src/routes/pathfinder/+page.md +240 -0
  75. package/src/routes/pathfinder/news/+page.md +20 -0
  76. package/src/routes/posts.json/+server.js +9 -0
  77. package/src/routes/product/+page.md +240 -0
  78. package/src/routes/product/news/+page.md +20 -0
  79. package/src/routes/product/trial/+page.svelte +7 -0
  80. package/src/routes/sidebar/+page.md +357 -0
  81. package/static/favicon.ico +0 -0
  82. package/static/uploads/company_pathfinder.png +0 -0
  83. package/static/uploads/company_petrasim.png +0 -0
  84. package/static/uploads/company_pyrosim.jpg +0 -0
  85. package/static/uploads/fire.jpg +0 -0
  86. package/static/uploads/pyrosim_libraries_386x395.png +0 -0
  87. package/static/uploads/rocks.jpg +0 -0
  88. package/static/uploads/water.jpg +0 -0
  89. package/svelte.config.js +32 -0
  90. package/tailwind.config.cjs +26 -0
  91. package/tsconfig.json +32 -0
  92. package/vite.config.js +20 -0
  93. package/components/MetaSocial.svelte +0 -15
  94. package/components/MetaSocial.svelte.d.ts +0 -29
  95. package/{assets → dist/assets}/TECi_logo.svelte +0 -0
  96. package/{assets → dist/assets}/TECi_logo.svelte.d.ts +0 -0
  97. package/{components → dist/components}/Banner.svelte +0 -0
  98. package/{components → dist/components}/Banner.svelte.d.ts +0 -0
  99. package/{components → dist/components}/Button.svelte +0 -0
  100. package/{components → dist/components}/Button.svelte.d.ts +0 -0
  101. package/{components → dist/components}/CTA.svelte +0 -0
  102. package/{components → dist/components}/CTA.svelte.d.ts +0 -0
  103. package/{components → dist/components}/CTABranded.svelte +0 -0
  104. package/{components → dist/components}/CTABranded.svelte.d.ts +0 -0
  105. package/{components → dist/components}/CTASplitImage.svelte +0 -0
  106. package/{components → dist/components}/CTASplitImage.svelte.d.ts +0 -0
  107. package/{components → dist/components}/Card.svelte +0 -0
  108. package/{components → dist/components}/Card.svelte.d.ts +0 -0
  109. package/{components → dist/components}/ContentTwoColumns.svelte +0 -0
  110. package/{components → dist/components}/ContentTwoColumns.svelte.d.ts +0 -0
  111. package/{components → dist/components}/CountrySelector.svelte.d.ts +0 -0
  112. package/{components → dist/components}/FeatureGrid.svelte +0 -0
  113. package/{components → dist/components}/FeatureGrid.svelte.d.ts +0 -0
  114. package/{components → dist/components}/Figure.svelte +0 -0
  115. package/{components → dist/components}/Figure.svelte.d.ts +0 -0
  116. package/{components → dist/components}/Header.svelte +0 -0
  117. package/{components → dist/components}/Header.svelte.d.ts +0 -0
  118. package/{components → dist/components}/HeadingCentered.svelte +0 -0
  119. package/{components → dist/components}/HeadingCentered.svelte.d.ts +0 -0
  120. package/{components → dist/components}/Hero.svelte +0 -0
  121. package/{components → dist/components}/Hero.svelte.d.ts +0 -0
  122. package/{components → dist/components}/Icon.svelte +0 -0
  123. package/{components → dist/components}/Icon.svelte.d.ts +0 -0
  124. package/{components → dist/components}/LogoCloud.svelte +0 -0
  125. package/{components → dist/components}/LogoCloud.svelte.d.ts +0 -0
  126. package/{components → dist/components}/Math.svelte +0 -0
  127. package/{components → dist/components}/Math.svelte.d.ts +0 -0
  128. package/{components → dist/components}/MediaFeature.svelte +0 -0
  129. package/{components → dist/components}/MediaFeature.svelte.d.ts +0 -0
  130. package/{components → dist/components}/Modal.svelte +0 -0
  131. package/{components → dist/components}/Modal.svelte.d.ts +0 -0
  132. package/{components → dist/components}/NewsGrid.svelte.d.ts +0 -0
  133. package/{components → dist/components}/PricingTable.svelte +0 -0
  134. package/{components → dist/components}/PricingTable.svelte.d.ts +0 -0
  135. package/{components → dist/components}/SidebarContent.svelte +0 -0
  136. package/{components → dist/components}/SidebarContent.svelte.d.ts +0 -0
  137. package/{components → dist/components}/Stats.svelte +0 -0
  138. package/{components → dist/components}/Stats.svelte.d.ts +0 -0
  139. package/{components → dist/components}/Subscribe.svelte +0 -0
  140. package/{components → dist/components}/Subscribe.svelte.d.ts +0 -0
  141. package/{components → dist/components}/Testimonial.svelte +0 -0
  142. package/{components → dist/components}/Testimonial.svelte.d.ts +0 -0
  143. package/{components → dist/components}/ThreeColumn.svelte +0 -0
  144. package/{components → dist/components}/ThreeColumn.svelte.d.ts +0 -0
  145. package/{components → dist/components}/TrialForm.svelte +0 -0
  146. package/{components → dist/components}/TrialForm.svelte.d.ts +0 -0
  147. package/{components → dist/components}/Video.svelte.d.ts +0 -0
  148. package/{components → dist/components}/Wrap.svelte +0 -0
  149. package/{components → dist/components}/Wrap.svelte.d.ts +0 -0
  150. package/{layouts → dist/layouts}/blocks.svelte.d.ts +2 -2
  151. /package/{req_utils.d.ts → dist/req_utils.d.ts} +0 -0
  152. /package/{req_utils.js → dist/req_utils.js} +0 -0
  153. /package/{utils.d.ts → dist/utils.d.ts} +0 -0
  154. /package/{utils.js → dist/utils.js} +0 -0
  155. /package/{variables.d.ts → dist/variables.d.ts} +0 -0
  156. /package/{variables.js → dist/variables.js} +0 -0
@@ -0,0 +1,1230 @@
1
+ <script>
2
+ import Icon from "$lib/components/Icon.svelte";
3
+ import { slide } from "svelte/transition";
4
+ import { cubicIn, cubicOut } from "svelte/easing";
5
+
6
+ let openMenu = "";
7
+
8
+ export function clickOutside(node) {
9
+ const handleClick = (event) => {
10
+ if (
11
+ !node.contains(event.target) &&
12
+ event.target.innerText.toLowerCase() != node.parentElement.id
13
+ ) {
14
+ node.dispatchEvent(new CustomEvent("outclick"));
15
+ }
16
+ };
17
+ document.addEventListener("click", handleClick, true);
18
+ return {
19
+ destroy() {
20
+ document.removeEventListener("click", handleClick, true);
21
+ },
22
+ };
23
+ }
24
+
25
+ function handleEscape({ key }) {
26
+ if (key === "Escape") {
27
+ openMenu = "";
28
+ }
29
+ }
30
+ </script>
31
+
32
+ <svelte:window on:keyup={handleEscape} />
33
+
34
+ <header class="relative bg-white">
35
+ <div
36
+ aria-hidden="true"
37
+ class="pointer-events-none absolute inset-0 z-30 shadow"
38
+ />
39
+ <div
40
+ class="relative mx-auto flex max-w-7xl items-center justify-between px-4 py-5 sm:px-6 sm:py-4 md:justify-start md:space-x-6 lg:space-x-10 lg:px-8"
41
+ >
42
+ <!-- Nav Icon Linked to WWW Homepage -->
43
+ <div class="flex-shrink-0">
44
+ <a href="https://www.thunderheadeng.com" class="flex">
45
+ <span class="sr-only">Thunderhead Engineering</span>
46
+ <Icon classes="h-10 w-auto" />
47
+ </a>
48
+ </div>
49
+
50
+ <!-- Nav Menu -->
51
+ <div class="hidden md:flex md:flex-1 md:items-center md:justify-between">
52
+ <nav class="flex md:space-x-6 lg:space-x-10">
53
+ <!-- Products -->
54
+ <div id="products">
55
+ <button
56
+ type="button"
57
+ on:click={() =>
58
+ openMenu == "products"
59
+ ? (openMenu = "")
60
+ : (openMenu = "products")}
61
+ class="group inline-flex items-center bg-white text-left text-base font-medium text-gray-500 hover:text-gray-900 focus:outline-none focus:ring-2 focus:ring-teci-blue-light focus:ring-offset-2"
62
+ aria-expanded={openMenu == "products"}
63
+ >
64
+ <span class:text-gray-900={openMenu == "products"}>Products</span>
65
+ <svg
66
+ class="ml-2 h-5 w-5 group-hover:text-gray-900 {openMenu ==
67
+ 'products'
68
+ ? 'rotate-180 text-gray-900'
69
+ : 'text-gray-400'}"
70
+ xmlns="http://www.w3.org/2000/svg"
71
+ viewBox="0 0 20 20"
72
+ fill="currentColor"
73
+ aria-hidden="true"
74
+ >
75
+ <path
76
+ fill-rule="evenodd"
77
+ d="M5.293 7.293a1 1 0 011.414 0L10 10.586l3.293-3.293a1 1 0 111.414 1.414l-4 4a1 1 0 01-1.414 0l-4-4a1 1 0 010-1.414z"
78
+ clip-rule="evenodd"
79
+ />
80
+ </svg>
81
+ </button>
82
+
83
+ <!-- Flyout menu -->
84
+ {#if openMenu == "products"}
85
+ <div
86
+ class="absolute inset-x-0 top-full z-10 transform bg-white text-left shadow-lg"
87
+ use:clickOutside
88
+ on:outclick={() => (openMenu = "")}
89
+ in:slide={{ duration: 250, easing: cubicOut }}
90
+ out:slide={{ duration: 150, easing: cubicIn }}
91
+ >
92
+ <button
93
+ on:click={() => (openMenu = "")}
94
+ class="mx-auto grid max-w-7xl gap-y-8 px-4 py-8 text-left sm:grid-cols-2 sm:gap-8 sm:px-6 lg:grid-cols-3 lg:px-8"
95
+ >
96
+ <a
97
+ href="https://www.thunderheadeng.com/pyrosim/"
98
+ class="-m-3 flex flex-col justify-between p-3 hover:bg-gray-50"
99
+ >
100
+ <div class="flex md:h-full lg:flex-col">
101
+ <div class="flex-shrink-0">
102
+ <Icon classes="h-12 w-auto" icon="pyrosim" />
103
+ </div>
104
+ <div
105
+ class="ml-4 md:flex md:flex-1 md:flex-col md:justify-between lg:ml-0 lg:mt-4"
106
+ >
107
+ <div>
108
+ <p class="text-base font-medium text-gray-900">
109
+ PyroSim
110
+ </p>
111
+ <p class="mt-1 text-sm text-gray-500">
112
+ Analyze fire control and smoke dissipation in various
113
+ structures for fire protection and safety or
114
+ investigation.
115
+ </p>
116
+ </div>
117
+ <p
118
+ class="mt-2 text-sm font-medium text-teci-blue-light lg:mt-4"
119
+ >
120
+ Learn more <span aria-hidden="true">&rarr;</span>
121
+ </p>
122
+ </div>
123
+ </div>
124
+ </a>
125
+
126
+ <a
127
+ href="https://www.thunderheadeng.com/pathfinder/"
128
+ class="-m-3 flex flex-col justify-between p-3 hover:bg-gray-50"
129
+ >
130
+ <div class="flex md:h-full lg:flex-col">
131
+ <div class="flex-shrink-0">
132
+ <Icon classes="h-12 w-auto" icon="pathfinder" />
133
+ </div>
134
+ <div
135
+ class="ml-4 md:flex md:flex-1 md:flex-col md:justify-between lg:ml-0 lg:mt-4"
136
+ >
137
+ <div>
138
+ <p class="text-base font-medium text-gray-900">
139
+ Pathfinder
140
+ </p>
141
+ <p class="mt-1 text-sm text-gray-500">
142
+ Understand pedestrian egress and congestion hazards
143
+ for fire protection and safety or urban planning.
144
+ </p>
145
+ </div>
146
+ <p
147
+ class="mt-2 text-sm font-medium text-teci-blue-light lg:mt-4"
148
+ >
149
+ Learn more <span aria-hidden="true">&rarr;</span>
150
+ </p>
151
+ </div>
152
+ </div>
153
+ </a>
154
+
155
+ <a
156
+ href="https://www.thunderheadeng.com/petrasim/"
157
+ class="-m-3 flex flex-col justify-between p-3 hover:bg-gray-50"
158
+ >
159
+ <div class="flex md:h-full lg:flex-col">
160
+ <div class="flex-shrink-0">
161
+ <Icon classes="h-12 w-auto" icon="petrasim" />
162
+ </div>
163
+ <div
164
+ class="ml-4 md:flex md:flex-1 md:flex-col md:justify-between lg:ml-0 lg:mt-4"
165
+ >
166
+ <div>
167
+ <p class="text-base font-medium text-gray-900">
168
+ PetraSim
169
+ </p>
170
+ <p class="mt-1 text-sm text-gray-500">
171
+ Model nonisothermal multiphase flow and transport in
172
+ fractured and porous media for environmental
173
+ engineering.
174
+ </p>
175
+ </div>
176
+ <p
177
+ class="mt-2 text-sm font-medium text-teci-blue-light lg:mt-4"
178
+ >
179
+ Learn more <span aria-hidden="true">&rarr;</span>
180
+ </p>
181
+ </div>
182
+ </div>
183
+ </a>
184
+ </button>
185
+
186
+ <!-- Action Buttons -->
187
+ <div class="relative bg-gray-50 text-left">
188
+ <button
189
+ on:click={() => (openMenu = "")}
190
+ class="max-w-7xl space-y-6 px-4 py-5 sm:flex sm:space-y-0 sm:space-x-10 sm:px-6 lg:px-8"
191
+ >
192
+ <div class="flow-root">
193
+ <a
194
+ href="https://store2.thunderheadeng.com/cart"
195
+ class="-m-3 flex items-center p-3 text-base font-medium text-gray-900 hover:bg-gray-100"
196
+ >
197
+ <svg
198
+ xmlns="http://www.w3.org/2000/svg"
199
+ class="h-6 w-6 flex-shrink-0 text-gray-400"
200
+ fill="none"
201
+ viewBox="0 0 24 24"
202
+ stroke="currentColor"
203
+ >
204
+ <path
205
+ stroke-linecap="round"
206
+ stroke-linejoin="round"
207
+ stroke-width="2"
208
+ d="M3 3h2l.4 2M7 13h10l4-8H5.4M7 13L5.4 5M7 13l-2.293 2.293c-.63.63-.184 1.707.707 1.707H17m0 0a2 2 0 100 4 2 2 0 000-4zm-8 2a2 2 0 11-4 0 2 2 0 014 0z"
209
+ />
210
+ </svg>
211
+ <span class="ml-3">Order Online</span>
212
+ </a>
213
+ </div>
214
+
215
+ <div class="flow-root">
216
+ <a
217
+ href="https://store2.thunderheadeng.com/trial/"
218
+ class="-m-3 flex items-center p-3 text-base font-medium text-gray-900 hover:bg-gray-100"
219
+ >
220
+ <svg
221
+ xmlns="http://www.w3.org/2000/svg"
222
+ class="h-6 w-6 flex-shrink-0 text-gray-400"
223
+ fill="none"
224
+ viewBox="0 0 24 24"
225
+ stroke="currentColor"
226
+ >
227
+ <path
228
+ stroke-linecap="round"
229
+ stroke-linejoin="round"
230
+ stroke-width="2"
231
+ d="M12 8v4l3 3m6-3a9 9 0 11-18 0 9 9 0 0118 0z"
232
+ />
233
+ </svg>
234
+ <span class="ml-3">30-day Trial</span>
235
+ </a>
236
+ </div>
237
+
238
+ <div class="flow-root">
239
+ <a
240
+ href="mailto:sales@thunderheadeng.com"
241
+ class="-m-3 flex items-center p-3 text-base font-medium text-gray-900 hover:bg-gray-100"
242
+ >
243
+ <svg
244
+ xmlns="http://www.w3.org/2000/svg"
245
+ class="h-6 w-6 flex-shrink-0 text-gray-400"
246
+ fill="none"
247
+ viewBox="0 0 24 24"
248
+ stroke="currentColor"
249
+ >
250
+ <path
251
+ stroke-linecap="round"
252
+ stroke-linejoin="round"
253
+ stroke-width="2"
254
+ d="M3 8l7.89 5.26a2 2 0 002.22 0L21 8M5 19h14a2 2 0 002-2V7a2 2 0 00-2-2H5a2 2 0 00-2 2v10a2 2 0 002 2z"
255
+ />
256
+ </svg>
257
+ <span class="ml-3">Contact Sales</span>
258
+ </a>
259
+ </div>
260
+ </button>
261
+ </div>
262
+ </div>
263
+ {/if}
264
+ </div>
265
+
266
+ <!-- Support -->
267
+ <div id="support" class="relative">
268
+ <button
269
+ type="button"
270
+ on:click={() =>
271
+ openMenu == "support" ? (openMenu = "") : (openMenu = "support")}
272
+ class="group inline-flex items-center bg-white text-base font-medium text-gray-500 hover:text-gray-900 focus:outline-none focus:ring-2 focus:ring-teci-blue-light focus:ring-offset-2"
273
+ aria-expanded={openMenu == "support"}
274
+ >
275
+ <span class:text-gray-900={openMenu == "support"}>Support</span>
276
+ <svg
277
+ class="ml-2 h-5 w-5 group-hover:text-gray-900 {openMenu ===
278
+ 'support'
279
+ ? 'rotate-180 text-gray-900'
280
+ : 'text-gray-400'}"
281
+ xmlns="http://www.w3.org/2000/svg"
282
+ viewBox="0 0 20 20"
283
+ fill="currentColor"
284
+ aria-hidden="true"
285
+ >
286
+ <path
287
+ fill-rule="evenodd"
288
+ d="M5.293 7.293a1 1 0 011.414 0L10 10.586l3.293-3.293a1 1 0 111.414 1.414l-4 4a1 1 0 01-1.414 0l-4-4a1 1 0 010-1.414z"
289
+ clip-rule="evenodd"
290
+ />
291
+ </svg>
292
+ </button>
293
+
294
+ {#if openMenu == "support"}
295
+ <div
296
+ class="absolute left-1/2 z-40 mt-3 w-screen max-w-md -translate-x-1/2 transform overflow-hidden px-2 text-left shadow-lg ring-1 ring-black ring-opacity-5 sm:px-0"
297
+ use:clickOutside
298
+ on:outclick={() => (openMenu = "")}
299
+ in:slide={{ duration: 250, easing: cubicOut }}
300
+ out:slide={{ duration: 150, easing: cubicIn }}
301
+ >
302
+ <button
303
+ on:click={() => (openMenu = "")}
304
+ class="relative grid w-full gap-6 bg-white px-5 py-6 text-left sm:gap-8 sm:p-8"
305
+ >
306
+ <a
307
+ href="https://support.thunderheadeng.com/docs/"
308
+ class="-m-3 flex items-start p-3 transition duration-150 ease-in-out hover:bg-gray-50"
309
+ >
310
+ <svg
311
+ xmlns="http://www.w3.org/2000/svg"
312
+ class="h-6 w-6 text-teci-blue-light"
313
+ fill="none"
314
+ viewBox="0 0 24 24"
315
+ stroke="currentColor"
316
+ >
317
+ <path
318
+ stroke-linecap="round"
319
+ stroke-linejoin="round"
320
+ stroke-width="2"
321
+ d="M12 6.253v13m0-13C10.832 5.477 9.246 5 7.5 5S4.168 5.477 3 6.253v13C4.168 18.477 5.754 18 7.5 18s3.332.477 4.5 1.253m0-13C13.168 5.477 14.754 5 16.5 5c1.747 0 3.332.477 4.5 1.253v13C19.832 18.477 18.247 18 16.5 18c-1.746 0-3.332.477-4.5 1.253"
322
+ />
323
+ </svg>
324
+ <div class="ml-4">
325
+ <p class="text-base font-medium text-gray-900">
326
+ Documentation
327
+ </p>
328
+ <p class="mt-1 text-sm text-gray-500">
329
+ Manuals and Reference Documents for all products
330
+ </p>
331
+ </div>
332
+ </a>
333
+
334
+ <a
335
+ href="https://support.thunderheadeng.com/tutorials/"
336
+ class="-m-3 flex items-start p-3 transition duration-150 ease-in-out hover:bg-gray-50"
337
+ >
338
+ <svg
339
+ xmlns="http://www.w3.org/2000/svg"
340
+ class="h-6 w-6 flex-shrink-0 text-teci-blue-light"
341
+ fill="none"
342
+ viewBox="0 0 24 24"
343
+ stroke="currentColor"
344
+ >
345
+ <path
346
+ stroke-linecap="round"
347
+ stroke-linejoin="round"
348
+ stroke-width="2"
349
+ d="M8 14v3m4-3v3m4-3v3M3 21h18M3 10h18M3 7l9-4 9 4M4 10h16v11H4V10z"
350
+ />
351
+ </svg>
352
+ <div class="ml-4">
353
+ <p class="text-base font-medium text-gray-900">Tutorials</p>
354
+ <p class="mt-1 text-sm text-gray-500">
355
+ Getting Started, Applications and Feature Demos
356
+ </p>
357
+ </div>
358
+ </a>
359
+
360
+ <a
361
+ href="https://support.thunderheadeng.com/release-notes/"
362
+ class="-m-3 flex items-start p-3 transition duration-150 ease-in-out hover:bg-gray-50"
363
+ >
364
+ <svg
365
+ xmlns="http://www.w3.org/2000/svg"
366
+ class="h-6 w-6 flex-shrink-0 text-teci-blue-light"
367
+ fill="none"
368
+ viewBox="0 0 24 24"
369
+ stroke="currentColor"
370
+ >
371
+ <path
372
+ stroke-linecap="round"
373
+ stroke-linejoin="round"
374
+ stroke-width="2"
375
+ d="M9 12h6m-6 4h6m2 5H7a2 2 0 01-2-2V5a2 2 0 012-2h5.586a1 1 0 01.707.293l5.414 5.414a1 1 0 01.293.707V19a2 2 0 01-2 2z"
376
+ />
377
+ </svg>
378
+ <div class="ml-4">
379
+ <p class="text-base font-medium text-gray-900">
380
+ Release Notes
381
+ </p>
382
+ <p class="mt-1 text-sm text-gray-500">
383
+ Detailed changes each product release
384
+ </p>
385
+ </div>
386
+ </a>
387
+
388
+ <a
389
+ href="https://support.thunderheadeng.com/answers/"
390
+ class="-m-3 flex items-start p-3 transition duration-150 ease-in-out hover:bg-gray-50"
391
+ >
392
+ <svg
393
+ xmlns="http://www.w3.org/2000/svg"
394
+ class="h-6 w-6 flex-shrink-0 text-teci-blue-light"
395
+ fill="none"
396
+ viewBox="0 0 24 24"
397
+ stroke="currentColor"
398
+ >
399
+ <path
400
+ stroke-linecap="round"
401
+ stroke-linejoin="round"
402
+ stroke-width="2"
403
+ d="M8.228 9c.549-1.165 2.03-2 3.772-2 2.21 0 4 1.343 4 3 0 1.4-1.278 2.575-3.006 2.907-.542.104-.994.54-.994 1.093m0 3h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z"
404
+ />
405
+ </svg>
406
+ <div class="ml-4">
407
+ <p class="text-base font-medium text-gray-900">FAQs</p>
408
+ <p class="mt-1 text-sm text-gray-500">
409
+ Frequently Asked Questions (FAQs) and Answers
410
+ </p>
411
+ </div>
412
+ </a>
413
+ </button>
414
+ <button
415
+ on:click={() => (openMenu = "")}
416
+ class="w-full space-y-6 bg-gray-50 px-5 py-5 sm:flex sm:space-y-0 sm:space-x-10 sm:px-8"
417
+ >
418
+ <div class="flow-root">
419
+ <a
420
+ href="https://forum.thunderheadeng.com/"
421
+ class="-m-3 flex items-center p-3 text-base font-medium text-gray-900 hover:bg-gray-100"
422
+ >
423
+ <svg
424
+ class="h-6 w-6 flex-shrink-0 text-gray-400"
425
+ xmlns="http://www.w3.org/2000/svg"
426
+ fill="none"
427
+ viewBox="0 0 24 24"
428
+ stroke="currentColor"
429
+ aria-hidden="true"
430
+ >
431
+ <path
432
+ stroke-linecap="round"
433
+ stroke-linejoin="round"
434
+ stroke-width="2"
435
+ d="M17 20h5v-2a3 3 0 00-5.356-1.857M17 20H7m10 0v-2c0-.656-.126-1.283-.356-1.857M7 20H2v-2a3 3 0 015.356-1.857M7 20v-2c0-.656.126-1.283.356-1.857m0 0a5.002 5.002 0 019.288 0M15 7a3 3 0 11-6 0 3 3 0 016 0zm6 3a2 2 0 11-4 0 2 2 0 014 0zM7 10a2 2 0 11-4 0 2 2 0 014 0z"
436
+ />
437
+ </svg>
438
+ <span class="ml-3">User Forum</span>
439
+ </a>
440
+ </div>
441
+
442
+ <div class="flow-root">
443
+ <a
444
+ href="mailto:support@thunderheadeng.com"
445
+ class="-m-3 flex items-center p-3 text-base font-medium text-gray-900 hover:bg-gray-100"
446
+ >
447
+ <svg
448
+ xmlns="http://www.w3.org/2000/svg"
449
+ class="h-6 w-6 flex-shrink-0 text-gray-400"
450
+ fill="none"
451
+ viewBox="0 0 24 24"
452
+ stroke="currentColor"
453
+ >
454
+ <path
455
+ stroke-linecap="round"
456
+ stroke-linejoin="round"
457
+ stroke-width="2"
458
+ d="M3 8l7.89 5.26a2 2 0 002.22 0L21 8M5 19h14a2 2 0 002-2V7a2 2 0 00-2-2H5a2 2 0 00-2 2v10a2 2 0 002 2z"
459
+ />
460
+ </svg>
461
+ <span class="ml-3">Contact Support</span>
462
+ </a>
463
+ </div>
464
+ </button>
465
+ </div>
466
+ {/if}
467
+ </div>
468
+
469
+ <!-- Events -->
470
+ <div id="events" class="relative">
471
+ <button
472
+ type="button"
473
+ on:click={() =>
474
+ openMenu == "events" ? (openMenu = "") : (openMenu = "events")}
475
+ class="group inline-flex items-center bg-white text-base font-medium text-gray-500 hover:text-gray-900 focus:outline-none focus:ring-2 focus:ring-teci-blue-light focus:ring-offset-2"
476
+ aria-expanded={openMenu == "events"}
477
+ >
478
+ <span class:text-gray-900={openMenu == "events"}>Events</span>
479
+ <svg
480
+ class="ml-2 h-5 w-5 text-gray-400 group-hover:text-gray-900 {openMenu ===
481
+ 'events'
482
+ ? 'rotate-180 text-gray-900'
483
+ : 'text-gray-400'}"
484
+ xmlns="http://www.w3.org/2000/svg"
485
+ viewBox="0 0 20 20"
486
+ fill="currentColor"
487
+ aria-hidden="true"
488
+ >
489
+ <path
490
+ fill-rule="evenodd"
491
+ d="M5.293 7.293a1 1 0 011.414 0L10 10.586l3.293-3.293a1 1 0 111.414 1.414l-4 4a1 1 0 01-1.414 0l-4-4a1 1 0 010-1.414z"
492
+ clip-rule="evenodd"
493
+ />
494
+ </svg>
495
+ </button>
496
+
497
+ {#if openMenu == "events"}
498
+ <div
499
+ class="absolute left-1/2 z-40 mt-3 w-screen max-w-md -translate-x-1/2 transform overflow-hidden px-2 shadow-lg ring-1 ring-black ring-opacity-5 sm:px-0"
500
+ use:clickOutside
501
+ on:outclick={() => (openMenu = "")}
502
+ in:slide={{ duration: 250, easing: cubicOut }}
503
+ out:slide={{ duration: 150, easing: cubicIn }}
504
+ >
505
+ <button
506
+ on:click={() => (openMenu = "")}
507
+ class="relative grid w-full gap-6 bg-white px-5 py-6 text-left sm:gap-8 sm:p-8"
508
+ >
509
+ <a
510
+ href="https://www.thunderheadeng.com/training/"
511
+ class="-m-3 flex items-start p-3 transition duration-150 ease-in-out hover:bg-gray-50"
512
+ >
513
+ <svg
514
+ xmlns="http://www.w3.org/2000/svg"
515
+ class="h-6 w-6 text-teci-blue-light"
516
+ fill="none"
517
+ viewBox="0 0 24 24"
518
+ stroke="currentColor"
519
+ >
520
+ <path
521
+ stroke-linecap="round"
522
+ stroke-linejoin="round"
523
+ stroke-width="2"
524
+ d="M8 7V3m8 4V3m-9 8h10M5 21h14a2 2 0 002-2V7a2 2 0 00-2-2H5a2 2 0 00-2 2v12a2 2 0 002 2z"
525
+ />
526
+ </svg>
527
+ <div class="ml-4">
528
+ <p class="text-base font-medium text-gray-900">Calendar</p>
529
+ <p class="mt-1 text-sm text-gray-500">
530
+ See upcoming events schedule.
531
+ </p>
532
+ </div>
533
+ </a>
534
+
535
+ <a
536
+ href="https://www.femtc.com/"
537
+ class="-m-3 flex items-start p-3 transition duration-150 ease-in-out hover:bg-gray-50"
538
+ >
539
+ <svg
540
+ xmlns="http://www.w3.org/2000/svg"
541
+ class="h-6 w-6 flex-shrink-0 text-teci-blue-light"
542
+ fill="none"
543
+ viewBox="0 0 24 24"
544
+ stroke="currentColor"
545
+ >
546
+ <path
547
+ stroke-linecap="round"
548
+ stroke-linejoin="round"
549
+ stroke-width="2"
550
+ d="M7 12l3-3 3 3 4-4M8 21l4-4 4 4M3 4h18M4 4h16v12a1 1 0 01-1 1H5a1 1 0 01-1-1V4z"
551
+ />
552
+ </svg>
553
+ <div class="ml-4">
554
+ <p class="text-base font-medium text-gray-900">FEMTC</p>
555
+ <p class="mt-1 text-sm text-gray-500">
556
+ Fire and Evacuation Modeling Technical Conference
557
+ </p>
558
+ </div>
559
+ </a>
560
+
561
+ <a
562
+ href="https://www.thunderheadeng.com/training/"
563
+ class="-m-3 flex items-start p-3 transition duration-150 ease-in-out hover:bg-gray-50"
564
+ >
565
+ <svg
566
+ xmlns="http://www.w3.org/2000/svg"
567
+ class="h-6 w-6 flex-shrink-0 text-teci-blue-light"
568
+ fill="none"
569
+ viewBox="0 0 24 24"
570
+ stroke="currentColor"
571
+ >
572
+ <path
573
+ stroke-linecap="round"
574
+ stroke-linejoin="round"
575
+ stroke-width="2"
576
+ d="M15 15l-2 5L9 9l11 4-5 2zm0 0l5 5M7.188 2.239l.777 2.897M5.136 7.965l-2.898-.777M13.95 4.05l-2.122 2.122m-5.657 5.656l-2.12 2.122"
577
+ />
578
+ </svg>
579
+ <div class="ml-4">
580
+ <p class="text-base font-medium text-gray-900">Training</p>
581
+ <p class="mt-1 text-sm text-gray-500">
582
+ Both Online and In-person training options.
583
+ </p>
584
+ </div>
585
+ </a>
586
+ </button>
587
+ <button
588
+ on:click={() => (openMenu = "")}
589
+ class="w-full space-y-6 bg-gray-50 px-5 py-5 text-left sm:flex sm:space-y-0 sm:space-x-10 sm:px-8"
590
+ >
591
+ <div class="flow-root">
592
+ <a
593
+ href="https://store.thunderheadeng.com/php/event-payment.php"
594
+ class="-m-3 flex items-center p-3 text-base font-medium text-gray-900 transition duration-150 ease-in-out hover:bg-gray-100"
595
+ >
596
+ <svg
597
+ xmlns="http://www.w3.org/2000/svg"
598
+ class="h-6 w-6 flex-shrink-0 text-gray-400"
599
+ fill="none"
600
+ viewBox="0 0 24 24"
601
+ stroke="currentColor"
602
+ >
603
+ <path
604
+ stroke-linecap="round"
605
+ stroke-linejoin="round"
606
+ stroke-width="2"
607
+ d="M12 8c-1.657 0-3 .895-3 2s1.343 2 3 2 3 .895 3 2-1.343 2-3 2m0-8c1.11 0 2.08.402 2.599 1M12 8V7m0 1v8m0 0v1m0-1c-1.11 0-2.08-.402-2.599-1M21 12a9 9 0 11-18 0 9 9 0 0118 0z"
608
+ />
609
+ </svg>
610
+ <span class="ml-3">Register</span>
611
+ </a>
612
+ </div>
613
+
614
+ <div class="flow-root">
615
+ <a
616
+ href="mailto:training@thunderheadeng.com"
617
+ class="-m-3 flex items-center p-3 text-base font-medium text-gray-900 transition duration-150 ease-in-out hover:bg-gray-100"
618
+ >
619
+ <svg
620
+ xmlns="http://www.w3.org/2000/svg"
621
+ class="h-6 w-6 flex-shrink-0 text-gray-400"
622
+ fill="none"
623
+ viewBox="0 0 24 24"
624
+ stroke="currentColor"
625
+ >
626
+ <path
627
+ stroke-linecap="round"
628
+ stroke-linejoin="round"
629
+ stroke-width="2"
630
+ d="M3 8l7.89 5.26a2 2 0 002.22 0L21 8M5 19h14a2 2 0 002-2V7a2 2 0 00-2-2H5a2 2 0 00-2 2v10a2 2 0 002 2z"
631
+ />
632
+ </svg>
633
+ <span class="ml-3">Contact Training</span>
634
+ </a>
635
+ </div>
636
+ </button>
637
+ </div>
638
+ {/if}
639
+ </div>
640
+
641
+ <!-- Company -->
642
+ <div id="company" class="relative">
643
+ <button
644
+ type="button"
645
+ on:click={() =>
646
+ openMenu == "company" ? (openMenu = "") : (openMenu = "company")}
647
+ class="group inline-flex items-center bg-white text-base font-medium text-gray-500 hover:text-gray-900 focus:outline-none focus:ring-2 focus:ring-teci-blue-light focus:ring-offset-2"
648
+ aria-expanded={openMenu == "company"}
649
+ >
650
+ <span class:text-gray-900={openMenu == "company"}>Company</span>
651
+ <svg
652
+ class="ml-2 h-5 w-5 group-hover:text-gray-900 {openMenu ===
653
+ 'company'
654
+ ? 'rotate-180 text-gray-900'
655
+ : 'text-gray-400'}"
656
+ xmlns="http://www.w3.org/2000/svg"
657
+ viewBox="0 0 20 20"
658
+ fill="currentColor"
659
+ aria-hidden="true"
660
+ >
661
+ <path
662
+ fill-rule="evenodd"
663
+ d="M5.293 7.293a1 1 0 011.414 0L10 10.586l3.293-3.293a1 1 0 111.414 1.414l-4 4a1 1 0 01-1.414 0l-4-4a1 1 0 010-1.414z"
664
+ clip-rule="evenodd"
665
+ />
666
+ </svg>
667
+ </button>
668
+
669
+ {#if openMenu == "company"}
670
+ <div
671
+ class="absolute left-1/2 z-40 mt-3 w-screen max-w-md -translate-x-1/2 transform overflow-hidden px-2 shadow-lg ring-1 ring-black ring-opacity-5 sm:px-0"
672
+ use:clickOutside
673
+ on:outclick={() => (openMenu = "")}
674
+ in:slide={{ duration: 250, easing: cubicOut }}
675
+ out:slide={{ duration: 150, easing: cubicIn }}
676
+ >
677
+ <button
678
+ on:click={() => (openMenu = "")}
679
+ class="relative grid w-full gap-6 bg-white px-5 py-6 text-left sm:gap-8 sm:p-8"
680
+ >
681
+ <a
682
+ href="https://www.thunderheadeng.com/about/"
683
+ class="-m-3 flex items-start p-3 transition duration-150 ease-in-out hover:bg-gray-50"
684
+ >
685
+ <svg
686
+ xmlns="http://www.w3.org/2000/svg"
687
+ class="h-6 w-6 text-teci-blue-light"
688
+ fill="none"
689
+ viewBox="0 0 24 24"
690
+ stroke="currentColor"
691
+ >
692
+ <path
693
+ stroke-linecap="round"
694
+ stroke-linejoin="round"
695
+ stroke-width="2"
696
+ d="M13 16h-1v-4h-1m1-4h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z"
697
+ />
698
+ </svg>
699
+ <div class="ml-4">
700
+ <p class="text-base font-medium text-gray-900">About</p>
701
+ <p class="mt-1 text-sm text-gray-500">
702
+ Learn more about Thunderhead Engineering
703
+ </p>
704
+ </div>
705
+ </a>
706
+
707
+ <a
708
+ href="https://www.thunderheadeng.com/news/"
709
+ class="-m-3 flex items-start p-3 transition duration-150 ease-in-out hover:bg-gray-50"
710
+ >
711
+ <svg
712
+ xmlns="http://www.w3.org/2000/svg"
713
+ class="h-6 w-6 flex-shrink-0 text-teci-blue-light"
714
+ fill="none"
715
+ viewBox="0 0 24 24"
716
+ stroke="currentColor"
717
+ >
718
+ <path
719
+ stroke-linecap="round"
720
+ stroke-linejoin="round"
721
+ stroke-width="2"
722
+ d="M11 5.882V19.24a1.76 1.76 0 01-3.417.592l-2.147-6.15M18 13a3 3 0 100-6M5.436 13.683A4.001 4.001 0 017 6h1.832c4.1 0 7.625-1.234 9.168-3v14c-1.543-1.766-5.067-3-9.168-3H7a3.988 3.988 0 01-1.564-.317z"
723
+ />
724
+ </svg>
725
+ <div class="ml-4">
726
+ <p class="text-base font-medium text-gray-900">News</p>
727
+ <p class="mt-1 text-sm text-gray-500">
728
+ Announcements for our products and services
729
+ </p>
730
+ </div>
731
+ </a>
732
+
733
+ <a
734
+ href="https://www.thunderheadeng.com/job-openings/"
735
+ class="-m-3 flex items-start p-3 transition duration-150 ease-in-out hover:bg-gray-50"
736
+ >
737
+ <svg
738
+ xmlns="http://www.w3.org/2000/svg"
739
+ class="h-6 w-6 flex-shrink-0 text-teci-blue-light"
740
+ fill="none"
741
+ viewBox="0 0 24 24"
742
+ stroke="currentColor"
743
+ >
744
+ <path
745
+ stroke-linecap="round"
746
+ stroke-linejoin="round"
747
+ stroke-width="2"
748
+ d="M21 13.255A23.931 23.931 0 0112 15c-3.183 0-6.22-.62-9-1.745M16 6V4a2 2 0 00-2-2h-4a2 2 0 00-2 2v2m4 6h.01M5 20h14a2 2 0 002-2V8a2 2 0 00-2-2H5a2 2 0 00-2 2v10a2 2 0 002 2z"
749
+ />
750
+ </svg>
751
+ <div class="ml-4">
752
+ <p class="text-base font-medium text-gray-900">Jobs</p>
753
+ <p class="mt-1 text-sm text-gray-500">
754
+ Become a part of the Thunderhead team
755
+ </p>
756
+ </div>
757
+ </a>
758
+
759
+ <a
760
+ href="https://www.thunderheadeng.com/partners"
761
+ class="-m-3 flex items-start p-3 transition duration-150 ease-in-out hover:bg-gray-50"
762
+ >
763
+ <svg
764
+ xmlns="http://www.w3.org/2000/svg"
765
+ class="h-6 w-6 flex-shrink-0 text-teci-blue-light"
766
+ fill="none"
767
+ viewBox="0 0 24 24"
768
+ stroke="currentColor"
769
+ >
770
+ <path
771
+ stroke-linecap="round"
772
+ stroke-linejoin="round"
773
+ stroke-width="2"
774
+ d="M21 12a9 9 0 01-9 9m9-9a9 9 0 00-9-9m9 9H3m9 9a9 9 0 01-9-9m9 9c1.657 0 3-4.03 3-9s-1.343-9-3-9m0 18c-1.657 0-3-4.03-3-9s1.343-9 3-9m-9 9a9 9 0 019-9"
775
+ />
776
+ </svg>
777
+ <div class="ml-4">
778
+ <p class="text-base font-medium text-gray-900">Partners</p>
779
+ <p class="mt-1 text-sm text-gray-500">
780
+ International reseller and distributor network
781
+ </p>
782
+ </div>
783
+ </a>
784
+ </button>
785
+ </div>
786
+ {/if}
787
+ </div>
788
+ </nav>
789
+ </div>
790
+
791
+ <!-- Search -->
792
+ <div
793
+ class="ml-2 flex flex-1 items-center justify-center md:ml-0 md:px-0 lg:justify-end"
794
+ >
795
+ <div class="w-full max-w-lg lg:max-w-xs">
796
+ <form
797
+ class="m-0"
798
+ action="https://support.thunderheadeng.com/search/"
799
+ method="get"
800
+ >
801
+ <label for="search" class="sr-only">Search</label>
802
+ <div class="relative">
803
+ <div
804
+ class="pointer-events-none absolute inset-y-0 left-0 flex items-center pl-3"
805
+ >
806
+ <svg
807
+ class="h-5 w-5 text-gray-400"
808
+ xmlns="http://www.w3.org/2000/svg"
809
+ viewBox="0 0 20 20"
810
+ fill="currentColor"
811
+ aria-hidden="true"
812
+ >
813
+ <path
814
+ fill-rule="evenodd"
815
+ d="M8 4a4 4 0 100 8 4 4 0 000-8zM2 8a6 6 0 1110.89 3.476l4.817 4.817a1 1 0 01-1.414 1.414l-4.816-4.816A6 6 0 012 8z"
816
+ clip-rule="evenodd"
817
+ />
818
+ </svg>
819
+ </div>
820
+ <input
821
+ id="search"
822
+ name="teci-search[query]"
823
+ placeholder="Search"
824
+ type="search"
825
+ class="m-0 block w-full rounded-none border border-gray-300 bg-white py-2 pl-10 pr-3 placeholder-gray-500 focus:border-teci-blue-light focus:placeholder-gray-400 focus:outline-none focus:ring-1 focus:ring-teci-blue-light sm:text-sm"
826
+ />
827
+ </div>
828
+ </form>
829
+ </div>
830
+ </div>
831
+
832
+ <!-- Application Buttons -->
833
+ <div class="px-2">
834
+ <div class="flex items-center justify-between">
835
+ <div class="mr-2 md:mr-4">
836
+ <a
837
+ href="https://cart.thunderheadeng.com/cgi-bin/UCEditor?merchantId=THENG"
838
+ title="Shopping Cart"
839
+ >
840
+ <svg
841
+ xmlns="http://www.w3.org/2000/svg"
842
+ class="h-6 w-6 flex-shrink-0 text-gray-500 md:h-8 md:w-8"
843
+ fill="none"
844
+ viewBox="0 0 24 24"
845
+ stroke="currentColor"
846
+ >
847
+ <path
848
+ stroke-linecap="round"
849
+ stroke-linejoin="round"
850
+ stroke-width="2"
851
+ d="M3 3h2l.4 2M7 13h10l4-8H5.4M7 13L5.4 5M7 13l-2.293 2.293c-.63.63-.184 1.707.707 1.707H17m0 0a2 2 0 100 4 2 2 0 000-4zm-8 2a2 2 0 11-4 0 2 2 0 014 0z"
852
+ />
853
+ </svg>
854
+ </a>
855
+ </div>
856
+ <div>
857
+ <a
858
+ href="https://cart.thunderheadeng.com/cgi-bin/UCMyAccount"
859
+ title="My Account"
860
+ >
861
+ <svg
862
+ xmlns="http://www.w3.org/2000/svg"
863
+ class="h-6 w-6 flex-shrink-0 text-gray-500 md:h-8 md:w-8"
864
+ fill="none"
865
+ viewBox="0 0 24 24"
866
+ stroke="currentColor"
867
+ >
868
+ <path
869
+ stroke-linecap="round"
870
+ stroke-linejoin="round"
871
+ stroke-width="2"
872
+ d="M5.121 17.804A13.937 13.937 0 0112 16c2.5 0 4.847.655 6.879 1.804M15 10a3 3 0 11-6 0 3 3 0 016 0zm6 2a9 9 0 11-18 0 9 9 0 0118 0z"
873
+ />
874
+ </svg>
875
+ </a>
876
+ </div>
877
+ </div>
878
+ </div>
879
+
880
+ <!-- Mobile Menu Button-->
881
+ <div class="md:hidden">
882
+ <button
883
+ type="button"
884
+ on:click={() => (openMenu = "mobile")}
885
+ class="inline-flex items-center justify-center border border-gray-200 bg-white p-2 text-gray-400 hover:bg-gray-100 hover:text-gray-500 focus:outline-none focus:ring-2 focus:ring-inset focus:ring-teci-blue-light"
886
+ aria-expanded={openMenu == "mobile"}
887
+ >
888
+ <span class="sr-only">Open mobile menu</span>
889
+
890
+ <svg
891
+ class="h-6 w-6"
892
+ xmlns="http://www.w3.org/2000/svg"
893
+ fill="none"
894
+ viewBox="0 0 24 24"
895
+ stroke="currentColor"
896
+ aria-hidden="true"
897
+ >
898
+ <path
899
+ stroke-linecap="round"
900
+ stroke-linejoin="round"
901
+ stroke-width="2"
902
+ d="M4 6h16M4 12h16M4 18h16"
903
+ />
904
+ </svg>
905
+ </button>
906
+ </div>
907
+ </div>
908
+
909
+ <!-- Mobile menu, show/hide based on mobile menu state.-->
910
+ {#if openMenu == "mobile"}
911
+ <div
912
+ class="absolute inset-x-0 top-0 z-30 divide-y-2 divide-gray-50 bg-white shadow-lg ring-1 ring-black ring-opacity-5 md:hidden"
913
+ use:clickOutside
914
+ on:outclick={() => (openMenu = "")}
915
+ in:slide={{ duration: 250, easing: cubicOut }}
916
+ out:slide={{ duration: 150, easing: cubicIn }}
917
+ >
918
+ <div class="px-4 pt-5 pb-6 sm:pb-8">
919
+ <div class="flex items-center justify-between">
920
+ <a
921
+ on:click={() => (openMenu = "")}
922
+ class="block"
923
+ href="https://www.thunderheadeng.com"
924
+ >
925
+ <img
926
+ class="h-10 w-auto"
927
+ src="https://files.thunderheadeng.com/www/images/teci_logo.svg"
928
+ alt="Thunderhead Engineering"
929
+ />
930
+ </a>
931
+
932
+ <button
933
+ type="button"
934
+ on:click={() => (openMenu = "")}
935
+ class="inline-flex items-center justify-center border border-gray-200 bg-white p-2 text-gray-400 hover:bg-gray-100 hover:text-gray-500 focus:outline-none focus:ring-2 focus:ring-inset focus:ring-teci-blue-light"
936
+ >
937
+ <span class="sr-only">Close menu</span>
938
+
939
+ <svg
940
+ class="h-6 w-6"
941
+ xmlns="http://www.w3.org/2000/svg"
942
+ fill="none"
943
+ viewBox="0 0 24 24"
944
+ stroke="currentColor"
945
+ aria-hidden="true"
946
+ >
947
+ <path
948
+ stroke-linecap="round"
949
+ stroke-linejoin="round"
950
+ stroke-width="2"
951
+ d="M6 18L18 6M6 6l12 12"
952
+ />
953
+ </svg>
954
+ </button>
955
+ </div>
956
+ <button on:click={() => (openMenu = "")} class="mt-6 w-full sm:mt-8">
957
+ <nav>
958
+ <div class="grid gap-7 sm:grid-cols-2 sm:gap-y-8 sm:gap-x-4">
959
+ <a href="/" class="-m-3 flex items-center p-3 hover:bg-gray-50">
960
+ <div
961
+ class="flex h-10 w-10 flex-shrink-0 items-center justify-center bg-teci-blue-light text-white sm:h-12 sm:w-12"
962
+ >
963
+ <svg
964
+ xmlns="http://www.w3.org/2000/svg"
965
+ class="h-6 w-6"
966
+ fill="none"
967
+ viewBox="0 0 24 24"
968
+ stroke="currentColor"
969
+ >
970
+ <path
971
+ stroke-linecap="round"
972
+ stroke-linejoin="round"
973
+ stroke-width="2"
974
+ d="M19 11H5m14 0a2 2 0 012 2v6a2 2 0 01-2 2H5a2 2 0 01-2-2v-6a2 2 0 012-2m14 0V9a2 2 0 00-2-2M5 11V9a2 2 0 012-2m0 0V5a2 2 0 012-2h6a2 2 0 012 2v2M7 7h10"
975
+ />
976
+ </svg>
977
+ </div>
978
+ <div class="ml-4 text-base font-medium text-gray-900">
979
+ Products
980
+ </div>
981
+ </a>
982
+ <a
983
+ href="https://support.thunderheadeng.com"
984
+ class="-m-3 flex items-center p-3 hover:bg-gray-50"
985
+ >
986
+ <div
987
+ class="flex h-10 w-10 flex-shrink-0 items-center justify-center bg-teci-blue-light text-white sm:h-12 sm:w-12"
988
+ >
989
+ <svg
990
+ xmlns="http://www.w3.org/2000/svg"
991
+ class="h-6 w-6"
992
+ fill="none"
993
+ viewBox="0 0 24 24"
994
+ stroke="currentColor"
995
+ >
996
+ <path
997
+ stroke-linecap="round"
998
+ stroke-linejoin="round"
999
+ stroke-width="2"
1000
+ d="M18.364 5.636l-3.536 3.536m0 5.656l3.536 3.536M9.172 9.172L5.636 5.636m3.536 9.192l-3.536 3.536M21 12a9 9 0 11-18 0 9 9 0 0118 0zm-5 0a4 4 0 11-8 0 4 4 0 018 0z"
1001
+ />
1002
+ </svg>
1003
+ </div>
1004
+ <div class="ml-4 text-base font-medium text-gray-900">
1005
+ Support
1006
+ </div>
1007
+ </a>
1008
+ <a
1009
+ href="https://www.thunderheadeng.com/training/"
1010
+ class="-m-3 flex items-center p-3 hover:bg-gray-50"
1011
+ >
1012
+ <div
1013
+ class="flex h-10 w-10 flex-shrink-0 items-center justify-center bg-teci-blue-light text-white sm:h-12 sm:w-12"
1014
+ >
1015
+ <svg
1016
+ xmlns="http://www.w3.org/2000/svg"
1017
+ class="h-6 w-6"
1018
+ fill="none"
1019
+ viewBox="0 0 24 24"
1020
+ stroke="currentColor"
1021
+ >
1022
+ <path
1023
+ stroke-linecap="round"
1024
+ stroke-linejoin="round"
1025
+ stroke-width="2"
1026
+ d="M8 7V3m8 4V3m-9 8h10M5 21h14a2 2 0 002-2V7a2 2 0 00-2-2H5a2 2 0 00-2 2v12a2 2 0 002 2z"
1027
+ />
1028
+ </svg>
1029
+ </div>
1030
+ <div class="ml-4 text-base font-medium text-gray-900">
1031
+ Training
1032
+ </div>
1033
+ </a>
1034
+ <a
1035
+ href="https://www.femtc.com/"
1036
+ class="-m-3 flex items-center p-3 hover:bg-gray-50"
1037
+ >
1038
+ <div
1039
+ class="flex h-10 w-10 flex-shrink-0 items-center justify-center bg-teci-blue-light text-white sm:h-12 sm:w-12"
1040
+ >
1041
+ <svg
1042
+ xmlns="http://www.w3.org/2000/svg"
1043
+ class="h-6 w-6"
1044
+ fill="none"
1045
+ viewBox="0 0 24 24"
1046
+ stroke="currentColor"
1047
+ ><path
1048
+ stroke-linecap="round"
1049
+ stroke-linejoin="round"
1050
+ stroke-width="2"
1051
+ d="M7 12l3-3 3 3 4-4M8 21l4-4 4 4M3 4h18M4 4h16v12a1 1 0 01-1 1H5a1 1 0 01-1-1V4z"
1052
+ /></svg
1053
+ >
1054
+ </div>
1055
+ <div class="ml-4 text-base font-medium text-gray-900">
1056
+ FEMTC
1057
+ </div>
1058
+ </a>
1059
+ <a
1060
+ href="https://www.thunderheadeng.com/about/"
1061
+ class="-m-3 flex items-center p-3 hover:bg-gray-50"
1062
+ >
1063
+ <div
1064
+ class="flex h-10 w-10 flex-shrink-0 items-center justify-center bg-teci-blue-light text-white sm:h-12 sm:w-12"
1065
+ >
1066
+ <svg
1067
+ xmlns="http://www.w3.org/2000/svg"
1068
+ class="h-6 w-6"
1069
+ fill="none"
1070
+ viewBox="0 0 24 24"
1071
+ stroke="currentColor"
1072
+ >
1073
+ <path
1074
+ stroke-linecap="round"
1075
+ stroke-linejoin="round"
1076
+ stroke-width="2"
1077
+ d="M14.828 14.828a4 4 0 01-5.656 0M9 10h.01M15 10h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z"
1078
+ />
1079
+ </svg>
1080
+ </div>
1081
+ <div class="ml-4 text-base font-medium text-gray-900">
1082
+ Company
1083
+ </div>
1084
+ </a>
1085
+ </div>
1086
+ </nav>
1087
+ </button>
1088
+ </div>
1089
+ <button
1090
+ on:click={() => (openMenu = "")}
1091
+ class="w-full py-6 px-5 text-left"
1092
+ >
1093
+ <div class="grid grid-cols-2 gap-4">
1094
+ <div class="flow-root">
1095
+ <a
1096
+ href="https://www.thunderheadeng.com/news"
1097
+ class="-m-3 flex items-start p-3 text-base font-medium text-gray-900 hover:bg-gray-100"
1098
+ >
1099
+ <svg
1100
+ xmlns="http://www.w3.org/2000/svg"
1101
+ class="h-6 w-6 flex-shrink-0 text-gray-400"
1102
+ fill="none"
1103
+ viewBox="0 0 24 24"
1104
+ stroke="currentColor"
1105
+ >
1106
+ <path
1107
+ stroke-linecap="round"
1108
+ stroke-linejoin="round"
1109
+ stroke-width="2"
1110
+ d="M11 5.882V19.24a1.76 1.76 0 01-3.417.592l-2.147-6.15M18 13a3 3 0 100-6M5.436 13.683A4.001 4.001 0 017 6h1.832c4.1 0 7.625-1.234 9.168-3v14c-1.543-1.766-5.067-3-9.168-3H7a3.988 3.988 0 01-1.564-.317z"
1111
+ />
1112
+ </svg>
1113
+ <span class="ml-3">News</span>
1114
+ </a>
1115
+ </div>
1116
+ <div class="flow-root">
1117
+ <a
1118
+ href="https://support.thunderheadeng.com/release-notes"
1119
+ class="-m-3 flex items-start p-3 text-base font-medium text-gray-900 hover:bg-gray-100"
1120
+ >
1121
+ <svg
1122
+ xmlns="http://www.w3.org/2000/svg"
1123
+ class="h-6 w-6 flex-shrink-0 text-gray-400"
1124
+ fill="none"
1125
+ viewBox="0 0 24 24"
1126
+ stroke="currentColor"
1127
+ >
1128
+ <path
1129
+ stroke-linecap="round"
1130
+ stroke-linejoin="round"
1131
+ stroke-width="2"
1132
+ d="M9 12h6m-6 4h6m2 5H7a2 2 0 01-2-2V5a2 2 0 012-2h5.586a1 1 0 01.707.293l5.414 5.414a1 1 0 01.293.707V19a2 2 0 01-2 2z"
1133
+ />
1134
+ </svg>
1135
+ <span class="ml-3">Release Notes</span>
1136
+ </a>
1137
+ </div>
1138
+ <div class="flow-root">
1139
+ <a
1140
+ href="https://store2.thunderheadeng.com/cart"
1141
+ class="-m-3 flex items-start p-3 text-base font-medium text-gray-900 hover:bg-gray-100"
1142
+ >
1143
+ <svg
1144
+ xmlns="http://www.w3.org/2000/svg"
1145
+ class="h-6 w-6 flex-shrink-0 text-gray-400"
1146
+ fill="none"
1147
+ viewBox="0 0 24 24"
1148
+ stroke="currentColor"
1149
+ >
1150
+ <path
1151
+ stroke-linecap="round"
1152
+ stroke-linejoin="round"
1153
+ stroke-width="2"
1154
+ d="M3 3h2l.4 2M7 13h10l4-8H5.4M7 13L5.4 5M7 13l-2.293 2.293c-.63.63-.184 1.707.707 1.707H17m0 0a2 2 0 100 4 2 2 0 000-4zm-8 2a2 2 0 11-4 0 2 2 0 014 0z"
1155
+ />
1156
+ </svg>
1157
+ <span class="ml-3">Order Online</span>
1158
+ </a>
1159
+ </div>
1160
+ <div class="flow-root">
1161
+ <a
1162
+ href="https://store2.thunderheadeng.com/trial/"
1163
+ class="-m-3 flex items-start p-3 text-base font-medium text-gray-900 hover:bg-gray-100"
1164
+ >
1165
+ <svg
1166
+ xmlns="http://www.w3.org/2000/svg"
1167
+ class="h-6 w-6 flex-shrink-0 text-gray-400"
1168
+ fill="none"
1169
+ viewBox="0 0 24 24"
1170
+ stroke="currentColor"
1171
+ >
1172
+ <path
1173
+ stroke-linecap="round"
1174
+ stroke-linejoin="round"
1175
+ stroke-width="2"
1176
+ d="M12 8v4l3 3m6-3a9 9 0 11-18 0 9 9 0 0118 0z"
1177
+ />
1178
+ </svg>
1179
+ <span class="ml-3">30-day Trial</span>
1180
+ </a>
1181
+ </div>
1182
+ <div class="flow-root">
1183
+ <a
1184
+ href="mailto:sales@thunderheadeng.com"
1185
+ class="-m-3 flex items-start p-3 text-base font-medium text-gray-900 hover:bg-gray-100"
1186
+ >
1187
+ <svg
1188
+ xmlns="http://www.w3.org/2000/svg"
1189
+ class="h-6 w-6 flex-shrink-0 text-gray-400"
1190
+ fill="none"
1191
+ viewBox="0 0 24 24"
1192
+ stroke="currentColor"
1193
+ >
1194
+ <path
1195
+ stroke-linecap="round"
1196
+ stroke-linejoin="round"
1197
+ stroke-width="2"
1198
+ d="M3 8l7.89 5.26a2 2 0 002.22 0L21 8M5 19h14a2 2 0 002-2V7a2 2 0 00-2-2H5a2 2 0 00-2 2v10a2 2 0 002 2z"
1199
+ />
1200
+ </svg>
1201
+ <span class="ml-3">Sales</span>
1202
+ </a>
1203
+ </div>
1204
+ <div class="flow-root">
1205
+ <a
1206
+ href="mailto:support@thunderheadeng.com"
1207
+ class="-m-3 flex items-start p-3 text-base font-medium text-gray-900 hover:bg-gray-100"
1208
+ >
1209
+ <svg
1210
+ xmlns="http://www.w3.org/2000/svg"
1211
+ class="h-6 w-6 flex-shrink-0 text-gray-400"
1212
+ fill="none"
1213
+ viewBox="0 0 24 24"
1214
+ stroke="currentColor"
1215
+ >
1216
+ <path
1217
+ stroke-linecap="round"
1218
+ stroke-linejoin="round"
1219
+ stroke-width="2"
1220
+ d="M3 8l7.89 5.26a2 2 0 002.22 0L21 8M5 19h14a2 2 0 002-2V7a2 2 0 00-2-2H5a2 2 0 00-2 2v10a2 2 0 002 2z"
1221
+ />
1222
+ </svg>
1223
+ <span class="ml-3">Support</span>
1224
+ </a>
1225
+ </div>
1226
+ </div>
1227
+ </button>
1228
+ </div>
1229
+ {/if}
1230
+ </header>