@stackshift-ui/system 6.0.11 → 6.1.0-beta.1

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.
@@ -0,0 +1 @@
1
+ function n(e){return e?e.type==="linkInternal"&&!e.referenceType?{href:`/${e.internalLink}`,target:"_self",rel:"noopener noreferrer"}:e.type==="linkInternal"&&e.referenceType?{href:`/${e.referenceType.replace(/([a-z])([A-Z])/g,"$1-$2").toLowerCase()}/${e.internalLink}`,target:"_self",rel:"noopener noreferrer"}:e.type==="linkExternal"?{href:`${e.externalLink}`,target:"_blank",rel:"noopener noreferrer"}:{href:"/page-not-found"}:{href:"/page-not-found"}}export{n as a};
@@ -0,0 +1 @@
1
+ import{jsx as n}from"react/jsx-runtime";var p=o=>{let{as:t="div",...e}=o;return n(t,{...e})};export{p as a};
@@ -0,0 +1 @@
1
+ import{clsx as e}from"clsx";import{twMerge as t}from"tailwind-merge";function s(...r){return t(e(r))}export{s as a};
package/dist/cn.d.ts ADDED
@@ -0,0 +1,2 @@
1
+ import { type ClassValue } from "clsx";
2
+ export declare function cn(...inputs: ClassValue[]): string;
package/dist/cn.js ADDED
@@ -0,0 +1 @@
1
+ "use strict";var l=Object.defineProperty;var n=Object.getOwnPropertyDescriptor;var p=Object.getOwnPropertyNames;var u=Object.prototype.hasOwnProperty;var c=(r,e)=>{for(var o in e)l(r,o,{get:e[o],enumerable:!0})},f=(r,e,o,s)=>{if(e&&typeof e=="object"||typeof e=="function")for(let t of p(e))!u.call(r,t)&&t!==o&&l(r,t,{get:()=>e[t],enumerable:!(s=n(e,t))||s.enumerable});return r};var i=r=>f(l({},"__esModule",{value:!0}),r);var C={};c(C,{cn:()=>x});module.exports=i(C);var a=require("clsx"),m=require("tailwind-merge");function x(...r){return(0,m.twMerge)((0,a.clsx)(r))}0&&(module.exports={cn});
package/dist/cn.mjs ADDED
@@ -0,0 +1 @@
1
+ import{a}from"./chunk-ZZCEB2NX.mjs";export{a as cn};
@@ -1 +1 @@
1
- "use strict";var p=Object.defineProperty;var m=Object.getOwnPropertyDescriptor;var a=Object.getOwnPropertyNames;var c=Object.prototype.hasOwnProperty;var d=(e,t)=>{for(var o in t)p(e,o,{get:t[o],enumerable:!0})},i=(e,t,o,s)=>{if(t&&typeof t=="object"||typeof t=="function")for(let n of a(t))!c.call(e,n)&&n!==o&&p(e,n,{get:()=>t[n],enumerable:!(s=m(t,n))||s.enumerable});return e};var T=e=>i(p({},"__esModule",{value:!0}),e);var l={};d(l,{DefaultComponent:()=>f});module.exports=T(l);var r=require("react/jsx-runtime"),f=e=>{let{as:t="div",...o}=e;return(0,r.jsx)(t,{...o,"data-testid":t})};0&&(module.exports={DefaultComponent});
1
+ "use strict";var p=Object.defineProperty;var m=Object.getOwnPropertyDescriptor;var c=Object.getOwnPropertyNames;var T=Object.prototype.hasOwnProperty;var f=(t,o)=>{for(var e in o)p(t,e,{get:o[e],enumerable:!0})},i=(t,o,e,s)=>{if(o&&typeof o=="object"||typeof o=="function")for(let n of c(o))!T.call(t,n)&&n!==e&&p(t,n,{get:()=>o[n],enumerable:!(s=m(o,n))||s.enumerable});return t};var l=t=>i(p({},"__esModule",{value:!0}),t);var a={};f(a,{DefaultComponent:()=>C});module.exports=l(a);var r=require("react/jsx-runtime"),C=t=>{let{as:o="div",...e}=t;return(0,r.jsx)(o,{...e})};0&&(module.exports={DefaultComponent});
@@ -1 +1 @@
1
- import{a}from"./chunk-NSQCDIQU.mjs";export{a as DefaultComponent};
1
+ import{a}from"./chunk-JVS3FWLZ.mjs";export{a as DefaultComponent};
package/dist/index.d.ts CHANGED
@@ -1,2 +1,4 @@
1
+ export { cn } from "./cn";
1
2
  export { DefaultComponent } from "./default-component";
