intlayer-editor 4.0.2 → 4.0.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (75) hide show
  1. package/README.md +0 -140
  2. package/dist/assets/index-B3l_2n5S.js +40 -0
  3. package/dist/assets/index-Dfay14Wd.css +1 -0
  4. package/dist/index.html +14 -0
  5. package/package.json +47 -58
  6. package/dist/cjs/ContentSelectorWrapper.cjs +0 -83
  7. package/dist/cjs/ContentSelectorWrapper.cjs.map +0 -1
  8. package/dist/cjs/DictionaryEditionDrawer/DictionaryEditionDrawer.cjs +0 -166
  9. package/dist/cjs/DictionaryEditionDrawer/DictionaryEditionDrawer.cjs.map +0 -1
  10. package/dist/cjs/DictionaryEditionDrawer/dictionaryEditionDrawer.content.cjs +0 -76
  11. package/dist/cjs/DictionaryEditionDrawer/dictionaryEditionDrawer.content.cjs.map +0 -1
  12. package/dist/cjs/DictionaryEditionDrawer/index.cjs +0 -25
  13. package/dist/cjs/DictionaryEditionDrawer/index.cjs.map +0 -1
  14. package/dist/cjs/DictionaryEditionDrawer/useDictionaryEditionDrawer.cjs +0 -79
  15. package/dist/cjs/DictionaryEditionDrawer/useDictionaryEditionDrawer.cjs.map +0 -1
  16. package/dist/cjs/DictionaryListDrawer/DictionaryListDrawer.cjs +0 -89
  17. package/dist/cjs/DictionaryListDrawer/DictionaryListDrawer.cjs.map +0 -1
  18. package/dist/cjs/DictionaryListDrawer/dictionaryListDrawerIdentifier.cjs +0 -29
  19. package/dist/cjs/DictionaryListDrawer/dictionaryListDrawerIdentifier.cjs.map +0 -1
  20. package/dist/cjs/DictionaryListDrawer/index.cjs +0 -25
  21. package/dist/cjs/DictionaryListDrawer/index.cjs.map +0 -1
  22. package/dist/cjs/IntlayerEditorProvider.cjs +0 -99
  23. package/dist/cjs/IntlayerEditorProvider.cjs.map +0 -1
  24. package/dist/cjs/index.cjs +0 -27
  25. package/dist/cjs/index.cjs.map +0 -1
  26. package/dist/cjs/styles/style.css +0 -2
  27. package/dist/cjs/styles/style.css.map +0 -1
  28. package/dist/cjs/styles/tailwind.cjs +0 -41
  29. package/dist/cjs/styles/tailwind.cjs.map +0 -1
  30. package/dist/esm/ContentSelectorWrapper.mjs +0 -67
  31. package/dist/esm/ContentSelectorWrapper.mjs.map +0 -1
  32. package/dist/esm/DictionaryEditionDrawer/DictionaryEditionDrawer.mjs +0 -141
  33. package/dist/esm/DictionaryEditionDrawer/DictionaryEditionDrawer.mjs.map +0 -1
  34. package/dist/esm/DictionaryEditionDrawer/dictionaryEditionDrawer.content.mjs +0 -56
  35. package/dist/esm/DictionaryEditionDrawer/dictionaryEditionDrawer.content.mjs.map +0 -1
  36. package/dist/esm/DictionaryEditionDrawer/index.mjs +0 -3
  37. package/dist/esm/DictionaryEditionDrawer/index.mjs.map +0 -1
  38. package/dist/esm/DictionaryEditionDrawer/useDictionaryEditionDrawer.mjs +0 -58
  39. package/dist/esm/DictionaryEditionDrawer/useDictionaryEditionDrawer.mjs.map +0 -1
  40. package/dist/esm/DictionaryListDrawer/DictionaryListDrawer.mjs +0 -71
  41. package/dist/esm/DictionaryListDrawer/DictionaryListDrawer.mjs.map +0 -1
  42. package/dist/esm/DictionaryListDrawer/dictionaryListDrawerIdentifier.mjs +0 -5
  43. package/dist/esm/DictionaryListDrawer/dictionaryListDrawerIdentifier.mjs.map +0 -1
  44. package/dist/esm/DictionaryListDrawer/index.mjs +0 -3
  45. package/dist/esm/DictionaryListDrawer/index.mjs.map +0 -1
  46. package/dist/esm/IntlayerEditorProvider.mjs +0 -78
  47. package/dist/esm/IntlayerEditorProvider.mjs.map +0 -1
  48. package/dist/esm/index.mjs +0 -4
  49. package/dist/esm/index.mjs.map +0 -1
  50. package/dist/esm/styles/style.css +0 -2
  51. package/dist/esm/styles/style.css.map +0 -1
  52. package/dist/esm/styles/tailwind.mjs +0 -9
  53. package/dist/esm/styles/tailwind.mjs.map +0 -1
  54. package/dist/types/ContentSelectorWrapper.d.ts +0 -11
  55. package/dist/types/ContentSelectorWrapper.d.ts.map +0 -1
  56. package/dist/types/DictionaryEditionDrawer/DictionaryEditionDrawer.d.ts +0 -25
  57. package/dist/types/DictionaryEditionDrawer/DictionaryEditionDrawer.d.ts.map +0 -1
  58. package/dist/types/DictionaryEditionDrawer/dictionaryEditionDrawer.content.d.ts +0 -10
  59. package/dist/types/DictionaryEditionDrawer/dictionaryEditionDrawer.content.d.ts.map +0 -1
  60. package/dist/types/DictionaryEditionDrawer/index.d.ts +0 -3
  61. package/dist/types/DictionaryEditionDrawer/index.d.ts.map +0 -1
  62. package/dist/types/DictionaryEditionDrawer/useDictionaryEditionDrawer.d.ts +0 -20
  63. package/dist/types/DictionaryEditionDrawer/useDictionaryEditionDrawer.d.ts.map +0 -1
  64. package/dist/types/DictionaryListDrawer/DictionaryListDrawer.d.ts +0 -3
  65. package/dist/types/DictionaryListDrawer/DictionaryListDrawer.d.ts.map +0 -1
  66. package/dist/types/DictionaryListDrawer/dictionaryListDrawerIdentifier.d.ts +0 -2
  67. package/dist/types/DictionaryListDrawer/dictionaryListDrawerIdentifier.d.ts.map +0 -1
  68. package/dist/types/DictionaryListDrawer/index.d.ts +0 -3
  69. package/dist/types/DictionaryListDrawer/index.d.ts.map +0 -1
  70. package/dist/types/IntlayerEditorProvider.d.ts +0 -21
  71. package/dist/types/IntlayerEditorProvider.d.ts.map +0 -1
  72. package/dist/types/index.d.ts +0 -4
  73. package/dist/types/index.d.ts.map +0 -1
  74. package/dist/types/styles/tailwind.d.ts +0 -4
  75. package/dist/types/styles/tailwind.d.ts.map +0 -1
