4.1.0 • Published 10 months ago

crownpeak-dxm-react-sdk v4.1.0

Weekly downloads
26
License
MIT
Repository
github
Last release
10 months ago

Crownpeak Logo

Crownpeak Digital Experience Management (DXM) Software Development Kit (SDK) for React

Crownpeak Digital Experience Management (DXM) Software Development Kit (SDK) for React has been constructed to assist the Single Page App developer in developing client-side applications that leverage DXM for content management purposes.

For all usage instructions, see https://github.com/Crownpeak/DXM-React-SDK

Benefits

  • Runtime libraries to handle communication with either Dynamic (DXM Dynamic Content API) or Static (On-disk JSON payload) Data Sources

    As a development team runs their build process, the underlying React Application will be minified and likely packed into a set of browser-compatible libraries (e.g., ES5). We expect any DXM NPM Packages also to be compressed in this manner. To facilitate communication between the React Application and content managed within DXM, a runtime NPM Package is provided. The purpose of this package is:

    • Read application configuration detail from a global environment file (e.g., Dynamic Content API endpoint and credentials, static content disk location, etc.);
    • Making data models available to the React Application, which a developer can map against

      • Dynamic Data - Asynchronously processing data from the DXM Dynamic Content API, using the Search G2 Raw JSON endpoint; and
      • Static Data - Loading JSON payload data directly from local storage.
  • DXM Content-Type Scaffolding

    Developers will continue to work with their Continuous Integration / Delivery and source control tooling to create a React application. However, the purpose of the DXM Content-Type Scaffolding build step is to convert the React Components in a single direction (React > DXM), into the necessary configuration to support CMS operations. At present, the DXM Component Library includes the capability to auto-generate Templates (input.aspx, output.aspx, post_input.aspx) based upon a moustache-style syntax (decorating of editable properties). It is not intended that we re-design this process, as it is fully supported within DXM, and customer-battle-tested - therefore, in order to create Template configuration, the build step:

    • Converts React Components into Crownpeak Components by using the existing Component Builder Process, via the CMS Access API (DXM's RESTful Content Manipulation API), and then existing "post_save" process;
    • Creates Templates for each React Page (One of the DXM React Component Types) by using the existing Template Builder Process, again via the CMS Access API and existing "post_save" process; and
    • Creates a new Model for the React Page Content-Type, via the CMS Access API, so that authors can create multiple versions of a structured Page or Component, without needing to run an entire development/test cycle.

Version History

VersionDateChanges
1.0.22020APR24Initial Release.
1.0.32020MAY05Adds Component dependencies.
1.0.42020MAY05Correct paths in cmsify script.
1.0.52020MAY07Changed to use crownpeak-dxm-accessapi-helper.
1.0.72020MAY11Changed to use crownpeak-dxm-sdk-core.
1.0.82020MAY12cmsify.js now called from Node /.bin.
1.0.102020MAY27Added CSS parsing/upload support. Added Wrapper selection.
1.0.112020JUN02Added DropZone support for DXM. Added command line parameters. Bug fixes.
1.0.122020JUN03Updated crownpeak-dxm-sdk-core version.
1.0.132020JUN05String for CmsFieldType. HTML components now supported in Wrappers. CSS parser updated for relative files.
1.0.142020JUN10Verify environment before processing. Manual re-compilation of Component Library. Support attributes & children on DropZone components. Bug fixes.
1.0.152020JUN17Support for list items. Bug fixes.
2.0.02020JUN30Migrated to TypeScript.
2.1.12020JUL28New 'init', 'patch' and 'scaffold' options, improved output, lots of bug fixes.
2.1.32020JUL29Updated crownpeak-dxm-sdk-core version.
2.2.02020SEP03Add support for indexed fields and cp-scaffold. Bug fixes.
2.3.02020OCT01Preserve paths for uploads, support uploads from pages and wrappers. Bug fixes.
2.4.02020OCT09Improved uploading and relinking, new page and component creation settings, new --only option. Bug fixes.
3.0.02020NOV06Change to asynchronous data loading, drag and drop zone governance, function components, TSX. Bug fixes.
3.0.12020NOV13Bug fixes for TypeScript and TSX files.
3.0.22020NOV17Bug fix to remove React comments before scaffolding.
3.1.02021JAN04Add cp-scaffold for pages, support for JSX fragments, ignore non-Crownpeak components, string replacements via .cpscaffold.json.
3.2.02021JAN07Add cp-scaffold for wrappers, option to include metadata on pages, $file macro in CMS_STATIC_CONTENT_LOCATION.
3.2.12021JAN08Extra macro option using {file} in CMS_STATIC_CONTENT_LOCATION.
3.2.22021JAN11CmsCore change to help with TypeScript for DropZone.
3.3.02021JAN13Add cmsDisableDragDrop option to mark components unsuitable for Drag and Drop, and bug fix.
3.4.02021MAR15Updates to support Gatsby, bug fixes.
3.5.02021OCT15Template Builder supports default template files, react comments allowed inside an element, bug fixes.
3.5.12021OCT27Bug fix for error when updating a model inside a project branch.
3.6.02022FEB02Add support for passing type arguments to CmsComponent.
4.0.02022MAY05Update package.json to allow newer versions of React to be used.
4.0.12022JUL28Update page parsers to support components living in subfolders.
4.1.02023-07-10Bump DXM SDK Core version to remove vulnerable dependencies.
4.1.0

10 months ago

4.0.1

2 years ago

4.0.0

2 years ago

3.6.0

2 years ago

3.5.1

3 years ago

3.5.0

3 years ago

3.4.0

3 years ago

3.3.0

3 years ago

3.2.3

3 years ago

3.2.2

3 years ago

3.2.1

3 years ago

3.2.0

3 years ago

3.1.0

3 years ago

3.0.2

3 years ago

3.0.1

3 years ago

3.0.0

4 years ago

2.4.0

4 years ago

2.3.0

4 years ago

2.2.0

4 years ago

2.1.3

4 years ago

2.1.2

4 years ago

2.1.1

4 years ago

2.1.0

4 years ago

2.0.0

4 years ago

1.0.15

4 years ago

1.0.14

4 years ago

1.0.13

4 years ago

1.0.11

4 years ago

1.0.12

4 years ago

1.0.9

4 years ago

1.0.10

4 years ago

1.0.8

4 years ago

1.0.7

4 years ago

1.0.6

4 years ago

1.0.5

4 years ago

1.0.4

4 years ago

1.0.3

4 years ago

1.0.2

4 years ago

1.0.1

4 years ago

1.0.0

4 years ago