ultimate-jekyll-manager 1.1.4 → 1.1.6
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/CHANGELOG.md
CHANGED
|
@@ -14,6 +14,20 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/).
|
|
|
14
14
|
- `Fixed` for any bug fixes.
|
|
15
15
|
- `Security` in case of vulnerabilities.
|
|
16
16
|
|
|
17
|
+
---
|
|
18
|
+
## [1.1.6] - 2026-04-09
|
|
19
|
+
### Changed
|
|
20
|
+
- Add `hover-flex` prebuilt animation class to pricing page billing cycle toggle (Monthly/Annually) for subtle scale-up on hover
|
|
21
|
+
- Update README and TODO docs to use `npx mgr` instead of `npx uj`
|
|
22
|
+
- Fix `[Billing] Cancel complete` log to read product ID from current account instead of undefined variable
|
|
23
|
+
|
|
24
|
+
---
|
|
25
|
+
## [1.1.5] - 2026-04-09
|
|
26
|
+
### Changed
|
|
27
|
+
- Move pricing and feature limit values from layout frontmatter to default `_config.yml` under `web_manager.payment.products`, making the pricing page fully config-driven
|
|
28
|
+
- Add default `payment.products` array with 4 example plans (basic, plus, pro, max) including limits, prices, and trial config
|
|
29
|
+
- Handle boolean `true` config limits in feature value display (renders feature name only, check icon in comparison table)
|
|
30
|
+
|
|
17
31
|
---
|
|
18
32
|
## [1.1.4] - 2026-04-09
|
|
19
33
|
### Changed
|
package/README.md
CHANGED
|
@@ -81,13 +81,13 @@ Here are some examples:
|
|
|
81
81
|
### Run the `audit` task:
|
|
82
82
|
```bash
|
|
83
83
|
# Run the audit task
|
|
84
|
-
npx
|
|
84
|
+
npx mgr audit
|
|
85
85
|
|
|
86
86
|
# Run with a Lighthouse URL (defaults to "/" if not provided)
|
|
87
|
-
npx
|
|
87
|
+
npx mgr audit -- --lighthouseUrl="/contact"
|
|
88
88
|
|
|
89
89
|
# Add autoExit to continue developing and testing AFTER the audit
|
|
90
|
-
npx
|
|
90
|
+
npx mgr audit -- --lighthouseUrl="/contact" --autoExit=false
|
|
91
91
|
```
|
|
92
92
|
|
|
93
93
|
### Run the `translation` task:
|
|
@@ -96,14 +96,14 @@ npx uj audit -- --lighthouseUrl="/contact" --autoExit=false
|
|
|
96
96
|
GH_TOKEN=XXX \
|
|
97
97
|
GITHUB_REPOSITORY=XXX \
|
|
98
98
|
UJ_TRANSLATION_CACHE=true \
|
|
99
|
-
npx
|
|
99
|
+
npx mgr translation
|
|
100
100
|
|
|
101
101
|
# Test with only 1 file
|
|
102
102
|
UJ_TRANSLATION_ONLY="index.html" \
|
|
103
103
|
GH_TOKEN=XXX \
|
|
104
104
|
GITHUB_REPOSITORY=XXX \
|
|
105
105
|
UJ_TRANSLATION_CACHE=true \
|
|
106
|
-
npx
|
|
106
|
+
npx mgr translation
|
|
107
107
|
```
|
|
108
108
|
|
|
109
109
|
### Run the `imagemin` task:
|
|
@@ -113,10 +113,10 @@ Test image optimization with GitHub cache in development mode:
|
|
|
113
113
|
GH_TOKEN=XXX \
|
|
114
114
|
GITHUB_REPOSITORY=XXX \
|
|
115
115
|
UJ_IMAGEMIN_CACHE=true \
|
|
116
|
-
npx
|
|
116
|
+
npx mgr imagemin
|
|
117
117
|
|
|
118
118
|
# Or run locally without cache
|
|
119
|
-
npx
|
|
119
|
+
npx mgr imagemin
|
|
120
120
|
```
|
|
121
121
|
The imagemin task will:
|
|
122
122
|
- Process images from `src/assets/images/**/*.{jpg,jpeg,png}`
|
|
@@ -136,7 +136,7 @@ npm run prepare:watch
|
|
|
136
136
|
### Run the `blogify` task:
|
|
137
137
|
Create 12 test blog posts in the `_posts` directory with the `blogify` task. This is useful for testing and development purposes.
|
|
138
138
|
```bash
|
|
139
|
-
npx
|
|
139
|
+
npx mgr blogify
|
|
140
140
|
```
|
|
141
141
|
|
|
142
142
|
## Page Frontmatter
|
package/TODO.md
CHANGED
|
@@ -146,7 +146,7 @@ QUESTIONS
|
|
|
146
146
|
|
|
147
147
|
- easy system for a main css, js, etc bundle BUT user can make page specific bundles
|
|
148
148
|
- uncompiled should move everything inside it to css/images/js/vendor
|
|
149
|
-
- make an update fn that will update UJ eith er in `npx
|
|
149
|
+
- make an update fn that will update UJ eith er in `npx mgr setup` or a separate process
|
|
150
150
|
|
|
151
151
|
- we shoudl be able to MERGE site settings
|
|
152
152
|
- so site is default, then merge layount, then merge page (each OVERWRITING the previous one)
|
|
@@ -366,7 +366,7 @@ MAYBE
|
|
|
366
366
|
# - name: Run node build
|
|
367
367
|
# # run: npm run build -- --buildLocation='server'
|
|
368
368
|
# run: |
|
|
369
|
-
# UJ_BUILD_MODE=true UJ_IS_SERVER=true node node_modules/ultimate-jekyll-manager/ensure-production-build.js && npx
|
|
369
|
+
# UJ_BUILD_MODE=true UJ_IS_SERVER=true node node_modules/ultimate-jekyll-manager/ensure-production-build.js && npx mgr setup && npm run build
|
|
370
370
|
# - name: Create build.json
|
|
371
371
|
# run: |
|
|
372
372
|
# export TZ=UTC date
|
|
@@ -401,7 +401,7 @@ MAYBE
|
|
|
401
401
|
# with:
|
|
402
402
|
# name: github-pages
|
|
403
403
|
|
|
404
|
-
"deploy": "UJ_BUILD_MODE=true UJ_IS_SERVER=true npx
|
|
404
|
+
"deploy": "UJ_BUILD_MODE=true UJ_IS_SERVER=true npx mgr setup && npm run build"
|
|
405
405
|
|
|
406
406
|
|
|
407
407
|
tempalte names
|
|
@@ -257,7 +257,7 @@ function setupCancellationForm() {
|
|
|
257
257
|
throw new Error(response.message || 'Failed to cancel subscription. Please try again.');
|
|
258
258
|
}
|
|
259
259
|
|
|
260
|
-
console.log('[Billing] Cancel complete:', { isTrialCancel, productId });
|
|
260
|
+
console.log('[Billing] Cancel complete:', { isTrialCancel, productId: currentAccount?.subscription?.product?.id });
|
|
261
261
|
|
|
262
262
|
if (isTrialCancel) {
|
|
263
263
|
cancelFormManager.showSuccess('Your trial has been cancelled. You\'ve been moved to the free plan. You can subscribe again anytime.');
|
|
@@ -33,50 +33,37 @@ pricing:
|
|
|
33
33
|
name: "Basic"
|
|
34
34
|
tagline: "best for getting started"
|
|
35
35
|
url: "/dashboard" # URL to get started
|
|
36
|
-
pricing:
|
|
37
|
-
monthly: 0
|
|
38
|
-
annually: 0
|
|
39
36
|
features:
|
|
40
|
-
# Common features
|
|
37
|
+
# Common features (values resolve from _config.yml payment.products.limits)
|
|
41
38
|
- id: "credits"
|
|
42
39
|
name: "Credits"
|
|
43
|
-
value: 10
|
|
44
40
|
icon: "sparkles"
|
|
45
41
|
- id: "exports"
|
|
46
42
|
name: "Exports"
|
|
47
|
-
value: "Watermarked"
|
|
48
43
|
icon: "download"
|
|
49
44
|
# Additional features
|
|
50
45
|
- id: "storage"
|
|
51
46
|
name: "Logo Storage"
|
|
52
|
-
value: "7 days"
|
|
53
47
|
icon: "clock"
|
|
54
48
|
|
|
55
49
|
- id: "plus"
|
|
56
50
|
name: "Plus"
|
|
57
51
|
tagline: "best for individuals"
|
|
58
52
|
url: null
|
|
59
|
-
pricing:
|
|
60
|
-
monthly: 28
|
|
61
|
-
annually: 276 # Total annual price (~20% off monthly)
|
|
62
53
|
features:
|
|
63
54
|
# Common features
|
|
64
55
|
- id: "credits"
|
|
65
56
|
name: "Credits"
|
|
66
|
-
value: 100
|
|
67
57
|
icon: "sparkles"
|
|
68
58
|
- id: "exports"
|
|
69
59
|
name: "Exports"
|
|
70
|
-
value: "Unlimited"
|
|
71
60
|
icon: "download"
|
|
72
61
|
# Additional features
|
|
73
62
|
- id: "api_access"
|
|
74
63
|
name: "API Access"
|
|
75
|
-
value: "Full"
|
|
76
64
|
icon: "code"
|
|
77
65
|
- id: "priority_support"
|
|
78
66
|
name: "Priority Support"
|
|
79
|
-
value: "24/7"
|
|
80
67
|
icon: "headset"
|
|
81
68
|
|
|
82
69
|
- id: "pro"
|
|
@@ -84,18 +71,13 @@ pricing:
|
|
|
84
71
|
tagline: "best for small businesses"
|
|
85
72
|
url: null
|
|
86
73
|
popular: true
|
|
87
|
-
pricing:
|
|
88
|
-
monthly: 50
|
|
89
|
-
annually: 504 # Total annual price (~16% off monthly)
|
|
90
74
|
features:
|
|
91
75
|
# Common features
|
|
92
76
|
- id: "credits"
|
|
93
77
|
name: "Credits"
|
|
94
|
-
value: 200
|
|
95
78
|
icon: "sparkles"
|
|
96
79
|
- id: "exports"
|
|
97
80
|
name: "Exports"
|
|
98
|
-
value: "Unlimited"
|
|
99
81
|
icon: "download"
|
|
100
82
|
# Additional features
|
|
101
83
|
|
|
@@ -103,27 +85,20 @@ pricing:
|
|
|
103
85
|
name: "Max"
|
|
104
86
|
tagline: "best for growing businesses"
|
|
105
87
|
url: null
|
|
106
|
-
pricing:
|
|
107
|
-
monthly: 100
|
|
108
|
-
annually: 960 # Total annual price (20% off monthly)
|
|
109
88
|
features:
|
|
110
89
|
# Common features
|
|
111
90
|
- id: "credits"
|
|
112
91
|
name: "Credits"
|
|
113
|
-
value: 500
|
|
114
92
|
icon: "sparkles"
|
|
115
93
|
- id: "exports"
|
|
116
94
|
name: "Exports"
|
|
117
|
-
value: "Unlimited"
|
|
118
95
|
icon: "download"
|
|
119
96
|
# Additional features
|
|
120
97
|
- id: "team_collaboration"
|
|
121
98
|
name: "Team Collaboration"
|
|
122
|
-
value: "Included"
|
|
123
99
|
icon: "users"
|
|
124
100
|
- id: "custom_branding"
|
|
125
101
|
name: "Custom Branding"
|
|
126
|
-
value: "Available"
|
|
127
102
|
icon: "palette"
|
|
128
103
|
|
|
129
104
|
# Feature Comparison Section
|
|
@@ -265,10 +240,10 @@ faqs:
|
|
|
265
240
|
<div class="text-center mb-5">
|
|
266
241
|
<div class="btn-group" role="group" aria-label="Billing toggle" data-lazy="@class animation-popup">
|
|
267
242
|
<input type="radio" class="btn-check" name="billing" id="monthly" autocomplete="off" data-billing="monthly">
|
|
268
|
-
<label class="btn btn-outline-adaptive rounded-start-pill" for="monthly">Monthly</label>
|
|
243
|
+
<label class="btn btn-outline-adaptive rounded-start-pill hover-flex" for="monthly">Monthly</label>
|
|
269
244
|
|
|
270
245
|
<input type="radio" class="btn-check" name="billing" id="annually" autocomplete="off" checked data-billing="annually">
|
|
271
|
-
<label class="btn btn-primary rounded-end-pill position-relative" for="annually">
|
|
246
|
+
<label class="btn btn-primary rounded-end-pill position-relative hover-flex" for="annually">
|
|
272
247
|
Annually
|
|
273
248
|
<!-- <span class="position-absolute top-0 start-100 translate-middle badge rounded-pill bg-primary">
|
|
274
249
|
up to 20% off
|
|
@@ -530,7 +505,7 @@ faqs:
|
|
|
530
505
|
<span>
|
|
531
506
|
{% if _feature_value == "24/7" %}
|
|
532
507
|
{{ _feature_value }}
|
|
533
|
-
{% elsif _feature_value == "Included" or _feature_value == "Available" or _feature_value == "Full" %}
|
|
508
|
+
{% elsif _feature_value == true or _feature_value == "Included" or _feature_value == "Available" or _feature_value == "Full" %}
|
|
534
509
|
<!-- No prefix for these values -->
|
|
535
510
|
{% else %}
|
|
536
511
|
{{ _feature_value | uj_commaify }}
|
|
@@ -597,7 +572,7 @@ faqs:
|
|
|
597
572
|
<span>
|
|
598
573
|
{% if _feature_value == "24/7" %}
|
|
599
574
|
{{ _feature_value }}
|
|
600
|
-
{% elsif _feature_value == "Included" or _feature_value == "Available" or _feature_value == "Full" %}
|
|
575
|
+
{% elsif _feature_value == true or _feature_value == "Included" or _feature_value == "Available" or _feature_value == "Full" %}
|
|
601
576
|
<!-- No prefix for these values -->
|
|
602
577
|
{% else %}
|
|
603
578
|
{{ _feature_value | uj_commaify }}
|
|
@@ -144,7 +144,47 @@ web_manager:
|
|
|
144
144
|
site: null
|
|
145
145
|
coinbase:
|
|
146
146
|
enabled: false
|
|
147
|
-
products:
|
|
147
|
+
products:
|
|
148
|
+
- id: basic
|
|
149
|
+
name: Basic
|
|
150
|
+
type: subscription
|
|
151
|
+
limits:
|
|
152
|
+
credits: 10
|
|
153
|
+
exports: "Watermarked"
|
|
154
|
+
storage: "7 days"
|
|
155
|
+
- id: plus
|
|
156
|
+
name: Plus
|
|
157
|
+
type: subscription
|
|
158
|
+
limits:
|
|
159
|
+
credits: 100
|
|
160
|
+
exports: -1
|
|
161
|
+
api_access: "Full"
|
|
162
|
+
priority_support: "24/7"
|
|
163
|
+
trial:
|
|
164
|
+
days: 14
|
|
165
|
+
prices:
|
|
166
|
+
monthly: 28
|
|
167
|
+
annually: 276
|
|
168
|
+
- id: pro
|
|
169
|
+
name: Pro
|
|
170
|
+
type: subscription
|
|
171
|
+
limits:
|
|
172
|
+
credits: 200
|
|
173
|
+
exports: -1
|
|
174
|
+
prices:
|
|
175
|
+
monthly: 50
|
|
176
|
+
annually: 504
|
|
177
|
+
- id: max
|
|
178
|
+
name: Max
|
|
179
|
+
type: subscription
|
|
180
|
+
limits:
|
|
181
|
+
credits: 500
|
|
182
|
+
exports: -1
|
|
183
|
+
team_collaboration: true
|
|
184
|
+
custom_branding: true
|
|
185
|
+
prices:
|
|
186
|
+
monthly: 100
|
|
187
|
+
annually: 960
|
|
148
188
|
|
|
149
189
|
# OAuth2
|
|
150
190
|
oauth2:
|