@luxfi/ui 5.3.7 → 5.3.9

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 (180) hide show
  1. package/commerce/ui/conf.ts +13 -13
  2. package/commerce/ui/context.tsx +123 -123
  3. package/commerce/ui/store.ts +289 -289
  4. package/components/access-code-input.tsx +71 -71
  5. package/components/auth/auth-listener.tsx +29 -29
  6. package/components/auth/auth-token/clear-auth-token.tsx +12 -12
  7. package/components/auth/auth-token/set-auth-token.tsx +16 -16
  8. package/components/auth/common-auth-domains.ts +16 -16
  9. package/components/auth/login-panel.tsx +116 -107
  10. package/components/auth/signup-panel.tsx +119 -0
  11. package/components/back-button.tsx +49 -49
  12. package/components/chat-widget.tsx +85 -85
  13. package/components/commerce/_to_deprecate_checkout-widget/const.ts +13 -13
  14. package/components/commerce/_to_deprecate_checkout-widget/index.tsx_ +188 -188
  15. package/components/commerce/_to_deprecate_checkout-widget/obs-string-set.ts +48 -48
  16. package/components/commerce/_to_deprecate_checkout-widget/use-anim-clx-set.ts +58 -58
  17. package/components/commerce/bag-button.tsx +98 -98
  18. package/components/commerce/buy-button.tsx +34 -34
  19. package/components/commerce/checkout-button.tsx +129 -129
  20. package/components/commerce/checkout-panel/cart-accordian.tsx +66 -66
  21. package/components/commerce/checkout-panel/checkout-panel-props.ts +9 -9
  22. package/components/commerce/checkout-panel/desktop-bag-carousel.tsx +36 -36
  23. package/components/commerce/checkout-panel/desktop-cp.tsx +82 -82
  24. package/components/commerce/checkout-panel/index.tsx +126 -126
  25. package/components/commerce/checkout-panel/mobile-cp.tsx +66 -66
  26. package/components/commerce/checkout-panel/policy-links.tsx +29 -29
  27. package/components/commerce/checkout-panel/steps-indicator.tsx +39 -39
  28. package/components/commerce/checkout-panel/thank-you.tsx +18 -18
  29. package/components/commerce/desktop-bag-popup.tsx +78 -78
  30. package/components/commerce/desktop-nav-menu.tsx +194 -194
  31. package/components/commerce/drawer/index.tsx +88 -88
  32. package/components/commerce/drawer/micro.tsx +145 -145
  33. package/components/commerce/drawer/shell.tsx +85 -85
  34. package/components/commerce/mobile-bag-drawer.tsx +51 -51
  35. package/components/commerce/mobile-login-button.tsx +107 -107
  36. package/components/commerce/mobile-menu-toggle-button.tsx +35 -35
  37. package/components/commerce/mobile-nav-menu-ai.tsx +50 -50
  38. package/components/commerce/mobile-nav-menu-item.tsx +49 -49
  39. package/components/commerce/mobile-nav-menu.tsx +101 -101
  40. package/components/contact-dialog/contact-form.tsx +113 -113
  41. package/components/contact-dialog/disclaimer.tsx +13 -13
  42. package/components/contact-dialog/index.tsx +64 -64
  43. package/components/copyright.tsx +21 -21
  44. package/components/drawer-margin.tsx +28 -28
  45. package/components/footer.tsx +77 -77
  46. package/components/header/desktop.tsx +51 -51
  47. package/components/header/index.tsx +50 -50
  48. package/components/header/mobile.tsx +163 -163
  49. package/components/header/theme-toggle.tsx +26 -26
  50. package/components/icons/24k-gold-card.tsx +43 -43
  51. package/components/icons/ai-chat-act.tsx +47 -47
  52. package/components/icons/ai-chat.tsx +29 -29
  53. package/components/icons/anodized-titanium.tsx +45 -45
  54. package/components/icons/avatar.tsx +11 -11
  55. package/components/icons/bag-icon.tsx +10 -10
  56. package/components/icons/blog-act.tsx +14 -14
  57. package/components/icons/blog.tsx +20 -20
  58. package/components/icons/bridge-act.tsx +18 -18
  59. package/components/icons/bridge.tsx +68 -68
  60. package/components/icons/changelog-act.tsx +15 -15
  61. package/components/icons/changelog.tsx +21 -21
  62. package/components/icons/chrome.tsx +45 -45
  63. package/components/icons/coins-act.tsx +29 -29
  64. package/components/icons/coins.tsx +20 -20
  65. package/components/icons/compare-cards-act.tsx +30 -30
  66. package/components/icons/compare-cards.tsx +21 -21
  67. package/components/icons/credit-act.tsx +29 -29
  68. package/components/icons/credit.tsx +20 -20
  69. package/components/icons/customer-support-act.tsx +27 -27
  70. package/components/icons/customer-support.tsx +21 -21
  71. package/components/icons/customers-act.tsx +65 -65
  72. package/components/icons/customers.tsx +33 -33
  73. package/components/icons/developer-docs-act.tsx +26 -26
  74. package/components/icons/developer-docs.tsx +20 -20
  75. package/components/icons/exchange-act.tsx +27 -27
  76. package/components/icons/exchange.tsx +21 -21
  77. package/components/icons/explorer-act.tsx +27 -27
  78. package/components/icons/explorer.tsx +22 -22
  79. package/components/icons/faqs-act.tsx +27 -27
  80. package/components/icons/faqs.tsx +21 -21
  81. package/components/icons/github.tsx +14 -14
  82. package/components/icons/guides-act.tsx +26 -26
  83. package/components/icons/guides.tsx +21 -21
  84. package/components/icons/gun-metal.tsx +44 -44
  85. package/components/icons/index.tsx +43 -43
  86. package/components/icons/integrations-act.tsx +41 -41
  87. package/components/icons/integrations.tsx +25 -25
  88. package/components/icons/irradescent.tsx +41 -41
  89. package/components/icons/launch-subnet.tsx +21 -21
  90. package/components/icons/launchsubnet-act.tsx +29 -29
  91. package/components/icons/left-arrow.tsx +11 -11
  92. package/components/icons/lux-finance-act.tsx +34 -34
  93. package/components/icons/lux-finance.tsx +23 -23
  94. package/components/icons/lux-logo.tsx +10 -10
  95. package/components/icons/lux-pass-act.tsx +41 -41
  96. package/components/icons/lux-pass.tsx +25 -25
  97. package/components/icons/lux-quests-act.tsx +15 -15
  98. package/components/icons/lux-quests.tsx +21 -21
  99. package/components/icons/market-act.tsx +39 -39
  100. package/components/icons/market.tsx +24 -24
  101. package/components/icons/mirrored-titanium.tsx +46 -46
  102. package/components/icons/more-benefits-act.tsx +29 -29
  103. package/components/icons/more-benefits.tsx +21 -21
  104. package/components/icons/open-source-act.tsx +41 -41
  105. package/components/icons/open-source.tsx +26 -26
  106. package/components/icons/right-arrow.tsx +10 -10
  107. package/components/icons/safe-act.tsx +77 -77
  108. package/components/icons/safe.tsx +37 -37
  109. package/components/icons/search.tsx +12 -12
  110. package/components/icons/secure-delivery.tsx +13 -13
  111. package/components/icons/shop-act.tsx +29 -29
  112. package/components/icons/shop.tsx +20 -20
  113. package/components/icons/social-icon.tsx +35 -35
  114. package/components/icons/social-svg.css +3 -3
  115. package/components/icons/sterling-silver-card.tsx +44 -44
  116. package/components/icons/templates-act.tsx +29 -29
  117. package/components/icons/templates.tsx +21 -21
  118. package/components/icons/validators-act.tsx +42 -42
  119. package/components/icons/validators.tsx +41 -41
  120. package/components/icons/view-all-card-act.tsx +28 -28
  121. package/components/icons/view-all-card.tsx +20 -20
  122. package/components/icons/wallet-act.tsx +29 -29
  123. package/components/icons/wallet.tsx +20 -20
  124. package/components/icons/warpcast.tsx +58 -58
  125. package/components/icons/youtube-logo.tsx +59 -59
  126. package/components/index.ts +26 -25
  127. package/components/logo.tsx +89 -89
  128. package/components/main.tsx +27 -27
  129. package/components/mini-chart/index.tsx +7 -7
  130. package/components/mini-chart/mini-chart-props.ts +43 -43
  131. package/components/mini-chart/mini-chart.tsx +85 -85
  132. package/components/mini-chart/wrapper.tsx +23 -23
  133. package/components/not-found/index.tsx +28 -28
  134. package/components/not-found/not-found-content.mdx +5 -5
  135. package/components/scripts.tsx +24 -24
  136. package/components/tooltip.tsx +31 -31
  137. package/environment.d.ts +5 -5
  138. package/next/analytics/fpixel.ts +15 -15
  139. package/next/analytics/google-analytics.ts +13 -13
  140. package/next/analytics/index.ts +3 -3
  141. package/next/analytics/pixel-analytics.tsx +54 -54
  142. package/next/font/get-app-router-font-classes.ts +12 -12
  143. package/next/font/load-and-return-lux-next-fonts-on-import.ts +68 -68
  144. package/next/font/next-font-desc.ts +27 -27
  145. package/next/font/pages-router-font-vars.tsx +18 -18
  146. package/next/head-metadata/from-next/metadata-types.ts +158 -158
  147. package/next/head-metadata/from-next/opengraph-types.ts +267 -267
  148. package/next/head-metadata/from-next/twitter-types.ts +92 -92
  149. package/next/head-metadata/index.tsx +208 -208
  150. package/next/middleware/determine-device-mw.ts +29 -16
  151. package/package.json +80 -80
  152. package/root-layout/WHY_THIS_IS_SEPARATE.txt +1 -1
  153. package/root-layout/index.tsx +112 -112
  154. package/server-actions/firebase-app.ts +14 -14
  155. package/server-actions/index.ts +5 -5
  156. package/server-actions/store-contact.ts +51 -51
  157. package/site-def/footer/community.tsx +67 -67
  158. package/site-def/footer/company.ts +37 -37
  159. package/site-def/footer/ecosystem.ts +37 -37
  160. package/site-def/footer/index.tsx +26 -26
  161. package/site-def/footer/legal.ts +28 -28
  162. package/site-def/footer/network.ts +45 -45
  163. package/site-def/footer/svg/warpcast-logo.svg +11 -11
  164. package/site-def/index.ts +2 -2
  165. package/site-def/main-nav.tsx +458 -458
  166. package/style/cart-animation.css +29 -29
  167. package/style/checkout-animation.css +23 -23
  168. package/style/drawer-handle-overrides.css +160 -160
  169. package/style/lux-colors.css +85 -85
  170. package/style/lux-global.css +50 -50
  171. package/tailwind/fontFamily.tailwind.lux.ts +18 -18
  172. package/tailwind/index.ts +2 -2
  173. package/tailwind/lux-tw-fonts.ts +39 -39
  174. package/tailwind/tailwind.config.lux-preset.ts +10 -10
  175. package/tsconfig.json +15 -15
  176. package/types/chatbot-config.ts +6 -6
  177. package/types/chatbot-suggested-question.ts +7 -7
  178. package/types/contact-info.ts +10 -10
  179. package/types/index.ts +4 -4
  180. package/types/site-def.ts +43 -43
