amis 1.6.5-beta.4 → 1.7.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (99) hide show
  1. package/lib/components/PopUp.js +2 -1
  2. package/lib/components/PopUp.js.map +2 -2
  3. package/lib/components/Range.js.map +2 -2
  4. package/lib/index.js +1 -1
  5. package/lib/renderers/Form/InputColor.js +3 -1
  6. package/lib/renderers/Form/InputColor.js.map +2 -2
  7. package/lib/renderers/Form/InputDate.js +3 -1
  8. package/lib/renderers/Form/InputDate.js.map +2 -2
  9. package/lib/renderers/Form/InputDateRange.js +3 -1
  10. package/lib/renderers/Form/InputDateRange.js.map +2 -2
  11. package/lib/renderers/Form/InputExcel.d.ts +4 -0
  12. package/lib/renderers/Form/InputExcel.js +33 -6
  13. package/lib/renderers/Form/InputExcel.js.map +2 -2
  14. package/lib/renderers/Form/InputFile.d.ts +4 -1
  15. package/lib/renderers/Form/InputFile.js +9 -0
  16. package/lib/renderers/Form/InputFile.js.map +2 -2
  17. package/lib/renderers/Form/InputImage.d.ts +4 -1
  18. package/lib/renderers/Form/InputImage.js +12 -2
  19. package/lib/renderers/Form/InputImage.js.map +2 -2
  20. package/lib/renderers/Form/InputRange.d.ts +27 -9
  21. package/lib/renderers/Form/InputRange.js +88 -23
  22. package/lib/renderers/Form/InputRange.js.map +2 -2
  23. package/lib/renderers/Form/Select.js +3 -1
  24. package/lib/renderers/Form/Select.js.map +2 -2
  25. package/lib/renderers/Form/Switch.d.ts +7 -6
  26. package/lib/renderers/Form/Switch.js +4 -1
  27. package/lib/renderers/Form/Switch.js.map +2 -2
  28. package/lib/renderers/Log.js +2 -1
  29. package/lib/renderers/Log.js.map +2 -2
  30. package/lib/renderers/PopOver.js +1 -1
  31. package/lib/renderers/PopOver.js.map +2 -2
  32. package/lib/renderers/Tabs.js +1 -1
  33. package/lib/renderers/Tabs.js.map +2 -2
  34. package/lib/renderers/Video.d.ts +6 -0
  35. package/lib/renderers/Video.js +13 -6
  36. package/lib/renderers/Video.js.map +2 -2
  37. package/lib/store/table.js +1 -1
  38. package/lib/store/table.js.map +2 -2
  39. package/lib/themes/ang-ie11.css +16 -6
  40. package/lib/themes/ang.css +16 -6
  41. package/lib/themes/ang.css.map +1 -1
  42. package/lib/themes/antd-ie11.css +16 -6
  43. package/lib/themes/antd.css +16 -6
  44. package/lib/themes/antd.css.map +1 -1
  45. package/lib/themes/cxd-ie11.css +16 -6
  46. package/lib/themes/cxd.css +16 -6
  47. package/lib/themes/cxd.css.map +1 -1
  48. package/lib/themes/dark-ie11.css +16 -6
  49. package/lib/themes/dark.css +16 -6
  50. package/lib/themes/dark.css.map +1 -1
  51. package/lib/themes/default-ie11.css +16 -6
  52. package/lib/themes/default.css +16 -6
  53. package/lib/themes/default.css.map +1 -1
  54. package/package.json +1 -1
  55. package/schema.json +15521 -504
  56. package/scss/components/_city-area.scss +2 -0
  57. package/scss/components/_popup.scss +13 -3
  58. package/scss/components/form/_switch.scss +1 -3
  59. package/sdk/ang-ie11.css +18 -6
  60. package/sdk/ang.css +18 -6
  61. package/sdk/antd-ie11.css +18 -6
  62. package/sdk/antd.css +18 -6
  63. package/sdk/barcode.js +51 -51
  64. package/sdk/charts.js +14 -14
  65. package/sdk/codemirror.js +7 -7
  66. package/sdk/color-picker.js +65 -65
  67. package/sdk/cropperjs.js +2 -2
  68. package/sdk/cxd-ie11.css +18 -6
  69. package/sdk/cxd.css +18 -6
  70. package/sdk/dark-ie11.css +18 -6
  71. package/sdk/dark.css +18 -6
  72. package/sdk/exceljs.js +1 -1
  73. package/sdk/markdown.js +69 -69
  74. package/sdk/papaparse.js +1 -1
  75. package/sdk/renderers/Form/CityDB.js +1 -1
  76. package/sdk/rest.js +17 -17
  77. package/sdk/rich-text.js +62 -62
  78. package/sdk/sdk-ie11.css +18 -6
  79. package/sdk/sdk.css +18 -6
  80. package/sdk/sdk.js +1246 -1246
  81. package/sdk/thirds/hls.js/hls.js +1 -1
  82. package/sdk/thirds/mpegts.js/mpegts.js +1 -1
  83. package/sdk/tinymce.js +57 -57
  84. package/src/components/PopUp.tsx +6 -5
  85. package/src/components/Range.tsx +7 -1
  86. package/src/renderers/Form/InputColor.tsx +2 -0
  87. package/src/renderers/Form/InputDate.tsx +2 -0
  88. package/src/renderers/Form/InputDateRange.tsx +2 -0
  89. package/src/renderers/Form/InputExcel.tsx +27 -5
  90. package/src/renderers/Form/InputFile.tsx +13 -1
  91. package/src/renderers/Form/InputImage.tsx +32 -12
  92. package/src/renderers/Form/InputRange.tsx +99 -40
  93. package/src/renderers/Form/Select.tsx +2 -0
  94. package/src/renderers/Form/Switch.tsx +16 -9
  95. package/src/renderers/Log.tsx +2 -1
  96. package/src/renderers/PopOver.tsx +1 -1
  97. package/src/renderers/Tabs.tsx +1 -1
  98. package/src/renderers/Video.tsx +21 -6
  99. package/src/store/table.ts +1 -1
