@rogieking/figui3 1.0.67 → 1.0.69

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.
Files changed (4) hide show
  1. package/example.html +42 -1
  2. package/fig.css +114 -46
  3. package/fig.js +33 -12
  4. package/package.json +1 -1
package/example.html CHANGED
@@ -16,6 +16,13 @@
16
16
  <fig-header>
17
17
  <h3>UI3 Components</h3>
18
18
  </fig-header>
19
+ <h2>Heading 2</h2>
20
+ <h3>Heading 3</h3>
21
+ <br />
22
+ <details>
23
+ <summary>Details</summary>
24
+ <p>Some more content here</p>
25
+ </details>
19
26
  <br />
20
27
  <fig-field direction="horizontal">
21
28
  <label>Opacity</label>
@@ -99,7 +106,11 @@
99
106
  src="https://avatars.githubusercontent.com/u/12345678?v=4"
100
107
  name="John Doe"></fig-avatar>
101
108
  <fig-avatar name="John Doe"></fig-avatar>
109
+ <fig-avatar size="large"
110
+ src="data:image/png;base64,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"
111
+ name="Rogie King"></fig-avatar>
102
112
  <fig-content>
113
+
103
114
  <fig-tabs>
104
115
  <fig-tab selected>Tab #1</fig-tab>
105
116
  <fig-tab>Tab #2</fig-tab>
@@ -124,6 +135,36 @@
124
135
  <fig-button>Primary</fig-button>
125
136
  <fig-button variant="secondary">Secondary</fig-button>
126
137
  <fig-button variant="ghost">Ghost</fig-button>
138
+ <fig-dialog open="true"
139
+ position="bottom right">
140
+ <fig-header>
141
+ <h3>Dialog</h3>
142
+ <fig-button variant="ghost"
143
+ icon="true"
144
+ close-dialog>
145
+ <svg width="24"
146
+ height="24"
147
+ viewBox="0 0 24 24"
148
+ fill="none"
149
+ xmlns="http://www.w3.org/2000/svg">
150
+ <path fill-rule="evenodd"
151
+ clip-rule="evenodd"
152
+ d="M17.3536 6.64645C17.5488 6.84171 17.5488 7.15829 17.3536 7.35355L12.7071 12L17.3536 16.6464C17.5488 16.8417 17.5488 17.1583 17.3536 17.3536C17.1583 17.5488 16.8417 17.5488 16.6464 17.3536L12 12.7071L7.35355 17.3536C7.15829 17.5488 6.84171 17.5488 6.64645 17.3536C6.45118 17.1583 6.45118 16.8417 6.64645 16.6464L11.2929 12L6.64645 7.35365C6.45119 7.15839 6.45118 6.84181 6.64644 6.64654C6.84171 6.45128 7.15829 6.45128 7.35355 6.64654L12 11.2929L16.6464 6.64645C16.8417 6.45118 17.1583 6.45118 17.3536 6.64645Z"
153
+ fill="currentColor"
154
+ fill-opacity="0.9" />
155
+ </svg>
156
+
157
+ </fig-button>
158
+ </fig-header>
159
+ <fig-content>
160
+ <p>Some content here</p>
161
+ </fig-content>
162
+ <footer>
163
+ <fig-button variant="secondary"
164
+ close-dialog>Cancel</fig-button>
165
+ <fig-button>Save</fig-button>
166
+ </footer>
167
+ </fig-dialog>
127
168
 
128
169
  <fig-button-combo>
129
170
  <fig-button>Primary</fig-button>
@@ -272,7 +313,7 @@
272
313
  value="#00FF00"></fig-chit>
273
314
  <fig-chit type="color"
274
315
  disabled="true"
275
- value="#FF0000"></fig-chit>
316
+ value="#000000"></fig-chit>
276
317
  <fig-chit type="gradient"
277
318
  variant="linear"
278
319
  size="large"
package/fig.css CHANGED
@@ -398,6 +398,7 @@
398
398
  --bg-selected-active: #e5f4ff;
399
399
  --bg-tooltip: #1e1e1e;
400
400
  --body-medium-fontSize: 0.6875rem;
401
+ --body-large-fontSize: 0.8125rem;
401
402
  --figma-color-border-selected: #0d99ff;
402
403
  --spacer-1: 0.25rem;
403
404
  --spacer-2: 0.5rem;
@@ -408,7 +409,10 @@
408
409
  --color-tooltip: #ffffff;
409
410
  --radius-medium: 0.3125rem;
410
411
  --radius-large: 0.8125rem;
412
+ --body-letter-spacing: 0.055px;
411
413
  --body-medium-strong-fontWeight: 550;
414
+ --body-large-strong-fontWeight: 500;
415
+ --body-medium-fontWeight: 450;
412
416
  --handle-shadow: 0px 0 0 0.75px rgba(0, 0, 0, 0.1),
