@oceanum/oceanumlab 4.6.2 → 4.7.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +102 -11
- package/lib/DatameshUI.d.ts +1 -6
- package/lib/DatameshUI.js +1 -9
- package/lib/DatameshWidget.d.ts +24 -2
- package/lib/DatameshWidget.js +171 -45
- package/lib/StoredNotebooks.d.ts +16 -0
- package/lib/StoredNotebooks.js +84 -0
- package/lib/Tabs.d.ts +26 -0
- package/lib/Tabs.js +45 -0
- package/lib/aiBackend.d.ts +66 -0
- package/lib/aiBackend.js +101 -0
- package/lib/auth/accountWidget.d.ts +35 -0
- package/lib/auth/accountWidget.js +95 -0
- package/lib/auth/claims.d.ts +3 -0
- package/lib/auth/claims.js +25 -0
- package/lib/auth/plugin.d.ts +9 -0
- package/lib/auth/plugin.js +126 -0
- package/lib/auth/serverAuth.d.ts +79 -0
- package/lib/auth/serverAuth.js +253 -0
- package/lib/auth/tokens.d.ts +95 -0
- package/lib/auth/tokens.js +9 -0
- package/lib/chatRouter.d.ts +17 -1
- package/lib/chatRouter.js +34 -9
- package/lib/constants.d.ts +1 -1
- package/lib/constants.js +1 -1
- package/lib/datameshUiUrl.d.ts +2 -2
- package/lib/datameshUiUrl.js +8 -16
- package/lib/httpUrl.d.ts +9 -0
- package/lib/httpUrl.js +20 -0
- package/lib/index.d.ts +8 -1
- package/lib/index.js +67 -15
- package/lib/specStore.d.ts +37 -0
- package/lib/specStore.js +57 -0
- package/package.json +9 -1
- package/schema/datamesh-connect.json +3 -6
- package/src/DatameshUI.tsx +1 -10
- package/src/DatameshWidget.tsx +294 -59
- package/src/StoredNotebooks.tsx +166 -0
- package/src/Tabs.tsx +102 -0
- package/src/__tests__/DatameshWidget.spec.tsx +393 -0
- package/src/__tests__/OceanumPanel.spec.tsx +101 -0
- package/src/__tests__/Tabs.spec.tsx +168 -0
- package/src/__tests__/aiBackend.spec.ts +271 -0
- package/src/__tests__/chatRouter.spec.ts +253 -17
- package/src/__tests__/datameshUiUrl.spec.ts +4 -3
- package/src/__tests__/pluginArity.spec.ts +24 -0
- package/src/__tests__/serverAuth.spec.ts +277 -0
- package/src/__tests__/settingsSchema.spec.ts +73 -0
- package/src/__tests__/specStore.spec.ts +126 -0
- package/src/aiBackend.ts +150 -0
- package/src/auth/accountWidget.ts +113 -0
- package/src/auth/claims.ts +30 -0
- package/src/auth/plugin.ts +155 -0
- package/src/auth/serverAuth.ts +341 -0
- package/src/auth/tokens.ts +104 -0
- package/src/chatRouter.ts +41 -9
- package/src/constants.ts +1 -1
- package/src/datameshUiUrl.ts +8 -15
- package/src/httpUrl.ts +23 -0
- package/src/index.ts +99 -33
- package/src/specStore.ts +82 -0
- package/style/index.css +158 -0
package/style/index.css
CHANGED
|
@@ -475,3 +475,161 @@
|
|
|
475
475
|
border-top: 1px solid var(--jp-border-color2);
|
|
476
476
|
margin: 0.5em 0;
|
|
477
477
|
}
|
|
478
|
+
|
|
479
|
+
/* Oceanum sign-in: the top-bar account control (src/auth/accountWidget.ts). */
|
|
480
|
+
.oc-Account {
|
|
481
|
+
align-self: center;
|
|
482
|
+
margin: 0 8px;
|
|
483
|
+
padding: 2px 10px;
|
|
484
|
+
border: var(--jp-border-width) solid var(--jp-border-color1);
|
|
485
|
+
border-radius: 12px;
|
|
486
|
+
background: var(--jp-layout-color1);
|
|
487
|
+
color: var(--jp-ui-font-color1);
|
|
488
|
+
font-family: var(--jp-ui-font-family);
|
|
489
|
+
font-size: var(--jp-ui-font-size1);
|
|
490
|
+
white-space: nowrap;
|
|
491
|
+
cursor: pointer;
|
|
492
|
+
}
|
|
493
|
+
|
|
494
|
+
.oc-Account:hover {
|
|
495
|
+
background: var(--jp-layout-color2);
|
|
496
|
+
}
|
|
497
|
+
|
|
498
|
+
.oc-Account:not(.oc-mod-signedIn) {
|
|
499
|
+
border-color: var(--jp-brand-color1);
|
|
500
|
+
color: var(--jp-brand-color1);
|
|
501
|
+
}
|
|
502
|
+
|
|
503
|
+
/* The sign-in dialog: the device code, and the link that confirms it. */
|
|
504
|
+
.oc-SignIn {
|
|
505
|
+
max-width: 360px;
|
|
506
|
+
}
|
|
507
|
+
|
|
508
|
+
.oc-SignIn-code {
|
|
509
|
+
margin: 12px 0;
|
|
510
|
+
padding: 10px;
|
|
511
|
+
border: var(--jp-border-width) solid var(--jp-border-color1);
|
|
512
|
+
border-radius: 4px;
|
|
513
|
+
background: var(--jp-layout-color2);
|
|
514
|
+
font-family: var(--jp-code-font-family);
|
|
515
|
+
font-size: 22px;
|
|
516
|
+
letter-spacing: 3px;
|
|
517
|
+
text-align: center;
|
|
518
|
+
user-select: all;
|
|
519
|
+
}
|
|
520
|
+
|
|
521
|
+
.oc-SignIn-link {
|
|
522
|
+
display: block;
|
|
523
|
+
padding: 6px 12px;
|
|
524
|
+
border-radius: 2px;
|
|
525
|
+
text-align: center;
|
|
526
|
+
text-decoration: none;
|
|
527
|
+
}
|
|
528
|
+
|
|
529
|
+
.oc-SignIn-note {
|
|
530
|
+
margin-top: 12px;
|
|
531
|
+
color: var(--jp-ui-font-color2);
|
|
532
|
+
font-size: var(--jp-ui-font-size0);
|
|
533
|
+
}
|
|
534
|
+
|
|
535
|
+
/* The Oceanum side panel's tab strip (src/Tabs.tsx). */
|
|
536
|
+
.oceanum-tabs {
|
|
537
|
+
display: flex;
|
|
538
|
+
flex-direction: column;
|
|
539
|
+
min-height: 0;
|
|
540
|
+
flex: 1 1 auto;
|
|
541
|
+
}
|
|
542
|
+
|
|
543
|
+
.oceanum-tabs-strip {
|
|
544
|
+
display: flex;
|
|
545
|
+
border-bottom: var(--jp-border-width) solid var(--jp-border-color2);
|
|
546
|
+
}
|
|
547
|
+
|
|
548
|
+
.oceanum-tab {
|
|
549
|
+
flex: 1 1 auto;
|
|
550
|
+
padding: 6px 4px;
|
|
551
|
+
border: none;
|
|
552
|
+
border-bottom: 2px solid transparent;
|
|
553
|
+
background: transparent;
|
|
554
|
+
color: var(--jp-ui-font-color2);
|
|
555
|
+
font-family: var(--jp-ui-font-family);
|
|
556
|
+
font-size: var(--jp-ui-font-size1);
|
|
557
|
+
cursor: pointer;
|
|
558
|
+
}
|
|
559
|
+
|
|
560
|
+
.oceanum-tab:hover {
|
|
561
|
+
background: var(--jp-layout-color2);
|
|
562
|
+
}
|
|
563
|
+
|
|
564
|
+
.oceanum-tab-selected {
|
|
565
|
+
border-bottom-color: var(--jp-brand-color1);
|
|
566
|
+
color: var(--jp-ui-font-color1);
|
|
567
|
+
}
|
|
568
|
+
|
|
569
|
+
.oceanum-tabpanel {
|
|
570
|
+
display: flex;
|
|
571
|
+
flex-direction: column;
|
|
572
|
+
min-height: 0;
|
|
573
|
+
flex: 1 1 auto;
|
|
574
|
+
overflow: auto;
|
|
575
|
+
}
|
|
576
|
+
|
|
577
|
+
/* Must come after the rule above: an author `display` beats the user agent's
|
|
578
|
+
* `[hidden] { display: none }`, so without this every pane renders at once and the
|
|
579
|
+
* tabs only move the underline. */
|
|
580
|
+
.oceanum-tabpanel[hidden] {
|
|
581
|
+
display: none;
|
|
582
|
+
}
|
|
583
|
+
|
|
584
|
+
/* Stored notebooks (src/StoredNotebooks.tsx). */
|
|
585
|
+
.oceanum-notebooks-heading {
|
|
586
|
+
display: flex;
|
|
587
|
+
justify-content: space-between;
|
|
588
|
+
padding: 6px 8px 2px;
|
|
589
|
+
color: var(--jp-ui-font-color2);
|
|
590
|
+
font-size: var(--jp-ui-font-size0);
|
|
591
|
+
text-transform: uppercase;
|
|
592
|
+
}
|
|
593
|
+
|
|
594
|
+
.oceanum-notebooks-list {
|
|
595
|
+
margin: 0;
|
|
596
|
+
padding: 0;
|
|
597
|
+
list-style: none;
|
|
598
|
+
}
|
|
599
|
+
|
|
600
|
+
.oceanum-notebooks-item {
|
|
601
|
+
display: block;
|
|
602
|
+
width: 100%;
|
|
603
|
+
padding: 4px 8px;
|
|
604
|
+
border: none;
|
|
605
|
+
background: transparent;
|
|
606
|
+
color: var(--jp-ui-font-color1);
|
|
607
|
+
font-family: var(--jp-ui-font-family);
|
|
608
|
+
font-size: var(--jp-ui-font-size1);
|
|
609
|
+
text-align: left;
|
|
610
|
+
cursor: pointer;
|
|
611
|
+
}
|
|
612
|
+
|
|
613
|
+
.oceanum-notebooks-item:hover {
|
|
614
|
+
background: var(--jp-layout-color2);
|
|
615
|
+
}
|
|
616
|
+
|
|
617
|
+
.oceanum-notebooks-item-static {
|
|
618
|
+
cursor: default;
|
|
619
|
+
}
|
|
620
|
+
|
|
621
|
+
.oceanum-notebooks-item-static:hover {
|
|
622
|
+
background: transparent;
|
|
623
|
+
}
|
|
624
|
+
|
|
625
|
+
.oceanum-notebooks-name {
|
|
626
|
+
overflow: hidden;
|
|
627
|
+
text-overflow: ellipsis;
|
|
628
|
+
white-space: nowrap;
|
|
629
|
+
}
|
|
630
|
+
|
|
631
|
+
.oceanum-text-error {
|
|
632
|
+
padding: 8px;
|
|
633
|
+
color: var(--jp-error-color1);
|
|
634
|
+
font-size: var(--jp-ui-font-size1);
|
|
635
|
+
}
|