Files
boc/landvex-site/assets/CreateCampaign-ssmSrgNm.js
T
Bernt 48ea61cdcc docs: add quixzoom-auth-core product to AAMOS
- Product documentation in docs/products/
- Updated MEMORY.md with product info
- quiXzoom Auth Core as AAMOS Identity product
2026-07-14 09:58:53 +00:00

213 lines
59 KiB
JavaScript
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
import{x as r,aR as Fe,aT as La,M as ne,T as R,aU as he,S as Ae,ad as He,C as we,t as Ba,r as t,j as e,y as M,ag as w,ah as N,ak as le,z as Q,I as Ne,i as D,u as Pa,o as Fa,n as Aa,ai as O,L as ye,v as _,B as De,p as G,q as b,aS as Re,w as v,F as ze,al as ge,aj as Ha,A as Y}from"./index-CZD3_4lD.js";import{R as Da,a as Ie}from"./radio-group-BcmHTP2Q.js";import{S as Ee,a as qe,b as Ke,c as Oe,d as V}from"./select-Dcsz1esX.js";import{P as Ra,D as za,W as Ge,T as ke,M as Ia,F as Ze,S as Ea,a as Z,C as qa,b as Ue,c as Ka}from"./waves-CcHX4WbX.js";import{Z as be}from"./zap-DA9vuiyP.js";import{T as Oa}from"./timer-DiqX45Mc.js";import{T as Ga}from"./trash-2-DRcoDJkq.js";import{R as We}from"./refresh-cw-CCL0Gd2i.js";import{C as Za}from"./clock-CHYQgZWG.js";import{M as $e}from"./mail-C8_RqWpe.js";import{F as Ua,H as X,C as Je,S as Wa}from"./star-DINAYY6y.js";import{E as Ye}from"./eye-IKrhkOAd.js";import{B as ve}from"./building-2-BpMHggJ8.js";import{H as xe}from"./heart-Bn8C2h_q.js";import{L}from"./landmark-pzfm3gLZ.js";import{S as $a}from"./smartphone-Ca6TX_3a.js";import{I as Ja}from"./image-CUEcTqim.js";import{G as Ya}from"./gift-C8Ri1JSk.js";import{S as Xe}from"./shield-DIM7u0gp.js";import{T as fe}from"./triangle-alert-I_PJ38kC.js";import{G as ea}from"./graduation-cap-TNnu1wlO.js";import{P as je}from"./palette-BI1sulb6.js";import{R as Xa}from"./radio-DbSuriKm.js";import{S as er}from"./settings-CI2ouCEL.js";import{T as ar}from"./ticket-DTjwndeG.js";import{S as rr}from"./scroll-area-DdYSSeiY.js";import{B as sr}from"./badge-D3Mn__J4.js";import{C as Qe}from"./check-CCL32zXH.js";import{S as Se}from"./search-DezKAVqp.js";import{C as tr}from"./chevron-down-DA--jGG2.js";import{C as ir}from"./chevron-right-Dvw0FPw3.js";import{A as aa}from"./arrow-left-DyClWdEf.js";import{I as nr}from"./info-DLVcQf5T.js";import{A as lr}from"./index-DXB3_sFe.js";import{R as or}from"./repeat-CjEas7lo.js";import{C as cr}from"./calendar-3jVgdv6R.js";import"./index-C6sfL5Wv.js";import"./circle-CNf9xg3I.js";/**
* @license lucide-react v0.462.0 - ISC
*
* This source code is licensed under the ISC license.
* See the LICENSE file in the root directory of this source tree.
*/const ra=r("Accessibility",[["circle",{cx:"16",cy:"4",r:"1",key:"1grugj"}],["path",{d:"m18 19 1-7-6 1",key:"r0i19z"}],["path",{d:"m5 8 3-3 5.5 3-2.36 3.5",key:"9ptxx2"}],["path",{d:"M4.24 14.5a5 5 0 0 0 6.88 6",key:"10kmtu"}],["path",{d:"M13.76 17.5a5 5 0 0 0-6.88-6",key:"2qq6rc"}]]);/**
* @license lucide-react v0.462.0 - ISC
*
* This source code is licensed under the ISC license.
* See the LICENSE file in the root directory of this source tree.
*/const sa=r("Baby",[["path",{d:"M9 12h.01",key:"157uk2"}],["path",{d:"M15 12h.01",key:"1k8ypt"}],["path",{d:"M10 16c.5.3 1.2.5 2 .5s1.5-.2 2-.5",key:"1u7htd"}],["path",{d:"M19 6.3a9 9 0 0 1 1.8 3.9 2 2 0 0 1 0 3.6 9 9 0 0 1-17.6 0 2 2 0 0 1 0-3.6A9 9 0 0 1 12 3c2 0 3.5 1.1 3.5 2.5s-.9 2.5-2 2.5c-.8 0-1.5-.4-1.5-1",key:"5yv0yz"}]]);/**
* @license lucide-react v0.462.0 - ISC
*
* This source code is licensed under the ISC license.
* See the LICENSE file in the root directory of this source tree.
*/const ee=r("Building",[["rect",{width:"16",height:"20",x:"4",y:"2",rx:"2",ry:"2",key:"76otgf"}],["path",{d:"M9 22v-4h6v4",key:"r93iot"}],["path",{d:"M8 6h.01",key:"1dz90k"}],["path",{d:"M16 6h.01",key:"1x0f13"}],["path",{d:"M12 6h.01",key:"1vi96p"}],["path",{d:"M12 10h.01",key:"1nrarc"}],["path",{d:"M12 14h.01",key:"1etili"}],["path",{d:"M16 10h.01",key:"1m94wz"}],["path",{d:"M16 14h.01",key:"1gbofw"}],["path",{d:"M8 10h.01",key:"19clt8"}],["path",{d:"M8 14h.01",key:"6423bh"}]]);/**
* @license lucide-react v0.462.0 - ISC
*
* This source code is licensed under the ISC license.
* See the LICENSE file in the root directory of this source tree.
*/const dr=r("BusFront",[["path",{d:"M4 6 2 7",key:"1mqr15"}],["path",{d:"M10 6h4",key:"1itunk"}],["path",{d:"m22 7-2-1",key:"1umjhc"}],["rect",{width:"16",height:"16",x:"4",y:"3",rx:"2",key:"1wxw4b"}],["path",{d:"M4 11h16",key:"mpoxn0"}],["path",{d:"M8 15h.01",key:"a7atzg"}],["path",{d:"M16 15h.01",key:"rnfrdf"}],["path",{d:"M6 19v2",key:"1loha6"}],["path",{d:"M18 21v-2",key:"sqyl04"}]]);/**
* @license lucide-react v0.462.0 - ISC
*
* This source code is licensed under the ISC license.
* See the LICENSE file in the root directory of this source tree.
*/const _e=r("Bus",[["path",{d:"M8 6v6",key:"18i7km"}],["path",{d:"M15 6v6",key:"1sg6z9"}],["path",{d:"M2 12h19.6",key:"de5uta"}],["path",{d:"M18 18h3s.5-1.7.8-2.8c.1-.4.2-.8.2-1.2 0-.4-.1-.8-.2-1.2l-1.4-5C20.1 6.8 19.1 6 18 6H4a2 2 0 0 0-2 2v10h3",key:"1wwztk"}],["circle",{cx:"7",cy:"18",r:"2",key:"19iecd"}],["path",{d:"M9 18h5",key:"lrx6i"}],["circle",{cx:"16",cy:"18",r:"2",key:"1v4tcr"}]]);/**
* @license lucide-react v0.462.0 - ISC
*
* This source code is licensed under the ISC license.
* See the LICENSE file in the root directory of this source tree.
*/const Me=r("Church",[["path",{d:"M10 9h4",key:"u4k05v"}],["path",{d:"M12 7v5",key:"ma6bk"}],["path",{d:"M14 22v-4a2 2 0 0 0-4 0v4",key:"1pdhuj"}],["path",{d:"M18 22V5.618a1 1 0 0 0-.553-.894l-4.553-2.277a2 2 0 0 0-1.788 0L6.553 4.724A1 1 0 0 0 6 5.618V22",key:"1rkokr"}],["path",{d:"m18 7 3.447 1.724a1 1 0 0 1 .553.894V20a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V9.618a1 1 0 0 1 .553-.894L6 7",key:"1w6esw"}]]);/**
* @license lucide-react v0.462.0 - ISC
*
* This source code is licensed under the ISC license.
* See the LICENSE file in the root directory of this source tree.
*/const ta=r("CircleParking",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"M9 17V7h4a3 3 0 0 1 0 6H9",key:"1dfk2c"}]]);/**
* @license lucide-react v0.462.0 - ISC
*
* This source code is licensed under the ISC license.
* See the LICENSE file in the root directory of this source tree.
*/const ur=r("ClipboardList",[["rect",{width:"8",height:"4",x:"8",y:"2",rx:"1",ry:"1",key:"tgr4d6"}],["path",{d:"M16 4h2a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2h2",key:"116196"}],["path",{d:"M12 11h4",key:"1jrz19"}],["path",{d:"M12 16h4",key:"n85exb"}],["path",{d:"M8 11h.01",key:"1dfujw"}],["path",{d:"M8 16h.01",key:"18s6g9"}]]);/**
* @license lucide-react v0.462.0 - ISC
*
* This source code is licensed under the ISC license.
* See the LICENSE file in the root directory of this source tree.
*/const ae=r("Construction",[["rect",{x:"2",y:"6",width:"20",height:"8",rx:"1",key:"1estib"}],["path",{d:"M17 14v7",key:"7m2elx"}],["path",{d:"M7 14v7",key:"1cm7wv"}],["path",{d:"M17 3v3",key:"1v4jwn"}],["path",{d:"M7 3v3",key:"7o6guu"}],["path",{d:"M10 14 2.3 6.3",key:"1023jk"}],["path",{d:"m14 6 7.7 7.7",key:"1s8pl2"}],["path",{d:"m8 6 8 8",key:"hl96qh"}]]);/**
* @license lucide-react v0.462.0 - ISC
*
* This source code is licensed under the ISC license.
* See the LICENSE file in the root directory of this source tree.
*/const mr=r("DoorOpen",[["path",{d:"M13 4h3a2 2 0 0 1 2 2v14",key:"hrm0s9"}],["path",{d:"M2 20h3",key:"1gaodv"}],["path",{d:"M13 20h9",key:"s90cdi"}],["path",{d:"M10 12v.01",key:"vx6srw"}],["path",{d:"M13 4.562v16.157a1 1 0 0 1-1.242.97L5 20V5.562a2 2 0 0 1 1.515-1.94l4-1A2 2 0 0 1 13 4.561Z",key:"199qr4"}]]);/**
* @license lucide-react v0.462.0 - ISC
*
* This source code is licensed under the ISC license.
* See the LICENSE file in the root directory of this source tree.
*/const re=r("Droplet",[["path",{d:"M12 22a7 7 0 0 0 7-7c0-2-1-3.9-3-5.5s-3.5-4-4-6.5c-.5 2.5-2 4.9-4 6.5C6 11.1 5 13 5 15a7 7 0 0 0 7 7z",key:"c7niix"}]]);/**
* @license lucide-react v0.462.0 - ISC
*
* This source code is licensed under the ISC license.
* See the LICENSE file in the root directory of this source tree.
*/const ia=r("Dumbbell",[["path",{d:"M14.4 14.4 9.6 9.6",key:"ic80wn"}],["path",{d:"M18.657 21.485a2 2 0 1 1-2.829-2.828l-1.767 1.768a2 2 0 1 1-2.829-2.829l6.364-6.364a2 2 0 1 1 2.829 2.829l-1.768 1.767a2 2 0 1 1 2.828 2.829z",key:"nnl7wr"}],["path",{d:"m21.5 21.5-1.4-1.4",key:"1f1ice"}],["path",{d:"M3.9 3.9 2.5 2.5",key:"1evmna"}],["path",{d:"M6.404 12.768a2 2 0 1 1-2.829-2.829l1.768-1.767a2 2 0 1 1-2.828-2.829l2.828-2.828a2 2 0 1 1 2.829 2.828l1.767-1.768a2 2 0 1 1 2.829 2.829z",key:"yhosts"}]]);/**
* @license lucide-react v0.462.0 - ISC
*
* This source code is licensed under the ISC license.
* See the LICENSE file in the root directory of this source tree.
*/const pr=r("Factory",[["path",{d:"M2 20a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2V8l-7 5V8l-7 5V4a2 2 0 0 0-2-2H4a2 2 0 0 0-2 2Z",key:"159hny"}],["path",{d:"M17 18h1",key:"uldtlt"}],["path",{d:"M12 18h1",key:"s9uhes"}],["path",{d:"M7 18h1",key:"1neino"}]]);/**
* @license lucide-react v0.462.0 - ISC
*
* This source code is licensed under the ISC license.
* See the LICENSE file in the root directory of this source tree.
*/const na=r("Fence",[["path",{d:"M4 3 2 5v15c0 .6.4 1 1 1h2c.6 0 1-.4 1-1V5Z",key:"1n2rgs"}],["path",{d:"M6 8h4",key:"utf9t1"}],["path",{d:"M6 18h4",key:"12yh4b"}],["path",{d:"m12 3-2 2v15c0 .6.4 1 1 1h2c.6 0 1-.4 1-1V5Z",key:"3ha7mj"}],["path",{d:"M14 8h4",key:"1r8wg2"}],["path",{d:"M14 18h4",key:"1t3kbu"}],["path",{d:"m20 3-2 2v15c0 .6.4 1 1 1h2c.6 0 1-.4 1-1V5Z",key:"dfd4e2"}]]);/**
* @license lucide-react v0.462.0 - ISC
*
* This source code is licensed under the ISC license.
* See the LICENSE file in the root directory of this source tree.
*/const hr=r("Frame",[["line",{x1:"22",x2:"2",y1:"6",y2:"6",key:"15w7dq"}],["line",{x1:"22",x2:"2",y1:"18",y2:"18",key:"1ip48p"}],["line",{x1:"6",x2:"6",y1:"2",y2:"22",key:"a2lnyx"}],["line",{x1:"18",x2:"18",y1:"2",y2:"22",key:"8vb6jd"}]]);/**
* @license lucide-react v0.462.0 - ISC
*
* This source code is licensed under the ISC license.
* See the LICENSE file in the root directory of this source tree.
*/const yr=r("Fuel",[["line",{x1:"3",x2:"15",y1:"22",y2:"22",key:"xegly4"}],["line",{x1:"4",x2:"14",y1:"9",y2:"9",key:"xcnuvu"}],["path",{d:"M14 22V4a2 2 0 0 0-2-2H6a2 2 0 0 0-2 2v18",key:"16j0yd"}],["path",{d:"M14 13h2a2 2 0 0 1 2 2v2a2 2 0 0 0 2 2a2 2 0 0 0 2-2V9.83a2 2 0 0 0-.59-1.42L18 5",key:"7cu91f"}]]);/**
* @license lucide-react v0.462.0 - ISC
*
* This source code is licensed under the ISC license.
* See the LICENSE file in the root directory of this source tree.
*/const gr=r("Hammer",[["path",{d:"m15 12-8.373 8.373a1 1 0 1 1-3-3L12 9",key:"eefl8a"}],["path",{d:"m18 15 4-4",key:"16gjal"}],["path",{d:"m21.5 11.5-1.914-1.914A2 2 0 0 1 19 8.172V7l-2.26-2.26a6 6 0 0 0-4.202-1.756L9 2.96l.92.82A6.18 6.18 0 0 1 12 8.4V10l2 2h1.172a2 2 0 0 1 1.414.586L18.5 14.5",key:"b7pghm"}]]);/**
* @license lucide-react v0.462.0 - ISC
*
* This source code is licensed under the ISC license.
* See the LICENSE file in the root directory of this source tree.
*/const se=r("Hospital",[["path",{d:"M12 6v4",key:"16clxf"}],["path",{d:"M14 14h-4",key:"esezmu"}],["path",{d:"M14 18h-4",key:"16mqa2"}],["path",{d:"M14 8h-4",key:"z8ypaz"}],["path",{d:"M18 12h2a2 2 0 0 1 2 2v6a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2v-9a2 2 0 0 1 2-2h2",key:"b1k337"}],["path",{d:"M18 22V4a2 2 0 0 0-2-2H8a2 2 0 0 0-2 2v18",key:"16g51d"}]]);/**
* @license lucide-react v0.462.0 - ISC
*
* This source code is licensed under the ISC license.
* See the LICENSE file in the root directory of this source tree.
*/const la=r("Lamp",[["path",{d:"M8 2h8l4 10H4L8 2Z",key:"9dma5w"}],["path",{d:"M12 12v6",key:"3ahymv"}],["path",{d:"M8 22v-2c0-1.1.9-2 2-2h4a2 2 0 0 1 2 2v2H8Z",key:"mwf4oh"}]]);/**
* @license lucide-react v0.462.0 - ISC
*
* This source code is licensed under the ISC license.
* See the LICENSE file in the root directory of this source tree.
*/const kr=r("Library",[["path",{d:"m16 6 4 14",key:"ji33uf"}],["path",{d:"M12 6v14",key:"1n7gus"}],["path",{d:"M8 8v12",key:"1gg7y9"}],["path",{d:"M4 4v16",key:"6qkkli"}]]);/**
* @license lucide-react v0.462.0 - ISC
*
* This source code is licensed under the ISC license.
* See the LICENSE file in the root directory of this source tree.
*/const br=r("Lightbulb",[["path",{d:"M15 14c.2-1 .7-1.7 1.5-2.5 1-.9 1.5-2.2 1.5-3.5A6 6 0 0 0 6 8c0 1 .2 2.2 1.5 3.5.7.7 1.3 1.5 1.5 2.5",key:"1gvzjb"}],["path",{d:"M9 18h6",key:"x1upvd"}],["path",{d:"M10 22h4",key:"ceow96"}]]);/**
* @license lucide-react v0.462.0 - ISC
*
* This source code is licensed under the ISC license.
* See the LICENSE file in the root directory of this source tree.
*/const vr=r("Maximize",[["path",{d:"M8 3H5a2 2 0 0 0-2 2v3",key:"1dcmit"}],["path",{d:"M21 8V5a2 2 0 0 0-2-2h-3",key:"1e4gt3"}],["path",{d:"M3 16v3a2 2 0 0 0 2 2h3",key:"wsl5sc"}],["path",{d:"M16 21h3a2 2 0 0 0 2-2v-3",key:"18trek"}]]);/**
* @license lucide-react v0.462.0 - ISC
*
* This source code is licensed under the ISC license.
* See the LICENSE file in the root directory of this source tree.
*/const xr=r("Monitor",[["rect",{width:"20",height:"14",x:"2",y:"3",rx:"2",key:"48i651"}],["line",{x1:"8",x2:"16",y1:"21",y2:"21",key:"1svkeh"}],["line",{x1:"12",x2:"12",y1:"17",y2:"21",key:"vw1qmm"}]]);/**
* @license lucide-react v0.462.0 - ISC
*
* This source code is licensed under the ISC license.
* See the LICENSE file in the root directory of this source tree.
*/const fr=r("Paintbrush",[["path",{d:"m14.622 17.897-10.68-2.913",key:"vj2p1u"}],["path",{d:"M18.376 2.622a1 1 0 1 1 3.002 3.002L17.36 9.643a.5.5 0 0 0 0 .707l.944.944a2.41 2.41 0 0 1 0 3.408l-.944.944a.5.5 0 0 1-.707 0L8.354 7.348a.5.5 0 0 1 0-.707l.944-.944a2.41 2.41 0 0 1 3.408 0l.944.944a.5.5 0 0 0 .707 0z",key:"18tc5c"}],["path",{d:"M9 8c-1.804 2.71-3.97 3.46-6.583 3.948a.507.507 0 0 0-.302.819l7.32 8.883a1 1 0 0 0 1.185.204C12.735 20.405 16 16.792 16 15",key:"ytzfxy"}]]);/**
* @license lucide-react v0.462.0 - ISC
*
* This source code is licensed under the ISC license.
* See the LICENSE file in the root directory of this source tree.
*/const oa=r("Phone",[["path",{d:"M22 16.92v3a2 2 0 0 1-2.18 2 19.79 19.79 0 0 1-8.63-3.07 19.5 19.5 0 0 1-6-6 19.79 19.79 0 0 1-3.07-8.67A2 2 0 0 1 4.11 2h3a2 2 0 0 1 2 1.72 12.84 12.84 0 0 0 .7 2.81 2 2 0 0 1-.45 2.11L8.09 9.91a16 16 0 0 0 6 6l1.27-1.27a2 2 0 0 1 2.11-.45 12.84 12.84 0 0 0 2.81.7A2 2 0 0 1 22 16.92z",key:"foiqr5"}]]);/**
* @license lucide-react v0.462.0 - ISC
*
* This source code is licensed under the ISC license.
* See the LICENSE file in the root directory of this source tree.
*/const jr=r("PlugZap",[["path",{d:"M6.3 20.3a2.4 2.4 0 0 0 3.4 0L12 18l-6-6-2.3 2.3a2.4 2.4 0 0 0 0 3.4Z",key:"goz73y"}],["path",{d:"m2 22 3-3",key:"19mgm9"}],["path",{d:"M7.5 13.5 10 11",key:"7xgeeb"}],["path",{d:"M10.5 16.5 13 14",key:"10btkg"}],["path",{d:"m18 3-4 4h6l-4 4",key:"16psg9"}]]);/**
* @license lucide-react v0.462.0 - ISC
*
* This source code is licensed under the ISC license.
* See the LICENSE file in the root directory of this source tree.
*/const _r=r("Power",[["path",{d:"M12 2v10",key:"mnfbl"}],["path",{d:"M18.4 6.6a9 9 0 1 1-12.77.04",key:"obofu9"}]]);/**
* @license lucide-react v0.462.0 - ISC
*
* This source code is licensed under the ISC license.
* See the LICENSE file in the root directory of this source tree.
*/const te=r("Route",[["circle",{cx:"6",cy:"19",r:"3",key:"1kj8tv"}],["path",{d:"M9 19h8.5a3.5 3.5 0 0 0 0-7h-11a3.5 3.5 0 0 1 0-7H15",key:"1d8sl"}],["circle",{cx:"18",cy:"5",r:"3",key:"gq8acd"}]]);/**
* @license lucide-react v0.462.0 - ISC
*
* This source code is licensed under the ISC license.
* See the LICENSE file in the root directory of this source tree.
*/const Mr=r("Ship",[["path",{d:"M12 10.189V14",key:"1p8cqu"}],["path",{d:"M12 2v3",key:"qbqxhf"}],["path",{d:"M19 13V7a2 2 0 0 0-2-2H7a2 2 0 0 0-2 2v6",key:"qpkstq"}],["path",{d:"M19.38 20A11.6 11.6 0 0 0 21 14l-8.188-3.639a2 2 0 0 0-1.624 0L3 14a11.6 11.6 0 0 0 2.81 7.76",key:"7tigtc"}],["path",{d:"M2 21c.6.5 1.2 1 2.5 1 2.5 0 2.5-2 5-2 1.3 0 1.9.5 2.5 1s1.2 1 2.5 1c2.5 0 2.5-2 5-2 1.3 0 1.9.5 2.5 1",key:"1924j5"}]]);/**
* @license lucide-react v0.462.0 - ISC
*
* This source code is licensed under the ISC license.
* See the LICENSE file in the root directory of this source tree.
*/const wr=r("Shirt",[["path",{d:"M20.38 3.46 16 2a4 4 0 0 1-8 0L3.62 3.46a2 2 0 0 0-1.34 2.23l.58 3.47a1 1 0 0 0 .99.84H6v10c0 1.1.9 2 2 2h8a2 2 0 0 0 2-2V10h2.15a1 1 0 0 0 .99-.84l.58-3.47a2 2 0 0 0-1.34-2.23z",key:"1wgbhj"}]]);/**
* @license lucide-react v0.462.0 - ISC
*
* This source code is licensed under the ISC license.
* See the LICENSE file in the root directory of this source tree.
*/const Nr=r("ShoppingCart",[["circle",{cx:"8",cy:"21",r:"1",key:"jimo8o"}],["circle",{cx:"19",cy:"21",r:"1",key:"13723u"}],["path",{d:"M2.05 2.05h2l2.66 12.42a2 2 0 0 0 2 1.58h9.78a2 2 0 0 0 1.95-1.57l1.65-7.43H5.12",key:"9zh506"}]]);/**
* @license lucide-react v0.462.0 - ISC
*
* This source code is licensed under the ISC license.
* See the LICENSE file in the root directory of this source tree.
*/const Qr=r("Shrub",[["path",{d:"M12 22v-7l-2-2",key:"eqv9mc"}],["path",{d:"M17 8v.8A6 6 0 0 1 13.8 20H10A6.5 6.5 0 0 1 7 8a5 5 0 0 1 10 0Z",key:"ubcgy"}],["path",{d:"m14 14-2 2",key:"847xa2"}]]);/**
* @license lucide-react v0.462.0 - ISC
*
* This source code is licensed under the ISC license.
* See the LICENSE file in the root directory of this source tree.
*/const ie=r("Signpost",[["path",{d:"M12 13v8",key:"1l5pq0"}],["path",{d:"M12 3v3",key:"1n5kay"}],["path",{d:"M18 6a2 2 0 0 1 1.387.56l2.307 2.22a1 1 0 0 1 0 1.44l-2.307 2.22A2 2 0 0 1 18 13H6a2 2 0 0 1-1.387-.56l-2.306-2.22a1 1 0 0 1 0-1.44l2.306-2.22A2 2 0 0 1 6 6z",key:"gqqp9m"}]]);/**
* @license lucide-react v0.462.0 - ISC
*
* This source code is licensed under the ISC license.
* See the LICENSE file in the root directory of this source tree.
*/const Sr=r("Theater",[["path",{d:"M2 10s3-3 3-8",key:"3xiif0"}],["path",{d:"M22 10s-3-3-3-8",key:"ioaa5q"}],["path",{d:"M10 2c0 4.4-3.6 8-8 8",key:"16fkpi"}],["path",{d:"M14 2c0 4.4 3.6 8 8 8",key:"b9eulq"}],["path",{d:"M2 10s2 2 2 5",key:"1au1lb"}],["path",{d:"M22 10s-2 2-2 5",key:"qi2y5e"}],["path",{d:"M8 15h8",key:"45n4r"}],["path",{d:"M2 22v-1a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v1",key:"1vsc2m"}],["path",{d:"M14 22v-1a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v1",key:"hrha4u"}]]);/**
* @license lucide-react v0.462.0 - ISC
*
* This source code is licensed under the ISC license.
* See the LICENSE file in the root directory of this source tree.
*/const Cr=r("TrainFront",[["path",{d:"M8 3.1V7a4 4 0 0 0 8 0V3.1",key:"1v71zp"}],["path",{d:"m9 15-1-1",key:"1yrq24"}],["path",{d:"m15 15 1-1",key:"1t0d6s"}],["path",{d:"M9 19c-2.8 0-5-2.2-5-5v-4a8 8 0 0 1 16 0v4c0 2.8-2.2 5-5 5Z",key:"1p0hjs"}],["path",{d:"m8 19-2 3",key:"13i0xs"}],["path",{d:"m16 19 2 3",key:"xo31yx"}]]);/**
* @license lucide-react v0.462.0 - ISC
*
* This source code is licensed under the ISC license.
* See the LICENSE file in the root directory of this source tree.
*/const ca=r("TramFront",[["rect",{width:"16",height:"16",x:"4",y:"3",rx:"2",key:"1wxw4b"}],["path",{d:"M4 11h16",key:"mpoxn0"}],["path",{d:"M12 3v8",key:"1h2ygw"}],["path",{d:"m8 19-2 3",key:"13i0xs"}],["path",{d:"m18 22-2-3",key:"1p0ohu"}],["path",{d:"M8 15h.01",key:"a7atzg"}],["path",{d:"M16 15h.01",key:"rnfrdf"}]]);/**
* @license lucide-react v0.462.0 - ISC
*
* This source code is licensed under the ISC license.
* See the LICENSE file in the root directory of this source tree.
*/const Tr=r("TreeDeciduous",[["path",{d:"M8 19a4 4 0 0 1-2.24-7.32A3.5 3.5 0 0 1 9 6.03V6a3 3 0 1 1 6 0v.04a3.5 3.5 0 0 1 3.24 5.65A4 4 0 0 1 16 19Z",key:"oadzkq"}],["path",{d:"M12 19v3",key:"npa21l"}]]);/**
* @license lucide-react v0.462.0 - ISC
*
* This source code is licensed under the ISC license.
* See the LICENSE file in the root directory of this source tree.
*/const U=r("UtensilsCrossed",[["path",{d:"m16 2-2.3 2.3a3 3 0 0 0 0 4.2l1.8 1.8a3 3 0 0 0 4.2 0L22 8",key:"n7qcjb"}],["path",{d:"M15 15 3.3 3.3a4.2 4.2 0 0 0 0 6l7.3 7.3c.7.7 2 .7 2.8 0L15 15Zm0 0 7 7",key:"d0u48b"}],["path",{d:"m2.1 21.8 6.4-6.3",key:"yn04lh"}],["path",{d:"m19 5-7 7",key:"194lzd"}]]);/**
* @license lucide-react v0.462.0 - ISC
*
* This source code is licensed under the ISC license.
* See the LICENSE file in the root directory of this source tree.
*/const Vr=r("Warehouse",[["path",{d:"M22 8.35V20a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V8.35A2 2 0 0 1 3.26 6.5l8-3.2a2 2 0 0 1 1.48 0l8 3.2A2 2 0 0 1 22 8.35Z",key:"gksnxg"}],["path",{d:"M6 18h12",key:"9pbo8z"}],["path",{d:"M6 14h12",key:"4cwo0f"}],["rect",{width:"12",height:"12",x:"6",y:"10",key:"apd30q"}]]);/**
* @license lucide-react v0.462.0 - ISC
*
* This source code is licensed under the ISC license.
* See the LICENSE file in the root directory of this source tree.
*/const Lr=r("Wifi",[["path",{d:"M12 20h.01",key:"zekei9"}],["path",{d:"M2 8.82a15 15 0 0 1 20 0",key:"dnpr2z"}],["path",{d:"M5 12.859a10 10 0 0 1 14 0",key:"1x1e6c"}],["path",{d:"M8.5 16.429a5 5 0 0 1 7 0",key:"1bycff"}]]);/**
* @license lucide-react v0.462.0 - ISC
*
* This source code is licensed under the ISC license.
* See the LICENSE file in the root directory of this source tree.
*/const Br=r("Wind",[["path",{d:"M12.8 19.6A2 2 0 1 0 14 16H2",key:"148xed"}],["path",{d:"M17.5 8a2.5 2.5 0 1 1 2 4H2",key:"1u4tom"}],["path",{d:"M9.8 4.4A2 2 0 1 1 11 8H2",key:"75valh"}]]);/**
* @license lucide-react v0.462.0 - ISC
*
* This source code is licensed under the ISC license.
* See the LICENSE file in the root directory of this source tree.
*/const Pr=r("Wrench",[["path",{d:"M14.7 6.3a1 1 0 0 0 0 1.4l1.6 1.6a1 1 0 0 0 1.4 0l3.77-3.77a6 6 0 0 1-7.94 7.94l-6.91 6.91a2.12 2.12 0 0 1-3-3l6.91-6.91a6 6 0 0 1 7.94-7.94l-3.76 3.76z",key:"cbrjhi"}]]),W=[{id:"transport",name:"Kollektivtrafik & Transport",icon:_e,description:"Hållplatser, stationer och transportinfrastruktur",types:[{value:"bus_stop",label:"Busshållplatser",icon:_e,description:"Hållplatser och busskurer",osmQuery:"highway=bus_stop"},{value:"bus_shelter",label:"Busskurer",icon:dr,description:"Väderskydd vid hållplatser",osmQuery:"amenity=shelter"},{value:"train_station",label:"Tågstationer",icon:ca,description:"Järnvägsstationer",osmQuery:"railway=station"},{value:"subway_entrance",label:"Tunnelbaneentréer",icon:Cr,description:"Ingångar till tunnelbana",osmQuery:"railway=subway_entrance"},{value:"tram_stop",label:"Spårvagnshållplatser",icon:ca,description:"Hållplatser för spårvagn",osmQuery:"railway=tram_stop"},{value:"ferry_terminal",label:"Färjeterminaler",icon:Mr,description:"Hamnar och färjelägen",osmQuery:"amenity=ferry_terminal"},{value:"airport",label:"Flygplatser",icon:Ra,description:"Flygplatsterminaler",osmQuery:"aeroway=terminal"},{value:"taxi_stand",label:"Taxistationer",icon:Fe,description:"Taxistolpar och väntplatser",osmQuery:"amenity=taxi"}]},{id:"parking",name:"Parkering & Laddning",icon:ta,description:"Parkeringar, cykelställ och laddinfrastruktur",types:[{value:"bike_parking",label:"Cykelparkering",icon:La,description:"Cykelställ och parkeringar",osmQuery:"amenity=bicycle_parking"},{value:"car_parking",label:"Bilparkering",icon:ta,description:"Parkeringsplatser och P-hus",osmQuery:"amenity=parking"},{value:"motorcycle_parking",label:"MC-parkering",icon:Fe,description:"Parkeringar för motorcyklar",osmQuery:"amenity=motorcycle_parking"},{value:"electric_charging",label:"Elbilsladdare",icon:be,description:"Laddstationer för elbilar",osmQuery:"amenity=charging_station"},{value:"bike_charging",label:"Elcykelladdning",icon:jr,description:"Laddning för elcyklar",osmQuery:"amenity=charging_station"},{value:"parking_meter",label:"Parkeringsautomater",icon:Oa,description:"Betalautomater för parkering",osmQuery:"amenity=vending_machine"}]},{id:"street_furniture",name:"Gatumöbler & Infrastruktur",icon:la,description:"Bänkar, belysning, papperskorgar och annan gatuutrustning",types:[{value:"park_bench",label:"Parkbänkar",icon:ne,description:"Sittbänkar i parker",osmQuery:"amenity=bench"},{value:"street_bench",label:"Gatubänkar",icon:ne,description:"Bänkar längs gator",osmQuery:"amenity=bench"},{value:"trash_bin",label:"Papperskorgar",icon:Ga,description:"Soptunnor och avfallskärl",osmQuery:"amenity=waste_basket"},{value:"recycling",label:"Återvinningsstationer",icon:We,description:"Återvinningsbehållare",osmQuery:"amenity=recycling"},{value:"street_lamp",label:"Gatubelysning",icon:la,description:"Gatlyktor och lampor",osmQuery:"highway=street_lamp"},{value:"park_lamp",label:"Parkbelysning",icon:br,description:"Belysning i parker",osmQuery:"highway=street_lamp"},{value:"fountain",label:"Fontäner",icon:re,description:"Dekorativa fontäner",osmQuery:"amenity=fountain"},{value:"drinking_water",label:"Dricksvattenposter",icon:re,description:"Vattenfontäner och kranar",osmQuery:"amenity=drinking_water"},{value:"clock",label:"Offentliga klockor",icon:Za,description:"Klockor på gator och torg",osmQuery:"amenity=clock"},{value:"post_box",label:"Brevlådor",icon:$e,description:"Postlådor och brevlådor",osmQuery:"amenity=post_box"},{value:"telephone",label:"Telefonkiosker",icon:oa,description:"Offentliga telefoner",osmQuery:"amenity=telephone"},{value:"information_board",label:"Informationstavlor",icon:ur,description:"Anslagstavlor och info",osmQuery:"tourism=information"},{value:"wayfinding",label:"Vägvisningsskyltar",icon:ie,description:"Vägvisare och skyltar",osmQuery:"information=guidepost"}]},{id:"recreation",name:"Rekreation & Fritid",icon:ia,description:"Lekplatser, utegym, parker och grönområden",types:[{value:"playground",label:"Lekplatser",icon:sa,description:"Lekplatser för barn",osmQuery:"leisure=playground"},{value:"outdoor_gym",label:"Utegym",icon:ia,description:"Fitness-stationer utomhus",osmQuery:"leisure=fitness_station"},{value:"dog_park",label:"Hundrastgårdar",icon:za,description:"Inhägnade områden för hundar",osmQuery:"leisure=dog_park"},{value:"sports_pitch",label:"Sportplaner",icon:R,description:"Fotbollsplaner, tennisbanor etc",osmQuery:"leisure=pitch"},{value:"skate_park",label:"Skateparker",icon:R,description:"Ramper och skateanläggningar",osmQuery:"leisure=skatepark"},{value:"swimming_pool",label:"Utomhusbad",icon:Ge,description:"Utomhuspooler",osmQuery:"leisure=swimming_pool"},{value:"beach",label:"Badplatser",icon:Ge,description:"Stränder och badbryggor",osmQuery:"natural=beach"},{value:"picnic_area",label:"Picknickplatser",icon:U,description:"Bord och bänkar för picknick",osmQuery:"tourism=picnic_site"},{value:"bbq",label:"Grillplatser",icon:U,description:"Publika grillar",osmQuery:"amenity=bbq"},{value:"golf_course",label:"Golfbanor",icon:Ua,description:"Golfanläggningar",osmQuery:"leisure=golf_course"}]},{id:"nature",name:"Natur & Parker",icon:ke,description:"Parker, naturområden, stigar och grönska",types:[{value:"park",label:"Parker",icon:ke,description:"Stadsparker och grönområden",osmQuery:"leisure=park"},{value:"nature_reserve",label:"Naturreservat",icon:Ia,description:"Skyddade naturområden",osmQuery:"leisure=nature_reserve"},{value:"hiking_trail",label:"Vandringsleder",icon:he,description:"Märkta stigar och leder",osmQuery:"highway=path"},{value:"viewpoint",label:"Utsiktsplatser",icon:Ye,description:"Utsiktspunkter",osmQuery:"tourism=viewpoint"},{value:"garden",label:"Trädgårdar",icon:Ze,description:"Botaniska och offentliga trädgårdar",osmQuery:"leisure=garden"},{value:"allotment",label:"Koloniträdgårdar",icon:Qr,description:"Odlingslotter",osmQuery:"landuse=allotments"},{value:"tree_monument",label:"Skyddade träd",icon:Tr,description:"Naturminnen och gamla träd",osmQuery:"natural=tree"}]},{id:"buildings_residential",name:"Bostäder & Fastigheter",icon:X,description:"Bostadshus, fasader och entréer",types:[{value:"apartment_building",label:"Flerbostadshus",icon:ee,description:"Hyreshus och bostadsrätter",osmQuery:"building=apartments"},{value:"house",label:"Villor & radhus",icon:X,description:"Enfamiljshus",osmQuery:"building=house"},{value:"building_facade",label:"Fasader",icon:ve,description:"Husfasader och exteriörer",osmQuery:"building=yes"},{value:"building_entrance",label:"Entréer",icon:mr,description:"Portentréer och trapphus",osmQuery:"entrance=main"},{value:"balcony",label:"Balkonger",icon:X,description:"Balkonger och terrasser",osmQuery:"building=yes"},{value:"roof",label:"Tak",icon:X,description:"Taklandskap och takmaterial",osmQuery:"building=yes"},{value:"courtyard",label:"Innergårdar",icon:na,description:"Gårdar mellan byggnader",osmQuery:"landuse=residential"},{value:"childhood_home",label:"Barndomshem",icon:xe,description:"Personliga platser och minnen",osmQuery:"building=yes"}]},{id:"buildings_commercial",name:"Kommersiella byggnader",icon:ve,description:"Kontor, butiker och kommersiella fastigheter",types:[{value:"office_building",label:"Kontorsbyggnader",icon:ve,description:"Kontorsfastigheter",osmQuery:"building=office"},{value:"headquarters",label:"Huvudkontor",icon:L,description:"Företagshuvudkontor",osmQuery:"office=company"},{value:"shopping_mall",label:"Köpcentrum",icon:Ea,description:"Gallerior och köpcenter",osmQuery:"shop=mall"},{value:"retail_store",label:"Butiker",icon:Z,description:"Butiksfasader",osmQuery:"shop=yes"},{value:"supermarket",label:"Matbutiker",icon:Nr,description:"Livsmedelsbutiker",osmQuery:"shop=supermarket"},{value:"warehouse",label:"Lagerbyggnader",icon:Vr,description:"Lager och logistik",osmQuery:"building=warehouse"},{value:"factory",label:"Industrifastigheter",icon:pr,description:"Fabriker och industri",osmQuery:"building=industrial"},{value:"hotel",label:"Hotell",icon:ee,description:"Hotellfasader",osmQuery:"tourism=hotel"}]},{id:"retail_chains",name:"Butikskedjor & Restauranger",icon:Z,description:"Kedjor, franchises och restauranger",types:[{value:"gas_station",label:"Bensinstationer",icon:yr,description:"Mackar och drivmedel",osmQuery:"amenity=fuel"},{value:"fast_food",label:"Snabbmat",icon:U,description:"Snabbmatsrestauranger",osmQuery:"amenity=fast_food"},{value:"restaurant",label:"Restauranger",icon:U,description:"Restaurangfasader",osmQuery:"amenity=restaurant"},{value:"cafe",label:"Caféer",icon:qa,description:"Kaféer och konditorier",osmQuery:"amenity=cafe"},{value:"pharmacy",label:"Apotek",icon:se,description:"Apotekslokaler",osmQuery:"amenity=pharmacy"},{value:"bank",label:"Banker",icon:L,description:"Bankkontor",osmQuery:"amenity=bank"},{value:"atm",label:"Bankomater",icon:L,description:"Uttagsautomater",osmQuery:"amenity=atm"},{value:"convenience_store",label:"Närbutiker",icon:Z,description:"Kiosker och servicebutiker",osmQuery:"shop=convenience"},{value:"electronics_store",label:"Elektronikbutiker",icon:$a,description:"Teknikbutiker",osmQuery:"shop=electronics"},{value:"clothing_store",label:"Klädbutiker",icon:wr,description:"Modebutiker",osmQuery:"shop=clothes"}]},{id:"advertising",name:"Reklam & Skyltar",icon:ie,description:"Reklamskyltar, affischer och marknadsföring",types:[{value:"billboard",label:"Reklamtavlor",icon:Ja,description:"Stora reklamskyltar",osmQuery:"advertising=billboard"},{value:"poster_board",label:"Affischtavlor",icon:hr,description:"Affischpelare och tavlor",osmQuery:"advertising=poster_box"},{value:"digital_display",label:"Digitala skärmar",icon:xr,description:"LED-skyltar och skärmar",osmQuery:"advertising=screen"},{value:"shop_sign",label:"Butiksskyltar",icon:Z,description:"Fasadskyltar på butiker",osmQuery:"advertising=sign"},{value:"neon_sign",label:"Neonsklyltar",icon:Ae,description:"Lysande skyltar",osmQuery:"advertising=sign"},{value:"street_ad",label:"Gatupelare",icon:ie,description:"Reklampelare på gator",osmQuery:"advertising=column"},{value:"bus_ad",label:"Bussreklam",icon:_e,description:"Reklam på bussar och hållplatser",osmQuery:"advertising=board"}]},{id:"seasonal",name:"Säsongsrelaterat",icon:Ue,description:"Juldekorationer, sommarutrustning och säsongsbetonat",types:[{value:"christmas_decoration",label:"Juldekorationer",icon:Ae,description:"Julbelysning och prydnader",osmQuery:"tourism=attraction"},{value:"christmas_tree",label:"Julgranar",icon:ke,description:"Offentliga julgranar",osmQuery:"natural=tree"},{value:"christmas_market",label:"Julmarknader",icon:Ya,description:"Julmarknadstånd",osmQuery:"amenity=marketplace"},{value:"easter_decoration",label:"Påskdekorationer",icon:Ze,description:"Påskpynt",osmQuery:"tourism=attraction"},{value:"midsummer",label:"Midsommarstänger",icon:He,description:"Midsommarfirande",osmQuery:"tourism=attraction"},{value:"ice_rink",label:"Isbanor",icon:Ue,description:"Skridskobanor",osmQuery:"leisure=ice_rink"},{value:"outdoor_seating",label:"Uteserveringar",icon:U,description:"Säsongsbetonade uteplatser",osmQuery:"amenity=restaurant"}]},{id:"public_services",name:"Offentliga byggnader",icon:L,description:"Myndigheter, skolor och offentlig service",types:[{value:"town_hall",label:"Stadshus",icon:L,description:"Kommunhus och stadshus",osmQuery:"amenity=townhall"},{value:"courthouse",label:"Domstolar",icon:L,description:"Tingsrätter och domstolar",osmQuery:"amenity=courthouse"},{value:"police_station",label:"Polisstationer",icon:Xe,description:"Poliskontor",osmQuery:"amenity=police"},{value:"fire_station",label:"Brandstationer",icon:fe,description:"Brandkårer",osmQuery:"amenity=fire_station"},{value:"hospital",label:"Sjukhus",icon:se,description:"Sjukhusentréer",osmQuery:"amenity=hospital"},{value:"health_center",label:"Vårdcentraler",icon:se,description:"Vårdmottagningar",osmQuery:"amenity=clinic"},{value:"school",label:"Skolor",icon:ea,description:"Grundskolor och gymnasium",osmQuery:"amenity=school"},{value:"kindergarten",label:"Förskolor",icon:sa,description:"Dagis och förskolor",osmQuery:"amenity=kindergarten"},{value:"university",label:"Universitet",icon:ea,description:"Högskolor och universitet",osmQuery:"amenity=university"},{value:"library",label:"Bibliotek",icon:kr,description:"Folkbibliotek",osmQuery:"amenity=library"},{value:"post_office",label:"Postkontor",icon:$e,description:"Postombud och kontor",osmQuery:"amenity=post_office"},{value:"social_facility",label:"Sociala inrättningar",icon:xe,description:"Äldreboenden, gruppboenden",osmQuery:"amenity=social_facility"}]},{id:"culture",name:"Kultur & Historia",icon:je,description:"Museer, kyrkor, monument och kulturarv",types:[{value:"museum",label:"Museer",icon:je,description:"Museibyggnader",osmQuery:"tourism=museum"},{value:"church",label:"Kyrkor",icon:Me,description:"Kyrkor och kapell",osmQuery:"amenity=place_of_worship"},{value:"mosque",label:"Moskéer",icon:Me,description:"Moskéer",osmQuery:"amenity=place_of_worship"},{value:"synagogue",label:"Synagogor",icon:Me,description:"Synagogor",osmQuery:"amenity=place_of_worship"},{value:"theater",label:"Teatrar",icon:Sr,description:"Teaterbyggnader",osmQuery:"amenity=theatre"},{value:"cinema",label:"Biografer",icon:we,description:"Biobyggnader",osmQuery:"amenity=cinema"},{value:"concert_hall",label:"Konserthus",icon:Ka,description:"Konsertlokaler",osmQuery:"amenity=concert_hall"},{value:"art_gallery",label:"Konstgallerier",icon:je,description:"Gallerier",osmQuery:"tourism=gallery"},{value:"monument",label:"Monument",icon:L,description:"Statyer och minnesmärken",osmQuery:"historic=monument"},{value:"memorial",label:"Minnesmärken",icon:Je,description:"Minnesplatser",osmQuery:"historic=memorial"},{value:"historic_building",label:"Historiska byggnader",icon:ee,description:"K-märkta byggnader",osmQuery:"historic=building"},{value:"castle",label:"Slott & herrgårdar",icon:Je,description:"Slott och gods",osmQuery:"historic=castle"},{value:"ruins",label:"Ruiner",icon:ee,description:"Historiska ruiner",osmQuery:"historic=ruins"}]},{id:"infrastructure",name:"Infrastruktur & Teknik",icon:Pr,description:"El, vatten, tele och annan teknisk infrastruktur",types:[{value:"electrical_cabinet",label:"Elskåp",icon:be,description:"Fördelningsskåp för el",osmQuery:"power=cabinet"},{value:"transformer",label:"Transformatorstationer",icon:be,description:"Transformatorer",osmQuery:"power=transformer"},{value:"power_pole",label:"Elstolpar",icon:_r,description:"Ledningsstolpar",osmQuery:"power=pole"},{value:"telecom_cabinet",label:"Teleskåp",icon:Lr,description:"Telekomskåp",osmQuery:"telecom=cabinet"},{value:"cell_tower",label:"Mobilmaster",icon:Xa,description:"Telemaster",osmQuery:"man_made=mast"},{value:"water_tower",label:"Vattentorn",icon:re,description:"Vattentorn",osmQuery:"man_made=water_tower"},{value:"fire_hydrant",label:"Brandposter",icon:re,description:"Brandposter för räddningstjänst",osmQuery:"emergency=fire_hydrant"},{value:"manhole",label:"Brunnslock",icon:R,description:"VA-brunnar och lock",osmQuery:"man_made=manhole"},{value:"street_cabinet",label:"Teknikskåp",icon:er,description:"Diverse teknikskåp",osmQuery:"man_made=street_cabinet"},{value:"wind_turbine",label:"Vindkraftverk",icon:Br,description:"Vindsnurror",osmQuery:"generator:source=wind"},{value:"solar_panel",label:"Solpaneler",icon:He,description:"Solcellsanläggningar",osmQuery:"generator:source=solar"}]},{id:"safety",name:"Säkerhet & Tillgänglighet",icon:Xe,description:"Säkerhetsutrustning, tillgänglighetsanpassningar och nödutrustning",types:[{value:"defibrillator",label:"Hjärtstartare",icon:xe,description:"AED-enheter",osmQuery:"emergency=defibrillator"},{value:"emergency_phone",label:"Nödtelefoner",icon:oa,description:"Larmtelefoner",osmQuery:"emergency=phone"},{value:"first_aid",label:"Första hjälpen",icon:se,description:"Första hjälpen-stationer",osmQuery:"emergency=first_aid_kit"},{value:"fire_extinguisher",label:"Brandsläckare",icon:fe,description:"Publika brandsläckare",osmQuery:"emergency=fire_extinguisher"},{value:"surveillance_camera",label:"Övervakningskameror",icon:Ye,description:"Säkerhetskameror",osmQuery:"man_made=surveillance"},{value:"wheelchair_ramp",label:"Rullstolsramper",icon:ra,description:"Tillgänglighetsanpassningar",osmQuery:"wheelchair=yes"},{value:"tactile_paving",label:"Ledstråk",icon:he,description:"Taktila plattor för synskadade",osmQuery:"tactile_paving=yes"},{value:"accessible_toilet",label:"Handikapptoaletter",icon:ra,description:"Tillgänglighetsanpassade toaletter",osmQuery:"toilets:wheelchair=yes"},{value:"elevator",label:"Hissar",icon:vr,description:"Publika hissar",osmQuery:"highway=elevator"}]},{id:"road_infrastructure",name:"Vägar & Trafik",icon:te,description:"Vägar, broar, tunnlar och trafikutrustning",types:[{value:"traffic_signal",label:"Trafikljus",icon:fe,description:"Trafiksignaler",osmQuery:"highway=traffic_signals"},{value:"street_sign",label:"Gatuskyltar",icon:ie,description:"Vägskyltar",osmQuery:"traffic_sign=yes"},{value:"speed_camera",label:"Fartkameror",icon:we,description:"Hastighetskameror",osmQuery:"highway=speed_camera"},{value:"road_barrier",label:"Vägbommar",icon:Ba,description:"Bommar och barriärer",osmQuery:"barrier=lift_gate"},{value:"bridge",label:"Broar",icon:te,description:"Väg- och gångbroar",osmQuery:"man_made=bridge"},{value:"tunnel",label:"Tunnlar",icon:te,description:"Väg- och gångtunnlar",osmQuery:"tunnel=yes"},{value:"roundabout",label:"Rondeller",icon:We,description:"Cirkulationsplatser",osmQuery:"junction=roundabout"},{value:"pedestrian_crossing",label:"Övergångsställen",icon:he,description:"Zebramarkering",osmQuery:"highway=crossing"},{value:"bollard",label:"Pollare",icon:R,description:"Trafikpollare",osmQuery:"barrier=bollard"},{value:"guardrail",label:"Räcken",icon:na,description:"Vägräcken",osmQuery:"barrier=guard_rail"}]},{id:"construction",name:"Bygg & Underhåll",icon:ae,description:"Byggplatser, underhållsarbeten och renoveringar",types:[{value:"construction_site",label:"Byggarbetsplatser",icon:ae,description:"Nybyggnation",osmQuery:"landuse=construction"},{value:"scaffolding",label:"Byggnadsställningar",icon:ae,description:"Ställningar på fasader",osmQuery:"construction=yes"},{value:"road_work",label:"Vägarbeten",icon:ae,description:"Pågående vägarbeten",osmQuery:"highway=construction"},{value:"demolition",label:"Rivningsobjekt",icon:gr,description:"Byggnader under rivning",osmQuery:"demolished:building=yes"},{value:"renovation",label:"Renoveringsobjekt",icon:fr,description:"Pågående renoveringar",osmQuery:"construction=yes"}]},{id:"custom",name:"Anpassat",icon:Wa,description:"Egna platstyper och speciella behov",types:[{value:"custom_address",label:"Specifik adress",icon:ne,description:"En exakt adress eller plats",osmQuery:""},{value:"custom_area",label:"Anpassat område",icon:R,description:"Rita eget område på kartan",osmQuery:""},{value:"competitor_store",label:"Konkurrentbutiker",icon:Z,description:"Specifika konkurrenter",osmQuery:"shop=yes"},{value:"event_location",label:"Eventplatser",icon:ar,description:"Tillfälliga evenemang",osmQuery:"tourism=attraction"},{value:"street_segment",label:"Gatusegment",icon:te,description:"Alla fastigheter på en gata",osmQuery:"highway=residential"}]}],Fr=W.flatMap(l=>l.types),da=l=>Fr.find(x=>x.value===l),Ar=({selectedType:l,onSelect:x})=>{const[p,oe]=t.useState(""),[z,k]=t.useState([]),S=t.useMemo(()=>{if(!p.trim())return W;const i=p.toLowerCase();return W.map(n=>{const u=n.types.filter(f=>f.label.toLowerCase().includes(i)||f.description.toLowerCase().includes(i)||f.value.toLowerCase().includes(i));return{...n,types:u}}).filter(n=>n.types.length>0)},[p]),d=p.trim()?S.map(i=>i.id):z,B=i=>{p.trim()||k(n=>n.includes(i)?n.filter(u=>u!==i):[...n,i])},P=t.useMemo(()=>{for(const i of W){const n=i.types.find(u=>u.value===l);if(n)return{type:n,category:i}}return null},[l]),$=W.reduce((i,n)=>i+n.types.length,0);return e.jsxs(M,{className:"glass-card",children:[e.jsxs(w,{className:"pb-3",children:[e.jsxs(N,{className:"flex items-center gap-2",children:[e.jsx(ne,{className:"w-5 h-5"}),"Välj platstyp"]}),e.jsxs(le,{children:[$,"+ platstyper tillgängliga sök eller bläddra i kategorier"]})]}),e.jsxs(Q,{className:"space-y-4",children:[P&&e.jsxs("div",{className:"flex items-center gap-2 p-3 rounded-lg bg-primary/10 border border-primary/20",children:[e.jsx(Qe,{className:"w-4 h-4 text-primary flex-shrink-0"}),e.jsxs("div",{className:"flex-1 min-w-0",children:[e.jsx("p",{className:"font-medium text-sm text-foreground truncate",children:P.type.label}),e.jsx("p",{className:"text-xs text-muted-foreground truncate",children:P.category.name})]}),e.jsx(sr,{variant:"secondary",className:"flex-shrink-0",children:"Vald"})]}),e.jsxs("div",{className:"relative",children:[e.jsx(Se,{className:"absolute left-3 top-1/2 -translate-y-1/2 w-4 h-4 text-muted-foreground"}),e.jsx(Ne,{value:p,onChange:i=>oe(i.target.value),placeholder:"Sök platstyp...",className:"pl-10"})]}),e.jsx(rr,{className:"h-[400px] pr-4",children:e.jsx("div",{className:"space-y-2",children:S.length===0?e.jsxs("div",{className:"text-center py-8 text-muted-foreground",children:[e.jsxs("p",{children:['Ingen platstyp hittades för "',p,'"']}),e.jsx("p",{className:"text-sm mt-1",children:"Prova ett annat sökord"})]}):S.map(i=>{const n=i.icon,u=d.includes(i.id),f=i.types.some(c=>c.value===l);return e.jsxs("div",{className:"border border-border rounded-lg overflow-hidden",children:[e.jsxs("button",{onClick:()=>B(i.id),className:D("w-full flex items-center gap-3 p-3 text-left transition-colors","hover:bg-secondary/50",f&&"bg-primary/5"),children:[e.jsx(n,{className:D("w-5 h-5 flex-shrink-0",f?"text-primary":"text-muted-foreground")}),e.jsxs("div",{className:"flex-1 min-w-0",children:[e.jsx("p",{className:D("font-medium text-sm truncate",f&&"text-primary"),children:i.name}),e.jsxs("p",{className:"text-xs text-muted-foreground truncate",children:[i.types.length," platstyper"]})]}),u?e.jsx(tr,{className:"w-4 h-4 text-muted-foreground flex-shrink-0"}):e.jsx(ir,{className:"w-4 h-4 text-muted-foreground flex-shrink-0"})]}),u&&e.jsx("div",{className:"border-t border-border bg-background/50",children:e.jsx("div",{className:"grid grid-cols-1 sm:grid-cols-2 gap-1 p-2",children:i.types.map(c=>{const ce=c.icon,j=l===c.value;return e.jsxs("button",{onClick:()=>x(c.value),className:D("flex items-start gap-3 p-3 rounded-lg text-left transition-all",j?"bg-primary/10 border-2 border-primary":"border-2 border-transparent hover:bg-secondary/50"),children:[e.jsx(ce,{className:D("w-4 h-4 mt-0.5 flex-shrink-0",j?"text-primary":"text-muted-foreground")}),e.jsxs("div",{className:"flex-1 min-w-0",children:[e.jsx("p",{className:D("font-medium text-sm truncate",j&&"text-primary"),children:c.label}),e.jsx("p",{className:"text-xs text-muted-foreground line-clamp-2",children:c.description})]}),j&&e.jsx(Qe,{className:"w-4 h-4 text-primary flex-shrink-0 mt-0.5"})]},c.value)})})})]},i.id)})})})]})]})},ua=[{value:1,label:"Mån"},{value:2,label:"Tis"},{value:3,label:"Ons"},{value:4,label:"Tor"},{value:5,label:"Fre"},{value:6,label:"Lör"},{value:7,label:"Sön"}],ma=[{value:7,label:"1 vecka"},{value:14,label:"2 veckor"},{value:30,label:"1 månad"},{value:90,label:"3 månader"},{value:180,label:"6 månader"},{value:365,label:"1 år"}],fs=()=>{var Ve,Le,Be;const l=Pa(),{user:x}=Fa(),{isLoading:p,isActiveOrderer:oe}=Aa(),z=t.useRef(null),k=t.useRef(null),S=t.useRef([]),[d,B]=t.useState(1),[P,$]=t.useState(!1),[i,n]=t.useState(!1),[u,f]=t.useState(null),[c,ce]=t.useState(""),[j,pa]=t.useState(""),[Ce,ha]=t.useState(""),[C,ya]=t.useState(""),[I,ga]=t.useState(""),[de,ka]=t.useState(50),[T,ba]=t.useState(1),[h,ue]=t.useState("weekdays"),[E,va]=t.useState([1,3,5]),[q,xa]=t.useState(7),[F,fa]=t.useState(30),[A,ja]=t.useState(50),[o,_a]=t.useState([]),[Ma,wa]=t.useState(null),H=300,J=T>0?A/T:A,Te=J<=H;t.useEffect(()=>{(async()=>{try{const s=await Ha();s&&f(s)}catch(s){console.error("Failed to fetch mapbox token:",s)}})()},[]),t.useEffect(()=>{if(!(d!==2||!u||!z.current)&&!k.current)return O.accessToken=u,k.current=new O.Map({container:z.current,style:"mapbox://styles/mapbox/streets-v12",center:[18.0686,59.3293],zoom:10}),()=>{k.current&&(k.current.remove(),k.current=null)}},[d,u]),t.useEffect(()=>{if(!k.current||o.length===0)return;S.current.forEach(s=>s.remove()),S.current=[];const a=new O.LngLatBounds;o.forEach(s=>{const y=new O.Marker({color:"#3b82f6"}).setLngLat([s.longitude,s.latitude]).setPopup(new O.Popup().setHTML(`<strong>${s.name||"Plats"}</strong>`)).addTo(k.current);S.current.push(y),a.extend([s.longitude,s.latitude])}),k.current.fitBounds(a,{padding:50})},[o]),t.useEffect(()=>{!x&&!p&&l("/auth")},[x,p,l]);const Na=async()=>{var a;if(!C||!I){v.error("Välj platstyp och område först");return}n(!0);try{const s=await Y("/search-locations",{locationType:C,areaName:I});if(s.error)throw new Error(s.error);_a(s.locations||[]),wa(s.bbox),((a=s.locations)==null?void 0:a.length)>0?v.success(`Hittade ${s.locations.length} platser!`):v.info("Inga platser hittades i detta område")}catch(s){console.error("Search error:",s),v.error(s.message||"Kunde inte söka platser")}finally{n(!1)}},Qa=a=>{va(s=>s.includes(a)?s.filter(y=>y!==a):[...s,a].sort((y,me)=>y-me))},Sa=()=>{const a=o.length||1;let s;if(h==="weekdays"){const y=Math.ceil(F/7);s=E.length*y}else s=Math.ceil(F/q);return A*T*a*s},Ca=async()=>{if(o.length===0){v.error("Inga platser valda");return}if(!Te){v.error(`Max ${H} krediter per foto tillåtet. Nuvarande: ${Math.round(J)} krediter/foto`);return}$(!0);try{const a=new Date;a.setDate(a.getDate()+F);const s=await Y("/campaigns",{created_by:x==null?void 0:x.id,title:c.trim(),description:j.trim(),target_description:j.trim(),instructions:Ce.trim()||null,location_type:C,search_area:I.trim(),search_bbox:Ma,required_photos:T,reward_credits:A,radius_meters:de,schedule_type:h,schedule_weekdays:h==="weekdays"?E:null,schedule_interval_days:h==="interval"?q:null,duration_days:F,active_until:a.toISOString(),status:"active",locations_count:o.length}),y=o.map(m=>({campaign_id:s.id,osm_id:m.osm_id,name:m.name,latitude:m.latitude,longitude:m.longitude})),me=await Y("/campaign-locations",y),K=[],Ta=new Date,Va=new Date(a);for(const m of me||[]){let g=new Date(Ta);for(;g<=Va;){const pe=g.getDay()===0?7:g.getDay();h==="weekdays"?(E.includes(pe)&&K.push({campaign_id:s.id,campaign_location_id:m.id,scheduled_date:g.toISOString().split("T")[0]}),g.setDate(g.getDate()+1)):(K.push({campaign_id:s.id,campaign_location_id:m.id,scheduled_date:g.toISOString().split("T")[0]}),g.setDate(g.getDate()+q))}}const Pe=500;for(let m=0;m<K.length;m+=Pe){const g=K.slice(m,m+Pe);try{await Y("/scheduled-missions",g)}catch(pe){console.error("Error inserting scheduled missions batch:",pe)}}v.success(`Kampanj skapad med ${o.length} platser och ${K.length} schemalagda uppdrag!`),l("/orderer/dashboard")}catch(a){console.error("Failed to create campaign:",a),v.error(a.message||"Kunde inte skapa kampanjen")}finally{$(!1)}};return p?e.jsx("div",{className:"min-h-screen bg-background flex items-center justify-center",children:e.jsx(ye,{className:"w-8 h-8 animate-spin text-primary"})}):oe?e.jsxs("div",{className:"min-h-screen bg-background text-foreground pb-24",children:[e.jsxs("header",{className:"sticky top-0 z-10 bg-background/80 backdrop-blur-xl border-b border-border",children:[e.jsxs("div",{className:"flex items-center gap-3 px-4 py-4",children:[e.jsx(_,{variant:"ghost",size:"icon",onClick:()=>d>1?B(d-1):l(-1),children:e.jsx(aa,{className:"w-5 h-5"})}),e.jsxs("div",{children:[e.jsx("h1",{className:"text-xl font-bold",children:"Skapa kampanj"}),e.jsxs("p",{className:"text-sm text-muted-foreground",children:["Steg ",d," av 4"]})]})]}),e.jsx("div",{className:"h-1 bg-muted",children:e.jsx(G.div,{className:"h-full bg-primary",initial:{width:0},animate:{width:`${d/4*100}%`}})})]}),e.jsx("main",{className:"p-4 space-y-6",children:e.jsxs(lr,{mode:"wait",children:[d===1&&e.jsxs(G.div,{initial:{opacity:0,x:20},animate:{opacity:1,x:0},exit:{opacity:0,x:-20},className:"space-y-6",children:[e.jsxs(M,{className:"glass-card",children:[e.jsx(w,{children:e.jsxs(N,{className:"flex items-center gap-2",children:[e.jsx(R,{className:"w-5 h-5"}),"Vad ska fotograferas?"]})}),e.jsxs(Q,{className:"space-y-4",children:[e.jsxs("div",{className:"space-y-2",children:[e.jsx(b,{htmlFor:"title",children:"Kampanjens namn *"}),e.jsx(Ne,{id:"title",value:c,onChange:a=>ce(a.target.value),placeholder:"T.ex. Dokumentation av busskurer i Tyresö"})]}),e.jsxs("div",{className:"space-y-2",children:[e.jsx(b,{htmlFor:"targetDescription",children:"Vad ska fotas? *"}),e.jsx(Re,{id:"targetDescription",value:j,onChange:a=>pa(a.target.value),placeholder:"T.ex. Ta bild på hela busskuren framifrån, inkludera skador och klotter...",rows:3})]}),e.jsxs("div",{className:"space-y-2",children:[e.jsx(b,{htmlFor:"instructions",children:"Instruktioner (valfritt)"}),e.jsx(Re,{id:"instructions",value:Ce,onChange:a=>ha(a.target.value),placeholder:"Specifika instruktioner till fotografen...",rows:2})]})]})]}),e.jsx(Ar,{selectedType:C,onSelect:ya}),e.jsx(_,{onClick:()=>c&&j&&C?B(2):v.error("Fyll i alla obligatoriska fält"),className:"w-full",size:"lg",children:"Fortsätt"})]},"step1"),d===2&&e.jsxs(G.div,{initial:{opacity:0,x:20},animate:{opacity:1,x:0},exit:{opacity:0,x:-20},className:"space-y-6",children:[e.jsxs(M,{className:"glass-card",children:[e.jsxs(w,{children:[e.jsxs(N,{className:"flex items-center gap-2",children:[e.jsx(Se,{className:"w-5 h-5"}),"Sök platser"]}),e.jsxs(le,{children:["Ange kommun eller område för att hitta alla ",((Ve=da(C))==null?void 0:Ve.label.toLowerCase())||"platser"]})]}),e.jsxs(Q,{className:"space-y-4",children:[e.jsxs("div",{className:"flex gap-2",children:[e.jsx(Ne,{value:I,onChange:a=>ga(a.target.value),placeholder:"T.ex. Tyresö, Nacka, Stockholm...",className:"flex-1"}),e.jsx(_,{onClick:Na,disabled:i,children:i?e.jsx(ye,{className:"w-4 h-4 animate-spin"}):e.jsx(Se,{className:"w-4 h-4"})})]}),e.jsx("div",{ref:z,className:"w-full h-64 rounded-lg overflow-hidden border border-border"}),o.length>0&&e.jsxs("div",{className:"p-4 rounded-lg bg-primary/10 border border-primary/20",children:[e.jsxs("div",{className:"flex items-center gap-2 mb-2",children:[e.jsx(ze,{className:"w-5 h-5 text-primary"}),e.jsxs("span",{className:"font-semibold",children:[o.length," platser hittade"]})]}),e.jsx("p",{className:"text-sm text-muted-foreground",children:"Alla platser kommer att få ett eget uppdrag med ditt valda schema"})]}),e.jsxs("div",{className:"space-y-2",children:[e.jsxs(b,{children:["Radie per plats: ",de," meter"]}),e.jsx(ge,{value:[de],onValueChange:a=>ka(a[0]),min:25,max:200,step:25}),e.jsx("p",{className:"text-xs text-muted-foreground",children:"Fotografen måste vara inom denna radie för att genomföra uppdraget"})]})]})]}),e.jsxs(_,{onClick:()=>o.length>0?B(3):v.error("Sök efter platser först"),className:"w-full",size:"lg",disabled:o.length===0,children:["Fortsätt med ",o.length," platser"]})]},"step2"),d===3&&e.jsxs(G.div,{initial:{opacity:0,x:20},animate:{opacity:1,x:0},exit:{opacity:0,x:-20},className:"space-y-6",children:[e.jsxs(M,{className:"glass-card",children:[e.jsxs(w,{children:[e.jsxs(N,{className:"flex items-center gap-2",children:[e.jsx(or,{className:"w-5 h-5"}),"Schemaläggning"]}),e.jsx(le,{children:"Hur ofta ska foton tas på varje plats?"})]}),e.jsxs(Q,{className:"space-y-4",children:[e.jsxs(Da,{value:h,onValueChange:a=>ue(a),className:"space-y-3",children:[e.jsxs("div",{className:`flex items-center space-x-3 p-3 rounded-lg border cursor-pointer transition-colors ${h==="weekdays"?"border-primary bg-primary/5":"border-border hover:border-primary/50"}`,onClick:()=>ue("weekdays"),children:[e.jsx(Ie,{value:"weekdays",id:"weekdays"}),e.jsxs(b,{htmlFor:"weekdays",className:"flex-1 cursor-pointer",children:[e.jsx("span",{className:"font-medium",children:"Specifika veckodagar"}),e.jsx("p",{className:"text-sm text-muted-foreground",children:"T.ex. måndag, onsdag, fredag"})]})]}),e.jsxs("div",{className:`flex items-center space-x-3 p-3 rounded-lg border cursor-pointer transition-colors ${h==="interval"?"border-primary bg-primary/5":"border-border hover:border-primary/50"}`,onClick:()=>ue("interval"),children:[e.jsx(Ie,{value:"interval",id:"interval"}),e.jsxs(b,{htmlFor:"interval",className:"flex-1 cursor-pointer",children:[e.jsx("span",{className:"font-medium",children:"Intervall"}),e.jsx("p",{className:"text-sm text-muted-foreground",children:"T.ex. var 3:e dag, varje vecka"})]})]})]}),h==="weekdays"&&e.jsxs("div",{className:"space-y-2",children:[e.jsx(b,{children:"Välj dagar"}),e.jsx("div",{className:"flex gap-2 flex-wrap",children:ua.map(a=>{const s=E.includes(a.value);return e.jsx("button",{onClick:()=>Qa(a.value),className:`px-4 py-2 rounded-lg border transition-all ${s?"bg-primary text-primary-foreground border-primary":"bg-secondary/20 border-border hover:border-primary/50"}`,children:a.label},a.value)})})]}),h==="interval"&&e.jsxs("div",{className:"space-y-2",children:[e.jsx(b,{children:"Intervall"}),e.jsxs(Ee,{value:q.toString(),onValueChange:a=>xa(parseInt(a)),children:[e.jsx(qe,{children:e.jsx(Ke,{})}),e.jsxs(Oe,{children:[e.jsx(V,{value:"1",children:"Varje dag"}),e.jsx(V,{value:"2",children:"Varannan dag"}),e.jsx(V,{value:"3",children:"Var 3:e dag"}),e.jsx(V,{value:"7",children:"Varje vecka"}),e.jsx(V,{value:"14",children:"Varannan vecka"}),e.jsx(V,{value:"30",children:"Varje månad"})]})]})]})]})]}),e.jsxs(M,{className:"glass-card",children:[e.jsx(w,{children:e.jsxs(N,{className:"flex items-center gap-2",children:[e.jsx(cr,{className:"w-5 h-5"}),"Varaktighet"]})}),e.jsx(Q,{children:e.jsxs(Ee,{value:F.toString(),onValueChange:a=>fa(parseInt(a)),children:[e.jsx(qe,{children:e.jsx(Ke,{})}),e.jsx(Oe,{children:ma.map(a=>e.jsx(V,{value:a.value.toString(),children:a.label},a.value))})]})})]}),e.jsx(_,{onClick:()=>B(4),className:"w-full",size:"lg",children:"Fortsätt"})]},"step3"),d===4&&e.jsxs(G.div,{initial:{opacity:0,x:20},animate:{opacity:1,x:0},exit:{opacity:0,x:-20},className:"space-y-6",children:[e.jsxs(M,{className:"glass-card",children:[e.jsx(w,{children:e.jsxs(N,{className:"flex items-center gap-2",children:[e.jsx(we,{className:"w-5 h-5"}),"Foton & ersättning"]})}),e.jsxs(Q,{className:"space-y-4",children:[e.jsxs("div",{className:"space-y-2",children:[e.jsxs(b,{children:["Antal foton per plats: ",T]}),e.jsx(ge,{value:[T],onValueChange:a=>ba(a[0]),min:1,max:10,step:1})]}),e.jsxs("div",{className:"space-y-2",children:[e.jsxs(b,{children:["Ersättning per uppdrag: ",A," krediter"]}),e.jsx(ge,{value:[A],onValueChange:a=>ja(a[0]),min:25,max:T*H,step:25}),e.jsxs("div",{className:"flex items-center justify-between text-xs",children:[e.jsxs("span",{className:J>H?"text-destructive font-medium":"text-muted-foreground",children:[Math.round(J)," krediter/foto"]}),e.jsxs("span",{className:"text-muted-foreground",children:["Max ",H," krediter/foto"]})]}),!Te&&e.jsxs("p",{className:"text-xs text-destructive",children:["⚠️ Ersättningen får inte överstiga ",H," krediter per foto"]})]})]})]}),e.jsxs(M,{className:"glass-card border-primary/20 bg-gradient-to-r from-primary/5 to-primary/10",children:[e.jsx(w,{children:e.jsxs(N,{className:"flex items-center gap-2",children:[e.jsx(ze,{className:"w-5 h-5 text-primary"}),"Sammanfattning"]})}),e.jsxs(Q,{className:"space-y-3",children:[e.jsxs("div",{className:"flex justify-between",children:[e.jsx("span",{className:"text-muted-foreground",children:"Kampanj"}),e.jsx("span",{className:"font-medium",children:c})]}),e.jsxs("div",{className:"flex justify-between",children:[e.jsx("span",{className:"text-muted-foreground",children:"Platstyp"}),e.jsx("span",{className:"font-medium",children:(Le=da(C))==null?void 0:Le.label})]}),e.jsxs("div",{className:"flex justify-between",children:[e.jsx("span",{className:"text-muted-foreground",children:"Område"}),e.jsx("span",{className:"font-medium",children:I})]}),e.jsxs("div",{className:"flex justify-between",children:[e.jsx("span",{className:"text-muted-foreground",children:"Antal platser"}),e.jsxs("span",{className:"font-medium",children:[o.length," st"]})]}),e.jsxs("div",{className:"flex justify-between",children:[e.jsx("span",{className:"text-muted-foreground",children:"Schema"}),e.jsx("span",{className:"font-medium",children:h==="weekdays"?E.map(a=>{var s;return(s=ua.find(y=>y.value===a))==null?void 0:s.label}).join(", "):`Var ${q}:e dag`})]}),e.jsxs("div",{className:"flex justify-between",children:[e.jsx("span",{className:"text-muted-foreground",children:"Varaktighet"}),e.jsx("span",{className:"font-medium",children:(Be=ma.find(a=>a.value===F))==null?void 0:Be.label})]}),e.jsxs("div",{className:"border-t border-border pt-3 mt-3",children:[e.jsxs("div",{className:"flex justify-between text-lg",children:[e.jsx("span",{className:"font-semibold",children:"Uppskattad totalkostnad"}),e.jsxs("span",{className:"font-bold text-primary",children:[Sa().toLocaleString("sv-SE")," krediter"]})]}),e.jsxs("p",{className:"text-xs text-muted-foreground mt-1",children:["Baserat på ",o.length," platser × ersättning × antal tillfällen"]})]})]})]}),e.jsx(_,{onClick:Ca,className:"w-full",size:"lg",disabled:P,children:P?e.jsxs(e.Fragment,{children:[e.jsx(ye,{className:"w-4 h-4 mr-2 animate-spin"}),"Skapar kampanj..."]}):e.jsxs(e.Fragment,{children:[e.jsx(Qe,{className:"w-4 h-4 mr-2"}),"Skapa kampanj"]})})]},"step4")]})}),e.jsx(De,{})]}):e.jsxs("div",{className:"min-h-screen bg-background text-foreground pb-24",children:[e.jsx("header",{className:"sticky top-0 z-10 bg-background/80 backdrop-blur-xl border-b border-border",children:e.jsxs("div",{className:"flex items-center gap-3 px-4 py-4",children:[e.jsx(_,{variant:"ghost",size:"icon",onClick:()=>l(-1),children:e.jsx(aa,{className:"w-5 h-5"})}),e.jsx("h1",{className:"text-xl font-bold",children:"Skapa kampanj"})]})}),e.jsx("main",{className:"p-4 space-y-6",children:e.jsxs(M,{className:"glass-card border-amber-500/30",children:[e.jsxs(w,{children:[e.jsxs(N,{className:"flex items-center gap-2",children:[e.jsx(nr,{className:"w-5 h-5 text-amber-500"}),"Bli beställare först"]}),e.jsx(le,{children:"Du måste vara registrerad och godkänd som beställare för att kunna skapa kampanjer."})]}),e.jsx(Q,{children:e.jsx(_,{onClick:()=>l("/orderer/register"),className:"w-full",children:"Registrera som beställare"})})]})}),e.jsx(De,{})]})};export{fs as default};
//# sourceMappingURL=CreateCampaign-ssmSrgNm.js.map