Skip to content

Commit c4be1aa

Browse files
authored
Merge pull request #2093 from themeum/dev
3.8.0 Release
2 parents d961669 + b740f13 commit c4be1aa

File tree

183 files changed

+27494
-20074
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

183 files changed

+27494
-20074
lines changed

.babelrc

Lines changed: 0 additions & 8 deletions
This file was deleted.

.gitignore

Lines changed: 10 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -41,10 +41,9 @@ vendor/
4141
yarn.lock
4242
.env
4343
# Ignore Cypress screenshots
44-
cypress/screenshots/
44+
cypress/screenshots/*
4545
# Ignore Cypress fixtures
46-
cypress/fixtures/course.json
47-
cypress/fixtures/assets
46+
cypress/fixtures/*
4847
!cypress/fixtures/assets/tutor_bulk_enrollment_sample.csv
4948
# Ignore specific PNG files
5049
**/beforeEach*.png
@@ -53,4 +52,11 @@ launch.json
5352
/includes/droip
5453

5554
# Copilot Instructions
56-
.github/copilot-instructions.md
55+
.github/copilot-instructions.md
56+
57+
#rspack
58+
.swc
59+
assets/.rsdoctor
60+
61+
*storybook.log
62+
storybook-static

.storybook/main.ts

Lines changed: 54 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,54 @@
1+
import type { StorybookConfig } from 'storybook-react-rsbuild';
2+
3+
const config: StorybookConfig = {
4+
stories: ['../stories/**/*.mdx', '../stories/**/*.stories.@(js|jsx|mjs|ts|tsx)'],
5+
addons: ['@storybook/addon-docs', '@storybook/addon-a11y', '@storybook/addon-themes'],
6+
framework: {
7+
name: 'storybook-react-rsbuild',
8+
options: {},
9+
},
10+
rsbuildFinal: async (rsbuildConfig, { configType }) => {
11+
// Ensure SWC loader uses the Emotion plugin, matching your main Rspack config
12+
const isDevelopment = configType === 'DEVELOPMENT';
13+
14+
rsbuildConfig.tools = rsbuildConfig.tools || {};
15+
rsbuildConfig.tools.swc = {
16+
jsc: {
17+
parser: {
18+
syntax: 'typescript',
19+
tsx: true,
20+
decorators: false,
21+
},
22+
externalHelpers: true,
23+
transform: {
24+
react: {
25+
runtime: 'automatic',
26+
development: isDevelopment,
27+
refresh: false,
28+
importSource: '@emotion/react',
29+
},
30+
},
31+
experimental: {
32+
plugins: [
33+
[
34+
'@swc/plugin-emotion',
35+
{
36+
sourceMap: isDevelopment,
37+
autoLabel: 'dev-only',
38+
labelFormat: '[local]',
39+
cssPropOptimization: true,
40+
},
41+
],
42+
],
43+
},
44+
},
45+
env: {
46+
targets: 'Chrome >= 58, Firefox >= 54, Safari >= 10.1, Edge >= 16',
47+
},
48+
};
49+
50+
return rsbuildConfig;
51+
},
52+
};
53+
54+
export default config;

.storybook/preview.tsx

Lines changed: 42 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,42 @@
1+
import { Global, css } from '@emotion/react';
2+
import { withThemeFromJSXProvider } from '@storybook/addon-themes';
3+
import type { Preview } from '@storybook/react';
4+
5+
import { tutorConfig } from '@TutorShared/config/config';
6+
import { typography } from '@TutorShared/config/typography';
7+
8+
const GlobalStyles = () => (
9+
<Global
10+
styles={css`
11+
*,
12+
*::before,
13+
*::after {
14+
box-sizing: border-box;
15+
}
16+
body {
17+
${typography.body()}
18+
}
19+
`}
20+
/>
21+
);
22+
23+
tutorConfig.tutor_url = tutorConfig.tutor_url || `${process.env.CYPRESS_base_url}/wp-content/plugins/tutor`;
24+
25+
const preview: Preview = {
26+
parameters: {
27+
controls: {
28+
matchers: {
29+
color: /(background|color)$/i,
30+
date: /Date$/i,
31+
},
32+
},
33+
},
34+
35+
decorators: [
36+
withThemeFromJSXProvider({
37+
GlobalStyles,
38+
}),
39+
],
40+
};
41+
42+
export default preview;