3
+ export { buildSanityLink } from "./sanity-link";
2
4
  export { StackShiftUIProvider, useStackShiftUIComponents } from "./system";
package/dist/index.js CHANGED
@@ -1,2 +1,2 @@
1
1
  "use client";
2
- "use strict";var s=Object.defineProperty;var f=Object.getOwnPropertyDescriptor;var P=Object.getOwnPropertyNames;var S=Object.prototype.hasOwnProperty;var v=(t,o)=>{for(var e in o)s(t,e,{get:o[e],enumerable:!0})},x=(t,o,e,p)=>{if(o&&typeof o=="object"||typeof o=="function")for(let n of P(o))!S.call(t,n)&&n!==e&&s(t,n,{get:()=>o[n],enumerable:!(p=f(o,n))||p.enumerable});return t};var l=t=>x(s({},"__esModule",{value:!0}),t);var u={};v(u,{DefaultComponent:()=>m,StackShiftUIProvider:()=>C,useStackShiftUIComponents:()=>a});module.exports=l(u);var c=require("react/jsx-runtime"),m=t=>{let{as:o="div",...e}=t;return(0,c.jsx)(o,{...e,"data-testid":o})};var r=require("react"),i=(0,r.createContext)({}),C=({components:t={},children:o})=>(0,c.jsx)(i.Provider,{value:t,children:o}),a=()=>(0,r.useContext)(i);0&&(module.exports={DefaultComponent,StackShiftUIProvider,useStackShiftUIComponents});
2
+ "use strict";var i=Object.defineProperty;var d=Object.getOwnPropertyDescriptor;var g=Object.getOwnPropertyNames;var L=Object.prototype.hasOwnProperty;var k=(e,n)=>{for(var r in n)i(e,r,{get:n[r],enumerable:!0})},S=(e,n,r,p)=>{if(n&&typeof n=="object"||typeof n=="function")for(let t of g(n))!L.call(e,t)&&t!==r&&i(e,t,{get:()=>n[t],enumerable:!(p=d(n,t))||p.enumerable});return e};var h=e=>S(i({},"__esModule",{value:!0}),e);var T={};k(T,{DefaultComponent:()=>c,StackShiftUIProvider:()=>C,buildSanityLink:()=>m,cn:()=>s,useStackShiftUIComponents:()=>y});module.exports=h(T);var a=require("clsx"),f=require("tailwind-merge");function s(...e){return(0,f.twMerge)((0,a.clsx)(e))}var l=require("react/jsx-runtime"),c=e=>{let{as:n="div",...r}=e;return(0,l.jsx)(n,{...r})};function m(e){return e?e.type==="linkInternal"&&!e.referenceType?{href:`/${e.internalLink}`,target:"_self",rel:"noopener noreferrer"}:e.type==="linkInternal"&&e.referenceType?{href:`/${e.referenceType.replace(/([a-z])([A-Z])/g,"$1-$2").toLowerCase()}/${e.internalLink}`,target:"_self",rel:"noopener noreferrer"}:e.type==="linkExternal"?{href:`${e.externalLink}`,target:"_blank",rel:"noopener noreferrer"}:{href:"/page-not-found"}:{href:"/page-not-found"}}var o=require("react"),u=(0,o.createContext)({}),C=({components:e={},children:n})=>(0,l.jsx)(u.Provider,{value:e,children:n}),y=()=>(0,o.useContext)(u);0&&(module.exports={DefaultComponent,StackShiftUIProvider,buildSanityLink,cn,useStackShiftUIComponents});
package/dist/index.mjs CHANGED
@@ -1,2 +1,2 @@
1
1
  "use client";
