diff --git a/.yarn/cache/@webassemblyjs-ast-npm-1.9.0-8e3ce7800f-8a9838dc7f.zip b/.yarn/cache/@webassemblyjs-ast-npm-1.9.0-8e3ce7800f-8a9838dc7f.zip new file mode 100644 index 000000000..00cafc604 Binary files /dev/null and b/.yarn/cache/@webassemblyjs-ast-npm-1.9.0-8e3ce7800f-8a9838dc7f.zip differ diff --git a/.yarn/cache/@webassemblyjs-floating-point-hex-parser-npm-1.9.0-0994d081ef-d3aeb19bc3.zip b/.yarn/cache/@webassemblyjs-floating-point-hex-parser-npm-1.9.0-0994d081ef-d3aeb19bc3.zip new file mode 100644 index 000000000..083e8f240 Binary files /dev/null and b/.yarn/cache/@webassemblyjs-floating-point-hex-parser-npm-1.9.0-0994d081ef-d3aeb19bc3.zip differ diff --git a/.yarn/cache/@webassemblyjs-helper-api-error-npm-1.9.0-ddb267a22d-9179d31486.zip b/.yarn/cache/@webassemblyjs-helper-api-error-npm-1.9.0-ddb267a22d-9179d31486.zip new file mode 100644 index 000000000..23a52033e Binary files /dev/null and b/.yarn/cache/@webassemblyjs-helper-api-error-npm-1.9.0-ddb267a22d-9179d31486.zip differ diff --git a/.yarn/cache/@webassemblyjs-helper-buffer-npm-1.9.0-6bac0f07b8-dcb85f630f.zip b/.yarn/cache/@webassemblyjs-helper-buffer-npm-1.9.0-6bac0f07b8-dcb85f630f.zip new file mode 100644 index 000000000..a41b841e0 Binary files /dev/null and b/.yarn/cache/@webassemblyjs-helper-buffer-npm-1.9.0-6bac0f07b8-dcb85f630f.zip differ diff --git a/.yarn/cache/@webassemblyjs-helper-code-frame-npm-1.9.0-81d2d67e07-a28fa057f7.zip b/.yarn/cache/@webassemblyjs-helper-code-frame-npm-1.9.0-81d2d67e07-a28fa057f7.zip new file mode 100644 index 000000000..2c9313256 Binary files /dev/null and b/.yarn/cache/@webassemblyjs-helper-code-frame-npm-1.9.0-81d2d67e07-a28fa057f7.zip differ diff --git a/.yarn/cache/@webassemblyjs-helper-fsm-npm-1.9.0-142437751c-374cc510c8.zip b/.yarn/cache/@webassemblyjs-helper-fsm-npm-1.9.0-142437751c-374cc510c8.zip new file mode 100644 index 000000000..1c229de11 Binary files /dev/null and b/.yarn/cache/@webassemblyjs-helper-fsm-npm-1.9.0-142437751c-374cc510c8.zip differ diff --git a/.yarn/cache/@webassemblyjs-helper-module-context-npm-1.9.0-f61a345630-55e8f89c7e.zip b/.yarn/cache/@webassemblyjs-helper-module-context-npm-1.9.0-f61a345630-55e8f89c7e.zip new file mode 100644 index 000000000..566751ad8 Binary files /dev/null and b/.yarn/cache/@webassemblyjs-helper-module-context-npm-1.9.0-f61a345630-55e8f89c7e.zip differ diff --git a/.yarn/cache/@webassemblyjs-helper-wasm-bytecode-npm-1.9.0-956a55196e-280da4df3c.zip b/.yarn/cache/@webassemblyjs-helper-wasm-bytecode-npm-1.9.0-956a55196e-280da4df3c.zip new file mode 100644 index 000000000..50346732e Binary files /dev/null and b/.yarn/cache/@webassemblyjs-helper-wasm-bytecode-npm-1.9.0-956a55196e-280da4df3c.zip differ diff --git a/.yarn/cache/@webassemblyjs-helper-wasm-section-npm-1.9.0-bfcf6c79b2-b8f7bb45d4.zip b/.yarn/cache/@webassemblyjs-helper-wasm-section-npm-1.9.0-bfcf6c79b2-b8f7bb45d4.zip new file mode 100644 index 000000000..40230e872 Binary files /dev/null and b/.yarn/cache/@webassemblyjs-helper-wasm-section-npm-1.9.0-bfcf6c79b2-b8f7bb45d4.zip differ diff --git a/.yarn/cache/@webassemblyjs-ieee754-npm-1.9.0-81eeb71bbf-7fe4a217ba.zip b/.yarn/cache/@webassemblyjs-ieee754-npm-1.9.0-81eeb71bbf-7fe4a217ba.zip new file mode 100644 index 000000000..2429cdfa7 Binary files /dev/null and b/.yarn/cache/@webassemblyjs-ieee754-npm-1.9.0-81eeb71bbf-7fe4a217ba.zip differ diff --git a/.yarn/cache/@webassemblyjs-leb128-npm-1.9.0-4ae214ef2b-4ca7cbb869.zip b/.yarn/cache/@webassemblyjs-leb128-npm-1.9.0-4ae214ef2b-4ca7cbb869.zip new file mode 100644 index 000000000..ab5c7b2b4 Binary files /dev/null and b/.yarn/cache/@webassemblyjs-leb128-npm-1.9.0-4ae214ef2b-4ca7cbb869.zip differ diff --git a/.yarn/cache/@webassemblyjs-utf8-npm-1.9.0-15e2572ae2-e328a30ac8.zip b/.yarn/cache/@webassemblyjs-utf8-npm-1.9.0-15e2572ae2-e328a30ac8.zip new file mode 100644 index 000000000..2f8a77257 Binary files /dev/null and b/.yarn/cache/@webassemblyjs-utf8-npm-1.9.0-15e2572ae2-e328a30ac8.zip differ diff --git a/.yarn/cache/@webassemblyjs-wasm-edit-npm-1.9.0-d249ae2fdf-1997e0c2f4.zip b/.yarn/cache/@webassemblyjs-wasm-edit-npm-1.9.0-d249ae2fdf-1997e0c2f4.zip new file mode 100644 index 000000000..725f1c1c3 Binary files /dev/null and b/.yarn/cache/@webassemblyjs-wasm-edit-npm-1.9.0-d249ae2fdf-1997e0c2f4.zip differ diff --git a/.yarn/cache/@webassemblyjs-wasm-gen-npm-1.9.0-f4562ce247-2456e84e8e.zip b/.yarn/cache/@webassemblyjs-wasm-gen-npm-1.9.0-f4562ce247-2456e84e8e.zip new file mode 100644 index 000000000..6dbcb0161 Binary files /dev/null and b/.yarn/cache/@webassemblyjs-wasm-gen-npm-1.9.0-f4562ce247-2456e84e8e.zip differ diff --git a/.yarn/cache/@webassemblyjs-wasm-opt-npm-1.9.0-e4c3dd00c8-91242205bd.zip b/.yarn/cache/@webassemblyjs-wasm-opt-npm-1.9.0-e4c3dd00c8-91242205bd.zip new file mode 100644 index 000000000..8be24c6bf Binary files /dev/null and b/.yarn/cache/@webassemblyjs-wasm-opt-npm-1.9.0-e4c3dd00c8-91242205bd.zip differ diff --git a/.yarn/cache/@webassemblyjs-wasm-parser-npm-1.9.0-a1515dd8ce-493f6cfc63.zip b/.yarn/cache/@webassemblyjs-wasm-parser-npm-1.9.0-a1515dd8ce-493f6cfc63.zip new file mode 100644 index 000000000..b86fb1d33 Binary files /dev/null and b/.yarn/cache/@webassemblyjs-wasm-parser-npm-1.9.0-a1515dd8ce-493f6cfc63.zip differ diff --git a/.yarn/cache/@webassemblyjs-wast-parser-npm-1.9.0-482b548b88-705dd48fbb.zip b/.yarn/cache/@webassemblyjs-wast-parser-npm-1.9.0-482b548b88-705dd48fbb.zip new file mode 100644 index 000000000..0947d39d0 Binary files /dev/null and b/.yarn/cache/@webassemblyjs-wast-parser-npm-1.9.0-482b548b88-705dd48fbb.zip differ diff --git a/.yarn/cache/@webassemblyjs-wast-printer-npm-1.9.0-1fa1d3e613-3d1e1b2e84.zip b/.yarn/cache/@webassemblyjs-wast-printer-npm-1.9.0-1fa1d3e613-3d1e1b2e84.zip new file mode 100644 index 000000000..b1b80a1fe Binary files /dev/null and b/.yarn/cache/@webassemblyjs-wast-printer-npm-1.9.0-1fa1d3e613-3d1e1b2e84.zip differ diff --git a/.yarn/cache/acorn-npm-6.4.2-94943eb66c-44b0705372.zip b/.yarn/cache/acorn-npm-6.4.2-94943eb66c-44b0705372.zip new file mode 100644 index 000000000..3d795b455 Binary files /dev/null and b/.yarn/cache/acorn-npm-6.4.2-94943eb66c-44b0705372.zip differ diff --git a/.yarn/cache/ansi-colors-npm-3.2.4-f3147b79e7-026c51880e.zip b/.yarn/cache/ansi-colors-npm-3.2.4-f3147b79e7-026c51880e.zip new file mode 100644 index 000000000..c1f14bedb Binary files /dev/null and b/.yarn/cache/ansi-colors-npm-3.2.4-f3147b79e7-026c51880e.zip differ diff --git a/.yarn/cache/aproba-npm-1.2.0-34129f0778-0fca141966.zip b/.yarn/cache/aproba-npm-1.2.0-34129f0778-0fca141966.zip new file mode 100644 index 000000000..87d8517ee Binary files /dev/null and b/.yarn/cache/aproba-npm-1.2.0-34129f0778-0fca141966.zip differ diff --git a/.yarn/cache/bonjour-npm-3.5.0-919b726638-2cfbe9fa86.zip b/.yarn/cache/bonjour-npm-3.5.0-919b726638-2cfbe9fa86.zip new file mode 100644 index 000000000..57e16fbdd Binary files /dev/null and b/.yarn/cache/bonjour-npm-3.5.0-919b726638-2cfbe9fa86.zip differ diff --git a/.yarn/cache/buffer-indexof-npm-1.1.1-551a129ddb-0967abc298.zip b/.yarn/cache/buffer-indexof-npm-1.1.1-551a129ddb-0967abc298.zip new file mode 100644 index 000000000..fa3120d33 Binary files /dev/null and b/.yarn/cache/buffer-indexof-npm-1.1.1-551a129ddb-0967abc298.zip differ diff --git a/.yarn/cache/buffer-npm-4.9.2-9e40b5e87a-8801bc1ba0.zip b/.yarn/cache/buffer-npm-4.9.2-9e40b5e87a-8801bc1ba0.zip new file mode 100644 index 000000000..d2ab6cbe3 Binary files /dev/null and b/.yarn/cache/buffer-npm-4.9.2-9e40b5e87a-8801bc1ba0.zip differ diff --git a/.yarn/cache/cacache-npm-12.0.4-0a601d06b9-c88a72f369.zip b/.yarn/cache/cacache-npm-12.0.4-0a601d06b9-c88a72f369.zip new file mode 100644 index 000000000..b64b4f1f0 Binary files /dev/null and b/.yarn/cache/cacache-npm-12.0.4-0a601d06b9-c88a72f369.zip differ diff --git a/.yarn/cache/cliui-npm-5.0.0-885b5f48ee-0bb8779efe.zip b/.yarn/cache/cliui-npm-5.0.0-885b5f48ee-0bb8779efe.zip new file mode 100644 index 000000000..96db49ca4 Binary files /dev/null and b/.yarn/cache/cliui-npm-5.0.0-885b5f48ee-0bb8779efe.zip differ diff --git a/.yarn/cache/compare-versions-npm-3.6.0-0bb57ed638-7492a50cda.zip b/.yarn/cache/compare-versions-npm-3.6.0-0bb57ed638-7492a50cda.zip new file mode 100644 index 000000000..02dce379f Binary files /dev/null and b/.yarn/cache/compare-versions-npm-3.6.0-0bb57ed638-7492a50cda.zip differ diff --git a/.yarn/cache/copy-concurrently-npm-1.0.5-a20f3c4b55-63c169f582.zip b/.yarn/cache/copy-concurrently-npm-1.0.5-a20f3c4b55-63c169f582.zip new file mode 100644 index 000000000..8d8f217ff Binary files /dev/null and b/.yarn/cache/copy-concurrently-npm-1.0.5-a20f3c4b55-63c169f582.zip differ diff --git a/.yarn/cache/copy-webpack-plugin-npm-5.0.5-247100b1c3-b0e4f537af.zip b/.yarn/cache/copy-webpack-plugin-npm-5.0.5-247100b1c3-b0e4f537af.zip new file mode 100644 index 000000000..ead6761f4 Binary files /dev/null and b/.yarn/cache/copy-webpack-plugin-npm-5.0.5-247100b1c3-b0e4f537af.zip differ diff --git a/.yarn/cache/css-loader-npm-3.2.1-a3060418e3-8035abc693.zip b/.yarn/cache/css-loader-npm-3.2.1-a3060418e3-8035abc693.zip new file mode 100644 index 000000000..716aa0f4b Binary files /dev/null and b/.yarn/cache/css-loader-npm-3.2.1-a3060418e3-8035abc693.zip differ diff --git a/.yarn/cache/cyclist-npm-1.0.1-e4eaffe3c5-3cc2fdeb35.zip b/.yarn/cache/cyclist-npm-1.0.1-e4eaffe3c5-3cc2fdeb35.zip new file mode 100644 index 000000000..03873abcb Binary files /dev/null and b/.yarn/cache/cyclist-npm-1.0.1-e4eaffe3c5-3cc2fdeb35.zip differ diff --git a/.yarn/cache/deep-equal-npm-1.1.1-67ff9c29b9-f92686f2c5.zip b/.yarn/cache/deep-equal-npm-1.1.1-67ff9c29b9-f92686f2c5.zip new file mode 100644 index 000000000..d9e0d3ff6 Binary files /dev/null and b/.yarn/cache/deep-equal-npm-1.1.1-67ff9c29b9-f92686f2c5.zip differ diff --git a/.yarn/cache/default-gateway-npm-4.2.0-f6bdd83987-1f5be76547.zip b/.yarn/cache/default-gateway-npm-4.2.0-f6bdd83987-1f5be76547.zip new file mode 100644 index 000000000..bab9b776d Binary files /dev/null and b/.yarn/cache/default-gateway-npm-4.2.0-f6bdd83987-1f5be76547.zip differ diff --git a/.yarn/cache/del-npm-4.1.1-8bc04567c6-521f7da44b.zip b/.yarn/cache/del-npm-4.1.1-8bc04567c6-521f7da44b.zip new file mode 100644 index 000000000..120409663 Binary files /dev/null and b/.yarn/cache/del-npm-4.1.1-8bc04567c6-521f7da44b.zip differ diff --git a/.yarn/cache/dir-glob-npm-2.2.2-932e08b501-3aa48714a9.zip b/.yarn/cache/dir-glob-npm-2.2.2-932e08b501-3aa48714a9.zip new file mode 100644 index 000000000..9b2ad619d Binary files /dev/null and b/.yarn/cache/dir-glob-npm-2.2.2-932e08b501-3aa48714a9.zip differ diff --git a/.yarn/cache/dns-packet-npm-1.3.4-abf04641ce-7dd87f85cb.zip b/.yarn/cache/dns-packet-npm-1.3.4-abf04641ce-7dd87f85cb.zip new file mode 100644 index 000000000..c5f373c70 Binary files /dev/null and b/.yarn/cache/dns-packet-npm-1.3.4-abf04641ce-7dd87f85cb.zip differ diff --git a/.yarn/cache/dns-txt-npm-2.0.2-69ed5a7cb3-80130b6653.zip b/.yarn/cache/dns-txt-npm-2.0.2-69ed5a7cb3-80130b6653.zip new file mode 100644 index 000000000..c3ebca740 Binary files /dev/null and b/.yarn/cache/dns-txt-npm-2.0.2-69ed5a7cb3-80130b6653.zip differ diff --git a/.yarn/cache/duplexify-npm-3.7.1-8f4f1e821f-3c2ed2223d.zip b/.yarn/cache/duplexify-npm-3.7.1-8f4f1e821f-3c2ed2223d.zip new file mode 100644 index 000000000..44b3eb998 Binary files /dev/null and b/.yarn/cache/duplexify-npm-3.7.1-8f4f1e821f-3c2ed2223d.zip differ diff --git a/.yarn/cache/emoji-regex-npm-7.0.3-cfe9479bb3-9159b2228b.zip b/.yarn/cache/emoji-regex-npm-7.0.3-cfe9479bb3-9159b2228b.zip new file mode 100644 index 000000000..22e27d234 Binary files /dev/null and b/.yarn/cache/emoji-regex-npm-7.0.3-cfe9479bb3-9159b2228b.zip differ diff --git a/.yarn/cache/enhanced-resolve-npm-4.5.0-1bcc7900d2-4d87488584.zip b/.yarn/cache/enhanced-resolve-npm-4.5.0-1bcc7900d2-4d87488584.zip new file mode 100644 index 000000000..7fe27b8ca Binary files /dev/null and b/.yarn/cache/enhanced-resolve-npm-4.5.0-1bcc7900d2-4d87488584.zip differ diff --git a/.yarn/cache/errno-npm-0.1.8-10ebc185bf-1271f7b9fb.zip b/.yarn/cache/errno-npm-0.1.8-10ebc185bf-1271f7b9fb.zip new file mode 100644 index 000000000..b88d29849 Binary files /dev/null and b/.yarn/cache/errno-npm-0.1.8-10ebc185bf-1271f7b9fb.zip differ diff --git a/.yarn/cache/eslint-scope-npm-4.0.3-1492c6d263-c5f835f681.zip b/.yarn/cache/eslint-scope-npm-4.0.3-1492c6d263-c5f835f681.zip new file mode 100644 index 000000000..ad2e0ed87 Binary files /dev/null and b/.yarn/cache/eslint-scope-npm-4.0.3-1492c6d263-c5f835f681.zip differ diff --git a/.yarn/cache/eventsource-npm-2.0.2-e94c48aca3-c0072d9727.zip b/.yarn/cache/eventsource-npm-2.0.2-e94c48aca3-c0072d9727.zip new file mode 100644 index 000000000..e09be5c38 Binary files /dev/null and b/.yarn/cache/eventsource-npm-2.0.2-e94c48aca3-c0072d9727.zip differ diff --git a/.yarn/cache/extract-text-webpack-plugin-npm-4.0.0-beta.0-bdc2698c80-04d13447ac.zip b/.yarn/cache/extract-text-webpack-plugin-npm-4.0.0-beta.0-bdc2698c80-04d13447ac.zip new file mode 100644 index 000000000..b01032d41 Binary files /dev/null and b/.yarn/cache/extract-text-webpack-plugin-npm-4.0.0-beta.0-bdc2698c80-04d13447ac.zip differ diff --git a/.yarn/cache/filesafe-embed-npm-1.0.9-c2a7ed70bc-35f55e1c51.zip b/.yarn/cache/filesafe-embed-npm-1.0.9-c2a7ed70bc-35f55e1c51.zip new file mode 100644 index 000000000..da082c315 Binary files /dev/null and b/.yarn/cache/filesafe-embed-npm-1.0.9-c2a7ed70bc-35f55e1c51.zip differ diff --git a/.yarn/cache/filesafe-js-npm-1.0.4-3f548adb7c-e76146439f.zip b/.yarn/cache/filesafe-js-npm-1.0.4-3f548adb7c-e76146439f.zip new file mode 100644 index 000000000..482c1a29e Binary files /dev/null and b/.yarn/cache/filesafe-js-npm-1.0.4-3f548adb7c-e76146439f.zip differ diff --git a/.yarn/cache/findup-sync-npm-3.0.0-aed78587f5-cafd706255.zip b/.yarn/cache/findup-sync-npm-3.0.0-aed78587f5-cafd706255.zip new file mode 100644 index 000000000..f4ecbf7d9 Binary files /dev/null and b/.yarn/cache/findup-sync-npm-3.0.0-aed78587f5-cafd706255.zip differ diff --git a/.yarn/cache/flush-write-stream-npm-1.1.1-54f7360c04-42e07747f8.zip b/.yarn/cache/flush-write-stream-npm-1.1.1-54f7360c04-42e07747f8.zip new file mode 100644 index 000000000..041ba1f03 Binary files /dev/null and b/.yarn/cache/flush-write-stream-npm-1.1.1-54f7360c04-42e07747f8.zip differ diff --git a/.yarn/cache/from2-npm-2.3.0-bd16dc410b-6080eba079.zip b/.yarn/cache/from2-npm-2.3.0-bd16dc410b-6080eba079.zip new file mode 100644 index 000000000..9f438256e Binary files /dev/null and b/.yarn/cache/from2-npm-2.3.0-bd16dc410b-6080eba079.zip differ diff --git a/.yarn/cache/fs-write-stream-atomic-npm-1.0.10-d6efbd9866-43c2d6817b.zip b/.yarn/cache/fs-write-stream-atomic-npm-1.0.10-d6efbd9866-43c2d6817b.zip new file mode 100644 index 000000000..55c047b36 Binary files /dev/null and b/.yarn/cache/fs-write-stream-atomic-npm-1.0.10-d6efbd9866-43c2d6817b.zip differ diff --git a/.yarn/cache/get-stdin-npm-7.0.0-a15c2d058d-a24ab2cf8e.zip b/.yarn/cache/get-stdin-npm-7.0.0-a15c2d058d-a24ab2cf8e.zip new file mode 100644 index 000000000..cb8558423 Binary files /dev/null and b/.yarn/cache/get-stdin-npm-7.0.0-a15c2d058d-a24ab2cf8e.zip differ diff --git a/.yarn/cache/globby-npm-7.1.1-6c96505a27-f0eba08a08.zip b/.yarn/cache/globby-npm-7.1.1-6c96505a27-f0eba08a08.zip new file mode 100644 index 000000000..991a029dd Binary files /dev/null and b/.yarn/cache/globby-npm-7.1.1-6c96505a27-f0eba08a08.zip differ diff --git a/.yarn/cache/html-entities-npm-1.4.0-39a1121015-4b73ffb9ee.zip b/.yarn/cache/html-entities-npm-1.4.0-39a1121015-4b73ffb9ee.zip new file mode 100644 index 000000000..b8560c2b7 Binary files /dev/null and b/.yarn/cache/html-entities-npm-1.4.0-39a1121015-4b73ffb9ee.zip differ diff --git a/.yarn/cache/http-proxy-middleware-npm-0.19.1-ba4e5c6109-64df043841.zip b/.yarn/cache/http-proxy-middleware-npm-0.19.1-ba4e5c6109-64df043841.zip new file mode 100644 index 000000000..462f7574c Binary files /dev/null and b/.yarn/cache/http-proxy-middleware-npm-0.19.1-ba4e5c6109-64df043841.zip differ diff --git a/.yarn/cache/husky-npm-3.1.0-5cc13e4e34-15a8eeb5ca.zip b/.yarn/cache/husky-npm-3.1.0-5cc13e4e34-15a8eeb5ca.zip new file mode 100644 index 000000000..c8aaf6c8d Binary files /dev/null and b/.yarn/cache/husky-npm-3.1.0-5cc13e4e34-15a8eeb5ca.zip differ diff --git a/.yarn/cache/iferr-npm-0.1.5-c49f4a3fbc-a18d19b6ad.zip b/.yarn/cache/iferr-npm-0.1.5-c49f4a3fbc-a18d19b6ad.zip new file mode 100644 index 000000000..d23aa031a Binary files /dev/null and b/.yarn/cache/iferr-npm-0.1.5-c49f4a3fbc-a18d19b6ad.zip differ diff --git a/.yarn/cache/ignore-npm-3.3.10-baaf3519b5-23e8cc776e.zip b/.yarn/cache/ignore-npm-3.3.10-baaf3519b5-23e8cc776e.zip new file mode 100644 index 000000000..e1d03572f Binary files /dev/null and b/.yarn/cache/ignore-npm-3.3.10-baaf3519b5-23e8cc776e.zip differ diff --git a/.yarn/cache/import-local-npm-2.0.0-9cfca832bf-b846925248.zip b/.yarn/cache/import-local-npm-2.0.0-9cfca832bf-b846925248.zip new file mode 100644 index 000000000..279061fb2 Binary files /dev/null and b/.yarn/cache/import-local-npm-2.0.0-9cfca832bf-b846925248.zip differ diff --git a/.yarn/cache/internal-ip-npm-4.3.0-721bfbef82-c970433c84.zip b/.yarn/cache/internal-ip-npm-4.3.0-721bfbef82-c970433c84.zip new file mode 100644 index 000000000..d62b6e7cc Binary files /dev/null and b/.yarn/cache/internal-ip-npm-4.3.0-721bfbef82-c970433c84.zip differ diff --git a/.yarn/cache/interpret-npm-1.4.0-17b4b5b0a4-2e5f51268b.zip b/.yarn/cache/interpret-npm-1.4.0-17b4b5b0a4-2e5f51268b.zip new file mode 100644 index 000000000..1b6c6b147 Binary files /dev/null and b/.yarn/cache/interpret-npm-1.4.0-17b4b5b0a4-2e5f51268b.zip differ diff --git a/.yarn/cache/ip-regex-npm-2.1.0-7eb0f6c4ab-331d95052a.zip b/.yarn/cache/ip-regex-npm-2.1.0-7eb0f6c4ab-331d95052a.zip new file mode 100644 index 000000000..3d05f86d7 Binary files /dev/null and b/.yarn/cache/ip-regex-npm-2.1.0-7eb0f6c4ab-331d95052a.zip differ diff --git a/.yarn/cache/is-absolute-url-npm-3.0.3-0b1c391bc4-5159b51d06.zip b/.yarn/cache/is-absolute-url-npm-3.0.3-0b1c391bc4-5159b51d06.zip new file mode 100644 index 000000000..3cb11ed8e Binary files /dev/null and b/.yarn/cache/is-absolute-url-npm-3.0.3-0b1c391bc4-5159b51d06.zip differ diff --git a/.yarn/cache/is-arguments-npm-1.1.1-eff4f6d4d7-7f02700ec2.zip b/.yarn/cache/is-arguments-npm-1.1.1-eff4f6d4d7-7f02700ec2.zip new file mode 100644 index 000000000..9b956d869 Binary files /dev/null and b/.yarn/cache/is-arguments-npm-1.1.1-eff4f6d4d7-7f02700ec2.zip differ diff --git a/.yarn/cache/is-path-in-cwd-npm-2.1.0-2a2ca98522-6b01b3f8c9.zip b/.yarn/cache/is-path-in-cwd-npm-2.1.0-2a2ca98522-6b01b3f8c9.zip new file mode 100644 index 000000000..a23372a71 Binary files /dev/null and b/.yarn/cache/is-path-in-cwd-npm-2.1.0-2a2ca98522-6b01b3f8c9.zip differ diff --git a/.yarn/cache/is-path-inside-npm-2.1.0-f943552e7a-6ca34dbd84.zip b/.yarn/cache/is-path-inside-npm-2.1.0-f943552e7a-6ca34dbd84.zip new file mode 100644 index 000000000..9e86393fb Binary files /dev/null and b/.yarn/cache/is-path-inside-npm-2.1.0-f943552e7a-6ca34dbd84.zip differ diff --git a/.yarn/cache/killable-npm-1.0.1-bf69803651-911a85c6e3.zip b/.yarn/cache/killable-npm-1.0.1-bf69803651-911a85c6e3.zip new file mode 100644 index 000000000..f632a3612 Binary files /dev/null and b/.yarn/cache/killable-npm-1.0.1-bf69803651-911a85c6e3.zip differ diff --git a/.yarn/cache/loader-runner-npm-2.4.0-c414104c2f-e27eebbca5.zip b/.yarn/cache/loader-runner-npm-2.4.0-c414104c2f-e27eebbca5.zip new file mode 100644 index 000000000..c2d953f3c Binary files /dev/null and b/.yarn/cache/loader-runner-npm-2.4.0-c414104c2f-e27eebbca5.zip differ diff --git a/.yarn/cache/loglevel-npm-1.8.0-521cbfe852-41aeea17de.zip b/.yarn/cache/loglevel-npm-1.8.0-521cbfe852-41aeea17de.zip new file mode 100644 index 000000000..5eecf99db Binary files /dev/null and b/.yarn/cache/loglevel-npm-1.8.0-521cbfe852-41aeea17de.zip differ diff --git a/.yarn/cache/lru-cache-npm-5.1.1-f475882a51-c154ae1cbb.zip b/.yarn/cache/lru-cache-npm-5.1.1-f475882a51-c154ae1cbb.zip new file mode 100644 index 000000000..3f6ba116e Binary files /dev/null and b/.yarn/cache/lru-cache-npm-5.1.1-f475882a51-c154ae1cbb.zip differ diff --git a/.yarn/cache/memory-fs-npm-0.4.1-0a5f9b8954-6db6c8682e.zip b/.yarn/cache/memory-fs-npm-0.4.1-0a5f9b8954-6db6c8682e.zip new file mode 100644 index 000000000..f23a417d9 Binary files /dev/null and b/.yarn/cache/memory-fs-npm-0.4.1-0a5f9b8954-6db6c8682e.zip differ diff --git a/.yarn/cache/memory-fs-npm-0.5.0-8be5938449-a9f25b0a8e.zip b/.yarn/cache/memory-fs-npm-0.5.0-8be5938449-a9f25b0a8e.zip new file mode 100644 index 000000000..5798a1f67 Binary files /dev/null and b/.yarn/cache/memory-fs-npm-0.5.0-8be5938449-a9f25b0a8e.zip differ diff --git a/.yarn/cache/mississippi-npm-3.0.0-02447e293b-84b3d98896.zip b/.yarn/cache/mississippi-npm-3.0.0-02447e293b-84b3d98896.zip new file mode 100644 index 000000000..cb01aae8e Binary files /dev/null and b/.yarn/cache/mississippi-npm-3.0.0-02447e293b-84b3d98896.zip differ diff --git a/.yarn/cache/move-concurrently-npm-1.0.1-e1e3c7e2cf-4ea3296c15.zip b/.yarn/cache/move-concurrently-npm-1.0.1-e1e3c7e2cf-4ea3296c15.zip new file mode 100644 index 000000000..22aebf3f9 Binary files /dev/null and b/.yarn/cache/move-concurrently-npm-1.0.1-e1e3c7e2cf-4ea3296c15.zip differ diff --git a/.yarn/cache/multicast-dns-npm-6.2.3-e5ffad56a4-f515b49ca9.zip b/.yarn/cache/multicast-dns-npm-6.2.3-e5ffad56a4-f515b49ca9.zip new file mode 100644 index 000000000..4340c8e28 Binary files /dev/null and b/.yarn/cache/multicast-dns-npm-6.2.3-e5ffad56a4-f515b49ca9.zip differ diff --git a/.yarn/cache/multicast-dns-service-types-npm-1.1.0-d019ff060c-0979fca1cc.zip b/.yarn/cache/multicast-dns-service-types-npm-1.1.0-d019ff060c-0979fca1cc.zip new file mode 100644 index 000000000..d4666c43b Binary files /dev/null and b/.yarn/cache/multicast-dns-service-types-npm-1.1.0-d019ff060c-0979fca1cc.zip differ diff --git a/.yarn/cache/node-forge-npm-0.10.0-605ba7b28b-5aa6dc9922.zip b/.yarn/cache/node-forge-npm-0.10.0-605ba7b28b-5aa6dc9922.zip new file mode 100644 index 000000000..1fb381394 Binary files /dev/null and b/.yarn/cache/node-forge-npm-0.10.0-605ba7b28b-5aa6dc9922.zip differ diff --git a/.yarn/cache/node-libs-browser-npm-2.2.1-ffef534730-41fa792737.zip b/.yarn/cache/node-libs-browser-npm-2.2.1-ffef534730-41fa792737.zip new file mode 100644 index 000000000..2d3375668 Binary files /dev/null and b/.yarn/cache/node-libs-browser-npm-2.2.1-ffef534730-41fa792737.zip differ diff --git a/.yarn/cache/object-is-npm-1.1.5-48a862602b-989b18c4cb.zip b/.yarn/cache/object-is-npm-1.1.5-48a862602b-989b18c4cb.zip new file mode 100644 index 000000000..9968bdd5f Binary files /dev/null and b/.yarn/cache/object-is-npm-1.1.5-48a862602b-989b18c4cb.zip differ diff --git a/.yarn/cache/open-browser-webpack-plugin-npm-0.0.5-d230f8f0b1-a7d604e97e.zip b/.yarn/cache/open-browser-webpack-plugin-npm-0.0.5-d230f8f0b1-a7d604e97e.zip new file mode 100644 index 000000000..13f359bd0 Binary files /dev/null and b/.yarn/cache/open-browser-webpack-plugin-npm-0.0.5-d230f8f0b1-a7d604e97e.zip differ diff --git a/.yarn/cache/open-npm-0.0.5-51dbbedf8e-2a1a5a0acc.zip b/.yarn/cache/open-npm-0.0.5-51dbbedf8e-2a1a5a0acc.zip new file mode 100644 index 000000000..486b5df95 Binary files /dev/null and b/.yarn/cache/open-npm-0.0.5-51dbbedf8e-2a1a5a0acc.zip differ diff --git a/.yarn/cache/opencollective-postinstall-npm-2.0.3-954643c36b-0a68c5cef1.zip b/.yarn/cache/opencollective-postinstall-npm-2.0.3-954643c36b-0a68c5cef1.zip new file mode 100644 index 000000000..08b384567 Binary files /dev/null and b/.yarn/cache/opencollective-postinstall-npm-2.0.3-954643c36b-0a68c5cef1.zip differ diff --git a/.yarn/cache/opn-npm-5.5.0-9a97e03147-35b677b5a1.zip b/.yarn/cache/opn-npm-5.5.0-9a97e03147-35b677b5a1.zip new file mode 100644 index 000000000..3888634df Binary files /dev/null and b/.yarn/cache/opn-npm-5.5.0-9a97e03147-35b677b5a1.zip differ diff --git a/.yarn/cache/p-map-npm-2.1.0-d9e865dc7c-9e3ad3c9f6.zip b/.yarn/cache/p-map-npm-2.1.0-d9e865dc7c-9e3ad3c9f6.zip new file mode 100644 index 000000000..67932a068 Binary files /dev/null and b/.yarn/cache/p-map-npm-2.1.0-d9e865dc7c-9e3ad3c9f6.zip differ diff --git a/.yarn/cache/p-retry-npm-3.0.1-1abc743ac9-702efc63fc.zip b/.yarn/cache/p-retry-npm-3.0.1-1abc743ac9-702efc63fc.zip new file mode 100644 index 000000000..b958de450 Binary files /dev/null and b/.yarn/cache/p-retry-npm-3.0.1-1abc743ac9-702efc63fc.zip differ diff --git a/.yarn/cache/parallel-transform-npm-1.2.0-4985a87bcf-ab6ddc1a66.zip b/.yarn/cache/parallel-transform-npm-1.2.0-4985a87bcf-ab6ddc1a66.zip new file mode 100644 index 000000000..7628fc282 Binary files /dev/null and b/.yarn/cache/parallel-transform-npm-1.2.0-4985a87bcf-ab6ddc1a66.zip differ diff --git a/.yarn/cache/please-upgrade-node-npm-3.2.0-3f653350ed-d87c41581a.zip b/.yarn/cache/please-upgrade-node-npm-3.2.0-3f653350ed-d87c41581a.zip new file mode 100644 index 000000000..f65fb9127 Binary files /dev/null and b/.yarn/cache/please-upgrade-node-npm-3.2.0-3f653350ed-d87c41581a.zip differ diff --git a/.yarn/cache/prr-npm-1.0.1-608d442761-3bca2db047.zip b/.yarn/cache/prr-npm-1.0.1-608d442761-3bca2db047.zip new file mode 100644 index 000000000..30374d9eb Binary files /dev/null and b/.yarn/cache/prr-npm-1.0.1-608d442761-3bca2db047.zip differ diff --git a/.yarn/cache/pump-npm-2.0.1-05afac7fc4-e9f26a17be.zip b/.yarn/cache/pump-npm-2.0.1-05afac7fc4-e9f26a17be.zip new file mode 100644 index 000000000..c3cf65b0c Binary files /dev/null and b/.yarn/cache/pump-npm-2.0.1-05afac7fc4-e9f26a17be.zip differ diff --git a/.yarn/cache/pumpify-npm-1.5.1-b928bd877f-26ca412ec8.zip b/.yarn/cache/pumpify-npm-1.5.1-b928bd877f-26ca412ec8.zip new file mode 100644 index 000000000..15b72f3b8 Binary files /dev/null and b/.yarn/cache/pumpify-npm-1.5.1-b928bd877f-26ca412ec8.zip differ diff --git a/.yarn/cache/querystringify-npm-2.2.0-4e77c9f606-5641ea231b.zip b/.yarn/cache/querystringify-npm-2.2.0-4e77c9f606-5641ea231b.zip new file mode 100644 index 000000000..492bf88ef Binary files /dev/null and b/.yarn/cache/querystringify-npm-2.2.0-4e77c9f606-5641ea231b.zip differ diff --git a/.yarn/cache/react-dom-npm-16.11.0-3f634e8906-2e74d1c8c5.zip b/.yarn/cache/react-dom-npm-16.11.0-3f634e8906-2e74d1c8c5.zip new file mode 100644 index 000000000..a58b7554c Binary files /dev/null and b/.yarn/cache/react-dom-npm-16.11.0-3f634e8906-2e74d1c8c5.zip differ diff --git a/.yarn/cache/react-npm-16.11.0-63281b6f33-f2627416c3.zip b/.yarn/cache/react-npm-16.11.0-63281b6f33-f2627416c3.zip new file mode 100644 index 000000000..9ba94ffe2 Binary files /dev/null and b/.yarn/cache/react-npm-16.11.0-63281b6f33-f2627416c3.zip differ diff --git a/.yarn/cache/resolve-cwd-npm-2.0.0-cce7da6fd4-e7c16880c4.zip b/.yarn/cache/resolve-cwd-npm-2.0.0-cce7da6fd4-e7c16880c4.zip new file mode 100644 index 000000000..073a71bbc Binary files /dev/null and b/.yarn/cache/resolve-cwd-npm-2.0.0-cce7da6fd4-e7c16880c4.zip differ diff --git a/.yarn/cache/run-node-npm-1.0.0-897c9cb906-99a0846de1.zip b/.yarn/cache/run-node-npm-1.0.0-897c9cb906-99a0846de1.zip new file mode 100644 index 000000000..62f7f1579 Binary files /dev/null and b/.yarn/cache/run-node-npm-1.0.0-897c9cb906-99a0846de1.zip differ diff --git a/.yarn/cache/run-queue-npm-1.0.3-a704fcadc0-c4541e18b5.zip b/.yarn/cache/run-queue-npm-1.0.3-a704fcadc0-c4541e18b5.zip new file mode 100644 index 000000000..d63e0f892 Binary files /dev/null and b/.yarn/cache/run-queue-npm-1.0.3-a704fcadc0-c4541e18b5.zip differ diff --git a/.yarn/cache/sass-loader-npm-8.0.2-f0d209ad64-3e9ba97432.zip b/.yarn/cache/sass-loader-npm-8.0.2-f0d209ad64-3e9ba97432.zip new file mode 100644 index 000000000..517bdb9d2 Binary files /dev/null and b/.yarn/cache/sass-loader-npm-8.0.2-f0d209ad64-3e9ba97432.zip differ diff --git a/.yarn/cache/scheduler-npm-0.17.0-5c42088cec-18d1e66cad.zip b/.yarn/cache/scheduler-npm-0.17.0-5c42088cec-18d1e66cad.zip new file mode 100644 index 000000000..bb0e52058 Binary files /dev/null and b/.yarn/cache/scheduler-npm-0.17.0-5c42088cec-18d1e66cad.zip differ diff --git a/.yarn/cache/schema-utils-npm-0.4.7-2f056f51d8-acee0b7aee.zip b/.yarn/cache/schema-utils-npm-0.4.7-2f056f51d8-acee0b7aee.zip new file mode 100644 index 000000000..024d5ad9e Binary files /dev/null and b/.yarn/cache/schema-utils-npm-0.4.7-2f056f51d8-acee0b7aee.zip differ diff --git a/.yarn/cache/selfsigned-npm-1.10.14-bfd3922dfd-616d131b18.zip b/.yarn/cache/selfsigned-npm-1.10.14-bfd3922dfd-616d131b18.zip new file mode 100644 index 000000000..a00a4f107 Binary files /dev/null and b/.yarn/cache/selfsigned-npm-1.10.14-bfd3922dfd-616d131b18.zip differ diff --git a/.yarn/cache/serialize-javascript-npm-2.1.2-5c32ad4093-16ce4e4886.zip b/.yarn/cache/serialize-javascript-npm-2.1.2-5c32ad4093-16ce4e4886.zip new file mode 100644 index 000000000..a7eb56223 Binary files /dev/null and b/.yarn/cache/serialize-javascript-npm-2.1.2-5c32ad4093-16ce4e4886.zip differ diff --git a/.yarn/cache/sn-components-api-npm-1.2.8-b00e487843-8b02be958b.zip b/.yarn/cache/sn-components-api-npm-1.2.8-b00e487843-8b02be958b.zip new file mode 100644 index 000000000..a0a71faee Binary files /dev/null and b/.yarn/cache/sn-components-api-npm-1.2.8-b00e487843-8b02be958b.zip differ diff --git a/.yarn/cache/sockjs-client-npm-1.6.1-e9cbd57be6-c7623bbc98.zip b/.yarn/cache/sockjs-client-npm-1.6.1-e9cbd57be6-c7623bbc98.zip new file mode 100644 index 000000000..c1414a7cd Binary files /dev/null and b/.yarn/cache/sockjs-client-npm-1.6.1-e9cbd57be6-c7623bbc98.zip differ diff --git a/.yarn/cache/ssri-npm-6.0.2-4b770f07fd-7c2e5d442f.zip b/.yarn/cache/ssri-npm-6.0.2-4b770f07fd-7c2e5d442f.zip new file mode 100644 index 000000000..653c94ee0 Binary files /dev/null and b/.yarn/cache/ssri-npm-6.0.2-4b770f07fd-7c2e5d442f.zip differ diff --git a/.yarn/cache/stream-each-npm-1.2.3-ff15985d6a-f243de78e9.zip b/.yarn/cache/stream-each-npm-1.2.3-ff15985d6a-f243de78e9.zip new file mode 100644 index 000000000..b801565cb Binary files /dev/null and b/.yarn/cache/stream-each-npm-1.2.3-ff15985d6a-f243de78e9.zip differ diff --git a/.yarn/cache/stream-http-npm-2.8.3-7691e2a9d5-f57dfaa21a.zip b/.yarn/cache/stream-http-npm-2.8.3-7691e2a9d5-f57dfaa21a.zip new file mode 100644 index 000000000..ff0b5e3f7 Binary files /dev/null and b/.yarn/cache/stream-http-npm-2.8.3-7691e2a9d5-f57dfaa21a.zip differ diff --git a/.yarn/cache/stream-shift-npm-1.0.1-9526210fa7-59b82b44b2.zip b/.yarn/cache/stream-shift-npm-1.0.1-9526210fa7-59b82b44b2.zip new file mode 100644 index 000000000..9d7aa2763 Binary files /dev/null and b/.yarn/cache/stream-shift-npm-1.0.1-9526210fa7-59b82b44b2.zip differ diff --git a/.yarn/cache/string-width-npm-3.1.0-e031bfa4e0-57f7ca73d2.zip b/.yarn/cache/string-width-npm-3.1.0-e031bfa4e0-57f7ca73d2.zip new file mode 100644 index 000000000..706d03c8c Binary files /dev/null and b/.yarn/cache/string-width-npm-3.1.0-e031bfa4e0-57f7ca73d2.zip differ diff --git a/.yarn/cache/style-loader-npm-1.0.2-291cc8915c-40aaa3fd9d.zip b/.yarn/cache/style-loader-npm-1.0.2-291cc8915c-40aaa3fd9d.zip new file mode 100644 index 000000000..053619f3f Binary files /dev/null and b/.yarn/cache/style-loader-npm-1.0.2-291cc8915c-40aaa3fd9d.zip differ diff --git a/.yarn/cache/supports-color-npm-6.1.0-7d19cd7f55-74358f9535.zip b/.yarn/cache/supports-color-npm-6.1.0-7d19cd7f55-74358f9535.zip new file mode 100644 index 000000000..4d26d1126 Binary files /dev/null and b/.yarn/cache/supports-color-npm-6.1.0-7d19cd7f55-74358f9535.zip differ diff --git a/.yarn/cache/terser-npm-4.8.0-272e3d2592-f980789097.zip b/.yarn/cache/terser-npm-4.8.0-272e3d2592-f980789097.zip new file mode 100644 index 000000000..7bb84c688 Binary files /dev/null and b/.yarn/cache/terser-npm-4.8.0-272e3d2592-f980789097.zip differ diff --git a/.yarn/cache/terser-webpack-plugin-npm-1.4.5-d14c27a9f3-02aada8092.zip b/.yarn/cache/terser-webpack-plugin-npm-1.4.5-d14c27a9f3-02aada8092.zip new file mode 100644 index 000000000..ce57b3cd6 Binary files /dev/null and b/.yarn/cache/terser-webpack-plugin-npm-1.4.5-d14c27a9f3-02aada8092.zip differ diff --git a/.yarn/cache/timers-browserify-npm-2.0.12-ad02d37cc3-ec37ae2990.zip b/.yarn/cache/timers-browserify-npm-2.0.12-ad02d37cc3-ec37ae2990.zip new file mode 100644 index 000000000..7f113ddf8 Binary files /dev/null and b/.yarn/cache/timers-browserify-npm-2.0.12-ad02d37cc3-ec37ae2990.zip differ diff --git a/.yarn/cache/to-arraybuffer-npm-1.0.1-a57b097c21-31433c10b3.zip b/.yarn/cache/to-arraybuffer-npm-1.0.1-a57b097c21-31433c10b3.zip new file mode 100644 index 000000000..0426ff784 Binary files /dev/null and b/.yarn/cache/to-arraybuffer-npm-1.0.1-a57b097c21-31433c10b3.zip differ diff --git a/.yarn/cache/tty-browserify-npm-0.0.0-684371f6ca-a06f746acc.zip b/.yarn/cache/tty-browserify-npm-0.0.0-684371f6ca-a06f746acc.zip new file mode 100644 index 000000000..6bc162acb Binary files /dev/null and b/.yarn/cache/tty-browserify-npm-0.0.0-684371f6ca-a06f746acc.zip differ diff --git a/.yarn/cache/url-parse-npm-1.5.10-64fa2bcd6d-fbdba6b1d8.zip b/.yarn/cache/url-parse-npm-1.5.10-64fa2bcd6d-fbdba6b1d8.zip new file mode 100644 index 000000000..a0666e4f8 Binary files /dev/null and b/.yarn/cache/url-parse-npm-1.5.10-64fa2bcd6d-fbdba6b1d8.zip differ diff --git a/.yarn/cache/util-npm-0.11.1-d2633dea18-80bee6a2ed.zip b/.yarn/cache/util-npm-0.11.1-d2633dea18-80bee6a2ed.zip new file mode 100644 index 000000000..e2553ccb3 Binary files /dev/null and b/.yarn/cache/util-npm-0.11.1-d2633dea18-80bee6a2ed.zip differ diff --git a/.yarn/cache/watchpack-chokidar2-npm-2.0.1-ebd158dbea-acf0f9ebca.zip b/.yarn/cache/watchpack-chokidar2-npm-2.0.1-ebd158dbea-acf0f9ebca.zip new file mode 100644 index 000000000..b8a7f2c45 Binary files /dev/null and b/.yarn/cache/watchpack-chokidar2-npm-2.0.1-ebd158dbea-acf0f9ebca.zip differ diff --git a/.yarn/cache/watchpack-npm-1.7.5-8e26730caf-8b7cb8c8df.zip b/.yarn/cache/watchpack-npm-1.7.5-8e26730caf-8b7cb8c8df.zip new file mode 100644 index 000000000..5da40745a Binary files /dev/null and b/.yarn/cache/watchpack-npm-1.7.5-8e26730caf-8b7cb8c8df.zip differ diff --git a/.yarn/cache/webpack-cli-npm-3.3.12-3f0b130bc7-3097084e7b.zip b/.yarn/cache/webpack-cli-npm-3.3.12-3f0b130bc7-3097084e7b.zip new file mode 100644 index 000000000..d223b712a Binary files /dev/null and b/.yarn/cache/webpack-cli-npm-3.3.12-3f0b130bc7-3097084e7b.zip differ diff --git a/.yarn/cache/webpack-dev-middleware-npm-3.7.3-3986f4156e-faa3cdd7b8.zip b/.yarn/cache/webpack-dev-middleware-npm-3.7.3-3986f4156e-faa3cdd7b8.zip new file mode 100644 index 000000000..9923f6085 Binary files /dev/null and b/.yarn/cache/webpack-dev-middleware-npm-3.7.3-3986f4156e-faa3cdd7b8.zip differ diff --git a/.yarn/cache/webpack-dev-server-npm-3.11.3-ba74f2e2c6-ae2dbcfcd9.zip b/.yarn/cache/webpack-dev-server-npm-3.11.3-ba74f2e2c6-ae2dbcfcd9.zip new file mode 100644 index 000000000..29f954541 Binary files /dev/null and b/.yarn/cache/webpack-dev-server-npm-3.11.3-ba74f2e2c6-ae2dbcfcd9.zip differ diff --git a/.yarn/cache/webpack-log-npm-2.0.0-cafd67cd5c-4757179310.zip b/.yarn/cache/webpack-log-npm-2.0.0-cafd67cd5c-4757179310.zip new file mode 100644 index 000000000..8699cdb22 Binary files /dev/null and b/.yarn/cache/webpack-log-npm-2.0.0-cafd67cd5c-4757179310.zip differ diff --git a/.yarn/cache/webpack-npm-4.46.0-a8158cfa7f-013fa24c00.zip b/.yarn/cache/webpack-npm-4.46.0-a8158cfa7f-013fa24c00.zip new file mode 100644 index 000000000..fe3542b78 Binary files /dev/null and b/.yarn/cache/webpack-npm-4.46.0-a8158cfa7f-013fa24c00.zip differ diff --git a/.yarn/cache/worker-farm-npm-1.7.0-cfc50c2626-eab917530e.zip b/.yarn/cache/worker-farm-npm-1.7.0-cfc50c2626-eab917530e.zip new file mode 100644 index 000000000..0be0a3012 Binary files /dev/null and b/.yarn/cache/worker-farm-npm-1.7.0-cfc50c2626-eab917530e.zip differ diff --git a/.yarn/cache/worker-loader-npm-2.0.0-30f20eb2bd-76fbb5a6ce.zip b/.yarn/cache/worker-loader-npm-2.0.0-30f20eb2bd-76fbb5a6ce.zip new file mode 100644 index 000000000..58aec2fd3 Binary files /dev/null and b/.yarn/cache/worker-loader-npm-2.0.0-30f20eb2bd-76fbb5a6ce.zip differ diff --git a/.yarn/cache/wrap-ansi-npm-5.1.0-293b407c18-9b48c86222.zip b/.yarn/cache/wrap-ansi-npm-5.1.0-293b407c18-9b48c86222.zip new file mode 100644 index 000000000..c6936069b Binary files /dev/null and b/.yarn/cache/wrap-ansi-npm-5.1.0-293b407c18-9b48c86222.zip differ diff --git a/.yarn/cache/yallist-npm-3.1.1-a568a556b4-48f7bb00dc.zip b/.yarn/cache/yallist-npm-3.1.1-a568a556b4-48f7bb00dc.zip new file mode 100644 index 000000000..04dc748b8 Binary files /dev/null and b/.yarn/cache/yallist-npm-3.1.1-a568a556b4-48f7bb00dc.zip differ diff --git a/.yarn/cache/yargs-npm-13.3.2-1588f5dd4c-75c13e837e.zip b/.yarn/cache/yargs-npm-13.3.2-1588f5dd4c-75c13e837e.zip new file mode 100644 index 000000000..11cc07932 Binary files /dev/null and b/.yarn/cache/yargs-npm-13.3.2-1588f5dd4c-75c13e837e.zip differ diff --git a/.yarn/cache/yargs-parser-npm-13.1.2-546b639909-c8bb6f44d3.zip b/.yarn/cache/yargs-parser-npm-13.1.2-546b639909-c8bb6f44d3.zip new file mode 100644 index 000000000..e969da086 Binary files /dev/null and b/.yarn/cache/yargs-parser-npm-13.1.2-546b639909-c8bb6f44d3.zip differ diff --git a/packages/components/src/packages/org.standardnotes.file-safe/.babelrc b/packages/components/src/packages/org.standardnotes.file-safe/.babelrc new file mode 100644 index 000000000..2b7bafa5f --- /dev/null +++ b/packages/components/src/packages/org.standardnotes.file-safe/.babelrc @@ -0,0 +1,3 @@ +{ + "presets": ["@babel/preset-env", "@babel/preset-react"] +} diff --git a/packages/components/src/packages/org.standardnotes.file-safe/.gitignore b/packages/components/src/packages/org.standardnotes.file-safe/.gitignore new file mode 100644 index 000000000..3c3629e64 --- /dev/null +++ b/packages/components/src/packages/org.standardnotes.file-safe/.gitignore @@ -0,0 +1 @@ +node_modules diff --git a/packages/components/src/packages/org.standardnotes.file-safe/README.md b/packages/components/src/packages/org.standardnotes.file-safe/README.md new file mode 100644 index 000000000..d206b04a3 --- /dev/null +++ b/packages/components/src/packages/org.standardnotes.file-safe/README.md @@ -0,0 +1,3 @@ +# FileSafe Bar + +Embeddable FileSafe Bar component diff --git a/packages/components/src/packages/org.standardnotes.file-safe/app/App.js b/packages/components/src/packages/org.standardnotes.file-safe/app/App.js new file mode 100644 index 000000000..bcf9a4660 --- /dev/null +++ b/packages/components/src/packages/org.standardnotes.file-safe/app/App.js @@ -0,0 +1,111 @@ +import React from 'react'; +import FilesafeEmbed from "filesafe-embed"; +import Filesafe from "filesafe-js"; +import ComponentManager from 'sn-components-api'; + +const BaseHeight = 53; +const MessageHavingHeight = 28; +const PerMessageHeight = 22; +const ExpandedHeight = 305; + +export default class App extends React.Component { + constructor(props) { + super(props); + this.state = {expanded: false}; + } + + componentDidMount() { + this.componentManager = new ComponentManager(null, () => { + // On ready and permissions authorization + document.documentElement.classList.add(this.componentManager.platform); + }); + + this.filesafe = new Filesafe({componentManager: this.componentManager}); + this.fsObserver = this.filesafe.addDataChangeObserver(() => { + this.recomputeHeight(); + }) + + this.componentManager.streamContextItem((incomingNote) => { + let itemClass = Filesafe.getSFItemClass(); + let noteModel = new itemClass(incomingNote); + this.filesafe.setCurrentNote(noteModel); + }); + + let delegate = { + onSelectFile: (fileDescriptor) => { + if(fileDescriptor) { + if(!this.state.expanded) { + this.expandedFromSelection = true; + this.expandForFileSelection(); + } + } else { + if(this.expandedFromSelection) { + this.collapse(); + this.expandedFromSelection = false; + } + } + } + } + + let mountPoint = document.getElementById("embed"); + FilesafeEmbed.FilesafeEmbed.renderInElement(mountPoint, this.filesafe, delegate); + + this.recomputeHeight(); + } + + recomputeHeight() { + var totalHeight = BaseHeight; + + var credentials = this.filesafe.getAllCredentials(); + if(credentials.length == 0) { + totalHeight += PerMessageHeight; + } + + var integrations = this.filesafe.getAllIntegrations(); + if(integrations.length == 0) { + totalHeight += PerMessageHeight; + } + + if(integrations.length == 0 || credentials.length == 0) { + totalHeight += MessageHavingHeight; + } + + if(this.state.expanded) { + totalHeight = ExpandedHeight; + } + + this.componentManager.setSize("container", "100%", totalHeight); + } + + toggleHeight() { + if(this.state.expanded) { + this.collapse(); + } else { + this.expand(); + } + } + + expandForFileSelection() { + this.componentManager.setSize("container", "100%", 130); + } + + expand() { + this.setState({expanded: true}, this.recomputeHeight) + } + + collapse() { + this.setState({expanded: false}, this.recomputeHeight); + } + + render() { + return ( +
+
+
+
+
{this.state.expanded ? "▲" : "▼"}
+
+
+ ); + } +} diff --git a/packages/components/src/packages/org.standardnotes.file-safe/app/index.html b/packages/components/src/packages/org.standardnotes.file-safe/app/index.html new file mode 100644 index 000000000..5ea3bf0c3 --- /dev/null +++ b/packages/components/src/packages/org.standardnotes.file-safe/app/index.html @@ -0,0 +1,11 @@ + + + FileSafe + + + + + diff --git a/packages/components/src/packages/org.standardnotes.file-safe/app/index.min.html b/packages/components/src/packages/org.standardnotes.file-safe/app/index.min.html new file mode 100644 index 000000000..4e23ce0f9 --- /dev/null +++ b/packages/components/src/packages/org.standardnotes.file-safe/app/index.min.html @@ -0,0 +1,10 @@ + + + FileSafe + + + + + diff --git a/packages/components/src/packages/org.standardnotes.file-safe/app/main.js b/packages/components/src/packages/org.standardnotes.file-safe/app/main.js new file mode 100644 index 000000000..30c97bd94 --- /dev/null +++ b/packages/components/src/packages/org.standardnotes.file-safe/app/main.js @@ -0,0 +1,8 @@ +import React from 'react'; +import ReactDOM from 'react-dom'; +import App from './App'; + +ReactDOM.render( + , + document.body.appendChild(document.createElement('div')) +); diff --git a/packages/components/src/packages/org.standardnotes.file-safe/app/stylesheets/main.scss b/packages/components/src/packages/org.standardnotes.file-safe/app/stylesheets/main.scss new file mode 100644 index 000000000..454d26415 --- /dev/null +++ b/packages/components/src/packages/org.standardnotes.file-safe/app/stylesheets/main.scss @@ -0,0 +1,25 @@ +@import '~filesafe_embed'; + +html, body { + font-size: var(--sn-stylekit-base-font-size); + margin: 0; + padding: 0; + height: 100%; + line-height: 1; + background-color: transparent; +} + +#root { + position: relative; +} + +#embed { + position: relative; +} + +#expand-button { + position: fixed; + top: 1.1rem; + right: 2rem; + box-shadow: var(--sn-stylekit-border-color) 0 1px 2px; +} diff --git a/packages/components/src/packages/org.standardnotes.file-safe/dist/dist.css b/packages/components/src/packages/org.standardnotes.file-safe/dist/dist.css new file mode 100644 index 000000000..b78b41d43 --- /dev/null +++ b/packages/components/src/packages/org.standardnotes.file-safe/dist/dist.css @@ -0,0 +1,4 @@ +:root{--sn-stylekit-base-font-size: 13px;--sn-stylekit-font-size-p: 1.0rem;--sn-stylekit-font-size-editor: 1.21rem;--sn-stylekit-font-size-h6: 0.8rem;--sn-stylekit-font-size-h5: 0.9rem;--sn-stylekit-font-size-h4: 1.0rem;--sn-stylekit-font-size-h3: 1.1rem;--sn-stylekit-font-size-h2: 1.2rem;--sn-stylekit-font-size-h1: 1.3rem;--sn-stylekit-neutral-color: #989898;--sn-stylekit-neutral-contrast-color: white;--sn-stylekit-info-color: #086DD6;--sn-stylekit-info-contrast-color: white;--sn-stylekit-success-color: #2B9612;--sn-stylekit-success-contrast-color: white;--sn-stylekit-warning-color: #f6a200;--sn-stylekit-warning-contrast-color: white;--sn-stylekit-danger-color: #F80324;--sn-stylekit-danger-contrast-color: white;--sn-stylekit-shadow-color: #C8C8C8;--sn-stylekit-background-color: white;--sn-stylekit-border-color: #e3e3e3;--sn-stylekit-foreground-color: black;--sn-stylekit-contrast-background-color: #F6F6F6;--sn-stylekit-contrast-foreground-color: #2e2e2e;--sn-stylekit-contrast-border-color: #e3e3e3;--sn-stylekit-secondary-background-color: #F6F6F6;--sn-stylekit-secondary-foreground-color: #2e2e2e;--sn-stylekit-secondary-border-color: #e3e3e3;--sn-stylekit-secondary-contrast-background-color: #e3e3e3;--sn-stylekit-secondary-contrast-foreground-color: #2e2e2e;--sn-styleki--secondary-contrast-border-color: #a2a2a2;--sn-stylekit-editor-background-color: var(--sn-stylekit-background-color);--sn-stylekit-editor-foreground-color: var(--sn-stylekit-foreground-color);--sn-stylekit-paragraph-text-color: #454545;--sn-stylekit-input-placeholder-color: rgb(168, 168, 168);--sn-stylekit-input-border-color: #e3e3e3;--sn-stylekit-scrollbar-thumb-color: #dfdfdf;--sn-stylekit-scrollbar-track-border-color: #E7E7E7;--sn-stylekit-general-border-radius: 2px;--sn-stylekit-monospace-font: "Ubuntu Mono", courier, monospace;--sn-stylekit-sans-serif-font: -apple-system, BlinkMacSystemFont, + "Segoe UI", "Roboto", "Oxygen", + "Ubuntu", "Cantarell", "Fira Sans", + "Droid Sans", "Helvetica Neue", sans-serif}.sn-component{font-family:var(--sn-stylekit-sans-serif-font);-webkit-font-smoothing:antialiased;color:var(--sn-stylekit-foreground-color)}.sn-component .sk-panel{box-shadow:0px 2px 5px var(--sn-stylekit-shadow-color);background-color:var(--sn-stylekit-background-color);border:1px solid var(--sn-stylekit-border-color);border-radius:var(--sn-stylekit-general-border-radius);display:flex;flex-direction:column;overflow:auto;flex-grow:1}.sn-component .sk-panel a:hover{text-decoration:underline}.sn-component .sk-panel.static{box-shadow:none;border:none;border-radius:0}.sn-component .sk-panel .sk-panel-header{flex-shrink:0;display:flex;justify-content:space-between;padding:1.1rem 2rem;border-bottom:1px solid var(--sn-stylekit-contrast-border-color);background-color:var(--sn-stylekit-contrast-background-color);color:var(--sn-stylekit-contrast-foreground-color);align-items:center}.sn-component .sk-panel .sk-panel-header .sk-panel-header-title{font-size:var(--sn-stylekit-font-size-h1);font-weight:500}.sn-component .sk-panel .sk-panel-header .close-button{font-weight:bold}.sn-component .sk-panel .sk-footer,.sn-component .sk-panel .sk-panel-footer{padding:1rem 2rem;border-top:1px solid var(--sn-stylekit-border-color);box-sizing:border-box}.sn-component .sk-panel .sk-footer.extra-padding,.sn-component .sk-panel .sk-panel-footer.extra-padding{padding:2rem 2rem}.sn-component .sk-panel .sk-footer .left,.sn-component .sk-panel .sk-panel-footer .left{text-align:left;display:block}.sn-component .sk-panel .sk-footer .right,.sn-component .sk-panel .sk-panel-footer .right{text-align:right;display:block}.sn-component .sk-panel .sk-panel-content{padding:1.6rem 2rem;padding-bottom:0;flex-grow:1;overflow:scroll;height:100%;overflow-y:auto !important;overflow-x:auto !important}.sn-component .sk-panel .sk-panel-content .sk-p,.sn-component .sk-panel .sk-panel-content .sk-li{color:var(--sn-stylekit-paragraph-text-color);line-height:1.3}.sn-component .sk-panel-section{padding-bottom:1.6rem;display:flex;flex-direction:column}.sn-component .sk-panel-section.sk-panel-hero{text-align:center}.sn-component .sk-panel-section .sk-p:last-child{margin-bottom:0}.sn-component .sk-panel-section:not(:last-child){margin-bottom:1.5rem;border-bottom:1px solid var(--sn-stylekit-border-color)}.sn-component .sk-panel-section:not(:last-child).no-border{border-bottom:none}.sn-component .sk-panel-section:last-child{margin-bottom:0.5rem}.sn-component .sk-panel-section.no-bottom-pad{padding-bottom:0;margin-bottom:0}.sn-component .sk-panel-section .sk-panel-section-title{margin-bottom:0.5rem;font-weight:bold;font-size:var(--sn-stylekit-font-size-h3)}.sn-component .sk-panel-section .sk-panel-section-outer-title{border-bottom:1px solid var(--sn-stylekit-border-color);padding-bottom:0.9rem;margin-top:2.1rem;margin-bottom:15px;font-size:var(--sn-stylekit-font-size-h3)}.sn-component .sk-panel-section .sk-panel-section-subtitle{font-size:var(--sn-stylekit-font-size-h5);margin-bottom:2px}.sn-component .sk-panel-section .sk-panel-section-subtitle.subtle{font-weight:normal;opacity:0.6}.sn-component .sk-panel-section .text-content .sk-p{margin-bottom:1rem}.sn-component .sk-panel-section .text-content p:first-child{margin-top:0.3rem}.sn-component .sk-panel-row{display:flex;justify-content:space-between;align-items:center;padding-top:0.4rem}.sn-component .sk-panel-row.centered{justify-content:center}.sn-component .sk-panel-row.justify-right{justify-content:flex-end}.sn-component .sk-panel-row.justify-left{justify-content:flex-start}.sn-component .sk-panel-row.align-top{align-items:flex-start}.sn-component .sk-panel-row .sk-panel-column.stretch{width:100%}.sn-component .sk-panel-row.default-padding,.sn-component .sk-panel-row:not(:last-child){padding-bottom:0.4rem}.sn-component .sk-panel-row.condensed{padding-top:0.2rem;padding-bottom:0.2rem}.sn-component .sk-panel-row .sk-p{margin:0;padding:0}.sn-component .vertical-rule{background-color:var(--sn-stylekit-border-color);height:1.5rem;width:1px}.sn-component .sk-panel-form{width:100%}.sn-component .sk-panel-form.half{width:50%}.sn-component .sk-panel-form .form-submit{margin-top:0.15rem}.sn-component .right-aligned{justify-content:flex-end;text-align:right}.sn-component .sk-menu-panel{background-color:var(--sn-stylekit-background-color);border:1px solid var(--sn-stylekit-contrast-border-color);border-radius:var(--sn-stylekit-general-border-radius);overflow:scroll;user-select:none;overflow-y:auto !important;overflow-x:auto !important}.sn-component .sk-menu-panel .sk-menu-panel-header{padding:0.8rem 1rem;border-bottom:1px solid var(--sn-stylekit-contrast-border-color);background-color:var(--sn-stylekit-contrast-background-color);color:var(--sn-stylekit-contrast-foreground-color);display:flex;justify-content:space-between;align-items:center}.sn-component .sk-menu-panel .sk-menu-panel-header-title{font-weight:bold;font-size:var(--sn-stylekit-font-size-h4)}.sn-component .sk-menu-panel .sk-menu-panel-header-subtitle{margin-top:0.2rem;opacity:0.6}.sn-component .sk-menu-panel .sk-menu-panel-row{padding:1rem 1rem;cursor:pointer;display:flex;flex-direction:row;justify-content:space-between;border-bottom:1px solid var(--sn-stylekit-border-color)}.sn-component .sk-menu-panel .sk-menu-panel-row:hover{background-color:var(--sn-stylekit-contrast-background-color);color:var(--sn-stylekit-contrast-foreground-color);border-color:var(--sn-stylekit-contrast-border-color)}.sn-component .sk-menu-panel .sk-menu-panel-row .sk-menu-panel-column{display:flex;justify-content:center;flex-direction:column}.sn-component .sk-menu-panel .sk-menu-panel-row .sk-menu-panel-column:not(:first-child){padding-left:1.0rem;padding-right:0.15rem}.sn-component .sk-menu-panel .sk-menu-panel-row .sk-menu-panel-column.stretch{width:100%}.sn-component .sk-menu-panel .sk-menu-panel-row .sk-menu-panel-column .sk-menu-panel-subrows{margin-top:1rem}.sn-component .sk-menu-panel .sk-menu-panel-row .sk-menu-panel-column .sk-menu-panel-row,.sn-component .sk-menu-panel .sk-menu-panel-row .sk-menu-panel-column .sk-menu-panel-subrow{border:1px solid var(--sn-stylekit-contrast-border-color);margin-top:-1px}.sn-component .sk-menu-panel .sk-menu-panel-row .sk-menu-panel-column .sk-menu-panel-row:hover,.sn-component .sk-menu-panel .sk-menu-panel-row .sk-menu-panel-column .sk-menu-panel-subrow:hover{background-color:var(--sn-stylekit-background-color)}.sn-component .sk-menu-panel .sk-menu-panel-row .sk-menu-panel-column .left{display:flex}.sn-component .sk-menu-panel .sk-menu-panel-row .sk-button .sk-label,.sn-component .sk-menu-panel .sk-menu-panel-row .sk-box .sk-label,.sn-component .sk-menu-panel .sk-menu-panel-row .sk-button .sk-panel-section .sk-panel-section-subtitle,.sn-component .sk-panel-section .sk-menu-panel .sk-menu-panel-row .sk-button .sk-panel-section-subtitle,.sn-component .sk-menu-panel .sk-menu-panel-row .sk-box .sk-panel-section .sk-panel-section-subtitle,.sn-component .sk-panel-section .sk-menu-panel .sk-menu-panel-row .sk-box .sk-panel-section-subtitle{font-size:var(--sn-stylekit-font-size-h6);font-weight:normal}.sn-component .sk-menu-panel .sk-menu-panel-row .sk-label,.sn-component .sk-menu-panel .sk-menu-panel-row .sk-panel-section .sk-panel-section-subtitle,.sn-component .sk-panel-section .sk-menu-panel .sk-menu-panel-row .sk-panel-section-subtitle{font-size:var(--sn-stylekit-font-size-p);font-weight:bold}.sn-component .sk-menu-panel .sk-menu-panel-row .sk-sublabel{font-size:var(--sn-stylekit-font-size-h5);margin-top:0.2rem;opacity:0.6}.sn-component .red{color:var(--sn-stylekit-danger-color)}.sn-component .tinted{color:var(--sn-stylekit-info-color)}.sn-component .selectable{user-select:text !important;-ms-user-select:text !important;-moz-user-select:text !important;-webkit-user-select:text !important}.sn-component .sk-h1,.sn-component .sk-h2,.sn-component .sk-h3,.sn-component .sk-h4,.sn-component .sk-h5{margin:0;padding:0;font-weight:normal}.sn-component .sk-h1{font-weight:500;font-size:var(--sn-stylekit-font-size-h1);line-height:1.9rem}.sn-component .sk-h2{font-size:var(--sn-stylekit-font-size-h2);line-height:1.8rem}.sn-component .sk-h3{font-size:var(--sn-stylekit-font-size-h3);line-height:1.7rem}.sn-component .sk-h4{font-size:var(--sn-stylekit-font-size-p);line-height:1.4rem}.sn-component .sk-h5{font-size:var(--sn-stylekit-font-size-h5)}.sn-component .sk-bold{font-weight:bold}.sn-component .sk-font-small{font-size:var(--sn-stylekit-font-size-h5)}.sn-component .sk-font-normal{font-size:var(--sn-stylekit-font-size-p)}.sn-component .sk-font-large{font-size:var(--sn-stylekit-font-size-h3)}.sn-component a.sk-a{cursor:pointer;user-select:none}.sn-component a.sk-a.disabled{color:var(--sn-stylekit-neutral-color);opacity:0.6}.sn-component a.sk-a.boxed{border-radius:var(--sn-stylekit-general-border-radius);padding:0.3rem 0.4rem}.sn-component a.sk-a.boxed:hover{text-decoration:none}.sn-component a.sk-a.boxed.neutral{background-color:var(--sn-stylekit-neutral-color);color:var(--sn-stylekit-neutral-contrast-color)}.sn-component a.sk-a.boxed.info{background-color:var(--sn-stylekit-info-color);color:var(--sn-stylekit-info-contrast-color)}.sn-component a.sk-a.boxed.warning{background-color:var(--sn-stylekit-warning-color);color:var(--sn-stylekit-warning-contrast-color)}.sn-component a.sk-a.boxed.danger{background-color:var(--sn-stylekit-danger-color);color:var(--sn-stylekit-danger-contrast-color)}.sn-component a.sk-a.boxed.success{background-color:var(--sn-stylekit-success-color);color:var(--sn-stylekit-success-contrast-color)}.sn-component .wrap{word-wrap:break-word}.sn-component *.sk-base{color:var(--sn-stylekit-foreground-color)}.sn-component *.contrast{color:var(--sn-stylekit-contrast-foreground-color)}.sn-component *.neutral{color:var(--sn-stylekit-neutral-color)}.sn-component *.info{color:var(--sn-stylekit-info-color)}.sn-component *.info-contrast{color:var(--sn-stylekit-info-contrast-color)}.sn-component *.warning{color:var(--sn-stylekit-warning-color)}.sn-component *.danger{color:var(--sn-stylekit-danger-color)}.sn-component *.success{color:var(--sn-stylekit-success-color)}.sn-component *.info-i{color:var(--sn-stylekit-info-color) !important}.sn-component *.warning-i{color:var(--sn-stylekit-warning-color) !important}.sn-component *.danger-i{color:var(--sn-stylekit-danger-color) !important}.sn-component *.success-i{color:var(--sn-stylekit-success-color) !important}.sn-component *.clear{background-color:transparent;border:none}.sn-component .center-text{text-align:center !important;justify-content:center !important}.sn-component p.sk-p{margin:0.5rem 0}.sn-component input.sk-input{box-sizing:border-box;padding:0.7rem 0.8rem;margin:0.30rem 0;border:none;font-size:var(--sn-stylekit-font-size-h3);width:100%;outline:0;resize:none}.sn-component input.sk-input.clear{color:var(--sn-stylekit-foreground-color);background-color:transparent;border:none}.sn-component input.sk-input.no-border{border:none}.sn-component .sk-label,.sn-component .sk-panel-section .sk-panel-section-subtitle{font-weight:bold}.sn-component .sk-label.no-bold,.sn-component .sk-panel-section .no-bold.sk-panel-section-subtitle{font-weight:normal}.sn-component label.sk-label,.sn-component .sk-panel-section label.sk-panel-section-subtitle{margin:0.7rem 0;display:block}.sn-component label.sk-label input[type='checkbox'],.sn-component .sk-panel-section label.sk-panel-section-subtitle input[type='checkbox'],.sn-component input[type='radio']{width:auto;margin-right:0.45rem;vertical-align:middle}.sn-component .sk-horizontal-group>*,.sn-component .sk-input-group>*{display:inline-block;vertical-align:middle}.sn-component .sk-horizontal-group>*:not(:first-child),.sn-component .sk-input-group>*:not(:first-child){margin-left:0.9rem}.sn-component .sk-border-bottom{border-bottom:1px solid var(--sn-stylekit-border-color)}.sn-component .sk-checkbox-group{padding-top:0.5rem;padding-bottom:0.3rem}.sn-component ::placeholder{color:var(--sn-stylekit-input-placeholder-color)}.sn-component :-ms-input-placeholder{color:var(--sn-stylekit-input-placeholder-color)}.sn-component ::-ms-input-placeholder{color:var(--sn-stylekit-input-placeholder-color)}.sn-component .sk-button-group.stretch{display:flex;width:100%}.sn-component .sk-button-group.stretch .sk-button,.sn-component .sk-button-group.stretch .sk-box{display:block;flex-grow:1;text-align:center}.sn-component .sk-button-group .sk-button,.sn-component .sk-button-group .sk-box{display:inline-block;vertical-align:middle}.sn-component .sk-button-group .sk-button:not(:last-child),.sn-component .sk-button-group .sk-box:not(:last-child){margin-right:5px}.sn-component .sk-button-group .sk-button:not(:last-child).featured,.sn-component .sk-button-group .sk-box:not(:last-child).featured{margin-right:8px}.sn-component .sk-segmented-buttons{display:flex;flex-direction:row}.sn-component .sk-segmented-buttons .sk-button,.sn-component .sk-segmented-buttons .sk-box{border-radius:0;white-space:nowrap;margin:0;margin-left:0 !important;margin-right:0 !important}.sn-component .sk-segmented-buttons .sk-button:not(:last-child),.sn-component .sk-segmented-buttons .sk-box:not(:last-child){border-right:none;border-radius:0}.sn-component .sk-segmented-buttons .sk-button:first-child,.sn-component .sk-segmented-buttons .sk-box:first-child{border-top-left-radius:var(--sn-stylekit-general-border-radius);border-bottom-left-radius:var(--sn-stylekit-general-border-radius);border-right:none;border-top-right-radius:0;border-bottom-right-radius:0}.sn-component .sk-segmented-buttons .sk-button:last-child,.sn-component .sk-segmented-buttons .sk-box:last-child{border-top-right-radius:var(--sn-stylekit-general-border-radius);border-bottom-right-radius:var(--sn-stylekit-general-border-radius);border-left:none;border-top-left-radius:0;border-bottom-left-radius:0}.sn-component .sk-box-group .sk-box{display:inline-block}.sn-component .sk-box-group .sk-box:not(:last-child){margin-right:5px}.sn-component .sk-a.button{text-decoration:none}.sn-component .sk-button,.sn-component .sk-box{display:table;padding:0.5rem 0.7rem;font-size:var(--sn-stylekit-font-size-h5);cursor:pointer;text-align:center;user-select:none}.sn-component .sk-button.no-hover-border:after,.sn-component .no-hover-border.sk-box:after{color:transparent !important}.sn-component .sk-button.wide,.sn-component .wide.sk-box{padding:0.3rem 1.7rem}.sn-component .sk-button>.sk-label,.sn-component .sk-box>.sk-label,.sn-component .sk-panel-section .sk-button>.sk-panel-section-subtitle,.sn-component .sk-panel-section .sk-box>.sk-panel-section-subtitle{font-weight:bold;display:block;text-align:center}.sn-component .sk-button.big,.sn-component .big.sk-box{font-size:var(--sn-stylekit-font-size-h3);padding:0.7rem 2.5rem}.sn-component .sk-box{padding:2.5rem 1.5rem}.sn-component .sk-button.sk-base,.sn-component .sk-base.sk-box,.sn-component .sk-box.sk-base,.sn-component .sk-circle.sk-base{color:var(--sn-stylekit-foreground-color);position:relative;background-color:var(--sn-stylekit-background-color);overflow:hidden;border-radius:var(--sn-stylekit-general-border-radius);border-color:var(--sn-stylekit-background-color)}.sn-component .sk-button.sk-base *,.sn-component .sk-base.sk-box *,.sn-component .sk-box.sk-base *,.sn-component .sk-circle.sk-base *{position:relative}.sn-component .sk-button.sk-base:before,.sn-component .sk-base.sk-box:before,.sn-component .sk-box.sk-base:before,.sn-component .sk-circle.sk-base:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background-color:var(--sn-stylekit-background-color);opacity:1.0;border-radius:var(--sn-stylekit-general-border-radius)}.sn-component .sk-button.sk-base:after,.sn-component .sk-base.sk-box:after,.sn-component .sk-box.sk-base:after,.sn-component .sk-circle.sk-base:after{content:'';display:block;height:100%;position:absolute;top:0;left:0;width:100%;border-radius:var(--sn-stylekit-general-border-radius);pointer-events:none;box-shadow:inset 0 0 0 1px;color:var(--sn-stylekit-background-color)}.sn-component .sk-button.sk-base:hover:before,.sn-component .sk-base.sk-box:hover:before,.sn-component .sk-box.sk-base:hover:before,.sn-component .sk-circle.sk-base:hover:before{filter:brightness(130%)}.sn-component .sk-button.sk-base.no-bg,.sn-component .sk-base.no-bg.sk-box,.sn-component .sk-box.sk-base.no-bg,.sn-component .sk-circle.sk-base.no-bg{background-color:transparent}.sn-component .sk-button.sk-base.no-bg:before,.sn-component .sk-base.no-bg.sk-box:before,.sn-component .sk-box.sk-base.no-bg:before,.sn-component .sk-circle.sk-base.no-bg:before{content:none}.sn-component .sk-button.sk-base.featured,.sn-component .sk-base.featured.sk-box,.sn-component .sk-box.sk-base.featured,.sn-component .sk-circle.sk-base.featured{border:none;padding:0.75rem 1.25rem;font-size:var(--sn-stylekit-font-size-h3)}.sn-component .sk-button.sk-base.featured:before,.sn-component .sk-base.featured.sk-box:before,.sn-component .sk-box.sk-base.featured:before,.sn-component .sk-circle.sk-base.featured:before{opacity:1.0}.sn-component .sk-button.contrast,.sn-component .contrast.sk-box,.sn-component .sk-box.contrast,.sn-component .sk-circle.contrast{color:var(--sn-stylekit-contrast-foreground-color);position:relative;background-color:var(--sn-stylekit-contrast-background-color);overflow:hidden;border-radius:var(--sn-stylekit-general-border-radius);border-color:var(--sn-stylekit-contrast-background-color)}.sn-component .sk-button.contrast *,.sn-component .contrast.sk-box *,.sn-component .sk-box.contrast *,.sn-component .sk-circle.contrast *{position:relative}.sn-component .sk-button.contrast:before,.sn-component .contrast.sk-box:before,.sn-component .sk-box.contrast:before,.sn-component .sk-circle.contrast:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background-color:var(--sn-stylekit-contrast-background-color);opacity:1.0;border-radius:var(--sn-stylekit-general-border-radius)}.sn-component .sk-button.contrast:after,.sn-component .contrast.sk-box:after,.sn-component .sk-box.contrast:after,.sn-component .sk-circle.contrast:after{content:'';display:block;height:100%;position:absolute;top:0;left:0;width:100%;border-radius:var(--sn-stylekit-general-border-radius);pointer-events:none;box-shadow:inset 0 0 0 1px;color:var(--sn-stylekit-contrast-background-color)}.sn-component .sk-button.contrast:hover:before,.sn-component .contrast.sk-box:hover:before,.sn-component .sk-box.contrast:hover:before,.sn-component .sk-circle.contrast:hover:before{filter:brightness(130%)}.sn-component .sk-button.contrast.no-bg,.sn-component .contrast.no-bg.sk-box,.sn-component .sk-box.contrast.no-bg,.sn-component .sk-circle.contrast.no-bg{background-color:transparent}.sn-component .sk-button.contrast.no-bg:before,.sn-component .contrast.no-bg.sk-box:before,.sn-component .sk-box.contrast.no-bg:before,.sn-component .sk-circle.contrast.no-bg:before{content:none}.sn-component .sk-button.contrast.featured,.sn-component .contrast.featured.sk-box,.sn-component .sk-box.contrast.featured,.sn-component .sk-circle.contrast.featured{border:none;padding:0.75rem 1.25rem;font-size:var(--sn-stylekit-font-size-h3)}.sn-component .sk-button.contrast.featured:before,.sn-component .contrast.featured.sk-box:before,.sn-component .sk-box.contrast.featured:before,.sn-component .sk-circle.contrast.featured:before{opacity:1.0}.sn-component .sk-button.sk-secondary,.sn-component .sk-secondary.sk-box,.sn-component .sk-box.sk-secondary,.sn-component .sk-circle.sk-secondary{color:var(--sn-stylekit-secondary-foreground-color);position:relative;background-color:var(--sn-stylekit-secondary-background-color);overflow:hidden;border-radius:var(--sn-stylekit-general-border-radius);border-color:var(--sn-stylekit-secondary-background-color)}.sn-component .sk-button.sk-secondary *,.sn-component .sk-secondary.sk-box *,.sn-component .sk-box.sk-secondary *,.sn-component .sk-circle.sk-secondary *{position:relative}.sn-component .sk-button.sk-secondary:before,.sn-component .sk-secondary.sk-box:before,.sn-component .sk-box.sk-secondary:before,.sn-component .sk-circle.sk-secondary:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background-color:var(--sn-stylekit-secondary-background-color);opacity:1.0;border-radius:var(--sn-stylekit-general-border-radius)}.sn-component .sk-button.sk-secondary:after,.sn-component .sk-secondary.sk-box:after,.sn-component .sk-box.sk-secondary:after,.sn-component .sk-circle.sk-secondary:after{content:'';display:block;height:100%;position:absolute;top:0;left:0;width:100%;border-radius:var(--sn-stylekit-general-border-radius);pointer-events:none;box-shadow:inset 0 0 0 1px;color:var(--sn-stylekit-secondary-background-color)}.sn-component .sk-button.sk-secondary:hover:before,.sn-component .sk-secondary.sk-box:hover:before,.sn-component .sk-box.sk-secondary:hover:before,.sn-component .sk-circle.sk-secondary:hover:before{filter:brightness(130%)}.sn-component .sk-button.sk-secondary.no-bg,.sn-component .sk-secondary.no-bg.sk-box,.sn-component .sk-box.sk-secondary.no-bg,.sn-component .sk-circle.sk-secondary.no-bg{background-color:transparent}.sn-component .sk-button.sk-secondary.no-bg:before,.sn-component .sk-secondary.no-bg.sk-box:before,.sn-component .sk-box.sk-secondary.no-bg:before,.sn-component .sk-circle.sk-secondary.no-bg:before{content:none}.sn-component .sk-button.sk-secondary.featured,.sn-component .sk-secondary.featured.sk-box,.sn-component .sk-box.sk-secondary.featured,.sn-component .sk-circle.sk-secondary.featured{border:none;padding:0.75rem 1.25rem;font-size:var(--sn-stylekit-font-size-h3)}.sn-component .sk-button.sk-secondary.featured:before,.sn-component .sk-secondary.featured.sk-box:before,.sn-component .sk-box.sk-secondary.featured:before,.sn-component .sk-circle.sk-secondary.featured:before{opacity:1.0}.sn-component .sk-button.sk-secondary-contrast,.sn-component .sk-secondary-contrast.sk-box,.sn-component .sk-box.sk-secondary-contrast,.sn-component .sk-circle.sk-secondary-contrast{color:var(--sn-stylekit-secondary-contrast-foreground-color);position:relative;background-color:var(--sn-stylekit-secondary-contrast-background-color);overflow:hidden;border-radius:var(--sn-stylekit-general-border-radius);border-color:var(--sn-stylekit-secondary-contrast-background-color)}.sn-component .sk-button.sk-secondary-contrast *,.sn-component .sk-secondary-contrast.sk-box *,.sn-component .sk-box.sk-secondary-contrast *,.sn-component .sk-circle.sk-secondary-contrast *{position:relative}.sn-component .sk-button.sk-secondary-contrast:before,.sn-component .sk-secondary-contrast.sk-box:before,.sn-component .sk-box.sk-secondary-contrast:before,.sn-component .sk-circle.sk-secondary-contrast:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background-color:var(--sn-stylekit-secondary-contrast-background-color);opacity:1.0;border-radius:var(--sn-stylekit-general-border-radius)}.sn-component .sk-button.sk-secondary-contrast:after,.sn-component .sk-secondary-contrast.sk-box:after,.sn-component .sk-box.sk-secondary-contrast:after,.sn-component .sk-circle.sk-secondary-contrast:after{content:'';display:block;height:100%;position:absolute;top:0;left:0;width:100%;border-radius:var(--sn-stylekit-general-border-radius);pointer-events:none;box-shadow:inset 0 0 0 1px;color:var(--sn-stylekit-secondary-contrast-background-color)}.sn-component .sk-button.sk-secondary-contrast:hover:before,.sn-component .sk-secondary-contrast.sk-box:hover:before,.sn-component .sk-box.sk-secondary-contrast:hover:before,.sn-component .sk-circle.sk-secondary-contrast:hover:before{filter:brightness(130%)}.sn-component .sk-button.sk-secondary-contrast.no-bg,.sn-component .sk-secondary-contrast.no-bg.sk-box,.sn-component .sk-box.sk-secondary-contrast.no-bg,.sn-component .sk-circle.sk-secondary-contrast.no-bg{background-color:transparent}.sn-component .sk-button.sk-secondary-contrast.no-bg:before,.sn-component .sk-secondary-contrast.no-bg.sk-box:before,.sn-component .sk-box.sk-secondary-contrast.no-bg:before,.sn-component .sk-circle.sk-secondary-contrast.no-bg:before{content:none}.sn-component .sk-button.sk-secondary-contrast.featured,.sn-component .sk-secondary-contrast.featured.sk-box,.sn-component .sk-box.sk-secondary-contrast.featured,.sn-component .sk-circle.sk-secondary-contrast.featured{border:none;padding:0.75rem 1.25rem;font-size:var(--sn-stylekit-font-size-h3)}.sn-component .sk-button.sk-secondary-contrast.featured:before,.sn-component .sk-secondary-contrast.featured.sk-box:before,.sn-component .sk-box.sk-secondary-contrast.featured:before,.sn-component .sk-circle.sk-secondary-contrast.featured:before{opacity:1.0}.sn-component .sk-button.neutral,.sn-component .neutral.sk-box,.sn-component .sk-box.neutral,.sn-component .sk-circle.neutral{color:var(--sn-stylekit-neutral-contrast-color);position:relative;background-color:var(--sn-stylekit-neutral-color);overflow:hidden;border-radius:var(--sn-stylekit-general-border-radius);border-color:var(--sn-stylekit-neutral-color)}.sn-component .sk-button.neutral *,.sn-component .neutral.sk-box *,.sn-component .sk-box.neutral *,.sn-component .sk-circle.neutral *{position:relative}.sn-component .sk-button.neutral:before,.sn-component .neutral.sk-box:before,.sn-component .sk-box.neutral:before,.sn-component .sk-circle.neutral:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background-color:var(--sn-stylekit-neutral-color);opacity:1.0;border-radius:var(--sn-stylekit-general-border-radius)}.sn-component .sk-button.neutral:after,.sn-component .neutral.sk-box:after,.sn-component .sk-box.neutral:after,.sn-component .sk-circle.neutral:after{content:'';display:block;height:100%;position:absolute;top:0;left:0;width:100%;border-radius:var(--sn-stylekit-general-border-radius);pointer-events:none;box-shadow:inset 0 0 0 1px;color:var(--sn-stylekit-neutral-color)}.sn-component .sk-button.neutral:hover:before,.sn-component .neutral.sk-box:hover:before,.sn-component .sk-box.neutral:hover:before,.sn-component .sk-circle.neutral:hover:before{filter:brightness(130%)}.sn-component .sk-button.neutral.no-bg,.sn-component .neutral.no-bg.sk-box,.sn-component .sk-box.neutral.no-bg,.sn-component .sk-circle.neutral.no-bg{background-color:transparent}.sn-component .sk-button.neutral.no-bg:before,.sn-component .neutral.no-bg.sk-box:before,.sn-component .sk-box.neutral.no-bg:before,.sn-component .sk-circle.neutral.no-bg:before{content:none}.sn-component .sk-button.neutral.featured,.sn-component .neutral.featured.sk-box,.sn-component .sk-box.neutral.featured,.sn-component .sk-circle.neutral.featured{border:none;padding:0.75rem 1.25rem;font-size:var(--sn-stylekit-font-size-h3)}.sn-component .sk-button.neutral.featured:before,.sn-component .neutral.featured.sk-box:before,.sn-component .sk-box.neutral.featured:before,.sn-component .sk-circle.neutral.featured:before{opacity:1.0}.sn-component .sk-button.info,.sn-component .info.sk-box,.sn-component .sk-box.info,.sn-component .sk-circle.info{color:var(--sn-stylekit-info-contrast-color);position:relative;background-color:var(--sn-stylekit-info-color);overflow:hidden;border-radius:var(--sn-stylekit-general-border-radius);border-color:var(--sn-stylekit-info-color)}.sn-component .sk-button.info *,.sn-component .info.sk-box *,.sn-component .sk-box.info *,.sn-component .sk-circle.info *{position:relative}.sn-component .sk-button.info:before,.sn-component .info.sk-box:before,.sn-component .sk-box.info:before,.sn-component .sk-circle.info:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background-color:var(--sn-stylekit-info-color);opacity:1.0;border-radius:var(--sn-stylekit-general-border-radius)}.sn-component .sk-button.info:after,.sn-component .info.sk-box:after,.sn-component .sk-box.info:after,.sn-component .sk-circle.info:after{content:'';display:block;height:100%;position:absolute;top:0;left:0;width:100%;border-radius:var(--sn-stylekit-general-border-radius);pointer-events:none;box-shadow:inset 0 0 0 1px;color:var(--sn-stylekit-info-color)}.sn-component .sk-button.info:hover:before,.sn-component #filesafe-embed .files-view .files .file-item-button.selected:before,#filesafe-embed .files-view .files .sn-component .file-item-button.selected:before,.sn-component .info.sk-box:hover:before,.sn-component .sk-box.info:hover:before,.sn-component .sk-circle.info:hover:before{filter:brightness(130%)}.sn-component .sk-button.info.no-bg,.sn-component .info.no-bg.sk-box,.sn-component .sk-box.info.no-bg,.sn-component .sk-circle.info.no-bg{background-color:transparent}.sn-component .sk-button.info.no-bg:before,.sn-component .info.no-bg.sk-box:before,.sn-component .sk-box.info.no-bg:before,.sn-component .sk-circle.info.no-bg:before{content:none}.sn-component .sk-button.info.featured,.sn-component .info.featured.sk-box,.sn-component .sk-box.info.featured,.sn-component .sk-circle.info.featured{border:none;padding:0.75rem 1.25rem;font-size:var(--sn-stylekit-font-size-h3)}.sn-component .sk-button.info.featured:before,.sn-component .info.featured.sk-box:before,.sn-component .sk-box.info.featured:before,.sn-component .sk-circle.info.featured:before{opacity:1.0}.sn-component .sk-button.warning,.sn-component .warning.sk-box,.sn-component .sk-box.warning,.sn-component .sk-circle.warning{color:var(--sn-stylekit-warning-contrast-color);position:relative;background-color:var(--sn-stylekit-warning-color);overflow:hidden;border-radius:var(--sn-stylekit-general-border-radius);border-color:var(--sn-stylekit-warning-color)}.sn-component .sk-button.warning *,.sn-component .warning.sk-box *,.sn-component .sk-box.warning *,.sn-component .sk-circle.warning *{position:relative}.sn-component .sk-button.warning:before,.sn-component .warning.sk-box:before,.sn-component .sk-box.warning:before,.sn-component .sk-circle.warning:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background-color:var(--sn-stylekit-warning-color);opacity:1.0;border-radius:var(--sn-stylekit-general-border-radius)}.sn-component .sk-button.warning:after,.sn-component .warning.sk-box:after,.sn-component .sk-box.warning:after,.sn-component .sk-circle.warning:after{content:'';display:block;height:100%;position:absolute;top:0;left:0;width:100%;border-radius:var(--sn-stylekit-general-border-radius);pointer-events:none;box-shadow:inset 0 0 0 1px;color:var(--sn-stylekit-warning-color)}.sn-component .sk-button.warning:hover:before,.sn-component .warning.sk-box:hover:before,.sn-component .sk-box.warning:hover:before,.sn-component .sk-circle.warning:hover:before{filter:brightness(130%)}.sn-component .sk-button.warning.no-bg,.sn-component .warning.no-bg.sk-box,.sn-component .sk-box.warning.no-bg,.sn-component .sk-circle.warning.no-bg{background-color:transparent}.sn-component .sk-button.warning.no-bg:before,.sn-component .warning.no-bg.sk-box:before,.sn-component .sk-box.warning.no-bg:before,.sn-component .sk-circle.warning.no-bg:before{content:none}.sn-component .sk-button.warning.featured,.sn-component .warning.featured.sk-box,.sn-component .sk-box.warning.featured,.sn-component .sk-circle.warning.featured{border:none;padding:0.75rem 1.25rem;font-size:var(--sn-stylekit-font-size-h3)}.sn-component .sk-button.warning.featured:before,.sn-component .warning.featured.sk-box:before,.sn-component .sk-box.warning.featured:before,.sn-component .sk-circle.warning.featured:before{opacity:1.0}.sn-component .sk-button.danger,.sn-component .danger.sk-box,.sn-component .sk-box.danger,.sn-component .sk-circle.danger{color:var(--sn-stylekit-danger-contrast-color);position:relative;background-color:var(--sn-stylekit-danger-color);overflow:hidden;border-radius:var(--sn-stylekit-general-border-radius);border-color:var(--sn-stylekit-danger-color)}.sn-component .sk-button.danger *,.sn-component .danger.sk-box *,.sn-component .sk-box.danger *,.sn-component .sk-circle.danger *{position:relative}.sn-component .sk-button.danger:before,.sn-component .danger.sk-box:before,.sn-component .sk-box.danger:before,.sn-component .sk-circle.danger:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background-color:var(--sn-stylekit-danger-color);opacity:1.0;border-radius:var(--sn-stylekit-general-border-radius)}.sn-component .sk-button.danger:after,.sn-component .danger.sk-box:after,.sn-component .sk-box.danger:after,.sn-component .sk-circle.danger:after{content:'';display:block;height:100%;position:absolute;top:0;left:0;width:100%;border-radius:var(--sn-stylekit-general-border-radius);pointer-events:none;box-shadow:inset 0 0 0 1px;color:var(--sn-stylekit-danger-color)}.sn-component .sk-button.danger:hover:before,.sn-component .danger.sk-box:hover:before,.sn-component .sk-box.danger:hover:before,.sn-component .sk-circle.danger:hover:before{filter:brightness(130%)}.sn-component .sk-button.danger.no-bg,.sn-component .danger.no-bg.sk-box,.sn-component .sk-box.danger.no-bg,.sn-component .sk-circle.danger.no-bg{background-color:transparent}.sn-component .sk-button.danger.no-bg:before,.sn-component .danger.no-bg.sk-box:before,.sn-component .sk-box.danger.no-bg:before,.sn-component .sk-circle.danger.no-bg:before{content:none}.sn-component .sk-button.danger.featured,.sn-component .danger.featured.sk-box,.sn-component .sk-box.danger.featured,.sn-component .sk-circle.danger.featured{border:none;padding:0.75rem 1.25rem;font-size:var(--sn-stylekit-font-size-h3)}.sn-component .sk-button.danger.featured:before,.sn-component .danger.featured.sk-box:before,.sn-component .sk-box.danger.featured:before,.sn-component .sk-circle.danger.featured:before{opacity:1.0}.sn-component .sk-button.success,.sn-component .success.sk-box,.sn-component .sk-box.success,.sn-component .sk-circle.success{color:var(--sn-stylekit-success-contrast-color);position:relative;background-color:var(--sn-stylekit-success-color);overflow:hidden;border-radius:var(--sn-stylekit-general-border-radius);border-color:var(--sn-stylekit-success-color)}.sn-component .sk-button.success *,.sn-component .success.sk-box *,.sn-component .sk-box.success *,.sn-component .sk-circle.success *{position:relative}.sn-component .sk-button.success:before,.sn-component .success.sk-box:before,.sn-component .sk-box.success:before,.sn-component .sk-circle.success:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background-color:var(--sn-stylekit-success-color);opacity:1.0;border-radius:var(--sn-stylekit-general-border-radius)}.sn-component .sk-button.success:after,.sn-component .success.sk-box:after,.sn-component .sk-box.success:after,.sn-component .sk-circle.success:after{content:'';display:block;height:100%;position:absolute;top:0;left:0;width:100%;border-radius:var(--sn-stylekit-general-border-radius);pointer-events:none;box-shadow:inset 0 0 0 1px;color:var(--sn-stylekit-success-color)}.sn-component .sk-button.success:hover:before,.sn-component .success.sk-box:hover:before,.sn-component .sk-box.success:hover:before,.sn-component .sk-circle.success:hover:before{filter:brightness(130%)}.sn-component .sk-button.success.no-bg,.sn-component .success.no-bg.sk-box,.sn-component .sk-box.success.no-bg,.sn-component .sk-circle.success.no-bg{background-color:transparent}.sn-component .sk-button.success.no-bg:before,.sn-component .success.no-bg.sk-box:before,.sn-component .sk-box.success.no-bg:before,.sn-component .sk-circle.success.no-bg:before{content:none}.sn-component .sk-button.success.featured,.sn-component .success.featured.sk-box,.sn-component .sk-box.success.featured,.sn-component .sk-circle.success.featured{border:none;padding:0.75rem 1.25rem;font-size:var(--sn-stylekit-font-size-h3)}.sn-component .sk-button.success.featured:before,.sn-component .success.featured.sk-box:before,.sn-component .sk-box.success.featured:before,.sn-component .sk-circle.success.featured:before{opacity:1.0}.sn-component .sk-notification.contrast,.sn-component .sk-input.contrast{color:var(--sn-stylekit-contrast-foreground-color);position:relative;background-color:var(--sn-stylekit-contrast-background-color);overflow:hidden;border-radius:var(--sn-stylekit-general-border-radius);border-color:var(--sn-stylekit-contrast-border-color);border:1px solid var(--sn-stylekit-contrast-border-color)}.sn-component .sk-notification.contrast *,.sn-component .sk-input.contrast *{position:relative}.sn-component .sk-notification.contrast:before,.sn-component .sk-input.contrast:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background-color:var(--sn-stylekit-contrast-background-color);opacity:1.0;border-radius:var(--sn-stylekit-general-border-radius)}.sn-component .sk-notification.contrast:after,.sn-component .sk-input.contrast:after{content:'';display:block;height:100%;position:absolute;top:0;left:0;width:100%;border-radius:var(--sn-stylekit-general-border-radius);pointer-events:none;color:var(--sn-stylekit-contrast-border-color);border-color:var(--sn-stylekit-contrast-border-color)}.sn-component .sk-notification.contrast.no-bg,.sn-component .sk-input.contrast.no-bg{background-color:transparent}.sn-component .sk-notification.contrast.no-bg:before,.sn-component .sk-input.contrast.no-bg:before{content:none}.sn-component .sk-notification.contrast.featured,.sn-component .sk-input.contrast.featured{border:none;padding:0.75rem 1.25rem;font-size:var(--sn-stylekit-font-size-h3)}.sn-component .sk-notification.contrast.featured:before,.sn-component .sk-input.contrast.featured:before{opacity:1.0}.sn-component .sk-notification.sk-secondary,.sn-component .sk-input.sk-secondary{color:var(--sn-stylekit-secondary-foreground-color);position:relative;background-color:var(--sn-stylekit-secondary-background-color);overflow:hidden;border-radius:var(--sn-stylekit-general-border-radius);border-color:var(--sn-stylekit-secondary-border-color);border:1px solid var(--sn-stylekit-secondary-border-color)}.sn-component .sk-notification.sk-secondary *,.sn-component .sk-input.sk-secondary *{position:relative}.sn-component .sk-notification.sk-secondary:before,.sn-component .sk-input.sk-secondary:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background-color:var(--sn-stylekit-secondary-background-color);opacity:1.0;border-radius:var(--sn-stylekit-general-border-radius)}.sn-component .sk-notification.sk-secondary:after,.sn-component .sk-input.sk-secondary:after{content:'';display:block;height:100%;position:absolute;top:0;left:0;width:100%;border-radius:var(--sn-stylekit-general-border-radius);pointer-events:none;color:var(--sn-stylekit-secondary-border-color);border-color:var(--sn-stylekit-secondary-border-color)}.sn-component .sk-notification.sk-secondary.no-bg,.sn-component .sk-input.sk-secondary.no-bg{background-color:transparent}.sn-component .sk-notification.sk-secondary.no-bg:before,.sn-component .sk-input.sk-secondary.no-bg:before{content:none}.sn-component .sk-notification.sk-secondary.featured,.sn-component .sk-input.sk-secondary.featured{border:none;padding:0.75rem 1.25rem;font-size:var(--sn-stylekit-font-size-h3)}.sn-component .sk-notification.sk-secondary.featured:before,.sn-component .sk-input.sk-secondary.featured:before{opacity:1.0}.sn-component .sk-notification.sk-secondary-contrast,.sn-component .sk-input.sk-secondary-contrast{color:var(--sn-stylekit-secondary-contrast-foreground-color);position:relative;background-color:var(--sn-stylekit-secondary-contrast-background-color);overflow:hidden;border-radius:var(--sn-stylekit-general-border-radius);border-color:var(--sn-stylekit-secondary-contrast-border-color);border:1px solid var(--sn-stylekit-secondary-contrast-border-color)}.sn-component .sk-notification.sk-secondary-contrast *,.sn-component .sk-input.sk-secondary-contrast *{position:relative}.sn-component .sk-notification.sk-secondary-contrast:before,.sn-component .sk-input.sk-secondary-contrast:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background-color:var(--sn-stylekit-secondary-contrast-background-color);opacity:1.0;border-radius:var(--sn-stylekit-general-border-radius)}.sn-component .sk-notification.sk-secondary-contrast:after,.sn-component .sk-input.sk-secondary-contrast:after{content:'';display:block;height:100%;position:absolute;top:0;left:0;width:100%;border-radius:var(--sn-stylekit-general-border-radius);pointer-events:none;color:var(--sn-stylekit-secondary-contrast-border-color);border-color:var(--sn-stylekit-secondary-contrast-border-color)}.sn-component .sk-notification.sk-secondary-contrast.no-bg,.sn-component .sk-input.sk-secondary-contrast.no-bg{background-color:transparent}.sn-component .sk-notification.sk-secondary-contrast.no-bg:before,.sn-component .sk-input.sk-secondary-contrast.no-bg:before{content:none}.sn-component .sk-notification.sk-secondary-contrast.featured,.sn-component .sk-input.sk-secondary-contrast.featured{border:none;padding:0.75rem 1.25rem;font-size:var(--sn-stylekit-font-size-h3)}.sn-component .sk-notification.sk-secondary-contrast.featured:before,.sn-component .sk-input.sk-secondary-contrast.featured:before{opacity:1.0}.sn-component .sk-notification.sk-base,.sn-component .sk-input.sk-base{color:var(--sn-stylekit-foreground-color);position:relative;background-color:var(--sn-stylekit-background-color);overflow:hidden;border-radius:var(--sn-stylekit-general-border-radius);border-color:var(--sn-stylekit-border-color);border:1px solid var(--sn-stylekit-border-color)}.sn-component .sk-notification.sk-base *,.sn-component .sk-input.sk-base *{position:relative}.sn-component .sk-notification.sk-base:before,.sn-component .sk-input.sk-base:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background-color:var(--sn-stylekit-background-color);opacity:1.0;border-radius:var(--sn-stylekit-general-border-radius)}.sn-component .sk-notification.sk-base:after,.sn-component .sk-input.sk-base:after{content:'';display:block;height:100%;position:absolute;top:0;left:0;width:100%;border-radius:var(--sn-stylekit-general-border-radius);pointer-events:none;color:var(--sn-stylekit-border-color);border-color:var(--sn-stylekit-border-color)}.sn-component .sk-notification.sk-base.no-bg,.sn-component .sk-input.sk-base.no-bg{background-color:transparent}.sn-component .sk-notification.sk-base.no-bg:before,.sn-component .sk-input.sk-base.no-bg:before{content:none}.sn-component .sk-notification.sk-base.featured,.sn-component .sk-input.sk-base.featured{border:none;padding:0.75rem 1.25rem;font-size:var(--sn-stylekit-font-size-h3)}.sn-component .sk-notification.sk-base.featured:before,.sn-component .sk-input.sk-base.featured:before{opacity:1.0}.sn-component .sk-notification.neutral,.sn-component .sk-input.neutral{color:var(--sn-stylekit-neutral-contrast-color);position:relative;background-color:var(--sn-stylekit-neutral-color);overflow:hidden;border-radius:var(--sn-stylekit-general-border-radius);border-color:var(--sn-stylekit-neutral-color)}.sn-component .sk-notification.neutral *,.sn-component .sk-input.neutral *{position:relative}.sn-component .sk-notification.neutral:before,.sn-component .sk-input.neutral:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background-color:var(--sn-stylekit-neutral-color);opacity:1.0;border-radius:var(--sn-stylekit-general-border-radius)}.sn-component .sk-notification.neutral:after,.sn-component .sk-input.neutral:after{content:'';display:block;height:100%;position:absolute;top:0;left:0;width:100%;border-radius:var(--sn-stylekit-general-border-radius);pointer-events:none;box-shadow:inset 0 0 0 1px;color:var(--sn-stylekit-neutral-color)}.sn-component .sk-notification.neutral.no-bg,.sn-component .sk-input.neutral.no-bg{background-color:transparent}.sn-component .sk-notification.neutral.no-bg:before,.sn-component .sk-input.neutral.no-bg:before{content:none}.sn-component .sk-notification.neutral.featured,.sn-component .sk-input.neutral.featured{border:none;padding:0.75rem 1.25rem;font-size:var(--sn-stylekit-font-size-h3)}.sn-component .sk-notification.neutral.featured:before,.sn-component .sk-input.neutral.featured:before{opacity:1.0}.sn-component .sk-notification.info,.sn-component .sk-input.info{color:var(--sn-stylekit-info-contrast-color);position:relative;background-color:var(--sn-stylekit-info-color);overflow:hidden;border-radius:var(--sn-stylekit-general-border-radius);border-color:var(--sn-stylekit-info-color)}.sn-component .sk-notification.info *,.sn-component .sk-input.info *{position:relative}.sn-component .sk-notification.info:before,.sn-component .sk-input.info:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background-color:var(--sn-stylekit-info-color);opacity:1.0;border-radius:var(--sn-stylekit-general-border-radius)}.sn-component .sk-notification.info:after,.sn-component .sk-input.info:after{content:'';display:block;height:100%;position:absolute;top:0;left:0;width:100%;border-radius:var(--sn-stylekit-general-border-radius);pointer-events:none;box-shadow:inset 0 0 0 1px;color:var(--sn-stylekit-info-color)}.sn-component .sk-notification.info.no-bg,.sn-component .sk-input.info.no-bg{background-color:transparent}.sn-component .sk-notification.info.no-bg:before,.sn-component .sk-input.info.no-bg:before{content:none}.sn-component .sk-notification.info.featured,.sn-component .sk-input.info.featured{border:none;padding:0.75rem 1.25rem;font-size:var(--sn-stylekit-font-size-h3)}.sn-component .sk-notification.info.featured:before,.sn-component .sk-input.info.featured:before{opacity:1.0}.sn-component .sk-notification.warning,.sn-component .sk-input.warning{color:var(--sn-stylekit-warning-contrast-color);position:relative;background-color:var(--sn-stylekit-warning-color);overflow:hidden;border-radius:var(--sn-stylekit-general-border-radius);border-color:var(--sn-stylekit-warning-color)}.sn-component .sk-notification.warning *,.sn-component .sk-input.warning *{position:relative}.sn-component .sk-notification.warning:before,.sn-component .sk-input.warning:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background-color:var(--sn-stylekit-warning-color);opacity:1.0;border-radius:var(--sn-stylekit-general-border-radius)}.sn-component .sk-notification.warning:after,.sn-component .sk-input.warning:after{content:'';display:block;height:100%;position:absolute;top:0;left:0;width:100%;border-radius:var(--sn-stylekit-general-border-radius);pointer-events:none;box-shadow:inset 0 0 0 1px;color:var(--sn-stylekit-warning-color)}.sn-component .sk-notification.warning.no-bg,.sn-component .sk-input.warning.no-bg{background-color:transparent}.sn-component .sk-notification.warning.no-bg:before,.sn-component .sk-input.warning.no-bg:before{content:none}.sn-component .sk-notification.warning.featured,.sn-component .sk-input.warning.featured{border:none;padding:0.75rem 1.25rem;font-size:var(--sn-stylekit-font-size-h3)}.sn-component .sk-notification.warning.featured:before,.sn-component .sk-input.warning.featured:before{opacity:1.0}.sn-component .sk-notification.danger,.sn-component .sk-input.danger{color:var(--sn-stylekit-danger-contrast-color);position:relative;background-color:var(--sn-stylekit-danger-color);overflow:hidden;border-radius:var(--sn-stylekit-general-border-radius);border-color:var(--sn-stylekit-danger-color)}.sn-component .sk-notification.danger *,.sn-component .sk-input.danger *{position:relative}.sn-component .sk-notification.danger:before,.sn-component .sk-input.danger:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background-color:var(--sn-stylekit-danger-color);opacity:1.0;border-radius:var(--sn-stylekit-general-border-radius)}.sn-component .sk-notification.danger:after,.sn-component .sk-input.danger:after{content:'';display:block;height:100%;position:absolute;top:0;left:0;width:100%;border-radius:var(--sn-stylekit-general-border-radius);pointer-events:none;box-shadow:inset 0 0 0 1px;color:var(--sn-stylekit-danger-color)}.sn-component .sk-notification.danger.no-bg,.sn-component .sk-input.danger.no-bg{background-color:transparent}.sn-component .sk-notification.danger.no-bg:before,.sn-component .sk-input.danger.no-bg:before{content:none}.sn-component .sk-notification.danger.featured,.sn-component .sk-input.danger.featured{border:none;padding:0.75rem 1.25rem;font-size:var(--sn-stylekit-font-size-h3)}.sn-component .sk-notification.danger.featured:before,.sn-component .sk-input.danger.featured:before{opacity:1.0}.sn-component .sk-notification.success,.sn-component .sk-input.success{color:var(--sn-stylekit-success-contrast-color);position:relative;background-color:var(--sn-stylekit-success-color);overflow:hidden;border-radius:var(--sn-stylekit-general-border-radius);border-color:var(--sn-stylekit-success-color)}.sn-component .sk-notification.success *,.sn-component .sk-input.success *{position:relative}.sn-component .sk-notification.success:before,.sn-component .sk-input.success:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background-color:var(--sn-stylekit-success-color);opacity:1.0;border-radius:var(--sn-stylekit-general-border-radius)}.sn-component .sk-notification.success:after,.sn-component .sk-input.success:after{content:'';display:block;height:100%;position:absolute;top:0;left:0;width:100%;border-radius:var(--sn-stylekit-general-border-radius);pointer-events:none;box-shadow:inset 0 0 0 1px;color:var(--sn-stylekit-success-color)}.sn-component .sk-notification.success.no-bg,.sn-component .sk-input.success.no-bg{background-color:transparent}.sn-component .sk-notification.success.no-bg:before,.sn-component .sk-input.success.no-bg:before{content:none}.sn-component .sk-notification.success.featured,.sn-component .sk-input.success.featured{border:none;padding:0.75rem 1.25rem;font-size:var(--sn-stylekit-font-size-h3)}.sn-component .sk-notification.success.featured:before,.sn-component .sk-input.success.featured:before{opacity:1.0}.sn-component .sk-notification{padding:1.1rem 1rem;margin:1.4rem 0;text-align:left;cursor:default}.sn-component .sk-notification.one-line{padding:0rem 0.4rem}.sn-component .sk-notification.stretch{width:100%}.sn-component .sk-notification.dashed{border-style:dashed;border-width:2px}.sn-component .sk-notification.dashed:after{box-shadow:none}.sn-component .sk-notification .sk-notification-title{font-size:var(--sn-stylekit-font-size-h1);font-weight:bold;line-height:1.9rem}.sn-component .sk-notification .sk-notification-text{line-height:1.5rem;font-size:var(--sn-stylekit-font-size-p);text-align:left;font-weight:normal}.sn-component .sk-circle{border:1px solid;cursor:pointer;border-color:var(--sn-stylekit-contrast-foreground-color);background-color:var(--sn-stylekit-contrast-background-color);padding:0;border-radius:50% !important;flex-shrink:0}.sn-component .sk-circle:before{border-radius:50% !important}.sn-component .sk-circle:after{border-radius:50% !important}.sn-component .sk-circle.small{width:11px;height:11px}.sn-component .sk-spinner{border:1px solid var(--sn-stylekit-neutral-color);border-radius:50%;animation:rotate 0.8s infinite linear;border-right-color:transparent}.sn-component .sk-spinner.small{width:12px;height:12px}.sn-component .sk-spinner.info-contrast{border-color:var(--sn-stylekit-info-contrast-color);border-right-color:transparent}.sn-component .sk-spinner.info{border-color:var(--sn-stylekit-info-color);border-right-color:transparent}.sn-component .sk-spinner.warning{border-color:var(--sn-stylekit-warning-color);border-right-color:transparent}.sn-component .sk-spinner.danger{border-color:var(--sn-stylekit-danger-color);border-right-color:transparent}.sn-component .sk-spinner.success{border-color:var(--sn-stylekit-success-color);border-right-color:transparent}@keyframes rotate{0%{transform:rotate(0deg)}100%{transform:rotate(360deg)}}.sn-component .sk-app-bar{display:flex;width:100%;height:2rem;padding:0.0rem 0.8rem;background-color:var(--sn-stylekit-contrast-background-color);color:var(--sn-stylekit-contrast-foreground-color);justify-content:space-between;align-items:center;border:1px solid var(--sn-stylekit-contrast-border-color);user-select:none}.sn-component .sk-app-bar.no-edges{border-left:0;border-right:0}.sn-component .sk-app-bar.no-bottom-edge{border-bottom:0}.sn-component .sk-app-bar .left,.sn-component .sk-app-bar .right{display:flex;height:100%}.sn-component .sk-app-bar .sk-app-bar-item{flex-grow:1;cursor:pointer;display:flex;align-items:center;justify-content:center}.sn-component .sk-app-bar .sk-app-bar-item:not(:first-child){margin-left:1rem}.sn-component .sk-app-bar .sk-app-bar-item.border{border-left:1px solid var(--sn-stylekit-contrast-border-color)}.sn-component .sk-app-bar .sk-app-bar-item>.sk-app-bar-item-column{height:100%;display:flex;align-items:center}.sn-component .sk-app-bar .sk-app-bar-item>.sk-app-bar-item-column:not(:first-child){margin-left:0.5rem}.sn-component .sk-app-bar .sk-app-bar-item>.sk-app-bar-item-column.underline{border-bottom:2px solid var(--sn-stylekit-info-color)}.sn-component .sk-app-bar .sk-app-bar-item.no-pointer{cursor:default}.sn-component .sk-app-bar .sk-app-bar-item:hover>.sk-label:not(.subtle),.sn-component .sk-app-bar .sk-panel-section .sk-app-bar-item:hover>.sk-panel-section-subtitle:not(.subtle),.sn-component .sk-panel-section .sk-app-bar .sk-app-bar-item:hover>.sk-panel-section-subtitle:not(.subtle),.sn-component .sk-app-bar .sk-app-bar-item:hover>.sk-sublabel:not(.subtle),.sn-component .sk-app-bar .sk-app-bar-item:hover>.sk-app-bar-item-column>.sk-label:not(.subtle),.sn-component .sk-app-bar .sk-panel-section .sk-app-bar-item:hover>.sk-app-bar-item-column>.sk-panel-section-subtitle:not(.subtle),.sn-component .sk-panel-section .sk-app-bar .sk-app-bar-item:hover>.sk-app-bar-item-column>.sk-panel-section-subtitle:not(.subtle),.sn-component .sk-app-bar .sk-app-bar-item:hover>.sk-app-bar-item-column>.sk-sublabel:not(.subtle){color:var(--sn-stylekit-info-color)}.sn-component .sk-app-bar .sk-app-bar-item>.sk-label,.sn-component .sk-app-bar .sk-panel-section .sk-app-bar-item>.sk-panel-section-subtitle,.sn-component .sk-panel-section .sk-app-bar .sk-app-bar-item>.sk-panel-section-subtitle,.sn-component .sk-app-bar .sk-app-bar-item>.sk-app-bar-item-column>.sk-label,.sn-component .sk-app-bar .sk-panel-section .sk-app-bar-item>.sk-app-bar-item-column>.sk-panel-section-subtitle,.sn-component .sk-panel-section .sk-app-bar .sk-app-bar-item>.sk-app-bar-item-column>.sk-panel-section-subtitle{font-weight:bold;font-size:var(--sn-stylekit-font-size-h5);white-space:nowrap}.sn-component .sk-app-bar .sk-app-bar-item>.sk-sublabel,.sn-component .sk-app-bar .sk-app-bar-item>.sk-app-bar-item-column>.sk-sublabel{font-size:var(--sn-stylekit-font-size-h5);font-weight:normal;white-space:nowrap}.sn-component .sk-app-bar .sk-app-bar-item .subtle{font-weight:normal;opacity:0.6}.sn-component .sk-panel-table{display:flex;flex-wrap:wrap;padding-left:1px;padding-top:1px}.sn-component .sk-panel-table .sk-panel-table-item{flex:45%;flex-flow:wrap;border:1px solid var(--sn-stylekit-border-color);padding:1rem;margin-left:-1px;margin-top:-1px;display:flex;flex-direction:column;justify-content:space-between}.sn-component .sk-panel-table .sk-panel-table-item img{max-width:100%;margin-bottom:1rem}.sn-component .sk-panel-table .sk-panel-table-item .sk-panel-table-item-content{display:flex;flex-direction:row}.sn-component .sk-panel-table .sk-panel-table-item .sk-panel-table-item-column{align-items:center}.sn-component .sk-panel-table .sk-panel-table-item .sk-panel-table-item-column.stretch{width:100%}.sn-component .sk-panel-table .sk-panel-table-item .sk-panel-table-item-column:not(:first-child){padding-left:0.75rem}.sn-component .sk-panel-table .sk-panel-table-item .sk-panel-table-item-column.quarter{flex-basis:25%}.sn-component .sk-panel-table .sk-panel-table-item .sk-panel-table-item-column.three-quarters{flex-basis:75%}.sn-component .sk-panel-table .sk-panel-table-item .sk-panel-table-item-footer{margin-top:1.25rem}.sn-component .sk-panel-table .sk-panel-table-item.no-border{border:none}.sn-component .sk-modal{position:fixed;margin-left:auto;margin-right:auto;left:0;right:0;top:0;bottom:0;z-index:10000;width:100vw;height:100vh;background-color:transparent;color:var(--sn-stylekit-contrast-foreground-color);display:flex;align-items:center;justify-content:center}.sn-component .sk-modal .sn-component{height:100%}.sn-component .sk-modal .sn-component .sk-panel{height:100%}.sn-component .sk-modal.auto-height>.sk-modal-content{height:auto !important}.sn-component .sk-modal.large>.sk-modal-content{width:900px;height:600px}.sn-component .sk-modal.medium>.sk-modal-content{width:700px;height:500px}.sn-component .sk-modal.small>.sk-modal-content{width:700px;height:344px}.sn-component .sk-modal .sk-modal-background{position:absolute;z-index:-1;width:100%;height:100%;background-color:var(--sn-stylekit-contrast-background-color);opacity:0.7}.sn-component .sk-modal>.sk-modal-content{overflow-y:auto;width:auto;padding:0;padding-bottom:0;min-width:300px;-webkit-box-shadow:0px 2px 35px 0px rgba(0,0,0,0.19);-moz-box-shadow:0px 2px 35px 0px rgba(0,0,0,0.19);box-shadow:0px 2px 35px 0px rgba(0,0,0,0.19)}.sn-component.no-select{user-select:none}input,textarea,[contenteditable]{caret-color:var(--sn-stylekit-editor-foreground-color)}.windows-web ::-webkit-scrollbar,.windows-desktop ::-webkit-scrollbar,.linux-web ::-webkit-scrollbar,.linux-desktop ::-webkit-scrollbar{width:17px;height:18px;border-left:0.5px solid var(--sn-stylekit-scrollbar-track-border-color-color)}.windows-web ::-webkit-scrollbar-thumb,.windows-desktop ::-webkit-scrollbar-thumb,.linux-web ::-webkit-scrollbar-thumb,.linux-desktop ::-webkit-scrollbar-thumb{border:4px solid rgba(0,0,0,0);background-clip:padding-box;-webkit-border-radius:10px;background-color:var(--sn-stylekit-scrollbar-thumb-color);-webkit-box-shadow:inset -1px -1px 0px rgba(0,0,0,0.05),inset 1px 1px 0px rgba(0,0,0,0.05)}.windows-web ::-webkit-scrollbar-button,.windows-desktop ::-webkit-scrollbar-button,.linux-web ::-webkit-scrollbar-button,.linux-desktop ::-webkit-scrollbar-button{width:0;height:0;display:none}.windows-web ::-webkit-scrollbar-corner,.windows-desktop ::-webkit-scrollbar-corner,.linux-web ::-webkit-scrollbar-corner,.linux-desktop ::-webkit-scrollbar-corner{background-color:transparent}#filesafe-embed{font-size:var(--sn-stylekit-base-font-size);line-height:1}#filesafe-embed.highlight #home{border:2px dashed var(--sn-stylekit-info-color)}#filesafe-embed a{cursor:pointer}#filesafe-embed .sn-component{font-size:var(--sn-stylekit-base-font-size) !important;user-select:auto !important}#filesafe-embed .sn-component .sk-panel .sk-panel-content{padding-top:6px !important;height:inherit !important}#filesafe-embed .sn-component .sk-panel .sk-panel-content p{color:inherit}#filesafe-embed .sn-component .sk-panel-section:first-child{padding-bottom:1.3rem;margin-bottom:0 !important}#filesafe-embed .sn-component .sk-panel-section:not(:first-child){padding-top:0.7rem;padding-bottom:1.3rem;margin-bottom:0 !important}#filesafe-embed .sn-component .sk-button-group .sk-button{vertical-align:middle}#filesafe-embed .sn-component .sk-button.no-border{border:none}#filesafe-embed .sn-component .sk-button{user-select:none}#filesafe-embed .sn-component .sk-horizontal-group.top>*{vertical-align:top}#filesafe-embed .sn-component .sk-horizontal-group.top .sk-panel-row:first-child{padding-top:0}#filesafe-embed .sn-component .sk-horizontal-group .sk-panel-section-title{margin-bottom:0}#filesafe-embed .sn-component .sk-circle.x-small,#filesafe-embed .sn-component .sk-spinner.x-small{width:7px;height:7px}#filesafe-embed .sn-component label.no-style{margin:0;font-size:inherit}#filesafe-embed .bold{font-weight:bold}#filesafe-embed .faded{opacity:0.5}#filesafe-embed .list-container{margin-top:10px}#filesafe-embed .list-container .list-item .sk-circle{margin-top:2px}#filesafe-embed .list-container .list-item:not(:last-child){margin-bottom:12px}#filesafe-embed #messages-container{width:100%;margin-bottom:14px !important}#filesafe-embed #messages{width:100%}#filesafe-embed #messages .title{font-weight:bold;font-size:var(--sn-stylekit-font-size-h4);margin-bottom:12px}#filesafe-embed #messages ul{margin:0;margin-top:6px;padding-left:0px;list-style-position:inside}#filesafe-embed #messages ul li{line-height:1.4;font-weight:500}#filesafe-embed #messages ul li:not(last-child){margin-bottom:5px}#filesafe-embed #attach-file-button-label{color:var(--sn-stylekit-info-contrast-color)}#filesafe-embed .files-view{margin-top:3px}#filesafe-embed .files-view #add-file-button-container{margin-right:18px;margin-bottom:8px}#filesafe-embed .files-view #file-upload-status{margin-right:30px;margin-bottom:18px;padding-top:4px}#filesafe-embed .files-view .file-download-status{margin-top:10px;margin-bottom:0px}#filesafe-embed .files-view .file-download-status .sk-spinner{border-color:var(--sn-stylekit-info-contrast-color);border-right-color:transparent}#filesafe-embed .files-view .file-download-status .file-status-label{font-weight:bold;margin-left:0.5rem}#filesafe-embed .files-view .segmented-buttons{margin-right:10px}#filesafe-embed .files-view .files{display:flex;flex-direction:row;flex-wrap:wrap}#filesafe-embed .files-view .files .sk-button{white-space:normal;word-break:break-all}#filesafe-embed .files-view .files .file-item-container{margin-right:5px}#filesafe-embed .files-view .files .file-item-container.expanded{flex-wrap:wrap;margin-bottom:10px}#filesafe-embed .files-view .files .file-item-button{border:none;margin-right:5px}#filesafe-embed .files-view .files .file-item-button:not(.selected){margin-bottom:10px}#filesafe-embed .files-view .files .file-item-button.selected{margin-right:0px;padding:12px;border-radius:3px}#filesafe-embed .files-view .files .file-item-options-wrapper{display:inline-block}#filesafe-embed .files-view .files .file-item-options-wrapper .file-location{opacity:0.7;font-size:0.7rem;margin-top:9px}#filesafe-embed .files-view .files .sk-app-bar.file-item-options{width:fit-content;display:flex;flex-direction:row;margin-top:10px;margin-bottom:0px;margin-left:auto;margin-right:auto;padding:0 1rem}#filesafe-embed .files-view .files .sk-app-bar.file-item-options .center{display:flex;height:100%;margin-left:auto;margin-right:auto}#filesafe-embed .files-view .files .sk-app-bar.file-item-options .disabled{opacity:0.5}#filesafe-embed .files-view .files .sk-app-bar.file-item-options .sk-button{border-radius:0}html,body{font-size:var(--sn-stylekit-base-font-size);margin:0;padding:0;height:100%;line-height:1;background-color:transparent}#root{position:relative}#embed{position:relative}#expand-button{position:fixed;top:1.1rem;right:2rem;box-shadow:var(--sn-stylekit-border-color) 0 1px 2px} diff --git a/packages/components/src/packages/org.standardnotes.file-safe/dist/dist.js b/packages/components/src/packages/org.standardnotes.file-safe/dist/dist.js new file mode 100644 index 000000000..6ff8acb09 --- /dev/null +++ b/packages/components/src/packages/org.standardnotes.file-safe/dist/dist.js @@ -0,0 +1,35 @@ +!function(e){var t={};function n(r){if(t[r])return t[r].exports;var a=t[r]={i:r,l:!1,exports:{}};return e[r].call(a.exports,a,a.exports,n),a.l=!0,a.exports}n.m=e,n.c=t,n.d=function(e,t,r){n.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:r})},n.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n.t=function(e,t){if(1&t&&(e=n(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var r=Object.create(null);if(n.r(r),Object.defineProperty(r,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var a in e)n.d(r,a,function(t){return e[t]}.bind(null,a));return r},n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,"a",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p="/",n(n.s=10)}([function(e,t,n){"use strict";e.exports=n(6)},function(e,t,n){"use strict";!function e(){if("undefined"!=typeof __REACT_DEVTOOLS_GLOBAL_HOOK__&&"function"==typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE){0;try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(e)}catch(e){console.error(e)}}}(),e.exports=n(7)},function(e,t,n){e.exports=function(e){var t={};function n(r){if(t[r])return t[r].exports;var a=t[r]={i:r,l:!1,exports:{}};return e[r].call(a.exports,a,a.exports,n),a.l=!0,a.exports}return n.m=e,n.c=t,n.d=function(e,t,r){n.o(e,t)||Object.defineProperty(e,t,{configurable:!1,enumerable:!0,get:r})},n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,"a",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p="",n(n.s=4)}([function(e,t,n){(function(t){e.exports=function e(t,n,r){function a(o,s){if(!n[o]){if(!t[o]){if(i)return i(o,!0);var u=new Error("Cannot find module '"+o+"'");throw u.code="MODULE_NOT_FOUND",u}var l=n[o]={exports:{}};t[o][0].call(l.exports,(function(e){return a(t[o][1][e]||e)}),l,l.exports,e,t,n,r)}return n[o].exports}for(var i=!1,o=0;o>>2]|=(n[a>>>2]>>>24-a%4*8&255)<<24-(r+a)%4*8;else if(65535>>2]=n[a>>>2];else t.push.apply(t,n);return this.sigBytes+=e,this},clamp:function(){var t=this.words,n=this.sigBytes;t[n>>>2]&=4294967295<<32-n%4*8,t.length=e.ceil(n/4)},clone:function(){var e=i.clone.call(this);return e.words=this.words.slice(0),e},random:function(t){for(var n=[],r=0;r>>2]>>>24-r%4*8&255;n.push((a>>>4).toString(16)),n.push((15&a).toString(16))}return n.join("")},parse:function(e){for(var t=e.length,n=[],r=0;r>>3]|=parseInt(e.substr(r,2),16)<<24-r%8*4;return new o.init(n,t/2)}},l=s.Latin1={stringify:function(e){var t=e.words;e=e.sigBytes;for(var n=[],r=0;r>>2]>>>24-r%4*8&255));return n.join("")},parse:function(e){for(var t=e.length,n=[],r=0;r>>2]|=(255&e.charCodeAt(r))<<24-r%4*8;return new o.init(n,t)}},c=s.Utf8={stringify:function(e){try{return decodeURIComponent(escape(l.stringify(e)))}catch(e){throw Error("Malformed UTF-8 data")}},parse:function(e){return l.parse(unescape(encodeURIComponent(e)))}},f=r.BufferedBlockAlgorithm=i.extend({reset:function(){this._data=new o.init,this._nDataBytes=0},_append:function(e){"string"==typeof e&&(e=c.parse(e)),this._data.concat(e),this._nDataBytes+=e.sigBytes},_process:function(t){var n=this._data,r=n.words,a=n.sigBytes,i=this.blockSize,s=a/(4*i);if(t=(s=t?e.ceil(s):e.max((0|s)-this._minBufferSize,0))*i,a=e.min(4*t,a),t){for(var u=0;u>>2]>>>24-a%4*8&255)<<16|(t[a+1>>>2]>>>24-(a+1)%4*8&255)<<8|t[a+2>>>2]>>>24-(a+2)%4*8&255,o=0;4>o&&a+.75*o>>6*(3-o)&63));if(t=r.charAt(64))for(;e.length%4;)e.push(t);return e.join("")},parse:function(e){var t=e.length,r=this._map;(a=r.charAt(64))&&-1!=(a=e.indexOf(a))&&(t=a);for(var a=[],i=0,o=0;o>>6-o%4*2;a[i>>>2]|=(s|u)<<24-i%4*8,i++}return n.create(a,i)},_map:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/="},function(e){function t(e,t,n,r,a,i,o){return((e=e+(t&n|~t&r)+a+o)<>>32-i)+t}function n(e,t,n,r,a,i,o){return((e=e+(t&r|n&~r)+a+o)<>>32-i)+t}function r(e,t,n,r,a,i,o){return((e=e+(t^n^r)+a+o)<>>32-i)+t}function a(e,t,n,r,a,i,o){return((e=e+(n^(t|~r))+a+o)<>>32-i)+t}for(var i=u,o=(l=i.lib).WordArray,s=l.Hasher,l=i.algo,c=[],f=0;64>f;f++)c[f]=4294967296*e.abs(e.sin(f+1))|0;l=l.MD5=s.extend({_doReset:function(){this._hash=new o.init([1732584193,4023233417,2562383102,271733878])},_doProcessBlock:function(e,i){for(var o=0;16>o;o++){var s=e[u=i+o];e[u]=16711935&(s<<8|s>>>24)|4278255360&(s<<24|s>>>8)}o=this._hash.words;var u=e[i+0],l=(s=e[i+1],e[i+2]),f=e[i+3],p=e[i+4],d=e[i+5],h=e[i+6],m=e[i+7],y=e[i+8],v=e[i+9],g=e[i+10],b=e[i+11],k=e[i+12],w=e[i+13],x=e[i+14],S=e[i+15],_=t(_=o[0],I=o[1],C=o[2],E=o[3],u,7,c[0]),E=t(E,_,I,C,s,12,c[1]),C=t(C,E,_,I,l,17,c[2]),I=t(I,C,E,_,f,22,c[3]);_=t(_,I,C,E,p,7,c[4]),E=t(E,_,I,C,d,12,c[5]),C=t(C,E,_,I,h,17,c[6]),I=t(I,C,E,_,m,22,c[7]),_=t(_,I,C,E,y,7,c[8]),E=t(E,_,I,C,v,12,c[9]),C=t(C,E,_,I,g,17,c[10]),I=t(I,C,E,_,b,22,c[11]),_=t(_,I,C,E,k,7,c[12]),E=t(E,_,I,C,w,12,c[13]),C=t(C,E,_,I,x,17,c[14]),_=n(_,I=t(I,C,E,_,S,22,c[15]),C,E,s,5,c[16]),E=n(E,_,I,C,h,9,c[17]),C=n(C,E,_,I,b,14,c[18]),I=n(I,C,E,_,u,20,c[19]),_=n(_,I,C,E,d,5,c[20]),E=n(E,_,I,C,g,9,c[21]),C=n(C,E,_,I,S,14,c[22]),I=n(I,C,E,_,p,20,c[23]),_=n(_,I,C,E,v,5,c[24]),E=n(E,_,I,C,x,9,c[25]),C=n(C,E,_,I,f,14,c[26]),I=n(I,C,E,_,y,20,c[27]),_=n(_,I,C,E,w,5,c[28]),E=n(E,_,I,C,l,9,c[29]),C=n(C,E,_,I,m,14,c[30]),_=r(_,I=n(I,C,E,_,k,20,c[31]),C,E,d,4,c[32]),E=r(E,_,I,C,y,11,c[33]),C=r(C,E,_,I,b,16,c[34]),I=r(I,C,E,_,x,23,c[35]),_=r(_,I,C,E,s,4,c[36]),E=r(E,_,I,C,p,11,c[37]),C=r(C,E,_,I,m,16,c[38]),I=r(I,C,E,_,g,23,c[39]),_=r(_,I,C,E,w,4,c[40]),E=r(E,_,I,C,u,11,c[41]),C=r(C,E,_,I,f,16,c[42]),I=r(I,C,E,_,h,23,c[43]),_=r(_,I,C,E,v,4,c[44]),E=r(E,_,I,C,k,11,c[45]),C=r(C,E,_,I,S,16,c[46]),_=a(_,I=r(I,C,E,_,l,23,c[47]),C,E,u,6,c[48]),E=a(E,_,I,C,m,10,c[49]),C=a(C,E,_,I,x,15,c[50]),I=a(I,C,E,_,d,21,c[51]),_=a(_,I,C,E,k,6,c[52]),E=a(E,_,I,C,f,10,c[53]),C=a(C,E,_,I,g,15,c[54]),I=a(I,C,E,_,s,21,c[55]),_=a(_,I,C,E,y,6,c[56]),E=a(E,_,I,C,S,10,c[57]),C=a(C,E,_,I,h,15,c[58]),I=a(I,C,E,_,w,21,c[59]),_=a(_,I,C,E,p,6,c[60]),E=a(E,_,I,C,b,10,c[61]),C=a(C,E,_,I,l,15,c[62]),I=a(I,C,E,_,v,21,c[63]),o[0]=o[0]+_|0,o[1]=o[1]+I|0,o[2]=o[2]+C|0,o[3]=o[3]+E|0},_doFinalize:function(){var t=this._data,n=t.words,r=8*this._nDataBytes,a=8*t.sigBytes;n[a>>>5]|=128<<24-a%32;var i=e.floor(r/4294967296);for(n[15+(a+64>>>9<<4)]=16711935&(i<<8|i>>>24)|4278255360&(i<<24|i>>>8),n[14+(a+64>>>9<<4)]=16711935&(r<<8|r>>>24)|4278255360&(r<<24|r>>>8),t.sigBytes=4*(n.length+1),this._process(),n=(t=this._hash).words,r=0;4>r;r++)a=n[r],n[r]=16711935&(a<<8|a>>>24)|4278255360&(a<<24|a>>>8);return t},clone:function(){var e=s.clone.call(this);return e._hash=this._hash.clone(),e}}),i.MD5=s._createHelper(l),i.HmacMD5=s._createHmacHelper(l)}(Math),function(){var e,t=u,n=(e=t.lib).Base,r=e.WordArray,a=(e=t.algo).EvpKDF=n.extend({cfg:n.extend({keySize:4,hasher:e.MD5,iterations:1}),init:function(e){this.cfg=this.cfg.extend(e)},compute:function(e,t){for(var n=(s=this.cfg).hasher.create(),a=r.create(),i=a.words,o=s.keySize,s=s.iterations;i.length>>2]}},t.BlockCipher=s.extend({cfg:s.cfg.extend({mode:l,padding:f}),reset:function(){s.reset.call(this);var e=(t=this.cfg).iv,t=t.mode;if(this._xformMode==this._ENC_XFORM_MODE)var n=t.createEncryptor;else n=t.createDecryptor,this._minBufferSize=1;this._mode=n.call(t,this,e&&e.words)},_doProcessBlock:function(e,t){this._mode.processBlock(e,t)},_doFinalize:function(){var e=this.cfg.padding;if(this._xformMode==this._ENC_XFORM_MODE){e.pad(this._data,this.blockSize);var t=this._process(!0)}else t=this._process(!0),e.unpad(t);return t},blockSize:4});var p=t.CipherParams=n.extend({init:function(e){this.mixIn(e)},toString:function(e){return(e||this.formatter).stringify(this)}}),d=(l=(h.format={}).OpenSSL={stringify:function(e){var t=e.ciphertext;return((e=e.salt)?r.create([1398893684,1701076831]).concat(e).concat(t):t).toString(i)},parse:function(e){var t=(e=i.parse(e)).words;if(1398893684==t[0]&&1701076831==t[1]){var n=r.create(t.slice(2,4));t.splice(0,4),e.sigBytes-=16}return p.create({ciphertext:e,salt:n})}},t.SerializableCipher=n.extend({cfg:n.extend({format:l}),encrypt:function(e,t,n,r){r=this.cfg.extend(r);var a=e.createEncryptor(n,r);return t=a.finalize(t),a=a.cfg,p.create({ciphertext:t,key:n,iv:a.iv,algorithm:e,mode:a.mode,padding:a.padding,blockSize:e.blockSize,formatter:r.format})},decrypt:function(e,t,n,r){return r=this.cfg.extend(r),t=this._parse(t,r.format),e.createDecryptor(n,r).finalize(t.ciphertext)},_parse:function(e,t){return"string"==typeof e?t.parse(e,this):e}})),h=(h.kdf={}).OpenSSL={execute:function(e,t,n,a){return a||(a=r.random(8)),e=o.create({keySize:t+n}).compute(e,a),n=r.create(e.words.slice(t),4*n),e.sigBytes=4*t,p.create({key:e,iv:n,salt:a})}},m=t.PasswordBasedCipher=d.extend({cfg:d.cfg.extend({kdf:h}),encrypt:function(e,t,n,r){return n=(r=this.cfg.extend(r)).kdf.execute(n,e.keySize,e.ivSize),r.iv=n.iv,(e=d.encrypt.call(this,e,t,n.key,r)).mixIn(n),e},decrypt:function(e,t,n,r){return r=this.cfg.extend(r),t=this._parse(t,r.format),n=r.kdf.execute(n,e.keySize,e.ivSize,t.salt),r.iv=n.iv,d.decrypt.call(this,e,t,n.key,r)}})}(),function(){for(var e=u,t=e.lib.BlockCipher,n=e.algo,r=[],a=[],i=[],o=[],s=[],l=[],c=[],f=[],p=[],d=[],h=[],m=0;256>m;m++)h[m]=128>m?m<<1:m<<1^283;var y=0,v=0;for(m=0;256>m;m++){var g=(g=v^v<<1^v<<2^v<<3^v<<4)>>>8^255&g^99;r[y]=g,a[g]=y;var b=h[y],k=h[b],w=h[k],x=257*h[g]^16843008*g;i[y]=x<<24|x>>>8,o[y]=x<<16|x>>>16,s[y]=x<<8|x>>>24,l[y]=x,x=16843009*w^65537*k^257*b^16843008*y,c[g]=x<<24|x>>>8,f[g]=x<<16|x>>>16,p[g]=x<<8|x>>>24,d[g]=x,y?(y=b^h[h[h[w^b]]],v^=h[h[v]]):y=v=1}var S=[0,1,2,4,8,16,32,64,128,27,54];n=n.AES=t.extend({_doReset:function(){for(var e=(n=this._key).words,t=n.sigBytes/4,n=4*((this._nRounds=t+6)+1),a=this._keySchedule=[],i=0;i>>24]<<24|r[o>>>16&255]<<16|r[o>>>8&255]<<8|r[255&o]):(o=r[(o=o<<8|o>>>24)>>>24]<<24|r[o>>>16&255]<<16|r[o>>>8&255]<<8|r[255&o],o^=S[i/t|0]<<24),a[i]=a[i-t]^o}for(e=this._invKeySchedule=[],t=0;tt||4>=i?o:c[r[o>>>24]]^f[r[o>>>16&255]]^p[r[o>>>8&255]]^d[r[255&o]]},encryptBlock:function(e,t){this._doCryptBlock(e,t,this._keySchedule,i,o,s,l,r)},decryptBlock:function(e,t){var n=e[t+1];e[t+1]=e[t+3],e[t+3]=n,this._doCryptBlock(e,t,this._invKeySchedule,c,f,p,d,a),n=e[t+1],e[t+1]=e[t+3],e[t+3]=n},_doCryptBlock:function(e,t,n,r,a,i,o,s){for(var u=this._nRounds,l=e[t]^n[0],c=e[t+1]^n[1],f=e[t+2]^n[2],p=e[t+3]^n[3],d=4,h=1;h>>24]^a[c>>>16&255]^i[f>>>8&255]^o[255&p]^n[d++],y=r[c>>>24]^a[f>>>16&255]^i[p>>>8&255]^o[255&l]^n[d++],v=r[f>>>24]^a[p>>>16&255]^i[l>>>8&255]^o[255&c]^n[d++];p=r[p>>>24]^a[l>>>16&255]^i[c>>>8&255]^o[255&f]^n[d++],l=m,c=y,f=v}m=(s[l>>>24]<<24|s[c>>>16&255]<<16|s[f>>>8&255]<<8|s[255&p])^n[d++],y=(s[c>>>24]<<24|s[f>>>16&255]<<16|s[p>>>8&255]<<8|s[255&l])^n[d++],v=(s[f>>>24]<<24|s[p>>>16&255]<<16|s[l>>>8&255]<<8|s[255&c])^n[d++],p=(s[p>>>24]<<24|s[l>>>16&255]<<16|s[c>>>8&255]<<8|s[255&f])^n[d++],e[t]=m,e[t+1]=y,e[t+2]=v,e[t+3]=p},keySize:8}),e.AES=t._createHelper(n)}(),u=u||function(e,t){var n={},r=n.lib={},a=function(){},i=r.Base={extend:function(e){a.prototype=this;var t=new a;return e&&t.mixIn(e),t.hasOwnProperty("init")||(t.init=function(){t.$super.init.apply(this,arguments)}),t.init.prototype=t,t.$super=this,t},create:function(){var e=this.extend();return e.init.apply(e,arguments),e},init:function(){},mixIn:function(e){for(var t in e)e.hasOwnProperty(t)&&(this[t]=e[t]);e.hasOwnProperty("toString")&&(this.toString=e.toString)},clone:function(){return this.init.prototype.extend(this)}},o=r.WordArray=i.extend({init:function(e,t){e=this.words=e||[],this.sigBytes=null!=t?t:4*e.length},toString:function(e){return(e||u).stringify(this)},concat:function(e){var t=this.words,n=e.words,r=this.sigBytes;if(e=e.sigBytes,this.clamp(),r%4)for(var a=0;a>>2]|=(n[a>>>2]>>>24-a%4*8&255)<<24-(r+a)%4*8;else if(65535>>2]=n[a>>>2];else t.push.apply(t,n);return this.sigBytes+=e,this},clamp:function(){var t=this.words,n=this.sigBytes;t[n>>>2]&=4294967295<<32-n%4*8,t.length=e.ceil(n/4)},clone:function(){var e=i.clone.call(this);return e.words=this.words.slice(0),e},random:function(t){for(var n=[],r=0;r>>2]>>>24-r%4*8&255;n.push((a>>>4).toString(16)),n.push((15&a).toString(16))}return n.join("")},parse:function(e){for(var t=e.length,n=[],r=0;r>>3]|=parseInt(e.substr(r,2),16)<<24-r%8*4;return new o.init(n,t/2)}},l=s.Latin1={stringify:function(e){var t=e.words;e=e.sigBytes;for(var n=[],r=0;r>>2]>>>24-r%4*8&255));return n.join("")},parse:function(e){for(var t=e.length,n=[],r=0;r>>2]|=(255&e.charCodeAt(r))<<24-r%4*8;return new o.init(n,t)}},c=s.Utf8={stringify:function(e){try{return decodeURIComponent(escape(l.stringify(e)))}catch(e){throw Error("Malformed UTF-8 data")}},parse:function(e){return l.parse(unescape(encodeURIComponent(e)))}},f=r.BufferedBlockAlgorithm=i.extend({reset:function(){this._data=new o.init,this._nDataBytes=0},_append:function(e){"string"==typeof e&&(e=c.parse(e)),this._data.concat(e),this._nDataBytes+=e.sigBytes},_process:function(t){var n=this._data,r=n.words,a=n.sigBytes,i=this.blockSize,s=a/(4*i);if(t=(s=t?e.ceil(s):e.max((0|s)-this._minBufferSize,0))*i,a=e.min(4*t,a),t){for(var u=0;uc;){var f;e:{f=l;for(var p=e.sqrt(f),d=2;d<=p;d++)if(!(f%d)){f=!1;break e}f=!0}f&&(8>c&&(i[c]=s(e.pow(l,.5))),o[c]=s(e.pow(l,1/3)),c++),l++}var h=[];a=a.SHA256=r.extend({_doReset:function(){this._hash=new n.init(i.slice(0))},_doProcessBlock:function(e,t){for(var n=this._hash.words,r=n[0],a=n[1],i=n[2],s=n[3],u=n[4],l=n[5],c=n[6],f=n[7],p=0;64>p;p++){if(16>p)h[p]=0|e[t+p];else{var d=h[p-15],m=h[p-2];h[p]=((d<<25|d>>>7)^(d<<14|d>>>18)^d>>>3)+h[p-7]+((m<<15|m>>>17)^(m<<13|m>>>19)^m>>>10)+h[p-16]}d=f+((u<<26|u>>>6)^(u<<21|u>>>11)^(u<<7|u>>>25))+(u&l^~u&c)+o[p]+h[p],m=((r<<30|r>>>2)^(r<<19|r>>>13)^(r<<10|r>>>22))+(r&a^r&i^a&i),f=c,c=l,l=u,u=s+d|0,s=i,i=a,a=r,r=d+m|0}n[0]=n[0]+r|0,n[1]=n[1]+a|0,n[2]=n[2]+i|0,n[3]=n[3]+s|0,n[4]=n[4]+u|0,n[5]=n[5]+l|0,n[6]=n[6]+c|0,n[7]=n[7]+f|0},_doFinalize:function(){var t=this._data,n=t.words,r=8*this._nDataBytes,a=8*t.sigBytes;return n[a>>>5]|=128<<24-a%32,n[14+(a+64>>>9<<4)]=e.floor(r/4294967296),n[15+(a+64>>>9<<4)]=r,t.sigBytes=4*n.length,this._process(),this._hash},clone:function(){var e=r.clone.call(this);return e._hash=this._hash.clone(),e}}),t.SHA256=r._createHelper(a),t.HmacSHA256=r._createHmacHelper(a)}(Math),i=(a=u).enc.Utf8,a.algo.HMAC=a.lib.Base.extend({init:function(e,t){e=this._hasher=new e.init,"string"==typeof t&&(t=i.parse(t));var n=e.blockSize,r=4*n;t.sigBytes>r&&(t=e.finalize(t)),t.clamp();for(var a=this._oKey=t.clone(),o=this._iKey=t.clone(),s=a.words,u=o.words,l=0;l>>2]|=(n[a>>>2]>>>24-a%4*8&255)<<24-(r+a)%4*8;else if(65535>>2]=n[a>>>2];else t.push.apply(t,n);return this.sigBytes+=e,this},clamp:function(){var t=this.words,n=this.sigBytes;t[n>>>2]&=4294967295<<32-n%4*8,t.length=e.ceil(n/4)},clone:function(){var e=i.clone.call(this);return e.words=this.words.slice(0),e},random:function(t){for(var n=[],r=0;r>>2]>>>24-r%4*8&255;n.push((a>>>4).toString(16)),n.push((15&a).toString(16))}return n.join("")},parse:function(e){for(var t=e.length,n=[],r=0;r>>3]|=parseInt(e.substr(r,2),16)<<24-r%8*4;return new o.init(n,t/2)}},l=s.Latin1={stringify:function(e){var t=e.words;e=e.sigBytes;for(var n=[],r=0;r>>2]>>>24-r%4*8&255));return n.join("")},parse:function(e){for(var t=e.length,n=[],r=0;r>>2]|=(255&e.charCodeAt(r))<<24-r%4*8;return new o.init(n,t)}},c=s.Utf8={stringify:function(e){try{return decodeURIComponent(escape(l.stringify(e)))}catch(e){throw Error("Malformed UTF-8 data")}},parse:function(e){return l.parse(unescape(encodeURIComponent(e)))}},f=r.BufferedBlockAlgorithm=i.extend({reset:function(){this._data=new o.init,this._nDataBytes=0},_append:function(e){"string"==typeof e&&(e=c.parse(e)),this._data.concat(e),this._nDataBytes+=e.sigBytes},_process:function(t){var n=this._data,r=n.words,a=n.sigBytes,i=this.blockSize,s=a/(4*i);if(t=(s=t?e.ceil(s):e.max((0|s)-this._minBufferSize,0))*i,a=e.min(4*t,a),t){for(var u=0;ul;l++)s[l]=e();i=i.SHA512=n.extend({_doReset:function(){this._hash=new a.init([new r.init(1779033703,4089235720),new r.init(3144134277,2227873595),new r.init(1013904242,4271175723),new r.init(2773480762,1595750129),new r.init(1359893119,2917565137),new r.init(2600822924,725511199),new r.init(528734635,4215389547),new r.init(1541459225,327033209)])},_doProcessBlock:function(e,t){for(var n=(f=this._hash.words)[0],r=f[1],a=f[2],i=f[3],u=f[4],l=f[5],c=f[6],f=f[7],p=n.high,d=n.low,h=r.high,m=r.low,y=a.high,v=a.low,g=i.high,b=i.low,k=u.high,w=u.low,x=l.high,S=l.low,_=c.high,E=c.low,C=f.high,I=f.low,T=p,R=d,F=h,D=m,P=y,M=v,O=g,A=b,N=k,j=w,L=x,B=S,U=_,z=E,H=C,K=I,W=0;80>W;W++){var V=s[W];if(16>W)var q=V.high=0|e[t+2*W],$=V.low=0|e[t+2*W+1];else{q=(($=(q=s[W-15]).high)>>>1|(J=q.low)<<31)^($>>>8|J<<24)^$>>>7;var J=(J>>>1|$<<31)^(J>>>8|$<<24)^(J>>>7|$<<25),Q=(($=(Q=s[W-2]).high)>>>19|(G=Q.low)<<13)^($<<3|G>>>29)^$>>>6,G=(G>>>19|$<<13)^(G<<3|$>>>29)^(G>>>6|$<<26),Y=($=s[W-7]).high,X=(Z=s[W-16]).high,Z=Z.low;q=(q=(q=q+Y+(($=J+$.low)>>>0>>0?1:0))+Q+(($+=G)>>>0>>0?1:0))+X+(($+=Z)>>>0>>0?1:0),V.high=q,V.low=$}Y=N&L^~N&U,Z=j&B^~j&z,V=T&F^T&P^F&P;var ee=R&D^R&M^D&M,te=(J=(T>>>28|R<<4)^(T<<30|R>>>2)^(T<<25|R>>>7),Q=(R>>>28|T<<4)^(R<<30|T>>>2)^(R<<25|T>>>7),(G=o[W]).high),ne=G.low;X=H+((N>>>14|j<<18)^(N>>>18|j<<14)^(N<<23|j>>>9))+((G=K+((j>>>14|N<<18)^(j>>>18|N<<14)^(j<<23|N>>>9)))>>>0>>0?1:0),H=U,K=z,U=L,z=B,L=N,B=j,N=O+(X=(X=(X=X+Y+((G+=Z)>>>0>>0?1:0))+te+((G+=ne)>>>0>>0?1:0))+q+((G+=$)>>>0<$>>>0?1:0))+((j=A+G|0)>>>0>>0?1:0)|0,O=P,A=M,P=F,M=D,F=T,D=R,T=X+(V=J+V+(($=Q+ee)>>>0>>0?1:0))+((R=G+$|0)>>>0>>0?1:0)|0}d=n.low=d+R,n.high=p+T+(d>>>0>>0?1:0),m=r.low=m+D,r.high=h+F+(m>>>0>>0?1:0),v=a.low=v+M,a.high=y+P+(v>>>0>>0?1:0),b=i.low=b+A,i.high=g+O+(b>>>0>>0?1:0),w=u.low=w+j,u.high=k+N+(w>>>0>>0?1:0),S=l.low=S+B,l.high=x+L+(S>>>0>>0?1:0),E=c.low=E+z,c.high=_+U+(E>>>0>>0?1:0),I=f.low=I+K,f.high=C+H+(I>>>0>>0?1:0)},_doFinalize:function(){var e=this._data,t=e.words,n=8*this._nDataBytes,r=8*e.sigBytes;return t[r>>>5]|=128<<24-r%32,t[30+(r+128>>>10<<5)]=Math.floor(n/4294967296),t[31+(r+128>>>10<<5)]=n,e.sigBytes=4*t.length,this._process(),this._hash.toX32()},clone:function(){var e=n.clone.call(this);return e._hash=this._hash.clone(),e},blockSize:32}),t.SHA512=n._createHelper(i),t.HmacSHA512=n._createHmacHelper(i)}(),s=(o=u).enc.Utf8,o.algo.HMAC=o.lib.Base.extend({init:function(e,t){e=this._hasher=new e.init,"string"==typeof t&&(t=s.parse(t));var n=e.blockSize,r=4*n;t.sigBytes>r&&(t=e.finalize(t)),t.clamp();for(var a=this._oKey=t.clone(),i=this._iKey=t.clone(),o=a.words,u=i.words,l=0;l>>2]|=(n[a>>>2]>>>24-a%4*8&255)<<24-(r+a)%4*8;else if(65535>>2]=n[a>>>2];else t.push.apply(t,n);return this.sigBytes+=e,this},clamp:function(){var t=this.words,n=this.sigBytes;t[n>>>2]&=4294967295<<32-n%4*8,t.length=e.ceil(n/4)},clone:function(){var e=i.clone.call(this);return e.words=this.words.slice(0),e},random:function(t){for(var n=[],r=0;r>>2]>>>24-r%4*8&255;n.push((a>>>4).toString(16)),n.push((15&a).toString(16))}return n.join("")},parse:function(e){for(var t=e.length,n=[],r=0;r>>3]|=parseInt(e.substr(r,2),16)<<24-r%8*4;return new o.init(n,t/2)}},l=s.Latin1={stringify:function(e){var t=e.words;e=e.sigBytes;for(var n=[],r=0;r>>2]>>>24-r%4*8&255));return n.join("")},parse:function(e){for(var t=e.length,n=[],r=0;r>>2]|=(255&e.charCodeAt(r))<<24-r%4*8;return new o.init(n,t)}},c=s.Utf8={stringify:function(e){try{return decodeURIComponent(escape(l.stringify(e)))}catch(e){throw Error("Malformed UTF-8 data")}},parse:function(e){return l.parse(unescape(encodeURIComponent(e)))}},f=r.BufferedBlockAlgorithm=i.extend({reset:function(){this._data=new o.init,this._nDataBytes=0},_append:function(e){"string"==typeof e&&(e=c.parse(e)),this._data.concat(e),this._nDataBytes+=e.sigBytes},_process:function(t){var n=this._data,r=n.words,a=n.sigBytes,i=this.blockSize,s=a/(4*i);if(t=(s=t?e.ceil(s):e.max((0|s)-this._minBufferSize,0))*i,a=e.min(4*t,a),t){for(var u=0;ul;l++){if(16>l)r[l]=0|e[t+l];else{var c=r[l-3]^r[l-8]^r[l-14]^r[l-16];r[l]=c<<1|c>>>31}c=(a<<5|a>>>27)+u+r[l],c=20>l?c+(1518500249+(i&o|~i&s)):40>l?c+(1859775393+(i^o^s)):60>l?c+((i&o|i&s|o&s)-1894007588):c+((i^o^s)-899497514),u=s,s=o,o=i<<30|i>>>2,i=a,a=c}n[0]=n[0]+a|0,n[1]=n[1]+i|0,n[2]=n[2]+o|0,n[3]=n[3]+s|0,n[4]=n[4]+u|0},_doFinalize:function(){var e=this._data,t=e.words,n=8*this._nDataBytes,r=8*e.sigBytes;return t[r>>>5]|=128<<24-r%32,t[14+(r+64>>>9<<4)]=Math.floor(n/4294967296),t[15+(r+64>>>9<<4)]=n,e.sigBytes=4*t.length,this._process(),this._hash},clone:function(){var e=n.clone.call(this);return e._hash=this._hash.clone(),e}});e.SHA1=n._createHelper(a),e.HmacSHA1=n._createHmacHelper(a)}(),function(){var e=u,t=e.enc.Utf8;e.algo.HMAC=e.lib.Base.extend({init:function(e,n){e=this._hasher=new e.init,"string"==typeof n&&(n=t.parse(n));var r=e.blockSize,a=4*r;n.sigBytes>a&&(n=e.finalize(n)),n.clamp();for(var i=this._oKey=n.clone(),o=this._iKey=n.clone(),s=i.words,u=o.words,l=0;l>>2]|=(n[a>>>2]>>>24-a%4*8&255)<<24-(r+a)%4*8;else if(65535>>2]=n[a>>>2];else t.push.apply(t,n);return this.sigBytes+=e,this},clamp:function(){var t=this.words,n=this.sigBytes;t[n>>>2]&=4294967295<<32-n%4*8,t.length=e.ceil(n/4)},clone:function(){var e=i.clone.call(this);return e.words=this.words.slice(0),e},random:function(t){for(var n=[],r=0;r>>2]>>>24-r%4*8&255;n.push((a>>>4).toString(16)),n.push((15&a).toString(16))}return n.join("")},parse:function(e){for(var t=e.length,n=[],r=0;r>>3]|=parseInt(e.substr(r,2),16)<<24-r%8*4;return new o.init(n,t/2)}},l=s.Latin1={stringify:function(e){var t=e.words;e=e.sigBytes;for(var n=[],r=0;r>>2]>>>24-r%4*8&255));return n.join("")},parse:function(e){for(var t=e.length,n=[],r=0;r>>2]|=(255&e.charCodeAt(r))<<24-r%4*8;return new o.init(n,t)}},c=s.Utf8={stringify:function(e){try{return decodeURIComponent(escape(l.stringify(e)))}catch(e){throw Error("Malformed UTF-8 data")}},parse:function(e){return l.parse(unescape(encodeURIComponent(e)))}},f=r.BufferedBlockAlgorithm=i.extend({reset:function(){this._data=new o.init,this._nDataBytes=0},_append:function(e){"string"==typeof e&&(e=c.parse(e)),this._data.concat(e),this._nDataBytes+=e.sigBytes},_process:function(t){var n=this._data,r=n.words,a=n.sigBytes,i=this.blockSize,s=a/(4*i);if(t=(s=t?e.ceil(s):e.max((0|s)-this._minBufferSize,0))*i,a=e.min(4*t,a),t){for(var u=0;ul;l++){if(16>l)r[l]=0|e[t+l];else{var c=r[l-3]^r[l-8]^r[l-14]^r[l-16];r[l]=c<<1|c>>>31}c=(a<<5|a>>>27)+u+r[l],c=20>l?c+(1518500249+(i&o|~i&s)):40>l?c+(1859775393+(i^o^s)):60>l?c+((i&o|i&s|o&s)-1894007588):c+((i^o^s)-899497514),u=s,s=o,o=i<<30|i>>>2,i=a,a=c}n[0]=n[0]+a|0,n[1]=n[1]+i|0,n[2]=n[2]+o|0,n[3]=n[3]+s|0,n[4]=n[4]+u|0},_doFinalize:function(){var e=this._data,t=e.words,n=8*this._nDataBytes,r=8*e.sigBytes;return t[r>>>5]|=128<<24-r%32,t[14+(r+64>>>9<<4)]=Math.floor(n/4294967296),t[15+(r+64>>>9<<4)]=n,e.sigBytes=4*t.length,this._process(),this._hash},clone:function(){var e=n.clone.call(this);return e._hash=this._hash.clone(),e}});e.SHA1=n._createHelper(a),e.HmacSHA1=n._createHmacHelper(a)}(),Object.defineProperty(r,"__esModule",{value:!0}),r.StandardFile=r.SFItemTransformer=r.SFCryptoWeb=r.SFCryptoJS=r.SFAbstractCrypto=r.SFItemHistoryEntry=r.SFItemHistory=r.SFHistorySession=r.SFPrivileges=r.SFPredicate=r.SFItemParams=r.SFItem=r.SFSyncManager=r.SFStorageManager=r.SFSingletonManager=r.SFSessionHistoryManager=r.SFPrivilegesManager=r.SFModelManager=r.SFMigrationManager=r.SFHttpManager=r.SFAuthManager=r.SFAlertManager=void 0;var k=function(){function e(){v(this,e)}var t,n;return b(e,[{key:"alert",value:(n=y(regeneratorRuntime.mark((function e(t){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",new Promise((function(e,n){window.alert(t.text),e()})));case 1:case"end":return e.stop()}}),e)}))),function(e){return n.apply(this,arguments)})},{key:"confirm",value:(t=y(regeneratorRuntime.mark((function e(t){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",new Promise((function(e,n){window.confirm(t.text)?e():n()})));case 1:case"end":return e.stop()}}),e)}))),function(e){return t.apply(this,arguments)})}]),e}();r.SFAlertManager=k;var w=function(){function e(t,n,r,a){v(this,e),e.DidSignOutEvent="DidSignOutEvent",e.WillSignInEvent="WillSignInEvent",e.DidSignInEvent="DidSignInEvent",this.httpManager=n,this.storageManager=t,this.alertManager=r||new k,this.$timeout=a||setTimeout.bind(window),this.eventHandlers=[]}var t,n,r,a,i,o,s,u,l,c;return b(e,[{key:"addEventHandler",value:function(e){return this.eventHandlers.push(e),e}},{key:"removeEventHandler",value:function(e){_.pull(this.eventHandlers,e)}},{key:"notifyEvent",value:function(e,t){var n=!0,r=!1,a=void 0;try{for(var i,o=this.eventHandlers[Symbol.iterator]();!(n=(i=o.next()).done);n=!0)(0,i.value)(e,t||{})}catch(e){r=!0,a=e}finally{try{n||null==o.return||o.return()}finally{if(r)throw a}}}},{key:"saveKeys",value:(c=y(regeneratorRuntime.mark((function e(t){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return this._keys=t,e.next=3,this.storageManager.setItem("mk",t.mk);case 3:return e.next=5,this.storageManager.setItem("ak",t.ak);case 5:case"end":return e.stop()}}),e,this)}))),function(e){return c.apply(this,arguments)})},{key:"signout",value:(l=y(regeneratorRuntime.mark((function t(n){var r=this;return regeneratorRuntime.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(this._keys=null,this._authParams=null,!n){t.next=6;break}return t.abrupt("return",this.storageManager.clearAllData().then((function(){r.notifyEvent(e.DidSignOutEvent)})));case 6:this.notifyEvent(e.DidSignOutEvent);case 7:case"end":return t.stop()}}),t,this)}))),function(e){return l.apply(this,arguments)})},{key:"keys",value:(u=y(regeneratorRuntime.mark((function e(){var t;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(this._keys){e.next=11;break}return e.next=3,this.storageManager.getItem("mk");case 3:if(t=e.sent){e.next=6;break}return e.abrupt("return",null);case 6:return e.t0=t,e.next=9,this.storageManager.getItem("ak");case 9:e.t1=e.sent,this._keys={mk:e.t0,ak:e.t1};case 11:return e.abrupt("return",this._keys);case 12:case"end":return e.stop()}}),e,this)}))),function(){return u.apply(this,arguments)})},{key:"getAuthParams",value:(s=y(regeneratorRuntime.mark((function e(){var t;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(this._authParams){e.next=5;break}return e.next=3,this.storageManager.getItem("auth_params");case 3:t=e.sent,this._authParams=JSON.parse(t);case 5:if(!this._authParams||this._authParams.version){e.next=9;break}return e.next=8,this.defaultProtocolVersion();case 8:this._authParams.version=e.sent;case 9:return e.abrupt("return",this._authParams);case 10:case"end":return e.stop()}}),e,this)}))),function(){return s.apply(this,arguments)})},{key:"defaultProtocolVersion",value:(o=y(regeneratorRuntime.mark((function e(){var t;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.keys();case 2:if(!(t=e.sent)||!t.ak){e.next=7;break}return e.abrupt("return","002");case 7:return e.abrupt("return","001");case 8:case"end":return e.stop()}}),e,this)}))),function(){return o.apply(this,arguments)})},{key:"protocolVersion",value:(i=y(regeneratorRuntime.mark((function e(){var t;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.getAuthParams();case 2:if(!(t=e.sent)||!t.version){e.next=5;break}return e.abrupt("return",t.version);case 5:return e.abrupt("return",this.defaultProtocolVersion());case 6:case"end":return e.stop()}}),e,this)}))),function(){return i.apply(this,arguments)})},{key:"getAuthParamsForEmail",value:(a=y(regeneratorRuntime.mark((function e(t,n,r){var a,i=this;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return(a=_.merge({email:n},r)).api=S.getApiVersion(),e.abrupt("return",new Promise((function(e,n){var r=t+"/auth/params";i.httpManager.getAbsolute(r,a,(function(t){e(t)}),(function(t){console.error("Error getting auth params",t),"object"!==h(t)&&(t={error:{message:"A server error occurred while trying to sign in. Please try again."}}),e(t)}))})));case 3:case"end":return e.stop()}}),e)}))),function(e,t,n){return a.apply(this,arguments)})},{key:"lock",value:function(){this.locked=!0}},{key:"unlock",value:function(){this.locked=!1}},{key:"isLocked",value:function(){return 1==this.locked}},{key:"unlockAndResolve",value:function(e,t){this.unlock(),e(t)}},{key:"login",value:(r=y(regeneratorRuntime.mark((function t(n,r,a,i,o){var s=this;return regeneratorRuntime.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.abrupt("return",new Promise(function(){var t=y(regeneratorRuntime.mark((function t(u,l){var c,f,p,d,m,v,g,b,k,w;return regeneratorRuntime.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.next=2,s.keys();case 2:if(null==t.sent){t.next=6;break}return u({error:{message:"Cannot log in because already signed in."}}),t.abrupt("return");case 6:if(!s.isLocked()){t.next=9;break}return u({error:{message:"Login already in progress."}}),t.abrupt("return");case 9:return s.lock(),s.notifyEvent(e.WillSignInEvent),t.next=13,s.getAuthParamsForEmail(n,r,o);case 13:if((c=t.sent).identifier=r,!c.error){t.next=18;break}return s.unlockAndResolve(u,c),t.abrupt("return");case 18:if(c&&c.pw_cost){t.next=21;break}return s.unlockAndResolve(u,{error:{message:"Invalid email or password."}}),t.abrupt("return");case 21:if(SFJS.supportedVersions().includes(c.version)){t.next=25;break}return f=SFJS.isVersionNewerThanLibraryVersion(c.version)?"This version of the application does not support your newer account type. Please upgrade to the latest version of Standard Notes to sign in.":"The protocol version associated with your account is outdated and no longer supported by this application. Please visit standardnotes.org/help/security for more information.",s.unlockAndResolve(u,{error:{message:f}}),t.abrupt("return");case 25:if(!SFJS.isProtocolVersionOutdated(c.version)){t.next=32;break}return p="The encryption version for your account, ".concat(c.version,", is outdated and requires upgrade. You may proceed with login, but are advised to perform a security update using the web or desktop application. Please visit standardnotes.org/help/security for more information."),d=!1,t.next=30,s.alertManager.confirm({title:"Update Needed",text:p,confirmButtonText:"Sign In"}).catch((function(){s.unlockAndResolve(u,{error:{}}),d=!0}));case 30:if(!d){t.next=32;break}return t.abrupt("return");case 32:if(SFJS.supportsPasswordDerivationCost(c.pw_cost)){t.next=36;break}return s.unlockAndResolve(u,{error:{message:"Your account was created on a platform with higher security capabilities than this browser supports. If we attempted to generate your login keys here, it would take hours. Please use a browser with more up to date security capabilities, like Google Chrome or Firefox, to log in."}}),t.abrupt("return");case 36:if(m=SFJS.costMinimumForVersion(c.version),!(c.pw_cost5&&void 0!==u[5]&&u[5],e.abrupt("return",new Promise(function(){var e=y(regeneratorRuntime.mark((function e(u,l){var c;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if((c=new XMLHttpRequest).onreadystatechange=function(){if(4==c.readyState){var e=c.responseText;if(e)try{e=JSON.parse(e)}catch(e){}c.status>=200&&c.status<=299?s.$timeout((function(){a(e),u(e)})):(console.error("Request error:",e),s.$timeout((function(){i(e,c.status),l(e)})))}},"get"==t&&Object.keys(r).length>0&&(n=s.urlForUrlAndParams(n,r)),c.open(t,n,!0),c.setRequestHeader("Content-type","application/json"),!o){e.next=8;break}return e.next=8,s.setAuthHeadersForRequest(c);case 8:"post"==t||"patch"==t?c.send(JSON.stringify(r)):c.send();case 9:case"end":return e.stop()}}),e)})));return function(t,n){return e.apply(this,arguments)}}()));case 2:case"end":return e.stop()}}),e)}))),function(e,n,r,a,i){return t.apply(this,arguments)})},{key:"urlForUrlAndParams",value:function(e,t){var n=Object.keys(t).map((function(e){return e+"="+encodeURIComponent(t[e])})).join("&");return e.includes("?")?e+"&"+n:e+"?"+n}}]),e}();r.SFHttpManager=S;var E=function(){function e(t,n,r,a){var i=this;v(this,e),this.modelManager=t,this.syncManager=n,this.storageManager=r,this.completionHandlers=[],this.loadMigrations();var o=!1,s=a.addEventHandler((function(e){e==w.DidSignInEvent&&(o=!0)}));this.receivedLocalDataEvent=n.initialDataLoaded(),this.syncManager.addEventHandler(function(){var e=y(regeneratorRuntime.mark((function e(t,n){var r,u,l,c,f,p,d,h,m;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(u="sync:completed"==t,!(r="local-data-loaded"==t)&&!u){e.next=40;break}if(r?i.receivedLocalDataEvent=!0:u&&(i.receivedSyncCompletedEvent=!0),!i.receivedLocalDataEvent||!i.receivedSyncCompletedEvent){e.next=40;break}if(!o){e.next=39;break}return o=!1,a.removeEventHandler(s),e.next=10,i.getCompletedMigrations();case 10:l=e.sent.slice(),c=!0,f=!1,p=void 0,e.prev=14,d=l[Symbol.iterator]();case 16:if(c=(h=d.next()).done){e.next=25;break}return m=h.value,e.next=20,i.migrationForEncodedName(m);case 20:e.sent.runOnlyOnce||_.pull(i._completed,m);case 22:c=!0,e.next=16;break;case 25:e.next=31;break;case 27:e.prev=27,e.t0=e.catch(14),f=!0,p=e.t0;case 31:e.prev=31,e.prev=32,c||null==d.return||d.return();case 34:if(e.prev=34,!f){e.next=37;break}throw p;case 37:return e.finish(34);case 38:return e.finish(31);case 39:i.runPendingMigrations();case 40:case"end":return e.stop()}}),e,null,[[14,27,31,39],[32,,34,38]])})));return function(t,n){return e.apply(this,arguments)}}())}var t,n,r,a,i,o,s,u;return b(e,[{key:"addCompletionHandler",value:function(e){this.completionHandlers.push(e)}},{key:"removeCompletionHandler",value:function(e){_.pull(this.completionHandlers,e)}},{key:"migrationForEncodedName",value:(u=y(regeneratorRuntime.mark((function e(t){var n;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.decode(t);case 2:return n=e.sent,e.abrupt("return",this.migrations.find((function(e){return e.name==n})));case 4:case"end":return e.stop()}}),e,this)}))),function(e){return u.apply(this,arguments)})},{key:"loadMigrations",value:function(){this.migrations=this.registeredMigrations()}},{key:"registeredMigrations",value:function(){}},{key:"runPendingMigrations",value:(s=y(regeneratorRuntime.mark((function e(){var t,n,r,a,i,o,s,u,l,c,f,p,d,h,m,y,v,g,b,k,w,x,S,_,E,C,I,T;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.getPendingMigrations();case 2:for(t=e.sent,n=!0,r=!1,a=void 0,e.prev=6,i=t[Symbol.iterator]();!(n=(o=i.next()).done);n=!0)(s=o.value).items=[];e.next=14;break;case 10:e.prev=10,e.t0=e.catch(6),r=!0,a=e.t0;case 14:e.prev=14,e.prev=15,n||null==i.return||i.return();case 17:if(e.prev=17,!r){e.next=20;break}throw a;case 20:return e.finish(17);case 21:return e.finish(14);case 22:u=!0,l=!1,c=void 0,e.prev=25,f=this.modelManager.allNondummyItems[Symbol.iterator]();case 27:if(u=(p=f.next()).done){e.next=51;break}for(d=p.value,h=!0,m=!1,y=void 0,e.prev=32,v=t[Symbol.iterator]();!(h=(g=v.next()).done);h=!0)s=g.value,d.content_type==s.content_type&&s.items.push(d);e.next=40;break;case 36:e.prev=36,e.t1=e.catch(32),m=!0,y=e.t1;case 40:e.prev=40,e.prev=41,h||null==v.return||v.return();case 43:if(e.prev=43,!m){e.next=46;break}throw y;case 46:return e.finish(43);case 47:return e.finish(40);case 48:u=!0,e.next=27;break;case 51:e.next=57;break;case 53:e.prev=53,e.t2=e.catch(25),l=!0,c=e.t2;case 57:e.prev=57,e.prev=58,u||null==f.return||f.return();case 60:if(e.prev=60,!l){e.next=63;break}throw c;case 63:return e.finish(60);case 64:return e.finish(57);case 65:b=!0,k=!1,w=void 0,e.prev=68,x=t[Symbol.iterator]();case 70:if(b=(S=x.next()).done){e.next=81;break}if(!((s=S.value).items&&s.items.length>0||s.customHandler)){e.next=77;break}return e.next=75,this.runMigration(s,s.items);case 75:e.next=78;break;case 77:this.markMigrationCompleted(s);case 78:b=!0,e.next=70;break;case 81:e.next=87;break;case 83:e.prev=83,e.t3=e.catch(68),k=!0,w=e.t3;case 87:e.prev=87,e.prev=88,b||null==x.return||x.return();case 90:if(e.prev=90,!k){e.next=93;break}throw w;case 93:return e.finish(90);case 94:return e.finish(87);case 95:for(_=!0,E=!1,C=void 0,e.prev=98,I=this.completionHandlers[Symbol.iterator]();!(_=(T=I.next()).done);_=!0)(0,T.value)();e.next=106;break;case 102:e.prev=102,e.t4=e.catch(98),E=!0,C=e.t4;case 106:e.prev=106,e.prev=107,_||null==I.return||I.return();case 109:if(e.prev=109,!E){e.next=112;break}throw C;case 112:return e.finish(109);case 113:return e.finish(106);case 114:case"end":return e.stop()}}),e,this,[[6,10,14,22],[15,,17,21],[25,53,57,65],[32,36,40,48],[41,,43,47],[58,,60,64],[68,83,87,95],[88,,90,94],[98,102,106,114],[107,,109,113]])}))),function(){return s.apply(this,arguments)})},{key:"encode",value:(o=y(regeneratorRuntime.mark((function e(t){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",window.btoa(t));case 1:case"end":return e.stop()}}),e)}))),function(e){return o.apply(this,arguments)})},{key:"decode",value:(i=y(regeneratorRuntime.mark((function e(t){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",window.atob(t));case 1:case"end":return e.stop()}}),e)}))),function(e){return i.apply(this,arguments)})},{key:"getCompletedMigrations",value:(a=y(regeneratorRuntime.mark((function e(){var t;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(this._completed){e.next=5;break}return e.next=3,this.storageManager.getItem("migrations");case 3:t=e.sent,this._completed=t?JSON.parse(t):[];case 5:return e.abrupt("return",this._completed);case 6:case"end":return e.stop()}}),e,this)}))),function(){return a.apply(this,arguments)})},{key:"getPendingMigrations",value:(r=y(regeneratorRuntime.mark((function e(){var t,n,r,a,i,o,s,u;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.getCompletedMigrations();case 2:t=e.sent,n=[],r=!0,a=!1,i=void 0,e.prev=7,o=this.migrations[Symbol.iterator]();case 9:if(r=(s=o.next()).done){e.next=22;break}return u=s.value,e.t0=t,e.next=14,this.encode(u.name);case 14:if(e.t1=e.sent,e.t2=e.t0.indexOf.call(e.t0,e.t1),e.t3=-1,e.t2!=e.t3){e.next=19;break}n.push(u);case 19:r=!0,e.next=9;break;case 22:e.next=28;break;case 24:e.prev=24,e.t4=e.catch(7),a=!0,i=e.t4;case 28:e.prev=28,e.prev=29,r||null==o.return||o.return();case 31:if(e.prev=31,!a){e.next=34;break}throw i;case 34:return e.finish(31);case 35:return e.finish(28);case 36:return e.abrupt("return",n);case 37:case"end":return e.stop()}}),e,this,[[7,24,28,36],[29,,31,35]])}))),function(){return r.apply(this,arguments)})},{key:"markMigrationCompleted",value:(n=y(regeneratorRuntime.mark((function e(t){var n;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.getCompletedMigrations();case 2:return n=e.sent,e.t0=n,e.next=6,this.encode(t.name);case 6:e.t1=e.sent,e.t0.push.call(e.t0,e.t1),this.storageManager.setItem("migrations",JSON.stringify(n)),t.running=!1;case 10:case"end":return e.stop()}}),e,this)}))),function(e){return n.apply(this,arguments)})},{key:"runMigration",value:(t=y(regeneratorRuntime.mark((function e(t,n){var r=this;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!t.running){e.next=2;break}return e.abrupt("return");case 2:if(console.log("Running migration:",t.name),t.running=!0,!t.customHandler){e.next=8;break}return e.abrupt("return",t.customHandler().then((function(){r.markMigrationCompleted(t)})));case 8:return e.abrupt("return",t.handler(n).then((function(){r.markMigrationCompleted(t)})));case 9:case"end":return e.stop()}}),e)}))),function(e,n){return t.apply(this,arguments)})}]),e}();r.SFMigrationManager=E;var C=function(){function e(t){v(this,e),e.MappingSourceRemoteRetrieved="MappingSourceRemoteRetrieved",e.MappingSourceRemoteSaved="MappingSourceRemoteSaved",e.MappingSourceLocalSaved="MappingSourceLocalSaved",e.MappingSourceLocalRetrieved="MappingSourceLocalRetrieved",e.MappingSourceLocalDirtied="MappingSourceLocalDirtied",e.MappingSourceComponentRetrieved="MappingSourceComponentRetrieved",e.MappingSourceDesktopInstalled="MappingSourceDesktopInstalled",e.MappingSourceRemoteActionRetrieved="MappingSourceRemoteActionRetrieved",e.MappingSourceFileImport="MappingSourceFileImport",e.isMappingSourceRetrieved=function(t){return[e.MappingSourceRemoteRetrieved,e.MappingSourceComponentRetrieved,e.MappingSourceRemoteActionRetrieved].includes(t)},this.$timeout=t||setTimeout.bind(window),this.itemSyncObservers=[],this.items=[],this.itemsHash={},this.missedReferences={},this.uuidChangeObservers=[]}var t,n,r,a,i,o,s,u,l,c,f,p;return b(e,[{key:"handleSignout",value:function(){this.items.length=0,this.itemsHash={},this.missedReferences={}}},{key:"addModelUuidChangeObserver",value:function(e,t){this.uuidChangeObservers.push({id:e,callback:t})}},{key:"notifyObserversOfUuidChange",value:function(e,t){var n=!0,r=!1,a=void 0;try{for(var i,o=this.uuidChangeObservers[Symbol.iterator]();!(n=(i=o.next()).done);n=!0){var s=i.value;try{s.callback(e,t)}catch(e){console.error("Notify observers of uuid change exception:",e)}}}catch(e){r=!0,a=e}finally{try{n||null==o.return||o.return()}finally{if(r)throw a}}}},{key:"alternateUUIDForItem",value:(p=y(regeneratorRuntime.mark((function t(n){var r,a,i,o,s,u,l;return regeneratorRuntime.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return r=this.createItem(n),t.next=3,SFJS.crypto.generateUUID();case 3:for(r.uuid=t.sent,r.informReferencesOfUUIDChange(n.uuid,r.uuid),this.informModelsOfUUIDChangeForItem(r,n.uuid,r.uuid),a=!0,i=!1,o=void 0,t.prev=9,s=n.referencingObjects[Symbol.iterator]();!(a=(u=s.next()).done);a=!0)(l=u.value).setIsNoLongerBeingReferencedBy(n),n.setIsNoLongerBeingReferencedBy(l),l.addItemAsRelationship(r);t.next=17;break;case 13:t.prev=13,t.t0=t.catch(9),i=!0,o=t.t0;case 17:t.prev=17,t.prev=18,a||null==s.return||s.return();case 20:if(t.prev=20,!i){t.next=23;break}throw o;case 23:return t.finish(20);case 24:return t.finish(17);case 25:return this.setItemsDirty(n.referencingObjects,!0),this.resolveReferencesForItem(r),this.loggingEnabled&&console.log(n.uuid,"--\x3e",r.uuid),n.deleted=!0,n.content.references=[],this.setItemDirty(n,!1,!1,e.MappingSourceLocalSaved),t.next=33,this.mapResponseItemsToLocalModels([n],e.MappingSourceLocalSaved);case 33:return this.addItem(r),this.setItemDirty(r,!0,!0,e.MappingSourceLocalSaved),this.notifyObserversOfUuidChange(n,r),t.abrupt("return",r);case 37:case"end":return t.stop()}}),t,this,[[9,13,17,25],[18,,20,24]])}))),function(e){return p.apply(this,arguments)})},{key:"informModelsOfUUIDChangeForItem",value:function(e,t,n){var r=!0,a=!1,i=void 0;try{for(var o,s=this.items[Symbol.iterator]();!(r=(o=s.next()).done);r=!0)o.value.potentialItemOfInterestHasChangedItsUUID(e,t,n)}catch(e){a=!0,i=e}finally{try{r||null==s.return||s.return()}finally{if(a)throw i}}}},{key:"didSyncModelsOffline",value:function(t){this.notifySyncObserversOfModels(t,e.MappingSourceLocalSaved)}},{key:"mapResponseItemsToLocalModels",value:(f=y(regeneratorRuntime.mark((function e(t,n,r){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.mapResponseItemsToLocalModelsWithOptions({items:t,source:n,sourceKey:r}));case 1:case"end":return e.stop()}}),e,this)}))),function(e,t,n){return f.apply(this,arguments)})},{key:"mapResponseItemsToLocalModelsOmittingFields",value:(c=y(regeneratorRuntime.mark((function e(t,n,r,a){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.mapResponseItemsToLocalModelsWithOptions({items:t,omitFields:n,source:r,sourceKey:a}));case 1:case"end":return e.stop()}}),e,this)}))),function(e,t,n,r){return c.apply(this,arguments)})},{key:"mapResponseItemsToLocalModelsWithOptions",value:(l=y(regeneratorRuntime.mark((function e(t){var n,r,a,i,o,s,u,l,c,f,p,h,m,y,v,g,b,k,w,x,S,_,E,C,I,T,R,F,D,P,M,O,A,N,j,L,B,U,z;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:n=t.items,r=t.omitFields,a=t.source,i=t.sourceKey,t.options,o=[],s=[],u=[],l=!0,c=!1,f=void 0,e.prev=5,p=n[Symbol.iterator]();case 7:if(l=(h=p.next()).done){e.next=58;break}if(m=h.value){e.next=11;break}return e.abrupt("continue",55);case 11:if(y=!m.content&&!m.errorDecrypting,m.content_type&&m.uuid&&!y||m.deleted){e.next=16;break}return console.error("Server response item is corrupt:",m),e.abrupt("continue",55);case 16:if(!Array.isArray(r)){e.next=36;break}for(v=!0,g=!1,b=void 0,e.prev=20,k=r[Symbol.iterator]();!(v=(w=k.next()).done);v=!0)x=w.value,delete m[x];e.next=28;break;case 24:e.prev=24,e.t0=e.catch(20),g=!0,b=e.t0;case 28:e.prev=28,e.prev=29,v||null==k.return||k.return();case 31:if(e.prev=31,!g){e.next=34;break}throw b;case 34:return e.finish(31);case 35:return e.finish(28);case 36:if((S=this.findItem(m.uuid))&&(S.updateFromJSON(m),S.dummy=!1),_=m.content_type||S&&S.content_type,!this.acceptableContentTypes||this.acceptableContentTypes.includes(_)){e.next=42;break}return e.abrupt("continue",55);case 42:if(E=!1,1!=m.deleted){e.next=50;break}if(!m.dirty){e.next=48;break}E=!0,e.next=50;break;case 48:return S&&(o.push(S),u.push(S),this.removeItemLocally(S)),e.abrupt("continue",55);case 50:S||(S=this.createItem(m)),this.addItem(S,E),S.errorDecrypting||u.push(S),o.push(S),s.push(m);case 55:l=!0,e.next=7;break;case 58:e.next=64;break;case 60:e.prev=60,e.t1=e.catch(5),c=!0,f=e.t1;case 64:e.prev=64,e.prev=65,l||null==p.return||p.return();case 67:if(e.prev=67,!c){e.next=70;break}throw f;case 70:return e.finish(67);case 71:return e.finish(64);case 72:for(C=!0,I=!1,T=void 0,e.prev=75,R=s.entries()[Symbol.iterator]();!(C=(F=R.next()).done);C=!0)D=d(F.value,2),P=D[0],M=D[1],O=o[P],M.content&&this.resolveReferencesForItem(O),O.didFinishSyncing();e.next=83;break;case 79:e.prev=79,e.t2=e.catch(75),I=!0,T=e.t2;case 83:e.prev=83,e.prev=84,C||null==R.return||R.return();case 86:if(e.prev=86,!I){e.next=89;break}throw T;case 89:return e.finish(86);case 90:return e.finish(83);case 91:for(A=this.popMissedReferenceStructsForObjects(s),N=!0,j=!1,L=void 0,e.prev=95,B=function(){var e=z.value,t=o.find((function(t){return t.uuid==e.reference_uuid}));t&&e.for_item.addItemAsRelationship(t)},U=A[Symbol.iterator]();!(N=(z=U.next()).done);N=!0)B();e.next=104;break;case 100:e.prev=100,e.t3=e.catch(95),j=!0,L=e.t3;case 104:e.prev=104,e.prev=105,N||null==U.return||U.return();case 107:if(e.prev=107,!j){e.next=110;break}throw L;case 110:return e.finish(107);case 111:return e.finish(104);case 112:return e.next=114,this.notifySyncObserversOfModels(u,a,i);case 114:return e.abrupt("return",o);case 115:case"end":return e.stop()}}),e,this,[[5,60,64,72],[20,24,28,36],[29,,31,35],[65,,67,71],[75,79,83,91],[84,,86,90],[95,100,104,112],[105,,107,111]])}))),function(e){return l.apply(this,arguments)})},{key:"missedReferenceBuildKey",value:function(e,t){return"".concat(e,":").concat(t)}},{key:"popMissedReferenceStructsForObjects",value:function(e){if(!e||0==e.length)return[];for(var t=[],n=[],r=e.map((function(e){return e.uuid})),a=r[0].length,i=0,o=Object.keys(this.missedReferences);i1&&void 0!==arguments[1]&&arguments[1];if(!e.errorDecrypting){var n=e.contentObject;if(e.updateLocalRelationships(),n.references){var r=n.references.slice(),a=r.map((function(e){return e.uuid})),i=!0,o=this.findItems(a,i),s=!0,u=!1,l=void 0;try{for(var c,f=o.entries()[Symbol.iterator]();!(s=(c=f.next()).done);s=!0){var p=d(c.value,2),h=p[0],m=p[1];if(m)e.addItemAsRelationship(m),t&&this.setItemDirty(m,!0);else{var y=a[h],v=this.missedReferenceBuildKey(y,e.uuid);if(!this.missedReferences[v]){var g={reference_uuid:y,for_item:e};this.missedReferences[v]=g}}}}catch(e){u=!0,l=e}finally{try{s||null==f.return||f.return()}finally{if(u)throw l}}}}}},{key:"notifySyncObserversOfModels",value:(u=y(regeneratorRuntime.mark((function e(t,n,r){var a,i,o,s,u,l,c,f=this;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:a=this.itemSyncObservers.sort((function(e,t){return e.priority0)){e.next=25;break}return e.next=25,f._callSyncObserverCallbackWithTimeout(a,i,o,s,n,r);case 25:case"end":return e.stop()}}),e,null,[[6,10,14,22],[15,,17,21]])})),l=a[Symbol.iterator]();case 7:if(i=(c=l.next()).done){e.next=12;break}return e.delegateYield(u(),"t0",9);case 9:i=!0,e.next=7;break;case 12:e.next=18;break;case 14:e.prev=14,e.t1=e.catch(4),o=!0,s=e.t1;case 18:e.prev=18,e.prev=19,i||null==l.return||l.return();case 21:if(e.prev=21,!o){e.next=24;break}throw s;case 24:return e.finish(21);case 25:return e.finish(18);case 26:case"end":return e.stop()}}),e,this,[[4,14,18,26],[19,,21,25]])}))),function(e,t,n){return u.apply(this,arguments)})},{key:"_callSyncObserverCallbackWithTimeout",value:(s=y(regeneratorRuntime.mark((function e(t,n,r,a,i,o){var s=this;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",new Promise((function(e,u){s.$timeout((function(){try{t.callback(n,r,a,i,o)}catch(e){console.error("Sync observer exception",e)}finally{e()}}))})));case 1:case"end":return e.stop()}}),e)}))),function(e,t,n,r,a,i){return s.apply(this,arguments)})},{key:"setItemDirty",value:function(e){var t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],n=arguments.length>2?arguments[2]:void 0,r=arguments.length>3?arguments[3]:void 0,a=arguments.length>4?arguments[4]:void 0;this.setItemsDirty([e],t,n,r,a)}},{key:"setItemsDirty",value:function(t){var n=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],r=arguments.length>2?arguments[2]:void 0,a=arguments.length>3?arguments[3]:void 0,i=arguments.length>4?arguments[4]:void 0,o=!0,s=!1,u=void 0;try{for(var l,c=t[Symbol.iterator]();!(o=(l=c.next()).done);o=!0){var f=l.value;f.setDirty(n,r)}}catch(e){s=!0,u=e}finally{try{o||null==c.return||c.return()}finally{if(s)throw u}}this.notifySyncObserversOfModels(t,a||e.MappingSourceLocalDirtied,i)}},{key:"createItem",value:function(t){var n=e.ContentTypeClassMapping&&e.ContentTypeClassMapping[t.content_type];return n||(n=M),new n(t)}},{key:"createDuplicateItemFromResponseItem",value:(o=y(regeneratorRuntime.mark((function e(t){var n,r;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if("function"!=typeof t.setDirty){e.next=3;break}return console.error("Attempting to create conflicted copy of non-response item."),e.abrupt("return",null);case 3:return n=JSON.parse(JSON.stringify(t)),e.next=6,SFJS.crypto.generateUUID();case 6:return n.uuid=e.sent,r=this.createItem(n),e.abrupt("return",r);case 9:case"end":return e.stop()}}),e,this)}))),function(e){return o.apply(this,arguments)})},{key:"duplicateItemAndAddAsConflict",value:function(e){return this.duplicateItemWithCustomContentAndAddAsConflict({content:e.content,duplicateOf:e})}},{key:"duplicateItemWithCustomContentAndAddAsConflict",value:function(e){var t=e.content,n=e.duplicateOf,r=this.duplicateItemWithCustomContent({content:t,duplicateOf:n});return this.addDuplicatedItemAsConflict({duplicate:r,duplicateOf:n}),r}},{key:"addDuplicatedItemAsConflict",value:function(e){var t=e.duplicate,n=e.duplicateOf;this.addDuplicatedItem(t,n),t.content.conflict_of=n.uuid}},{key:"duplicateItemWithCustomContent",value:function(e){var t=e.content,n=e.duplicateOf,r=new n.constructor({content:t});return r.created_at=n.created_at,r.content_type||(r.content_type=n.content_type),r}},{key:"duplicateItemAndAdd",value:function(e){var t=this.duplicateItemWithoutAdding(e);return this.addDuplicatedItem(t,e),t}},{key:"duplicateItemWithoutAdding",value:function(e){var t=new e.constructor({content:e.content});return t.created_at=e.created_at,t.content_type||(t.content_type=e.content_type),t}},{key:"addDuplicatedItem",value:function(e,t){this.addItem(e);var n=!0,r=!1,a=void 0;try{for(var i,o=t.referencingObjects[Symbol.iterator]();!(n=(i=o.next()).done);n=!0){var s=i.value;s.addItemAsRelationship(e),this.setItemDirty(s,!0)}}catch(e){r=!0,a=e}finally{try{n||null==o.return||o.return()}finally{if(r)throw a}}this.resolveReferencesForItem(e),this.setItemDirty(e,!0)}},{key:"addItem",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];this.addItems([e],t)}},{key:"addItems",value:function(e){var t=this;e.forEach((function(e){t.itemsHash[e.uuid]||(t.itemsHash[e.uuid]=e,t.items.push(e))}))}},{key:"addItemSyncObserver",value:function(e,t,n){this.addItemSyncObserverWithPriority({id:e,types:t,callback:n,priority:1})}},{key:"addItemSyncObserverWithPriority",value:function(e){var t=e.id,n=e.priority,r=e.types,a=e.callback;Array.isArray(r)||(r=[r]),this.itemSyncObservers.push({id:t,types:r,priority:n,callback:a})}},{key:"removeItemSyncObserver",value:function(e){_.remove(this.itemSyncObservers,_.find(this.itemSyncObservers,{id:e}))}},{key:"getDirtyItems",value:function(){return this.items.filter((function(e){return 1==e.dirty&&!e.dummy&&(!e.errorDecrypting||e.deleted)}))}},{key:"clearDirtyItems",value:function(e){var t=!0,n=!1,r=void 0;try{for(var a,i=e[Symbol.iterator]();!(t=(a=i.next()).done);t=!0)a.value.setDirty(!1)}catch(e){n=!0,r=e}finally{try{t||null==i.return||i.return()}finally{if(n)throw r}}}},{key:"removeAndDirtyAllRelationshipsForItem",value:function(e){if(!e.errorDecrypting){var t=!0,n=!1,r=void 0;try{for(var a,i=e.content.references[Symbol.iterator]();!(t=(a=i.next()).done);t=!0){var o=a.value,s=this.findItem(o.uuid);s&&(e.removeItemAsRelationship(s),s.hasRelationshipWithItem(e)&&(s.removeItemAsRelationship(e),this.setItemDirty(s,!0)))}}catch(e){n=!0,r=e}finally{try{t||null==i.return||i.return()}finally{if(n)throw r}}}var u=!0,l=!1,c=void 0;try{for(var f,p=e.referencingObjects[Symbol.iterator]();!(u=(f=p.next()).done);u=!0){var d=f.value;d.removeItemAsRelationship(e),this.setItemDirty(d,!0)}}catch(e){l=!0,c=e}finally{try{u||null==p.return||p.return()}finally{if(l)throw c}}e.referencingObjects=[]}},{key:"setAllItemsDirty",value:function(){var e=this.allItems;this.setItemsDirty(e,!0)}},{key:"setItemToBeDeleted",value:function(e){e.deleted=!0,e.dummy||this.setItemDirty(e,!0),this.removeAndDirtyAllRelationshipsForItem(e)}},{key:"removeItemLocally",value:(i=y(regeneratorRuntime.mark((function e(t){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:_.remove(this.items,{uuid:t.uuid}),delete this.itemsHash[t.uuid],t.isBeingRemovedLocally();case 3:case"end":return e.stop()}}),e,this)}))),function(e){return i.apply(this,arguments)})},{key:"allItemsMatchingTypes",value:function(e){return this.allItems.filter((function(t){return(_.includes(e,t.content_type)||_.includes(e,"*"))&&!t.dummy}))}},{key:"invalidItems",value:function(){return this.allItems.filter((function(e){return e.errorDecrypting}))}},{key:"validItemsForContentType",value:function(e){return this.allItems.filter((function(t){return t.content_type==e&&!t.errorDecrypting}))}},{key:"findItem",value:function(e){return this.itemsHash[e]}},{key:"findItems",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]&&arguments[1],n=[],r=!0,a=!1,i=void 0;try{for(var o,s=e[Symbol.iterator]();!(r=(o=s.next()).done);r=!0){var u=o.value,l=this.itemsHash[u];(l||t)&&n.push(l)}}catch(e){a=!0,i=e}finally{try{r||null==s.return||s.return()}finally{if(a)throw i}}return n}},{key:"itemsMatchingPredicate",value:function(e){return this.itemsMatchingPredicates([e])}},{key:"itemsMatchingPredicates",value:function(e){return this.filterItemsWithPredicates(this.allItems,e)}},{key:"filterItemsWithPredicates",value:function(e,t){return e.filter((function(e){var n=!0,r=!1,a=void 0;try{for(var i,o=t[Symbol.iterator]();!(n=(i=o.next()).done);n=!0){var s=i.value;if(!e.satisfiesPredicate(s))return!1}}catch(e){r=!0,a=e}finally{try{n||null==o.return||o.return()}finally{if(r)throw a}}return!0}))}},{key:"importItems",value:(a=y(regeneratorRuntime.mark((function t(n){var r,a,i,o,s,u,l,c,f,p,d,h,m,y,v,g,b,k,w,x,S,_,E,C,I,T,R;return regeneratorRuntime.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:r=[],a={},i=!0,o=!1,s=void 0,t.prev=5,u=n[Symbol.iterator]();case 7:if(i=(l=u.next()).done){t.next=18;break}if(c=l.value,f=this.findItem(c.uuid)){t.next=13;break}return a[c.uuid]={},t.abrupt("continue",15);case 13:p=this.duplicateItemWithoutAdding(f),a[c.uuid]={frozenValue:p,itemRef:f};case 15:i=!0,t.next=7;break;case 18:t.next=24;break;case 20:t.prev=20,t.t0=t.catch(5),o=!0,s=t.t0;case 24:t.prev=24,t.prev=25,i||null==u.return||u.return();case 27:if(t.prev=27,!o){t.next=30;break}throw s;case 30:return t.finish(27);case 31:return t.finish(24);case 32:d=!0,h=!1,m=void 0,t.prev=35,y=n[Symbol.iterator]();case 37:if(d=(v=y.next()).done){t.next=52;break}if(g=v.value,b=a[g.uuid],k=b.frozenValue,w=b.itemRef,!k||w.errorDecrypting){t.next=47;break}return t.next=43,this.createDuplicateItemFromResponseItem(g);case 43:x=t.sent,g.deleted||k.isItemContentEqualWith(x)||(this.addDuplicatedItemAsConflict({duplicate:x,duplicateOf:w}),r.push(x)),t.next=49;break;case 47:r.push(g),w&&w.errorDecrypting&&(w.errorDecrypting=!1);case 49:d=!0,t.next=37;break;case 52:t.next=58;break;case 54:t.prev=54,t.t1=t.catch(35),h=!0,m=t.t1;case 58:t.prev=58,t.prev=59,d||null==y.return||y.return();case 61:if(t.prev=61,!h){t.next=64;break}throw m;case 64:return t.finish(61);case 65:return t.finish(58);case 66:return t.next=68,this.mapResponseItemsToLocalModels(r,e.MappingSourceFileImport);case 68:for(S=t.sent,_=!0,E=!1,C=void 0,t.prev=72,I=S[Symbol.iterator]();!(_=(T=I.next()).done);_=!0)R=T.value,this.setItemDirty(R,!0,!1),R.deleted=!1;t.next=80;break;case 76:t.prev=76,t.t2=t.catch(72),E=!0,C=t.t2;case 80:t.prev=80,t.prev=81,_||null==I.return||I.return();case 83:if(t.prev=83,!E){t.next=86;break}throw C;case 86:return t.finish(83);case 87:return t.finish(80);case 88:return t.abrupt("return",S);case 89:case"end":return t.stop()}}),t,this,[[5,20,24,32],[25,,27,31],[35,54,58,66],[59,,61,65],[72,76,80,88],[81,,83,87]])}))),function(e){return a.apply(this,arguments)})},{key:"getAllItemsJSONData",value:(r=y(regeneratorRuntime.mark((function e(t,n,r){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.getJSONDataForItems(this.allItems,t,n,r));case 1:case"end":return e.stop()}}),e,this)}))),function(e,t,n){return r.apply(this,arguments)})},{key:"getJSONDataForItems",value:(n=y(regeneratorRuntime.mark((function e(t,n,r,a){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",Promise.all(t.map((function(e){return new O(e,n,r).paramsForExportFile()}))).then((function(e){if(a&&0==e.length)return null;var t={items:e};return n&&(t.auth_params=r),JSON.stringify(t,null,2)})));case 1:case"end":return e.stop()}}),e)}))),function(e,t,r,a){return n.apply(this,arguments)})},{key:"computeDataIntegrityHash",value:(t=y(regeneratorRuntime.mark((function e(){var t,n,r,a;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.prev=0,t=this.allNondummyItems.sort((function(e,t){return t.updated_at-e.updated_at})),n=t.map((function(e){return e.updatedAtTimestamp()})),r=n.join(","),e.next=6,SFJS.crypto.sha256(r);case 6:return a=e.sent,e.abrupt("return",a);case 10:return e.prev=10,e.t0=e.catch(0),console.error("Error computing data integrity hash",e.t0),e.abrupt("return",null);case 14:case"end":return e.stop()}}),e,this,[[0,10]])}))),function(){return t.apply(this,arguments)})},{key:"allItems",get:function(){return this.items.slice()}},{key:"allNondummyItems",get:function(){return this.items.filter((function(e){return!e.dummy}))}}]),e}();r.SFModelManager=C;var I=function(){function e(t,n,r){v(this,e),this.modelManager=t,this.syncManager=n,this.singletonManager=r,this.loadPrivileges(),e.CredentialAccountPassword="CredentialAccountPassword",e.CredentialLocalPasscode="CredentialLocalPasscode",e.ActionManageExtensions="ActionManageExtensions",e.ActionManageBackups="ActionManageBackups",e.ActionViewProtectedNotes="ActionViewProtectedNotes",e.ActionManagePrivileges="ActionManagePrivileges",e.ActionManagePasscode="ActionManagePasscode",e.ActionDeleteNote="ActionDeleteNote",e.SessionExpiresAtKey="SessionExpiresAtKey",e.SessionLengthKey="SessionLengthKey",e.SessionLengthNone=0,e.SessionLengthFiveMinutes=300,e.SessionLengthOneHour=3600,e.SessionLengthOneWeek=604800,this.availableActions=[e.ActionViewProtectedNotes,e.ActionDeleteNote,e.ActionManagePasscode,e.ActionManageBackups,e.ActionManageExtensions,e.ActionManagePrivileges],this.availableCredentials=[e.CredentialAccountPassword,e.CredentialLocalPasscode],this.sessionLengths=[e.SessionLengthNone,e.SessionLengthFiveMinutes,e.SessionLengthOneHour,e.SessionLengthOneWeek,e.SessionLengthIndefinite]}var t,n,r,a,i,o,s,u,l,c,f,p;return b(e,[{key:"setDelegate",value:function(e){this.delegate=e}},{key:"getAvailableActions",value:function(){return this.availableActions}},{key:"getAvailableCredentials",value:function(){return this.availableCredentials}},{key:"netCredentialsForAction",value:(p=y(regeneratorRuntime.mark((function t(n){var r,a,i,o,s,u,l,c;return regeneratorRuntime.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.next=2,this.getPrivileges();case 2:t.t0=n,r=t.sent.getCredentialsForAction(t.t0),a=[],i=!0,o=!1,s=void 0,t.prev=8,u=r[Symbol.iterator]();case 10:if(i=(l=u.next()).done){t.next=27;break}if((c=l.value)!=e.CredentialAccountPassword){t.next=19;break}return t.next=15,this.delegate.isOffline();case 15:t.sent||a.push(c),t.next=24;break;case 19:if(c!=e.CredentialLocalPasscode){t.next=24;break}return t.next=22,this.delegate.hasLocalPasscode();case 22:t.sent&&a.push(c);case 24:i=!0,t.next=10;break;case 27:t.next=33;break;case 29:t.prev=29,t.t1=t.catch(8),o=!0,s=t.t1;case 33:t.prev=33,t.prev=34,i||null==u.return||u.return();case 36:if(t.prev=36,!o){t.next=39;break}throw s;case 39:return t.finish(36);case 40:return t.finish(33);case 41:return t.abrupt("return",a);case 42:case"end":return t.stop()}}),t,this,[[8,29,33,41],[34,,36,40]])}))),function(e){return p.apply(this,arguments)})},{key:"loadPrivileges",value:(f=y(regeneratorRuntime.mark((function e(){var t=this;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!this.loadPromise){e.next=2;break}return e.abrupt("return",this.loadPromise);case 2:return this.loadPromise=new Promise((function(e,n){var r=N.contentType(),a=new A("content_type","=",r);t.singletonManager.registerSingleton([a],(function(n){t.privileges=n,e(n)}),function(){var n=y(regeneratorRuntime.mark((function n(a){var i;return regeneratorRuntime.wrap((function(n){for(;;)switch(n.prev=n.next){case 0:if(i=new N({content_type:r}),SFJS.crypto.generateUUIDSync){n.next=4;break}return n.next=4,i.initUUID();case 4:t.modelManager.addItem(i),t.modelManager.setItemDirty(i,!0),t.syncManager.sync(),a(i),e(i);case 9:case"end":return n.stop()}}),n)})));return function(e){return n.apply(this,arguments)}}())})),e.abrupt("return",this.loadPromise);case 4:case"end":return e.stop()}}),e,this)}))),function(){return f.apply(this,arguments)})},{key:"getPrivileges",value:(c=y(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!this.privileges){e.next=4;break}return e.abrupt("return",this.privileges);case 4:return e.abrupt("return",this.loadPrivileges());case 5:case"end":return e.stop()}}),e,this)}))),function(){return c.apply(this,arguments)})},{key:"displayInfoForCredential",value:function(t){var n={};return n[e.CredentialAccountPassword]={label:"Account Password",prompt:"Please enter your account password."},n[e.CredentialLocalPasscode]={label:"Local Passcode",prompt:"Please enter your local passcode."},n[t]}},{key:"displayInfoForAction",value:function(t){var n={};return n[e.ActionManageExtensions]={label:"Manage Extensions"},n[e.ActionManageBackups]={label:"Download/Import Backups"},n[e.ActionViewProtectedNotes]={label:"View Protected Notes"},n[e.ActionManagePrivileges]={label:"Manage Privileges"},n[e.ActionManagePasscode]={label:"Manage Passcode"},n[e.ActionDeleteNote]={label:"Delete Notes"},n[t]}},{key:"getSessionLengthOptions",value:function(){return[{value:e.SessionLengthNone,label:"Don't Remember"},{value:e.SessionLengthFiveMinutes,label:"5 Minutes"},{value:e.SessionLengthOneHour,label:"1 Hour"},{value:e.SessionLengthOneWeek,label:"1 Week"}]}},{key:"setSessionLength",value:(l=y(regeneratorRuntime.mark((function t(n){var r;return regeneratorRuntime.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return a=n,i=void 0,(i=new Date).setSeconds(i.getSeconds()+a),r=i,t.abrupt("return",Promise.all([this.delegate.saveToStorage(e.SessionExpiresAtKey,JSON.stringify(r)),this.delegate.saveToStorage(e.SessionLengthKey,JSON.stringify(n))]));case 3:case"end":return t.stop()}var a,i}),t,this)}))),function(e){return l.apply(this,arguments)})},{key:"clearSession",value:(u=y(regeneratorRuntime.mark((function t(){return regeneratorRuntime.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.abrupt("return",this.setSessionLength(e.SessionLengthNone));case 1:case"end":return t.stop()}}),t,this)}))),function(){return u.apply(this,arguments)})},{key:"getSelectedSessionLength",value:(s=y(regeneratorRuntime.mark((function t(){var n;return regeneratorRuntime.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.next=2,this.delegate.getFromStorage(e.SessionLengthKey);case 2:if(!(n=t.sent)){t.next=7;break}return t.abrupt("return",JSON.parse(n));case 7:return t.abrupt("return",e.SessionLengthNone);case 8:case"end":return t.stop()}}),t,this)}))),function(){return s.apply(this,arguments)})},{key:"getSessionExpirey",value:(o=y(regeneratorRuntime.mark((function t(){var n;return regeneratorRuntime.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.next=2,this.delegate.getFromStorage(e.SessionExpiresAtKey);case 2:if(!(n=t.sent)){t.next=7;break}return t.abrupt("return",new Date(JSON.parse(n)));case 7:return t.abrupt("return",new Date);case 8:case"end":return t.stop()}}),t,this)}))),function(){return o.apply(this,arguments)})},{key:"actionHasPrivilegesConfigured",value:(i=y(regeneratorRuntime.mark((function e(t){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.netCredentialsForAction(t);case 2:return e.t0=e.sent.length,e.abrupt("return",e.t0>0);case 4:case"end":return e.stop()}}),e,this)}))),function(e){return i.apply(this,arguments)})},{key:"actionRequiresPrivilege",value:(a=y(regeneratorRuntime.mark((function e(t){var n;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.getSessionExpirey();case 2:if(!(e.sent>new Date)){e.next=5;break}return e.abrupt("return",!1);case 5:return e.next=7,this.netCredentialsForAction(t);case 7:return n=e.sent,e.abrupt("return",n.length>0);case 9:case"end":return e.stop()}}),e,this)}))),function(e){return a.apply(this,arguments)})},{key:"savePrivileges",value:(r=y(regeneratorRuntime.mark((function e(){var t;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.getPrivileges();case 2:t=e.sent,this.modelManager.setItemDirty(t,!0),this.syncManager.sync();case 5:case"end":return e.stop()}}),e,this)}))),function(){return r.apply(this,arguments)})},{key:"authenticateAction",value:(n=y(regeneratorRuntime.mark((function e(t,n){var r,a,i,o,s,u,l,c,f;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.netCredentialsForAction(t);case 2:r=e.sent,a=[],i=[],o=!0,s=!1,u=void 0,e.prev=7,l=r[Symbol.iterator]();case 9:if(o=(c=l.next()).done){e.next=18;break}return f=c.value,e.next=13,this._verifyAuthenticationParameters(f,n[f]);case 13:e.sent?a.push(f):i.push(f);case 15:o=!0,e.next=9;break;case 18:e.next=24;break;case 20:e.prev=20,e.t0=e.catch(7),s=!0,u=e.t0;case 24:e.prev=24,e.prev=25,o||null==l.return||l.return();case 27:if(e.prev=27,!s){e.next=30;break}throw u;case 30:return e.finish(27);case 31:return e.finish(24);case 32:return e.abrupt("return",{success:0==i.length,successfulCredentials:a,failedCredentials:i});case 33:case"end":return e.stop()}}),e,this,[[7,20,24,32],[25,,27,31]])}))),function(e,t){return n.apply(this,arguments)})},{key:"_verifyAuthenticationParameters",value:(t=y(regeneratorRuntime.mark((function t(n,r){var a,i,o=this;return regeneratorRuntime.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(a=function(){var e=y(regeneratorRuntime.mark((function e(t){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",o.delegate.verifyAccountPassword(t));case 1:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}(),i=function(){var e=y(regeneratorRuntime.mark((function e(t){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",o.delegate.verifyLocalPasscode(t));case 1:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}(),n!=e.CredentialAccountPassword){t.next=6;break}return t.abrupt("return",a(r));case 6:if(n!=e.CredentialLocalPasscode){t.next=8;break}return t.abrupt("return",i(r));case 8:case"end":return t.stop()}}),t)}))),function(e,n){return t.apply(this,arguments)})}]),e}();r.SFPrivilegesManager=I;var T=function(){function e(t,n,r,a,i){var o=this;v(this,e),this.modelManager=t,this.storageManager=n,this.$timeout=i||setTimeout.bind(window),this.keyRequestHandler=r,this.loadFromDisk().then((function(){o.modelManager.addItemSyncObserver("session-history",a,(function(e,t,n,r,a){if(r!==C.MappingSourceLocalDirtied){var i=!0,s=!1,u=void 0;try{for(var l,c=e[Symbol.iterator]();!(i=(l=c.next()).done);i=!0){var f=l.value;try{o.addHistoryEntryForItem(f)}catch(e){console.log("Caught exception while trying to add item history entry",e)}}}catch(e){s=!0,u=e}finally{try{i||null==c.return||c.return()}finally{if(s)throw u}}}}))}))}var t,n,r,a,i,o,s;return b(e,[{key:"encryptionParams",value:(s=y(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.keyRequestHandler());case 1:case"end":return e.stop()}}),e,this)}))),function(){return s.apply(this,arguments)})},{key:"addHistoryEntryForItem",value:function(e){var t=this,n={uuid:e.uuid,content_type:e.content_type,updated_at:e.updated_at,content:e.getContentCopy()},r=this.historySession.addEntryForItem(n);this.autoOptimize&&this.historySession.optimizeHistoryForItem(e),r&&this.diskEnabled&&(this.diskTimeout&&(this.$timeout.hasOwnProperty("cancel")?this.$timeout.cancel(this.diskTimeout):clearTimeout(this.diskTimeout)),this.diskTimeout=this.$timeout((function(){t.saveToDisk()}),2e3))}},{key:"historyForItem",value:function(e){return this.historySession.historyForItem(e)}},{key:"clearHistoryForItem",value:(o=y(regeneratorRuntime.mark((function e(t){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return this.historySession.clearItemHistory(t),e.abrupt("return",this.saveToDisk());case 2:case"end":return e.stop()}}),e,this)}))),function(e){return o.apply(this,arguments)})},{key:"clearAllHistory",value:(i=y(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return this.historySession.clearAllHistory(),e.abrupt("return",this.storageManager.removeItem("sessionHistory_revisions"));case 2:case"end":return e.stop()}}),e,this)}))),function(){return i.apply(this,arguments)})},{key:"toggleDiskSaving",value:(a=y(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(this.diskEnabled=!this.diskEnabled,!this.diskEnabled){e.next=6;break}this.storageManager.setItem("sessionHistory_persist",JSON.stringify(!0)),this.saveToDisk(),e.next=8;break;case 6:return this.storageManager.setItem("sessionHistory_persist",JSON.stringify(!1)),e.abrupt("return",this.storageManager.removeItem("sessionHistory_revisions"));case 8:case"end":return e.stop()}}),e,this)}))),function(){return a.apply(this,arguments)})},{key:"saveToDisk",value:(r=y(regeneratorRuntime.mark((function e(){var t,n=this;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(this.diskEnabled){e.next=2;break}return e.abrupt("return");case 2:return e.next=4,this.encryptionParams();case 4:t=e.sent,new O(this.historySession,t.keys,t.auth_params).paramsForSync().then((function(e){n.storageManager.setItem("sessionHistory_revisions",JSON.stringify(e))}));case 7:case"end":return e.stop()}}),e,this)}))),function(){return r.apply(this,arguments)})},{key:"loadFromDisk",value:(n=y(regeneratorRuntime.mark((function e(){var t,n,r,a,i;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.storageManager.getItem("sessionHistory_persist");case 2:return(t=e.sent)&&(this.diskEnabled=JSON.parse(t)),e.next=6,this.storageManager.getItem("sessionHistory_revisions");case 6:if(!(n=e.sent)){e.next=18;break}return n=JSON.parse(n),e.next=11,this.encryptionParams();case 11:return r=e.sent,e.next=14,SFJS.itemTransformer.decryptItem(n,r.keys);case 14:a=new j(n),this.historySession=a,e.next=19;break;case 18:this.historySession=new j;case 19:return e.next=21,this.storageManager.getItem("sessionHistory_autoOptimize");case 21:i=e.sent,this.autoOptimize=!i||JSON.parse(i);case 23:case"end":return e.stop()}}),e,this)}))),function(){return n.apply(this,arguments)})},{key:"toggleAutoOptimize",value:(t=y(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:this.autoOptimize=!this.autoOptimize,this.autoOptimize?this.storageManager.setItem("sessionHistory_autoOptimize",JSON.stringify(!0)):this.storageManager.setItem("sessionHistory_autoOptimize",JSON.stringify(!1));case 2:case"end":return e.stop()}}),e,this)}))),function(){return t.apply(this,arguments)})}]),e}();r.SFSessionHistoryManager=T;var R=function(){function e(t,n){var r=this;v(this,e),this.syncManager=n,this.modelManager=t,this.singletonHandlers=[],t.addItemSyncObserverWithPriority({id:"sf-singleton-manager",types:"*",priority:-1,callback:function(e,n,a,i,o){i!==C.MappingSourceLocalDirtied&&r.resolveSingletons(t.allNondummyItems,null,!0)}}),n.addEventHandler((function(e,n){if("local-data-loaded"==e)r.resolveSingletons(t.allNondummyItems,null,!0),r.initialDataLoaded=!0;else if("sync:completed"==e){if(!r.initialDataLoaded)return;r.resolveSingletons(n.retrievedItems,n.savedItems)}})),t.addModelUuidChangeObserver("singleton-manager",(function(e,t){var n=!0,a=!1,i=void 0;try{for(var o,s=r.singletonHandlers[Symbol.iterator]();!(n=(o=s.next()).done);n=!0){var u=o.value;u.singleton&&A.ItemSatisfiesPredicates(t,u.predicates)&&(u.singleton=null,r.resolveSingletons([t]))}}catch(e){a=!0,i=e}finally{try{n||null==s.return||s.return()}finally{if(a)throw i}}}))}return b(e,[{key:"registerSingleton",value:function(e,t,n){this.singletonHandlers.push({predicates:e,resolutionCallback:t,createBlock:n})}},{key:"resolveSingletons",value:function(e,t,n){var r=this;e=e||[],t=t||[];var a=!0,i=!1,o=void 0;try{for(var s,u=function(){var a=s.value,i=a.predicates.slice(),o=r.modelManager.filterItemsWithPredicates(e,i),u=function(){a.createBlock&&(a.pendingCreateBlockCallback=!0,a.createBlock((function(e){a.singleton=e,a.pendingCreateBlockCallback=!1,a.resolutionCallback&&a.resolutionCallback(e)})))},l=r.modelManager.filterItemsWithPredicates(t,i).length;if(o.length>0||l>0){var c=r.modelManager.itemsMatchingPredicates(i);if(c.length>=2){var f=c.sort((function(e,t){return e.errorDecrypting?1:t.errorDecrypting||e.created_at=this.MaxDiscordanceBeforeOutOfSync&&(this.outOfSync||(this.outOfSync=!0,this.notifyEvent("enter-out-of-sync"))),e.abrupt("return",!1);case 13:return this.outOfSync&&(this.outOfSync=!1,this.notifyEvent("exit-out-of-sync")),this.syncDiscordance=0,e.abrupt("return",!0);case 16:case"end":return e.stop()}}),e,this)}))),function(e){return R.apply(this,arguments)})},{key:"isOutOfSync",value:function(){return this.outOfSync}},{key:"getServerURL",value:(T=y(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.storageManager.getItem("server");case 2:if(e.t0=e.sent,e.t0){e.next=5;break}e.t0=window._default_sf_server;case 5:return e.abrupt("return",e.t0);case 6:case"end":return e.stop()}}),e,this)}))),function(){return T.apply(this,arguments)})},{key:"getSyncURL",value:(I=y(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.getServerURL();case 2:return e.t0=e.sent,e.abrupt("return",e.t0+"/items/sync");case 4:case"end":return e.stop()}}),e,this)}))),function(){return I.apply(this,arguments)})},{key:"registerSyncStatusObserver",value:function(e){var t={key:new Date,callback:e};return this.syncStatusObservers.push(t),t}},{key:"removeSyncStatusObserver",value:function(e){_.pull(this.syncStatusObservers,e)}},{key:"syncStatusDidChange",value:function(){var e=this;this.syncStatusObservers.forEach((function(t){t.callback(e.syncStatus)}))}},{key:"addEventHandler",value:function(e){return this.eventHandlers.push(e),e}},{key:"removeEventHandler",value:function(e){_.pull(this.eventHandlers,e)}},{key:"notifyEvent",value:function(e,t){var n=!0,r=!1,a=void 0;try{for(var i,o=this.eventHandlers[Symbol.iterator]();!(n=(i=o.next()).done);n=!0)(0,i.value)(e,t||{})}catch(e){r=!0,a=e}finally{try{n||null==o.return||o.return()}finally{if(r)throw a}}}},{key:"setKeyRequestHandler",value:function(e){this.keyRequestHandler=e}},{key:"getActiveKeyInfo",value:(E=y(regeneratorRuntime.mark((function e(t){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.keyRequestHandler(t));case 1:case"end":return e.stop()}}),e,this)}))),function(e){return E.apply(this,arguments)})},{key:"initialDataLoaded",value:function(){return!0===this._initialDataLoaded}},{key:"_sortLocalItems",value:function(e){var t=this;return e.sort((function(e,n){var r=new Date(n.updated_at)-new Date(e.updated_at),a=t.contentTypeLoadPriority,i=0,o=0;return a&&(i=a.indexOf(e.content_type),o=a.indexOf(n.content_type),-1==i&&(i=a.length),-1==o&&(o=a.length)),i==o?r:i0&&void 0!==u[0]?u[0]:{},r=n.incrementalCallback,a=n.batchSize,!(i=n.options)||!i.simulateHighLatency){t.next=5;break}return o=i.simulatedLatency||1e3,t.next=5,this._awaitSleep(o);case 5:if(!this.loadLocalDataPromise){t.next=7;break}return t.abrupt("return",this.loadLocalDataPromise);case 7:return a||(a=100),this.loadLocalDataPromise=this.storageManager.getAllModels().then((function(t){var n=(t=(t=s._sortLocalItems(t)).filter((function(e){var t=s.modelManager.findItem(e.uuid);return!t||new Date(e.dirtiedDate)>t.dirtiedDate}))).length,i=0,o=[],u=function(){var l=y(regeneratorRuntime.mark((function l(){var c,f;return regeneratorRuntime.wrap((function(l){for(;;)switch(l.prev=l.next){case 0:return c=t.slice(i,i+a),l.next=3,s.handleItemsResponse(c,null,C.MappingSourceLocalRetrieved,e.KeyRequestLoadLocal);case 3:if(f=l.sent,o.push(f),!((i+=c.length)0)){t.next=23;break}return t.next=23,Promise.all(u.map(function(){var e=y(regeneratorRuntime.mark((function e(t){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",a.storageManager.deleteModel(t));case 1:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}()));case 23:return t.next=25,a.getActiveKeyInfo(e.KeyRequestSaveLocal);case 25:if(m=t.sent,!(s.length>0)){t.next=33;break}return t.next=29,Promise.all(s.map(function(){var e=y(regeneratorRuntime.mark((function e(t){var n;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=new O(t,m.keys,m.auth_params),e.next=3,n.paramsForLocalStorage();case 3:return n=e.sent,r&&delete n.dirty,e.abrupt("return",n);case 6:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}())).catch((function(e){return o(e)}));case 29:return v=t.sent,t.next=32,a.storageManager.saveModels(v).catch((function(e){console.error("Error writing items",e),a.syncStatus.localError=e,a.syncStatusDidChange(),o()}));case 32:a.syncStatus.localError&&(a.syncStatus.localError=null,a.syncStatusDidChange());case 33:i();case 34:case"end":return t.stop()}}),t,null,[[4,8,12,20],[13,,15,19]])})));return function(e,n){return t.apply(this,arguments)}}()));case 3:case"end":return t.stop()}}),t)}))),function(e,t){return w.apply(this,arguments)})},{key:"syncOffline",value:(k=y(regeneratorRuntime.mark((function e(t){var n,r,a,i,o,s=this;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:for(n=!0,r=!1,a=void 0,e.prev=3,i=t[Symbol.iterator]();!(n=(o=i.next()).done);n=!0)o.value.updated_at=new Date;e.next=11;break;case 7:e.prev=7,e.t0=e.catch(3),r=!0,a=e.t0;case 11:e.prev=11,e.prev=12,n||null==i.return||i.return();case 14:if(e.prev=14,!r){e.next=17;break}throw a;case 17:return e.finish(14);case 18:return e.finish(11);case 19:return e.abrupt("return",this.writeItemsToLocalStorage(t,!0).then((function(e){var n=!0,r=!1,a=void 0;try{for(var i,o=t[Symbol.iterator]();!(n=(i=o.next()).done);n=!0){var u=i.value;u.deleted&&s.modelManager.removeItemLocally(u)}}catch(e){r=!0,a=e}finally{try{n||null==o.return||o.return()}finally{if(r)throw a}}return s.modelManager.clearDirtyItems(t),s.modelManager.didSyncModelsOffline(t),s.notifyEvent("sync:completed",{savedItems:t}),{saved_items:t}})));case 20:case"end":return e.stop()}}),e,this,[[3,7,11,19],[12,,14,18]])}))),function(e){return k.apply(this,arguments)})},{key:"markAllItemsDirtyAndSaveOffline",value:(g=y(regeneratorRuntime.mark((function e(t){var n,r,a,i,o,s,u,l,c,f,p,d,h;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!t){e.next=28;break}n=this.modelManager.allNondummyItems.filter((function(e){return!e.errorDecrypting})).slice(),r=!0,a=!1,i=void 0,e.prev=5,o=n[Symbol.iterator]();case 7:if(r=(s=o.next()).done){e.next=14;break}return u=s.value,e.next=11,this.modelManager.alternateUUIDForItem(u);case 11:r=!0,e.next=7;break;case 14:e.next=20;break;case 16:e.prev=16,e.t0=e.catch(5),a=!0,i=e.t0;case 20:e.prev=20,e.prev=21,r||null==o.return||o.return();case 23:if(e.prev=23,!a){e.next=26;break}throw i;case 26:return e.finish(23);case 27:return e.finish(20);case 28:for(l=this.modelManager.allNondummyItems,c=!0,f=!1,p=void 0,e.prev=32,d=l[Symbol.iterator]();!(c=(h=d.next()).done);c=!0)h.value.setDirty(!0);e.next=40;break;case 36:e.prev=36,e.t1=e.catch(32),f=!0,p=e.t1;case 40:e.prev=40,e.prev=41,c||null==d.return||d.return();case 43:if(e.prev=43,!f){e.next=46;break}throw p;case 46:return e.finish(43);case 47:return e.finish(40);case 48:return e.abrupt("return",this.writeItemsToLocalStorage(l,!1));case 49:case"end":return e.stop()}}),e,this,[[5,16,20,28],[21,,23,27],[32,36,40,48],[41,,43,47]])}))),function(e){return g.apply(this,arguments)})},{key:"setSyncToken",value:(m=y(regeneratorRuntime.mark((function e(t){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return this._syncToken=t,e.next=3,this.storageManager.setItem("syncToken",t);case 3:case"end":return e.stop()}}),e,this)}))),function(e){return m.apply(this,arguments)})},{key:"getSyncToken",value:(h=y(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(this._syncToken){e.next=4;break}return e.next=3,this.storageManager.getItem("syncToken");case 3:this._syncToken=e.sent;case 4:return e.abrupt("return",this._syncToken);case 5:case"end":return e.stop()}}),e,this)}))),function(){return h.apply(this,arguments)})},{key:"setCursorToken",value:(d=y(regeneratorRuntime.mark((function e(t){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(this._cursorToken=t,!t){e.next=6;break}return e.next=4,this.storageManager.setItem("cursorToken",t);case 4:e.next=8;break;case 6:return e.next=8,this.storageManager.removeItem("cursorToken");case 8:case"end":return e.stop()}}),e,this)}))),function(e){return d.apply(this,arguments)})},{key:"getCursorToken",value:(p=y(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(this._cursorToken){e.next=4;break}return e.next=3,this.storageManager.getItem("cursorToken");case 3:this._cursorToken=e.sent;case 4:return e.abrupt("return",this._cursorToken);case 5:case"end":return e.stop()}}),e,this)}))),function(){return p.apply(this,arguments)})},{key:"clearQueuedCallbacks",value:function(){this._queuedCallbacks=[]}},{key:"callQueuedCallbacks",value:function(e){var t=this.queuedCallbacks;if(t.length){var n=!0,r=!1,a=void 0;try{for(var i,o=t[Symbol.iterator]();!(n=(i=o.next()).done);n=!0)(0,i.value)(e)}catch(e){r=!0,a=e}finally{try{n||null==o.return||o.return()}finally{if(r)throw a}}this.clearQueuedCallbacks()}}},{key:"beginCheckingIfSyncIsTakingTooLong",value:function(){this.syncStatus.checker&&this.stopCheckingIfSyncIsTakingTooLong(),this.syncStatus.checker=this.$interval(function(){(new Date-this.syncStatus.syncStart)/1e3>5&&(this.notifyEvent("sync:taking-too-long"),this.stopCheckingIfSyncIsTakingTooLong())}.bind(this),500)}},{key:"stopCheckingIfSyncIsTakingTooLong",value:function(){this.$interval.hasOwnProperty("cancel")?this.$interval.cancel(this.syncStatus.checker):clearInterval(this.syncStatus.checker),this.syncStatus.checker=null}},{key:"lockSyncing",value:function(){this.syncLocked=!0}},{key:"unlockSyncing",value:function(){this.syncLocked=!1}},{key:"sync",value:(f=y(regeneratorRuntime.mark((function t(){var n,r=this,a=arguments;return regeneratorRuntime.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(n=a.length>0&&void 0!==a[0]?a[0]:{},!this.syncLocked){t.next=4;break}return console.log("Sync Locked, Returning;"),t.abrupt("return");case 4:return t.abrupt("return",new Promise(function(){var t=y(regeneratorRuntime.mark((function t(a,i){var o,s,u,l,c,f,p,d,h,m,y,v,g,b;return regeneratorRuntime.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return n||(n={}),o=r.modelManager.getDirtyItems(),s=o.filter((function(e){return!r.lastDirtyItemsSave||e.dirtiedDate>r.lastDirtyItemsSave})),t.next=5,r.getActiveKeyInfo(e.KeyRequestLoadSaveAccount);case 5:if(u=t.sent,l=r.syncStatus.syncOpInProgress,c=r.initialDataLoaded(),!l&&c){t.next=16;break}return r.performSyncAgainOnCompletion=!0,r.lastDirtyItemsSave=new Date,t.next=13,r.writeItemsToLocalStorage(s,!1);case 13:return l&&(r.queuedCallbacks.push(a),r.loggingEnabled&&console.warn("Attempting to sync while existing sync is in progress.")),c||(r.loggingEnabled&&console.warn("(1) Attempting to perform online sync before local data has loaded"),a()),t.abrupt("return");case 16:if(r.syncStatus.syncOpInProgress=!0,!u.offline){t.next=19;break}return t.abrupt("return",r.syncOffline(o).then((function(e){r.syncStatus.syncOpInProgress=!1,a(e)})).catch((function(e){r.notifyEvent("sync-exception",e)})));case 19:if(r.initialDataLoaded()){t.next=22;break}return console.error("Attempting to perform online sync before local data has loaded"),t.abrupt("return");case 22:return r.loggingEnabled&&console.log("Syncing online user."),f=r.syncStatus.needsMoreSync,r.syncStatus.syncStart=new Date,r.beginCheckingIfSyncIsTakingTooLong(),p=r.PerSyncItemUploadLimit,(d=o.slice(0,p)).lengthr.syncStatus.total&&(r.syncStatus.total=r.syncStatus.current),r.syncStatusDidChange(),t.next=34,r.writeItemsToLocalStorage(s,!1);case 34:return r.lastDirtyItemsSave=new Date,n.onPreSyncSave&&n.onPreSyncSave(),r.allRetreivedItems||(r.allRetreivedItems=[]),r.allSavedItems||(r.allSavedItems=[]),(h={}).limit=r.ServerItemDownloadLimit,n.performIntegrityCheck&&(h.compute_integrity=!0),t.prev=41,t.next=44,Promise.all(d.map((function(e){var t=new O(e,u.keys,u.auth_params);return t.additionalFields=n.additionalFields,t.paramsForSync()}))).then((function(e){h.items=e}));case 44:t.next=49;break;case 46:t.prev=46,t.t0=t.catch(41),r.notifyEvent("sync-exception",t.t0);case 49:for(m=!0,y=!1,v=void 0,t.prev=52,g=d[Symbol.iterator]();!(m=(b=g.next()).done);m=!0)b.value.dirtyCount=0;t.next=60;break;case 56:t.prev=56,t.t1=t.catch(52),y=!0,v=t.t1;case 60:t.prev=60,t.prev=61,m||null==g.return||g.return();case 63:if(t.prev=63,!y){t.next=66;break}throw v;case 66:return t.finish(63);case 67:return t.finish(60);case 68:return t.next=70,r.getSyncToken();case 70:return h.sync_token=t.sent,t.next=73,r.getCursorToken();case 73:return h.cursor_token=t.sent,h.api=S.getApiVersion(),r.loggingEnabled&&console.log("Syncing with params",h),t.prev=76,t.t2=r.httpManager,t.next=80,r.getSyncURL();case 80:t.t3=t.sent,t.t4=h,t.t5=function(e){r.handleSyncSuccess(d,e,n).then((function(){a(e)})).catch((function(e){console.log("Caught sync success exception:",e),r.handleSyncError(e,null,o).then((function(t){r.notifyEvent("sync-exception",e),a(t)}))}))},t.t6=function(e,t){r.handleSyncError(e,t,o).then((function(e){a(e)}))},t.t2.postAuthenticatedAbsolute.call(t.t2,t.t3,t.t4,t.t5,t.t6),t.next=90;break;case 87:t.prev=87,t.t7=t.catch(76),console.log("Sync exception caught:",t.t7);case 90:case"end":return t.stop()}}),t,null,[[41,46],[52,56,60,68],[61,,63,67],[76,87]])})));return function(e,n){return t.apply(this,arguments)}}()));case 5:case"end":return t.stop()}}),t,this)}))),function(){return f.apply(this,arguments)})},{key:"_awaitSleep",value:(c=y(regeneratorRuntime.mark((function e(t){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return console.warn("Simulating high latency sync request",t),e.abrupt("return",new Promise((function(e,n){setTimeout((function(){e()}),t)})));case 2:case"end":return e.stop()}}),e)}))),function(e){return c.apply(this,arguments)})},{key:"handleSyncSuccess",value:(l=y(regeneratorRuntime.mark((function t(n,r,a){var i,o,s,u,l,c,f,p,d,h,m,y,v,g,b,k,w=this;return regeneratorRuntime.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(!a.simulateHighLatency){t.next=4;break}return i=a.simulatedLatency||1e3,t.next=4,this._awaitSleep(i);case 4:for(this.syncStatus.error=null,this.loggingEnabled&&console.log("Sync response",r),o=this.allSavedItems.map((function(e){return e.uuid})),s=r.saved_items.map((function(e){return e.uuid})),r.retrieved_items=r.retrieved_items.filter((function(e){var t=o.includes(e.uuid),n=s.includes(e.uuid);if(t||n)return!1;var r=w.modelManager.findItem(e.uuid);return!r||!r.dirty})),u=[],l=!0,c=!1,f=void 0,t.prev=13,p=n[Symbol.iterator]();!(l=(d=p.next()).done);l=!0)0==(h=d.value).dirtyCount&&u.push(h);t.next=21;break;case 17:t.prev=17,t.t0=t.catch(13),c=!0,f=t.t0;case 21:t.prev=21,t.prev=22,l||null==p.return||p.return();case 24:if(t.prev=24,!c){t.next=27;break}throw f;case 27:return t.finish(24);case 28:return t.finish(21);case 29:return this.modelManager.clearDirtyItems(u),t.next=32,this.handleItemsResponse(r.retrieved_items,null,C.MappingSourceRemoteRetrieved,e.KeyRequestLoadSaveAccount);case 32:return m=t.sent,this.allRetreivedItems=this.allRetreivedItems.concat(m),this.syncStatus.retrievedCount=this.allRetreivedItems.length,y=["content","auth_hash"],t.next=38,this.handleItemsResponse(r.saved_items,y,C.MappingSourceRemoteSaved,e.KeyRequestLoadSaveAccount);case 38:return v=t.sent,this.allSavedItems=this.allSavedItems.concat(v),g=r.unsaved,t.next=43,this.deprecated_handleUnsavedItemsResponse(g);case 43:return t.next=45,this.handleConflictsResponse(r.conflicts);case 45:if(b=t.sent,k=b&&b.length>0,!b){t.next=50;break}return t.next=50,this.writeItemsToLocalStorage(b,!1);case 50:return t.next=52,this.writeItemsToLocalStorage(v,!1);case 52:return t.next=54,this.writeItemsToLocalStorage(m,!1);case 54:if(!r.integrity_hash||r.cursor_token){t.next=59;break}return t.next=57,this.handleServerIntegrityHash(r.integrity_hash);case 57:t.sent||this.syncDiscordance=this.majorDataChangeThreshold||v.length>=this.majorDataChangeThreshold||g&&g.length>=this.majorDataChangeThreshold||b&&b.length>=this.majorDataChangeThreshold)&&this.notifyEvent("major-data-change"),this.callQueuedCallbacks(r),this.notifyEvent("sync:completed",{retrievedItems:this.allRetreivedItems,savedItems:this.allSavedItems}),this.allRetreivedItems=[],this.allSavedItems=[],this.performSyncAgainOnCompletion&&(this.performSyncAgainOnCompletion=!1,setTimeout((function(){w.sync(a)}),10)),t.abrupt("return",r);case 88:case"end":return t.stop()}}),t,this,[[13,17,21,29],[22,,24,28]])}))),function(e,t,n){return l.apply(this,arguments)})},{key:"handleSyncError",value:(u=y(regeneratorRuntime.mark((function e(t,n,r){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return console.log("Sync error: ",t),401==n&&this.notifyEvent("sync-session-invalid"),t?"string"==typeof t&&(t={error:{message:t}}):t={error:{message:"Could not connect to server."}},this.syncStatus.syncOpInProgress=!1,this.syncStatus.error=t.error,this.syncStatusDidChange(),this.writeItemsToLocalStorage(r,!1),this.modelManager.didSyncModelsOffline(r),this.stopCheckingIfSyncIsTakingTooLong(),this.notifyEvent("sync:error",t.error),this.callQueuedCallbacks({error:"Sync error"}),e.abrupt("return",t);case 12:case"end":return e.stop()}}),e,this)}))),function(e,t,n){return u.apply(this,arguments)})},{key:"handleItemsResponse",value:(s=y(regeneratorRuntime.mark((function e(t,n,r,a){var i,o,s;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.getActiveKeyInfo(a);case 2:return i=e.sent.keys,e.next=5,SFJS.itemTransformer.decryptMultipleItems(t,i);case 5:return e.next=7,this.modelManager.mapResponseItemsToLocalModelsOmittingFields(t,n,r);case 7:return o=e.sent,(s=o.filter((function(e){var t=e.errorDecryptingValueChanged;return e.errorDecryptingValueChanged=!1,t}))).length>0&&this.writeItemsToLocalStorage(s,!1),e.abrupt("return",o);case 11:case"end":return e.stop()}}),e,this)}))),function(e,t,n,r){return s.apply(this,arguments)})},{key:"refreshErroredItems",value:(o=y(regeneratorRuntime.mark((function t(){var n;return regeneratorRuntime.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(!((n=this.modelManager.allNondummyItems.filter((function(e){return 1==e.errorDecrypting}))).length>0)){t.next=3;break}return t.abrupt("return",this.handleItemsResponse(n,null,C.MappingSourceLocalRetrieved,e.KeyRequestLoadSaveAccount));case 3:case"end":return t.stop()}}),t,this)}))),function(){return o.apply(this,arguments)})},{key:"handleConflictsResponse",value:(i=y(regeneratorRuntime.mark((function t(n){var r,a,i,o,s,u,l,c,f,p,d,h,m,y,v,g,b,k,w,x,S,_,E,I,T,R,F,D,P,O,A;return regeneratorRuntime.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(n&&0!=n.length){t.next=2;break}return t.abrupt("return");case 2:this.loggingEnabled&&console.log("Handle Conflicted Items:",n),r={},a=!0,i=!1,o=void 0,t.prev=7,s=n[Symbol.iterator]();case 9:if(a=(u=s.next()).done){t.next=21;break}if(l=u.value,c=l.server_item||l.unsaved_item,f=this.modelManager.findItem(c.uuid)){t.next=16;break}return r[c.uuid]={},t.abrupt("continue",18);case 16:p=f.getContentCopy(),r[c.uuid]={frozenContent:p,itemRef:f};case 18:a=!0,t.next=9;break;case 21:t.next=27;break;case 23:t.prev=23,t.t0=t.catch(7),i=!0,o=t.t0;case 27:t.prev=27,t.prev=28,a||null==s.return||s.return();case 30:if(t.prev=30,!i){t.next=33;break}throw o;case 33:return t.finish(30);case 34:return t.finish(27);case 35:d=[],h=!0,m=!1,y=void 0,t.prev=39,v=n[Symbol.iterator]();case 41:if(h=(g=v.next()).done){t.next=91;break}return b=g.value,k=b.server_item||b.unsaved_item,t.t1=SFJS.itemTransformer,t.t2=[k],t.next=48,this.getActiveKeyInfo(e.KeyRequestLoadSaveAccount);case 48:return t.t3=t.sent.keys,t.next=51,t.t1.decryptMultipleItems.call(t.t1,t.t2,t.t3);case 51:if(w=r[k.uuid],x=w.frozenContent,S=w.itemRef){t.next=54;break}return t.abrupt("continue",88);case 54:if(d.push(S),"uuid_conflict"!==b.type){t.next=62;break}return t.next=58,this.modelManager.alternateUUIDForItem(S);case 58:_=t.sent,d.push(_),t.next=88;break;case 62:if("sync_conflict"!==b.type){t.next=86;break}return t.next=65,this.modelManager.createDuplicateItemFromResponseItem(k);case 65:if(E=t.sent,I=this.modelManager.duplicateItemWithCustomContent({content:x,duplicateOf:S}),T=!I.isItemContentEqualWith(E),R=!S.isItemContentEqualWith(E),F=!1,D=!1,P=!1,O=!1,k.deleted||S.deleted?O=!0:T?(new Date-S.client_updated_at)/1e3<20?(P=!0,D=!0):(F=!0,O=!0):R?M.AreItemContentsEqual({leftContent:S.content,rightContent:E.content,keysToIgnore:S.keysToIgnoreWhenCheckingContentEquality().concat(["references"]),appDataKeysToIgnore:S.appDataKeysToIgnoreWhenCheckingContentEquality()})?P=!0:(F=!0,O=!0):O=!0,!F){t.next=79;break}return t.next=77,this.modelManager.duplicateItemWithCustomContentAndAddAsConflict({content:x,duplicateOf:S});case 77:A=t.sent,d.push(A);case 79:if(D&&(this.modelManager.addDuplicatedItemAsConflict({duplicate:E,duplicateOf:S}),d.push(E)),!O){t.next=83;break}return t.next=83,this.modelManager.mapResponseItemsToLocalModelsOmittingFields([k],null,C.MappingSourceRemoteRetrieved);case 83:P&&(S.updated_at=E.updated_at,S.setDirty(!0)),t.next=88;break;case 86:return console.error("Unsupported conflict type",b.type),t.abrupt("continue",88);case 88:h=!0,t.next=41;break;case 91:t.next=97;break;case 93:t.prev=93,t.t4=t.catch(39),m=!0,y=t.t4;case 97:t.prev=97,t.prev=98,h||null==v.return||v.return();case 100:if(t.prev=100,!m){t.next=103;break}throw y;case 103:return t.finish(100);case 104:return t.finish(97);case 105:return t.abrupt("return",d);case 106:case"end":return t.stop()}}),t,this,[[7,23,27,35],[28,,30,34],[39,93,97,105],[98,,100,104]])}))),function(e){return i.apply(this,arguments)})},{key:"deprecated_handleUnsavedItemsResponse",value:(a=y(regeneratorRuntime.mark((function t(n){var r,a,i,o,s,u,l,c,f,p;return regeneratorRuntime.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(n&&0!=n.length){t.next=2;break}return t.abrupt("return");case 2:this.loggingEnabled&&console.log("Handle Unsaved Items:",n),r=!0,a=!1,i=void 0,t.prev=6,o=n[Symbol.iterator]();case 8:if(r=(s=o.next()).done){t.next=35;break}return u=s.value,l=u.item,t.t0=SFJS.itemTransformer,t.t1=[l],t.next=15,this.getActiveKeyInfo(e.KeyRequestLoadSaveAccount);case 15:return t.t2=t.sent.keys,t.next=18,t.t0.decryptMultipleItems.call(t.t0,t.t1,t.t2);case 18:if(c=this.modelManager.findItem(l.uuid)){t.next=21;break}return t.abrupt("continue",32);case 21:if("uuid_conflict"!==(f=u.error).tag){t.next=27;break}return t.next=25,this.modelManager.alternateUUIDForItem(c);case 25:t.next=32;break;case 27:if("sync_conflict"!==f.tag){t.next=32;break}return t.next=30,this.modelManager.createDuplicateItemFromResponseItem(l);case 30:p=t.sent,l.deleted||c.isItemContentEqualWith(p)||this.modelManager.addDuplicatedItemAsConflict({duplicate:p,duplicateOf:c});case 32:r=!0,t.next=8;break;case 35:t.next=41;break;case 37:t.prev=37,t.t3=t.catch(6),a=!0,i=t.t3;case 41:t.prev=41,t.prev=42,r||null==o.return||o.return();case 44:if(t.prev=44,!a){t.next=47;break}throw i;case 47:return t.finish(44);case 48:return t.finish(41);case 49:case"end":return t.stop()}}),t,this,[[6,37,41,49],[42,,44,48]])}))),function(e){return a.apply(this,arguments)})},{key:"stateless_downloadAllItems",value:function(){var t=this,n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return new Promise(function(){var r=y(regeneratorRuntime.mark((function r(a,i){var o;return regeneratorRuntime.wrap((function(r){for(;;)switch(r.prev=r.next){case 0:return o={limit:n.limit||500,sync_token:n.syncToken,cursor_token:n.cursorToken,content_type:n.contentType,event:n.event,api:S.getApiVersion()},r.prev=1,r.t0=t.httpManager,r.next=5,t.getSyncURL();case 5:r.t1=r.sent,r.t2=o,r.t3=function(){var r=y(regeneratorRuntime.mark((function r(i){var o,s;return regeneratorRuntime.wrap((function(r){for(;;)switch(r.prev=r.next){case 0:return n.retrievedItems||(n.retrievedItems=[]),o=i.retrieved_items,r.next=4,t.getActiveKeyInfo(e.KeyRequestLoadSaveAccount);case 4:return s=r.sent.keys,r.next=7,SFJS.itemTransformer.decryptMultipleItems(o,s);case 7:n.retrievedItems=n.retrievedItems.concat(o.map((function(e){return t.modelManager.createItem(e)}))),n.syncToken=i.sync_token,n.cursorToken=i.cursor_token,n.cursorToken?t.stateless_downloadAllItems(n).then(a):a(n.retrievedItems);case 11:case"end":return r.stop()}}),r)})));return function(e){return r.apply(this,arguments)}}(),r.t4=function(e,t){i(e)},r.t0.postAuthenticatedAbsolute.call(r.t0,r.t1,r.t2,r.t3,r.t4),r.next=16;break;case 12:r.prev=12,r.t5=r.catch(1),console.log("Download all items exception caught:",r.t5),i(r.t5);case 16:case"end":return r.stop()}}),r,null,[[1,12]])})));return function(e,t){return r.apply(this,arguments)}}())}},{key:"resolveOutOfSync",value:(r=y(regeneratorRuntime.mark((function e(){var t=this;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.stateless_downloadAllItems({event:"resolve-out-of-sync"}).then(function(){var e=y(regeneratorRuntime.mark((function e(n){var r,a,i,o,s,u,l,c;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:r=[],a=!0,i=!1,o=void 0,e.prev=4,s=n[Symbol.iterator]();case 6:if(a=(u=s.next()).done){e.next=18;break}if(l=u.value,!(c=t.modelManager.findItem(l.uuid))){e.next=14;break}if(l.isItemContentEqualWith(c)){e.next=14;break}return e.next=14,t.modelManager.duplicateItemAndAddAsConflict(c);case 14:r.push(l);case 15:a=!0,e.next=6;break;case 18:e.next=24;break;case 20:e.prev=20,e.t0=e.catch(4),i=!0,o=e.t0;case 24:e.prev=24,e.prev=25,a||null==s.return||s.return();case 27:if(e.prev=27,!i){e.next=30;break}throw o;case 30:return e.finish(27);case 31:return e.finish(24);case 32:return e.next=34,t.modelManager.mapResponseItemsToLocalModelsWithOptions({items:r,source:C.MappingSourceRemoteRetrieved});case 34:return e.next=36,t.writeItemsToLocalStorage(t.modelManager.allNondummyItems);case 36:return e.abrupt("return",t.sync({performIntegrityCheck:!0}));case 37:case"end":return e.stop()}}),e,null,[[4,20,24,32],[25,,27,31]])})));return function(t){return e.apply(this,arguments)}}()));case 1:case"end":return e.stop()}}),e,this)}))),function(){return r.apply(this,arguments)})},{key:"handleSignout",value:(n=y(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return this.outOfSync=!1,this.loadLocalDataPromise=null,this.performSyncAgainOnCompletion=!1,this.syncStatus.syncOpInProgress=!1,this._queuedCallbacks=[],this.syncStatus={},e.abrupt("return",this.clearSyncToken());case 7:case"end":return e.stop()}}),e,this)}))),function(){return n.apply(this,arguments)})},{key:"clearSyncToken",value:(t=y(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return this._syncToken=null,this._cursorToken=null,e.abrupt("return",this.storageManager.removeItem("syncToken"));case 3:case"end":return e.stop()}}),e,this)}))),function(){return t.apply(this,arguments)})},{key:"__setLocalDataNotLoaded",value:function(){this.loadLocalDataPromise=null,this._initialDataLoaded=!1}},{key:"queuedCallbacks",get:function(){return this._queuedCallbacks||(this._queuedCallbacks=[]),this._queuedCallbacks}}]),e}();r.SFSyncManager=P;var M=function(){function e(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};v(this,e),this.content={},this.referencingObjects=[],this.updateFromJSON(t),this.uuid||"undefined"!=typeof SFJS&&SFJS.crypto.generateUUIDSync&&(this.uuid=SFJS.crypto.generateUUIDSync()),"object"!==h(this.content)||this.content.references||(this.content.references=[])}var t;return b(e,[{key:"initUUID",value:(t=y(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(this.uuid){e.next=4;break}return e.next=3,SFJS.crypto.generateUUID();case 3:this.uuid=e.sent;case 4:case"end":return e.stop()}}),e,this)}))),function(){return t.apply(this,arguments)})},{key:"updateFromJSON",value:function(t){if(t){this.deleted=t.deleted,this.uuid=t.uuid,this.enc_item_key=t.enc_item_key,this.auth_hash=t.auth_hash,this.auth_params=t.auth_params;for(var n=0,r=["errorDecrypting","dirty","dirtyCount","dirtiedDate","dummy"];n"==n.operator?m>h:"<="==n.operator?m<=h:">="==n.operator?m>=h:"startsWith"==n.operator?m.startsWith(h):"in"==n.operator?-1!=h.indexOf(m):"includes"==n.operator?this.resolveIncludesPredicate(m,h):"matches"==n.operator&&new RegExp(h).test(m)}},{key:"resolveIncludesPredicate",value:function(t,n){if("string"==typeof n)return t.includes(n);var r;r=Array.isArray(n)?e.fromArray(n):n;var a=!0,i=!1,o=void 0;try{for(var s,u=t[Symbol.iterator]();!(a=(s=u.next()).done);a=!0){var l=s.value;if(this.ObjectSatisfiesPredicate(l,r))return!0}}catch(e){i=!0,o=e}finally{try{a||null==u.return||u.return()}finally{if(i)throw o}}return!1}},{key:"ItemSatisfiesPredicate",value:function(t,n){return Array.isArray(n)&&(n=e.fromArray(n)),this.ObjectSatisfiesPredicate(t,n)}},{key:"ItemSatisfiesPredicates",value:function(e,t){var n=!0,r=!1,a=void 0;try{for(var i,o=t[Symbol.iterator]();!(n=(i=o.next()).done);n=!0){var s=i.value;if(!this.ItemSatisfiesPredicate(e,s))return!1}}catch(e){r=!0,a=e}finally{try{n||null==o.return||o.return()}finally{if(r)throw a}}return!0}},{key:"DateFromString",value:function(e){var t=e.split("."),n=t[1],r=new Date,a=parseInt(t[0]);return"days"==n?r.setDate(r.getDate()-a):"hours"==n&&r.setHours(r.getHours()-a),r}},{key:"IsRecursiveOperator",value:function(e){return["and","or"].includes(e)}}]),e}();r.SFPredicate=A;var N=function(e){function t(e){var n;return v(this,t),(n=l(this,c(t).call(this,e))).content.desktopPrivileges||(n.content.desktopPrivileges={}),n}return f(t,e),b(t,null,[{key:"contentType",value:function(){return"SN|Privileges"}}]),b(t,[{key:"setCredentialsForAction",value:function(e,t){this.content.desktopPrivileges[e]=t}},{key:"getCredentialsForAction",value:function(e){return this.content.desktopPrivileges[e]||[]}},{key:"toggleCredentialForAction",value:function(e,t){this.isCredentialRequiredForAction(e,t)?this.removeCredentialForAction(e,t):this.addCredentialForAction(e,t)}},{key:"removeCredentialForAction",value:function(e,t){_.pull(this.content.desktopPrivileges[e],t)}},{key:"addCredentialForAction",value:function(e,t){var n=this.getCredentialsForAction(e);n.push(t),this.setCredentialsForAction(e,n)}},{key:"isCredentialRequiredForAction",value:function(e,t){return this.getCredentialsForAction(e).includes(t)}}]),t}(M);r.SFPrivileges=N;var j=function(e){function t(e){var n;return v(this,t),(n=l(this,c(t).call(this,e))).content.itemUUIDToItemHistoryMapping||(n.content.itemUUIDToItemHistoryMapping={}),Object.keys(n.content.itemUUIDToItemHistoryMapping).forEach((function(e){var t=n.content.itemUUIDToItemHistoryMapping[e];n.content.itemUUIDToItemHistoryMapping[e]=new L(t)})),n}return f(t,e),b(t,[{key:"addEntryForItem",value:function(e){return this.historyForItem(e).addHistoryEntryForItem(e)}},{key:"historyForItem",value:function(e){var t=this.content.itemUUIDToItemHistoryMapping[e.uuid];return t||(t=this.content.itemUUIDToItemHistoryMapping[e.uuid]=new L),t}},{key:"clearItemHistory",value:function(e){this.historyForItem(e).clear()}},{key:"clearAllHistory",value:function(){this.content.itemUUIDToItemHistoryMapping={}}},{key:"optimizeHistoryForItem",value:function(e){var n=this.historyForItem(e);n.entries.length>t.LargeItemEntryAmountThreshold&&n.optimize()}}]),t}(M);r.SFHistorySession=j,j.LargeItemEntryAmountThreshold=60;var L=function(){function e(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};if(v(this,e),this.entries||(this.entries=[]),t.entries){var n=!0,r=!1,a=void 0;try{for(var i,o=t.entries[Symbol.iterator]();!(n=(i=o.next()).done);n=!0){var s=i.value,u=this.createEntryForItem(s.item);u.setPreviousEntry(this.getLastEntry()),this.entries.push(u)}}catch(e){r=!0,a=e}finally{try{n||null==o.return||o.return()}finally{if(r)throw a}}}}return b(e,[{key:"createEntryForItem",value:function(t){var n=e.HistoryEntryClassMapping&&e.HistoryEntryClassMapping[t.content_type];return n||(n=B),new n(t)}},{key:"getLastEntry",value:function(){return this.entries[this.entries.length-1]}},{key:"addHistoryEntryForItem",value:function(e){var t=this.createEntryForItem(e),n=this.getLastEntry();if(t.setPreviousEntry(n),!t.isSameAsEntry(n))return this.entries.push(t),t}},{key:"clear",value:function(){this.entries.length=0}},{key:"optimize",value:function(){var t=this,n=[],r=function(t){return t.deltaSize()>e.LargeEntryDeltaThreshold},a=function(e,a,i){if(i?n.push(e):-1!==(a=n.indexOf(e))&&n.splice(a,1),i&&r(e)&&-1==e.operationVector()){var o=t.entries[a-1];o&&n.push(o)}};this.entries.forEach((function(e,n){if(0==n||n==t.entries.length-1)a(e,n,!0);else{var i=r(e);a(e,n,i)}})),this.entries=this.entries.filter((function(e,t){return-1!==n.indexOf(e)}))}}]),e}();r.SFItemHistory=L,L.LargeEntryDeltaThreshold=15;var B=function(){function e(t){v(this,e),this.item=M.deepMerge({},t),this.defaultContentKeyToDiffOn="text",this.textCharDiffLength=0,"string"==typeof this.item.updated_at&&(this.item.updated_at=new Date(this.item.updated_at))}return b(e,[{key:"setPreviousEntry",value:function(e){this.hasPreviousEntry=null!=e,this.item.content[this.defaultContentKeyToDiffOn]&&(this.textCharDiffLength=e?this.item.content[this.defaultContentKeyToDiffOn].length-e.item.content[this.defaultContentKeyToDiffOn].length:this.item.content[this.defaultContentKeyToDiffOn].length)}},{key:"operationVector",value:function(){return null!=this.textCharDiffLength?this.hasPreviousEntry&&0!=this.textCharDiffLength?this.textCharDiffLength<0?-1:1:0:1}},{key:"deltaSize",value:function(){return null!=this.textCharDiffLength?Math.abs(this.textCharDiffLength):1}},{key:"isSameAsEntry",value:function(e){if(!e)return!1;var t=new M(this.item),n=new M(e.item);return t.isItemContentEqualWith(n)}}]),e}();r.SFItemHistoryEntry=B,x="undefined"!=typeof window?window:void 0!==e?e:null;var U=function(){function e(){v(this,e),this.DefaultPBKDF2Length=768}var t,n,r,a,i,o,s,l,c,f,p,d,h,m,g;return b(e,[{key:"generateUUIDSync",value:function(){var e=x.crypto||x.msCrypto;if(e){var t=new Uint32Array(4);e.getRandomValues(t);var n=-1;return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,(function(e){n++;var r=t[n>>3]>>n%8*4&15;return("x"==e?r:3&r|8).toString(16)}))}var r=(new Date).getTime();return x.performance&&"function"==typeof x.performance.now&&(r+=performance.now()),"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,(function(e){var t=(r+16*Math.random())%16|0;return r=Math.floor(r/16),("x"==e?t:3&t|8).toString(16)}))}},{key:"generateUUID",value:(g=y(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.generateUUIDSync());case 1:case"end":return e.stop()}}),e,this)}))),function(){return g.apply(this,arguments)})},{key:"timingSafeEqual",value:function(e,t){var n=String(e),r=String(t),a=n.length,i=0;a!==r.length&&(r=n,i=1);for(var o=0;o0&&void 0!==d[0]?d[0]:{},n=t.ciphertextToAuth,r=t.contentCiphertext,a=t.encryptionKey,i=t.iv,o=t.authHash,s=t.authKey,!(d.length>1?d[1]:void 0)||o){e.next=5;break}return console.error("Auth hash is required."),e.abrupt("return");case 5:if(!o){e.next=12;break}return e.next=8,this.hmac256(n,s);case 8:if(l=e.sent,!1!==this.timingSafeEqual(o,l)){e.next=12;break}return console.error("Auth hash does not match, returning null."),e.abrupt("return",null);case 12:return c=u.enc.Hex.parse(a),f=u.enc.Hex.parse(i||""),p=u.AES.decrypt(r,c,{iv:f,mode:u.mode.CBC,padding:u.pad.Pkcs7}),e.abrupt("return",p.toString(u.enc.Utf8));case 16:case"end":return e.stop()}}),e,this)}))),function(){return m.apply(this,arguments)})},{key:"encryptText",value:(h=y(regeneratorRuntime.mark((function e(t,n,r){var a,i,o;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return a=u.enc.Hex.parse(n),i=u.enc.Hex.parse(r||""),o=u.AES.encrypt(t,a,{iv:i,mode:u.mode.CBC,padding:u.pad.Pkcs7}),e.abrupt("return",o.toString());case 4:case"end":return e.stop()}}),e)}))),function(e,t,n){return h.apply(this,arguments)})},{key:"generateRandomKey",value:(d=y(regeneratorRuntime.mark((function e(t){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",u.lib.WordArray.random(t/8).toString());case 1:case"end":return e.stop()}}),e)}))),function(e){return d.apply(this,arguments)})},{key:"generateItemEncryptionKey",value:(p=y(regeneratorRuntime.mark((function e(){var t,n,r,a;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=512,n=1,e.next=4,this.generateRandomKey(t);case 4:return r=e.sent,e.next=7,this.generateRandomKey(t);case 7:return a=e.sent,e.abrupt("return",this.pbkdf2(a,r,n,t));case 9:case"end":return e.stop()}}),e,this)}))),function(){return p.apply(this,arguments)})},{key:"firstHalfOfKey",value:(f=y(regeneratorRuntime.mark((function e(t){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",t.substring(0,t.length/2));case 1:case"end":return e.stop()}}),e)}))),function(e){return f.apply(this,arguments)})},{key:"secondHalfOfKey",value:(c=y(regeneratorRuntime.mark((function e(t){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",t.substring(t.length/2,t.length));case 1:case"end":return e.stop()}}),e)}))),function(e){return c.apply(this,arguments)})},{key:"base64",value:(l=y(regeneratorRuntime.mark((function e(t){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",x.btoa(encodeURIComponent(t).replace(/%([0-9A-F]{2})/g,(function(e,t){return String.fromCharCode("0x"+t)}))));case 1:case"end":return e.stop()}}),e)}))),function(e){return l.apply(this,arguments)})},{key:"base64Decode",value:(s=y(regeneratorRuntime.mark((function e(t){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",x.atob(t));case 1:case"end":return e.stop()}}),e)}))),function(e){return s.apply(this,arguments)})},{key:"sha256",value:(o=y(regeneratorRuntime.mark((function e(t){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",u.SHA256(t).toString());case 1:case"end":return e.stop()}}),e)}))),function(e){return o.apply(this,arguments)})},{key:"hmac256",value:(i=y(regeneratorRuntime.mark((function e(t,n){var r,a,i;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r=u.enc.Hex.parse(n),a=u.enc.Utf8.parse(t),i=u.HmacSHA256(a,r).toString(),e.abrupt("return",i);case 4:case"end":return e.stop()}}),e)}))),function(e,t){return i.apply(this,arguments)})},{key:"generateSalt",value:(a=y(regeneratorRuntime.mark((function e(t,n,r,a){var i;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.sha256([t,"SF",n,r,a].join(":"));case 2:return i=e.sent,e.abrupt("return",i);case 4:case"end":return e.stop()}}),e,this)}))),function(e,t,n,r){return a.apply(this,arguments)})},{key:"generateSymmetricKeyPair",value:(r=y(regeneratorRuntime.mark((function e(){var t,n,r,a,i,o,s,u,l,c,f=arguments;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=f.length>0&&void 0!==f[0]?f[0]:{},n=t.password,r=t.pw_salt,a=t.pw_cost,e.next=3,this.pbkdf2(n,r,a,this.DefaultPBKDF2Length);case 3:return i=e.sent,o=i.length,s=o/3,u=i.slice(0,s),l=i.slice(s,2*s),c=i.slice(2*s,3*s),e.abrupt("return",[u,l,c]);case 10:case"end":return e.stop()}}),e,this)}))),function(){return r.apply(this,arguments)})},{key:"computeEncryptionKeysForUser",value:(n=y(regeneratorRuntime.mark((function e(t,n){var r;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if("003"!=n.version){e.next=9;break}if(n.identifier){e.next=4;break}return console.error("authParams is missing identifier."),e.abrupt("return");case 4:return e.next=6,this.generateSalt(n.identifier,n.version,n.pw_cost,n.pw_nonce);case 6:r=e.sent,e.next=10;break;case 9:r=n.pw_salt;case 10:return e.abrupt("return",this.generateSymmetricKeyPair({password:t,pw_salt:r,pw_cost:n.pw_cost}).then((function(e){return{pw:e[0],mk:e[1],ak:e[2]}})));case 11:case"end":return e.stop()}}),e,this)}))),function(e,t){return n.apply(this,arguments)})},{key:"generateInitialKeysAndAuthParamsForUser",value:(t=y(regeneratorRuntime.mark((function e(t,n){var r,a,i,o;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r=this.SFJS.version,a=this.SFJS.defaultPasswordGenerationCost,e.next=4,this.generateRandomKey(256);case 4:return i=e.sent,e.next=7,this.generateSalt(t,r,a,i);case 7:return o=e.sent,e.abrupt("return",this.generateSymmetricKeyPair({password:n,pw_salt:o,pw_cost:a}).then((function(e){var n={pw_nonce:i,pw_cost:a,identifier:t,version:r};return{keys:{pw:e[0],mk:e[1],ak:e[2]},authParams:n}})));case 9:case"end":return e.stop()}}),e,this)}))),function(e,n){return t.apply(this,arguments)})}]),e}();r.SFAbstractCrypto=U;var z=function(e){function t(){return v(this,t),l(this,c(t).apply(this,arguments))}var n;return f(t,e),b(t,[{key:"pbkdf2",value:(n=y(regeneratorRuntime.mark((function e(t,n,r,a){var i;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return i={keySize:a/32,hasher:u.algo.SHA512,iterations:r},e.abrupt("return",u.PBKDF2(t,n,i).toString());case 2:case"end":return e.stop()}}),e)}))),function(e,t,r,a){return n.apply(this,arguments)})}]),t}(U);r.SFCryptoJS=z;var H=(x="undefined"!=typeof window?window:void 0!==e?e:null).crypto?x.crypto.subtle:null,K=function(e){function t(){return v(this,t),l(this,c(t).apply(this,arguments))}var n,r,a,i,o,s,u,p,d,h,m,g,k,w;return f(t,e),b(t,[{key:"pbkdf2",value:(w=y(regeneratorRuntime.mark((function e(t,n,r,a){var i;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.webCryptoImportKey(t,"PBKDF2",["deriveBits"]);case 2:if(i=e.sent){e.next=6;break}return console.log("Key is null, unable to continue"),e.abrupt("return",null);case 6:return e.abrupt("return",this.webCryptoDeriveBits(i,n,r,a));case 7:case"end":return e.stop()}}),e,this)}))),function(e,t,n,r){return w.apply(this,arguments)})},{key:"generateRandomKey",value:(k=y(regeneratorRuntime.mark((function e(t){var n=this;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",H.generateKey({name:"AES-CBC",length:t},!0,["encrypt","decrypt"]).then((function(e){return H.exportKey("raw",e).then(function(){var e=y(regeneratorRuntime.mark((function e(t){var r;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,n.arrayBufferToHexString(new Uint8Array(t));case 2:return r=e.sent,e.abrupt("return",r);case 4:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}()).catch((function(e){console.error("Error exporting key",e)}))})).catch((function(e){console.error("Error generating key",e)})));case 2:case"end":return e.stop()}}),e)}))),function(e){return k.apply(this,arguments)})},{key:"generateItemEncryptionKey",value:(g=y(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",Promise.all([this.generateRandomKey(256),this.generateRandomKey(256)]).then((function(e){return e.join("")})));case 2:case"end":return e.stop()}}),e,this)}))),function(){return g.apply(this,arguments)})},{key:"encryptText",value:(m=y(regeneratorRuntime.mark((function e(t,n,r){var a,i,o,s,u,l=this;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!r){e.next=6;break}return e.next=3,this.hexStringToArrayBuffer(r);case 3:e.t0=e.sent,e.next=7;break;case 6:e.t0=new ArrayBuffer(16);case 7:return a=e.t0,i={name:"AES-CBC",iv:a},e.next=11,this.hexStringToArrayBuffer(n);case 11:return o=e.sent,e.next=14,this.webCryptoImportKey(o,i.name,["encrypt"]);case 14:return s=e.sent,e.next=17,this.stringToArrayBuffer(t);case 17:return u=e.sent,e.abrupt("return",crypto.subtle.encrypt(i,s,u).then(function(){var e=y(regeneratorRuntime.mark((function e(t){var n;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,l.arrayBufferToBase64(t);case 2:return n=e.sent,e.abrupt("return",n);case 4:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}()));case 19:case"end":return e.stop()}}),e,this)}))),function(e,t,n){return m.apply(this,arguments)})},{key:"decryptText",value:(h=y(regeneratorRuntime.mark((function e(){var t,n,r,a,i,o,s,u,l,c,f,p,d,h=this,m=arguments;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(t=m.length>0&&void 0!==m[0]?m[0]:{},n=t.ciphertextToAuth,r=t.contentCiphertext,a=t.encryptionKey,i=t.iv,o=t.authHash,s=t.authKey,!(m.length>1?m[1]:void 0)||o){e.next=5;break}return console.error("Auth hash is required."),e.abrupt("return");case 5:if(!o){e.next=12;break}return e.next=8,this.hmac256(n,s);case 8:if(u=e.sent,!1!==this.timingSafeEqual(o,u)){e.next=12;break}return console.error("Auth hash does not match, returning null. ".concat(o," != ").concat(u)),e.abrupt("return",null);case 12:if(!i){e.next=18;break}return e.next=15,this.hexStringToArrayBuffer(i);case 15:e.t0=e.sent,e.next=19;break;case 18:e.t0=new ArrayBuffer(16);case 19:return l=e.t0,c={name:"AES-CBC",iv:l},e.next=23,this.hexStringToArrayBuffer(a);case 23:return f=e.sent,e.next=26,this.webCryptoImportKey(f,c.name,["decrypt"]);case 26:return p=e.sent,e.next=29,this.base64ToArrayBuffer(r);case 29:return d=e.sent,e.abrupt("return",crypto.subtle.decrypt(c,p,d).then(function(){var e=y(regeneratorRuntime.mark((function e(t){var n;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,h.arrayBufferToString(t);case 2:return n=e.sent,e.abrupt("return",n);case 4:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}()).catch((function(e){console.error("Error decrypting:",e)})));case 31:case"end":return e.stop()}}),e,this)}))),function(){return h.apply(this,arguments)})},{key:"hmac256",value:(d=y(regeneratorRuntime.mark((function e(t,n){var r,a,i,o=this;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.hexStringToArrayBuffer(n);case 2:return r=e.sent,e.next=5,this.webCryptoImportKey(r,"HMAC",["sign"],{name:"SHA-256"});case 5:return a=e.sent,e.next=8,this.stringToArrayBuffer(t);case 8:return i=e.sent,e.abrupt("return",crypto.subtle.sign({name:"HMAC"},a,i).then(function(){var e=y(regeneratorRuntime.mark((function e(t){var n;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,o.arrayBufferToHexString(t);case 2:return n=e.sent,e.abrupt("return",n);case 4:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}()).catch((function(e){console.error("Error computing hmac",e)})));case 10:case"end":return e.stop()}}),e,this)}))),function(e,t){return d.apply(this,arguments)})},{key:"webCryptoImportKey",value:(p=y(regeneratorRuntime.mark((function e(t,n,r,a){var i;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if("string"!=typeof t){e.next=6;break}return e.next=3,this.stringToArrayBuffer(t);case 3:e.t0=e.sent,e.next=7;break;case 6:e.t0=t;case 7:return i=e.t0,e.abrupt("return",H.importKey("raw",i,{name:n,hash:a},!1,r).then((function(e){return e})).catch((function(e){return console.error(e),null})));case 9:case"end":return e.stop()}}),e,this)}))),function(e,t,n,r){return p.apply(this,arguments)})},{key:"webCryptoDeriveBits",value:(u=y(regeneratorRuntime.mark((function e(t,n,r,a){var i,o=this;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.stringToArrayBuffer(n);case 2:return e.t0=e.sent,e.t1=r,e.t2={name:"SHA-512"},i={name:"PBKDF2",salt:e.t0,iterations:e.t1,hash:e.t2},e.abrupt("return",H.deriveBits(i,t,a).then(function(){var e=y(regeneratorRuntime.mark((function e(t){var n;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,o.arrayBufferToHexString(new Uint8Array(t));case 2:return n=e.sent,e.abrupt("return",n);case 4:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}()).catch((function(e){return console.error(e),null})));case 7:case"end":return e.stop()}}),e,this)}))),function(e,t,n,r){return u.apply(this,arguments)})},{key:"stringToArrayBuffer",value:(s=y(regeneratorRuntime.mark((function e(t){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",new Promise((function(e,n){var r=new Blob([t]),a=new FileReader;a.onload=function(t){e(t.target.result)},a.readAsArrayBuffer(r)})));case 1:case"end":return e.stop()}}),e)}))),function(e){return s.apply(this,arguments)})},{key:"arrayBufferToString",value:(o=y(regeneratorRuntime.mark((function e(t){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",new Promise((function(e,n){var r=new Blob([t]),a=new FileReader;a.onload=function(t){e(t.target.result)},a.readAsText(r)})));case 1:case"end":return e.stop()}}),e)}))),function(e){return o.apply(this,arguments)})},{key:"arrayBufferToHexString",value:(i=y(regeneratorRuntime.mark((function e(t){var n,r,a,i;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:for(n=new Uint8Array(t),r="",i=0;i5e3)||this.crypto instanceof K}},{key:"supportedVersions",value:function(){return["001","002","003"]}},{key:"isVersionNewerThanLibraryVersion",value:function(e){var t=this.version();return parseInt(e)>parseInt(t)}},{key:"isProtocolVersionOutdated",value:function(e){var t={"001":Date.parse("2018-01-01"),"002":Date.parse("2020-01-01")}[e];return!!t&&new Date>t}},{key:"costMinimumForVersion",value:function(e){return{"001":3e3,"002":3e3,"003":11e4}[e]}},{key:"defaultPasswordGenerationCost",value:function(){return this.costMinimumForVersion(this.version())}}]),e}();if(r.StandardFile=V,x)try{x.StandardFile=V,x.SFJS=new V,x.SFCryptoWeb=K,x.SFCryptoJS=z,x.SFItemTransformer=W,x.SFModelManager=C,x.SFItem=M,x.SFItemParams=O,x.SFHttpManager=S,x.SFStorageManager=F,x.SFSyncManager=P,x.SFAuthManager=w,x.SFMigrationManager=E,x.SFAlertManager=k,x.SFPredicate=A,x.SFHistorySession=j,x.SFSessionHistoryManager=T,x.SFItemHistory=L,x.SFItemHistoryEntry=B,x.SFPrivilegesManager=I,x.SFPrivileges=N,x.SFSingletonManager=R}catch(e){console.log("Exception while exporting window variables",e)}}).call(this,void 0!==t?t:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}]},{},[1])(1)}).call(t,n(3))},function(e,t){!function(t){"use strict";var n=Object.prototype,r=n.hasOwnProperty,a="function"==typeof Symbol?Symbol:{},i=a.iterator||"@@iterator",o=a.asyncIterator||"@@asyncIterator",s=a.toStringTag||"@@toStringTag",u="object"==typeof e,l=t.regeneratorRuntime;if(l)u&&(e.exports=l);else{(l=t.regeneratorRuntime=u?e.exports:{}).wrap=m;var c={},f={};f[i]=function(){return this};var p=Object.getPrototypeOf,d=p&&p(p(C([])));d&&d!==n&&r.call(d,i)&&(f=d);var h=b.prototype=v.prototype=Object.create(f);g.prototype=h.constructor=b,b.constructor=g,b[s]=g.displayName="GeneratorFunction",l.isGeneratorFunction=function(e){var t="function"==typeof e&&e.constructor;return!!t&&(t===g||"GeneratorFunction"===(t.displayName||t.name))},l.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,b):(e.__proto__=b,s in e||(e[s]="GeneratorFunction")),e.prototype=Object.create(h),e},l.awrap=function(e){return{__await:e}},k(w.prototype),w.prototype[o]=function(){return this},l.AsyncIterator=w,l.async=function(e,t,n,r){var a=new w(m(e,t,n,r));return l.isGeneratorFunction(t)?a:a.next().then((function(e){return e.done?e.value:a.next()}))},k(h),h[s]="Generator",h[i]=function(){return this},h.toString=function(){return"[object Generator]"},l.keys=function(e){var t=[];for(var n in e)t.push(n);return t.reverse(),function n(){for(;t.length;){var r=t.pop();if(r in e)return n.value=r,n.done=!1,n}return n.done=!0,n}},l.values=C,E.prototype={constructor:E,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(_),!e)for(var t in this)"t"===t.charAt(0)&&r.call(this,t)&&!isNaN(+t.slice(1))&&(this[t]=void 0)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(e){if(this.done)throw e;var t=this;function n(n,r){return o.type="throw",o.arg=e,t.next=n,r&&(t.method="next",t.arg=void 0),!!r}for(var a=this.tryEntries.length-1;a>=0;--a){var i=this.tryEntries[a],o=i.completion;if("root"===i.tryLoc)return n("end");if(i.tryLoc<=this.prev){var s=r.call(i,"catchLoc"),u=r.call(i,"finallyLoc");if(s&&u){if(this.prev=0;--n){var a=this.tryEntries[n];if(a.tryLoc<=this.prev&&r.call(a,"finallyLoc")&&this.prev=0;--t){var n=this.tryEntries[t];if(n.finallyLoc===e)return this.complete(n.completion,n.afterLoc),_(n),c}},catch:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var n=this.tryEntries[t];if(n.tryLoc===e){var r=n.completion;if("throw"===r.type){var a=r.arg;_(n)}return a}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,n){return this.delegate={iterator:C(e),resultName:t,nextLoc:n},"next"===this.method&&(this.arg=void 0),c}}}function m(e,t,n,r){var a=t&&t.prototype instanceof v?t:v,i=Object.create(a.prototype),o=new E(r||[]);return i._invoke=function(e,t,n){var r="suspendedStart";return function(a,i){if("executing"===r)throw new Error("Generator is already running");if("completed"===r){if("throw"===a)throw i;return I()}for(n.method=a,n.arg=i;;){var o=n.delegate;if(o){var s=x(o,n);if(s){if(s===c)continue;return s}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if("suspendedStart"===r)throw r="completed",n.arg;n.dispatchException(n.arg)}else"return"===n.method&&n.abrupt("return",n.arg);r="executing";var u=y(e,t,n);if("normal"===u.type){if(r=n.done?"completed":"suspendedYield",u.arg===c)continue;return{value:u.arg,done:n.done}}"throw"===u.type&&(r="completed",n.method="throw",n.arg=u.arg)}}}(e,n,o),i}function y(e,t,n){try{return{type:"normal",arg:e.call(t,n)}}catch(e){return{type:"throw",arg:e}}}function v(){}function g(){}function b(){}function k(e){["next","throw","return"].forEach((function(t){e[t]=function(e){return this._invoke(t,e)}}))}function w(e){var t;this._invoke=function(n,a){function i(){return new Promise((function(t,i){!function t(n,a,i,o){var s=y(e[n],e,a);if("throw"!==s.type){var u=s.arg,l=u.value;return l&&"object"==typeof l&&r.call(l,"__await")?Promise.resolve(l.__await).then((function(e){t("next",e,i,o)}),(function(e){t("throw",e,i,o)})):Promise.resolve(l).then((function(e){u.value=e,i(u)}),o)}o(s.arg)}(n,a,t,i)}))}return t=t?t.then(i,i):i()}}function x(e,t){var n=e.iterator[t.method];if(void 0===n){if(t.delegate=null,"throw"===t.method){if(e.iterator.return&&(t.method="return",t.arg=void 0,x(e,t),"throw"===t.method))return c;t.method="throw",t.arg=new TypeError("The iterator does not provide a 'throw' method")}return c}var r=y(n,e.iterator,t.arg);if("throw"===r.type)return t.method="throw",t.arg=r.arg,t.delegate=null,c;var a=r.arg;return a?a.done?(t[e.resultName]=a.value,t.next=e.nextLoc,"return"!==t.method&&(t.method="next",t.arg=void 0),t.delegate=null,c):a:(t.method="throw",t.arg=new TypeError("iterator result is not an object"),t.delegate=null,c)}function S(e){var t={tryLoc:e[0]};1 in e&&(t.catchLoc=e[1]),2 in e&&(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function _(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function E(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(S,this),this.reset(!0)}function C(e){if(e){var t=e[i];if(t)return t.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var n=-1,a=function t(){for(;++n=0?this.items[l]=u:this.items.push(u);case 15:n=!0,c.next=5;break;case 18:c.next=24;break;case 20:c.prev=20,c.t0=c.catch(3),r=!0,a=c.t0;case 24:c.prev=24,c.prev=25,n||null==o.return||o.return();case 27:if(c.prev=27,!r){c.next=30;break}throw a;case 30:return c.finish(27);case 31:return c.finish(24);case 32:this.notifyObserversOfEvent(e.BridgeEventReceivedItems);case 33:case"end":return c.stop()}}),null,this,[[3,20,24,32],[25,,27,31]])}},{key:"indexOfItem",value:function(e){for(var t in this.items)if(this.items[t].uuid==e.uuid)return t;return-1}},{key:"removeItemFromItems",value:function(e){this.items=this.items.filter((function(t){return t.uuid!==e.uuid}))}},{key:"createItem",value:function(e,t){this.createItems([e],t)}},{key:"createItems",value:function(e,t){this.componentManager.createItems(e,(function(e){t&&t(e.map((function(e){return new i.SFItem(e)})))}))}},{key:"saveItem",value:function(e){return regeneratorRuntime.async((function(t){for(;;)switch(t.prev=t.next){case 0:return t.abrupt("return",this.saveItems([e]));case 1:case"end":return t.stop()}}),null,this)}},{key:"saveItems",value:function(t){var n=this;return regeneratorRuntime.async((function(r){for(;;)switch(r.prev=r.next){case 0:return r.abrupt("return",new Promise((function(r,a){n.componentManager.saveItems(t,(function(t){r(t),n.notifyObserversOfEvent(e.BridgeEventSavedItem)}))})));case 1:case"end":return r.stop()}}))}},{key:"indexOfItem",value:function(e){for(var t in this.items)if(this.items[t].uuid==e.uuid)return t;return-1}},{key:"deleteItem",value:function(e,t){this.deleteItems([e],t)}},{key:"deleteItems",value:function(e,t){this.componentManager.deleteItems(e,t)}},{key:"removeItemFromItems",value:function(e){this.items=this.items.filter((function(t){return t.uuid!==e.uuid}))}}])&&o(t.prototype,n),r&&o(t,r),e}();s(u,"FileItemContentTypeKey","SN|FileSafe|File"),s(u,"FileSafeCredentialsContentType","SN|FileSafe|Credentials"),s(u,"FileDescriptorContentTypeKey","SN|FileSafe|FileMetadata"),s(u,"FileSafeIntegrationContentTypeKey","SN|FileSafe|Integration"),s(u,"BridgeEventLoadedCredentials","BridgeEventLoadedCredentials"),s(u,"BridgeEventReceivedItems","BridgeEventReceivedItems"),s(u,"BridgeEventSavedItem","BridgeEventSavedItem")},function(e,t){var n;n=function(){return this}();try{n=n||Function("return this")()||(0,eval)("this")}catch(e){"object"==typeof window&&(n=window)}e.exports=n},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),n.d(t,"default",(function(){return p}));var r=n(2),a=n(7),i=n(8),o=n(9),s=n(10),u=n(12),l=n(0);n.n(l);function c(e,t){for(var n=0;n(t=q(t,e)).length)n=e;else{var r=0,a=-1,i=-1,o=(n=t).length;for(0>r&&(r=-r>o?0:o+r),0>(a=a>o?o:a)&&(a+=o),o=r>a?0:a-r>>>0,r>>>=0,a=Array(o);++ii?Qe:o,i=1),t=Object(t);++as))return!1;if((u=i.get(e))&&i.get(t))return u==t;var u=-1,l=!0,c=2&n?new E:Qe;for(i.set(e,t),i.set(t,e);++u(n=null==n?0:Me(n))&&(n=qt(r+n,0)),h(e,ae(t,3),n)):-1}function ge(e){return null!=e&&e.length?function e(t,n,r,a,i){var o=-1,s=t.length;for(r||(r=le),i||(i=[]);++o=e}function Ie(e){var t=typeof e;return null!=e&&("object"==t||"function"==t)}function Te(e){return null!=e&&"object"==typeof e}function Re(e){return!(!Te(e)||"[object Object]"!=N(e))&&(null===(e=At(e))||"function"==typeof(e=Ct.call(e,"constructor")&&e.constructor)&&e instanceof e&&Et.call(e)==Rt)}function Fe(e){return"string"==typeof e||!Sn(e)&&Te(e)&&"[object String]"==N(e)}function De(e){return"symbol"==typeof e||Te(e)&&"[object Symbol]"==N(e)}function Pe(e){return e?(e=Oe(e))===Ge||e===-Ge?17976931348623157e292*(0>e?-1:1):e==e?e:0:0===e?e:0}function Me(e){var t=(e=Pe(e))%1;return e==e?t?e-t:e:0}function Oe(e){if("number"==typeof e)return e;if(De(e))return Ye;if(Ie(e)&&(e=Ie(e="function"==typeof e.valueOf?e.valueOf():e)?e+"":e),"string"!=typeof e)return 0===e?e:+e;e=e.replace(nt,"");var t=ot.test(e);return t||ut.test(e)?dt(e.slice(2),t?2:8):it.test(e)?Ye:+e}function Ae(e){return Y(e,Ue(e))}function Ne(e){return null==e?"":W(e)}function je(e,t,n){return(e=null==e?Qe:O(e,t))===Qe?n:e}function Le(e,t){var n;if(n=null!=e){for(var r,a=-1,i=(r=q(t,n=e)).length,o=!1;++a(e=F(t,e))||(e==t.length-1?t.pop():Lt.call(t,e,1),--this.size,0))},S.prototype.get=function(e){var t=this.__data__;return 0>(e=F(t,e))?Qe:t[e][1]},S.prototype.has=function(e){return-1r?(++this.size,n.push([e,t])):n[r][1]=t,this},_.prototype.clear=function(){this.size=0,this.__data__={hash:new x,map:new(Gt||S),string:new x}},_.prototype.delete=function(e){return e=ie(this,e).delete(e),this.size-=e?1:0,e},_.prototype.get=function(e){return ie(this,e).get(e)},_.prototype.has=function(e){return ie(this,e).has(e)},_.prototype.set=function(e,t){var n=ie(this,e),r=n.size;return n.set(e,t),this.size+=n.size==r?0:1,this},E.prototype.add=E.prototype.push=function(e){return this.__data__.set(e,"__lodash_hash_undefined__"),this},E.prototype.has=function(e){return this.__data__.has(e)},C.prototype.clear=function(){this.__data__=new S,this.size=0},C.prototype.delete=function(e){var t=this.__data__;return e=t.delete(e),this.size=t.size,e},C.prototype.get=function(e){return this.__data__.get(e)},C.prototype.has=function(e){return this.__data__.has(e)},C.prototype.set=function(e,t){var n=this.__data__;if(n instanceof S){var r=n.__data__;if(!Gt||199>r.length)return r.push([e,t]),this.size=++n.size,this;n=this.__data__=new _(r)}return n.set(e,t),this.size=n.size,this};var fn=function(e,t){if(null==e)return e;if(!Se(e))return function(e,t){return e&&pn(e,t,Be)}(e,t);for(var n=e.length,r=-1,a=Object(e);++rn&&(n=qt(r+n,0)),Fe(e)?n<=r&&-10){var a=!0,i=!1,o=void 0;try{for(var s,u=t.integrations[Symbol.iterator]();!(a=(s=u.next()).done);a=!0){var l=s.value;if(l!=e){t.setIntegrationAsDefault(l);break}}}catch(e){i=!0,o=e}finally{try{a||null==u.return||u.return()}finally{if(i)throw o}}}}))}},{key:"integrations",get:function(){return this.extensionBridge.filterItems(i.a.FileSafeIntegrationContentTypeKey)}}])&&o(t.prototype,n),r&&o(t,r),e}()},function(e,t,n){"use strict";n.d(t,"a",(function(){return u}));var r=n(1),a=(n.n(r),n(0)),i=(n.n(a),n(2));function o(e,t){for(var n=0;n0&&(e=n.credentials[0]),e})),s(this,"setCredentialAsDefault",(function(e){var t=n.getDefaultCredentials();t&&(t.content.isDefault=!1),e.content.isDefault=!0,n.extensionBridge.saveItems([t,e])})),s(this,"deleteCredential",(function(e){n.extensionBridge.deleteItem(e)})),this.extensionBridge=r,this.onCredentialLoad=a,this.credentials=[],this.extensionBridge.addEventHandler((function(e){e==i.a.BridgeEventReceivedItems&&n.reloadCredentials()}))}var t,n,r;return t=e,(n=[{key:"reloadCredentials",value:function(){this.credentials=[];var e=this.extensionBridge.filterItems(i.a.FileSafeCredentialsContentType);if(0!=e.length){var t=!0,n=!1,r=void 0;try{for(var a,o=e[Symbol.iterator]();!(t=(a=o.next()).done);t=!0){var s=a.value;this.credentials.find((function(e){return e.uuid==s.uuid}))||this.credentials.push(s)}}catch(e){n=!0,r=e}finally{try{t||null==o.return||o.return()}finally{if(n)throw r}}this.onCredentialLoad(),this.credentials.length>0&&this.didLoadCredentials()}}},{key:"createNewCredentials",value:function(){var e,t,n,r,o;return regeneratorRuntime.async((function(s){for(;;)switch(s.prev=s.next){case 0:return e=256,s.next=3,regeneratorRuntime.awrap(SFJS.crypto.generateRandomKey(e));case 3:return t=s.sent,s.next=6,regeneratorRuntime.awrap(SFJS.crypto.generateRandomKey(e));case 6:return n=s.sent,s.next=9,regeneratorRuntime.awrap(SFJS.crypto.generateInitialKeysAndAuthParamsForUser(t,n));case 9:return(r=s.sent).isDefault=0==this.credentials.length,o=new a.SFItem({content_type:i.a.FileSafeCredentialsContentType,content:r}),this.extensionBridge.saveItem(o),this.didLoadCredentials(),s.abrupt("return",o);case 15:case"end":return s.stop()}}),null,this)}},{key:"didLoadCredentials",value:function(){this.extensionBridge.notifyObserversOfEvent(i.a.BridgeEventLoadedCredentials)}},{key:"credentialForFileDescriptor",value:function(e){return this.credentials.find((function(t){return e.content.references.find((function(e){return e.uuid==t.uuid}))}))}},{key:"getAllCredentials",value:function(){return this.credentials}},{key:"saveCredential",value:function(e){this.extensionBridge.saveItem(e)}}])&&o(t.prototype,n),r&&o(t,r),e}()},function(e,t,n){"use strict";n.d(t,"a",(function(){return c}));var r=n(1),a=(n.n(r),n(0)),i=(n.n(a),n(11)),o=n.n(i),s=n(2);function u(e,t){for(var n=0;n3&&void 0!==arguments[3]&&arguments[3],i=document.createElement("a");i.setAttribute("download",t);var o=this.tempUrlForData(e,n);i.href=o,i.setAttribute("target","_blank"),a?window.location.href=i.href:(document.body.appendChild(i),i.click(),i.remove()),setTimeout((function(){r.revokeTempUrl(o)}),500)}},{key:"tempUrlForData",value:function(e,t){return window.URL.createObjectURL(new Blob([e],{type:t||"text/json"}))}},{key:"revokeTempUrl",value:function(e){window.URL.revokeObjectURL(e)}},{key:"copyTextToClipboard",value:function(e){if(window.clipboardData&&window.clipboardData.setData)return clipboardData.setData("Text",e);var t;if(document.queryCommandSupported&&document.queryCommandSupported("copy"))try{(t=document.createElement("textarea")).setAttribute("readonly",!0),t.setAttribute("contenteditable",!0),t.style.position="fixed",t.value=e,document.body.appendChild(t),t.focus(),t.select();var n=document.createRange();n.selectNodeContents(t);var r=window.getSelection();r.removeAllRanges(),r.addRange(n),t.setSelectionRange(0,t.value.length),document.execCommand("copy")}catch(e){console.error(e)}finally{document.body.removeChild(t)}}}],(n=null)&&r(t.prototype,n),a&&r(t,a),e}()}])},function(e,t,n){"use strict"; +/* +object-assign +(c) Sindre Sorhus +@license MIT +*/var r=Object.getOwnPropertySymbols,a=Object.prototype.hasOwnProperty,i=Object.prototype.propertyIsEnumerable;function o(e){if(null==e)throw new TypeError("Object.assign cannot be called with null or undefined");return Object(e)}e.exports=function(){try{if(!Object.assign)return!1;var e=new String("abc");if(e[5]="de","5"===Object.getOwnPropertyNames(e)[0])return!1;for(var t={},n=0;n<10;n++)t["_"+String.fromCharCode(n)]=n;if("0123456789"!==Object.getOwnPropertyNames(t).map((function(e){return t[e]})).join(""))return!1;var r={};return"abcdefghijklmnopqrst".split("").forEach((function(e){r[e]=e})),"abcdefghijklmnopqrst"===Object.keys(Object.assign({},r)).join("")}catch(e){return!1}}()?Object.assign:function(e,t){for(var n,s,u=o(e),l=1;l=0;--i){var o=this.tryEntries[i],s=o.completion;if("root"===o.tryLoc)return a("end");if(o.tryLoc<=this.prev){var u=r.call(o,"catchLoc"),l=r.call(o,"finallyLoc");if(u&&l){if(this.prev=0;--n){var a=this.tryEntries[n];if(a.tryLoc<=this.prev&&r.call(a,"finallyLoc")&&this.prev=0;--t){var n=this.tryEntries[t];if(n.finallyLoc===e)return this.complete(n.completion,n.afterLoc),C(n),h}},catch:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var n=this.tryEntries[t];if(n.tryLoc===e){var r=n.completion;if("throw"===r.type){var a=r.arg;C(n)}return a}}throw new Error("illegal catch attempt")},delegateYield:function(e,n,r){return this.delegate={iterator:T(e),resultName:n,nextLoc:r},"next"===this.method&&(this.arg=t),h}},e}(e.exports);try{regeneratorRuntime=r}catch(e){Function("r","regeneratorRuntime = r")(r)}},function(e,t,n){"use strict";n.r(t);var r=n(0),a=n.n(r),i=n(9),o=n.n(i),s=n(5),u=n.n(s),l=n(6),c=n.n(l),f=n(7),p=n.n(f),d=n(4),h=n.n(d),m=n(8),y=n.n(m),v=n(2),g=n.n(v),b=n(1),k=n.n(b),w=function(){function e(){u()(this,e),this.unloadHandlers=[],this.dataChangeObservers=[]}return h()(e,null,[{key:"get",value:function(){return null==this.instance&&(this.instance=new e),this.instance}}]),h()(e,[{key:"setFilesafeInstance",value:function(e){var t=this;this.filesafe=e,this.fsObserver=e.addDataChangeObserver((function(){var e=!0,n=!1,r=void 0;try{for(var a,i=t.dataChangeObservers[Symbol.iterator]();!(e=(a=i.next()).done);e=!0)(0,a.value)()}catch(e){n=!0,r=e}finally{try{e||null==i.return||i.return()}finally{if(n)throw r}}}))}},{key:"setDelegate",value:function(e){this.delegate=e}},{key:"getDelegate",value:function(){return this.delegate||{}}},{key:"addDataChangeObserver",value:function(e){this.dataChangeObservers.push(e)}},{key:"addUnloadHandler",value:function(e){this.unloadHandlers.push(e)}},{key:"unload",value:function(){var t=!0,n=!1,r=void 0;try{for(var a,i=this.unloadHandlers[Symbol.iterator]();!(t=(a=i.next()).done);t=!0)(0,a.value)()}catch(e){n=!0,r=e}finally{try{t||null==i.return||i.return()}finally{if(n)throw r}}this.dataChangeObservers=[],this.filesafe&&this.filesafe.removeDataChangeObserver(this.fsObserver),e.instance=null}},{key:"defaultRelayServerUrl",value:function(){return window.default_fs_relay_server_url||"https://filesafe.standardnotes.org"}}]),e}();k()(w,"instance",null);var x=function(e){function t(e){var n;return u()(this,t),n=c()(this,p()(t).call(this,e)),k()(g()(n),"exportCredential",(function(e){var t=btoa(JSON.stringify(e,null,2));w.get().filesafe.downloadBase64Data({base64Data:t,fileName:"sn-filesafe-keys-".concat(e.created_at.toISOString(),".json"),fileType:"text/json"})})),k()(g()(n),"deleteCredential",(function(e){0==n.numFilesForCredential(e)?w.get().filesafe.deleteCredential(e):alert("This key has files encrypted with it and cannot be deleted. First delete any associated files, then try again.")})),k()(g()(n),"createNewKeys",(function(){w.get().filesafe.createNewCredentials()})),k()(g()(n),"labelForCredential",(function(e){return e.created_at.toLocaleString()})),k()(g()(n),"numFilesForCredential",(function(e){return w.get().filesafe.numberOfFilesEncryptedWithCredential(e)})),k()(g()(n),"setCredentialAsDefault",(function(e){w.get().filesafe.setCredentialAsDefault(e)})),n.state={credentials:w.get().filesafe.getAllCredentials()||[]},w.get().addDataChangeObserver((function(){n.setState({credentials:w.get().filesafe.getAllCredentials()})})),n}return y()(t,e),h()(t,[{key:"render",value:function(){var e=this;return a.a.createElement("div",null,a.a.createElement("div",{className:"sk-panel-row"},a.a.createElement("div",{className:"sk-h2 sk-bold"},"Keys"),a.a.createElement("div",{className:"sk-button info no-border",onClick:this.createNewKeys},a.a.createElement("div",{className:"sk-label"},"Create New"))),a.a.createElement("div",{className:"list-container"},this.state.credentials.map((function(t){return a.a.createElement("div",{className:"list-item sk-horizontal-group top"},a.a.createElement("div",{className:"sk-circle x-small "+(t.content.isDefault?"info":"sk-secondary-contrast")}),a.a.createElement("div",null,a.a.createElement("div",{className:"sk-panel-row condensed sk-bold"},e.labelForCredential(t)),a.a.createElement("div",{style:{marginTop:3},className:"sk-panel-row condensed"},e.numFilesForCredential(t)," encrypted files"),a.a.createElement("div",{className:"sk-panel-row condensed"},a.a.createElement("div",{className:"sk-horizontal-group"},e.state.credentials.length>1&&!t.content.isDefault&&a.a.createElement("a",{className:"info",onClick:function(){e.setCredentialAsDefault(t)}},"Make Default"),a.a.createElement("a",{className:"info",onClick:function(){e.exportCredential(t)}},"Export"),a.a.createElement("a",{className:"danger",onClick:function(){e.deleteCredential(t)}},"Delete")))))}))))}}]),t}(a.a.Component),S=n(3),_=n.n(S),E=function(){function e(t){var n=t.credentialManager,r=t.integrationManager;u()(this,e),this.credentialManager=n,this.integrationManager=r}return h()(e,[{key:"getMessages",value:function(){var e,t;return _.a.async((function(n){for(;;)switch(n.prev=n.next){case 0:return e=[],n.next=3,_.a.awrap(this.credentialManager.getDefaultCredentials());case 3:return n.sent||e.push({message:"Create keys by selecting Create New under Keys.",css:"sk-base"}),(t=this.integrationManager.integrations)&&0!=t.length||e.push({message:"Add a new integration by selecting Add New under Integrations",css:"sk-base"}),n.abrupt("return",e);case 8:case"end":return n.stop()}}),null,this)}}]),e}(),C=function(e){function t(e){var n;return u()(this,t),(n=c()(this,p()(t).call(this,e))).state={},n}return y()(t,e),h()(t,[{key:"render",value:function(){return a.a.createElement("div",{id:"messages"},a.a.createElement("div",{className:"title"},"Complete the following steps before uploading your first file:"),a.a.createElement("ul",null,this.props.messages.map((function(e){return a.a.createElement("li",{dangerouslySetInnerHTML:{__html:e.message},className:e.css})}))))}}]),t}(a.a.Component),I=function(e){function t(e){var n;return u()(this,t),n=c()(this,p()(t).call(this,e)),k()(g()(n),"setStatusForFile",(function(e,t,r){n.setState({fileStatusFile:e,fileStatus:t,hasStatusSpinner:r})})),k()(g()(n),"decryptFileDescriptor",(function(e){var t,r;return _.a.async((function(a){for(;;)switch(a.prev=a.next){case 0:if(t=w.get().filesafe.integrationForFileDescriptor(e)){a.next=4;break}return alert("Unable to find integration for file. If you have deleted the integration, please re-add it and try again."),a.abrupt("return");case 4:return r=w.get().filesafe.displayStringForIntegration(t),n.setStatusForFile(e,"Downloading from ".concat(r,"..."),!0),a.abrupt("return",w.get().filesafe.downloadFileFromDescriptor(e).then((function(t){return n.setStatusForFile(e,"Decrypting...",!0),w.get().filesafe.decryptFile({fileDescriptor:e,fileItem:t}).then((function(t){return{base64Data:t.decryptedData,fileName:e.content.fileName,fileType:e.content.fileType}})).catch((function(t){console.error("filesafe-embed | error decrypting file:",t),n.flashErrorForFileDescriptor(e,"Error decrypting file.")}))})).catch((function(t){console.error("Error downloading file",t),n.flashErrorForFileDescriptor(e,"Error downloading file.")})));case 7:case"end":return a.stop()}}))})),k()(g()(n),"downloadFile",(function(e){var t,r;return _.a.async((function(a){for(;;)switch(a.prev=a.next){case 0:if(!n.isMobile){a.next=5;break}return t=w.get().filesafe.getPlatform(),alert("Downloading files is not currently supported on ".concat("ios"==t?"iOS":"Android",".")),a.abrupt("return");case 5:return a.next=7,_.a.awrap(n.decryptFileDescriptor(e));case 7:if(r=a.sent){a.next=11;break}return console.error("decryptFile returned nil data"),a.abrupt("return");case 11:w.get().filesafe.downloadBase64Data(r),n.setStatusForFile(e,null);case 13:case"end":return a.stop()}}))})),k()(g()(n),"previewFile",(function(e){var t,r;return _.a.async((function(a){for(;;)switch(a.prev=a.next){case 0:return a.next=2,_.a.awrap(n.decryptFileDescriptor(e));case 2:t=a.sent,r=w.get().filesafe.createTemporaryFileUrl({base64Data:t.base64Data,dataType:t.fileType}),n.setStatusForFile(e,null),n.setState({previewUrl:r,previewingFile:e});case 6:case"end":return a.stop()}}))})),k()(g()(n),"onClickPreview",(function(){setTimeout((function(){n.revokePreview()}),500)})),k()(g()(n),"selectFile",(function(e,t){e.target.focus(),n.state.selectedFile==t?(n.setState({selectedFile:null}),n.delegate.onSelectFile&&n.delegate.onSelectFile(null)):(n.setState({selectedFile:t}),n.delegate.onSelectFile&&n.delegate.onSelectFile(t)),n.revokePreview()})),k()(g()(n),"deleteFile",(function(e){w.get().filesafe.deleteFileFromDescriptor(e)})),k()(g()(n),"copyInsertionLink",(function(e){var t="[FileSafe:".concat(e.uuid,":").concat(e.content.fileName,"]");w.get().filesafe.copyTextToClipboard(t),n.setState({copiedLink:e}),setTimeout((function(){n.setState({copiedLink:null})}),1e3)})),k()(g()(n),"isFileSelected",(function(e){return n.state.selectedFile==e})),k()(g()(n),"elementForFile",(function(e){var t,r=w.get().filesafe.integrationForFileDescriptor(e);t=r?w.get().filesafe.displayStringForIntegration(r):"Integration Not Found";var i=e.content.serverMetadata.file_path,o=n.state.previewUrl&&n.state.previewingFile==e,s=n.state.fileStatusFile==e&&n.state.fileStatus,u=n.state.hasStatusSpinner;return a.a.createElement("div",{className:"file-item-container "+(n.isFileSelected(e)?"expanded":"")},a.a.createElement("div",{onClick:function(t){n.selectFile(t,e)},className:"file-item-button sk-button info "+(n.isFileSelected(e)?"selected":void 0)},a.a.createElement("div",{className:"sk-label"},e.content.fileName),s&&a.a.createElement("div",{className:"file-download-status sk-horizontal-group"},u&&a.a.createElement("div",{className:"sk-spinner x-small"}),a.a.createElement("div",{className:"file-status-label"},n.state.fileStatus)),n.isFileSelected(e)&&a.a.createElement("div",{className:"file-item-options-wrapper"},a.a.createElement("div",{onClick:function(e){e.stopPropagation()},className:"sk-app-bar file-item-options"},a.a.createElement("div",{className:"center"},a.a.createElement("div",{onClick:function(t){t.stopPropagation(),n.downloadFile(e)},className:"sk-app-bar-item"},a.a.createElement("div",{className:"sk-label contrast "+(n.isMobile?"disabled":"")},"Download")),a.a.createElement("div",{className:"sk-app-bar-item border"}),n.supportsPreviews&&o&&a.a.createElement("a",{className:"sk-app-bar-item",href:n.state.previewUrl,onClick:function(e){e.stopPropagation(),n.onClickPreview()},target:"_blank"},a.a.createElement("div",{className:"sk-label contrast"},"Open Preview")),n.supportsPreviews&&!o&&a.a.createElement("div",{onClick:function(t){t.stopPropagation(),n.previewFile(e)},className:"sk-app-bar-item"},a.a.createElement("div",{className:"sk-label contrast "+(n.isMobile?"disabled":"")},"Preview")),n.supportsPreviews&&a.a.createElement("div",{className:"sk-app-bar-item border"}),a.a.createElement("div",{onClick:function(t){t.stopPropagation(),n.copyInsertionLink(e)},className:"sk-app-bar-item"},a.a.createElement("div",{className:"sk-label contrast"},n.state.copiedLink==e?"Copied":"Copy Insert Link")),a.a.createElement("div",{className:"sk-app-bar-item border"}),a.a.createElement("div",{onClick:function(t){t.stopPropagation(),n.deleteFile(e)},className:"sk-app-bar-item"},a.a.createElement("div",{className:"sk-label contrast"},"Delete")))),a.a.createElement("div",{className:"file-location"},a.a.createElement("strong",null,t),a.a.createElement("span",null," ",i)))))})),n.state={},n.delegate=w.get().getDelegate(),n}return y()(t,e),h()(t,[{key:"revokePreview",value:function(){this.state.previewUrl&&w.get().filesafe.revokeTempUrl(this.state.previewUrl),this.setState({previewUrl:null,previewingFile:null})}},{key:"flashErrorForFileDescriptor",value:function(e,t){var n=this;this.setStatusForFile(e,t,!1),setTimeout((function(){n.setStatusForFile(null)}),2500)}},{key:"render",value:function(){var e=this;return this.props.files.map((function(t){return e.elementForFile(t)}))}},{key:"supportsPreviews",get:function(){if(void 0!==this._supportsPreview)return this._supportsPreview;var e=w.get().filesafe.getEnvironment();if(null==e)return!1;this._supportsPreview="web"==e}},{key:"isMobile",get:function(){return w.get().filesafe.isMobile()}}]),t}(a.a.Component),T=function(e){function t(e){var n;return u()(this,t),n=c()(this,p()(t).call(this,e)),k()(g()(n),"event_preventDefaults",(function(e){e.preventDefault(),e.stopPropagation()})),k()(g()(n),"event_highlight",(function(e){n.event_preventDefaults(e),n.rootElement.classList.add("highlight")})),k()(g()(n),"event_unhighlight",(function(e){n.event_preventDefaults(e),n.rootElement.classList.remove("highlight")})),k()(g()(n),"event_drop",(function(e){n.event_unhighlight(e),n.event_preventDefaults(e);var t=e.dataTransfer.files;n.handleDroppedFiles(t)})),k()(g()(n),"handleDroppedFiles",(function(e){var t,r,a,i,o,s;return _.a.async((function(u){for(;;)switch(u.prev=u.next){case 0:if(0!=w.get().filesafe.getAllIntegrations().length){u.next=3;break}return alert("Please set up at least one integration before attempting to upload a file. To do this, press Expand, and select Add New in the Integrations section."),u.abrupt("return");case 3:t=!0,r=!1,a=void 0,u.prev=6,i=e[Symbol.iterator]();case 8:if(t=(o=i.next()).done){u.next=17;break}if(s=o.value){u.next=12;break}return u.abrupt("continue",14);case 12:return u.next=14,_.a.awrap(n.readFile(s));case 14:t=!0,u.next=8;break;case 17:u.next=23;break;case 19:u.prev=19,u.t0=u.catch(6),r=!0,a=u.t0;case 23:u.prev=23,u.prev=24,t||null==i.return||i.return();case 26:if(u.prev=26,!r){u.next=29;break}throw a;case 29:return u.finish(26);case 30:return u.finish(23);case 31:case"end":return u.stop()}}),null,null,[[6,19,23,31],[24,,26,30]])})),n.messagesManager=new E({credentialManager:w.get().filesafe.credentialManager,integrationManager:w.get().filesafe.integrationManager}),n.messagesManager.getMessages().then((function(e){n.setState({messages:e})})),n.state={noteFiles:w.get().filesafe.fileDescriptorsForCurrentNote(),messages:[]},w.get().addDataChangeObserver((function(){n.reload()})),w.get().addUnloadHandler((function(){window.removeEventListener("dragenter",n.event_highlight,!1),window.removeEventListener("dragover",n.event_highlight,!1),window.removeEventListener("dragleave",n.event_unhighlight,!1),window.removeEventListener("drop",n.event_drop,!1)})),n}return y()(t,e),h()(t,[{key:"reload",value:function(){var e;return _.a.async((function(t){for(;;)switch(t.prev=t.next){case 0:return t.next=2,_.a.awrap(this.messagesManager.getMessages());case 2:e=t.sent,this.setState({noteFiles:w.get().filesafe.fileDescriptorsForCurrentNote(),messages:e});case 4:case"end":return t.stop()}}),null,this)}},{key:"componentDidMount",value:function(){this.configureFileForm(),window.addEventListener("dragenter",this.event_highlight,!1),window.addEventListener("dragover",this.event_highlight,!1),window.addEventListener("dragleave",this.event_unhighlight,!1),window.addEventListener("drop",this.event_drop,!1)}},{key:"configureFileForm",value:function(){var e=this,t=this.fileInput;this.dropContainer,t&&(t.onchange=function(t){var n=t.target.files;e.handledFiles||e.handleDroppedFiles(n)})}},{key:"reset",value:function(){this.setState({rawData:null,decryptedItems:null,requestPassword:!1})}},{key:"readFile",value:function(e){var t=this;return _.a.async((function(n){for(;;)switch(n.prev=n.next){case 0:return n.abrupt("return",new Promise((function(n,r){var a=new FileReader,i=!1;a.onload=function(r){var a,o,s,u;return _.a.async((function(l){for(;;)switch(l.prev=l.next){case 0:if(a=r.target.result,!i){l.next=7;break}a=JSON.parse(a),o=a.items[0],t.decryptDraggedFile(o).then(n),l.next=20;break;case 7:if(!((s=a).byteLength>5e7)){l.next=14;break}return alert("The maximum upload size is ".concat(50," megabytes per file.")),t.setState({status:null}),n(),l.abrupt("return");case 14:return l.next=16,_.a.awrap(SFJS.crypto.arrayBufferToBase64(s));case 16:return u=l.sent,l.next=19,_.a.awrap(t.encryptFile(u,e.name,e.type));case 19:n();case 20:case"end":return l.stop()}}))},t.setState({status:"Reading file..."}),e.name.endsWith(".sf")||e.name.endsWith(".json")?(i=!0,a.readAsText(e)):a.readAsArrayBuffer(e)})));case 4:case"end":return n.stop()}}))}},{key:"decryptDraggedFile",value:function(e){var t,n,r,a,i,o,s,u,l=this;return _.a.async((function(c){for(;;)switch(c.prev=c.next){case 0:this.setState({status:"Decrypting..."}),t=w.get().filesafe.getAllCredentials(),n=function(t){return _.a.async((function(n){for(;;)switch(n.prev=n.next){case 0:return n.abrupt("return",new Promise((function(n,r){w.get().filesafe.decryptFile({fileItem:e,credential:t}).then((function(e){var t=e.decryptedItem;w.get().filesafe.downloadBase64Data({base64Data:e.decryptedData,fileName:t.content.fileName,fileType:t.content.fileType}),l.setState({status:null}),n(!0)})).catch((function(e){console.error("Error decrypting:",e),l.flashError("Error decrypting file."),r(!1)}))})));case 1:case"end":return n.stop()}}))},r=!0,a=!1,i=void 0,c.prev=6,o=t[Symbol.iterator]();case 8:if(r=(s=o.next()).done){c.next=18;break}return u=s.value,c.next=12,_.a.awrap(n(u));case 12:if(!c.sent){c.next=15;break}return c.abrupt("return");case 15:r=!0,c.next=8;break;case 18:c.next=24;break;case 20:c.prev=20,c.t0=c.catch(6),a=!0,i=c.t0;case 24:c.prev=24,c.prev=25,r||null==o.return||o.return();case 27:if(c.prev=27,!a){c.next=30;break}throw i;case 30:return c.finish(27);case 31:return c.finish(24);case 32:case"end":return c.stop()}}),null,this,[[6,20,24,32],[25,,27,31]])}},{key:"wait",value:function(e){return _.a.async((function(t){for(;;)switch(t.prev=t.next){case 0:return t.abrupt("return",new Promise((function(t,n){setTimeout((function(){t()}),1e3*e)})));case 1:case"end":return t.stop()}}))}},{key:"encryptFile",value:function(e,t,n){var r,a,i=this;return _.a.async((function(o){for(;;)switch(o.prev=o.next){case 0:if(r=w.get().filesafe.getDefaultCredentials()){o.next=5;break}return this.setState({status:null}),alert("Please set up at least one key before attempting to upload a file. To do this, press Expand, and select Create New in the Keys section."),o.abrupt("return");case 5:if(a=w.get().filesafe.getDefaultIntegration()){o.next=10;break}return this.setState({status:null}),alert("Please set up at least one integration before attempting to upload a file. To do this, press Expand, and select Add New in the Integrations section."),o.abrupt("return");case 10:return this.setState({status:"Encrypting..."}),o.abrupt("return",w.get().filesafe.encryptFile({data:e,inputFileName:t,fileType:n,credential:r}).then((function(e){return _.a.async((function(o){for(;;)switch(o.prev=o.next){case 0:return i.setState({status:"Uploading to ".concat(w.get().filesafe.displayStringForIntegration(a),"...")}),o.next=3,_.a.awrap(i.wait(.5));case 3:return o.abrupt("return",w.get().filesafe.uploadFile({fileItem:e,inputFileName:t,fileType:n,credential:r}).then((function(){i.setState({status:"Upload Success."}),setTimeout((function(){i.setState({status:null})}),2e3)})).catch((function(e){console.error("fs-embed | error uploading file:",e),i.flashError("Error uploading file.")})));case 4:case"end":return o.stop()}}))})));case 12:case"end":return o.stop()}}),null,this)}},{key:"flashError",value:function(e){var t=this;this.setState({status:e,statusClass:"danger"}),setTimeout((function(){t.setState({status:null,statusClass:null})}),2500)}},{key:"render",value:function(){var e=this,t=this.state.statusClass?this.state.statusClass:"info",n="info"==t;return a.a.createElement("div",{className:"sn-component files-view"},a.a.createElement("div",{className:"sk-panel-row align-top"},a.a.createElement("div",{className:"files"},this.state.messages.length>0&&a.a.createElement("div",{id:"messages-container",className:"sk-panel-section"},a.a.createElement(C,{messages:this.state.messages})),this.state.status&&a.a.createElement("div",{id:"file-upload-status",className:"sk-horizontal-group"},n&&a.a.createElement("div",{className:"sk-spinner info small"}),a.a.createElement("div",{className:t},this.state.status)),a.a.createElement("div",{id:"add-file-button-container"},a.a.createElement("div",{className:"file sk-button info"},a.a.createElement("label",{className:"no-style"},a.a.createElement("input",{type:"file",style:{display:"none"},onChange:function(t){e.handleDroppedFiles(t.target.files)}}),a.a.createElement("div",{id:"attach-file-button-label",className:"sk-label"},"Attach File")))),a.a.createElement(I,{files:this.state.noteFiles}))))}},{key:"rootElement",get:function(){return document.getElementById("filesafe-embed")}},{key:"dropContainer",get:function(){return document.getElementById("files-view")}},{key:"fileInput",get:function(){return document.getElementById("file-input")}}]),t}(a.a.Component),R=function(e){function t(e){var n;return u()(this,t),n=c()(this,p()(t).call(this,e)),k()(g()(n),"toggleVisibility",(function(){n.setState({expanded:!n.state.expanded})})),n.state={expanded:!1,files:w.get().filesafe.getAllFileDescriptors()||[]},w.get().addDataChangeObserver((function(){n.setState({files:w.get().filesafe.getAllFileDescriptors()})})),n}return y()(t,e),h()(t,[{key:"render",value:function(){return a.a.createElement("div",{className:"files-view"},a.a.createElement("div",{className:"sk-panel-row justify-left"},a.a.createElement("div",{className:"sk-horizontal-group"},a.a.createElement("div",{className:"sk-panel-section-title"},"All Files ",a.a.createElement("span",{style:{fontWeight:"normal"}},"(",this.state.files.length,")")),a.a.createElement("a",{className:"info",onClick:this.toggleVisibility},this.state.expanded?"Hide":"Show"))),this.state.expanded&&a.a.createElement("div",{className:"sk-panel-row"},a.a.createElement("div",{className:"files"},a.a.createElement(I,{files:this.state.files}))))}}]),t}(a.a.Component),F=function(e){function t(e){var n;return u()(this,t),n=c()(this,p()(t).call(this,e)),k()(g()(n),"handleKeyPress",(function(e){"Enter"===e.key&&n.submitIntegrationCode()})),k()(g()(n),"handleTextChange",(function(e){var t=e.target.value;n.setState({integrationCode:t})})),k()(g()(n),"submitIntegrationCode",(function(){var e=n.state.integrationCode;e&&0!=e.length&&w.get().filesafe.saveIntegrationFromCode(e).then((function(){n.setState({integrationCode:null,showInputForm:!1}),n.reloadIntegrations()})).catch((function(){alert("Invalid integration code. Ensure the correct value is copied and try again.")}))})),k()(g()(n),"addNewIntegrationClicked",(function(){window.open(w.get().defaultRelayServerUrl(),"_blank"),n.setState({showInputForm:!0})})),k()(g()(n),"cancelIntegrationForm",(function(){n.setState({showInputForm:!1})})),k()(g()(n),"deleteIntegration",(function(e){w.get().filesafe.deleteIntegration(e)})),k()(g()(n),"setIntegrationAsDefaultUploadSource",(function(e){w.get().filesafe.setIntegrationAsDefault(e)})),n.state={integrations:w.get().filesafe.getAllIntegrations()||[]},w.get().addDataChangeObserver((function(){n.reloadIntegrations()})),n}return y()(t,e),h()(t,[{key:"reloadIntegrations",value:function(){var e=w.get().filesafe.getAllIntegrations();this.setState({integrations:e})}},{key:"componentDidMount",value:function(){}},{key:"componentWillUnmount",value:function(){}},{key:"displayStringForIntegration",value:function(e){return w.get().filesafe.displayStringForIntegration(e)}},{key:"render",value:function(){var e=this,t=this.state.integrations.length>1;return a.a.createElement("div",null,a.a.createElement("div",{className:"sk-panel-row"},a.a.createElement("div",{className:"sk-h2 sk-bold"},"Integrations"),!this.state.showInputForm&&a.a.createElement("div",{className:"sk-button info no-border",onClick:this.addNewIntegrationClicked},a.a.createElement("div",{className:"sk-label"},"Add New"))),a.a.createElement("div",{id:"integrations"},this.state.showInputForm&&a.a.createElement("div",{className:"sk-notification info"},a.a.createElement("strong",null,"New Integration"),a.a.createElement("p",{className:"sk-p"},"A new tab has opened. After you complete the authentication flow, enter the code you receive below."),a.a.createElement("div",{className:"sk-panel-row"}),a.a.createElement("input",{className:"title sk-input contrast",type:"text",placeholder:"Enter integration code",value:this.state.integrationCode,onChange:this.handleTextChange,onKeyPress:this.handleKeyPress}),a.a.createElement("div",{className:"sk-button-group",style:{marginTop:10}},a.a.createElement("div",{className:"sk-button neutral",onClick:this.cancelIntegrationForm},a.a.createElement("a",{className:"sk-label"},"Cancel")),a.a.createElement("div",{className:"sk-button sk-base",onClick:this.submitIntegrationCode},a.a.createElement("a",{className:"sk-label"},"Submit"))))),a.a.createElement("div",{className:"list-container"},this.state.integrations.map((function(n){return a.a.createElement("div",{className:"list-item sk-horizontal-group top"},a.a.createElement("div",{className:"sk-circle x-small "+(n.content.isDefaultUploadSource?"info":"sk-secondary-contrast")}),a.a.createElement("div",null,a.a.createElement("div",{className:"sk-panel-row condensed sk-bold"},e.displayStringForIntegration(n)),a.a.createElement("div",{className:"sk-panel-row condensed"},a.a.createElement("div",{className:"sk-horizontal-group"},t&&!n.content.isDefaultUploadSource&&a.a.createElement("a",{className:"info",onClick:function(){e.setIntegrationAsDefaultUploadSource(n)}},"Make Default"),a.a.createElement("a",{className:"danger",onClick:function(){e.deleteIntegration(n)}},"Delete")))))}))))}}]),t}(a.a.Component),D=function(e){function t(e){var n;return u()(this,t),(n=c()(this,p()(t).call(this,e))).state={messages:[]},n}return y()(t,e),h()(t,[{key:"render",value:function(){return a.a.createElement("div",{id:"home",className:"sk-panel static"},a.a.createElement("div",{id:"main-content",className:"sk-panel-content"},a.a.createElement("div",{className:"sk-panel-section"},a.a.createElement(T,null)),a.a.createElement("div",{className:"sk-panel-section"},a.a.createElement(F,null)),a.a.createElement("div",{className:"sk-panel-section"},a.a.createElement(x,null)),a.a.createElement("div",{className:"sk-panel-section"},a.a.createElement(R,null))))}}]),t}(a.a.Component),P=function(e){function t(e){return u()(this,t),c()(this,p()(t).call(this,e))}return y()(t,e),h()(t,null,[{key:"renderInElement",value:function(e,n,r){w.get().setFilesafeInstance(n),w.get().setDelegate(r),o.a.render(a.a.createElement(t),e)}},{key:"unload",value:function(e){w.get().unload(),o.a.unmountComponentAtNode(e)}}]),h()(t,[{key:"render",value:function(){return a.a.createElement("div",{id:"filesafe-embed"},a.a.createElement("div",{className:"sn-component"},a.a.createElement(D,null)))}}]),t}(a.a.Component);t.default={FilesafeEmbed:P,React:a.a,ReactDOM:o.a}}])},function(e,t,n){"use strict";function r(e,t){for(var n=0;n0&&this.requestPermissions(this.initialPermissions);var t=!0,n=!1,r=void 0;try{for(var a,i=this.messageQueue[Symbol.iterator]();!(t=(a=i.next()).done);t=!0){var o=a.value;this.postMessage(o.action,o.data,o.callback)}}catch(e){n=!0,r=e}finally{try{t||null==i.return||i.return()}finally{if(n)throw r}}this.messageQueue=[],this.loggingEnabled&&console.log("onReadyData",e),this.activateThemes(e.activeThemeUrls||[]),this.onReadyCallback&&this.onReadyCallback()}},{key:"getSelfComponentUUID",value:function(){return this.uuid}},{key:"isRunningInDesktopApplication",value:function(){return"desktop"===this.environment}},{key:"setComponentDataValueForKey",value:function(e,t){this.componentData[e]=t,this.postMessage("set-component-data",{componentData:this.componentData},(function(e){}))}},{key:"clearComponentData",value:function(){this.componentData={},this.postMessage("set-component-data",{componentData:this.componentData},(function(e){}))}},{key:"componentDataValueForKey",value:function(e){return this.componentData[e]}},{key:"postMessage",value:function(e,t,n){if(this.sessionKey){var r={action:e,data:t,messageId:this.generateUUID(),sessionKey:this.sessionKey,api:"component"},a=JSON.parse(JSON.stringify(r));a.callback=n,this.sentMessages.push(a),this.isMobile&&(r=JSON.stringify(r)),this.loggingEnabled&&console.log("Posting message:",r),window.parent.postMessage(r,this.origin)}else this.messageQueue.push({action:e,data:t,callback:n})}},{key:"setSize",value:function(e,t,n){this.postMessage("set-size",{type:e,width:t,height:n},(function(e){}))}},{key:"requestPermissions",value:function(e,t){this.postMessage("request-permissions",{permissions:e},function(e){t&&t()}.bind(this))}},{key:"streamItems",value:function(e,t){Array.isArray(e)||(e=[e]),this.postMessage("stream-items",{content_types:e},function(e){t(e.items)}.bind(this))}},{key:"streamContextItem",value:function(e){var t=this;this.postMessage("stream-context-item",null,(function(n){var r=n.item;(!t.lastStreamedItem||t.lastStreamedItem.uuid!==r.uuid)&&t.pendingSaveTimeout&&(clearTimeout(t.pendingSaveTimeout),t._performSavingOfItems(t.pendingSaveParams),t.pendingSaveTimeout=null,t.pendingSaveParams=null),t.lastStreamedItem=r,e(t.lastStreamedItem)}))}},{key:"selectItem",value:function(e){this.postMessage("select-item",{item:this.jsonObjectForItem(e)})}},{key:"createItem",value:function(e,t){this.postMessage("create-item",{item:this.jsonObjectForItem(e)},function(e){var n=e.item;!n&&e.items&&e.items.length>0&&(n=e.items[0]),this.associateItem(n),t&&t(n)}.bind(this))}},{key:"createItems",value:function(e,t){var n=this,r=e.map((function(e){return n.jsonObjectForItem(e)}));this.postMessage("create-items",{items:r},function(e){t&&t(e.items)}.bind(this))}},{key:"associateItem",value:function(e){this.postMessage("associate-item",{item:this.jsonObjectForItem(e)})}},{key:"deassociateItem",value:function(e){this.postMessage("deassociate-item",{item:this.jsonObjectForItem(e)})}},{key:"clearSelection",value:function(){this.postMessage("clear-selection",{content_type:"Tag"})}},{key:"deleteItem",value:function(e,t){this.deleteItems([e],t)}},{key:"deleteItems",value:function(e,t){var n={items:e.map(function(e){return this.jsonObjectForItem(e)}.bind(this))};this.postMessage("delete-items",n,(function(e){t&&t(e)}))}},{key:"sendCustomEvent",value:function(e,t,n){this.postMessage(e,t,function(e){n&&n(e)}.bind(this))}},{key:"saveItem",value:function(e,t){var n=arguments.length>2&&void 0!==arguments[2]&&arguments[2];this.saveItems([e],t,n)}},{key:"saveItemWithPresave",value:function(e,t,n){this.saveItemsWithPresave([e],t,n)}},{key:"saveItemsWithPresave",value:function(e,t,n){this.saveItems(e,n,!1,t)}},{key:"_performSavingOfItems",value:function(e){var t=e.items,n=e.presave,r=e.callback;n&&n();var a=[],i=!0,o=!1,s=void 0;try{for(var u,l=t[Symbol.iterator]();!(i=(u=l.next()).done);i=!0){var c=u.value;a.push(this.jsonObjectForItem(c))}}catch(e){o=!0,s=e}finally{try{i||null==l.return||l.return()}finally{if(o)throw s}}this.postMessage("save-items",{items:a},(function(e){r&&r()}))}},{key:"saveItems",value:function(e,t){var n=this,r=arguments.length>2&&void 0!==arguments[2]&&arguments[2],a=arguments.length>3?arguments[3]:void 0;if(this.pendingSaveItems||(this.pendingSaveItems=[]),1!=this.coallesedSaving||r)this._performSavingOfItems({items:e,presave:a,callback:t});else{this.pendingSaveTimeout&&clearTimeout(this.pendingSaveTimeout);var i=e.map((function(e){return e.uuid})),o=this.pendingSaveItems.filter((function(e){return!i.includes(e.uuid)}));this.pendingSaveItems=o.concat(e),this.pendingSaveParams={items:this.pendingSaveItems,presave:a,callback:t},this.pendingSaveTimeout=setTimeout((function(){n._performSavingOfItems(n.pendingSaveParams),n.pendingSaveItems=[],n.pendingSaveTimeout=null,n.pendingSaveParams=null}),this.coallesedSavingDelay)}}},{key:"jsonObjectForItem",value:function(e){var t=Object.assign({},e);return t.children=null,t.parent=null,t}},{key:"getItemAppDataValue",value:function(e,t){var n=e.content.appData&&e.content.appData["org.standardnotes.sn"];return n?n[t]:null}},{key:"activateThemes",value:function(e){if(this.loggingEnabled&&console.log("Incoming themes",e),this.activeThemes.sort().toString()!=e.sort().toString()){var t=e||[],n=[],r=!0,a=!1,i=void 0;try{for(var o,s=this.activeThemes[Symbol.iterator]();!(r=(o=s.next()).done);r=!0){var u=o.value;e.includes(u)?t=t.filter((function(e){return e!=u})):n.push(u)}}catch(e){a=!0,i=e}finally{try{r||null==s.return||s.return()}finally{if(a)throw i}}this.loggingEnabled&&(console.log("Deactivating themes:",n),console.log("Activating themes:",t));for(var l=0,c=n;l>3]>>n%8*4&15;return("x"==e?r:3&r|8).toString(16)}))}var r=(new Date).getTime();return window.performance&&"function"==typeof window.performance.now&&(r+=performance.now()),"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,(function(e){var t=(r+16*Math.random())%16|0;return r=Math.floor(r/16),("x"==e?t:3&t|8).toString(16)}))}}])&&r(t.prototype,n),a&&r(t,a),e}();void 0!==e.exports&&(e.exports=a),window&&(window.ComponentManager=a)},function(e,t,n){"use strict"; +/** @license React v16.11.0 + * react.production.min.js + * + * Copyright (c) Facebook, Inc. and its affiliates. + * + * This source code is licensed under the MIT license found in the + * LICENSE file in the root directory of this source tree. + */var r=n(3),a="function"==typeof Symbol&&Symbol.for,i=a?Symbol.for("react.element"):60103,o=a?Symbol.for("react.portal"):60106,s=a?Symbol.for("react.fragment"):60107,u=a?Symbol.for("react.strict_mode"):60108,l=a?Symbol.for("react.profiler"):60114,c=a?Symbol.for("react.provider"):60109,f=a?Symbol.for("react.context"):60110,p=a?Symbol.for("react.forward_ref"):60112,d=a?Symbol.for("react.suspense"):60113;a&&Symbol.for("react.suspense_list");var h=a?Symbol.for("react.memo"):60115,m=a?Symbol.for("react.lazy"):60116;a&&Symbol.for("react.fundamental"),a&&Symbol.for("react.responder"),a&&Symbol.for("react.scope");var y="function"==typeof Symbol&&Symbol.iterator;function v(e){for(var t="https://reactjs.org/docs/error-decoder.html?invariant="+e,n=1;nD.length&&D.push(e)}function O(e,t,n){return null==e?0:function e(t,n,r,a){var s=typeof t;"undefined"!==s&&"boolean"!==s||(t=null);var u=!1;if(null===t)u=!0;else switch(s){case"string":case"number":u=!0;break;case"object":switch(t.$$typeof){case i:case o:u=!0}}if(u)return r(a,t,""===n?"."+A(t,0):n),1;if(u=0,n=""===n?".":n+":",Array.isArray(t))for(var l=0;l>>0?1:0)|0,O=P,A=M,P=F,M=D,F=T,D=R,T=X+(V=J+V+(($=Q+ee)>>>0>>0?1:0))+((R=G+$|0)>>>0>>0?1:0)|0}d=n.low=d+R,n.high=p+T+(d>>>0>>0?1:0),m=r.low=m+D,r.high=h+F+(m>>>0>>0?1:0),v=a.low=v+M,a.high=y+P+(v>>>0>>0?1:0),b=i.low=b+A,i.high=g+O+(b>>>0>>0?1:0),w=u.low=w+j,u.high=k+N+(w>>>0>>0?1:0),S=l.low=S+B,l.high=x+L+(S>>>0>>0?1:0),E=c.low=E+z,c.high=_+U+(E>>>0>>0?1:0),I=f.low=I+K,f.high=C+H+(I>>>0>>0?1:0)},_doFinalize:function(){var e=this._data,t=e.words,n=8*this._nDataBytes,r=8*e.sigBytes;return t[r>>>5]|=128<<24-r%32,t[30+(r+128>>>10<<5)]=Math.floor(n/4294967296),t[31+(r+128>>>10<<5)]=n,e.sigBytes=4*t.length,this._process(),this._hash.toX32()},clone:function(){var e=n.clone.call(this);return e._hash=this._hash.clone(),e},blockSize:32}),t.SHA512=n._createHelper(i),t.HmacSHA512=n._createHmacHelper(i)}(),s=(o=u).enc.Utf8,o.algo.HMAC=o.lib.Base.extend({init:function(e,t){e=this._hasher=new e.init,"string"==typeof t&&(t=s.parse(t));var n=e.blockSize,r=4*n;t.sigBytes>r&&(t=e.finalize(t)),t.clamp();for(var a=this._oKey=t.clone(),i=this._iKey=t.clone(),o=a.words,u=i.words,l=0;l>>2]|=(n[a>>>2]>>>24-a%4*8&255)<<24-(r+a)%4*8;else if(65535>>2]=n[a>>>2];else t.push.apply(t,n);return this.sigBytes+=e,this},clamp:function(){var t=this.words,n=this.sigBytes;t[n>>>2]&=4294967295<<32-n%4*8,t.length=e.ceil(n/4)},clone:function(){var e=i.clone.call(this);return e.words=this.words.slice(0),e},random:function(t){for(var n=[],r=0;r>>2]>>>24-r%4*8&255;n.push((a>>>4).toString(16)),n.push((15&a).toString(16))}return n.join("")},parse:function(e){for(var t=e.length,n=[],r=0;r>>3]|=parseInt(e.substr(r,2),16)<<24-r%8*4;return new o.init(n,t/2)}},l=s.Latin1={stringify:function(e){var t=e.words;e=e.sigBytes;for(var n=[],r=0;r>>2]>>>24-r%4*8&255));return n.join("")},parse:function(e){for(var t=e.length,n=[],r=0;r>>2]|=(255&e.charCodeAt(r))<<24-r%4*8;return new o.init(n,t)}},c=s.Utf8={stringify:function(e){try{return decodeURIComponent(escape(l.stringify(e)))}catch(e){throw Error("Malformed UTF-8 data")}},parse:function(e){return l.parse(unescape(encodeURIComponent(e)))}},f=r.BufferedBlockAlgorithm=i.extend({reset:function(){this._data=new o.init,this._nDataBytes=0},_append:function(e){"string"==typeof e&&(e=c.parse(e)),this._data.concat(e),this._nDataBytes+=e.sigBytes},_process:function(t){var n=this._data,r=n.words,a=n.sigBytes,i=this.blockSize,s=a/(4*i);if(t=(s=t?e.ceil(s):e.max((0|s)-this._minBufferSize,0))*i,a=e.min(4*t,a),t){for(var u=0;ul;l++){if(16>l)r[l]=0|e[t+l];else{var c=r[l-3]^r[l-8]^r[l-14]^r[l-16];r[l]=c<<1|c>>>31}c=(a<<5|a>>>27)+u+r[l],c=20>l?c+(1518500249+(i&o|~i&s)):40>l?c+(1859775393+(i^o^s)):60>l?c+((i&o|i&s|o&s)-1894007588):c+((i^o^s)-899497514),u=s,s=o,o=i<<30|i>>>2,i=a,a=c}n[0]=n[0]+a|0,n[1]=n[1]+i|0,n[2]=n[2]+o|0,n[3]=n[3]+s|0,n[4]=n[4]+u|0},_doFinalize:function(){var e=this._data,t=e.words,n=8*this._nDataBytes,r=8*e.sigBytes;return t[r>>>5]|=128<<24-r%32,t[14+(r+64>>>9<<4)]=Math.floor(n/4294967296),t[15+(r+64>>>9<<4)]=n,e.sigBytes=4*t.length,this._process(),this._hash},clone:function(){var e=n.clone.call(this);return e._hash=this._hash.clone(),e}});e.SHA1=n._createHelper(a),e.HmacSHA1=n._createHmacHelper(a)}(),function(){var e=u,t=e.enc.Utf8;e.algo.HMAC=e.lib.Base.extend({init:function(e,n){e=this._hasher=new e.init,"string"==typeof n&&(n=t.parse(n));var r=e.blockSize,a=4*r;n.sigBytes>a&&(n=e.finalize(n)),n.clamp();for(var i=this._oKey=n.clone(),o=this._iKey=n.clone(),s=i.words,u=o.words,l=0;l>>2]|=(n[a>>>2]>>>24-a%4*8&255)<<24-(r+a)%4*8;else if(65535>>2]=n[a>>>2];else t.push.apply(t,n);return this.sigBytes+=e,this},clamp:function(){var t=this.words,n=this.sigBytes;t[n>>>2]&=4294967295<<32-n%4*8,t.length=e.ceil(n/4)},clone:function(){var e=i.clone.call(this);return e.words=this.words.slice(0),e},random:function(t){for(var n=[],r=0;r>>2]>>>24-r%4*8&255;n.push((a>>>4).toString(16)),n.push((15&a).toString(16))}return n.join("")},parse:function(e){for(var t=e.length,n=[],r=0;r>>3]|=parseInt(e.substr(r,2),16)<<24-r%8*4;return new o.init(n,t/2)}},l=s.Latin1={stringify:function(e){var t=e.words;e=e.sigBytes;for(var n=[],r=0;r>>2]>>>24-r%4*8&255));return n.join("")},parse:function(e){for(var t=e.length,n=[],r=0;r>>2]|=(255&e.charCodeAt(r))<<24-r%4*8;return new o.init(n,t)}},c=s.Utf8={stringify:function(e){try{return decodeURIComponent(escape(l.stringify(e)))}catch(e){throw Error("Malformed UTF-8 data")}},parse:function(e){return l.parse(unescape(encodeURIComponent(e)))}},f=r.BufferedBlockAlgorithm=i.extend({reset:function(){this._data=new o.init,this._nDataBytes=0},_append:function(e){"string"==typeof e&&(e=c.parse(e)),this._data.concat(e),this._nDataBytes+=e.sigBytes},_process:function(t){var n=this._data,r=n.words,a=n.sigBytes,i=this.blockSize,s=a/(4*i);if(t=(s=t?e.ceil(s):e.max((0|s)-this._minBufferSize,0))*i,a=e.min(4*t,a),t){for(var u=0;ul;l++){if(16>l)r[l]=0|e[t+l];else{var c=r[l-3]^r[l-8]^r[l-14]^r[l-16];r[l]=c<<1|c>>>31}c=(a<<5|a>>>27)+u+r[l],c=20>l?c+(1518500249+(i&o|~i&s)):40>l?c+(1859775393+(i^o^s)):60>l?c+((i&o|i&s|o&s)-1894007588):c+((i^o^s)-899497514),u=s,s=o,o=i<<30|i>>>2,i=a,a=c}n[0]=n[0]+a|0,n[1]=n[1]+i|0,n[2]=n[2]+o|0,n[3]=n[3]+s|0,n[4]=n[4]+u|0},_doFinalize:function(){var e=this._data,t=e.words,n=8*this._nDataBytes,r=8*e.sigBytes;return t[r>>>5]|=128<<24-r%32,t[14+(r+64>>>9<<4)]=Math.floor(n/4294967296),t[15+(r+64>>>9<<4)]=n,e.sigBytes=4*t.length,this._process(),this._hash},clone:function(){var e=n.clone.call(this);return e._hash=this._hash.clone(),e}});e.SHA1=n._createHelper(a),e.HmacSHA1=n._createHmacHelper(a)}(),Object.defineProperty(r,"__esModule",{value:!0}),r.StandardFile=r.SFItemTransformer=r.SFCryptoWeb=r.SFCryptoJS=r.SFAbstractCrypto=r.SFItemHistoryEntry=r.SFItemHistory=r.SFHistorySession=r.SFPrivileges=r.SFPredicate=r.SFItemParams=r.SFItem=r.SFSyncManager=r.SFStorageManager=r.SFSingletonManager=r.SFSessionHistoryManager=r.SFPrivilegesManager=r.SFModelManager=r.SFMigrationManager=r.SFHttpManager=r.SFAuthManager=r.SFAlertManager=void 0;var k=function(){function e(){v(this,e)}var t,n;return b(e,[{key:"alert",value:(n=y(regeneratorRuntime.mark((function e(t){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",new Promise((function(e,n){window.alert(t.text),e()})));case 1:case"end":return e.stop()}}),e)}))),function(e){return n.apply(this,arguments)})},{key:"confirm",value:(t=y(regeneratorRuntime.mark((function e(t){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",new Promise((function(e,n){window.confirm(t.text)?e():n()})));case 1:case"end":return e.stop()}}),e)}))),function(e){return t.apply(this,arguments)})}]),e}();r.SFAlertManager=k;var w=function(){function e(t,n,r,a){v(this,e),e.DidSignOutEvent="DidSignOutEvent",e.WillSignInEvent="WillSignInEvent",e.DidSignInEvent="DidSignInEvent",this.httpManager=n,this.storageManager=t,this.alertManager=r||new k,this.$timeout=a||setTimeout.bind(window),this.eventHandlers=[]}var t,n,r,a,i,o,s,u,l,c;return b(e,[{key:"addEventHandler",value:function(e){return this.eventHandlers.push(e),e}},{key:"removeEventHandler",value:function(e){_.pull(this.eventHandlers,e)}},{key:"notifyEvent",value:function(e,t){var n=!0,r=!1,a=void 0;try{for(var i,o=this.eventHandlers[Symbol.iterator]();!(n=(i=o.next()).done);n=!0)(0,i.value)(e,t||{})}catch(e){r=!0,a=e}finally{try{n||null==o.return||o.return()}finally{if(r)throw a}}}},{key:"saveKeys",value:(c=y(regeneratorRuntime.mark((function e(t){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return this._keys=t,e.next=3,this.storageManager.setItem("mk",t.mk);case 3:return e.next=5,this.storageManager.setItem("ak",t.ak);case 5:case"end":return e.stop()}}),e,this)}))),function(e){return c.apply(this,arguments)})},{key:"signout",value:(l=y(regeneratorRuntime.mark((function t(n){var r=this;return regeneratorRuntime.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(this._keys=null,this._authParams=null,!n){t.next=6;break}return t.abrupt("return",this.storageManager.clearAllData().then((function(){r.notifyEvent(e.DidSignOutEvent)})));case 6:this.notifyEvent(e.DidSignOutEvent);case 7:case"end":return t.stop()}}),t,this)}))),function(e){return l.apply(this,arguments)})},{key:"keys",value:(u=y(regeneratorRuntime.mark((function e(){var t;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(this._keys){e.next=11;break}return e.next=3,this.storageManager.getItem("mk");case 3:if(t=e.sent){e.next=6;break}return e.abrupt("return",null);case 6:return e.t0=t,e.next=9,this.storageManager.getItem("ak");case 9:e.t1=e.sent,this._keys={mk:e.t0,ak:e.t1};case 11:return e.abrupt("return",this._keys);case 12:case"end":return e.stop()}}),e,this)}))),function(){return u.apply(this,arguments)})},{key:"getAuthParams",value:(s=y(regeneratorRuntime.mark((function e(){var t;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(this._authParams){e.next=5;break}return e.next=3,this.storageManager.getItem("auth_params");case 3:t=e.sent,this._authParams=JSON.parse(t);case 5:if(!this._authParams||this._authParams.version){e.next=9;break}return e.next=8,this.defaultProtocolVersion();case 8:this._authParams.version=e.sent;case 9:return e.abrupt("return",this._authParams);case 10:case"end":return e.stop()}}),e,this)}))),function(){return s.apply(this,arguments)})},{key:"defaultProtocolVersion",value:(o=y(regeneratorRuntime.mark((function e(){var t;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.keys();case 2:if(!(t=e.sent)||!t.ak){e.next=7;break}return e.abrupt("return","002");case 7:return e.abrupt("return","001");case 8:case"end":return e.stop()}}),e,this)}))),function(){return o.apply(this,arguments)})},{key:"protocolVersion",value:(i=y(regeneratorRuntime.mark((function e(){var t;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.getAuthParams();case 2:if(!(t=e.sent)||!t.version){e.next=5;break}return e.abrupt("return",t.version);case 5:return e.abrupt("return",this.defaultProtocolVersion());case 6:case"end":return e.stop()}}),e,this)}))),function(){return i.apply(this,arguments)})},{key:"getAuthParamsForEmail",value:(a=y(regeneratorRuntime.mark((function e(t,n,r){var a,i=this;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return(a=_.merge({email:n},r)).api=S.getApiVersion(),e.abrupt("return",new Promise((function(e,n){var r=t+"/auth/params";i.httpManager.getAbsolute(r,a,(function(t){e(t)}),(function(t){console.error("Error getting auth params",t),"object"!==h(t)&&(t={error:{message:"A server error occurred while trying to sign in. Please try again."}}),e(t)}))})));case 3:case"end":return e.stop()}}),e)}))),function(e,t,n){return a.apply(this,arguments)})},{key:"lock",value:function(){this.locked=!0}},{key:"unlock",value:function(){this.locked=!1}},{key:"isLocked",value:function(){return 1==this.locked}},{key:"unlockAndResolve",value:function(e,t){this.unlock(),e(t)}},{key:"login",value:(r=y(regeneratorRuntime.mark((function t(n,r,a,i,o){var s=this;return regeneratorRuntime.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.abrupt("return",new Promise(function(){var t=y(regeneratorRuntime.mark((function t(u,l){var c,f,p,d,m,v,g,b,k,w;return regeneratorRuntime.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.next=2,s.keys();case 2:if(null==t.sent){t.next=6;break}return u({error:{message:"Cannot log in because already signed in."}}),t.abrupt("return");case 6:if(!s.isLocked()){t.next=9;break}return u({error:{message:"Login already in progress."}}),t.abrupt("return");case 9:return s.lock(),s.notifyEvent(e.WillSignInEvent),t.next=13,s.getAuthParamsForEmail(n,r,o);case 13:if((c=t.sent).identifier=r,!c.error){t.next=18;break}return s.unlockAndResolve(u,c),t.abrupt("return");case 18:if(c&&c.pw_cost){t.next=21;break}return s.unlockAndResolve(u,{error:{message:"Invalid email or password."}}),t.abrupt("return");case 21:if(SFJS.supportedVersions().includes(c.version)){t.next=25;break}return f=SFJS.isVersionNewerThanLibraryVersion(c.version)?"This version of the application does not support your newer account type. Please upgrade to the latest version of Standard Notes to sign in.":"The protocol version associated with your account is outdated and no longer supported by this application. Please visit standardnotes.org/help/security for more information.",s.unlockAndResolve(u,{error:{message:f}}),t.abrupt("return");case 25:if(!SFJS.isProtocolVersionOutdated(c.version)){t.next=32;break}return p="The encryption version for your account, ".concat(c.version,", is outdated and requires upgrade. You may proceed with login, but are advised to perform a security update using the web or desktop application. Please visit standardnotes.org/help/security for more information."),d=!1,t.next=30,s.alertManager.confirm({title:"Update Needed",text:p,confirmButtonText:"Sign In"}).catch((function(){s.unlockAndResolve(u,{error:{}}),d=!0}));case 30:if(!d){t.next=32;break}return t.abrupt("return");case 32:if(SFJS.supportsPasswordDerivationCost(c.pw_cost)){t.next=36;break}return s.unlockAndResolve(u,{error:{message:"Your account was created on a platform with higher security capabilities than this browser supports. If we attempted to generate your login keys here, it would take hours. Please use a browser with more up to date security capabilities, like Google Chrome or Firefox, to log in."}}),t.abrupt("return");case 36:if(m=SFJS.costMinimumForVersion(c.version),!(c.pw_cost5&&void 0!==u[5]&&u[5],e.abrupt("return",new Promise(function(){var e=y(regeneratorRuntime.mark((function e(u,l){var c;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if((c=new XMLHttpRequest).onreadystatechange=function(){if(4==c.readyState){var e=c.responseText;if(e)try{e=JSON.parse(e)}catch(e){}c.status>=200&&c.status<=299?s.$timeout((function(){a(e),u(e)})):(console.error("Request error:",e),s.$timeout((function(){i(e,c.status),l(e)})))}},"get"==t&&Object.keys(r).length>0&&(n=s.urlForUrlAndParams(n,r)),c.open(t,n,!0),c.setRequestHeader("Content-type","application/json"),!o){e.next=8;break}return e.next=8,s.setAuthHeadersForRequest(c);case 8:"post"==t||"patch"==t?c.send(JSON.stringify(r)):c.send();case 9:case"end":return e.stop()}}),e)})));return function(t,n){return e.apply(this,arguments)}}()));case 2:case"end":return e.stop()}}),e)}))),function(e,n,r,a,i){return t.apply(this,arguments)})},{key:"urlForUrlAndParams",value:function(e,t){var n=Object.keys(t).map((function(e){return e+"="+encodeURIComponent(t[e])})).join("&");return e.includes("?")?e+"&"+n:e+"?"+n}}]),e}();r.SFHttpManager=S;var E=function(){function e(t,n,r,a){var i=this;v(this,e),this.modelManager=t,this.syncManager=n,this.storageManager=r,this.completionHandlers=[],this.loadMigrations();var o=!1,s=a.addEventHandler((function(e){e==w.DidSignInEvent&&(o=!0)}));this.receivedLocalDataEvent=n.initialDataLoaded(),this.syncManager.addEventHandler(function(){var e=y(regeneratorRuntime.mark((function e(t,n){var r,u,l,c,f,p,d,h,m;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(u="sync:completed"==t,!(r="local-data-loaded"==t)&&!u){e.next=40;break}if(r?i.receivedLocalDataEvent=!0:u&&(i.receivedSyncCompletedEvent=!0),!i.receivedLocalDataEvent||!i.receivedSyncCompletedEvent){e.next=40;break}if(!o){e.next=39;break}return o=!1,a.removeEventHandler(s),e.next=10,i.getCompletedMigrations();case 10:l=e.sent.slice(),c=!0,f=!1,p=void 0,e.prev=14,d=l[Symbol.iterator]();case 16:if(c=(h=d.next()).done){e.next=25;break}return m=h.value,e.next=20,i.migrationForEncodedName(m);case 20:e.sent.runOnlyOnce||_.pull(i._completed,m);case 22:c=!0,e.next=16;break;case 25:e.next=31;break;case 27:e.prev=27,e.t0=e.catch(14),f=!0,p=e.t0;case 31:e.prev=31,e.prev=32,c||null==d.return||d.return();case 34:if(e.prev=34,!f){e.next=37;break}throw p;case 37:return e.finish(34);case 38:return e.finish(31);case 39:i.runPendingMigrations();case 40:case"end":return e.stop()}}),e,null,[[14,27,31,39],[32,,34,38]])})));return function(t,n){return e.apply(this,arguments)}}())}var t,n,r,a,i,o,s,u;return b(e,[{key:"addCompletionHandler",value:function(e){this.completionHandlers.push(e)}},{key:"removeCompletionHandler",value:function(e){_.pull(this.completionHandlers,e)}},{key:"migrationForEncodedName",value:(u=y(regeneratorRuntime.mark((function e(t){var n;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.decode(t);case 2:return n=e.sent,e.abrupt("return",this.migrations.find((function(e){return e.name==n})));case 4:case"end":return e.stop()}}),e,this)}))),function(e){return u.apply(this,arguments)})},{key:"loadMigrations",value:function(){this.migrations=this.registeredMigrations()}},{key:"registeredMigrations",value:function(){}},{key:"runPendingMigrations",value:(s=y(regeneratorRuntime.mark((function e(){var t,n,r,a,i,o,s,u,l,c,f,p,d,h,m,y,v,g,b,k,w,x,S,_,E,C,I,T;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.getPendingMigrations();case 2:for(t=e.sent,n=!0,r=!1,a=void 0,e.prev=6,i=t[Symbol.iterator]();!(n=(o=i.next()).done);n=!0)(s=o.value).items=[];e.next=14;break;case 10:e.prev=10,e.t0=e.catch(6),r=!0,a=e.t0;case 14:e.prev=14,e.prev=15,n||null==i.return||i.return();case 17:if(e.prev=17,!r){e.next=20;break}throw a;case 20:return e.finish(17);case 21:return e.finish(14);case 22:u=!0,l=!1,c=void 0,e.prev=25,f=this.modelManager.allNondummyItems[Symbol.iterator]();case 27:if(u=(p=f.next()).done){e.next=51;break}for(d=p.value,h=!0,m=!1,y=void 0,e.prev=32,v=t[Symbol.iterator]();!(h=(g=v.next()).done);h=!0)s=g.value,d.content_type==s.content_type&&s.items.push(d);e.next=40;break;case 36:e.prev=36,e.t1=e.catch(32),m=!0,y=e.t1;case 40:e.prev=40,e.prev=41,h||null==v.return||v.return();case 43:if(e.prev=43,!m){e.next=46;break}throw y;case 46:return e.finish(43);case 47:return e.finish(40);case 48:u=!0,e.next=27;break;case 51:e.next=57;break;case 53:e.prev=53,e.t2=e.catch(25),l=!0,c=e.t2;case 57:e.prev=57,e.prev=58,u||null==f.return||f.return();case 60:if(e.prev=60,!l){e.next=63;break}throw c;case 63:return e.finish(60);case 64:return e.finish(57);case 65:b=!0,k=!1,w=void 0,e.prev=68,x=t[Symbol.iterator]();case 70:if(b=(S=x.next()).done){e.next=81;break}if(!((s=S.value).items&&s.items.length>0||s.customHandler)){e.next=77;break}return e.next=75,this.runMigration(s,s.items);case 75:e.next=78;break;case 77:this.markMigrationCompleted(s);case 78:b=!0,e.next=70;break;case 81:e.next=87;break;case 83:e.prev=83,e.t3=e.catch(68),k=!0,w=e.t3;case 87:e.prev=87,e.prev=88,b||null==x.return||x.return();case 90:if(e.prev=90,!k){e.next=93;break}throw w;case 93:return e.finish(90);case 94:return e.finish(87);case 95:for(_=!0,E=!1,C=void 0,e.prev=98,I=this.completionHandlers[Symbol.iterator]();!(_=(T=I.next()).done);_=!0)(0,T.value)();e.next=106;break;case 102:e.prev=102,e.t4=e.catch(98),E=!0,C=e.t4;case 106:e.prev=106,e.prev=107,_||null==I.return||I.return();case 109:if(e.prev=109,!E){e.next=112;break}throw C;case 112:return e.finish(109);case 113:return e.finish(106);case 114:case"end":return e.stop()}}),e,this,[[6,10,14,22],[15,,17,21],[25,53,57,65],[32,36,40,48],[41,,43,47],[58,,60,64],[68,83,87,95],[88,,90,94],[98,102,106,114],[107,,109,113]])}))),function(){return s.apply(this,arguments)})},{key:"encode",value:(o=y(regeneratorRuntime.mark((function e(t){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",window.btoa(t));case 1:case"end":return e.stop()}}),e)}))),function(e){return o.apply(this,arguments)})},{key:"decode",value:(i=y(regeneratorRuntime.mark((function e(t){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",window.atob(t));case 1:case"end":return e.stop()}}),e)}))),function(e){return i.apply(this,arguments)})},{key:"getCompletedMigrations",value:(a=y(regeneratorRuntime.mark((function e(){var t;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(this._completed){e.next=5;break}return e.next=3,this.storageManager.getItem("migrations");case 3:t=e.sent,this._completed=t?JSON.parse(t):[];case 5:return e.abrupt("return",this._completed);case 6:case"end":return e.stop()}}),e,this)}))),function(){return a.apply(this,arguments)})},{key:"getPendingMigrations",value:(r=y(regeneratorRuntime.mark((function e(){var t,n,r,a,i,o,s,u;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.getCompletedMigrations();case 2:t=e.sent,n=[],r=!0,a=!1,i=void 0,e.prev=7,o=this.migrations[Symbol.iterator]();case 9:if(r=(s=o.next()).done){e.next=22;break}return u=s.value,e.t0=t,e.next=14,this.encode(u.name);case 14:if(e.t1=e.sent,e.t2=e.t0.indexOf.call(e.t0,e.t1),e.t3=-1,e.t2!=e.t3){e.next=19;break}n.push(u);case 19:r=!0,e.next=9;break;case 22:e.next=28;break;case 24:e.prev=24,e.t4=e.catch(7),a=!0,i=e.t4;case 28:e.prev=28,e.prev=29,r||null==o.return||o.return();case 31:if(e.prev=31,!a){e.next=34;break}throw i;case 34:return e.finish(31);case 35:return e.finish(28);case 36:return e.abrupt("return",n);case 37:case"end":return e.stop()}}),e,this,[[7,24,28,36],[29,,31,35]])}))),function(){return r.apply(this,arguments)})},{key:"markMigrationCompleted",value:(n=y(regeneratorRuntime.mark((function e(t){var n;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.getCompletedMigrations();case 2:return n=e.sent,e.t0=n,e.next=6,this.encode(t.name);case 6:e.t1=e.sent,e.t0.push.call(e.t0,e.t1),this.storageManager.setItem("migrations",JSON.stringify(n)),t.running=!1;case 10:case"end":return e.stop()}}),e,this)}))),function(e){return n.apply(this,arguments)})},{key:"runMigration",value:(t=y(regeneratorRuntime.mark((function e(t,n){var r=this;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!t.running){e.next=2;break}return e.abrupt("return");case 2:if(console.log("Running migration:",t.name),t.running=!0,!t.customHandler){e.next=8;break}return e.abrupt("return",t.customHandler().then((function(){r.markMigrationCompleted(t)})));case 8:return e.abrupt("return",t.handler(n).then((function(){r.markMigrationCompleted(t)})));case 9:case"end":return e.stop()}}),e)}))),function(e,n){return t.apply(this,arguments)})}]),e}();r.SFMigrationManager=E;var C=function(){function e(t){v(this,e),e.MappingSourceRemoteRetrieved="MappingSourceRemoteRetrieved",e.MappingSourceRemoteSaved="MappingSourceRemoteSaved",e.MappingSourceLocalSaved="MappingSourceLocalSaved",e.MappingSourceLocalRetrieved="MappingSourceLocalRetrieved",e.MappingSourceLocalDirtied="MappingSourceLocalDirtied",e.MappingSourceComponentRetrieved="MappingSourceComponentRetrieved",e.MappingSourceDesktopInstalled="MappingSourceDesktopInstalled",e.MappingSourceRemoteActionRetrieved="MappingSourceRemoteActionRetrieved",e.MappingSourceFileImport="MappingSourceFileImport",e.isMappingSourceRetrieved=function(t){return[e.MappingSourceRemoteRetrieved,e.MappingSourceComponentRetrieved,e.MappingSourceRemoteActionRetrieved].includes(t)},this.$timeout=t||setTimeout.bind(window),this.itemSyncObservers=[],this.items=[],this.itemsHash={},this.missedReferences={},this.uuidChangeObservers=[]}var t,n,r,a,i,o,s,u,l,c,f,p;return b(e,[{key:"handleSignout",value:function(){this.items.length=0,this.itemsHash={},this.missedReferences={}}},{key:"addModelUuidChangeObserver",value:function(e,t){this.uuidChangeObservers.push({id:e,callback:t})}},{key:"notifyObserversOfUuidChange",value:function(e,t){var n=!0,r=!1,a=void 0;try{for(var i,o=this.uuidChangeObservers[Symbol.iterator]();!(n=(i=o.next()).done);n=!0){var s=i.value;try{s.callback(e,t)}catch(e){console.error("Notify observers of uuid change exception:",e)}}}catch(e){r=!0,a=e}finally{try{n||null==o.return||o.return()}finally{if(r)throw a}}}},{key:"alternateUUIDForItem",value:(p=y(regeneratorRuntime.mark((function t(n){var r,a,i,o,s,u,l;return regeneratorRuntime.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return r=this.createItem(n),t.next=3,SFJS.crypto.generateUUID();case 3:for(r.uuid=t.sent,r.informReferencesOfUUIDChange(n.uuid,r.uuid),this.informModelsOfUUIDChangeForItem(r,n.uuid,r.uuid),a=!0,i=!1,o=void 0,t.prev=9,s=n.referencingObjects[Symbol.iterator]();!(a=(u=s.next()).done);a=!0)(l=u.value).setIsNoLongerBeingReferencedBy(n),n.setIsNoLongerBeingReferencedBy(l),l.addItemAsRelationship(r);t.next=17;break;case 13:t.prev=13,t.t0=t.catch(9),i=!0,o=t.t0;case 17:t.prev=17,t.prev=18,a||null==s.return||s.return();case 20:if(t.prev=20,!i){t.next=23;break}throw o;case 23:return t.finish(20);case 24:return t.finish(17);case 25:return this.setItemsDirty(n.referencingObjects,!0),this.resolveReferencesForItem(r),this.loggingEnabled&&console.log(n.uuid,"--\x3e",r.uuid),n.deleted=!0,n.content.references=[],this.setItemDirty(n,!1,!1,e.MappingSourceLocalSaved),t.next=33,this.mapResponseItemsToLocalModels([n],e.MappingSourceLocalSaved);case 33:return this.addItem(r),this.setItemDirty(r,!0,!0,e.MappingSourceLocalSaved),this.notifyObserversOfUuidChange(n,r),t.abrupt("return",r);case 37:case"end":return t.stop()}}),t,this,[[9,13,17,25],[18,,20,24]])}))),function(e){return p.apply(this,arguments)})},{key:"informModelsOfUUIDChangeForItem",value:function(e,t,n){var r=!0,a=!1,i=void 0;try{for(var o,s=this.items[Symbol.iterator]();!(r=(o=s.next()).done);r=!0)o.value.potentialItemOfInterestHasChangedItsUUID(e,t,n)}catch(e){a=!0,i=e}finally{try{r||null==s.return||s.return()}finally{if(a)throw i}}}},{key:"didSyncModelsOffline",value:function(t){this.notifySyncObserversOfModels(t,e.MappingSourceLocalSaved)}},{key:"mapResponseItemsToLocalModels",value:(f=y(regeneratorRuntime.mark((function e(t,n,r){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.mapResponseItemsToLocalModelsWithOptions({items:t,source:n,sourceKey:r}));case 1:case"end":return e.stop()}}),e,this)}))),function(e,t,n){return f.apply(this,arguments)})},{key:"mapResponseItemsToLocalModelsOmittingFields",value:(c=y(regeneratorRuntime.mark((function e(t,n,r,a){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.mapResponseItemsToLocalModelsWithOptions({items:t,omitFields:n,source:r,sourceKey:a}));case 1:case"end":return e.stop()}}),e,this)}))),function(e,t,n,r){return c.apply(this,arguments)})},{key:"mapResponseItemsToLocalModelsWithOptions",value:(l=y(regeneratorRuntime.mark((function e(t){var n,r,a,i,o,s,u,l,c,f,p,h,m,y,v,g,b,k,w,x,S,_,E,C,I,T,R,F,D,P,M,O,A,N,j,L,B,U,z;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:n=t.items,r=t.omitFields,a=t.source,i=t.sourceKey,t.options,o=[],s=[],u=[],l=!0,c=!1,f=void 0,e.prev=5,p=n[Symbol.iterator]();case 7:if(l=(h=p.next()).done){e.next=58;break}if(m=h.value){e.next=11;break}return e.abrupt("continue",55);case 11:if(y=!m.content&&!m.errorDecrypting,m.content_type&&m.uuid&&!y||m.deleted){e.next=16;break}return console.error("Server response item is corrupt:",m),e.abrupt("continue",55);case 16:if(!Array.isArray(r)){e.next=36;break}for(v=!0,g=!1,b=void 0,e.prev=20,k=r[Symbol.iterator]();!(v=(w=k.next()).done);v=!0)x=w.value,delete m[x];e.next=28;break;case 24:e.prev=24,e.t0=e.catch(20),g=!0,b=e.t0;case 28:e.prev=28,e.prev=29,v||null==k.return||k.return();case 31:if(e.prev=31,!g){e.next=34;break}throw b;case 34:return e.finish(31);case 35:return e.finish(28);case 36:if((S=this.findItem(m.uuid))&&(S.updateFromJSON(m),S.dummy=!1),_=m.content_type||S&&S.content_type,!this.acceptableContentTypes||this.acceptableContentTypes.includes(_)){e.next=42;break}return e.abrupt("continue",55);case 42:if(E=!1,1!=m.deleted){e.next=50;break}if(!m.dirty){e.next=48;break}E=!0,e.next=50;break;case 48:return S&&(o.push(S),u.push(S),this.removeItemLocally(S)),e.abrupt("continue",55);case 50:S||(S=this.createItem(m)),this.addItem(S,E),S.errorDecrypting||u.push(S),o.push(S),s.push(m);case 55:l=!0,e.next=7;break;case 58:e.next=64;break;case 60:e.prev=60,e.t1=e.catch(5),c=!0,f=e.t1;case 64:e.prev=64,e.prev=65,l||null==p.return||p.return();case 67:if(e.prev=67,!c){e.next=70;break}throw f;case 70:return e.finish(67);case 71:return e.finish(64);case 72:for(C=!0,I=!1,T=void 0,e.prev=75,R=s.entries()[Symbol.iterator]();!(C=(F=R.next()).done);C=!0)D=d(F.value,2),P=D[0],M=D[1],O=o[P],M.content&&this.resolveReferencesForItem(O),O.didFinishSyncing();e.next=83;break;case 79:e.prev=79,e.t2=e.catch(75),I=!0,T=e.t2;case 83:e.prev=83,e.prev=84,C||null==R.return||R.return();case 86:if(e.prev=86,!I){e.next=89;break}throw T;case 89:return e.finish(86);case 90:return e.finish(83);case 91:for(A=this.popMissedReferenceStructsForObjects(s),N=!0,j=!1,L=void 0,e.prev=95,B=function(){var e=z.value,t=o.find((function(t){return t.uuid==e.reference_uuid}));t&&e.for_item.addItemAsRelationship(t)},U=A[Symbol.iterator]();!(N=(z=U.next()).done);N=!0)B();e.next=104;break;case 100:e.prev=100,e.t3=e.catch(95),j=!0,L=e.t3;case 104:e.prev=104,e.prev=105,N||null==U.return||U.return();case 107:if(e.prev=107,!j){e.next=110;break}throw L;case 110:return e.finish(107);case 111:return e.finish(104);case 112:return e.next=114,this.notifySyncObserversOfModels(u,a,i);case 114:return e.abrupt("return",o);case 115:case"end":return e.stop()}}),e,this,[[5,60,64,72],[20,24,28,36],[29,,31,35],[65,,67,71],[75,79,83,91],[84,,86,90],[95,100,104,112],[105,,107,111]])}))),function(e){return l.apply(this,arguments)})},{key:"missedReferenceBuildKey",value:function(e,t){return"".concat(e,":").concat(t)}},{key:"popMissedReferenceStructsForObjects",value:function(e){if(!e||0==e.length)return[];for(var t=[],n=[],r=e.map((function(e){return e.uuid})),a=r[0].length,i=0,o=Object.keys(this.missedReferences);i1&&void 0!==arguments[1]&&arguments[1];if(!e.errorDecrypting){var n=e.contentObject;if(e.updateLocalRelationships(),n.references){var r=n.references.slice(),a=r.map((function(e){return e.uuid})),i=!0,o=this.findItems(a,i),s=!0,u=!1,l=void 0;try{for(var c,f=o.entries()[Symbol.iterator]();!(s=(c=f.next()).done);s=!0){var p=d(c.value,2),h=p[0],m=p[1];if(m)e.addItemAsRelationship(m),t&&this.setItemDirty(m,!0);else{var y=a[h],v=this.missedReferenceBuildKey(y,e.uuid);if(!this.missedReferences[v]){var g={reference_uuid:y,for_item:e};this.missedReferences[v]=g}}}}catch(e){u=!0,l=e}finally{try{s||null==f.return||f.return()}finally{if(u)throw l}}}}}},{key:"notifySyncObserversOfModels",value:(u=y(regeneratorRuntime.mark((function e(t,n,r){var a,i,o,s,u,l,c,f=this;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:a=this.itemSyncObservers.sort((function(e,t){return e.priority0)){e.next=25;break}return e.next=25,f._callSyncObserverCallbackWithTimeout(a,i,o,s,n,r);case 25:case"end":return e.stop()}}),e,null,[[6,10,14,22],[15,,17,21]])})),l=a[Symbol.iterator]();case 7:if(i=(c=l.next()).done){e.next=12;break}return e.delegateYield(u(),"t0",9);case 9:i=!0,e.next=7;break;case 12:e.next=18;break;case 14:e.prev=14,e.t1=e.catch(4),o=!0,s=e.t1;case 18:e.prev=18,e.prev=19,i||null==l.return||l.return();case 21:if(e.prev=21,!o){e.next=24;break}throw s;case 24:return e.finish(21);case 25:return e.finish(18);case 26:case"end":return e.stop()}}),e,this,[[4,14,18,26],[19,,21,25]])}))),function(e,t,n){return u.apply(this,arguments)})},{key:"_callSyncObserverCallbackWithTimeout",value:(s=y(regeneratorRuntime.mark((function e(t,n,r,a,i,o){var s=this;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",new Promise((function(e,u){s.$timeout((function(){try{t.callback(n,r,a,i,o)}catch(e){console.error("Sync observer exception",e)}finally{e()}}))})));case 1:case"end":return e.stop()}}),e)}))),function(e,t,n,r,a,i){return s.apply(this,arguments)})},{key:"setItemDirty",value:function(e){var t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],n=arguments.length>2?arguments[2]:void 0,r=arguments.length>3?arguments[3]:void 0,a=arguments.length>4?arguments[4]:void 0;this.setItemsDirty([e],t,n,r,a)}},{key:"setItemsDirty",value:function(t){var n=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],r=arguments.length>2?arguments[2]:void 0,a=arguments.length>3?arguments[3]:void 0,i=arguments.length>4?arguments[4]:void 0,o=!0,s=!1,u=void 0;try{for(var l,c=t[Symbol.iterator]();!(o=(l=c.next()).done);o=!0){var f=l.value;f.setDirty(n,r)}}catch(e){s=!0,u=e}finally{try{o||null==c.return||c.return()}finally{if(s)throw u}}this.notifySyncObserversOfModels(t,a||e.MappingSourceLocalDirtied,i)}},{key:"createItem",value:function(t){var n=e.ContentTypeClassMapping&&e.ContentTypeClassMapping[t.content_type];return n||(n=M),new n(t)}},{key:"createDuplicateItemFromResponseItem",value:(o=y(regeneratorRuntime.mark((function e(t){var n,r;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if("function"!=typeof t.setDirty){e.next=3;break}return console.error("Attempting to create conflicted copy of non-response item."),e.abrupt("return",null);case 3:return n=JSON.parse(JSON.stringify(t)),e.next=6,SFJS.crypto.generateUUID();case 6:return n.uuid=e.sent,r=this.createItem(n),e.abrupt("return",r);case 9:case"end":return e.stop()}}),e,this)}))),function(e){return o.apply(this,arguments)})},{key:"duplicateItemAndAddAsConflict",value:function(e){return this.duplicateItemWithCustomContentAndAddAsConflict({content:e.content,duplicateOf:e})}},{key:"duplicateItemWithCustomContentAndAddAsConflict",value:function(e){var t=e.content,n=e.duplicateOf,r=this.duplicateItemWithCustomContent({content:t,duplicateOf:n});return this.addDuplicatedItemAsConflict({duplicate:r,duplicateOf:n}),r}},{key:"addDuplicatedItemAsConflict",value:function(e){var t=e.duplicate,n=e.duplicateOf;this.addDuplicatedItem(t,n),t.content.conflict_of=n.uuid}},{key:"duplicateItemWithCustomContent",value:function(e){var t=e.content,n=e.duplicateOf,r=new n.constructor({content:t});return r.created_at=n.created_at,r.content_type||(r.content_type=n.content_type),r}},{key:"duplicateItemAndAdd",value:function(e){var t=this.duplicateItemWithoutAdding(e);return this.addDuplicatedItem(t,e),t}},{key:"duplicateItemWithoutAdding",value:function(e){var t=new e.constructor({content:e.content});return t.created_at=e.created_at,t.content_type||(t.content_type=e.content_type),t}},{key:"addDuplicatedItem",value:function(e,t){this.addItem(e);var n=!0,r=!1,a=void 0;try{for(var i,o=t.referencingObjects[Symbol.iterator]();!(n=(i=o.next()).done);n=!0){var s=i.value;s.addItemAsRelationship(e),this.setItemDirty(s,!0)}}catch(e){r=!0,a=e}finally{try{n||null==o.return||o.return()}finally{if(r)throw a}}this.resolveReferencesForItem(e),this.setItemDirty(e,!0)}},{key:"addItem",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];this.addItems([e],t)}},{key:"addItems",value:function(e){var t=this;e.forEach((function(e){t.itemsHash[e.uuid]||(t.itemsHash[e.uuid]=e,t.items.push(e))}))}},{key:"addItemSyncObserver",value:function(e,t,n){this.addItemSyncObserverWithPriority({id:e,types:t,callback:n,priority:1})}},{key:"addItemSyncObserverWithPriority",value:function(e){var t=e.id,n=e.priority,r=e.types,a=e.callback;Array.isArray(r)||(r=[r]),this.itemSyncObservers.push({id:t,types:r,priority:n,callback:a})}},{key:"removeItemSyncObserver",value:function(e){_.remove(this.itemSyncObservers,_.find(this.itemSyncObservers,{id:e}))}},{key:"getDirtyItems",value:function(){return this.items.filter((function(e){return 1==e.dirty&&!e.dummy&&(!e.errorDecrypting||e.deleted)}))}},{key:"clearDirtyItems",value:function(e){var t=!0,n=!1,r=void 0;try{for(var a,i=e[Symbol.iterator]();!(t=(a=i.next()).done);t=!0)a.value.setDirty(!1)}catch(e){n=!0,r=e}finally{try{t||null==i.return||i.return()}finally{if(n)throw r}}}},{key:"removeAndDirtyAllRelationshipsForItem",value:function(e){if(!e.errorDecrypting){var t=!0,n=!1,r=void 0;try{for(var a,i=e.content.references[Symbol.iterator]();!(t=(a=i.next()).done);t=!0){var o=a.value,s=this.findItem(o.uuid);s&&(e.removeItemAsRelationship(s),s.hasRelationshipWithItem(e)&&(s.removeItemAsRelationship(e),this.setItemDirty(s,!0)))}}catch(e){n=!0,r=e}finally{try{t||null==i.return||i.return()}finally{if(n)throw r}}}var u=!0,l=!1,c=void 0;try{for(var f,p=e.referencingObjects[Symbol.iterator]();!(u=(f=p.next()).done);u=!0){var d=f.value;d.removeItemAsRelationship(e),this.setItemDirty(d,!0)}}catch(e){l=!0,c=e}finally{try{u||null==p.return||p.return()}finally{if(l)throw c}}e.referencingObjects=[]}},{key:"setAllItemsDirty",value:function(){var e=this.allItems;this.setItemsDirty(e,!0)}},{key:"setItemToBeDeleted",value:function(e){e.deleted=!0,e.dummy||this.setItemDirty(e,!0),this.removeAndDirtyAllRelationshipsForItem(e)}},{key:"removeItemLocally",value:(i=y(regeneratorRuntime.mark((function e(t){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:_.remove(this.items,{uuid:t.uuid}),delete this.itemsHash[t.uuid],t.isBeingRemovedLocally();case 3:case"end":return e.stop()}}),e,this)}))),function(e){return i.apply(this,arguments)})},{key:"allItemsMatchingTypes",value:function(e){return this.allItems.filter((function(t){return(_.includes(e,t.content_type)||_.includes(e,"*"))&&!t.dummy}))}},{key:"invalidItems",value:function(){return this.allItems.filter((function(e){return e.errorDecrypting}))}},{key:"validItemsForContentType",value:function(e){return this.allItems.filter((function(t){return t.content_type==e&&!t.errorDecrypting}))}},{key:"findItem",value:function(e){return this.itemsHash[e]}},{key:"findItems",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]&&arguments[1],n=[],r=!0,a=!1,i=void 0;try{for(var o,s=e[Symbol.iterator]();!(r=(o=s.next()).done);r=!0){var u=o.value,l=this.itemsHash[u];(l||t)&&n.push(l)}}catch(e){a=!0,i=e}finally{try{r||null==s.return||s.return()}finally{if(a)throw i}}return n}},{key:"itemsMatchingPredicate",value:function(e){return this.itemsMatchingPredicates([e])}},{key:"itemsMatchingPredicates",value:function(e){return this.filterItemsWithPredicates(this.allItems,e)}},{key:"filterItemsWithPredicates",value:function(e,t){return e.filter((function(e){var n=!0,r=!1,a=void 0;try{for(var i,o=t[Symbol.iterator]();!(n=(i=o.next()).done);n=!0){var s=i.value;if(!e.satisfiesPredicate(s))return!1}}catch(e){r=!0,a=e}finally{try{n||null==o.return||o.return()}finally{if(r)throw a}}return!0}))}},{key:"importItems",value:(a=y(regeneratorRuntime.mark((function t(n){var r,a,i,o,s,u,l,c,f,p,d,h,m,y,v,g,b,k,w,x,S,_,E,C,I,T,R;return regeneratorRuntime.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:r=[],a={},i=!0,o=!1,s=void 0,t.prev=5,u=n[Symbol.iterator]();case 7:if(i=(l=u.next()).done){t.next=18;break}if(c=l.value,f=this.findItem(c.uuid)){t.next=13;break}return a[c.uuid]={},t.abrupt("continue",15);case 13:p=this.duplicateItemWithoutAdding(f),a[c.uuid]={frozenValue:p,itemRef:f};case 15:i=!0,t.next=7;break;case 18:t.next=24;break;case 20:t.prev=20,t.t0=t.catch(5),o=!0,s=t.t0;case 24:t.prev=24,t.prev=25,i||null==u.return||u.return();case 27:if(t.prev=27,!o){t.next=30;break}throw s;case 30:return t.finish(27);case 31:return t.finish(24);case 32:d=!0,h=!1,m=void 0,t.prev=35,y=n[Symbol.iterator]();case 37:if(d=(v=y.next()).done){t.next=52;break}if(g=v.value,b=a[g.uuid],k=b.frozenValue,w=b.itemRef,!k||w.errorDecrypting){t.next=47;break}return t.next=43,this.createDuplicateItemFromResponseItem(g);case 43:x=t.sent,g.deleted||k.isItemContentEqualWith(x)||(this.addDuplicatedItemAsConflict({duplicate:x,duplicateOf:w}),r.push(x)),t.next=49;break;case 47:r.push(g),w&&w.errorDecrypting&&(w.errorDecrypting=!1);case 49:d=!0,t.next=37;break;case 52:t.next=58;break;case 54:t.prev=54,t.t1=t.catch(35),h=!0,m=t.t1;case 58:t.prev=58,t.prev=59,d||null==y.return||y.return();case 61:if(t.prev=61,!h){t.next=64;break}throw m;case 64:return t.finish(61);case 65:return t.finish(58);case 66:return t.next=68,this.mapResponseItemsToLocalModels(r,e.MappingSourceFileImport);case 68:for(S=t.sent,_=!0,E=!1,C=void 0,t.prev=72,I=S[Symbol.iterator]();!(_=(T=I.next()).done);_=!0)R=T.value,this.setItemDirty(R,!0,!1),R.deleted=!1;t.next=80;break;case 76:t.prev=76,t.t2=t.catch(72),E=!0,C=t.t2;case 80:t.prev=80,t.prev=81,_||null==I.return||I.return();case 83:if(t.prev=83,!E){t.next=86;break}throw C;case 86:return t.finish(83);case 87:return t.finish(80);case 88:return t.abrupt("return",S);case 89:case"end":return t.stop()}}),t,this,[[5,20,24,32],[25,,27,31],[35,54,58,66],[59,,61,65],[72,76,80,88],[81,,83,87]])}))),function(e){return a.apply(this,arguments)})},{key:"getAllItemsJSONData",value:(r=y(regeneratorRuntime.mark((function e(t,n,r){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.getJSONDataForItems(this.allItems,t,n,r));case 1:case"end":return e.stop()}}),e,this)}))),function(e,t,n){return r.apply(this,arguments)})},{key:"getJSONDataForItems",value:(n=y(regeneratorRuntime.mark((function e(t,n,r,a){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",Promise.all(t.map((function(e){return new O(e,n,r).paramsForExportFile()}))).then((function(e){if(a&&0==e.length)return null;var t={items:e};return n&&(t.auth_params=r),JSON.stringify(t,null,2)})));case 1:case"end":return e.stop()}}),e)}))),function(e,t,r,a){return n.apply(this,arguments)})},{key:"computeDataIntegrityHash",value:(t=y(regeneratorRuntime.mark((function e(){var t,n,r,a;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.prev=0,t=this.allNondummyItems.sort((function(e,t){return t.updated_at-e.updated_at})),n=t.map((function(e){return e.updatedAtTimestamp()})),r=n.join(","),e.next=6,SFJS.crypto.sha256(r);case 6:return a=e.sent,e.abrupt("return",a);case 10:return e.prev=10,e.t0=e.catch(0),console.error("Error computing data integrity hash",e.t0),e.abrupt("return",null);case 14:case"end":return e.stop()}}),e,this,[[0,10]])}))),function(){return t.apply(this,arguments)})},{key:"allItems",get:function(){return this.items.slice()}},{key:"allNondummyItems",get:function(){return this.items.filter((function(e){return!e.dummy}))}}]),e}();r.SFModelManager=C;var I=function(){function e(t,n,r){v(this,e),this.modelManager=t,this.syncManager=n,this.singletonManager=r,this.loadPrivileges(),e.CredentialAccountPassword="CredentialAccountPassword",e.CredentialLocalPasscode="CredentialLocalPasscode",e.ActionManageExtensions="ActionManageExtensions",e.ActionManageBackups="ActionManageBackups",e.ActionViewProtectedNotes="ActionViewProtectedNotes",e.ActionManagePrivileges="ActionManagePrivileges",e.ActionManagePasscode="ActionManagePasscode",e.ActionDeleteNote="ActionDeleteNote",e.SessionExpiresAtKey="SessionExpiresAtKey",e.SessionLengthKey="SessionLengthKey",e.SessionLengthNone=0,e.SessionLengthFiveMinutes=300,e.SessionLengthOneHour=3600,e.SessionLengthOneWeek=604800,this.availableActions=[e.ActionViewProtectedNotes,e.ActionDeleteNote,e.ActionManagePasscode,e.ActionManageBackups,e.ActionManageExtensions,e.ActionManagePrivileges],this.availableCredentials=[e.CredentialAccountPassword,e.CredentialLocalPasscode],this.sessionLengths=[e.SessionLengthNone,e.SessionLengthFiveMinutes,e.SessionLengthOneHour,e.SessionLengthOneWeek,e.SessionLengthIndefinite]}var t,n,r,a,i,o,s,u,l,c,f,p;return b(e,[{key:"setDelegate",value:function(e){this.delegate=e}},{key:"getAvailableActions",value:function(){return this.availableActions}},{key:"getAvailableCredentials",value:function(){return this.availableCredentials}},{key:"netCredentialsForAction",value:(p=y(regeneratorRuntime.mark((function t(n){var r,a,i,o,s,u,l,c;return regeneratorRuntime.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.next=2,this.getPrivileges();case 2:t.t0=n,r=t.sent.getCredentialsForAction(t.t0),a=[],i=!0,o=!1,s=void 0,t.prev=8,u=r[Symbol.iterator]();case 10:if(i=(l=u.next()).done){t.next=27;break}if((c=l.value)!=e.CredentialAccountPassword){t.next=19;break}return t.next=15,this.delegate.isOffline();case 15:t.sent||a.push(c),t.next=24;break;case 19:if(c!=e.CredentialLocalPasscode){t.next=24;break}return t.next=22,this.delegate.hasLocalPasscode();case 22:t.sent&&a.push(c);case 24:i=!0,t.next=10;break;case 27:t.next=33;break;case 29:t.prev=29,t.t1=t.catch(8),o=!0,s=t.t1;case 33:t.prev=33,t.prev=34,i||null==u.return||u.return();case 36:if(t.prev=36,!o){t.next=39;break}throw s;case 39:return t.finish(36);case 40:return t.finish(33);case 41:return t.abrupt("return",a);case 42:case"end":return t.stop()}}),t,this,[[8,29,33,41],[34,,36,40]])}))),function(e){return p.apply(this,arguments)})},{key:"loadPrivileges",value:(f=y(regeneratorRuntime.mark((function e(){var t=this;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!this.loadPromise){e.next=2;break}return e.abrupt("return",this.loadPromise);case 2:return this.loadPromise=new Promise((function(e,n){var r=N.contentType(),a=new A("content_type","=",r);t.singletonManager.registerSingleton([a],(function(n){t.privileges=n,e(n)}),function(){var n=y(regeneratorRuntime.mark((function n(a){var i;return regeneratorRuntime.wrap((function(n){for(;;)switch(n.prev=n.next){case 0:if(i=new N({content_type:r}),SFJS.crypto.generateUUIDSync){n.next=4;break}return n.next=4,i.initUUID();case 4:t.modelManager.addItem(i),t.modelManager.setItemDirty(i,!0),t.syncManager.sync(),a(i),e(i);case 9:case"end":return n.stop()}}),n)})));return function(e){return n.apply(this,arguments)}}())})),e.abrupt("return",this.loadPromise);case 4:case"end":return e.stop()}}),e,this)}))),function(){return f.apply(this,arguments)})},{key:"getPrivileges",value:(c=y(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!this.privileges){e.next=4;break}return e.abrupt("return",this.privileges);case 4:return e.abrupt("return",this.loadPrivileges());case 5:case"end":return e.stop()}}),e,this)}))),function(){return c.apply(this,arguments)})},{key:"displayInfoForCredential",value:function(t){var n={};return n[e.CredentialAccountPassword]={label:"Account Password",prompt:"Please enter your account password."},n[e.CredentialLocalPasscode]={label:"Local Passcode",prompt:"Please enter your local passcode."},n[t]}},{key:"displayInfoForAction",value:function(t){var n={};return n[e.ActionManageExtensions]={label:"Manage Extensions"},n[e.ActionManageBackups]={label:"Download/Import Backups"},n[e.ActionViewProtectedNotes]={label:"View Protected Notes"},n[e.ActionManagePrivileges]={label:"Manage Privileges"},n[e.ActionManagePasscode]={label:"Manage Passcode"},n[e.ActionDeleteNote]={label:"Delete Notes"},n[t]}},{key:"getSessionLengthOptions",value:function(){return[{value:e.SessionLengthNone,label:"Don't Remember"},{value:e.SessionLengthFiveMinutes,label:"5 Minutes"},{value:e.SessionLengthOneHour,label:"1 Hour"},{value:e.SessionLengthOneWeek,label:"1 Week"}]}},{key:"setSessionLength",value:(l=y(regeneratorRuntime.mark((function t(n){var r;return regeneratorRuntime.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return a=n,i=void 0,(i=new Date).setSeconds(i.getSeconds()+a),r=i,t.abrupt("return",Promise.all([this.delegate.saveToStorage(e.SessionExpiresAtKey,JSON.stringify(r)),this.delegate.saveToStorage(e.SessionLengthKey,JSON.stringify(n))]));case 3:case"end":return t.stop()}var a,i}),t,this)}))),function(e){return l.apply(this,arguments)})},{key:"clearSession",value:(u=y(regeneratorRuntime.mark((function t(){return regeneratorRuntime.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.abrupt("return",this.setSessionLength(e.SessionLengthNone));case 1:case"end":return t.stop()}}),t,this)}))),function(){return u.apply(this,arguments)})},{key:"getSelectedSessionLength",value:(s=y(regeneratorRuntime.mark((function t(){var n;return regeneratorRuntime.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.next=2,this.delegate.getFromStorage(e.SessionLengthKey);case 2:if(!(n=t.sent)){t.next=7;break}return t.abrupt("return",JSON.parse(n));case 7:return t.abrupt("return",e.SessionLengthNone);case 8:case"end":return t.stop()}}),t,this)}))),function(){return s.apply(this,arguments)})},{key:"getSessionExpirey",value:(o=y(regeneratorRuntime.mark((function t(){var n;return regeneratorRuntime.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.next=2,this.delegate.getFromStorage(e.SessionExpiresAtKey);case 2:if(!(n=t.sent)){t.next=7;break}return t.abrupt("return",new Date(JSON.parse(n)));case 7:return t.abrupt("return",new Date);case 8:case"end":return t.stop()}}),t,this)}))),function(){return o.apply(this,arguments)})},{key:"actionHasPrivilegesConfigured",value:(i=y(regeneratorRuntime.mark((function e(t){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.netCredentialsForAction(t);case 2:return e.t0=e.sent.length,e.abrupt("return",e.t0>0);case 4:case"end":return e.stop()}}),e,this)}))),function(e){return i.apply(this,arguments)})},{key:"actionRequiresPrivilege",value:(a=y(regeneratorRuntime.mark((function e(t){var n;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.getSessionExpirey();case 2:if(!(e.sent>new Date)){e.next=5;break}return e.abrupt("return",!1);case 5:return e.next=7,this.netCredentialsForAction(t);case 7:return n=e.sent,e.abrupt("return",n.length>0);case 9:case"end":return e.stop()}}),e,this)}))),function(e){return a.apply(this,arguments)})},{key:"savePrivileges",value:(r=y(regeneratorRuntime.mark((function e(){var t;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.getPrivileges();case 2:t=e.sent,this.modelManager.setItemDirty(t,!0),this.syncManager.sync();case 5:case"end":return e.stop()}}),e,this)}))),function(){return r.apply(this,arguments)})},{key:"authenticateAction",value:(n=y(regeneratorRuntime.mark((function e(t,n){var r,a,i,o,s,u,l,c,f;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.netCredentialsForAction(t);case 2:r=e.sent,a=[],i=[],o=!0,s=!1,u=void 0,e.prev=7,l=r[Symbol.iterator]();case 9:if(o=(c=l.next()).done){e.next=18;break}return f=c.value,e.next=13,this._verifyAuthenticationParameters(f,n[f]);case 13:e.sent?a.push(f):i.push(f);case 15:o=!0,e.next=9;break;case 18:e.next=24;break;case 20:e.prev=20,e.t0=e.catch(7),s=!0,u=e.t0;case 24:e.prev=24,e.prev=25,o||null==l.return||l.return();case 27:if(e.prev=27,!s){e.next=30;break}throw u;case 30:return e.finish(27);case 31:return e.finish(24);case 32:return e.abrupt("return",{success:0==i.length,successfulCredentials:a,failedCredentials:i});case 33:case"end":return e.stop()}}),e,this,[[7,20,24,32],[25,,27,31]])}))),function(e,t){return n.apply(this,arguments)})},{key:"_verifyAuthenticationParameters",value:(t=y(regeneratorRuntime.mark((function t(n,r){var a,i,o=this;return regeneratorRuntime.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(a=function(){var e=y(regeneratorRuntime.mark((function e(t){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",o.delegate.verifyAccountPassword(t));case 1:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}(),i=function(){var e=y(regeneratorRuntime.mark((function e(t){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",o.delegate.verifyLocalPasscode(t));case 1:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}(),n!=e.CredentialAccountPassword){t.next=6;break}return t.abrupt("return",a(r));case 6:if(n!=e.CredentialLocalPasscode){t.next=8;break}return t.abrupt("return",i(r));case 8:case"end":return t.stop()}}),t)}))),function(e,n){return t.apply(this,arguments)})}]),e}();r.SFPrivilegesManager=I;var T=function(){function e(t,n,r,a,i){var o=this;v(this,e),this.modelManager=t,this.storageManager=n,this.$timeout=i||setTimeout.bind(window),this.keyRequestHandler=r,this.loadFromDisk().then((function(){o.modelManager.addItemSyncObserver("session-history",a,(function(e,t,n,r,a){if(r!==C.MappingSourceLocalDirtied){var i=!0,s=!1,u=void 0;try{for(var l,c=e[Symbol.iterator]();!(i=(l=c.next()).done);i=!0){var f=l.value;try{o.addHistoryEntryForItem(f)}catch(e){console.log("Caught exception while trying to add item history entry",e)}}}catch(e){s=!0,u=e}finally{try{i||null==c.return||c.return()}finally{if(s)throw u}}}}))}))}var t,n,r,a,i,o,s;return b(e,[{key:"encryptionParams",value:(s=y(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.keyRequestHandler());case 1:case"end":return e.stop()}}),e,this)}))),function(){return s.apply(this,arguments)})},{key:"addHistoryEntryForItem",value:function(e){var t=this,n={uuid:e.uuid,content_type:e.content_type,updated_at:e.updated_at,content:e.getContentCopy()},r=this.historySession.addEntryForItem(n);this.autoOptimize&&this.historySession.optimizeHistoryForItem(e),r&&this.diskEnabled&&(this.diskTimeout&&(this.$timeout.hasOwnProperty("cancel")?this.$timeout.cancel(this.diskTimeout):clearTimeout(this.diskTimeout)),this.diskTimeout=this.$timeout((function(){t.saveToDisk()}),2e3))}},{key:"historyForItem",value:function(e){return this.historySession.historyForItem(e)}},{key:"clearHistoryForItem",value:(o=y(regeneratorRuntime.mark((function e(t){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return this.historySession.clearItemHistory(t),e.abrupt("return",this.saveToDisk());case 2:case"end":return e.stop()}}),e,this)}))),function(e){return o.apply(this,arguments)})},{key:"clearAllHistory",value:(i=y(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return this.historySession.clearAllHistory(),e.abrupt("return",this.storageManager.removeItem("sessionHistory_revisions"));case 2:case"end":return e.stop()}}),e,this)}))),function(){return i.apply(this,arguments)})},{key:"toggleDiskSaving",value:(a=y(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(this.diskEnabled=!this.diskEnabled,!this.diskEnabled){e.next=6;break}this.storageManager.setItem("sessionHistory_persist",JSON.stringify(!0)),this.saveToDisk(),e.next=8;break;case 6:return this.storageManager.setItem("sessionHistory_persist",JSON.stringify(!1)),e.abrupt("return",this.storageManager.removeItem("sessionHistory_revisions"));case 8:case"end":return e.stop()}}),e,this)}))),function(){return a.apply(this,arguments)})},{key:"saveToDisk",value:(r=y(regeneratorRuntime.mark((function e(){var t,n=this;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(this.diskEnabled){e.next=2;break}return e.abrupt("return");case 2:return e.next=4,this.encryptionParams();case 4:t=e.sent,new O(this.historySession,t.keys,t.auth_params).paramsForSync().then((function(e){n.storageManager.setItem("sessionHistory_revisions",JSON.stringify(e))}));case 7:case"end":return e.stop()}}),e,this)}))),function(){return r.apply(this,arguments)})},{key:"loadFromDisk",value:(n=y(regeneratorRuntime.mark((function e(){var t,n,r,a,i;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.storageManager.getItem("sessionHistory_persist");case 2:return(t=e.sent)&&(this.diskEnabled=JSON.parse(t)),e.next=6,this.storageManager.getItem("sessionHistory_revisions");case 6:if(!(n=e.sent)){e.next=18;break}return n=JSON.parse(n),e.next=11,this.encryptionParams();case 11:return r=e.sent,e.next=14,SFJS.itemTransformer.decryptItem(n,r.keys);case 14:a=new j(n),this.historySession=a,e.next=19;break;case 18:this.historySession=new j;case 19:return e.next=21,this.storageManager.getItem("sessionHistory_autoOptimize");case 21:i=e.sent,this.autoOptimize=!i||JSON.parse(i);case 23:case"end":return e.stop()}}),e,this)}))),function(){return n.apply(this,arguments)})},{key:"toggleAutoOptimize",value:(t=y(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:this.autoOptimize=!this.autoOptimize,this.autoOptimize?this.storageManager.setItem("sessionHistory_autoOptimize",JSON.stringify(!0)):this.storageManager.setItem("sessionHistory_autoOptimize",JSON.stringify(!1));case 2:case"end":return e.stop()}}),e,this)}))),function(){return t.apply(this,arguments)})}]),e}();r.SFSessionHistoryManager=T;var R=function(){function e(t,n){var r=this;v(this,e),this.syncManager=n,this.modelManager=t,this.singletonHandlers=[],t.addItemSyncObserverWithPriority({id:"sf-singleton-manager",types:"*",priority:-1,callback:function(e,n,a,i,o){i!==C.MappingSourceLocalDirtied&&r.resolveSingletons(t.allNondummyItems,null,!0)}}),n.addEventHandler((function(e,n){if("local-data-loaded"==e)r.resolveSingletons(t.allNondummyItems,null,!0),r.initialDataLoaded=!0;else if("sync:completed"==e){if(!r.initialDataLoaded)return;r.resolveSingletons(n.retrievedItems,n.savedItems)}})),t.addModelUuidChangeObserver("singleton-manager",(function(e,t){var n=!0,a=!1,i=void 0;try{for(var o,s=r.singletonHandlers[Symbol.iterator]();!(n=(o=s.next()).done);n=!0){var u=o.value;u.singleton&&A.ItemSatisfiesPredicates(t,u.predicates)&&(u.singleton=null,r.resolveSingletons([t]))}}catch(e){a=!0,i=e}finally{try{n||null==s.return||s.return()}finally{if(a)throw i}}}))}return b(e,[{key:"registerSingleton",value:function(e,t,n){this.singletonHandlers.push({predicates:e,resolutionCallback:t,createBlock:n})}},{key:"resolveSingletons",value:function(e,t,n){var r=this;e=e||[],t=t||[];var a=!0,i=!1,o=void 0;try{for(var s,u=function(){var a=s.value,i=a.predicates.slice(),o=r.modelManager.filterItemsWithPredicates(e,i),u=function(){a.createBlock&&(a.pendingCreateBlockCallback=!0,a.createBlock((function(e){a.singleton=e,a.pendingCreateBlockCallback=!1,a.resolutionCallback&&a.resolutionCallback(e)})))},l=r.modelManager.filterItemsWithPredicates(t,i).length;if(o.length>0||l>0){var c=r.modelManager.itemsMatchingPredicates(i);if(c.length>=2){var f=c.sort((function(e,t){return e.errorDecrypting?1:t.errorDecrypting||e.created_at=this.MaxDiscordanceBeforeOutOfSync&&(this.outOfSync||(this.outOfSync=!0,this.notifyEvent("enter-out-of-sync"))),e.abrupt("return",!1);case 13:return this.outOfSync&&(this.outOfSync=!1,this.notifyEvent("exit-out-of-sync")),this.syncDiscordance=0,e.abrupt("return",!0);case 16:case"end":return e.stop()}}),e,this)}))),function(e){return R.apply(this,arguments)})},{key:"isOutOfSync",value:function(){return this.outOfSync}},{key:"getServerURL",value:(T=y(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.storageManager.getItem("server");case 2:if(e.t0=e.sent,e.t0){e.next=5;break}e.t0=window._default_sf_server;case 5:return e.abrupt("return",e.t0);case 6:case"end":return e.stop()}}),e,this)}))),function(){return T.apply(this,arguments)})},{key:"getSyncURL",value:(I=y(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.getServerURL();case 2:return e.t0=e.sent,e.abrupt("return",e.t0+"/items/sync");case 4:case"end":return e.stop()}}),e,this)}))),function(){return I.apply(this,arguments)})},{key:"registerSyncStatusObserver",value:function(e){var t={key:new Date,callback:e};return this.syncStatusObservers.push(t),t}},{key:"removeSyncStatusObserver",value:function(e){_.pull(this.syncStatusObservers,e)}},{key:"syncStatusDidChange",value:function(){var e=this;this.syncStatusObservers.forEach((function(t){t.callback(e.syncStatus)}))}},{key:"addEventHandler",value:function(e){return this.eventHandlers.push(e),e}},{key:"removeEventHandler",value:function(e){_.pull(this.eventHandlers,e)}},{key:"notifyEvent",value:function(e,t){var n=!0,r=!1,a=void 0;try{for(var i,o=this.eventHandlers[Symbol.iterator]();!(n=(i=o.next()).done);n=!0)(0,i.value)(e,t||{})}catch(e){r=!0,a=e}finally{try{n||null==o.return||o.return()}finally{if(r)throw a}}}},{key:"setKeyRequestHandler",value:function(e){this.keyRequestHandler=e}},{key:"getActiveKeyInfo",value:(E=y(regeneratorRuntime.mark((function e(t){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.keyRequestHandler(t));case 1:case"end":return e.stop()}}),e,this)}))),function(e){return E.apply(this,arguments)})},{key:"initialDataLoaded",value:function(){return!0===this._initialDataLoaded}},{key:"_sortLocalItems",value:function(e){var t=this;return e.sort((function(e,n){var r=new Date(n.updated_at)-new Date(e.updated_at),a=t.contentTypeLoadPriority,i=0,o=0;return a&&(i=a.indexOf(e.content_type),o=a.indexOf(n.content_type),-1==i&&(i=a.length),-1==o&&(o=a.length)),i==o?r:i0&&void 0!==u[0]?u[0]:{},r=n.incrementalCallback,a=n.batchSize,!(i=n.options)||!i.simulateHighLatency){t.next=5;break}return o=i.simulatedLatency||1e3,t.next=5,this._awaitSleep(o);case 5:if(!this.loadLocalDataPromise){t.next=7;break}return t.abrupt("return",this.loadLocalDataPromise);case 7:return a||(a=100),this.loadLocalDataPromise=this.storageManager.getAllModels().then((function(t){var n=(t=(t=s._sortLocalItems(t)).filter((function(e){var t=s.modelManager.findItem(e.uuid);return!t||new Date(e.dirtiedDate)>t.dirtiedDate}))).length,i=0,o=[],u=function(){var l=y(regeneratorRuntime.mark((function l(){var c,f;return regeneratorRuntime.wrap((function(l){for(;;)switch(l.prev=l.next){case 0:return c=t.slice(i,i+a),l.next=3,s.handleItemsResponse(c,null,C.MappingSourceLocalRetrieved,e.KeyRequestLoadLocal);case 3:if(f=l.sent,o.push(f),!((i+=c.length)0)){t.next=23;break}return t.next=23,Promise.all(u.map(function(){var e=y(regeneratorRuntime.mark((function e(t){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",a.storageManager.deleteModel(t));case 1:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}()));case 23:return t.next=25,a.getActiveKeyInfo(e.KeyRequestSaveLocal);case 25:if(m=t.sent,!(s.length>0)){t.next=33;break}return t.next=29,Promise.all(s.map(function(){var e=y(regeneratorRuntime.mark((function e(t){var n;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=new O(t,m.keys,m.auth_params),e.next=3,n.paramsForLocalStorage();case 3:return n=e.sent,r&&delete n.dirty,e.abrupt("return",n);case 6:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}())).catch((function(e){return o(e)}));case 29:return v=t.sent,t.next=32,a.storageManager.saveModels(v).catch((function(e){console.error("Error writing items",e),a.syncStatus.localError=e,a.syncStatusDidChange(),o()}));case 32:a.syncStatus.localError&&(a.syncStatus.localError=null,a.syncStatusDidChange());case 33:i();case 34:case"end":return t.stop()}}),t,null,[[4,8,12,20],[13,,15,19]])})));return function(e,n){return t.apply(this,arguments)}}()));case 3:case"end":return t.stop()}}),t)}))),function(e,t){return w.apply(this,arguments)})},{key:"syncOffline",value:(k=y(regeneratorRuntime.mark((function e(t){var n,r,a,i,o,s=this;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:for(n=!0,r=!1,a=void 0,e.prev=3,i=t[Symbol.iterator]();!(n=(o=i.next()).done);n=!0)o.value.updated_at=new Date;e.next=11;break;case 7:e.prev=7,e.t0=e.catch(3),r=!0,a=e.t0;case 11:e.prev=11,e.prev=12,n||null==i.return||i.return();case 14:if(e.prev=14,!r){e.next=17;break}throw a;case 17:return e.finish(14);case 18:return e.finish(11);case 19:return e.abrupt("return",this.writeItemsToLocalStorage(t,!0).then((function(e){var n=!0,r=!1,a=void 0;try{for(var i,o=t[Symbol.iterator]();!(n=(i=o.next()).done);n=!0){var u=i.value;u.deleted&&s.modelManager.removeItemLocally(u)}}catch(e){r=!0,a=e}finally{try{n||null==o.return||o.return()}finally{if(r)throw a}}return s.modelManager.clearDirtyItems(t),s.modelManager.didSyncModelsOffline(t),s.notifyEvent("sync:completed",{savedItems:t}),{saved_items:t}})));case 20:case"end":return e.stop()}}),e,this,[[3,7,11,19],[12,,14,18]])}))),function(e){return k.apply(this,arguments)})},{key:"markAllItemsDirtyAndSaveOffline",value:(g=y(regeneratorRuntime.mark((function e(t){var n,r,a,i,o,s,u,l,c,f,p,d,h;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!t){e.next=28;break}n=this.modelManager.allNondummyItems.filter((function(e){return!e.errorDecrypting})).slice(),r=!0,a=!1,i=void 0,e.prev=5,o=n[Symbol.iterator]();case 7:if(r=(s=o.next()).done){e.next=14;break}return u=s.value,e.next=11,this.modelManager.alternateUUIDForItem(u);case 11:r=!0,e.next=7;break;case 14:e.next=20;break;case 16:e.prev=16,e.t0=e.catch(5),a=!0,i=e.t0;case 20:e.prev=20,e.prev=21,r||null==o.return||o.return();case 23:if(e.prev=23,!a){e.next=26;break}throw i;case 26:return e.finish(23);case 27:return e.finish(20);case 28:for(l=this.modelManager.allNondummyItems,c=!0,f=!1,p=void 0,e.prev=32,d=l[Symbol.iterator]();!(c=(h=d.next()).done);c=!0)h.value.setDirty(!0);e.next=40;break;case 36:e.prev=36,e.t1=e.catch(32),f=!0,p=e.t1;case 40:e.prev=40,e.prev=41,c||null==d.return||d.return();case 43:if(e.prev=43,!f){e.next=46;break}throw p;case 46:return e.finish(43);case 47:return e.finish(40);case 48:return e.abrupt("return",this.writeItemsToLocalStorage(l,!1));case 49:case"end":return e.stop()}}),e,this,[[5,16,20,28],[21,,23,27],[32,36,40,48],[41,,43,47]])}))),function(e){return g.apply(this,arguments)})},{key:"setSyncToken",value:(m=y(regeneratorRuntime.mark((function e(t){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return this._syncToken=t,e.next=3,this.storageManager.setItem("syncToken",t);case 3:case"end":return e.stop()}}),e,this)}))),function(e){return m.apply(this,arguments)})},{key:"getSyncToken",value:(h=y(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(this._syncToken){e.next=4;break}return e.next=3,this.storageManager.getItem("syncToken");case 3:this._syncToken=e.sent;case 4:return e.abrupt("return",this._syncToken);case 5:case"end":return e.stop()}}),e,this)}))),function(){return h.apply(this,arguments)})},{key:"setCursorToken",value:(d=y(regeneratorRuntime.mark((function e(t){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(this._cursorToken=t,!t){e.next=6;break}return e.next=4,this.storageManager.setItem("cursorToken",t);case 4:e.next=8;break;case 6:return e.next=8,this.storageManager.removeItem("cursorToken");case 8:case"end":return e.stop()}}),e,this)}))),function(e){return d.apply(this,arguments)})},{key:"getCursorToken",value:(p=y(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(this._cursorToken){e.next=4;break}return e.next=3,this.storageManager.getItem("cursorToken");case 3:this._cursorToken=e.sent;case 4:return e.abrupt("return",this._cursorToken);case 5:case"end":return e.stop()}}),e,this)}))),function(){return p.apply(this,arguments)})},{key:"clearQueuedCallbacks",value:function(){this._queuedCallbacks=[]}},{key:"callQueuedCallbacks",value:function(e){var t=this.queuedCallbacks;if(t.length){var n=!0,r=!1,a=void 0;try{for(var i,o=t[Symbol.iterator]();!(n=(i=o.next()).done);n=!0)(0,i.value)(e)}catch(e){r=!0,a=e}finally{try{n||null==o.return||o.return()}finally{if(r)throw a}}this.clearQueuedCallbacks()}}},{key:"beginCheckingIfSyncIsTakingTooLong",value:function(){this.syncStatus.checker&&this.stopCheckingIfSyncIsTakingTooLong(),this.syncStatus.checker=this.$interval(function(){(new Date-this.syncStatus.syncStart)/1e3>5&&(this.notifyEvent("sync:taking-too-long"),this.stopCheckingIfSyncIsTakingTooLong())}.bind(this),500)}},{key:"stopCheckingIfSyncIsTakingTooLong",value:function(){this.$interval.hasOwnProperty("cancel")?this.$interval.cancel(this.syncStatus.checker):clearInterval(this.syncStatus.checker),this.syncStatus.checker=null}},{key:"lockSyncing",value:function(){this.syncLocked=!0}},{key:"unlockSyncing",value:function(){this.syncLocked=!1}},{key:"sync",value:(f=y(regeneratorRuntime.mark((function t(){var n,r=this,a=arguments;return regeneratorRuntime.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(n=a.length>0&&void 0!==a[0]?a[0]:{},!this.syncLocked){t.next=4;break}return console.log("Sync Locked, Returning;"),t.abrupt("return");case 4:return t.abrupt("return",new Promise(function(){var t=y(regeneratorRuntime.mark((function t(a,i){var o,s,u,l,c,f,p,d,h,m,y,v,g,b;return regeneratorRuntime.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return n||(n={}),o=r.modelManager.getDirtyItems(),s=o.filter((function(e){return!r.lastDirtyItemsSave||e.dirtiedDate>r.lastDirtyItemsSave})),t.next=5,r.getActiveKeyInfo(e.KeyRequestLoadSaveAccount);case 5:if(u=t.sent,l=r.syncStatus.syncOpInProgress,c=r.initialDataLoaded(),!l&&c){t.next=16;break}return r.performSyncAgainOnCompletion=!0,r.lastDirtyItemsSave=new Date,t.next=13,r.writeItemsToLocalStorage(s,!1);case 13:return l&&(r.queuedCallbacks.push(a),r.loggingEnabled&&console.warn("Attempting to sync while existing sync is in progress.")),c||(r.loggingEnabled&&console.warn("(1) Attempting to perform online sync before local data has loaded"),a()),t.abrupt("return");case 16:if(r.syncStatus.syncOpInProgress=!0,!u.offline){t.next=19;break}return t.abrupt("return",r.syncOffline(o).then((function(e){r.syncStatus.syncOpInProgress=!1,a(e)})).catch((function(e){r.notifyEvent("sync-exception",e)})));case 19:if(r.initialDataLoaded()){t.next=22;break}return console.error("Attempting to perform online sync before local data has loaded"),t.abrupt("return");case 22:return r.loggingEnabled&&console.log("Syncing online user."),f=r.syncStatus.needsMoreSync,r.syncStatus.syncStart=new Date,r.beginCheckingIfSyncIsTakingTooLong(),p=r.PerSyncItemUploadLimit,(d=o.slice(0,p)).lengthr.syncStatus.total&&(r.syncStatus.total=r.syncStatus.current),r.syncStatusDidChange(),t.next=34,r.writeItemsToLocalStorage(s,!1);case 34:return r.lastDirtyItemsSave=new Date,n.onPreSyncSave&&n.onPreSyncSave(),r.allRetreivedItems||(r.allRetreivedItems=[]),r.allSavedItems||(r.allSavedItems=[]),(h={}).limit=r.ServerItemDownloadLimit,n.performIntegrityCheck&&(h.compute_integrity=!0),t.prev=41,t.next=44,Promise.all(d.map((function(e){var t=new O(e,u.keys,u.auth_params);return t.additionalFields=n.additionalFields,t.paramsForSync()}))).then((function(e){h.items=e}));case 44:t.next=49;break;case 46:t.prev=46,t.t0=t.catch(41),r.notifyEvent("sync-exception",t.t0);case 49:for(m=!0,y=!1,v=void 0,t.prev=52,g=d[Symbol.iterator]();!(m=(b=g.next()).done);m=!0)b.value.dirtyCount=0;t.next=60;break;case 56:t.prev=56,t.t1=t.catch(52),y=!0,v=t.t1;case 60:t.prev=60,t.prev=61,m||null==g.return||g.return();case 63:if(t.prev=63,!y){t.next=66;break}throw v;case 66:return t.finish(63);case 67:return t.finish(60);case 68:return t.next=70,r.getSyncToken();case 70:return h.sync_token=t.sent,t.next=73,r.getCursorToken();case 73:return h.cursor_token=t.sent,h.api=S.getApiVersion(),r.loggingEnabled&&console.log("Syncing with params",h),t.prev=76,t.t2=r.httpManager,t.next=80,r.getSyncURL();case 80:t.t3=t.sent,t.t4=h,t.t5=function(e){r.handleSyncSuccess(d,e,n).then((function(){a(e)})).catch((function(e){console.log("Caught sync success exception:",e),r.handleSyncError(e,null,o).then((function(t){r.notifyEvent("sync-exception",e),a(t)}))}))},t.t6=function(e,t){r.handleSyncError(e,t,o).then((function(e){a(e)}))},t.t2.postAuthenticatedAbsolute.call(t.t2,t.t3,t.t4,t.t5,t.t6),t.next=90;break;case 87:t.prev=87,t.t7=t.catch(76),console.log("Sync exception caught:",t.t7);case 90:case"end":return t.stop()}}),t,null,[[41,46],[52,56,60,68],[61,,63,67],[76,87]])})));return function(e,n){return t.apply(this,arguments)}}()));case 5:case"end":return t.stop()}}),t,this)}))),function(){return f.apply(this,arguments)})},{key:"_awaitSleep",value:(c=y(regeneratorRuntime.mark((function e(t){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return console.warn("Simulating high latency sync request",t),e.abrupt("return",new Promise((function(e,n){setTimeout((function(){e()}),t)})));case 2:case"end":return e.stop()}}),e)}))),function(e){return c.apply(this,arguments)})},{key:"handleSyncSuccess",value:(l=y(regeneratorRuntime.mark((function t(n,r,a){var i,o,s,u,l,c,f,p,d,h,m,y,v,g,b,k,w=this;return regeneratorRuntime.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(!a.simulateHighLatency){t.next=4;break}return i=a.simulatedLatency||1e3,t.next=4,this._awaitSleep(i);case 4:for(this.syncStatus.error=null,this.loggingEnabled&&console.log("Sync response",r),o=this.allSavedItems.map((function(e){return e.uuid})),s=r.saved_items.map((function(e){return e.uuid})),r.retrieved_items=r.retrieved_items.filter((function(e){var t=o.includes(e.uuid),n=s.includes(e.uuid);if(t||n)return!1;var r=w.modelManager.findItem(e.uuid);return!r||!r.dirty})),u=[],l=!0,c=!1,f=void 0,t.prev=13,p=n[Symbol.iterator]();!(l=(d=p.next()).done);l=!0)0==(h=d.value).dirtyCount&&u.push(h);t.next=21;break;case 17:t.prev=17,t.t0=t.catch(13),c=!0,f=t.t0;case 21:t.prev=21,t.prev=22,l||null==p.return||p.return();case 24:if(t.prev=24,!c){t.next=27;break}throw f;case 27:return t.finish(24);case 28:return t.finish(21);case 29:return this.modelManager.clearDirtyItems(u),t.next=32,this.handleItemsResponse(r.retrieved_items,null,C.MappingSourceRemoteRetrieved,e.KeyRequestLoadSaveAccount);case 32:return m=t.sent,this.allRetreivedItems=this.allRetreivedItems.concat(m),this.syncStatus.retrievedCount=this.allRetreivedItems.length,y=["content","auth_hash"],t.next=38,this.handleItemsResponse(r.saved_items,y,C.MappingSourceRemoteSaved,e.KeyRequestLoadSaveAccount);case 38:return v=t.sent,this.allSavedItems=this.allSavedItems.concat(v),g=r.unsaved,t.next=43,this.deprecated_handleUnsavedItemsResponse(g);case 43:return t.next=45,this.handleConflictsResponse(r.conflicts);case 45:if(b=t.sent,k=b&&b.length>0,!b){t.next=50;break}return t.next=50,this.writeItemsToLocalStorage(b,!1);case 50:return t.next=52,this.writeItemsToLocalStorage(v,!1);case 52:return t.next=54,this.writeItemsToLocalStorage(m,!1);case 54:if(!r.integrity_hash||r.cursor_token){t.next=59;break}return t.next=57,this.handleServerIntegrityHash(r.integrity_hash);case 57:t.sent||this.syncDiscordance=this.majorDataChangeThreshold||v.length>=this.majorDataChangeThreshold||g&&g.length>=this.majorDataChangeThreshold||b&&b.length>=this.majorDataChangeThreshold)&&this.notifyEvent("major-data-change"),this.callQueuedCallbacks(r),this.notifyEvent("sync:completed",{retrievedItems:this.allRetreivedItems,savedItems:this.allSavedItems}),this.allRetreivedItems=[],this.allSavedItems=[],this.performSyncAgainOnCompletion&&(this.performSyncAgainOnCompletion=!1,setTimeout((function(){w.sync(a)}),10)),t.abrupt("return",r);case 88:case"end":return t.stop()}}),t,this,[[13,17,21,29],[22,,24,28]])}))),function(e,t,n){return l.apply(this,arguments)})},{key:"handleSyncError",value:(u=y(regeneratorRuntime.mark((function e(t,n,r){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return console.log("Sync error: ",t),401==n&&this.notifyEvent("sync-session-invalid"),t?"string"==typeof t&&(t={error:{message:t}}):t={error:{message:"Could not connect to server."}},this.syncStatus.syncOpInProgress=!1,this.syncStatus.error=t.error,this.syncStatusDidChange(),this.writeItemsToLocalStorage(r,!1),this.modelManager.didSyncModelsOffline(r),this.stopCheckingIfSyncIsTakingTooLong(),this.notifyEvent("sync:error",t.error),this.callQueuedCallbacks({error:"Sync error"}),e.abrupt("return",t);case 12:case"end":return e.stop()}}),e,this)}))),function(e,t,n){return u.apply(this,arguments)})},{key:"handleItemsResponse",value:(s=y(regeneratorRuntime.mark((function e(t,n,r,a){var i,o,s;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.getActiveKeyInfo(a);case 2:return i=e.sent.keys,e.next=5,SFJS.itemTransformer.decryptMultipleItems(t,i);case 5:return e.next=7,this.modelManager.mapResponseItemsToLocalModelsOmittingFields(t,n,r);case 7:return o=e.sent,(s=o.filter((function(e){var t=e.errorDecryptingValueChanged;return e.errorDecryptingValueChanged=!1,t}))).length>0&&this.writeItemsToLocalStorage(s,!1),e.abrupt("return",o);case 11:case"end":return e.stop()}}),e,this)}))),function(e,t,n,r){return s.apply(this,arguments)})},{key:"refreshErroredItems",value:(o=y(regeneratorRuntime.mark((function t(){var n;return regeneratorRuntime.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(!((n=this.modelManager.allNondummyItems.filter((function(e){return 1==e.errorDecrypting}))).length>0)){t.next=3;break}return t.abrupt("return",this.handleItemsResponse(n,null,C.MappingSourceLocalRetrieved,e.KeyRequestLoadSaveAccount));case 3:case"end":return t.stop()}}),t,this)}))),function(){return o.apply(this,arguments)})},{key:"handleConflictsResponse",value:(i=y(regeneratorRuntime.mark((function t(n){var r,a,i,o,s,u,l,c,f,p,d,h,m,y,v,g,b,k,w,x,S,_,E,I,T,R,F,D,P,O,A;return regeneratorRuntime.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(n&&0!=n.length){t.next=2;break}return t.abrupt("return");case 2:this.loggingEnabled&&console.log("Handle Conflicted Items:",n),r={},a=!0,i=!1,o=void 0,t.prev=7,s=n[Symbol.iterator]();case 9:if(a=(u=s.next()).done){t.next=21;break}if(l=u.value,c=l.server_item||l.unsaved_item,f=this.modelManager.findItem(c.uuid)){t.next=16;break}return r[c.uuid]={},t.abrupt("continue",18);case 16:p=f.getContentCopy(),r[c.uuid]={frozenContent:p,itemRef:f};case 18:a=!0,t.next=9;break;case 21:t.next=27;break;case 23:t.prev=23,t.t0=t.catch(7),i=!0,o=t.t0;case 27:t.prev=27,t.prev=28,a||null==s.return||s.return();case 30:if(t.prev=30,!i){t.next=33;break}throw o;case 33:return t.finish(30);case 34:return t.finish(27);case 35:d=[],h=!0,m=!1,y=void 0,t.prev=39,v=n[Symbol.iterator]();case 41:if(h=(g=v.next()).done){t.next=91;break}return b=g.value,k=b.server_item||b.unsaved_item,t.t1=SFJS.itemTransformer,t.t2=[k],t.next=48,this.getActiveKeyInfo(e.KeyRequestLoadSaveAccount);case 48:return t.t3=t.sent.keys,t.next=51,t.t1.decryptMultipleItems.call(t.t1,t.t2,t.t3);case 51:if(w=r[k.uuid],x=w.frozenContent,S=w.itemRef){t.next=54;break}return t.abrupt("continue",88);case 54:if(d.push(S),"uuid_conflict"!==b.type){t.next=62;break}return t.next=58,this.modelManager.alternateUUIDForItem(S);case 58:_=t.sent,d.push(_),t.next=88;break;case 62:if("sync_conflict"!==b.type){t.next=86;break}return t.next=65,this.modelManager.createDuplicateItemFromResponseItem(k);case 65:if(E=t.sent,I=this.modelManager.duplicateItemWithCustomContent({content:x,duplicateOf:S}),T=!I.isItemContentEqualWith(E),R=!S.isItemContentEqualWith(E),F=!1,D=!1,P=!1,O=!1,k.deleted||S.deleted?O=!0:T?(new Date-S.client_updated_at)/1e3<20?(P=!0,D=!0):(F=!0,O=!0):R?M.AreItemContentsEqual({leftContent:S.content,rightContent:E.content,keysToIgnore:S.keysToIgnoreWhenCheckingContentEquality().concat(["references"]),appDataKeysToIgnore:S.appDataKeysToIgnoreWhenCheckingContentEquality()})?P=!0:(F=!0,O=!0):O=!0,!F){t.next=79;break}return t.next=77,this.modelManager.duplicateItemWithCustomContentAndAddAsConflict({content:x,duplicateOf:S});case 77:A=t.sent,d.push(A);case 79:if(D&&(this.modelManager.addDuplicatedItemAsConflict({duplicate:E,duplicateOf:S}),d.push(E)),!O){t.next=83;break}return t.next=83,this.modelManager.mapResponseItemsToLocalModelsOmittingFields([k],null,C.MappingSourceRemoteRetrieved);case 83:P&&(S.updated_at=E.updated_at,S.setDirty(!0)),t.next=88;break;case 86:return console.error("Unsupported conflict type",b.type),t.abrupt("continue",88);case 88:h=!0,t.next=41;break;case 91:t.next=97;break;case 93:t.prev=93,t.t4=t.catch(39),m=!0,y=t.t4;case 97:t.prev=97,t.prev=98,h||null==v.return||v.return();case 100:if(t.prev=100,!m){t.next=103;break}throw y;case 103:return t.finish(100);case 104:return t.finish(97);case 105:return t.abrupt("return",d);case 106:case"end":return t.stop()}}),t,this,[[7,23,27,35],[28,,30,34],[39,93,97,105],[98,,100,104]])}))),function(e){return i.apply(this,arguments)})},{key:"deprecated_handleUnsavedItemsResponse",value:(a=y(regeneratorRuntime.mark((function t(n){var r,a,i,o,s,u,l,c,f,p;return regeneratorRuntime.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(n&&0!=n.length){t.next=2;break}return t.abrupt("return");case 2:this.loggingEnabled&&console.log("Handle Unsaved Items:",n),r=!0,a=!1,i=void 0,t.prev=6,o=n[Symbol.iterator]();case 8:if(r=(s=o.next()).done){t.next=35;break}return u=s.value,l=u.item,t.t0=SFJS.itemTransformer,t.t1=[l],t.next=15,this.getActiveKeyInfo(e.KeyRequestLoadSaveAccount);case 15:return t.t2=t.sent.keys,t.next=18,t.t0.decryptMultipleItems.call(t.t0,t.t1,t.t2);case 18:if(c=this.modelManager.findItem(l.uuid)){t.next=21;break}return t.abrupt("continue",32);case 21:if("uuid_conflict"!==(f=u.error).tag){t.next=27;break}return t.next=25,this.modelManager.alternateUUIDForItem(c);case 25:t.next=32;break;case 27:if("sync_conflict"!==f.tag){t.next=32;break}return t.next=30,this.modelManager.createDuplicateItemFromResponseItem(l);case 30:p=t.sent,l.deleted||c.isItemContentEqualWith(p)||this.modelManager.addDuplicatedItemAsConflict({duplicate:p,duplicateOf:c});case 32:r=!0,t.next=8;break;case 35:t.next=41;break;case 37:t.prev=37,t.t3=t.catch(6),a=!0,i=t.t3;case 41:t.prev=41,t.prev=42,r||null==o.return||o.return();case 44:if(t.prev=44,!a){t.next=47;break}throw i;case 47:return t.finish(44);case 48:return t.finish(41);case 49:case"end":return t.stop()}}),t,this,[[6,37,41,49],[42,,44,48]])}))),function(e){return a.apply(this,arguments)})},{key:"stateless_downloadAllItems",value:function(){var t=this,n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return new Promise(function(){var r=y(regeneratorRuntime.mark((function r(a,i){var o;return regeneratorRuntime.wrap((function(r){for(;;)switch(r.prev=r.next){case 0:return o={limit:n.limit||500,sync_token:n.syncToken,cursor_token:n.cursorToken,content_type:n.contentType,event:n.event,api:S.getApiVersion()},r.prev=1,r.t0=t.httpManager,r.next=5,t.getSyncURL();case 5:r.t1=r.sent,r.t2=o,r.t3=function(){var r=y(regeneratorRuntime.mark((function r(i){var o,s;return regeneratorRuntime.wrap((function(r){for(;;)switch(r.prev=r.next){case 0:return n.retrievedItems||(n.retrievedItems=[]),o=i.retrieved_items,r.next=4,t.getActiveKeyInfo(e.KeyRequestLoadSaveAccount);case 4:return s=r.sent.keys,r.next=7,SFJS.itemTransformer.decryptMultipleItems(o,s);case 7:n.retrievedItems=n.retrievedItems.concat(o.map((function(e){return t.modelManager.createItem(e)}))),n.syncToken=i.sync_token,n.cursorToken=i.cursor_token,n.cursorToken?t.stateless_downloadAllItems(n).then(a):a(n.retrievedItems);case 11:case"end":return r.stop()}}),r)})));return function(e){return r.apply(this,arguments)}}(),r.t4=function(e,t){i(e)},r.t0.postAuthenticatedAbsolute.call(r.t0,r.t1,r.t2,r.t3,r.t4),r.next=16;break;case 12:r.prev=12,r.t5=r.catch(1),console.log("Download all items exception caught:",r.t5),i(r.t5);case 16:case"end":return r.stop()}}),r,null,[[1,12]])})));return function(e,t){return r.apply(this,arguments)}}())}},{key:"resolveOutOfSync",value:(r=y(regeneratorRuntime.mark((function e(){var t=this;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.stateless_downloadAllItems({event:"resolve-out-of-sync"}).then(function(){var e=y(regeneratorRuntime.mark((function e(n){var r,a,i,o,s,u,l,c;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:r=[],a=!0,i=!1,o=void 0,e.prev=4,s=n[Symbol.iterator]();case 6:if(a=(u=s.next()).done){e.next=18;break}if(l=u.value,!(c=t.modelManager.findItem(l.uuid))){e.next=14;break}if(l.isItemContentEqualWith(c)){e.next=14;break}return e.next=14,t.modelManager.duplicateItemAndAddAsConflict(c);case 14:r.push(l);case 15:a=!0,e.next=6;break;case 18:e.next=24;break;case 20:e.prev=20,e.t0=e.catch(4),i=!0,o=e.t0;case 24:e.prev=24,e.prev=25,a||null==s.return||s.return();case 27:if(e.prev=27,!i){e.next=30;break}throw o;case 30:return e.finish(27);case 31:return e.finish(24);case 32:return e.next=34,t.modelManager.mapResponseItemsToLocalModelsWithOptions({items:r,source:C.MappingSourceRemoteRetrieved});case 34:return e.next=36,t.writeItemsToLocalStorage(t.modelManager.allNondummyItems);case 36:return e.abrupt("return",t.sync({performIntegrityCheck:!0}));case 37:case"end":return e.stop()}}),e,null,[[4,20,24,32],[25,,27,31]])})));return function(t){return e.apply(this,arguments)}}()));case 1:case"end":return e.stop()}}),e,this)}))),function(){return r.apply(this,arguments)})},{key:"handleSignout",value:(n=y(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return this.outOfSync=!1,this.loadLocalDataPromise=null,this.performSyncAgainOnCompletion=!1,this.syncStatus.syncOpInProgress=!1,this._queuedCallbacks=[],this.syncStatus={},e.abrupt("return",this.clearSyncToken());case 7:case"end":return e.stop()}}),e,this)}))),function(){return n.apply(this,arguments)})},{key:"clearSyncToken",value:(t=y(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return this._syncToken=null,this._cursorToken=null,e.abrupt("return",this.storageManager.removeItem("syncToken"));case 3:case"end":return e.stop()}}),e,this)}))),function(){return t.apply(this,arguments)})},{key:"__setLocalDataNotLoaded",value:function(){this.loadLocalDataPromise=null,this._initialDataLoaded=!1}},{key:"queuedCallbacks",get:function(){return this._queuedCallbacks||(this._queuedCallbacks=[]),this._queuedCallbacks}}]),e}();r.SFSyncManager=P;var M=function(){function e(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};v(this,e),this.content={},this.referencingObjects=[],this.updateFromJSON(t),this.uuid||"undefined"!=typeof SFJS&&SFJS.crypto.generateUUIDSync&&(this.uuid=SFJS.crypto.generateUUIDSync()),"object"!==h(this.content)||this.content.references||(this.content.references=[])}var t;return b(e,[{key:"initUUID",value:(t=y(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(this.uuid){e.next=4;break}return e.next=3,SFJS.crypto.generateUUID();case 3:this.uuid=e.sent;case 4:case"end":return e.stop()}}),e,this)}))),function(){return t.apply(this,arguments)})},{key:"updateFromJSON",value:function(t){if(t){this.deleted=t.deleted,this.uuid=t.uuid,this.enc_item_key=t.enc_item_key,this.auth_hash=t.auth_hash,this.auth_params=t.auth_params;for(var n=0,r=["errorDecrypting","dirty","dirtyCount","dirtiedDate","dummy"];n"==n.operator?m>h:"<="==n.operator?m<=h:">="==n.operator?m>=h:"startsWith"==n.operator?m.startsWith(h):"in"==n.operator?-1!=h.indexOf(m):"includes"==n.operator?this.resolveIncludesPredicate(m,h):"matches"==n.operator&&new RegExp(h).test(m)}},{key:"resolveIncludesPredicate",value:function(t,n){if("string"==typeof n)return t.includes(n);var r;r=Array.isArray(n)?e.fromArray(n):n;var a=!0,i=!1,o=void 0;try{for(var s,u=t[Symbol.iterator]();!(a=(s=u.next()).done);a=!0){var l=s.value;if(this.ObjectSatisfiesPredicate(l,r))return!0}}catch(e){i=!0,o=e}finally{try{a||null==u.return||u.return()}finally{if(i)throw o}}return!1}},{key:"ItemSatisfiesPredicate",value:function(t,n){return Array.isArray(n)&&(n=e.fromArray(n)),this.ObjectSatisfiesPredicate(t,n)}},{key:"ItemSatisfiesPredicates",value:function(e,t){var n=!0,r=!1,a=void 0;try{for(var i,o=t[Symbol.iterator]();!(n=(i=o.next()).done);n=!0){var s=i.value;if(!this.ItemSatisfiesPredicate(e,s))return!1}}catch(e){r=!0,a=e}finally{try{n||null==o.return||o.return()}finally{if(r)throw a}}return!0}},{key:"DateFromString",value:function(e){var t=e.split("."),n=t[1],r=new Date,a=parseInt(t[0]);return"days"==n?r.setDate(r.getDate()-a):"hours"==n&&r.setHours(r.getHours()-a),r}},{key:"IsRecursiveOperator",value:function(e){return["and","or"].includes(e)}}]),e}();r.SFPredicate=A;var N=function(e){function t(e){var n;return v(this,t),(n=l(this,c(t).call(this,e))).content.desktopPrivileges||(n.content.desktopPrivileges={}),n}return f(t,e),b(t,null,[{key:"contentType",value:function(){return"SN|Privileges"}}]),b(t,[{key:"setCredentialsForAction",value:function(e,t){this.content.desktopPrivileges[e]=t}},{key:"getCredentialsForAction",value:function(e){return this.content.desktopPrivileges[e]||[]}},{key:"toggleCredentialForAction",value:function(e,t){this.isCredentialRequiredForAction(e,t)?this.removeCredentialForAction(e,t):this.addCredentialForAction(e,t)}},{key:"removeCredentialForAction",value:function(e,t){_.pull(this.content.desktopPrivileges[e],t)}},{key:"addCredentialForAction",value:function(e,t){var n=this.getCredentialsForAction(e);n.push(t),this.setCredentialsForAction(e,n)}},{key:"isCredentialRequiredForAction",value:function(e,t){return this.getCredentialsForAction(e).includes(t)}}]),t}(M);r.SFPrivileges=N;var j=function(e){function t(e){var n;return v(this,t),(n=l(this,c(t).call(this,e))).content.itemUUIDToItemHistoryMapping||(n.content.itemUUIDToItemHistoryMapping={}),Object.keys(n.content.itemUUIDToItemHistoryMapping).forEach((function(e){var t=n.content.itemUUIDToItemHistoryMapping[e];n.content.itemUUIDToItemHistoryMapping[e]=new L(t)})),n}return f(t,e),b(t,[{key:"addEntryForItem",value:function(e){return this.historyForItem(e).addHistoryEntryForItem(e)}},{key:"historyForItem",value:function(e){var t=this.content.itemUUIDToItemHistoryMapping[e.uuid];return t||(t=this.content.itemUUIDToItemHistoryMapping[e.uuid]=new L),t}},{key:"clearItemHistory",value:function(e){this.historyForItem(e).clear()}},{key:"clearAllHistory",value:function(){this.content.itemUUIDToItemHistoryMapping={}}},{key:"optimizeHistoryForItem",value:function(e){var n=this.historyForItem(e);n.entries.length>t.LargeItemEntryAmountThreshold&&n.optimize()}}]),t}(M);r.SFHistorySession=j,j.LargeItemEntryAmountThreshold=60;var L=function(){function e(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};if(v(this,e),this.entries||(this.entries=[]),t.entries){var n=!0,r=!1,a=void 0;try{for(var i,o=t.entries[Symbol.iterator]();!(n=(i=o.next()).done);n=!0){var s=i.value,u=this.createEntryForItem(s.item);u.setPreviousEntry(this.getLastEntry()),this.entries.push(u)}}catch(e){r=!0,a=e}finally{try{n||null==o.return||o.return()}finally{if(r)throw a}}}}return b(e,[{key:"createEntryForItem",value:function(t){var n=e.HistoryEntryClassMapping&&e.HistoryEntryClassMapping[t.content_type];return n||(n=B),new n(t)}},{key:"getLastEntry",value:function(){return this.entries[this.entries.length-1]}},{key:"addHistoryEntryForItem",value:function(e){var t=this.createEntryForItem(e),n=this.getLastEntry();if(t.setPreviousEntry(n),!t.isSameAsEntry(n))return this.entries.push(t),t}},{key:"clear",value:function(){this.entries.length=0}},{key:"optimize",value:function(){var t=this,n=[],r=function(t){return t.deltaSize()>e.LargeEntryDeltaThreshold},a=function(e,a,i){if(i?n.push(e):-1!==(a=n.indexOf(e))&&n.splice(a,1),i&&r(e)&&-1==e.operationVector()){var o=t.entries[a-1];o&&n.push(o)}};this.entries.forEach((function(e,n){if(0==n||n==t.entries.length-1)a(e,n,!0);else{var i=r(e);a(e,n,i)}})),this.entries=this.entries.filter((function(e,t){return-1!==n.indexOf(e)}))}}]),e}();r.SFItemHistory=L,L.LargeEntryDeltaThreshold=15;var B=function(){function e(t){v(this,e),this.item=M.deepMerge({},t),this.defaultContentKeyToDiffOn="text",this.textCharDiffLength=0,"string"==typeof this.item.updated_at&&(this.item.updated_at=new Date(this.item.updated_at))}return b(e,[{key:"setPreviousEntry",value:function(e){this.hasPreviousEntry=null!=e,this.item.content[this.defaultContentKeyToDiffOn]&&(this.textCharDiffLength=e?this.item.content[this.defaultContentKeyToDiffOn].length-e.item.content[this.defaultContentKeyToDiffOn].length:this.item.content[this.defaultContentKeyToDiffOn].length)}},{key:"operationVector",value:function(){return null!=this.textCharDiffLength?this.hasPreviousEntry&&0!=this.textCharDiffLength?this.textCharDiffLength<0?-1:1:0:1}},{key:"deltaSize",value:function(){return null!=this.textCharDiffLength?Math.abs(this.textCharDiffLength):1}},{key:"isSameAsEntry",value:function(e){if(!e)return!1;var t=new M(this.item),n=new M(e.item);return t.isItemContentEqualWith(n)}}]),e}();r.SFItemHistoryEntry=B,x="undefined"!=typeof window?window:void 0!==e?e:null;var U=function(){function e(){v(this,e),this.DefaultPBKDF2Length=768}var t,n,r,a,i,o,s,l,c,f,p,d,h,m,g;return b(e,[{key:"generateUUIDSync",value:function(){var e=x.crypto||x.msCrypto;if(e){var t=new Uint32Array(4);e.getRandomValues(t);var n=-1;return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,(function(e){n++;var r=t[n>>3]>>n%8*4&15;return("x"==e?r:3&r|8).toString(16)}))}var r=(new Date).getTime();return x.performance&&"function"==typeof x.performance.now&&(r+=performance.now()),"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,(function(e){var t=(r+16*Math.random())%16|0;return r=Math.floor(r/16),("x"==e?t:3&t|8).toString(16)}))}},{key:"generateUUID",value:(g=y(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.generateUUIDSync());case 1:case"end":return e.stop()}}),e,this)}))),function(){return g.apply(this,arguments)})},{key:"timingSafeEqual",value:function(e,t){var n=String(e),r=String(t),a=n.length,i=0;a!==r.length&&(r=n,i=1);for(var o=0;o0&&void 0!==d[0]?d[0]:{},n=t.ciphertextToAuth,r=t.contentCiphertext,a=t.encryptionKey,i=t.iv,o=t.authHash,s=t.authKey,!(d.length>1?d[1]:void 0)||o){e.next=5;break}return console.error("Auth hash is required."),e.abrupt("return");case 5:if(!o){e.next=12;break}return e.next=8,this.hmac256(n,s);case 8:if(l=e.sent,!1!==this.timingSafeEqual(o,l)){e.next=12;break}return console.error("Auth hash does not match, returning null."),e.abrupt("return",null);case 12:return c=u.enc.Hex.parse(a),f=u.enc.Hex.parse(i||""),p=u.AES.decrypt(r,c,{iv:f,mode:u.mode.CBC,padding:u.pad.Pkcs7}),e.abrupt("return",p.toString(u.enc.Utf8));case 16:case"end":return e.stop()}}),e,this)}))),function(){return m.apply(this,arguments)})},{key:"encryptText",value:(h=y(regeneratorRuntime.mark((function e(t,n,r){var a,i,o;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return a=u.enc.Hex.parse(n),i=u.enc.Hex.parse(r||""),o=u.AES.encrypt(t,a,{iv:i,mode:u.mode.CBC,padding:u.pad.Pkcs7}),e.abrupt("return",o.toString());case 4:case"end":return e.stop()}}),e)}))),function(e,t,n){return h.apply(this,arguments)})},{key:"generateRandomKey",value:(d=y(regeneratorRuntime.mark((function e(t){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",u.lib.WordArray.random(t/8).toString());case 1:case"end":return e.stop()}}),e)}))),function(e){return d.apply(this,arguments)})},{key:"generateItemEncryptionKey",value:(p=y(regeneratorRuntime.mark((function e(){var t,n,r,a;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=512,n=1,e.next=4,this.generateRandomKey(t);case 4:return r=e.sent,e.next=7,this.generateRandomKey(t);case 7:return a=e.sent,e.abrupt("return",this.pbkdf2(a,r,n,t));case 9:case"end":return e.stop()}}),e,this)}))),function(){return p.apply(this,arguments)})},{key:"firstHalfOfKey",value:(f=y(regeneratorRuntime.mark((function e(t){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",t.substring(0,t.length/2));case 1:case"end":return e.stop()}}),e)}))),function(e){return f.apply(this,arguments)})},{key:"secondHalfOfKey",value:(c=y(regeneratorRuntime.mark((function e(t){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",t.substring(t.length/2,t.length));case 1:case"end":return e.stop()}}),e)}))),function(e){return c.apply(this,arguments)})},{key:"base64",value:(l=y(regeneratorRuntime.mark((function e(t){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",x.btoa(encodeURIComponent(t).replace(/%([0-9A-F]{2})/g,(function(e,t){return String.fromCharCode("0x"+t)}))));case 1:case"end":return e.stop()}}),e)}))),function(e){return l.apply(this,arguments)})},{key:"base64Decode",value:(s=y(regeneratorRuntime.mark((function e(t){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",x.atob(t));case 1:case"end":return e.stop()}}),e)}))),function(e){return s.apply(this,arguments)})},{key:"sha256",value:(o=y(regeneratorRuntime.mark((function e(t){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",u.SHA256(t).toString());case 1:case"end":return e.stop()}}),e)}))),function(e){return o.apply(this,arguments)})},{key:"hmac256",value:(i=y(regeneratorRuntime.mark((function e(t,n){var r,a,i;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r=u.enc.Hex.parse(n),a=u.enc.Utf8.parse(t),i=u.HmacSHA256(a,r).toString(),e.abrupt("return",i);case 4:case"end":return e.stop()}}),e)}))),function(e,t){return i.apply(this,arguments)})},{key:"generateSalt",value:(a=y(regeneratorRuntime.mark((function e(t,n,r,a){var i;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.sha256([t,"SF",n,r,a].join(":"));case 2:return i=e.sent,e.abrupt("return",i);case 4:case"end":return e.stop()}}),e,this)}))),function(e,t,n,r){return a.apply(this,arguments)})},{key:"generateSymmetricKeyPair",value:(r=y(regeneratorRuntime.mark((function e(){var t,n,r,a,i,o,s,u,l,c,f=arguments;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=f.length>0&&void 0!==f[0]?f[0]:{},n=t.password,r=t.pw_salt,a=t.pw_cost,e.next=3,this.pbkdf2(n,r,a,this.DefaultPBKDF2Length);case 3:return i=e.sent,o=i.length,s=o/3,u=i.slice(0,s),l=i.slice(s,2*s),c=i.slice(2*s,3*s),e.abrupt("return",[u,l,c]);case 10:case"end":return e.stop()}}),e,this)}))),function(){return r.apply(this,arguments)})},{key:"computeEncryptionKeysForUser",value:(n=y(regeneratorRuntime.mark((function e(t,n){var r;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if("003"!=n.version){e.next=9;break}if(n.identifier){e.next=4;break}return console.error("authParams is missing identifier."),e.abrupt("return");case 4:return e.next=6,this.generateSalt(n.identifier,n.version,n.pw_cost,n.pw_nonce);case 6:r=e.sent,e.next=10;break;case 9:r=n.pw_salt;case 10:return e.abrupt("return",this.generateSymmetricKeyPair({password:t,pw_salt:r,pw_cost:n.pw_cost}).then((function(e){return{pw:e[0],mk:e[1],ak:e[2]}})));case 11:case"end":return e.stop()}}),e,this)}))),function(e,t){return n.apply(this,arguments)})},{key:"generateInitialKeysAndAuthParamsForUser",value:(t=y(regeneratorRuntime.mark((function e(t,n){var r,a,i,o;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r=this.SFJS.version,a=this.SFJS.defaultPasswordGenerationCost,e.next=4,this.generateRandomKey(256);case 4:return i=e.sent,e.next=7,this.generateSalt(t,r,a,i);case 7:return o=e.sent,e.abrupt("return",this.generateSymmetricKeyPair({password:n,pw_salt:o,pw_cost:a}).then((function(e){var n={pw_nonce:i,pw_cost:a,identifier:t,version:r};return{keys:{pw:e[0],mk:e[1],ak:e[2]},authParams:n}})));case 9:case"end":return e.stop()}}),e,this)}))),function(e,n){return t.apply(this,arguments)})}]),e}();r.SFAbstractCrypto=U;var z=function(e){function t(){return v(this,t),l(this,c(t).apply(this,arguments))}var n;return f(t,e),b(t,[{key:"pbkdf2",value:(n=y(regeneratorRuntime.mark((function e(t,n,r,a){var i;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return i={keySize:a/32,hasher:u.algo.SHA512,iterations:r},e.abrupt("return",u.PBKDF2(t,n,i).toString());case 2:case"end":return e.stop()}}),e)}))),function(e,t,r,a){return n.apply(this,arguments)})}]),t}(U);r.SFCryptoJS=z;var H=(x="undefined"!=typeof window?window:void 0!==e?e:null).crypto?x.crypto.subtle:null,K=function(e){function t(){return v(this,t),l(this,c(t).apply(this,arguments))}var n,r,a,i,o,s,u,p,d,h,m,g,k,w;return f(t,e),b(t,[{key:"pbkdf2",value:(w=y(regeneratorRuntime.mark((function e(t,n,r,a){var i;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.webCryptoImportKey(t,"PBKDF2",["deriveBits"]);case 2:if(i=e.sent){e.next=6;break}return console.log("Key is null, unable to continue"),e.abrupt("return",null);case 6:return e.abrupt("return",this.webCryptoDeriveBits(i,n,r,a));case 7:case"end":return e.stop()}}),e,this)}))),function(e,t,n,r){return w.apply(this,arguments)})},{key:"generateRandomKey",value:(k=y(regeneratorRuntime.mark((function e(t){var n=this;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",H.generateKey({name:"AES-CBC",length:t},!0,["encrypt","decrypt"]).then((function(e){return H.exportKey("raw",e).then(function(){var e=y(regeneratorRuntime.mark((function e(t){var r;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,n.arrayBufferToHexString(new Uint8Array(t));case 2:return r=e.sent,e.abrupt("return",r);case 4:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}()).catch((function(e){console.error("Error exporting key",e)}))})).catch((function(e){console.error("Error generating key",e)})));case 2:case"end":return e.stop()}}),e)}))),function(e){return k.apply(this,arguments)})},{key:"generateItemEncryptionKey",value:(g=y(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",Promise.all([this.generateRandomKey(256),this.generateRandomKey(256)]).then((function(e){return e.join("")})));case 2:case"end":return e.stop()}}),e,this)}))),function(){return g.apply(this,arguments)})},{key:"encryptText",value:(m=y(regeneratorRuntime.mark((function e(t,n,r){var a,i,o,s,u,l=this;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!r){e.next=6;break}return e.next=3,this.hexStringToArrayBuffer(r);case 3:e.t0=e.sent,e.next=7;break;case 6:e.t0=new ArrayBuffer(16);case 7:return a=e.t0,i={name:"AES-CBC",iv:a},e.next=11,this.hexStringToArrayBuffer(n);case 11:return o=e.sent,e.next=14,this.webCryptoImportKey(o,i.name,["encrypt"]);case 14:return s=e.sent,e.next=17,this.stringToArrayBuffer(t);case 17:return u=e.sent,e.abrupt("return",crypto.subtle.encrypt(i,s,u).then(function(){var e=y(regeneratorRuntime.mark((function e(t){var n;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,l.arrayBufferToBase64(t);case 2:return n=e.sent,e.abrupt("return",n);case 4:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}()));case 19:case"end":return e.stop()}}),e,this)}))),function(e,t,n){return m.apply(this,arguments)})},{key:"decryptText",value:(h=y(regeneratorRuntime.mark((function e(){var t,n,r,a,i,o,s,u,l,c,f,p,d,h=this,m=arguments;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(t=m.length>0&&void 0!==m[0]?m[0]:{},n=t.ciphertextToAuth,r=t.contentCiphertext,a=t.encryptionKey,i=t.iv,o=t.authHash,s=t.authKey,!(m.length>1?m[1]:void 0)||o){e.next=5;break}return console.error("Auth hash is required."),e.abrupt("return");case 5:if(!o){e.next=12;break}return e.next=8,this.hmac256(n,s);case 8:if(u=e.sent,!1!==this.timingSafeEqual(o,u)){e.next=12;break}return console.error("Auth hash does not match, returning null. ".concat(o," != ").concat(u)),e.abrupt("return",null);case 12:if(!i){e.next=18;break}return e.next=15,this.hexStringToArrayBuffer(i);case 15:e.t0=e.sent,e.next=19;break;case 18:e.t0=new ArrayBuffer(16);case 19:return l=e.t0,c={name:"AES-CBC",iv:l},e.next=23,this.hexStringToArrayBuffer(a);case 23:return f=e.sent,e.next=26,this.webCryptoImportKey(f,c.name,["decrypt"]);case 26:return p=e.sent,e.next=29,this.base64ToArrayBuffer(r);case 29:return d=e.sent,e.abrupt("return",crypto.subtle.decrypt(c,p,d).then(function(){var e=y(regeneratorRuntime.mark((function e(t){var n;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,h.arrayBufferToString(t);case 2:return n=e.sent,e.abrupt("return",n);case 4:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}()).catch((function(e){console.error("Error decrypting:",e)})));case 31:case"end":return e.stop()}}),e,this)}))),function(){return h.apply(this,arguments)})},{key:"hmac256",value:(d=y(regeneratorRuntime.mark((function e(t,n){var r,a,i,o=this;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.hexStringToArrayBuffer(n);case 2:return r=e.sent,e.next=5,this.webCryptoImportKey(r,"HMAC",["sign"],{name:"SHA-256"});case 5:return a=e.sent,e.next=8,this.stringToArrayBuffer(t);case 8:return i=e.sent,e.abrupt("return",crypto.subtle.sign({name:"HMAC"},a,i).then(function(){var e=y(regeneratorRuntime.mark((function e(t){var n;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,o.arrayBufferToHexString(t);case 2:return n=e.sent,e.abrupt("return",n);case 4:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}()).catch((function(e){console.error("Error computing hmac",e)})));case 10:case"end":return e.stop()}}),e,this)}))),function(e,t){return d.apply(this,arguments)})},{key:"webCryptoImportKey",value:(p=y(regeneratorRuntime.mark((function e(t,n,r,a){var i;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if("string"!=typeof t){e.next=6;break}return e.next=3,this.stringToArrayBuffer(t);case 3:e.t0=e.sent,e.next=7;break;case 6:e.t0=t;case 7:return i=e.t0,e.abrupt("return",H.importKey("raw",i,{name:n,hash:a},!1,r).then((function(e){return e})).catch((function(e){return console.error(e),null})));case 9:case"end":return e.stop()}}),e,this)}))),function(e,t,n,r){return p.apply(this,arguments)})},{key:"webCryptoDeriveBits",value:(u=y(regeneratorRuntime.mark((function e(t,n,r,a){var i,o=this;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.stringToArrayBuffer(n);case 2:return e.t0=e.sent,e.t1=r,e.t2={name:"SHA-512"},i={name:"PBKDF2",salt:e.t0,iterations:e.t1,hash:e.t2},e.abrupt("return",H.deriveBits(i,t,a).then(function(){var e=y(regeneratorRuntime.mark((function e(t){var n;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,o.arrayBufferToHexString(new Uint8Array(t));case 2:return n=e.sent,e.abrupt("return",n);case 4:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}()).catch((function(e){return console.error(e),null})));case 7:case"end":return e.stop()}}),e,this)}))),function(e,t,n,r){return u.apply(this,arguments)})},{key:"stringToArrayBuffer",value:(s=y(regeneratorRuntime.mark((function e(t){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",new Promise((function(e,n){var r=new Blob([t]),a=new FileReader;a.onload=function(t){e(t.target.result)},a.readAsArrayBuffer(r)})));case 1:case"end":return e.stop()}}),e)}))),function(e){return s.apply(this,arguments)})},{key:"arrayBufferToString",value:(o=y(regeneratorRuntime.mark((function e(t){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",new Promise((function(e,n){var r=new Blob([t]),a=new FileReader;a.onload=function(t){e(t.target.result)},a.readAsText(r)})));case 1:case"end":return e.stop()}}),e)}))),function(e){return o.apply(this,arguments)})},{key:"arrayBufferToHexString",value:(i=y(regeneratorRuntime.mark((function e(t){var n,r,a,i;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:for(n=new Uint8Array(t),r="",i=0;i5e3)||this.crypto instanceof K}},{key:"supportedVersions",value:function(){return["001","002","003"]}},{key:"isVersionNewerThanLibraryVersion",value:function(e){var t=this.version();return parseInt(e)>parseInt(t)}},{key:"isProtocolVersionOutdated",value:function(e){var t={"001":Date.parse("2018-01-01"),"002":Date.parse("2020-01-01")}[e];return!!t&&new Date>t}},{key:"costMinimumForVersion",value:function(e){return{"001":3e3,"002":3e3,"003":11e4}[e]}},{key:"defaultPasswordGenerationCost",value:function(){return this.costMinimumForVersion(this.version())}}]),e}();if(r.StandardFile=V,x)try{x.StandardFile=V,x.SFJS=new V,x.SFCryptoWeb=K,x.SFCryptoJS=z,x.SFItemTransformer=W,x.SFModelManager=C,x.SFItem=M,x.SFItemParams=O,x.SFHttpManager=S,x.SFStorageManager=F,x.SFSyncManager=P,x.SFAuthManager=w,x.SFMigrationManager=E,x.SFAlertManager=k,x.SFPredicate=A,x.SFHistorySession=j,x.SFSessionHistoryManager=T,x.SFItemHistory=L,x.SFItemHistoryEntry=B,x.SFPrivilegesManager=I,x.SFPrivileges=N,x.SFSingletonManager=R}catch(e){console.log("Exception while exporting window variables",e)}}).call(this,void 0!==t?t:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}]},{},[1])(1)}).call(t,n(3))},function(e,t){!function(t){"use strict";var n=Object.prototype,r=n.hasOwnProperty,a="function"==typeof Symbol?Symbol:{},i=a.iterator||"@@iterator",o=a.asyncIterator||"@@asyncIterator",s=a.toStringTag||"@@toStringTag",u="object"==typeof e,l=t.regeneratorRuntime;if(l)u&&(e.exports=l);else{(l=t.regeneratorRuntime=u?e.exports:{}).wrap=m;var c={},f={};f[i]=function(){return this};var p=Object.getPrototypeOf,d=p&&p(p(C([])));d&&d!==n&&r.call(d,i)&&(f=d);var h=b.prototype=v.prototype=Object.create(f);g.prototype=h.constructor=b,b.constructor=g,b[s]=g.displayName="GeneratorFunction",l.isGeneratorFunction=function(e){var t="function"==typeof e&&e.constructor;return!!t&&(t===g||"GeneratorFunction"===(t.displayName||t.name))},l.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,b):(e.__proto__=b,s in e||(e[s]="GeneratorFunction")),e.prototype=Object.create(h),e},l.awrap=function(e){return{__await:e}},k(w.prototype),w.prototype[o]=function(){return this},l.AsyncIterator=w,l.async=function(e,t,n,r){var a=new w(m(e,t,n,r));return l.isGeneratorFunction(t)?a:a.next().then((function(e){return e.done?e.value:a.next()}))},k(h),h[s]="Generator",h[i]=function(){return this},h.toString=function(){return"[object Generator]"},l.keys=function(e){var t=[];for(var n in e)t.push(n);return t.reverse(),function n(){for(;t.length;){var r=t.pop();if(r in e)return n.value=r,n.done=!1,n}return n.done=!0,n}},l.values=C,E.prototype={constructor:E,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(_),!e)for(var t in this)"t"===t.charAt(0)&&r.call(this,t)&&!isNaN(+t.slice(1))&&(this[t]=void 0)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(e){if(this.done)throw e;var t=this;function n(n,r){return o.type="throw",o.arg=e,t.next=n,r&&(t.method="next",t.arg=void 0),!!r}for(var a=this.tryEntries.length-1;a>=0;--a){var i=this.tryEntries[a],o=i.completion;if("root"===i.tryLoc)return n("end");if(i.tryLoc<=this.prev){var s=r.call(i,"catchLoc"),u=r.call(i,"finallyLoc");if(s&&u){if(this.prev=0;--n){var a=this.tryEntries[n];if(a.tryLoc<=this.prev&&r.call(a,"finallyLoc")&&this.prev=0;--t){var n=this.tryEntries[t];if(n.finallyLoc===e)return this.complete(n.completion,n.afterLoc),_(n),c}},catch:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var n=this.tryEntries[t];if(n.tryLoc===e){var r=n.completion;if("throw"===r.type){var a=r.arg;_(n)}return a}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,n){return this.delegate={iterator:C(e),resultName:t,nextLoc:n},"next"===this.method&&(this.arg=void 0),c}}}function m(e,t,n,r){var a=t&&t.prototype instanceof v?t:v,i=Object.create(a.prototype),o=new E(r||[]);return i._invoke=function(e,t,n){var r="suspendedStart";return function(a,i){if("executing"===r)throw new Error("Generator is already running");if("completed"===r){if("throw"===a)throw i;return I()}for(n.method=a,n.arg=i;;){var o=n.delegate;if(o){var s=x(o,n);if(s){if(s===c)continue;return s}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if("suspendedStart"===r)throw r="completed",n.arg;n.dispatchException(n.arg)}else"return"===n.method&&n.abrupt("return",n.arg);r="executing";var u=y(e,t,n);if("normal"===u.type){if(r=n.done?"completed":"suspendedYield",u.arg===c)continue;return{value:u.arg,done:n.done}}"throw"===u.type&&(r="completed",n.method="throw",n.arg=u.arg)}}}(e,n,o),i}function y(e,t,n){try{return{type:"normal",arg:e.call(t,n)}}catch(e){return{type:"throw",arg:e}}}function v(){}function g(){}function b(){}function k(e){["next","throw","return"].forEach((function(t){e[t]=function(e){return this._invoke(t,e)}}))}function w(e){var t;this._invoke=function(n,a){function i(){return new Promise((function(t,i){!function t(n,a,i,o){var s=y(e[n],e,a);if("throw"!==s.type){var u=s.arg,l=u.value;return l&&"object"==typeof l&&r.call(l,"__await")?Promise.resolve(l.__await).then((function(e){t("next",e,i,o)}),(function(e){t("throw",e,i,o)})):Promise.resolve(l).then((function(e){u.value=e,i(u)}),o)}o(s.arg)}(n,a,t,i)}))}return t=t?t.then(i,i):i()}}function x(e,t){var n=e.iterator[t.method];if(void 0===n){if(t.delegate=null,"throw"===t.method){if(e.iterator.return&&(t.method="return",t.arg=void 0,x(e,t),"throw"===t.method))return c;t.method="throw",t.arg=new TypeError("The iterator does not provide a 'throw' method")}return c}var r=y(n,e.iterator,t.arg);if("throw"===r.type)return t.method="throw",t.arg=r.arg,t.delegate=null,c;var a=r.arg;return a?a.done?(t[e.resultName]=a.value,t.next=e.nextLoc,"return"!==t.method&&(t.method="next",t.arg=void 0),t.delegate=null,c):a:(t.method="throw",t.arg=new TypeError("iterator result is not an object"),t.delegate=null,c)}function S(e){var t={tryLoc:e[0]};1 in e&&(t.catchLoc=e[1]),2 in e&&(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function _(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function E(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(S,this),this.reset(!0)}function C(e){if(e){var t=e[i];if(t)return t.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var n=-1,a=function t(){for(;++n=0?this.items[l]=u:this.items.push(u);case 15:n=!0,c.next=5;break;case 18:c.next=24;break;case 20:c.prev=20,c.t0=c.catch(3),r=!0,a=c.t0;case 24:c.prev=24,c.prev=25,n||null==o.return||o.return();case 27:if(c.prev=27,!r){c.next=30;break}throw a;case 30:return c.finish(27);case 31:return c.finish(24);case 32:this.notifyObserversOfEvent(e.BridgeEventReceivedItems);case 33:case"end":return c.stop()}}),null,this,[[3,20,24,32],[25,,27,31]])}},{key:"indexOfItem",value:function(e){for(var t in this.items)if(this.items[t].uuid==e.uuid)return t;return-1}},{key:"removeItemFromItems",value:function(e){this.items=this.items.filter((function(t){return t.uuid!==e.uuid}))}},{key:"createItem",value:function(e,t){this.createItems([e],t)}},{key:"createItems",value:function(e,t){this.componentManager.createItems(e,(function(e){t&&t(e.map((function(e){return new i.SFItem(e)})))}))}},{key:"saveItem",value:function(e){return regeneratorRuntime.async((function(t){for(;;)switch(t.prev=t.next){case 0:return t.abrupt("return",this.saveItems([e]));case 1:case"end":return t.stop()}}),null,this)}},{key:"saveItems",value:function(t){var n=this;return regeneratorRuntime.async((function(r){for(;;)switch(r.prev=r.next){case 0:return r.abrupt("return",new Promise((function(r,a){n.componentManager.saveItems(t,(function(t){r(t),n.notifyObserversOfEvent(e.BridgeEventSavedItem)}))})));case 1:case"end":return r.stop()}}))}},{key:"indexOfItem",value:function(e){for(var t in this.items)if(this.items[t].uuid==e.uuid)return t;return-1}},{key:"deleteItem",value:function(e,t){this.deleteItems([e],t)}},{key:"deleteItems",value:function(e,t){this.componentManager.deleteItems(e,t)}},{key:"removeItemFromItems",value:function(e){this.items=this.items.filter((function(t){return t.uuid!==e.uuid}))}}])&&o(t.prototype,n),r&&o(t,r),e}();s(u,"FileItemContentTypeKey","SN|FileSafe|File"),s(u,"FileSafeCredentialsContentType","SN|FileSafe|Credentials"),s(u,"FileDescriptorContentTypeKey","SN|FileSafe|FileMetadata"),s(u,"FileSafeIntegrationContentTypeKey","SN|FileSafe|Integration"),s(u,"BridgeEventLoadedCredentials","BridgeEventLoadedCredentials"),s(u,"BridgeEventReceivedItems","BridgeEventReceivedItems"),s(u,"BridgeEventSavedItem","BridgeEventSavedItem")},function(e,t){var n;n=function(){return this}();try{n=n||Function("return this")()||(0,eval)("this")}catch(e){"object"==typeof window&&(n=window)}e.exports=n},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),n.d(t,"default",(function(){return p}));var r=n(2),a=n(7),i=n(8),o=n(9),s=n(10),u=n(12),l=n(0);n.n(l);function c(e,t){for(var n=0;n(t=q(t,e)).length)n=e;else{var r=0,a=-1,i=-1,o=(n=t).length;for(0>r&&(r=-r>o?0:o+r),0>(a=a>o?o:a)&&(a+=o),o=r>a?0:a-r>>>0,r>>>=0,a=Array(o);++ii?Qe:o,i=1),t=Object(t);++as))return!1;if((u=i.get(e))&&i.get(t))return u==t;var u=-1,l=!0,c=2&n?new E:Qe;for(i.set(e,t),i.set(t,e);++u(n=null==n?0:Me(n))&&(n=qt(r+n,0)),h(e,ae(t,3),n)):-1}function ge(e){return null!=e&&e.length?function e(t,n,r,a,i){var o=-1,s=t.length;for(r||(r=le),i||(i=[]);++o=e}function Ie(e){var t=typeof e;return null!=e&&("object"==t||"function"==t)}function Te(e){return null!=e&&"object"==typeof e}function Re(e){return!(!Te(e)||"[object Object]"!=N(e))&&(null===(e=At(e))||"function"==typeof(e=Ct.call(e,"constructor")&&e.constructor)&&e instanceof e&&Et.call(e)==Rt)}function Fe(e){return"string"==typeof e||!Sn(e)&&Te(e)&&"[object String]"==N(e)}function De(e){return"symbol"==typeof e||Te(e)&&"[object Symbol]"==N(e)}function Pe(e){return e?(e=Oe(e))===Ge||e===-Ge?17976931348623157e292*(0>e?-1:1):e==e?e:0:0===e?e:0}function Me(e){var t=(e=Pe(e))%1;return e==e?t?e-t:e:0}function Oe(e){if("number"==typeof e)return e;if(De(e))return Ye;if(Ie(e)&&(e=Ie(e="function"==typeof e.valueOf?e.valueOf():e)?e+"":e),"string"!=typeof e)return 0===e?e:+e;e=e.replace(nt,"");var t=ot.test(e);return t||ut.test(e)?dt(e.slice(2),t?2:8):it.test(e)?Ye:+e}function Ae(e){return Y(e,Ue(e))}function Ne(e){return null==e?"":W(e)}function je(e,t,n){return(e=null==e?Qe:O(e,t))===Qe?n:e}function Le(e,t){var n;if(n=null!=e){for(var r,a=-1,i=(r=q(t,n=e)).length,o=!1;++a(e=F(t,e))||(e==t.length-1?t.pop():Lt.call(t,e,1),--this.size,0))},S.prototype.get=function(e){var t=this.__data__;return 0>(e=F(t,e))?Qe:t[e][1]},S.prototype.has=function(e){return-1r?(++this.size,n.push([e,t])):n[r][1]=t,this},_.prototype.clear=function(){this.size=0,this.__data__={hash:new x,map:new(Gt||S),string:new x}},_.prototype.delete=function(e){return e=ie(this,e).delete(e),this.size-=e?1:0,e},_.prototype.get=function(e){return ie(this,e).get(e)},_.prototype.has=function(e){return ie(this,e).has(e)},_.prototype.set=function(e,t){var n=ie(this,e),r=n.size;return n.set(e,t),this.size+=n.size==r?0:1,this},E.prototype.add=E.prototype.push=function(e){return this.__data__.set(e,"__lodash_hash_undefined__"),this},E.prototype.has=function(e){return this.__data__.has(e)},C.prototype.clear=function(){this.__data__=new S,this.size=0},C.prototype.delete=function(e){var t=this.__data__;return e=t.delete(e),this.size=t.size,e},C.prototype.get=function(e){return this.__data__.get(e)},C.prototype.has=function(e){return this.__data__.has(e)},C.prototype.set=function(e,t){var n=this.__data__;if(n instanceof S){var r=n.__data__;if(!Gt||199>r.length)return r.push([e,t]),this.size=++n.size,this;n=this.__data__=new _(r)}return n.set(e,t),this.size=n.size,this};var fn=function(e,t){if(null==e)return e;if(!Se(e))return function(e,t){return e&&pn(e,t,Be)}(e,t);for(var n=e.length,r=-1,a=Object(e);++rn&&(n=qt(r+n,0)),Fe(e)?n<=r&&-10){var a=!0,i=!1,o=void 0;try{for(var s,u=t.integrations[Symbol.iterator]();!(a=(s=u.next()).done);a=!0){var l=s.value;if(l!=e){t.setIntegrationAsDefault(l);break}}}catch(e){i=!0,o=e}finally{try{a||null==u.return||u.return()}finally{if(i)throw o}}}}))}},{key:"integrations",get:function(){return this.extensionBridge.filterItems(i.a.FileSafeIntegrationContentTypeKey)}}])&&o(t.prototype,n),r&&o(t,r),e}()},function(e,t,n){"use strict";n.d(t,"a",(function(){return u}));var r=n(1),a=(n.n(r),n(0)),i=(n.n(a),n(2));function o(e,t){for(var n=0;n0&&(e=n.credentials[0]),e})),s(this,"setCredentialAsDefault",(function(e){var t=n.getDefaultCredentials();t&&(t.content.isDefault=!1),e.content.isDefault=!0,n.extensionBridge.saveItems([t,e])})),s(this,"deleteCredential",(function(e){n.extensionBridge.deleteItem(e)})),this.extensionBridge=r,this.onCredentialLoad=a,this.credentials=[],this.extensionBridge.addEventHandler((function(e){e==i.a.BridgeEventReceivedItems&&n.reloadCredentials()}))}var t,n,r;return t=e,(n=[{key:"reloadCredentials",value:function(){this.credentials=[];var e=this.extensionBridge.filterItems(i.a.FileSafeCredentialsContentType);if(0!=e.length){var t=!0,n=!1,r=void 0;try{for(var a,o=e[Symbol.iterator]();!(t=(a=o.next()).done);t=!0){var s=a.value;this.credentials.find((function(e){return e.uuid==s.uuid}))||this.credentials.push(s)}}catch(e){n=!0,r=e}finally{try{t||null==o.return||o.return()}finally{if(n)throw r}}this.onCredentialLoad(),this.credentials.length>0&&this.didLoadCredentials()}}},{key:"createNewCredentials",value:function(){var e,t,n,r,o;return regeneratorRuntime.async((function(s){for(;;)switch(s.prev=s.next){case 0:return e=256,s.next=3,regeneratorRuntime.awrap(SFJS.crypto.generateRandomKey(e));case 3:return t=s.sent,s.next=6,regeneratorRuntime.awrap(SFJS.crypto.generateRandomKey(e));case 6:return n=s.sent,s.next=9,regeneratorRuntime.awrap(SFJS.crypto.generateInitialKeysAndAuthParamsForUser(t,n));case 9:return(r=s.sent).isDefault=0==this.credentials.length,o=new a.SFItem({content_type:i.a.FileSafeCredentialsContentType,content:r}),this.extensionBridge.saveItem(o),this.didLoadCredentials(),s.abrupt("return",o);case 15:case"end":return s.stop()}}),null,this)}},{key:"didLoadCredentials",value:function(){this.extensionBridge.notifyObserversOfEvent(i.a.BridgeEventLoadedCredentials)}},{key:"credentialForFileDescriptor",value:function(e){return this.credentials.find((function(t){return e.content.references.find((function(e){return e.uuid==t.uuid}))}))}},{key:"getAllCredentials",value:function(){return this.credentials}},{key:"saveCredential",value:function(e){this.extensionBridge.saveItem(e)}}])&&o(t.prototype,n),r&&o(t,r),e}()},function(e,t,n){"use strict";n.d(t,"a",(function(){return c}));var r=n(1),a=(n.n(r),n(0)),i=(n.n(a),n(11)),o=n.n(i),s=n(2);function u(e,t){for(var n=0;n3&&void 0!==arguments[3]&&arguments[3],i=document.createElement("a");i.setAttribute("download",t);var o=this.tempUrlForData(e,n);i.href=o,i.setAttribute("target","_blank"),a?window.location.href=i.href:(document.body.appendChild(i),i.click(),i.remove()),setTimeout((function(){r.revokeTempUrl(o)}),500)}},{key:"tempUrlForData",value:function(e,t){return window.URL.createObjectURL(new Blob([e],{type:t||"text/json"}))}},{key:"revokeTempUrl",value:function(e){window.URL.revokeObjectURL(e)}},{key:"copyTextToClipboard",value:function(e){if(window.clipboardData&&window.clipboardData.setData)return clipboardData.setData("Text",e);var t;if(document.queryCommandSupported&&document.queryCommandSupported("copy"))try{(t=document.createElement("textarea")).setAttribute("readonly",!0),t.setAttribute("contenteditable",!0),t.style.position="fixed",t.value=e,document.body.appendChild(t),t.focus(),t.select();var n=document.createRange();n.selectNodeContents(t);var r=window.getSelection();r.removeAllRanges(),r.addRange(n),t.setSelectionRange(0,t.value.length),document.execCommand("copy")}catch(e){console.error(e)}finally{document.body.removeChild(t)}}}],(n=null)&&r(t.prototype,n),a&&r(t,a),e}()}])},function(e,t,n){"use strict"; +/* +object-assign +(c) Sindre Sorhus +@license MIT +*/var r=Object.getOwnPropertySymbols,a=Object.prototype.hasOwnProperty,i=Object.prototype.propertyIsEnumerable;function o(e){if(null==e)throw new TypeError("Object.assign cannot be called with null or undefined");return Object(e)}e.exports=function(){try{if(!Object.assign)return!1;var e=new String("abc");if(e[5]="de","5"===Object.getOwnPropertyNames(e)[0])return!1;for(var t={},n=0;n<10;n++)t["_"+String.fromCharCode(n)]=n;if("0123456789"!==Object.getOwnPropertyNames(t).map((function(e){return t[e]})).join(""))return!1;var r={};return"abcdefghijklmnopqrst".split("").forEach((function(e){r[e]=e})),"abcdefghijklmnopqrst"===Object.keys(Object.assign({},r)).join("")}catch(e){return!1}}()?Object.assign:function(e,t){for(var n,s,u=o(e),l=1;l=0;--i){var o=this.tryEntries[i],s=o.completion;if("root"===o.tryLoc)return a("end");if(o.tryLoc<=this.prev){var u=r.call(o,"catchLoc"),l=r.call(o,"finallyLoc");if(u&&l){if(this.prev=0;--n){var a=this.tryEntries[n];if(a.tryLoc<=this.prev&&r.call(a,"finallyLoc")&&this.prev=0;--t){var n=this.tryEntries[t];if(n.finallyLoc===e)return this.complete(n.completion,n.afterLoc),C(n),h}},catch:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var n=this.tryEntries[t];if(n.tryLoc===e){var r=n.completion;if("throw"===r.type){var a=r.arg;C(n)}return a}}throw new Error("illegal catch attempt")},delegateYield:function(e,n,r){return this.delegate={iterator:T(e),resultName:n,nextLoc:r},"next"===this.method&&(this.arg=t),h}},e}(e.exports);try{regeneratorRuntime=r}catch(e){Function("r","regeneratorRuntime = r")(r)}},function(e,t,n){"use strict";n.r(t);var r=n(0),a=n.n(r),i=n(9),o=n.n(i),s=n(5),u=n.n(s),l=n(6),c=n.n(l),f=n(7),p=n.n(f),d=n(4),h=n.n(d),m=n(8),y=n.n(m),v=n(2),g=n.n(v),b=n(1),k=n.n(b),w=function(){function e(){u()(this,e),this.unloadHandlers=[],this.dataChangeObservers=[]}return h()(e,null,[{key:"get",value:function(){return null==this.instance&&(this.instance=new e),this.instance}}]),h()(e,[{key:"setFilesafeInstance",value:function(e){var t=this;this.filesafe=e,this.fsObserver=e.addDataChangeObserver((function(){var e=!0,n=!1,r=void 0;try{for(var a,i=t.dataChangeObservers[Symbol.iterator]();!(e=(a=i.next()).done);e=!0)(0,a.value)()}catch(e){n=!0,r=e}finally{try{e||null==i.return||i.return()}finally{if(n)throw r}}}))}},{key:"setDelegate",value:function(e){this.delegate=e}},{key:"getDelegate",value:function(){return this.delegate||{}}},{key:"addDataChangeObserver",value:function(e){this.dataChangeObservers.push(e)}},{key:"addUnloadHandler",value:function(e){this.unloadHandlers.push(e)}},{key:"unload",value:function(){var t=!0,n=!1,r=void 0;try{for(var a,i=this.unloadHandlers[Symbol.iterator]();!(t=(a=i.next()).done);t=!0)(0,a.value)()}catch(e){n=!0,r=e}finally{try{t||null==i.return||i.return()}finally{if(n)throw r}}this.dataChangeObservers=[],this.filesafe&&this.filesafe.removeDataChangeObserver(this.fsObserver),e.instance=null}},{key:"defaultRelayServerUrl",value:function(){return window.default_fs_relay_server_url||"https://filesafe.standardnotes.org"}}]),e}();k()(w,"instance",null);var x=function(e){function t(e){var n;return u()(this,t),n=c()(this,p()(t).call(this,e)),k()(g()(n),"exportCredential",(function(e){var t=btoa(JSON.stringify(e,null,2));w.get().filesafe.downloadBase64Data({base64Data:t,fileName:"sn-filesafe-keys-".concat(e.created_at.toISOString(),".json"),fileType:"text/json"})})),k()(g()(n),"deleteCredential",(function(e){0==n.numFilesForCredential(e)?w.get().filesafe.deleteCredential(e):alert("This key has files encrypted with it and cannot be deleted. First delete any associated files, then try again.")})),k()(g()(n),"createNewKeys",(function(){w.get().filesafe.createNewCredentials()})),k()(g()(n),"labelForCredential",(function(e){return e.created_at.toLocaleString()})),k()(g()(n),"numFilesForCredential",(function(e){return w.get().filesafe.numberOfFilesEncryptedWithCredential(e)})),k()(g()(n),"setCredentialAsDefault",(function(e){w.get().filesafe.setCredentialAsDefault(e)})),n.state={credentials:w.get().filesafe.getAllCredentials()||[]},w.get().addDataChangeObserver((function(){n.setState({credentials:w.get().filesafe.getAllCredentials()})})),n}return y()(t,e),h()(t,[{key:"render",value:function(){var e=this;return a.a.createElement("div",null,a.a.createElement("div",{className:"sk-panel-row"},a.a.createElement("div",{className:"sk-h2 sk-bold"},"Keys"),a.a.createElement("div",{className:"sk-button info no-border",onClick:this.createNewKeys},a.a.createElement("div",{className:"sk-label"},"Create New"))),a.a.createElement("div",{className:"list-container"},this.state.credentials.map((function(t){return a.a.createElement("div",{className:"list-item sk-horizontal-group top"},a.a.createElement("div",{className:"sk-circle x-small "+(t.content.isDefault?"info":"sk-secondary-contrast")}),a.a.createElement("div",null,a.a.createElement("div",{className:"sk-panel-row condensed sk-bold"},e.labelForCredential(t)),a.a.createElement("div",{style:{marginTop:3},className:"sk-panel-row condensed"},e.numFilesForCredential(t)," encrypted files"),a.a.createElement("div",{className:"sk-panel-row condensed"},a.a.createElement("div",{className:"sk-horizontal-group"},e.state.credentials.length>1&&!t.content.isDefault&&a.a.createElement("a",{className:"info",onClick:function(){e.setCredentialAsDefault(t)}},"Make Default"),a.a.createElement("a",{className:"info",onClick:function(){e.exportCredential(t)}},"Export"),a.a.createElement("a",{className:"danger",onClick:function(){e.deleteCredential(t)}},"Delete")))))}))))}}]),t}(a.a.Component),S=n(3),_=n.n(S),E=function(){function e(t){var n=t.credentialManager,r=t.integrationManager;u()(this,e),this.credentialManager=n,this.integrationManager=r}return h()(e,[{key:"getMessages",value:function(){var e,t;return _.a.async((function(n){for(;;)switch(n.prev=n.next){case 0:return e=[],n.next=3,_.a.awrap(this.credentialManager.getDefaultCredentials());case 3:return n.sent||e.push({message:"Create keys by selecting Create New under Keys.",css:"sk-base"}),(t=this.integrationManager.integrations)&&0!=t.length||e.push({message:"Add a new integration by selecting Add New under Integrations",css:"sk-base"}),n.abrupt("return",e);case 8:case"end":return n.stop()}}),null,this)}}]),e}(),C=function(e){function t(e){var n;return u()(this,t),(n=c()(this,p()(t).call(this,e))).state={},n}return y()(t,e),h()(t,[{key:"render",value:function(){return a.a.createElement("div",{id:"messages"},a.a.createElement("div",{className:"title"},"Complete the following steps before uploading your first file:"),a.a.createElement("ul",null,this.props.messages.map((function(e){return a.a.createElement("li",{dangerouslySetInnerHTML:{__html:e.message},className:e.css})}))))}}]),t}(a.a.Component),I=function(e){function t(e){var n;return u()(this,t),n=c()(this,p()(t).call(this,e)),k()(g()(n),"setStatusForFile",(function(e,t,r){n.setState({fileStatusFile:e,fileStatus:t,hasStatusSpinner:r})})),k()(g()(n),"decryptFileDescriptor",(function(e){var t,r;return _.a.async((function(a){for(;;)switch(a.prev=a.next){case 0:if(t=w.get().filesafe.integrationForFileDescriptor(e)){a.next=4;break}return alert("Unable to find integration for file. If you have deleted the integration, please re-add it and try again."),a.abrupt("return");case 4:return r=w.get().filesafe.displayStringForIntegration(t),n.setStatusForFile(e,"Downloading from ".concat(r,"..."),!0),a.abrupt("return",w.get().filesafe.downloadFileFromDescriptor(e).then((function(t){return n.setStatusForFile(e,"Decrypting...",!0),w.get().filesafe.decryptFile({fileDescriptor:e,fileItem:t}).then((function(t){return{base64Data:t.decryptedData,fileName:e.content.fileName,fileType:e.content.fileType}})).catch((function(t){console.error("filesafe-embed | error decrypting file:",t),n.flashErrorForFileDescriptor(e,"Error decrypting file.")}))})).catch((function(t){console.error("Error downloading file",t),n.flashErrorForFileDescriptor(e,"Error downloading file.")})));case 7:case"end":return a.stop()}}))})),k()(g()(n),"downloadFile",(function(e){var t,r;return _.a.async((function(a){for(;;)switch(a.prev=a.next){case 0:if(!n.isMobile){a.next=5;break}return t=w.get().filesafe.getPlatform(),alert("Downloading files is not currently supported on ".concat("ios"==t?"iOS":"Android",".")),a.abrupt("return");case 5:return a.next=7,_.a.awrap(n.decryptFileDescriptor(e));case 7:if(r=a.sent){a.next=11;break}return console.error("decryptFile returned nil data"),a.abrupt("return");case 11:w.get().filesafe.downloadBase64Data(r),n.setStatusForFile(e,null);case 13:case"end":return a.stop()}}))})),k()(g()(n),"previewFile",(function(e){var t,r;return _.a.async((function(a){for(;;)switch(a.prev=a.next){case 0:return a.next=2,_.a.awrap(n.decryptFileDescriptor(e));case 2:t=a.sent,r=w.get().filesafe.createTemporaryFileUrl({base64Data:t.base64Data,dataType:t.fileType}),n.setStatusForFile(e,null),n.setState({previewUrl:r,previewingFile:e});case 6:case"end":return a.stop()}}))})),k()(g()(n),"onClickPreview",(function(){setTimeout((function(){n.revokePreview()}),500)})),k()(g()(n),"selectFile",(function(e,t){e.target.focus(),n.state.selectedFile==t?(n.setState({selectedFile:null}),n.delegate.onSelectFile&&n.delegate.onSelectFile(null)):(n.setState({selectedFile:t}),n.delegate.onSelectFile&&n.delegate.onSelectFile(t)),n.revokePreview()})),k()(g()(n),"deleteFile",(function(e){w.get().filesafe.deleteFileFromDescriptor(e)})),k()(g()(n),"copyInsertionLink",(function(e){var t="[FileSafe:".concat(e.uuid,":").concat(e.content.fileName,"]");w.get().filesafe.copyTextToClipboard(t),n.setState({copiedLink:e}),setTimeout((function(){n.setState({copiedLink:null})}),1e3)})),k()(g()(n),"isFileSelected",(function(e){return n.state.selectedFile==e})),k()(g()(n),"elementForFile",(function(e){var t,r=w.get().filesafe.integrationForFileDescriptor(e);t=r?w.get().filesafe.displayStringForIntegration(r):"Integration Not Found";var i=e.content.serverMetadata.file_path,o=n.state.previewUrl&&n.state.previewingFile==e,s=n.state.fileStatusFile==e&&n.state.fileStatus,u=n.state.hasStatusSpinner;return a.a.createElement("div",{className:"file-item-container "+(n.isFileSelected(e)?"expanded":"")},a.a.createElement("div",{onClick:function(t){n.selectFile(t,e)},className:"file-item-button sk-button info "+(n.isFileSelected(e)?"selected":void 0)},a.a.createElement("div",{className:"sk-label"},e.content.fileName),s&&a.a.createElement("div",{className:"file-download-status sk-horizontal-group"},u&&a.a.createElement("div",{className:"sk-spinner x-small"}),a.a.createElement("div",{className:"file-status-label"},n.state.fileStatus)),n.isFileSelected(e)&&a.a.createElement("div",{className:"file-item-options-wrapper"},a.a.createElement("div",{onClick:function(e){e.stopPropagation()},className:"sk-app-bar file-item-options"},a.a.createElement("div",{className:"center"},a.a.createElement("div",{onClick:function(t){t.stopPropagation(),n.downloadFile(e)},className:"sk-app-bar-item"},a.a.createElement("div",{className:"sk-label contrast "+(n.isMobile?"disabled":"")},"Download")),a.a.createElement("div",{className:"sk-app-bar-item border"}),n.supportsPreviews&&o&&a.a.createElement("a",{className:"sk-app-bar-item",href:n.state.previewUrl,onClick:function(e){e.stopPropagation(),n.onClickPreview()},target:"_blank"},a.a.createElement("div",{className:"sk-label contrast"},"Open Preview")),n.supportsPreviews&&!o&&a.a.createElement("div",{onClick:function(t){t.stopPropagation(),n.previewFile(e)},className:"sk-app-bar-item"},a.a.createElement("div",{className:"sk-label contrast "+(n.isMobile?"disabled":"")},"Preview")),n.supportsPreviews&&a.a.createElement("div",{className:"sk-app-bar-item border"}),a.a.createElement("div",{onClick:function(t){t.stopPropagation(),n.copyInsertionLink(e)},className:"sk-app-bar-item"},a.a.createElement("div",{className:"sk-label contrast"},n.state.copiedLink==e?"Copied":"Copy Insert Link")),a.a.createElement("div",{className:"sk-app-bar-item border"}),a.a.createElement("div",{onClick:function(t){t.stopPropagation(),n.deleteFile(e)},className:"sk-app-bar-item"},a.a.createElement("div",{className:"sk-label contrast"},"Delete")))),a.a.createElement("div",{className:"file-location"},a.a.createElement("strong",null,t),a.a.createElement("span",null," ",i)))))})),n.state={},n.delegate=w.get().getDelegate(),n}return y()(t,e),h()(t,[{key:"revokePreview",value:function(){this.state.previewUrl&&w.get().filesafe.revokeTempUrl(this.state.previewUrl),this.setState({previewUrl:null,previewingFile:null})}},{key:"flashErrorForFileDescriptor",value:function(e,t){var n=this;this.setStatusForFile(e,t,!1),setTimeout((function(){n.setStatusForFile(null)}),2500)}},{key:"render",value:function(){var e=this;return this.props.files.map((function(t){return e.elementForFile(t)}))}},{key:"supportsPreviews",get:function(){if(void 0!==this._supportsPreview)return this._supportsPreview;var e=w.get().filesafe.getEnvironment();if(null==e)return!1;this._supportsPreview="web"==e}},{key:"isMobile",get:function(){return w.get().filesafe.isMobile()}}]),t}(a.a.Component),T=function(e){function t(e){var n;return u()(this,t),n=c()(this,p()(t).call(this,e)),k()(g()(n),"event_preventDefaults",(function(e){e.preventDefault(),e.stopPropagation()})),k()(g()(n),"event_highlight",(function(e){n.event_preventDefaults(e),n.rootElement.classList.add("highlight")})),k()(g()(n),"event_unhighlight",(function(e){n.event_preventDefaults(e),n.rootElement.classList.remove("highlight")})),k()(g()(n),"event_drop",(function(e){n.event_unhighlight(e),n.event_preventDefaults(e);var t=e.dataTransfer.files;n.handleDroppedFiles(t)})),k()(g()(n),"handleDroppedFiles",(function(e){var t,r,a,i,o,s;return _.a.async((function(u){for(;;)switch(u.prev=u.next){case 0:if(0!=w.get().filesafe.getAllIntegrations().length){u.next=3;break}return alert("Please set up at least one integration before attempting to upload a file. To do this, press Expand, and select Add New in the Integrations section."),u.abrupt("return");case 3:t=!0,r=!1,a=void 0,u.prev=6,i=e[Symbol.iterator]();case 8:if(t=(o=i.next()).done){u.next=17;break}if(s=o.value){u.next=12;break}return u.abrupt("continue",14);case 12:return u.next=14,_.a.awrap(n.readFile(s));case 14:t=!0,u.next=8;break;case 17:u.next=23;break;case 19:u.prev=19,u.t0=u.catch(6),r=!0,a=u.t0;case 23:u.prev=23,u.prev=24,t||null==i.return||i.return();case 26:if(u.prev=26,!r){u.next=29;break}throw a;case 29:return u.finish(26);case 30:return u.finish(23);case 31:case"end":return u.stop()}}),null,null,[[6,19,23,31],[24,,26,30]])})),n.messagesManager=new E({credentialManager:w.get().filesafe.credentialManager,integrationManager:w.get().filesafe.integrationManager}),n.messagesManager.getMessages().then((function(e){n.setState({messages:e})})),n.state={noteFiles:w.get().filesafe.fileDescriptorsForCurrentNote(),messages:[]},w.get().addDataChangeObserver((function(){n.reload()})),w.get().addUnloadHandler((function(){window.removeEventListener("dragenter",n.event_highlight,!1),window.removeEventListener("dragover",n.event_highlight,!1),window.removeEventListener("dragleave",n.event_unhighlight,!1),window.removeEventListener("drop",n.event_drop,!1)})),n}return y()(t,e),h()(t,[{key:"reload",value:function(){var e;return _.a.async((function(t){for(;;)switch(t.prev=t.next){case 0:return t.next=2,_.a.awrap(this.messagesManager.getMessages());case 2:e=t.sent,this.setState({noteFiles:w.get().filesafe.fileDescriptorsForCurrentNote(),messages:e});case 4:case"end":return t.stop()}}),null,this)}},{key:"componentDidMount",value:function(){this.configureFileForm(),window.addEventListener("dragenter",this.event_highlight,!1),window.addEventListener("dragover",this.event_highlight,!1),window.addEventListener("dragleave",this.event_unhighlight,!1),window.addEventListener("drop",this.event_drop,!1)}},{key:"configureFileForm",value:function(){var e=this,t=this.fileInput;this.dropContainer,t&&(t.onchange=function(t){var n=t.target.files;e.handledFiles||e.handleDroppedFiles(n)})}},{key:"reset",value:function(){this.setState({rawData:null,decryptedItems:null,requestPassword:!1})}},{key:"readFile",value:function(e){var t=this;return _.a.async((function(n){for(;;)switch(n.prev=n.next){case 0:return n.abrupt("return",new Promise((function(n,r){var a=new FileReader,i=!1;a.onload=function(r){var a,o,s,u;return _.a.async((function(l){for(;;)switch(l.prev=l.next){case 0:if(a=r.target.result,!i){l.next=7;break}a=JSON.parse(a),o=a.items[0],t.decryptDraggedFile(o).then(n),l.next=20;break;case 7:if(!((s=a).byteLength>5e7)){l.next=14;break}return alert("The maximum upload size is ".concat(50," megabytes per file.")),t.setState({status:null}),n(),l.abrupt("return");case 14:return l.next=16,_.a.awrap(SFJS.crypto.arrayBufferToBase64(s));case 16:return u=l.sent,l.next=19,_.a.awrap(t.encryptFile(u,e.name,e.type));case 19:n();case 20:case"end":return l.stop()}}))},t.setState({status:"Reading file..."}),e.name.endsWith(".sf")||e.name.endsWith(".json")?(i=!0,a.readAsText(e)):a.readAsArrayBuffer(e)})));case 4:case"end":return n.stop()}}))}},{key:"decryptDraggedFile",value:function(e){var t,n,r,a,i,o,s,u,l=this;return _.a.async((function(c){for(;;)switch(c.prev=c.next){case 0:this.setState({status:"Decrypting..."}),t=w.get().filesafe.getAllCredentials(),n=function(t){return _.a.async((function(n){for(;;)switch(n.prev=n.next){case 0:return n.abrupt("return",new Promise((function(n,r){w.get().filesafe.decryptFile({fileItem:e,credential:t}).then((function(e){var t=e.decryptedItem;w.get().filesafe.downloadBase64Data({base64Data:e.decryptedData,fileName:t.content.fileName,fileType:t.content.fileType}),l.setState({status:null}),n(!0)})).catch((function(e){console.error("Error decrypting:",e),l.flashError("Error decrypting file."),r(!1)}))})));case 1:case"end":return n.stop()}}))},r=!0,a=!1,i=void 0,c.prev=6,o=t[Symbol.iterator]();case 8:if(r=(s=o.next()).done){c.next=18;break}return u=s.value,c.next=12,_.a.awrap(n(u));case 12:if(!c.sent){c.next=15;break}return c.abrupt("return");case 15:r=!0,c.next=8;break;case 18:c.next=24;break;case 20:c.prev=20,c.t0=c.catch(6),a=!0,i=c.t0;case 24:c.prev=24,c.prev=25,r||null==o.return||o.return();case 27:if(c.prev=27,!a){c.next=30;break}throw i;case 30:return c.finish(27);case 31:return c.finish(24);case 32:case"end":return c.stop()}}),null,this,[[6,20,24,32],[25,,27,31]])}},{key:"wait",value:function(e){return _.a.async((function(t){for(;;)switch(t.prev=t.next){case 0:return t.abrupt("return",new Promise((function(t,n){setTimeout((function(){t()}),1e3*e)})));case 1:case"end":return t.stop()}}))}},{key:"encryptFile",value:function(e,t,n){var r,a,i=this;return _.a.async((function(o){for(;;)switch(o.prev=o.next){case 0:if(r=w.get().filesafe.getDefaultCredentials()){o.next=5;break}return this.setState({status:null}),alert("Please set up at least one key before attempting to upload a file. To do this, press Expand, and select Create New in the Keys section."),o.abrupt("return");case 5:if(a=w.get().filesafe.getDefaultIntegration()){o.next=10;break}return this.setState({status:null}),alert("Please set up at least one integration before attempting to upload a file. To do this, press Expand, and select Add New in the Integrations section."),o.abrupt("return");case 10:return this.setState({status:"Encrypting..."}),o.abrupt("return",w.get().filesafe.encryptFile({data:e,inputFileName:t,fileType:n,credential:r}).then((function(e){return _.a.async((function(o){for(;;)switch(o.prev=o.next){case 0:return i.setState({status:"Uploading to ".concat(w.get().filesafe.displayStringForIntegration(a),"...")}),o.next=3,_.a.awrap(i.wait(.5));case 3:return o.abrupt("return",w.get().filesafe.uploadFile({fileItem:e,inputFileName:t,fileType:n,credential:r}).then((function(){i.setState({status:"Upload Success."}),setTimeout((function(){i.setState({status:null})}),2e3)})).catch((function(e){console.error("fs-embed | error uploading file:",e),i.flashError("Error uploading file.")})));case 4:case"end":return o.stop()}}))})));case 12:case"end":return o.stop()}}),null,this)}},{key:"flashError",value:function(e){var t=this;this.setState({status:e,statusClass:"danger"}),setTimeout((function(){t.setState({status:null,statusClass:null})}),2500)}},{key:"render",value:function(){var e=this,t=this.state.statusClass?this.state.statusClass:"info",n="info"==t;return a.a.createElement("div",{className:"sn-component files-view"},a.a.createElement("div",{className:"sk-panel-row align-top"},a.a.createElement("div",{className:"files"},this.state.messages.length>0&&a.a.createElement("div",{id:"messages-container",className:"sk-panel-section"},a.a.createElement(C,{messages:this.state.messages})),this.state.status&&a.a.createElement("div",{id:"file-upload-status",className:"sk-horizontal-group"},n&&a.a.createElement("div",{className:"sk-spinner info small"}),a.a.createElement("div",{className:t},this.state.status)),a.a.createElement("div",{id:"add-file-button-container"},a.a.createElement("div",{className:"file sk-button info"},a.a.createElement("label",{className:"no-style"},a.a.createElement("input",{type:"file",style:{display:"none"},onChange:function(t){e.handleDroppedFiles(t.target.files)}}),a.a.createElement("div",{id:"attach-file-button-label",className:"sk-label"},"Attach File")))),a.a.createElement(I,{files:this.state.noteFiles}))))}},{key:"rootElement",get:function(){return document.getElementById("filesafe-embed")}},{key:"dropContainer",get:function(){return document.getElementById("files-view")}},{key:"fileInput",get:function(){return document.getElementById("file-input")}}]),t}(a.a.Component),R=function(e){function t(e){var n;return u()(this,t),n=c()(this,p()(t).call(this,e)),k()(g()(n),"toggleVisibility",(function(){n.setState({expanded:!n.state.expanded})})),n.state={expanded:!1,files:w.get().filesafe.getAllFileDescriptors()||[]},w.get().addDataChangeObserver((function(){n.setState({files:w.get().filesafe.getAllFileDescriptors()})})),n}return y()(t,e),h()(t,[{key:"render",value:function(){return a.a.createElement("div",{className:"files-view"},a.a.createElement("div",{className:"sk-panel-row justify-left"},a.a.createElement("div",{className:"sk-horizontal-group"},a.a.createElement("div",{className:"sk-panel-section-title"},"All Files ",a.a.createElement("span",{style:{fontWeight:"normal"}},"(",this.state.files.length,")")),a.a.createElement("a",{className:"info",onClick:this.toggleVisibility},this.state.expanded?"Hide":"Show"))),this.state.expanded&&a.a.createElement("div",{className:"sk-panel-row"},a.a.createElement("div",{className:"files"},a.a.createElement(I,{files:this.state.files}))))}}]),t}(a.a.Component),F=function(e){function t(e){var n;return u()(this,t),n=c()(this,p()(t).call(this,e)),k()(g()(n),"handleKeyPress",(function(e){"Enter"===e.key&&n.submitIntegrationCode()})),k()(g()(n),"handleTextChange",(function(e){var t=e.target.value;n.setState({integrationCode:t})})),k()(g()(n),"submitIntegrationCode",(function(){var e=n.state.integrationCode;e&&0!=e.length&&w.get().filesafe.saveIntegrationFromCode(e).then((function(){n.setState({integrationCode:null,showInputForm:!1}),n.reloadIntegrations()})).catch((function(){alert("Invalid integration code. Ensure the correct value is copied and try again.")}))})),k()(g()(n),"addNewIntegrationClicked",(function(){window.open(w.get().defaultRelayServerUrl(),"_blank"),n.setState({showInputForm:!0})})),k()(g()(n),"cancelIntegrationForm",(function(){n.setState({showInputForm:!1})})),k()(g()(n),"deleteIntegration",(function(e){w.get().filesafe.deleteIntegration(e)})),k()(g()(n),"setIntegrationAsDefaultUploadSource",(function(e){w.get().filesafe.setIntegrationAsDefault(e)})),n.state={integrations:w.get().filesafe.getAllIntegrations()||[]},w.get().addDataChangeObserver((function(){n.reloadIntegrations()})),n}return y()(t,e),h()(t,[{key:"reloadIntegrations",value:function(){var e=w.get().filesafe.getAllIntegrations();this.setState({integrations:e})}},{key:"componentDidMount",value:function(){}},{key:"componentWillUnmount",value:function(){}},{key:"displayStringForIntegration",value:function(e){return w.get().filesafe.displayStringForIntegration(e)}},{key:"render",value:function(){var e=this,t=this.state.integrations.length>1;return a.a.createElement("div",null,a.a.createElement("div",{className:"sk-panel-row"},a.a.createElement("div",{className:"sk-h2 sk-bold"},"Integrations"),!this.state.showInputForm&&a.a.createElement("div",{className:"sk-button info no-border",onClick:this.addNewIntegrationClicked},a.a.createElement("div",{className:"sk-label"},"Add New"))),a.a.createElement("div",{id:"integrations"},this.state.showInputForm&&a.a.createElement("div",{className:"sk-notification info"},a.a.createElement("strong",null,"New Integration"),a.a.createElement("p",{className:"sk-p"},"A new tab has opened. After you complete the authentication flow, enter the code you receive below."),a.a.createElement("div",{className:"sk-panel-row"}),a.a.createElement("input",{className:"title sk-input contrast",type:"text",placeholder:"Enter integration code",value:this.state.integrationCode,onChange:this.handleTextChange,onKeyPress:this.handleKeyPress}),a.a.createElement("div",{className:"sk-button-group",style:{marginTop:10}},a.a.createElement("div",{className:"sk-button neutral",onClick:this.cancelIntegrationForm},a.a.createElement("a",{className:"sk-label"},"Cancel")),a.a.createElement("div",{className:"sk-button sk-base",onClick:this.submitIntegrationCode},a.a.createElement("a",{className:"sk-label"},"Submit"))))),a.a.createElement("div",{className:"list-container"},this.state.integrations.map((function(n){return a.a.createElement("div",{className:"list-item sk-horizontal-group top"},a.a.createElement("div",{className:"sk-circle x-small "+(n.content.isDefaultUploadSource?"info":"sk-secondary-contrast")}),a.a.createElement("div",null,a.a.createElement("div",{className:"sk-panel-row condensed sk-bold"},e.displayStringForIntegration(n)),a.a.createElement("div",{className:"sk-panel-row condensed"},a.a.createElement("div",{className:"sk-horizontal-group"},t&&!n.content.isDefaultUploadSource&&a.a.createElement("a",{className:"info",onClick:function(){e.setIntegrationAsDefaultUploadSource(n)}},"Make Default"),a.a.createElement("a",{className:"danger",onClick:function(){e.deleteIntegration(n)}},"Delete")))))}))))}}]),t}(a.a.Component),D=function(e){function t(e){var n;return u()(this,t),(n=c()(this,p()(t).call(this,e))).state={messages:[]},n}return y()(t,e),h()(t,[{key:"render",value:function(){return a.a.createElement("div",{id:"home",className:"sk-panel static"},a.a.createElement("div",{id:"main-content",className:"sk-panel-content"},a.a.createElement("div",{className:"sk-panel-section"},a.a.createElement(T,null)),a.a.createElement("div",{className:"sk-panel-section"},a.a.createElement(F,null)),a.a.createElement("div",{className:"sk-panel-section"},a.a.createElement(x,null)),a.a.createElement("div",{className:"sk-panel-section"},a.a.createElement(R,null))))}}]),t}(a.a.Component),P=function(e){function t(e){return u()(this,t),c()(this,p()(t).call(this,e))}return y()(t,e),h()(t,null,[{key:"renderInElement",value:function(e,n,r){w.get().setFilesafeInstance(n),w.get().setDelegate(r),o.a.render(a.a.createElement(t),e)}},{key:"unload",value:function(e){w.get().unload(),o.a.unmountComponentAtNode(e)}}]),h()(t,[{key:"render",value:function(){return a.a.createElement("div",{id:"filesafe-embed"},a.a.createElement("div",{className:"sn-component"},a.a.createElement(D,null)))}}]),t}(a.a.Component);t.default={FilesafeEmbed:P,React:a.a,ReactDOM:o.a}}])},function(e,t,n){"use strict";function r(e,t){for(var n=0;n0&&this.requestPermissions(this.initialPermissions);var t=!0,n=!1,r=void 0;try{for(var a,i=this.messageQueue[Symbol.iterator]();!(t=(a=i.next()).done);t=!0){var o=a.value;this.postMessage(o.action,o.data,o.callback)}}catch(e){n=!0,r=e}finally{try{t||null==i.return||i.return()}finally{if(n)throw r}}this.messageQueue=[],this.loggingEnabled&&console.log("onReadyData",e),this.activateThemes(e.activeThemeUrls||[]),this.onReadyCallback&&this.onReadyCallback()}},{key:"getSelfComponentUUID",value:function(){return this.uuid}},{key:"isRunningInDesktopApplication",value:function(){return"desktop"===this.environment}},{key:"setComponentDataValueForKey",value:function(e,t){this.componentData[e]=t,this.postMessage("set-component-data",{componentData:this.componentData},(function(e){}))}},{key:"clearComponentData",value:function(){this.componentData={},this.postMessage("set-component-data",{componentData:this.componentData},(function(e){}))}},{key:"componentDataValueForKey",value:function(e){return this.componentData[e]}},{key:"postMessage",value:function(e,t,n){if(this.sessionKey){var r={action:e,data:t,messageId:this.generateUUID(),sessionKey:this.sessionKey,api:"component"},a=JSON.parse(JSON.stringify(r));a.callback=n,this.sentMessages.push(a),this.isMobile&&(r=JSON.stringify(r)),this.loggingEnabled&&console.log("Posting message:",r),window.parent.postMessage(r,this.origin)}else this.messageQueue.push({action:e,data:t,callback:n})}},{key:"setSize",value:function(e,t,n){this.postMessage("set-size",{type:e,width:t,height:n},(function(e){}))}},{key:"requestPermissions",value:function(e,t){this.postMessage("request-permissions",{permissions:e},function(e){t&&t()}.bind(this))}},{key:"streamItems",value:function(e,t){Array.isArray(e)||(e=[e]),this.postMessage("stream-items",{content_types:e},function(e){t(e.items)}.bind(this))}},{key:"streamContextItem",value:function(e){var t=this;this.postMessage("stream-context-item",null,(function(n){var r=n.item;(!t.lastStreamedItem||t.lastStreamedItem.uuid!==r.uuid)&&t.pendingSaveTimeout&&(clearTimeout(t.pendingSaveTimeout),t._performSavingOfItems(t.pendingSaveParams),t.pendingSaveTimeout=null,t.pendingSaveParams=null),t.lastStreamedItem=r,e(t.lastStreamedItem)}))}},{key:"selectItem",value:function(e){this.postMessage("select-item",{item:this.jsonObjectForItem(e)})}},{key:"createItem",value:function(e,t){this.postMessage("create-item",{item:this.jsonObjectForItem(e)},function(e){var n=e.item;!n&&e.items&&e.items.length>0&&(n=e.items[0]),this.associateItem(n),t&&t(n)}.bind(this))}},{key:"createItems",value:function(e,t){var n=this,r=e.map((function(e){return n.jsonObjectForItem(e)}));this.postMessage("create-items",{items:r},function(e){t&&t(e.items)}.bind(this))}},{key:"associateItem",value:function(e){this.postMessage("associate-item",{item:this.jsonObjectForItem(e)})}},{key:"deassociateItem",value:function(e){this.postMessage("deassociate-item",{item:this.jsonObjectForItem(e)})}},{key:"clearSelection",value:function(){this.postMessage("clear-selection",{content_type:"Tag"})}},{key:"deleteItem",value:function(e,t){this.deleteItems([e],t)}},{key:"deleteItems",value:function(e,t){var n={items:e.map(function(e){return this.jsonObjectForItem(e)}.bind(this))};this.postMessage("delete-items",n,(function(e){t&&t(e)}))}},{key:"sendCustomEvent",value:function(e,t,n){this.postMessage(e,t,function(e){n&&n(e)}.bind(this))}},{key:"saveItem",value:function(e,t){var n=arguments.length>2&&void 0!==arguments[2]&&arguments[2];this.saveItems([e],t,n)}},{key:"saveItemWithPresave",value:function(e,t,n){this.saveItemsWithPresave([e],t,n)}},{key:"saveItemsWithPresave",value:function(e,t,n){this.saveItems(e,n,!1,t)}},{key:"_performSavingOfItems",value:function(e){var t=e.items,n=e.presave,r=e.callback;n&&n();var a=[],i=!0,o=!1,s=void 0;try{for(var u,l=t[Symbol.iterator]();!(i=(u=l.next()).done);i=!0){var c=u.value;a.push(this.jsonObjectForItem(c))}}catch(e){o=!0,s=e}finally{try{i||null==l.return||l.return()}finally{if(o)throw s}}this.postMessage("save-items",{items:a},(function(e){r&&r()}))}},{key:"saveItems",value:function(e,t){var n=this,r=arguments.length>2&&void 0!==arguments[2]&&arguments[2],a=arguments.length>3?arguments[3]:void 0;if(this.pendingSaveItems||(this.pendingSaveItems=[]),1!=this.coallesedSaving||r)this._performSavingOfItems({items:e,presave:a,callback:t});else{this.pendingSaveTimeout&&clearTimeout(this.pendingSaveTimeout);var i=e.map((function(e){return e.uuid})),o=this.pendingSaveItems.filter((function(e){return!i.includes(e.uuid)}));this.pendingSaveItems=o.concat(e),this.pendingSaveParams={items:this.pendingSaveItems,presave:a,callback:t},this.pendingSaveTimeout=setTimeout((function(){n._performSavingOfItems(n.pendingSaveParams),n.pendingSaveItems=[],n.pendingSaveTimeout=null,n.pendingSaveParams=null}),this.coallesedSavingDelay)}}},{key:"jsonObjectForItem",value:function(e){var t=Object.assign({},e);return t.children=null,t.parent=null,t}},{key:"getItemAppDataValue",value:function(e,t){var n=e.content.appData&&e.content.appData["org.standardnotes.sn"];return n?n[t]:null}},{key:"activateThemes",value:function(e){if(this.loggingEnabled&&console.log("Incoming themes",e),this.activeThemes.sort().toString()!=e.sort().toString()){var t=e||[],n=[],r=!0,a=!1,i=void 0;try{for(var o,s=this.activeThemes[Symbol.iterator]();!(r=(o=s.next()).done);r=!0){var u=o.value;e.includes(u)?t=t.filter((function(e){return e!=u})):n.push(u)}}catch(e){a=!0,i=e}finally{try{r||null==s.return||s.return()}finally{if(a)throw i}}this.loggingEnabled&&(console.log("Deactivating themes:",n),console.log("Activating themes:",t));for(var l=0,c=n;l>3]>>n%8*4&15;return("x"==e?r:3&r|8).toString(16)}))}var r=(new Date).getTime();return window.performance&&"function"==typeof window.performance.now&&(r+=performance.now()),"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,(function(e){var t=(r+16*Math.random())%16|0;return r=Math.floor(r/16),("x"==e?t:3&t|8).toString(16)}))}}])&&r(t.prototype,n),a&&r(t,a),e}();void 0!==e.exports&&(e.exports=a),window&&(window.ComponentManager=a)},function(e,t,n){"use strict"; +/** @license React v16.11.0 + * react.production.min.js + * + * Copyright (c) Facebook, Inc. and its affiliates. + * + * This source code is licensed under the MIT license found in the + * LICENSE file in the root directory of this source tree. + */var r=n(3),a="function"==typeof Symbol&&Symbol.for,i=a?Symbol.for("react.element"):60103,o=a?Symbol.for("react.portal"):60106,s=a?Symbol.for("react.fragment"):60107,u=a?Symbol.for("react.strict_mode"):60108,l=a?Symbol.for("react.profiler"):60114,c=a?Symbol.for("react.provider"):60109,f=a?Symbol.for("react.context"):60110,p=a?Symbol.for("react.forward_ref"):60112,d=a?Symbol.for("react.suspense"):60113;a&&Symbol.for("react.suspense_list");var h=a?Symbol.for("react.memo"):60115,m=a?Symbol.for("react.lazy"):60116;a&&Symbol.for("react.fundamental"),a&&Symbol.for("react.responder"),a&&Symbol.for("react.scope");var y="function"==typeof Symbol&&Symbol.iterator;function v(e){for(var t="https://reactjs.org/docs/error-decoder.html?invariant="+e,n=1;nD.length&&D.push(e)}function O(e,t,n){return null==e?0:function e(t,n,r,a){var s=typeof t;"undefined"!==s&&"boolean"!==s||(t=null);var u=!1;if(null===t)u=!0;else switch(s){case"string":case"number":u=!0;break;case"object":switch(t.$$typeof){case i:case o:u=!0}}if(u)return r(a,t,""===n?"."+A(t,0):n),1;if(u=0,n=""===n?".":n+":",Array.isArray(t))for(var l=0;l