@@ -1,51 +1,51 @@
1
- /* Note, preflight is applied first:
2
- https://unpkg.com/tailwindcss@3.3.5/src/css/preflight.css
3
- */
4
- @import "tailwindcss/base";
5
-
6
- /* see https://stackoverflow.com/questions/69746121/using-nextjs-how-can-you-import-in-css-using-tailwind-css */
7
- @import "@hanzo/ui/style/hanzo-common";
8
- @import "lux-colors";
9
-
10
- @import "tailwindcss/components";
11
- @import "tailwindcss/utilities";
12
-
13
- div.nextjs-toast-errors-parent[data-nextjs-toast="true"] {
14
- display: none;
15
- }
16
-
17
- .font-heading {
18
- @apply uppercase;
19
- }
20
-
21
- /* Specific style fixes for react-square-web-payments-sdk -
22
- * reduce gap between card input and pay button
23
- */
24
- #rswps-card-container {
25
- min-height: unset !important;
26
- }
27
-
28
- .sq-card-wrapper .sq-card-message {
29
- margin-top: 0 !important;
30
- margin-bottom: 0 !important;
31
- }
32
-
33
-
34
- .element-container:hover .icon-container-nor {
35
- display: none;
36
- }
37
-
38
- .icon-container-hov {
39
- display: none;
40
- }
41
-
42
- .element-container:hover .icon-container-hov {
43
- display: block !important;
44
- }
45
-
46
- .element-container:hover .text-container {
47
- background: transparent;
48
- }
49
- .overflow-scroll::-webkit-scrollbar{
50
- display:none;
1
+ /* Note, preflight is applied first:
2
+ https://unpkg.com/tailwindcss@3.3.5/src/css/preflight.css
3
+ */
4
+ @import "tailwindcss/base";
5
+
6
+ /* see https://stackoverflow.com/questions/69746121/using-nextjs-how-can-you-import-in-css-using-tailwind-css */
7
+ @import "@hanzo/ui/style/hanzo-common";
8
+ @import "lux-colors";
9
+
10
+ @import "tailwindcss/components";
11
+ @import "tailwindcss/utilities";
12
+
13
+ div.nextjs-toast-errors-parent[data-nextjs-toast="true"] {
14
+ display: none;
15
+ }
16
+
17
+ .font-heading {
18
+ @apply uppercase;
19
+ }
20
+
21
+ /* Specific style fixes for react-square-web-payments-sdk -
22
+ * reduce gap between card input and pay button
23
+ */
24
+ #rswps-card-container {
25
+ min-height: unset !important;
26
+ }
27
+
28
+ .sq-card-wrapper .sq-card-message {
29
+ margin-top: 0 !important;
30
+ margin-bottom: 0 !important;
31
+ }
32
+
33
+
34
+ .element-container:hover .icon-container-nor {
35
+ display: none;
36
+ }
37
+
38
+ .icon-container-hov {
39
+ display: none;
40
+ }
41
+
42
+ .element-container:hover .icon-container-hov {
43
+ display: block !important;
44
+ }
45
+
46
+ .element-container:hover .text-container {
47
+ background: transparent;
48
+ }
49
+ .overflow-scroll::-webkit-scrollbar{
50
+ display:none;
51
51
  }
