@girs/gsk-4.0 4.0.0-3.2.3 → 4.0.0-3.2.5

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 CHANGED
@@ -5,7 +5,7 @@
5
5
  ![downloads/week](https://img.shields.io/npm/dw/@girs/gsk-4.0)
6
6
 
7
7
 
8
- GJS TypeScript type definitions for Gsk-4.0, generated from library version 4.0.0 using [ts-for-gir](https://github.com/gjsify/ts-for-gir) v3.2.3.
8
+ GJS TypeScript type definitions for Gsk-4.0, generated from library version 4.0.0 using [ts-for-gir](https://github.com/gjsify/ts-for-gir) v3.2.5.
9
9
 
10
10
 
11
11
  ## Install
@@ -81,6 +81,19 @@ Now you have also type support for this, too:
81
81
  const Gsk = imports.gi.Gsk;
82
82
  ```
83
83
 
84
+
85
+ ### ESM vs. CommonJS
86
+
87
+ GJS supports two different import syntaxes. The new modern ESM syntax and the old global imports syntax.
88
+
89
+ In TypeScript projects for GJS and GNOME Shell extensions, you have the flexibility to use `ESM` syntax and then decide the import syntax for your bundled file. If your bundler is configured to use `CommonJS`, it will convert to the GJS-specific global imports syntax, like `const moduleName = imports.gi[moduleName]`. This is different from the traditional `require` syntax seen in Node.js. The global imports syntax is chosen because it aligns with the CommonJS format supported by NPM, which is used for the generated type definitions and this package.
90
+
91
+ On the other hand, if you configure your bundler to use ESM, it will retain the ESM import syntax. It's crucial to ensure that your bundler is set up to correctly translate and bundle these imports into either CommonJS or ESM format, depending on your project's requirements.
92
+
93
+ This approach is particularly important due to the `@girs` types, which include both `*.cjs `files, using the GJS global imports syntax, and `*.js` files, which utilize the ESM syntax. By appropriately setting up your bundler, you can control which syntax—CommonJS or ESM—is used in your project. The choice of CommonJS in this context is also due to the similarity between the GJS-specific global imports and CommonJS syntax, allowing for easier management and bundling in these specific types of projects.
94
+
95
+ Since GNOME Shell 45, you should only use ESM, even for GNOME Shell extensions. Before that, extensions had to use the global import syntax, unlike normal GJS applications, where ESM has been available for some time.
96
+
84
97
  ### Bundle
85
98
 
86
99
  Depending on your project configuration, it is recommended to use a bundler like [esbuild](https://esbuild.github.io/). You can find examples using different bundlers [here](https://github.com/gjsify/ts-for-gir/tree/main/examples).
@@ -1,5 +1,4 @@
1
1
 
2
-
3
2
  declare module 'gi://Gsk?version=4.0' {
4
3
  import Gsk40 from '@girs/gsk-4.0';
5
4
  export default Gsk40;
@@ -1,5 +1,4 @@
1
1
 
2
-
3
2
  import Gsk40 from '@girs/gsk-4.0';
4
3
 
5
4
  declare global {
package/gsk-4.0.d.cts CHANGED
@@ -883,11 +883,12 @@ export class ColorMatrixNode extends RenderNode {
883
883
  * Creates a `GskRenderNode` that will drawn the `child` with
884
884
  * `color_matrix`.
885
885
  *
886
- * In particular, the node will transform the operation
886
+ * In particular, the node will transform colors by applying
887
887
  *
888
- * pixel = color_matrix * pixel + color_offset
888
+ * pixel = transpose(color_matrix) * pixel + color_offset
889
889
  *
890
- * for every pixel.
890
+ * for every pixel. The transformation operates on unpremultiplied
891
+ * colors, with color components ordered R, G, B, A.
891
892
  * @constructor
892
893
  * @param child The node to draw
893
894
  * @param color_matrix The matrix to apply
@@ -899,11 +900,12 @@ export class ColorMatrixNode extends RenderNode {
899
900
  * Creates a `GskRenderNode` that will drawn the `child` with
900
901
  * `color_matrix`.
901
902
  *
902
- * In particular, the node will transform the operation
903
+ * In particular, the node will transform colors by applying
903
904
  *
904
- * pixel = color_matrix * pixel + color_offset
905
+ * pixel = transpose(color_matrix) * pixel + color_offset
905
906
  *
906
- * for every pixel.
907
+ * for every pixel. The transformation operates on unpremultiplied
908
+ * colors, with color components ordered R, G, B, A.
907
909
  * @constructor
908
910
  * @param child The node to draw
909
911
  * @param color_matrix The matrix to apply
@@ -3321,7 +3323,8 @@ export interface Transform {
3321
3323
  */
3322
3324
  ref(): Transform | null
3323
3325
  /**
3324
- * Rotates `next` `angle` degrees in 2D - or in 3D-speak, around the z axis.
3326
+ * Rotates `next` `angle` degrees in 2D - or in 3D-speak, around the Z axis.
3327
+ * The rotation happens around the origin point of (0, 0).
3325
3328
  * @param angle the rotation angle, in degrees (clockwise)
3326
3329
  * @returns The new transform
3327
3330
  */
package/gsk-4.0.d.ts CHANGED
@@ -885,11 +885,12 @@ class ColorMatrixNode extends RenderNode {
885
885
  * Creates a `GskRenderNode` that will drawn the `child` with
886
886
  * `color_matrix`.
887
887
  *
888
- * In particular, the node will transform the operation
888
+ * In particular, the node will transform colors by applying
889
889
  *
890
- * pixel = color_matrix * pixel + color_offset
890
+ * pixel = transpose(color_matrix) * pixel + color_offset
891
891
  *
892
- * for every pixel.
892
+ * for every pixel. The transformation operates on unpremultiplied
893
+ * colors, with color components ordered R, G, B, A.
893
894
  * @constructor
894
895
  * @param child The node to draw
895
896
  * @param color_matrix The matrix to apply
@@ -901,11 +902,12 @@ class ColorMatrixNode extends RenderNode {
901
902
  * Creates a `GskRenderNode` that will drawn the `child` with
902
903
  * `color_matrix`.
903
904
  *
904
- * In particular, the node will transform the operation
905
+ * In particular, the node will transform colors by applying
905
906
  *
906
- * pixel = color_matrix * pixel + color_offset
907
+ * pixel = transpose(color_matrix) * pixel + color_offset
907
908
  *
908
- * for every pixel.
909
+ * for every pixel. The transformation operates on unpremultiplied
910
+ * colors, with color components ordered R, G, B, A.
909
911
  * @constructor
910
912
  * @param child The node to draw
911
913
  * @param color_matrix The matrix to apply
@@ -3323,7 +3325,8 @@ interface Transform {
3323
3325
  */
3324
3326
  ref(): Transform | null
3325
3327
  /**
3326
- * Rotates `next` `angle` degrees in 2D - or in 3D-speak, around the z axis.
3328
+ * Rotates `next` `angle` degrees in 2D - or in 3D-speak, around the Z axis.
3329
+ * The rotation happens around the origin point of (0, 0).
3327
3330
  * @param angle the rotation angle, in degrees (clockwise)
3328
3331
  * @returns The new transform
3329
3332
  */
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@girs/gsk-4.0",
3
- "version": "4.0.0-3.2.3",
3
+ "version": "4.0.0-3.2.5",
4
4
  "description": "GJS TypeScript type definitions for Gsk-4.0, generated from library version 4.0.0",
5
5
  "type": "module",
6
6
  "module": "gsk-4.0.js",
@@ -25,19 +25,19 @@
25
25
  "test:cjs": "NODE_OPTIONS=--max_old_space_size=9216 tsc --noEmit gsk-4.0.d.cts"
26
26
  },
27
27
  "dependencies": {
28
- "@girs/cairo-1.0": "^1.0.0-3.2.3",
29
- "@girs/freetype2-2.0": "^2.0.0-3.2.3",
30
- "@girs/gdk-4.0": "^4.0.0-3.2.3",
31
- "@girs/gdkpixbuf-2.0": "^2.0.0-3.2.3",
32
- "@girs/gio-2.0": "^2.76.1-3.2.3",
33
- "@girs/gjs": "^3.2.3",
34
- "@girs/glib-2.0": "^2.76.1-3.2.3",
35
- "@girs/gmodule-2.0": "^2.0.0-3.2.3",
36
- "@girs/gobject-2.0": "^2.76.1-3.2.3",
37
- "@girs/graphene-1.0": "^1.0.0-3.2.3",
38
- "@girs/harfbuzz-0.0": "^7.1.0-3.2.3",
39
- "@girs/pango-1.0": "^1.50.14-3.2.3",
40
- "@girs/pangocairo-1.0": "^1.0.0-3.2.3"
28
+ "@girs/cairo-1.0": "^1.0.0-3.2.5",
29
+ "@girs/freetype2-2.0": "^2.0.0-3.2.5",
30
+ "@girs/gdk-4.0": "^4.0.0-3.2.5",
31
+ "@girs/gdkpixbuf-2.0": "^2.0.0-3.2.5",
32
+ "@girs/gio-2.0": "^2.78.0-3.2.5",
33
+ "@girs/gjs": "^3.2.5",
34
+ "@girs/glib-2.0": "^2.78.0-3.2.5",
35
+ "@girs/gmodule-2.0": "^2.0.0-3.2.5",
36
+ "@girs/gobject-2.0": "^2.78.0-3.2.5",
37
+ "@girs/graphene-1.0": "^1.0.0-3.2.5",
38
+ "@girs/harfbuzz-0.0": "^8.2.1-3.2.5",
39
+ "@girs/pango-1.0": "^1.51.0-3.2.5",
40
+ "@girs/pangocairo-1.0": "^1.0.0-3.2.5"
41
41
  },
42
42
  "devDependencies": {
43
43
  "typescript": "*"