@salesforcedevs/docs-components 0.54.0 → 0.54.5

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 (40) hide show
  1. package/lwc.config.json +6 -2
  2. package/package.json +12 -4
  3. package/src/modules/README.md +41 -0
  4. package/src/modules/doc/amfReference/amfReference.css +5 -0
  5. package/src/modules/doc/amfReference/amfReference.html +39 -0
  6. package/src/modules/doc/amfReference/amfReference.ts +813 -0
  7. package/src/modules/doc/amfReference/route-meta.ts +22 -0
  8. package/src/modules/doc/amfReference/types.ts +93 -0
  9. package/src/modules/doc/amfReference/utils.ts +669 -0
  10. package/src/modules/doc/amfTopic/amfTopic.css +1 -0
  11. package/src/modules/doc/amfTopic/amfTopic.html +3 -0
  12. package/src/modules/doc/amfTopic/amfTopic.ts +94 -0
  13. package/src/modules/doc/amfTopic/types.ts +54 -0
  14. package/src/modules/doc/amfTopic/utils.ts +130 -0
  15. package/src/modules/doc/breadcrumbItem/breadcrumbItem.css +2 -2
  16. package/src/modules/doc/breadcrumbs/breadcrumbs.css +2 -2
  17. package/src/modules/doc/breadcrumbs/breadcrumbs.ts +1 -1
  18. package/src/modules/doc/content/content.css +4 -4
  19. package/src/modules/doc/content/content.ts +1 -1
  20. package/src/modules/doc/contentCallout/contentCallout.css +4 -4
  21. package/src/modules/doc/contentLayout/contentLayout.css +100 -0
  22. package/src/modules/doc/contentLayout/contentLayout.html +55 -0
  23. package/src/modules/doc/contentLayout/contentLayout.ts +242 -0
  24. package/src/modules/doc/header/header.css +1 -1
  25. package/src/modules/doc/header/header.ts +2 -2
  26. package/src/modules/doc/headingAnchor/headingAnchor.css +1 -1
  27. package/src/modules/doc/headingContent/headingContent.css +1 -1
  28. package/src/modules/doc/phase/phase.css +3 -3
  29. package/src/modules/doc/phase/phase.ts +1 -1
  30. package/src/modules/doc/xmlContent/types.ts +119 -0
  31. package/src/modules/doc/xmlContent/utils.ts +163 -0
  32. package/src/modules/doc/xmlContent/xmlContent.css +25 -0
  33. package/src/modules/doc/xmlContent/xmlContent.html +34 -0
  34. package/src/modules/doc/xmlContent/xmlContent.ts +553 -0
  35. package/src/modules/docBaseElements/lightningElementWithState/lightningElementWithState.ts +93 -0
  36. package/src/modules/docHelpers/amfStyle/amfStyle.css +390 -0
  37. package/src/modules/docHelpers/phaseContentLayout/phaseContentLayout.css +39 -0
  38. package/src/modules/{helpers → docHelpers}/status/status.css +0 -0
  39. package/src/modules/docUtils/SearchSyncer/SearchSyncer.ts +85 -0
  40. package/LICENSE +0 -12
package/lwc.config.json CHANGED
@@ -4,13 +4,17 @@
4
4
  { "npm": "@salesforcedevs/dx-components" }
5
5
  ],
6
6
  "expose": [
7
+ "doc/amfReference",
7
8
  "doc/breadcrumbs",
9
+ "doc/content",
8
10
  "doc/contentCallout",
11
+ "doc/contentLayout",
9
12
  "doc/contentMedia",
10
- "doc/content",
13
+ "doc/docXmlContent",
11
14
  "doc/header",
12
15
  "doc/heading",
13
16
  "doc/headingAnchor",
14
- "doc/phase"
17
+ "doc/phase",
18
+ "doc/xmlContent"
15
19
  ]
16
20
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@salesforcedevs/docs-components",
3
- "version": "0.54.0",
3
+ "version": "0.54.5",
4
4
  "description": "Docs Lightning web components for DSC",
5
5
  "license": "MIT",
6
6
  "main": "index.js",
@@ -11,10 +11,18 @@
11
11
  "access": "public"
12
12
  },
13
13
  "dependencies": {
14
- "classnames": "^2.2.6"
14
+ "@api-components/amf-helper-mixin": "^4.5.17",
15
+ "classnames": "^2.2.6",
16
+ "kagekiri": "^1.4.1",
17
+ "lodash.orderby": "^4.6.0",
18
+ "lodash.uniqby": "^4.7.0",
19
+ "query-string": "^7.1.1",
20
+ "sentence-case": "^3.0.4"
15
21
  },
