@gjsify/example-dom-three-geometry-teapot 0.1.13 → 0.1.15

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 (2) hide show
  1. package/dist/gjs.js +168 -7
  2. package/package.json +4 -4
package/dist/gjs.js CHANGED
@@ -4706,6 +4706,164 @@ var init_html_image_element = __esm({
4706
4706
  }
4707
4707
  });
4708
4708
 
4709
+ // ../../../packages/dom/dom-elements/lib/esm/html-media-element.js
4710
+ var HAVE_NOTHING, HAVE_METADATA, HAVE_CURRENT_DATA, HAVE_FUTURE_DATA, HAVE_ENOUGH_DATA, NETWORK_EMPTY, NETWORK_IDLE, NETWORK_LOADING, NETWORK_NO_SOURCE, HTMLMediaElement;
4711
+ var init_html_media_element = __esm({
4712
+ "../../../packages/dom/dom-elements/lib/esm/html-media-element.js"() {
4713
+ init_console_gjs();
4714
+ init_auto_globals_495e9d950c();
4715
+ init_esm4();
4716
+ init_html_element();
4717
+ HAVE_NOTHING = 0;
4718
+ HAVE_METADATA = 1;
4719
+ HAVE_CURRENT_DATA = 2;
4720
+ HAVE_FUTURE_DATA = 3;
4721
+ HAVE_ENOUGH_DATA = 4;
4722
+ NETWORK_EMPTY = 0;
4723
+ NETWORK_IDLE = 1;
4724
+ NETWORK_LOADING = 2;
4725
+ NETWORK_NO_SOURCE = 3;
4726
+ HTMLMediaElement = class extends HTMLElement {
4727
+ constructor() {
4728
+ super(...arguments);
4729
+ this._src = "";
4730
+ this._srcObject = null;
4731
+ this.currentTime = 0;
4732
+ this.duration = NaN;
4733
+ this.paused = true;
4734
+ this.ended = false;
4735
+ this.volume = 1;
4736
+ this.muted = false;
4737
+ this.defaultMuted = false;
4738
+ this.loop = false;
4739
+ this.autoplay = false;
4740
+ this.preload = "";
4741
+ this.playbackRate = 1;
4742
+ this.defaultPlaybackRate = 1;
4743
+ this.readyState = HAVE_NOTHING;
4744
+ this.networkState = NETWORK_EMPTY;
4745
+ }
4746
+ // -- Buffered/seekable stubs --
4747
+ get buffered() {
4748
+ return { length: 0, start: () => 0, end: () => 0 };
4749
+ }
4750
+ get seekable() {
4751
+ return { length: 0, start: () => 0, end: () => 0 };
4752
+ }
4753
+ get played() {
4754
+ return { length: 0, start: () => 0, end: () => 0 };
4755
+ }
4756
+ // -- src property --
4757
+ get src() {
4758
+ return this._src;
4759
+ }
4760
+ set src(value2) {
4761
+ this._src = value2;
4762
+ this._srcObject = null;
4763
+ this.dispatchEvent(new Event("srcchange"));
4764
+ }
4765
+ // -- srcObject property (MediaStream) --
4766
+ get srcObject() {
4767
+ return this._srcObject;
4768
+ }
4769
+ set srcObject(stream) {
4770
+ this._srcObject = stream;
4771
+ this._src = "";
4772
+ this.dispatchEvent(new Event("srcobjectchange"));
4773
+ }
4774
+ // -- Playback control --
4775
+ play() {
4776
+ this.paused = false;
4777
+ this.ended = false;
4778
+ this.dispatchEvent(new Event("play"));
4779
+ return Promise.resolve();
4780
+ }
4781
+ pause() {
4782
+ this.paused = true;
4783
+ this.dispatchEvent(new Event("pause"));
4784
+ }
4785
+ load() {
4786
+ this.readyState = HAVE_NOTHING;
4787
+ this.networkState = NETWORK_LOADING;
4788
+ this.dispatchEvent(new Event("loadstart"));
4789
+ }
4790
+ canPlayType(_type) {
4791
+ return "";
4792
+ }
4793
+ static {
4794
+ this.HAVE_NOTHING = HAVE_NOTHING;
4795
+ }
4796
+ static {
4797
+ this.HAVE_METADATA = HAVE_METADATA;
4798
+ }
4799
+ static {
4800
+ this.HAVE_CURRENT_DATA = HAVE_CURRENT_DATA;
4801
+ }
4802
+ static {
4803
+ this.HAVE_FUTURE_DATA = HAVE_FUTURE_DATA;
4804
+ }
4805
+ static {
4806
+ this.HAVE_ENOUGH_DATA = HAVE_ENOUGH_DATA;
4807
+ }
4808
+ static {
4809
+ this.NETWORK_EMPTY = NETWORK_EMPTY;
4810
+ }
4811
+ static {
4812
+ this.NETWORK_IDLE = NETWORK_IDLE;
4813
+ }
4814
+ static {
4815
+ this.NETWORK_LOADING = NETWORK_LOADING;
4816
+ }
4817
+ static {
4818
+ this.NETWORK_NO_SOURCE = NETWORK_NO_SOURCE;
4819
+ }
4820
+ get [Symbol.toStringTag]() {
4821
+ return "HTMLMediaElement";
4822
+ }
4823
+ };
4824
+ }
4825
+ });
4826
+
4827
+ // ../../../packages/dom/dom-elements/lib/esm/html-video-element.js
4828
+ var HTMLVideoElement2;
4829
+ var init_html_video_element = __esm({
4830
+ "../../../packages/dom/dom-elements/lib/esm/html-video-element.js"() {
4831
+ init_console_gjs();
4832
+ init_auto_globals_495e9d950c();
4833
+ init_html_media_element();
4834
+ init_property_symbol();
4835
+ init_namespace_uri();
4836
+ HTMLVideoElement2 = class extends HTMLMediaElement {
4837
+ constructor() {
4838
+ super();
4839
+ this._videoWidth = 0;
4840
+ this._videoHeight = 0;
4841
+ this.poster = "";
4842
+ this[tagName] = "VIDEO";
4843
+ this[localName] = "video";
4844
+ this[namespaceURI] = NamespaceURI.html;
4845
+ }
4846
+ /** Intrinsic width of the video (set by the bridge when media metadata loads). */
4847
+ get videoWidth() {
4848
+ return this._videoWidth;
4849
+ }
4850
+ set videoWidth(value2) {
4851
+ this._videoWidth = value2;
4852
+ }
4853
+ /** Intrinsic height of the video (set by the bridge when media metadata loads). */
4854
+ get videoHeight() {
4855
+ return this._videoHeight;
4856
+ }
4857
+ set videoHeight(value2) {
4858
+ this._videoHeight = value2;
4859
+ }
4860
+ get [Symbol.toStringTag]() {
4861
+ return "HTMLVideoElement";
4862
+ }
4863
+ };
4864
+ }
4865
+ });
4866
+
4709
4867
  // ../../../packages/dom/dom-elements/lib/esm/text.js
