@asyncapi/react-component 1.1.0 → 1.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (38) hide show
  1. package/browser/index.js +21 -21
  2. package/browser/standalone/index.js +21 -21
  3. package/browser/standalone/without-parser.js +11 -11
  4. package/browser/without-parser.js +11 -11
  5. package/lib/cjs/config/config.js.map +1 -1
  6. package/lib/cjs/constants.js +10 -2
  7. package/lib/cjs/constants.js.map +1 -1
  8. package/lib/cjs/containers/Messages/Message.js +1 -1
  9. package/lib/cjs/containers/Messages/Message.js.map +1 -1
  10. package/lib/cjs/containers/Operations/Operation.js +183 -15
  11. package/lib/cjs/containers/Operations/Operation.js.map +1 -1
  12. package/lib/cjs/containers/Operations/Operations.js +16 -4
  13. package/lib/cjs/containers/Operations/Operations.js.map +1 -1
  14. package/lib/cjs/types.js +4 -2
  15. package/lib/cjs/types.js.map +1 -1
  16. package/lib/esm/config/config.js.map +1 -1
  17. package/lib/esm/constants.js +8 -0
  18. package/lib/esm/constants.js.map +1 -1
  19. package/lib/esm/containers/Messages/Message.js +1 -1
  20. package/lib/esm/containers/Messages/Message.js.map +1 -1
  21. package/lib/esm/containers/Operations/Operation.js +159 -14
  22. package/lib/esm/containers/Operations/Operation.js.map +1 -1
  23. package/lib/esm/containers/Operations/Operations.js +16 -4
  24. package/lib/esm/containers/Operations/Operations.js.map +1 -1
  25. package/lib/esm/types.js +4 -2
  26. package/lib/esm/types.js.map +1 -1
  27. package/lib/types/config/config.d.ts +4 -0
  28. package/lib/types/config/config.d.ts.map +1 -1
  29. package/lib/types/constants.d.ts +8 -0
  30. package/lib/types/constants.d.ts.map +1 -1
  31. package/lib/types/containers/Operations/Operation.d.ts +3 -0
  32. package/lib/types/containers/Operations/Operation.d.ts.map +1 -1
  33. package/lib/types/containers/Operations/Operations.d.ts.map +1 -1
  34. package/lib/types/types.d.ts +4 -2
  35. package/lib/types/types.d.ts.map +1 -1
  36. package/package.json +2 -2
  37. package/styles/default.css +27 -1
  38. package/styles/default.min.css +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../../../src/config/config.ts"],"names":[],"mappings":"","sourcesContent":["export interface ConfigInterface {\n schemaID?: string;\n show?: ShowConfig;\n expand?: ExpandConfig;\n sidebar?: SideBarConfig;\n parserOptions?: any;\n publishLabel?: string;\n subscribeLabel?: string;\n}\n\nexport interface ShowConfig {\n sidebar?: boolean;\n info?: boolean;\n servers?: boolean;\n operations?: boolean;\n messages?: boolean;\n schemas?: boolean;\n errors?: boolean;\n}\n\nexport interface ExpandConfig {\n messageExamples?: boolean;\n}\n\nexport interface SideBarConfig {\n showServers?: 'byDefault' | 'bySpecTags' | 'byServersTags';\n showOperations?: 'byDefault' | 'bySpecTags' | 'byOperationsTags';\n}\n"]}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../../../src/config/config.ts"],"names":[],"mappings":"","sourcesContent":["export interface ConfigInterface {\n schemaID?: string;\n show?: ShowConfig;\n expand?: ExpandConfig;\n sidebar?: SideBarConfig;\n parserOptions?: any;\n publishLabel?: string;\n sendLabel?: string;\n subscribeLabel?: string;\n receiveLabel?: string;\n requestLabel?: string;\n replyLabel?: string;\n}\n\nexport interface ShowConfig {\n sidebar?: boolean;\n info?: boolean;\n servers?: boolean;\n operations?: boolean;\n messages?: boolean;\n schemas?: boolean;\n errors?: boolean;\n}\n\nexport interface ExpandConfig {\n messageExamples?: boolean;\n}\n\nexport interface SideBarConfig {\n showServers?: 'byDefault' | 'bySpecTags' | 'byServersTags';\n showOperations?: 'byDefault' | 'bySpecTags' | 'byOperationsTags';\n}\n"]}
@@ -28,8 +28,16 @@ export var SPECIFICATION_TEXT = 'Specification';
28
28
  export var DEPRECATED_TEXT = 'Deprecated';
29
29
  export var PUBLISH_TEXT = 'Publish';
30
30
  export var PUBLISH_LABEL_DEFAULT_TEXT = 'PUB';
31
+ export var SEND_TEXT = 'Send';
32
+ export var SEND_LABEL_DEFAULT_TEXT = 'SEND';
31
33
  export var SUBSCRIBE_TEXT = 'Subscribe';
32
34
  export var SUBSCRIBE_LABEL_DEFAULT_TEXT = 'SUB';
35
+ export var RECEIVE_TEXT = 'Receive';
36
+ export var RECEIVE_TEXT_LABEL_DEFAULT_TEXT = 'RECEIVE';
37
+ export var REQUEST_TEXT = 'Request';
38
+ export var REQUEST_LABEL_DEFAULT_TEXT = 'REQUEST';
39
+ export var REPLIER_TEXT = 'Reply';
40
+ export var REPLIER_LABEL_DEFAULT_TEXT = 'REPLY';
33
41
  export var REQUIRED_TEXT = 'Required';
34
42
  export var GENERATED_TEXT = 'Generated';
35
43
  export var SERVERS_TEXT = 'Servers';
@@ -1 +1 @@
1
- {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/constants.ts"],"names":[],"mappings":"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","sourcesContent":["export const CSS_PREFIX = 'asyncapi';\nexport const CONTENT_TYPES_SITE =\n 'https://www.iana.org/assignments/media-types';\nexport const COLLAPSE_ALL_TEXT = 'Collapse All';\nexport const EXPAND_ALL_TEXT = 'Expand All';\n\nexport const VALIDATION_ERRORS_TYPE =\n 'https://github.com/asyncapi/parser-js/validation-errors';\nexport const SERVERS = 'Servers';\n\nexport const ONE_OF_PAYLOADS_TEXT = 'One of those payloads:';\nexport const ANY_OF_PAYLOADS_TEXT = 'Any of those payloads:';\nexport const GENERATED_BADGE_TEXT = 'generated';\nexport const ONE_OF_FOLLOWING_MESSAGES_PUBLISH_TEXT =\n 'You can send one of the following messages:';\nexport const ONE_OF_FOLLOWING_MESSAGES_PUBLISH_SINGLE_TEXT =\n 'You can send the following message:';\nexport const ONE_OF_FOLLOWING_MESSAGES_SUBSCRIBE_TEXT =\n 'You can subscribe to one of the following messages:';\nexport const ONE_OF_FOLLOWING_MESSAGES_SUBSCRIBE_SINGLE_TEXT =\n 'You can subscribe to the following message:';\nexport const RAW_MESSAGE_SUBSCRIBE_TEXT =\n 'You can subscribe to the following message:';\nexport const RAW_MESSAGE_PUBLISH_TEXT = 'You can send the following message:';\n\nexport const CONTACT_TEXT = 'Contact';\nexport const NAM_TEXTE = 'Name';\nexport const URL_TEXT = 'Url';\nexport const EMAIL_TEXT = 'Email';\nexport const LICENSE_TEXT = 'License';\nexport const TERMS_OF_SERVICE_TEXT = 'Terms of service';\nexport const URL_SUPPORT_TEXT = 'Support';\nexport const EMAIL_SUPPORT_TEXT = 'Email support';\nexport const EXTERAL_DOCUMENTATION_TEXT = 'External Docs';\nexport const LOCATION_TEXT = 'Location';\nexport const TYPE_TEXT = 'Type';\nexport const SPECIFICATION_TEXT = 'Specification';\n\nexport const DEPRECATED_TEXT = 'Deprecated';\nexport const PUBLISH_TEXT = 'Publish';\nexport const PUBLISH_LABEL_DEFAULT_TEXT = 'PUB';\nexport const SUBSCRIBE_TEXT = 'Subscribe';\nexport const SUBSCRIBE_LABEL_DEFAULT_TEXT = 'SUB';\nexport const REQUIRED_TEXT = 'Required';\nexport const GENERATED_TEXT = 'Generated';\n\nexport const SERVERS_TEXT = 'Servers';\nexport const OPERATIONS_TEXT = 'Operations';\nexport const MESSAGES_TEXT = 'Messages';\nexport const SCHEMAS_TEXT = 'Schemas';\n\nexport const CHANNELS_TEXT = 'Channels';\nexport const PARAMETERS_TEXT = 'Parameters';\nexport const HEADERS_TEXT = 'Headers';\nexport const MESSAGE_HEADERS_TEXT = 'Message Headers';\nexport const HEADERS_EXAMPLE_TEXT = 'Example of headers';\nexport const TAGS_TEXT = 'Tags';\nexport const PAYLOAD_TEXT = 'Payload';\nexport const MESSAGE_PAYLOAD_TEXT = 'Message Payload';\nexport const PAYLOAD_EXAMPLE_TEXT = 'Example of payload';\nexport const SCHEMA_EXAMPLE_TEXT = 'Example';\n\nexport const SERVER_BINDINGS_TEXT = 'Server Bindings';\nexport const CHANNEL_BINDINGS_TEXT = 'Channel Bindings';\nexport const OPERATION_BINDINGS_TEXT = 'Operation Bindings';\nexport const MESSAGE_BINDINGS_TEXT = 'Message Bindings';\n\nexport const BINDINGS_SCHEMA_OBJECT_TEXT = 'Schema Object';\n\nexport const NONE_TEXT = 'None';\nexport const ANY_TEXT = 'Any';\nexport const ERROR_TEXT = 'Error';\nexport const EXPAND_ERROR_BUTTON_TEXT = 'Expand';\nexport const COLLAPSE_ERROR_BUTTON_TEXT = 'Collapse';\n\nexport const SECURITY_TEXT = 'Security';\n\nexport const URL_VARIABLES_TEXT = 'URL Variables';\n"]}
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/constants.ts"],"names":[],"mappings":"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","sourcesContent":["export const CSS_PREFIX = 'asyncapi';\nexport const CONTENT_TYPES_SITE =\n 'https://www.iana.org/assignments/media-types';\nexport const COLLAPSE_ALL_TEXT = 'Collapse All';\nexport const EXPAND_ALL_TEXT = 'Expand All';\n\nexport const VALIDATION_ERRORS_TYPE =\n 'https://github.com/asyncapi/parser-js/validation-errors';\nexport const SERVERS = 'Servers';\n\nexport const ONE_OF_PAYLOADS_TEXT = 'One of those payloads:';\nexport const ANY_OF_PAYLOADS_TEXT = 'Any of those payloads:';\nexport const GENERATED_BADGE_TEXT = 'generated';\nexport const ONE_OF_FOLLOWING_MESSAGES_PUBLISH_TEXT =\n 'You can send one of the following messages:';\nexport const ONE_OF_FOLLOWING_MESSAGES_PUBLISH_SINGLE_TEXT =\n 'You can send the following message:';\nexport const ONE_OF_FOLLOWING_MESSAGES_SUBSCRIBE_TEXT =\n 'You can subscribe to one of the following messages:';\nexport const ONE_OF_FOLLOWING_MESSAGES_SUBSCRIBE_SINGLE_TEXT =\n 'You can subscribe to the following message:';\nexport const RAW_MESSAGE_SUBSCRIBE_TEXT =\n 'You can subscribe to the following message:';\nexport const RAW_MESSAGE_PUBLISH_TEXT = 'You can send the following message:';\n\nexport const CONTACT_TEXT = 'Contact';\nexport const NAM_TEXTE = 'Name';\nexport const URL_TEXT = 'Url';\nexport const EMAIL_TEXT = 'Email';\nexport const LICENSE_TEXT = 'License';\nexport const TERMS_OF_SERVICE_TEXT = 'Terms of service';\nexport const URL_SUPPORT_TEXT = 'Support';\nexport const EMAIL_SUPPORT_TEXT = 'Email support';\nexport const EXTERAL_DOCUMENTATION_TEXT = 'External Docs';\nexport const LOCATION_TEXT = 'Location';\nexport const TYPE_TEXT = 'Type';\nexport const SPECIFICATION_TEXT = 'Specification';\n\nexport const DEPRECATED_TEXT = 'Deprecated';\nexport const PUBLISH_TEXT = 'Publish';\nexport const PUBLISH_LABEL_DEFAULT_TEXT = 'PUB';\nexport const SEND_TEXT = 'Send';\nexport const SEND_LABEL_DEFAULT_TEXT = 'SEND';\nexport const SUBSCRIBE_TEXT = 'Subscribe';\nexport const SUBSCRIBE_LABEL_DEFAULT_TEXT = 'SUB';\nexport const RECEIVE_TEXT = 'Receive';\nexport const RECEIVE_TEXT_LABEL_DEFAULT_TEXT = 'RECEIVE';\nexport const REQUEST_TEXT = 'Request';\nexport const REQUEST_LABEL_DEFAULT_TEXT = 'REQUEST';\nexport const REPLIER_TEXT = 'Reply';\nexport const REPLIER_LABEL_DEFAULT_TEXT = 'REPLY';\nexport const REQUIRED_TEXT = 'Required';\nexport const GENERATED_TEXT = 'Generated';\n\nexport const SERVERS_TEXT = 'Servers';\nexport const OPERATIONS_TEXT = 'Operations';\nexport const MESSAGES_TEXT = 'Messages';\nexport const SCHEMAS_TEXT = 'Schemas';\n\nexport const CHANNELS_TEXT = 'Channels';\nexport const PARAMETERS_TEXT = 'Parameters';\nexport const HEADERS_TEXT = 'Headers';\nexport const MESSAGE_HEADERS_TEXT = 'Message Headers';\nexport const HEADERS_EXAMPLE_TEXT = 'Example of headers';\nexport const TAGS_TEXT = 'Tags';\nexport const PAYLOAD_TEXT = 'Payload';\nexport const MESSAGE_PAYLOAD_TEXT = 'Message Payload';\nexport const PAYLOAD_EXAMPLE_TEXT = 'Example of payload';\nexport const SCHEMA_EXAMPLE_TEXT = 'Example';\n\nexport const SERVER_BINDINGS_TEXT = 'Server Bindings';\nexport const CHANNEL_BINDINGS_TEXT = 'Channel Bindings';\nexport const OPERATION_BINDINGS_TEXT = 'Operation Bindings';\nexport const MESSAGE_BINDINGS_TEXT = 'Message Bindings';\n\nexport const BINDINGS_SCHEMA_OBJECT_TEXT = 'Schema Object';\n\nexport const NONE_TEXT = 'None';\nexport const ANY_TEXT = 'Any';\nexport const ERROR_TEXT = 'Error';\nexport const EXPAND_ERROR_BUTTON_TEXT = 'Expand';\nexport const COLLAPSE_ERROR_BUTTON_TEXT = 'Collapse';\n\nexport const SECURITY_TEXT = 'Security';\n\nexport const URL_VARIABLES_TEXT = 'URL Variables';\n"]}
@@ -27,7 +27,7 @@ export var Message = function (_a) {
27
27
  "#",
28
28
  index)),