16
22
  "devDependencies": {
17
- "@types/classnames": "^2.2.10"
23
+ "@types/classnames": "^2.2.10",
24
+ "@types/lodash.orderby": "^4.6.7",
25
+ "@types/lodash.uniqby": "^4.7.7"
18
26
  },
19
- "gitHead": "a082ff95e2d262ceef73e42e9ebd51c93b44eed0"
27
+ "gitHead": "4629fdd9ca18a13480044ad43515b91945d16aad"
20
28
  }
@@ -0,0 +1,41 @@
1
+ ## AMF Reference
2
+
3
+ AMF refers to MuleSoft’s AML Modeling Framework for modeling documentation and it’s metadata. In this context, AMF is leveraged to parse and normalize API documentation from varying sources and formats, to one format which is the AMF file. We then leverage HTML Web Components created by MuleSoft to render this API documentation by passing it the generated AMF. These HTML Web Components may be referred to as API Console components, ARC (advanced rest components) components, or api documentation components (for the npm package).
4
+
5
+ Ref:
6
+ https://a.ml/docs/amf/
7
+ https://github.com/aml-org/amf
8
+
9
+ ## AMF Reference Component
10
+
11
+ _Components:_ doc-amf-reference, apihub-amf-topic
12
+
13
+ The AMF Reference Component is a LWC component defined within the developer website’s theme. This component is rendered on the API Reference pages.
14
+
15
+ Ref: https://github.com/salesforcedevs/developer-website/tree/main/theme/src/modules/apihub
16
+
17
+ This component takes as input a list of JSON metadata containing the URL information of the reference spec data files. This JSON configuration is generated for each writer repository that contains reference content, and is generated by the SFDocs framework.
18
+
19
+ This component
20
+
21
+ - Takes as input the reference data files (as AMF JSON)
22
+ - Parses the AML data into a model
23
+ - Plugs the model into the ARC components to surface documentation content
24
+ - Handles navigation events to browse the content
25
+
26
+ ### AMF Parser
27
+
28
+ Ref: https://github.com/salesforcedevs/developer-website/blob/main/theme/src/modules/apihub/amfReference/amf-parser.js
29
+
30
+ This class parses the AMF JSON data for one spec and extrapolates the data specific to rendering sections of that specs topic documentation.
31
+
32
+ The parsed data includes:
33
+
34
+ - Title
35
+ - Topics:
36
+ - Summary
37
+ - Endpoints
38
+ - Methods
39
+ - Types
40
+ - Docs
41
+ - Security
@@ -0,0 +1,5 @@
1
+ @import "docHelpers/phaseContentLayout";
2
+
3
+ .version-picker {
4
+ margin-left: auto;
5
+ }
@@ -0,0 +1,39 @@
1
+ <template>
2
+ <doc-content-layout
3
+ use-old-sidebar={useOldSidebar}
4
+ class="content-type content-type-reference"
5
+ coveo-organization-id={coveoOrganizationId}
6
+ coveo-public-access-token={coveoPublicAccessToken}
7
+ coveo-search-hub={coveoSearchHub}
8
+ coveo-advanced-query-config={coveoAdvancedQueryConfig}
9
+ breadcrumbs={breadcrumbs}
10
+ sidebar-header={sidebarHeader}
11
+ sidebar-value={selectedSidebarValue}
12
+ sidebar-content={navigation}
13
+ onselect={onNavSelect}
14
+ >
15
+ <div slot="doc-phase" if:true={docPhaseInfo} class="doc-phase-wrapper">
16
+ <doc-phase doc-phase-info={docPhaseInfo}></doc-phase>
17
+ </div>
18
+ <div slot="sidebar-header" class="version-picker">
19
+ <template if:true={isVersionEnabled}>
20
+ <dx-dropdown
21
+ suppress-gtm-nav-headings
22
+ onchange={handleVersionChange}
23
+ data-type="version"
24
+ options={versions}
25
+ value={selectedVersion.id}
26
+ width="290px"
27
+ >
28
+ <dx-button variant="inline">{selectedVersion.id}</dx-button>
29
+ </dx-dropdown>
30
+ </template>
31
+ </div>
32
+
33
+ <div class="container">
34
+ <div class="api-documentation">
35
+ <doc-amf-topic model={topicModel}></doc-amf-topic>
36
+ </div>
37
+ </div>
38
+ </doc-content-layout>
39
+ </template>