413
417
  0px 1px 3px 0px rgba(0, 0, 0, 0.05), 0px 3px 8px 0px rgba(0, 0, 0, 0.05),
414
418
  0px 0px 0.5px 0px rgba(0, 0, 0, 0.1);
@@ -418,6 +422,8 @@
418
422
  --elevation-500-modal-window: 0px 0px 0.5px rgba(0, 0, 0, 0.08),
419
423
  0px 10px 24px rgba(0, 0, 0, 0.18), 0px 2px 5px rgba(0, 0, 0, 0.15);
420
424
 
425
+ --figma-elevation-500-modal-window: box-shadow: 0px 0px 0.5px 0px rgba(0, 0, 0, 0.08), 0px 10px 24px 0px rgba(0, 0, 0, 0.18), 0px 2px 5px 0px rgba(0, 0, 0, 0.15);
426
+
421
427
  color-scheme: light dark;
422
428
  /* Icons */
423
429
  --icon-chevron: url("data:image/svg+xml,%3Csvg width='16' height='16' viewBox='0 0 16 16' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M5.87868 7.12132L8 9.24264L10.1213 7.12132' stroke='rgb(0 0 0 / 90%)' stroke-linecap='round'/%3E%3C/svg%3E%0A");
@@ -437,7 +443,7 @@
437
443
  0px 0px 0.5px 0px rgba(255, 255, 255, 0.1);
438
444
  --figma-color-bg-ghost-hover: rgba(255, 255, 255, 0.05);
439
445
  --figma-color-bordertranslucent: rgba(255, 255, 255, 0.1);
440
- --elevation-500-modal-window: 0px 10px 24px rgba(0, 0, 0, 0.45),
446
+ --figma-elevation-500-modal-window: 0px 10px 24px rgba(0, 0, 0, 0.45),
441
447
  0px 3px 5px rgba(0, 0, 0, 0.35),
442
448
  inset 0px 0.75px 0px rgba(255, 255, 255, 0.1);
443
449
  --figma-elevation-100: 0px 0px 0.5px 0px rgba(0, 0, 0, 0.5),
@@ -446,6 +452,7 @@
446
452
  }
447
453
  }
448
454
 
