jac-client 0.2.10__py3-none-any.whl → 0.2.12__py3-none-any.whl

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 (85) hide show
  1. jac_client/examples/all-in-one/button.jac +4 -3
  2. jac_client/examples/all-in-one/components/CategoryFilter.jac +36 -24
  3. jac_client/examples/all-in-one/components/Header.jac +12 -8
  4. jac_client/examples/all-in-one/components/ProfitOverview.jac +49 -35
  5. jac_client/examples/all-in-one/components/Summary.jac +59 -36
  6. jac_client/examples/all-in-one/components/TransactionForm.jac +142 -112
  7. jac_client/examples/all-in-one/components/TransactionItem.jac +37 -30
  8. jac_client/examples/all-in-one/components/TransactionList.jac +33 -26
  9. jac_client/examples/all-in-one/components/button.jac +4 -3
  10. jac_client/examples/all-in-one/components/navigation.jac +111 -117
  11. jac_client/examples/all-in-one/constants/categories.jac +23 -24
  12. jac_client/examples/all-in-one/constants/clients.jac +7 -8
  13. jac_client/examples/all-in-one/context/BudgetContext.jac +9 -6
  14. jac_client/examples/all-in-one/hooks/useBudget.jac +18 -12
  15. jac_client/examples/all-in-one/hooks/useLocalStorage.jac +14 -13
  16. jac_client/examples/all-in-one/main.jac +340 -371
  17. jac_client/examples/all-in-one/pages/BudgetPlanner.jac +19 -12
  18. jac_client/examples/all-in-one/pages/FeaturesTest.jac +31 -15
  19. jac_client/examples/all-in-one/pages/LandingPage.jac +113 -90
  20. jac_client/examples/all-in-one/pages/budget_planner_ui.cl.jac +34 -39
  21. jac_client/examples/all-in-one/pages/features_test_ui.cl.jac +464 -352
  22. jac_client/examples/all-in-one/pages/loginPage.jac +114 -119
  23. jac_client/examples/all-in-one/pages/nestedDemo.jac +43 -50
  24. jac_client/examples/all-in-one/pages/notFound.jac +14 -15
  25. jac_client/examples/all-in-one/pages/signupPage.jac +113 -119
  26. jac_client/examples/all-in-one/utils/formatters.jac +5 -8
  27. jac_client/examples/asset-serving/css-with-image/main.jac +77 -73
  28. jac_client/examples/asset-serving/image-asset/main.jac +47 -46
  29. jac_client/examples/asset-serving/import-alias/main.jac +93 -95
  30. jac_client/examples/basic/main.jac +17 -15
  31. jac_client/examples/basic-auth/main.jac +246 -254
  32. jac_client/examples/basic-auth-with-router/main.jac +272 -285
  33. jac_client/examples/basic-full-stack/main.jac +245 -242
  34. jac_client/examples/css-styling/js-styling/main.jac +41 -62
  35. jac_client/examples/css-styling/material-ui/main.jac +90 -90
  36. jac_client/examples/css-styling/pure-css/main.jac +35 -44
  37. jac_client/examples/css-styling/sass-example/main.jac +35 -44
  38. jac_client/examples/css-styling/styled-components/main.jac +38 -47
  39. jac_client/examples/css-styling/tailwind-example/main.jac +54 -43
  40. jac_client/examples/full-stack-with-auth/main.jac +407 -433
  41. jac_client/examples/little-x/main.jac +306 -344
  42. jac_client/examples/little-x/src/submit-button.jac +15 -14
  43. jac_client/examples/nested-folders/nested-advance/main.jac +18 -27
  44. jac_client/examples/nested-folders/nested-advance/src/ButtonRoot.jac +4 -6
  45. jac_client/examples/nested-folders/nested-advance/src/level1/ButtonSecondL.jac +9 -13
  46. jac_client/examples/nested-folders/nested-advance/src/level1/Card.jac +29 -32
  47. jac_client/examples/nested-folders/nested-advance/src/level1/level2/ButtonThirdL.jac +12 -18
  48. jac_client/examples/nested-folders/nested-basic/main.jac +7 -5
  49. jac_client/examples/nested-folders/nested-basic/src/button.jac +4 -3
  50. jac_client/examples/nested-folders/nested-basic/src/components/button.jac +4 -3
  51. jac_client/examples/ts-support/main.jac +26 -26
  52. jac_client/examples/with-router/main.jac +186 -223
  53. jac_client/plugin/client_runtime.cl.jac +5 -3
  54. jac_client/plugin/impl/client_runtime.impl.jac +1 -1
  55. jac_client/plugin/plugin_config.jac +53 -99
  56. jac_client/plugin/src/__init__.jac +0 -2
  57. jac_client/plugin/src/compiler.jac +0 -1
  58. jac_client/plugin/src/impl/compiler.impl.jac +49 -17
  59. jac_client/plugin/src/impl/jac_to_js.impl.jac +5 -1
  60. jac_client/plugin/src/impl/package_installer.impl.jac +20 -20
  61. jac_client/plugin/src/impl/vite_bundler.impl.jac +146 -84
  62. jac_client/plugin/src/targets/impl/desktop_target.impl.jac +54 -41
  63. jac_client/plugin/utils/__init__.jac +3 -0
  64. jac_client/plugin/utils/bun_installer.jac +16 -0
  65. jac_client/plugin/utils/client_deps.jac +14 -0
  66. jac_client/plugin/utils/impl/bun_installer.impl.jac +99 -0
  67. jac_client/plugin/utils/impl/client_deps.impl.jac +73 -0
  68. jac_client/templates/client.jacpack +0 -4
  69. jac_client/templates/fullstack.jacpack +1 -5
  70. jac_client/tests/conftest.py +56 -41
  71. jac_client/tests/fixtures/spawn_test/app.jac +49 -52
  72. jac_client/tests/fixtures/with-ts/app.jac +27 -27
  73. jac_client/tests/test_cli.py +71 -6
  74. jac_client/tests/test_helpers.py +11 -18
  75. jac_client/tests/test_it.py +1 -1
  76. {jac_client-0.2.10.dist-info → jac_client-0.2.12.dist-info}/METADATA +5 -5
  77. jac_client-0.2.12.dist-info/RECORD +115 -0
  78. {jac_client-0.2.10.dist-info → jac_client-0.2.12.dist-info}/WHEEL +1 -1
  79. jac_client/plugin/src/babel_processor.jac +0 -18
  80. jac_client/plugin/src/impl/babel_processor.impl.jac +0 -89
  81. jac_client/plugin/utils/impl/node_installer.impl.jac +0 -249
  82. jac_client/plugin/utils/node_installer.jac +0 -41
  83. jac_client-0.2.10.dist-info/RECORD +0 -115
  84. {jac_client-0.2.10.dist-info → jac_client-0.2.12.dist-info}/entry_points.txt +0 -0
  85. {jac_client-0.2.10.dist-info → jac_client-0.2.12.dist-info}/top_level.txt +0 -0
