@salesmind-ai/design-system 0.1.12 → 0.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.cjs +362 -693
- package/dist/index.cjs.map +1 -1
- package/dist/index.css +213 -222
- package/dist/index.css.map +1 -1
- package/dist/index.d.cts +1 -37
- package/dist/index.d.ts +1 -37
- package/dist/index.js +364 -689
- package/dist/index.js.map +1 -1
- package/dist/styles/styles.css +40 -2
- package/dist/web/index.cjs +37 -24
- package/dist/web/index.cjs.map +1 -1
- package/dist/web/index.css +17 -0
- package/dist/web/index.css.map +1 -1
- package/dist/web/index.d.cts +6 -2
- package/dist/web/index.d.ts +6 -2
- package/dist/web/index.js +37 -24
- package/dist/web/index.js.map +1 -1
- package/package.json +1 -1
package/dist/styles/styles.css
CHANGED
|
@@ -2865,7 +2865,10 @@ a:hover {
|
|
|
2865
2865
|
align-items: center;
|
|
2866
2866
|
color: var(--text-tertiary);
|
|
2867
2867
|
flex-shrink: 0;
|
|
2868
|
-
transition: color var(--transition-fast);
|
|
2868
|
+
transition: transform 0.2s cubic-bezier(0.2, 0.8, 0.2, 1), color var(--transition-fast);
|
|
2869
|
+
}
|
|
2870
|
+
.ds-locale-dropdown__trigger-chevron[data-state=open] {
|
|
2871
|
+
transform: rotate(180deg);
|
|
2869
2872
|
}
|
|
2870
2873
|
.ds-locale-dropdown__trigger:hover .ds-locale-dropdown__trigger-chevron {
|
|
2871
2874
|
color: var(--text-secondary);
|
|
@@ -2885,12 +2888,33 @@ a:hover {
|
|
|
2885
2888
|
border: 1px solid var(--rim-light-bottom);
|
|
2886
2889
|
border-radius: var(--radius-card);
|
|
2887
2890
|
box-shadow: var(--shadow-xl), 0 0 0 1px var(--rim-light-bottom);
|
|
2891
|
+
opacity: 0;
|
|
2892
|
+
transform: translateY(-8px) scale(0.95);
|
|
2893
|
+
visibility: hidden;
|
|
2894
|
+
pointer-events: none;
|
|
2895
|
+
transition:
|
|
2896
|
+
opacity 0.15s cubic-bezier(0.4, 0, 1, 1),
|
|
2897
|
+
transform 0.15s cubic-bezier(0.4, 0, 1, 1),
|
|
2898
|
+
visibility 0s 0.15s;
|
|
2899
|
+
}
|
|
2900
|
+
.ds-locale-dropdown__panel[data-state=open] {
|
|
2901
|
+
opacity: 1;
|
|
2902
|
+
transform: translateY(0) scale(1);
|
|
2903
|
+
visibility: visible;
|
|
2904
|
+
pointer-events: auto;
|
|
2905
|
+
transition:
|
|
2906
|
+
opacity 0.2s cubic-bezier(0.2, 0.8, 0.2, 1),
|
|
2907
|
+
transform 0.2s cubic-bezier(0.2, 0.8, 0.2, 1),
|
|
2908
|
+
visibility 0s 0s;
|
|
2888
2909
|
}
|
|
2889
2910
|
.ds-locale-dropdown--up .ds-locale-dropdown__panel {
|
|
2890
2911
|
top: auto;
|
|
2891
2912
|
bottom: calc(100% + var(--space-2));
|
|
2892
2913
|
transform-origin: bottom right;
|
|
2893
2914
|
}
|
|
2915
|
+
.ds-locale-dropdown--up .ds-locale-dropdown__panel[data-state=closed] {
|
|
2916
|
+
transform: translateY(8px) scale(0.95);
|
|
2917
|
+
}
|
|
2894
2918
|
.ds-locale-dropdown--align-left .ds-locale-dropdown__panel {
|
|
2895
2919
|
right: auto;
|
|
2896
2920
|
left: 0;
|
|
@@ -2899,15 +2923,23 @@ a:hover {
|
|
|
2899
2923
|
.ds-locale-dropdown--align-center .ds-locale-dropdown__panel {
|
|
2900
2924
|
right: auto;
|
|
2901
2925
|
left: 50%;
|
|
2902
|
-
transform: translateX(-50%);
|
|
2903
2926
|
transform-origin: top center;
|
|
2904
2927
|
}
|
|
2928
|
+
.ds-locale-dropdown--align-center .ds-locale-dropdown__panel[data-state=closed] {
|
|
2929
|
+
transform: translateX(-50%) translateY(-8px) scale(0.95);
|
|
2930
|
+
}
|
|
2931
|
+
.ds-locale-dropdown--align-center .ds-locale-dropdown__panel[data-state=open] {
|
|
2932
|
+
transform: translateX(-50%) translateY(0) scale(1);
|
|
2933
|
+
}
|
|
2905
2934
|
.ds-locale-dropdown--up.ds-locale-dropdown--align-left .ds-locale-dropdown__panel {
|
|
2906
2935
|
transform-origin: bottom left;
|
|
2907
2936
|
}
|
|
2908
2937
|
.ds-locale-dropdown--up.ds-locale-dropdown--align-center .ds-locale-dropdown__panel {
|
|
2909
2938
|
transform-origin: bottom center;
|
|
2910
2939
|
}
|
|
2940
|
+
.ds-locale-dropdown--up.ds-locale-dropdown--align-center .ds-locale-dropdown__panel[data-state=closed] {
|
|
2941
|
+
transform: translateX(-50%) translateY(8px) scale(0.95);
|
|
2942
|
+
}
|
|
2911
2943
|
.ds-locale-dropdown__panel::before {
|
|
2912
2944
|
content: "";
|
|
2913
2945
|
position: absolute;
|
|
@@ -3004,6 +3036,12 @@ a:hover {
|
|
|
3004
3036
|
.ds-locale-dropdown__trigger {
|
|
3005
3037
|
transition: none;
|
|
3006
3038
|
}
|
|
3039
|
+
.ds-locale-dropdown__trigger-chevron {
|
|
3040
|
+
transition: none;
|
|
3041
|
+
}
|
|
3042
|
+
.ds-locale-dropdown__panel {
|
|
3043
|
+
transition: none;
|
|
3044
|
+
}
|
|
3007
3045
|
.ds-locale-dropdown__option {
|
|
3008
3046
|
transition: none;
|
|
3009
3047
|
}
|
package/dist/web/index.cjs
CHANGED
|
@@ -5,7 +5,6 @@ var jsxRuntime = require('react/jsx-runtime');
|
|
|
5
5
|
var React = require('react');
|
|
6
6
|
var reactSlot = require('@radix-ui/react-slot');
|
|
7
7
|
var clsx = require('clsx');
|
|
8
|
-
var framerMotion = require('framer-motion');
|
|
9
8
|
var lucideReact = require('lucide-react');
|
|
10
9
|
|
|
11
10
|
function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
|
|
@@ -156,9 +155,13 @@ function createSchemaGenerators(brand, supportedLanguages = ["en", "fr", "es"])
|
|
|
156
155
|
offers: {
|
|
157
156
|
"@type": "AggregateOffer",
|
|
158
157
|
priceCurrency: "USD",
|
|
159
|
-
lowPrice: "
|
|
160
|
-
highPrice: "
|
|
161
|
-
offerCount: "
|
|
158
|
+
lowPrice: "0",
|
|
159
|
+
highPrice: "0",
|
|
160
|
+
offerCount: "2",
|
|
161
|
+
priceSpecification: {
|
|
162
|
+
"@type": "PriceSpecification",
|
|
163
|
+
description: "Custom pricing \u2014 contact sales for a tailored quote"
|
|
164
|
+
}
|
|
162
165
|
},
|
|
163
166
|
author: {
|
|
164
167
|
"@type": "Organization",
|
|
@@ -413,14 +416,14 @@ function createSchemaGenerators(brand, supportedLanguages = ["en", "fr", "es"])
|
|
|
413
416
|
};
|
|
414
417
|
},
|
|
415
418
|
/** Service schema — Growth motion service offerings. */
|
|
416
|
-
service(
|
|
419
|
+
service(motion, locale = "en") {
|
|
417
420
|
return {
|
|
418
421
|
"@context": "https://schema.org",
|
|
419
422
|
"@type": "Service",
|
|
420
|
-
"@id": ENTITY_IDS.service(
|
|
421
|
-
name:
|
|
422
|
-
description:
|
|
423
|
-
url:
|
|
423
|
+
"@id": ENTITY_IDS.service(motion.slug),
|
|
424
|
+
name: motion.name,
|
|
425
|
+
description: motion.description,
|
|
426
|
+
url: motion.url.startsWith("http") ? motion.url : `${brand.url}${motion.url}`,
|
|
424
427
|
provider: {
|
|
425
428
|
"@type": "Organization",
|
|
426
429
|
"@id": ENTITY_IDS.organization,
|
|
@@ -429,11 +432,11 @@ function createSchemaGenerators(brand, supportedLanguages = ["en", "fr", "es"])
|
|
|
429
432
|
inLanguage: locale,
|
|
430
433
|
availableLanguage: [...supportedLanguages],
|
|
431
434
|
areaServed: "Worldwide",
|
|
432
|
-
...
|
|
435
|
+
...motion.price ? {
|
|
433
436
|
offers: {
|
|
434
437
|
"@type": "Offer",
|
|
435
|
-
price:
|
|
436
|
-
priceCurrency:
|
|
438
|
+
price: motion.price.replace(/[^0-9.]/g, "") || "0",
|
|
439
|
+
priceCurrency: motion.priceCurrency || "USD",
|
|
437
440
|
availability: "https://schema.org/InStock"
|
|
438
441
|
}
|
|
439
442
|
} : {},
|
|
@@ -946,34 +949,44 @@ function CookieConsent({
|
|
|
946
949
|
labels,
|
|
947
950
|
className
|
|
948
951
|
}) {
|
|
949
|
-
const [
|
|
952
|
+
const [state, setState] = React.useState("idle");
|
|
950
953
|
React.useEffect(() => {
|
|
951
954
|
const consent = localStorage.getItem(COOKIE_CONSENT_KEY);
|
|
952
955
|
if (!consent) {
|
|
953
|
-
const timer = setTimeout(() =>
|
|
956
|
+
const timer = setTimeout(() => setState("open"), delay);
|
|
954
957
|
return () => clearTimeout(timer);
|
|
958
|
+
} else {
|
|
959
|
+
setState("closed");
|
|
955
960
|
}
|
|
956
961
|
}, [delay]);
|
|
962
|
+
const handleDismiss = React.useCallback(() => {
|
|
963
|
+
setState("closing");
|
|
964
|
+
}, []);
|
|
957
965
|
const handleAccept = React.useCallback(() => {
|
|
958
966
|
localStorage.setItem(COOKIE_CONSENT_KEY, "granted");
|
|
959
|
-
|
|
967
|
+
handleDismiss();
|
|
960
968
|
if (typeof window !== "undefined") {
|
|
961
969
|
window.dispatchEvent(new Event(COOKIE_CONSENT_EVENT));
|
|
962
970
|
}
|
|
963
971
|
onAccept?.();
|
|
964
|
-
}, [onAccept]);
|
|
972
|
+
}, [onAccept, handleDismiss]);
|
|
965
973
|
const handleDecline = React.useCallback(() => {
|
|
966
974
|
localStorage.setItem(COOKIE_CONSENT_KEY, "denied");
|
|
967
|
-
|
|
975
|
+
handleDismiss();
|
|
968
976
|
onDecline?.();
|
|
969
|
-
}, [onDecline]);
|
|
970
|
-
|
|
971
|
-
|
|
977
|
+
}, [onDecline, handleDismiss]);
|
|
978
|
+
const handleTransitionEnd = React.useCallback(() => {
|
|
979
|
+
if (state === "closing") {
|
|
980
|
+
setState("closed");
|
|
981
|
+
}
|
|
982
|
+
}, [state]);
|
|
983
|
+
if (state === "idle" || state === "closed") return null;
|
|
984
|
+
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
985
|
+
"div",
|
|
972
986
|
{
|
|
973
|
-
initial: { y: 100, opacity: 0 },
|
|
974
|
-
animate: { y: 0, opacity: 1 },
|
|
975
|
-
exit: { y: 100, opacity: 0 },
|
|
976
987
|
className: `ds-cookie-consent ${className ?? ""}`,
|
|
988
|
+
"data-state": state === "open" ? "open" : "closed",
|
|
989
|
+
onTransitionEnd: handleTransitionEnd,
|
|
977
990
|
role: "dialog",
|
|
978
991
|
"aria-label": labels?.title ?? "Cookie consent",
|
|
979
992
|
children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "ds-cookie-consent__inner", children: [
|
|
@@ -999,7 +1012,7 @@ function CookieConsent({
|
|
|
999
1012
|
)
|
|
1000
1013
|
] })
|
|
1001
1014
|
}
|
|
1002
|
-
)
|
|
1015
|
+
);
|
|
1003
1016
|
}
|
|
1004
1017
|
|
|
1005
1018
|
// src/web/analytics/use-cookie-consent.ts
|