@sentropic/design-system-vue 0.31.0 → 0.32.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/Link.d.ts +26 -2
- package/dist/Link.d.ts.map +1 -1
- package/dist/Link.js +34 -6
- package/dist/Link.js.map +1 -1
- package/package.json +1 -1
package/dist/Link.d.ts
CHANGED
|
@@ -1,8 +1,14 @@
|
|
|
1
1
|
export type LinkProps = {
|
|
2
2
|
href?: string;
|
|
3
|
-
|
|
3
|
+
/** Style du lien ; API canonique (alignée sur le canon Svelte). */
|
|
4
|
+
variant?: "inline" | "standalone" | "muted";
|
|
5
|
+
/** @deprecated Raccourci pour variant="standalone". Utilisez `variant`. */
|
|
4
6
|
standalone?: boolean;
|
|
7
|
+
/** @deprecated Raccourci pour variant="muted". Utilisez `variant`. */
|
|
8
|
+
muted?: boolean;
|
|
5
9
|
disabled?: boolean;
|
|
10
|
+
/** Lien externe : pose target="_blank" rel="noreferrer" (sauf target/rel explicites). */
|
|
11
|
+
external?: boolean;
|
|
6
12
|
class?: string;
|
|
7
13
|
};
|
|
8
14
|
export declare const Link: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
|
|
@@ -10,6 +16,10 @@ export declare const Link: import("vue").DefineComponent<import("vue").ExtractPr
|
|
|
10
16
|
type: StringConstructor;
|
|
11
17
|
default: undefined;
|
|
12
18
|
};
|
|
19
|
+
variant: {
|
|
20
|
+
type: () => "inline" | "standalone" | "muted";
|
|
21
|
+
default: string;
|
|
22
|
+
};
|
|
13
23
|
muted: {
|
|
14
24
|
type: BooleanConstructor;
|
|
15
25
|
default: boolean;
|
|
@@ -22,6 +32,10 @@ export declare const Link: import("vue").DefineComponent<import("vue").ExtractPr
|
|
|
22
32
|
type: BooleanConstructor;
|
|
23
33
|
default: boolean;
|
|
24
34
|
};
|
|
35
|
+
external: {
|
|
36
|
+
type: BooleanConstructor;
|
|
37
|
+
default: boolean;
|
|
38
|
+
};
|
|
25
39
|
class: {
|
|
26
40
|
type: StringConstructor;
|
|
27
41
|
default: undefined;
|
|
@@ -33,6 +47,10 @@ export declare const Link: import("vue").DefineComponent<import("vue").ExtractPr
|
|
|
33
47
|
type: StringConstructor;
|
|
34
48
|
default: undefined;
|
|
35
49
|
};
|
|
50
|
+
variant: {
|
|
51
|
+
type: () => "inline" | "standalone" | "muted";
|
|
52
|
+
default: string;
|
|
53
|
+
};
|
|
36
54
|
muted: {
|
|
37
55
|
type: BooleanConstructor;
|
|
38
56
|
default: boolean;
|
|
@@ -45,6 +63,10 @@ export declare const Link: import("vue").DefineComponent<import("vue").ExtractPr
|
|
|
45
63
|
type: BooleanConstructor;
|
|
46
64
|
default: boolean;
|
|
47
65
|
};
|
|
66
|
+
external: {
|
|
67
|
+
type: BooleanConstructor;
|
|
68
|
+
default: boolean;
|
|
69
|
+
};
|
|
48
70
|
class: {
|
|
49
71
|
type: StringConstructor;
|
|
50
72
|
default: undefined;
|
|
@@ -53,7 +75,9 @@ export declare const Link: import("vue").DefineComponent<import("vue").ExtractPr
|
|
|
53
75
|
class: string;
|
|
54
76
|
disabled: boolean;
|
|
55
77
|
href: string;
|
|
56
|
-
|
|
78
|
+
variant: "inline" | "standalone" | "muted";
|
|
57
79
|
standalone: boolean;
|
|
80
|
+
muted: boolean;
|
|
81
|
+
external: boolean;
|
|
58
82
|
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
|
|
59
83
|
//# sourceMappingURL=Link.d.ts.map
|
package/dist/Link.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Link.d.ts","sourceRoot":"","sources":["../src/Link.ts"],"names":[],"mappings":"AAGA,MAAM,MAAM,SAAS,GAAG;IACtB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,
|
|
1
|
+
{"version":3,"file":"Link.d.ts","sourceRoot":"","sources":["../src/Link.ts"],"names":[],"mappings":"AAGA,MAAM,MAAM,SAAS,GAAG;IACtB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,mEAAmE;IACnE,OAAO,CAAC,EAAE,QAAQ,GAAG,YAAY,GAAG,OAAO,CAAC;IAC5C,2EAA2E;IAC3E,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,sEAAsE;IACtE,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,yFAAyF;IACzF,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF,eAAO,MAAM,IAAI;;;;;;cAIc,MAAM,QAAQ,GAAG,YAAY,GAAG,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;cAAvC,MAAM,QAAQ,GAAG,YAAY,GAAG,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4EAqDpE,CAAC"}
|
package/dist/Link.js
CHANGED
|
@@ -4,18 +4,46 @@ export const Link = defineComponent({
|
|
|
4
4
|
name: "Link",
|
|
5
5
|
props: {
|
|
6
6
|
href: { type: String, default: undefined },
|
|
7
|
+
variant: { type: String, default: "inline" },
|
|
7
8
|
muted: { type: Boolean, default: false },
|
|
8
9
|
standalone: { type: Boolean, default: false },
|
|
9
10
|
disabled: { type: Boolean, default: false },
|
|
11
|
+
external: { type: Boolean, default: false },
|
|
10
12
|
class: { type: String, default: undefined },
|
|
11
13
|
},
|
|
12
14
|
setup(props, { slots, attrs }) {
|
|
13
|
-
return () =>
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
15
|
+
return () => {
|
|
16
|
+
// `variant` est canonique ; les booléens standalone/muted sont des
|
|
17
|
+
// raccourcis dépréciés (parité Svelte/React). `variant` explicite l'emporte.
|
|
18
|
+
const effective = props.variant !== "inline"
|
|
19
|
+
? props.variant
|
|
20
|
+
: props.standalone
|
|
21
|
+
? "standalone"
|
|
22
|
+
: props.muted
|
|
23
|
+
? "muted"
|
|
24
|
+
: "inline";
|
|
25
|
+
const resolvedTarget = attrs.target ?? (props.external ? "_blank" : undefined);
|
|
26
|
+
const resolvedRel = attrs.rel ?? (props.external ? "noreferrer" : undefined);
|
|
27
|
+
// Retire onClick du spread : Vue fusionne sinon le handler attrs avec le
|
|
28
|
+
// nôtre (tableau de listeners), ce qui rappellerait l'utilisateur même en
|
|
29
|
+
// disabled. On le rappelle nous-mêmes, et seulement quand non-disabled.
|
|
30
|
+
const { onClick: attrsOnClick, ...restAttrs } = attrs;
|
|
31
|
+
return h("a", {
|
|
32
|
+
...restAttrs,
|
|
33
|
+
href: props.disabled ? undefined : props.href,
|
|
34
|
+
target: resolvedTarget,
|
|
35
|
+
rel: resolvedRel,
|
|
36
|
+
class: classNames("st-link", `st-link--${effective}`, props.disabled && "st-link--disabled", props.class),
|
|
37
|
+
"aria-disabled": props.disabled || undefined,
|
|
38
|
+
onClick: (event) => {
|
|
39
|
+
if (props.disabled) {
|
|
40
|
+
event.preventDefault();
|
|
41
|
+
return;
|
|
42
|
+
}
|
|
43
|
+
attrsOnClick?.(event);
|
|
44
|
+
},
|
|
45
|
+
}, slots.default?.());
|
|
46
|
+
};
|
|
19
47
|
},
|
|
20
48
|
});
|
|
21
49
|
//# sourceMappingURL=Link.js.map
|
package/dist/Link.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Link.js","sourceRoot":"","sources":["../src/Link.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACzC,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"Link.js","sourceRoot":"","sources":["../src/Link.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACzC,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAgB7C,MAAM,CAAC,MAAM,IAAI,GAAG,eAAe,CAAC;IAClC,IAAI,EAAE,MAAM;IACZ,KAAK,EAAE;QACL,IAAI,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE;QAC1C,OAAO,EAAE,EAAE,IAAI,EAAE,MAAiD,EAAE,OAAO,EAAE,QAAQ,EAAE;QACvF,KAAK,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE;QACxC,UAAU,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE;QAC7C,QAAQ,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE;QAC3C,QAAQ,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE;QAC3C,KAAK,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE;KAC5C;IACD,KAAK,CAAC,KAAK,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE;QAC3B,OAAO,GAAG,EAAE;YACV,mEAAmE;YACnE,6EAA6E;YAC7E,MAAM,SAAS,GACb,KAAK,CAAC,OAAO,KAAK,QAAQ;gBACxB,CAAC,CAAC,KAAK,CAAC,OAAO;gBACf,CAAC,CAAC,KAAK,CAAC,UAAU;oBAChB,CAAC,CAAC,YAAY;oBACd,CAAC,CAAC,KAAK,CAAC,KAAK;wBACX,CAAC,CAAC,OAAO;wBACT,CAAC,CAAC,QAAQ,CAAC;YACnB,MAAM,cAAc,GACjB,KAAK,CAAC,MAA6B,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;YAClF,MAAM,WAAW,GACd,KAAK,CAAC,GAA0B,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;YACnF,yEAAyE;YACzE,0EAA0E;YAC1E,wEAAwE;YACxE,MAAM,EAAE,OAAO,EAAE,YAAY,EAAE,GAAG,SAAS,EAAE,GAAG,KAAgC,CAAC;YACjF,OAAO,CAAC,CACN,GAAG,EACH;gBACE,GAAG,SAAS;gBACZ,IAAI,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI;gBAC7C,MAAM,EAAE,cAAc;gBACtB,GAAG,EAAE,WAAW;gBAChB,KAAK,EAAE,UAAU,CACf,SAAS,EACT,YAAY,SAAS,EAAE,EACvB,KAAK,CAAC,QAAQ,IAAI,mBAAmB,EACrC,KAAK,CAAC,KAAK,CACZ;gBACD,eAAe,EAAE,KAAK,CAAC,QAAQ,IAAI,SAAS;gBAC5C,OAAO,EAAE,CAAC,KAAiB,EAAE,EAAE;oBAC7B,IAAI,KAAK,CAAC,QAAQ,EAAE,CAAC;wBACnB,KAAK,CAAC,cAAc,EAAE,CAAC;wBACvB,OAAO;oBACT,CAAC;oBACA,YAA0D,EAAE,CAAC,KAAK,CAAC,CAAC;gBACvE,CAAC;aACF,EACD,KAAK,CAAC,OAAO,EAAE,EAAE,CAClB,CAAC;QACJ,CAAC,CAAC;IACJ,CAAC;CACF,CAAC,CAAC"}
|