@pathscale/ui 0.0.120 → 0.0.121

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.js CHANGED
@@ -9397,7 +9397,7 @@ const DropdownDetails = Object.assign(Details, {
9397
9397
  Toggle: DropdownToggle_Summary
9398
9398
  });
9399
9399
  var DropdownItem_tmpl$ = /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_solid_js_web_35d951b7__.template)("<li role=menuitem>"), DropdownItem_tmpl$2 = /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_solid_js_web_35d951b7__.template)("<a>"), DropdownItem_tmpl$3 = /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_solid_js_web_35d951b7__.template)("<button>");
9400
- const DropdownItem_DropdownItem = (props)=>{
9400
+ const DropdownItem = (props)=>{
9401
9401
  const dropdownContext = (0, __WEBPACK_EXTERNAL_MODULE_solid_js_aeefcc6d__.useContext)(DropdownContext);
9402
9402
  const defaultProps = (0, __WEBPACK_EXTERNAL_MODULE_solid_js_aeefcc6d__.mergeProps)({
9403
9403
  closeOnClick: true
@@ -9439,7 +9439,7 @@ const DropdownItem_DropdownItem = (props)=>{
9439
9439
  return _el$;
9440
9440
  })();
9441
9441
  };
9442
- const DropdownItem = DropdownItem_DropdownItem;
9442
+ const dropdown_DropdownItem = DropdownItem;
9443
9443
  var DropdownMenu_tmpl$ = /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_solid_js_web_35d951b7__.template)("<ul>");
9444
9444
  const DropdownMenu = (props)=>{
9445
9445
  const [local, others] = (0, __WEBPACK_EXTERNAL_MODULE_solid_js_aeefcc6d__.splitProps)(props, [
@@ -9641,7 +9641,7 @@ const dropdown_Dropdown = Object.assign(Dropdown, {
9641
9641
  Details: DropdownDetails,
9642
9642
  Toggle: dropdown_DropdownToggle,
9643
9643
  Menu: dropdown_DropdownMenu,
9644
- Item: DropdownItem
9644
+ Item: dropdown_DropdownItem
9645
9645
  });
9646
9646
  const dropdown = dropdown_Dropdown;
9647
9647
  var FileInput_tmpl$ = /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_solid_js_web_35d951b7__.template)("<input>");
@@ -10940,7 +10940,7 @@ const immersive_landing_ImmersiveLandingNavigation = ImmersiveLandingNavigation;
10940
10940
  (0, __WEBPACK_EXTERNAL_MODULE_solid_js_web_35d951b7__.delegateEvents)([
10941
10941
  "click"
10942
10942
  ]);
10943
- var ImmersiveLanding_tmpl$ = /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_solid_js_web_35d951b7__.template)('<div><div class="relative h-full w-full"><div class="relative z-10 h-full w-full">'), ImmersiveLanding_tmpl$2 = /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_solid_js_web_35d951b7__.template)('<div class="absolute inset-0 flex items-end justify-end p-6"aria-hidden=true><span class="font-mono text-base-content/20 text-[clamp(0.75rem,2vw,1.25rem)] tracking-[0.4em]">v'), ImmersiveLanding_tmpl$3 = /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_solid_js_web_35d951b7__.template)('<div class="pointer-events-none fixed inset-0 z-30">');
10943
+ var ImmersiveLanding_tmpl$ = /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_solid_js_web_35d951b7__.template)('<div><div class="relative z-10 h-full w-full">');
10944
10944
  const ImmersiveLanding = (props)=>{
10945
10945
  const [local, others] = (0, __WEBPACK_EXTERNAL_MODULE_solid_js_aeefcc6d__.splitProps)(props, [
10946
10946
  "pages",
@@ -10951,9 +10951,6 @@ const ImmersiveLanding = (props)=>{
10951
10951
  "enableScrollNavigation",
10952
10952
  "showNavigation",
10953
10953
  "showArrows",
10954
- "appVersion",
10955
- "overlay",
10956
- "children",
10957
10954
  "class",
10958
10955
  "className",
10959
10956
  "style"
@@ -10977,20 +10974,18 @@ const ImmersiveLanding = (props)=>{
10977
10974
  isLastPage: navigation.isLastPage,
10978
10975
  direction: navigation.direction,
10979
10976
  transitionDuration: navigation.transitionDuration,
10980
- pages: local.pages,
10981
- appVersion: local.appVersion
10977
+ pages: local.pages
10982
10978
  };
10983
10979
  const showNav = ()=>false !== local.showNavigation;
10984
10980
  const showArrowNav = ()=>false !== local.showArrows;
10985
- const classes = ()=>twMerge("fixed inset-0 h-screen w-screen overflow-hidden bg-transparent relative isolate", local.class, local.className);
10986
- const renderChildren = ()=>"function" == typeof local.children ? local.children(contextValue) : local.children;
10987
- const renderOverlay = ()=>"function" == typeof local.overlay ? local.overlay(contextValue) : local.overlay;
10981
+ const classes = ()=>twMerge("fixed inset-0 overflow-hidden bg-transparent", local.class, local.className);
10982
+ const renderChildren = ()=>"function" == typeof props.children ? props.children(contextValue) : props.children;
10988
10983
  return (0, __WEBPACK_EXTERNAL_MODULE_solid_js_web_35d951b7__.createComponent)(ImmersiveLandingContext.Provider, {
10989
10984
  value: contextValue,
10990
10985
  get children () {
10991
10986
  return [
10992
10987
  (()=>{
10993
- var _el$ = ImmersiveLanding_tmpl$(), _el$2 = _el$.firstChild, _el$3 = _el$2.firstChild;
10988
+ var _el$ = ImmersiveLanding_tmpl$(), _el$2 = _el$.firstChild;
10994
10989
  (0, __WEBPACK_EXTERNAL_MODULE_solid_js_web_35d951b7__.spread)(_el$, (0, __WEBPACK_EXTERNAL_MODULE_solid_js_web_35d951b7__.mergeProps)({
10995
10990
  get ["class"] () {
10996
10991
  return classes();
@@ -10999,30 +10994,9 @@ const ImmersiveLanding = (props)=>{
10999
10994
  return local.style;
11000
10995
  }
11001
10996
  }, others), false, true);
11002
- (0, __WEBPACK_EXTERNAL_MODULE_solid_js_web_35d951b7__.insert)(_el$3, renderChildren);
10997
+ (0, __WEBPACK_EXTERNAL_MODULE_solid_js_web_35d951b7__.insert)(_el$2, renderChildren);
11003
10998
  return _el$;
11004
10999
  })(),
11005
- (0, __WEBPACK_EXTERNAL_MODULE_solid_js_web_35d951b7__.createComponent)(__WEBPACK_EXTERNAL_MODULE_solid_js_aeefcc6d__.Show, {
11006
- get when () {
11007
- return local.overlay || local.appVersion;
11008
- },
11009
- get children () {
11010
- var _el$4 = ImmersiveLanding_tmpl$3();
11011
- (0, __WEBPACK_EXTERNAL_MODULE_solid_js_web_35d951b7__.insert)(_el$4, renderOverlay, null);
11012
- (0, __WEBPACK_EXTERNAL_MODULE_solid_js_web_35d951b7__.insert)(_el$4, (0, __WEBPACK_EXTERNAL_MODULE_solid_js_web_35d951b7__.createComponent)(__WEBPACK_EXTERNAL_MODULE_solid_js_aeefcc6d__.Show, {
11013
- get when () {
11014
- return local.appVersion;
11015
- },
11016
- get children () {
11017
- var _el$5 = ImmersiveLanding_tmpl$2(), _el$6 = _el$5.firstChild;
11018
- _el$6.firstChild;
11019
- (0, __WEBPACK_EXTERNAL_MODULE_solid_js_web_35d951b7__.insert)(_el$6, ()=>local.appVersion, null);
11020
- return _el$5;
11021
- }
11022
- }), null);
11023
- return _el$4;
11024
- }
11025
- }),
11026
11000
  (0, __WEBPACK_EXTERNAL_MODULE_solid_js_web_35d951b7__.memo)(()=>(0, __WEBPACK_EXTERNAL_MODULE_solid_js_web_35d951b7__.memo)(()=>!!showArrowNav())() && (0, __WEBPACK_EXTERNAL_MODULE_solid_js_web_35d951b7__.createComponent)(immersive_landing_ImmersiveLandingArrows, {
11027
11001
  get onPrev () {
11028
11002
  return navigation.goPrev;
@@ -11255,6 +11229,567 @@ const Link = (props)=>{
11255
11229
  })();
11256
11230
  };
11257
11231
  const link_Link = Link;
11232
+ var LiveChatPanel_tmpl$ = /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_solid_js_web_35d951b7__.template)('<svg xmlns=http://www.w3.org/2000/svg class="w-5 h-5"fill=none viewBox="0 0 24 24"stroke=currentColor><path stroke-linecap=round stroke-linejoin=round stroke-width=2 d="M8 12h.01M12 12h.01M16 12h.01M21 12c0 4.418-4.03 8-9 8a9.863 9.863 0 01-4.255-.949L3 20l1.395-3.72C3.512 15.042 3 13.574 3 12c0-4.418 4.03-8 9-8s9 3.582 9 8z">'), LiveChatPanel_tmpl$2 = /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_solid_js_web_35d951b7__.template)('<h3 class="font-semibold text-lg">'), LiveChatPanel_tmpl$3 = /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_solid_js_web_35d951b7__.template)('<div><div class="flex-shrink-0 bg-primary text-primary-content px-4 py-4 flex items-center justify-between"><button class="hover:bg-primary-focus rounded-lg p-1 transition-colors"><svg xmlns=http://www.w3.org/2000/svg class="w-5 h-5"fill=none viewBox="0 0 24 24"stroke=currentColor><path stroke-linecap=round stroke-linejoin=round stroke-width=2 d="M6 18L18 6M6 6l12 12"></path></svg></button></div><div class="flex-1 overflow-y-auto px-4 py-4 space-y-4"></div><div class="flex-shrink-0 border-t border-base-300 bg-base-100 p-3">'), LiveChatPanel_tmpl$4 = /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_solid_js_web_35d951b7__.template)("<div>"), LiveChatPanel_tmpl$5 = /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_solid_js_web_35d951b7__.template)('<div><p class="text-sm leading-relaxed whitespace-pre-wrap break-words">'), _tmpl$6 = /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_solid_js_web_35d951b7__.template)('<span class="text-xs text-base-content/50 mt-1 px-1">'), _tmpl$7 = /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_solid_js_web_35d951b7__.template)('<span class="w-4 h-4 border-2 border-primary-content/30 border-t-primary-content rounded-full animate-spin inline-block">');
11233
+ const getMockMessages = ()=>{
11234
+ const salesMessages = [
11235
+ {
11236
+ messageId: "sales-1",
11237
+ content: "Hi! I'm interested in your product. Can you tell me more?",
11238
+ sender: "user",
11239
+ timestamp: Date.now() - 3600000
11240
+ },
11241
+ {
11242
+ messageId: "sales-2",
11243
+ content: "Hello! Thanks for your interest. We offer flexible pricing plans starting at $49/month. Would you like to schedule a demo?",
11244
+ sender: "agent",
11245
+ timestamp: Date.now() - 3500000
11246
+ },
11247
+ {
11248
+ messageId: "sales-3",
11249
+ content: "That sounds great! What features are included in the basic plan?",
11250
+ sender: "user",
11251
+ timestamp: Date.now() - 3400000
11252
+ }
11253
+ ];
11254
+ const supportMessages = [
11255
+ {
11256
+ messageId: "support-1",
11257
+ content: "I'm having trouble connecting. It keeps showing 'Connection Failed'.",
11258
+ sender: "user",
11259
+ timestamp: Date.now() - 7200000
11260
+ },
11261
+ {
11262
+ messageId: "support-2",
11263
+ content: "I'm sorry to hear that. Let me help you troubleshoot. Can you tell me which browser you're using?",
11264
+ sender: "agent",
11265
+ timestamp: Date.now() - 7100000
11266
+ },
11267
+ {
11268
+ messageId: "support-3",
11269
+ content: "I'm using Chrome version 121 on Windows 11",
11270
+ sender: "user",
11271
+ timestamp: Date.now() - 7000000
11272
+ },
11273
+ {
11274
+ messageId: "support-4",
11275
+ content: "Thanks for that info. Let's try clearing your browser cache first. Can you go to Settings > Privacy and security > Clear browsing data?",
11276
+ sender: "agent",
11277
+ timestamp: Date.now() - 6900000
11278
+ }
11279
+ ];
11280
+ return [
11281
+ ...salesMessages,
11282
+ ...supportMessages
11283
+ ].sort((a, b)=>a.timestamp - b.timestamp);
11284
+ };
11285
+ const formatTime = (timestamp)=>new Intl.DateTimeFormat("en-US", {
11286
+ hour: "numeric",
11287
+ minute: "2-digit",
11288
+ hour12: true
11289
+ }).format(new Date(timestamp));
11290
+ const LiveChatPanel_LiveChatPanel = (props)=>{
11291
+ const [local, others] = (0, __WEBPACK_EXTERNAL_MODULE_solid_js_aeefcc6d__.splitProps)(props, [
11292
+ "onClose",
11293
+ "title",
11294
+ "placeholder",
11295
+ "closeLabel",
11296
+ "sendLabel",
11297
+ "emptyMessage",
11298
+ "mockMode",
11299
+ "messages",
11300
+ "onSendMessage",
11301
+ "isSending",
11302
+ "class",
11303
+ "className",
11304
+ "style"
11305
+ ]);
11306
+ const [internalMessages, setInternalMessages] = (0, __WEBPACK_EXTERNAL_MODULE_solid_js_aeefcc6d__.createSignal)([]);
11307
+ const [inputValue, setInputValue] = (0, __WEBPACK_EXTERNAL_MODULE_solid_js_aeefcc6d__.createSignal)("");
11308
+ const [sending, setSending] = (0, __WEBPACK_EXTERNAL_MODULE_solid_js_aeefcc6d__.createSignal)(false);
11309
+ (0, __WEBPACK_EXTERNAL_MODULE_solid_js_aeefcc6d__.createEffect)(()=>{
11310
+ if (local.mockMode) setInternalMessages(getMockMessages());
11311
+ else if (local.messages) setInternalMessages(local.messages);
11312
+ });
11313
+ (0, __WEBPACK_EXTERNAL_MODULE_solid_js_aeefcc6d__.createEffect)(()=>{
11314
+ if (!local.mockMode && local.messages) setInternalMessages(local.messages);
11315
+ });
11316
+ const isSending = ()=>local.isSending ?? sending();
11317
+ const handleSend = async ()=>{
11318
+ const content = inputValue().trim();
11319
+ if (!content || isSending()) return;
11320
+ if (local.mockMode) {
11321
+ const userMessage = {
11322
+ messageId: `user-${Date.now()}`,
11323
+ content,
11324
+ sender: "user",
11325
+ timestamp: Date.now()
11326
+ };
11327
+ setInternalMessages((prev)=>[
11328
+ ...prev,
11329
+ userMessage
11330
+ ]);
11331
+ setInputValue("");
11332
+ setTimeout(()=>{
11333
+ const agentMessage = {
11334
+ messageId: `agent-${Date.now()}`,
11335
+ content: "Thanks for your message! This is a demo response.",
11336
+ sender: "agent",
11337
+ timestamp: Date.now()
11338
+ };
11339
+ setInternalMessages((prev)=>[
11340
+ ...prev,
11341
+ agentMessage
11342
+ ]);
11343
+ }, 1000);
11344
+ } else if (local.onSendMessage) {
11345
+ setSending(true);
11346
+ try {
11347
+ const response = await local.onSendMessage({
11348
+ message: content
11349
+ });
11350
+ const userMessage = {
11351
+ messageId: response.messageId,
11352
+ content,
11353
+ sender: "user",
11354
+ timestamp: response.timestamp
11355
+ };
11356
+ setInternalMessages((prev)=>[
11357
+ ...prev,
11358
+ userMessage
11359
+ ]);
11360
+ setInputValue("");
11361
+ } catch (error) {
11362
+ console.error("[LiveChatPanel] Failed to send message:", error);
11363
+ } finally{
11364
+ setSending(false);
11365
+ }
11366
+ }
11367
+ };
11368
+ const handleKeyPress = (e)=>{
11369
+ if ("Enter" === e.key && !e.shiftKey) {
11370
+ e.preventDefault();
11371
+ handleSend();
11372
+ }
11373
+ };
11374
+ const classes = ()=>twMerge(`fixed inset-0
11375
+ sm:inset-auto
11376
+ sm:bottom-20 sm:right-4
11377
+ md:bottom-24 md:right-6
11378
+ z-51
11379
+ w-full h-full
11380
+ sm:w-96 md:w-[400px]
11381
+ sm:h-[70vh]
11382
+ md:h-[75vh]
11383
+ lg:h-[80vh]
11384
+ sm:max-h-[800px]
11385
+ sm:min-h-[420px]
11386
+ bg-base-100
11387
+ sm:rounded-2xl
11388
+ shadow-2xl
11389
+ flex flex-col
11390
+ overflow-hidden`, clsx(local.class, local.className));
11391
+ return (()=>{
11392
+ var _el$ = LiveChatPanel_tmpl$3(), _el$2 = _el$.firstChild, _el$5 = _el$2.firstChild, _el$6 = _el$2.nextSibling, _el$7 = _el$6.nextSibling;
11393
+ (0, __WEBPACK_EXTERNAL_MODULE_solid_js_web_35d951b7__.spread)(_el$, (0, __WEBPACK_EXTERNAL_MODULE_solid_js_web_35d951b7__.mergeProps)(others, {
11394
+ get ["class"] () {
11395
+ return classes();
11396
+ },
11397
+ get style () {
11398
+ return local.style;
11399
+ }
11400
+ }), false, true);
11401
+ (0, __WEBPACK_EXTERNAL_MODULE_solid_js_web_35d951b7__.insert)(_el$2, (0, __WEBPACK_EXTERNAL_MODULE_solid_js_web_35d951b7__.createComponent)(flex_Flex, {
11402
+ align: "center",
11403
+ gap: "sm",
11404
+ get children () {
11405
+ return [
11406
+ LiveChatPanel_tmpl$(),
11407
+ (()=>{
11408
+ var _el$4 = LiveChatPanel_tmpl$2();
11409
+ (0, __WEBPACK_EXTERNAL_MODULE_solid_js_web_35d951b7__.insert)(_el$4, ()=>local.title ?? "Chat with us");
11410
+ return _el$4;
11411
+ })()
11412
+ ];
11413
+ }
11414
+ }), _el$5);
11415
+ (0, __WEBPACK_EXTERNAL_MODULE_solid_js_web_35d951b7__.addEventListener)(_el$5, "click", local.onClose, true);
11416
+ (0, __WEBPACK_EXTERNAL_MODULE_solid_js_web_35d951b7__.insert)(_el$6, (0, __WEBPACK_EXTERNAL_MODULE_solid_js_web_35d951b7__.createComponent)(__WEBPACK_EXTERNAL_MODULE_solid_js_aeefcc6d__.For, {
11417
+ get each () {
11418
+ return internalMessages();
11419
+ },
11420
+ children: (message)=>{
11421
+ const isUser = "user" === message.sender;
11422
+ return (0, __WEBPACK_EXTERNAL_MODULE_solid_js_web_35d951b7__.createComponent)(flex_Flex, {
11423
+ direction: isUser ? "row-reverse" : "row",
11424
+ gap: "sm",
11425
+ class: "w-full",
11426
+ get children () {
11427
+ return [
11428
+ (()=>{
11429
+ var _el$8 = LiveChatPanel_tmpl$4();
11430
+ (0, __WEBPACK_EXTERNAL_MODULE_solid_js_web_35d951b7__.className)(_el$8, `flex-shrink-0 w-8 h-8 rounded-full flex items-center justify-center text-xs font-semibold ${isUser ? "bg-primary text-primary-content" : "bg-base-300 text-base-content"}`);
11431
+ (0, __WEBPACK_EXTERNAL_MODULE_solid_js_web_35d951b7__.insert)(_el$8, isUser ? "U" : "A");
11432
+ return _el$8;
11433
+ })(),
11434
+ (0, __WEBPACK_EXTERNAL_MODULE_solid_js_web_35d951b7__.createComponent)(flex_Flex, {
11435
+ direction: "col",
11436
+ align: isUser ? "end" : "start",
11437
+ class: "max-w-[75%]",
11438
+ get children () {
11439
+ return [
11440
+ (()=>{
11441
+ var _el$9 = LiveChatPanel_tmpl$5(), _el$0 = _el$9.firstChild;
11442
+ (0, __WEBPACK_EXTERNAL_MODULE_solid_js_web_35d951b7__.className)(_el$9, `px-3 py-2 rounded-2xl ${isUser ? "bg-primary text-primary-content rounded-tr-sm" : "bg-base-200 text-base-content rounded-tl-sm"}`);
11443
+ (0, __WEBPACK_EXTERNAL_MODULE_solid_js_web_35d951b7__.insert)(_el$0, ()=>message.content);
11444
+ return _el$9;
11445
+ })(),
11446
+ (()=>{
11447
+ var _el$1 = _tmpl$6();
11448
+ (0, __WEBPACK_EXTERNAL_MODULE_solid_js_web_35d951b7__.insert)(_el$1, ()=>formatTime(message.timestamp));
11449
+ return _el$1;
11450
+ })()
11451
+ ];
11452
+ }
11453
+ })
11454
+ ];
11455
+ }
11456
+ });
11457
+ }
11458
+ }), null);
11459
+ (0, __WEBPACK_EXTERNAL_MODULE_solid_js_web_35d951b7__.insert)(_el$6, (0, __WEBPACK_EXTERNAL_MODULE_solid_js_web_35d951b7__.createComponent)(__WEBPACK_EXTERNAL_MODULE_solid_js_aeefcc6d__.Show, {
11460
+ get when () {
11461
+ return 0 === internalMessages().length;
11462
+ },
11463
+ get children () {
11464
+ return (0, __WEBPACK_EXTERNAL_MODULE_solid_js_web_35d951b7__.createComponent)(flex_Flex, {
11465
+ justify: "center",
11466
+ align: "center",
11467
+ class: "h-full text-base-content/50 text-sm",
11468
+ get children () {
11469
+ return local.emptyMessage ?? "No messages yet. Start a conversation!";
11470
+ }
11471
+ });
11472
+ }
11473
+ }), null);
11474
+ (0, __WEBPACK_EXTERNAL_MODULE_solid_js_web_35d951b7__.insert)(_el$7, (0, __WEBPACK_EXTERNAL_MODULE_solid_js_web_35d951b7__.createComponent)(flex_Flex, {
11475
+ gap: "sm",
11476
+ get children () {
11477
+ return [
11478
+ (0, __WEBPACK_EXTERNAL_MODULE_solid_js_web_35d951b7__.createComponent)(input, {
11479
+ type: "text",
11480
+ get value () {
11481
+ return inputValue();
11482
+ },
11483
+ onInput: (e)=>setInputValue(e.currentTarget.value),
11484
+ onKeyPress: handleKeyPress,
11485
+ get placeholder () {
11486
+ return local.placeholder ?? "Message support...";
11487
+ },
11488
+ get disabled () {
11489
+ return isSending();
11490
+ },
11491
+ class: "flex-1 px-3 py-2 bg-base-200 border border-base-300 rounded-lg text-sm focus:outline-none focus:ring-2 focus:ring-primary/50 focus:border-primary disabled:opacity-50 disabled:cursor-not-allowed transition-all"
11492
+ }),
11493
+ (0, __WEBPACK_EXTERNAL_MODULE_solid_js_web_35d951b7__.createComponent)(button_Button, {
11494
+ onClick: handleSend,
11495
+ get disabled () {
11496
+ return !inputValue().trim() || isSending();
11497
+ },
11498
+ class: "px-4 py-2",
11499
+ color: "primary",
11500
+ get children () {
11501
+ return (0, __WEBPACK_EXTERNAL_MODULE_solid_js_web_35d951b7__.createComponent)(__WEBPACK_EXTERNAL_MODULE_solid_js_aeefcc6d__.Show, {
11502
+ get when () {
11503
+ return !isSending();
11504
+ },
11505
+ get fallback () {
11506
+ return _tmpl$7();
11507
+ },
11508
+ get children () {
11509
+ return local.sendLabel ?? "Send";
11510
+ }
11511
+ });
11512
+ }
11513
+ })
11514
+ ];
11515
+ }
11516
+ }));
11517
+ (0, __WEBPACK_EXTERNAL_MODULE_solid_js_web_35d951b7__.effect)(()=>(0, __WEBPACK_EXTERNAL_MODULE_solid_js_web_35d951b7__.setAttribute)(_el$5, "aria-label", local.closeLabel ?? "Close chat"));
11518
+ return _el$;
11519
+ })();
11520
+ };
11521
+ const LiveChatPanel = LiveChatPanel_LiveChatPanel;
11522
+ (0, __WEBPACK_EXTERNAL_MODULE_solid_js_web_35d951b7__.delegateEvents)([
11523
+ "click"
11524
+ ]);
11525
+ var LiveChatBubble_tmpl$ = /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_solid_js_web_35d951b7__.template)('<span class="absolute -top-1 -right-1 w-5 h-5 bg-error text-error-content text-xs font-bold rounded-full flex items-center justify-center animate-pulse">'), LiveChatBubble_tmpl$2 = /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_solid_js_web_35d951b7__.template)('<button><span class="pointer-events-none absolute inset-0 rounded-full bg-primary animate-ping opacity-20 group-hover:opacity-0 transition-opacity">'), LiveChatBubble_tmpl$3 = /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_solid_js_web_35d951b7__.template)('<svg xmlns=http://www.w3.org/2000/svg class="w-5 h-5 sm:w-6 sm:h-6"fill=none viewBox="0 0 24 24"stroke=currentColor><path stroke-linecap=round stroke-linejoin=round stroke-width=2 d="M8 12h.01M12 12h.01M16 12h.01M21 12c0 4.418-4.03 8-9 8a9.863 9.863 0 01-4.255-.949L3 20l1.395-3.72C3.512 15.042 3 13.574 3 12c0-4.418 4.03-8 9-8s9 3.582 9 8z">'), LiveChatBubble_tmpl$4 = /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_solid_js_web_35d951b7__.template)('<svg xmlns=http://www.w3.org/2000/svg class="w-5 h-5 sm:w-6 sm:h-6"fill=none viewBox="0 0 24 24"stroke=currentColor><path stroke-linecap=round stroke-linejoin=round stroke-width=2 d="M6 18L18 6M6 6l12 12">');
11526
+ const LiveChatBubble = (props)=>{
11527
+ const [local, others] = (0, __WEBPACK_EXTERNAL_MODULE_solid_js_aeefcc6d__.splitProps)(props, [
11528
+ "position",
11529
+ "aria-label",
11530
+ "unreadCount",
11531
+ "panelProps",
11532
+ "onOpen",
11533
+ "onClose",
11534
+ "children",
11535
+ "class",
11536
+ "className",
11537
+ "style"
11538
+ ]);
11539
+ const [isOpen, setIsOpen] = (0, __WEBPACK_EXTERNAL_MODULE_solid_js_aeefcc6d__.createSignal)(false);
11540
+ const [internalUnread, setInternalUnread] = (0, __WEBPACK_EXTERNAL_MODULE_solid_js_aeefcc6d__.createSignal)(local.unreadCount ?? 0);
11541
+ const unreadCount = ()=>local.unreadCount ?? internalUnread();
11542
+ const toggleChat = ()=>{
11543
+ const newState = !isOpen();
11544
+ setIsOpen(newState);
11545
+ if (newState) {
11546
+ setInternalUnread(0);
11547
+ local.onOpen?.();
11548
+ } else local.onClose?.();
11549
+ };
11550
+ const handleClose = ()=>{
11551
+ setIsOpen(false);
11552
+ local.onClose?.();
11553
+ };
11554
+ const positionClasses = ()=>{
11555
+ const pos = local.position ?? "bottom-right";
11556
+ return "bottom-left" === pos ? "left-4" : "right-4";
11557
+ };
11558
+ const buttonClasses = ()=>twMerge("fixed bottom-5 z-50 w-12 h-12 sm:w-14 sm:h-14 bg-primary text-primary-content rounded-full shadow-lg hover:shadow-xl active:scale-95 transition-all duration-200 flex items-center justify-center group", positionClasses(), clsx(local.class, local.className));
11559
+ return [
11560
+ (()=>{
11561
+ var _el$ = LiveChatBubble_tmpl$2(), _el$3 = _el$.firstChild;
11562
+ (0, __WEBPACK_EXTERNAL_MODULE_solid_js_web_35d951b7__.spread)(_el$, (0, __WEBPACK_EXTERNAL_MODULE_solid_js_web_35d951b7__.mergeProps)(others, {
11563
+ onClick: toggleChat,
11564
+ get ["class"] () {
11565
+ return buttonClasses();
11566
+ },
11567
+ get style () {
11568
+ return local.style;
11569
+ },
11570
+ get ["aria-label"] () {
11571
+ return local["aria-label"] ?? "Open chat";
11572
+ }
11573
+ }), false, true);
11574
+ (0, __WEBPACK_EXTERNAL_MODULE_solid_js_web_35d951b7__.insert)(_el$, ()=>local.children ?? (0, __WEBPACK_EXTERNAL_MODULE_solid_js_web_35d951b7__.createComponent)(__WEBPACK_EXTERNAL_MODULE_solid_js_aeefcc6d__.Show, {
11575
+ get when () {
11576
+ return !isOpen();
11577
+ },
11578
+ get fallback () {
11579
+ return LiveChatBubble_tmpl$4();
11580
+ },
11581
+ get children () {
11582
+ return LiveChatBubble_tmpl$3();
11583
+ }
11584
+ }), _el$3);
11585
+ (0, __WEBPACK_EXTERNAL_MODULE_solid_js_web_35d951b7__.insert)(_el$, (0, __WEBPACK_EXTERNAL_MODULE_solid_js_web_35d951b7__.createComponent)(__WEBPACK_EXTERNAL_MODULE_solid_js_aeefcc6d__.Show, {
11586
+ get when () {
11587
+ return (0, __WEBPACK_EXTERNAL_MODULE_solid_js_web_35d951b7__.memo)(()=>unreadCount() > 0)() && !isOpen();
11588
+ },
11589
+ get children () {
11590
+ var _el$2 = LiveChatBubble_tmpl$();
11591
+ (0, __WEBPACK_EXTERNAL_MODULE_solid_js_web_35d951b7__.insert)(_el$2, (()=>{
11592
+ var _c$ = (0, __WEBPACK_EXTERNAL_MODULE_solid_js_web_35d951b7__.memo)(()=>unreadCount() > 9);
11593
+ return ()=>_c$() ? "9+" : unreadCount();
11594
+ })());
11595
+ return _el$2;
11596
+ }
11597
+ }), _el$3);
11598
+ return _el$;
11599
+ })(),
11600
+ (0, __WEBPACK_EXTERNAL_MODULE_solid_js_web_35d951b7__.createComponent)(__WEBPACK_EXTERNAL_MODULE_solid_js_aeefcc6d__.Show, {
11601
+ get when () {
11602
+ return isOpen();
11603
+ },
11604
+ get children () {
11605
+ return (0, __WEBPACK_EXTERNAL_MODULE_solid_js_web_35d951b7__.createComponent)(LiveChatPanel, (0, __WEBPACK_EXTERNAL_MODULE_solid_js_web_35d951b7__.mergeProps)(()=>local.panelProps ?? {}, {
11606
+ onClose: handleClose
11607
+ }));
11608
+ }
11609
+ })
11610
+ ];
11611
+ };
11612
+ const live_chat_LiveChatBubble = LiveChatBubble;
11613
+ var LanguageSwitcher_tmpl$ = /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_solid_js_web_35d951b7__.template)("<span>");
11614
+ const LanguageSwitcher = (props)=>{
11615
+ const [local, others] = (0, __WEBPACK_EXTERNAL_MODULE_solid_js_aeefcc6d__.splitProps)(props, [
11616
+ "i18n",
11617
+ "class",
11618
+ "className",
11619
+ "style",
11620
+ "aria-label",
11621
+ "currentLanguageLabel",
11622
+ "optionsLabel",
11623
+ "loadingLabel",
11624
+ "onLanguageChange"
11625
+ ]);
11626
+ const currentLanguageName = ()=>local.i18n.languageNames[local.i18n.locale()];
11627
+ const isSelected = (lang)=>local.i18n.locale() === lang;
11628
+ const handleSelect = async (lang)=>{
11629
+ await local.i18n.setLocale(lang);
11630
+ local.onLanguageChange?.(lang);
11631
+ };
11632
+ const classes = ()=>twMerge("min-w-28", clsx(local.class, local.className));
11633
+ return (0, __WEBPACK_EXTERNAL_MODULE_solid_js_web_35d951b7__.createComponent)(dropdown, (0, __WEBPACK_EXTERNAL_MODULE_solid_js_web_35d951b7__.mergeProps)(others, {
11634
+ get ["class"] () {
11635
+ return classes();
11636
+ },
11637
+ get style () {
11638
+ return local.style;
11639
+ },
11640
+ role: void 0,
11641
+ get ["aria-label"] () {
11642
+ return local["aria-label"] ?? "Language selector";
11643
+ },
11644
+ "aria-haspopup": "menu",
11645
+ get children () {
11646
+ return [
11647
+ (0, __WEBPACK_EXTERNAL_MODULE_solid_js_web_35d951b7__.createComponent)(dropdown.Toggle, {
11648
+ class: "bg-base-100 border border-base-300 rounded px-3 py-2 flex gap-2 justify-between items-center",
11649
+ get ["aria-label"] () {
11650
+ return `${local.currentLanguageLabel ?? "Current language"}: ${currentLanguageName()}`;
11651
+ },
11652
+ get children () {
11653
+ return [
11654
+ (()=>{
11655
+ var _el$ = LanguageSwitcher_tmpl$();
11656
+ (0, __WEBPACK_EXTERNAL_MODULE_solid_js_web_35d951b7__.insert)(_el$, currentLanguageName);
11657
+ return _el$;
11658
+ })(),
11659
+ (0, __WEBPACK_EXTERNAL_MODULE_solid_js_web_35d951b7__.createComponent)(__WEBPACK_EXTERNAL_MODULE_solid_js_aeefcc6d__.Show, {
11660
+ get when () {
11661
+ return !local.i18n.isLoading();
11662
+ },
11663
+ get fallback () {
11664
+ return (0, __WEBPACK_EXTERNAL_MODULE_solid_js_web_35d951b7__.createComponent)(icon_Icon, {
11665
+ name: "icon-[mdi--loading]",
11666
+ class: "animate-spin",
11667
+ width: 16,
11668
+ height: 16,
11669
+ get ["aria-label"] () {
11670
+ return local.loadingLabel ?? "Loading language";
11671
+ }
11672
+ });
11673
+ },
11674
+ get children () {
11675
+ return (0, __WEBPACK_EXTERNAL_MODULE_solid_js_web_35d951b7__.createComponent)(icon_Icon, {
11676
+ name: "icon-[mdi--chevron-down]",
11677
+ width: 16,
11678
+ height: 16,
11679
+ "aria-hidden": "true"
11680
+ });
11681
+ }
11682
+ })
11683
+ ];
11684
+ }
11685
+ }),
11686
+ (0, __WEBPACK_EXTERNAL_MODULE_solid_js_web_35d951b7__.createComponent)(dropdown.Menu, {
11687
+ class: "w-full",
11688
+ get ["aria-label"] () {
11689
+ return local.optionsLabel ?? "Language options";
11690
+ },
11691
+ get children () {
11692
+ return (0, __WEBPACK_EXTERNAL_MODULE_solid_js_web_35d951b7__.createComponent)(__WEBPACK_EXTERNAL_MODULE_solid_js_aeefcc6d__.For, {
11693
+ get each () {
11694
+ return local.i18n.languages;
11695
+ },
11696
+ children: (lang)=>(0, __WEBPACK_EXTERNAL_MODULE_solid_js_web_35d951b7__.createComponent)(dropdown.Item, {
11697
+ onClick: ()=>handleSelect(lang.code),
11698
+ get ["class"] () {
11699
+ return isSelected(lang.code) ? "bg-base-200" : "";
11700
+ },
11701
+ get ["aria-current"] () {
11702
+ return isSelected(lang.code) ? "true" : void 0;
11703
+ },
11704
+ get children () {
11705
+ return lang.name;
11706
+ }
11707
+ })
11708
+ });
11709
+ }
11710
+ })
11711
+ ];
11712
+ }
11713
+ }));
11714
+ };
11715
+ const language_switcher_LanguageSwitcher = LanguageSwitcher;
11716
+ function getNestedValue(obj, path) {
11717
+ const keys = path.split(".");
11718
+ let value = obj;
11719
+ for (const key of keys){
11720
+ value = value?.[key];
11721
+ if (void 0 === value) return path;
11722
+ }
11723
+ return "string" == typeof value ? value : path;
11724
+ }
11725
+ function createI18n(options) {
11726
+ const { languages, defaultLanguage = languages[0]?.code ?? "en", storageKey, loadTranslations, initialTranslations = {} } = options;
11727
+ const supportedCodes = languages.map((l)=>l.code);
11728
+ const languageNames = languages.reduce((acc, lang)=>({
11729
+ ...acc,
11730
+ [lang.code]: lang.name
11731
+ }), {});
11732
+ const [locale, setLocaleSignal] = (0, __WEBPACK_EXTERNAL_MODULE_solid_js_aeefcc6d__.createSignal)(defaultLanguage);
11733
+ const [translations, setTranslations] = (0, __WEBPACK_EXTERNAL_MODULE_solid_js_aeefcc6d__.createSignal)(initialTranslations);
11734
+ const [isLoading, setIsLoading] = (0, __WEBPACK_EXTERNAL_MODULE_solid_js_aeefcc6d__.createSignal)(false);
11735
+ const t = (key)=>getNestedValue(translations(), key);
11736
+ const setLocale = async (lang)=>{
11737
+ if (!supportedCodes.includes(lang)) lang = defaultLanguage;
11738
+ if (lang === locale() && Object.keys(translations()).length > 0) return;
11739
+ setIsLoading(true);
11740
+ try {
11741
+ const minDelay = new Promise((resolve)=>setTimeout(resolve, 100));
11742
+ let data;
11743
+ await minDelay;
11744
+ data = lang === defaultLanguage && Object.keys(initialTranslations).length > 0 ? initialTranslations : loadTranslations ? await loadTranslations(lang) : initialTranslations;
11745
+ setTranslations(data);
11746
+ setLocaleSignal(lang);
11747
+ if ("undefined" != typeof window) localStorage.setItem(storageKey, lang);
11748
+ } finally{
11749
+ setIsLoading(false);
11750
+ }
11751
+ };
11752
+ const init = async ()=>{
11753
+ if ("undefined" == typeof window) return;
11754
+ const urlParams = new URLSearchParams(globalThis.location.search);
11755
+ const urlLang = urlParams.get("lang");
11756
+ const saved = localStorage.getItem(storageKey);
11757
+ const browserLang = navigator.language.split("-")[0];
11758
+ let detected;
11759
+ if (urlLang && supportedCodes.includes(urlLang)) {
11760
+ detected = urlLang;
11761
+ urlParams.delete("lang");
11762
+ const newUrl = urlParams.toString() ? `${globalThis.location.pathname}?${urlParams.toString()}` : globalThis.location.pathname;
11763
+ globalThis.history.replaceState({}, "", newUrl);
11764
+ } else detected = saved && supportedCodes.includes(saved) ? saved : supportedCodes.includes(browserLang) ? browserLang : defaultLanguage;
11765
+ await setLocale(detected);
11766
+ };
11767
+ return {
11768
+ locale,
11769
+ isLoading,
11770
+ t,
11771
+ setLocale,
11772
+ init,
11773
+ languages,
11774
+ languageNames
11775
+ };
11776
+ }
11777
+ const I18nContext = (0, __WEBPACK_EXTERNAL_MODULE_solid_js_aeefcc6d__.createContext)();
11778
+ function useI18n() {
11779
+ const context = (0, __WEBPACK_EXTERNAL_MODULE_solid_js_aeefcc6d__.useContext)(I18nContext);
11780
+ if (!context) throw new Error("useI18n must be used within an I18nProvider");
11781
+ return context.i18n;
11782
+ }
11783
+ const I18nProvider = (props)=>(0, __WEBPACK_EXTERNAL_MODULE_solid_js_web_35d951b7__.createComponent)(I18nContext.Provider, {
11784
+ get value () {
11785
+ return {
11786
+ i18n: props.i18n
11787
+ };
11788
+ },
11789
+ get children () {
11790
+ return props.children;
11791
+ }
11792
+ });
11258
11793
  var Mask_tmpl$ = /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_solid_js_web_35d951b7__.template)("<img>");
