@asyncapi/react-component 1.4.9 → 2.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/browser/index.js +1 -1
- package/browser/standalone/index.js +2 -2
- package/browser/standalone/index.js.LICENSE.txt +15 -9
- package/browser/standalone/without-parser.js +3 -3
- package/browser/standalone/without-parser.js.LICENSE.txt +15 -9
- package/browser/without-parser.js +1 -1
- package/lib/cjs/components/Bindings.js.map +1 -1
- package/lib/cjs/components/CollapseButton.js +3 -2
- package/lib/cjs/components/CollapseButton.js.map +1 -1
- package/lib/cjs/components/Extensions.js.map +1 -1
- package/lib/cjs/components/Href.js.map +1 -1
- package/lib/cjs/components/Markdown.js.map +1 -1
- package/lib/cjs/components/Schema.js +31 -34
- package/lib/cjs/components/Schema.js.map +1 -1
- package/lib/cjs/components/Tag.js +2 -1
- package/lib/cjs/components/Tag.js.map +1 -1
- package/lib/cjs/components/Tags.js.map +1 -1
- package/lib/cjs/config/config.js.map +1 -1
- package/lib/cjs/containers/AsyncApi/AsyncApi.js +3 -3
- package/lib/cjs/containers/AsyncApi/AsyncApi.js.map +1 -1
- package/lib/cjs/containers/AsyncApi/Layout.js +5 -4
- package/lib/cjs/containers/AsyncApi/Layout.js.map +1 -1
- package/lib/cjs/containers/AsyncApi/Standalone.js +9 -56
- package/lib/cjs/containers/AsyncApi/Standalone.js.map +1 -1
- package/lib/cjs/containers/Error/Error.js +2 -2
- package/lib/cjs/containers/Error/Error.js.map +1 -1
- package/lib/cjs/containers/Info/Info.js +5 -4
- package/lib/cjs/containers/Info/Info.js.map +1 -1
- package/lib/cjs/containers/Messages/Message.js +1 -1
- package/lib/cjs/containers/Messages/Message.js.map +1 -1
- package/lib/cjs/containers/Messages/MessageExample.js +5 -3
- package/lib/cjs/containers/Messages/MessageExample.js.map +1 -1
- package/lib/cjs/containers/Messages/Messages.js +1 -5
- package/lib/cjs/containers/Messages/Messages.js.map +1 -1
- package/lib/cjs/containers/Operations/Operation.js +7 -4
- package/lib/cjs/containers/Operations/Operation.js.map +1 -1
- package/lib/cjs/containers/Operations/Operations.js +1 -3
- package/lib/cjs/containers/Operations/Operations.js.map +1 -1
- package/lib/cjs/containers/Schemas/Schemas.js +1 -5
- package/lib/cjs/containers/Schemas/Schemas.js.map +1 -1
- package/lib/cjs/containers/Servers/Security.js +5 -10
- package/lib/cjs/containers/Servers/Security.js.map +1 -1
- package/lib/cjs/containers/Servers/Server.js.map +1 -1
- package/lib/cjs/containers/Servers/Servers.js +1 -3
- package/lib/cjs/containers/Servers/Servers.js.map +1 -1
- package/lib/cjs/containers/Sidebar/Sidebar.js +15 -18
- package/lib/cjs/containers/Sidebar/Sidebar.js.map +1 -1
- package/lib/cjs/contexts/useSpec.js.map +1 -1
- package/lib/cjs/helpers/bindingsHelpers.js.map +1 -1
- package/lib/cjs/helpers/common.js +4 -8
- package/lib/cjs/helpers/common.js.map +1 -1
- package/lib/cjs/helpers/marked.js.map +1 -1
- package/lib/cjs/helpers/message.js +1 -1
- package/lib/cjs/helpers/message.js.map +1 -1
- package/lib/cjs/helpers/parser.js.map +1 -1
- package/lib/cjs/helpers/schema.js +6 -16
- package/lib/cjs/helpers/schema.js.map +1 -1
- package/lib/cjs/helpers/server.js.map +1 -1
- package/lib/cjs/helpers/sidebar.js.map +1 -1
- package/lib/cjs/helpers/specification.js +3 -3
- package/lib/cjs/helpers/specification.js.map +1 -1
- package/lib/cjs/types.js.map +1 -1
- package/lib/esm/components/Bindings.js.map +1 -1
- package/lib/esm/components/CollapseButton.js +3 -2
- package/lib/esm/components/CollapseButton.js.map +1 -1
- package/lib/esm/components/Extensions.js.map +1 -1
- package/lib/esm/components/Href.js.map +1 -1
- package/lib/esm/components/Markdown.js.map +1 -1
- package/lib/esm/components/Schema.js +31 -34
- package/lib/esm/components/Schema.js.map +1 -1
- package/lib/esm/components/Tag.js +2 -1
- package/lib/esm/components/Tag.js.map +1 -1
- package/lib/esm/components/Tags.js.map +1 -1
- package/lib/esm/config/config.js.map +1 -1
- package/lib/esm/containers/AsyncApi/AsyncApi.js +3 -3
- package/lib/esm/containers/AsyncApi/AsyncApi.js.map +1 -1
- package/lib/esm/containers/AsyncApi/Layout.js +5 -4
- package/lib/esm/containers/AsyncApi/Layout.js.map +1 -1
- package/lib/esm/containers/AsyncApi/Standalone.js +9 -56
- package/lib/esm/containers/AsyncApi/Standalone.js.map +1 -1
- package/lib/esm/containers/Error/Error.js +2 -2
- package/lib/esm/containers/Error/Error.js.map +1 -1
- package/lib/esm/containers/Info/Info.js +5 -4
- package/lib/esm/containers/Info/Info.js.map +1 -1
- package/lib/esm/containers/Messages/Message.js +1 -1
- package/lib/esm/containers/Messages/Message.js.map +1 -1
- package/lib/esm/containers/Messages/MessageExample.js +5 -3
- package/lib/esm/containers/Messages/MessageExample.js.map +1 -1
- package/lib/esm/containers/Messages/Messages.js +1 -5
- package/lib/esm/containers/Messages/Messages.js.map +1 -1
- package/lib/esm/containers/Operations/Operation.js +7 -4
- package/lib/esm/containers/Operations/Operation.js.map +1 -1
- package/lib/esm/containers/Operations/Operations.js +1 -3
- package/lib/esm/containers/Operations/Operations.js.map +1 -1
- package/lib/esm/containers/Schemas/Schemas.js +1 -5
- package/lib/esm/containers/Schemas/Schemas.js.map +1 -1
- package/lib/esm/containers/Servers/Security.js +5 -10
- package/lib/esm/containers/Servers/Security.js.map +1 -1
- package/lib/esm/containers/Servers/Server.js.map +1 -1
- package/lib/esm/containers/Servers/Servers.js +1 -3
- package/lib/esm/containers/Servers/Servers.js.map +1 -1
- package/lib/esm/containers/Sidebar/Sidebar.js +15 -18
- package/lib/esm/containers/Sidebar/Sidebar.js.map +1 -1
- package/lib/esm/contexts/useSpec.js.map +1 -1
- package/lib/esm/helpers/bindingsHelpers.js.map +1 -1
- package/lib/esm/helpers/common.js +4 -8
- package/lib/esm/helpers/common.js.map +1 -1
- package/lib/esm/helpers/marked.js.map +1 -1
- package/lib/esm/helpers/message.js +1 -1
- package/lib/esm/helpers/message.js.map +1 -1
- package/lib/esm/helpers/parser.js.map +1 -1
- package/lib/esm/helpers/schema.js +6 -16
- package/lib/esm/helpers/schema.js.map +1 -1
- package/lib/esm/helpers/server.js.map +1 -1
- package/lib/esm/helpers/sidebar.js.map +1 -1
- package/lib/esm/helpers/specification.js +3 -3
- package/lib/esm/helpers/specification.js.map +1 -1
- package/lib/esm/types.js.map +1 -1
- package/lib/types/components/Bindings.d.ts.map +1 -1
- package/lib/types/components/Extensions.d.ts.map +1 -1
- package/lib/types/components/Href.d.ts +1 -0
- package/lib/types/components/Href.d.ts.map +1 -1
- package/lib/types/components/Markdown.d.ts +3 -1
- package/lib/types/components/Markdown.d.ts.map +1 -1
- package/lib/types/components/Schema.d.ts.map +1 -1
- package/lib/types/config/config.d.ts.map +1 -1
- package/lib/types/containers/AsyncApi/AsyncApi.d.ts +0 -1
- package/lib/types/containers/AsyncApi/AsyncApi.d.ts.map +1 -1
- package/lib/types/containers/AsyncApi/Standalone.d.ts +2 -2
- package/lib/types/containers/AsyncApi/Standalone.d.ts.map +1 -1
- package/lib/types/containers/Messages/MessageExample.d.ts.map +1 -1
- package/lib/types/containers/Messages/Messages.d.ts.map +1 -1
- package/lib/types/containers/Operations/Operation.d.ts.map +1 -1
- package/lib/types/containers/Operations/Operations.d.ts.map +1 -1
- package/lib/types/containers/Schemas/Schemas.d.ts.map +1 -1
- package/lib/types/containers/Servers/Security.d.ts.map +1 -1
- package/lib/types/containers/Servers/Servers.d.ts.map +1 -1
- package/lib/types/contexts/useSpec.d.ts.map +1 -1
- package/lib/types/helpers/bindingsHelpers.d.ts.map +1 -1
- package/lib/types/helpers/common.d.ts.map +1 -1
- package/lib/types/helpers/marked.d.ts.map +1 -1
- package/lib/types/helpers/message.d.ts.map +1 -1
- package/lib/types/helpers/parser.d.ts.map +1 -1
- package/lib/types/helpers/schema.d.ts.map +1 -1
- package/lib/types/helpers/server.d.ts.map +1 -1
- package/lib/types/helpers/sidebar.d.ts +1 -1
- package/lib/types/helpers/sidebar.d.ts.map +1 -1
- package/lib/types/helpers/specification.d.ts +1 -1
- package/lib/types/helpers/specification.d.ts.map +1 -1
- package/lib/types/types.d.ts +4 -4
- package/lib/types/types.d.ts.map +1 -1
- package/package.json +9 -9
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Security.js","sourceRoot":"","sources":["../../../../src/containers/Servers/Security.tsx"],"names":[],"mappings":";;;;;;AAAA,gDAA0B;AAO1B,+CAAkD;AAClD,2CAAyC;AACzC,yCAA8C;AAQvC,IAAM,QAAQ,GAAmC,UAAC,EAIxD;QAHC,gBAAa,EAAb,QAAQ,mBAAG,EAAE,KAAA,EACb,gBAAa,EAAb,QAAQ,mBAAG,EAAE,KAAA,EACb,cAAmB,EAAnB,MAAM,mBAAG,UAAU,KAAA;IAEnB,IAAM,QAAQ,GAAG,IAAA,kBAAO,GAAE,CAAC;IAC3B,IAAM,eAAe,GACnB,CAAC,QAAQ,CAAC,UAAU,EAAE,CAAC,OAAO,EAAE,IAAI,QAAQ,CAAC,UAAU,EAAE,CAAC,eAAe,EAAE,CAAC;IAE9E,IAAI,kBAAkB,CAAC;IACvB,IACE,CAAC,CAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,MAAM,CAAA;QACjB,CAAC,eAAe;QAChB,CAAC,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,MAAM,EACpC;QACA,IAAI,QAAQ,KAAK,OAAO,IAAI,QAAQ,KAAK,cAAc,EAAE;YACvD,kBAAkB,GAAG,CACnB,8BAAC,YAAY,IAAC,QAAQ,EAAE,QAAQ,EAAE,cAAc,EAAE,IAAI,GAAI,CAC3D,CAAC;SACH;KACF;SAAM;QACL,IAAM,UAAU,GAAyB,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC;aAC7D,GAAG,CAAC,UAAA,WAAW;YACd,IAAM,YAAY,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC;YACvC,IAAM,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC;YACzC,IAAM,GAAG,GAAG,eAAe,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;YACzC,IAAM,cAAc,GAAQ,YAAY,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;YAEtD,IAAI,CAAC,GAAG,EAAE;gBACR,OAAO,IAAI,CAAC;aACb;YACD,OAAO,CACL,8BAAC,YAAY,IACX,QAAQ,EAAE,QAAQ,EAClB,cAAc,EAAE,GAAG,EACnB,cAAc,EAAE,cAAc,EAC9B,GAAG,EAAE,GAAG,CAAC,IAAI,EAAE,GACf,CACH,CAAC;QACJ,CAAC,CAAC;aACD,MAAM,CAAC,OAAO,CAAC,CAAC;QAEnB,kBAAkB,GAAG,CACnB,0CACG,UAAU,CAAC,GAAG,CAAC,UAAC,CAAC,EAAE,GAAG,IAAK,OAAA,CAC1B,sCAAI,SAAS,EAAC,MAAM,EAAC,GAAG,EAAE,GAAG,IAC1B,CAAC,CACC,CACN,EAJ2B,CAI3B,CAAC,CACC,CACN,CAAC;KACH;IAED,IAAI,CAAC,kBAAkB,EAAE;QACvB,OAAO,IAAI,CAAC;KACb;IAED,OAAO,CACL,uCAAK,SAAS,EAAC,cAAc;QAC3B,sCAAI,SAAS,EAAC,eAAe;YAAE,MAAM;gBAAO;QAC3C,kBAAkB,CACf,CACP,CAAC;AACJ,CAAC,CAAC;AA/DW,QAAA,QAAQ,YA+DnB;AAEF,SAAS,sBAAsB,CAC7B,cAA8C,EAC9C,cAA6B;IAA7B,+BAAA,EAAA,mBAA6B;IAE7B,IAAM,OAAO,GAAyB,EAAE,CAAC;IACzC,IAAI,cAAc,EAAE;QAClB,IAAI,cAAc,CAAC,IAAI,EAAE,EAAE;YACzB,OAAO,CAAC,IAAI,CAAC;;gBAAa,cAAc,CAAC,IAAI,EAAE,CAAQ,CAAC,CAAC;SAC1D;QACD,IAAI,cAAc,CAAC,EAAE,EAAE,EAAE;YACvB,OAAO,CAAC,IAAI,CAAC;;gBAAW,cAAc,CAAC,EAAE,EAAE,CAAQ,CAAC,CAAC;SACtD;QACD,IAAI,cAAc,CAAC,MAAM,EAAE,EAAE;YAC3B,OAAO,CAAC,IAAI,CAAC;;gBAAe,cAAc,CAAC,MAAM,EAAE,CAAQ,CAAC,CAAC;SAC9D;QACD,IAAI,cAAc,CAAC,YAAY,EAAE,EAAE;YACjC,OAAO,CAAC,IAAI,CAAC;;gBAAsB,cAAc,CAAC,YAAY,EAAE,CAAQ,CAAC,CAAC;SAC3E;QACD,IAAI,cAAc,CAAC,gBAAgB,EAAE,EAAE;YACrC,OAAO,CAAC,IAAI,CACV,8BAAC,iBAAI,IACH,IAAI,EAAE,cAAc,CAAC,gBAAgB,EAAY,EACjD,SAAS,EAAC,WAAW,kBAGhB,CACR,CAAC;SACH;QACD,IAAI,cAAc,CAAC,MAAM,EAAE;YACzB,OAAO,CAAC,IAAI,CAAC;;gBAAwB,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,CAAQ,CAAC,CAAC;SACzE;KACF;IACD,OAAO,OAAO,CAAC;AACjB,CAAC;AAQD,IAAM,YAAY,GAA+C,UAAC,EAIjE;QAHC,cAAc,oBAAA,EACd,QAAQ,cAAA,EACR,cAAc,oBAAA;IAEd,IAAM,OAAO,GAAyB,sBAAsB,CAC1D,cAAc,EACd,cAAc,CACf,CAAC;IAEF,IAAI,qBAAqB,CAAC;IAC1B,IAAI,CAAC,OAAO,EAAE,cAAc,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE;QAC1C,IAAA,KAAsC,uBAAa,CAAC,gBAAgB,CACxE,QAAQ,EACR,cAAc,CACf,EAHO,gBAAgB,sBAAA,EAAE,aAAa,mBAGtC,CAAC;QAEF,qBAAqB,GAAG,CACtB,uCAAK,SAAS,EAAC,gEAAgE;YAC5E,gBAAgB,IAAI,CACnB,uCAAK,SAAS,EAAC,MAAM;gBACnB,wCAAM,SAAS,EAAC,qDAAqD,yBAE9D;gBACP,wCAAM,SAAS,EAAC,6FAA6F,IAC1G,gBAAgB,CACZ,CACH,CACP;YACA,aAAa,IAAI,CAChB,uCAAK,SAAS,EAAC,MAAM;gBACnB,wCAAM,SAAS,EAAC,qDAAqD,sBAE9D;gBACP,wCAAM,SAAS,EAAC,6FAA6F,IAC1G,aAAa,CACT,CACH,CACP,CACG,CACP,CAAC;KACH;IAED,IAAM,KAAK,GAAG,cAAc,aAAd,cAAc,uBAAd,cAAc,CAAE,KAAK,EAAE,CAAC;IACtC,IAAM,cAAc,GAAuC,EAAE,CAAC;IAC9D,IAAI,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,WAAW,EAAE,EAAE;QACxB,cAAc,CAAC,QAAQ,GAAG,KAAK,CAAC,QAAQ,EAAwB,CAAC;KAClE;IACD,IAAI,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,oBAAoB,EAAE,EAAE;QACjC,cAAc,CAAC,iBAAiB,GAAG,KAAK,CAAC,iBAAiB,EAAwB,CAAC;KACpF;IACD,IAAI,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,oBAAoB,EAAE,EAAE;QACjC,cAAc,CAAC,iBAAiB,GAAG,KAAK,CAAC,iBAAiB,EAAwB,CAAC;KACpF;IACD,IAAI,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,WAAW,EAAE,EAAE;QACxB,cAAc,CAAC,QAAQ,GAAG,KAAK,CAAC,QAAQ,EAAwB,CAAC;KAClE;IACD,IAAM,aAAa,GAAG,MAAM,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC,GAAG,CACtD,UAAC,EAAgB;YAAf,QAAQ,QAAA,EAAE,IAAI,QAAA;QACd,IAAM,gBAAgB,GAAG,IAAI,CAAC,gBAAgB,EAAE,CAAC;QACjD,IAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC;QACjC,IAAM,UAAU,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC;QACrC,IAAM,MAAM,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC;QAE7B,OAAO,CACL,uCACE,SAAS,EAAC,gEAAgE,EAC1E,GAAG,EAAE,QAAQ;YAEb;gBACE,wCAAM,SAAS,EAAC,qDAAqD,YAE9D;gBACP,wCAAM,SAAS,EAAC,qDAAqD,IAClE,uBAAa,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAC5B,CACH;YAEL,gBAAgB,IAAI,CACnB,uCAAK,SAAS,EAAC,MAAM;gBACnB,wCAAM,SAAS,EAAC,qDAAqD,gBAE9D;gBACP,8BAAC,iBAAI,IAAC,IAAI,EAAE,gBAAgB,EAAE,SAAS,EAAC,WAAW,IAChD,gBAAgB,CACZ,CACH,CACP;YACA,QAAQ,IAAI,CACX,uCAAK,SAAS,EAAC,MAAM;gBACnB,wCAAM,SAAS,EAAC,qDAAqD,iBAE9D;gBACP,8BAAC,iBAAI,IAAC,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAC,WAAW,IACxC,QAAQ,CACJ,CACH,CACP;YACA,UAAU,IAAI,CACb,uCAAK,SAAS,EAAC,MAAM;gBACnB,wCAAM,SAAS,EAAC,qDAAqD,mBAE9D;gBACP,8BAAC,iBAAI,IAAC,IAAI,EAAE,UAAU,EAAE,SAAS,EAAC,WAAW,IAC1C,UAAU,CACN,CACH,CACP;YACA,MAAM,IAAI,CACT,uCAAK,SAAS,EAAC,MAAM;gBACnB,wCAAM,SAAS,EAAC,qDAAqD,cAE9D;gBACP,sCAAI,SAAS,EAAC,cAAc,IACzB,MAAM;oBACL,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,UAAC,EAAsB;4BAArB,SAAS,QAAA,EAAE,SAAS,QAAA;wBAAM,OAAA,CACrD,sCACE,SAAS,EAAC,6FAA6F,EACvG,KAAK,EAAE,SAAS,EAChB,GAAG,EAAE,SAAS,IAEb,SAAS,CACP,CACN;oBARsD,CAQtD,CAAC,CACD,CACD,CACP,CACG,CACP,CAAC;IACJ,CAAC,CACF,CAAC;IAEF,OAAO,CACL;QACG,cAAc,IAAI,OAAO,IAAI,CAC5B;YACE;gBACG,uBAAa,CAAC,YAAY,CAAC,cAAc,CAAC,IAAI,EAAE,CAAC;gBACjD,OAAO,CAAC,MAAM,GAAG,CAAC,IAAI,CACrB,sCAAI,SAAS,EAAC,mBAAmB,IAC9B,OAAO,CAAC,GAAG,CAAC,UAAC,MAAM,EAAE,GAAG,IAAK,OAAA,CAC5B,sCACE,SAAS,EAAC,qGAAqG,EAC/G,GAAG,EAAE,GAAG,IAEP,MAAM,CACJ,CACN,EAP6B,CAO7B,CAAC,CACC,CACN,CACI,CACH,CACP;QAEA,CAAA,cAAc,aAAd,cAAc,uBAAd,cAAc,CAAE,cAAc,EAAE,KAAI,CACnC;YACE,8BAAC,qBAAQ,QAAE,cAAc,CAAC,WAAW,EAAE,CAAY,CAC/C,CACP;QAEA,aAAa,IAAI,aAAa,CAAC,MAAM,GAAG,CAAC,IAAI,CAC5C,sCAAI,SAAS,EAAC,MAAM;YAClB,0CAAK,aAAa,CAAM,CACrB,CACN;QAEA,qBAAqB,IAAI,2CAAM,qBAAqB,CAAO,CACxD,CACP,CAAC;AACJ,CAAC,CAAC","sourcesContent":["import React from 'react';\nimport {\n OAuthFlowInterface,\n SecurityRequirementsInterface,\n SecuritySchemeInterface,\n} from '@asyncapi/parser';\n\nimport { Href, Markdown } from '../../components';\nimport { useSpec } from '../../contexts';\nimport { ServerHelpers } from '../../helpers';\n\ninterface Props {\n security: SecurityRequirementsInterface[];\n protocol?: string;\n header?: string;\n}\n\nexport const Security: React.FunctionComponent<Props> = ({\n security = [],\n protocol = '',\n header = 'Security',\n}) => {\n const asyncapi = useSpec();\n const securitySchemes =\n !asyncapi.components().isEmpty() && asyncapi.components().securitySchemes();\n\n let renderedSecurities;\n if (\n !security?.length ||\n !securitySchemes ||\n !Object.keys(securitySchemes).length\n ) {\n if (protocol === 'kafka' || protocol === 'kafka-secure') {\n renderedSecurities = (\n <SecurityItem protocol={protocol} securitySchema={null} />\n );\n }\n } else {\n const securities: React.ReactNodeArray = Object.values(security)\n .map(requirement => {\n const requirements = requirement.all();\n const key = Object.keys(requirements)[0];\n const def = securitySchemes[Number(key)];\n const requiredScopes: any = requirements[Number(key)];\n\n if (!def) {\n return null;\n }\n return (\n <SecurityItem\n protocol={protocol}\n securitySchema={def}\n requiredScopes={requiredScopes}\n key={def.type()}\n />\n );\n })\n .filter(Boolean);\n\n renderedSecurities = (\n <ul>\n {securities.map((s, idx) => (\n <li className=\"mt-2\" key={idx}>\n {s}\n </li>\n ))}\n </ul>\n );\n }\n\n if (!renderedSecurities) {\n return null;\n }\n\n return (\n <div className=\"text-sm mt-4\">\n <h5 className=\"text-gray-800\">{header}:</h5>\n {renderedSecurities}\n </div>\n );\n};\n\nfunction collectSecuritySchemas(\n securitySchema: SecuritySchemeInterface | null,\n requiredScopes: string[] = [],\n): React.ReactNodeArray {\n const schemas: React.ReactNodeArray = [];\n if (securitySchema) {\n if (securitySchema.name()) {\n schemas.push(<span>Name: {securitySchema.name()}</span>);\n }\n if (securitySchema.in()) {\n schemas.push(<span>In: {securitySchema.in()}</span>);\n }\n if (securitySchema.scheme()) {\n schemas.push(<span>Scheme: {securitySchema.scheme()}</span>);\n }\n if (securitySchema.bearerFormat()) {\n schemas.push(<span>Bearer format: {securitySchema.bearerFormat()}</span>);\n }\n if (securitySchema.openIdConnectUrl()) {\n schemas.push(\n <Href\n href={securitySchema.openIdConnectUrl() as string}\n className=\"underline\"\n >\n Connect URL\n </Href>,\n );\n }\n if (requiredScopes.length) {\n schemas.push(<span>Required scopes: {requiredScopes.join(', ')}</span>);\n }\n }\n return schemas;\n}\n\ninterface SecurityItemProps {\n securitySchema: SecuritySchemeInterface | null;\n protocol: string;\n requiredScopes?: string[];\n}\n\nconst SecurityItem: React.FunctionComponent<SecurityItemProps> = ({\n securitySchema,\n protocol,\n requiredScopes,\n}) => {\n const schemas: React.ReactNodeArray = collectSecuritySchemas(\n securitySchema,\n requiredScopes,\n );\n\n let renderedKafkaSecurity;\n if (['kafka', 'kafka-secure'].includes(protocol)) {\n const { securityProtocol, saslMechanism } = ServerHelpers.getKafkaSecurity(\n protocol,\n securitySchema,\n );\n\n renderedKafkaSecurity = (\n <div className=\"px-4 py-2 ml-2 mb-2 border border-gray-400 bg-gray-100 rounded\">\n {securityProtocol && (\n <div className=\"mt-1\">\n <span className=\"text-xs font-bold text-gray-600 mt-1 mr-1 uppercase\">\n security.protocol:\n </span>\n <span className=\"inline-block font-bold no-underline bg-indigo-400 text-white text-xs rounded py-0 px-1 ml-1\">\n {securityProtocol}\n </span>\n </div>\n )}\n {saslMechanism && (\n <div className=\"mt-1\">\n <span className=\"text-xs font-bold text-gray-600 mt-1 mr-1 uppercase\">\n sasl.mechanism:\n </span>\n <span className=\"inline-block font-bold no-underline bg-indigo-400 text-white text-xs rounded py-0 px-1 ml-1\">\n {saslMechanism}\n </span>\n </div>\n )}\n </div>\n );\n }\n\n const flows = securitySchema?.flows();\n const unwrappedFlows: Record<string, OAuthFlowInterface> = {};\n if (flows?.hasImplicit()) {\n unwrappedFlows.implicit = flows.implicit() as OAuthFlowInterface;\n }\n if (flows?.hasAuthorizationCode()) {\n unwrappedFlows.authorizationCode = flows.authorizationCode() as OAuthFlowInterface;\n }\n if (flows?.hasClientCredentials()) {\n unwrappedFlows.clientCredentials = flows.clientCredentials() as OAuthFlowInterface;\n }\n if (flows?.hasPassword()) {\n unwrappedFlows.password = flows.implicit() as OAuthFlowInterface;\n }\n const renderedFlows = Object.entries(unwrappedFlows).map(\n ([flowName, flow]) => {\n const authorizationUrl = flow.authorizationUrl();\n const tokenUrl = flow.tokenUrl();\n const refreshUrl = flow.refreshUrl();\n const scopes = flow.scopes();\n\n return (\n <div\n className=\"px-4 py-2 ml-2 mb-2 border border-gray-400 bg-gray-100 rounded\"\n key={flowName}\n >\n <div>\n <span className=\"text-xs font-bold text-gray-600 mt-1 mr-1 uppercase\">\n Flow:\n </span>\n <span className=\"text-xs font-bold text-gray-600 mt-1 mr-1 uppercase\">\n {ServerHelpers.flowName(flowName)}\n </span>\n </div>\n\n {authorizationUrl && (\n <div className=\"mt-1\">\n <span className=\"text-xs font-bold text-gray-600 mt-1 mr-1 uppercase\">\n Auth URL:\n </span>\n <Href href={authorizationUrl} className=\"underline\">\n {authorizationUrl}\n </Href>\n </div>\n )}\n {tokenUrl && (\n <div className=\"mt-1\">\n <span className=\"text-xs font-bold text-gray-600 mt-1 mr-1 uppercase\">\n Token URL:\n </span>\n <Href href={tokenUrl} className=\"underline\">\n {tokenUrl}\n </Href>\n </div>\n )}\n {refreshUrl && (\n <div className=\"mt-1\">\n <span className=\"text-xs font-bold text-gray-600 mt-1 mr-1 uppercase\">\n Refresh URL:\n </span>\n <Href href={refreshUrl} className=\"underline\">\n {refreshUrl}\n </Href>\n </div>\n )}\n {scopes && (\n <div className=\"mt-1\">\n <span className=\"text-xs font-bold text-gray-600 mt-1 mr-1 uppercase\">\n Scopes:\n </span>\n <ul className=\"inline-block\">\n {scopes &&\n Object.entries(scopes).map(([scopeName, scopeDesc]) => (\n <li\n className=\"inline-block font-bold no-underline bg-indigo-400 text-white text-xs rounded py-0 px-1 ml-1\"\n title={scopeDesc}\n key={scopeName}\n >\n {scopeName}\n </li>\n ))}\n </ul>\n </div>\n )}\n </div>\n );\n },\n );\n\n return (\n <div>\n {securitySchema && schemas && (\n <div>\n <span>\n {ServerHelpers.securityType(securitySchema.type())}\n {schemas.length > 0 && (\n <ul className=\"inline-block ml-2\">\n {schemas.map((schema, idx) => (\n <li\n className=\"inline-block font-bold no-underline bg-blue-400 text-white text-xs uppercase rounded px-2 py-0 ml-1\"\n key={idx}\n >\n {schema}\n </li>\n ))}\n </ul>\n )}\n </span>\n </div>\n )}\n\n {securitySchema?.hasDescription() && (\n <div>\n <Markdown>{securitySchema.description()}</Markdown>\n </div>\n )}\n\n {renderedFlows && renderedFlows.length > 0 && (\n <ul className=\"my-2\">\n <li>{renderedFlows}</li>\n </ul>\n )}\n\n {renderedKafkaSecurity && <div>{renderedKafkaSecurity}</div>}\n </div>\n );\n};\n"]}
|
|
1
|
+
{"version":3,"file":"Security.js","sourceRoot":"","sources":["../../../../src/containers/Servers/Security.tsx"],"names":[],"mappings":"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","sourcesContent":["import React from 'react';\nimport {\n OAuthFlowInterface,\n SecurityRequirementsInterface,\n SecuritySchemeInterface,\n} from '@asyncapi/parser';\n\nimport { Href, Markdown } from '../../components';\nimport { ServerHelpers } from '../../helpers';\n\ninterface Props {\n security: SecurityRequirementsInterface[];\n protocol?: string;\n header?: string;\n}\n\nexport const Security: React.FunctionComponent<Props> = ({\n security = [],\n protocol = '',\n header = 'Security',\n}) => {\n let renderedSecurities;\n if (!security?.length) {\n if (protocol === 'kafka' || protocol === 'kafka-secure') {\n renderedSecurities = (\n <SecurityItem protocol={protocol} securitySchema={null} />\n );\n }\n } else {\n const securities: React.ReactNode[] = Object.values(security)\n .map((requirements) => requirements.all())\n .flat()\n .map((requirement) => {\n const def = requirement.scheme();\n const requiredScopes = requirement.scopes();\n\n if (!def) {\n return null;\n }\n return (\n <SecurityItem\n protocol={protocol}\n securitySchema={def}\n requiredScopes={requiredScopes}\n key={def.type()}\n />\n );\n })\n .filter(Boolean);\n\n renderedSecurities = (\n <ul>\n {securities.map((s, idx) => (\n <li className=\"mt-2\" key={idx}>\n {s}\n </li>\n ))}\n </ul>\n );\n }\n\n if (!renderedSecurities) {\n return null;\n }\n\n return (\n <div className=\"text-sm mt-4\">\n <h5 className=\"text-gray-800\">{header}:</h5>\n {renderedSecurities}\n </div>\n );\n};\n\nfunction collectSecuritySchemas(\n securitySchema: SecuritySchemeInterface | null,\n requiredScopes: string[] = [],\n): React.ReactNode[] {\n const schemas: React.ReactNode[] = [];\n if (securitySchema) {\n if (securitySchema.name()) {\n schemas.push(<span>Name: {securitySchema.name()}</span>);\n }\n if (securitySchema.in()) {\n schemas.push(<span>In: {securitySchema.in()}</span>);\n }\n if (securitySchema.scheme()) {\n schemas.push(<span>Scheme: {securitySchema.scheme()}</span>);\n }\n if (securitySchema.bearerFormat()) {\n schemas.push(<span>Bearer format: {securitySchema.bearerFormat()}</span>);\n }\n if (securitySchema.openIdConnectUrl()) {\n schemas.push(\n <Href href={securitySchema.openIdConnectUrl()!} className=\"underline\">\n Connect URL\n </Href>,\n );\n }\n if (requiredScopes.length) {\n schemas.push(<span>Required scopes: {requiredScopes.join(', ')}</span>);\n }\n }\n return schemas;\n}\n\ninterface SecurityItemProps {\n securitySchema: SecuritySchemeInterface | null;\n protocol: string;\n requiredScopes?: string[];\n}\n\nconst SecurityItem: React.FunctionComponent<SecurityItemProps> = ({\n securitySchema,\n protocol,\n requiredScopes,\n}) => {\n const schemas: React.ReactNode[] = collectSecuritySchemas(\n securitySchema,\n requiredScopes,\n );\n\n let renderedKafkaSecurity;\n if (['kafka', 'kafka-secure'].includes(protocol)) {\n const { securityProtocol, saslMechanism } = ServerHelpers.getKafkaSecurity(\n protocol,\n securitySchema,\n );\n\n renderedKafkaSecurity = (\n <div className=\"px-4 py-2 ml-2 mb-2 border border-gray-400 bg-gray-100 rounded\">\n {securityProtocol && (\n <div className=\"mt-1\">\n <span className=\"text-xs font-bold text-gray-600 mt-1 mr-1 uppercase\">\n security.protocol:\n </span>\n <span className=\"inline-block font-bold no-underline bg-indigo-400 text-white text-xs rounded py-0 px-1 ml-1\">\n {securityProtocol}\n </span>\n </div>\n )}\n {saslMechanism && (\n <div className=\"mt-1\">\n <span className=\"text-xs font-bold text-gray-600 mt-1 mr-1 uppercase\">\n sasl.mechanism:\n </span>\n <span className=\"inline-block font-bold no-underline bg-indigo-400 text-white text-xs rounded py-0 px-1 ml-1\">\n {saslMechanism}\n </span>\n </div>\n )}\n </div>\n );\n }\n\n const flows = securitySchema?.flows();\n const unwrappedFlows: Record<string, OAuthFlowInterface> = {};\n if (flows?.hasImplicit()) {\n unwrappedFlows.implicit = flows.implicit()!;\n }\n if (flows?.hasAuthorizationCode()) {\n unwrappedFlows.authorizationCode = flows.authorizationCode()!;\n }\n if (flows?.hasClientCredentials()) {\n unwrappedFlows.clientCredentials = flows.clientCredentials()!;\n }\n if (flows?.hasPassword()) {\n unwrappedFlows.password = flows.implicit()!;\n }\n const renderedFlows = Object.entries(unwrappedFlows).map(\n ([flowName, flow]) => {\n const authorizationUrl = flow.authorizationUrl();\n const tokenUrl = flow.tokenUrl();\n const refreshUrl = flow.refreshUrl();\n const scopes = flow.scopes();\n\n return (\n <div\n className=\"px-4 py-2 ml-2 mb-2 border border-gray-400 bg-gray-100 rounded\"\n key={flowName}\n >\n <div>\n <span className=\"text-xs font-bold text-gray-600 mt-1 mr-1 uppercase\">\n Flow:\n </span>\n <span className=\"text-xs font-bold text-gray-600 mt-1 mr-1 uppercase\">\n {ServerHelpers.flowName(flowName)}\n </span>\n </div>\n\n {authorizationUrl && (\n <div className=\"mt-1\">\n <span className=\"text-xs font-bold text-gray-600 mt-1 mr-1 uppercase\">\n Auth URL:\n </span>\n <Href href={authorizationUrl} className=\"underline\">\n {authorizationUrl}\n </Href>\n </div>\n )}\n {tokenUrl && (\n <div className=\"mt-1\">\n <span className=\"text-xs font-bold text-gray-600 mt-1 mr-1 uppercase\">\n Token URL:\n </span>\n <Href href={tokenUrl} className=\"underline\">\n {tokenUrl}\n </Href>\n </div>\n )}\n {refreshUrl && (\n <div className=\"mt-1\">\n <span className=\"text-xs font-bold text-gray-600 mt-1 mr-1 uppercase\">\n Refresh URL:\n </span>\n <Href href={refreshUrl} className=\"underline\">\n {refreshUrl}\n </Href>\n </div>\n )}\n {scopes && (\n <div className=\"mt-1\">\n <span className=\"text-xs font-bold text-gray-600 mt-1 mr-1 uppercase\">\n Scopes:\n </span>\n <ul className=\"inline-block\">\n {scopes &&\n Object.entries(scopes).map(([scopeName, scopeDesc]) => (\n <li\n className=\"inline-block font-bold no-underline bg-indigo-400 text-white text-xs rounded py-0 px-1 ml-1\"\n title={scopeDesc}\n key={scopeName}\n >\n {scopeName}\n </li>\n ))}\n </ul>\n </div>\n )}\n </div>\n );\n },\n );\n\n return (\n <div>\n {securitySchema && schemas && (\n <div>\n <span>\n {ServerHelpers.securityType(securitySchema.type())}\n {schemas.length > 0 && (\n <ul className=\"inline-block ml-2\">\n {schemas.map((schema, idx) => (\n <li\n className=\"inline-block font-bold no-underline bg-blue-400 text-white text-xs uppercase rounded px-2 py-0 ml-1\"\n key={idx}\n >\n {schema}\n </li>\n ))}\n </ul>\n )}\n </span>\n </div>\n )}\n\n {securitySchema?.hasDescription() && (\n <div>\n <Markdown>{securitySchema.description()}</Markdown>\n </div>\n )}\n\n {renderedFlows && renderedFlows.length > 0 && (\n <ul className=\"my-2\">\n <li>{renderedFlows}</li>\n </ul>\n )}\n\n {renderedKafkaSecurity && <div>{renderedKafkaSecurity}</div>}\n </div>\n );\n};\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Server.js","sourceRoot":"","sources":["../../../../src/containers/Servers/Server.tsx"],"names":[],"mappings":";;;;;;AAAA,gDAA0B;AAG1B,uCAAsC;AACtC,+CAAgF;AAEhF,2CAA2C;AAC3C,yCAA6D;AAOtD,IAAM,MAAM,GAAmC,UAAC,EAGtD;QAFC,UAAU,gBAAA,EACV,MAAM,YAAA;IAEN,IAAM,MAAM,GAAG,IAAA,oBAAS,GAAE,CAAC;IAE3B,IAAI,CAAC,MAAM,EAAE;QACX,OAAO,IAAI,CAAC;KACb;IAED,IAAM,YAAY,GAAG,uBAAa,CAAC,uBAAuB,CACxD,MAAM,CAAC,SAAS,EAAE,CACnB,CAAC;IACF,IAAM,eAAe,GAAG,MAAM,CAAC,eAAe,EAAE,CAAC;IACjD,IAAM,QAAQ,GAAG,MAAM,CAAC,QAAQ,EAAE,CAAC;IAEnC,OAAO,CACL,uCAAK,SAAS,EAAC,YAAY;QACzB,uCAAK,SAAS,EAAC,yBAAyB;YACtC,uCAAK,SAAS,EAAC,mDAAmD;gBAChE;oBACE,wCAAM,SAAS,EAAC,qBAAqB,IAAE,MAAM,CAAC,GAAG,EAAE,CAAQ;oBAC3D,wCAAM,SAAS,EAAC,wFAAwF,IACrG,eAAe;wBACd,CAAC,CAAC,UAAG,MAAM,CAAC,QAAQ,EAAE,cAAI,eAAe,CAAE;wBAC3C,CAAC,CAAC,MAAM,CAAC,QAAQ,EAAE,CAChB;oBACP,wCAAM,SAAS,EAAC,mFAAmF,IAChG,UAAU,CACN,CACH;gBAEL,MAAM,CAAC,cAAc,EAAE,IAAI,CAC1B,uCAAK,SAAS,EAAC,MAAM;oBACnB,8BAAC,qBAAQ,QAAE,MAAM,CAAC,WAAW,EAAE,CAAY,CACvC,CACP;gBAEA,YAAY,IAAI,CACf,uCACE,SAAS,EAAC,MAAM,EAChB,EAAE,EAAE,UAAG,uBAAa,CAAC,aAAa,CAChC,iBAAU,UAAU,mBAAgB,EACpC,MAAM,CACP,CAAE;oBAEH,8BAAC,mBAAM,IACL,UAAU,EAAC,eAAe,EAC1B,MAAM,EAAE,YAAY,EACpB,QAAQ,
|
|
1
|
+
{"version":3,"file":"Server.js","sourceRoot":"","sources":["../../../../src/containers/Servers/Server.tsx"],"names":[],"mappings":";;;;;;AAAA,gDAA0B;AAG1B,uCAAsC;AACtC,+CAAgF;AAEhF,2CAA2C;AAC3C,yCAA6D;AAOtD,IAAM,MAAM,GAAmC,UAAC,EAGtD;QAFC,UAAU,gBAAA,EACV,MAAM,YAAA;IAEN,IAAM,MAAM,GAAG,IAAA,oBAAS,GAAE,CAAC;IAE3B,IAAI,CAAC,MAAM,EAAE;QACX,OAAO,IAAI,CAAC;KACb;IAED,IAAM,YAAY,GAAG,uBAAa,CAAC,uBAAuB,CACxD,MAAM,CAAC,SAAS,EAAE,CACnB,CAAC;IACF,IAAM,eAAe,GAAG,MAAM,CAAC,eAAe,EAAE,CAAC;IACjD,IAAM,QAAQ,GAAG,MAAM,CAAC,QAAQ,EAAE,CAAC;IAEnC,OAAO,CACL,uCAAK,SAAS,EAAC,YAAY;QACzB,uCAAK,SAAS,EAAC,yBAAyB;YACtC,uCAAK,SAAS,EAAC,mDAAmD;gBAChE;oBACE,wCAAM,SAAS,EAAC,qBAAqB,IAAE,MAAM,CAAC,GAAG,EAAE,CAAQ;oBAC3D,wCAAM,SAAS,EAAC,wFAAwF,IACrG,eAAe;wBACd,CAAC,CAAC,UAAG,MAAM,CAAC,QAAQ,EAAE,cAAI,eAAe,CAAE;wBAC3C,CAAC,CAAC,MAAM,CAAC,QAAQ,EAAE,CAChB;oBACP,wCAAM,SAAS,EAAC,mFAAmF,IAChG,UAAU,CACN,CACH;gBAEL,MAAM,CAAC,cAAc,EAAE,IAAI,CAC1B,uCAAK,SAAS,EAAC,MAAM;oBACnB,8BAAC,qBAAQ,QAAE,MAAM,CAAC,WAAW,EAAE,CAAY,CACvC,CACP;gBAEA,YAAY,IAAI,CACf,uCACE,SAAS,EAAC,MAAM,EAChB,EAAE,EAAE,UAAG,uBAAa,CAAC,aAAa,CAChC,iBAAU,UAAU,mBAAgB,EACpC,MAAM,CACP,CAAE;oBAEH,8BAAC,mBAAM,IACL,UAAU,EAAC,eAAe,EAC1B,MAAM,EAAE,YAAY,EACpB,QAAQ,SACR,CACE,CACP;gBAGC,uCACE,EAAE,EAAE,UAAG,uBAAa,CAAC,aAAa,CAChC,iBAAU,UAAU,cAAW,EAC/B,MAAM,CACP,CAAE;oBAEH,8BAAC,mBAAQ,IAAC,QAAQ,EAAE,MAAM,CAAC,QAAQ,EAAE,EAAE,QAAQ,EAAE,QAAQ,GAAI,CACzD;gBAGP,MAAM,CAAC,QAAQ,EAAE,IAAI,CACpB,uCAAK,SAAS,EAAC,MAAM;oBACnB,8BAAC,qBAAQ,IACP,IAAI,EAAC,6BAA6B,EAClC,QAAQ,EAAE,MAAM,CAAC,QAAQ,EAAE,GAC3B,CACE,CACP;gBAED,8BAAC,uBAAU,IAAC,IAAI,EAAC,mBAAmB,EAAC,IAAI,EAAE,MAAM,GAAI;gBAEpD,MAAM,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,IAAI,CAC3B,uCAAK,SAAS,EAAC,MAAM;oBACnB,8BAAC,iBAAI,IAAC,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,GAAI,CACzB,CACP,CACG,CACF;QAEN,uCAAK,SAAS,EAAC,mBAAmB,GAAG,CACjC,CACP,CAAC;AACJ,CAAC,CAAC;AAvFW,QAAA,MAAM,UAuFjB","sourcesContent":["import React from 'react';\nimport { ServerInterface } from '@asyncapi/parser';\n\nimport { Security } from './Security';\nimport { Markdown, Schema, Bindings, Tags, Extensions } from '../../components';\n\nimport { useConfig } from '../../contexts';\nimport { CommonHelpers, SchemaHelpers } from '../../helpers';\n\ninterface Props {\n serverName: string;\n server: ServerInterface;\n}\n\nexport const Server: React.FunctionComponent<Props> = ({\n serverName,\n server,\n}) => {\n const config = useConfig();\n\n if (!server) {\n return null;\n }\n\n const urlVariables = SchemaHelpers.serverVariablesToSchema(\n server.variables(),\n );\n const protocolVersion = server.protocolVersion();\n const security = server.security();\n\n return (\n <div className=\"panel-item\">\n <div className=\"panel-item--center px-8\">\n <div className=\"shadow rounded bg-gray-200 p-4 border bg-gray-100\">\n <div>\n <span className=\"font-mono text-base\">{server.url()}</span>\n <span className=\"bg-teal-500 font-bold no-underline text-white uppercase rounded mx-2 px-2 py-1 text-sm\">\n {protocolVersion\n ? `${server.protocol()} ${protocolVersion}`\n : server.protocol()}\n </span>\n <span className=\"bg-blue-500 font-bold no-underline text-white uppercase rounded px-2 py-1 text-sm\">\n {serverName}\n </span>\n </div>\n\n {server.hasDescription() && (\n <div className=\"mt-2\">\n <Markdown>{server.description()}</Markdown>\n </div>\n )}\n\n {urlVariables && (\n <div\n className=\"mt-2\"\n id={`${CommonHelpers.getIdentifier(\n `server-${serverName}-url-variables`,\n config,\n )}`}\n >\n <Schema\n schemaName=\"URL Variables\"\n schema={urlVariables}\n expanded\n />\n </div>\n )}\n\n {\n <div\n id={`${CommonHelpers.getIdentifier(\n `server-${serverName}-security`,\n config,\n )}`}\n >\n <Security protocol={server.protocol()} security={security} />\n </div>\n }\n\n {server.bindings() && (\n <div className=\"mt-2\">\n <Bindings\n name=\"Server specific information\"\n bindings={server.bindings()}\n />\n </div>\n )}\n\n <Extensions name=\"Server Extensions\" item={server} />\n\n {server.tags().length > 0 && (\n <div className=\"mt-2\">\n <Tags tags={server.tags()} />\n </div>\n )}\n </div>\n </div>\n\n <div className=\"panel-item--right\" />\n </div>\n );\n};\n"]}
|
|
@@ -10,9 +10,7 @@ var contexts_1 = require("../../contexts");
|
|
|
10
10
|
var helpers_1 = require("../../helpers");
|
|
11
11
|
var constants_1 = require("../../constants");
|
|
12
12
|
var Servers = function () {
|
|
13
|
-
var servers = (0, contexts_1.useSpec)()
|
|
14
|
-
.servers()
|
|
15
|
-
.all();
|
|
13
|
+
var servers = (0, contexts_1.useSpec)().servers().all();
|
|
16
14
|
var config = (0, contexts_1.useConfig)();
|
|
17
15
|
if (!servers.length) {
|
|
18
16
|
return null;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Servers.js","sourceRoot":"","sources":["../../../../src/containers/Servers/Servers.tsx"],"names":[],"mappings":";;;;;;AAAA,gDAA0B;AAE1B,mCAAkC;AAElC,2CAAoD;AACpD,yCAA8C;AAC9C,6CAA+C;AAExC,IAAM,OAAO,GAA4B;IAC9C,IAAM,OAAO,GAAG,IAAA,kBAAO,GAAE
|
|
1
|
+
{"version":3,"file":"Servers.js","sourceRoot":"","sources":["../../../../src/containers/Servers/Servers.tsx"],"names":[],"mappings":";;;;;;AAAA,gDAA0B;AAE1B,mCAAkC;AAElC,2CAAoD;AACpD,yCAA8C;AAC9C,6CAA+C;AAExC,IAAM,OAAO,GAA4B;IAC9C,IAAM,OAAO,GAAG,IAAA,kBAAO,GAAE,CAAC,OAAO,EAAE,CAAC,GAAG,EAAE,CAAC;IAC1C,IAAM,MAAM,GAAG,IAAA,oBAAS,GAAE,CAAC;IAE3B,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE;QACnB,OAAO,IAAI,CAAC;KACb;IAED,OAAO,CACL,2CACE,EAAE,EAAE,UAAG,uBAAa,CAAC,aAAa,CAAC,SAAS,EAAE,MAAM,CAAC,CAAE,EACvD,SAAS,EAAC,OAAO;QAEjB,sCAAI,SAAS,EAAC,0CAA0C,IACrD,wBAAY,CACV;QACL,0CACG,OAAO,CAAC,GAAG,CAAC,UAAC,MAAM;YAClB,IAAM,UAAU,GAAG,MAAM,CAAC,EAAE,EAAE,CAAC;YAC/B,OAAO,CACL,sCACE,SAAS,EAAC,MAAM,EAChB,GAAG,EAAE,UAAU,EACf,EAAE,EAAE,UAAG,uBAAa,CAAC,aAAa,CAChC,iBAAU,UAAU,CAAE,EACtB,MAAM,CACP,CAAE;gBAEH,8BAAC,eAAM,IACL,UAAU,EAAE,UAAU,EACtB,MAAM,EAAE,MAAM,EACd,GAAG,EAAE,UAAU,GACf,CACC,CACN,CAAC;QACJ,CAAC,CAAC,CACC,CACG,CACX,CAAC;AACJ,CAAC,CAAC;AAvCW,QAAA,OAAO,WAuClB","sourcesContent":["import React from 'react';\n\nimport { Server } from './Server';\n\nimport { useConfig, useSpec } from '../../contexts';\nimport { CommonHelpers } from '../../helpers';\nimport { SERVERS_TEXT } from '../../constants';\n\nexport const Servers: React.FunctionComponent = () => {\n const servers = useSpec().servers().all();\n const config = useConfig();\n\n if (!servers.length) {\n return null;\n }\n\n return (\n <section\n id={`${CommonHelpers.getIdentifier('servers', config)}`}\n className=\"mt-16\"\n >\n <h2 className=\"2xl:w-7/12 text-3xl font-light mb-4 px-8\">\n {SERVERS_TEXT}\n </h2>\n <ul>\n {servers.map((server) => {\n const serverName = server.id();\n return (\n <li\n className=\"mb-4\"\n key={serverName}\n id={`${CommonHelpers.getIdentifier(\n `server-${serverName}`,\n config,\n )}`}\n >\n <Server\n serverName={serverName}\n server={server}\n key={serverName}\n />\n </li>\n );\n })}\n </ul>\n </section>\n );\n};\n"]}
|
|
@@ -48,9 +48,7 @@ var Sidebar = function () {
|
|
|
48
48
|
var _b = (0, react_1.useState)(false), showSidebar = _b[0], setShowSidebar = _b[1];
|
|
49
49
|
var asyncapi = (0, contexts_1.useSpec)();
|
|
50
50
|
var info = asyncapi.info();
|
|
51
|
-
var logo = (_a = info
|
|
52
|
-
.extensions()
|
|
53
|
-
.get('x-logo')) === null || _a === void 0 ? void 0 : _a.value();
|
|
51
|
+
var logo = (_a = info.extensions().get('x-logo')) === null || _a === void 0 ? void 0 : _a.value();
|
|
54
52
|
var components = asyncapi.components();
|
|
55
53
|
var messages = components === null || components === void 0 ? void 0 : components.messages().all();
|
|
56
54
|
var schemas = components === null || components === void 0 ? void 0 : components.schemas().all();
|
|
@@ -110,10 +108,9 @@ var ServersList = function () {
|
|
|
110
108
|
}
|
|
111
109
|
var specTagNames;
|
|
112
110
|
if (showServers === 'bySpecTags') {
|
|
113
|
-
specTagNames = ((_b = asyncapi
|
|
114
|
-
.
|
|
115
|
-
|
|
116
|
-
.all()) !== null && _b !== void 0 ? _b : []).map(function (tag) { return tag.name(); });
|
|
111
|
+
specTagNames = ((_b = asyncapi.info().tags().all()) !== null && _b !== void 0 ? _b : []).map(function (tag) {
|
|
112
|
+
return tag.name();
|
|
113
|
+
});
|
|
117
114
|
}
|
|
118
115
|
else {
|
|
119
116
|
var serverTagNamesSet_1 = new Set();
|
|
@@ -151,7 +148,7 @@ var OperationsList = function () {
|
|
|
151
148
|
var operations = asyncapi.operations().all();
|
|
152
149
|
var showOperations = (_a = sidebarConfig === null || sidebarConfig === void 0 ? void 0 : sidebarConfig.showOperations) !== null && _a !== void 0 ? _a : 'byDefault';
|
|
153
150
|
var processedOperations = operations.map(function (operation) {
|
|
154
|
-
var _a;
|
|
151
|
+
var _a, _b, _c;
|
|
155
152
|
var operationChannel = operation.channels();
|
|
156
153
|
var operationHrefId = helpers_1.CommonHelpers.getOperationIdentifier({
|
|
157
154
|
operation: operation,
|
|
@@ -159,17 +156,18 @@ var OperationsList = function () {
|
|
|
159
156
|
});
|
|
160
157
|
var type = helpers_1.CommonHelpers.getOperationType(operation);
|
|
161
158
|
var specV = asyncapi.version();
|
|
162
|
-
var version = specV.localeCompare('2.6.0', undefined, {
|
|
159
|
+
var version = specV.localeCompare('2.6.0', undefined, {
|
|
160
|
+
numeric: true,
|
|
161
|
+
});
|
|
163
162
|
var label = '';
|
|
164
163
|
if (version === 0) {
|
|
165
164
|
var operationChannels = operationChannel.all();
|
|
166
|
-
var channelAddress = (_a = operationChannels[0]) === null || _a === void 0 ? void 0 : _a.address();
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
: channelAddress !== null && channelAddress !== void 0 ? channelAddress : '';
|
|
165
|
+
var channelAddress = (_b = (_a = operationChannels[0]) === null || _a === void 0 ? void 0 : _a.address()) !== null && _b !== void 0 ? _b : '';
|
|
166
|
+
var operationSummary = operation.summary();
|
|
167
|
+
label = operationSummary !== null && operationSummary !== void 0 ? operationSummary : channelAddress;
|
|
170
168
|
}
|
|
171
169
|
else {
|
|
172
|
-
label = operation.id();
|
|
170
|
+
label = (_c = operation.id()) !== null && _c !== void 0 ? _c : '';
|
|
173
171
|
}
|
|
174
172
|
return {
|
|
175
173
|
name: "".concat(type, "-").concat(operation.id()),
|
|
@@ -189,10 +187,9 @@ var OperationsList = function () {
|
|
|
189
187
|
}
|
|
190
188
|
var operationTagNames;
|
|
191
189
|
if (showOperations === 'bySpecTags') {
|
|
192
|
-
operationTagNames = ((_b = asyncapi
|
|
193
|
-
.
|
|
194
|
-
|
|
195
|
-
.all()) !== null && _b !== void 0 ? _b : []).map(function (tag) { return tag.name(); });
|
|
190
|
+
operationTagNames = ((_b = asyncapi.info().tags().all()) !== null && _b !== void 0 ? _b : []).map(function (tag) {
|
|
191
|
+
return tag.name();
|
|
192
|
+
});
|
|
196
193
|
}
|
|
197
194
|
else {
|
|
198
195
|
var operationTagNamesSet_1 = new Set();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Sidebar.js","sourceRoot":"","sources":["../../../../src/containers/Sidebar/Sidebar.tsx"],"names":[],"mappings":"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","sourcesContent":["import React, { useState, useContext } from 'react';\nimport { CollapseButton } from '../../components';\nimport { useConfig, useSpec } from '../../contexts';\nimport { CommonHelpers } from '../../helpers';\nimport { PayloadType } from '../../types';\nimport { TagObject, filterObjectsByTags } from '../../helpers/sidebar';\n\nconst SidebarContext = React.createContext<{\n setShowSidebar: React.Dispatch<React.SetStateAction<boolean>>;\n}>({\n setShowSidebar: (value: boolean | ((prevValue: boolean) => boolean)) => value,\n});\n\nexport const Sidebar: React.FunctionComponent = () => {\n const [showSidebar, setShowSidebar] = useState(false);\n const asyncapi = useSpec();\n\n const info = asyncapi.info();\n const logo = info\n .extensions()\n .get('x-logo')\n ?.value();\n const components = asyncapi.components();\n const messages = components?.messages().all();\n const schemas = components?.schemas().all();\n const hasOperations = asyncapi.operations().length > 0;\n\n const messagesList = messages?.length > 0 && (\n <li className=\"mb-3 mt-9\">\n <a\n className=\"text-xs uppercase text-gray-700 mt-10 mb-4 font-thin hover:text-gray-900\"\n href=\"#messages\"\n onClick={() => setShowSidebar(false)}\n >\n Messages\n </a>\n <ul className=\"text-sm mt-2\">\n {messages.map((message, index) => (\n <li key={`menu-message-list-${message.name() ?? index}`}>\n <a\n className=\"flex break-words no-underline text-gray-700 mt-2 hover:text-gray-900\"\n href={`#message-${message.name()}`}\n onClick={() => setShowSidebar(false)}\n >\n <div className=\"break-all inline-block\">{message.id()}</div>\n </a>\n </li>\n ))}\n </ul>\n </li>\n );\n\n const schemasList = schemas?.length > 0 && (\n <li className=\"mb-3 mt-9\">\n <a\n className=\"text-xs uppercase text-gray-700 mt-10 mb-4 font-thin hover:text-gray-900\"\n href=\"#schemas\"\n onClick={() => setShowSidebar(false)}\n >\n Schemas\n </a>\n <ul className=\"text-sm mt-2\">\n {schemas.map((schema, index) => (\n <li key={`menu-message-list-${schema.id() ?? index}`}>\n <a\n className=\"flex break-words no-underline text-gray-700 mt-2 hover:text-gray-900\"\n href={`#schema-${schema.id()}`}\n onClick={() => setShowSidebar(false)}\n >\n <div className=\"break-all inline-block\">{schema.id()}</div>\n </a>\n </li>\n ))}\n </ul>\n </li>\n );\n\n const operationList = hasOperations && (\n <>\n <li className=\"mb-3 mt-9\">\n <a\n className=\"text-xs uppercase text-gray-700 mt-10 mb-4 font-thin hover:text-gray-900\"\n href=\"#operations\"\n onClick={() => setShowSidebar(false)}\n >\n Operations\n </a>\n <OperationsList />\n </li>\n {messagesList}\n {schemasList}\n </>\n );\n\n return (\n <SidebarContext.Provider value={{ setShowSidebar }}>\n <div\n className=\"burger-menu rounded-full h-16 w-16 bg-white fixed bottom-16 right-8 flex items-center justify-center z-30 cursor-pointer shadow-md bg-teal-500\"\n onClick={() => setShowSidebar(prev => !prev)}\n data-lol={showSidebar}\n >\n <svg\n viewBox=\"0 0 100 70\"\n width=\"40\"\n height=\"30\"\n className=\"fill-current text-gray-200\"\n >\n <rect width=\"100\" height=\"10\" />\n <rect y=\"30\" width=\"100\" height=\"10\" />\n <rect y=\"60\" width=\"100\" height=\"10\" />\n </svg>\n </div>\n <div\n className={`${\n showSidebar ? 'block fixed w-full' : 'hidden'\n } sidebar relative w-64 max-h-screen h-full bg-gray-200 shadow z-20`}\n >\n <div\n className={`${\n showSidebar ? 'w-full' : ''\n } block fixed max-h-screen h-full font-sans px-4 pt-8 pb-16 overflow-y-auto bg-gray-200`}\n >\n <div className=\"sidebar--content\">\n <div>\n {logo ? (\n <img\n src={logo}\n alt={`${info.title()} logo, ${info.version()} version`}\n />\n ) : (\n <h1 className=\"text-2xl font-light\">\n {info.title()} {info.version()}\n </h1>\n )}\n </div>\n\n <ul className=\"text-sm mt-10 relative\">\n <li className=\"mb-3\">\n <a\n className=\"text-gray-700 no-underline hover:text-gray-900\"\n href=\"#introduction\"\n onClick={() => setShowSidebar(false)}\n >\n Introduction\n </a>\n </li>\n {asyncapi.servers().length > 0 && (\n <li className=\"mb-3 mt-9\">\n <a\n className=\"text-xs uppercase text-gray-700 mt-10 mb-4 font-thin hover:text-gray-900\"\n href=\"#servers\"\n onClick={() => setShowSidebar(false)}\n >\n Servers\n </a>\n <ServersList />\n </li>\n )}\n {operationList}\n </ul>\n </div>\n </div>\n </div>\n </SidebarContext.Provider>\n );\n};\n\nconst ServersList: React.FunctionComponent = () => {\n const sidebarConfig = useConfig().sidebar;\n const asyncapi = useSpec();\n const servers = asyncapi.servers().all();\n const showServers = sidebarConfig?.showServers ?? 'byDefault';\n\n if (showServers === 'byDefault') {\n return (\n <ul className=\"text-sm mt-2\">\n {servers.map(server => (\n <ServerItem serverName={server.id()} key={server.id()} />\n ))}\n </ul>\n );\n }\n\n let specTagNames: string[];\n if (showServers === 'bySpecTags') {\n specTagNames = (\n asyncapi\n .info()\n .tags()\n .all() ?? []\n ).map(tag => tag.name());\n } else {\n const serverTagNamesSet = new Set<string>();\n servers.forEach(server => {\n server.tags().forEach(t => serverTagNamesSet.add(t.name()));\n });\n specTagNames = Array.from(serverTagNamesSet);\n }\n\n const serializedServers: TagObject[] = servers.map(server => ({\n name: server.id(),\n tags: server.tags(),\n data: {},\n }));\n const { tagged, untagged } = filterObjectsByTags(\n specTagNames,\n serializedServers,\n );\n return (\n <ul className=\"text-sm mt-2\">\n {Array.from(tagged.entries()).map(([tag, taggedServers]) => (\n <li key={tag}>\n <ItemsByTagItem tagName={tag}>\n {taggedServers.map(({ name: serverName }) => (\n <ServerItem serverName={serverName} key={serverName} />\n ))}\n </ItemsByTagItem>\n </li>\n ))}\n {untagged.length > 0 ? (\n <li>\n <ItemsByTagItem tagName=\"Untagged\">\n {untagged.map(({ name: serverName }) => (\n <ServerItem serverName={serverName} key={serverName} />\n ))}\n </ItemsByTagItem>\n </li>\n ) : null}\n </ul>\n );\n};\n\ninterface OperationItemProps {\n label: string;\n type: PayloadType;\n operationHrefId: string;\n}\nconst OperationsList: React.FunctionComponent = () => {\n const config = useConfig();\n const sidebarConfig = config.sidebar;\n const asyncapi = useSpec();\n const operations = asyncapi.operations().all();\n const showOperations = sidebarConfig?.showOperations ?? 'byDefault';\n\n const processedOperations: Array<TagObject<\n OperationItemProps\n >> = operations.map(operation => {\n const operationChannel = operation.channels();\n const operationHrefId = CommonHelpers.getOperationIdentifier({\n operation,\n config,\n });\n const type = CommonHelpers.getOperationType(operation);\n\n const specV = asyncapi.version();\n const version = specV.localeCompare('2.6.0', undefined, { numeric: true });\n let label: string = '';\n if (version === 0) {\n // old version uses different labels for the operations\n const operationChannels = operationChannel.all();\n const channelAddress = operationChannels[0]?.address();\n label = operation.hasSummary()\n ? operation.summary()!\n : channelAddress ?? '';\n } else {\n label = operation.id()!;\n }\n return {\n name: `${type}-${operation.id()}`,\n tags: operation.tags(),\n data: {\n label,\n type,\n operationHrefId,\n },\n };\n });\n\n if (showOperations === 'byDefault') {\n return (\n <ul className=\"text-sm mt-2\">\n {processedOperations.map(({ name, data }) => (\n <OperationItem key={name} {...data} />\n ))}\n </ul>\n );\n }\n\n let operationTagNames: string[];\n if (showOperations === 'bySpecTags') {\n operationTagNames = (\n asyncapi\n .info()\n .tags()\n .all() ?? []\n ).map(tag => tag.name());\n } else {\n const operationTagNamesSet = new Set<string>();\n operations.forEach(operation => {\n operation\n .tags()\n .all()\n .forEach(t => operationTagNamesSet.add(t.name()));\n });\n operationTagNames = Array.from(operationTagNamesSet);\n }\n\n const { tagged, untagged } = filterObjectsByTags(\n operationTagNames,\n processedOperations,\n );\n return (\n <ul className=\"text-sm mt-2\">\n {Array.from(tagged.entries()).map(([tag, taggedOperations]) => (\n <li key={tag}>\n <ItemsByTagItem tagName={tag}>\n {taggedOperations.map(({ name, data }) => (\n <OperationItem key={name} {...data} />\n ))}\n </ItemsByTagItem>\n </li>\n ))}\n {untagged.length > 0 ? (\n <li>\n <ItemsByTagItem tagName=\"Untagged\">\n {untagged.map(({ name, data }) => (\n <OperationItem key={name} {...data} />\n ))}\n </ItemsByTagItem>\n </li>\n ) : null}\n </ul>\n );\n};\n\nconst OperationItem: React.FunctionComponent<OperationItemProps> = ({\n type,\n operationHrefId,\n label,\n}) => {\n const config = useConfig();\n const { setShowSidebar } = useContext(SidebarContext);\n const specV = useSpec().version();\n const version = specV.localeCompare('2.6.0', undefined, { numeric: true });\n const isAsyncAPIv2 = version === 0;\n const {\n typeLabel,\n backgroundColor,\n } = CommonHelpers.getOperationDesignInformation({\n type,\n config,\n isAsyncAPIv2,\n });\n\n return (\n <li key={`menu-operation-list-${operationHrefId}`}>\n <a\n className=\"flex no-underline text-gray-700 mb-2 hover:text-gray-900\"\n href={`#${operationHrefId}`}\n onClick={() => setShowSidebar(false)}\n >\n <span\n className={`${backgroundColor} font-bold h-6 no-underline text-white uppercase p-1 mr-2 rounded text-xs`}\n title={typeLabel}\n >\n {typeLabel}\n </span>\n <span className=\"break-all inline-block\">{label}</span>\n </a>\n </li>\n );\n};\n\ninterface ServerItemProps {\n serverName: string;\n}\n\nconst ServerItem: React.FunctionComponent<ServerItemProps> = ({\n serverName,\n}) => {\n const { setShowSidebar } = useContext(SidebarContext);\n\n return (\n <li>\n <a\n className=\"flex no-underline text-gray-700 mb-2 hover:text-gray-900\"\n href={`#server-${serverName}`}\n onClick={() => setShowSidebar(false)}\n >\n <span className=\"break-all inline-block\">{serverName}</span>\n </a>\n </li>\n );\n};\n\ninterface ItemsByTagItemProps {\n tagName: string;\n}\n\nconst ItemsByTagItem: React.FunctionComponent<ItemsByTagItemProps> = ({\n tagName,\n children,\n}) => {\n const [expand, setExpand] = useState(false);\n\n return (\n <div>\n <CollapseButton\n onClick={() => setExpand(prev => !prev)}\n chevronProps={{\n className: expand ? '-rotate-180' : '-rotate-90',\n }}\n >\n <span className=\"text-sm inline-block mt-1 font-extralight\">\n {tagName}\n </span>\n </CollapseButton>\n <ul className={`${expand ? 'block' : 'hidden'} text-sm mt-2 font-light`}>\n {children}\n </ul>\n </div>\n );\n};\n"]}
|
|
1
|
+
{"version":3,"file":"Sidebar.js","sourceRoot":"","sources":["../../../../src/containers/Sidebar/Sidebar.tsx"],"names":[],"mappings":"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","sourcesContent":["import React, { useState, useContext } from 'react';\nimport { CollapseButton } from '../../components';\nimport { useConfig, useSpec } from '../../contexts';\nimport { CommonHelpers } from '../../helpers';\nimport { PayloadType } from '../../types';\nimport { TagObject, filterObjectsByTags } from '../../helpers/sidebar';\n\nconst SidebarContext = React.createContext<{\n setShowSidebar: React.Dispatch<React.SetStateAction<boolean>>;\n}>({\n setShowSidebar: (value: boolean | ((prevValue: boolean) => boolean)) => value,\n});\n\nexport const Sidebar: React.FunctionComponent = () => {\n const [showSidebar, setShowSidebar] = useState(false);\n const asyncapi = useSpec();\n\n const info = asyncapi.info();\n // eslint-disable-next-line @typescript-eslint/no-unsafe-assignment\n const logo = info.extensions().get('x-logo')?.value();\n const components = asyncapi.components();\n const messages = components?.messages().all();\n const schemas = components?.schemas().all();\n const hasOperations = asyncapi.operations().length > 0;\n\n const messagesList = messages?.length > 0 && (\n <li className=\"mb-3 mt-9\">\n <a\n className=\"text-xs uppercase text-gray-700 mt-10 mb-4 font-thin hover:text-gray-900\"\n href=\"#messages\"\n onClick={() => setShowSidebar(false)}\n >\n Messages\n </a>\n <ul className=\"text-sm mt-2\">\n {messages.map((message, index) => (\n <li key={`menu-message-list-${message.name() ?? index}`}>\n <a\n className=\"flex break-words no-underline text-gray-700 mt-2 hover:text-gray-900\"\n href={`#message-${message.name()}`}\n onClick={() => setShowSidebar(false)}\n >\n <div className=\"break-all inline-block\">{message.id()}</div>\n </a>\n </li>\n ))}\n </ul>\n </li>\n );\n\n const schemasList = schemas?.length > 0 && (\n <li className=\"mb-3 mt-9\">\n <a\n className=\"text-xs uppercase text-gray-700 mt-10 mb-4 font-thin hover:text-gray-900\"\n href=\"#schemas\"\n onClick={() => setShowSidebar(false)}\n >\n Schemas\n </a>\n <ul className=\"text-sm mt-2\">\n {schemas.map((schema, index) => (\n <li key={`menu-message-list-${schema.id() ?? index}`}>\n <a\n className=\"flex break-words no-underline text-gray-700 mt-2 hover:text-gray-900\"\n href={`#schema-${schema.id()}`}\n onClick={() => setShowSidebar(false)}\n >\n <div className=\"break-all inline-block\">{schema.id()}</div>\n </a>\n </li>\n ))}\n </ul>\n </li>\n );\n\n const operationList = hasOperations && (\n <>\n <li className=\"mb-3 mt-9\">\n <a\n className=\"text-xs uppercase text-gray-700 mt-10 mb-4 font-thin hover:text-gray-900\"\n href=\"#operations\"\n onClick={() => setShowSidebar(false)}\n >\n Operations\n </a>\n <OperationsList />\n </li>\n {messagesList}\n {schemasList}\n </>\n );\n\n return (\n <SidebarContext.Provider value={{ setShowSidebar }}>\n <div\n className=\"burger-menu rounded-full h-16 w-16 bg-white fixed bottom-16 right-8 flex items-center justify-center z-30 cursor-pointer shadow-md bg-teal-500\"\n onClick={() => setShowSidebar((prev) => !prev)}\n data-lol={showSidebar}\n >\n <svg\n viewBox=\"0 0 100 70\"\n width=\"40\"\n height=\"30\"\n className=\"fill-current text-gray-200\"\n >\n <rect width=\"100\" height=\"10\" />\n <rect y=\"30\" width=\"100\" height=\"10\" />\n <rect y=\"60\" width=\"100\" height=\"10\" />\n </svg>\n </div>\n <div\n className={`${\n showSidebar ? 'block fixed w-full' : 'hidden'\n } sidebar relative w-64 max-h-screen h-full bg-gray-200 shadow z-20`}\n >\n <div\n className={`${\n showSidebar ? 'w-full' : ''\n } block fixed max-h-screen h-full font-sans px-4 pt-8 pb-16 overflow-y-auto bg-gray-200`}\n >\n <div className=\"sidebar--content\">\n <div>\n {logo ? (\n // eslint-disable-next-line @next/next/no-img-element\n <img\n // eslint-disable-next-line @typescript-eslint/no-unsafe-assignment\n src={logo}\n alt={`${info.title()} logo, ${info.version()} version`}\n />\n ) : (\n <h1 className=\"text-2xl font-light\">\n {info.title()} {info.version()}\n </h1>\n )}\n </div>\n\n <ul className=\"text-sm mt-10 relative\">\n <li className=\"mb-3\">\n <a\n className=\"text-gray-700 no-underline hover:text-gray-900\"\n href=\"#introduction\"\n onClick={() => setShowSidebar(false)}\n >\n Introduction\n </a>\n </li>\n {asyncapi.servers().length > 0 && (\n <li className=\"mb-3 mt-9\">\n <a\n className=\"text-xs uppercase text-gray-700 mt-10 mb-4 font-thin hover:text-gray-900\"\n href=\"#servers\"\n onClick={() => setShowSidebar(false)}\n >\n Servers\n </a>\n <ServersList />\n </li>\n )}\n {operationList}\n </ul>\n </div>\n </div>\n </div>\n </SidebarContext.Provider>\n );\n};\n\nconst ServersList: React.FunctionComponent = () => {\n const sidebarConfig = useConfig().sidebar;\n const asyncapi = useSpec();\n const servers = asyncapi.servers().all();\n const showServers = sidebarConfig?.showServers ?? 'byDefault';\n\n if (showServers === 'byDefault') {\n return (\n <ul className=\"text-sm mt-2\">\n {servers.map((server) => (\n <ServerItem serverName={server.id()} key={server.id()} />\n ))}\n </ul>\n );\n }\n\n let specTagNames: string[];\n if (showServers === 'bySpecTags') {\n specTagNames = (asyncapi.info().tags().all() ?? []).map((tag) =>\n tag.name(),\n );\n } else {\n const serverTagNamesSet = new Set<string>();\n servers.forEach((server) => {\n server.tags().forEach((t) => serverTagNamesSet.add(t.name()));\n });\n specTagNames = Array.from(serverTagNamesSet);\n }\n\n const serializedServers: TagObject[] = servers.map((server) => ({\n name: server.id(),\n tags: server.tags(),\n data: {},\n }));\n const { tagged, untagged } = filterObjectsByTags(\n specTagNames,\n serializedServers,\n );\n return (\n <ul className=\"text-sm mt-2\">\n {Array.from(tagged.entries()).map(([tag, taggedServers]) => (\n <li key={tag}>\n <ItemsByTagItem tagName={tag}>\n {taggedServers.map(({ name: serverName }) => (\n <ServerItem serverName={serverName} key={serverName} />\n ))}\n </ItemsByTagItem>\n </li>\n ))}\n {untagged.length > 0 ? (\n <li>\n <ItemsByTagItem tagName=\"Untagged\">\n {untagged.map(({ name: serverName }) => (\n <ServerItem serverName={serverName} key={serverName} />\n ))}\n </ItemsByTagItem>\n </li>\n ) : null}\n </ul>\n );\n};\n\ninterface OperationItemProps {\n label: string;\n type: PayloadType;\n operationHrefId: string;\n}\nconst OperationsList: React.FunctionComponent = () => {\n const config = useConfig();\n const sidebarConfig = config.sidebar;\n const asyncapi = useSpec();\n const operations = asyncapi.operations().all();\n const showOperations = sidebarConfig?.showOperations ?? 'byDefault';\n\n const processedOperations: TagObject<OperationItemProps>[] = operations.map(\n (operation) => {\n const operationChannel = operation.channels();\n const operationHrefId = CommonHelpers.getOperationIdentifier({\n operation,\n config,\n });\n const type = CommonHelpers.getOperationType(operation);\n\n const specV = asyncapi.version();\n const version = specV.localeCompare('2.6.0', undefined, {\n numeric: true,\n });\n let label = '';\n if (version === 0) {\n // old version uses different labels for the operations\n const operationChannels = operationChannel.all();\n const channelAddress = operationChannels[0]?.address() ?? '';\n const operationSummary = operation.summary();\n label = operationSummary ?? channelAddress;\n } else {\n label = operation.id() ?? '';\n }\n return {\n name: `${type}-${operation.id()}`,\n tags: operation.tags(),\n data: {\n label,\n type,\n operationHrefId,\n },\n };\n },\n );\n\n if (showOperations === 'byDefault') {\n return (\n <ul className=\"text-sm mt-2\">\n {processedOperations.map(({ name, data }) => (\n <OperationItem key={name} {...data} />\n ))}\n </ul>\n );\n }\n\n let operationTagNames: string[];\n if (showOperations === 'bySpecTags') {\n operationTagNames = (asyncapi.info().tags().all() ?? []).map((tag) =>\n tag.name(),\n );\n } else {\n const operationTagNamesSet = new Set<string>();\n operations.forEach((operation) => {\n operation\n .tags()\n .all()\n .forEach((t) => operationTagNamesSet.add(t.name()));\n });\n operationTagNames = Array.from(operationTagNamesSet);\n }\n\n const { tagged, untagged } = filterObjectsByTags(\n operationTagNames,\n processedOperations,\n );\n return (\n <ul className=\"text-sm mt-2\">\n {Array.from(tagged.entries()).map(([tag, taggedOperations]) => (\n <li key={tag}>\n <ItemsByTagItem tagName={tag}>\n {taggedOperations.map(({ name, data }) => (\n <OperationItem key={name} {...data} />\n ))}\n </ItemsByTagItem>\n </li>\n ))}\n {untagged.length > 0 ? (\n <li>\n <ItemsByTagItem tagName=\"Untagged\">\n {untagged.map(({ name, data }) => (\n <OperationItem key={name} {...data} />\n ))}\n </ItemsByTagItem>\n </li>\n ) : null}\n </ul>\n );\n};\n\nconst OperationItem: React.FunctionComponent<OperationItemProps> = ({\n type,\n operationHrefId,\n label,\n}) => {\n const config = useConfig();\n const { setShowSidebar } = useContext(SidebarContext);\n const specV = useSpec().version();\n const version = specV.localeCompare('2.6.0', undefined, { numeric: true });\n const isAsyncAPIv2 = version === 0;\n const { typeLabel, backgroundColor } =\n CommonHelpers.getOperationDesignInformation({\n type,\n config,\n isAsyncAPIv2,\n });\n\n return (\n <li key={`menu-operation-list-${operationHrefId}`}>\n <a\n className=\"flex no-underline text-gray-700 mb-2 hover:text-gray-900\"\n href={`#${operationHrefId}`}\n onClick={() => setShowSidebar(false)}\n >\n <span\n className={`${backgroundColor} font-bold h-6 no-underline text-white uppercase p-1 mr-2 rounded text-xs`}\n title={typeLabel}\n >\n {typeLabel}\n </span>\n <span className=\"break-all inline-block\">{label}</span>\n </a>\n </li>\n );\n};\n\ninterface ServerItemProps {\n serverName: string;\n}\n\nconst ServerItem: React.FunctionComponent<ServerItemProps> = ({\n serverName,\n}) => {\n const { setShowSidebar } = useContext(SidebarContext);\n\n return (\n <li>\n <a\n className=\"flex no-underline text-gray-700 mb-2 hover:text-gray-900\"\n href={`#server-${serverName}`}\n onClick={() => setShowSidebar(false)}\n >\n <span className=\"break-all inline-block\">{serverName}</span>\n </a>\n </li>\n );\n};\n\ninterface ItemsByTagItemProps {\n tagName: string;\n children: React.ReactNode;\n}\n\nconst ItemsByTagItem: React.FunctionComponent<ItemsByTagItemProps> = ({\n tagName,\n children,\n}) => {\n const [expand, setExpand] = useState(false);\n\n return (\n <div>\n <CollapseButton\n onClick={() => setExpand((prev) => !prev)}\n chevronProps={{\n className: expand ? '-rotate-180' : '-rotate-90',\n }}\n >\n <span className=\"text-sm inline-block mt-1 font-extralight\">\n {tagName}\n </span>\n </CollapseButton>\n <ul className={`${expand ? 'block' : 'hidden'} text-sm mt-2 font-light`}>\n {children}\n </ul>\n </div>\n );\n};\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useSpec.js","sourceRoot":"","sources":["../../../src/contexts/useSpec.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,6CAA0C;AAG7B,QAAA,oBAAoB,
|
|
1
|
+
{"version":3,"file":"useSpec.js","sourceRoot":"","sources":["../../../src/contexts/useSpec.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,6CAA0C;AAG7B,QAAA,oBAAoB,GAE/B,eAAK,CAAC,aAAa,CAA4B,IAAW,CAAC,CAAC;AAE9D,SAAgB,OAAO;IACrB,OAAO,IAAA,kBAAU,EAAC,4BAAoB,CAAC,CAAC;AAC1C,CAAC;AAFD,0BAEC","sourcesContent":["import React, { useContext } from 'react';\nimport { AsyncAPIDocumentInterface } from '@asyncapi/parser';\n\nexport const SpecificationContext =\n // eslint-disable-next-line @typescript-eslint/no-unsafe-argument, @typescript-eslint/no-explicit-any\n React.createContext<AsyncAPIDocumentInterface>(null as any);\n\nexport function useSpec() {\n return useContext(SpecificationContext);\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bindingsHelpers.js","sourceRoot":"","sources":["../../../src/helpers/bindingsHelpers.ts"],"names":[],"mappings":";;;AAAA;IAAA;QAOU,qBAAgB,GAAa;YACnC,YAAY;YACZ,eAAe;YACf,gBAAgB;YAChB,WAAW;YACX,YAAY;YACZ,UAAU;SACX,CAAC;
|
|
1
|
+
{"version":3,"file":"bindingsHelpers.js","sourceRoot":"","sources":["../../../src/helpers/bindingsHelpers.ts"],"names":[],"mappings":";;;AAAA;IAAA;QAOU,qBAAgB,GAAa;YACnC,YAAY;YACZ,eAAe;YACf,gBAAgB;YAChB,WAAW;YACX,YAAY;YACZ,UAAU;SACX,CAAC;IAUJ,CAAC;IARC,uCAAc,GAAd,UAAe,OAAe,EAAE,WAAmB;QACjD,OAAO,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,UAAG,WAAW,cAAI,OAAO,CAAE,CAAC,CAAC;IACrE,CAAC;IAGD,iCAAQ,GAAR,UAAS,KAAU;QACjB,OAAO,CAAC,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,CAAC;IAC9C,CAAC;IACH,qBAAC;AAAD,CAAC,AAxBD,IAwBC;AACY,QAAA,cAAc,GAAG,IAAI,cAAc,EAAE,CAAC","sourcesContent":["class BindingsHelper {\n /**\n *\n * Since we do not have a reliable way to identify schema objects via a spec, schema or similar - using a list of known\n * binding properties of type SchemaObject\n * Change it when AsyncAPI will support JSON Schema specification (definition) for bindings\n */\n private schemaObjectKeys: string[] = [\n 'http.query',\n 'kafka.groupId',\n 'kafka.clientId',\n 'kafka.key',\n 'ws.headers',\n 'ws.query',\n ];\n\n isSchemaObject(context: string, bindingType: string): boolean {\n return this.schemaObjectKeys.includes(`${bindingType}.${context}`);\n }\n\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n isObject(value: any): boolean {\n return !!value && typeof value === 'object';\n }\n}\nexport const bindingsHelper = new BindingsHelper();\n"]}
|
|
@@ -22,10 +22,8 @@ var CommonHelpers = (function () {
|
|
|
22
22
|
return types_1.PayloadType.SEND;
|
|
23
23
|
}
|
|
24
24
|
}
|
|
25
|
-
if (operation.isReceive()) {
|
|
26
|
-
|
|
27
|
-
return types_1.PayloadType.REPLY;
|
|
28
|
-
}
|
|
25
|
+
if (operation.isReceive() && operation.reply() !== undefined) {
|
|
26
|
+
return types_1.PayloadType.REPLY;
|
|
29
27
|
}
|
|
30
28
|
return types_1.PayloadType.RECEIVE;
|
|
31
29
|
};
|
|
@@ -39,10 +37,8 @@ var CommonHelpers = (function () {
|
|
|
39
37
|
return CommonHelpers.getIdentifier("operation-".concat(types_1.PayloadType.SEND, "-").concat(operation.id()), config);
|
|
40
38
|
}
|
|
41
39
|
}
|
|
42
|
-
if (operation.isReceive()) {
|
|
43
|
-
|
|
44
|
-
return CommonHelpers.getIdentifier("operation-".concat(types_1.PayloadType.REPLY, "-").concat(operation.id()), config);
|
|
45
|
-
}
|
|
40
|
+
if (operation.isReceive() && operation.reply() !== undefined) {
|
|
41
|
+
return CommonHelpers.getIdentifier("operation-".concat(types_1.PayloadType.REPLY, "-").concat(operation.id()), config);
|
|
46
42
|
}
|
|
47
43
|
return CommonHelpers.getIdentifier("operation-".concat(types_1.PayloadType.RECEIVE, "-").concat(operation.id()), config);
|
|
48
44
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"common.js","sourceRoot":"","sources":["../../../src/helpers/common.ts"],"names":[],"mappings":";;;AAEA,kCAAuC;AACvC,0CAOsB;
|
|
1
|
+
{"version":3,"file":"common.js","sourceRoot":"","sources":["../../../src/helpers/common.ts"],"names":[],"mappings":"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","sourcesContent":["import { ConfigInterface } from '../config';\nimport { OperationInterface } from '@asyncapi/parser';\nimport { PayloadType } from '../types';\nimport {\n PUBLISH_LABEL_DEFAULT_TEXT,\n RECEIVE_TEXT_LABEL_DEFAULT_TEXT,\n REPLIER_LABEL_DEFAULT_TEXT,\n REQUEST_LABEL_DEFAULT_TEXT,\n SEND_LABEL_DEFAULT_TEXT,\n SUBSCRIBE_LABEL_DEFAULT_TEXT,\n} from '../constants';\n// eslint-disable-next-line @typescript-eslint/no-extraneous-class\nexport class CommonHelpers {\n static getIdentifier(id: string, config?: ConfigInterface) {\n const schemaID = config?.schemaID;\n if (schemaID) {\n return `${schemaID}-${id}`;\n }\n return id;\n }\n static getOperationType(operation: OperationInterface) {\n if (operation.isSend()) {\n if (operation.reply() !== undefined) {\n return PayloadType.REQUEST;\n } else {\n return PayloadType.SEND;\n }\n }\n if (operation.isReceive() && operation.reply() !== undefined) {\n return PayloadType.REPLY;\n }\n return PayloadType.RECEIVE;\n }\n static getOperationIdentifier({\n operation,\n config,\n }: {\n operation: OperationInterface;\n config: ConfigInterface;\n }) {\n if (operation.isSend()) {\n if (operation.reply() !== undefined) {\n return CommonHelpers.getIdentifier(\n `operation-${PayloadType.REQUEST}-${operation.id()}`,\n config,\n );\n } else {\n return CommonHelpers.getIdentifier(\n `operation-${PayloadType.SEND}-${operation.id()}`,\n config,\n );\n }\n }\n if (operation.isReceive() && operation.reply() !== undefined) {\n return CommonHelpers.getIdentifier(\n `operation-${PayloadType.REPLY}-${operation.id()}`,\n config,\n );\n }\n return CommonHelpers.getIdentifier(\n `operation-${PayloadType.RECEIVE}-${operation.id()}`,\n config,\n );\n }\n static getOperationDesignInformation({\n type,\n config,\n isAsyncAPIv2,\n }: {\n type: PayloadType;\n config: ConfigInterface;\n isAsyncAPIv2: boolean;\n }): { borderColor: string; typeLabel: string; backgroundColor: string } {\n if (type === PayloadType.RECEIVE) {\n return {\n borderColor: 'border-green-600 text-green-600',\n backgroundColor: 'bg-green-600',\n typeLabel: !isAsyncAPIv2\n ? config.receiveLabel ?? RECEIVE_TEXT_LABEL_DEFAULT_TEXT\n : config.publishLabel ?? PUBLISH_LABEL_DEFAULT_TEXT,\n };\n }\n if (type === PayloadType.REPLY) {\n return {\n borderColor: 'border-orange-600 text-orange-600',\n backgroundColor: 'bg-orange-600',\n typeLabel: config.replyLabel ?? REPLIER_LABEL_DEFAULT_TEXT,\n };\n }\n if (type === PayloadType.REQUEST) {\n return {\n borderColor: 'border-red-600 text-red-600',\n backgroundColor: 'bg-red-600',\n typeLabel: config.requestLabel ?? REQUEST_LABEL_DEFAULT_TEXT,\n };\n }\n return {\n borderColor: 'border-blue-600 text-blue-500',\n backgroundColor: 'bg-blue-600',\n typeLabel: !isAsyncAPIv2\n ? config.sendLabel ?? SEND_LABEL_DEFAULT_TEXT\n : config.subscribeLabel ?? SUBSCRIBE_LABEL_DEFAULT_TEXT,\n };\n }\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"marked.js","sourceRoot":"","sources":["../../../src/helpers/marked.ts"],"names":[],"mappings":";;;;;;AAAA,iCAAgC;AAGhC,+DAAyC;
|
|
1
|
+
{"version":3,"file":"marked.js","sourceRoot":"","sources":["../../../src/helpers/marked.ts"],"names":[],"mappings":";;;;;;AAAA,iCAAgC;AAGhC,+DAAyC;AAqChC,eArCF,cAAI,CAqCE;AAlCb,yEAAmD;AAEnD,cAAI,CAAC,gBAAgB,CAAC,MAAM,EAAE,cAAI,CAAC,CAAC;AAGpC,yEAAmD;AAEnD,cAAI,CAAC,gBAAgB,CAAC,MAAM,EAAE,cAAI,CAAC,CAAC;AAGpC,yEAAmD;AAEnD,cAAI,CAAC,gBAAgB,CAAC,MAAM,EAAE,cAAI,CAAC,CAAC;AAEpC,IAAM,aAAa,GAAyB;IAC1C,UAAU,EAAE,gBAAgB;IAC5B,SAAS,EAAE,UAAC,IAAI,EAAE,QAAQ;QAExB,IAAI,CAAC,cAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,EAAE;YAC/B,OAAO,IAAI,CAAC;SACb;QACD,IAAI;YAEF,OAAO,cAAI,CAAC,SAAS,CAAC,IAAI,EAAE,EAAE,QAAQ,UAAA,EAAE,CAAC,CAAC,KAAK,CAAC;SACjD;QAAC,OAAO,CAAC,EAAE;YACV,OAAO,IAAI,CAAC;SACb;IACH,CAAC;CACF,CAAC;AAEF,SAAgB,cAAc,CAAC,OAAe;IAC5C,OAAO,IAAA,eAAM,EAAC,OAAO,EAAE,aAAa,CAAC,CAAC;AACxC,CAAC;AAFD,wCAEC","sourcesContent":["import { marked } from 'marked';\n\n// @ts-expect-error no types exists\nimport hljs from 'highlight.js/lib/core';\n\n// @ts-expect-error no types exists\nimport json from 'highlight.js/lib/languages/json';\n// eslint-disable-next-line @typescript-eslint/no-unsafe-call, @typescript-eslint/no-unsafe-member-access\nhljs.registerLanguage('json', json);\n\n// @ts-expect-error no types exists\nimport yaml from 'highlight.js/lib/languages/yaml';\n// eslint-disable-next-line @typescript-eslint/no-unsafe-member-access, @typescript-eslint/no-unsafe-call\nhljs.registerLanguage('yaml', yaml);\n\n// @ts-expect-error no types exists\nimport bash from 'highlight.js/lib/languages/bash';\n// eslint-disable-next-line @typescript-eslint/no-unsafe-call, @typescript-eslint/no-unsafe-member-access\nhljs.registerLanguage('bash', bash);\n\nconst markedOptions: marked.MarkedOptions = {\n langPrefix: 'hljs language-',\n highlight: (code, language) => {\n // eslint-disable-next-line @typescript-eslint/no-unsafe-call, @typescript-eslint/no-unsafe-member-access\n if (!hljs.getLanguage(language)) {\n return code;\n }\n try {\n // eslint-disable-next-line @typescript-eslint/no-unsafe-return, @typescript-eslint/no-unsafe-call, @typescript-eslint/no-unsafe-member-access\n return hljs.highlight(code, { language }).value;\n } catch (e) {\n return code;\n }\n },\n};\n\nexport function renderMarkdown(content: string): string {\n return marked(content, markedOptions);\n}\n\nexport { hljs };\n"]}
|
|
@@ -52,7 +52,7 @@ var MessageHelpers = (function () {
|
|
|
52
52
|
if (payload === null || payload === void 0 ? void 0 : payload.examples()) {
|
|
53
53
|
return (_a = payload.examples()) === null || _a === void 0 ? void 0 : _a.map(function (example) { return ({ example: example }); });
|
|
54
54
|
}
|
|
55
|
-
return;
|
|
55
|
+
return undefined;
|
|
56
56
|
};
|
|
57
57
|
MessageHelpers.getHeadersExamples = function (msg) {
|
|
58
58
|
var _a;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"message.js","sourceRoot":"","sources":["../../../src/helpers/message.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"message.js","sourceRoot":"","sources":["../../../src/helpers/message.ts"],"names":[],"mappings":"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","sourcesContent":["import { MessageInterface } from '@asyncapi/parser';\nimport { sample } from 'openapi-sampler';\n\nimport { MessageExample } from '../types';\n\n// eslint-disable-next-line @typescript-eslint/no-extraneous-class\nexport class MessageHelpers {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n static generateExample(schema: any, options: any = {}) {\n try {\n // eslint-disable-next-line @typescript-eslint/no-unsafe-return, @typescript-eslint/no-unsafe-argument\n return this.sanitizeExample(sample(schema, options)) || '';\n } catch (e) {\n return '';\n }\n }\n\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n static sanitizeExample(schema: any): any {\n if (typeof schema === 'object' && schema && !Array.isArray(schema)) {\n // eslint-disable-next-line @typescript-eslint/no-unsafe-argument\n return Object.entries(schema).reduce(\n (obj, [propertyName, property]) => {\n if (\n !propertyName.startsWith('x-parser-') &&\n !propertyName.startsWith('x-schema-private-')\n ) {\n obj[propertyName] = this.sanitizeExample(property);\n }\n return obj;\n },\n {} as Record<string, unknown>,\n );\n }\n return schema;\n }\n\n static getPayloadExamples(\n msg: MessageInterface,\n ): MessageExample[] | undefined {\n const examples = msg.examples().all();\n\n if (examples.some((e) => e.hasPayload())) {\n const messageExamples = examples\n .flatMap((e) => {\n if (!e.payload()) {\n return;\n }\n return {\n name: e.name(),\n summary: e.summary(),\n example: e.payload(),\n };\n })\n .filter(Boolean) as MessageExample[];\n\n if (messageExamples.length > 0) {\n return messageExamples;\n }\n }\n\n const payload = msg.payload();\n if (payload?.examples()) {\n // eslint-disable-next-line @typescript-eslint/no-unsafe-assignment\n return payload.examples()?.map((example) => ({ example }));\n }\n\n return undefined;\n }\n\n static getHeadersExamples(\n msg: MessageInterface,\n ): MessageExample[] | undefined {\n const examples = msg.examples().all();\n if (examples.some((e) => e.hasHeaders())) {\n const messageExamples = examples\n .flatMap((e) => {\n if (!e.hasHeaders()) {\n return;\n }\n return {\n name: e.name(),\n summary: e.summary(),\n example: e.headers(),\n };\n })\n .filter(Boolean) as MessageExample[];\n\n if (messageExamples.length > 0) {\n return messageExamples;\n }\n }\n\n const headers = msg.headers();\n if (headers?.examples()) {\n // eslint-disable-next-line @typescript-eslint/no-unsafe-assignment\n return headers.examples()?.map((example) => ({ example }));\n }\n return undefined;\n }\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"parser.js","sourceRoot":"","sources":["../../../src/helpers/parser.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,2CAAqE;AACrE,yEAAsE;AACtE,2EAAyE;AACzE,mEAAgE;AAIhE,0CAAsD;AAEtD,IAAM,cAAc,GAAG,IAAI,eAAc,EAAE,CAAC;AAC5C,cAAc,CAAC,oBAAoB,CAAC,IAAA,2CAAmB,GAAE,CAAC,CAAC;AAC3D,cAAc,CAAC,oBAAoB,CAAC,IAAA,qCAAgB,GAAE,CAAC,CAAC;AACxD,cAAc,CAAC,oBAAoB,CAAC,IAAA,8CAAqB,GAAE,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"parser.js","sourceRoot":"","sources":["../../../src/helpers/parser.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,2CAAqE;AACrE,yEAAsE;AACtE,2EAAyE;AACzE,mEAAgE;AAIhE,0CAAsD;AAEtD,IAAM,cAAc,GAAG,IAAI,eAAc,EAAE,CAAC;AAC5C,cAAc,CAAC,oBAAoB,CAAC,IAAA,2CAAmB,GAAE,CAAC,CAAC;AAC3D,cAAc,CAAC,oBAAoB,CAAC,IAAA,qCAAgB,GAAE,CAAC,CAAC;AACxD,cAAc,CAAC,oBAAoB,CAAC,IAAA,8CAAqB,GAAE,CAAC,CAAC;AAG7D;IAAA;IA4CA,CAAC;IA3Cc,YAAK,GAAlB,UAEE,OAAqB,EAErB,aAAmB;;;;;;;wBAII,WAAM,cAAc,CAAC,KAAK,CAAC,OAAO,EAAE,aAAa,CAAC,EAAA;;wBAA/D,aAAa,CAAA,SAAkD,CAAA,SAAvD;wBAChB,WAAO,EAAE,QAAQ,EAAE,UAAQ,EAAE,EAAC;;;wBAE9B,WAAO,IAAI,CAAC,WAAW,CAAC,KAAkB,CAAC,EAAC;;;;;KAE/C;IAEY,mBAAY,GAAzB,UACE,GAA4B,EAE5B,aAAmB;;;;;;;wBAGX,UAAU,GAAG,IAAA,gBAAO,EACxB,cAAc,EACd,GAAG,CAAC,GAAG,EAEP,GAAG,CAAC,cAAqB,CAC1B,CAAC;wBAEmB,WAAM,UAAU,CAAC,KAAK,CAAC,aAAa,CAAC,EAAA;;wBAAlD,aAAa,CAAA,SAAqC,CAAA,SAA1C;wBAChB,WAAO,EAAE,QAAQ,EAAE,UAAQ,EAAE,EAAC;;;wBAE9B,WAAO,IAAI,CAAC,WAAW,CAAC,KAAkB,CAAC,EAAC;;;;;KAE/C;IAEc,kBAAW,GAAG,UAAC,GAAgB;QAC5C,IAAI,GAAG,CAAC,IAAI,KAAK,kCAAsB,EAAE;YACvC,OAAO;gBACL,KAAK,EAAE,GAAG;aACX,CAAC;SACH;QACD,OAAO,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC;IACxB,CAAC,CAAC;IACJ,aAAC;CAAA,AA5CD,IA4CC;AA5CY,wBAAM","sourcesContent":["import { Parser as AsyncapiParser, fromURL } from '@asyncapi/parser';\nimport { OpenAPISchemaParser } from '@asyncapi/openapi-schema-parser';\nimport { ProtoBuffSchemaParser } from '@asyncapi/protobuf-schema-parser';\nimport { AvroSchemaParser } from '@asyncapi/avro-schema-parser';\n\nimport { ErrorObject, ParserReturn, FetchingSchemaInterface } from '../types';\n\nimport { VALIDATION_ERRORS_TYPE } from '../constants';\n\nconst asyncapiParser = new AsyncapiParser();\nasyncapiParser.registerSchemaParser(OpenAPISchemaParser());\nasyncapiParser.registerSchemaParser(AvroSchemaParser());\nasyncapiParser.registerSchemaParser(ProtoBuffSchemaParser());\n\n// eslint-disable-next-line @typescript-eslint/no-extraneous-class\nexport class Parser {\n static async parse(\n // eslint-disable-next-line @typescript-eslint/no-redundant-type-constituents, @typescript-eslint/no-explicit-any\n content: string | any,\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n parserOptions?: any,\n ): Promise<ParserReturn> {\n try {\n // eslint-disable-next-line @typescript-eslint/no-unsafe-argument\n const { document } = await asyncapiParser.parse(content, parserOptions);\n return { asyncapi: document };\n } catch (err) {\n return this.handleError(err as ErrorObject);\n }\n }\n\n static async parseFromUrl(\n arg: FetchingSchemaInterface,\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n parserOptions?: any,\n ): Promise<ParserReturn> {\n try {\n const fromResult = fromURL(\n asyncapiParser,\n arg.url,\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n arg.requestOptions as any,\n );\n // eslint-disable-next-line @typescript-eslint/no-unsafe-argument\n const { document } = await fromResult.parse(parserOptions);\n return { asyncapi: document };\n } catch (err) {\n return this.handleError(err as ErrorObject);\n }\n }\n\n private static handleError = (err: ErrorObject): ParserReturn => {\n if (err.type === VALIDATION_ERRORS_TYPE) {\n return {\n error: err,\n };\n }\n return { error: err };\n };\n}\n"]}
|
|
@@ -145,27 +145,18 @@ var SchemaHelpers = (function () {
|
|
|
145
145
|
return constraints;
|
|
146
146
|
};
|
|
147
147
|
SchemaHelpers.isExpandable = function (schema) {
|
|
148
|
+
var _a, _b, _c, _d, _e, _f, _g, _h;
|
|
148
149
|
var type = this.inferType(schema);
|
|
149
150
|
type = Array.isArray(type) ? type : [type];
|
|
150
151
|
if (type.includes('object') || type.includes('array')) {
|
|
151
152
|
return true;
|
|
152
153
|
}
|
|
153
|
-
if (schema.oneOf() ||
|
|
154
|
-
schema.
|
|
155
|
-
schema.allOf() ||
|
|
156
|
-
Object.keys(schema.properties() || {}).length > 0 ||
|
|
157
|
-
schema.items() ||
|
|
158
|
-
schema.not() ||
|
|
159
|
-
schema.if() ||
|
|
160
|
-
schema.then() ||
|
|
161
|
-
schema.else()) {
|
|
154
|
+
if ((_h = (((_c = (_b = (_a = schema.oneOf()) !== null && _a !== void 0 ? _a : schema.anyOf()) !== null && _b !== void 0 ? _b : schema.allOf()) !== null && _c !== void 0 ? _c : Object.keys((_d = schema.properties()) !== null && _d !== void 0 ? _d : {}).length > 0) ||
|
|
155
|
+
((_g = (_f = (_e = schema.items()) !== null && _e !== void 0 ? _e : schema.not()) !== null && _f !== void 0 ? _f : schema.if()) !== null && _g !== void 0 ? _g : schema.then()))) !== null && _h !== void 0 ? _h : schema.else()) {
|
|
162
156
|
return true;
|
|
163
157
|
}
|
|
164
158
|
var customExtensions = this.getCustomExtensions(schema);
|
|
165
|
-
|
|
166
|
-
return true;
|
|
167
|
-
}
|
|
168
|
-
return false;
|
|
159
|
+
return !!(customExtensions && Object.keys(customExtensions).length);
|
|
169
160
|
};
|
|
170
161
|
SchemaHelpers.serverVariablesToSchema = function (urlVariables) {
|
|
171
162
|
var _a;
|
|
@@ -299,8 +290,7 @@ var SchemaHelpers = (function () {
|
|
|
299
290
|
var additionalType = additionalItems === true
|
|
300
291
|
? SchemaCustomTypes.ANY
|
|
301
292
|
: this.toSchemaType(additionalItems);
|
|
302
|
-
return "tuple<".concat(types ||
|
|
303
|
-
SchemaCustomTypes.UNKNOWN, ", ...optional<").concat(additionalType, ">>");
|
|
293
|
+
return "tuple<".concat(types || SchemaCustomTypes.UNKNOWN, ", ...optional<").concat(additionalType, ">>");
|
|
304
294
|
}
|
|
305
295
|
return "tuple<".concat(types || SchemaCustomTypes.UNKNOWN, ">");
|
|
306
296
|
};
|
|
@@ -315,7 +305,7 @@ var SchemaHelpers = (function () {
|
|
|
315
305
|
if (schema.allOf()) {
|
|
316
306
|
return 'allOf';
|
|
317
307
|
}
|
|
318
|
-
return;
|
|
308
|
+
return undefined;
|
|
319
309
|
};
|
|
320
310
|
SchemaHelpers.inferType = function (schema) {
|
|
321
311
|
var types = schema.type();
|