create-lumal-admin 0.0.2-beta → 0.0.4-beta
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/CHANGELOG.md +29 -0
- package/README.md +10 -4
- package/dist/create.d.ts +1 -2
- package/dist/create.d.ts.map +1 -1
- package/dist/create.js +2 -43
- package/dist/create.js.map +1 -1
- package/dist/scaffold.d.ts.map +1 -1
- package/dist/scaffold.js +45 -19
- package/dist/scaffold.js.map +1 -1
- package/package.json +2 -1
package/CHANGELOG.md
ADDED
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
# create-lumal-admin
|
|
2
|
+
|
|
3
|
+
## 0.0.4-beta (2026-10-20)
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- 构建时注入精确的 0.0.4-beta Core 与图标依赖,源码版本占位符保持不变。
|
|
8
|
+
- 继续通过实际 tarball 验证 minimal/request 无 UI 消费,以及 local/HTTP 两种生成模式的依赖、类型与生产构建。
|
|
9
|
+
|
|
10
|
+
## 0.0.3-beta (2026-10-16)
|
|
11
|
+
|
|
12
|
+
### Patch Changes
|
|
13
|
+
|
|
14
|
+
- 生成项目精确使用同版 `0.0.3-beta` 的 Core 与图标包,构建时从脚手架 package.json 注入依赖版本。
|
|
15
|
+
- 启动代码改用 `@lumal/core/minimal`,显式安装 Element Plus 和权限、路由,不再注册整份默认组件表。
|
|
16
|
+
- 模板同步按标签版本刷新的 `cacheKeys` 接线、关闭清理与用户会话隔离,登录前清理旧快照。
|
|
17
|
+
- 直接生成完整依赖、tsconfig、Node 与 pnpm 版本要求,移除生成后补写步骤。
|
|
18
|
+
- 独立 tarball 消费验收覆盖 local 与 HTTP 两种模式的生成、版本、安装和生产构建。
|
|
19
|
+
|
|
20
|
+
## 0.0.2-beta (2026-08-01)
|
|
21
|
+
|
|
22
|
+
### Minor Changes
|
|
23
|
+
|
|
24
|
+
- Add the unified static and remote menu route runtime, navigation discovery components, permission access control, and persisted navigation and font-size preferences. Nested route guards enforce ancestor permissions and roles, and generated admin projects now use the same menu runtime.
|
|
25
|
+
|
|
26
|
+
### Patch Changes
|
|
27
|
+
|
|
28
|
+
- 补齐生成项目所需的 `@iconify/vue` 与 `sass-embedded` 依赖,并新增打包后生成、安装和生产构建的独立消费检查。
|
|
29
|
+
- 修复应用插件安装顺序和脚手架发布后的依赖版本同步,并统一多包版本发布策略。
|
package/README.md
CHANGED
|
@@ -4,9 +4,11 @@
|
|
|
4
4
|
|
|
5
5
|
## 使用
|
|
6
6
|
|
|
7
|
+
环境要求:Node.js `>=22.12.0`、pnpm `10.33.0`。工作区准备版本为 `0.0.4-beta`;以下命令在本版发布后使用,显式指定版本,避免解析到旧的 `latest`。
|
|
8
|
+
|
|
7
9
|
```bash
|
|
8
|
-
pnpm create lumal-admin my-admin
|
|
9
|
-
pnpm create lumal-admin my-admin-http --api-mode http
|
|
10
|
+
pnpm create lumal-admin@0.0.4-beta my-admin
|
|
11
|
+
pnpm create lumal-admin@0.0.4-beta my-admin-http --api-mode http
|
|
10
12
|
```
|
|
11
13
|
|
|
12
14
|
`--api-mode local` 是默认模式,保留浏览器内请求示例;`--api-mode http` 会额外生成接口环境变量、标准请求客户端、登录刷新示例和 `API-CONTRACT.md`,但不会生成完整业务后端。
|
|
@@ -24,8 +26,8 @@ pnpm dev
|
|
|
24
26
|
- Vue 3 + TypeScript + Vite。
|
|
25
27
|
- Element Plus 作为 UI 基础。
|
|
26
28
|
- `@lumal/core/theme-chalk/index.scss`、`@lumal/core/style.css` 和 SCSS 样式入口。
|
|
27
|
-
- `createLumalAdmin`
|
|
28
|
-
- `LumalLayout` 后台布局壳和 `LumalRouterView` 路由出口,采用路由驱动标签模式:固定首页页签、`routeTabResolver`
|
|
29
|
+
- `@lumal/core/minimal` 的 `createLumalAdmin` 启动代码,显式安装 Element Plus、Router 和权限,不注册默认全量组件表。
|
|
30
|
+
- `LumalLayout` 后台布局壳和 `LumalRouterView` 路由出口,采用路由驱动标签模式:固定首页页签、`routeTabResolver` 动态追加、会话级持久化、按标签版本刷新、`cacheKeys` 联动关闭与缓存剔除。
|
|
29
31
|
- 登录页、会话状态、权限菜单和路由守卫。
|
|
30
32
|
- 工作台、受保护业务占位页、403 与独立 404 页面。
|
|
31
33
|
- 主题切换、布局与标签偏好持久化、全局设置抽屉。
|
|
@@ -34,4 +36,8 @@ pnpm dev
|
|
|
34
36
|
|
|
35
37
|
脚手架生成的项目只通过 `@lumal/core`、`@lumal/icons`、`@lumal/icons-vue` 等公开包入口消费能力,不依赖 monorepo 内部源码路径。
|
|
36
38
|
|
|
39
|
+
三个 Lumal 依赖由构建步骤注入与脚手架相同的精确版本 `0.0.4-beta`,不使用浮动版本。模板按用户重建布局壳,登录前清理旧会话与标签快照。轻入口不代表移除模板所需的 Element Plus。
|
|
40
|
+
|
|
41
|
+
维护者可在仓库根目录执行 `pnpm build` 后运行 `pnpm test:create-consumer`,从实际 tarball 验证无 UI 的 minimal/request 消费及 `local`、`http` 两种生成模式的独立安装和构建。
|
|
42
|
+
|
|
37
43
|
脚手架不会生成用户、角色、菜单、字典、配置等完整系统管理业务;这些应由具体项目按自身接口和权限模型实现。
|
package/dist/create.d.ts
CHANGED
|
@@ -1,3 +1,2 @@
|
|
|
1
|
-
|
|
2
|
-
export declare function createLumalAdminProject(options: CreateLumalAdminProjectOptions): Promise<CreateLumalAdminProjectResult>;
|
|
1
|
+
export { createLumalAdminProject } from './scaffold.js';
|
|
3
2
|
//# sourceMappingURL=create.d.ts.map
|
package/dist/create.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"create.d.ts","sourceRoot":"","sources":["../src/create.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"create.d.ts","sourceRoot":"","sources":["../src/create.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,uBAAuB,EAAE,MAAM,eAAe,CAAA"}
|
package/dist/create.js
CHANGED
|
@@ -1,44 +1,3 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
import { createLumalAdminProject as createScaffoldProject } from './scaffold.js';
|
|
4
|
-
const requiredDependencies = {
|
|
5
|
-
'@iconify/vue': '^5.0.0',
|
|
6
|
-
};
|
|
7
|
-
const requiredDevDependencies = {
|
|
8
|
-
'@types/node': '^24.6.1',
|
|
9
|
-
'sass-embedded': '^1.95.1',
|
|
10
|
-
};
|
|
11
|
-
function sortRecord(record) {
|
|
12
|
-
return Object.fromEntries(Object.entries(record).sort(([left], [right]) => left.localeCompare(right)));
|
|
13
|
-
}
|
|
14
|
-
async function completeGeneratedPackage(targetDir) {
|
|
15
|
-
const packageJsonPath = join(targetDir, 'package.json');
|
|
16
|
-
const packageJson = JSON.parse(await readFile(packageJsonPath, 'utf8'));
|
|
17
|
-
packageJson.dependencies = sortRecord({
|
|
18
|
-
...packageJson.dependencies,
|
|
19
|
-
...requiredDependencies,
|
|
20
|
-
});
|
|
21
|
-
packageJson.devDependencies = sortRecord({
|
|
22
|
-
...packageJson.devDependencies,
|
|
23
|
-
...requiredDevDependencies,
|
|
24
|
-
});
|
|
25
|
-
await writeFile(packageJsonPath, `${JSON.stringify(packageJson, null, 2)}\n`);
|
|
26
|
-
}
|
|
27
|
-
async function completeGeneratedTsConfig(targetDir) {
|
|
28
|
-
const tsConfigPath = join(targetDir, 'tsconfig.json');
|
|
29
|
-
const tsConfig = JSON.parse(await readFile(tsConfigPath, 'utf8'));
|
|
30
|
-
const compilerOptions = tsConfig.compilerOptions ?? {};
|
|
31
|
-
compilerOptions.types = Array.from(new Set([
|
|
32
|
-
...(compilerOptions.types ?? []),
|
|
33
|
-
'node',
|
|
34
|
-
]));
|
|
35
|
-
tsConfig.compilerOptions = compilerOptions;
|
|
36
|
-
await writeFile(tsConfigPath, `${JSON.stringify(tsConfig, null, 2)}\n`);
|
|
37
|
-
}
|
|
38
|
-
export async function createLumalAdminProject(options) {
|
|
39
|
-
const result = await createScaffoldProject(options);
|
|
40
|
-
await completeGeneratedPackage(result.targetDir);
|
|
41
|
-
await completeGeneratedTsConfig(result.targetDir);
|
|
42
|
-
return result;
|
|
43
|
-
}
|
|
1
|
+
// 模板直接生成最终配置,保留原公开模块入口而不再二次读写文件。
|
|
2
|
+
export { createLumalAdminProject } from './scaffold.js';
|
|
44
3
|
//# sourceMappingURL=create.js.map
|
package/dist/create.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"create.js","sourceRoot":"","sources":["../src/create.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"create.js","sourceRoot":"","sources":["../src/create.ts"],"names":[],"mappings":"AAAA,iCAAiC;AACjC,OAAO,EAAE,uBAAuB,EAAE,MAAM,eAAe,CAAA"}
|
package/dist/scaffold.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scaffold.d.ts","sourceRoot":"","sources":["../src/scaffold.ts"],"names":[],"mappings":"AAGA,MAAM,WAAW,8BAA8B;IAC7C,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,CAAA;IAC1B,IAAI,EAAE,MAAM,CAAA;IACZ,SAAS,EAAE,MAAM,CAAA;CAClB;AAED,MAAM,WAAW,6BAA6B;IAC5C,SAAS,EAAE,MAAM,CAAA;IACjB,YAAY,EAAE,MAAM,EAAE,CAAA;CACvB;
|
|
1
|
+
{"version":3,"file":"scaffold.d.ts","sourceRoot":"","sources":["../src/scaffold.ts"],"names":[],"mappings":"AAGA,MAAM,WAAW,8BAA8B;IAC7C,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,CAAA;IAC1B,IAAI,EAAE,MAAM,CAAA;IACZ,SAAS,EAAE,MAAM,CAAA;CAClB;AAED,MAAM,WAAW,6BAA6B;IAC5C,SAAS,EAAE,MAAM,CAAA;IACjB,YAAY,EAAE,MAAM,EAAE,CAAA;CACvB;AAkmDD,oDAAoD;AACpD,wBAAsB,uBAAuB,CAC3C,OAAO,EAAE,8BAA8B,GACtC,OAAO,CAAC,6BAA6B,CAAC,CAexC"}
|
package/dist/scaffold.js
CHANGED
|
@@ -24,21 +24,28 @@ function createPackageJson(projectName) {
|
|
|
24
24
|
type: 'module',
|
|
25
25
|
version: '0.0.0',
|
|
26
26
|
private: true,
|
|
27
|
+
packageManager: 'pnpm@10.33.0',
|
|
28
|
+
engines: {
|
|
29
|
+
node: '>=22.12.0',
|
|
30
|
+
},
|
|
27
31
|
scripts: {
|
|
28
32
|
dev: 'vite --host 127.0.0.1',
|
|
29
33
|
build: 'vue-tsc --noEmit -p tsconfig.json && vite build',
|
|
30
34
|
preview: 'vite preview --host 127.0.0.1',
|
|
31
35
|
},
|
|
32
36
|
dependencies: {
|
|
33
|
-
'@
|
|
34
|
-
'@lumal/
|
|
35
|
-
'@lumal/icons
|
|
37
|
+
'@iconify/vue': '^5.0.0',
|
|
38
|
+
'@lumal/core': "0.0.4-beta",
|
|
39
|
+
'@lumal/icons': "0.0.4-beta",
|
|
40
|
+
'@lumal/icons-vue': "0.0.4-beta",
|
|
36
41
|
'element-plus': '^2.11.0',
|
|
37
42
|
'vue': '^3.5.0',
|
|
38
43
|
'vue-router': '^4.5.0',
|
|
39
44
|
},
|
|
40
45
|
devDependencies: {
|
|
46
|
+
'@types/node': '^24.6.1',
|
|
41
47
|
'@vitejs/plugin-vue': '^6.0.1',
|
|
48
|
+
'sass-embedded': '^1.95.1',
|
|
42
49
|
'typescript': '^6.0.0',
|
|
43
50
|
'vite': '^8.0.0',
|
|
44
51
|
'vue-tsc': '^3.1.1',
|
|
@@ -70,7 +77,7 @@ function createTsConfig() {
|
|
|
70
77
|
"jsx": "preserve",
|
|
71
78
|
"useDefineForClassFields": true,
|
|
72
79
|
"resolveJsonModule": true,
|
|
73
|
-
"types": ["vite/client"],
|
|
80
|
+
"types": ["vite/client", "node"],
|
|
74
81
|
"isolatedModules": true,
|
|
75
82
|
"skipLibCheck": true
|
|
76
83
|
},
|
|
@@ -136,7 +143,7 @@ export default defineConfig({
|
|
|
136
143
|
}
|
|
137
144
|
function createMainTs() {
|
|
138
145
|
return `import type { IconDefinition } from '@lumal/icons'
|
|
139
|
-
import { createLumalAdmin } from '@lumal/core'
|
|
146
|
+
import { createLumalAdmin } from '@lumal/core/minimal'
|
|
140
147
|
import ElementPlus from 'element-plus'
|
|
141
148
|
import zhCn from 'element-plus/es/locale/lang/zh-cn'
|
|
142
149
|
import App from './App.vue'
|
|
@@ -232,7 +239,7 @@ import {
|
|
|
232
239
|
LumalLayout,
|
|
233
240
|
LumalRouterView,
|
|
234
241
|
} from '@lumal/core/layout'
|
|
235
|
-
import { computed, shallowRef, watch } from 'vue'
|
|
242
|
+
import { computed, reactive, shallowRef, watch } from 'vue'
|
|
236
243
|
import { useRoute, useRouter } from 'vue-router'
|
|
237
244
|
import AppHeaderActions from './components/app/AppHeaderActions.vue'
|
|
238
245
|
import AppSettingsDrawer from './components/app/AppSettingsDrawer.vue'
|
|
@@ -248,7 +255,7 @@ import { adminTabSnapshotStorageKey, currentUser, logout } from './services/sess
|
|
|
248
255
|
/***********************页面状态*********************/
|
|
249
256
|
const title = 'Lumal Admin'
|
|
250
257
|
const settingsVisible = shallowRef(false)
|
|
251
|
-
const
|
|
258
|
+
const routeRefreshKeys = reactive<Record<string, number>>({})
|
|
252
259
|
|
|
253
260
|
/***********************路由状态*********************/
|
|
254
261
|
const route = useRoute()
|
|
@@ -256,7 +263,11 @@ const router = useRouter()
|
|
|
256
263
|
const isPublicLayout = computed(() => route.meta.layout === 'public')
|
|
257
264
|
const allMenus = computed(() => createAdminSidebarMenus())
|
|
258
265
|
const fixedTabs = computed<LumalLayoutTabItem[]>(() => createAdminTabs())
|
|
259
|
-
|
|
266
|
+
// 标签和视图使用相同的 path/version 身份,刷新只替换当前标签的缓存。
|
|
267
|
+
function resolveRouteViewKey(path: string): string {
|
|
268
|
+
return \`\${path}:\${routeRefreshKeys[path] ?? 0}\`
|
|
269
|
+
}
|
|
270
|
+
const routeViewKey = computed(() => resolveRouteViewKey(route.path))
|
|
260
271
|
const routeViewCache = computed(() => adminPreferences.value.tabbar.enable && adminPreferences.value.tabbar.cache)
|
|
261
272
|
const activePath = computed({
|
|
262
273
|
get: () => route.path,
|
|
@@ -324,7 +335,15 @@ async function handleTabRefresh(path: string): Promise<void> {
|
|
|
324
335
|
await router.push(path)
|
|
325
336
|
}
|
|
326
337
|
|
|
327
|
-
|
|
338
|
+
routeRefreshKeys[path] = (routeRefreshKeys[path] ?? 0) + 1
|
|
339
|
+
}
|
|
340
|
+
|
|
341
|
+
function handleTabsChange(tabs: LumalLayoutTabItem[]): void {
|
|
342
|
+
const paths = new Set(tabs.map(tab => tab.path))
|
|
343
|
+
for (const path of Object.keys(routeRefreshKeys)) {
|
|
344
|
+
if (!paths.has(path))
|
|
345
|
+
delete routeRefreshKeys[path]
|
|
346
|
+
}
|
|
328
347
|
}
|
|
329
348
|
|
|
330
349
|
function handlePreferencesChange(preferences: LumalPreferences): void {
|
|
@@ -355,6 +374,7 @@ async function handleLogout(): Promise<void> {
|
|
|
355
374
|
|
|
356
375
|
<LumalLayout
|
|
357
376
|
v-else
|
|
377
|
+
:key="currentUser?.username"
|
|
358
378
|
v-model:active-tab-path="activePath"
|
|
359
379
|
:title="title"
|
|
360
380
|
:menus="allMenus"
|
|
@@ -363,12 +383,13 @@ async function handleLogout(): Promise<void> {
|
|
|
363
383
|
:fixed-tabs="fixedTabs"
|
|
364
384
|
:route-tab-resolver="resolveAdminRouteTab"
|
|
365
385
|
tab-fallback-path="/dashboard"
|
|
366
|
-
:tab-storage-key="adminTabSnapshotStorageKey"
|
|
386
|
+
:tab-storage-key="currentUser ? adminTabSnapshotStorageKey : ''"
|
|
367
387
|
:active-menu-path="activePath"
|
|
368
388
|
@menu-select="handleMenuSelect"
|
|
369
389
|
@toggle-sidebar="handleToggleSidebar"
|
|
370
390
|
@tab-change="handleTabChange"
|
|
371
391
|
@tab-refresh="handleTabRefresh"
|
|
392
|
+
@tabs-change="handleTabsChange"
|
|
372
393
|
>
|
|
373
394
|
<template #headerActions>
|
|
374
395
|
<AppHeaderActions
|
|
@@ -380,15 +401,18 @@ async function handleLogout(): Promise<void> {
|
|
|
380
401
|
/>
|
|
381
402
|
</template>
|
|
382
403
|
|
|
383
|
-
<
|
|
384
|
-
|
|
385
|
-
|
|
386
|
-
|
|
387
|
-
|
|
388
|
-
|
|
389
|
-
|
|
390
|
-
|
|
391
|
-
|
|
404
|
+
<template #default="{ tabs }">
|
|
405
|
+
<LumalRouterView
|
|
406
|
+
:view-key="routeViewKey"
|
|
407
|
+
:cache-keys="tabs.map((tab: LumalLayoutTabItem) => resolveRouteViewKey(tab.path))"
|
|
408
|
+
:progress="adminPreferences.transition.progress"
|
|
409
|
+
:loading="adminPreferences.transition.loading"
|
|
410
|
+
:cache="routeViewCache"
|
|
411
|
+
:cache-max="adminPreferences.tabbar.maxCount"
|
|
412
|
+
:transition="adminPreferences.transition.enable"
|
|
413
|
+
:transition-name="adminPreferences.transition.name"
|
|
414
|
+
/>
|
|
415
|
+
</template>
|
|
392
416
|
</LumalLayout>
|
|
393
417
|
|
|
394
418
|
<AppSettingsDrawer
|
|
@@ -850,6 +874,8 @@ export async function login(payload: LoginPayload): Promise<AdminUser> {
|
|
|
850
874
|
}
|
|
851
875
|
|
|
852
876
|
const user = { name: '管理员', username: payload.username }
|
|
877
|
+
// 成功登录前清掉上一会话的用户状态和标签快照。
|
|
878
|
+
clearSessionState()
|
|
853
879
|
session.setSession({ accessToken: 'lumal-demo-token' })
|
|
854
880
|
currentUserState.value = user
|
|
855
881
|
localStorage.setItem(userStorageKey, JSON.stringify(user))
|
package/dist/scaffold.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scaffold.js","sourceRoot":"","sources":["../src/scaffold.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAA;AAC5D,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAkB5D,kDAAkD;AAClD,SAAS,oBAAoB,CAAC,IAAY;IACxC,MAAM,cAAc,GAAG,IAAI;SACxB,IAAI,EAAE;SACN,WAAW,EAAE;SACb,UAAU,CAAC,IAAI,EAAE,GAAG,CAAC;SACrB,KAAK,CAAC,GAAG,CAAC;SACV,MAAM,CAAC,OAAO,CAAC;SACf,EAAE,CAAC,CAAC,CAAC,CAAC;QACP,EAAE,OAAO,CAAC,aAAa,EAAE,GAAG,CAAC;SAC5B,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC;SACnB,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAA;IAExB,OAAO,cAAc,IAAI,aAAa,CAAA;AACxC,CAAC;AAED,SAAS,kBAAkB,CAAC,OAAuC;IACjE,OAAO,oBAAoB,CAAC,OAAO,CAAC,IAAI,IAAI,QAAQ,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAA;AAC1E,CAAC;AAED,kDAAkD;AAClD,SAAS,iBAAiB,CAAC,WAAmB;IAC5C,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC;QACvB,IAAI,EAAE,WAAW;QACjB,IAAI,EAAE,QAAQ;QACd,OAAO,EAAE,OAAO;QAChB,OAAO,EAAE,IAAI;QACb,OAAO,EAAE;YACP,GAAG,EAAE,uBAAuB;YAC5B,KAAK,EAAE,iDAAiD;YACxD,OAAO,EAAE,+BAA+B;SACzC;QACD,YAAY,EAAE;YACZ,aAAa,EAAE,QAAQ;YACvB,cAAc,EAAE,QAAQ;YACxB,kBAAkB,EAAE,QAAQ;YAC5B,cAAc,EAAE,SAAS;YACzB,KAAK,EAAE,QAAQ;YACf,YAAY,EAAE,QAAQ;SACvB;QACD,eAAe,EAAE;YACf,oBAAoB,EAAE,QAAQ;YAC9B,YAAY,EAAE,QAAQ;YACtB,MAAM,EAAE,QAAQ;YAChB,SAAS,EAAE,QAAQ;SACpB;KACF,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,CAAA;AACjB,CAAC;AAED,SAAS,eAAe;IACtB,OAAO;;;;;;;;;;;;CAYR,CAAA;AACD,CAAC;AAED,SAAS,cAAc;IACrB,OAAO;;;;;;;;;;;;;;;;;;;CAmBR,CAAA;AACD,CAAC;AAED,SAAS,gBAAgB;IACvB,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAiDR,CAAA;AACD,CAAC;AAED,SAAS,YAAY;IACnB,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAsCR,CAAA;AACD,CAAC;AAED,SAAS,mBAAmB;IAC1B,OAAO;;;;;;;;;;;;CAYR,CAAA;AACD,CAAC;AAED,SAAS,mBAAmB;IAC1B,OAAO;;;;;;;;;;;;;;CAcR,CAAA;AACD,CAAC;AAED,SAAS,mBAAmB;IAC1B,OAAO;;;;;;;;;;;;CAYR,CAAA;AACD,CAAC;AAED,SAAS,YAAY;IACnB,OAAO
|
|
1
|
+
{"version":3,"file":"scaffold.js","sourceRoot":"","sources":["../src/scaffold.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "create-lumal-admin",
|
|
3
3
|
"type": "module",
|
|
4
|
-
"version": "0.0.
|
|
4
|
+
"version": "0.0.4-beta",
|
|
5
5
|
"description": "Create a minimal Lumal admin application.",
|
|
6
6
|
"license": "MIT",
|
|
7
7
|
"keywords": [
|
|
@@ -24,6 +24,7 @@
|
|
|
24
24
|
"create-lumal-admin": "./dist/cli.js"
|
|
25
25
|
},
|
|
26
26
|
"files": [
|
|
27
|
+
"CHANGELOG.md",
|
|
27
28
|
"README.md",
|
|
28
29
|
"dist"
|
|
29
30
|
],
|