@@ -69,7 +69,7 @@ var HocPopOver = function (config) {
69
69
  if (popOver === true) {
70
70
  schema = {
71
71
  type: 'panel',
72
- body: '${name}'
72
+ body: "${".concat(name, "}")
73
73
  };
74
74
  }
75
75
  else if (popOver &&
@@ -6,8 +6,8 @@
6
6
  "/src/renderers/PopOver.tsx"
7
7
  ],
8
8
  "names": [],
9
- "mappings": "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",
9
+ "mappings": ";AAAA;;;GAGG;;;;AAEH,6DAA0B;AAC1B,uCAAsC;AAGtC,iGAA0D;AAC1D,+EAAsD;AACtD,+EAA4C;AAC5C,6CAAyC;AAEzC,gDAA6C;AAuHtC,IAAM,UAAU,GACrB,UACE,MAGM;IAHN,uBAAA,EAAA,WAGM;IAER,OAAA,UAAC,SAAmC;QAClC,IAAI,kBAAkB,GAA4B,IAAI,CAAC;QACvD;YAA+B,iDAA2C;YAIxE,0BAAY,KAAmB;gBAA/B,YACE,kBAAM,KAAK,CAAC,SAWb;gBATC,KAAI,CAAC,WAAW,GAAG,KAAI,CAAC,WAAW,CAAC,IAAI,CAAC,KAAI,CAAC,CAAC;gBAC/C,KAAI,CAAC,YAAY,GAAG,KAAI,CAAC,YAAY,CAAC,IAAI,CAAC,KAAI,CAAC,CAAC;gBACjD,KAAI,CAAC,iBAAiB,GAAG,KAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,KAAI,CAAC,CAAC;gBAC3D,KAAI,CAAC,eAAe,GAAG,KAAI,CAAC,eAAe,CAAC,IAAI,CAAC,KAAI,CAAC,CAAC;gBACvD,KAAI,CAAC,SAAS,GAAG,KAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAI,CAAC,CAAC;gBAC3C,gEAAgE;gBAChE,KAAI,CAAC,KAAK,GAAG;oBACX,QAAQ,EAAE,KAAK;iBAChB,CAAC;;YACJ,CAAC;YAED,oCAAS,GAAT,UAAU,GAAQ;gBAChB,IAAI,CAAC,MAAM,GAAG,GAAG,CAAC;YACpB,CAAC;YAED,sCAAW,GAAX;gBAAA,iBAUC;gBATC,IAAM,eAAe,GAAG,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC;gBACnD,kBAAkB,aAAlB,kBAAkB,uBAAlB,kBAAkB,CAAE,YAAY,EAAE,CAAC;gBACnC,kBAAkB,GAAG,IAAI,CAAC;gBAC1B,IAAI,CAAC,QAAQ,CACX;oBACE,QAAQ,EAAE,IAAI;iBACf,EACD,cAAM,OAAA,eAAe,IAAI,eAAe,CAAC,KAAI,CAAC,KAAK,CAAC,OAAO,CAAC,EAAtD,CAAsD,CAC7D,CAAC;YACJ,CAAC;YAED,uCAAY,GAAZ;gBAAA,iBAcC;gBAbC,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gBACzB,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE;oBACxB,OAAO;iBACR;gBAED,kBAAkB,GAAG,IAAI,CAAC;gBAC1B,IAAM,eAAe,GAAG,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC;gBACnD,IAAI,CAAC,QAAQ,CACX;oBACE,QAAQ,EAAE,KAAK;iBAChB,EACD,cAAM,OAAA,eAAe,IAAI,eAAe,CAAC,KAAI,CAAC,KAAK,CAAC,OAAO,CAAC,EAAtD,CAAsD,CAC7D,CAAC;YACJ,CAAC;YAED,4CAAiB,GAAjB;gBACE,YAAY;gBACZ,IAAI,CAAC,KAAK,GAAG,UAAU,CAAC,IAAI,CAAC,YAAY,EAAE,IAAI,CAAC,CAAC;YACnD,CAAC;YAED,0CAAe,GAAf;gBACE,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YAC3B,CAAC;YAED,sCAAW,GAAX;gBACQ,IAAA,KAAwC,IAAI,CAAC,KAAK,EAAjD,OAAO,aAAA,EAAE,IAAI,UAAA,EAAE,KAAK,WAAA,EAAa,EAAE,eAAc,CAAC;gBAEzD,IAAI,MAAM,CAAC;gBAEX,IAAI,OAAO,KAAK,IAAI,EAAE;oBACpB,MAAM,GAAG;wBACP,IAAI,EAAE,OAAO;wBACb,IAAI,EAAE,YAAM,IAAI,MAAG;qBACpB,CAAC;iBACH;qBAAM,IACL,OAAO;oBACP,CAAC,OAAO,CAAC,IAAI,KAAK,QAAQ,IAAI,OAAO,CAAC,IAAI,KAAK,QAAQ,CAAC,EACxD;oBACA,MAAM,2BACJ,IAAI,EAAE,OAAO,CAAC,IAAI,EAClB,OAAO,EAAE;4BACP;gCACE,KAAK,EAAE,EAAE,CAAC,cAAc,CAAC;gCACzB,IAAI,EAAE,QAAQ;gCACd,UAAU,EAAE,QAAQ;6BACrB;yBACF,IACE,OAAO,CACX,CAAC;iBACH;qBAAM,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE;oBACtC,MAAM,GAAG;wBACP,IAAI,EAAE,OAAO;wBACb,IAAI,EAAE,OAAO;qBACd,CAAC;iBACH;qBAAM,IAAI,OAAO,EAAE;oBAClB,MAAM,2BACJ,IAAI,EAAE,OAAO,IACV,OAAO,CACX,CAAC;iBACH;gBAED,OAAO,MAAM,IAAI,OAAO,CAAC;YAC3B,CAAC;YAED,wCAAa,GAAb;gBAAA,iBAwFC;;gBAvFK,IAAA,KAMA,IAAI,CAAC,KAAK,EALZ,OAAO,aAAA,EACP,MAAM,YAAA,EACN,gBAAgB,sBAAA,EACJ,EAAE,gBAAA,EACD,EAAE,iBACH,CAAC;gBACf,IACE,OAAO;oBACP,CAAE,OAA+B,CAAC,IAAI,KAAK,QAAQ;wBAChD,OAA+B,CAAC,IAAI,KAAK,QAAQ,CAAC,EACrD;oBACA,OAAO,MAAM,CAAC,gBAAgB,EAAE,IAAI,CAAC,WAAW,EAAE,EAAE;wBAClD,IAAI,EAAE,IAAI;wBACV,OAAO,EAAE,IAAI,CAAC,YAAY;wBAC1B,SAAS,EAAE,IAAI,CAAC,YAAY;qBAC7B,CAAC,CAAC;iBACJ;gBAED,IAAM,OAAO,GAAG,MAAM,CAAC,gBAAgB,EAAE,IAAI,CAAC,WAAW,EAAE,EAAE;oBAC3D,SAAS,EAAE,EAAE,CAAE,OAA+B,CAAC,SAAS,CAAC;iBAC1D,CAAgB,CAAC;gBAElB,IAAI,CAAC,gBAAgB,EAAE;oBACrB,gBAAgB,GAAG,cAAM,OAAA,IAAA,uBAAW,EAAC,KAAI,CAAC,EAAjB,CAAiB,CAAC;iBAC5C;gBAED,IAAM,QAAQ,GACZ,CAAC,OAAO,IAAK,OAA+B,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;gBAC/D,IAAM,OAAO,GAAG,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;gBAC1C,OAAO,OAAO,CAAC,CAAC,CAAC,CACf,8BAAC,qBAAS,IACR,QAAQ,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,EAC9B,WAAW,EAAE,IAAI,CAAC,YAAY,IAE7B,UAAC,GAAQ;;oBACR,OAAO,CACL,uCACE,SAAS,EAAE,EAAE,CAAC,0CAAmC,QAAQ,CAAE,CAAC,EAC5D,YAAY,EACV,CAAA,MAAC,OAA+B,0CAAE,OAAO,MAAK,OAAO;4BACnD,CAAC,CAAC,KAAI,CAAC,YAAY;4BACnB,CAAC,CAAC,SAAS,EAEf,YAAY,EACV,CAAA,MAAC,OAA+B,0CAAE,OAAO,MAAK,OAAO;4BACnD,CAAC,CAAC,KAAI,CAAC,eAAe;4BACtB,CAAC,CAAC,SAAS,EAEf,GAAG,EAAE,GAAG,IAEP,OAAO,CACJ,CACP,CAAC;gBACJ,CAAC,CACS,CACb,CAAC,CAAC,CAAC,CACF,8BAAC,iBAAO,IACN,SAAS,EAAE,gBAAgB,EAC3B,SAAS,EAAE,QAAQ,IAAI,MAAM,CAAC,QAAQ,IAAI,QAAQ,EAClD,MAAM,EAAE,cAAM,OAAA,KAAI,CAAC,MAAM,EAAX,CAAW,EACzB,MAAM,EAAE,IAAI,CAAC,YAAY,EACzB,SAAS,QACT,IAAI;oBAEJ,8BAAC,iBAAO,IACN,WAAW,EAAE,EAAE,EACf,SAAS,EAAE,EAAE,CACX,qBAAqB,EACpB,OAA+B,CAAC,gBAAgB,CAClD,EACD,MAAM,EAAG,OAA+B,CAAC,MAAM,EAC/C,YAAY,EACV,CAAA,MAAC,OAA+B,0CAAE,OAAO,MAAK,OAAO;4BACnD,CAAC,CAAC,IAAI,CAAC,YAAY;4BACnB,CAAC,CAAC,SAAS,EAEf,YAAY,EACV,CAAA,MAAC,OAA+B,0CAAE,OAAO,MAAK,OAAO;4BACnD,CAAC,CAAC,IAAI,CAAC,eAAe;4BACtB,CAAC,CAAC,SAAS,IAGd,OAAO,CACA,CACF,CACX,CAAC;YACJ,CAAC;YAED,iCAAM,GAAN;;gBACQ,IAAA,KAQF,IAAI,CAAC,KAAK,EAPZ,OAAO,aAAA,EACP,cAAc,oBAAA,EACd,aAAa,mBAAA,EACb,SAAS,eAAA,EACT,KAAK,WAAA,EACO,EAAE,gBAAA,EACd,QAAQ,cACI,CAAC;gBAEf,IACE,CAAC,OAAO;oBACR,cAAc,KAAK,KAAK;oBACxB,KAAK;oBACL,aAAa,KAAK,KAAK,EACvB;oBACA,OAAO,8BAAC,SAAS,4BAAK,IAAI,CAAC,KAAK,EAAI,CAAC;iBACtC;gBAED,IAAM,YAAY,GAAQ,EAAE,CAAC;gBAC7B,IAAM,OAAO,GAAG,MAAC,OAA+B,0CAAE,OAAO,CAAC;gBAC1D,IAAI,OAAO,KAAK,OAAO,EAAE;oBACvB,YAAY,CAAC,YAAY,GAAG,IAAI,CAAC,WAAW,CAAC;oBAC7C,YAAY,CAAC,YAAY,GAAG,IAAI,CAAC,iBAAiB,CAAC;iBACpD;qBAAM;oBACL,YAAY,CAAC,OAAO,GAAG,IAAI,CAAC,WAAW,CAAC;iBACzC;gBAED,OAAO,CACL,8BAAC,SAAS,4BACJ,IAAI,CAAC,KAAK,IACd,SAAS,EAAE,EAAE,CAAC,oBAAoB,EAAE,SAAS,EAAE;wBAC7C,EAAE,EAAE,IAAI,CAAC,KAAK,CAAC,QAAQ;qBACxB,CAAC,EACF,GAAG,EAAE,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,KAEpD,CAAA,MAAC,OAA+B,0CAAE,QAAQ,MAAK,KAAK,CAAC,CAAC,CAAC,CACtD;oBACE,8BAAC,SAAS,4BAAK,IAAI,CAAC,KAAK,IAAE,gBAAgB,EAAE,EAAE,EAAE,KAAK,UAAG;oBACzD,8DACE,GAAG,EAAC,aAAa,EACjB,SAAS,EAAE,EAAE,CAAC,kBAAkB,CAAC,IAC7B,YAAY,IAChB,GAAG,EAAE,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS;wBAErD,8BAAC,YAAI,IAAC,IAAI,EAAC,SAAS,EAAC,SAAS,EAAC,MAAM,GAAG,CACnC;oBACN,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC,IAAI,CACjD,CACJ,CAAC,CAAC,CAAC,CACF;oBACE,6DACE,SAAS,EAAE,EAAE,CAAC,mBAAmB,CAAC,IAC9B,YAAY,IAChB,GAAG,EAAE,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS;wBAErD,8BAAC,SAAS,4BAAK,IAAI,CAAC,KAAK,IAAE,gBAAgB,EAAE,EAAE,EAAE,KAAK,UAAG,CACrD;oBACL,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC,IAAI,CACjD,CACJ,CACS,CACb,CAAC;YACJ,CAAC;YA1PM,kCAAiB,GAAG,SAAS,CAAC;YA2PvC,uBAAC;SAAA,AA9PD,CAA+B,eAAK,CAAC,SAAS,GA8P7C;QAED,IAAA,iCAAmB,EAAC,gBAAgB,EAAE,SAAS,CAAC,CAAC;QAEjD,OAAO,gBAAgB,CAAC;IAC1B,CAAC;AArQD,CAqQC,CAAC;AA5QS,QAAA,UAAU,cA4QnB;AAEJ,kBAAe,kBAAU,CAAC",
10
10
  "sourcesContent": [
11
- "/**\n * @file scoped.jsx.\n * @author fex\n */\n\nimport React from 'react';\nimport {findDOMNode} from 'react-dom';\nimport {RendererProps} from '../factory';\nimport cx from 'classnames';\nimport hoistNonReactStatic from 'hoist-non-react-statics';\nimport PopOver, {Offset} from '../components/PopOver';\nimport Overlay from '../components/Overlay';\nimport {Icon} from '../components/icons';\nimport {SchemaCollection, SchemaExpression} from '../Schema';\nimport {RootClose} from '../utils/RootClose';\n\nexport interface SchemaPopOverObject {\n /**\n * 类名\n */\n className?: string;\n\n /**\n * 弹框外层类名\n */\n popOverClassName?: string;\n\n /**\n * 配置当前行是否启动,要用表达式\n */\n popOverEnableOn?: SchemaExpression;\n\n /**\n * 弹出模式\n */\n mode?: 'dialog' | 'drawer' | 'popOver';\n\n /**\n * 是弹窗形式的时候有用。\n */\n size?: 'sm' | 'md' | 'lg' | 'xl';\n\n /**\n * 弹出位置\n */\n position?:\n | 'center'\n | 'left-top'\n | 'left-top-left-top'\n | 'left-top-left-center'\n | 'left-top-left-bottom'\n | 'left-top-center-top'\n | 'left-top-center-center'\n | 'left-top-center-bottom'\n | 'left-top-right-top'\n | 'left-top-right-center'\n | 'left-top-right-bottom'\n | 'right-top'\n | 'right-top-left-top'\n | 'right-top-left-center'\n | 'right-top-left-bottom'\n | 'right-top-center-top'\n | 'right-top-center-center'\n | 'right-top-center-bottom'\n | 'right-top-right-top'\n | 'right-top-right-center'\n | 'right-top-right-bottom'\n | 'left-bottom'\n | 'left-bottom-left-top'\n | 'left-bottom-left-center'\n | 'left-bottom-left-bottom'\n | 'left-bottom-center-top'\n | 'left-bottom-center-center'\n | 'left-bottom-center-bottom'\n | 'left-bottom-right-top'\n | 'left-bottom-right-center'\n | 'left-bottom-right-bottom'\n | 'right-bottom'\n | 'right-bottom-left-top'\n | 'right-bottom-left-center'\n | 'right-bottom-left-bottom'\n | 'right-bottom-center-top'\n | 'right-bottom-center-center'\n | 'right-bottom-center-bottom'\n | 'right-bottom-right-top'\n | 'right-bottom-right-center'\n | 'right-bottom-right-bottom'\n | 'fixed-center'\n | 'fixed-left-top'\n | 'fixed-right-top'\n | 'fixed-left-bottom'\n | 'fixed-right-bottom';\n\n /**\n * 触发条件,默认是 click\n */\n trigger?: 'click' | 'hover';\n\n /**\n * 是否显示查看更多的 icon,通常是放大图标。\n */\n showIcon?: boolean;\n\n /**\n * 偏移量\n */\n offset?: {\n top?: number;\n left?: number;\n };\n\n /**\n * 标题\n */\n title?: string;\n\n body?: SchemaCollection;\n}\n\nexport type SchemaPopOver = boolean | SchemaPopOverObject;\n\nexport interface PopOverProps extends RendererProps {\n name?: string;\n label?: string;\n popOver: boolean | SchemaPopOverObject;\n onPopOverOpened: (popover: any) => void;\n onPopOverClosed: (popover: any) => void;\n}\n\nexport interface PopOverState {\n isOpened: boolean;\n}\n\nexport const HocPopOver =\n (\n config: {\n targetOutter?: boolean; // 定位目标为整个外层\n position?: string;\n } = {}\n ) =>\n (Component: React.ComponentType<any>): any => {\n let lastOpenedInstance: PopOverComponent | null = null;\n class PopOverComponent extends React.Component<PopOverProps, PopOverState> {\n target: HTMLElement;\n timer: ReturnType<typeof setTimeout>;\n static ComposedComponent = Component;\n constructor(props: PopOverProps) {\n super(props);\n\n this.openPopOver = this.openPopOver.bind(this);\n this.closePopOver = this.closePopOver.bind(this);\n this.closePopOverLater = this.closePopOverLater.bind(this);\n this.clearCloseTimer = this.clearCloseTimer.bind(this);\n this.targetRef = this.targetRef.bind(this);\n // this.handleClickOutside = this.handleClickOutside.bind(this);\n this.state = {\n isOpened: false\n };\n }\n\n targetRef(ref: any) {\n this.target = ref;\n }\n\n openPopOver() {\n const onPopOverOpened = this.props.onPopOverOpened;\n lastOpenedInstance?.closePopOver();\n lastOpenedInstance = this;\n this.setState(\n {\n isOpened: true\n },\n () => onPopOverOpened && onPopOverOpened(this.props.popOver)\n );\n }\n\n closePopOver() {\n clearTimeout(this.timer);\n if (!this.state.isOpened) {\n return;\n }\n\n lastOpenedInstance = null;\n const onPopOverClosed = this.props.onPopOverClosed;\n this.setState(\n {\n isOpened: false\n },\n () => onPopOverClosed && onPopOverClosed(this.props.popOver)\n );\n }\n\n closePopOverLater() {\n // 5s 后自动关闭。\n this.timer = setTimeout(this.closePopOver, 2000);\n }\n\n clearCloseTimer() {\n clearTimeout(this.timer);\n }\n\n buildSchema() {\n const {popOver, name, label, translate: __} = this.props;\n\n let schema;\n\n if (popOver === true) {\n schema = {\n type: 'panel',\n body: '${name}'\n };\n } else if (\n popOver &&\n (popOver.mode === 'dialog' || popOver.mode === 'drawer')\n ) {\n schema = {\n type: popOver.mode,\n actions: [\n {\n label: __('Dialog.close'),\n type: 'button',\n actionType: 'cancel'\n }\n ],\n ...popOver\n };\n } else if (typeof popOver === 'string') {\n schema = {\n type: 'panel',\n body: popOver\n };\n } else if (popOver) {\n schema = {\n type: 'panel',\n ...popOver\n };\n }\n\n return schema || 'error';\n }\n\n renderPopOver() {\n let {\n popOver,\n render,\n popOverContainer,\n classnames: cx,\n classPrefix: ns\n } = this.props;\n if (\n popOver &&\n ((popOver as SchemaPopOverObject).mode === 'dialog' ||\n (popOver as SchemaPopOverObject).mode === 'drawer')\n ) {\n return render('popover-detail', this.buildSchema(), {\n show: true,\n onClose: this.closePopOver,\n onConfirm: this.closePopOver\n });\n }\n\n const content = render('popover-detail', this.buildSchema(), {\n className: cx((popOver as SchemaPopOverObject).className)\n }) as JSX.Element;\n\n if (!popOverContainer) {\n popOverContainer = () => findDOMNode(this);\n }\n\n const position =\n (popOver && (popOver as SchemaPopOverObject).position) || '';\n const isFixed = /^fixed\\-/.test(position);\n return isFixed ? (\n <RootClose\n disabled={!this.state.isOpened}\n onRootClose={this.closePopOver}\n >\n {(ref: any) => {\n return (\n <div\n className={cx(`PopOverAble--fixed PopOverAble--${position}`)}\n onMouseLeave={\n (popOver as SchemaPopOverObject)?.trigger === 'hover'\n ? this.closePopOver\n : undefined\n }\n onMouseEnter={\n (popOver as SchemaPopOverObject)?.trigger === 'hover'\n ? this.clearCloseTimer\n : undefined\n }\n ref={ref}\n >\n {content}\n </div>\n );\n }}\n </RootClose>\n ) : (\n <Overlay\n container={popOverContainer}\n placement={position || config.position || 'center'}\n target={() => this.target}\n onHide={this.closePopOver}\n rootClose\n show\n >\n <PopOver\n classPrefix={ns}\n className={cx(\n 'PopOverAble-popover',\n (popOver as SchemaPopOverObject).popOverClassName\n )}\n offset={(popOver as SchemaPopOverObject).offset}\n onMouseLeave={\n (popOver as SchemaPopOverObject)?.trigger === 'hover'\n ? this.closePopOver\n : undefined\n }\n onMouseEnter={\n (popOver as SchemaPopOverObject)?.trigger === 'hover'\n ? this.clearCloseTimer\n : undefined\n }\n >\n {content}\n </PopOver>\n </Overlay>\n );\n }\n\n render() {\n const {\n popOver,\n popOverEnabled,\n popOverEnable,\n className,\n noHoc,\n classnames: cx,\n showIcon\n } = this.props;\n\n if (\n !popOver ||\n popOverEnabled === false ||\n noHoc ||\n popOverEnable === false\n ) {\n return <Component {...this.props} />;\n }\n\n const triggerProps: any = {};\n const trigger = (popOver as SchemaPopOverObject)?.trigger;\n if (trigger === 'hover') {\n triggerProps.onMouseEnter = this.openPopOver;\n triggerProps.onMouseLeave = this.closePopOverLater;\n } else {\n triggerProps.onClick = this.openPopOver;\n }\n\n return (\n <Component\n {...this.props}\n className={cx(`Field--popOverAble`, className, {\n in: this.state.isOpened\n })}\n ref={config.targetOutter ? this.targetRef : undefined}\n >\n {(popOver as SchemaPopOverObject)?.showIcon !== false ? (\n <>\n <Component {...this.props} wrapperComponent={''} noHoc />\n <span\n key=\"popover-btn\"\n className={cx('Field-popOverBtn')}\n {...triggerProps}\n ref={config.targetOutter ? undefined : this.targetRef}\n >\n <Icon icon=\"zoom-in\" className=\"icon\" />\n </span>\n {this.state.isOpened ? this.renderPopOver() : null}\n </>\n ) : (\n <>\n <div\n className={cx('Field-popOverWrap')}\n {...triggerProps}\n ref={config.targetOutter ? undefined : this.targetRef}\n >\n <Component {...this.props} wrapperComponent={''} noHoc />\n </div>\n {this.state.isOpened ? this.renderPopOver() : null}\n </>\n )}\n </Component>\n );\n }\n }\n\n hoistNonReactStatic(PopOverComponent, Component);\n\n return PopOverComponent;\n };\n\nexport default HocPopOver;\n"
11
+ "/**\n * @file scoped.jsx.\n * @author fex\n */\n\nimport React from 'react';\nimport {findDOMNode} from 'react-dom';\nimport {RendererProps} from '../factory';\nimport cx from 'classnames';\nimport hoistNonReactStatic from 'hoist-non-react-statics';\nimport PopOver, {Offset} from '../components/PopOver';\nimport Overlay from '../components/Overlay';\nimport {Icon} from '../components/icons';\nimport {SchemaCollection, SchemaExpression} from '../Schema';\nimport {RootClose} from '../utils/RootClose';\n\nexport interface SchemaPopOverObject {\n /**\n * 类名\n */\n className?: string;\n\n /**\n * 弹框外层类名\n */\n popOverClassName?: string;\n\n /**\n * 配置当前行是否启动,要用表达式\n */\n popOverEnableOn?: SchemaExpression;\n\n /**\n * 弹出模式\n */\n mode?: 'dialog' | 'drawer' | 'popOver';\n\n /**\n * 是弹窗形式的时候有用。\n */\n size?: 'sm' | 'md' | 'lg' | 'xl';\n\n /**\n * 弹出位置\n */\n position?:\n | 'center'\n | 'left-top'\n | 'left-top-left-top'\n | 'left-top-left-center'\n | 'left-top-left-bottom'\n | 'left-top-center-top'\n | 'left-top-center-center'\n | 'left-top-center-bottom'\n | 'left-top-right-top'\n | 'left-top-right-center'\n | 'left-top-right-bottom'\n | 'right-top'\n | 'right-top-left-top'\n | 'right-top-left-center'\n | 'right-top-left-bottom'\n | 'right-top-center-top'\n | 'right-top-center-center'\n | 'right-top-center-bottom'\n | 'right-top-right-top'\n | 'right-top-right-center'\n | 'right-top-right-bottom'\n | 'left-bottom'\n | 'left-bottom-left-top'\n | 'left-bottom-left-center'\n | 'left-bottom-left-bottom'\n | 'left-bottom-center-top'\n | 'left-bottom-center-center'\n | 'left-bottom-center-bottom'\n | 'left-bottom-right-top'\n | 'left-bottom-right-center'\n | 'left-bottom-right-bottom'\n | 'right-bottom'\n | 'right-bottom-left-top'\n | 'right-bottom-left-center'\n | 'right-bottom-left-bottom'\n | 'right-bottom-center-top'\n | 'right-bottom-center-center'\n | 'right-bottom-center-bottom'\n | 'right-bottom-right-top'\n | 'right-bottom-right-center'\n | 'right-bottom-right-bottom'\n | 'fixed-center'\n | 'fixed-left-top'\n | 'fixed-right-top'\n | 'fixed-left-bottom'\n | 'fixed-right-bottom';\n\n /**\n * 触发条件,默认是 click\n */\n trigger?: 'click' | 'hover';\n\n /**\n * 是否显示查看更多的 icon,通常是放大图标。\n */\n showIcon?: boolean;\n\n /**\n * 偏移量\n */\n offset?: {\n top?: number;\n left?: number;\n };\n\n /**\n * 标题\n */\n title?: string;\n\n body?: SchemaCollection;\n}\n\nexport type SchemaPopOver = boolean | SchemaPopOverObject;\n\nexport interface PopOverProps extends RendererProps {\n name?: string;\n label?: string;\n popOver: boolean | SchemaPopOverObject;\n onPopOverOpened: (popover: any) => void;\n onPopOverClosed: (popover: any) => void;\n}\n\nexport interface PopOverState {\n isOpened: boolean;\n}\n\nexport const HocPopOver =\n (\n config: {\n targetOutter?: boolean; // 定位目标为整个外层\n position?: string;\n } = {}\n ) =>\n (Component: React.ComponentType<any>): any => {\n let lastOpenedInstance: PopOverComponent | null = null;\n class PopOverComponent extends React.Component<PopOverProps, PopOverState> {\n target: HTMLElement;\n timer: ReturnType<typeof setTimeout>;\n static ComposedComponent = Component;\n constructor(props: PopOverProps) {\n super(props);\n\n this.openPopOver = this.openPopOver.bind(this);\n this.closePopOver = this.closePopOver.bind(this);\n this.closePopOverLater = this.closePopOverLater.bind(this);\n this.clearCloseTimer = this.clearCloseTimer.bind(this);\n this.targetRef = this.targetRef.bind(this);\n // this.handleClickOutside = this.handleClickOutside.bind(this);\n this.state = {\n isOpened: false\n };\n }\n\n targetRef(ref: any) {\n this.target = ref;\n }\n\n openPopOver() {\n const onPopOverOpened = this.props.onPopOverOpened;\n lastOpenedInstance?.closePopOver();\n lastOpenedInstance = this;\n this.setState(\n {\n isOpened: true\n },\n () => onPopOverOpened && onPopOverOpened(this.props.popOver)\n );\n }\n\n closePopOver() {\n clearTimeout(this.timer);\n if (!this.state.isOpened) {\n return;\n }\n\n lastOpenedInstance = null;\n const onPopOverClosed = this.props.onPopOverClosed;\n this.setState(\n {\n isOpened: false\n },\n () => onPopOverClosed && onPopOverClosed(this.props.popOver)\n );\n }\n\n closePopOverLater() {\n // 5s 后自动关闭。\n this.timer = setTimeout(this.closePopOver, 2000);\n }\n\n clearCloseTimer() {\n clearTimeout(this.timer);\n }\n\n buildSchema() {\n const {popOver, name, label, translate: __} = this.props;\n\n let schema;\n\n if (popOver === true) {\n schema = {\n type: 'panel',\n body: `\\${${name}}`\n };\n } else if (\n popOver &&\n (popOver.mode === 'dialog' || popOver.mode === 'drawer')\n ) {\n schema = {\n type: popOver.mode,\n actions: [\n {\n label: __('Dialog.close'),\n type: 'button',\n actionType: 'cancel'\n }\n ],\n ...popOver\n };\n } else if (typeof popOver === 'string') {\n schema = {\n type: 'panel',\n body: popOver\n };\n } else if (popOver) {\n schema = {\n type: 'panel',\n ...popOver\n };\n }\n\n return schema || 'error';\n }\n\n renderPopOver() {\n let {\n popOver,\n render,\n popOverContainer,\n classnames: cx,\n classPrefix: ns\n } = this.props;\n if (\n popOver &&\n ((popOver as SchemaPopOverObject).mode === 'dialog' ||\n (popOver as SchemaPopOverObject).mode === 'drawer')\n ) {\n return render('popover-detail', this.buildSchema(), {\n show: true,\n onClose: this.closePopOver,\n onConfirm: this.closePopOver\n });\n }\n\n const content = render('popover-detail', this.buildSchema(), {\n className: cx((popOver as SchemaPopOverObject).className)\n }) as JSX.Element;\n\n if (!popOverContainer) {\n popOverContainer = () => findDOMNode(this);\n }\n\n const position =\n (popOver && (popOver as SchemaPopOverObject).position) || '';\n const isFixed = /^fixed\\-/.test(position);\n return isFixed ? (\n <RootClose\n disabled={!this.state.isOpened}\n onRootClose={this.closePopOver}\n >\n {(ref: any) => {\n return (\n <div\n className={cx(`PopOverAble--fixed PopOverAble--${position}`)}\n onMouseLeave={\n (popOver as SchemaPopOverObject)?.trigger === 'hover'\n ? this.closePopOver\n : undefined\n }\n onMouseEnter={\n (popOver as SchemaPopOverObject)?.trigger === 'hover'\n ? this.clearCloseTimer\n : undefined\n }\n ref={ref}\n >\n {content}\n </div>\n );\n }}\n </RootClose>\n ) : (\n <Overlay\n container={popOverContainer}\n placement={position || config.position || 'center'}\n target={() => this.target}\n onHide={this.closePopOver}\n rootClose\n show\n >\n <PopOver\n classPrefix={ns}\n className={cx(\n 'PopOverAble-popover',\n (popOver as SchemaPopOverObject).popOverClassName\n )}\n offset={(popOver as SchemaPopOverObject).offset}\n onMouseLeave={\n (popOver as SchemaPopOverObject)?.trigger === 'hover'\n ? this.closePopOver\n : undefined\n }\n onMouseEnter={\n (popOver as SchemaPopOverObject)?.trigger === 'hover'\n ? this.clearCloseTimer\n : undefined\n }\n >\n {content}\n </PopOver>\n </Overlay>\n );\n }\n\n render() {\n const {\n popOver,\n popOverEnabled,\n popOverEnable,\n className,\n noHoc,\n classnames: cx,\n showIcon\n } = this.props;\n\n if (\n !popOver ||\n popOverEnabled === false ||\n noHoc ||\n popOverEnable === false\n ) {\n return <Component {...this.props} />;\n }\n\n const triggerProps: any = {};\n const trigger = (popOver as SchemaPopOverObject)?.trigger;\n if (trigger === 'hover') {\n triggerProps.onMouseEnter = this.openPopOver;\n triggerProps.onMouseLeave = this.closePopOverLater;\n } else {\n triggerProps.onClick = this.openPopOver;\n }\n\n return (\n <Component\n {...this.props}\n className={cx(`Field--popOverAble`, className, {\n in: this.state.isOpened\n })}\n ref={config.targetOutter ? this.targetRef : undefined}\n >\n {(popOver as SchemaPopOverObject)?.showIcon !== false ? (\n <>\n <Component {...this.props} wrapperComponent={''} noHoc />\n <span\n key=\"popover-btn\"\n className={cx('Field-popOverBtn')}\n {...triggerProps}\n ref={config.targetOutter ? undefined : this.targetRef}\n >\n <Icon icon=\"zoom-in\" className=\"icon\" />\n </span>\n {this.state.isOpened ? this.renderPopOver() : null}\n </>\n ) : (\n <>\n <div\n className={cx('Field-popOverWrap')}\n {...triggerProps}\n ref={config.targetOutter ? undefined : this.targetRef}\n >\n <Component {...this.props} wrapperComponent={''} noHoc />\n </div>\n {this.state.isOpened ? this.renderPopOver() : null}\n </>\n )}\n </Component>\n );\n }\n }\n\n hoistNonReactStatic(PopOverComponent, Component);\n\n return PopOverComponent;\n };\n\nexport default HocPopOver;\n"
12
12
  ]
13
13
  }
