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


TypeScript prosemirror-commands.toggleMark函數代碼示例

本文整理匯總了TypeScript中prosemirror-commands.toggleMark函數的典型用法代碼示例。如果您正苦於以下問題:TypeScript toggleMark函數的具體用法?TypeScript toggleMark怎麽用?TypeScript toggleMark使用的例子?那麽, 這裏精選的函數代碼示例或許可以為您提供幫助。


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

示例1: createLinkItem

 createLinkItem(url, title) {
   if (this.markActive(this.view.editor.state, this.outputSchema.marks.link)) {
     // can't see how to edit mark, only toggle. So toggle off to toggle back on with new attrs
     toggleMark(this.outputSchema.marks.link)(this.view.editor.state, this.view.props.dispatchTransaction);
   }
   toggleMark(this.outputSchema.marks.link, {
     href: url,
     title
   })(this.view.editor.state, this.view.props.dispatchTransaction);
 }
開發者ID:PRX,項目名稱:publish.prx.org,代碼行數:10,代碼來源:prosemirror.markdown.editor.ts

示例2: return

 return (state, dispatch) => {
     const { subsup } = state.schema.marks
     if (subsup) {
         if (isMarkActive(state, subsup.create({ type: "sup" }))) {
             return toggleMark(subsup)(state, dispatch)
         }
         return toggleMark(subsup, { type: "sub" })(state, dispatch)
     }
     return false
 }
開發者ID:zodiac-team,項目名稱:zodiac-ui,代碼行數:10,代碼來源:subsup.command.ts

示例3: return

 return (state, dispatch) => {
     const { strong } = state.schema.marks
     if (strong) {
         return toggleMark(strong)(state, dispatch)
     }
     return false
 }
開發者ID:zodiac-team,項目名稱:zodiac-ui,代碼行數:7,代碼來源:strong.command.ts

示例4: return

 return (state, dispatch) => {
     const { em } = state.schema.marks
     if (em) {
         return toggleMark(em)(state, dispatch)
     }
     return false
 }
開發者ID:zodiac-team,項目名稱:zodiac-ui,代碼行數:7,代碼來源:emphasis.command.ts

示例5: return

 return (state, dispatch) => {
     const { underline } = state.schema.marks
     if (underline) {
         return toggleMark(underline)(state, dispatch)
     }
     return false
 }
開發者ID:zodiac-team,項目名稱:zodiac-ui,代碼行數:7,代碼來源:underline.command.ts

示例6: markItem

 markItem(markType, options) {
   let passedOptions = {
     active: (state) => {
       return this.markActive(state, markType);
     }
   };
   for (let prop in options) {
     if (options.hasOwnProperty(prop)) {
       passedOptions[prop] = options[prop];
     }
   }
   return this.cmdItem(toggleMark(markType), passedOptions);
 }
開發者ID:PRX,項目名稱:publish.prx.org,代碼行數:13,代碼來源:prosemirror.markdown.editor.ts

示例7: constructor

 constructor() {
     this.tool = {
         tooltip: "Toggle Subscript",
         icon: "fa-subscript",
         run: toggleSubscript(),
         active(state) {
             const { subsup } = state.schema.marks
             if (subsup) {
                 return isMarkActive(state, subsup.create({ type: "sub" }))
             }
             return false
         },
         enable(state) {
             const { subsup } = state.schema.marks
             if (subsup) {
                 return toggleMark(subsup, { type: "sub" })(state)
             }
             return false
         },
     }
 }
開發者ID:zodiac-team,項目名稱:zodiac-ui,代碼行數:21,代碼來源:subscript-tool.component.ts

示例8: isMarkActive