29
29
  title && React.createElement("span", { className: "text-gray-700 mr-2" }, title),
30
- React.createElement("span", { className: "border text-orange-600 rounded text-xs py-0 px-2" }, message.id())),
30
+ React.createElement("span", { className: "border text-orange-600 rounded text-xs py-0 px-2" }, messageId)),
31
31
  summary && React.createElement("p", { className: "text-gray-600 text-sm" }, summary),
32
32
  showInfoList && (React.createElement("ul", { className: "leading-normal mt-2 mb-4 space-x-2 space-y-2" },
33
33
  contentType && (React.createElement("li", { className: "inline-block" },
@@ -1 +1 @@
1
- {"version":3,"file":"Message.js","sourceRoot":"","sources":["../../../../src/containers/Messages/Message.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAG1B,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EACL,IAAI,EACJ,QAAQ,EACR,MAAM,EACN,QAAQ,EACR,IAAI,EACJ,UAAU,GACX,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAC9C,OAAO,EACL,kBAAkB,EAClB,0BAA0B,GAC3B,MAAM,iBAAiB,CAAC;AASzB,MAAM,CAAC,IAAM,OAAO,GAAmC,UAAC,EAKvD;QAJC,OAAO,aAAA,EACP,WAAW,iBAAA,EACX,KAAK,WAAA,EACL,oBAAoB,EAApB,YAAY,mBAAG,KAAK,KAAA;IAEpB,IAAM,MAAM,GAAG,SAAS,EAAE,CAAC;IAE3B,IAAI,CAAC,OAAO,EAAE;QACZ,OAAO,IAAI,CAAC;KACb;IAGD,IAAM,SAAS,GAAG,OAAO,OAAO,CAAC,EAAE,KAAK,UAAU,IAAI,OAAO,CAAC,EAAE,EAAE,CAAC;IACnE,IAAM,KAAK,GAAG,OAAO,CAAC,KAAK,EAAE,CAAC;IAC9B,IAAM,OAAO,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC;IAClC,IAAM,OAAO,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC;IAClC,IAAM,OAAO,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC;IAClC,IAAM,aAAa,GAAG,OAAO,CAAC,aAAa,EAAE,CAAC;IAE9C,IAAM,WAAW,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;IAC1C,IAAM,YAAY,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC;IAC5C,IAAM,YAAY,GAAG,WAAW,IAAI,YAAY,CAAC;IAEjD,OAAO,CACL,6BAAK,SAAS,EAAC,YAAY;QACzB,6BAAK,SAAS,EAAC,yBAAyB;YACtC,6BAAK,SAAS,EAAC,uCAAuC;gBACpD;oBACG,KAAK,KAAK,SAAS,IAAI,CACtB,8BAAM,SAAS,EAAC,8BAA8B;;wBAAG,KAAK,CAAQ,CAC/D;oBACA,KAAK,IAAI,8BAAM,SAAS,EAAC,oBAAoB,IAAE,KAAK,CAAQ;oBAC7D,8BAAM,SAAS,EAAC,kDAAkD,IAC/D,OAAO,CAAC,EAAE,EAAE,CACR,CACH;gBAEL,OAAO,IAAI,2BAAG,SAAS,EAAC,uBAAuB,IAAE,OAAO,CAAK;gBAE7D,YAAY,IAAI,CACf,4BAAI,SAAS,EAAC,8CAA8C;oBACzD,WAAW,IAAI,CACd,4BAAI,SAAS,EAAC,cAAc;wBAC1B,oBAAC,IAAI,IACH,SAAS,EAAC,4JAA4J,EACtK,IAAI,EAAE,UAAG,kBAAkB,cAAI,WAAW,CAAE;4BAE5C,kCAAO,WAAW,CAAQ,CACrB,CACJ,CACN;oBACA,YAAY,IAAI,CACf,4BAAI,SAAS,EAAC,cAAc;wBAC1B,oBAAC,IAAI,IACH,SAAS,EAAC,4JAA4J,EACtK,IAAI,EAAE,YAAY,CAAC,GAAG,EAAE;4BAExB,kCAAO,0BAA0B,CAAQ,CACpC,CACJ,CACN,CACE,CACN;gBAEA,SAAS,IAAI,CACZ,6BAAK,SAAS,EAAC,2CAA2C;oBACxD,6BAAK,SAAS,EAAC,uBAAuB;;wBAEpC,8BAAM,SAAS,EAAC,uDAAuD,IACpE,SAAS,CACL,CACH,CACF,CACP;gBAEA,aAAa,IAAI,CAChB,6BAAK,SAAS,EAAC,2CAA2C;oBACxD,6BAAK,SAAS,EAAC,uBAAuB;;wBAEpC,8BAAM,SAAS,EAAC,uDAAuD,IACpE,aAAa,CAAC,QAAQ,EAAE,CACpB,CACH;oBAEL,aAAa,CAAC,cAAc,EAAE,IAAI,CACjC,6BAAK,SAAS,EAAC,MAAM;wBACnB,oBAAC,QAAQ,QAAE,aAAa,CAAC,WAAW,EAAE,CAAY,CAC9C,CACP,CACG,CACP;gBAEA,OAAO,CAAC,cAAc,EAAE,IAAI,CAC3B,6BAAK,SAAS,EAAC,MAAM;oBACnB,oBAAC,QAAQ,QAAE,OAAO,CAAC,WAAW,EAAE,CAAY,CACxC,CACP;gBAEA,OAAO,IAAI,CACV,6BACE,SAAS,EAAC,MAAM,EAChB,EAAE,EACA,WAAW;wBACT,CAAC,CAAC,aAAa,CAAC,aAAa,CACzB,kBAAW,WAAW,aAAU,EAChC,MAAM,CACP;wBACH,CAAC,CAAC,SAAS;oBAGf,oBAAC,MAAM,IAAC,UAAU,EAAC,SAAS,EAAC,MAAM,EAAE,OAAO,GAAI,CAC5C,CACP;gBACA,OAAO,IAAI,CACV,6BACE,SAAS,EAAC,MAAM,EAChB,EAAE,EACA,WAAW;wBACT,CAAC,CAAC,aAAa,CAAC,aAAa,CACzB,kBAAW,WAAW,aAAU,EAChC,MAAM,CACP;wBACH,CAAC,CAAC,SAAS;oBAGf,oBAAC,MAAM,IAAC,UAAU,EAAC,SAAS,EAAC,MAAM,EAAE,OAAO,GAAI,CAC5C,CACP;gBAEA,OAAO,CAAC,QAAQ,EAAE,CAAC,MAAM,GAAG,CAAC,IAAI,CAChC,6BAAK,SAAS,EAAC,MAAM;oBACnB,oBAAC,QAAQ,IACP,IAAI,EAAC,8BAA8B,EACnC,QAAQ,EAAE,OAAO,CAAC,QAAQ,EAAE,GAC5B,CACE,CACP;gBAED,oBAAC,UAAU,IAAC,IAAI,EAAE,OAAO,GAAI;gBAE5B,OAAO,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,IAAI,CAC5B,6BAAK,SAAS,EAAC,MAAM;oBACnB,oBAAC,IAAI,IAAC,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,GAAI,CAC1B,CACP,CACG,CACF;QAEL,YAAY,IAAI,CACf,6BAAK,SAAS,EAAC,wBAAwB;YACrC,oBAAC,cAAc,IAAC,OAAO,EAAE,OAAO,GAAI,CAChC,CACP,CACG,CACP,CAAC;AACJ,CAAC,CAAC","sourcesContent":["import React from 'react';\nimport { MessageInterface } from '@asyncapi/parser';\n\nimport { MessageExample } from './MessageExample';\nimport {\n Href,\n Markdown,\n Schema,\n Bindings,\n Tags,\n Extensions,\n} from '../../components';\n\nimport { useConfig } from '../../contexts';\nimport { CommonHelpers } from '../../helpers';\nimport {\n CONTENT_TYPES_SITE,\n EXTERAL_DOCUMENTATION_TEXT,\n} from '../../constants';\n\ninterface Props {\n message: MessageInterface;\n messageName?: string;\n index?: number | string;\n showExamples?: boolean;\n}\n\nexport const Message: React.FunctionComponent<Props> = ({\n message,\n messageName,\n index,\n showExamples = false,\n}) => {\n const config = useConfig();\n\n if (!message) {\n return null;\n }\n\n // check typeof as fallback for older version than `2.4.0`\n const messageId = typeof message.id === 'function' && message.id();\n const title = message.title();\n const summary = message.summary();\n const payload = message.payload();\n const headers = message.headers();\n const correlationId = message.correlationId();\n\n const contentType = message.contentType();\n const externalDocs = message.externalDocs();\n const showInfoList = contentType || externalDocs;\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\">\n <div>\n {index !== undefined && (\n <span className=\"text-gray-700 font-bold mr-2\">#{index}</span>\n )}\n {title && <span className=\"text-gray-700 mr-2\">{title}</span>}\n <span className=\"border text-orange-600 rounded text-xs py-0 px-2\">\n {message.id()}\n </span>\n </div>\n\n {summary && <p className=\"text-gray-600 text-sm\">{summary}</p>}\n\n {showInfoList && (\n <ul className=\"leading-normal mt-2 mb-4 space-x-2 space-y-2\">\n {contentType && (\n <li className=\"inline-block\">\n <Href\n className=\"border border-solid border-orange-300 hover:bg-orange-300 hover:text-orange-600 text-orange-500 font-bold no-underline text-xs uppercase rounded px-3 py-1\"\n href={`${CONTENT_TYPES_SITE}/${contentType}`}\n >\n <span>{contentType}</span>\n </Href>\n </li>\n )}\n {externalDocs && (\n <li className=\"inline-block\">\n <Href\n className=\"border border-solid border-orange-300 hover:bg-orange-300 hover:text-orange-600 text-orange-500 font-bold no-underline text-xs uppercase rounded px-3 py-1\"\n href={externalDocs.url()}\n >\n <span>{EXTERAL_DOCUMENTATION_TEXT}</span>\n </Href>\n </li>\n )}\n </ul>\n )}\n\n {messageId && (\n <div className=\"border bg-gray-100 rounded px-4 py-2 mt-2\">\n <div className=\"text-sm text-gray-700\">\n Message ID\n <span className=\"border text-orange-600 rounded text-xs ml-2 py-0 px-2\">\n {messageId}\n </span>\n </div>\n </div>\n )}\n\n {correlationId && (\n <div className=\"border bg-gray-100 rounded px-4 py-2 mt-2\">\n <div className=\"text-sm text-gray-700\">\n Correlation ID\n <span className=\"border text-orange-600 rounded text-xs ml-2 py-0 px-2\">\n {correlationId.location()}\n </span>\n </div>\n\n {correlationId.hasDescription() && (\n <div className=\"mt-2\">\n <Markdown>{correlationId.description()}</Markdown>\n </div>\n )}\n </div>\n )}\n\n {message.hasDescription() && (\n <div className=\"mt-2\">\n <Markdown>{message.description()}</Markdown>\n </div>\n )}\n\n {payload && (\n <div\n className=\"mt-2\"\n id={\n messageName\n ? CommonHelpers.getIdentifier(\n `message-${messageName}-payload`,\n config,\n )\n : undefined\n }\n >\n <Schema schemaName=\"Payload\" schema={payload} />\n </div>\n )}\n {headers && (\n <div\n className=\"mt-2\"\n id={\n messageName\n ? CommonHelpers.getIdentifier(\n `message-${messageName}-headers`,\n config,\n )\n : undefined\n }\n >\n <Schema schemaName=\"Headers\" schema={headers} />\n </div>\n )}\n\n {message.bindings().length > 0 && (\n <div className=\"mt-2\">\n <Bindings\n name=\"Message specific information\"\n bindings={message.bindings()}\n />\n </div>\n )}\n\n <Extensions item={message} />\n\n {message.tags().length > 0 && (\n <div className=\"mt-2\">\n <Tags tags={message.tags()} />\n </div>\n )}\n </div>\n </div>\n\n {showExamples && (\n <div className=\"panel-item--right px-8\">\n <MessageExample message={message} />\n </div>\n )}\n </div>\n );\n};\n"]}
1
+ {"version":3,"file":"Message.js","sourceRoot":"","sources":["../../../../src/containers/Messages/Message.tsx"],"names":[],"mappings":"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","sourcesContent":["import React from 'react';\nimport { MessageInterface } from '@asyncapi/parser';\n\nimport { MessageExample } from './MessageExample';\nimport {\n Href,\n Markdown,\n Schema,\n Bindings,\n Tags,\n Extensions,\n} from '../../components';\n\nimport { useConfig } from '../../contexts';\nimport { CommonHelpers } from '../../helpers';\nimport {\n CONTENT_TYPES_SITE,\n EXTERAL_DOCUMENTATION_TEXT,\n} from '../../constants';\n\ninterface Props {\n message: MessageInterface;\n messageName?: string;\n index?: number | string;\n showExamples?: boolean;\n}\n\nexport const Message: React.FunctionComponent<Props> = ({\n message,\n messageName,\n index,\n showExamples = false,\n}) => {\n const config = useConfig();\n\n if (!message) {\n return null;\n }\n\n // check typeof as fallback for older version than `2.4.0`\n const messageId = typeof message.id === 'function' && message.id();\n const title = message.title();\n const summary = message.summary();\n const payload = message.payload();\n const headers = message.headers();\n const correlationId = message.correlationId();\n\n const contentType = message.contentType();\n const externalDocs = message.externalDocs();\n const showInfoList = contentType || externalDocs;\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\">\n <div>\n {index !== undefined && (\n <span className=\"text-gray-700 font-bold mr-2\">#{index}</span>\n )}\n {title && <span className=\"text-gray-700 mr-2\">{title}</span>}\n <span className=\"border text-orange-600 rounded text-xs py-0 px-2\">\n {messageId}\n </span>\n </div>\n\n {summary && <p className=\"text-gray-600 text-sm\">{summary}</p>}\n\n {showInfoList && (\n <ul className=\"leading-normal mt-2 mb-4 space-x-2 space-y-2\">\n {contentType && (\n <li className=\"inline-block\">\n <Href\n className=\"border border-solid border-orange-300 hover:bg-orange-300 hover:text-orange-600 text-orange-500 font-bold no-underline text-xs uppercase rounded px-3 py-1\"\n href={`${CONTENT_TYPES_SITE}/${contentType}`}\n >\n <span>{contentType}</span>\n </Href>\n </li>\n )}\n {externalDocs && (\n <li className=\"inline-block\">\n <Href\n className=\"border border-solid border-orange-300 hover:bg-orange-300 hover:text-orange-600 text-orange-500 font-bold no-underline text-xs uppercase rounded px-3 py-1\"\n href={externalDocs.url()}\n >\n <span>{EXTERAL_DOCUMENTATION_TEXT}</span>\n </Href>\n </li>\n )}\n </ul>\n )}\n\n {messageId && (\n <div className=\"border bg-gray-100 rounded px-4 py-2 mt-2\">\n <div className=\"text-sm text-gray-700\">\n Message ID\n <span className=\"border text-orange-600 rounded text-xs ml-2 py-0 px-2\">\n {messageId}\n </span>\n </div>\n </div>\n )}\n\n {correlationId && (\n <div className=\"border bg-gray-100 rounded px-4 py-2 mt-2\">\n <div className=\"text-sm text-gray-700\">\n Correlation ID\n <span className=\"border text-orange-600 rounded text-xs ml-2 py-0 px-2\">\n {correlationId.location()}\n </span>\n </div>\n\n {correlationId.hasDescription() && (\n <div className=\"mt-2\">\n <Markdown>{correlationId.description()}</Markdown>\n </div>\n )}\n </div>\n )}\n\n {message.hasDescription() && (\n <div className=\"mt-2\">\n <Markdown>{message.description()}</Markdown>\n </div>\n )}\n\n {payload && (\n <div\n className=\"mt-2\"\n id={\n messageName\n ? CommonHelpers.getIdentifier(\n `message-${messageName}-payload`,\n config,\n )\n : undefined\n }\n >\n <Schema schemaName=\"Payload\" schema={payload} />\n </div>\n )}\n {headers && (\n <div\n className=\"mt-2\"\n id={\n messageName\n ? CommonHelpers.getIdentifier(\n `message-${messageName}-headers`,\n config,\n )\n : undefined\n }\n >\n <Schema schemaName=\"Headers\" schema={headers} />\n </div>\n )}\n\n {message.bindings().length > 0 && (\n <div className=\"mt-2\">\n <Bindings\n name=\"Message specific information\"\n bindings={message.bindings()}\n />\n </div>\n )}\n\n <Extensions item={message} />\n\n {message.tags().length > 0 && (\n <div className=\"mt-2\">\n <Tags tags={message.tags()} />\n </div>\n )}\n </div>\n </div>\n\n {showExamples && (\n <div className=\"panel-item--right px-8\">\n <MessageExample message={message} />\n </div>\n )}\n </div>\n );\n};\n"]}
@@ -9,17 +9,18 @@ var __assign = (this && this.__assign) || function () {
9
9
  };
10
10
  return __assign.apply(this, arguments);
11
11
  };
12
- import React from 'react';
12
+ import React, { useState } from 'react';
13
13
  import { Message } from '../Messages/Message';
14
14
  import { Security } from '../Servers/Security';
15
- import { Href, Markdown, Schema, Bindings, Tags, Extensions, } from '../../components';
16
- import { useConfig } from '../../contexts';
15
+ import { Markdown, Schema, Bindings, Tags, Extensions, CollapseButton, } from '../../components';
16
+ import { Href } from '../../components/Href';
17
+ import { useConfig, useSpec } from '../../contexts';
17
18
  import { CommonHelpers, SchemaHelpers } from '../../helpers';
18
- import { EXTERAL_DOCUMENTATION_TEXT, PUBLISH_LABEL_DEFAULT_TEXT, SUBSCRIBE_LABEL_DEFAULT_TEXT, } from '../../constants';
19
+ import { EXTERAL_DOCUMENTATION_TEXT, PUBLISH_LABEL_DEFAULT_TEXT, RECEIVE_TEXT_LABEL_DEFAULT_TEXT, REPLIER_LABEL_DEFAULT_TEXT, REQUEST_LABEL_DEFAULT_TEXT, SEND_LABEL_DEFAULT_TEXT, SUBSCRIBE_LABEL_DEFAULT_TEXT, } from '../../constants';
19
20
  import { PayloadType } from '../../types';
20
21
  export var Operation = function (props) {
21
22
  var config = useConfig();
22
- var _a = props.type, type = _a === void 0 ? PayloadType.PUBLISH : _a, operation = props.operation, channelName = props.channelName, channel = props.channel;
23
+ var _a = props.type, type = _a === void 0 ? PayloadType.SEND : _a, operation = props.operation, channelName = props.channelName, channel = props.channel;
23
24
  if (!operation || !channel) {
24
25
  return null;
25
26
  }
@@ -56,33 +57,60 @@ export var Operation = function (props) {
56
57
  React.createElement("ul", null, operation
57
58
  .messages()
58
59
  .all()
59
- .map(function (msg, idx) { return (React.createElement("li", { className: "mt-4", key: idx },
60
+ .map(function (msg, idx) { return (React.createElement("li", { className: "mt-4", key: msg.id() },
60
61
  React.createElement(Message, { message: msg, index: idx, showExamples: true }))); })))) : (React.createElement("div", { className: "mt-2" },
61
62
  React.createElement("p", { className: "px-8" }, "Accepts the following message:"),
62
63
  React.createElement("div", { className: "mt-2" },
63
- React.createElement(Message, { message: operation.messages().all()[0], showExamples: true })))))));
64
+ React.createElement(Message, { message: operation.messages().all()[0], showExamples: true }))))),
65
+ React.createElement(OperationReplyInfo, __assign({}, props))));
64
66
  };