@@ -104,7 +104,7 @@ var Tabs = /** @class */ (function (_super) {
104
104
  });
105
105
  localTabs = newLocalTabs;
106
106
  }
107
- if (props.location && props.location.hash !== preProps.location.hash) {
107
+ if (props.location && preProps.location && props.location.hash !== preProps.location.hash) {
108
108
  var hash_2 = props.location.hash.substring(1);
109
109
  if (!hash_2) {
110
110
  return;
@@ -6,8 +6,8 @@
6
6
  "/src/renderers/Tabs.tsx"
7
7
  ],
8
8
  "names": [],
9
- "mappings": ";;;;AAAA,6DAA0B;AAC1B,sCAAmD;AAEnD,kEAA+B;AAC/B,0CAQyB;AACzB,4EAAyC;AACzC,2CAAgE;AAShE,oCAAoC;AACpC,oDAI8B;AAE9B,oCAA+C;AAsL/C;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,UAAa,IAAsB,EAAE,MAAe,EAAE,IAAU;QAC9D,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,IAAI,CAAC,YAAY,CAAC,MAAC,GAAW,CAAC,KAAK,mCAAI,GAAG,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;aAC1D;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;QAErC,cAAc;QACd,IAAM,cAAc,GAAG,IAAA,gCAAuB,EAAC;YAC7C,IAAI,EAAE,KAAK,CAAC,IAAI;YAChB,MAAM,EAAE,IAAA,sCAAwB,EAAC,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,IAAI,EAAE,OAAO,CAAC;SACpE,EAAE;YACD,IAAI,EAAE,QAAQ,CAAC,IAAI;YACnB,MAAM,EAAE,IAAA,sCAAwB,EAAC,QAAQ,CAAC,MAAM,EAAE,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;SAC1E,EAAE,KAAK,CAAC,CAAC;QAEV,IAAI,cAAc,EAAE;YACZ,IAAA,KAA+B,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,IAAI,CAAC,EAArF,YAAY,QAAA,EAAE,YAAY,QAA2D,CAAC;YAE7F,IAAI,CAAC,QAAQ,CAAC;gBACZ,SAAS,EAAE,YAAY;gBACvB,YAAY,cAAA;aACb,CAAC,CAAC;YACH,SAAS,GAAG,YAAY,CAAC;SAC1B;QAED,IAAI,KAAK,CAAC,QAAQ,IAAI,KAAK,CAAC,QAAQ,CAAC,IAAI,KAAK,QAAQ,CAAC,QAAQ,CAAC,IAAI,EAAE;YACpE,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;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,IAAI,CAAC,YAAY,CAAC,MAAC,GAAW,CAAC,KAAK,mCAAI,GAAG,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;aAC1D;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,IAAI,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAA,kBAAS,EAAC,SAAS,CAAC,QAAQ,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE;YAC3E,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,iBAcC;QAZC,IAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC;QAEhD,SAAS,CAAC,IAAI,CAAC;YACb,KAAK,EAAE,yBAAQ,IAAI,CAAC,eAAe,EAAE,CAAE;YACvC,IAAI,EAAE,UAAU;SACJ,CAAC,CAAC;QAEhB,IAAI,CAAC,QAAQ,CAAC;YACZ,SAAS,EAAE,SAAS;SACrB,EAAE;YACD,KAAI,CAAC,QAAQ,CAAC,KAAI,CAAC,KAAK,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QACjD,CAAC,CAAC,CAAC;IACL,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,CAAC;oBACZ,SAAS,EAAE,UAAU;iBACtB,EAAE;oBACD,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,CAAC,CAAC;;;;KACJ;IAGD,2BAAY,GAAZ,UAAa,GAAQ;;QACb,IAAA,KAAsB,IAAI,CAAC,KAAK,EAA/B,GAAG,SAAA,EAAE,QAAQ,cAAA,EAAE,EAAE,QAAc,CAAC;QAEvC,MAAA,GAAG,CAAC,OAAO,+CAAX,GAAG,EAAW;YACZ,SAAS,EAAE,WAAW;YACtB,SAAS,EAAE;gBACT,EAAE,IAAA;gBACF,GAAG,KAAA;aACJ;SACF,CAAC,CAAC;QAEH,kBAAkB;QAClB,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,EAAE;YAClC,GAAG,CAAC,cAAc,CAAC,WAAI,GAAG,CAAE,CAAC,CAAC;SAC/B;aAAM,IAAI,OAAO,IAAI,CAAC,KAAK,CAAC,SAAS,KAAK,QAAQ,IAAI,GAAG,EAAE;YAC1D,GAAG,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC;SACzB;QAED,IAAI,CAAC,QAAQ,CAAC;YACZ,SAAS,EAAE,CAAC,IAAI,CAAC,SAAS,GAAG,GAAG,CAAC;YACjC,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,SAAS;SAC9B,CAAC,CAAC;QAEH,IAAI,OAAO,QAAQ,KAAK,QAAQ,EAAE;YAChC,IAAM,UAAU,GAAG,IAAA,uBAAiB,EAAC,QAAQ,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;YAC/D,UAAU,IAAI,UAAU,CAAC,GAAG,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;SAC3C;aAAM,IAAI,OAAO,QAAQ,KAAK,UAAU,EAAE;YACzC,QAAQ,CAAC,GAAG,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;SAC3B;IACH,CAAC;IAGK,2BAAY,GAAlB,UAAmB,GAAQ,EAAE,IAAS;;;;;;wBAC9B,KAAkC,IAAI,CAAC,KAAK,EAA3C,aAAa,mBAAA,EAAE,IAAI,UAAA,EAAE,QAAQ,cAAA,CAAe;wBAC7B,qBAAM,aAAa,CAAC,QAAQ,EAAE,IAAA,qBAAY,EAAC,IAAI,EAAE;gCACrE,KAAK,EAAE,GAAG;6BACX,CAAC,CAAC,EAAA;;wBAFG,aAAa,GAAG,SAEnB;wBACH,IAAI,aAAa,aAAb,aAAa,uBAAb,aAAa,CAAE,SAAS,EAAE;4BAC5B,sBAAO;yBACR;wBAED,QAAQ,IAAI,QAAQ,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;;;;;KACjC;IAED;;OAEG;IACH,uBAAQ,GAAR,UAAS,MAAc,EAAE,IAAS;QAChC,IAAM,UAAU,GAAG,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,UAAoB,CAAC;QAChD,IAAM,SAAS,GAAG,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,SAAmB,CAAC;QAC9C,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,iBAoIC;QAnIO,IAAA,KAwBF,IAAI,CAAC,KAAK,EAvBA,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,cACI,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,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,IAEtB,QAAQ,CACH,CACT,CAAC;IACJ,CAAC;IAED,qBAAM,GAAN;QACE,OAAO,IAAI,CAAC,UAAU,EAAE,CAAC;IAC3B,CAAC;;IAhiBM,iBAAY,GAAuB;QACxC,SAAS,EAAE,EAAE;QACb,IAAI,EAAE,EAAE;QACR,YAAY,EAAE,IAAI;QAClB,aAAa,EAAE,KAAK;KACrB,CAAC;IAwCF;QADC,iBAAQ;;0EACU,KAAK,oBAAL,KAAK;;4CAuBvB;IAoKD;QADC,iBAAQ;;;;mDA8BR;IAGD;QADC,iBAAQ;;;;yCAcR;IAGD;QADC,iBAAQ;;;;2CASR;IAGD;QADC,iBAAQ;;;;0CAQR;IAGD;QADC,iBAAQ;;;;gDAeR;IAGD;QADC,iBAAQ;;;;4CA8BR;IAGD;QADC,iBAAQ;;;;4CAWR;IAcD;QADC,iBAAQ;;;;wCASR;IAGD;QADC,iBAAQ;;;;4CAYR;IAqJH,WAAC;CAAA,AAliBD,CAAkC,eAAK,CAAC,SAAS,GAkiBhD;kBAliBoB,IAAI;AAsiBzB;IAAkC,6CAAI;IAAtC;;IAAwC,CAAC;IAA5B,YAAY;QAHxB,IAAA,kBAAQ,EAAC;YACR,IAAI,EAAE,MAAM;SACb,CAAC;OACW,YAAY,CAAgB;IAAD,mBAAC;CAAA,AAAzC,CAAkC,IAAI,GAAG;AAA5B,oCAAY",
9
+ "mappings": "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",
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 的 closeable\n */\n closeable?: 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\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(tabs: Array<TabSource>, source?: string, data?: any): [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 this.handleChange((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 tabs: props.tabs,\n source: resolveVariableAndFilter(props.source, props.data, '| raw')\n }, {\n tabs: preProps.tabs,\n source: resolveVariableAndFilter(preProps.source, preProps.data, '| raw')\n }, false);\n\n if (isTabsModified) {\n const [newLocalTabs, isFromSource] = this.initTabArray(props.tabs, props.source, props.data);\n\n this.setState({\n localTabs: newLocalTabs,\n isFromSource\n });\n localTabs = newLocalTabs;\n }\n\n if (props.location && props.location.hash !== preProps.location.hash) {\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 this.handleChange((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 (localTabs[tabIndex] && !isVisible(localTabs[tabIndex], this.props.data)) {\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 localTabs: localTabs\n }, () => {\n this.switchTo(this.state.localTabs.length - 1);\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 localTabs: originTabs\n }, () => {\n if (activeTab) {\n const newActiveTabIndex = originTabs.indexOf(activeTab);\n this.switchTo(newActiveTabIndex);\n }\n });\n }\n\n @autobind\n handleSelect(key: any) {\n const {env, onSelect, id} = this.props;\n\n env.tracker?.({\n eventType: 'tabChange',\n eventData: {\n id,\n key\n }\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 @autobind\n async handleChange(key: any, name: any) {\n const {dispatchEvent, data, onChange} = this.props;\n const rendererEvent = await dispatchEvent('change', createObject(data, {\n value: key,\n }));\n if (rendererEvent?.prevented) {\n return;\n }\n\n onChange && onChange(key, name);\n }\n\n /**\n * 动作处理\n */\n doAction(action: Action, args: any) {\n const actionType = action?.actionType as string;\n const activeKey = action?.activeKey as number;\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 } = 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 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 >\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"
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 的 closeable\n */\n closeable?: 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\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(tabs: Array<TabSource>, source?: string, data?: any): [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 this.handleChange((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 tabs: props.tabs,\n source: resolveVariableAndFilter(props.source, props.data, '| raw')\n }, {\n tabs: preProps.tabs,\n source: resolveVariableAndFilter(preProps.source, preProps.data, '| raw')\n }, false);\n\n if (isTabsModified) {\n const [newLocalTabs, isFromSource] = this.initTabArray(props.tabs, props.source, props.data);\n\n this.setState({\n localTabs: newLocalTabs,\n isFromSource\n });\n localTabs = newLocalTabs;\n }\n\n if (props.location && preProps.location && props.location.hash !== preProps.location.hash) {\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 this.handleChange((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 (localTabs[tabIndex] && !isVisible(localTabs[tabIndex], this.props.data)) {\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 localTabs: localTabs\n }, () => {\n this.switchTo(this.state.localTabs.length - 1);\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 localTabs: originTabs\n }, () => {\n if (activeTab) {\n const newActiveTabIndex = originTabs.indexOf(activeTab);\n this.switchTo(newActiveTabIndex);\n }\n });\n }\n\n @autobind\n handleSelect(key: any) {\n const {env, onSelect, id} = this.props;\n\n env.tracker?.({\n eventType: 'tabChange',\n eventData: {\n id,\n key\n }\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 @autobind\n async handleChange(key: any, name: any) {\n const {dispatchEvent, data, onChange} = this.props;\n const rendererEvent = await dispatchEvent('change', createObject(data, {\n value: key,\n }));\n if (rendererEvent?.prevented) {\n return;\n }\n\n onChange && onChange(key, name);\n }\n\n /**\n * 动作处理\n */\n doAction(action: Action, args: any) {\n const actionType = action?.actionType as string;\n const activeKey = action?.activeKey as number;\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 } = 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 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 >\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"
12
12
  ]
13
13
  }
@@ -82,6 +82,11 @@ export interface VideoSchema extends BaseSchema {
82
82
  * 跳转到帧时,往前多少秒。
83
83
  */
84
84
  jumpBufferDuration?: number;
85
+ /**
86
+ * 默认播放的时候到了下一帧会继续播放,同时高亮下一帧。
87
+ * 如果配置这个则会停止播放,等待用户选择新的区间再播放。
88
+ */
89
+ stopOnNextFrame?: boolean;
85
90
  }
86
91
  export interface FlvSourceProps {
87
92
  src?: string;
@@ -147,6 +152,7 @@ export default class Video extends React.Component<VideoProps, VideoState> {
147
152
  player: any;
148
153
  times: Array<number>;
149
154
  currentIndex: number;
155
+ manualJump: boolean;
150
156
  constructor(props: VideoProps);
151
157
  onImageLoaded(e: Event): void;
152
158
  frameRef(dom: any): void;
@@ -206,6 +206,7 @@ var Video = /** @class */ (function (_super) {
206
206
  (0, tslib_1.__extends)(Video, _super);
207
207
  function Video(props) {
208
208
  var _this = _super.call(this, props) || this;
209
+ _this.manualJump = false;
209
210
  _this.state = {
210
211
  posterInfo: null,
211
212
  videoState: {}
@@ -265,6 +266,7 @@ var Video = /** @class */ (function (_super) {
265
266
  var index = 0;
266
267
  var times = _this.times;
267
268
  var len = times.length;
269
+ var stopOnNextFrame = _this.props.stopOnNextFrame;
268
270
  while (index < len - 1) {
269
271
  if (times[index + 1] &&
270
272
  state.currentTime < times[index + 1] - jumpBufferDuration) {
@@ -274,6 +276,10 @@ var Video = /** @class */ (function (_super) {
274
276
  }
275
277
  if (_this.currentIndex !== index) {
276
278
  _this.moveCursorToIndex(index);
279
+ stopOnNextFrame && !_this.manualJump && player.pause();
280
+ if (_this.manualJump) {
281
+ _this.manualJump = false;
282
+ }
277
283
  }
278
284
  });
279
285
  };
@@ -298,6 +304,7 @@ var Video = /** @class */ (function (_super) {
298
304
  var jumpBufferDuration = this.props.jumpBufferDuration || 0;
299
305
  var times = this.times;
300
306
  var player = this.player;
307
+ this.manualJump = true;
301
308
  player.seek(times[index] - jumpBufferDuration);
302
309
  player.play();
303
310
  };
@@ -340,18 +347,18 @@ var Video = /** @class */ (function (_super) {
340
347
  while (restCount--) {
341
348
  blankArray.push('');
342
349
  }
343
- return (react_1.default.createElement("div", { className: "pull-in-xxs", key: i },
344
- react_1.default.createElement("div", { className: "".concat(ns, "Hbox ").concat(ns, "Video-frameItem") },
345
- items.map(function (item, key) { return (react_1.default.createElement("div", { className: "".concat(ns, "Hbox-col Wrapper--xxs ").concat(ns, "Video-frame"), key: key, onClick: function () {
350
+ return (react_1.default.createElement("div", { className: "pull-in-xs", key: i },
351
+ react_1.default.createElement("div", { className: cx("Hbox Video-frameItem") },
352
+ items.map(function (item, key) { return (react_1.default.createElement("div", { className: cx("Hbox-col Wrapper--xs Video-frame"), key: key, onClick: function () {
346
353
  return _this.jumpToIndex(i * columnsCount + key);
347
354
  } },
348
355
  item.src ? (react_1.default.createElement("img", { className: "w-full", alt: "poster", src: item.src })) : null,
349
- react_1.default.createElement("div", { className: "".concat(ns, "Video-frameLabel") }, item.time))); }),
356
+ react_1.default.createElement("div", { className: cx("Video-frameLabel") }, item.time))); }),
350
357
  /* 补充空白 */ restCount
351
- ? blankArray.map(function (_, index) { return (react_1.default.createElement("div", { className: "".concat(ns, "Hbox-col Wrapper--xxs"), key: "blank_".concat(index) })); })
358
+ ? blankArray.map(function (_, index) { return (react_1.default.createElement("div", { className: cx("Hbox-col Wrapper--xs"), key: "blank_".concat(index) })); })
352
359
  : null)));
353
360
  }),
354
- jumpFrame ? (react_1.default.createElement("span", { ref: this.cursorRef, className: "".concat(ns, "Video-cursor") })) : null));
361
+ jumpFrame ? (react_1.default.createElement("span", { ref: this.cursorRef, className: cx('Video-cursor') })) : null));
355
362
  };
356
363
  Video.prototype.renderPlayer = function () {
357
364
  var _a = this.props, poster = _a.poster, autoPlay = _a.autoPlay, muted = _a.muted, name = _a.name, data = _a.data, amisConfig = _a.amisConfig, locals = _a.locals, isLive = _a.isLive, minVideoDuration = _a.minVideoDuration, videoType = _a.videoType, playerClassName = _a.playerClassName, ns = _a.classPrefix, aspectRatio = _a.aspectRatio, rates = _a.rates, cx = _a.classnames;
@@ -6,8 +6,8 @@
6
6
  "/src/renderers/Video.tsx"
7
7
  ],
8
8
  "names": [],
9
- "mappings": "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",
9
+ "mappings": ";AAAA;;;GAGG;;;;AAEH,6DAA0B;AAE1B,2CAOqB;AACrB,0CAAqD;AACrD,sCAAmD;AACnD,oDAAqD;AACrD,oCAAoC;AAyGpC,IAAM,WAAW,GAA4B,UAAA,GAAG;IAC9C,OAAA,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC;QACd,CAAC,CAAC,GAAG;aACA,KAAK,CAAC,GAAG,CAAC;aACV,OAAO,EAAE;aACT,MAAM,CACL,UAAC,OAAO,EAAE,KAAK,EAAE,KAAK;YACpB,OAAA,OAAO,GAAG,CAAC,QAAQ,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,KAAK,CAAC;QAA1D,CAA0D,EAC5D,CAAC,CACF;QACL,CAAC,CAAC,QAAQ,CAAC,GAAG,EAAE,EAAE,CAAC;AATrB,CASqB,CAAC;AAexB,kCAAkC;AAElC;IAA+B,0CAAoC;IAAnE;QAAA,qEAyHC;QAvHC,YAAM,GAAG,KAAK,CAAC;;IAuHjB,CAAC;IAnHC,qCAAiB,GAAjB;QACM,IAAA,KACF,IAAI,CAAC,KAAK,EADP,GAAG,SAAA,EAAE,KAAK,WAAA,EAAE,MAAM,YAAA,EAAE,OAAO,aAAA,EAAE,MAAM,YAAA,EAAE,QAAQ,cAAA,EAAE,OAAO,aAAA,EAAE,QAAQ,cACzD,CAAC;QAEb,IAAI,CAAC,OAAO,CAAC;YACX,KAAK,OAAA;YACL,OAAO,SAAA;YACP,GAAG,KAAA;YACH,MAAM,QAAA;YACN,MAAM,QAAA;YACN,OAAO,SAAA;YACP,QAAQ,UAAA;YACR,QAAQ,UAAA;SACT,CAAC,CAAC;IACL,CAAC;IAED,sCAAkB,GAAlB,UAAmB,SAAyB;;QAC1C,IAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;QACpB,IAAA,QAAQ,GACX,KAAK,SADM,EAAE,OAAO,GACpB,KAAK,QADe,EAAE,GAAG,GACzB,KAAK,IADoB,EAAE,QAAQ,GACnC,KAAK,SAD8B,EAAE,MAAM,GAC3C,KAAK,OADsC,EAAE,MAAM,GACnD,KAAK,OAD8C,EAAE,KAAK,GAC1D,KAAK,MADqD,EAAE,OAAO,GACnE,KAAK,QAD8D,CAC7D;QAER,IAAI,GAAG,KAAK,SAAS,CAAC,GAAG,EAAE;YACzB,QAAQ,CAAC,EAAE,CAAC,CAAC;YACb,MAAA,IAAI,CAAC,YAAY,0CAAE,OAAO,EAAE,CAAC;YAC7B,MAAA,IAAI,CAAC,WAAW,+CAAhB,IAAI,CAAgB,CAAC;YACrB,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;YACpB,IAAI,CAAC,OAAO,CAAC;gBACX,KAAK,OAAA;gBACL,OAAO,SAAA;gBACP,GAAG,KAAA;gBACH,MAAM,QAAA;gBACN,MAAM,QAAA;gBACN,OAAO,SAAA;gBACP,QAAQ,UAAA;gBACR,QAAQ,UAAA;aACT,CAAC,CAAC;SACJ;IACH,CAAC;IAED,wCAAoB,GAApB;;QACE,IAAI,IAAI,CAAC,YAAY,EAAE;YACrB,IAAI,CAAC,YAAY,CAAC,OAAO,EAAE,CAAC;YAC5B,MAAA,MAAA,IAAI,CAAC,KAAK,EAAC,QAAQ,mDAAG,EAAE,CAAC,CAAC;SAC3B;IACH,CAAC;IAED,2BAAO,GAAP,UAAQ,EASF;QATN,iBA8DC;YA7DC,KAAK,WAAA,EACL,OAAO,aAAA,EACP,GAAG,SAAA,EACH,MAAM,YAAA,EACN,MAAM,YAAA,EACN,OAAO,aAAA,EACP,QAAQ,cAAA,EACR,QAAQ,cAAA;QAER,8EAAO,WAAW,OAAE,IAAI,CAAC,UAAC,MAAW;YACnC,KAAK,GAAG,KAAK,IAAI,CAAC,OAAO,CAAC,KAAK,IAAI,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YAExD,IAAI,YAAY,GAAG,MAAM,CAAC,YAAY,CACpC;gBACE,IAAI,EAAE,KAAK;gBACX,GAAG,EAAE,GAAG;gBACR,MAAM,EAAE,MAAM;aACf,EACD,MAAM,CACP,CAAC;YACF,YAAY,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAC;YACvC,KAAI,CAAC,YAAY,GAAG,YAAY,CAAC;YAEjC,KAAI,CAAC,WAAW,GAAG,OAAO,CAAC,+BAA+B,CACxD,UAAC,SAAc;gBACb,IAAM,IAAI,GAAG,SAAS,CAAC,SAAS,CAAC,MAAM,CAAC;gBAExC,IAAI,IAAI,KAAK,MAAM,EAAE;oBACnB,YAAY,CAAC,KAAI,CAAC,KAAK,CAAC,CAAC;oBACzB,IAAI,CAAC,KAAI,CAAC,MAAM,EAAE;wBAChB,KAAI,CAAC,MAAM,GAAG,IAAI,CAAC;wBACnB,YAAY,CAAC,IAAI,EAAE,CAAC;qBACrB;oBAED,YAAY,CAAC,IAAI,EAAE,CAAC;iBACrB;qBAAM,IAAI,IAAI,KAAK,OAAO,EAAE;oBAC3B,YAAY,CAAC,KAAK,EAAE,CAAC;oBAErB,IAAI,MAAM,EAAE;wBACV,KAAI,CAAC,KAAK,GAAG,UAAU,CAAC;4BACtB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;4BAChB,YAAY,CAAC,MAAM,EAAE,CAAC;4BACtB,KAAI,CAAC,MAAM,GAAG,KAAK,CAAC;wBACtB,CAAC,EAAE,KAAK,CAAC,CAAC;qBACX;iBACF;YACH,CAAC,CACF,CAAC;YAEF,YAAY,CAAC,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,mBAAmB,EAAE;gBACjD,QAAQ,CAAC,QAAQ,CAAC,CAAC;YACrB,CAAC,CAAC,CAAC;YACH,YAAY,CAAC,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE;gBACnC,QAAQ,CAAC,QAAQ,CAAC,CAAC;gBACnB,YAAY,CAAC,MAAM,EAAE,CAAC;YACxB,CAAC,CAAC,CAAC;YAEH,IAAI,QAAQ,EAAE;gBACZ,UAAU,CAAC,cAAM,OAAA,OAAO,CAAC,IAAI,EAAE,EAAd,CAAc,EAAE,GAAG,CAAC,CAAC;aACvC;QACH,CAAC,CAAC,CAAC;IACL,CAAC;IAED,0BAAM,GAAN;QACE,OAAO,CACL,0CAAQ,GAAG,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,IAAI,aAAa,GAAI,CACxE,CAAC;IACJ,CAAC;IACH,gBAAC;AAAD,CAAC,AAzHD,CAA+B,eAAK,CAAC,SAAS,GAyH7C;AAzHY,8BAAS;AAsItB;IAA+B,0CAAoC;IAAnE;QAAA,qEAsFC;QApFC,YAAM,GAAG,KAAK,CAAC;;IAoFjB,CAAC;IAlFC,qCAAiB,GAAjB;QACM,IAAA,KAA2D,IAAI,CAAC,KAAK,EAApE,GAAG,SAAA,EAAE,KAAK,WAAA,EAAE,MAAM,YAAA,EAAE,OAAO,aAAA,EAAE,MAAM,YAAA,EAAE,QAAQ,cAAA,EAAE,OAAO,aAAc,CAAC;QAC1E,IAAI,CAAC,OAAO,CAAC;YACX,KAAK,OAAA;YACL,OAAO,SAAA;YACP,GAAG,KAAA;YACH,QAAQ,UAAA;YACR,OAAO,SAAA;SACR,CAAC,CAAC;IACL,CAAC;IAED,wCAAoB,GAApB;QACE,IAAI,IAAI,CAAC,GAAG,EAAE;YACZ,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;YACpB,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC;SACxB;IACH,CAAC;IAED,sCAAkB,GAAlB,UAAmB,SAAyB;;QAC1C,IAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;QACpB,IAAA,QAAQ,GAAkD,KAAK,SAAvD,EAAE,OAAO,GAAyC,KAAK,QAA9C,EAAE,GAAG,GAAoC,KAAK,IAAzC,EAAE,MAAM,GAA4B,KAAK,OAAjC,EAAE,MAAM,GAAoB,KAAK,OAAzB,EAAE,KAAK,GAAa,KAAK,MAAlB,EAAE,OAAO,GAAI,KAAK,QAAT,CAAU;QAErE,IAAI,GAAG,KAAK,SAAS,CAAC,GAAG,EAAE;YACzB,MAAA,IAAI,CAAC,GAAG,0CAAE,QAAQ,EAAE,CAAC;YACrB,MAAA,IAAI,CAAC,GAAG,0CAAE,WAAW,EAAE,CAAC;YACxB,MAAA,IAAI,CAAC,WAAW,+CAAhB,IAAI,CAAgB,CAAC;YACrB,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;YACpB,IAAI,CAAC,OAAO,CAAC;gBACX,KAAK,OAAA;gBACL,OAAO,SAAA;gBACP,GAAG,KAAA;gBACH,QAAQ,UAAA;gBACR,OAAO,SAAA;aACR,CAAC,CAAC;SACJ;IACH,CAAC;IAED,2BAAO,GAAP,UAAQ,EAA6C;QAArD,iBAmCC;YAnCQ,KAAK,WAAA,EAAE,OAAO,aAAA,EAAE,GAAG,SAAA,EAAE,QAAQ,cAAA,EAAE,OAAO,aAAA;QAC7C,aAAa;QACb,8EAAO,QAAQ,OAAE,IAAI,CAAC,UAAC,EAAmB;gBAAT,GAAG,aAAA;YAClC,uCAAuC;YACvC,IAAI,GAAG,CAAC,WAAW,EAAE,EAAE;gBACrB,KAAK,GAAG,KAAK,IAAI,CAAC,OAAO,CAAC,KAAK,IAAI,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;gBAExD,IAAI,KAAG,GAAG,CAAC,KAAI,CAAC,GAAG,GAAG,IAAI,GAAG,CAAC;oBAC5B,aAAa,EAAE,KAAK;iBACrB,CAAC,CAAC,CAAC;gBACJ,KAAG,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;gBACvB,KAAG,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;gBAEpB,KAAI,CAAC,WAAW,GAAG,OAAO,CAAC,+BAA+B,CACxD,UAAC,SAAc;oBACb,IAAM,IAAI,GAAG,SAAS,CAAC,SAAS,CAAC,MAAM,CAAC;oBAExC,IAAI,IAAI,KAAK,MAAM,EAAE;wBACnB,IAAI,CAAC,KAAI,CAAC,MAAM,EAAE;4BAChB,KAAI,CAAC,MAAM,GAAG,IAAI,CAAC;4BACnB,KAAG,CAAC,SAAS,EAAE,CAAC;yBACjB;wBAED,KAAK,CAAC,IAAI,EAAE,CAAC;qBACd;yBAAM,IAAI,IAAI,KAAK,OAAO,EAAE;wBAC3B,KAAK,CAAC,KAAK,EAAE,CAAC;wBACd,KAAG,CAAC,QAAQ,EAAE,CAAC;wBACf,KAAI,CAAC,MAAM,GAAG,KAAK,CAAC;qBACrB;gBACH,CAAC,CACF,CAAC;gBAEF,QAAQ,IAAI,UAAU,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;aAC3C;QACH,CAAC,CAAC,CAAC;IACL,CAAC;IAED,0BAAM,GAAN;QACE,OAAO,CACL,0CACE,GAAG,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,EACnB,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,IAAI,uBAAuB,GAChD,CACH,CAAC;IACJ,CAAC;IACH,gBAAC;AAAD,CAAC,AAtFD,CAA+B,eAAK,CAAC,SAAS,GAsF7C;AAtFY,8BAAS;AAoGtB;IAAmC,sCAAuC;IAcxE,eAAY,KAAiB;QAA7B,YACE,kBAAM,KAAK,CAAC,SAab;QAfD,gBAAU,GAAG,KAAK,CAAC;QAIjB,KAAI,CAAC,KAAK,GAAG;YACX,UAAU,EAAE,IAAI;YAChB,UAAU,EAAE,EAAE;SACf,CAAC;QAEF,KAAI,CAAC,QAAQ,GAAG,KAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAI,CAAC,CAAC;QACzC,KAAI,CAAC,SAAS,GAAG,KAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAI,CAAC,CAAC;QAC3C,KAAI,CAAC,SAAS,GAAG,KAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAI,CAAC,CAAC;QAC3C,KAAI,CAAC,aAAa,GAAG,KAAI,CAAC,aAAa,CAAC,IAAI,CAAC,KAAI,CAAC,CAAC;QACnD,KAAI,CAAC,OAAO,GAAG,KAAI,CAAC,OAAO,CAAC,IAAI,CAAC,KAAI,CAAC,CAAC;QACvC,KAAI,CAAC,QAAQ,GAAG,KAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAI,CAAC,CAAC;;IAC3C,CAAC;IAED,6BAAa,GAAb,UAAc,CAAQ;QAAtB,iBAYC;QAXC,IAAI,KAAK,GAAQ,IAAI,KAAK,EAAE,CAAC;QAC7B,KAAK,CAAC,MAAM,GAAG;YACb,KAAI,CAAC,QAAQ,CAAC;gBACZ,UAAU,EAAE;oBACV,KAAK,EAAE,KAAK,CAAC,KAAK;oBAClB,MAAM,EAAE,KAAK,CAAC,MAAM;iBACrB;aACF,CAAC,CAAC;YACH,KAAK,GAAG,KAAK,CAAC,MAAM,GAAG,IAAI,CAAC;QAC9B,CAAC,CAAC;QACF,KAAK,CAAC,GAAG,GAAI,CAAC,CAAC,MAAsB,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;IAC5D,CAAC;IAED,wBAAQ,GAAR,UAAS,GAAQ;QACf,IAAI,CAAC,QAAQ,GAAG,GAAG,CAAC;IACtB,CAAC;IAED,yBAAS,GAAT,UAAU,GAAQ;QAChB,IAAI,CAAC,SAAS,GAAG,GAAG,CAAC;IACvB,CAAC;IAED,yBAAS,GAAT,UAAU,MAAW;QAArB,iBAsDC;QArDC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QAErB,IAAI,CAAC,MAAM,EAAE;YACX,OAAO;SACR;QAED,MAAM,CAAC,sBAAsB,CAAC,UAAC,KAAU;YACvC,KAAI,CAAC,QAAQ,CAAC;gBACZ,UAAU,EAAE,KAAK;aAClB,CAAC,CAAC;YAEH,uBAAuB;YACvB,SAAS;YACT,wBAAwB;YACxB,8BAA8B;YAC9B,gCAAgC;YAChC,QAAQ;YACR,8BAA8B;YAC9B,MAAM;YAEN,6BAA6B;YAC7B,IAAI;YAEJ,IAAI,CAAC,KAAI,CAAC,QAAQ,IAAI,CAAC,KAAI,CAAC,KAAK,EAAE;gBACjC,OAAO;aACR;YAED,IAAM,kBAAkB,GAAG,KAAI,CAAC,KAAK,CAAC,kBAAkB,IAAI,CAAC,CAAC;YAC9D,IAAI,KAAK,GAAG,CAAC,CAAC;YACd,IAAM,KAAK,GAAG,KAAI,CAAC,KAAK,CAAC;YACzB,IAAM,GAAG,GAAG,KAAK,CAAC,MAAM,CAAC;YACzB,IAAM,eAAe,GAAG,KAAI,CAAC,KAAK,CAAC,eAAe,CAAC;YACnD,OAAO,KAAK,GAAG,GAAG,GAAG,CAAC,EAAE;gBACtB,IACE,KAAK,CAAC,KAAK,GAAG,CAAC,CAAC;oBAChB,KAAK,CAAC,WAAW,GAAG,KAAK,CAAC,KAAK,GAAG,CAAC,CAAC,GAAG,kBAAkB,EACzD;oBACA,MAAM;iBACP;gBAED,KAAK,EAAE,CAAC;aACT;YAED,IAAI,KAAI,CAAC,YAAY,KAAK,KAAK,EAAE;gBAC/B,KAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC;gBAE9B,eAAe,IAAI,CAAC,KAAI,CAAC,UAAU,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;gBAEtD,IAAI,KAAI,CAAC,UAAU,EAAE;oBACnB,KAAI,CAAC,UAAU,GAAG,KAAK,CAAC;iBACzB;aACF;QACH,CAAC,CAAC,CAAC;IACL,CAAC;IAED,iCAAiB,GAAjB,UAAkB,KAAa;QACtB,IAAa,EAAE,GAAI,IAAI,CAAC,KAAK,YAAd,CAAe;QACrC,IAAI,CAAC,IAAI,CAAC,QAAQ,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE;YACrC,OAAO;SACR;QACD,IAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,gBAAgB,CAAC,WAAI,EAAE,gBAAa,CAAC,CAAC;QAElE,IAAI,KAAK,IAAI,KAAK,CAAC,MAAM,IAAI,KAAK,CAAC,KAAK,CAAC,EAAE;YACzC,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;YAC1B,IAAM,IAAI,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC;YAC1B,IAAM,SAAS,GAAG,IAAI,CAAC,QAAQ,CAAC,qBAAqB,EAAE,CAAC;YACxD,IAAM,IAAI,GAAG,IAAI,CAAC,qBAAqB,EAAE,CAAC;YAC1C,IAAI,CAAC,SAAS,CAAC,YAAY,CACzB,OAAO,EACP,iBAAU,IAAI,CAAC,KAAK,GAAG,CAAC,yBAAe,IAAI,CAAC,MAAM,GAAG,CAAC,uBACpD,IAAI,CAAC,IAAI,GAAG,CAAC,GAAG,SAAS,CAAC,IAAI,sBACpB,IAAI,CAAC,GAAG,GAAG,CAAC,GAAG,SAAS,CAAC,GAAG,QAAK,CAC9C,CAAC;SACH;IACH,CAAC;IAED,2BAAW,GAAX,UAAY,KAAa;QACvB,IAAI,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,IAAI,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE;YACxD,OAAO;SACR;QACD,IAAM,kBAAkB,GAAG,IAAI,CAAC,KAAK,CAAC,kBAAkB,IAAI,CAAC,CAAC;QAC9D,IAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;QACzB,IAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAE3B,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;QACvB,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,kBAAkB,CAAC,CAAC;QAC/C,MAAM,CAAC,IAAI,EAAE,CAAC;IAChB,CAAC;IAED,uBAAO,GAAP,UAAQ,CAAQ;QACd,mBAAmB;QACnB,CAAC,CAAC,cAAc,EAAE,CAAC;IACrB,CAAC;IAED,wBAAQ,GAAR,UAAS,KAAc;QACrB,IAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAE3B,IAAI,CAAC,QAAQ,CAAC;YACZ,KAAK,EAAE,KAAK;SACb,CAAC,CAAC;QAEH,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,KAAK,EAAE,CAAC;IAClB,CAAC;IAED,4BAAY,GAAZ;QAAA,iBAoFC;QAnFK,IAAA,KAQA,IAAI,CAAC,KAAK,EAPZ,MAAM,YAAA,EACN,eAAe,qBAAA,EACf,YAAY,kBAAA,EACZ,IAAI,UAAA,EACJ,SAAS,eAAA,EACI,EAAE,iBAAA,EACH,EAAE,gBACF,CAAC;QAEf,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE;YACnD,MAAM,GAAG,IAAA,6BAAe,EAAC,MAAM,EAAE,IAAI,CAAC,CAAC;SACxC;QAED,IAAI,CAAC,MAAM,EAAE;YACX,OAAO,IAAI,CAAC;SACb;QAED,IAAM,KAAK,GAAkB,EAAE,CAAC;QAChC,IAAM,KAAK,GAAkB,CAAC,IAAI,CAAC,KAAK,GAAG,EAAE,CAAC,CAAC;QAC/C,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,UAAA,IAAI;YAC9B,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC;YAE9B,KAAK,CAAC,IAAI,CAAC;gBACT,IAAI,EAAE,IAAI;gBACV,GAAG,EAAE,MAAO,CAAC,IAAI,CAAC;aACnB,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE;YACjB,OAAO,IAAI,CAAC;SACb;QAED,OAAO,CACL,uCACE,SAAS,EAAE,EAAE,CAAC,yBAAyB,EAAE,eAAe,CAAC,EACzD,GAAG,EAAE,IAAI,CAAC,QAAQ;YAEjB,IAAA,eAAM,EAAC,KAAK,EAAE,YAAY,CAAC,CAAC,GAAG,CAAC,UAAC,KAAK,EAAE,CAAC;gBACxC,IAAI,SAAS,GAAI,YAAuB,GAAG,KAAK,CAAC,MAAM,CAAC;gBACxD,IAAI,UAAU,GAAG,EAAE,CAAC;gBAEpB,OAAO,SAAS,EAAE,EAAE;oBAClB,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;iBACrB;gBAED,OAAO,CACL,uCAAK,SAAS,EAAC,YAAY,EAAC,GAAG,EAAE,CAAC;oBAChC,uCAAK,SAAS,EAAE,EAAE,CAAC,sBAAsB,CAAC;wBACvC,KAAK,CAAC,GAAG,CAAC,UAAC,IAAI,EAAE,GAAG,IAAK,OAAA,CACxB,uCACE,SAAS,EAAE,EAAE,CAAC,kCAAkC,CAAC,EACjD,GAAG,EAAE,GAAG,EACR,OAAO,EAAE;gCACP,OAAA,KAAI,CAAC,WAAW,CAAC,CAAC,GAAI,YAAuB,GAAG,GAAG,CAAC;4BAApD,CAAoD;4BAGrD,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CACV,uCAAK,SAAS,EAAC,QAAQ,EAAC,GAAG,EAAC,QAAQ,EAAC,GAAG,EAAE,IAAI,CAAC,GAAG,GAAI,CACvD,CAAC,CAAC,CAAC,IAAI;4BACR,uCAAK,SAAS,EAAE,EAAE,CAAC,kBAAkB,CAAC,IAAG,IAAI,CAAC,IAAI,CAAO,CACrD,CACP,EAbyB,CAazB,CAAC;wBAGA,UAAU,CAAC,SAAS;4BAClB,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,UAAC,CAAC,EAAE,KAAK,IAAK,OAAA,CAC3B,uCACE,SAAS,EAAE,EAAE,CAAC,sBAAsB,CAAC,EACrC,GAAG,EAAE,gBAAS,KAAK,CAAE,GACrB,CACH,EAL4B,CAK5B,CAAC;4BACJ,CAAC,CAAC,IAAI,CAEN,CACF,CACP,CAAC;YACJ,CAAC,CAAC;YACD,SAAS,CAAC,CAAC,CAAC,CACX,wCAAM,GAAG,EAAE,IAAI,CAAC,SAAS,EAAE,SAAS,EAAE,EAAE,CAAC,cAAc,CAAC,GAAI,CAC7D,CAAC,CAAC,CAAC,IAAI,CACJ,CACP,CAAC;IACJ,CAAC;IAED,4BAAY,GAAZ;QACM,IAAA,KAgBA,IAAI,CAAC,KAAK,EAfZ,MAAM,YAAA,EACN,QAAQ,cAAA,EACR,KAAK,WAAA,EACL,IAAI,UAAA,EACJ,IAAI,UAAA,EACJ,UAAU,gBAAA,EACV,MAAM,YAAA,EACN,MAAM,YAAA,EACN,gBAAgB,sBAAA,EAChB,SAAS,eAAA,EACT,eAAe,qBAAA,EACF,EAAE,iBAAA,EACf,WAAW,iBAAA,EACX,KAAK,WAAA,EACO,EAAE,gBACF,CAAC;QAEf,IAAI,MAAM,GACR,IAAA,YAAM,EAAC,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,IAAA,qBAAY,EAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACpE,IAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC;QACzC,IAAI,SAAS,GACX,UAAU,CAAC,QAAQ;YACnB,gBAAgB;YAChB,UAAU,CAAC,QAAQ,GAAG,gBAAgB,CAAC;QACzC,IAAI,GAAG,GAAG,IAAA,YAAM,EAAC,MAAM,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;QACxC,IAAI,UAAU,CAAC;QACf,IAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC;QAE/B,IACE,CAAC,GAAG,IAAI,eAAe,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,MAAM,CAAC;YAC5C,SAAS,KAAK,aAAa,EAC3B;YACA,UAAU,GAAG,CACX,8BAAC,SAAS,IACR,QAAQ,EAAE,QAAQ,EAClB,KAAK,EAAE,KAAK,EACZ,MAAM,EAAE,MAAM,EACd,GAAG,EAAE,GAAG,EACR,QAAQ,EAAE,IAAI,CAAC,QAAQ,GACvB,CACH,CAAC;SACH;aAAM,IACL,CAAC,GAAG,IAAI,gBAAgB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACnC,SAAS,KAAK,uBAAuB,EACrC;YACA,UAAU,GAAG,8BAAC,SAAS,IAAC,QAAQ,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,GAAI,CAAC;SACxE;aAAM;YACL,UAAU,GAAG,0CAAQ,GAAG,EAAE,GAAG,GAAI,CAAC;SACnC;QAED,OAAO,CACL,uCAAK,SAAS,EAAE,EAAE,CAAC,cAAc,EAAE,eAAe,CAAC;YACjD,8BAAC,oBAAM,IACL,GAAG,EAAE,IAAI,CAAC,SAAS,EACnB,MAAM,EAAE,IAAA,YAAM,EAAC,MAAM,EAAE,IAAI,EAAE,OAAO,CAAC,EACrC,GAAG,EAAE,GAAG,EACR,QAAQ,EAAE,QAAQ,EAClB,KAAK,EAAE,KAAK,EACZ,WAAW,EAAE,WAAW;gBAEvB,KAAK,IAAI,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CACvB,8BAAC,wBAAU;oBACT,8BAAC,oCAAsB,IAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,GAAI,CACzC,CACd,CAAC,CAAC,CAAC,IAAI;gBACR,8BAAC,2BAAa,IAAC,QAAQ,EAAC,QAAQ,GAAG;gBAClC,UAAU;gBACX,8BAAC,sBAAQ,IAAC,QAAQ,SAAG,CACd;YAER,KAAK,CAAC,CAAC,CAAC,uCAAK,SAAS,EAAE,EAAE,CAAC,aAAa,CAAC,IAAG,KAAK,CAAO,CAAC,CAAC,CAAC,IAAI;YAC/D,SAAS,CAAC,CAAC,CAAC,CACX,qCAAG,SAAS,EAAE,iBAAU,EAAE,iBAAc;;gBAC9B,gBAAgB;0BACtB,CACL,CAAC,CAAC,CAAC,IAAI,CACJ,CACP,CAAC;IACJ,CAAC;IAED,qCAAqB,GAArB;QACM,IAAA,KAA6D,IAAI,CAAC,KAAK,EAAtE,MAAM,YAAA,EAAE,IAAI,UAAA,EAAE,MAAM,YAAA,EAAE,kBAAkB,wBAAA,EAAc,EAAE,gBAAc,CAAC;QAC5E,IAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,IAAI,EAAE,CAAC;QAC/C,IAAI,kBAAkB,GAAG,EAAE,CAAC;QAE5B,IACE,UAAU;YACV,kBAAkB;YAClB,CAAC,kBAAkB,CAAC,KAAK,IAAI,kBAAkB,CAAC,MAAM,CAAC;YACvD,CAAC,kBAAkB,CAAC,KAAK,GAAG,UAAU,CAAC,KAAK;gBAC1C,kBAAkB,CAAC,MAAM,GAAG,UAAU,CAAC,MAAM,CAAC,EAChD;YACA,kBAAkB,GAAG,cAAc,CAAC;SACrC;QAED,OAAO,CACL,uCAAK,SAAS,EAAC,YAAY;YACzB,uCAAK,SAAS,EAAE,EAAE,CAAC,MAAM,CAAC;gBACxB,uCAAK,SAAS,EAAE,EAAE,CAAC,UAAU,CAAC;oBAC5B,uCAAK,SAAS,EAAE,EAAE,CAAC,qBAAqB,CAAC;wBACvC,uCACE,MAAM,EAAE,IAAI,CAAC,aAAoB,EACjC,SAAS,EAAC,QAAQ,EAClB,GAAG,EAAC,QAAQ,EACZ,GAAG,EAAE,IAAA,YAAM,EAAC,MAAM,EAAE,IAAI,EAAE,OAAO,CAAC,GAClC;wBACF,qCAAG,SAAS,EAAC,QAAQ;;4BAChB,GAAG;4BACN,wCAAM,SAAS,EAAE,kBAAkB;gCAChC,UAAU,CAAC,KAAK,IAAI,GAAG;;gCAAK,UAAU,CAAC,MAAM,IAAI,GAAG,CAChD;4BACN,kBAAkB,CAAC,CAAC,CAAC,CACpB;gCACG,GAAG;;gCACG,GAAG;gCACV,wCAAM,SAAS,EAAE,EAAE,CAAC,cAAc,CAAC;oCAChC,kBAAkB,CAAC,KAAK,IAAI,GAAG;;oCAAI,GAAG;oCACtC,kBAAkB,CAAC,MAAM,IAAI,GAAG,CAC5B,CACF,CACR,CAAC,CAAC,CAAC,IAAI,CACN,CACA,CACF;gBACN,uCAAK,SAAS,EAAE,EAAE,CAAC,UAAU,CAAC;oBAC5B,uCAAK,SAAS,EAAE,EAAE,CAAC,qBAAqB,CAAC,IACtC,IAAI,CAAC,YAAY,EAAE,CAChB,CACF,CACF,CACF,CACP,CAAC;IACJ,CAAC;IAED,sBAAM,GAAN;QACM,IAAA,KAA4D,IAAI,CAAC,KAAK,EAArE,WAAW,iBAAA,EAAE,SAAS,eAAA,EAAe,EAAE,iBAAA,EAAc,EAAE,gBAAc,CAAC;QAE3E,OAAO,CACL,uCAAK,SAAS,EAAE,EAAE,CAAC,OAAO,EAAE,SAAS,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,OAAc;YACjE,IAAI,CAAC,YAAY,EAAE;YACnB,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,qBAAqB,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,YAAY,EAAE,CAC7D,CACP,CAAC;IACJ,CAAC;IAnYM,kBAAY,GAAG;QACpB,YAAY,EAAE,CAAC;QACf,MAAM,EAAE,KAAK;QACb,SAAS,EAAE,IAAI;QACf,WAAW,EAAE,MAAM;KACpB,CAAC;IA+XJ,YAAC;CAAA,AArYD,CAAmC,eAAK,CAAC,SAAS,GAqYjD;kBArYoB,KAAK;AA0Y1B;IAAmC,8CAAK;IAAxC;;IAA0C,CAAC;IAA9B,aAAa;QAHzB,IAAA,kBAAQ,EAAC;YACR,IAAI,EAAE,OAAO;SACd,CAAC;OACW,aAAa,CAAiB;IAAD,oBAAC;CAAA,AAA3C,CAAmC,KAAK,GAAG;AAA9B,sCAAa",
10
10
  "sourcesContent": [
11
- "/**\n * @file video\n * @author fex\n */\n\nimport React from 'react';\n\nimport {\n Player,\n Shortcut,\n BigPlayButton,\n ControlBar,\n PlaybackRateMenuButton\n // @ts-ignore\n} from 'video-react';\nimport {getPropValue, padArr} from '../utils/helper';\nimport {Renderer, RendererProps} from '../factory';\nimport {resolveVariable} from '../utils/tpl-builtin';\nimport {filter} from '../utils/tpl';\n// import css\n// import 'video-react/dist/video-react.css';\nimport {BaseSchema, SchemaClassName, SchemaUrlPath} from '../Schema';\n\n/**\n * 视频播放器\n * 文档:https://baidu.gitee.io/amis/docs/components/video\n */\nexport interface VideoSchema extends BaseSchema {\n /**\n * 指定为视频类型\n */\n type: 'video';\n\n /**\n * 是否自动播放\n */\n autoPlay?: boolean;\n\n /**\n * 如果显示切帧,通过此配置项可以控制每行显示多少帧\n */\n columnsCount?: number;\n\n /**\n * 设置后,可以显示切帧.点击帧的时候会将视频跳到对应时间。\n *\n * frames: {\n * '01:22': 'http://domain/xxx.jpg'\n * }\n */\n frames?: {\n [propName: string]: string;\n };\n\n /**\n * 配置帧列表容器className\n */\n framesClassName?: SchemaClassName;\n\n /**\n * 如果是实时的,请标记一下\n */\n isLive?: boolean;\n\n /**\n * 点击帧画面时是否跳转视频对应的点\n *\n * @default true\n */\n jumpFrame?: boolean;\n\n /**\n * 是否初始静音\n */\n muted?: boolean;\n\n /**\n * 配置播放器 className\n */\n playerClassName?: SchemaClassName;\n\n /**\n * 视频封面地址\n */\n poster?: SchemaUrlPath;\n\n /**\n * 是否将视频和封面分开显示\n */\n splitPoster?: boolean;\n\n /**\n * 视频播放地址\n */\n src?: SchemaUrlPath;\n\n /**\n * 视频类型如: video/x-flv\n */\n videoType?: string;\n\n /**\n * 视频比率\n */\n aspectRatio?: 'auto' | '4:3' | '16:9';\n\n /**\n * 视频速率\n */\n rates?: Array<number>;\n\n /**\n * 跳转到帧时,往前多少秒。\n */\n jumpBufferDuration?: number;\n}\n\nconst str2seconds: (str: string) => number = str =>\n str.indexOf(':')\n ? str\n .split(':')\n .reverse()\n .reduce(\n (seconds, value, index) =>\n seconds + (parseInt(value, 10) || 0) * Math.pow(60, index),\n 0\n )\n : parseInt(str, 10);\n\nexport interface FlvSourceProps {\n src?: string;\n type?: string;\n video?: any;\n config?: object;\n manager?: any;\n isLive?: boolean;\n autoPlay?: boolean;\n actions?: any;\n order?: number;\n setError: (error: string) => void;\n}\n\n// let currentPlaying: any = null;\n\nexport class FlvSource extends React.Component<FlvSourceProps, any> {\n mpegtsPlayer: any;\n loaded = false;\n timer: any;\n unsubscribe: any;\n\n componentDidMount() {\n let {src, video, config, manager, isLive, autoPlay, actions, setError} =\n this.props;\n\n this.initFlv({\n video,\n manager,\n src,\n isLive,\n config,\n actions,\n setError,\n autoPlay\n });\n }\n\n componentDidUpdate(prevProps: FlvSourceProps) {\n const props = this.props;\n let {autoPlay, actions, src, setError, isLive, config, video, manager} =\n props;\n\n if (src !== prevProps.src) {\n setError('');\n this.mpegtsPlayer?.destroy();\n this.unsubscribe?.();\n this.loaded = false;\n this.initFlv({\n video,\n manager,\n src,\n isLive,\n config,\n actions,\n setError,\n autoPlay\n });\n }\n }\n\n componentWillUnmount() {\n if (this.mpegtsPlayer) {\n this.mpegtsPlayer.destroy();\n this.props.setError?.('');\n }\n }\n\n initFlv({\n video,\n manager,\n src,\n isLive,\n config,\n actions,\n setError,\n autoPlay\n }: any) {\n import('mpegts.js').then((mpegts: any) => {\n video = video || (manager.video && manager.video.video);\n\n let mpegtsPlayer = mpegts.createPlayer(\n {\n type: 'flv',\n url: src,\n isLive: isLive\n },\n config\n );\n mpegtsPlayer.attachMediaElement(video);\n this.mpegtsPlayer = mpegtsPlayer;\n\n this.unsubscribe = manager.subscribeToOperationStateChange(\n (operation: any) => {\n const type = operation.operation.action;\n\n if (type === 'play') {\n clearTimeout(this.timer);\n if (!this.loaded) {\n this.loaded = true;\n mpegtsPlayer.load();\n }\n\n mpegtsPlayer.play();\n } else if (type === 'pause') {\n mpegtsPlayer.pause();\n\n if (isLive) {\n this.timer = setTimeout(() => {\n actions.seek(0);\n mpegtsPlayer.unload();\n this.loaded = false;\n }, 30000);\n }\n }\n }\n );\n\n mpegtsPlayer.on(mpegts.Events.RECOVERED_EARLY_EOF, () => {\n setError('直播已经结束');\n });\n mpegtsPlayer.on(mpegts.Events.ERROR, () => {\n setError('视频加载失败');\n mpegtsPlayer.unload();\n });\n\n if (autoPlay) {\n setTimeout(() => actions.play(), 200);\n }\n });\n }\n\n render() {\n return (\n <source src={this.props.src} type={this.props.type || 'video/x-flv'} />\n );\n }\n}\n\nexport interface HlsSourceProps {\n src?: string;\n type?: string;\n video?: any;\n config?: object;\n manager?: any;\n isLive?: boolean;\n autoPlay?: boolean;\n actions?: any;\n order?: number;\n}\nexport class HlsSource extends React.Component<HlsSourceProps, any> {\n hls: any;\n loaded = false;\n unsubscribe: any;\n componentDidMount() {\n let {src, video, config, manager, isLive, autoPlay, actions} = this.props;\n this.initHls({\n video,\n manager,\n src,\n autoPlay,\n actions\n });\n }\n\n componentWillUnmount() {\n if (this.hls) {\n this.hls.stopLoad();\n this.hls.detachMedia();\n }\n }\n\n componentDidUpdate(prevProps: HlsSourceProps) {\n const props = this.props;\n let {autoPlay, actions, src, isLive, config, video, manager} = props;\n\n if (src !== prevProps.src) {\n this.hls?.stopLoad();\n this.hls?.detachMedia();\n this.unsubscribe?.();\n this.loaded = false;\n this.initHls({\n video,\n manager,\n src,\n autoPlay,\n actions\n });\n }\n }\n\n initHls({video, manager, src, autoPlay, actions}: any) {\n // @ts-ignore\n import('hls.js').then(({default: Hls}: any) => {\n // load hls video source base on hls.js\n if (Hls.isSupported()) {\n video = video || (manager.video && manager.video.video);\n\n let hls = (this.hls = new Hls({\n autoStartLoad: false\n }));\n hls.attachMedia(video);\n hls.loadSource(src);\n\n this.unsubscribe = manager.subscribeToOperationStateChange(\n (operation: any) => {\n const type = operation.operation.action;\n\n if (type === 'play') {\n if (!this.loaded) {\n this.loaded = true;\n hls.startLoad();\n }\n\n video.play();\n } else if (type === 'pause') {\n video.pause();\n hls.stopLoad();\n this.loaded = false;\n }\n }\n );\n\n autoPlay && setTimeout(actions.play, 200);\n }\n });\n }\n\n render() {\n return (\n <source\n src={this.props.src}\n type={this.props.type || 'application/x-mpegURL'}\n />\n );\n }\n}\n\nexport interface VideoProps\n extends RendererProps,\n Omit<VideoSchema, 'className'> {\n columnsCount: number;\n}\n\nexport interface VideoState {\n posterInfo?: any;\n videoState?: any;\n error?: string;\n}\n\nexport default class Video extends React.Component<VideoProps, VideoState> {\n static defaultProps = {\n columnsCount: 8,\n isLive: false,\n jumpFrame: true,\n aspectRatio: 'auto'\n };\n\n frameDom: any;\n cursorDom: any;\n player: any;\n times: Array<number>;\n currentIndex: number;\n constructor(props: VideoProps) {\n super(props);\n\n this.state = {\n posterInfo: null,\n videoState: {}\n };\n\n this.frameRef = this.frameRef.bind(this);\n this.cursorRef = this.cursorRef.bind(this);\n this.playerRef = this.playerRef.bind(this);\n this.onImageLoaded = this.onImageLoaded.bind(this);\n this.onClick = this.onClick.bind(this);\n this.setError = this.setError.bind(this);\n }\n\n onImageLoaded(e: Event) {\n let image: any = new Image();\n image.onload = () => {\n this.setState({\n posterInfo: {\n width: image.width,\n height: image.height\n }\n });\n image = image.onload = null;\n };\n image.src = (e.target as HTMLElement).getAttribute('src');\n }\n\n frameRef(dom: any) {\n this.frameDom = dom;\n }\n\n cursorRef(dom: any) {\n this.cursorDom = dom;\n }\n\n playerRef(player: any) {\n this.player = player;\n\n if (!player) {\n return;\n }\n\n player.subscribeToStateChange((state: any) => {\n this.setState({\n videoState: state\n });\n\n // if (!state.paused) {\n // if (\n // currentPlaying &&\n // currentPlaying.video &&\n // currentPlaying !== player\n // ) {\n // currentPlaying.pause();\n // }\n\n // currentPlaying = player;\n // }\n\n if (!this.frameDom || !this.times) {\n return;\n }\n\n const jumpBufferDuration = this.props.jumpBufferDuration || 0;\n let index = 0;\n const times = this.times;\n const len = times.length;\n while (index < len - 1) {\n if (\n times[index + 1] &&\n state.currentTime < times[index + 1] - jumpBufferDuration\n ) {\n break;\n }\n\n index++;\n }\n\n if (this.currentIndex !== index) {\n this.moveCursorToIndex(index);\n }\n });\n }\n\n moveCursorToIndex(index: number) {\n const {classPrefix: ns} = this.props;\n if (!this.frameDom || !this.cursorDom) {\n return;\n }\n const items = this.frameDom.querySelectorAll(`.${ns}Video-frame`);\n\n if (items && items.length && items[index]) {\n this.currentIndex = index;\n const item = items[index];\n const frameRect = this.frameDom.getBoundingClientRect();\n const rect = item.getBoundingClientRect();\n this.cursorDom.setAttribute(\n 'style',\n `width: ${rect.width - 4}px; height: ${rect.height - 4}px; left: ${\n rect.left + 2 - frameRect.left\n }px; top: ${rect.top + 2 - frameRect.top}px;`\n );\n }\n }\n\n jumpToIndex(index: number) {\n if (!this.times || !this.player || !this.props.jumpFrame) {\n return;\n }\n const jumpBufferDuration = this.props.jumpBufferDuration || 0;\n const times = this.times;\n const player = this.player;\n\n player.seek(times[index] - jumpBufferDuration);\n player.play();\n }\n\n onClick(e: Event) {\n // 避免把所在 form 给提交了。\n e.preventDefault();\n }\n\n setError(error?: string) {\n const player = this.player;\n\n this.setState({\n error: error\n });\n\n player?.pause();\n }\n\n renderFrames() {\n let {\n frames,\n framesClassName,\n columnsCount,\n data,\n jumpFrame,\n classPrefix: ns,\n classnames: cx\n } = this.props;\n\n if (typeof frames === 'string' && frames[0] === '$') {\n frames = resolveVariable(frames, data);\n }\n\n if (!frames) {\n return null;\n }\n\n const items: Array<object> = [];\n const times: Array<number> = (this.times = []);\n Object.keys(frames).forEach(time => {\n times.push(str2seconds(time));\n\n items.push({\n time: time,\n src: frames![time]\n });\n });\n\n if (!items.length) {\n return null;\n }\n\n return (\n <div\n className={cx(`pos-rlt Video-frameList`, framesClassName)}\n ref={this.frameRef}\n >\n {padArr(items, columnsCount).map((items, i) => {\n let restCount = (columnsCount as number) - items.length;\n let blankArray = [];\n\n while (restCount--) {\n blankArray.push('');\n }\n\n return (\n <div className=\"pull-in-xxs\" key={i}>\n <div className={`${ns}Hbox ${ns}Video-frameItem`}>\n {items.map((item, key) => (\n <div\n className={`${ns}Hbox-col Wrapper--xxs ${ns}Video-frame`}\n key={key}\n onClick={() =>\n this.jumpToIndex(i * (columnsCount as number) + key)\n }\n >\n {item.src ? (\n <img className=\"w-full\" alt=\"poster\" src={item.src} />\n ) : null}\n <div className={`${ns}Video-frameLabel`}>{item.time}</div>\n </div>\n ))}\n\n {\n /* 补充空白 */ restCount\n ? blankArray.map((_, index) => (\n <div\n className={`${ns}Hbox-col Wrapper--xxs`}\n key={`blank_${index}`}\n />\n ))\n : null\n }\n </div>\n </div>\n );\n })}\n {jumpFrame ? (\n <span ref={this.cursorRef} className={`${ns}Video-cursor`} />\n ) : null}\n </div>\n );\n }\n\n renderPlayer() {\n let {\n poster,\n autoPlay,\n muted,\n name,\n data,\n amisConfig,\n locals,\n isLive,\n minVideoDuration,\n videoType,\n playerClassName,\n classPrefix: ns,\n aspectRatio,\n rates,\n classnames: cx\n } = this.props;\n\n let source =\n filter(this.props.src, data, '| raw') || getPropValue(this.props);\n const videoState = this.state.videoState;\n let highlight =\n videoState.duration &&\n minVideoDuration &&\n videoState.duration < minVideoDuration;\n let src = filter(source, data, '| raw');\n let sourceNode;\n const error = this.state.error;\n\n if (\n (src && /\\.flv(?:$|\\?)/.test(src) && isLive) ||\n videoType === 'video/x-flv'\n ) {\n sourceNode = (\n <FlvSource\n autoPlay={autoPlay}\n order={999.0}\n isLive={isLive}\n src={src}\n setError={this.setError}\n />\n );\n } else if (\n (src && /\\.m3u8(?:$|\\?)/.test(src)) ||\n videoType === 'application/x-mpegURL'\n ) {\n sourceNode = <HlsSource autoPlay={autoPlay} order={999.0} src={src} />;\n } else {\n sourceNode = <source src={src} />;\n }\n\n return (\n <div className={cx('Video-player', playerClassName)}>\n <Player\n ref={this.playerRef}\n poster={filter(poster, data, '| raw')}\n src={src}\n autoPlay={autoPlay}\n muted={muted}\n aspectRatio={aspectRatio}\n >\n {rates && rates.length ? (\n <ControlBar>\n <PlaybackRateMenuButton rates={rates} order={7.1} />\n </ControlBar>\n ) : null}\n <BigPlayButton position=\"center\" />\n {sourceNode}\n <Shortcut disabled />\n </Player>\n\n {error ? <div className={cx('Video-error')}>{error}</div> : null}\n {highlight ? (\n <p className={`m-t-xs ${ns}Text--danger`}>\n 视频时长小于 {minVideoDuration} 秒\n </p>\n ) : null}\n </div>\n );\n }\n\n renderPosterAndPlayer() {\n let {poster, data, locals, minPosterDimension, classnames: cx} = this.props;\n const posterInfo = this.state.posterInfo || {};\n let dimensionClassName = '';\n\n if (\n posterInfo &&\n minPosterDimension &&\n (minPosterDimension.width || minPosterDimension.height) &&\n (minPosterDimension.width > posterInfo.width ||\n minPosterDimension.height > posterInfo.height)\n ) {\n dimensionClassName = `Text--danger`;\n }\n\n return (\n <div className=\"pull-in-xs\">\n <div className={cx('Hbox')}>\n <div className={cx('Hbox-col')}>\n <div className={cx('Wrapper Wrapper--xs')}>\n <img\n onLoad={this.onImageLoaded as any}\n className=\"w-full\"\n alt=\"poster\"\n src={filter(poster, data, '| raw')}\n />\n <p className=\"m-t-xs\">\n 封面{' '}\n <span className={dimensionClassName}>\n {posterInfo.width || '-'} x {posterInfo.height || '-'}\n </span>\n {dimensionClassName ? (\n <span>\n {' '}\n 封面尺寸小于{' '}\n <span className={cx('Text--danger')}>\n {minPosterDimension.width || '-'} x{' '}\n {minPosterDimension.height || '-'}\n </span>\n </span>\n ) : null}\n </p>\n </div>\n </div>\n <div className={cx('Hbox-col')}>\n <div className={cx('Wrapper Wrapper--xs')}>\n {this.renderPlayer()}\n </div>\n </div>\n </div>\n </div>\n );\n }\n\n render() {\n let {splitPoster, className, classPrefix: ns, classnames: cx} = this.props;\n\n return (\n <div className={cx(`Video`, className)} onClick={this.onClick as any}>\n {this.renderFrames()}\n {splitPoster ? this.renderPosterAndPlayer() : this.renderPlayer()}\n </div>\n );\n }\n}\n\n@Renderer({\n type: 'video'\n})\nexport class VideoRenderer extends Video {}\n"
11
+ "/**\n * @file video\n * @author fex\n */\n\nimport React from 'react';\n\nimport {\n Player,\n Shortcut,\n BigPlayButton,\n ControlBar,\n PlaybackRateMenuButton\n // @ts-ignore\n} from 'video-react';\nimport {getPropValue, padArr} from '../utils/helper';\nimport {Renderer, RendererProps} from '../factory';\nimport {resolveVariable} from '../utils/tpl-builtin';\nimport {filter} from '../utils/tpl';\n// import css\n// import 'video-react/dist/video-react.css';\nimport {BaseSchema, SchemaClassName, SchemaUrlPath} from '../Schema';\n\n/**\n * 视频播放器\n * 文档:https://baidu.gitee.io/amis/docs/components/video\n */\nexport interface VideoSchema extends BaseSchema {\n /**\n * 指定为视频类型\n */\n type: 'video';\n\n /**\n * 是否自动播放\n */\n autoPlay?: boolean;\n\n /**\n * 如果显示切帧,通过此配置项可以控制每行显示多少帧\n */\n columnsCount?: number;\n\n /**\n * 设置后,可以显示切帧.点击帧的时候会将视频跳到对应时间。\n *\n * frames: {\n * '01:22': 'http://domain/xxx.jpg'\n * }\n */\n frames?: {\n [propName: string]: string;\n };\n\n /**\n * 配置帧列表容器className\n */\n framesClassName?: SchemaClassName;\n\n /**\n * 如果是实时的,请标记一下\n */\n isLive?: boolean;\n\n /**\n * 点击帧画面时是否跳转视频对应的点\n *\n * @default true\n */\n jumpFrame?: boolean;\n\n /**\n * 是否初始静音\n */\n muted?: boolean;\n\n /**\n * 配置播放器 className\n */\n playerClassName?: SchemaClassName;\n\n /**\n * 视频封面地址\n */\n poster?: SchemaUrlPath;\n\n /**\n * 是否将视频和封面分开显示\n */\n splitPoster?: boolean;\n\n /**\n * 视频播放地址\n */\n src?: SchemaUrlPath;\n\n /**\n * 视频类型如: video/x-flv\n */\n videoType?: string;\n\n /**\n * 视频比率\n */\n aspectRatio?: 'auto' | '4:3' | '16:9';\n\n /**\n * 视频速率\n */\n rates?: Array<number>;\n\n /**\n * 跳转到帧时,往前多少秒。\n */\n jumpBufferDuration?: number;\n\n /**\n * 默认播放的时候到了下一帧会继续播放,同时高亮下一帧。\n * 如果配置这个则会停止播放,等待用户选择新的区间再播放。\n */\n stopOnNextFrame?: boolean;\n}\n\nconst str2seconds: (str: string) => number = str =>\n str.indexOf(':')\n ? str\n .split(':')\n .reverse()\n .reduce(\n (seconds, value, index) =>\n seconds + (parseInt(value, 10) || 0) * Math.pow(60, index),\n 0\n )\n : parseInt(str, 10);\n\nexport interface FlvSourceProps {\n src?: string;\n type?: string;\n video?: any;\n config?: object;\n manager?: any;\n isLive?: boolean;\n autoPlay?: boolean;\n actions?: any;\n order?: number;\n setError: (error: string) => void;\n}\n\n// let currentPlaying: any = null;\n\nexport class FlvSource extends React.Component<FlvSourceProps, any> {\n mpegtsPlayer: any;\n loaded = false;\n timer: any;\n unsubscribe: any;\n\n componentDidMount() {\n let {src, video, config, manager, isLive, autoPlay, actions, setError} =\n this.props;\n\n this.initFlv({\n video,\n manager,\n src,\n isLive,\n config,\n actions,\n setError,\n autoPlay\n });\n }\n\n componentDidUpdate(prevProps: FlvSourceProps) {\n const props = this.props;\n let {autoPlay, actions, src, setError, isLive, config, video, manager} =\n props;\n\n if (src !== prevProps.src) {\n setError('');\n this.mpegtsPlayer?.destroy();\n this.unsubscribe?.();\n this.loaded = false;\n this.initFlv({\n video,\n manager,\n src,\n isLive,\n config,\n actions,\n setError,\n autoPlay\n });\n }\n }\n\n componentWillUnmount() {\n if (this.mpegtsPlayer) {\n this.mpegtsPlayer.destroy();\n this.props.setError?.('');\n }\n }\n\n initFlv({\n video,\n manager,\n src,\n isLive,\n config,\n actions,\n setError,\n autoPlay\n }: any) {\n import('mpegts.js').then((mpegts: any) => {\n video = video || (manager.video && manager.video.video);\n\n let mpegtsPlayer = mpegts.createPlayer(\n {\n type: 'flv',\n url: src,\n isLive: isLive\n },\n config\n );\n mpegtsPlayer.attachMediaElement(video);\n this.mpegtsPlayer = mpegtsPlayer;\n\n this.unsubscribe = manager.subscribeToOperationStateChange(\n (operation: any) => {\n const type = operation.operation.action;\n\n if (type === 'play') {\n clearTimeout(this.timer);\n if (!this.loaded) {\n this.loaded = true;\n mpegtsPlayer.load();\n }\n\n mpegtsPlayer.play();\n } else if (type === 'pause') {\n mpegtsPlayer.pause();\n\n if (isLive) {\n this.timer = setTimeout(() => {\n actions.seek(0);\n mpegtsPlayer.unload();\n this.loaded = false;\n }, 30000);\n }\n }\n }\n );\n\n mpegtsPlayer.on(mpegts.Events.RECOVERED_EARLY_EOF, () => {\n setError('直播已经结束');\n });\n mpegtsPlayer.on(mpegts.Events.ERROR, () => {\n setError('视频加载失败');\n mpegtsPlayer.unload();\n });\n\n if (autoPlay) {\n setTimeout(() => actions.play(), 200);\n }\n });\n }\n\n render() {\n return (\n <source src={this.props.src} type={this.props.type || 'video/x-flv'} />\n );\n }\n}\n\nexport interface HlsSourceProps {\n src?: string;\n type?: string;\n video?: any;\n config?: object;\n manager?: any;\n isLive?: boolean;\n autoPlay?: boolean;\n actions?: any;\n order?: number;\n}\nexport class HlsSource extends React.Component<HlsSourceProps, any> {\n hls: any;\n loaded = false;\n unsubscribe: any;\n componentDidMount() {\n let {src, video, config, manager, isLive, autoPlay, actions} = this.props;\n this.initHls({\n video,\n manager,\n src,\n autoPlay,\n actions\n });\n }\n\n componentWillUnmount() {\n if (this.hls) {\n this.hls.stopLoad();\n this.hls.detachMedia();\n }\n }\n\n componentDidUpdate(prevProps: HlsSourceProps) {\n const props = this.props;\n let {autoPlay, actions, src, isLive, config, video, manager} = props;\n\n if (src !== prevProps.src) {\n this.hls?.stopLoad();\n this.hls?.detachMedia();\n this.unsubscribe?.();\n this.loaded = false;\n this.initHls({\n video,\n manager,\n src,\n autoPlay,\n actions\n });\n }\n }\n\n initHls({video, manager, src, autoPlay, actions}: any) {\n // @ts-ignore\n import('hls.js').then(({default: Hls}: any) => {\n // load hls video source base on hls.js\n if (Hls.isSupported()) {\n video = video || (manager.video && manager.video.video);\n\n let hls = (this.hls = new Hls({\n autoStartLoad: false\n }));\n hls.attachMedia(video);\n hls.loadSource(src);\n\n this.unsubscribe = manager.subscribeToOperationStateChange(\n (operation: any) => {\n const type = operation.operation.action;\n\n if (type === 'play') {\n if (!this.loaded) {\n this.loaded = true;\n hls.startLoad();\n }\n\n video.play();\n } else if (type === 'pause') {\n video.pause();\n hls.stopLoad();\n this.loaded = false;\n }\n }\n );\n\n autoPlay && setTimeout(actions.play, 200);\n }\n });\n }\n\n render() {\n return (\n <source\n src={this.props.src}\n type={this.props.type || 'application/x-mpegURL'}\n />\n );\n }\n}\n\nexport interface VideoProps\n extends RendererProps,\n Omit<VideoSchema, 'className'> {\n columnsCount: number;\n}\n\nexport interface VideoState {\n posterInfo?: any;\n videoState?: any;\n error?: string;\n}\n\nexport default class Video extends React.Component<VideoProps, VideoState> {\n static defaultProps = {\n columnsCount: 8,\n isLive: false,\n jumpFrame: true,\n aspectRatio: 'auto'\n };\n\n frameDom: any;\n cursorDom: any;\n player: any;\n times: Array<number>;\n currentIndex: number;\n manualJump = false;\n constructor(props: VideoProps) {\n super(props);\n\n this.state = {\n posterInfo: null,\n videoState: {}\n };\n\n this.frameRef = this.frameRef.bind(this);\n this.cursorRef = this.cursorRef.bind(this);\n this.playerRef = this.playerRef.bind(this);\n this.onImageLoaded = this.onImageLoaded.bind(this);\n this.onClick = this.onClick.bind(this);\n this.setError = this.setError.bind(this);\n }\n\n onImageLoaded(e: Event) {\n let image: any = new Image();\n image.onload = () => {\n this.setState({\n posterInfo: {\n width: image.width,\n height: image.height\n }\n });\n image = image.onload = null;\n };\n image.src = (e.target as HTMLElement).getAttribute('src');\n }\n\n frameRef(dom: any) {\n this.frameDom = dom;\n }\n\n cursorRef(dom: any) {\n this.cursorDom = dom;\n }\n\n playerRef(player: any) {\n this.player = player;\n\n if (!player) {\n return;\n }\n\n player.subscribeToStateChange((state: any) => {\n this.setState({\n videoState: state\n });\n\n // if (!state.paused) {\n // if (\n // currentPlaying &&\n // currentPlaying.video &&\n // currentPlaying !== player\n // ) {\n // currentPlaying.pause();\n // }\n\n // currentPlaying = player;\n // }\n\n if (!this.frameDom || !this.times) {\n return;\n }\n\n const jumpBufferDuration = this.props.jumpBufferDuration || 0;\n let index = 0;\n const times = this.times;\n const len = times.length;\n const stopOnNextFrame = this.props.stopOnNextFrame;\n while (index < len - 1) {\n if (\n times[index + 1] &&\n state.currentTime < times[index + 1] - jumpBufferDuration\n ) {\n break;\n }\n\n index++;\n }\n\n if (this.currentIndex !== index) {\n this.moveCursorToIndex(index);\n\n stopOnNextFrame && !this.manualJump && player.pause();\n\n if (this.manualJump) {\n this.manualJump = false;\n }\n }\n });\n }\n\n moveCursorToIndex(index: number) {\n const {classPrefix: ns} = this.props;\n if (!this.frameDom || !this.cursorDom) {\n return;\n }\n const items = this.frameDom.querySelectorAll(`.${ns}Video-frame`);\n\n if (items && items.length && items[index]) {\n this.currentIndex = index;\n const item = items[index];\n const frameRect = this.frameDom.getBoundingClientRect();\n const rect = item.getBoundingClientRect();\n this.cursorDom.setAttribute(\n 'style',\n `width: ${rect.width - 4}px; height: ${rect.height - 4}px; left: ${\n rect.left + 2 - frameRect.left\n }px; top: ${rect.top + 2 - frameRect.top}px;`\n );\n }\n }\n\n jumpToIndex(index: number) {\n if (!this.times || !this.player || !this.props.jumpFrame) {\n return;\n }\n const jumpBufferDuration = this.props.jumpBufferDuration || 0;\n const times = this.times;\n const player = this.player;\n\n this.manualJump = true;\n player.seek(times[index] - jumpBufferDuration);\n player.play();\n }\n\n onClick(e: Event) {\n // 避免把所在 form 给提交了。\n e.preventDefault();\n }\n\n setError(error?: string) {\n const player = this.player;\n\n this.setState({\n error: error\n });\n\n player?.pause();\n }\n\n renderFrames() {\n let {\n frames,\n framesClassName,\n columnsCount,\n data,\n jumpFrame,\n classPrefix: ns,\n classnames: cx\n } = this.props;\n\n if (typeof frames === 'string' && frames[0] === '$') {\n frames = resolveVariable(frames, data);\n }\n\n if (!frames) {\n return null;\n }\n\n const items: Array<object> = [];\n const times: Array<number> = (this.times = []);\n Object.keys(frames).forEach(time => {\n times.push(str2seconds(time));\n\n items.push({\n time: time,\n src: frames![time]\n });\n });\n\n if (!items.length) {\n return null;\n }\n\n return (\n <div\n className={cx(`pos-rlt Video-frameList`, framesClassName)}\n ref={this.frameRef}\n >\n {padArr(items, columnsCount).map((items, i) => {\n let restCount = (columnsCount as number) - items.length;\n let blankArray = [];\n\n while (restCount--) {\n blankArray.push('');\n }\n\n return (\n <div className=\"pull-in-xs\" key={i}>\n <div className={cx(`Hbox Video-frameItem`)}>\n {items.map((item, key) => (\n <div\n className={cx(`Hbox-col Wrapper--xs Video-frame`)}\n key={key}\n onClick={() =>\n this.jumpToIndex(i * (columnsCount as number) + key)\n }\n >\n {item.src ? (\n <img className=\"w-full\" alt=\"poster\" src={item.src} />\n ) : null}\n <div className={cx(`Video-frameLabel`)}>{item.time}</div>\n </div>\n ))}\n\n {\n /* 补充空白 */ restCount\n ? blankArray.map((_, index) => (\n <div\n className={cx(`Hbox-col Wrapper--xs`)}\n key={`blank_${index}`}\n />\n ))\n : null\n }\n </div>\n </div>\n );\n })}\n {jumpFrame ? (\n <span ref={this.cursorRef} className={cx('Video-cursor')} />\n ) : null}\n </div>\n );\n }\n\n renderPlayer() {\n let {\n poster,\n autoPlay,\n muted,\n name,\n data,\n amisConfig,\n locals,\n isLive,\n minVideoDuration,\n videoType,\n playerClassName,\n classPrefix: ns,\n aspectRatio,\n rates,\n classnames: cx\n } = this.props;\n\n let source =\n filter(this.props.src, data, '| raw') || getPropValue(this.props);\n const videoState = this.state.videoState;\n let highlight =\n videoState.duration &&\n minVideoDuration &&\n videoState.duration < minVideoDuration;\n let src = filter(source, data, '| raw');\n let sourceNode;\n const error = this.state.error;\n\n if (\n (src && /\\.flv(?:$|\\?)/.test(src) && isLive) ||\n videoType === 'video/x-flv'\n ) {\n sourceNode = (\n <FlvSource\n autoPlay={autoPlay}\n order={999.0}\n isLive={isLive}\n src={src}\n setError={this.setError}\n />\n );\n } else if (\n (src && /\\.m3u8(?:$|\\?)/.test(src)) ||\n videoType === 'application/x-mpegURL'\n ) {\n sourceNode = <HlsSource autoPlay={autoPlay} order={999.0} src={src} />;\n } else {\n sourceNode = <source src={src} />;\n }\n\n return (\n <div className={cx('Video-player', playerClassName)}>\n <Player\n ref={this.playerRef}\n poster={filter(poster, data, '| raw')}\n src={src}\n autoPlay={autoPlay}\n muted={muted}\n aspectRatio={aspectRatio}\n >\n {rates && rates.length ? (\n <ControlBar>\n <PlaybackRateMenuButton rates={rates} order={7.1} />\n </ControlBar>\n ) : null}\n <BigPlayButton position=\"center\" />\n {sourceNode}\n <Shortcut disabled />\n </Player>\n\n {error ? <div className={cx('Video-error')}>{error}</div> : null}\n {highlight ? (\n <p className={`m-t-xs ${ns}Text--danger`}>\n 视频时长小于 {minVideoDuration} 秒\n </p>\n ) : null}\n </div>\n );\n }\n\n renderPosterAndPlayer() {\n let {poster, data, locals, minPosterDimension, classnames: cx} = this.props;\n const posterInfo = this.state.posterInfo || {};\n let dimensionClassName = '';\n\n if (\n posterInfo &&\n minPosterDimension &&\n (minPosterDimension.width || minPosterDimension.height) &&\n (minPosterDimension.width > posterInfo.width ||\n minPosterDimension.height > posterInfo.height)\n ) {\n dimensionClassName = `Text--danger`;\n }\n\n return (\n <div className=\"pull-in-xs\">\n <div className={cx('Hbox')}>\n <div className={cx('Hbox-col')}>\n <div className={cx('Wrapper Wrapper--xs')}>\n <img\n onLoad={this.onImageLoaded as any}\n className=\"w-full\"\n alt=\"poster\"\n src={filter(poster, data, '| raw')}\n />\n <p className=\"m-t-xs\">\n 封面{' '}\n <span className={dimensionClassName}>\n {posterInfo.width || '-'} x {posterInfo.height || '-'}\n </span>\n {dimensionClassName ? (\n <span>\n {' '}\n 封面尺寸小于{' '}\n <span className={cx('Text--danger')}>\n {minPosterDimension.width || '-'} x{' '}\n {minPosterDimension.height || '-'}\n </span>\n </span>\n ) : null}\n </p>\n </div>\n </div>\n <div className={cx('Hbox-col')}>\n <div className={cx('Wrapper Wrapper--xs')}>\n {this.renderPlayer()}\n </div>\n </div>\n </div>\n </div>\n );\n }\n\n render() {\n let {splitPoster, className, classPrefix: ns, classnames: cx} = this.props;\n\n return (\n <div className={cx(`Video`, className)} onClick={this.onClick as any}>\n {this.renderFrames()}\n {splitPoster ? this.renderPosterAndPlayer() : this.renderPlayer()}\n </div>\n );\n }\n}\n\n@Renderer({\n type: 'video'\n})\nexport class VideoRenderer extends Video {}\n"
12
12
  ]
13
13
  }
@@ -102,7 +102,7 @@ exports.Row = mobx_state_tree_1.types
102
102
  return false;
103
103
  },
104
104
  get expanded() {
105
- return !this.collapsed;
105
+ return !this.collapsed && self.children.length > 0;
106
106
  },
107
107
  get moved() {
108
108
  return self.index !== self.newIndex;