@@ -0,0 +1 @@
1
+ *,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:Inter Variable;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.container{width:100%;margin-right:auto;margin-left:auto;padding-right:2rem;padding-left:2rem}@media (min-width: 1400px){.container{max-width:1400px}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.pointer-events-none{pointer-events:none}.pointer-events-auto{pointer-events:auto}.visible{visibility:visible}.invisible{visibility:hidden}.collapse{visibility:collapse}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.inset-0{top:0;right:0;bottom:0;left:0}.bottom-0{bottom:0}.left-0{left:0}.left-1\/2{left:50%}.left-3{left:.75rem}.left-5{left:1.25rem}.left-auto{left:auto}.right-0{right:0}.right-1{right:.25rem}.right-2{right:.5rem}.right-3{right:.75rem}.top-0{top:0}.top-1{top:.25rem}.top-1\/2{top:50%}.top-2{top:.5rem}.top-28{top:7rem}.top-3{top:.75rem}.top-6{top:1.5rem}.top-\[calc\(100\%\+0\.5rem\)\]{top:calc(100% + .5rem)}.z-10{z-index:10}.z-50{z-index:50}.z-\[-1\]{z-index:-1}.z-\[1000\]{z-index:1000}.z-\[100\]{z-index:100}.m-2{margin:.5rem}.m-28{margin:7rem}.m-3{margin:.75rem}.m-auto{margin:auto}.-mx-1{margin-left:-.25rem;margin-right:-.25rem}.mx-2{margin-left:.5rem;margin-right:.5rem}.my-1{margin-top:.25rem;margin-bottom:.25rem}.my-2{margin-top:.5rem;margin-bottom:.5rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.ml-0{margin-left:0}.ml-1{margin-left:.25rem}.ml-2{margin-left:.5rem}.ml-\[2vw\]{margin-left:2vw}.ml-auto{margin-left:auto}.mr-2{margin-right:.5rem}.mr-3{margin-right:.75rem}.mr-4{margin-right:1rem}.mt-1{margin-top:.25rem}.mt-12{margin-top:3rem}.mt-2{margin-top:.5rem}.mt-3{margin-top:.75rem}.mt-4{margin-top:1rem}.mt-5{margin-top:1.25rem}.block{display:block}.inline-block{display:inline-block}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.grid{display:grid}.hidden{display:none}.size-10{width:2.5rem;height:2.5rem}.size-3{width:.75rem;height:.75rem}.size-3\.5{width:.875rem;height:.875rem}.size-4{width:1rem;height:1rem}.size-5{width:1.25rem;height:1.25rem}.size-6{width:1.5rem;height:1.5rem}.size-7{width:1.75rem;height:1.75rem}.size-9{width:2.25rem;height:2.25rem}.size-full{width:100%;height:100%}.h-11{height:2.75rem}.h-7{height:1.75rem}.h-8{height:2rem}.h-9{height:2.25rem}.h-\[2px\]{height:2px}.h-\[var\(--radix-select-trigger-height\)\]{height:var(--radix-select-trigger-height)}.h-auto{height:auto}.h-full{height:100%}.h-px{height:1px}.h-screen{height:100vh}.max-h-96{max-height:24rem}.max-h-\[300px\]{max-height:300px}.max-h-\[30vh\]{max-height:30vh}.max-h-\[50vh\]{max-height:50vh}.max-h-\[70vh\]{max-height:70vh}.max-h-\[80vh\]{max-height:80vh}.max-h-\[95vh\]{max-height:95vh}.max-h-full{max-height:100%}.max-h-screen{max-height:100vh}.min-h-10{min-height:2.5rem}.min-h-11{min-height:2.75rem}.min-h-7{min-height:1.75rem}.min-h-8{min-height:2rem}.\!w-60{width:15rem!important}.w-16{width:4rem}.w-20{width:5rem}.w-3\/4{width:75%}.w-4{width:1rem}.w-40{width:10rem}.w-44{width:11rem}.w-5{width:1.25rem}.w-8{width:2rem}.w-\[95vw\]{width:95vw}.w-auto{width:auto}.w-fit{width:-moz-fit-content;width:fit-content}.w-full{width:100%}.w-screen{width:100vw}.min-w-20{min-width:5rem}.min-w-28{min-width:7rem}.min-w-\[100px\]{min-width:100px}.min-w-\[8rem\]{min-width:8rem}.min-w-\[var\(--radix-select-trigger-width\)\]{min-width:var(--radix-select-trigger-width)}.min-w-full{min-width:100%}.max-w-2xl{max-width:42rem}.max-w-3xl{max-width:48rem}.max-w-\[100vw\]{max-width:100vw}.max-w-\[400px\]{max-width:400px}.max-w-\[80\%\]{max-width:80%}.max-w-full{max-width:100%}.max-w-xl{max-width:36rem}.flex-1{flex:1 1 0%}.flex-auto{flex:1 1 auto}.shrink-0{flex-shrink:0}.table-auto{table-layout:auto}.table-fixed{table-layout:fixed}.-translate-x-1\/2{--tw-translate-x: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-y-1\/2{--tw-translate-y: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-y-2{--tw-translate-y: -.5rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-y-3{--tw-translate-y: -.75rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-y-full{--tw-translate-y: -100%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-y-0{--tw-translate-y: 0px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-y-2{--tw-translate-y: .5rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-y-3{--tw-translate-y: .75rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-y-\[150\%\]{--tw-translate-y: 150%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-y-full{--tw-translate-y: 100%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-rotate-180{--tw-rotate: -180deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.rotate-0{--tw-rotate: 0deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.rotate-90{--tw-rotate: 90deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.rotate-\[-45deg\]{--tw-rotate: -45deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.rotate-\[45deg\]{--tw-rotate: 45deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes spotlight{0%{opacity:0;transform:translate(72%,-62%) scale(.5)}to{opacity:1;transform:translate(50%,-40%) scale(1)}}.animate-spotlight{animation:spotlight 2s ease .75s 1 forwards}.cursor-default{cursor:default}.cursor-ew-resize{cursor:ew-resize}.cursor-not-allowed{cursor:not-allowed}.cursor-pointer{cursor:pointer}.cursor-text{cursor:text}.select-none{-webkit-user-select:none;-moz-user-select:none;user-select:none}.select-text{-webkit-user-select:text;-moz-user-select:text;user-select:text}.resize-none{resize:none}.resize{resize:both}.scroll-mb-8{scroll-margin-bottom:2rem}.scroll-mt-\[30vh\]{scroll-margin-top:30vh}.scroll-p-8{scroll-padding:2rem}.list-disc{list-style-type:disc}.grid-cols-\[0fr\]{grid-template-columns:0fr}.grid-cols-\[0px\]{grid-template-columns:0px}.grid-cols-\[1fr\]{grid-template-columns:1fr}.grid-cols-\[1fr_auto\]{grid-template-columns:1fr auto}.grid-rows-\[0fr\]{grid-template-rows:0fr}.grid-rows-\[1fr\]{grid-template-rows:1fr}.flex-row{flex-direction:row}.flex-col{flex-direction:column}.flex-col-reverse{flex-direction:column-reverse}.flex-wrap{flex-wrap:wrap}.items-start{align-items:flex-start}.items-center{align-items:center}.justify-start{justify-content:flex-start}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.justify-around{justify-content:space-around}.gap-0{gap:0px}.gap-0\.5{gap:.125rem}.gap-1{gap:.25rem}.gap-10{gap:2.5rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-5{gap:1.25rem}.gap-6{gap:1.5rem}.gap-8{gap:2rem}.gap-\[0\.1rem\]{gap:.1rem}.gap-x-3{-moz-column-gap:.75rem;column-gap:.75rem}.gap-y-0{row-gap:0px}.gap-y-3{row-gap:.75rem}.gap-y-6{row-gap:1.5rem}.space-x-2>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(.5rem * var(--tw-space-x-reverse));margin-left:calc(.5rem * calc(1 - var(--tw-space-x-reverse)))}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem * var(--tw-space-y-reverse))}.divide-x>:not([hidden])~:not([hidden]){--tw-divide-x-reverse: 0;border-right-width:calc(1px * var(--tw-divide-x-reverse));border-left-width:calc(1px * calc(1 - var(--tw-divide-x-reverse)))}.divide-y>:not([hidden])~:not([hidden]){--tw-divide-y-reverse: 0;border-top-width:calc(1px * calc(1 - var(--tw-divide-y-reverse)));border-bottom-width:calc(1px * var(--tw-divide-y-reverse))}.divide-y-\[1\.5px\]>:not([hidden])~:not([hidden]){--tw-divide-y-reverse: 0;border-top-width:calc(1.5px * calc(1 - var(--tw-divide-y-reverse)));border-bottom-width:calc(1.5px * var(--tw-divide-y-reverse))}.divide-dashed>:not([hidden])~:not([hidden]){border-style:dashed}.divide-text\/20>:not([hidden])~:not([hidden]){border-color:#12121233}.self-center{align-self:center}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-visible{overflow:visible}.overflow-scroll{overflow:scroll}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.overflow-x-hidden{overflow-x:hidden}.overflow-y-hidden{overflow-y:hidden}.overflow-x-visible{overflow-x:visible}.overflow-y-scroll{overflow-y:scroll}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.whitespace-nowrap{white-space:nowrap}.whitespace-pre{white-space:pre}.whitespace-pre-wrap{white-space:pre-wrap}.text-wrap{text-wrap:wrap}.text-nowrap{text-wrap:nowrap}.rounded{border-radius:.25rem}.rounded-2xl{border-radius:1rem}.rounded-3xl{border-radius:1.5rem}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:.5rem}.rounded-md{border-radius:.375rem}.rounded-none{border-radius:0}.rounded-sm{border-radius:.125rem}.rounded-xl{border-radius:.75rem}.rounded-t-3xl{border-top-left-radius:1.5rem;border-top-right-radius:1.5rem}.rounded-t-xl{border-top-left-radius:.75rem;border-top-right-radius:.75rem}.border{border-width:1px}.border-2{border-width:2px}.border-\[1\.2px\]{border-width:1.2px}.border-\[1\.5px\]{border-width:1.5px}.border-b{border-bottom-width:1px}.border-l-4{border-left-width:4px}.border-r-\[1\.5px\]{border-right-width:1.5px}.border-r-\[2px\]{border-right-width:2px}.border-t-\[1\.5px\]{border-top-width:1.5px}.border-none{border-style:none}.border-card{--tw-border-opacity: 1;border-color:rgba(231,231,231,var(--tw-border-opacity, 1))}.border-destructive{--tw-border-opacity: 1;border-color:rgba(251,125,60,var(--tw-border-opacity, 1))}.border-error{--tw-border-opacity: 1;border-color:rgba(181,24,13,var(--tw-border-opacity, 1))}.border-inherit{border-color:inherit}.border-input-border{--tw-border-opacity: 1;border-color:rgba(246,246,246,var(--tw-border-opacity, 1))}.border-neutral{--tw-border-opacity: 1;border-color:rgba(93,93,93,var(--tw-border-opacity, 1))}.border-neutral-200{--tw-border-opacity: 1;border-color:rgba(209,209,209,var(--tw-border-opacity, 1))}.border-neutral-500\/50{border-color:#6d6d6d80}.border-neutral-800{--tw-border-opacity: 1;border-color:rgba(69,69,69,var(--tw-border-opacity, 1))}.border-primary{--tw-border-opacity: 1;border-color:rgba(232,121,249,var(--tw-border-opacity, 1))}.border-secondary{--tw-border-opacity: 1;border-color:rgba(255,230,109,var(--tw-border-opacity, 1))}.border-success{--tw-border-opacity: 1;border-color:rgba(0,204,102,var(--tw-border-opacity, 1))}.border-text{--tw-border-opacity: 1;border-color:rgba(18,18,18,var(--tw-border-opacity, 1))}.border-text-dark{--tw-border-opacity: 1;border-color:rgba(255,245,237,var(--tw-border-opacity, 1))}.border-warning{--tw-border-opacity: 1;border-color:rgba(214,153,66,var(--tw-border-opacity, 1))}.border-white{--tw-border-opacity: 1;border-color:rgba(255,255,255,var(--tw-border-opacity, 1))}.bg-background\/40{background-color:#fff6}.bg-card{--tw-bg-opacity: 1;background-color:rgba(231,231,231,var(--tw-bg-opacity, 1))}.bg-card\/20{background-color:#e7e7e733}.bg-card\/40{background-color:#e7e7e766}.bg-card\/50{background-color:#e7e7e780}.bg-card\/60{background-color:#e7e7e799}.bg-card\/70{background-color:#e7e7e7b3}.bg-card\/80{background-color:#e7e7e7cc}.bg-card\/90{background-color:#e7e7e7e6}.bg-card\/95{background-color:#e7e7e7f2}.bg-destructive{--tw-bg-opacity: 1;background-color:rgba(251,125,60,var(--tw-bg-opacity, 1))}.bg-destructive\/10{background-color:#fb7d3c1a}.bg-error{--tw-bg-opacity: 1;background-color:rgba(181,24,13,var(--tw-bg-opacity, 1))}.bg-error\/10{background-color:#b5180d1a}.bg-error\/40{background-color:#b5180d66}.bg-green-500{--tw-bg-opacity: 1;background-color:rgb(34 197 94 / var(--tw-bg-opacity, 1))}.bg-inherit{background-color:inherit}.bg-input-background{--tw-bg-opacity: 1;background-color:rgba(255,255,255,var(--tw-bg-opacity, 1))}.bg-neutral{--tw-bg-opacity: 1;background-color:rgba(93,93,93,var(--tw-bg-opacity, 1))}.bg-neutral-200{--tw-bg-opacity: 1;background-color:rgba(209,209,209,var(--tw-bg-opacity, 1))}.bg-neutral-800{--tw-bg-opacity: 1;background-color:rgba(69,69,69,var(--tw-bg-opacity, 1))}.bg-neutral-800\/10{background-color:#4545451a}.bg-neutral\/10{background-color:#5d5d5d1a}.bg-orange-400{--tw-bg-opacity: 1;background-color:rgb(251 146 60 / var(--tw-bg-opacity, 1))}.bg-primary{--tw-bg-opacity: 1;background-color:rgba(232,121,249,var(--tw-bg-opacity, 1))}.bg-primary\/10{background-color:#e879f91a}.bg-red-300{--tw-bg-opacity: 1;background-color:rgb(252 165 165 / var(--tw-bg-opacity, 1))}.bg-red-400{--tw-bg-opacity: 1;background-color:rgb(248 113 113 / var(--tw-bg-opacity, 1))}.bg-red-500{--tw-bg-opacity: 1;background-color:rgb(239 68 68 / var(--tw-bg-opacity, 1))}.bg-secondary{--tw-bg-opacity: 1;background-color:rgba(255,230,109,var(--tw-bg-opacity, 1))}.bg-secondary\/10{background-color:#ffe66d1a}.bg-success{--tw-bg-opacity: 1;background-color:rgba(0,204,102,var(--tw-bg-opacity, 1))}.bg-success\/10{background-color:#00cc661a}.bg-success\/30{background-color:#00cc664d}.bg-text{--tw-bg-opacity: 1;background-color:rgba(18,18,18,var(--tw-bg-opacity, 1))}.bg-text-dark{--tw-bg-opacity: 1;background-color:rgba(255,245,237,var(--tw-bg-opacity, 1))}.bg-text\/10{background-color:#1212121a}.bg-transparent{background-color:transparent}.bg-warning\/10{background-color:#d699421a}.bg-white{--tw-bg-opacity: 1;background-color:rgba(255,255,255,var(--tw-bg-opacity, 1))}.bg-white\/10{background-color:#ffffff1a}.bg-yellow-500{--tw-bg-opacity: 1;background-color:rgb(234 179 8 / var(--tw-bg-opacity, 1))}.bg-opacity-0{--tw-bg-opacity: 0}.bg-none{background-image:none}.fill-neutral\/10{fill:#5d5d5d1a}.fill-neutral\/30{fill:#5d5d5d4d}.stroke-neutral\/10{stroke:#5d5d5d1a}.p-0{padding:0}.p-0\.5{padding:.125rem}.p-1{padding:.25rem}.p-1\.5{padding:.375rem}.p-10{padding:2.5rem}.p-2{padding:.5rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-6{padding:1.5rem}.p-\[1\.5px\]{padding:1.5px}.px-1{padding-left:.25rem;padding-right:.25rem}.px-1\.5{padding-left:.375rem;padding-right:.375rem}.px-10{padding-left:2.5rem;padding-right:2.5rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-2\.5{padding-left:.625rem;padding-right:.625rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.px-5{padding-left:1.25rem;padding-right:1.25rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.px-8{padding-left:2rem;padding-right:2rem}.py-0\.5{padding-top:.125rem;padding-bottom:.125rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-1\.5{padding-top:.375rem;padding-bottom:.375rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-4{padding-top:1rem;padding-bottom:1rem}.py-6{padding-top:1.5rem;padding-bottom:1.5rem}.pb-\[20\%\]{padding-bottom:20%}.pl-10{padding-left:2.5rem}.pl-12{padding-left:3rem}.pl-2{padding-left:.5rem}.pl-3{padding-left:.75rem}.pl-4{padding-left:1rem}.pl-5{padding-left:1.25rem}.pr-12{padding-right:3rem}.pr-6{padding-right:1.5rem}.pr-8{padding-right:2rem}.pt-10{padding-top:2.5rem}.pt-2{padding-top:.5rem}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.align-middle{vertical-align:middle}.text-2xl{font-size:1.5rem;line-height:2rem}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs{font-size:.75rem;line-height:1rem}.font-bold{font-weight:700}.font-medium{font-weight:500}.font-semibold{font-weight:600}.leading-5{line-height:1.25rem}.leading-6{line-height:1.5rem}.leading-none{line-height:1}.tracking-wide{letter-spacing:.025em}.tracking-widest{letter-spacing:.1em}.\!text-current{color:currentColor!important}.\!text-success\/70{color:#00cc66b3!important}.text-card{--tw-text-opacity: 1;color:rgba(231,231,231,var(--tw-text-opacity, 1))}.text-destructive{--tw-text-opacity: 1;color:rgba(251,125,60,var(--tw-text-opacity, 1))}.text-error{--tw-text-opacity: 1;color:rgba(181,24,13,var(--tw-text-opacity, 1))}.text-inherit{color:inherit}.text-input-text{--tw-text-opacity: 1;color:rgba(18,18,18,var(--tw-text-opacity, 1))}.text-neutral{--tw-text-opacity: 1;color:rgba(93,93,93,var(--tw-text-opacity, 1))}.text-neutral-400{--tw-text-opacity: 1;color:rgba(136,136,136,var(--tw-text-opacity, 1))}.text-neutral-800{--tw-text-opacity: 1;color:rgba(69,69,69,var(--tw-text-opacity, 1))}.text-primary{--tw-text-opacity: 1;color:rgba(232,121,249,var(--tw-text-opacity, 1))}.text-secondary{--tw-text-opacity: 1;color:rgba(255,230,109,var(--tw-text-opacity, 1))}.text-success{--tw-text-opacity: 1;color:rgba(0,204,102,var(--tw-text-opacity, 1))}.text-text{--tw-text-opacity: 1;color:rgba(18,18,18,var(--tw-text-opacity, 1))}.text-text-dark,.text-text-opposite{--tw-text-opacity: 1;color:rgba(255,245,237,var(--tw-text-opacity, 1))}.text-text\/50{color:#12121280}.text-warning{--tw-text-opacity: 1;color:rgba(214,153,66,var(--tw-text-opacity, 1))}.text-white{--tw-text-opacity: 1;color:rgba(255,255,255,var(--tw-text-opacity, 1))}.text-opacity-75{--tw-text-opacity: .75}.underline{text-decoration-line:underline}.no-underline{text-decoration-line:none}.underline-offset-4{text-underline-offset:4px}.caret-transparent{caret-color:transparent}.accent-destructive{accent-color:rgba(251,125,60,1)}.accent-error{accent-color:rgba(181,24,13,1)}.accent-neutral{accent-color:rgba(93,93,93,1)}.accent-primary{accent-color:rgba(232,121,249,1)}.accent-secondary{accent-color:rgba(255,230,109,1)}.accent-success{accent-color:rgba(0,204,102,1)}.accent-text{accent-color:rgba(18,18,18,1)}.opacity-0{opacity:0}.opacity-100{opacity:1}.opacity-50{opacity:.5}.opacity-90{opacity:.9}.shadow{--tw-shadow: 0 1px 3px 0 rgb(0 0 0 / .1), 0 1px 2px -1px rgb(0 0 0 / .1);--tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-\[0_0_10px_-15px_rgba\(0\,0\,0\,0\.3\)\]{--tw-shadow: 0 0 10px -15px rgba(0,0,0,.3);--tw-shadow-colored: 0 0 10px -15px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-lg{--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-md{--tw-shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-none{--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.outline-none{outline:2px solid transparent;outline-offset:2px}.outline{outline-style:solid}.outline-0{outline-width:0px}.outline-2{outline-width:2px}.outline-offset-4{outline-offset:4px}.outline-inherit{outline-color:inherit}.outline-transparent{outline-color:transparent}.ring-0{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.ring-2{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.ring-current{--tw-ring-color: currentColor}.ring-offset-background{--tw-ring-offset-color: rgba(255, 255, 255, 1)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.backdrop-blur{--tw-backdrop-blur: blur(8px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-\[left\,width\]{transition-property:left,width;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-opacity{transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-transform{transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.delay-100{transition-delay:.1s}.delay-200{transition-delay:.2s}.duration-200{transition-duration:.2s}.duration-300{transition-duration:.3s}.duration-500{transition-duration:.5s}.duration-700{transition-duration:.7s}.ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}#root{height:100vh;width:100vw;margin:0;padding:0}.after\:absolute:after{content:var(--tw-content);position:absolute}.after\:-left-12:after{content:var(--tw-content);left:-3rem}.after\:right-0:after{content:var(--tw-content);right:0}.after\:top-0:after{content:var(--tw-content);top:0}.after\:top-1\/2:after{content:var(--tw-content);top:50%}.after\:block:after{content:var(--tw-content);display:block}.after\:h-10:after{content:var(--tw-content);height:2.5rem}.after\:h-full:after{content:var(--tw-content);height:100%}.after\:w-2:after{content:var(--tw-content);width:.5rem}.after\:-translate-y-1\/2:after{content:var(--tw-content);--tw-translate-y: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.after\:translate-x-1\/2:after{content:var(--tw-content);--tw-translate-x: 50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.after\:scale-75:after{content:var(--tw-content);--tw-scale-x: .75;--tw-scale-y: .75;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.after\:transform:after{content:var(--tw-content);transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.after\:cursor-ew-resize:after{content:var(--tw-content);cursor:ew-resize}.after\:rounded-full:after{content:var(--tw-content);border-radius:9999px}.after\:bg-neutral-200:after{content:var(--tw-content);--tw-bg-opacity: 1;background-color:rgba(209,209,209,var(--tw-bg-opacity, 1))}.after\:to-neutral:after{content:var(--tw-content);--tw-gradient-to: rgba(93, 93, 93, 1) var(--tw-gradient-to-position)}.after\:px-6:after{content:var(--tw-content);padding-left:1.5rem;padding-right:1.5rem}.after\:text-neutral:after{content:var(--tw-content);--tw-text-opacity: 1;color:rgba(93,93,93,var(--tw-text-opacity, 1))}.after\:transition:after{content:var(--tw-content);transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.after\:transition-opacity:after{content:var(--tw-content);transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.after\:delay-100:after{content:var(--tw-content);transition-delay:.1s}.after\:duration-200:after{content:var(--tw-content);transition-duration:.2s}.after\:content-\[\"\"\]:after{--tw-content: "";content:var(--tw-content)}.after\:content-\[\'\#\'\]:after{--tw-content: "#";content:var(--tw-content)}.valid\:border-success:valid{--tw-border-opacity: 1;border-color:rgba(0,204,102,var(--tw-border-opacity, 1))}.invalid\:border-error:invalid{--tw-border-opacity: 1;border-color:rgba(181,24,13,var(--tw-border-opacity, 1))}.hover\:scale-110:hover{--tw-scale-x: 1.1;--tw-scale-y: 1.1;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover\:grid-rows-\[1fr\]:hover{grid-template-rows:1fr}.hover\:overflow-x-auto:hover{overflow-x:auto}.hover\:border-input-border-hover:hover{--tw-border-opacity: 1;border-color:rgba(231,231,231,var(--tw-border-opacity, 1))}.hover\:bg-card\/30:hover{background-color:#e7e7e74d}.hover\:bg-destructive-500:hover{--tw-bg-opacity: 1;background-color:rgba(249,90,22,var(--tw-bg-opacity, 1))}.hover\:bg-neutral-300:hover{--tw-bg-opacity: 1;background-color:rgba(176,176,176,var(--tw-bg-opacity, 1))}.hover\:bg-neutral-500:hover{--tw-bg-opacity: 1;background-color:rgba(109,109,109,var(--tw-bg-opacity, 1))}.hover\:bg-neutral-600:hover{--tw-bg-opacity: 1;background-color:rgba(93,93,93,var(--tw-bg-opacity, 1))}.hover\:bg-neutral-900:hover{--tw-bg-opacity: 1;background-color:rgba(61,61,61,var(--tw-bg-opacity, 1))}.hover\:bg-neutral\/10:hover{background-color:#5d5d5d1a}.hover\:bg-primary-500:hover{--tw-bg-opacity: 1;background-color:rgba(197,101,212,var(--tw-bg-opacity, 1))}.hover\:bg-red-500:hover{--tw-bg-opacity: 1;background-color:rgb(239 68 68 / var(--tw-bg-opacity, 1))}.hover\:bg-secondary-300:hover{--tw-bg-opacity: 1;background-color:rgba(255,216,69,var(--tw-bg-opacity, 1))}.hover\:bg-text:hover{--tw-bg-opacity: 1;background-color:rgba(18,18,18,var(--tw-bg-opacity, 1))}.hover\:bg-text\/10:hover{background-color:#1212121a}.hover\:bg-transparent:hover{background-color:transparent}.hover\:bg-opacity-0:hover{--tw-bg-opacity: 0}.hover\:bg-opacity-10:hover{--tw-bg-opacity: .1}.hover\:bg-opacity-30:hover{--tw-bg-opacity: .3}.hover\:text-text\/80:hover{color:#121212cc}.hover\:underline:hover{text-decoration-line:underline}.hover\:opacity-80:hover{opacity:.8}.hover\:outline-inherit:hover{outline-color:inherit}.hover\:delay-0:hover{transition-delay:0s}.after\:hover\:cursor-pointer:hover:after{content:var(--tw-content);cursor:pointer}.hover\:after\:opacity-80:hover:after{content:var(--tw-content);opacity:.8}.focus\:grid-rows-\[1fr\]:focus{grid-template-rows:1fr}.focus\:overflow-x-auto:focus{overflow-x:auto}.focus\:border-input-border-focus:focus{--tw-border-opacity: 1;border-color:rgba(209,209,209,var(--tw-border-opacity, 1))}.focus\:bg-neutral\/10:focus{background-color:#5d5d5d1a}.focus\:bg-text-opposite\/20:focus{background-color:#fff5ed33}.focus\:opacity-100:focus{opacity:1}.focus\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}.focus\:outline-0:focus{outline-width:0px}.focus\:ring-1:focus{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus\:ring-2:focus{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus\:ring-offset-2:focus{--tw-ring-offset-width: 2px}.focus\:\[box-shadow\:none\]:focus{box-shadow:none}.focus-visible\:outline-none:focus-visible{outline:2px solid transparent;outline-offset:2px}.active\:border-neutral-400:active{--tw-border-opacity: 1;border-color:rgba(136,136,136,var(--tw-border-opacity, 1))}.after\:active\:bg-neutral-400:active:after{content:var(--tw-content);--tw-bg-opacity: 1;background-color:rgba(136,136,136,var(--tw-bg-opacity, 1))}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:text-white\/25:disabled{color:#ffffff40}.disabled\:opacity-50:disabled{opacity:.5}.group\/dropdown:focus-within .group-focus-within\/dropdown\:visible{visibility:visible}.group\/dropdown:focus-within .group-focus-within\/dropdown\:grid-rows-\[1fr\]{grid-template-rows:1fr}.group\/dropdown:hover .group-hover\/dropdown\:visible,.group\/editable-field:hover .group-hover\/editable-field\:visible,.group\/height-smoother:hover .group-hover\/height-smoother\:visible{visibility:visible}.group\/dropdown:hover .group-hover\/dropdown\:grid-rows-\[1fr\]{grid-template-rows:1fr}.group:hover .group-hover\:opacity-0{opacity:0}.group:hover .group-hover\:opacity-100{opacity:1}.group\/height-smoother:focus .group-focus\/height-smoother\:visible{visibility:visible}.group.destructive .group-\[\.destructive\]\:text-red-300{--tw-text-opacity: 1;color:rgb(252 165 165 / var(--tw-text-opacity, 1))}.group.destructive .group-\[\.destructive\]\:hover\:border-destructive\/30:hover{border-color:#fb7d3c4d}.group.destructive .group-\[\.destructive\]\:hover\:bg-destructive:hover{--tw-bg-opacity: 1;background-color:rgba(251,125,60,var(--tw-bg-opacity, 1))}.group.destructive .group-\[\.destructive\]\:hover\:text-red-50:hover{--tw-text-opacity: 1;color:rgb(254 242 242 / var(--tw-text-opacity, 1))}.group.destructive .group-\[\.destructive\]\:focus\:ring-destructive:focus{--tw-ring-opacity: 1;--tw-ring-color: rgba(251, 125, 60, var(--tw-ring-opacity, 1))}.group.destructive .group-\[\.destructive\]\:focus\:ring-red-400:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(248 113 113 / var(--tw-ring-opacity, 1))}.group.destructive .group-\[\.destructive\]\:focus\:ring-offset-red-600:focus{--tw-ring-offset-color: #dc2626}.peer:disabled~.peer-disabled\:cursor-not-allowed{cursor:not-allowed}.peer:disabled~.peer-disabled\:opacity-70{opacity:.7}.aria-selected\:cursor-default[aria-selected=true]{cursor:default}.aria-selected\:text-black[aria-selected=true]{--tw-text-opacity: 1;color:rgba(0,0,0,var(--tw-text-opacity, 1))}.aria-selected\:text-text[aria-selected=true]{--tw-text-opacity: 1;color:rgba(18,18,18,var(--tw-text-opacity, 1))}.aria-selected\:text-text-dark[aria-selected=true]{--tw-text-opacity: 1;color:rgba(255,245,237,var(--tw-text-opacity, 1))}.aria-selected\:text-white[aria-selected=true]{--tw-text-opacity: 1;color:rgba(255,255,255,var(--tw-text-opacity, 1))}.aria-\[invalid\=true\]\:border-error[aria-invalid=true]{--tw-border-opacity: 1;border-color:rgba(181,24,13,var(--tw-border-opacity, 1))}.aria-\[current\]\:bg-opacity-5[aria-current]{--tw-bg-opacity: .05}.data-\[disabled\=true\]\:pointer-events-none[data-disabled=true],.data-\[disabled\]\:pointer-events-none[data-disabled]{pointer-events:none}.data-\[side\=bottom\]\:translate-y-1[data-side=bottom]{--tw-translate-y: .25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-\[side\=left\]\:-translate-x-1[data-side=left]{--tw-translate-x: -.25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-\[side\=right\]\:translate-x-1[data-side=right]{--tw-translate-x: .25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-\[side\=top\]\:-translate-y-1[data-side=top]{--tw-translate-y: -.25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-\[swipe\=cancel\]\:translate-x-0[data-swipe=cancel]{--tw-translate-x: 0px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-\[swipe\=end\]\:translate-x-\[var\(--radix-toast-swipe-end-x\)\][data-swipe=end]{--tw-translate-x: var(--radix-toast-swipe-end-x);transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-\[swipe\=move\]\:translate-x-\[var\(--radix-toast-swipe-move-x\)\][data-swipe=move]{--tw-translate-x: var(--radix-toast-swipe-move-x);transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-\[disabled\=true\]\:opacity-50[data-disabled=true],.data-\[disabled\]\:opacity-50[data-disabled]{opacity:.5}.data-\[swipe\=move\]\:transition-none[data-swipe=move]{transition-property:none}@media (prefers-reduced-motion: reduce){.motion-reduce\:transition-none{transition-property:none}}@media not all and (min-width: 768px){.max-md\:w-full{width:100%}.max-md\:flex-col{flex-direction:column}.max-md\:py-1{padding-top:.25rem;padding-bottom:.25rem}.max-md\:py-2{padding-top:.5rem;padding-bottom:.5rem}.max-md\:py-3{padding-top:.75rem;padding-bottom:.75rem}.max-md\:py-4{padding-top:1rem;padding-bottom:1rem}}@media (min-width: 640px){.sm\:bottom-0{bottom:0}.sm\:right-0{right:0}.sm\:top-auto{top:auto}.sm\:flex-col{flex-direction:column}}@media (min-width: 768px){.md\:sticky{position:sticky}.md\:w-1\/4{width:25%}.md\:w-2\/3{width:66.666667%}.md\:w-\[400px\]{width:400px}.md\:max-w-\[420px\]{max-width:420px}.md\:max-w-\[50\%\]{max-width:50%}.md\:gap-4{gap:1rem}.md\:gap-\[10vw\]{gap:10vw}.after\:md\:opacity-0:after{content:var(--tw-content);opacity:0}}@media (min-width: 1024px){.lg\:ml-\[10vw\]{margin-left:10vw}.lg\:gap-6{gap:1.5rem}}.dark\:divide-text-dark\/20:where([data-theme=dark],[data-theme=dark] *)>:not([hidden])~:not([hidden]){border-color:#fff5ed33}.dark\:border-none:where([data-theme=dark],[data-theme=dark] *){border-style:none}.dark\:border-card-dark:where([data-theme=dark],[data-theme=dark] *){--tw-border-opacity: 1;border-color:rgba(39,39,39,var(--tw-border-opacity, 1))}.dark\:border-destructive-dark:where([data-theme=dark],[data-theme=dark] *){--tw-border-opacity: 1;border-color:rgba(251,125,60,var(--tw-border-opacity, 1))}.dark\:border-error-dark:where([data-theme=dark],[data-theme=dark] *){--tw-border-opacity: 1;border-color:rgba(255,88,77,var(--tw-border-opacity, 1))}.dark\:border-input-border-dark:where([data-theme=dark],[data-theme=dark] *){--tw-border-opacity: 1;border-color:rgba(79,79,79,var(--tw-border-opacity, 1))}.dark\:border-neutral-950:where([data-theme=dark],[data-theme=dark] *){--tw-border-opacity: 1;border-color:rgba(48,48,48,var(--tw-border-opacity, 1))}.dark\:border-neutral-dark:where([data-theme=dark],[data-theme=dark] *){--tw-border-opacity: 1;border-color:rgba(136,136,136,var(--tw-border-opacity, 1))}.dark\:border-primary-dark:where([data-theme=dark],[data-theme=dark] *){--tw-border-opacity: 1;border-color:rgba(232,121,249,var(--tw-border-opacity, 1))}.dark\:border-secondary-dark:where([data-theme=dark],[data-theme=dark] *){--tw-border-opacity: 1;border-color:rgba(255,230,109,var(--tw-border-opacity, 1))}.dark\:border-success-dark:where([data-theme=dark],[data-theme=dark] *){--tw-border-opacity: 1;border-color:rgba(102,255,153,var(--tw-border-opacity, 1))}.dark\:border-text:where([data-theme=dark],[data-theme=dark] *){--tw-border-opacity: 1;border-color:rgba(18,18,18,var(--tw-border-opacity, 1))}.dark\:border-text-dark:where([data-theme=dark],[data-theme=dark] *){--tw-border-opacity: 1;border-color:rgba(255,245,237,var(--tw-border-opacity, 1))}.dark\:border-warning-dark:where([data-theme=dark],[data-theme=dark] *){--tw-border-opacity: 1;border-color:rgba(255,230,109,var(--tw-border-opacity, 1))}.dark\:bg-background-dark\/40:where([data-theme=dark],[data-theme=dark] *){background-color:#17171766}.dark\:bg-card-dark:where([data-theme=dark],[data-theme=dark] *){--tw-bg-opacity: 1;background-color:rgba(39,39,39,var(--tw-bg-opacity, 1))}.dark\:bg-card-dark\/20:where([data-theme=dark],[data-theme=dark] *){background-color:#27272733}.dark\:bg-card-dark\/40:where([data-theme=dark],[data-theme=dark] *){background-color:#27272766}.dark\:bg-card-dark\/50:where([data-theme=dark],[data-theme=dark] *){background-color:#27272780}.dark\:bg-card-dark\/60:where([data-theme=dark],[data-theme=dark] *){background-color:#27272799}.dark\:bg-card-dark\/70:where([data-theme=dark],[data-theme=dark] *){background-color:#272727b3}.dark\:bg-card-dark\/80:where([data-theme=dark],[data-theme=dark] *){background-color:#272727cc}.dark\:bg-card-dark\/90:where([data-theme=dark],[data-theme=dark] *){background-color:#272727e6}.dark\:bg-card-dark\/95:where([data-theme=dark],[data-theme=dark] *){background-color:#272727f2}.dark\:bg-destructive-dark:where([data-theme=dark],[data-theme=dark] *){--tw-bg-opacity: 1;background-color:rgba(251,125,60,var(--tw-bg-opacity, 1))}.dark\:bg-destructive-dark\/10:where([data-theme=dark],[data-theme=dark] *){background-color:#fb7d3c1a}.dark\:bg-error-dark:where([data-theme=dark],[data-theme=dark] *){--tw-bg-opacity: 1;background-color:rgba(255,88,77,var(--tw-bg-opacity, 1))}.dark\:bg-error-dark\/10:where([data-theme=dark],[data-theme=dark] *){background-color:#ff584d1a}.dark\:bg-error-dark\/40:where([data-theme=dark],[data-theme=dark] *){background-color:#ff584d66}.dark\:bg-input-background-dark:where([data-theme=dark],[data-theme=dark] *){--tw-bg-opacity: 1;background-color:rgba(61,61,61,var(--tw-bg-opacity, 1))}.dark\:bg-neutral-700:where([data-theme=dark],[data-theme=dark] *){--tw-bg-opacity: 1;background-color:rgba(79,79,79,var(--tw-bg-opacity, 1))}.dark\:bg-neutral-950:where([data-theme=dark],[data-theme=dark] *){--tw-bg-opacity: 1;background-color:rgba(48,48,48,var(--tw-bg-opacity, 1))}.dark\:bg-neutral-dark:where([data-theme=dark],[data-theme=dark] *){--tw-bg-opacity: 1;background-color:rgba(136,136,136,var(--tw-bg-opacity, 1))}.dark\:bg-neutral-dark\/10:where([data-theme=dark],[data-theme=dark] *){background-color:#8888881a}.dark\:bg-primary-dark:where([data-theme=dark],[data-theme=dark] *){--tw-bg-opacity: 1;background-color:rgba(232,121,249,var(--tw-bg-opacity, 1))}.dark\:bg-primary-dark\/10:where([data-theme=dark],[data-theme=dark] *){background-color:#e879f91a}.dark\:bg-secondary-dark:where([data-theme=dark],[data-theme=dark] *){--tw-bg-opacity: 1;background-color:rgba(255,230,109,var(--tw-bg-opacity, 1))}.dark\:bg-secondary-dark\/10:where([data-theme=dark],[data-theme=dark] *){background-color:#ffe66d1a}.dark\:bg-success-dark:where([data-theme=dark],[data-theme=dark] *){--tw-bg-opacity: 1;background-color:rgba(102,255,153,var(--tw-bg-opacity, 1))}.dark\:bg-success-dark\/10:where([data-theme=dark],[data-theme=dark] *){background-color:#66ff991a}.dark\:bg-success-dark\/30:where([data-theme=dark],[data-theme=dark] *){background-color:#66ff994d}.dark\:bg-text:where([data-theme=dark],[data-theme=dark] *){--tw-bg-opacity: 1;background-color:rgba(18,18,18,var(--tw-bg-opacity, 1))}.dark\:bg-text-dark:where([data-theme=dark],[data-theme=dark] *){--tw-bg-opacity: 1;background-color:rgba(255,245,237,var(--tw-bg-opacity, 1))}.dark\:bg-text-dark\/10:where([data-theme=dark],[data-theme=dark] *){background-color:#fff5ed1a}.dark\:bg-transparent:where([data-theme=dark],[data-theme=dark] *){background-color:transparent}.dark\:bg-warning-dark\/10:where([data-theme=dark],[data-theme=dark] *){background-color:#ffe66d1a}.dark\:bg-opacity-0:where([data-theme=dark],[data-theme=dark] *){--tw-bg-opacity: 0}.dark\:fill-neutral-dark\/10:where([data-theme=dark],[data-theme=dark] *){fill:#8888881a}.dark\:fill-neutral-dark\/30:where([data-theme=dark],[data-theme=dark] *){fill:#8888884d}.dark\:stroke-neutral-dark\/10:where([data-theme=dark],[data-theme=dark] *){stroke:#8888881a}.dark\:text-error-dark:where([data-theme=dark],[data-theme=dark] *){--tw-text-opacity: 1;color:rgba(255,88,77,var(--tw-text-opacity, 1))}.dark\:text-inherit:where([data-theme=dark],[data-theme=dark] *){color:inherit}.dark\:text-input-text-dark:where([data-theme=dark],[data-theme=dark] *){--tw-text-opacity: 1;color:rgba(246,246,246,var(--tw-text-opacity, 1))}.dark\:text-neutral-dark:where([data-theme=dark],[data-theme=dark] *){--tw-text-opacity: 1;color:rgba(136,136,136,var(--tw-text-opacity, 1))}.dark\:text-primary-dark:where([data-theme=dark],[data-theme=dark] *){--tw-text-opacity: 1;color:rgba(232,121,249,var(--tw-text-opacity, 1))}.dark\:text-secondary-dark:where([data-theme=dark],[data-theme=dark] *){--tw-text-opacity: 1;color:rgba(255,230,109,var(--tw-text-opacity, 1))}.dark\:text-success-dark:where([data-theme=dark],[data-theme=dark] *){--tw-text-opacity: 1;color:rgba(102,255,153,var(--tw-text-opacity, 1))}.dark\:text-text:where([data-theme=dark],[data-theme=dark] *){--tw-text-opacity: 1;color:rgba(18,18,18,var(--tw-text-opacity, 1))}.dark\:text-text-dark:where([data-theme=dark],[data-theme=dark] *){--tw-text-opacity: 1;color:rgba(255,245,237,var(--tw-text-opacity, 1))}.dark\:text-text-dark\/50:where([data-theme=dark],[data-theme=dark] *){color:#fff5ed80}.dark\:text-text-opposite-dark:where([data-theme=dark],[data-theme=dark] *){--tw-text-opacity: 1;color:rgba(28,28,28,var(--tw-text-opacity, 1))}.dark\:text-warning-dark:where([data-theme=dark],[data-theme=dark] *){--tw-text-opacity: 1;color:rgba(255,230,109,var(--tw-text-opacity, 1))}.dark\:accent-destructive-dark:where([data-theme=dark],[data-theme=dark] *){accent-color:rgba(251,125,60,1)}.dark\:accent-error-dark:where([data-theme=dark],[data-theme=dark] *){accent-color:rgba(255,88,77,1)}.dark\:accent-neutral-dark:where([data-theme=dark],[data-theme=dark] *){accent-color:rgba(136,136,136,1)}.dark\:accent-primary-dark:where([data-theme=dark],[data-theme=dark] *){accent-color:rgba(232,121,249,1)}.dark\:accent-secondary-dark:where([data-theme=dark],[data-theme=dark] *){accent-color:rgba(255,230,109,1)}.dark\:accent-success-dark:where([data-theme=dark],[data-theme=dark] *){accent-color:rgba(102,255,153,1)}.dark\:accent-text-dark:where([data-theme=dark],[data-theme=dark] *){accent-color:rgba(255,245,237,1)}.after\:dark\:bg-neutral-950:where([data-theme=dark],[data-theme=dark] *):after{content:var(--tw-content);--tw-bg-opacity: 1;background-color:rgba(48,48,48,var(--tw-bg-opacity, 1))}.dark\:after\:text-neutral-dark:where([data-theme=dark],[data-theme=dark] *):after{content:var(--tw-content);--tw-text-opacity: 1;color:rgba(136,136,136,var(--tw-text-opacity, 1))}.dark\:valid\:border-success-dark:valid:where([data-theme=dark],[data-theme=dark] *){--tw-border-opacity: 1;border-color:rgba(102,255,153,var(--tw-border-opacity, 1))}.dark\:invalid\:border-error-dark:invalid:where([data-theme=dark],[data-theme=dark] *){--tw-border-opacity: 1;border-color:rgba(255,88,77,var(--tw-border-opacity, 1))}.dark\:hover\:border-input-border-hover-dark:hover:where([data-theme=dark],[data-theme=dark] *){--tw-border-opacity: 1;border-color:rgba(93,93,93,var(--tw-border-opacity, 1))}.dark\:hover\:bg-card-dark:hover:where([data-theme=dark],[data-theme=dark] *){--tw-bg-opacity: 1;background-color:rgba(39,39,39,var(--tw-bg-opacity, 1))}.dark\:hover\:bg-card-dark\/30:hover:where([data-theme=dark],[data-theme=dark] *){background-color:#2727274d}.dark\:hover\:bg-neutral-700:hover:where([data-theme=dark],[data-theme=dark] *){--tw-bg-opacity: 1;background-color:rgba(79,79,79,var(--tw-bg-opacity, 1))}.dark\:hover\:bg-neutral-900:hover:where([data-theme=dark],[data-theme=dark] *){--tw-bg-opacity: 1;background-color:rgba(61,61,61,var(--tw-bg-opacity, 1))}.dark\:hover\:bg-neutral-dark\/10:hover:where([data-theme=dark],[data-theme=dark] *){background-color:#8888881a}.dark\:hover\:bg-red-300:hover:where([data-theme=dark],[data-theme=dark] *){--tw-bg-opacity: 1;background-color:rgb(252 165 165 / var(--tw-bg-opacity, 1))}.dark\:hover\:bg-text-opposite\/10:hover:where([data-theme=dark],[data-theme=dark] *){background-color:#fff5ed1a}.hover\:dark\:bg-destructive-200:where([data-theme=dark],[data-theme=dark] *):hover{--tw-bg-opacity: 1;background-color:rgba(254,206,170,var(--tw-bg-opacity, 1))}.hover\:dark\:bg-neutral-400:where([data-theme=dark],[data-theme=dark] *):hover{--tw-bg-opacity: 1;background-color:rgba(136,136,136,var(--tw-bg-opacity, 1))}.hover\:dark\:bg-neutral-dark\/10:where([data-theme=dark],[data-theme=dark] *):hover{background-color:#8888881a}.hover\:dark\:bg-primary-300:where([data-theme=dark],[data-theme=dark] *):hover{--tw-bg-opacity: 1;background-color:rgba(241,171,252,var(--tw-bg-opacity, 1))}.hover\:dark\:bg-secondary-100:where([data-theme=dark],[data-theme=dark] *):hover{--tw-bg-opacity: 1;background-color:rgba(255,246,194,var(--tw-bg-opacity, 1))}.hover\:dark\:bg-transparent:where([data-theme=dark],[data-theme=dark] *):hover{background-color:transparent}.dark\:hover\:bg-opacity-0:hover:where([data-theme=dark],[data-theme=dark] *){--tw-bg-opacity: 0}.dark\:hover\:bg-opacity-10:hover:where([data-theme=dark],[data-theme=dark] *){--tw-bg-opacity: .1}.dark\:hover\:text-text-dark\/80:hover:where([data-theme=dark],[data-theme=dark] *){color:#fff5edcc}.dark\:focus\:border-input-border-focus:focus:where([data-theme=dark],[data-theme=dark] *){--tw-border-opacity: 1;border-color:rgba(209,209,209,var(--tw-border-opacity, 1))}.dark\:focus\:bg-neutral-dark\/10:focus:where([data-theme=dark],[data-theme=dark] *){background-color:#8888881a}.dark\:focus\:bg-text-opposite\/20:focus:where([data-theme=dark],[data-theme=dark] *){background-color:#fff5ed33}.dark\:active\:border-neutral-600:active:where([data-theme=dark],[data-theme=dark] *){--tw-border-opacity: 1;border-color:rgba(93,93,93,var(--tw-border-opacity, 1))}.dark\:after\:active\:bg-neutral-600:active:where([data-theme=dark],[data-theme=dark] *):after{content:var(--tw-content);--tw-bg-opacity: 1;background-color:rgba(93,93,93,var(--tw-bg-opacity, 1))}.dark\:aria-selected\:text-text[aria-selected=true]:where([data-theme=dark],[data-theme=dark] *){--tw-text-opacity: 1;color:rgba(18,18,18,var(--tw-text-opacity, 1))}.dark\:aria-selected\:text-text-dark[aria-selected=true]:where([data-theme=dark],[data-theme=dark] *){--tw-text-opacity: 1;color:rgba(255,245,237,var(--tw-text-opacity, 1))}.dark\:aria-\[invalid\=true\]\:border-error-dark[aria-invalid=true]:where([data-theme=dark],[data-theme=dark] *){--tw-border-opacity: 1;border-color:rgba(255,88,77,var(--tw-border-opacity, 1))}.\[\&\+div\]\:text-xs+div{font-size:.75rem;line-height:1rem}.\[\&\:has\(\.section\:hover\)\]\:bg-transparent:has(.section:hover){background-color:transparent}.\[\&\>span\]\:line-clamp-1>span{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:1}.\[\&_\[cmdk-group-heading\]\]\:px-2 [cmdk-group-heading]{padding-left:.5rem;padding-right:.5rem}.\[\&_\[cmdk-group-heading\]\]\:py-1\.5 [cmdk-group-heading]{padding-top:.375rem;padding-bottom:.375rem}.\[\&_\[cmdk-group-heading\]\]\:text-xs [cmdk-group-heading]{font-size:.75rem;line-height:1rem}.\[\&_\[cmdk-group-heading\]\]\:font-medium [cmdk-group-heading]{font-weight:500}.\[\&_\[cmdk-group\]\:not\(\[hidden\]\)_\~\[cmdk-group\]\]\:pt-0 [cmdk-group]:not([hidden])~[cmdk-group]{padding-top:0}.\[\&_\[cmdk-group\]\]\:px-2 [cmdk-group]{padding-left:.5rem;padding-right:.5rem}.\[\&_\[cmdk-input-wrapper\]_svg\]\:size-5 [cmdk-input-wrapper] svg{width:1.25rem;height:1.25rem}.\[\&_\[cmdk-input\]\]\:h-12 [cmdk-input]{height:3rem}.\[\&_\[cmdk-item\]\]\:px-2 [cmdk-item]{padding-left:.5rem;padding-right:.5rem}.\[\&_\[cmdk-item\]_svg\]\:size-5 [cmdk-item] svg{width:1.25rem;height:1.25rem}
@@ -0,0 +1,14 @@
1
+ <!doctype html>
2
+ <html lang="en">
3
+ <head>
4
+ <meta charset="UTF-8" />
5
+ <link rel="icon" type="image/svg+xml" href="/vite.svg" />
6
+ <meta name="viewport" content="width=device-width, initial-scale=1.0" />
7
+ <title>Intlayer Editor</title>
8
+ <script type="module" crossorigin src="/assets/index-B3l_2n5S.js"></script>
9
+ <link rel="stylesheet" crossorigin href="/assets/index-Dfay14Wd.css">
10
+ </head>
11
+ <body>
12
+ <div id="root"></div>
13
+ </body>
14
+ </html>
package/package.json CHANGED
@@ -1,16 +1,15 @@
1
1
  {
2
2
  "name": "intlayer-editor",
3
- "version": "4.0.2",
3
+ "version": "4.0.3",
4
4
  "private": false,
5
- "description": "IntLayer Editor is a tool that allow you to edit your IntLayer declaration files using a graphical interface.",
5
+ "description": "Integrate the Intlayer visual editor into your Intlayer projects, enabling CMS-like content management with multilingual support.",
6
6
  "keywords": [
7
7
  "intlayer",
8
8
  "application",
9
9
  "editor",
10
+ "CMS",
10
11
  "typescript",
11
- "javascript",
12
- "json",
13
- "file"
12
+ "javascript"
14
13
  ],
15
14
  "homepage": "https://intlayer.org",
16
15
  "bugs": {
@@ -32,26 +31,18 @@
32
31
  "url": "https://github.com/aymericzip"
33
32
  }
34
33
  ],
34
+ "type": "module",
35
35
  "exports": {
36
36
  ".": {
37
- "types": "./dist/types/index.d.ts",
38
- "import": "./dist/esm/index.mjs",
39
- "require": "./dist/cjs/index.cjs"
40
- },
41
- "./tailwind": {
42
- "types": "./dist/types/styles/tailwind.d.ts",
43
- "import": "./dist/esm/styles/tailwind.mjs",
44
- "require": "./dist/cjs/styles/tailwind.cjs"
45
- },
46
- "./css": {
47
- "import": "./dist/esm/styles/style.css",
48
- "require": "./dist/cjs/styles/style.css"
37
+ "types": "./index.d.ts",
38
+ "import": "./index.mjs",
39
+ "require": "./index.cjs"
49
40
  },
50
41
  "./package.json": "./package.json"
51
42
  },
52
- "main": "dist/cjs/index.cjs",
53
- "module": "dist/esm/index.mjs",
54
- "types": "dist/types/index.d.ts",
43
+ "main": "./index.cjs",
44
+ "module": "./.next/standalone/esm/index.mjs",
45
+ "types": "./.next/standalone/types/index.d.ts",
55
46
  "typesVersions": {
56
47
  "*": {
57
48
  "package.json": [
@@ -59,6 +50,9 @@
59
50
  ]
60
51
  }
61
52
  },
53
+ "bin": {
54
+ "intlayer-editor": ".next/standalone/server.js"
55
+ },
62
56
  "files": [
63
57
  "./dist",
64
58
  "./bin",
@@ -68,40 +62,41 @@
68
62
  "lucide-react": "^0.471.1",
69
63
  "react": "^18.3.1",
70
64
  "react-dom": "^18.3.1",
71
- "zustand": "^5.0.1",
72
- "@intlayer/config": "4.0.2",
73
- "@intlayer/core": "4.0.2",
74
- "@intlayer/design-system": "4.0.2",
75
- "intlayer": "4.0.2"
65
+ "react-router-dom": "^7.1.1",
66
+ "@intlayer/core": "4.0.3",
67
+ "@intlayer/config": "4.0.3",
68
+ "@intlayer/design-system": "4.0.3",
69
+ "react-intlayer": "^4.0.3",
70
+ "@intlayer/api": "4.0.3",
71
+ "@intlayer/editor-react": "4.0.3",
72
+ "vite-intlayer": "^4.0.3"
76
73
  },
77
74
  "devDependencies": {
78
- "@changesets/changelog-github": "0.5.0",
79
- "@changesets/cli": "2.27.11",
80
- "@types/node": "^22.10.6",
81
- "@types/react": "^18.3.1",
82
- "@types/react-dom": "^18.3.1",
83
- "@typescript-eslint/parser": "^8.20.0",
84
- "concurrently": "^9.1.2",
85
- "eslint": "^9.18.0",
86
- "prettier": "^3.4.2",
87
- "rimraf": "^6.0.1",
88
- "tsc-alias": "^1.8.10",
89
- "tsup": "^8.3.5",
90
- "typescript": "^5.7.3",
91
- "@utils/ts-config": "1.0.4",
92
- "@utils/ts-config-types": "1.0.4",
93
- "@utils/eslint-config": "1.0.4",
94
- "@utils/tsup-config": "1.0.4"
75
+ "@types/react": "^18.3.18",
76
+ "@types/react-dom": "^18.3.5",
77
+ "@vitejs/plugin-react": "^4.3.4",
78
+ "autoprefixer": "^10.4.20",
79
+ "eslint": "^9.17.0",
80
+ "eslint-plugin-react-hooks": "^5.0.0",
81
+ "eslint-plugin-react-refresh": "^0.4.16",
82
+ "globals": "^15.14.0",
83
+ "postcss": "^8.5.1",
84
+ "tailwindcss": "^3.4.17",
85
+ "typescript": "~5.6.2",
86
+ "typescript-eslint": "^8.18.2",
87
+ "vite": "^6.0.5"
95
88
  },
96
89
  "peerDependencies": {
97
90
  "react": ">=16.0.0",
98
91
  "react-dom": ">=16.0.0",
99
- "zustand": ">=4.0.0",
100
- "@intlayer/config": "4.0.2",
101
- "@intlayer/design-system": "4.0.2",
102
- "@intlayer/core": "4.0.2",
103
- "react-intlayer": "^4.0.2",
104
- "intlayer": "4.0.2"
92
+ "react-router-dom": ">=6.0.0",
93
+ "@intlayer/config": "4.0.3",
94
+ "@intlayer/core": "4.0.3",
95
+ "@intlayer/editor-react": "4.0.3",
96
+ "intlayer": "4.0.3",
97
+ "react-intlayer": "^4.0.3",
98
+ "vite-intlayer": "^4.0.3",
99
+ "@intlayer/design-system": "4.0.3"
105
100
  },
106
101
  "engines": {
107
102
  "node": ">=14.18"
@@ -110,15 +105,9 @@
110
105
  "url": "https://github.com/aymericzip/intlayer/issues"
111
106
  },
112
107
  "scripts": {
113
- "build": "pnpm build:package & pnpm build:types",
114
- "build:package": "tsup",
115
- "build:types": "tsc --project ./tsconfig.types.json && tsc-alias --project ./tsconfig.types.json",
116
- "clean": "rimraf ./dist",
117
- "dev": "concurrently --prefix none \"tsup --watch\" \"tsc --project ./tsconfig.types.json --watch\" \"tsc-alias --project ./tsconfig.types.json --watch\"",
118
- "lint": "eslint . --cache",
119
- "lint:fix": "eslint . --cache --fix",
120
- "prettier": "prettier . --check",
121
- "prettier:fix": "prettier . --write",
122
- "typecheck": "tsup --project ./tsconfig.json --noEmit"
108
+ "build": "vite build",
109
+ "dev": "vite",
110
+ "lint": "eslint .",
111
+ "preview": "vite preview"
123
112
  }
124
113
  }
@@ -1,83 +0,0 @@
1
- "use strict";
2
- "use client";
3
- var __defProp = Object.defineProperty;
4
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
- var __getOwnPropNames = Object.getOwnPropertyNames;
6
- var __hasOwnProp = Object.prototype.hasOwnProperty;
7
- var __export = (target, all) => {
8
- for (var name in all)
9
- __defProp(target, name, { get: all[name], enumerable: true });
10
- };
11
- var __copyProps = (to, from, except, desc) => {
12
- if (from && typeof from === "object" || typeof from === "function") {
13
- for (let key of __getOwnPropNames(from))
14
- if (!__hasOwnProp.call(to, key) && key !== except)
15
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
16
- }
17
- return to;
18
- };
19
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
20
- var ContentSelectorWrapper_exports = {};
21
- __export(ContentSelectorWrapper_exports, {
22
- ContentSelectorWrapper: () => ContentSelectorWrapper
23
- });
24
- module.exports = __toCommonJS(ContentSelectorWrapper_exports);
25
- var import_jsx_runtime = require("react/jsx-runtime");
26
- var import_core = require("@intlayer/core");
27
- var import_design_system = require("@intlayer/design-system");
28
- var import_react = require("react");
29
- var import_IntlayerEditorProvider = require('./IntlayerEditorProvider.cjs');
30
- var import_useDictionaryEditionDrawer = require('./DictionaryEditionDrawer/useDictionaryEditionDrawer.cjs');
31
- var import_shallow = require("zustand/shallow");
32
- const ContentSelectorWrapper = ({
33
- children,
34
- dictionaryKey,
35
- dictionaryPath,
36
- keyPath
37
- }) => {
38
- const { open, getEditedContentValue, focusedContent, isOpen } = (0, import_useDictionaryEditionDrawer.useDictionaryEditionDrawer)(dictionaryKey);
39
- const { editedContent } = (0, import_design_system.useEditedContentStore)(
40
- (0, import_shallow.useShallow)((s) => ({
41
- editedContent: s.editedContent
42
- }))
43
- );
44
- const editedValue = (0, import_react.useMemo)(
45
- () => getEditedContentValue(dictionaryKey, keyPath),
46
- [
47
- editedContent[dictionaryKey],
48
- dictionaryKey,
49
- keyPath,
50
- getEditedContentValue
51
- ]
52
- );
53
- const { isEditorEnabled } = (0, import_IntlayerEditorProvider.useIntlayerEditorContext)();
54
- const [displayedChildren, setDisplayedChildren] = (0, import_react.useState)(children);
55
- const handleSelect = (0, import_react.useCallback)(
56
- () => open({
57
- dictionaryKey,
58
- dictionaryPath,
59
- keyPath
60
- }),
61
- [dictionaryKey, dictionaryPath, keyPath, open]
62
- );
63
- const isSelected = (0, import_react.useMemo)(
64
- () => (isOpen && (focusedContent?.keyPath?.length ?? 0) > 0 && (0, import_core.isSameKeyPath)(focusedContent?.keyPath ?? [], keyPath)) ?? false,
65
- [focusedContent, isOpen, keyPath]
66
- );
67
- (0, import_react.useEffect)(() => {
68
- if (isEditorEnabled && editedValue && typeof editedValue === "string") {
69
- setDisplayedChildren(editedValue);
70
- } else {
71
- setDisplayedChildren(children);
72
- }
73
- }, [editedValue, isEditorEnabled, focusedContent, children]);
74
- if (!isEditorEnabled) {
75
- return children;
76
- }
77
- return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_design_system.ContentSelector, { onSelect: handleSelect, isSelecting: isSelected, children: displayedChildren });
78
- };
79
- // Annotate the CommonJS export names for ESM import in node:
80
- 0 && (module.exports = {
81
- ContentSelectorWrapper
82
- });
83
- //# sourceMappingURL=ContentSelectorWrapper.cjs.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/ContentSelectorWrapper.tsx"],"sourcesContent":["'use client';\n\nimport { isSameKeyPath, type KeyPath } from '@intlayer/core';\nimport {\n ContentSelector,\n useEditedContentStore,\n} from '@intlayer/design-system';\nimport {\n useCallback,\n useEffect,\n useState,\n useMemo,\n type FC,\n type ReactNode,\n} from 'react';\nimport { useIntlayerEditorContext } from './IntlayerEditorProvider';\nimport { useDictionaryEditionDrawer } from './DictionaryEditionDrawer/useDictionaryEditionDrawer';\nimport { useShallow } from 'zustand/shallow';\n\ntype ContentSelectorWrapperProps = {\n children: ReactNode;\n dictionaryKey: string;\n dictionaryPath: string;\n keyPath: KeyPath[];\n};\n\nexport const ContentSelectorWrapper: FC<ContentSelectorWrapperProps> = ({\n children,\n dictionaryKey,\n dictionaryPath,\n keyPath,\n}) => {\n const { open, getEditedContentValue, focusedContent, isOpen } =\n useDictionaryEditionDrawer(dictionaryKey);\n const { editedContent } = useEditedContentStore(\n useShallow((s) => ({\n editedContent: s.editedContent,\n }))\n );\n const editedValue = useMemo(\n () => getEditedContentValue(dictionaryKey, keyPath),\n [\n editedContent[dictionaryKey],\n dictionaryKey,\n keyPath,\n getEditedContentValue,\n ]\n );\n const { isEditorEnabled } = useIntlayerEditorContext();\n const [displayedChildren, setDisplayedChildren] =\n useState<ReactNode>(children);\n\n const handleSelect = useCallback(\n () =>\n open({\n dictionaryKey,\n dictionaryPath,\n keyPath,\n }),\n [dictionaryKey, dictionaryPath, keyPath, open]\n );\n\n const isSelected = useMemo(\n () =>\n (isOpen &&\n (focusedContent?.keyPath?.length ?? 0) > 0 &&\n isSameKeyPath(focusedContent?.keyPath ?? [], keyPath)) ??\n false,\n [focusedContent, isOpen, keyPath]\n );\n\n useEffect(() => {\n // Use useEffect to avoid 'Text content does not match server-rendered HTML' error\n if (isEditorEnabled && editedValue && typeof editedValue === 'string') {\n setDisplayedChildren(editedValue);\n } else {\n setDisplayedChildren(children);\n }\n }, [editedValue, isEditorEnabled, focusedContent, children]);\n\n if (!isEditorEnabled) {\n return children;\n }\n\n return (\n <ContentSelector onSelect={handleSelect} isSelecting={isSelected}>\n {displayedChildren}\n </ContentSelector>\n );\n};\n"],"mappings":";;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAqFI;AAnFJ,kBAA4C;AAC5C,2BAGO;AACP,mBAOO;AACP,oCAAyC;AACzC,wCAA2C;AAC3C,qBAA2B;AASpB,MAAM,yBAA0D,CAAC;AAAA,EACtE;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,MAAM;AACJ,QAAM,EAAE,MAAM,uBAAuB,gBAAgB,OAAO,QAC1D,8DAA2B,aAAa;AAC1C,QAAM,EAAE,cAAc,QAAI;AAAA,QACxB,2BAAW,CAAC,OAAO;AAAA,MACjB,eAAe,EAAE;AAAA,IACnB,EAAE;AAAA,EACJ;AACA,QAAM,kBAAc;AAAA,IAClB,MAAM,sBAAsB,eAAe,OAAO;AAAA,IAClD;AAAA,MACE,cAAc,aAAa;AAAA,MAC3B;AAAA,MACA;AAAA,MACA;AAAA,IACF;AAAA,EACF;AACA,QAAM,EAAE,gBAAgB,QAAI,wDAAyB;AACrD,QAAM,CAAC,mBAAmB,oBAAoB,QAC5C,uBAAoB,QAAQ;AAE9B,QAAM,mBAAe;AAAA,IACnB,MACE,KAAK;AAAA,MACH;AAAA,MACA;AAAA,MACA;AAAA,IACF,CAAC;AAAA,IACH,CAAC,eAAe,gBAAgB,SAAS,IAAI;AAAA,EAC/C;AAEA,QAAM,iBAAa;AAAA,IACjB,OACG,WACE,gBAAgB,SAAS,UAAU,KAAK,SACzC,2BAAc,gBAAgB,WAAW,CAAC,GAAG,OAAO,MACtD;AAAA,IACF,CAAC,gBAAgB,QAAQ,OAAO;AAAA,EAClC;AAEA,8BAAU,MAAM;AAEd,QAAI,mBAAmB,eAAe,OAAO,gBAAgB,UAAU;AACrE,2BAAqB,WAAW;AAAA,IAClC,OAAO;AACL,2BAAqB,QAAQ;AAAA,IAC/B;AAAA,EACF,GAAG,CAAC,aAAa,iBAAiB,gBAAgB,QAAQ,CAAC;AAE3D,MAAI,CAAC,iBAAiB;AACpB,WAAO;AAAA,EACT;AAEA,SACE,4CAAC,wCAAgB,UAAU,cAAc,aAAa,YACnD,6BACH;AAEJ;","names":[]}
@@ -1,166 +0,0 @@
1
- "use strict";
2
- "use client";
3
- var __create = Object.create;
4
- var __defProp = Object.defineProperty;
5
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
6
- var __getOwnPropNames = Object.getOwnPropertyNames;
7
- var __getProtoOf = Object.getPrototypeOf;
8
- var __hasOwnProp = Object.prototype.hasOwnProperty;
9
- var __export = (target, all) => {
10
- for (var name in all)
11
- __defProp(target, name, { get: all[name], enumerable: true });
12
- };
13
- var __copyProps = (to, from, except, desc) => {
14
- if (from && typeof from === "object" || typeof from === "function") {
15
- for (let key of __getOwnPropNames(from))
16
- if (!__hasOwnProp.call(to, key) && key !== except)
17
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
18
- }
19
- return to;
20
- };
21
- var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
22
- // If the importer is in node compatibility mode or this is not an ESM
23
- // file that has been converted to a CommonJS file using a Babel-
24
- // compatible transform (i.e. "__esModule" has not been set), then set
25
- // "default" to the CommonJS "module.exports" for node compatibility.
26
- isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
27
- mod
28
- ));
29
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
30
- var DictionaryEditionDrawer_exports = {};
31
- __export(DictionaryEditionDrawer_exports, {
32
- DictionaryEditionDrawer: () => DictionaryEditionDrawer,
33
- DictionaryEditionDrawerContent: () => DictionaryEditionDrawerContent,
34
- DictionaryEditionDrawerController: () => DictionaryEditionDrawerController
35
- });
36
- module.exports = __toCommonJS(DictionaryEditionDrawer_exports);
37
- var import_jsx_runtime = require("react/jsx-runtime");
38
- var import_design_system = require("@intlayer/design-system");
39
- var import_hooks = require("@intlayer/design-system/hooks");
40
- var import_react = require("react");
41
- var import_react_intlayer = require("react-intlayer");
42
- var import_shallow = require("zustand/shallow");
43
- var import_dictionaryListDrawerIdentifier = require('../DictionaryListDrawer/dictionaryListDrawerIdentifier.cjs');
44
- var import_dictionaryEditionDrawer = __toESM(require('./dictionaryEditionDrawer.content.cjs'));
45
- var import_useDictionaryEditionDrawer = require('./useDictionaryEditionDrawer.cjs');
46
- const DictionaryEditionDrawerContent = ({ locale, localeList, identifier, handleOnBack, isDarkMode }) => {
47
- const { modalTitle } = (0, import_react_intlayer.useDictionary)(import_dictionaryEditionDrawer.default);
48
- const [keyPathEditionModal, setKeyPathEditionModal] = (0, import_react.useState)(null);
49
- const { setDictionariesRecord, focusedContent } = (0, import_useDictionaryEditionDrawer.useDictionaryEditionDrawer)(identifier);
50
- const { all: dictionaries } = (0, import_hooks.useGetAllDictionaries)();
51
- const onClickDictionaryList = (0, import_react.useCallback)(() => {
52
- setKeyPathEditionModal(null);
53
- handleOnBack();
54
- }, [handleOnBack]);
55
- (0, import_react.useEffect)(() => {
56
- if (dictionaries) {
57
- setDictionariesRecord(dictionaries);
58
- }
59
- }, [setDictionariesRecord, dictionaries]);
60
- const dictionaryKey = focusedContent?.dictionaryKey;
61
- if (!dictionaryKey) return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_jsx_runtime.Fragment, { children: "No dictionary focused" });
62
- const dictionary = dictionaries[dictionaryKey];
63
- return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_jsx_runtime.Fragment, { children: [
64
- /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
65
- import_design_system.Modal,
66
- {
67
- isOpen: keyPathEditionModal !== null,
68
- onClose: () => setKeyPathEditionModal(null),
69
- hasCloseButton: true,
70
- title: modalTitle,
71
- size: "xl",
72
- transparency: "lg",
73
- children: dictionary && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
74
- import_design_system.DictionaryFieldEditor,
75
- {
76
- dictionary,
77
- onClickDictionaryList,
78
- isDarkMode,
79
- availableLocales: localeList
80
- }
81
- )
82
- }
83
- ),
84
- /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
85
- import_design_system.DictionaryEditor,
86
- {
87
- dictionary,
88
- locale,
89
- onClickEdit: setKeyPathEditionModal
90
- }
91
- )
92
- ] });
93
- };
94
- const DictionaryEditionDrawer = ({
95
- locale,
96
- localeList,
97
- setLocale,
98
- dictionaryKey,
99
- isDarkMode
100
- }) => {
101
- const { backButtonText } = (0, import_react_intlayer.useDictionary)(import_dictionaryEditionDrawer.default);
102
- const id = (0, import_useDictionaryEditionDrawer.getDrawerIdentifier)(dictionaryKey);
103
- const { focusedContent, close } = (0, import_useDictionaryEditionDrawer.useDictionaryEditionDrawer)(dictionaryKey);
104
- const { openDictionaryListDrawer } = (0, import_design_system.useRightDrawerStore)((s) => ({
105
- openDictionaryListDrawer: () => s.open(import_dictionaryListDrawerIdentifier.dictionaryListDrawerIdentifier)
106
- }));
107
- const handleOnBack = () => {
108
- close();
109
- openDictionaryListDrawer();
110
- };
111
- return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
112
- import_design_system.RightDrawer,
113
- {
114
- title: dictionaryKey,
115
- identifier: id,
116
- header: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
117
- import_design_system.LocaleSwitcher,
118
- {
119
- setLocale,
120
- locale,
121
- localeList
122
- }
123
- ),
124
- backButton: {
125
- onBack: handleOnBack,
126
- text: backButtonText
127
- },
128
- children: focusedContent && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
129
- DictionaryEditionDrawerContent,
130
- {
131
- focusedContent,
132
- locale,
133
- identifier: id,
134
- handleOnBack,
135
- isDarkMode,
136
- localeList
137
- }
138
- )
139
- }
140
- );
141
- };
142
- const DictionaryEditionDrawerController = ({ locale, localeList, setLocale }) => {
143
- const focusedContent = (0, import_design_system.useEditionPanelStore)(
144
- (0, import_shallow.useShallow)((s) => s.focusedContent)
145
- );
146
- const dictionaryKey = focusedContent?.dictionaryKey;
147
- if (!dictionaryKey) {
148
- return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_jsx_runtime.Fragment, {});
149
- }
150
- return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
151
- DictionaryEditionDrawer,
152
- {
153
- locale,
154
- localeList,
155
- setLocale,
156
- dictionaryKey
157
- }
158
- );
159
- };
160
- // Annotate the CommonJS export names for ESM import in node:
161
- 0 && (module.exports = {
162
- DictionaryEditionDrawer,
163
- DictionaryEditionDrawerContent,
164
- DictionaryEditionDrawerController
165
- });
166
- //# sourceMappingURL=DictionaryEditionDrawer.cjs.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../src/DictionaryEditionDrawer/DictionaryEditionDrawer.tsx"],"sourcesContent":["'use client';\n\nimport type { Locales } from '@intlayer/config/client';\nimport type { Dictionary, KeyPath } from '@intlayer/core';\nimport {\n RightDrawer,\n DictionaryEditor,\n LocaleSwitcher,\n Modal,\n useEditionPanelStore,\n DictionaryFieldEditor,\n useRightDrawerStore,\n} from '@intlayer/design-system';\nimport { useGetAllDictionaries } from '@intlayer/design-system/hooks';\nimport { useCallback, useEffect, useState, type FC } from 'react';\nimport { t, useDictionary } from 'react-intlayer';\nimport { useShallow } from 'zustand/shallow';\nimport { dictionaryListDrawerIdentifier } from '../DictionaryListDrawer/dictionaryListDrawerIdentifier';\nimport dictionaryEditionDrawerContent from './dictionaryEditionDrawer.content';\nimport {\n type FileContent as FileContentWithDictionaryPath,\n useDictionaryEditionDrawer,\n getDrawerIdentifier,\n} from './useDictionaryEditionDrawer';\n\ntype DictionaryEditionDrawerContentProps = {\n focusedContent: FileContentWithDictionaryPath;\n locale: Locales;\n localeList: Locales[];\n identifier: string;\n handleOnBack: () => void;\n isDarkMode?: boolean;\n};\n\nexport const DictionaryEditionDrawerContent: FC<\n DictionaryEditionDrawerContentProps\n> = ({ locale, localeList, identifier, handleOnBack, isDarkMode }) => {\n const { modalTitle } = useDictionary(dictionaryEditionDrawerContent);\n const [keyPathEditionModal, setKeyPathEditionModal] = useState<\n KeyPath[] | null\n >(null);\n const { setDictionariesRecord, focusedContent } =\n useDictionaryEditionDrawer(identifier);\n const { all: dictionaries } = useGetAllDictionaries();\n\n const onClickDictionaryList = useCallback(() => {\n setKeyPathEditionModal(null);\n handleOnBack();\n }, [handleOnBack]);\n\n useEffect(() => {\n if (dictionaries) {\n setDictionariesRecord(dictionaries);\n }\n }, [setDictionariesRecord, dictionaries]);\n\n const dictionaryKey = focusedContent?.dictionaryKey;\n\n if (!dictionaryKey) return <>No dictionary focused</>;\n\n const dictionary: Dictionary = dictionaries[dictionaryKey];\n\n return (\n <>\n <Modal\n isOpen={keyPathEditionModal !== null}\n onClose={() => setKeyPathEditionModal(null)}\n hasCloseButton\n title={modalTitle}\n size=\"xl\"\n transparency=\"lg\"\n >\n {dictionary && (\n <DictionaryFieldEditor\n dictionary={dictionary}\n onClickDictionaryList={onClickDictionaryList}\n isDarkMode={isDarkMode}\n availableLocales={localeList}\n />\n )}\n </Modal>\n <DictionaryEditor\n dictionary={dictionary}\n locale={locale}\n onClickEdit={setKeyPathEditionModal}\n />\n </>\n );\n};\n\ntype DictionaryEditionDrawerProps = DictionaryEditionDrawerControllerProps & {\n dictionaryKey: string;\n isDarkMode?: boolean;\n};\n\nexport const DictionaryEditionDrawer: FC<DictionaryEditionDrawerProps> = ({\n locale,\n localeList,\n setLocale,\n dictionaryKey,\n isDarkMode,\n}) => {\n const { backButtonText } = useDictionary(dictionaryEditionDrawerContent);\n const id = getDrawerIdentifier(dictionaryKey);\n\n const { focusedContent, close } = useDictionaryEditionDrawer(dictionaryKey);\n const { openDictionaryListDrawer } = useRightDrawerStore((s) => ({\n openDictionaryListDrawer: () => s.open(dictionaryListDrawerIdentifier),\n }));\n\n const handleOnBack = () => {\n close();\n openDictionaryListDrawer();\n };\n\n return (\n <RightDrawer\n title={dictionaryKey}\n identifier={id}\n header={\n <LocaleSwitcher\n setLocale={setLocale}\n locale={locale}\n localeList={localeList}\n />\n }\n backButton={{\n onBack: handleOnBack,\n text: backButtonText,\n }}\n >\n {focusedContent && (\n <DictionaryEditionDrawerContent\n focusedContent={focusedContent}\n locale={locale}\n identifier={id}\n handleOnBack={handleOnBack}\n isDarkMode={isDarkMode}\n localeList={localeList}\n />\n )}\n </RightDrawer>\n );\n};\n\ntype DictionaryEditionDrawerControllerProps = {\n locale: Locales;\n localeList: Locales[];\n setLocale: (locale: Locales) => void;\n};\n\nexport const DictionaryEditionDrawerController: FC<\n DictionaryEditionDrawerControllerProps\n> = ({ locale, localeList, setLocale }) => {\n const focusedContent = useEditionPanelStore(\n useShallow((s) => s.focusedContent)\n );\n const dictionaryKey: string | undefined = focusedContent?.dictionaryKey;\n\n if (!dictionaryKey) {\n return <></>;\n }\n\n return (\n <DictionaryEditionDrawer\n locale={locale}\n localeList={localeList}\n setLocale={setLocale}\n dictionaryKey={dictionaryKey}\n />\n );\n};\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AA0D6B;AAtD7B,2BAQO;AACP,mBAAsC;AACtC,mBAA0D;AAC1D,4BAAiC;AACjC,qBAA2B;AAC3B,4CAA+C;AAC/C,qCAA2C;AAC3C,wCAIO;AAWA,MAAM,iCAET,CAAC,EAAE,QAAQ,YAAY,YAAY,cAAc,WAAW,MAAM;AACpE,QAAM,EAAE,WAAW,QAAI,qCAAc,+BAAAA,OAA8B;AACnE,QAAM,CAAC,qBAAqB,sBAAsB,QAAI,uBAEpD,IAAI;AACN,QAAM,EAAE,uBAAuB,eAAe,QAC5C,8DAA2B,UAAU;AACvC,QAAM,EAAE,KAAK,aAAa,QAAI,oCAAsB;AAEpD,QAAM,4BAAwB,0BAAY,MAAM;AAC9C,2BAAuB,IAAI;AAC3B,iBAAa;AAAA,EACf,GAAG,CAAC,YAAY,CAAC;AAEjB,8BAAU,MAAM;AACd,QAAI,cAAc;AAChB,4BAAsB,YAAY;AAAA,IACpC;AAAA,EACF,GAAG,CAAC,uBAAuB,YAAY,CAAC;AAExC,QAAM,gBAAgB,gBAAgB;AAEtC,MAAI,CAAC,cAAe,QAAO,2EAAE,mCAAqB;AAElD,QAAM,aAAyB,aAAa,aAAa;AAEzD,SACE,4EACE;AAAA;AAAA,MAAC;AAAA;AAAA,QACC,QAAQ,wBAAwB;AAAA,QAChC,SAAS,MAAM,uBAAuB,IAAI;AAAA,QAC1C,gBAAc;AAAA,QACd,OAAO;AAAA,QACP,MAAK;AAAA,QACL,cAAa;AAAA,QAEZ,wBACC;AAAA,UAAC;AAAA;AAAA,YACC;AAAA,YACA;AAAA,YACA;AAAA,YACA,kBAAkB;AAAA;AAAA,QACpB;AAAA;AAAA,IAEJ;AAAA,IACA;AAAA,MAAC;AAAA;AAAA,QACC;AAAA,QACA;AAAA,QACA,aAAa;AAAA;AAAA,IACf;AAAA,KACF;AAEJ;AAOO,MAAM,0BAA4D,CAAC;AAAA,EACxE;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,MAAM;AACJ,QAAM,EAAE,eAAe,QAAI,qCAAc,+BAAAA,OAA8B;AACvE,QAAM,SAAK,uDAAoB,aAAa;AAE5C,QAAM,EAAE,gBAAgB,MAAM,QAAI,8DAA2B,aAAa;AAC1E,QAAM,EAAE,yBAAyB,QAAI,0CAAoB,CAAC,OAAO;AAAA,IAC/D,0BAA0B,MAAM,EAAE,KAAK,oEAA8B;AAAA,EACvE,EAAE;AAEF,QAAM,eAAe,MAAM;AACzB,UAAM;AACN,6BAAyB;AAAA,EAC3B;AAEA,SACE;AAAA,IAAC;AAAA;AAAA,MACC,OAAO;AAAA,MACP,YAAY;AAAA,MACZ,QACE;AAAA,QAAC;AAAA;AAAA,UACC;AAAA,UACA;AAAA,UACA;AAAA;AAAA,MACF;AAAA,MAEF,YAAY;AAAA,QACV,QAAQ;AAAA,QACR,MAAM;AAAA,MACR;AAAA,MAEC,4BACC;AAAA,QAAC;AAAA;AAAA,UACC;AAAA,UACA;AAAA,UACA,YAAY;AAAA,UACZ;AAAA,UACA;AAAA,UACA;AAAA;AAAA,MACF;AAAA;AAAA,EAEJ;AAEJ;AAQO,MAAM,oCAET,CAAC,EAAE,QAAQ,YAAY,UAAU,MAAM;AACzC,QAAM,qBAAiB;AAAA,QACrB,2BAAW,CAAC,MAAM,EAAE,cAAc;AAAA,EACpC;AACA,QAAM,gBAAoC,gBAAgB;AAE1D,MAAI,CAAC,eAAe;AAClB,WAAO,2EAAE;AAAA,EACX;AAEA,SACE;AAAA,IAAC;AAAA;AAAA,MACC;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA;AAAA,EACF;AAEJ;","names":["dictionaryEditionDrawerContent"]}