qcobjects-sdk 2.4.66 → 2.5.105-beta

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 (147) hide show
  1. package/.github/workflows/npmpublish-beta.yml +4 -2
  2. package/.github/workflows/npmpublish-lts.yml +4 -2
  3. package/.github/workflows/npmpublish-main.yml +2 -2
  4. package/README.md +0 -1
  5. package/VERSION +1 -1
  6. package/build/QCObjects-SDK.js +83 -41
  7. package/build/index.js +17 -7
  8. package/build/js/org.qcobjects.base.components.js +75 -0
  9. package/build/js/org.qcobjects.cloud.auth.session.data.js +98 -101
  10. package/build/js/org.qcobjects.cloud.auth.session.usertoken.js +68 -80
  11. package/build/js/org.qcobjects.components.grid.js +35 -53
  12. package/build/js/org.qcobjects.components.js +145 -237
  13. package/build/js/org.qcobjects.components.list.js +36 -45
  14. package/build/js/org.qcobjects.components.notifications.js +107 -106
  15. package/build/js/org.qcobjects.components.slider.js +183 -169
  16. package/build/js/org.qcobjects.components.splashscreen.js +123 -130
  17. package/build/js/org.qcobjects.controllers.form.js +149 -147
  18. package/build/js/org.qcobjects.controllers.grid.js +226 -215
  19. package/build/js/org.qcobjects.controllers.js +11 -11
  20. package/build/js/org.qcobjects.controllers.list.js +195 -188
  21. package/build/js/org.qcobjects.controllers.slider.js +101 -106
  22. package/build/js/org.qcobjects.controllers.swagger.js +71 -46
  23. package/build/js/org.qcobjects.effects.base.js +86 -0
  24. package/build/js/org.qcobjects.effects.extended.js +318 -0
  25. package/build/js/org.qcobjects.effects.js +26 -394
  26. package/build/js/org.qcobjects.i18n_messages.js +33 -46
  27. package/build/js/org.qcobjects.modal.controllers.js +16 -15
  28. package/build/js/org.qcobjects.modal.effects.js +23 -28
  29. package/build/js/org.qcobjects.models.js +11 -11
  30. package/build/js/org.qcobjects.tools.canvas.js +28 -27
  31. package/build/js/org.qcobjects.tools.js +10 -3
  32. package/build/js/org.qcobjects.tools.layouts.js +46 -45
  33. package/build/js/org.qcobjects.views.js +11 -11
  34. package/build-esbuild.js +72 -0
  35. package/eslint.config.mjs +88 -0
  36. package/package.json +67 -63
  37. package/postbuild.js +10 -0
  38. package/public/browser/index.js +9902 -0
  39. package/public/browser/index.js.map +7 -0
  40. package/public/cjs/index.cjs +9894 -0
  41. package/public/cjs/index.cjs.map +7 -0
  42. package/public/esm/index.mjs +9894 -0
  43. package/public/esm/index.mjs.map +7 -0
  44. package/public/types/index.d.ts +698 -0
  45. package/spec/helpers/mock-sdk.helper.ts +2 -0
  46. package/spec/mocks/qcobjects-sdk.mock.ts +1 -0
  47. package/spec/support/jasmine.json +7 -4
  48. package/src/QCObjects-SDK.ts +72 -53
  49. package/src/js/org.qcobjects.base.components.ts +83 -0
  50. package/src/js/org.qcobjects.cloud.auth.session.data.ts +98 -99
  51. package/src/js/org.qcobjects.cloud.auth.session.usertoken.ts +72 -92
  52. package/src/js/org.qcobjects.components.grid.ts +31 -58
  53. package/src/js/org.qcobjects.components.list.ts +15 -31
  54. package/src/js/org.qcobjects.components.notifications.ts +12 -12
  55. package/src/js/org.qcobjects.components.slider.ts +182 -171
  56. package/src/js/org.qcobjects.components.splashscreen.ts +31 -39
  57. package/src/js/org.qcobjects.components.ts +151 -261
  58. package/src/js/org.qcobjects.controllers.form.ts +151 -148
  59. package/src/js/org.qcobjects.controllers.grid.ts +226 -222
  60. package/src/js/org.qcobjects.controllers.list.ts +207 -205
  61. package/src/js/org.qcobjects.controllers.slider.ts +120 -125
  62. package/src/js/org.qcobjects.controllers.swagger.ts +51 -51
  63. package/src/js/org.qcobjects.controllers.ts +7 -9
  64. package/src/js/org.qcobjects.effects.base.ts +97 -0
  65. package/src/js/org.qcobjects.effects.extended.ts +350 -0
  66. package/src/js/org.qcobjects.effects.ts +6 -394
  67. package/src/js/org.qcobjects.i18n_messages.ts +37 -51
  68. package/src/js/org.qcobjects.modal.controllers.ts +12 -14
  69. package/src/js/org.qcobjects.modal.effects.ts +22 -18
  70. package/src/js/org.qcobjects.models.ts +8 -11
  71. package/src/js/org.qcobjects.tools.canvas.ts +26 -28
  72. package/src/js/org.qcobjects.tools.layouts.ts +44 -47
  73. package/src/js/org.qcobjects.tools.ts +7 -1
  74. package/src/js/org.qcobjects.views.ts +9 -8
  75. package/src/types/global/index.d.ts +181 -0
  76. package/transpile.js +65 -0
  77. package/tsconfig.d.json +65 -3
  78. package/tsconfig.jasmine.json +64 -0
  79. package/tsconfig.json +71 -7
  80. package/.eslintignore +0 -4
  81. package/.eslintrc.cjs +0 -6
  82. package/.gitmodules +0 -4
  83. package/build/css/base-modal.css +0 -43
  84. package/build/css/basic-layout-embedded-nav.css +0 -14
  85. package/build/css/basic-layout.css +0 -76
  86. package/build/css/components/horizontal-list.css +0 -64
  87. package/build/css/components/list.css +0 -57
  88. package/build/css/components/splashscreen.css +0 -111
  89. package/build/css/modal.css +0 -46
  90. package/build/index.cjs +0 -4
  91. package/build/index.mjs +0 -2
  92. package/build/templates/components/modalyoulose.tpl.html +0 -3
  93. package/build/templates/components/modalyouwin.tpl.html +0 -4
  94. package/build/templates/components/splashscreen.tpl.html +0 -128
  95. package/build/templates/components/swagger-ui.tpl.html +0 -22
  96. package/docs/CNAME +0 -1
  97. package/public/QCObjects-SDK.js +0 -696
  98. package/public/QCObjects-SDK.js.map +0 -7
  99. package/public/css/base-modal.css +0 -2
  100. package/public/css/base-modal.css.map +0 -7
  101. package/public/css/basic-layout-embedded-nav.css +0 -2
  102. package/public/css/basic-layout-embedded-nav.css.map +0 -7
  103. package/public/css/basic-layout.css +0 -2
  104. package/public/css/basic-layout.css.map +0 -7
  105. package/public/css/components/horizontal-list.css +0 -2
  106. package/public/css/components/horizontal-list.css.map +0 -7
  107. package/public/css/components/list.css +0 -2
  108. package/public/css/components/list.css.map +0 -7
  109. package/public/css/components/splashscreen.css +0 -2
  110. package/public/css/components/splashscreen.css.map +0 -7
  111. package/public/css/modal.css +0 -2
  112. package/public/css/modal.css.map +0 -7
  113. package/public/index.cjs +0 -4
  114. package/public/index.js +0 -27
  115. package/public/index.mjs +0 -2
  116. package/public/templates/components/modalyoulose.tpl.html +0 -3
  117. package/public/templates/components/modalyouwin.tpl.html +0 -4
  118. package/public/templates/components/splashscreen.tpl.html +0 -128
  119. package/public/templates/components/swagger-ui.tpl.html +0 -22
  120. package/src/QCObjects-SDK.d.ts +0 -26
  121. package/src/index.cts +0 -2
  122. package/src/index.d.ts +0 -2
  123. package/src/index.mts +0 -2
  124. package/src/js/org.qcobjects.cloud.auth.session.data.d.ts +0 -1
  125. package/src/js/org.qcobjects.cloud.auth.session.usertoken.d.ts +0 -2
  126. package/src/js/org.qcobjects.components.d.ts +0 -10
  127. package/src/js/org.qcobjects.components.grid.d.ts +0 -3
  128. package/src/js/org.qcobjects.components.list.d.ts +0 -3
  129. package/src/js/org.qcobjects.components.notifications.d.ts +0 -1
  130. package/src/js/org.qcobjects.components.slider.d.ts +0 -1
  131. package/src/js/org.qcobjects.components.splashscreen.d.ts +0 -28
  132. package/src/js/org.qcobjects.controllers.d.ts +0 -1
  133. package/src/js/org.qcobjects.controllers.form.d.ts +0 -1
  134. package/src/js/org.qcobjects.controllers.grid.d.ts +0 -1
  135. package/src/js/org.qcobjects.controllers.list.d.ts +0 -1
  136. package/src/js/org.qcobjects.controllers.slider.d.ts +0 -1
  137. package/src/js/org.qcobjects.controllers.swagger.d.ts +0 -1
  138. package/src/js/org.qcobjects.effects.d.ts +0 -20
  139. package/src/js/org.qcobjects.i18n_messages.d.ts +0 -1
  140. package/src/js/org.qcobjects.modal.controllers.d.ts +0 -1
  141. package/src/js/org.qcobjects.modal.effects.d.ts +0 -1
  142. package/src/js/org.qcobjects.models.d.ts +0 -1
  143. package/src/js/org.qcobjects.tools.canvas.d.ts +0 -1
  144. package/src/js/org.qcobjects.tools.d.ts +0 -1
  145. package/src/js/org.qcobjects.tools.layouts.d.ts +0 -1
  146. package/src/js/org.qcobjects.views.d.ts +0 -1
  147. /package/spec/{testsSpec.js → testsSpec.ts} +0 -0
