當前位置: 首頁>>代碼示例>>TypeScript>>正文


TypeScript Objects.readOptFrom方法代碼示例

本文整理匯總了TypeScript中@ephox/boulder.Objects.readOptFrom方法的典型用法代碼示例。如果您正苦於以下問題:TypeScript Objects.readOptFrom方法的具體用法?TypeScript Objects.readOptFrom怎麽用?TypeScript Objects.readOptFrom使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在@ephox/boulder.Objects的用法示例。


在下文中一共展示了Objects.readOptFrom方法的9個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的TypeScript代碼示例。

示例1: process

const buildBasicSettingsDataset = (editor: Editor, settingName, defaults, delimiter: Delimiter): BasicSelectDataset => {
  const rawFormats = Objects.readOptFrom<string>(editor.settings, settingName).getOr(defaults);
  const data = process(split(rawFormats, delimiter));
  return {
    type: 'basic',
    data
  };
};
開發者ID:tinymce,項目名稱:tinymce,代碼行數:8,代碼來源:SelectDatasets.ts

示例2: getScopes

 editor.on(showContextToolbarEvent, (e) => {
   const scopes = getScopes();
   // TODO: Have this stored in a better structure
   Objects.readOptFrom<Toolbar.ContextToolbar | Toolbar.ContextForm>(scopes.lookupTable, e.toolbarKey).each((ctx) => {
     launchContext(ctx, e.target === editor ? Option.none() : Option.some(e as DomElement));
     // Forms launched via this way get immediate focus
     InlineView.getContent(contextbar).each(Keying.focusIn);
   });
 });
開發者ID:tinymce,項目名稱:tinymce,代碼行數:9,代碼來源:ContextToolbar.ts

示例3:

const generateValueIfRequired = (item: SingleMenuItemApi): SingleMenuItemApi => {
  // Separators don't have a value, so just return the item
  if (isSeparator(item)) {
    return item;
  } else {
    // Use the value already in item if it has one.
    const itemValue = Objects.readOptFrom(item, 'value').getOrThunk(() => Id.generate('generated-menu-item'));
    return Merger.deepMerge({ value: itemValue }, item);
  }
};
開發者ID:tinymce,項目名稱:tinymce,代碼行數:10,代碼來源:MenuConversion.ts

示例4: factory

const interpretParts: FormPartRenderer = (parts, spec, backstage) => {
  return Objects.readOptFrom(factories, spec.type).fold(
    () => {
      console.error(`Unknown factory type "${spec.type}", defaulting to container: `, spec);
      return spec as AlloySpec;
    },
    (factory: FormPartRenderer) => {
      return factory(parts, spec, backstage);
    }
  );
};
開發者ID:tinymce,項目名稱:tinymce,代碼行數:11,代碼來源:UiFactory.ts

示例5: function

const derive = function (editor) {
  const base = Objects.readOptFrom(editor.settings, 'skin_url').fold(function () {
    return EditorManager.baseURL + '/skins/' + 'lightgray';
  }, function (url) {
    return url;
  });

  return {
    content: base + '/content.mobile.min.css',
    ui: base + '/skin.mobile.min.css'
  };
};
開發者ID:aha-app,項目名稱:tinymce-word-paste-filter,代碼行數:12,代碼來源:CssUrls.ts

示例6: function

const register = function (editor, settings) {

  const isSelectedFor = function (format) {
    return function () {
      return editor.formatter.match(format);
    };
  };

  const getPreview = function (format) {
    return function () {
      const styles = editor.formatter.getCssText(format);
      return styles;
    };
  };

  const enrichSupported = function (item) {
    return Merger.deepMerge(item, {
      isSelected: isSelectedFor(item.format),
      getPreview: getPreview(item.format)
    });
  };

  // Item that triggers a submenu
  const enrichMenu = function (item) {
    return Merger.deepMerge(item, {
      isSelected: Fun.constant(false),
      getPreview: Fun.constant('')
    });
  };

  const enrichCustom = function (item) {
    const formatName = Id.generate(item.title);
    const newItem = Merger.deepMerge(item, {
      format: formatName,
      isSelected: isSelectedFor(formatName),
      getPreview: getPreview(formatName)
    });
    editor.formatter.register(formatName, newItem);
    return newItem;
  };

  const formats = Objects.readOptFrom(settings, 'style_formats').getOr(DefaultStyleFormats);

  const doEnrich = function (items) {
    return Arr.map(items, function (item) {
      if (Objects.hasKey(item, 'items')) {
        const newItems = doEnrich(item.items);
        return Merger.deepMerge(
          enrichMenu(item),
          {
            items: newItems
          }
        );
      } else if (Objects.hasKey(item, 'format')) {
        return enrichSupported(item);
      } else {
        return enrichCustom(item);
      }
    });
  };

  return doEnrich(formats);
};
開發者ID:aha-app,項目名稱:tinymce-word-paste-filter,代碼行數:63,代碼來源:StyleFormats.ts

示例7: function

const getValue = function (item) {
  return Objects.readOptFrom(item, 'format').getOr(item.title);
};
開發者ID:abstask,項目名稱:tinymce,代碼行數:3,代碼來源:StylesMenu.ts

示例8: return

 return (parts, spec, backstage) => {
   return Objects.readOptFrom<string>(spec, 'name').fold(
     () => render(spec, backstage),
     (fieldName) => parts.field(fieldName, render(spec, backstage) as SimpleOrSketchSpec)
   );
 };
開發者ID:tinymce,項目名稱:tinymce,代碼行數:6,代碼來源:UiFactory.ts

示例9:

const classForPreset = (presets: Types.PresetTypes): string => {
  return Objects.readOptFrom<string>(presetClasses, presets).getOr(navClass);
};
開發者ID:tinymce,項目名稱:tinymce,代碼行數:3,代碼來源:ItemClasses.ts


注:本文中的@ephox/boulder.Objects.readOptFrom方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。