@api-client/ui 0.0.9 → 0.0.11
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.eslintrc +8 -1
- package/demo/index.html +3 -0
- package/demo/layout/index.html +91 -0
- package/demo/layout/index.ts +182 -0
- package/dist/elements/layout/SplitItem.d.ts +1 -9
- package/dist/elements/layout/SplitItem.d.ts.map +1 -1
- package/dist/elements/layout/SplitItem.js +27 -20
- package/dist/elements/layout/SplitItem.js.map +1 -1
- package/dist/elements/layout/SplitLayout.d.ts +16 -14
- package/dist/elements/layout/SplitLayout.d.ts.map +1 -1
- package/dist/elements/layout/SplitLayout.js +47 -42
- package/dist/elements/layout/SplitLayout.js.map +1 -1
- package/dist/elements/layout/SplitPanel.d.ts +7 -2
- package/dist/elements/layout/SplitPanel.d.ts.map +1 -1
- package/dist/elements/layout/SplitPanel.js +130 -52
- package/dist/elements/layout/SplitPanel.js.map +1 -1
- package/dist/elements/layout/SplitView.d.ts.map +1 -1
- package/dist/elements/layout/SplitView.js +18 -14
- package/dist/elements/layout/SplitView.js.map +1 -1
- package/dist/elements/layout/type.d.ts +3 -3
- package/dist/elements/layout/type.d.ts.map +1 -1
- package/dist/elements/layout/type.js.map +1 -1
- package/dist/elements/schema-design/DataModelVisualizationElement.d.ts.map +1 -1
- package/dist/elements/schema-design/DataModelVisualizationElement.js +18 -1
- package/dist/elements/schema-design/DataModelVisualizationElement.js.map +1 -1
- package/dist/pages/http-project/HttpClientCommands.d.ts.map +1 -1
- package/dist/pages/http-project/HttpClientCommands.js +28 -12
- package/dist/pages/http-project/HttpClientCommands.js.map +1 -1
- package/package.json +2 -1
- package/src/elements/layout/SplitItem.ts +29 -21
- package/src/elements/layout/SplitLayout.ts +53 -43
- package/src/elements/layout/SplitPanel.ts +140 -57
- package/src/elements/layout/SplitView.ts +18 -15
- package/src/elements/layout/type.ts +3 -4
- package/src/elements/schema-design/DataModelVisualizationElement.ts +18 -1
- package/src/pages/http-project/HttpClientCommands.ts +28 -12
- package/test/elements/layout/SplitItem.test.ts +76 -75
- package/test/elements/layout/SplitLayoutManager.test.ts +70 -69
- package/test/elements/layout/SplitPanel.test.ts +10 -7
- package/tsconfig.eslint.json +8 -0
- package/web-test-runner.config.mjs +4 -1
- package/dist/define/layout/layout-panel.d.ts +0 -7
- package/dist/define/layout/layout-panel.d.ts.map +0 -1
- package/dist/define/layout/layout-panel.js +0 -3
- package/dist/define/layout/layout-panel.js.map +0 -1
- package/dist/elements/layout/LayoutManager.d.ts +0 -327
- package/dist/elements/layout/LayoutManager.d.ts.map +0 -1
- package/dist/elements/layout/LayoutManager.js +0 -747
- package/dist/elements/layout/LayoutManager.js.map +0 -1
- package/dist/elements/layout/LayoutPanelElement.d.ts +0 -62
- package/dist/elements/layout/LayoutPanelElement.d.ts.map +0 -1
- package/dist/elements/layout/LayoutPanelElement.js +0 -628
- package/dist/elements/layout/LayoutPanelElement.js.map +0 -1
- package/src/define/layout/layout-panel.ts +0 -9
- package/src/elements/layout/LayoutManager.ts +0 -930
- package/src/elements/layout/LayoutPanelElement.ts +0 -651
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SplitView.js","sourceRoot":"","sources":["../../../src/elements/layout/SplitView.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,OAAO,EAAkB,MAAM,KAAK,CAAC;AAChE,OAAO,EAAE,YAAY,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAClE,OAAO,EAAE,QAAQ,EAAE,MAAM,6BAA6B,CAAC;AACvD,OAAO,EAAE,SAAS,EAAE,MAAM,8BAA8B,CAAC;AAGzD,OAAO,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAExD,MAAM,CAAC,OAAO,OAAO,SAAU,SAAQ,UAAU;IAkC/C;QACE,KAAK,EAAE,CAAC;QAlCV;;WAEG;QACwC,WAAM,GAAmB,cAAc,CAAC,UAAU,CAAC;QAS9F;;WAEG;QACgB,WAAM,GAAG,KAAK,CAAC;QAElC;;WAEG;QACgB,eAAU,GAAiB,WAAW,CAAC,MAAM,CAAC;QAOjE;;;WAGG;QACyC,cAAS,GAAG,KAAK,CAAC;QAI5D,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACvD,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACnD,IAAI,CAAC,gBAAgB,CAAC,WAAW,EAAE,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QACpE,IAAI,CAAC,gBAAgB,CAAC,UAAU,EAAE,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QAClE,IAAI,CAAC,gBAAgB,CAAC,MAAM,EAAE,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IAC5D,CAAC;IAEQ,iBAAiB;QACxB,KAAK,CAAC,iBAAiB,EAAE,CAAC;QAC1B,QAAQ,CAAC,IAAI,CAAC,gBAAgB,CAAC,WAAW,EAAE,IAAI,CAAC,eAAe,CAAC,CAAC;QAClE,QAAQ,CAAC,IAAI,CAAC,gBAAgB,CAAC,SAAS,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC;IAChE,CAAC;IAEQ,oBAAoB;QAC3B,KAAK,CAAC,oBAAoB,EAAE,CAAC;QAC7B,QAAQ,CAAC,IAAI,CAAC,mBAAmB,CAAC,WAAW,EAAE,IAAI,CAAC,eAAe,CAAC,CAAC;QACrE,QAAQ,CAAC,IAAI,CAAC,mBAAmB,CAAC,SAAS,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC;IACnE,CAAC;IAES,eAAe,CAAC,CAAY;QACpC,MAAM,EAAE,YAAY,EAAE,GAAG,CAAC,CAAC;QAC3B,IAAI,CAAC,YAAY,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE;YAC1C,OAAO;SACR;QACD,CAAC,CAAC,cAAc,EAAE,CAAC;QACnB,CAAC,CAAC,eAAe,EAAE,CAAC;QACpB,YAAY,CAAC,UAAU,GAAG,MAAM,CAAC;IACnC,CAAC;IAES,cAAc,CAAC,CAAY;QACnC,MAAM,EAAE,YAAY,EAAE,GAAG,CAAC,CAAC;QAC3B,IAAI,CAAC,YAAY,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE;YAC1C,OAAO;SACR;QACD,CAAC,CAAC,cAAc,EAAE,CAAC;QACnB,CAAC,CAAC,eAAe,EAAE,CAAC;QACpB,MAAM,MAAM,GAAG,IAAI,CAAC,sBAAsB,CAAC,CAAC,CAAC,CAAC;QAC9C,IAAI,CAAC,MAAM,EAAE;YACX,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;YACpB,OAAO;SACR;QACD,YAAY,CAAC,UAAU,GAAG,MAAM,CAAC;QACjC,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;QACnB,IAAI,CAAC,UAAU,GAAG,MAAM,CAAC;IAC3B,CAAC;IAES,UAAU,CAAC,CAAY;QAC/B,MAAM,EAAE,YAAY,EAAE,GAAG,CAAC,CAAC;QAC3B,IAAI,CAAC,YAAY,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE;YAC1C,OAAO;SACR;QACD,CAAC,CAAC,cAAc,EAAE,CAAC;QACnB,CAAC,CAAC,eAAe,EAAE,CAAC;QACpB,MAAM,IAAI,GAAG,YAAY,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;QAC/C,MAAM,GAAG,GAAG,YAAY,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;QAC7C,IAAI,CAAC,IAAI,IAAI,CAAC,GAAG,EAAE;YACjB,OAAO;SACR;QACD,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;QACpB,MAAM,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC;QACvB,IAAI,QAAQ,GAAG,IAAI,CAAC;QACpB,IAAI,KAAK,EAAE;YACT,KAAK,CAAC,OAAO,CAAC,EAAE,GAAG,EAAE,IAAI,EAAE,KAAK,EAAE,SAAS,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC;YAC5E,KAAK,CAAC,OAAO,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC;YACrC,QAAQ,GAAG,IAAI,CAAC;SACjB;QACD,IAAI,QAAQ,EAAE;YACZ,IAAI,CAAC,aAAa,CAAC,IAAI,WAAW,CAAC,UAAU,EAAE;gBAC7C,MAAM,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,UAAU,EAAE;gBAC9C,QAAQ,EAAE,IAAI;gBACd,OAAO,EAAE,IAAI;gBACb,UAAU,EAAE,IAAI;aACjB,CAAC,CAAC,CAAC;SACL;QACD,IAAI,CAAC,aAAa,EAAE,CAAC;IACvB,CAAC;IAES,eAAe,CAAC,CAAY;QACpC,MAAM,GAAG,GAAG,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;QAC/B,IAAI,CAAC,GAAG,IAAI,GAAG,KAAK,IAAI,EAAE;YACxB,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;YACpB,IAAI,CAAC,UAAU,GAAG,WAAW,CAAC,MAAM,CAAC;SACtC;IACH,CAAC;IAES,aAAa;QACrB,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;QACpB,IAAI,CAAC,UAAU,GAAG,WAAW,CAAC,MAAM,CAAC;IACvC,CAAC;IAES,sBAAsB,CAAC,CAAY;QAC3C,MAAM,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;QAClC,IAAI,CAAC,MAAM,EAAE;YACX,OAAO,SAAS,CAAC;SAClB;QACD,OAAO,IAAI,CAAC,aAAa,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;IACvC,CAAC;IAED,aAAa,CAAC,OAAoB,EAAE,CAAY;QAC9C,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,CAAC,CAAC;QAC3B,MAAM,IAAI,GAAG,OAAO,CAAC,qBAAqB,EAAE,CAAC;QAC7C,MAAM,YAAY,GAAG,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC;QACpC,MAAM,aAAa,GAAG,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC;QACtC,IAAI,KAAK,GAAG,IAAI,CAAC,IAAI,GAAG,YAAY,EAAE;YACpC,OAAO,WAAW,CAAC,IAAI,CAAC;SACzB;QACD,IAAI,KAAK,GAAG,IAAI,CAAC,KAAK,GAAG,YAAY,EAAE;YACrC,OAAO,WAAW,CAAC,IAAI,CAAC;SACzB;QACD,IAAI,KAAK,GAAG,IAAI,CAAC,GAAG,GAAG,aAAa,EAAE;YACpC,OAAO,WAAW,CAAC,KAAK,CAAC;SAC1B;QACD,IAAI,KAAK,GAAG,IAAI,CAAC,MAAM,GAAG,aAAa,EAAE;YACvC,OAAO,WAAW,CAAC,KAAK,CAAC;SAC1B;QACD,MAAM,cAAc,GAAG,CAAC,KAAK,IAAI,IAAI,CAAC,IAAI,GAAG,YAAY,CAAC,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,GAAG,YAAY,CAAC,CAAC;QACnG,MAAM,cAAc,GAAG,CAAC,KAAK,IAAI,IAAI,CAAC,GAAG,GAAG,aAAa,CAAC,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,MAAM,GAAG,aAAa,CAAC,CAAC;QACrG,IAAI,cAAc,IAAI,cAAc,EAAE;YACpC,OAAO,WAAW,CAAC,MAAM,CAAC;SAC3B;QACD,OAAO,SAAS,CAAC;IACnB,CAAC;IAES,UAAU,CAAC,CAAQ;QAC3B,MAAM,IAAI,GAAG,CAAC,CAAC,YAAY,EAAE,CAAC;QAC9B,OAAO,IAAI,CAAC,MAAM,EAAE;YAClB,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,EAAa,CAAC;YACrC,IAAI,IAAI,CAAC,QAAQ,KAAK,IAAI,CAAC,YAAY,EAAE;gBACvC,SAAS;aACV;YACD,IAAI,IAAI,CAAC,SAAS,KAAK,IAAI,CAAC,SAAS,EAAE;gBACrC,OAAO,IAAiB,CAAC;aAC1B;SACF;QACD,OAAO,SAAS,CAAC;IACnB,CAAC;IAES,YAAY,CAAC,EAAgB;QACrC,MAAM,EAAE,SAAS,EAAE,GAAG,IAAI,CAAC;QAC3B,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE;YAC7B,OAAO,IAAI,CAAC;SACb;QACD,MAAM,UAAU,GAAG,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,CAAC;QACjC,MAAM,YAAY,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC;QACzD,OAAO,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC;IAChE,CAAC;IAES,YAAY,CAAC,CAAY;QACjC,IAAI,CAAC,CAAC,gBAAgB,EAAE;YACtB,OAAO,KAAK,CAAC;SACd;QACD,IAAI,CAAC,CAAC,YAAY,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,YAAY,CAAC,EAAE;YACxD,OAAO,KAAK,CAAC;SACd;QACD,MAAM,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC;QACvB,IAAI,CAAC,KAAK,EAAE;YACV,OAAO,IAAI,CAAC;SACb;QACD,OAAO,KAAK,CAAC,OAAO,EAAE,CAAC;IACzB,CAAC;IAES,kBAAkB,CAAC,CAAY;QACvC,MAAM,EAAE,GAAG,CAAC,CAAC,YAAY,CAAC;QAC1B,IAAI,CAAC,EAAE,IAAI,IAAI,CAAC,GAAG,KAAK,SAAS,EAAE;YACjC,OAAO;SACR;QAED,EAAE,CAAC,aAAa,GAAG,UAAU,CAAC;QAC9B,EAAE,CAAC,UAAU,GAAG,MAAM,CAAC;QACvB,MAAM,IAAI,GAAG,CAAC,CAAC,MAAqB,CAAC;QACrC,EAAE,CAAC,OAAO,CAAC,WAAW,EAAE,IAAI,CAAC,OAAO,CAAC,IAAc,CAAC,CAAC;QACrD,EAAE,CAAC,OAAO,CAAC,UAAU,EAAE,IAAI,CAAC,OAAO,CAAC,GAAa,CAAC,CAAC;QACnD,EAAE,CAAC,OAAO,CAAC,aAAa,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;QAC1C,EAAE,CAAC,OAAO,CAAC,YAAY,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC;IACrC,CAAC;IAES,mBAAmB,CAAC,CAAY;QACxC,MAAM,EAAE,GAAG,CAAC,CAAC,YAAY,CAAC;QAC1B,IAAI,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE;YAChC,OAAO;SACR;QACD,CAAC,CAAC,eAAe,EAAE,CAAC;QACpB,CAAC,CAAC,cAAc,EAAE,CAAC;QACnB,EAAE,CAAC,aAAa,GAAG,MAAM,CAAC;QAC1B,EAAE,CAAC,UAAU,GAAG,MAAM,CAAC;IACzB,CAAC;IAES,kBAAkB,CAAC,CAAY;QACvC,MAAM,EAAE,GAAG,CAAC,CAAC,YAAY,CAAC;QAC1B,IAAI,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE;YAChC,OAAO;SACR;QACD,CAAC,CAAC,eAAe,EAAE,CAAC;QACpB,CAAC,CAAC,cAAc,EAAE,CAAC;QACnB,EAAE,CAAC,aAAa,GAAG,MAAM,CAAC;QAC1B,EAAE,CAAC,UAAU,GAAG,MAAM,CAAC;IACzB,CAAC;IAES,aAAa,CAAC,CAAY;QAClC,MAAM,EAAE,GAAG,CAAC,CAAC,YAAY,CAAC;QAC1B,IAAI,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,GAAG,KAAK,SAAS,EAAE;YAC1D,OAAO;SACR;QACD,CAAC,CAAC,eAAe,EAAE,CAAC;QACpB,CAAC,CAAC,cAAc,EAAE,CAAC;QACnB,MAAM,GAAG,GAAG,EAAE,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;QACtC,MAAM,GAAG,GAAG,EAAE,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;QACnC,MAAM,IAAI,GAAG,EAAE,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;QACrC,MAAM,WAAW,GAAG,EAAE,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;QAC7C,MAAM,SAAS,GAAG,GAAG,KAAK,IAAI,CAAC,SAAS,CAAC;QAEzC,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QAChC,MAAM,OAAO,GAAG,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QAEpE,IAAI,SAAS,EAAE;YACb,IAAI,CAAC,WAAW,EAAE;gBAChB,OAAO;aACR;YACD,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,OAAO,CAAC,CAAC;SACnD;aAAM;YACL,IAAI,QAAQ,GAAG,IAAI,CAAC;YACpB,IAAI,IAAI,CAAC,KAAK,EAAE;gBACd,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,GAAG,EAAE,IAAI,EAAE,KAAK,EAAE,SAAS,EAAE,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC,CAAC;gBACxE,QAAQ,GAAG,IAAI,CAAC;aACjB;YACD,IAAI,QAAQ,EAAE;gBACZ,IAAI,CAAC,aAAa,CAAC,IAAI,WAAW,CAAC,UAAU,EAAE;oBAC7C,MAAM,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,OAAO,EAAE;oBACrC,QAAQ,EAAE,IAAI;oBACd,OAAO,EAAE,IAAI;oBACb,UAAU,EAAE,IAAI;iBACjB,CAAC,CAAC,CAAC;aACL;YACD,IAAI,CAAC,aAAa,EAAE,CAAC;SACtB;IACH,CAAC;IAES,OAAO,CAAC,UAAkB,EAAE,QAAgB,EAAE,GAAW,EAAE,OAAgB;QACnF,MAAM,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC;QACvB,IAAI,KAAK,EAAE;YACT,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,UAAU,EAAE,QAAQ,EAAE,GAAG,EAAE,OAAO,CAAC,CAAC;SAC5D;IACH,CAAC;IAES,OAAO,CAAC,CAAQ;QACxB,MAAM,IAAI,GAAG,CAAC,CAAC,YAAY,EAAE,CAAC;QAC9B,OAAO,IAAI,CAAC,MAAM,EAAE;YAClB,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,EAAa,CAAC;YACrC,IAAI,IAAI,CAAC,QAAQ,KAAK,IAAI,CAAC,YAAY,EAAE;gBACvC,SAAS;aACV;YACD,IAAI,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE;gBACzC,OAAO,IAAmB,CAAC;aAC5B;SACF;QACD,OAAO,SAAS,CAAC;IACnB,CAAC;IAES,KAAK,CAAC,cAAc,CAAC,CAAQ;QACrC,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE;YACf,OAAO;SACR;QACD,MAAM,GAAG,GAAI,CAAC,CAAC,aAA6B,CAAC,OAAO,CAAC,GAAa,CAAC;QACnE,IAAI,CAAC,GAAG,EAAE;YACR,OAAO;SACR;QACD,IAAI,IAAI,CAAC,KAAK,CAAC,QAAQ,KAAK,GAAG,EAAE;YAC/B,OAAO;SACR;QACD,IAAI,CAAC,KAAK,CAAC,QAAQ,GAAG,GAAG,CAAC;QAC1B,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,YAAY,EAAE,CAAC;QAClC,IAAI,CAAC,aAAa,EAAE,CAAC;QACrB,MAAM,IAAI,CAAC,cAAc,CAAC;QAC1B,MAAM,KAAK,GAAG,IAAI,CAAC,aAAa,CAAC,cAAc,GAAG,IAAI,CAAC,CAAC;QACxD,IAAI,KAAK,EAAE;YACT,KAAK,CAAC,aAAa,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;SAC1C;IACH,CAAC;IAED;;OAEG;IACO,oBAAoB,CAAC,CAAe;QAC5C,uDAAuD;QACvD,2CAA2C;QAC3C,IAAI,CAAC,CAAC,MAAM,KAAK,CAAC,IAAI,CAAC,CAAC,OAAO,KAAK,CAAC,EAAE;YACrC,CAAC,CAAC,cAAc,EAAE,CAAC;YACnB,CAAC,CAAC,eAAe,EAAE,CAAC;YACpB,MAAM,GAAG,GAAI,CAAC,CAAC,MAAsB,CAAC,OAAO,CAAC,GAAa,CAAC;YAC5D,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;SACpB;IACH,CAAC;IAES,cAAc,CAAC,CAAQ;QAC/B,MAAM,IAAI,GAAG,CAAC,CAAC,MAAqB,CAAC;QACrC,MAAM,MAAM,GAAG,IAAI,CAAC,aAA4B,CAAC;QACjD,MAAM,GAAG,GAAG,MAAM,CAAC,OAAO,CAAC,GAAa,CAAC;QACzC,IAAI,GAAG,EAAE;YACP,CAAC,CAAC,cAAc,EAAE,CAAC;YACnB,CAAC,CAAC,eAAe,EAAE,CAAC;YACpB,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;SACpB;IACH,CAAC;IAGS,mBAAmB,CAAC,CAAa;QACzC,IAAI,CAAC,CAAC,aAAa,CAAC,MAAM,KAAK,CAAC,EAAE;YAChC,CAAC,CAAC,cAAc,EAAE,CAAC;YACnB,CAAC,CAAC,eAAe,EAAE,CAAC;YACpB,MAAM,GAAG,GAAI,CAAC,CAAC,MAAsB,CAAC,OAAO,CAAC,GAAa,CAAC;YAC5D,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;SACpB;IACH,CAAC;IAES,QAAQ,CAAC,GAAW;QAC5B,MAAM,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC;QACvB,IAAI,CAAC,KAAK,EAAE;YACV,OAAO;SACR;QACD,MAAM,IAAI,GAAG,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;QACzC,IAAI,CAAC,IAAI,EAAE;YACT,OAAO;SACR;QACD,IAAI,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,MAAM,EAAE;YAClC,OAAO;SACR;QACD,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;QACtB,IAAI,CAAC,aAAa,EAAE,CAAC;QACrB,IAAI,CAAC,aAAa,CAAC,IAAI,WAAW,CAAC,UAAU,EAAE;YAC7C,OAAO,EAAE,IAAI;YACb,UAAU,EAAE,IAAI;YAChB,QAAQ,EAAE,IAAI;YACd,MAAM,EAAE,GAAG;SACZ,CAAC,CAAC,CAAC;IACN,CAAC;IAES,gBAAgB,CAAC,CAAgB;QACzC,IAAI,CAAC,CAAC,GAAG,KAAK,OAAO,EAAE;YACrB,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC;SACxB;IACH,CAAC;IAEQ,MAAM;QACb,OAAO,IAAI,CAAA;MACT,IAAI,CAAC,kBAAkB,EAAE;MACzB,IAAI,CAAC,YAAY,EAAE;;;;KAIpB,CAAC;IACJ,CAAC;IAES,kBAAkB;QAC1B,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,GAAG,IAAI,CAAC;QACpC,IAAI,CAAC,MAAM,EAAE;YACX,OAAO,OAAO,CAAC;SAChB;QACD,OAAO,IAAI,CAAA;8BACe,UAAU;KACnC,CAAC;IACJ,CAAC;IAES,YAAY;QACpB,MAAM,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC;QACvB,IAAI,CAAC,KAAK,EAAE;YACV,OAAO,EAAE,CAAC;SACX;QACD,MAAM,KAAK,GAAG,KAAK,CAAC,WAAW,EAAE,CAAC;QAClC,IAAI,CAAC,KAAK,EAAE;YACV,OAAO,EAAE,CAAC;SACX;QACD,MAAM,IAAI,GAAG,KAAK,CAAC,MAAM,CAAC;QAC1B,OAAO,IAAI,CAAA;;;;oBAIK,IAAI,CAAC,mBAAmB;mBACzB,IAAI,CAAC,kBAAkB;eAC3B,IAAI,CAAC,aAAa;;MAE3B,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,KAAK,IAAI,EAAE,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;;KAEhF,CAAC;IACJ,CAAC;IAES,WAAW,CAAC,IAAe,EAAE,IAAa,EAAE,OAAgB;QACpE,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,KAAK,GAAG,EAAE,EAAE,KAAK,GAAG,CAAC,EAAE,IAAI,EAAE,OAAO,GAAG,KAAK,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;QACjF,MAAM,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC;QACvB,MAAM,QAAQ,GAAG,CAAC,CAAC,KAAK,IAAI,KAAK,CAAC,QAAQ,KAAK,GAAG,CAAC;QACnD,MAAM,YAAY,GAAG,CAAC,CAAC,OAAO,IAAI,CAAC,CAAC,KAAK,IAAI,KAAK,CAAC,QAAQ,KAAK,OAAO,CAAC;QACxE,MAAM,QAAQ,GAAG,CAAC,IAAI,CAAC,UAAU,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC;QAClD,MAAM,OAAO,GAAG;YACd,YAAY,EAAE,IAAI;YAClB,UAAU,EAAE,OAAO;YACnB,QAAQ;YACR,QAAQ,EAAE,QAAQ;SACnB,CAAC;QACF,IAAI,KAAK,GAAG,KAAK,CAAC;QAClB,IAAI,OAAO,EAAE;YACX,KAAK,GAAG,iBAAiB,CAAC;SAC3B;QAED,MAAM,aAAa,GAAG,IAAI,IAAI,QAAQ,IAAI,YAAY,CAAC;QACvD,OAAO,IAAI,CAAA;;kBAEG,GAAG;mBACF,IAAI;oBACH,KAAK;qBACJ,SAAS,CAAC,MAAM,CAAC;oBAClB,OAAO;;eAEZ,QAAQ,CAAC,OAAO,CAAC;;;;oBAIZ,IAAI,CAAC,kBAAkB;gBAC3B,IAAI,CAAC,cAAc;sBACb,IAAI,CAAC,oBAAoB;qBAC1B,IAAI,CAAC,mBAAmB;kBAC3B,IAAI,CAAC,gBAAgB;;QAE/B,IAAI,CAAC,CAAC,CAAC,IAAI,CAAA,kBAAkB,IAAI,kCAAkC,CAAC,CAAC,CAAC,EAAE;uCACzC,KAAK,KAAK,KAAK;QAC9C,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAA,oDAAoD,IAAI,CAAC,cAAc,cAAc,CAAC,CAAC,CAAC,EAAE;;8BAEnF,aAAa,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE;KACtD,CAAC;IACJ,CAAC;CACF;AA5c4C;IAA1C,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;yCAAoD;AAKnD;IAA1C,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;sCAAc;AAE7B;IAA1B,QAAQ,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;4CAAsB;AAKvC;IAAR,KAAK,EAAE;yCAA0B;AAKzB;IAAR,KAAK,EAAE;6CAAyD;AAKrC;IAA3B,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;wCAAoB;AAMH;IAA3C,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;4CAAmB;AAqT9D;IADC,YAAY,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;oDAQ/B","sourcesContent":["import { html, LitElement, nothing, TemplateResult } from \"lit\";\nimport { eventOptions, property, state } from \"lit/decorators.js\";\nimport { classMap } from \"lit/directives/class-map.js\";\nimport { ifDefined } from \"lit/directives/if-defined.js\";\nimport { SplitItem } from \"./SplitItem.js\";\nimport { SplitPanel } from \"./SplitPanel.js\";\nimport { SplitDirection, SplitRegion } from \"./type.js\";\n\nexport default class SplitView extends LitElement {\n /**\n * @attribute\n */\n @property({ type: String, reflect: true }) layout: SplitDirection = SplitDirection.horizontal;\n\n /**\n * @attribute\n */\n @property({ type: Number, reflect: true }) key?: string;\n\n @property({ type: Array }) dragTypes?: string[];\n\n /**\n * Whether dragging is occurring over the element\n */\n @state() protected inDrag = false;\n\n /**\n * The region the drag is leaning to.\n */\n @state() protected dragRegion?: SplitRegion = SplitRegion.center;\n\n /**\n * A reference to the split panel that owns this view.\n */\n @property({ type: Object }) panel?: SplitPanel;\n\n /**\n * When set it adds the `overflow` hidden on the container that holds the tab contents.\n * @attribute\n */\n @property({ type: Boolean, reflect: true }) constrain = false;\n\n constructor() {\n super();\n this.handleDragleave = this.handleDragleave.bind(this);\n this.handleDragEnd = this.handleDragEnd.bind(this);\n this.addEventListener('dragenter', this.handleDragEnter.bind(this));\n this.addEventListener('dragover', this.handleDragOver.bind(this));\n this.addEventListener('drop', this.handleDrop.bind(this));\n }\n\n override connectedCallback(): void {\n super.connectedCallback();\n document.body.addEventListener('dragleave', this.handleDragleave);\n document.body.addEventListener('dragend', this.handleDragEnd);\n }\n\n override disconnectedCallback(): void {\n super.disconnectedCallback();\n document.body.removeEventListener('dragleave', this.handleDragleave);\n document.body.removeEventListener('dragend', this.handleDragEnd);\n }\n\n protected handleDragEnter(e: DragEvent): void {\n const { dataTransfer } = e;\n if (!dataTransfer || !this.panelCanDrop(e)) {\n return;\n }\n e.preventDefault();\n e.stopPropagation();\n dataTransfer.dropEffect = 'copy';\n }\n\n protected handleDragOver(e: DragEvent): void {\n const { dataTransfer } = e;\n if (!dataTransfer || !this.panelCanDrop(e)) {\n return;\n }\n e.preventDefault();\n e.stopPropagation();\n const region = this.getDropRegionFromEvent(e);\n if (!region) {\n this.inDrag = false;\n return;\n }\n dataTransfer.dropEffect = 'copy';\n this.inDrag = true;\n this.dragRegion = region;\n }\n\n protected handleDrop(e: DragEvent): void {\n const { dataTransfer } = e;\n if (!dataTransfer || !this.panelCanDrop(e)) {\n return;\n }\n e.preventDefault();\n e.stopPropagation();\n const kind = dataTransfer.getData('text/kind');\n const key = dataTransfer.getData('text/key');\n if (!kind || !key) {\n return;\n }\n this.inDrag = false;\n const { panel } = this;\n let dispatch = true;\n if (panel) {\n panel.addItem({ key, kind, label: 'New tab' }, { region: this.dragRegion });\n panel.manager.requestNameUpdate(key);\n dispatch = true;\n }\n if (dispatch) {\n this.dispatchEvent(new CustomEvent('datadrop', {\n detail: { kind, key, region: this.dragRegion },\n composed: true,\n bubbles: true,\n cancelable: true,\n }));\n }\n this.requestUpdate();\n }\n\n protected handleDragleave(e: DragEvent): void {\n const elm = this.findLayout(e);\n if (!elm || elm !== this) {\n this.inDrag = false;\n this.dragRegion = SplitRegion.center;\n }\n }\n\n protected handleDragEnd(): void {\n this.inDrag = false;\n this.dragRegion = SplitRegion.center;\n }\n\n protected getDropRegionFromEvent(e: DragEvent): SplitRegion | undefined {\n const layout = this.findLayout(e);\n if (!layout) {\n return undefined;\n }\n return this.getDropRegion(layout, e);\n }\n\n getDropRegion(element: HTMLElement, e: DragEvent): SplitRegion | undefined {\n const { pageX, pageY } = e;\n const rect = element.getBoundingClientRect();\n const quarterWidth = rect.width / 4;\n const quarterHeight = rect.height / 4;\n if (pageX < rect.left + quarterWidth) {\n return SplitRegion.west;\n }\n if (pageX > rect.right - quarterWidth) {\n return SplitRegion.east;\n }\n if (pageY < rect.top + quarterHeight) {\n return SplitRegion.north;\n }\n if (pageY > rect.bottom - quarterHeight) {\n return SplitRegion.south;\n }\n const withingCenterX = (pageX >= rect.left + quarterWidth) && (pageX <= rect.right - quarterWidth);\n const withingCenterY = (pageY >= rect.top + quarterHeight) && (pageY <= rect.bottom - quarterHeight);\n if (withingCenterX && withingCenterY) {\n return SplitRegion.center;\n }\n return undefined;\n }\n\n protected findLayout(e: Event): SplitView | undefined {\n const path = e.composedPath();\n while (path.length) {\n const node = path.shift() as Element;\n if (node.nodeType !== Node.ELEMENT_NODE) {\n continue;\n }\n if (node.localName === this.localName) {\n return node as SplitView;\n }\n }\n return undefined;\n }\n\n protected hasDropTypes(dt: DataTransfer): boolean {\n const { dragTypes } = this;\n if (!Array.isArray(dragTypes)) {\n return true;\n }\n const eventTypes = [...dt.types];\n const allowedTypes = dragTypes.map(i => i.toLowerCase());\n return !allowedTypes.some(type => !eventTypes.includes(type));\n }\n\n protected panelCanDrop(e: DragEvent): boolean {\n if (e.defaultPrevented) {\n return false;\n }\n if (e.dataTransfer && !this.hasDropTypes(e.dataTransfer)) {\n return false;\n }\n const { panel } = this;\n if (!panel) {\n return true;\n }\n return panel.canDrop();\n }\n\n protected handleTabDragStart(e: DragEvent): void {\n const dt = e.dataTransfer;\n if (!dt || this.key === undefined) {\n return;\n }\n\n dt.effectAllowed = 'copyMove';\n dt.dropEffect = 'move';\n const node = e.target as HTMLElement;\n dt.setData('text/kind', node.dataset.kind as string);\n dt.setData('text/key', node.dataset.key as string);\n dt.setData('text/source', this.localName);\n dt.setData('layout/key', this.key);\n }\n\n protected handleTabsDragEnter(e: DragEvent): void {\n const dt = e.dataTransfer;\n if (!dt || !this.panelCanDrop(e)) {\n return;\n }\n e.stopPropagation();\n e.preventDefault();\n dt.effectAllowed = 'move';\n dt.dropEffect = 'move';\n }\n\n protected handleTabsDragover(e: DragEvent): void {\n const dt = e.dataTransfer;\n if (!dt || !this.panelCanDrop(e)) {\n return;\n }\n e.stopPropagation();\n e.preventDefault();\n dt.effectAllowed = 'move';\n dt.dropEffect = 'move';\n }\n\n protected handleTabDrop(e: DragEvent): void {\n const dt = e.dataTransfer;\n if (!dt || !this.panelCanDrop(e) || this.key === undefined) {\n return;\n }\n e.stopPropagation();\n e.preventDefault();\n const src = dt.getData('text/source');\n const key = dt.getData('text/key');\n const kind = dt.getData('text/kind');\n const srcPanelKey = dt.getData('layout/key');\n const movingTab = src === this.localName;\n\n const overTab = this.findTab(e);\n const toIndex = overTab ? Number(overTab.dataset.index) : undefined;\n\n if (movingTab) {\n if (!srcPanelKey) {\n return;\n }\n this.moveTab(srcPanelKey, this.key, key, toIndex);\n } else {\n let dispatch = true;\n if (this.panel) {\n this.panel.addItem({ key, kind, label: 'New tab' }, { index: toIndex });\n dispatch = true;\n }\n if (dispatch) {\n this.dispatchEvent(new CustomEvent('datadrop', {\n detail: { kind, key, index: toIndex },\n composed: true,\n bubbles: true,\n cancelable: true,\n }));\n }\n this.requestUpdate();\n }\n }\n\n protected moveTab(fromLayout: string, toLayout: string, key: string, toIndex?: number): void {\n const { panel } = this;\n if (panel) {\n panel.manager.moveItem(fromLayout, toLayout, key, toIndex);\n }\n }\n\n protected findTab(e: Event): HTMLElement | undefined {\n const path = e.composedPath();\n while (path.length) {\n const node = path.shift() as Element;\n if (node.nodeType !== Node.ELEMENT_NODE) {\n continue;\n }\n if (node.classList.contains('layout-tab')) {\n return node as HTMLElement;\n }\n }\n return undefined;\n }\n\n protected async handleTabClick(e: Event): Promise<void> {\n if (!this.panel) {\n return;\n }\n const key = (e.currentTarget as HTMLElement).dataset.key as string;\n if (!key) {\n return;\n }\n if (this.panel.selected === key) {\n return;\n }\n this.panel.selected = key;\n this.panel.manager.notifyChange();\n this.requestUpdate();\n await this.updateComplete;\n const child = this.querySelector(`[data-key=\"${key}\"]`);\n if (child) {\n child.dispatchEvent(new Event('resize'));\n }\n }\n\n /**\n * Closes a panel with right pointer configuration\n */\n protected handleTabPointerDown(e: PointerEvent): void {\n // the configuration of a middle button click which is \n // equal to 3 fingers click on a track pad.\n if (e.button === 1 && e.buttons === 4) {\n e.preventDefault();\n e.stopPropagation();\n const key = (e.target as HTMLElement).dataset.key as string;\n this.closeTab(key);\n }\n }\n\n protected handleTabClose(e: Event): void {\n const icon = e.target as HTMLElement;\n const button = icon.parentElement as HTMLElement;\n const key = button.dataset.key as string;\n if (key) {\n e.preventDefault();\n e.stopPropagation();\n this.closeTab(key);\n }\n }\n\n @eventOptions({ passive: true })\n protected handleTabTouchStart(e: TouchEvent): void {\n if (e.targetTouches.length === 3) {\n e.preventDefault();\n e.stopPropagation();\n const key = (e.target as HTMLElement).dataset.key as string;\n this.closeTab(key);\n }\n }\n\n protected closeTab(key: string): void {\n const { panel } = this;\n if (!panel) {\n return;\n }\n const item = panel.manager.findItem(key);\n if (!item) {\n return;\n }\n if (item.persistent && item.pinned) {\n return;\n }\n panel.removeItem(key);\n this.requestUpdate();\n this.dispatchEvent(new CustomEvent('closetab', {\n bubbles: true,\n cancelable: true,\n composed: true,\n detail: key,\n }));\n }\n\n protected handleTabKeyDown(e: KeyboardEvent): void {\n if (e.key === 'Enter') {\n this.handleTabClick(e);\n }\n }\n\n override render(): TemplateResult {\n return html`\n ${this.dragRegionTemplate()}\n ${this.tabsTemplate()}\n <div class=\"content\">\n <slot></slot>\n </div>\n `;\n }\n\n protected dragRegionTemplate(): TemplateResult | typeof nothing {\n const { inDrag, dragRegion } = this;\n if (!inDrag) {\n return nothing;\n }\n return html`\n <div class=\"drag-region ${dragRegion}\"></div>\n `;\n }\n\n protected tabsTemplate(): TemplateResult | string {\n const { panel } = this;\n if (!panel) {\n return '';\n }\n const items = panel.sortedItems();\n if (!items) {\n return '';\n }\n const size = items.length;\n return html`\n <div \n class=\"layout-tabs\" \n role=\"tablist\"\n @dragenter=\"${this.handleTabsDragEnter}\" \n @dragover=\"${this.handleTabsDragover}\" \n @drop=\"${this.handleTabDrop}\"\n >\n ${items.map((tab, i) => this.tabTemplate(tab, i + 1 === size, items[i + 1]?.key))}\n </div>\n `;\n }\n\n protected tabTemplate(item: SplitItem, last: boolean, nextKey?: string): TemplateResult {\n const { key, kind, label = '', index = 0, icon, isDirty = false, parent } = item;\n const { panel } = this;\n const selected = !!panel && panel.selected === key;\n const nextSelected = !!nextKey && !!panel && panel.selected === nextKey;\n const closable = !item.persistent && !item.pinned;\n const classes = {\n 'layout-tab': true,\n 'is-dirty': isDirty,\n selected,\n surface1: selected,\n };\n let title = label;\n if (isDirty) {\n title = 'Unsaved changes';\n }\n\n const dividerHidden = last || selected || nextSelected;\n return html`\n <div \n data-key=\"${key}\" \n data-kind=\"${kind}\"\n data-index=\"${index}\"\n data-parent=\"${ifDefined(parent)}\"\n data-dirty=\"${isDirty}\"\n role=\"tab\"\n class=\"${classMap(classes)}\" \n draggable=\"true\"\n tabindex=\"0\"\n\n @dragstart=\"${this.handleTabDragStart}\"\n @click=\"${this.handleTabClick}\" \n @pointerdown=\"${this.handleTabPointerDown}\"\n @touchstart=\"${this.handleTabTouchStart}\"\n @keydown=\"${this.handleTabKeyDown}\"\n >\n ${icon ? html`<ui-icon icon=\"${icon}\" class=\"tab-favicon\"></ui-icon>` : ''}\n <span class=\"tab-label\" title=\"${title}\">${label}</span>\n ${closable ? html`<ui-icon icon=\"close\" class=\"close-icon\" @click=\"${this.handleTabClose}\"></ui-icon>` : ''}\n </div>\n <div class=\"tab-divider ${dividerHidden ? 'hidden' : ''}\"></div>\n `;\n }\n}\n"]}
|
|
1
|
+
{"version":3,"file":"SplitView.js","sourceRoot":"","sources":["../../../src/elements/layout/SplitView.ts"],"names":[],"mappings":"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","sourcesContent":["import { html, LitElement, nothing, TemplateResult } from \"lit\";\nimport { eventOptions, property, state } from \"lit/decorators.js\";\nimport { classMap } from \"lit/directives/class-map.js\";\nimport { ifDefined } from \"lit/directives/if-defined.js\";\nimport { SplitItem } from \"./SplitItem.js\";\nimport { SplitPanel } from \"./SplitPanel.js\";\nimport { SplitDirection, SplitRegion } from \"./type.js\";\n\nexport default class SplitView extends LitElement {\n /**\n * @attribute\n */\n @property({ type: String, reflect: true }) layout: SplitDirection = SplitDirection.horizontal;\n\n /**\n * @attribute\n */\n @property({ type: Number, reflect: true }) key?: string;\n\n @property({ type: Array }) dragTypes?: string[];\n\n /**\n * Whether dragging is occurring over the element\n */\n @state() protected inDrag = false;\n\n /**\n * The region the drag is leaning to.\n */\n @state() protected dragRegion?: SplitRegion = SplitRegion.center;\n\n /**\n * A reference to the split panel that owns this view.\n */\n @property({ type: Object }) panel?: SplitPanel;\n\n /**\n * When set it adds the `overflow` hidden on the container that holds the tab contents.\n * @attribute\n */\n @property({ type: Boolean, reflect: true }) constrain = false;\n\n constructor() {\n super();\n this.handleDragleave = this.handleDragleave.bind(this);\n this.handleDragEnd = this.handleDragEnd.bind(this);\n this.addEventListener('dragenter', this.handleDragEnter.bind(this));\n this.addEventListener('dragover', this.handleDragOver.bind(this));\n this.addEventListener('drop', this.handleDrop.bind(this));\n }\n\n override connectedCallback(): void {\n super.connectedCallback();\n document.body.addEventListener('dragleave', this.handleDragleave);\n document.body.addEventListener('dragend', this.handleDragEnd);\n }\n\n override disconnectedCallback(): void {\n super.disconnectedCallback();\n document.body.removeEventListener('dragleave', this.handleDragleave);\n document.body.removeEventListener('dragend', this.handleDragEnd);\n }\n\n protected handleDragEnter(e: DragEvent): void {\n const { dataTransfer } = e;\n if (!dataTransfer || !this.panelCanDrop(e)) {\n return;\n }\n e.preventDefault();\n e.stopPropagation();\n dataTransfer.dropEffect = 'copy';\n }\n \n protected handleDragOver(e: DragEvent): void {\n const { dataTransfer } = e;\n if (!dataTransfer || !this.panelCanDrop(e)) {\n return;\n }\n e.preventDefault();\n e.stopPropagation();\n const region = this.getDropRegionFromEvent(e);\n if (!region) {\n this.inDrag = false;\n return;\n }\n dataTransfer.dropEffect = 'copy';\n this.inDrag = true;\n this.dragRegion = region;\n }\n\n protected handleDrop(e: DragEvent): void {\n const { dataTransfer } = e;\n const { panel } = this;\n if (!dataTransfer || !panel || !this.panelCanDrop(e)) {\n return;\n }\n e.preventDefault();\n e.stopPropagation();\n const kind = dataTransfer.getData('text/kind');\n const key = dataTransfer.getData('text/key');\n if (!kind || !key) {\n return;\n }\n const layoutKey = dataTransfer.getData('layout/key');\n this.inDrag = false;\n // TODO: When the drag originated in another panel then we \n // move the panel between them. Otherwise we add the item to the panel.\n if (layoutKey) {\n // move operation not add.\n panel.manager.moveItem(layoutKey, panel.key, key, { region: this.dragRegion });\n } else {\n panel.addItem({ key, kind, label: 'New tab' }, { region: this.dragRegion });\n panel.manager.requestNameUpdate(key);\n }\n this.dispatchEvent(new CustomEvent('datadrop', {\n detail: { kind, key, region: this.dragRegion },\n composed: true,\n bubbles: true,\n cancelable: true,\n }));\n this.requestUpdate();\n }\n\n protected handleDragleave(e: DragEvent): void {\n const elm = this.findLayout(e);\n if (!elm || elm !== this) {\n this.inDrag = false;\n this.dragRegion = SplitRegion.center;\n }\n }\n\n protected handleDragEnd(): void {\n this.inDrag = false;\n this.dragRegion = SplitRegion.center;\n }\n\n protected getDropRegionFromEvent(e: DragEvent): SplitRegion | undefined {\n const layout = this.findLayout(e);\n if (!layout) {\n return undefined;\n }\n return this.getDropRegion(layout, e);\n }\n\n getDropRegion(element: HTMLElement, e: DragEvent): SplitRegion | undefined {\n const { pageX, pageY } = e;\n const rect = element.getBoundingClientRect();\n const quarterWidth = rect.width / 4;\n const quarterHeight = rect.height / 4;\n if (pageX < rect.left + quarterWidth) {\n return SplitRegion.west;\n }\n if (pageX > rect.right - quarterWidth) {\n return SplitRegion.east;\n }\n if (pageY < rect.top + quarterHeight) {\n return SplitRegion.north;\n }\n if (pageY > rect.bottom - quarterHeight) {\n return SplitRegion.south;\n }\n const withingCenterX = (pageX >= rect.left + quarterWidth) && (pageX <= rect.right - quarterWidth);\n const withingCenterY = (pageY >= rect.top + quarterHeight) && (pageY <= rect.bottom - quarterHeight);\n if (withingCenterX && withingCenterY) {\n return SplitRegion.center;\n }\n return undefined;\n }\n\n protected findLayout(e: Event): SplitView | undefined {\n const path = e.composedPath();\n while (path.length) {\n const node = path.shift() as Element;\n if (node.nodeType !== Node.ELEMENT_NODE) {\n continue;\n }\n if (node.localName === this.localName) {\n return node as SplitView;\n }\n }\n return undefined;\n }\n\n protected hasDropTypes(dt: DataTransfer): boolean {\n const { dragTypes } = this;\n if (!Array.isArray(dragTypes)) {\n return true;\n }\n const eventTypes = [...dt.types];\n const allowedTypes = dragTypes.map(i => i.toLowerCase());\n return !allowedTypes.some(type => !eventTypes.includes(type));\n }\n\n protected panelCanDrop(e: DragEvent): boolean {\n if (e.defaultPrevented) {\n return false;\n }\n if (e.dataTransfer && !this.hasDropTypes(e.dataTransfer)) {\n return false;\n }\n const { panel } = this;\n if (!panel) {\n return true;\n }\n return panel.canDrop();\n }\n\n protected handleTabDragStart(e: DragEvent): void {\n const dt = e.dataTransfer;\n if (!dt || this.key === undefined) {\n return;\n }\n\n dt.effectAllowed = 'copyMove';\n dt.dropEffect = 'move';\n const node = e.target as HTMLElement;\n dt.setData('text/kind', node.dataset.kind as string);\n dt.setData('text/key', node.dataset.key as string);\n dt.setData('text/source', this.localName);\n dt.setData('layout/key', this.key);\n }\n\n protected handleTabsDragEnter(e: DragEvent): void {\n const dt = e.dataTransfer;\n if (!dt || !this.panelCanDrop(e)) {\n return;\n }\n e.stopPropagation();\n e.preventDefault();\n dt.effectAllowed = 'move';\n dt.dropEffect = 'move';\n }\n\n protected handleTabsDragover(e: DragEvent): void {\n const dt = e.dataTransfer;\n if (!dt || !this.panelCanDrop(e)) {\n return;\n }\n e.stopPropagation();\n e.preventDefault();\n dt.effectAllowed = 'move';\n dt.dropEffect = 'move';\n }\n\n protected handleTabDrop(e: DragEvent): void {\n const dt = e.dataTransfer;\n if (!dt || !this.panelCanDrop(e) || this.key === undefined) {\n return;\n }\n e.stopPropagation();\n e.preventDefault();\n const src = dt.getData('text/source');\n const key = dt.getData('text/key');\n const kind = dt.getData('text/kind');\n const srcPanelKey = dt.getData('layout/key');\n const movingTab = src === this.localName;\n\n const overTab = this.findTab(e);\n const toIndex = overTab ? Number(overTab.dataset.index) : undefined;\n\n if (movingTab) {\n if (!srcPanelKey) {\n return;\n }\n this.moveTab(srcPanelKey, this.key, key, toIndex);\n } else {\n let dispatch = true;\n if (this.panel) {\n this.panel.addItem({ key, kind, label: 'New tab' }, { index: toIndex });\n dispatch = true;\n }\n if (dispatch) {\n this.dispatchEvent(new CustomEvent('datadrop', {\n detail: { kind, key, index: toIndex },\n composed: true,\n bubbles: true,\n cancelable: true,\n }));\n }\n this.requestUpdate();\n }\n }\n\n protected moveTab(fromLayout: string, toLayout: string, key: string, toIndex?: number): void {\n const { panel } = this;\n if (panel) {\n panel.manager.moveItem(fromLayout, toLayout, key, { index: toIndex });\n }\n }\n\n protected findTab(e: Event): HTMLElement | undefined {\n const path = e.composedPath();\n while (path.length) {\n const node = path.shift() as Element;\n if (node.nodeType !== Node.ELEMENT_NODE) {\n continue;\n }\n if (node.classList.contains('layout-tab')) {\n return node as HTMLElement;\n }\n }\n return undefined;\n }\n\n protected async handleTabClick(e: Event): Promise<void> {\n if (!this.panel) {\n return;\n }\n const key = (e.currentTarget as HTMLElement).dataset.key as string;\n if (!key) {\n return;\n }\n if (this.panel.selected === key) {\n return;\n }\n this.panel.selected = key;\n this.panel.manager.notifyChange();\n this.requestUpdate();\n await this.updateComplete;\n const child = this.querySelector(`[data-key=\"${key}\"]`);\n if (child) {\n child.dispatchEvent(new Event('resize'));\n }\n }\n\n /**\n * Closes a panel with right pointer configuration\n */\n protected handleTabPointerDown(e: PointerEvent): void {\n // the configuration of a middle button click which is \n // equal to 3 fingers click on a track pad.\n if (e.button === 1 && e.buttons === 4) {\n e.preventDefault();\n e.stopPropagation();\n const key = (e.target as HTMLElement).dataset.key as string;\n this.closeTab(key);\n }\n }\n\n protected handleTabClose(e: Event): void {\n const icon = e.target as HTMLElement;\n const button = icon.parentElement as HTMLElement;\n const key = button.dataset.key as string;\n if (key) {\n e.preventDefault();\n e.stopPropagation();\n this.closeTab(key);\n }\n }\n\n @eventOptions({ passive: true })\n protected handleTabTouchStart(e: TouchEvent): void {\n if (e.targetTouches.length === 3) {\n e.preventDefault();\n e.stopPropagation();\n const key = (e.target as HTMLElement).dataset.key as string;\n this.closeTab(key);\n }\n }\n\n protected closeTab(key: string): void {\n const { panel } = this;\n if (!panel) {\n return;\n }\n const item = panel.manager.findItem(key);\n if (!item) {\n return;\n }\n if (item.persistent && item.pinned) {\n return;\n }\n panel.removeItem(key);\n this.requestUpdate();\n this.dispatchEvent(new CustomEvent('closetab', {\n bubbles: true,\n cancelable: true,\n composed: true,\n detail: key,\n }));\n }\n\n protected handleTabKeyDown(e: KeyboardEvent): void {\n if (e.key === 'Enter') {\n this.handleTabClick(e);\n }\n }\n\n override render(): TemplateResult {\n return html`\n ${this.dragRegionTemplate()}\n ${this.tabsTemplate()}\n <div class=\"content\">\n <slot></slot>\n </div>\n `;\n }\n\n protected dragRegionTemplate(): TemplateResult | typeof nothing {\n const { inDrag, dragRegion } = this;\n if (!inDrag) {\n return nothing;\n }\n return html`\n <div class=\"drag-region ${dragRegion}\"></div>\n `;\n }\n\n protected tabsTemplate(): TemplateResult | string {\n const { panel } = this;\n if (!panel) {\n return '';\n }\n const items = panel.sortedItems();\n if (!items) {\n return '';\n }\n const size = items.length;\n return html`\n <div \n class=\"layout-tabs\" \n role=\"tablist\"\n @dragenter=\"${this.handleTabsDragEnter}\" \n @dragover=\"${this.handleTabsDragover}\" \n @drop=\"${this.handleTabDrop}\"\n >\n ${items.map((tab, i) => this.tabTemplate(tab, i + 1 === size, items[i + 1]?.key))}\n </div>\n `;\n }\n\n protected tabTemplate(item: SplitItem, last: boolean, nextKey?: string): TemplateResult {\n const { key, kind, label = '', index = 0, icon, isDirty = false, parent } = item;\n const { panel } = this;\n const selected = !!panel && panel.selected === key;\n const nextSelected = !!nextKey && !!panel && panel.selected === nextKey;\n const closable = !item.persistent && !item.pinned;\n const classes = {\n 'layout-tab': true,\n 'is-dirty': isDirty,\n selected,\n surface1: selected,\n };\n let title = label;\n if (isDirty) {\n title = 'Unsaved changes';\n }\n\n const dividerHidden = last || selected || nextSelected;\n return html`\n <div \n data-key=\"${key}\" \n data-kind=\"${kind}\"\n data-index=\"${index}\"\n data-parent=\"${ifDefined(parent)}\"\n data-dirty=\"${isDirty}\"\n data-panel=\"${ifDefined(panel?.key)}\"\n role=\"tab\"\n class=\"${classMap(classes)}\" \n draggable=\"true\"\n tabindex=\"0\"\n\n @dragstart=\"${this.handleTabDragStart}\"\n @click=\"${this.handleTabClick}\" \n @pointerdown=\"${this.handleTabPointerDown}\"\n @touchstart=\"${this.handleTabTouchStart}\"\n @keydown=\"${this.handleTabKeyDown}\"\n >\n ${icon ? html`<ui-icon icon=\"${icon}\" class=\"tab-favicon\"></ui-icon>` : ''}\n <span class=\"tab-label\" title=\"${title}\">${label}</span>\n ${closable ? html`<ui-icon icon=\"close\" class=\"close-icon\" @click=\"${this.handleTabClose}\"></ui-icon>` : ''}\n </div>\n <div class=\"tab-divider ${dividerHidden ? 'hidden' : ''}\"></div>\n `;\n }\n}\n"]}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { TemplateResult } from "lit";
|
|
2
|
-
import { SplitItem } from "./SplitItem.js";
|
|
3
|
-
import { ISplitLayout } from "./SplitLayout.js";
|
|
1
|
+
import type { TemplateResult } from "lit";
|
|
2
|
+
import type { SplitItem } from "./SplitItem.js";
|
|
3
|
+
import type { ISplitLayout } from "./SplitLayout.js";
|
|
4
4
|
export declare enum SplitDirection {
|
|
5
5
|
horizontal = "horizontal",
|
|
6
6
|
vertical = "vertical"
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"type.d.ts","sourceRoot":"","sources":["../../../src/elements/layout/type.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"type.d.ts","sourceRoot":"","sources":["../../../src/elements/layout/type.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,KAAK,CAAC;AAC1C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAChD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAErD,oBAAY,cAAc;IACxB,UAAU,eAAe;IACzB,QAAQ,aAAa;CACtB;AAED,oBAAY,WAAW;IACrB,MAAM,WAAW;IACjB,IAAI,SAAS;IACb,IAAI,SAAS;IACb,KAAK,UAAU;IACf,KAAK,UAAU;CAChB;AAED,oBAAY,UAAU;IACpB,IAAI,SAAS;IACb,IAAI,SAAS;CACd;AAED,oBAAY,mBAAmB;IAC7B,IAAI,SAAS;IACb,KAAK,UAAU;IACf,IAAI,SAAS;CACd;AAGD,oBAAY,gBAAgB;IAC1B;;OAEG;IACH,KAAK,IAAA;IACL;;OAEG;IACH,KAAK,IAAA;CACN;AAED;;;GAGG;AACH,MAAM,WAAW,eAAe;IAC9B;;;;OAIG;IACH,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;IAErB;;OAEG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IAEpB;;;;;;;;;OASG;IACH,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,YAAY,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;CACxD;AAED,oBAAY,UAAU;IACpB,KAAK,UAAU;IACf,IAAI,SAAS;CACd;AAED,MAAM,WAAW,YAAY;IAC3B;;OAEG;IACH,IAAI,EAAE,UAAU,CAAC;IACjB;;OAEG;IACH,GAAG,EAAE,MAAM,CAAC;CACb;AAED,MAAM,WAAW,qBAAqB;IACpC;;;OAGG;IACH,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB;;;OAGG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACrC;;OAEG;IACH,MAAM,CAAC,EAAE,cAAc,CAAC;IAExB;;;OAGG;IACH,WAAW,CAAC,EAAE,gBAAgB,CAAC;IAE/B;;;OAGG;IACH,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB;AAED,MAAM,WAAW,oBAAoB;IACnC;;OAEG;IACH,MAAM,CAAC,EAAE,cAAc,CAAC;IACxB;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,MAAM,uBAAuB,GAAG,CAAC,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,OAAO,KAAK,cAAc,CAAC;AAE5F,MAAM,WAAW,2BAA2B;IAC1C;;;OAGG;IACH,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"type.js","sourceRoot":"","sources":["../../../src/elements/layout/type.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"type.js","sourceRoot":"","sources":["../../../src/elements/layout/type.ts"],"names":[],"mappings":"AAIA,MAAM,CAAN,IAAY,cAGX;AAHD,WAAY,cAAc;IACxB,2CAAyB,CAAA;IACzB,uCAAqB,CAAA;AACvB,CAAC,EAHW,cAAc,KAAd,cAAc,QAGzB;AAED,MAAM,CAAN,IAAY,WAMX;AAND,WAAY,WAAW;IACrB,gCAAiB,CAAA;IACjB,4BAAa,CAAA;IACb,4BAAa,CAAA;IACb,8BAAe,CAAA;IACf,8BAAe,CAAA;AACjB,CAAC,EANW,WAAW,KAAX,WAAW,QAMtB;AAED,MAAM,CAAN,IAAY,UAGX;AAHD,WAAY,UAAU;IACpB,2BAAa,CAAA;IACb,2BAAa,CAAA;AACf,CAAC,EAHW,UAAU,KAAV,UAAU,QAGrB;AAED,MAAM,CAAN,IAAY,mBAIX;AAJD,WAAY,mBAAmB;IAC7B,oCAAa,CAAA;IACb,sCAAe,CAAA;IACf,oCAAa,CAAA;AACf,CAAC,EAJW,mBAAmB,KAAnB,mBAAmB,QAI9B;AAGD,MAAM,CAAN,IAAY,gBASX;AATD,WAAY,gBAAgB;IAC1B;;OAEG;IACH,yDAAK,CAAA;IACL;;OAEG;IACH,yDAAK,CAAA;AACP,CAAC,EATW,gBAAgB,KAAhB,gBAAgB,QAS3B;AAgCD,MAAM,CAAN,IAAY,UAGX;AAHD,WAAY,UAAU;IACpB,6BAAe,CAAA;IACf,2BAAa,CAAA;AACf,CAAC,EAHW,UAAU,KAAV,UAAU,QAGrB","sourcesContent":["import type { TemplateResult } from \"lit\";\nimport type { SplitItem } from \"./SplitItem.js\";\nimport type { ISplitLayout } from \"./SplitLayout.js\";\n\nexport enum SplitDirection {\n horizontal = 'horizontal',\n vertical = 'vertical',\n}\n\nexport enum SplitRegion {\n center = 'center',\n east = 'east',\n west = 'west',\n north = 'north',\n south = 'south',\n}\n\nexport enum PanelState {\n idle = 'idle',\n busy = 'busy',\n}\n\nexport enum SplitCloseDirection {\n left = 'left', \n right = 'right', \n both = 'both',\n}\n\n\nexport enum SplitPanelTarget {\n /**\n * Items are added to the first panel\n */\n first,\n /**\n * Items are added to the other, created panel\n */\n other,\n}\n\n/**\n * Note, options are stored by reference to you can change \n * configuration while the `SplitLayout` is running.\n */\nexport interface SplitLayoutInit {\n /**\n * The list of DataTransfer types to test against when handling drag and drop.\n * When set it checks whether all types are set on the dragged item.\n * If not set all items are allowed.\n */\n dragTypes?: string[];\n\n /**\n * When set it adds the `overflow` hidden on the container that holds the tab contents.\n */\n constrain?: boolean;\n\n /**\n * When defined this is called each time anything in the layout schema change.\n * The application can use this callback to store the state in its data store.\n * \n * When not provided, it is application's responsibility to serialize the state \n * and store the data before page unload.\n * \n * @param state The state object to stare by the application.\n * @returns The callback must return a promise.\n */\n stateCallback?: (state: ISplitLayout) => Promise<void>;\n}\n\nexport enum LayoutType {\n panel = 'panel',\n item = 'item',\n}\n\nexport interface IPanelObject {\n /**\n * The type of the object.\n */\n type: LayoutType;\n /**\n * The id of the object in the `definitions` map.\n */\n key: string;\n}\n\nexport interface SplitLayoutAddOptions {\n /**\n * The region to add the item.\n * When other than `center` it splits the panel.\n */\n region?: SplitRegion;\n /**\n * The index at which to put the item.\n * By default it is added as a last item.\n */\n index?: number;\n}\n\n/**\n * Options given when splitting a SplitPanel into 2 panels.\n */\nexport interface SplitPanelSplitOptions {\n /**\n * The layout direction.\n */\n layout?: SplitDirection;\n\n /**\n * Directs where to put existing items.\n * It's either the first or the other panel.\n */\n itemsTarget?: SplitPanelTarget;\n\n /**\n * When set it won't notify the manager about the change.\n * It is useful when this is a part of a process.\n */\n noSideEffects?: boolean;\n}\n\nexport interface SplitPanelAddOptions {\n /**\n * The layout of the panel.\n */\n layout?: SplitDirection;\n /**\n * the key of the parent layout.\n */\n parent?: string;\n}\n\nexport type SplitItemRenderCallback = (item: SplitItem, visible: boolean) => TemplateResult;\n\nexport interface SplitPanelRemoveItemOptions {\n /**\n * When set it won't notify the manager about the change.\n * It is useful when this is a part of a process.\n */\n noSideEffects?: boolean;\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DataModelVisualizationElement.d.ts","sourceRoot":"","sources":["../../../src/elements/schema-design/DataModelVisualizationElement.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,UAAU,EAAE,SAAS,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,mCAAmC,CAAC;AACxH,OAAO,EAAQ,cAAc,EAAE,OAAO,EAAE,SAAS,EAAO,cAAc,EAAE,MAAM,KAAK,CAAC;AAKpF,OAAO,UAAU,MAAM,kBAAkB,CAAC;AAC1C,OAAO,mBAAmB,MAAM,qDAAqD,CAAC;AAEtF,OAAO,6CAA6C,CAAC;AACrD,OAAO,+CAA+C,CAAC;AACvD,OAAO,4BAA4B,CAAC;AACpC,OAAO,EAAE,cAAc,EAAE,MAAM,8DAA8D,CAAC;AAC9F,OAAO,EAAE,iBAAiB,EAAE,MAAM,qDAAqD,CAAC;AAExF,UAAU,QAAQ;IAChB,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,UAAU,CAAC;IACnB,IAAI,EAAE,QAAQ,GAAG,aAAa,GAAG,UAAU,GAAG,UAAU,GAAG,MAAM,CAAC;IAClE,CAAC,CAAC,EAAE,MAAM,CAAC;IACX,CAAC,CAAC,EAAE,MAAM,CAAC;CACZ;AAED,MAAM,CAAC,OAAO,OAAO,6BAA8B,SAAQ,UAAU;IACnE,WAAoB,MAAM,IAAI,SAAS,EAAE,
|
|
1
|
+
{"version":3,"file":"DataModelVisualizationElement.d.ts","sourceRoot":"","sources":["../../../src/elements/schema-design/DataModelVisualizationElement.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,UAAU,EAAE,SAAS,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,mCAAmC,CAAC;AACxH,OAAO,EAAQ,cAAc,EAAE,OAAO,EAAE,SAAS,EAAO,cAAc,EAAE,MAAM,KAAK,CAAC;AAKpF,OAAO,UAAU,MAAM,kBAAkB,CAAC;AAC1C,OAAO,mBAAmB,MAAM,qDAAqD,CAAC;AAEtF,OAAO,6CAA6C,CAAC;AACrD,OAAO,+CAA+C,CAAC;AACvD,OAAO,4BAA4B,CAAC;AACpC,OAAO,EAAE,cAAc,EAAE,MAAM,8DAA8D,CAAC;AAC9F,OAAO,EAAE,iBAAiB,EAAE,MAAM,qDAAqD,CAAC;AAExF,UAAU,QAAQ;IAChB,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,UAAU,CAAC;IACnB,IAAI,EAAE,QAAQ,GAAG,aAAa,GAAG,UAAU,GAAG,UAAU,GAAG,MAAM,CAAC;IAClE,CAAC,CAAC,EAAE,MAAM,CAAC;IACX,CAAC,CAAC,EAAE,MAAM,CAAC;CACZ;AAED,MAAM,CAAC,OAAO,OAAO,6BAA8B,SAAQ,UAAU;IACnE,WAAoB,MAAM,IAAI,SAAS,EAAE,CA4FxC;IAED;;OAEG;IACwC,GAAG,CAAC,EAAE,MAAM,CAAC;IAExD;;OAEG;IACyB,IAAI,CAAC,EAAE,aAAa,CAAC;IAEjD;;OAEG;IACM,SAAS,CAAC,MAAM,CAAC,EAAE,SAAS,CAAC;IAE7B,SAAS,CAAC,KAAK,CAAC,EAAE,QAAQ,EAAE,CAAC;IAEd,SAAS,CAAC,UAAU,CAAC,EAAE,mBAAmB,CAAC;IAEnE,SAAS,CAAC,oBAAoB,CAAC,EAAE,cAAc,CAAC;IAEhD,SAAS,CAAC,SAAS,CAAC,EAAE,iBAAiB,CAAC;IAE/B,YAAY,CAAC,EAAE,EAAE,cAAc,CAAC,IAAI,CAAC,GAAG,IAAI;IAY5C,iBAAiB,IAAI,IAAI;IAUzB,oBAAoB,IAAI,IAAI;cAUlB,UAAU,CAAC,EAAE,EAAE,cAAc,CAAC,IAAI,CAAC,GAAG,IAAI;IAM7D;;;;OAIG;IACG,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAM9B;;;OAGG;IACH,SAAS,CAAC,aAAa,IAAI,IAAI;cAUf,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IA0B3C,SAAS,CAAC,cAAc,IAAI,IAAI;cAkEhB,kBAAkB,CAAC,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;cAmB9C,MAAM,IAAI,cAAc;IAQ3C,SAAS,CAAC,cAAc,IAAI,cAAc,EAAE,GAAG,OAAO,OAAO;IAQ7D,SAAS,CAAC,oBAAoB,CAAC,KAAK,EAAE,QAAQ,GAAG,cAAc;IAqB/D,SAAS,CAAC,uBAAuB,CAAC,MAAM,EAAE,UAAU,GAAG,cAAc;IASrE,SAAS,CAAC,qBAAqB,CAAC,IAAI,EAAE,YAAY,GAAG,cAAc;IA2BnE,SAAS,CAAC,oBAAoB,CAAC,IAAI,EAAE,eAAe,GAAG,cAAc,GAAG,OAAO,OAAO;IAkBtF,SAAS,CAAC,0BAA0B,CAAC,EAAE,EAAE,MAAM,GAAG,cAAc;CAQjE"}
|
|
@@ -96,6 +96,12 @@ export default class DataModelVisualizationElement extends ApiElement {
|
|
|
96
96
|
.data-type {
|
|
97
97
|
margin-left: auto;
|
|
98
98
|
}
|
|
99
|
+
|
|
100
|
+
.property-key-icon {
|
|
101
|
+
width: 16px;
|
|
102
|
+
height: 16px;
|
|
103
|
+
margin-right: 8px;
|
|
104
|
+
}
|
|
99
105
|
`,
|
|
100
106
|
];
|
|
101
107
|
}
|
|
@@ -309,8 +315,19 @@ export default class DataModelVisualizationElement extends ApiElement {
|
|
|
309
315
|
primary,
|
|
310
316
|
index,
|
|
311
317
|
};
|
|
318
|
+
const icons = [];
|
|
319
|
+
if (primary) {
|
|
320
|
+
icons.push(html `<ui-icon icon="key" class="property-key-icon"></ui-icon>`);
|
|
321
|
+
}
|
|
322
|
+
else if (index) {
|
|
323
|
+
icons.push(html `<ui-icon icon="search" class="property-key-icon"></ui-icon>`);
|
|
324
|
+
}
|
|
325
|
+
else {
|
|
326
|
+
icons.push(html `<span class="property-key-icon"></span>`);
|
|
327
|
+
}
|
|
312
328
|
return html `
|
|
313
329
|
<li data-key="${key}" class="${classMap(classes)}">
|
|
330
|
+
${icons}
|
|
314
331
|
<span class="label">${info.renderLabel}</span>
|
|
315
332
|
<span class="data-type">${type}</span>
|
|
316
333
|
</li>
|
|
@@ -324,7 +341,7 @@ export default class DataModelVisualizationElement extends ApiElement {
|
|
|
324
341
|
if (targets.length === 1) {
|
|
325
342
|
return html `<viz-association
|
|
326
343
|
data-key="${key}"
|
|
327
|
-
data-target="${targets[0]}"
|
|
344
|
+
data-target="${targets[0].key}"
|
|
328
345
|
title="${info.renderLabel}"
|
|
329
346
|
data-selectable
|
|
330
347
|
data-marker-start="association"
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DataModelVisualizationElement.js","sourceRoot":"","sources":["../../../src/elements/schema-design/DataModelVisualizationElement.ts"],"names":[],"mappings":"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","sourcesContent":["import { DataAssociation, DataEntity, DataModel, DataNamespace, DataProperty } from \"@api-client/core/build/browser.js\";\nimport { html, TemplateResult, nothing, CSSResult, css, PropertyValues } from \"lit\";\nimport { property, query, state } from \"lit/decorators.js\";\nimport { styleMap } from \"lit/directives/style-map.js\";\nimport { classMap } from \"lit/directives/class-map.js\";\nimport { ifDefined } from \"lit/directives/if-defined.js\";\nimport ApiElement from \"../ApiElement.js\";\nimport VizWorkspaceElement from \"../../visualization/elements/VizWorkspaceElement.js\";\nimport { DataModelLayout } from \"../../visualization/plugin/positioning/DataModelLayout.js\";\nimport '../../define/visualization/viz-workspace.js';\nimport '../../define/visualization/viz-association.js';\nimport '../../define/ui/ui-icon.js';\nimport { GroupSelection } from \"../../visualization/plugin/group-selection/GroupSelection.js\";\nimport { DragAndDropPlugin } from \"../../visualization/plugin/dnd/DragAndDropPlugin.js\";\n\ninterface VizModel {\n id?: string;\n entity: DataEntity;\n type: 'parent' | 'association' | 'internal' | 'external' | 'self';\n x?: number;\n y?: number;\n}\n\nexport default class DataModelVisualizationElement extends ApiElement {\n static override get styles(): CSSResult[] {\n return [\n css`\n :host {\n display: block;\n }\n\n viz-workspace {\n flex: 1;\n height: 100%;\n }\n\n [data-selectable][data-selected] {\n border: 2px var(--workspace-entity-selection-border-color) solid;\n background-color: var(--workspace-entity-selection-background-color, #fff);\n color: var(--workspace-entity-selection-color, unset);\n }\n\n [data-selectable][data-secondary-selected] {\n border: 2px var(--workspace-entity-secondary-selection-border-color) solid;\n background-color: var(--workspace-entity-secondary-selection-background-color, #fff);\n }\n\n .data-entity {\n border: 2px var(--workspace-entity-border-color, #9e9e9e) solid;\n border-radius: var(--workspace-entity-border-radius, 8px);\n background-color: var(--workspace-entity-background-color, #fff);\n min-width: 240px;\n box-shadow: var(--workspace-entity-box-shadow, none);\n }\n\n .title {\n display: flex;\n align-items: center;\n margin: 12px 20px;\n }\n\n .title .label {\n padding: 0;\n margin: 0;\n /* font-weight: 300; */\n /* font-size: 1.25rem; */\n margin-left: 8px;\n\n font-family: var(--md-sys-typescale-title-large-font-family-name);\n font-style: var(--md-sys-typescale-title-large-font-family-style);\n font-weight: var(--md-sys-typescale-title-large-font-weight);\n font-size: var(--md-sys-typescale-title-large-font-size);\n letter-spacing: var(--md-sys-typescale-title-large-tracking);\n line-height: var(--md-sys-typescale-title-large-height);\n text-transform: var(--md-sys-typescale-title-large-text-transform);\n text-decoration: var(--md-sys-typescale-title-large-text-decoration);\n }\n\n .properties {\n margin: 20px 0;\n padding: 0;\n list-style: none;\n }\n\n .property {\n padding: 0 20px;\n height: 36px;\n display: flex;\n align-items: center;\n\n font-family: var(--md-sys-typescale-label-medium-font-family-name);\n font-style: var(--md-sys-typescale-label-medium-font-family-style);\n font-weight: var(--md-sys-typescale-label-medium-font-weight);\n font-size: var(--md-sys-typescale-label-medium-font-size);\n letter-spacing: var(--md-sys-typescale-label-medium-tracking);\n line-height: var(--md-sys-typescale-label-medium-height);\n text-transform: var(--md-sys-typescale-label-medium-text-transform);\n text-decoration: var(--md-sys-typescale-label-medium-text-decoration);\n }\n\n .property.primary,\n .property.index {\n font-weight: 700;\n }\n\n .data-type {\n margin-left: auto;\n }\n `,\n ];\n }\n\n /**\n * The key of the entity to edit.\n */\n @property({ type: String, reflect: true }) key?: string;\n\n /**\n * The read data namespace.\n */\n @property({ type: Object }) root?: DataNamespace;\n\n /**\n * The computed entity when the key or root change.\n */\n @state() protected _model?: DataModel;\n\n @state() protected _data?: VizModel[];\n\n @query('viz-workspace') protected _workspace?: VizWorkspaceElement;\n\n protected groupSelectionPlugin?: GroupSelection;\n\n protected dndPlugin?: DragAndDropPlugin;\n\n override firstUpdated(cp: PropertyValues<this>): void {\n super.firstUpdated(cp);\n const node = this._workspace;\n if (!node) {\n return;\n }\n this.dndPlugin = new DragAndDropPlugin(node);\n this.dndPlugin.connect();\n this.groupSelectionPlugin = new GroupSelection(node);\n this.groupSelectionPlugin.connect();\n }\n\n override connectedCallback(): void {\n super.connectedCallback();\n if (this.dndPlugin) {\n this.dndPlugin.connect();\n }\n if (this.groupSelectionPlugin) {\n this.groupSelectionPlugin.connect();\n }\n }\n\n override disconnectedCallback(): void {\n super.disconnectedCallback();\n if (this.dndPlugin) {\n this.dndPlugin.disconnect();\n }\n if (this.groupSelectionPlugin) {\n this.groupSelectionPlugin.disconnect();\n }\n }\n\n protected override willUpdate(cp: PropertyValues<this>): void {\n if (cp.has('key')) {\n this._computeModel();\n }\n }\n\n /**\n * Reloads the generated view model, runs the auto layout, and updated the view.\n * Note, this is very expensive operation. It updates the view at least twice.\n * THe layout computation can be very complex.\n */\n async refresh(): Promise<void> {\n this._createVizData();\n await this.updateComplete;\n await this._runLayout();\n }\n\n /**\n * Computes the view value for the property.\n * This should be called before the update is complete so this won't trigger another update.\n */\n protected _computeModel(): void {\n const { root, key } = this;\n if (!root || !key) {\n this._model = undefined;\n return;\n }\n this._model = root.definitions.models.find(i => i.key === key);\n this.refresh();\n }\n\n protected async _runLayout(): Promise<void> {\n const { _workspace: workspace, _model: dm, _data: list } = this;\n if (!workspace || !dm || !list) {\n return;\n }\n const layout = new DataModelLayout(workspace);\n layout.nodeSeparation = 80;\n layout.rankSeparation = 80;\n\n const result = layout.layout(dm);\n if (!result) {\n return;\n }\n result.nodes.forEach((info) => {\n const item = list.find(i => i.entity.key === info.id);\n if (!item) {\n return;\n }\n item.x = info.node.x;\n item.y = info.node.y;\n });\n this.requestUpdate();\n await this.updateComplete;\n workspace.edges.recalculate();\n }\n\n protected _createVizData(): void {\n const { _model: dm, root } = this;\n if (!dm || !root) {\n this._data = undefined;\n return;\n }\n const result: VizModel[] = [];\n\n dm.entities.forEach((entity) => {\n result.push({ entity, type: 'internal' });\n\n entity.parents.forEach(id => {\n if (result.some(i => i.entity.key === id) || dm.entities.some(i => i.key === id)) {\n // don't add a parent that is already added.\n return;\n }\n const parent = root.definitions.entities.find(i => i.key === id);\n if (parent) {\n result.push({ entity: parent, type: 'parent' });\n }\n });\n\n entity.associations.forEach((assoc) => {\n if (!assoc.targets.length) {\n return;\n }\n const targets = assoc.getTargets();\n if (targets.length === 1) {\n // classic association\n const [target] = targets;\n if (result.some(i => i.entity.key === target.key) || dm.entities.some(i => i.key === target.key)) {\n return;\n }\n const isSelf = entity === target;\n result.push({ \n entity: target, \n type: isSelf ? 'self' : 'association',\n });\n } else {\n // TODO: Union layout.\n // console.log(targets);\n }\n });\n\n // entity.associations.forEach((assoc) => {\n // if (!assoc.target) {\n // // ignore associations without a target\n // return;\n // }\n // if (result.some(i => i.entity.key === assoc.target) || dm.entities.some(i => i.key === assoc.target)) {\n // return;\n // }\n // const target = assoc.getTarget();\n // if (target) {\n // const isSelf = entity === target;\n // result.push({ \n // entity: target, \n // type: isSelf ? 'self' : 'association',\n // });\n // }\n // });\n });\n\n this._data = result;\n }\n\n protected async _repositionHandler(e: CustomEvent): Promise<void> {\n const node = e.target as HTMLElement;\n const { key } = node.dataset;\n if (!key) {\n return;\n }\n const model = this._data?.find(i => i.entity.key === key);\n if (!model) {\n return;\n }\n const { dx, dy } = e.detail;\n const { x=0, y=0 } = model;\n model.x = x + dx;\n model.y = y + dy;\n this.requestUpdate();\n await this.updateComplete;\n this._workspace?.edges.recalculate();\n }\n\n protected override render(): TemplateResult {\n return html`\n <viz-workspace\n @positionchange=\"${this._repositionHandler}\"\n >${this._modelContents()}</viz-workspace>\n `;\n }\n\n protected _modelContents(): TemplateResult[] | typeof nothing {\n const { _data: list } = this;\n if (!list || !list.length) {\n return nothing;\n }\n return list.map(e => this._entityVisualization(e));\n }\n\n protected _entityVisualization(model: VizModel): TemplateResult {\n const { entity, x = 0, y = 0, type } = model;\n const { info, key, associations, parents } = entity;\n const styles = {\n transform: `translate(${x}px, ${y}px)`,\n };\n return html`\n <div class=\"data-entity\" data-key=\"${key}\" data-type=\"${type}\" data-selectable=\"true\" draggable=\"true\" style=\"${styleMap(styles)}\">\n <div class=\"content\">\n <div class=\"title\">\n <ui-icon icon=\"schemaEntity\"></ui-icon>\n <p class=\"label\">${info.renderLabel}</p>\n </div>\n ${this._propertiesListTemplate(entity)}\n </div>\n ${associations.map(assoc => this._associationTemplate(assoc))}\n ${parents.map(id => this._parentAssociationTemplate(id))}\n </div>\n `;\n }\n\n protected _propertiesListTemplate(entity: DataEntity): TemplateResult {\n const { properties } = entity;\n return html`\n <ul class=\"properties\">\n ${properties.map(p => this._propertyItemTemplate(p))}\n </ul>\n `;\n }\n\n protected _propertyItemTemplate(item: DataProperty): TemplateResult {\n const { key, info, type, deprecated = false, primary = false, index = false } = item;\n const classes = {\n property: true,\n deprecated,\n primary,\n index,\n };\n return html`\n <li data-key=\"${key}\" class=\"${classMap(classes)}\">\n <span class=\"label\">${info.renderLabel}</span>\n <span class=\"data-type\">${type}</span>\n </li>\n `;\n }\n\n protected _associationTemplate(item: DataAssociation): TemplateResult | typeof nothing {\n const { key, info, targets } = item;\n if (!targets.length) {\n return nothing;\n }\n if (targets.length === 1) {\n return html`<viz-association \n data-key=\"${key}\" \n data-target=\"${targets[0]}\"\n title=\"${info.renderLabel}\"\n data-selectable\n data-marker-start=\"association\"\n ></viz-association>`;\n }\n // TODO: Make union associations\n return nothing;\n }\n\n protected _parentAssociationTemplate(id: string): TemplateResult {\n return html`<viz-association \n data-key=\"child-${id}\" \n data-target=\"${ifDefined(id)}\"\n data-selectable\n data-marker-end=\"parent\"\n ></viz-association>`;\n }\n}\n"]}
|
|
1
|
+
{"version":3,"file":"DataModelVisualizationElement.js","sourceRoot":"","sources":["../../../src/elements/schema-design/DataModelVisualizationElement.ts"],"names":[],"mappings":"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","sourcesContent":["import { DataAssociation, DataEntity, DataModel, DataNamespace, DataProperty } from \"@api-client/core/build/browser.js\";\nimport { html, TemplateResult, nothing, CSSResult, css, PropertyValues } from \"lit\";\nimport { property, query, state } from \"lit/decorators.js\";\nimport { styleMap } from \"lit/directives/style-map.js\";\nimport { classMap } from \"lit/directives/class-map.js\";\nimport { ifDefined } from \"lit/directives/if-defined.js\";\nimport ApiElement from \"../ApiElement.js\";\nimport VizWorkspaceElement from \"../../visualization/elements/VizWorkspaceElement.js\";\nimport { DataModelLayout } from \"../../visualization/plugin/positioning/DataModelLayout.js\";\nimport '../../define/visualization/viz-workspace.js';\nimport '../../define/visualization/viz-association.js';\nimport '../../define/ui/ui-icon.js';\nimport { GroupSelection } from \"../../visualization/plugin/group-selection/GroupSelection.js\";\nimport { DragAndDropPlugin } from \"../../visualization/plugin/dnd/DragAndDropPlugin.js\";\n\ninterface VizModel {\n id?: string;\n entity: DataEntity;\n type: 'parent' | 'association' | 'internal' | 'external' | 'self';\n x?: number;\n y?: number;\n}\n\nexport default class DataModelVisualizationElement extends ApiElement {\n static override get styles(): CSSResult[] {\n return [\n css`\n :host {\n display: block;\n }\n\n viz-workspace {\n flex: 1;\n height: 100%;\n }\n\n [data-selectable][data-selected] {\n border: 2px var(--workspace-entity-selection-border-color) solid;\n background-color: var(--workspace-entity-selection-background-color, #fff);\n color: var(--workspace-entity-selection-color, unset);\n }\n\n [data-selectable][data-secondary-selected] {\n border: 2px var(--workspace-entity-secondary-selection-border-color) solid;\n background-color: var(--workspace-entity-secondary-selection-background-color, #fff);\n }\n\n .data-entity {\n border: 2px var(--workspace-entity-border-color, #9e9e9e) solid;\n border-radius: var(--workspace-entity-border-radius, 8px);\n background-color: var(--workspace-entity-background-color, #fff);\n min-width: 240px;\n box-shadow: var(--workspace-entity-box-shadow, none);\n }\n\n .title {\n display: flex;\n align-items: center;\n margin: 12px 20px;\n }\n\n .title .label {\n padding: 0;\n margin: 0;\n /* font-weight: 300; */\n /* font-size: 1.25rem; */\n margin-left: 8px;\n\n font-family: var(--md-sys-typescale-title-large-font-family-name);\n font-style: var(--md-sys-typescale-title-large-font-family-style);\n font-weight: var(--md-sys-typescale-title-large-font-weight);\n font-size: var(--md-sys-typescale-title-large-font-size);\n letter-spacing: var(--md-sys-typescale-title-large-tracking);\n line-height: var(--md-sys-typescale-title-large-height);\n text-transform: var(--md-sys-typescale-title-large-text-transform);\n text-decoration: var(--md-sys-typescale-title-large-text-decoration);\n }\n\n .properties {\n margin: 20px 0;\n padding: 0;\n list-style: none;\n }\n\n .property {\n padding: 0 20px;\n height: 36px;\n display: flex;\n align-items: center;\n\n font-family: var(--md-sys-typescale-label-medium-font-family-name);\n font-style: var(--md-sys-typescale-label-medium-font-family-style);\n font-weight: var(--md-sys-typescale-label-medium-font-weight);\n font-size: var(--md-sys-typescale-label-medium-font-size);\n letter-spacing: var(--md-sys-typescale-label-medium-tracking);\n line-height: var(--md-sys-typescale-label-medium-height);\n text-transform: var(--md-sys-typescale-label-medium-text-transform);\n text-decoration: var(--md-sys-typescale-label-medium-text-decoration);\n }\n\n .property.primary,\n .property.index {\n font-weight: 700;\n }\n\n .data-type {\n margin-left: auto;\n }\n\n .property-key-icon {\n width: 16px;\n height: 16px;\n margin-right: 8px;\n }\n `,\n ];\n }\n\n /**\n * The key of the entity to edit.\n */\n @property({ type: String, reflect: true }) key?: string;\n\n /**\n * The read data namespace.\n */\n @property({ type: Object }) root?: DataNamespace;\n\n /**\n * The computed entity when the key or root change.\n */\n @state() protected _model?: DataModel;\n\n @state() protected _data?: VizModel[];\n\n @query('viz-workspace') protected _workspace?: VizWorkspaceElement;\n\n protected groupSelectionPlugin?: GroupSelection;\n\n protected dndPlugin?: DragAndDropPlugin;\n\n override firstUpdated(cp: PropertyValues<this>): void {\n super.firstUpdated(cp);\n const node = this._workspace;\n if (!node) {\n return;\n }\n this.dndPlugin = new DragAndDropPlugin(node);\n this.dndPlugin.connect();\n this.groupSelectionPlugin = new GroupSelection(node);\n this.groupSelectionPlugin.connect();\n }\n\n override connectedCallback(): void {\n super.connectedCallback();\n if (this.dndPlugin) {\n this.dndPlugin.connect();\n }\n if (this.groupSelectionPlugin) {\n this.groupSelectionPlugin.connect();\n }\n }\n\n override disconnectedCallback(): void {\n super.disconnectedCallback();\n if (this.dndPlugin) {\n this.dndPlugin.disconnect();\n }\n if (this.groupSelectionPlugin) {\n this.groupSelectionPlugin.disconnect();\n }\n }\n\n protected override willUpdate(cp: PropertyValues<this>): void {\n if (cp.has('key')) {\n this._computeModel();\n }\n }\n\n /**\n * Reloads the generated view model, runs the auto layout, and updated the view.\n * Note, this is very expensive operation. It updates the view at least twice.\n * THe layout computation can be very complex.\n */\n async refresh(): Promise<void> {\n this._createVizData();\n await this.updateComplete;\n await this._runLayout();\n }\n\n /**\n * Computes the view value for the property.\n * This should be called before the update is complete so this won't trigger another update.\n */\n protected _computeModel(): void {\n const { root, key } = this;\n if (!root || !key) {\n this._model = undefined;\n return;\n }\n this._model = root.definitions.models.find(i => i.key === key);\n this.refresh();\n }\n\n protected async _runLayout(): Promise<void> {\n const { _workspace: workspace, _model: dm, _data: list } = this;\n if (!workspace || !dm || !list) {\n return;\n }\n const layout = new DataModelLayout(workspace);\n layout.nodeSeparation = 80;\n layout.rankSeparation = 80;\n\n const result = layout.layout(dm);\n if (!result) {\n return;\n }\n result.nodes.forEach((info) => {\n const item = list.find(i => i.entity.key === info.id);\n if (!item) {\n return;\n }\n item.x = info.node.x;\n item.y = info.node.y;\n });\n this.requestUpdate();\n await this.updateComplete;\n workspace.edges.recalculate();\n }\n\n protected _createVizData(): void {\n const { _model: dm, root } = this;\n if (!dm || !root) {\n this._data = undefined;\n return;\n }\n const result: VizModel[] = [];\n\n dm.entities.forEach((entity) => {\n result.push({ entity, type: 'internal' });\n\n entity.parents.forEach(id => {\n if (result.some(i => i.entity.key === id) || dm.entities.some(i => i.key === id)) {\n // don't add a parent that is already added.\n return;\n }\n const parent = root.definitions.entities.find(i => i.key === id);\n if (parent) {\n result.push({ entity: parent, type: 'parent' });\n }\n });\n\n entity.associations.forEach((assoc) => {\n if (!assoc.targets.length) {\n return;\n }\n const targets = assoc.getTargets();\n if (targets.length === 1) {\n // classic association\n const [target] = targets;\n if (result.some(i => i.entity.key === target.key) || dm.entities.some(i => i.key === target.key)) {\n return;\n }\n const isSelf = entity === target;\n result.push({ \n entity: target, \n type: isSelf ? 'self' : 'association',\n });\n } else {\n // TODO: Union layout.\n // console.log(targets);\n }\n });\n\n // entity.associations.forEach((assoc) => {\n // if (!assoc.target) {\n // // ignore associations without a target\n // return;\n // }\n // if (result.some(i => i.entity.key === assoc.target) || dm.entities.some(i => i.key === assoc.target)) {\n // return;\n // }\n // const target = assoc.getTarget();\n // if (target) {\n // const isSelf = entity === target;\n // result.push({ \n // entity: target, \n // type: isSelf ? 'self' : 'association',\n // });\n // }\n // });\n });\n\n this._data = result;\n }\n\n protected async _repositionHandler(e: CustomEvent): Promise<void> {\n const node = e.target as HTMLElement;\n const { key } = node.dataset;\n if (!key) {\n return;\n }\n const model = this._data?.find(i => i.entity.key === key);\n if (!model) {\n return;\n }\n const { dx, dy } = e.detail;\n const { x=0, y=0 } = model;\n model.x = x + dx;\n model.y = y + dy;\n this.requestUpdate();\n await this.updateComplete;\n this._workspace?.edges.recalculate();\n }\n\n protected override render(): TemplateResult {\n return html`\n <viz-workspace\n @positionchange=\"${this._repositionHandler}\"\n >${this._modelContents()}</viz-workspace>\n `;\n }\n\n protected _modelContents(): TemplateResult[] | typeof nothing {\n const { _data: list } = this;\n if (!list || !list.length) {\n return nothing;\n }\n return list.map(e => this._entityVisualization(e));\n }\n\n protected _entityVisualization(model: VizModel): TemplateResult {\n const { entity, x = 0, y = 0, type } = model;\n const { info, key, associations, parents } = entity;\n const styles = {\n transform: `translate(${x}px, ${y}px)`,\n };\n return html`\n <div class=\"data-entity\" data-key=\"${key}\" data-type=\"${type}\" data-selectable=\"true\" draggable=\"true\" style=\"${styleMap(styles)}\">\n <div class=\"content\">\n <div class=\"title\">\n <ui-icon icon=\"schemaEntity\"></ui-icon>\n <p class=\"label\">${info.renderLabel}</p>\n </div>\n ${this._propertiesListTemplate(entity)}\n </div>\n ${associations.map(assoc => this._associationTemplate(assoc))}\n ${parents.map(id => this._parentAssociationTemplate(id))}\n </div>\n `;\n }\n\n protected _propertiesListTemplate(entity: DataEntity): TemplateResult {\n const { properties } = entity;\n return html`\n <ul class=\"properties\">\n ${properties.map(p => this._propertyItemTemplate(p))}\n </ul>\n `;\n }\n\n protected _propertyItemTemplate(item: DataProperty): TemplateResult {\n const { key, info, type, deprecated = false, primary = false, index = false } = item;\n const classes = {\n property: true,\n deprecated,\n primary,\n index,\n };\n\n const icons: TemplateResult[] = [];\n if (primary) {\n icons.push(html`<ui-icon icon=\"key\" class=\"property-key-icon\"></ui-icon>`);\n } else if (index) {\n icons.push(html`<ui-icon icon=\"search\" class=\"property-key-icon\"></ui-icon>`);\n } else {\n icons.push(html`<span class=\"property-key-icon\"></span>`);\n }\n\n return html`\n <li data-key=\"${key}\" class=\"${classMap(classes)}\">\n ${icons}\n <span class=\"label\">${info.renderLabel}</span>\n <span class=\"data-type\">${type}</span>\n </li>\n `;\n }\n\n protected _associationTemplate(item: DataAssociation): TemplateResult | typeof nothing {\n const { key, info, targets } = item;\n if (!targets.length) {\n return nothing;\n }\n if (targets.length === 1) {\n return html`<viz-association \n data-key=\"${key}\" \n data-target=\"${targets[0].key}\"\n title=\"${info.renderLabel}\"\n data-selectable\n data-marker-start=\"association\"\n ></viz-association>`;\n }\n // TODO: Make union associations\n return nothing;\n }\n\n protected _parentAssociationTemplate(id: string): TemplateResult {\n return html`<viz-association \n data-key=\"child-${id}\" \n data-target=\"${ifDefined(id)}\"\n data-selectable\n data-marker-end=\"parent\"\n ></viz-association>`;\n }\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HttpClientCommands.d.ts","sourceRoot":"","sources":["../../../src/pages/http-project/HttpClientCommands.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,mBAAmB,EAAmB,MAAM,gCAAgC,CAAC;AAEtF,OAAO,EAAE,0BAA0B,EAAE,MAAM,YAAY,CAAC;AAmBxD,QAAA,MAAM,QAAQ,EAAE,mBAAmB,CAAC,0BAA0B,CAAC,
|
|
1
|
+
{"version":3,"file":"HttpClientCommands.d.ts","sourceRoot":"","sources":["../../../src/pages/http-project/HttpClientCommands.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,mBAAmB,EAAmB,MAAM,gCAAgC,CAAC;AAEtF,OAAO,EAAE,0BAA0B,EAAE,MAAM,YAAY,CAAC;AAmBxD,QAAA,MAAM,QAAQ,EAAE,mBAAmB,CAAC,0BAA0B,CAAC,EAif9D,CAAC;AAEF,eAAe,QAAQ,CAAC"}
|
|
@@ -75,12 +75,16 @@ const commands = [
|
|
|
75
75
|
label: 'Close',
|
|
76
76
|
icon: close,
|
|
77
77
|
execute: (init) => {
|
|
78
|
-
const { key } = init.target.dataset;
|
|
79
|
-
if (!key) {
|
|
78
|
+
const { key, panel } = init.target.dataset;
|
|
79
|
+
if (!key || !panel) {
|
|
80
80
|
return;
|
|
81
81
|
}
|
|
82
82
|
const layout = init.store.get('layout');
|
|
83
|
-
layout.
|
|
83
|
+
const parent = layout.findPanel(panel);
|
|
84
|
+
if (!parent) {
|
|
85
|
+
return;
|
|
86
|
+
}
|
|
87
|
+
parent.removeItem(key);
|
|
84
88
|
}
|
|
85
89
|
},
|
|
86
90
|
{
|
|
@@ -95,12 +99,16 @@ const commands = [
|
|
|
95
99
|
return true;
|
|
96
100
|
},
|
|
97
101
|
execute: (init) => {
|
|
98
|
-
const { key } = init.target.dataset;
|
|
99
|
-
if (!key) {
|
|
102
|
+
const { key, panel } = init.target.dataset;
|
|
103
|
+
if (!key || !panel) {
|
|
100
104
|
return;
|
|
101
105
|
}
|
|
102
106
|
const layout = init.store.get('layout');
|
|
103
|
-
layout.
|
|
107
|
+
const parent = layout.findPanel(panel);
|
|
108
|
+
if (!parent) {
|
|
109
|
+
return;
|
|
110
|
+
}
|
|
111
|
+
parent.removeRelative(key, SplitCloseDirection.both);
|
|
104
112
|
},
|
|
105
113
|
},
|
|
106
114
|
{
|
|
@@ -114,12 +122,16 @@ const commands = [
|
|
|
114
122
|
return true;
|
|
115
123
|
},
|
|
116
124
|
execute: (init) => {
|
|
117
|
-
const { key } = init.target.dataset;
|
|
118
|
-
if (!key) {
|
|
125
|
+
const { key, panel } = init.target.dataset;
|
|
126
|
+
if (!key || !panel) {
|
|
119
127
|
return;
|
|
120
128
|
}
|
|
121
129
|
const layout = init.store.get('layout');
|
|
122
|
-
layout.
|
|
130
|
+
const parent = layout.findPanel(panel);
|
|
131
|
+
if (!parent) {
|
|
132
|
+
return;
|
|
133
|
+
}
|
|
134
|
+
parent.removeRelative(key, SplitCloseDirection.right);
|
|
123
135
|
},
|
|
124
136
|
},
|
|
125
137
|
{
|
|
@@ -133,12 +145,16 @@ const commands = [
|
|
|
133
145
|
return true;
|
|
134
146
|
},
|
|
135
147
|
execute: (init) => {
|
|
136
|
-
const { key } = init.target.dataset;
|
|
137
|
-
if (!key) {
|
|
148
|
+
const { key, panel } = init.target.dataset;
|
|
149
|
+
if (!key || !panel) {
|
|
138
150
|
return;
|
|
139
151
|
}
|
|
140
152
|
const layout = init.store.get('layout');
|
|
141
|
-
layout.
|
|
153
|
+
const parent = layout.findPanel(panel);
|
|
154
|
+
if (!parent) {
|
|
155
|
+
return;
|
|
156
|
+
}
|
|
157
|
+
parent.removeRelative(key, SplitCloseDirection.left);
|
|
142
158
|
},
|
|
143
159
|
},
|
|
144
160
|
{
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HttpClientCommands.js","sourceRoot":"","sources":["../../../src/pages/http-project/HttpClientCommands.ts"],"names":[],"mappings":"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","sourcesContent":["/* eslint-disable @typescript-eslint/ban-types */\nimport { EnvironmentKind, ProjectFolderKind, ProjectRequestKind } from '@api-client/core/build/browser.js';\nimport { rename, close, folder, environment, request, deleteFile, send } from '../../ui/icons/Icons.js';\nimport ProjectNavigationElement from \"../../elements/project/ProjectNavigation.js\";\nimport { IContextMenuCommand, IExecuteOptions } from '../../contextual-menu/types.js';\nimport { SplitCloseDirection } from '../../elements/layout/type.js';\nimport { HttpProjectContextualStore } from './types.js';\n\nfunction findNavigation(element: HTMLElement): ProjectNavigationElement {\n if (element.localName === 'project-navigation') {\n return element as ProjectNavigationElement;\n }\n const root = element.getRootNode() as ShadowRoot;\n return root.host as ProjectNavigationElement;\n}\n\nfunction renameItem(init: IExecuteOptions<HttpProjectContextualStore>): void {\n const { key } = init.target.dataset\n if (!key) {\n return;\n }\n const nav = findNavigation(init.target as HTMLElement);\n nav.edited = key;\n}\n\nconst commands: IContextMenuCommand<HttpProjectContextualStore>[] = [\n // \n // Workspace tabs\n // \n \n {\n target: '.layout-tab',\n label: 'Duplicate',\n enabled: (ctx): boolean => {\n const { kind, key } = ctx.target.dataset;\n if (!kind || !key) {\n return false;\n }\n if (kind !== ProjectRequestKind) {\n return false;\n }\n return true;\n },\n execute: (init): void => {\n const { kind, key } = init.target.dataset;\n if (!kind || !key) {\n return;\n }\n if (kind !== ProjectRequestKind) {\n return;\n }\n \n const project = init.store.get('project');\n const obj = project.findRequest(key);\n if (!obj) {\n return;\n }\n const callback = init.store.get('callback');\n const layout = init.store.get('layout');\n const parent = obj.getParent() || project;\n const cp = obj.clone();\n parent.addRequest(cp);\n layout.addItem({\n key: cp.key,\n kind,\n label: cp.info.renderLabel,\n icon: 'request'\n });\n callback({\n action: 'duplicate',\n key: cp.key,\n kind: obj.kind,\n });\n }\n },\n\n {\n target: '.layout-tab',\n label: '',\n type: 'separator',\n },\n\n {\n target: '.layout-tab',\n label: 'Close',\n icon: close,\n execute: (init): void => {\n const { key } = init.target.dataset;\n if (!key) {\n return;\n }\n const layout = init.store.get('layout');\n layout.removeItem(key);\n }\n },\n {\n target: '.layout-tab',\n label: 'Close others',\n enabled: (ctx): boolean => {\n const shadow = ctx.target.getRootNode() as ShadowRoot;\n const all = shadow.querySelectorAll('.layout-tab');\n if (all.length === 1) {\n return false;\n }\n return true;\n },\n execute: (init): void => {\n const { key } = init.target.dataset;\n if (!key) {\n return;\n }\n const layout = init.store.get('layout');\n layout.removeRelative(key, SplitCloseDirection.both);\n },\n },\n {\n target: '.layout-tab',\n label: 'Close on the right',\n enabled: (ctx): boolean => {\n const next = ctx.target.nextElementSibling;\n if (!next) {\n return false;\n }\n return true;\n },\n execute: (init): void => {\n const { key } = init.target.dataset;\n if (!key) {\n return;\n }\n const layout = init.store.get('layout');\n layout.removeRelative(key, SplitCloseDirection.right);\n },\n },\n {\n target: '.layout-tab',\n label: 'Close on the left',\n enabled: (ctx): boolean => {\n const { index } = ctx.target.dataset;\n if (index === '0') {\n return false;\n }\n return true;\n },\n execute: (init): void => {\n const { key } = init.target.dataset;\n if (!key) {\n return;\n }\n const layout = init.store.get('layout');\n layout.removeRelative(key, SplitCloseDirection.left);\n },\n },\n\n {\n target: '.layout-tab',\n label: '',\n type: 'separator',\n },\n\n {\n target: '.layout-tab',\n label: 'Save',\n enabled: (ctx): boolean => {\n const { dirty } = ctx.target.dataset;\n if (dirty !== 'true') {\n return false;\n }\n return true;\n },\n execute: (init): void => {\n const { key } = init.target.dataset;\n if (!key) {\n return;\n }\n const page = init.store.get('page');\n page.triggerSave(key);\n },\n },\n\n //\n // NAVIGATION\n //\n {\n target: \"project-navigation\",\n label: 'Add folder',\n title: 'Adds a new folder to the project',\n icon: folder,\n execute: (init): void => {\n const project = init.store.get('project');\n const callback = init.store.get('callback');\n const created = project.addFolder();\n callback({\n action: 'add',\n key: created.key,\n kind: created.kind,\n });\n },\n visible: (init) => init.store.has('project'),\n },\n {\n target: \"project-navigation\",\n label: 'Add request',\n title: 'Adds a new HTTP request to the project',\n icon: request,\n execute: (init): void => {\n const project = init.store.get('project');\n const callback = init.store.get('callback');\n const layout = init.store.get('layout');\n const created = project.addRequest('http://');\n layout.addItem({\n key: created.key,\n kind: created.kind,\n label: created.info.renderLabel,\n icon: 'request'\n });\n callback({\n action: 'add',\n key: created.key,\n kind: created.kind,\n });\n },\n visible: (init) => init.store.has('project'),\n },\n {\n target: \"project-navigation\",\n label: 'Add environment',\n title: 'Adds a new environment definition to the project',\n icon: environment,\n execute: (init): void => {\n const project = init.store.get('project');\n const callback = init.store.get('callback');\n const layout = init.store.get('layout');\n const created = project.addEnvironment('New environment');\n layout.addItem({\n key: created.key,\n kind: created.kind,\n label: created.info.renderLabel,\n icon: 'environment'\n });\n callback({\n action: 'add',\n key: created.key,\n kind: created.kind,\n });\n },\n visible: (init) => init.store.has('project'),\n },\n\n {\n target: `project-navigation`,\n type: 'separator',\n label: '',\n },\n\n {\n target: `project-navigation`,\n label: 'Run project',\n icon: send,\n title: 'Runs all requests in the folder',\n execute(args): void {\n const page = args.store.get('page');\n page.openRunner();\n },\n },\n\n // \n // Navigation items\n // \n\n // folders\n {\n target: `li[data-kind=\"${ProjectFolderKind}\"]`,\n label: 'Add folder',\n icon: folder,\n execute: (init): void => {\n const project = init.store.get('project');\n const callback = init.store.get('callback');\n const layout = init.store.get('layout');\n const key = init.target.dataset.key as string;\n const created = project.addFolder(undefined, { parent: key, });\n const nav = findNavigation(init.target as HTMLElement);\n nav.edited = created.key;\n nav.openGroup(key);\n layout.requestNameUpdate(created.key);\n callback({\n action: 'add',\n key: created.key,\n kind: created.kind,\n });\n\n },\n visible: (init) => init.store.has('project'),\n },\n {\n target: `li[data-kind=\"${ProjectFolderKind}\"]`,\n label: 'Add request',\n icon: request,\n execute: (init): void => {\n const project = init.store.get('project');\n const callback = init.store.get('callback');\n const layout = init.store.get('layout');\n const key = init.target.dataset.key as string;\n const f = project.findFolder(key);\n if (f) {\n const created = f.addRequest('http://');\n const nav = findNavigation(init.target as HTMLElement);\n nav.edited = created.key;\n nav.openGroup(key);\n layout.addItem({\n key: created.key,\n kind: created.kind,\n label: created.info.renderLabel,\n icon: 'request'\n });\n callback({\n action: 'add',\n key: created.key,\n kind: created.kind,\n });\n }\n },\n visible: (init) => init.store.has('project'),\n },\n {\n target: `li[data-kind=\"${ProjectFolderKind}\"]`,\n label: 'Add environment',\n title: 'Adds a new environment definition to the folder',\n icon: environment,\n execute: (init): void => {\n const project = init.store.get('project');\n const callback = init.store.get('callback');\n const layout = init.store.get('layout');\n const key = init.target.dataset.key as string;\n const f = project.findFolder(key);\n if (f) {\n const created = f.addEnvironment('New environment');\n const nav = findNavigation(init.target as HTMLElement);\n nav.edited = created.key;\n nav.openGroup(key);\n layout.addItem({\n key: created.key,\n kind: created.kind,\n label: created.info.renderLabel,\n icon: 'environment'\n });\n callback({\n action: 'add',\n key: created.key,\n kind: created.kind,\n });\n }\n },\n visible: (init) => init.store.has('project'),\n },\n {\n target: `li[data-kind=\"${ProjectFolderKind}\"]`,\n type: 'separator',\n label: '',\n },\n {\n target: `li[data-kind=\"${ProjectFolderKind}\"]`,\n label: 'Run folder',\n icon: send,\n title: 'Runs all requests in the folder',\n execute(args): void {\n const key = args.target.dataset.key as string;\n // const project = args.store.get('project');\n const page = args.store.get('page');\n page.openRunner(key);\n // Events.Navigation.App.runProjectRunner({ key: project.key, parent: key, workspace: page.workspace });\n },\n },\n\n {\n target: `li[data-kind=\"${ProjectFolderKind}\"]`,\n type: 'separator',\n label: '',\n },\n {\n target: `li[data-kind=\"${ProjectFolderKind}\"]`,\n label: 'Rename',\n icon: rename,\n title: 'Renames this folder',\n execute: renameItem,\n },\n {\n target: `li[data-kind=\"${ProjectFolderKind}\"]`,\n label: 'Delete',\n icon: deleteFile,\n title: 'Deletes this folder',\n execute: (init): void => {\n const project = init.store.get('project');\n const callback = init.store.get('callback');\n const layout = init.store.get('layout');\n const key = init.target.dataset.key as string;\n const removed = project.removeFolder(key);\n if (removed) {\n layout.removeByParent(key)\n callback({\n action: 'delete',\n key,\n kind: removed.kind,\n removed,\n });\n } else {\n throw new Error(`Folder not found in the project.`);\n }\n },\n },\n\n // requests\n {\n target: `li[data-kind=\"${ProjectRequestKind}\"]`,\n label: 'Rename',\n icon: rename,\n title: 'Renames this request',\n execute: renameItem,\n },\n {\n target: `li[data-kind=\"${ProjectRequestKind}\"]`,\n label: 'Duplicate',\n title: 'Makes a duplicate of this request',\n execute: (init): void => {\n const key = init.target.dataset.key as string;\n const project = init.store.get('project');\n const obj = project.findRequest(key);\n if (!obj) {\n return;\n }\n const callback = init.store.get('callback');\n const layout = init.store.get('layout');\n const parent = obj.getParent() || project;\n const cp = obj.clone();\n const created = parent.addRequest(cp);\n layout.addItem({\n key: cp.key,\n kind: cp.kind,\n label: cp.info.renderLabel,\n icon: 'request'\n });\n callback({\n action: 'duplicate',\n key,\n kind: created.kind,\n });\n },\n },\n {\n target: `li[data-kind=\"${ProjectRequestKind}\"]`,\n label: 'Delete',\n icon: deleteFile,\n title: 'Deletes this request',\n execute: (init): void => {\n const project = init.store.get('project');\n const callback = init.store.get('callback');\n const key = init.target.dataset.key as string;\n const removed = project.removeRequest(key);\n if (removed) {\n callback({\n action: 'delete',\n key,\n kind: removed.kind,\n removed,\n });\n } else {\n throw new Error(`Request not found in the project.`);\n }\n },\n },\n\n // environments\n {\n target: `li[data-kind=\"${EnvironmentKind}\"]`,\n label: 'Rename',\n icon: rename,\n title: 'Renames this environment',\n execute: renameItem,\n },\n\n {\n target: `li[data-kind=\"${EnvironmentKind}\"]`,\n label: 'Delete',\n icon: deleteFile,\n title: 'Deletes this environment',\n execute: (init): void => {\n const project = init.store.get('project');\n const callback = init.store.get('callback');\n const key = init.target.dataset.key as string;\n const parent = init.target.dataset.parent as string | undefined;\n const removed = project.removeEnvironment(key, { parent: parent !== project.key ? parent : undefined });\n const nav = findNavigation(init.target as HTMLElement);\n nav.requestUpdate();\n if (removed) {\n callback({\n action: 'delete',\n key,\n kind: removed.kind,\n removed,\n });\n } else {\n throw new Error(`Request not found in the project.`);\n }\n },\n },\n\n];\n\nexport default commands;\n"]}
|
|
1
|
+
{"version":3,"file":"HttpClientCommands.js","sourceRoot":"","sources":["../../../src/pages/http-project/HttpClientCommands.ts"],"names":[],"mappings":"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","sourcesContent":["/* eslint-disable @typescript-eslint/ban-types */\nimport { EnvironmentKind, ProjectFolderKind, ProjectRequestKind } from '@api-client/core/build/browser.js';\nimport { rename, close, folder, environment, request, deleteFile, send } from '../../ui/icons/Icons.js';\nimport ProjectNavigationElement from \"../../elements/project/ProjectNavigation.js\";\nimport { IContextMenuCommand, IExecuteOptions } from '../../contextual-menu/types.js';\nimport { SplitCloseDirection } from '../../elements/layout/type.js';\nimport { HttpProjectContextualStore } from './types.js';\n\nfunction findNavigation(element: HTMLElement): ProjectNavigationElement {\n if (element.localName === 'project-navigation') {\n return element as ProjectNavigationElement;\n }\n const root = element.getRootNode() as ShadowRoot;\n return root.host as ProjectNavigationElement;\n}\n\nfunction renameItem(init: IExecuteOptions<HttpProjectContextualStore>): void {\n const { key } = init.target.dataset\n if (!key) {\n return;\n }\n const nav = findNavigation(init.target as HTMLElement);\n nav.edited = key;\n}\n\nconst commands: IContextMenuCommand<HttpProjectContextualStore>[] = [\n // \n // Workspace tabs\n // \n \n {\n target: '.layout-tab',\n label: 'Duplicate',\n enabled: (ctx): boolean => {\n const { kind, key } = ctx.target.dataset;\n if (!kind || !key) {\n return false;\n }\n if (kind !== ProjectRequestKind) {\n return false;\n }\n return true;\n },\n execute: (init): void => {\n const { kind, key } = init.target.dataset;\n if (!kind || !key) {\n return;\n }\n if (kind !== ProjectRequestKind) {\n return;\n }\n \n const project = init.store.get('project');\n const obj = project.findRequest(key);\n if (!obj) {\n return;\n }\n const callback = init.store.get('callback');\n const layout = init.store.get('layout');\n const parent = obj.getParent() || project;\n const cp = obj.clone();\n parent.addRequest(cp);\n layout.addItem({\n key: cp.key,\n kind,\n label: cp.info.renderLabel,\n icon: 'request'\n });\n callback({\n action: 'duplicate',\n key: cp.key,\n kind: obj.kind,\n });\n }\n },\n\n {\n target: '.layout-tab',\n label: '',\n type: 'separator',\n },\n\n {\n target: '.layout-tab',\n label: 'Close',\n icon: close,\n execute: (init): void => {\n const { key, panel } = init.target.dataset;\n if (!key || !panel) {\n return;\n }\n const layout = init.store.get('layout');\n const parent = layout.findPanel(panel);\n if (!parent) {\n return;\n }\n parent.removeItem(key);\n }\n },\n {\n target: '.layout-tab',\n label: 'Close others',\n enabled: (ctx): boolean => {\n const shadow = ctx.target.getRootNode() as ShadowRoot;\n const all = shadow.querySelectorAll('.layout-tab');\n if (all.length === 1) {\n return false;\n }\n return true;\n },\n execute: (init): void => {\n const { key, panel } = init.target.dataset;\n if (!key || !panel) {\n return;\n }\n const layout = init.store.get('layout');\n const parent = layout.findPanel(panel);\n if (!parent) {\n return;\n }\n parent.removeRelative(key, SplitCloseDirection.both);\n },\n },\n {\n target: '.layout-tab',\n label: 'Close on the right',\n enabled: (ctx): boolean => {\n const next = ctx.target.nextElementSibling;\n if (!next) {\n return false;\n }\n return true;\n },\n execute: (init): void => {\n const { key, panel } = init.target.dataset;\n if (!key || !panel) {\n return;\n }\n const layout = init.store.get('layout');\n const parent = layout.findPanel(panel);\n if (!parent) {\n return;\n }\n parent.removeRelative(key, SplitCloseDirection.right);\n },\n },\n {\n target: '.layout-tab',\n label: 'Close on the left',\n enabled: (ctx): boolean => {\n const { index } = ctx.target.dataset;\n if (index === '0') {\n return false;\n }\n return true;\n },\n execute: (init): void => {\n const { key, panel } = init.target.dataset;\n if (!key || !panel) {\n return;\n }\n const layout = init.store.get('layout');\n const parent = layout.findPanel(panel);\n if (!parent) {\n return;\n }\n parent.removeRelative(key, SplitCloseDirection.left);\n },\n },\n\n {\n target: '.layout-tab',\n label: '',\n type: 'separator',\n },\n\n {\n target: '.layout-tab',\n label: 'Save',\n enabled: (ctx): boolean => {\n const { dirty } = ctx.target.dataset;\n if (dirty !== 'true') {\n return false;\n }\n return true;\n },\n execute: (init): void => {\n const { key } = init.target.dataset;\n if (!key) {\n return;\n }\n const page = init.store.get('page');\n page.triggerSave(key);\n },\n },\n\n //\n // NAVIGATION\n //\n {\n target: \"project-navigation\",\n label: 'Add folder',\n title: 'Adds a new folder to the project',\n icon: folder,\n execute: (init): void => {\n const project = init.store.get('project');\n const callback = init.store.get('callback');\n const created = project.addFolder();\n callback({\n action: 'add',\n key: created.key,\n kind: created.kind,\n });\n },\n visible: (init) => init.store.has('project'),\n },\n {\n target: \"project-navigation\",\n label: 'Add request',\n title: 'Adds a new HTTP request to the project',\n icon: request,\n execute: (init): void => {\n const project = init.store.get('project');\n const callback = init.store.get('callback');\n const layout = init.store.get('layout');\n const created = project.addRequest('http://');\n layout.addItem({\n key: created.key,\n kind: created.kind,\n label: created.info.renderLabel,\n icon: 'request'\n });\n callback({\n action: 'add',\n key: created.key,\n kind: created.kind,\n });\n },\n visible: (init) => init.store.has('project'),\n },\n {\n target: \"project-navigation\",\n label: 'Add environment',\n title: 'Adds a new environment definition to the project',\n icon: environment,\n execute: (init): void => {\n const project = init.store.get('project');\n const callback = init.store.get('callback');\n const layout = init.store.get('layout');\n const created = project.addEnvironment('New environment');\n layout.addItem({\n key: created.key,\n kind: created.kind,\n label: created.info.renderLabel,\n icon: 'environment'\n });\n callback({\n action: 'add',\n key: created.key,\n kind: created.kind,\n });\n },\n visible: (init) => init.store.has('project'),\n },\n\n {\n target: `project-navigation`,\n type: 'separator',\n label: '',\n },\n\n {\n target: `project-navigation`,\n label: 'Run project',\n icon: send,\n title: 'Runs all requests in the folder',\n execute(args): void {\n const page = args.store.get('page');\n page.openRunner();\n },\n },\n\n // \n // Navigation items\n // \n\n // folders\n {\n target: `li[data-kind=\"${ProjectFolderKind}\"]`,\n label: 'Add folder',\n icon: folder,\n execute: (init): void => {\n const project = init.store.get('project');\n const callback = init.store.get('callback');\n const layout = init.store.get('layout');\n const key = init.target.dataset.key as string;\n const created = project.addFolder(undefined, { parent: key, });\n const nav = findNavigation(init.target as HTMLElement);\n nav.edited = created.key;\n nav.openGroup(key);\n layout.requestNameUpdate(created.key);\n callback({\n action: 'add',\n key: created.key,\n kind: created.kind,\n });\n\n },\n visible: (init) => init.store.has('project'),\n },\n {\n target: `li[data-kind=\"${ProjectFolderKind}\"]`,\n label: 'Add request',\n icon: request,\n execute: (init): void => {\n const project = init.store.get('project');\n const callback = init.store.get('callback');\n const layout = init.store.get('layout');\n const key = init.target.dataset.key as string;\n const f = project.findFolder(key);\n if (f) {\n const created = f.addRequest('http://');\n const nav = findNavigation(init.target as HTMLElement);\n nav.edited = created.key;\n nav.openGroup(key);\n layout.addItem({\n key: created.key,\n kind: created.kind,\n label: created.info.renderLabel,\n icon: 'request'\n });\n callback({\n action: 'add',\n key: created.key,\n kind: created.kind,\n });\n }\n },\n visible: (init) => init.store.has('project'),\n },\n {\n target: `li[data-kind=\"${ProjectFolderKind}\"]`,\n label: 'Add environment',\n title: 'Adds a new environment definition to the folder',\n icon: environment,\n execute: (init): void => {\n const project = init.store.get('project');\n const callback = init.store.get('callback');\n const layout = init.store.get('layout');\n const key = init.target.dataset.key as string;\n const f = project.findFolder(key);\n if (f) {\n const created = f.addEnvironment('New environment');\n const nav = findNavigation(init.target as HTMLElement);\n nav.edited = created.key;\n nav.openGroup(key);\n layout.addItem({\n key: created.key,\n kind: created.kind,\n label: created.info.renderLabel,\n icon: 'environment'\n });\n callback({\n action: 'add',\n key: created.key,\n kind: created.kind,\n });\n }\n },\n visible: (init) => init.store.has('project'),\n },\n {\n target: `li[data-kind=\"${ProjectFolderKind}\"]`,\n type: 'separator',\n label: '',\n },\n {\n target: `li[data-kind=\"${ProjectFolderKind}\"]`,\n label: 'Run folder',\n icon: send,\n title: 'Runs all requests in the folder',\n execute(args): void {\n const key = args.target.dataset.key as string;\n // const project = args.store.get('project');\n const page = args.store.get('page');\n page.openRunner(key);\n // Events.Navigation.App.runProjectRunner({ key: project.key, parent: key, workspace: page.workspace });\n },\n },\n\n {\n target: `li[data-kind=\"${ProjectFolderKind}\"]`,\n type: 'separator',\n label: '',\n },\n {\n target: `li[data-kind=\"${ProjectFolderKind}\"]`,\n label: 'Rename',\n icon: rename,\n title: 'Renames this folder',\n execute: renameItem,\n },\n {\n target: `li[data-kind=\"${ProjectFolderKind}\"]`,\n label: 'Delete',\n icon: deleteFile,\n title: 'Deletes this folder',\n execute: (init): void => {\n const project = init.store.get('project');\n const callback = init.store.get('callback');\n const layout = init.store.get('layout');\n const key = init.target.dataset.key as string;\n const removed = project.removeFolder(key);\n if (removed) {\n layout.removeByParent(key)\n callback({\n action: 'delete',\n key,\n kind: removed.kind,\n removed,\n });\n } else {\n throw new Error(`Folder not found in the project.`);\n }\n },\n },\n\n // requests\n {\n target: `li[data-kind=\"${ProjectRequestKind}\"]`,\n label: 'Rename',\n icon: rename,\n title: 'Renames this request',\n execute: renameItem,\n },\n {\n target: `li[data-kind=\"${ProjectRequestKind}\"]`,\n label: 'Duplicate',\n title: 'Makes a duplicate of this request',\n execute: (init): void => {\n const key = init.target.dataset.key as string;\n const project = init.store.get('project');\n const obj = project.findRequest(key);\n if (!obj) {\n return;\n }\n const callback = init.store.get('callback');\n const layout = init.store.get('layout');\n const parent = obj.getParent() || project;\n const cp = obj.clone();\n const created = parent.addRequest(cp);\n layout.addItem({\n key: cp.key,\n kind: cp.kind,\n label: cp.info.renderLabel,\n icon: 'request'\n });\n callback({\n action: 'duplicate',\n key,\n kind: created.kind,\n });\n },\n },\n {\n target: `li[data-kind=\"${ProjectRequestKind}\"]`,\n label: 'Delete',\n icon: deleteFile,\n title: 'Deletes this request',\n execute: (init): void => {\n const project = init.store.get('project');\n const callback = init.store.get('callback');\n const key = init.target.dataset.key as string;\n const removed = project.removeRequest(key);\n if (removed) {\n callback({\n action: 'delete',\n key,\n kind: removed.kind,\n removed,\n });\n } else {\n throw new Error(`Request not found in the project.`);\n }\n },\n },\n\n // environments\n {\n target: `li[data-kind=\"${EnvironmentKind}\"]`,\n label: 'Rename',\n icon: rename,\n title: 'Renames this environment',\n execute: renameItem,\n },\n\n {\n target: `li[data-kind=\"${EnvironmentKind}\"]`,\n label: 'Delete',\n icon: deleteFile,\n title: 'Deletes this environment',\n execute: (init): void => {\n const project = init.store.get('project');\n const callback = init.store.get('callback');\n const key = init.target.dataset.key as string;\n const parent = init.target.dataset.parent as string | undefined;\n const removed = project.removeEnvironment(key, { parent: parent !== project.key ? parent : undefined });\n const nav = findNavigation(init.target as HTMLElement);\n nav.requestUpdate();\n if (removed) {\n callback({\n action: 'delete',\n key,\n kind: removed.kind,\n removed,\n });\n } else {\n throw new Error(`Request not found in the project.`);\n }\n },\n },\n\n];\n\nexport default commands;\n"]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@api-client/ui",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.11",
|
|
4
4
|
"description": "UI for API Client.",
|
|
5
5
|
"license": "CC-BY-2.0",
|
|
6
6
|
"main": "dist/index.js",
|
|
@@ -77,6 +77,7 @@
|
|
|
77
77
|
"eslint": "^8.11.0",
|
|
78
78
|
"eslint-config-prettier": "^8.3.0",
|
|
79
79
|
"eslint-import-resolver-typescript": "^3.5.3",
|
|
80
|
+
"eslint-plugin-deprecation": "^1.3.3",
|
|
80
81
|
"husky": "^8.0.1",
|
|
81
82
|
"koa-proxies": "^0.12.3",
|
|
82
83
|
"lint-staged": "^13.0.1",
|