11259
11794
  function maskClassName({ className, variant } = {}) {
11260
11795
  return twMerge("mask", className, clsx({
@@ -13107,7 +13642,7 @@ const steps_Steps = Object.assign(Steps, {
13107
13642
  Step: steps_Step
13108
13643
  });
13109
13644
  const steps = steps_Steps;
13110
- var SvgBackground_tmpl$ = /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_solid_js_web_35d951b7__.template)("<svg><ellipse></svg>", false, true, false), SvgBackground_tmpl$2 = /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_solid_js_web_35d951b7__.template)("<svg><circle></svg>", false, true, false), SvgBackground_tmpl$3 = /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_solid_js_web_35d951b7__.template)("<svg><circle cx=0 cy=0 r=100 opacity=0.7></svg>", false, true, false), SvgBackground_tmpl$4 = /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_solid_js_web_35d951b7__.template)("<svg><circle cx=400 cy=0 r=120></svg>", false, true, false), SvgBackground_tmpl$5 = /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_solid_js_web_35d951b7__.template)("<svg><circle cx=0 cy=400 r=100 opacity=0.7></svg>", false, true, false), _tmpl$6 = /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_solid_js_web_35d951b7__.template)("<svg><circle cx=400 cy=400 r=120></svg>", false, true, false), _tmpl$7 = /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_solid_js_web_35d951b7__.template)("<svg><circle cx=0 cy=200 r=70 opacity=0.6></svg>", false, true, false), _tmpl$8 = /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_solid_js_web_35d951b7__.template)("<svg><circle cx=200 cy=0 r=100></svg>", false, true, false), _tmpl$9 = /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_solid_js_web_35d951b7__.template)("<svg><circle cx=400 cy=200 r=100></svg>", false, true, false), _tmpl$0 = /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_solid_js_web_35d951b7__.template)("<svg><circle cx=200 cy=400 r=100></svg>", false, true, false), _tmpl$1 = /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_solid_js_web_35d951b7__.template)('<div><div><svg viewBox="0 0 400 400"xmlns=http://www.w3.org/2000/svg><rect width=400 height=400></rect></svg></div><canvas></canvas><div class="relative z-10 h-full w-full">'), _tmpl$10 = /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_solid_js_web_35d951b7__.template)('<div class="absolute inset-0 z-5">');
13645
+ var SvgBackground_tmpl$ = /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_solid_js_web_35d951b7__.template)("<svg><ellipse></svg>", false, true, false), SvgBackground_tmpl$2 = /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_solid_js_web_35d951b7__.template)("<svg><circle></svg>", false, true, false), SvgBackground_tmpl$3 = /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_solid_js_web_35d951b7__.template)("<svg><circle cx=0 cy=0 r=100 opacity=0.7></svg>", false, true, false), SvgBackground_tmpl$4 = /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_solid_js_web_35d951b7__.template)("<svg><circle cx=400 cy=0 r=120></svg>", false, true, false), SvgBackground_tmpl$5 = /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_solid_js_web_35d951b7__.template)("<svg><circle cx=0 cy=400 r=100 opacity=0.7></svg>", false, true, false), SvgBackground_tmpl$6 = /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_solid_js_web_35d951b7__.template)("<svg><circle cx=400 cy=400 r=120></svg>", false, true, false), SvgBackground_tmpl$7 = /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_solid_js_web_35d951b7__.template)("<svg><circle cx=0 cy=200 r=70 opacity=0.6></svg>", false, true, false), _tmpl$8 = /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_solid_js_web_35d951b7__.template)("<svg><circle cx=200 cy=0 r=100></svg>", false, true, false), _tmpl$9 = /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_solid_js_web_35d951b7__.template)("<svg><circle cx=400 cy=200 r=100></svg>", false, true, false), _tmpl$0 = /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_solid_js_web_35d951b7__.template)("<svg><circle cx=200 cy=400 r=100></svg>", false, true, false), _tmpl$1 = /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_solid_js_web_35d951b7__.template)('<div><div><svg viewBox="0 0 400 400"xmlns=http://www.w3.org/2000/svg><rect width=400 height=400></rect></svg></div><canvas></canvas><div class="relative z-10 h-full w-full">'), _tmpl$10 = /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_solid_js_web_35d951b7__.template)('<div class="absolute inset-0 z-5">');
13111
13646
  function SvgBackground_hexToRgb(hex) {
13112
13647
  hex = hex.replace(/^#/, "");
13113
13648
  const bigint = Number.parseInt(hex, 16);
@@ -13267,12 +13802,12 @@ function SvgBackground(props) {
13267
13802
  return _el$6;
13268
13803
  })(),
13269
13804
  (()=>{
13270
- var _el$7 = _tmpl$6();
13805
+ var _el$7 = SvgBackground_tmpl$6();
13271
13806
  (0, __WEBPACK_EXTERNAL_MODULE_solid_js_web_35d951b7__.setAttribute)(_el$7, "fill", colorEnd);
13272
13807
  return _el$7;
13273
13808
  })(),
13274
13809
  (()=>{
13275
- var _el$8 = _tmpl$7();
13810
+ var _el$8 = SvgBackground_tmpl$7();
13276
13811
  (0, __WEBPACK_EXTERNAL_MODULE_solid_js_web_35d951b7__.effect)(()=>(0, __WEBPACK_EXTERNAL_MODULE_solid_js_web_35d951b7__.setAttribute)(_el$8, "fill", getIntermediateColor(0.65)));
13277
13812
  return _el$8;
13278
13813
  })(),
@@ -15008,6 +15543,585 @@ const Textarea = (props)=>{
15008
15543
  })();
