styled-hairomin 0.3.0 → 0.3.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.cjs.js CHANGED
@@ -3,6 +3,7 @@
3
3
 
4
4
  var styled = require('styled-components');
5
5
  var fa = require('react-icons/fa');
6
+ var jsxRuntime = require('react/jsx-runtime');
6
7
  var Link = require('next/link');
7
8
 
8
9
  const variantStyles$4 = {
@@ -292,20 +293,80 @@ function CardVariant({
292
293
  }) {
293
294
  switch (variant) {
294
295
  case "elevated":
295
- return /*#__PURE__*/React.createElement(ElevatedCard, null, /*#__PURE__*/React.createElement(ElevatedImageWrapper, null, /*#__PURE__*/React.createElement(ElevatedImage, {
296
- src: data.image,
297
- alt: data.title
298
- }), /*#__PURE__*/React.createElement(Badge, null, data.badge)), /*#__PURE__*/React.createElement(ElevatedContent, null, /*#__PURE__*/React.createElement(ElevatedTitle, null, data.title), /*#__PURE__*/React.createElement(ElevatedFeatures, null, /*#__PURE__*/React.createElement(Feature, null, /*#__PURE__*/React.createElement(fa.FaBed, null), " Kasur Lembut"), /*#__PURE__*/React.createElement(Feature, null, /*#__PURE__*/React.createElement(fa.FaWifi, null), " WiFi Gratis")), /*#__PURE__*/React.createElement(ElevatedFooter, null, /*#__PURE__*/React.createElement(Price, null, data.price, /*#__PURE__*/React.createElement("span", null, "/malam")), /*#__PURE__*/React.createElement(Rating, null, /*#__PURE__*/React.createElement(fa.FaStar, null), " ", data.rating))));
296
+ return /*#__PURE__*/jsxRuntime.jsxs(ElevatedCard, {
297
+ children: [/*#__PURE__*/jsxRuntime.jsxs(ElevatedImageWrapper, {
298
+ children: [/*#__PURE__*/jsxRuntime.jsx(ElevatedImage, {
299
+ src: data.image,
300
+ alt: data.title
301
+ }), /*#__PURE__*/jsxRuntime.jsx(Badge, {
302
+ children: data.badge
303
+ })]
304
+ }), /*#__PURE__*/jsxRuntime.jsxs(ElevatedContent, {
305
+ children: [/*#__PURE__*/jsxRuntime.jsx(ElevatedTitle, {
306
+ children: data.title
307
+ }), /*#__PURE__*/jsxRuntime.jsxs(ElevatedFeatures, {
308
+ children: [/*#__PURE__*/jsxRuntime.jsxs(Feature, {
309
+ children: [/*#__PURE__*/jsxRuntime.jsx(fa.FaBed, {}), " Kasur Lembut"]
310
+ }), /*#__PURE__*/jsxRuntime.jsxs(Feature, {
311
+ children: [/*#__PURE__*/jsxRuntime.jsx(fa.FaWifi, {}), " WiFi Gratis"]
312
+ })]
313
+ }), /*#__PURE__*/jsxRuntime.jsxs(ElevatedFooter, {
314
+ children: [/*#__PURE__*/jsxRuntime.jsxs(Price, {
315
+ children: [data.price, /*#__PURE__*/jsxRuntime.jsx("span", {
316
+ children: "/malam"
317
+ })]
318
+ }), /*#__PURE__*/jsxRuntime.jsxs(Rating, {
319
+ children: [/*#__PURE__*/jsxRuntime.jsx(fa.FaStar, {}), " ", data.rating]
320
+ })]
321
+ })]
322
+ })]
323
+ });
299
324
  case "bordered":
300
- return /*#__PURE__*/React.createElement(BorderedCard, null, /*#__PURE__*/React.createElement(BorderedContent, null, /*#__PURE__*/React.createElement(BorderedHeader, null, /*#__PURE__*/React.createElement("div", null, /*#__PURE__*/React.createElement(BorderedTitle, null, data.title), /*#__PURE__*/React.createElement(BorderedLocation, null, /*#__PURE__*/React.createElement(fa.FaMapMarkerAlt, null), " ", data.location))), /*#__PURE__*/React.createElement(BorderedImage, {
301
- src: data.image,
302
- alt: data.title
303
- }), /*#__PURE__*/React.createElement(BorderedDescription, null, data.description), /*#__PURE__*/React.createElement(BorderedFooter, null, /*#__PURE__*/React.createElement(BorderedPrice, null, data.price), /*#__PURE__*/React.createElement(BookButton, null, "Pesan Sekarang"))));
325
+ return /*#__PURE__*/jsxRuntime.jsx(BorderedCard, {
326
+ children: /*#__PURE__*/jsxRuntime.jsxs(BorderedContent, {
327
+ children: [/*#__PURE__*/jsxRuntime.jsx(BorderedHeader, {
328
+ children: /*#__PURE__*/jsxRuntime.jsxs("div", {
329
+ children: [/*#__PURE__*/jsxRuntime.jsx(BorderedTitle, {
330
+ children: data.title
331
+ }), /*#__PURE__*/jsxRuntime.jsxs(BorderedLocation, {
332
+ children: [/*#__PURE__*/jsxRuntime.jsx(fa.FaMapMarkerAlt, {}), " ", data.location]
333
+ })]
334
+ })
335
+ }), /*#__PURE__*/jsxRuntime.jsx(BorderedImage, {
336
+ src: data.image,
337
+ alt: data.title
338
+ }), /*#__PURE__*/jsxRuntime.jsx(BorderedDescription, {
339
+ children: data.description
340
+ }), /*#__PURE__*/jsxRuntime.jsxs(BorderedFooter, {
341
+ children: [/*#__PURE__*/jsxRuntime.jsx(BorderedPrice, {
342
+ children: data.price
343
+ }), /*#__PURE__*/jsxRuntime.jsx(BookButton, {
344
+ children: "Pesan Sekarang"
345
+ })]
346
+ })]
347
+ })
348
+ });
304
349
  case "gradient":
305
- return /*#__PURE__*/React.createElement(GradientCard, null, /*#__PURE__*/React.createElement(GradientImageWrapper, null, /*#__PURE__*/React.createElement(GradientImage, {
306
- src: data.image,
307
- alt: data.title
308
- })), /*#__PURE__*/React.createElement(GradientContent, null, /*#__PURE__*/React.createElement(GradientTitle, null, data.title), /*#__PURE__*/React.createElement(GradientDescription, null, data.description), /*#__PURE__*/React.createElement(GradientFooter, null, /*#__PURE__*/React.createElement(GradientPrice, null, data.price), /*#__PURE__*/React.createElement(GradientRating, null, "\u2605 ", data.rating))));
350
+ return /*#__PURE__*/jsxRuntime.jsxs(GradientCard, {
351
+ children: [/*#__PURE__*/jsxRuntime.jsx(GradientImageWrapper, {
352
+ children: /*#__PURE__*/jsxRuntime.jsx(GradientImage, {
353
+ src: data.image,
354
+ alt: data.title
355
+ })
356
+ }), /*#__PURE__*/jsxRuntime.jsxs(GradientContent, {
357
+ children: [/*#__PURE__*/jsxRuntime.jsx(GradientTitle, {
358
+ children: data.title
359
+ }), /*#__PURE__*/jsxRuntime.jsx(GradientDescription, {
360
+ children: data.description
361
+ }), /*#__PURE__*/jsxRuntime.jsxs(GradientFooter, {
362
+ children: [/*#__PURE__*/jsxRuntime.jsx(GradientPrice, {
363
+ children: data.price
364
+ }), /*#__PURE__*/jsxRuntime.jsxs(GradientRating, {
365
+ children: ["\u2605 ", data.rating]
366
+ })]
367
+ })]
368
+ })]
369
+ });
309
370
  default:
310
371
  return null;
311
372
  }
@@ -512,17 +573,26 @@ function ButtonVariant({
512
573
  }) {
513
574
  switch (variant) {
514
575
  case "solid":
515
- return /*#__PURE__*/React.createElement(SolidButton, {
516
- onClick: onClick
517
- }, /*#__PURE__*/React.createElement("span", null, data?.label || "Konfirmasi Pemesanan"), data?.icon || /*#__PURE__*/React.createElement(fa.FaChevronRight, null));
576
+ return /*#__PURE__*/jsxRuntime.jsxs(SolidButton, {
577
+ onClick: onClick,
578
+ children: [/*#__PURE__*/jsxRuntime.jsx("span", {
579
+ children: data?.label || "Konfirmasi Pemesanan"
580
+ }), data?.icon || /*#__PURE__*/jsxRuntime.jsx(fa.FaChevronRight, {})]
581
+ });
518
582
  case "outline":
519
- return /*#__PURE__*/React.createElement(OutlineButton, {
520
- onClick: onClick
521
- }, data?.icon || /*#__PURE__*/React.createElement(fa.FaCheck, null), /*#__PURE__*/React.createElement("span", null, data?.label || "Tambah ke Favorit"));
583
+ return /*#__PURE__*/jsxRuntime.jsxs(OutlineButton, {
584
+ onClick: onClick,
585
+ children: [data?.icon || /*#__PURE__*/jsxRuntime.jsx(fa.FaCheck, {}), /*#__PURE__*/jsxRuntime.jsx("span", {
586
+ children: data?.label || "Tambah ke Favorit"
587
+ })]
588
+ });
522
589
  case "pill":
523
- return /*#__PURE__*/React.createElement(PillButton, {
524
- onClick: onClick
525
- }, data?.icon || /*#__PURE__*/React.createElement(fa.FaDownload, null), /*#__PURE__*/React.createElement("span", null, data?.label || "Unduh"));
590
+ return /*#__PURE__*/jsxRuntime.jsxs(PillButton, {
591
+ onClick: onClick,
592
+ children: [data?.icon || /*#__PURE__*/jsxRuntime.jsx(fa.FaDownload, {}), /*#__PURE__*/jsxRuntime.jsx("span", {
593
+ children: data?.label || "Unduh"
594
+ })]
595
+ });
526
596
  default:
527
597
  return null;
528
598
  }
@@ -903,52 +973,90 @@ function HeaderVariant({
903
973
  const headerData = data || defaultData[variant];
904
974
  switch (variant) {
905
975
  case "modern":
906
- return /*#__PURE__*/React.createElement(ModernHeader, null, /*#__PURE__*/React.createElement(ModernLogo, null, headerData.logo), /*#__PURE__*/React.createElement(ModernNav, null, headerData.links.map((link, idx) => {
907
- const {
908
- label,
909
- href
910
- } = normalizeLink$1(link);
911
- return /*#__PURE__*/React.createElement(ModernLink, {
912
- key: idx,
913
- href: href
914
- }, label);
915
- })), /*#__PURE__*/React.createElement(IconGroup, null, /*#__PURE__*/React.createElement(IconButton, null, /*#__PURE__*/React.createElement(fa.FaSearch, null)), /*#__PURE__*/React.createElement(IconButton, null, /*#__PURE__*/React.createElement(fa.FaBell, null)), /*#__PURE__*/React.createElement(IconButton, null, /*#__PURE__*/React.createElement(fa.FaBars, null))));
976
+ return /*#__PURE__*/jsxRuntime.jsxs(ModernHeader, {
977
+ children: [/*#__PURE__*/jsxRuntime.jsx(ModernLogo, {
978
+ children: headerData.logo
979
+ }), /*#__PURE__*/jsxRuntime.jsx(ModernNav, {
980
+ children: headerData.links.map((link, idx) => {
981
+ const {
982
+ label,
983
+ href
984
+ } = normalizeLink$1(link);
985
+ return /*#__PURE__*/jsxRuntime.jsx(ModernLink, {
986
+ href: href,
987
+ children: label
988
+ }, idx);
989
+ })
990
+ }), /*#__PURE__*/jsxRuntime.jsxs(IconGroup, {
991
+ children: [/*#__PURE__*/jsxRuntime.jsx(IconButton, {
992
+ children: /*#__PURE__*/jsxRuntime.jsx(fa.FaSearch, {})
993
+ }), /*#__PURE__*/jsxRuntime.jsx(IconButton, {
994
+ children: /*#__PURE__*/jsxRuntime.jsx(fa.FaBell, {})
995
+ }), /*#__PURE__*/jsxRuntime.jsx(IconButton, {
996
+ children: /*#__PURE__*/jsxRuntime.jsx(fa.FaBars, {})
997
+ })]
998
+ })]
999
+ });
916
1000
  case "minimal":
917
- return /*#__PURE__*/React.createElement(MinimalHeader, null, /*#__PURE__*/React.createElement(MinimalContainer, null, /*#__PURE__*/React.createElement(MinimalLogo, null, headerData.logo), /*#__PURE__*/React.createElement(MinimalNav, null, headerData.links.map((link, idx) => {
918
- const {
919
- label,
920
- href
921
- } = normalizeLink$1(link);
922
- return /*#__PURE__*/React.createElement(MinimalLink, {
923
- key: idx,
924
- href: href
925
- }, label);
926
- })), /*#__PURE__*/React.createElement(MinimalActions, null, /*#__PURE__*/React.createElement(MinimalButton, null, headerData.buttonText), /*#__PURE__*/React.createElement(MinimalMobileMenu, null, /*#__PURE__*/React.createElement(fa.FaBars, null)))));
1001
+ return /*#__PURE__*/jsxRuntime.jsx(MinimalHeader, {
1002
+ children: /*#__PURE__*/jsxRuntime.jsxs(MinimalContainer, {
1003
+ children: [/*#__PURE__*/jsxRuntime.jsx(MinimalLogo, {
1004
+ children: headerData.logo
1005
+ }), /*#__PURE__*/jsxRuntime.jsx(MinimalNav, {
1006
+ children: headerData.links.map((link, idx) => {
1007
+ const {
1008
+ label,
1009
+ href
1010
+ } = normalizeLink$1(link);
1011
+ return /*#__PURE__*/jsxRuntime.jsx(MinimalLink, {
1012
+ href: href,
1013
+ children: label
1014
+ }, idx);
1015
+ })
1016
+ }), /*#__PURE__*/jsxRuntime.jsxs(MinimalActions, {
1017
+ children: [/*#__PURE__*/jsxRuntime.jsx(MinimalButton, {
1018
+ children: headerData.buttonText
1019
+ }), /*#__PURE__*/jsxRuntime.jsx(MinimalMobileMenu, {
1020
+ children: /*#__PURE__*/jsxRuntime.jsx(fa.FaBars, {})
1021
+ })]
1022
+ })]
1023
+ })
1024
+ });
927
1025
  case "glassmorphism":
928
- return /*#__PURE__*/React.createElement(GlassHeader, null, /*#__PURE__*/React.createElement(GlassLogo, null, headerData.logo), /*#__PURE__*/React.createElement(GlassNav, null, headerData.links.map((link, idx) => {
929
- const {
930
- label,
931
- href
932
- } = normalizeLink$1(link);
933
- return /*#__PURE__*/React.createElement(GlassLink, {
934
- key: idx,
935
- href: href
936
- }, label);
937
- }), /*#__PURE__*/React.createElement(GlassSearch, null, /*#__PURE__*/React.createElement(fa.FaSearch, {
938
- size: 14
939
- }), /*#__PURE__*/React.createElement("input", {
940
- type: "text",
941
- placeholder: headerData.searchPlaceholder
942
- }))), /*#__PURE__*/React.createElement(GlassMobileNav, null, headerData.links.map((link, idx) => {
943
- const {
944
- label,
945
- href
946
- } = normalizeLink$1(link);
947
- return /*#__PURE__*/React.createElement(GlassMobileLink, {
948
- key: idx,
949
- href: href
950
- }, label);
951
- })));
1026
+ return /*#__PURE__*/jsxRuntime.jsxs(GlassHeader, {
1027
+ children: [/*#__PURE__*/jsxRuntime.jsx(GlassLogo, {
1028
+ children: headerData.logo
1029
+ }), /*#__PURE__*/jsxRuntime.jsxs(GlassNav, {
1030
+ children: [headerData.links.map((link, idx) => {
1031
+ const {
1032
+ label,
1033
+ href
1034
+ } = normalizeLink$1(link);
1035
+ return /*#__PURE__*/jsxRuntime.jsx(GlassLink, {
1036
+ href: href,
1037
+ children: label
1038
+ }, idx);
1039
+ }), /*#__PURE__*/jsxRuntime.jsxs(GlassSearch, {
1040
+ children: [/*#__PURE__*/jsxRuntime.jsx(fa.FaSearch, {
1041
+ size: 14
1042
+ }), /*#__PURE__*/jsxRuntime.jsx("input", {
1043
+ type: "text",
1044
+ placeholder: headerData.searchPlaceholder
1045
+ })]
1046
+ })]
1047
+ }), /*#__PURE__*/jsxRuntime.jsx(GlassMobileNav, {
1048
+ children: headerData.links.map((link, idx) => {
1049
+ const {
1050
+ label,
1051
+ href
1052
+ } = normalizeLink$1(link);
1053
+ return /*#__PURE__*/jsxRuntime.jsx(GlassMobileLink, {
1054
+ href: href,
1055
+ children: label
1056
+ }, idx);
1057
+ })
1058
+ })]
1059
+ });
952
1060
  default:
953
1061
  return null;
954
1062
  }
@@ -1402,69 +1510,147 @@ function FooterVariant({
1402
1510
  const footerData = data || defaultData[variant];
1403
1511
  switch (variant) {
1404
1512
  case "stacked":
1405
- return /*#__PURE__*/React.createElement(StackedFooter, null, /*#__PURE__*/React.createElement(StackedSection, null, /*#__PURE__*/React.createElement(StackedBrand, null, /*#__PURE__*/React.createElement("h2", null, footerData.brandName), /*#__PURE__*/React.createElement("p", null, footerData.brandDesc)), /*#__PURE__*/React.createElement(StackedLinks, null, footerData.linkGroups.map((group, idx) => /*#__PURE__*/React.createElement(LinkGroup, {
1406
- key: idx
1407
- }, /*#__PURE__*/React.createElement("h4", null, group.title), group.links.map((link, linkIdx) => {
1408
- const {
1409
- label,
1410
- href
1411
- } = normalizeLink(link);
1412
- return /*#__PURE__*/React.createElement("a", {
1413
- key: linkIdx,
1414
- href: href
1415
- }, label);
1416
- }))))), /*#__PURE__*/React.createElement(StackedBottom, null, /*#__PURE__*/React.createElement("div", null, footerData.copyright), /*#__PURE__*/React.createElement(SocialIcons, null, /*#__PURE__*/React.createElement("a", {
1417
- href: "#"
1418
- }, /*#__PURE__*/React.createElement(fa.FaFacebookF, null)), /*#__PURE__*/React.createElement("a", {
1419
- href: "#"
1420
- }, /*#__PURE__*/React.createElement(fa.FaInstagram, null)), /*#__PURE__*/React.createElement("a", {
1421
- href: "#"
1422
- }, /*#__PURE__*/React.createElement(fa.FaTwitter, null)), /*#__PURE__*/React.createElement("a", {
1423
- href: "#"
1424
- }, /*#__PURE__*/React.createElement(fa.FaLinkedin, null)))));
1513
+ return /*#__PURE__*/jsxRuntime.jsxs(StackedFooter, {
1514
+ children: [/*#__PURE__*/jsxRuntime.jsxs(StackedSection, {
1515
+ children: [/*#__PURE__*/jsxRuntime.jsxs(StackedBrand, {
1516
+ children: [/*#__PURE__*/jsxRuntime.jsx("h2", {
1517
+ children: footerData.brandName
1518
+ }), /*#__PURE__*/jsxRuntime.jsx("p", {
1519
+ children: footerData.brandDesc
1520
+ })]
1521
+ }), /*#__PURE__*/jsxRuntime.jsx(StackedLinks, {
1522
+ children: footerData.linkGroups.map((group, idx) => /*#__PURE__*/jsxRuntime.jsxs(LinkGroup, {
1523
+ children: [/*#__PURE__*/jsxRuntime.jsx("h4", {
1524
+ children: group.title
1525
+ }), group.links.map((link, linkIdx) => {
1526
+ const {
1527
+ label,
1528
+ href
1529
+ } = normalizeLink(link);
1530
+ return /*#__PURE__*/jsxRuntime.jsx("a", {
1531
+ href: href,
1532
+ children: label
1533
+ }, linkIdx);
1534
+ })]
1535
+ }, idx))
1536
+ })]
1537
+ }), /*#__PURE__*/jsxRuntime.jsxs(StackedBottom, {
1538
+ children: [/*#__PURE__*/jsxRuntime.jsx("div", {
1539
+ children: footerData.copyright
1540
+ }), /*#__PURE__*/jsxRuntime.jsxs(SocialIcons, {
1541
+ children: [/*#__PURE__*/jsxRuntime.jsx("a", {
1542
+ href: "#",
1543
+ children: /*#__PURE__*/jsxRuntime.jsx(fa.FaFacebookF, {})
1544
+ }), /*#__PURE__*/jsxRuntime.jsx("a", {
1545
+ href: "#",
1546
+ children: /*#__PURE__*/jsxRuntime.jsx(fa.FaInstagram, {})
1547
+ }), /*#__PURE__*/jsxRuntime.jsx("a", {
1548
+ href: "#",
1549
+ children: /*#__PURE__*/jsxRuntime.jsx(fa.FaTwitter, {})
1550
+ }), /*#__PURE__*/jsxRuntime.jsx("a", {
1551
+ href: "#",
1552
+ children: /*#__PURE__*/jsxRuntime.jsx(fa.FaLinkedin, {})
1553
+ })]
1554
+ })]
1555
+ })]
1556
+ });
1425
1557
  case "columns":
1426
- return /*#__PURE__*/React.createElement(ColumnsFooter, null, /*#__PURE__*/React.createElement(ColumnsGrid, null, /*#__PURE__*/React.createElement(ColumnBox, null, /*#__PURE__*/React.createElement("h3", null, footerData.aboutTitle), /*#__PURE__*/React.createElement("p", null, footerData.aboutDesc), /*#__PURE__*/React.createElement(ContactItem, null, /*#__PURE__*/React.createElement(fa.FaPhone, null), /*#__PURE__*/React.createElement("span", null, footerData.phone)), /*#__PURE__*/React.createElement(ContactItem, null, /*#__PURE__*/React.createElement(fa.FaEnvelope, null), /*#__PURE__*/React.createElement("span", null, footerData.email)), /*#__PURE__*/React.createElement(ContactItem, null, /*#__PURE__*/React.createElement(fa.FaMapMarkerAlt, null), /*#__PURE__*/React.createElement("span", null, footerData.address))), footerData.columns.map((col, idx) => /*#__PURE__*/React.createElement(ColumnBox, {
1427
- key: idx
1428
- }, /*#__PURE__*/React.createElement("h3", null, col.title), col.links && col.links.map((link, linkIdx) => {
1429
- const {
1430
- label,
1431
- href
1432
- } = normalizeLink(link);
1433
- return /*#__PURE__*/React.createElement("a", {
1434
- key: linkIdx,
1435
- href: href
1436
- }, label);
1437
- }), col.desc && /*#__PURE__*/React.createElement("p", null, col.desc), idx === footerData.columns.length - 1 && /*#__PURE__*/React.createElement(SocialIcons, {
1438
- style: {
1439
- justifyContent: 'flex-start',
1440
- marginTop: '1.5rem'
1441
- }
1442
- }, /*#__PURE__*/React.createElement("a", {
1443
- href: "#"
1444
- }, /*#__PURE__*/React.createElement(fa.FaFacebookF, null)), /*#__PURE__*/React.createElement("a", {
1445
- href: "#"
1446
- }, /*#__PURE__*/React.createElement(fa.FaInstagram, null)), /*#__PURE__*/React.createElement("a", {
1447
- href: "#"
1448
- }, /*#__PURE__*/React.createElement(fa.FaTwitter, null)))))), /*#__PURE__*/React.createElement(ColumnsDivider, null, /*#__PURE__*/React.createElement("div", null, "\xA9 2025 Paradise Resort. Hak Cipta Dilindungi."), /*#__PURE__*/React.createElement("div", null, "Dirancang dengan \u2764\uFE0F untuk pengalaman mewah")));
1558
+ return /*#__PURE__*/jsxRuntime.jsxs(ColumnsFooter, {
1559
+ children: [/*#__PURE__*/jsxRuntime.jsxs(ColumnsGrid, {
1560
+ children: [/*#__PURE__*/jsxRuntime.jsxs(ColumnBox, {
1561
+ children: [/*#__PURE__*/jsxRuntime.jsx("h3", {
1562
+ children: footerData.aboutTitle
1563
+ }), /*#__PURE__*/jsxRuntime.jsx("p", {
1564
+ children: footerData.aboutDesc
1565
+ }), /*#__PURE__*/jsxRuntime.jsxs(ContactItem, {
1566
+ children: [/*#__PURE__*/jsxRuntime.jsx(fa.FaPhone, {}), /*#__PURE__*/jsxRuntime.jsx("span", {
1567
+ children: footerData.phone
1568
+ })]
1569
+ }), /*#__PURE__*/jsxRuntime.jsxs(ContactItem, {
1570
+ children: [/*#__PURE__*/jsxRuntime.jsx(fa.FaEnvelope, {}), /*#__PURE__*/jsxRuntime.jsx("span", {
1571
+ children: footerData.email
1572
+ })]
1573
+ }), /*#__PURE__*/jsxRuntime.jsxs(ContactItem, {
1574
+ children: [/*#__PURE__*/jsxRuntime.jsx(fa.FaMapMarkerAlt, {}), /*#__PURE__*/jsxRuntime.jsx("span", {
1575
+ children: footerData.address
1576
+ })]
1577
+ })]
1578
+ }), footerData.columns.map((col, idx) => /*#__PURE__*/jsxRuntime.jsxs(ColumnBox, {
1579
+ children: [/*#__PURE__*/jsxRuntime.jsx("h3", {
1580
+ children: col.title
1581
+ }), col.links && col.links.map((link, linkIdx) => {
1582
+ const {
1583
+ label,
1584
+ href
1585
+ } = normalizeLink(link);
1586
+ return /*#__PURE__*/jsxRuntime.jsx("a", {
1587
+ href: href,
1588
+ children: label
1589
+ }, linkIdx);
1590
+ }), col.desc && /*#__PURE__*/jsxRuntime.jsx("p", {
1591
+ children: col.desc
1592
+ }), idx === footerData.columns.length - 1 && /*#__PURE__*/jsxRuntime.jsxs(SocialIcons, {
1593
+ style: {
1594
+ justifyContent: 'flex-start',
1595
+ marginTop: '1.5rem'
1596
+ },
1597
+ children: [/*#__PURE__*/jsxRuntime.jsx("a", {
1598
+ href: "#",
1599
+ children: /*#__PURE__*/jsxRuntime.jsx(fa.FaFacebookF, {})
1600
+ }), /*#__PURE__*/jsxRuntime.jsx("a", {
1601
+ href: "#",
1602
+ children: /*#__PURE__*/jsxRuntime.jsx(fa.FaInstagram, {})
1603
+ }), /*#__PURE__*/jsxRuntime.jsx("a", {
1604
+ href: "#",
1605
+ children: /*#__PURE__*/jsxRuntime.jsx(fa.FaTwitter, {})
1606
+ })]
1607
+ })]
1608
+ }, idx))]
1609
+ }), /*#__PURE__*/jsxRuntime.jsxs(ColumnsDivider, {
1610
+ children: [/*#__PURE__*/jsxRuntime.jsx("div", {
1611
+ children: "\xA9 2025 Paradise Resort. Hak Cipta Dilindungi."
1612
+ }), /*#__PURE__*/jsxRuntime.jsx("div", {
1613
+ children: "Dirancang dengan \u2764\uFE0F untuk pengalaman mewah"
1614
+ })]
1615
+ })]
1616
+ });
1449
1617
  case "centered":
1450
- return /*#__PURE__*/React.createElement(CenteredFooter, null, /*#__PURE__*/React.createElement(CenteredContent, null, /*#__PURE__*/React.createElement(CenteredLogo, null, footerData.logo), /*#__PURE__*/React.createElement(CenteredTagline, null, footerData.tagline), /*#__PURE__*/React.createElement(CenteredNav, null, footerData.links.map((link, idx) => {
1451
- const {
1452
- label,
1453
- href
1454
- } = normalizeLink(link);
1455
- return /*#__PURE__*/React.createElement("a", {
1456
- key: idx,
1457
- href: href
1458
- }, label);
1459
- })), /*#__PURE__*/React.createElement(CenteredSocial, null, /*#__PURE__*/React.createElement("a", {
1460
- href: "#"
1461
- }, /*#__PURE__*/React.createElement(fa.FaFacebookF, null)), /*#__PURE__*/React.createElement("a", {
1462
- href: "#"
1463
- }, /*#__PURE__*/React.createElement(fa.FaInstagram, null)), /*#__PURE__*/React.createElement("a", {
1464
- href: "#"
1465
- }, /*#__PURE__*/React.createElement(fa.FaTwitter, null)), /*#__PURE__*/React.createElement("a", {
1466
- href: "#"
1467
- }, /*#__PURE__*/React.createElement(fa.FaLinkedin, null))), /*#__PURE__*/React.createElement(CenteredCopyright, null, footerData.copyright)));
1618
+ return /*#__PURE__*/jsxRuntime.jsx(CenteredFooter, {
1619
+ children: /*#__PURE__*/jsxRuntime.jsxs(CenteredContent, {
1620
+ children: [/*#__PURE__*/jsxRuntime.jsx(CenteredLogo, {
1621
+ children: footerData.logo
1622
+ }), /*#__PURE__*/jsxRuntime.jsx(CenteredTagline, {
1623
+ children: footerData.tagline
1624
+ }), /*#__PURE__*/jsxRuntime.jsx(CenteredNav, {
1625
+ children: footerData.links.map((link, idx) => {
1626
+ const {
1627
+ label,
1628
+ href
1629
+ } = normalizeLink(link);
1630
+ return /*#__PURE__*/jsxRuntime.jsx("a", {
1631
+ href: href,
1632
+ children: label
1633
+ }, idx);
1634
+ })
1635
+ }), /*#__PURE__*/jsxRuntime.jsxs(CenteredSocial, {
1636
+ children: [/*#__PURE__*/jsxRuntime.jsx("a", {
1637
+ href: "#",
1638
+ children: /*#__PURE__*/jsxRuntime.jsx(fa.FaFacebookF, {})
1639
+ }), /*#__PURE__*/jsxRuntime.jsx("a", {
1640
+ href: "#",
1641
+ children: /*#__PURE__*/jsxRuntime.jsx(fa.FaInstagram, {})
1642
+ }), /*#__PURE__*/jsxRuntime.jsx("a", {
1643
+ href: "#",
1644
+ children: /*#__PURE__*/jsxRuntime.jsx(fa.FaTwitter, {})
1645
+ }), /*#__PURE__*/jsxRuntime.jsx("a", {
1646
+ href: "#",
1647
+ children: /*#__PURE__*/jsxRuntime.jsx(fa.FaLinkedin, {})
1648
+ })]
1649
+ }), /*#__PURE__*/jsxRuntime.jsx(CenteredCopyright, {
1650
+ children: footerData.copyright
1651
+ })]
1652
+ })
1653
+ });
1468
1654
  default:
1469
1655
  return null;
1470
1656
  }
@@ -1493,34 +1679,34 @@ const variantStyles = {
1493
1679
 
1494
1680
  // Default icons mapping
1495
1681
  const defaultIcons = {
1496
- header: /*#__PURE__*/React.createElement(fa.FaHome, null),
1497
- card: /*#__PURE__*/React.createElement(fa.FaBed, null),
1498
- button: /*#__PURE__*/React.createElement(fa.FaConciergeBell, null),
1499
- footer: /*#__PURE__*/React.createElement(fa.FaInfoCircle, null),
1500
- sidebar: /*#__PURE__*/React.createElement(fa.FaUser, null)
1682
+ header: /*#__PURE__*/jsxRuntime.jsx(fa.FaHome, {}),
1683
+ card: /*#__PURE__*/jsxRuntime.jsx(fa.FaBed, {}),
1684
+ button: /*#__PURE__*/jsxRuntime.jsx(fa.FaConciergeBell, {}),
1685
+ footer: /*#__PURE__*/jsxRuntime.jsx(fa.FaInfoCircle, {}),
1686
+ sidebar: /*#__PURE__*/jsxRuntime.jsx(fa.FaUser, {})
1501
1687
  };
1502
1688
 
1503
1689
  // Default items fallback
1504
1690
  const defaultItems = [{
1505
1691
  name: "Header",
1506
1692
  href: "#",
1507
- icon: /*#__PURE__*/React.createElement(fa.FaHome, null)
1693
+ icon: /*#__PURE__*/jsxRuntime.jsx(fa.FaHome, {})
1508
1694
  }, {
1509
1695
  name: "Card",
1510
1696
  href: "#",
1511
- icon: /*#__PURE__*/React.createElement(fa.FaBed, null)
1697
+ icon: /*#__PURE__*/jsxRuntime.jsx(fa.FaBed, {})
1512
1698
  }, {
1513
1699
  name: "Button",
1514
1700
  href: "#",
1515
- icon: /*#__PURE__*/React.createElement(fa.FaConciergeBell, null)
1701
+ icon: /*#__PURE__*/jsxRuntime.jsx(fa.FaConciergeBell, {})
1516
1702
  }, {
1517
1703
  name: "Footer",
1518
1704
  href: "#",
1519
- icon: /*#__PURE__*/React.createElement(fa.FaInfoCircle, null)
1705
+ icon: /*#__PURE__*/jsxRuntime.jsx(fa.FaInfoCircle, {})
1520
1706
  }, {
1521
1707
  name: "Sidebar",
1522
1708
  href: "#",
1523
- icon: /*#__PURE__*/React.createElement(fa.FaUser, null)
1709
+ icon: /*#__PURE__*/jsxRuntime.jsx(fa.FaUser, {})
1524
1710
  }];
1525
1711
  const CompactSidebar = styled.aside`
1526
1712
  font-family: "Inter", sans-serif;
@@ -1902,7 +2088,7 @@ const FloatingItemButton = styled.button`
1902
2088
  const getItemIcon = item => {
1903
2089
  if (item.icon) return item.icon;
1904
2090
  const name = (item.name || item.label || "").toLowerCase();
1905
- return defaultIcons[name] || /*#__PURE__*/React.createElement(fa.FaHome, null);
2091
+ return defaultIcons[name] || /*#__PURE__*/jsxRuntime.jsx(fa.FaHome, {});
1906
2092
  };
1907
2093
 
1908
2094
  // Helper function to get item display name
@@ -1925,68 +2111,96 @@ function SidebarVariant({
1925
2111
  const name = getItemName(item);
1926
2112
  const hasHref = item.href && item.href !== "";
1927
2113
  if (hasHref) {
1928
- return /*#__PURE__*/React.createElement(CompactItemLink, {
1929
- key: item.name || item.label || index,
2114
+ return /*#__PURE__*/jsxRuntime.jsx(CompactItemLink, {
1930
2115
  href: item.href,
1931
2116
  "data-label": name,
1932
- onClick: () => onSelect?.(name.toLowerCase())
1933
- }, icon);
2117
+ onClick: () => onSelect?.(name.toLowerCase()),
2118
+ children: icon
2119
+ }, item.name || item.label || index);
1934
2120
  }
1935
- return /*#__PURE__*/React.createElement(CompactItemButton, {
1936
- key: item.name || item.label || index,
2121
+ return /*#__PURE__*/jsxRuntime.jsx(CompactItemButton, {
1937
2122
  "data-label": name,
1938
- onClick: () => onSelect?.(name.toLowerCase())
1939
- }, icon);
2123
+ onClick: () => onSelect?.(name.toLowerCase()),
2124
+ children: icon
2125
+ }, item.name || item.label || index);
1940
2126
  };
1941
2127
  const renderExpandedItem = (item, index) => {
1942
2128
  const icon = getItemIcon(item);
1943
2129
  const name = getItemName(item);
1944
2130
  const hasHref = item.href && item.href !== "";
1945
2131
  if (hasHref) {
1946
- return /*#__PURE__*/React.createElement(ExpandedItemLink, {
1947
- key: item.name || item.label || index,
2132
+ return /*#__PURE__*/jsxRuntime.jsxs(ExpandedItemLink, {
1948
2133
  href: item.href,
1949
- onClick: () => onSelect?.(name.toLowerCase())
1950
- }, /*#__PURE__*/React.createElement(ItemLeft, null, icon, /*#__PURE__*/React.createElement("span", null, name)), /*#__PURE__*/React.createElement(fa.FaChevronRight, {
2134
+ onClick: () => onSelect?.(name.toLowerCase()),
2135
+ children: [/*#__PURE__*/jsxRuntime.jsxs(ItemLeft, {
2136
+ children: [icon, /*#__PURE__*/jsxRuntime.jsx("span", {
2137
+ children: name
2138
+ })]
2139
+ }), /*#__PURE__*/jsxRuntime.jsx(fa.FaChevronRight, {
2140
+ size: 14,
2141
+ style: {
2142
+ opacity: 0.5
2143
+ }
2144
+ })]
2145
+ }, item.name || item.label || index);
2146
+ }
2147
+ return /*#__PURE__*/jsxRuntime.jsxs(ExpandedItemButton, {
2148
+ onClick: () => onSelect?.(name.toLowerCase()),
2149
+ children: [/*#__PURE__*/jsxRuntime.jsxs(ItemLeft, {
2150
+ children: [icon, /*#__PURE__*/jsxRuntime.jsx("span", {
2151
+ children: name
2152
+ })]
2153
+ }), /*#__PURE__*/jsxRuntime.jsx(fa.FaChevronRight, {
1951
2154
  size: 14,
1952
2155
  style: {
1953
2156
  opacity: 0.5
1954
2157
  }
1955
- }));
1956
- }
1957
- return /*#__PURE__*/React.createElement(ExpandedItemButton, {
1958
- key: item.name || item.label || index,
1959
- onClick: () => onSelect?.(name.toLowerCase())
1960
- }, /*#__PURE__*/React.createElement(ItemLeft, null, icon, /*#__PURE__*/React.createElement("span", null, name)), /*#__PURE__*/React.createElement(fa.FaChevronRight, {
1961
- size: 14,
1962
- style: {
1963
- opacity: 0.5
1964
- }
1965
- }));
2158
+ })]
2159
+ }, item.name || item.label || index);
1966
2160
  };
1967
2161
  const renderFloatingItem = (item, index) => {
1968
2162
  const icon = getItemIcon(item);
1969
2163
  const name = getItemName(item);
1970
2164
  const hasHref = item.href && item.href !== "";
1971
2165
  if (hasHref) {
1972
- return /*#__PURE__*/React.createElement(FloatingItemLink, {
1973
- key: item.name || item.label || index,
2166
+ return /*#__PURE__*/jsxRuntime.jsxs(FloatingItemLink, {
1974
2167
  href: item.href,
1975
- onClick: () => onSelect?.(name.toLowerCase())
1976
- }, icon, /*#__PURE__*/React.createElement("span", null, name));
2168
+ onClick: () => onSelect?.(name.toLowerCase()),
2169
+ children: [icon, /*#__PURE__*/jsxRuntime.jsx("span", {
2170
+ children: name
2171
+ })]
2172
+ }, item.name || item.label || index);
1977
2173
  }
1978
- return /*#__PURE__*/React.createElement(FloatingItemButton, {
1979
- key: item.name || item.label || index,
1980
- onClick: () => onSelect?.(name.toLowerCase())
1981
- }, icon, /*#__PURE__*/React.createElement("span", null, name));
2174
+ return /*#__PURE__*/jsxRuntime.jsxs(FloatingItemButton, {
2175
+ onClick: () => onSelect?.(name.toLowerCase()),
2176
+ children: [icon, /*#__PURE__*/jsxRuntime.jsx("span", {
2177
+ children: name
2178
+ })]
2179
+ }, item.name || item.label || index);
1982
2180
  };
1983
2181
  switch (variant) {
1984
2182
  case "compact":
1985
- return /*#__PURE__*/React.createElement(CompactSidebar, null, /*#__PURE__*/React.createElement(CompactTitle, null, sidebarTitle), menuItems.map((item, index) => renderCompactItem(item, index)));
2183
+ return /*#__PURE__*/jsxRuntime.jsxs(CompactSidebar, {
2184
+ children: [/*#__PURE__*/jsxRuntime.jsx(CompactTitle, {
2185
+ children: sidebarTitle
2186
+ }), menuItems.map((item, index) => renderCompactItem(item, index))]
2187
+ });
1986
2188
  case "expanded":
1987
- return /*#__PURE__*/React.createElement(ExpandedSidebar, null, /*#__PURE__*/React.createElement(ExpandedTitle, null, sidebarTitle), /*#__PURE__*/React.createElement(ExpandedSection, null, /*#__PURE__*/React.createElement(SectionLabel, null, "Components"), menuItems.map((item, index) => renderExpandedItem(item, index))));
2189
+ return /*#__PURE__*/jsxRuntime.jsxs(ExpandedSidebar, {
2190
+ children: [/*#__PURE__*/jsxRuntime.jsx(ExpandedTitle, {
2191
+ children: sidebarTitle
2192
+ }), /*#__PURE__*/jsxRuntime.jsxs(ExpandedSection, {
2193
+ children: [/*#__PURE__*/jsxRuntime.jsx(SectionLabel, {
2194
+ children: "Components"
2195
+ }), menuItems.map((item, index) => renderExpandedItem(item, index))]
2196
+ })]
2197
+ });
1988
2198
  case "floating":
1989
- return /*#__PURE__*/React.createElement(FloatingSidebar, null, /*#__PURE__*/React.createElement(FloatingTitle, null, sidebarTitle), menuItems.map((item, index) => renderFloatingItem(item, index)));
2199
+ return /*#__PURE__*/jsxRuntime.jsxs(FloatingSidebar, {
2200
+ children: [/*#__PURE__*/jsxRuntime.jsx(FloatingTitle, {
2201
+ children: sidebarTitle
2202
+ }), menuItems.map((item, index) => renderFloatingItem(item, index))]
2203
+ });
1990
2204
  default:
1991
2205
  return null;
1992
2206
  }