assets/fonts/tutor-v2.woff

340 Bytes
Binary file not shown.

assets/icons/course.svg

Lines changed: 5 additions & 0 deletions
Loading

assets/icons/gift.svg

Lines changed: 5 additions & 0 deletions
Loading

assets/images/tutor-logo.png

-1.68 KB
Loading

assets/react/admin-dashboard/segments/options.js

Lines changed: 14 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -435,24 +435,26 @@ document.addEventListener('DOMContentLoaded', function () {
435435
* On toggle switch change - show, hide setting's elements
436436
* @since 2.1.9
437437
*/
438-
function showHideToggleChildren(el) {
439-
let isChecked = el.is(':checked')
440-
let fields = el.data('toggle-fields').split(',')
438+
function showHideToggleChildren(inputSwitchElement) {
439+
let isChecked = inputSwitchElement.is(':checked')
440+
let fields = inputSwitchElement.data('toggle-fields').split(',')
441441
if (Array.isArray(fields) === false || fields.length === 0) return
442442

443443
fields = fields.map(s => s.trim());
444444
isChecked
445-
? fields.forEach((f) => $('#field_' + f).removeClass('tutor-hide-option'))
446-
: fields.forEach((f) => $('#field_' + f).addClass('tutor-hide-option'))
447-
448-
let toggleWrapper = el.parent().parent().parent()
449-
let sectionWrapper = el.parent().parent().parent().parent()
450-
let visibleElements = sectionWrapper.find('.tutor-option-field-row').not('div.tutor-hide-option').length
445+
? fields.forEach((f) => $(`#field_${f}`).removeClass('tutor-hide-option'))
446+
: fields.forEach((f) => $(`#field_${f}`).addClass('tutor-hide-option'))
451447

452-
visibleElements === 1
453-
? toggleWrapper.addClass('tutor-option-no-bottom-border')
454-
: toggleWrapper.removeClass('tutor-option-no-bottom-border')
448+
let tutorOptionFieldRow = inputSwitchElement.closest('.tutor-option-field-row')
449+
let tutorOptionRowWrapper = inputSwitchElement.closest('.item-wrapper')
450+
let visibleElements = tutorOptionRowWrapper.find('.tutor-option-field-row').not('div.tutor-hide-option')
455451

452+
if (visibleElements.length === 1) {
453+
tutorOptionFieldRow.addClass('tutor-option-no-bottom-border')
454+
} else {
455+
tutorOptionFieldRow.removeClass('tutor-option-no-bottom-border')
456+
visibleElements.last().addClass('tutor-option-no-bottom-border')
457+
}
456458
}
457459

458460
const btnToggles = $('input[type="checkbox"][data-toggle-fields]')

assets/react/admin-dashboard/segments/withdraw.js

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,5 @@
1-
const { default: sprintf } = require("../../helper/sprintf");
2-
31
document.addEventListener("DOMContentLoaded", function(){
4-
const { __, _x, _n, _nx } = wp.i18n;
2+
const { __, _x, _n, _nx, sprintf } = wp.i18n;
53
// Approve and Reject button
64
const approveButton = document.querySelectorAll('.tutor-admin-open-withdraw-approve-modal');
75
const rejectButton = document.querySelectorAll('.tutor-admin-open-withdraw-reject-modal');
@@ -155,5 +153,4 @@ document.addEventListener("DOMContentLoaded", function(){
155153
})
156154
}
157155
}
158-
159-
});
156+
});

0 commit comments

Comments
 (0)