openxiangda 1.0.136 → 1.0.138
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/lib/cli.js +687 -5
- package/lib/design-gates.js +16 -3
- package/openxiangda-skills/references/best-practices.md +18 -7
- package/openxiangda-skills/references/component-guide.md +7 -1
- package/openxiangda-skills/references/permission-design-patterns.md +95 -5
- package/openxiangda-skills/references/permissions-settings.md +165 -0
- package/openxiangda-skills/references/resource-manifest-cheatsheet.md +87 -0
- package/package.json +1 -1
- package/packages/sdk/dist/{ProcessPreview-Ci8_UsbN.d.mts → ProcessPreview-CZJP8n3e.d.mts} +6 -0
- package/packages/sdk/dist/{ProcessPreview-Ci8_UsbN.d.ts → ProcessPreview-CZJP8n3e.d.ts} +6 -0
- package/packages/sdk/dist/components/index.cjs +143 -16
- package/packages/sdk/dist/components/index.cjs.map +1 -1
- package/packages/sdk/dist/components/index.d.mts +8 -2
- package/packages/sdk/dist/components/index.d.ts +8 -2
- package/packages/sdk/dist/components/index.mjs +143 -16
- package/packages/sdk/dist/components/index.mjs.map +1 -1
- package/packages/sdk/dist/runtime/index.cjs +169 -25
- package/packages/sdk/dist/runtime/index.cjs.map +1 -1
- package/packages/sdk/dist/runtime/index.d.mts +1 -1
- package/packages/sdk/dist/runtime/index.d.ts +1 -1
- package/packages/sdk/dist/runtime/index.mjs +169 -25
- package/packages/sdk/dist/runtime/index.mjs.map +1 -1
- package/packages/sdk/dist/runtime/react.cjs +26 -9
- package/packages/sdk/dist/runtime/react.cjs.map +1 -1
- package/packages/sdk/dist/runtime/react.d.mts +13 -3
- package/packages/sdk/dist/runtime/react.d.ts +13 -3
- package/packages/sdk/dist/runtime/react.mjs +26 -9
- package/packages/sdk/dist/runtime/react.mjs.map +1 -1
|
@@ -2563,7 +2563,27 @@ var useDataSource = (name, options = {}) => {
|
|
|
2563
2563
|
var import_react6 = require("react");
|
|
2564
2564
|
var EMPTY_SUMMARY = {
|
|
2565
2565
|
fieldPermissions: {},
|
|
2566
|
-
operations: []
|
|
2566
|
+
operations: [],
|
|
2567
|
+
actions: []
|
|
2568
|
+
};
|
|
2569
|
+
var normalizeSummary = (summary) => {
|
|
2570
|
+
const actions = Array.from(
|
|
2571
|
+
/* @__PURE__ */ new Set([...summary?.actions || [], ...summary?.operations || []])
|
|
2572
|
+
);
|
|
2573
|
+
const can = actions.reduce(
|
|
2574
|
+
(result, operation) => {
|
|
2575
|
+
result[operation] = Boolean(summary?.can?.[operation] ?? true);
|
|
2576
|
+
return result;
|
|
2577
|
+
},
|
|
2578
|
+
{}
|
|
2579
|
+
);
|
|
2580
|
+
return {
|
|
2581
|
+
...summary,
|
|
2582
|
+
fieldPermissions: summary?.fieldPermissions || {},
|
|
2583
|
+
operations: actions,
|
|
2584
|
+
actions,
|
|
2585
|
+
can
|
|
2586
|
+
};
|
|
2567
2587
|
};
|
|
2568
2588
|
var toError = (error) => {
|
|
2569
2589
|
if (error instanceof Error) {
|
|
@@ -2597,10 +2617,7 @@ var useFormViewPermissions = (formUuid, options = {}) => {
|
|
|
2597
2617
|
});
|
|
2598
2618
|
const nextSummary = nextResponse.result || EMPTY_SUMMARY;
|
|
2599
2619
|
setResponse(nextResponse);
|
|
2600
|
-
setSummary(
|
|
2601
|
-
fieldPermissions: nextSummary.fieldPermissions || {},
|
|
2602
|
-
operations: nextSummary.operations || []
|
|
2603
|
-
});
|
|
2620
|
+
setSummary(normalizeSummary(nextSummary));
|
|
2604
2621
|
return nextResponse;
|
|
2605
2622
|
} catch (requestError) {
|
|
2606
2623
|
const nextError = toError(requestError);
|
|
@@ -2619,12 +2636,12 @@ var useFormViewPermissions = (formUuid, options = {}) => {
|
|
|
2619
2636
|
void refresh();
|
|
2620
2637
|
}, [immediate, refresh]);
|
|
2621
2638
|
const operationSet = (0, import_react6.useMemo)(
|
|
2622
|
-
() => new Set(summary.operations),
|
|
2623
|
-
[summary.operations]
|
|
2639
|
+
() => new Set(summary.actions || summary.operations),
|
|
2640
|
+
[summary.actions, summary.operations]
|
|
2624
2641
|
);
|
|
2625
2642
|
const can = (0, import_react6.useCallback)(
|
|
2626
|
-
(operation) => operationSet.has(operation),
|
|
2627
|
-
[operationSet]
|
|
2643
|
+
(operation) => Boolean(summary.can?.[operation] ?? operationSet.has(operation)),
|
|
2644
|
+
[operationSet, summary.can]
|
|
2628
2645
|
);
|
|
2629
2646
|
const getFieldPermission = (0, import_react6.useCallback)(
|
|
2630
2647
|
(fieldName) => summary.fieldPermissions[fieldName] || null,
|