index.html 30 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760
  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8">
  5. <meta http-equiv="X-UA-Compatible" content="IE=edge">
  6. <meta name="viewport" content="width=device-width, initial-scale=1.0">
  7. <link rel="stylesheet" href="style.css"
  8. <title></title>
  9. <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.2.1/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-iYQeCzEYFbKjA/T2uDLTpkwGzCiq6soy8tYaI1GyVh/UjpbCx/TYkiZhlZB6+fzT" crossorigin="anonymous">
  10. </head>
  11. <body>
  12. <nav class="navbar navbar-expand-lg bg-info">
  13. <div class="container-fluid">
  14. <a href="#" class="navbar-brand">
  15. <h1>Frontend Modeler</h1>
  16. </a>
  17. <img src="cdp_logo_sm.png" class="rounded float-end" alt="Responsive image">
  18. </div>
  19. </nav>
  20. <br>
  21. <div class="container">
  22. <div class="custom-file">
  23. <input type="file" class="custom-file-select" id="projectselect" aria-describedby="projectselect">
  24. <button type="button" id = "Open" class="btn btn btn-outline-primary">Open Project</button>
  25. </div>
  26. <button type="button" id="New" class="btn btn btn-outline-primary">New Project</button>
  27. <button type="button" id="SaveAs" class="btn btn btn-outline-primary">Save as</button>
  28. </div>
  29. <br>
  30. <div class="accordion" id="accordionnodeset">
  31. <div class="accordion-item">
  32. <h2 class="accordion-header" id="headingOne">
  33. <button class="accordion-button" type="button" data-bs-toggle="collapse" data-bs-target="#collapsenodesetOne" aria-expanded="true" aria-controls="collapseOne">
  34. Nodeset Files
  35. </button>
  36. </h2>
  37. <div id="collapsenodesetOne" class="accordion-collapse collapse show" aria-labelledby="headingOne" data-bs-parent="#accordionnodeset">
  38. <div class="accordion-body">
  39. <div class="row align-items-start bg-light">
  40. <div class="mb-3">
  41. <!--<label for="formFileMultiple" class="form-label">Multiple files input example</label>-->
  42. <ul class="list-group" id="nodesetlist">
  43. <li class="list-group-item disabled py-1">0:http://opcfoundation.org/UA/</li>
  44. <li class="list-group-item py-1">A second item</li>
  45. </ul>
  46. <div class="custom-file">
  47. <input type="file" class="custom-file-input" id="customFileInput" aria-describedby="customFileInput">
  48. <button type="button" class="btn btn-primary" id="loadnodesetbutton">Load</button>
  49. </div>
  50. </div>
  51. </div>
  52. </div>
  53. </div>
  54. </div>
  55. </div>
  56. <div class="container-fluid">
  57. <ul class="nav nav-tabs" id="myTab" role="tablist">
  58. <li class="nav-item" role="presentation">
  59. <button class="nav-link active" id="home-tab" data-bs-toggle="tab" data-bs-target="#home-tab-pane" type="button" role="tab" aria-controls="home-tab-pane" aria-selected="false">Tree View</button>
  60. </li>
  61. <li class="nav-item" role="presentation">
  62. <button class="nav-link" id="profile-tab" data-bs-toggle="tab" data-bs-target="#profile-tab-pane" type="button" role="tab" aria-controls="profile-tab-pane" aria-selected="false">Node Specification</button>
  63. </li>
  64. <li class="nav-item" role="presentation">
  65. <button class="nav-link" id="contact-tab" data-bs-toggle="tab" data-bs-target="#contact-tab-pane" type="button" role="tab" aria-controls="contact-tab-pane" aria-selected="false">Endpoint Configuration</button>
  66. </li>
  67. <li class="nav-item" role="presentation">
  68. <button class="nav-link" id="disabled-tab" data-bs-toggle="tab" data-bs-target="#disabled-tab-pane" type="button" role="tab" aria-controls="disabled-tab-pane" aria-selected="false">Service Modelling</button>
  69. </li>
  70. </ul>
  71. <div class="tab-content" id="myTabContent">
  72. <div class="tab-pane fade show active" id="home-tab-pane" role="tabpanel" aria-labelledby="home-tab" tabindex="0">
  73. <div class="container-fluid">
  74. <div class="row align-items-start bg-light">
  75. <div class="col-sm-6">
  76. <br>
  77. <div id="jstree_demo_div" class= "container bg-white">
  78. </div>
  79. <br>
  80. </div>
  81. <div class="col-sm-6">
  82. <br>
  83. <div class="row align-items-start bg-light">
  84. <div class="col-sm-2">
  85. <button type="button" class="btn btn-primary" id="changeinstance">Change Instance</button>
  86. </div>
  87. </div>
  88. <br>
  89. <div class="row align-items-start bg-light">
  90. <div class="col-sm-2">
  91. <button type="button" class="btn btn-secondary">Save</button>
  92. </div>
  93. <div class="col-sm-2">
  94. <button type="button" class="btn btn-secondary">Discard</button>
  95. </div>
  96. </div>
  97. <br>
  98. </div>
  99. </div>
  100. </div>
  101. </div>
  102. <div class="tab-pane fade" id="profile-tab-pane" role="tabpanel" aria-labelledby="profile-tab" tabindex="0"><div class="accordion" id="accordionExample">
  103. <div class="accordion-item">
  104. <h2 class="accordion-header" id="commonattributes">
  105. <button class="accordion-button" type="button" data-bs-toggle="collapse" data-bs-target="#collapseOne" aria-expanded="false" aria-controls="collapseOne">
  106. Common attributes
  107. </button>
  108. </h2>
  109. <div id="collapseOne" class="accordion-collapse collapse collapse" aria-labelledby="commonattributes" data-bs-parent=>
  110. <div class="accordion-body">
  111. <div class="row mb-3">
  112. <label for="instancename" class="col-sm-2 col-form-label">Name</label>
  113. <div class="col-sm-10">
  114. <input type="email" class="form-control" id="instancename">
  115. </div>
  116. </div>
  117. <div class="row mb-3">
  118. <label for="inputEmail3" class="col-sm-2 col-form-label">Namespace</label>
  119. <div class="col-sm-10">
  120. <input type="email" class="form-control" id="instancenamespace">
  121. </div>
  122. </div>
  123. <div class="row mb-3">
  124. <label for="inputEmail3" class="col-sm-2 col-form-label">NodeClass</label>
  125. <div class="col-sm-10">
  126. <input type="nodeclass" class="form-control" id="instancenodeclass">
  127. </div>
  128. </div>
  129. <div class="row mb-3">
  130. <label for="inputEmail3" class="col-sm-2 col-form-label">Type Definition</label>
  131. <div class="col-sm-10">
  132. <input type="typedefinition" class="form-control" id="instancetypedefinition">
  133. </div>
  134. </div>
  135. <div class="row mb-3">
  136. <label for="modellingrule" class="col-sm-2 col-form-label">Modelling Rule</label>
  137. <div class="col-sm-10">
  138. <input type="email" class="form-control" id="modellingrule">
  139. </div>
  140. </div>
  141. <div class="row mb-3">
  142. <label for="inputEmail3" class="col-sm-2 col-form-label">NodeId</label>
  143. <div class="col-sm-10">
  144. <div class="input-group mb-3">
  145. <button class="btn btn-outline-secondary dropdown-toggle" type="button" data-bs-toggle="dropdown" aria-expanded="false" id="instancenodeidtype">Numeric</button>
  146. <ul class="dropdown-menu">
  147. <li><a class="dropdown-item" href="#" id="numericnodeid">Numeric</a></li>
  148. <li><a class="dropdown-item" href="#" id="stringnodeid">String</a></li>
  149. <li><a class="dropdown-item" href="#" id="guidnodeid">Guid</a></li>
  150. <li><a class="dropdown-item" href="#" id="opaquenodeid">Opaque</a></li>
  151. </ul>
  152. <input type="text" class="form-control" aria-label="Text input with dropdown button" id="instancenodeid">
  153. </div>
  154. </div>
  155. </div>
  156. <div class="row mb-3">
  157. <label for="inputEmail3" class="col-sm-2 col-form-label">DisplayName</label>
  158. <div class="col-sm-10">
  159. <div class="input-group">
  160. <div class="col-xs-1">
  161. <input type="text" aria-label="First name" class="form-control" id="instancedisplayname1">
  162. </div>
  163. <input type="text" aria-label="Last name" class="form-control" id="instancedisplayname2">
  164. </div>
  165. </div>
  166. </div>
  167. <div class="row mb-3">
  168. <label for="inputEmail3" class="col-sm-2 col-form-label">BrowseName</label>
  169. <div class="col-sm-10">
  170. <div class="input-group mb-3">
  171. <button class="btn btn-outline-secondary dropdown-toggle" type="button" data-bs-toggle="dropdown" aria-expanded="false" id="instancebrowsename1">0</button>
  172. <ul class="dropdown-menu" id="namespaceidxbrowsename" size="5">
  173. <li><a class="dropdown-item" href="#">1</a></li>
  174. <li><a class="dropdown-item" href="#">2</a></li>
  175. <li><a class="dropdown-item" href="#">3</a></li>
  176. <li><a class="dropdown-item" href="#">4</a></li>
  177. </ul>
  178. <input type="text" class="form-control" aria-label="Text input with dropdown button" id="instancebrowsename2">
  179. </div>
  180. </div>
  181. </div>
  182. <div class="row mb-3">
  183. <label for="inputEmail3" class="col-sm-2 col-form-label">Description</label>
  184. <div class="col-sm-10">
  185. <div class="input-group">
  186. <div class="col-xs-1">
  187. <input type="text" aria-label="First name" class="form-control" placeholder="en" disabled>
  188. </div>
  189. <input type="text" aria-label="Last name" class="form-control" id="instancedescription">
  190. </div>
  191. </div>
  192. </div>
  193. </div>
  194. </div>
  195. </div>
  196. <div class="accordion-item">
  197. <h2 class="accordion-header" id="objectattributes">
  198. <button class="accordion-button collapsed" type="button" data-bs-toggle="collapse" data-bs-target="#collapseTwo" aria-expanded="false" aria-controls="collapseTwo" id="objectattributesbutton">
  199. Object attributes
  200. </button>
  201. </h2>
  202. <div id="collapseTwo" class="accordion-collapse collapse" aria-labelledby="objectattributes" data-bs-parent=>
  203. <div class="accordion-body">
  204. <div class="row mb-3">
  205. <label for="exampleFormControlInput6" class="col-sm-2 col-form-label">EventNotifier</label>
  206. <div class="col-sm-10">
  207. <div class="input-group mb-3">
  208. <input type="text" class="form-control" aria-label="Text input with dropdown button" id="instanceeventnotifier" placeholder="0 (None)">
  209. <button class="btn btn-outline-secondary dropdown-toggle" type="button" data-bs-toggle="dropdown" aria-expanded="false">...</button>
  210. <ul class="dropdown-menu dropdown-menu-end">
  211. <li><a class="dropdown-item" href="#">
  212. <div class="form-check">
  213. <input class="form-check-input" type="checkbox" value="" id="subscribeevents">
  214. <label class="form-check-label" for="defaultCheck1">
  215. Subscribe To Events
  216. </label>
  217. </div>
  218. </a></li>
  219. <li><a class="dropdown-item" href="#">
  220. <div class="form-check">
  221. <input class="form-check-input" type="checkbox" value="" id="reserved" disabled>
  222. <label class="form-check-label" for="defaultCheck1">
  223. Reserved
  224. </label>
  225. </div>
  226. </a></li>
  227. <li><a class="dropdown-item" href="#">
  228. <div class="form-check">
  229. <input class="form-check-input" type="checkbox" value="" id="historyread">
  230. <label class="form-check-label" for="defaultCheck1">
  231. HistoryRead
  232. </label>
  233. </div>
  234. </a></li>
  235. <li><a class="dropdown-item" href="#">
  236. <div class="form-check">
  237. <input class="form-check-input" type="checkbox" value="" id="historywrite">
  238. <label class="form-check-label" for="defaultCheck1">
  239. HistoryWrite
  240. </label>
  241. </div>
  242. </a></li>
  243. </ul>
  244. </div>
  245. </div>
  246. </div>
  247. </div>
  248. </div>
  249. </div>
  250. <div class="accordion-item" id="var_attr">
  251. <h2 class="accordion-header" id="variableattributes">
  252. <button class="accordion-button collapsed" type="button" data-bs-toggle="collapse" data-bs-target="#collapseTwo1" aria-expanded="false" aria-controls="collapseTwo1" id="variableattributesbutton">
  253. Variable attributes
  254. </button>
  255. </h2>
  256. <div id="collapseTwo1" class="accordion-collapse collapse" aria-labelledby="variableattributes" data-bs-parent=>
  257. <div class="accordion-body">
  258. <div class="row mb-3">
  259. <label for="inputEmail3" class="col-sm-2 col-form-label">Data Type</label>
  260. <div class="col-sm-10">
  261. <input type="email" class="form-control" id="datatype" placeholder="BaseDataType">
  262. </div>
  263. </div>
  264. <div class="row mb-3">
  265. <label for="inputEmail3" class="col-sm-2 col-form-label">Value</label>
  266. <div class="col-sm-2">
  267. <label for="inputEmail3" id="variablevalue" class="col-form-label">Null</label>
  268. <div class="col-sm-2">
  269. <input class="form-check-input" type="checkbox" value="" id="valuecheck">
  270. </div>
  271. <input type="email" class="form-control" id="inputEmail3" placeholder="...">
  272. </div>
  273. </div>
  274. <div class="row mb-3">
  275. <label for="inputEmail3" class="col-sm-2 col-form-label">ValueRank</label>
  276. <div class="col-sm-10">
  277. <input type="email" class="form-control" id="variablevaluerank" placeholder="Scalar">
  278. </div>
  279. </div>
  280. <div class="row mb-3">
  281. <label for="inputEmail3" class="col-sm-2 col-form-label">ArrayDimensions</label>
  282. <div class="col-sm-10">
  283. <input type="email" class="form-control" id="variablearraydimensions">
  284. </div>
  285. </div>
  286. <div class="row mb-3">
  287. <label for="exampleFormControlInput6" class="col-sm-2 col-form-label">AccessLevel</label>
  288. <div class="col-sm-10">
  289. <div class="input-group mb-3">
  290. <input type="text" class="form-control" aria-label="Text input with dropdown button" id="instanceaccesslevel" placeholder="0 (None)">
  291. <button class="btn btn-outline-secondary dropdown-toggle" type="button" data-bs-toggle="dropdown" aria-expanded="false">...</button>
  292. <ul class="dropdown-menu dropdown-menu-end">
  293. <li><a class="dropdown-item" href="#">
  294. <div class="form-check">
  295. <input class="form-check-input" type="checkbox" value="" id="currentread">
  296. <label class="form-check-label" for="defaultCheck1">
  297. CurrentRead
  298. </label>
  299. </div>
  300. </a></li>
  301. <li><a class="dropdown-item" href="#">
  302. <div class="form-check">
  303. <input class="form-check-input" type="checkbox" value="" id="currentwrite">
  304. <label class="form-check-label" for="defaultCheck1">
  305. CurrentWrite
  306. </label>
  307. </div>
  308. </a></li>
  309. <li><a class="dropdown-item" href="#">
  310. <div class="form-check">
  311. <input class="form-check-input" type="checkbox" value="" id="historyreadvar">
  312. <label class="form-check-label" for="defaultCheck1">
  313. HistoryRead
  314. </label>
  315. </div>
  316. </a></li>
  317. <li><a class="dropdown-item" href="#">
  318. <div class="form-check">
  319. <input class="form-check-input" type="checkbox" value="" id="historywritevar">
  320. <label class="form-check-label" for="defaultCheck1">
  321. HistoryWrite
  322. </label>
  323. </div>
  324. </a></li>
  325. <li><a class="dropdown-item" href="#">
  326. <div class="form-check">
  327. <input class="form-check-input" type="checkbox" value="" id="semanticchange">
  328. <label class="form-check-label" for="defaultCheck1">
  329. SemanticChange
  330. </label>
  331. </div>
  332. </a></li>
  333. <li><a class="dropdown-item" href="#">
  334. <div class="form-check">
  335. <input class="form-check-input" type="checkbox" value="" id="statuswrite">
  336. <label class="form-check-label" for="defaultCheck1">
  337. StatusWrite
  338. </label>
  339. </div>
  340. </a></li>
  341. <li><a class="dropdown-item" href="#">
  342. <div class="form-check">
  343. <input class="form-check-input" type="checkbox" value="" id="timestampwrite">
  344. <label class="form-check-label" for="defaultCheck1">
  345. TimestampWrite
  346. </label>
  347. </div>
  348. </a></li>
  349. </ul>
  350. </div>
  351. </div>
  352. </div>
  353. <div class="row mb-3">
  354. <label for="inputEmail3" class="col-sm-2 col-form-label">AccessLevelEx</label>
  355. <div class="col-sm-10">
  356. <input type="email" class="form-control" id="accesslevelex" placeholder="None">
  357. </div>
  358. </div>
  359. <div class="row mb-3">
  360. <label for="inputEmail3" class="col-sm-2 col-form-label">Historizing</label>
  361. <div class="col-sm-10">
  362. <input type="email" class="form-control" id="variablehistorizing">
  363. </div>
  364. </div>
  365. <div class="row mb-3">
  366. <label for="inputEmail3" class="col-sm-2 col-form-label">MinimumSamplingInterval</label>
  367. <div class="col-sm-10">
  368. <input type="email" class="form-control" id="minimumsamplinginterval" placeholder="0">
  369. </div>
  370. </div>
  371. </div>
  372. </div>
  373. </div>
  374. <div class="accordion-item">
  375. <h2 class="accordion-header" id="methodattributes">
  376. <button class="accordion-button collapsed" type="button" data-bs-toggle="collapse" data-bs-target="#collapseTwo2" aria-expanded="false" aria-controls="collapseTwo2" id="methodattributesbutton">
  377. Method attributes
  378. </button>
  379. </h2>
  380. <div id="collapseTwo2" class="accordion-collapse collapse" aria-labelledby="methodattributes" data-bs-parent=>
  381. <div class="accordion-body">
  382. <div class="row mb-3">
  383. <label for="exampleFormControlInput6" class="col-sm-2 col-form-label">WriteMask</label>
  384. <div class="col-sm-10">
  385. <div class="input-group mb-3">
  386. <input type="text" class="form-control" aria-label="Text input with dropdown button" id="writemask" placeholder="0">
  387. <button class="btn btn-outline-secondary dropdown-toggle" type="button" data-bs-toggle="dropdown" aria-expanded="false">...</button>
  388. <ul class="dropdown-menu dropdown-menu-end">
  389. <li><a class="dropdown-item" href="#">
  390. <div class="form-check">
  391. <input class="form-check-input" type="checkbox" value="" id="mask1">
  392. <label class="form-check-label" for="defaultCheck1">
  393. AccessLevel
  394. </label>
  395. </div>
  396. </a></li>
  397. <li><a class="dropdown-item" href="#">
  398. <div class="form-check">
  399. <input class="form-check-input" type="checkbox" value="" id="mask2">
  400. <label class="form-check-label" for="defaultCheck1">
  401. ArrayDimensions
  402. </label>
  403. </div>
  404. </a></li>
  405. <li><a class="dropdown-item" href="#">
  406. <div class="form-check">
  407. <input class="form-check-input" type="checkbox" value="" id="mask3">
  408. <label class="form-check-label" for="defaultCheck1">
  409. BrowseName
  410. </label>
  411. </div>
  412. </a></li>
  413. <li><a class="dropdown-item" href="#">
  414. <div class="form-check">
  415. <input class="form-check-input" type="checkbox" value="" id="mask4">
  416. <label class="form-check-label" for="defaultCheck1">
  417. ContainsNoLoops
  418. </label>
  419. </div>
  420. </a></li>
  421. <li><a class="dropdown-item" href="#">
  422. <div class="form-check">
  423. <input class="form-check-input" type="checkbox" value="" id="mask5">
  424. <label class="form-check-label" for="defaultCheck1">
  425. DataType
  426. </label>
  427. </div>
  428. </a></li>
  429. <li><a class="dropdown-item" href="#">
  430. <div class="form-check">
  431. <input class="form-check-input" type="checkbox" value="" id="mask6">
  432. <label class="form-check-label" for="defaultCheck1">
  433. Description
  434. </label>
  435. </div>
  436. </a></li>
  437. <li><a class="dropdown-item" href="#">
  438. <div class="form-check">
  439. <input class="form-check-input" type="checkbox" value="" id="mask7">
  440. <label class="form-check-label" for="defaultCheck1">
  441. DisplayName
  442. </label>
  443. </div>
  444. </a></li>
  445. <li><a class="dropdown-item" href="#">
  446. <div class="form-check">
  447. <input class="form-check-input" type="checkbox" value="" id="mask8">
  448. <label class="form-check-label" for="defaultCheck1">
  449. EventNotifier
  450. </label>
  451. </div>
  452. </a></li>
  453. <li><a class="dropdown-item" href="#">
  454. <div class="form-check">
  455. <input class="form-check-input" type="checkbox" value="" id="mask9">
  456. <label class="form-check-label" for="defaultCheck1">
  457. Executable
  458. </label>
  459. </div>
  460. </a></li>
  461. <li><a class="dropdown-item" href="#">
  462. <div class="form-check">
  463. <input class="form-check-input" type="checkbox" value="" id="mask10">
  464. <label class="form-check-label" for="defaultCheck1">
  465. Historizing
  466. </label>
  467. </div>
  468. </a></li>
  469. <li><a class="dropdown-item" href="#">
  470. <div class="form-check">
  471. <input class="form-check-input" type="checkbox" value="" id="mask11">
  472. <label class="form-check-label" for="defaultCheck1">
  473. InverseName
  474. </label>
  475. </div>
  476. </a></li>
  477. <li><a class="dropdown-item" href="#">
  478. <div class="form-check">
  479. <input class="form-check-input" type="checkbox" value="" id="mask12">
  480. <label class="form-check-label" for="defaultCheck1">
  481. IsAbstract
  482. </label>
  483. </div>
  484. </a></li>
  485. <li><a class="dropdown-item" href="#">
  486. <div class="form-check">
  487. <input class="form-check-input" type="checkbox" value="" id="mask13">
  488. <label class="form-check-label" for="defaultCheck1">
  489. MinimumSamplingInterval
  490. </label>
  491. </div>
  492. </a></li>
  493. <li><a class="dropdown-item" href="#">
  494. <div class="form-check">
  495. <input class="form-check-input" type="checkbox" value="" id="mask14">
  496. <label class="form-check-label" for="defaultCheck1">
  497. NodeClass
  498. </label>
  499. </div>
  500. </a></li>
  501. <li><a class="dropdown-item" href="#">
  502. <div class="form-check">
  503. <input class="form-check-input" type="checkbox" value="" id="mask15">
  504. <label class="form-check-label" for="defaultCheck1">
  505. NodeId
  506. </label>
  507. </div>
  508. </a></li>
  509. <li><a class="dropdown-item" href="#">
  510. <div class="form-check">
  511. <input class="form-check-input" type="checkbox" value="" id="mask16">
  512. <label class="form-check-label" for="defaultCheck1">
  513. Symmetric
  514. </label>
  515. </div>
  516. </a></li>
  517. <li><a class="dropdown-item" href="#">
  518. <div class="form-check">
  519. <input class="form-check-input" type="checkbox" value="" id="mask17">
  520. <label class="form-check-label" for="defaultCheck1">
  521. UserAccessLevel
  522. </label>
  523. </div>
  524. </a></li>
  525. <li><a class="dropdown-item" href="#">
  526. <div class="form-check">
  527. <input class="form-check-input" type="checkbox" value="" id="mask18">
  528. <label class="form-check-label" for="defaultCheck1">
  529. UserExecutable
  530. </label>
  531. </div>
  532. </a></li>
  533. <li><a class="dropdown-item" href="#">
  534. <div class="form-check">
  535. <input class="form-check-input" type="checkbox" value="" id="mask19">
  536. <label class="form-check-label" for="defaultCheck1">
  537. UserWriteMask
  538. </label>
  539. </div>
  540. </a></li>
  541. <li><a class="dropdown-item" href="#">
  542. <div class="form-check">
  543. <input class="form-check-input" type="checkbox" value="" id="mask20">
  544. <label class="form-check-label" for="defaultCheck1">
  545. ValueRank
  546. </label>
  547. </div>
  548. </a></li>
  549. <li><a class="dropdown-item" href="#">
  550. <div class="form-check">
  551. <input class="form-check-input" type="checkbox" value="" id="mask21">
  552. <label class="form-check-label" for="defaultCheck1">
  553. WriteMask
  554. </label>
  555. </div>
  556. </a></li>
  557. <li><a class="dropdown-item" href="#">
  558. <div class="form-check">
  559. <input class="form-check-input" type="checkbox" value="" id="mask22">
  560. <label class="form-check-label" for="defaultCheck1">
  561. ValueForVariableType
  562. </label>
  563. </div>
  564. </a></li>
  565. </ul>
  566. </div>
  567. </div>
  568. </div>
  569. <div class="row mb-3">
  570. <label for="inputEmail3" class="col-sm-2 col-form-label">Executable</label>
  571. <div class="col-sm-10">
  572. <div class="input-group mb-3">
  573. <input class="form-check-input" type="checkbox" id="executablemethodcheck">
  574. </div>
  575. </div>
  576. </div>
  577. </div>
  578. </div>
  579. </div>
  580. <div class="accordion-item">
  581. <h2 class="accordion-header" id="parentattributes">
  582. <button class="accordion-button collapsed" type="button" data-bs-toggle="collapse" data-bs-target="#collapseTwo3" aria-expanded="false" aria-controls="collapseTwo3">
  583. Parent
  584. </button>
  585. </h2>
  586. <div id="collapseTwo3" class="accordion-collapse collapse" aria-labelledby="parentattributes" data-bs-parent=>
  587. <div class="accordion-body">
  588. <div class="row mb-3">
  589. <label for="inputEmail3" class="col-sm-2 col-form-label">Name</label>
  590. <div class="col-sm-10">
  591. <input type="email" class="form-control" id="inputEmail3">
  592. </div>
  593. </div>
  594. <div class="row mb-3">
  595. <label for="inputEmail3" class="col-sm-2 col-form-label">NodeId</label>
  596. <div class="col-sm-10">
  597. <div class="input-group mb-3">
  598. <button class="btn btn-outline-secondary dropdown-toggle" type="button" data-bs-toggle="dropdown" aria-expanded="false">Numeric</button>
  599. <ul class="dropdown-menu">
  600. <li><a class="dropdown-item" href="#">Numeric</a></li>
  601. <li><a class="dropdown-item" href="#">String</a></li>
  602. <li><a class="dropdown-item" href="#">Guid</a></li>
  603. <li><a class="dropdown-item" href="#">Opaque</a></li>
  604. </ul>
  605. <input type="text" class="form-control" aria-label="Text input with dropdown button">
  606. </div>
  607. </div>
  608. </div>
  609. <div class="row mb-3">
  610. <label for="inputEmail3" class="col-sm-2 col-form-label">Reference to current node</label>
  611. <div class="col-sm-2">
  612. <input type="email" class="form-control" id="inputEmail3">
  613. </div>
  614. <div class="col-sm-2">
  615. <label for="inputEmail3" class="col-sm-2 col-form-label text-center">Inverse</label>
  616. </div>
  617. <div class="col-sm-2">
  618. <input type="email" class="form-control" id="inputEmail3">
  619. </div>
  620. </div>
  621. </div>
  622. </div>
  623. </div>
  624. <div class="accordion-item">
  625. <h2 class="accordion-header" id="referencesnodes">
  626. <button class="accordion-button collapsed" type="button" data-bs-toggle="collapse" data-bs-target="#collapseThree" aria-expanded="false" aria-controls="collapseThree">
  627. Child Nodes and References
  628. </button>
  629. </h2>
  630. <div id="collapseThree" class="accordion-collapse collapse" aria-labelledby="referencesnodes" data-bs-parent=>
  631. <div class="accordion-body">
  632. <table class="table">
  633. <thead>
  634. <tr>
  635. <th scope="col">Target</th>
  636. <th scope="col">Reference Type</th>
  637. <th scope="col">Modelling Rule</th>
  638. <th scope="col">Actions</th>
  639. </tr>
  640. </thead>
  641. <tbody>
  642. <tr>
  643. <td scope="row">Machines</td>
  644. <td>Organizes</td>
  645. <td>No Modelling Rule</td>
  646. <td>
  647. <button type="button" class="btn btn-outline-dark">Delete</button>
  648. </td>
  649. </tr>
  650. </tbody>
  651. </table>
  652. </div>
  653. </div>
  654. </div>
  655. </div>
  656. <br>
  657. <div class="container-fluid text-center">
  658. <button type="button" class="btn btn-outline-dark" id="savenodespecification">Save</button>
  659. <button type="button" class="btn btn-outline-dark">Discard</button>
  660. <button type="button" class="btn btn-outline-dark">Delete Node</button>
  661. </div>
  662. <br>
  663. <br>
  664. </div>
  665. <div class="tab-pane fade" id="contact-tab-pane" role="tabpanel" aria-labelledby="contact-tab" tabindex="0">Here you'll find a list of endpoints</div>
  666. <div class="tab-pane fade" id="disabled-tab-pane" role="tabpanel" aria-labelledby="disabled-tab" tabindex="0">...</div>
  667. </div>
  668. </div>
  669. <script src="https://cdn.jsdelivr.net/npm/bootstrap@5.2.1/dist/js/bootstrap.bundle.min.js" integrity="sha384-u1OknCvxWvY5kfmNBILK2hRnQC3Pr17a+RTT6rIHI7NnikvbZlHgTPOOmMi466C8" crossorigin="anonymous"></script>
  670. <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/1.12.1/jquery.min.js"></script>
  671. <link rel="stylesheet" href="./jstree/jstree/dist/themes/default/style.min.css" />
  672. <script src="./jstree/jstree/dist/jstree.min.js"></script>
  673. <script>
  674. document.querySelector('.custom-file-input').addEventListener('change', function (e) {
  675. var name = document.getElementById("customFileInput").files[0].name;
  676. $.ajax({
  677. url: 'http://127.0.0.1:3001/file/url/',
  678. error: function() {
  679. console.log("Error");
  680. },
  681. dataType: 'text',
  682. success: function(data) {
  683. var res = JSON.parse(data);
  684. console.log(res["url"]);
  685. var newfile = "<li class='list-group-item py-1'>"+res["url"]+"</li>";
  686. $('#nodesetlist').append(newfile);
  687. },
  688. type: 'GET'
  689. });
  690. console.log("AHA");
  691. })
  692. </script>
  693. <script>
  694. document.querySelector('.custom-file-select').addEventListener('change', function (e) {
  695. var name = document.getElementById("projectselect").files[0].name;
  696. console.log(name);
  697. })
  698. </script>
  699. <script src="./js/myEvents.js"></script>
  700. <script>
  701. $('#jstree_demo_div').jstree({
  702. 'core' : {
  703. 'data' : {
  704. 'url': "http://127.0.0.1:3001/lazy",
  705. //'url' : "https://www.jstree.com/fiddle/?lazy",
  706. 'data' : function (node) {
  707. if(node.id == '#'){
  708. return { 'id' : node.id, 'nsindex': 0, 'nodeclass':'Object', 'type':'Object'};
  709. }else{
  710. return { 'id' : node.id, 'nsindex': node.data.nsindex, 'nodeclass':node.data.nodeclass, 'type':node.data.nodeclass};
  711. }
  712. }
  713. }
  714. },
  715. 'contextmenu' : {
  716. 'items' : {addNode: {label: 'Add node'}, delNode: {label: 'Delete node'}}
  717. },
  718. 'plugins' : [ 'contextmenu', 'types'],
  719. 'types': {
  720. 'Variable': {
  721. 'icon': 'variable_instances.png'
  722. },
  723. 'VariableType': {
  724. 'icon': 'variable_types.png'
  725. },
  726. 'DataType': {
  727. 'icon': 'data_types.png'
  728. },
  729. 'ReferenceType': {
  730. 'icon': 'reference_types.png'
  731. },
  732. 'Method': {
  733. 'icon': 'method.png'
  734. },
  735. 'ObjectType': {
  736. 'icon': 'obj_types.png'
  737. },
  738. 'Object': {
  739. 'icon': 'obj_inst.png'
  740. },
  741. 'default': {
  742. 'icon': 'obj_inst.png'
  743. }
  744. },
  745. });
  746. </script>
  747. </body>
  748. </html>