2
- "use strict";import{a as t}from"./chunk-NSQCDIQU.mjs";import{a as e,b as o}from"./chunk-7XY5RGCQ.mjs";export{t as DefaultComponent,e as StackShiftUIProvider,o as useStackShiftUIComponents};
2
+ "use strict";import{a as o}from"./chunk-ZZCEB2NX.mjs";import{a as t}from"./chunk-JVS3FWLZ.mjs";import{a as e}from"./chunk-IV3CAAWU.mjs";import{a as r,b as n}from"./chunk-7XY5RGCQ.mjs";export{t as DefaultComponent,r as StackShiftUIProvider,e as buildSanityLink,o as cn,n as useStackShiftUIComponents};
@@ -0,0 +1,17 @@
1
+ type LinkType = "linkInternal" | "linkExternal" | string;
2
+ interface LabeledRoute {
3
+ type: LinkType;
4
+ internalLink?: string;
5
+ externalLink?: string;
6
+ referenceType?: string;
7
+ }
8
+ interface SanityLink {
9
+ href: string;
10
+ target?: string;
11
+ rel?: string;
12
+ }
13
+ /**
14
+ * Builds a href attribute from a Sanity LabeledRoute object.
15
+ */
16
+ export declare function buildSanityLink(link: LabeledRoute): SanityLink;
17
+ export {};
@@ -0,0 +1 @@
1
+ "use strict";var i=Object.defineProperty;var f=Object.getOwnPropertyDescriptor;var o=Object.getOwnPropertyNames;var p=Object.prototype.hasOwnProperty;var l=(e,r)=>{for(var t in r)i(e,t,{get:r[t],enumerable:!0})},g=(e,r,t,a)=>{if(r&&typeof r=="object"||typeof r=="function")for(let n of o(r))!p.call(e,n)&&n!==t&&i(e,n,{get:()=>r[n],enumerable:!(a=f(r,n))||a.enumerable});return e};var y=e=>g(i({},"__esModule",{value:!0}),e);var s={};l(s,{buildSanityLink:()=>L});module.exports=y(s);function L(e){return e?e.type==="linkInternal"&&!e.referenceType?{href:`/${e.internalLink}`,target:"_self",rel:"noopener noreferrer"}:e.type==="linkInternal"&&e.referenceType?{href:`/${e.referenceType.replace(/([a-z])([A-Z])/g,"$1-$2").toLowerCase()}/${e.internalLink}`,target:"_self",rel:"noopener noreferrer"}:e.type==="linkExternal"?{href:`${e.externalLink}`,target:"_blank",rel:"noopener noreferrer"}:{href:"/page-not-found"}:{href:"/page-not-found"}}0&&(module.exports={buildSanityLink});
@@ -0,0 +1 @@
1
+ import{a}from"./chunk-IV3CAAWU.mjs";export{a as buildSanityLink};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@stackshift-ui/system",
3
- "version": "6.0.11",
3
+ "version": "6.1.0-beta.1",
4
4
  "private": false,
5
5
  "sideEffects": false,
6
6
  "main": "./dist/index.js",
@@ -25,8 +25,8 @@
25
25
  "typescript": "^5.6.2",
26
26
  "vite-tsconfig-paths": "^5.0.1",
27
27
  "vitest": "^2.1.1",
28
- "@stackshift-ui/eslint-config": "6.0.10",
29
- "@stackshift-ui/typescript-config": "6.0.10"
28
+ "@stackshift-ui/typescript-config": "6.0.10",
29
+ "@stackshift-ui/eslint-config": "6.0.10"
30
30
  },