@@ -1,5 +1,5 @@
1
1
  /**
2
- * QCObjects SDK 2.4
2
+ * QCObjects SDK 2.5
3
3
  * ________________
4
4
  *
5
5
  * Author: Jean Machuca <correojean@gmail.com>
@@ -24,30 +24,31 @@
24
24
  */
25
25
  "use strict";
26
26
  Object.defineProperty(exports, "__esModule", { value: true });
27
+ exports.CanvasTool = void 0;
27
28
  const qcobjects_1 = require("qcobjects");
28
- (function () {
29
- (0, qcobjects_1.Package)("org.qcobjects.tools.canvas", [
30
- class CanvasTool extends qcobjects_1.InheritClass {
31
- drawImageFilled(img, canvas, zoom = 1, px = 0, py = 0) {
32
- // get the scale
33
- let scale = Math.max(canvas.width / img.width, canvas.height / img.height);
34
- scale = scale * zoom;
35
- // get the top left position of the image
36
- const x = (canvas.width / 2) - (img.width / 2) * scale;
37
- const y = (canvas.height / 2) - (img.height / 2) * scale;
38
- const ctx = canvas.getContext("2d");
39
- ctx?.drawImage(img, (px + x), (py + y), img.width * scale, img.height * scale);
40
- }
41
- getImageResized(img, width, height, resizedImage, zoom = 1, px = 0, py = 0) {
42
- const canvas = document.createElement("canvas");
43
- canvas.width = width;
44
- canvas.height = height;
45
- canvas.style.width = width.toString();
46
- canvas.style.height = height.toString();
47
- this.drawImageFilled(img, canvas, zoom, px, py);
48
- resizedImage.src = canvas.toDataURL("image/png");
49
- return canvas;
50
- }
51
- }
52
- ]);
53
- })();
29
+ class CanvasTool extends qcobjects_1.InheritClass {
30
+ drawImageFilled(img, canvas, zoom = 1, px = 0, py = 0) {
31
+ // get the scale
32
+ let scale = Math.max(canvas.width / img.width, canvas.height / img.height);
33
+ scale = scale * zoom;
34
+ // get the top left position of the image
35
+ const x = (canvas.width / 2) - (img.width / 2) * scale;
36
+ const y = (canvas.height / 2) - (img.height / 2) * scale;
37
+ const ctx = canvas.getContext("2d");
38
+ ctx?.drawImage(img, (px + x), (py + y), img.width * scale, img.height * scale);
39
+ }
40
+ getImageResized(img, width, height, resizedImage, zoom = 1, px = 0, py = 0) {
41
+ const canvas = document.createElement("canvas");
42
+ canvas.width = width;
43
+ canvas.height = height;
44
+ canvas.style.width = width.toString();
45
+ canvas.style.height = height.toString();
46
+ this.drawImageFilled(img, canvas, zoom, px, py);
47
+ resizedImage.src = canvas.toDataURL("image/png");
48
+ return canvas;
49
+ }
50
+ }
51
+ exports.CanvasTool = CanvasTool;
52
+ (0, qcobjects_1.Package)("org.qcobjects.tools.canvas", [
53
+ CanvasTool
54
+ ]);
@@ -1,5 +1,5 @@
1
1
  /**
2
- * QCObjects SDK 2.4
2
+ * QCObjects SDK 2.5
3
3
  * ________________
4
4
  *
5
5
  * Author: Jean Machuca <correojean@gmail.com>
@@ -28,10 +28,12 @@ const qcobjects_1 = require("qcobjects");
28
28
  (function () {
29
29
  (0, qcobjects_1.Package)("org.qcobjects.tools", [
30
30
  class Process extends qcobjects_1.Timer {
31
+ alive;
32
+ steps = [];
33
+ currentStep = 0;
34
+ duration;
31
35
  constructor({ steps = [], currentStep = 0, alive = false }) {
32
36
  super({ steps, currentStep, alive });
33
- this.steps = [];
34
- this.currentStep = 0;
35
37
  this.alive = alive;
36
38
  }
37
39
  stop() {
@@ -43,6 +45,7 @@ const qcobjects_1 = require("qcobjects");
43
45
  duration: this.duration,
44
46
  timing: (timeFraction) => {
45
47
  this.currentStep += 1;
48
+ // eslint-disable-next-line @typescript-eslint/no-floating-promises
46
49
  this.steps.map((p) => {
47
50
  let _ret_;
48
51
  if (typeof p === "function") {
@@ -59,6 +62,10 @@ const qcobjects_1 = require("qcobjects");
59
62
  }
60
63
  });
61
64
  }
65
+ // eslint-disable-next-line no-unused-vars
66
+ thread(arg0) {
67
+ throw new Error("Method not implemented.");
68
+ }
62
69
  }
63
70
  ]);
64
71
  })();
@@ -1,6 +1,6 @@
1
1
  /* eslint-disable array-callback-return */
