@geowiki/map 0.16.9-dev.3 → 0.16.9-dev.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.js +3189 -25
- package/dist/index.mjs +3199 -23
- package/dist/styles.css +1 -1
- package/package.json +7 -6
package/dist/index.js
CHANGED
|
@@ -613,13 +613,13 @@ var prepareRGBImage = (array, width, height) => {
|
|
|
613
613
|
var data = imageData == null ? void 0 : imageData.data;
|
|
614
614
|
let index = 0;
|
|
615
615
|
for (var i = 0; i < array.length; ) {
|
|
616
|
-
const
|
|
616
|
+
const r2 = array[i++];
|
|
617
617
|
const g = array[i++];
|
|
618
618
|
const b = array[i++];
|
|
619
|
-
data[index++] =
|
|
619
|
+
data[index++] = r2;
|
|
620
620
|
data[index++] = g;
|
|
621
621
|
data[index++] = b;
|
|
622
|
-
data[index++] =
|
|
622
|
+
data[index++] = r2 === 0 && g === 0 && b === 0 ? 0 : 255;
|
|
623
623
|
}
|
|
624
624
|
ctx == null ? void 0 : ctx.putImageData(imageData, 0, 0);
|
|
625
625
|
return canvas;
|
|
@@ -5141,7 +5141,7 @@ var GoogleSheetsPopup = ({
|
|
|
5141
5141
|
return Object.keys(value).length === 0;
|
|
5142
5142
|
return false;
|
|
5143
5143
|
};
|
|
5144
|
-
const
|
|
5144
|
+
const isUrl2 = (value) => {
|
|
5145
5145
|
if (typeof value !== "string")
|
|
5146
5146
|
return false;
|
|
5147
5147
|
const trimmedValue = value.trim();
|
|
@@ -5167,7 +5167,7 @@ var GoogleSheetsPopup = ({
|
|
|
5167
5167
|
return key.replace(/([A-Z])/g, " $1").replace(/^./, (str) => str.toUpperCase()).replace(/_/g, " ").replace(/\s+/g, " ").trim();
|
|
5168
5168
|
};
|
|
5169
5169
|
const formatFieldValue = (value) => {
|
|
5170
|
-
if (
|
|
5170
|
+
if (isUrl2(value)) {
|
|
5171
5171
|
const url = value.startsWith("http") ? value : `https://${value}`;
|
|
5172
5172
|
const displayText = value.length > 50 ? `${value.substring(0, 47)}...` : value;
|
|
5173
5173
|
return /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(
|
|
@@ -5185,11 +5185,11 @@ var GoogleSheetsPopup = ({
|
|
|
5185
5185
|
return String(value);
|
|
5186
5186
|
};
|
|
5187
5187
|
const urlFields = filteredProperties.filter(([_key, value]) => {
|
|
5188
|
-
const isUrlValue =
|
|
5188
|
+
const isUrlValue = isUrl2(value);
|
|
5189
5189
|
return isUrlValue;
|
|
5190
5190
|
});
|
|
5191
5191
|
const otherFields = filteredProperties.filter(([_key, value]) => {
|
|
5192
|
-
const isUrlValue =
|
|
5192
|
+
const isUrlValue = isUrl2(value);
|
|
5193
5193
|
return !isUrlValue;
|
|
5194
5194
|
});
|
|
5195
5195
|
return /* @__PURE__ */ (0, import_jsx_runtime15.jsxs)("div", { className: "bg-white rounded-lg shadow-lg p-6 w-full max-w-md overflow-hidden", children: [
|
|
@@ -10160,8 +10160,8 @@ var Questions = (props) => {
|
|
|
10160
10160
|
if (Array.isArray(y.answers)) {
|
|
10161
10161
|
y.answers = y.answers.filter((answer) => {
|
|
10162
10162
|
const value = answer.text;
|
|
10163
|
-
const
|
|
10164
|
-
if (
|
|
10163
|
+
const isInteger2 = parseInt(value);
|
|
10164
|
+
if (isInteger2)
|
|
10165
10165
|
return Object.values(taskChangeDetail).includes(Number(value));
|
|
10166
10166
|
return true;
|
|
10167
10167
|
});
|
|
@@ -10760,12 +10760,12 @@ var BingLayer = class extends L13.TileLayer {
|
|
|
10760
10760
|
(_a = document.getElementsByTagName("head")[0]) == null ? void 0 : _a.appendChild(script);
|
|
10761
10761
|
}
|
|
10762
10762
|
initMetadata(meta) {
|
|
10763
|
-
const
|
|
10764
|
-
this.options.subdomains =
|
|
10765
|
-
this._url =
|
|
10766
|
-
if (
|
|
10767
|
-
for (let i = 0; i <
|
|
10768
|
-
const p =
|
|
10763
|
+
const r2 = meta.resourceSets[0].resources[0];
|
|
10764
|
+
this.options.subdomains = r2.imageUrlSubdomains;
|
|
10765
|
+
this._url = r2.imageUrl;
|
|
10766
|
+
if (r2.imageryProviders) {
|
|
10767
|
+
for (let i = 0; i < r2.imageryProviders.length; i++) {
|
|
10768
|
+
const p = r2.imageryProviders[i];
|
|
10769
10769
|
for (let j = 0; j < p.coverageAreas.length; j++) {
|
|
10770
10770
|
const c = p.coverageAreas[j];
|
|
10771
10771
|
const bounds = new L13.LatLngBounds(
|
|
@@ -12308,7 +12308,7 @@ var ControlItem = (0, import_react35.memo)(({ control, position }) => {
|
|
|
12308
12308
|
] });
|
|
12309
12309
|
}
|
|
12310
12310
|
const positionClass = POSITION_CLASSES2[position];
|
|
12311
|
-
const
|
|
12311
|
+
const getDefaultDirection2 = () => {
|
|
12312
12312
|
switch (position) {
|
|
12313
12313
|
case "topleft":
|
|
12314
12314
|
case "bottomleft":
|
|
@@ -12320,7 +12320,7 @@ var ControlItem = (0, import_react35.memo)(({ control, position }) => {
|
|
|
12320
12320
|
return "right";
|
|
12321
12321
|
}
|
|
12322
12322
|
};
|
|
12323
|
-
const popoverDirection = control.popoverDirection ||
|
|
12323
|
+
const popoverDirection = control.popoverDirection || getDefaultDirection2();
|
|
12324
12324
|
return /* @__PURE__ */ (0, import_jsx_runtime50.jsxs)(import_jsx_runtime50.Fragment, { children: [
|
|
12325
12325
|
/* @__PURE__ */ (0, import_jsx_runtime50.jsx)("div", { className: "hidden lg:block", children: /* @__PURE__ */ (0, import_jsx_runtime50.jsxs)(Popover5.Root, { open: control.isOpen, children: [
|
|
12326
12326
|
/* @__PURE__ */ (0, import_jsx_runtime50.jsxs)(import_ui24.Tooltip, { delayDuration: 100, children: [
|
|
@@ -16676,16 +16676,3072 @@ var WaybackTimelineMap = (props) => {
|
|
|
16676
16676
|
};
|
|
16677
16677
|
|
|
16678
16678
|
// src/Components/Map/MapLibre.tsx
|
|
16679
|
-
var
|
|
16680
|
-
var
|
|
16679
|
+
var import_react66 = require("react");
|
|
16680
|
+
var import_react67 = require("react");
|
|
16681
16681
|
var import_maplibre_gl = __toESM(require("maplibre-gl"));
|
|
16682
16682
|
var import_MapPinIcon4 = __toESM(require("@heroicons/react/24/solid/MapPinIcon"));
|
|
16683
16683
|
var import_server8 = require("react-dom/server");
|
|
16684
|
+
|
|
16685
|
+
// src/Components/Generic/Map/LayerSwitcher.tsx
|
|
16686
|
+
var import_react62 = require("react");
|
|
16687
|
+
var import_ui44 = require("@geowiki/ui");
|
|
16688
|
+
|
|
16689
|
+
// src/Components/Generic/Map/store/mapLayers.ts
|
|
16690
|
+
var import_zustand9 = require("zustand");
|
|
16691
|
+
var import_sortable3 = require("@dnd-kit/sortable");
|
|
16692
|
+
var useMapLayerStore2 = (0, import_zustand9.create)()((set, get) => ({
|
|
16693
|
+
layers: [],
|
|
16694
|
+
add: (layer) => {
|
|
16695
|
+
var _a;
|
|
16696
|
+
if (layer.id === "geotrees-external-layer" || layer.title === "GEO-TREES Sites" || ((_a = layer.layerInfo) == null ? void 0 : _a.source) === "GeoTrees External API") {
|
|
16697
|
+
const existingGeoTreesLayer = get().layers.find(
|
|
16698
|
+
(existingLayer) => {
|
|
16699
|
+
var _a2;
|
|
16700
|
+
return existingLayer.id === "geotrees-external-layer" || existingLayer.title === "GEO-TREES Sites" || ((_a2 = existingLayer.layerInfo) == null ? void 0 : _a2.source) === "GeoTrees External API";
|
|
16701
|
+
}
|
|
16702
|
+
);
|
|
16703
|
+
if (existingGeoTreesLayer) {
|
|
16704
|
+
console.warn(
|
|
16705
|
+
"GeoTrees External layer already exists in map store, preventing duplicate addition"
|
|
16706
|
+
);
|
|
16707
|
+
return;
|
|
16708
|
+
}
|
|
16709
|
+
}
|
|
16710
|
+
set((state) => {
|
|
16711
|
+
const layersWithName = state.layers.filter((l) => l == null ? void 0 : l.layerName);
|
|
16712
|
+
const layersWithoutName = state.layers.filter((l) => !(l == null ? void 0 : l.layerName));
|
|
16713
|
+
if (layer.layerName) {
|
|
16714
|
+
const insertIndex = layersWithName.findIndex(
|
|
16715
|
+
(l) => {
|
|
16716
|
+
var _a2, _b, _c, _d;
|
|
16717
|
+
return ((_b = (_a2 = l.order) != null ? _a2 : l.index) != null ? _b : 0) > ((_d = (_c = layer.order) != null ? _c : layer.index) != null ? _d : 0);
|
|
16718
|
+
}
|
|
16719
|
+
);
|
|
16720
|
+
const updatedLayersWithName = insertIndex === -1 ? [...layersWithName, layer] : [
|
|
16721
|
+
...layersWithName.slice(0, insertIndex),
|
|
16722
|
+
layer,
|
|
16723
|
+
...layersWithName.slice(insertIndex)
|
|
16724
|
+
];
|
|
16725
|
+
updatedLayersWithName.forEach((l, idx) => {
|
|
16726
|
+
l.index = updatedLayersWithName.length + layersWithoutName.length - idx;
|
|
16727
|
+
});
|
|
16728
|
+
layersWithoutName.forEach((l, idx) => {
|
|
16729
|
+
l.index = layersWithoutName.length - idx;
|
|
16730
|
+
});
|
|
16731
|
+
const newState = {
|
|
16732
|
+
layers: [...updatedLayersWithName, ...layersWithoutName]
|
|
16733
|
+
};
|
|
16734
|
+
return newState;
|
|
16735
|
+
} else {
|
|
16736
|
+
const insertIndex = layersWithoutName.findIndex(
|
|
16737
|
+
(l) => {
|
|
16738
|
+
var _a2, _b, _c, _d;
|
|
16739
|
+
return ((_b = (_a2 = l.order) != null ? _a2 : l.index) != null ? _b : 0) > ((_d = (_c = layer.order) != null ? _c : layer.index) != null ? _d : 0);
|
|
16740
|
+
}
|
|
16741
|
+
);
|
|
16742
|
+
const updatedLayersWithoutName = insertIndex === -1 ? [...layersWithoutName, layer] : [
|
|
16743
|
+
...layersWithoutName.slice(0, insertIndex),
|
|
16744
|
+
layer,
|
|
16745
|
+
...layersWithoutName.slice(insertIndex)
|
|
16746
|
+
];
|
|
16747
|
+
updatedLayersWithoutName.forEach((l, idx) => {
|
|
16748
|
+
l.index = updatedLayersWithoutName.length - idx;
|
|
16749
|
+
});
|
|
16750
|
+
layersWithName.forEach((l, idx) => {
|
|
16751
|
+
l.index = layersWithName.length + updatedLayersWithoutName.length - idx;
|
|
16752
|
+
});
|
|
16753
|
+
const newState = {
|
|
16754
|
+
layers: [...layersWithName, ...updatedLayersWithoutName]
|
|
16755
|
+
};
|
|
16756
|
+
console.log(
|
|
16757
|
+
"MapLayerStore: New state with unnamed layer:",
|
|
16758
|
+
newState.layers.length
|
|
16759
|
+
);
|
|
16760
|
+
return newState;
|
|
16761
|
+
}
|
|
16762
|
+
});
|
|
16763
|
+
},
|
|
16764
|
+
remove: (layer) => set((state) => {
|
|
16765
|
+
return { layers: state.layers.filter((l) => l.id !== layer.id) };
|
|
16766
|
+
}),
|
|
16767
|
+
updateOpacity: (id, opacity) => set((state) => {
|
|
16768
|
+
var index = state.layers.findIndex((l) => l.id === id);
|
|
16769
|
+
if (index > -1) {
|
|
16770
|
+
state.layers[index].opacity = opacity;
|
|
16771
|
+
}
|
|
16772
|
+
return { layers: state.layers };
|
|
16773
|
+
}),
|
|
16774
|
+
updateLayer: (id, updates) => set((state) => {
|
|
16775
|
+
var index = state.layers.findIndex((l) => l.id === id);
|
|
16776
|
+
if (index > -1) {
|
|
16777
|
+
state.layers[index] = __spreadValues(__spreadValues({}, state.layers[index]), updates);
|
|
16778
|
+
}
|
|
16779
|
+
return { layers: state.layers };
|
|
16780
|
+
}),
|
|
16781
|
+
reorderLayers: (oldIndex, newIndex) => set((state) => {
|
|
16782
|
+
const newLayers = [...state.layers];
|
|
16783
|
+
const layersWithoutName = newLayers.filter((layer) => !(layer == null ? void 0 : layer.layerName));
|
|
16784
|
+
const layersToReorder = newLayers.filter((layer) => layer == null ? void 0 : layer.layerName);
|
|
16785
|
+
const reorderedLayers = (0, import_sortable3.arrayMove)(layersToReorder, oldIndex, newIndex);
|
|
16786
|
+
reorderedLayers.forEach((layer, idx) => {
|
|
16787
|
+
layer.index = reorderedLayers.length + layersWithoutName.length - idx;
|
|
16788
|
+
});
|
|
16789
|
+
layersWithoutName.forEach((layer, idx) => {
|
|
16790
|
+
layer.index = layersWithoutName.length - idx;
|
|
16791
|
+
});
|
|
16792
|
+
const resultLayers = [...reorderedLayers, ...layersWithoutName];
|
|
16793
|
+
return { layers: resultLayers };
|
|
16794
|
+
}),
|
|
16795
|
+
refresh: () => set((state) => {
|
|
16796
|
+
return { layers: state.layers };
|
|
16797
|
+
}),
|
|
16798
|
+
selectedLayer: "",
|
|
16799
|
+
setSelectedLayer: (selectedLayer) => set({ selectedLayer }),
|
|
16800
|
+
layerOpacity: 0,
|
|
16801
|
+
setLayerOpacity: (layerOpacity) => set({ layerOpacity })
|
|
16802
|
+
}));
|
|
16803
|
+
|
|
16804
|
+
// src/Components/Generic/Map/LayerSwitcher.tsx
|
|
16805
|
+
var import_react63 = require("@headlessui/react");
|
|
16806
|
+
var import_react64 = require("react");
|
|
16807
|
+
var import_outline2 = require("@heroicons/react/24/outline");
|
|
16808
|
+
var import_react65 = require("@headlessui/react");
|
|
16809
|
+
var import_lucide_react9 = require("lucide-react");
|
|
16810
|
+
var import_uuid5 = require("uuid");
|
|
16684
16811
|
var import_jsx_runtime79 = require("react/jsx-runtime");
|
|
16685
|
-
var
|
|
16812
|
+
var LayerInfoIcon2 = (0, import_react62.memo)(({ onClick }) => /* @__PURE__ */ (0, import_jsx_runtime79.jsxs)(
|
|
16813
|
+
"svg",
|
|
16814
|
+
{
|
|
16815
|
+
width: "20",
|
|
16816
|
+
height: "20",
|
|
16817
|
+
viewBox: "0 0 20 20",
|
|
16818
|
+
fill: "none",
|
|
16819
|
+
xmlns: "http://www.w3.org/2000/svg",
|
|
16820
|
+
className: "fill-tag-light-purple cursor-pointer",
|
|
16821
|
+
onClick,
|
|
16822
|
+
role: "button",
|
|
16823
|
+
"aria-label": "Show layer information",
|
|
16824
|
+
children: [
|
|
16825
|
+
/* @__PURE__ */ (0, import_jsx_runtime79.jsx)("circle", { cx: "10", cy: "10", r: "10", fill: "text-tag-light-purple" }),
|
|
16826
|
+
/* @__PURE__ */ (0, import_jsx_runtime79.jsx)(
|
|
16827
|
+
"path",
|
|
16828
|
+
{
|
|
16829
|
+
d: "M9.24963 14V7.592H10.7496V14H9.24963ZM10.0056 6.536C9.72563 6.536 9.49363 6.448 9.30963 6.272C9.13363 6.096 9.04563 5.884 9.04563 5.636C9.04563 5.38 9.13363 5.168 9.30963 5C9.49363 4.824 9.72563 4.736 10.0056 4.736C10.2856 4.736 10.5136 4.82 10.6896 4.988C10.8736 5.148 10.9656 5.352 10.9656 5.6C10.9656 5.864 10.8776 6.088 10.7016 6.272C10.5256 6.448 10.2936 6.536 10.0056 6.536Z",
|
|
16830
|
+
fill: "white"
|
|
16831
|
+
}
|
|
16832
|
+
)
|
|
16833
|
+
]
|
|
16834
|
+
}
|
|
16835
|
+
));
|
|
16836
|
+
LayerInfoIcon2.displayName = "LayerInfoIcon";
|
|
16837
|
+
var LayerItemInfo2 = (0, import_react62.memo)(({ layer, open, setOpen }) => {
|
|
16838
|
+
var _a, _b, _c, _d, _e, _f, _g, _h, _i, _j, _k, _l, _m, _n, _o;
|
|
16839
|
+
const isCustomLayer = "isCustom" in layer && layer.isCustom;
|
|
16840
|
+
const mapDetails = [
|
|
16841
|
+
{
|
|
16842
|
+
label: "Source",
|
|
16843
|
+
value: ((_b = (_a = layer.layerInfo) == null ? void 0 : _a.sourceLink) == null ? void 0 : _b.href) ? /* @__PURE__ */ (0, import_jsx_runtime79.jsx)(
|
|
16844
|
+
import_ui44.SimpleLink,
|
|
16845
|
+
{
|
|
16846
|
+
link: {
|
|
16847
|
+
title: (_c = layer.layerInfo.sourceLink.name) != null ? _c : "",
|
|
16848
|
+
href: (_d = layer.layerInfo.sourceLink.href) != null ? _d : "#",
|
|
16849
|
+
isNewTab: !((_e = layer.layerInfo.sourceLink.href) == null ? void 0 : _e.startsWith("/"))
|
|
16850
|
+
}
|
|
16851
|
+
}
|
|
16852
|
+
) : ((_f = layer.layerInfo) == null ? void 0 : _f.source) || (isCustomLayer ? "Custom Layer" : void 0)
|
|
16853
|
+
},
|
|
16854
|
+
{
|
|
16855
|
+
label: "Geographic Coverage",
|
|
16856
|
+
value: (_g = layer.layerInfo) == null ? void 0 : _g.geographicCoverage
|
|
16857
|
+
},
|
|
16858
|
+
{
|
|
16859
|
+
label: "Citation",
|
|
16860
|
+
value: ((_i = (_h = layer.layerInfo) == null ? void 0 : _h.citationLink) == null ? void 0 : _i.href) ? /* @__PURE__ */ (0, import_jsx_runtime79.jsx)(
|
|
16861
|
+
import_ui44.SimpleLink,
|
|
16862
|
+
{
|
|
16863
|
+
link: {
|
|
16864
|
+
title: (_j = layer.layerInfo.citationLink.name) != null ? _j : "",
|
|
16865
|
+
href: (_k = layer.layerInfo.citationLink.href) != null ? _k : "#",
|
|
16866
|
+
isNewTab: !((_l = layer.layerInfo.citationLink.href) == null ? void 0 : _l.startsWith("/"))
|
|
16867
|
+
}
|
|
16868
|
+
}
|
|
16869
|
+
) : (_m = layer.layerInfo) == null ? void 0 : _m.citation
|
|
16870
|
+
},
|
|
16871
|
+
...isCustomLayer ? [
|
|
16872
|
+
{ label: "Layer Type", value: layer.type },
|
|
16873
|
+
{ label: "Custom Layer", value: "Yes" }
|
|
16874
|
+
] : []
|
|
16875
|
+
];
|
|
16876
|
+
return /* @__PURE__ */ (0, import_jsx_runtime79.jsx)(import_react63.Transition.Root, { show: open, as: import_react64.Fragment, "data-component": "ResourceView", children: /* @__PURE__ */ (0, import_jsx_runtime79.jsxs)(import_react63.Dialog, { as: "div", className: "relative z-20", onClose: setOpen, children: [
|
|
16877
|
+
/* @__PURE__ */ (0, import_jsx_runtime79.jsx)(
|
|
16878
|
+
import_react63.Transition.Child,
|
|
16879
|
+
{
|
|
16880
|
+
as: import_react64.Fragment,
|
|
16881
|
+
enter: "ease-out duration-300",
|
|
16882
|
+
enterFrom: "opacity-0",
|
|
16883
|
+
enterTo: "opacity-100",
|
|
16884
|
+
leave: "ease-in duration-200",
|
|
16885
|
+
leaveFrom: "opacity-100",
|
|
16886
|
+
leaveTo: "opacity-0",
|
|
16887
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime79.jsx)("div", { className: "fixed inset-0 bg-gray-500 bg-opacity-75 transition-opacity" })
|
|
16888
|
+
}
|
|
16889
|
+
),
|
|
16890
|
+
/* @__PURE__ */ (0, import_jsx_runtime79.jsx)("div", { className: "fixed z-10 inset-0 overflow-y-auto text-black", children: /* @__PURE__ */ (0, import_jsx_runtime79.jsx)("div", { className: "flex items-end sm:items-center justify-center min-h-full text-center lg:p-4", children: /* @__PURE__ */ (0, import_jsx_runtime79.jsx)(
|
|
16891
|
+
import_react63.Transition.Child,
|
|
16892
|
+
{
|
|
16893
|
+
as: import_react64.Fragment,
|
|
16894
|
+
enter: "ease-out duration-300",
|
|
16895
|
+
enterFrom: "opacity-0 translate-y-4 sm:translate-y-0 sm:scale-95",
|
|
16896
|
+
enterTo: "opacity-100 translate-y-0 sm:scale-100",
|
|
16897
|
+
leave: "ease-in duration-200",
|
|
16898
|
+
leaveFrom: "opacity-100 translate-y-0 sm:scale-100",
|
|
16899
|
+
leaveTo: "opacity-0 translate-y-4 sm:translate-y-0 sm:scale-95",
|
|
16900
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime79.jsxs)(import_react63.Dialog.Panel, { className: "w-screen relative bg-white rounded-t-lg px-4 pt-5 pb-4 text-left overflow-hidden shadow-xl transform transition-all lg:rounded-lg sm:my-8 sm:w-[740px] sm:p-10", children: [
|
|
16901
|
+
/* @__PURE__ */ (0, import_jsx_runtime79.jsx)("div", { className: "absolute top-0 right-0 pt-3 pr-3 lg:pt-10 lg:pr-10", children: /* @__PURE__ */ (0, import_jsx_runtime79.jsxs)(
|
|
16902
|
+
"button",
|
|
16903
|
+
{
|
|
16904
|
+
type: "button",
|
|
16905
|
+
className: "rounded-md focus:outline-none focus:ring-2 focus:ring-offset-2",
|
|
16906
|
+
onClick: () => setOpen(false),
|
|
16907
|
+
children: [
|
|
16908
|
+
/* @__PURE__ */ (0, import_jsx_runtime79.jsx)("span", { className: "sr-only", children: "Close" }),
|
|
16909
|
+
/* @__PURE__ */ (0, import_jsx_runtime79.jsx)(import_outline2.XMarkIcon, { className: "h-6 w-6", "aria-hidden": "true" })
|
|
16910
|
+
]
|
|
16911
|
+
}
|
|
16912
|
+
) }),
|
|
16913
|
+
/* @__PURE__ */ (0, import_jsx_runtime79.jsxs)("div", { className: "flex flex-col items-start justify-center", children: [
|
|
16914
|
+
/* @__PURE__ */ (0, import_jsx_runtime79.jsx)("div", { className: "text-lg font-semibold lg:text-[2rem] lg:font-light leading-[120%]", children: layer.title }),
|
|
16915
|
+
/* @__PURE__ */ (0, import_jsx_runtime79.jsxs)("div", { className: "w-full pt-6 space-y-4 text-grey leading-[130%]", children: [
|
|
16916
|
+
((_n = layer.layerInfo) == null ? void 0 : _n.overview) && /* @__PURE__ */ (0, import_jsx_runtime79.jsxs)(import_jsx_runtime79.Fragment, { children: [
|
|
16917
|
+
/* @__PURE__ */ (0, import_jsx_runtime79.jsx)("div", { className: "uppercase text-sm", children: "Overview" }),
|
|
16918
|
+
/* @__PURE__ */ (0, import_jsx_runtime79.jsx)("div", { className: "text-sm lg:text-base font-normal", children: (_o = layer.layerInfo) == null ? void 0 : _o.overview })
|
|
16919
|
+
] }),
|
|
16920
|
+
mapDetails.map(
|
|
16921
|
+
(detail) => detail.value && /* @__PURE__ */ (0, import_jsx_runtime79.jsx)(
|
|
16922
|
+
import_ui44.KeyInfoItem,
|
|
16923
|
+
{
|
|
16924
|
+
label: detail.label,
|
|
16925
|
+
value: detail.value
|
|
16926
|
+
},
|
|
16927
|
+
(0, import_uuid5.v4)()
|
|
16928
|
+
)
|
|
16929
|
+
)
|
|
16930
|
+
] })
|
|
16931
|
+
] })
|
|
16932
|
+
] })
|
|
16933
|
+
}
|
|
16934
|
+
) }) })
|
|
16935
|
+
] }) });
|
|
16936
|
+
});
|
|
16937
|
+
LayerItemInfo2.displayName = "LayerItemInfo";
|
|
16938
|
+
var LayerItem2 = (0, import_react62.memo)(
|
|
16939
|
+
({
|
|
16940
|
+
layer,
|
|
16941
|
+
isActive,
|
|
16942
|
+
onToggle,
|
|
16943
|
+
openHoverCardId,
|
|
16944
|
+
onInfoClick
|
|
16945
|
+
}) => {
|
|
16946
|
+
var _a;
|
|
16947
|
+
const [open, setOpen] = (0, import_react62.useState)(false);
|
|
16948
|
+
return /* @__PURE__ */ (0, import_jsx_runtime79.jsxs)("li", { className: "bg-white rounded-xl p-4 lg:w-[310px] lg:p-0", children: [
|
|
16949
|
+
/* @__PURE__ */ (0, import_jsx_runtime79.jsxs)("div", { className: "flex flex-row justify-between items-center", children: [
|
|
16950
|
+
/* @__PURE__ */ (0, import_jsx_runtime79.jsxs)("div", { className: "flex flex-row justify-start items-center space-x-2", children: [
|
|
16951
|
+
/* @__PURE__ */ (0, import_jsx_runtime79.jsx)("div", { className: "hidden lg:block", children: /* @__PURE__ */ (0, import_jsx_runtime79.jsx)(
|
|
16952
|
+
import_ui44.Switch,
|
|
16953
|
+
{
|
|
16954
|
+
checked: isActive,
|
|
16955
|
+
onCheckedChange: onToggle,
|
|
16956
|
+
"aria-label": `Toggle ${layer.title} layer`
|
|
16957
|
+
}
|
|
16958
|
+
) }),
|
|
16959
|
+
/* @__PURE__ */ (0, import_jsx_runtime79.jsx)("div", { className: " text-base font-medium leading-[120%] break-words max-w-[210px] lg:max-w-none md:max-w-none", children: layer.title }),
|
|
16960
|
+
/* @__PURE__ */ (0, import_jsx_runtime79.jsx)("div", { className: "block lg:hidden", children: /* @__PURE__ */ (0, import_jsx_runtime79.jsx)(LayerInfoIcon2, { onClick: () => setOpen(true) }) })
|
|
16961
|
+
] }),
|
|
16962
|
+
/* @__PURE__ */ (0, import_jsx_runtime79.jsx)("div", { className: "block lg:hidden", children: /* @__PURE__ */ (0, import_jsx_runtime79.jsx)(
|
|
16963
|
+
import_ui44.Switch,
|
|
16964
|
+
{
|
|
16965
|
+
checked: isActive,
|
|
16966
|
+
onCheckedChange: onToggle,
|
|
16967
|
+
"aria-label": `Toggle ${layer.title} layer`
|
|
16968
|
+
}
|
|
16969
|
+
) }),
|
|
16970
|
+
/* @__PURE__ */ (0, import_jsx_runtime79.jsx)("div", { className: "hidden lg:block", children: /* @__PURE__ */ (0, import_jsx_runtime79.jsxs)(
|
|
16971
|
+
import_ui44.HoverCard,
|
|
16972
|
+
{
|
|
16973
|
+
open: openHoverCardId === layer.id,
|
|
16974
|
+
onOpenChange: () => onInfoClick(layer.id),
|
|
16975
|
+
children: [
|
|
16976
|
+
/* @__PURE__ */ (0, import_jsx_runtime79.jsx)(import_ui44.HoverCardTrigger, { asChild: true, children: /* @__PURE__ */ (0, import_jsx_runtime79.jsx)(
|
|
16977
|
+
"div",
|
|
16978
|
+
{
|
|
16979
|
+
onClick: () => onInfoClick(layer.id),
|
|
16980
|
+
className: "cursor-pointer",
|
|
16981
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime79.jsx)(LayerInfoIcon2, { onClick: () => setOpen(true) })
|
|
16982
|
+
}
|
|
16983
|
+
) }),
|
|
16984
|
+
/* @__PURE__ */ (0, import_jsx_runtime79.jsx)(import_ui44.HoverCardContent, { className: "w-80 rounded-2xl ", children: /* @__PURE__ */ (0, import_jsx_runtime79.jsxs)("div", { className: "space-y-1", children: [
|
|
16985
|
+
/* @__PURE__ */ (0, import_jsx_runtime79.jsx)("h4", { className: "text-sm font-semibold", children: layer.title }),
|
|
16986
|
+
/* @__PURE__ */ (0, import_jsx_runtime79.jsx)("p", { className: "text-sm text-grey", children: ((_a = layer.layerInfo) == null ? void 0 : _a.hoverCardText) || "" })
|
|
16987
|
+
] }) })
|
|
16988
|
+
]
|
|
16989
|
+
}
|
|
16990
|
+
) })
|
|
16991
|
+
] }),
|
|
16992
|
+
/* @__PURE__ */ (0, import_jsx_runtime79.jsx)(LayerItemInfo2, { layer, open, setOpen })
|
|
16993
|
+
] });
|
|
16994
|
+
}
|
|
16995
|
+
);
|
|
16996
|
+
LayerItem2.displayName = "LayerItem";
|
|
16997
|
+
var LayerSwitcher2 = (0, import_react62.memo)(({ mapMenuItems, customLayers }) => {
|
|
16998
|
+
const store = useMapLayerStore2();
|
|
16999
|
+
const [openHoverCardId, setOpenHoverCardId] = (0, import_react62.useState)(null);
|
|
17000
|
+
(0, import_react62.useEffect)(() => {
|
|
17001
|
+
if (store.layers.length == 0 && customLayers.length > 0)
|
|
17002
|
+
customLayers.map((layer) => store.add(layer));
|
|
17003
|
+
}, []);
|
|
17004
|
+
const handleToggle = (0, import_react62.useCallback)(
|
|
17005
|
+
(layer) => {
|
|
17006
|
+
store.layers.findIndex((l) => l.id === layer.id) !== -1 ? store.remove(layer) : store.add(layer);
|
|
17007
|
+
},
|
|
17008
|
+
[store]
|
|
17009
|
+
);
|
|
17010
|
+
const handleInfoClick = (0, import_react62.useCallback)(
|
|
17011
|
+
(id) => {
|
|
17012
|
+
setOpenHoverCardId(openHoverCardId === id ? null : id);
|
|
17013
|
+
},
|
|
17014
|
+
[openHoverCardId]
|
|
17015
|
+
);
|
|
17016
|
+
const hasRegularLayers = (mapMenuItems == null ? void 0 : mapMenuItems.length) > 0;
|
|
17017
|
+
const hasCustomLayers = customLayers.length > 0;
|
|
17018
|
+
if (!hasRegularLayers && !hasCustomLayers) {
|
|
17019
|
+
return /* @__PURE__ */ (0, import_jsx_runtime79.jsx)("div", { children: "No map layers available" });
|
|
17020
|
+
}
|
|
17021
|
+
return /* @__PURE__ */ (0, import_jsx_runtime79.jsx)("div", { className: "lg:max-h-[calc(100dvh-15rem)] overflow-y-auto pr-1", children: mapMenuItems == null ? void 0 : mapMenuItems.map((menu, index) => {
|
|
17022
|
+
var _a;
|
|
17023
|
+
return /* @__PURE__ */ (0, import_jsx_runtime79.jsxs)("div", { children: [
|
|
17024
|
+
/* @__PURE__ */ (0, import_jsx_runtime79.jsxs)("div", { className: "hidden lg:block", children: [
|
|
17025
|
+
/* @__PURE__ */ (0, import_jsx_runtime79.jsx)(
|
|
17026
|
+
import_react65.Disclosure,
|
|
17027
|
+
{
|
|
17028
|
+
"data-component": menu.title,
|
|
17029
|
+
defaultOpen: mapMenuItems.length === 1,
|
|
17030
|
+
children: ({ open }) => {
|
|
17031
|
+
var _a2;
|
|
17032
|
+
return /* @__PURE__ */ (0, import_jsx_runtime79.jsxs)(import_jsx_runtime79.Fragment, { children: [
|
|
17033
|
+
/* @__PURE__ */ (0, import_jsx_runtime79.jsxs)(import_react65.Disclosure.Button, { className: "w-[310px] flex-row flex justify-between items-center gap-2 border-zinc-300 ", children: [
|
|
17034
|
+
/* @__PURE__ */ (0, import_jsx_runtime79.jsx)("span", { className: "text-sm font-normal uppercase text-grey leading-[130%]", children: menu.title }),
|
|
17035
|
+
/* @__PURE__ */ (0, import_jsx_runtime79.jsx)(
|
|
17036
|
+
import_lucide_react9.ChevronDown,
|
|
17037
|
+
{
|
|
17038
|
+
className: ` ${open ? "rotate-180 transform" : ""} h-7 w-7 `,
|
|
17039
|
+
stroke: "grey"
|
|
17040
|
+
}
|
|
17041
|
+
)
|
|
17042
|
+
] }),
|
|
17043
|
+
/* @__PURE__ */ (0, import_jsx_runtime79.jsx)(import_react65.Disclosure.Panel, { className: "space-y-2", children: /* @__PURE__ */ (0, import_jsx_runtime79.jsx)("div", { children: /* @__PURE__ */ (0, import_jsx_runtime79.jsxs)("ul", { className: "pt-2 space-y-2", children: [
|
|
17044
|
+
index === 0 && hasCustomLayers && customLayers.map((layer) => /* @__PURE__ */ (0, import_jsx_runtime79.jsx)(
|
|
17045
|
+
LayerItem2,
|
|
17046
|
+
{
|
|
17047
|
+
layer,
|
|
17048
|
+
isActive: store.layers.findIndex(
|
|
17049
|
+
(l) => l.id === layer.id
|
|
17050
|
+
) !== -1,
|
|
17051
|
+
onToggle: () => {
|
|
17052
|
+
handleToggle(layer);
|
|
17053
|
+
if (layer.ontoggle)
|
|
17054
|
+
layer.ontoggle();
|
|
17055
|
+
},
|
|
17056
|
+
openHoverCardId,
|
|
17057
|
+
onInfoClick: handleInfoClick
|
|
17058
|
+
},
|
|
17059
|
+
layer.id
|
|
17060
|
+
)),
|
|
17061
|
+
(_a2 = menu.subMenus) == null ? void 0 : _a2.map((layer) => /* @__PURE__ */ (0, import_jsx_runtime79.jsx)(
|
|
17062
|
+
LayerItem2,
|
|
17063
|
+
{
|
|
17064
|
+
layer,
|
|
17065
|
+
isActive: store.layers.findIndex(
|
|
17066
|
+
(l) => l.id === layer.id
|
|
17067
|
+
) !== -1,
|
|
17068
|
+
onToggle: () => handleToggle(layer),
|
|
17069
|
+
openHoverCardId,
|
|
17070
|
+
onInfoClick: handleInfoClick
|
|
17071
|
+
},
|
|
17072
|
+
layer.id
|
|
17073
|
+
))
|
|
17074
|
+
] }) }) })
|
|
17075
|
+
] });
|
|
17076
|
+
}
|
|
17077
|
+
}
|
|
17078
|
+
),
|
|
17079
|
+
index !== mapMenuItems.length - 1 && /* @__PURE__ */ (0, import_jsx_runtime79.jsx)("div", { className: "my-4 h-px bg-grey-light" })
|
|
17080
|
+
] }),
|
|
17081
|
+
/* @__PURE__ */ (0, import_jsx_runtime79.jsxs)("div", { className: "block lg:hidden px-5 pt-6", children: [
|
|
17082
|
+
/* @__PURE__ */ (0, import_jsx_runtime79.jsx)("span", { className: "text-sm font-normal uppercase text-grey leading-[130%]", children: menu.title }),
|
|
17083
|
+
/* @__PURE__ */ (0, import_jsx_runtime79.jsx)("div", { className: "space-y-2", children: /* @__PURE__ */ (0, import_jsx_runtime79.jsxs)("ul", { className: "pt-2 space-y-2", children: [
|
|
17084
|
+
index === 0 && hasCustomLayers && customLayers.map((layer) => /* @__PURE__ */ (0, import_jsx_runtime79.jsx)(
|
|
17085
|
+
LayerItem2,
|
|
17086
|
+
{
|
|
17087
|
+
layer,
|
|
17088
|
+
isActive: store.layers.findIndex((l) => l.id === layer.id) !== -1,
|
|
17089
|
+
onToggle: () => handleToggle(layer),
|
|
17090
|
+
openHoverCardId,
|
|
17091
|
+
onInfoClick: handleInfoClick
|
|
17092
|
+
},
|
|
17093
|
+
layer.id
|
|
17094
|
+
)),
|
|
17095
|
+
(_a = menu.subMenus) == null ? void 0 : _a.map((layer) => /* @__PURE__ */ (0, import_jsx_runtime79.jsx)(
|
|
17096
|
+
LayerItem2,
|
|
17097
|
+
{
|
|
17098
|
+
layer,
|
|
17099
|
+
isActive: store.layers.findIndex((l) => l.id === layer.id) !== -1,
|
|
17100
|
+
onToggle: () => handleToggle(layer),
|
|
17101
|
+
openHoverCardId,
|
|
17102
|
+
onInfoClick: handleInfoClick
|
|
17103
|
+
},
|
|
17104
|
+
layer.id
|
|
17105
|
+
))
|
|
17106
|
+
] }) })
|
|
17107
|
+
] })
|
|
17108
|
+
] }, menu.id);
|
|
17109
|
+
}) });
|
|
17110
|
+
});
|
|
17111
|
+
LayerSwitcher2.displayName = "LayerSwitcher";
|
|
17112
|
+
|
|
17113
|
+
// src/Components/Generic/Map/MapControlToolbar.tsx
|
|
17114
|
+
var Popover7 = __toESM(require("@radix-ui/react-popover"));
|
|
17115
|
+
var import_ui45 = require("@geowiki/ui");
|
|
17116
|
+
|
|
17117
|
+
// ../../node_modules/clsx/dist/clsx.m.js
|
|
17118
|
+
function r(e) {
|
|
17119
|
+
var t, f, n = "";
|
|
17120
|
+
if ("string" == typeof e || "number" == typeof e)
|
|
17121
|
+
n += e;
|
|
17122
|
+
else if ("object" == typeof e)
|
|
17123
|
+
if (Array.isArray(e))
|
|
17124
|
+
for (t = 0; t < e.length; t++)
|
|
17125
|
+
e[t] && (f = r(e[t])) && (n && (n += " "), n += f);
|
|
17126
|
+
else
|
|
17127
|
+
for (t in e)
|
|
17128
|
+
e[t] && (n && (n += " "), n += t);
|
|
17129
|
+
return n;
|
|
17130
|
+
}
|
|
17131
|
+
function clsx() {
|
|
17132
|
+
for (var e, t, f = 0, n = ""; f < arguments.length; )
|
|
17133
|
+
(e = arguments[f++]) && (t = r(e)) && (n && (n += " "), n += t);
|
|
17134
|
+
return n;
|
|
17135
|
+
}
|
|
17136
|
+
|
|
17137
|
+
// ../../node_modules/tailwind-merge/dist/lib/tw-join.mjs
|
|
17138
|
+
function twJoin() {
|
|
17139
|
+
var index = 0;
|
|
17140
|
+
var argument;
|
|
17141
|
+
var resolvedValue;
|
|
17142
|
+
var string4 = "";
|
|
17143
|
+
while (index < arguments.length) {
|
|
17144
|
+
if (argument = arguments[index++]) {
|
|
17145
|
+
if (resolvedValue = toValue(argument)) {
|
|
17146
|
+
string4 && (string4 += " ");
|
|
17147
|
+
string4 += resolvedValue;
|
|
17148
|
+
}
|
|
17149
|
+
}
|
|
17150
|
+
}
|
|
17151
|
+
return string4;
|
|
17152
|
+
}
|
|
17153
|
+
function toValue(mix) {
|
|
17154
|
+
if (typeof mix === "string") {
|
|
17155
|
+
return mix;
|
|
17156
|
+
}
|
|
17157
|
+
var resolvedValue;
|
|
17158
|
+
var string4 = "";
|
|
17159
|
+
for (var k = 0; k < mix.length; k++) {
|
|
17160
|
+
if (mix[k]) {
|
|
17161
|
+
if (resolvedValue = toValue(mix[k])) {
|
|
17162
|
+
string4 && (string4 += " ");
|
|
17163
|
+
string4 += resolvedValue;
|
|
17164
|
+
}
|
|
17165
|
+
}
|
|
17166
|
+
}
|
|
17167
|
+
return string4;
|
|
17168
|
+
}
|
|
17169
|
+
|
|
17170
|
+
// ../../node_modules/tailwind-merge/dist/lib/class-utils.mjs
|
|
17171
|
+
var CLASS_PART_SEPARATOR = "-";
|
|
17172
|
+
function createClassUtils(config) {
|
|
17173
|
+
var classMap = createClassMap(config);
|
|
17174
|
+
var conflictingClassGroups = config.conflictingClassGroups, _config$conflictingCl = config.conflictingClassGroupModifiers, conflictingClassGroupModifiers = _config$conflictingCl === void 0 ? {} : _config$conflictingCl;
|
|
17175
|
+
function getClassGroupId(className) {
|
|
17176
|
+
var classParts = className.split(CLASS_PART_SEPARATOR);
|
|
17177
|
+
if (classParts[0] === "" && classParts.length !== 1) {
|
|
17178
|
+
classParts.shift();
|
|
17179
|
+
}
|
|
17180
|
+
return getGroupRecursive(classParts, classMap) || getGroupIdForArbitraryProperty(className);
|
|
17181
|
+
}
|
|
17182
|
+
function getConflictingClassGroupIds(classGroupId, hasPostfixModifier) {
|
|
17183
|
+
var conflicts = conflictingClassGroups[classGroupId] || [];
|
|
17184
|
+
if (hasPostfixModifier && conflictingClassGroupModifiers[classGroupId]) {
|
|
17185
|
+
return [].concat(conflicts, conflictingClassGroupModifiers[classGroupId]);
|
|
17186
|
+
}
|
|
17187
|
+
return conflicts;
|
|
17188
|
+
}
|
|
17189
|
+
return {
|
|
17190
|
+
getClassGroupId,
|
|
17191
|
+
getConflictingClassGroupIds
|
|
17192
|
+
};
|
|
17193
|
+
}
|
|
17194
|
+
function getGroupRecursive(classParts, classPartObject) {
|
|
17195
|
+
var _a;
|
|
17196
|
+
if (classParts.length === 0) {
|
|
17197
|
+
return classPartObject.classGroupId;
|
|
17198
|
+
}
|
|
17199
|
+
var currentClassPart = classParts[0];
|
|
17200
|
+
var nextClassPartObject = classPartObject.nextPart.get(currentClassPart);
|
|
17201
|
+
var classGroupFromNextClassPart = nextClassPartObject ? getGroupRecursive(classParts.slice(1), nextClassPartObject) : void 0;
|
|
17202
|
+
if (classGroupFromNextClassPart) {
|
|
17203
|
+
return classGroupFromNextClassPart;
|
|
17204
|
+
}
|
|
17205
|
+
if (classPartObject.validators.length === 0) {
|
|
17206
|
+
return void 0;
|
|
17207
|
+
}
|
|
17208
|
+
var classRest = classParts.join(CLASS_PART_SEPARATOR);
|
|
17209
|
+
return (_a = classPartObject.validators.find(function(_ref) {
|
|
17210
|
+
var validator = _ref.validator;
|
|
17211
|
+
return validator(classRest);
|
|
17212
|
+
})) == null ? void 0 : _a.classGroupId;
|
|
17213
|
+
}
|
|
17214
|
+
var arbitraryPropertyRegex = /^\[(.+)\]$/;
|
|
17215
|
+
function getGroupIdForArbitraryProperty(className) {
|
|
17216
|
+
if (arbitraryPropertyRegex.test(className)) {
|
|
17217
|
+
var arbitraryPropertyClassName = arbitraryPropertyRegex.exec(className)[1];
|
|
17218
|
+
var property = arbitraryPropertyClassName == null ? void 0 : arbitraryPropertyClassName.substring(0, arbitraryPropertyClassName.indexOf(":"));
|
|
17219
|
+
if (property) {
|
|
17220
|
+
return "arbitrary.." + property;
|
|
17221
|
+
}
|
|
17222
|
+
}
|
|
17223
|
+
}
|
|
17224
|
+
function createClassMap(config) {
|
|
17225
|
+
var theme = config.theme, prefix = config.prefix;
|
|
17226
|
+
var classMap = {
|
|
17227
|
+
nextPart: /* @__PURE__ */ new Map(),
|
|
17228
|
+
validators: []
|
|
17229
|
+
};
|
|
17230
|
+
var prefixedClassGroupEntries = getPrefixedClassGroupEntries(Object.entries(config.classGroups), prefix);
|
|
17231
|
+
prefixedClassGroupEntries.forEach(function(_ref2) {
|
|
17232
|
+
var classGroupId = _ref2[0], classGroup = _ref2[1];
|
|
17233
|
+
processClassesRecursively(classGroup, classMap, classGroupId, theme);
|
|
17234
|
+
});
|
|
17235
|
+
return classMap;
|
|
17236
|
+
}
|
|
17237
|
+
function processClassesRecursively(classGroup, classPartObject, classGroupId, theme) {
|
|
17238
|
+
classGroup.forEach(function(classDefinition) {
|
|
17239
|
+
if (typeof classDefinition === "string") {
|
|
17240
|
+
var classPartObjectToEdit = classDefinition === "" ? classPartObject : getPart(classPartObject, classDefinition);
|
|
17241
|
+
classPartObjectToEdit.classGroupId = classGroupId;
|
|
17242
|
+
return;
|
|
17243
|
+
}
|
|
17244
|
+
if (typeof classDefinition === "function") {
|
|
17245
|
+
if (isThemeGetter(classDefinition)) {
|
|
17246
|
+
processClassesRecursively(classDefinition(theme), classPartObject, classGroupId, theme);
|
|
17247
|
+
return;
|
|
17248
|
+
}
|
|
17249
|
+
classPartObject.validators.push({
|
|
17250
|
+
validator: classDefinition,
|
|
17251
|
+
classGroupId
|
|
17252
|
+
});
|
|
17253
|
+
return;
|
|
17254
|
+
}
|
|
17255
|
+
Object.entries(classDefinition).forEach(function(_ref3) {
|
|
17256
|
+
var key = _ref3[0], classGroup2 = _ref3[1];
|
|
17257
|
+
processClassesRecursively(classGroup2, getPart(classPartObject, key), classGroupId, theme);
|
|
17258
|
+
});
|
|
17259
|
+
});
|
|
17260
|
+
}
|
|
17261
|
+
function getPart(classPartObject, path) {
|
|
17262
|
+
var currentClassPartObject = classPartObject;
|
|
17263
|
+
path.split(CLASS_PART_SEPARATOR).forEach(function(pathPart) {
|
|
17264
|
+
if (!currentClassPartObject.nextPart.has(pathPart)) {
|
|
17265
|
+
currentClassPartObject.nextPart.set(pathPart, {
|
|
17266
|
+
nextPart: /* @__PURE__ */ new Map(),
|
|
17267
|
+
validators: []
|
|
17268
|
+
});
|
|
17269
|
+
}
|
|
17270
|
+
currentClassPartObject = currentClassPartObject.nextPart.get(pathPart);
|
|
17271
|
+
});
|
|
17272
|
+
return currentClassPartObject;
|
|
17273
|
+
}
|
|
17274
|
+
function isThemeGetter(func) {
|
|
17275
|
+
return func.isThemeGetter;
|
|
17276
|
+
}
|
|
17277
|
+
function getPrefixedClassGroupEntries(classGroupEntries, prefix) {
|
|
17278
|
+
if (!prefix) {
|
|
17279
|
+
return classGroupEntries;
|
|
17280
|
+
}
|
|
17281
|
+
return classGroupEntries.map(function(_ref4) {
|
|
17282
|
+
var classGroupId = _ref4[0], classGroup = _ref4[1];
|
|
17283
|
+
var prefixedClassGroup = classGroup.map(function(classDefinition) {
|
|
17284
|
+
if (typeof classDefinition === "string") {
|
|
17285
|
+
return prefix + classDefinition;
|
|
17286
|
+
}
|
|
17287
|
+
if (typeof classDefinition === "object") {
|
|
17288
|
+
return Object.fromEntries(Object.entries(classDefinition).map(function(_ref5) {
|
|
17289
|
+
var key = _ref5[0], value = _ref5[1];
|
|
17290
|
+
return [prefix + key, value];
|
|
17291
|
+
}));
|
|
17292
|
+
}
|
|
17293
|
+
return classDefinition;
|
|
17294
|
+
});
|
|
17295
|
+
return [classGroupId, prefixedClassGroup];
|
|
17296
|
+
});
|
|
17297
|
+
}
|
|
17298
|
+
|
|
17299
|
+
// ../../node_modules/tailwind-merge/dist/lib/lru-cache.mjs
|
|
17300
|
+
function createLruCache(maxCacheSize) {
|
|
17301
|
+
if (maxCacheSize < 1) {
|
|
17302
|
+
return {
|
|
17303
|
+
get: function get() {
|
|
17304
|
+
return void 0;
|
|
17305
|
+
},
|
|
17306
|
+
set: function set() {
|
|
17307
|
+
}
|
|
17308
|
+
};
|
|
17309
|
+
}
|
|
17310
|
+
var cacheSize = 0;
|
|
17311
|
+
var cache = /* @__PURE__ */ new Map();
|
|
17312
|
+
var previousCache = /* @__PURE__ */ new Map();
|
|
17313
|
+
function update(key, value) {
|
|
17314
|
+
cache.set(key, value);
|
|
17315
|
+
cacheSize++;
|
|
17316
|
+
if (cacheSize > maxCacheSize) {
|
|
17317
|
+
cacheSize = 0;
|
|
17318
|
+
previousCache = cache;
|
|
17319
|
+
cache = /* @__PURE__ */ new Map();
|
|
17320
|
+
}
|
|
17321
|
+
}
|
|
17322
|
+
return {
|
|
17323
|
+
get: function get(key) {
|
|
17324
|
+
var value = cache.get(key);
|
|
17325
|
+
if (value !== void 0) {
|
|
17326
|
+
return value;
|
|
17327
|
+
}
|
|
17328
|
+
if ((value = previousCache.get(key)) !== void 0) {
|
|
17329
|
+
update(key, value);
|
|
17330
|
+
return value;
|
|
17331
|
+
}
|
|
17332
|
+
},
|
|
17333
|
+
set: function set(key, value) {
|
|
17334
|
+
if (cache.has(key)) {
|
|
17335
|
+
cache.set(key, value);
|
|
17336
|
+
} else {
|
|
17337
|
+
update(key, value);
|
|
17338
|
+
}
|
|
17339
|
+
}
|
|
17340
|
+
};
|
|
17341
|
+
}
|
|
17342
|
+
|
|
17343
|
+
// ../../node_modules/tailwind-merge/dist/lib/modifier-utils.mjs
|
|
17344
|
+
var IMPORTANT_MODIFIER = "!";
|
|
17345
|
+
function createSplitModifiers(config) {
|
|
17346
|
+
var separator = config.separator || ":";
|
|
17347
|
+
var isSeparatorSingleCharacter = separator.length === 1;
|
|
17348
|
+
var firstSeparatorCharacter = separator[0];
|
|
17349
|
+
var separatorLength = separator.length;
|
|
17350
|
+
return function splitModifiers(className) {
|
|
17351
|
+
var modifiers = [];
|
|
17352
|
+
var bracketDepth = 0;
|
|
17353
|
+
var modifierStart = 0;
|
|
17354
|
+
var postfixModifierPosition;
|
|
17355
|
+
for (var index = 0; index < className.length; index++) {
|
|
17356
|
+
var currentCharacter = className[index];
|
|
17357
|
+
if (bracketDepth === 0) {
|
|
17358
|
+
if (currentCharacter === firstSeparatorCharacter && (isSeparatorSingleCharacter || className.slice(index, index + separatorLength) === separator)) {
|
|
17359
|
+
modifiers.push(className.slice(modifierStart, index));
|
|
17360
|
+
modifierStart = index + separatorLength;
|
|
17361
|
+
continue;
|
|
17362
|
+
}
|
|
17363
|
+
if (currentCharacter === "/") {
|
|
17364
|
+
postfixModifierPosition = index;
|
|
17365
|
+
continue;
|
|
17366
|
+
}
|
|
17367
|
+
}
|
|
17368
|
+
if (currentCharacter === "[") {
|
|
17369
|
+
bracketDepth++;
|
|
17370
|
+
} else if (currentCharacter === "]") {
|
|
17371
|
+
bracketDepth--;
|
|
17372
|
+
}
|
|
17373
|
+
}
|
|
17374
|
+
var baseClassNameWithImportantModifier = modifiers.length === 0 ? className : className.substring(modifierStart);
|
|
17375
|
+
var hasImportantModifier = baseClassNameWithImportantModifier.startsWith(IMPORTANT_MODIFIER);
|
|
17376
|
+
var baseClassName = hasImportantModifier ? baseClassNameWithImportantModifier.substring(1) : baseClassNameWithImportantModifier;
|
|
17377
|
+
var maybePostfixModifierPosition = postfixModifierPosition && postfixModifierPosition > modifierStart ? postfixModifierPosition - modifierStart : void 0;
|
|
17378
|
+
return {
|
|
17379
|
+
modifiers,
|
|
17380
|
+
hasImportantModifier,
|
|
17381
|
+
baseClassName,
|
|
17382
|
+
maybePostfixModifierPosition
|
|
17383
|
+
};
|
|
17384
|
+
};
|
|
17385
|
+
}
|
|
17386
|
+
function sortModifiers(modifiers) {
|
|
17387
|
+
if (modifiers.length <= 1) {
|
|
17388
|
+
return modifiers;
|
|
17389
|
+
}
|
|
17390
|
+
var sortedModifiers = [];
|
|
17391
|
+
var unsortedModifiers = [];
|
|
17392
|
+
modifiers.forEach(function(modifier) {
|
|
17393
|
+
var isArbitraryVariant = modifier[0] === "[";
|
|
17394
|
+
if (isArbitraryVariant) {
|
|
17395
|
+
sortedModifiers.push.apply(sortedModifiers, unsortedModifiers.sort().concat([modifier]));
|
|
17396
|
+
unsortedModifiers = [];
|
|
17397
|
+
} else {
|
|
17398
|
+
unsortedModifiers.push(modifier);
|
|
17399
|
+
}
|
|
17400
|
+
});
|
|
17401
|
+
sortedModifiers.push.apply(sortedModifiers, unsortedModifiers.sort());
|
|
17402
|
+
return sortedModifiers;
|
|
17403
|
+
}
|
|
17404
|
+
|
|
17405
|
+
// ../../node_modules/tailwind-merge/dist/lib/config-utils.mjs
|
|
17406
|
+
function createConfigUtils(config) {
|
|
17407
|
+
return __spreadValues({
|
|
17408
|
+
cache: createLruCache(config.cacheSize),
|
|
17409
|
+
splitModifiers: createSplitModifiers(config)
|
|
17410
|
+
}, createClassUtils(config));
|
|
17411
|
+
}
|
|
17412
|
+
|
|
17413
|
+
// ../../node_modules/tailwind-merge/dist/lib/merge-classlist.mjs
|
|
17414
|
+
var SPLIT_CLASSES_REGEX = /\s+/;
|
|
17415
|
+
function mergeClassList(classList, configUtils) {
|
|
17416
|
+
var splitModifiers = configUtils.splitModifiers, getClassGroupId = configUtils.getClassGroupId, getConflictingClassGroupIds = configUtils.getConflictingClassGroupIds;
|
|
17417
|
+
var classGroupsInConflict = /* @__PURE__ */ new Set();
|
|
17418
|
+
return classList.trim().split(SPLIT_CLASSES_REGEX).map(function(originalClassName) {
|
|
17419
|
+
var _splitModifiers = splitModifiers(originalClassName), modifiers = _splitModifiers.modifiers, hasImportantModifier = _splitModifiers.hasImportantModifier, baseClassName = _splitModifiers.baseClassName, maybePostfixModifierPosition = _splitModifiers.maybePostfixModifierPosition;
|
|
17420
|
+
var classGroupId = getClassGroupId(maybePostfixModifierPosition ? baseClassName.substring(0, maybePostfixModifierPosition) : baseClassName);
|
|
17421
|
+
var hasPostfixModifier = Boolean(maybePostfixModifierPosition);
|
|
17422
|
+
if (!classGroupId) {
|
|
17423
|
+
if (!maybePostfixModifierPosition) {
|
|
17424
|
+
return {
|
|
17425
|
+
isTailwindClass: false,
|
|
17426
|
+
originalClassName
|
|
17427
|
+
};
|
|
17428
|
+
}
|
|
17429
|
+
classGroupId = getClassGroupId(baseClassName);
|
|
17430
|
+
if (!classGroupId) {
|
|
17431
|
+
return {
|
|
17432
|
+
isTailwindClass: false,
|
|
17433
|
+
originalClassName
|
|
17434
|
+
};
|
|
17435
|
+
}
|
|
17436
|
+
hasPostfixModifier = false;
|
|
17437
|
+
}
|
|
17438
|
+
var variantModifier = sortModifiers(modifiers).join(":");
|
|
17439
|
+
var modifierId = hasImportantModifier ? variantModifier + IMPORTANT_MODIFIER : variantModifier;
|
|
17440
|
+
return {
|
|
17441
|
+
isTailwindClass: true,
|
|
17442
|
+
modifierId,
|
|
17443
|
+
classGroupId,
|
|
17444
|
+
originalClassName,
|
|
17445
|
+
hasPostfixModifier
|
|
17446
|
+
};
|
|
17447
|
+
}).reverse().filter(function(parsed) {
|
|
17448
|
+
if (!parsed.isTailwindClass) {
|
|
17449
|
+
return true;
|
|
17450
|
+
}
|
|
17451
|
+
var modifierId = parsed.modifierId, classGroupId = parsed.classGroupId, hasPostfixModifier = parsed.hasPostfixModifier;
|
|
17452
|
+
var classId = modifierId + classGroupId;
|
|
17453
|
+
if (classGroupsInConflict.has(classId)) {
|
|
17454
|
+
return false;
|
|
17455
|
+
}
|
|
17456
|
+
classGroupsInConflict.add(classId);
|
|
17457
|
+
getConflictingClassGroupIds(classGroupId, hasPostfixModifier).forEach(function(group) {
|
|
17458
|
+
return classGroupsInConflict.add(modifierId + group);
|
|
17459
|
+
});
|
|
17460
|
+
return true;
|
|
17461
|
+
}).reverse().map(function(parsed) {
|
|
17462
|
+
return parsed.originalClassName;
|
|
17463
|
+
}).join(" ");
|
|
17464
|
+
}
|
|
17465
|
+
|
|
17466
|
+
// ../../node_modules/tailwind-merge/dist/lib/create-tailwind-merge.mjs
|
|
17467
|
+
function createTailwindMerge() {
|
|
17468
|
+
for (var _len = arguments.length, createConfig = new Array(_len), _key = 0; _key < _len; _key++) {
|
|
17469
|
+
createConfig[_key] = arguments[_key];
|
|
17470
|
+
}
|
|
17471
|
+
var configUtils;
|
|
17472
|
+
var cacheGet;
|
|
17473
|
+
var cacheSet;
|
|
17474
|
+
var functionToCall = initTailwindMerge;
|
|
17475
|
+
function initTailwindMerge(classList) {
|
|
17476
|
+
var firstCreateConfig = createConfig[0], restCreateConfig = createConfig.slice(1);
|
|
17477
|
+
var config = restCreateConfig.reduce(function(previousConfig, createConfigCurrent) {
|
|
17478
|
+
return createConfigCurrent(previousConfig);
|
|
17479
|
+
}, firstCreateConfig());
|
|
17480
|
+
configUtils = createConfigUtils(config);
|
|
17481
|
+
cacheGet = configUtils.cache.get;
|
|
17482
|
+
cacheSet = configUtils.cache.set;
|
|
17483
|
+
functionToCall = tailwindMerge;
|
|
17484
|
+
return tailwindMerge(classList);
|
|
17485
|
+
}
|
|
17486
|
+
function tailwindMerge(classList) {
|
|
17487
|
+
var cachedResult = cacheGet(classList);
|
|
17488
|
+
if (cachedResult) {
|
|
17489
|
+
return cachedResult;
|
|
17490
|
+
}
|
|
17491
|
+
var result = mergeClassList(classList, configUtils);
|
|
17492
|
+
cacheSet(classList, result);
|
|
17493
|
+
return result;
|
|
17494
|
+
}
|
|
17495
|
+
return function callTailwindMerge() {
|
|
17496
|
+
return functionToCall(twJoin.apply(null, arguments));
|
|
17497
|
+
};
|
|
17498
|
+
}
|
|
17499
|
+
|
|
17500
|
+
// ../../node_modules/tailwind-merge/dist/lib/from-theme.mjs
|
|
17501
|
+
function fromTheme(key) {
|
|
17502
|
+
var themeGetter = function themeGetter2(theme) {
|
|
17503
|
+
return theme[key] || [];
|
|
17504
|
+
};
|
|
17505
|
+
themeGetter.isThemeGetter = true;
|
|
17506
|
+
return themeGetter;
|
|
17507
|
+
}
|
|
17508
|
+
|
|
17509
|
+
// ../../node_modules/tailwind-merge/dist/lib/validators.mjs
|
|
17510
|
+
var arbitraryValueRegex = /^\[(?:([a-z-]+):)?(.+)\]$/i;
|
|
17511
|
+
var fractionRegex = /^\d+\/\d+$/;
|
|
17512
|
+
var stringLengths = /* @__PURE__ */ new Set(["px", "full", "screen"]);
|
|
17513
|
+
var tshirtUnitRegex = /^(\d+(\.\d+)?)?(xs|sm|md|lg|xl)$/;
|
|
17514
|
+
var lengthUnitRegex = /\d+(%|px|r?em|[sdl]?v([hwib]|min|max)|pt|pc|in|cm|mm|cap|ch|ex|r?lh|cq(w|h|i|b|min|max))/;
|
|
17515
|
+
var shadowRegex = /^-?((\d+)?\.?(\d+)[a-z]+|0)_-?((\d+)?\.?(\d+)[a-z]+|0)/;
|
|
17516
|
+
function isLength(value) {
|
|
17517
|
+
return isNumber(value) || stringLengths.has(value) || fractionRegex.test(value) || isArbitraryLength(value);
|
|
17518
|
+
}
|
|
17519
|
+
function isArbitraryLength(value) {
|
|
17520
|
+
return getIsArbitraryValue(value, "length", isLengthOnly);
|
|
17521
|
+
}
|
|
17522
|
+
function isArbitrarySize(value) {
|
|
17523
|
+
return getIsArbitraryValue(value, "size", isNever);
|
|
17524
|
+
}
|
|
17525
|
+
function isArbitraryPosition(value) {
|
|
17526
|
+
return getIsArbitraryValue(value, "position", isNever);
|
|
17527
|
+
}
|
|
17528
|
+
function isArbitraryUrl(value) {
|
|
17529
|
+
return getIsArbitraryValue(value, "url", isUrl);
|
|
17530
|
+
}
|
|
17531
|
+
function isArbitraryNumber(value) {
|
|
17532
|
+
return getIsArbitraryValue(value, "number", isNumber);
|
|
17533
|
+
}
|
|
17534
|
+
function isNumber(value) {
|
|
17535
|
+
return !Number.isNaN(Number(value));
|
|
17536
|
+
}
|
|
17537
|
+
function isPercent(value) {
|
|
17538
|
+
return value.endsWith("%") && isNumber(value.slice(0, -1));
|
|
17539
|
+
}
|
|
17540
|
+
function isInteger(value) {
|
|
17541
|
+
return isIntegerOnly(value) || getIsArbitraryValue(value, "number", isIntegerOnly);
|
|
17542
|
+
}
|
|
17543
|
+
function isArbitraryValue(value) {
|
|
17544
|
+
return arbitraryValueRegex.test(value);
|
|
17545
|
+
}
|
|
17546
|
+
function isAny() {
|
|
17547
|
+
return true;
|
|
17548
|
+
}
|
|
17549
|
+
function isTshirtSize(value) {
|
|
17550
|
+
return tshirtUnitRegex.test(value);
|
|
17551
|
+
}
|
|
17552
|
+
function isArbitraryShadow(value) {
|
|
17553
|
+
return getIsArbitraryValue(value, "", isShadow);
|
|
17554
|
+
}
|
|
17555
|
+
function getIsArbitraryValue(value, label, testValue) {
|
|
17556
|
+
var result = arbitraryValueRegex.exec(value);
|
|
17557
|
+
if (result) {
|
|
17558
|
+
if (result[1]) {
|
|
17559
|
+
return result[1] === label;
|
|
17560
|
+
}
|
|
17561
|
+
return testValue(result[2]);
|
|
17562
|
+
}
|
|
17563
|
+
return false;
|
|
17564
|
+
}
|
|
17565
|
+
function isLengthOnly(value) {
|
|
17566
|
+
return lengthUnitRegex.test(value);
|
|
17567
|
+
}
|
|
17568
|
+
function isNever() {
|
|
17569
|
+
return false;
|
|
17570
|
+
}
|
|
17571
|
+
function isUrl(value) {
|
|
17572
|
+
return value.startsWith("url(");
|
|
17573
|
+
}
|
|
17574
|
+
function isIntegerOnly(value) {
|
|
17575
|
+
return Number.isInteger(Number(value));
|
|
17576
|
+
}
|
|
17577
|
+
function isShadow(value) {
|
|
17578
|
+
return shadowRegex.test(value);
|
|
17579
|
+
}
|
|
17580
|
+
|
|
17581
|
+
// ../../node_modules/tailwind-merge/dist/lib/default-config.mjs
|
|
17582
|
+
function getDefaultConfig() {
|
|
17583
|
+
var colors = fromTheme("colors");
|
|
17584
|
+
var spacing = fromTheme("spacing");
|
|
17585
|
+
var blur = fromTheme("blur");
|
|
17586
|
+
var brightness = fromTheme("brightness");
|
|
17587
|
+
var borderColor = fromTheme("borderColor");
|
|
17588
|
+
var borderRadius = fromTheme("borderRadius");
|
|
17589
|
+
var borderSpacing = fromTheme("borderSpacing");
|
|
17590
|
+
var borderWidth = fromTheme("borderWidth");
|
|
17591
|
+
var contrast = fromTheme("contrast");
|
|
17592
|
+
var grayscale = fromTheme("grayscale");
|
|
17593
|
+
var hueRotate = fromTheme("hueRotate");
|
|
17594
|
+
var invert = fromTheme("invert");
|
|
17595
|
+
var gap = fromTheme("gap");
|
|
17596
|
+
var gradientColorStops = fromTheme("gradientColorStops");
|
|
17597
|
+
var gradientColorStopPositions = fromTheme("gradientColorStopPositions");
|
|
17598
|
+
var inset = fromTheme("inset");
|
|
17599
|
+
var margin = fromTheme("margin");
|
|
17600
|
+
var opacity = fromTheme("opacity");
|
|
17601
|
+
var padding = fromTheme("padding");
|
|
17602
|
+
var saturate = fromTheme("saturate");
|
|
17603
|
+
var scale = fromTheme("scale");
|
|
17604
|
+
var sepia = fromTheme("sepia");
|
|
17605
|
+
var skew = fromTheme("skew");
|
|
17606
|
+
var space = fromTheme("space");
|
|
17607
|
+
var translate = fromTheme("translate");
|
|
17608
|
+
var getOverscroll = function getOverscroll2() {
|
|
17609
|
+
return ["auto", "contain", "none"];
|
|
17610
|
+
};
|
|
17611
|
+
var getOverflow = function getOverflow2() {
|
|
17612
|
+
return ["auto", "hidden", "clip", "visible", "scroll"];
|
|
17613
|
+
};
|
|
17614
|
+
var getSpacingWithAuto = function getSpacingWithAuto2() {
|
|
17615
|
+
return ["auto", spacing];
|
|
17616
|
+
};
|
|
17617
|
+
var getLengthWithEmpty = function getLengthWithEmpty2() {
|
|
17618
|
+
return ["", isLength];
|
|
17619
|
+
};
|
|
17620
|
+
var getNumberWithAutoAndArbitrary = function getNumberWithAutoAndArbitrary2() {
|
|
17621
|
+
return ["auto", isNumber, isArbitraryValue];
|
|
17622
|
+
};
|
|
17623
|
+
var getPositions = function getPositions2() {
|
|
17624
|
+
return ["bottom", "center", "left", "left-bottom", "left-top", "right", "right-bottom", "right-top", "top"];
|
|
17625
|
+
};
|
|
17626
|
+
var getLineStyles = function getLineStyles2() {
|
|
17627
|
+
return ["solid", "dashed", "dotted", "double", "none"];
|
|
17628
|
+
};
|
|
17629
|
+
var getBlendModes = function getBlendModes2() {
|
|
17630
|
+
return ["normal", "multiply", "screen", "overlay", "darken", "lighten", "color-dodge", "color-burn", "hard-light", "soft-light", "difference", "exclusion", "hue", "saturation", "color", "luminosity", "plus-lighter"];
|
|
17631
|
+
};
|
|
17632
|
+
var getAlign = function getAlign2() {
|
|
17633
|
+
return ["start", "end", "center", "between", "around", "evenly", "stretch"];
|
|
17634
|
+
};
|
|
17635
|
+
var getZeroAndEmpty = function getZeroAndEmpty2() {
|
|
17636
|
+
return ["", "0", isArbitraryValue];
|
|
17637
|
+
};
|
|
17638
|
+
var getBreaks = function getBreaks2() {
|
|
17639
|
+
return ["auto", "avoid", "all", "avoid-page", "page", "left", "right", "column"];
|
|
17640
|
+
};
|
|
17641
|
+
var getNumber = function getNumber2() {
|
|
17642
|
+
return [isNumber, isArbitraryNumber];
|
|
17643
|
+
};
|
|
17644
|
+
var getNumberAndArbitrary = function getNumberAndArbitrary2() {
|
|
17645
|
+
return [isNumber, isArbitraryValue];
|
|
17646
|
+
};
|
|
17647
|
+
return {
|
|
17648
|
+
cacheSize: 500,
|
|
17649
|
+
theme: {
|
|
17650
|
+
colors: [isAny],
|
|
17651
|
+
spacing: [isLength],
|
|
17652
|
+
blur: ["none", "", isTshirtSize, isArbitraryLength],
|
|
17653
|
+
brightness: getNumber(),
|
|
17654
|
+
borderColor: [colors],
|
|
17655
|
+
borderRadius: ["none", "", "full", isTshirtSize, isArbitraryLength],
|
|
17656
|
+
borderSpacing: [spacing],
|
|
17657
|
+
borderWidth: getLengthWithEmpty(),
|
|
17658
|
+
contrast: getNumber(),
|
|
17659
|
+
grayscale: getZeroAndEmpty(),
|
|
17660
|
+
hueRotate: getNumberAndArbitrary(),
|
|
17661
|
+
invert: getZeroAndEmpty(),
|
|
17662
|
+
gap: [spacing],
|
|
17663
|
+
gradientColorStops: [colors],
|
|
17664
|
+
gradientColorStopPositions: [isPercent, isArbitraryLength],
|
|
17665
|
+
inset: getSpacingWithAuto(),
|
|
17666
|
+
margin: getSpacingWithAuto(),
|
|
17667
|
+
opacity: getNumber(),
|
|
17668
|
+
padding: [spacing],
|
|
17669
|
+
saturate: getNumber(),
|
|
17670
|
+
scale: getNumber(),
|
|
17671
|
+
sepia: getZeroAndEmpty(),
|
|
17672
|
+
skew: getNumberAndArbitrary(),
|
|
17673
|
+
space: [spacing],
|
|
17674
|
+
translate: [spacing]
|
|
17675
|
+
},
|
|
17676
|
+
classGroups: {
|
|
17677
|
+
// Layout
|
|
17678
|
+
/**
|
|
17679
|
+
* Aspect Ratio
|
|
17680
|
+
* @see https://tailwindcss.com/docs/aspect-ratio
|
|
17681
|
+
*/
|
|
17682
|
+
aspect: [{
|
|
17683
|
+
aspect: ["auto", "square", "video", isArbitraryValue]
|
|
17684
|
+
}],
|
|
17685
|
+
/**
|
|
17686
|
+
* Container
|
|
17687
|
+
* @see https://tailwindcss.com/docs/container
|
|
17688
|
+
*/
|
|
17689
|
+
container: ["container"],
|
|
17690
|
+
/**
|
|
17691
|
+
* Columns
|
|
17692
|
+
* @see https://tailwindcss.com/docs/columns
|
|
17693
|
+
*/
|
|
17694
|
+
columns: [{
|
|
17695
|
+
columns: [isTshirtSize]
|
|
17696
|
+
}],
|
|
17697
|
+
/**
|
|
17698
|
+
* Break After
|
|
17699
|
+
* @see https://tailwindcss.com/docs/break-after
|
|
17700
|
+
*/
|
|
17701
|
+
"break-after": [{
|
|
17702
|
+
"break-after": getBreaks()
|
|
17703
|
+
}],
|
|
17704
|
+
/**
|
|
17705
|
+
* Break Before
|
|
17706
|
+
* @see https://tailwindcss.com/docs/break-before
|
|
17707
|
+
*/
|
|
17708
|
+
"break-before": [{
|
|
17709
|
+
"break-before": getBreaks()
|
|
17710
|
+
}],
|
|
17711
|
+
/**
|
|
17712
|
+
* Break Inside
|
|
17713
|
+
* @see https://tailwindcss.com/docs/break-inside
|
|
17714
|
+
*/
|
|
17715
|
+
"break-inside": [{
|
|
17716
|
+
"break-inside": ["auto", "avoid", "avoid-page", "avoid-column"]
|
|
17717
|
+
}],
|
|
17718
|
+
/**
|
|
17719
|
+
* Box Decoration Break
|
|
17720
|
+
* @see https://tailwindcss.com/docs/box-decoration-break
|
|
17721
|
+
*/
|
|
17722
|
+
"box-decoration": [{
|
|
17723
|
+
"box-decoration": ["slice", "clone"]
|
|
17724
|
+
}],
|
|
17725
|
+
/**
|
|
17726
|
+
* Box Sizing
|
|
17727
|
+
* @see https://tailwindcss.com/docs/box-sizing
|
|
17728
|
+
*/
|
|
17729
|
+
box: [{
|
|
17730
|
+
box: ["border", "content"]
|
|
17731
|
+
}],
|
|
17732
|
+
/**
|
|
17733
|
+
* Display
|
|
17734
|
+
* @see https://tailwindcss.com/docs/display
|
|
17735
|
+
*/
|
|
17736
|
+
display: ["block", "inline-block", "inline", "flex", "inline-flex", "table", "inline-table", "table-caption", "table-cell", "table-column", "table-column-group", "table-footer-group", "table-header-group", "table-row-group", "table-row", "flow-root", "grid", "inline-grid", "contents", "list-item", "hidden"],
|
|
17737
|
+
/**
|
|
17738
|
+
* Floats
|
|
17739
|
+
* @see https://tailwindcss.com/docs/float
|
|
17740
|
+
*/
|
|
17741
|
+
"float": [{
|
|
17742
|
+
"float": ["right", "left", "none"]
|
|
17743
|
+
}],
|
|
17744
|
+
/**
|
|
17745
|
+
* Clear
|
|
17746
|
+
* @see https://tailwindcss.com/docs/clear
|
|
17747
|
+
*/
|
|
17748
|
+
clear: [{
|
|
17749
|
+
clear: ["left", "right", "both", "none"]
|
|
17750
|
+
}],
|
|
17751
|
+
/**
|
|
17752
|
+
* Isolation
|
|
17753
|
+
* @see https://tailwindcss.com/docs/isolation
|
|
17754
|
+
*/
|
|
17755
|
+
isolation: ["isolate", "isolation-auto"],
|
|
17756
|
+
/**
|
|
17757
|
+
* Object Fit
|
|
17758
|
+
* @see https://tailwindcss.com/docs/object-fit
|
|
17759
|
+
*/
|
|
17760
|
+
"object-fit": [{
|
|
17761
|
+
object: ["contain", "cover", "fill", "none", "scale-down"]
|
|
17762
|
+
}],
|
|
17763
|
+
/**
|
|
17764
|
+
* Object Position
|
|
17765
|
+
* @see https://tailwindcss.com/docs/object-position
|
|
17766
|
+
*/
|
|
17767
|
+
"object-position": [{
|
|
17768
|
+
object: [].concat(getPositions(), [isArbitraryValue])
|
|
17769
|
+
}],
|
|
17770
|
+
/**
|
|
17771
|
+
* Overflow
|
|
17772
|
+
* @see https://tailwindcss.com/docs/overflow
|
|
17773
|
+
*/
|
|
17774
|
+
overflow: [{
|
|
17775
|
+
overflow: getOverflow()
|
|
17776
|
+
}],
|
|
17777
|
+
/**
|
|
17778
|
+
* Overflow X
|
|
17779
|
+
* @see https://tailwindcss.com/docs/overflow
|
|
17780
|
+
*/
|
|
17781
|
+
"overflow-x": [{
|
|
17782
|
+
"overflow-x": getOverflow()
|
|
17783
|
+
}],
|
|
17784
|
+
/**
|
|
17785
|
+
* Overflow Y
|
|
17786
|
+
* @see https://tailwindcss.com/docs/overflow
|
|
17787
|
+
*/
|
|
17788
|
+
"overflow-y": [{
|
|
17789
|
+
"overflow-y": getOverflow()
|
|
17790
|
+
}],
|
|
17791
|
+
/**
|
|
17792
|
+
* Overscroll Behavior
|
|
17793
|
+
* @see https://tailwindcss.com/docs/overscroll-behavior
|
|
17794
|
+
*/
|
|
17795
|
+
overscroll: [{
|
|
17796
|
+
overscroll: getOverscroll()
|
|
17797
|
+
}],
|
|
17798
|
+
/**
|
|
17799
|
+
* Overscroll Behavior X
|
|
17800
|
+
* @see https://tailwindcss.com/docs/overscroll-behavior
|
|
17801
|
+
*/
|
|
17802
|
+
"overscroll-x": [{
|
|
17803
|
+
"overscroll-x": getOverscroll()
|
|
17804
|
+
}],
|
|
17805
|
+
/**
|
|
17806
|
+
* Overscroll Behavior Y
|
|
17807
|
+
* @see https://tailwindcss.com/docs/overscroll-behavior
|
|
17808
|
+
*/
|
|
17809
|
+
"overscroll-y": [{
|
|
17810
|
+
"overscroll-y": getOverscroll()
|
|
17811
|
+
}],
|
|
17812
|
+
/**
|
|
17813
|
+
* Position
|
|
17814
|
+
* @see https://tailwindcss.com/docs/position
|
|
17815
|
+
*/
|
|
17816
|
+
position: ["static", "fixed", "absolute", "relative", "sticky"],
|
|
17817
|
+
/**
|
|
17818
|
+
* Top / Right / Bottom / Left
|
|
17819
|
+
* @see https://tailwindcss.com/docs/top-right-bottom-left
|
|
17820
|
+
*/
|
|
17821
|
+
inset: [{
|
|
17822
|
+
inset: [inset]
|
|
17823
|
+
}],
|
|
17824
|
+
/**
|
|
17825
|
+
* Right / Left
|
|
17826
|
+
* @see https://tailwindcss.com/docs/top-right-bottom-left
|
|
17827
|
+
*/
|
|
17828
|
+
"inset-x": [{
|
|
17829
|
+
"inset-x": [inset]
|
|
17830
|
+
}],
|
|
17831
|
+
/**
|
|
17832
|
+
* Top / Bottom
|
|
17833
|
+
* @see https://tailwindcss.com/docs/top-right-bottom-left
|
|
17834
|
+
*/
|
|
17835
|
+
"inset-y": [{
|
|
17836
|
+
"inset-y": [inset]
|
|
17837
|
+
}],
|
|
17838
|
+
/**
|
|
17839
|
+
* Start
|
|
17840
|
+
* @see https://tailwindcss.com/docs/top-right-bottom-left
|
|
17841
|
+
*/
|
|
17842
|
+
start: [{
|
|
17843
|
+
start: [inset]
|
|
17844
|
+
}],
|
|
17845
|
+
/**
|
|
17846
|
+
* End
|
|
17847
|
+
* @see https://tailwindcss.com/docs/top-right-bottom-left
|
|
17848
|
+
*/
|
|
17849
|
+
end: [{
|
|
17850
|
+
end: [inset]
|
|
17851
|
+
}],
|
|
17852
|
+
/**
|
|
17853
|
+
* Top
|
|
17854
|
+
* @see https://tailwindcss.com/docs/top-right-bottom-left
|
|
17855
|
+
*/
|
|
17856
|
+
top: [{
|
|
17857
|
+
top: [inset]
|
|
17858
|
+
}],
|
|
17859
|
+
/**
|
|
17860
|
+
* Right
|
|
17861
|
+
* @see https://tailwindcss.com/docs/top-right-bottom-left
|
|
17862
|
+
*/
|
|
17863
|
+
right: [{
|
|
17864
|
+
right: [inset]
|
|
17865
|
+
}],
|
|
17866
|
+
/**
|
|
17867
|
+
* Bottom
|
|
17868
|
+
* @see https://tailwindcss.com/docs/top-right-bottom-left
|
|
17869
|
+
*/
|
|
17870
|
+
bottom: [{
|
|
17871
|
+
bottom: [inset]
|
|
17872
|
+
}],
|
|
17873
|
+
/**
|
|
17874
|
+
* Left
|
|
17875
|
+
* @see https://tailwindcss.com/docs/top-right-bottom-left
|
|
17876
|
+
*/
|
|
17877
|
+
left: [{
|
|
17878
|
+
left: [inset]
|
|
17879
|
+
}],
|
|
17880
|
+
/**
|
|
17881
|
+
* Visibility
|
|
17882
|
+
* @see https://tailwindcss.com/docs/visibility
|
|
17883
|
+
*/
|
|
17884
|
+
visibility: ["visible", "invisible", "collapse"],
|
|
17885
|
+
/**
|
|
17886
|
+
* Z-Index
|
|
17887
|
+
* @see https://tailwindcss.com/docs/z-index
|
|
17888
|
+
*/
|
|
17889
|
+
z: [{
|
|
17890
|
+
z: ["auto", isInteger]
|
|
17891
|
+
}],
|
|
17892
|
+
// Flexbox and Grid
|
|
17893
|
+
/**
|
|
17894
|
+
* Flex Basis
|
|
17895
|
+
* @see https://tailwindcss.com/docs/flex-basis
|
|
17896
|
+
*/
|
|
17897
|
+
basis: [{
|
|
17898
|
+
basis: [spacing]
|
|
17899
|
+
}],
|
|
17900
|
+
/**
|
|
17901
|
+
* Flex Direction
|
|
17902
|
+
* @see https://tailwindcss.com/docs/flex-direction
|
|
17903
|
+
*/
|
|
17904
|
+
"flex-direction": [{
|
|
17905
|
+
flex: ["row", "row-reverse", "col", "col-reverse"]
|
|
17906
|
+
}],
|
|
17907
|
+
/**
|
|
17908
|
+
* Flex Wrap
|
|
17909
|
+
* @see https://tailwindcss.com/docs/flex-wrap
|
|
17910
|
+
*/
|
|
17911
|
+
"flex-wrap": [{
|
|
17912
|
+
flex: ["wrap", "wrap-reverse", "nowrap"]
|
|
17913
|
+
}],
|
|
17914
|
+
/**
|
|
17915
|
+
* Flex
|
|
17916
|
+
* @see https://tailwindcss.com/docs/flex
|
|
17917
|
+
*/
|
|
17918
|
+
flex: [{
|
|
17919
|
+
flex: ["1", "auto", "initial", "none", isArbitraryValue]
|
|
17920
|
+
}],
|
|
17921
|
+
/**
|
|
17922
|
+
* Flex Grow
|
|
17923
|
+
* @see https://tailwindcss.com/docs/flex-grow
|
|
17924
|
+
*/
|
|
17925
|
+
grow: [{
|
|
17926
|
+
grow: getZeroAndEmpty()
|
|
17927
|
+
}],
|
|
17928
|
+
/**
|
|
17929
|
+
* Flex Shrink
|
|
17930
|
+
* @see https://tailwindcss.com/docs/flex-shrink
|
|
17931
|
+
*/
|
|
17932
|
+
shrink: [{
|
|
17933
|
+
shrink: getZeroAndEmpty()
|
|
17934
|
+
}],
|
|
17935
|
+
/**
|
|
17936
|
+
* Order
|
|
17937
|
+
* @see https://tailwindcss.com/docs/order
|
|
17938
|
+
*/
|
|
17939
|
+
order: [{
|
|
17940
|
+
order: ["first", "last", "none", isInteger]
|
|
17941
|
+
}],
|
|
17942
|
+
/**
|
|
17943
|
+
* Grid Template Columns
|
|
17944
|
+
* @see https://tailwindcss.com/docs/grid-template-columns
|
|
17945
|
+
*/
|
|
17946
|
+
"grid-cols": [{
|
|
17947
|
+
"grid-cols": [isAny]
|
|
17948
|
+
}],
|
|
17949
|
+
/**
|
|
17950
|
+
* Grid Column Start / End
|
|
17951
|
+
* @see https://tailwindcss.com/docs/grid-column
|
|
17952
|
+
*/
|
|
17953
|
+
"col-start-end": [{
|
|
17954
|
+
col: ["auto", {
|
|
17955
|
+
span: [isInteger]
|
|
17956
|
+
}, isArbitraryValue]
|
|
17957
|
+
}],
|
|
17958
|
+
/**
|
|
17959
|
+
* Grid Column Start
|
|
17960
|
+
* @see https://tailwindcss.com/docs/grid-column
|
|
17961
|
+
*/
|
|
17962
|
+
"col-start": [{
|
|
17963
|
+
"col-start": getNumberWithAutoAndArbitrary()
|
|
17964
|
+
}],
|
|
17965
|
+
/**
|
|
17966
|
+
* Grid Column End
|
|
17967
|
+
* @see https://tailwindcss.com/docs/grid-column
|
|
17968
|
+
*/
|
|
17969
|
+
"col-end": [{
|
|
17970
|
+
"col-end": getNumberWithAutoAndArbitrary()
|
|
17971
|
+
}],
|
|
17972
|
+
/**
|
|
17973
|
+
* Grid Template Rows
|
|
17974
|
+
* @see https://tailwindcss.com/docs/grid-template-rows
|
|
17975
|
+
*/
|
|
17976
|
+
"grid-rows": [{
|
|
17977
|
+
"grid-rows": [isAny]
|
|
17978
|
+
}],
|
|
17979
|
+
/**
|
|
17980
|
+
* Grid Row Start / End
|
|
17981
|
+
* @see https://tailwindcss.com/docs/grid-row
|
|
17982
|
+
*/
|
|
17983
|
+
"row-start-end": [{
|
|
17984
|
+
row: ["auto", {
|
|
17985
|
+
span: [isInteger]
|
|
17986
|
+
}, isArbitraryValue]
|
|
17987
|
+
}],
|
|
17988
|
+
/**
|
|
17989
|
+
* Grid Row Start
|
|
17990
|
+
* @see https://tailwindcss.com/docs/grid-row
|
|
17991
|
+
*/
|
|
17992
|
+
"row-start": [{
|
|
17993
|
+
"row-start": getNumberWithAutoAndArbitrary()
|
|
17994
|
+
}],
|
|
17995
|
+
/**
|
|
17996
|
+
* Grid Row End
|
|
17997
|
+
* @see https://tailwindcss.com/docs/grid-row
|
|
17998
|
+
*/
|
|
17999
|
+
"row-end": [{
|
|
18000
|
+
"row-end": getNumberWithAutoAndArbitrary()
|
|
18001
|
+
}],
|
|
18002
|
+
/**
|
|
18003
|
+
* Grid Auto Flow
|
|
18004
|
+
* @see https://tailwindcss.com/docs/grid-auto-flow
|
|
18005
|
+
*/
|
|
18006
|
+
"grid-flow": [{
|
|
18007
|
+
"grid-flow": ["row", "col", "dense", "row-dense", "col-dense"]
|
|
18008
|
+
}],
|
|
18009
|
+
/**
|
|
18010
|
+
* Grid Auto Columns
|
|
18011
|
+
* @see https://tailwindcss.com/docs/grid-auto-columns
|
|
18012
|
+
*/
|
|
18013
|
+
"auto-cols": [{
|
|
18014
|
+
"auto-cols": ["auto", "min", "max", "fr", isArbitraryValue]
|
|
18015
|
+
}],
|
|
18016
|
+
/**
|
|
18017
|
+
* Grid Auto Rows
|
|
18018
|
+
* @see https://tailwindcss.com/docs/grid-auto-rows
|
|
18019
|
+
*/
|
|
18020
|
+
"auto-rows": [{
|
|
18021
|
+
"auto-rows": ["auto", "min", "max", "fr", isArbitraryValue]
|
|
18022
|
+
}],
|
|
18023
|
+
/**
|
|
18024
|
+
* Gap
|
|
18025
|
+
* @see https://tailwindcss.com/docs/gap
|
|
18026
|
+
*/
|
|
18027
|
+
gap: [{
|
|
18028
|
+
gap: [gap]
|
|
18029
|
+
}],
|
|
18030
|
+
/**
|
|
18031
|
+
* Gap X
|
|
18032
|
+
* @see https://tailwindcss.com/docs/gap
|
|
18033
|
+
*/
|
|
18034
|
+
"gap-x": [{
|
|
18035
|
+
"gap-x": [gap]
|
|
18036
|
+
}],
|
|
18037
|
+
/**
|
|
18038
|
+
* Gap Y
|
|
18039
|
+
* @see https://tailwindcss.com/docs/gap
|
|
18040
|
+
*/
|
|
18041
|
+
"gap-y": [{
|
|
18042
|
+
"gap-y": [gap]
|
|
18043
|
+
}],
|
|
18044
|
+
/**
|
|
18045
|
+
* Justify Content
|
|
18046
|
+
* @see https://tailwindcss.com/docs/justify-content
|
|
18047
|
+
*/
|
|
18048
|
+
"justify-content": [{
|
|
18049
|
+
justify: ["normal"].concat(getAlign())
|
|
18050
|
+
}],
|
|
18051
|
+
/**
|
|
18052
|
+
* Justify Items
|
|
18053
|
+
* @see https://tailwindcss.com/docs/justify-items
|
|
18054
|
+
*/
|
|
18055
|
+
"justify-items": [{
|
|
18056
|
+
"justify-items": ["start", "end", "center", "stretch"]
|
|
18057
|
+
}],
|
|
18058
|
+
/**
|
|
18059
|
+
* Justify Self
|
|
18060
|
+
* @see https://tailwindcss.com/docs/justify-self
|
|
18061
|
+
*/
|
|
18062
|
+
"justify-self": [{
|
|
18063
|
+
"justify-self": ["auto", "start", "end", "center", "stretch"]
|
|
18064
|
+
}],
|
|
18065
|
+
/**
|
|
18066
|
+
* Align Content
|
|
18067
|
+
* @see https://tailwindcss.com/docs/align-content
|
|
18068
|
+
*/
|
|
18069
|
+
"align-content": [{
|
|
18070
|
+
content: ["normal"].concat(getAlign(), ["baseline"])
|
|
18071
|
+
}],
|
|
18072
|
+
/**
|
|
18073
|
+
* Align Items
|
|
18074
|
+
* @see https://tailwindcss.com/docs/align-items
|
|
18075
|
+
*/
|
|
18076
|
+
"align-items": [{
|
|
18077
|
+
items: ["start", "end", "center", "baseline", "stretch"]
|
|
18078
|
+
}],
|
|
18079
|
+
/**
|
|
18080
|
+
* Align Self
|
|
18081
|
+
* @see https://tailwindcss.com/docs/align-self
|
|
18082
|
+
*/
|
|
18083
|
+
"align-self": [{
|
|
18084
|
+
self: ["auto", "start", "end", "center", "stretch", "baseline"]
|
|
18085
|
+
}],
|
|
18086
|
+
/**
|
|
18087
|
+
* Place Content
|
|
18088
|
+
* @see https://tailwindcss.com/docs/place-content
|
|
18089
|
+
*/
|
|
18090
|
+
"place-content": [{
|
|
18091
|
+
"place-content": [].concat(getAlign(), ["baseline"])
|
|
18092
|
+
}],
|
|
18093
|
+
/**
|
|
18094
|
+
* Place Items
|
|
18095
|
+
* @see https://tailwindcss.com/docs/place-items
|
|
18096
|
+
*/
|
|
18097
|
+
"place-items": [{
|
|
18098
|
+
"place-items": ["start", "end", "center", "baseline", "stretch"]
|
|
18099
|
+
}],
|
|
18100
|
+
/**
|
|
18101
|
+
* Place Self
|
|
18102
|
+
* @see https://tailwindcss.com/docs/place-self
|
|
18103
|
+
*/
|
|
18104
|
+
"place-self": [{
|
|
18105
|
+
"place-self": ["auto", "start", "end", "center", "stretch"]
|
|
18106
|
+
}],
|
|
18107
|
+
// Spacing
|
|
18108
|
+
/**
|
|
18109
|
+
* Padding
|
|
18110
|
+
* @see https://tailwindcss.com/docs/padding
|
|
18111
|
+
*/
|
|
18112
|
+
p: [{
|
|
18113
|
+
p: [padding]
|
|
18114
|
+
}],
|
|
18115
|
+
/**
|
|
18116
|
+
* Padding X
|
|
18117
|
+
* @see https://tailwindcss.com/docs/padding
|
|
18118
|
+
*/
|
|
18119
|
+
px: [{
|
|
18120
|
+
px: [padding]
|
|
18121
|
+
}],
|
|
18122
|
+
/**
|
|
18123
|
+
* Padding Y
|
|
18124
|
+
* @see https://tailwindcss.com/docs/padding
|
|
18125
|
+
*/
|
|
18126
|
+
py: [{
|
|
18127
|
+
py: [padding]
|
|
18128
|
+
}],
|
|
18129
|
+
/**
|
|
18130
|
+
* Padding Start
|
|
18131
|
+
* @see https://tailwindcss.com/docs/padding
|
|
18132
|
+
*/
|
|
18133
|
+
ps: [{
|
|
18134
|
+
ps: [padding]
|
|
18135
|
+
}],
|
|
18136
|
+
/**
|
|
18137
|
+
* Padding End
|
|
18138
|
+
* @see https://tailwindcss.com/docs/padding
|
|
18139
|
+
*/
|
|
18140
|
+
pe: [{
|
|
18141
|
+
pe: [padding]
|
|
18142
|
+
}],
|
|
18143
|
+
/**
|
|
18144
|
+
* Padding Top
|
|
18145
|
+
* @see https://tailwindcss.com/docs/padding
|
|
18146
|
+
*/
|
|
18147
|
+
pt: [{
|
|
18148
|
+
pt: [padding]
|
|
18149
|
+
}],
|
|
18150
|
+
/**
|
|
18151
|
+
* Padding Right
|
|
18152
|
+
* @see https://tailwindcss.com/docs/padding
|
|
18153
|
+
*/
|
|
18154
|
+
pr: [{
|
|
18155
|
+
pr: [padding]
|
|
18156
|
+
}],
|
|
18157
|
+
/**
|
|
18158
|
+
* Padding Bottom
|
|
18159
|
+
* @see https://tailwindcss.com/docs/padding
|
|
18160
|
+
*/
|
|
18161
|
+
pb: [{
|
|
18162
|
+
pb: [padding]
|
|
18163
|
+
}],
|
|
18164
|
+
/**
|
|
18165
|
+
* Padding Left
|
|
18166
|
+
* @see https://tailwindcss.com/docs/padding
|
|
18167
|
+
*/
|
|
18168
|
+
pl: [{
|
|
18169
|
+
pl: [padding]
|
|
18170
|
+
}],
|
|
18171
|
+
/**
|
|
18172
|
+
* Margin
|
|
18173
|
+
* @see https://tailwindcss.com/docs/margin
|
|
18174
|
+
*/
|
|
18175
|
+
m: [{
|
|
18176
|
+
m: [margin]
|
|
18177
|
+
}],
|
|
18178
|
+
/**
|
|
18179
|
+
* Margin X
|
|
18180
|
+
* @see https://tailwindcss.com/docs/margin
|
|
18181
|
+
*/
|
|
18182
|
+
mx: [{
|
|
18183
|
+
mx: [margin]
|
|
18184
|
+
}],
|
|
18185
|
+
/**
|
|
18186
|
+
* Margin Y
|
|
18187
|
+
* @see https://tailwindcss.com/docs/margin
|
|
18188
|
+
*/
|
|
18189
|
+
my: [{
|
|
18190
|
+
my: [margin]
|
|
18191
|
+
}],
|
|
18192
|
+
/**
|
|
18193
|
+
* Margin Start
|
|
18194
|
+
* @see https://tailwindcss.com/docs/margin
|
|
18195
|
+
*/
|
|
18196
|
+
ms: [{
|
|
18197
|
+
ms: [margin]
|
|
18198
|
+
}],
|
|
18199
|
+
/**
|
|
18200
|
+
* Margin End
|
|
18201
|
+
* @see https://tailwindcss.com/docs/margin
|
|
18202
|
+
*/
|
|
18203
|
+
me: [{
|
|
18204
|
+
me: [margin]
|
|
18205
|
+
}],
|
|
18206
|
+
/**
|
|
18207
|
+
* Margin Top
|
|
18208
|
+
* @see https://tailwindcss.com/docs/margin
|
|
18209
|
+
*/
|
|
18210
|
+
mt: [{
|
|
18211
|
+
mt: [margin]
|
|
18212
|
+
}],
|
|
18213
|
+
/**
|
|
18214
|
+
* Margin Right
|
|
18215
|
+
* @see https://tailwindcss.com/docs/margin
|
|
18216
|
+
*/
|
|
18217
|
+
mr: [{
|
|
18218
|
+
mr: [margin]
|
|
18219
|
+
}],
|
|
18220
|
+
/**
|
|
18221
|
+
* Margin Bottom
|
|
18222
|
+
* @see https://tailwindcss.com/docs/margin
|
|
18223
|
+
*/
|
|
18224
|
+
mb: [{
|
|
18225
|
+
mb: [margin]
|
|
18226
|
+
}],
|
|
18227
|
+
/**
|
|
18228
|
+
* Margin Left
|
|
18229
|
+
* @see https://tailwindcss.com/docs/margin
|
|
18230
|
+
*/
|
|
18231
|
+
ml: [{
|
|
18232
|
+
ml: [margin]
|
|
18233
|
+
}],
|
|
18234
|
+
/**
|
|
18235
|
+
* Space Between X
|
|
18236
|
+
* @see https://tailwindcss.com/docs/space
|
|
18237
|
+
*/
|
|
18238
|
+
"space-x": [{
|
|
18239
|
+
"space-x": [space]
|
|
18240
|
+
}],
|
|
18241
|
+
/**
|
|
18242
|
+
* Space Between X Reverse
|
|
18243
|
+
* @see https://tailwindcss.com/docs/space
|
|
18244
|
+
*/
|
|
18245
|
+
"space-x-reverse": ["space-x-reverse"],
|
|
18246
|
+
/**
|
|
18247
|
+
* Space Between Y
|
|
18248
|
+
* @see https://tailwindcss.com/docs/space
|
|
18249
|
+
*/
|
|
18250
|
+
"space-y": [{
|
|
18251
|
+
"space-y": [space]
|
|
18252
|
+
}],
|
|
18253
|
+
/**
|
|
18254
|
+
* Space Between Y Reverse
|
|
18255
|
+
* @see https://tailwindcss.com/docs/space
|
|
18256
|
+
*/
|
|
18257
|
+
"space-y-reverse": ["space-y-reverse"],
|
|
18258
|
+
// Sizing
|
|
18259
|
+
/**
|
|
18260
|
+
* Width
|
|
18261
|
+
* @see https://tailwindcss.com/docs/width
|
|
18262
|
+
*/
|
|
18263
|
+
w: [{
|
|
18264
|
+
w: ["auto", "min", "max", "fit", spacing]
|
|
18265
|
+
}],
|
|
18266
|
+
/**
|
|
18267
|
+
* Min-Width
|
|
18268
|
+
* @see https://tailwindcss.com/docs/min-width
|
|
18269
|
+
*/
|
|
18270
|
+
"min-w": [{
|
|
18271
|
+
"min-w": ["min", "max", "fit", isLength]
|
|
18272
|
+
}],
|
|
18273
|
+
/**
|
|
18274
|
+
* Max-Width
|
|
18275
|
+
* @see https://tailwindcss.com/docs/max-width
|
|
18276
|
+
*/
|
|
18277
|
+
"max-w": [{
|
|
18278
|
+
"max-w": ["0", "none", "full", "min", "max", "fit", "prose", {
|
|
18279
|
+
screen: [isTshirtSize]
|
|
18280
|
+
}, isTshirtSize, isArbitraryLength]
|
|
18281
|
+
}],
|
|
18282
|
+
/**
|
|
18283
|
+
* Height
|
|
18284
|
+
* @see https://tailwindcss.com/docs/height
|
|
18285
|
+
*/
|
|
18286
|
+
h: [{
|
|
18287
|
+
h: [spacing, "auto", "min", "max", "fit"]
|
|
18288
|
+
}],
|
|
18289
|
+
/**
|
|
18290
|
+
* Min-Height
|
|
18291
|
+
* @see https://tailwindcss.com/docs/min-height
|
|
18292
|
+
*/
|
|
18293
|
+
"min-h": [{
|
|
18294
|
+
"min-h": ["min", "max", "fit", isLength]
|
|
18295
|
+
}],
|
|
18296
|
+
/**
|
|
18297
|
+
* Max-Height
|
|
18298
|
+
* @see https://tailwindcss.com/docs/max-height
|
|
18299
|
+
*/
|
|
18300
|
+
"max-h": [{
|
|
18301
|
+
"max-h": [spacing, "min", "max", "fit"]
|
|
18302
|
+
}],
|
|
18303
|
+
// Typography
|
|
18304
|
+
/**
|
|
18305
|
+
* Font Size
|
|
18306
|
+
* @see https://tailwindcss.com/docs/font-size
|
|
18307
|
+
*/
|
|
18308
|
+
"font-size": [{
|
|
18309
|
+
text: ["base", isTshirtSize, isArbitraryLength]
|
|
18310
|
+
}],
|
|
18311
|
+
/**
|
|
18312
|
+
* Font Smoothing
|
|
18313
|
+
* @see https://tailwindcss.com/docs/font-smoothing
|
|
18314
|
+
*/
|
|
18315
|
+
"font-smoothing": ["antialiased", "subpixel-antialiased"],
|
|
18316
|
+
/**
|
|
18317
|
+
* Font Style
|
|
18318
|
+
* @see https://tailwindcss.com/docs/font-style
|
|
18319
|
+
*/
|
|
18320
|
+
"font-style": ["italic", "not-italic"],
|
|
18321
|
+
/**
|
|
18322
|
+
* Font Weight
|
|
18323
|
+
* @see https://tailwindcss.com/docs/font-weight
|
|
18324
|
+
*/
|
|
18325
|
+
"font-weight": [{
|
|
18326
|
+
font: ["thin", "extralight", "light", "normal", "medium", "semibold", "bold", "extrabold", "black", isArbitraryNumber]
|
|
18327
|
+
}],
|
|
18328
|
+
/**
|
|
18329
|
+
* Font Family
|
|
18330
|
+
* @see https://tailwindcss.com/docs/font-family
|
|
18331
|
+
*/
|
|
18332
|
+
"font-family": [{
|
|
18333
|
+
font: [isAny]
|
|
18334
|
+
}],
|
|
18335
|
+
/**
|
|
18336
|
+
* Font Variant Numeric
|
|
18337
|
+
* @see https://tailwindcss.com/docs/font-variant-numeric
|
|
18338
|
+
*/
|
|
18339
|
+
"fvn-normal": ["normal-nums"],
|
|
18340
|
+
/**
|
|
18341
|
+
* Font Variant Numeric
|
|
18342
|
+
* @see https://tailwindcss.com/docs/font-variant-numeric
|
|
18343
|
+
*/
|
|
18344
|
+
"fvn-ordinal": ["ordinal"],
|
|
18345
|
+
/**
|
|
18346
|
+
* Font Variant Numeric
|
|
18347
|
+
* @see https://tailwindcss.com/docs/font-variant-numeric
|
|
18348
|
+
*/
|
|
18349
|
+
"fvn-slashed-zero": ["slashed-zero"],
|
|
18350
|
+
/**
|
|
18351
|
+
* Font Variant Numeric
|
|
18352
|
+
* @see https://tailwindcss.com/docs/font-variant-numeric
|
|
18353
|
+
*/
|
|
18354
|
+
"fvn-figure": ["lining-nums", "oldstyle-nums"],
|
|
18355
|
+
/**
|
|
18356
|
+
* Font Variant Numeric
|
|
18357
|
+
* @see https://tailwindcss.com/docs/font-variant-numeric
|
|
18358
|
+
*/
|
|
18359
|
+
"fvn-spacing": ["proportional-nums", "tabular-nums"],
|
|
18360
|
+
/**
|
|
18361
|
+
* Font Variant Numeric
|
|
18362
|
+
* @see https://tailwindcss.com/docs/font-variant-numeric
|
|
18363
|
+
*/
|
|
18364
|
+
"fvn-fraction": ["diagonal-fractions", "stacked-fractons"],
|
|
18365
|
+
/**
|
|
18366
|
+
* Letter Spacing
|
|
18367
|
+
* @see https://tailwindcss.com/docs/letter-spacing
|
|
18368
|
+
*/
|
|
18369
|
+
tracking: [{
|
|
18370
|
+
tracking: ["tighter", "tight", "normal", "wide", "wider", "widest", isArbitraryLength]
|
|
18371
|
+
}],
|
|
18372
|
+
/**
|
|
18373
|
+
* Line Clamp
|
|
18374
|
+
* @see https://tailwindcss.com/docs/line-clamp
|
|
18375
|
+
*/
|
|
18376
|
+
"line-clamp": [{
|
|
18377
|
+
"line-clamp": ["none", isNumber, isArbitraryNumber]
|
|
18378
|
+
}],
|
|
18379
|
+
/**
|
|
18380
|
+
* Line Height
|
|
18381
|
+
* @see https://tailwindcss.com/docs/line-height
|
|
18382
|
+
*/
|
|
18383
|
+
leading: [{
|
|
18384
|
+
leading: ["none", "tight", "snug", "normal", "relaxed", "loose", isLength]
|
|
18385
|
+
}],
|
|
18386
|
+
/**
|
|
18387
|
+
* List Style Image
|
|
18388
|
+
* @see https://tailwindcss.com/docs/list-style-image
|
|
18389
|
+
*/
|
|
18390
|
+
"list-image": [{
|
|
18391
|
+
"list-image": ["none", isArbitraryValue]
|
|
18392
|
+
}],
|
|
18393
|
+
/**
|
|
18394
|
+
* List Style Type
|
|
18395
|
+
* @see https://tailwindcss.com/docs/list-style-type
|
|
18396
|
+
*/
|
|
18397
|
+
"list-style-type": [{
|
|
18398
|
+
list: ["none", "disc", "decimal", isArbitraryValue]
|
|
18399
|
+
}],
|
|
18400
|
+
/**
|
|
18401
|
+
* List Style Position
|
|
18402
|
+
* @see https://tailwindcss.com/docs/list-style-position
|
|
18403
|
+
*/
|
|
18404
|
+
"list-style-position": [{
|
|
18405
|
+
list: ["inside", "outside"]
|
|
18406
|
+
}],
|
|
18407
|
+
/**
|
|
18408
|
+
* Placeholder Color
|
|
18409
|
+
* @deprecated since Tailwind CSS v3.0.0
|
|
18410
|
+
* @see https://tailwindcss.com/docs/placeholder-color
|
|
18411
|
+
*/
|
|
18412
|
+
"placeholder-color": [{
|
|
18413
|
+
placeholder: [colors]
|
|
18414
|
+
}],
|
|
18415
|
+
/**
|
|
18416
|
+
* Placeholder Opacity
|
|
18417
|
+
* @see https://tailwindcss.com/docs/placeholder-opacity
|
|
18418
|
+
*/
|
|
18419
|
+
"placeholder-opacity": [{
|
|
18420
|
+
"placeholder-opacity": [opacity]
|
|
18421
|
+
}],
|
|
18422
|
+
/**
|
|
18423
|
+
* Text Alignment
|
|
18424
|
+
* @see https://tailwindcss.com/docs/text-align
|
|
18425
|
+
*/
|
|
18426
|
+
"text-alignment": [{
|
|
18427
|
+
text: ["left", "center", "right", "justify", "start", "end"]
|
|
18428
|
+
}],
|
|
18429
|
+
/**
|
|
18430
|
+
* Text Color
|
|
18431
|
+
* @see https://tailwindcss.com/docs/text-color
|
|
18432
|
+
*/
|
|
18433
|
+
"text-color": [{
|
|
18434
|
+
text: [colors]
|
|
18435
|
+
}],
|
|
18436
|
+
/**
|
|
18437
|
+
* Text Opacity
|
|
18438
|
+
* @see https://tailwindcss.com/docs/text-opacity
|
|
18439
|
+
*/
|
|
18440
|
+
"text-opacity": [{
|
|
18441
|
+
"text-opacity": [opacity]
|
|
18442
|
+
}],
|
|
18443
|
+
/**
|
|
18444
|
+
* Text Decoration
|
|
18445
|
+
* @see https://tailwindcss.com/docs/text-decoration
|
|
18446
|
+
*/
|
|
18447
|
+
"text-decoration": ["underline", "overline", "line-through", "no-underline"],
|
|
18448
|
+
/**
|
|
18449
|
+
* Text Decoration Style
|
|
18450
|
+
* @see https://tailwindcss.com/docs/text-decoration-style
|
|
18451
|
+
*/
|
|
18452
|
+
"text-decoration-style": [{
|
|
18453
|
+
decoration: [].concat(getLineStyles(), ["wavy"])
|
|
18454
|
+
}],
|
|
18455
|
+
/**
|
|
18456
|
+
* Text Decoration Thickness
|
|
18457
|
+
* @see https://tailwindcss.com/docs/text-decoration-thickness
|
|
18458
|
+
*/
|
|
18459
|
+
"text-decoration-thickness": [{
|
|
18460
|
+
decoration: ["auto", "from-font", isLength]
|
|
18461
|
+
}],
|
|
18462
|
+
/**
|
|
18463
|
+
* Text Underline Offset
|
|
18464
|
+
* @see https://tailwindcss.com/docs/text-underline-offset
|
|
18465
|
+
*/
|
|
18466
|
+
"underline-offset": [{
|
|
18467
|
+
"underline-offset": ["auto", isLength]
|
|
18468
|
+
}],
|
|
18469
|
+
/**
|
|
18470
|
+
* Text Decoration Color
|
|
18471
|
+
* @see https://tailwindcss.com/docs/text-decoration-color
|
|
18472
|
+
*/
|
|
18473
|
+
"text-decoration-color": [{
|
|
18474
|
+
decoration: [colors]
|
|
18475
|
+
}],
|
|
18476
|
+
/**
|
|
18477
|
+
* Text Transform
|
|
18478
|
+
* @see https://tailwindcss.com/docs/text-transform
|
|
18479
|
+
*/
|
|
18480
|
+
"text-transform": ["uppercase", "lowercase", "capitalize", "normal-case"],
|
|
18481
|
+
/**
|
|
18482
|
+
* Text Overflow
|
|
18483
|
+
* @see https://tailwindcss.com/docs/text-overflow
|
|
18484
|
+
*/
|
|
18485
|
+
"text-overflow": ["truncate", "text-ellipsis", "text-clip"],
|
|
18486
|
+
/**
|
|
18487
|
+
* Text Indent
|
|
18488
|
+
* @see https://tailwindcss.com/docs/text-indent
|
|
18489
|
+
*/
|
|
18490
|
+
indent: [{
|
|
18491
|
+
indent: [spacing]
|
|
18492
|
+
}],
|
|
18493
|
+
/**
|
|
18494
|
+
* Vertical Alignment
|
|
18495
|
+
* @see https://tailwindcss.com/docs/vertical-align
|
|
18496
|
+
*/
|
|
18497
|
+
"vertical-align": [{
|
|
18498
|
+
align: ["baseline", "top", "middle", "bottom", "text-top", "text-bottom", "sub", "super", isArbitraryLength]
|
|
18499
|
+
}],
|
|
18500
|
+
/**
|
|
18501
|
+
* Whitespace
|
|
18502
|
+
* @see https://tailwindcss.com/docs/whitespace
|
|
18503
|
+
*/
|
|
18504
|
+
whitespace: [{
|
|
18505
|
+
whitespace: ["normal", "nowrap", "pre", "pre-line", "pre-wrap", "break-spaces"]
|
|
18506
|
+
}],
|
|
18507
|
+
/**
|
|
18508
|
+
* Word Break
|
|
18509
|
+
* @see https://tailwindcss.com/docs/word-break
|
|
18510
|
+
*/
|
|
18511
|
+
"break": [{
|
|
18512
|
+
"break": ["normal", "words", "all", "keep"]
|
|
18513
|
+
}],
|
|
18514
|
+
/**
|
|
18515
|
+
* Hyphens
|
|
18516
|
+
* @see https://tailwindcss.com/docs/hyphens
|
|
18517
|
+
*/
|
|
18518
|
+
hyphens: [{
|
|
18519
|
+
hyphens: ["none", "manual", "auto"]
|
|
18520
|
+
}],
|
|
18521
|
+
/**
|
|
18522
|
+
* Content
|
|
18523
|
+
* @see https://tailwindcss.com/docs/content
|
|
18524
|
+
*/
|
|
18525
|
+
content: [{
|
|
18526
|
+
content: ["none", isArbitraryValue]
|
|
18527
|
+
}],
|
|
18528
|
+
// Backgrounds
|
|
18529
|
+
/**
|
|
18530
|
+
* Background Attachment
|
|
18531
|
+
* @see https://tailwindcss.com/docs/background-attachment
|
|
18532
|
+
*/
|
|
18533
|
+
"bg-attachment": [{
|
|
18534
|
+
bg: ["fixed", "local", "scroll"]
|
|
18535
|
+
}],
|
|
18536
|
+
/**
|
|
18537
|
+
* Background Clip
|
|
18538
|
+
* @see https://tailwindcss.com/docs/background-clip
|
|
18539
|
+
*/
|
|
18540
|
+
"bg-clip": [{
|
|
18541
|
+
"bg-clip": ["border", "padding", "content", "text"]
|
|
18542
|
+
}],
|
|
18543
|
+
/**
|
|
18544
|
+
* Background Opacity
|
|
18545
|
+
* @deprecated since Tailwind CSS v3.0.0
|
|
18546
|
+
* @see https://tailwindcss.com/docs/background-opacity
|
|
18547
|
+
*/
|
|
18548
|
+
"bg-opacity": [{
|
|
18549
|
+
"bg-opacity": [opacity]
|
|
18550
|
+
}],
|
|
18551
|
+
/**
|
|
18552
|
+
* Background Origin
|
|
18553
|
+
* @see https://tailwindcss.com/docs/background-origin
|
|
18554
|
+
*/
|
|
18555
|
+
"bg-origin": [{
|
|
18556
|
+
"bg-origin": ["border", "padding", "content"]
|
|
18557
|
+
}],
|
|
18558
|
+
/**
|
|
18559
|
+
* Background Position
|
|
18560
|
+
* @see https://tailwindcss.com/docs/background-position
|
|
18561
|
+
*/
|
|
18562
|
+
"bg-position": [{
|
|
18563
|
+
bg: [].concat(getPositions(), [isArbitraryPosition])
|
|
18564
|
+
}],
|
|
18565
|
+
/**
|
|
18566
|
+
* Background Repeat
|
|
18567
|
+
* @see https://tailwindcss.com/docs/background-repeat
|
|
18568
|
+
*/
|
|
18569
|
+
"bg-repeat": [{
|
|
18570
|
+
bg: ["no-repeat", {
|
|
18571
|
+
repeat: ["", "x", "y", "round", "space"]
|
|
18572
|
+
}]
|
|
18573
|
+
}],
|
|
18574
|
+
/**
|
|
18575
|
+
* Background Size
|
|
18576
|
+
* @see https://tailwindcss.com/docs/background-size
|
|
18577
|
+
*/
|
|
18578
|
+
"bg-size": [{
|
|
18579
|
+
bg: ["auto", "cover", "contain", isArbitrarySize]
|
|
18580
|
+
}],
|
|
18581
|
+
/**
|
|
18582
|
+
* Background Image
|
|
18583
|
+
* @see https://tailwindcss.com/docs/background-image
|
|
18584
|
+
*/
|
|
18585
|
+
"bg-image": [{
|
|
18586
|
+
bg: ["none", {
|
|
18587
|
+
"gradient-to": ["t", "tr", "r", "br", "b", "bl", "l", "tl"]
|
|
18588
|
+
}, isArbitraryUrl]
|
|
18589
|
+
}],
|
|
18590
|
+
/**
|
|
18591
|
+
* Background Color
|
|
18592
|
+
* @see https://tailwindcss.com/docs/background-color
|
|
18593
|
+
*/
|
|
18594
|
+
"bg-color": [{
|
|
18595
|
+
bg: [colors]
|
|
18596
|
+
}],
|
|
18597
|
+
/**
|
|
18598
|
+
* Gradient Color Stops From Position
|
|
18599
|
+
* @see https://tailwindcss.com/docs/gradient-color-stops
|
|
18600
|
+
*/
|
|
18601
|
+
"gradient-from-pos": [{
|
|
18602
|
+
from: [gradientColorStopPositions]
|
|
18603
|
+
}],
|
|
18604
|
+
/**
|
|
18605
|
+
* Gradient Color Stops Via Position
|
|
18606
|
+
* @see https://tailwindcss.com/docs/gradient-color-stops
|
|
18607
|
+
*/
|
|
18608
|
+
"gradient-via-pos": [{
|
|
18609
|
+
via: [gradientColorStopPositions]
|
|
18610
|
+
}],
|
|
18611
|
+
/**
|
|
18612
|
+
* Gradient Color Stops To Position
|
|
18613
|
+
* @see https://tailwindcss.com/docs/gradient-color-stops
|
|
18614
|
+
*/
|
|
18615
|
+
"gradient-to-pos": [{
|
|
18616
|
+
to: [gradientColorStopPositions]
|
|
18617
|
+
}],
|
|
18618
|
+
/**
|
|
18619
|
+
* Gradient Color Stops From
|
|
18620
|
+
* @see https://tailwindcss.com/docs/gradient-color-stops
|
|
18621
|
+
*/
|
|
18622
|
+
"gradient-from": [{
|
|
18623
|
+
from: [gradientColorStops]
|
|
18624
|
+
}],
|
|
18625
|
+
/**
|
|
18626
|
+
* Gradient Color Stops Via
|
|
18627
|
+
* @see https://tailwindcss.com/docs/gradient-color-stops
|
|
18628
|
+
*/
|
|
18629
|
+
"gradient-via": [{
|
|
18630
|
+
via: [gradientColorStops]
|
|
18631
|
+
}],
|
|
18632
|
+
/**
|
|
18633
|
+
* Gradient Color Stops To
|
|
18634
|
+
* @see https://tailwindcss.com/docs/gradient-color-stops
|
|
18635
|
+
*/
|
|
18636
|
+
"gradient-to": [{
|
|
18637
|
+
to: [gradientColorStops]
|
|
18638
|
+
}],
|
|
18639
|
+
// Borders
|
|
18640
|
+
/**
|
|
18641
|
+
* Border Radius
|
|
18642
|
+
* @see https://tailwindcss.com/docs/border-radius
|
|
18643
|
+
*/
|
|
18644
|
+
rounded: [{
|
|
18645
|
+
rounded: [borderRadius]
|
|
18646
|
+
}],
|
|
18647
|
+
/**
|
|
18648
|
+
* Border Radius Start
|
|
18649
|
+
* @see https://tailwindcss.com/docs/border-radius
|
|
18650
|
+
*/
|
|
18651
|
+
"rounded-s": [{
|
|
18652
|
+
"rounded-s": [borderRadius]
|
|
18653
|
+
}],
|
|
18654
|
+
/**
|
|
18655
|
+
* Border Radius End
|
|
18656
|
+
* @see https://tailwindcss.com/docs/border-radius
|
|
18657
|
+
*/
|
|
18658
|
+
"rounded-e": [{
|
|
18659
|
+
"rounded-e": [borderRadius]
|
|
18660
|
+
}],
|
|
18661
|
+
/**
|
|
18662
|
+
* Border Radius Top
|
|
18663
|
+
* @see https://tailwindcss.com/docs/border-radius
|
|
18664
|
+
*/
|
|
18665
|
+
"rounded-t": [{
|
|
18666
|
+
"rounded-t": [borderRadius]
|
|
18667
|
+
}],
|
|
18668
|
+
/**
|
|
18669
|
+
* Border Radius Right
|
|
18670
|
+
* @see https://tailwindcss.com/docs/border-radius
|
|
18671
|
+
*/
|
|
18672
|
+
"rounded-r": [{
|
|
18673
|
+
"rounded-r": [borderRadius]
|
|
18674
|
+
}],
|
|
18675
|
+
/**
|
|
18676
|
+
* Border Radius Bottom
|
|
18677
|
+
* @see https://tailwindcss.com/docs/border-radius
|
|
18678
|
+
*/
|
|
18679
|
+
"rounded-b": [{
|
|
18680
|
+
"rounded-b": [borderRadius]
|
|
18681
|
+
}],
|
|
18682
|
+
/**
|
|
18683
|
+
* Border Radius Left
|
|
18684
|
+
* @see https://tailwindcss.com/docs/border-radius
|
|
18685
|
+
*/
|
|
18686
|
+
"rounded-l": [{
|
|
18687
|
+
"rounded-l": [borderRadius]
|
|
18688
|
+
}],
|
|
18689
|
+
/**
|
|
18690
|
+
* Border Radius Start Start
|
|
18691
|
+
* @see https://tailwindcss.com/docs/border-radius
|
|
18692
|
+
*/
|
|
18693
|
+
"rounded-ss": [{
|
|
18694
|
+
"rounded-ss": [borderRadius]
|
|
18695
|
+
}],
|
|
18696
|
+
/**
|
|
18697
|
+
* Border Radius Start End
|
|
18698
|
+
* @see https://tailwindcss.com/docs/border-radius
|
|
18699
|
+
*/
|
|
18700
|
+
"rounded-se": [{
|
|
18701
|
+
"rounded-se": [borderRadius]
|
|
18702
|
+
}],
|
|
18703
|
+
/**
|
|
18704
|
+
* Border Radius End End
|
|
18705
|
+
* @see https://tailwindcss.com/docs/border-radius
|
|
18706
|
+
*/
|
|
18707
|
+
"rounded-ee": [{
|
|
18708
|
+
"rounded-ee": [borderRadius]
|
|
18709
|
+
}],
|
|
18710
|
+
/**
|
|
18711
|
+
* Border Radius End Start
|
|
18712
|
+
* @see https://tailwindcss.com/docs/border-radius
|
|
18713
|
+
*/
|
|
18714
|
+
"rounded-es": [{
|
|
18715
|
+
"rounded-es": [borderRadius]
|
|
18716
|
+
}],
|
|
18717
|
+
/**
|
|
18718
|
+
* Border Radius Top Left
|
|
18719
|
+
* @see https://tailwindcss.com/docs/border-radius
|
|
18720
|
+
*/
|
|
18721
|
+
"rounded-tl": [{
|
|
18722
|
+
"rounded-tl": [borderRadius]
|
|
18723
|
+
}],
|
|
18724
|
+
/**
|
|
18725
|
+
* Border Radius Top Right
|
|
18726
|
+
* @see https://tailwindcss.com/docs/border-radius
|
|
18727
|
+
*/
|
|
18728
|
+
"rounded-tr": [{
|
|
18729
|
+
"rounded-tr": [borderRadius]
|
|
18730
|
+
}],
|
|
18731
|
+
/**
|
|
18732
|
+
* Border Radius Bottom Right
|
|
18733
|
+
* @see https://tailwindcss.com/docs/border-radius
|
|
18734
|
+
*/
|
|
18735
|
+
"rounded-br": [{
|
|
18736
|
+
"rounded-br": [borderRadius]
|
|
18737
|
+
}],
|
|
18738
|
+
/**
|
|
18739
|
+
* Border Radius Bottom Left
|
|
18740
|
+
* @see https://tailwindcss.com/docs/border-radius
|
|
18741
|
+
*/
|
|
18742
|
+
"rounded-bl": [{
|
|
18743
|
+
"rounded-bl": [borderRadius]
|
|
18744
|
+
}],
|
|
18745
|
+
/**
|
|
18746
|
+
* Border Width
|
|
18747
|
+
* @see https://tailwindcss.com/docs/border-width
|
|
18748
|
+
*/
|
|
18749
|
+
"border-w": [{
|
|
18750
|
+
border: [borderWidth]
|
|
18751
|
+
}],
|
|
18752
|
+
/**
|
|
18753
|
+
* Border Width X
|
|
18754
|
+
* @see https://tailwindcss.com/docs/border-width
|
|
18755
|
+
*/
|
|
18756
|
+
"border-w-x": [{
|
|
18757
|
+
"border-x": [borderWidth]
|
|
18758
|
+
}],
|
|
18759
|
+
/**
|
|
18760
|
+
* Border Width Y
|
|
18761
|
+
* @see https://tailwindcss.com/docs/border-width
|
|
18762
|
+
*/
|
|
18763
|
+
"border-w-y": [{
|
|
18764
|
+
"border-y": [borderWidth]
|
|
18765
|
+
}],
|
|
18766
|
+
/**
|
|
18767
|
+
* Border Width Start
|
|
18768
|
+
* @see https://tailwindcss.com/docs/border-width
|
|
18769
|
+
*/
|
|
18770
|
+
"border-w-s": [{
|
|
18771
|
+
"border-s": [borderWidth]
|
|
18772
|
+
}],
|
|
18773
|
+
/**
|
|
18774
|
+
* Border Width End
|
|
18775
|
+
* @see https://tailwindcss.com/docs/border-width
|
|
18776
|
+
*/
|
|
18777
|
+
"border-w-e": [{
|
|
18778
|
+
"border-e": [borderWidth]
|
|
18779
|
+
}],
|
|
18780
|
+
/**
|
|
18781
|
+
* Border Width Top
|
|
18782
|
+
* @see https://tailwindcss.com/docs/border-width
|
|
18783
|
+
*/
|
|
18784
|
+
"border-w-t": [{
|
|
18785
|
+
"border-t": [borderWidth]
|
|
18786
|
+
}],
|
|
18787
|
+
/**
|
|
18788
|
+
* Border Width Right
|
|
18789
|
+
* @see https://tailwindcss.com/docs/border-width
|
|
18790
|
+
*/
|
|
18791
|
+
"border-w-r": [{
|
|
18792
|
+
"border-r": [borderWidth]
|
|
18793
|
+
}],
|
|
18794
|
+
/**
|
|
18795
|
+
* Border Width Bottom
|
|
18796
|
+
* @see https://tailwindcss.com/docs/border-width
|
|
18797
|
+
*/
|
|
18798
|
+
"border-w-b": [{
|
|
18799
|
+
"border-b": [borderWidth]
|
|
18800
|
+
}],
|
|
18801
|
+
/**
|
|
18802
|
+
* Border Width Left
|
|
18803
|
+
* @see https://tailwindcss.com/docs/border-width
|
|
18804
|
+
*/
|
|
18805
|
+
"border-w-l": [{
|
|
18806
|
+
"border-l": [borderWidth]
|
|
18807
|
+
}],
|
|
18808
|
+
/**
|
|
18809
|
+
* Border Opacity
|
|
18810
|
+
* @see https://tailwindcss.com/docs/border-opacity
|
|
18811
|
+
*/
|
|
18812
|
+
"border-opacity": [{
|
|
18813
|
+
"border-opacity": [opacity]
|
|
18814
|
+
}],
|
|
18815
|
+
/**
|
|
18816
|
+
* Border Style
|
|
18817
|
+
* @see https://tailwindcss.com/docs/border-style
|
|
18818
|
+
*/
|
|
18819
|
+
"border-style": [{
|
|
18820
|
+
border: [].concat(getLineStyles(), ["hidden"])
|
|
18821
|
+
}],
|
|
18822
|
+
/**
|
|
18823
|
+
* Divide Width X
|
|
18824
|
+
* @see https://tailwindcss.com/docs/divide-width
|
|
18825
|
+
*/
|
|
18826
|
+
"divide-x": [{
|
|
18827
|
+
"divide-x": [borderWidth]
|
|
18828
|
+
}],
|
|
18829
|
+
/**
|
|
18830
|
+
* Divide Width X Reverse
|
|
18831
|
+
* @see https://tailwindcss.com/docs/divide-width
|
|
18832
|
+
*/
|
|
18833
|
+
"divide-x-reverse": ["divide-x-reverse"],
|
|
18834
|
+
/**
|
|
18835
|
+
* Divide Width Y
|
|
18836
|
+
* @see https://tailwindcss.com/docs/divide-width
|
|
18837
|
+
*/
|
|
18838
|
+
"divide-y": [{
|
|
18839
|
+
"divide-y": [borderWidth]
|
|
18840
|
+
}],
|
|
18841
|
+
/**
|
|
18842
|
+
* Divide Width Y Reverse
|
|
18843
|
+
* @see https://tailwindcss.com/docs/divide-width
|
|
18844
|
+
*/
|
|
18845
|
+
"divide-y-reverse": ["divide-y-reverse"],
|
|
18846
|
+
/**
|
|
18847
|
+
* Divide Opacity
|
|
18848
|
+
* @see https://tailwindcss.com/docs/divide-opacity
|
|
18849
|
+
*/
|
|
18850
|
+
"divide-opacity": [{
|
|
18851
|
+
"divide-opacity": [opacity]
|
|
18852
|
+
}],
|
|
18853
|
+
/**
|
|
18854
|
+
* Divide Style
|
|
18855
|
+
* @see https://tailwindcss.com/docs/divide-style
|
|
18856
|
+
*/
|
|
18857
|
+
"divide-style": [{
|
|
18858
|
+
divide: getLineStyles()
|
|
18859
|
+
}],
|
|
18860
|
+
/**
|
|
18861
|
+
* Border Color
|
|
18862
|
+
* @see https://tailwindcss.com/docs/border-color
|
|
18863
|
+
*/
|
|
18864
|
+
"border-color": [{
|
|
18865
|
+
border: [borderColor]
|
|
18866
|
+
}],
|
|
18867
|
+
/**
|
|
18868
|
+
* Border Color X
|
|
18869
|
+
* @see https://tailwindcss.com/docs/border-color
|
|
18870
|
+
*/
|
|
18871
|
+
"border-color-x": [{
|
|
18872
|
+
"border-x": [borderColor]
|
|
18873
|
+
}],
|
|
18874
|
+
/**
|
|
18875
|
+
* Border Color Y
|
|
18876
|
+
* @see https://tailwindcss.com/docs/border-color
|
|
18877
|
+
*/
|
|
18878
|
+
"border-color-y": [{
|
|
18879
|
+
"border-y": [borderColor]
|
|
18880
|
+
}],
|
|
18881
|
+
/**
|
|
18882
|
+
* Border Color Top
|
|
18883
|
+
* @see https://tailwindcss.com/docs/border-color
|
|
18884
|
+
*/
|
|
18885
|
+
"border-color-t": [{
|
|
18886
|
+
"border-t": [borderColor]
|
|
18887
|
+
}],
|
|
18888
|
+
/**
|
|
18889
|
+
* Border Color Right
|
|
18890
|
+
* @see https://tailwindcss.com/docs/border-color
|
|
18891
|
+
*/
|
|
18892
|
+
"border-color-r": [{
|
|
18893
|
+
"border-r": [borderColor]
|
|
18894
|
+
}],
|
|
18895
|
+
/**
|
|
18896
|
+
* Border Color Bottom
|
|
18897
|
+
* @see https://tailwindcss.com/docs/border-color
|
|
18898
|
+
*/
|
|
18899
|
+
"border-color-b": [{
|
|
18900
|
+
"border-b": [borderColor]
|
|
18901
|
+
}],
|
|
18902
|
+
/**
|
|
18903
|
+
* Border Color Left
|
|
18904
|
+
* @see https://tailwindcss.com/docs/border-color
|
|
18905
|
+
*/
|
|
18906
|
+
"border-color-l": [{
|
|
18907
|
+
"border-l": [borderColor]
|
|
18908
|
+
}],
|
|
18909
|
+
/**
|
|
18910
|
+
* Divide Color
|
|
18911
|
+
* @see https://tailwindcss.com/docs/divide-color
|
|
18912
|
+
*/
|
|
18913
|
+
"divide-color": [{
|
|
18914
|
+
divide: [borderColor]
|
|
18915
|
+
}],
|
|
18916
|
+
/**
|
|
18917
|
+
* Outline Style
|
|
18918
|
+
* @see https://tailwindcss.com/docs/outline-style
|
|
18919
|
+
*/
|
|
18920
|
+
"outline-style": [{
|
|
18921
|
+
outline: [""].concat(getLineStyles())
|
|
18922
|
+
}],
|
|
18923
|
+
/**
|
|
18924
|
+
* Outline Offset
|
|
18925
|
+
* @see https://tailwindcss.com/docs/outline-offset
|
|
18926
|
+
*/
|
|
18927
|
+
"outline-offset": [{
|
|
18928
|
+
"outline-offset": [isLength]
|
|
18929
|
+
}],
|
|
18930
|
+
/**
|
|
18931
|
+
* Outline Width
|
|
18932
|
+
* @see https://tailwindcss.com/docs/outline-width
|
|
18933
|
+
*/
|
|
18934
|
+
"outline-w": [{
|
|
18935
|
+
outline: [isLength]
|
|
18936
|
+
}],
|
|
18937
|
+
/**
|
|
18938
|
+
* Outline Color
|
|
18939
|
+
* @see https://tailwindcss.com/docs/outline-color
|
|
18940
|
+
*/
|
|
18941
|
+
"outline-color": [{
|
|
18942
|
+
outline: [colors]
|
|
18943
|
+
}],
|
|
18944
|
+
/**
|
|
18945
|
+
* Ring Width
|
|
18946
|
+
* @see https://tailwindcss.com/docs/ring-width
|
|
18947
|
+
*/
|
|
18948
|
+
"ring-w": [{
|
|
18949
|
+
ring: getLengthWithEmpty()
|
|
18950
|
+
}],
|
|
18951
|
+
/**
|
|
18952
|
+
* Ring Width Inset
|
|
18953
|
+
* @see https://tailwindcss.com/docs/ring-width
|
|
18954
|
+
*/
|
|
18955
|
+
"ring-w-inset": ["ring-inset"],
|
|
18956
|
+
/**
|
|
18957
|
+
* Ring Color
|
|
18958
|
+
* @see https://tailwindcss.com/docs/ring-color
|
|
18959
|
+
*/
|
|
18960
|
+
"ring-color": [{
|
|
18961
|
+
ring: [colors]
|
|
18962
|
+
}],
|
|
18963
|
+
/**
|
|
18964
|
+
* Ring Opacity
|
|
18965
|
+
* @see https://tailwindcss.com/docs/ring-opacity
|
|
18966
|
+
*/
|
|
18967
|
+
"ring-opacity": [{
|
|
18968
|
+
"ring-opacity": [opacity]
|
|
18969
|
+
}],
|
|
18970
|
+
/**
|
|
18971
|
+
* Ring Offset Width
|
|
18972
|
+
* @see https://tailwindcss.com/docs/ring-offset-width
|
|
18973
|
+
*/
|
|
18974
|
+
"ring-offset-w": [{
|
|
18975
|
+
"ring-offset": [isLength]
|
|
18976
|
+
}],
|
|
18977
|
+
/**
|
|
18978
|
+
* Ring Offset Color
|
|
18979
|
+
* @see https://tailwindcss.com/docs/ring-offset-color
|
|
18980
|
+
*/
|
|
18981
|
+
"ring-offset-color": [{
|
|
18982
|
+
"ring-offset": [colors]
|
|
18983
|
+
}],
|
|
18984
|
+
// Effects
|
|
18985
|
+
/**
|
|
18986
|
+
* Box Shadow
|
|
18987
|
+
* @see https://tailwindcss.com/docs/box-shadow
|
|
18988
|
+
*/
|
|
18989
|
+
shadow: [{
|
|
18990
|
+
shadow: ["", "inner", "none", isTshirtSize, isArbitraryShadow]
|
|
18991
|
+
}],
|
|
18992
|
+
/**
|
|
18993
|
+
* Box Shadow Color
|
|
18994
|
+
* @see https://tailwindcss.com/docs/box-shadow-color
|
|
18995
|
+
*/
|
|
18996
|
+
"shadow-color": [{
|
|
18997
|
+
shadow: [isAny]
|
|
18998
|
+
}],
|
|
18999
|
+
/**
|
|
19000
|
+
* Opacity
|
|
19001
|
+
* @see https://tailwindcss.com/docs/opacity
|
|
19002
|
+
*/
|
|
19003
|
+
opacity: [{
|
|
19004
|
+
opacity: [opacity]
|
|
19005
|
+
}],
|
|
19006
|
+
/**
|
|
19007
|
+
* Mix Beldn Mode
|
|
19008
|
+
* @see https://tailwindcss.com/docs/mix-blend-mode
|
|
19009
|
+
*/
|
|
19010
|
+
"mix-blend": [{
|
|
19011
|
+
"mix-blend": getBlendModes()
|
|
19012
|
+
}],
|
|
19013
|
+
/**
|
|
19014
|
+
* Background Blend Mode
|
|
19015
|
+
* @see https://tailwindcss.com/docs/background-blend-mode
|
|
19016
|
+
*/
|
|
19017
|
+
"bg-blend": [{
|
|
19018
|
+
"bg-blend": getBlendModes()
|
|
19019
|
+
}],
|
|
19020
|
+
// Filters
|
|
19021
|
+
/**
|
|
19022
|
+
* Filter
|
|
19023
|
+
* @deprecated since Tailwind CSS v3.0.0
|
|
19024
|
+
* @see https://tailwindcss.com/docs/filter
|
|
19025
|
+
*/
|
|
19026
|
+
filter: [{
|
|
19027
|
+
filter: ["", "none"]
|
|
19028
|
+
}],
|
|
19029
|
+
/**
|
|
19030
|
+
* Blur
|
|
19031
|
+
* @see https://tailwindcss.com/docs/blur
|
|
19032
|
+
*/
|
|
19033
|
+
blur: [{
|
|
19034
|
+
blur: [blur]
|
|
19035
|
+
}],
|
|
19036
|
+
/**
|
|
19037
|
+
* Brightness
|
|
19038
|
+
* @see https://tailwindcss.com/docs/brightness
|
|
19039
|
+
*/
|
|
19040
|
+
brightness: [{
|
|
19041
|
+
brightness: [brightness]
|
|
19042
|
+
}],
|
|
19043
|
+
/**
|
|
19044
|
+
* Contrast
|
|
19045
|
+
* @see https://tailwindcss.com/docs/contrast
|
|
19046
|
+
*/
|
|
19047
|
+
contrast: [{
|
|
19048
|
+
contrast: [contrast]
|
|
19049
|
+
}],
|
|
19050
|
+
/**
|
|
19051
|
+
* Drop Shadow
|
|
19052
|
+
* @see https://tailwindcss.com/docs/drop-shadow
|
|
19053
|
+
*/
|
|
19054
|
+
"drop-shadow": [{
|
|
19055
|
+
"drop-shadow": ["", "none", isTshirtSize, isArbitraryValue]
|
|
19056
|
+
}],
|
|
19057
|
+
/**
|
|
19058
|
+
* Grayscale
|
|
19059
|
+
* @see https://tailwindcss.com/docs/grayscale
|
|
19060
|
+
*/
|
|
19061
|
+
grayscale: [{
|
|
19062
|
+
grayscale: [grayscale]
|
|
19063
|
+
}],
|
|
19064
|
+
/**
|
|
19065
|
+
* Hue Rotate
|
|
19066
|
+
* @see https://tailwindcss.com/docs/hue-rotate
|
|
19067
|
+
*/
|
|
19068
|
+
"hue-rotate": [{
|
|
19069
|
+
"hue-rotate": [hueRotate]
|
|
19070
|
+
}],
|
|
19071
|
+
/**
|
|
19072
|
+
* Invert
|
|
19073
|
+
* @see https://tailwindcss.com/docs/invert
|
|
19074
|
+
*/
|
|
19075
|
+
invert: [{
|
|
19076
|
+
invert: [invert]
|
|
19077
|
+
}],
|
|
19078
|
+
/**
|
|
19079
|
+
* Saturate
|
|
19080
|
+
* @see https://tailwindcss.com/docs/saturate
|
|
19081
|
+
*/
|
|
19082
|
+
saturate: [{
|
|
19083
|
+
saturate: [saturate]
|
|
19084
|
+
}],
|
|
19085
|
+
/**
|
|
19086
|
+
* Sepia
|
|
19087
|
+
* @see https://tailwindcss.com/docs/sepia
|
|
19088
|
+
*/
|
|
19089
|
+
sepia: [{
|
|
19090
|
+
sepia: [sepia]
|
|
19091
|
+
}],
|
|
19092
|
+
/**
|
|
19093
|
+
* Backdrop Filter
|
|
19094
|
+
* @deprecated since Tailwind CSS v3.0.0
|
|
19095
|
+
* @see https://tailwindcss.com/docs/backdrop-filter
|
|
19096
|
+
*/
|
|
19097
|
+
"backdrop-filter": [{
|
|
19098
|
+
"backdrop-filter": ["", "none"]
|
|
19099
|
+
}],
|
|
19100
|
+
/**
|
|
19101
|
+
* Backdrop Blur
|
|
19102
|
+
* @see https://tailwindcss.com/docs/backdrop-blur
|
|
19103
|
+
*/
|
|
19104
|
+
"backdrop-blur": [{
|
|
19105
|
+
"backdrop-blur": [blur]
|
|
19106
|
+
}],
|
|
19107
|
+
/**
|
|
19108
|
+
* Backdrop Brightness
|
|
19109
|
+
* @see https://tailwindcss.com/docs/backdrop-brightness
|
|
19110
|
+
*/
|
|
19111
|
+
"backdrop-brightness": [{
|
|
19112
|
+
"backdrop-brightness": [brightness]
|
|
19113
|
+
}],
|
|
19114
|
+
/**
|
|
19115
|
+
* Backdrop Contrast
|
|
19116
|
+
* @see https://tailwindcss.com/docs/backdrop-contrast
|
|
19117
|
+
*/
|
|
19118
|
+
"backdrop-contrast": [{
|
|
19119
|
+
"backdrop-contrast": [contrast]
|
|
19120
|
+
}],
|
|
19121
|
+
/**
|
|
19122
|
+
* Backdrop Grayscale
|
|
19123
|
+
* @see https://tailwindcss.com/docs/backdrop-grayscale
|
|
19124
|
+
*/
|
|
19125
|
+
"backdrop-grayscale": [{
|
|
19126
|
+
"backdrop-grayscale": [grayscale]
|
|
19127
|
+
}],
|
|
19128
|
+
/**
|
|
19129
|
+
* Backdrop Hue Rotate
|
|
19130
|
+
* @see https://tailwindcss.com/docs/backdrop-hue-rotate
|
|
19131
|
+
*/
|
|
19132
|
+
"backdrop-hue-rotate": [{
|
|
19133
|
+
"backdrop-hue-rotate": [hueRotate]
|
|
19134
|
+
}],
|
|
19135
|
+
/**
|
|
19136
|
+
* Backdrop Invert
|
|
19137
|
+
* @see https://tailwindcss.com/docs/backdrop-invert
|
|
19138
|
+
*/
|
|
19139
|
+
"backdrop-invert": [{
|
|
19140
|
+
"backdrop-invert": [invert]
|
|
19141
|
+
}],
|
|
19142
|
+
/**
|
|
19143
|
+
* Backdrop Opacity
|
|
19144
|
+
* @see https://tailwindcss.com/docs/backdrop-opacity
|
|
19145
|
+
*/
|
|
19146
|
+
"backdrop-opacity": [{
|
|
19147
|
+
"backdrop-opacity": [opacity]
|
|
19148
|
+
}],
|
|
19149
|
+
/**
|
|
19150
|
+
* Backdrop Saturate
|
|
19151
|
+
* @see https://tailwindcss.com/docs/backdrop-saturate
|
|
19152
|
+
*/
|
|
19153
|
+
"backdrop-saturate": [{
|
|
19154
|
+
"backdrop-saturate": [saturate]
|
|
19155
|
+
}],
|
|
19156
|
+
/**
|
|
19157
|
+
* Backdrop Sepia
|
|
19158
|
+
* @see https://tailwindcss.com/docs/backdrop-sepia
|
|
19159
|
+
*/
|
|
19160
|
+
"backdrop-sepia": [{
|
|
19161
|
+
"backdrop-sepia": [sepia]
|
|
19162
|
+
}],
|
|
19163
|
+
// Tables
|
|
19164
|
+
/**
|
|
19165
|
+
* Border Collapse
|
|
19166
|
+
* @see https://tailwindcss.com/docs/border-collapse
|
|
19167
|
+
*/
|
|
19168
|
+
"border-collapse": [{
|
|
19169
|
+
border: ["collapse", "separate"]
|
|
19170
|
+
}],
|
|
19171
|
+
/**
|
|
19172
|
+
* Border Spacing
|
|
19173
|
+
* @see https://tailwindcss.com/docs/border-spacing
|
|
19174
|
+
*/
|
|
19175
|
+
"border-spacing": [{
|
|
19176
|
+
"border-spacing": [borderSpacing]
|
|
19177
|
+
}],
|
|
19178
|
+
/**
|
|
19179
|
+
* Border Spacing X
|
|
19180
|
+
* @see https://tailwindcss.com/docs/border-spacing
|
|
19181
|
+
*/
|
|
19182
|
+
"border-spacing-x": [{
|
|
19183
|
+
"border-spacing-x": [borderSpacing]
|
|
19184
|
+
}],
|
|
19185
|
+
/**
|
|
19186
|
+
* Border Spacing Y
|
|
19187
|
+
* @see https://tailwindcss.com/docs/border-spacing
|
|
19188
|
+
*/
|
|
19189
|
+
"border-spacing-y": [{
|
|
19190
|
+
"border-spacing-y": [borderSpacing]
|
|
19191
|
+
}],
|
|
19192
|
+
/**
|
|
19193
|
+
* Table Layout
|
|
19194
|
+
* @see https://tailwindcss.com/docs/table-layout
|
|
19195
|
+
*/
|
|
19196
|
+
"table-layout": [{
|
|
19197
|
+
table: ["auto", "fixed"]
|
|
19198
|
+
}],
|
|
19199
|
+
/**
|
|
19200
|
+
* Caption Side
|
|
19201
|
+
* @see https://tailwindcss.com/docs/caption-side
|
|
19202
|
+
*/
|
|
19203
|
+
caption: [{
|
|
19204
|
+
caption: ["top", "bottom"]
|
|
19205
|
+
}],
|
|
19206
|
+
// Transitions and Animation
|
|
19207
|
+
/**
|
|
19208
|
+
* Tranisition Property
|
|
19209
|
+
* @see https://tailwindcss.com/docs/transition-property
|
|
19210
|
+
*/
|
|
19211
|
+
transition: [{
|
|
19212
|
+
transition: ["none", "all", "", "colors", "opacity", "shadow", "transform", isArbitraryValue]
|
|
19213
|
+
}],
|
|
19214
|
+
/**
|
|
19215
|
+
* Transition Duration
|
|
19216
|
+
* @see https://tailwindcss.com/docs/transition-duration
|
|
19217
|
+
*/
|
|
19218
|
+
duration: [{
|
|
19219
|
+
duration: getNumberAndArbitrary()
|
|
19220
|
+
}],
|
|
19221
|
+
/**
|
|
19222
|
+
* Transition Timing Function
|
|
19223
|
+
* @see https://tailwindcss.com/docs/transition-timing-function
|
|
19224
|
+
*/
|
|
19225
|
+
ease: [{
|
|
19226
|
+
ease: ["linear", "in", "out", "in-out", isArbitraryValue]
|
|
19227
|
+
}],
|
|
19228
|
+
/**
|
|
19229
|
+
* Transition Delay
|
|
19230
|
+
* @see https://tailwindcss.com/docs/transition-delay
|
|
19231
|
+
*/
|
|
19232
|
+
delay: [{
|
|
19233
|
+
delay: getNumberAndArbitrary()
|
|
19234
|
+
}],
|
|
19235
|
+
/**
|
|
19236
|
+
* Animation
|
|
19237
|
+
* @see https://tailwindcss.com/docs/animation
|
|
19238
|
+
*/
|
|
19239
|
+
animate: [{
|
|
19240
|
+
animate: ["none", "spin", "ping", "pulse", "bounce", isArbitraryValue]
|
|
19241
|
+
}],
|
|
19242
|
+
// Transforms
|
|
19243
|
+
/**
|
|
19244
|
+
* Transform
|
|
19245
|
+
* @see https://tailwindcss.com/docs/transform
|
|
19246
|
+
*/
|
|
19247
|
+
transform: [{
|
|
19248
|
+
transform: ["", "gpu", "none"]
|
|
19249
|
+
}],
|
|
19250
|
+
/**
|
|
19251
|
+
* Scale
|
|
19252
|
+
* @see https://tailwindcss.com/docs/scale
|
|
19253
|
+
*/
|
|
19254
|
+
scale: [{
|
|
19255
|
+
scale: [scale]
|
|
19256
|
+
}],
|
|
19257
|
+
/**
|
|
19258
|
+
* Scale X
|
|
19259
|
+
* @see https://tailwindcss.com/docs/scale
|
|
19260
|
+
*/
|
|
19261
|
+
"scale-x": [{
|
|
19262
|
+
"scale-x": [scale]
|
|
19263
|
+
}],
|
|
19264
|
+
/**
|
|
19265
|
+
* Scale Y
|
|
19266
|
+
* @see https://tailwindcss.com/docs/scale
|
|
19267
|
+
*/
|
|
19268
|
+
"scale-y": [{
|
|
19269
|
+
"scale-y": [scale]
|
|
19270
|
+
}],
|
|
19271
|
+
/**
|
|
19272
|
+
* Rotate
|
|
19273
|
+
* @see https://tailwindcss.com/docs/rotate
|
|
19274
|
+
*/
|
|
19275
|
+
rotate: [{
|
|
19276
|
+
rotate: [isInteger, isArbitraryValue]
|
|
19277
|
+
}],
|
|
19278
|
+
/**
|
|
19279
|
+
* Translate X
|
|
19280
|
+
* @see https://tailwindcss.com/docs/translate
|
|
19281
|
+
*/
|
|
19282
|
+
"translate-x": [{
|
|
19283
|
+
"translate-x": [translate]
|
|
19284
|
+
}],
|
|
19285
|
+
/**
|
|
19286
|
+
* Translate Y
|
|
19287
|
+
* @see https://tailwindcss.com/docs/translate
|
|
19288
|
+
*/
|
|
19289
|
+
"translate-y": [{
|
|
19290
|
+
"translate-y": [translate]
|
|
19291
|
+
}],
|
|
19292
|
+
/**
|
|
19293
|
+
* Skew X
|
|
19294
|
+
* @see https://tailwindcss.com/docs/skew
|
|
19295
|
+
*/
|
|
19296
|
+
"skew-x": [{
|
|
19297
|
+
"skew-x": [skew]
|
|
19298
|
+
}],
|
|
19299
|
+
/**
|
|
19300
|
+
* Skew Y
|
|
19301
|
+
* @see https://tailwindcss.com/docs/skew
|
|
19302
|
+
*/
|
|
19303
|
+
"skew-y": [{
|
|
19304
|
+
"skew-y": [skew]
|
|
19305
|
+
}],
|
|
19306
|
+
/**
|
|
19307
|
+
* Transform Origin
|
|
19308
|
+
* @see https://tailwindcss.com/docs/transform-origin
|
|
19309
|
+
*/
|
|
19310
|
+
"transform-origin": [{
|
|
19311
|
+
origin: ["center", "top", "top-right", "right", "bottom-right", "bottom", "bottom-left", "left", "top-left", isArbitraryValue]
|
|
19312
|
+
}],
|
|
19313
|
+
// Interactivity
|
|
19314
|
+
/**
|
|
19315
|
+
* Accent Color
|
|
19316
|
+
* @see https://tailwindcss.com/docs/accent-color
|
|
19317
|
+
*/
|
|
19318
|
+
accent: [{
|
|
19319
|
+
accent: ["auto", colors]
|
|
19320
|
+
}],
|
|
19321
|
+
/**
|
|
19322
|
+
* Appearance
|
|
19323
|
+
* @see https://tailwindcss.com/docs/appearance
|
|
19324
|
+
*/
|
|
19325
|
+
appearance: ["appearance-none"],
|
|
19326
|
+
/**
|
|
19327
|
+
* Cursor
|
|
19328
|
+
* @see https://tailwindcss.com/docs/cursor
|
|
19329
|
+
*/
|
|
19330
|
+
cursor: [{
|
|
19331
|
+
cursor: ["auto", "default", "pointer", "wait", "text", "move", "help", "not-allowed", "none", "context-menu", "progress", "cell", "crosshair", "vertical-text", "alias", "copy", "no-drop", "grab", "grabbing", "all-scroll", "col-resize", "row-resize", "n-resize", "e-resize", "s-resize", "w-resize", "ne-resize", "nw-resize", "se-resize", "sw-resize", "ew-resize", "ns-resize", "nesw-resize", "nwse-resize", "zoom-in", "zoom-out", isArbitraryValue]
|
|
19332
|
+
}],
|
|
19333
|
+
/**
|
|
19334
|
+
* Caret Color
|
|
19335
|
+
* @see https://tailwindcss.com/docs/just-in-time-mode#caret-color-utilities
|
|
19336
|
+
*/
|
|
19337
|
+
"caret-color": [{
|
|
19338
|
+
caret: [colors]
|
|
19339
|
+
}],
|
|
19340
|
+
/**
|
|
19341
|
+
* Pointer Events
|
|
19342
|
+
* @see https://tailwindcss.com/docs/pointer-events
|
|
19343
|
+
*/
|
|
19344
|
+
"pointer-events": [{
|
|
19345
|
+
"pointer-events": ["none", "auto"]
|
|
19346
|
+
}],
|
|
19347
|
+
/**
|
|
19348
|
+
* Resize
|
|
19349
|
+
* @see https://tailwindcss.com/docs/resize
|
|
19350
|
+
*/
|
|
19351
|
+
resize: [{
|
|
19352
|
+
resize: ["none", "y", "x", ""]
|
|
19353
|
+
}],
|
|
19354
|
+
/**
|
|
19355
|
+
* Scroll Behavior
|
|
19356
|
+
* @see https://tailwindcss.com/docs/scroll-behavior
|
|
19357
|
+
*/
|
|
19358
|
+
"scroll-behavior": [{
|
|
19359
|
+
scroll: ["auto", "smooth"]
|
|
19360
|
+
}],
|
|
19361
|
+
/**
|
|
19362
|
+
* Scroll Margin
|
|
19363
|
+
* @see https://tailwindcss.com/docs/scroll-margin
|
|
19364
|
+
*/
|
|
19365
|
+
"scroll-m": [{
|
|
19366
|
+
"scroll-m": [spacing]
|
|
19367
|
+
}],
|
|
19368
|
+
/**
|
|
19369
|
+
* Scroll Margin X
|
|
19370
|
+
* @see https://tailwindcss.com/docs/scroll-margin
|
|
19371
|
+
*/
|
|
19372
|
+
"scroll-mx": [{
|
|
19373
|
+
"scroll-mx": [spacing]
|
|
19374
|
+
}],
|
|
19375
|
+
/**
|
|
19376
|
+
* Scroll Margin Y
|
|
19377
|
+
* @see https://tailwindcss.com/docs/scroll-margin
|
|
19378
|
+
*/
|
|
19379
|
+
"scroll-my": [{
|
|
19380
|
+
"scroll-my": [spacing]
|
|
19381
|
+
}],
|
|
19382
|
+
/**
|
|
19383
|
+
* Scroll Margin Start
|
|
19384
|
+
* @see https://tailwindcss.com/docs/scroll-margin
|
|
19385
|
+
*/
|
|
19386
|
+
"scroll-ms": [{
|
|
19387
|
+
"scroll-ms": [spacing]
|
|
19388
|
+
}],
|
|
19389
|
+
/**
|
|
19390
|
+
* Scroll Margin End
|
|
19391
|
+
* @see https://tailwindcss.com/docs/scroll-margin
|
|
19392
|
+
*/
|
|
19393
|
+
"scroll-me": [{
|
|
19394
|
+
"scroll-me": [spacing]
|
|
19395
|
+
}],
|
|
19396
|
+
/**
|
|
19397
|
+
* Scroll Margin Top
|
|
19398
|
+
* @see https://tailwindcss.com/docs/scroll-margin
|
|
19399
|
+
*/
|
|
19400
|
+
"scroll-mt": [{
|
|
19401
|
+
"scroll-mt": [spacing]
|
|
19402
|
+
}],
|
|
19403
|
+
/**
|
|
19404
|
+
* Scroll Margin Right
|
|
19405
|
+
* @see https://tailwindcss.com/docs/scroll-margin
|
|
19406
|
+
*/
|
|
19407
|
+
"scroll-mr": [{
|
|
19408
|
+
"scroll-mr": [spacing]
|
|
19409
|
+
}],
|
|
19410
|
+
/**
|
|
19411
|
+
* Scroll Margin Bottom
|
|
19412
|
+
* @see https://tailwindcss.com/docs/scroll-margin
|
|
19413
|
+
*/
|
|
19414
|
+
"scroll-mb": [{
|
|
19415
|
+
"scroll-mb": [spacing]
|
|
19416
|
+
}],
|
|
19417
|
+
/**
|
|
19418
|
+
* Scroll Margin Left
|
|
19419
|
+
* @see https://tailwindcss.com/docs/scroll-margin
|
|
19420
|
+
*/
|
|
19421
|
+
"scroll-ml": [{
|
|
19422
|
+
"scroll-ml": [spacing]
|
|
19423
|
+
}],
|
|
19424
|
+
/**
|
|
19425
|
+
* Scroll Padding
|
|
19426
|
+
* @see https://tailwindcss.com/docs/scroll-padding
|
|
19427
|
+
*/
|
|
19428
|
+
"scroll-p": [{
|
|
19429
|
+
"scroll-p": [spacing]
|
|
19430
|
+
}],
|
|
19431
|
+
/**
|
|
19432
|
+
* Scroll Padding X
|
|
19433
|
+
* @see https://tailwindcss.com/docs/scroll-padding
|
|
19434
|
+
*/
|
|
19435
|
+
"scroll-px": [{
|
|
19436
|
+
"scroll-px": [spacing]
|
|
19437
|
+
}],
|
|
19438
|
+
/**
|
|
19439
|
+
* Scroll Padding Y
|
|
19440
|
+
* @see https://tailwindcss.com/docs/scroll-padding
|
|
19441
|
+
*/
|
|
19442
|
+
"scroll-py": [{
|
|
19443
|
+
"scroll-py": [spacing]
|
|
19444
|
+
}],
|
|
19445
|
+
/**
|
|
19446
|
+
* Scroll Padding Start
|
|
19447
|
+
* @see https://tailwindcss.com/docs/scroll-padding
|
|
19448
|
+
*/
|
|
19449
|
+
"scroll-ps": [{
|
|
19450
|
+
"scroll-ps": [spacing]
|
|
19451
|
+
}],
|
|
19452
|
+
/**
|
|
19453
|
+
* Scroll Padding End
|
|
19454
|
+
* @see https://tailwindcss.com/docs/scroll-padding
|
|
19455
|
+
*/
|
|
19456
|
+
"scroll-pe": [{
|
|
19457
|
+
"scroll-pe": [spacing]
|
|
19458
|
+
}],
|
|
19459
|
+
/**
|
|
19460
|
+
* Scroll Padding Top
|
|
19461
|
+
* @see https://tailwindcss.com/docs/scroll-padding
|
|
19462
|
+
*/
|
|
19463
|
+
"scroll-pt": [{
|
|
19464
|
+
"scroll-pt": [spacing]
|
|
19465
|
+
}],
|
|
19466
|
+
/**
|
|
19467
|
+
* Scroll Padding Right
|
|
19468
|
+
* @see https://tailwindcss.com/docs/scroll-padding
|
|
19469
|
+
*/
|
|
19470
|
+
"scroll-pr": [{
|
|
19471
|
+
"scroll-pr": [spacing]
|
|
19472
|
+
}],
|
|
19473
|
+
/**
|
|
19474
|
+
* Scroll Padding Bottom
|
|
19475
|
+
* @see https://tailwindcss.com/docs/scroll-padding
|
|
19476
|
+
*/
|
|
19477
|
+
"scroll-pb": [{
|
|
19478
|
+
"scroll-pb": [spacing]
|
|
19479
|
+
}],
|
|
19480
|
+
/**
|
|
19481
|
+
* Scroll Padding Left
|
|
19482
|
+
* @see https://tailwindcss.com/docs/scroll-padding
|
|
19483
|
+
*/
|
|
19484
|
+
"scroll-pl": [{
|
|
19485
|
+
"scroll-pl": [spacing]
|
|
19486
|
+
}],
|
|
19487
|
+
/**
|
|
19488
|
+
* Scroll Snap Align
|
|
19489
|
+
* @see https://tailwindcss.com/docs/scroll-snap-align
|
|
19490
|
+
*/
|
|
19491
|
+
"snap-align": [{
|
|
19492
|
+
snap: ["start", "end", "center", "align-none"]
|
|
19493
|
+
}],
|
|
19494
|
+
/**
|
|
19495
|
+
* Scroll Snap Stop
|
|
19496
|
+
* @see https://tailwindcss.com/docs/scroll-snap-stop
|
|
19497
|
+
*/
|
|
19498
|
+
"snap-stop": [{
|
|
19499
|
+
snap: ["normal", "always"]
|
|
19500
|
+
}],
|
|
19501
|
+
/**
|
|
19502
|
+
* Scroll Snap Type
|
|
19503
|
+
* @see https://tailwindcss.com/docs/scroll-snap-type
|
|
19504
|
+
*/
|
|
19505
|
+
"snap-type": [{
|
|
19506
|
+
snap: ["none", "x", "y", "both"]
|
|
19507
|
+
}],
|
|
19508
|
+
/**
|
|
19509
|
+
* Scroll Snap Type Strictness
|
|
19510
|
+
* @see https://tailwindcss.com/docs/scroll-snap-type
|
|
19511
|
+
*/
|
|
19512
|
+
"snap-strictness": [{
|
|
19513
|
+
snap: ["mandatory", "proximity"]
|
|
19514
|
+
}],
|
|
19515
|
+
/**
|
|
19516
|
+
* Touch Action
|
|
19517
|
+
* @see https://tailwindcss.com/docs/touch-action
|
|
19518
|
+
*/
|
|
19519
|
+
touch: [{
|
|
19520
|
+
touch: ["auto", "none", "pinch-zoom", "manipulation", {
|
|
19521
|
+
pan: ["x", "left", "right", "y", "up", "down"]
|
|
19522
|
+
}]
|
|
19523
|
+
}],
|
|
19524
|
+
/**
|
|
19525
|
+
* User Select
|
|
19526
|
+
* @see https://tailwindcss.com/docs/user-select
|
|
19527
|
+
*/
|
|
19528
|
+
select: [{
|
|
19529
|
+
select: ["none", "text", "all", "auto"]
|
|
19530
|
+
}],
|
|
19531
|
+
/**
|
|
19532
|
+
* Will Change
|
|
19533
|
+
* @see https://tailwindcss.com/docs/will-change
|
|
19534
|
+
*/
|
|
19535
|
+
"will-change": [{
|
|
19536
|
+
"will-change": ["auto", "scroll", "contents", "transform", isArbitraryValue]
|
|
19537
|
+
}],
|
|
19538
|
+
// SVG
|
|
19539
|
+
/**
|
|
19540
|
+
* Fill
|
|
19541
|
+
* @see https://tailwindcss.com/docs/fill
|
|
19542
|
+
*/
|
|
19543
|
+
fill: [{
|
|
19544
|
+
fill: [colors, "none"]
|
|
19545
|
+
}],
|
|
19546
|
+
/**
|
|
19547
|
+
* Stroke Width
|
|
19548
|
+
* @see https://tailwindcss.com/docs/stroke-width
|
|
19549
|
+
*/
|
|
19550
|
+
"stroke-w": [{
|
|
19551
|
+
stroke: [isLength, isArbitraryNumber]
|
|
19552
|
+
}],
|
|
19553
|
+
/**
|
|
19554
|
+
* Stroke
|
|
19555
|
+
* @see https://tailwindcss.com/docs/stroke
|
|
19556
|
+
*/
|
|
19557
|
+
stroke: [{
|
|
19558
|
+
stroke: [colors, "none"]
|
|
19559
|
+
}],
|
|
19560
|
+
// Accessibility
|
|
19561
|
+
/**
|
|
19562
|
+
* Screen Readers
|
|
19563
|
+
* @see https://tailwindcss.com/docs/screen-readers
|
|
19564
|
+
*/
|
|
19565
|
+
sr: ["sr-only", "not-sr-only"]
|
|
19566
|
+
},
|
|
19567
|
+
conflictingClassGroups: {
|
|
19568
|
+
overflow: ["overflow-x", "overflow-y"],
|
|
19569
|
+
overscroll: ["overscroll-x", "overscroll-y"],
|
|
19570
|
+
inset: ["inset-x", "inset-y", "start", "end", "top", "right", "bottom", "left"],
|
|
19571
|
+
"inset-x": ["right", "left"],
|
|
19572
|
+
"inset-y": ["top", "bottom"],
|
|
19573
|
+
flex: ["basis", "grow", "shrink"],
|
|
19574
|
+
gap: ["gap-x", "gap-y"],
|
|
19575
|
+
p: ["px", "py", "ps", "pe", "pt", "pr", "pb", "pl"],
|
|
19576
|
+
px: ["pr", "pl"],
|
|
19577
|
+
py: ["pt", "pb"],
|
|
19578
|
+
m: ["mx", "my", "ms", "me", "mt", "mr", "mb", "ml"],
|
|
19579
|
+
mx: ["mr", "ml"],
|
|
19580
|
+
my: ["mt", "mb"],
|
|
19581
|
+
"font-size": ["leading"],
|
|
19582
|
+
"fvn-normal": ["fvn-ordinal", "fvn-slashed-zero", "fvn-figure", "fvn-spacing", "fvn-fraction"],
|
|
19583
|
+
"fvn-ordinal": ["fvn-normal"],
|
|
19584
|
+
"fvn-slashed-zero": ["fvn-normal"],
|
|
19585
|
+
"fvn-figure": ["fvn-normal"],
|
|
19586
|
+
"fvn-spacing": ["fvn-normal"],
|
|
19587
|
+
"fvn-fraction": ["fvn-normal"],
|
|
19588
|
+
rounded: ["rounded-s", "rounded-e", "rounded-t", "rounded-r", "rounded-b", "rounded-l", "rounded-ss", "rounded-se", "rounded-ee", "rounded-es", "rounded-tl", "rounded-tr", "rounded-br", "rounded-bl"],
|
|
19589
|
+
"rounded-s": ["rounded-ss", "rounded-es"],
|
|
19590
|
+
"rounded-e": ["rounded-se", "rounded-ee"],
|
|
19591
|
+
"rounded-t": ["rounded-tl", "rounded-tr"],
|
|
19592
|
+
"rounded-r": ["rounded-tr", "rounded-br"],
|
|
19593
|
+
"rounded-b": ["rounded-br", "rounded-bl"],
|
|
19594
|
+
"rounded-l": ["rounded-tl", "rounded-bl"],
|
|
19595
|
+
"border-spacing": ["border-spacing-x", "border-spacing-y"],
|
|
19596
|
+
"border-w": ["border-w-s", "border-w-e", "border-w-t", "border-w-r", "border-w-b", "border-w-l"],
|
|
19597
|
+
"border-w-x": ["border-w-r", "border-w-l"],
|
|
19598
|
+
"border-w-y": ["border-w-t", "border-w-b"],
|
|
19599
|
+
"border-color": ["border-color-t", "border-color-r", "border-color-b", "border-color-l"],
|
|
19600
|
+
"border-color-x": ["border-color-r", "border-color-l"],
|
|
19601
|
+
"border-color-y": ["border-color-t", "border-color-b"],
|
|
19602
|
+
"scroll-m": ["scroll-mx", "scroll-my", "scroll-ms", "scroll-me", "scroll-mt", "scroll-mr", "scroll-mb", "scroll-ml"],
|
|
19603
|
+
"scroll-mx": ["scroll-mr", "scroll-ml"],
|
|
19604
|
+
"scroll-my": ["scroll-mt", "scroll-mb"],
|
|
19605
|
+
"scroll-p": ["scroll-px", "scroll-py", "scroll-ps", "scroll-pe", "scroll-pt", "scroll-pr", "scroll-pb", "scroll-pl"],
|
|
19606
|
+
"scroll-px": ["scroll-pr", "scroll-pl"],
|
|
19607
|
+
"scroll-py": ["scroll-pt", "scroll-pb"]
|
|
19608
|
+
},
|
|
19609
|
+
conflictingClassGroupModifiers: {
|
|
19610
|
+
"font-size": ["leading"]
|
|
19611
|
+
}
|
|
19612
|
+
};
|
|
19613
|
+
}
|
|
19614
|
+
|
|
19615
|
+
// ../../node_modules/tailwind-merge/dist/lib/tw-merge.mjs
|
|
19616
|
+
var twMerge = /* @__PURE__ */ createTailwindMerge(getDefaultConfig);
|
|
19617
|
+
|
|
19618
|
+
// src/Components/Generic/Map/MapControlToolbar.tsx
|
|
19619
|
+
var import_jsx_runtime80 = require("react/jsx-runtime");
|
|
19620
|
+
function cn2(...inputs) {
|
|
19621
|
+
return twMerge(clsx(inputs));
|
|
19622
|
+
}
|
|
19623
|
+
var POSITION_CLASSES3 = {
|
|
19624
|
+
topleft: "absolute top-4 left-4",
|
|
19625
|
+
topright: "absolute top-4 right-4",
|
|
19626
|
+
bottomleft: "absolute bottom-4 left-4",
|
|
19627
|
+
bottomright: "absolute bottom-4 right-4"
|
|
19628
|
+
};
|
|
19629
|
+
var getDefaultDirection = (position) => {
|
|
19630
|
+
switch (position) {
|
|
19631
|
+
case "topleft":
|
|
19632
|
+
case "bottomleft":
|
|
19633
|
+
return "right";
|
|
19634
|
+
case "topright":
|
|
19635
|
+
case "bottomright":
|
|
19636
|
+
return "left";
|
|
19637
|
+
default:
|
|
19638
|
+
return "right";
|
|
19639
|
+
}
|
|
19640
|
+
};
|
|
19641
|
+
var MapControlToolbar = ({
|
|
19642
|
+
controls,
|
|
19643
|
+
onToggleControl
|
|
19644
|
+
}) => {
|
|
19645
|
+
return /* @__PURE__ */ (0, import_jsx_runtime80.jsx)(import_ui45.TooltipProvider, { children: /* @__PURE__ */ (0, import_jsx_runtime80.jsx)("div", { className: "pointer-events-none", children: Object.entries(controls.reduce((acc, control) => {
|
|
19646
|
+
var _a, _b;
|
|
19647
|
+
const position = (_a = control.position) != null ? _a : "topright";
|
|
19648
|
+
acc[position] = (_b = acc[position]) != null ? _b : [];
|
|
19649
|
+
acc[position].push(control);
|
|
19650
|
+
return acc;
|
|
19651
|
+
}, {})).map(([position, items]) => /* @__PURE__ */ (0, import_jsx_runtime80.jsx)("div", { className: cn2(POSITION_CLASSES3[position], "pointer-events-auto"), children: items.map((control) => {
|
|
19652
|
+
var _a;
|
|
19653
|
+
const Icon3 = control.icon;
|
|
19654
|
+
const popoverDirection = control.popoverDirection || getDefaultDirection((_a = control.position) != null ? _a : "topright");
|
|
19655
|
+
if (control.isDisplayOnly) {
|
|
19656
|
+
return /* @__PURE__ */ (0, import_jsx_runtime80.jsx)(
|
|
19657
|
+
"div",
|
|
19658
|
+
{
|
|
19659
|
+
className: "pointer-events-auto",
|
|
19660
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime80.jsx)(Icon3, { className: "w-6 h-6" })
|
|
19661
|
+
},
|
|
19662
|
+
control.id
|
|
19663
|
+
);
|
|
19664
|
+
}
|
|
19665
|
+
if (control.onClick && !control.panel) {
|
|
19666
|
+
return /* @__PURE__ */ (0, import_jsx_runtime80.jsx)(
|
|
19667
|
+
"div",
|
|
19668
|
+
{
|
|
19669
|
+
className: "pointer-events-auto",
|
|
19670
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime80.jsxs)(import_ui45.Tooltip, { delayDuration: 100, children: [
|
|
19671
|
+
/* @__PURE__ */ (0, import_jsx_runtime80.jsx)(import_ui45.TooltipTrigger, { asChild: true, children: /* @__PURE__ */ (0, import_jsx_runtime80.jsx)(
|
|
19672
|
+
"button",
|
|
19673
|
+
{
|
|
19674
|
+
onClick: control.onClick,
|
|
19675
|
+
className: "p-[11px] w-12 h-12 flex justify-center items-center rounded-full shadow-xl transition-colors bg-white hover:bg-gray-50 text-gray-700",
|
|
19676
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime80.jsx)(Icon3, { className: "w-6 h-6" })
|
|
19677
|
+
}
|
|
19678
|
+
) }),
|
|
19679
|
+
/* @__PURE__ */ (0, import_jsx_runtime80.jsx)(
|
|
19680
|
+
import_ui45.TooltipContent,
|
|
19681
|
+
{
|
|
19682
|
+
side: "right",
|
|
19683
|
+
className: "bg-secondary font-semibold text-foreground",
|
|
19684
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime80.jsx)("p", { children: control.title })
|
|
19685
|
+
}
|
|
19686
|
+
)
|
|
19687
|
+
] })
|
|
19688
|
+
},
|
|
19689
|
+
control.id
|
|
19690
|
+
);
|
|
19691
|
+
}
|
|
19692
|
+
return /* @__PURE__ */ (0, import_jsx_runtime80.jsx)(
|
|
19693
|
+
"div",
|
|
19694
|
+
{
|
|
19695
|
+
className: "pointer-events-auto",
|
|
19696
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime80.jsxs)(Popover7.Root, { open: control.isOpen, children: [
|
|
19697
|
+
/* @__PURE__ */ (0, import_jsx_runtime80.jsxs)(import_ui45.Tooltip, { delayDuration: 100, children: [
|
|
19698
|
+
/* @__PURE__ */ (0, import_jsx_runtime80.jsx)(Popover7.Trigger, { asChild: true, children: /* @__PURE__ */ (0, import_jsx_runtime80.jsx)(import_ui45.TooltipTrigger, { asChild: true, children: /* @__PURE__ */ (0, import_jsx_runtime80.jsx)(
|
|
19699
|
+
"button",
|
|
19700
|
+
{
|
|
19701
|
+
onClick: () => onToggleControl(control.id),
|
|
19702
|
+
className: cn2(
|
|
19703
|
+
"p-[11px] w-12 h-12 flex justify-center items-center rounded-full shadow-xl transition-colors",
|
|
19704
|
+
control.isOpen ? "bg-primary text-white" : "bg-white hover:bg-gray-50 text-gray-700"
|
|
19705
|
+
),
|
|
19706
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime80.jsx)(Icon3, { className: "w-6 h-6" })
|
|
19707
|
+
}
|
|
19708
|
+
) }) }),
|
|
19709
|
+
/* @__PURE__ */ (0, import_jsx_runtime80.jsx)(
|
|
19710
|
+
import_ui45.TooltipContent,
|
|
19711
|
+
{
|
|
19712
|
+
side: "right",
|
|
19713
|
+
className: "bg-secondary font-semibold text-foreground",
|
|
19714
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime80.jsx)("p", { children: control.title })
|
|
19715
|
+
}
|
|
19716
|
+
)
|
|
19717
|
+
] }),
|
|
19718
|
+
control.panel ? /* @__PURE__ */ (0, import_jsx_runtime80.jsx)(Popover7.Portal, { children: /* @__PURE__ */ (0, import_jsx_runtime80.jsxs)(
|
|
19719
|
+
Popover7.Content,
|
|
19720
|
+
{
|
|
19721
|
+
className: "bg-white p-4 rounded-lg shadow-lg min-w-[250px] z-[10] max-w-[380px] hidden lg:block",
|
|
19722
|
+
side: popoverDirection,
|
|
19723
|
+
align: control.position === "bottomright" ? "end" : "start",
|
|
19724
|
+
sideOffset: 5,
|
|
19725
|
+
children: [
|
|
19726
|
+
control.panel,
|
|
19727
|
+
/* @__PURE__ */ (0, import_jsx_runtime80.jsx)(Popover7.Arrow, { className: "fill-white" })
|
|
19728
|
+
]
|
|
19729
|
+
}
|
|
19730
|
+
) }) : null
|
|
19731
|
+
] })
|
|
19732
|
+
},
|
|
19733
|
+
control.id
|
|
19734
|
+
);
|
|
19735
|
+
}) }, position)) }) });
|
|
19736
|
+
};
|
|
19737
|
+
MapControlToolbar.displayName = "MapControlToolbar";
|
|
19738
|
+
|
|
19739
|
+
// src/Components/Map/MapLibre.tsx
|
|
19740
|
+
var import_ui46 = require("@geowiki/ui");
|
|
19741
|
+
var import_jsx_runtime81 = require("react/jsx-runtime");
|
|
19742
|
+
var MapLibre = (0, import_react67.forwardRef)(({ baseLayers, customLayers, mapControls, sourceData }, ref) => {
|
|
16686
19743
|
const mapContainer = ref;
|
|
16687
|
-
const mapRef = (0,
|
|
16688
|
-
console.log(customLayers);
|
|
19744
|
+
const mapRef = (0, import_react66.useRef)(null);
|
|
16689
19745
|
const changeMapProjection = () => {
|
|
16690
19746
|
var _a;
|
|
16691
19747
|
if (!mapRef.current)
|
|
@@ -16697,7 +19753,112 @@ var MapLibre = (0, import_react63.forwardRef)(({ baseLayers, customLayers, mapCo
|
|
|
16697
19753
|
type: newProjection
|
|
16698
19754
|
});
|
|
16699
19755
|
};
|
|
16700
|
-
|
|
19756
|
+
const zoomIn = () => {
|
|
19757
|
+
if (!mapRef.current)
|
|
19758
|
+
return;
|
|
19759
|
+
const map = mapRef.current;
|
|
19760
|
+
map.zoomIn();
|
|
19761
|
+
};
|
|
19762
|
+
const zoomOut = () => {
|
|
19763
|
+
if (!mapRef.current)
|
|
19764
|
+
return;
|
|
19765
|
+
const map = mapRef.current;
|
|
19766
|
+
map.zoomOut();
|
|
19767
|
+
};
|
|
19768
|
+
function getLayersByPattern(map, pattern) {
|
|
19769
|
+
return map.getStyle().layers.filter((layer) => pattern.test(layer.id)).map((layer) => layer.id);
|
|
19770
|
+
}
|
|
19771
|
+
const handleToggle = (layerId) => {
|
|
19772
|
+
if (!mapRef.current)
|
|
19773
|
+
return;
|
|
19774
|
+
const map = mapRef.current;
|
|
19775
|
+
const layers = getLayersByPattern(map, new RegExp(layerId));
|
|
19776
|
+
layers.forEach((id) => {
|
|
19777
|
+
const visibility = map.getLayoutProperty(id, "visibility");
|
|
19778
|
+
const newVisibility = visibility === "none" ? "visible" : "none";
|
|
19779
|
+
map.setLayoutProperty(id, "visibility", newVisibility);
|
|
19780
|
+
});
|
|
19781
|
+
};
|
|
19782
|
+
const buildControls = (controls) => {
|
|
19783
|
+
return controls.map((c) => {
|
|
19784
|
+
switch (c.type) {
|
|
19785
|
+
case "projection":
|
|
19786
|
+
return {
|
|
19787
|
+
id: "projection",
|
|
19788
|
+
title: "Change Projection",
|
|
19789
|
+
icon: import_ui46.GlobeIcon,
|
|
19790
|
+
onClick: changeMapProjection,
|
|
19791
|
+
position: "topright",
|
|
19792
|
+
isOpen: true,
|
|
19793
|
+
isDisplayOnly: false,
|
|
19794
|
+
popoverDirection: "right",
|
|
19795
|
+
isMobileFilter: true
|
|
19796
|
+
};
|
|
19797
|
+
case "zoom":
|
|
19798
|
+
return [
|
|
19799
|
+
{
|
|
19800
|
+
id: "zoomIn",
|
|
19801
|
+
icon: import_ui46.PlusIcon,
|
|
19802
|
+
onClick: zoomIn,
|
|
19803
|
+
position: "topright",
|
|
19804
|
+
isOpen: true,
|
|
19805
|
+
isDisplayOnly: false,
|
|
19806
|
+
popoverDirection: "right",
|
|
19807
|
+
isMobileFilter: true
|
|
19808
|
+
},
|
|
19809
|
+
{
|
|
19810
|
+
id: "zoomOut",
|
|
19811
|
+
icon: import_ui46.MinusIcon,
|
|
19812
|
+
onClick: zoomOut,
|
|
19813
|
+
position: "topright",
|
|
19814
|
+
isOpen: true,
|
|
19815
|
+
isDisplayOnly: false,
|
|
19816
|
+
popoverDirection: "right",
|
|
19817
|
+
isMobileFilter: true
|
|
19818
|
+
}
|
|
19819
|
+
];
|
|
19820
|
+
case "toggle_layers":
|
|
19821
|
+
let custom_layers = customLayers == null ? void 0 : customLayers.map((l) => __spreadProps(__spreadValues({}, l), {
|
|
19822
|
+
ontoggle: () => handleToggle(l.id)
|
|
19823
|
+
}));
|
|
19824
|
+
return {
|
|
19825
|
+
id: "overlay",
|
|
19826
|
+
icon: import_ui46.LayerGroupIcon,
|
|
19827
|
+
panel: /* @__PURE__ */ (0, import_jsx_runtime81.jsx)(
|
|
19828
|
+
LayerSwitcher2,
|
|
19829
|
+
{
|
|
19830
|
+
mapMenuItems: [
|
|
19831
|
+
{
|
|
19832
|
+
MapMenuItem: {},
|
|
19833
|
+
Layers: [],
|
|
19834
|
+
Title: ""
|
|
19835
|
+
}
|
|
19836
|
+
],
|
|
19837
|
+
customLayers: custom_layers
|
|
19838
|
+
}
|
|
19839
|
+
),
|
|
19840
|
+
position: "topleft",
|
|
19841
|
+
isOpen: false,
|
|
19842
|
+
isDisplayOnly: false,
|
|
19843
|
+
popoverDirection: "right",
|
|
19844
|
+
isMobileFilter: true
|
|
19845
|
+
};
|
|
19846
|
+
default:
|
|
19847
|
+
return null;
|
|
19848
|
+
}
|
|
19849
|
+
}).flat();
|
|
19850
|
+
};
|
|
19851
|
+
const [mapControl, setMapControl] = (0, import_react66.useState)(() => buildControls(mapControls));
|
|
19852
|
+
console.log(mapControl);
|
|
19853
|
+
const toggleControl = (id) => {
|
|
19854
|
+
setMapControl((prevControls) => prevControls.map((control) => {
|
|
19855
|
+
if (control.id === id) {
|
|
19856
|
+
return __spreadProps(__spreadValues({}, control), { isOpen: !control.isOpen });
|
|
19857
|
+
}
|
|
19858
|
+
return control;
|
|
19859
|
+
}));
|
|
19860
|
+
};
|
|
19861
|
+
(0, import_react66.useEffect)(() => {
|
|
16701
19862
|
if (typeof mapContainer === "function")
|
|
16702
19863
|
return;
|
|
16703
19864
|
if (!(mapContainer == null ? void 0 : mapContainer.current))
|
|
@@ -16739,7 +19900,7 @@ var MapLibre = (0, import_react63.forwardRef)(({ baseLayers, customLayers, mapCo
|
|
|
16739
19900
|
function loadSvgImage() {
|
|
16740
19901
|
return __async(this, null, function* () {
|
|
16741
19902
|
let svgText = (0, import_server8.renderToStaticMarkup)(
|
|
16742
|
-
/* @__PURE__ */ (0,
|
|
19903
|
+
/* @__PURE__ */ (0, import_jsx_runtime81.jsx)(import_MapPinIcon4.default, { className: "w-6 h-6" })
|
|
16743
19904
|
);
|
|
16744
19905
|
svgText = svgText.replace('fill="currentColor"', 'fill="#06b6d4"');
|
|
16745
19906
|
const img = new Image();
|
|
@@ -16835,7 +19996,10 @@ var MapLibre = (0, import_react63.forwardRef)(({ baseLayers, customLayers, mapCo
|
|
|
16835
19996
|
}, [sourceData, mapControls]);
|
|
16836
19997
|
if (!sourceData)
|
|
16837
19998
|
return;
|
|
16838
|
-
return /* @__PURE__ */ (0,
|
|
19999
|
+
return /* @__PURE__ */ (0, import_jsx_runtime81.jsxs)("div", { className: "relative", style: { width: "100%", height: "100vh" }, children: [
|
|
20000
|
+
/* @__PURE__ */ (0, import_jsx_runtime81.jsx)("div", { ref: mapContainer, className: "w-full h-full" }),
|
|
20001
|
+
/* @__PURE__ */ (0, import_jsx_runtime81.jsx)(MapControlToolbar, { controls: mapControl, onToggleControl: (id) => toggleControl(id) })
|
|
20002
|
+
] });
|
|
16839
20003
|
});
|
|
16840
20004
|
// Annotate the CommonJS export names for ESM import in node:
|
|
16841
20005
|
0 && (module.exports = {
|