@sparkelf/dsh-dataops-managed 0.1.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/LICENSE ADDED
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2026 SparkElf contributors
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
package/README.md ADDED
@@ -0,0 +1,33 @@
1
+ # @sparkelf/dsh-dataops-managed
2
+
3
+ ## 中文
4
+
5
+ 这是DataOps托管工作区使用的DeepSeek Harness呈现插件。安装后,DSH Settings显示只读的DataOps页面,说明当前Harness由DataOps工作区托管、身份与权限由当前DataOps会话管理、DataOps工具由工作区自动提供。
6
+
7
+ 本包不读取DataOps账号,不注册HTTP路由,不发起OAuth,不持有access token、refresh token或DataOps JWT,也不提供连接、重新授权或断开按钮。实际DataOps工具仍由部署方配置的DataOps-owned Unix broker和通用MCP client提供。
8
+
9
+ 本包只应安装到DataOps托管profile。独立DSH需要用户授权时使用@sparkelf/dsh-dataops-integration,两者不应同时安装。
10
+
11
+ ### 模型体验
12
+
13
+ 本包只贡献Settings呈现,不增加system prompt、tool schema、模型输入或session log事件。token和KV cache均不受影响。
14
+
15
+ ### 已知限制
16
+
17
+ - 页面说明部署所有权,不探测broker实时状态;实际工具错误由MCP client和DataOps工作区链路呈现。
18
+
19
+ ## English
20
+
21
+ This is the DeepSeek Harness presentation plugin for DataOps-managed workspaces. Once installed, DSH Settings includes a read-only DataOps page explaining that the current Harness is managed by the DataOps workspace, identity and permissions belong to the current DataOps session, and DataOps tools are supplied automatically by the workspace.
22
+
23
+ The package reads no DataOps account, registers no HTTP route, starts no OAuth flow, holds no access token, refresh token, or DataOps JWT, and exposes no connect, reauthorize, or disconnect control. The deployment-owned Unix broker and the generic MCP client continue to provide the actual DataOps tools.
24
+
25
+ Install this package only in a DataOps-managed profile. Standalone DSH deployments that need user authorization use @sparkelf/dsh-dataops-integration; the two packages must not be installed together.
26
+
27
+ ### Model Experience
28
+
29
+ The package contributes Settings presentation only. It adds no system prompt, tool schema, model input, or session-log event, and has no token or KV-cache effect.
30
+
31
+ ### Known Limitations
32
+
33
+ - The page explains deployment ownership rather than probing live broker state. MCP client and DataOps workspace errors remain the source for actual tool failures.
@@ -0,0 +1,3 @@
1
+ - insert:
2
+ - id: dataops-managed
3
+ name: '@sparkelf/dsh-dataops-managed'
package/lib/client.js ADDED
@@ -0,0 +1,119 @@
1
+ window.__ModuleLoader__.load({
2
+ id: "@sparkelf/dsh-dataops-managed",
3
+ factory: (require) => {
4
+ var module = { exports: {} };
5
+ var exports = module.exports;
6
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
7
+ let _deepseek_ai_dsh_client_ui_primitives = require("@deepseek-ai/dsh-client-ui-primitives");
8
+ let react_jsx_runtime = require("react/jsx-runtime");
9
+ //#region \0dsh-css:/home/runner/work/dsh-plugins-plus/dsh-plugins-plus/packages/dataops-managed/src/client/ManagedDataOpsSection.module.css.mjs
10
+ const css = ".aGKsna_section{max-width:720px;color:var(--dsw-alias-label-primary);flex-direction:column;gap:14px;display:flex}.aGKsna_title{margin:0;font-size:16px;font-weight:500;line-height:24px}.aGKsna_statusRow{align-items:center;gap:8px;min-height:24px;font-size:14px;line-height:22px;display:flex}.aGKsna_description{color:var(--dsw-alias-label-tertiary);margin:0;font-size:14px;line-height:22px}.aGKsna_details{border-top:1px solid var(--dsw-alias-border-l2);margin:2px 0 0}.aGKsna_detailRow{border-bottom:1px solid var(--dsw-alias-border-l2);grid-template-columns:minmax(140px,2fr) minmax(0,3fr);gap:20px;padding:12px 0;display:grid}.aGKsna_detailRow dt,.aGKsna_detailRow dd{margin:0;font-size:14px;line-height:22px}.aGKsna_detailRow dt{color:var(--dsw-alias-label-secondary)}.aGKsna_detailRow dd{color:var(--dsw-alias-label-primary)}";
11
+ const tagId = "@sparkelf/dsh-dataops-managed/ManagedDataOpsSection.module.css";
12
+ if (typeof document !== "undefined" && document.querySelector("style[data-plugin-css=" + JSON.stringify(tagId) + "]") === null) {
13
+ const tag = document.createElement("style");
14
+ tag.dataset.plugin = "@sparkelf/dsh-dataops-managed";
15
+ tag.dataset.pluginCss = tagId;
16
+ tag.textContent = css;
17
+ document.head.appendChild(tag);
18
+ }
19
+ var ManagedDataOpsSection_module_css_default = {
20
+ "statusRow": "aGKsna_statusRow",
21
+ "details": "aGKsna_details",
22
+ "detailRow": "aGKsna_detailRow",
23
+ "section": "aGKsna_section",
24
+ "description": "aGKsna_description",
25
+ "title": "aGKsna_title"
26
+ };
27
+ //#endregion
28
+ //#region src/client/ManagedDataOpsSection.tsx
29
+ /**
30
+ * Explain DataOps-managed ownership without exposing standalone authorization controls.
31
+ * @param props - Settings slot injection values.
32
+ * @returns The localized managed DataOps section, or nothing before injection.
33
+ */
34
+ function ManagedDataOpsSection(props) {
35
+ const { t } = props;
36
+ if (t === void 0) return null;
37
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("section", {
38
+ className: ManagedDataOpsSection_module_css_default.section,
39
+ children: [
40
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("h2", {
41
+ className: ManagedDataOpsSection_module_css_default.title,
42
+ children: t("title")
43
+ }),
44
+ /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("div", {
45
+ className: ManagedDataOpsSection_module_css_default.statusRow,
46
+ children: [/* @__PURE__ */ (0, react_jsx_runtime.jsx)(_deepseek_ai_dsh_client_ui_primitives.StateDot, { state: "done" }), /* @__PURE__ */ (0, react_jsx_runtime.jsx)("strong", { children: t("managed") })]
47
+ }),
48
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("p", {
49
+ className: ManagedDataOpsSection_module_css_default.description,
50
+ children: t("description")
51
+ }),
52
+ /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("dl", {
53
+ className: ManagedDataOpsSection_module_css_default.details,
54
+ children: [/* @__PURE__ */ (0, react_jsx_runtime.jsxs)("div", {
55
+ className: ManagedDataOpsSection_module_css_default.detailRow,
56
+ children: [/* @__PURE__ */ (0, react_jsx_runtime.jsx)("dt", { children: t("identityLabel") }), /* @__PURE__ */ (0, react_jsx_runtime.jsx)("dd", { children: t("identityValue") })]
57
+ }), /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("div", {
58
+ className: ManagedDataOpsSection_module_css_default.detailRow,
59
+ children: [/* @__PURE__ */ (0, react_jsx_runtime.jsx)("dt", { children: t("toolsLabel") }), /* @__PURE__ */ (0, react_jsx_runtime.jsx)("dd", { children: t("toolsValue") })]
60
+ })]
61
+ })
62
+ ]
63
+ });
64
+ }
65
+ //#endregion
66
+ //#region src/client/locales.ts
67
+ /** English managed DataOps Settings copy. */
68
+ const en = {
69
+ nav: "DataOps",
70
+ title: "DataOps",
71
+ managed: "Managed by this DataOps workspace",
72
+ description: "DataOps tools are provided automatically through the workspace-managed channel. No connection or authorization is required here.",
73
+ identityLabel: "Identity and permissions",
74
+ identityValue: "Managed by your current DataOps session",
75
+ toolsLabel: "DataOps tools",
76
+ toolsValue: "Provided automatically by the workspace"
77
+ };
78
+ /** Chinese managed DataOps Settings copy. */
79
+ const zh = {
80
+ nav: "DataOps",
81
+ title: "DataOps",
82
+ managed: "由当前 DataOps 工作区托管",
83
+ description: "DataOps 工具通过工作区托管通道自动提供,无需在这里连接、重新授权或断开。",
84
+ identityLabel: "身份与权限",
85
+ identityValue: "由当前 DataOps 会话管理",
86
+ toolsLabel: "DataOps 工具",
87
+ toolsValue: "由工作区自动提供"
88
+ };
89
+ //#endregion
90
+ //#region src/client/index.ts
91
+ const NS = "settings.dataops-managed";
92
+ /** Required client services for the managed DataOps Settings section. */
93
+ const inject = ["slots", "locale"];
94
+ /**
95
+ * Register localized managed DataOps Settings navigation and content.
96
+ * @param ctx - DSH client context with locale and settings slots.
97
+ */
98
+ function apply(ctx) {
99
+ ctx.effect(() => ctx.locale.register(NS, {
100
+ zh,
101
+ en
102
+ }), "dataops-managed: settings copy");
103
+ const t = ctx.locale.bind(NS);
104
+ ctx.slots.inject("settings.section", () => ctx.slots.register({
105
+ name: "settings.section",
106
+ id: "dataops",
107
+ order: 25,
108
+ label: () => t("nav"),
109
+ inject: () => ({ t })
110
+ }, ManagedDataOpsSection));
111
+ }
112
+ //#endregion
113
+ exports.apply = apply;
114
+ exports.inject = inject;
115
+ return module.exports;
116
+ }
117
+ });
118
+
119
+ //# sourceMappingURL=client.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"client.js","names":["styles","StateDot"],"sources":["../src/client/ManagedDataOpsSection.tsx","../src/client/locales.ts","../src/client/index.ts"],"sourcesContent":["import { StateDot } from '@deepseek-ai/dsh-client-ui-primitives'\nimport type { InjectFace } from '@deepseek-ai/dsh-client-ui-slots'\nimport type { en } from './locales.ts'\nimport styles from './ManagedDataOpsSection.module.css'\n\n/** Values injected by the DSH Settings slot. */\nexport interface ManagedDataOpsSectionInjected {\n /** Translate one managed DataOps Settings message key. */\n t: (key: keyof typeof en) => string\n}\n\n/** Props accepted by the managed DataOps Settings section. */\nexport type ManagedDataOpsSectionProps = Partial<InjectFace<ManagedDataOpsSectionInjected>>\n\n/**\n * Explain DataOps-managed ownership without exposing standalone authorization controls.\n * @param props - Settings slot injection values.\n * @returns The localized managed DataOps section, or nothing before injection.\n */\nexport function ManagedDataOpsSection(props: ManagedDataOpsSectionProps) {\n const { t } = props\n if (t === undefined) return null\n\n return (\n <section className={styles.section}>\n <h2 className={styles.title}>{t('title')}</h2>\n <div className={styles.statusRow}>\n <StateDot state=\"done\" />\n <strong>{t('managed')}</strong>\n </div>\n <p className={styles.description}>{t('description')}</p>\n <dl className={styles.details}>\n <div className={styles.detailRow}>\n <dt>{t('identityLabel')}</dt>\n <dd>{t('identityValue')}</dd>\n </div>\n <div className={styles.detailRow}>\n <dt>{t('toolsLabel')}</dt>\n <dd>{t('toolsValue')}</dd>\n </div>\n </dl>\n </section>\n )\n}\n","/** English managed DataOps Settings copy. */\nexport const en = {\n nav: 'DataOps',\n title: 'DataOps',\n managed: 'Managed by this DataOps workspace',\n description: 'DataOps tools are provided automatically through the workspace-managed channel. No connection or authorization is required here.',\n identityLabel: 'Identity and permissions',\n identityValue: 'Managed by your current DataOps session',\n toolsLabel: 'DataOps tools',\n toolsValue: 'Provided automatically by the workspace',\n} as const\n\n/** Stable key set shared by every managed DataOps locale. */\nexport type ManagedDataOpsKey = keyof typeof en\n\n/** Chinese managed DataOps Settings copy. */\nexport const zh: Record<ManagedDataOpsKey, string> = {\n nav: 'DataOps',\n title: 'DataOps',\n managed: '由当前 DataOps 工作区托管',\n description: 'DataOps 工具通过工作区托管通道自动提供,无需在这里连接、重新授权或断开。',\n identityLabel: '身份与权限',\n identityValue: '由当前 DataOps 会话管理',\n toolsLabel: 'DataOps 工具',\n toolsValue: '由工作区自动提供',\n}\n","import type { ClientContext } from '@deepseek-ai/dsh-client-runtime/client'\nimport type {} from '@deepseek-ai/dsh-client-ui-settings/client'\nimport type {} from '@deepseek-ai/dsh-client-locale/client'\nimport { ManagedDataOpsSection } from './ManagedDataOpsSection.tsx'\nimport type { ManagedDataOpsSectionInjected } from './ManagedDataOpsSection.tsx'\nimport { en, zh, type ManagedDataOpsKey } from './locales.ts'\n\ndeclare module '@deepseek-ai/dsh-client-ui-slots' {\n interface LocaleNamespaceMap {\n 'settings.dataops-managed': ManagedDataOpsKey\n }\n}\n\nconst NS = 'settings.dataops-managed'\n\n/** Required client services for the managed DataOps Settings section. */\nexport const inject = ['slots', 'locale']\n\n/**\n * Register localized managed DataOps Settings navigation and content.\n * @param ctx - DSH client context with locale and settings slots.\n */\nexport function apply(ctx: ClientContext): void {\n ctx.effect(() => ctx.locale.register(NS, { zh, en }), 'dataops-managed: settings copy')\n const t = ctx.locale.bind(NS) as ManagedDataOpsSectionInjected['t']\n ctx.slots.inject('settings.section', () => ctx.slots.register({\n name: 'settings.section',\n id: 'dataops',\n order: 25,\n label: () => t('nav'),\n inject: () => ({ t }),\n }, ManagedDataOpsSection))\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAmBA,SAAgB,sBAAsB,OAAmC;GACvE,MAAM,EAAE,MAAM;GACd,IAAI,MAAM,KAAA,GAAW,OAAO;GAE5B,OACE,iBAAA,GAAA,kBAAA,KAAA,CAAC,WAAD;IAAS,WAAWA,yCAAO;IAA3B,UAAA;KACE,iBAAA,GAAA,kBAAA,IAAA,CAAC,MAAD;MAAI,WAAWA,yCAAO;MAAQ,UAAA,EAAE,OAAO;KAAM,CAAA;KAC7C,iBAAA,GAAA,kBAAA,KAAA,CAAC,OAAD;MAAK,WAAWA,yCAAO;MAAvB,UAAA,CACE,iBAAA,GAAA,kBAAA,IAAA,CAACC,sCAAAA,UAAD,EAAU,OAAM,OAAQ,CAAA,GACxB,iBAAA,GAAA,kBAAA,IAAA,CAAC,UAAD,EAAA,UAAS,EAAE,SAAS,EAAU,CAAA,CAC3B;;KACL,iBAAA,GAAA,kBAAA,IAAA,CAAC,KAAD;MAAG,WAAWD,yCAAO;MAAc,UAAA,EAAE,aAAa;KAAK,CAAA;KACvD,iBAAA,GAAA,kBAAA,KAAA,CAAC,MAAD;MAAI,WAAWA,yCAAO;MAAtB,UAAA,CACE,iBAAA,GAAA,kBAAA,KAAA,CAAC,OAAD;OAAK,WAAWA,yCAAO;OAAvB,UAAA,CACE,iBAAA,GAAA,kBAAA,IAAA,CAAC,MAAD,EAAA,UAAK,EAAE,eAAe,EAAM,CAAA,GAC5B,iBAAA,GAAA,kBAAA,IAAA,CAAC,MAAD,EAAA,UAAK,EAAE,eAAe,EAAM,CAAA,CACzB;MACL,CAAA,GAAA,iBAAA,GAAA,kBAAA,KAAA,CAAC,OAAD;OAAK,WAAWA,yCAAO;OAAvB,UAAA,CACE,iBAAA,GAAA,kBAAA,IAAA,CAAC,MAAD,EAAA,UAAK,EAAE,YAAY,EAAM,CAAA,GACzB,iBAAA,GAAA,kBAAA,IAAA,CAAC,MAAD,EAAA,UAAK,EAAE,YAAY,EAAM,CAAA,CACtB;MACH,CAAA,CAAA;;IACG;;EAEb;;;;EC1CA,MAAa,KAAK;GAChB,KAAK;GACL,OAAO;GACP,SAAS;GACT,aAAa;GACb,eAAe;GACf,eAAe;GACf,YAAY;GACZ,YAAY;EACd;;EAMA,MAAa,KAAwC;GACnD,KAAK;GACL,OAAO;GACP,SAAS;GACT,aAAa;GACb,eAAe;GACf,eAAe;GACf,YAAY;GACZ,YAAY;EACd;;;ECZA,MAAM,KAAK;;EAGX,MAAa,SAAS,CAAC,SAAS,QAAQ;;;;;EAMxC,SAAgB,MAAM,KAA0B;GAC9C,IAAI,aAAa,IAAI,OAAO,SAAS,IAAI;IAAE;IAAI;GAAG,CAAC,GAAG,gCAAgC;GACtF,MAAM,IAAI,IAAI,OAAO,KAAK,EAAE;GAC5B,IAAI,MAAM,OAAO,0BAA0B,IAAI,MAAM,SAAS;IAC5D,MAAM;IACN,IAAI;IACJ,OAAO;IACP,aAAa,EAAE,KAAK;IACpB,eAAe,EAAE,EAAE;GACrB,GAAG,qBAAqB,CAAC;EAC3B"}
package/lib/index.js ADDED
@@ -0,0 +1,10 @@
1
+ //#region src/index.ts
2
+ /** Cordis plugin name for the DataOps-managed Settings contribution. */
3
+ const name = "dataops-managed";
4
+ /**
5
+ * Keep the Host seat intentionally empty because DataOps owns the broker process.
6
+ * @param _ctx - DSH Host context retained for the installable bundle contract.
7
+ */
8
+ function apply(_ctx) {}
9
+ //#endregion
10
+ export { apply, name };
@@ -0,0 +1,15 @@
1
+ import type { InjectFace } from '@deepseek-ai/dsh-client-ui-slots';
2
+ import type { en } from './locales.ts';
3
+ /** Values injected by the DSH Settings slot. */
4
+ export interface ManagedDataOpsSectionInjected {
5
+ /** Translate one managed DataOps Settings message key. */
6
+ t: (key: keyof typeof en) => string;
7
+ }
8
+ /** Props accepted by the managed DataOps Settings section. */
9
+ export type ManagedDataOpsSectionProps = Partial<InjectFace<ManagedDataOpsSectionInjected>>;
10
+ /**
11
+ * Explain DataOps-managed ownership without exposing standalone authorization controls.
12
+ * @param props - Settings slot injection values.
13
+ * @returns The localized managed DataOps section, or nothing before injection.
14
+ */
15
+ export declare function ManagedDataOpsSection(props: ManagedDataOpsSectionProps): import("react").JSX.Element | null;
@@ -0,0 +1,14 @@
1
+ import type { ClientContext } from '@deepseek-ai/dsh-client-runtime/client';
2
+ import { type ManagedDataOpsKey } from './locales.ts';
3
+ declare module '@deepseek-ai/dsh-client-ui-slots' {
4
+ interface LocaleNamespaceMap {
5
+ 'settings.dataops-managed': ManagedDataOpsKey;
6
+ }
7
+ }
8
+ /** Required client services for the managed DataOps Settings section. */
9
+ export declare const inject: string[];
10
+ /**
11
+ * Register localized managed DataOps Settings navigation and content.
12
+ * @param ctx - DSH client context with locale and settings slots.
13
+ */
14
+ export declare function apply(ctx: ClientContext): void;
@@ -0,0 +1,15 @@
1
+ /** English managed DataOps Settings copy. */
2
+ export declare const en: {
3
+ readonly nav: "DataOps";
4
+ readonly title: "DataOps";
5
+ readonly managed: "Managed by this DataOps workspace";
6
+ readonly description: "DataOps tools are provided automatically through the workspace-managed channel. No connection or authorization is required here.";
7
+ readonly identityLabel: "Identity and permissions";
8
+ readonly identityValue: "Managed by your current DataOps session";
9
+ readonly toolsLabel: "DataOps tools";
10
+ readonly toolsValue: "Provided automatically by the workspace";
11
+ };
12
+ /** Stable key set shared by every managed DataOps locale. */
13
+ export type ManagedDataOpsKey = keyof typeof en;
14
+ /** Chinese managed DataOps Settings copy. */
15
+ export declare const zh: Record<ManagedDataOpsKey, string>;
@@ -0,0 +1,8 @@
1
+ import type { Context } from '@deepseek-ai/cordis';
2
+ /** Cordis plugin name for the DataOps-managed Settings contribution. */
3
+ export declare const name = "dataops-managed";
4
+ /**
5
+ * Keep the Host seat intentionally empty because DataOps owns the broker process.
6
+ * @param _ctx - DSH Host context retained for the installable bundle contract.
7
+ */
8
+ export declare function apply(_ctx: Context): void;
package/package.json ADDED
@@ -0,0 +1,80 @@
1
+ {
2
+ "name": "@sparkelf/dsh-dataops-managed",
3
+ "version": "0.1.0",
4
+ "description": "Managed DataOps workspace ownership information for DeepSeek Harness settings.",
5
+ "type": "module",
6
+ "main": "./lib/index.js",
7
+ "types": "./lib/types/index.d.ts",
8
+ "exports": {
9
+ ".": {
10
+ "types": "./lib/types/index.d.ts",
11
+ "default": "./lib/index.js"
12
+ },
13
+ "./client": {
14
+ "types": "./lib/types/client/index.d.ts",
15
+ "default": "./lib/client.js"
16
+ },
17
+ "./package.json": "./package.json"
18
+ },
19
+ "dsh": {
20
+ "bundle": {
21
+ "patch": "./cordis.patch.yml"
22
+ },
23
+ "client": {
24
+ "platform": "web",
25
+ "inject": [
26
+ "@deepseek-ai/dsh-client-runtime",
27
+ "@deepseek-ai/dsh-client-ui-settings",
28
+ "@deepseek-ai/dsh-client-locale",
29
+ "@deepseek-ai/dsh-client-ui-primitives",
30
+ "@deepseek-ai/dsh-client-ui-slots"
31
+ ]
32
+ }
33
+ },
34
+ "files": [
35
+ "lib/index.js",
36
+ "lib/client.js",
37
+ "lib/client.js.map",
38
+ "lib/types/**/*.d.ts",
39
+ "cordis.patch.yml",
40
+ "README.md",
41
+ "LICENSE"
42
+ ],
43
+ "engines": {
44
+ "node": "^22.19.0 || >=24.0.0"
45
+ },
46
+ "license": "MIT",
47
+ "repository": {
48
+ "type": "git",
49
+ "url": "git+https://github.com/SparkElf/dsh-plugins-plus.git",
50
+ "directory": "packages/dataops-managed"
51
+ },
52
+ "publishConfig": {
53
+ "access": "public"
54
+ },
55
+ "peerDependencies": {
56
+ "@deepseek-ai/cordis": "^4.0.1",
57
+ "@deepseek-ai/dsh-client-locale": "^0.1.1-rc.2",
58
+ "@deepseek-ai/dsh-client-runtime": "^0.1.1-rc.2",
59
+ "@deepseek-ai/dsh-client-ui-primitives": "^0.1.1-rc.2",
60
+ "@deepseek-ai/dsh-client-ui-settings": "^0.1.1-rc.2",
61
+ "@deepseek-ai/dsh-client-ui-slots": "^0.1.1-rc.2",
62
+ "react": ">=18.2.0 <20"
63
+ },
64
+ "devDependencies": {
65
+ "@deepseek-ai/cordis": "4.0.1",
66
+ "@deepseek-ai/dsh-client-locale": "0.1.1-rc.2",
67
+ "@deepseek-ai/dsh-client-runtime": "0.1.1-rc.2",
68
+ "@deepseek-ai/dsh-client-ui-primitives": "0.1.1-rc.2",
69
+ "@deepseek-ai/dsh-client-ui-settings": "0.1.1-rc.2",
70
+ "@deepseek-ai/dsh-client-ui-slots": "0.1.1-rc.2",
71
+ "@types/react": "~18.3.1",
72
+ "lightningcss": "^1.32.0",
73
+ "react": "^18.2.0",
74
+ "tsdown": "^0.22.2"
75
+ },
76
+ "scripts": {
77
+ "build": "rm -rf lib && tsc -p tsconfig.build.json && tsdown",
78
+ "bundle": "tsdown"
79
+ }
80
+ }