@openeventkit/event-site 2.1.56 → 2.1.57
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/docs/plans/clickup-fix-registration-company-null.md +88 -0
- package/docs/plans/clickup-fix-registration-reservation-company-bug.md +96 -0
- package/docs/plans/clickup-fix-worker-postmessage-null.md +67 -0
- package/docs/plans/clickup-reduce-auth-missing-sentry-noise.md +82 -0
- package/package.json +2 -2
- package/src/content/site-settings/index.json +53 -1
- package/src/content/sponsors.json +1 -1
- package/src/styles/colors.scss +7 -7
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
# Fix TypeError crash when company field is cleared in registration form
|
|
2
|
+
|
|
3
|
+
GOAL
|
|
4
|
+
|
|
5
|
+
The summit-registration-lite widget crashes with "Cannot read properties of null (reading 'name')" when a user clears the company autocomplete field and then submits the registration form. This is a high-impact production bug that prevents users from completing event registration.
|
|
6
|
+
|
|
7
|
+
Sentry issue: PROD-2026OCPEMEA-A
|
|
8
|
+
URL: https://tipit.sentry.io/issues/PROD-2026OCPEMEA-A
|
|
9
|
+
Occurrences: 105 (84 users) since Dec 9, 2025. Ongoing, multiple events per day.
|
|
10
|
+
|
|
11
|
+
Current state: The CompanyInputV2 component (MUI Autocomplete with freeSolo) fires onChange with null when the user clears the field (clicks X or backspaces). The onCompanyChange handler in personal-information/index.js blindly sets personalInfo.company = null. On submit, the validation check accesses personalInfo.company.name without a null guard, causing a TypeError. The form also has a display template (line 207) that accesses personalInfo.company.name without protection.
|
|
12
|
+
|
|
13
|
+
Target state: The onCompanyChange handler normalizes null values to a safe default object. The onSubmit validation and display template both handle null/undefined company gracefully. Users who clear the company field see a validation error prompting them to fill it in, rather than a crash.
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
TASKS
|
|
17
|
+
|
|
18
|
+
1. Fix onCompanyChange handler to normalize null values
|
|
19
|
+
- File: src/components/personal-information/index.js, lines 102-107
|
|
20
|
+
- When ev.target.value is null (user cleared autocomplete), default to { id: null, name: '' }
|
|
21
|
+
- This prevents null from ever being set as the company state
|
|
22
|
+
|
|
23
|
+
2. Fix onSubmit validation to guard against null company
|
|
24
|
+
- File: src/components/personal-information/index.js, line 110
|
|
25
|
+
- Change: if (!personalInfo.company.name && showCompanyInput)
|
|
26
|
+
- To: if ((!personalInfo.company || !personalInfo.company.name) && showCompanyInput)
|
|
27
|
+
- This makes the validation work correctly even if null somehow gets through
|
|
28
|
+
|
|
29
|
+
3. Fix display template null access
|
|
30
|
+
- File: src/components/personal-information/index.js, line 207
|
|
31
|
+
- Change: personalInfo.company.name to personalInfo.company?.name
|
|
32
|
+
- The template renders when the step is collapsed after completion
|
|
33
|
+
|
|
34
|
+
4. Publish new widget version and update event-site
|
|
35
|
+
- Publish patch version of summit-registration-lite
|
|
36
|
+
- Run yarn update-libs in event-site to pick up the fix
|
|
37
|
+
|
|
38
|
+
|
|
39
|
+
ACCEPTANCE CRITERIA
|
|
40
|
+
|
|
41
|
+
- Clearing the company autocomplete field does not crash the form
|
|
42
|
+
- Clearing company field and submitting shows a validation error ("company required")
|
|
43
|
+
- Selecting a company and submitting works normally without regression
|
|
44
|
+
- The collapsed step display does not crash when company was cleared
|
|
45
|
+
- No new TypeError occurrences for PROD-2026OCPEMEA-A in Sentry after deployment
|
|
46
|
+
|
|
47
|
+
|
|
48
|
+
DEVELOPMENT NOTES
|
|
49
|
+
|
|
50
|
+
Key files
|
|
51
|
+
src/components/personal-information/index.js -- All fixes are in this file
|
|
52
|
+
Line 73-85: Initial state sets company: { id: null, name: '' }
|
|
53
|
+
Line 102-107: onCompanyChange handler (primary fix)
|
|
54
|
+
Line 110: onSubmit validation (secondary fix)
|
|
55
|
+
Line 207: Display template (tertiary fix)
|
|
56
|
+
|
|
57
|
+
Root cause detail
|
|
58
|
+
CompanyInputV2 is from openstack-uicore-foundation. Its internal onChange handler:
|
|
59
|
+
onChange: (e, r) => {
|
|
60
|
+
let a = (null == r ? void 0 : r.inputValue) || r; // r=null -> a = null
|
|
61
|
+
n({ target: { id: i, value: a, type: "companyinput" } }) // fires with value: null
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
MUI Autocomplete fires onChange with null when the user:
|
|
65
|
+
- Clicks the clear (X) button
|
|
66
|
+
- Backspaces the entire input and blurs
|
|
67
|
+
- Escapes after editing
|
|
68
|
+
|
|
69
|
+
The onCompanyChange handler trusts the value blindly:
|
|
70
|
+
const onCompanyChange = (ev) => {
|
|
71
|
+
const newCompany = ev.target.value; // null
|
|
72
|
+
setPersonalInfo({ ...personalInfo, company: newCompany }); // sets null
|
|
73
|
+
};
|
|
74
|
+
|
|
75
|
+
Gotchas
|
|
76
|
+
- The fix in onCompanyChange is the PRIMARY defense. The onSubmit and template fixes are defense-in-depth.
|
|
77
|
+
- CompanyInputV2 is in openstack-uicore-foundation, not in this repo. Do NOT try to fix the upstream component -- just handle its output safely.
|
|
78
|
+
- The company field accepts three valid shapes: { id: number, name: string } (existing company), { id: 0, name: string } (new free-text company), and { id: null, name: string } (initial empty state). The fix must preserve all three.
|
|
79
|
+
- The setCompanyError(true) on line 111 correctly shows the validation error state, so the only issue is reaching that line without crashing.
|
|
80
|
+
|
|
81
|
+
Risks
|
|
82
|
+
Risk: Normalizing null to { id: null, name: '' } might interfere with Autocomplete controlled value
|
|
83
|
+
Mitigation: The initial state is already { id: null, name: '' } and works fine with the Autocomplete. This is just restoring to initial state on clear.
|
|
84
|
+
|
|
85
|
+
Out of scope
|
|
86
|
+
- Fixing the upstream CompanyInputV2 component in openstack-uicore-foundation
|
|
87
|
+
- Changing the company data model or validation rules
|
|
88
|
+
- The reservation useEffect fallback bug (separate ticket)
|
|
@@ -0,0 +1,96 @@
|
|
|
1
|
+
# Fix nested object bug in reservation company fallback logic
|
|
2
|
+
|
|
3
|
+
GOAL
|
|
4
|
+
|
|
5
|
+
The summit-registration-lite widget has a bug in the reservation useEffect that incorrectly nests the company object when reservation.owner_company is falsy. This causes malformed data to be sent to the API during ticket reservation, potentially corrupting the owner_company field.
|
|
6
|
+
|
|
7
|
+
Related Sentry issue: PROD-2026OCPEMEA-A (same component, different code path)
|
|
8
|
+
URL: https://tipit.sentry.io/issues/PROD-2026OCPEMEA-A
|
|
9
|
+
|
|
10
|
+
Current state: In src/components/personal-information/index.js (lines 91-100), the reservation useEffect sets company as:
|
|
11
|
+
company: { id: null, name: reservation.owner_company ? reservation.owner_company : personalInfo.company }
|
|
12
|
+
|
|
13
|
+
When reservation.owner_company is falsy (empty string, null, undefined), the fallback is personalInfo.company which is the FULL object { id: null, name: '' }. This results in:
|
|
14
|
+
company: { id: null, name: { id: null, name: '' } }
|
|
15
|
+
|
|
16
|
+
The name field becomes an object instead of a string, which causes incorrect behavior downstream when normalizeReservation (actions.js line 443) accesses entity.owner_company.name expecting a string.
|
|
17
|
+
|
|
18
|
+
Target state: The reservation useEffect correctly extracts the company name string from the fallback, producing a valid company object shape in all cases.
|
|
19
|
+
|
|
20
|
+
|
|
21
|
+
TASKS
|
|
22
|
+
|
|
23
|
+
1. Fix the reservation useEffect company fallback
|
|
24
|
+
- File: src/components/personal-information/index.js, lines 91-100
|
|
25
|
+
- Change the fallback from personalInfo.company to personalInfo.company?.name || ''
|
|
26
|
+
- Full corrected line: company: { id: null, name: reservation.owner_company || personalInfo.company?.name || '' }
|
|
27
|
+
|
|
28
|
+
2. Verify normalizeReservation handles the company shape correctly
|
|
29
|
+
- File: src/actions.js (around line 440-452)
|
|
30
|
+
- Confirm that when company is { id: null, name: "string" }, the normalization produces the correct API payload
|
|
31
|
+
- The normalization checks entity.owner_company.id -- if falsy, sends owner_company as the name string; if truthy, sends owner_company_id as the numeric id
|
|
32
|
+
|
|
33
|
+
3. Add a test case for reservation with empty owner_company
|
|
34
|
+
- When reservation has owner_company = "" or null
|
|
35
|
+
- Verify personalInfo.company remains a valid { id, name } shape
|
|
36
|
+
- Verify the form can be submitted without errors
|
|
37
|
+
|
|
38
|
+
|
|
39
|
+
ACCEPTANCE CRITERIA
|
|
40
|
+
|
|
41
|
+
- When a reservation has no owner_company (empty/null), personalInfo.company is { id: null, name: '' }
|
|
42
|
+
- When a reservation has owner_company = "Acme Inc", personalInfo.company is { id: null, name: "Acme Inc" }
|
|
43
|
+
- The company field never contains a nested object as its name property
|
|
44
|
+
- normalizeReservation produces valid API payloads for all company shapes
|
|
45
|
+
- No regression in the existing reservation flow where owner_company is populated
|
|
46
|
+
|
|
47
|
+
|
|
48
|
+
DEVELOPMENT NOTES
|
|
49
|
+
|
|
50
|
+
Key files
|
|
51
|
+
src/components/personal-information/index.js -- useEffect with reservation logic (lines 91-100)
|
|
52
|
+
src/actions.js -- normalizeReservation function (around line 440-452)
|
|
53
|
+
|
|
54
|
+
Current buggy code (lines 91-100)
|
|
55
|
+
useEffect(() => {
|
|
56
|
+
if (reservation) {
|
|
57
|
+
setPersonalInfo({
|
|
58
|
+
firstName: reservation.owner_first_name ? reservation.owner_first_name : personalInfo.firstName,
|
|
59
|
+
lastName: reservation.owner_last_name ? reservation.owner_last_name : personalInfo.lastName,
|
|
60
|
+
email: reservation.owner_email ? reservation.owner_email : personalInfo.email,
|
|
61
|
+
company: { id: null, name: reservation.owner_company ? reservation.owner_company : personalInfo.company },
|
|
62
|
+
});
|
|
63
|
+
}
|
|
64
|
+
}, []);
|
|
65
|
+
|
|
66
|
+
The problem is the fallback: personalInfo.company is { id: null, name: '' } (the full object).
|
|
67
|
+
It should be: personalInfo.company?.name || ''
|
|
68
|
+
|
|
69
|
+
normalizeReservation logic
|
|
70
|
+
const normalizeReservation = (entity) => {
|
|
71
|
+
const normalizedEntity = { ...entity };
|
|
72
|
+
if (!entity.owner_company.id) {
|
|
73
|
+
normalizedEntity['owner_company'] = entity.owner_company.name;
|
|
74
|
+
} else {
|
|
75
|
+
delete (normalizedEntity['owner_company']);
|
|
76
|
+
normalizedEntity['owner_company_id'] = entity.owner_company.id;
|
|
77
|
+
}
|
|
78
|
+
return normalizedEntity;
|
|
79
|
+
}
|
|
80
|
+
|
|
81
|
+
When company.name is accidentally an object (the bug), entity.owner_company.name returns the nested object, and the API receives [object Object] or causes a server-side error.
|
|
82
|
+
|
|
83
|
+
Gotchas
|
|
84
|
+
- The useEffect runs only once on mount (empty dependency array [])
|
|
85
|
+
- The reservation prop comes from the parent RegistrationForm which gets it from the widget's Redux store
|
|
86
|
+
- The firstName/lastName/email fallbacks have the same pattern but work correctly because personalInfo.firstName etc. are already strings
|
|
87
|
+
- The company fallback is the ONLY one that fails because personalInfo.company is an object, not a string
|
|
88
|
+
|
|
89
|
+
Risks
|
|
90
|
+
Risk: Changing the fallback breaks reservations that previously worked
|
|
91
|
+
Mitigation: The fix only affects the falsy case (no owner_company). When owner_company is populated, the behavior is unchanged. The falsy case was always broken -- it just produced malformed data silently instead of crashing.
|
|
92
|
+
|
|
93
|
+
Out of scope
|
|
94
|
+
- The primary company null crash on clear (separate ticket)
|
|
95
|
+
- Changing how reservations store company data on the backend
|
|
96
|
+
- Adding company ID lookup from reservation data
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
# Fix null worker postMessage crash in withRealTimeUpdates HOC
|
|
2
|
+
|
|
3
|
+
GOAL
|
|
4
|
+
|
|
5
|
+
The withRealTimeUpdates HOC crashes with "Cannot read properties of null (reading 'postMessage')" when a real-time update arrives while the component is unmounting. This affects the /a/profile/ page and potentially any page wrapped with the HOC.
|
|
6
|
+
|
|
7
|
+
Sentry issue: PROD-2026OCPEMEA-X
|
|
8
|
+
URL: https://tipit.sentry.io/issues/PROD-2026OCPEMEA-X
|
|
9
|
+
Occurrences: 3 (2 users) since Feb 10, 2026. Low volume but unhandled — causes visible error.
|
|
10
|
+
|
|
11
|
+
Current state: The processUpdates method in withRealTimeUpdates.js checks if this._worker is null at the top of the function (line 79), but then calls await getAccessToken() (line 87). During this async gap, componentWillUnmount can fire, which terminates the worker and sets this._worker = null (line 261-262). When execution resumes at line 92, the null check has already passed but the worker is now null, causing the TypeError.
|
|
12
|
+
|
|
13
|
+
Target state: The processUpdates method re-checks this._worker after the async getAccessToken() call before calling postMessage, preventing the crash. Additionally, componentWillUnmount guards against double-termination of the worker.
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
TASKS
|
|
17
|
+
|
|
18
|
+
1. Add null guard after getAccessToken() in processUpdates
|
|
19
|
+
- After the try/catch block for getAccessToken() (line 90), add a second check: if this._worker is null, log and return early
|
|
20
|
+
- This closes the race window between the initial null check and the async resume
|
|
21
|
+
|
|
22
|
+
2. Add null guard in componentWillUnmount before terminate()
|
|
23
|
+
- Line 261 calls this._worker.terminate() without checking if it is already null
|
|
24
|
+
- Add a conditional check before calling terminate()
|
|
25
|
+
|
|
26
|
+
3. Verify fix does not break normal real-time update flow
|
|
27
|
+
- Confirm processUpdates still dispatches to the worker under normal conditions
|
|
28
|
+
- Confirm componentWillUnmount still properly cleans up when worker exists
|
|
29
|
+
|
|
30
|
+
|
|
31
|
+
ACCEPTANCE CRITERIA
|
|
32
|
+
|
|
33
|
+
- processUpdates returns early (with console log) if this._worker becomes null after getAccessToken() resolves
|
|
34
|
+
- componentWillUnmount does not throw if this._worker is already null
|
|
35
|
+
- Existing real-time update flow is not affected — worker receives messages and dispatches synchEntityData as before
|
|
36
|
+
- No unhandled TypeError for postMessage on null in Sentry after deployment
|
|
37
|
+
|
|
38
|
+
|
|
39
|
+
DEVELOPMENT NOTES
|
|
40
|
+
|
|
41
|
+
Key files
|
|
42
|
+
src/utils/real_time_updates/withRealTimeUpdates.js — The only file that needs changes. Contains the HOC class with processUpdates (line 75-128) and componentWillUnmount (line 255-263).
|
|
43
|
+
|
|
44
|
+
Root cause detail
|
|
45
|
+
The race condition window:
|
|
46
|
+
1. processUpdates called, passes null check at line 79
|
|
47
|
+
2. await getAccessToken() suspends execution (line 87)
|
|
48
|
+
3. User navigates away, componentWillUnmount fires
|
|
49
|
+
4. componentWillUnmount calls this._worker.terminate() and sets this._worker = null (lines 261-262)
|
|
50
|
+
5. getAccessToken resolves, execution resumes at line 92
|
|
51
|
+
6. this._worker is now null — TypeError thrown
|
|
52
|
+
|
|
53
|
+
The fix pattern is standard for async methods in React class components: re-check mutable instance state after every await.
|
|
54
|
+
|
|
55
|
+
Gotchas
|
|
56
|
+
- The existing null check at line 79-83 is NOT sufficient because of the async gap. Do not remove it — it handles the case where the worker was never created. The second check handles the unmount-during-await race.
|
|
57
|
+
- componentWillUnmount also sets this._worker = null (line 262), which is correct cleanup. The fix is about the CALLER (processUpdates) being aware that this can happen mid-execution.
|
|
58
|
+
- The onmessage handler reassignment at line 103 also needs to be inside the null guard since it accesses this._worker.
|
|
59
|
+
|
|
60
|
+
Risks
|
|
61
|
+
Risk: Fix is too aggressive and silently swallows legitimate errors
|
|
62
|
+
Mitigation: Only guard against null, log when it happens. Any other error will still propagate normally.
|
|
63
|
+
|
|
64
|
+
Out of scope
|
|
65
|
+
- Refactoring withRealTimeUpdates from class component to hooks (larger effort, separate task)
|
|
66
|
+
- Fixing the Ably connection timeout or server unavailable errors (infrastructure, not code)
|
|
67
|
+
- Fixing the summit-registration-lite company.name null error (separate widget repo)
|
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
# Reduce AUTH_ERROR_MISSING_AUTH_INFO Sentry noise
|
|
2
|
+
|
|
3
|
+
GOAL
|
|
4
|
+
|
|
5
|
+
The Sentry issue PROD-2026OCPEMEA-4 has accumulated 675 occurrences from 478 users since Dec 2025. The error AUTH_ERROR_MISSING_AUTH_INFO fires when unauthenticated users visit the site and any code path calls getAccessToken(). This is expected behavior for anonymous visitors, not a bug, but the getAccessTokenSafely wrapper in loginUtils.js unconditionally calls Sentry.captureException for every occurrence, flooding Sentry with noise and making it harder to spot real issues.
|
|
6
|
+
|
|
7
|
+
Sentry issue: PROD-2026OCPEMEA-4
|
|
8
|
+
URL: https://tipit.sentry.io/issues/PROD-2026OCPEMEA-4
|
|
9
|
+
Occurrences: 675 (478 users) since Dec 4, 2025. Ongoing, multiple events per day.
|
|
10
|
+
|
|
11
|
+
Current state: getAccessTokenSafely() in src/utils/loginUtils.js catches the AUTH_ERROR_MISSING_AUTH_INFO error thrown by openstack-uicore-foundation, reports it to Sentry via Sentry.captureException(e), then calls onLogOut() and rejects the promise. Every unauthenticated user who triggers a code path that calls getAccessTokenSafely generates a Sentry event. The Sentry beforeSend hook in gatsby-browser.js has no filtering — it logs and returns every event.
|
|
12
|
+
|
|
13
|
+
Target state: AUTH_ERROR_MISSING_AUTH_INFO is handled gracefully without reporting to Sentry. The error is logged to console for debugging but no longer generates Sentry events. Real auth errors (token refresh failures, network errors) continue to be reported.
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
TASKS
|
|
17
|
+
|
|
18
|
+
1. Filter AUTH_ERROR_MISSING_AUTH_INFO from Sentry reporting in getAccessTokenSafely
|
|
19
|
+
- In src/utils/loginUtils.js, check if the caught error message matches AUTH_ERROR_MISSING_AUTH_INFO
|
|
20
|
+
- If it does, log to console but skip Sentry.captureException
|
|
21
|
+
- For all other auth errors, continue reporting to Sentry as before
|
|
22
|
+
- Keep the onLogOut() call and Promise.reject() behavior unchanged
|
|
23
|
+
|
|
24
|
+
2. Optionally add beforeSend filter in Sentry init as defense-in-depth
|
|
25
|
+
- In gatsby-browser.js Sentry.init beforeSend, drop events where the error value is AUTH_ERROR_MISSING_AUTH_INFO
|
|
26
|
+
- This catches any other code paths that might report the same error (components passing raw getAccessToken to widgets)
|
|
27
|
+
|
|
28
|
+
3. Verify other getAccessToken callers are not generating the same noise
|
|
29
|
+
- Several components pass raw getAccessToken (not getAccessTokenSafely) to widgets: RegistrationLiteComponent.js, MyOrdersTicketsComponent.js, EventFeedbackComponent.js
|
|
30
|
+
- Confirm whether those widget-internal calls also generate Sentry events, and if so, whether the beforeSend filter catches them
|
|
31
|
+
|
|
32
|
+
|
|
33
|
+
ACCEPTANCE CRITERIA
|
|
34
|
+
|
|
35
|
+
- getAccessTokenSafely no longer calls Sentry.captureException for AUTH_ERROR_MISSING_AUTH_INFO errors
|
|
36
|
+
- Other auth errors (AUTH_ERROR_REFRESH_TOKEN_REQUEST_ERROR, network failures) are still reported to Sentry
|
|
37
|
+
- The onLogOut redirect behavior for missing auth info is unchanged
|
|
38
|
+
- Console logging of AUTH_ERROR_MISSING_AUTH_INFO is preserved for local debugging
|
|
39
|
+
- Sentry event volume for this issue drops to zero after deployment
|
|
40
|
+
- No regressions in authenticated user flows (login, token refresh, API calls)
|
|
41
|
+
|
|
42
|
+
|
|
43
|
+
DEVELOPMENT NOTES
|
|
44
|
+
|
|
45
|
+
Key files
|
|
46
|
+
src/utils/loginUtils.js — Primary fix location. getAccessTokenSafely (line 70-79) catches all getAccessToken errors and reports them. Add an error message check before calling Sentry.captureException.
|
|
47
|
+
gatsby-browser.js — Sentry.init with beforeSend hook (line 74-104). Currently a pass-through that logs and returns every event. Add a filter for AUTH_ERROR_MISSING_AUTH_INFO.
|
|
48
|
+
|
|
49
|
+
Root cause detail
|
|
50
|
+
The openstack-uicore-foundation library throws Error("AUTH_ERROR_MISSING_AUTH_INFO") from its _getAccessToken function when no stored auth info is found (no id_token, no session). This is a normal state for any anonymous visitor.
|
|
51
|
+
|
|
52
|
+
The call chain that triggers this:
|
|
53
|
+
1. User visits site (anonymous, no login)
|
|
54
|
+
2. Something calls getAccessTokenSafely (e.g., registration widget init, real-time updates, profile page)
|
|
55
|
+
3. getAccessToken() throws AUTH_ERROR_MISSING_AUTH_INFO
|
|
56
|
+
4. getAccessTokenSafely catches it and calls Sentry.captureException(e) at line 75
|
|
57
|
+
5. Sentry event created
|
|
58
|
+
|
|
59
|
+
Breadcrumbs from a typical event show the user landing on the homepage, the registration widget initializing, the user interacting with the login form but closing it without completing login, then the error fires.
|
|
60
|
+
|
|
61
|
+
Callers of getAccessToken in event-site
|
|
62
|
+
Safe wrapper (getAccessTokenSafely): summit-actions.js, event-actions.js, extra-questions-actions.js, user-actions.js, presentation-actions.js, full-profile-page.js, AttendeeToAttendeeWidgetComponent.js
|
|
63
|
+
Raw getAccessToken (passed to widgets): RegistrationLiteComponent.js:179, MyOrdersTicketsComponent.js:56, EventFeedbackComponent.js:18, withRealTimeUpdates.js:87
|
|
64
|
+
|
|
65
|
+
The raw callers pass getAccessToken as a prop to widget packages. Those widgets handle the error internally, but if they use Sentry within their own bundles, the beforeSend filter in gatsby-browser.js would be needed as a catch-all.
|
|
66
|
+
|
|
67
|
+
Gotchas
|
|
68
|
+
- The error constant AUTH_ERROR_MISSING_AUTH_INFO is defined in the openstack-uicore-foundation library, not in event-site. Match by string value since importing the constant would add a coupling dependency. The string "AUTH_ERROR_MISSING_AUTH_INFO" has been stable since at least Dec 2025.
|
|
69
|
+
- The beforeSend filter in gatsby-browser.js should match on the exception value, not the message field, since that is what Sentry groups on.
|
|
70
|
+
- user-actions.js also has 5 Sentry.captureException calls (lines 96, 237, 259, 290, 318). These catch errors from specific API calls, not from getAccessToken directly. They should NOT be changed — they report legitimate failures.
|
|
71
|
+
|
|
72
|
+
Risks
|
|
73
|
+
Risk: Silencing this error hides a genuine auth regression in the future
|
|
74
|
+
Mitigation: Only suppress the specific AUTH_ERROR_MISSING_AUTH_INFO message. All other auth errors continue to be reported. Console logging is preserved for local debugging.
|
|
75
|
+
|
|
76
|
+
Risk: The error string changes in a future openstack-uicore-foundation update
|
|
77
|
+
Mitigation: Low likelihood — this is a public error constant. If it changes, the worst case is that the old string filter becomes a no-op and the new error starts appearing in Sentry again, which would be noticed.
|
|
78
|
+
|
|
79
|
+
Out of scope
|
|
80
|
+
- Changing the behavior of openstack-uicore-foundation itself (separate library)
|
|
81
|
+
- Refactoring all callers to check auth state before calling getAccessToken (much larger effort)
|
|
82
|
+
- Addressing the separate PROD-2026OCPEMEA-1A issue (AUTH_ERROR_REFRESH_TOKEN_REQUEST_ERROR) — that is a transient network error, different root cause
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@openeventkit/event-site",
|
|
3
3
|
"description": "Event Site",
|
|
4
|
-
"version": "2.1.
|
|
4
|
+
"version": "2.1.57",
|
|
5
5
|
"author": "Tipit LLC",
|
|
6
6
|
"dependencies": {
|
|
7
7
|
"@emotion/server": "^11.11.0",
|
|
@@ -87,7 +87,7 @@
|
|
|
87
87
|
"markdown-it": "^12.0.0",
|
|
88
88
|
"moment": "^2.27.0",
|
|
89
89
|
"moment-timezone": "^0.5.31",
|
|
90
|
-
"my-orders-tickets-widget": "1.0.
|
|
90
|
+
"my-orders-tickets-widget": "1.0.13",
|
|
91
91
|
"object.assign": "^4.1.5",
|
|
92
92
|
"openstack-uicore-foundation": "4.2.30",
|
|
93
93
|
"path-browserify": "^1.0.1",
|
|
@@ -1 +1,53 @@
|
|
|
1
|
-
{
|
|
1
|
+
{
|
|
2
|
+
"favicon": {
|
|
3
|
+
"asset": "icon.png"
|
|
4
|
+
},
|
|
5
|
+
"widgets": {
|
|
6
|
+
"chat": {
|
|
7
|
+
"enabled": true,
|
|
8
|
+
"showQA": false,
|
|
9
|
+
"showHelp": false,
|
|
10
|
+
"defaultScope": "page"
|
|
11
|
+
},
|
|
12
|
+
"schedule": {
|
|
13
|
+
"allowClick": true
|
|
14
|
+
}
|
|
15
|
+
},
|
|
16
|
+
"identityProviderButtons": [
|
|
17
|
+
{
|
|
18
|
+
"buttonColor": "#082238",
|
|
19
|
+
"providerLabel": "Continue with FNid",
|
|
20
|
+
"providerLogo": "logo_fn.svg",
|
|
21
|
+
"providerLogoSize": 27
|
|
22
|
+
},
|
|
23
|
+
{
|
|
24
|
+
"buttonColor": "#0A66C2",
|
|
25
|
+
"providerLabel": "Sign in with LinkedIn",
|
|
26
|
+
"providerParam": "linkedin",
|
|
27
|
+
"providerLogo": "logo_linkedin.svg",
|
|
28
|
+
"providerLogoSize": 18
|
|
29
|
+
},
|
|
30
|
+
{
|
|
31
|
+
"buttonColor": "#000000",
|
|
32
|
+
"providerLabel": "Sign in with Apple",
|
|
33
|
+
"providerParam": "apple",
|
|
34
|
+
"providerLogoSize": 17,
|
|
35
|
+
"providerLogo": "logo_apple.svg"
|
|
36
|
+
},
|
|
37
|
+
{
|
|
38
|
+
"buttonColor": "#1877F2",
|
|
39
|
+
"providerLabel": "Login with Facebook",
|
|
40
|
+
"providerParam": "facebook",
|
|
41
|
+
"providerLogo": "logo_facebook.svg",
|
|
42
|
+
"providerLogoSize": 20
|
|
43
|
+
}
|
|
44
|
+
],
|
|
45
|
+
"maintenanceMode": {
|
|
46
|
+
"enabled": false,
|
|
47
|
+
"title": "Site under maintenance",
|
|
48
|
+
"subtitle": "Please reload page shortly"
|
|
49
|
+
},
|
|
50
|
+
"registration": {
|
|
51
|
+
"registrationMode": "STANDALONE"
|
|
52
|
+
}
|
|
53
|
+
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
[{"id":590,"created":1761842499,"last_edited":1779463155,"order":87,"summit_id":69,"is_published":true,"side_image":null,"header_image":null,"header_image_mobile":null,"carousel_advertise_image":null,"marquee":null,"intro":null,"external_link":null,"video_link":null,"chat_link":null,"featured_event_id":0,"header_image_alt_text":null,"side_image_alt_text":null,"header_image_mobile_alt_text":null,"carousel_advertise_image_alt_text":null,"show_logo_in_event_page":true,"lead_report_setting_id":0,"sponsorservices_statistics_id":0,"company":{"id":3,"created":1580138376,"last_edited":1773692441,"name":"Tipit , LLC","url":"","url_segment":null,"city":"","state":"","country":"","description":"","industry":"","contributions":"","member_level":"None","overview":"","products":"","commitment":"","commitment_author":"","logo":"https://summit-api-dev-assets.nyc3.digitaloceanspaces.com/companies/3/logos/IMG-0774.jpeg","big_logo":null,"color":"#f0f0ee"},"extra_questions":[815,816,817,827],"members":[3,5,26391,29308,29309,32478,95566,95568,98654,106190,108514,112524,112545,112550,112553,112571,112578],"sponsorship":{"id":2067,"widget_title":"","lobby_template":null,"expo_hall_template":null,"sponsor_page_template":null,"event_page_template":null,"sponsor_page_use_disqus_widget":false,"sponsor_page_use_live_event_widget":false,"sponsor_page_use_schedule_widget":false,"sponsor_page_use_banner_widget":false,"badge_image":"https://summit-api-dev-assets.nyc3.digitaloceanspaces.com/summits/69/summit_sponsorship_types/2067/AJ-Digital-Camera1.svg","badge_image_alt_text":"","summit_id":69,"order":1,"should_display_on_expo_hall_page":false,"should_display_on_lobby_page":false,"type":{"id":27,"created":1757949806,"last_edited":1757949806,"name":"OCP Booth Sponsor","label":"OCP Booth Sponsor","order":26,"size":"Small"}},"ads":[],"materials":[],"social_networks":[]},{"id":591,"created":1761842977,"last_edited":1780056696,"order":88,"summit_id":69,"is_published":true,"side_image":null,"header_image":null,"header_image_mobile":null,"carousel_advertise_image":null,"marquee":null,"intro":null,"external_link":null,"video_link":null,"chat_link":null,"featured_event_id":0,"header_image_alt_text":null,"side_image_alt_text":null,"header_image_mobile_alt_text":null,"carousel_advertise_image_alt_text":null,"show_logo_in_event_page":true,"lead_report_setting_id":8,"sponsorservices_statistics_id":0,"company":{"id":4237,"created":1693523575,"last_edited":1693523575,"name":"tipit la dos","url":null,"url_segment":null,"city":null,"state":null,"country":null,"description":null,"industry":null,"contributions":null,"member_level":null,"overview":null,"products":null,"commitment":null,"commitment_author":null,"logo":null,"big_logo":null,"color":"#f0f0ee"},"extra_questions":[836],"members":[5,26391,112576,112578,112579],"sponsorship":{"id":2068,"widget_title":"title it","lobby_template":"big-images","expo_hall_template":"big-images","sponsor_page_template":"big-header","event_page_template":"big-images","sponsor_page_use_disqus_widget":false,"sponsor_page_use_live_event_widget":true,"sponsor_page_use_schedule_widget":true,"sponsor_page_use_banner_widget":true,"badge_image":"https://summit-api-dev-assets.nyc3.digitaloceanspaces.com/summits/69/summit_sponsorship_types/2068/copyleft.svg","badge_image_alt_text":"tttest","summit_id":69,"order":2,"should_display_on_expo_hall_page":true,"should_display_on_lobby_page":true,"type":{"id":3,"created":1579890943,"last_edited":1765296260,"name":"Gold","label":"Label this up!","order":3,"size":"Small"}},"ads":[],"materials":[],"social_networks":[]},{"id":592,"created":1761843054,"last_edited":1778521650,"order":89,"summit_id":69,"is_published":true,"side_image":null,"header_image":null,"header_image_mobile":null,"carousel_advertise_image":null,"marquee":null,"intro":null,"external_link":null,"video_link":null,"chat_link":null,"featured_event_id":0,"header_image_alt_text":null,"side_image_alt_text":null,"header_image_mobile_alt_text":null,"carousel_advertise_image_alt_text":null,"show_logo_in_event_page":true,"lead_report_setting_id":9,"sponsorservices_statistics_id":0,"company":{"id":5215,"created":1761843020,"last_edited":1778703072,"name":"Tipit el tercero","url":"","url_segment":null,"city":"Test City","state":"New State","country":"US","description":"","industry":"","contributions":"","member_level":"Platinum","overview":"","products":"","commitment":"","commitment_author":"","logo":null,"big_logo":null,"color":"#DADADA"},"extra_questions":[821,837],"members":[3,5,27730,91629,95566,112543,112576,112578,112579],"sponsorship":{"id":2067,"widget_title":"","lobby_template":null,"expo_hall_template":null,"sponsor_page_template":null,"event_page_template":null,"sponsor_page_use_disqus_widget":false,"sponsor_page_use_live_event_widget":false,"sponsor_page_use_schedule_widget":false,"sponsor_page_use_banner_widget":false,"badge_image":"https://summit-api-dev-assets.nyc3.digitaloceanspaces.com/summits/69/summit_sponsorship_types/2067/AJ-Digital-Camera1.svg","badge_image_alt_text":"","summit_id":69,"order":1,"should_display_on_expo_hall_page":false,"should_display_on_lobby_page":false,"type":{"id":27,"created":1757949806,"last_edited":1757949806,"name":"OCP Booth Sponsor","label":"OCP Booth Sponsor","order":26,"size":"Small"}},"ads":[],"materials":[],"social_networks":[]},{"id":593,"created":1762983699,"last_edited":1762983699,"order":90,"summit_id":69,"is_published":true,"side_image":null,"header_image":null,"header_image_mobile":null,"carousel_advertise_image":null,"marquee":null,"intro":null,"external_link":null,"video_link":null,"chat_link":null,"featured_event_id":0,"header_image_alt_text":null,"side_image_alt_text":null,"header_image_mobile_alt_text":null,"carousel_advertise_image_alt_text":null,"show_logo_in_event_page":true,"lead_report_setting_id":0,"sponsorservices_statistics_id":0,"company":{"id":5,"created":1594672447,"last_edited":1594672447,"name":"Meta","url":"","url_segment":null,"city":"","state":"","country":"","description":"","industry":"","contributions":"","member_level":"None","overview":"","products":"","commitment":"","commitment_author":"","logo":"https://summit-api-dev-assets.nyc3.digitaloceanspaces.com/companies/5/logos/OCP21GLO-SessionBrandingBar-Sponsor-Meta1.png","big_logo":"https://summit-api-dev-assets.nyc3.digitaloceanspaces.com/companies/5/logos/OCP21GLO-SessionBrandingBar-Sponsor-Meta.png","color":"#f0f0ee"},"extra_questions":[],"members":[],"sponsorship":{"id":2069,"widget_title":"","lobby_template":"big-images","expo_hall_template":null,"sponsor_page_template":null,"event_page_template":null,"sponsor_page_use_disqus_widget":false,"sponsor_page_use_live_event_widget":false,"sponsor_page_use_schedule_widget":false,"sponsor_page_use_banner_widget":false,"badge_image":null,"badge_image_alt_text":"","summit_id":69,"order":3,"should_display_on_expo_hall_page":false,"should_display_on_lobby_page":false,"type":{"id":9,"created":1605551482,"last_edited":1605551482,"name":"Silver","label":"Silver","order":9,"size":"Medium"}},"ads":[],"materials":[],"social_networks":[]},{"id":594,"created":1763052722,"last_edited":1763052722,"order":91,"summit_id":69,"is_published":true,"side_image":null,"header_image":null,"header_image_mobile":null,"carousel_advertise_image":null,"marquee":null,"intro":null,"external_link":null,"video_link":null,"chat_link":null,"featured_event_id":0,"header_image_alt_text":null,"side_image_alt_text":null,"header_image_mobile_alt_text":null,"carousel_advertise_image_alt_text":null,"show_logo_in_event_page":true,"lead_report_setting_id":0,"sponsorservices_statistics_id":0,"company":{"id":1630,"created":1654774418,"last_edited":1654774418,"name":"HHP Associates","url":null,"url_segment":null,"city":null,"state":null,"country":null,"description":null,"industry":null,"contributions":null,"member_level":null,"overview":null,"products":null,"commitment":null,"commitment_author":null,"logo":null,"big_logo":null,"color":"#f0f0ee"},"extra_questions":[],"members":[],"sponsorship":{"id":2067,"widget_title":"","lobby_template":null,"expo_hall_template":null,"sponsor_page_template":null,"event_page_template":null,"sponsor_page_use_disqus_widget":false,"sponsor_page_use_live_event_widget":false,"sponsor_page_use_schedule_widget":false,"sponsor_page_use_banner_widget":false,"badge_image":"https://summit-api-dev-assets.nyc3.digitaloceanspaces.com/summits/69/summit_sponsorship_types/2067/AJ-Digital-Camera1.svg","badge_image_alt_text":"","summit_id":69,"order":1,"should_display_on_expo_hall_page":false,"should_display_on_lobby_page":false,"type":{"id":27,"created":1757949806,"last_edited":1757949806,"name":"OCP Booth Sponsor","label":"OCP Booth Sponsor","order":26,"size":"Small"}},"ads":[],"materials":[],"social_networks":[]},{"id":597,"created":1764098071,"last_edited":1764098071,"order":92,"summit_id":69,"is_published":true,"side_image":null,"header_image":null,"header_image_mobile":null,"carousel_advertise_image":null,"marquee":null,"intro":null,"external_link":null,"video_link":null,"chat_link":null,"featured_event_id":0,"header_image_alt_text":null,"side_image_alt_text":null,"header_image_mobile_alt_text":null,"carousel_advertise_image_alt_text":null,"show_logo_in_event_page":true,"lead_report_setting_id":0,"sponsorservices_statistics_id":0,"company":{"id":1,"created":1579886208,"last_edited":1579886208,"name":"Intel Corporation","url":"","url_segment":null,"city":"","state":"","country":"","description":"","industry":"","contributions":"","member_level":"None","overview":"","products":"","commitment":"","commitment_author":"","logo":"https://summit-api-dev-assets.nyc3.digitaloceanspaces.com/companies/1/logos/OCP21GLO-SessionBrandingBar-Sponsor-Intel2.png","big_logo":"https://summit-api-dev-assets.nyc3.digitaloceanspaces.com/companies/1/logos/OCP21GLO-SessionBrandingBar-Sponsor-Intel3.png","color":"#f0f0ee"},"extra_questions":[],"members":[],"sponsorship":{"id":2073,"widget_title":"","lobby_template":null,"expo_hall_template":null,"sponsor_page_template":null,"event_page_template":"big-images","sponsor_page_use_disqus_widget":false,"sponsor_page_use_live_event_widget":true,"sponsor_page_use_schedule_widget":false,"sponsor_page_use_banner_widget":false,"badge_image":"https://summit-api-dev-assets.nyc3.digitaloceanspaces.com/summits/69/summit_sponsorship_types/2073/wireless1.svg","badge_image_alt_text":"","summit_id":69,"order":5,"should_display_on_expo_hall_page":true,"should_display_on_lobby_page":true,"type":{"id":13,"created":1610061803,"last_edited":1610061803,"name":"Middle-Tier","label":"Middle-Tier","order":13,"size":"Medium"}},"ads":[],"materials":[],"social_networks":[]},{"id":598,"created":1764098142,"last_edited":1764098142,"order":93,"summit_id":69,"is_published":true,"side_image":null,"header_image":null,"header_image_mobile":null,"carousel_advertise_image":null,"marquee":null,"intro":null,"external_link":null,"video_link":null,"chat_link":null,"featured_event_id":0,"header_image_alt_text":null,"side_image_alt_text":null,"header_image_mobile_alt_text":null,"carousel_advertise_image_alt_text":null,"show_logo_in_event_page":true,"lead_report_setting_id":0,"sponsorservices_statistics_id":0,"company":{"id":28,"created":1610646606,"last_edited":1610646606,"name":"DVC","url":"","url_segment":null,"city":"","state":"","country":"","description":"","industry":"","contributions":"","member_level":"None","overview":"","products":"","commitment":"","commitment_author":"","logo":"https://summit-api-dev-assets.nyc3.digitaloceanspaces.com/companies/28/logos/DVC-LOGO-968X968.png","big_logo":null,"color":"#DADADA"},"extra_questions":[],"members":[],"sponsorship":{"id":2075,"widget_title":"","lobby_template":null,"expo_hall_template":null,"sponsor_page_template":null,"event_page_template":null,"sponsor_page_use_disqus_widget":false,"sponsor_page_use_live_event_widget":false,"sponsor_page_use_schedule_widget":false,"sponsor_page_use_banner_widget":false,"badge_image":null,"badge_image_alt_text":"","summit_id":69,"order":7,"should_display_on_expo_hall_page":false,"should_display_on_lobby_page":false,"type":{"id":21,"created":1631654227,"last_edited":1631654227,"name":"Nonprofit","label":"Nonprofit","order":21,"size":"Small"}},"ads":[],"materials":[],"social_networks":[]},{"id":599,"created":1764098987,"last_edited":1764098987,"order":94,"summit_id":69,"is_published":true,"side_image":null,"header_image":null,"header_image_mobile":null,"carousel_advertise_image":null,"marquee":null,"intro":null,"external_link":null,"video_link":null,"chat_link":null,"featured_event_id":0,"header_image_alt_text":null,"side_image_alt_text":null,"header_image_mobile_alt_text":null,"carousel_advertise_image_alt_text":null,"show_logo_in_event_page":true,"lead_report_setting_id":0,"sponsorservices_statistics_id":0,"company":{"id":8,"created":1603222234,"last_edited":1603222234,"name":"Z by HP","url":"","url_segment":null,"city":"","state":"","country":"","description":"","industry":"","contributions":"","member_level":"None","overview":"","products":"","commitment":"","commitment_author":"","logo":"https://summit-api-dev-assets.nyc3.digitaloceanspaces.com/companies/8/logos/IF2020-ZbyHP-Presentedby-Logo.png","big_logo":"https://summit-api-dev-assets.nyc3.digitaloceanspaces.com/companies/8/logos/IF2020-ZbyHP-Presentedby-Logo1.png","color":"#f0f0ee"},"extra_questions":[],"members":[],"sponsorship":{"id":2068,"widget_title":"title it","lobby_template":"big-images","expo_hall_template":"big-images","sponsor_page_template":"big-header","event_page_template":"big-images","sponsor_page_use_disqus_widget":false,"sponsor_page_use_live_event_widget":true,"sponsor_page_use_schedule_widget":true,"sponsor_page_use_banner_widget":true,"badge_image":"https://summit-api-dev-assets.nyc3.digitaloceanspaces.com/summits/69/summit_sponsorship_types/2068/copyleft.svg","badge_image_alt_text":"tttest","summit_id":69,"order":2,"should_display_on_expo_hall_page":true,"should_display_on_lobby_page":true,"type":{"id":3,"created":1579890943,"last_edited":1765296260,"name":"Gold","label":"Label this up!","order":3,"size":"Small"}},"ads":[],"materials":[],"social_networks":[]},{"id":600,"created":1764099056,"last_edited":1764099056,"order":95,"summit_id":69,"is_published":true,"side_image":null,"header_image":null,"header_image_mobile":null,"carousel_advertise_image":null,"marquee":null,"intro":null,"external_link":null,"video_link":null,"chat_link":null,"featured_event_id":0,"header_image_alt_text":null,"side_image_alt_text":null,"header_image_mobile_alt_text":null,"carousel_advertise_image_alt_text":null,"show_logo_in_event_page":true,"lead_report_setting_id":0,"sponsorservices_statistics_id":0,"company":{"id":2227,"created":1654774481,"last_edited":1654774481,"name":"Metamako","url":null,"url_segment":null,"city":null,"state":null,"country":null,"description":null,"industry":null,"contributions":null,"member_level":null,"overview":null,"products":null,"commitment":null,"commitment_author":null,"logo":null,"big_logo":null,"color":"#f0f0ee"},"extra_questions":[],"members":[],"sponsorship":{"id":2085,"widget_title":"aaaa","lobby_template":"small-images","expo_hall_template":"big-images","sponsor_page_template":"big-header","event_page_template":null,"sponsor_page_use_disqus_widget":false,"sponsor_page_use_live_event_widget":false,"sponsor_page_use_schedule_widget":false,"sponsor_page_use_banner_widget":false,"badge_image":null,"badge_image_alt_text":"","summit_id":69,"order":12,"should_display_on_expo_hall_page":false,"should_display_on_lobby_page":false,"type":{"id":1,"created":1578940843,"last_edited":1578940843,"name":"Jacki","label":"Company","order":1,"size":"Small"}},"ads":[],"materials":[],"social_networks":[]},{"id":601,"created":1764099282,"last_edited":1764099282,"order":96,"summit_id":69,"is_published":true,"side_image":null,"header_image":null,"header_image_mobile":null,"carousel_advertise_image":null,"marquee":null,"intro":null,"external_link":null,"video_link":null,"chat_link":null,"featured_event_id":0,"header_image_alt_text":null,"side_image_alt_text":null,"header_image_mobile_alt_text":null,"carousel_advertise_image_alt_text":null,"show_logo_in_event_page":true,"lead_report_setting_id":0,"sponsorservices_statistics_id":0,"company":{"id":3880,"created":1654774584,"last_edited":1654774584,"name":"World Wide Technology (WWT)","url":null,"url_segment":null,"city":null,"state":null,"country":null,"description":null,"industry":null,"contributions":null,"member_level":null,"overview":null,"products":null,"commitment":null,"commitment_author":null,"logo":null,"big_logo":null,"color":"#f0f0ee"},"extra_questions":[],"members":[],"sponsorship":{"id":2067,"widget_title":"","lobby_template":null,"expo_hall_template":null,"sponsor_page_template":null,"event_page_template":null,"sponsor_page_use_disqus_widget":false,"sponsor_page_use_live_event_widget":false,"sponsor_page_use_schedule_widget":false,"sponsor_page_use_banner_widget":false,"badge_image":"https://summit-api-dev-assets.nyc3.digitaloceanspaces.com/summits/69/summit_sponsorship_types/2067/AJ-Digital-Camera1.svg","badge_image_alt_text":"","summit_id":69,"order":1,"should_display_on_expo_hall_page":false,"should_display_on_lobby_page":false,"type":{"id":27,"created":1757949806,"last_edited":1757949806,"name":"OCP Booth Sponsor","label":"OCP Booth Sponsor","order":26,"size":"Small"}},"ads":[],"materials":[],"social_networks":[]},{"id":602,"created":1764099341,"last_edited":1764099341,"order":97,"summit_id":69,"is_published":true,"side_image":null,"header_image":null,"header_image_mobile":null,"carousel_advertise_image":null,"marquee":null,"intro":null,"external_link":null,"video_link":null,"chat_link":null,"featured_event_id":0,"header_image_alt_text":null,"side_image_alt_text":null,"header_image_mobile_alt_text":null,"carousel_advertise_image_alt_text":null,"show_logo_in_event_page":true,"lead_report_setting_id":0,"sponsorservices_statistics_id":0,"company":{"id":3475,"created":1654774566,"last_edited":1654774566,"name":"theNETsalad.com","url":null,"url_segment":null,"city":null,"state":null,"country":null,"description":null,"industry":null,"contributions":null,"member_level":null,"overview":null,"products":null,"commitment":null,"commitment_author":null,"logo":null,"big_logo":null,"color":"#f0f0ee"},"extra_questions":[],"members":[],"sponsorship":{"id":2079,"widget_title":"","lobby_template":null,"expo_hall_template":null,"sponsor_page_template":null,"event_page_template":null,"sponsor_page_use_disqus_widget":false,"sponsor_page_use_live_event_widget":false,"sponsor_page_use_schedule_widget":false,"sponsor_page_use_banner_widget":false,"badge_image":null,"badge_image_alt_text":"","summit_id":69,"order":11,"should_display_on_expo_hall_page":false,"should_display_on_lobby_page":false,"type":{"id":11,"created":1610061261,"last_edited":1610061261,"name":"Demo-Tier","label":"Demo-Tier","order":11,"size":"Small"}},"ads":[],"materials":[],"social_networks":[]},{"id":604,"created":1764475089,"last_edited":1764475089,"order":98,"summit_id":69,"is_published":true,"side_image":null,"header_image":null,"header_image_mobile":null,"carousel_advertise_image":null,"marquee":null,"intro":null,"external_link":null,"video_link":null,"chat_link":null,"featured_event_id":0,"header_image_alt_text":null,"side_image_alt_text":null,"header_image_mobile_alt_text":null,"carousel_advertise_image_alt_text":null,"show_logo_in_event_page":true,"lead_report_setting_id":0,"sponsorservices_statistics_id":0,"sponsorship_id":0,"company":{"id":171,"created":1654774343,"last_edited":1654774343,"name":"AC Photonics, Inc","url":null,"url_segment":null,"city":null,"state":null,"country":null,"description":null,"industry":null,"contributions":null,"member_level":null,"overview":null,"products":null,"commitment":null,"commitment_author":null,"logo":null,"big_logo":null,"color":"#f0f0ee"},"extra_questions":[],"members":[],"ads":[],"materials":[],"social_networks":[]},{"id":609,"created":1765485594,"last_edited":1765485594,"order":99,"summit_id":69,"is_published":true,"side_image":null,"header_image":null,"header_image_mobile":null,"carousel_advertise_image":null,"marquee":null,"intro":null,"external_link":null,"video_link":null,"chat_link":null,"featured_event_id":0,"header_image_alt_text":null,"side_image_alt_text":null,"header_image_mobile_alt_text":null,"carousel_advertise_image_alt_text":null,"show_logo_in_event_page":true,"lead_report_setting_id":0,"sponsorservices_statistics_id":0,"company":{"id":6,"created":1600118396,"last_edited":1600118396,"name":"FNtest","url":null,"url_segment":null,"city":null,"state":null,"country":null,"description":null,"industry":null,"contributions":null,"member_level":"None","overview":null,"products":null,"commitment":null,"commitment_author":null,"logo":null,"big_logo":null,"color":"#f0f0ee"},"extra_questions":[],"members":[],"sponsorship":{"id":2070,"widget_title":"","lobby_template":"big-images","expo_hall_template":"medium-images","sponsor_page_template":"big-header","event_page_template":"horizontal-images","sponsor_page_use_disqus_widget":true,"sponsor_page_use_live_event_widget":false,"sponsor_page_use_schedule_widget":false,"sponsor_page_use_banner_widget":false,"badge_image":null,"badge_image_alt_text":"","summit_id":69,"order":4,"should_display_on_expo_hall_page":false,"should_display_on_lobby_page":false,"type":{"id":7,"created":1603222098,"last_edited":1603222098,"name":"Co-Presenting","label":"Co-Presenting","order":7,"size":"Medium"}},"ads":[],"materials":[],"social_networks":[]},{"id":655,"created":1770834703,"last_edited":1774969935,"order":100,"summit_id":69,"is_published":true,"side_image":null,"header_image":null,"header_image_mobile":null,"carousel_advertise_image":null,"marquee":null,"intro":null,"external_link":null,"video_link":null,"chat_link":null,"featured_event_id":0,"header_image_alt_text":null,"side_image_alt_text":null,"header_image_mobile_alt_text":null,"carousel_advertise_image_alt_text":null,"show_logo_in_event_page":true,"lead_report_setting_id":0,"sponsorservices_statistics_id":0,"company":{"id":3496,"created":1654774567,"last_edited":1654774567,"name":"Tipit","url":null,"url_segment":null,"city":null,"state":null,"country":null,"description":null,"industry":null,"contributions":null,"member_level":null,"overview":null,"products":null,"commitment":null,"commitment_author":null,"logo":null,"big_logo":null,"color":"#f0f0ee"},"extra_questions":[],"members":[30927],"sponsorship":{"id":2069,"widget_title":"","lobby_template":"big-images","expo_hall_template":null,"sponsor_page_template":null,"event_page_template":null,"sponsor_page_use_disqus_widget":false,"sponsor_page_use_live_event_widget":false,"sponsor_page_use_schedule_widget":false,"sponsor_page_use_banner_widget":false,"badge_image":null,"badge_image_alt_text":"","summit_id":69,"order":3,"should_display_on_expo_hall_page":false,"should_display_on_lobby_page":false,"type":{"id":9,"created":1605551482,"last_edited":1605551482,"name":"Silver","label":"Silver","order":9,"size":"Medium"}},"ads":[],"materials":[],"social_networks":[]},{"id":680,"created":1771874087,"last_edited":1771874087,"order":101,"summit_id":69,"is_published":true,"side_image":null,"header_image":null,"header_image_mobile":null,"carousel_advertise_image":null,"marquee":null,"intro":null,"external_link":null,"video_link":null,"chat_link":null,"featured_event_id":0,"header_image_alt_text":null,"side_image_alt_text":null,"header_image_mobile_alt_text":null,"carousel_advertise_image_alt_text":null,"show_logo_in_event_page":true,"lead_report_setting_id":0,"sponsorservices_statistics_id":0,"company":{"id":5279,"created":1771859800,"last_edited":1771859800,"name":"Exomindset","url":"","url_segment":null,"city":"","state":"","country":"","description":"<p>tsa</p>","industry":"","contributions":"","member_level":"Gold","overview":"<p>tsa</p>","products":"","commitment":"<p>tas</p>","commitment_author":"","logo":null,"big_logo":null,"color":"#DADADA"},"extra_questions":[],"members":[],"sponsorship":{"id":2067,"widget_title":"","lobby_template":null,"expo_hall_template":null,"sponsor_page_template":null,"event_page_template":null,"sponsor_page_use_disqus_widget":false,"sponsor_page_use_live_event_widget":false,"sponsor_page_use_schedule_widget":false,"sponsor_page_use_banner_widget":false,"badge_image":"https://summit-api-dev-assets.nyc3.digitaloceanspaces.com/summits/69/summit_sponsorship_types/2067/AJ-Digital-Camera1.svg","badge_image_alt_text":"","summit_id":69,"order":1,"should_display_on_expo_hall_page":false,"should_display_on_lobby_page":false,"type":{"id":27,"created":1757949806,"last_edited":1757949806,"name":"OCP Booth Sponsor","label":"OCP Booth Sponsor","order":26,"size":"Small"}},"ads":[],"materials":[],"social_networks":[]},{"id":713,"created":1774656530,"last_edited":1774656530,"order":102,"summit_id":69,"is_published":true,"side_image":null,"header_image":null,"header_image_mobile":null,"carousel_advertise_image":null,"marquee":null,"intro":null,"external_link":null,"video_link":null,"chat_link":null,"featured_event_id":0,"header_image_alt_text":null,"side_image_alt_text":null,"header_image_mobile_alt_text":null,"carousel_advertise_image_alt_text":null,"show_logo_in_event_page":true,"lead_report_setting_id":0,"sponsorservices_statistics_id":0,"company":{"id":218,"created":1654774344,"last_edited":1654774344,"name":"Advanced Semiconductor Engineering (ASE)","url":null,"url_segment":null,"city":null,"state":null,"country":null,"description":null,"industry":null,"contributions":null,"member_level":null,"overview":null,"products":null,"commitment":null,"commitment_author":null,"logo":null,"big_logo":null,"color":"#f0f0ee"},"extra_questions":[],"members":[],"sponsorship":{"id":2068,"widget_title":"title it","lobby_template":"big-images","expo_hall_template":"big-images","sponsor_page_template":"big-header","event_page_template":"big-images","sponsor_page_use_disqus_widget":false,"sponsor_page_use_live_event_widget":true,"sponsor_page_use_schedule_widget":true,"sponsor_page_use_banner_widget":true,"badge_image":"https://summit-api-dev-assets.nyc3.digitaloceanspaces.com/summits/69/summit_sponsorship_types/2068/copyleft.svg","badge_image_alt_text":"tttest","summit_id":69,"order":2,"should_display_on_expo_hall_page":true,"should_display_on_lobby_page":true,"type":{"id":3,"created":1579890943,"last_edited":1765296260,"name":"Gold","label":"Label this up!","order":3,"size":"Small"}},"ads":[],"materials":[],"social_networks":[]},{"id":737,"created":1777301052,"last_edited":1777301052,"order":103,"summit_id":69,"is_published":true,"side_image":null,"header_image":null,"header_image_mobile":null,"carousel_advertise_image":null,"marquee":null,"intro":null,"external_link":null,"video_link":null,"chat_link":null,"featured_event_id":0,"header_image_alt_text":null,"side_image_alt_text":null,"header_image_mobile_alt_text":null,"carousel_advertise_image_alt_text":null,"show_logo_in_event_page":true,"lead_report_setting_id":0,"sponsorservices_statistics_id":0,"company":{"id":2569,"created":1654774524,"last_edited":1654774524,"name":"Open Technologies","url":"","url_segment":null,"city":"","state":"","country":"","description":"","industry":"","contributions":"","member_level":"None","overview":"","products":"","commitment":"","commitment_author":"","logo":"https://summit-api-dev-assets.nyc3.digitaloceanspaces.com/companies/2569/logos/logo-top-tier-opentech.png","big_logo":null,"color":"#f0f0ee"},"extra_questions":[],"members":[],"sponsorship":{"id":2089,"widget_title":"","lobby_template":"big-images","expo_hall_template":null,"sponsor_page_template":null,"event_page_template":null,"sponsor_page_use_disqus_widget":false,"sponsor_page_use_live_event_widget":true,"sponsor_page_use_schedule_widget":false,"sponsor_page_use_banner_widget":false,"badge_image":null,"badge_image_alt_text":"","summit_id":69,"order":15,"should_display_on_expo_hall_page":true,"should_display_on_lobby_page":false,"type":{"id":10,"created":1605551532,"last_edited":1776913117,"name":"Bronze","label":"Bronze","order":10,"size":"Small"}},"ads":[],"materials":[],"social_networks":[]}]
|
|
1
|
+
[{"id":533,"created":1754503947,"last_edited":1755716348,"order":1,"summit_id":69,"is_published":true,"side_image":null,"header_image":null,"header_image_mobile":null,"carousel_advertise_image":null,"marquee":"","intro":"","external_link":"","video_link":"","chat_link":"","featured_event_id":0,"header_image_alt_text":"","side_image_alt_text":"","header_image_mobile_alt_text":"","carousel_advertise_image_alt_text":"","show_logo_in_event_page":true,"lead_report_setting_id":6,"company":{"id":1,"created":1579886208,"last_edited":1579886208,"name":"Intel Corporation","url":"","url_segment":null,"city":"","state":"","country":"","description":"","industry":"","contributions":"","member_level":"None","overview":"","products":"","commitment":"","commitment_author":"","logo":"https://summit-api-dev-assets.nyc3.digitaloceanspaces.com/companies/1/logos/OCP21GLO-SessionBrandingBar-Sponsor-Intel2.png","big_logo":"https://summit-api-dev-assets.nyc3.digitaloceanspaces.com/companies/1/logos/OCP21GLO-SessionBrandingBar-Sponsor-Intel3.png","color":"#f0f0ee"},"extra_questions":[763],"members":[],"sponsorship":{"id":2072,"widget_title":"","lobby_template":null,"expo_hall_template":null,"sponsor_page_template":null,"event_page_template":null,"sponsor_page_use_disqus_widget":false,"sponsor_page_use_live_event_widget":false,"sponsor_page_use_schedule_widget":false,"sponsor_page_use_banner_widget":false,"badge_image":null,"badge_image_alt_text":"","summit_id":69,"order":3,"should_display_on_expo_hall_page":false,"should_display_on_lobby_page":false,"type":{"id":9,"created":1605551482,"last_edited":1605551482,"name":"Silver","label":"Silver","order":9,"size":"Medium"}},"ads":[],"materials":[],"social_networks":[]},{"id":543,"created":1754667572,"last_edited":1754667572,"order":2,"summit_id":69,"is_published":true,"side_image":null,"header_image":null,"header_image_mobile":null,"carousel_advertise_image":null,"marquee":null,"intro":null,"external_link":null,"video_link":null,"chat_link":null,"featured_event_id":0,"header_image_alt_text":null,"side_image_alt_text":null,"header_image_mobile_alt_text":null,"carousel_advertise_image_alt_text":null,"show_logo_in_event_page":true,"lead_report_setting_id":0,"company":{"id":3,"created":1580138376,"last_edited":1580138376,"name":"Tipit , LLC","url":null,"url_segment":null,"city":null,"state":null,"country":null,"description":null,"industry":null,"contributions":null,"member_level":"None","overview":null,"products":null,"commitment":null,"commitment_author":null,"logo":null,"big_logo":null,"color":"#f0f0ee"},"extra_questions":[],"members":[],"sponsorship":{"id":2071,"widget_title":"test","lobby_template":"small-images","expo_hall_template":"big-images","sponsor_page_template":"big-header","event_page_template":"big-images","sponsor_page_use_disqus_widget":true,"sponsor_page_use_live_event_widget":true,"sponsor_page_use_schedule_widget":false,"sponsor_page_use_banner_widget":false,"badge_image":null,"badge_image_alt_text":"","summit_id":69,"order":2,"should_display_on_expo_hall_page":true,"should_display_on_lobby_page":true,"type":{"id":3,"created":1579890943,"last_edited":1579890943,"name":"Gold","label":"not sure??","order":3,"size":"Medium"}},"ads":[],"materials":[],"social_networks":[]},{"id":564,"created":1755645526,"last_edited":1755645526,"order":3,"summit_id":69,"is_published":true,"side_image":null,"header_image":null,"header_image_mobile":null,"carousel_advertise_image":null,"marquee":null,"intro":null,"external_link":null,"video_link":null,"chat_link":null,"featured_event_id":0,"header_image_alt_text":null,"side_image_alt_text":null,"header_image_mobile_alt_text":null,"carousel_advertise_image_alt_text":null,"show_logo_in_event_page":true,"lead_report_setting_id":0,"company":{"id":4,"created":1582745992,"last_edited":1582745992,"name":"FNTECH","url":"","url_segment":null,"city":"","state":"","country":"","description":"","industry":"","contributions":"","member_level":"None","overview":"","products":"","commitment":"","commitment_author":"","logo":"https://summit-api-dev-assets.nyc3.digitaloceanspaces.com/companies/4/logos/FNTECH-BLK-logo-rgb-1-color-white-720px2.png","big_logo":"https://summit-api-dev-assets.nyc3.digitaloceanspaces.com/companies/4/logos/FNTECH-BLK-logo-rgb-1-color-white-720px3.png","color":"#f0f0ee"},"extra_questions":[],"members":[],"sponsorship":{"id":2071,"widget_title":"test","lobby_template":"small-images","expo_hall_template":"big-images","sponsor_page_template":"big-header","event_page_template":"big-images","sponsor_page_use_disqus_widget":true,"sponsor_page_use_live_event_widget":true,"sponsor_page_use_schedule_widget":false,"sponsor_page_use_banner_widget":false,"badge_image":null,"badge_image_alt_text":"","summit_id":69,"order":2,"should_display_on_expo_hall_page":true,"should_display_on_lobby_page":true,"type":{"id":3,"created":1579890943,"last_edited":1579890943,"name":"Gold","label":"not sure??","order":3,"size":"Medium"}},"ads":[],"materials":[],"social_networks":[]},{"id":565,"created":1755716372,"last_edited":1755716401,"order":4,"summit_id":69,"is_published":true,"side_image":null,"header_image":null,"header_image_mobile":null,"carousel_advertise_image":null,"marquee":null,"intro":null,"external_link":null,"video_link":null,"chat_link":null,"featured_event_id":0,"header_image_alt_text":null,"side_image_alt_text":null,"header_image_mobile_alt_text":null,"carousel_advertise_image_alt_text":null,"show_logo_in_event_page":true,"lead_report_setting_id":0,"company":{"id":5,"created":1594672447,"last_edited":1594672447,"name":"Meta","url":"","url_segment":null,"city":"","state":"","country":"","description":"","industry":"","contributions":"","member_level":"None","overview":"","products":"","commitment":"","commitment_author":"","logo":"https://summit-api-dev-assets.nyc3.digitaloceanspaces.com/companies/5/logos/OCP21GLO-SessionBrandingBar-Sponsor-Meta1.png","big_logo":"https://summit-api-dev-assets.nyc3.digitaloceanspaces.com/companies/5/logos/OCP21GLO-SessionBrandingBar-Sponsor-Meta.png","color":"#f0f0ee"},"extra_questions":[],"members":[36416],"sponsorship":{"id":2073,"widget_title":"","lobby_template":null,"expo_hall_template":null,"sponsor_page_template":null,"event_page_template":null,"sponsor_page_use_disqus_widget":false,"sponsor_page_use_live_event_widget":false,"sponsor_page_use_schedule_widget":false,"sponsor_page_use_banner_widget":false,"badge_image":null,"badge_image_alt_text":"","summit_id":69,"order":1,"should_display_on_expo_hall_page":false,"should_display_on_lobby_page":false,"type":{"id":2,"created":1579287407,"last_edited":1579287407,"name":"Diamond","label":"20 x 20 booth","order":2,"size":"Medium"}},"ads":[],"materials":[],"social_networks":[]},{"id":566,"created":1755717072,"last_edited":1755717072,"order":5,"summit_id":69,"is_published":true,"side_image":null,"header_image":null,"header_image_mobile":null,"carousel_advertise_image":null,"marquee":null,"intro":null,"external_link":null,"video_link":null,"chat_link":null,"featured_event_id":0,"header_image_alt_text":null,"side_image_alt_text":null,"header_image_mobile_alt_text":null,"carousel_advertise_image_alt_text":null,"show_logo_in_event_page":true,"lead_report_setting_id":0,"company":{"id":11,"created":1603222606,"last_edited":1603222606,"name":"FakeCo","url":null,"url_segment":null,"city":null,"state":null,"country":null,"description":null,"industry":null,"contributions":null,"member_level":null,"overview":null,"products":null,"commitment":null,"commitment_author":null,"logo":null,"big_logo":null,"color":"#f0f0ee"},"extra_questions":[],"members":[],"sponsorship":{"id":2071,"widget_title":"test","lobby_template":"small-images","expo_hall_template":"big-images","sponsor_page_template":"big-header","event_page_template":"big-images","sponsor_page_use_disqus_widget":true,"sponsor_page_use_live_event_widget":true,"sponsor_page_use_schedule_widget":false,"sponsor_page_use_banner_widget":false,"badge_image":null,"badge_image_alt_text":"","summit_id":69,"order":2,"should_display_on_expo_hall_page":true,"should_display_on_lobby_page":true,"type":{"id":3,"created":1579890943,"last_edited":1579890943,"name":"Gold","label":"not sure??","order":3,"size":"Medium"}},"ads":[],"materials":[],"social_networks":[]},{"id":567,"created":1755717143,"last_edited":1755717143,"order":6,"summit_id":69,"is_published":true,"side_image":null,"header_image":null,"header_image_mobile":null,"carousel_advertise_image":null,"marquee":null,"intro":null,"external_link":null,"video_link":null,"chat_link":null,"featured_event_id":0,"header_image_alt_text":null,"side_image_alt_text":null,"header_image_mobile_alt_text":null,"carousel_advertise_image_alt_text":null,"show_logo_in_event_page":true,"lead_report_setting_id":0,"company":{"id":12,"created":1603223078,"last_edited":1603223078,"name":"Phase Two","url":"","url_segment":null,"city":"","state":"","country":"","description":"","industry":"","contributions":"","member_level":"None","overview":"","products":"","commitment":"","commitment_author":"","logo":"https://summit-api-dev-assets.nyc3.digitaloceanspaces.com/companies/12/logos/IF2020-Phasetwo-Presentedby-Logo.png","big_logo":"https://summit-api-dev-assets.nyc3.digitaloceanspaces.com/companies/12/logos/IF2020-Phasetwo-Presentedby-Logo1.png","color":"#f0f0ee"},"extra_questions":[],"members":[],"sponsorship":{"id":2071,"widget_title":"test","lobby_template":"small-images","expo_hall_template":"big-images","sponsor_page_template":"big-header","event_page_template":"big-images","sponsor_page_use_disqus_widget":true,"sponsor_page_use_live_event_widget":true,"sponsor_page_use_schedule_widget":false,"sponsor_page_use_banner_widget":false,"badge_image":null,"badge_image_alt_text":"","summit_id":69,"order":2,"should_display_on_expo_hall_page":true,"should_display_on_lobby_page":true,"type":{"id":3,"created":1579890943,"last_edited":1579890943,"name":"Gold","label":"not sure??","order":3,"size":"Medium"}},"ads":[],"materials":[],"social_networks":[]},{"id":568,"created":1755717768,"last_edited":1755717768,"order":7,"summit_id":69,"is_published":true,"side_image":null,"header_image":null,"header_image_mobile":null,"carousel_advertise_image":null,"marquee":null,"intro":null,"external_link":null,"video_link":null,"chat_link":null,"featured_event_id":0,"header_image_alt_text":null,"side_image_alt_text":null,"header_image_mobile_alt_text":null,"carousel_advertise_image_alt_text":null,"show_logo_in_event_page":true,"lead_report_setting_id":0,"company":{"id":6,"created":1600118396,"last_edited":1600118396,"name":"FNtest","url":null,"url_segment":null,"city":null,"state":null,"country":null,"description":null,"industry":null,"contributions":null,"member_level":"None","overview":null,"products":null,"commitment":null,"commitment_author":null,"logo":null,"big_logo":null,"color":"#f0f0ee"},"extra_questions":[],"members":[],"sponsorship":{"id":2076,"widget_title":"test2","lobby_template":"carousel","expo_hall_template":null,"sponsor_page_template":null,"event_page_template":null,"sponsor_page_use_disqus_widget":false,"sponsor_page_use_live_event_widget":false,"sponsor_page_use_schedule_widget":false,"sponsor_page_use_banner_widget":false,"badge_image":null,"badge_image_alt_text":"","summit_id":69,"order":7,"should_display_on_expo_hall_page":false,"should_display_on_lobby_page":false,"type":{"id":8,"created":1603223268,"last_edited":1603223268,"name":"Featured","label":"Featured","order":8,"size":"Large"}},"ads":[],"materials":[],"social_networks":[]},{"id":569,"created":1755717799,"last_edited":1755717799,"order":8,"summit_id":69,"is_published":true,"side_image":null,"header_image":null,"header_image_mobile":null,"carousel_advertise_image":null,"marquee":null,"intro":null,"external_link":null,"video_link":null,"chat_link":null,"featured_event_id":0,"header_image_alt_text":null,"side_image_alt_text":null,"header_image_mobile_alt_text":null,"carousel_advertise_image_alt_text":null,"show_logo_in_event_page":true,"lead_report_setting_id":0,"company":{"id":13,"created":1603223094,"last_edited":1603223094,"name":"Essentia Water","url":"","url_segment":null,"city":"","state":"","country":"","description":"","industry":"","contributions":"","member_level":"None","overview":"","products":"","commitment":"","commitment_author":"","logo":"https://summit-api-dev-assets.nyc3.digitaloceanspaces.com/companies/13/logos/IF2020-Essentia-Presentedby-Logo-V2.png","big_logo":"https://summit-api-dev-assets.nyc3.digitaloceanspaces.com/companies/13/logos/IF2020-Essentia-Presentedby-Logo-V21.png","color":"#f0f0ee"},"extra_questions":[],"members":[],"sponsorship":{"id":2071,"widget_title":"test","lobby_template":"small-images","expo_hall_template":"big-images","sponsor_page_template":"big-header","event_page_template":"big-images","sponsor_page_use_disqus_widget":true,"sponsor_page_use_live_event_widget":true,"sponsor_page_use_schedule_widget":false,"sponsor_page_use_banner_widget":false,"badge_image":null,"badge_image_alt_text":"","summit_id":69,"order":2,"should_display_on_expo_hall_page":true,"should_display_on_lobby_page":true,"type":{"id":3,"created":1579890943,"last_edited":1579890943,"name":"Gold","label":"not sure??","order":3,"size":"Medium"}},"ads":[],"materials":[],"social_networks":[]},{"id":570,"created":1755717951,"last_edited":1755717951,"order":9,"summit_id":69,"is_published":true,"side_image":null,"header_image":null,"header_image_mobile":null,"carousel_advertise_image":null,"marquee":null,"intro":null,"external_link":null,"video_link":null,"chat_link":null,"featured_event_id":0,"header_image_alt_text":null,"side_image_alt_text":null,"header_image_mobile_alt_text":null,"carousel_advertise_image_alt_text":null,"show_logo_in_event_page":true,"lead_report_setting_id":0,"company":{"id":8,"created":1603222234,"last_edited":1603222234,"name":"Z by HP","url":"","url_segment":null,"city":"","state":"","country":"","description":"","industry":"","contributions":"","member_level":"None","overview":"","products":"","commitment":"","commitment_author":"","logo":"https://summit-api-dev-assets.nyc3.digitaloceanspaces.com/companies/8/logos/IF2020-ZbyHP-Presentedby-Logo.png","big_logo":"https://summit-api-dev-assets.nyc3.digitaloceanspaces.com/companies/8/logos/IF2020-ZbyHP-Presentedby-Logo1.png","color":"#f0f0ee"},"extra_questions":[],"members":[],"sponsorship":{"id":2071,"widget_title":"test","lobby_template":"small-images","expo_hall_template":"big-images","sponsor_page_template":"big-header","event_page_template":"big-images","sponsor_page_use_disqus_widget":true,"sponsor_page_use_live_event_widget":true,"sponsor_page_use_schedule_widget":false,"sponsor_page_use_banner_widget":false,"badge_image":null,"badge_image_alt_text":"","summit_id":69,"order":2,"should_display_on_expo_hall_page":true,"should_display_on_lobby_page":true,"type":{"id":3,"created":1579890943,"last_edited":1579890943,"name":"Gold","label":"not sure??","order":3,"size":"Medium"}},"ads":[],"materials":[],"social_networks":[]},{"id":571,"created":1755717973,"last_edited":1755717973,"order":10,"summit_id":69,"is_published":true,"side_image":null,"header_image":null,"header_image_mobile":null,"carousel_advertise_image":null,"marquee":null,"intro":null,"external_link":null,"video_link":null,"chat_link":null,"featured_event_id":0,"header_image_alt_text":null,"side_image_alt_text":null,"header_image_mobile_alt_text":null,"carousel_advertise_image_alt_text":null,"show_logo_in_event_page":true,"lead_report_setting_id":0,"company":{"id":24,"created":1605551226,"last_edited":1605551226,"name":"Bronze - Lower Tier","url":"","url_segment":null,"city":"","state":"","country":"","description":"","industry":"","contributions":"","member_level":"None","overview":"","products":"","commitment":"","commitment_author":"","logo":null,"big_logo":null,"color":"#DADADA"},"extra_questions":[],"members":[],"sponsorship":{"id":2071,"widget_title":"test","lobby_template":"small-images","expo_hall_template":"big-images","sponsor_page_template":"big-header","event_page_template":"big-images","sponsor_page_use_disqus_widget":true,"sponsor_page_use_live_event_widget":true,"sponsor_page_use_schedule_widget":false,"sponsor_page_use_banner_widget":false,"badge_image":null,"badge_image_alt_text":"","summit_id":69,"order":2,"should_display_on_expo_hall_page":true,"should_display_on_lobby_page":true,"type":{"id":3,"created":1579890943,"last_edited":1579890943,"name":"Gold","label":"not sure??","order":3,"size":"Medium"}},"ads":[],"materials":[],"social_networks":[]},{"id":572,"created":1755717993,"last_edited":1755717993,"order":11,"summit_id":69,"is_published":true,"side_image":null,"header_image":null,"header_image_mobile":null,"carousel_advertise_image":null,"marquee":null,"intro":null,"external_link":null,"video_link":null,"chat_link":null,"featured_event_id":0,"header_image_alt_text":null,"side_image_alt_text":null,"header_image_mobile_alt_text":null,"carousel_advertise_image_alt_text":null,"show_logo_in_event_page":true,"lead_report_setting_id":0,"company":{"id":47,"created":1629851431,"last_edited":1629851431,"name":"BizLink Technology, Inc.","url":"","url_segment":null,"city":"","state":"","country":"","description":"","industry":"","contributions":"","member_level":"None","overview":"","products":"","commitment":"","commitment_author":"","logo":"https://summit-api-dev-assets.nyc3.digitaloceanspaces.com/companies/47/logos/OCP21GLO-SessionBrandingBar-Sponsor-Bizlink.png","big_logo":null,"color":"#DADADA"},"extra_questions":[],"members":[],"sponsorship":{"id":2071,"widget_title":"test","lobby_template":"small-images","expo_hall_template":"big-images","sponsor_page_template":"big-header","event_page_template":"big-images","sponsor_page_use_disqus_widget":true,"sponsor_page_use_live_event_widget":true,"sponsor_page_use_schedule_widget":false,"sponsor_page_use_banner_widget":false,"badge_image":null,"badge_image_alt_text":"","summit_id":69,"order":2,"should_display_on_expo_hall_page":true,"should_display_on_lobby_page":true,"type":{"id":3,"created":1579890943,"last_edited":1579890943,"name":"Gold","label":"not sure??","order":3,"size":"Medium"}},"ads":[],"materials":[],"social_networks":[]},{"id":573,"created":1755718518,"last_edited":1755718518,"order":12,"summit_id":69,"is_published":true,"side_image":null,"header_image":null,"header_image_mobile":null,"carousel_advertise_image":null,"marquee":null,"intro":null,"external_link":null,"video_link":null,"chat_link":null,"featured_event_id":0,"header_image_alt_text":null,"side_image_alt_text":null,"header_image_mobile_alt_text":null,"carousel_advertise_image_alt_text":null,"show_logo_in_event_page":true,"lead_report_setting_id":0,"company":{"id":79,"created":1630351802,"last_edited":1630351802,"name":"Test and Validation","url":"","url_segment":null,"city":"","state":"","country":"","description":"","industry":"","contributions":"","member_level":"None","overview":"","products":"","commitment":"","commitment_author":"","logo":null,"big_logo":null,"color":"#DADADA"},"extra_questions":[],"members":[],"sponsorship":{"id":2083,"widget_title":"test8","lobby_template":"small-images","expo_hall_template":null,"sponsor_page_template":null,"event_page_template":null,"sponsor_page_use_disqus_widget":false,"sponsor_page_use_live_event_widget":false,"sponsor_page_use_schedule_widget":false,"sponsor_page_use_banner_widget":false,"badge_image":null,"badge_image_alt_text":"","summit_id":69,"order":13,"should_display_on_expo_hall_page":false,"should_display_on_lobby_page":false,"type":{"id":19,"created":1630352146,"last_edited":1630352146,"name":"Experience Center","label":"Experience Center","order":19,"size":"Small"}},"ads":[],"materials":[],"social_networks":[]},{"id":574,"created":1755718559,"last_edited":1755718559,"order":13,"summit_id":69,"is_published":true,"side_image":null,"header_image":null,"header_image_mobile":null,"carousel_advertise_image":null,"marquee":null,"intro":null,"external_link":null,"video_link":null,"chat_link":null,"featured_event_id":0,"header_image_alt_text":null,"side_image_alt_text":null,"header_image_mobile_alt_text":null,"carousel_advertise_image_alt_text":null,"show_logo_in_event_page":true,"lead_report_setting_id":0,"company":{"id":10,"created":1603222343,"last_edited":1603222343,"name":"Microsoft","url":"","url_segment":null,"city":"","state":"","country":"","description":"","industry":"","contributions":"","member_level":"None","overview":"","products":"","commitment":"","commitment_author":"","logo":"https://summit-api-dev-assets.nyc3.digitaloceanspaces.com/companies/10/logos/OCP21GLO-SessionBrandingBar-Sponsor-Microsoft1.png","big_logo":"https://summit-api-dev-assets.nyc3.digitaloceanspaces.com/companies/10/logos/OCP21GLO-SessionBrandingBar-Sponsor-Microsoft.png","color":"#f0f0ee"},"extra_questions":[],"members":[],"sponsorship":{"id":2071,"widget_title":"test","lobby_template":"small-images","expo_hall_template":"big-images","sponsor_page_template":"big-header","event_page_template":"big-images","sponsor_page_use_disqus_widget":true,"sponsor_page_use_live_event_widget":true,"sponsor_page_use_schedule_widget":false,"sponsor_page_use_banner_widget":false,"badge_image":null,"badge_image_alt_text":"","summit_id":69,"order":2,"should_display_on_expo_hall_page":true,"should_display_on_lobby_page":true,"type":{"id":3,"created":1579890943,"last_edited":1579890943,"name":"Gold","label":"not sure??","order":3,"size":"Medium"}},"ads":[],"materials":[],"social_networks":[]}]
|
package/src/styles/colors.scss
CHANGED
|
@@ -2,12 +2,12 @@ $color_accent: #8ac82d;
|
|
|
2
2
|
$color_alerts: #ff0000;
|
|
3
3
|
$color_background_light: #ffffff;
|
|
4
4
|
$color_background_dark: #000000;
|
|
5
|
-
$color_button_background_color: #
|
|
6
|
-
$color_button_color: #
|
|
7
|
-
$color_gray_lighter: #
|
|
8
|
-
$color_gray_light: #
|
|
5
|
+
$color_button_background_color: #ffffff;
|
|
6
|
+
$color_button_color: #000000;
|
|
7
|
+
$color_gray_lighter: #f2f2f2;
|
|
8
|
+
$color_gray_light: #dfdfdf;
|
|
9
9
|
$color_gray_dark: #999999;
|
|
10
|
-
$color_gray_darker: #
|
|
10
|
+
$color_gray_darker: #4a4a4a;
|
|
11
11
|
$color_horizontal_rule_light: #e5e5e5;
|
|
12
12
|
$color_horizontal_rule_dark: #7b7b7b;
|
|
13
13
|
$color_icon_light: #ffffff;
|
|
@@ -19,8 +19,8 @@ $color_input_text_color_light: #363636;
|
|
|
19
19
|
$color_input_text_color_dark: #ffffff;
|
|
20
20
|
$color_input_text_color_disabled_light: #ffffff;
|
|
21
21
|
$color_input_text_color_disabled_dark: #ffffff;
|
|
22
|
-
$color_primary: #
|
|
23
|
-
$color_primary_contrast: #
|
|
22
|
+
$color_primary: #8DC63F;
|
|
23
|
+
$color_primary_contrast: #FFFFFF;
|
|
24
24
|
$color_secondary: #26387f;
|
|
25
25
|
$color_secondary_contrast: #005870;
|
|
26
26
|
$color_text_light: #ffffff;
|