65
67
  function getTypeInformation(_a) {
66
- var _b, _c;
67
- var _d = _a.type, type = _d === void 0 ? PayloadType.PUBLISH : _d, config = _a.config;
68
- if (type === PayloadType.SUBSCRIBE) {
68
+ var _b, _c, _d, _e, _f, _g;
69
+ var _h = _a.typeRes, typeRes = _h === void 0 ? PayloadType.SEND : _h, config = _a.config, version = _a.version;
70
+ if (typeRes === PayloadType.RECEIVE) {
69
71
  return {
70
72
  borderColor: 'border-green-600 text-green-600',
71
- typeLabel: (_b = config.subscribeLabel) !== null && _b !== void 0 ? _b : SUBSCRIBE_LABEL_DEFAULT_TEXT,
73
+ typeLabel: version === 1
74
+ ? (_b = config.receiveLabel) !== null && _b !== void 0 ? _b : RECEIVE_TEXT_LABEL_DEFAULT_TEXT
75
+ : (_c = config.publishLabel) !== null && _c !== void 0 ? _c : PUBLISH_LABEL_DEFAULT_TEXT,
76
+ };
77
+ }
78
+ if (typeRes === PayloadType.REPLY) {
79
+ return {
80
+ borderColor: 'border-orange-600 text-orange-600',
81
+ typeLabel: (_d = config.replyLabel) !== null && _d !== void 0 ? _d : REPLIER_LABEL_DEFAULT_TEXT,
82
+ };
83
+ }
84
+ if (typeRes === PayloadType.REQUEST) {
85
+ return {
86
+ borderColor: 'border-red-600 text-red-600',
87
+ typeLabel: (_e = config.requestLabel) !== null && _e !== void 0 ? _e : REQUEST_LABEL_DEFAULT_TEXT,
72
88
  };
73
89
  }
74
90
  return {
75
91
  borderColor: 'border-blue-600 text-blue-500',
76
- typeLabel: (_c = config.publishLabel) !== null && _c !== void 0 ? _c : PUBLISH_LABEL_DEFAULT_TEXT,
92
+ typeLabel: version === 1
93
+ ? (_f = config.sendLabel) !== null && _f !== void 0 ? _f : SEND_LABEL_DEFAULT_TEXT
94
+ : (_g = config.subscribeLabel) !== null && _g !== void 0 ? _g : SUBSCRIBE_LABEL_DEFAULT_TEXT,
77
95
  };
78
96
  }
79
97
  export var OperationInfo = function (props) {
80
- var _a = props.type, type = _a === void 0 ? PayloadType.PUBLISH : _a, operation = props.operation, channelName = props.channelName, channel = props.channel;
98
+ var _a = props.type, type = _a === void 0 ? PayloadType.SEND : _a, operation = props.operation, channelName = props.channelName, channel = props.channel;
99
+ var specV = useSpec().version();
100
+ var version = specV.localeCompare('2.6.0', undefined, { numeric: true });
81
101
  var config = useConfig();
82
102
  var operationSummary = operation.summary();
83
103
  var externalDocs = operation.externalDocs();
84
104
  var operationId = operation.id();
85
- var _b = getTypeInformation({ type: type, config: config }), borderColor = _b.borderColor, typeLabel = _b.typeLabel;
105
+ var typeRes = type;
106
+ if (version === 1 && operation.action() !== typeRes) {
107
+ typeRes = PayloadType.RECEIVE;
108
+ }
109
+ var _b = getTypeInformation({
110
+ typeRes: typeRes,
111
+ config: config,
112
+ version: version,
113
+ }), borderColor = _b.borderColor, typeLabel = _b.typeLabel;
86
114
  return (React.createElement(React.Fragment, null,
87
115
  React.createElement("div", { className: "mb-4" },
88
116
  React.createElement("h3", null,
@@ -102,4 +130,121 @@ export var OperationInfo = function (props) {
102
130
  "Operation ID",
103
131
  React.createElement("span", { className: "border text-orange-600 rounded text-xs ml-2 py-0 px-2" }, operationId))))));
104
132
  };
133
+ export var OperationReplyInfo = function (props) {
134
+ var _a;
135
+ var _b = props.type, type = _b === void 0 ? PayloadType.SEND : _b, operation = props.operation;
136
+ var _c = useState(false), showMessages = _c[0], setShowMessages = _c[1];
137
+ var _d = useState(false), showChannel = _d[0], setShowChannel = _d[1];
138
+ if (type !== PayloadType.REPLY && type !== PayloadType.REQUEST) {
139
+ return React.createElement(React.Fragment, null);
140
+ }
141
+ var reply = operation.reply();
142
+ if (reply === undefined) {
143
+ return React.createElement(React.Fragment, null);
144
+ }
145
+ var replyMessages = reply.messages();
146
+ var explicitChannel = reply.channel();
147
+ var replyAddress = (_a = reply.address()) === null || _a === void 0 ? void 0 : _a.location();
148
+ return (React.createElement("div", { className: "panel-item" },
149
+ React.createElement("div", { className: "panel-item--center" },
150
+ React.createElement("div", { className: "font-mono px-8 py-4" },
151
+ React.createElement("div", { className: "border rounded" },
152
+ React.createElement("div", { className: "w-full ".concat(type === 'reply'
153
+ ? 'bg-green-600 border-green-600'
154
+ : 'bg-blue-600 border-blue-600', " text-sm rounded-t h-8 px-4 border text-white flex items-center") },
155
+ React.createElement("span", { className: "font-bold" }, "REPLY INFORMATION")),
156
+ React.createElement("div", { className: "flex" },
157
+ React.createElement("div", { className: "w-1 h-11 ".concat(type === 'reply' ? 'bg-green-600' : 'bg-blue-600', " mt-4") }),
158
+ React.createElement("div", { className: "p-4" },
159
+ React.createElement("h3", { className: "text-xs" },
160
+ React.createElement("span", { className: "mr-2", title: type }, "REPLY CHANNEL INFORMATION")),
161
+ (explicitChannel === null || explicitChannel === void 0 ? void 0 : explicitChannel.address()) ? (React.createElement("div", { className: "text-xs text-gray-700" },
162
+ "Reply will be provided via this designated address:",
163
+ ' ',
164
+ React.createElement("span", { className: "border text-orange-600 rounded text-xs ml-2 py-0 px-2" },
165
+ explicitChannel.address(),
166
+ ' '))) : (React.createElement("div", { className: "text-xs text-gray-700" },
167
+ "Reply will be directed to the address specified at this location:",
168
+ ' ',
169
+ React.createElement("span", { className: "border text-orange-600 rounded text-xs ml-2 py-0 px-2" }, replyAddress))),
170
+ React.createElement("div", { className: "mt-2" },
171
+ explicitChannel && (React.createElement(CollapseButton, { onClick: function () { return setShowChannel(function (prev) { return !prev; }); }, expanded: showChannel },
172
+ React.createElement("span", { className: "inline-block py-0.5 mr-1 text-gray-500 text-xs text-center rounded focus:outline-none" }, "View channel details"))),
173
+ explicitChannel && (React.createElement("div", { className: "w-full mt-4 ".concat(showChannel ? 'block' : 'hidden') },
174
+ React.createElement(OperationChannelInfo, __assign({}, props)),
175
+ ' '))))),
176
+ React.createElement(OperationReplyAddressInfo, __assign({}, props)),
177
+ replyMessages.isEmpty() === false && (React.createElement("div", { className: "p-4" },
178
+ React.createElement(CollapseButton, { onClick: function () { return setShowMessages(function (prev) { return !prev; }); }, expanded: showMessages },
179
+ React.createElement("span", { className: "inline-block py-0.5 mr-1 text-gray-500 text-xs text-center rounded focus:outline-none" },
180
+ "Expected Reply",
181
+ ' ',
182
+ replyMessages.length > 1 ? 'Messages' : 'Message')),
183
+ React.createElement("div", { className: "w-full mt-4 ".concat(showMessages ? 'block' : 'hidden') }, replyMessages.length > 1 ? (React.createElement("div", { className: "mt-2" },
184
+ React.createElement("ul", null, replyMessages.all().map(function (msg, idx) { return (React.createElement("li", { className: "mt-4", key: msg.id() },
185
+ React.createElement(Message, { message: msg, index: idx, showExamples: true }))); })))) : (React.createElement("div", { className: "mt-2" },
186
+ React.createElement("div", { className: "mt-2" },
187
+ React.createElement(Message, { message: replyMessages.all()[0], showExamples: true }))))))))),
188
+ React.createElement(Extensions, { name: "Operation Reply Extensions", item: reply }))));
189
+ };
190
+ export var OperationChannelInfo = function (_a) {
191
+ var _b = _a.type, type = _b === void 0 ? PayloadType.SEND : _b, channelName = _a.channelName, channel = _a.channel;
192
+ var config = useConfig();
193
+ var servers = typeof channel.servers === 'function' && channel.servers().all();
194
+ var parameters = channel.parameters() !== undefined
195
+ ? SchemaHelpers.parametersToSchema(channel.parameters())
196
+ : undefined;
197
+ if (!channel) {
198
+ return React.createElement(React.Fragment, null);
199
+ }
200
+ return (React.createElement("div", null,
201
+ channel.address() && (React.createElement("div", { className: "mt-2 text-xs text-gray-700" },
202
+ "Address:",
203
+ ' ',
204
+ React.createElement("span", { className: "border text-orange-600 rounded text-xs py-0 px-2" }, channel.address()))),
205
+ channel.hasDescription() && (React.createElement("div", { className: "mt-2" },
206
+ React.createElement(Markdown, null, channel.description()))),
207
+ servers && servers.length > 0 ? (React.createElement("div", { className: "mt-2 text-sm" },
208
+ React.createElement("p", null, "Available only on servers:"),
209
+ React.createElement("ul", { className: "flex flex-wrap leading-normal" }, servers.map(function (server) { return (React.createElement("li", { className: "inline-block mt-2 mr-2", key: server.id() },
210
+ React.createElement("a", { href: "#".concat(CommonHelpers.getIdentifier('server-' + server.id(), config)), className: "border border-solid border-blue-300 hover:bg-blue-300 hover:text-blue-600 text-blue-500 font-bold no-underline text-xs rounded px-3 py-1 cursor-pointer" },
211
+ React.createElement("span", { className: "underline" }, server.id())))); })))) : null,
212
+ channel.messages().all().length > 1 ? (React.createElement("div", { className: "mt-2" },
213
+ React.createElement("span", { className: "text-xs text-gray-700" }, "Messages:"),
214
+ React.createElement("ul", null, channel
215
+ .messages()
216
+ .all()
217
+ .map(function (msg, idx) { return (React.createElement("li", { className: "mt-4", key: msg.id() },
218
+ React.createElement(Message, { message: msg, index: idx, showExamples: true }))); })))) : (React.createElement("div", { className: "mt-2" },
219
+ React.createElement("span", { className: "text-xs text-gray-700" }, "Message:"),
220
+ React.createElement("div", { className: "mt-2" },
221
+ React.createElement(Message, { message: channel.messages().all()[0], showExamples: true })))),
222
+ parameters && (React.createElement("div", { className: "mt-2", id: CommonHelpers.getIdentifier("operation-".concat(type, "-").concat(channelName, "-parameters"), config) },
223
+ React.createElement(Schema, { schemaName: "Parameters", schema: parameters, expanded: true }))),
224
+ channel.bindings() && (React.createElement("div", { className: "mt-2" },
225
+ React.createElement(Bindings, { name: "Bindings", bindings: channel.bindings() })))));
226
+ };
227
+ export var OperationReplyAddressInfo = function (_a) {
228
+ var _b = _a.type, type = _b === void 0 ? PayloadType.SEND : _b, operation = _a.operation;
229
+ if (type !== PayloadType.REPLY && type !== PayloadType.REQUEST) {
230
+ return React.createElement(React.Fragment, null);
231
+ }
232
+ var reply = operation.reply();
233
+ if (reply === undefined || !reply.hasAddress()) {
234
+ return React.createElement(React.Fragment, null);
235
+ }
236
+ var replyAddress = reply.address();
237
+ var replyAddressLocation = replyAddress.location();
238
+ return (React.createElement("div", { className: "flex" },
239
+ React.createElement("div", { className: "w-1 h-11 ".concat(type === 'reply' ? 'bg-green-600' : 'bg-blue-600', " mt-4") }),
240
+ React.createElement("div", { className: "p-4" },
241
+ React.createElement("h3", { className: "text-xs" },
242
+ React.createElement("span", { className: "mr-2 uppercase", title: type }, "REPLY address information")),
243
+ replyAddressLocation && (React.createElement("div", { className: "text-xs text-gray-700" },
244
+ "REPLY will be sent to the address provided in:",
245
+ React.createElement("span", { className: "border text-orange-600 rounded text-xs ml-2 py-0 px-2" }, replyAddressLocation))),
246
+ replyAddress.hasDescription() && (React.createElement("div", { className: "mt-2" },
247
+ React.createElement(Markdown, null, replyAddress.description()))),
248
+ React.createElement(Extensions, { name: "Operation Reply Address Extensions", item: reply }))));
249
+ };
105
250
  //# sourceMappingURL=Operation.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Operation.js","sourceRoot":"","sources":["../../../../src/containers/Operations/Operation.tsx"],"names":[],"mappings":"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","sourcesContent":["import React from 'react';\nimport { ChannelInterface, OperationInterface } from '@asyncapi/parser';\n\nimport { Message } from '../Messages/Message';\nimport { Security } from '../Servers/Security';\nimport {\n Href,\n Markdown,\n Schema,\n Bindings,\n Tags,\n Extensions,\n} from '../../components';\n\nimport { useConfig } from '../../contexts';\nimport { CommonHelpers, SchemaHelpers } from '../../helpers';\nimport {\n EXTERAL_DOCUMENTATION_TEXT,\n PUBLISH_LABEL_DEFAULT_TEXT,\n SUBSCRIBE_LABEL_DEFAULT_TEXT,\n} from '../../constants';\nimport { PayloadType } from '../../types';\nimport { ConfigInterface } from '../../config/config';\ninterface Props {\n type: PayloadType;\n operation: OperationInterface;\n channelName: string;\n channel: ChannelInterface;\n}\n\nexport const Operation: React.FunctionComponent<Props> = props => {\n const config = useConfig();\n const { type = PayloadType.PUBLISH, operation, channelName, channel } = props;\n\n if (!operation || !channel) {\n return null;\n }\n\n // check typeof as fallback for older version than `2.2.0`\n const servers =\n typeof channel.servers === 'function' && channel.servers().all();\n // check typeof as fallback for older version than `2.4.0`\n const security =\n typeof operation.security === 'function' && operation.security();\n const parameters =\n channel.parameters() !== undefined\n ? SchemaHelpers.parametersToSchema(channel.parameters())\n : undefined;\n\n return (\n <div>\n <div className=\"panel-item--center px-8\">\n <OperationInfo {...props} />\n\n {servers && servers.length > 0 ? (\n <div className=\"mt-2 text-sm\">\n <p>Available only on servers:</p>\n <ul className=\"flex flex-wrap leading-normal\">\n {servers.map(server => (\n <li className=\"inline-block mt-2 mr-2\" key={server.id()}>\n <a\n href={`#${CommonHelpers.getIdentifier(\n 'server-' + server.id(),\n config,\n )}`}\n className=\"border border-solid border-blue-300 hover:bg-blue-300 hover:text-blue-600 text-blue-500 font-bold no-underline text-xs rounded px-3 py-1 cursor-pointer\"\n >\n <span className=\"underline\">{server.id()}</span>\n </a>\n </li>\n ))}\n </ul>\n </div>\n ) : null}\n\n {parameters && (\n <div\n className=\"mt-2\"\n id={CommonHelpers.getIdentifier(\n `operation-${type}-${channelName}-parameters`,\n config,\n )}\n >\n <Schema\n schemaName=\"Parameters\"\n schema={parameters}\n expanded={true}\n />\n </div>\n )}\n\n {security && (\n <div\n className=\"mt-2\"\n id={CommonHelpers.getIdentifier(\n `operation-${type}-${channelName}-security`,\n config,\n )}\n >\n <Security\n security={security}\n header=\"Additional security requirements\"\n />\n </div>\n )}\n\n {channel.bindings() && (\n <div className=\"mt-2\">\n <Bindings\n name=\"Channel specific information\"\n bindings={channel.bindings()}\n />\n </div>\n )}\n\n <Extensions name=\"Channel Extensions\" item={channel} />\n\n {operation.bindings() && (\n <div className=\"mt-2\">\n <Bindings\n name=\"Operation specific information\"\n bindings={operation.bindings()}\n />\n </div>\n )}\n\n <Extensions name=\"Operation Extensions\" item={operation} />\n\n {operation.tags() && (\n <div className=\"mt-2\">\n <Tags tags={operation.tags()} />\n </div>\n )}\n </div>\n\n <div\n className=\"w-full mt-4\"\n id={CommonHelpers.getIdentifier(\n `operation-${type}-${channelName}-message`,\n config,\n )}\n >\n {operation.messages().length > 1 ? (\n <div className=\"mt-2\">\n <p className=\"px-8\">\n Accepts <strong>one of</strong> the following messages:\n </p>\n <ul>\n {operation\n .messages()\n .all()\n .map((msg, idx) => (\n <li className=\"mt-4\" key={idx}>\n <Message message={msg} index={idx} showExamples={true} />\n </li>\n ))}\n </ul>\n </div>\n ) : (\n <div className=\"mt-2\">\n <p className=\"px-8\">Accepts the following message:</p>\n <div className=\"mt-2\">\n <Message\n message={operation.messages().all()[0]}\n showExamples={true}\n />\n </div>\n </div>\n )}\n </div>\n </div>\n );\n};\n\nfunction getTypeInformation({\n type = PayloadType.PUBLISH,\n config,\n}: {\n type: PayloadType;\n config: ConfigInterface;\n}): { borderColor: string; typeLabel: string } {\n if (type === PayloadType.SUBSCRIBE) {\n return {\n borderColor: 'border-green-600 text-green-600',\n typeLabel: config.subscribeLabel ?? SUBSCRIBE_LABEL_DEFAULT_TEXT,\n };\n }\n // type === PayloadType.PUBLISH\n return {\n borderColor: 'border-blue-600 text-blue-500',\n typeLabel: config.publishLabel ?? PUBLISH_LABEL_DEFAULT_TEXT,\n };\n}\n\nexport const OperationInfo: React.FunctionComponent<Props> = props => {\n const { type = PayloadType.PUBLISH, operation, channelName, channel } = props;\n const config = useConfig();\n const operationSummary = operation.summary();\n const externalDocs = operation.externalDocs();\n const operationId = operation.id();\n const { borderColor, typeLabel } = getTypeInformation({ type, config });\n\n return (\n <>\n <div className=\"mb-4\">\n <h3>\n <span\n className={`font-mono border uppercase p-1 rounded mr-2 ${borderColor}`}\n title={type}\n >\n {typeLabel}\n </span>{' '}\n <span className=\"font-mono text-base\">{channelName}</span>\n </h3>\n </div>\n\n {channel.hasDescription() && (\n <div className=\"mt-2\">\n <Markdown>{channel.description()}</Markdown>\n </div>\n )}\n {operationSummary && (\n <p className=\"text-gray-600 text-sm mt-2\">{operationSummary}</p>\n )}\n {operation.hasDescription() && (\n <div className=\"mt-2\">\n <Markdown>{operation.description()}</Markdown>\n </div>\n )}\n\n {externalDocs && (\n <ul className=\"leading-normal mt-2 mb-4 space-x-2 space-y-2\">\n {externalDocs && (\n <li className=\"inline-block\">\n <Href\n className=\"border border-solid border-orange-300 hover:bg-orange-300 hover:text-orange-600 text-orange-500 font-bold no-underline text-xs uppercase rounded px-3 py-1\"\n href={externalDocs.url()}\n >\n <span>{EXTERAL_DOCUMENTATION_TEXT}</span>\n </Href>\n </li>\n )}\n </ul>\n )}\n\n {operationId && (\n <div className=\"border bg-gray-100 rounded px-4 py-2 mt-2\">\n <div className=\"text-sm text-gray-700\">\n Operation ID\n <span className=\"border text-orange-600 rounded text-xs ml-2 py-0 px-2\">\n {operationId}\n </span>\n </div>\n </div>\n )}\n </>\n );\n};\n"]}
1
+ {"version":3,"file":"Operation.js","sourceRoot":"","sources":["../../../../src/containers/Operations/Operation.tsx"],"names":[],"mappings":"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","sourcesContent":["import React, { useState } from 'react';\nimport { ChannelInterface, OperationInterface } from '@asyncapi/parser';\n\nimport { Message } from '../Messages/Message';\nimport { Security } from '../Servers/Security';\nimport {\n Markdown,\n Schema,\n Bindings,\n Tags,\n Extensions,\n CollapseButton,\n} from '../../components';\nimport { Href } from '../../components/Href';\n\nimport { useConfig, useSpec } from '../../contexts';\nimport { CommonHelpers, SchemaHelpers } from '../../helpers';\nimport {\n EXTERAL_DOCUMENTATION_TEXT,\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';\nimport { PayloadType } from '../../types';\nimport { ConfigInterface } from '../../config/config';\ninterface Props {\n type: PayloadType;\n operation: OperationInterface;\n channelName: string;\n channel: ChannelInterface;\n}\n\nexport const Operation: React.FunctionComponent<Props> = props => {\n const config = useConfig();\n const { type = PayloadType.SEND, operation, channelName, channel } = props;\n if (!operation || !channel) {\n return null;\n }\n\n // check typeof as fallback for older version than `2.2.0`\n const servers =\n typeof channel.servers === 'function' && channel.servers().all();\n // check typeof as fallback for older version than `2.4.0`\n const security =\n typeof operation.security === 'function' && operation.security();\n const parameters =\n channel.parameters() !== undefined\n ? SchemaHelpers.parametersToSchema(channel.parameters())\n : undefined;\n\n return (\n <div>\n <div className=\"panel-item--center px-8\">\n <OperationInfo {...props} />\n\n {servers && servers.length > 0 ? (\n <div className=\"mt-2 text-sm\">\n <p>Available only on servers:</p>\n <ul className=\"flex flex-wrap leading-normal\">\n {servers.map(server => (\n <li className=\"inline-block mt-2 mr-2\" key={server.id()}>\n <a\n href={`#${CommonHelpers.getIdentifier(\n 'server-' + server.id(),\n config,\n )}`}\n className=\"border border-solid border-blue-300 hover:bg-blue-300 hover:text-blue-600 text-blue-500 font-bold no-underline text-xs rounded px-3 py-1 cursor-pointer\"\n >\n <span className=\"underline\">{server.id()}</span>\n </a>\n </li>\n ))}\n </ul>\n </div>\n ) : null}\n\n {parameters && (\n <div\n className=\"mt-2\"\n id={CommonHelpers.getIdentifier(\n `operation-${type}-${channelName}-parameters`,\n config,\n )}\n >\n <Schema\n schemaName=\"Parameters\"\n schema={parameters}\n expanded={true}\n />\n </div>\n )}\n\n {security && (\n <div\n className=\"mt-2\"\n id={CommonHelpers.getIdentifier(\n `operation-${type}-${channelName}-security`,\n config,\n )}\n >\n <Security\n security={security}\n header=\"Additional security requirements\"\n />\n </div>\n )}\n\n {channel.bindings() && (\n <div className=\"mt-2\">\n <Bindings\n name=\"Channel specific information\"\n bindings={channel.bindings()}\n />\n </div>\n )}\n\n <Extensions name=\"Channel Extensions\" item={channel} />\n\n {operation.bindings() && (\n <div className=\"mt-2\">\n <Bindings\n name=\"Operation specific information\"\n bindings={operation.bindings()}\n />\n </div>\n )}\n\n <Extensions name=\"Operation Extensions\" item={operation} />\n\n {operation.tags() && (\n <div className=\"mt-2\">\n <Tags tags={operation.tags()} />\n </div>\n )}\n </div>\n\n <div\n className=\"w-full mt-4\"\n id={CommonHelpers.getIdentifier(\n `operation-${type}-${channelName}-message`,\n config,\n )}\n >\n {operation.messages().length > 1 ? (\n <div className=\"mt-2\">\n <p className=\"px-8\">\n Accepts <strong>one of</strong> the following messages:\n </p>\n <ul>\n {operation\n .messages()\n .all()\n .map((msg, idx) => (\n <li className=\"mt-4\" key={msg.id()}>\n <Message message={msg} index={idx} showExamples={true} />\n </li>\n ))}\n </ul>\n </div>\n ) : (\n <div className=\"mt-2\">\n <p className=\"px-8\">Accepts the following message:</p>\n <div className=\"mt-2\">\n <Message\n message={operation.messages().all()[0]}\n showExamples={true}\n />\n </div>\n </div>\n )}\n </div>\n\n <OperationReplyInfo {...props} />\n </div>\n );\n};\n\nfunction getTypeInformation({\n typeRes = PayloadType.SEND,\n config,\n version,\n}: {\n typeRes: PayloadType;\n config: ConfigInterface;\n version: number;\n}): { borderColor: string; typeLabel: string } {\n if (typeRes === PayloadType.RECEIVE) {\n return {\n borderColor: 'border-green-600 text-green-600',\n typeLabel:\n version === 1\n ? config.receiveLabel ?? RECEIVE_TEXT_LABEL_DEFAULT_TEXT\n : config.publishLabel ?? PUBLISH_LABEL_DEFAULT_TEXT,\n };\n }\n if (typeRes === PayloadType.REPLY) {\n return {\n borderColor: 'border-orange-600 text-orange-600',\n typeLabel: config.replyLabel ?? REPLIER_LABEL_DEFAULT_TEXT,\n };\n }\n if (typeRes === PayloadType.REQUEST) {\n return {\n borderColor: 'border-red-600 text-red-600',\n typeLabel: config.requestLabel ?? REQUEST_LABEL_DEFAULT_TEXT,\n };\n }\n return {\n borderColor: 'border-blue-600 text-blue-500',\n typeLabel:\n version === 1\n ? config.sendLabel ?? SEND_LABEL_DEFAULT_TEXT\n : config.subscribeLabel ?? SUBSCRIBE_LABEL_DEFAULT_TEXT,\n };\n}\n\nexport const OperationInfo: React.FunctionComponent<Props> = props => {\n const { type = PayloadType.SEND, operation, channelName, channel } = props;\n const specV = useSpec().version();\n const version = specV.localeCompare('2.6.0', undefined, { numeric: true });\n const config = useConfig();\n const operationSummary = operation.summary();\n const externalDocs = operation.externalDocs();\n const operationId = operation.id();\n let typeRes = type;\n if (version === 1 && operation.action() !== typeRes) {\n typeRes = PayloadType.RECEIVE;\n }\n const { borderColor, typeLabel } = getTypeInformation({\n typeRes,\n config,\n version,\n });\n return (\n <>\n <div className=\"mb-4\">\n <h3>\n <span\n className={`font-mono border uppercase p-1 rounded mr-2 ${borderColor}`}\n title={type}\n >\n {typeLabel}\n </span>{' '}\n <span className=\"font-mono text-base\">{channelName}</span>\n </h3>\n </div>\n\n {channel.hasDescription() && (\n <div className=\"mt-2\">\n <Markdown>{channel.description()}</Markdown>\n </div>\n )}\n {operationSummary && (\n <p className=\"text-gray-600 text-sm mt-2\">{operationSummary}</p>\n )}\n {operation.hasDescription() && (\n <div className=\"mt-2\">\n <Markdown>{operation.description()}</Markdown>\n </div>\n )}\n\n {externalDocs && (\n <ul className=\"leading-normal mt-2 mb-4 space-x-2 space-y-2\">\n {externalDocs && (\n <li className=\"inline-block\">\n <Href\n className=\"border border-solid border-orange-300 hover:bg-orange-300 hover:text-orange-600 text-orange-500 font-bold no-underline text-xs uppercase rounded px-3 py-1\"\n href={externalDocs.url()}\n >\n <span>{EXTERAL_DOCUMENTATION_TEXT}</span>\n </Href>\n </li>\n )}\n </ul>\n )}\n\n {operationId && (\n <div className=\"border bg-gray-100 rounded px-4 py-2 mt-2\">\n <div className=\"text-sm text-gray-700\">\n Operation ID\n <span className=\"border text-orange-600 rounded text-xs ml-2 py-0 px-2\">\n {operationId}\n </span>\n </div>\n </div>\n )}\n </>\n );\n};\n\nexport const OperationReplyInfo: React.FunctionComponent<Props> = props => {\n const { type = PayloadType.SEND, operation } = props;\n const [showMessages, setShowMessages] = useState(false);\n const [showChannel, setShowChannel] = useState(false);\n if (type !== PayloadType.REPLY && type !== PayloadType.REQUEST) {\n return <></>;\n }\n const reply = operation.reply();\n if (reply === undefined) {\n return <></>;\n }\n\n const replyMessages = reply.messages();\n const explicitChannel = reply.channel();\n\n const replyAddress = reply.address()?.location();\n\n return (\n <div className=\"panel-item\">\n <div className=\"panel-item--center\">\n <div className=\"font-mono px-8 py-4\">\n <div className=\"border rounded\">\n <div\n className={`w-full ${\n type === 'reply'\n ? 'bg-green-600 border-green-600'\n : 'bg-blue-600 border-blue-600'\n } text-sm rounded-t h-8 px-4 border text-white flex items-center`}\n >\n <span className=\"font-bold\">REPLY INFORMATION</span>\n </div>\n <div className=\"flex\">\n <div\n className={`w-1 h-11 ${\n type === 'reply' ? 'bg-green-600' : 'bg-blue-600'\n } mt-4`}\n />\n <div className=\"p-4\">\n <h3 className=\"text-xs\">\n <span className=\"mr-2\" title={type}>\n REPLY CHANNEL INFORMATION\n </span>\n </h3>\n {explicitChannel?.address() ? (\n <div className=\"text-xs text-gray-700\">\n Reply will be provided via this designated address:{' '}\n <span className=\"border text-orange-600 rounded text-xs ml-2 py-0 px-2\">\n {explicitChannel.address()}{' '}\n </span>\n </div>\n ) : (\n <div className=\"text-xs text-gray-700\">\n Reply will be directed to the address specified at this\n location:{' '}\n <span className=\"border text-orange-600 rounded text-xs ml-2 py-0 px-2\">\n {replyAddress}\n </span>\n </div>\n )}\n <div className=\"mt-2\">\n {explicitChannel && (\n <CollapseButton\n onClick={() => setShowChannel(prev => !prev)}\n expanded={showChannel}\n >\n <span className=\"inline-block py-0.5 mr-1 text-gray-500 text-xs text-center rounded focus:outline-none\">\n View channel details\n </span>\n </CollapseButton>\n )}\n {explicitChannel && (\n <div\n className={`w-full mt-4 ${\n showChannel ? 'block' : 'hidden'\n }`}\n >\n <OperationChannelInfo {...props} />{' '}\n </div>\n )}\n </div>\n </div>\n </div>\n <OperationReplyAddressInfo {...props} />\n {replyMessages.isEmpty() === false && (\n <div className=\"p-4\">\n <CollapseButton\n onClick={() => setShowMessages(prev => !prev)}\n expanded={showMessages}\n >\n <span className=\"inline-block py-0.5 mr-1 text-gray-500 text-xs text-center rounded focus:outline-none\">\n Expected Reply{' '}\n {replyMessages.length > 1 ? 'Messages' : 'Message'}\n </span>\n </CollapseButton>\n <div\n className={`w-full mt-4 ${showMessages ? 'block' : 'hidden'}`}\n >\n {replyMessages.length > 1 ? (\n <div className=\"mt-2\">\n <ul>\n {replyMessages.all().map((msg, idx) => (\n <li className=\"mt-4\" key={msg.id()}>\n <Message\n message={msg}\n index={idx}\n showExamples={true}\n />\n </li>\n ))}\n </ul>\n </div>\n ) : (\n <div className=\"mt-2\">\n <div className=\"mt-2\">\n <Message\n message={replyMessages.all()[0]}\n showExamples={true}\n />\n </div>\n </div>\n )}\n </div>\n </div>\n )}\n </div>\n </div>\n\n <Extensions name=\"Operation Reply Extensions\" item={reply} />\n </div>\n </div>\n );\n};\n\nexport const OperationChannelInfo: React.FunctionComponent<Props> = ({\n type = PayloadType.SEND,\n channelName,\n channel,\n}) => {\n const config = useConfig();\n const servers =\n typeof channel.servers === 'function' && channel.servers().all();\n const parameters =\n channel.parameters() !== undefined\n ? SchemaHelpers.parametersToSchema(channel.parameters())\n : undefined;\n if (!channel) {\n return <></>;\n }\n\n return (\n <div>\n {channel.address() && (\n <div className=\"mt-2 text-xs text-gray-700\">\n Address:{' '}\n <span className=\"border text-orange-600 rounded text-xs py-0 px-2\">\n {channel.address()}\n </span>\n </div>\n )}\n {channel.hasDescription() && (\n <div className=\"mt-2\">\n <Markdown>{channel.description()}</Markdown>\n </div>\n )}\n {servers && servers.length > 0 ? (\n <div className=\"mt-2 text-sm\">\n <p>Available only on servers:</p>\n <ul className=\"flex flex-wrap leading-normal\">\n {servers.map(server => (\n <li className=\"inline-block mt-2 mr-2\" key={server.id()}>\n <a\n href={`#${CommonHelpers.getIdentifier(\n 'server-' + server.id(),\n config,\n )}`}\n className=\"border border-solid border-blue-300 hover:bg-blue-300 hover:text-blue-600 text-blue-500 font-bold no-underline text-xs rounded px-3 py-1 cursor-pointer\"\n >\n <span className=\"underline\">{server.id()}</span>\n </a>\n </li>\n ))}\n </ul>\n </div>\n ) : null}\n {channel.messages().all().length > 1 ? (\n <div className=\"mt-2\">\n <span className=\"text-xs text-gray-700\">Messages:</span>\n <ul>\n {channel\n .messages()\n .all()\n .map((msg, idx) => (\n <li className=\"mt-4\" key={msg.id()}>\n <Message message={msg} index={idx} showExamples={true} />\n </li>\n ))}\n </ul>\n </div>\n ) : (\n <div className=\"mt-2\">\n <span className=\"text-xs text-gray-700\">Message:</span>\n <div className=\"mt-2\">\n <Message\n message={channel.messages().all()[0]}\n showExamples={true}\n />\n </div>\n </div>\n )}\n {parameters && (\n <div\n className=\"mt-2\"\n id={CommonHelpers.getIdentifier(\n `operation-${type}-${channelName}-parameters`,\n config,\n )}\n >\n <Schema schemaName=\"Parameters\" schema={parameters} expanded={true} />\n </div>\n )}\n {channel.bindings() && (\n <div className=\"mt-2\">\n <Bindings name=\"Bindings\" bindings={channel.bindings()} />\n </div>\n )}\n </div>\n );\n};\n\nexport const OperationReplyAddressInfo: React.FunctionComponent<Props> = ({\n type = PayloadType.SEND,\n operation,\n}) => {\n if (type !== PayloadType.REPLY && type !== PayloadType.REQUEST) {\n return <></>;\n }\n const reply = operation.reply();\n if (reply === undefined || !reply.hasAddress()) {\n return <></>;\n }\n const replyAddress = reply.address()!;\n const replyAddressLocation = replyAddress.location();\n\n return (\n <div className=\"flex\">\n <div\n className={`w-1 h-11 ${\n type === 'reply' ? 'bg-green-600' : 'bg-blue-600'\n } mt-4`}\n />\n <div className=\"p-4\">\n <h3 className=\"text-xs\">\n <span className=\"mr-2 uppercase\" title={type}>\n REPLY address information\n </span>\n </h3>\n {replyAddressLocation && (\n <div className=\"text-xs text-gray-700\">\n REPLY will be sent to the address provided in:\n <span className=\"border text-orange-600 rounded text-xs ml-2 py-0 px-2\">\n {replyAddressLocation}\n </span>\n </div>\n )}\n {replyAddress.hasDescription() && (\n <div className=\"mt-2\">\n <Markdown>{replyAddress.description()}</Markdown>\n </div>\n )}\n <Extensions name=\"Operation Reply Address Extensions\" item={reply} />\n </div>\n </div>\n );\n};\n"]}
@@ -18,12 +18,24 @@ export var Operations = function () {
18
18
  var channel = operation.channels().all()[0];
19
19
  var channelAddress = (_a = channel === null || channel === void 0 ? void 0 : channel.address()) !== null && _a !== void 0 ? _a : '';
20
20
  if (operation.isSend()) {
21
- operationsList.push(React.createElement("li", { className: "mb-12", key: "pub-".concat(operation.id()), id: CommonHelpers.getIdentifier("operation-".concat(PayloadType.PUBLISH, "-").concat(operation.id()), config) },
22
- React.createElement(Operation, { type: PayloadType.PUBLISH, operation: operation, channelName: channelAddress, channel: channel })));
21
+ if (operation.reply() !== undefined) {
22
+ operationsList.push(React.createElement("li", { className: "mb-12", key: "req-".concat(operation.id()), id: CommonHelpers.getIdentifier("operation-".concat(PayloadType.REQUEST, "-").concat(operation.id()), config) },
23
+ React.createElement(Operation, { type: PayloadType.REQUEST, operation: operation, channelName: channelAddress, channel: channel })));
24
+ }
25
+ else {
26
+ operationsList.push(React.createElement("li", { className: "mb-12", key: "pub-".concat(operation.id()), id: CommonHelpers.getIdentifier("operation-".concat(PayloadType.SEND, "-").concat(operation.id()), config) },
27
+ React.createElement(Operation, { type: PayloadType.SEND, operation: operation, channelName: channelAddress, channel: channel })));
28
+ }
23
29
  }
24
30
  if (operation.isReceive()) {
25
- operationsList.push(React.createElement("li", { className: "mb-12", key: "sub-".concat(operation.id()), id: CommonHelpers.getIdentifier("operation-".concat(PayloadType.SUBSCRIBE, "-").concat(operation.id()), config) },
26
- React.createElement(Operation, { type: PayloadType.SUBSCRIBE, operation: operation, channelName: channelAddress, channel: channel })));
31
+ if (operation.reply() !== undefined) {
32
+ operationsList.push(React.createElement("li", { className: "mb-12", key: "replier-".concat(operation.id()), id: CommonHelpers.getIdentifier("operation-".concat(PayloadType.REPLY, "-").concat(operation.id()), config) },
33
+ React.createElement(Operation, { type: PayloadType.REPLY, operation: operation, channelName: channelAddress, channel: channel })));
34
+ }
35
+ else {
36
+ operationsList.push(React.createElement("li", { className: "mb-12", key: "sub-".concat(operation.id()), id: CommonHelpers.getIdentifier("operation-".concat(PayloadType.RECEIVE, "-").concat(operation.id()), config) },
37
+ React.createElement(Operation, { type: PayloadType.RECEIVE, operation: operation, channelName: channelAddress, channel: channel })));
38
+ }
27
39
  }
28
40
  });
