@webiny/website-builder-sdk 0.0.0-unstable.ac6ebf63c6 → 0.0.0-unstable.df7a8bb475
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/HotkeyManager.js +1 -1
- package/HotkeyManager.js.map +1 -1
- package/generateElementId.js +0 -1
- package/generateElementId.js.map +1 -1
- package/package.json +6 -6
package/HotkeyManager.js
CHANGED
package/HotkeyManager.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["isHotkey","keyStack","listenerInitialized","filterTags","isContentEditable","value","includes","idCounter","generateSimpleId","setupListener","document","body","eventListener","ev","target","nodeName","contentEditable","matchedKey","Object","keys","find","key","length","item","handler","stopPropagation","addEventListener","HotkeyManager","constructor","id","add","exists","some","unshift","remove","index","findIndex","splice"],"sources":["HotkeyManager.ts"],"sourcesContent":["import isHotkey from \"is-hotkey\";\n\ninterface KeyHandler {\n id: string;\n handler: (e: KeyboardEvent) => void;\n}\n\nconst keyStack: Record<string, KeyHandler[]> = {};\nlet listenerInitialized = false;\nconst filterTags = [\"TEXTAREA\", \"INPUT\"];\n\nconst isContentEditable = (value: any) => {\n return [\"true\", true].includes(value);\n};\n\nlet idCounter = 0;\nconst generateSimpleId = () => `hotkey-${++idCounter}`;\n\nconst setupListener = (): void => {\n if (listenerInitialized || !document.body) {\n return;\n }\n\n const eventListener = (ev: KeyboardEvent) => {\n const target = ev.target as HTMLElement;\n\n if (!target) {\n return;\n }\n if (filterTags.includes(target.nodeName) || isContentEditable(target.contentEditable)) {\n return;\n }\n\n const matchedKey = Object.keys(keyStack).find(key => isHotkey(key, ev));\n if (matchedKey && keyStack[matchedKey]?.length > 0) {\n const item = keyStack[matchedKey][0];\n item.handler(ev);\n ev.stopPropagation();\n }\n };\n\n document.body.addEventListener(\"keydown\", eventListener);\n listenerInitialized = true;\n};\n\nexport class HotkeyManager {\n private readonly id: string;\n\n constructor() {\n this.id = generateSimpleId();\n setupListener();\n }\n\n add(key: string, handler: (e: KeyboardEvent) => void): void {\n keyStack[key] = keyStack[key] || [];\n const exists = keyStack[key].some(item => item.id === this.id);\n if (!exists) {\n keyStack[key].unshift({ id: this.id, handler });\n }\n }\n\n remove(key: string): void {\n if (!keyStack[key]) {\n return;\n }\n\n const index = keyStack[key].findIndex(item => item.id === this.id);\n if (index >= 0) {\n keyStack[key].splice(index, 1);\n }\n }\n}\n"],"mappings":"AAAA,
|
|
1
|
+
{"version":3,"names":["isHotkey","keyStack","listenerInitialized","filterTags","isContentEditable","value","includes","idCounter","generateSimpleId","setupListener","document","body","eventListener","ev","target","nodeName","contentEditable","matchedKey","Object","keys","find","key","length","item","handler","stopPropagation","addEventListener","HotkeyManager","constructor","id","add","exists","some","unshift","remove","index","findIndex","splice"],"sources":["HotkeyManager.ts"],"sourcesContent":["import { isHotkey } from \"is-hotkey\";\n\ninterface KeyHandler {\n id: string;\n handler: (e: KeyboardEvent) => void;\n}\n\nconst keyStack: Record<string, KeyHandler[]> = {};\nlet listenerInitialized = false;\nconst filterTags = [\"TEXTAREA\", \"INPUT\"];\n\nconst isContentEditable = (value: any) => {\n return [\"true\", true].includes(value);\n};\n\nlet idCounter = 0;\nconst generateSimpleId = () => `hotkey-${++idCounter}`;\n\nconst setupListener = (): void => {\n if (listenerInitialized || !document.body) {\n return;\n }\n\n const eventListener = (ev: KeyboardEvent) => {\n const target = ev.target as HTMLElement;\n\n if (!target) {\n return;\n }\n if (filterTags.includes(target.nodeName) || isContentEditable(target.contentEditable)) {\n return;\n }\n\n const matchedKey = Object.keys(keyStack).find(key => isHotkey(key, ev));\n if (matchedKey && keyStack[matchedKey]?.length > 0) {\n const item = keyStack[matchedKey][0];\n item.handler(ev);\n ev.stopPropagation();\n }\n };\n\n document.body.addEventListener(\"keydown\", eventListener);\n listenerInitialized = true;\n};\n\nexport class HotkeyManager {\n private readonly id: string;\n\n constructor() {\n this.id = generateSimpleId();\n setupListener();\n }\n\n add(key: string, handler: (e: KeyboardEvent) => void): void {\n keyStack[key] = keyStack[key] || [];\n const exists = keyStack[key].some(item => item.id === this.id);\n if (!exists) {\n keyStack[key].unshift({ id: this.id, handler });\n }\n }\n\n remove(key: string): void {\n if (!keyStack[key]) {\n return;\n }\n\n const index = keyStack[key].findIndex(item => item.id === this.id);\n if (index >= 0) {\n keyStack[key].splice(index, 1);\n }\n }\n}\n"],"mappings":"AAAA,SAASA,QAAQ,QAAQ,WAAW;AAOpC,MAAMC,QAAsC,GAAG,CAAC,CAAC;AACjD,IAAIC,mBAAmB,GAAG,KAAK;AAC/B,MAAMC,UAAU,GAAG,CAAC,UAAU,EAAE,OAAO,CAAC;AAExC,MAAMC,iBAAiB,GAAIC,KAAU,IAAK;EACtC,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC,CAACC,QAAQ,CAACD,KAAK,CAAC;AACzC,CAAC;AAED,IAAIE,SAAS,GAAG,CAAC;AACjB,MAAMC,gBAAgB,GAAGA,CAAA,KAAM,UAAU,EAAED,SAAS,EAAE;AAEtD,MAAME,aAAa,GAAGA,CAAA,KAAY;EAC9B,IAAIP,mBAAmB,IAAI,CAACQ,QAAQ,CAACC,IAAI,EAAE;IACvC;EACJ;EAEA,MAAMC,aAAa,GAAIC,EAAiB,IAAK;IACzC,MAAMC,MAAM,GAAGD,EAAE,CAACC,MAAqB;IAEvC,IAAI,CAACA,MAAM,EAAE;MACT;IACJ;IACA,IAAIX,UAAU,CAACG,QAAQ,CAACQ,MAAM,CAACC,QAAQ,CAAC,IAAIX,iBAAiB,CAACU,MAAM,CAACE,eAAe,CAAC,EAAE;MACnF;IACJ;IAEA,MAAMC,UAAU,GAAGC,MAAM,CAACC,IAAI,CAAClB,QAAQ,CAAC,CAACmB,IAAI,CAACC,GAAG,IAAIrB,QAAQ,CAACqB,GAAG,EAAER,EAAE,CAAC,CAAC;IACvE,IAAII,UAAU,IAAIhB,QAAQ,CAACgB,UAAU,CAAC,EAAEK,MAAM,GAAG,CAAC,EAAE;MAChD,MAAMC,IAAI,GAAGtB,QAAQ,CAACgB,UAAU,CAAC,CAAC,CAAC,CAAC;MACpCM,IAAI,CAACC,OAAO,CAACX,EAAE,CAAC;MAChBA,EAAE,CAACY,eAAe,CAAC,CAAC;IACxB;EACJ,CAAC;EAEDf,QAAQ,CAACC,IAAI,CAACe,gBAAgB,CAAC,SAAS,EAAEd,aAAa,CAAC;EACxDV,mBAAmB,GAAG,IAAI;AAC9B,CAAC;AAED,OAAO,MAAMyB,aAAa,CAAC;EAGvBC,WAAWA,CAAA,EAAG;IACV,IAAI,CAACC,EAAE,GAAGrB,gBAAgB,CAAC,CAAC;IAC5BC,aAAa,CAAC,CAAC;EACnB;EAEAqB,GAAGA,CAACT,GAAW,EAAEG,OAAmC,EAAQ;IACxDvB,QAAQ,CAACoB,GAAG,CAAC,GAAGpB,QAAQ,CAACoB,GAAG,CAAC,IAAI,EAAE;IACnC,MAAMU,MAAM,GAAG9B,QAAQ,CAACoB,GAAG,CAAC,CAACW,IAAI,CAACT,IAAI,IAAIA,IAAI,CAACM,EAAE,KAAK,IAAI,CAACA,EAAE,CAAC;IAC9D,IAAI,CAACE,MAAM,EAAE;MACT9B,QAAQ,CAACoB,GAAG,CAAC,CAACY,OAAO,CAAC;QAAEJ,EAAE,EAAE,IAAI,CAACA,EAAE;QAAEL;MAAQ,CAAC,CAAC;IACnD;EACJ;EAEAU,MAAMA,CAACb,GAAW,EAAQ;IACtB,IAAI,CAACpB,QAAQ,CAACoB,GAAG,CAAC,EAAE;MAChB;IACJ;IAEA,MAAMc,KAAK,GAAGlC,QAAQ,CAACoB,GAAG,CAAC,CAACe,SAAS,CAACb,IAAI,IAAIA,IAAI,CAACM,EAAE,KAAK,IAAI,CAACA,EAAE,CAAC;IAClE,IAAIM,KAAK,IAAI,CAAC,EAAE;MACZlC,QAAQ,CAACoB,GAAG,CAAC,CAACgB,MAAM,CAACF,KAAK,EAAE,CAAC,CAAC;IAClC;EACJ;AACJ","ignoreList":[]}
|
package/generateElementId.js
CHANGED
package/generateElementId.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["customAlphabet","lowercase","numbers","DEFAULT_SIZE","generateElementId"],"sources":["generateElementId.ts"],"sourcesContent":["import { customAlphabet } from \"nanoid\";\
|
|
1
|
+
{"version":3,"names":["customAlphabet","lowercase","numbers","DEFAULT_SIZE","generateElementId"],"sources":["generateElementId.ts"],"sourcesContent":["import { customAlphabet } from \"nanoid\";\nimport { lowercase, numbers } from \"nanoid-dictionary\";\n\nconst DEFAULT_SIZE = 21;\n\nexport const generateElementId = customAlphabet(`${lowercase}${numbers}`, DEFAULT_SIZE);\n"],"mappings":"AAAA,SAASA,cAAc,QAAQ,QAAQ;AACvC,SAASC,SAAS,EAAEC,OAAO,QAAQ,mBAAmB;AAEtD,MAAMC,YAAY,GAAG,EAAE;AAEvB,OAAO,MAAMC,iBAAiB,GAAGJ,cAAc,CAAC,GAAGC,SAAS,GAAGC,OAAO,EAAE,EAAEC,YAAY,CAAC","ignoreList":[]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@webiny/website-builder-sdk",
|
|
3
|
-
"version": "0.0.0-unstable.
|
|
3
|
+
"version": "0.0.0-unstable.df7a8bb475",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"main": "index.js",
|
|
6
6
|
"repository": {
|
|
@@ -13,7 +13,7 @@
|
|
|
13
13
|
"author": "Pavel Denisjuk",
|
|
14
14
|
"license": "MIT",
|
|
15
15
|
"dependencies": {
|
|
16
|
-
"csstype": "3.
|
|
16
|
+
"csstype": "3.2.3",
|
|
17
17
|
"deep-equal": "2.2.3",
|
|
18
18
|
"deepmerge": "4.3.1",
|
|
19
19
|
"fast-json-patch": "3.1.1",
|
|
@@ -22,15 +22,15 @@
|
|
|
22
22
|
"lodash": "4.17.23",
|
|
23
23
|
"matcher": "5.0.0",
|
|
24
24
|
"mobx": "6.15.0",
|
|
25
|
-
"nanoid": "
|
|
26
|
-
"nanoid-dictionary": "
|
|
25
|
+
"nanoid": "5.1.6",
|
|
26
|
+
"nanoid-dictionary": "5.0.0",
|
|
27
27
|
"pino": "9.14.0",
|
|
28
28
|
"pino-pretty": "9.4.1"
|
|
29
29
|
},
|
|
30
30
|
"devDependencies": {
|
|
31
31
|
"@types/deep-equal": "1.0.4",
|
|
32
32
|
"@types/is-hotkey": "0.1.10",
|
|
33
|
-
"@webiny/build-tools": "0.0.0-unstable.
|
|
33
|
+
"@webiny/build-tools": "0.0.0-unstable.df7a8bb475",
|
|
34
34
|
"typescript": "5.9.3",
|
|
35
35
|
"vitest": "3.2.4"
|
|
36
36
|
},
|
|
@@ -45,5 +45,5 @@
|
|
|
45
45
|
]
|
|
46
46
|
}
|
|
47
47
|
},
|
|
48
|
-
"gitHead": "
|
|
48
|
+
"gitHead": "df7a8bb4755a1da047f0af8c56bdb649cc81bf7d"
|
|
49
49
|
}
|