455
+
449
456
  html {
450
457
  width: 100%;
451
458
  height: 100%;
@@ -458,7 +465,8 @@ html {
458
465
  segoe ui, helvetica neue, helvetica, Cantarell, Ubuntu, roboto, noto, arial,
459
466
  sans-serif;
460
467
  font-size: 16px;
461
- font-weight: 500;
468
+ font-weight: var(--body-medium-fontWeight);
469
+ letter-spacing: var(--body-letter-spacing);
462
470
  background-color: var(--figma-color-bg);
463
471
  }
464
472
 
@@ -470,6 +478,16 @@ html {
470
478
 
471
479
  body {
472
480
  font-size: var(--body-medium-fontSize);
481
+ letter-spacing: var(--body-letter-spacing);
482
+ }
483
+
484
+ h1,h2{
485
+ font-weight: var(--body-large-strong-fontWeight);
486
+ font-size: var(--body-large-fontSize);
487
+ }
488
+ h3{
489
+ font-weight: var(--body-medium-strong-fontWeight);
490
+ font-size: var(--body-medium-fontSize);
473
491
  }
474
492
 
475
493
  /* helper classes/defaults */
@@ -860,15 +878,19 @@ fig-avatar,
860
878
  background: var(--figma-color-bg-brand);
861
879
  overflow: hidden;
862
880
  color: var(--figma-color-icon-onbrand);
863
- box-shadow: inset 0 0 0 1px var(--figma-color-bordertranslucent);
864
881
 
865
882
  img {
866
883
  width: var(--size);
867
884
  height: var(--size);
868
885
  position: absolute;
869
- background: var(--checkerboard);
870
886
  border-radius: 100%;
871
887
  box-shadow: inset 0 0 0 1px var(--figma-color-bordertranslucent);
888
+ &:not([src]) {
889
+ background: var(--checkerboard);
890
+ }
891
+ }
892
+ &[borderless] {
893
+ box-shadow: none;
872
894
  }
873
895
 
874
896
  &:has(img[src]) {
@@ -902,40 +924,43 @@ input[type="color"] {
902
924
  box-shadow: inset 0 0 0 1px var(--figma-color-border-selected);
903
925
  outline: 0;
904
926
  }
905
- }
906
927
 
907
- input[type="color"]::-webkit-color-swatch-wrapper {
908
- padding: 0;
909
- border: 0;
910
- border-radius: 0.125rem;
911
- background: var(--checkerboard);
912
- overflow: hidden;
913
- box-shadow: inset 0 0 0 1px var(--figma-color-bordertranslucent);
914
- }
928
+ &::-webkit-color-swatch-wrapper {
929
+ padding: 0;
930
+ border: 0;
931
+ border-radius: 0.125rem;
932
+ background: var(--checkerboard);
933
+ overflow: hidden;
934
+ outline: 1px solid var(--figma-color-bordertranslucent);
935
+ outline-offset: -1px;
936
+ }
915
937
 
916
- input[type="color"]::-moz-color-swatch {
917
- border-radius: 0.125rem;
918
- padding: 0;
919
- border: 0;
920
- mask-image: linear-gradient(
921
- to right,
922
- black 0%,
923
- black 50%,
924
- rgba(0, 0, 0, var(--alpha)) 50%
925
- );
926
- }
938
+ &::-moz-color-swatch {
939
+ border-radius: 0.125rem;
940
+ padding: 0;
941
+ border: 0;
942
+ mask-image: linear-gradient(
943
+ to right,
944
+ black 0%,
945
+ black 50%,
946
+ rgba(0, 0, 0, var(--alpha)) 50%
947
+ );
948
+ box-shadow: inset 0 0 0 1px var(--figma-color-bordertranslucent);
949
+ }
927
950
 
928
- input[type="color"]::-webkit-color-swatch {
929
- padding: 0;
930
- border: 0;
931
- mask-image: linear-gradient(
932
- to right,
933
- black 0%,
934
- black 50%,
935
- rgba(0, 0, 0, var(--alpha)) 50%
936
- );
951
+ &::-webkit-color-swatch {
952
+ padding: 0;
953
+ border: 0;
954
+ mask-image: linear-gradient(
955
+ to right,
956
+ black 0%,
957
+ black 50%,
958
+ rgba(0, 0, 0, var(--alpha)) 50%
959
+ );
960
+ }
937
961
  }
938
962
 
963
+
939
964
  fig-chit {
940
965
  --gradient-color-1: #ff90ff;
941
966
  --gradient-color-2: #0000ff;
@@ -1718,7 +1743,17 @@ dialog,
1718
1743
  background: var(--figma-color-bg);
1719
1744
  min-width: var(--popover-min-width);
1720
1745
 
1721
- box-shadow: var(--figma-elevation-100);
1746
+ box-shadow: var(--figma-elevation-500-modal-window);
1747
+
1748
+ footer {
1749
+ display: flex;
1750
+ justify-content: flex-end;
1751
+ padding: var(--spacer-2);
1752
+ gap: var(--spacer-2);
1753
+ }
1754
+ p {
1755
+ padding: 0 var(--spacer-3);
1756
+ }
1722
1757
 
1723
1758
  &:popover-open {
1724
1759
  display: block;
@@ -1781,25 +1816,59 @@ dialog,
1781
1816
  }
1782
1817
  }
1783
1818
  }
1819
+ fig-dialog,
1820
+ .fig-dialog {
1821
+ display: contents;
1822
+ --offset: 1rem;
1823
+ --translate-x: -50%;
1824
+ --translate-y: -50%;
1784
1825
 
1785
- dialog {
1786
- position: fixed;
1787
- top: 50%;
1788
- left: 50%;
1789
- margin: 0;
1790
- transform: translate(-50%, -50%);
1826
+ dialog {
1827
+ position: fixed;
1828
+ top: 50%;
1829
+ left: 50%;
1830
+ margin: 0;
1831
+ z-index: 999999;
1832
+ transform: translate(var(--translate-x), var(--translate-y));
1833
+ }
1791
1834
 
1792
1835
  &[position*="bottom"] {
1793
- bottom: 0.5rem;
1794
- top: auto;
1795
- transform: translate(-50%, 0);
1836
+ dialog {
1837
+ bottom: var(--offset);
1838
+ top: auto;
1839
+ --translate-y: 0;
1840
+ }
1841
+ }
1842
+ &[position*="top"] {
1843
+ dialog {
1844
+ top: var(--offset);
1845
+ bottom: auto;
1846
+ --translate-y: 0;
1847
+ }
1848
+ }
1849
+ &[position*="right"] {
1850
+ dialog {
1851
+ right: var(--offset);
1852
+ left: auto;
1853
+ --translate-x: 0;
1854
+ }
1855
+ }
1856
+ &[position*="left"] {
1857
+ dialog {
1858
+ left: var(--offset);
1859
+ right: auto;
1860
+ --translate-: 0;
1861
+ }
1796
1862
  }
1797
1863
  }
1798
1864
 
1799
1865
  /* Tooltip */
1866
+ fig-tooltip{
1867
+ display: contents;
1868
+ }
1800
1869
  .fig-tooltip {
1801
1870
  inset: unset;
1802
- display: contents;
1871
+ display: block;
1803
1872
  color: var(--color-tooltip);
1804
1873
  background-color: var(--bg-tooltip);
1805
1874
  padding: var(--spacer-1) var(--spacer-2);
@@ -1882,7 +1951,6 @@ fig-icon.close {
1882
1951
  /* Web Components */
1883
1952
  fig-button,
1884
1953
  fig-popover,
1885
- fig-dialog,
1886
1954
  fig-content,
1887
1955
  fig-slider,
1888
1956
  fig-switch,
@@ -1949,7 +2017,7 @@ fig-header {
1949
2017
  gap: 0.25rem;
1950
2018
 
1951
2019
  & h3 {
1952
- padding-left: var(--spacer-1);
2020
+ padding-left: var(--spacer-2);
1953
2021
  font-weight: var(--body-medium-strong-fontWeight);
1954
2022
  flex-grow: 1;
1955
2023
  }
package/fig.js CHANGED
@@ -209,6 +209,7 @@ class FigTooltip extends HTMLElement {
209
209
  this.popup.setAttribute("class", "fig-tooltip");
210
210
  this.popup.style.position = "fixed";
211
211
  this.popup.style.visibility = "hidden";
212
+ this.popup.style.display = "inline-flex";
212
213
  this.popup.style.pointerEvents = "none";
213
214
  this.popup.innerText = this.getAttribute("text");
214
215
  document.body.append(this.popup);
@@ -216,7 +217,7 @@ class FigTooltip extends HTMLElement {
216
217
 
217
218
  destroy() {
218
219
  if (this.popup) {
219
- this.popup.remove();
220
+ //this.popup.remove();
220
221
  }
221
222
  document.body.addEventListener("click", this.hidePopupOutsideClick);
222
223
  }
@@ -255,7 +256,7 @@ class FigTooltip extends HTMLElement {
255
256
  }
256
257
 
257
258
  showPopup() {
258
- const rect = this.getBoundingClientRect();
259
+ const rect = this.firstElementChild.getBoundingClientRect();
259
260
  const popupRect = this.popup.getBoundingClientRect();
260
261
  const offset = this.getOffset();
261
262
 
@@ -339,17 +340,28 @@ class FigDialog extends HTMLElement {
339
340
  }
340
341
 
341
342
  connectedCallback() {
342
- this.render();
343
+ this.modal =
344
+ this.hasAttribute("modal") && this.getAttribute("modal") !== "false";
345
+ this.appendChild(this.dialog);
346
+ this.shadowRoot.appendChild(this.contentSlot);
347
+ this.contentSlot.addEventListener("slotchange", this.slotChange.bind(this));
348
+
349
+ requestAnimationFrame(() => {
350
+ this.#addCloseListeners();
351
+ });
343
352
  }
344
353
 
345
- disconnectedCallback() {
346
- this.contentSlot.removeEventListener("slotchange", this.slotChange);
354
+ #addCloseListeners() {
355
+ this.dialog
356
+ .querySelectorAll("fig-button[close-dialog]")
357
+ .forEach((button) => {
358
+ button.removeEventListener("click", this.close);
359
+ button.addEventListener("click", this.close.bind(this));
360
+ });
347
361
  }
348
362
 
349
- render() {
350
- this.appendChild(this.dialog);
351
- this.shadowRoot.appendChild(this.contentSlot);
352
- this.contentSlot.addEventListener("slotchange", this.slotChange.bind(this));
363
+ disconnectedCallback() {
364
+ this.contentSlot.removeEventListener("slotchange", this.slotChange);
353
365
  }
354
366
 
355
367
  slotChange() {
@@ -361,25 +373,34 @@ class FigDialog extends HTMLElement {
361
373
  this.dialog.appendChild(node.cloneNode(true));
362
374
  }
363
375
  });
376
+ this.#addCloseListeners();
364
377
  }
365
378
 
366
379
  static get observedAttributes() {
367
- return ["open"];
380
+ return ["open", "modal"];
368
381
  }
369
382
 
370
383
  attributeChangedCallback(name, oldValue, newValue) {
371
384
  switch (name) {
372
385
  case "open":
386
+ this.open = newValue === "true" && newValue !== "false";
373
387
  if (this?.show) {
374
- this[newValue === "true" ? "show" : "close"]();
388
+ this[this.open ? "show" : "close"]();
375
389
  }
376
390
  break;
391
+ case "modal":
392
+ this.modal = newValue === "true" && newValue !== "false";
393
+ break;
377
394
  }
378
395
  }
379
396
 
380
397
  /* Public methods */
381
398
  show() {
382
- this.dialog.show();
399
+ if (this.modal) {
400
+ this.dialog.showModal();
401
+ } else {
402
+ this.dialog.show();
403
+ }
383
404
  }
384
405
  close() {
385
406
  this.dialog.close();
package/package.json CHANGED
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "name": "@rogieking/figui3",
3
- "version": "1.0.67"
3
+ "version": "1.0.69"
4
4
  }