Akumina Developer Documentation

Akumina Developer Documentation

  • API
  • Docs
  • Blog

›Authoring

Akumina

  • Quickstart

Yo Akumina

  • Yo Akumina
  • Start with Yeoman
  • React
  • Simple template

Widget Builder

  • Widget Builder Structure
  • Akumina Widget Builder
  • Skipping instances
  • Token replacement for widget properties

Widget Development Quickstart

  • Setting up the Project
  • Configuring .env file
  • Configuring - akumina.sitedployer.config.json file
  • Configuring - akumina.config.json file
  • Extras

Widget Info

  • Akumina Widgets Overview
  • Building a New Widget Instance
  • Widget Views
  • Widget Properties
  • Global vs Local widgets (Widget Scoping)
  • Akumina React Widgets
  • Callbacks
  • RenderChildWidgets
  • Vendor Package List

Virtual Page Builder

  • Akumina Virtual Page Builder
  • Using Virtual Page Layouts
  • Creating a Custom Layout

Stream Card Builder

  • Installation
  • Stream Card Builder
  • Custom Cards
  • Activity Comments Config
  • Akumina Activity Stream PUSH Subscription using PowerAutomate to connect to ServiceNow
  • Akumina Activity Stream PUSH Subscription using PowerAutomate to connect to Dynamic 365

Site Deployer

  • Overview
  • Version 6.0
  • List Attribute Deployments
  • NPM Commands
  • SPA Updates and Deploying to multiple sites

Authoring

  • Content Action Event
  • Publish Validation Integration
  • Field Event Integration
  • CK Editor external plugins

Headless

  • Quickstart
  • Headless Teams support
  • Headless Troubleshooting

Modern

  • Overview
  • FAQ
  • Single Page Application
  • Modern Web Part Library
  • Google Analytics for Modern Pages

Site Creator

  • Overview
  • Adding A Custom Site Definition
  • Core Step Classes
  • Custom Site Definition Components
  • Custom Site Definition XML
  • Custom Subsite Definitions
  • Sample Step Code
  • Supported Tokens

Azure DevOps

  • CI/CD using Azure DevOps
  • Setting up a build to deploy a site package
  • Setting up a build to deploy file to App Manager hosted in an app service

Configuration

  • Configuration Context Overview
  • Edit the Redis cache timeout
  • Using a key vault for the client id and client secret

Debugging

  • Debugging in Akumina

Advanced

  • Central Site Collection Support
  • Eventing OOB Digital Workplace Events
  • Working with custom JSX Views
  • Page Indexing

Service Hub

  • Quickstart

Patch Notes

  • Patch Notes

Publish Validation Integration

Applies to

6.0+

Overview

The Structured Content Module supports custom publish validation. This allows clients to run custom asynchronous code, and abort the publish if it does not meet some criteria they specify.

This feature is currently only implemented in the Structured Content Module for Author Content Apps. It is enabled for both workflow and non-workflow enabled lists. It is not called for save.

Components

There is one component to this feature: a AkValidatePublishCallbackAsync method, which accepts the published item as a parameter

AkValidatePublishCallbackAsync

All of your code will be written inside of the AkValidatePublishCallbackAsync method. This method needs to return a Promise, and you need to make sure to reject with an exception that you want to display to the user.

Example

window.AkValidatePublishCallbackAsync = async (item) => {
    var result = await yourCustomApiCallForPublishValidation(item);

    if (result.NotOkay) {
        throw "Publish is not allowed"
    }
}

If the exception is thrown (or Promise rejected if you're not using an async function), the user will see "Publish is not allowed" in a toast message and the publish will abort. Otherwise, the publish will proceed.

← Content Action EventField Event Integration →
Akumina Developer Documentation
Docs
Akumina Framework 5.0Akumina Widget BuilderAkumina Yeoman GeneratorSite Deployer
Community
Akumina Community Site
More
GitHubStar
Copyright © 2024 Akumina