@kyokusu-ui/vue 0.0.3

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,14 @@
1
+ type __VLS_Props = {
2
+ label?: string;
3
+ id?: string;
4
+ disabled?: boolean;
5
+ };
6
+ type __VLS_PublicProps = {
7
+ modelValue?: boolean;
8
+ } & __VLS_Props;
9
+ declare const _default: import('vue').DefineComponent<__VLS_PublicProps, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
10
+ "update:modelValue": (value: boolean) => any;
11
+ }, string, import('vue').PublicProps, Readonly<__VLS_PublicProps> & Readonly<{
12
+ "onUpdate:modelValue"?: ((value: boolean) => any) | undefined;
13
+ }>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, HTMLDivElement>;
14
+ export default _default;
@@ -0,0 +1,2 @@
1
+ export { default as Toggle } from './Toggle.vue';
2
+ export * from '@kyokusu-ui/core';
@@ -0,0 +1,2 @@
1
+ (function(){try{if(typeof document<`u`){var e=document.createElement(`style`);e.appendChild(document.createTextNode(`.dark .k-toggle-container[data-v-286c3414]{--k-toggle-bg-off:#e4e4e7;--k-toggle-bg-on:#fff;--k-toggle-thumb-off:#71717a;--k-toggle-thumb-on:#18181b;--k-toggle-ring:#fff;--k-toggle-label-color:#f4f4f5}.k-toggle-container[data-v-286c3414]{--k-toggle-width:48px;--k-toggle-height:24px;--k-toggle-thumb-size:20px;--k-toggle-bg-off:#3f3f46;--k-toggle-bg-on:#18181b;--k-toggle-thumb-off:#a1a1aa;--k-toggle-thumb-on:#fff;--k-toggle-ring:#18181b;--k-toggle-label-color:#18181b;align-items:center;gap:12px;display:flex}.sr-only[data-v-286c3414]{clip:rect(0, 0, 0, 0);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.k-toggle-switch[data-v-286c3414]{height:var(--k-toggle-height);width:var(--k-toggle-width);cursor:pointer;background-color:var(--k-toggle-bg-off);box-sizing:border-box;border:1px solid #0000;border-radius:9999px;outline:none;flex-shrink:0;align-items:center;padding:0;transition:background-color .2s ease-in-out,box-shadow .2s;display:inline-flex;position:relative}.k-toggle-switch[data-v-286c3414]:focus-visible{box-shadow:0 0 0 2px transparent, 0 0 0 4px var(--k-toggle-ring)}.k-toggle--active[data-v-286c3414]{background-color:var(--k-toggle-bg-on)}.k-toggle-switch[data-v-286c3414]:disabled{opacity:.5;cursor:not-allowed}.k-toggle-thumb[data-v-286c3414]{pointer-events:none;height:var(--k-toggle-thumb-size);width:var(--k-toggle-thumb-size);background-color:var(--k-toggle-thumb-off);border-radius:50%;transition:transform .2s ease-in-out,background-color .2s;position:absolute;left:1px;box-shadow:0 1px 2px #0000001a}.k-toggle--active .k-toggle-thumb[data-v-286c3414]{background-color:var(--k-toggle-thumb-on);transform:translate(24px)}.k-toggle-label[data-v-286c3414]{color:var(--k-toggle-label-color);cursor:pointer;-webkit-user-select:none;user-select:none;font-size:14px;font-weight:500;transition:color .2s ease-in-out}.k-toggle-label--disabled[data-v-286c3414]{opacity:.5;cursor:not-allowed}
2
+ /*$vite$:1*/`)),document.head.appendChild(e)}}catch(e){console.error(`vite-plugin-css-injected-by-js`,e)}})();Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});let e=require(`vue`);var t={class:`k-toggle-container`},n=[`for`],r=[`id`,`aria-checked`,`disabled`],i={class:`sr-only`},a=((e,t)=>{let n=e.__vccOpts||e;for(let[e,r]of t)n[e]=r;return n})((0,e.defineComponent)({__name:`Toggle`,props:(0,e.mergeModels)({label:{},id:{},disabled:{type:Boolean}},{modelValue:{type:Boolean,default:!1},modelModifiers:{}}),emits:[`update:modelValue`],setup(a){let o=a,s=(0,e.useModel)(a,`modelValue`),c=o.id||(0,e.useId)(),l=()=>{o.disabled||(s.value=!s.value)};return(o,u)=>((0,e.openBlock)(),(0,e.createElementBlock)(`div`,t,[a.label?((0,e.openBlock)(),(0,e.createElementBlock)(`label`,{key:0,for:(0,e.unref)(c),class:(0,e.normalizeClass)([`k-toggle-label`,{"k-toggle-label--disabled":a.disabled}]),onClick:(0,e.withModifiers)(l,[`prevent`])},(0,e.toDisplayString)(a.label),11,n)):(0,e.createCommentVNode)(``,!0),(0,e.createElementVNode)(`button`,{id:(0,e.unref)(c),type:`button`,role:`switch`,"aria-checked":s.value,disabled:a.disabled,onClick:l,class:(0,e.normalizeClass)([`k-toggle-switch`,{"k-toggle--active":s.value}])},[(0,e.createElementVNode)(`span`,i,(0,e.toDisplayString)(a.label),1),u[0]||=(0,e.createElementVNode)(`span`,{"aria-hidden":`true`,class:`k-toggle-thumb`},null,-1)],10,r)]))}}),[[`__scopeId`,`data-v-286c3414`]]);exports.Toggle=a;var o=require(`@kyokusu-ui/core`);Object.keys(o).forEach(function(e){e!==`default`&&!Object.prototype.hasOwnProperty.call(exports,e)&&Object.defineProperty(exports,e,{enumerable:!0,get:function(){return o[e]}})});
@@ -0,0 +1,51 @@
1
+ (function(){try{if(typeof document<`u`){var e=document.createElement(`style`);e.appendChild(document.createTextNode(`.dark .k-toggle-container[data-v-286c3414]{--k-toggle-bg-off:#e4e4e7;--k-toggle-bg-on:#fff;--k-toggle-thumb-off:#71717a;--k-toggle-thumb-on:#18181b;--k-toggle-ring:#fff;--k-toggle-label-color:#f4f4f5}.k-toggle-container[data-v-286c3414]{--k-toggle-width:48px;--k-toggle-height:24px;--k-toggle-thumb-size:20px;--k-toggle-bg-off:#3f3f46;--k-toggle-bg-on:#18181b;--k-toggle-thumb-off:#a1a1aa;--k-toggle-thumb-on:#fff;--k-toggle-ring:#18181b;--k-toggle-label-color:#18181b;align-items:center;gap:12px;display:flex}.sr-only[data-v-286c3414]{clip:rect(0, 0, 0, 0);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.k-toggle-switch[data-v-286c3414]{height:var(--k-toggle-height);width:var(--k-toggle-width);cursor:pointer;background-color:var(--k-toggle-bg-off);box-sizing:border-box;border:1px solid #0000;border-radius:9999px;outline:none;flex-shrink:0;align-items:center;padding:0;transition:background-color .2s ease-in-out,box-shadow .2s;display:inline-flex;position:relative}.k-toggle-switch[data-v-286c3414]:focus-visible{box-shadow:0 0 0 2px transparent, 0 0 0 4px var(--k-toggle-ring)}.k-toggle--active[data-v-286c3414]{background-color:var(--k-toggle-bg-on)}.k-toggle-switch[data-v-286c3414]:disabled{opacity:.5;cursor:not-allowed}.k-toggle-thumb[data-v-286c3414]{pointer-events:none;height:var(--k-toggle-thumb-size);width:var(--k-toggle-thumb-size);background-color:var(--k-toggle-thumb-off);border-radius:50%;transition:transform .2s ease-in-out,background-color .2s;position:absolute;left:1px;box-shadow:0 1px 2px #0000001a}.k-toggle--active .k-toggle-thumb[data-v-286c3414]{background-color:var(--k-toggle-thumb-on);transform:translate(24px)}.k-toggle-label[data-v-286c3414]{color:var(--k-toggle-label-color);cursor:pointer;-webkit-user-select:none;user-select:none;font-size:14px;font-weight:500;transition:color .2s ease-in-out}.k-toggle-label--disabled[data-v-286c3414]{opacity:.5;cursor:not-allowed}
2
+ /*$vite$:1*/`)),document.head.appendChild(e)}}catch(e){console.error(`vite-plugin-css-injected-by-js`,e)}})();import { createCommentVNode as e, createElementBlock as t, createElementVNode as n, defineComponent as r, mergeModels as i, normalizeClass as a, openBlock as o, toDisplayString as s, unref as c, useId as l, useModel as u, withModifiers as d } from "vue";
3
+ export * from "@kyokusu-ui/core";
4
+ //#region src/Toggle.vue?vue&type=script&setup=true&lang.ts
5
+ var f = { class: "k-toggle-container" }, p = ["for"], m = [
6
+ "id",
7
+ "aria-checked",
8
+ "disabled"
9
+ ], h = { class: "sr-only" }, g = /* @__PURE__ */ ((e, t) => {
10
+ let n = e.__vccOpts || e;
11
+ for (let [e, r] of t) n[e] = r;
12
+ return n;
13
+ })(/* @__PURE__ */ r({
14
+ __name: "Toggle",
15
+ props: /* @__PURE__ */ i({
16
+ label: {},
17
+ id: {},
18
+ disabled: { type: Boolean }
19
+ }, {
20
+ modelValue: {
21
+ type: Boolean,
22
+ default: !1
23
+ },
24
+ modelModifiers: {}
25
+ }),
26
+ emits: ["update:modelValue"],
27
+ setup(r) {
28
+ let i = r, g = u(r, "modelValue"), _ = i.id || l(), v = () => {
29
+ i.disabled || (g.value = !g.value);
30
+ };
31
+ return (i, l) => (o(), t("div", f, [r.label ? (o(), t("label", {
32
+ key: 0,
33
+ for: c(_),
34
+ class: a(["k-toggle-label", { "k-toggle-label--disabled": r.disabled }]),
35
+ onClick: d(v, ["prevent"])
36
+ }, s(r.label), 11, p)) : e("", !0), n("button", {
37
+ id: c(_),
38
+ type: "button",
39
+ role: "switch",
40
+ "aria-checked": g.value,
41
+ disabled: r.disabled,
42
+ onClick: v,
43
+ class: a(["k-toggle-switch", { "k-toggle--active": g.value }])
44
+ }, [n("span", h, s(r.label), 1), l[0] ||= n("span", {
45
+ "aria-hidden": "true",
46
+ class: "k-toggle-thumb"
47
+ }, null, -1)], 10, m)]));
48
+ }
49
+ }), [["__scopeId", "data-v-286c3414"]]);
50
+ //#endregion
51
+ export { g as Toggle };
package/package.json ADDED
@@ -0,0 +1,30 @@
1
+ {
2
+ "name": "@kyokusu-ui/vue",
3
+ "version": "0.0.3",
4
+ "type": "module",
5
+ "main": "./dist/kyokusu-ui-vue.umd.cjs",
6
+ "module": "./dist/kyokusu-ui-vue.js",
7
+ "types": "./dist/index.d.ts",
8
+ "scripts": {
9
+ "build": "vite build",
10
+ "dev": "vite build --watch"
11
+ },
12
+ "dependencies": {
13
+ "@kyokusu-ui/core": "^0.0.3",
14
+ "vue": "^3.5.32"
15
+ },
16
+ "devDependencies": {
17
+ "@vitejs/plugin-vue": "^6.0.5",
18
+ "vite": "^8.0.3",
19
+ "vite-plugin-css-injected-by-js": "^4.0.1",
20
+ "vite-plugin-dts": "^4.5.4"
21
+ },
22
+ "files": ["dist"],
23
+ "exports": {
24
+ ".": {
25
+ "import": "./dist/kyokusu-ui-vue.js",
26
+ "require": "./dist/kyokusu-ui-vue.umd.cjs",
27
+ "types": "./dist/index.d.ts"
28
+ }
29
+ }
30
+ }