vscroll 1.7.0 → 1.8.1
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/dist/bundles/vscroll.esm5.js +518 -368
- package/dist/bundles/vscroll.esm5.js.map +1 -1
- package/dist/bundles/vscroll.esm5.min.js +2 -2
- package/dist/bundles/vscroll.esm5.min.js.map +1 -1
- package/dist/bundles/vscroll.esm6.js +408 -260
- package/dist/bundles/vscroll.esm6.js.map +1 -1
- package/dist/bundles/vscroll.esm6.min.js +2 -2
- package/dist/bundles/vscroll.esm6.min.js.map +1 -1
- package/dist/bundles/vscroll.umd.js +519 -369
- package/dist/bundles/vscroll.umd.js.map +1 -1
- package/dist/bundles/vscroll.umd.min.js +2 -2
- package/dist/bundles/vscroll.umd.min.js.map +1 -1
- package/dist/esm2015/classes/adapter/context.js +2 -1
- package/dist/esm2015/classes/adapter/context.js.map +1 -1
- package/dist/esm2015/classes/adapter/props.js +2 -2
- package/dist/esm2015/classes/adapter/props.js.map +1 -1
- package/dist/esm2015/classes/adapter.js +17 -18
- package/dist/esm2015/classes/adapter.js.map +1 -1
- package/dist/esm2015/classes/buffer/cache.js +11 -8
- package/dist/esm2015/classes/buffer/cache.js.map +1 -1
- package/dist/esm2015/classes/buffer/checkCall.js +4 -5
- package/dist/esm2015/classes/buffer/checkCall.js.map +1 -1
- package/dist/esm2015/classes/buffer/defaultSize.js +2 -1
- package/dist/esm2015/classes/buffer/defaultSize.js.map +1 -1
- package/dist/esm2015/classes/buffer.js +12 -11
- package/dist/esm2015/classes/buffer.js.map +1 -1
- package/dist/esm2015/classes/datasource.js +16 -3
- package/dist/esm2015/classes/datasource.js.map +1 -1
- package/dist/esm2015/classes/domRoutines.js +14 -14
- package/dist/esm2015/classes/domRoutines.js.map +1 -1
- package/dist/esm2015/classes/logger.js +74 -31
- package/dist/esm2015/classes/logger.js.map +1 -1
- package/dist/esm2015/classes/paddings.js +6 -2
- package/dist/esm2015/classes/paddings.js.map +1 -1
- package/dist/esm2015/classes/reactive.js.map +1 -1
- package/dist/esm2015/classes/settings.js.map +1 -1
- package/dist/esm2015/classes/state/clip.js.map +1 -1
- package/dist/esm2015/classes/state/fetch.js +4 -2
- package/dist/esm2015/classes/state/fetch.js.map +1 -1
- package/dist/esm2015/classes/state.js +6 -4
- package/dist/esm2015/classes/state.js.map +1 -1
- package/dist/esm2015/classes/viewport.js +4 -2
- package/dist/esm2015/classes/viewport.js.map +1 -1
- package/dist/esm2015/index.js +1 -1
- package/dist/esm2015/index.js.map +1 -1
- package/dist/esm2015/inputs/adapter.js +44 -24
- package/dist/esm2015/inputs/adapter.js.map +1 -1
- package/dist/esm2015/inputs/datasource.js.map +1 -1
- package/dist/esm2015/inputs/index.js +1 -1
- package/dist/esm2015/inputs/index.js.map +1 -1
- package/dist/esm2015/inputs/settings.js +8 -3
- package/dist/esm2015/inputs/settings.js.map +1 -1
- package/dist/esm2015/inputs/validation.js +8 -14
- package/dist/esm2015/inputs/validation.js.map +1 -1
- package/dist/esm2015/inputs/workflow.js.map +1 -1
- package/dist/esm2015/interfaces/datasource.js.map +1 -1
- package/dist/esm2015/interfaces/index.js.map +1 -1
- package/dist/esm2015/interfaces/process.js.map +1 -1
- package/dist/esm2015/interfaces/routines.js.map +1 -1
- package/dist/esm2015/interfaces/settings.js.map +1 -1
- package/dist/esm2015/interfaces/validation.js.map +1 -1
- package/dist/esm2015/interfaces/workflow.js.map +1 -1
- package/dist/esm2015/processes/adapter/append.js +2 -1
- package/dist/esm2015/processes/adapter/append.js.map +1 -1
- package/dist/esm2015/processes/adapter/check.js +2 -1
- package/dist/esm2015/processes/adapter/check.js.map +1 -1
- package/dist/esm2015/processes/adapter/clip.js.map +1 -1
- package/dist/esm2015/processes/adapter/fix.js +4 -2
- package/dist/esm2015/processes/adapter/fix.js.map +1 -1
- package/dist/esm2015/processes/adapter/insert.js +4 -3
- package/dist/esm2015/processes/adapter/insert.js.map +1 -1
- package/dist/esm2015/processes/adapter/pause.js.map +1 -1
- package/dist/esm2015/processes/adapter/reload.js.map +1 -1
- package/dist/esm2015/processes/adapter/remove.js +8 -5
- package/dist/esm2015/processes/adapter/remove.js.map +1 -1
- package/dist/esm2015/processes/adapter/replace.js +1 -1
- package/dist/esm2015/processes/adapter/replace.js.map +1 -1
- package/dist/esm2015/processes/adapter/reset.js +5 -5
- package/dist/esm2015/processes/adapter/reset.js.map +1 -1
- package/dist/esm2015/processes/adapter/update.js +4 -3
- package/dist/esm2015/processes/adapter/update.js.map +1 -1
- package/dist/esm2015/processes/adjust.js +15 -10
- package/dist/esm2015/processes/adjust.js.map +1 -1
- package/dist/esm2015/processes/clip.js +4 -4
- package/dist/esm2015/processes/clip.js.map +1 -1
- package/dist/esm2015/processes/end.js +2 -1
- package/dist/esm2015/processes/end.js.map +1 -1
- package/dist/esm2015/processes/fetch.js +6 -4
- package/dist/esm2015/processes/fetch.js.map +1 -1
- package/dist/esm2015/processes/index.js +1 -1
- package/dist/esm2015/processes/index.js.map +1 -1
- package/dist/esm2015/processes/init.js.map +1 -1
- package/dist/esm2015/processes/misc/base.js +1 -2
- package/dist/esm2015/processes/misc/base.js.map +1 -1
- package/dist/esm2015/processes/misc/enums.js.map +1 -1
- package/dist/esm2015/processes/postFetch.js +13 -12
- package/dist/esm2015/processes/postFetch.js.map +1 -1
- package/dist/esm2015/processes/preClip.js +6 -5
- package/dist/esm2015/processes/preClip.js.map +1 -1
- package/dist/esm2015/processes/preFetch.js +28 -15
- package/dist/esm2015/processes/preFetch.js.map +1 -1
- package/dist/esm2015/processes/render.js +6 -4
- package/dist/esm2015/processes/render.js.map +1 -1
- package/dist/esm2015/processes/scroll.js +19 -10
- package/dist/esm2015/processes/scroll.js.map +1 -1
- package/dist/esm2015/processes/start.js.map +1 -1
- package/dist/esm2015/scroller.js +14 -9
- package/dist/esm2015/scroller.js.map +1 -1
- package/dist/esm2015/version.js +1 -1
- package/dist/esm2015/version.js.map +1 -1
- package/dist/esm2015/workflow-transducer.js +3 -2
- package/dist/esm2015/workflow-transducer.js.map +1 -1
- package/dist/esm2015/workflow.js +28 -17
- package/dist/esm2015/workflow.js.map +1 -1
- package/dist/esm5/classes/adapter/context.js +2 -1
- package/dist/esm5/classes/adapter/context.js.map +1 -1
- package/dist/esm5/classes/adapter/props.js +2 -2
- package/dist/esm5/classes/adapter/props.js.map +1 -1
- package/dist/esm5/classes/adapter.js +22 -19
- package/dist/esm5/classes/adapter.js.map +1 -1
- package/dist/esm5/classes/buffer/cache.js +11 -9
- package/dist/esm5/classes/buffer/cache.js.map +1 -1
- package/dist/esm5/classes/buffer/checkCall.js +4 -7
- package/dist/esm5/classes/buffer/checkCall.js.map +1 -1
- package/dist/esm5/classes/buffer/defaultSize.js +2 -1
- package/dist/esm5/classes/buffer/defaultSize.js.map +1 -1
- package/dist/esm5/classes/buffer.js +15 -14
- package/dist/esm5/classes/buffer.js.map +1 -1
- package/dist/esm5/classes/datasource.js +20 -3
- package/dist/esm5/classes/datasource.js.map +1 -1
- package/dist/esm5/classes/domRoutines.js +14 -14
- package/dist/esm5/classes/domRoutines.js.map +1 -1
- package/dist/esm5/classes/logger.js +75 -34
- package/dist/esm5/classes/logger.js.map +1 -1
- package/dist/esm5/classes/paddings.js +6 -2
- package/dist/esm5/classes/paddings.js.map +1 -1
- package/dist/esm5/classes/reactive.js.map +1 -1
- package/dist/esm5/classes/settings.js.map +1 -1
- package/dist/esm5/classes/state/clip.js.map +1 -1
- package/dist/esm5/classes/state/fetch.js +4 -2
- package/dist/esm5/classes/state/fetch.js.map +1 -1
- package/dist/esm5/classes/state.js +6 -4
- package/dist/esm5/classes/state.js.map +1 -1
- package/dist/esm5/classes/viewport.js +3 -2
- package/dist/esm5/classes/viewport.js.map +1 -1
- package/dist/esm5/index.js +1 -1
- package/dist/esm5/index.js.map +1 -1
- package/dist/esm5/inputs/adapter.js +32 -12
- package/dist/esm5/inputs/adapter.js.map +1 -1
- package/dist/esm5/inputs/datasource.js.map +1 -1
- package/dist/esm5/inputs/index.js +1 -1
- package/dist/esm5/inputs/index.js.map +1 -1
- package/dist/esm5/inputs/settings.js +5 -0
- package/dist/esm5/inputs/settings.js.map +1 -1
- package/dist/esm5/inputs/validation.js +99 -93
- package/dist/esm5/inputs/validation.js.map +1 -1
- package/dist/esm5/inputs/workflow.js.map +1 -1
- package/dist/esm5/interfaces/datasource.js.map +1 -1
- package/dist/esm5/interfaces/index.js.map +1 -1
- package/dist/esm5/interfaces/process.js.map +1 -1
- package/dist/esm5/interfaces/routines.js.map +1 -1
- package/dist/esm5/interfaces/settings.js.map +1 -1
- package/dist/esm5/interfaces/validation.js.map +1 -1
- package/dist/esm5/interfaces/workflow.js.map +1 -1
- package/dist/esm5/processes/adapter/append.js +2 -1
- package/dist/esm5/processes/adapter/append.js.map +1 -1
- package/dist/esm5/processes/adapter/check.js +7 -6
- package/dist/esm5/processes/adapter/check.js.map +1 -1
- package/dist/esm5/processes/adapter/clip.js.map +1 -1
- package/dist/esm5/processes/adapter/fix.js +4 -2
- package/dist/esm5/processes/adapter/fix.js.map +1 -1
- package/dist/esm5/processes/adapter/insert.js +4 -3
- package/dist/esm5/processes/adapter/insert.js.map +1 -1
- package/dist/esm5/processes/adapter/pause.js.map +1 -1
- package/dist/esm5/processes/adapter/reload.js.map +1 -1
- package/dist/esm5/processes/adapter/remove.js +11 -10
- package/dist/esm5/processes/adapter/remove.js.map +1 -1
- package/dist/esm5/processes/adapter/replace.js +1 -1
- package/dist/esm5/processes/adapter/replace.js.map +1 -1
- package/dist/esm5/processes/adapter/reset.js +5 -5
- package/dist/esm5/processes/adapter/reset.js.map +1 -1
- package/dist/esm5/processes/adapter/update.js +20 -15
- package/dist/esm5/processes/adapter/update.js.map +1 -1
- package/dist/esm5/processes/adjust.js +16 -11
- package/dist/esm5/processes/adjust.js.map +1 -1
- package/dist/esm5/processes/clip.js +4 -4
- package/dist/esm5/processes/clip.js.map +1 -1
- package/dist/esm5/processes/end.js +2 -1
- package/dist/esm5/processes/end.js.map +1 -1
- package/dist/esm5/processes/fetch.js +5 -3
- package/dist/esm5/processes/fetch.js.map +1 -1
- package/dist/esm5/processes/index.js +1 -1
- package/dist/esm5/processes/index.js.map +1 -1
- package/dist/esm5/processes/init.js.map +1 -1
- package/dist/esm5/processes/misc/base.js +1 -2
- package/dist/esm5/processes/misc/base.js.map +1 -1
- package/dist/esm5/processes/misc/enums.js.map +1 -1
- package/dist/esm5/processes/postFetch.js +14 -15
- package/dist/esm5/processes/postFetch.js.map +1 -1
- package/dist/esm5/processes/preClip.js +5 -4
- package/dist/esm5/processes/preClip.js.map +1 -1
- package/dist/esm5/processes/preFetch.js +26 -14
- package/dist/esm5/processes/preFetch.js.map +1 -1
- package/dist/esm5/processes/render.js +7 -7
- package/dist/esm5/processes/render.js.map +1 -1
- package/dist/esm5/processes/scroll.js +18 -12
- package/dist/esm5/processes/scroll.js.map +1 -1
- package/dist/esm5/processes/start.js.map +1 -1
- package/dist/esm5/scroller.js +11 -7
- package/dist/esm5/scroller.js.map +1 -1
- package/dist/esm5/version.js +1 -1
- package/dist/esm5/version.js.map +1 -1
- package/dist/esm5/workflow-transducer.js +3 -2
- package/dist/esm5/workflow-transducer.js.map +1 -1
- package/dist/esm5/workflow.js +31 -25
- package/dist/esm5/workflow.js.map +1 -1
- package/dist/typings/classes/buffer/cache.d.ts +0 -1
- package/dist/typings/classes/datasource.d.ts +1 -1
- package/dist/typings/classes/domRoutines.d.ts +1 -1
- package/dist/typings/classes/logger.d.ts +4 -0
- package/dist/typings/classes/settings.d.ts +7 -0
- package/dist/typings/index.d.ts +3 -3
- package/dist/typings/inputs/index.d.ts +1 -1
- package/dist/typings/inputs/settings.d.ts +1 -0
- package/dist/typings/interfaces/index.d.ts +10 -10
- package/dist/typings/interfaces/settings.d.ts +1 -0
- package/dist/typings/processes/index.d.ts +1 -1
- package/dist/typings/processes/scroll.d.ts +1 -1
- package/dist/typings/workflow.d.ts +1 -0
- package/package.json +23 -22
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"workflow-transducer.js","sourceRoot":"","sources":["../../src/workflow-transducer.ts"],"names":[],"mappings":"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","sourcesContent":["import {\r\n CommonProcess,\r\n AdapterProcess,\r\n ProcessStatus as Status,\r\n Init,\r\n Scroll,\r\n Reset,\r\n Reload,\r\n Append,\r\n Check,\r\n Remove,\r\n UserClip,\r\n Insert,\r\n Replace,\r\n Update,\r\n Pause,\r\n Fix,\r\n Start,\r\n PreFetch,\r\n Fetch,\r\n PostFetch,\r\n Render,\r\n PreClip,\r\n Clip,\r\n Adjust,\r\n End,\r\n} from './processes/index';\r\n\r\nimport { StateMachineParams } from './interfaces/index';\r\n\r\nexport const runStateMachine = ({\r\n input: { process, status, payload = {} },\r\n methods: { run, interrupt, done, onError }\r\n}: StateMachineParams): void => {\r\n if (status === Status.error) {\r\n onError(process, payload);\r\n if (!process.startsWith('adapter')) {\r\n run(End)(payload);\r\n }\r\n return;\r\n }\r\n const { options } = payload;\r\n switch (process) {\r\n case CommonProcess.init:\r\n if (status === Status.start) { // App start\r\n run(Init)(process);\r\n }\r\n if (status === Status.next) {\r\n run(Start)();\r\n }\r\n break;\r\n case CommonProcess.scroll:\r\n if (status === Status.start) {\r\n run(Scroll)(payload);\r\n }\r\n if (status === Status.next) {\r\n run(Init)(process);\r\n }\r\n break;\r\n case AdapterProcess.reset:\r\n case AdapterProcess.reload:\r\n if (status === Status.start) {\r\n if (process === AdapterProcess.reset) {\r\n run(Reset)(options);\r\n } else {\r\n run(Reload)(options);\r\n }\r\n }\r\n if (status === Status.next) {\r\n interrupt({ process, ...payload });\r\n if (payload.finalize) {\r\n run(End)();\r\n } else {\r\n run(Init)(process);\r\n }\r\n }\r\n break;\r\n case AdapterProcess.append:\r\n case AdapterProcess.prepend:\r\n if (status === Status.start) {\r\n run(Append)({ process, options });\r\n }\r\n if (status === Status.next) {\r\n run(Init)(process);\r\n }\r\n break;\r\n case AdapterProcess.check:\r\n if (status === Status.start) {\r\n run(Check)();\r\n }\r\n if (status === Status.next) {\r\n run(Init)(process);\r\n }\r\n break;\r\n case AdapterProcess.remove:\r\n if (status === Status.start) {\r\n run(Remove)(options);\r\n }\r\n if (status === Status.next) {\r\n run(Init)(process);\r\n }\r\n break;\r\n case AdapterProcess.clip:\r\n if (status === Status.start) {\r\n run(UserClip)(options);\r\n }\r\n if (status === Status.next) {\r\n run(Init)(process);\r\n }\r\n break;\r\n case AdapterProcess.insert:\r\n if (status === Status.start) {\r\n run(Insert)(options);\r\n }\r\n if (status === Status.next) {\r\n run(Init)(process);\r\n }\r\n break;\r\n case AdapterProcess.replace:\r\n if (status === Status.start) {\r\n run(Replace)(options);\r\n }\r\n if (status === Status.next) {\r\n run(Init)(process);\r\n }\r\n break;\r\n case AdapterProcess.update:\r\n if (status === Status.start) {\r\n run(Update)(options);\r\n }\r\n if (status === Status.next) {\r\n run(Init)(process);\r\n }\r\n break;\r\n case AdapterProcess.pause:\r\n if (status === Status.start) {\r\n run(Pause)(options);\r\n }\r\n if (status === Status.next) {\r\n run(Init)(process);\r\n }\r\n break;\r\n case AdapterProcess.fix:\r\n if (status === Status.start) {\r\n run(Fix)(options);\r\n }\r\n if (status === Status.next) {\r\n run(Init)(process);\r\n }\r\n break;\r\n case CommonProcess.start:\r\n switch (payload.process) {\r\n case AdapterProcess.append:\r\n case AdapterProcess.insert:\r\n case AdapterProcess.replace:\r\n case AdapterProcess.update:\r\n if (payload.doRender) {\r\n run(Render)();\r\n } else {\r\n run(Adjust)();\r\n }\r\n break;\r\n case AdapterProcess.check:\r\n run(Render)();\r\n break;\r\n case AdapterProcess.remove:\r\n run(Adjust)();\r\n break;\r\n default:\r\n run(PreFetch)();\r\n }\r\n break;\r\n case CommonProcess.preFetch:\r\n if (status === Status.next) {\r\n switch (payload.process) {\r\n case AdapterProcess.clip:\r\n run(PreClip)();\r\n break;\r\n default:\r\n run(Fetch)();\r\n }\r\n }\r\n if (status === Status.done) {\r\n run(End)();\r\n }\r\n break;\r\n case CommonProcess.fetch:\r\n run(PostFetch)();\r\n break;\r\n case CommonProcess.postFetch:\r\n if (status === Status.next) {\r\n run(Render)();\r\n }\r\n if (status === Status.done) {\r\n run(End)();\r\n }\r\n break;\r\n case CommonProcess.render:\r\n if (status === Status.next) {\r\n switch (payload.process) {\r\n case AdapterProcess.append:\r\n case AdapterProcess.check:\r\n case AdapterProcess.insert:\r\n case AdapterProcess.replace:\r\n case AdapterProcess.update:\r\n run(Adjust)();\r\n break;\r\n default:\r\n run(PreClip)();\r\n }\r\n }\r\n if (status === Status.done) {\r\n run(End)();\r\n }\r\n break;\r\n case CommonProcess.preClip:\r\n if (payload.doClip) {\r\n run(Clip)();\r\n } else {\r\n run(Adjust)();\r\n }\r\n break;\r\n case CommonProcess.clip:\r\n run(Adjust)();\r\n break;\r\n case CommonProcess.adjust:\r\n run(End)();\r\n break;\r\n case CommonProcess.end:\r\n if (status === Status.next) {\r\n switch (payload.process) {\r\n case AdapterProcess.reset:\r\n case AdapterProcess.reload:\r\n done();\r\n run(Init)(payload.process);\r\n break;\r\n default:\r\n run(Start)();\r\n }\r\n }\r\n if (status === Status.done) {\r\n done();\r\n }\r\n break;\r\n }\r\n};\r\n"]}
|
|
1
|
+
{"version":3,"file":"workflow-transducer.js","sourceRoot":"","sources":["../../src/workflow-transducer.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,aAAa,EACb,cAAc,EACd,aAAa,IAAI,MAAM,EACvB,IAAI,EACJ,MAAM,EACN,KAAK,EACL,MAAM,EACN,MAAM,EACN,KAAK,EACL,MAAM,EACN,QAAQ,EACR,MAAM,EACN,OAAO,EACP,MAAM,EACN,KAAK,EACL,GAAG,EACH,KAAK,EACL,QAAQ,EACR,KAAK,EACL,SAAS,EACT,MAAM,EACN,OAAO,EACP,IAAI,EACJ,MAAM,EACN,GAAG,EACJ,MAAM,mBAAmB,CAAC;AAI3B,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,EAC9B,KAAK,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,GAAG,EAAE,EAAE,EACxC,OAAO,EAAE,EAAE,GAAG,EAAE,SAAS,EAAE,IAAI,EAAE,OAAO,EAAE,EACvB,EAAQ,EAAE;IAC7B,IAAI,MAAM,KAAK,MAAM,CAAC,KAAK,EAAE,CAAC;QAC5B,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QAC1B,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;YACnC,GAAG,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC;QACpB,CAAC;QACD,OAAO;IACT,CAAC;IACD,MAAM,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC;IAC5B,QAAQ,OAAO,EAAE,CAAC;QAChB,KAAK,aAAa,CAAC,IAAI;YACrB,IAAI,MAAM,KAAK,MAAM,CAAC,KAAK,EAAE,CAAC;gBAC5B,YAAY;gBACZ,GAAG,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC;YACrB,CAAC;YACD,IAAI,MAAM,KAAK,MAAM,CAAC,IAAI,EAAE,CAAC;gBAC3B,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;YACf,CAAC;YACD,MAAM;QACR,KAAK,aAAa,CAAC,MAAM;YACvB,IAAI,MAAM,KAAK,MAAM,CAAC,KAAK,EAAE,CAAC;gBAC5B,GAAG,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC;YACvB,CAAC;YACD,IAAI,MAAM,KAAK,MAAM,CAAC,IAAI,EAAE,CAAC;gBAC3B,GAAG,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC;YACrB,CAAC;YACD,MAAM;QACR,KAAK,cAAc,CAAC,KAAK,CAAC;QAC1B,KAAK,cAAc,CAAC,MAAM;YACxB,IAAI,MAAM,KAAK,MAAM,CAAC,KAAK,EAAE,CAAC;gBAC5B,IAAI,OAAO,KAAK,cAAc,CAAC,KAAK,EAAE,CAAC;oBACrC,GAAG,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,CAAC;gBACtB,CAAC;qBAAM,CAAC;oBACN,GAAG,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC;gBACvB,CAAC;YACH,CAAC;YACD,IAAI,MAAM,KAAK,MAAM,CAAC,IAAI,EAAE,CAAC;gBAC3B,SAAS,iBAAG,OAAO,IAAK,OAAO,EAAG,CAAC;gBACnC,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;oBACrB,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;gBACb,CAAC;qBAAM,CAAC;oBACN,GAAG,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC;gBACrB,CAAC;YACH,CAAC;YACD,MAAM;QACR,KAAK,cAAc,CAAC,MAAM,CAAC;QAC3B,KAAK,cAAc,CAAC,OAAO;YACzB,IAAI,MAAM,KAAK,MAAM,CAAC,KAAK,EAAE,CAAC;gBAC5B,GAAG,CAAC,MAAM,CAAC,CAAC,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC,CAAC;YACpC,CAAC;YACD,IAAI,MAAM,KAAK,MAAM,CAAC,IAAI,EAAE,CAAC;gBAC3B,GAAG,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC;YACrB,CAAC;YACD,MAAM;QACR,KAAK,cAAc,CAAC,KAAK;YACvB,IAAI,MAAM,KAAK,MAAM,CAAC,KAAK,EAAE,CAAC;gBAC5B,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;YACf,CAAC;YACD,IAAI,MAAM,KAAK,MAAM,CAAC,IAAI,EAAE,CAAC;gBAC3B,GAAG,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC;YACrB,CAAC;YACD,MAAM;QACR,KAAK,cAAc,CAAC,MAAM;YACxB,IAAI,MAAM,KAAK,MAAM,CAAC,KAAK,EAAE,CAAC;gBAC5B,GAAG,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC;YACvB,CAAC;YACD,IAAI,MAAM,KAAK,MAAM,CAAC,IAAI,EAAE,CAAC;gBAC3B,GAAG,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC;YACrB,CAAC;YACD,MAAM;QACR,KAAK,cAAc,CAAC,IAAI;YACtB,IAAI,MAAM,KAAK,MAAM,CAAC,KAAK,EAAE,CAAC;gBAC5B,GAAG,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,CAAC;YACzB,CAAC;YACD,IAAI,MAAM,KAAK,MAAM,CAAC,IAAI,EAAE,CAAC;gBAC3B,GAAG,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC;YACrB,CAAC;YACD,MAAM;QACR,KAAK,cAAc,CAAC,MAAM;YACxB,IAAI,MAAM,KAAK,MAAM,CAAC,KAAK,EAAE,CAAC;gBAC5B,GAAG,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC;YACvB,CAAC;YACD,IAAI,MAAM,KAAK,MAAM,CAAC,IAAI,EAAE,CAAC;gBAC3B,GAAG,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC;YACrB,CAAC;YACD,MAAM;QACR,KAAK,cAAc,CAAC,OAAO;YACzB,IAAI,MAAM,KAAK,MAAM,CAAC,KAAK,EAAE,CAAC;gBAC5B,GAAG,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC;YACxB,CAAC;YACD,IAAI,MAAM,KAAK,MAAM,CAAC,IAAI,EAAE,CAAC;gBAC3B,GAAG,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC;YACrB,CAAC;YACD,MAAM;QACR,KAAK,cAAc,CAAC,MAAM;YACxB,IAAI,MAAM,KAAK,MAAM,CAAC,KAAK,EAAE,CAAC;gBAC5B,GAAG,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC;YACvB,CAAC;YACD,IAAI,MAAM,KAAK,MAAM,CAAC,IAAI,EAAE,CAAC;gBAC3B,GAAG,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC;YACrB,CAAC;YACD,MAAM;QACR,KAAK,cAAc,CAAC,KAAK;YACvB,IAAI,MAAM,KAAK,MAAM,CAAC,KAAK,EAAE,CAAC;gBAC5B,GAAG,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,CAAC;YACtB,CAAC;YACD,IAAI,MAAM,KAAK,MAAM,CAAC,IAAI,EAAE,CAAC;gBAC3B,GAAG,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC;YACrB,CAAC;YACD,MAAM;QACR,KAAK,cAAc,CAAC,GAAG;YACrB,IAAI,MAAM,KAAK,MAAM,CAAC,KAAK,EAAE,CAAC;gBAC5B,GAAG,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC;YACpB,CAAC;YACD,IAAI,MAAM,KAAK,MAAM,CAAC,IAAI,EAAE,CAAC;gBAC3B,GAAG,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC;YACrB,CAAC;YACD,MAAM;QACR,KAAK,aAAa,CAAC,KAAK;YACtB,QAAQ,OAAO,CAAC,OAAO,EAAE,CAAC;gBACxB,KAAK,cAAc,CAAC,MAAM,CAAC;gBAC3B,KAAK,cAAc,CAAC,MAAM,CAAC;gBAC3B,KAAK,cAAc,CAAC,OAAO,CAAC;gBAC5B,KAAK,cAAc,CAAC,MAAM;oBACxB,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;wBACrB,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;oBAChB,CAAC;yBAAM,CAAC;wBACN,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;oBAChB,CAAC;oBACD,MAAM;gBACR,KAAK,cAAc,CAAC,KAAK;oBACvB,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;oBACd,MAAM;gBACR,KAAK,cAAc,CAAC,MAAM;oBACxB,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;oBACd,MAAM;gBACR;oBACE,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;YACpB,CAAC;YACD,MAAM;QACR,KAAK,aAAa,CAAC,QAAQ;YACzB,IAAI,MAAM,KAAK,MAAM,CAAC,IAAI,EAAE,CAAC;gBAC3B,QAAQ,OAAO,CAAC,OAAO,EAAE,CAAC;oBACxB,KAAK,cAAc,CAAC,IAAI;wBACtB,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC;wBACf,MAAM;oBACR;wBACE,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;gBACjB,CAAC;YACH,CAAC;YACD,IAAI,MAAM,KAAK,MAAM,CAAC,IAAI,EAAE,CAAC;gBAC3B,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;YACb,CAAC;YACD,MAAM;QACR,KAAK,aAAa,CAAC,KAAK;YACtB,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC;YACjB,MAAM;QACR,KAAK,aAAa,CAAC,SAAS;YAC1B,IAAI,MAAM,KAAK,MAAM,CAAC,IAAI,EAAE,CAAC;gBAC3B,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;YAChB,CAAC;YACD,IAAI,MAAM,KAAK,MAAM,CAAC,IAAI,EAAE,CAAC;gBAC3B,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;YACb,CAAC;YACD,MAAM;QACR,KAAK,aAAa,CAAC,MAAM;YACvB,IAAI,MAAM,KAAK,MAAM,CAAC,IAAI,EAAE,CAAC;gBAC3B,QAAQ,OAAO,CAAC,OAAO,EAAE,CAAC;oBACxB,KAAK,cAAc,CAAC,MAAM,CAAC;oBAC3B,KAAK,cAAc,CAAC,KAAK,CAAC;oBAC1B,KAAK,cAAc,CAAC,MAAM,CAAC;oBAC3B,KAAK,cAAc,CAAC,OAAO,CAAC;oBAC5B,KAAK,cAAc,CAAC,MAAM;wBACxB,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;wBACd,MAAM;oBACR;wBACE,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC;gBACnB,CAAC;YACH,CAAC;YACD,IAAI,MAAM,KAAK,MAAM,CAAC,IAAI,EAAE,CAAC;gBAC3B,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;YACb,CAAC;YACD,MAAM;QACR,KAAK,aAAa,CAAC,OAAO;YACxB,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;gBACnB,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;YACd,CAAC;iBAAM,CAAC;gBACN,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;YAChB,CAAC;YACD,MAAM;QACR,KAAK,aAAa,CAAC,IAAI;YACrB,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;YACd,MAAM;QACR,KAAK,aAAa,CAAC,MAAM;YACvB,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;YACX,MAAM;QACR,KAAK,aAAa,CAAC,GAAG;YACpB,IAAI,MAAM,KAAK,MAAM,CAAC,IAAI,EAAE,CAAC;gBAC3B,QAAQ,OAAO,CAAC,OAAO,EAAE,CAAC;oBACxB,KAAK,cAAc,CAAC,KAAK,CAAC;oBAC1B,KAAK,cAAc,CAAC,MAAM;wBACxB,IAAI,EAAE,CAAC;wBACP,GAAG,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;wBAC3B,MAAM;oBACR;wBACE,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;gBACjB,CAAC;YACH,CAAC;YACD,IAAI,MAAM,KAAK,MAAM,CAAC,IAAI,EAAE,CAAC;gBAC3B,IAAI,EAAE,CAAC;YACT,CAAC;YACD,MAAM;IACV,CAAC;AACH,CAAC,CAAC","sourcesContent":["import {\r\n CommonProcess,\r\n AdapterProcess,\r\n ProcessStatus as Status,\r\n Init,\r\n Scroll,\r\n Reset,\r\n Reload,\r\n Append,\r\n Check,\r\n Remove,\r\n UserClip,\r\n Insert,\r\n Replace,\r\n Update,\r\n Pause,\r\n Fix,\r\n Start,\r\n PreFetch,\r\n Fetch,\r\n PostFetch,\r\n Render,\r\n PreClip,\r\n Clip,\r\n Adjust,\r\n End\r\n} from './processes/index';\r\n\r\nimport { StateMachineParams } from './interfaces/index';\r\n\r\nexport const runStateMachine = ({\r\n input: { process, status, payload = {} },\r\n methods: { run, interrupt, done, onError }\r\n}: StateMachineParams): void => {\r\n if (status === Status.error) {\r\n onError(process, payload);\r\n if (!process.startsWith('adapter')) {\r\n run(End)(payload);\r\n }\r\n return;\r\n }\r\n const { options } = payload;\r\n switch (process) {\r\n case CommonProcess.init:\r\n if (status === Status.start) {\r\n // App start\r\n run(Init)(process);\r\n }\r\n if (status === Status.next) {\r\n run(Start)();\r\n }\r\n break;\r\n case CommonProcess.scroll:\r\n if (status === Status.start) {\r\n run(Scroll)(payload);\r\n }\r\n if (status === Status.next) {\r\n run(Init)(process);\r\n }\r\n break;\r\n case AdapterProcess.reset:\r\n case AdapterProcess.reload:\r\n if (status === Status.start) {\r\n if (process === AdapterProcess.reset) {\r\n run(Reset)(options);\r\n } else {\r\n run(Reload)(options);\r\n }\r\n }\r\n if (status === Status.next) {\r\n interrupt({ process, ...payload });\r\n if (payload.finalize) {\r\n run(End)();\r\n } else {\r\n run(Init)(process);\r\n }\r\n }\r\n break;\r\n case AdapterProcess.append:\r\n case AdapterProcess.prepend:\r\n if (status === Status.start) {\r\n run(Append)({ process, options });\r\n }\r\n if (status === Status.next) {\r\n run(Init)(process);\r\n }\r\n break;\r\n case AdapterProcess.check:\r\n if (status === Status.start) {\r\n run(Check)();\r\n }\r\n if (status === Status.next) {\r\n run(Init)(process);\r\n }\r\n break;\r\n case AdapterProcess.remove:\r\n if (status === Status.start) {\r\n run(Remove)(options);\r\n }\r\n if (status === Status.next) {\r\n run(Init)(process);\r\n }\r\n break;\r\n case AdapterProcess.clip:\r\n if (status === Status.start) {\r\n run(UserClip)(options);\r\n }\r\n if (status === Status.next) {\r\n run(Init)(process);\r\n }\r\n break;\r\n case AdapterProcess.insert:\r\n if (status === Status.start) {\r\n run(Insert)(options);\r\n }\r\n if (status === Status.next) {\r\n run(Init)(process);\r\n }\r\n break;\r\n case AdapterProcess.replace:\r\n if (status === Status.start) {\r\n run(Replace)(options);\r\n }\r\n if (status === Status.next) {\r\n run(Init)(process);\r\n }\r\n break;\r\n case AdapterProcess.update:\r\n if (status === Status.start) {\r\n run(Update)(options);\r\n }\r\n if (status === Status.next) {\r\n run(Init)(process);\r\n }\r\n break;\r\n case AdapterProcess.pause:\r\n if (status === Status.start) {\r\n run(Pause)(options);\r\n }\r\n if (status === Status.next) {\r\n run(Init)(process);\r\n }\r\n break;\r\n case AdapterProcess.fix:\r\n if (status === Status.start) {\r\n run(Fix)(options);\r\n }\r\n if (status === Status.next) {\r\n run(Init)(process);\r\n }\r\n break;\r\n case CommonProcess.start:\r\n switch (payload.process) {\r\n case AdapterProcess.append:\r\n case AdapterProcess.insert:\r\n case AdapterProcess.replace:\r\n case AdapterProcess.update:\r\n if (payload.doRender) {\r\n run(Render)();\r\n } else {\r\n run(Adjust)();\r\n }\r\n break;\r\n case AdapterProcess.check:\r\n run(Render)();\r\n break;\r\n case AdapterProcess.remove:\r\n run(Adjust)();\r\n break;\r\n default:\r\n run(PreFetch)();\r\n }\r\n break;\r\n case CommonProcess.preFetch:\r\n if (status === Status.next) {\r\n switch (payload.process) {\r\n case AdapterProcess.clip:\r\n run(PreClip)();\r\n break;\r\n default:\r\n run(Fetch)();\r\n }\r\n }\r\n if (status === Status.done) {\r\n run(End)();\r\n }\r\n break;\r\n case CommonProcess.fetch:\r\n run(PostFetch)();\r\n break;\r\n case CommonProcess.postFetch:\r\n if (status === Status.next) {\r\n run(Render)();\r\n }\r\n if (status === Status.done) {\r\n run(End)();\r\n }\r\n break;\r\n case CommonProcess.render:\r\n if (status === Status.next) {\r\n switch (payload.process) {\r\n case AdapterProcess.append:\r\n case AdapterProcess.check:\r\n case AdapterProcess.insert:\r\n case AdapterProcess.replace:\r\n case AdapterProcess.update:\r\n run(Adjust)();\r\n break;\r\n default:\r\n run(PreClip)();\r\n }\r\n }\r\n if (status === Status.done) {\r\n run(End)();\r\n }\r\n break;\r\n case CommonProcess.preClip:\r\n if (payload.doClip) {\r\n run(Clip)();\r\n } else {\r\n run(Adjust)();\r\n }\r\n break;\r\n case CommonProcess.clip:\r\n run(Adjust)();\r\n break;\r\n case CommonProcess.adjust:\r\n run(End)();\r\n break;\r\n case CommonProcess.end:\r\n if (status === Status.next) {\r\n switch (payload.process) {\r\n case AdapterProcess.reset:\r\n case AdapterProcess.reload:\r\n done();\r\n run(Init)(payload.process);\r\n break;\r\n default:\r\n run(Start)();\r\n }\r\n }\r\n if (status === Status.done) {\r\n done();\r\n }\r\n break;\r\n }\r\n};\r\n"]}
|
package/dist/esm2015/workflow.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { Scroller } from './scroller';
|
|
2
2
|
import { runStateMachine } from './workflow-transducer';
|
|
3
3
|
import { Reactive } from './classes/reactive';
|
|
4
|
-
import { AdapterProcess, CommonProcess, ProcessStatus as Status
|
|
4
|
+
import { AdapterProcess, CommonProcess, ProcessStatus as Status } from './processes/index';
|
|
5
5
|
import { WORKFLOW, validate } from './inputs/index';
|
|
6
6
|
export class Workflow {
|
|
7
7
|
constructor(params) {
|
|
@@ -15,6 +15,7 @@ export class Workflow {
|
|
|
15
15
|
this.initTimer = null;
|
|
16
16
|
this.adapterRun$ = new Reactive();
|
|
17
17
|
this.cyclesDone = 0;
|
|
18
|
+
this.cyclesDone$ = new Reactive(0);
|
|
18
19
|
this.interruptionCount = 0;
|
|
19
20
|
this.errors = [];
|
|
20
21
|
this.offScroll = () => null;
|
|
@@ -26,7 +27,11 @@ export class Workflow {
|
|
|
26
27
|
onError: this.onError.bind(this)
|
|
27
28
|
};
|
|
28
29
|
this.scroller = new Scroller({
|
|
29
|
-
element,
|
|
30
|
+
element,
|
|
31
|
+
datasource,
|
|
32
|
+
consumer,
|
|
33
|
+
workflow: this.getUpdater(),
|
|
34
|
+
Routines
|
|
30
35
|
});
|
|
31
36
|
if (this.scroller.settings.initializeDelay) {
|
|
32
37
|
this.initTimer = setTimeout(() => {
|
|
@@ -78,16 +83,18 @@ export class Workflow {
|
|
|
78
83
|
getUpdater() {
|
|
79
84
|
return {
|
|
80
85
|
call: this.callWorkflow.bind(this),
|
|
81
|
-
onDataChanged: this.changeItems.bind(this)
|
|
86
|
+
onDataChanged: this.changeItems.bind(this)
|
|
82
87
|
};
|
|
83
88
|
}
|
|
84
89
|
process(data) {
|
|
85
90
|
const { status, process, payload } = data;
|
|
86
91
|
if (this.scroller.settings.logProcessRun) {
|
|
87
|
-
this.scroller.logger.log(() =>
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
92
|
+
this.scroller.logger.log(() => {
|
|
93
|
+
const _fire = this.scroller.settings.logColor
|
|
94
|
+
? ['%cfire%c', 'color: #cc7777;', 'color: #000000;']
|
|
95
|
+
: ['fire'];
|
|
96
|
+
return [..._fire, process, `"${status}"`, ...(payload !== void 0 ? [payload] : [])];
|
|
97
|
+
});
|
|
91
98
|
}
|
|
92
99
|
this.scroller.logger.logProcess(data);
|
|
93
100
|
if (process === CommonProcess.end) {
|
|
@@ -101,16 +108,18 @@ export class Workflow {
|
|
|
101
108
|
runProcess() {
|
|
102
109
|
return ({ run, process, name }) => (...args) => {
|
|
103
110
|
if (this.scroller.settings.logProcessRun) {
|
|
104
|
-
this.scroller.logger.log(() =>
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
111
|
+
this.scroller.logger.log(() => {
|
|
112
|
+
const _run = this.scroller.settings.logColor
|
|
113
|
+
? ['%crun%c', 'color: #333399;', 'color: #000000;']
|
|
114
|
+
: ['run'];
|
|
115
|
+
return [..._run, process || name, ...args];
|
|
116
|
+
});
|
|
108
117
|
}
|
|
109
118
|
run(this.scroller, ...args);
|
|
110
119
|
};
|
|
111
120
|
}
|
|
112
121
|
onError(process, payload) {
|
|
113
|
-
const message = payload && String(payload.error) || '';
|
|
122
|
+
const message = (payload && String(payload.error)) || '';
|
|
114
123
|
const { time, cycle } = this.scroller.state;
|
|
115
124
|
this.errors.push({
|
|
116
125
|
process,
|
|
@@ -125,14 +134,14 @@ export class Workflow {
|
|
|
125
134
|
const { workflow, logger } = this.scroller;
|
|
126
135
|
// we are going to create a new reference for the scroller.workflow object
|
|
127
136
|
// calling the old version of the scroller.workflow by any outstanding async processes will be skipped
|
|
128
|
-
workflow.call = (_) =>
|
|
129
|
-
logger.log('[skip wf call]');
|
|
137
|
+
workflow.call = (_) => logger.log('[skip wf call]');
|
|
130
138
|
workflow.call.interrupted = true;
|
|
131
139
|
this.scroller.workflow = this.getUpdater();
|
|
132
140
|
this.interruptionCount++;
|
|
133
141
|
logger.log(() => `workflow had been interrupted by the ${process} process (${this.interruptionCount})`);
|
|
134
142
|
}
|
|
135
|
-
if (datasource) {
|
|
143
|
+
if (datasource) {
|
|
144
|
+
// Scroller re-initialization case
|
|
136
145
|
const reInit = () => {
|
|
137
146
|
this.scroller.logger.log('new Scroller instantiation');
|
|
138
147
|
const scroller = new Scroller({ datasource, scroller: this.scroller });
|
|
@@ -152,6 +161,7 @@ export class Workflow {
|
|
|
152
161
|
done() {
|
|
153
162
|
const { state, logger } = this.scroller;
|
|
154
163
|
this.cyclesDone++;
|
|
164
|
+
this.cyclesDone$.set(this.cyclesDone);
|
|
155
165
|
logger.logCycle(false);
|
|
156
166
|
state.endWorkflowCycle(this.cyclesDone + 1);
|
|
157
167
|
this.finalize();
|
|
@@ -163,13 +173,14 @@ export class Workflow {
|
|
|
163
173
|
}
|
|
164
174
|
this.offScroll();
|
|
165
175
|
this.adapterRun$.dispose();
|
|
176
|
+
this.cyclesDone$.dispose();
|
|
166
177
|
this.scroller.dispose(true);
|
|
167
178
|
Object.getOwnPropertyNames(this).forEach(prop => {
|
|
168
179
|
delete this[prop];
|
|
169
180
|
});
|
|
181
|
+
this.isInitialized = false;
|
|
170
182
|
this.disposed = true;
|
|
171
183
|
}
|
|
172
|
-
finalize() {
|
|
173
|
-
}
|
|
184
|
+
finalize() { }
|
|
174
185
|
}
|
|
175
186
|
//# sourceMappingURL=workflow.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"workflow.js","sourceRoot":"","sources":["../../src/workflow.ts"],"names":[],"mappings":"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","sourcesContent":["import { Scroller } from './scroller';\r\nimport { runStateMachine } from './workflow-transducer';\r\nimport { Reactive } from './classes/reactive';\r\nimport { Item } from './classes/item';\r\nimport { AdapterProcess, CommonProcess, ProcessStatus as Status, } from './processes/index';\r\nimport { WORKFLOW, validate } from './inputs/index';\r\nimport {\r\n WorkflowParams,\r\n ProcessName,\r\n ProcessPayload,\r\n ProcessClass,\r\n ProcessSubject,\r\n WorkflowError,\r\n InterruptParams,\r\n StateMachineMethods,\r\n ScrollerWorkflow,\r\n} from './interfaces/index';\r\n\r\nexport class Workflow<ItemData = unknown> {\r\n\r\n isInitialized: boolean;\r\n disposed: boolean;\r\n initTimer: ReturnType<typeof setTimeout> | null;\r\n adapterRun$: Reactive<ProcessSubject>;\r\n cyclesDone: number;\r\n interruptionCount: number;\r\n errors: WorkflowError[];\r\n\r\n private offScroll: () => void;\r\n readonly propagateChanges: WorkflowParams<ItemData>['run'];\r\n readonly stateMachineMethods: StateMachineMethods<ItemData>;\r\n\r\n scroller: Scroller<ItemData>;\r\n\r\n constructor(params: WorkflowParams<ItemData>) {\r\n const { element, datasource, consumer, run, Routines } = params;\r\n\r\n const validationResult = validate(params, WORKFLOW);\r\n if (!validationResult.isValid) {\r\n throw new Error(`Invalid Workflow params: ${validationResult.errors.join(', ')}.`);\r\n }\r\n\r\n this.isInitialized = false;\r\n this.disposed = false;\r\n this.initTimer = null;\r\n this.adapterRun$ = new Reactive();\r\n this.cyclesDone = 0;\r\n this.interruptionCount = 0;\r\n this.errors = [];\r\n this.offScroll = () => null;\r\n this.propagateChanges = run;\r\n this.stateMachineMethods = {\r\n run: this.runProcess(),\r\n interrupt: this.interrupt.bind(this),\r\n done: this.done.bind(this),\r\n onError: this.onError.bind(this)\r\n };\r\n\r\n this.scroller = new Scroller<ItemData>({\r\n element, datasource, consumer, workflow: this.getUpdater(), Routines\r\n });\r\n\r\n if (this.scroller.settings.initializeDelay) {\r\n this.initTimer = setTimeout(() => {\r\n this.initTimer = null;\r\n this.init();\r\n }, this.scroller.settings.initializeDelay);\r\n } else {\r\n this.init();\r\n }\r\n }\r\n\r\n init(): void {\r\n this.scroller.init(this.adapterRun$);\r\n\r\n // set up scroll event listener\r\n const { routines } = this.scroller;\r\n const onScrollHandler: EventListener =\r\n event => this.callWorkflow({\r\n process: CommonProcess.scroll,\r\n status: Status.start,\r\n payload: { event }\r\n });\r\n this.offScroll = routines.onScroll(onScrollHandler);\r\n\r\n // run the Workflow\r\n this.isInitialized = true;\r\n this.callWorkflow({\r\n process: CommonProcess.init,\r\n status: Status.start\r\n });\r\n }\r\n\r\n changeItems(items: Item<ItemData>[]): void {\r\n this.propagateChanges(items);\r\n }\r\n\r\n callWorkflow(processSubject: ProcessSubject): void {\r\n if (!this.isInitialized) {\r\n return;\r\n }\r\n const { process, status } = processSubject;\r\n // if the scroller is paused, any process other than \"pause\" and \"reset\" should be blocked\r\n if (this.scroller.state.paused.get()) {\r\n if (![AdapterProcess.pause, AdapterProcess.reset].includes(process as AdapterProcess)) {\r\n this.scroller.logger.log('scroller is paused: ' + process + ' process is ignored');\r\n return;\r\n }\r\n }\r\n if (process && process.startsWith('adapter') && status !== Status.next) {\r\n this.adapterRun$.set(processSubject);\r\n }\r\n this.process(processSubject);\r\n }\r\n\r\n getUpdater(): ScrollerWorkflow<ItemData> {\r\n return {\r\n call: this.callWorkflow.bind(this),\r\n onDataChanged: this.changeItems.bind(this),\r\n };\r\n }\r\n\r\n process(data: ProcessSubject): void {\r\n const { status, process, payload } = data;\r\n if (this.scroller.settings.logProcessRun) {\r\n this.scroller.logger.log(() => [\r\n '%cfire%c', ...['color: #cc7777;', 'color: #000000;'],\r\n process, `\"${status}\"`, ...(payload !== void 0 ? [payload] : [])\r\n ]);\r\n }\r\n this.scroller.logger.logProcess(data);\r\n\r\n if (process === CommonProcess.end) {\r\n this.scroller.finalize();\r\n }\r\n runStateMachine({\r\n input: data,\r\n methods: this.stateMachineMethods as StateMachineMethods<unknown>\r\n });\r\n }\r\n\r\n runProcess() {\r\n return ({ run, process, name }: ProcessClass) =>\r\n (...args: unknown[]): void => {\r\n if (this.scroller.settings.logProcessRun) {\r\n this.scroller.logger.log(() => [\r\n '%crun%c', ...['color: #333399;', 'color: #000000;'],\r\n process || name, ...args\r\n ]);\r\n }\r\n run(this.scroller as Scroller, ...args);\r\n };\r\n }\r\n\r\n onError(process: ProcessName, payload?: ProcessPayload): void {\r\n const message: string = payload && String(payload.error) || '';\r\n const { time, cycle } = this.scroller.state;\r\n this.errors.push({\r\n process,\r\n message,\r\n time,\r\n loop: cycle.loopIdNext\r\n });\r\n this.scroller.logger.logError(message);\r\n }\r\n\r\n interrupt({ process, finalize, datasource }: InterruptParams<ItemData>): void {\r\n if (finalize) {\r\n const { workflow, logger } = this.scroller;\r\n // we are going to create a new reference for the scroller.workflow object\r\n // calling the old version of the scroller.workflow by any outstanding async processes will be skipped\r\n workflow.call = (_: ProcessSubject) => // eslint-disable-line @typescript-eslint/no-unused-vars\r\n logger.log('[skip wf call]');\r\n workflow.call.interrupted = true;\r\n this.scroller.workflow = this.getUpdater();\r\n this.interruptionCount++;\r\n logger.log(() => `workflow had been interrupted by the ${process} process (${this.interruptionCount})`);\r\n }\r\n if (datasource) { // Scroller re-initialization case\r\n const reInit = () => {\r\n this.scroller.logger.log('new Scroller instantiation');\r\n const scroller = new Scroller<ItemData>({ datasource, scroller: this.scroller });\r\n this.scroller.dispose();\r\n this.scroller = scroller;\r\n this.scroller.init();\r\n };\r\n if (this.scroller.state.cycle.busy.get()) {\r\n // todo: think about immediate re-initialization even is there are pending processes\r\n this.scroller.adapter.relax(reInit.bind(this));\r\n } else {\r\n reInit();\r\n }\r\n }\r\n }\r\n\r\n done(): void {\r\n const { state, logger } = this.scroller;\r\n this.cyclesDone++;\r\n logger.logCycle(false);\r\n state.endWorkflowCycle(this.cyclesDone + 1);\r\n this.finalize();\r\n }\r\n\r\n dispose(): void {\r\n this.scroller.logger.log(() => 'disposing workflow');\r\n if (this.initTimer) {\r\n clearTimeout(this.initTimer);\r\n }\r\n this.offScroll();\r\n this.adapterRun$.dispose();\r\n this.scroller.dispose(true);\r\n Object.getOwnPropertyNames(this).forEach(prop => {\r\n delete (this as Record<string, unknown>)[prop];\r\n });\r\n this.disposed = true;\r\n }\r\n\r\n finalize(): void {\r\n }\r\n\r\n}\r\n"]}
|
|
1
|
+
{"version":3,"file":"workflow.js","sourceRoot":"","sources":["../../src/workflow.ts"],"names":[],"mappings":"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","sourcesContent":["import { Scroller } from './scroller';\r\nimport { runStateMachine } from './workflow-transducer';\r\nimport { Reactive } from './classes/reactive';\r\nimport { Item } from './classes/item';\r\nimport { AdapterProcess, CommonProcess, ProcessStatus as Status } from './processes/index';\r\nimport { WORKFLOW, validate } from './inputs/index';\r\nimport {\r\n WorkflowParams,\r\n ProcessName,\r\n ProcessPayload,\r\n ProcessClass,\r\n ProcessSubject,\r\n WorkflowError,\r\n InterruptParams,\r\n StateMachineMethods,\r\n ScrollerWorkflow\r\n} from './interfaces/index';\r\n\r\nexport class Workflow<ItemData = unknown> {\r\n isInitialized: boolean;\r\n disposed: boolean;\r\n initTimer: ReturnType<typeof setTimeout> | null;\r\n adapterRun$: Reactive<ProcessSubject>;\r\n cyclesDone: number;\r\n cyclesDone$: Reactive<number>;\r\n interruptionCount: number;\r\n errors: WorkflowError[];\r\n\r\n private offScroll: () => void;\r\n readonly propagateChanges: WorkflowParams<ItemData>['run'];\r\n readonly stateMachineMethods: StateMachineMethods<ItemData>;\r\n\r\n scroller: Scroller<ItemData>;\r\n\r\n constructor(params: WorkflowParams<ItemData>) {\r\n const { element, datasource, consumer, run, Routines } = params;\r\n\r\n const validationResult = validate(params, WORKFLOW);\r\n if (!validationResult.isValid) {\r\n throw new Error(`Invalid Workflow params: ${validationResult.errors.join(', ')}.`);\r\n }\r\n\r\n this.isInitialized = false;\r\n this.disposed = false;\r\n this.initTimer = null;\r\n this.adapterRun$ = new Reactive();\r\n this.cyclesDone = 0;\r\n this.cyclesDone$ = new Reactive<number>(0);\r\n this.interruptionCount = 0;\r\n this.errors = [];\r\n this.offScroll = () => null;\r\n this.propagateChanges = run;\r\n this.stateMachineMethods = {\r\n run: this.runProcess(),\r\n interrupt: this.interrupt.bind(this),\r\n done: this.done.bind(this),\r\n onError: this.onError.bind(this)\r\n };\r\n\r\n this.scroller = new Scroller<ItemData>({\r\n element,\r\n datasource,\r\n consumer,\r\n workflow: this.getUpdater(),\r\n Routines\r\n });\r\n\r\n if (this.scroller.settings.initializeDelay) {\r\n this.initTimer = setTimeout(() => {\r\n this.initTimer = null;\r\n this.init();\r\n }, this.scroller.settings.initializeDelay);\r\n } else {\r\n this.init();\r\n }\r\n }\r\n\r\n init(): void {\r\n this.scroller.init(this.adapterRun$);\r\n\r\n // set up scroll event listener\r\n const { routines } = this.scroller;\r\n const onScrollHandler: EventListener = event =>\r\n this.callWorkflow({\r\n process: CommonProcess.scroll,\r\n status: Status.start,\r\n payload: { event }\r\n });\r\n this.offScroll = routines.onScroll(onScrollHandler);\r\n\r\n // run the Workflow\r\n this.isInitialized = true;\r\n this.callWorkflow({\r\n process: CommonProcess.init,\r\n status: Status.start\r\n });\r\n }\r\n\r\n changeItems(items: Item<ItemData>[]): void {\r\n this.propagateChanges(items);\r\n }\r\n\r\n callWorkflow(processSubject: ProcessSubject): void {\r\n if (!this.isInitialized) {\r\n return;\r\n }\r\n const { process, status } = processSubject;\r\n // if the scroller is paused, any process other than \"pause\" and \"reset\" should be blocked\r\n if (this.scroller.state.paused.get()) {\r\n if (![AdapterProcess.pause, AdapterProcess.reset].includes(process as AdapterProcess)) {\r\n this.scroller.logger.log('scroller is paused: ' + process + ' process is ignored');\r\n return;\r\n }\r\n }\r\n if (process && process.startsWith('adapter') && status !== Status.next) {\r\n this.adapterRun$.set(processSubject);\r\n }\r\n this.process(processSubject);\r\n }\r\n\r\n getUpdater(): ScrollerWorkflow<ItemData> {\r\n return {\r\n call: this.callWorkflow.bind(this),\r\n onDataChanged: this.changeItems.bind(this)\r\n };\r\n }\r\n\r\n process(data: ProcessSubject): void {\r\n const { status, process, payload } = data;\r\n if (this.scroller.settings.logProcessRun) {\r\n this.scroller.logger.log(() => {\r\n const _fire = this.scroller.settings.logColor\r\n ? ['%cfire%c', 'color: #cc7777;', 'color: #000000;']\r\n : ['fire'];\r\n return [..._fire, process, `\"${status}\"`, ...(payload !== void 0 ? [payload] : [])];\r\n });\r\n }\r\n this.scroller.logger.logProcess(data);\r\n\r\n if (process === CommonProcess.end) {\r\n this.scroller.finalize();\r\n }\r\n runStateMachine({\r\n input: data,\r\n methods: this.stateMachineMethods as StateMachineMethods<unknown>\r\n });\r\n }\r\n\r\n runProcess() {\r\n return ({ run, process, name }: ProcessClass) =>\r\n (...args: unknown[]): void => {\r\n if (this.scroller.settings.logProcessRun) {\r\n this.scroller.logger.log(() => {\r\n const _run = this.scroller.settings.logColor\r\n ? ['%crun%c', 'color: #333399;', 'color: #000000;']\r\n : ['run'];\r\n return [..._run, process || name, ...args];\r\n });\r\n }\r\n run(this.scroller as Scroller, ...args);\r\n };\r\n }\r\n\r\n onError(process: ProcessName, payload?: ProcessPayload): void {\r\n const message: string = (payload && String(payload.error)) || '';\r\n const { time, cycle } = this.scroller.state;\r\n this.errors.push({\r\n process,\r\n message,\r\n time,\r\n loop: cycle.loopIdNext\r\n });\r\n this.scroller.logger.logError(message);\r\n }\r\n\r\n interrupt({ process, finalize, datasource }: InterruptParams<ItemData>): void {\r\n if (finalize) {\r\n const { workflow, logger } = this.scroller;\r\n // we are going to create a new reference for the scroller.workflow object\r\n // calling the old version of the scroller.workflow by any outstanding async processes will be skipped\r\n workflow.call = (_: ProcessSubject) => logger.log('[skip wf call]');\r\n workflow.call.interrupted = true;\r\n this.scroller.workflow = this.getUpdater();\r\n this.interruptionCount++;\r\n logger.log(\r\n () => `workflow had been interrupted by the ${process} process (${this.interruptionCount})`\r\n );\r\n }\r\n if (datasource) {\r\n // Scroller re-initialization case\r\n const reInit = () => {\r\n this.scroller.logger.log('new Scroller instantiation');\r\n const scroller = new Scroller<ItemData>({ datasource, scroller: this.scroller });\r\n this.scroller.dispose();\r\n this.scroller = scroller;\r\n this.scroller.init();\r\n };\r\n if (this.scroller.state.cycle.busy.get()) {\r\n // todo: think about immediate re-initialization even is there are pending processes\r\n this.scroller.adapter.relax(reInit.bind(this));\r\n } else {\r\n reInit();\r\n }\r\n }\r\n }\r\n\r\n done(): void {\r\n const { state, logger } = this.scroller;\r\n this.cyclesDone++;\r\n this.cyclesDone$.set(this.cyclesDone);\r\n logger.logCycle(false);\r\n state.endWorkflowCycle(this.cyclesDone + 1);\r\n this.finalize();\r\n }\r\n\r\n dispose(): void {\r\n this.scroller.logger.log(() => 'disposing workflow');\r\n if (this.initTimer) {\r\n clearTimeout(this.initTimer);\r\n }\r\n this.offScroll();\r\n this.adapterRun$.dispose();\r\n this.cyclesDone$.dispose();\r\n this.scroller.dispose(true);\r\n Object.getOwnPropertyNames(this).forEach(prop => {\r\n delete (this as Record<string, unknown>)[prop];\r\n });\r\n this.isInitialized = false;\r\n this.disposed = true;\r\n }\r\n\r\n finalize(): void {}\r\n}\r\n"]}
|
|
@@ -41,7 +41,8 @@ var AdapterContext = /** @class */ (function () {
|
|
|
41
41
|
return value;
|
|
42
42
|
} }, conf));
|
|
43
43
|
});
|
|
44
|
-
if (reactive) {
|
|
44
|
+
if (reactive) {
|
|
45
|
+
// save both configured and default reactive props in the store
|
|
45
46
|
reactiveConfigStorage.set(id, reactivePropsStore);
|
|
46
47
|
}
|
|
47
48
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"context.js","sourceRoot":"","sources":["../../../../src/classes/adapter/context.ts"],"names":[],"mappings":";AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"context.js","sourceRoot":"","sources":["../../../../src/classes/adapter/context.ts"],"names":[],"mappings":";AAAA,OAAO,EACL,eAAe,EACf,eAAe,EACf,sBAAsB,EACtB,qBAAqB,EACtB,MAAM,SAAS,CAAC;AACjB,OAAO,IAAI,MAAM,eAAe,CAAC;AAEjC,OAAO,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAGtD,IAAI,aAAa,GAAG,CAAC,CAAC;AAEtB;IACE,wBAAY,MAAsB;QAAlC,iBA+CC;QA9CS,IAAA,IAAI,GAAe,MAAM,KAArB,EAAE,QAAQ,GAAK,MAAM,SAAX,CAAY;QAClC,IAAM,EAAE,GAAG,EAAE,aAAa,CAAC;QAC3B,IAAM,IAAI,GAAG,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC;QACpC,IAAM,kBAAkB,GAAwB,EAAE,CAAC;QACnD,aAAa,CAAC,GAAG,CAAC,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC;QAEjD,yBAAyB;QACzB,MAAM,CAAC,cAAc,CAAC,IAAI,EAAE,eAAe,CAAC,EAAE,aAAI,GAAG,EAAE,cAAM,OAAA,EAAE,EAAF,CAAE,IAAK,IAAI,EAAG,CAAC;QAC5E,MAAM,CAAC,cAAc,CAAC,IAAI,EAAE,eAAe,CAAC,IAAI,aAAI,GAAG,EAAE,cAAM,OAAA,IAAI,EAAJ,CAAI,IAAK,IAAI,EAAG,CAAC;QAChF,MAAM,CAAC,cAAc,CAAC,IAAI,EAAE,eAAe,CAAC,SAAS,aAAI,GAAG,EAAE,cAAM,OAAA,KAAK,EAAL,CAAK,IAAK,IAAI,EAAG,CAAC;QACtF,MAAM,CAAC,cAAc,CAAC,IAAI,EAAE,eAAe,CAAC,OAAO,aAAI,GAAG,EAAE,cAAM,OAAA,IAAI,CAAC,OAAO,EAAZ,CAAY,IAAK,IAAI,EAAG,CAAC;QAE3F,iFAAiF;QACjF,sBAAsB,EAAE;aACrB,MAAM,CAAC,UAAC,EAAa;gBAAX,SAAS,eAAA;YAAO,OAAA,CAAC,SAAS;QAAV,CAAU,CAAC;aACrC,OAAO,CAAC,UAAA,IAAI;YACL,IAAA,KAAK,GAAK,IAAI,MAAT,CAAU;YAErB,+DAA+D;YAC/D,IAAI,QAAQ,IAAI,IAAI,CAAC,IAAI,KAAK,eAAe,CAAC,QAAQ,EAAE,CAAC;gBACvD,IAAM,KAAK,GAAG,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBAClC,IAAI,KAAK,EAAE,CAAC;oBACV,8EAA8E;oBAC9E,yEAAyE;oBACzE,kFAAkF;oBAClF,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,yBACxB,KAAK,KACR,OAAO,EAAE,KAA0B,CAAC,8CAA8C;uBACnF,CAAC;oBACF,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,0DAA0D;gBAClF,CAAC;YACH,CAAC;YAED,MAAM,CAAC,cAAc,CAAC,KAAI,EAAE,IAAI,CAAC,IAAI,aACnC,GAAG,EAAE;oBACH,WAAW,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;oBAC7B,OAAO,KAAK,CAAC;gBACf,CAAC,IACE,IAAI,EACP,CAAC;QACL,CAAC,CAAC,CAAC;QAEL,IAAI,QAAQ,EAAE,CAAC;YACb,+DAA+D;YAC/D,qBAAqB,CAAC,GAAG,CAAC,EAAE,EAAE,kBAAkB,CAAC,CAAC;QACpD,CAAC;IACH,CAAC;IACH,qBAAC;AAAD,CAAC,AAjDD,IAiDC","sourcesContent":["import {\r\n AdapterPropName,\r\n AdapterPropType,\r\n getDefaultAdapterProps,\r\n reactiveConfigStorage\r\n} from './props';\r\nimport core from '../../version';\r\nimport { Reactive } from '../reactive';\r\nimport { wantedStorage, wantedUtils } from './wanted';\r\nimport { IReactivePropsStore, IAdapterConfig } from '../../interfaces/index';\r\n\r\nlet instanceCount = 0;\r\n\r\nexport class AdapterContext {\r\n constructor(config: IAdapterConfig) {\r\n const { mock, reactive } = config;\r\n const id = ++instanceCount;\r\n const conf = { configurable: true };\r\n const reactivePropsStore: IReactivePropsStore = {};\r\n wantedStorage.set(id, { box: {}, block: false });\r\n\r\n // set up permanent props\r\n Object.defineProperty(this, AdapterPropName.id, { get: () => id, ...conf });\r\n Object.defineProperty(this, AdapterPropName.mock, { get: () => mock, ...conf });\r\n Object.defineProperty(this, AdapterPropName.augmented, { get: () => false, ...conf });\r\n Object.defineProperty(this, AdapterPropName.version, { get: () => core.version, ...conf });\r\n\r\n // set up default props, they will be reassigned during the Adapter instantiation\r\n getDefaultAdapterProps()\r\n .filter(({ permanent }) => !permanent)\r\n .forEach(prop => {\r\n let { value } = prop;\r\n\r\n // reactive props might be reconfigured by the vscroll consumer\r\n if (reactive && prop.type === AdapterPropType.Reactive) {\r\n const react = reactive[prop.name];\r\n if (react) {\r\n // here we have a configured reactive property that came from the outer config\r\n // this prop must be exposed via Adapter, but at the same time we need to\r\n // persist the original default value as it will be used by the Adapter internally\r\n reactivePropsStore[prop.name] = {\r\n ...react,\r\n default: value as Reactive<unknown> // persisting the default native Reactive prop\r\n };\r\n value = react.source; // exposing the configured prop instead of the default one\r\n }\r\n }\r\n\r\n Object.defineProperty(this, prop.name, {\r\n get: () => {\r\n wantedUtils.setBox(prop, id);\r\n return value;\r\n },\r\n ...conf\r\n });\r\n });\r\n\r\n if (reactive) {\r\n // save both configured and default reactive props in the store\r\n reactiveConfigStorage.set(id, reactivePropsStore);\r\n }\r\n }\r\n}\r\n"]}
|
|
@@ -78,7 +78,7 @@ var bufferInfoDefault = {
|
|
|
78
78
|
maxIndex: NaN,
|
|
79
79
|
absMinIndex: -Infinity,
|
|
80
80
|
absMaxIndex: +Infinity,
|
|
81
|
-
defaultSize: NaN
|
|
81
|
+
defaultSize: NaN
|
|
82
82
|
};
|
|
83
83
|
export var EMPTY_ITEM = {
|
|
84
84
|
data: {},
|
|
@@ -247,7 +247,7 @@ export var getDefaultAdapterProps = function () { return [
|
|
|
247
247
|
{
|
|
248
248
|
type: Type.Function,
|
|
249
249
|
name: Name.relax,
|
|
250
|
-
value:
|
|
250
|
+
value: noopWF
|
|
251
251
|
},
|
|
252
252
|
{
|
|
253
253
|
type: Type.Function,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"props.js","sourceRoot":"","sources":["../../../../src/classes/adapter/props.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAKvC,MAAM,CAAN,IAAY,eAuCX;AAvCD,WAAY,eAAe;IACzB,4BAAS,CAAA;IACT,gCAAa,CAAA;IACb,0CAAuB,CAAA;IACvB,sCAAmB,CAAA;IACnB,gCAAa,CAAA;IACb,kCAAe,CAAA;IACf,8CAA2B,CAAA;IAC3B,4CAAyB,CAAA;IACzB,4CAAyB,CAAA;IACzB,0CAAuB,CAAA;IACvB,4CAAyB,CAAA;IACzB,8CAA2B,CAAA;IAC3B,gDAA6B,CAAA;IAC7B,gDAA6B,CAAA;IAC7B,kDAA+B,CAAA;IAC/B,8CAA2B,CAAA;IAC3B,gDAA6B,CAAA;IAC7B,8BAAW,CAAA;IACX,gCAAa,CAAA;IACb,8BAAW,CAAA;IACX,gCAAa,CAAA;IACb,oCAAiB,CAAA;IACjB,sCAAmB,CAAA;IACnB,kCAAe,CAAA;IACf,oCAAiB,CAAA;IACjB,oCAAiB,CAAA;IACjB,sCAAmB,CAAA;IACnB,kCAAe,CAAA;IACf,oCAAiB,CAAA;IACjB,gCAAa,CAAA;IACb,oCAAiB,CAAA;IACjB,sCAAmB,CAAA;IACnB,oCAAiB,CAAA;IACjB,kCAAe,CAAA;IACf,oCAAiB,CAAA;IACjB,8BAAW,CAAA;IACX,kCAAe,CAAA;IACf,sCAAmB,CAAA;AACrB,CAAC,EAvCW,eAAe,KAAf,eAAe,QAuC1B;AAED,MAAM,CAAN,IAAY,eAKX;AALD,WAAY,eAAe;IACzB,yDAAM,CAAA;IACN,6DAAQ,CAAA;IACR,yEAAc,CAAA;IACd,6DAAQ,CAAA;AACV,CAAC,EALW,eAAe,KAAf,eAAe,QAK1B;AAED,IAAM,IAAI,GAAG,eAAe,CAAC;AAC7B,IAAM,IAAI,GAAG,eAAe,CAAC;AAE7B,IAAM,IAAI,GAAG,cAAM,OAAA,IAAI,EAAJ,CAAI,CAAC;AAExB,MAAM,CAAC,IAAM,eAAe,GAAwB;IAClD,SAAS,EAAE,IAAI;IACf,OAAO,EAAE,IAAI;IACb,OAAO,EAAE,4BAA4B;CACtC,CAAC;AAEF,MAAM,CAAC,IAAM,kBAAkB,GAAwB;IACrD,SAAS,EAAE,IAAI;IACf,OAAO,EAAE,IAAI;IACb,OAAO,EAAE,oBAAoB;CAC9B,CAAC;AAEF,IAAM,MAAM,GAAG,cAAM,OAAA,OAAO,CAAC,OAAO,CAAC,eAAe,CAAC,EAAhC,CAAgC,CAAC;AAEtD,IAAM,gBAAgB,GAAc;IAClC,IAAI,EAAE;QACJ,IAAI,EAAE,EAAE;QACR,OAAO,EAAE,EAAE;KACZ;IACD,QAAQ,EAAE;QACR,IAAI,EAAE,EAAE;QACR,OAAO,EAAE,EAAE;KACZ;CACF,CAAC;AAEF,IAAM,iBAAiB,GAAgB;IACrC,UAAU,EAAE,GAAG;IACf,SAAS,EAAE,GAAG;IACd,QAAQ,EAAE,GAAG;IACb,QAAQ,EAAE,GAAG;IACb,WAAW,EAAE,CAAC,QAAQ;IACtB,WAAW,EAAE,CAAC,QAAQ;IACtB,WAAW,EAAE,GAAG;CACjB,CAAC;AAEF,MAAM,CAAC,IAAM,UAAU,GAAG;IACxB,IAAI,EAAE,EAAE;IACR,OAAO,EAAE,EAAE;CACG,CAAC;AAEjB,MAAM,CAAC,IAAM,sBAAsB,GAAG,cAAsB,OAAA;IAC1D;QACE,IAAI,EAAE,IAAI,CAAC,MAAM;QACjB,IAAI,EAAE,IAAI,CAAC,EAAE;QACb,KAAK,EAAE,CAAC;QACR,SAAS,EAAE,IAAI;KAChB;IACD;QACE,IAAI,EAAE,IAAI,CAAC,MAAM;QACjB,IAAI,EAAE,IAAI,CAAC,IAAI;QACf,KAAK,EAAE,IAAI;QACX,SAAS,EAAE,IAAI;KAChB;IACD;QACE,IAAI,EAAE,IAAI,CAAC,MAAM;QACjB,IAAI,EAAE,IAAI,CAAC,SAAS;QACpB,KAAK,EAAE,KAAK;QACZ,SAAS,EAAE,IAAI;KAChB;IACD;QACE,IAAI,EAAE,IAAI,CAAC,MAAM;QACjB,IAAI,EAAE,IAAI,CAAC,OAAO;QAClB,KAAK,EAAE,EAAE;QACT,SAAS,EAAE,IAAI;KAChB;IACD;QACE,IAAI,EAAE,IAAI,CAAC,MAAM;QACjB,IAAI,EAAE,IAAI,CAAC,IAAI;QACf,KAAK,EAAE,KAAK;QACZ,QAAQ,EAAE,IAAI,CAAC,KAAK;KACrB;IACD;QACE,IAAI,EAAE,IAAI,CAAC,MAAM;QACjB,IAAI,EAAE,IAAI,CAAC,WAAW;QACtB,KAAK,EAAE,gBAAgB;QACvB,QAAQ,EAAE,IAAI;KACf;IACD;QACE,IAAI,EAAE,IAAI,CAAC,MAAM;QACjB,IAAI,EAAE,IAAI,CAAC,UAAU;QACrB,KAAK,EAAE,CAAC;QACR,QAAQ,EAAE,IAAI;KACf;IACD;QACE,IAAI,EAAE,IAAI,CAAC,MAAM;QACjB,IAAI,EAAE,IAAI,CAAC,UAAU;QACrB,KAAK,EAAE,iBAAiB;QACxB,QAAQ,EAAE,IAAI;KACf;IACD;QACE,IAAI,EAAE,IAAI,CAAC,MAAM;QACjB,IAAI,EAAE,IAAI,CAAC,SAAS;QACpB,KAAK,EAAE,KAAK;QACZ,QAAQ,EAAE,IAAI,CAAC,UAAU;KAC1B;IACD;QACE,IAAI,EAAE,IAAI,CAAC,MAAM;QACjB,IAAI,EAAE,IAAI,CAAC,WAAW;QACtB,KAAK,EAAE,KAAK;QACZ,QAAQ,EAAE,IAAI,CAAC,YAAY;KAC5B;IACD;QACE,IAAI,EAAE,IAAI,CAAC,MAAM;QACjB,IAAI,EAAE,IAAI,CAAC,YAAY;QACvB,KAAK,EAAE,UAAU;QACjB,QAAQ,EAAE,IAAI,CAAC,aAAa;QAC5B,MAAM,EAAE,IAAI;KACb;IACD;QACE,IAAI,EAAE,IAAI,CAAC,MAAM;QACjB,IAAI,EAAE,IAAI,CAAC,WAAW;QACtB,KAAK,EAAE,UAAU;QACjB,QAAQ,EAAE,IAAI,CAAC,YAAY;QAC3B,MAAM,EAAE,IAAI;KACb;IACD;QACE,IAAI,EAAE,IAAI,CAAC,MAAM;QACjB,IAAI,EAAE,IAAI,CAAC,GAAG;QACd,KAAK,EAAE,KAAK;QACZ,QAAQ,EAAE,IAAI,CAAC,IAAI;KACpB;IACD;QACE,IAAI,EAAE,IAAI,CAAC,MAAM;QACjB,IAAI,EAAE,IAAI,CAAC,GAAG;QACd,KAAK,EAAE,KAAK;QACZ,QAAQ,EAAE,IAAI,CAAC,IAAI;KACpB;IACD;QACE,IAAI,EAAE,IAAI,CAAC,MAAM;QACjB,IAAI,EAAE,IAAI,CAAC,MAAM;QACjB,KAAK,EAAE,KAAK;QACZ,QAAQ,EAAE,IAAI,CAAC,OAAO;KACvB;IACD;QACE,IAAI,EAAE,IAAI,CAAC,cAAc;QACzB,IAAI,EAAE,IAAI,CAAC,KAAK;QAChB,KAAK,EAAE,MAAM;QACb,iBAAiB,EAAE,IAAI;KACxB;IACD;QACE,IAAI,EAAE,IAAI,CAAC,cAAc;QACzB,IAAI,EAAE,IAAI,CAAC,MAAM;QACjB,KAAK,EAAE,MAAM;KACd;IACD;QACE,IAAI,EAAE,IAAI,CAAC,cAAc;QACzB,IAAI,EAAE,IAAI,CAAC,MAAM;QACjB,KAAK,EAAE,MAAM;KACd;IACD;QACE,IAAI,EAAE,IAAI,CAAC,cAAc;QACzB,IAAI,EAAE,IAAI,CAAC,OAAO;QAClB,KAAK,EAAE,MAAM;KACd;IACD;QACE,IAAI,EAAE,IAAI,CAAC,cAAc;QACzB,IAAI,EAAE,IAAI,CAAC,KAAK;QAChB,KAAK,EAAE,MAAM;KACd;IACD;QACE,IAAI,EAAE,IAAI,CAAC,cAAc;QACzB,IAAI,EAAE,IAAI,CAAC,MAAM;QACjB,KAAK,EAAE,MAAM;KACd;IACD;QACE,IAAI,EAAE,IAAI,CAAC,cAAc;QACzB,IAAI,EAAE,IAAI,CAAC,IAAI;QACf,KAAK,EAAE,MAAM;KACd;IACD;QACE,IAAI,EAAE,IAAI,CAAC,cAAc;QACzB,IAAI,EAAE,IAAI,CAAC,MAAM;QACjB,KAAK,EAAE,MAAM;KACd;IACD;QACE,IAAI,EAAE,IAAI,CAAC,cAAc;QACzB,IAAI,EAAE,IAAI,CAAC,OAAO;QAClB,KAAK,EAAE,MAAM;KACd;IACD;QACE,IAAI,EAAE,IAAI,CAAC,cAAc;QACzB,IAAI,EAAE,IAAI,CAAC,MAAM;QACjB,KAAK,EAAE,MAAM;KACd;IACD;QACE,IAAI,EAAE,IAAI,CAAC,cAAc;QACzB,IAAI,EAAE,IAAI,CAAC,KAAK;QAChB,KAAK,EAAE,MAAM;KACd;IACD;QACE,IAAI,EAAE,IAAI,CAAC,cAAc;QACzB,IAAI,EAAE,IAAI,CAAC,MAAM;QACjB,KAAK,EAAE,MAAM;QACb,iBAAiB,EAAE,IAAI;KACxB;IACD;QACE,IAAI,EAAE,IAAI,CAAC,cAAc;QACzB,IAAI,EAAE,IAAI,CAAC,GAAG;QACd,KAAK,EAAE,MAAM;KACd;IACD;QACE,IAAI,EAAE,IAAI,CAAC,QAAQ;QACnB,IAAI,EAAE,IAAI,CAAC,KAAK;QAChB,KAAK,EAAE,IAAI;KACZ;IACD;QACE,IAAI,EAAE,IAAI,CAAC,QAAQ;QACnB,IAAI,EAAE,IAAI,CAAC,OAAO;QAClB,KAAK,EAAE,IAAI;KACZ;IACD;QACE,IAAI,EAAE,IAAI,CAAC,QAAQ;QACnB,IAAI,EAAE,IAAI,CAAC,KAAK;QAChB,KAAK,EAAE,IAAI,QAAQ,EAAW;KAC/B;IACD;QACE,IAAI,EAAE,IAAI,CAAC,QAAQ;QACnB,IAAI,EAAE,IAAI,CAAC,UAAU;QACrB,KAAK,EAAE,IAAI,QAAQ,EAAW;KAC/B;IACD;QACE,IAAI,EAAE,IAAI,CAAC,QAAQ;QACnB,IAAI,EAAE,IAAI,CAAC,YAAY;QACvB,KAAK,EAAE,IAAI,QAAQ,EAAW;KAC/B;IACD;QACE,IAAI,EAAE,IAAI,CAAC,QAAQ;QACnB,IAAI,EAAE,IAAI,CAAC,aAAa;QACxB,KAAK,EAAE,IAAI,QAAQ,CAAc,UAAU,EAAE,EAAE,eAAe,EAAE,IAAI,EAAE,CAAC;QACvE,MAAM,EAAE,IAAI;KACb;IACD;QACE,IAAI,EAAE,IAAI,CAAC,QAAQ;QACnB,IAAI,EAAE,IAAI,CAAC,YAAY;QACvB,KAAK,EAAE,IAAI,QAAQ,CAAc,UAAU,EAAE,EAAE,eAAe,EAAE,IAAI,EAAE,CAAC;QACvE,MAAM,EAAE,IAAI;KACb;IACD;QACE,IAAI,EAAE,IAAI,CAAC,QAAQ;QACnB,IAAI,EAAE,IAAI,CAAC,IAAI;QACf,KAAK,EAAE,IAAI,QAAQ,EAAW;KAC/B;IACD;QACE,IAAI,EAAE,IAAI,CAAC,QAAQ;QACnB,IAAI,EAAE,IAAI,CAAC,IAAI;QACf,KAAK,EAAE,IAAI,QAAQ,EAAW;KAC/B;IACD;QACE,IAAI,EAAE,IAAI,CAAC,QAAQ;QACnB,IAAI,EAAE,IAAI,CAAC,OAAO;QAClB,KAAK,EAAE,IAAI,QAAQ,EAAW;KAC/B;CACF,EApN2D,CAoN3D,CAAC;AAEF,MAAM,CAAC,IAAM,qBAAqB,GAAG,IAAI,GAAG,EAA+B,CAAC","sourcesContent":["import { Reactive } from '../reactive';\r\nimport {\r\n IAdapterProp, IBufferInfo, ItemAdapter, IPackages, AdapterMethodResult, IReactivePropsStore\r\n} from '../../interfaces/index';\r\n\r\nexport enum AdapterPropName {\r\n id = 'id',\r\n mock = 'mock',\r\n augmented = 'augmented',\r\n version = 'version',\r\n init = 'init',\r\n init$ = 'init$',\r\n packageInfo = 'packageInfo',\r\n itemsCount = 'itemsCount',\r\n bufferInfo = 'bufferInfo',\r\n isLoading = 'isLoading',\r\n isLoading$ = 'isLoading$',\r\n loopPending = 'loopPending',\r\n loopPending$ = 'loopPending$',\r\n firstVisible = 'firstVisible',\r\n firstVisible$ = 'firstVisible$',\r\n lastVisible = 'lastVisible',\r\n lastVisible$ = 'lastVisible$',\r\n bof = 'bof',\r\n bof$ = 'bof$',\r\n eof = 'eof',\r\n eof$ = 'eof$',\r\n paused = 'paused',\r\n paused$ = 'paused$',\r\n reset = 'reset',\r\n reload = 'reload',\r\n append = 'append',\r\n prepend = 'prepend',\r\n check = 'check',\r\n remove = 'remove',\r\n clip = 'clip',\r\n insert = 'insert',\r\n replace = 'replace',\r\n update = 'update',\r\n pause = 'pause',\r\n resume = 'resume',\r\n fix = 'fix',\r\n relax = 'relax',\r\n showLog = 'showLog',\r\n}\r\n\r\nexport enum AdapterPropType {\r\n Scalar,\r\n Reactive,\r\n WorkflowRunner,\r\n Function,\r\n}\r\n\r\nconst Name = AdapterPropName;\r\nconst Type = AdapterPropType;\r\n\r\nconst noop = () => null;\r\n\r\nexport const methodPreResult: AdapterMethodResult = {\r\n immediate: true,\r\n success: true,\r\n details: 'Adapter is not initialized'\r\n};\r\n\r\nexport const methodPausedResult: AdapterMethodResult = {\r\n immediate: true,\r\n success: true,\r\n details: 'Scroller is paused'\r\n};\r\n\r\nconst noopWF = () => Promise.resolve(methodPreResult);\r\n\r\nconst emptyPackageInfo: IPackages = {\r\n core: {\r\n name: '',\r\n version: ''\r\n },\r\n consumer: {\r\n name: '',\r\n version: ''\r\n }\r\n};\r\n\r\nconst bufferInfoDefault: IBufferInfo = {\r\n firstIndex: NaN,\r\n lastIndex: NaN,\r\n minIndex: NaN,\r\n maxIndex: NaN,\r\n absMinIndex: -Infinity,\r\n absMaxIndex: +Infinity,\r\n defaultSize: NaN,\r\n};\r\n\r\nexport const EMPTY_ITEM = {\r\n data: {},\r\n element: {}\r\n} as ItemAdapter;\r\n\r\nexport const getDefaultAdapterProps = (): IAdapterProp[] => [\r\n {\r\n type: Type.Scalar,\r\n name: Name.id,\r\n value: 0,\r\n permanent: true\r\n },\r\n {\r\n type: Type.Scalar,\r\n name: Name.mock,\r\n value: true,\r\n permanent: true\r\n },\r\n {\r\n type: Type.Scalar,\r\n name: Name.augmented,\r\n value: false,\r\n permanent: true\r\n },\r\n {\r\n type: Type.Scalar,\r\n name: Name.version,\r\n value: '',\r\n permanent: true\r\n },\r\n {\r\n type: Type.Scalar,\r\n name: Name.init,\r\n value: false,\r\n reactive: Name.init$\r\n },\r\n {\r\n type: Type.Scalar,\r\n name: Name.packageInfo,\r\n value: emptyPackageInfo,\r\n onDemand: true\r\n },\r\n {\r\n type: Type.Scalar,\r\n name: Name.itemsCount,\r\n value: 0,\r\n onDemand: true\r\n },\r\n {\r\n type: Type.Scalar,\r\n name: Name.bufferInfo,\r\n value: bufferInfoDefault,\r\n onDemand: true\r\n },\r\n {\r\n type: Type.Scalar,\r\n name: Name.isLoading,\r\n value: false,\r\n reactive: Name.isLoading$\r\n },\r\n {\r\n type: Type.Scalar,\r\n name: Name.loopPending,\r\n value: false,\r\n reactive: Name.loopPending$\r\n },\r\n {\r\n type: Type.Scalar,\r\n name: Name.firstVisible,\r\n value: EMPTY_ITEM,\r\n reactive: Name.firstVisible$,\r\n wanted: true\r\n },\r\n {\r\n type: Type.Scalar,\r\n name: Name.lastVisible,\r\n value: EMPTY_ITEM,\r\n reactive: Name.lastVisible$,\r\n wanted: true\r\n },\r\n {\r\n type: Type.Scalar,\r\n name: Name.bof,\r\n value: false,\r\n reactive: Name.bof$\r\n },\r\n {\r\n type: Type.Scalar,\r\n name: Name.eof,\r\n value: false,\r\n reactive: Name.eof$\r\n },\r\n {\r\n type: Type.Scalar,\r\n name: Name.paused,\r\n value: false,\r\n reactive: Name.paused$\r\n },\r\n {\r\n type: Type.WorkflowRunner,\r\n name: Name.reset,\r\n value: noopWF,\r\n allowedWhenPaused: true\r\n },\r\n {\r\n type: Type.WorkflowRunner,\r\n name: Name.reload,\r\n value: noopWF\r\n },\r\n {\r\n type: Type.WorkflowRunner,\r\n name: Name.append,\r\n value: noopWF\r\n },\r\n {\r\n type: Type.WorkflowRunner,\r\n name: Name.prepend,\r\n value: noopWF\r\n },\r\n {\r\n type: Type.WorkflowRunner,\r\n name: Name.check,\r\n value: noopWF\r\n },\r\n {\r\n type: Type.WorkflowRunner,\r\n name: Name.remove,\r\n value: noopWF\r\n },\r\n {\r\n type: Type.WorkflowRunner,\r\n name: Name.clip,\r\n value: noopWF\r\n },\r\n {\r\n type: Type.WorkflowRunner,\r\n name: Name.insert,\r\n value: noopWF\r\n },\r\n {\r\n type: Type.WorkflowRunner,\r\n name: Name.replace,\r\n value: noopWF\r\n },\r\n {\r\n type: Type.WorkflowRunner,\r\n name: Name.update,\r\n value: noopWF\r\n },\r\n {\r\n type: Type.WorkflowRunner,\r\n name: Name.pause,\r\n value: noopWF\r\n },\r\n {\r\n type: Type.WorkflowRunner,\r\n name: Name.resume,\r\n value: noopWF,\r\n allowedWhenPaused: true\r\n },\r\n {\r\n type: Type.WorkflowRunner,\r\n name: Name.fix,\r\n value: noopWF\r\n },\r\n {\r\n type: Type.Function,\r\n name: Name.relax,\r\n value: noop\r\n },\r\n {\r\n type: Type.Function,\r\n name: Name.showLog,\r\n value: noop\r\n },\r\n {\r\n type: Type.Reactive,\r\n name: Name.init$,\r\n value: new Reactive<boolean>()\r\n },\r\n {\r\n type: Type.Reactive,\r\n name: Name.isLoading$,\r\n value: new Reactive<boolean>()\r\n },\r\n {\r\n type: Type.Reactive,\r\n name: Name.loopPending$,\r\n value: new Reactive<boolean>()\r\n },\r\n {\r\n type: Type.Reactive,\r\n name: Name.firstVisible$,\r\n value: new Reactive<ItemAdapter>(EMPTY_ITEM, { emitOnSubscribe: true }),\r\n wanted: true\r\n },\r\n {\r\n type: Type.Reactive,\r\n name: Name.lastVisible$,\r\n value: new Reactive<ItemAdapter>(EMPTY_ITEM, { emitOnSubscribe: true }),\r\n wanted: true\r\n },\r\n {\r\n type: Type.Reactive,\r\n name: Name.bof$,\r\n value: new Reactive<boolean>()\r\n },\r\n {\r\n type: Type.Reactive,\r\n name: Name.eof$,\r\n value: new Reactive<boolean>()\r\n },\r\n {\r\n type: Type.Reactive,\r\n name: Name.paused$,\r\n value: new Reactive<boolean>()\r\n }\r\n];\r\n\r\nexport const reactiveConfigStorage = new Map<number, IReactivePropsStore>();\r\n"]}
|
|
1
|
+
{"version":3,"file":"props.js","sourceRoot":"","sources":["../../../../src/classes/adapter/props.ts"],"names":[],"mappings":"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","sourcesContent":["import { Reactive } from '../reactive';\r\nimport {\r\n IAdapterProp,\r\n IBufferInfo,\r\n ItemAdapter,\r\n IPackages,\r\n AdapterMethodResult,\r\n IReactivePropsStore\r\n} from '../../interfaces/index';\r\n\r\nexport enum AdapterPropName {\r\n id = 'id',\r\n mock = 'mock',\r\n augmented = 'augmented',\r\n version = 'version',\r\n init = 'init',\r\n init$ = 'init$',\r\n packageInfo = 'packageInfo',\r\n itemsCount = 'itemsCount',\r\n bufferInfo = 'bufferInfo',\r\n isLoading = 'isLoading',\r\n isLoading$ = 'isLoading$',\r\n loopPending = 'loopPending',\r\n loopPending$ = 'loopPending$',\r\n firstVisible = 'firstVisible',\r\n firstVisible$ = 'firstVisible$',\r\n lastVisible = 'lastVisible',\r\n lastVisible$ = 'lastVisible$',\r\n bof = 'bof',\r\n bof$ = 'bof$',\r\n eof = 'eof',\r\n eof$ = 'eof$',\r\n paused = 'paused',\r\n paused$ = 'paused$',\r\n reset = 'reset',\r\n reload = 'reload',\r\n append = 'append',\r\n prepend = 'prepend',\r\n check = 'check',\r\n remove = 'remove',\r\n clip = 'clip',\r\n insert = 'insert',\r\n replace = 'replace',\r\n update = 'update',\r\n pause = 'pause',\r\n resume = 'resume',\r\n fix = 'fix',\r\n relax = 'relax',\r\n showLog = 'showLog'\r\n}\r\n\r\nexport enum AdapterPropType {\r\n Scalar,\r\n Reactive,\r\n WorkflowRunner,\r\n Function\r\n}\r\n\r\nconst Name = AdapterPropName;\r\nconst Type = AdapterPropType;\r\n\r\nconst noop = () => null;\r\n\r\nexport const methodPreResult: AdapterMethodResult = {\r\n immediate: true,\r\n success: true,\r\n details: 'Adapter is not initialized'\r\n};\r\n\r\nexport const methodPausedResult: AdapterMethodResult = {\r\n immediate: true,\r\n success: true,\r\n details: 'Scroller is paused'\r\n};\r\n\r\nconst noopWF = () => Promise.resolve(methodPreResult);\r\n\r\nconst emptyPackageInfo: IPackages = {\r\n core: {\r\n name: '',\r\n version: ''\r\n },\r\n consumer: {\r\n name: '',\r\n version: ''\r\n }\r\n};\r\n\r\nconst bufferInfoDefault: IBufferInfo = {\r\n firstIndex: NaN,\r\n lastIndex: NaN,\r\n minIndex: NaN,\r\n maxIndex: NaN,\r\n absMinIndex: -Infinity,\r\n absMaxIndex: +Infinity,\r\n defaultSize: NaN\r\n};\r\n\r\nexport const EMPTY_ITEM = {\r\n data: {},\r\n element: {}\r\n} as ItemAdapter;\r\n\r\nexport const getDefaultAdapterProps = (): IAdapterProp[] => [\r\n {\r\n type: Type.Scalar,\r\n name: Name.id,\r\n value: 0,\r\n permanent: true\r\n },\r\n {\r\n type: Type.Scalar,\r\n name: Name.mock,\r\n value: true,\r\n permanent: true\r\n },\r\n {\r\n type: Type.Scalar,\r\n name: Name.augmented,\r\n value: false,\r\n permanent: true\r\n },\r\n {\r\n type: Type.Scalar,\r\n name: Name.version,\r\n value: '',\r\n permanent: true\r\n },\r\n {\r\n type: Type.Scalar,\r\n name: Name.init,\r\n value: false,\r\n reactive: Name.init$\r\n },\r\n {\r\n type: Type.Scalar,\r\n name: Name.packageInfo,\r\n value: emptyPackageInfo,\r\n onDemand: true\r\n },\r\n {\r\n type: Type.Scalar,\r\n name: Name.itemsCount,\r\n value: 0,\r\n onDemand: true\r\n },\r\n {\r\n type: Type.Scalar,\r\n name: Name.bufferInfo,\r\n value: bufferInfoDefault,\r\n onDemand: true\r\n },\r\n {\r\n type: Type.Scalar,\r\n name: Name.isLoading,\r\n value: false,\r\n reactive: Name.isLoading$\r\n },\r\n {\r\n type: Type.Scalar,\r\n name: Name.loopPending,\r\n value: false,\r\n reactive: Name.loopPending$\r\n },\r\n {\r\n type: Type.Scalar,\r\n name: Name.firstVisible,\r\n value: EMPTY_ITEM,\r\n reactive: Name.firstVisible$,\r\n wanted: true\r\n },\r\n {\r\n type: Type.Scalar,\r\n name: Name.lastVisible,\r\n value: EMPTY_ITEM,\r\n reactive: Name.lastVisible$,\r\n wanted: true\r\n },\r\n {\r\n type: Type.Scalar,\r\n name: Name.bof,\r\n value: false,\r\n reactive: Name.bof$\r\n },\r\n {\r\n type: Type.Scalar,\r\n name: Name.eof,\r\n value: false,\r\n reactive: Name.eof$\r\n },\r\n {\r\n type: Type.Scalar,\r\n name: Name.paused,\r\n value: false,\r\n reactive: Name.paused$\r\n },\r\n {\r\n type: Type.WorkflowRunner,\r\n name: Name.reset,\r\n value: noopWF,\r\n allowedWhenPaused: true\r\n },\r\n {\r\n type: Type.WorkflowRunner,\r\n name: Name.reload,\r\n value: noopWF\r\n },\r\n {\r\n type: Type.WorkflowRunner,\r\n name: Name.append,\r\n value: noopWF\r\n },\r\n {\r\n type: Type.WorkflowRunner,\r\n name: Name.prepend,\r\n value: noopWF\r\n },\r\n {\r\n type: Type.WorkflowRunner,\r\n name: Name.check,\r\n value: noopWF\r\n },\r\n {\r\n type: Type.WorkflowRunner,\r\n name: Name.remove,\r\n value: noopWF\r\n },\r\n {\r\n type: Type.WorkflowRunner,\r\n name: Name.clip,\r\n value: noopWF\r\n },\r\n {\r\n type: Type.WorkflowRunner,\r\n name: Name.insert,\r\n value: noopWF\r\n },\r\n {\r\n type: Type.WorkflowRunner,\r\n name: Name.replace,\r\n value: noopWF\r\n },\r\n {\r\n type: Type.WorkflowRunner,\r\n name: Name.update,\r\n value: noopWF\r\n },\r\n {\r\n type: Type.WorkflowRunner,\r\n name: Name.pause,\r\n value: noopWF\r\n },\r\n {\r\n type: Type.WorkflowRunner,\r\n name: Name.resume,\r\n value: noopWF,\r\n allowedWhenPaused: true\r\n },\r\n {\r\n type: Type.WorkflowRunner,\r\n name: Name.fix,\r\n value: noopWF\r\n },\r\n {\r\n type: Type.Function,\r\n name: Name.relax,\r\n value: noopWF\r\n },\r\n {\r\n type: Type.Function,\r\n name: Name.showLog,\r\n value: noop\r\n },\r\n {\r\n type: Type.Reactive,\r\n name: Name.init$,\r\n value: new Reactive<boolean>()\r\n },\r\n {\r\n type: Type.Reactive,\r\n name: Name.isLoading$,\r\n value: new Reactive<boolean>()\r\n },\r\n {\r\n type: Type.Reactive,\r\n name: Name.loopPending$,\r\n value: new Reactive<boolean>()\r\n },\r\n {\r\n type: Type.Reactive,\r\n name: Name.firstVisible$,\r\n value: new Reactive<ItemAdapter>(EMPTY_ITEM, { emitOnSubscribe: true }),\r\n wanted: true\r\n },\r\n {\r\n type: Type.Reactive,\r\n name: Name.lastVisible$,\r\n value: new Reactive<ItemAdapter>(EMPTY_ITEM, { emitOnSubscribe: true }),\r\n wanted: true\r\n },\r\n {\r\n type: Type.Reactive,\r\n name: Name.bof$,\r\n value: new Reactive<boolean>()\r\n },\r\n {\r\n type: Type.Reactive,\r\n name: Name.eof$,\r\n value: new Reactive<boolean>()\r\n },\r\n {\r\n type: Type.Reactive,\r\n name: Name.paused$,\r\n value: new Reactive<boolean>()\r\n }\r\n];\r\n\r\nexport const reactiveConfigStorage = new Map<number, IReactivePropsStore>();\r\n"]}
|
|
@@ -30,7 +30,6 @@ var Adapter = /** @class */ (function () {
|
|
|
30
30
|
this.source = {}; // for Reactive props
|
|
31
31
|
this.box = {}; // for Scalars over Reactive props
|
|
32
32
|
this.demand = {}; // for Scalars on demand
|
|
33
|
-
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
34
33
|
this.setFirstOrLastVisible = function (_) { };
|
|
35
34
|
this.getWorkflow = getWorkflow;
|
|
36
35
|
this.logger = logger;
|
|
@@ -39,7 +38,7 @@ var Adapter = /** @class */ (function () {
|
|
|
39
38
|
this.reloadCounter = 0;
|
|
40
39
|
var contextId = (context === null || context === void 0 ? void 0 : context.id) || -1;
|
|
41
40
|
// public context (if exists) should provide access to Reactive props config by id
|
|
42
|
-
var reactivePropsStore = context && reactiveConfigStorage.get(context.id) || {};
|
|
41
|
+
var reactivePropsStore = (context && reactiveConfigStorage.get(context.id)) || {};
|
|
43
42
|
// the Adapter initialization should not trigger "wanted" props setting;
|
|
44
43
|
// after the initialization is completed, "wanted" functionality must be unblocked
|
|
45
44
|
wantedUtils.setBlock(true, contextId);
|
|
@@ -54,7 +53,7 @@ var Adapter = /** @class */ (function () {
|
|
|
54
53
|
value = reactiveProp.default; // boolean doesn't matter here
|
|
55
54
|
}
|
|
56
55
|
}
|
|
57
|
-
return
|
|
56
|
+
return __assign(__assign({}, prop), { value: value });
|
|
58
57
|
})
|
|
59
58
|
: getDefaultAdapterProps();
|
|
60
59
|
// restore default reactive props if they were configured
|
|
@@ -97,10 +96,12 @@ var Adapter = /** @class */ (function () {
|
|
|
97
96
|
// so this method should be called when accessing the "wanted" props through one of the following getters
|
|
98
97
|
var processWanted = function (prop) {
|
|
99
98
|
if (wantedUtils.setBox(prop, contextId)) {
|
|
100
|
-
|
|
99
|
+
var firstPropList = [AdapterPropName.firstVisible, AdapterPropName.firstVisible$];
|
|
100
|
+
var lastPropList = [AdapterPropName.lastVisible, AdapterPropName.lastVisible$];
|
|
101
|
+
if (firstPropList.some(function (n) { return n === prop.name; })) {
|
|
101
102
|
_this.setFirstOrLastVisible({ first: true });
|
|
102
103
|
}
|
|
103
|
-
else if (
|
|
104
|
+
else if (lastPropList.some(function (n) { return n === prop.name; })) {
|
|
104
105
|
_this.setFirstOrLastVisible({ last: true });
|
|
105
106
|
}
|
|
106
107
|
}
|
|
@@ -150,8 +151,7 @@ var Adapter = /** @class */ (function () {
|
|
|
150
151
|
return;
|
|
151
152
|
}
|
|
152
153
|
// Adapter public context augmentation
|
|
153
|
-
adapterProps
|
|
154
|
-
.forEach(function (prop) {
|
|
154
|
+
adapterProps.forEach(function (prop) {
|
|
155
155
|
var name = prop.name, type = prop.type, permanent = prop.permanent;
|
|
156
156
|
var value = _this[name];
|
|
157
157
|
if (type === AdapterPropType.Function) {
|
|
@@ -245,23 +245,23 @@ var Adapter = /** @class */ (function () {
|
|
|
245
245
|
maxIndex: buffer.maxIndex,
|
|
246
246
|
absMinIndex: buffer.absMinIndex,
|
|
247
247
|
absMaxIndex: buffer.absMaxIndex,
|
|
248
|
-
defaultSize: buffer.defaultSize
|
|
248
|
+
defaultSize: buffer.defaultSize
|
|
249
249
|
}); }
|
|
250
250
|
});
|
|
251
251
|
this.bof = buffer.bof.get();
|
|
252
|
-
buffer.bof.on(function (bof) { return _this.bof = bof; });
|
|
252
|
+
buffer.bof.on(function (bof) { return (_this.bof = bof); });
|
|
253
253
|
this.eof = buffer.eof.get();
|
|
254
|
-
buffer.eof.on(function (eof) { return _this.eof = eof; });
|
|
254
|
+
buffer.eof.on(function (eof) { return (_this.eof = eof); });
|
|
255
255
|
// state
|
|
256
256
|
Object.defineProperty(this.demand, AdapterPropName.packageInfo, {
|
|
257
257
|
get: function () { return state.packageInfo; }
|
|
258
258
|
});
|
|
259
259
|
this.loopPending = state.cycle.innerLoop.busy.get();
|
|
260
|
-
state.cycle.innerLoop.busy.on(function (busy) { return _this.loopPending = busy; });
|
|
260
|
+
state.cycle.innerLoop.busy.on(function (busy) { return (_this.loopPending = busy); });
|
|
261
261
|
this.isLoading = state.cycle.busy.get();
|
|
262
|
-
state.cycle.busy.on(function (busy) { return _this.isLoading = busy; });
|
|
262
|
+
state.cycle.busy.on(function (busy) { return (_this.isLoading = busy); });
|
|
263
263
|
this.paused = state.paused.get();
|
|
264
|
-
state.paused.on(function (paused) { return _this.paused = paused; });
|
|
264
|
+
state.paused.on(function (paused) { return (_this.paused = paused); });
|
|
265
265
|
//viewport
|
|
266
266
|
this.setFirstOrLastVisible = function (_a) {
|
|
267
267
|
var _b, _c, _d;
|
|
@@ -339,8 +339,7 @@ var Adapter = /** @class */ (function () {
|
|
|
339
339
|
var _this = this;
|
|
340
340
|
var _a;
|
|
341
341
|
var reactiveStore = reactiveConfigStorage.get((_a = this.externalContext) === null || _a === void 0 ? void 0 : _a.id);
|
|
342
|
-
ADAPTER_PROPS_STUB
|
|
343
|
-
.forEach(function (_a) {
|
|
342
|
+
ADAPTER_PROPS_STUB.forEach(function (_a) {
|
|
344
343
|
var type = _a.type, permanent = _a.permanent, name = _a.name, value = _a.value;
|
|
345
344
|
// assign initial values to non-reactive non-permanent props
|
|
346
345
|
if (type !== AdapterPropType.Reactive && !permanent) {
|
|
@@ -481,7 +480,9 @@ var Adapter = /** @class */ (function () {
|
|
|
481
480
|
};
|
|
482
481
|
Adapter.prototype.relaxUnchained = function (callback, reloadId) {
|
|
483
482
|
var _this = this;
|
|
484
|
-
var runCallback = function () {
|
|
483
|
+
var runCallback = function () {
|
|
484
|
+
return typeof callback === 'function' && reloadId === _this.reloadId && callback();
|
|
485
|
+
};
|
|
485
486
|
if (!this.isLoading) {
|
|
486
487
|
runCallback();
|
|
487
488
|
}
|
|
@@ -504,7 +505,9 @@ var Adapter = /** @class */ (function () {
|
|
|
504
505
|
};
|
|
505
506
|
}
|
|
506
507
|
var success = reloadId === _this.reloadId;
|
|
507
|
-
(_b = (_a = _this.logger) === null || _a === void 0 ? void 0 : _a.log) === null || _b === void 0 ? void 0 : _b.call(_a, function () {
|
|
508
|
+
(_b = (_a = _this.logger) === null || _a === void 0 ? void 0 : _a.log) === null || _b === void 0 ? void 0 : _b.call(_a, function () {
|
|
509
|
+
return !success ? "relax promise cancelled due to ".concat(reloadId, " != ").concat(_this.reloadId) : void 0;
|
|
510
|
+
});
|
|
508
511
|
return {
|
|
509
512
|
immediate: immediate,
|
|
510
513
|
success: success,
|
|
@@ -519,12 +522,12 @@ var Adapter = /** @class */ (function () {
|
|
|
519
522
|
if (!this.init) {
|
|
520
523
|
return Promise.resolve(methodPreResult);
|
|
521
524
|
}
|
|
522
|
-
return this.relaxRun = this.relaxRun
|
|
525
|
+
return (this.relaxRun = this.relaxRun
|
|
523
526
|
? this.relaxRun.then(function () { return _this.relaxUnchained(callback, reloadId); })
|
|
524
527
|
: this.relaxUnchained(callback, reloadId).then(function (result) {
|
|
525
528
|
_this.relaxRun = null;
|
|
526
529
|
return result;
|
|
527
|
-
});
|
|
530
|
+
}));
|
|
528
531
|
};
|
|
529
532
|
Adapter.prototype.showLog = function () {
|
|
530
533
|
this.logger.logAdapterMethod('showLog');
|