4710
4868
  var Text;
4711
4869
  var init_text = __esm({
@@ -4890,6 +5048,7 @@ var init_document = __esm({
4890
5048
  init_node();
4891
5049
  init_html_element();
4892
5050
  init_html_image_element();
5051
+ init_html_video_element();
4893
5052
  init_html_canvas_element();
4894
5053
  init_text();
4895
5054
  init_comment();
@@ -4921,6 +5080,8 @@ var init_document = __esm({
4921
5080
  switch (tag) {
4922
5081
  case "img":
4923
5082
  return new HTMLImageElement2();
5083
+ case "video":
5084
+ return new HTMLVideoElement2();
4924
5085
  case "canvas":
4925
5086
  return new HTMLCanvasElement2();
4926
5087
  default: {
@@ -14382,7 +14543,7 @@ var HTMLCanvasElement3 = class extends HTMLCanvasElement2 {
14382
14543
  }
14383
14544
  };
14384
14545
 
14385
- // ../../../packages/dom/webgl/lib/esm/canvas-webgl-widget.js
14546
+ // ../../../packages/dom/webgl/lib/esm/webgl-bridge.js
14386
14547
  init_console_gjs();
14387
14548
  init_auto_globals_495e9d950c();
14388
14549
  import GObject from "gi://GObject";
@@ -14777,11 +14938,11 @@ function attachEventControllers(widget, getElement, options) {
14777
14938
  widget.add_controller(focusCtrl);
14778
14939
  }
14779
14940
 
14780
- // ../../../packages/dom/webgl/lib/esm/canvas-webgl-widget.js
14941
+ // ../../../packages/dom/webgl/lib/esm/webgl-bridge.js
14781
14942
  init_esm4();
14782
- var CanvasWebGLWidget = GObject.registerClass(
14783
- { GTypeName: "GjsifyCanvasWebGLWidget" },
14784
- class CanvasWebGLWidget2 extends Gtk3.GLArea {
14943
+ var WebGLBridge = GObject.registerClass(
14944
+ { GTypeName: "GjsifyWebGLBridge" },
14945
+ class WebGLBridge2 extends Gtk3.GLArea {
14785
14946
  constructor(params) {
14786
14947
  super(params);
14787
14948
  this._canvas = null;
@@ -45945,7 +46106,7 @@ function __assignType2(fn, args) {
45945
46106
  return fn;
45946
46107
  }
45947
46108
  var TeapotWindow = class extends Adw.ApplicationWindow {
45948
- /** Live demo reference; set once the CanvasWebGLWidget is ready. */
46109
+ /** Live demo reference; set once the WebGLBridge is ready. */
45949
46110
  _demo = null;
45950
46111
  static {
45951
46112
  GObject2.registerClass({
@@ -45972,7 +46133,7 @@ var TeapotWindow = class extends Adw.ApplicationWindow {
45972
46133
  this._tessRow.set_selected(DEFAULT_TESS_INDEX);
45973
46134
  this._shadingRow.set_model(Gtk4.StringList.new([...SHADING_VALUES]));
45974
46135
  this._shadingRow.set_selected(DEFAULT_SHADING_INDEX);
45975
- const glArea = new CanvasWebGLWidget();
46136
+ const glArea = new WebGLBridge();
45976
46137
  glArea.set_hexpand(true);
45977
46138
  glArea.set_vexpand(true);
45978
46139
  glArea.installGlobals();
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@gjsify/example-dom-three-geometry-teapot",
3
- "version": "0.1.13",
3
+ "version": "0.1.15",
4
4
  "description": "Three.js geometry teapot example ported from refs/three/examples/webgl_geometry_teapot.html with Adwaita controls",
5
5
  "main": "dist/gjs.js",
6
6
  "type": "module",
@@ -24,7 +24,7 @@
24
24
  "build:assets": "cp -f src/browser/index.html dist/index.html && cp -f src/browser/webgl.css dist/webgl.css && cp -rf src/assets dist/assets"
25
25
  },
26
26
  "dependencies": {
27
- "@gjsify/webgl": "^0.1.13"
27
+ "@gjsify/webgl": "^0.1.15"
28
28
  },
29
29
  "devDependencies": {
30
30
  "@girs/adw-1": "^1.10.0-4.0.0-rc.3",
@@ -32,8 +32,8 @@
32
32
  "@girs/gjs": "^4.0.0-rc.3",
33
33
  "@girs/gobject-2.0": "^2.88.0-4.0.0-rc.3",
34
34
  "@girs/gtk-4.0": "^4.23.0-4.0.0-rc.3",
35
- "@gjsify/adwaita-web": "^0.1.13",
36
- "@gjsify/cli": "^0.1.13",
35
+ "@gjsify/adwaita-web": "^0.1.15",
36
+ "@gjsify/cli": "^0.1.15",
37
37
  "@types/node": "^25.6.0",
38
38
  "@types/three": "^0.183.1",
39
39
  "http-server": "^14.1.1",