15009
15544
  };
15010
15545
  const textarea_Textarea = Textarea;
15546
+ let cspAllowsInlineStyles = null;
15547
+ const checkCspAllowsInlineStyles = ()=>{
15548
+ if (null !== cspAllowsInlineStyles) return cspAllowsInlineStyles;
15549
+ if ("undefined" == typeof window) return true;
15550
+ try {
15551
+ const testEl = document.createElement("div");
15552
+ testEl.style.setProperty("--csp-test", "1");
15553
+ document.body.appendChild(testEl);
15554
+ const computed = getComputedStyle(testEl).getPropertyValue("--csp-test");
15555
+ document.body.removeChild(testEl);
15556
+ cspAllowsInlineStyles = "1" === computed;
15557
+ } catch {
15558
+ cspAllowsInlineStyles = false;
15559
+ }
15560
+ if (!cspAllowsInlineStyles) console.info("[hueShift] CSP blocks inline styles - hue customization disabled");
15561
+ return cspAllowsInlineStyles;
15562
+ };
15563
+ const MIN_CHROMA_SCALE = 0.3;
15564
+ function hslHueToOklchHue(hslHue) {
15565
+ const h = (hslHue % 360 + 360) % 360;
15566
+ const controlPoints = [
15567
+ [
15568
+ 0,
15569
+ 29
15570
+ ],
15571
+ [
15572
+ 30,
15573
+ 55
15574
+ ],
15575
+ [
15576
+ 60,
15577
+ 100
15578
+ ],
15579
+ [
15580
+ 120,
15581
+ 145
15582
+ ],
15583
+ [
15584
+ 180,
15585
+ 195
15586
+ ],
15587
+ [
15588
+ 240,
15589
+ 265
15590
+ ],
15591
+ [
15592
+ 300,
15593
+ 330
15594
+ ],
15595
+ [
15596
+ 360,
15597
+ 389
15598
+ ]
15599
+ ];
15600
+ for(let i = 0; i < controlPoints.length - 1; i++){
15601
+ const [h1, o1] = controlPoints[i];
15602
+ const [h2, o2] = controlPoints[i + 1];
15603
+ if (h >= h1 && h <= h2) {
15604
+ const t = (h - h1) / (h2 - h1);
15605
+ const oklchHue = o1 + t * (o2 - o1);
15606
+ return (oklchHue % 360 + 360) % 360;
15607
+ }
15608
+ }
15609
+ return h;
15610
+ }
15611
+ const PRIMARY_SETTINGS = {
15612
+ light: {
15613
+ "--color-primary": {
15614
+ l: 45,
15615
+ c: 0.2
15616
+ },
15617
+ "--color-primary-content": {
15618
+ l: 98,
15619
+ c: 0.02
15620
+ }
15621
+ },
15622
+ dark: {
15623
+ "--color-primary": {
15624
+ l: 58,
15625
+ c: 0.233
15626
+ },
15627
+ "--color-primary-content": {
15628
+ l: 96,
15629
+ c: 0.018
15630
+ }
15631
+ }
15632
+ };
15633
+ const HARMONY_OFFSETS = {
15634
+ secondary: 108,
15635
+ accent: -94
15636
+ };
15637
+ const HARMONY_SETTINGS = {
15638
+ light: {
15639
+ "--color-secondary": {
15640
+ l: 68,
15641
+ c: 0.162
15642
+ },
15643
+ "--color-secondary-content": {
15644
+ l: 98,
15645
+ c: 0.026
15646
+ },
15647
+ "--color-accent": {
15648
+ l: 60,
15649
+ c: 0.118
15650
+ },
15651
+ "--color-accent-content": {
15652
+ l: 98,
15653
+ c: 0.014
15654
+ }
15655
+ },
15656
+ dark: {
15657
+ "--color-secondary": {
15658
+ l: 63,
15659
+ c: 0.237
15660
+ },
15661
+ "--color-secondary-content": {
15662
+ l: 97,
15663
+ c: 0.013
15664
+ },
15665
+ "--color-accent": {
15666
+ l: 70,
15667
+ c: 0.14
15668
+ },
15669
+ "--color-accent-content": {
15670
+ l: 98,
15671
+ c: 0.014
15672
+ }
15673
+ }
15674
+ };
15675
+ const SEMANTIC_BASE_HUES = {
15676
+ success: 140,
15677
+ warning: 55,
15678
+ error: 10,
15679
+ info: 220
15680
+ };
15681
+ const SEMANTIC_TINT_FACTOR = 0.12;
15682
+ const SEMANTIC_SETTINGS = {
15683
+ light: {
15684
+ "--color-success": {
15685
+ l: 72,
15686
+ c: 0.219
15687
+ },
15688
+ "--color-success-content": {
15689
+ l: 98,
15690
+ c: 0.018
15691
+ },
15692
+ "--color-warning": {
15693
+ l: 70,
15694
+ c: 0.213
15695
+ },
15696
+ "--color-warning-content": {
15697
+ l: 98,
15698
+ c: 0.016
15699
+ },
15700
+ "--color-error": {
15701
+ l: 65,
15702
+ c: 0.241
15703
+ },
15704
+ "--color-error-content": {
15705
+ l: 97,
15706
+ c: 0.014
15707
+ },
15708
+ "--color-info": {
15709
+ l: 68,
15710
+ c: 0.169
15711
+ },
15712
+ "--color-info-content": {
15713
+ l: 97,
15714
+ c: 0.013
15715
+ }
15716
+ },
15717
+ dark: {
15718
+ "--color-success": {
15719
+ l: 76,
15720
+ c: 0.233
15721
+ },
15722
+ "--color-success-content": {
15723
+ l: 98,
15724
+ c: 0.031
15725
+ },
15726
+ "--color-warning": {
15727
+ l: 79,
15728
+ c: 0.184
15729
+ },
15730
+ "--color-warning-content": {
15731
+ l: 98,
15732
+ c: 0.026
15733
+ },
15734
+ "--color-error": {
15735
+ l: 64,
15736
+ c: 0.246
15737
+ },
15738
+ "--color-error-content": {
15739
+ l: 96,
15740
+ c: 0.015
15741
+ },
15742
+ "--color-info": {
15743
+ l: 71,
15744
+ c: 0.143
15745
+ },
15746
+ "--color-info-content": {
15747
+ l: 98,
15748
+ c: 0.019
15749
+ }
15750
+ }
15751
+ };
15752
+ const BASE_COLORS = {
15753
+ light: {
15754
+ "--color-base-100": {
15755
+ l: 98,
15756
+ c: 0.001,
15757
+ h: 106.423
15758
+ },
15759
+ "--color-base-200": {
15760
+ l: 97,
15761
+ c: 0.001,
15762
+ h: 106.424
15763
+ },
15764
+ "--color-base-300": {
15765
+ l: 92,
15766
+ c: 0.003,
15767
+ h: 48.717
15768
+ }
15769
+ },
15770
+ dark: {
15771
+ "--color-base-100": {
15772
+ l: 13,
15773
+ c: 0.028,
15774
+ h: 261.692
15775
+ },
15776
+ "--color-base-200": {
15777
+ l: 21,
15778
+ c: 0.034,
15779
+ h: 264.665
15780
+ },
15781
+ "--color-base-300": {
15782
+ l: 27,
15783
+ c: 0.033,
15784
+ h: 256.848
15785
+ }
15786
+ }
15787
+ };
15788
+ const BASE_CHROMA_BOOST = 0.025;
15789
+ const GRADIENT_COLORS = {
15790
+ light: {
15791
+ "--gradient-start": {
15792
+ h: 347,
15793
+ s: 47,
15794
+ l: 93
15795
+ },
15796
+ "--gradient-end": {
15797
+ h: 199,
15798
+ s: 45,
15799
+ l: 93
15800
+ }
15801
+ },
15802
+ dark: {
15803
+ "--gradient-start": {
15804
+ h: 261,
15805
+ s: 38,
15806
+ l: 15
15807
+ },
15808
+ "--gradient-end": {
15809
+ h: 220,
15810
+ s: 54,
15811
+ l: 8
15812
+ }
15813
+ }
15814
+ };
15815
+ function toOklch(l, c, h) {
15816
+ const normalizedH = (h % 360 + 360) % 360;
15817
+ return `oklch(${l}% ${c} ${normalizedH})`;
15818
+ }
15819
+ function hslToHex(h, s, l) {
15820
+ const normalizedH = (h % 360 + 360) % 360;
15821
+ const sNorm = s / 100;
15822
+ const lNorm = l / 100;
15823
+ const c = (1 - Math.abs(2 * lNorm - 1)) * sNorm;
15824
+ const x = c * (1 - Math.abs(normalizedH / 60 % 2 - 1));
15825
+ const m = lNorm - c / 2;
15826
+ let r = 0, g = 0, b = 0;
15827
+ if (normalizedH < 60) {
15828
+ r = c;
15829
+ g = x;
15830
+ b = 0;
15831
+ } else if (normalizedH < 120) {
15832
+ r = x;
15833
+ g = c;
15834
+ b = 0;
15835
+ } else if (normalizedH < 180) {
15836
+ r = 0;
15837
+ g = c;
15838
+ b = x;
15839
+ } else if (normalizedH < 240) {
15840
+ r = 0;
15841
+ g = x;
15842
+ b = c;
15843
+ } else if (normalizedH < 300) {
15844
+ r = x;
15845
+ g = 0;
15846
+ b = c;
15847
+ } else {
15848
+ r = c;
15849
+ g = 0;
15850
+ b = x;
15851
+ }
15852
+ const toHex = (n)=>{
15853
+ const hex = Math.round((n + m) * 255).toString(16);
15854
+ return 1 === hex.length ? "0" + hex : hex;
15855
+ };
15856
+ return `#${toHex(r)}${toHex(g)}${toHex(b)}`;
15857
+ }
15858
+ function getTintedHue(baseHue, targetHue) {
15859
+ let diff = targetHue - baseHue;
15860
+ if (diff > 180) diff -= 360;
15861
+ if (diff < -180) diff += 360;
15862
+ return baseHue + diff * SEMANTIC_TINT_FACTOR;
15863
+ }
15864
+ function getResolvedTheme() {
15865
+ const dataTheme = document.documentElement.getAttribute("data-theme");
15866
+ if ("dark" === dataTheme) return "dark";
15867
+ if ("light" === dataTheme) return "light";
15868
+ return window.matchMedia("(prefers-color-scheme: dark)").matches ? "dark" : "light";
15869
+ }
15870
+ function applyHueShift(targetHue, saturation = 100) {
15871
+ if (!checkCspAllowsInlineStyles()) return;
15872
+ const root = document.documentElement;
15873
+ const oklchHue = hslHueToOklchHue(targetHue);
15874
+ const chromaScale = MIN_CHROMA_SCALE + saturation / 100 * (1 - MIN_CHROMA_SCALE);
15875
+ const resolvedTheme = getResolvedTheme();
15876
+ const primarySettings = PRIMARY_SETTINGS[resolvedTheme];
15877
+ for (const [varName, settings] of Object.entries(primarySettings)){
15878
+ const scaledChroma = settings.c * chromaScale;
15879
+ root.style.setProperty(varName, toOklch(settings.l, scaledChroma, oklchHue));
15880
+ }
15881
+ const harmonySettings = HARMONY_SETTINGS[resolvedTheme];
15882
+ for (const [varName, settings] of Object.entries(harmonySettings)){
15883
+ let hue = oklchHue;
15884
+ if (varName.includes("secondary")) hue = oklchHue + HARMONY_OFFSETS.secondary;
15885
+ else if (varName.includes("accent")) hue = oklchHue + HARMONY_OFFSETS.accent;
15886
+ const scaledChroma = settings.c * chromaScale;
15887
+ root.style.setProperty(varName, toOklch(settings.l, scaledChroma, hue));
15888
+ }
15889
+ const semanticSettings = SEMANTIC_SETTINGS[resolvedTheme];
15890
+ for (const [varName, settings] of Object.entries(semanticSettings)){
15891
+ let baseHue = 0;
15892
+ if (varName.includes("success")) baseHue = SEMANTIC_BASE_HUES.success;
15893
+ else if (varName.includes("warning")) baseHue = SEMANTIC_BASE_HUES.warning;
15894
+ else if (varName.includes("error")) baseHue = SEMANTIC_BASE_HUES.error;
15895
+ else if (varName.includes("info")) baseHue = SEMANTIC_BASE_HUES.info;
15896
+ const tintedHue = getTintedHue(baseHue, oklchHue);
15897
+ const semanticChromaScale = MIN_CHROMA_SCALE + (1 - MIN_CHROMA_SCALE) * Math.sqrt(saturation / 100);
15898
+ const scaledChroma = settings.c * semanticChromaScale;
15899
+ root.style.setProperty(varName, toOklch(settings.l, scaledChroma, tintedHue));
15900
+ }
15901
+ const gradients = GRADIENT_COLORS[resolvedTheme];
15902
+ for (const [varName, color] of Object.entries(gradients)){
15903
+ const scaledSat = color.s * (saturation / 100);
15904
+ const shifted = hslToHex(targetHue + (varName.includes("end") ? 40 : 0), scaledSat, color.l);
15905
+ root.style.setProperty(varName, shifted);
15906
+ }
15907
+ const baseColors = BASE_COLORS[resolvedTheme];
15908
+ for (const [varName, color] of Object.entries(baseColors)){
15909
+ const baseChroma = Math.max(color.c, BASE_CHROMA_BOOST);
15910
+ const scaledChroma = baseChroma * chromaScale;
15911
+ const shifted = toOklch(color.l, scaledChroma, oklchHue);
15912
+ root.style.setProperty(varName, shifted);
15913
+ }
15914
+ }
15915
+ function resetHueShift() {
15916
+ if (!checkCspAllowsInlineStyles()) return;
15917
+ const root = document.documentElement;
15918
+ for (const varName of Object.keys(PRIMARY_SETTINGS.light))root.style.removeProperty(varName);
15919
+ for (const varName of Object.keys(HARMONY_SETTINGS.light))root.style.removeProperty(varName);
15920
+ for (const varName of Object.keys(SEMANTIC_SETTINGS.light))root.style.removeProperty(varName);
15921
+ for (const varName of Object.keys(GRADIENT_COLORS.light))root.style.removeProperty(varName);
15922
+ for (const varName of Object.keys(BASE_COLORS.light))root.style.removeProperty(varName);
15923
+ }
15924
+ function createHueShiftStore(storagePrefix) {
15925
+ const STORAGE_KEY = `${storagePrefix}_hue_shift`;
15926
+ const STORAGE_KEY_SAT = `${storagePrefix}_hue_saturation`;
15927
+ const getInitialHueShift = ()=>{
15928
+ if ("undefined" == typeof window) return null;
15929
+ const saved = localStorage.getItem(STORAGE_KEY);
15930
+ if (null !== saved) {
15931
+ const parsed = parseFloat(saved);
15932
+ if (!isNaN(parsed)) return parsed;
15933
+ }
15934
+ return null;
15935
+ };
15936
+ const getInitialSaturation = ()=>{
15937
+ if ("undefined" == typeof window) return 100;
15938
+ const saved = localStorage.getItem(STORAGE_KEY_SAT);
15939
+ if (null !== saved) {
15940
+ const parsed = parseFloat(saved);
15941
+ if (!isNaN(parsed)) return parsed;
15942
+ }
15943
+ return 100;
15944
+ };
15945
+ const [hueShift, setHueShiftInternal] = (0, __WEBPACK_EXTERNAL_MODULE_solid_js_aeefcc6d__.createSignal)(getInitialHueShift());
15946
+ const [hueSaturation, setHueSaturationInternal] = (0, __WEBPACK_EXTERNAL_MODULE_solid_js_aeefcc6d__.createSignal)(getInitialSaturation());
15947
+ (0, __WEBPACK_EXTERNAL_MODULE_solid_js_aeefcc6d__.createEffect)(()=>{
15948
+ const shift = hueShift();
15949
+ const sat = hueSaturation();
15950
+ if ("undefined" == typeof window) return;
15951
+ if (null === shift) {
15952
+ localStorage.removeItem(STORAGE_KEY);
15953
+ localStorage.removeItem(STORAGE_KEY_SAT);
15954
+ resetHueShift();
15955
+ } else {
15956
+ localStorage.setItem(STORAGE_KEY, String(shift));
15957
+ localStorage.setItem(STORAGE_KEY_SAT, String(sat));
15958
+ applyHueShift(shift, sat);
15959
+ }
15960
+ });
15961
+ if ("undefined" != typeof window) {
15962
+ const observer = new MutationObserver((mutations)=>{
15963
+ for (const mutation of mutations)if ("attributes" === mutation.type && "data-theme" === mutation.attributeName) {
15964
+ const shift = hueShift();
15965
+ const sat = hueSaturation();
15966
+ if (null !== shift) requestAnimationFrame(()=>applyHueShift(shift, sat));
15967
+ }
15968
+ });
15969
+ observer.observe(document.documentElement, {
15970
+ attributes: true,
15971
+ attributeFilter: [
15972
+ "data-theme"
15973
+ ]
15974
+ });
15975
+ }
15976
+ const setHueShift = (hue, saturation = 100)=>{
15977
+ setHueShiftInternal(hue);
15978
+ setHueSaturationInternal(saturation);
15979
+ };
15980
+ return {
15981
+ hueShift,
15982
+ hueSaturation,
15983
+ setHueShift,
15984
+ isAvailable: ()=>checkCspAllowsInlineStyles()
15985
+ };
15986
+ }
15987
+ let defaultStore = null;
15988
+ function getDefaultHueShiftStore() {
15989
+ if (!defaultStore) defaultStore = createHueShiftStore("theme");
15990
+ return defaultStore;
15991
+ }
15992
+ var ThemeColorPicker_tmpl$ = /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_solid_js_web_35d951b7__.template)('<div class="absolute right-0 mt-2 p-4 bg-base-100 rounded-lg shadow-xl border border-base-300 z-50">'), ThemeColorPicker_tmpl$2 = /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_solid_js_web_35d951b7__.template)("<div>");
15993
+ function hueToColorValue(hue, sat) {
15994
+ const h = hue ?? 0;
15995
+ const s = null === hue ? 0 : sat;
15996
+ return {
15997
+ rgb: {
15998
+ r: 255,
15999
+ g: 255,
16000
+ b: 255,
16001
+ a: 1
16002
+ },
16003
+ hsl: {
16004
+ h,
16005
+ s,
16006
+ l: 50,
16007
+ a: 1
16008
+ },
16009
+ hex: "#ffffff"
16010
+ };
16011
+ }
16012
+ const ThemeColorPicker_ThemeColorPicker = (props)=>{
16013
+ const [isOpen, setIsOpen] = (0, __WEBPACK_EXTERNAL_MODULE_solid_js_aeefcc6d__.createSignal)(false);
16014
+ const [featureAvailable, setFeatureAvailable] = (0, __WEBPACK_EXTERNAL_MODULE_solid_js_aeefcc6d__.createSignal)(true);
16015
+ let containerRef;
16016
+ const store = (0, __WEBPACK_EXTERNAL_MODULE_solid_js_aeefcc6d__.createMemo)(()=>createHueShiftStore(props.storagePrefix ?? "theme"));
16017
+ const colorValue = (0, __WEBPACK_EXTERNAL_MODULE_solid_js_aeefcc6d__.createMemo)(()=>hueToColorValue(store().hueShift(), store().hueSaturation()));
16018
+ const handleColorChange = (color)=>{
16019
+ const hue = color.hsl.h;
16020
+ const saturation = color.hsl.s;
16021
+ if (saturation < 10 && color.hsl.l > 90) {
16022
+ store().setHueShift(null);
16023
+ props.onColorChange?.(null, 100);
16024
+ } else {
16025
+ store().setHueShift(hue, saturation);
16026
+ props.onColorChange?.(hue, saturation);
16027
+ }
16028
+ };
16029
+ (0, __WEBPACK_EXTERNAL_MODULE_solid_js_aeefcc6d__.createEffect)(()=>{
16030
+ if (!isOpen()) return;
16031
+ const handleClickOutside = (e)=>{
16032
+ if (containerRef && !containerRef.contains(e.target)) setIsOpen(false);
16033
+ };
16034
+ const timer = setTimeout(()=>{
16035
+ document.addEventListener("click", handleClickOutside);
16036
+ }, 0);
16037
+ (0, __WEBPACK_EXTERNAL_MODULE_solid_js_aeefcc6d__.onCleanup)(()=>{
16038
+ clearTimeout(timer);
16039
+ document.removeEventListener("click", handleClickOutside);
16040
+ });
16041
+ });
16042
+ const handleKeyDown = (e)=>{
16043
+ if ("Escape" === e.key && isOpen()) setIsOpen(false);
16044
+ };
16045
+ (0, __WEBPACK_EXTERNAL_MODULE_solid_js_aeefcc6d__.createEffect)(()=>{
16046
+ const timer = setTimeout(()=>{
16047
+ setFeatureAvailable(store().isAvailable());
16048
+ }, 0);
16049
+ (0, __WEBPACK_EXTERNAL_MODULE_solid_js_aeefcc6d__.onCleanup)(()=>clearTimeout(timer));
16050
+ });
16051
+ const contextValue = ()=>({
16052
+ color: colorValue,
16053
+ format: ()=>"hsl",
16054
+ disabled: ()=>false,
16055
+ onChange: handleColorChange,
16056
+ onFormatChange: ()=>{}
16057
+ });
16058
+ const classes = ()=>twMerge("relative", clsx(props.class, props.className));
16059
+ return (0, __WEBPACK_EXTERNAL_MODULE_solid_js_web_35d951b7__.createComponent)(__WEBPACK_EXTERNAL_MODULE_solid_js_aeefcc6d__.Show, {
16060
+ get when () {
16061
+ return featureAvailable();
16062
+ },
16063
+ get children () {
16064
+ var _el$ = ThemeColorPicker_tmpl$2();
16065
+ _el$.$$keydown = handleKeyDown;
16066
+ var _ref$ = containerRef;
16067
+ "function" == typeof _ref$ ? (0, __WEBPACK_EXTERNAL_MODULE_solid_js_web_35d951b7__.use)(_ref$, _el$) : containerRef = _el$;
16068
+ (0, __WEBPACK_EXTERNAL_MODULE_solid_js_web_35d951b7__.insert)(_el$, (0, __WEBPACK_EXTERNAL_MODULE_solid_js_web_35d951b7__.createComponent)(button_Button, {
16069
+ type: "button",
16070
+ size: "sm",
16071
+ onClick: ()=>setIsOpen(!isOpen()),
16072
+ get ["aria-label"] () {
16073
+ return props["aria-label"] ?? "Change theme color";
16074
+ },
16075
+ get ["aria-expanded"] () {
16076
+ return isOpen();
16077
+ },
16078
+ get children () {
16079
+ return props.children ?? (0, __WEBPACK_EXTERNAL_MODULE_solid_js_web_35d951b7__.createComponent)(icon_Icon, {
16080
+ name: "icon-[mdi--palette]",
16081
+ width: 16,
16082
+ height: 16,
16083
+ get ["class"] () {
16084
+ return null !== store().hueShift() ? "text-primary" : void 0;
16085
+ }
16086
+ });
16087
+ }
16088
+ }), null);
16089
+ (0, __WEBPACK_EXTERNAL_MODULE_solid_js_web_35d951b7__.insert)(_el$, (0, __WEBPACK_EXTERNAL_MODULE_solid_js_web_35d951b7__.createComponent)(__WEBPACK_EXTERNAL_MODULE_solid_js_aeefcc6d__.Show, {
16090
+ get when () {
16091
+ return isOpen();
16092
+ },
16093
+ get children () {
16094
+ var _el$2 = ThemeColorPicker_tmpl$();
16095
+ (0, __WEBPACK_EXTERNAL_MODULE_solid_js_web_35d951b7__.insert)(_el$2, (0, __WEBPACK_EXTERNAL_MODULE_solid_js_web_35d951b7__.createComponent)(ColorPickerContext.Provider, {
16096
+ get value () {
16097
+ return contextValue();
16098
+ },
16099
+ get children () {
16100
+ return (0, __WEBPACK_EXTERNAL_MODULE_solid_js_web_35d951b7__.createComponent)(colorpicker_ColorWheelFlower, {
16101
+ class: "color-wheel-custom"
16102
+ });
16103
+ }
16104
+ }));
16105
+ return _el$2;
16106
+ }
16107
+ }), null);
16108
+ (0, __WEBPACK_EXTERNAL_MODULE_solid_js_web_35d951b7__.effect)((_p$)=>{
16109
+ var _v$ = classes(), _v$2 = props.style;
16110
+ _v$ !== _p$.e && (0, __WEBPACK_EXTERNAL_MODULE_solid_js_web_35d951b7__.className)(_el$, _p$.e = _v$);
16111
+ _p$.t = (0, __WEBPACK_EXTERNAL_MODULE_solid_js_web_35d951b7__.style)(_el$, _v$2, _p$.t);
16112
+ return _p$;
16113
+ }, {
16114
+ e: void 0,
16115
+ t: void 0
16116
+ });
16117
+ return _el$;
16118
+ }
16119
+ });
16120
+ };
16121
+ const ThemeColorPicker = ThemeColorPicker_ThemeColorPicker;
16122
+ (0, __WEBPACK_EXTERNAL_MODULE_solid_js_web_35d951b7__.delegateEvents)([
16123
+ "keydown"
16124
+ ]);
15011
16125
  var Timeline_tmpl$ = /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_solid_js_web_35d951b7__.template)("<ul>");
