@wavemaker/angular-codegen 11.10.4-rc.6085 → 11.10.5-1.6107

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/package-lock.json CHANGED
@@ -1,15 +1,15 @@
1
1
  {
2
2
  "name": "@wavemaker/angular-codegen",
3
- "version": "11.10.4-rc.6085",
3
+ "version": "11.10.5-1.6107",
4
4
  "lockfileVersion": 3,
5
5
  "requires": true,
6
6
  "packages": {
7
7
  "": {
8
8
  "name": "@wavemaker/angular-codegen",
9
- "version": "11.10.4-rc.6085",
9
+ "version": "11.10.5-1.6107",
10
10
  "license": "ISC",
11
11
  "dependencies": {
12
- "@wavemaker/angular-app": "11.10.4-rc.6085",
12
+ "@wavemaker/angular-app": "11.10.5-1.6107",
13
13
  "archiver": "^7.0.1",
14
14
  "cheerio": "1.0.0-rc.12",
15
15
  "decode-uri-component": "^0.2.0",
@@ -463,13 +463,13 @@
463
463
  "license": "MIT"
464
464
  },
465
465
  "node_modules/@babel/generator": {
466
- "version": "7.26.10",
467
- "integrity": "sha512-rRHT8siFIXQrAYOYqZQVsAr8vJ+cBNqcVAY6m5V8/4QqzaPl+zDBe6cLEPRDuNOUf3ww8RfJVlOyQMoSI+5Ang==",
466
+ "version": "7.27.0",
467
+ "integrity": "sha512-VybsKvpiN1gU1sdMZIp7FcqphVVKEwcuj02x73uvcHE0PTihx1nlBcowYWhDwjpoAXRv43+gDzyggGnn1XZhVw==",
468
468
  "dev": true,
469
469
  "license": "MIT",
470
470
  "dependencies": {
471
- "@babel/parser": "^7.26.10",
472
- "@babel/types": "^7.26.10",
471
+ "@babel/parser": "^7.27.0",
472
+ "@babel/types": "^7.27.0",
473
473
  "@jridgewell/gen-mapping": "^0.3.5",
474
474
  "@jridgewell/trace-mapping": "^0.3.25",
475
475
  "jsesc": "^3.0.2"
@@ -479,12 +479,12 @@
479
479
  }
480
480
  },
481
481
  "node_modules/@babel/helper-compilation-targets": {
482
- "version": "7.26.5",
483
- "integrity": "sha512-IXuyn5EkouFJscIDuFF5EsiSolseme1s0CZB+QxVugqJLYmKdxI1VfIBOst0SUu4rnk2Z7kqTwmoO1lp3HIfnA==",
482
+ "version": "7.27.0",
483
+ "integrity": "sha512-LVk7fbXml0H2xH34dFzKQ7TDZ2G4/rVTOrq9V+icbbadjbVxxeFeDsNHv2SrZeWoA+6ZiTyWYWtScEIW07EAcA==",
484
484
  "dev": true,
485
485
  "license": "MIT",
486
486
  "dependencies": {
487
- "@babel/compat-data": "^7.26.5",
487
+ "@babel/compat-data": "^7.26.8",
488
488
  "@babel/helper-validator-option": "^7.25.9",
489
489
  "browserslist": "^4.24.0",
490
490
  "lru-cache": "^5.1.1",
@@ -561,25 +561,25 @@
561
561
  }
562
562
  },
563
563
  "node_modules/@babel/helpers": {
564
- "version": "7.26.10",
565
- "integrity": "sha512-UPYc3SauzZ3JGgj87GgZ89JVdC5dj0AoetR5Bw6wj4niittNyFh6+eOGonYvJ1ao6B8lEa3Q3klS7ADZ53bc5g==",
564
+ "version": "7.27.0",
565
+ "integrity": "sha512-U5eyP/CTFPuNE3qk+WZMxFkp/4zUzdceQlfzf7DdGdhp+Fezd7HD+i8Y24ZuTMKX3wQBld449jijbGq6OdGNQg==",
566
566
  "dev": true,
567
567
  "license": "MIT",
568
568
  "dependencies": {
569
- "@babel/template": "^7.26.9",
570
- "@babel/types": "^7.26.10"
569
+ "@babel/template": "^7.27.0",
570
+ "@babel/types": "^7.27.0"
571
571
  },
572
572
  "engines": {
573
573
  "node": ">=6.9.0"
574
574
  }
575
575
  },
576
576
  "node_modules/@babel/parser": {
577
- "version": "7.26.10",
578
- "integrity": "sha512-6aQR2zGE/QFi8JpDLjUZEPYOs7+mhKXm86VaKFiLP35JQwQb6bwUE+XbvkH0EptsYhbNBSUGaUBLKqxH1xSgsA==",
577
+ "version": "7.27.0",
578
+ "integrity": "sha512-iaepho73/2Pz7w2eMS0Q5f83+0RKI7i4xmiYeBmDzfRVbQtTOG7Ts0S4HzJVsTMGI9keU8rNfuZr8DKfSt7Yyg==",
579
579
  "dev": true,
580
580
  "license": "MIT",
581
581
  "dependencies": {
582
- "@babel/types": "^7.26.10"
582
+ "@babel/types": "^7.27.0"
583
583
  },
584
584
  "bin": {
585
585
  "parser": "bin/babel-parser.js"
@@ -807,8 +807,8 @@
807
807
  }
808
808
  },
809
809
  "node_modules/@babel/runtime-corejs3": {
810
- "version": "7.26.10",
811
- "integrity": "sha512-uITFQYO68pMEYR46AHgQoyBg7KPPJDAbGn4jUTIRgCFJIp88MIBUianVOplhZDEec07bp9zIyr4Kp0FCyQzmWg==",
810
+ "version": "7.27.0",
811
+ "integrity": "sha512-UWjX6t+v+0ckwZ50Y5ShZLnlk95pP5MyW/pon9tiYzl3+18pkTHTFNTKr7rQbfRXPkowt2QAn30o1b6oswszew==",
812
812
  "license": "MIT",
813
813
  "dependencies": {
814
814
  "core-js-pure": "^3.30.2",
@@ -824,30 +824,30 @@
824
824
  "license": "MIT"
825
825
  },
826
826
  "node_modules/@babel/template": {
827
- "version": "7.26.9",
828
- "integrity": "sha512-qyRplbeIpNZhmzOysF/wFMuP9sctmh2cFzRAZOn1YapxBsE1i9bJIY586R/WBLfLcmcBlM8ROBiQURnnNy+zfA==",
827
+ "version": "7.27.0",
828
+ "integrity": "sha512-2ncevenBqXI6qRMukPlXwHKHchC7RyMuu4xv5JBXRfOGVcTy1mXCD12qrp7Jsoxll1EV3+9sE4GugBVRjT2jFA==",
829
829
  "dev": true,
830
830
  "license": "MIT",
831
831
  "dependencies": {
832
832
  "@babel/code-frame": "^7.26.2",
833
- "@babel/parser": "^7.26.9",
834
- "@babel/types": "^7.26.9"
833
+ "@babel/parser": "^7.27.0",
834
+ "@babel/types": "^7.27.0"
835
835
  },
836
836
  "engines": {
837
837
  "node": ">=6.9.0"
838
838
  }
839
839
  },
840
840
  "node_modules/@babel/traverse": {
841
- "version": "7.26.10",
842
- "integrity": "sha512-k8NuDrxr0WrPH5Aupqb2LCVURP/S0vBEn5mK6iH+GIYob66U5EtoZvcdudR2jQ4cmTwhEwW1DLB+Yyas9zjF6A==",
841
+ "version": "7.27.0",
842
+ "integrity": "sha512-19lYZFzYVQkkHkl4Cy4WrAVcqBkgvV2YM2TU3xG6DIwO7O3ecbDPfW3yM3bjAGcqcQHi+CCtjMR3dIEHxsd6bA==",
843
843
  "dev": true,
844
844
  "license": "MIT",
845
845
  "dependencies": {
846
846
  "@babel/code-frame": "^7.26.2",
847
- "@babel/generator": "^7.26.10",
848
- "@babel/parser": "^7.26.10",
849
- "@babel/template": "^7.26.9",
850
- "@babel/types": "^7.26.10",
847
+ "@babel/generator": "^7.27.0",
848
+ "@babel/parser": "^7.27.0",
849
+ "@babel/template": "^7.27.0",
850
+ "@babel/types": "^7.27.0",
851
851
  "debug": "^4.3.1",
852
852
  "globals": "^11.1.0"
853
853
  },
@@ -879,8 +879,8 @@
879
879
  "license": "MIT"
880
880
  },
881
881
  "node_modules/@babel/types": {
882
- "version": "7.26.10",
883
- "integrity": "sha512-emqcG3vHrpxUKTrxcblR36dcrcoRDvKmnL/dCL6ZsHaShW80qxCAcNhzQZrpeM765VzEos+xOi4s+r4IXzTwdQ==",
882
+ "version": "7.27.0",
883
+ "integrity": "sha512-H45s8fVLYjbhFH62dIJ3WtmJ6RSPt/3DRO0ZcT2SUiYiQyz3BLVb9ADEnLl91m74aQPS3AzzeajZHYOalWe3bg==",
884
884
  "dev": true,
885
885
  "license": "MIT",
886
886
  "dependencies": {
@@ -1455,8 +1455,8 @@
1455
1455
  }
1456
1456
  },
1457
1457
  "node_modules/@types/babel__generator": {
1458
- "version": "7.6.8",
1459
- "integrity": "sha512-ASsj+tpEDsEiFr1arWrlN6V3mdfjRMZt6LtK/Vp/kreFLnr5QH5+DhvD5nINYZXzwJvXeGq+05iUXcAzVrqWtw==",
1458
+ "version": "7.27.0",
1459
+ "integrity": "sha512-ufFd2Xi92OAVPYsy+P4n7/U7e68fex0+Ee8gSG9KX7eo084CWiQ4sdxktvdl0bOPupXtVJPY19zk6EwWqUQ8lg==",
1460
1460
  "dev": true,
1461
1461
  "license": "MIT",
1462
1462
  "dependencies": {
@@ -1474,8 +1474,8 @@
1474
1474
  }
1475
1475
  },
1476
1476
  "node_modules/@types/babel__traverse": {
1477
- "version": "7.20.6",
1478
- "integrity": "sha512-r1bzfrm0tomOI8g1SzvCaQHo6Lcv6zu0EA+W2kHrt8dyrHQxGzBBL4kdkzIS+jBMV+EYcMAEAqXqYaLJq5rOZg==",
1477
+ "version": "7.20.7",
1478
+ "integrity": "sha512-dkO5fhS7+/oos4ciWxyEyjWe48zmG6wbCheo/G2ZnHx4fs3EU6YC6UM8rk56gAjNJ9P3MTH2jo5jb92/K6wbng==",
1479
1479
  "dev": true,
1480
1480
  "license": "MIT",
1481
1481
  "dependencies": {
@@ -1518,11 +1518,11 @@
1518
1518
  }
1519
1519
  },
1520
1520
  "node_modules/@types/node": {
1521
- "version": "22.13.10",
1522
- "integrity": "sha512-I6LPUvlRH+O6VRUqYOcMudhaIdUVWfsjnZavnsraHvpBwaEyMN29ry+0UVJhImYL16xsscu0aske3yA+uPOWfw==",
1521
+ "version": "22.14.0",
1522
+ "integrity": "sha512-Kmpl+z84ILoG+3T/zQFyAJsU6EPTmOCj8/2+83fSN6djd6I4o7uOuGIH6vq3PrjY5BGitSbFuMN18j3iknubbA==",
1523
1523
  "license": "MIT",
1524
1524
  "dependencies": {
1525
- "undici-types": "~6.20.0"
1525
+ "undici-types": "~6.21.0"
1526
1526
  }
1527
1527
  },
1528
1528
  "node_modules/@types/prettier": {
@@ -1552,8 +1552,8 @@
1552
1552
  "license": "MIT"
1553
1553
  },
1554
1554
  "node_modules/@wavemaker/angular-app": {
1555
- "version": "11.10.4-rc.6085",
1556
- "integrity": "sha512-UAFMEiLGy+Hdf/JAL9NQUqrBmN65MA5zzkNOAs4juELiuHmvMh8tXiCM2UY1bpZSHac9xroTzhnP/juRQxhtPw==",
1555
+ "version": "11.10.5-1.6107",
1556
+ "integrity": "sha512-p7Ikc0k4bHW/CqV2sPeKBVb5HZHBucUqCIry0+NMC4s3MNP9zr2Ubb0h0ycNRGv8D4gKvLLAWnEiScFtYhb+OQ==",
1557
1557
  "dependencies": {
1558
1558
  "@angular/animations": "18.2.13",
1559
1559
  "@angular/common": "18.2.13",
@@ -1581,12 +1581,12 @@
1581
1581
  "@awesome-cordova-plugins/vibration": "5.39.1",
1582
1582
  "@babel/runtime": "7.14.8",
1583
1583
  "@metrichor/jmespath": "0.3.1",
1584
- "@wavemaker/app-ng-runtime": "11.10.4-rc.6085",
1585
- "@wavemaker/custom-widgets-m3": "11.10.4-rc.6085",
1584
+ "@wavemaker/app-ng-runtime": "11.10.5-1.6107",
1585
+ "@wavemaker/custom-widgets-m3": "11.10.5-1.6107",
1586
1586
  "@wavemaker/focus-trap": "1.0.1",
1587
- "@wavemaker/foundation-css": "11.10.4-rc.6085",
1587
+ "@wavemaker/foundation-css": "11.10.5-1.6107",
1588
1588
  "@wavemaker/nvd3": "1.8.12",
1589
- "@wavemaker/variables": "11.10.4-rc.6085",
1589
+ "@wavemaker/variables": "11.10.5-1.6107",
1590
1590
  "@ztree/ztree_v3": "3.5.48",
1591
1591
  "angular-imask": "^7.6.1",
1592
1592
  "angular2-websocket": "0.9.7",
@@ -1626,8 +1626,8 @@
1626
1626
  }
1627
1627
  },
1628
1628
  "node_modules/@wavemaker/app-ng-runtime": {
1629
- "version": "11.10.4-rc.6085",
1630
- "integrity": "sha512-uKZiIQTPephKUfB6DhfSTWBuzRIXMNEWVZ9Cdr9cBphf3iTfBybh70TO5nTlpIlzct7OCEQh83nFaXR2ICZObQ==",
1629
+ "version": "11.10.5-1.6107",
1630
+ "integrity": "sha512-QmUpmIlakDrSHHLbUhDwiAMPU/024pGgzChDSVa5o8SRPp8RPFQWfSCLU17Lo5PCnj+c1gYkF4yRpWa4AxIDaQ==",
1631
1631
  "license": "MIT",
1632
1632
  "engines": {
1633
1633
  "node": ">=18.16.1",
@@ -1635,8 +1635,8 @@
1635
1635
  }
1636
1636
  },
1637
1637
  "node_modules/@wavemaker/custom-widgets-m3": {
1638
- "version": "11.10.4-rc.6085",
1639
- "integrity": "sha512-Wc9PtfCXn5/bpNIY+HbKTjUY1MDDSlPrTH7zhjjqlzQqVIuvQa+WmKr+/gxZ+K2jewRL97MpHNnZgHkKaqk0VQ==",
1638
+ "version": "11.10.5-1.6107",
1639
+ "integrity": "sha512-sXdVgaozXemr7H52+3LjtY3CRFSaYo68oS61P82bPMKVd9xzyq2gBapqWowD4v3rP/eEBukCcyYicEqToDSQCw==",
1640
1640
  "license": "ISC"
1641
1641
  },
1642
1642
  "node_modules/@wavemaker/focus-trap": {
@@ -1649,9 +1649,12 @@
1649
1649
  }
1650
1650
  },
1651
1651
  "node_modules/@wavemaker/foundation-css": {
1652
- "version": "11.10.4-rc.6085",
1653
- "integrity": "sha512-X+sj987ncGXKbAtdcUiwJRSh9lXO81h5nN9balbss+Vwbv3gGXTFljGV8gHRNalTO6JiMtx2+Ut2Y+R2M7WHhg==",
1654
- "license": "ISC"
1652
+ "version": "11.10.5-1.6107",
1653
+ "integrity": "sha512-OdPUUkXqGS42L1Ek7jPfb2NuJ9GXyXhws3l/TAE6+M0NxrD8AuePsWI0gSSA5MmiU3mP2xBASv9923If+U/C9A==",
1654
+ "license": "ISC",
1655
+ "dependencies": {
1656
+ "chroma-js": "^3.1.2"
1657
+ }
1655
1658
  },
1656
1659
  "node_modules/@wavemaker/nvd3": {
1657
1660
  "version": "1.8.12",
@@ -1662,8 +1665,8 @@
1662
1665
  }
1663
1666
  },
1664
1667
  "node_modules/@wavemaker/variables": {
1665
- "version": "11.10.4-rc.6085",
1666
- "integrity": "sha512-2whZN8DQaHo6wHmw9UHQUW7MR4TDE+bzmq9ZBfq8N9CILeuTpHefskSAWaE8G0xzSnbgGZwEjxY3xJCmEEwoIg==",
1668
+ "version": "11.10.5-1.6107",
1669
+ "integrity": "sha512-VbARd9gl+YzJB3OJwDBeo+sRnTL6ebzRoYe7dCmUi5C9anF1OTZ6vDh25rA2FY3GLEGJYSkm044xsA07qS6eaw==",
1667
1670
  "license": "ISC",
1668
1671
  "dependencies": {
1669
1672
  "@metrichor/jmespath": "^0.3.1",
@@ -2340,8 +2343,8 @@
2340
2343
  }
2341
2344
  },
2342
2345
  "node_modules/caniuse-lite": {
2343
- "version": "1.0.30001706",
2344
- "integrity": "sha512-3ZczoTApMAZwPKYWmwVbQMFpXBDds3/0VciVoUwPUbldlYyVLmRVuRs/PcUZtHpbLRpzzDvrvnFuREsGt6lUug==",
2346
+ "version": "1.0.30001712",
2347
+ "integrity": "sha512-MBqPpGYYdQ7/hfKiet9SCI+nmN5/hp4ZzveOJubl5DTAMa5oggjAuoi0Z4onBpKPFI2ePGnQuQIzF3VxDjDJig==",
2345
2348
  "dev": true,
2346
2349
  "funding": [
2347
2350
  {
@@ -2424,6 +2427,11 @@
2424
2427
  "integrity": "sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==",
2425
2428
  "license": "ISC"
2426
2429
  },
2430
+ "node_modules/chroma-js": {
2431
+ "version": "3.1.2",
2432
+ "integrity": "sha512-IJnETTalXbsLx1eKEgx19d5L6SRM7cH4vINw/99p/M11HCuXGRWL+6YmCm7FWFGIo6dtWuQoQi1dc5yQ7ESIHg==",
2433
+ "license": "(BSD-3-Clause AND Apache-2.0)"
2434
+ },
2427
2435
  "node_modules/ci-info": {
2428
2436
  "version": "3.9.0",
2429
2437
  "integrity": "sha512-NIxF55hv4nSqQswkAeiOi1r83xy8JldOFDTWiug55KBu9Jnblncd2U6ViHmYgHf01TPZS77NJBhBMKdWj9HQMQ==",
@@ -3414,8 +3422,8 @@
3414
3422
  "license": "MIT"
3415
3423
  },
3416
3424
  "node_modules/electron-to-chromium": {
3417
- "version": "1.5.121",
3418
- "integrity": "sha512-gpIEzIb3uvm6V8IK452TvzOvZ3EAF8D5i11SMUG7BjpF2aalh5KyKX5dO+GDW5m9Qdia1ejLm6WM5NOIOd7sbQ==",
3425
+ "version": "1.5.133",
3426
+ "integrity": "sha512-mrR+g6Y1at0GKDlPlMMwLAkI6c47q3d7U/vKS3rGTa3V4xStu18oT4UCPg5ErcAhUqk7swSjXSPUGstOYd2qBw==",
3419
3427
  "dev": true,
3420
3428
  "license": "ISC"
3421
3429
  },
@@ -5957,8 +5965,8 @@
5957
5965
  }
5958
5966
  },
5959
5967
  "node_modules/nwsapi": {
5960
- "version": "2.2.19",
5961
- "integrity": "sha512-94bcyI3RsqiZufXjkr3ltkI86iEl+I7uiHVDtcq9wJUTwYQJ5odHDeSzkkrRzi80jJ8MaeZgqKjH1bAWAFw9bA==",
5968
+ "version": "2.2.20",
5969
+ "integrity": "sha512-/ieB+mDe4MrrKMT8z+mQL8klXydZWGR5Dowt4RAGKbJ3kIGEx3X4ljUo+6V73IXtUPWgfOlU5B9MlGxFO5T+cA==",
5962
5970
  "dev": true,
5963
5971
  "license": "MIT"
5964
5972
  },
@@ -6328,8 +6336,8 @@
6328
6336
  }
6329
6337
  },
