@knitify/vue 0.0.3 → 0.0.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.es.js CHANGED
@@ -1,86 +1,99 @@
1
- import { defineComponent as f, openBlock as o, createElementBlock as s, normalizeClass as l, renderSlot as i, createElementVNode as n, resolveComponent as K, Fragment as C, renderList as $, createVNode as d, unref as y, withCtx as k, toDisplayString as x, createCommentVNode as p, createBlock as M, useModel as I, useSlots as B, mergeModels as h } from "vue";
2
- import { RouterLink as S } from "vue-router";
3
- const L = /* @__PURE__ */ f({
1
+ import { defineComponent as f, openBlock as t, createElementBlock as r, normalizeClass as o, renderSlot as c, createElementVNode as n, resolveComponent as _, Fragment as x, renderList as M, createVNode as d, unref as B, withCtx as g, withModifiers as I, createBlock as N, createTextVNode as S, toDisplayString as h, createCommentVNode as i, useModel as V, useSlots as z, mergeModels as C } from "vue";
2
+ import { RouterLink as L } from "vue-router";
3
+ const j = /* @__PURE__ */ f({
4
4
  __name: "KContainer",
5
5
  props: {
6
6
  glassy: { type: Boolean }
7
7
  },
8
- setup(t) {
9
- return (a, r) => (o(), s("div", {
10
- class: l(["KContainer", t.glassy && "KContainer--glassy"])
8
+ setup(a) {
9
+ return (s, l) => (t(), r("div", {
10
+ class: o(["KContainer", a.glassy && "KContainer--glassy"])
11
11
  }, [
12
- i(a.$slots, "default")
12
+ c(s.$slots, "default")
13
13
  ], 2));
14
14
  }
15
- }), V = {
15
+ }), w = {
16
16
  class: "KIcon",
17
17
  title: "icon",
18
18
  role: "img"
19
- }, j = ["href"], z = /* @__PURE__ */ f({
19
+ }, E = ["href"], O = /* @__PURE__ */ f({
20
20
  __name: "KIcon",
21
21
  props: {
22
22
  href: { default: "" }
23
23
  },
24
- setup(t) {
25
- return (a, r) => (o(), s("svg", V, [
24
+ setup(a) {
25
+ return (s, l) => (t(), r("svg", w, [
26
26
  n("use", {
27
- href: `#${t.href.replace(/^#/, "")}`
28
- }, null, 8, j)
27
+ href: `#${a.href.replace(/^#/, "")}`
28
+ }, null, 8, E)
29
29
  ]));
30
30
  }
31
- }), E = { class: "KNavbar-menu" }, O = ["href", "onClick"], w = { class: "KNavbar-icon" }, D = {
32
- class: /* @__PURE__ */ l(["KNavbar-text"])
33
- }, F = {
34
- key: 0,
35
- class: /* @__PURE__ */ l(["KNavbar-caret", "KCollapse-toggle"]),
31
+ }), T = { class: "KNavbar-menu" }, D = ["href", "onClick"], F = {
32
+ key: 1,
33
+ class: /* @__PURE__ */ o(["KNavbar-caret", "KCollapse-toggle"]),
36
34
  "data-collapse-toggle": ""
37
- }, g = /* @__PURE__ */ f({
35
+ }, $ = /* @__PURE__ */ f({
38
36
  __name: "KNavbarMenu",
39
37
  props: {
40
38
  items: { default: () => [] }
41
39
  },
42
- setup(t) {
43
- return (a, r) => {
44
- const u = K("KIcon"), _ = K("KNavbarMenu", !0);
45
- return o(), s("ul", E, [
46
- (o(!0), s(C, null, $(t.items, (e, c) => i(a.$slots, "item", {
47
- key: `navbar-menu-item-${c}`,
40
+ setup(a) {
41
+ return (s, l) => {
42
+ const u = _("KIcon"), p = _("KBadge"), v = _("KNavbarMenu", !0);
43
+ return t(), r("ul", T, [
44
+ (t(!0), r(x, null, M(a.items, (e, m) => c(s.$slots, "item", {
45
+ key: `navbar-menu-item-${m}`,
48
46
  item: e
49
47
  }, () => [
50
- d(y(S), {
48
+ d(B(L), {
51
49
  to: e.route ?? "/",
52
50
  custom: ""
53
51
  }, {
54
- default: k(({ isActive: b, href: m, navigate: v }) => [
52
+ default: g(({ isActive: K, href: b, navigate: k }) => [
55
53
  n("li", {
56
- class: l([
54
+ class: o([
57
55
  "KNavbar-item",
58
56
  "KCollapse is-collapsed",
59
- b && "KNavbar-item-is-active"
57
+ K && "KNavbar-item-is-active"
60
58
  ]),
61
59
  "data-collapse": ""
62
60
  }, [
63
61
  n("a", {
64
- class: l(["KNavbar-link"]),
65
- href: e.route ? m : void 0,
66
- onClick: (A) => e.route ? v() : e.onClick?.()
62
+ class: o(["KNavbar-link"]),
63
+ href: e.route ? b : void 0,
64
+ onClick: I((G) => e.route ? k() : e.onClick?.(), ["prevent"])
67
65
  }, [
68
- n("span", w, [
66
+ n("span", {
67
+ class: o(["KNavbar-icon", e.iconClass])
68
+ }, [
69
69
  d(u, {
70
70
  href: e.icon
71
71
  }, null, 8, ["href"])
72
- ]),
73
- n("span", D, x(e.text), 1),
74
- e.children ? (o(), s("span", F, [
72
+ ], 2),
73
+ e.badge ? (t(), N(p, {
74
+ key: 0,
75
+ class: o(["KNavbar-badge", e.badgeClass]),
76
+ size: "sm",
77
+ variant: "danger"
78
+ }, {
79
+ default: g(() => [
80
+ S(h(e.badge), 1)
81
+ ]),
82
+ _: 2
83
+ }, 1032, ["class"])) : i("", !0),
84
+ n("span", {
85
+ class: o(["KNavbar-text", e.textClass])
86
+ }, h(e.text), 3),
87
+ e.children ? (t(), r("span", F, [
75
88
  d(u, { href: "#caretUp" })
76
- ])) : p("", !0)
77
- ], 8, O),
78
- e.children ? (o(), M(_, {
89
+ ])) : i("", !0)
90
+ ], 8, D),
91
+ e.children ? (t(), N(v, {
79
92
  key: 0,
80
93
  items: e.children,
81
94
  class: "KCollapse-content",
82
95
  "data-collapse-content": ""
83
- }, null, 8, ["items"])) : p("", !0)
96
+ }, null, 8, ["items"])) : i("", !0)
84
97
  ], 2)
85
98
  ]),
86
99
  _: 2
@@ -92,76 +105,76 @@ const L = /* @__PURE__ */ f({
92
105
  }), P = { class: "KNavbar-inner" }, R = {
93
106
  key: 0,
94
107
  class: "KNavbar-brand"
95
- }, T = { class: "KNavbar-body" }, U = {
108
+ }, U = { class: "KNavbar-body" }, q = {
96
109
  key: 1,
97
110
  class: "KNavbar-footer"
98
- }, q = /* @__PURE__ */ f({
111
+ }, A = /* @__PURE__ */ f({
99
112
  __name: "KNavbar",
100
- props: /* @__PURE__ */ h({
113
+ props: /* @__PURE__ */ C({
101
114
  items: {},
102
115
  fixed: { type: Boolean, default: !1 }
103
116
  }, {
104
117
  expanded: { type: Boolean, default: !1 },
105
118
  expandedModifiers: {}
106
119
  }),
107
- emits: /* @__PURE__ */ h(["toggle"], ["update:expanded"]),
108
- setup(t, { emit: a }) {
109
- const r = I(t, "expanded"), u = a, _ = B(), e = () => {
110
- r.value = !r.value, u("toggle", r.value);
120
+ emits: /* @__PURE__ */ C(["toggle"], ["update:expanded"]),
121
+ setup(a, { emit: s }) {
122
+ const l = V(a, "expanded"), u = s, p = z(), v = () => {
123
+ l.value = !l.value, u("toggle", l.value);
111
124
  };
112
- return (c, b) => {
113
- const m = K("KIcon");
114
- return o(), s("aside", {
115
- class: l([
125
+ return (e, m) => {
126
+ const K = _("KIcon");
127
+ return t(), r("aside", {
128
+ class: o([
116
129
  "KNavbar",
117
- r.value && "KNavbar-is-expanded",
118
- t.fixed && "KNavbar-is-fixed"
130
+ l.value && "KNavbar-is-expanded",
131
+ a.fixed && "KNavbar-is-fixed"
119
132
  ])
120
133
  }, [
121
134
  n("div", P, [
122
- _.brand ? (o(), s("div", R, [
123
- i(c.$slots, "brand")
124
- ])) : p("", !0),
125
- n("nav", T, [
126
- i(c.$slots, "default", {}, () => [
127
- d(g, {
128
- items: t.items.filter(({ hidden: v }) => !v)
135
+ p.brand ? (t(), r("div", R, [
136
+ c(e.$slots, "brand")
137
+ ])) : i("", !0),
138
+ n("nav", U, [
139
+ c(e.$slots, "default", {}, () => [
140
+ d($, {
141
+ items: a.items.filter(({ hidden: b }) => !b)
129
142
  }, null, 8, ["items"])
130
143
  ])
131
144
  ]),
132
- _.footer ? (o(), s("div", U, [
133
- i(c.$slots, "footer")
134
- ])) : p("", !0)
145
+ p.footer ? (t(), r("div", q, [
146
+ c(e.$slots, "footer")
147
+ ])) : i("", !0)
135
148
  ]),
136
149
  n("button", {
137
150
  type: "button",
138
151
  class: "KNavbar-toggle",
139
- onClick: e
152
+ onClick: v
140
153
  }, [
141
- d(m, { href: "#caretLeft" })
154
+ d(K, { href: "#caretLeft" })
142
155
  ])
143
156
  ], 2);
144
157
  };
145
158
  }
146
- }), N = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
159
+ }), y = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
147
160
  __proto__: null,
148
- KContainer: L,
149
- KIcon: z,
150
- KNavbar: q,
151
- KNavbarMenu: g
152
- }, Symbol.toStringTag, { value: "Module" })), J = {
153
- install(t) {
154
- for (const a in N)
155
- t.component(
156
- a,
157
- N[a]
161
+ KContainer: j,
162
+ KIcon: O,
163
+ KNavbar: A,
164
+ KNavbarMenu: $
165
+ }, Symbol.toStringTag, { value: "Module" })), Q = {
166
+ install(a) {
167
+ for (const s in y)
168
+ a.component(
169
+ s,
170
+ y[s]
158
171
  );
159
172
  }
160
173
  };
161
174
  export {
162
- L as KContainer,
163
- z as KIcon,
164
- q as KNavbar,
165
- g as KNavbarMenu,
166
- J as default
175
+ j as KContainer,
176
+ O as KIcon,
177
+ A as KNavbar,
178
+ $ as KNavbarMenu,
179
+ Q as default
167
180
  };
package/dist/index.umd.js CHANGED
@@ -1 +1 @@
1
- (function(t,e){typeof exports=="object"&&typeof module<"u"?e(exports,require("vue"),require("vue-router")):typeof define=="function"&&define.amd?define(["exports","vue","vue-router"],e):(t=typeof globalThis<"u"?globalThis:t||self,e(t["knitify-vue"]={},t.Vue,t.vueRouter))})(this,(function(t,e,b){"use strict";const p=e.defineComponent({__name:"KContainer",props:{glassy:{type:Boolean}},setup(n){return(a,s)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["KContainer",n.glassy&&"KContainer--glassy"])},[e.renderSlot(a.$slots,"default")],2))}}),h={class:"KIcon",title:"icon",role:"img"},C=["href"],f=e.defineComponent({__name:"KIcon",props:{href:{default:""}},setup(n){return(a,s)=>(e.openBlock(),e.createElementBlock("svg",h,[e.createElementVNode("use",{href:`#${n.href.replace(/^#/,"")}`},null,8,C)]))}}),k={class:"KNavbar-menu"},g=["href","onClick"],u={class:"KNavbar-icon"},B={class:e.normalizeClass(["KNavbar-text"])},y={key:0,class:e.normalizeClass(["KNavbar-caret","KCollapse-toggle"]),"data-collapse-toggle":""},d=e.defineComponent({__name:"KNavbarMenu",props:{items:{default:()=>[]}},setup(n){return(a,s)=>{const r=e.resolveComponent("KIcon"),c=e.resolveComponent("KNavbarMenu",!0);return e.openBlock(),e.createElementBlock("ul",k,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(n.items,(o,l)=>e.renderSlot(a.$slots,"item",{key:`navbar-menu-item-${l}`,item:o},()=>[e.createVNode(e.unref(b.RouterLink),{to:o.route??"/",custom:""},{default:e.withCtx(({isActive:K,href:i,navigate:m})=>[e.createElementVNode("li",{class:e.normalizeClass(["KNavbar-item","KCollapse is-collapsed",K&&"KNavbar-item-is-active"]),"data-collapse":""},[e.createElementVNode("a",{class:e.normalizeClass(["KNavbar-link"]),href:o.route?i:void 0,onClick:x=>o.route?m():o.onClick?.()},[e.createElementVNode("span",u,[e.createVNode(r,{href:o.icon},null,8,["href"])]),e.createElementVNode("span",B,e.toDisplayString(o.text),1),o.children?(e.openBlock(),e.createElementBlock("span",y,[e.createVNode(r,{href:"#caretUp"})])):e.createCommentVNode("",!0)],8,g),o.children?(e.openBlock(),e.createBlock(c,{key:0,items:o.children,class:"KCollapse-content","data-collapse-content":""},null,8,["items"])):e.createCommentVNode("",!0)],2)]),_:2},1032,["to"])])),128))])}}}),V={class:"KNavbar-inner"},$={key:0,class:"KNavbar-brand"},E={class:"KNavbar-body"},M={key:1,class:"KNavbar-footer"},_=e.defineComponent({__name:"KNavbar",props:e.mergeModels({items:{},fixed:{type:Boolean,default:!1}},{expanded:{type:Boolean,default:!1},expandedModifiers:{}}),emits:e.mergeModels(["toggle"],["update:expanded"]),setup(n,{emit:a}){const s=e.useModel(n,"expanded"),r=a,c=e.useSlots(),o=()=>{s.value=!s.value,r("toggle",s.value)};return(l,K)=>{const i=e.resolveComponent("KIcon");return e.openBlock(),e.createElementBlock("aside",{class:e.normalizeClass(["KNavbar",s.value&&"KNavbar-is-expanded",n.fixed&&"KNavbar-is-fixed"])},[e.createElementVNode("div",V,[c.brand?(e.openBlock(),e.createElementBlock("div",$,[e.renderSlot(l.$slots,"brand")])):e.createCommentVNode("",!0),e.createElementVNode("nav",E,[e.renderSlot(l.$slots,"default",{},()=>[e.createVNode(d,{items:n.items.filter(({hidden:m})=>!m)},null,8,["items"])])]),c.footer?(e.openBlock(),e.createElementBlock("div",M,[e.renderSlot(l.$slots,"footer")])):e.createCommentVNode("",!0)]),e.createElementVNode("button",{type:"button",class:"KNavbar-toggle",onClick:o},[e.createVNode(i,{href:"#caretLeft"})])],2)}}}),N=Object.freeze(Object.defineProperty({__proto__:null,KContainer:p,KIcon:f,KNavbar:_,KNavbarMenu:d},Symbol.toStringTag,{value:"Module"})),S={install(n){for(const a in N)n.component(a,N[a])}};t.KContainer=p,t.KIcon=f,t.KNavbar=_,t.KNavbarMenu=d,t.default=S,Object.defineProperties(t,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})}));
1
+ (function(t,e){typeof exports=="object"&&typeof module<"u"?e(exports,require("vue"),require("vue-router")):typeof define=="function"&&define.amd?define(["exports","vue","vue-router"],e):(t=typeof globalThis<"u"?globalThis:t||self,e(t["knitify-vue"]={},t.Vue,t.vueRouter))})(this,(function(t,e,b){"use strict";const p=e.defineComponent({__name:"KContainer",props:{glassy:{type:Boolean}},setup(n){return(a,s)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["KContainer",n.glassy&&"KContainer--glassy"])},[e.renderSlot(a.$slots,"default")],2))}}),C={class:"KIcon",title:"icon",role:"img"},k=["href"],f=e.defineComponent({__name:"KIcon",props:{href:{default:""}},setup(n){return(a,s)=>(e.openBlock(),e.createElementBlock("svg",C,[e.createElementVNode("use",{href:`#${n.href.replace(/^#/,"")}`},null,8,k)]))}}),h={class:"KNavbar-menu"},g=["href","onClick"],B={key:1,class:e.normalizeClass(["KNavbar-caret","KCollapse-toggle"]),"data-collapse-toggle":""},c=e.defineComponent({__name:"KNavbarMenu",props:{items:{default:()=>[]}},setup(n){return(a,s)=>{const l=e.resolveComponent("KIcon"),r=e.resolveComponent("KBadge"),d=e.resolveComponent("KNavbarMenu",!0);return e.openBlock(),e.createElementBlock("ul",h,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(n.items,(o,K)=>e.renderSlot(a.$slots,"item",{key:`navbar-menu-item-${K}`,item:o},()=>[e.createVNode(e.unref(b.RouterLink),{to:o.route??"/",custom:""},{default:e.withCtx(({isActive:i,href:m,navigate:x})=>[e.createElementVNode("li",{class:e.normalizeClass(["KNavbar-item","KCollapse is-collapsed",i&&"KNavbar-item-is-active"]),"data-collapse":""},[e.createElementVNode("a",{class:e.normalizeClass(["KNavbar-link"]),href:o.route?m:void 0,onClick:e.withModifiers(M=>o.route?x():o.onClick?.(),["prevent"])},[e.createElementVNode("span",{class:e.normalizeClass(["KNavbar-icon",o.iconClass])},[e.createVNode(l,{href:o.icon},null,8,["href"])],2),o.badge?(e.openBlock(),e.createBlock(r,{key:0,class:e.normalizeClass(["KNavbar-badge",o.badgeClass]),size:"sm",variant:"danger"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(o.badge),1)]),_:2},1032,["class"])):e.createCommentVNode("",!0),e.createElementVNode("span",{class:e.normalizeClass(["KNavbar-text",o.textClass])},e.toDisplayString(o.text),3),o.children?(e.openBlock(),e.createElementBlock("span",B,[e.createVNode(l,{href:"#caretUp"})])):e.createCommentVNode("",!0)],8,g),o.children?(e.openBlock(),e.createBlock(d,{key:0,items:o.children,class:"KCollapse-content","data-collapse-content":""},null,8,["items"])):e.createCommentVNode("",!0)],2)]),_:2},1032,["to"])])),128))])}}}),y={class:"KNavbar-inner"},V={key:0,class:"KNavbar-brand"},E={class:"KNavbar-body"},$={key:1,class:"KNavbar-footer"},_=e.defineComponent({__name:"KNavbar",props:e.mergeModels({items:{},fixed:{type:Boolean,default:!1}},{expanded:{type:Boolean,default:!1},expandedModifiers:{}}),emits:e.mergeModels(["toggle"],["update:expanded"]),setup(n,{emit:a}){const s=e.useModel(n,"expanded"),l=a,r=e.useSlots(),d=()=>{s.value=!s.value,l("toggle",s.value)};return(o,K)=>{const i=e.resolveComponent("KIcon");return e.openBlock(),e.createElementBlock("aside",{class:e.normalizeClass(["KNavbar",s.value&&"KNavbar-is-expanded",n.fixed&&"KNavbar-is-fixed"])},[e.createElementVNode("div",y,[r.brand?(e.openBlock(),e.createElementBlock("div",V,[e.renderSlot(o.$slots,"brand")])):e.createCommentVNode("",!0),e.createElementVNode("nav",E,[e.renderSlot(o.$slots,"default",{},()=>[e.createVNode(c,{items:n.items.filter(({hidden:m})=>!m)},null,8,["items"])])]),r.footer?(e.openBlock(),e.createElementBlock("div",$,[e.renderSlot(o.$slots,"footer")])):e.createCommentVNode("",!0)]),e.createElementVNode("button",{type:"button",class:"KNavbar-toggle",onClick:d},[e.createVNode(i,{href:"#caretLeft"})])],2)}}}),N=Object.freeze(Object.defineProperty({__proto__:null,KContainer:p,KIcon:f,KNavbar:_,KNavbarMenu:c},Symbol.toStringTag,{value:"Module"})),u={install(n){for(const a in N)n.component(a,N[a])}};t.KContainer=p,t.KIcon=f,t.KNavbar=_,t.KNavbarMenu=c,t.default=u,Object.defineProperties(t,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})}));
@@ -0,0 +1,14 @@
1
+ import { KBadgeProps } from './types';
2
+ declare var __VLS_1: {};
3
+ type __VLS_Slots = {} & {
4
+ default?: (props: typeof __VLS_1) => any;
5
+ };
6
+ declare const __VLS_base: import("vue").DefineComponent<KBadgeProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<KBadgeProps> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
7
+ declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
8
+ declare const _default: typeof __VLS_export;
9
+ export default _default;
10
+ type __VLS_WithSlots<T, S> = T & {
11
+ new (): {
12
+ $slots: S;
13
+ };
14
+ };
@@ -0,0 +1,7 @@
1
+ import { Size, Variant } from '../../types';
2
+ export type KBadgeProps = {
3
+ pill?: boolean;
4
+ size?: Size;
5
+ subtle?: boolean;
6
+ variant?: Variant;
7
+ };
@@ -1,12 +1,16 @@
1
+ import { ClassValue } from 'vue';
1
2
  import { RouteLocationRaw } from 'vue-router';
2
3
  export type MenuItem = {
3
4
  text: string;
4
5
  badge?: number | string;
6
+ badgeClass?: ClassValue;
5
7
  children?: MenuItem[];
6
8
  hidden?: boolean;
7
9
  icon?: string;
10
+ iconClass?: ClassValue;
8
11
  onClick?: () => void;
9
12
  route?: RouteLocationRaw;
13
+ textClass?: ClassValue;
10
14
  };
11
15
  export type KNavbarProps = {
12
16
  items: MenuItem[];
@@ -0,0 +1,2 @@
1
+ export type Size = '5xs' | '4xs' | '3xs' | '2xs' | 'xs' | 'sm' | 'md' | 'lg' | 'xl' | '2xl' | '3xl' | '4xl' | '5xl';
2
+ export type Variant = 'brand' | 'success' | 'info' | 'attention' | 'danger';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@knitify/vue",
3
- "version": "0.0.3",
3
+ "version": "0.0.4",
4
4
  "description": "",
5
5
  "author": "",
6
6
  "license": "ISC",
@@ -18,7 +18,7 @@
18
18
  "vue": "^3.5.12",
19
19
  "vue-router": "^4.0.3",
20
20
  "vue-tsc": "^3.2.5",
21
- "@knitify/core": "1.0.3"
21
+ "@knitify/core": "1.0.5"
22
22
  },
23
23
  "peerDependencies": {
24
24
  "@knitify/core": "^1.0.1",