31
31
  "dependencies": {
32
32
  "nextjs-darkmode": "^1.0.4",
@@ -34,7 +34,9 @@
34
34
  "r18gs": "^2.0.0",
35
35
  "react-live": "^4.1.7",
36
36
  "react18-loaders": "latest",
37
- "@stackshift-ui/scripts": "6.0.10"
37
+ "clsx": "^2.1.1",
38
+ "tailwind-merge": "^2.5.4",
39
+ "@stackshift-ui/scripts": "6.1.0-beta.0"
38
40
  },
39
41
  "peerDependencies": {
40
42
  "@types/react": "16.8 - 19",
package/src/cn.ts ADDED
@@ -0,0 +1,6 @@
1
+ import { type ClassValue, clsx } from "clsx"
2
+ import { twMerge } from "tailwind-merge"
3
+
4
+ export function cn(...inputs: ClassValue[]) {
5
+ return twMerge(clsx(inputs))
6
+ }
@@ -14,7 +14,7 @@ describe("DefaultComponent", () => {
14
14
  });
15
15
 
16
16
  it("should render the specified component", ({ expect }) => {
17
- render(<DefaultComponent as="span" />);
17
+ render(<DefaultComponent data-testid="span" as="span" />);
18
18
 
19
19
  expect(screen.getByTestId("span").nodeName).toBe("SPAN");
20
20
  });
@@ -6,5 +6,5 @@ export const DefaultComponent = <T extends keyof JSX.IntrinsicElements>(
6
6
  const { as = "div", ...rest } = props;
7
7
  const Component = as;
8
8
 
9
- return <Component {...rest} data-testid={as} />;
9
+ return <Component {...rest} />;
10
10
  };
package/src/index.ts CHANGED
@@ -1,5 +1,8 @@
1
1
  "use client";
2
2
 
3
3
  // component exports
4
+ export { cn } from "./cn";
4
5
  export { DefaultComponent } from "./default-component";
6
+ export { buildSanityLink } from "./sanity-link";
5
7
  export { StackShiftUIProvider, useStackShiftUIComponents } from "./system";
8
+
@@ -0,0 +1,36 @@
1
+ type LinkType = "linkInternal" | "linkExternal" | string;
2
+
3
+ interface LabeledRoute {
4
+ type: LinkType;
5
+ internalLink?: string;
6
+ externalLink?: string;
7
+ referenceType?: string;
8
+ }
9
+
10
+ interface SanityLink {
11
+ href: string;
12
+ target?: string;
13
+ rel?: string;
14
+ }
15
+
16
+ /**
17
+ * Builds a href attribute from a Sanity LabeledRoute object.
18
+ */
19
+ export function buildSanityLink(link: LabeledRoute): SanityLink {
20
+ if (!link) return { href: "/page-not-found" };
21
+
22
+ if(link.type === "linkInternal" && !link.referenceType) {
23
+ return { href: `/${link.internalLink}`, target: "_self", rel: "noopener noreferrer" };
24
+ }
25
+
26
+ if(link.type === "linkInternal" && link.referenceType) {
27
+ const prefix = link.referenceType.replace(/([a-z])([A-Z])/g, "$1-$2").toLowerCase();
28
+ return { href: `/${prefix}/${link.internalLink}`, target: "_self", rel: "noopener noreferrer" };
29
+ }
30
+
31
+ if (link.type === "linkExternal") {
32
+ return { href: `${link.externalLink}`, target: "_blank", rel: "noopener noreferrer" };
33
+ }
34
+
35
+ return { href: "/page-not-found" };
36
+ }
@@ -1 +0,0 @@
1
- import{jsx as n}from"react/jsx-runtime";var p=e=>{let{as:t="div",...o}=e;return n(t,{...o,"data-testid":t})};export{p as a};