vite-plugin-ember 0.3.1 → 0.4.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.
package/README.md
CHANGED
|
@@ -12,7 +12,7 @@ Write `.gjs` / `.gts` code fences in markdown and see them rendered on the page
|
|
|
12
12
|
## Features
|
|
13
13
|
|
|
14
14
|
- **Inline code fences** — use ` ```gjs live ` in markdown for instant interactive previews
|
|
15
|
-
- **Preview mode** — add `preview` to show
|
|
15
|
+
- **Preview mode** — add `preview` to show source code alongside the rendered component, or `collapsible` to hide it behind a toggle
|
|
16
16
|
- **Full Ember support** — class components, `@tracked` state, `{{on}}` modifier, and TypeScript via `.gts`
|
|
17
17
|
- **Zero-config compilation** — content-tag preprocessing, Babel template compilation, decorator transforms, and `@ember/*` / `@glimmer/*` module resolution handled automatically
|
|
18
18
|
- **`@embroider/macros` shim** — runtime stubs so `ember-source` ESM imports just work
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ember-fence.d.ts","sourceRoot":"","sources":["../../src/vitepress/ember-fence.ts"],"names":[],"mappings":"AAIA,OAAO,UAAU,MAAM,aAAa,CAAC;AAuDrC,wDAAwD;AACxD,wBAAgB,UAAU,CAAC,EAAE,EAAE,UAAU,EAAE,SAAS,SAAgB,
|
|
1
|
+
{"version":3,"file":"ember-fence.d.ts","sourceRoot":"","sources":["../../src/vitepress/ember-fence.ts"],"names":[],"mappings":"AAIA,OAAO,UAAU,MAAM,aAAa,CAAC;AAuDrC,wDAAwD;AACxD,wBAAgB,UAAU,CAAC,EAAE,EAAE,UAAU,EAAE,SAAS,SAAgB,QAsFnE"}
|
|
@@ -56,7 +56,8 @@ export function emberFence(md, component = 'CodePreview') {
|
|
|
56
56
|
token.info = lang;
|
|
57
57
|
const highlighted = originalFence(tokens, idx, options, env, self);
|
|
58
58
|
token.info = savedInfo;
|
|
59
|
-
|
|
59
|
+
const collapsible = flags.includes('collapsible') ? ' collapsible' : '';
|
|
60
|
+
return `<${component} :loader="() => import('${virtualId}')"${collapsible}>${highlighted}</${component}>`;
|
|
60
61
|
}
|
|
61
62
|
return `<${component} :loader="() => import('${virtualId}')" />`;
|
|
62
63
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ember-fence.js","sourceRoot":"","sources":["../../src/vitepress/ember-fence.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"ember-fence.js","sourceRoot":"","sources":["../../src/vitepress/ember-fence.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "vite-plugin-ember",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.4.0",
|
|
4
4
|
"description": "Vite plugin for rendering live Ember components in VitePress documentation",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"type": "module",
|
|
@@ -55,29 +55,29 @@
|
|
|
55
55
|
"@babel/core": "^7.29.0",
|
|
56
56
|
"@babel/plugin-transform-typescript": "^7.28.6",
|
|
57
57
|
"babel-plugin-ember-template-compilation": "^4.0.0",
|
|
58
|
-
"content-tag": "^4.1.
|
|
58
|
+
"content-tag": "^4.1.1",
|
|
59
59
|
"decorator-transforms": "^2.3.1"
|
|
60
60
|
},
|
|
61
61
|
"devDependencies": {
|
|
62
|
-
"@eslint/js": "^9.39.
|
|
62
|
+
"@eslint/js": "^9.39.4",
|
|
63
63
|
"@types/babel__core": "^7.20.5",
|
|
64
64
|
"@types/markdown-it": "^14.1.2",
|
|
65
|
-
"@types/node": "^25.
|
|
65
|
+
"@types/node": "^25.5.0",
|
|
66
66
|
"concurrently": "^9.2.1",
|
|
67
|
-
"ember-source": "6.
|
|
68
|
-
"eslint": "^9.39.
|
|
67
|
+
"ember-source": "6.12.0",
|
|
68
|
+
"eslint": "^9.39.4",
|
|
69
69
|
"eslint-config-prettier": "^10.1.8",
|
|
70
|
-
"globals": "^17.
|
|
70
|
+
"globals": "^17.4.0",
|
|
71
71
|
"markdown-it": "^14.1.1",
|
|
72
|
-
"typescript": "^
|
|
73
|
-
"typescript-eslint": "^8.
|
|
74
|
-
"vite": "^
|
|
72
|
+
"typescript": "^6.0.2",
|
|
73
|
+
"typescript-eslint": "^8.58.0",
|
|
74
|
+
"vite": "^8.0.3",
|
|
75
75
|
"vitepress": "^1.6.4",
|
|
76
|
-
"vue": "^3.5.
|
|
76
|
+
"vue": "^3.5.31"
|
|
77
77
|
},
|
|
78
78
|
"peerDependencies": {
|
|
79
79
|
"@glimmer/component": ">=1",
|
|
80
|
-
"ember-source": ">=
|
|
80
|
+
"ember-source": ">=6.12.0",
|
|
81
81
|
"vite": ">=5",
|
|
82
82
|
"vitepress": ">=1",
|
|
83
83
|
"vue": ">=3"
|
|
@@ -89,8 +89,8 @@
|
|
|
89
89
|
},
|
|
90
90
|
"scripts": {
|
|
91
91
|
"build": "tsc -p tsconfig.json",
|
|
92
|
-
"lint": "concurrently '
|
|
93
|
-
"lint:fix": "concurrently '
|
|
92
|
+
"lint": "concurrently 'pnpm:lint:*(!fix)' --names 'lint:'",
|
|
93
|
+
"lint:fix": "concurrently 'pnpm:lint:*:fix' --names 'fix:'",
|
|
94
94
|
"lint:js": "eslint .",
|
|
95
95
|
"lint:js:fix": "eslint . --fix",
|
|
96
96
|
"lint:format": "prettier . --cache --check",
|
|
@@ -12,6 +12,7 @@ const props = defineProps<{
|
|
|
12
12
|
loader?: () => Promise<any>;
|
|
13
13
|
owner?: object;
|
|
14
14
|
preview?: boolean;
|
|
15
|
+
collapsible?: boolean;
|
|
15
16
|
}>();
|
|
16
17
|
const injectedOwner = inject<object | undefined>(EMBER_OWNER_KEY, undefined);
|
|
17
18
|
const mountEl = ref<HTMLDivElement | null>(null);
|
|
@@ -57,10 +58,16 @@ onBeforeUnmount(() => {
|
|
|
57
58
|
<div class="ember-playground">
|
|
58
59
|
<div v-if="error" class="ember-playground__error">{{ error }}</div>
|
|
59
60
|
<div ref="mountEl"></div>
|
|
60
|
-
<details
|
|
61
|
+
<details
|
|
62
|
+
v-if="$slots.default && collapsible"
|
|
63
|
+
class="ember-playground__source"
|
|
64
|
+
>
|
|
61
65
|
<summary>Show code</summary>
|
|
62
66
|
<slot />
|
|
63
67
|
</details>
|
|
68
|
+
<div v-else-if="$slots.default" class="ember-playground__source">
|
|
69
|
+
<slot />
|
|
70
|
+
</div>
|
|
64
71
|
</div>
|
|
65
72
|
</template>
|
|
66
73
|
|