ultimate-jekyll-manager 0.0.117 → 0.0.118
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/CLAUDE.md +330 -138
- package/README.md +108 -0
- package/TODO.md +1 -1
- package/dist/assets/js/core/auth.js +3 -7
- package/dist/assets/js/libs/prerendered-icons.js +27 -0
- package/dist/assets/js/pages/account/index.js +1 -1
- package/dist/assets/js/pages/account/sections/api-keys.js +2 -6
- package/dist/assets/js/pages/account/sections/connections.js +101 -59
- package/dist/assets/js/pages/account/sections/referrals.js +29 -29
- package/dist/assets/js/pages/account/sections/security.js +47 -70
- package/dist/assets/js/pages/payment/checkout/index.js +6 -6
- package/dist/assets/js/pages/payment/checkout/modules/processors-main.js +2 -2
- package/dist/assets/js/pages/payment/checkout/modules/session.js +4 -4
- package/dist/defaults/dist/_includes/core/body.html +23 -0
- package/dist/defaults/dist/_layouts/themes/classy/frontend/pages/account/index.html +41 -14
- package/dist/defaults/dist/pages/pricing.md +7 -0
- package/firebase-debug.log +126 -0
- package/package.json +5 -5
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
// Security section module
|
|
2
|
-
import
|
|
2
|
+
import authorizedFetch from '__main_assets__/js/libs/authorized-fetch.js';
|
|
3
3
|
import { FormManager } from '__main_assets__/js/libs/form-manager.js';
|
|
4
|
+
import { getPrerenderedIcon } from '__main_assets__/js/libs/prerendered-icons.js';
|
|
4
5
|
|
|
5
6
|
let webManager = null;
|
|
6
7
|
let firebaseAuth = null;
|
|
@@ -98,20 +99,17 @@ async function updateSigninMethods() {
|
|
|
98
99
|
// Update Google signin display
|
|
99
100
|
const $googleEmail = document.getElementById('google-email');
|
|
100
101
|
const $googleForm = document.getElementById('signin-method-google-form');
|
|
101
|
-
const $
|
|
102
|
-
const $
|
|
103
|
-
const $googleAction = $googleForm?.querySelector('input[name="action"]');
|
|
104
|
-
const $googleIcon = $googleBtn?.querySelector('.fa-icon');
|
|
102
|
+
const $connectButton = $googleForm?.querySelector('button[data-action="connect"]');
|
|
103
|
+
const $disconnectButton = $googleForm?.querySelector('button[data-action="disconnect"]');
|
|
105
104
|
|
|
106
105
|
console.log('[DEBUG] security.js - Google DOM elements:', {
|
|
107
106
|
$googleEmail: !!$googleEmail,
|
|
108
|
-
$
|
|
109
|
-
$
|
|
110
|
-
$
|
|
111
|
-
$googleIcon: !!$googleIcon
|
|
107
|
+
$googleForm: !!$googleForm,
|
|
108
|
+
$connectButton: !!$connectButton,
|
|
109
|
+
$disconnectButton: !!$disconnectButton
|
|
112
110
|
});
|
|
113
111
|
|
|
114
|
-
if ($googleEmail && $
|
|
112
|
+
if ($googleEmail && $connectButton && $disconnectButton) {
|
|
115
113
|
// Check if user has Google provider using firebaseUser for most up-to-date data
|
|
116
114
|
const googleProvider = firebaseUser.providerData?.find(provider => provider.providerId === 'google.com');
|
|
117
115
|
|
|
@@ -119,45 +117,19 @@ async function updateSigninMethods() {
|
|
|
119
117
|
console.log('[DEBUG] security.js - googleProvider found:', !!googleProvider);
|
|
120
118
|
|
|
121
119
|
if (googleProvider) {
|
|
122
|
-
console.log('[DEBUG] security.js -
|
|
123
|
-
console.log('[DEBUG] security.js - Button text before:', $googleBtnText?.textContent);
|
|
124
|
-
console.log('[DEBUG] security.js - Button classes before:', $googleBtn.className);
|
|
120
|
+
console.log('[DEBUG] security.js - Showing disconnect button');
|
|
125
121
|
|
|
126
122
|
$googleEmail.textContent = googleProvider.email || 'Connected';
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
$
|
|
130
|
-
$googleBtn.classList.add('btn-outline-danger');
|
|
131
|
-
|
|
132
|
-
// Update icon from link to unlink
|
|
133
|
-
if ($googleIcon) {
|
|
134
|
-
$googleIcon.classList.remove('fa-link');
|
|
135
|
-
$googleIcon.classList.add('fa-unlink');
|
|
136
|
-
}
|
|
137
|
-
|
|
138
|
-
console.log('[DEBUG] security.js - Button text after:', $googleBtnText?.textContent);
|
|
139
|
-
console.log('[DEBUG] security.js - Button classes after:', $googleBtn.className);
|
|
140
|
-
console.log('[DEBUG] security.js - Action value:', $googleAction?.value);
|
|
123
|
+
// Hide connect button, show disconnect button
|
|
124
|
+
$connectButton.classList.add('d-none');
|
|
125
|
+
$disconnectButton.classList.remove('d-none');
|
|
141
126
|
} else {
|
|
142
|
-
console.log('[DEBUG] security.js -
|
|
143
|
-
console.log('[DEBUG] security.js - Button text before:', $googleBtnText?.textContent);
|
|
144
|
-
console.log('[DEBUG] security.js - Button classes before:', $googleBtn.className);
|
|
127
|
+
console.log('[DEBUG] security.js - Showing connect button');
|
|
145
128
|
|
|
146
129
|
$googleEmail.textContent = 'Not connected';
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
$
|
|
150
|
-
$googleBtn.classList.add('btn-primary');
|
|
151
|
-
|
|
152
|
-
// Update icon from unlink to link
|
|
153
|
-
if ($googleIcon) {
|
|
154
|
-
$googleIcon.classList.remove('fa-unlink');
|
|
155
|
-
$googleIcon.classList.add('fa-link');
|
|
156
|
-
}
|
|
157
|
-
|
|
158
|
-
console.log('[DEBUG] security.js - Button text after:', $googleBtnText?.textContent);
|
|
159
|
-
console.log('[DEBUG] security.js - Button classes after:', $googleBtn.className);
|
|
160
|
-
console.log('[DEBUG] security.js - Action value:', $googleAction?.value);
|
|
130
|
+
// Show connect button, hide disconnect button
|
|
131
|
+
$connectButton.classList.remove('d-none');
|
|
132
|
+
$disconnectButton.classList.add('d-none');
|
|
161
133
|
}
|
|
162
134
|
}
|
|
163
135
|
}
|
|
@@ -214,16 +186,14 @@ async function updateActiveSessions(account) {
|
|
|
214
186
|
|
|
215
187
|
// Fetch other active sessions from server
|
|
216
188
|
try {
|
|
217
|
-
const token = await webManager.auth().getIdToken();
|
|
218
189
|
const serverApiURL = webManager.getApiUrl() + '/backend-manager';
|
|
219
190
|
|
|
220
|
-
const data = await
|
|
191
|
+
const data = await authorizedFetch(serverApiURL, {
|
|
221
192
|
method: 'POST',
|
|
222
193
|
timeout: 60000,
|
|
223
194
|
response: 'json',
|
|
224
195
|
tries: 2,
|
|
225
196
|
body: {
|
|
226
|
-
authenticationToken: token,
|
|
227
197
|
command: 'user:get-active-sessions',
|
|
228
198
|
payload: {
|
|
229
199
|
// id: 'app',
|
|
@@ -231,14 +201,12 @@ async function updateActiveSessions(account) {
|
|
|
231
201
|
},
|
|
232
202
|
});
|
|
233
203
|
|
|
234
|
-
console.log('Active sessions data from server:', data);
|
|
235
|
-
|
|
236
204
|
// Process sessions from server response
|
|
237
205
|
let sessionData = data || {};
|
|
238
206
|
|
|
239
|
-
// Add fake data if
|
|
207
|
+
// Add fake data if _dev_prefill=true is in query string
|
|
240
208
|
const urlParams = new URLSearchParams(window.location.search);
|
|
241
|
-
if (urlParams.get('
|
|
209
|
+
if (urlParams.get('_dev_prefill') === 'true') {
|
|
242
210
|
console.log('Adding fake session data for testing');
|
|
243
211
|
const fakeSessions = generateFakeSessions();
|
|
244
212
|
// Merge fake sessions with existing data (fake sessions don't override real ones)
|
|
@@ -308,23 +276,24 @@ async function updateActiveSessions(account) {
|
|
|
308
276
|
return;
|
|
309
277
|
}
|
|
310
278
|
|
|
311
|
-
const sessionHTML = sessions.map(session => {
|
|
279
|
+
const sessionHTML = sessions.map((session, index) => {
|
|
312
280
|
const deviceName = session.device || 'Unknown Device';
|
|
313
281
|
const browserName = session.browser || 'Unknown Browser';
|
|
314
282
|
const location = formatSessionLocation(session);
|
|
283
|
+
const isLast = index === sessions.length - 1;
|
|
315
284
|
|
|
316
285
|
return `
|
|
317
|
-
<div class="
|
|
286
|
+
<div class="px-0 py-3${isLast ? '' : ' border-bottom'}">
|
|
318
287
|
<div class="d-flex justify-content-between align-items-start">
|
|
319
|
-
<div class="d-flex align-items-
|
|
320
|
-
<div class="me-3
|
|
288
|
+
<div class="d-flex align-items-center">
|
|
289
|
+
<div class="d-flex align-items-center justify-content-center me-3 flex-shrink-0 text-muted">
|
|
321
290
|
${getDeviceIcon(session.platform || deviceName)}
|
|
322
291
|
</div>
|
|
323
292
|
<div>
|
|
324
|
-
<
|
|
325
|
-
<
|
|
326
|
-
${location ? `<
|
|
327
|
-
${session.ip ? `<
|
|
293
|
+
<strong>${deviceName}</strong>
|
|
294
|
+
<div class="text-muted small">${browserName}${session.mobile !== undefined ? ` • ${session.mobile ? 'Mobile' : 'Desktop'}` : ''}</div>
|
|
295
|
+
${location ? `<div class="text-muted small">${location}</div>` : ''}
|
|
296
|
+
${session.ip ? `<div class="text-muted small">IP: ${session.ip}</div>` : ''}
|
|
328
297
|
</div>
|
|
329
298
|
</div>
|
|
330
299
|
<div class="text-end">
|
|
@@ -385,12 +354,15 @@ function initializeSigninMethodForms() {
|
|
|
385
354
|
|
|
386
355
|
formManager.addEventListener('submit', async (event) => {
|
|
387
356
|
event.preventDefault();
|
|
388
|
-
const {
|
|
357
|
+
const { submitButton } = event.detail;
|
|
358
|
+
|
|
359
|
+
// Determine action from the clicked button's data-action attribute
|
|
360
|
+
const action = submitButton?.getAttribute('data-action');
|
|
389
361
|
|
|
390
362
|
try {
|
|
391
|
-
if (
|
|
363
|
+
if (action === 'disconnect') {
|
|
392
364
|
await disconnectGoogleProvider();
|
|
393
|
-
} else {
|
|
365
|
+
} else if (action === 'connect') {
|
|
394
366
|
await connectGoogleProvider();
|
|
395
367
|
}
|
|
396
368
|
|
|
@@ -632,20 +604,25 @@ function getPlatformName(platform) {
|
|
|
632
604
|
// Get device icon based on device type
|
|
633
605
|
function getDeviceIcon(device) {
|
|
634
606
|
const deviceLower = (device || '').toLowerCase();
|
|
607
|
+
let iconName = 'desktop'; // default
|
|
635
608
|
|
|
636
|
-
if (deviceLower.includes('iphone')
|
|
637
|
-
|
|
609
|
+
if (deviceLower.includes('iphone')
|
|
610
|
+
|| deviceLower.includes('ipad')
|
|
611
|
+
|| deviceLower.includes('ios')
|
|
612
|
+
|| deviceLower.includes('mac')) {
|
|
613
|
+
iconName = 'apple';
|
|
638
614
|
} else if (deviceLower.includes('android')) {
|
|
639
|
-
|
|
615
|
+
iconName = 'android';
|
|
640
616
|
} else if (deviceLower.includes('windows')) {
|
|
641
|
-
|
|
617
|
+
iconName = 'windows';
|
|
642
618
|
} else if (deviceLower.includes('linux')) {
|
|
643
|
-
|
|
619
|
+
iconName = 'linux';
|
|
644
620
|
} else if (deviceLower.includes('chrome')) {
|
|
645
|
-
|
|
646
|
-
} else {
|
|
647
|
-
return '<i class="fa-solid fa-desktop fa-lg"></i>';
|
|
621
|
+
iconName = 'chrome';
|
|
648
622
|
}
|
|
623
|
+
|
|
624
|
+
// Get the pre-rendered icon
|
|
625
|
+
return getPrerenderedIcon(iconName);
|
|
649
626
|
}
|
|
650
627
|
|
|
651
628
|
// Format location from session data
|
|
@@ -298,8 +298,8 @@ async function initializeCheckout() {
|
|
|
298
298
|
const urlParams = new URLSearchParams(window.location.search);
|
|
299
299
|
const productId = urlParams.get('product');
|
|
300
300
|
const frequency = urlParams.get('frequency') || 'annually';
|
|
301
|
-
const
|
|
302
|
-
const
|
|
301
|
+
const _dev_appId = urlParams.get('_dev_appId');
|
|
302
|
+
const _dev_trialEligible = urlParams.get('_dev_trialEligible');
|
|
303
303
|
|
|
304
304
|
// Product ID is required
|
|
305
305
|
if (!productId) {
|
|
@@ -307,7 +307,7 @@ async function initializeCheckout() {
|
|
|
307
307
|
}
|
|
308
308
|
|
|
309
309
|
// Check for testing parameters
|
|
310
|
-
const appId =
|
|
310
|
+
const appId = _dev_appId || webManager.config.brand.id;
|
|
311
311
|
|
|
312
312
|
// Warmup server (fire and forget)
|
|
313
313
|
warmupServer(webManager);
|
|
@@ -331,10 +331,10 @@ async function initializeCheckout() {
|
|
|
331
331
|
let trialEligibilityResult = trialEligible;
|
|
332
332
|
|
|
333
333
|
// Override trial eligibility for testing (only in development)
|
|
334
|
-
if (
|
|
335
|
-
if (
|
|
334
|
+
if (_dev_trialEligible && webManager.isDevelopment()) {
|
|
335
|
+
if (_dev_trialEligible === 'false') {
|
|
336
336
|
trialEligibilityResult = { status: 'fulfilled', value: false };
|
|
337
|
-
} else if (
|
|
337
|
+
} else if (_dev_trialEligible === 'true') {
|
|
338
338
|
trialEligibilityResult = { status: 'fulfilled', value: true };
|
|
339
339
|
}
|
|
340
340
|
}
|
|
@@ -41,9 +41,9 @@ export class PaymentProcessorManager {
|
|
|
41
41
|
|
|
42
42
|
// Determine processor based on payment method and available API keys
|
|
43
43
|
if (paymentMethod === 'card') {
|
|
44
|
-
// Check for
|
|
44
|
+
// Check for _dev_cardProcessor override in URL params (for testing)
|
|
45
45
|
const urlParams = new URLSearchParams(window.location.search);
|
|
46
|
-
const forcedProcessor = urlParams.get('
|
|
46
|
+
const forcedProcessor = urlParams.get('_dev_cardProcessor');
|
|
47
47
|
|
|
48
48
|
if (forcedProcessor && this.processors[forcedProcessor]) {
|
|
49
49
|
processorName = forcedProcessor;
|
|
@@ -30,7 +30,7 @@ export function buildPaymentIntentData(webManager) {
|
|
|
30
30
|
let processorName = state.paymentMethod;
|
|
31
31
|
if (state.paymentMethod === 'card') {
|
|
32
32
|
// Determine which processor will be used for card payments
|
|
33
|
-
const forcedProcessor = urlParams.get('
|
|
33
|
+
const forcedProcessor = urlParams.get('_dev_cardProcessor');
|
|
34
34
|
|
|
35
35
|
if (forcedProcessor) {
|
|
36
36
|
processorName = forcedProcessor;
|
|
@@ -46,7 +46,7 @@ export function buildPaymentIntentData(webManager) {
|
|
|
46
46
|
// Get UTM parameters from storage
|
|
47
47
|
const utmData = webManager.storage().get('marketing.utm');
|
|
48
48
|
let utm = {};
|
|
49
|
-
|
|
49
|
+
|
|
50
50
|
// Check if stored UTM data exists and is less than 30 days old
|
|
51
51
|
if (utmData && utmData.timestamp && utmData.tags) {
|
|
52
52
|
const daysDiff = (new Date() - new Date(utmData.timestamp)) / (1000 * 60 * 60 * 24);
|
|
@@ -56,8 +56,8 @@ export function buildPaymentIntentData(webManager) {
|
|
|
56
56
|
}
|
|
57
57
|
|
|
58
58
|
// Check for test app ID override
|
|
59
|
-
const
|
|
60
|
-
const appId =
|
|
59
|
+
const _dev_appId = urlParams.get('_dev_appId');
|
|
60
|
+
const appId = _dev_appId || webManager.config.brand.id;
|
|
61
61
|
|
|
62
62
|
// Build the payment intent data structure
|
|
63
63
|
const paymentIntentData = {
|
|
@@ -35,6 +35,29 @@
|
|
|
35
35
|
</div>
|
|
36
36
|
</div>
|
|
37
37
|
|
|
38
|
+
{%- comment -%}
|
|
39
|
+
Icon Pre-rendering System
|
|
40
|
+
Pages can specify which icons to pre-render in their frontmatter:
|
|
41
|
+
prerender_icons:
|
|
42
|
+
- name: "apple"
|
|
43
|
+
class: "fa-3xl"
|
|
44
|
+
- name: "android"
|
|
45
|
+
class: "fa-2xl"
|
|
46
|
+
{%- endcomment -%}
|
|
47
|
+
{%- assign icons = page.resolved.prerender_icons | default: empty -%}
|
|
48
|
+
{%- iftruthy icons -%}
|
|
49
|
+
<!-- Pre-rendered Icon Templates -->
|
|
50
|
+
<div id="prerendered-icons" class="d-none" aria-hidden="true">
|
|
51
|
+
{%- for icon in icons -%}
|
|
52
|
+
{%- assign icon_name = icon.name | default: icon -%}
|
|
53
|
+
{%- assign icon_class = icon.class | default: "fa-3xl" -%}
|
|
54
|
+
<div data-icon="{{ icon_name }}" data-class="{{ icon_class }}">
|
|
55
|
+
{% uj_icon icon_name, icon_class %}
|
|
56
|
+
</div>
|
|
57
|
+
{%- endfor -%}
|
|
58
|
+
</div>
|
|
59
|
+
{%- endiftruthy -%}
|
|
60
|
+
|
|
38
61
|
<!-- Script to prevent clicks on disabled elements during page load -->
|
|
39
62
|
<script type="text/javascript">
|
|
40
63
|
(function() {
|
|
@@ -13,6 +13,21 @@ web_manager:
|
|
|
13
13
|
config:
|
|
14
14
|
policy: "authenticated"
|
|
15
15
|
|
|
16
|
+
### ICON PRE-RENDERING ###
|
|
17
|
+
prerender_icons:
|
|
18
|
+
- name: "apple"
|
|
19
|
+
class: "fa-3xl"
|
|
20
|
+
- name: "android"
|
|
21
|
+
class: "fa-3xl"
|
|
22
|
+
- name: "windows"
|
|
23
|
+
class: "fa-3xl"
|
|
24
|
+
- name: "linux"
|
|
25
|
+
class: "fa-3xl"
|
|
26
|
+
- name: "chrome"
|
|
27
|
+
class: "fa-3xl"
|
|
28
|
+
- name: "desktop"
|
|
29
|
+
class: "fa-3xl"
|
|
30
|
+
|
|
16
31
|
### PAGE CONFIG ###
|
|
17
32
|
sections:
|
|
18
33
|
- id: "profile"
|
|
@@ -790,20 +805,24 @@ badges:
|
|
|
790
805
|
</div>
|
|
791
806
|
</div>
|
|
792
807
|
<div class="flex-shrink-0">
|
|
793
|
-
<form id="signin-method-{{ method.id }}-form" class="d-inline" novalidate>
|
|
808
|
+
<form id="signin-method-{{ method.id }}-form" class="d-grid d-sm-inline-block" novalidate>
|
|
794
809
|
<input type="hidden" name="method" value="{{ method.id }}">
|
|
795
810
|
{% if method.id == "password" %}
|
|
796
|
-
<
|
|
797
|
-
<button type="submit" class="btn btn-primary btn-sm w-100 w-sm-auto">
|
|
811
|
+
<button type="submit" class="btn btn-primary btn-sm" data-action="change">
|
|
798
812
|
{% uj_icon "key", "me-1" %}
|
|
799
813
|
<span class="button-text">Change</span>
|
|
800
814
|
</button>
|
|
801
815
|
{% else %}
|
|
802
|
-
|
|
803
|
-
<button type="submit" class="btn btn-primary btn-sm
|
|
816
|
+
<!-- Connect button -->
|
|
817
|
+
<button type="submit" class="btn btn-primary btn-sm" data-action="connect">
|
|
804
818
|
{% uj_icon "link", "me-1" %}
|
|
805
819
|
<span class="button-text">Connect</span>
|
|
806
820
|
</button>
|
|
821
|
+
<!-- Disconnect button (hidden by default) -->
|
|
822
|
+
<button type="submit" class="btn btn-sm btn-outline-danger d-none" data-action="disconnect">
|
|
823
|
+
{% uj_icon "unlink", "me-1" %}
|
|
824
|
+
<span class="button-text">Disconnect</span>
|
|
825
|
+
</button>
|
|
807
826
|
{% endif %}
|
|
808
827
|
</form>
|
|
809
828
|
</div>
|
|
@@ -828,6 +847,7 @@ badges:
|
|
|
828
847
|
<div class="card-body">
|
|
829
848
|
<h5 class="card-title">Active Sessions</h5>
|
|
830
849
|
<p class="card-text text-muted">Manage your active sessions across devices. Review and revoke access from unrecognized devices.</p>
|
|
850
|
+
|
|
831
851
|
<div id="active-sessions-list" class="list-group list-group-flush mb-3">
|
|
832
852
|
<!-- Sessions will be loaded here -->
|
|
833
853
|
<div class="text-center py-3">
|
|
@@ -884,15 +904,22 @@ badges:
|
|
|
884
904
|
</div>
|
|
885
905
|
</div>
|
|
886
906
|
<div class="text-start text-sm-end flex-shrink-0">
|
|
887
|
-
<
|
|
888
|
-
<
|
|
889
|
-
|
|
890
|
-
|
|
891
|
-
|
|
892
|
-
|
|
893
|
-
|
|
894
|
-
|
|
895
|
-
|
|
907
|
+
<div>
|
|
908
|
+
<form id="connection-form-{{ connection.id }}" class="d-grid d-sm-inline-block" novalidate>
|
|
909
|
+
<input type="hidden" name="provider" value="{{ connection.id }}">
|
|
910
|
+
<!-- Connect button -->
|
|
911
|
+
<button type="submit" class="btn btn-sm btn-primary" data-action="connect">
|
|
912
|
+
{% uj_icon "link", "fa-sm" %}
|
|
913
|
+
<span class="button-text">Connect</span>
|
|
914
|
+
</button>
|
|
915
|
+
<!-- Disconnect button (hidden by default) -->
|
|
916
|
+
<button type="submit" class="btn btn-sm btn-outline-danger d-none" data-action="disconnect">
|
|
917
|
+
{% uj_icon "unlink", "fa-sm" %}
|
|
918
|
+
<span class="button-text">Disconnect</span>
|
|
919
|
+
</button>
|
|
920
|
+
</form>
|
|
921
|
+
<small class="text-muted d-block mt-1" id="{{ connection.id }}-connection-status"></small>
|
|
922
|
+
</div>
|
|
896
923
|
</div>
|
|
897
924
|
</div>
|
|
898
925
|
</div>
|
package/firebase-debug.log
CHANGED
|
@@ -618,3 +618,129 @@
|
|
|
618
618
|
[debug] [2025-11-18T22:25:38.279Z] > authorizing via signed-in user (ian.wiedenman@gmail.com)
|
|
619
619
|
[debug] [2025-11-18T22:25:38.279Z] > command requires scopes: ["email","openid","https://www.googleapis.com/auth/cloudplatformprojects.readonly","https://www.googleapis.com/auth/firebase","https://www.googleapis.com/auth/cloud-platform"]
|
|
620
620
|
[debug] [2025-11-18T22:25:38.279Z] > authorizing via signed-in user (ian.wiedenman@gmail.com)
|
|
621
|
+
[debug] [2025-11-19T02:44:25.020Z] > command requires scopes: ["email","openid","https://www.googleapis.com/auth/cloudplatformprojects.readonly","https://www.googleapis.com/auth/firebase","https://www.googleapis.com/auth/cloud-platform"]
|
|
622
|
+
[debug] [2025-11-19T02:44:25.021Z] > command requires scopes: ["email","openid","https://www.googleapis.com/auth/cloudplatformprojects.readonly","https://www.googleapis.com/auth/firebase","https://www.googleapis.com/auth/cloud-platform"]
|
|
623
|
+
[debug] [2025-11-19T02:44:25.022Z] > authorizing via signed-in user (ian.wiedenman@gmail.com)
|
|
624
|
+
[debug] [2025-11-19T02:44:25.022Z] > command requires scopes: ["email","openid","https://www.googleapis.com/auth/cloudplatformprojects.readonly","https://www.googleapis.com/auth/firebase","https://www.googleapis.com/auth/cloud-platform"]
|
|
625
|
+
[debug] [2025-11-19T02:44:25.022Z] > authorizing via signed-in user (ian.wiedenman@gmail.com)
|
|
626
|
+
[debug] [2025-11-19T02:44:25.030Z] > command requires scopes: ["email","openid","https://www.googleapis.com/auth/cloudplatformprojects.readonly","https://www.googleapis.com/auth/firebase","https://www.googleapis.com/auth/cloud-platform"]
|
|
627
|
+
[debug] [2025-11-19T02:44:25.031Z] > authorizing via signed-in user (ian.wiedenman@gmail.com)
|
|
628
|
+
[debug] [2025-11-19T02:44:25.023Z] > authorizing via signed-in user (ian.wiedenman@gmail.com)
|
|
629
|
+
[debug] [2025-11-19T02:44:25.023Z] > command requires scopes: ["email","openid","https://www.googleapis.com/auth/cloudplatformprojects.readonly","https://www.googleapis.com/auth/firebase","https://www.googleapis.com/auth/cloud-platform"]
|
|
630
|
+
[debug] [2025-11-19T02:44:25.023Z] > authorizing via signed-in user (ian.wiedenman@gmail.com)
|
|
631
|
+
[debug] [2025-11-19T02:44:25.031Z] > command requires scopes: ["email","openid","https://www.googleapis.com/auth/cloudplatformprojects.readonly","https://www.googleapis.com/auth/firebase","https://www.googleapis.com/auth/cloud-platform"]
|
|
632
|
+
[debug] [2025-11-19T02:44:25.032Z] > authorizing via signed-in user (ian.wiedenman@gmail.com)
|
|
633
|
+
[debug] [2025-11-19T02:44:25.076Z] > command requires scopes: ["email","openid","https://www.googleapis.com/auth/cloudplatformprojects.readonly","https://www.googleapis.com/auth/firebase","https://www.googleapis.com/auth/cloud-platform"]
|
|
634
|
+
[debug] [2025-11-19T02:44:25.077Z] > command requires scopes: ["email","openid","https://www.googleapis.com/auth/cloudplatformprojects.readonly","https://www.googleapis.com/auth/firebase","https://www.googleapis.com/auth/cloud-platform"]
|
|
635
|
+
[debug] [2025-11-19T02:44:25.077Z] > authorizing via signed-in user (ian.wiedenman@gmail.com)
|
|
636
|
+
[debug] [2025-11-19T02:44:25.078Z] > command requires scopes: ["email","openid","https://www.googleapis.com/auth/cloudplatformprojects.readonly","https://www.googleapis.com/auth/firebase","https://www.googleapis.com/auth/cloud-platform"]
|
|
637
|
+
[debug] [2025-11-19T02:44:25.078Z] > authorizing via signed-in user (ian.wiedenman@gmail.com)
|
|
638
|
+
[debug] [2025-11-19T02:44:25.080Z] > command requires scopes: ["email","openid","https://www.googleapis.com/auth/cloudplatformprojects.readonly","https://www.googleapis.com/auth/firebase","https://www.googleapis.com/auth/cloud-platform"]
|
|
639
|
+
[debug] [2025-11-19T02:44:25.080Z] > authorizing via signed-in user (ian.wiedenman@gmail.com)
|
|
640
|
+
[debug] [2025-11-19T02:44:25.080Z] > command requires scopes: ["email","openid","https://www.googleapis.com/auth/cloudplatformprojects.readonly","https://www.googleapis.com/auth/firebase","https://www.googleapis.com/auth/cloud-platform"]
|
|
641
|
+
[debug] [2025-11-19T02:44:25.081Z] > authorizing via signed-in user (ian.wiedenman@gmail.com)
|
|
642
|
+
[debug] [2025-11-19T02:44:25.077Z] > authorizing via signed-in user (ian.wiedenman@gmail.com)
|
|
643
|
+
[debug] [2025-11-19T02:44:25.077Z] > command requires scopes: ["email","openid","https://www.googleapis.com/auth/cloudplatformprojects.readonly","https://www.googleapis.com/auth/firebase","https://www.googleapis.com/auth/cloud-platform"]
|
|
644
|
+
[debug] [2025-11-19T02:44:25.077Z] > authorizing via signed-in user (ian.wiedenman@gmail.com)
|
|
645
|
+
[debug] [2025-11-19T02:44:25.079Z] > command requires scopes: ["email","openid","https://www.googleapis.com/auth/cloudplatformprojects.readonly","https://www.googleapis.com/auth/firebase","https://www.googleapis.com/auth/cloud-platform"]
|
|
646
|
+
[debug] [2025-11-19T02:44:25.079Z] > authorizing via signed-in user (ian.wiedenman@gmail.com)
|
|
647
|
+
[debug] [2025-11-19T02:44:25.079Z] > command requires scopes: ["email","openid","https://www.googleapis.com/auth/cloudplatformprojects.readonly","https://www.googleapis.com/auth/firebase","https://www.googleapis.com/auth/cloud-platform"]
|
|
648
|
+
[debug] [2025-11-19T02:44:25.079Z] > authorizing via signed-in user (ian.wiedenman@gmail.com)
|
|
649
|
+
[debug] [2025-11-19T02:44:30.083Z] > command requires scopes: ["email","openid","https://www.googleapis.com/auth/cloudplatformprojects.readonly","https://www.googleapis.com/auth/firebase","https://www.googleapis.com/auth/cloud-platform"]
|
|
650
|
+
[debug] [2025-11-19T02:44:30.084Z] > command requires scopes: ["email","openid","https://www.googleapis.com/auth/cloudplatformprojects.readonly","https://www.googleapis.com/auth/firebase","https://www.googleapis.com/auth/cloud-platform"]
|
|
651
|
+
[debug] [2025-11-19T02:44:30.085Z] > authorizing via signed-in user (ian.wiedenman@gmail.com)
|
|
652
|
+
[debug] [2025-11-19T02:44:30.085Z] > command requires scopes: ["email","openid","https://www.googleapis.com/auth/cloudplatformprojects.readonly","https://www.googleapis.com/auth/firebase","https://www.googleapis.com/auth/cloud-platform"]
|
|
653
|
+
[debug] [2025-11-19T02:44:30.086Z] > authorizing via signed-in user (ian.wiedenman@gmail.com)
|
|
654
|
+
[debug] [2025-11-19T02:44:30.094Z] > command requires scopes: ["email","openid","https://www.googleapis.com/auth/cloudplatformprojects.readonly","https://www.googleapis.com/auth/firebase","https://www.googleapis.com/auth/cloud-platform"]
|
|
655
|
+
[debug] [2025-11-19T02:44:30.094Z] > authorizing via signed-in user (ian.wiedenman@gmail.com)
|
|
656
|
+
[debug] [2025-11-19T02:44:30.085Z] > authorizing via signed-in user (ian.wiedenman@gmail.com)
|
|
657
|
+
[debug] [2025-11-19T02:44:30.085Z] > command requires scopes: ["email","openid","https://www.googleapis.com/auth/cloudplatformprojects.readonly","https://www.googleapis.com/auth/firebase","https://www.googleapis.com/auth/cloud-platform"]
|
|
658
|
+
[debug] [2025-11-19T02:44:30.085Z] > authorizing via signed-in user (ian.wiedenman@gmail.com)
|
|
659
|
+
[debug] [2025-11-19T02:44:30.094Z] > command requires scopes: ["email","openid","https://www.googleapis.com/auth/cloudplatformprojects.readonly","https://www.googleapis.com/auth/firebase","https://www.googleapis.com/auth/cloud-platform"]
|
|
660
|
+
[debug] [2025-11-19T02:44:30.095Z] > authorizing via signed-in user (ian.wiedenman@gmail.com)
|
|
661
|
+
[debug] [2025-11-19T02:44:30.142Z] > command requires scopes: ["email","openid","https://www.googleapis.com/auth/cloudplatformprojects.readonly","https://www.googleapis.com/auth/firebase","https://www.googleapis.com/auth/cloud-platform"]
|
|
662
|
+
[debug] [2025-11-19T02:44:30.144Z] > command requires scopes: ["email","openid","https://www.googleapis.com/auth/cloudplatformprojects.readonly","https://www.googleapis.com/auth/firebase","https://www.googleapis.com/auth/cloud-platform"]
|
|
663
|
+
[debug] [2025-11-19T02:44:30.142Z] > authorizing via signed-in user (ian.wiedenman@gmail.com)
|
|
664
|
+
[debug] [2025-11-19T02:44:30.143Z] > command requires scopes: ["email","openid","https://www.googleapis.com/auth/cloudplatformprojects.readonly","https://www.googleapis.com/auth/firebase","https://www.googleapis.com/auth/cloud-platform"]
|
|
665
|
+
[debug] [2025-11-19T02:44:30.143Z] > authorizing via signed-in user (ian.wiedenman@gmail.com)
|
|
666
|
+
[debug] [2025-11-19T02:44:30.145Z] > command requires scopes: ["email","openid","https://www.googleapis.com/auth/cloudplatformprojects.readonly","https://www.googleapis.com/auth/firebase","https://www.googleapis.com/auth/cloud-platform"]
|
|
667
|
+
[debug] [2025-11-19T02:44:30.145Z] > authorizing via signed-in user (ian.wiedenman@gmail.com)
|
|
668
|
+
[debug] [2025-11-19T02:44:30.145Z] > command requires scopes: ["email","openid","https://www.googleapis.com/auth/cloudplatformprojects.readonly","https://www.googleapis.com/auth/firebase","https://www.googleapis.com/auth/cloud-platform"]
|
|
669
|
+
[debug] [2025-11-19T02:44:30.145Z] > authorizing via signed-in user (ian.wiedenman@gmail.com)
|
|
670
|
+
[debug] [2025-11-19T02:44:30.144Z] > authorizing via signed-in user (ian.wiedenman@gmail.com)
|
|
671
|
+
[debug] [2025-11-19T02:44:30.145Z] > command requires scopes: ["email","openid","https://www.googleapis.com/auth/cloudplatformprojects.readonly","https://www.googleapis.com/auth/firebase","https://www.googleapis.com/auth/cloud-platform"]
|
|
672
|
+
[debug] [2025-11-19T02:44:30.145Z] > authorizing via signed-in user (ian.wiedenman@gmail.com)
|
|
673
|
+
[debug] [2025-11-19T02:44:30.147Z] > command requires scopes: ["email","openid","https://www.googleapis.com/auth/cloudplatformprojects.readonly","https://www.googleapis.com/auth/firebase","https://www.googleapis.com/auth/cloud-platform"]
|
|
674
|
+
[debug] [2025-11-19T02:44:30.147Z] > authorizing via signed-in user (ian.wiedenman@gmail.com)
|
|
675
|
+
[debug] [2025-11-19T02:44:30.148Z] > command requires scopes: ["email","openid","https://www.googleapis.com/auth/cloudplatformprojects.readonly","https://www.googleapis.com/auth/firebase","https://www.googleapis.com/auth/cloud-platform"]
|
|
676
|
+
[debug] [2025-11-19T02:44:30.148Z] > authorizing via signed-in user (ian.wiedenman@gmail.com)
|
|
677
|
+
[debug] [2025-11-19T02:44:36.228Z] > command requires scopes: ["email","openid","https://www.googleapis.com/auth/cloudplatformprojects.readonly","https://www.googleapis.com/auth/firebase","https://www.googleapis.com/auth/cloud-platform"]
|
|
678
|
+
[debug] [2025-11-19T02:44:36.230Z] > authorizing via signed-in user (ian.wiedenman@gmail.com)
|
|
679
|
+
[debug] [2025-11-19T02:44:36.231Z] > command requires scopes: ["email","openid","https://www.googleapis.com/auth/cloudplatformprojects.readonly","https://www.googleapis.com/auth/firebase","https://www.googleapis.com/auth/cloud-platform"]
|
|
680
|
+
[debug] [2025-11-19T02:44:36.231Z] > authorizing via signed-in user (ian.wiedenman@gmail.com)
|
|
681
|
+
[debug] [2025-11-19T02:44:36.239Z] > command requires scopes: ["email","openid","https://www.googleapis.com/auth/cloudplatformprojects.readonly","https://www.googleapis.com/auth/firebase","https://www.googleapis.com/auth/cloud-platform"]
|
|
682
|
+
[debug] [2025-11-19T02:44:36.239Z] > authorizing via signed-in user (ian.wiedenman@gmail.com)
|
|
683
|
+
[debug] [2025-11-19T02:44:36.283Z] > command requires scopes: ["email","openid","https://www.googleapis.com/auth/cloudplatformprojects.readonly","https://www.googleapis.com/auth/firebase","https://www.googleapis.com/auth/cloud-platform"]
|
|
684
|
+
[debug] [2025-11-19T02:44:36.283Z] > authorizing via signed-in user (ian.wiedenman@gmail.com)
|
|
685
|
+
[debug] [2025-11-19T02:44:36.284Z] > command requires scopes: ["email","openid","https://www.googleapis.com/auth/cloudplatformprojects.readonly","https://www.googleapis.com/auth/firebase","https://www.googleapis.com/auth/cloud-platform"]
|
|
686
|
+
[debug] [2025-11-19T02:44:36.284Z] > authorizing via signed-in user (ian.wiedenman@gmail.com)
|
|
687
|
+
[debug] [2025-11-19T02:44:36.286Z] > command requires scopes: ["email","openid","https://www.googleapis.com/auth/cloudplatformprojects.readonly","https://www.googleapis.com/auth/firebase","https://www.googleapis.com/auth/cloud-platform"]
|
|
688
|
+
[debug] [2025-11-19T02:44:36.286Z] > authorizing via signed-in user (ian.wiedenman@gmail.com)
|
|
689
|
+
[debug] [2025-11-19T02:44:36.286Z] > command requires scopes: ["email","openid","https://www.googleapis.com/auth/cloudplatformprojects.readonly","https://www.googleapis.com/auth/firebase","https://www.googleapis.com/auth/cloud-platform"]
|
|
690
|
+
[debug] [2025-11-19T02:44:36.286Z] > authorizing via signed-in user (ian.wiedenman@gmail.com)
|
|
691
|
+
[debug] [2025-11-19T04:39:08.515Z] > command requires scopes: ["email","openid","https://www.googleapis.com/auth/cloudplatformprojects.readonly","https://www.googleapis.com/auth/firebase","https://www.googleapis.com/auth/cloud-platform"]
|
|
692
|
+
[debug] [2025-11-19T04:39:08.522Z] > command requires scopes: ["email","openid","https://www.googleapis.com/auth/cloudplatformprojects.readonly","https://www.googleapis.com/auth/firebase","https://www.googleapis.com/auth/cloud-platform"]
|
|
693
|
+
[debug] [2025-11-19T04:39:08.518Z] > authorizing via signed-in user (ian.wiedenman@gmail.com)
|
|
694
|
+
[debug] [2025-11-19T04:39:08.518Z] > command requires scopes: ["email","openid","https://www.googleapis.com/auth/cloudplatformprojects.readonly","https://www.googleapis.com/auth/firebase","https://www.googleapis.com/auth/cloud-platform"]
|
|
695
|
+
[debug] [2025-11-19T04:39:08.518Z] > authorizing via signed-in user (ian.wiedenman@gmail.com)
|
|
696
|
+
[debug] [2025-11-19T04:39:08.527Z] > command requires scopes: ["email","openid","https://www.googleapis.com/auth/cloudplatformprojects.readonly","https://www.googleapis.com/auth/firebase","https://www.googleapis.com/auth/cloud-platform"]
|
|
697
|
+
[debug] [2025-11-19T04:39:08.527Z] > authorizing via signed-in user (ian.wiedenman@gmail.com)
|
|
698
|
+
[debug] [2025-11-19T04:39:08.524Z] > authorizing via signed-in user (ian.wiedenman@gmail.com)
|
|
699
|
+
[debug] [2025-11-19T04:39:08.524Z] > command requires scopes: ["email","openid","https://www.googleapis.com/auth/cloudplatformprojects.readonly","https://www.googleapis.com/auth/firebase","https://www.googleapis.com/auth/cloud-platform"]
|
|
700
|
+
[debug] [2025-11-19T04:39:08.525Z] > authorizing via signed-in user (ian.wiedenman@gmail.com)
|
|
701
|
+
[debug] [2025-11-19T04:39:08.533Z] > command requires scopes: ["email","openid","https://www.googleapis.com/auth/cloudplatformprojects.readonly","https://www.googleapis.com/auth/firebase","https://www.googleapis.com/auth/cloud-platform"]
|
|
702
|
+
[debug] [2025-11-19T04:39:08.533Z] > authorizing via signed-in user (ian.wiedenman@gmail.com)
|
|
703
|
+
[debug] [2025-11-19T04:39:08.571Z] > command requires scopes: ["email","openid","https://www.googleapis.com/auth/cloudplatformprojects.readonly","https://www.googleapis.com/auth/firebase","https://www.googleapis.com/auth/cloud-platform"]
|
|
704
|
+
[debug] [2025-11-19T04:39:08.571Z] > authorizing via signed-in user (ian.wiedenman@gmail.com)
|
|
705
|
+
[debug] [2025-11-19T04:39:08.572Z] > command requires scopes: ["email","openid","https://www.googleapis.com/auth/cloudplatformprojects.readonly","https://www.googleapis.com/auth/firebase","https://www.googleapis.com/auth/cloud-platform"]
|
|
706
|
+
[debug] [2025-11-19T04:39:08.572Z] > authorizing via signed-in user (ian.wiedenman@gmail.com)
|
|
707
|
+
[debug] [2025-11-19T04:39:08.574Z] > command requires scopes: ["email","openid","https://www.googleapis.com/auth/cloudplatformprojects.readonly","https://www.googleapis.com/auth/firebase","https://www.googleapis.com/auth/cloud-platform"]
|
|
708
|
+
[debug] [2025-11-19T04:39:08.574Z] > authorizing via signed-in user (ian.wiedenman@gmail.com)
|
|
709
|
+
[debug] [2025-11-19T04:39:08.574Z] > command requires scopes: ["email","openid","https://www.googleapis.com/auth/cloudplatformprojects.readonly","https://www.googleapis.com/auth/firebase","https://www.googleapis.com/auth/cloud-platform"]
|
|
710
|
+
[debug] [2025-11-19T04:39:08.575Z] > authorizing via signed-in user (ian.wiedenman@gmail.com)
|
|
711
|
+
[debug] [2025-11-19T04:39:08.575Z] > command requires scopes: ["email","openid","https://www.googleapis.com/auth/cloudplatformprojects.readonly","https://www.googleapis.com/auth/firebase","https://www.googleapis.com/auth/cloud-platform"]
|
|
712
|
+
[debug] [2025-11-19T04:39:08.576Z] > authorizing via signed-in user (ian.wiedenman@gmail.com)
|
|
713
|
+
[debug] [2025-11-19T04:39:08.576Z] > command requires scopes: ["email","openid","https://www.googleapis.com/auth/cloudplatformprojects.readonly","https://www.googleapis.com/auth/firebase","https://www.googleapis.com/auth/cloud-platform"]
|
|
714
|
+
[debug] [2025-11-19T04:39:08.576Z] > authorizing via signed-in user (ian.wiedenman@gmail.com)
|
|
715
|
+
[debug] [2025-11-19T04:39:08.578Z] > command requires scopes: ["email","openid","https://www.googleapis.com/auth/cloudplatformprojects.readonly","https://www.googleapis.com/auth/firebase","https://www.googleapis.com/auth/cloud-platform"]
|
|
716
|
+
[debug] [2025-11-19T04:39:08.578Z] > authorizing via signed-in user (ian.wiedenman@gmail.com)
|
|
717
|
+
[debug] [2025-11-19T04:39:08.578Z] > command requires scopes: ["email","openid","https://www.googleapis.com/auth/cloudplatformprojects.readonly","https://www.googleapis.com/auth/firebase","https://www.googleapis.com/auth/cloud-platform"]
|
|
718
|
+
[debug] [2025-11-19T04:39:08.578Z] > authorizing via signed-in user (ian.wiedenman@gmail.com)
|
|
719
|
+
[debug] [2025-11-19T05:48:24.041Z] > command requires scopes: ["email","openid","https://www.googleapis.com/auth/cloudplatformprojects.readonly","https://www.googleapis.com/auth/firebase","https://www.googleapis.com/auth/cloud-platform"]
|
|
720
|
+
[debug] [2025-11-19T05:48:24.043Z] > command requires scopes: ["email","openid","https://www.googleapis.com/auth/cloudplatformprojects.readonly","https://www.googleapis.com/auth/firebase","https://www.googleapis.com/auth/cloud-platform"]
|
|
721
|
+
[debug] [2025-11-19T05:48:24.043Z] > authorizing via signed-in user (ian.wiedenman@gmail.com)
|
|
722
|
+
[debug] [2025-11-19T05:48:24.043Z] > command requires scopes: ["email","openid","https://www.googleapis.com/auth/cloudplatformprojects.readonly","https://www.googleapis.com/auth/firebase","https://www.googleapis.com/auth/cloud-platform"]
|
|
723
|
+
[debug] [2025-11-19T05:48:24.044Z] > authorizing via signed-in user (ian.wiedenman@gmail.com)
|
|
724
|
+
[debug] [2025-11-19T05:48:24.057Z] > command requires scopes: ["email","openid","https://www.googleapis.com/auth/cloudplatformprojects.readonly","https://www.googleapis.com/auth/firebase","https://www.googleapis.com/auth/cloud-platform"]
|
|
725
|
+
[debug] [2025-11-19T05:48:24.058Z] > authorizing via signed-in user (ian.wiedenman@gmail.com)
|
|
726
|
+
[debug] [2025-11-19T05:48:24.045Z] > authorizing via signed-in user (ian.wiedenman@gmail.com)
|
|
727
|
+
[debug] [2025-11-19T05:48:24.046Z] > command requires scopes: ["email","openid","https://www.googleapis.com/auth/cloudplatformprojects.readonly","https://www.googleapis.com/auth/firebase","https://www.googleapis.com/auth/cloud-platform"]
|
|
728
|
+
[debug] [2025-11-19T05:48:24.046Z] > authorizing via signed-in user (ian.wiedenman@gmail.com)
|
|
729
|
+
[debug] [2025-11-19T05:48:24.063Z] > command requires scopes: ["email","openid","https://www.googleapis.com/auth/cloudplatformprojects.readonly","https://www.googleapis.com/auth/firebase","https://www.googleapis.com/auth/cloud-platform"]
|
|
730
|
+
[debug] [2025-11-19T05:48:24.063Z] > authorizing via signed-in user (ian.wiedenman@gmail.com)
|
|
731
|
+
[debug] [2025-11-19T05:48:24.125Z] > command requires scopes: ["email","openid","https://www.googleapis.com/auth/cloudplatformprojects.readonly","https://www.googleapis.com/auth/firebase","https://www.googleapis.com/auth/cloud-platform"]
|
|
732
|
+
[debug] [2025-11-19T05:48:24.126Z] > command requires scopes: ["email","openid","https://www.googleapis.com/auth/cloudplatformprojects.readonly","https://www.googleapis.com/auth/firebase","https://www.googleapis.com/auth/cloud-platform"]
|
|
733
|
+
[debug] [2025-11-19T05:48:24.126Z] > authorizing via signed-in user (ian.wiedenman@gmail.com)
|
|
734
|
+
[debug] [2025-11-19T05:48:24.126Z] > command requires scopes: ["email","openid","https://www.googleapis.com/auth/cloudplatformprojects.readonly","https://www.googleapis.com/auth/firebase","https://www.googleapis.com/auth/cloud-platform"]
|
|
735
|
+
[debug] [2025-11-19T05:48:24.126Z] > authorizing via signed-in user (ian.wiedenman@gmail.com)
|
|
736
|
+
[debug] [2025-11-19T05:48:24.128Z] > command requires scopes: ["email","openid","https://www.googleapis.com/auth/cloudplatformprojects.readonly","https://www.googleapis.com/auth/firebase","https://www.googleapis.com/auth/cloud-platform"]
|
|
737
|
+
[debug] [2025-11-19T05:48:24.128Z] > authorizing via signed-in user (ian.wiedenman@gmail.com)
|
|
738
|
+
[debug] [2025-11-19T05:48:24.129Z] > command requires scopes: ["email","openid","https://www.googleapis.com/auth/cloudplatformprojects.readonly","https://www.googleapis.com/auth/firebase","https://www.googleapis.com/auth/cloud-platform"]
|
|
739
|
+
[debug] [2025-11-19T05:48:24.129Z] > authorizing via signed-in user (ian.wiedenman@gmail.com)
|
|
740
|
+
[debug] [2025-11-19T05:48:24.126Z] > authorizing via signed-in user (ian.wiedenman@gmail.com)
|
|
741
|
+
[debug] [2025-11-19T05:48:24.127Z] > command requires scopes: ["email","openid","https://www.googleapis.com/auth/cloudplatformprojects.readonly","https://www.googleapis.com/auth/firebase","https://www.googleapis.com/auth/cloud-platform"]
|
|
742
|
+
[debug] [2025-11-19T05:48:24.127Z] > authorizing via signed-in user (ian.wiedenman@gmail.com)
|
|
743
|
+
[debug] [2025-11-19T05:48:24.129Z] > command requires scopes: ["email","openid","https://www.googleapis.com/auth/cloudplatformprojects.readonly","https://www.googleapis.com/auth/firebase","https://www.googleapis.com/auth/cloud-platform"]
|
|
744
|
+
[debug] [2025-11-19T05:48:24.129Z] > authorizing via signed-in user (ian.wiedenman@gmail.com)
|
|
745
|
+
[debug] [2025-11-19T05:48:24.130Z] > command requires scopes: ["email","openid","https://www.googleapis.com/auth/cloudplatformprojects.readonly","https://www.googleapis.com/auth/firebase","https://www.googleapis.com/auth/cloud-platform"]
|
|
746
|
+
[debug] [2025-11-19T05:48:24.130Z] > authorizing via signed-in user (ian.wiedenman@gmail.com)
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "ultimate-jekyll-manager",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.118",
|
|
4
4
|
"description": "Ultimate Jekyll dependency manager",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"exports": {
|
|
@@ -82,7 +82,7 @@
|
|
|
82
82
|
"gulp-responsive-modern": "^1.0.0",
|
|
83
83
|
"gulp-sass": "^6.0.1",
|
|
84
84
|
"html-minifier-terser": "^7.2.0",
|
|
85
|
-
"html-validate": "^10.
|
|
85
|
+
"html-validate": "^10.4.0",
|
|
86
86
|
"itwcw-package-analytics": "^1.0.6",
|
|
87
87
|
"js-yaml": "^3.14.2",
|
|
88
88
|
"json5": "^2.2.3",
|
|
@@ -94,11 +94,11 @@
|
|
|
94
94
|
"npm-api": "^1.0.1",
|
|
95
95
|
"postcss": "^8.5.6",
|
|
96
96
|
"prettier": "^3.6.2",
|
|
97
|
-
"sass": "^1.94.
|
|
97
|
+
"sass": "^1.94.1",
|
|
98
98
|
"spellchecker": "^3.7.1",
|
|
99
99
|
"through2": "^4.0.2",
|
|
100
|
-
"web-manager": "^4.0.
|
|
101
|
-
"webpack": "^5.
|
|
100
|
+
"web-manager": "^4.0.25",
|
|
101
|
+
"webpack": "^5.103.0",
|
|
102
102
|
"wonderful-fetch": "^1.3.4",
|
|
103
103
|
"wonderful-version": "^1.3.2",
|
|
104
104
|
"yargs": "^17.7.2"
|