amis 1.9.1-beta.3 → 1.9.1-beta.4
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/SchemaRenderer.js +6 -9
- package/lib/SchemaRenderer.js.map +2 -2
- package/lib/actions/CmptAction.js +4 -4
- package/lib/actions/CmptAction.js.map +2 -2
- package/lib/components/WithRemoteConfig.d.ts +2 -2
- package/lib/components/WithRemoteConfig.js +6 -3
- package/lib/components/WithRemoteConfig.js.map +2 -2
- package/lib/components/table/ItemActionsWrapper.d.ts +10 -0
- package/lib/components/table/ItemActionsWrapper.js +25 -0
- package/lib/components/table/ItemActionsWrapper.js.map +13 -0
- package/lib/components/table/index.d.ts +48 -41
- package/lib/components/table/index.js +46 -18
- package/lib/components/table/index.js.map +2 -2
- package/lib/index.js +1 -1
- package/lib/renderers/Form/JSONSchema.js +3 -3
- package/lib/renderers/Form/JSONSchema.js.map +2 -2
- package/lib/renderers/Form/Options.js +11 -5
- package/lib/renderers/Form/Options.js.map +2 -2
- package/lib/renderers/Form/wrapControl.js.map +2 -2
- package/lib/renderers/Table-v2/index.d.ts +14 -2
- package/lib/renderers/Table-v2/index.js +33 -3
- package/lib/renderers/Table-v2/index.js.map +2 -2
- package/package.json +1 -1
- package/schema.json +13 -2
- package/sdk/barcode.js +51 -51
- package/sdk/charts.js +14 -14
- package/sdk/codemirror.js +7 -7
- package/sdk/color-picker.js +65 -65
- package/sdk/cropperjs.js +2 -2
- package/sdk/exceljs.js +1 -1
- package/sdk/markdown.js +69 -69
- package/sdk/papaparse.js +1 -1
- package/sdk/renderers/Form/CityDB.js +1 -1
- package/sdk/rest.js +16 -16
- package/sdk/rich-text.js +62 -62
- package/sdk/sdk.js +1299 -1297
- package/sdk/thirds/hls.js/hls.js +1 -1
- package/sdk/thirds/mpegts.js/mpegts.js +1 -1
- package/sdk/tinymce.js +57 -57
- package/src/SchemaRenderer.tsx +1 -4
- package/src/actions/CmptAction.ts +4 -4
- package/src/components/WithRemoteConfig.tsx +20 -11
- package/src/components/table/ItemActionsWrapper.tsx +32 -0
- package/src/components/table/index.tsx +115 -58
- package/src/renderers/Form/JSONSchema.tsx +3 -3
- package/src/renderers/Form/Options.tsx +17 -7
- package/src/renderers/Form/wrapControl.tsx +0 -1
- package/src/renderers/Table-v2/index.tsx +65 -2
    
        package/lib/SchemaRenderer.js
    CHANGED
    
    | @@ -171,12 +171,12 @@ var SchemaRenderer = /** @class */ (function (_super) { | |
| 171 171 | 
             
                };
         | 
| 172 172 | 
             
                SchemaRenderer.prototype.render = function () {
         | 
| 173 173 | 
             
                    var _this = this;
         | 
| 174 | 
            -
                    var _a, _b, _c;
         | 
| 175 | 
            -
                    var  | 
| 174 | 
            +
                    var _a, _b, _c, _d;
         | 
| 175 | 
            +
                    var _e = this.props, _ = _e.$path, __ = _e.schema, rootStore = _e.rootStore, rest = (0, tslib_1.__rest)(_e, ["$path", "schema", "rootStore"]);
         | 
| 176 176 | 
             
                    if (__ == null) {
         | 
| 177 177 | 
             
                        return null;
         | 
| 178 178 | 
             
                    }
         | 
| 179 | 
            -
                    var  | 
| 179 | 
            +
                    var _f = this.resolveRenderer(this.props), $path = _f.path, schema = _f.schema;
         | 
| 180 180 | 
             
                    var theme = this.props.env.theme;
         | 
| 181 181 | 
             
                    if (Array.isArray(schema)) {
         | 
| 182 182 | 
             
                        return (0, Root_1.renderChildren)($path, schema, rest);
         | 
| @@ -258,14 +258,11 @@ var SchemaRenderer = /** @class */ (function (_super) { | |
| 258 258 | 
             
                    }
         | 
| 259 259 | 
             
                    var isClassComponent = (_a = Component.prototype) === null || _a === void 0 ? void 0 : _a.isReactComponent;
         | 
| 260 260 | 
             
                    var $schema = (0, tslib_1.__assign)((0, tslib_1.__assign)({}, schema), exprProps);
         | 
| 261 | 
            -
                    var props = (0, tslib_1.__assign)((0, tslib_1.__assign)((0, tslib_1.__assign)((0, tslib_1.__assign)((0, tslib_1.__assign)({}, theme.getRendererConfig(renderer.name)), restSchema), (0, helper_1.chainEvents)(rest, restSchema)), exprProps), { defaultData: (_b = restSchema.defaultData) !== null && _b !== void 0 ? _b : defaultData, defaultValue: (_c = restSchema.defaultValue) !== null && _c !== void 0 ? _c : defaultValue, defaultActiveKey: defaultActiveKey, propKey: propKey, $path: $path, $schema: $schema, ref: this.refFn, render: this.renderChild, rootStore: rootStore, dispatchEvent: this.dispatchEvent });
         | 
| 262 | 
            -
                    if (disable) {
         | 
| 263 | 
            -
                        props.disabled = true;
         | 
| 264 | 
            -
                    }
         | 
| 261 | 
            +
                    var props = (0, tslib_1.__assign)((0, tslib_1.__assign)((0, tslib_1.__assign)((0, tslib_1.__assign)((0, tslib_1.__assign)({}, theme.getRendererConfig(renderer.name)), restSchema), (0, helper_1.chainEvents)(rest, restSchema)), exprProps), { defaultData: (_b = restSchema.defaultData) !== null && _b !== void 0 ? _b : defaultData, defaultValue: (_c = restSchema.defaultValue) !== null && _c !== void 0 ? _c : defaultValue, defaultActiveKey: defaultActiveKey, propKey: propKey, $path: $path, $schema: $schema, ref: this.refFn, render: this.renderChild, rootStore: rootStore, disabled: (_d = disable !== null && disable !== void 0 ? disable : rest.disabled) !== null && _d !== void 0 ? _d : restSchema.disabled, dispatchEvent: this.dispatchEvent });
         | 
| 265 262 | 
             
                    // 自动解析变量模式,主要是方便直接引入第三方组件库,无需为了支持变量封装一层
         | 
| 266 263 | 
             
                    if (renderer.autoVar) {
         | 
| 267 | 
            -
                        for (var _i = 0,  | 
| 268 | 
            -
                            var key =  | 
| 264 | 
            +
                        for (var _i = 0, _g = Object.keys($schema); _i < _g.length; _i++) {
         | 
| 265 | 
            +
                            var key = _g[_i];
         | 
| 269 266 | 
             
                            if (typeof props[key] === 'string') {
         | 
| 270 267 | 
             
                                props[key] = (0, tpl_builtin_1.resolveVariableAndFilter)(props[key], props.data, '| raw');
         | 
| 271 268 | 
             
                            }
         | 
| @@ -6,8 +6,8 @@ | |
| 6 6 | 
             
                    "/src/SchemaRenderer.tsx"
         | 
| 7 7 | 
             
                ],
         | 
| 8 8 | 
             
                "names": [],
         | 
| 9 | 
            -
                "mappings": "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",
         | 
| 9 | 
            +
                "mappings": ";;;;AAAA,8EAA2C;AAC3C,kEAA+B;AAC/B,6DAA0B;AAC1B,0FAAuD;AACvD,qCAQmB;AACnB,8CAAiD;AACjD,+BAAmD;AACnD,mCAAuC;AAEvC,uCAA2C;AAC3C,qFAAsD;AACtD,yCAAiE;AACjE,+CAA4C;AAE5C,yDAA+E;AAC/E,mDAAwC;AACxC,6BAA8B;AAC9B,mDAA6D;AAQ7D,IAAM,eAAe,GAAG;IACtB,MAAM;IACN,MAAM;IACN,MAAM;IACN,WAAW;IACX,MAAM;IACN,UAAU;IACV,KAAK;IACL,SAAS;IACT,WAAW;IACX,QAAQ;IACR,UAAU;IACV,UAAU;IACV,YAAY;IACZ,WAAW;IACX,aAAa;IACb,cAAc;IACd,aAAa;IACb,UAAU;IACV,YAAY;IACZ,gBAAgB;IAChB,MAAM;IACN,MAAM;CACP,CAAC;AAEF,IAAM,cAAc,GAAc,IAAI,qBAAS,EAAE,CAAC;AAElD;IAAoC,+CAAyC;IAe3E,wBAAY,KAA0B;QAAtC,YACE,kBAAM,KAAK,CAAC,SAgBb;QA5BD,iBAAW,GAAG,EAAE,CAAC;QASjB,iBAAW,GAA6B,SAAS,CAAC;QAIhD,KAAI,CAAC,KAAK,GAAG,KAAI,CAAC,KAAK,CAAC,IAAI,CAAC,KAAI,CAAC,CAAC;QACnC,KAAI,CAAC,WAAW,GAAG,KAAI,CAAC,WAAW,CAAC,IAAI,CAAC,KAAI,CAAC,CAAC;QAC/C,KAAI,CAAC,QAAQ,GAAG,KAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAI,CAAC,CAAC;QACzC,KAAI,CAAC,eAAe,CAAC,KAAI,CAAC,KAAK,CAAC,CAAC;QAEjC,KAAI,CAAC,aAAa,GAAG,KAAI,CAAC,aAAa,CAAC,IAAI,CAAC,KAAI,CAAC,CAAC;QAEnD,gBAAgB;QAChB,KAAI,CAAC,QAAQ,GAAG,IAAA,eAAQ,EACtB;YACE,OAAA,UAAG,KAAK,CAAC,SAAS,CAAC,YAAY,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,IAAI,KAAK,CAAC,KAAK,CAAC,SAC7D,KAAK,CAAC,SAAS,CAAC,YAAY,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,IAAI,KAAK,CAAC,KAAK,CAAC,CAC5D;QAFF,CAEE,EACJ,cAAM,OAAA,KAAI,CAAC,WAAW,EAAE,EAAlB,CAAkB,CACzB,CAAC;;IACJ,CAAC;IAED,0CAAiB,GAAjB;QACE,oCAAoC;QACpC,IAAI,CAAC,WAAW,GAAG,IAAA,0BAAS,EAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC1C,CAAC;IAED,6CAAoB,GAApB;;QACE,MAAA,IAAI,CAAC,QAAQ,+CAAb,IAAI,CAAa,CAAC;QAClB,MAAA,IAAI,CAAC,WAAW,+CAAhB,IAAI,CAAgB,CAAC;IACvB,CAAC;IAED,uDAAuD;IACvD,8CAAqB,GAArB,UAAsB,SAA8B;QAClD,IAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;QACzB,IAAM,IAAI,GAAkB,IAAA,oBAAU,EAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE;YAC7D,QAAQ;YACR,OAAO;SACR,CAAC,CAAC;QAEH,IACE,IAAA,oBAAU,EAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC,CAAC,MAAM;YACxD,IAAI,CAAC,MAAM;YACb,IAAA,mBAAU,EAAC,IAAI,EAAE,IAAI,CAAC,KAAK,EAAE,SAAS,CAAC,EACvC;YACA,OAAO,IAAI,CAAC;SACb;aAAM;YACL,IAAM,MAAI,GAAkB,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;YAE1D,IACE,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,MAAM,KAAK,MAAI,CAAC,MAAM;gBAChD,IAAA,mBAAU,EAAC,MAAI,EAAE,KAAK,CAAC,MAAM,EAAE,SAAS,CAAC,MAAM,CAAC,EAChD;gBACA,OAAO,IAAI,CAAC;aACb;SACF;QAED,OAAO,KAAK,CAAC;IACf,CAAC;IAED,wCAAe,GAAf,UAAgB,KAA0B,EAAE,KAAa;QAAb,sBAAA,EAAA,aAAa;QACvD,IAAI,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC;QAC1B,IAAI,IAAI,GAAG,KAAK,CAAC,KAAK,CAAC;QAEvB,IAAI,MAAM,IAAI,MAAM,CAAC,IAAI,EAAE;YACzB,MAAM,mDACD,KAAK,CAAC,kBAAkB,CAAC,MAAM,CAAC,IAAI,CAAC,GACrC,MAAM,CACV,CAAC;YAEF,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC;SAChD;QAED,IACE,CAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,IAAI;YACZ,CAAC,KAAK;gBACJ,CAAC,IAAI,CAAC,QAAQ;gBACd,IAAI,CAAC,WAAW,KAAK,UAAG,MAAM,CAAC,IAAI,cAAI,MAAM,CAAC,IAAI,CAAE,CAAC,EACvD;YACA,IAAM,gBAAgB,GAAG,KAAK,CAAC,GAAG,CAAC,gBAAgB,IAAI,yBAAe,CAAC;YACvE,IAAI,CAAC,QAAQ,GAAG,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC;YACtD,IAAI,CAAC,WAAW,GAAG,UAAG,MAAM,CAAC,IAAI,cAAI,MAAM,CAAC,IAAI,CAAE,CAAC;SACpD;aAAM;YACL,+CAA+C;YAC/C,+CAA+C;YAC/C,IAAI,MAAM,CAAC,QAAQ,IAAI,CAAC,MAAM,CAAC,SAAS,IAAI,MAAM,CAAC,UAAU,EAAE;gBAC7D,MAAM,CAAC,SAAS,GAAG,oBAAoB,CAAC;gBACxC,MAAM,CAAC,cAAc,GAAG,MAAM,CAAC,QAAQ,CAAC;gBACxC,OAAO,MAAM,CAAC,QAAQ,CAAC;aACxB;YAED,IACE,MAAM,CAAC,SAAS;gBAChB,CAAC,MAAM,CAAC,SAAS,CAAC,gBAAgB;gBAClC,MAAM,CAAC,UAAU,EACjB;gBACA,IAAM,KAAK,GAAG,cAAc,CAAC,GAAG,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;gBAEnD,IAAI,KAAK,EAAE;oBACT,MAAM,CAAC,SAAS,GAAG,KAAK,CAAC;iBAC1B;qBAAM;oBACL,IAAM,OAAK,GAAG,IAAA,iBAAU,0BACtB,UAAU,EAAE,KAAK,IACd,MAAM,CAAC,UAAU,EACpB,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;oBACrB,cAAc,CAAC,GAAG,CAAC,MAAM,CAAC,SAAS,EAAE,OAAK,CAAC,CAAC;oBAC5C,OAAK,CAAC,gBAAgB,GAAG,IAAI,CAAC;oBAC9B,MAAM,CAAC,SAAS,GAAG,OAAK,CAAC;iBAC1B;aACF;SACF;QAED,OAAO,EAAC,IAAI,MAAA,EAAE,MAAM,QAAA,EAAC,CAAC;IACxB,CAAC;IAED,2CAAkB,GAAlB;QACE,OAAO,IAAI,CAAC,IAAI,CAAC;IACnB,CAAC;IAED,8BAAK,GAAL,UAAM,GAAQ;QACZ,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC;IACjB,CAAC;IAGD,iCAAQ,GAAR,UAAS,GAAQ;QACf,OAAO,GAAG,IAAI,GAAG,CAAC,kBAAkB,EAAE;YACpC,GAAG,GAAG,GAAG,CAAC,kBAAkB,EAAE,CAAC;SAChC;QAED,IAAI,CAAC,IAAI,GAAG,GAAG,CAAC;IAClB,CAAC;IAEK,sCAAa,GAAnB,UACE,CAAwB,EACxB,IAAS;oDACR,OAAO;;;4BACD,qBAAM,IAAA,8BAAa,EAAC,CAAC,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,EAAA;4BAA5D,sBAAO,SAAqD,EAAC;;;;KAC9D;IAED,oCAAW,GAAX,UACE,MAAc,EACd,IAAiB,EACjB,QAGM;QAHN,yBAAA,EAAA,aAGM;QAEN,IAAI,KAAuC,IAAI,CAAC,KAAK,EAAxC,CAAC,YAAA,EAAS,EAAE,WAAA,EAAE,GAAG,SAAA,EAAK,IAAI,2BAAnC,0BAAoC,CAAa,CAAC;QACjD,IAAM,KAAK,GAAI,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,KAAK,CAAC,KAApC,CAAqC;QAErD,IAAM,QAAQ,GAAG,eAAe,CAAC,MAAM,EAAE,CAAC;QAC1C,IAAI,IAAI,CAAC,QAAQ,EAAE;YACjB,IAAM,SAAS,GAAG,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC;YAC1C,SAAS,CAAC,SAAS;gBACjB,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,SAAS,CAAC,SAA0B,CAAC,CAAC;SACvE;QAED,OAAO,IAAA,kBAAW,EAAC,UAAG,KAAK,SAAG,MAAM,CAAC,CAAC,CAAC,WAAI,MAAM,CAAE,CAAC,CAAC,CAAC,EAAE,CAAE,EAAE,IAAI,IAAI,EAAE,wEACjE,IAAA,cAAI,EAAC,IAAI,EAAE,QAAQ,CAAC,GACpB,QAAQ,KACX,IAAI,EAAE,QAAQ,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,EAChC,GAAG,EAAE,GAAG,IACR,CAAC;IACL,CAAC;IAED,iCAAQ,GAAR;QACE,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;QACvC,IAAI,CAAC,WAAW,EAAE,CAAC;IACrB,CAAC;IAED,+BAAM,GAAN;QAAA,iBAmLC;;QAlLC,IAAI,KAA6C,IAAI,CAAC,KAAK,EAA/C,CAAC,WAAA,EAAU,EAAE,YAAA,EAAE,SAAS,eAAA,EAAK,IAAI,2BAAzC,gCAA0C,CAAa,CAAC;QAE5D,IAAI,EAAE,IAAI,IAAI,EAAE;YACd,OAAO,IAAI,CAAC;SACb;QAEG,IAAA,KAAwB,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,KAAK,CAAC,EAAjD,KAAK,UAAA,EAAE,MAAM,YAAoC,CAAC;QAC7D,IAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC;QAEnC,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE;YACzB,OAAO,IAAA,qBAAc,EAAC,KAAK,EAAE,MAAa,EAAE,IAAI,CAAgB,CAAC;SAClE;QAED,IAAM,UAAU,GACd,MAAM;YACN,CAAC,MAAM,CAAC,WAAW,KAAK,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW,IAAI,MAAM,CAAC,CAAC,CAAC;QAC3E,IAAM,SAAS,GAAQ,UAAU;YAC/B,CAAC,CAAC,IAAA,uBAAiB,EAAC,MAAM,EAAE,UAAU,EAAE,SAAS,EAAE,IAAI,CAAC;YACxD,CAAC,CAAC,EAAE,CAAC;QAEP,OAAO;QACP,IAAM,OAAO,GAAG,IAAA,yBAAO,EAAC,SAAS,CAAC;YAChC,CAAC,CAAC,SAAS,CAAC,YAAY,CAAC,MAAM,CAAC,EAAE,IAAI,KAAK,CAAC;YAC5C,CAAC,CAAC,SAAS,CAAC;QACd,IAAM,OAAO,GAAG,IAAA,yBAAO,EAAC,SAAS,CAAC;YAChC,CAAC,CAAC,SAAS,CAAC,YAAY,CAAC,MAAM,CAAC,EAAE,IAAI,KAAK,CAAC;YAC5C,CAAC,CAAC,SAAS,CAAC;QAEd,IACE,OAAO,KAAK,KAAK;YACjB,CAAC,OAAO,KAAK,IAAI;gBACf,SAAS;gBACT,CAAC,SAAS,CAAC,MAAM;oBACf,SAAS,CAAC,OAAO,KAAK,KAAK;oBAC3B,MAAM,CAAC,MAAM;oBACb,MAAM,CAAC,OAAO,KAAK,KAAK;oBACxB,IAAI,CAAC,MAAM;oBACX,IAAI,CAAC,OAAO,KAAK,KAAK,CAAC,CAAC,EAC5B;YACC,IAAY,CAAC,SAAS,GAAG,IAAI,CAAC;SAChC;QAED,IAAI,MAAM,CAAC,QAAQ,EAAE;YACnB,OAAO,IAAI,CAAC,SAAS;gBACnB,CAAC,CAAC,IAAI;gBACN,CAAC,CAAC,eAAK,CAAC,cAAc,CAAC,MAAM,CAAC,QAAQ,CAAC;oBACvC,CAAC,CAAC,MAAM,CAAC,QAAQ;oBACjB,CAAC,CAAE,MAAM,CAAC,QAAqB,uEACxB,IAAI,GACJ,SAAS,KACZ,KAAK,EAAE,KAAK,EACZ,OAAO,EAAE,MAAM,EACf,MAAM,EAAE,IAAI,CAAC,WAAW,EACxB,YAAY,EAAE,IAAI,CAAC,KAAK,IACxB,CAAC;SACR;aAAM,IAAI,OAAO,MAAM,CAAC,SAAS,KAAK,UAAU,EAAE;YACjD,IAAM,KAAK,GAAG,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,SAAS,YAAY,eAAK,CAAC,SAAS,CAAC,CAAC;YAErE,IAAM,aAAW,GAKf,MAAM,KALS,EACV,cAAY,GAIjB,MAAM,MAJW,EACR,kBAAgB,GAGzB,MAAM,UAHmB,EACtB,SAAO,GAEV,MAAM,IAFI,EACT,YAAU,uBACX,MAAM,EANJ,qCAML,CADc,CACJ;YACX,OAAO,IAAI,CAAC,SAAS;gBACnB,CAAC,CAAC,IAAI;gBACN,CAAC,CAAC,eAAK,CAAC,aAAa,CAAC,MAAM,CAAC,SAAgB,8FACtC,IAAI,GACJ,YAAU,GACV,SAAS,KACZ,WAAW,eAAA,EACX,YAAY,gBAAA,EACZ,gBAAgB,oBAAA,EAChB,OAAO,WAAA,EACP,KAAK,EAAE,KAAK,EACZ,OAAO,EAAE,MAAM,EACf,GAAG,EAAE,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,EACnC,YAAY,EAAE,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,EAC5C,MAAM,EAAE,IAAI,CAAC,WAAW,IACxB,CAAC;SACR;aAAM,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE;YAC3C,OAAO,IAAI,CAAC;SACb;aAAM,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE;YACzB,OAAO,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAC7B,8BAAC,uBAAa,4BACR,IAAI,EACJ,SAAS,IACb,YAAY,EAAE;;;;oCACG,qBAAM,IAAI,CAAC,GAAG,CAAC,YAAY,CACxC,MAAM,EACN,KAAK,EACL,IAAI,CAAC,QAAQ,CACd,EAAA;;gCAJK,MAAM,GAAG,SAId;gCACD,IAAI,MAAM,IAAI,OAAO,MAAM,KAAK,UAAU,EAAE;oCAC1C,sBAAO,MAAM,EAAC;iCACf;qCAAM,IAAI,MAAM,IAAI,eAAK,CAAC,cAAc,CAAC,MAAM,CAAC,EAAE;oCACjD,sBAAO,cAAM,OAAA,MAAM,EAAN,CAAM,EAAC;iCACrB;gCAED,IAAI,CAAC,QAAQ,EAAE,CAAC;gCAChB,sBAAO,cAAM,OAAA,IAAA,sBAAY,EAAC,MAAM,EAAE,KAAK,CAAC,EAA3B,CAA2B,EAAC;;;qBAC1C,WACM,KAAK,aACH,MAAM,EACf,KAAK,EAAE,IAAI,CAAC,QAAQ,IACpB,CACH,CAAC;SACH;QAED,IAAM,QAAQ,GAAG,IAAI,CAAC,QAA0B,CAAC;QACjD,MAAM,GAAG,IAAA,sBAAY,EAAC,MAAM,EAAE,QAAQ,EAAE,IAAI,CAAC,CAAC;QAE5C,IAAM,WAAW,GAKf,MAAM,KALS,EACV,YAAY,GAIjB,MAAM,MAJW,EACd,OAAO,GAGV,MAAM,IAHI,EACD,gBAAgB,GAEzB,MAAM,UAFmB,EACxB,UAAU,uBACX,MAAM,EANJ,qCAML,CADc,CACJ;QACX,IAAM,SAAS,GAAG,QAAQ,CAAC,SAAS,CAAC;QAErC,oDAAoD;QACpD,+BAA+B;QAC/B,wBAAwB;QACxB,gBAAgB;QAChB,IACE,IAAI,CAAC,SAAS;YACd,CAAC,SAAS,CAAC,MAAM;gBACf,SAAS,CAAC,OAAO,KAAK,KAAK;gBAC3B,CAAC,QAAQ,CAAC,UAAU;gBACpB,CAAC,MAAM,CAAC,OAAO,KAAK,KAAK,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,EAC/C;YACA,OAAO,IAAI,CAAC;SACb;QAED,IAAM,gBAAgB,GAAG,MAAA,SAAS,CAAC,SAAS,0CAAE,gBAAgB,CAAC;QAC/D,IAAM,OAAO,mDAAO,MAAM,GAAK,SAAS,CAAC,CAAC;QAC1C,IAAI,KAAK,qHACJ,KAAK,CAAC,iBAAiB,CAAC,QAAQ,CAAC,IAAI,CAAC,GACtC,UAAU,GACV,IAAA,oBAAW,EAAC,IAAI,EAAE,UAAU,CAAC,GAC7B,SAAS,KACZ,WAAW,EAAE,MAAA,UAAU,CAAC,WAAW,mCAAI,WAAW,EAClD,YAAY,EAAE,MAAA,UAAU,CAAC,YAAY,mCAAI,YAAY,EACrD,gBAAgB,EAAE,gBAAgB,EAClC,OAAO,EAAE,OAAO,EAChB,KAAK,EAAE,KAAK,EACZ,OAAO,EAAE,OAAO,EAChB,GAAG,EAAE,IAAI,CAAC,KAAK,EACf,MAAM,EAAE,IAAI,CAAC,WAAW,EACxB,SAAS,EAAE,SAAS,EACpB,QAAQ,EAAE,MAAA,OAAO,aAAP,OAAO,cAAP,OAAO,GAAI,IAAI,CAAC,QAAQ,mCAAI,UAAU,CAAC,QAAQ,EACzD,aAAa,EAAE,IAAI,CAAC,aAAa,GAClC,CAAC;QAEF,wCAAwC;QACxC,IAAI,QAAQ,CAAC,OAAO,EAAE;YACpB,KAAkB,UAAoB,EAApB,KAAA,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,EAApB,cAAoB,EAApB,IAAoB,EAAE;gBAAnC,IAAM,GAAG,SAAA;gBACZ,IAAI,OAAO,KAAK,CAAC,GAAG,CAAC,KAAK,QAAQ,EAAE;oBAClC,KAAK,CAAC,GAAG,CAAC,GAAG,IAAA,sCAAwB,EACnC,KAAK,CAAC,GAAG,CAAC,EACV,KAAK,CAAC,IAAI,EACV,OAAO,CACR,CAAC;iBACH;aACF;SACF;QAED,IAAM,SAAS,GAAG,gBAAgB,CAAC,CAAC,CAAC,CACnC,8BAAC,SAAS,4BAAK,KAAK,IAAE,GAAG,EAAE,IAAI,CAAC,QAAQ,IAAI,CAC7C,CAAC,CAAC,CAAC,CACF,8BAAC,SAAS,4BAAK,KAAK,EAAI,CACzB,CAAC;QAEF,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC,CAAC,CACtC,8BAAC,oBAAY,IAAC,QAAQ,EAAE,QAAQ,IAAG,SAAS,CAAgB,CAC7D,CAAC,CAAC,CAAC,CACF,SAAS,CACV,CAAC;IACJ,CAAC;IAxWM,0BAAW,GAAW,UAAU,CAAC;IACjC,0BAAW,GAAG,sBAAa,CAAC;IAsInC;QADC,iBAAQ;;;;kDAOR;IA4NH,qBAAC;CAAA,AA1WD,CAAoC,eAAK,CAAC,SAAS,GA0WlD;AA1WY,wCAAc;AA4W3B;IAAmC,qDAAe;IAAlD;;IAUA,CAAC;IATC,qCAAM,GAAN;QACE,IAAM,KAA4B,IAAI,CAAC,KAAY,EAA5C,cAAc,oBAAA,EAAK,IAAI,2BAAxB,kBAAyB,CAAoB,CAAC;QAEpD,IAAI,OAAO,cAAc,KAAK,UAAU,EAAE;YACxC,OAAO,cAAc,CAAC,IAAI,CAAC,CAAC;SAC7B;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IACH,2BAAC;AAAD,CAAC,AAVD,CAAmC,eAAK,CAAC,SAAS,GAUjD",
         | 
| 10 10 | 
             
                "sourcesContent": [
         | 
| 11 | 
            -
                    "import difference from 'lodash/difference';\nimport omit from 'lodash/omit';\nimport React from 'react';\nimport LazyComponent from './components/LazyComponent';\nimport {\n  filterSchema,\n  loadRenderer,\n  RendererComponent,\n  RendererConfig,\n  RendererEnv,\n  RendererProps,\n  resolveRenderer\n} from './factory';\nimport {asFormItem} from './renderers/Form/Item';\nimport {renderChild, renderChildren} from './Root';\nimport {ScopedContext} from './Scoped';\nimport {Schema, SchemaNode} from './types';\nimport {DebugWrapper} from './utils/debug';\nimport getExprProperties from './utils/filter-schema';\nimport {anyChanged, chainEvents, autobind} from './utils/helper';\nimport {SimpleMap} from './utils/SimpleMap';\n\nimport {bindEvent, dispatchEvent, RendererEvent} from './utils/renderer-event';\nimport {isAlive} from 'mobx-state-tree';\nimport {reaction} from 'mobx';\nimport {resolveVariableAndFilter} from './utils/tpl-builtin';\n\ninterface SchemaRendererProps extends Partial<RendererProps> {\n  schema: Schema;\n  $path: string;\n  env: RendererEnv;\n}\n\nconst defaultOmitList = [\n  'type',\n  'name',\n  '$ref',\n  'className',\n  'data',\n  'children',\n  'ref',\n  'visible',\n  'visibleOn',\n  'hidden',\n  'hiddenOn',\n  'disabled',\n  'disabledOn',\n  'component',\n  'detectField',\n  'defaultValue',\n  'defaultData',\n  'required',\n  'requiredOn',\n  'syncSuperStore',\n  'mode',\n  'body'\n];\n\nconst componentCache: SimpleMap = new SimpleMap();\n\nexport class SchemaRenderer extends React.Component<SchemaRendererProps, any> {\n  static displayName: string = 'Renderer';\n  static contextType = ScopedContext;\n\n  rendererKey = '';\n  renderer: RendererConfig | null;\n  ref: any;\n  cRef: any;\n\n  schema: any;\n  path: string;\n\n  reaction: any;\n  unbindEvent: (() => void) | undefined = undefined;\n\n  constructor(props: SchemaRendererProps) {\n    super(props);\n    this.refFn = this.refFn.bind(this);\n    this.renderChild = this.renderChild.bind(this);\n    this.reRender = this.reRender.bind(this);\n    this.resolveRenderer(this.props);\n\n    this.dispatchEvent = this.dispatchEvent.bind(this);\n\n    // 监听rootStore更新\n    this.reaction = reaction(\n      () =>\n        `${props.rootStore.visibleState[props.schema.id || props.$path]}${\n          props.rootStore.disableState[props.schema.id || props.$path]\n        }`,\n      () => this.forceUpdate()\n    );\n  }\n\n  componentDidMount() {\n    // 这里无法区分监听的是不是广播,所以又bind一下,主要是为了绑广播\n    this.unbindEvent = bindEvent(this.cRef);\n  }\n\n  componentWillUnmount() {\n    this.reaction?.();\n    this.unbindEvent?.();\n  }\n\n  // 限制:只有 schema 除外的 props 变化,或者 schema 里面的某个成员值发生变化才更新。\n  shouldComponentUpdate(nextProps: SchemaRendererProps) {\n    const props = this.props;\n    const list: Array<string> = difference(Object.keys(nextProps), [\n      'schema',\n      'scope'\n    ]);\n\n    if (\n      difference(Object.keys(props), ['schema', 'scope']).length !==\n        list.length ||\n      anyChanged(list, this.props, nextProps)\n    ) {\n      return true;\n    } else {\n      const list: Array<string> = Object.keys(nextProps.schema);\n\n      if (\n        Object.keys(props.schema).length !== list.length ||\n        anyChanged(list, props.schema, nextProps.schema)\n      ) {\n        return true;\n      }\n    }\n\n    return false;\n  }\n\n  resolveRenderer(props: SchemaRendererProps, force = false): any {\n    let schema = props.schema;\n    let path = props.$path;\n\n    if (schema && schema.$ref) {\n      schema = {\n        ...props.resolveDefinitions(schema.$ref),\n        ...schema\n      };\n\n      path = path.replace(/(?!.*\\/).*/, schema.type);\n    }\n\n    if (\n      schema?.type &&\n      (force ||\n        !this.renderer ||\n        this.rendererKey !== `${schema.type}-${schema.$$id}`)\n    ) {\n      const rendererResolver = props.env.rendererResolver || resolveRenderer;\n      this.renderer = rendererResolver(path, schema, props);\n      this.rendererKey = `${schema.type}-${schema.$$id}`;\n    } else {\n      // 自定义组件如果在节点设置了 label name 什么的,就用 formItem 包一层\n      // 至少自动支持了 valdiations, label, description 等逻辑。\n      if (schema.children && !schema.component && schema.asFormItem) {\n        schema.component = PlaceholderComponent;\n        schema.renderChildren = schema.children;\n        delete schema.children;\n      }\n\n      if (\n        schema.component &&\n        !schema.component.wrapedAsFormItem &&\n        schema.asFormItem\n      ) {\n        const cache = componentCache.get(schema.component);\n\n        if (cache) {\n          schema.component = cache;\n        } else {\n          const cache = asFormItem({\n            strictMode: false,\n            ...schema.asFormItem\n          })(schema.component);\n          componentCache.set(schema.component, cache);\n          cache.wrapedAsFormItem = true;\n          schema.component = cache;\n        }\n      }\n    }\n\n    return {path, schema};\n  }\n\n  getWrappedInstance() {\n    return this.cRef;\n  }\n\n  refFn(ref: any) {\n    this.ref = ref;\n  }\n\n  @autobind\n  childRef(ref: any) {\n    while (ref && ref.getWrappedInstance) {\n      ref = ref.getWrappedInstance();\n    }\n\n    this.cRef = ref;\n  }\n\n  async dispatchEvent(\n    e: React.MouseEvent<any>,\n    data: any\n  ): Promise<RendererEvent<any> | void> {\n    return await dispatchEvent(e, this.cRef, this.context, data);\n  }\n\n  renderChild(\n    region: string,\n    node?: SchemaNode,\n    subProps: {\n      data?: object;\n      [propName: string]: any;\n    } = {}\n  ) {\n    let {schema: _, $path: __, env, ...rest} = this.props;\n    let {path: $path} = this.resolveRenderer(this.props);\n\n    const omitList = defaultOmitList.concat();\n    if (this.renderer) {\n      const Component = this.renderer.component;\n      Component.propsList &&\n        omitList.push.apply(omitList, Component.propsList as Array<string>);\n    }\n\n    return renderChild(`${$path}${region ? `/${region}` : ''}`, node || '', {\n      ...omit(rest, omitList),\n      ...subProps,\n      data: subProps.data || rest.data,\n      env: env\n    });\n  }\n\n  reRender() {\n    this.resolveRenderer(this.props, true);\n    this.forceUpdate();\n  }\n\n  render(): JSX.Element | null {\n    let {$path: _, schema: __, rootStore, ...rest} = this.props;\n\n    if (__ == null) {\n      return null;\n    }\n\n    let {path: $path, schema} = this.resolveRenderer(this.props);\n    const theme = this.props.env.theme;\n\n    if (Array.isArray(schema)) {\n      return renderChildren($path, schema as any, rest) as JSX.Element;\n    }\n\n    const detectData =\n      schema &&\n      (schema.detectField === '&' ? rest : rest[schema.detectField || 'data']);\n    const exprProps: any = detectData\n      ? getExprProperties(schema, detectData, undefined, rest)\n      : {};\n\n    // 控制显隐\n    const visible = isAlive(rootStore)\n      ? rootStore.visibleState[schema.id || $path]\n      : undefined;\n    const disable = isAlive(rootStore)\n      ? rootStore.disableState[schema.id || $path]\n      : undefined;\n\n    if (\n      visible === false ||\n      (visible !== true &&\n        exprProps &&\n        (exprProps.hidden ||\n          exprProps.visible === false ||\n          schema.hidden ||\n          schema.visible === false ||\n          rest.hidden ||\n          rest.visible === false))\n    ) {\n      (rest as any).invisible = true;\n    }\n\n    if (schema.children) {\n      return rest.invisible\n        ? null\n        : React.isValidElement(schema.children)\n        ? schema.children\n        : (schema.children as Function)({\n            ...rest,\n            ...exprProps,\n            $path: $path,\n            $schema: schema,\n            render: this.renderChild,\n            forwardedRef: this.refFn\n          });\n    } else if (typeof schema.component === 'function') {\n      const isSFC = !(schema.component.prototype instanceof React.Component);\n      const {\n        data: defaultData,\n        value: defaultValue,\n        activeKey: defaultActiveKey,\n        key: propKey,\n        ...restSchema\n      } = schema;\n      return rest.invisible\n        ? null\n        : React.createElement(schema.component as any, {\n            ...rest,\n            ...restSchema,\n            ...exprProps,\n            defaultData,\n            defaultValue,\n            defaultActiveKey,\n            propKey,\n            $path: $path,\n            $schema: schema,\n            ref: isSFC ? undefined : this.refFn,\n            forwardedRef: isSFC ? this.refFn : undefined,\n            render: this.renderChild\n          });\n    } else if (Object.keys(schema).length === 0) {\n      return null;\n    } else if (!this.renderer) {\n      return rest.invisible ? null : (\n        <LazyComponent\n          {...rest}\n          {...exprProps}\n          getComponent={async () => {\n            const result = await rest.env.loadRenderer(\n              schema,\n              $path,\n              this.reRender\n            );\n            if (result && typeof result === 'function') {\n              return result;\n            } else if (result && React.isValidElement(result)) {\n              return () => result;\n            }\n\n            this.reRender();\n            return () => loadRenderer(schema, $path);\n          }}\n          $path={$path}\n          $schema={schema}\n          retry={this.reRender}\n        />\n      );\n    }\n\n    const renderer = this.renderer as RendererConfig;\n    schema = filterSchema(schema, renderer, rest);\n    const {\n      data: defaultData,\n      value: defaultValue,\n      key: propKey,\n      activeKey: defaultActiveKey,\n      ...restSchema\n    } = schema;\n    const Component = renderer.component;\n\n    // 原来表单项的 visible: false 和 hidden: true 表单项的值和验证是有效的\n    // 而 visibleOn 和 hiddenOn 是无效的,\n    // 这个本来就是个bug,但是已经被广泛使用了\n    // 我只能继续实现这个bug了\n    if (\n      rest.invisible &&\n      (exprProps.hidden ||\n        exprProps.visible === false ||\n        !renderer.isFormItem ||\n        (schema.visible !== false && !schema.hidden))\n    ) {\n      return null;\n    }\n\n    const isClassComponent = Component.prototype?.isReactComponent;\n    const $schema = {...schema, ...exprProps};\n    let props = {\n      ...theme.getRendererConfig(renderer.name),\n      ...restSchema,\n      ...chainEvents(rest, restSchema),\n      ...exprProps,\n      defaultData: restSchema.defaultData ?? defaultData,\n      defaultValue: restSchema.defaultValue ?? defaultValue,\n      defaultActiveKey: defaultActiveKey,\n      propKey: propKey,\n      $path: $path,\n      $schema: $schema,\n      ref: this.refFn,\n      render: this.renderChild,\n      rootStore: rootStore,\n      dispatchEvent: this.dispatchEvent\n    };\n\n    if (disable) {\n      (props as any).disabled = true;\n    }\n\n    // 自动解析变量模式,主要是方便直接引入第三方组件库,无需为了支持变量封装一层\n    if (renderer.autoVar) {\n      for (const key of Object.keys($schema)) {\n        if (typeof props[key] === 'string') {\n          props[key] = resolveVariableAndFilter(\n            props[key],\n            props.data,\n            '| raw'\n          );\n        }\n      }\n    }\n\n    const component = isClassComponent ? (\n      <Component {...props} ref={this.childRef} />\n    ) : (\n      <Component {...props} />\n    );\n\n    return this.props.env.enableAMISDebug ? (\n      <DebugWrapper renderer={renderer}>{component}</DebugWrapper>\n    ) : (\n      component\n    );\n  }\n}\n\nclass PlaceholderComponent extends React.Component {\n  render() {\n    const {renderChildren, ...rest} = this.props as any;\n\n    if (typeof renderChildren === 'function') {\n      return renderChildren(rest);\n    }\n\n    return null;\n  }\n}\n"
         | 
| 11 | 
            +
                    "import difference from 'lodash/difference';\nimport omit from 'lodash/omit';\nimport React from 'react';\nimport LazyComponent from './components/LazyComponent';\nimport {\n  filterSchema,\n  loadRenderer,\n  RendererComponent,\n  RendererConfig,\n  RendererEnv,\n  RendererProps,\n  resolveRenderer\n} from './factory';\nimport {asFormItem} from './renderers/Form/Item';\nimport {renderChild, renderChildren} from './Root';\nimport {ScopedContext} from './Scoped';\nimport {Schema, SchemaNode} from './types';\nimport {DebugWrapper} from './utils/debug';\nimport getExprProperties from './utils/filter-schema';\nimport {anyChanged, chainEvents, autobind} from './utils/helper';\nimport {SimpleMap} from './utils/SimpleMap';\n\nimport {bindEvent, dispatchEvent, RendererEvent} from './utils/renderer-event';\nimport {isAlive} from 'mobx-state-tree';\nimport {reaction} from 'mobx';\nimport {resolveVariableAndFilter} from './utils/tpl-builtin';\n\ninterface SchemaRendererProps extends Partial<RendererProps> {\n  schema: Schema;\n  $path: string;\n  env: RendererEnv;\n}\n\nconst defaultOmitList = [\n  'type',\n  'name',\n  '$ref',\n  'className',\n  'data',\n  'children',\n  'ref',\n  'visible',\n  'visibleOn',\n  'hidden',\n  'hiddenOn',\n  'disabled',\n  'disabledOn',\n  'component',\n  'detectField',\n  'defaultValue',\n  'defaultData',\n  'required',\n  'requiredOn',\n  'syncSuperStore',\n  'mode',\n  'body'\n];\n\nconst componentCache: SimpleMap = new SimpleMap();\n\nexport class SchemaRenderer extends React.Component<SchemaRendererProps, any> {\n  static displayName: string = 'Renderer';\n  static contextType = ScopedContext;\n\n  rendererKey = '';\n  renderer: RendererConfig | null;\n  ref: any;\n  cRef: any;\n\n  schema: any;\n  path: string;\n\n  reaction: any;\n  unbindEvent: (() => void) | undefined = undefined;\n\n  constructor(props: SchemaRendererProps) {\n    super(props);\n    this.refFn = this.refFn.bind(this);\n    this.renderChild = this.renderChild.bind(this);\n    this.reRender = this.reRender.bind(this);\n    this.resolveRenderer(this.props);\n\n    this.dispatchEvent = this.dispatchEvent.bind(this);\n\n    // 监听rootStore更新\n    this.reaction = reaction(\n      () =>\n        `${props.rootStore.visibleState[props.schema.id || props.$path]}${\n          props.rootStore.disableState[props.schema.id || props.$path]\n        }`,\n      () => this.forceUpdate()\n    );\n  }\n\n  componentDidMount() {\n    // 这里无法区分监听的是不是广播,所以又bind一下,主要是为了绑广播\n    this.unbindEvent = bindEvent(this.cRef);\n  }\n\n  componentWillUnmount() {\n    this.reaction?.();\n    this.unbindEvent?.();\n  }\n\n  // 限制:只有 schema 除外的 props 变化,或者 schema 里面的某个成员值发生变化才更新。\n  shouldComponentUpdate(nextProps: SchemaRendererProps) {\n    const props = this.props;\n    const list: Array<string> = difference(Object.keys(nextProps), [\n      'schema',\n      'scope'\n    ]);\n\n    if (\n      difference(Object.keys(props), ['schema', 'scope']).length !==\n        list.length ||\n      anyChanged(list, this.props, nextProps)\n    ) {\n      return true;\n    } else {\n      const list: Array<string> = Object.keys(nextProps.schema);\n\n      if (\n        Object.keys(props.schema).length !== list.length ||\n        anyChanged(list, props.schema, nextProps.schema)\n      ) {\n        return true;\n      }\n    }\n\n    return false;\n  }\n\n  resolveRenderer(props: SchemaRendererProps, force = false): any {\n    let schema = props.schema;\n    let path = props.$path;\n\n    if (schema && schema.$ref) {\n      schema = {\n        ...props.resolveDefinitions(schema.$ref),\n        ...schema\n      };\n\n      path = path.replace(/(?!.*\\/).*/, schema.type);\n    }\n\n    if (\n      schema?.type &&\n      (force ||\n        !this.renderer ||\n        this.rendererKey !== `${schema.type}-${schema.$$id}`)\n    ) {\n      const rendererResolver = props.env.rendererResolver || resolveRenderer;\n      this.renderer = rendererResolver(path, schema, props);\n      this.rendererKey = `${schema.type}-${schema.$$id}`;\n    } else {\n      // 自定义组件如果在节点设置了 label name 什么的,就用 formItem 包一层\n      // 至少自动支持了 valdiations, label, description 等逻辑。\n      if (schema.children && !schema.component && schema.asFormItem) {\n        schema.component = PlaceholderComponent;\n        schema.renderChildren = schema.children;\n        delete schema.children;\n      }\n\n      if (\n        schema.component &&\n        !schema.component.wrapedAsFormItem &&\n        schema.asFormItem\n      ) {\n        const cache = componentCache.get(schema.component);\n\n        if (cache) {\n          schema.component = cache;\n        } else {\n          const cache = asFormItem({\n            strictMode: false,\n            ...schema.asFormItem\n          })(schema.component);\n          componentCache.set(schema.component, cache);\n          cache.wrapedAsFormItem = true;\n          schema.component = cache;\n        }\n      }\n    }\n\n    return {path, schema};\n  }\n\n  getWrappedInstance() {\n    return this.cRef;\n  }\n\n  refFn(ref: any) {\n    this.ref = ref;\n  }\n\n  @autobind\n  childRef(ref: any) {\n    while (ref && ref.getWrappedInstance) {\n      ref = ref.getWrappedInstance();\n    }\n\n    this.cRef = ref;\n  }\n\n  async dispatchEvent(\n    e: React.MouseEvent<any>,\n    data: any\n  ): Promise<RendererEvent<any> | void> {\n    return await dispatchEvent(e, this.cRef, this.context, data);\n  }\n\n  renderChild(\n    region: string,\n    node?: SchemaNode,\n    subProps: {\n      data?: object;\n      [propName: string]: any;\n    } = {}\n  ) {\n    let {schema: _, $path: __, env, ...rest} = this.props;\n    let {path: $path} = this.resolveRenderer(this.props);\n\n    const omitList = defaultOmitList.concat();\n    if (this.renderer) {\n      const Component = this.renderer.component;\n      Component.propsList &&\n        omitList.push.apply(omitList, Component.propsList as Array<string>);\n    }\n\n    return renderChild(`${$path}${region ? `/${region}` : ''}`, node || '', {\n      ...omit(rest, omitList),\n      ...subProps,\n      data: subProps.data || rest.data,\n      env: env\n    });\n  }\n\n  reRender() {\n    this.resolveRenderer(this.props, true);\n    this.forceUpdate();\n  }\n\n  render(): JSX.Element | null {\n    let {$path: _, schema: __, rootStore, ...rest} = this.props;\n\n    if (__ == null) {\n      return null;\n    }\n\n    let {path: $path, schema} = this.resolveRenderer(this.props);\n    const theme = this.props.env.theme;\n\n    if (Array.isArray(schema)) {\n      return renderChildren($path, schema as any, rest) as JSX.Element;\n    }\n\n    const detectData =\n      schema &&\n      (schema.detectField === '&' ? rest : rest[schema.detectField || 'data']);\n    const exprProps: any = detectData\n      ? getExprProperties(schema, detectData, undefined, rest)\n      : {};\n\n    // 控制显隐\n    const visible = isAlive(rootStore)\n      ? rootStore.visibleState[schema.id || $path]\n      : undefined;\n    const disable = isAlive(rootStore)\n      ? rootStore.disableState[schema.id || $path]\n      : undefined;\n\n    if (\n      visible === false ||\n      (visible !== true &&\n        exprProps &&\n        (exprProps.hidden ||\n          exprProps.visible === false ||\n          schema.hidden ||\n          schema.visible === false ||\n          rest.hidden ||\n          rest.visible === false))\n    ) {\n      (rest as any).invisible = true;\n    }\n\n    if (schema.children) {\n      return rest.invisible\n        ? null\n        : React.isValidElement(schema.children)\n        ? schema.children\n        : (schema.children as Function)({\n            ...rest,\n            ...exprProps,\n            $path: $path,\n            $schema: schema,\n            render: this.renderChild,\n            forwardedRef: this.refFn\n          });\n    } else if (typeof schema.component === 'function') {\n      const isSFC = !(schema.component.prototype instanceof React.Component);\n      const {\n        data: defaultData,\n        value: defaultValue,\n        activeKey: defaultActiveKey,\n        key: propKey,\n        ...restSchema\n      } = schema;\n      return rest.invisible\n        ? null\n        : React.createElement(schema.component as any, {\n            ...rest,\n            ...restSchema,\n            ...exprProps,\n            defaultData,\n            defaultValue,\n            defaultActiveKey,\n            propKey,\n            $path: $path,\n            $schema: schema,\n            ref: isSFC ? undefined : this.refFn,\n            forwardedRef: isSFC ? this.refFn : undefined,\n            render: this.renderChild\n          });\n    } else if (Object.keys(schema).length === 0) {\n      return null;\n    } else if (!this.renderer) {\n      return rest.invisible ? null : (\n        <LazyComponent\n          {...rest}\n          {...exprProps}\n          getComponent={async () => {\n            const result = await rest.env.loadRenderer(\n              schema,\n              $path,\n              this.reRender\n            );\n            if (result && typeof result === 'function') {\n              return result;\n            } else if (result && React.isValidElement(result)) {\n              return () => result;\n            }\n\n            this.reRender();\n            return () => loadRenderer(schema, $path);\n          }}\n          $path={$path}\n          $schema={schema}\n          retry={this.reRender}\n        />\n      );\n    }\n\n    const renderer = this.renderer as RendererConfig;\n    schema = filterSchema(schema, renderer, rest);\n    const {\n      data: defaultData,\n      value: defaultValue,\n      key: propKey,\n      activeKey: defaultActiveKey,\n      ...restSchema\n    } = schema;\n    const Component = renderer.component;\n\n    // 原来表单项的 visible: false 和 hidden: true 表单项的值和验证是有效的\n    // 而 visibleOn 和 hiddenOn 是无效的,\n    // 这个本来就是个bug,但是已经被广泛使用了\n    // 我只能继续实现这个bug了\n    if (\n      rest.invisible &&\n      (exprProps.hidden ||\n        exprProps.visible === false ||\n        !renderer.isFormItem ||\n        (schema.visible !== false && !schema.hidden))\n    ) {\n      return null;\n    }\n\n    const isClassComponent = Component.prototype?.isReactComponent;\n    const $schema = {...schema, ...exprProps};\n    let props = {\n      ...theme.getRendererConfig(renderer.name),\n      ...restSchema,\n      ...chainEvents(rest, restSchema),\n      ...exprProps,\n      defaultData: restSchema.defaultData ?? defaultData,\n      defaultValue: restSchema.defaultValue ?? defaultValue,\n      defaultActiveKey: defaultActiveKey,\n      propKey: propKey,\n      $path: $path,\n      $schema: $schema,\n      ref: this.refFn,\n      render: this.renderChild,\n      rootStore: rootStore,\n      disabled: disable ?? rest.disabled ?? restSchema.disabled,\n      dispatchEvent: this.dispatchEvent\n    };\n\n    // 自动解析变量模式,主要是方便直接引入第三方组件库,无需为了支持变量封装一层\n    if (renderer.autoVar) {\n      for (const key of Object.keys($schema)) {\n        if (typeof props[key] === 'string') {\n          props[key] = resolveVariableAndFilter(\n            props[key],\n            props.data,\n            '| raw'\n          );\n        }\n      }\n    }\n\n    const component = isClassComponent ? (\n      <Component {...props} ref={this.childRef} />\n    ) : (\n      <Component {...props} />\n    );\n\n    return this.props.env.enableAMISDebug ? (\n      <DebugWrapper renderer={renderer}>{component}</DebugWrapper>\n    ) : (\n      component\n    );\n  }\n}\n\nclass PlaceholderComponent extends React.Component {\n  render() {\n    const {renderChildren, ...rest} = this.props as any;\n\n    if (typeof renderChildren === 'function') {\n      return renderChildren(rest);\n    }\n\n    return null;\n  }\n}\n"
         | 
| 12 12 | 
             
                ]
         | 
| 13 13 | 
             
            }
         | 
| @@ -30,16 +30,16 @@ var CmptAction = /** @class */ (function () { | |
| 30 30 | 
             
                            }
         | 
| 31 31 | 
             
                            // 数据更新
         | 
| 32 32 | 
             
                            if (action.actionType === 'setValue') {
         | 
| 33 | 
            -
                                if (component.setData) {
         | 
| 34 | 
            -
                                    return [2 /*return*/, component.setData((_b = action.args) === null || _b === void 0 ? void 0 : _b.value)];
         | 
| 33 | 
            +
                                if (component === null || component === void 0 ? void 0 : component.setData) {
         | 
| 34 | 
            +
                                    return [2 /*return*/, component === null || component === void 0 ? void 0 : component.setData((_b = action.args) === null || _b === void 0 ? void 0 : _b.value)];
         | 
| 35 35 | 
             
                                }
         | 
| 36 36 | 
             
                                else {
         | 
| 37 | 
            -
                                    return [2 /*return*/, (_d = (_c = component.props).onChange) === null || _d === void 0 ? void 0 : _d.call(_c, (_e = action.args) === null || _e === void 0 ? void 0 : _e.value)];
         | 
| 37 | 
            +
                                    return [2 /*return*/, (_d = component === null || component === void 0 ? void 0 : (_c = component.props).onChange) === null || _d === void 0 ? void 0 : _d.call(_c, (_e = action.args) === null || _e === void 0 ? void 0 : _e.value)];
         | 
| 38 38 | 
             
                                }
         | 
| 39 39 | 
             
                            }
         | 
| 40 40 | 
             
                            // 刷新
         | 
| 41 41 | 
             
                            if (action.actionType === 'reload') {
         | 
| 42 | 
            -
                                return [2 /*return*/, (_f = component.reload) === null || _f === void 0 ? void 0 : _f.call(component, undefined, action.args)];
         | 
| 42 | 
            +
                                return [2 /*return*/, (_f = component === null || component === void 0 ? void 0 : component.reload) === null || _f === void 0 ? void 0 : _f.call(component, undefined, action.args)];
         | 
| 43 43 | 
             
                            }
         | 
| 44 44 | 
             
                            // 执行组件动作
         | 
| 45 45 | 
             
                            return [2 /*return*/, (_g = component === null || component === void 0 ? void 0 : component.doAction) === null || _g === void 0 ? void 0 : _g.call(component, action, action.args)];
         | 
| @@ -6,8 +6,8 @@ | |
| 6 6 | 
             
                    "/src/actions/CmptAction.ts"
         | 
| 7 7 | 
             
                ],
         | 
| 8 8 | 
             
                "names": [],
         | 
| 9 | 
            -
                "mappings": ";;;;AACA,mCAKkB;AAelB;;;;;;GAMG;AACH;IAAA;IA6CA,CAAC;IA5CO,wBAAG,GAAT,UACE,MAAmB,EACnB,QAAyB,EACzB,KAAyB;;;;;gBAMnB,SAAS,GACb,MAAM,CAAC,WAAW,IAAI,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,KAAK,MAAM,CAAC,WAAW;oBACpE,CAAC,CAAC,MAAA,KAAK,CAAC,OAAO,CAAC,MAAM,0CAAE,gBAAgB,CAAC,MAAM,CAAC,WAAW,CAAC;oBAC5D,CAAC,CAAC,QAAQ,CAAC;gBAEf,UAAU;gBACV,IAAI,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,UAAU,CAAC,EAAE;oBAClD,sBAAO,QAAQ,CAAC,KAAK,CAAC,SAAS,CAAC,UAAU,CACxC,MAAM,CAAC,WAAW,EAClB,MAAM,CAAC,UAAU,KAAK,MAAM,CAC7B,EAAC;iBACH;qBAAM,IAAI,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,UAAU,CAAC,EAAE;oBAC9D,sBAAO,QAAQ,CAAC,KAAK,CAAC,SAAS,CAAC,UAAU,CACxC,MAAM,CAAC,WAAW,EAClB,MAAM,CAAC,UAAU,KAAK,UAAU,CACjC,EAAC;iBACH;gBAED,OAAO;gBACP,IAAI,MAAM,CAAC,UAAU,KAAK,UAAU,EAAE;oBACpC,IAAI,SAAS, | 
| 9 | 
            +
                "mappings": ";;;;AACA,mCAKkB;AAelB;;;;;;GAMG;AACH;IAAA;IA6CA,CAAC;IA5CO,wBAAG,GAAT,UACE,MAAmB,EACnB,QAAyB,EACzB,KAAyB;;;;;gBAMnB,SAAS,GACb,MAAM,CAAC,WAAW,IAAI,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,KAAK,MAAM,CAAC,WAAW;oBACpE,CAAC,CAAC,MAAA,KAAK,CAAC,OAAO,CAAC,MAAM,0CAAE,gBAAgB,CAAC,MAAM,CAAC,WAAW,CAAC;oBAC5D,CAAC,CAAC,QAAQ,CAAC;gBAEf,UAAU;gBACV,IAAI,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,UAAU,CAAC,EAAE;oBAClD,sBAAO,QAAQ,CAAC,KAAK,CAAC,SAAS,CAAC,UAAU,CACxC,MAAM,CAAC,WAAW,EAClB,MAAM,CAAC,UAAU,KAAK,MAAM,CAC7B,EAAC;iBACH;qBAAM,IAAI,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,UAAU,CAAC,EAAE;oBAC9D,sBAAO,QAAQ,CAAC,KAAK,CAAC,SAAS,CAAC,UAAU,CACxC,MAAM,CAAC,WAAW,EAClB,MAAM,CAAC,UAAU,KAAK,UAAU,CACjC,EAAC;iBACH;gBAED,OAAO;gBACP,IAAI,MAAM,CAAC,UAAU,KAAK,UAAU,EAAE;oBACpC,IAAI,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,OAAO,EAAE;wBACtB,sBAAO,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,OAAO,CAAC,MAAA,MAAM,CAAC,IAAI,0CAAE,KAAK,CAAC,EAAC;qBAC/C;yBAAM;wBACL,sBAAO,MAAA,SAAS,aAAT,SAAS,6BAAT,SAAS,CAAE,KAAK,EAAC,QAAQ,mDAAG,MAAA,MAAM,CAAC,IAAI,0CAAE,KAAK,CAAC,EAAC;qBACxD;iBACF;gBAED,KAAK;gBACL,IAAI,MAAM,CAAC,UAAU,KAAK,QAAQ,EAAE;oBAClC,sBAAO,MAAA,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,MAAM,+CAAjB,SAAS,EAAW,SAAS,EAAE,MAAM,CAAC,IAAI,CAAC,EAAC;iBACpD;gBAED,SAAS;gBACT,sBAAO,MAAA,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,QAAQ,+CAAnB,SAAS,EAAa,MAAM,EAAE,MAAM,CAAC,IAAI,CAAC,EAAC;;;KACnD;IACH,iBAAC;AAAD,CAAC,AA7CD,IA6CC;AA7CY,gCAAU;AA+CvB,IAAA,uBAAc,EAAC,WAAW,EAAE,IAAI,UAAU,EAAE,CAAC,CAAC",
         | 
| 10 10 | 
             
                "sourcesContent": [
         | 
| 11 | 
            -
                    "import {RendererEvent} from '../utils/renderer-event';\nimport {\n  RendererAction,\n  ListenerAction,\n  ListenerContext,\n  registerAction\n} from './Action';\n\nexport interface ICmptAction extends ListenerAction {\n  actionType:\n    | 'setValue'\n    | 'show'\n    | 'hidden'\n    | 'enabled'\n    | 'disabled'\n    | 'reload';\n  args: {\n    value?: string | {[key: string]: string};\n  };\n}\n\n/**\n * 组件动作\n *\n * @export\n * @class CmptAction\n * @implements {Action}\n */\nexport class CmptAction implements RendererAction {\n  async run(\n    action: ICmptAction,\n    renderer: ListenerContext,\n    event: RendererEvent<any>\n  ) {\n    /**\n     * 根据唯一ID查找指定组件\n     * 触发组件未指定id或未指定响应组件componentId,则使用触发组件响应\n     */\n    const component =\n      action.componentId && renderer.props.$schema.id !== action.componentId\n        ? event.context.scoped?.getComponentById(action.componentId)\n        : renderer;\n\n    // 显隐&状态控制\n    if (['show', 'hidden'].includes(action.actionType)) {\n      return renderer.props.rootStore.setVisible(\n        action.componentId,\n        action.actionType === 'show'\n      );\n    } else if (['enabled', 'disabled'].includes(action.actionType)) {\n      return renderer.props.rootStore.setDisable(\n        action.componentId,\n        action.actionType === 'disabled'\n      );\n    }\n\n    // 数据更新\n    if (action.actionType === 'setValue') {\n      if (component | 
| 11 | 
            +
                    "import {RendererEvent} from '../utils/renderer-event';\nimport {\n  RendererAction,\n  ListenerAction,\n  ListenerContext,\n  registerAction\n} from './Action';\n\nexport interface ICmptAction extends ListenerAction {\n  actionType:\n    | 'setValue'\n    | 'show'\n    | 'hidden'\n    | 'enabled'\n    | 'disabled'\n    | 'reload';\n  args: {\n    value?: string | {[key: string]: string};\n  };\n}\n\n/**\n * 组件动作\n *\n * @export\n * @class CmptAction\n * @implements {Action}\n */\nexport class CmptAction implements RendererAction {\n  async run(\n    action: ICmptAction,\n    renderer: ListenerContext,\n    event: RendererEvent<any>\n  ) {\n    /**\n     * 根据唯一ID查找指定组件\n     * 触发组件未指定id或未指定响应组件componentId,则使用触发组件响应\n     */\n    const component =\n      action.componentId && renderer.props.$schema.id !== action.componentId\n        ? event.context.scoped?.getComponentById(action.componentId)\n        : renderer;\n\n    // 显隐&状态控制\n    if (['show', 'hidden'].includes(action.actionType)) {\n      return renderer.props.rootStore.setVisible(\n        action.componentId,\n        action.actionType === 'show'\n      );\n    } else if (['enabled', 'disabled'].includes(action.actionType)) {\n      return renderer.props.rootStore.setDisable(\n        action.componentId,\n        action.actionType === 'disabled'\n      );\n    }\n\n    // 数据更新\n    if (action.actionType === 'setValue') {\n      if (component?.setData) {\n        return component?.setData(action.args?.value);\n      } else {\n        return component?.props.onChange?.(action.args?.value);\n      }\n    }\n\n    // 刷新\n    if (action.actionType === 'reload') {\n      return component?.reload?.(undefined, action.args);\n    }\n\n    // 执行组件动作\n    return component?.doAction?.(action, action.args);\n  }\n}\n\nregisterAction('component', new CmptAction());\n"
         | 
| 12 12 | 
             
                ]
         | 
| 13 13 | 
             
            }
         | 
| @@ -60,12 +60,12 @@ export interface WithRemoteConfigSettings { | |
| 60 60 | 
             
                 * 懒加载选项相关,结束懒加载的回调
         | 
| 61 61 | 
             
                 */
         | 
| 62 62 | 
             
                afterDeferLoad?: (item: any, indexes: Array<number>, reponse: Payload, config: any, props: any) => any;
         | 
| 63 | 
            -
                injectedPropsFilter?: ( | 
| 63 | 
            +
                injectedPropsFilter?: (injectedProps: {
         | 
| 64 64 | 
             
                    config: any;
         | 
| 65 65 | 
             
                    loading?: boolean;
         | 
| 66 66 | 
             
                    deferLoad: (term: string) => any;
         | 
| 67 67 | 
             
                    updateConfig: (config: any) => void;
         | 
| 68 | 
            -
                }) => any;
         | 
| 68 | 
            +
                }, props: any) => any;
         | 
| 69 69 | 
             
            }
         | 
| 70 70 | 
             
            export declare function withRemoteConfig<P = any>(config?: WithRemoteConfigSettings): <T extends React.ComponentType<React.ComponentProps<T> & RemoteOptionsProps<P>>>(ComposedComponent: T) => {
         | 
| 71 71 | 
             
                new (props: Omit<JSX.LibraryManagedAttributes<T, Omit<React.ComponentProps<T>, keyof RemoteOptionsProps<P>>> & OutterProps & {
         | 
| @@ -100,6 +100,8 @@ function withRemoteConfig(config) { | |
| 100 100 | 
             
                                props.store.setComponent(_this);
         | 
| 101 101 | 
             
                                _this.deferLoadConfig = _this.deferLoadConfig.bind(_this);
         | 
| 102 102 | 
             
                                (_a = props.remoteConfigRef) === null || _a === void 0 ? void 0 : _a.call(props, _this);
         | 
| 103 | 
            +
                                props.store.setData(props.data);
         | 
| 104 | 
            +
                                _this.syncConfig();
         | 
| 103 105 | 
             
                                return _this;
         | 
| 104 106 | 
             
                            }
         | 
| 105 107 | 
             
                            class_1.prototype.componentDidMount = function () {
         | 
| @@ -107,9 +109,7 @@ function withRemoteConfig(config) { | |
| 107 109 | 
             
                                var env = this.props.env || this.context;
         | 
| 108 110 | 
             
                                var _a = this.props, store = _a.store, data = _a.data;
         | 
| 109 111 | 
             
                                var source = this.props[config.sourceField || 'source'];
         | 
| 110 | 
            -
                                store.setData(data);
         | 
| 111 112 | 
             
                                if ((0, tpl_builtin_1.isPureVariable)(source)) {
         | 
| 112 | 
            -
                                    this.syncConfig();
         | 
| 113 113 | 
             
                                    this.toDispose.push((0, mobx_1.reaction)(function () {
         | 
| 114 114 | 
             
                                        return (0, tpl_builtin_1.resolveVariableAndFilter)(source, store.data, '| raw');
         | 
| 115 115 | 
             
                                    }, function () { return _this.syncConfig(); }));
         | 
| @@ -187,6 +187,9 @@ function withRemoteConfig(config) { | |
| 187 187 | 
             
                                if ((0, tpl_builtin_1.isPureVariable)(source)) {
         | 
| 188 188 | 
             
                                    store.setConfig((0, tpl_builtin_1.resolveVariableAndFilter)(source, data, '| raw') || [], config, 'syncConfig');
         | 
| 189 189 | 
             
                                }
         | 
| 190 | 
            +
                                else if ((0, helper_1.isObject)(source) && !(0, api_1.isEffectiveApi)(source, data)) {
         | 
| 191 | 
            +
                                    store.setConfig(source, config, 'syncConfig');
         | 
| 192 | 
            +
                                }
         | 
| 190 193 | 
             
                            };
         | 
| 191 194 | 
             
                            class_1.prototype.deferLoadConfig = function (item) {
         | 
| 192 195 | 
             
                                var _a, _b;
         | 
| @@ -242,7 +245,7 @@ function withRemoteConfig(config) { | |
| 242 245 | 
             
                                return (react_1.default.createElement(ComposedComponent, (0, tslib_1.__assign)({}, rest, (env && (0, api_1.isEffectiveApi)(autoComplete) && this.loadOptions
         | 
| 243 246 | 
             
                                    ? { loadOptions: this.loadOptions }
         | 
| 244 247 | 
             
                                    : {}), (config.injectedPropsFilter
         | 
| 245 | 
            -
                                    ? config.injectedPropsFilter(injectedProps)
         | 
| 248 | 
            +
                                    ? config.injectedPropsFilter(injectedProps, this.props)
         | 
| 246 249 | 
             
                                    : injectedProps))));
         | 
| 247 250 | 
             
                            };
         | 
| 248 251 | 
             
                            return class_1;
         | 
| @@ -6,8 +6,8 @@ | |
| 6 6 | 
             
                    "/src/components/WithRemoteConfig.tsx"
         | 
| 7 7 | 
             
                ],
         | 
| 8 8 | 
             
                "names": [],
         | 
| 9 | 
            -
                "mappings": ";;;;AAAA;;;GAGG;AACH,6DAA0B;AAC1B,iGAA0D;AAC1D,0EAAuC;AAGvC,yCAAsC;AAEtC,8BAA+C;AAE/C,mDAA+D;AAC/D,oCAKsB;AACtB,oDAI8B;AAC9B,6BAA8B;AAC9B, | 
| 9 | 
            +
                "mappings": "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",
         | 
| 10 10 | 
             
                "sourcesContent": [
         | 
| 11 | 
            -
                    "/**\n * 一个可以拉取远程配置的 HOC\n *\n */\nimport React from 'react';\nimport hoistNonReactStatic from 'hoist-non-react-statics';\nimport debounce from 'lodash/debounce';\nimport {Api, ApiObject, Payload} from '../types';\nimport {SchemaApi, SchemaTokenizeableString} from '../Schema';\nimport {withStore} from './WithStore';\n\nimport {EnvContext, RendererEnv} from '../env';\n\nimport {flow, Instance, isAlive, types} from 'mobx-state-tree';\nimport {\n  buildApi,\n  isEffectiveApi,\n  normalizeApi,\n  normalizeApiResponseData\n} from '../utils/api';\nimport {\n  isPureVariable,\n  resolveVariableAndFilter,\n  tokenize\n} from '../utils/tpl-builtin';\nimport {reaction} from 'mobx';\nimport {createObject, findIndex, findTreeIndex} from '../utils/helper';\n\nexport const Store = types\n  .model('RemoteConfigStore')\n  .props({\n    fetching: false,\n    errorMsg: '',\n    config: types.frozen(),\n    data: types.frozen({})\n  })\n  .actions(self => {\n    let component: any = undefined;\n\n    const load: (\n      env: RendererEnv,\n      api: Api,\n      ctx: any,\n      config: WithRemoteConfigSettings\n    ) => Promise<any> = flow(function* (env, api, ctx, config = {}): any {\n      try {\n        self.fetching = true;\n        const ret: Payload = yield env.fetcher(api, ctx);\n        if (!isAlive(self)) {\n          return;\n        }\n\n        if (ret.ok) {\n          const data = normalizeApiResponseData(ret.data);\n          let options = config.adaptor\n            ? config.adaptor(data, component.props)\n            : data;\n          (self as any).setConfig(options, config, 'remote');\n          config.afterLoad?.(data, self.config, component.props);\n          return ret;\n        } else {\n          throw new Error(ret.msg || 'fetch error');\n        }\n      } catch (e) {\n        isAlive(self) && (self.errorMsg = e.message);\n      } finally {\n        isAlive(self) && (self.fetching = false);\n      }\n    });\n\n    return {\n      setComponent(c: any) {\n        component = c;\n      },\n\n      load,\n      setData(data: any) {\n        self.data = data || {};\n      },\n      setConfig(\n        options: any,\n        config: WithRemoteConfigSettings,\n        motivation?: any\n      ) {\n        if (config.normalizeConfig) {\n          options =\n            config.normalizeConfig(\n              options,\n              self.config,\n              component.props,\n              motivation\n            ) || options;\n        }\n\n        self.config = options;\n      }\n    };\n  });\n\nexport type IStore = Instance<typeof Store>;\n\nexport interface OutterProps {\n  env?: RendererEnv;\n  data: any;\n  source?: SchemaApi | SchemaTokenizeableString;\n  autoComplete?: SchemaApi | SchemaTokenizeableString;\n  deferApi?: SchemaApi;\n  remoteConfigRef?: (\n    instance:\n      | {\n          loadConfig: (ctx?: any) => Promise<any> | void;\n          setConfig: (value: any) => void;\n        }\n      | undefined\n  ) => void;\n}\n\nexport interface RemoteOptionsProps<T = any> {\n  config: T;\n  loading?: boolean;\n  deferLoad: (item: any) => Promise<any>;\n  updateConfig: (value: T, ctx?: any) => void;\n}\n\nexport interface WithRemoteConfigSettings {\n  sourceField?: string;\n\n  /**\n   * 从接口返回数据适配到配置\n   */\n  adaptor?: (json: any, props: any) => any;\n\n  /**\n   * 配置格式化\n   */\n  normalizeConfig?: (\n    config: any,\n    origin: any,\n    props: any,\n    motivation?: any\n  ) => any;\n\n  /**\n   * 请求返回后的回调\n   */\n  afterLoad?: (ret: any, config: any, props: any) => void;\n\n  /**\n   * 懒加载选项相关,开始懒加载的回调\n   */\n  beforeDeferLoad?: (\n    item: any,\n    indexes: Array<number>,\n    config: any,\n    props: any\n  ) => any;\n\n  /**\n   * 懒加载选项相关,结束懒加载的回调\n   */\n  afterDeferLoad?: (\n    item: any,\n    indexes: Array<number>,\n    reponse: Payload,\n    config: any,\n    props: any\n  ) => any;\n\n  injectedPropsFilter?: (props: {\n    config: any;\n    loading?: boolean;\n    deferLoad: (term: string) => any;\n    updateConfig: (config: any) => void;\n  }) => any;\n}\n\nexport function withRemoteConfig<P = any>(\n  config: WithRemoteConfigSettings = {}\n) {\n  return function <\n    T extends React.ComponentType<\n      React.ComponentProps<T> & RemoteOptionsProps<P>\n    >\n  >(ComposedComponent: T) {\n    type FinalOutterProps = JSX.LibraryManagedAttributes<\n      T,\n      Omit<React.ComponentProps<T>, keyof RemoteOptionsProps<P>>\n    > &\n      OutterProps;\n\n    const result = hoistNonReactStatic(\n      withStore(() => Store.create())(\n        class extends React.Component<\n          FinalOutterProps & {\n            store: IStore;\n          }\n        > {\n          static displayName = `WithRemoteConfig(${\n            ComposedComponent.displayName || ComposedComponent.name\n          })`;\n          static ComposedComponent =\n            ComposedComponent as React.ComponentType<T>;\n          static contextType = EnvContext;\n          toDispose: Array<() => void> = [];\n\n          loadOptions = debounce(this.loadAutoComplete.bind(this), 250, {\n            trailing: true,\n            leading: false\n          });\n\n          constructor(\n            props: FinalOutterProps & {\n              store: IStore;\n            }\n          ) {\n            super(props);\n\n            this.setConfig = this.setConfig.bind(this);\n            props.store.setComponent(this);\n            this.deferLoadConfig = this.deferLoadConfig.bind(this);\n            props.remoteConfigRef?.(this);\n          }\n\n          componentDidMount() {\n            const env: RendererEnv = this.props.env || this.context;\n            const {store, data} = this.props;\n            const source = (this.props as any)[config.sourceField || 'source'];\n\n            store.setData(data);\n\n            if (isPureVariable(source)) {\n              this.syncConfig();\n              this.toDispose.push(\n                reaction(\n                  () =>\n                    resolveVariableAndFilter(\n                      source as string,\n                      store.data,\n                      '| raw'\n                    ),\n                  () => this.syncConfig()\n                )\n              );\n            } else if (env && isEffectiveApi(source, data)) {\n              this.loadConfig();\n              (source as ApiObject).autoRefresh !== false &&\n                this.toDispose.push(\n                  reaction(\n                    () => {\n                      const api = normalizeApi(source as string);\n                      return api.trackExpression\n                        ? tokenize(api.trackExpression, store.data)\n                        : buildApi(api, store.data, {\n                            ignoreData: true\n                          }).url;\n                    },\n                    () => this.loadConfig()\n                  )\n                );\n            }\n          }\n\n          componentDidUpdate(prevProps: any) {\n            const props = this.props;\n\n            if (props.data !== prevProps.data) {\n              props.store.setData(props.data);\n            }\n          }\n\n          componentWillUnmount() {\n            this.toDispose.forEach(fn => fn());\n            this.toDispose = [];\n\n            this.props.remoteConfigRef?.(undefined);\n            this.loadOptions.cancel();\n          }\n\n          async loadConfig(ctx = this.props.data) {\n            const env: RendererEnv = this.props.env || this.context;\n            const {store} = this.props;\n            const source = (this.props as any)[config.sourceField || 'source'];\n\n            if (env && isEffectiveApi(source, ctx)) {\n              await store.load(env, source, ctx, config);\n            }\n          }\n\n          loadAutoComplete(input: string) {\n            const env: RendererEnv = this.props.env || this.context;\n            const {autoComplete, data, store} = this.props;\n\n            if (!env || !env.fetcher) {\n              throw new Error('fetcher is required');\n            }\n\n            const ctx = createObject(data, {\n              term: input,\n              value: input\n            });\n\n            if (!isEffectiveApi(autoComplete, ctx)) {\n              return Promise.resolve({\n                options: []\n              });\n            }\n\n            return store.load(env, autoComplete, ctx, config);\n          }\n\n          setConfig(value: any, ctx?: any) {\n            const {store} = this.props;\n            store.setConfig(value, config, ctx);\n          }\n\n          syncConfig() {\n            const {store, data} = this.props;\n            const source = (this.props as any)[config.sourceField || 'source'];\n\n            if (isPureVariable(source)) {\n              store.setConfig(\n                resolveVariableAndFilter(source as string, data, '| raw') || [],\n                config,\n                'syncConfig'\n              );\n            }\n          }\n\n          async deferLoadConfig(item: any) {\n            const {store, data, deferApi} = this.props;\n            const source = (this.props as any)[config.sourceField || 'source'];\n            const env: RendererEnv = this.props.env || this.context;\n            const indexes = findTreeIndex(store.config, a => a === item)!;\n\n            const ret = config.beforeDeferLoad?.(\n              item,\n              indexes,\n              store.config,\n              this.props\n            );\n\n            ret && store.setConfig(ret, config, 'before-defer-load');\n            let response: Payload;\n            try {\n              if (!isEffectiveApi(item.deferApi || deferApi || source)) {\n                throw new Error('deferApi is required');\n              }\n\n              response = await env.fetcher(\n                item.deferApi || deferApi || source,\n                createObject(data, item)\n              );\n            } catch (e) {\n              response = {\n                ok: false,\n                msg: e.message,\n                status: 500,\n                data: undefined\n              };\n            }\n            const ret2 = config.afterDeferLoad?.(\n              item,\n              indexes, // 只能假定还是那个 index 了\n              response,\n              store.config,\n              this.props\n            );\n            ret2 && store.setConfig(ret2, config, 'after-defer-load');\n          }\n\n          render() {\n            const store = this.props.store;\n            const env: RendererEnv = this.props.env || this.context;\n            const injectedProps: RemoteOptionsProps<P> = {\n              config: store.config,\n              loading: store.fetching,\n              deferLoad: this.deferLoadConfig,\n              updateConfig: this.setConfig\n            };\n            const {remoteConfigRef, autoComplete, ...rest} = this.props;\n\n            return (\n              <ComposedComponent\n                {...(rest as JSX.LibraryManagedAttributes<\n                  T,\n                  React.ComponentProps<T>\n                >)}\n                {...(env && isEffectiveApi(autoComplete) && this.loadOptions\n                  ? {loadOptions: this.loadOptions}\n                  : {})}\n                {...(config.injectedPropsFilter\n                  ? config.injectedPropsFilter(injectedProps)\n                  : injectedProps)}\n              />\n            );\n          }\n        }\n      ),\n      ComposedComponent\n    );\n\n    return result as typeof result & {\n      ComposedComponent: T;\n    };\n  };\n}\n"
         | 
| 11 | 
            +
                    "/**\n * 一个可以拉取远程配置的 HOC\n *\n */\nimport React from 'react';\nimport hoistNonReactStatic from 'hoist-non-react-statics';\nimport debounce from 'lodash/debounce';\nimport {Api, ApiObject, Payload} from '../types';\nimport {SchemaApi, SchemaTokenizeableString} from '../Schema';\nimport {withStore} from './WithStore';\n\nimport {EnvContext, RendererEnv} from '../env';\n\nimport {flow, Instance, isAlive, types} from 'mobx-state-tree';\nimport {\n  buildApi,\n  isEffectiveApi,\n  normalizeApi,\n  normalizeApiResponseData\n} from '../utils/api';\nimport {\n  isPureVariable,\n  resolveVariableAndFilter,\n  tokenize\n} from '../utils/tpl-builtin';\nimport {reaction} from 'mobx';\nimport {\n  createObject,\n  findIndex,\n  findTreeIndex,\n  isObject\n} from '../utils/helper';\n\nexport const Store = types\n  .model('RemoteConfigStore')\n  .props({\n    fetching: false,\n    errorMsg: '',\n    config: types.frozen(),\n    data: types.frozen({})\n  })\n  .actions(self => {\n    let component: any = undefined;\n\n    const load: (\n      env: RendererEnv,\n      api: Api,\n      ctx: any,\n      config: WithRemoteConfigSettings\n    ) => Promise<any> = flow(function* (env, api, ctx, config = {}): any {\n      try {\n        self.fetching = true;\n        const ret: Payload = yield env.fetcher(api, ctx);\n        if (!isAlive(self)) {\n          return;\n        }\n\n        if (ret.ok) {\n          const data = normalizeApiResponseData(ret.data);\n          let options = config.adaptor\n            ? config.adaptor(data, component.props)\n            : data;\n          (self as any).setConfig(options, config, 'remote');\n          config.afterLoad?.(data, self.config, component.props);\n          return ret;\n        } else {\n          throw new Error(ret.msg || 'fetch error');\n        }\n      } catch (e) {\n        isAlive(self) && (self.errorMsg = e.message);\n      } finally {\n        isAlive(self) && (self.fetching = false);\n      }\n    });\n\n    return {\n      setComponent(c: any) {\n        component = c;\n      },\n\n      load,\n      setData(data: any) {\n        self.data = data || {};\n      },\n      setConfig(\n        options: any,\n        config: WithRemoteConfigSettings,\n        motivation?: any\n      ) {\n        if (config.normalizeConfig) {\n          options =\n            config.normalizeConfig(\n              options,\n              self.config,\n              component.props,\n              motivation\n            ) || options;\n        }\n\n        self.config = options;\n      }\n    };\n  });\n\nexport type IStore = Instance<typeof Store>;\n\nexport interface OutterProps {\n  env?: RendererEnv;\n  data: any;\n  source?: SchemaApi | SchemaTokenizeableString;\n  autoComplete?: SchemaApi | SchemaTokenizeableString;\n  deferApi?: SchemaApi;\n  remoteConfigRef?: (\n    instance:\n      | {\n          loadConfig: (ctx?: any) => Promise<any> | void;\n          setConfig: (value: any) => void;\n        }\n      | undefined\n  ) => void;\n}\n\nexport interface RemoteOptionsProps<T = any> {\n  config: T;\n  loading?: boolean;\n  deferLoad: (item: any) => Promise<any>;\n  updateConfig: (value: T, ctx?: any) => void;\n}\n\nexport interface WithRemoteConfigSettings {\n  sourceField?: string;\n\n  /**\n   * 从接口返回数据适配到配置\n   */\n  adaptor?: (json: any, props: any) => any;\n\n  /**\n   * 配置格式化\n   */\n  normalizeConfig?: (\n    config: any,\n    origin: any,\n    props: any,\n    motivation?: any\n  ) => any;\n\n  /**\n   * 请求返回后的回调\n   */\n  afterLoad?: (ret: any, config: any, props: any) => void;\n\n  /**\n   * 懒加载选项相关,开始懒加载的回调\n   */\n  beforeDeferLoad?: (\n    item: any,\n    indexes: Array<number>,\n    config: any,\n    props: any\n  ) => any;\n\n  /**\n   * 懒加载选项相关,结束懒加载的回调\n   */\n  afterDeferLoad?: (\n    item: any,\n    indexes: Array<number>,\n    reponse: Payload,\n    config: any,\n    props: any\n  ) => any;\n\n  injectedPropsFilter?: (\n    injectedProps: {\n      config: any;\n      loading?: boolean;\n      deferLoad: (term: string) => any;\n      updateConfig: (config: any) => void;\n    },\n    props: any\n  ) => any;\n}\n\nexport function withRemoteConfig<P = any>(\n  config: WithRemoteConfigSettings = {}\n) {\n  return function <\n    T extends React.ComponentType<\n      React.ComponentProps<T> & RemoteOptionsProps<P>\n    >\n  >(ComposedComponent: T) {\n    type FinalOutterProps = JSX.LibraryManagedAttributes<\n      T,\n      Omit<React.ComponentProps<T>, keyof RemoteOptionsProps<P>>\n    > &\n      OutterProps;\n\n    const result = hoistNonReactStatic(\n      withStore(() => Store.create())(\n        class extends React.Component<\n          FinalOutterProps & {\n            store: IStore;\n          }\n        > {\n          static displayName = `WithRemoteConfig(${\n            ComposedComponent.displayName || ComposedComponent.name\n          })`;\n          static ComposedComponent =\n            ComposedComponent as React.ComponentType<T>;\n          static contextType = EnvContext;\n          toDispose: Array<() => void> = [];\n\n          loadOptions = debounce(this.loadAutoComplete.bind(this), 250, {\n            trailing: true,\n            leading: false\n          });\n\n          constructor(\n            props: FinalOutterProps & {\n              store: IStore;\n            }\n          ) {\n            super(props);\n\n            this.setConfig = this.setConfig.bind(this);\n            props.store.setComponent(this);\n            this.deferLoadConfig = this.deferLoadConfig.bind(this);\n            props.remoteConfigRef?.(this);\n            props.store.setData(props.data);\n            this.syncConfig();\n          }\n\n          componentDidMount() {\n            const env: RendererEnv = this.props.env || this.context;\n            const {store, data} = this.props;\n            const source = (this.props as any)[config.sourceField || 'source'];\n\n            if (isPureVariable(source)) {\n              this.toDispose.push(\n                reaction(\n                  () =>\n                    resolveVariableAndFilter(\n                      source as string,\n                      store.data,\n                      '| raw'\n                    ),\n                  () => this.syncConfig()\n                )\n              );\n            } else if (env && isEffectiveApi(source, data)) {\n              this.loadConfig();\n              (source as ApiObject).autoRefresh !== false &&\n                this.toDispose.push(\n                  reaction(\n                    () => {\n                      const api = normalizeApi(source as string);\n                      return api.trackExpression\n                        ? tokenize(api.trackExpression, store.data)\n                        : buildApi(api, store.data, {\n                            ignoreData: true\n                          }).url;\n                    },\n                    () => this.loadConfig()\n                  )\n                );\n            }\n          }\n\n          componentDidUpdate(prevProps: any) {\n            const props = this.props;\n\n            if (props.data !== prevProps.data) {\n              props.store.setData(props.data);\n            }\n          }\n\n          componentWillUnmount() {\n            this.toDispose.forEach(fn => fn());\n            this.toDispose = [];\n\n            this.props.remoteConfigRef?.(undefined);\n            this.loadOptions.cancel();\n          }\n\n          async loadConfig(ctx = this.props.data) {\n            const env: RendererEnv = this.props.env || this.context;\n            const {store} = this.props;\n            const source = (this.props as any)[config.sourceField || 'source'];\n\n            if (env && isEffectiveApi(source, ctx)) {\n              await store.load(env, source, ctx, config);\n            }\n          }\n\n          loadAutoComplete(input: string) {\n            const env: RendererEnv = this.props.env || this.context;\n            const {autoComplete, data, store} = this.props;\n\n            if (!env || !env.fetcher) {\n              throw new Error('fetcher is required');\n            }\n\n            const ctx = createObject(data, {\n              term: input,\n              value: input\n            });\n\n            if (!isEffectiveApi(autoComplete, ctx)) {\n              return Promise.resolve({\n                options: []\n              });\n            }\n\n            return store.load(env, autoComplete, ctx, config);\n          }\n\n          setConfig(value: any, ctx?: any) {\n            const {store} = this.props;\n            store.setConfig(value, config, ctx);\n          }\n\n          syncConfig() {\n            const {store, data} = this.props;\n            const source = (this.props as any)[config.sourceField || 'source'];\n\n            if (isPureVariable(source)) {\n              store.setConfig(\n                resolveVariableAndFilter(source as string, data, '| raw') || [],\n                config,\n                'syncConfig'\n              );\n            } else if (isObject(source) && !isEffectiveApi(source, data)) {\n              store.setConfig(source, config, 'syncConfig');\n            }\n          }\n\n          async deferLoadConfig(item: any) {\n            const {store, data, deferApi} = this.props;\n            const source = (this.props as any)[config.sourceField || 'source'];\n            const env: RendererEnv = this.props.env || this.context;\n            const indexes = findTreeIndex(store.config, a => a === item)!;\n\n            const ret = config.beforeDeferLoad?.(\n              item,\n              indexes,\n              store.config,\n              this.props\n            );\n\n            ret && store.setConfig(ret, config, 'before-defer-load');\n            let response: Payload;\n            try {\n              if (!isEffectiveApi(item.deferApi || deferApi || source)) {\n                throw new Error('deferApi is required');\n              }\n\n              response = await env.fetcher(\n                item.deferApi || deferApi || source,\n                createObject(data, item)\n              );\n            } catch (e) {\n              response = {\n                ok: false,\n                msg: e.message,\n                status: 500,\n                data: undefined\n              };\n            }\n            const ret2 = config.afterDeferLoad?.(\n              item,\n              indexes, // 只能假定还是那个 index 了\n              response,\n              store.config,\n              this.props\n            );\n            ret2 && store.setConfig(ret2, config, 'after-defer-load');\n          }\n\n          render() {\n            const store = this.props.store;\n            const env: RendererEnv = this.props.env || this.context;\n            const injectedProps: RemoteOptionsProps<P> = {\n              config: store.config,\n              loading: store.fetching,\n              deferLoad: this.deferLoadConfig,\n              updateConfig: this.setConfig\n            };\n            const {remoteConfigRef, autoComplete, ...rest} = this.props;\n\n            return (\n              <ComposedComponent\n                {...(rest as JSX.LibraryManagedAttributes<\n                  T,\n                  React.ComponentProps<T>\n                >)}\n                {...(env && isEffectiveApi(autoComplete) && this.loadOptions\n                  ? {loadOptions: this.loadOptions}\n                  : {})}\n                {...(config.injectedPropsFilter\n                  ? config.injectedPropsFilter(injectedProps, this.props)\n                  : injectedProps)}\n              />\n            );\n          }\n        }\n      ),\n      ComposedComponent\n    );\n\n    return result as typeof result & {\n      ComposedComponent: T;\n    };\n  };\n}\n"
         | 
| 12 12 | 
             
                ]
         | 
| 13 13 | 
             
            }
         | 
| @@ -0,0 +1,10 @@ | |
| 1 | 
            +
            import React from 'react';
         | 
| 2 | 
            +
            import { ClassNamesFn } from '../../theme';
         | 
| 3 | 
            +
            export interface ItemActionsProps {
         | 
| 4 | 
            +
                classnames: ClassNamesFn;
         | 
| 5 | 
            +
                children?: JSX.Element;
         | 
| 6 | 
            +
                dom: HTMLTableRowElement;
         | 
| 7 | 
            +
            }
         | 
| 8 | 
            +
            export default class ItemActionsWrapper extends React.Component<ItemActionsProps, {}> {
         | 
| 9 | 
            +
                render(): JSX.Element | undefined;
         | 
| 10 | 
            +
            }
         | 
| @@ -0,0 +1,25 @@ | |
| 1 | 
            +
            "use strict";
         | 
| 2 | 
            +
            Object.defineProperty(exports, "__esModule", { value: true });
         | 
| 3 | 
            +
            var tslib_1 = require("tslib");
         | 
| 4 | 
            +
            var react_1 = (0, tslib_1.__importDefault)(require("react"));
         | 
| 5 | 
            +
            var ItemActionsWrapper = /** @class */ (function (_super) {
         | 
| 6 | 
            +
                (0, tslib_1.__extends)(ItemActionsWrapper, _super);
         | 
| 7 | 
            +
                function ItemActionsWrapper() {
         | 
| 8 | 
            +
                    return _super !== null && _super.apply(this, arguments) || this;
         | 
| 9 | 
            +
                }
         | 
| 10 | 
            +
                ItemActionsWrapper.prototype.render = function () {
         | 
| 11 | 
            +
                    var _a, _b;
         | 
| 12 | 
            +
                    var _c = this.props, cx = _c.classnames, children = _c.children, dom = _c.dom;
         | 
| 13 | 
            +
                    if (!dom) {
         | 
| 14 | 
            +
                        return;
         | 
| 15 | 
            +
                    }
         | 
| 16 | 
            +
                    var frame = (_b = (_a = dom.closest('table')) === null || _a === void 0 ? void 0 : _a.parentElement) === null || _b === void 0 ? void 0 : _b.parentElement;
         | 
| 17 | 
            +
                    var rect = dom.getBoundingClientRect();
         | 
| 18 | 
            +
                    var height = rect.height;
         | 
| 19 | 
            +
                    var top = rect.top - frame.getBoundingClientRect().top;
         | 
| 20 | 
            +
                    return (react_1.default.createElement("div", { className: cx('Table-itemActions-wrap'), style: { top: top + 'px', height: height + 'px' } }, children));
         | 
| 21 | 
            +
                };
         | 
| 22 | 
            +
                return ItemActionsWrapper;
         | 
| 23 | 
            +
            }(react_1.default.Component));
         | 
| 24 | 
            +
            exports.default = ItemActionsWrapper;
         | 
| 25 | 
            +
            //# sourceMappingURL=./components/table/ItemActionsWrapper.js.map
         | 
| @@ -0,0 +1,13 @@ | |
| 1 | 
            +
            {
         | 
| 2 | 
            +
                "version": 3,
         | 
| 3 | 
            +
                "file": "ItemActionsWrapper.js",
         | 
| 4 | 
            +
                "sourceRoot": "",
         | 
| 5 | 
            +
                "sources": [
         | 
| 6 | 
            +
                    "/src/components/table/ItemActionsWrapper.tsx"
         | 
| 7 | 
            +
                ],
         | 
| 8 | 
            +
                "names": [],
         | 
| 9 | 
            +
                "mappings": ";;;AAAA,6DAA0B;AAU1B;IAAgD,mDAAqC;IAArF;;IAqBA,CAAC;IApBC,mCAAM,GAAN;;QACQ,IAAA,KAAkC,IAAI,CAAC,KAAK,EAA/B,EAAE,gBAAA,EAAE,QAAQ,cAAA,EAAE,GAAG,SAAc,CAAC;QACnD,IAAI,CAAC,GAAG,EAAE;YACR,OAAO;SACR;QAED,IAAM,KAAK,GAAG,MAAA,MAAA,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,0CAAE,aAAa,0CAAE,aAA4B,CAAC;QAEhF,IAAM,IAAI,GAAG,GAAG,CAAC,qBAAqB,EAAE,CAAC;QACzC,IAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAC3B,IAAM,GAAG,GAAG,IAAI,CAAC,GAAG,GAAG,KAAK,CAAC,qBAAqB,EAAE,CAAC,GAAG,CAAC;QAEzD,OAAO,CACL,uCACE,SAAS,EAAE,EAAE,CAAC,wBAAwB,CAAC,EACvC,KAAK,EAAE,EAAC,GAAG,EAAE,GAAG,GAAG,IAAI,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI,EAAC,IAC9C,QAAQ,CACL,CACP,CAAC;IACJ,CAAC;IACH,yBAAC;AAAD,CAAC,AArBD,CAAgD,eAAK,CAAC,SAAS,GAqB9D",
         | 
| 10 | 
            +
                "sourcesContent": [
         | 
| 11 | 
            +
                    "import React from 'react';\n\nimport {ClassNamesFn} from '../../theme';\n\nexport interface ItemActionsProps {\n  classnames: ClassNamesFn;\n  children?: JSX.Element;\n  dom: HTMLTableRowElement;\n}\n\nexport default class ItemActionsWrapper extends React.Component<ItemActionsProps, {}> {\n  render() {\n    const {classnames: cx, children, dom} = this.props;\n    if (!dom) {\n      return;\n    }\n\n    const frame = dom.closest('table')?.parentElement?.parentElement as HTMLElement;\n\n    const rect = dom.getBoundingClientRect();\n    const height = rect.height;\n    const top = rect.top - frame.getBoundingClientRect().top;\n\n    return (\n      <div\n        className={cx('Table-itemActions-wrap')}\n        style={{top: top + 'px', height: height + 'px'}}>\n        {children}\n      </div>\n    );\n  }\n}\n"
         | 
| 12 | 
            +
                ]
         | 
| 13 | 
            +
            }
         |