export const getTextFormattingState = (editorState: EditorState): TextFormattingState => {
    const { em, code, strike, strong, subsup, underline } = editorState.schema.marks
    const state: TextFormattingState = {}

    if (code) {
        state.codeActive = isMarkActive(editorState, code.create())
        state.codeDisabled = !toggleMark(code)(editorState)
    }
    if (em) {
        state.emActive = isMarkTypeActive(editorState, em)
        state.emDisabled = state.codeActive ? true : !toggleMark(em)(editorState)
    }
    if (strike) {
        state.strikeActive = isMarkTypeActive(editorState, strike)
        state.strikeDisabled = state.codeActive ? true : !toggleMark(strike)(editorState)
    }
    if (strong) {
        state.strongActive = isMarkTypeActive(editorState, strong)
        state.strongDisabled = state.codeActive ? true : !toggleMark(strong)(editorState)
    }
    if (subsup) {
        const subMark = subsup.create({ type: "sub" })
        const supMark = subsup.create({ type: "sup" })
        state.subscriptActive = isMarkActive(editorState, subMark)
        state.subscriptDisabled = state.codeActive
            ? true
            : !toggleMark(subsup, { type: "sub" })(editorState)
        state.superscriptActive = isMarkActive(editorState, supMark)
        state.superscriptDisabled = state.codeActive
            ? true
            : !toggleMark(subsup, { type: "sup" })(editorState)
    }
    if (underline) {
        state.underlineActive = isMarkTypeActive(editorState, underline)
        state.underlineDisabled = state.codeActive ? true : !toggleMark(underline)(editorState)
    }
    return state
}
開發者ID:zodiac-team,項目名稱:zodiac-ui,代碼行數:38,代碼來源:utils.ts

示例9: buildKeymap

  buildKeymap(mapKeys = undefined) {
    const mac = typeof navigator !== 'undefined' ? /Mac/.test(navigator.platform) : false;
    let keys = {};
    function bind(key, cmd) {
      if (mapKeys) {
        let mapped = mapKeys[key];
        if (mapped === false) {
          return;
        }
        if (mapped) {
          key = mapped;
        }
      }
      keys[key] = cmd;
    }

    if (this.outputSchema.marks.strong) {
      bind('Mod-b', toggleMark(this.outputSchema.marks.strong));
    }
    if (this.outputSchema.marks.em) {
      bind('Mod-i', toggleMark(this.outputSchema.marks.em));
    }
    if (this.outputSchema.marks.code) {
      bind('Mod-`', toggleMark(this.outputSchema.marks.code));
    }
    if (this.outputSchema.nodes.bullet_list) {
      bind('Shift-Ctrl-8', wrapInList(this.outputSchema.nodes.bullet_list));
    }
    if (this.outputSchema.nodes.ordered_list) {
      bind('Shift-Ctrl-9', wrapInList(this.outputSchema.nodes.ordered_list));
    }
    if (this.outputSchema.nodes.blockquote) {
      bind('Ctrl->', wrapIn(this.outputSchema.nodes.blockquote));
    }
    if (this.outputSchema.nodes.hard_break) {
      let cmd = chainCommands(newlineInCode, (state, dispatchTransaction) => {
        dispatchTransaction(state.tr.replaceSelectionWith(this.outputSchema.nodes.hard_break.create()).scrollIntoView());
        return true;
      });
      bind('Mod-Enter', cmd);
      bind('Shift-Enter', cmd);
      if (mac) {
        bind('Ctrl-Enter', cmd);
      }
    }
    if (this.outputSchema.nodes.list_item) {
      bind('Enter', splitListItem(this.outputSchema.nodes.list_item));
      bind('Mod-[', liftListItem(this.outputSchema.nodes.list_item));
      bind('Mod-]', sinkListItem(this.outputSchema.nodes.list_item));
    }
    if (this.outputSchema.nodes.paragraph) {
      bind('Shift-Ctrl-0', setBlockType(this.outputSchema.nodes.paragraph));
    }
    if (this.outputSchema.nodes.code_block) {
      bind('Shift-Ctrl-\\', setBlockType(this.outputSchema.nodes.code_block));
    }
    if (this.outputSchema.nodes.heading) {
      for (let i = 1; i <= 6; i++) {
        bind('Shift-Ctrl-' + i, setBlockType(this.outputSchema.nodes.heading, {level: i}));
      }
    }
    if (this.outputSchema.nodes.horizontal_rule) {
      bind('Mod-_', (state, dispatchTransaction) => {
        dispatchTransaction(state.tr.replaceSelectionWith(this.outputSchema.nodes.horizontal_rule.create()).scrollIntoView());
        return true;
      });
    }

    return keys;
  }
開發者ID:PRX,項目名稱:publish.prx.org,代碼行數:70,代碼來源:prosemirror.markdown.editor.ts


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