29
41
  return (React.createElement("section", { id: "".concat(CommonHelpers.getIdentifier('operations', config)), className: "mt-16" },
@@ -1 +1 @@
1
- {"version":3,"file":"Operations.js","sourceRoot":"","sources":["../../../../src/containers/Operations/Operations.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AACpD,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAC9C,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAClD,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAE1C,MAAM,CAAC,IAAM,UAAU,GAA4B;IACjD,IAAM,UAAU,GAAG,OAAO,EAAE;SACzB,UAAU,EAAE;SACZ,GAAG,EAAE,CAAC;IACT,IAAM,MAAM,GAAG,SAAS,EAAE,CAAC;IAE3B,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,MAAM,EAAE;QACnC,OAAO,IAAI,CAAC;KACb;IAED,IAAM,cAAc,GAAyB,EAAE,CAAC;IAChD,UAAU,CAAC,OAAO,CAAC,UAAA,SAAS;;QAC1B,IAAM,OAAO,GAAG,SAAS,CAAC,QAAQ,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC;QAC9C,IAAM,cAAc,GAAG,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,OAAO,EAAE,mCAAI,EAAE,CAAC;QAChD,IAAI,SAAS,CAAC,MAAM,EAAE,EAAE;YACtB,cAAc,CAAC,IAAI,CACjB,4BACE,SAAS,EAAC,OAAO,EACjB,GAAG,EAAE,cAAO,SAAS,CAAC,EAAE,EAAE,CAAE,EAC5B,EAAE,EAAE,aAAa,CAAC,aAAa,CAC7B,oBAAa,WAAW,CAAC,OAAO,cAAI,SAAS,CAAC,EAAE,EAAE,CAAE,EACpD,MAAM,CACP;gBAED,oBAAC,SAAS,IACR,IAAI,EAAE,WAAW,CAAC,OAAO,EACzB,SAAS,EAAE,SAAS,EACpB,WAAW,EAAE,cAAc,EAC3B,OAAO,EAAE,OAAO,GAChB,CACC,CACN,CAAC;SACH;QACD,IAAI,SAAS,CAAC,SAAS,EAAE,EAAE;YACzB,cAAc,CAAC,IAAI,CACjB,4BACE,SAAS,EAAC,OAAO,EACjB,GAAG,EAAE,cAAO,SAAS,CAAC,EAAE,EAAE,CAAE,EAC5B,EAAE,EAAE,aAAa,CAAC,aAAa,CAC7B,oBAAa,WAAW,CAAC,SAAS,cAAI,SAAS,CAAC,EAAE,EAAE,CAAE,EACtD,MAAM,CACP;gBAED,oBAAC,SAAS,IACR,IAAI,EAAE,WAAW,CAAC,SAAS,EAC3B,SAAS,EAAE,SAAS,EACpB,WAAW,EAAE,cAAc,EAC3B,OAAO,EAAE,OAAO,GAChB,CACC,CACN,CAAC;SACH;IACH,CAAC,CAAC,CAAC;IAEH,OAAO,CACL,iCACE,EAAE,EAAE,UAAG,aAAa,CAAC,aAAa,CAAC,YAAY,EAAE,MAAM,CAAC,CAAE,EAC1D,SAAS,EAAC,OAAO;QAEjB,4BAAI,SAAS,EAAC,0CAA0C,IACrD,eAAe,CACb;QACL,gCAAK,cAAc,CAAM,CACjB,CACX,CAAC;AACJ,CAAC,CAAC","sourcesContent":["import React from 'react';\n\nimport { Operation } from './Operation';\nimport { useConfig, useSpec } from '../../contexts';\nimport { CommonHelpers } from '../../helpers';\nimport { OPERATIONS_TEXT } from '../../constants';\nimport { PayloadType } from '../../types';\n\nexport const Operations: React.FunctionComponent = () => {\n const operations = useSpec()\n .operations()\n .all();\n const config = useConfig();\n\n if (!Object.keys(operations).length) {\n return null;\n }\n\n const operationsList: React.ReactNodeArray = [];\n operations.forEach(operation => {\n const channel = operation.channels().all()[0];\n const channelAddress = channel?.address() ?? '';\n if (operation.isSend()) {\n operationsList.push(\n <li\n className=\"mb-12\"\n key={`pub-${operation.id()}`}\n id={CommonHelpers.getIdentifier(\n `operation-${PayloadType.PUBLISH}-${operation.id()}`,\n config,\n )}\n >\n <Operation\n type={PayloadType.PUBLISH}\n operation={operation}\n channelName={channelAddress}\n channel={channel}\n />\n </li>,\n );\n }\n if (operation.isReceive()) {\n operationsList.push(\n <li\n className=\"mb-12\"\n key={`sub-${operation.id()}`}\n id={CommonHelpers.getIdentifier(\n `operation-${PayloadType.SUBSCRIBE}-${operation.id()}`,\n config,\n )}\n >\n <Operation\n type={PayloadType.SUBSCRIBE}\n operation={operation}\n channelName={channelAddress}\n channel={channel}\n />\n </li>,\n );\n }\n });\n\n return (\n <section\n id={`${CommonHelpers.getIdentifier('operations', config)}`}\n className=\"mt-16\"\n >\n <h2 className=\"2xl:w-7/12 text-3xl font-light mb-4 px-8\">\n {OPERATIONS_TEXT}\n </h2>\n <ul>{operationsList}</ul>\n </section>\n );\n};\n"]}
1
+ {"version":3,"file":"Operations.js","sourceRoot":"","sources":["../../../../src/containers/Operations/Operations.tsx"],"names":[],"mappings":"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","sourcesContent":["import React from 'react';\n\nimport { Operation } from './Operation';\nimport { useConfig, useSpec } from '../../contexts';\nimport { CommonHelpers } from '../../helpers';\nimport { OPERATIONS_TEXT } from '../../constants';\nimport { PayloadType } from '../../types';\n\nexport const Operations: React.FunctionComponent = () => {\n const operations = useSpec()\n .operations()\n .all();\n const config = useConfig();\n\n if (!Object.keys(operations).length) {\n return null;\n }\n\n const operationsList: React.ReactNodeArray = [];\n operations.forEach(operation => {\n const channel = operation.channels().all()[0];\n const channelAddress = channel?.address() ?? '';\n if (operation.isSend()) {\n if (operation.reply() !== undefined) {\n operationsList.push(\n <li\n className=\"mb-12\"\n key={`req-${operation.id()}`}\n id={CommonHelpers.getIdentifier(\n `operation-${PayloadType.REQUEST}-${operation.id()}`,\n config,\n )}\n >\n <Operation\n type={PayloadType.REQUEST}\n operation={operation}\n channelName={channelAddress}\n channel={channel}\n />\n </li>,\n );\n } else {\n operationsList.push(\n <li\n className=\"mb-12\"\n key={`pub-${operation.id()}`}\n id={CommonHelpers.getIdentifier(\n `operation-${PayloadType.SEND}-${operation.id()}`,\n config,\n )}\n >\n <Operation\n type={PayloadType.SEND}\n operation={operation}\n channelName={channelAddress}\n channel={channel}\n />\n </li>,\n );\n }\n }\n if (operation.isReceive()) {\n if (operation.reply() !== undefined) {\n operationsList.push(\n <li\n className=\"mb-12\"\n key={`replier-${operation.id()}`}\n id={CommonHelpers.getIdentifier(\n `operation-${PayloadType.REPLY}-${operation.id()}`,\n config,\n )}\n >\n <Operation\n type={PayloadType.REPLY}\n operation={operation}\n channelName={channelAddress}\n channel={channel}\n />\n </li>,\n );\n } else {\n operationsList.push(\n <li\n className=\"mb-12\"\n key={`sub-${operation.id()}`}\n id={CommonHelpers.getIdentifier(\n `operation-${PayloadType.RECEIVE}-${operation.id()}`,\n config,\n )}\n >\n <Operation\n type={PayloadType.RECEIVE}\n operation={operation}\n channelName={channelAddress}\n channel={channel}\n />\n </li>,\n );\n }\n }\n });\n return (\n <section\n id={`${CommonHelpers.getIdentifier('operations', config)}`}\n className=\"mt-16\"\n >\n <h2 className=\"2xl:w-7/12 text-3xl font-light mb-4 px-8\">\n {OPERATIONS_TEXT}\n </h2>\n <ul>{operationsList}</ul>\n </section>\n );\n};\n"]}
package/lib/esm/types.js CHANGED
@@ -3,7 +3,9 @@ export function isFetchingSchemaInterface(schema) {
3
3
  }
4
4
  export var PayloadType;
5
5
  (function (PayloadType) {
6
- PayloadType["PUBLISH"] = "publish";
7
- PayloadType["SUBSCRIBE"] = "subscribe";
6
+ PayloadType["SEND"] = "send";
7
+ PayloadType["RECEIVE"] = "receive";
8
+ PayloadType["REQUEST"] = "request";
9
+ PayloadType["REPLY"] = "reply";
8
10
  })(PayloadType || (PayloadType = {}));
9
11
  //# sourceMappingURL=types.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"AAeA,MAAM,UAAU,yBAAyB,CACvC,MAAmB;IAEnB,OAAQ,MAAkC,CAAC,GAAG,KAAK,SAAS,CAAC;AAC/D,CAAC;AAYD,MAAM,CAAN,IAAY,WAGX;AAHD,WAAY,WAAW;IACrB,kCAAmB,CAAA;IACnB,sCAAuB,CAAA;AACzB,CAAC,EAHW,WAAW,KAAX,WAAW,QAGtB","sourcesContent":["import { AsyncAPIDocumentInterface } from '@asyncapi/parser';\n\nexport type PropsSchema =\n | string\n | FetchingSchemaInterface\n | AsyncAPIDocumentInterface\n | object;\n\nexport type NullableAsyncApi = AsyncAPIDocumentInterface | null;\n\nexport interface AsyncApiState {\n validatedSchema: NullableAsyncApi;\n error?: ErrorObject;\n}\n\nexport function isFetchingSchemaInterface(\n schema: PropsSchema,\n): schema is FetchingSchemaInterface {\n return (schema as FetchingSchemaInterface).url !== undefined;\n}\n\nexport interface FetchingSchemaInterface {\n url: string;\n requestOptions?: RequestInit;\n}\n\nexport interface ParserReturn {\n asyncapi?: AsyncAPIDocumentInterface;\n error?: ErrorObject;\n}\n\nexport enum PayloadType {\n PUBLISH = 'publish',\n SUBSCRIBE = 'subscribe',\n}\n\nexport interface MessageExample {\n name?: string;\n summary?: string;\n example: any;\n}\n\nexport interface ValidationError {\n title: string;\n location: {\n jsonPointer: string;\n startLine: number;\n startColumn: number;\n startOffset: number;\n endLine: number;\n endColumn: number;\n endOffset: number;\n };\n}\n\nexport interface ErrorObject {\n type: string;\n title: string;\n detail?: string;\n parsedJSON?: any;\n validationErrors?: ValidationError[];\n location?: {\n startLine: number;\n startColumn: number;\n startOffset: number;\n };\n refs?: Array<{\n title: string;\n jsonPointer: string;\n startLine: number;\n startColumn: number;\n startOffset: number;\n endLine: number;\n endColumn: number;\n endOffset: number;\n }>;\n}\n"]}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"AAeA,MAAM,UAAU,yBAAyB,CACvC,MAAmB;IAEnB,OAAQ,MAAkC,CAAC,GAAG,KAAK,SAAS,CAAC;AAC/D,CAAC;AAYD,MAAM,CAAN,IAAY,WAKX;AALD,WAAY,WAAW;IACrB,4BAAa,CAAA;IACb,kCAAmB,CAAA;IACnB,kCAAmB,CAAA;IACnB,8BAAe,CAAA;AACjB,CAAC,EALW,WAAW,KAAX,WAAW,QAKtB","sourcesContent":["import { AsyncAPIDocumentInterface } from '@asyncapi/parser';\n\nexport type PropsSchema =\n | string\n | FetchingSchemaInterface\n | AsyncAPIDocumentInterface\n | object;\n\nexport type NullableAsyncApi = AsyncAPIDocumentInterface | null;\n\nexport interface AsyncApiState {\n validatedSchema: NullableAsyncApi;\n error?: ErrorObject;\n}\n\nexport function isFetchingSchemaInterface(\n schema: PropsSchema,\n): schema is FetchingSchemaInterface {\n return (schema as FetchingSchemaInterface).url !== undefined;\n}\n\nexport interface FetchingSchemaInterface {\n url: string;\n requestOptions?: RequestInit;\n}\n\nexport interface ParserReturn {\n asyncapi?: AsyncAPIDocumentInterface;\n error?: ErrorObject;\n}\n\nexport enum PayloadType {\n SEND = 'send',\n RECEIVE = 'receive',\n REQUEST = 'request',\n REPLY = 'reply',\n}\n\nexport interface MessageExample {\n name?: string;\n summary?: string;\n example: any;\n}\n\nexport interface ValidationError {\n title: string;\n location: {\n jsonPointer: string;\n startLine: number;\n startColumn: number;\n startOffset: number;\n endLine: number;\n endColumn: number;\n endOffset: number;\n };\n}\n\nexport interface ErrorObject {\n type: string;\n title: string;\n detail?: string;\n parsedJSON?: any;\n validationErrors?: ValidationError[];\n location?: {\n startLine: number;\n startColumn: number;\n startOffset: number;\n };\n refs?: Array<{\n title: string;\n jsonPointer: string;\n startLine: number;\n startColumn: number;\n startOffset: number;\n endLine: number;\n endColumn: number;\n endOffset: number;\n }>;\n}\n"]}
@@ -5,7 +5,11 @@ export interface ConfigInterface {
5
5
  sidebar?: SideBarConfig;
6
6
  parserOptions?: any;
7
7
  publishLabel?: string;
8
+ sendLabel?: string;
8
9
  subscribeLabel?: string;
10
+ receiveLabel?: string;
11
+ requestLabel?: string;
12
+ replyLabel?: string;
9
13
  }
10
14
  export interface ShowConfig {
11
15
  sidebar?: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../../src/config/config.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,IAAI,CAAC,EAAE,UAAU,CAAC;IAClB,MAAM,CAAC,EAAE,YAAY,CAAC;IACtB,OAAO,CAAC,EAAE,aAAa,CAAC;IACxB,aAAa,CAAC,EAAE,GAAG,CAAC;IACpB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,MAAM,WAAW,UAAU;IACzB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,MAAM,WAAW,YAAY;IAC3B,eAAe,CAAC,EAAE,OAAO,CAAC;CAC3B;AAED,MAAM,WAAW,aAAa;IAC5B,WAAW,CAAC,EAAE,WAAW,GAAG,YAAY,GAAG,eAAe,CAAC;IAC3D,cAAc,CAAC,EAAE,WAAW,GAAG,YAAY,GAAG,kBAAkB,CAAC;CAClE"}
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../../src/config/config.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,IAAI,CAAC,EAAE,UAAU,CAAC;IAClB,MAAM,CAAC,EAAE,YAAY,CAAC;IACtB,OAAO,CAAC,EAAE,aAAa,CAAC;IACxB,aAAa,CAAC,EAAE,GAAG,CAAC;IACpB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,UAAU;IACzB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,MAAM,WAAW,YAAY;IAC3B,eAAe,CAAC,EAAE,OAAO,CAAC;CAC3B;AAED,MAAM,WAAW,aAAa;IAC5B,WAAW,CAAC,EAAE,WAAW,GAAG,YAAY,GAAG,eAAe,CAAC;IAC3D,cAAc,CAAC,EAAE,WAAW,GAAG,YAAY,GAAG,kBAAkB,CAAC;CAClE"}
@@ -28,8 +28,16 @@ export declare const SPECIFICATION_TEXT = "Specification";
28
28
  export declare const DEPRECATED_TEXT = "Deprecated";
29
29
  export declare const PUBLISH_TEXT = "Publish";
30
30
  export declare const PUBLISH_LABEL_DEFAULT_TEXT = "PUB";
31
+ export declare const SEND_TEXT = "Send";
32
+ export declare const SEND_LABEL_DEFAULT_TEXT = "SEND";
31
33
  export declare const SUBSCRIBE_TEXT = "Subscribe";
32
34
  export declare const SUBSCRIBE_LABEL_DEFAULT_TEXT = "SUB";
35
+ export declare const RECEIVE_TEXT = "Receive";
36
+ export declare const RECEIVE_TEXT_LABEL_DEFAULT_TEXT = "RECEIVE";
37
+ export declare const REQUEST_TEXT = "Request";
38
+ export declare const REQUEST_LABEL_DEFAULT_TEXT = "REQUEST";
39
+ export declare const REPLIER_TEXT = "Reply";
40
+ export declare const REPLIER_LABEL_DEFAULT_TEXT = "REPLY";
33
41
  export declare const REQUIRED_TEXT = "Required";
34
42
  export declare const GENERATED_TEXT = "Generated";
35
43
  export declare const SERVERS_TEXT = "Servers";
@@ -1 +1 @@
1
- {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../src/constants.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,UAAU,aAAa,CAAC;AACrC,eAAO,MAAM,kBAAkB,iDACiB,CAAC;AACjD,eAAO,MAAM,iBAAiB,iBAAiB,CAAC;AAChD,eAAO,MAAM,eAAe,eAAe,CAAC;AAE5C,eAAO,MAAM,sBAAsB,4DACwB,CAAC;AAC5D,eAAO,MAAM,OAAO,YAAY,CAAC;AAEjC,eAAO,MAAM,oBAAoB,2BAA2B,CAAC;AAC7D,eAAO,MAAM,oBAAoB,2BAA2B,CAAC;AAC7D,eAAO,MAAM,oBAAoB,cAAc,CAAC;AAChD,eAAO,MAAM,sCAAsC,gDACJ,CAAC;AAChD,eAAO,MAAM,6CAA6C,wCACnB,CAAC;AACxC,eAAO,MAAM,wCAAwC,wDACE,CAAC;AACxD,eAAO,MAAM,+CAA+C,gDACb,CAAC;AAChD,eAAO,MAAM,0BAA0B,gDACQ,CAAC;AAChD,eAAO,MAAM,wBAAwB,wCAAwC,CAAC;AAE9E,eAAO,MAAM,YAAY,YAAY,CAAC;AACtC,eAAO,MAAM,SAAS,SAAS,CAAC;AAChC,eAAO,MAAM,QAAQ,QAAQ,CAAC;AAC9B,eAAO,MAAM,UAAU,UAAU,CAAC;AAClC,eAAO,MAAM,YAAY,YAAY,CAAC;AACtC,eAAO,MAAM,qBAAqB,qBAAqB,CAAC;AACxD,eAAO,MAAM,gBAAgB,YAAY,CAAC;AAC1C,eAAO,MAAM,kBAAkB,kBAAkB,CAAC;AAClD,eAAO,MAAM,0BAA0B,kBAAkB,CAAC;AAC1D,eAAO,MAAM,aAAa,aAAa,CAAC;AACxC,eAAO,MAAM,SAAS,SAAS,CAAC;AAChC,eAAO,MAAM,kBAAkB,kBAAkB,CAAC;AAElD,eAAO,MAAM,eAAe,eAAe,CAAC;AAC5C,eAAO,MAAM,YAAY,YAAY,CAAC;AACtC,eAAO,MAAM,0BAA0B,QAAQ,CAAC;AAChD,eAAO,MAAM,cAAc,cAAc,CAAC;AAC1C,eAAO,MAAM,4BAA4B,QAAQ,CAAC;AAClD,eAAO,MAAM,aAAa,aAAa,CAAC;AACxC,eAAO,MAAM,cAAc,cAAc,CAAC;AAE1C,eAAO,MAAM,YAAY,YAAY,CAAC;AACtC,eAAO,MAAM,eAAe,eAAe,CAAC;AAC5C,eAAO,MAAM,aAAa,aAAa,CAAC;AACxC,eAAO,MAAM,YAAY,YAAY,CAAC;AAEtC,eAAO,MAAM,aAAa,aAAa,CAAC;AACxC,eAAO,MAAM,eAAe,eAAe,CAAC;AAC5C,eAAO,MAAM,YAAY,YAAY,CAAC;AACtC,eAAO,MAAM,oBAAoB,oBAAoB,CAAC;AACtD,eAAO,MAAM,oBAAoB,uBAAuB,CAAC;AACzD,eAAO,MAAM,SAAS,SAAS,CAAC;AAChC,eAAO,MAAM,YAAY,YAAY,CAAC;AACtC,eAAO,MAAM,oBAAoB,oBAAoB,CAAC;AACtD,eAAO,MAAM,oBAAoB,uBAAuB,CAAC;AACzD,eAAO,MAAM,mBAAmB,YAAY,CAAC;AAE7C,eAAO,MAAM,oBAAoB,oBAAoB,CAAC;AACtD,eAAO,MAAM,qBAAqB,qBAAqB,CAAC;AACxD,eAAO,MAAM,uBAAuB,uBAAuB,CAAC;AAC5D,eAAO,MAAM,qBAAqB,qBAAqB,CAAC;AAExD,eAAO,MAAM,2BAA2B,kBAAkB,CAAC;AAE3D,eAAO,MAAM,SAAS,SAAS,CAAC;AAChC,eAAO,MAAM,QAAQ,QAAQ,CAAC;AAC9B,eAAO,MAAM,UAAU,UAAU,CAAC;AAClC,eAAO,MAAM,wBAAwB,WAAW,CAAC;AACjD,eAAO,MAAM,0BAA0B,aAAa,CAAC;AAErD,eAAO,MAAM,aAAa,aAAa,CAAC;AAExC,eAAO,MAAM,kBAAkB,kBAAkB,CAAC"}
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../src/constants.ts"],"names":[],"mappings":"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"}