(appOpts AppOpts)
| 85 | } |
| 86 | |
| 87 | func MakeClient(appOpts AppOpts) *Client { |
| 88 | if appOpts.RootComponentName == "" { |
| 89 | appOpts.RootComponentName = "App" |
| 90 | } |
| 91 | if appOpts.NewBlockFlag == "" { |
| 92 | appOpts.NewBlockFlag = "n" |
| 93 | } |
| 94 | client := &Client{ |
| 95 | Lock: &sync.Mutex{}, |
| 96 | AppOpts: appOpts, |
| 97 | Root: vdom.MakeRoot(), |
| 98 | DoneCh: make(chan struct{}), |
| 99 | UrlHandlerMux: mux.NewRouter(), |
| 100 | Opts: vdom.VDomBackendOpts{ |
| 101 | CloseOnCtrlC: appOpts.CloseOnCtrlC, |
| 102 | GlobalKeyboardEvents: appOpts.GlobalKeyboardEvents, |
| 103 | }, |
| 104 | } |
| 105 | if len(appOpts.GlobalStyles) > 0 { |
| 106 | client.Opts.GlobalStyles = true |
| 107 | client.GlobalStylesOption = &FileHandlerOption{Data: appOpts.GlobalStyles, MimeType: "text/css"} |
| 108 | } |
| 109 | client.SetRootElem(vdom.E(appOpts.RootComponentName)) |
| 110 | return client |
| 111 | } |
| 112 | |
| 113 | func (client *Client) runMainE() error { |
| 114 | if client.SetupFn != nil { |
nothing calls this directly
no test coverage detected