amis 1.9.1-beta.13 → 1.9.1-beta.19
Sign up to get free protection for your applications and to get access to all the features.
- package/lib/components/Select.js +2 -2
- package/lib/components/Select.js.map +2 -2
- package/lib/components/formula/Editor.d.ts +44 -40
- package/lib/components/formula/Editor.js +16 -5
- package/lib/components/formula/Editor.js.map +2 -2
- package/lib/components/formula/Picker.d.ts +88 -41
- package/lib/components/formula/Picker.js +49 -22
- package/lib/components/formula/Picker.js.map +2 -2
- package/lib/index.js +1 -1
- package/lib/locale/zh-CN.js +1 -1
- package/lib/locale/zh-CN.js.map +2 -2
- package/lib/renderers/Action.js +2 -1
- package/lib/renderers/Action.js.map +2 -2
- package/lib/renderers/CRUD.js +3 -0
- package/lib/renderers/CRUD.js.map +2 -2
- package/lib/renderers/Form/InputFormula.d.ts +6 -2
- package/lib/renderers/Form/InputFormula.js +4 -3
- package/lib/renderers/Form/InputFormula.js.map +2 -2
- package/lib/renderers/Form/InputTree.d.ts +4 -0
- package/lib/renderers/Form/InputTree.js +2 -2
- package/lib/renderers/Form/InputTree.js.map +2 -2
- package/lib/renderers/Table/index.js +2 -1
- package/lib/renderers/Table/index.js.map +2 -2
- package/lib/renderers/Tabs.d.ts +6 -2
- package/lib/renderers/Tabs.js +21 -0
- package/lib/renderers/Tabs.js.map +2 -2
- package/lib/themes/ang-ie11.css +45 -6
- package/lib/themes/ang.css +40 -6
- package/lib/themes/ang.css.map +1 -1
- package/lib/themes/antd-ie11.css +45 -6
- package/lib/themes/antd.css +40 -6
- package/lib/themes/antd.css.map +1 -1
- package/lib/themes/cxd-ie11.css +45 -6
- package/lib/themes/cxd.css +40 -6
- package/lib/themes/cxd.css.map +1 -1
- package/lib/themes/dark-ie11.css +45 -6
- package/lib/themes/dark.css +40 -6
- package/lib/themes/dark.css.map +1 -1
- package/lib/themes/default-ie11.css +45 -6
- package/lib/themes/default.css +40 -6
- package/lib/themes/default.css.map +1 -1
- package/lib/utils/formula.js +4 -3
- package/lib/utils/formula.js.map +2 -2
- package/package.json +2 -2
- package/schema.json +41 -38
- package/scss/components/_formula.scss +45 -4
- package/scss/components/form/_checks.scss +47 -44
- package/scss/components/form/_select.scss +3 -2
- package/sdk/ang-ie11.css +52 -6
- package/sdk/ang.css +47 -6
- package/sdk/antd-ie11.css +52 -6
- package/sdk/antd.css +47 -6
- 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/cxd-ie11.css +52 -6
- package/sdk/cxd.css +47 -6
- package/sdk/dark-ie11.css +52 -6
- package/sdk/dark.css +47 -6
- 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-ie11.css +52 -6
- package/sdk/sdk.css +47 -6
- package/sdk/sdk.js +1339 -1339
- 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/components/Select.tsx +3 -6
- package/src/components/formula/Editor.tsx +51 -23
- package/src/components/formula/Picker.tsx +67 -9
- package/src/locale/zh-CN.ts +1 -1
- package/src/renderers/Action.tsx +2 -1
- package/src/renderers/CRUD.tsx +2 -0
- package/src/renderers/Form/InputFormula.tsx +11 -3
- package/src/renderers/Form/InputTree.tsx +7 -0
- package/src/renderers/Table/index.tsx +9 -7
- package/src/renderers/Tabs.tsx +33 -3
- package/src/utils/formula.ts +5 -3
package/lib/renderers/Tabs.d.ts
CHANGED
@@ -2,7 +2,7 @@ import React from 'react';
|
|
2
2
|
import { RendererProps } from '../factory';
|
3
3
|
import { Action } from '../types';
|
4
4
|
import { TabsMode } from '../components/Tabs';
|
5
|
-
import { BaseSchema, SchemaClassName, SchemaCollection, SchemaIcon } from '../Schema';
|
5
|
+
import { BaseSchema, SchemaClassName, SchemaCollection, SchemaIcon, SchemaExpression } from '../Schema';
|
6
6
|
import { ActionSchema } from './Action';
|
7
7
|
import { FormSchemaHorizontal } from './Form/index';
|
8
8
|
import { IScopedContext } from '../Scoped';
|
@@ -148,8 +148,12 @@ export interface TabsSchema extends BaseSchema {
|
|
148
148
|
* 自定义增加按钮文案
|
149
149
|
*/
|
150
150
|
addBtnText?: string;
|
151
|
+
/**
|
152
|
+
* 默认激活的选项卡,hash值或索引值,支持使用表达式
|
153
|
+
*/
|
154
|
+
activeKey?: SchemaExpression;
|
151
155
|
}
|
152
|
-
export interface TabsProps extends RendererProps, Omit<TabsSchema, 'className' | 'contentClassName'> {
|
156
|
+
export interface TabsProps extends RendererProps, Omit<TabsSchema, 'className' | 'contentClassName' | 'activeKey'> {
|
153
157
|
activeKey?: string | number;
|
154
158
|
location?: any;
|
155
159
|
tabRender?: (tab: TabSchema, props: TabsProps, index: number) => JSX.Element;
|
package/lib/renderers/Tabs.js
CHANGED
@@ -89,6 +89,8 @@ var Tabs = /** @class */ (function (_super) {
|
|
89
89
|
var _a, _b, _c;
|
90
90
|
var props = this.props;
|
91
91
|
var localTabs = this.state.localTabs;
|
92
|
+
var prevActiveKey = (0, tpl_builtin_1.tokenize)(preProps.defaultActiveKey, preProps.data);
|
93
|
+
var activeKey = (0, tpl_builtin_1.tokenize)(props.defaultActiveKey, props.data);
|
92
94
|
// 响应外部修改 tabs
|
93
95
|
var isTabsModified = (0, helper_1.isObjectShallowModified)({
|
94
96
|
tabs: props.tabs,
|
@@ -145,6 +147,25 @@ var Tabs = /** @class */ (function (_super) {
|
|
145
147
|
activeKey: (this.activeKey = activeKey_1)
|
146
148
|
});
|
147
149
|
}
|
150
|
+
else if (prevActiveKey !== activeKey) {
|
151
|
+
if (activeKey == null) {
|
152
|
+
return;
|
153
|
+
}
|
154
|
+
var newActivedKey = null;
|
155
|
+
var tab = (0, find_1.default)(localTabs, function (item) { return item.hash === activeKey; });
|
156
|
+
if (tab) {
|
157
|
+
newActivedKey = tab.hash;
|
158
|
+
}
|
159
|
+
else if (typeof activeKey === 'number' && localTabs[activeKey]) {
|
160
|
+
newActivedKey = activeKey;
|
161
|
+
}
|
162
|
+
if (newActivedKey) {
|
163
|
+
this.setState({
|
164
|
+
prevKey: prevActiveKey,
|
165
|
+
activeKey: (this.activeKey = newActivedKey)
|
166
|
+
});
|
167
|
+
}
|
168
|
+
}
|
148
169
|
this.autoJumpToNeighbour(this.activeKey);
|
149
170
|
var _e = this.props, name = _e.name, value = _e.value, onChange = _e.onChange, source = _e.source, data = _e.data;
|
150
171
|
// 如果没有配置 name ,说明不需要同步表单值
|
@@ -6,8 +6,8 @@
|
|
6
6
|
"/src/renderers/Tabs.tsx"
|
7
7
|
],
|
8
8
|
"names": [],
|
9
|
-
"mappings": "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",
|
9
|
+
"mappings": ";;;;AAAA,6DAA0B;AAC1B,sCAAmD;AAEnD,kEAA+B;AAC/B,0CAQyB;AACzB,4EAAyC;AACzC,2CAAgE;AAUhE,oCAAoC;AACpC,oDAI8B;AAE9B,oCAA+C;AAC/C,oCAAwD;AAkMxD;IAAkC,qCAAqC;IAYrE,cAAY,KAAgB;QAA5B,YACE,kBAAM,KAAK,CAAC,SA6Bb;QAhCD,qBAAe,GAAW,CAAC,CAAC;QAK1B,IAAM,QAAQ,GAAG,KAAK,CAAC,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC;QAC5C,IAAA,IAAI,GAAkB,KAAK,KAAvB,EAAE,MAAM,GAAU,KAAK,OAAf,EAAE,IAAI,GAAI,KAAK,KAAT,CAAU;QACnC,IAAI,SAAS,GAAQ,CAAC,CAAC;QAEvB,IAAI,OAAO,KAAK,CAAC,SAAS,KAAK,WAAW,EAAE;YAC1C,SAAS,GAAG,KAAK,CAAC,SAAS,CAAC;SAC7B;aAAM,IAAI,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;YAC1C,IAAM,MAAI,GAAG,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;YACxC,IAAM,GAAG,GAAc,IAAA,cAAI,EAAC,IAAI,EAAE,UAAA,GAAG,IAAI,OAAA,GAAG,CAAC,IAAI,KAAK,MAAI,EAAjB,CAAiB,CAAc,CAAC;YAEzE,IAAI,GAAG,EAAE;gBACP,SAAS,GAAG,GAAG,CAAC,IAAI,CAAC;aACtB;iBAAM,IAAI,KAAK,CAAC,gBAAgB,EAAE;gBACjC,SAAS,GAAG,IAAA,sBAAQ,EAAC,KAAK,CAAC,gBAAgB,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;aAC1D;YAED,SAAS,GAAG,SAAS,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;SACzD;QAEK,IAAA,KAA4B,KAAI,CAAC,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,EAAhE,SAAS,QAAA,EAAE,YAAY,QAAyC,CAAC;QAExE,KAAI,CAAC,KAAK,GAAG;YACX,OAAO,EAAE,SAAS;YAClB,SAAS,EAAE,CAAC,KAAI,CAAC,SAAS,GAAG,SAAS,CAAC;YACvC,SAAS,WAAA;YACT,YAAY,cAAA;SACb,CAAC;;IACJ,CAAC;IAED,+BAA+B;IAE/B,2BAAY,GAAZ,UACE,IAAsB,EACtB,MAAe,EACf,IAAU;QAEV,IAAI,CAAC,IAAI,EAAE;YACT,OAAO,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;SACpB;QAED,IAAM,GAAG,GAAG,IAAA,sCAAwB,EAAC,MAAM,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;QAC5D,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE;YACvB,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;SACtB;QAED,IAAI,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QAE3C,IAAM,UAAU,GAAqB,EAAE,CAAC;QACxC,GAAG,CAAC,OAAO,CAAC,UAAC,KAAK,EAAE,KAAK;YACvB,IAAM,GAAG,GAAG,IAAA,qBAAY,EACtB,IAAI,EACJ,IAAA,iBAAQ,EAAC,KAAK,CAAC,CAAC,CAAC,yBAAE,KAAK,OAAA,IAAK,KAAK,EAAE,CAAC,CAAC,EAAC,IAAI,EAAE,KAAK,EAAE,KAAK,OAAA,EAAC,CAC3D,CAAC;YAEF,UAAU,CAAC,IAAI,OAAf,UAAU,EAAS,IAAI,CAAC,GAAG,CAAC,UAAC,GAAc,IAAK,OAAA,iDAAK,GAAG,KAAE,GAAG,KAAA,IAAE,EAAf,CAAe,CAAC,EAAE;QACpE,CAAC,CAAC,CAAC;QAEH,OAAO,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;IAC5B,CAAC;IAED,gCAAiB,GAAjB;;QACE,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAErC,IAAA,KAA8C,IAAI,CAAC,KAAK,EAAvD,IAAI,UAAA,EAAE,KAAK,WAAA,EAAE,QAAQ,cAAA,EAAE,MAAM,YAAA,EAAE,IAAI,UAAA,EAAE,IAAI,UAAc,CAAC;QAE7D,IAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC;QAEvC,0BAA0B;QAC1B,IACE,CAAC,IAAI;YACL,OAAO,QAAQ,KAAK,UAAU;YAC9B,kBAAkB;YAClB,MAAM,EACN;YACA,OAAO;SACR;QAED,KAAK,GAAG,KAAK,aAAL,KAAK,cAAL,KAAK,GAAI,IAAA,oBAAW,EAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QAEzC,kBAAkB;QAClB,IAAI,KAAK,IAAI,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE;YACrC,IAAM,GAAG,GAAG,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC;YAC1C,GAAG,KAAK,SAAS,IAAI,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC;SAC7C;aAAM;YACL,IAAM,GAAG,GAAG,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YACjD,IAAI,GAAG,IAAI,KAAK,KAAK,CAAC,MAAC,GAAW,CAAC,KAAK,mCAAI,GAAG,CAAC,KAAK,CAAC,EAAE;gBACtD,QAAQ,CAAC,MAAC,GAAW,CAAC,KAAK,mCAAI,GAAG,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;aACjD;SACF;IACH,CAAC;IAED,iCAAkB,GAAlB,UAAmB,QAAmB,EAAE,SAAc;;QACpD,IAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;QACzB,IAAI,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC;QACrC,IAAM,aAAa,GAAG,IAAA,sBAAQ,EAAC,QAAQ,CAAC,gBAAgB,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC;QACzE,IAAM,SAAS,GAAG,IAAA,sBAAQ,EAAC,KAAK,CAAC,gBAAgB,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;QAE/D,cAAc;QACd,IAAM,cAAc,GAAG,IAAA,gCAAuB,EAC5C;YACE,IAAI,EAAE,KAAK,CAAC,IAAI;YAChB,MAAM,EAAE,IAAA,sCAAwB,EAAC,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,IAAI,EAAE,OAAO,CAAC;SACpE,EACD;YACE,IAAI,EAAE,QAAQ,CAAC,IAAI;YACnB,MAAM,EAAE,IAAA,sCAAwB,EAC9B,QAAQ,CAAC,MAAM,EACf,QAAQ,CAAC,IAAI,EACb,OAAO,CACR;SACF,EACD,KAAK,CACN,CAAC;QAEF,IAAI,cAAc,EAAE;YACZ,IAAA,KAA+B,IAAI,CAAC,YAAY,CACpD,KAAK,CAAC,IAAI,EACV,KAAK,CAAC,MAAM,EACZ,KAAK,CAAC,IAAI,CACX,EAJM,YAAY,QAAA,EAAE,YAAY,QAIhC,CAAC;YAEF,IAAI,CAAC,QAAQ,CAAC;gBACZ,SAAS,EAAE,YAAY;gBACvB,YAAY,cAAA;aACb,CAAC,CAAC;YACH,SAAS,GAAG,YAAY,CAAC;SAC1B;QAED,IACE,KAAK,CAAC,QAAQ;YACd,QAAQ,CAAC,QAAQ;YACjB,KAAK,CAAC,QAAQ,CAAC,IAAI,KAAK,QAAQ,CAAC,QAAQ,CAAC,IAAI,EAC9C;YACA,IAAM,MAAI,GAAG,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;YAC9C,IAAI,CAAC,MAAI,EAAE;gBACT,OAAO;aACR;YAED,IAAM,GAAG,GAAc,IAAA,cAAI,EACzB,SAAS,EACT,UAAA,GAAG,IAAI,OAAA,GAAG,CAAC,IAAI,KAAK,MAAI,EAAjB,CAAiB,CACZ,CAAC;YACf,IAAI,GAAG,IAAI,GAAG,CAAC,IAAI,IAAI,GAAG,CAAC,IAAI,KAAK,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE;gBACxD,IAAI,CAAC,QAAQ,CAAC;oBACZ,SAAS,EAAE,CAAC,IAAI,CAAC,SAAS,GAAG,GAAG,CAAC,IAAI,CAAC;oBACtC,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,SAAS;iBAC9B,CAAC,CAAC;aACJ;SACF;aAAM,IACL,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC;YACxB,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,SAAS,CAAC;YAClC,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,GAAG,CAAC,UAAA,IAAI,IAAI,OAAA,IAAI,CAAC,IAAI,EAAT,CAAS,CAAC,CAAC;gBAC9C,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,SAAS,CAAC,GAAG,CAAC,UAAC,IAAe,IAAK,OAAA,IAAI,CAAC,IAAI,EAAT,CAAS,CAAC,CAAC,EACzE;YACA,IAAI,WAAS,GAAQ,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC;YAC1C,IAAM,QAAQ,GAAG,KAAK,CAAC,QAAQ,CAAC;YAChC,IAAI,GAAG,GAAqB,IAAI,CAAC;YAEjC,IAAI,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE;gBACxC,IAAM,MAAI,GAAG,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;gBACxC,GAAG,GAAG,IAAA,cAAI,EAAC,SAAS,EAAE,UAAA,GAAG,IAAI,OAAA,GAAG,CAAC,IAAI,KAAK,MAAI,EAAjB,CAAiB,CAAc,CAAC;aAC9D;YAED,IAAI,GAAG,EAAE;gBACP,WAAS,GAAG,GAAG,CAAC,IAAI,CAAC;aACtB;iBAAM,IACL,CAAC,SAAS;gBACV,CAAC,SAAS,CAAC,IAAI,CAAC,UAAC,IAAI,EAAE,KAAK;oBAC1B,OAAA,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,KAAK,WAAS,CAAC,CAAC,CAAC,KAAK,KAAK,WAAS;gBAAzD,CAAyD,CAC1D,EACD;gBACA,WAAS,GAAG,CAAC,SAAS,IAAI,SAAS,CAAC,CAAC,CAAC,IAAI,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;aACnE;YAED,IAAI,CAAC,QAAQ,CAAC;gBACZ,OAAO,EAAE,SAAS;gBAClB,SAAS,EAAE,CAAC,IAAI,CAAC,SAAS,GAAG,WAAS,CAAC;aACxC,CAAC,CAAC;SACJ;aAAM,IAAI,aAAa,KAAK,SAAS,EAAE;YACtC,IAAI,SAAS,IAAI,IAAI,EAAE;gBACrB,OAAO;aACR;YAED,IAAI,aAAa,GAAG,IAAI,CAAC;YACzB,IAAM,GAAG,GAAG,IAAA,cAAI,EAAC,SAAS,EAAE,UAAA,IAAI,IAAI,OAAA,IAAI,CAAC,IAAI,KAAK,SAAS,EAAvB,CAAuB,CAAC,CAAC;YAE7D,IAAI,GAAG,EAAE;gBACP,aAAa,GAAG,GAAG,CAAC,IAAI,CAAC;aAC1B;iBAAM,IAAI,OAAO,SAAS,KAAK,QAAQ,IAAI,SAAS,CAAC,SAAS,CAAC,EAAE;gBAChE,aAAa,GAAG,SAAS,CAAC;aAC3B;YAED,IAAI,aAAa,EAAE;gBACjB,IAAI,CAAC,QAAQ,CAAC;oBACZ,OAAO,EAAE,aAAa;oBACtB,SAAS,EAAE,CAAC,IAAI,CAAC,SAAS,GAAG,aAAa,CAAC;iBAC5C,CAAC,CAAC;aACJ;SACF;QAED,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAErC,IAAA,KAAwC,IAAI,CAAC,KAAK,EAAjD,IAAI,UAAA,EAAE,KAAK,WAAA,EAAE,QAAQ,cAAA,EAAE,MAAM,YAAA,EAAE,IAAI,UAAc,CAAC;QAEvD,0BAA0B;QAC1B,IACE,CAAC,IAAI;YACL,OAAO,QAAQ,KAAK,UAAU;YAC9B,kBAAkB;YAClB,MAAM,EACN;YACA,OAAO;SACR;QAED,IAAI,GAAQ,CAAC;QACb,KAAK,GAAG,KAAK,aAAL,KAAK,cAAL,KAAK,GAAI,IAAA,oBAAW,EAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QACzC,IAAM,SAAS,GACb,MAAA,QAAQ,CAAC,KAAK,mCAAI,IAAA,oBAAW,EAAC,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC;QAC9D,IACE,KAAK,KAAK,SAAS;YACnB,CAAC,GAAG,GAAG,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC,KAAK,SAAS;YACnD,GAAG,KAAK,IAAI,CAAC,SAAS,EACtB;YACA,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC;SACxB;aAAM,IAAI,IAAI,CAAC,SAAS,KAAK,SAAS,CAAC,SAAS,EAAE;YACjD,IAAM,GAAG,GAAG,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YACjD,IAAI,GAAG,IAAI,KAAK,KAAK,CAAC,MAAC,GAAW,CAAC,KAAK,mCAAI,GAAG,CAAC,KAAK,CAAC,EAAE;gBACtD,QAAQ,CAAC,MAAC,GAAW,CAAC,KAAK,mCAAI,GAAG,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;aACjD;SACF;IACH,CAAC;IAED,8BAAe,GAAf,UAAgB,GAAQ;QACtB,IAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC;QAEvC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE;YAC7B,OAAO;SACR;QAED,OAAO,IAAA,cAAI,EAAC,SAAS,EAAE,UAAC,GAAc,EAAE,KAAK;YAC3C,OAAA,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,KAAK,GAAG,CAAC,CAAC,CAAC,KAAK,KAAK,GAAG;QAA3C,CAA2C,CAC5C,CAAC;IACJ,CAAC;IAED,gCAAiB,GAAjB,UAAkB,KAAU;QAC1B,IAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC;QAEvC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE;YAC7B,OAAO;SACR;QAED,IAAM,GAAG,GAAc,IAAA,cAAI,EACzB,SAAS,EACT,UAAA,GAAG,YAAI,OAAA,CAAC,MAAC,GAAW,CAAC,KAAK,mCAAI,GAAG,CAAC,KAAK,CAAC,KAAK,KAAK,CAAA,EAAA,CACtC,CAAC;QAEf,OAAO,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IAC7D,CAAC;IAGD,kCAAmB,GAAnB,UAAoB,GAAQ;QACpB,IAAA,KAAe,IAAI,CAAC,KAAK,EAAxB,IAAI,UAAA,EAAE,IAAI,UAAc,CAAC;QAChC,IAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC;QAEvC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE;YAC7B,OAAO;SACR;QAED,0CAA0C;QAC1C,IAAM,QAAQ,GAAG,IAAA,mBAAS,EAAC,SAAS,EAAE,UAAC,GAAc,EAAE,KAAK;YAC1D,OAAA,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,KAAK,GAAG,CAAC,CAAC,CAAC,KAAK,KAAK,GAAG;QAA3C,CAA2C,CAC5C,CAAC;QAEF,IACE,SAAS,CAAC,QAAQ,CAAC;YACnB,CAAC,IAAA,kBAAS,EAAC,SAAS,CAAC,QAAQ,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,EAChD;YACA,IAAI,GAAG,GAAG,SAAS,CAAC,MAAM,CAAC;YAC3B,IAAI,CAAC,GAAG,QAAQ,GAAG,CAAC,GAAG,GAAG,CAAC;YAC3B,IAAI,KAAK,GAAG,GAAG,GAAG,CAAC,CAAC;YAEpB,OAAO,KAAK,EAAE,EAAE;gBACd,IAAM,KAAK,GAAG,CAAC,EAAE,GAAG,GAAG,CAAC;gBACxB,IAAI,IAAA,kBAAS,EAAC,SAAS,CAAC,KAAK,CAAC,EAAE,IAAI,CAAC,EAAE;oBACrC,IAAI,SAAS,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC,IAAI,IAAI,KAAK,CAAC;oBAC/C,IAAI,CAAC,QAAQ,CAAC;wBACZ,SAAS,EAAE,CAAC,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;qBACxC,CAAC,CAAC;oBACH,MAAM;iBACP;aACF;SACF;IACH,CAAC;IAGD,wBAAS,GAAT;QADA,iBAiBC;QAfC,IAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC;QAEhD,SAAS,CAAC,IAAI,CAAC;YACb,KAAK,EAAE,aAAM,IAAI,CAAC,eAAe,EAAE,CAAE;YACrC,IAAI,EAAE,KAAK;SACC,CAAC,CAAC;QAEhB,IAAI,CAAC,QAAQ,CACX;YACE,SAAS,EAAE,SAAS;SACrB,EACD;YACE,KAAI,CAAC,QAAQ,CAAC,KAAI,CAAC,KAAK,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QACjD,CAAC,CACF,CAAC;IACJ,CAAC;IAGD,0BAAW,GAAX,UAAY,KAAa,EAAE,GAAoB;QAC7C,IAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC;QAEjD,UAAU,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;QAE5B,IAAI,CAAC,QAAQ,CAAC;YACZ,SAAS,EAAE,UAAU;SACtB,CAAC,CAAC;IACL,CAAC;IAGD,yBAAU,GAAV,UAAW,KAAa,EAAE,IAAY;QACpC,IAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC;QACjD,UAAU,CAAC,KAAK,CAAC,CAAC,KAAK,GAAG,IAAI,CAAC;QAE/B,IAAI,CAAC,QAAQ,CAAC;YACZ,SAAS,EAAE,UAAU;SACtB,CAAC,CAAC;IACL,CAAC;IAGK,+BAAgB,GAAtB,UAAuB,CAAM;;;;;gBACrB,SAAS,GAAG,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;gBACjD,UAAU,GAAgB,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC;gBAE9D,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,EAAE,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;gBAEtE,IAAI,CAAC,QAAQ,CACX;oBACE,SAAS,EAAE,UAAU;iBACtB,EACD;oBACE,IAAI,SAAS,EAAE;wBACb,IAAM,iBAAiB,GAAG,UAAU,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;wBACxD,KAAI,CAAC,QAAQ,CAAC,iBAAiB,CAAC,CAAC;qBAClC;gBACH,CAAC,CACF,CAAC;;;;KACH;IAGK,2BAAY,GAAlB,UAAmB,GAAQ;;;;;;;wBACnB,KAA2C,IAAI,CAAC,KAAK,EAApD,aAAa,mBAAA,EAAE,IAAI,UAAA,EAAE,GAAG,SAAA,EAAE,QAAQ,cAAA,EAAE,EAAE,QAAA,CAAe;wBACrD,SAAS,GAAI,IAAI,CAAC,KAAK,UAAd,CAAe;wBAE/B,MAAA,GAAG,CAAC,OAAO,+CAAX,GAAG,EAAW;4BACZ,SAAS,EAAE,WAAW;4BACtB,SAAS,EAAE;gCACT,EAAE,IAAA;gCACF,GAAG,KAAA;6BACJ;yBACF,CAAC,CAAC;wBAEG,GAAG,GAAG,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,IAAI,CACzB,UAAC,IAAI,EAAE,KAAK,IAAK,OAAA,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,EAAvC,CAAuC,CACzD,CAAC;wBAEoB,qBAAM,aAAa,CACvC,QAAQ,EACR,IAAA,qBAAY,EAAC,IAAI,EAAE;gCACjB,KAAK,EAAE,CAAA,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAE,IAAI,EAAC,CAAC,CAAC,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAE,IAAI,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC;6BACvC,CAAC,CACH,EAAA;;wBALK,aAAa,GAAG,SAKrB;wBACD,IAAI,aAAa,aAAb,aAAa,uBAAb,aAAa,CAAE,SAAS,EAAE;4BAC5B,sBAAO;yBACR;wBAED,kBAAkB;wBAClB,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,EAAE;4BAClC,GAAG,CAAC,cAAc,CAAC,WAAI,GAAG,CAAE,CAAC,CAAC;yBAC/B;6BAAM,IAAI,OAAO,IAAI,CAAC,KAAK,CAAC,SAAS,KAAK,QAAQ,IAAI,GAAG,EAAE;4BAC1D,GAAG,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC;yBACzB;wBAED,IAAI,CAAC,QAAQ,CAAC;4BACZ,SAAS,EAAE,CAAC,IAAI,CAAC,SAAS,GAAG,GAAG,CAAC;4BACjC,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,SAAS;yBAC9B,CAAC,CAAC;wBAEH,IAAI,OAAO,QAAQ,KAAK,QAAQ,EAAE;4BAC1B,UAAU,GAAG,IAAA,uBAAiB,EAAC,QAAQ,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;4BAC/D,UAAU,IAAI,UAAU,CAAC,GAAG,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;yBAC3C;6BAAM,IAAI,OAAO,QAAQ,KAAK,UAAU,EAAE;4BACzC,QAAQ,CAAC,GAAG,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;yBAC3B;;;;;KACF;IAED;;OAEG;IACH,uBAAQ,GAAR,UAAS,MAAc,EAAE,IAAS;QAChC,IAAM,UAAU,GAAG,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,UAAoB,CAAC;QAChD,IAAI,SAAS,GAAG,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,SAAmB,CAAC;QAC1C,cAAc;QACd,IAAI,OAAO,CAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,SAAS,CAAA,KAAK,QAAQ,EAAE;YACvC,SAAS,EAAE,CAAC;SACb;QACD,IAAI,UAAU,KAAK,iBAAiB,EAAE;YACpC,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;SAC9B;IACH,CAAC;IAGD,uBAAQ,GAAR,UAAS,KAAa;QACpB,IAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC;QAEvC,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC;YACtB,SAAS,CAAC,KAAK,CAAC;YAChB,IAAI,CAAC,QAAQ,CAAC;gBACZ,SAAS,EAAE,CAAC,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC,IAAI,IAAI,KAAK,CAAC;aAC7D,CAAC,CAAC;IACP,CAAC;IAGD,2BAAY,GAAZ;QADA,iBAYC;QAVC,6BAA6B;QAC7B,IAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC;QAEvC,OAAO,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC;YAC7B,CAAC,CAAC,IAAA,mBAAS,EAAC,SAAS,EAAE,UAAC,GAAc,EAAE,KAAK;gBACzC,OAAA,GAAG,CAAC,IAAI;oBACN,CAAC,CAAC,GAAG,CAAC,IAAI,KAAK,KAAI,CAAC,KAAK,CAAC,SAAS;oBACnC,CAAC,CAAC,KAAK,KAAK,KAAI,CAAC,KAAK,CAAC,SAAS;YAFlC,CAEkC,CACnC;YACH,CAAC,CAAC,CAAC,CAAC,CAAC;IACT,CAAC;IAED,4BAAa,GAAb;QACQ,IAAA,KAAsD,IAAI,CAAC,KAAK,EAA/D,OAAO,aAAA,EAAE,MAAM,YAAA,EAAc,EAAE,gBAAA,EAAE,gBAAgB,sBAAc,CAAC;QAEvE,OAAO,OAAO,CAAC,CAAC,CAAC,CACf,uCAAK,SAAS,EAAE,EAAE,CAAC,cAAc,EAAE,gBAAgB,CAAC,IACjD,MAAM,CAAC,SAAS,EAAE,OAAO,CAAC,CACvB,CACP,CAAC,CAAC,CAAC,IAAI,CAAC;IACX,CAAC;IAED,yBAAU,GAAV;QAAA,iBAyIC;QAxIO,IAAA,KA2BF,IAAI,CAAC,KAAK,EA1BA,EAAE,gBAAA,EACD,EAAE,iBAAA,EACf,gBAAgB,sBAAA,EAChB,cAAc,oBAAA,EACd,SAAS,eAAA,EACT,SAAS,eAAA,EACT,MAAM,YAAA,EACN,IAAI,UAAA,EACE,KAAK,UAAA,EACX,QAAQ,cAAA,EACR,aAAa,mBAAA,EACb,MAAM,YAAA,EACN,SAAS,eAAA,EACT,QAAQ,cAAA,EACR,cAAc,oBAAA,EACd,WAAW,iBAAA,EACX,iBAAiB,uBAAA,EACjB,OAAO,aAAA,EACP,QAAQ,cAAA,EACR,SAAS,eAAA,EACT,OAAO,aAAA,EACP,gBAAgB,sBAAA,EAChB,QAAQ,cAAA,EACR,YAAY,kBAAA,EACD,EAAE,eAAA,EACb,UAAU,gBACE,CAAC;QAEf,IAAM,IAAI,GAAG,QAAQ,IAAI,KAAK,CAAC;QAC/B,IAAI,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC;QAE3C,2BAA2B;QAC3B,uBAAuB;QACvB,IAAI,SAAS,EAAE;YACb,YAAY,GAAG,KAAK,CAAC;SACtB;QAEK,IAAA,KAAkC,IAAI,CAAC,KAAK,EAAhC,IAAI,eAAA,EAAE,YAAY,kBAAc,CAAC;QACnD,IAAI,QAAQ,GAA8B,EAAE,CAAC;QAE7C,mBAAmB;QACnB,IAAI,YAAY,EAAE;YAChB,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,UAAC,GAAc,EAAE,KAAa;;gBAChD,OAAA,IAAA,kBAAS,EAAC,GAAG,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CACxB,8BAAC,UAAG,4BACG,GAAW,IAChB,KAAK,EAAE,IAAA,YAAM,EAAC,GAAG,CAAC,KAAK,EAAE,GAAG,CAAC,GAAG,CAAC,EACjC,QAAQ,EAAE,IAAA,mBAAU,EAAC,GAAG,EAAE,GAAG,CAAC,GAAG,CAAC,EAClC,GAAG,EAAE,KAAK,EACV,QAAQ,EAAE,KAAK,EACf,YAAY,EAAE,YAAY,EAC1B,aAAa,EACX,OAAO,GAAG,CAAC,MAAM,KAAK,SAAS;wBAC7B,CAAC,CAAC,GAAG,CAAC,MAAM;wBACZ,CAAC,CAAC,OAAO,GAAG,CAAC,aAAa,KAAK,SAAS;4BACxC,CAAC,CAAC,GAAG,CAAC,aAAa;4BACnB,CAAC,CAAC,aAAa,KAGlB,MAAM,CACL,eAAQ,KAAK,CAAE,EACf,CAAA,MAAC,GAAW,0CAAE,IAAI,EAAC,CAAC,CAAE,GAAW,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,IAAI,EACvD;oBACE,IAAI,EAAE,GAAG,CAAC,GAAG;oBACb,QAAQ,EAAE,GAAG,CAAC,IAAI,IAAI,WAAW,IAAI,QAAQ;oBAC7C,cAAc,EACZ,GAAG,CAAC,UAAU,IAAI,iBAAiB,IAAI,cAAc;iBACxD,CACF,CACG,CACP,CAAC,CAAC,CAAC,IAAI,CAAA;aAAA,CACT,CAAC;SACH;aAAM;YACL,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,UAAC,GAAG,EAAE,KAAK;;gBAC7B,OAAA,IAAA,kBAAS,EAAC,GAAG,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,CACrB,8BAAC,UAAG,4BACG,GAAW,IAChB,KAAK,EAAE,IAAA,YAAM,EAAC,GAAG,CAAC,KAAK,EAAE,IAAI,CAAC,EAC9B,QAAQ,EAAE,IAAA,mBAAU,EAAC,GAAG,EAAE,IAAI,CAAC,EAC/B,GAAG,EAAE,KAAK,EACV,QAAQ,EAAE,GAAG,CAAC,IAAI,IAAI,KAAK,EAC3B,YAAY,EAAE,YAAY,EAC1B,aAAa,EACX,OAAO,GAAG,CAAC,MAAM,KAAK,SAAS;wBAC7B,CAAC,CAAC,GAAG,CAAC,MAAM;wBACZ,CAAC,CAAC,OAAO,GAAG,CAAC,aAAa,KAAK,SAAS;4BACxC,CAAC,CAAC,GAAG,CAAC,aAAa;4BACnB,CAAC,CAAC,aAAa,KAGlB,KAAI,CAAC,SAAS;oBACb,CAAC,CAAC,KAAI,CAAC,SAAS,CAAC,GAAG,EAAE,KAAI,CAAC,KAAK,EAAE,KAAK,CAAC;oBACxC,CAAC,CAAC,SAAS;wBACX,CAAC,CAAC,SAAS,CAAC,GAAG,EAAE,KAAI,CAAC,KAAK,EAAE,KAAK,CAAC;wBACnC,CAAC,CAAC,MAAM,CACJ,cAAO,KAAK,CAAE,EACd,CAAA,MAAC,GAAW,0CAAE,IAAI,EAAC,CAAC,CAAE,GAAW,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,IAAI,EACvD;4BACE,QAAQ,EAAE,GAAG,CAAC,IAAI,IAAI,WAAW,IAAI,QAAQ;4BAC7C,cAAc,EACZ,GAAG,CAAC,UAAU,IAAI,iBAAiB,IAAI,cAAc;yBACxD,CACF,CACD,CACP,CAAC,CAAC,CAAC,IAAI,CAAA;aAAA,CACT,CAAC;SACH;QAED,OAAO,CACL,8BAAC,WAAK,IACJ,UAAU,EAAE,EAAE,CAAC,UAAU,IAAI,KAAK,CAAC,EACnC,WAAW,EAAE,EAAE,EACf,UAAU,EAAE,EAAE,EACd,IAAI,EAAE,IAAI,EACV,QAAQ,EAAE,QAAQ,EAClB,SAAS,EAAE,SAAS,EACpB,gBAAgB,EAAE,gBAAgB,EAClC,cAAc,EAAE,cAAc,EAC9B,QAAQ,EAAE,IAAI,CAAC,YAAY,EAC3B,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,SAAS,EAC/B,OAAO,EAAE,IAAI,CAAC,aAAa,EAAE,EAC7B,OAAO,EAAE,OAAO,EAChB,KAAK,EAAE,IAAI,CAAC,SAAS,EACrB,OAAO,EAAE,IAAI,CAAC,WAAW,EACzB,SAAS,EAAE,SAAS,EACpB,YAAY,EAAE,IAAI,CAAC,gBAAgB,EACnC,OAAO,EAAE,OAAO,EAChB,gBAAgB,EAAE,gBAAgB,EAClC,QAAQ,EAAE,QAAQ,EAClB,MAAM,EAAE,IAAI,CAAC,UAAU,EACvB,YAAY,EAAE,YAAY,IAEzB,QAAQ,CACH,CACT,CAAC;IACJ,CAAC;IAED,qBAAM,GAAN;QACE,OAAO,IAAI,CAAC,UAAU,EAAE,CAAC;IAC3B,CAAC;;IA9lBM,iBAAY,GAAuB;QACxC,SAAS,EAAE,EAAE;QACb,IAAI,EAAE,EAAE;QACR,YAAY,EAAE,IAAI;QAClB,aAAa,EAAE,KAAK;KACrB,CAAC;IAwCF;QADC,iBAAQ;;0EAED,KAAK,oBAAL,KAAK;;4CA0BZ;IA0MD;QADC,iBAAQ;;;;mDAiCR;IAGD;QADC,iBAAQ;;;;yCAiBR;IAGD;QADC,iBAAQ;;;;2CASR;IAGD;QADC,iBAAQ;;;;0CAQR;IAGD;QADC,iBAAQ;;;;gDAkBR;IAGD;QADC,iBAAQ;;;;4CA6CR;IAkBD;QADC,iBAAQ;;;;wCASR;IAGD;QADC,iBAAQ;;;;4CAYR;IA0JH,WAAC;CAAA,AAhmBD,CAAkC,eAAK,CAAC,SAAS,GAgmBhD;kBAhmBoB,IAAI;AAomBzB;IAAkC,6CAAI;IAGpC,sBAAY,KAAgB,EAAE,OAAuB;QAArD,YACE,kBAAM,KAAK,CAAC,SAIb;QAFC,IAAM,MAAM,GAAG,OAAO,CAAC;QACvB,MAAM,CAAC,iBAAiB,CAAC,KAAI,CAAC,CAAC;;IACjC,CAAC;IAED,2CAAoB,GAApB;;QACE,MAAA,iBAAM,oBAAoB,oDAAI,CAAC;QAC/B,IAAM,MAAM,GAAG,IAAI,CAAC,OAAyB,CAAC;QAC9C,MAAM,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC;IACnC,CAAC;;IAbM,wBAAW,GAAG,sBAAa,CAAC;IADxB,YAAY;QAHxB,IAAA,kBAAQ,EAAC;YACR,IAAI,EAAE,MAAM;SACb,CAAC;kFAIuC,uBAAc,oBAAd,uBAAc;OAH1C,YAAY,CAexB;IAAD,mBAAC;CAAA,AAfD,CAAkC,IAAI,GAerC;AAfY,oCAAY",
|
10
10
|
"sourcesContent": [
|
11
|
-
"import React from 'react';\nimport {Renderer, RendererProps} from '../factory';\nimport {Action, Schema, SchemaNode} from '../types';\nimport find from 'lodash/find';\nimport {\n isVisible,\n autobind,\n isDisabled,\n isObject,\n createObject,\n getVariable,\n isObjectShallowModified\n} from '../utils/helper';\nimport findIndex from 'lodash/findIndex';\nimport {Tabs as CTabs, Tab, TabsMode} from '../components/Tabs';\nimport {ClassNamesFn} from '../theme';\nimport {\n BaseSchema,\n SchemaClassName,\n SchemaCollection,\n SchemaIcon\n} from '../Schema';\nimport {ActionSchema} from './Action';\nimport {filter} from '../utils/tpl';\nimport {\n resolveVariable,\n tokenize,\n resolveVariableAndFilter\n} from '../utils/tpl-builtin';\nimport {FormSchemaHorizontal} from './Form/index';\nimport {str2AsyncFunction} from '../utils/api';\nimport {ScopedContext, IScopedContext} from '../Scoped';\n\nexport interface TabSchema extends Omit<BaseSchema, 'type'> {\n /**\n * Tab 标题\n */\n title?: string;\n\n /**\n * 内容\n * @deprecated 用 body 属性\n */\n tab?: SchemaCollection;\n\n /**\n * 内容\n */\n body?: SchemaCollection;\n\n /**\n * 徽标\n */\n badge?: number;\n\n /**\n * 设置以后将跟url的hash对应\n */\n hash?: string;\n\n /**\n * 按钮图标\n */\n icon?: SchemaIcon;\n\n iconPosition?: 'left' | 'right';\n\n /**\n * 设置以后内容每次都会重新渲染\n */\n reload?: boolean;\n\n /**\n * 点开时才加载卡片内容\n */\n mountOnEnter?: boolean;\n\n /**\n * 卡片隐藏就销毁卡片节点。\n */\n unmountOnExit?: boolean;\n\n /**\n * 配置子表单项默认的展示方式。\n */\n mode?: 'normal' | 'inline' | 'horizontal';\n /**\n * 如果是水平排版,这个属性可以细化水平排版的左右宽度占比。\n */\n horizontal?: FormSchemaHorizontal;\n /**\n * 是否可关闭,优先级高于 tabs 的 closable\n */\n closable?: boolean;\n /**\n * 是否禁用\n */\n disabled?: boolean;\n}\n\n/**\n * 选项卡控件。\n * 文档:https://baidu.gitee.io/amis/docs/components/tabs\n */\nexport interface TabsSchema extends BaseSchema {\n type: 'tabs';\n\n /**\n * 选项卡成员。当配置了 source 时,选项卡成员,将会根据目标数据进行重复。\n */\n tabs: Array<TabSchema>;\n\n /**\n * 关联已有数据,选项卡直接根据目标数据重复。\n */\n source?: string;\n\n /**\n * 类名\n */\n tabsClassName?: SchemaClassName;\n\n /**\n * 展示形式\n */\n tabsMode?: TabsMode;\n\n /**\n * 内容类名\n */\n contentClassName?: SchemaClassName;\n\n /**\n * 链接外层类名\n */\n linksClassName?: SchemaClassName;\n\n /**\n * 卡片是否只有在点开的时候加载?\n */\n mountOnEnter?: boolean;\n\n /**\n * 卡片隐藏的时候是否销毁卡片内容\n */\n unmountOnExit?: boolean;\n\n /**\n * 可以在右侧配置点其他功能按钮。\n */\n toolbar?: ActionSchema;\n\n /**\n * 配置子表单项默认的展示方式。\n */\n subFormMode?: 'normal' | 'inline' | 'horizontal';\n /**\n * 如果是水平排版,这个属性可以细化水平排版的左右宽度占比。\n */\n subFormHorizontal?: FormSchemaHorizontal;\n /**\n * 是否支持新增\n */\n addable?: boolean;\n /**\n * 是否支持删除\n */\n closable?: boolean;\n /**\n * 是否支持拖拽\n */\n draggable?: boolean;\n /**\n * 是否显示提示\n */\n showTip?: boolean;\n /**\n * tooltip 提示的类名\n */\n showTipClassName?: string;\n /**\n * 是否可编辑标签名\n */\n editable?: boolean;\n /**\n * 是否导航支持内容溢出滚动。属性废弃,为了兼容暂且保留\n */\n scrollable?: boolean;\n /**\n * 编辑器模式,侧边的位置\n */\n sidePosition?: 'left' | 'right';\n /**\n * 自定义增加按钮文案\n */\n addBtnText?: string;\n}\n\nexport interface TabsProps\n extends RendererProps,\n Omit<TabsSchema, 'className' | 'contentClassName'> {\n activeKey?: string | number;\n location?: any;\n tabRender?: (tab: TabSchema, props: TabsProps, index: number) => JSX.Element;\n}\n\ninterface TabSource extends TabSchema {\n ctx?: any;\n}\n\nexport interface TabsState {\n activeKey: any;\n prevKey: any;\n localTabs: Array<TabSource>;\n isFromSource: boolean;\n}\n\nexport type TabsRendererEvent = 'change';\nexport type TabsRendererAction = 'changeActiveKey';\n\nexport default class Tabs extends React.Component<TabsProps, TabsState> {\n static defaultProps: Partial<TabsProps> = {\n className: '',\n mode: '',\n mountOnEnter: true,\n unmountOnExit: false\n };\n\n renderTab?: (tab: TabSchema, props: TabsProps, index: number) => JSX.Element;\n activeKey: any;\n newTabDefaultId: number = 3;\n\n constructor(props: TabsProps) {\n super(props);\n\n const location = props.location || window.location;\n const {tabs, source, data} = props;\n let activeKey: any = 0;\n\n if (typeof props.activeKey !== 'undefined') {\n activeKey = props.activeKey;\n } else if (location && Array.isArray(tabs)) {\n const hash = location.hash.substring(1);\n const tab: TabSource = find(tabs, tab => tab.hash === hash) as TabSource;\n\n if (tab) {\n activeKey = tab.hash;\n } else if (props.defaultActiveKey) {\n activeKey = tokenize(props.defaultActiveKey, props.data);\n }\n\n activeKey = activeKey || (tabs[0] && tabs[0].hash) || 0;\n }\n\n const [localTabs, isFromSource] = this.initTabArray(tabs, source, data);\n\n this.state = {\n prevKey: undefined,\n activeKey: (this.activeKey = activeKey),\n localTabs,\n isFromSource\n };\n }\n\n // 初始化 tabs 数组,当从 source 获取数据源时\n @autobind\n initTabArray(\n tabs: Array<TabSource>,\n source?: string,\n data?: any\n ): [Array<TabSource>, boolean] {\n if (!tabs) {\n return [[], false];\n }\n\n const arr = resolveVariableAndFilter(source, data, '| raw');\n if (!Array.isArray(arr)) {\n return [tabs, false];\n }\n\n tabs = Array.isArray(tabs) ? tabs : [tabs];\n\n const sourceTabs: Array<TabSource> = [];\n arr.forEach((value, index) => {\n const ctx = createObject(\n data,\n isObject(value) ? {index, ...value} : {item: value, index}\n );\n\n sourceTabs.push(...tabs.map((tab: TabSource) => ({...tab, ctx})));\n });\n\n return [sourceTabs, true];\n }\n\n componentDidMount() {\n this.autoJumpToNeighbour(this.activeKey);\n\n let {name, value, onChange, source, tabs, data} = this.props;\n\n const localTabs = this.state.localTabs;\n\n // 如果没有配置 name ,说明不需要同步表单值\n if (\n !name ||\n typeof onChange !== 'function' ||\n // 如果关联某个变量数据,则不启用\n source\n ) {\n return;\n }\n\n value = value ?? getVariable(data, name);\n\n // 如果有值,切到对应的 tab\n if (value && Array.isArray(localTabs)) {\n const key = this.resolveKeyByValue(value);\n key !== undefined && this.handleSelect(key);\n } else {\n const tab = this.resolveTabByKey(this.activeKey);\n if (tab && value !== ((tab as any).value ?? tab.title)) {\n onChange((tab as any).value ?? tab.title, name);\n }\n }\n }\n\n componentDidUpdate(preProps: TabsProps, prevState: any) {\n const props = this.props;\n let localTabs = this.state.localTabs;\n\n // 响应外部修改 tabs\n const isTabsModified = isObjectShallowModified(\n {\n tabs: props.tabs,\n source: resolveVariableAndFilter(props.source, props.data, '| raw')\n },\n {\n tabs: preProps.tabs,\n source: resolveVariableAndFilter(\n preProps.source,\n preProps.data,\n '| raw'\n )\n },\n false\n );\n\n if (isTabsModified) {\n const [newLocalTabs, isFromSource] = this.initTabArray(\n props.tabs,\n props.source,\n props.data\n );\n\n this.setState({\n localTabs: newLocalTabs,\n isFromSource\n });\n localTabs = newLocalTabs;\n }\n\n if (\n props.location &&\n preProps.location &&\n props.location.hash !== preProps.location.hash\n ) {\n const hash = props.location.hash.substring(1);\n if (!hash) {\n return;\n }\n\n const tab: TabSource = find(\n localTabs,\n tab => tab.hash === hash\n ) as TabSource;\n if (tab && tab.hash && tab.hash !== this.state.activeKey) {\n this.setState({\n activeKey: (this.activeKey = tab.hash),\n prevKey: this.state.activeKey\n });\n }\n } else if (\n Array.isArray(localTabs) &&\n Array.isArray(prevState.localTabs) &&\n JSON.stringify(localTabs.map(item => item.hash)) !==\n JSON.stringify(prevState.localTabs.map((item: TabSource) => item.hash))\n ) {\n let activeKey: any = this.state.activeKey;\n const location = props.location;\n let tab: TabSource | null = null;\n\n if (location && Array.isArray(localTabs)) {\n const hash = location.hash.substring(1);\n tab = find(localTabs, tab => tab.hash === hash) as TabSource;\n }\n\n if (tab) {\n activeKey = tab.hash;\n } else if (\n !localTabs ||\n !localTabs.some((item, index) =>\n item.hash ? item.hash === activeKey : index === activeKey\n )\n ) {\n activeKey = (localTabs && localTabs[0] && localTabs[0].hash) || 0;\n }\n\n this.setState({\n prevKey: undefined,\n activeKey: (this.activeKey = activeKey)\n });\n }\n\n this.autoJumpToNeighbour(this.activeKey);\n\n let {name, value, onChange, source, data} = this.props;\n\n // 如果没有配置 name ,说明不需要同步表单值\n if (\n !name ||\n typeof onChange !== 'function' ||\n // 如果关联某个变量数据,则不启用\n source\n ) {\n return;\n }\n\n let key: any;\n value = value ?? getVariable(data, name);\n const prevValue =\n preProps.value ?? getVariable(preProps.data, preProps.name);\n if (\n value !== prevValue &&\n (key = this.resolveKeyByValue(value)) !== undefined &&\n key !== this.activeKey\n ) {\n this.handleSelect(key);\n } else if (this.activeKey !== prevState.activeKey) {\n const tab = this.resolveTabByKey(this.activeKey);\n if (tab && value !== ((tab as any).value ?? tab.title)) {\n onChange((tab as any).value ?? tab.title, name);\n }\n }\n }\n\n resolveTabByKey(key: any) {\n const localTabs = this.state.localTabs;\n\n if (!Array.isArray(localTabs)) {\n return;\n }\n\n return find(localTabs, (tab: TabSource, index) =>\n tab.hash ? tab.hash === key : index === key\n );\n }\n\n resolveKeyByValue(value: any) {\n const localTabs = this.state.localTabs;\n\n if (!Array.isArray(localTabs)) {\n return;\n }\n\n const tab: TabSource = find(\n localTabs,\n tab => ((tab as any).value ?? tab.title) === value\n ) as TabSource;\n\n return tab && tab.hash ? tab.hash : localTabs.indexOf(tab);\n }\n\n @autobind\n autoJumpToNeighbour(key: any) {\n const {tabs, data} = this.props;\n const localTabs = this.state.localTabs;\n\n if (!Array.isArray(localTabs)) {\n return;\n }\n\n // 当前 tab 可能不可见,所以需要自动切到一个可见的 tab, 向前找,找一圈\n const tabIndex = findIndex(localTabs, (tab: TabSource, index) =>\n tab.hash ? tab.hash === key : index === key\n );\n\n if (\n localTabs[tabIndex] &&\n !isVisible(localTabs[tabIndex], this.props.data)\n ) {\n let len = localTabs.length;\n let i = tabIndex - 1 + len;\n let tries = len - 1;\n\n while (tries--) {\n const index = i-- % len;\n if (isVisible(localTabs[index], data)) {\n let activeKey = localTabs[index].hash || index;\n this.setState({\n activeKey: (this.activeKey = activeKey)\n });\n break;\n }\n }\n }\n }\n\n @autobind\n handleAdd() {\n const localTabs = this.state.localTabs.concat();\n\n localTabs.push({\n title: `tab${this.newTabDefaultId++}`,\n body: 'tab'\n } as TabSource);\n\n this.setState(\n {\n localTabs: localTabs\n },\n () => {\n this.switchTo(this.state.localTabs.length - 1);\n }\n );\n }\n\n @autobind\n handleClose(index: number, key: string | number) {\n const originTabs = this.state.localTabs.concat();\n\n originTabs.splice(index, 1);\n\n this.setState({\n localTabs: originTabs\n });\n }\n\n @autobind\n handleEdit(index: number, text: string) {\n const originTabs = this.state.localTabs.concat();\n originTabs[index].title = text;\n\n this.setState({\n localTabs: originTabs\n });\n }\n\n @autobind\n async handleDragChange(e: any) {\n const activeTab = this.resolveTabByKey(this.activeKey);\n const originTabs: TabSource[] = this.state.localTabs.concat();\n\n originTabs.splice(e.newIndex, 0, originTabs.splice(e.oldIndex, 1)[0]);\n\n this.setState(\n {\n localTabs: originTabs\n },\n () => {\n if (activeTab) {\n const newActiveTabIndex = originTabs.indexOf(activeTab);\n this.switchTo(newActiveTabIndex);\n }\n }\n );\n }\n\n @autobind\n async handleSelect(key: any) {\n const {dispatchEvent, data, env, onSelect, id} = this.props;\n const {localTabs} = this.state;\n\n env.tracker?.({\n eventType: 'tabChange',\n eventData: {\n id,\n key\n }\n });\n // 获取激活元素项\n const tab = localTabs?.find((item, index) => key === (item.hash ? item.hash : index));\n\n const rendererEvent = await dispatchEvent(\n 'change',\n createObject(data, {\n value: tab?.hash ? tab?.hash : key + 1\n })\n );\n if (rendererEvent?.prevented) {\n return;\n }\n\n // 是 hash,需要更新到地址栏\n if (typeof key === 'string' && env) {\n env.updateLocation(`#${key}`);\n } else if (typeof this.state.activeKey === 'string' && env) {\n env.updateLocation(`#`);\n }\n\n this.setState({\n activeKey: (this.activeKey = key),\n prevKey: this.state.activeKey\n });\n\n if (typeof onSelect === 'string') {\n const selectFunc = str2AsyncFunction(onSelect, 'key', 'props');\n selectFunc && selectFunc(key, this.props);\n } else if (typeof onSelect === 'function') {\n onSelect(key, this.props);\n }\n }\n\n /**\n * 动作处理\n */\n doAction(action: Action, args: any) {\n const actionType = action?.actionType as string;\n let activeKey = args?.activeKey as number;\n // 处理非用户自定义key\n if (typeof args?.activeKey !== 'string') {\n activeKey--;\n }\n if (actionType === 'changeActiveKey') {\n this.handleSelect(activeKey);\n }\n }\n\n @autobind\n switchTo(index: number) {\n const localTabs = this.state.localTabs;\n\n Array.isArray(localTabs) &&\n localTabs[index] &&\n this.setState({\n activeKey: (this.activeKey = localTabs[index].hash || index)\n });\n }\n\n @autobind\n currentIndex(): number {\n // const {tabs} = this.props;\n const localTabs = this.state.localTabs;\n\n return Array.isArray(localTabs)\n ? findIndex(localTabs, (tab: TabSource, index) =>\n tab.hash\n ? tab.hash === this.state.activeKey\n : index === this.state.activeKey\n )\n : -1;\n }\n\n renderToolbar() {\n const {toolbar, render, classnames: cx, toolbarClassName} = this.props;\n\n return toolbar ? (\n <div className={cx(`Tabs-toolbar`, toolbarClassName)}>\n {render('toolbar', toolbar)}\n </div>\n ) : null;\n }\n\n renderTabs() {\n const {\n classnames: cx,\n classPrefix: ns,\n contentClassName,\n linksClassName,\n tabRender,\n className,\n render,\n data,\n mode: dMode,\n tabsMode,\n unmountOnExit,\n source,\n formStore,\n formMode,\n formHorizontal,\n subFormMode,\n subFormHorizontal,\n addable,\n closable,\n draggable,\n showTip,\n showTipClassName,\n editable,\n sidePosition,\n translate: __,\n addBtnText\n } = this.props;\n\n const mode = tabsMode || dMode;\n let mountOnEnter = this.props.mountOnEnter;\n\n // 如果在form下面,其他tabs默认需要渲染出来\n // 否则在其他 tab 下面的必填项检测不到\n if (formStore) {\n mountOnEnter = false;\n }\n\n const {localTabs: tabs, isFromSource} = this.state;\n let children: Array<JSX.Element | null> = [];\n\n // 是否从 source 数据中生成\n if (isFromSource) {\n children = tabs.map((tab: TabSource, index: number) =>\n isVisible(tab, tab.ctx) ? (\n <Tab\n {...(tab as any)}\n title={filter(tab.title, tab.ctx)}\n disabled={isDisabled(tab, tab.ctx)}\n key={index}\n eventKey={index}\n mountOnEnter={mountOnEnter}\n unmountOnExit={\n typeof tab.reload === 'boolean'\n ? tab.reload\n : typeof tab.unmountOnExit === 'boolean'\n ? tab.unmountOnExit\n : unmountOnExit\n }\n >\n {render(\n `item/${index}`,\n (tab as any)?.type ? (tab as any) : tab.tab || tab.body,\n {\n data: tab.ctx,\n formMode: tab.mode || subFormMode || formMode,\n formHorizontal:\n tab.horizontal || subFormHorizontal || formHorizontal\n }\n )}\n </Tab>\n ) : null\n );\n } else {\n children = tabs.map((tab, index) =>\n isVisible(tab, data) ? (\n <Tab\n {...(tab as any)}\n title={filter(tab.title, data)}\n disabled={isDisabled(tab, data)}\n key={index}\n eventKey={tab.hash || index}\n mountOnEnter={mountOnEnter}\n unmountOnExit={\n typeof tab.reload === 'boolean'\n ? tab.reload\n : typeof tab.unmountOnExit === 'boolean'\n ? tab.unmountOnExit\n : unmountOnExit\n }\n >\n {this.renderTab\n ? this.renderTab(tab, this.props, index)\n : tabRender\n ? tabRender(tab, this.props, index)\n : render(\n `tab/${index}`,\n (tab as any)?.type ? (tab as any) : tab.tab || tab.body,\n {\n formMode: tab.mode || subFormMode || formMode,\n formHorizontal:\n tab.horizontal || subFormHorizontal || formHorizontal\n }\n )}\n </Tab>\n ) : null\n );\n }\n\n return (\n <CTabs\n addBtnText={__(addBtnText || 'add')}\n classPrefix={ns}\n classnames={cx}\n mode={mode}\n closable={closable}\n className={className}\n contentClassName={contentClassName}\n linksClassName={linksClassName}\n onSelect={this.handleSelect}\n activeKey={this.state.activeKey}\n toolbar={this.renderToolbar()}\n addable={addable}\n onAdd={this.handleAdd}\n onClose={this.handleClose}\n draggable={draggable}\n onDragChange={this.handleDragChange}\n showTip={showTip}\n showTipClassName={showTipClassName}\n editable={editable}\n onEdit={this.handleEdit}\n sidePosition={sidePosition}\n >\n {children}\n </CTabs>\n );\n }\n\n render() {\n return this.renderTabs();\n }\n}\n@Renderer({\n type: 'tabs'\n})\nexport class TabsRenderer extends Tabs {\n static contextType = ScopedContext;\n\n constructor(props: TabsProps, context: IScopedContext) {\n super(props);\n\n const scoped = context;\n scoped.registerComponent(this);\n }\n\n componentWillUnmount() {\n super.componentWillUnmount?.();\n const scoped = this.context as IScopedContext;\n scoped.unRegisterComponent(this);\n }\n}\n"
|
11
|
+
"import React from 'react';\nimport {Renderer, RendererProps} from '../factory';\nimport {Action, Schema, SchemaNode} from '../types';\nimport find from 'lodash/find';\nimport {\n isVisible,\n autobind,\n isDisabled,\n isObject,\n createObject,\n getVariable,\n isObjectShallowModified\n} from '../utils/helper';\nimport findIndex from 'lodash/findIndex';\nimport {Tabs as CTabs, Tab, TabsMode} from '../components/Tabs';\nimport {ClassNamesFn} from '../theme';\nimport {\n BaseSchema,\n SchemaClassName,\n SchemaCollection,\n SchemaIcon,\n SchemaExpression\n} from '../Schema';\nimport {ActionSchema} from './Action';\nimport {filter} from '../utils/tpl';\nimport {\n resolveVariable,\n tokenize,\n resolveVariableAndFilter\n} from '../utils/tpl-builtin';\nimport {FormSchemaHorizontal} from './Form/index';\nimport {str2AsyncFunction} from '../utils/api';\nimport {ScopedContext, IScopedContext} from '../Scoped';\n\nexport interface TabSchema extends Omit<BaseSchema, 'type'> {\n /**\n * Tab 标题\n */\n title?: string;\n\n /**\n * 内容\n * @deprecated 用 body 属性\n */\n tab?: SchemaCollection;\n\n /**\n * 内容\n */\n body?: SchemaCollection;\n\n /**\n * 徽标\n */\n badge?: number;\n\n /**\n * 设置以后将跟url的hash对应\n */\n hash?: string;\n\n /**\n * 按钮图标\n */\n icon?: SchemaIcon;\n\n iconPosition?: 'left' | 'right';\n\n /**\n * 设置以后内容每次都会重新渲染\n */\n reload?: boolean;\n\n /**\n * 点开时才加载卡片内容\n */\n mountOnEnter?: boolean;\n\n /**\n * 卡片隐藏就销毁卡片节点。\n */\n unmountOnExit?: boolean;\n\n /**\n * 配置子表单项默认的展示方式。\n */\n mode?: 'normal' | 'inline' | 'horizontal';\n /**\n * 如果是水平排版,这个属性可以细化水平排版的左右宽度占比。\n */\n horizontal?: FormSchemaHorizontal;\n /**\n * 是否可关闭,优先级高于 tabs 的 closable\n */\n closable?: boolean;\n /**\n * 是否禁用\n */\n disabled?: boolean;\n}\n\n/**\n * 选项卡控件。\n * 文档:https://baidu.gitee.io/amis/docs/components/tabs\n */\nexport interface TabsSchema extends BaseSchema {\n type: 'tabs';\n\n /**\n * 选项卡成员。当配置了 source 时,选项卡成员,将会根据目标数据进行重复。\n */\n tabs: Array<TabSchema>;\n\n /**\n * 关联已有数据,选项卡直接根据目标数据重复。\n */\n source?: string;\n\n /**\n * 类名\n */\n tabsClassName?: SchemaClassName;\n\n /**\n * 展示形式\n */\n tabsMode?: TabsMode;\n\n /**\n * 内容类名\n */\n contentClassName?: SchemaClassName;\n\n /**\n * 链接外层类名\n */\n linksClassName?: SchemaClassName;\n\n /**\n * 卡片是否只有在点开的时候加载?\n */\n mountOnEnter?: boolean;\n\n /**\n * 卡片隐藏的时候是否销毁卡片内容\n */\n unmountOnExit?: boolean;\n\n /**\n * 可以在右侧配置点其他功能按钮。\n */\n toolbar?: ActionSchema;\n\n /**\n * 配置子表单项默认的展示方式。\n */\n subFormMode?: 'normal' | 'inline' | 'horizontal';\n /**\n * 如果是水平排版,这个属性可以细化水平排版的左右宽度占比。\n */\n subFormHorizontal?: FormSchemaHorizontal;\n /**\n * 是否支持新增\n */\n addable?: boolean;\n /**\n * 是否支持删除\n */\n closable?: boolean;\n /**\n * 是否支持拖拽\n */\n draggable?: boolean;\n /**\n * 是否显示提示\n */\n showTip?: boolean;\n /**\n * tooltip 提示的类名\n */\n showTipClassName?: string;\n /**\n * 是否可编辑标签名\n */\n editable?: boolean;\n /**\n * 是否导航支持内容溢出滚动。属性废弃,为了兼容暂且保留\n */\n scrollable?: boolean;\n /**\n * 编辑器模式,侧边的位置\n */\n sidePosition?: 'left' | 'right';\n /**\n * 自定义增加按钮文案\n */\n addBtnText?: string;\n\n /**\n * 默认激活的选项卡,hash值或索引值,支持使用表达式\n */\n activeKey?: SchemaExpression;\n}\n\nexport interface TabsProps\n extends RendererProps,\n Omit<TabsSchema, 'className' | 'contentClassName' | 'activeKey'> {\n activeKey?: string | number;\n location?: any;\n tabRender?: (tab: TabSchema, props: TabsProps, index: number) => JSX.Element;\n}\n\ninterface TabSource extends TabSchema {\n ctx?: any;\n}\n\nexport interface TabsState {\n activeKey: any;\n prevKey: any;\n localTabs: Array<TabSource>;\n isFromSource: boolean;\n}\n\nexport type TabsRendererEvent = 'change';\nexport type TabsRendererAction = 'changeActiveKey';\n\nexport default class Tabs extends React.Component<TabsProps, TabsState> {\n static defaultProps: Partial<TabsProps> = {\n className: '',\n mode: '',\n mountOnEnter: true,\n unmountOnExit: false\n };\n\n renderTab?: (tab: TabSchema, props: TabsProps, index: number) => JSX.Element;\n activeKey: any;\n newTabDefaultId: number = 3;\n\n constructor(props: TabsProps) {\n super(props);\n\n const location = props.location || window.location;\n const {tabs, source, data} = props;\n let activeKey: any = 0;\n\n if (typeof props.activeKey !== 'undefined') {\n activeKey = props.activeKey;\n } else if (location && Array.isArray(tabs)) {\n const hash = location.hash.substring(1);\n const tab: TabSource = find(tabs, tab => tab.hash === hash) as TabSource;\n\n if (tab) {\n activeKey = tab.hash;\n } else if (props.defaultActiveKey) {\n activeKey = tokenize(props.defaultActiveKey, props.data);\n }\n\n activeKey = activeKey || (tabs[0] && tabs[0].hash) || 0;\n }\n\n const [localTabs, isFromSource] = this.initTabArray(tabs, source, data);\n\n this.state = {\n prevKey: undefined,\n activeKey: (this.activeKey = activeKey),\n localTabs,\n isFromSource\n };\n }\n\n // 初始化 tabs 数组,当从 source 获取数据源时\n @autobind\n initTabArray(\n tabs: Array<TabSource>,\n source?: string,\n data?: any\n ): [Array<TabSource>, boolean] {\n if (!tabs) {\n return [[], false];\n }\n\n const arr = resolveVariableAndFilter(source, data, '| raw');\n if (!Array.isArray(arr)) {\n return [tabs, false];\n }\n\n tabs = Array.isArray(tabs) ? tabs : [tabs];\n\n const sourceTabs: Array<TabSource> = [];\n arr.forEach((value, index) => {\n const ctx = createObject(\n data,\n isObject(value) ? {index, ...value} : {item: value, index}\n );\n\n sourceTabs.push(...tabs.map((tab: TabSource) => ({...tab, ctx})));\n });\n\n return [sourceTabs, true];\n }\n\n componentDidMount() {\n this.autoJumpToNeighbour(this.activeKey);\n\n let {name, value, onChange, source, tabs, data} = this.props;\n\n const localTabs = this.state.localTabs;\n\n // 如果没有配置 name ,说明不需要同步表单值\n if (\n !name ||\n typeof onChange !== 'function' ||\n // 如果关联某个变量数据,则不启用\n source\n ) {\n return;\n }\n\n value = value ?? getVariable(data, name);\n\n // 如果有值,切到对应的 tab\n if (value && Array.isArray(localTabs)) {\n const key = this.resolveKeyByValue(value);\n key !== undefined && this.handleSelect(key);\n } else {\n const tab = this.resolveTabByKey(this.activeKey);\n if (tab && value !== ((tab as any).value ?? tab.title)) {\n onChange((tab as any).value ?? tab.title, name);\n }\n }\n }\n\n componentDidUpdate(preProps: TabsProps, prevState: any) {\n const props = this.props;\n let localTabs = this.state.localTabs;\n const prevActiveKey = tokenize(preProps.defaultActiveKey, preProps.data);\n const activeKey = tokenize(props.defaultActiveKey, props.data);\n\n // 响应外部修改 tabs\n const isTabsModified = isObjectShallowModified(\n {\n tabs: props.tabs,\n source: resolveVariableAndFilter(props.source, props.data, '| raw')\n },\n {\n tabs: preProps.tabs,\n source: resolveVariableAndFilter(\n preProps.source,\n preProps.data,\n '| raw'\n )\n },\n false\n );\n\n if (isTabsModified) {\n const [newLocalTabs, isFromSource] = this.initTabArray(\n props.tabs,\n props.source,\n props.data\n );\n\n this.setState({\n localTabs: newLocalTabs,\n isFromSource\n });\n localTabs = newLocalTabs;\n }\n\n if (\n props.location &&\n preProps.location &&\n props.location.hash !== preProps.location.hash\n ) {\n const hash = props.location.hash.substring(1);\n if (!hash) {\n return;\n }\n\n const tab: TabSource = find(\n localTabs,\n tab => tab.hash === hash\n ) as TabSource;\n if (tab && tab.hash && tab.hash !== this.state.activeKey) {\n this.setState({\n activeKey: (this.activeKey = tab.hash),\n prevKey: this.state.activeKey\n });\n }\n } else if (\n Array.isArray(localTabs) &&\n Array.isArray(prevState.localTabs) &&\n JSON.stringify(localTabs.map(item => item.hash)) !==\n JSON.stringify(prevState.localTabs.map((item: TabSource) => item.hash))\n ) {\n let activeKey: any = this.state.activeKey;\n const location = props.location;\n let tab: TabSource | null = null;\n\n if (location && Array.isArray(localTabs)) {\n const hash = location.hash.substring(1);\n tab = find(localTabs, tab => tab.hash === hash) as TabSource;\n }\n\n if (tab) {\n activeKey = tab.hash;\n } else if (\n !localTabs ||\n !localTabs.some((item, index) =>\n item.hash ? item.hash === activeKey : index === activeKey\n )\n ) {\n activeKey = (localTabs && localTabs[0] && localTabs[0].hash) || 0;\n }\n\n this.setState({\n prevKey: undefined,\n activeKey: (this.activeKey = activeKey)\n });\n } else if (prevActiveKey !== activeKey) {\n if (activeKey == null) {\n return;\n }\n\n let newActivedKey = null;\n const tab = find(localTabs, item => item.hash === activeKey);\n\n if (tab) {\n newActivedKey = tab.hash;\n } else if (typeof activeKey === 'number' && localTabs[activeKey]) {\n newActivedKey = activeKey;\n }\n\n if (newActivedKey) {\n this.setState({\n prevKey: prevActiveKey,\n activeKey: (this.activeKey = newActivedKey)\n });\n }\n }\n\n this.autoJumpToNeighbour(this.activeKey);\n\n let {name, value, onChange, source, data} = this.props;\n\n // 如果没有配置 name ,说明不需要同步表单值\n if (\n !name ||\n typeof onChange !== 'function' ||\n // 如果关联某个变量数据,则不启用\n source\n ) {\n return;\n }\n\n let key: any;\n value = value ?? getVariable(data, name);\n const prevValue =\n preProps.value ?? getVariable(preProps.data, preProps.name);\n if (\n value !== prevValue &&\n (key = this.resolveKeyByValue(value)) !== undefined &&\n key !== this.activeKey\n ) {\n this.handleSelect(key);\n } else if (this.activeKey !== prevState.activeKey) {\n const tab = this.resolveTabByKey(this.activeKey);\n if (tab && value !== ((tab as any).value ?? tab.title)) {\n onChange((tab as any).value ?? tab.title, name);\n }\n }\n }\n\n resolveTabByKey(key: any) {\n const localTabs = this.state.localTabs;\n\n if (!Array.isArray(localTabs)) {\n return;\n }\n\n return find(localTabs, (tab: TabSource, index) =>\n tab.hash ? tab.hash === key : index === key\n );\n }\n\n resolveKeyByValue(value: any) {\n const localTabs = this.state.localTabs;\n\n if (!Array.isArray(localTabs)) {\n return;\n }\n\n const tab: TabSource = find(\n localTabs,\n tab => ((tab as any).value ?? tab.title) === value\n ) as TabSource;\n\n return tab && tab.hash ? tab.hash : localTabs.indexOf(tab);\n }\n\n @autobind\n autoJumpToNeighbour(key: any) {\n const {tabs, data} = this.props;\n const localTabs = this.state.localTabs;\n\n if (!Array.isArray(localTabs)) {\n return;\n }\n\n // 当前 tab 可能不可见,所以需要自动切到一个可见的 tab, 向前找,找一圈\n const tabIndex = findIndex(localTabs, (tab: TabSource, index) =>\n tab.hash ? tab.hash === key : index === key\n );\n\n if (\n localTabs[tabIndex] &&\n !isVisible(localTabs[tabIndex], this.props.data)\n ) {\n let len = localTabs.length;\n let i = tabIndex - 1 + len;\n let tries = len - 1;\n\n while (tries--) {\n const index = i-- % len;\n if (isVisible(localTabs[index], data)) {\n let activeKey = localTabs[index].hash || index;\n this.setState({\n activeKey: (this.activeKey = activeKey)\n });\n break;\n }\n }\n }\n }\n\n @autobind\n handleAdd() {\n const localTabs = this.state.localTabs.concat();\n\n localTabs.push({\n title: `tab${this.newTabDefaultId++}`,\n body: 'tab'\n } as TabSource);\n\n this.setState(\n {\n localTabs: localTabs\n },\n () => {\n this.switchTo(this.state.localTabs.length - 1);\n }\n );\n }\n\n @autobind\n handleClose(index: number, key: string | number) {\n const originTabs = this.state.localTabs.concat();\n\n originTabs.splice(index, 1);\n\n this.setState({\n localTabs: originTabs\n });\n }\n\n @autobind\n handleEdit(index: number, text: string) {\n const originTabs = this.state.localTabs.concat();\n originTabs[index].title = text;\n\n this.setState({\n localTabs: originTabs\n });\n }\n\n @autobind\n async handleDragChange(e: any) {\n const activeTab = this.resolveTabByKey(this.activeKey);\n const originTabs: TabSource[] = this.state.localTabs.concat();\n\n originTabs.splice(e.newIndex, 0, originTabs.splice(e.oldIndex, 1)[0]);\n\n this.setState(\n {\n localTabs: originTabs\n },\n () => {\n if (activeTab) {\n const newActiveTabIndex = originTabs.indexOf(activeTab);\n this.switchTo(newActiveTabIndex);\n }\n }\n );\n }\n\n @autobind\n async handleSelect(key: any) {\n const {dispatchEvent, data, env, onSelect, id} = this.props;\n const {localTabs} = this.state;\n\n env.tracker?.({\n eventType: 'tabChange',\n eventData: {\n id,\n key\n }\n });\n // 获取激活元素项\n const tab = localTabs?.find(\n (item, index) => key === (item.hash ? item.hash : index)\n );\n\n const rendererEvent = await dispatchEvent(\n 'change',\n createObject(data, {\n value: tab?.hash ? tab?.hash : key + 1\n })\n );\n if (rendererEvent?.prevented) {\n return;\n }\n\n // 是 hash,需要更新到地址栏\n if (typeof key === 'string' && env) {\n env.updateLocation(`#${key}`);\n } else if (typeof this.state.activeKey === 'string' && env) {\n env.updateLocation(`#`);\n }\n\n this.setState({\n activeKey: (this.activeKey = key),\n prevKey: this.state.activeKey\n });\n\n if (typeof onSelect === 'string') {\n const selectFunc = str2AsyncFunction(onSelect, 'key', 'props');\n selectFunc && selectFunc(key, this.props);\n } else if (typeof onSelect === 'function') {\n onSelect(key, this.props);\n }\n }\n\n /**\n * 动作处理\n */\n doAction(action: Action, args: any) {\n const actionType = action?.actionType as string;\n let activeKey = args?.activeKey as number;\n // 处理非用户自定义key\n if (typeof args?.activeKey !== 'string') {\n activeKey--;\n }\n if (actionType === 'changeActiveKey') {\n this.handleSelect(activeKey);\n }\n }\n\n @autobind\n switchTo(index: number) {\n const localTabs = this.state.localTabs;\n\n Array.isArray(localTabs) &&\n localTabs[index] &&\n this.setState({\n activeKey: (this.activeKey = localTabs[index].hash || index)\n });\n }\n\n @autobind\n currentIndex(): number {\n // const {tabs} = this.props;\n const localTabs = this.state.localTabs;\n\n return Array.isArray(localTabs)\n ? findIndex(localTabs, (tab: TabSource, index) =>\n tab.hash\n ? tab.hash === this.state.activeKey\n : index === this.state.activeKey\n )\n : -1;\n }\n\n renderToolbar() {\n const {toolbar, render, classnames: cx, toolbarClassName} = this.props;\n\n return toolbar ? (\n <div className={cx(`Tabs-toolbar`, toolbarClassName)}>\n {render('toolbar', toolbar)}\n </div>\n ) : null;\n }\n\n renderTabs() {\n const {\n classnames: cx,\n classPrefix: ns,\n contentClassName,\n linksClassName,\n tabRender,\n className,\n render,\n data,\n mode: dMode,\n tabsMode,\n unmountOnExit,\n source,\n formStore,\n formMode,\n formHorizontal,\n subFormMode,\n subFormHorizontal,\n addable,\n closable,\n draggable,\n showTip,\n showTipClassName,\n editable,\n sidePosition,\n translate: __,\n addBtnText\n } = this.props;\n\n const mode = tabsMode || dMode;\n let mountOnEnter = this.props.mountOnEnter;\n\n // 如果在form下面,其他tabs默认需要渲染出来\n // 否则在其他 tab 下面的必填项检测不到\n if (formStore) {\n mountOnEnter = false;\n }\n\n const {localTabs: tabs, isFromSource} = this.state;\n let children: Array<JSX.Element | null> = [];\n\n // 是否从 source 数据中生成\n if (isFromSource) {\n children = tabs.map((tab: TabSource, index: number) =>\n isVisible(tab, tab.ctx) ? (\n <Tab\n {...(tab as any)}\n title={filter(tab.title, tab.ctx)}\n disabled={isDisabled(tab, tab.ctx)}\n key={index}\n eventKey={index}\n mountOnEnter={mountOnEnter}\n unmountOnExit={\n typeof tab.reload === 'boolean'\n ? tab.reload\n : typeof tab.unmountOnExit === 'boolean'\n ? tab.unmountOnExit\n : unmountOnExit\n }\n >\n {render(\n `item/${index}`,\n (tab as any)?.type ? (tab as any) : tab.tab || tab.body,\n {\n data: tab.ctx,\n formMode: tab.mode || subFormMode || formMode,\n formHorizontal:\n tab.horizontal || subFormHorizontal || formHorizontal\n }\n )}\n </Tab>\n ) : null\n );\n } else {\n children = tabs.map((tab, index) =>\n isVisible(tab, data) ? (\n <Tab\n {...(tab as any)}\n title={filter(tab.title, data)}\n disabled={isDisabled(tab, data)}\n key={index}\n eventKey={tab.hash || index}\n mountOnEnter={mountOnEnter}\n unmountOnExit={\n typeof tab.reload === 'boolean'\n ? tab.reload\n : typeof tab.unmountOnExit === 'boolean'\n ? tab.unmountOnExit\n : unmountOnExit\n }\n >\n {this.renderTab\n ? this.renderTab(tab, this.props, index)\n : tabRender\n ? tabRender(tab, this.props, index)\n : render(\n `tab/${index}`,\n (tab as any)?.type ? (tab as any) : tab.tab || tab.body,\n {\n formMode: tab.mode || subFormMode || formMode,\n formHorizontal:\n tab.horizontal || subFormHorizontal || formHorizontal\n }\n )}\n </Tab>\n ) : null\n );\n }\n\n return (\n <CTabs\n addBtnText={__(addBtnText || 'add')}\n classPrefix={ns}\n classnames={cx}\n mode={mode}\n closable={closable}\n className={className}\n contentClassName={contentClassName}\n linksClassName={linksClassName}\n onSelect={this.handleSelect}\n activeKey={this.state.activeKey}\n toolbar={this.renderToolbar()}\n addable={addable}\n onAdd={this.handleAdd}\n onClose={this.handleClose}\n draggable={draggable}\n onDragChange={this.handleDragChange}\n showTip={showTip}\n showTipClassName={showTipClassName}\n editable={editable}\n onEdit={this.handleEdit}\n sidePosition={sidePosition}\n >\n {children}\n </CTabs>\n );\n }\n\n render() {\n return this.renderTabs();\n }\n}\n@Renderer({\n type: 'tabs'\n})\nexport class TabsRenderer extends Tabs {\n static contextType = ScopedContext;\n\n constructor(props: TabsProps, context: IScopedContext) {\n super(props);\n\n const scoped = context;\n scoped.registerComponent(this);\n }\n\n componentWillUnmount() {\n super.componentWillUnmount?.();\n const scoped = this.context as IScopedContext;\n scoped.unRegisterComponent(this);\n }\n}\n"
|
12
12
|
]
|
13
13
|
}
|
package/lib/themes/ang-ie11.css
CHANGED
@@ -24798,6 +24798,7 @@ input.a-TextControl-input-password {
|
|
24798
24798
|
margin-left: 0;
|
24799
24799
|
border: 0;
|
24800
24800
|
border-style: solid;
|
24801
|
+
background: transparent;
|
24801
24802
|
}
|
24802
24803
|
.a-Checkbox--button.a-Checkbox--checkbox > i + span {
|
24803
24804
|
max-width: 6.25rem;
|
@@ -25867,6 +25868,7 @@ input.a-TextControl-input-password {
|
|
25867
25868
|
margin-right: 0.25rem;
|
25868
25869
|
}
|
25869
25870
|
.a-Select-input > input {
|
25871
|
+
width: 100%;
|
25870
25872
|
outline: none;
|
25871
25873
|
border: none;
|
25872
25874
|
flex-grow: 1;
|
@@ -25876,7 +25878,6 @@ input.a-TextControl-input-password {
|
|
25876
25878
|
}
|
25877
25879
|
.a-Select-option {
|
25878
25880
|
cursor: pointer;
|
25879
|
-
min-width: 7.5rem;
|
25880
25881
|
padding: calc( ( 1.875rem - 1.4285714286 * 0.875rem ) / 2 ) 0.5rem;
|
25881
25882
|
}
|
25882
25883
|
.a-Select-option.is-active {
|
@@ -25962,7 +25963,6 @@ input.a-TextControl-input-password {
|
|
25962
25963
|
box-shadow: none;
|
25963
25964
|
border-top-left-radius: 0;
|
25964
25965
|
border-top-right-radius: 0;
|
25965
|
-
min-width: 6.25rem;
|
25966
25966
|
}
|
25967
25967
|
.a-Select-popover.a-PopOver--leftTopLeftBottom {
|
25968
25968
|
margin-top: calc( (0 - 0.0625rem) * -1 );
|
@@ -31385,13 +31385,16 @@ td.rdtQuarter.rdtDisabled:hover {
|
|
31385
31385
|
height: 15.625rem;
|
31386
31386
|
margin-top: 0.625rem;
|
31387
31387
|
}
|
31388
|
+
.a-FormulaEditor-settings.only-variable {
|
31389
|
+
height: 21.875rem;
|
31390
|
+
}
|
31388
31391
|
.a-FormulaEditor-panel {
|
31389
31392
|
display: flex;
|
31390
31393
|
flex: 1;
|
31391
31394
|
flex-flow: column nowrap;
|
31392
31395
|
justify-content: space-between;
|
31393
31396
|
align-items: stretch;
|
31394
|
-
height:
|
31397
|
+
height: 100%;
|
31395
31398
|
border-radius: 0.142rem;
|
31396
31399
|
border: 0.0625rem solid #d1d5db;
|
31397
31400
|
}
|
@@ -31416,10 +31419,11 @@ td.rdtQuarter.rdtDisabled:hover {
|
|
31416
31419
|
flex: 1;
|
31417
31420
|
display: flex;
|
31418
31421
|
flex-flow: column nowrap;
|
31419
|
-
max-height:
|
31422
|
+
max-height: calc(100% - 30px);
|
31423
|
+
overflow: hidden;
|
31420
31424
|
}
|
31421
31425
|
.a-FormulaEditor-panel-body--tabs {
|
31422
|
-
max-height:
|
31426
|
+
max-height: 100%;
|
31423
31427
|
}
|
31424
31428
|
.a-FormulaEditor-VariableList-root {
|
31425
31429
|
max-height: 100%;
|
@@ -31539,11 +31543,13 @@ td.rdtQuarter.rdtDisabled:hover {
|
|
31539
31543
|
vertical-align: middle;
|
31540
31544
|
text-align: center;
|
31541
31545
|
padding: 0 0.5rem;
|
31542
|
-
line-height: 17px;
|
31543
31546
|
border-radius: 0.142rem;
|
31544
31547
|
background: #f5f5f5;
|
31545
31548
|
color: #1c2b36;
|
31546
31549
|
}
|
31550
|
+
.a-FormulaEditor-VariableList .a-GroupedSelection-item-tag {
|
31551
|
+
line-height: 17px;
|
31552
|
+
}
|
31547
31553
|
.a-FormulaEditor-FuncList {
|
31548
31554
|
display: flex;
|
31549
31555
|
flex-flow: row nowrap;
|
@@ -31711,6 +31717,39 @@ td.rdtQuarter.rdtDisabled:hover {
|
|
31711
31717
|
padding: 0 2px;
|
31712
31718
|
}
|
31713
31719
|
|
31720
|
+
.a-FormulaPicker.is-input-group {
|
31721
|
+
border: 0.0625rem solid #d1d5db;
|
31722
|
+
padding: calc(
|
31723
|
+
(
|
31724
|
+
1.875rem - 1.4285714286 *
|
31725
|
+
0.875rem - 0.125rem
|
31726
|
+
) / 2
|
31727
|
+
) 0.5rem;
|
31728
|
+
border-radius: 0.142rem;
|
31729
|
+
}
|
31730
|
+
.a-FormulaPicker.is-input-group .a-FormulaPicker-input {
|
31731
|
+
display: inline-block;
|
31732
|
+
width: 100%;
|
31733
|
+
background: none;
|
31734
|
+
padding: 0;
|
31735
|
+
border: 0;
|
31736
|
+
margin: 0;
|
31737
|
+
}
|
31738
|
+
.a-FormulaPicker.is-input-group .a-FormulaPicker-input:focus {
|
31739
|
+
border: none;
|
31740
|
+
outline: none;
|
31741
|
+
box-sizing: none;
|
31742
|
+
}
|
31743
|
+
.a-FormulaPicker.is-input-group .a-FormulaPicker-toggler .icon-function {
|
31744
|
+
transform: scale(1.6);
|
31745
|
+
}
|
31746
|
+
.a-FormulaPicker.is-input-group .a-FormulaPicker-toggler .icon-ellipsis-v {
|
31747
|
+
transform: rotate(90deg);
|
31748
|
+
}
|
31749
|
+
.a-FormulaPicker.is-input-group .a-FormulaPicker-toggler:hover {
|
31750
|
+
cursor: pointer;
|
31751
|
+
}
|
31752
|
+
|
31714
31753
|
.a-Timeline-vertical {
|
31715
31754
|
display: flex;
|
31716
31755
|
flex-flow: column;
|
package/lib/themes/ang.css
CHANGED
@@ -26149,6 +26149,7 @@ input.a-TextControl-input-password {
|
|
26149
26149
|
margin-left: 0;
|
26150
26150
|
border: 0;
|
26151
26151
|
border-style: solid;
|
26152
|
+
background: transparent;
|
26152
26153
|
}
|
26153
26154
|
.a-Checkbox--button.a-Checkbox--checkbox > i + span {
|
26154
26155
|
max-width: 6.25rem;
|
@@ -27203,6 +27204,7 @@ input.a-TextControl-input-password {
|
|
27203
27204
|
margin-right: var(--gap-xs);
|
27204
27205
|
}
|
27205
27206
|
.a-Select-input > input {
|
27207
|
+
width: 100%;
|
27206
27208
|
outline: none;
|
27207
27209
|
border: none;
|
27208
27210
|
flex-grow: 1;
|
@@ -27212,7 +27214,6 @@ input.a-TextControl-input-password {
|
|
27212
27214
|
}
|
27213
27215
|
.a-Select-option {
|
27214
27216
|
cursor: pointer;
|
27215
|
-
min-width: 7.5rem;
|
27216
27217
|
padding: calc( ( var(--Form-select-menu-height) - var(--Form-input-lineHeight) * var(--Form-input-fontSize) ) / 2 ) var(--Form-select-paddingX);
|
27217
27218
|
}
|
27218
27219
|
.a-Select-option.is-active {
|
@@ -27298,7 +27299,6 @@ input.a-TextControl-input-password {
|
|
27298
27299
|
box-shadow: var(--Form-select-outer-boxShadow);
|
27299
27300
|
border-top-left-radius: 0;
|
27300
27301
|
border-top-right-radius: 0;
|
27301
|
-
min-width: 6.25rem;
|
27302
27302
|
}
|
27303
27303
|
.a-Select-popover.a-PopOver--leftTopLeftBottom {
|
27304
27304
|
margin-top: calc( (var(--Form-select-popoverGap) - var(--Form-select-outer-borderWidth)) * -1 );
|
@@ -32555,13 +32555,16 @@ td.rdtQuarter.rdtDisabled:hover {
|
|
32555
32555
|
height: 15.625rem;
|
32556
32556
|
margin-top: 0.625rem;
|
32557
32557
|
}
|
32558
|
+
.a-FormulaEditor-settings.only-variable {
|
32559
|
+
height: 21.875rem;
|
32560
|
+
}
|
32558
32561
|
.a-FormulaEditor-panel {
|
32559
32562
|
display: flex;
|
32560
32563
|
flex: 1;
|
32561
32564
|
flex-flow: column nowrap;
|
32562
32565
|
justify-content: space-between;
|
32563
32566
|
align-items: stretch;
|
32564
|
-
height:
|
32567
|
+
height: 100%;
|
32565
32568
|
border-radius: var(--borderRadius);
|
32566
32569
|
border: var(--Form-input-borderWidth) solid var(--Form-input-borderColor);
|
32567
32570
|
}
|
@@ -32586,10 +32589,11 @@ td.rdtQuarter.rdtDisabled:hover {
|
|
32586
32589
|
flex: 1;
|
32587
32590
|
display: flex;
|
32588
32591
|
flex-flow: column nowrap;
|
32589
|
-
max-height:
|
32592
|
+
max-height: calc(100% - 30px);
|
32593
|
+
overflow: hidden;
|
32590
32594
|
}
|
32591
32595
|
.a-FormulaEditor-panel-body--tabs {
|
32592
|
-
max-height:
|
32596
|
+
max-height: 100%;
|
32593
32597
|
}
|
32594
32598
|
.a-FormulaEditor-VariableList-root {
|
32595
32599
|
max-height: 100%;
|
@@ -32709,11 +32713,13 @@ td.rdtQuarter.rdtDisabled:hover {
|
|
32709
32713
|
vertical-align: middle;
|
32710
32714
|
text-align: center;
|
32711
32715
|
padding: 0 0.5rem;
|
32712
|
-
line-height: 17px;
|
32713
32716
|
border-radius: var(--borderRadius);
|
32714
32717
|
background: #f5f5f5;
|
32715
32718
|
color: var(--black);
|
32716
32719
|
}
|
32720
|
+
.a-FormulaEditor-VariableList .a-GroupedSelection-item-tag {
|
32721
|
+
line-height: 17px;
|
32722
|
+
}
|
32717
32723
|
.a-FormulaEditor-FuncList {
|
32718
32724
|
display: flex;
|
32719
32725
|
flex-flow: row nowrap;
|
@@ -32881,6 +32887,34 @@ td.rdtQuarter.rdtDisabled:hover {
|
|
32881
32887
|
padding: 0 2px;
|
32882
32888
|
}
|
32883
32889
|
|
32890
|
+
.a-FormulaPicker.is-input-group {
|
32891
|
+
border: var(--Form-input-borderWidth) solid var(--Form-input-borderColor);
|
32892
|
+
padding: var(--Form-input-paddingY) var(--Form-input-paddingX);
|
32893
|
+
border-radius: var(--borderRadius);
|
32894
|
+
}
|
32895
|
+
.a-FormulaPicker.is-input-group .a-FormulaPicker-input {
|
32896
|
+
display: inline-block;
|
32897
|
+
width: 100%;
|
32898
|
+
background: none;
|
32899
|
+
padding: 0;
|
32900
|
+
border: 0;
|
32901
|
+
margin: 0;
|
32902
|
+
}
|
32903
|
+
.a-FormulaPicker.is-input-group .a-FormulaPicker-input:focus {
|
32904
|
+
border: none;
|
32905
|
+
outline: none;
|
32906
|
+
box-sizing: none;
|
32907
|
+
}
|
32908
|
+
.a-FormulaPicker.is-input-group .a-FormulaPicker-toggler .icon-function {
|
32909
|
+
transform: scale(1.6);
|
32910
|
+
}
|
32911
|
+
.a-FormulaPicker.is-input-group .a-FormulaPicker-toggler .icon-ellipsis-v {
|
32912
|
+
transform: rotate(90deg);
|
32913
|
+
}
|
32914
|
+
.a-FormulaPicker.is-input-group .a-FormulaPicker-toggler:hover {
|
32915
|
+
cursor: pointer;
|
32916
|
+
}
|
32917
|
+
|
32884
32918
|
.a-Timeline-vertical {
|
32885
32919
|
display: flex;
|
32886
32920
|
flex-flow: column;
|