@nocobase/app 2.0.0-beta.8 → 2.0.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/client/.umirc.ts +4 -0
- package/dist/client/{113.736e29a0.async.js → 113.470c21ad.async.js} +1 -1
- package/dist/client/1161.1a2c10e3.async.js +40 -0
- package/dist/client/1442.fd65d046.async.js +5 -0
- package/dist/client/{1595.9f992743.async.js → 1595.6281d837.async.js} +3 -3
- package/dist/client/{1758.eeeacf43.async.js → 1758.404cac6d.async.js} +3 -3
- package/dist/client/{1883.6ee256ab.async.js → 1883.7bf62549.async.js} +4 -4
- package/dist/client/1905.2e6345d8.async.js +12 -0
- package/dist/client/{2042.feb4b9ac.async.js → 2042.7da1cbfb.async.js} +1 -1
- package/dist/client/{2097.919e4d8a.async.js → 2097.469d41dd.async.js} +2 -2
- package/dist/client/{2380.900b7a22.async.js → 2380.ce39cb9d.async.js} +12 -9
- package/dist/client/2612.99f32922.async.js +22 -0
- package/dist/client/{2775.455c3402.async.js → 2775.364c188c.async.js} +8 -8
- package/dist/client/2936.745e500f.async.js +28 -0
- package/dist/client/3357.0dc001fc.async.js +28 -0
- package/dist/client/341.01fc2262.async.js +28 -0
- package/dist/client/{3451.a9466e73.async.js → 3451.29052272.async.js} +6 -6
- package/dist/client/3781.16f1bb74.async.js +1 -0
- package/dist/client/4279.f53ade52.async.js +1 -0
- package/dist/client/{4327.68c0f17b.async.js → 4327.d9c9bdf4.async.js} +5 -5
- package/dist/client/{4351.efe05af2.async.js → 4351.40ef71f0.async.js} +5 -5
- package/dist/client/{4356.d61392c6.async.js → 4356.a3863dfa.async.js} +2 -2
- package/dist/client/4727.09926a61.async.js +1 -0
- package/dist/client/{4750.ce3051f3.async.js → 4750.0863f7b1.async.js} +2 -2
- package/dist/client/{4926.58238954.async.js → 4926.f49ba56d.async.js} +6 -6
- package/dist/client/501.e8db2401.async.js +1 -0
- package/dist/client/{5013.b14730ba.async.js → 5013.eaaaceb4.async.js} +1 -1
- package/dist/client/5501.7bed1ac8.async.js +23 -0
- package/dist/client/5662.3071d144.async.js +26 -0
- package/dist/client/6021.b3ab345b.async.js +22 -0
- package/dist/client/{645.ab5af584.async.js → 645.b70364b3.async.js} +3 -3
- package/dist/client/{6474.49632e37.async.js → 6474.8e54befa.async.js} +1 -1
- package/dist/client/6534.87203710.async.js +33 -0
- package/dist/client/{6747.de538558.async.js → 6747.1009bdb8.async.js} +12 -7
- package/dist/client/{689.4de33d65.async.js → 689.4dc252d6.async.js} +1 -1
- package/dist/client/{6920.497d7e80.async.js → 6920.d29cfa84.async.js} +5 -5
- package/dist/client/6998.e875a954.async.js +62 -0
- package/dist/client/{703.7ad807b0.async.js → 703.8c09e144.async.js} +3 -3
- package/dist/client/7087.e5b68989.async.js +6 -0
- package/dist/client/{7483.546ddcb6.async.js → 7483.c3bd056f.async.js} +4 -4
- package/dist/client/7534.1a42bafc.async.js +36 -0
- package/dist/client/{7764.a3ae7727.async.js → 7764.f7b626cb.async.js} +2 -2
- package/dist/client/816.4e92dc2c.async.js +1 -0
- package/dist/client/{8183.4c6f7e21.async.js → 8183.5418c6c8.async.js} +1 -1
- package/dist/client/{8408.c0ef773c.async.js → 8408.455572b7.async.js} +5 -6
- package/dist/client/{8805.819c4f44.async.js → 8805.00cfa044.async.js} +6 -6
- package/dist/client/{9042.3d21f631.async.js → 9042.9568dd16.async.js} +7 -7
- package/dist/client/{908.0e8c8a54.async.js → 908.4b088a69.async.js} +2 -3
- package/dist/client/{9317.fe6ffa9a.async.js → 9317.7d0009d1.async.js} +2 -2
- package/dist/client/935.63a37ee3.async.js +27 -0
- package/dist/client/{95.24aa76c4.async.js → 95.cf18a56e.async.js} +2 -2
- package/dist/client/{9547.a442df93.async.js → 9547.a9f2ea1d.async.js} +23 -6
- package/dist/client/{9801.34b13a74.async.js → 9801.dacad822.async.js} +1 -1
- package/dist/client/9844.b905f4ce.async.js +37 -0
- package/dist/client/index.html +3 -1
- package/dist/client/index.html.tpl +3 -1
- package/dist/client/{npm._at_ant-design.3d565a45.async.js → npm._at_ant-design.4fb666c7.async.js} +3 -3
- package/dist/client/npm._at_budibase.2d91cea2.async.js +36 -0
- package/dist/client/{npm._at_codemirror.23366286.async.js → npm._at_codemirror.aa828743.async.js} +10 -10
- package/dist/client/{npm.antd.601f2259.async.js → npm.antd.d7898d85.async.js} +13 -13
- package/dist/client/{npm.dagre-d3-es.5506d747.async.js → npm.dagre-d3-es.a13ce21a.async.js} +1 -1
- package/dist/client/{npm.highlight.js.5db864c8.async.js → npm.highlight.js.763ebb2d.async.js} +2 -2
- package/dist/client/{npm.lodash-es.d3d83c5d.async.js → npm.lodash-es.9fd92a41.async.js} +1 -1
- package/dist/client/npm.mathjs.7874451c.async.js +53 -0
- package/dist/client/npm.mermaid.952e77a0.async.js +1556 -0
- package/dist/client/{npm.rc-picker.baba6981.async.js → npm.rc-picker.95a28587.async.js} +1 -1
- package/dist/client/{npm.sanitize-html.506a0a55.async.js → npm.sanitize-html.2df959dd.async.js} +14 -14
- package/dist/client/{npm.slate-react.ef6881ab.async.js → npm.slate-react.f9b7bba3.async.js} +1 -1
- package/dist/client/npm.slate.6a5d16e1.async.js +1 -0
- package/dist/client/npm.typed-function.9df0469b.async.js +1 -0
- package/dist/client/p__index.d0d7bcb9.async.js +2697 -0
- package/dist/client/{umi.cc111fee.js → umi.973c27a2.js} +2 -2
- package/package.json +6 -6
- package/dist/client/1161.0b3b5766.async.js +0 -40
- package/dist/client/1442.be509f94.async.js +0 -5
- package/dist/client/1905.ff0793ff.async.js +0 -12
- package/dist/client/2612.0865e67e.async.js +0 -19
- package/dist/client/2936.902710e4.async.js +0 -28
- package/dist/client/3357.be95167c.async.js +0 -28
- package/dist/client/341.fba65e23.async.js +0 -28
- package/dist/client/3885.fd54a10c.async.js +0 -50
- package/dist/client/4727.0f6df8fb.async.js +0 -1
- package/dist/client/501.72b99d17.async.js +0 -1
- package/dist/client/5501.22d50b3a.async.js +0 -23
- package/dist/client/5662.8c643e63.async.js +0 -26
- package/dist/client/6021.cdefa0d3.async.js +0 -22
- package/dist/client/6534.6ea6468b.async.js +0 -33
- package/dist/client/7087.5646e199.async.js +0 -6
- package/dist/client/7534.0d69e071.async.js +0 -34
- package/dist/client/816.b71d5e67.async.js +0 -1
- package/dist/client/935.97d45ffa.async.js +0 -27
- package/dist/client/9844.6f484975.async.js +0 -37
- package/dist/client/npm._at_budibase.b1200847.async.js +0 -36
- package/dist/client/npm.mathjs.fd97f3b7.async.js +0 -52
- package/dist/client/npm.mermaid.91e7e45d.async.js +0 -1556
- package/dist/client/npm.slate.44c32547.async.js +0 -1
- package/dist/client/npm.uuid.15e7bb90.async.js +0 -1
- package/dist/client/p__index.725d9fd4.async.js +0 -2505
|
@@ -1,40 +0,0 @@
|
|
|
1
|
-
"use strict";(self.webpackChunknocobase=self.webpackChunknocobase||[]).push([[1161,1442],{41442:function(s,n,e){e.r(n),e.d(n,{JSItemRunJSContext:function(){return r}});var _=e(72004),t=e.n(_),a=e(12444),l=e.n(a),d=e(31996),u=e.n(d),m=e(26037),i=e.n(m),c=e(1772),r=function(b){u()(o,b);var p=i()(o);function o(){return l()(this,o),p.apply(this,arguments)}return t()(o)}(c.Uo);r.define({label:"JSItem RunJS context",properties:{element:`ElementProxy instance providing a safe DOM container for form item rendering.
|
|
2
|
-
Supports innerHTML, append, and other DOM manipulation methods.`,resource:`Current resource instance (read-only).
|
|
3
|
-
Provides access to the data resource associated with the current form context.`,record:`Current record data object (read-only).
|
|
4
|
-
Contains all field values of the parent record.`},methods:{onRefReady:`Wait for form item container DOM element to be ready before executing callback.
|
|
5
|
-
Parameters: (ref: React.RefObject, callback: (element: HTMLElement) => void, timeout?: number) => void`}}),r.define({label:"JS \u8868\u5355\u9879 RunJS \u4E0A\u4E0B\u6587",properties:{element:"ElementProxy\uFF0C\u8868\u5355\u9879\u6E32\u67D3\u5BB9\u5668\uFF0C\u652F\u6301 innerHTML/append \u7B49 DOM \u64CD\u4F5C",resource:"\u5F53\u524D\u8D44\u6E90\uFF08\u53EA\u8BFB\uFF09",record:"\u5F53\u524D\u8BB0\u5F55\uFF08\u53EA\u8BFB\uFF09"},methods:{onRefReady:"\u5BB9\u5668\u5C31\u7EEA\u540E\u6267\u884C\u56DE\u8C03\u3002\u53C2\u6570\uFF1A(ref, callback, timeout?)"}},{locale:"zh-CN"})},91161:function(s,n,e){e.r(n);var _=e(41442),t={contexts:[_.JSItemRunJSContext],prefix:"sn-link-cascade",label:"Cascade select (load child roles)",description:"Load child roles based on the selected parent role",locales:{"zh-CN":{label:"\u7EA7\u8054\u9009\u62E9\uFF08\u52A0\u8F7D\u5B50\u89D2\u8272\uFF09",description:"\u6839\u636E\u9009\u62E9\u7684\u7236\u89D2\u8272\u52A0\u8F7D\u5BF9\u5E94\u5B50\u89D2\u8272"}},content:`
|
|
6
|
-
// Get selected parent role (adjust field name to match your form)
|
|
7
|
-
const parentRoleId = ctx.record?.parentRole?.id;
|
|
8
|
-
|
|
9
|
-
if (!parentRoleId) {
|
|
10
|
-
return;
|
|
11
|
-
}
|
|
12
|
-
|
|
13
|
-
const res = await ctx.api.request({
|
|
14
|
-
url: 'roles:list',
|
|
15
|
-
method: 'get',
|
|
16
|
-
params: {
|
|
17
|
-
pageSize: 100,
|
|
18
|
-
filter: {
|
|
19
|
-
parentId: parentRoleId,
|
|
20
|
-
},
|
|
21
|
-
},
|
|
22
|
-
});
|
|
23
|
-
|
|
24
|
-
const childRoles = res?.data?.data || [];
|
|
25
|
-
|
|
26
|
-
const items = ctx.model?.subModels?.grid?.subModels?.items;
|
|
27
|
-
const candidates = Array.isArray(items) ? items : Array.from(items?.values?.() || items || []);
|
|
28
|
-
|
|
29
|
-
const roleField = candidates.find((item) => item?.props?.name === 'role');
|
|
30
|
-
|
|
31
|
-
if (roleField) {
|
|
32
|
-
roleField.setProps({
|
|
33
|
-
dataSource: childRoles.map((role) => ({
|
|
34
|
-
value: role.id,
|
|
35
|
-
label: role.name,
|
|
36
|
-
})),
|
|
37
|
-
value: undefined,
|
|
38
|
-
});
|
|
39
|
-
}
|
|
40
|
-
`};n.default=t}}]);
|
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
"use strict";(self.webpackChunknocobase=self.webpackChunknocobase||[]).push([[1442],{41442:function(h,n,e){e.r(n),e.d(n,{JSItemRunJSContext:function(){return o}});var r=e(72004),s=e.n(r),t=e(12444),a=e.n(t),l=e(31996),u=e.n(l),m=e(26037),d=e.n(m),i=e(1772),o=function(b){u()(_,b);var c=d()(_);function _(){return a()(this,_),c.apply(this,arguments)}return s()(_)}(i.Uo);o.define({label:"JSItem RunJS context",properties:{element:`ElementProxy instance providing a safe DOM container for form item rendering.
|
|
2
|
-
Supports innerHTML, append, and other DOM manipulation methods.`,resource:`Current resource instance (read-only).
|
|
3
|
-
Provides access to the data resource associated with the current form context.`,record:`Current record data object (read-only).
|
|
4
|
-
Contains all field values of the parent record.`},methods:{onRefReady:`Wait for form item container DOM element to be ready before executing callback.
|
|
5
|
-
Parameters: (ref: React.RefObject, callback: (element: HTMLElement) => void, timeout?: number) => void`}}),o.define({label:"JS \u8868\u5355\u9879 RunJS \u4E0A\u4E0B\u6587",properties:{element:"ElementProxy\uFF0C\u8868\u5355\u9879\u6E32\u67D3\u5BB9\u5668\uFF0C\u652F\u6301 innerHTML/append \u7B49 DOM \u64CD\u4F5C",resource:"\u5F53\u524D\u8D44\u6E90\uFF08\u53EA\u8BFB\uFF09",record:"\u5F53\u524D\u8BB0\u5F55\uFF08\u53EA\u8BFB\uFF09"},methods:{onRefReady:"\u5BB9\u5668\u5C31\u7EEA\u540E\u6267\u884C\u56DE\u8C03\u3002\u53C2\u6570\uFF1A(ref, callback, timeout?)"}},{locale:"zh-CN"})}}]);
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
"use strict";(self.webpackChunknocobase=self.webpackChunknocobase||[]).push([[1905,1442],{41442:function(r,n,e){e.r(n),e.d(n,{JSItemRunJSContext:function(){return s}});var _=e(72004),t=e.n(_),a=e(12444),l=e.n(a),m=e(31996),u=e.n(m),i=e(26037),d=e.n(i),c=e(1772),s=function(b){u()(o,b);var h=d()(o);function o(){return l()(this,o),h.apply(this,arguments)}return t()(o)}(c.Uo);s.define({label:"JSItem RunJS context",properties:{element:`ElementProxy instance providing a safe DOM container for form item rendering.
|
|
2
|
-
Supports innerHTML, append, and other DOM manipulation methods.`,resource:`Current resource instance (read-only).
|
|
3
|
-
Provides access to the data resource associated with the current form context.`,record:`Current record data object (read-only).
|
|
4
|
-
Contains all field values of the parent record.`},methods:{onRefReady:`Wait for form item container DOM element to be ready before executing callback.
|
|
5
|
-
Parameters: (ref: React.RefObject, callback: (element: HTMLElement) => void, timeout?: number) => void`}}),s.define({label:"JS \u8868\u5355\u9879 RunJS \u4E0A\u4E0B\u6587",properties:{element:"ElementProxy\uFF0C\u8868\u5355\u9879\u6E32\u67D3\u5BB9\u5668\uFF0C\u652F\u6301 innerHTML/append \u7B49 DOM \u64CD\u4F5C",resource:"\u5F53\u524D\u8D44\u6E90\uFF08\u53EA\u8BFB\uFF09",record:"\u5F53\u524D\u8BB0\u5F55\uFF08\u53EA\u8BFB\uFF09"},methods:{onRefReady:"\u5BB9\u5668\u5C31\u7EEA\u540E\u6267\u884C\u56DE\u8C03\u3002\u53C2\u6570\uFF1A(ref, callback, timeout?)"}},{locale:"zh-CN"})},71905:function(r,n,e){e.r(n);var _=e(41442),t={contexts:[_.JSItemRunJSContext],prefix:"sn-jsitem-basic",label:"Render form item",description:"Render custom content inside a form item container",locales:{"zh-CN":{label:"\u6E32\u67D3\u8868\u5355\u9879",description:"\u5728\u8868\u5355\u9879\u5BB9\u5668\u4E2D\u6E32\u67D3\u81EA\u5B9A\u4E49\u5185\u5BB9"}},content:`
|
|
6
|
-
ctx.element.innerHTML = \`
|
|
7
|
-
<div style="font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif; line-height: 1.6;">
|
|
8
|
-
<h3 style="color: #1890ff; margin: 0 0 12px 0; font-size: 18px; font-weight: 600;">\${ctx.t('JS Item')}</h3>
|
|
9
|
-
<div style="color:#555">\${ctx.t('This area is rendered by your JavaScript code.')}</div>
|
|
10
|
-
</div>
|
|
11
|
-
\`;
|
|
12
|
-
`};n.default=t}}]);
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
"use strict";(self.webpackChunknocobase=self.webpackChunknocobase||[]).push([[2612,4727],{64727:function(l,n,e){e.r(n),e.d(n,{JSColumnRunJSContext:function(){return r}});var t=e(72004),_=e.n(t),a=e(12444),s=e.n(a),i=e(31996),c=e.n(i),d=e(26037),u=e.n(d),m=e(1772),r=function(b){c()(o,b);var p=u()(o);function o(){return s()(this,o),p.apply(this,arguments)}return _()(o)}(m.Uo);r.define({label:"JSColumn RunJS context",properties:{element:"ElementProxy instance providing a safe DOM container for the current table cell. Supports innerHTML/append and basic DOM APIs.",record:"Current row record object (read-only).",recordIndex:"Index of the current row in the page (0-based).",collection:"Collection definition metadata (read-only).",viewer:"View controller providing dialog/drawer/embed helpers for interactions initiated from the cell (e.g., open details).",React:"React library",antd:"Ant Design library"},methods:{onRefReady:"Wait for cell DOM element to be ready before executing callback. Parameters: (ref, callback, timeout?) => void",requireAsync:"Load external library by URL: `const lib = await ctx.requireAsync(url)`",importAsync:"Dynamically import ESM module by URL: `const mod = await ctx.importAsync(url)`"}}),r.define({label:"JS \u5217 RunJS \u4E0A\u4E0B\u6587",properties:{element:"ElementProxy\uFF0C\u8868\u683C\u5355\u5143\u683C\u7684\u5B89\u5168 DOM \u5BB9\u5668\uFF0C\u652F\u6301 innerHTML/append \u7B49",record:"\u5F53\u524D\u884C\u8BB0\u5F55\u5BF9\u8C61\uFF08\u53EA\u8BFB\uFF09",recordIndex:"\u5F53\u524D\u884C\u7D22\u5F15\uFF08\u4ECE 0 \u5F00\u59CB\uFF09",collection:"\u96C6\u5408\u5B9A\u4E49\u5143\u6570\u636E\uFF08\u53EA\u8BFB\uFF09",viewer:"\u89C6\u56FE\u63A7\u5236\u5668\uFF0C\u53EF\u7528\u4E8E\u5728\u5355\u5143\u683C\u4E2D\u89E6\u53D1\u62BD\u5C49/\u5BF9\u8BDD\u6846/\u5185\u5D4C\u7B49\u4EA4\u4E92",React:"React \u5E93",antd:"Ant Design \u5E93"},methods:{onRefReady:"\u7B49\u5F85\u5355\u5143\u683C DOM \u5C31\u7EEA\u540E\u6267\u884C\u56DE\u8C03\u3002\u53C2\u6570\uFF1A(ref, callback, timeout?)",requireAsync:"\u6309 URL \u5F02\u6B65\u52A0\u8F7D\u5916\u90E8\u5E93\uFF1A`const lib = await ctx.requireAsync(url)`",importAsync:"\u6309 URL \u52A8\u6001\u5BFC\u5165 ESM \u6A21\u5757\uFF1A`const mod = await ctx.importAsync(url)`"}},{locale:"zh-CN"})},82612:function(l,n,e){e.r(n);var t=e(64727),_={contexts:[t.JSColumnRunJSContext],prefix:"sn-col-open-dialog",label:"Cell dialog with row data",description:"Render a button in cell to open dialog via ctx.openView with current row context",locales:{"zh-CN":{label:"\u5355\u5143\u683C\u5BF9\u8BDD\u6846\uFF08\u663E\u793A\u884C\u6570\u636E\uFF09",description:"\u5728\u5355\u5143\u683C\u6E32\u67D3\u6309\u94AE\uFF0C\u70B9\u51FB\u540E\u901A\u8FC7 ctx.openView \u6253\u5F00\u5F39\u7A97\u5E76\u4F20\u5165\u5F53\u524D\u884C\u4E0A\u4E0B\u6587"}},content:`
|
|
2
|
-
// Render a button inside the cell
|
|
3
|
-
ctx.element.innerHTML = '<button class="nb-cell-btn" style="padding:4px 8px">' + ctx.t('View') + '</button>';
|
|
4
|
-
|
|
5
|
-
const button = ctx.element.querySelector('.nb-cell-btn');
|
|
6
|
-
const popupUid = ctx.model.uid + '-1'; // popupUid should be stable and better bound to ctx.model.uid
|
|
7
|
-
const primaryKey = ctx.collection?.primaryKey || 'id';
|
|
8
|
-
|
|
9
|
-
button?.addEventListener('click', async () => {
|
|
10
|
-
await ctx.openView(popupUid, {
|
|
11
|
-
mode: 'dialog',
|
|
12
|
-
title: ctx.t('Row detail'),
|
|
13
|
-
params: {
|
|
14
|
-
filterByTk: ctx.record?.[primaryKey],
|
|
15
|
-
record: ctx.record,
|
|
16
|
-
},
|
|
17
|
-
});
|
|
18
|
-
});
|
|
19
|
-
`};n.default=_}}]);
|
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
"use strict";(self.webpackChunknocobase=self.webpackChunknocobase||[]).push([[2936,1442],{41442:function(s,n,e){e.r(n),e.d(n,{JSItemRunJSContext:function(){return r}});var _=e(72004),t=e.n(_),a=e(12444),l=e.n(a),d=e(31996),i=e.n(d),u=e(26037),m=e.n(u),c=e(1772),r=function(b){i()(o,b);var f=m()(o);function o(){return l()(this,o),f.apply(this,arguments)}return t()(o)}(c.Uo);r.define({label:"JSItem RunJS context",properties:{element:`ElementProxy instance providing a safe DOM container for form item rendering.
|
|
2
|
-
Supports innerHTML, append, and other DOM manipulation methods.`,resource:`Current resource instance (read-only).
|
|
3
|
-
Provides access to the data resource associated with the current form context.`,record:`Current record data object (read-only).
|
|
4
|
-
Contains all field values of the parent record.`},methods:{onRefReady:`Wait for form item container DOM element to be ready before executing callback.
|
|
5
|
-
Parameters: (ref: React.RefObject, callback: (element: HTMLElement) => void, timeout?: number) => void`}}),r.define({label:"JS \u8868\u5355\u9879 RunJS \u4E0A\u4E0B\u6587",properties:{element:"ElementProxy\uFF0C\u8868\u5355\u9879\u6E32\u67D3\u5BB9\u5668\uFF0C\u652F\u6301 innerHTML/append \u7B49 DOM \u64CD\u4F5C",resource:"\u5F53\u524D\u8D44\u6E90\uFF08\u53EA\u8BFB\uFF09",record:"\u5F53\u524D\u8BB0\u5F55\uFF08\u53EA\u8BFB\uFF09"},methods:{onRefReady:"\u5BB9\u5668\u5C31\u7EEA\u540E\u6267\u884C\u56DE\u8C03\u3002\u53C2\u6570\uFF1A(ref, callback, timeout?)"}},{locale:"zh-CN"})},42936:function(s,n,e){e.r(n);var _=e(41442),t={contexts:[_.JSItemRunJSContext],prefix:"sn-link-required",label:"Set required",description:"Toggle required rule for another field within linkage",locales:{"zh-CN":{label:"\u8BBE\u7F6E\u5FC5\u586B",description:"\u5728\u8054\u52A8\u811A\u672C\u4E2D\u63A7\u5236\u5B57\u6BB5\u662F\u5426\u5FC5\u586B"}},content:`
|
|
6
|
-
const targetFieldUid = 'FIELD_UID_OR_NAME';
|
|
7
|
-
const required = true;
|
|
8
|
-
|
|
9
|
-
const items = ctx.model?.subModels?.grid?.subModels?.items;
|
|
10
|
-
const candidates = Array.isArray(items)
|
|
11
|
-
? items
|
|
12
|
-
: Array.from(items?.values?.() || items || []);
|
|
13
|
-
const fieldModel =
|
|
14
|
-
candidates.find((item) => item?.uid === targetFieldUid) ||
|
|
15
|
-
candidates.find((item) => item?.props?.name === targetFieldUid);
|
|
16
|
-
|
|
17
|
-
if (!fieldModel) {
|
|
18
|
-
ctx.message?.warning?.(ctx.t('Field {{name}} not found', { name: targetFieldUid }));
|
|
19
|
-
return;
|
|
20
|
-
}
|
|
21
|
-
|
|
22
|
-
fieldModel.setProps({ required });
|
|
23
|
-
ctx.message?.success?.(
|
|
24
|
-
ctx.t(required ? 'Set field {{name}} as required' : 'Field {{name}} is optional', {
|
|
25
|
-
name: fieldModel?.props?.label || targetFieldUid,
|
|
26
|
-
}),
|
|
27
|
-
);
|
|
28
|
-
`};n.default=t}}]);
|
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
"use strict";(self.webpackChunknocobase=self.webpackChunknocobase||[]).push([[3357,1442],{41442:function(r,n,e){e.r(n),e.d(n,{JSItemRunJSContext:function(){return s}});var _=e(72004),t=e.n(_),a=e(12444),l=e.n(a),d=e(31996),i=e.n(d),m=e(26037),u=e.n(m),c=e(1772),s=function(b){i()(o,b);var h=u()(o);function o(){return l()(this,o),h.apply(this,arguments)}return t()(o)}(c.Uo);s.define({label:"JSItem RunJS context",properties:{element:`ElementProxy instance providing a safe DOM container for form item rendering.
|
|
2
|
-
Supports innerHTML, append, and other DOM manipulation methods.`,resource:`Current resource instance (read-only).
|
|
3
|
-
Provides access to the data resource associated with the current form context.`,record:`Current record data object (read-only).
|
|
4
|
-
Contains all field values of the parent record.`},methods:{onRefReady:`Wait for form item container DOM element to be ready before executing callback.
|
|
5
|
-
Parameters: (ref: React.RefObject, callback: (element: HTMLElement) => void, timeout?: number) => void`}}),s.define({label:"JS \u8868\u5355\u9879 RunJS \u4E0A\u4E0B\u6587",properties:{element:"ElementProxy\uFF0C\u8868\u5355\u9879\u6E32\u67D3\u5BB9\u5668\uFF0C\u652F\u6301 innerHTML/append \u7B49 DOM \u64CD\u4F5C",resource:"\u5F53\u524D\u8D44\u6E90\uFF08\u53EA\u8BFB\uFF09",record:"\u5F53\u524D\u8BB0\u5F55\uFF08\u53EA\u8BFB\uFF09"},methods:{onRefReady:"\u5BB9\u5668\u5C31\u7EEA\u540E\u6267\u884C\u56DE\u8C03\u3002\u53C2\u6570\uFF1A(ref, callback, timeout?)"}},{locale:"zh-CN"})},93357:function(r,n,e){e.r(n);var _=e(41442),t={contexts:[_.JSItemRunJSContext],prefix:"sn-link-visibility",label:"Toggle visible",description:"Show or hide another field within linkage scripts",locales:{"zh-CN":{label:"\u5207\u6362\u53EF\u89C1\u6027",description:"\u5728\u8054\u52A8\u811A\u672C\u4E2D\u8BBE\u7F6E\u5B57\u6BB5\u663E\u793A\u6216\u9690\u85CF"}},content:`
|
|
6
|
-
const targetFieldUid = 'FIELD_UID_OR_NAME';
|
|
7
|
-
const shouldHide = true;
|
|
8
|
-
|
|
9
|
-
const items = ctx.model?.subModels?.grid?.subModels?.items;
|
|
10
|
-
const candidates = Array.isArray(items)
|
|
11
|
-
? items
|
|
12
|
-
: Array.from(items?.values?.() || items || []);
|
|
13
|
-
const fieldModel =
|
|
14
|
-
candidates.find((item) => item?.uid === targetFieldUid) ||
|
|
15
|
-
candidates.find((item) => item?.props?.name === targetFieldUid);
|
|
16
|
-
|
|
17
|
-
if (!fieldModel) {
|
|
18
|
-
ctx.message?.warning?.(ctx.t('Field {{name}} not found', { name: targetFieldUid }));
|
|
19
|
-
return;
|
|
20
|
-
}
|
|
21
|
-
|
|
22
|
-
fieldModel.setProps({ hiddenModel: shouldHide });
|
|
23
|
-
ctx.message?.success?.(
|
|
24
|
-
ctx.t(shouldHide ? 'Hidden field {{name}}' : 'Shown field {{name}}', {
|
|
25
|
-
name: fieldModel?.props?.label || targetFieldUid,
|
|
26
|
-
}),
|
|
27
|
-
);
|
|
28
|
-
`};n.default=t}}]);
|
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
"use strict";(self.webpackChunknocobase=self.webpackChunknocobase||[]).push([[341,1442],{41442:function(r,n,e){e.r(n),e.d(n,{JSItemRunJSContext:function(){return s}});var _=e(72004),t=e.n(_),a=e(12444),l=e.n(a),d=e(31996),i=e.n(d),m=e(26037),u=e.n(m),c=e(1772),s=function(b){i()(o,b);var f=u()(o);function o(){return l()(this,o),f.apply(this,arguments)}return t()(o)}(c.Uo);s.define({label:"JSItem RunJS context",properties:{element:`ElementProxy instance providing a safe DOM container for form item rendering.
|
|
2
|
-
Supports innerHTML, append, and other DOM manipulation methods.`,resource:`Current resource instance (read-only).
|
|
3
|
-
Provides access to the data resource associated with the current form context.`,record:`Current record data object (read-only).
|
|
4
|
-
Contains all field values of the parent record.`},methods:{onRefReady:`Wait for form item container DOM element to be ready before executing callback.
|
|
5
|
-
Parameters: (ref: React.RefObject, callback: (element: HTMLElement) => void, timeout?: number) => void`}}),s.define({label:"JS \u8868\u5355\u9879 RunJS \u4E0A\u4E0B\u6587",properties:{element:"ElementProxy\uFF0C\u8868\u5355\u9879\u6E32\u67D3\u5BB9\u5668\uFF0C\u652F\u6301 innerHTML/append \u7B49 DOM \u64CD\u4F5C",resource:"\u5F53\u524D\u8D44\u6E90\uFF08\u53EA\u8BFB\uFF09",record:"\u5F53\u524D\u8BB0\u5F55\uFF08\u53EA\u8BFB\uFF09"},methods:{onRefReady:"\u5BB9\u5668\u5C31\u7EEA\u540E\u6267\u884C\u56DE\u8C03\u3002\u53C2\u6570\uFF1A(ref, callback, timeout?)"}},{locale:"zh-CN"})},10341:function(r,n,e){e.r(n);var _=e(41442),t={contexts:[_.JSItemRunJSContext],prefix:"sn-link-disable",label:"Set disabled",description:"Enable or disable another field in linkage scripts",locales:{"zh-CN":{label:"\u8BBE\u7F6E\u7981\u7528",description:"\u5728\u8054\u52A8\u811A\u672C\u4E2D\u542F\u7528\u6216\u7981\u7528\u5B57\u6BB5"}},content:`
|
|
6
|
-
const targetFieldUid = 'FIELD_UID_OR_NAME';
|
|
7
|
-
const disabled = true;
|
|
8
|
-
|
|
9
|
-
const items = ctx.model?.subModels?.grid?.subModels?.items;
|
|
10
|
-
const candidates = Array.isArray(items)
|
|
11
|
-
? items
|
|
12
|
-
: Array.from(items?.values?.() || items || []);
|
|
13
|
-
const fieldModel =
|
|
14
|
-
candidates.find((item) => item?.uid === targetFieldUid) ||
|
|
15
|
-
candidates.find((item) => item?.props?.name === targetFieldUid);
|
|
16
|
-
|
|
17
|
-
if (!fieldModel) {
|
|
18
|
-
ctx.message?.warning?.(ctx.t('Field {{name}} not found', { name: targetFieldUid }));
|
|
19
|
-
return;
|
|
20
|
-
}
|
|
21
|
-
|
|
22
|
-
fieldModel.setProps({ disabled });
|
|
23
|
-
ctx.message?.success?.(
|
|
24
|
-
ctx.t(disabled ? 'Disabled field {{name}}' : 'Enabled field {{name}}', {
|
|
25
|
-
name: fieldModel?.props?.label || targetFieldUid,
|
|
26
|
-
}),
|
|
27
|
-
);
|
|
28
|
-
`};n.default=t}}]);
|