little-dizzy 1.2.1 → 2.2.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.
@@ -1 +1 @@
1
- [data-v-75f082b2]{margin:0;padding:0;box-sizing:border-box}body[data-v-75f082b2]{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:14px;color:#303133;background-color:#f5f7fa}.btn[data-v-75f082b2]:hover{opacity:.9}.btn[data-v-75f082b2]:active{opacity:1}.btn[data-v-75f082b2]:disabled{cursor:not-allowed;opacity:.6}.btn-primary[data-v-75f082b2]:hover{background-color:#0d84ff;border-color:#0d84ff}.btn-success[data-v-75f082b2]:hover{background-color:#529b2e;border-color:#529b2e}.btn-warning[data-v-75f082b2]:hover{background-color:#d48a1b;border-color:#d48a1b}.btn-danger[data-v-75f082b2]:hover{background-color:#f23c3c;border-color:#f23c3c}.btn-info[data-v-75f082b2]:hover{background-color:#767980;border-color:#767980}.btn-secondary[data-v-75f082b2]:hover{color:#409eff;border-color:#409eff}.card[data-v-75f082b2]{position:relative;display:flex;flex-direction:column;min-width:0;word-wrap:break-word;background-color:#fff;background-clip:border-box;border:1px solid rgba(0,0,0,.125);border-radius:8px;box-shadow:0 2px 4px #0000001a;transition:box-shadow .3s}.card[data-v-75f082b2]:hover{box-shadow:0 4px 12px #00000026}.card-header[data-v-75f082b2]{padding:16px;border-bottom:1px solid rgba(0,0,0,.125)}.card-header-title[data-v-75f082b2]{margin:0;font-size:16px;font-weight:600}.card-body[data-v-75f082b2]{flex:1 1 auto;padding:16px}.card-footer[data-v-75f082b2]{padding:16px;border-top:1px solid rgba(0,0,0,.125)}.modal[data-v-75f082b2]{position:fixed;top:0;left:0;z-index:1050;display:none;width:100%;height:100%;overflow:hidden;outline:0;background-color:#00000080}.modal.show[data-v-75f082b2]{display:flex;justify-content:center;align-items:center}.modal-dialog[data-v-75f082b2]{position:relative;width:auto;margin:10px;pointer-events:none}@media(min-width:576px){.modal-dialog[data-v-75f082b2]{max-width:500px;margin:1.75rem auto}}.modal-content[data-v-75f082b2]{position:relative;display:flex;flex-direction:column;width:100%;pointer-events:auto;background-color:#fff;background-clip:padding-box;border:1px solid rgba(0,0,0,.2);border-radius:8px;outline:0;box-shadow:0 6px 20px #0003}.modal-header[data-v-75f082b2]{display:flex;justify-content:space-between;align-items:center;padding:16px;border-bottom:1px solid #dee2e6;border-top-left-radius:7px;border-top-right-radius:7px}.modal-header-title[data-v-75f082b2]{margin:0;font-size:16px;font-weight:600}.modal-header-close[data-v-75f082b2]{padding:0;background-color:transparent;border:0;cursor:pointer;font-size:1.5rem;line-height:1;color:#6c757d;opacity:.5}.modal-header-close[data-v-75f082b2]:hover{opacity:1}.modal-body[data-v-75f082b2]{position:relative;flex:1 1 auto;padding:16px}.modal-footer[data-v-75f082b2]{display:flex;justify-content:flex-end;align-items:center;padding:16px;border-top:1px solid #dee2e6;border-bottom-left-radius:7px;border-bottom-right-radius:7px}.modal-footer[data-v-75f082b2]>*+*{margin-left:8px}.btn[data-v-75f082b2]{display:inline-block;padding:8px 16px;border:1px solid transparent;border-radius:4px;font-size:14px;font-weight:400;line-height:1.5;text-align:center;white-space:nowrap;vertical-align:middle;cursor:pointer;transition:all .3s}.btn[data-v-75f082b2]:hover:not(.btn-disabled){opacity:.9}.btn[data-v-75f082b2]:active:not(.btn-disabled){opacity:1}.btn.btn-disabled[data-v-75f082b2]{cursor:not-allowed;opacity:.6}.btn-primary[data-v-75f082b2]{color:#fff;background-color:#409eff;border-color:#409eff}.btn-primary[data-v-75f082b2]:hover:not(.btn-disabled){background-color:#0d84ff;border-color:#0d84ff}.btn-success[data-v-75f082b2]{color:#fff;background-color:#67c23a;border-color:#67c23a}.btn-success[data-v-75f082b2]:hover:not(.btn-disabled){background-color:#529b2e;border-color:#529b2e}.btn-warning[data-v-75f082b2]{color:#fff;background-color:#e6a23c;border-color:#e6a23c}.btn-warning[data-v-75f082b2]:hover:not(.btn-disabled){background-color:#d48a1b;border-color:#d48a1b}.btn-danger[data-v-75f082b2]{color:#fff;background-color:#f56c6c;border-color:#f56c6c}.btn-danger[data-v-75f082b2]:hover:not(.btn-disabled){background-color:#f23c3c;border-color:#f23c3c}.btn-info[data-v-75f082b2]{color:#fff;background-color:#909399;border-color:#909399}.btn-info[data-v-75f082b2]:hover:not(.btn-disabled){background-color:#767980;border-color:#767980}.btn-secondary[data-v-75f082b2]{color:#606266;background-color:#fff;border-color:#dcdfe6}.btn-secondary[data-v-75f082b2]:hover:not(.btn-disabled){color:#409eff;border-color:#409eff}.btn-small[data-v-75f082b2]{padding:4px 8px;font-size:12px}.btn-medium[data-v-75f082b2]{padding:8px 16px;font-size:14px}.btn-large[data-v-75f082b2]{padding:12px 24px;font-size:16px}.btn-block[data-v-75f082b2]{display:block;width:100%}[data-v-2d83e63a]{margin:0;padding:0;box-sizing:border-box}body[data-v-2d83e63a]{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:14px;color:#303133;background-color:#f5f7fa}.btn[data-v-2d83e63a]{display:inline-block;padding:8px 16px;border:1px solid transparent;border-radius:4px;font-size:14px;font-weight:400;line-height:1.5;text-align:center;white-space:nowrap;vertical-align:middle;cursor:pointer;transition:all .3s}.btn[data-v-2d83e63a]:hover{opacity:.9}.btn[data-v-2d83e63a]:active{opacity:1}.btn[data-v-2d83e63a]:disabled{cursor:not-allowed;opacity:.6}.btn-primary[data-v-2d83e63a]{color:#fff;background-color:#409eff;border-color:#409eff}.btn-primary[data-v-2d83e63a]:hover{background-color:#0d84ff;border-color:#0d84ff}.btn-success[data-v-2d83e63a]{color:#fff;background-color:#67c23a;border-color:#67c23a}.btn-success[data-v-2d83e63a]:hover{background-color:#529b2e;border-color:#529b2e}.btn-warning[data-v-2d83e63a]{color:#fff;background-color:#e6a23c;border-color:#e6a23c}.btn-warning[data-v-2d83e63a]:hover{background-color:#d48a1b;border-color:#d48a1b}.btn-danger[data-v-2d83e63a]{color:#fff;background-color:#f56c6c;border-color:#f56c6c}.btn-danger[data-v-2d83e63a]:hover{background-color:#f23c3c;border-color:#f23c3c}.btn-info[data-v-2d83e63a]{color:#fff;background-color:#909399;border-color:#909399}.btn-info[data-v-2d83e63a]:hover{background-color:#767980;border-color:#767980}.btn-secondary[data-v-2d83e63a]{color:#606266;background-color:#fff;border-color:#dcdfe6}.btn-secondary[data-v-2d83e63a]:hover{color:#409eff;border-color:#409eff}.btn-small[data-v-2d83e63a]{padding:4px 8px;font-size:12px}.btn-large[data-v-2d83e63a]{padding:12px 24px;font-size:16px}.card[data-v-2d83e63a]{position:relative;display:flex;flex-direction:column;min-width:0;word-wrap:break-word;background-color:#fff;background-clip:border-box;border:1px solid rgba(0,0,0,.125);border-radius:8px;box-shadow:0 2px 4px #0000001a;transition:box-shadow .3s}.card[data-v-2d83e63a]:hover{box-shadow:0 4px 12px #00000026}.card-header[data-v-2d83e63a]{padding:16px;border-bottom:1px solid rgba(0,0,0,.125)}.card-header-title[data-v-2d83e63a]{margin:0;font-size:16px;font-weight:600}.card-body[data-v-2d83e63a]{flex:1 1 auto;padding:16px}.card-footer[data-v-2d83e63a]{padding:16px;border-top:1px solid rgba(0,0,0,.125)}.modal[data-v-2d83e63a]{position:fixed;top:0;left:0;z-index:1050;display:none;width:100%;height:100%;overflow:hidden;outline:0;background-color:#00000080}.modal.show[data-v-2d83e63a]{display:flex;justify-content:center;align-items:center}.modal-dialog[data-v-2d83e63a]{position:relative;width:auto;margin:10px;pointer-events:none}@media(min-width:576px){.modal-dialog[data-v-2d83e63a]{max-width:500px;margin:1.75rem auto}}.modal-content[data-v-2d83e63a]{position:relative;display:flex;flex-direction:column;width:100%;pointer-events:auto;background-color:#fff;background-clip:padding-box;border:1px solid rgba(0,0,0,.2);border-radius:8px;outline:0;box-shadow:0 6px 20px #0003}.modal-header[data-v-2d83e63a]{display:flex;justify-content:space-between;align-items:center;padding:16px;border-bottom:1px solid #dee2e6;border-top-left-radius:7px;border-top-right-radius:7px}.modal-header-title[data-v-2d83e63a]{margin:0;font-size:16px;font-weight:600}.modal-header-close[data-v-2d83e63a]{padding:0;background-color:transparent;border:0;cursor:pointer;font-size:1.5rem;line-height:1;color:#6c757d;opacity:.5}.modal-header-close[data-v-2d83e63a]:hover{opacity:1}.modal-body[data-v-2d83e63a]{position:relative;flex:1 1 auto;padding:16px}.modal-footer[data-v-2d83e63a]{display:flex;justify-content:flex-end;align-items:center;padding:16px;border-top:1px solid #dee2e6;border-bottom-left-radius:7px;border-bottom-right-radius:7px}.modal-footer[data-v-2d83e63a]>*+*{margin-left:8px}.card[data-v-2d83e63a]{position:relative;display:flex;flex-direction:column;min-width:0;word-wrap:break-word;background-color:#fff;background-clip:border-box;border:1px solid rgba(0,0,0,.125);border-radius:8px;transition:box-shadow .3s}.card-shadow[data-v-2d83e63a]{box-shadow:0 2px 4px #0000001a}.card-shadow[data-v-2d83e63a]:hover{box-shadow:0 4px 12px #00000026}.card-header[data-v-2d83e63a]{padding:16px;border-bottom:1px solid rgba(0,0,0,.125);display:flex;justify-content:space-between;align-items:center}.card-header-title[data-v-2d83e63a]{margin:0;font-size:16px;font-weight:600;color:#303133}.card-body[data-v-2d83e63a]{flex:1 1 auto;padding:16px;color:#606266}.card-footer[data-v-2d83e63a]{padding:16px;border-top:1px solid rgba(0,0,0,.125);background-color:#fafafa;border-bottom-left-radius:7px;border-bottom-right-radius:7px}[data-v-c66cec30]{margin:0;padding:0;box-sizing:border-box}body[data-v-c66cec30]{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:14px;color:#303133;background-color:#f5f7fa}.btn[data-v-c66cec30]{display:inline-block;padding:8px 16px;border:1px solid transparent;border-radius:4px;font-size:14px;font-weight:400;line-height:1.5;text-align:center;white-space:nowrap;vertical-align:middle;cursor:pointer;transition:all .3s}.btn[data-v-c66cec30]:hover{opacity:.9}.btn[data-v-c66cec30]:active{opacity:1}.btn[data-v-c66cec30]:disabled{cursor:not-allowed;opacity:.6}.btn-primary[data-v-c66cec30]{color:#fff;background-color:#409eff;border-color:#409eff}.btn-primary[data-v-c66cec30]:hover{background-color:#0d84ff;border-color:#0d84ff}.btn-success[data-v-c66cec30]{color:#fff;background-color:#67c23a;border-color:#67c23a}.btn-success[data-v-c66cec30]:hover{background-color:#529b2e;border-color:#529b2e}.btn-warning[data-v-c66cec30]{color:#fff;background-color:#e6a23c;border-color:#e6a23c}.btn-warning[data-v-c66cec30]:hover{background-color:#d48a1b;border-color:#d48a1b}.btn-danger[data-v-c66cec30]{color:#fff;background-color:#f56c6c;border-color:#f56c6c}.btn-danger[data-v-c66cec30]:hover{background-color:#f23c3c;border-color:#f23c3c}.btn-info[data-v-c66cec30]{color:#fff;background-color:#909399;border-color:#909399}.btn-info[data-v-c66cec30]:hover{background-color:#767980;border-color:#767980}.btn-secondary[data-v-c66cec30]{color:#606266;background-color:#fff;border-color:#dcdfe6}.btn-secondary[data-v-c66cec30]:hover{color:#409eff;border-color:#409eff}.btn-small[data-v-c66cec30]{padding:4px 8px;font-size:12px}.btn-large[data-v-c66cec30]{padding:12px 24px;font-size:16px}.card[data-v-c66cec30]{position:relative;display:flex;flex-direction:column;min-width:0;word-wrap:break-word;background-color:#fff;background-clip:border-box;border:1px solid rgba(0,0,0,.125);border-radius:8px;box-shadow:0 2px 4px #0000001a;transition:box-shadow .3s}.card[data-v-c66cec30]:hover{box-shadow:0 4px 12px #00000026}.card-header[data-v-c66cec30]{padding:16px;border-bottom:1px solid rgba(0,0,0,.125)}.card-header-title[data-v-c66cec30]{margin:0;font-size:16px;font-weight:600}.card-body[data-v-c66cec30]{flex:1 1 auto;padding:16px}.card-footer[data-v-c66cec30]{padding:16px;border-top:1px solid rgba(0,0,0,.125)}.modal.show[data-v-c66cec30]{display:flex;justify-content:center;align-items:center}.modal-header-title[data-v-c66cec30]{margin:0;font-size:16px;font-weight:600}.modal-body[data-v-c66cec30]{position:relative;flex:1 1 auto;padding:16px}.modal[data-v-c66cec30]{position:fixed;top:0;left:0;z-index:1050;display:none;width:100%;height:100%;overflow:hidden;outline:0;background-color:#00000080}.modal-show[data-v-c66cec30]{display:flex;justify-content:center;align-items:center}.modal-dialog[data-v-c66cec30]{position:relative;width:auto;margin:10px;pointer-events:none}@media(min-width:576px){.modal-dialog[data-v-c66cec30]{max-width:500px;margin:1.75rem auto}}.modal-content[data-v-c66cec30]{position:relative;display:flex;flex-direction:column;width:100%;pointer-events:auto;background-color:#fff;background-clip:padding-box;border:1px solid rgba(0,0,0,.2);border-radius:8px;outline:0;box-shadow:0 6px 20px #0003}.modal-header[data-v-c66cec30]{display:flex;justify-content:space-between;align-items:center;padding:16px;border-bottom:1px solid #dee2e6;border-top-left-radius:7px;border-top-right-radius:7px}.modal-header-title[data-v-c66cec30]{margin:0;font-size:16px;font-weight:600;color:#303133}.modal-header-close[data-v-c66cec30]{padding:0;background-color:transparent;border:0;cursor:pointer;font-size:1.5rem;line-height:1;color:#6c757d;opacity:.5}.modal-header-close[data-v-c66cec30]:hover{opacity:1}.modal-body[data-v-c66cec30]{position:relative;flex:1 1 auto;padding:16px;color:#606266}.modal-footer[data-v-c66cec30]{display:flex;justify-content:flex-end;align-items:center;padding:16px;border-top:1px solid #dee2e6;border-bottom-left-radius:7px;border-bottom-right-radius:7px}.modal-footer[data-v-c66cec30]>*+*{margin-left:8px}
1
+ [data-v-75f082b2]{margin:0;padding:0;box-sizing:border-box}body[data-v-75f082b2]{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:14px;color:#303133;background-color:#f5f7fa}.btn[data-v-75f082b2]:hover{opacity:.9}.btn[data-v-75f082b2]:active{opacity:1}.btn[data-v-75f082b2]:disabled{cursor:not-allowed;opacity:.6}.btn-primary[data-v-75f082b2]:hover{background-color:#0d84ff;border-color:#0d84ff}.btn-success[data-v-75f082b2]:hover{background-color:#529b2e;border-color:#529b2e}.btn-warning[data-v-75f082b2]:hover{background-color:#d48a1b;border-color:#d48a1b}.btn-danger[data-v-75f082b2]:hover{background-color:#f23c3c;border-color:#f23c3c}.btn-info[data-v-75f082b2]:hover{background-color:#767980;border-color:#767980}.btn-secondary[data-v-75f082b2]:hover{color:#409eff;border-color:#409eff}.card[data-v-75f082b2]{position:relative;display:flex;flex-direction:column;min-width:0;word-wrap:break-word;background-color:#fff;background-clip:border-box;border:1px solid rgba(0,0,0,.125);border-radius:8px;box-shadow:0 2px 4px #0000001a;transition:box-shadow .3s}.card[data-v-75f082b2]:hover{box-shadow:0 4px 12px #00000026}.card-header[data-v-75f082b2]{padding:16px;border-bottom:1px solid rgba(0,0,0,.125)}.card-header-title[data-v-75f082b2]{margin:0;font-size:16px;font-weight:600}.card-body[data-v-75f082b2]{flex:1 1 auto;padding:16px}.card-footer[data-v-75f082b2]{padding:16px;border-top:1px solid rgba(0,0,0,.125)}.modal[data-v-75f082b2]{position:fixed;top:0;left:0;z-index:1050;display:none;width:100%;height:100%;overflow:hidden;outline:0;background-color:#00000080}.modal.show[data-v-75f082b2]{display:flex;justify-content:center;align-items:center}.modal-dialog[data-v-75f082b2]{position:relative;width:auto;margin:10px;pointer-events:none}@media(min-width:576px){.modal-dialog[data-v-75f082b2]{max-width:500px;margin:1.75rem auto}}.modal-content[data-v-75f082b2]{position:relative;display:flex;flex-direction:column;width:100%;pointer-events:auto;background-color:#fff;background-clip:padding-box;border:1px solid rgba(0,0,0,.2);border-radius:8px;outline:0;box-shadow:0 6px 20px #0003}.modal-header[data-v-75f082b2]{display:flex;justify-content:space-between;align-items:center;padding:16px;border-bottom:1px solid #dee2e6;border-top-left-radius:7px;border-top-right-radius:7px}.modal-header-title[data-v-75f082b2]{margin:0;font-size:16px;font-weight:600}.modal-header-close[data-v-75f082b2]{padding:0;background-color:transparent;border:0;cursor:pointer;font-size:1.5rem;line-height:1;color:#6c757d;opacity:.5}.modal-header-close[data-v-75f082b2]:hover{opacity:1}.modal-body[data-v-75f082b2]{position:relative;flex:1 1 auto;padding:16px}.modal-footer[data-v-75f082b2]{display:flex;justify-content:flex-end;align-items:center;padding:16px;border-top:1px solid #dee2e6;border-bottom-left-radius:7px;border-bottom-right-radius:7px}.modal-footer[data-v-75f082b2]>*+*{margin-left:8px}.btn[data-v-75f082b2]{display:inline-block;padding:8px 16px;border:1px solid transparent;border-radius:4px;font-size:14px;font-weight:400;line-height:1.5;text-align:center;white-space:nowrap;vertical-align:middle;cursor:pointer;transition:all .3s}.btn[data-v-75f082b2]:hover:not(.btn-disabled){opacity:.9}.btn[data-v-75f082b2]:active:not(.btn-disabled){opacity:1}.btn.btn-disabled[data-v-75f082b2]{cursor:not-allowed;opacity:.6}.btn-primary[data-v-75f082b2]{color:#fff;background-color:#409eff;border-color:#409eff}.btn-primary[data-v-75f082b2]:hover:not(.btn-disabled){background-color:#0d84ff;border-color:#0d84ff}.btn-success[data-v-75f082b2]{color:#fff;background-color:#67c23a;border-color:#67c23a}.btn-success[data-v-75f082b2]:hover:not(.btn-disabled){background-color:#529b2e;border-color:#529b2e}.btn-warning[data-v-75f082b2]{color:#fff;background-color:#e6a23c;border-color:#e6a23c}.btn-warning[data-v-75f082b2]:hover:not(.btn-disabled){background-color:#d48a1b;border-color:#d48a1b}.btn-danger[data-v-75f082b2]{color:#fff;background-color:#f56c6c;border-color:#f56c6c}.btn-danger[data-v-75f082b2]:hover:not(.btn-disabled){background-color:#f23c3c;border-color:#f23c3c}.btn-info[data-v-75f082b2]{color:#fff;background-color:#909399;border-color:#909399}.btn-info[data-v-75f082b2]:hover:not(.btn-disabled){background-color:#767980;border-color:#767980}.btn-secondary[data-v-75f082b2]{color:#606266;background-color:#fff;border-color:#dcdfe6}.btn-secondary[data-v-75f082b2]:hover:not(.btn-disabled){color:#409eff;border-color:#409eff}.btn-small[data-v-75f082b2]{padding:4px 8px;font-size:12px}.btn-medium[data-v-75f082b2]{padding:8px 16px;font-size:14px}.btn-large[data-v-75f082b2]{padding:12px 24px;font-size:16px}.btn-block[data-v-75f082b2]{display:block;width:100%}[data-v-2d83e63a]{margin:0;padding:0;box-sizing:border-box}body[data-v-2d83e63a]{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:14px;color:#303133;background-color:#f5f7fa}.btn[data-v-2d83e63a]{display:inline-block;padding:8px 16px;border:1px solid transparent;border-radius:4px;font-size:14px;font-weight:400;line-height:1.5;text-align:center;white-space:nowrap;vertical-align:middle;cursor:pointer;transition:all .3s}.btn[data-v-2d83e63a]:hover{opacity:.9}.btn[data-v-2d83e63a]:active{opacity:1}.btn[data-v-2d83e63a]:disabled{cursor:not-allowed;opacity:.6}.btn-primary[data-v-2d83e63a]{color:#fff;background-color:#409eff;border-color:#409eff}.btn-primary[data-v-2d83e63a]:hover{background-color:#0d84ff;border-color:#0d84ff}.btn-success[data-v-2d83e63a]{color:#fff;background-color:#67c23a;border-color:#67c23a}.btn-success[data-v-2d83e63a]:hover{background-color:#529b2e;border-color:#529b2e}.btn-warning[data-v-2d83e63a]{color:#fff;background-color:#e6a23c;border-color:#e6a23c}.btn-warning[data-v-2d83e63a]:hover{background-color:#d48a1b;border-color:#d48a1b}.btn-danger[data-v-2d83e63a]{color:#fff;background-color:#f56c6c;border-color:#f56c6c}.btn-danger[data-v-2d83e63a]:hover{background-color:#f23c3c;border-color:#f23c3c}.btn-info[data-v-2d83e63a]{color:#fff;background-color:#909399;border-color:#909399}.btn-info[data-v-2d83e63a]:hover{background-color:#767980;border-color:#767980}.btn-secondary[data-v-2d83e63a]{color:#606266;background-color:#fff;border-color:#dcdfe6}.btn-secondary[data-v-2d83e63a]:hover{color:#409eff;border-color:#409eff}.btn-small[data-v-2d83e63a]{padding:4px 8px;font-size:12px}.btn-large[data-v-2d83e63a]{padding:12px 24px;font-size:16px}.card[data-v-2d83e63a]{position:relative;display:flex;flex-direction:column;min-width:0;word-wrap:break-word;background-color:#fff;background-clip:border-box;border:1px solid rgba(0,0,0,.125);border-radius:8px;box-shadow:0 2px 4px #0000001a;transition:box-shadow .3s}.card[data-v-2d83e63a]:hover{box-shadow:0 4px 12px #00000026}.card-header[data-v-2d83e63a]{padding:16px;border-bottom:1px solid rgba(0,0,0,.125)}.card-header-title[data-v-2d83e63a]{margin:0;font-size:16px;font-weight:600}.card-body[data-v-2d83e63a]{flex:1 1 auto;padding:16px}.card-footer[data-v-2d83e63a]{padding:16px;border-top:1px solid rgba(0,0,0,.125)}.modal[data-v-2d83e63a]{position:fixed;top:0;left:0;z-index:1050;display:none;width:100%;height:100%;overflow:hidden;outline:0;background-color:#00000080}.modal.show[data-v-2d83e63a]{display:flex;justify-content:center;align-items:center}.modal-dialog[data-v-2d83e63a]{position:relative;width:auto;margin:10px;pointer-events:none}@media(min-width:576px){.modal-dialog[data-v-2d83e63a]{max-width:500px;margin:1.75rem auto}}.modal-content[data-v-2d83e63a]{position:relative;display:flex;flex-direction:column;width:100%;pointer-events:auto;background-color:#fff;background-clip:padding-box;border:1px solid rgba(0,0,0,.2);border-radius:8px;outline:0;box-shadow:0 6px 20px #0003}.modal-header[data-v-2d83e63a]{display:flex;justify-content:space-between;align-items:center;padding:16px;border-bottom:1px solid #dee2e6;border-top-left-radius:7px;border-top-right-radius:7px}.modal-header-title[data-v-2d83e63a]{margin:0;font-size:16px;font-weight:600}.modal-header-close[data-v-2d83e63a]{padding:0;background-color:transparent;border:0;cursor:pointer;font-size:1.5rem;line-height:1;color:#6c757d;opacity:.5}.modal-header-close[data-v-2d83e63a]:hover{opacity:1}.modal-body[data-v-2d83e63a]{position:relative;flex:1 1 auto;padding:16px}.modal-footer[data-v-2d83e63a]{display:flex;justify-content:flex-end;align-items:center;padding:16px;border-top:1px solid #dee2e6;border-bottom-left-radius:7px;border-bottom-right-radius:7px}.modal-footer[data-v-2d83e63a]>*+*{margin-left:8px}.card[data-v-2d83e63a]{position:relative;display:flex;flex-direction:column;min-width:0;word-wrap:break-word;background-color:#fff;background-clip:border-box;border:1px solid rgba(0,0,0,.125);border-radius:8px;transition:box-shadow .3s}.card-shadow[data-v-2d83e63a]{box-shadow:0 2px 4px #0000001a}.card-shadow[data-v-2d83e63a]:hover{box-shadow:0 4px 12px #00000026}.card-header[data-v-2d83e63a]{padding:16px;border-bottom:1px solid rgba(0,0,0,.125);display:flex;justify-content:space-between;align-items:center}.card-header-title[data-v-2d83e63a]{margin:0;font-size:16px;font-weight:600;color:#303133}.card-body[data-v-2d83e63a]{flex:1 1 auto;padding:16px;color:#606266}.card-footer[data-v-2d83e63a]{padding:16px;border-top:1px solid rgba(0,0,0,.125);background-color:#fafafa;border-bottom-left-radius:7px;border-bottom-right-radius:7px}[data-v-c66cec30]{margin:0;padding:0;box-sizing:border-box}body[data-v-c66cec30]{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:14px;color:#303133;background-color:#f5f7fa}.btn[data-v-c66cec30]{display:inline-block;padding:8px 16px;border:1px solid transparent;border-radius:4px;font-size:14px;font-weight:400;line-height:1.5;text-align:center;white-space:nowrap;vertical-align:middle;cursor:pointer;transition:all .3s}.btn[data-v-c66cec30]:hover{opacity:.9}.btn[data-v-c66cec30]:active{opacity:1}.btn[data-v-c66cec30]:disabled{cursor:not-allowed;opacity:.6}.btn-primary[data-v-c66cec30]{color:#fff;background-color:#409eff;border-color:#409eff}.btn-primary[data-v-c66cec30]:hover{background-color:#0d84ff;border-color:#0d84ff}.btn-success[data-v-c66cec30]{color:#fff;background-color:#67c23a;border-color:#67c23a}.btn-success[data-v-c66cec30]:hover{background-color:#529b2e;border-color:#529b2e}.btn-warning[data-v-c66cec30]{color:#fff;background-color:#e6a23c;border-color:#e6a23c}.btn-warning[data-v-c66cec30]:hover{background-color:#d48a1b;border-color:#d48a1b}.btn-danger[data-v-c66cec30]{color:#fff;background-color:#f56c6c;border-color:#f56c6c}.btn-danger[data-v-c66cec30]:hover{background-color:#f23c3c;border-color:#f23c3c}.btn-info[data-v-c66cec30]{color:#fff;background-color:#909399;border-color:#909399}.btn-info[data-v-c66cec30]:hover{background-color:#767980;border-color:#767980}.btn-secondary[data-v-c66cec30]{color:#606266;background-color:#fff;border-color:#dcdfe6}.btn-secondary[data-v-c66cec30]:hover{color:#409eff;border-color:#409eff}.btn-small[data-v-c66cec30]{padding:4px 8px;font-size:12px}.btn-large[data-v-c66cec30]{padding:12px 24px;font-size:16px}.card[data-v-c66cec30]{position:relative;display:flex;flex-direction:column;min-width:0;word-wrap:break-word;background-color:#fff;background-clip:border-box;border:1px solid rgba(0,0,0,.125);border-radius:8px;box-shadow:0 2px 4px #0000001a;transition:box-shadow .3s}.card[data-v-c66cec30]:hover{box-shadow:0 4px 12px #00000026}.card-header[data-v-c66cec30]{padding:16px;border-bottom:1px solid rgba(0,0,0,.125)}.card-header-title[data-v-c66cec30]{margin:0;font-size:16px;font-weight:600}.card-body[data-v-c66cec30]{flex:1 1 auto;padding:16px}.card-footer[data-v-c66cec30]{padding:16px;border-top:1px solid rgba(0,0,0,.125)}.modal.show[data-v-c66cec30]{display:flex;justify-content:center;align-items:center}.modal-header-title[data-v-c66cec30]{margin:0;font-size:16px;font-weight:600}.modal-body[data-v-c66cec30]{position:relative;flex:1 1 auto;padding:16px}.modal[data-v-c66cec30]{position:fixed;top:0;left:0;z-index:1050;display:none;width:100%;height:100%;overflow:hidden;outline:0;background-color:#00000080}.modal-show[data-v-c66cec30]{display:flex;justify-content:center;align-items:center}.modal-dialog[data-v-c66cec30]{position:relative;width:auto;margin:10px;pointer-events:none}@media(min-width:576px){.modal-dialog[data-v-c66cec30]{max-width:500px;margin:1.75rem auto}}.modal-content[data-v-c66cec30]{position:relative;display:flex;flex-direction:column;width:100%;pointer-events:auto;background-color:#fff;background-clip:padding-box;border:1px solid rgba(0,0,0,.2);border-radius:8px;outline:0;box-shadow:0 6px 20px #0003}.modal-header[data-v-c66cec30]{display:flex;justify-content:space-between;align-items:center;padding:16px;border-bottom:1px solid #dee2e6;border-top-left-radius:7px;border-top-right-radius:7px}.modal-header-title[data-v-c66cec30]{margin:0;font-size:16px;font-weight:600;color:#303133}.modal-header-close[data-v-c66cec30]{padding:0;background-color:transparent;border:0;cursor:pointer;font-size:1.5rem;line-height:1;color:#6c757d;opacity:.5}.modal-header-close[data-v-c66cec30]:hover{opacity:1}.modal-body[data-v-c66cec30]{position:relative;flex:1 1 auto;padding:16px;color:#606266}.modal-footer[data-v-c66cec30]{display:flex;justify-content:flex-end;align-items:center;padding:16px;border-top:1px solid #dee2e6;border-bottom-left-radius:7px;border-bottom-right-radius:7px}.modal-footer[data-v-c66cec30]>*+*{margin-left:8px}.button[data-v-c2498af3]{width:fit-content;display:flex;padding:1.2em 1rem;cursor:pointer;gap:.4rem;font-weight:700;border-radius:30px;text-shadow:2px 2px 3px rgb(136 0 136 / 50%);background:linear-gradient(15deg,#808,#aa2068,#cc3f47,#de6f3d,#f09f33,#de6f3d,#cc3f47,#aa2068,#808) no-repeat;background-size:300%;color:#fff;border:none;background-position:left center;box-shadow:0 30px 10px -20px #0003;transition:background .3s ease}.button[data-v-c2498af3]:hover{background-size:320%;background-position:right center}.button:hover svg[data-v-c2498af3]{fill:#fff}.button svg[data-v-c2498af3]{width:23px;fill:#f09f33;transition:.3s ease}.theme[data-v-0b85d094]{display:flex;align-items:center;-webkit-tap-highlight-color:transparent}.theme__fill[data-v-0b85d094],.theme__icon[data-v-0b85d094]{transition:.3s}.theme__fill[data-v-0b85d094]{background-color:var(--bg);display:block;mix-blend-mode:difference;position:fixed;inset:0;height:100%;transform:translate(-100%)}.theme__icon[data-v-0b85d094],.theme__toggle[data-v-0b85d094]{z-index:1}.theme__icon[data-v-0b85d094],.theme__icon-part[data-v-0b85d094]{position:absolute}.theme__icon[data-v-0b85d094]{display:block;top:.5em;left:.5em;width:1.5em;height:1.5em}.theme__icon-part[data-v-0b85d094]{border-radius:50%;box-shadow:.4em -.4em 0 .5em #fff inset;top:calc(50% - .5em);left:calc(50% - .5em);width:1em;height:1em;transition:box-shadow var(--transDur) ease-in-out,opacity var(--transDur) ease-in-out,transform var(--transDur) ease-in-out;transform:scale(.5)}.theme__icon-part~.theme__icon-part[data-v-0b85d094]{background-color:#fff;border-radius:.05em;top:50%;left:calc(50% - .05em);transform:rotate(0) translateY(.5em);transform-origin:50% 0;width:.1em;height:.2em}.theme__icon-part[data-v-0b85d094]:nth-child(3){transform:rotate(45deg) translateY(.45em)}.theme__icon-part[data-v-0b85d094]:nth-child(4){transform:rotate(90deg) translateY(.45em)}.theme__icon-part[data-v-0b85d094]:nth-child(5){transform:rotate(135deg) translateY(.45em)}.theme__icon-part[data-v-0b85d094]:nth-child(6){transform:rotate(180deg) translateY(.45em)}.theme__icon-part[data-v-0b85d094]:nth-child(7){transform:rotate(225deg) translateY(.45em)}.theme__icon-part[data-v-0b85d094]:nth-child(8){transform:rotate(270deg) translateY(.5em)}.theme__icon-part[data-v-0b85d094]:nth-child(9){transform:rotate(315deg) translateY(.5em)}.theme__label[data-v-0b85d094],.theme__toggle[data-v-0b85d094],.theme__toggle-wrap[data-v-0b85d094]{position:relative}.theme__toggle[data-v-0b85d094],.theme__toggle[data-v-0b85d094]:before{display:block}.theme__toggle[data-v-0b85d094]{background-color:#fbedb6;border-radius:25%/50%;box-shadow:0 0 0 .125em var(--primaryT);padding:.25em;width:6em;height:3em;-webkit-appearance:none;appearance:none;transition:background-color var(--transDur) ease-in-out,box-shadow .15s ease-in-out,transform var(--transDur) ease-in-out}.theme__toggle[data-v-0b85d094]:before{background-color:#f4ca25;border-radius:50%;content:"";width:2.5em;height:2.5em;transition:.3s}.theme__toggle[data-v-0b85d094]:focus{box-shadow:0 0 0 .125em var(--primary);outline:transparent}.theme__toggle[data-v-0b85d094]:checked{background-color:#043449}.theme__toggle[data-v-0b85d094]:checked:before,.theme__toggle:checked~.theme__icon[data-v-0b85d094]{transform:translate(3em)}.theme__toggle[data-v-0b85d094]:checked:before{background-color:#25b6f4}.theme__toggle:checked~.theme__fill[data-v-0b85d094]{transform:translate(0)}.theme__toggle:checked~.theme__icon .theme__icon-part[data-v-0b85d094]:nth-child(1){box-shadow:.2em -.2em 0 .2em #fff inset;transform:scale(1);top:.2em;left:-.2em}.theme__toggle:checked~.theme__icon .theme__icon-part~.theme__icon-part[data-v-0b85d094]{opacity:0}.theme__toggle:checked~.theme__icon .theme__icon-part[data-v-0b85d094]:nth-child(2){transform:rotate(45deg) translateY(.8em)}.theme__toggle:checked~.theme__icon .theme__icon-part[data-v-0b85d094]:nth-child(3){transform:rotate(90deg) translateY(.8em)}.theme__toggle:checked~.theme__icon .theme__icon-part[data-v-0b85d094]:nth-child(4){transform:rotate(135deg) translateY(.8em)}.theme__toggle:checked~.theme__icon .theme__icon-part[data-v-0b85d094]:nth-child(5){transform:rotate(180deg) translateY(.8em)}.theme__toggle:checked~.theme__icon .theme__icon-part[data-v-0b85d094]:nth-child(6){transform:rotate(225deg) translateY(.8em)}.theme__toggle:checked~.theme__icon .theme__icon-part[data-v-0b85d094]:nth-child(7){transform:rotate(270deg) translateY(.8em)}.theme__toggle:checked~.theme__icon .theme__icon-part[data-v-0b85d094]:nth-child(8){transform:rotate(315deg) translateY(.8em)}.theme__toggle:checked~.theme__icon .theme__icon-part[data-v-0b85d094]:nth-child(9){transform:rotate(360deg) translateY(.8em)}.theme__toggle-wrap[data-v-0b85d094]{margin:0 .75em}@supports selector(:focus-visible){.theme__toggle[data-v-0b85d094]:focus{box-shadow:0 0 0 .125em var(--primaryT)}.theme__toggle[data-v-0b85d094]:focus-visible{box-shadow:0 0 0 .125em var(--primary)}}
@@ -1,9 +1,9 @@
1
- import { createElementBlock as n, openBlock as s, normalizeClass as u, renderSlot as r, createCommentVNode as i, createElementVNode as l, toDisplayString as f } from "vue";
2
- const m = (t, e) => {
3
- const o = t.__vccOpts || t;
4
- for (const [a, d] of e)
5
- o[a] = d;
6
- return o;
1
+ import { createElementBlock as a, openBlock as n, normalizeClass as m, renderSlot as r, createCommentVNode as i, createElementVNode as e, toDisplayString as f, createTextVNode as v } from "vue";
2
+ const d = (t, o) => {
3
+ const s = t.__vccOpts || t;
4
+ for (const [l, c] of o)
5
+ s[l] = c;
6
+ return s;
7
7
  }, g = ["disabled"], B = {
8
8
  __name: "Button",
9
9
  props: {
@@ -31,30 +31,30 @@ const m = (t, e) => {
31
31
  }
32
32
  },
33
33
  emits: ["click"],
34
- setup(t, { emit: e }) {
35
- return (o, a) => (s(), n("button", {
36
- class: u(["btn", [
34
+ setup(t, { emit: o }) {
35
+ return (s, l) => (n(), a("button", {
36
+ class: m(["btn", [
37
37
  `btn-${t.type}`,
38
38
  `btn-${t.size}`,
39
39
  { "btn-block": t.block },
40
40
  { "btn-disabled": t.disabled }
41
41
  ]]),
42
42
  disabled: t.disabled,
43
- onClick: a[0] || (a[0] = (d) => o.$emit("click", d))
43
+ onClick: l[0] || (l[0] = (c) => s.$emit("click", c))
44
44
  }, [
45
- r(o.$slots, "default", {}, void 0, !0)
45
+ r(s.$slots, "default", {}, void 0, !0)
46
46
  ], 10, g));
47
47
  }
48
- }, k = /* @__PURE__ */ m(B, [["__scopeId", "data-v-75f082b2"]]), $ = {
48
+ }, $ = /* @__PURE__ */ d(B, [["__scopeId", "data-v-75f082b2"]]), z = {
49
49
  key: 0,
50
50
  class: "card-header"
51
- }, z = {
51
+ }, k = {
52
52
  key: 0,
53
53
  class: "card-header-title"
54
- }, w = { class: "card-body" }, S = {
54
+ }, w = { class: "card-body" }, C = {
55
55
  key: 1,
56
56
  class: "card-footer"
57
- }, _ = {
57
+ }, S = {
58
58
  __name: "Card",
59
59
  props: {
60
60
  // 卡片标题
@@ -69,31 +69,31 @@ const m = (t, e) => {
69
69
  }
70
70
  },
71
71
  setup(t) {
72
- return (e, o) => (s(), n("div", {
73
- class: u(["card", { "card-shadow": t.shadow }])
72
+ return (o, s) => (n(), a("div", {
73
+ class: m(["card", { "card-shadow": t.shadow }])
74
74
  }, [
75
- e.$slots.header || t.title ? (s(), n("div", $, [
76
- t.title ? (s(), n("h3", z, f(t.title), 1)) : i("", !0),
77
- r(e.$slots, "header", {}, void 0, !0)
75
+ o.$slots.header || t.title ? (n(), a("div", z, [
76
+ t.title ? (n(), a("h3", k, f(t.title), 1)) : i("", !0),
77
+ r(o.$slots, "header", {}, void 0, !0)
78
78
  ])) : i("", !0),
79
- l("div", w, [
80
- r(e.$slots, "default", {}, void 0, !0)
79
+ e("div", w, [
80
+ r(o.$slots, "default", {}, void 0, !0)
81
81
  ]),
82
- e.$slots.footer ? (s(), n("div", S, [
83
- r(e.$slots, "footer", {}, void 0, !0)
82
+ o.$slots.footer ? (n(), a("div", C, [
83
+ r(o.$slots, "footer", {}, void 0, !0)
84
84
  ])) : i("", !0)
85
85
  ], 2));
86
86
  }
87
- }, C = /* @__PURE__ */ m(_, [["__scopeId", "data-v-2d83e63a"]]), x = { class: "modal-dialog" }, M = { class: "modal-content" }, E = { class: "modal-header" }, L = {
87
+ }, M = /* @__PURE__ */ d(S, [["__scopeId", "data-v-2d83e63a"]]), L = { class: "modal-dialog" }, x = { class: "modal-content" }, E = { class: "modal-header" }, I = {
88
88
  key: 0,
89
89
  class: "modal-header-title"
90
- }, D = { class: "modal-body" }, I = {
90
+ }, O = { class: "modal-body" }, j = {
91
91
  key: 0,
92
92
  class: "modal-footer"
93
- }, A = {
93
+ }, D = {
94
94
  key: 1,
95
95
  class: "modal-footer"
96
- }, F = {
96
+ }, N = {
97
97
  __name: "Modal",
98
98
  props: {
99
99
  // 是否显示模态框
@@ -113,47 +113,102 @@ const m = (t, e) => {
113
113
  }
114
114
  },
115
115
  emits: ["close", "cancel", "confirm"],
116
- setup(t, { emit: e }) {
117
- const o = e, a = () => {
118
- o("close");
119
- }, d = () => {
120
- o("cancel");
121
- }, v = () => {
122
- o("confirm");
116
+ setup(t, { emit: o }) {
117
+ const s = o, l = () => {
118
+ s("close");
119
+ }, c = () => {
120
+ s("cancel");
121
+ }, b = () => {
122
+ s("confirm");
123
123
  };
124
- return (c, G) => t.visible ? (s(), n("div", {
124
+ return (u, Y) => t.visible ? (n(), a("div", {
125
125
  key: 0,
126
- class: u(["modal", { "modal-show": t.visible }])
126
+ class: m(["modal", { "modal-show": t.visible }])
127
127
  }, [
128
- l("div", x, [
129
- l("div", M, [
130
- l("div", E, [
131
- t.title ? (s(), n("h3", L, f(t.title), 1)) : i("", !0),
132
- l("button", {
128
+ e("div", L, [
129
+ e("div", x, [
130
+ e("div", E, [
131
+ t.title ? (n(), a("h3", I, f(t.title), 1)) : i("", !0),
132
+ e("button", {
133
133
  class: "modal-header-close",
134
- onClick: a
134
+ onClick: l
135
135
  }, "×")
136
136
  ]),
137
- l("div", D, [
138
- r(c.$slots, "default", {}, void 0, !0)
137
+ e("div", O, [
138
+ r(u.$slots, "default", {}, void 0, !0)
139
139
  ]),
140
- c.$slots.footer ? (s(), n("div", I, [
141
- r(c.$slots, "footer", {}, void 0, !0)
142
- ])) : t.showFooter ? (s(), n("div", A, [
143
- l("button", {
140
+ u.$slots.footer ? (n(), a("div", j, [
141
+ r(u.$slots, "footer", {}, void 0, !0)
142
+ ])) : t.showFooter ? (n(), a("div", D, [
143
+ e("button", {
144
144
  class: "btn btn-secondary",
145
- onClick: d
145
+ onClick: c
146
146
  }, "取消"),
147
- l("button", {
147
+ e("button", {
148
148
  class: "btn btn-primary",
149
- onClick: v
149
+ onClick: b
150
150
  }, "确定")
151
151
  ])) : i("", !0)
152
152
  ])
153
153
  ])
154
154
  ], 2)) : i("", !0);
155
155
  }
156
- }, N = /* @__PURE__ */ m(F, [["__scopeId", "data-v-c66cec30"]]), O = {
156
+ }, V = /* @__PURE__ */ d(N, [["__scopeId", "data-v-c66cec30"]]), A = { class: "lzbutton-wrapper" }, F = /* @__PURE__ */ Object.assign({
157
+ name: "Lzbutton"
158
+ }, {
159
+ __name: "lzbutton",
160
+ setup(t) {
161
+ return (o, s) => (n(), a("div", A, [...s[0] || (s[0] = [
162
+ e("button", { class: "button" }, [
163
+ e("svg", {
164
+ xmlns: "http://www.w3.org/2000/svg",
165
+ viewBox: "0 0 36 24"
166
+ }, [
167
+ e("path", { d: "m18 0 8 12 10-8-4 20H4L0 4l10 8 8-12z" })
168
+ ]),
169
+ v(" Unlock Pro ")
170
+ ], -1)
171
+ ])]));
172
+ }
173
+ }), H = /* @__PURE__ */ d(F, [["__scopeId", "data-v-c2498af3"]]), P = { class: "lztheme-wrapper" }, R = /* @__PURE__ */ Object.assign({
174
+ name: "Lztheme"
175
+ }, {
176
+ __name: "lztheme",
177
+ setup(t) {
178
+ return (o, s) => (n(), a("div", P, [...s[0] || (s[0] = [
179
+ e("label", {
180
+ for: "theme",
181
+ class: "theme"
182
+ }, [
183
+ e("span", { class: "theme__toggle-wrap" }, [
184
+ e("input", {
185
+ id: "theme",
186
+ class: "theme__toggle",
187
+ type: "checkbox",
188
+ role: "switch",
189
+ name: "theme",
190
+ value: "dark"
191
+ }),
192
+ e("span", { class: "theme__fill" }),
193
+ e("span", { class: "theme__icon" }, [
194
+ e("span", { class: "theme__icon-part" }),
195
+ e("span", { class: "theme__icon-part" }),
196
+ e("span", { class: "theme__icon-part" }),
197
+ e("span", { class: "theme__icon-part" }),
198
+ e("span", { class: "theme__icon-part" }),
199
+ e("span", { class: "theme__icon-part" }),
200
+ e("span", { class: "theme__icon-part" }),
201
+ e("span", { class: "theme__icon-part" }),
202
+ e("span", { class: "theme__icon-part" })
203
+ ])
204
+ ])
205
+ ], -1)
206
+ ])]));
207
+ }
208
+ }), T = /* @__PURE__ */ d(R, [["__scopeId", "data-v-0b85d094"]]), U = {
209
+ Lzbutton: H,
210
+ Lztheme: T
211
+ }, q = {
157
212
  name: "Button",
158
213
  type: "vue",
159
214
  label: "Button 按钮",
@@ -167,7 +222,7 @@ const m = (t, e) => {
167
222
  <script setup>
168
223
  import { Button } from 'little-dizzy'
169
224
  <\/script>`
170
- }, V = {
225
+ }, G = {
171
226
  name: "Card",
172
227
  type: "vue",
173
228
  label: "Card 卡片",
@@ -187,7 +242,7 @@ import { Button } from 'little-dizzy'
187
242
  <script setup>
188
243
  import { Card, Button } from 'little-dizzy'
189
244
  <\/script>`
190
- }, j = {
245
+ }, J = {
191
246
  name: "Modal",
192
247
  type: "vue",
193
248
  label: "Modal 模态框",
@@ -212,59 +267,12 @@ import { Modal, Button } from 'little-dizzy'
212
267
 
213
268
  const visible = ref(false)
214
269
  <\/script>`
215
- }, H = {
216
- name: "lzbutton",
217
- type: "html",
218
- label: "LzButton 渐变按钮",
219
- isCustom: !0,
220
- code: `<button class="button">
221
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 36 24">
222
- <path d="m18 0 8 12 10-8-4 20H4L0 4l10 8 8-12z"></path>
223
- </svg>
224
- Unlock Pro
225
- </button>
226
-
227
- <style>
228
- .button {
229
- width: fit-content;
230
- display: flex;
231
- padding: 1.2em 1rem;
232
- cursor: pointer;
233
- gap: 0.4rem;
234
- font-weight: bold;
235
- border-radius: 30px;
236
- text-shadow: 2px 2px 3px rgb(136 0 136 / 50%);
237
- background: linear-gradient(15deg, #880088, #aa2068, #cc3f47, #de6f3d, #f09f33, #de6f3d, #cc3f47, #aa2068, #880088) no-repeat;
238
- background-size: 300%;
239
- color: #fff;
240
- border: none;
241
- background-position: left center;
242
- box-shadow: 0 30px 10px -20px rgba(0,0,0,.2);
243
- transition: background .3s ease;
244
- }
245
-
246
- .button:hover {
247
- background-size: 320%;
248
- background-position: right center;
249
- }
250
-
251
- .button:hover svg {
252
- fill: #fff;
253
- }
254
-
255
- .button svg {
256
- width: 23px;
257
- fill: #f09f33;
258
- transition: .3s ease;
259
- }
260
- </style>`
261
- }, P = [
262
- O,
263
- V,
264
- j,
265
- H
270
+ }, K = [
271
+ q,
272
+ G,
273
+ J
266
274
  ], p = /* @__PURE__ */ new Map();
267
- function b(t) {
275
+ function _(t) {
268
276
  return !t || !t.name ? (console.warn("[LittleDizzy] Snippet must have a name property"), !1) : (p.set(t.name, {
269
277
  name: t.name,
270
278
  type: t.type || "html",
@@ -274,43 +282,47 @@ function b(t) {
274
282
  ...t
275
283
  }), !0);
276
284
  }
277
- function y(t) {
285
+ function h(t) {
278
286
  if (!Array.isArray(t))
279
287
  return console.warn("[LittleDizzy] registerSnippets expects an array"), 0;
280
- let e = 0;
281
- return t.forEach((o) => {
282
- b(o) && e++;
283
- }), e;
288
+ let o = 0;
289
+ return t.forEach((s) => {
290
+ _(s) && o++;
291
+ }), o;
284
292
  }
285
- function R() {
293
+ function Q() {
286
294
  const t = {};
287
- return p.forEach((e, o) => {
288
- t[o] = e;
295
+ return p.forEach((o, s) => {
296
+ t[s] = o;
289
297
  }), t;
290
298
  }
291
- function U(t) {
299
+ function W(t) {
292
300
  return p.get(t);
293
301
  }
294
- y(P);
295
- const h = {
296
- Button: k,
297
- Card: C,
298
- Modal: N
299
- }, q = (t, e = {}) => {
300
- Object.entries(h).forEach(([o, a]) => {
301
- t.component(e.prefix ? `${e.prefix}${o}` : o, a);
302
+ h(K);
303
+ const y = {
304
+ Button: $,
305
+ Card: M,
306
+ Modal: V,
307
+ ...U
308
+ }, X = (t, o = {}) => {
309
+ Object.entries(y).forEach(([s, l]) => {
310
+ t.component(o.prefix ? `${o.prefix}${s}` : s, l);
302
311
  });
303
- }, K = R, Q = b, T = y, W = U, X = {
304
- install: q,
305
- ...h
312
+ }, tt = Q, et = _, st = h, ot = W, at = {
313
+ install: X,
314
+ ...y
306
315
  };
307
316
  export {
308
- k as Button,
309
- C as Card,
310
- N as Modal,
311
- X as default,
312
- W as getSnippet,
313
- Q as registerSnippet,
314
- T as registerSnippets,
315
- K as snippets
317
+ $ as Button,
318
+ M as Card,
319
+ H as Lzbutton,
320
+ T as Lztheme,
321
+ V as Modal,
322
+ U as customComponents,
323
+ at as default,
324
+ ot as getSnippet,
325
+ et as registerSnippet,
326
+ st as registerSnippets,
327
+ tt as snippets
316
328
  };
@@ -1,4 +1,4 @@
1
- (function(l,e){typeof exports=="object"&&typeof module<"u"?e(exports,require("vue")):typeof define=="function"&&define.amd?define(["exports","vue"],e):(l=typeof globalThis<"u"?globalThis:l||self,e(l.LittleDizzy={},l.Vue))})(this,(function(l,e){"use strict";const r=(t,o)=>{const n=t.__vccOpts||t;for(const[a,s]of o)n[a]=s;return n},y=["disabled"],c=r({__name:"Button",props:{type:{type:String,default:"primary",validator:t=>["primary","success","warning","danger","info","secondary"].includes(t)},size:{type:String,default:"medium",validator:t=>["small","medium","large"].includes(t)},block:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1}},emits:["click"],setup(t,{emit:o}){return(n,a)=>(e.openBlock(),e.createElementBlock("button",{class:e.normalizeClass(["btn",[`btn-${t.type}`,`btn-${t.size}`,{"btn-block":t.block},{"btn-disabled":t.disabled}]]),disabled:t.disabled,onClick:a[0]||(a[0]=s=>n.$emit("click",s))},[e.renderSlot(n.$slots,"default",{},void 0,!0)],10,y))}},[["__scopeId","data-v-75f082b2"]]),h={key:0,class:"card-header"},B={key:0,class:"card-header-title"},g={class:"card-body"},k={key:1,class:"card-footer"},m=r({__name:"Card",props:{title:{type:String,default:""},shadow:{type:Boolean,default:!0}},setup(t){return(o,n)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["card",{"card-shadow":t.shadow}])},[o.$slots.header||t.title?(e.openBlock(),e.createElementBlock("div",h,[t.title?(e.openBlock(),e.createElementBlock("h3",B,e.toDisplayString(t.title),1)):e.createCommentVNode("",!0),e.renderSlot(o.$slots,"header",{},void 0,!0)])):e.createCommentVNode("",!0),e.createElementVNode("div",g,[e.renderSlot(o.$slots,"default",{},void 0,!0)]),o.$slots.footer?(e.openBlock(),e.createElementBlock("div",k,[e.renderSlot(o.$slots,"footer",{},void 0,!0)])):e.createCommentVNode("",!0)],2))}},[["__scopeId","data-v-2d83e63a"]]),S={class:"modal-dialog"},_={class:"modal-content"},z={class:"modal-header"},C={key:0,class:"modal-header-title"},$={class:"modal-body"},w={key:0,class:"modal-footer"},E={key:1,class:"modal-footer"},p=r({__name:"Modal",props:{visible:{type:Boolean,default:!1},title:{type:String,default:""},showFooter:{type:Boolean,default:!0}},emits:["close","cancel","confirm"],setup(t,{emit:o}){const n=o,a=()=>{n("close")},s=()=>{n("cancel")},O=()=>{n("confirm")};return(d,U)=>t.visible?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(["modal",{"modal-show":t.visible}])},[e.createElementVNode("div",S,[e.createElementVNode("div",_,[e.createElementVNode("div",z,[t.title?(e.openBlock(),e.createElementBlock("h3",C,e.toDisplayString(t.title),1)):e.createCommentVNode("",!0),e.createElementVNode("button",{class:"modal-header-close",onClick:a},"×")]),e.createElementVNode("div",$,[e.renderSlot(d.$slots,"default",{},void 0,!0)]),d.$slots.footer?(e.openBlock(),e.createElementBlock("div",w,[e.renderSlot(d.$slots,"footer",{},void 0,!0)])):t.showFooter?(e.openBlock(),e.createElementBlock("div",E,[e.createElementVNode("button",{class:"btn btn-secondary",onClick:s},"取消"),e.createElementVNode("button",{class:"btn btn-primary",onClick:O},"确定")])):e.createCommentVNode("",!0)])])],2)):e.createCommentVNode("",!0)}},[["__scopeId","data-v-c66cec30"]]),V=[{name:"Button",type:"vue",label:"Button 按钮",code:`<template>
1
+ (function(a,e){typeof exports=="object"&&typeof module<"u"?e(exports,require("vue")):typeof define=="function"&&define.amd?define(["exports","vue"],e):(a=typeof globalThis<"u"?globalThis:a||self,e(a.LittleDizzy={},a.Vue))})(this,(function(a,e){"use strict";const l=(t,n)=>{const o=t.__vccOpts||t;for(const[s,c]of n)o[s]=c;return o},B=["disabled"],d=l({__name:"Button",props:{type:{type:String,default:"primary",validator:t=>["primary","success","warning","danger","info","secondary"].includes(t)},size:{type:String,default:"medium",validator:t=>["small","medium","large"].includes(t)},block:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1}},emits:["click"],setup(t,{emit:n}){return(o,s)=>(e.openBlock(),e.createElementBlock("button",{class:e.normalizeClass(["btn",[`btn-${t.type}`,`btn-${t.size}`,{"btn-block":t.block},{"btn-disabled":t.disabled}]]),disabled:t.disabled,onClick:s[0]||(s[0]=c=>o.$emit("click",c))},[e.renderSlot(o.$slots,"default",{},void 0,!0)],10,B))}},[["__scopeId","data-v-75f082b2"]]),k={key:0,class:"card-header"},E={key:0,class:"card-header-title"},g={class:"card-body"},S={key:1,class:"card-footer"},m=l({__name:"Card",props:{title:{type:String,default:""},shadow:{type:Boolean,default:!0}},setup(t){return(n,o)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["card",{"card-shadow":t.shadow}])},[n.$slots.header||t.title?(e.openBlock(),e.createElementBlock("div",k,[t.title?(e.openBlock(),e.createElementBlock("h3",E,e.toDisplayString(t.title),1)):e.createCommentVNode("",!0),e.renderSlot(n.$slots,"header",{},void 0,!0)])):e.createCommentVNode("",!0),e.createElementVNode("div",g,[e.renderSlot(n.$slots,"default",{},void 0,!0)]),n.$slots.footer?(e.openBlock(),e.createElementBlock("div",S,[e.renderSlot(n.$slots,"footer",{},void 0,!0)])):e.createCommentVNode("",!0)],2))}},[["__scopeId","data-v-2d83e63a"]]),V={class:"modal-dialog"},N={class:"modal-content"},$={class:"modal-header"},z={key:0,class:"modal-header-title"},C={class:"modal-body"},w={key:0,class:"modal-footer"},M={key:1,class:"modal-footer"},p=l({__name:"Modal",props:{visible:{type:Boolean,default:!1},title:{type:String,default:""},showFooter:{type:Boolean,default:!0}},emits:["close","cancel","confirm"],setup(t,{emit:n}){const o=n,s=()=>{o("close")},c=()=>{o("cancel")},R=()=>{o("confirm")};return(i,Z)=>t.visible?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(["modal",{"modal-show":t.visible}])},[e.createElementVNode("div",V,[e.createElementVNode("div",N,[e.createElementVNode("div",$,[t.title?(e.openBlock(),e.createElementBlock("h3",z,e.toDisplayString(t.title),1)):e.createCommentVNode("",!0),e.createElementVNode("button",{class:"modal-header-close",onClick:s},"×")]),e.createElementVNode("div",C,[e.renderSlot(i.$slots,"default",{},void 0,!0)]),i.$slots.footer?(e.openBlock(),e.createElementBlock("div",w,[e.renderSlot(i.$slots,"footer",{},void 0,!0)])):t.showFooter?(e.openBlock(),e.createElementBlock("div",M,[e.createElementVNode("button",{class:"btn btn-secondary",onClick:c},"取消"),e.createElementVNode("button",{class:"btn btn-primary",onClick:R},"确定")])):e.createCommentVNode("",!0)])])],2)):e.createCommentVNode("",!0)}},[["__scopeId","data-v-c66cec30"]]),L={class:"lzbutton-wrapper"},f=l(Object.assign({name:"Lzbutton"},{__name:"lzbutton",setup(t){return(n,o)=>(e.openBlock(),e.createElementBlock("div",L,[...o[0]||(o[0]=[e.createElementVNode("button",{class:"button"},[e.createElementVNode("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 36 24"},[e.createElementVNode("path",{d:"m18 0 8 12 10-8-4 20H4L0 4l10 8 8-12z"})]),e.createTextVNode(" Unlock Pro ")],-1)])]))}}),[["__scopeId","data-v-c2498af3"]]),j={class:"lztheme-wrapper"},_=l(Object.assign({name:"Lztheme"},{__name:"lztheme",setup(t){return(n,o)=>(e.openBlock(),e.createElementBlock("div",j,[...o[0]||(o[0]=[e.createElementVNode("label",{for:"theme",class:"theme"},[e.createElementVNode("span",{class:"theme__toggle-wrap"},[e.createElementVNode("input",{id:"theme",class:"theme__toggle",type:"checkbox",role:"switch",name:"theme",value:"dark"}),e.createElementVNode("span",{class:"theme__fill"}),e.createElementVNode("span",{class:"theme__icon"},[e.createElementVNode("span",{class:"theme__icon-part"}),e.createElementVNode("span",{class:"theme__icon-part"}),e.createElementVNode("span",{class:"theme__icon-part"}),e.createElementVNode("span",{class:"theme__icon-part"}),e.createElementVNode("span",{class:"theme__icon-part"}),e.createElementVNode("span",{class:"theme__icon-part"}),e.createElementVNode("span",{class:"theme__icon-part"}),e.createElementVNode("span",{class:"theme__icon-part"}),e.createElementVNode("span",{class:"theme__icon-part"})])])],-1)])]))}}),[["__scopeId","data-v-0b85d094"]]),u={Lzbutton:f,Lztheme:_},D=[{name:"Button",type:"vue",label:"Button 按钮",code:`<template>
2
2
  <Button type="primary">主要按钮</Button>
3
3
  <Button type="success">成功按钮</Button>
4
4
  <Button type="warning">警告按钮</Button>
@@ -42,44 +42,4 @@ import { ref } from 'vue'
42
42
  import { Modal, Button } from 'little-dizzy'
43
43
 
44
44
  const visible = ref(false)
45
- <\/script>`},{name:"lzbutton",type:"html",label:"LzButton 渐变按钮",isCustom:!0,code:`<button class="button">
46
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 36 24">
47
- <path d="m18 0 8 12 10-8-4 20H4L0 4l10 8 8-12z"></path>
48
- </svg>
49
- Unlock Pro
50
- </button>
51
-
52
- <style>
53
- .button {
54
- width: fit-content;
55
- display: flex;
56
- padding: 1.2em 1rem;
57
- cursor: pointer;
58
- gap: 0.4rem;
59
- font-weight: bold;
60
- border-radius: 30px;
61
- text-shadow: 2px 2px 3px rgb(136 0 136 / 50%);
62
- background: linear-gradient(15deg, #880088, #aa2068, #cc3f47, #de6f3d, #f09f33, #de6f3d, #cc3f47, #aa2068, #880088) no-repeat;
63
- background-size: 300%;
64
- color: #fff;
65
- border: none;
66
- background-position: left center;
67
- box-shadow: 0 30px 10px -20px rgba(0,0,0,.2);
68
- transition: background .3s ease;
69
- }
70
-
71
- .button:hover {
72
- background-size: 320%;
73
- background-position: right center;
74
- }
75
-
76
- .button:hover svg {
77
- fill: #fff;
78
- }
79
-
80
- .button svg {
81
- width: 23px;
82
- fill: #f09f33;
83
- transition: .3s ease;
84
- }
85
- </style>`}],i=new Map;function u(t){return!t||!t.name?(console.warn("[LittleDizzy] Snippet must have a name property"),!1):(i.set(t.name,{name:t.name,type:t.type||"html",label:t.label||t.name,code:t.code||"",isCustom:t.isCustom||!1,...t}),!0)}function f(t){if(!Array.isArray(t))return console.warn("[LittleDizzy] registerSnippets expects an array"),0;let o=0;return t.forEach(n=>{u(n)&&o++}),o}function N(){const t={};return i.forEach((o,n)=>{t[n]=o}),t}function M(t){return i.get(t)}f(V);const b={Button:c,Card:m,Modal:p},v=(t,o={})=>{Object.entries(b).forEach(([n,a])=>{t.component(o.prefix?`${o.prefix}${n}`:n,a)})},x=N,D=u,L=f,j=M,I={install:v,...b};l.Button=c,l.Card=m,l.Modal=p,l.default=I,l.getSnippet=j,l.registerSnippet=D,l.registerSnippets=L,l.snippets=x,Object.defineProperties(l,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})}));
45
+ <\/script>`}],r=new Map;function h(t){return!t||!t.name?(console.warn("[LittleDizzy] Snippet must have a name property"),!1):(r.set(t.name,{name:t.name,type:t.type||"html",label:t.label||t.name,code:t.code||"",isCustom:t.isCustom||!1,...t}),!0)}function y(t){if(!Array.isArray(t))return console.warn("[LittleDizzy] registerSnippets expects an array"),0;let n=0;return t.forEach(o=>{h(o)&&n++}),n}function I(){const t={};return r.forEach((n,o)=>{t[o]=n}),t}function O(t){return r.get(t)}y(D);const b={Button:d,Card:m,Modal:p,...u},T=(t,n={})=>{Object.entries(b).forEach(([o,s])=>{t.component(n.prefix?`${n.prefix}${o}`:o,s)})},A=I,F=h,P=y,q=O,H={install:T,...b};a.Button=d,a.Card=m,a.Lzbutton=f,a.Lztheme=_,a.Modal=p,a.customComponents=u,a.default=H,a.getSnippet=q,a.registerSnippet=F,a.registerSnippets=P,a.snippets=A,Object.defineProperties(a,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})}));
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "little-dizzy",
3
- "version": "1.2.1",
3
+ "version": "2.2.0",
4
4
  "description": "LittleDizzy - 一个支持代码片段的 Vue 3 UI 组件库",
5
5
  "type": "module",
6
6
  "main": "dist/little-dizzy.umd.cjs",
@@ -24,7 +24,11 @@
24
24
  "dev": "vite",
25
25
  "build": "vite build",
26
26
  "build:lib": "vite build --config vite.lib.config.js",
27
- "preview": "vite preview"
27
+ "preview": "vite preview",
28
+ "prepublishOnly": "npm run build:lib",
29
+ "publish:patch": "npm version patch --no-git-tag-version && npm run build:lib && npm publish --registry https://registry.npmjs.org",
30
+ "publish:minor": "npm version minor --no-git-tag-version && npm run build:lib && npm publish --registry https://registry.npmjs.org",
31
+ "publish:major": "npm version major --no-git-tag-version && npm run build:lib && npm publish --registry https://registry.npmjs.org"
28
32
  },
29
33
  "keywords": [
30
34
  "vue",
@@ -45,11 +49,13 @@
45
49
  "vue": "^3.0.0"
46
50
  },
47
51
  "dependencies": {
48
- "vue": "^3.5.24"
52
+ "little-dizzy": "^2.1.0",
53
+ "vue": "^3.0.0",
54
+ "vue-router": "^4.6.4"
49
55
  },
50
56
  "devDependencies": {
51
57
  "@vitejs/plugin-vue": "^6.0.1",
52
58
  "sass": "^1.97.1",
53
59
  "vite": "^7.2.4"
54
60
  }
55
- }
61
+ }
@@ -0,0 +1,20 @@
1
+ /**
2
+ * 自定义组件
3
+ *
4
+ * 通过 Demo 页面上传的代码片段会自动生成 Vue 组件到这里
5
+ * 此文件由 vite-plugin-snippet-writer 自动维护
6
+ */
7
+
8
+ import Lzbutton from './lzbutton.vue'
9
+ import Lztheme from './lztheme.vue'
10
+
11
+ // 自定义组件导出
12
+ export const customComponents = {
13
+ Lzbutton,
14
+ Lztheme
15
+ }
16
+
17
+ // 单独导出每个组件
18
+ export { Lzbutton, Lztheme }
19
+
20
+ export default customComponents
@@ -1,53 +1,57 @@
1
- /**
2
- * LzButton 代码片段
3
- * 渐变动画按钮
4
- */
5
-
6
- export default {
7
- name: 'lzbutton',
8
- type: 'html',
9
- label: 'LzButton 渐变按钮',
10
- isCustom: true,
11
- code: `<button class="button">
12
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 36 24">
13
- <path d="m18 0 8 12 10-8-4 20H4L0 4l10 8 8-12z"></path>
14
- </svg>
15
- Unlock Pro
16
- </button>
17
-
18
- <style>
19
- .button {
20
- width: fit-content;
21
- display: flex;
22
- padding: 1.2em 1rem;
23
- cursor: pointer;
24
- gap: 0.4rem;
25
- font-weight: bold;
26
- border-radius: 30px;
27
- text-shadow: 2px 2px 3px rgb(136 0 136 / 50%);
28
- background: linear-gradient(15deg, #880088, #aa2068, #cc3f47, #de6f3d, #f09f33, #de6f3d, #cc3f47, #aa2068, #880088) no-repeat;
29
- background-size: 300%;
30
- color: #fff;
31
- border: none;
32
- background-position: left center;
33
- box-shadow: 0 30px 10px -20px rgba(0,0,0,.2);
34
- transition: background .3s ease;
35
- }
36
-
37
- .button:hover {
38
- background-size: 320%;
39
- background-position: right center;
40
- }
41
-
42
- .button:hover svg {
43
- fill: #fff;
44
- }
45
-
46
- .button svg {
47
- width: 23px;
48
- fill: #f09f33;
49
- transition: .3s ease;
50
- }
51
- </style>`
52
- }
53
-
1
+ <template>
2
+ <div class="lzbutton-wrapper">
3
+ <button class="button">
4
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 36 24">
5
+ <path d="m18 0 8 12 10-8-4 20H4L0 4l10 8 8-12z"></path>
6
+ </svg>
7
+ Unlock Pro
8
+ </button>
9
+ </div>
10
+ </template>
11
+
12
+ <script setup>
13
+ /**
14
+ * 渐变按钮
15
+ *
16
+ * 由 LittleDizzy Demo 自动生成
17
+ * @component Lzbutton
18
+ */
19
+ defineOptions({
20
+ name: 'Lzbutton'
21
+ })
22
+ </script>
23
+
24
+ <style scoped>
25
+ .button {
26
+ width: fit-content;
27
+ display: flex;
28
+ padding: 1.2em 1rem;
29
+ cursor: pointer;
30
+ gap: 0.4rem;
31
+ font-weight: bold;
32
+ border-radius: 30px;
33
+ text-shadow: 2px 2px 3px rgb(136 0 136 / 50%);
34
+ background: linear-gradient(15deg, #880088, #aa2068, #cc3f47, #de6f3d, #f09f33, #de6f3d, #cc3f47, #aa2068, #880088) no-repeat;
35
+ background-size: 300%;
36
+ color: #fff;
37
+ border: none;
38
+ background-position: left center;
39
+ box-shadow: 0 30px 10px -20px rgba(0,0,0,.2);
40
+ transition: background .3s ease;
41
+ }
42
+
43
+ .button:hover {
44
+ background-size: 320%;
45
+ background-position: right center;
46
+ }
47
+
48
+ .button:hover svg {
49
+ fill: #fff;
50
+ }
51
+
52
+ .button svg {
53
+ width: 23px;
54
+ fill: #f09f33;
55
+ transition: .3s ease;
56
+ }
57
+ </style>
@@ -0,0 +1,241 @@
1
+ <template>
2
+ <div class="lztheme-wrapper">
3
+ <label for="theme" class="theme">
4
+ <span class="theme__toggle-wrap">
5
+ <input id="theme" class="theme__toggle" type="checkbox" role="switch" name="theme" value="dark">
6
+ <span class="theme__fill"></span>
7
+ <span class="theme__icon">
8
+ <span class="theme__icon-part"></span>
9
+ <span class="theme__icon-part"></span>
10
+ <span class="theme__icon-part"></span>
11
+ <span class="theme__icon-part"></span>
12
+ <span class="theme__icon-part"></span>
13
+ <span class="theme__icon-part"></span>
14
+ <span class="theme__icon-part"></span>
15
+ <span class="theme__icon-part"></span>
16
+ <span class="theme__icon-part"></span>
17
+ </span>
18
+ </span>
19
+ </label>
20
+ </div>
21
+ </template>
22
+
23
+ <script setup>
24
+ /**
25
+ * 主题切换
26
+ *
27
+ * 由 LittleDizzy Demo 自动生成
28
+ * @component Lztheme
29
+ */
30
+ defineOptions({
31
+ name: 'Lztheme'
32
+ })
33
+ </script>
34
+
35
+ <style scoped>
36
+ /* Default */
37
+ .theme {
38
+ display: flex;
39
+ align-items: center;
40
+ -webkit-tap-highlight-color: transparent;
41
+ }
42
+
43
+ .theme__fill,
44
+ .theme__icon {
45
+ transition: 0.3s;
46
+ }
47
+
48
+ .theme__fill {
49
+ background-color: var(--bg);
50
+ display: block;
51
+ mix-blend-mode: difference;
52
+ position: fixed;
53
+ inset: 0;
54
+ height: 100%;
55
+ transform: translateX(-100%);
56
+ }
57
+
58
+ .theme__icon,
59
+ .theme__toggle {
60
+ z-index: 1;
61
+ }
62
+
63
+ .theme__icon,
64
+ .theme__icon-part {
65
+ position: absolute;
66
+ }
67
+
68
+ .theme__icon {
69
+ display: block;
70
+ top: 0.5em;
71
+ left: 0.5em;
72
+ width: 1.5em;
73
+ height: 1.5em;
74
+ }
75
+
76
+ .theme__icon-part {
77
+ border-radius: 50%;
78
+ box-shadow: 0.4em -0.4em 0 0.5em hsl(0,0%,100%) inset;
79
+ top: calc(50% - 0.5em);
80
+ left: calc(50% - 0.5em);
81
+ width: 1em;
82
+ height: 1em;
83
+ transition: box-shadow var(--transDur) ease-in-out,
84
+ opacity var(--transDur) ease-in-out,
85
+ transform var(--transDur) ease-in-out;
86
+ transform: scale(0.5);
87
+ }
88
+
89
+ .theme__icon-part ~ .theme__icon-part {
90
+ background-color: hsl(0,0%,100%);
91
+ border-radius: 0.05em;
92
+ top: 50%;
93
+ left: calc(50% - 0.05em);
94
+ transform: rotate(0deg) translateY(0.5em);
95
+ transform-origin: 50% 0;
96
+ width: 0.1em;
97
+ height: 0.2em;
98
+ }
99
+
100
+ .theme__icon-part:nth-child(3) {
101
+ transform: rotate(45deg) translateY(0.45em);
102
+ }
103
+
104
+ .theme__icon-part:nth-child(4) {
105
+ transform: rotate(90deg) translateY(0.45em);
106
+ }
107
+
108
+ .theme__icon-part:nth-child(5) {
109
+ transform: rotate(135deg) translateY(0.45em);
110
+ }
111
+
112
+ .theme__icon-part:nth-child(6) {
113
+ transform: rotate(180deg) translateY(0.45em);
114
+ }
115
+
116
+ .theme__icon-part:nth-child(7) {
117
+ transform: rotate(225deg) translateY(0.45em);
118
+ }
119
+
120
+ .theme__icon-part:nth-child(8) {
121
+ transform: rotate(270deg) translateY(0.5em);
122
+ }
123
+
124
+ .theme__icon-part:nth-child(9) {
125
+ transform: rotate(315deg) translateY(0.5em);
126
+ }
127
+
128
+ .theme__label,
129
+ .theme__toggle,
130
+ .theme__toggle-wrap {
131
+ position: relative;
132
+ }
133
+
134
+ .theme__toggle,
135
+ .theme__toggle:before {
136
+ display: block;
137
+ }
138
+
139
+ .theme__toggle {
140
+ background-color: hsl(48,90%,85%);
141
+ border-radius: 25% / 50%;
142
+ box-shadow: 0 0 0 0.125em var(--primaryT);
143
+ padding: 0.25em;
144
+ width: 6em;
145
+ height: 3em;
146
+ -webkit-appearance: none;
147
+ appearance: none;
148
+ transition: background-color var(--transDur) ease-in-out,
149
+ box-shadow 0.15s ease-in-out,
150
+ transform var(--transDur) ease-in-out;
151
+ }
152
+
153
+ .theme__toggle:before {
154
+ background-color: hsl(48,90%,55%);
155
+ border-radius: 50%;
156
+ content: "";
157
+ width: 2.5em;
158
+ height: 2.5em;
159
+ transition: 0.3s;
160
+ }
161
+
162
+ .theme__toggle:focus {
163
+ box-shadow: 0 0 0 0.125em var(--primary);
164
+ outline: transparent;
165
+ }
166
+
167
+ /* Checked */
168
+ .theme__toggle:checked {
169
+ background-color: hsl(198,90%,15%);
170
+ }
171
+
172
+ .theme__toggle:checked:before,
173
+ .theme__toggle:checked ~ .theme__icon {
174
+ transform: translateX(3em);
175
+ }
176
+
177
+ .theme__toggle:checked:before {
178
+ background-color: hsl(198,90%,55%);
179
+ }
180
+
181
+ .theme__toggle:checked ~ .theme__fill {
182
+ transform: translateX(0);
183
+ }
184
+
185
+ .theme__toggle:checked ~ .theme__icon .theme__icon-part:nth-child(1) {
186
+ box-shadow: 0.2em -0.2em 0 0.2em hsl(0,0%,100%) inset;
187
+ transform: scale(1);
188
+ top: 0.2em;
189
+ left: -0.2em;
190
+ }
191
+
192
+ .theme__toggle:checked ~ .theme__icon .theme__icon-part ~ .theme__icon-part {
193
+ opacity: 0;
194
+ }
195
+
196
+ .theme__toggle:checked ~ .theme__icon .theme__icon-part:nth-child(2) {
197
+ transform: rotate(45deg) translateY(0.8em);
198
+ }
199
+
200
+ .theme__toggle:checked ~ .theme__icon .theme__icon-part:nth-child(3) {
201
+ transform: rotate(90deg) translateY(0.8em);
202
+ }
203
+
204
+ .theme__toggle:checked ~ .theme__icon .theme__icon-part:nth-child(4) {
205
+ transform: rotate(135deg) translateY(0.8em);
206
+ }
207
+
208
+ .theme__toggle:checked ~ .theme__icon .theme__icon-part:nth-child(5) {
209
+ transform: rotate(180deg) translateY(0.8em);
210
+ }
211
+
212
+ .theme__toggle:checked ~ .theme__icon .theme__icon-part:nth-child(6) {
213
+ transform: rotate(225deg) translateY(0.8em);
214
+ }
215
+
216
+ .theme__toggle:checked ~ .theme__icon .theme__icon-part:nth-child(7) {
217
+ transform: rotate(270deg) translateY(0.8em);
218
+ }
219
+
220
+ .theme__toggle:checked ~ .theme__icon .theme__icon-part:nth-child(8) {
221
+ transform: rotate(315deg) translateY(0.8em);
222
+ }
223
+
224
+ .theme__toggle:checked ~ .theme__icon .theme__icon-part:nth-child(9) {
225
+ transform: rotate(360deg) translateY(0.8em);
226
+ }
227
+
228
+ .theme__toggle-wrap {
229
+ margin: 0 0.75em;
230
+ }
231
+
232
+ @supports selector(:focus-visible) {
233
+ .theme__toggle:focus {
234
+ box-shadow: 0 0 0 0.125em var(--primaryT);
235
+ }
236
+
237
+ .theme__toggle:focus-visible {
238
+ box-shadow: 0 0 0 0.125em var(--primary);
239
+ }
240
+ }
241
+ </style>
package/src/index.js CHANGED
@@ -5,30 +5,37 @@
5
5
  *
6
6
  * 1. 完整引入
7
7
  * import LittleDizzy from 'little-dizzy'
8
- * import 'little-dizzy/dist/styles/index.css'
8
+ * import 'little-dizzy/dist/little-dizzy.css'
9
9
  * app.use(LittleDizzy)
10
10
  *
11
11
  * 2. 按需引入组件
12
12
  * import { Button, Card, Modal } from 'little-dizzy'
13
13
  * app.component('Button', Button)
14
14
  *
15
- * 3. 引入代码片段
15
+ * 3. 引入自定义组件(通过 Demo 上传生成的)
16
+ * import { LzButton } from 'little-dizzy'
17
+ *
18
+ * 4. 引入代码片段
16
19
  * import { snippets, registerSnippet } from 'little-dizzy'
17
20
  */
18
21
 
19
- // 导入组件
22
+ // 导入内置组件
20
23
  import Button from './components/Button.vue'
21
24
  import Card from './components/Card.vue'
22
25
  import Modal from './components/Modal.vue'
23
26
 
27
+ // 导入自定义组件(由 Demo 上传生成)
28
+ import { customComponents } from './components/custom/index.js'
29
+
24
30
  // 导入代码片段系统
25
31
  import * as snippetsModule from './snippets/index.js'
26
32
 
27
- // 组件列表
33
+ // 合并所有组件
28
34
  const components = {
29
35
  Button,
30
36
  Card,
31
- Modal
37
+ Modal,
38
+ ...customComponents
32
39
  }
33
40
 
34
41
  // 安装函数
@@ -45,9 +52,12 @@ export const registerSnippet = snippetsModule.registerSnippet
45
52
  export const registerSnippets = snippetsModule.registerSnippets
46
53
  export const getSnippet = snippetsModule.getSnippet
47
54
 
48
- // 导出单个组件(按需引入)
55
+ // 导出内置组件(按需引入)
49
56
  export { Button, Card, Modal }
50
57
 
58
+ // 重新导出自定义组件
59
+ export * from './components/custom/index.js'
60
+
51
61
  // 默认导出(完整引入)
52
62
  export default {
53
63
  install,
@@ -7,18 +7,16 @@
7
7
  import buttonSnippet from './button.js'
8
8
  import cardSnippet from './card.js'
9
9
  import modalSnippet from './modal.js'
10
- import lzbuttonSnippet from './lzbutton.js'
11
10
 
12
11
  // 所有预设代码片段
13
12
  export const presetSnippets = [
14
13
  buttonSnippet,
15
14
  cardSnippet,
16
- modalSnippet,
17
- lzbuttonSnippet
15
+ modalSnippet
18
16
  ]
19
17
 
20
18
  // 单独导出
21
- export { buttonSnippet, cardSnippet, modalSnippet, lzbuttonSnippet }
19
+ export { buttonSnippet, cardSnippet, modalSnippet }
22
20
 
23
21
  export default presetSnippets
24
22
 
@@ -1,43 +0,0 @@
1
- <script setup>
2
- import { ref } from 'vue'
3
-
4
- defineProps({
5
- msg: String,
6
- })
7
-
8
- const count = ref(0)
9
- </script>
10
-
11
- <template>
12
- <h1>{{ msg }}</h1>
13
-
14
- <div class="card">
15
- <button type="button" @click="count++">count is {{ count }}</button>
16
- <p>
17
- Edit
18
- <code>components/HelloWorld.vue</code> to test HMR
19
- </p>
20
- </div>
21
-
22
- <p>
23
- Check out
24
- <a href="https://vuejs.org/guide/quick-start.html#local" target="_blank"
25
- >create-vue</a
26
- >, the official Vue + Vite starter
27
- </p>
28
- <p>
29
- Learn more about IDE Support for Vue in the
30
- <a
31
- href="https://vuejs.org/guide/scaling-up/tooling.html#ide-support"
32
- target="_blank"
33
- >Vue Docs Scaling up Guide</a
34
- >.
35
- </p>
36
- <p class="read-the-docs">Click on the Vite and Vue logos to learn more</p>
37
- </template>
38
-
39
- <style scoped>
40
- .read-the-docs {
41
- color: #888;
42
- }
43
- </style>