@@ -1,63 +1,74 @@
1
1
  # Pages
2
- cl import from react { useEffect }
3
2
  cl import ".global.css";
3
+
4
4
  cl {
5
5
  def:pub app -> any {
6
6
  has count: int = 0;
7
7
 
8
- useEffect(lambda -> None{ console.log("Count changed: ", count);} , [count]);
8
+ can with count entry {
9
+ console.log("Count changed: ", count);
10
+ }
9
11
 
10
- handleIncrement = lambda e: any -> None{ count = count + 1;} ;
12
+ handleIncrement = lambda e: any -> None { count = count + 1;};
11
13
 
12
- handleDecrement = lambda e: any -> None{ count = count - 1;} ;
14
+ handleDecrement = lambda e: any -> None { count = count - 1;};
13
15
 
14
- handleReset = lambda e: any -> None{ count = 0;} ;
16
+ handleReset = lambda e: any -> None { count = 0;};
15
17
 
16
18
  countColorClass = "text-gray-800"
17
19
  if count == 0
18
20
  else ("text-green-600" if count > 0 else "text-red-600");
19
21
 
20
- return <div className="min-h-screen bg-gradient-to-br from-blue-50 to-indigo-100 flex items-center justify-center p-4">
21
- <div className="bg-white rounded-2xl shadow-2xl p-8 max-w-md w-full">
22
- <h1 className="text-3xl font-bold text-gray-800 text-center mb-6">
23
- Counter Application
24
- </h1>
25
- <div className="h-px bg-gradient-to-r from-transparent via-gray-300 to-transparent mb-6"></div>
26
- <div className="text-center mb-8">
27
- <div className="text-sm font-semibold text-gray-600 mb-2 uppercase tracking-wide">
28
- Current Count
22
+ return
23
+ <div
24
+ className="min-h-screen bg-gradient-to-br from-blue-50 to-indigo-100 flex items-center justify-center p-4"
25
+ >
26
+ <div className="bg-white rounded-2xl shadow-2xl p-8 max-w-md w-full">
27
+ <h1 className="text-3xl font-bold text-gray-800 text-center mb-6">
28
+ Counter Application
29
+ </h1>
30
+ <div
31
+ className="h-px bg-gradient-to-r from-transparent via-gray-300 to-transparent mb-6"
32
+ ></div>
33
+ <div className="text-center mb-8">
34
+ <div
35
+ className="text-sm font-semibold text-gray-600 mb-2 uppercase tracking-wide"
36
+ >
37
+ Current Count
38
+ </div>
39
+ <div
40
+ className={"text-6xl font-bold " + countColorClass + " transition-colors duration-300"}
41
+ >
42
+ {count}
43
+ </div>
29
44
  </div>
30
45
  <div
31
- className={"text-6xl font-bold " + countColorClass + " transition-colors duration-300"}
32
- >
33
- {count}
46
+ className="h-px bg-gradient-to-r from-transparent via-gray-300 to-transparent mb-6"
47
+ ></div>
48
+ <div className="flex justify-center items-center gap-4 mb-6">
49
+ <button
50
+ className="bg-red-500 hover:bg-red-600 text-white font-bold py-3 px-6 rounded-lg shadow-lg transition-all duration-200 transform hover:scale-105 active:scale-95 text-xl"
51
+ onClick={handleDecrement}
52
+ >
53
+ -
54
+ </button>
55
+ <button
56
+ className="bg-gray-500 hover:bg-gray-600 text-white font-bold py-3 px-6 rounded-lg shadow-lg transition-all duration-200 transform hover:scale-105 active:scale-95 text-xl"
57
+ onClick={handleReset}
58
+ >
59
+
60
+ </button>
61
+ <button
62
+ className="bg-green-500 hover:bg-green-600 text-white font-bold py-3 px-6 rounded-lg shadow-lg transition-all duration-200 transform hover:scale-105 active:scale-95 text-xl"
63
+ onClick={handleIncrement}
64
+ >
65
+ +
66
+ </button>
67
+ </div>
68
+ <div className="text-center text-sm text-gray-500 italic">
69
+ Click the buttons to increment, decrement, or reset the counter
34
70
  </div>
35
71
  </div>
36
- <div className="h-px bg-gradient-to-r from-transparent via-gray-300 to-transparent mb-6"></div>
37
- <div className="flex justify-center items-center gap-4 mb-6">
38
- <button
39
- className="bg-red-500 hover:bg-red-600 text-white font-bold py-3 px-6 rounded-lg shadow-lg transition-all duration-200 transform hover:scale-105 active:scale-95 text-xl"
40
- onClick={handleDecrement}
41
- >
42
- -
43
- </button>
44
- <button
45
- className="bg-gray-500 hover:bg-gray-600 text-white font-bold py-3 px-6 rounded-lg shadow-lg transition-all duration-200 transform hover:scale-105 active:scale-95 text-xl"
46
- onClick={handleReset}
47
- >
48
-
49
- </button>
50
- <button
51
- className="bg-green-500 hover:bg-green-600 text-white font-bold py-3 px-6 rounded-lg shadow-lg transition-all duration-200 transform hover:scale-105 active:scale-95 text-xl"
52
- onClick={handleIncrement}
53
- >
54
- +
55
- </button>
56
- </div>
57
- <div className="text-center text-sm text-gray-500 italic">
58
- Click the buttons to increment, decrement, or reset the counter
59
- </div>
60
- </div>
61
- </div>;
72
+ </div>;
62
73
  }
63
74
  }