jky-component-lib 0.0.72 → 0.0.75
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/es/components.d.ts +0 -1
- package/dist/es/components.js +1 -4
- package/dist/es/index.js +0 -15
- package/dist/es/menu/Menu.vue.js +42 -40
- package/dist/es/menu/MenuItem.vue.js +43 -41
- package/dist/es/package.json.js +1 -1
- package/dist/es/page-layout/PageLayout.vue.d.ts +1 -1
- package/dist/es/page-layout/PageLayout.vue.js +47 -60
- package/dist/es/style.css +0 -56
- package/dist/es/styles.css +1 -1
- package/dist/lib/components.d.ts +0 -1
- package/dist/lib/components.js +1 -4
- package/dist/lib/index.js +0 -15
- package/dist/lib/menu/Menu.vue.js +42 -40
- package/dist/lib/menu/MenuItem.vue.js +42 -40
- package/dist/lib/package.json.js +1 -1
- package/dist/lib/page-layout/PageLayout.vue.d.ts +1 -1
- package/dist/lib/page-layout/PageLayout.vue.js +46 -59
- package/dist/lib/style.css +0 -56
- package/dist/lib/styles.css +1 -1
- package/package.json +1 -1
- package/dist/es/tabs/TabContent.vue.d.ts +0 -16
- package/dist/es/tabs/TabContent.vue.js +0 -65
- package/dist/es/tabs/TabContent.vue3.js +0 -5
- package/dist/es/tabs/Tabs.vue.d.ts +0 -46
- package/dist/es/tabs/Tabs.vue.js +0 -311
- package/dist/es/tabs/Tabs.vue3.js +0 -5
- package/dist/es/tabs/index.d.ts +0 -9
- package/dist/es/tabs/index.js +0 -8
- package/dist/es/tabs/routeListener.d.ts +0 -19
- package/dist/es/tabs/routeListener.js +0 -26
- package/dist/es/tabs/style.css +0 -29
- package/dist/es/tabs/useTabs.d.ts +0 -27
- package/dist/es/tabs/useTabs.js +0 -59
- package/dist/es/tabs/useTabsStore.d.ts +0 -53
- package/dist/es/tabs/useTabsStore.js +0 -208
- package/dist/lib/tabs/TabContent.vue.d.ts +0 -16
- package/dist/lib/tabs/TabContent.vue.js +0 -65
- package/dist/lib/tabs/TabContent.vue3.js +0 -5
- package/dist/lib/tabs/Tabs.vue.d.ts +0 -46
- package/dist/lib/tabs/Tabs.vue.js +0 -311
- package/dist/lib/tabs/Tabs.vue3.js +0 -5
- package/dist/lib/tabs/index.d.ts +0 -9
- package/dist/lib/tabs/index.js +0 -8
- package/dist/lib/tabs/routeListener.d.ts +0 -19
- package/dist/lib/tabs/routeListener.js +0 -26
- package/dist/lib/tabs/style.css +0 -29
- package/dist/lib/tabs/useTabs.d.ts +0 -27
- package/dist/lib/tabs/useTabs.js +0 -59
- package/dist/lib/tabs/useTabsStore.d.ts +0 -53
- package/dist/lib/tabs/useTabsStore.js +0 -208
package/dist/es/styles.css
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
:root{--jky-add-input-gap:12px;--jky-add-input-row-gap:8px;--jky-add-input-min-width:100px;--jky-add-input-action-width:80px}.jky-add-input{display:flex;flex-direction:column;gap:var(--jky-add-input-row-gap);min-width:var(--jky-add-input-min-width)}.jky-add-input__row{align-items:center;display:flex;gap:var(--jky-add-input-gap)}.jky-add-input__key,.jky-add-input__value{flex:1;min-width:0}.jky-add-input__actions{display:flex;flex-shrink:0;gap:var(--jky-add-input-gap);width:var(--jky-add-input-action-width)}:root{--jky-button-primary-bg:#007bff;--jky-button-primary-text:#fff;--jky-button-primary-hover-bg:#0056b3;--jky-button-success-bg:#28a745;--jky-button-success-text:#fff;--jky-button-success-hover-bg:#1e7e34;--jky-button-warning-bg:#ffc107;--jky-button-warning-text:#fff;--jky-button-warning-hover-bg:#e0a800;--jky-button-danger-bg:#dc3545;--jky-button-danger-text:#fff;--jky-button-danger-hover-bg:#c82333;--jky-button-info-bg:#6c757d;--jky-button-info-text:#fff;--jky-button-info-hover-bg:#5a6268;--jky-button-default-bg:#fff;--jky-button-default-text:#606266;--jky-button-default-border:#dcdfe6;--jky-button-default-hover-bg:#f5f7fa;--jky-button-font-size:14px;--jky-button-font-size-small:12px;--jky-button-font-size-large:16px;--jky-button-padding:0 16px;--jky-button-padding-small:0 12px;--jky-button-padding-large:0 20px;--jky-button-height:40px;--jky-button-height-small:32px;--jky-button-height-large:48px;--jky-button-border-radius:0.375rem;--jky-button-disabled-opacity:0.5;--jky-button-disabled-bg:#f5f7fa;--jky-button-disabled-text:#c0c4cc;--jky-button-loading-opacity:0.7;--jky-button-icon-size:1.25rem;--jky-button-icon-margin:0.5rem}.jky-button{align-items:center;background-color:var(--jky-button-default-bg);border:1px solid var(--jky-button-default-border);border-radius:var(--jky-button-border-radius);color:var(--jky-button-default-text);cursor:pointer;display:inline-flex;font-size:var(--jky-button-font-size);font-weight:500;height:var(--jky-button-height);justify-content:center;padding:var(--jky-button-padding);transition:color .2s,background-color .2s}.jky-button--primary{background-color:var(--jky-button-primary-bg);border:none;color:var(--jky-button-primary-text)}.jky-button--primary:hover{background-color:var(--jky-button-primary-hover-bg)}.jky-button--success{background-color:var(--jky-button-success-bg);border:none;color:var(--jky-button-success-text)}.jky-button--success:hover{background-color:var(--jky-button-success-hover-bg)}.jky-button--warning{background-color:var(--jky-button-warning-bg);border:none;color:var(--jky-button-warning-text)}.jky-button--warning:hover{background-color:var(--jky-button-warning-hover-bg)}.jky-button--danger{background-color:var(--jky-button-danger-bg);border:none;color:var(--jky-button-danger-text)}.jky-button--danger:hover{background-color:var(--jky-button-danger-hover-bg)}.jky-button--info{background-color:var(--jky-button-info-bg);border:none;color:var(--jky-button-info-text)}.jky-button--info:hover{background-color:var(--jky-button-info-hover-bg)}.jky-button--small{font-size:var(--jky-button-font-size-small);height:var(--jky-button-height-small);padding:var(--jky-button-padding-small)}.jky-button--large{font-size:var(--jky-button-font-size-large);height:var(--jky-button-height-large);padding:var(--jky-button-padding-large)}.jky-button.is-disabled{background-color:var(--jky-button-disabled-bg);color:var(--jky-button-disabled-text);cursor:not-allowed;opacity:var(--jky-button-disabled-opacity);pointer-events:none}.jky-button.is-loading{opacity:var(--jky-button-loading-opacity);pointer-events:none;position:relative}.jky-button__loading{display:flex;inset:0;position:absolute}.jky-button__icon,.jky-button__loading{align-items:center;justify-content:center}.jky-button__icon{display:inline-flex;font-size:1em;margin-right:var(--jky-button-icon-margin)}.jky-button__icon:only-child{margin-right:0}.jky-button--suffix .jky-button__icon{margin-left:var(--jky-button-icon-margin);margin-right:0}.jky-button:focus-visible{box-shadow:0 0 0 2px #fff,0 0 0 4px #000;outline:2px solid transparent;outline-offset:2px}.loading-spinner{animation:spin 1s linear infinite;height:var(--jky-button-icon-size);width:var(--jky-button-icon-size)}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}:root{--jky-button-nav-active-bg:var(--el-color-primary);--jky-button-nav-active-text:#fff;--jky-button-nav-inactive-bg:var(--el-fill-color-light);--jky-button-nav-inactive-text:var(--el-text-color-regular);--el-dropdown-menu-margin-left:12px}.jky-button-nav{align-items:center;display:flex;flex-wrap:wrap;.el-dropdown{margin-left:var(--el-dropdown-menu-margin-left)}}.jky-button-nav-item{background-color:var(--jky-button-nav-inactive-bg);color:var(--jky-button-nav-inactive-text);&.is-active,&[aria-pressed=true]{background-color:var(--jky-button-nav-active-bg);color:var(--jky-button-nav-active-text)}}:root{--j-code-mirror-border-color:#dcdfe6;--j-code-mirror-border-radius:4px;--j-code-mirror-height:400px}.j-code-mirror-editor{border-radius:var(--j-code-mirror-border-radius);height:var(--j-code-mirror-height);overflow:hidden;width:100%}.code-mirror-container{height:100%;overflow:auto;width:100%}.code-mirror-container .cm-editor{height:100%}.code-mirror-container .cm-scroller{font-family:Consolas,Monaco,Courier New,monospace;font-size:14px;line-height:1.5;overflow:auto}.code-mirror-container .cm-gutters{background-color:#2c2d2d;border-color:#4c4d4f;color:#909399}:root{--jky-form-item-border-width:4px;--jky-form-item-border-color:var(--el-color-primary);--jky-form-item-bg-color:rgba(var(--el-color-primary-rgb),0.5);--jky-form-grid-cols-xs:1;--jky-form-grid-cols-sm:2;--jky-form-grid-cols-md:2;--jky-form-grid-cols-lg:3;--jky-form-grid-cols-xl:3;--jky-form-grid-cols-2xl:4;--jky-form-grid-cols-3xl:4}.jky-form--grid{display:grid;gap:var(--el-form-item-gutter,16px);grid-template-columns:repeat(var(--jky-form-grid-cols-xs),minmax(0,1fr))}.el-form--inline.jky-form--grid .el-form-item{margin-right:0;.el-form-item__content{align-items:flex-start}}@media (min-width:640px){.jky-form--grid{grid-template-columns:repeat(var(--jky-form-grid-cols-sm,var(--jky-form-grid-cols-xs)),minmax(0,1fr))}}@media (min-width:768px){.jky-form--grid{grid-template-columns:repeat(var(--jky-form-grid-cols-md,var(--jky-form-grid-cols-sm)),minmax(0,1fr))}}@media (min-width:1024px){.jky-form--grid{grid-template-columns:repeat(var(--jky-form-grid-cols-lg,var(--jky-form-grid-cols-md)),minmax(0,1fr))}}@media (min-width:1280px){.jky-form--grid{grid-template-columns:repeat(var(--jky-form-grid-cols-xl,var(--jky-form-grid-cols-lg)),minmax(0,1fr))}}@media (min-width:1536px){.jky-form--grid{grid-template-columns:repeat(var(--jky-form-grid-cols-2xl,var(--jky-form-grid-cols-xl)),minmax(0,1fr))}}@media (min-width:1920px){.jky-form--grid{grid-template-columns:repeat(var(--jky-form-grid-cols-3xl,var(--jky-form-grid-cols-2xl)),minmax(0,1fr))}}:root{--jky-menu-bg-color:#fff;--jky-menu-text-color:#303133;--jky-menu-active-color:#409eff;--jky-menu-hover-bg-color:#f5f7fa;--jky-menu-hover-text-color:#606266;--jky-menu-item-height:56px;--jky-menu-item-padding:0 20px;--jky-menu-item-font-size:14px;--jky-menu-icon-size:18px;--jky-menu-icon-margin:8px;--jky-menu-border-color:#e4e7ed;--jky-menu-disabled-opacity:0.5;--jky-menu-disabled-text-color:#c0c4cc}.jky-menu{li+li{margin-top:0}}:root{--jky-page-header-bg-color:#1890ff;--jky-page-header-bg-size:cover;--jky-page-header-bg-position:center;--jky-page-header-box-shadow:0 2px 8px rgba(0,0,0,.15);--jky-page-header-padding-x:24px;--jky-page-header-padding-x-mobile:16px;--jky-page-header-gap:16px;--jky-page-header-gap-mobile:12px;--jky-page-header-gap-left:12px;--jky-page-header-gap-status:12px;--jky-page-header-gap-center:24px;--jky-page-header-gap-center-mobile:12px;--jky-page-header-title-color:#fff;--jky-page-header-title-size:20px;--jky-page-header-title-size-mobile:16px;--jky-page-header-title-weight:600;--jky-page-header-text-color:hsla(0,0%,100%,.85);--jky-page-header-text-size:16px;--jky-page-header-icon-color:#fff;--jky-page-header-icon-size:20px;--jky-page-header-icon-hover-opacity:0.8;--jky-page-header-logo-height:40px;--jky-page-header-avatar-size:32px}.jky-page-header{background-color:var(--jky-page-header-bg-color);background-position:var(--jky-page-header-bg-position);background-size:var(--jky-page-header-bg-size);box-shadow:var(--jky-page-header-box-shadow);width:100%}.jky-page-header__container{align-items:center;display:flex;height:100%;justify-content:space-between;margin:0 auto;max-width:100%;padding:0 var(--jky-page-header-padding-x)}.jky-page-header__left{align-items:center;display:flex;flex-shrink:0;gap:var(--jky-page-header-gap-left)}.jky-page-header__logo{height:var(--jky-page-header-logo-height);object-fit:contain;width:auto}.jky-page-header__title{color:var(--jky-page-header-title-color);font-size:var(--jky-page-header-title-size);font-weight:var(--jky-page-header-title-weight);white-space:nowrap}.jky-page-header__center{align-items:center;display:flex;flex:1;justify-content:center;margin:0 var(--jky-page-header-gap-center);min-width:0}.jky-page-header__right{align-items:center;display:flex;flex-shrink:0;gap:var(--jky-page-header-gap)}.jky-page-header__status-icons{align-items:center;display:flex;gap:var(--jky-page-header-gap-status)}.jky-page-header__status-icon{color:var(--jky-page-header-icon-color);cursor:pointer;transition:opacity .2s;&:hover{opacity:var(--jky-page-header-icon-hover-opacity)}}.jky-page-header__time{color:var(--jky-page-header-text-color);font-size:var(--jky-page-header-text-size);white-space:nowrap}.jky-page-header__user{align-items:center;color:var(--jky-page-header-text-color);cursor:pointer;display:flex;gap:8px}.jky-page-header__avatar{color:var(--jky-page-header-icon-color);img{height:100%;object-fit:cover;width:100%}}.jky-page-header__username{white-space:nowrap}.jky-page-header__logout,.jky-page-header__username{color:var(--jky-page-header-text-color);font-size:var(--jky-page-header-text-size)}@media (max-width:768px){.jky-page-header__container{padding:0 var(--jky-page-header-padding-x-mobile)}.jky-page-header__title{font-size:var(--jky-page-header-title-size-mobile)}.jky-page-header__center{margin:0 var(--jky-page-header-gap-center-mobile)}.jky-page-header__right{gap:var(--jky-page-header-gap-mobile)}}:root{--jky-page-layout-gap:5}.jky-page-layout{column-gap:calc(var(--spacing)*var(--jky-page-layout-gap));.el-menu{border-right:none}}.jky-page-table{--jky-page-table_pagination-position:flex-end;.jky-page-table__pagination{.el-scrollbar__view{display:flex;justify-content:var(--jky-page-table_pagination-position)}}}:root{--jky-rich-editor-border:#d9d9d9;--jky-rich-editor-border-hover:#409eff;--jky-rich-editor-border-radius:4px;--jky-rich-editor-box-shadow:0 0 0 1px #409eff}.jky-rich-editor{width:100%}.jky-rich-editor .tox-tinymce{border:1px solid var(--jky-rich-editor-border);border-radius:var(--jky-rich-editor-border-radius);transition:border-color .2s}.jky-rich-editor .tox-tinymce:hover{border-color:var(--jky-rich-editor-border-hover)}.jky-rich-editor .tox-tinymce:focus-within{border-color:var(--jky-rich-editor-border-hover);box-shadow:var(--jky-rich-editor-box-shadow)}.jky-rich-editor.is-disabled .tox-tinymce{background-color:#f5f7fa;cursor:not-allowed}.jky-rich-editor.is-readonly .tox-tinymce{background-color:#fafafa}:root{--jky-say-hello-bg:#42b883;--jky-say-hello-text:#fff;--jky-say-hello-hover-bg:#3aa876;--jky-say-hello-font-size:16px;--jky-say-hello-padding:8px 20px;--jky-say-hello-margin:4px 2px;--jky-say-hello-border-radius:6px}.jky-say-hello{background-color:var(--jky-say-hello-bg);border-radius:var(--jky-say-hello-border-radius);color:var(--jky-say-hello-text);cursor:pointer;display:inline-block;font-size:var(--jky-say-hello-font-size);margin:var(--jky-say-hello-margin);padding:var(--jky-say-hello-padding);text-align:center;text-decoration:none;transition:background-color .2s ease}.jky-say-hello:hover{background-color:var(--jky-say-hello-hover-bg)}@import "tailwindcss";@plugin "@iconify/tailwind4";@source "../node_modules/jky-component-lib/dist/es/";@source "../docs/**/*.md";@source "./**/*.md";@source "./**/*.vue";@source "./**/*.css";@custom-variant dark (&:is(.dark *));.jky-tabs{--jky-tabs-color:var(--el-text-color-regular);--jky-tabs-active-color:var(--el-color-primary);--jky-tabs-height:40px;--jky-tabs-font-size:14px;.el-tabs__item{color:var(--jky-tabs-color);font-size:var(--jky-tabs-font-size);height:var(--jky-tabs-height);line-height:var(--jky-tabs-height);&.is-active{color:var(--jky-tabs-active-color)}}.el-tabs__active-bar{background-color:var(--jky-tabs-active-color)}}.jky-tabs--route{.el-tabs__item{&.is-closable:hover{.el-tabs__item__close{opacity:1}}}}
|
|
1
|
+
:root{--jky-add-input-gap:12px;--jky-add-input-row-gap:8px;--jky-add-input-min-width:100px;--jky-add-input-action-width:80px}.jky-add-input{display:flex;flex-direction:column;gap:var(--jky-add-input-row-gap);min-width:var(--jky-add-input-min-width)}.jky-add-input__row{align-items:center;display:flex;gap:var(--jky-add-input-gap)}.jky-add-input__key,.jky-add-input__value{flex:1;min-width:0}.jky-add-input__actions{display:flex;flex-shrink:0;gap:var(--jky-add-input-gap);width:var(--jky-add-input-action-width)}:root{--jky-button-primary-bg:#007bff;--jky-button-primary-text:#fff;--jky-button-primary-hover-bg:#0056b3;--jky-button-success-bg:#28a745;--jky-button-success-text:#fff;--jky-button-success-hover-bg:#1e7e34;--jky-button-warning-bg:#ffc107;--jky-button-warning-text:#fff;--jky-button-warning-hover-bg:#e0a800;--jky-button-danger-bg:#dc3545;--jky-button-danger-text:#fff;--jky-button-danger-hover-bg:#c82333;--jky-button-info-bg:#6c757d;--jky-button-info-text:#fff;--jky-button-info-hover-bg:#5a6268;--jky-button-default-bg:#fff;--jky-button-default-text:#606266;--jky-button-default-border:#dcdfe6;--jky-button-default-hover-bg:#f5f7fa;--jky-button-font-size:14px;--jky-button-font-size-small:12px;--jky-button-font-size-large:16px;--jky-button-padding:0 16px;--jky-button-padding-small:0 12px;--jky-button-padding-large:0 20px;--jky-button-height:40px;--jky-button-height-small:32px;--jky-button-height-large:48px;--jky-button-border-radius:0.375rem;--jky-button-disabled-opacity:0.5;--jky-button-disabled-bg:#f5f7fa;--jky-button-disabled-text:#c0c4cc;--jky-button-loading-opacity:0.7;--jky-button-icon-size:1.25rem;--jky-button-icon-margin:0.5rem}.jky-button{align-items:center;background-color:var(--jky-button-default-bg);border:1px solid var(--jky-button-default-border);border-radius:var(--jky-button-border-radius);color:var(--jky-button-default-text);cursor:pointer;display:inline-flex;font-size:var(--jky-button-font-size);font-weight:500;height:var(--jky-button-height);justify-content:center;padding:var(--jky-button-padding);transition:color .2s,background-color .2s}.jky-button--primary{background-color:var(--jky-button-primary-bg);border:none;color:var(--jky-button-primary-text)}.jky-button--primary:hover{background-color:var(--jky-button-primary-hover-bg)}.jky-button--success{background-color:var(--jky-button-success-bg);border:none;color:var(--jky-button-success-text)}.jky-button--success:hover{background-color:var(--jky-button-success-hover-bg)}.jky-button--warning{background-color:var(--jky-button-warning-bg);border:none;color:var(--jky-button-warning-text)}.jky-button--warning:hover{background-color:var(--jky-button-warning-hover-bg)}.jky-button--danger{background-color:var(--jky-button-danger-bg);border:none;color:var(--jky-button-danger-text)}.jky-button--danger:hover{background-color:var(--jky-button-danger-hover-bg)}.jky-button--info{background-color:var(--jky-button-info-bg);border:none;color:var(--jky-button-info-text)}.jky-button--info:hover{background-color:var(--jky-button-info-hover-bg)}.jky-button--small{font-size:var(--jky-button-font-size-small);height:var(--jky-button-height-small);padding:var(--jky-button-padding-small)}.jky-button--large{font-size:var(--jky-button-font-size-large);height:var(--jky-button-height-large);padding:var(--jky-button-padding-large)}.jky-button.is-disabled{background-color:var(--jky-button-disabled-bg);color:var(--jky-button-disabled-text);cursor:not-allowed;opacity:var(--jky-button-disabled-opacity);pointer-events:none}.jky-button.is-loading{opacity:var(--jky-button-loading-opacity);pointer-events:none;position:relative}.jky-button__loading{display:flex;inset:0;position:absolute}.jky-button__icon,.jky-button__loading{align-items:center;justify-content:center}.jky-button__icon{display:inline-flex;font-size:1em;margin-right:var(--jky-button-icon-margin)}.jky-button__icon:only-child{margin-right:0}.jky-button--suffix .jky-button__icon{margin-left:var(--jky-button-icon-margin);margin-right:0}.jky-button:focus-visible{box-shadow:0 0 0 2px #fff,0 0 0 4px #000;outline:2px solid transparent;outline-offset:2px}.loading-spinner{animation:spin 1s linear infinite;height:var(--jky-button-icon-size);width:var(--jky-button-icon-size)}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}:root{--jky-button-nav-active-bg:var(--el-color-primary);--jky-button-nav-active-text:#fff;--jky-button-nav-inactive-bg:var(--el-fill-color-light);--jky-button-nav-inactive-text:var(--el-text-color-regular);--el-dropdown-menu-margin-left:12px}.jky-button-nav{align-items:center;display:flex;flex-wrap:wrap;.el-dropdown{margin-left:var(--el-dropdown-menu-margin-left)}}.jky-button-nav-item{background-color:var(--jky-button-nav-inactive-bg);color:var(--jky-button-nav-inactive-text);&.is-active,&[aria-pressed=true]{background-color:var(--jky-button-nav-active-bg);color:var(--jky-button-nav-active-text)}}:root{--j-code-mirror-border-color:#dcdfe6;--j-code-mirror-border-radius:4px;--j-code-mirror-height:400px}.j-code-mirror-editor{border-radius:var(--j-code-mirror-border-radius);height:var(--j-code-mirror-height);overflow:hidden;width:100%}.code-mirror-container{height:100%;overflow:auto;width:100%}.code-mirror-container .cm-editor{height:100%}.code-mirror-container .cm-scroller{font-family:Consolas,Monaco,Courier New,monospace;font-size:14px;line-height:1.5;overflow:auto}.code-mirror-container .cm-gutters{background-color:#2c2d2d;border-color:#4c4d4f;color:#909399}:root{--jky-form-item-border-width:4px;--jky-form-item-border-color:var(--el-color-primary);--jky-form-item-bg-color:rgba(var(--el-color-primary-rgb),0.5);--jky-form-grid-cols-xs:1;--jky-form-grid-cols-sm:2;--jky-form-grid-cols-md:2;--jky-form-grid-cols-lg:3;--jky-form-grid-cols-xl:3;--jky-form-grid-cols-2xl:4;--jky-form-grid-cols-3xl:4}.jky-form--grid{display:grid;gap:var(--el-form-item-gutter,16px);grid-template-columns:repeat(var(--jky-form-grid-cols-xs),minmax(0,1fr))}.el-form--inline.jky-form--grid .el-form-item{margin-right:0;.el-form-item__content{align-items:flex-start}}@media (min-width:640px){.jky-form--grid{grid-template-columns:repeat(var(--jky-form-grid-cols-sm,var(--jky-form-grid-cols-xs)),minmax(0,1fr))}}@media (min-width:768px){.jky-form--grid{grid-template-columns:repeat(var(--jky-form-grid-cols-md,var(--jky-form-grid-cols-sm)),minmax(0,1fr))}}@media (min-width:1024px){.jky-form--grid{grid-template-columns:repeat(var(--jky-form-grid-cols-lg,var(--jky-form-grid-cols-md)),minmax(0,1fr))}}@media (min-width:1280px){.jky-form--grid{grid-template-columns:repeat(var(--jky-form-grid-cols-xl,var(--jky-form-grid-cols-lg)),minmax(0,1fr))}}@media (min-width:1536px){.jky-form--grid{grid-template-columns:repeat(var(--jky-form-grid-cols-2xl,var(--jky-form-grid-cols-xl)),minmax(0,1fr))}}@media (min-width:1920px){.jky-form--grid{grid-template-columns:repeat(var(--jky-form-grid-cols-3xl,var(--jky-form-grid-cols-2xl)),minmax(0,1fr))}}:root{--jky-menu-bg-color:#fff;--jky-menu-text-color:#303133;--jky-menu-active-color:#409eff;--jky-menu-hover-bg-color:#f5f7fa;--jky-menu-hover-text-color:#606266;--jky-menu-item-height:56px;--jky-menu-item-padding:0 20px;--jky-menu-item-font-size:14px;--jky-menu-icon-size:18px;--jky-menu-icon-margin:8px;--jky-menu-border-color:#e4e7ed;--jky-menu-disabled-opacity:0.5;--jky-menu-disabled-text-color:#c0c4cc}.jky-menu{li+li{margin-top:0}}:root{--jky-page-header-bg-color:#1890ff;--jky-page-header-bg-size:cover;--jky-page-header-bg-position:center;--jky-page-header-box-shadow:0 2px 8px rgba(0,0,0,.15);--jky-page-header-padding-x:24px;--jky-page-header-padding-x-mobile:16px;--jky-page-header-gap:16px;--jky-page-header-gap-mobile:12px;--jky-page-header-gap-left:12px;--jky-page-header-gap-status:12px;--jky-page-header-gap-center:24px;--jky-page-header-gap-center-mobile:12px;--jky-page-header-title-color:#fff;--jky-page-header-title-size:20px;--jky-page-header-title-size-mobile:16px;--jky-page-header-title-weight:600;--jky-page-header-text-color:hsla(0,0%,100%,.85);--jky-page-header-text-size:16px;--jky-page-header-icon-color:#fff;--jky-page-header-icon-size:20px;--jky-page-header-icon-hover-opacity:0.8;--jky-page-header-logo-height:40px;--jky-page-header-avatar-size:32px}.jky-page-header{background-color:var(--jky-page-header-bg-color);background-position:var(--jky-page-header-bg-position);background-size:var(--jky-page-header-bg-size);box-shadow:var(--jky-page-header-box-shadow);width:100%}.jky-page-header__container{align-items:center;display:flex;height:100%;justify-content:space-between;margin:0 auto;max-width:100%;padding:0 var(--jky-page-header-padding-x)}.jky-page-header__left{align-items:center;display:flex;flex-shrink:0;gap:var(--jky-page-header-gap-left)}.jky-page-header__logo{height:var(--jky-page-header-logo-height);object-fit:contain;width:auto}.jky-page-header__title{color:var(--jky-page-header-title-color);font-size:var(--jky-page-header-title-size);font-weight:var(--jky-page-header-title-weight);white-space:nowrap}.jky-page-header__center{align-items:center;display:flex;flex:1;justify-content:center;margin:0 var(--jky-page-header-gap-center);min-width:0}.jky-page-header__right{align-items:center;display:flex;flex-shrink:0;gap:var(--jky-page-header-gap)}.jky-page-header__status-icons{align-items:center;display:flex;gap:var(--jky-page-header-gap-status)}.jky-page-header__status-icon{color:var(--jky-page-header-icon-color);cursor:pointer;transition:opacity .2s;&:hover{opacity:var(--jky-page-header-icon-hover-opacity)}}.jky-page-header__time{color:var(--jky-page-header-text-color);font-size:var(--jky-page-header-text-size);white-space:nowrap}.jky-page-header__user{align-items:center;color:var(--jky-page-header-text-color);cursor:pointer;display:flex;gap:8px}.jky-page-header__avatar{color:var(--jky-page-header-icon-color);img{height:100%;object-fit:cover;width:100%}}.jky-page-header__username{white-space:nowrap}.jky-page-header__logout,.jky-page-header__username{color:var(--jky-page-header-text-color);font-size:var(--jky-page-header-text-size)}@media (max-width:768px){.jky-page-header__container{padding:0 var(--jky-page-header-padding-x-mobile)}.jky-page-header__title{font-size:var(--jky-page-header-title-size-mobile)}.jky-page-header__center{margin:0 var(--jky-page-header-gap-center-mobile)}.jky-page-header__right{gap:var(--jky-page-header-gap-mobile)}}:root{--jky-page-layout-gap:5}.jky-page-layout{column-gap:calc(var(--spacing)*var(--jky-page-layout-gap));.el-menu{border-right:none}}.jky-page-table{--jky-page-table_pagination-position:flex-end;.jky-page-table__pagination{.el-scrollbar__view{display:flex;justify-content:var(--jky-page-table_pagination-position)}}}:root{--jky-rich-editor-border:#d9d9d9;--jky-rich-editor-border-hover:#409eff;--jky-rich-editor-border-radius:4px;--jky-rich-editor-box-shadow:0 0 0 1px #409eff}.jky-rich-editor{width:100%}.jky-rich-editor .tox-tinymce{border:1px solid var(--jky-rich-editor-border);border-radius:var(--jky-rich-editor-border-radius);transition:border-color .2s}.jky-rich-editor .tox-tinymce:hover{border-color:var(--jky-rich-editor-border-hover)}.jky-rich-editor .tox-tinymce:focus-within{border-color:var(--jky-rich-editor-border-hover);box-shadow:var(--jky-rich-editor-box-shadow)}.jky-rich-editor.is-disabled .tox-tinymce{background-color:#f5f7fa;cursor:not-allowed}.jky-rich-editor.is-readonly .tox-tinymce{background-color:#fafafa}:root{--jky-say-hello-bg:#42b883;--jky-say-hello-text:#fff;--jky-say-hello-hover-bg:#3aa876;--jky-say-hello-font-size:16px;--jky-say-hello-padding:8px 20px;--jky-say-hello-margin:4px 2px;--jky-say-hello-border-radius:6px}.jky-say-hello{background-color:var(--jky-say-hello-bg);border-radius:var(--jky-say-hello-border-radius);color:var(--jky-say-hello-text);cursor:pointer;display:inline-block;font-size:var(--jky-say-hello-font-size);margin:var(--jky-say-hello-margin);padding:var(--jky-say-hello-padding);text-align:center;text-decoration:none;transition:background-color .2s ease}.jky-say-hello:hover{background-color:var(--jky-say-hello-hover-bg)}@import "tailwindcss";@plugin "@iconify/tailwind4";@source "../node_modules/jky-component-lib/dist/es/";@source "../docs/**/*.md";@source "./**/*.md";@source "./**/*.vue";@source "./**/*.css";@custom-variant dark (&:is(.dark *))
|
package/dist/lib/components.d.ts
CHANGED
package/dist/lib/components.js
CHANGED
|
@@ -11,7 +11,6 @@ const index$7 = require("./page-layout/index.js");
|
|
|
11
11
|
const index$8 = require("./page-table/index.js");
|
|
12
12
|
const index$9 = require("./rich-editor/index.js");
|
|
13
13
|
const index$a = require("./say-hello/index.js");
|
|
14
|
-
const index$b = require("./tabs/index.js");
|
|
15
14
|
const components = [
|
|
16
15
|
index$a.JkySayHello,
|
|
17
16
|
index$1.JkyButton,
|
|
@@ -23,8 +22,7 @@ const components = [
|
|
|
23
22
|
index.JkyAddInput,
|
|
24
23
|
index$9.JkyRichEditor,
|
|
25
24
|
index$8.JkyPageTable,
|
|
26
|
-
index$7.JkyPageLayout
|
|
27
|
-
index$b.JkyTabs
|
|
25
|
+
index$7.JkyPageLayout
|
|
28
26
|
];
|
|
29
27
|
exports.JkyAddInput = index.JkyAddInput;
|
|
30
28
|
exports.JkyButton = index$1.JkyButton;
|
|
@@ -37,5 +35,4 @@ exports.JkyPageLayout = index$7.JkyPageLayout;
|
|
|
37
35
|
exports.JkyPageTable = index$8.JkyPageTable;
|
|
38
36
|
exports.JkyRichEditor = index$9.JkyRichEditor;
|
|
39
37
|
exports.JkySayHello = index$a.JkySayHello;
|
|
40
|
-
exports.JkyTabs = index$b.JkyTabs;
|
|
41
38
|
exports.components = components;
|
package/dist/lib/index.js
CHANGED
|
@@ -4,8 +4,6 @@ const components = require("./components.js");
|
|
|
4
4
|
const installer$1 = require("./utils/installer.js");
|
|
5
5
|
;/* empty css */
|
|
6
6
|
const resolver = require("./resolver.js");
|
|
7
|
-
const TabContent_vue_vue_type_script_setup_true_lang = require("./tabs/TabContent.vue.js");
|
|
8
|
-
;/* empty css */
|
|
9
7
|
const index = require("./add-input/index.js");
|
|
10
8
|
const index$1 = require("./button/index.js");
|
|
11
9
|
const index$2 = require("./button-nav/index.js");
|
|
@@ -17,16 +15,11 @@ const index$7 = require("./page-layout/index.js");
|
|
|
17
15
|
const index$8 = require("./page-table/index.js");
|
|
18
16
|
const index$9 = require("./rich-editor/index.js");
|
|
19
17
|
const index$a = require("./say-hello/index.js");
|
|
20
|
-
const index$b = require("./tabs/index.js");
|
|
21
|
-
const routeListener = require("./tabs/routeListener.js");
|
|
22
|
-
const useTabsStore = require("./tabs/useTabsStore.js");
|
|
23
|
-
const useTabs = require("./tabs/useTabs.js");
|
|
24
18
|
const installer = installer$1.createInstaller(components.components);
|
|
25
19
|
const install = installer.install;
|
|
26
20
|
const version = installer.version;
|
|
27
21
|
exports.components = components.components;
|
|
28
22
|
exports.JkyComponentLibResolver = resolver.JkyComponentLibResolver;
|
|
29
|
-
exports.JkyTabContent = TabContent_vue_vue_type_script_setup_true_lang.default;
|
|
30
23
|
exports.JkyAddInput = index.JkyAddInput;
|
|
31
24
|
exports.JkyButton = index$1.JkyButton;
|
|
32
25
|
exports.JkyButtonNav = index$2.JkyButtonNav;
|
|
@@ -38,14 +31,6 @@ exports.JkyPageLayout = index$7.JkyPageLayout;
|
|
|
38
31
|
exports.JkyPageTable = index$8.JkyPageTable;
|
|
39
32
|
exports.JkyRichEditor = index$9.JkyRichEditor;
|
|
40
33
|
exports.JkySayHello = index$a.JkySayHello;
|
|
41
|
-
exports.JkyTabs = index$b.JkyTabs;
|
|
42
|
-
exports.clearRouteListeners = routeListener.clearRouteListeners;
|
|
43
|
-
exports.emitRouteChange = routeListener.emitRouteChange;
|
|
44
|
-
exports.onRouteChange = routeListener.onRouteChange;
|
|
45
|
-
exports.createTabsStore = useTabsStore.createTabsStore;
|
|
46
|
-
exports.resetTabsStore = useTabsStore.resetTabsStore;
|
|
47
|
-
exports.useTabsStore = useTabsStore.useTabsStore;
|
|
48
|
-
exports.useTabs = useTabs.useTabs;
|
|
49
34
|
exports.default = installer;
|
|
50
35
|
exports.install = install;
|
|
51
36
|
exports.version = version;
|
|
@@ -71,46 +71,48 @@ const _sfc_main = /* @__PURE__ */ vue.defineComponent(__spreadProps(__spreadValu
|
|
|
71
71
|
return vue.openBlock(), vue.createElementBlock(vue.Fragment, {
|
|
72
72
|
key: item.index
|
|
73
73
|
}, [
|
|
74
|
-
item.
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
74
|
+
!item.hideMenu ? (vue.openBlock(), vue.createElementBlock(vue.Fragment, { key: 0 }, [
|
|
75
|
+
item.children && item.children.length > 0 ? (vue.openBlock(), vue.createBlock(vue.unref(ElementPlus.ElSubMenu), {
|
|
76
|
+
key: 0,
|
|
77
|
+
index: item.index || "",
|
|
78
|
+
class: vue.normalizeClass(item.customClass),
|
|
79
|
+
disabled: (_a = item.disabled) != null ? _a : false,
|
|
80
|
+
"popper-offset": item.popperOffset
|
|
81
|
+
}, {
|
|
82
|
+
title: vue.withCtx(() => [
|
|
83
|
+
item.icon ? (vue.openBlock(), vue.createElementBlock("span", {
|
|
84
|
+
key: 0,
|
|
85
|
+
class: vue.normalizeClass([item.icon, "jky-menu-item__icon"])
|
|
86
|
+
}, null, 2)) : vue.createCommentVNode("", true),
|
|
87
|
+
item.title ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_1, vue.toDisplayString(item.title), 1)) : vue.createCommentVNode("", true)
|
|
88
|
+
]),
|
|
89
|
+
default: vue.withCtx(() => [
|
|
90
|
+
(vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(item.children, (child) => {
|
|
91
|
+
return vue.openBlock(), vue.createBlock(MenuItem_vue_vue_type_script_setup_true_lang.default, {
|
|
92
|
+
key: child.index,
|
|
93
|
+
item: child,
|
|
94
|
+
levels: props.levels > 0 ? props.levels - 1 : 0
|
|
95
|
+
}, null, 8, ["item", "levels"]);
|
|
96
|
+
}), 128))
|
|
97
|
+
]),
|
|
98
|
+
_: 2
|
|
99
|
+
}, 1032, ["index", "class", "disabled", "popper-offset"])) : (vue.openBlock(), vue.createBlock(vue.unref(ElementPlus.ElMenuItem), {
|
|
100
|
+
key: 1,
|
|
101
|
+
index: item.index || "",
|
|
102
|
+
class: vue.normalizeClass(item.customClass),
|
|
103
|
+
disabled: (_b = item.disabled) != null ? _b : false,
|
|
104
|
+
route: item.route
|
|
105
|
+
}, {
|
|
106
|
+
default: vue.withCtx(() => [
|
|
107
|
+
item.icon ? (vue.openBlock(), vue.createElementBlock("span", {
|
|
108
|
+
key: 0,
|
|
109
|
+
class: vue.normalizeClass([item.icon, "jky-menu-item__icon"])
|
|
110
|
+
}, null, 2)) : vue.createCommentVNode("", true),
|
|
111
|
+
item.title ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_2, vue.toDisplayString(item.title), 1)) : vue.createCommentVNode("", true)
|
|
112
|
+
]),
|
|
113
|
+
_: 2
|
|
114
|
+
}, 1032, ["index", "class", "disabled", "route"]))
|
|
115
|
+
], 64)) : vue.createCommentVNode("", true)
|
|
114
116
|
], 64);
|
|
115
117
|
}), 128)) : vue.renderSlot(_ctx.$slots, "default", { key: 1 })
|
|
116
118
|
]),
|
|
@@ -21,46 +21,48 @@ const _sfc_main = /* @__PURE__ */ vue.defineComponent({
|
|
|
21
21
|
return (_ctx, _cache) => {
|
|
22
22
|
var _a, _b;
|
|
23
23
|
const _component_MenuItem = vue.resolveComponent("MenuItem", true);
|
|
24
|
-
return props.item.
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
24
|
+
return !props.item.hideMenu ? (vue.openBlock(), vue.createElementBlock(vue.Fragment, { key: 0 }, [
|
|
25
|
+
props.item.children && props.item.children.length > 0 ? (vue.openBlock(), vue.createBlock(vue.unref(ElementPlus.ElSubMenu), {
|
|
26
|
+
key: 0,
|
|
27
|
+
index: props.item.index || "",
|
|
28
|
+
class: vue.normalizeClass(props.item.customClass),
|
|
29
|
+
disabled: (_a = props.item.disabled) != null ? _a : false,
|
|
30
|
+
"popper-offset": props.item.popperOffset
|
|
31
|
+
}, {
|
|
32
|
+
title: vue.withCtx(() => [
|
|
33
|
+
props.item.icon ? (vue.openBlock(), vue.createElementBlock("span", {
|
|
34
|
+
key: 0,
|
|
35
|
+
class: vue.normalizeClass([props.item.icon, "jky-menu-item__icon"])
|
|
36
|
+
}, null, 2)) : vue.createCommentVNode("", true),
|
|
37
|
+
props.item.title ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_1, vue.toDisplayString(props.item.title), 1)) : vue.createCommentVNode("", true)
|
|
38
|
+
]),
|
|
39
|
+
default: vue.withCtx(() => [
|
|
40
|
+
(vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(props.item.children, (child) => {
|
|
41
|
+
return vue.openBlock(), vue.createBlock(_component_MenuItem, {
|
|
42
|
+
key: child.index,
|
|
43
|
+
item: child,
|
|
44
|
+
levels: props.levels !== void 0 && props.levels > 0 ? props.levels - 1 : 0
|
|
45
|
+
}, null, 8, ["item", "levels"]);
|
|
46
|
+
}), 128))
|
|
47
|
+
]),
|
|
48
|
+
_: 1
|
|
49
|
+
}, 8, ["index", "class", "disabled", "popper-offset"])) : (vue.openBlock(), vue.createBlock(vue.unref(ElementPlus.ElMenuItem), {
|
|
50
|
+
key: 1,
|
|
51
|
+
index: props.item.index || "",
|
|
52
|
+
class: vue.normalizeClass(props.item.customClass),
|
|
53
|
+
disabled: (_b = props.item.disabled) != null ? _b : false,
|
|
54
|
+
route: props.item.route
|
|
55
|
+
}, {
|
|
56
|
+
default: vue.withCtx(() => [
|
|
57
|
+
props.item.icon ? (vue.openBlock(), vue.createElementBlock("span", {
|
|
58
|
+
key: 0,
|
|
59
|
+
class: vue.normalizeClass([props.item.icon, "jky-menu-item__icon"])
|
|
60
|
+
}, null, 2)) : vue.createCommentVNode("", true),
|
|
61
|
+
props.item.title ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_2, vue.toDisplayString(props.item.title), 1)) : vue.createCommentVNode("", true)
|
|
62
|
+
]),
|
|
63
|
+
_: 1
|
|
64
|
+
}, 8, ["index", "class", "disabled", "route"]))
|
|
65
|
+
], 64)) : vue.createCommentVNode("", true);
|
|
64
66
|
};
|
|
65
67
|
}
|
|
66
68
|
});
|
package/dist/lib/package.json.js
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import { PageLayoutProps } from './types';
|
|
2
2
|
declare const _default: import('vue').DefineComponent<PageLayoutProps, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<PageLayoutProps> & Readonly<{}>, {
|
|
3
|
-
cachable: boolean;
|
|
4
3
|
showTopMenu: boolean;
|
|
5
4
|
showSideMenu: boolean;
|
|
6
5
|
asideWidth: string;
|
|
7
6
|
asideWithScrollbar: boolean;
|
|
8
7
|
mainWithCard: boolean;
|
|
9
8
|
mainWithScrollbar: boolean;
|
|
9
|
+
cachable: boolean;
|
|
10
10
|
transitionName: string;
|
|
11
11
|
tabsWithCard: boolean;
|
|
12
12
|
cardPadding: string;
|
|
@@ -37,9 +37,6 @@ const lodashEs = require("lodash-es");
|
|
|
37
37
|
const vueRouter = require("vue-router");
|
|
38
38
|
const Menu_vue_vue_type_script_setup_true_lang = require("../menu/Menu.vue.js");
|
|
39
39
|
;/* empty css */
|
|
40
|
-
const Tabs_vue_vue_type_script_setup_true_lang = require("../tabs/Tabs.vue.js");
|
|
41
|
-
;/* empty css */
|
|
42
|
-
const useTabsStore = require("../tabs/useTabsStore.js");
|
|
43
40
|
const _hoisted_1 = { class: "w-full flex justify-center" };
|
|
44
41
|
const _hoisted_2 = { class: "flex flex-1 min-h-0 overflow-hidden gap-3" };
|
|
45
42
|
const _sfc_main = /* @__PURE__ */ vue.defineComponent(__spreadProps(__spreadValues({}, {
|
|
@@ -70,32 +67,30 @@ const _sfc_main = /* @__PURE__ */ vue.defineComponent(__spreadProps(__spreadValu
|
|
|
70
67
|
const props = __props;
|
|
71
68
|
const router = vueRouter.useRouter();
|
|
72
69
|
const route = vueRouter.useRoute();
|
|
73
|
-
const store = useTabsStore.useTabsStore();
|
|
74
70
|
const attrs = vue.useAttrs();
|
|
75
71
|
const activeTopMenu = vue.ref("");
|
|
76
72
|
const activeSideMenu = vue.ref("");
|
|
77
73
|
const routes = router.getRoutes();
|
|
78
|
-
const cacheInclude =
|
|
79
|
-
vue.watch(
|
|
80
|
-
cacheInclude,
|
|
81
|
-
(cacheTabs) => {
|
|
82
|
-
console.warn("CacheTabs changed:", cacheTabs);
|
|
83
|
-
},
|
|
84
|
-
{ deep: true }
|
|
85
|
-
);
|
|
74
|
+
const cacheInclude = [];
|
|
86
75
|
function buildMenuFromRoutes(routes2) {
|
|
87
76
|
const menuRoutes = routes2.filter((r) => {
|
|
88
77
|
var _a;
|
|
89
78
|
return (_a = r.meta) == null ? void 0 : _a.title;
|
|
90
79
|
});
|
|
91
80
|
const buildMenuItem = (route2, parentPath = "") => {
|
|
92
|
-
var _a, _b;
|
|
93
|
-
|
|
81
|
+
var _a, _b, _c, _d;
|
|
82
|
+
let fullPath = "";
|
|
83
|
+
if (route2.path.startsWith(parentPath)) {
|
|
84
|
+
fullPath = route2.path;
|
|
85
|
+
} else {
|
|
86
|
+
fullPath = `${parentPath.replace(/\/$/, "")}/${route2.path}`;
|
|
87
|
+
}
|
|
94
88
|
const normalizedPath = fullPath.startsWith("/") ? fullPath : `/${fullPath}`;
|
|
95
89
|
const item = {
|
|
96
90
|
index: normalizedPath,
|
|
97
91
|
title: ((_a = route2.meta) == null ? void 0 : _a.title) || "",
|
|
98
92
|
icon: ((_b = route2.meta) == null ? void 0 : _b.icon) || "",
|
|
93
|
+
hideMenu: (_d = (_c = route2.meta) == null ? void 0 : _c.hideMenu) != null ? _d : false,
|
|
99
94
|
route: normalizedPath,
|
|
100
95
|
path: normalizedPath,
|
|
101
96
|
customClass: activeTopMenu.value.startsWith(normalizedPath) ? "is-active jky-page-layout__active-top-menu" : ""
|
|
@@ -111,7 +106,7 @@ const _sfc_main = /* @__PURE__ */ vue.defineComponent(__spreadProps(__spreadValu
|
|
|
111
106
|
return menuRoutes.filter((route2) => {
|
|
112
107
|
const pathSegments = route2.path.split("/").filter(Boolean);
|
|
113
108
|
return pathSegments.length === 1;
|
|
114
|
-
}).map((route2) => buildMenuItem(route2));
|
|
109
|
+
}).filter((route2) => route2.hideMenu !== true).map((route2) => buildMenuItem(route2));
|
|
115
110
|
}
|
|
116
111
|
const menuData = vue.computed(() => {
|
|
117
112
|
return buildMenuFromRoutes(routes);
|
|
@@ -184,6 +179,7 @@ const _sfc_main = /* @__PURE__ */ vue.defineComponent(__spreadProps(__spreadValu
|
|
|
184
179
|
router.push(index);
|
|
185
180
|
}
|
|
186
181
|
return (_ctx, _cache) => {
|
|
182
|
+
const _component_ElAutoResizer = vue.resolveComponent("ElAutoResizer");
|
|
187
183
|
return vue.openBlock(), vue.createElementBlock("div", {
|
|
188
184
|
class: vue.normalizeClass(["jky-page-layout flex h-full w-full flex-col overflow-hidden gap-3", props.className])
|
|
189
185
|
}, [
|
|
@@ -246,71 +242,62 @@ const _sfc_main = /* @__PURE__ */ vue.defineComponent(__spreadProps(__spreadValu
|
|
|
246
242
|
vue.createElementVNode("div", {
|
|
247
243
|
class: vue.normalizeClass(["jky-page-layout__main flex-1 flex flex-col min-w-0 overflow-hidden", props.mainClass])
|
|
248
244
|
}, [
|
|
249
|
-
props.tabsWithCard ? (vue.openBlock(), vue.createBlock(vue.unref(ElementPlus.ElCard), {
|
|
250
|
-
key: 0,
|
|
251
|
-
class: "jky-page-layout__tabs shrink-0",
|
|
252
|
-
style: vue.normalizeStyle({ "--el-card-padding": props.cardPadding })
|
|
253
|
-
}, {
|
|
254
|
-
default: vue.withCtx(() => [
|
|
255
|
-
vue.createVNode(Tabs_vue_vue_type_script_setup_true_lang.default, {
|
|
256
|
-
mode: "route",
|
|
257
|
-
cachable: props.cachable
|
|
258
|
-
}, null, 8, ["cachable"])
|
|
259
|
-
]),
|
|
260
|
-
_: 1
|
|
261
|
-
}, 8, ["style"])) : (vue.openBlock(), vue.createBlock(Tabs_vue_vue_type_script_setup_true_lang.default, {
|
|
262
|
-
key: 1,
|
|
263
|
-
class: "jky-page-layout__tabs shrink-0",
|
|
264
|
-
mode: "route",
|
|
265
|
-
cachable: props.cachable
|
|
266
|
-
}, null, 8, ["cachable"])),
|
|
267
245
|
(vue.openBlock(), vue.createBlock(vue.resolveDynamicComponent(props.mainWithCard ? vue.unref(ElementPlus.ElCard) : "div"), {
|
|
268
246
|
class: vue.normalizeClass(["jky-page-layout__content flex-1 min-h-0 overflow-hidden", props.contentClass]),
|
|
269
247
|
"body-class": props.mainWithScrollbar ? "" : "pb-0!"
|
|
270
248
|
}, {
|
|
271
249
|
default: vue.withCtx(() => [
|
|
272
|
-
|
|
273
|
-
default: vue.withCtx(() => [
|
|
274
|
-
vue.
|
|
250
|
+
vue.createVNode(_component_ElAutoResizer, null, {
|
|
251
|
+
default: vue.withCtx(({ height, width }) => [
|
|
252
|
+
props.mainWithScrollbar ? (vue.openBlock(), vue.createBlock(vue.unref(ElementPlus.ElScrollbar), { key: 0 }, {
|
|
253
|
+
default: vue.withCtx(() => [
|
|
254
|
+
vue.createVNode(vue.unref(vueRouter.RouterView), null, {
|
|
255
|
+
default: vue.withCtx(({ Component, route: currentRoute }) => [
|
|
256
|
+
vue.createVNode(vue.Transition, {
|
|
257
|
+
name: props.transitionName
|
|
258
|
+
}, {
|
|
259
|
+
default: vue.withCtx(() => [
|
|
260
|
+
(vue.openBlock(), vue.createBlock(vue.KeepAlive, {
|
|
261
|
+
include: props.cachable ? cacheInclude : []
|
|
262
|
+
}, [
|
|
263
|
+
(vue.openBlock(), vue.createBlock(vue.resolveDynamicComponent(Component), {
|
|
264
|
+
key: currentRoute.name,
|
|
265
|
+
height,
|
|
266
|
+
width
|
|
267
|
+
}, null, 8, ["height", "width"]))
|
|
268
|
+
], 1032, ["include"]))
|
|
269
|
+
]),
|
|
270
|
+
_: 2
|
|
271
|
+
}, 1032, ["name"])
|
|
272
|
+
]),
|
|
273
|
+
_: 2
|
|
274
|
+
}, 1024)
|
|
275
|
+
]),
|
|
276
|
+
_: 2
|
|
277
|
+
}, 1024)) : (vue.openBlock(), vue.createBlock(vue.unref(vueRouter.RouterView), { key: 1 }, {
|
|
275
278
|
default: vue.withCtx(({ Component, route: currentRoute }) => [
|
|
276
279
|
vue.createVNode(vue.Transition, {
|
|
277
280
|
name: props.transitionName
|
|
278
281
|
}, {
|
|
279
282
|
default: vue.withCtx(() => [
|
|
280
283
|
(vue.openBlock(), vue.createBlock(vue.KeepAlive, {
|
|
281
|
-
include: props.cachable ? cacheInclude
|
|
284
|
+
include: props.cachable ? cacheInclude : []
|
|
282
285
|
}, [
|
|
283
286
|
(vue.openBlock(), vue.createBlock(vue.resolveDynamicComponent(Component), {
|
|
284
|
-
key: currentRoute.name
|
|
285
|
-
|
|
287
|
+
key: currentRoute.name,
|
|
288
|
+
height,
|
|
289
|
+
width
|
|
290
|
+
}, null, 8, ["height", "width"]))
|
|
286
291
|
], 1032, ["include"]))
|
|
287
292
|
]),
|
|
288
293
|
_: 2
|
|
289
294
|
}, 1032, ["name"])
|
|
290
295
|
]),
|
|
291
|
-
_: 1
|
|
292
|
-
})
|
|
293
|
-
]),
|
|
294
|
-
_: 1
|
|
295
|
-
})) : (vue.openBlock(), vue.createBlock(vue.unref(vueRouter.RouterView), { key: 1 }, {
|
|
296
|
-
default: vue.withCtx(({ Component, route: currentRoute }) => [
|
|
297
|
-
vue.createVNode(vue.Transition, {
|
|
298
|
-
name: props.transitionName
|
|
299
|
-
}, {
|
|
300
|
-
default: vue.withCtx(() => [
|
|
301
|
-
(vue.openBlock(), vue.createBlock(vue.KeepAlive, {
|
|
302
|
-
include: props.cachable ? cacheInclude.value : []
|
|
303
|
-
}, [
|
|
304
|
-
(vue.openBlock(), vue.createBlock(vue.resolveDynamicComponent(Component), {
|
|
305
|
-
key: currentRoute.name
|
|
306
|
-
}))
|
|
307
|
-
], 1032, ["include"]))
|
|
308
|
-
]),
|
|
309
296
|
_: 2
|
|
310
|
-
},
|
|
297
|
+
}, 1024))
|
|
311
298
|
]),
|
|
312
299
|
_: 1
|
|
313
|
-
})
|
|
300
|
+
})
|
|
314
301
|
]),
|
|
315
302
|
_: 1
|
|
316
303
|
}, 8, ["class", "body-class"]))
|