2
2
  /**
3
- * QCObjects SDK 2.4
3
+ * QCObjects SDK 2.5
4
4
  * ________________
5
5
  *
6
6
  * Author: Jean Machuca <correojean@gmail.com>
@@ -25,49 +25,50 @@
25
25
  */
26
26
  "use strict";
27
27
  Object.defineProperty(exports, "__esModule", { value: true });
28
+ exports.BasicLayout = void 0;
28
29
  const qcobjects_1 = require("qcobjects");
29
30
  const org_qcobjects_effects_1 = require("./org.qcobjects.effects");
30
- (function () {
31
- (0, qcobjects_1.Package)("org.qcobjects.tools.layouts", [
32
- class BasicLayout extends qcobjects_1.InheritClass {
33
- constructor({ component = null, dependencies = [] }) {
34
- super({ component, dependencies });
35
- this.dependencies = [];
36
- }
37
- load() {
38
- this.dependencies.push((0, qcobjects_1.New)(qcobjects_1.SourceCSS, {
39
- external: !(qcobjects_1.CONFIG.get("useLocalSDK", false)),
40
- url: (qcobjects_1.CONFIG.get("useLocalSDK", false)) ? ("css/basic-layout.css") : (qcobjects_1.CONFIG.get("remoteSDKPath", false) + "css/basic-layout.css")
41
- }));
42
- }
43
- coloredBorder() {
44
- /*
45
- * A helper function to visualize the layout borders
46
- * Usage: BasicLayout.coloredBorder()
47
- */
48
- setTimeout(function () {
49
- (0, qcobjects_1.Tag)("nav").map((element) => { element.style.border = "20px solid #3333"; });
50
- (0, qcobjects_1.Tag)("nav").map((element) => { element.style.backgroundColor = "#129999"; });
51
- (0, qcobjects_1.Tag)("component>footer").map((element) => { element.style.background = "#876"; });
52
- (0, qcobjects_1.Tag)("component>div").map((element) => { element.style.border = "3px dashed #fff"; });
53
- (0, qcobjects_1.Tag)("component>section").map((element) => { element.style.border = "3px solid #000"; });
54
- (0, qcobjects_1.Tag)("component>section").map((element) => { element.style.backgroundColor = "#fffaaa"; });
55
- (0, qcobjects_1.Tag)("component>article").map((element) => { element.style.border = "3px dotted #000"; });
56
- (0, qcobjects_1.Tag)("component>header").map((element) => { element.style.background = "#789"; });
57
- (0, qcobjects_1.Tag)("component>footer").map((element) => { element.style.background = "#876"; });
58
- (0, qcobjects_1.Tag)("component>article:nth-child(1)").map((element) => { element.style.border = "1px solid #444"; });
59
- (0, qcobjects_1.Tag)("component>article:nth-child(1)").map((element) => { element.style.backgroundColor = "#555aaa"; });
60
- (0, qcobjects_1.Tag)("component>article:nth-child(2)").map((element) => { element.style.backgroundColor = "#aaa333"; });
61
- (0, qcobjects_1.Tag)("component>article:nth-child(3)").map((element) => { element.style.backgroundColor = "#54da82"; });
62
- (0, qcobjects_1.Tag)("*").map((element) => { element.style.color = "#fff"; });
63
- (0, qcobjects_1.Tag)("component>article").map((element) => org_qcobjects_effects_1.Fade.apply(element, 0, 1));
64
- (0, qcobjects_1.Tag)("component>footer").map((element) => org_qcobjects_effects_1.Fade.apply(element, 0, 1));
65
- (0, qcobjects_1.Tag)("component>header").map((element) => org_qcobjects_effects_1.Fade.apply(element, 0, 1));
66
- (0, qcobjects_1.Tag)("nav").map((element) => { element.style.display = "block"; element.style.width = element.offsetParent?.scrollWidth.toString() || element.clientWidth.toString(); org_qcobjects_effects_1.MoveXInFromLeft.apply(element); });
67
- (0, qcobjects_1.Tag)("component>article").map((element) => { element.style.display = "block"; element.style.height = element.offsetParent?.scrollHeight.toString() || element.clientHeight.toString(); org_qcobjects_effects_1.MoveYInFromBottom.apply(element); });
68
- (0, qcobjects_1.Tag)("component>article:nth-child(2)").map((element) => { element.style.display = "block"; element.style.width = element.offsetParent?.scrollWidth.toString() || element.clientWidth.toString(); org_qcobjects_effects_1.MoveXInFromRight.apply(element); });
69
- }, 300);
70
- }
71
- }
72
- ]);
73
- })();
31
+ class BasicLayout extends qcobjects_1.InheritClass {
32
+ dependencies = [];
33
+ constructor({ component = null, dependencies = [] }) {
34
+ super({ component, dependencies });
35
+ }
36
+ load() {
37
+ this.dependencies.push((0, qcobjects_1.New)(qcobjects_1.SourceCSS, {
38
+ external: !(qcobjects_1.CONFIG.get("useLocalSDK", false)),
39
+ url: (qcobjects_1.CONFIG.get("useLocalSDK", false)) ? ("css/basic-layout.css") : (qcobjects_1.CONFIG.get("remoteSDKPath", false) + "css/basic-layout.css")
40
+ }));
41
+ }
42
+ coloredBorder() {
43
+ /*
44
+ * A helper function to visualize the layout borders
45
+ * Usage: BasicLayout.coloredBorder()
46
+ */
47
+ setTimeout(function () {
48
+ (0, qcobjects_1.Tag)("nav").map((element) => { element.style.border = "20px solid #3333"; });
49
+ (0, qcobjects_1.Tag)("nav").map((element) => { element.style.backgroundColor = "#129999"; });
50
+ (0, qcobjects_1.Tag)("component>footer").map((element) => { element.style.background = "#876"; });
51
+ (0, qcobjects_1.Tag)("component>div").map((element) => { element.style.border = "3px dashed #fff"; });
52
+ (0, qcobjects_1.Tag)("component>section").map((element) => { element.style.border = "3px solid #000"; });
53
+ (0, qcobjects_1.Tag)("component>section").map((element) => { element.style.backgroundColor = "#fffaaa"; });
54
+ (0, qcobjects_1.Tag)("component>article").map((element) => { element.style.border = "3px dotted #000"; });
55
+ (0, qcobjects_1.Tag)("component>header").map((element) => { element.style.background = "#789"; });
56
+ (0, qcobjects_1.Tag)("component>footer").map((element) => { element.style.background = "#876"; });
57
+ (0, qcobjects_1.Tag)("component>article:nth-child(1)").map((element) => { element.style.border = "1px solid #444"; });
58
+ (0, qcobjects_1.Tag)("component>article:nth-child(1)").map((element) => { element.style.backgroundColor = "#555aaa"; });
59
+ (0, qcobjects_1.Tag)("component>article:nth-child(2)").map((element) => { element.style.backgroundColor = "#aaa333"; });
60
+ (0, qcobjects_1.Tag)("component>article:nth-child(3)").map((element) => { element.style.backgroundColor = "#54da82"; });
61
+ (0, qcobjects_1.Tag)("*").map((element) => { element.style.color = "#fff"; });
62
+ (0, qcobjects_1.Tag)("component>article").map((element) => org_qcobjects_effects_1.Fade.apply(element, 0, 1));
63
+ (0, qcobjects_1.Tag)("component>footer").map((element) => org_qcobjects_effects_1.Fade.apply(element, 0, 1));
64
+ (0, qcobjects_1.Tag)("component>header").map((element) => org_qcobjects_effects_1.Fade.apply(element, 0, 1));
65
+ (0, qcobjects_1.Tag)("nav").map((element) => { element.style.display = "block"; element.style.width = element.offsetParent?.scrollWidth.toString() || element.clientWidth.toString(); org_qcobjects_effects_1.MoveXInFromLeft.apply(element); });
66
+ (0, qcobjects_1.Tag)("component>article").map((element) => { element.style.display = "block"; element.style.height = element.offsetParent?.scrollHeight.toString() || element.clientHeight.toString(); org_qcobjects_effects_1.MoveYInFromBottom.apply(element); });
67
+ (0, qcobjects_1.Tag)("component>article:nth-child(2)").map((element) => { element.style.display = "block"; element.style.width = element.offsetParent?.scrollWidth.toString() || element.clientWidth.toString(); org_qcobjects_effects_1.MoveXInFromRight.apply(element); });
68
+ }, 300);
69
+ }
70
+ }
71
+ exports.BasicLayout = BasicLayout;
72
+ (0, qcobjects_1.Package)("org.qcobjects.tools.layouts", [
73
+ BasicLayout
74
+ ]);
@@ -1,8 +1,5 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const qcobjects_1 = require("qcobjects");
4
1
  /**
5
- * QCObjects SDK 2.4
2
+ * QCObjects SDK 2.5
6
3
  * ________________
7
4
  *
8
5
  * Author: Jean Machuca <correojean@gmail.com>
@@ -25,10 +22,13 @@ const qcobjects_1 = require("qcobjects");
25
22
  * Everyone is permitted to copy and distribute verbatim copies of this
26
23
  * license document, but changing it is not allowed.
27
24
  */
