Skip to content

Commit b24dc8f

Browse files
committed
Condensed import(), moved def + dependencies inside dependencies for improved structure ↞ [auto-sync from https://github.com/KudoAI/chatgpt.js-chrome-starter]
1 parent 089d84d commit b24dc8f

File tree

4 files changed

+19
-16
lines changed

4 files changed

+19
-16
lines changed

starters/chrome/extension/components/icons.js

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,8 @@
22

33
window.icons = {
44

5-
import(dependencies) { Object.entries(dependencies).forEach(([name, dependency]) => this[name] = dependency) },
5+
import(dependencies) { // { app }
6+
for (const name in dependencies) this[name] = dependencies[name] },
67

78
create({ name, size = 16, width, height, ...additionalAttrs }) {
89
const iconData = icons[name],
@@ -24,6 +25,6 @@ window.icons = {
2425

2526
questionMark: {
2627
type: 'png',
27-
get src() { return `${icons.app.urls.assetHost}@b5551ac/images/icons/question-mark/icon16.png` }
28+
get src() { return `${icons.dependencies.app.urls.assetHost}@b5551ac/images/icons/question-mark/icon16.png` }
2829
}
2930
};

starters/chrome/extension/components/modals.js

Lines changed: 14 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -3,8 +3,10 @@
33
window.modals = {
44
stack: [], // of types of undismissed modals
55

6-
import(dependencies) { // { app, siteAlert }
7-
Object.entries(dependencies).forEach(([name, dependency]) => this[name] = dependency) },
6+
dependencies: {
7+
import(dependencies) { // { app, siteAlert }
8+
for (const name in dependencies) this[name] = dependencies[name] }
9+
},
810

911
open(modalType) {
1012
this.stack.unshift(modalType) // add to stack
@@ -71,23 +73,23 @@ window.modals = {
7173

7274
// Init buttons
7375
const modalBtns = [
74-
function getSupport(){ modals.safeWinOpen(`${modals.app.urls.gitHub}/issues`) },
75-
function rateUs() { modals.safeWinOpen(`${modals.app.urls.gitHub}/discussions`) },
76-
function moreAiExtensions(){ modals.safeWinOpen(modals.app.urls.relatedExtensions) }
76+
function getSupport(){ modals.safeWinOpen(`${modals.dependencies.app.urls.gitHub}/issues`) },
77+
function rateUs() { modals.safeWinOpen(`${modals.dependencies.app.urls.gitHub}/discussions`) },
78+
function moreAiExtensions(){ modals.safeWinOpen(modals.dependencies.app.urls.relatedExtensions) }
7779
]
7880

7981
// Show modal
80-
const aboutModal = this.siteAlert(
81-
`${this.app.symbol} ${chrome.runtime.getManifest().name}`, // title
82+
const aboutModal = this.dependencies.siteAlert(
83+
`${this.dependencies.app.symbol} ${chrome.runtime.getManifest().name}`, // title
8284
`<span style="${headingStyle}"><b>🏷️ <i>Version</i></b>: </span>`
83-
+ `<span style="${pStyle}">${this.app.version}</span>\n`
85+
+ `<span style="${pStyle}">${this.dependencies.app.version}</span>\n`
8486
+ `<span style="${headingStyle}"><b>⚡ <i>Powered by</i></b>: </span>`
8587
+ `<span style="${pStyle}">`
86-
+ `<a style="${aStyle}" href="${this.app.urls.chatgptJS}" target="_blank" rel="noopener">`
87-
+ 'chatgpt.js</a></span>\n'
88+
+ `<a style="${aStyle}" href="${this.dependencies.app.urls.chatgptJS}" target="_blank"`
89+
+ ' rel="noopener">chatgpt.js</a></span>\n'
8890
+ `<span style="${headingStyle}"><b>📜 <i>Open source code</i></b>:</span>\n`
89-
+ `<span style="${pBrStyle}"><a href="${this.app.urls.gitHub}" target="_blank" rel="nopener">`
90-
+ this.app.urls.gitHub + '</a></span>',
91+
+ `<span style="${pBrStyle}"><a href="${this.dependencies.app.urls.gitHub}" target="_blank"`
92+
+ ` rel="nopener">${this.dependencies.app.urls.gitHub}</a></span>`,
9193
modalBtns, '', 451
9294
)
9395

starters/chrome/extension/content.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@
1212

1313
// Import APP data
1414
const { app } = await chrome.storage.sync.get('app')
15-
modals.import({ app, siteAlert })
15+
modals.dependencies.import({ app, siteAlert })
1616

1717
// Add CHROME MSG listener
1818
chrome.runtime.onMessage.addListener(req => { // from service-worker.js + popup/index.html

starters/chrome/extension/popup/controller.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@
1010

1111
// Import APP data
1212
const { app } = await chrome.storage.sync.get('app')
13-
icons.import({ app }) // for src's using app.urls.assetHost
13+
icons.dependencies.import({ app }) // for src's using app.urls.assetHost
1414

1515
// Define FUNCTIONS
1616

0 commit comments

Comments
 (0)