@@ -1,18 +1,18 @@
1
- import type { TwFontDesc } from '@hanzo/ui/tailwind'
2
-
3
- import luxTwFonts from './lux-tw-fonts'
4
-
5
- export const fontFamily = (ignoreTheme: any): {
6
- [key: string]: string[]
7
- } => {
8
-
9
- let result: any = {}
10
- luxTwFonts.forEach((font: TwFontDesc) => {
11
- result[font.twName] = font.fontFamily
12
- // eg: heading: ['var(--font-druk-text-wide)']
13
- })
14
-
15
- return result as {
16
- [key: string]: string[]
17
- }
18
- }
1
+ import type { TwFontDesc } from '@hanzo/ui/tailwind'
2
+
3
+ import luxTwFonts from './lux-tw-fonts'
4
+
5
+ export const fontFamily = (ignoreTheme: any): {
6
+ [key: string]: string[]
7
+ } => {
8
+
9
+ let result: any = {}
10
+ luxTwFonts.forEach((font: TwFontDesc) => {
11
+ result[font.twName] = font.fontFamily
12
+ // eg: heading: ['var(--font-druk-text-wide)']
13
+ })
14
+
15
+ return result as {
16
+ [key: string]: string[]
17
+ }
18
+ }
package/tailwind/index.ts CHANGED
@@ -1,2 +1,2 @@
1
-
2
- export {default as preset} from './tailwind.config.lux-preset'
1
+
2
+ export {default as preset} from './tailwind.config.lux-preset'
@@ -1,40 +1,40 @@
1
- import type { TwFontDesc } from '@hanzo/ui/tailwind'
2
-
3
-
4
- /* NOTE: /next/load-and-return....ts depends on this file! */
5
-
6
- export default [
7
- {
8
- fontFamily: ['var(--font-inter)'], // do not provide fall-backs due to next bug
9
- cssVar: '--font-inter',
10
- twName: 'sans'
11
- },
12
- {
13
- fontFamily: ['var(--font-druk-text-wide)'], // do not provide fall-backs due to next bug
14
- cssVar: '--font-druk-text-wide',
15
- twName: 'nav'
16
- },
17
- {
18
- fontFamily: ['var(--font-druk-wide)'], // do not provide fall-backs due to next bug
19
- cssVar: '--font-druk-wide',
20
- twName: 'heading'
21
- },
22
- {
23
- twName: 'serif',
24
- fontFamily: ['ui-serif', 'Georgia', 'Cambria', '"Times New Roman"', 'Times']
25
- },
26
- {
27
- twName: 'mono',
28
- fontFamily: [
29
- 'ui-monospace',
30
- 'SFMono-Regular',
31
- 'Menlo',
32
- 'Monaco',
33
- 'Consolas',
34
- '"Liberation Mono"',
35
- '"Courier New"',
36
- 'monospace',
37
- ]
38
- }
39
-
1
+ import type { TwFontDesc } from '@hanzo/ui/tailwind'
2
+
3
+
4
+ /* NOTE: /next/load-and-return....ts depends on this file! */
5
+
6
+ export default [
7
+ {
8
+ fontFamily: ['var(--font-inter)'], // do not provide fall-backs due to next bug
9
+ cssVar: '--font-inter',
10
+ twName: 'sans'
11
+ },
12
+ {
13
+ fontFamily: ['var(--font-druk-text-wide)'], // do not provide fall-backs due to next bug
14
+ cssVar: '--font-druk-text-wide',
15
+ twName: 'nav'
16
+ },
17
+ {
18
+ fontFamily: ['var(--font-druk-wide)'], // do not provide fall-backs due to next bug
19
+ cssVar: '--font-druk-wide',
20
+ twName: 'heading'
21
+ },
22
+ {
23
+ twName: 'serif',
24
+ fontFamily: ['ui-serif', 'Georgia', 'Cambria', '"Times New Roman"', 'Times']
25
+ },
26
+ {
27
+ twName: 'mono',
28
+ fontFamily: [
29
+ 'ui-monospace',
30
+ 'SFMono-Regular',
31
+ 'Menlo',
32
+ 'Monaco',
33
+ 'Consolas',
34
+ '"Liberation Mono"',
35
+ '"Courier New"',
36
+ 'monospace',
37
+ ]
38
+ }
39
+
40
40
  ] as TwFontDesc[]
@@ -1,10 +1,10 @@
1
- import type { Config } from 'tailwindcss'
2
- import { preset } from '@hanzo/ui/tailwind'
3
- import { fontFamily } from './fontFamily.tailwind.lux'
4
-
5
- export default {
6
- presets: [preset],
7
- content: [],
8
- theme: { fontFamily }
9
- } satisfies Config
10
-
1
+ import type { Config } from 'tailwindcss'
2
+ import { preset } from '@hanzo/ui/tailwind'
3
+ import { fontFamily } from './fontFamily.tailwind.lux'
4
+
5
+ export default {
6
+ presets: [preset],
7
+ content: [],
8
+ theme: { fontFamily }
9
+ } satisfies Config
10
+
package/tsconfig.json CHANGED
@@ -1,15 +1,15 @@
1
- {
2
- "extends": "../tsconfig.modules.base.json",
3
- "include": [
4
- "**/*.ts",
5
- "**/*.tsx", "components/commerce/_to_deprecate_checkout-widget/index.tsx_",
6
- ],
7
- "exclude": [
8
- "node_modules",
9
- ],
10
- "compilerOptions": {
11
- "paths": {
12
- "react": [ "./node_modules/@types/react" ],
13
- }
14
- }
15
- }
1
+ {
2
+ "extends": "../tsconfig.modules.base.json",
3
+ "include": [
4
+ "**/*.ts",
5
+ "**/*.tsx", "components/commerce/_to_deprecate_checkout-widget/index.tsx_",
6
+ ],
7
+ "exclude": [
8
+ "node_modules",
9
+ ],
10
+ "compilerOptions": {
11
+ "paths": {
12
+ "react": [ "./node_modules/@types/react" ],
13
+ }
14
+ }
15
+ }
@@ -1,7 +1,7 @@
1
- import type ChatbotSuggestQuestion from './chatbot-suggested-question'
2
-
3
- interface ChatbotConfig {
4
- suggestedQuestions?: ChatbotSuggestQuestion[]
5
- }
6
-
1
+ import type ChatbotSuggestQuestion from './chatbot-suggested-question'
2
+
3
+ interface ChatbotConfig {
4
+ suggestedQuestions?: ChatbotSuggestQuestion[]
5
+ }
6
+
7
7
  export { type ChatbotConfig as default }
@@ -1,7 +1,7 @@
1
- interface ChatbotSuggestedQuestion {
2
- heading: string
3
- message: string
4
- icon?: string
5
- }
6
-
7
- export { type ChatbotSuggestedQuestion as default }
1
+ interface ChatbotSuggestedQuestion {
2
+ heading: string
3
+ message: string
4
+ icon?: string
5
+ }
6
+
7
+ export { type ChatbotSuggestedQuestion as default }
@@ -1,11 +1,11 @@
1
- interface ContactInfo {
2
- email: string
3
- phone?: string
4
- }
5
-
6
- type ContactInfoFields = keyof ContactInfo
7
-
8
- export {
9
- type ContactInfo,
10
- type ContactInfoFields
1
+ interface ContactInfo {
2
+ email: string
3
+ phone?: string
4
+ }
5
+
6
+ type ContactInfoFields = keyof ContactInfo
7
+
8
+ export {
9
+ type ContactInfo,
10
+ type ContactInfoFields
11
11
  }
package/types/index.ts CHANGED
@@ -1,4 +1,4 @@
1
- export type { ContactInfo, ContactInfoFields } from './contact-info'
2
- export type { default as SiteDef } from './site-def'
3
- export type { default as ChatbotSuggestedQuestion } from './chatbot-suggested-question'
4
- export type { default as ChatbotConfig } from './chatbot-config'
1
+ export type { ContactInfo, ContactInfoFields } from './contact-info'
2
+ export type { default as SiteDef } from './site-def'
3
+ export type { default as ChatbotSuggestedQuestion } from './chatbot-suggested-question'
4
+ export type { default as ChatbotConfig } from './chatbot-config'
package/types/site-def.ts CHANGED
@@ -1,43 +1,43 @@
1
- import React from 'react'
2
-
3
- import type { LinkDef } from '@hanzo/ui/types'
4
- import type { CommerceConfig } from '@hanzo/commerce/types'
5
-
6
- import type ChatbotConfig from './chatbot-config'
7
-
8
- interface SiteDef {
9
-
10
- /** url of this site. All nav links in the system will show it in 'current' state */
11
- currentAs?: string
12
-
13
- nav: {
14
- /** common elements (will auto-select currentAs if it's provide) */
15
- /** optional feature element. right-most after 'elements' (any min-w is ignored) */
16
- common: LinkDef[]
17
- featured?: LinkDef[]
18
- }
19
-
20
- /**
21
- * Array of columns, each of which itself is an array of links
22
- * (or "title defs" where href='' and variant='linkFG')
23
- * Common use case: To render a site-specific first column:
24
- * {
25
- * footer[myColumn, ...commonColumnsFromUi]
26
- * }
27
- * see: @hanzo/ui/siteDef/footer (default export)
28
- * or @hanzo/ui/siteDef/footer/common
29
- */
30
- footer: LinkDef[][]
31
-
32
- /**
33
- * optional override of default 'above copyright' horizantal links
34
- default (undefined / absent): links in side-def/footer/legal are rendered
35
- [] renders nothing above the copyright
36
- */
37
- aboveCopyright?: LinkDef[]
38
-
39
- commerce?: CommerceConfig
40
- chatbot?: ChatbotConfig
41
- }
42
-
43
- export { type SiteDef as default }
1
+ import React from 'react'
2
+
3
+ import type { LinkDef } from '@hanzo/ui/types'
4
+ import type { CommerceConfig } from '@hanzo/commerce/types'
5
+
6
+ import type ChatbotConfig from './chatbot-config'
7
+
8
+ interface SiteDef {
9
+
10
+ /** url of this site. All nav links in the system will show it in 'current' state */
11
+ currentAs?: string
12
+
13
+ nav: {
14
+ /** common elements (will auto-select currentAs if it's provide) */
15
+ /** optional feature element. right-most after 'elements' (any min-w is ignored) */
16
+ common: LinkDef[]
17
+ featured?: LinkDef[]
18
+ }
19
+
20
+ /**
21
+ * Array of columns, each of which itself is an array of links
22
+ * (or "title defs" where href='' and variant='linkFG')
23
+ * Common use case: To render a site-specific first column:
24
+ * {
25
+ * footer[myColumn, ...commonColumnsFromUi]
26
+ * }
27
+ * see: @hanzo/ui/siteDef/footer (default export)
28
+ * or @hanzo/ui/siteDef/footer/common
29
+ */
30
+ footer: LinkDef[][]
31
+
32
+ /**
33
+ * optional override of default 'above copyright' horizantal links
34
+ default (undefined / absent): links in side-def/footer/legal are rendered
35
+ [] renders nothing above the copyright
36
+ */
37
+ aboveCopyright?: LinkDef[]
38
+
39
+ commerce?: CommerceConfig
40
+ chatbot?: ChatbotConfig
41
+ }
42
+
43
+ export { type SiteDef as default }