28
- (function () {
29
- "use strict";
30
- (0, qcobjects_1.Package)("org.qcobjects.views", [
31
- class GridView extends qcobjects_1.View {
32
- }
33
- ]);
34
- })();
25
+ "use strict";
26
+ Object.defineProperty(exports, "__esModule", { value: true });
27
+ exports.GridView = void 0;
28
+ const qcobjects_1 = require("qcobjects");
29
+ class GridView extends qcobjects_1.View {
30
+ }
31
+ exports.GridView = GridView;
32
+ (0, qcobjects_1.Package)("org.qcobjects.views", [
33
+ GridView
34
+ ]);
@@ -0,0 +1,72 @@
1
+ // build.js
2
+ const esbuild = require("esbuild");
3
+ const alias = require("esbuild-plugin-alias");
4
+ const path = require("path");
5
+
6
+ const baseSettings = {
7
+ entryPoints: ["src/index.ts"], // Your entry file
8
+ bundle: true,
9
+ outdir: "public/cjs", // Output dir
10
+ format: "cjs", // or "esm" depending on your module system
11
+ target: ["esnext"], // Adjust based on your target environment
12
+ tsconfig: "tsconfig.json", // Path to your tsconfig.json,
13
+ globalName: "global",
14
+ minify:false,
15
+ keepNames: true,
16
+ sourcemap: true,
17
+ splitting: false,
18
+ chunkNames: "chunks/[name]-[hash]",
19
+ plugins: [
20
+ alias({
21
+ "types": path.join(__dirname, "src/types/global/index.d.ts"),
22
+ "qcobjects": path.join(__dirname, "node_modules/qcobjects/build/QCObjects.js"),
23
+ "qcobjects-sdk": path.join(__dirname, "src/QCObjects-SDK.ts")
24
+ })
25
+ ],
26
+ external: ["os", "path", "http", "url",
27
+ "child_process", "events", "fs", "process",
28
+ "node:fs", "node:os", "node:child_process", "node:process",
29
+ "node:path", "readline", "node:net", "node:repl",
30
+ "node:vm", "http2", "vm", "qcobjects", "qcobjects-sdk"
31
+ ]
32
+
33
+ };
34
+
35
+ const cjsSettings = {...baseSettings,
36
+ entryPoints: ["src/index.ts"], // Your entry file
37
+ outdir: "public/cjs", // Output dir
38
+ format: "cjs", // or "esm" depending on your module system
39
+ platform: "node", // or "browser" depending on your target environment
40
+ outExtension: {
41
+ ".js":".cjs"
42
+ }
43
+
44
+ };
45
+
46
+ const esmSettings = {...baseSettings,
47
+ entryPoints: ["src/index.ts"], // Your entry file
48
+ outdir: "public/esm", // Output dir
49
+ format: "esm", // or "esm" depending on your module system
50
+ platform: "browser", // or "browser" depending on your target environment
51
+ outExtension: {
52
+ ".js":".mjs"
53
+ }
54
+
55
+ };
56
+
57
+ const browserSettings = {...baseSettings,
58
+ entryPoints: ["src/index.ts"], // Your entry file
59
+ bundle: true,
60
+ outdir: "public/browser", // Output dir
61
+ format: "iife", // or "esm" depending on your module system
62
+ platform: "browser", // or "browser" depending on your target environment
63
+ outExtension: {
64
+ ".js":".js"
65
+ }
66
+ };
67
+
68
+ const logError = (e) => {console.log(e);process.exit(1);};
69
+
70
+ esbuild.build(cjsSettings).catch(logError);
71
+ esbuild.build(esmSettings).catch(logError);
72
+ esbuild.build(browserSettings).catch(logError);
@@ -0,0 +1,88 @@
1
+ import globals from "globals";
2
+ import pluginJs from "@eslint/js";
3
+ import tseslint from "typescript-eslint";
4
+
5
+ import * as parser from '@typescript-eslint/parser';
6
+
7
+
8
+ import path from "node:path";
9
+ import { fileURLToPath } from "node:url";
10
+ import js from "@eslint/js";
11
+ import { FlatCompat } from "@eslint/eslintrc";
12
+
13
+ const __filename = fileURLToPath(import.meta.url);
14
+ const __dirname = path.dirname(__filename);
15
+ const compat = new FlatCompat({
16
+ baseDirectory: __dirname,
17
+ recommendedConfig: js.configs.recommended,
18
+ allConfig: js.configs.all
19
+ });
20
+
21
+ export default [
22
+ { languageOptions: {
23
+ globals: {
24
+ ...globals.browser,
25
+ ...globals.node,
26
+ Atomics: "readonly",
27
+ SharedArrayBuffer: "readonly",
28
+ },
29
+
30
+ ecmaVersion: "latest",
31
+ sourceType: "module",
32
+ parserOptions: {
33
+ projectService: true,
34
+ tsconfigRootDir: import.meta.dirname,
35
+ programs: [parser.createProgram('tsconfig.json')],
36
+ }
37
+ ,
38
+
39
+ } },
40
+ pluginJs.configs.recommended,
41
+ ...tseslint.configs.recommended,
42
+ ...tseslint.configs.recommendedTypeChecked,
43
+ { files: ["**/*.{js,mjs,cjs,ts}"] }
44
+ ,{
45
+ ignores: [
46
+ "**/*.js",
47
+ "spec/**/*",
48
+ "src/*.js",
49
+ "src/**/*.js",
50
+ "node_modules/**/*",
51
+ "**/node_modules"
52
+ ],
53
+ }, ...compat.extends("eslint:recommended"),
54
+ { rules: {
55
+ semi: ["error", "always"],
56
+ quotes: ["error", "double"],
57
+ "@typescript-eslint/no-explicit-any": "off",
58
+ "@typescript-eslint/no-this-alias": "off",
59
+ "@typescript-eslint/no-unused-vars": "off",
60
+ "@typescript-eslint/ban-types": "off",
61
+ "array-callback-return": "warn",
62
+ "no-useless-call": "off",
63
+ camelcase: "off",
64
+ "no-var": "off",
65
+ }},
66
+ {
67
+ files: ["**/*.ts", "**/*.d.ts", "**/*.d.tsx", "**/*.tsx"]
68
+ },
69
+ { files: ["**/*.d.ts"],
70
+ rules: {
71
+ "no-unused-vars":"off"
72
+ }
73
+ },
74
+ {
75
+ files: ["**/*.ts", "**/*.d.ts"],
76
+ rules: {
77
+ "no-dupe-class-members":"off",
78
+ "@typescript-eslint/no-unsafe-function-type":"off",
79
+ "no-redeclare": "off",
80
+ "@typescript-eslint/no-unsafe-member-access":"off",
81
+ "@typescript-eslint/no-unsafe-assignment":"off",
82
+ "@typescript-eslint/no-unsafe-call":"off",
83
+ "@typescript-eslint/no-unsafe-argument":"off",
84
+ "@typescript-eslint/no-unsafe-return":"off"
85
+
86
+ }
87
+ }
88
+ ];
package/package.json CHANGED
@@ -1,68 +1,66 @@
1
1
  {
2
2
  "name": "qcobjects-sdk",
3
- "version": "2.4.66",
3
+ "version": "2.5.105-beta",
4
4
  "description": "QCObjects SDK is a set of Controllers, Views and Components that are elementary and useful to assist developers to build applications under MVC patterns using QCObjects, Cross Browser Javascript Framework for MVC Patterns",
5
- "main": "public/index.cjs",
6
- "module": "public/index.mjs",
5
+ "main": "public/cjs/index.cjs",
6
+ "module": "public/esm/index.mjs",
7
+ "browser": "public/browser/index.js",
8
+ "type": "commonjs",
9
+ "types": "public/types/index.d.ts",
7
10
  "exports": {
8
11
  ".": {
9
- "require": "./public/index.cjs",
10
- "import": "./public/index.mjs"
12
+ "types": "./public/types/index.d.ts",
13
+ "require": "./public/cjs/index.cjs",
14
+ "import": "./public/esm/index.mjs"
11
15
  },
12
16
  "./package.json": "./package.json",
13
- "./js/org.qcobjects.cloud.auth.session.data": "./src/js/org.qcobjects.cloud.auth.session.data.js",
14
- "./js/org.qcobjects.cloud.auth.session.usertoken": "./src/js/org.qcobjects.cloud.auth.session.usertoken.js",
15
- "./js/org.qcobjects.components.grid": "./src/js/org.qcobjects.components.grid.js",
16
- "./js/org.qcobjects.components": "./src/js/org.qcobjects.components.js",
17
- "./js/org.qcobjects.components.list": "./src/js/org.qcobjects.components.list.js",
18
- "./js/org.qcobjects.components.notifications": "./src/js/org.qcobjects.components.notifications.js",
19
- "./js/org.qcobjects.components.slider": "./src/js/org.qcobjects.components.slider.js",
20
- "./js/org.qcobjects.components.splashscreen": "./src/js/org.qcobjects.components.splashscreen.js",
21
- "./js/org.qcobjects.controllers.form": "./src/js/org.qcobjects.controllers.form.js",
22
- "./js/org.qcobjects.controllers.grid": "./src/js/org.qcobjects.controllers.grid.js",
23
- "./js/org.qcobjects.controllers": "./src/js/org.qcobjects.controllers.js",
24
- "./js/org.qcobjects.controllers.list": "./src/js/org.qcobjects.controllers.list.js",
25
- "./js/org.qcobjects.controllers.slider": "./src/js/org.qcobjects.controllers.slider.js",
26
- "./js/org.qcobjects.controllers.swagger": "./src/js/org.qcobjects.controllers.swagger.js",
27
- "./js/org.qcobjects.effects": "./src/js/org.qcobjects.effects.js",
28
- "./js/org.qcobjects.i18n_messages": "./src/js/org.qcobjects.i18n_messages.js",
29
- "./js/org.qcobjects.modal.controllers": "./src/js/org.qcobjects.modal.controllers.js",
30
- "./js/org.qcobjects.modal.effects": "./src/js/org.qcobjects.modal.effects.js",
31
- "./js/org.qcobjects.models": "./src/js/org.qcobjects.models.js",
32
- "./js/org.qcobjects.tools.canvas": "./src/js/org.qcobjects.tools.canvas.js",
33
- "./js/org.qcobjects.tools": "./src/js/org.qcobjects.tools.js",
34
- "./js/org.qcobjects.tools.layouts": "./src/js/org.qcobjects.tools.layouts.js",
35
- "./js/org.qcobjects.views": "./src/js/org.qcobjects.views.js",
36
- "./QCObjects-SDK": "./js/QCObjects-SDK.js"
17
+ "./js/org.qcobjects.i18n_messages": "./build/js/org.qcobjects.i18n_messages.js",
18
+ "./js/org.qcobjects.models": "./build/js/org.qcobjects.models.js",
19
+ "./js/org.qcobjects.components": "./build/js/org.qcobjects.components.js",
20
+ "./js/org.qcobjects.components.grid": "./build/js/org.qcobjects.components.grid.js",
21
+ "./js/org.qcobjects.components.list": "./build/js/org.qcobjects.components.list.js",
22
+ "./js/org.qcobjects.components.slider": "./build/js/org.qcobjects.components.slider.js",
23
+ "./js/org.qcobjects.components.notifications": "./build/js/org.qcobjects.components.notifications.js",
24
+ "./js/org.qcobjects.components.splashscreen": "./build/js/org.qcobjects.components.splashscreen.js",
25
+ "./js/org.qcobjects.controllers": "./build/js/org.qcobjects.controllers.js",
26
+ "./js/org.qcobjects.controllers.grid": "./build/js/org.qcobjects.controllers.grid.js",
27
+ "./js/org.qcobjects.controllers.slider": "./build/js/org.qcobjects.controllers.slider.js",
28
+ "./js/org.qcobjects.controllers.form": "./build/js/org.qcobjects.controllers.form.js",
29
+ "./js/org.qcobjects.controllers.swagger": "./build/js/org.qcobjects.controllers.swagger.js",
30
+ "./js/org.qcobjects.effects": "./build/js/org.qcobjects.effects.js",
31
+ "./js/org.qcobjects.modal.controllers": "./build/js/org.qcobjects.modal.controllers.js",
32
+ "./js/org.qcobjects.views": "./build/js/org.qcobjects.views.js",
33
+ "./js/org.qcobjects.tools.canvas": "./build/js/org.qcobjects.tools.canvas.js",
34
+ "./js/org.qcobjects.tools.layouts": "./build/js/org.qcobjects.tools.layouts.js",
35
+ "./js/org.qcobjects.cloud.auth.session.usertoken": "./build/js/org.qcobjects.cloud.auth.session.usertoken.js",
36
+ "./js/org.qcobjects.cloud.auth.session.data": "./build/js/org.qcobjects.cloud.auth.session.data.js",
37
+ "./QCObjects-SDK": "./build/QCObjects-SDK.js"
37
38
  },
38
- "type": "commonjs",
39
- "types": "./src/index.d.ts",
40
39
  "license": "LGPL-3.0",
41
40
  "scripts": {
42
- "test": "npm run lint",
43
- "lint": "(npx eslint \"src/**/*.ts\" --fix --ext ts)",
41
+ "build": "npm run build:ts-types && npm run build:ts && npm run build:browser",
42
+ "postbuild": "node ./postbuild.js",
43
+ "build:ts": "npm test && node ./transpile.js tsconfig.json",
44
+ "build:ts-types": "node ./transpile.js tsconfig.d.json",
45
+ "build:browser": "npm run build:esbuild",
46
+ "build:esbuild": "node ./build-esbuild.js",
47
+ "start": "qcobjects-shell",
48
+ "test:ts-types": "node ./transpile.js ./tsconfig.jasmine.json",
49
+ "test:jasmine": "npm run test:ts-types && npx ts-node -r tsconfig-paths/register --project ./tsconfig.jasmine.json ./node_modules/jasmine/bin/jasmine.js",
50
+ "test": "(npm run lint && npm run test:jasmine)",
51
+ "lint": "(npx -y eslint src/**/*.ts --fix )",
52
+ "preversion": "npm cache verify && npm test",
44
53
  "sync": "git add . && git commit -am ",
45
- "preversion": "npm i --upgrade && npm test",
46
54
  "postversion": "git push && git push --tags",
47
55
  "v-patch": "qcobjects v-patch",
48
56
  "v-minor": "qcobjects v-minor",
49
57
  "v-major": "qcobjects v-major",
50
58
  "qcobjects": "qcobjects",
51
59
  "cli": "qcobjects",
52
- "build:static": "npx qcobjects-cli publish:static src/ build/ --exclude js --exclude=.DS_Store",
53
- "build:jekyll": "npx qcobjects-cli publish:static jekyll/ public/ --exclude=.DS_Store",
54
- "build:static:css": "npx qcobjects-cli publish:static src/css build/css --exclude js --exclude=.DS_Store",
55
- "build:static:templates": "npx qcobjects-cli publish:static src/templates build/templates --exclude js --exclude=.DS_Store",
56
- "build:ts": "npm test && npx tsc",
57
- "build:ts-types": "npx tsc --project tsconfig.d.json",
58
- "build": "npm run build:static:css && npm run build:static:templates && npm run build:ts-types && npm run build:ts && npm run publish:static && npm run publish:esbuild && npm run minify:css",
59
- "publish:static": "(npx qcobjects-cli publish:static build/ public/ --exclude js --exclude=.DS_Store)",
60
- "publish:esbuild": "npx esbuild \"build/QCObjects-SDK.js\" --bundle --minify --outdir=public --keep-names --global-name=global --sourcemap --target=es2020 ",
61
- "minify:css": "(npx esbuild build/css/*.css build/css/**/*.css --outdir=public/css --keep-names --minify --global-name=global --sourcemap --loader:.svg=file)",
62
60
  "prepare": "node -e \"if(!require('fs').existsSync('.git')){process.exit(0)}\" || npx -y husky install",
63
- "prestart": "npm run publish:web",
64
61
  "cli:help": "qcobjects --help",
65
- "tree": "tree -d --gitignore"
62
+ "tree": "tree -d --gitignore",
63
+ "generate-readme-pdf": "(npx -y markdown-pdf --paper-format \"Letter\" -o README.pdf README.md && npx markdown-pdf --paper-format \"Letter\" -o README-es.pdf README-es.md) && npm uninstall markdown-pdf"
66
64
  },
67
65
  "repository": {
68
66
  "type": "git",
@@ -84,27 +82,34 @@
84
82
  "webcomponents"
85
83
  ],
86
84
  "devDependencies": {
87
- "@types/qcobjects": "github:QCObjects/-types-qcobjects",
88
- "@types/qcobjects-sdk": "github:QCObjects/-types-qcobjects-sdk",
85
+ "@eslint/eslintrc": "^3.1.0",
86
+ "@eslint/js": "^9.21.0",
87
+ "@types/jasmine": "^5.1.4",
88
+ "@types/node": "^22.8.1",
89
89
  "@typescript-eslint/eslint-plugin": "^5.58.0",
90
90
  "@typescript-eslint/parser": "^5.58.0",
91
- "eslint": "^8.38.0",
92
- "eslint-config-prettier": "^8.8.0",
93
- "eslint-config-qcobjects": "^0.0.23",
94
- "eslint-config-qcobjects-typescript": "^2.4.5",
91
+ "esbuild": "^0.25.0",
92
+ "esbuild-plugin-alias": "^0.2.1",
93
+ "eslint": "9.10",
94
+ "eslint-config-prettier": "^8.10.0",
95
95
  "eslint-config-semistandard": "^17.0.0",
96
- "eslint-config-standard": "^17.0.0",
96
+ "eslint-config-standard": "^17.1.0",
97
97
  "eslint-plugin-import": "^2.27.5",
98
98
  "eslint-plugin-n": "^15.7.0",
99
99
  "eslint-plugin-promise": "^6.1.1",
100
+ "globals": "^15.15.0",
100
101
  "hint": "^2.0.0",
101
- "jasmine": "^3.7.0",
102
- "qcobjects": "^2.4.99",
103
- "qcobjects-cli": "^2.4.65",
104
- "qcobjects-command-publish-static": "^1.0.2",
105
- "qcobjects-sdk": "^2.4.64",
106
- "qcobjects-tsconfig": "^2.4.10",
107
- "typescript": "^5.0.4"
102
+ "install": "^0.13.0",
103
+ "jasmine": "^3.99.0",
104
+ "qcobjects": "^2.5.140-beta",
105
+ "ts-node": "^10.9.2",
106
+ "tsconfig-paths": "^4.2.0",
107
+ "typescript": "^5.7.3",
108
+ "typescript-eslint": "^8.24.1"
109
+ },
110
+ "engines": {
111
+ "npm": ">=10",
112
+ "node": ">=22"
108
113
  },
109
114
  "author": "Jean Machuca <correojean@gmail.com>",
110
115
  "bugs": {
@@ -112,7 +117,6 @@
112
117
  },
113
118
  "homepage": "https://sdk.qcobjects.dev",
114
119
  "peerDependencies": {
115
- "qcobjects": ">=2.4.99"
116
- },
117
- "dependencies": {}
120
+ "qcobjects": ">=2.5.140-beta"
121
+ }
118
122
  }
package/postbuild.js ADDED
@@ -0,0 +1,10 @@
1
+ const fs = require('node:fs');
2
+ const path = './public/types/index.d.ts';
3
+
4
+ fs.appendFile(path, '\nexport {};', function (err) {
5
+ if (err) {
6
+ console.error('Failed to append export statement:', err);
7
+ } else {
8
+ console.log('Successfully appended export statement to index.d.ts');
9
+ }
10
+ });