15012
16126
  const Timeline_Timeline = (props)=>{
15013
16127
  const [local, others] = (0, __WEBPACK_EXTERNAL_MODULE_solid_js_aeefcc6d__.splitProps)(props, [
@@ -15654,4 +16768,4 @@ const createRouteTransitionResolver = (options)=>{
15654
16768
  return fallback ?? noMotion;
15655
16769
  };
15656
16770
  };
15657
- export { accordion_Accordion as Accordion, alert_Alert as Alert, AlphaSlider, artboard_Artboard as Artboard, avatar as Avatar, background_Background as Background, Badge, bottom_sheet_BottomSheet as BottomSheet, Breadcrumbs, breadcrumbs_BreadcrumbsItem as BreadcrumbsItem, browsermockup_BrowserMockup as BrowserMockup, button_Button as Button, Calendar, card_Card as Card, carousel_Carousel as Carousel, chatbubble_ChatBubble as ChatBubble, checkbox_Checkbox as Checkbox, codemockup_CodeMockup as CodeMockup, CodeMockupLine, collapse_Collapse as Collapse, CollapseContent, CollapseDetails, CollapseTitle, colorpicker_ColorInput as ColorInput, colorpicker_ColorPicker as ColorPicker, ColorPickerContext, ColorPickerFlowerSelector, colorpicker_ColorPickerGradientSelector as ColorPickerGradientSelector, ColorPickerWheelSelector, colorpicker_ColorPreview as ColorPreview, colorpicker_ColorSwatches as ColorSwatches, ColorWheel, colorpicker_ColorWheelFlower as ColorWheelFlower, connectionstatus_ConnectionStatus as ConnectionStatus, CopyButton, countdown_Countdown as Countdown, diff_Diff as Diff, divider as Divider, dock as Dock, Drawer, dropdown as Dropdown, EnhancedTable, FileInput, flex_Flex as Flex, footer_Footer as Footer, form_Form as Form, Grid, hero_Hero as Hero, colorpicker_HueSlider as HueSlider, icon_Icon as Icon, immersive_landing_ImmersiveLanding as ImmersiveLanding, ImmersiveLandingContext, indicator_Indicator as Indicator, input as Input, join_Join as Join, kbd_Kbd as Kbd, LightnessSlider, link_Link as Link, loading_Loading as Loading, mask as Mask, menu_Menu as Menu, modal_Modal as Modal, MotionDiv, navbar_Navbar as Navbar, pagination_Pagination as Pagination, phonemockup_PhoneMockup as PhoneMockup, Progress, props_table_PropsTable as PropsTable, radialprogress_RadialProgress as RadialProgress, radio_Radio as Radio, range_Range as Range, Rating, colorpicker_SaturationBrightness as SaturationBrightness, select_Select as Select, showcase_ShowcaseBlock as ShowcaseBlock, ShowcaseSection, sidenav_Sidenav as Sidenav, sidenav_SidenavButton as SidenavButton, sidenav_SidenavGroup as SidenavGroup, sidenav_SidenavItem as SidenavItem, sidenav_SidenavLink as SidenavLink, sidenav_SidenavMenu as SidenavMenu, skeleton_Skeleton as Skeleton, Stack, stat_card_StatCard as StatCard, stats_Stats as Stats, status_Status as Status, steps as Steps, streaming_table_StreamingTable as StreamingTable, Summary, SvgBackground, Swap, table_Table as Table, tabs_Tabs as Tabs, textarea_Textarea as Textarea, Timeline, timeline_TimelineEnd as TimelineEnd, timeline_TimelineItem as TimelineItem, timeline_TimelineMiddle as TimelineMiddle, timeline_TimelineStart as TimelineStart, toast_Toast as Toast, ToastContainer, ToastStack_ToastStack as ToastStack, toggle_Toggle as Toggle, tooltip_Tooltip as Tooltip, windowmockup_WindowMockup as WindowMockup, createMotionPresets, createMotionSystem, createPopmotionDriver, createRouteTransitionResolver, createStreamingTableStore, connectionstatus_ConnectionStatus as default, defaultMotionTokens, enablePopmotion, getMotionDriver, presets_getPreset as getPreset, immediateDriver, mergeMotionTokens, motionDistances, motionDurations, motionEasings, motionPresets, noMotion, prefersReducedMotion, presets_registerPreset as registerPreset, resolveEase, presets_resolvePreset as resolvePreset, routeTransition, runMotion, setMotionDriver, toastStore, useColorPickerContext, useDesktop, useFormValidation, useImmersiveLanding, useImmersiveLandingContext };
16771
+ export { accordion_Accordion as Accordion, alert_Alert as Alert, AlphaSlider, artboard_Artboard as Artboard, avatar as Avatar, background_Background as Background, Badge, bottom_sheet_BottomSheet as BottomSheet, Breadcrumbs, breadcrumbs_BreadcrumbsItem as BreadcrumbsItem, browsermockup_BrowserMockup as BrowserMockup, button_Button as Button, Calendar, card_Card as Card, carousel_Carousel as Carousel, chatbubble_ChatBubble as ChatBubble, checkbox_Checkbox as Checkbox, codemockup_CodeMockup as CodeMockup, CodeMockupLine, collapse_Collapse as Collapse, CollapseContent, CollapseDetails, CollapseTitle, colorpicker_ColorInput as ColorInput, colorpicker_ColorPicker as ColorPicker, ColorPickerContext, ColorPickerFlowerSelector, colorpicker_ColorPickerGradientSelector as ColorPickerGradientSelector, ColorPickerWheelSelector, colorpicker_ColorPreview as ColorPreview, colorpicker_ColorSwatches as ColorSwatches, ColorWheel, colorpicker_ColorWheelFlower as ColorWheelFlower, connectionstatus_ConnectionStatus as ConnectionStatus, CopyButton, countdown_Countdown as Countdown, diff_Diff as Diff, divider as Divider, dock as Dock, Drawer, dropdown as Dropdown, EnhancedTable, FileInput, flex_Flex as Flex, footer_Footer as Footer, form_Form as Form, Grid, hero_Hero as Hero, colorpicker_HueSlider as HueSlider, I18nContext, I18nProvider, icon_Icon as Icon, immersive_landing_ImmersiveLanding as ImmersiveLanding, ImmersiveLandingContext, indicator_Indicator as Indicator, input as Input, join_Join as Join, kbd_Kbd as Kbd, language_switcher_LanguageSwitcher as LanguageSwitcher, LightnessSlider, link_Link as Link, live_chat_LiveChatBubble as LiveChatBubble, LiveChatPanel, loading_Loading as Loading, mask as Mask, menu_Menu as Menu, modal_Modal as Modal, MotionDiv, navbar_Navbar as Navbar, pagination_Pagination as Pagination, phonemockup_PhoneMockup as PhoneMockup, Progress, props_table_PropsTable as PropsTable, radialprogress_RadialProgress as RadialProgress, radio_Radio as Radio, range_Range as Range, Rating, colorpicker_SaturationBrightness as SaturationBrightness, select_Select as Select, showcase_ShowcaseBlock as ShowcaseBlock, ShowcaseSection, sidenav_Sidenav as Sidenav, sidenav_SidenavButton as SidenavButton, sidenav_SidenavGroup as SidenavGroup, sidenav_SidenavItem as SidenavItem, sidenav_SidenavLink as SidenavLink, sidenav_SidenavMenu as SidenavMenu, skeleton_Skeleton as Skeleton, Stack, stat_card_StatCard as StatCard, stats_Stats as Stats, status_Status as Status, steps as Steps, streaming_table_StreamingTable as StreamingTable, Summary, SvgBackground, Swap, table_Table as Table, tabs_Tabs as Tabs, textarea_Textarea as Textarea, ThemeColorPicker, Timeline, timeline_TimelineEnd as TimelineEnd, timeline_TimelineItem as TimelineItem, timeline_TimelineMiddle as TimelineMiddle, timeline_TimelineStart as TimelineStart, toast_Toast as Toast, ToastContainer, ToastStack_ToastStack as ToastStack, toggle_Toggle as Toggle, tooltip_Tooltip as Tooltip, windowmockup_WindowMockup as WindowMockup, createHueShiftStore, createI18n, createMotionPresets, createMotionSystem, createPopmotionDriver, createRouteTransitionResolver, createStreamingTableStore, connectionstatus_ConnectionStatus as default, defaultMotionTokens, enablePopmotion, getDefaultHueShiftStore, getMotionDriver, presets_getPreset as getPreset, immediateDriver, mergeMotionTokens, motionDistances, motionDurations, motionEasings, motionPresets, noMotion, prefersReducedMotion, presets_registerPreset as registerPreset, resetHueShift, resolveEase, presets_resolvePreset as resolvePreset, routeTransition, runMotion, setMotionDriver, toastStore, useColorPickerContext, useDesktop, useFormValidation, useI18n, useImmersiveLanding, useImmersiveLandingContext };