6330
6338
  "node_modules/pirates": {
6331
- "version": "4.0.6",
6332
- "integrity": "sha512-saLsH7WeYYPiD25LDuLRRY/i+6HaPYr6G1OUlN39otzkSTxKnubR9RTxS3/Kk50s1g2JTgFwWQDQyplC5/SHZg==",
6339
+ "version": "4.0.7",
6340
+ "integrity": "sha512-TfySrs/5nm8fQJDcBDuUng3VOUKsd7S+zqvbOTiGXHfxX4wK31ard+hoNuvkicM/2YFzlpDgABOevKSsB4G/FA==",
6333
6341
  "dev": true,
6334
6342
  "license": "MIT",
6335
6343
  "engines": {
@@ -7585,8 +7593,8 @@
7585
7593
  }
7586
7594
  },
7587
7595
  "node_modules/undici-types": {
7588
- "version": "6.20.0",
7589
- "integrity": "sha512-Ny6QZ2Nju20vw1SRHe3d9jVu6gJ+4e3+MMpqu7pqE5HT6WsTSlce++GQmK5UXS8mzV8DSYHrQH+Xrf2jVcuKNg==",
7596
+ "version": "6.21.0",
7597
+ "integrity": "sha512-iwDZqg0QAGrg9Rav5H4n0M64c3mkR59cJ6wQp+7C4nI0gsmExaedaYLNO44eT4AtBBwjbTiGPMlt2Md0T9H9JQ==",
7590
7598
  "license": "MIT"
7591
7599
  },
