@almadar/ui 4.57.0 → 4.57.2

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.
@@ -13832,7 +13832,7 @@ var init_MapView = __esm({
13832
13832
  shadowSize: [41, 41]
13833
13833
  });
13834
13834
  L.Marker.prototype.options.icon = defaultIcon;
13835
- const { useEffect: useEffect88, useRef: useRef88, useCallback: useCallback128, useState: useState122 } = React96__namespace.default;
13835
+ const { useEffect: useEffect88, useRef: useRef88, useCallback: useCallback129, useState: useState123 } = React96__namespace.default;
13836
13836
  const { Typography: Typography2 } = await Promise.resolve().then(() => (init_Typography(), Typography_exports));
13837
13837
  const { useEventBus: useEventBus3 } = await Promise.resolve().then(() => (init_useEventBus(), useEventBus_exports));
13838
13838
  function MapUpdater({ centerLat, centerLng, zoom }) {
@@ -13877,8 +13877,8 @@ var init_MapView = __esm({
13877
13877
  showAttribution = true
13878
13878
  }) {
13879
13879
  const eventBus = useEventBus3();
13880
- const [clickedPosition, setClickedPosition] = useState122(null);
13881
- const handleMapClick = useCallback128((lat, lng) => {
13880
+ const [clickedPosition, setClickedPosition] = useState123(null);
13881
+ const handleMapClick = useCallback129((lat, lng) => {
13882
13882
  if (showClickedPin) {
13883
13883
  setClickedPosition({ lat, lng });
13884
13884
  }
@@ -13887,7 +13887,7 @@ var init_MapView = __esm({
13887
13887
  eventBus.emit(`UI:${mapClickEvent}`, { latitude: lat, longitude: lng });
13888
13888
  }
13889
13889
  }, [onMapClick, mapClickEvent, eventBus, showClickedPin]);
13890
- const handleMarkerClick = useCallback128((marker) => {
13890
+ const handleMarkerClick = useCallback129((marker) => {
13891
13891
  onMarkerClick?.(marker);
13892
13892
  if (markerClickEvent) {
13893
13893
  eventBus.emit(`UI:${markerClickEvent}`, { ...marker });
@@ -33304,6 +33304,98 @@ var init_TagCloud = __esm({
33304
33304
  TagCloud.displayName = "TagCloud";
33305
33305
  }
33306
33306
  });
33307
+ var TagInput;
33308
+ var init_TagInput = __esm({
33309
+ "components/molecules/TagInput.tsx"() {
33310
+ "use client";
33311
+ init_cn();
33312
+ init_useEventBus();
33313
+ init_Input();
33314
+ init_Badge();
33315
+ init_Stack();
33316
+ init_Typography();
33317
+ TagInput = ({
33318
+ value,
33319
+ onChange,
33320
+ placeholder,
33321
+ disabled = false,
33322
+ variant = "default",
33323
+ unique = true,
33324
+ helperText,
33325
+ className,
33326
+ addEvent,
33327
+ removeEvent
33328
+ }) => {
33329
+ const eventBus = useEventBus();
33330
+ const [draft, setDraft] = React96.useState("");
33331
+ const commit = React96.useCallback(() => {
33332
+ const tag = draft.trim();
33333
+ if (!tag) return;
33334
+ if (unique && value.includes(tag)) {
33335
+ setDraft("");
33336
+ return;
33337
+ }
33338
+ const next = [...value, tag];
33339
+ onChange?.(next);
33340
+ if (addEvent) {
33341
+ eventBus.emit(`UI:${addEvent}`, { tag, value: next });
33342
+ }
33343
+ setDraft("");
33344
+ }, [draft, value, onChange, unique, addEvent, eventBus]);
33345
+ const removeAt = React96.useCallback(
33346
+ (index) => {
33347
+ if (disabled) return;
33348
+ const tag = value[index];
33349
+ const next = value.slice();
33350
+ next.splice(index, 1);
33351
+ onChange?.(next);
33352
+ if (removeEvent) {
33353
+ eventBus.emit(`UI:${removeEvent}`, { tag, index, value: next });
33354
+ }
33355
+ },
33356
+ [value, onChange, disabled, removeEvent, eventBus]
33357
+ );
33358
+ const handleKeyDown = React96.useCallback(
33359
+ (e) => {
33360
+ if (disabled) return;
33361
+ if (e.key === "Enter") {
33362
+ e.preventDefault();
33363
+ commit();
33364
+ } else if (e.key === "Backspace" && draft.length === 0 && value.length > 0) {
33365
+ e.preventDefault();
33366
+ removeAt(value.length - 1);
33367
+ }
33368
+ },
33369
+ [commit, draft.length, value, removeAt, disabled]
33370
+ );
33371
+ return /* @__PURE__ */ jsxRuntime.jsxs(VStack, { gap: "xs", className: cn("w-full", className), children: [
33372
+ value.length > 0 ? /* @__PURE__ */ jsxRuntime.jsx(HStack, { gap: "xs", className: "flex-wrap", children: value.map((tag, index) => /* @__PURE__ */ jsxRuntime.jsx(
33373
+ Badge,
33374
+ {
33375
+ variant,
33376
+ size: "sm",
33377
+ onRemove: disabled ? void 0 : () => removeAt(index),
33378
+ removeLabel: `Remove ${tag}`,
33379
+ children: tag
33380
+ },
33381
+ `${tag}-${index}`
33382
+ )) }) : null,
33383
+ /* @__PURE__ */ jsxRuntime.jsx(
33384
+ Input,
33385
+ {
33386
+ value: draft,
33387
+ placeholder: placeholder ?? "Type and press Enter\u2026",
33388
+ disabled,
33389
+ onChange: (e) => setDraft(e.target.value),
33390
+ onKeyDown: handleKeyDown
33391
+ }
33392
+ ),
33393
+ helperText ? /* @__PURE__ */ jsxRuntime.jsx(Typography, { variant: "caption", color: "muted", children: helperText }) : null
33394
+ ] });
33395
+ };
33396
+ TagInput.displayName = "TagInput";
33397
+ }
33398
+ });
33307
33399
  var ShowcaseCard;
33308
33400
  var init_ShowcaseCard = __esm({
33309
33401
  "components/molecules/ShowcaseCard.tsx"() {
@@ -36922,6 +37014,75 @@ var init_GradientDivider = __esm({
36922
37014
  GradientDivider.displayName = "GradientDivider";
36923
37015
  }
36924
37016
  });
37017
+ var MarketingFooter;
37018
+ var init_MarketingFooter = __esm({
37019
+ "components/molecules/MarketingFooter.tsx"() {
37020
+ "use client";
37021
+ init_cn();
37022
+ init_Box();
37023
+ init_Stack();
37024
+ init_Typography();
37025
+ MarketingFooter = ({
37026
+ columns,
37027
+ copyright,
37028
+ logo,
37029
+ className
37030
+ }) => {
37031
+ return /* @__PURE__ */ jsxRuntime.jsx(
37032
+ Box,
37033
+ {
37034
+ as: "footer",
37035
+ className: cn(
37036
+ "bg-surface",
37037
+ "border-t border-border",
37038
+ "pt-12 pb-8 px-4",
37039
+ className
37040
+ ),
37041
+ children: /* @__PURE__ */ jsxRuntime.jsxs(VStack, { gap: "lg", className: "max-w-7xl mx-auto px-4 sm:px-6 lg:px-8", children: [
37042
+ /* @__PURE__ */ jsxRuntime.jsxs(HStack, { gap: "lg", align: "start", className: "flex-wrap w-full justify-between", children: [
37043
+ logo && /* @__PURE__ */ jsxRuntime.jsx(VStack, { gap: "sm", className: "min-w-[140px] mb-4", children: logo.href ? /* @__PURE__ */ jsxRuntime.jsx("a", { href: logo.href, children: /* @__PURE__ */ jsxRuntime.jsx("img", { src: logo.src, alt: logo.alt, className: "h-8 w-auto" }) }) : /* @__PURE__ */ jsxRuntime.jsx("img", { src: logo.src, alt: logo.alt, className: "h-8 w-auto" }) }),
37044
+ columns.map((col) => /* @__PURE__ */ jsxRuntime.jsxs(VStack, { gap: "sm", className: "min-w-[140px] mb-4", children: [
37045
+ /* @__PURE__ */ jsxRuntime.jsx(
37046
+ Typography,
37047
+ {
37048
+ variant: "body2",
37049
+ className: "font-semibold text-foreground mb-1",
37050
+ children: col.title
37051
+ }
37052
+ ),
37053
+ col.items.map((item) => /* @__PURE__ */ jsxRuntime.jsx(
37054
+ "a",
37055
+ {
37056
+ href: item.href,
37057
+ className: cn(
37058
+ "text-sm no-underline",
37059
+ "text-foreground/60",
37060
+ "hover:text-accent",
37061
+ "transition-colors duration-150"
37062
+ ),
37063
+ target: item.href.startsWith("http") ? "_blank" : void 0,
37064
+ rel: item.href.startsWith("http") ? "noopener noreferrer" : void 0,
37065
+ children: item.label
37066
+ },
37067
+ item.label
37068
+ ))
37069
+ ] }, col.title))
37070
+ ] }),
37071
+ copyright && /* @__PURE__ */ jsxRuntime.jsx(
37072
+ Typography,
37073
+ {
37074
+ variant: "caption",
37075
+ className: "text-foreground/30 text-center w-full pt-6",
37076
+ children: copyright
37077
+ }
37078
+ )
37079
+ ] })
37080
+ }
37081
+ );
37082
+ };
37083
+ MarketingFooter.displayName = "MarketingFooter";
37084
+ }
37085
+ });
36925
37086
  var PullQuote;
36926
37087
  var init_PullQuote = __esm({
36927
37088
  "components/molecules/PullQuote.tsx"() {
@@ -53763,6 +53924,7 @@ var init_component_registry_generated = __esm({
53763
53924
  init_List();
53764
53925
  init_LoadingState();
53765
53926
  init_MarkdownContent();
53927
+ init_MarketingFooter();
53766
53928
  init_MasterDetail();
53767
53929
  init_MasterDetailLayout();
53768
53930
  init_MatrixQuestion();
@@ -53862,6 +54024,7 @@ var init_component_registry_generated = __esm({
53862
54024
  init_Table();
53863
54025
  init_Tabs();
53864
54026
  init_TagCloud();
54027
+ init_TagInput();
53865
54028
  init_TeamCard();
53866
54029
  init_TeamOrganism();
53867
54030
  init_TextHighlight();
@@ -54062,6 +54225,7 @@ var init_component_registry_generated = __esm({
54062
54225
  "MapView": MapViewPattern,
54063
54226
  "MapViewPattern": MapViewPattern,
54064
54227
  "MarkdownContent": MarkdownContent,
54228
+ "MarketingFooter": MarketingFooter,
54065
54229
  "MasterDetail": MasterDetail,
54066
54230
  "MasterDetailLayout": MasterDetailLayout,
54067
54231
  "MatrixQuestion": MatrixQuestion,
@@ -54177,6 +54341,7 @@ var init_component_registry_generated = __esm({
54177
54341
  "Table": Table,
54178
54342
  "Tabs": Tabs,
54179
54343
  "TagCloud": TagCloud,
54344
+ "TagInput": TagInput,
54180
54345
  "TeamCard": TeamCard,
54181
54346
  "TeamOrganism": TeamOrganism,
54182
54347
  "TextHighlight": TextHighlight,
package/dist/avl/index.js CHANGED
@@ -13786,7 +13786,7 @@ var init_MapView = __esm({
13786
13786
  shadowSize: [41, 41]
13787
13787
  });
13788
13788
  L.Marker.prototype.options.icon = defaultIcon;
13789
- const { useEffect: useEffect88, useRef: useRef88, useCallback: useCallback128, useState: useState122 } = React96__default;
13789
+ const { useEffect: useEffect88, useRef: useRef88, useCallback: useCallback129, useState: useState123 } = React96__default;
13790
13790
  const { Typography: Typography2 } = await Promise.resolve().then(() => (init_Typography(), Typography_exports));
13791
13791
  const { useEventBus: useEventBus3 } = await Promise.resolve().then(() => (init_useEventBus(), useEventBus_exports));
13792
13792
  function MapUpdater({ centerLat, centerLng, zoom }) {
@@ -13831,8 +13831,8 @@ var init_MapView = __esm({
13831
13831
  showAttribution = true
13832
13832
  }) {
13833
13833
  const eventBus = useEventBus3();
13834
- const [clickedPosition, setClickedPosition] = useState122(null);
13835
- const handleMapClick = useCallback128((lat, lng) => {
13834
+ const [clickedPosition, setClickedPosition] = useState123(null);
13835
+ const handleMapClick = useCallback129((lat, lng) => {
13836
13836
  if (showClickedPin) {
13837
13837
  setClickedPosition({ lat, lng });
13838
13838
  }
@@ -13841,7 +13841,7 @@ var init_MapView = __esm({
13841
13841
  eventBus.emit(`UI:${mapClickEvent}`, { latitude: lat, longitude: lng });
13842
13842
  }
13843
13843
  }, [onMapClick, mapClickEvent, eventBus, showClickedPin]);
13844
- const handleMarkerClick = useCallback128((marker) => {
13844
+ const handleMarkerClick = useCallback129((marker) => {
13845
13845
  onMarkerClick?.(marker);
13846
13846
  if (markerClickEvent) {
13847
13847
  eventBus.emit(`UI:${markerClickEvent}`, { ...marker });
@@ -33258,6 +33258,98 @@ var init_TagCloud = __esm({
33258
33258
  TagCloud.displayName = "TagCloud";
33259
33259
  }
33260
33260
  });
33261
+ var TagInput;
33262
+ var init_TagInput = __esm({
33263
+ "components/molecules/TagInput.tsx"() {
33264
+ "use client";
33265
+ init_cn();
33266
+ init_useEventBus();
33267
+ init_Input();
33268
+ init_Badge();
33269
+ init_Stack();
33270
+ init_Typography();
33271
+ TagInput = ({
33272
+ value,
33273
+ onChange,
33274
+ placeholder,
33275
+ disabled = false,
33276
+ variant = "default",
33277
+ unique = true,
33278
+ helperText,
33279
+ className,
33280
+ addEvent,
33281
+ removeEvent
33282
+ }) => {
33283
+ const eventBus = useEventBus();
33284
+ const [draft, setDraft] = useState("");
33285
+ const commit = useCallback(() => {
33286
+ const tag = draft.trim();
33287
+ if (!tag) return;
33288
+ if (unique && value.includes(tag)) {
33289
+ setDraft("");
33290
+ return;
33291
+ }
33292
+ const next = [...value, tag];
33293
+ onChange?.(next);
33294
+ if (addEvent) {
33295
+ eventBus.emit(`UI:${addEvent}`, { tag, value: next });
33296
+ }
33297
+ setDraft("");
33298
+ }, [draft, value, onChange, unique, addEvent, eventBus]);
33299
+ const removeAt = useCallback(
33300
+ (index) => {
33301
+ if (disabled) return;
33302
+ const tag = value[index];
33303
+ const next = value.slice();
33304
+ next.splice(index, 1);
33305
+ onChange?.(next);
33306
+ if (removeEvent) {
33307
+ eventBus.emit(`UI:${removeEvent}`, { tag, index, value: next });
33308
+ }
33309
+ },
33310
+ [value, onChange, disabled, removeEvent, eventBus]
33311
+ );
33312
+ const handleKeyDown = useCallback(
33313
+ (e) => {
33314
+ if (disabled) return;
33315
+ if (e.key === "Enter") {
33316
+ e.preventDefault();
33317
+ commit();
33318
+ } else if (e.key === "Backspace" && draft.length === 0 && value.length > 0) {
33319
+ e.preventDefault();
33320
+ removeAt(value.length - 1);
33321
+ }
33322
+ },
33323
+ [commit, draft.length, value, removeAt, disabled]
33324
+ );
33325
+ return /* @__PURE__ */ jsxs(VStack, { gap: "xs", className: cn("w-full", className), children: [
33326
+ value.length > 0 ? /* @__PURE__ */ jsx(HStack, { gap: "xs", className: "flex-wrap", children: value.map((tag, index) => /* @__PURE__ */ jsx(
33327
+ Badge,
33328
+ {
33329
+ variant,
33330
+ size: "sm",
33331
+ onRemove: disabled ? void 0 : () => removeAt(index),
33332
+ removeLabel: `Remove ${tag}`,
33333
+ children: tag
33334
+ },
33335
+ `${tag}-${index}`
33336
+ )) }) : null,
33337
+ /* @__PURE__ */ jsx(
33338
+ Input,
33339
+ {
33340
+ value: draft,
33341
+ placeholder: placeholder ?? "Type and press Enter\u2026",
33342
+ disabled,
33343
+ onChange: (e) => setDraft(e.target.value),
33344
+ onKeyDown: handleKeyDown
33345
+ }
33346
+ ),
33347
+ helperText ? /* @__PURE__ */ jsx(Typography, { variant: "caption", color: "muted", children: helperText }) : null
33348
+ ] });
33349
+ };
33350
+ TagInput.displayName = "TagInput";
33351
+ }
33352
+ });
33261
33353
  var ShowcaseCard;
33262
33354
  var init_ShowcaseCard = __esm({
33263
33355
  "components/molecules/ShowcaseCard.tsx"() {
@@ -36876,6 +36968,75 @@ var init_GradientDivider = __esm({
36876
36968
  GradientDivider.displayName = "GradientDivider";
36877
36969
  }
36878
36970
  });
36971
+ var MarketingFooter;
36972
+ var init_MarketingFooter = __esm({
36973
+ "components/molecules/MarketingFooter.tsx"() {
36974
+ "use client";
36975
+ init_cn();
36976
+ init_Box();
36977
+ init_Stack();
36978
+ init_Typography();
36979
+ MarketingFooter = ({
36980
+ columns,
36981
+ copyright,
36982
+ logo,
36983
+ className
36984
+ }) => {
36985
+ return /* @__PURE__ */ jsx(
36986
+ Box,
36987
+ {
36988
+ as: "footer",
36989
+ className: cn(
36990
+ "bg-surface",
36991
+ "border-t border-border",
36992
+ "pt-12 pb-8 px-4",
36993
+ className
36994
+ ),
36995
+ children: /* @__PURE__ */ jsxs(VStack, { gap: "lg", className: "max-w-7xl mx-auto px-4 sm:px-6 lg:px-8", children: [
36996
+ /* @__PURE__ */ jsxs(HStack, { gap: "lg", align: "start", className: "flex-wrap w-full justify-between", children: [
36997
+ logo && /* @__PURE__ */ jsx(VStack, { gap: "sm", className: "min-w-[140px] mb-4", children: logo.href ? /* @__PURE__ */ jsx("a", { href: logo.href, children: /* @__PURE__ */ jsx("img", { src: logo.src, alt: logo.alt, className: "h-8 w-auto" }) }) : /* @__PURE__ */ jsx("img", { src: logo.src, alt: logo.alt, className: "h-8 w-auto" }) }),
36998
+ columns.map((col) => /* @__PURE__ */ jsxs(VStack, { gap: "sm", className: "min-w-[140px] mb-4", children: [
36999
+ /* @__PURE__ */ jsx(
37000
+ Typography,
37001
+ {
37002
+ variant: "body2",
37003
+ className: "font-semibold text-foreground mb-1",
37004
+ children: col.title
37005
+ }
37006
+ ),
37007
+ col.items.map((item) => /* @__PURE__ */ jsx(
37008
+ "a",
37009
+ {
37010
+ href: item.href,
37011
+ className: cn(
37012
+ "text-sm no-underline",
37013
+ "text-foreground/60",
37014
+ "hover:text-accent",
37015
+ "transition-colors duration-150"
37016
+ ),
37017
+ target: item.href.startsWith("http") ? "_blank" : void 0,
37018
+ rel: item.href.startsWith("http") ? "noopener noreferrer" : void 0,
37019
+ children: item.label
37020
+ },
37021
+ item.label
37022
+ ))
37023
+ ] }, col.title))
37024
+ ] }),
37025
+ copyright && /* @__PURE__ */ jsx(
37026
+ Typography,
37027
+ {
37028
+ variant: "caption",
37029
+ className: "text-foreground/30 text-center w-full pt-6",
37030
+ children: copyright
37031
+ }
37032
+ )
37033
+ ] })
37034
+ }
37035
+ );
37036
+ };
37037
+ MarketingFooter.displayName = "MarketingFooter";
37038
+ }
37039
+ });
36879
37040
  var PullQuote;
36880
37041
  var init_PullQuote = __esm({
36881
37042
  "components/molecules/PullQuote.tsx"() {
@@ -53717,6 +53878,7 @@ var init_component_registry_generated = __esm({
53717
53878
  init_List();
53718
53879
  init_LoadingState();
53719
53880
  init_MarkdownContent();
53881
+ init_MarketingFooter();
53720
53882
  init_MasterDetail();
53721
53883
  init_MasterDetailLayout();
53722
53884
  init_MatrixQuestion();
@@ -53816,6 +53978,7 @@ var init_component_registry_generated = __esm({
53816
53978
  init_Table();
53817
53979
  init_Tabs();
53818
53980
  init_TagCloud();
53981
+ init_TagInput();
53819
53982
  init_TeamCard();
53820
53983
  init_TeamOrganism();
53821
53984
  init_TextHighlight();
@@ -54016,6 +54179,7 @@ var init_component_registry_generated = __esm({
54016
54179
  "MapView": MapViewPattern,
54017
54180
  "MapViewPattern": MapViewPattern,
54018
54181
  "MarkdownContent": MarkdownContent,
54182
+ "MarketingFooter": MarketingFooter,
54019
54183
  "MasterDetail": MasterDetail,
54020
54184
  "MasterDetailLayout": MasterDetailLayout,
54021
54185
  "MatrixQuestion": MatrixQuestion,
@@ -54131,6 +54295,7 @@ var init_component_registry_generated = __esm({
54131
54295
  "Table": Table,
54132
54296
  "Tabs": Tabs,
54133
54297
  "TagCloud": TagCloud,
54298
+ "TagInput": TagInput,
54134
54299
  "TeamCard": TeamCard,
54135
54300
  "TeamOrganism": TeamOrganism,
54136
54301
  "TextHighlight": TextHighlight,
@@ -32473,6 +32473,75 @@ var init_GradientDivider = __esm({
32473
32473
  exports.GradientDivider.displayName = "GradientDivider";
32474
32474
  }
32475
32475
  });
32476
+ exports.MarketingFooter = void 0;
32477
+ var init_MarketingFooter = __esm({
32478
+ "components/molecules/MarketingFooter.tsx"() {
32479
+ "use client";
32480
+ init_cn();
32481
+ init_Box();
32482
+ init_Stack();
32483
+ init_Typography();
32484
+ exports.MarketingFooter = ({
32485
+ columns,
32486
+ copyright,
32487
+ logo,
32488
+ className
32489
+ }) => {
32490
+ return /* @__PURE__ */ jsxRuntime.jsx(
32491
+ exports.Box,
32492
+ {
32493
+ as: "footer",
32494
+ className: cn(
32495
+ "bg-surface",
32496
+ "border-t border-border",
32497
+ "pt-12 pb-8 px-4",
32498
+ className
32499
+ ),
32500
+ children: /* @__PURE__ */ jsxRuntime.jsxs(exports.VStack, { gap: "lg", className: "max-w-7xl mx-auto px-4 sm:px-6 lg:px-8", children: [
32501
+ /* @__PURE__ */ jsxRuntime.jsxs(exports.HStack, { gap: "lg", align: "start", className: "flex-wrap w-full justify-between", children: [
32502
+ logo && /* @__PURE__ */ jsxRuntime.jsx(exports.VStack, { gap: "sm", className: "min-w-[140px] mb-4", children: logo.href ? /* @__PURE__ */ jsxRuntime.jsx("a", { href: logo.href, children: /* @__PURE__ */ jsxRuntime.jsx("img", { src: logo.src, alt: logo.alt, className: "h-8 w-auto" }) }) : /* @__PURE__ */ jsxRuntime.jsx("img", { src: logo.src, alt: logo.alt, className: "h-8 w-auto" }) }),
32503
+ columns.map((col) => /* @__PURE__ */ jsxRuntime.jsxs(exports.VStack, { gap: "sm", className: "min-w-[140px] mb-4", children: [
32504
+ /* @__PURE__ */ jsxRuntime.jsx(
32505
+ exports.Typography,
32506
+ {
32507
+ variant: "body2",
32508
+ className: "font-semibold text-foreground mb-1",
32509
+ children: col.title
32510
+ }
32511
+ ),
32512
+ col.items.map((item) => /* @__PURE__ */ jsxRuntime.jsx(
32513
+ "a",
32514
+ {
32515
+ href: item.href,
32516
+ className: cn(
32517
+ "text-sm no-underline",
32518
+ "text-foreground/60",
32519
+ "hover:text-accent",
32520
+ "transition-colors duration-150"
32521
+ ),
32522
+ target: item.href.startsWith("http") ? "_blank" : void 0,
32523
+ rel: item.href.startsWith("http") ? "noopener noreferrer" : void 0,
32524
+ children: item.label
32525
+ },
32526
+ item.label
32527
+ ))
32528
+ ] }, col.title))
32529
+ ] }),
32530
+ copyright && /* @__PURE__ */ jsxRuntime.jsx(
32531
+ exports.Typography,
32532
+ {
32533
+ variant: "caption",
32534
+ className: "text-foreground/30 text-center w-full pt-6",
32535
+ children: copyright
32536
+ }
32537
+ )
32538
+ ] })
32539
+ }
32540
+ );
32541
+ };
32542
+ exports.MarketingFooter.displayName = "MarketingFooter";
32543
+ }
32544
+ });
32476
32545
  exports.PullQuote = void 0;
32477
32546
  var init_PullQuote = __esm({
32478
32547
  "components/molecules/PullQuote.tsx"() {
@@ -33013,6 +33082,7 @@ var init_molecules = __esm({
33013
33082
  init_DocSidebar();
33014
33083
  init_DocTOC();
33015
33084
  init_GradientDivider();
33085
+ init_MarketingFooter();
33016
33086
  init_PullQuote();
33017
33087
  init_BehaviorView();
33018
33088
  init_ModuleCard();
@@ -44842,6 +44912,7 @@ var init_component_registry_generated = __esm({
44842
44912
  init_List();
44843
44913
  init_LoadingState();
44844
44914
  init_MarkdownContent();
44915
+ init_MarketingFooter();
44845
44916
  init_MasterDetail();
44846
44917
  init_MasterDetailLayout();
44847
44918
  init_MatrixQuestion();
@@ -44941,6 +45012,7 @@ var init_component_registry_generated = __esm({
44941
45012
  init_Table();
44942
45013
  init_Tabs();
44943
45014
  init_TagCloud();
45015
+ init_TagInput();
44944
45016
  init_TeamCard();
44945
45017
  init_TeamOrganism();
44946
45018
  init_TextHighlight();
@@ -45141,6 +45213,7 @@ var init_component_registry_generated = __esm({
45141
45213
  "MapView": MapViewPattern,
45142
45214
  "MapViewPattern": MapViewPattern,
45143
45215
  "MarkdownContent": exports.MarkdownContent,
45216
+ "MarketingFooter": exports.MarketingFooter,
45144
45217
  "MasterDetail": MasterDetail,
45145
45218
  "MasterDetailLayout": exports.MasterDetailLayout,
45146
45219
  "MatrixQuestion": exports.MatrixQuestion,
@@ -45256,6 +45329,7 @@ var init_component_registry_generated = __esm({
45256
45329
  "Table": exports.Table,
45257
45330
  "Tabs": exports.Tabs,
45258
45331
  "TagCloud": exports.TagCloud,
45332
+ "TagInput": exports.TagInput,
45259
45333
  "TeamCard": exports.TeamCard,
45260
45334
  "TeamOrganism": exports.TeamOrganism,
45261
45335
  "TextHighlight": exports.TextHighlight,