Skip to content

Commit dc1cedd

Browse files
committed
refactor: convert module syntax to ESM imports and exports
- Replace import X = require('Y') with import X from 'Y' - Replace export = X with export default X - Remove 'use strict' directives (ESM is strict by default) - Keep runtime require() calls for browserify transforms: template/style require() for stringify transform, package.json require() for version extraction, message_keys require() for browserify stub
1 parent d92e33d commit dc1cedd

34 files changed

Lines changed: 92 additions & 126 deletions

index.ts

Lines changed: 6 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,7 @@
1-
'use strict';
21

3-
import configPageHtml = require('./tmp/config-page.html');
4-
import toSource = require('tosource');
5-
import standardComponents = require('./src/scripts/components');
2+
import configPageHtml from './tmp/config-page.html';
3+
import toSource from 'tosource';
4+
import standardComponents from './src/scripts/components';
65
function extractVersion(): string {
76
const pkg: unknown = require('./package.json');
87
/* istanbul ignore else — TS defensive guard for untyped require */
@@ -12,11 +11,11 @@ function extractVersion(): string {
1211
return '';
1312
}
1413
const version = extractVersion();
15-
import messageKeys = require('message_keys');
14+
import messageKeys from 'message_keys';
1615

1716
import { ClayConfigItem, ClayMeta } from './src/scripts/lib/types';
1817

19-
import deepcopy = require('deepcopy/build/deepcopy.min');
18+
import deepcopy from 'deepcopy/build/deepcopy.min';
2019

2120
interface PebbleObject {
2221
addEventListener(event: string, handler: (...args: unknown[]) => void): void;
@@ -417,4 +416,4 @@ createClay.encodeDataUri = Clay.encodeDataUri;
417416
createClay.prepareForAppMessage = Clay.prepareForAppMessage;
418417
createClay.prepareSettingsForAppMessage = Clay.prepareSettingsForAppMessage;
419418

420-
export = createClay;
419+
export default createClay;

src/scripts/components/button.ts

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
1-
'use strict';
21

3-
export = {
2+
export default {
43
name: 'button',
54
template: require('../../templates/components/button.tpl'),
65
style: require('../../../tmp/button.css'),

src/scripts/components/checkboxgroup.ts

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
1-
'use strict';
21

3-
export = {
2+
export default {
43
name: 'checkboxgroup',
54
template: require('../../templates/components/checkboxgroup.tpl'),
65
style: require('../../../tmp/checkboxgroup.css'),

src/scripts/components/color.ts

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,7 @@
1-
'use strict';
21

32
import { ClayItemInstance, ClayConfigInstance } from '../lib/types';
43

5-
export = {
4+
export default {
65
name: 'color',
76
template: require('../../templates/components/color.tpl'),
87
style: require('../../../tmp/color.css'),

src/scripts/components/footer.ts

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
1-
'use strict';
21

3-
export = {
2+
export default {
43
name: 'footer',
54
template: require('../../templates/components/footer.tpl'),
65
manipulator: 'html'

src/scripts/components/heading.ts

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
1-
'use strict';
21

3-
export = {
2+
export default {
43
name: 'heading',
54
template: require('../../templates/components/heading.tpl'),
65
manipulator: 'html',

src/scripts/components/index.ts

Lines changed: 13 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -1,19 +1,18 @@
1-
'use strict';
21

32
import { ClayComponentInput } from '../lib/types';
43

5-
import color = require('./color');
6-
import footer = require('./footer');
7-
import heading = require('./heading');
8-
import input = require('./input');
9-
import select = require('./select');
10-
import submit = require('./submit');
11-
import text = require('./text');
12-
import toggle = require('./toggle');
13-
import radiogroup = require('./radiogroup');
14-
import checkboxgroup = require('./checkboxgroup');
15-
import button = require('./button');
16-
import slider = require('./slider');
4+
import color from './color';
5+
import footer from './footer';
6+
import heading from './heading';
7+
import input from './input';
8+
import select from './select';
9+
import submit from './submit';
10+
import text from './text';
11+
import toggle from './toggle';
12+
import radiogroup from './radiogroup';
13+
import checkboxgroup from './checkboxgroup';
14+
import button from './button';
15+
import slider from './slider';
1716

1817
const components: Record<string, ClayComponentInput> = {
1918
color,
@@ -30,4 +29,4 @@ const components: Record<string, ClayComponentInput> = {
3029
slider
3130
};
3231

33-
export = components;
32+
export default components;

src/scripts/components/input.ts

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
1-
'use strict';
21

3-
export = {
2+
export default {
43
name: 'input',
54
template: require('../../templates/components/input.tpl'),
65
style: require('../../../tmp/input.css'),

src/scripts/components/radiogroup.ts

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
1-
'use strict';
21

3-
export = {
2+
export default {
43
name: 'radiogroup',
54
template: require('../../templates/components/radiogroup.tpl'),
65
style: require('../../../tmp/radiogroup.css'),

src/scripts/components/select.ts

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,7 @@
1-
'use strict';
21

32
import { ClayItemInstance } from '../lib/types';
43

5-
export = {
4+
export default {
65
name: 'select',
76
template: require('../../templates/components/select.tpl'),
87
style: require('../../../tmp/select.css'),

0 commit comments

Comments
 (0)