Liferay.Loader.define('frontend-taglib-clay$clay-data-provider@2.24.1/src/ClayDataProvider.soy', ['module', 'exports', 'require'], function (module, exports, require) {
  var define = undefined;
  var global = window;
  {
    /* jshint ignore:start */
    import Component from 'metal-component';
    import Soy from 'metal-soy';

    var templates;
    goog.loadModule(function (exports) {
      var soy = goog.require('soy');

      goog.require('soydata');

      // This file was automatically generated from ClayDataProvider.soy.
      // Please don't edit this file by hand.

      /**
       * @fileoverview Templates in namespace ClayDataProvider.
       * @public
       */

      goog.module('ClayDataProvider.incrementaldom');

      var incrementalDom = goog.require('incrementaldom');
      goog.require('soy.asserts');
      var soyIdom = goog.require('soy.idom');

      /**
       * @param {{
       *  content: *,
       *  errorContent: (*|null|undefined),
       *  isError: (boolean|null|undefined),
       *  isLoading: (boolean|null|undefined),
       *  loadingContent: (*|null|undefined)
       * }} opt_data
       * @param {Object<string, *>=} opt_ijData
       * @param {Object<string, *>=} opt_ijData_deprecated
       * @return {void}
       * @suppress {checkTypes}
       */
      function $render(opt_data, opt_ijData, opt_ijData_deprecated) {
        opt_ijData = opt_ijData_deprecated || opt_ijData;
        /** @type {*} */
        var content = opt_data.content;
        /** @type {*|null|undefined} */
        var errorContent = opt_data.errorContent;
        /** @type {boolean|null|undefined} */
        var isError = soy.asserts.assertType(opt_data.isError == null || goog.isBoolean(opt_data.isError) || opt_data.isError === 1 || opt_data.isError === 0, 'isError', opt_data.isError, 'boolean|null|undefined');
        /** @type {boolean|null|undefined} */
        var isLoading = soy.asserts.assertType(opt_data.isLoading == null || goog.isBoolean(opt_data.isLoading) || opt_data.isLoading === 1 || opt_data.isLoading === 0, 'isLoading', opt_data.isLoading, 'boolean|null|undefined');
        /** @type {*|null|undefined} */
        var loadingContent = opt_data.loadingContent;
        incrementalDom.elementOpen('div');
        if (isLoading && loadingContent) {
          soyIdom.print(loadingContent);
        } else if (isError && errorContent) {
          soyIdom.print(errorContent);
        } else {
          soyIdom.print(content);
        }
        incrementalDom.elementClose('div');
      }
      exports.render = $render;
      /**
       * @typedef {{
       *  content: *,
       *  errorContent: (*|null|undefined),
       *  isError: (boolean|null|undefined),
       *  isLoading: (boolean|null|undefined),
       *  loadingContent: (*|null|undefined)
       * }}
       */
      $render.Params;
      if (goog.DEBUG) {
        $render.soyTemplateName = 'ClayDataProvider.render';
      }

      exports.render.params = ["content", "errorContent", "isError", "isLoading", "loadingContent"];
      exports.render.types = { "content": "any", "errorContent": "any", "isError": "bool", "isLoading": "bool", "loadingContent": "any" };
      templates = exports;
      return exports;
    });

    class ClayDataProvider extends Component {}
    Soy.register(ClayDataProvider, templates);
    export { ClayDataProvider, templates };
    export default templates;
    /* jshint ignore:end */
  }
});
//# sourceMappingURL=ClayDataProvider.soy.js.map