7592
7600
  "node_modules/universalify": {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@wavemaker/angular-codegen",
3
- "version": "11.10.4-rc.6085",
3
+ "version": "11.10.5-1.6107",
4
4
  "description": "",
5
5
  "main": "index.js",
6
6
  "scripts": {
@@ -15,7 +15,7 @@
15
15
  ".npmrc"
16
16
  ],
17
17
  "dependencies": {
18
- "@wavemaker/angular-app": "11.10.4-rc.6085",
18
+ "@wavemaker/angular-app": "11.10.5-1.6107",
19
19
  "archiver": "^7.0.1",
20
20
  "cheerio": "1.0.0-rc.12",
21
21
  "decode-uri-component": "^0.2.0",
@@ -1 +1 @@
1
- const fs=require("fs"),path=require("path"),{spawnSync:spawnSync}=require("child_process"),codegenCLI=require("./codegen-cli"),{generateRandomHash:generateRandomHash}=require("./wm-utils"),argv=require("yargs").usage("Usage: $0 -s [wavemaker project path] -t [target location] [-c] [-g]").options({deploy_url:{alias:"d",type:"string"},generate_page:{type:"string"},source:{alias:"s",describe:"source project web-app path",type:"string"},target:{alias:"t",describe:"target directory",type:"string"},codegenPath:{describe:"Codegen installation path",type:"string"},pwa:{describe:"Toggle pwa capability",type:"boolean",default:!1},spa:{describe:"Toggle single page application behaviour",type:"boolean",default:!1}}).demandOption(["source","target"],"please provide source project and target directory paths").help().argv,execCommand=async e=>{try{const a=spawnSync(e,{stdio:"inherit",shell:!0});0===a.status?console.log(`Executed the command - ${e} - successfully!`):(console.error("Error during command - ",a.error||a.stderr),process.exit(1))}catch(e){throw console.error(`Synchronous error - ${e}`),e}},setAppRuntimeVersion=async e=>{const a=fs.readFileSync(path.resolve(`${e}/pom.xml`),"utf8");let r="",n=a.indexOf("<wavemaker.app.runtime.ui.version>"),t=a.indexOf("</wavemaker.app.runtime.ui.version>");n&&t&&(n+="<wavemaker.app.runtime.ui.version>".length,r=a.substr(n,t-n).trim()),global.appRuntimeVersion=r,console.log(`App RuntimeVersion : ${global.appRuntimeVersion}`)},invokeMaven=async e=>{let a=-1===global.appRuntimeVersion.indexOf("next")?"mvn clean process-classes":"mvn clean process-classes -Pwavemaker-internal";await execCommand(`cd ${e} && ${a}`)},init=async()=>{await setAppRuntimeVersion(argv.source),global.randomHash=generateRandomHash(),await invokeMaven(argv.source),argv.generate_page&&await codegenCLI.generatePage(argv.source,argv.target,argv.generate_page,argv.codegenPath,argv.csp),argv.generate_page||(argv.deploy_url=argv.deploy_url?`${argv.deploy_url}/ng-bundle/${global.randomHash}/`:`ng-bundle/${global.randomHash}/`,await codegenCLI.generateCodegenAngularApp(argv.source,argv.target,argv.deploy_url,argv.pwa,argv.codegenPath,argv.csp,argv.spa))};init();
1
+ const fs=require("fs"),path=require("path"),{spawnSync:spawnSync}=require("child_process"),codegenCLI=require("./codegen-cli"),{generateRandomHash:generateRandomHash}=require("./wm-utils"),argv=require("yargs").usage("Usage: $0 -s [wavemaker project path] -t [target location] [-c] [-g]").options({deploy_url:{alias:"d",type:"string"},generate_page:{type:"string"},source:{alias:"s",describe:"source project web-app path",type:"string"},target:{alias:"t",describe:"target directory",type:"string"},codegenPath:{describe:"Codegen installation path",type:"string"},pwa:{describe:"Toggle pwa capability",type:"boolean",default:!1},spa:{describe:"Toggle single page application behaviour",type:"boolean",default:!1}}).demandOption(["source","target"],"please provide source project and target directory paths").help().argv,execCommand=async e=>{try{const a=spawnSync(e,{stdio:"inherit",shell:!0});0===a.status?console.log(`Executed the command - ${e} - successfully!`):(console.error("Error during command - ",a.error||a.stderr),process.exit(1))}catch(e){throw console.error(`Synchronous error - ${e}`),e}},setAppRuntimeVersion=async e=>{const a=fs.readFileSync(path.resolve(`${e}/pom.xml`),"utf8");let r="",t=a.indexOf("<wavemaker.app.runtime.ui.version>"),n=a.indexOf("</wavemaker.app.runtime.ui.version>");t&&n&&(t+="<wavemaker.app.runtime.ui.version>".length,r=a.substr(t,n-t).trim()),global.appRuntimeVersion=r,console.log(`App RuntimeVersion : ${global.appRuntimeVersion}`)},invokeMaven=async e=>{},init=async()=>{await setAppRuntimeVersion(argv.source),global.randomHash=generateRandomHash(),argv.generate_page&&await codegenCLI.generatePage(argv.source,argv.target,argv.generate_page,argv.codegenPath,argv.csp),argv.generate_page||(argv.deploy_url=argv.deploy_url?`${argv.deploy_url}/ng-bundle/${global.randomHash}/`:`ng-bundle/${global.randomHash}/`,await codegenCLI.generateCodegenAngularApp(argv.source,argv.target,argv.deploy_url,argv.pwa,argv.codegenPath,argv.csp,argv.spa))};init();
@@ -1 +1 @@
1
- const codegen=require("./codegen"),fs=require("fs"),{downloadNPMPackage:downloadNPMPackage}=require("../download-packages"),{setCodegenPath:setCodegenPath,deleteResource:deleteResource,isMobileProject:isMobileProject,initExpressionParser:initExpressionParser,isPrismProject:isPrismProject}=require("./wm-utils"),{initTemplates:initTemplates}=require("./handlebar-helpers"),{getWmProjectProperties:getWmProjectProperties}=require("./project-meta"),path=require("path"),create=async(e,s,t,r)=>{await codegen.createAppSkeleton(e,s,t,r)};global.window={navigator:{userAgent:"Node.js",userAgentData:{platform:"Node.js"}}};const generate=async(e,s,t,r,i,n,a)=>{await codegen.generateSources(e,s,t,r,i,n,a)},generateCodegenAngularApp=async(e,s,t,r,i,n,a,o,c,l)=>{await generateOverrideCSS(c,c&&c.appSrc||e,l);const g=await getWmProjectProperties(e);if(a=!isMobileProject(g)&&a,setCodegenPath(i),initTemplates(),initExpressionParser(),a){let s=e;e&&"/"!=e.charAt(e.length-1)&&(s+="/"),s+="target/ui-build/intermediate-app",await codegen.generateIntermediateApp(e,s),e=s}await create(e,s,i,g),await generate(e,s,t,r,n,a,o)},accessFile=e=>{fs.access(e,fs.constants.F_OK,s=>{if(s){console.log(`${e} does not exist. Creating file...`);const s=JSON.stringify({});fs.writeFile(e,s,s=>{if(s)throw s;console.log(`${e} was created successfully.`)})}})},processJsonFiles=(e,s,t)=>{return fs.readdirSync(e).forEach(r=>{const i=path.join(e,r),n=fs.statSync(i);if(n.isDirectory())processJsonFiles(i,s,t);else if(n.isFile()&&".json"===path.extname(i)){const e=i.replace(t+"/","");s.push({sourceFile:e,destinationFile:e.replace("json","css")})}}),s},generateOverrideCSS=async(e,s,t)=>{const r=await getWmProjectProperties(s);if(isPrismProject(r)&&(e.generateOverrideCSS||"angular"===e.buildType)){const r=path.join(s+"/src/main/webapp/themes","overrides"),i=s+"/src/main/webapp/themes/app.override.css";if(accessFile(i),fs.existsSync(r)){console.log("CODEGEN ANGULAR APP: generating override css...");let n={scope:"@wavemaker",name:"style-dictionary",version:e.runtimeUIVersion,packageJsonFile:"",successMsg:"STYLE DICTIONARY SUCCESS",infoMsg:"STYLE DICTIONARY PACKAGE : ",skipPackageVersion:!0};n.baseDir=t;const a=downloadNPMPackage(n);await(async()=>{const e=await import(`${a}/node_modules/style-dictionary/lib/StyleDictionary.js`).then(e=>e.default);e.registerTransform({name:"calc",type:"value",transitive:!0,filter:function(e){return"string"==typeof e.value&&e.value.includes("calc")},transform:function(e){return`~"${e.value}"`}});let t=[];t=processJsonFiles(r,t,s),cssFileContent="",t.forEach(async({sourceFile:s,destinationFile:t})=>{try{const r=function(e,s){return{source:[e],platforms:{css:{transformGroup:"css",prefix:"--wm",transforms:["calc"],files:[{destination:s,format:"css/variables"}]}}}}(s,t),i=new e(r);if(await i.buildPlatform("css"),console.log("\nStyle dictionary build process completed!",t),t.endsWith(".css")&&fs.existsSync(t)){const e=fs.readFileSync(t,"utf-8"),s=/(:root\s*\{[^}]*\})/,r=t.split("/").pop().split(".");let i=e;if(3===r.length&&"light"!=r[1])i=e.replace(/:root/g,`:root[${r[0]}='${r[1]}']`),cssFileContent+=i;else{const t=cssFileContent.match(s);if(t){const r=e.match(s),i=t[1],n=r[1].replace(/:root\s*\{|\}/g,"").trim(),a=i.replace("}",`\n${n}\n}`);cssFileContent=cssFileContent.replace(i,a)}else cssFileContent+=i}fs.unlink(t,()=>{})}}catch(e){console.error(`\nStyle dictionary, Error while processing file ${s}:`,e)}await fs.writeFileSync(i,cssFileContent),console.log("CODEGEN ANGULAR APP: generating overrides success !")})})()}}},generatePage=async(e,s,t,r,i)=>{setCodegenPath(r),initTemplates(),initExpressionParser(),await codegen.generatePage(e,s,t,i)};module.exports={create:create,generateCodegenAngularApp:generateCodegenAngularApp,generatePage:generatePage,generateOverrideCSS:generateOverrideCSS};
1
+ const codegen=require("./codegen"),{setCodegenPath:setCodegenPath,deleteResource:deleteResource,isMobileProject:isMobileProject,initExpressionParser:initExpressionParser,isPrismProject:isPrismProject}=require("./wm-utils"),{initTemplates:initTemplates}=require("./handlebar-helpers"),{getWmProjectProperties:getWmProjectProperties}=require("./project-meta"),{generateOverrideCSS:generateOverrideCSS}=require("./gen-app-override-css"),create=async(e,t,r,a)=>{await codegen.createAppSkeleton(e,t,r,a)};global.window={navigator:{userAgent:"Node.js",userAgentData:{platform:"Node.js"}}};const generate=async(e,t,r,a,i,n,s)=>{await codegen.generateSources(e,t,r,a,i,n,s)},generateCodegenAngularApp=async(e,t,r,a,i,n,s,o,g,c)=>{await generateOverrideCSS(g,g&&g.appSrc||e,c);const p=await getWmProjectProperties(e);if(s=!isMobileProject(p)&&s,setCodegenPath(i),initTemplates(),initExpressionParser(),s){let t=e;e&&"/"!=e.charAt(e.length-1)&&(t+="/"),t+="target/ui-build/intermediate-app",await codegen.generateIntermediateApp(e,t),e=t}await create(e,t,i,p),await generate(e,t,r,a,n,s,o)},generatePage=async(e,t,r,a,i)=>{setCodegenPath(a),initTemplates(),initExpressionParser(),await codegen.generatePage(e,t,r,i)};module.exports={create:create,generateCodegenAngularApp:generateCodegenAngularApp,generatePage:generatePage};
@@ -0,0 +1 @@
1
+ const path=require("path"),fs=require("fs"),{downloadNPMPackage:downloadNPMPackage}=require("../download-packages"),{isPrismProject:isPrismProject,DESIGN_TOKENS_DIR_NAME:DESIGN_TOKENS_DIR_NAME,OVERRIDE_TOKENS_PATH:OVERRIDE_TOKENS_PATH,APP_OVERRIDE_CSS_PATH:APP_OVERRIDE_CSS_PATH}=require("./wm-utils"),{getWmProjectProperties:getWmProjectProperties}=require("./project-meta"),groupFilesByMode=e=>{const s={default:[]};return fs.readdirSync(e).forEach(o=>{const r=path.join(e,o),t=fs.statSync(r);if(t.isDirectory()){const e=groupFilesByMode(r);for(const o in e)s[o]||(s[o]=[]),s[o].push(...e[o])}else if(t.isFile()&&".json"===path.extname(r)){const e=o.match(/\.([^.]+)\.json$/);if(e){const o=e[1];s[o]||(s[o]=[]),s[o].push(r)}else s.default.push(r)}}),s},generateModeConfigs=(e,s,o)=>{const r=o&&o.name||"css/variables",t=[];for(const o in e){const n=e[o].map(e=>{return{destination:e.replace(s+"/","").replace(/\.json$/,".css"),options:{outputReferences:!0,selector:":root"},format:r,filter:function(s){var o,r=(o=s["@"]&&s["@"].filePath?s["@"].filePath:s.filePath)&&-1!==o.indexOf("overrides")||s.filePath&&-1!==s.filePath.indexOf("overrides"),t=o&&(e.includes(o)||e.includes(s.filePath));return r&&t}}});t.push({mode:o,files:n})}return t},accessFile=e=>{const s=path.dirname(e);fs.existsSync(s)||(fs.mkdirSync(s,{recursive:!0}),console.log(`Directory created: ${s}`)),fs.access(e,fs.constants.F_OK,s=>{if(s){console.log(`${e} does not exist. Creating file...`);const s=JSON.stringify({});fs.writeFile(e,s,s=>{if(s)throw s;console.log(`${e} was created successfully.`)})}})};async function setupSymlink(e,s){try{await fs.promises.mkdir(path.dirname(s),{recursive:!0});try{fs.existsSync(s)&&await fs.promises.unlink(s)}catch(e){console.error("Error removing existing symlink:",e)}const o="win32"===process.platform?"junction":"dir";await fs.promises.symlink(e,s,o),console.log("Symlink created successfully at:",s)}catch(e){console.error("Error creating symlink:",s,e)}}const getStyleDictionaryConfig=(e,s,o)=>{let r="";return{source:[r="default"===o?`src/main/webapp/${OVERRIDE_TOKENS_PATH}/**/!(*.*).json`:`src/main/webapp/${OVERRIDE_TOKENS_PATH}/**/*.${o}.json`],include:[path.join(s,"**","!(*.dark|*.light).json")],platforms:{css:{transformGroup:"css",prefix:"--wm",files:e}}}};async function removeSymlink(e){const s=path.resolve(e);try{fs.lstatSync(s).isSymbolicLink()?(await fs.promises.unlink(s),console.log("Symlink removed successfully:",s)):console.warn("Not a symlink, skipping unlink:",s)}catch(e){console.error("Error during symlink removal:",e)}}async function getCssVarCalcMixFormatter(e,s){try{const o=await import(`${e}/node_modules/style-dictionary/lib/utils/index.js`),{usesReferences:r,getReferences:t}=o,{cssVarCalcMixFormatter:n}=await import(`${s}/node_modules/@wavemaker/foundation-css/utils/style-dictionary-utils.js`);return n(r,t)}catch(e){return console.error("Failed to load CssVarCalcMixFormatter:",e),null}}function processCSSFiles(e,s){for(const{destination:o}of e)try{if(o.endsWith(".css")&&fs.existsSync(o)){const e=fs.readFileSync(o,"utf-8"),r=/(:root\s*\{[^}]*\})/,t=path.basename(o).split(".");let n=e;if(3===t.length&&"light"!==t[1]){const o=t[0],r=t[1];s+=(n=e.replace(/:root/g,`:root[${o}='${r}']`))+"\n"}else{const o=s.match(r),t=e.match(r);if(o&&t){const e=o[1],r=t[1].replace(/:root\s*\{|\}/g,"").trim(),n=e.replace("}",`\n${r}\n}`);s=s.replace(e,n)}else s+=n+"\n"}fs.unlink(o,()=>{})}}catch(e){console.error(`\nStyle dictionary, Error processing file ${o}:`,e)}return s}const generateOverrideCSS=async(e,s,o)=>{const r=await getWmProjectProperties(s);if(isPrismProject(r)&&(e.generateOverrideCSS||"angular"===e.buildType)){const r=path.join(s+"/src/main/webapp/",OVERRIDE_TOKENS_PATH),t=s+`/src/main/webapp/${APP_OVERRIDE_CSS_PATH}`;if(accessFile(t),fs.existsSync(r)){console.log("CODEGEN ANGULAR APP: generating override css...");let n={scope:"@wavemaker",name:"style-dictionary",version:e.runtimeUIVersion,packageJsonFile:"",successMsg:"STYLE DICTIONARY SUCCESS",infoMsg:"STYLE DICTIONARY PACKAGE : ",skipPackageVersion:!0};n.baseDir=o;const i=downloadNPMPackage(n);let a={scope:"@wavemaker",name:"foundation-css",version:e.runtimeUIVersion,packageJsonFile:"",successMsg:"Foundation-CSS SUCCESS",infoMsg:"Foundation-CSS PACKAGE : "};a.baseDir=o;const c=downloadNPMPackage(a);console.log("FOUNDATION_CSS_PATH",c),await(async()=>{const e=await import(`${i}/node_modules/style-dictionary/lib/StyleDictionary.js`).then(e=>e.default),o=path.join(c,"/node_modules/@wavemaker/foundation-css/tokens"),n=await getCssVarCalcMixFormatter(i,c);n&&e.registerFormat(n);const a=`src/main/webapp/${DESIGN_TOKENS_DIR_NAME}/temp-tokens`,l=groupFilesByMode(r),f=generateModeConfigs(l,s,n);let d="";try{console.log("\nSetting up foundation tokens symlink..."),await setupSymlink(o,a);for(const{mode:s,files:o}of f){console.log(`\nBuilding CSS for mode: ${s}...`);try{const r=getStyleDictionaryConfig(o,a,s);console.log(r,s);const n=new e(r);await n.buildPlatform("css"),console.log(`Style Dictionary build completed for mode: ${s}`),d=processCSSFiles(o,d),fs.writeFileSync(t,d),console.log(`CSS overrides generated successfully for mode: ${s}`)}catch(e){console.error(`Error during Style Dictionary build for mode: ${s}`,e)}}console.log("CODEGEN ANGULAR APP: generating overrides success !")}catch(e){console.error("Error setting up symlink or processing modes:",e)}finally{await removeSymlink(a)}})()}}};module.exports={generateOverrideCSS:generateOverrideCSS};
@@ -1 +1 @@
1
- const cheerio=require("cheerio"),{writeFile:writeFile,readFileSync:readFileSync,readDir:readDir,isMobileProject:isMobileProject,isPrismProject:isPrismProject}=require("./wm-utils"),markScriptsAsLazy=s=>{const e=["./node_modules/d3/dist/d3.min.js","./node_modules/@wavemaker/nvd3/build/nv.d3.min.js","./node_modules/fullcalendar/main.min.js","./node_modules/summernote/dist/summernote-lite.min.js",global._WM_PACKAGE_PATH+"/scripts/datatable/datatable.js","./node_modules/jquery-ui/ui/widgets/sortable.js","./node_modules/jquery-ui/ui/widgets/droppable.js","./node_modules/jquery-ui/ui/widgets/resizable.js","./node_modules/hammerjs/hammer.min.js","./node_modules/iscroll/build/iscroll.js"];if("string"==typeof s){let t=s.replace(/^(\.\/)/,"").replace(/\//g,"-").replace(/@/g,"");if(t=t.substring(0,t.lastIndexOf(".")),t+="-NOHASH",e.includes(s))return{input:s,inject:!1,bundleName:t}}return s},setBuildCustomizations=async s=>{const e=s.projects["angular-app"].architect.build,t=e.options.scripts;e.options.scripts=t.map(s=>markScriptsAsLazy(s))},addToScripts=async(s,e,t=[],i=[])=>{const n=`${e}/angular.json`;let o=readFileSync(n,!0);const r=o.projects["angular-app"].architect.build;let a=r.options.scripts;const l=`${e+"/src/app/extensions"}`,c=await readDir(l);c.length&&i.push("./src/app/extensions/"+c[0]),r.options.scripts=[...t,...a,...i],await writeFile(n,JSON.stringify(o,null,4))},updateAngularJSON=async(s,e,t,i,n,o,r,a,l,c)=>{const u=`${e}/angular.json`;let d=readFileSync(u,!0);const p=d.projects["angular-app"].architect.build;r&&r.trim().length>0&&(p.options.deployUrl=r),p.options.outputPath=p.options.outputPath+"/"+global.randomHash;let m=p.options.styles;if(isPrismProject(t)&&((m=m.filter(s=>"string"==typeof s?!(s.includes("src/assets/styles/css/wm-style.css")||s.includes("src/assets/styles/css/wm-responsive.css")):"object"!=typeof s||!s.input||!s.input.includes("src/assets/themes/material/style.css"))).push("./node_modules/@wavemaker/foundation-css/foundation/foundation.css"),m.push({input:"src/assets/themes/app.override.css",inject:!1,bundleName:"wm-styles"}),p.options.styles=m),isMobileProject(t)){const s=m.findIndex(s=>{let e="object"==typeof s;if(e){return(e?s.input:s).includes("themes")}return!1}),e=m[s].input;m[s].bundleName="wm-android-styles",m[s].input=m[s].input.replace(new RegExp("/[a-z]*/style.css$"),`/${i.activeTheme}/android/style.css`);const t=Object.assign({},m[s]);t.input=e.replace(new RegExp("/[a-z]*/style.css$"),`/${i.activeTheme}/ios/style.css`),t.bundleName="wm-ios-styles",m.push(t);const n=m.findIndex(s=>{let e="object"==typeof s;if(e){return"src/assets/app.css"===(e?s.input:s)}return!1});m[n].bundleName="wm-android-styles";const o=Object.assign({},m[n]);o.bundleName="wm-ios-styles",m.push(o)}m.forEach((s,e)=>{let t="object"==typeof s,n=t?s.input:s;!n.includes("themes")||n.includes("/android/")||n.includes("/ios/")||(t?m[e].input=n.replace(new RegExp("/[a-z]*/style.css$"),`/${i.activeTheme}/style.css`):m[e]=n.replace(new RegExp("/[a-z]*/style.css$"),`/${i.activeTheme}/style.css`))}),await setBuildCustomizations(d);const y=p.configurations.production;if(y.aot=!1!==a.aot,y.buildOptimizer=!1!==a.buildOptimizer,c){const s=p.options.assets;s.push("src/manifest.json"),s.push("src/wmsw-worker.js"),y.serviceWorker=!0,y.ngswConfigPath="ngsw-config.json",delete p.options.customWebpackConfig}await writeFile(u,JSON.stringify(d,null,4))};module.exports={updateAngularJSON:updateAngularJSON,addToScripts:addToScripts};
1
+ const cheerio=require("cheerio"),{writeFile:writeFile,readFileSync:readFileSync,readDir:readDir,isMobileProject:isMobileProject,isPrismProject:isPrismProject,APP_OVERRIDE_CSS_PATH:APP_OVERRIDE_CSS_PATH}=require("./wm-utils"),markScriptsAsLazy=s=>{const e=["./node_modules/d3/dist/d3.min.js","./node_modules/@wavemaker/nvd3/build/nv.d3.min.js","./node_modules/fullcalendar/main.min.js","./node_modules/summernote/dist/summernote-lite.min.js",global._WM_PACKAGE_PATH+"/scripts/datatable/datatable.js","./node_modules/jquery-ui/ui/widgets/sortable.js","./node_modules/jquery-ui/ui/widgets/droppable.js","./node_modules/jquery-ui/ui/widgets/resizable.js","./node_modules/hammerjs/hammer.min.js","./node_modules/iscroll/build/iscroll.js"];if("string"==typeof s){let t=s.replace(/^(\.\/)/,"").replace(/\//g,"-").replace(/@/g,"");if(t=t.substring(0,t.lastIndexOf(".")),t+="-NOHASH",e.includes(s))return{input:s,inject:!1,bundleName:t}}return s},setBuildCustomizations=async s=>{const e=s.projects["angular-app"].architect.build,t=e.options.scripts;e.options.scripts=t.map(s=>markScriptsAsLazy(s))},addToScripts=async(s,e,t=[],i=[])=>{const n=`${e}/angular.json`;let o=readFileSync(n,!0);const r=o.projects["angular-app"].architect.build;let a=r.options.scripts;const l=`${e+"/src/app/extensions"}`,c=await readDir(l);c.length&&i.push("./src/app/extensions/"+c[0]),r.options.scripts=[...t,...a,...i],await writeFile(n,JSON.stringify(o,null,4))},updateAngularJSON=async(s,e,t,i,n,o,r,a,l,c)=>{const u=`${e}/angular.json`;let d=readFileSync(u,!0);const p=d.projects["angular-app"].architect.build;r&&r.trim().length>0&&(p.options.deployUrl=r),p.options.outputPath=p.options.outputPath+"/"+global.randomHash;let m=p.options.styles;if(isPrismProject(t)&&((m=m.filter(s=>"string"==typeof s?!(s.includes("src/assets/styles/css/wm-style.css")||s.includes("src/assets/styles/css/wm-responsive.css")):"object"!=typeof s||!s.input||!s.input.includes("src/assets/themes/material/style.css"))).push("./node_modules/@wavemaker/foundation-css/foundation/foundation.css"),m.push({input:`src/assets/${APP_OVERRIDE_CSS_PATH}`,inject:!1,bundleName:"wm-styles"}),p.options.styles=m),isMobileProject(t)){const s=m.findIndex(s=>{let e="object"==typeof s;if(e){return(e?s.input:s).includes("themes")}return!1}),e=m[s].input;m[s].bundleName="wm-android-styles",m[s].input=m[s].input.replace(new RegExp("/[a-z]*/style.css$"),`/${i.activeTheme}/android/style.css`);const t=Object.assign({},m[s]);t.input=e.replace(new RegExp("/[a-z]*/style.css$"),`/${i.activeTheme}/ios/style.css`),t.bundleName="wm-ios-styles",m.push(t);const n=m.findIndex(s=>{let e="object"==typeof s;if(e){return"src/assets/app.css"===(e?s.input:s)}return!1});m[n].bundleName="wm-android-styles";const o=Object.assign({},m[n]);o.bundleName="wm-ios-styles",m.push(o)}m.forEach((s,e)=>{let t="object"==typeof s,n=t?s.input:s;!n.includes("themes")||n.includes("/android/")||n.includes("/ios/")||(t?m[e].input=n.replace(new RegExp("/[a-z]*/style.css$"),`/${i.activeTheme}/style.css`):m[e]=n.replace(new RegExp("/[a-z]*/style.css$"),`/${i.activeTheme}/style.css`))}),await setBuildCustomizations(d);const y=p.configurations.production;if(y.aot=!1!==a.aot,y.buildOptimizer=!1!==a.buildOptimizer,c){const s=p.options.assets;s.push("src/manifest.json"),s.push("src/wmsw-worker.js"),y.serviceWorker=!0,y.ngswConfigPath="ngsw-config.json",delete p.options.customWebpackConfig}await writeFile(u,JSON.stringify(d,null,4))};module.exports={updateAngularJSON:updateAngularJSON,addToScripts:addToScripts};
package/src/wm-utils.js CHANGED
@@ -1 +1 @@
1
- const util=require("util"),fs=require("fs"),rimraf=require("rimraf"),decodeUriComponent=require("decode-uri-component"),upperFirst=require("lodash/upperFirst"),tar=require("tar-fs"),prettier=require("prettier"),js_beautify=require("js-beautify"),html_beautify=require("js-beautify").html,path=require("path"),stat=util.promisify(fs.stat),createDir=util.promisify(fs.mkdir),createReadStream=util.promisify(fs.createReadStream),readFile=util.promisify(fs.readFile),writeFile=util.promisify(fs.writeFile),readDir=util.promisify(fs.readdir),rename=util.promisify(fs.rename),searchFileByName=(e,t,r)=>{if(!fs.existsSync(e))return;fs.readdirSync(e).forEach(i=>{const a=path.join(e,i);fs.lstatSync(a).isDirectory()?searchFileByName(a,t,r):t.test(a)&&r(a)})},deleteResource=async e=>stat(e).then(()=>new Promise((t,r)=>{rimraf(e,()=>t())}),()=>Promise.resolve()),getComponentName=e=>`${upperFirst(e)}Component`,getComponentModuleName=e=>`${upperFirst(e)}Module`,decodeURIComponent=e=>decodeUriComponent(e.replace(/\+/g," ")),createTar=(e,t)=>new Promise((r,i)=>{tar.pack(e).pipe(fs.createWriteStream(t)).on("finish",r)}),extractTar=(e,t)=>new Promise((r,i)=>{fs.createReadStream(e).pipe(tar.extract(t)).on("finish",r)}),getWebAppPath=e=>`${e}/src/main/webapp`,getLayoutsConfigPath=e=>`${getWebAppPath(e)}/layouts/layouts-config.json`,getLayoutsDirPath=e=>`${getWebAppPath(e)}/layouts`,getPagesDirPath=e=>`${getWebAppPath(e)}/pages`,getPagesConfigPath=e=>`${getWebAppPath(e)}/pages/pages-config.json`,getPrefabsDirPath=e=>`${getWebAppPath(e)}/WEB-INF/prefabs`,getPrefabConfigPath=(e,t)=>`${getPrefabsDirPath(e)}/${t}/webapp/config.json`,getPrefabPagesDirPath=(e,t)=>`${getPrefabsDirPath(e)}/${t}/webapp/pages`,getSecurityConfigPath=e=>`${e}/services/securityService/designtime/intercept-urls.json`,getRolesConfigPath=e=>`${e}/services/securityService/designtime/roles.json`,getAuthInfoFilePath=e=>`${e}/services/securityService/designtime/auth-info.json`,getAppJsFilePath=e=>`${getWebAppPath(e)}/app.js`,getAppVariablesFilePath=e=>`${getWebAppPath(e)}/app.variables.json`,getThemesConfigPropertiesFilePath=e=>`${getWebAppPath(e)}/themes/themes-config.json`,getWmProjectPropertiesFilePath=e=>`${e}/.wmproject.properties`,getIndexHtmlPath=e=>`${getWebAppPath(e)}/index.html`;let codegenPath="./node_modules/@wavemaker/angular-codegen";const setCodegenPath=e=>{e&&(codegenPath=e)},getCodegenPath=()=>codegenPath,generateRandomHash=()=>Array.from(Array(20),()=>Math.floor(36*Math.random()).toString(36)).join(""),formatContents=(e="",t)=>"javascript"===t?js_beautify(e,{}):prettier.format(e,{semi:!1,parser:"typescript",tabWidth:4}),formatMarkup=(e="")=>html_beautify(e),isMobileProject=e=>"MOBILE"===e.platformType,isPrefabProject=e=>"PREFAB"===e.type,isPrismProject=e=>"PRISM"===e.template,readFileSync=(e,t)=>{let r=fs.readFileSync(e);return t?JSON.parse(r):r};function copyFileSync(e,t){try{fs.copyFileSync(e,t)}catch(t){console.error(`Error copying ${e}: ${t.message}`)}}function copyPrefabFiles(e,t){const r=path.resolve(`${e}`);if(fs.existsSync(r)){const e=fs.readdirSync(r).filter(e=>fs.statSync(path.join(r,e)).isDirectory());t=path.resolve(`${t}`),e.forEach(e=>{const i=path.join(r,e),a=path.join(i,"prefab-servicedefs.json");fs.existsSync(a)&&copyFileSync(a,path.join(t+"/src","servicedefs",`${e}-prefab-servicedefs.json`));const s=path.join(i,"webapp"),o=path.join(t+"/resources",e);fs.existsSync(s)&&copyDirWithExclusionsSync(s,o,["resources"]);const n=path.join(s,"resources"),c=path.join(t+"/resources",e+"/resources");fs.existsSync(n)&&copyDirWithExclusionsSync(n,c)})}}const copyDirWithExclusionsSync=(e,t,r=[])=>{fs.existsSync(t)||fs.mkdirSync(t,{recursive:!0});let i=[];try{i=fs.readdirSync(e,{withFileTypes:!0})}catch(e){if("ENOENT"!==e.code)throw e}for(const a of i){const i=path.join(e,a.name),s=path.join(t,a.name);r.includes(a.name)||(a.isDirectory()?copyDirWithExclusionsSync(i,s,r):fs.copyFileSync(i,s))}},initExpressionParser=()=>{const e=require("../dependencies/expression-parser.cjs"),t=require("../dependencies/pipe-provider.cjs");e.setPipeProvider(new t.PipeProvider({},{get:()=>{}},{}))};module.exports={stat:stat,createDir:createDir,createReadStream:createReadStream,readFile:readFile,writeFile:writeFile,deleteResource:deleteResource,getComponentName:getComponentName,getComponentModuleName:getComponentModuleName,decodeURIComponent:decodeURIComponent,createTar:createTar,extractTar:extractTar,readDir:readDir,rename:rename,searchFileByName:searchFileByName,getWebAppPath:getWebAppPath,getLayoutsConfigPath:getLayoutsConfigPath,getLayoutsDirPath:getLayoutsDirPath,getPagesDirPath:getPagesDirPath,getPagesConfigPath:getPagesConfigPath,getPrefabsDirPath:getPrefabsDirPath,getPrefabConfigPath:getPrefabConfigPath,getPrefabPagesDirPath:getPrefabPagesDirPath,getSecurityConfigPath:getSecurityConfigPath,getRolesConfigPath:getRolesConfigPath,getAuthInfoFilePath:getAuthInfoFilePath,getAppJsFilePath:getAppJsFilePath,getAppVariablesFilePath:getAppVariablesFilePath,getWmProjectPropertiesFilePath:getWmProjectPropertiesFilePath,getThemesConfigPropertiesFilePath:getThemesConfigPropertiesFilePath,getIndexHtmlPath:getIndexHtmlPath,formatContents:formatContents,formatMarkup:formatMarkup,isMobileProject:isMobileProject,isPrefabProject:isPrefabProject,isPrismProject:isPrismProject,readFileSync:readFileSync,getCodegenPath:getCodegenPath,setCodegenPath:setCodegenPath,initExpressionParser:initExpressionParser,copyFileSync:copyFileSync,copyPrefabFiles:copyPrefabFiles,generateRandomHash:generateRandomHash,copyDirWithExclusionsSync:copyDirWithExclusionsSync};
1
+ const util=require("util"),fs=require("fs"),rimraf=require("rimraf"),decodeUriComponent=require("decode-uri-component"),upperFirst=require("lodash/upperFirst"),tar=require("tar-fs"),prettier=require("prettier"),js_beautify=require("js-beautify"),html_beautify=require("js-beautify").html,path=require("path"),stat=util.promisify(fs.stat),createDir=util.promisify(fs.mkdir),createReadStream=util.promisify(fs.createReadStream),readFile=util.promisify(fs.readFile),writeFile=util.promisify(fs.writeFile),readDir=util.promisify(fs.readdir),rename=util.promisify(fs.rename),searchFileByName=(e,t,r)=>{if(!fs.existsSync(e))return;fs.readdirSync(e).forEach(i=>{const a=path.join(e,i);fs.lstatSync(a).isDirectory()?searchFileByName(a,t,r):t.test(a)&&r(a)})},deleteResource=async e=>stat(e).then(()=>new Promise((t,r)=>{rimraf(e,()=>t())}),()=>Promise.resolve()),getComponentName=e=>`${upperFirst(e)}Component`,getComponentModuleName=e=>`${upperFirst(e)}Module`,decodeURIComponent=e=>decodeUriComponent(e.replace(/\+/g," ")),createTar=(e,t)=>new Promise((r,i)=>{tar.pack(e).pipe(fs.createWriteStream(t)).on("finish",r)}),extractTar=(e,t)=>new Promise((r,i)=>{fs.createReadStream(e).pipe(tar.extract(t)).on("finish",r)}),getWebAppPath=e=>`${e}/src/main/webapp`,getLayoutsConfigPath=e=>`${getWebAppPath(e)}/layouts/layouts-config.json`,getLayoutsDirPath=e=>`${getWebAppPath(e)}/layouts`,getPagesDirPath=e=>`${getWebAppPath(e)}/pages`,getPagesConfigPath=e=>`${getWebAppPath(e)}/pages/pages-config.json`,getPrefabsDirPath=e=>`${getWebAppPath(e)}/WEB-INF/prefabs`,getPrefabConfigPath=(e,t)=>`${getPrefabsDirPath(e)}/${t}/webapp/config.json`,getPrefabPagesDirPath=(e,t)=>`${getPrefabsDirPath(e)}/${t}/webapp/pages`,getSecurityConfigPath=e=>`${e}/services/securityService/designtime/intercept-urls.json`,getRolesConfigPath=e=>`${e}/services/securityService/designtime/roles.json`,getAuthInfoFilePath=e=>`${e}/services/securityService/designtime/auth-info.json`,getAppJsFilePath=e=>`${getWebAppPath(e)}/app.js`,getAppVariablesFilePath=e=>`${getWebAppPath(e)}/app.variables.json`,getThemesConfigPropertiesFilePath=e=>`${getWebAppPath(e)}/themes/themes-config.json`,getWmProjectPropertiesFilePath=e=>`${e}/.wmproject.properties`,getIndexHtmlPath=e=>`${getWebAppPath(e)}/index.html`;let codegenPath="./node_modules/@wavemaker/angular-codegen";const setCodegenPath=e=>{e&&(codegenPath=e)},getCodegenPath=()=>codegenPath,generateRandomHash=()=>Array.from(Array(20),()=>Math.floor(36*Math.random()).toString(36)).join(""),formatContents=(e="",t)=>"javascript"===t?js_beautify(e,{}):prettier.format(e,{semi:!1,parser:"typescript",tabWidth:4}),formatMarkup=(e="")=>html_beautify(e),isMobileProject=e=>"MOBILE"===e.platformType,isPrefabProject=e=>"PREFAB"===e.type,isPrismProject=e=>"PRISM"===e.template,readFileSync=(e,t)=>{let r=fs.readFileSync(e);return t?JSON.parse(r):r};function copyFileSync(e,t){try{fs.copyFileSync(e,t)}catch(t){console.error(`Error copying ${e}: ${t.message}`)}}function copyPrefabFiles(e,t){const r=path.resolve(`${e}`);if(fs.existsSync(r)){const e=fs.readdirSync(r).filter(e=>fs.statSync(path.join(r,e)).isDirectory());t=path.resolve(`${t}`),e.forEach(e=>{const i=path.join(r,e),a=path.join(i,"prefab-servicedefs.json");fs.existsSync(a)&&copyFileSync(a,path.join(t+"/src","servicedefs",`${e}-prefab-servicedefs.json`));const s=path.join(i,"webapp"),o=path.join(t+"/resources",e);fs.existsSync(s)&&copyDirWithExclusionsSync(s,o,["resources"]);const n=path.join(s,"resources"),c=path.join(t+"/resources",e+"/resources");fs.existsSync(n)&&copyDirWithExclusionsSync(n,c)})}}const copyDirWithExclusionsSync=(e,t,r=[])=>{fs.existsSync(t)||fs.mkdirSync(t,{recursive:!0});let i=[];try{i=fs.readdirSync(e,{withFileTypes:!0})}catch(e){if("ENOENT"!==e.code)throw e}for(const a of i){const i=path.join(e,a.name),s=path.join(t,a.name);r.includes(a.name)||(a.isDirectory()?copyDirWithExclusionsSync(i,s,r):fs.copyFileSync(i,s))}},initExpressionParser=()=>{const e=require("../dependencies/expression-parser.cjs"),t=require("../dependencies/pipe-provider.cjs");e.setPipeProvider(new t.PipeProvider({},{get:()=>{}},{}))},DESIGN_TOKENS_DIR_NAME="themes",APP_OVERRIDE_CSS_PATH="themes/app.override.css",OVERRIDE_TOKENS_PATH="themes/overrides";module.exports={stat:stat,createDir:createDir,createReadStream:createReadStream,readFile:readFile,writeFile:writeFile,deleteResource:deleteResource,getComponentName:getComponentName,getComponentModuleName:getComponentModuleName,decodeURIComponent:decodeURIComponent,createTar:createTar,extractTar:extractTar,readDir:readDir,rename:rename,searchFileByName:searchFileByName,getWebAppPath:getWebAppPath,getLayoutsConfigPath:getLayoutsConfigPath,getLayoutsDirPath:getLayoutsDirPath,getPagesDirPath:getPagesDirPath,getPagesConfigPath:getPagesConfigPath,getPrefabsDirPath:getPrefabsDirPath,getPrefabConfigPath:getPrefabConfigPath,getPrefabPagesDirPath:getPrefabPagesDirPath,getSecurityConfigPath:getSecurityConfigPath,getRolesConfigPath:getRolesConfigPath,getAuthInfoFilePath:getAuthInfoFilePath,getAppJsFilePath:getAppJsFilePath,getAppVariablesFilePath:getAppVariablesFilePath,getWmProjectPropertiesFilePath:getWmProjectPropertiesFilePath,getThemesConfigPropertiesFilePath:getThemesConfigPropertiesFilePath,getIndexHtmlPath:getIndexHtmlPath,formatContents:formatContents,formatMarkup:formatMarkup,isMobileProject:isMobileProject,isPrefabProject:isPrefabProject,isPrismProject:isPrismProject,readFileSync:readFileSync,getCodegenPath:getCodegenPath,setCodegenPath:setCodegenPath,initExpressionParser:initExpressionParser,copyFileSync:copyFileSync,copyPrefabFiles:copyPrefabFiles,generateRandomHash:generateRandomHash,copyDirWithExclusionsSync:copyDirWithExclusionsSync,DESIGN_TOKENS_DIR_NAME:"themes",APP_OVERRIDE_CSS_PATH:APP_OVERRIDE_CSS_PATH,OVERRIDE_TOKENS_PATH:"themes/overrides"};