@clickview/lite 0.50.0 → 0.50.1-rc.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/bundles.json +2 -2
- package/dist/css/{6846-lite-db93efd058.chunk.css → 1850-lite-dca6b9e86d.chunk.css} +1 -0
- package/dist/css/{2137-lite-6d16d5d7c2.chunk.css → 2137-lite-7045732fc8.chunk.css} +2 -2
- package/dist/css/{2795-lite-1e800fdd04.chunk.css → 2795-lite-1641e6fbf9.chunk.css} +2 -2
- package/dist/css/{458-lite-ecaf4729d3.chunk.css → 3515-lite-c8a3139b8b.chunk.css} +2 -2
- package/dist/css/{8960-lite-a80ad92ea7.chunk.css → 4489-lite-7d5d204d0c.chunk.css} +8 -7
- package/dist/css/{3515-lite-ecaf4729d3.chunk.css → 458-lite-c8a3139b8b.chunk.css} +2 -2
- package/dist/css/{5242-lite-512783e2fb.chunk.css → 5242-lite-58cdcd1ec4.chunk.css} +2 -2
- package/dist/css/{5446-lite-b68e159c6c.chunk.css → 5446-lite-ae2395342f.chunk.css} +2 -2
- package/dist/css/6102-lite-6e94a699ed.chunk.css +39 -0
- package/dist/css/{1437-lite-b847c9e2b6.chunk.css → 6415-lite-707657102b.chunk.css} +1 -1
- package/dist/css/{9839-lite-53b02845a4.chunk.css → 6850-lite-769c93cb9e.chunk.css} +16 -16
- package/dist/css/{7987-lite-7006eb4ded.chunk.css → 7987-lite-94679244a2.chunk.css} +2 -2
- package/dist/css/{355-lite-e474c8ddce.chunk.css → 8192-lite-8721e2ed68.chunk.css} +8 -7
- package/dist/css/{8316-lite-f60e236048.chunk.css → 8316-lite-9083a6565c.chunk.css} +2 -2
- package/dist/css/{9417-lite-f60e236048.chunk.css → 9417-lite-9083a6565c.chunk.css} +2 -2
- package/dist/css/{9620-lite-b202aa1d5c.chunk.css → 9620-lite-d77e9ad59b.chunk.css} +1 -1
- package/dist/css/{7187-lite-db93efd058.chunk.css → 9818-lite-dca6b9e86d.chunk.css} +1 -0
- package/dist/css/{8139-lite-5511af77bf.chunk.css → 986-lite-3bf6e93049.chunk.css} +1 -0
- package/dist/css/{lite-app-cf9b57ee91.css → lite-app-28b7b96628.css} +8 -6
- package/dist/languages/en.json +1 -1
- package/dist/scripts/{1080-d6dfc36c03-lite.chunk.js → 1080-362271a654-lite.chunk.js} +2 -2
- package/dist/scripts/{1080-d6dfc36c03-lite.chunk.js.map → 1080-362271a654-lite.chunk.js.map} +1 -1
- package/dist/scripts/1169-3df974a8eb-lite.chunk.js +2 -0
- package/dist/scripts/1169-3df974a8eb-lite.chunk.js.map +1 -0
- package/dist/scripts/{1285-1ba9b0640e-lite.chunk.js → 1285-818f4ed377-lite.chunk.js} +1 -1
- package/dist/scripts/{1285-1ba9b0640e-lite.chunk.js.map → 1285-818f4ed377-lite.chunk.js.map} +1 -1
- package/dist/scripts/1313-455608bc46-lite.chunk.js +2 -0
- package/dist/scripts/1313-455608bc46-lite.chunk.js.map +1 -0
- package/dist/scripts/{1379-2ee86e6e68-lite.chunk.js → 1379-3a1ba4b4d9-lite.chunk.js} +3 -3
- package/dist/scripts/{1379-2ee86e6e68-lite.chunk.js.map → 1379-3a1ba4b4d9-lite.chunk.js.map} +1 -1
- package/dist/scripts/{1518-be314d1248-lite.chunk.js → 1518-b808d8043f-lite.chunk.js} +2 -2
- package/dist/scripts/1518-b808d8043f-lite.chunk.js.map +1 -0
- package/dist/scripts/{1617-3cf9199cb1-lite.chunk.js → 1617-e1735deb2a-lite.chunk.js} +1 -1
- package/dist/scripts/{1617-3cf9199cb1-lite.chunk.js.map → 1617-e1735deb2a-lite.chunk.js.map} +1 -1
- package/dist/scripts/1672-672f298d82-lite.chunk.js +3 -0
- package/dist/scripts/1672-672f298d82-lite.chunk.js.map +1 -0
- package/dist/scripts/1750-a525866169-lite.chunk.js +2 -0
- package/dist/scripts/1750-a525866169-lite.chunk.js.map +1 -0
- package/dist/scripts/1818-74a3d26afd-lite.chunk.js +2 -0
- package/dist/scripts/1818-74a3d26afd-lite.chunk.js.map +1 -0
- package/dist/scripts/1820-68114ca994-lite.chunk.js +2 -0
- package/dist/scripts/1820-68114ca994-lite.chunk.js.map +1 -0
- package/dist/scripts/{1863-a6e7446cd8-lite.chunk.js → 1863-618c9bd7af-lite.chunk.js} +1 -1
- package/dist/scripts/{1863-a6e7446cd8-lite.chunk.js.map → 1863-618c9bd7af-lite.chunk.js.map} +1 -1
- package/dist/scripts/1905-af9a8f8824-lite.chunk.js +2 -0
- package/dist/scripts/1905-af9a8f8824-lite.chunk.js.map +1 -0
- package/dist/scripts/2004-4e2d98041c-lite.chunk.js +3 -0
- package/dist/scripts/2004-4e2d98041c-lite.chunk.js.map +1 -0
- package/dist/scripts/{209-148abe2aa1-lite.chunk.js → 209-4a54845452-lite.chunk.js} +2 -2
- package/dist/scripts/209-4a54845452-lite.chunk.js.map +1 -0
- package/dist/scripts/2137-093f479ff9-lite.chunk.js +2 -0
- package/dist/scripts/2137-093f479ff9-lite.chunk.js.map +1 -0
- package/dist/scripts/2199-cfc0ff4e1e-lite.chunk.js +2 -0
- package/dist/scripts/2199-cfc0ff4e1e-lite.chunk.js.map +1 -0
- package/dist/scripts/2703-64f709f0d0-lite.chunk.js +2 -0
- package/dist/scripts/2703-64f709f0d0-lite.chunk.js.map +1 -0
- package/dist/scripts/{2795-b3f0673e3e-lite.chunk.js → 2795-0616748349-lite.chunk.js} +1 -1
- package/dist/scripts/{2795-b3f0673e3e-lite.chunk.js.map → 2795-0616748349-lite.chunk.js.map} +1 -1
- package/dist/scripts/2877-40bb796d59-lite.chunk.js +2 -0
- package/dist/scripts/2877-40bb796d59-lite.chunk.js.map +1 -0
- package/dist/scripts/3020-2b9042238c-lite.chunk.js +2 -0
- package/dist/scripts/3020-2b9042238c-lite.chunk.js.map +1 -0
- package/dist/scripts/{3070-47e46e0d89-lite.chunk.js → 3070-fb8eb47716-lite.chunk.js} +1 -1
- package/dist/scripts/{3070-47e46e0d89-lite.chunk.js.map → 3070-fb8eb47716-lite.chunk.js.map} +1 -1
- package/dist/scripts/3231-65bbddef35-lite.chunk.js +2 -0
- package/dist/scripts/3231-65bbddef35-lite.chunk.js.map +1 -0
- package/dist/scripts/3403-12c460d3f6-lite.chunk.js +2 -0
- package/dist/scripts/3403-12c460d3f6-lite.chunk.js.map +1 -0
- package/dist/scripts/3515-4de2fd7070-lite.chunk.js +2 -0
- package/dist/scripts/3515-4de2fd7070-lite.chunk.js.map +1 -0
- package/dist/scripts/3645-72ca9f63df-lite.chunk.js +3 -0
- package/dist/scripts/3645-72ca9f63df-lite.chunk.js.map +1 -0
- package/dist/scripts/3895-a54621a8c4-lite.chunk.js +2 -0
- package/dist/scripts/3895-a54621a8c4-lite.chunk.js.map +1 -0
- package/dist/scripts/458-35c635a2ce-lite.chunk.js +2 -0
- package/dist/scripts/458-35c635a2ce-lite.chunk.js.map +1 -0
- package/dist/scripts/4690-d77e912b9b-lite.chunk.js +2 -0
- package/dist/scripts/4690-d77e912b9b-lite.chunk.js.map +1 -0
- package/dist/scripts/{4718-6df54d3039-lite.chunk.js → 4718-2b58aa560d-lite.chunk.js} +1 -1
- package/dist/scripts/{4718-6df54d3039-lite.chunk.js.map → 4718-2b58aa560d-lite.chunk.js.map} +1 -1
- package/dist/scripts/5143-b6896dad98-lite.chunk.js +2 -0
- package/dist/scripts/5143-b6896dad98-lite.chunk.js.map +1 -0
- package/dist/scripts/5229-036b4d7a22-lite.chunk.js +2 -0
- package/dist/scripts/5229-036b4d7a22-lite.chunk.js.map +1 -0
- package/dist/scripts/{5242-e8f004818c-lite.chunk.js → 5242-2d752ff85e-lite.chunk.js} +1 -1
- package/dist/scripts/{5242-e8f004818c-lite.chunk.js.map → 5242-2d752ff85e-lite.chunk.js.map} +1 -1
- package/dist/scripts/5385-57d7021be7-lite.chunk.js +2 -0
- package/dist/scripts/5385-57d7021be7-lite.chunk.js.map +1 -0
- package/dist/scripts/{5446-de55c3df38-lite.chunk.js → 5446-1ef1639ef6-lite.chunk.js} +1 -1
- package/dist/scripts/{5446-de55c3df38-lite.chunk.js.map → 5446-1ef1639ef6-lite.chunk.js.map} +1 -1
- package/dist/scripts/5595-f33ed220ce-lite.chunk.js +2 -0
- package/dist/scripts/5595-f33ed220ce-lite.chunk.js.map +1 -0
- package/dist/scripts/{5936-4cac311002-lite.chunk.js → 5936-1d99b03e7b-lite.chunk.js} +2 -2
- package/dist/scripts/5936-1d99b03e7b-lite.chunk.js.map +1 -0
- package/dist/scripts/5940-511beff2ee-lite.chunk.js +2 -0
- package/dist/scripts/5940-511beff2ee-lite.chunk.js.map +1 -0
- package/dist/scripts/{610-27e5444f01-lite.chunk.js → 610-6dbeb5cd21-lite.chunk.js} +2 -2
- package/dist/scripts/610-6dbeb5cd21-lite.chunk.js.map +1 -0
- package/dist/scripts/6102-f1851eca08-lite.chunk.js +3 -0
- package/dist/scripts/6102-f1851eca08-lite.chunk.js.map +1 -0
- package/dist/scripts/6189-ce9f0eeb31-lite.chunk.js +2 -0
- package/dist/scripts/6189-ce9f0eeb31-lite.chunk.js.map +1 -0
- package/dist/scripts/{624-010454cb12-lite.chunk.js → 624-7df7efd486-lite.chunk.js} +3 -3
- package/dist/scripts/{624-010454cb12-lite.chunk.js.map → 624-7df7efd486-lite.chunk.js.map} +1 -1
- package/dist/scripts/6263-d74b5b3529-lite.chunk.js +2 -0
- package/dist/scripts/6263-d74b5b3529-lite.chunk.js.map +1 -0
- package/dist/scripts/{6274-46a7af05d7-lite.chunk.js → 6274-15e61b83dc-lite.chunk.js} +1 -1
- package/dist/scripts/{6274-46a7af05d7-lite.chunk.js.map → 6274-15e61b83dc-lite.chunk.js.map} +1 -1
- package/dist/scripts/6415-9d8b88c713-lite.chunk.js +2 -0
- package/dist/scripts/6415-9d8b88c713-lite.chunk.js.map +1 -0
- package/dist/scripts/{6433-fe9efef305-lite.chunk.js → 6433-8dd152d999-lite.chunk.js} +2 -2
- package/dist/scripts/{6433-fe9efef305-lite.chunk.js.map → 6433-8dd152d999-lite.chunk.js.map} +1 -1
- package/dist/scripts/6470-6216086d63-lite.chunk.js +2 -0
- package/dist/scripts/6470-6216086d63-lite.chunk.js.map +1 -0
- package/dist/scripts/6531-597262a181-lite.chunk.js +2 -0
- package/dist/scripts/6531-597262a181-lite.chunk.js.map +1 -0
- package/dist/scripts/6572-4dda098022-lite.chunk.js +2 -0
- package/dist/scripts/6572-4dda098022-lite.chunk.js.map +1 -0
- package/dist/scripts/6587-08d5d85b71-lite.chunk.js +2 -0
- package/dist/scripts/6587-08d5d85b71-lite.chunk.js.map +1 -0
- package/dist/scripts/671-36d34edbf3-lite.chunk.js +2 -0
- package/dist/scripts/671-36d34edbf3-lite.chunk.js.map +1 -0
- package/dist/scripts/{6725-23b09d47ae-lite.chunk.js → 6725-20b1e8b1d2-lite.chunk.js} +2 -2
- package/dist/scripts/6725-20b1e8b1d2-lite.chunk.js.map +1 -0
- package/dist/scripts/6741-ff3e4a33a5-lite.chunk.js +3 -0
- package/dist/scripts/6741-ff3e4a33a5-lite.chunk.js.map +1 -0
- package/dist/scripts/6752-1a9837a40f-lite.chunk.js +2 -0
- package/dist/scripts/6752-1a9837a40f-lite.chunk.js.map +1 -0
- package/dist/scripts/6850-8770bfeefb-lite.chunk.js +3 -0
- package/dist/scripts/6850-8770bfeefb-lite.chunk.js.map +1 -0
- package/dist/scripts/{6863-f04753549c-lite.chunk.js → 6863-b606b8b1e7-lite.chunk.js} +2 -2
- package/dist/scripts/{6863-f04753549c-lite.chunk.js.map → 6863-b606b8b1e7-lite.chunk.js.map} +1 -1
- package/dist/scripts/{6930-0a5d94f8b5-lite.chunk.js → 6930-1a681d42fd-lite.chunk.js} +1 -1
- package/dist/scripts/{6930-0a5d94f8b5-lite.chunk.js.map → 6930-1a681d42fd-lite.chunk.js.map} +1 -1
- package/dist/scripts/6948-84a5f8d76f-lite.chunk.js +2 -0
- package/dist/scripts/6948-84a5f8d76f-lite.chunk.js.map +1 -0
- package/dist/scripts/7097-b9a9a0a4ce-lite.chunk.js +2 -0
- package/dist/scripts/7097-b9a9a0a4ce-lite.chunk.js.map +1 -0
- package/dist/scripts/714-9ab1608522-lite.chunk.js +2 -0
- package/dist/scripts/714-9ab1608522-lite.chunk.js.map +1 -0
- package/dist/scripts/7533-e079b2af18-lite.chunk.js +2 -0
- package/dist/scripts/7533-e079b2af18-lite.chunk.js.map +1 -0
- package/dist/scripts/7715-2146591c84-lite.chunk.js +2 -0
- package/dist/scripts/7715-2146591c84-lite.chunk.js.map +1 -0
- package/dist/scripts/7855-92e790c403-lite.chunk.js +2 -0
- package/dist/scripts/7855-92e790c403-lite.chunk.js.map +1 -0
- package/dist/scripts/{7987-1f9189c4c1-lite.chunk.js → 7987-db0037709c-lite.chunk.js} +1 -1
- package/dist/scripts/{7987-1f9189c4c1-lite.chunk.js.map → 7987-db0037709c-lite.chunk.js.map} +1 -1
- package/dist/scripts/{8046-1943b1d32b-lite.chunk.js → 8046-836d3b8e04-lite.chunk.js} +1 -1
- package/dist/scripts/{8046-1943b1d32b-lite.chunk.js.map → 8046-836d3b8e04-lite.chunk.js.map} +1 -1
- package/dist/scripts/{2877-db49c758e9-lite.chunk.js → 8157-521ad0f974-lite.chunk.js} +2 -2
- package/dist/scripts/{2877-db49c758e9-lite.chunk.js.map → 8157-521ad0f974-lite.chunk.js.map} +1 -1
- package/dist/scripts/8192-ec320614d9-lite.chunk.js +2 -0
- package/dist/scripts/8192-ec320614d9-lite.chunk.js.map +1 -0
- package/dist/scripts/8218-f3b81c7287-lite.chunk.js +2 -0
- package/dist/scripts/8218-f3b81c7287-lite.chunk.js.map +1 -0
- package/dist/scripts/8316-dad1824a5f-lite.chunk.js +2 -0
- package/dist/scripts/8316-dad1824a5f-lite.chunk.js.map +1 -0
- package/dist/scripts/8354-e30261b594-lite.chunk.js +2 -0
- package/dist/scripts/8354-e30261b594-lite.chunk.js.map +1 -0
- package/dist/scripts/8772-42c022effc-lite.chunk.js +2 -0
- package/dist/scripts/8772-42c022effc-lite.chunk.js.map +1 -0
- package/dist/scripts/8800-c88fefeace-lite.chunk.js +2 -0
- package/dist/scripts/8800-c88fefeace-lite.chunk.js.map +1 -0
- package/dist/scripts/8830-452a71751f-lite.chunk.js +2 -0
- package/dist/scripts/8830-452a71751f-lite.chunk.js.map +1 -0
- package/dist/scripts/8987-32190552fa-lite.chunk.js +2 -0
- package/dist/scripts/8987-32190552fa-lite.chunk.js.map +1 -0
- package/dist/scripts/9016-c359251f82-lite.chunk.js +3 -0
- package/dist/scripts/9016-c359251f82-lite.chunk.js.map +1 -0
- package/dist/scripts/{9226-4cff4347a9-lite.chunk.js → 9226-c236c0eeb1-lite.chunk.js} +2 -2
- package/dist/scripts/9226-c236c0eeb1-lite.chunk.js.map +1 -0
- package/dist/scripts/9230-d731020b59-lite.chunk.js +3 -0
- package/dist/scripts/9230-d731020b59-lite.chunk.js.map +1 -0
- package/dist/scripts/{9395-8ad1f28459-lite.chunk.js → 9395-9175b9efcc-lite.chunk.js} +3 -3
- package/dist/scripts/{9395-8ad1f28459-lite.chunk.js.map → 9395-9175b9efcc-lite.chunk.js.map} +1 -1
- package/dist/scripts/9417-70c6489c67-lite.chunk.js +2 -0
- package/dist/scripts/9417-70c6489c67-lite.chunk.js.map +1 -0
- package/dist/scripts/{9478-5a0abba4f7-lite.chunk.js → 9478-9b168ddc36-lite.chunk.js} +3 -3
- package/dist/scripts/{9478-5a0abba4f7-lite.chunk.js.map → 9478-9b168ddc36-lite.chunk.js.map} +1 -1
- package/dist/scripts/{953-b56e03bb19-lite.chunk.js → 953-85fc5f8dbf-lite.chunk.js} +3 -3
- package/dist/scripts/{953-b56e03bb19-lite.chunk.js.map → 953-85fc5f8dbf-lite.chunk.js.map} +1 -1
- package/dist/scripts/9620-630f9e6344-lite.chunk.js +3 -0
- package/dist/scripts/9620-630f9e6344-lite.chunk.js.map +1 -0
- package/dist/scripts/9818-f63bdbbac4-lite.chunk.js +2 -0
- package/dist/scripts/9818-f63bdbbac4-lite.chunk.js.map +1 -0
- package/dist/scripts/9829-097052a2c6-lite.chunk.js +2 -0
- package/dist/scripts/9829-097052a2c6-lite.chunk.js.map +1 -0
- package/dist/scripts/{9843-a3fe640adb-lite.chunk.js → 9843-ec032b6388-lite.chunk.js} +2 -2
- package/dist/scripts/9843-ec032b6388-lite.chunk.js.map +1 -0
- package/dist/scripts/986-ea6d103647-lite.chunk.js +3 -0
- package/dist/scripts/986-ea6d103647-lite.chunk.js.map +1 -0
- package/dist/scripts/bundle-d20cb66d1a.min.js +3 -0
- package/dist/scripts/bundle-d20cb66d1a.min.js.map +1 -0
- package/package.json +1 -1
- package/dist/css/6102-lite-4c795e86b6.chunk.css +0 -39
- package/dist/scripts/1169-5dc443f0f1-lite.chunk.js +0 -2
- package/dist/scripts/1169-5dc443f0f1-lite.chunk.js.map +0 -1
- package/dist/scripts/1313-4fb9d38bc0-lite.chunk.js +0 -2
- package/dist/scripts/1313-4fb9d38bc0-lite.chunk.js.map +0 -1
- package/dist/scripts/1437-5b1889cf0d-lite.chunk.js +0 -2
- package/dist/scripts/1437-5b1889cf0d-lite.chunk.js.map +0 -1
- package/dist/scripts/1518-be314d1248-lite.chunk.js.map +0 -1
- package/dist/scripts/1672-e792631d8e-lite.chunk.js +0 -3
- package/dist/scripts/1672-e792631d8e-lite.chunk.js.map +0 -1
- package/dist/scripts/1750-b8e1fca13a-lite.chunk.js +0 -2
- package/dist/scripts/1750-b8e1fca13a-lite.chunk.js.map +0 -1
- package/dist/scripts/1818-ca1e552c00-lite.chunk.js +0 -2
- package/dist/scripts/1818-ca1e552c00-lite.chunk.js.map +0 -1
- package/dist/scripts/1820-2fa6cf6cb2-lite.chunk.js +0 -2
- package/dist/scripts/1820-2fa6cf6cb2-lite.chunk.js.map +0 -1
- package/dist/scripts/1905-a01549439f-lite.chunk.js +0 -2
- package/dist/scripts/1905-a01549439f-lite.chunk.js.map +0 -1
- package/dist/scripts/209-148abe2aa1-lite.chunk.js.map +0 -1
- package/dist/scripts/2137-a993d13a9a-lite.chunk.js +0 -2
- package/dist/scripts/2137-a993d13a9a-lite.chunk.js.map +0 -1
- package/dist/scripts/2199-22d8809e5e-lite.chunk.js +0 -2
- package/dist/scripts/2199-22d8809e5e-lite.chunk.js.map +0 -1
- package/dist/scripts/2703-aebc378d71-lite.chunk.js +0 -2
- package/dist/scripts/2703-aebc378d71-lite.chunk.js.map +0 -1
- package/dist/scripts/3020-9f647705a0-lite.chunk.js +0 -2
- package/dist/scripts/3020-9f647705a0-lite.chunk.js.map +0 -1
- package/dist/scripts/3231-7e9965499c-lite.chunk.js +0 -2
- package/dist/scripts/3231-7e9965499c-lite.chunk.js.map +0 -1
- package/dist/scripts/3355-e65e88adaa-lite.chunk.js +0 -2
- package/dist/scripts/3355-e65e88adaa-lite.chunk.js.map +0 -1
- package/dist/scripts/3403-a2111c4df8-lite.chunk.js +0 -2
- package/dist/scripts/3403-a2111c4df8-lite.chunk.js.map +0 -1
- package/dist/scripts/3515-925a7caeac-lite.chunk.js +0 -2
- package/dist/scripts/3515-925a7caeac-lite.chunk.js.map +0 -1
- package/dist/scripts/355-3bb5ae2ea4-lite.chunk.js +0 -2
- package/dist/scripts/355-3bb5ae2ea4-lite.chunk.js.map +0 -1
- package/dist/scripts/3645-720267b321-lite.chunk.js +0 -3
- package/dist/scripts/3645-720267b321-lite.chunk.js.map +0 -1
- package/dist/scripts/3895-f7f4926229-lite.chunk.js +0 -2
- package/dist/scripts/3895-f7f4926229-lite.chunk.js.map +0 -1
- package/dist/scripts/458-b99f17e0a1-lite.chunk.js +0 -2
- package/dist/scripts/458-b99f17e0a1-lite.chunk.js.map +0 -1
- package/dist/scripts/4690-774e3c0e2a-lite.chunk.js +0 -2
- package/dist/scripts/4690-774e3c0e2a-lite.chunk.js.map +0 -1
- package/dist/scripts/5143-b77fb12d6a-lite.chunk.js +0 -2
- package/dist/scripts/5143-b77fb12d6a-lite.chunk.js.map +0 -1
- package/dist/scripts/5229-f683f705ab-lite.chunk.js +0 -2
- package/dist/scripts/5229-f683f705ab-lite.chunk.js.map +0 -1
- package/dist/scripts/5385-50d4828b70-lite.chunk.js +0 -2
- package/dist/scripts/5385-50d4828b70-lite.chunk.js.map +0 -1
- package/dist/scripts/5595-c622318cd2-lite.chunk.js +0 -2
- package/dist/scripts/5595-c622318cd2-lite.chunk.js.map +0 -1
- package/dist/scripts/5936-4cac311002-lite.chunk.js.map +0 -1
- package/dist/scripts/5940-d841fd31d8-lite.chunk.js +0 -2
- package/dist/scripts/5940-d841fd31d8-lite.chunk.js.map +0 -1
- package/dist/scripts/610-27e5444f01-lite.chunk.js.map +0 -1
- package/dist/scripts/6102-30960404a9-lite.chunk.js +0 -3
- package/dist/scripts/6102-30960404a9-lite.chunk.js.map +0 -1
- package/dist/scripts/6189-13009e2ba9-lite.chunk.js +0 -2
- package/dist/scripts/6189-13009e2ba9-lite.chunk.js.map +0 -1
- package/dist/scripts/6263-82ae071643-lite.chunk.js +0 -2
- package/dist/scripts/6263-82ae071643-lite.chunk.js.map +0 -1
- package/dist/scripts/6470-2cefcc8abd-lite.chunk.js +0 -2
- package/dist/scripts/6470-2cefcc8abd-lite.chunk.js.map +0 -1
- package/dist/scripts/6531-835c743f1b-lite.chunk.js +0 -2
- package/dist/scripts/6531-835c743f1b-lite.chunk.js.map +0 -1
- package/dist/scripts/6572-0aa0696621-lite.chunk.js +0 -2
- package/dist/scripts/6572-0aa0696621-lite.chunk.js.map +0 -1
- package/dist/scripts/671-300e93ac50-lite.chunk.js +0 -2
- package/dist/scripts/671-300e93ac50-lite.chunk.js.map +0 -1
- package/dist/scripts/6725-23b09d47ae-lite.chunk.js.map +0 -1
- package/dist/scripts/6741-937ae1865f-lite.chunk.js +0 -3
- package/dist/scripts/6741-937ae1865f-lite.chunk.js.map +0 -1
- package/dist/scripts/6846-08b00decd8-lite.chunk.js +0 -2
- package/dist/scripts/6846-08b00decd8-lite.chunk.js.map +0 -1
- package/dist/scripts/6948-4ab91f77dc-lite.chunk.js +0 -2
- package/dist/scripts/6948-4ab91f77dc-lite.chunk.js.map +0 -1
- package/dist/scripts/7052-4c36846f80-lite.chunk.js +0 -3
- package/dist/scripts/7052-4c36846f80-lite.chunk.js.map +0 -1
- package/dist/scripts/7097-af8c032133-lite.chunk.js +0 -2
- package/dist/scripts/7097-af8c032133-lite.chunk.js.map +0 -1
- package/dist/scripts/714-2e52398bb7-lite.chunk.js +0 -2
- package/dist/scripts/714-2e52398bb7-lite.chunk.js.map +0 -1
- package/dist/scripts/7187-414ac79d42-lite.chunk.js +0 -2
- package/dist/scripts/7187-414ac79d42-lite.chunk.js.map +0 -1
- package/dist/scripts/7533-f2e71bd0dd-lite.chunk.js +0 -2
- package/dist/scripts/7533-f2e71bd0dd-lite.chunk.js.map +0 -1
- package/dist/scripts/7630-72099a7a26-lite.chunk.js +0 -2
- package/dist/scripts/7630-72099a7a26-lite.chunk.js.map +0 -1
- package/dist/scripts/7715-255bbe16ef-lite.chunk.js +0 -2
- package/dist/scripts/7715-255bbe16ef-lite.chunk.js.map +0 -1
- package/dist/scripts/7855-04bc8e52e3-lite.chunk.js +0 -2
- package/dist/scripts/7855-04bc8e52e3-lite.chunk.js.map +0 -1
- package/dist/scripts/8085-cde67e66df-lite.chunk.js +0 -2
- package/dist/scripts/8085-cde67e66df-lite.chunk.js.map +0 -1
- package/dist/scripts/8139-01ccbc0539-lite.chunk.js +0 -3
- package/dist/scripts/8139-01ccbc0539-lite.chunk.js.map +0 -1
- package/dist/scripts/8218-70b601169b-lite.chunk.js +0 -2
- package/dist/scripts/8218-70b601169b-lite.chunk.js.map +0 -1
- package/dist/scripts/8316-7ab8f108de-lite.chunk.js +0 -2
- package/dist/scripts/8316-7ab8f108de-lite.chunk.js.map +0 -1
- package/dist/scripts/8354-a03785518e-lite.chunk.js +0 -2
- package/dist/scripts/8354-a03785518e-lite.chunk.js.map +0 -1
- package/dist/scripts/8772-05879c5e99-lite.chunk.js +0 -2
- package/dist/scripts/8772-05879c5e99-lite.chunk.js.map +0 -1
- package/dist/scripts/8830-0d2766a50f-lite.chunk.js +0 -2
- package/dist/scripts/8830-0d2766a50f-lite.chunk.js.map +0 -1
- package/dist/scripts/8987-12841dd69c-lite.chunk.js +0 -2
- package/dist/scripts/8987-12841dd69c-lite.chunk.js.map +0 -1
- package/dist/scripts/9016-df37abbca9-lite.chunk.js +0 -3
- package/dist/scripts/9016-df37abbca9-lite.chunk.js.map +0 -1
- package/dist/scripts/9226-4cff4347a9-lite.chunk.js.map +0 -1
- package/dist/scripts/9230-c79353d3ee-lite.chunk.js +0 -3
- package/dist/scripts/9230-c79353d3ee-lite.chunk.js.map +0 -1
- package/dist/scripts/9417-7313907916-lite.chunk.js +0 -2
- package/dist/scripts/9417-7313907916-lite.chunk.js.map +0 -1
- package/dist/scripts/9620-8814c74837-lite.chunk.js +0 -3
- package/dist/scripts/9620-8814c74837-lite.chunk.js.map +0 -1
- package/dist/scripts/9839-5befd54d51-lite.chunk.js +0 -3
- package/dist/scripts/9839-5befd54d51-lite.chunk.js.map +0 -1
- package/dist/scripts/9843-a3fe640adb-lite.chunk.js.map +0 -1
- package/dist/scripts/bundle-48ad415564.min.js +0 -3
- package/dist/scripts/bundle-48ad415564.min.js.map +0 -1
- package/dist/css/{7422-lite-22ea72f8e3.chunk.css → 7422-lite-c999db664b.chunk.css} +1 -1
- /package/dist/scripts/{1379-2ee86e6e68-lite.chunk.js.LICENSE.txt → 1379-3a1ba4b4d9-lite.chunk.js.LICENSE.txt} +0 -0
- /package/dist/scripts/{1672-e792631d8e-lite.chunk.js.LICENSE.txt → 1672-672f298d82-lite.chunk.js.LICENSE.txt} +0 -0
- /package/dist/scripts/{3645-720267b321-lite.chunk.js.LICENSE.txt → 2004-4e2d98041c-lite.chunk.js.LICENSE.txt} +0 -0
- /package/dist/scripts/{6102-30960404a9-lite.chunk.js.LICENSE.txt → 3645-72ca9f63df-lite.chunk.js.LICENSE.txt} +0 -0
- /package/dist/scripts/{624-010454cb12-lite.chunk.js.LICENSE.txt → 6102-f1851eca08-lite.chunk.js.LICENSE.txt} +0 -0
- /package/dist/scripts/{6433-fe9efef305-lite.chunk.js.LICENSE.txt → 624-7df7efd486-lite.chunk.js.LICENSE.txt} +0 -0
- /package/dist/scripts/{6741-937ae1865f-lite.chunk.js.LICENSE.txt → 6433-8dd152d999-lite.chunk.js.LICENSE.txt} +0 -0
- /package/dist/scripts/{7052-4c36846f80-lite.chunk.js.LICENSE.txt → 6741-ff3e4a33a5-lite.chunk.js.LICENSE.txt} +0 -0
- /package/dist/scripts/{8139-01ccbc0539-lite.chunk.js.LICENSE.txt → 6850-8770bfeefb-lite.chunk.js.LICENSE.txt} +0 -0
- /package/dist/scripts/{9016-df37abbca9-lite.chunk.js.LICENSE.txt → 9016-c359251f82-lite.chunk.js.LICENSE.txt} +0 -0
- /package/dist/scripts/{9230-c79353d3ee-lite.chunk.js.LICENSE.txt → 9230-d731020b59-lite.chunk.js.LICENSE.txt} +0 -0
- /package/dist/scripts/{9395-8ad1f28459-lite.chunk.js.LICENSE.txt → 9395-9175b9efcc-lite.chunk.js.LICENSE.txt} +0 -0
- /package/dist/scripts/{9478-5a0abba4f7-lite.chunk.js.LICENSE.txt → 9478-9b168ddc36-lite.chunk.js.LICENSE.txt} +0 -0
- /package/dist/scripts/{953-b56e03bb19-lite.chunk.js.LICENSE.txt → 953-85fc5f8dbf-lite.chunk.js.LICENSE.txt} +0 -0
- /package/dist/scripts/{9620-8814c74837-lite.chunk.js.LICENSE.txt → 9620-630f9e6344-lite.chunk.js.LICENSE.txt} +0 -0
- /package/dist/scripts/{9839-5befd54d51-lite.chunk.js.LICENSE.txt → 986-ea6d103647-lite.chunk.js.LICENSE.txt} +0 -0
- /package/dist/scripts/{bundle-48ad415564.min.js.LICENSE.txt → bundle-d20cb66d1a.min.js.LICENSE.txt} +0 -0
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"scripts/3403-a2111c4df8-lite.chunk.js","mappings":"mRACA,SAAgB,qBAAuB,QAAQ,kBAAoB,QAAQ,iBAAmB,SCoB9F,IAAMA,EAAwB,0BAmExB,SAAUC,EAAkBC,GAChC,IAAMC,EAAM,eAAkB,SAACC,GApBjC,IAAuBC,EAqBdD,GAAOF,EAAMI,cAGlBF,EAAGG,MAAMC,MAAQ,GAAH,OAAMJ,EAAGK,cAxBJJ,EAwBiCH,EAAMG,OAvBxDK,EAAA,cAAwBL,GACnB,GAAK,EAEVA,EAAOM,SAAWC,EAAA,WACb,EAELP,EAAOM,SAAWC,EAAA,SACb,EAAI,QADb,GAiBmE,MACnE,GAAG,IAEGC,EAA6B,CAAEC,KAAM,YAE3C,EApEF,SAAuBT,GACrB,IAAMU,EAAQC,EAAA,4BAAsCX,GAEpD,GAAIK,EAAA,cAAwBL,GAC1B,MAAO,CACLU,MAAAA,EACAE,UAAW,gBACXC,eAAgBlB,EAChBmB,uBAAwB,gBAACC,EAAA,GAAa,CAACC,KAAMD,EAAA,YAGjD,OAAQf,EAAOM,QACb,KAAKC,EAAA,SACH,MAAO,CACLG,MAAAA,EACAE,UAAW,iBACXC,eAAgBlB,EAChBmB,uBACE,gBAACC,EAAA,GAAa,CAACC,KAAMD,EAAA,UAA0BE,sBAAuB,uBAG5E,KAAKV,EAAA,WACH,MAAO,CACLG,MAAAA,EACAE,UAAW,YACXC,gBAAiBH,aAAK,EAALA,EAAOQ,KAEpBvB,EAFuB,UACpBA,EAAqB,aAAI,EAAAwB,EAAA,GAAgBnB,EAAOoB,KAAM,MAE7DN,uBACE,gBAACC,EAAA,GAAa,CACZC,KAAMD,EAAA,YACNE,uBAAuBP,aAAK,EAALA,EAAOQ,KAAM,mBAA0B,SAC9DG,eAAeX,aAAK,EAALA,EAAOQ,MAAO,oBAKzC,CAoCMI,CAAczB,EAAMG,QAJtBU,EAAK,EAALA,MACAE,EAAS,EAATA,UACAC,EAAc,EAAdA,eACAC,EAAsB,EAAtBA,uBAGIS,EAAoBlB,EAAA,cAAwBR,EAAMG,WAAaH,EAAM2B,kBAE3E,OACE,uBAAKC,UAAU,gEACb,uBAAK3B,IAAKA,EAAK2B,UAAW5B,EAAMI,YAAc,QAAU,SACrDsB,GACC,gBAACG,EAAA,EAAc,CACbC,MAAO9B,EAAMG,OACbQ,aAAcA,EACdoB,aAAcC,EAAA,cACdb,KAAK,WACLc,QAASjC,EAAMiC,QACfC,iBAAkB,CAAEC,SAAUnC,EAAMoC,iBACpCC,cAAY,EACZC,UAAQ,EACR1B,KAAK,QAGPc,GACA,gBAACa,EAAA,EAAS,CACRC,KAAM3B,aAAK,EAALA,EAAOQ,IACbN,UAAWA,EACXJ,aAAcA,EACdsB,QAASjC,EAAMiC,QACfL,UAAWZ,EACXyB,cAAe,CACbC,GAAI1C,EAAMG,OAAOuC,GACjBnB,KAAMvB,EAAMG,OAAOoB,MAErBW,iBAAkB,CAChBS,OAAQC,EAAA,qBAAmC5C,EAAMG,OAAOgB,MACxD0B,WAAY,WACZV,SAAUnC,EAAMoC,kBAGjBnB,IAMb,C,mCChJO,IAAM6B,EAAiC,CAC5CC,MAAO,kCACPC,OAAQ,mBACRC,WAAY,wBACZC,IAAK,sBACLC,KAAM,gC,mFCMKC,EAAc,CACzBC,kBAAiB,SAAiCb,GAChD,IAAMc,EAAwC,YAAoBd,EAAM,cAKxE,OAHoBe,OAAOC,KAAKF,GAAqBG,OAAOC,UAGzCC,QAAO,SAACC,EAAuBC,GAChD,IAAMC,GAAU,QAAOD,GAMvB,OAJKD,EAAIE,KACPF,EAAIE,GAAW,IAEjBF,EAAIE,GAAWF,EAAIE,GAASC,OAAOT,EAAoBO,IAChDD,CACT,GAAG,CAAC,EACN,EAEAI,mCAAkC,SAACC,GACjC,OAAQA,GACN,KAAK,aACH,OAAO,aACT,KAAK,eACH,OAAO,eACT,KAAK,SACH,OAAO,SAEb,EAEAC,mCAAkC,SAACC,GACjC,OAAQA,GACN,KAAK,aACH,OAAO,aACT,KAAK,eACH,OAAO,eACT,KAAK,SACH,OAAO,SAEb,E,oHC/BF,SAASC,EAAYpE,GACnB,OACE,kCACKA,EAAMqE,IAAIC,SACX,uBAAK1C,UAAW5B,EAAMqE,IAAI9C,KAAO,OAAS,IACxC,gBAAC,IAAY,CAAC+C,QAAStE,EAAMqE,IAAIC,WAIpCtE,EAAMqE,IAAI9C,KAEmB,iBAArBvB,EAAMqE,IAAIE,OACjB,uBAAK3C,UAAU,QACb,gBAAC,IAAK,CAACT,KAAM,UAAiBqB,KAAMxC,EAAMqE,IAAIE,SAKxD,CA6BM,SAAUC,EAAgBxE,G,MAW9B,OACE,uBAAK4B,UAA0B,QAAf,EAAA5B,EAAM4B,iBAAS,QAAI,IACjC,sBAAIA,UAAS,qDACwB,oBAAsB,qBACvD5B,EAAMyE,aAAe,gBAAqB,GAAE,qBAC5CzE,EAAM0E,cAAa,aAEpB1E,EAAM2E,KAAKC,KAAI,SAACP,EAAKQ,GACpB,OACE,sBACEjD,UAAS,gCACD,QAAU,YAAIyC,EAAIS,OAAS,eAAiB,uBAAsB,6BACtET,EAAI9C,KAAO,aAAkB,GAAE,YAAI8C,EAAIzC,UAAS,oBAEpDmD,IAAKF,GAEJR,EAAIpC,QACH,gBAAC,IAAO,CACNA,QAASoC,EAAIpC,QACbQ,cAAe4B,EAAI5B,cACnBP,iBAAkBmC,EAAInC,iBACtBN,UAAS,sKAE4C,YAAc,yBAGnE,gBAACwC,EAAW,CAACC,IAAKA,KAGpB,gBAAC,IAAS,CACRzC,UAAS,qKAE2C,YAAc,wBAElEoD,QAAS,kBA5CzB,SAAqBX,IACfA,EAAIS,QAAWT,EAAIY,WAGvBZ,EAAIY,WAEAZ,EAAI5B,eAAiB4B,EAAInC,kBAC3B,kBAA8BmC,EAAI5B,cAAe4B,EAAInC,kBACzD,CAoC+BgD,CAAYb,EAAI,GAE/B,gBAACD,EAAW,CAACC,IAAKA,KAK5B,KAIR,CA5DAG,EAAgBW,aAAe,CAC7BV,aAAc,K,8bC1CV,SAAUW,EACdC,EACAC,GAEA,I,IAAkE,G,EAA9B,WAA2B,I,EAAG,E,unBAA1DC,EAAS,KAAEC,EAAY,KAE/B,aAAgB,WACd,GAAKH,aAAO,EAAPA,EAASI,OAAd,CAGA,IAAMC,E,yWAAa,CAAIH,GACvBG,EAAWC,KAAK,IAEhBN,EAAQO,SAAQ,SAAAlD,GACVgD,EAAWG,MAAK,SAAAC,GAAK,OAAIA,EAAMD,MAAK,SAAAE,GAAG,OAAIA,IAAQrD,CAAE,GAAC,KAG1DgD,EAAWA,EAAWD,OAAS,GAAGE,KAAKjD,EACzC,IAEA8C,EAAaE,EAAWM,QAAO,SAAAF,GAAK,OAAIA,EAAML,MAAM,IAZ5C,CAaV,GAAG,CAACJ,EAAUA,EAAQY,KAAK,KAAO,OAElC,IAAMC,GAAW,UAEXC,GAAQ,SAAY,SAACA,GAAuB,OAAKA,CAAK,IAY5D,GAVA,aAAgB,WACdZ,EAAUK,SAAQ,SAAAQ,GAChB,IAAMC,EAAUf,EAAWc,GACV,gBAAwBD,EAAOE,EAAQtB,KAE3CuB,aACX,UAAaJ,EAAUG,EAC3B,GACF,GAAG,CAACd,aAAS,EAATA,EAAWE,WAEVF,aAAS,EAATA,EAAWE,QACd,MAAO,CAAEc,MAAO,KAAMC,YAAY,GAEpC,IAAMD,EAA6B,CAAC,EAG9BE,EAA8C,CAAC,EAWrD,OATAlB,EAAUK,SAAQ,SAACQ,EAASM,GAC1B,IAAML,EAAUf,EAAWc,GACrBO,EAAW,gBAAwBR,EAAOE,EAAQtB,KACxD0B,EAAUC,GAAKC,EAEXA,EAASnE,MACXmE,EAASnE,KAAKoD,SAAQ,SAAAgB,GAAC,OAAIL,EAAMK,EAAElE,IAAMkE,CAAC,GAC9C,IAEO,CACLL,MAAOhD,OAAOC,KAAKiD,GAAWI,MAAK,SAAAC,GAAC,QAAML,EAAUK,GAAGtE,IAAI,IAAI+D,EAAQ,KACvEC,aAAcjD,OAAOC,KAAKiD,GAAWI,MAAK,SAAAC,GAAC,OAAIL,EAAUK,GAAGN,UAAU,IAE1E,C,4DC3EaO,EAAuB,CAClCC,aAAY,SAACC,EAAgB9G,GAC3B,IAAM+G,EAAUD,EAAOE,gBAEvB,GAAKD,EAAL,CAGA,IAAIE,EAAc,GAElB,OAAQjH,EAAOM,QACb,KAAK,UACH2G,EAAc,WAAH,OAAcjH,EAAOuC,GAAE,aAClC,MAEF,KAAK,SACH0E,EAAc,UAAH,OAAajH,EAAOuC,GAAE,aACjC,MAEF,KAAK,gBACH0E,EAAc,iBAAH,OAAoBjH,EAAOuC,GAAE,aAI5C,GAAK0E,EAGL,OAAO,kBAAwBF,EAASE,EArBhC,CAsBV,E,kDC5BI,SAAUC,EAAqBC,GACnC,OAAQA,GACN,KAAK,SACH,MAAO,OACT,KAAK,WACH,MAAO,SACT,KAAK,UACH,MAAO,QACT,KAAK,SACH,MAAO,OACT,KAAK,WACH,MAAO,SACT,KAAK,WACH,MAAO,SACT,QACE,MAAO,OAEb,C,mHCTMC,EAAY,qBADA,sBAGZC,EAAwB,CAAEC,YAAa,cAAuBC,OAAQ,2BACtEC,EAA0B,CAAEF,YAAa,cAAuBC,OAAQ,6BAmBxE,SAAUE,IACd,OACE,uBAAKhG,UAAU,QACb,sBAAIA,UAAU,WAAW2F,EAAU,WACnC,gBAAC,IAAe,CAAC5C,MApBfkD,EAAiD,QAAhC,+BAAgC,eAAE5F,QAElD,CACL,CACEV,KAAMgG,EAAU,cAChBtC,SAAU,kBAAM,eAA2BuC,EAAsB,EACjE1C,QAAQ+C,aAAc,EAAdA,EAAgBH,UAAWF,EAAsBE,QAE3D,CACEnG,KAAMgG,EAAU,gBAChBtC,SAAU,kBAAM,eAA2B0C,EAAwB,EACnE7C,QAAQ+C,aAAc,EAAdA,EAAgBH,UAAWC,EAAwBD,aAZjE,I,EACQG,CAuBR,C,8HCjCMN,EAAYO,EAAA,mBADA,8BASZ,SAAUC,EAAqB/H,GACnC,OACE,gBAACgI,EAAA,EAAU,KACT,gBAACA,EAAA,QAAgB,CAACC,IAAKjI,EAAMkI,SAAUtH,KAAK,UAC5C,gBAACoH,EAAA,UAAkB,KAChBT,EAAUvH,EAAMmI,mBAAqB,sBAAwB,mBAEhE,gBAACH,EAAA,OAAe,KAAET,EAAUvH,EAAMmI,mBAAqB,mBAAqB,kBACzEnI,EAAMiC,SACP,gBAAC+F,EAAA,MAAc,CAAC/F,QAASjC,EAAMiC,QAASmG,KAAMb,EAAU,SAIhE,C,gHC5BA,SAAgB,mBAAqB,QAAQ,UAAY,SCYzD,IACM,EAAYO,EAAA,mBADA,8BAGlB,SAASO,EAAgBC,GACvB,GAAIA,EAAMnH,OAASoH,EAAA,cACjB,OAAO,EAAU,UAEnB,OAAQD,EAAME,QACZ,KAAKC,EAAA,SACH,OAAO,EAAU,UAEnB,KAAKA,EAAA,UACH,OAAO,EAAU,WAEvB,CAEA,SAASC,EAAqBJ,GAC5B,GAAIA,EAAMnH,OAASoH,EAAA,cACjB,MAAO,aAET,OAAQD,EAAME,QACZ,KAAKC,EAAA,SACH,MAAO,aAET,KAAKA,EAAA,UACH,MAAO,eAEb,CASM,SAAUE,EAAqB3I,G,MACnC,OAAIA,EAAMsI,MAAMnH,OAASoH,EAAA,gBAAgD,QAAtB,EAAAvI,EAAMsI,MAAMM,kBAAU,eAAEnD,QAGvEzF,EAAMsI,MAAMnH,OAASoH,EAAA,aAAuBvI,EAAMsI,MAAMO,oBAExD,gBAACC,EAAA,EAAO,CAACC,MAAO,EAAU,qBAAsBC,UAAQ,GACtD,gBAACC,EAAA,EAAY,CAAC3E,QAAS,UAAmB1D,KAAMqI,EAAAC,EAAA,SAMpD,gBAACJ,EAAA,EAAO,CACNC,MAAOV,EAAgBrI,EAAMsI,OAC7BU,UAAQ,EACRG,kBAAmB,sBAEnB,uBAAKvH,UAAS,UAAK,YAAgB,YAAI8G,EAAqB1I,EAAMsI,WAhB7D,gCAmBX,C,gFCrEA,SAAgB,gBAAkB,SCiBlC,IACM,EAAYR,EAAA,mBADA,mCAGlB,SAASsB,EAAuBC,GAC9B,IAAMC,EAASC,EAAA,UAAoBF,EAAkB,UAC/CG,EAAYF,EAAO5I,EAAA,QACnB+I,EAAiBH,EAAO5I,EAAA,aACxBgJ,EAAaJ,EAAO5I,EAAA,kBAE1B,OAAI8I,GAAaC,GAAkBC,EAC1B,EAAU,2BAA4B,CAAEF,UAAAA,EAAWC,eAAAA,EAAgBC,WAAAA,IAExEF,GAAaC,EACR,EAAU,qBAAsB,CAAED,UAAAA,EAAWC,eAAAA,IAElDD,GAAaE,EACR,EAAU,iBAAkB,CAAEF,UAAAA,EAAWE,WAAAA,IAE9CD,GAAkBC,EACb,EAAU,sBAAuB,CAAED,eAAAA,EAAgBC,WAAAA,IAExDF,EACK,EAAU,QAAS,CAAEA,UAAAA,IAE1BC,EACK,EAAU,aAAc,CAAEA,eAAAA,IAE/BC,EACK,EAAU,SAAU,CAAEA,WAAAA,SAD/B,CAEF,CAEA,SAASC,EAAe3J,G,cAChB4J,GAAuB,QAAV,EAAA5J,EAAM6J,YAAI,eAAEpJ,UAAWC,EAAA,QAAmBV,EAAM6J,KAC7DC,GAAiC,QAAV,EAAA9J,EAAM6J,YAAI,eAAEpJ,UAAWC,EAAA,aAAwBV,EAAM6J,KAC5EE,GAA2C,QAAV,EAAA/J,EAAM6J,YAAI,eAAEpJ,UAAWC,EAAA,kBACzDV,EAAM6J,KAELzI,EAAwB,yFAE9B,OACE,uBAAKQ,UAAS,UAAK,kBAAsB,sCACvC,uBACEA,UAAS,UAAK,gBAAoB,0DAClCvB,MAAO,CAAE2J,KAAM,GAAF,QAAoB,GAAfhK,EAAM6E,MAAW,KAAKoF,OAAQjK,EAAMkK,WAAalK,EAAM6E,UAEtE+E,GACD,gBAACd,EAAA,EAAO,CAACC,MAAK,UAAKa,EAAKrI,KAAI,YAAIqI,EAAKO,SAAWnB,UAAQ,EAACG,kBAAkB,eACzE,gBAACiB,EAAA,EAAM,CACLlC,SAAqB,QAAX,EAAA0B,EAAKS,cAAM,eAAEhJ,IACvBiJ,YAAatK,EAAMsK,YACnBC,SAAUC,EAAA,cAAuBZ,EAAKrI,KAAMqI,EAAKO,cAIpDL,GACD,gBAAChB,EAAA,EAAO,CAACC,MAAOe,EAAUvI,KAAMyH,UAAQ,EAACG,kBAAkB,eACzD,uBAAKvH,UAAWR,GACd,gBAACqJ,EAAA,EAAU,CACTnG,QAAS,gBACToG,QAASzB,EAAAC,EAAA,MACTyB,QAAQ,aAKbZ,GACD,gBAACjB,EAAA,EAAO,CAACC,MAAOgB,EAAexI,KAAMyH,UAAQ,EAACG,kBAAkB,eAC9D,uBAAKvH,UAAWR,GACd,gBAACqJ,EAAA,EAAU,CACTnG,QAAS,WACTqG,SAAS,OAA4C,QAAvB,EAAAZ,EAAea,gBAAQ,eAAEC,aAQvE,CAEM,SAAUC,IACd,OACE,uBAAKlJ,UAAW,mBACd,gBAACkH,EAAA,EAAO,CACNC,MAAO,EAAU,aACjBC,UAAQ,EACRG,kBAAkB,kGAElB,gBAACF,EAAA,EAAY,CAAC3E,QAAS,kBAI/B,CAEM,SAAUyG,IACd,OACE,uBAAKnJ,UAAW,mBACd,gBAACkH,EAAA,EAAO,CACNC,MAAO,EAAU,cACjBC,UAAQ,EACRG,kBAAkB,kGAElB,gBAACF,EAAA,EAAY,CAAC3E,QAAS,aAI/B,CAYM,SAAU0G,EAAmBhL,GACjC,OACE,2BACE,gBAACiL,EAAA,EAAU,iBACLjL,EAAK,CACTuG,MAAOvG,EAAM4I,WACbsC,WAAYvB,EACZwB,yBAA0B,kBAC1BC,iBAAkBhC,KAI1B,CAhBA4B,EAAmB7F,aAAe,CAChC+E,WAAY,G,4SCvGd,IAAM,EAAY,wBACZ,EAAYpC,EAAA,mBAAiC,GAEnD,SAASuD,EAAc/C,G,MACrB,GAAIA,EAAMnH,OAASoH,EAAA,eAAyC,QAAjB,EAAAD,aAAK,EAALA,EAAOM,kBAAU,eAAEnD,QAC5D,OAAO6C,EAAMgD,YAEf,IAAMC,EAAcjD,EAAMM,WAAWhE,KAAI,SAAA4G,GAAC,OAAIA,EAAEC,UAAU,IAU1D,OARAF,EAAY9H,MAAK,SAACiI,EAAOC,GACvB,OAAIC,EAAA,SAAkBF,EAAOC,GACpB,EAEFC,EAAA,UAAmBF,EAAOC,GAAS,GAAK,CACjD,IAGKJ,EAAY9F,OAGV8D,EAAA,OAAiBgC,GAFf,EAGX,CAYM,SAAUM,EACdhH,EACAiH,EACAC,EACAC,EACA1B,EACA2B,EACAC,EACAC,GAEA,IAAMC,EAAWD,IAAgBA,EAAYE,IAAMF,EAAYG,IAEzDC,EAAyC,CAC7C,CACEC,OAAQP,EAAa,GAAKH,EAC1BW,SAAU,eACV/J,GAAI,QACJgK,KAAM,gBAAGC,EAAK,EAALA,MAAK,OACZ,uBAAK/K,UAAU,SACb,gBAAC7B,EAAA,EAAiB,CAChBI,OAAQwM,EACR1K,QAAS8J,EAAiBY,GAC1BhL,mBAAiB,EACjBS,gBAAiB,kBAEf,EAERwK,SAAU,IACVC,SAAU,IAEZ,CACEJ,SAAU,eACV/J,GAAI,OACJgK,KAAM,YAAc,I,EAAXC,EAAK,EAALA,MACP,OAAIA,EAAMpL,KACJf,EAAA,cAAwBmM,MAA8C,QAAnC,EAAAnM,EAAA,mBAA6BmM,UAAM,eAAEG,aAExE,wBAAMlL,UAAU,WACb+K,EAAMpL,MAMX,gBAACwL,EAAA,EAAO,CACN9K,QAAS8J,EAAiBY,GAC1B/K,UAAU,UACVa,cAAe,CAAEC,GAAIiK,EAAMjK,GAAInB,KAAMoL,EAAMpL,MAC3CW,iBAAkB,CAChBS,OAAQC,EAAA,qBAAmC+J,EAAMxL,MACjD0B,WAAY,WACZV,SAAU,kBAGXwK,EAAMpL,MAKN,4BAAM,gBAACyL,EAAA,EAAI,CAACC,UAAW,EAAWC,OAAO,qBAClD,EACA5M,MAAO,IAET,CACEkM,OAAkB,IAAV3H,EAAc,EAAU,YAAc,GAC9C4H,SAAU,kBACVC,KAAM,YAAc,IAAXC,EAAK,EAALA,MACP,OAAKA,EAGAA,EAAMlH,OAGJ,gBAACuF,EAAkB,CAACpC,WAAY+D,EAAOrC,YAAaA,EAAaJ,WAAYkC,EAAW,EAAI,IAF1F,gBAACtB,EAAuB,MAHxB,gBAACC,EAAgB,KAM5B,EACAzK,MAAO,KAER8L,GAAY,CACXI,OAAkB,IAAV3H,EAAc,EAAU,UAAY,GAC5CnC,GAAI,aACJ+J,SAAU,SAAAU,GAAC,OAAI,QAAWA,EAAE1B,WAAW,EACvCnL,MAAO,IAET,CACEmM,SAAU,eACV/J,GAAI,UACJgK,KAAM,gBAAGC,EAAK,EAALA,MAAK,OACZ,gBAACS,EAAA,EAAO,CACNC,QAASrB,EAAiBW,GAC1B/K,UAAU,kCACV,EAEJtB,MAAO,KAILgN,EAA4C,CAChDd,OAAQV,EACRW,SAAU,QACV/J,GAAI,SACJgK,KAAM,gBAAGC,EAAK,EAALA,MAAK,OACZ,gBAAChE,EAAoB,CAACL,MAAOqE,GAAS,EAExCrM,MAAO,GAGHiN,EAA+C,CACnDf,OAAQ,EAAU,SAClBC,SAAU,YACVnM,MAAO,IAST,OANI2L,GACFM,EAAQiB,OAAO,EAAG,EAAGF,GAEnBpB,GACFK,EAAQiB,OAAOjB,EAAQ9G,OAAS,EAAG,EAAG8H,GAEjChB,EAAQvG,OAAQyH,QACzB,CC5HO,IAAMC,EAAkB,QAhC/B,SAA6B1N,GAC3B,ID8JA2N,EACAC,EACAC,EACAC,EACAC,EClKMvL,GD8JNmL,EC7JE3N,EAAM2N,WD8JRC,EC7JE5N,EAAM4N,cD8JRC,EC7JE7N,EAAM6N,gBD8JRC,IC7JI9N,EAAMqD,kBD8JV0K,IC7JI/N,EAAM+N,aD+JH,WAAc,WACnB,I,MAAMC,EAAmC,GA6BzC,OA3BAL,EAAW/H,SAAQ,SAAAuH,G,QACXc,EAAeL,EAAc/H,MAAK,SAAAqI,GAAC,OAAIA,EAAExL,KAAOyK,EAAEgB,QAAQ,IAE5DvF,EAAkC,KAElCuE,EAAEhM,OAASoH,EAAA,gBACbK,EAAa,GAED,QAAZ,EAAAuE,EAAEvE,kBAAU,SAAEhD,SAAQ,SAAA4F,GACpB,IAAM4C,EAAYP,EAAgBhI,MAAK,SAAAsH,GAAC,OAAIA,EAAEzK,KAAO8I,EAAE9I,EAAE,IAErD0L,GACFxF,EAAWjD,KAAKyI,EACpB,KAIEH,GACFD,EAAUrI,KAAK,CACb2C,MAAO6E,EACPc,aAAAA,EACAJ,gBAAiBjF,EACjB6C,WAAYJ,EAAc8B,GAC1BkB,UAAsB,QAAX,EAAAlB,EAAEkB,iBAAS,QAAI,GAEhC,IAEKP,EAGE1K,EAAA,oBAA8B4K,I,EAFnC,G,EAAU,EAAU,S,EAAWA,G,sXAGnC,GAAG,CAACD,KC9LJ,OACE,gCACGxK,OAAOC,KAAKhB,GAAMoC,KAAI,SAACd,EAASe,GAAK,OACpC,gBAACyJ,EAAA,EAAK,CACJvJ,IAAKF,EACL0H,QAASV,EACPhH,EACAf,EACA9D,EAAM+L,iBACN/L,EAAMgM,iBACNhM,EAAMsK,YACNtK,EAAMiM,WACNjM,EAAMkM,cACNlM,EAAMmM,aAER3J,KAAMA,EAAKsB,GACXyK,MAAO,KACP,IAIV,I,6ICvDA,UAAgB,YAAc,QAAQ,WAAa,QAAQ,eAAiB,QAAQ,iBAAmB,QAAQ,cAAgB,QAAQ,QAAU,QAAQ,MAAQ,QAAQ,KAAO,QAAQ,OAAS,QAAQ,KAAO,QAAQ,QAAU,SCGlO,SAASC,KACP,OACE,uBAAK5M,UAAS,8BACZ,uBAAKA,UAAS,+DAA0D,iBACtE,uBAAKA,UAAS,mDAA8C,aAE9D,uBAAKA,UAAS,wCAAmC,gBAC/C,uBAAKA,UAAS,0CAAqC,YAErD,uBAAKA,UAAS,wCAAmC,oBAC/C,uBAAKA,UAAS,qCAAgC,cAEhD,uBAAKA,UAAS,kDAA6C,sBACzD,uBAAKA,UAAS,qCAAgC,YAEhD,uBAAKA,UAAS,4DAAuD,mBACnE,uBAAKA,UAAS,kDAA6C,eAInE,CAMA,SAAS6M,GAAczO,GACrB,OACE,uBAAK4B,UAAU,eACb,uBAAKA,UAAS,UAAK,eAAkB,SACnC,uBAAKA,UAAS,qCAAgC,eAEhD,uBAAKA,UAAS,UAAK,cAAiB,SAAM,KAG1C,uBAAKA,UAAS,UAAK,kBAAqB,SACrC5B,EAAM0O,WACH,uBAAK9M,UAAS,qCAAgC,cAC9C,sCAGN,uBAAKA,UAAS,UAAK,oBAAuB,0BACvC5B,EAAM0O,WACH,uBAAK9M,UAAS,qCAAgC,cAC9C,sCAGN,uBAAKA,UAAS,UAAK,iBAAoB,SAAM,KAKnD,CAEM,SAAU+M,KACd,OACE,gCACE,uBAAK/M,UAAU,QACb,gBAAC6M,GAAa,CAACC,YAAU,IAEzB,uBAAK9M,UAAU,8BACb,gBAAC4M,GAAU,MACX,gBAACA,GAAU,MACX,gBAACA,GAAU,QAIf,uBAAK5M,UAAU,QACb,gBAAC6M,GAAa,MAEd,uBAAK7M,UAAU,8BACb,gBAAC4M,GAAU,MACX,gBAACA,GAAU,MACX,gBAACA,GAAU,MACX,gBAACA,GAAU,QAIf,uBAAK5M,UAAU,QACb,gBAAC6M,GAAa,MAEd,uBAAK7M,UAAU,8BACb,gBAAC4M,GAAU,MACX,gBAACA,GAAU,MACX,gBAACA,GAAU,MACX,gBAACA,GAAU,MACX,gBAACA,GAAU,MACX,gBAACA,GAAU,MACX,gBAACA,GAAU,MACX,gBAACA,GAAU,MACX,gBAACA,GAAU,MACX,gBAACA,GAAU,QAKrB,C,4iCCzEA,IACM,GAAY1G,EAAA,mBADA,wBAWZ,SAAU8G,GAA2BC,GACzC,OAAOA,EAAOtI,MAAQhD,OAAOuL,OAAOD,EAAOtI,OAAS,EACtD,CAEM,SAAUwF,GAAiB5L,GAC/B,OAAIK,EAAA,gBAA0BL,GACrB,CACLsH,YAAa,kBACbC,OAAQ,mCACRqH,KAAM,CAAE5O,EAAOuC,GAAIsM,GAAA,UAAmB7O,EAAOoB,QAI7Cf,EAAA,SAAmBL,GACd,CACLsH,YAAa,WACbC,OAAQ,qBACRqH,KAAM,CAAE5O,EAAOuC,GAAIsM,GAAA,UAAmB7O,EAAOoB,QAI7Cf,EAAA,UAAoBL,GACf,CACLsH,YAAa,YACbC,OAAQ,uBACRqH,KAAM,CAAE5O,EAAOuC,GAAIsM,GAAA,UAAmB7O,EAAOoB,QAI7CpB,EAAOM,SAAWC,EAAA,WACb,CACL+G,YAAa,eACbC,OAAQ,wBACRqH,KAAM,CAAE5O,EAAOuC,GAAIsM,GAAA,UAAmB7O,EAAOoB,QAI7CpB,EAAOM,SAAWC,EAAA,SACbuO,GAAA,mBAAqC9O,QAD9C,CAGF,CAEA,SAAS+O,GAAsBjB,EAA0BkB,GACvD,MAAO,CACLC,MAAO,GAAU,qBACjBnN,QAAS,CACPwF,YAAa,aACbC,OAAQ,mBACRqH,KAAM,CAACd,EAAavL,IACpB2M,OAAQ,CAAEF,WAAAA,IAGhB,CAOA,SAASG,GAAetP,GACtB,OACE,gBAAC8I,EAAA,EAAO,CAACC,MAAO/I,EAAMoP,MAAOpG,UAAQ,GACnC,qBACEuG,KAAMvP,EAAMqB,IACZmO,OAAO,UAEP,gBAACvG,EAAA,EAAY,CAAC3E,QAAS,cAI/B,CC1EA,IACM,GAAYwD,EAAA,mBADA,wBAGZ,SAAU2H,K,MACRvJ,GAAW,UACXiG,GAAc,EAAAuD,GAAA,KAEdC,EAAc,kBAAkCC,GAAA,iBAEhDtK,EAAa,SAACuK,GAAe,OAAKC,EAAA,YAAwB,CAAED,OAAAA,GAAS,EACrEE,EAAY,SAACF,GAAe,OAAK,aAAgB3J,EAAhB,CAA0BZ,EAAWuK,GAAQ,EAEpF,GAKI,QAAkCvK,EAAYyK,GAJzCpC,EAAU,EAAjBpH,MACAyJ,EAAO,EAAPA,QACYC,EAAoB,EAAhCzJ,WACA0J,EAAU,EAAVA,WAGIC,EAAkB5G,EAAA,OAAiD,QAAhC,EAAAoE,aAAU,EAAVA,EAAY/I,KAAI,SAAAuI,GAAC,OAAIA,EAAEgB,QAAQ,WAAC,QAAI,IAEvEiC,GAA2B,QAAcD,GAAiB,SAACE,GAC/D,OAAOP,EAAA,oBAAgCO,EACzC,IAEMC,EDzBF,SAA0B3C,GAC9B,OAAOpE,EAAA,OAAiBA,EAAA,UAL1B,SAAyBoE,G,MACvB,OAAiF,QAA1E,EAAAA,aAAU,EAAVA,EAAY3H,QAAO,SAAAmH,GAAC,OAAIA,EAAEhM,OAASoH,EAAA,aAAqB,WAAkB,QAAI,EACvF,CAG8CgI,CAAgB5C,GAAY/I,KAAI,SAAA4L,GAAI,MAAC,OAAY,QAAZ,EAAAA,EAAE5H,kBAAU,QAAI,EAAE,KAAI,MAAMhE,KAAI,SAAA4G,GAAC,OAAIA,EAAE9I,EAAE,GAC5H,CCuBuB+N,CAAgB9C,GAE/B+C,GAA6B,QAAcJ,GAAc,SAACD,GAC9D,OAAOP,EAAA,oBAAgCO,EAAKV,EAAYnN,KAAKmO,WAC/D,IAEM1J,EAAS,kBAA6B2J,GAAA,aAE5C,EAAAC,GAAA,GAAmB,CAAE9H,MAAO,GAAU,gBAEtC,IAAM+H,EDsFF,SAAoC3E,GACxC,IAAMlF,EAAS,kBAA6B2J,GAAA,YACtCxE,EAAWD,EAAYE,IAAMF,EAAYG,GAE/C,OAAO,eAAkB,SAACnM,GAAkB,OAjD9C,SAAgC8N,EAA0BhH,EAAgBmF,GACxE,IAAI+C,EACA4B,EAAiB,YAmBrB,GAjBIvQ,EAAA,UAAoByN,KACtBkB,EAAa,SAEX3O,EAAA,gBAA0ByN,KAC5BkB,EAAa,cACb4B,EAAiB,eAGfvQ,EAAA,SAAmByN,KACrBkB,EAAa,QAEXlB,EAAaxN,SAAWC,EAAA,WAC1ByO,EAAa,UAEXlB,EAAaxN,SAAWC,EAAA,aAC1ByO,EAAa,YAEX3O,EAAA,cAAwByN,KACHzN,EAAA,mBAA6ByN,GAA5C+C,WAGN,MAAO,GAGX,IAAMC,EAAsB,CAAC/B,GAAsBjB,EAAckB,IAE3D+B,EAAYnK,GAAA,eAAkCE,EAAQgH,GAY5D,OAXIiD,GACFD,EAAoBtL,KAAK,CACvByJ,MAAQhD,EAEJ,GAAU2E,GADV,kBAAM,gBAACzB,GAAc,CAACF,MAAO,GAAU2B,GAAiB1P,IAAK6P,GAAa,EAE9EtP,UAAW,eACXuP,QAAS/E,EACTmD,KAAM2B,EACNE,cAAc,IAGXH,CACT,CAMmDH,CAAuB3Q,EAAQ8G,EAAOzE,KAAM4J,EAAS,GAAE,CAACA,GAC3G,CC3FiCiF,CAA0BlF,GAEnDmF,EDkGF,SACJC,EACAC,EACAlB,EACAmB,EACAxK,GAEA,IAA6G,KAAvC,WAAeuK,GAAwB,GAArGE,EAA0B,KAAEC,EAA6B,KACmC,KAApC,WAAeF,GAAqB,GAA5FG,EAAuB,KAAEC,EAA0B,KAY3D,OAVA,aAAgB,WACVL,GACFG,GAA8B,EAClC,GAAG,CAACH,IAEJ,aAAgB,WACVC,GACFI,GAA2B,EAC/B,GAAG,CAACJ,MAEAF,IAAcA,EAAU9L,WAGpB8L,IACJG,GACApB,EAAa7K,SAAWmM,IACxB3K,EAAOzE,KACb,CC7H6BsP,CACzBnE,IACEyC,EAAyB7J,MAC3B+J,IACEI,EAA2BnK,MAC7BU,GAIIT,EAAayJ,GACdG,EAAyB5J,YACzBkK,EAA2BlK,WAE1BuL,EAAiB,WAAc,kBAAMpE,CAAU,GAAE,GAAIA,EAAYnH,IACjEoH,EAAgB,WAAc,kBAClCgB,GAA2BwB,EAAyB,GAAE,GAAIA,EAAyB7J,MAAOC,IACtFqH,EAAkB,WAAc,kBACpCe,GAA2B8B,EAA2B,GAAE,GAAIA,EAA2BnK,MAAOC,IAEhG,OACE,uBAAK5E,UAAU,QACb,gBAACgG,GAAA,EAAY,MAGP0J,EACK,gBAAC3C,GAAsB,MAE3BhB,EAAWlI,OASd,gCACE,gBAACiI,EAAe,CACdC,WAAYoE,EACZnE,cAAeA,EACfC,gBAAiBA,EACjB9B,iBAAkBA,GAClBC,iBAAkB8E,EAClBxG,YAAarD,EAAOzE,KAAK8H,YACzBjH,mBAAiB,EACjB0K,aAAcvH,EACd2F,YAAaA,KAEb6D,GAAWxJ,IACX,gBAACwL,EAAA,EAAoB,CAACxL,WAAYA,EAAYuJ,UAAWA,EAAWG,WAAYA,KApBlF,gBAACnI,EAAoB,CACnB9F,QAAS,CAAEwF,YAAa,eAAuBC,OAAQ,qBACvDQ,SAAU+J,GAAA,qCAyBxB,C,mCC9HA,SAAgB,gBAAkB,QAAQ,IAAM,QAAQ,SAAW,QAAQ,YAAc,QAAQ,QAAU,Q,oCCD3G,IAAIC,EAAQ,CAAC,SAAU,SAAU,OAAQ,MAAO,OAAQ,QAAS,QCA7DC,EAAQ,CAAC,IAAK,KAAM,KAAM,IAAK,IAAK,KAAM,KCO1CC,EAAU,CAAC,EAMJC,EAAW,SAAUC,EAAQC,GACpCH,EAAQE,GAAUC,CACtB,ECXIC,EAAY,CACZ,GACA,GACA,GACA,EACA,IAAM,EAAI,GACV,IAOG,SAASC,EAAOC,GACnB,OAAIA,aAAiBC,KACVD,GAENE,MAAMF,IAAU,QAAQG,KAAKH,GACvB,IAAIC,KAAKG,SAASJ,KAC7BA,GAASA,GAAS,IAEbK,OACAC,QAAQ,QAAS,IACjBA,QAAQ,IAAK,KACbA,QAAQ,IAAK,KACbA,QAAQ,YAAa,SACrBA,QAAQ,IAAK,QACbA,QAAQ,qBAAsB,SAC5B,IAAIL,KAAKD,GACpB,CCzBO,IAAIO,EAAS,SAAUpP,EAAMyO,EAAQY,GAExC,IAAIC,EDgFD,SAAiBtP,EAAMuP,GAE1B,SADcA,EAAeX,EAAOW,GAAgB,IAAIT,OACpCF,EAAO5O,IAAS,GACxC,CCnFc,CAAQA,EAAMqP,GAAQA,EAAKE,cAErC,OD4BG,SAAoBC,EAAMC,GAyB7B,IAhBA,IAAIC,EAAQF,EAAO,EAAI,EAAI,EAWvBG,EAJJH,EAAOI,KAAKC,IAAIL,GAQZM,EAAM,EACHN,GAAQb,EAAUmB,IAAQA,EAAMnB,EAAU/M,OAAQkO,IACrDN,GAAQb,EAAUmB,GAgBtB,OAJAN,EAAOI,KAAKG,MAAMP,KAEE,IADpBM,GAAO,GACiB,EAAI,KACxBA,GAAO,GACJL,EAAWD,EAAMM,EAAKH,GAAUD,GAAOP,QAAQ,KAAMK,EAAKQ,WACrE,CCvEW,CAAWV,EFSC,SAAUb,GAC7B,OAAOF,EAAQE,IAAWF,EAAe,KAC7C,CEX2B,CAAUE,GACrC,ECNAD,EAAS,SLNM,SAAUgB,EAAMM,GAC3B,GAAY,IAARA,EACA,MAAO,CAAC,WAAY,aACxB,IAAIG,EAAO5B,EAAMuB,KAAKG,MAAMD,EAAM,IAGlC,OAFIN,EAAO,IACPS,GAAQ,KACL,CAACT,EAAO,IAAMS,EAAO,OAAQ,MAAQT,EAAO,IAAMS,EAC7D,IKAAzB,EAAS,SJPM,SAAUgB,EAAMM,GAC3B,GAAY,IAARA,EACA,MAAO,CAAC,KAAM,OAClB,IAAIG,EAAO3B,KAASwB,EAAM,IAC1B,MAAO,CAACN,EAAO,IAAMS,EAAO,IAAUT,EAAO,IAAMS,EAAO,IAC9D,G","sources":["file:///app/packages/libs/shared/src/apps/share/components/shared-object-image/shared-object-image.scss","file:///app/packages/libs/shared/src/apps/share/components/shared-object-image/SharedObjectImage.tsx","file:///app/packages/libs/shared/src/apps/share/constants/TableTheme.ts","file:///app/packages/libs/shared/src/apps/share/utils/ShareHelper.ts","file:///app/packages/libs/shared/src/components/pill-tab-selector/PillTabSelector.tsx","file:///app/packages/libs/shared/src/hooks/UseBatchFetch.ts","file:///app/packages/libs/shared/src/utils/AnalyticsRouteHelper.ts","file:///app/packages/libs/shared/src/utils/GroupHelper.ts","file:///app/packages/projects/lite/src/apps/share/components/shares-header/SharesHeader.tsx","file:///app/packages/libs/shared/src/apps/share/components/shared-by-me/empty-state/SharedByMeEmptyState.tsx","file:///app/packages/libs/shared/src/apps/share/components/shared-by-me/share-status-indicator/share-status-indicator.scss","file:///app/packages/libs/shared/src/apps/share/components/shared-by-me/share-status-indicator/ShareStatusIndicator.tsx","file:///app/packages/libs/shared/src/apps/share/components/shared-to-avatar-list/shared-to-avatar-list.scss","file:///app/packages/libs/shared/src/apps/share/components/shared-to-avatar-list/SharedToAvatarList.tsx","file:///app/packages/libs/shared/src/apps/share/components/shared-by-me/table/SharedByMeTableUtils.tsx","file:///app/packages/libs/shared/src/apps/share/components/shared-by-me/table/SharedByMeTable.tsx","file:///app/packages/projects/lite/src/apps/share/views/shared-by-me/partial-loading/partial-shared-by-me-table.scss","file:///app/packages/projects/lite/src/apps/share/views/shared-by-me/partial-loading/PartialSharedByMeTable.tsx","file:///app/packages/projects/lite/src/apps/share/views/shared-by-me/SharedByMeViewUtils.tsx","file:///app/packages/projects/lite/src/apps/share/views/shared-by-me/SharedByMeView.tsx","file:///app/packages/libs/shared/src/components/pill-tab-selector/pill-tab-selector.scss","file:///app/node_modules/timeago.js/esm/lang/en_US.js","file:///app/node_modules/timeago.js/esm/lang/zh_CN.js","file:///app/node_modules/timeago.js/esm/register.js","file:///app/node_modules/timeago.js/esm/utils/date.js","file:///app/node_modules/timeago.js/esm/format.js","file:///app/node_modules/timeago.js/esm/index.js"],"sourcesContent":["// extracted by mini-css-extract-plugin\nexport default {\"thumbnailFallbackSvg\":\"D4JFs\",\"posterFallbackSvg\":\"bjUWl\",\"coverFallbackSvg\":\"kdLpt\"};","import React from 'react';\n\nimport { Core } from 'libs/common/core';\n\nimport { LocationContext, UserAction } from 'libs/analytics/interfaces';\n\nimport { ShareViewHelper } from 'libs/shared/apps/share/views/share/ShareViewHelper';\nimport { BaseImage } from 'libs/shared/components/image/BaseImage';\nimport { ImageFallback, ImageFallbackType } from 'libs/shared/components/image/ImageFallback';\nimport { VideoThumbnail } from 'libs/shared/components/thumbnails/video/VideoThumbnail';\nimport { BG_COLOUR_CLASS_NAMES } from 'libs/shared/constants/ColourClassNames';\nimport { ImageSize, ImageType } from 'libs/shared/enums/Images';\nimport { MasterType } from 'libs/shared/enums/MasterType';\nimport { ThumbnailTextPosition } from 'libs/shared/enums/ThumbnailTextPosition';\nimport { BaseObject, Image } from 'libs/shared/interfaces';\nimport { getBgColorClass } from 'libs/shared/utils/getBgColorClass';\nimport { ImageHelper, ImageOptions } from 'libs/shared/utils/ImageHelper';\nimport { VideoHelper } from 'libs/shared/utils/VideoHelper';\n\nimport styles from './shared-object-image.scss';\n\nconst BASE_IMAGE_CLASS_NAME = 'rounded overflow-hidden';\n\ninterface ImageProps {\n image: Image;\n imageType: ImageType;\n imageClassName?: string;\n imageFallbackComponent: JSX.Element;\n}\n\nfunction getImageProps(object: BaseObject): ImageProps {\n const image = ImageHelper.getDisplayImageFromObject(object);\n\n if (VideoHelper.isVideoType(object))\n return {\n image,\n imageType: ImageType.Thumbnails,\n imageClassName: BASE_IMAGE_CLASS_NAME,\n imageFallbackComponent: <ImageFallback type={ImageFallbackType.Video} />\n };\n\n switch (object.typeId) {\n case MasterType.Series:\n return {\n image,\n imageType: ImageType.TallPosters,\n imageClassName: BASE_IMAGE_CLASS_NAME,\n imageFallbackComponent:\n <ImageFallback type={ImageFallbackType.Series} svgContainerClassName={styles.posterFallbackSvg} />\n };\n\n case MasterType.Playlist:\n return {\n image,\n imageType: ImageType.Covers,\n imageClassName: !image?.url\n ? `${BASE_IMAGE_CLASS_NAME} ${getBgColorClass(object.name, BG_COLOUR_CLASS_NAMES)}`\n : BASE_IMAGE_CLASS_NAME,\n imageFallbackComponent: (\n <ImageFallback\n type={ImageFallbackType.Playlist}\n svgContainerClassName={image?.url ? styles.coverFallbackSvg : 'd-none'}\n extraClasses={!image?.url && 'bg-transparent'}\n />\n )\n };\n }\n}\n\nfunction getImageRatio(object: BaseObject): ImageFallbackType {\n if (VideoHelper.isVideoType(object))\n return 16 / 9;\n\n if (object.typeId === MasterType.Playlist)\n return 1;\n\n if (object.typeId === MasterType.Series)\n return 9 / 16;\n}\n\ninterface SharedObjectImageProps {\n object: BaseObject;\n locationContext: LocationContext;\n appLink?: Core.AppLink;\n showVideoMetadata?: boolean;\n fixedHeight?: boolean;\n}\n\nexport function SharedObjectImage(props: SharedObjectImageProps): JSX.Element {\n const ref = React.useCallback((el: HTMLDivElement) => {\n if (!el || !props.fixedHeight)\n return;\n\n el.style.width = `${el.offsetHeight * getImageRatio(props.object)}px`;\n }, []);\n\n const imageOptions: ImageOptions = { size: ImageSize.Small };\n\n const {\n image,\n imageType,\n imageClassName,\n imageFallbackComponent\n } = getImageProps(props.object);\n\n const useVideoThumbnail = VideoHelper.isVideoType(props.object) && !!props.showVideoMetadata;\n\n return (\n <div className='d-flex align-items-center justify-content-center w-100 h-100'>\n <div ref={ref} className={props.fixedHeight ? 'h-100' : 'w-100'}>\n {useVideoThumbnail &&\n <VideoThumbnail\n video={props.object}\n imageOptions={imageOptions}\n textPosition={ThumbnailTextPosition.Independent}\n type='cosmetic'\n appLink={props.appLink}\n analyticsOptions={{ location: props.locationContext }}\n hideDuration\n hideMask\n size='sm'\n />\n }\n {!useVideoThumbnail &&\n <BaseImage\n data={image?.url}\n imageType={imageType}\n imageOptions={imageOptions}\n appLink={props.appLink}\n className={imageClassName}\n analyticsData={{\n id: props.object.id,\n name: props.object.name\n }}\n analyticsOptions={{\n entity: ShareViewHelper.getAnalyticsEntity(props.object.type),\n actionType: UserAction.Click,\n location: props.locationContext\n }}\n >\n {imageFallbackComponent}\n </BaseImage>\n }\n </div>\n </div>\n );\n}","import { TableTheme } from 'libs/shared/components/table/Table';\n\nexport const SHARES_TABLE_THEME: TableTheme = {\n table: 'striped-list no-full-width pb-3',\n header: 'fw-semibold pb-1',\n headerCell: `py-2 ps-2 text-nowrap`,\n row: 'striped-row rounded',\n cell: 'd-flex align-items-center p-2'\n};","import { format } from 'timeago.js';\n\nimport { ArrayHelper } from 'libs/common/react/utils/ArrayHelper';\n\nimport { CheckMarkStatus } from 'libs/shared/components/check-mark-button/CheckMarkButton';\nimport { ShareActivityStatus } from 'libs/shared/enums/ShareActivityStatus';\n\ninterface ObjectWithDateShared {\n dateShared: string;\n}\n\ntype GroupedByDate<T extends ObjectWithDateShared> = { [date: string]: T[] };\n\nexport const ShareHelper = {\n groupByDateShared<T extends ObjectWithDateShared>(data: T[]): GroupedByDate<T> {\n const dateToObjectMapping: GroupedByDate<T> = ArrayHelper.groupBy(data, 'dateShared');\n\n const sortedDates = Object.keys(dateToObjectMapping).sort().reverse();\n\n // Create a sorted mapping between dates and the \"ObjectWithDateShared\" objects\n return sortedDates.reduce((acc: GroupedByDate<T>, date) => {\n const heading = format(date);\n\n if (!acc[heading])\n acc[heading] = [];\n\n acc[heading] = acc[heading].concat(dateToObjectMapping[date]);\n return acc;\n }, {});\n },\n\n mapActivityStatusToCheckMarkStatus(activityStatus: ShareActivityStatus): CheckMarkStatus {\n switch (activityStatus) {\n case ShareActivityStatus.Complete:\n return CheckMarkStatus.Complete;\n case ShareActivityStatus.Incomplete:\n return CheckMarkStatus.Incomplete;\n case ShareActivityStatus.None:\n return CheckMarkStatus.None;\n }\n },\n\n mapCheckMarkStatusToActivityStatus(checkMarkStatus: CheckMarkStatus): ShareActivityStatus {\n switch (checkMarkStatus) {\n case CheckMarkStatus.Complete:\n return ShareActivityStatus.Complete;\n case CheckMarkStatus.Incomplete:\n return ShareActivityStatus.Incomplete;\n case CheckMarkStatus.None:\n return ShareActivityStatus.None;\n }\n }\n};","import React from 'react';\n\nimport { Core } from 'libs/common/core';\nimport { HashObject } from 'libs/common/react/interfaces';\n\nimport { AnalyticsHelper } from 'libs/analytics/AnalyticsHelper';\nimport { AnalyticsOptions } from 'libs/analytics/interfaces';\n\nimport { AppLink } from 'libs/shared/components/app-link/AppLink';\nimport { Badge, BadgeType } from 'libs/shared/components/badges/Badge';\nimport { DivButton } from 'libs/shared/components/div-button/DivButton';\n\nimport { SvgContainer } from '../svg-container/SvgContainer';\n\nimport styles from './pill-tab-selector.scss';\n\ninterface TabContentsProps {\n tab: PillTab;\n}\n\nfunction TabContents(props: TabContentsProps): JSX.Element {\n return (\n <>\n {!!props.tab.svgName && (\n <div className={props.tab.name ? 'pe-1' : ''}>\n <SvgContainer svgName={props.tab.svgName} />\n </div>\n )}\n\n {props.tab.name}\n\n {typeof (props.tab.count) === 'number' && (\n <div className='ps-2'>\n <Badge type={BadgeType.Count} data={props.tab.count} />\n </div>\n )}\n </>\n );\n}\n\nexport interface PillTab {\n name: string;\n active: boolean;\n svgName?: string;\n\n className?: string;\n\n appLink?: Core.AppLink;\n onSelect?: () => void;\n\n analyticsData?: HashObject;\n analyticsOptions?: AnalyticsOptions;\n\n count?: number;\n}\n\ninterface PillTabSelectorProps {\n tabs: PillTab[];\n listClassName?: string;\n className?: string;\n borderRadius?: 'sm' | 'lg'\n}\n\nPillTabSelector.defaultProps = {\n borderRadius: 'lg'\n};\n\nexport function PillTabSelector(props: PillTabSelectorProps): JSX.Element {\n function onSelectTab(tab: PillTab): void {\n if (tab.active || !tab.onSelect)\n return;\n\n tab.onSelect();\n\n if (tab.analyticsData && tab.analyticsOptions)\n AnalyticsHelper.logUserAction(tab.analyticsData, tab.analyticsOptions);\n }\n\n return (\n <nav className={props.className ?? ''}>\n <ul className={`\n list-unstyled d-inline-block m-0 ${styles.pillTabSelector}\n ${props.borderRadius ? styles.radiusSmall : ''}\n ${props.listClassName}\n `}>\n {props.tabs.map((tab, index) => {\n return (\n <li\n className={`\n p-0 ${styles.tab} ${tab.active ? 'btn btn-dark' : 'btn btn-outline-dark'}\n ${tab.name ? styles.minWidth : ''} ${tab.className}\n `}\n key={index}\n >\n {tab.appLink ? (\n <AppLink\n appLink={tab.appLink}\n analyticsData={tab.analyticsData}\n analyticsOptions={tab.analyticsOptions}\n className={`\n cursor-pointer d-flex align-items-center justify-content-center\n text-decoration-none text-reset px-2 text-nowrap ${styles.tabLink}\n `}\n >\n <TabContents tab={tab} />\n </AppLink>\n ) : (\n <DivButton\n className={`\n cursor-pointer d-flex align-items-center justify-content-center\n text-decoration-none text-reset p-2 text-nowrap ${styles.tabLink}\n `}\n onClick={() => onSelectTab(tab)}\n >\n <TabContents tab={tab} />\n </DivButton>\n )}\n </li>\n );\n })}\n </ul>\n </nav>\n );\n}\n","import React from 'react';\nimport { useDispatch, useSelector } from 'react-redux';\n\nimport { Flight } from 'libs/common/flight';\nimport { ApplicationState, HashObject } from 'libs/common/react/interfaces';\n\nimport { BaseObject } from 'libs/shared/interfaces';\n\nexport interface UseBatchFetchResult<T extends BaseObject> {\n items: { [key: string]: T} | null;\n isFetching: boolean;\n}\n\n/**\n * Used to fetch multiple items by id with Flight. Will fetch 25 items at a time firing off multiple\n * requests if there are more than 25 items.\n * This will return items as null until we have all our items. Items will be returned as an object with\n * their ids as they key for easy mapping\n * \n * @param itemIds \n * @param getRequest \n */\nexport function useBatchFetch<T extends BaseObject>(\n itemIds: string[],\n getRequest: (ids: string[]) => Flight.Request\n): UseBatchFetchResult<T> {\n const [ idBatches, setIdBatches ] = React.useState<string[][]>([]);\n\n React.useEffect(() => {\n if (!itemIds?.length)\n return;\n\n const newBatches = [...idBatches];\n newBatches.push([]);\n\n itemIds.forEach(id => {\n if (newBatches.find(batch => batch.find(_id => _id === id)))\n return;\n\n newBatches[newBatches.length - 1].push(id);\n });\n\n setIdBatches(newBatches.filter(batch => batch.length));\n }, [itemIds ? itemIds.join(',') : null]);\n\n const dispatch = useDispatch();\n\n const state = useSelector((state: ApplicationState) => state);\n\n React.useEffect(() => {\n idBatches.forEach(idBatch => {\n const request = getRequest(idBatch);\n const response = Flight.getResponse<T[]>(state, request.key);\n\n if (response.shouldFetch)\n Flight.fetch(dispatch, request);\n });\n }, [idBatches?.length]);\n\n if (!idBatches?.length)\n return { items: null, isFetching: false };\n \n const items: { [key: string]: T} = {};\n\n /* Used locally to only return our items if we've fetched all of them */\n const responses: HashObject<Flight.Response<T[]>> = {};\n \n idBatches.forEach((idBatch, i) => {\n const request = getRequest(idBatch);\n const response = Flight.getResponse<T[]>(state, request.key);\n responses[i] = response;\n\n if (response.data)\n response.data.forEach(v => items[v.id] = v);\n });\n\n return {\n items: Object.keys(responses).some(k => !!responses[k].data) ? items : null,\n isFetching: !!Object.keys(responses).some(k => responses[k].isFetching)\n };\n}","import { UrlHelper } from 'libs/common/backbone/utils/UrlHelper';\n\nimport { MasterType } from 'libs/shared/enums/MasterType';\nimport { BaseObject, Config } from 'libs/shared/interfaces';\n\nexport const AnalyticsRouteHelper = {\n getObjectUrl(config: Config, object: BaseObject): string {\n const baseUrl = config.analyticsWebUrl;\n\n if (!baseUrl)\n return;\n\n let relativeUrl = '';\n\n switch (object.typeId) {\n case MasterType.Video:\n relativeUrl = `/videos/${object.id}/overview`;\n break;\n\n case MasterType.Clip:\n relativeUrl = `/clips/${object.id}/overview`;\n break;\n\n case MasterType.Interactive:\n relativeUrl = `/interactives/${object.id}/overview`;\n break;\n }\n\n if (!relativeUrl)\n return;\n\n return UrlHelper.safeUrlConcat(baseUrl, relativeUrl);\n }\n};","import { ButtonProps } from 'react-bootstrap';\n\nimport { ClassroomGroupColour } from 'libs/shared/interfaces';\n\nexport function mapColourToBsVariant(groupColour: ClassroomGroupColour): ButtonProps['variant'] {\n switch (groupColour) {\n case ClassroomGroupColour.Pink:\n return 'pink';\n case ClassroomGroupColour.Orange:\n return 'orange';\n case ClassroomGroupColour.Green:\n return 'green';\n case ClassroomGroupColour.Blue:\n return 'blue';\n case ClassroomGroupColour.Purple:\n return 'purple';\n case ClassroomGroupColour.Indigo:\n return 'indigo';\n default:\n return 'pink';\n }\n}\n","import React from 'react';\n\nimport { LanguageService } from 'libs/common/backbone/services/LanguageService';\nimport { Core } from 'libs/common/core';\n\nimport { PillTab, PillTabSelector } from 'libs/shared/components/pill-tab-selector/PillTabSelector';\nimport { ContextService } from 'libs/shared/services/ContextService';\n\nimport { Actions } from 'shared/constants/LiteActions';\nimport { AppChannels } from 'shared/constants/LiteRadioChannels';\n\nconst namespace = 'share.sharesHeader';\nconst getPhrase = LanguageService.encloseNamespace(namespace);\n\nconst SHARED_BY_ME_APP_LINK = { application: AppChannels.MY_SHARES, action: Actions.MyShares.SHARED_BY_ME };\nconst SHARED_WITH_ME_APP_LINK = { application: AppChannels.MY_SHARES, action: Actions.MyShares.SHARED_WITH_ME };\n\nfunction getPillTabs(): PillTab[] {\n const currentAppLink = ContextService.getCurrentRoute()?.appLink;\n\n return [\n {\n name: getPhrase('sharedByMe'),\n onSelect: () => Core.AppLinkHelper.trigger(SHARED_BY_ME_APP_LINK),\n active: currentAppLink?.action === SHARED_BY_ME_APP_LINK.action\n },\n {\n name: getPhrase('sharedWithMe'),\n onSelect: () => Core.AppLinkHelper.trigger(SHARED_WITH_ME_APP_LINK),\n active: currentAppLink?.action === SHARED_WITH_ME_APP_LINK.action\n }\n ];\n}\n\nexport function SharesHeader(): JSX.Element {\n return (\n <div className='pb-3'>\n <h1 className='h2 mb-3'>{getPhrase('shares')}</h1>\n <PillTabSelector tabs={getPillTabs()} />\n </div>\n );\n}","import React from 'react';\n\nimport { LanguageService } from 'libs/common/backbone/services/LanguageService';\nimport { Core } from 'libs/common/core';\n\nimport { EmptyState } from 'libs/shared/components/empty-states/EmptyState';\n\nconst namespace = 'share.sharedByMeEmptyState';\nconst getPhrase = LanguageService.encloseNamespace(namespace);\n\ninterface SharedByMeEmptyStateProps {\n imageUrl: string;\n appLink?: Core.AppLink;\n useInteractiveCopy?: boolean;\n}\n\nexport function SharedByMeEmptyState(props: SharedByMeEmptyStateProps): JSX.Element {\n return (\n <EmptyState>\n <EmptyState.Image src={props.imageUrl} size='small'/>\n <EmptyState.Heading>\n {getPhrase(props.useInteractiveCopy ? 'interactivesHeading' : 'genericHeading')}\n </EmptyState.Heading>\n <EmptyState.Info>{getPhrase(props.useInteractiveCopy ? 'interactivesInfo' : 'genericInfo')}</EmptyState.Info>\n {!!props.appLink &&\n <EmptyState.Cta appLink={props.appLink} text={getPhrase('cta')} />\n }\n </EmptyState>\n );\n}","// extracted by mini-css-extract-plugin\nexport default {\"indicatorContainer\":\"T6YAv\",\"indicator\":\"_MRHG\"};","import React from 'react';\n\nimport { LanguageService } from 'libs/common/backbone/services/LanguageService';\n\nimport { SvgContainer, SvgContainerSize } from 'libs/shared/components/svg-container/SvgContainer';\nimport { Tooltip } from 'libs/shared/components/tooltip/Tooltip';\nimport { ShareLinkStatus } from 'libs/shared/enums/ShareLinkStatus';\nimport { ShareType } from 'libs/shared/enums/ShareType';\nimport { UnionShareObject } from 'libs/shared/interfaces';\nimport { cvSvgLibrary } from 'libs/shared/utils/SvgHelper';\n\nimport styles from './share-status-indicator.scss';\n\nconst namespace = 'share.shareStatusIndicator';\nconst getPhrase = LanguageService.encloseNamespace(namespace);\n\nfunction getStatusPhrase(share: UnionShareObject): string {\n if (share.type === ShareType.DirectShare)\n return getPhrase('active');\n\n switch (share.status) {\n case ShareLinkStatus.Active:\n return getPhrase('active');\n\n case ShareLinkStatus.Expired:\n return getPhrase('expired');\n }\n}\n\nfunction getBgColourClassName(share: UnionShareObject): string {\n if (share.type === ShareType.DirectShare)\n return 'bg-success';\n \n switch (share.status) {\n case ShareLinkStatus.Active:\n return 'bg-success';\n\n case ShareLinkStatus.Expired:\n return 'bg-secondary';\n }\n}\n\ninterface ShareStatusIndicatorProps {\n share: UnionShareObject;\n}\n\n/**\n * TODO: add support for deleted share links (currently the api doesn't return these.)\n */\nexport function ShareStatusIndicator(props: ShareStatusIndicatorProps): JSX.Element {\n if (props.share.type === ShareType.DirectShare && !props.share.recipients?.length)\n return <></>;\n\n if (props.share.type === ShareType.ShareLink && props.share.isPasswordProtected) {\n return (\n <Tooltip title={getPhrase('passwordProtected')} spanHack>\n <SvgContainer svgName={cvSvgLibrary.Lock} size={SvgContainerSize.Small} />\n </Tooltip>\n );\n }\n\n return (\n <Tooltip\n title={getStatusPhrase(props.share)}\n spanHack\n spanHackClassName={styles.indicatorContainer}\n >\n <div className={`${styles.indicator} ${getBgColourClassName(props.share)}`} />\n </Tooltip>\n );\n}","// extracted by mini-css-extract-plugin\nexport default {\"avatarContainer\":\"ByxQa\"};","import React from 'react';\n\nimport { LanguageService } from 'libs/common/backbone/services/LanguageService';\nimport { ArrayHelper } from 'libs/common/react/utils/ArrayHelper';\n\nimport { Avatar } from 'libs/shared/components/avatar/Avatar';\nimport { AvatarItemProps, AvatarList } from 'libs/shared/components/avatar-list/AvatarList';\nimport { IconCircle } from 'libs/shared/components/icon-circle/IconCircle';\nimport { SvgContainer, SvgContainerSize } from 'libs/shared/components/svg-container/SvgContainer';\nimport { Tooltip } from 'libs/shared/components/tooltip/Tooltip';\nimport { MasterType } from 'libs/shared/enums/MasterType';\nimport { BaseObject, Classroom, ClassroomGroup, User } from 'libs/shared/interfaces';\nimport { mapColourToBsVariant } from 'libs/shared/utils/GroupHelper';\nimport { cvSvgLibrary } from 'libs/shared/utils/SvgHelper';\nimport { UserHelper } from 'libs/shared/utils/UserHelper';\n\nimport styles from './shared-to-avatar-list.scss';\n\nconst namespace = 'reportsShare.sharedToAvatarList';\nconst getPhrase = LanguageService.encloseNamespace(namespace);\n\nfunction getHiddenRecipientText(hiddenRecipients: BaseObject[]): string {\n const counts = ArrayHelper.countBy(hiddenRecipients, 'typeId');\n const userCount = counts[MasterType.User];\n const classroomCount = counts[MasterType.Classroom];\n const groupCount = counts[MasterType.ClassroomGroup];\n\n if (userCount && classroomCount && groupCount)\n return getPhrase('classroomsGroupsAndUsers', { userCount, classroomCount, groupCount });\n\n if (userCount && classroomCount)\n return getPhrase('classroomsAndUsers', { userCount, classroomCount });\n\n if (userCount && groupCount)\n return getPhrase('groupsAndUsers', { userCount, groupCount });\n\n if (classroomCount && groupCount)\n return getPhrase('classroomsAndGroups', { classroomCount, groupCount });\n\n if (userCount)\n return getPhrase('users', { userCount });\n\n if (classroomCount)\n return getPhrase('classrooms', { classroomCount });\n\n if (groupCount)\n return getPhrase('groups', { groupCount });\n}\n\nfunction SharedToAvatar(props: AvatarItemProps): JSX.Element {\n const user: User = props.item?.typeId === MasterType.User && props.item as User;\n const classroom: Classroom = props.item?.typeId === MasterType.Classroom && props.item as Classroom;\n const classroomGroup: ClassroomGroup = props.item?.typeId === MasterType.ClassroomGroup\n && props.item as ClassroomGroup;\n\n const svgContainerClassName = 'd-flex justify-content-center align-items-center text-white rounded-circle h-100 w-100';\n\n return (\n <div className={`${styles.avatarContainer} position-relative d-inline-block`}>\n <div\n className={`${styles.avatarWrapper} position-absolute w-100 h-100 bg-white rounded-circle`}\n style={{ left: `${props.index * -15}%`, zIndex: props.maxAvatars - props.index }}\n >\n {!!user &&\n <Tooltip title={`${user.name} ${user.surname}`} spanHack spanHackClassName='h-100 w-100'>\n <Avatar\n imageUrl={user.avatar?.url}\n imageCdnUrl={props.imageCdnUrl}\n initials={UserHelper.getInitials(user.name, user.surname)}\n />\n </Tooltip>\n }\n {!!classroom &&\n <Tooltip title={classroom.name} spanHack spanHackClassName='h-100 w-100'>\n <div className={svgContainerClassName}>\n <IconCircle\n svgName={cvSvgLibrary.Classrooms}\n svgSize={SvgContainerSize.Large}\n variant='teal'\n />\n </div>\n </Tooltip>\n }\n {!!classroomGroup &&\n <Tooltip title={classroomGroup.name} spanHack spanHackClassName='h-100 w-100'>\n <div className={svgContainerClassName}>\n <IconCircle\n svgName={cvSvgLibrary.Group}\n variant={mapColourToBsVariant(classroomGroup.metadata?.colour)}\n />\n </div>\n </Tooltip>\n }\n </div>\n </div>\n );\n}\n\nexport function AnonymousSharedToAvatar(): JSX.Element {\n return (\n <div className={styles.avatarContainer}>\n <Tooltip\n title={getPhrase('anonymous')}\n spanHack\n spanHackClassName='bg-light text-dark d-flex justify-content-center align-items-center rounded-circle h-100 w-100'\n >\n <SvgContainer svgName={cvSvgLibrary.Anonymous} />\n </Tooltip>\n </div>\n );\n}\n\nexport function SharedLinkAvatar(): JSX.Element {\n return (\n <div className={styles.avatarContainer}>\n <Tooltip\n title={getPhrase('sharedLink')}\n spanHack\n spanHackClassName='bg-light text-dark d-flex justify-content-center align-items-center rounded-circle h-100 w-100'\n >\n <SvgContainer svgName={cvSvgLibrary.Link} />\n </Tooltip>\n </div>\n );\n}\n\ninterface SharedToAvatarListProps {\n recipients: BaseObject[];\n imageCdnUrl: string;\n maxAvatars?: number;\n}\n\nSharedToAvatarList.defaultProps = {\n maxAvatars: 5\n};\n\nexport function SharedToAvatarList(props: SharedToAvatarListProps): JSX.Element {\n return (\n <div>\n <AvatarList\n {...props}\n items={props.recipients}\n avatarItem={SharedToAvatar}\n avatarContainerClassname={styles.avatarContainer}\n getHiddenTooltip={getHiddenRecipientText}\n />\n </div>\n );\n}","import React from 'react';\nimport { Column } from 'react-table';\nimport { format as formatDate } from 'timeago.js';\n\nimport { LanguageService } from 'libs/common/backbone/services/LanguageService';\nimport { Core } from 'libs/common/core';\nimport { ArrayHelper } from 'libs/common/react/utils/ArrayHelper';\nimport { DateHelper } from 'libs/common/react/utils/DateHelper';\n\nimport { LocationContext, UserAction } from 'libs/analytics/interfaces';\n\nimport {\n ShareStatusIndicator\n} from 'libs/shared/apps/share/components/shared-by-me/share-status-indicator/ShareStatusIndicator';\nimport { SharedObjectImage } from 'libs/shared/apps/share/components/shared-object-image/SharedObjectImage';\nimport {\n AnonymousSharedToAvatar,\n SharedLinkAvatar,\n SharedToAvatarList\n} from 'libs/shared/apps/share/components/shared-to-avatar-list/SharedToAvatarList';\nimport { ShareHelper } from 'libs/shared/apps/share/utils/ShareHelper';\nimport { SharableEntity, ShareViewHelper } from 'libs/shared/apps/share/views/share/ShareViewHelper';\nimport { ActionOptions, Actions } from 'libs/shared/components/actions/Actions';\nimport { AppLink } from 'libs/shared/components/app-link/AppLink';\nimport { Text } from 'libs/shared/components/text/Text';\nimport { ShareType } from 'libs/shared/enums/ShareType';\nimport { Breakpoints } from 'libs/shared/hooks/useBreakpoints';\nimport { BaseObject, UnionShareObject } from 'libs/shared/interfaces';\nimport { VideoHelper } from 'libs/shared/utils/VideoHelper';\n\nconst namespace = 'share.sharedByMeTable';\nconst getPhrase = LanguageService.encloseNamespace(namespace);\n\nfunction getDateShared(share: UnionShareObject): string {\n if (share.type === ShareType.ShareLink || !share?.recipients?.length)\n return share.dateCreated;\n\n const datesShared = share.recipients.map(r => r.dateShared);\n\n datesShared.sort((date1, date2) => {\n if (DateHelper.isSame(date1, date2))\n return 0;\n\n return DateHelper.isAfter(date1, date2) ? 1 : -2;\n });\n\n\n if (!datesShared.length)\n return '';\n\n return ArrayHelper.last(datesShared);\n}\n\ninterface SharedByMeTableData {\n share: UnionShareObject;\n sharedObject: SharableEntity;\n dateShared: string;\n shareRecipients?: BaseObject[];\n viewCount: number;\n}\n\ntype TableDataGroupings = { [date: string]: SharedByMeTableData[] };\n\nexport function getColumns(\n index: number,\n dateHeading: string,\n getObjectAppLink: (object: BaseObject) => Core.AppLink,\n getObjectActions: (object: BaseObject) => ActionOptions[],\n imageCdnUrl: string,\n showStatus?: boolean,\n showViewCount?: boolean,\n breakpoints?: Breakpoints\n): Column<SharedByMeTableData>[] {\n const isMobile = breakpoints && (breakpoints.xs || breakpoints.sm);\n\n const columns: Column<SharedByMeTableData>[] = [\n {\n Header: showStatus ? '' : dateHeading,\n accessor: 'sharedObject',\n id: 'image',\n Cell: ({ value }) => (\n <div className='w-100'>\n <SharedObjectImage\n object={value}\n appLink={getObjectAppLink(value)}\n showVideoMetadata\n locationContext={LocationContext.SharedByMe}\n />\n </div>\n ),\n minWidth: 140,\n maxWidth: 30\n },\n {\n accessor: 'sharedObject',\n id: 'name',\n Cell: ({ value }) => {\n if (value.name) {\n if (VideoHelper.isVideoType(value) && !VideoHelper.getCanBeConsumed(value)?.canNavigate) {\n return (\n <span className='clamp-2'>\n {value.name}\n </span>\n );\n }\n\n return (\n <AppLink\n appLink={getObjectAppLink(value)}\n className='clamp-2'\n analyticsData={{ id: value.id, name: value.name }}\n analyticsOptions={{\n entity: ShareViewHelper.getAnalyticsEntity(value.type),\n actionType: UserAction.Click,\n location: LocationContext.SharedByMe\n }}\n >\n {value.name}\n </AppLink>\n );\n }\n\n return <span><Text namespace={namespace} phrase='videoUnavailable' /></span>;\n },\n width: 60\n },\n {\n Header: index === 0 ? getPhrase('sharedTo') : '',\n accessor: 'shareRecipients',\n Cell: ({ value }) => {\n if (!value)\n return <SharedLinkAvatar />;\n\n if (!value.length)\n return <AnonymousSharedToAvatar />;\n\n return <SharedToAvatarList recipients={value} imageCdnUrl={imageCdnUrl} maxAvatars={isMobile ? 1 : 2} />;\n },\n width: 40\n },\n !isMobile && {\n Header: index === 0 ? getPhrase('shared') : '',\n id: 'dateShared',\n accessor: s => formatDate(s.dateShared),\n width: 40\n },\n {\n accessor: 'sharedObject',\n id: 'actions',\n Cell: ({ value }) => (\n <Actions\n actions={getObjectActions(value)}\n className='w-100 justify-content-end pe-2'\n />\n ),\n width: 20\n }\n ];\n\n const statusColumn: Column<SharedByMeTableData> = {\n Header: dateHeading,\n accessor: 'share',\n id: 'status',\n Cell: ({ value }) => (\n <ShareStatusIndicator share={value} />\n ),\n width: 5\n };\n\n const viewCountColumn: Column<SharedByMeTableData> = {\n Header: getPhrase('views'),\n accessor: 'viewCount',\n width: 30\n };\n\n if (showStatus)\n columns.splice(0, 0, statusColumn);\n\n if (showViewCount)\n columns.splice(columns.length - 1, 0, viewCountColumn);\n \n return columns.filter((Boolean));\n}\n\nexport function useGetData(\n sentShares: UnionShareObject[],\n sharedObjects: BaseObject[],\n shareRecipients: BaseObject[],\n groupByDate: boolean,\n refreshTable: boolean\n): TableDataGroupings {\n return React.useMemo(() => {\n const tableData: SharedByMeTableData[] = [];\n\n sentShares.forEach(s => {\n const sharedObject = sharedObjects.find(o => o.id === s.objectId);\n\n let recipients: BaseObject[] | null = null;\n\n if (s.type === ShareType.DirectShare) {\n recipients = [];\n\n s.recipients?.forEach(r => {\n const recipient = shareRecipients.find(s => s.id === r.id);\n\n if (recipient)\n recipients.push(recipient);\n });\n }\n\n // Skip if we don't have access to the shared object (e.g. if it's been deleted)\n if (sharedObject)\n tableData.push({\n share: s,\n sharedObject,\n shareRecipients: recipients,\n dateShared: getDateShared(s),\n viewCount: s.viewCount ?? 0\n });\n });\n\n if (!groupByDate)\n return { [getPhrase('title')]: tableData };\n\n return ShareHelper.groupByDateShared(tableData);\n }, [refreshTable]);\n}","import React from 'react';\n\nimport { Core } from 'libs/common/core';\n\nimport { SHARES_TABLE_THEME } from 'libs/shared/apps/share/constants/TableTheme';\nimport { ActionOptions } from 'libs/shared/components/actions/Actions';\nimport { Table } from 'libs/shared/components/table/Table';\nimport { Breakpoints } from 'libs/shared/hooks/useBreakpoints';\nimport { BaseObject, UnionShareObject } from 'libs/shared/interfaces';\n\nimport { getColumns, useGetData } from './SharedByMeTableUtils';\n\ninterface SharedByMeTableProps {\n sentShares: UnionShareObject[];\n sharedObjects: BaseObject[];\n shareRecipients: BaseObject[];\n getObjectAppLink: (object: BaseObject) => Core.AppLink;\n getObjectActions: (object: BaseObject) => ActionOptions[];\n imageCdnUrl: string;\n groupByDateShared?: boolean;\n showStatus?: boolean;\n showViewCount?: boolean;\n refreshTable?: boolean;\n breakpoints?: Breakpoints;\n}\n\nfunction SharedByMeTableMemo(props: SharedByMeTableProps): JSX.Element {\n const data = useGetData(\n props.sentShares,\n props.sharedObjects,\n props.shareRecipients,\n !!props.groupByDateShared,\n !!props.refreshTable\n );\n\n return (\n <>\n {Object.keys(data).map((heading, index) => (\n <Table\n key={index}\n columns={getColumns(\n index,\n heading,\n props.getObjectAppLink,\n props.getObjectActions,\n props.imageCdnUrl,\n props.showStatus,\n props.showViewCount,\n props.breakpoints\n )}\n data={data[heading]}\n theme={SHARES_TABLE_THEME}\n />\n ))}\n </>\n );\n}\n\nexport const SharedByMeTable = React.memo(SharedByMeTableMemo);","// extracted by mini-css-extract-plugin\nexport default {\"imageColumn\":\"uIOaA\",\"nameColumn\":\"Nta2B\",\"sharedToColumn\":\"XTJBC\",\"dateSharedColumn\":\"HdARK\",\"actionsColumn\":\"DXyZw\",\"heading\":\"XZ6o7\",\"image\":\"MolfU\",\"name\":\"MM43m\",\"avatar\":\"EboYM\",\"date\":\"by_XM\",\"actions\":\"_S2M_\"};","import React from 'react';\n\nimport styles from './partial-shared-by-me-table.scss';\n\nfunction PartialRow(): JSX.Element {\n return (\n <div className={`d-flex striped-row rounded`}>\n <div className={`d-flex align-items-center justify-content-center p-2 ${styles.imageColumn}`}>\n <div className={`partial-loading-background rounded w-100 ${styles.image}`} />\n </div>\n <div className={`d-flex align-items-center p-2 ${styles.nameColumn}`}>\n <div className={`partial-loading-background w-75 ${styles.name}`} />\n </div>\n <div className={`d-flex align-items-center p-2 ${styles.sharedToColumn}`}>\n <div className={`partial-loading-background ${styles.avatar}`} />\n </div>\n <div className={`d-none d-md-flex align-items-center p-2 ${styles.dateSharedColumn}`}>\n <div className={`partial-loading-background ${styles.date}`} />\n </div>\n <div className={`d-flex align-items-center justify-content-end p-2 ${styles.actionsColumn}`}>\n <div className={`partial-loading-background rounded me-2 ${styles.actions}`} />\n </div>\n </div>\n );\n}\n\ninterface PartialHeaderProps {\n fullHeader?: boolean;\n}\n\nfunction PartialHeader(props: PartialHeaderProps): JSX.Element {\n return (\n <div className='d-flex mb-1'>\n <div className={`${styles.imageColumn} p-2`}>\n <div className={`partial-loading-background ${styles.heading}`} />\n </div>\n <div className={`${styles.nameColumn} p-2`}>\n \n </div>\n <div className={`${styles.sharedToColumn} p-2`}>\n {props.fullHeader\n ? <div className={`partial-loading-background ${styles.heading}`} />\n : <> </>\n }\n </div>\n <div className={`${styles.dateSharedColumn} p-2 d-none d-md-flex`}>\n {props.fullHeader\n ? <div className={`partial-loading-background ${styles.heading}`} />\n : <> </>\n }\n </div>\n <div className={`${styles.actionsColumn} p-2`}>\n \n </div>\n </div>\n );\n}\n\nexport function PartialSharedByMeTable(): JSX.Element {\n return (\n <>\n <div className='mb-3'>\n <PartialHeader fullHeader />\n\n <div className='striped-list no-full-width'>\n <PartialRow />\n <PartialRow />\n <PartialRow />\n </div>\n </div>\n\n <div className='mb-3'>\n <PartialHeader />\n\n <div className='striped-list no-full-width'>\n <PartialRow />\n <PartialRow />\n <PartialRow />\n <PartialRow />\n </div>\n </div>\n\n <div className='mb-3'>\n <PartialHeader />\n\n <div className='striped-list no-full-width'>\n <PartialRow />\n <PartialRow />\n <PartialRow />\n <PartialRow />\n <PartialRow />\n <PartialRow />\n <PartialRow />\n <PartialRow />\n <PartialRow />\n <PartialRow />\n </div>\n </div>\n </>\n );\n}","import React from 'react';\n\nimport { LanguageService } from 'libs/common/backbone/services/LanguageService';\nimport { Core } from 'libs/common/core';\nimport { Flight } from 'libs/common/flight';\nimport { ArrayHelper } from 'libs/common/react/utils/ArrayHelper';\nimport { TextHelper } from 'libs/common/react/utils/TextHelper';\n\nimport { SharableEntityType } from 'libs/shared/apps/share/views/share/ShareViewHelper';\nimport { ActionOptions } from 'libs/shared/components/actions/Actions';\nimport { SvgContainer } from 'libs/shared/components/svg-container/SvgContainer';\nimport { Tooltip } from 'libs/shared/components/tooltip/Tooltip';\nimport { MasterType } from 'libs/shared/enums/MasterType';\nimport { ShareType } from 'libs/shared/enums/ShareType';\nimport { ConfigRequests } from 'libs/shared/flight-requests/ConfigRequests';\nimport { UseBatchFetchResult } from 'libs/shared/hooks/UseBatchFetch';\nimport { Breakpoints } from 'libs/shared/hooks/useBreakpoints';\nimport { BaseObject, Config, DirectShare, Series, UnionShareObject } from 'libs/shared/interfaces';\nimport { AnalyticsRouteHelper } from 'libs/shared/utils/AnalyticsRouteHelper';\nimport { cvSvgLibrary } from 'libs/shared/utils/SvgHelper';\nimport { VideoHelper } from 'libs/shared/utils/VideoHelper';\n\nimport { Actions } from 'shared/constants/LiteActions';\nimport { AppChannels } from 'shared/constants/LiteRadioChannels';\n\nimport { SeriesAppLinkHelper } from 'apps/series/SeriesAppLinkHelper';\n\nconst namespace = 'liteShare.sharedByMe';\nconst getPhrase = LanguageService.encloseNamespace(namespace);\n\nfunction getDirectShares(sentShares: UnionShareObject[]): DirectShare[] {\n return sentShares?.filter(s => s.type === ShareType.DirectShare) as DirectShare[] ?? [];\n}\n\nexport function getRecipientIds(sentShares: UnionShareObject[]): string[] {\n return ArrayHelper.uniq(ArrayHelper.flatten(getDirectShares(sentShares).map(d => d.recipients ?? [])), 'id').map(r => r.id);\n}\n\nexport function getBatchFetchResultAsArray(result: UseBatchFetchResult<BaseObject>): BaseObject[] {\n return result.items ? Object.values(result.items) : [];\n}\n\nexport function getObjectAppLink(object: BaseObject): Core.AppLink {\n if (VideoHelper.isInteractive(object)) {\n return {\n application: AppChannels.INTERACTIVES,\n action: Actions.Interactives.VIEW_INTERACTIVE,\n args: [ object.id, TextHelper.slugify(object.name) ]\n };\n }\n\n if (VideoHelper.isClip(object)) {\n return {\n application: AppChannels.CLIPS,\n action: Actions.Clips.PLAY_CLIP,\n args: [ object.id, TextHelper.slugify(object.name) ]\n };\n }\n\n if (VideoHelper.isVideo(object)) {\n return {\n application: AppChannels.VIDEOS,\n action: Actions.Videos.PLAY_VIDEO,\n args: [ object.id, TextHelper.slugify(object.name) ]\n };\n }\n\n if (object.typeId === MasterType.Playlist) {\n return {\n application: AppChannels.PLAYLISTS,\n action: Actions.Playlists.PLAYLIST,\n args: [ object.id, TextHelper.slugify(object.name) ]\n };\n }\n\n if (object.typeId === MasterType.Series) {\n return SeriesAppLinkHelper.getSeriesAppLink(object as Series);\n }\n}\n\nfunction getShareActionOptions(sharedObject: BaseObject, entityType: SharableEntityType): ActionOptions {\n return {\n label: getPhrase('editShareSettings'),\n appLink: {\n application: AppChannels.DEFAULT,\n action: Actions.Default.SHARE,\n args: [sharedObject.id],\n params: { entityType }\n }\n };\n}\n\ninterface SeeUsageActionProps {\n label: string;\n url?: string;\n}\n\nfunction SeeUsageAction(props: SeeUsageActionProps): JSX.Element {\n return (\n <Tooltip title={props.label} spanHack>\n <a\n href={props.url}\n target='_blank'\n >\n <SvgContainer svgName={cvSvgLibrary.Chart} />\n </a>\n </Tooltip>\n );\n}\n\nfunction getSharedObjectActions(sharedObject: BaseObject, config: Config, isMobile: boolean): ActionOptions[] {\n let entityType: SharableEntityType;\n let seeUsagePhrase = 'viewUsage';\n\n if (VideoHelper.isVideo(sharedObject))\n entityType = 'video';\n\n if (VideoHelper.isInteractive(sharedObject)) {\n entityType = 'interactive';\n seeUsagePhrase = 'viewResults';\n }\n\n if (VideoHelper.isClip(sharedObject))\n entityType = 'clip';\n\n if (sharedObject.typeId === MasterType.Series)\n entityType = 'series';\n\n if (sharedObject.typeId === MasterType.Playlist)\n entityType = 'playlist';\n\n if (VideoHelper.isVideoType(sharedObject)) {\n const { canConsume } = VideoHelper.getCanBeConsumed(sharedObject);\n\n if (!canConsume)\n return [];\n }\n \n const sharedObjectActions = [getShareActionOptions(sharedObject, entityType)];\n\n const objectUrl = AnalyticsRouteHelper.getObjectUrl(config, sharedObject);\n if (objectUrl)\n sharedObjectActions.push({\n label: !isMobile\n ? () => <SeeUsageAction label={getPhrase(seeUsagePhrase)} url={objectUrl} />\n : getPhrase(seeUsagePhrase),\n className: 'btn btn-link',\n button: !isMobile,\n href: objectUrl,\n openInNewTab: true\n });\n\n return sharedObjectActions;\n}\n\nexport function useGetSharedObjectActions(breakpoints: Breakpoints): ((object: BaseObject) => ActionOptions[]) | null {\n const config = Flight.useBasicFetch<Config>(ConfigRequests.config());\n const isMobile = breakpoints.xs || breakpoints.sm;\n\n return React.useCallback((object: BaseObject) => getSharedObjectActions(object, config.data, isMobile), [isMobile]);\n}\n\n/**\n * As we are displaying data in an infinite list, we only want to show partial loading\n * on the initial fetch.\n * Whenever a new page is fetched, `sharedObjects.data` and `recipients.data` will be `undefined`,\n * as their key will change. So instead of using those values to determine whether or not to\n * show partial loading, we save the first time that they load in state and then use that.\n */\nexport function usePartialLoading(\n sentShare: UnionShareObject[],\n hasFetchedSharedObjects: boolean,\n recipientIds: string[],\n hasFetchedRecipients: boolean,\n config: Flight.Response<Config>\n): boolean {\n const [ initialSharedObjectsLoaded, setInitialSharedObjectsLoaded ] = React.useState(hasFetchedSharedObjects);\n const [ initialRecipientsLoaded, setInitialRecipientsLoaded ] = React.useState(hasFetchedRecipients);\n\n React.useEffect(() => {\n if (hasFetchedSharedObjects)\n setInitialSharedObjectsLoaded(true);\n }, [hasFetchedSharedObjects]);\n\n React.useEffect(() => {\n if (hasFetchedRecipients)\n setInitialRecipientsLoaded(true);\n }, [hasFetchedRecipients]);\n\n if (sentShare && !sentShare.length)\n return false;\n\n return !sentShare\n || !initialSharedObjectsLoaded\n || (recipientIds.length && !initialRecipientsLoaded)\n || !config.data;\n}","import React from 'react';\nimport { useDispatch } from 'react-redux';\n\nimport { LanguageService } from 'libs/common/backbone/services/LanguageService';\nimport { Flight } from 'libs/common/flight';\nimport { ArrayHelper } from 'libs/common/react/utils/ArrayHelper';\n\nimport { SharedByMeEmptyState } from 'libs/shared/apps/share/components/shared-by-me/empty-state/SharedByMeEmptyState';\nimport { SharedByMeTable } from 'libs/shared/apps/share/components/shared-by-me/table/SharedByMeTable';\nimport { ShareRequests } from 'libs/shared/apps/share/flight-requests/ShareRequests';\nimport { InfiniteScrollFooter } from 'libs/shared/components/infinite-scroll-footer/InfiniteScrollFooter';\nimport { ConfigRequests } from 'libs/shared/flight-requests/ConfigRequests';\nimport { UserRequests } from 'libs/shared/flight-requests/UserRequests';\nimport { useBatchFetch } from 'libs/shared/hooks/UseBatchFetch';\nimport { useBreakpoints } from 'libs/shared/hooks/useBreakpoints';\nimport { useInfiniteList } from 'libs/shared/hooks/UseInfiniteList';\nimport { useSetPageMetadata } from 'libs/shared/hooks/useSetPageMetadata';\nimport { Config, CurrentUser, UnionShareObject } from 'libs/shared/interfaces';\n\nimport { ImageUrls } from 'shared/constants/ImageUrls';\nimport { Actions } from 'shared/constants/LiteActions';\nimport { AppChannels } from 'shared/constants/LiteRadioChannels';\n\nimport { SharesHeader } from 'apps/share/components/shares-header/SharesHeader';\n\nimport { PartialSharedByMeTable } from './partial-loading/PartialSharedByMeTable';\nimport {\n getBatchFetchResultAsArray,\n getObjectAppLink,\n getRecipientIds,\n useGetSharedObjectActions,\n usePartialLoading\n} from './SharedByMeViewUtils';\n\nconst namespace = 'liteShare.sharedByMe';\nconst getPhrase = LanguageService.encloseNamespace(namespace);\n\nexport function SharedByMeView(): JSX.Element {\n const dispatch = useDispatch();\n const breakpoints = useBreakpoints();\n\n const currentUser = Flight.useBasicFetch<CurrentUser>(UserRequests.currentUser());\n\n const getRequest = (cursor?: string) => ShareRequests.sentShare({ cursor });\n const fetchNext = (cursor?: string) => Flight.getFetch(dispatch)(getRequest(cursor));\n\n const {\n items: sentShares,\n hasMore,\n isFetching: isFetchingSentShares,\n nextCursor\n } = useInfiniteList<UnionShareObject>(getRequest, fetchNext);\n\n const sharedObjectIds = ArrayHelper.uniq(sentShares?.map(s => s.objectId) ?? []);\n\n const sharedObjectsFetchResult = useBatchFetch(sharedObjectIds, (ids: string[]) => {\n return ShareRequests.sharedObjectsById(ids);\n });\n\n const recipientIds = getRecipientIds(sentShares);\n\n const shareRecipientsFetchResult = useBatchFetch(recipientIds, (ids: string[]) => {\n return ShareRequests.getRecipientsById(ids, currentUser.data.customerId);\n });\n\n const config = Flight.useBasicFetch<Config>(ConfigRequests.config());\n \n useSetPageMetadata({ title: getPhrase('sharedByMe') });\n\n const getSharedObjectActions = useGetSharedObjectActions(breakpoints);\n\n const showPartialLoading = usePartialLoading(\n sentShares,\n !!sharedObjectsFetchResult.items,\n recipientIds,\n !!shareRecipientsFetchResult.items,\n config\n );\n\n // Wait until all data is fetched before telling the table to re-render\n const isFetching = isFetchingSentShares\n || sharedObjectsFetchResult.isFetching\n || shareRecipientsFetchResult.isFetching;\n\n const sentSharesMemo = React.useMemo(() => sentShares, [ !!sentShares, isFetching ]);\n const sharedObjects = React.useMemo(() =>\n getBatchFetchResultAsArray(sharedObjectsFetchResult), [ !!sharedObjectsFetchResult.items, isFetching ]);\n const shareRecipients = React.useMemo(() =>\n getBatchFetchResultAsArray(shareRecipientsFetchResult), [ !!shareRecipientsFetchResult.items, isFetching ]);\n\n return (\n <div className='px-3'>\n <SharesHeader />\n\n {(() => {\n if (showPartialLoading)\n return <PartialSharedByMeTable />;\n\n if (!sentShares.length)\n return (\n <SharedByMeEmptyState\n appLink={{ application: AppChannels.DASHBOARD, action: Actions.Dashboard.HOME }}\n imageUrl={ImageUrls.EmptyStates.Share.SHARED_WITH_ME}\n />\n );\n\n return (\n <>\n <SharedByMeTable\n sentShares={sentSharesMemo}\n sharedObjects={sharedObjects}\n shareRecipients={shareRecipients}\n getObjectAppLink={getObjectAppLink}\n getObjectActions={getSharedObjectActions}\n imageCdnUrl={config.data.imageCdnUrl}\n groupByDateShared\n refreshTable={isFetching}\n breakpoints={breakpoints}\n />\n {(hasMore || isFetching) &&\n <InfiniteScrollFooter isFetching={isFetching} fetchNext={fetchNext} nextCursor={nextCursor} />\n }\n </>\n );\n })()}\n </div>\n );\n}","// extracted by mini-css-extract-plugin\nexport default {\"pillTabSelector\":\"Hdi6o\",\"tab\":\"RvNxr\",\"minWidth\":\"GHSz9\",\"radiusSmall\":\"VhJJa\",\"tabLink\":\"WFyvo\"};","var EN_US = ['second', 'minute', 'hour', 'day', 'week', 'month', 'year'];\nexport default function (diff, idx) {\n if (idx === 0)\n return ['just now', 'right now'];\n var unit = EN_US[Math.floor(idx / 2)];\n if (diff > 1)\n unit += 's';\n return [diff + \" \" + unit + \" ago\", \"in \" + diff + \" \" + unit];\n}\n//# sourceMappingURL=en_US.js.map","var ZH_CN = ['秒', '分钟', '小时', '天', '周', '个月', '年'];\nexport default function (diff, idx) {\n if (idx === 0)\n return ['刚刚', '片刻后'];\n var unit = ZH_CN[~~(idx / 2)];\n return [diff + \" \" + unit + \"\\u524D\", diff + \" \" + unit + \"\\u540E\"];\n}\n//# sourceMappingURL=zh_CN.js.map","/**\n * Created by hustcc on 18/5/20.\n * Contract: i@hust.cc\n */\n/**\n * All supported locales\n */\nvar Locales = {};\n/**\n * register a locale\n * @param locale\n * @param func\n */\nexport var register = function (locale, func) {\n Locales[locale] = func;\n};\n/**\n * get a locale, default is en_US\n * @param locale\n * @returns {*}\n */\nexport var getLocale = function (locale) {\n return Locales[locale] || Locales['en_US'];\n};\n//# sourceMappingURL=register.js.map","/**\n * Created by hustcc on 18/5/20.\n * Contract: i@hust.cc\n */\nvar SEC_ARRAY = [\n 60,\n 60,\n 24,\n 7,\n 365 / 7 / 12,\n 12,\n];\n/**\n * format Date / string / timestamp to timestamp\n * @param input\n * @returns {*}\n */\nexport function toDate(input) {\n if (input instanceof Date)\n return input;\n // @ts-ignore\n if (!isNaN(input) || /^\\d+$/.test(input))\n return new Date(parseInt(input));\n input = (input || '')\n // @ts-ignore\n .trim()\n .replace(/\\.\\d+/, '') // remove milliseconds\n .replace(/-/, '/')\n .replace(/-/, '/')\n .replace(/(\\d)T(\\d)/, '$1 $2')\n .replace(/Z/, ' UTC') // 2017-2-5T3:57:52Z -> 2017-2-5 3:57:52UTC\n .replace(/([+-]\\d\\d):?(\\d\\d)/, ' $1$2'); // -04:00 -> -0400\n return new Date(input);\n}\n/**\n * format the diff second to *** time ago, with setting locale\n * @param diff\n * @param localeFunc\n * @returns\n */\nexport function formatDiff(diff, localeFunc) {\n /**\n * if locale is not exist, use defaultLocale.\n * if defaultLocale is not exist, use build-in `en`.\n * be sure of no error when locale is not exist.\n *\n * If `time in`, then 1\n * If `time ago`, then 0\n */\n var agoIn = diff < 0 ? 1 : 0;\n /**\n * Get absolute value of number (|diff| is non-negative) value of x\n * |diff| = diff if diff is positive\n * |diff| = -diff if diff is negative\n * |0| = 0\n */\n diff = Math.abs(diff);\n /**\n * Time in seconds\n */\n var totalSec = diff;\n /**\n * Unit of time\n */\n var idx = 0;\n for (; diff >= SEC_ARRAY[idx] && idx < SEC_ARRAY.length; idx++) {\n diff /= SEC_ARRAY[idx];\n }\n /**\n * Math.floor() is alternative of ~~\n *\n * The differences and bugs:\n * Math.floor(3.7) -> 4 but ~~3.7 -> 3\n * Math.floor(1559125440000.6) -> 1559125440000 but ~~1559125440000.6 -> 52311552\n *\n * More information about the performance of algebraic:\n * https://www.youtube.com/watch?v=65-RbBwZQdU\n */\n diff = Math.floor(diff);\n idx *= 2;\n if (diff > (idx === 0 ? 9 : 1))\n idx += 1;\n return localeFunc(diff, idx, totalSec)[agoIn].replace('%s', diff.toString());\n}\n/**\n * calculate the diff second between date to be formatted an now date.\n * @param date\n * @param relativeDate\n * @returns {number}\n */\nexport function diffSec(date, relativeDate) {\n var relDate = relativeDate ? toDate(relativeDate) : new Date();\n return (+relDate - +toDate(date)) / 1000;\n}\n/**\n * nextInterval: calculate the next interval time.\n * - diff: the diff sec between now and date to be formatted.\n *\n * What's the meaning?\n * diff = 61 then return 59\n * diff = 3601 (an hour + 1 second), then return 3599\n * make the interval with high performance.\n **/\nexport function nextInterval(diff) {\n var rst = 1, i = 0, d = Math.abs(diff);\n for (; diff >= SEC_ARRAY[i] && i < SEC_ARRAY.length; i++) {\n diff /= SEC_ARRAY[i];\n rst *= SEC_ARRAY[i];\n }\n d = d % rst;\n d = d ? rst - d : rst;\n return Math.ceil(d);\n}\n//# sourceMappingURL=date.js.map","import { formatDiff, diffSec } from './utils/date';\nimport { getLocale } from './register';\n/**\n * format a TDate into string\n * @param date\n * @param locale\n * @param opts\n */\nexport var format = function (date, locale, opts) {\n // diff seconds\n var sec = diffSec(date, opts && opts.relativeDate);\n // format it with locale\n return formatDiff(sec, getLocale(locale));\n};\n//# sourceMappingURL=format.js.map","/**\n * Created by hustcc on 18/5/20.\n * Contract: i@hust.cc\n */\nimport en_US from './lang/en_US';\nimport zh_CN from './lang/zh_CN';\nimport { register } from './register';\nregister('en_US', en_US);\nregister('zh_CN', zh_CN);\nexport { format } from './format';\nexport { render, cancel } from './realtime';\nexport { register };\n//# sourceMappingURL=index.js.map"],"names":["BASE_IMAGE_CLASS_NAME","SharedObjectImage","props","ref","el","object","fixedHeight","style","width","offsetHeight","VideoHelper","typeId","MasterType","imageOptions","size","image","ImageHelper","imageType","imageClassName","imageFallbackComponent","ImageFallback","type","svgContainerClassName","url","getBgColorClass","name","extraClasses","getImageProps","useVideoThumbnail","showVideoMetadata","className","VideoThumbnail","video","textPosition","ThumbnailTextPosition","appLink","analyticsOptions","location","locationContext","hideDuration","hideMask","BaseImage","data","analyticsData","id","entity","ShareViewHelper","actionType","SHARES_TABLE_THEME","table","header","headerCell","row","cell","ShareHelper","groupByDateShared","dateToObjectMapping","Object","keys","sort","reverse","reduce","acc","date","heading","concat","mapActivityStatusToCheckMarkStatus","activityStatus","mapCheckMarkStatusToActivityStatus","checkMarkStatus","TabContents","tab","svgName","count","PillTabSelector","borderRadius","listClassName","tabs","map","index","active","key","onClick","onSelect","onSelectTab","defaultProps","useBatchFetch","itemIds","getRequest","idBatches","setIdBatches","length","newBatches","push","forEach","find","batch","_id","filter","join","dispatch","state","idBatch","request","shouldFetch","items","isFetching","responses","i","response","v","some","k","AnalyticsRouteHelper","getObjectUrl","config","baseUrl","analyticsWebUrl","relativeUrl","mapColourToBsVariant","groupColour","getPhrase","SHARED_BY_ME_APP_LINK","application","action","SHARED_WITH_ME_APP_LINK","SharesHeader","currentAppLink","LanguageService","SharedByMeEmptyState","EmptyState","src","imageUrl","useInteractiveCopy","text","getStatusPhrase","share","ShareType","status","ShareLinkStatus","getBgColourClassName","ShareStatusIndicator","recipients","isPasswordProtected","Tooltip","title","spanHack","SvgContainer","S","spanHackClassName","getHiddenRecipientText","hiddenRecipients","counts","ArrayHelper","userCount","classroomCount","groupCount","SharedToAvatar","user","item","classroom","classroomGroup","left","zIndex","maxAvatars","surname","Avatar","avatar","imageCdnUrl","initials","UserHelper","IconCircle","svgSize","variant","metadata","colour","AnonymousSharedToAvatar","SharedLinkAvatar","SharedToAvatarList","AvatarList","avatarItem","avatarContainerClassname","getHiddenTooltip","getDateShared","dateCreated","datesShared","r","dateShared","date1","date2","DateHelper","getColumns","dateHeading","getObjectAppLink","getObjectActions","showStatus","showViewCount","breakpoints","isMobile","xs","sm","columns","Header","accessor","Cell","value","minWidth","maxWidth","canNavigate","AppLink","Text","namespace","phrase","s","Actions","actions","statusColumn","viewCountColumn","splice","Boolean","SharedByMeTable","sentShares","sharedObjects","shareRecipients","groupByDate","refreshTable","tableData","sharedObject","o","objectId","recipient","viewCount","Table","theme","PartialRow","PartialHeader","fullHeader","PartialSharedByMeTable","getBatchFetchResultAsArray","result","values","args","TextHelper","SeriesAppLinkHelper","getShareActionOptions","entityType","label","params","SeeUsageAction","href","target","SharedByMeView","useBreakpoints","currentUser","UserRequests","cursor","ShareRequests","fetchNext","hasMore","isFetchingSentShares","nextCursor","sharedObjectIds","sharedObjectsFetchResult","ids","recipientIds","getDirectShares","d","getRecipientIds","shareRecipientsFetchResult","customerId","ConfigRequests","useSetPageMetadata","getSharedObjectActions","seeUsagePhrase","canConsume","sharedObjectActions","objectUrl","button","openInNewTab","useGetSharedObjectActions","showPartialLoading","sentShare","hasFetchedSharedObjects","hasFetchedRecipients","initialSharedObjectsLoaded","setInitialSharedObjectsLoaded","initialRecipientsLoaded","setInitialRecipientsLoaded","usePartialLoading","sentSharesMemo","InfiniteScrollFooter","ImageUrls","EN_US","ZH_CN","Locales","register","locale","func","SEC_ARRAY","toDate","input","Date","isNaN","test","parseInt","trim","replace","format","opts","sec","relativeDate","diff","localeFunc","agoIn","totalSec","Math","abs","idx","floor","toString","unit"],"sourceRoot":""}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
"use strict";(self.webpackChunk_clickview_lite=self.webpackChunk_clickview_lite||[]).push([[3515],{94644:(e,a,t)=>{t.d(a,{r:()=>u});var i=t(50242),n=t(81886),d=t(67058),s=t(14553),o=t(49267),r=t(49075),c={notFound:d.d,forbidden:{rating:s.q,yearLevel:s.q,region:o.a,privacy:s.q},badRequest:r._};function u(e){var a=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},t=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};if(e){var d;d="number"==typeof e?e:e.status;var s=Object.assign(Object.assign({},c),a);d&&n.Q.Ry.isStatusCodeError(d)&&(d!==i.o.NotFound?d!==i.o.Forbidden?t.badRequest||n.Q.Ry.throw(new s.badRequest):t.forbidden||n.Q.Ry.throw(new s.forbidden.privacy):t.notFound||n.Q.Ry.throw(new s.notFound))}}},91286:(e,a,t)=>{t.d(a,{v:()=>s});var i=t(32735),n=t(94644);function d(e){return e.map((function(e){return e.statusCode})).join(":")}function s(e,a,t){var s=Array.isArray(e)?e:[e];(0,i.useEffect)((function(){s.forEach((function(e){(0,n.r)(e.statusCode,a,t)}))}),[d(s),a,t])}},75085:(e,a,t)=>{t.r(a),t.d(a,{PlayViewV2:()=>H});var i=t(32735),n=t(50242),d=t(81886),s=t(23481),o=t(20354),r=t(28400),c=t(65858),u=t(78417),l=t(16714),v=t(67058),h=t(61990),p=t(33803),f=t(89454),g=t(43012),m=t(39151),y=t(1666),C=t(20768),F=t(98064),b=t(28907),P=t(31949),w=t(1575),I=t(26304),B=t(91286),R=t(22902),V=t(79612),q=t(76753),A=t(14070),L=t(97291),k=t(51855),x=t(82817),O=t(7179),E=t(49948),G=t(36873),M=t(27638),T=t(86698),_=t(35014),N=t(97816),Q=t(33192),S=t(81812),U=t(61169),j=s.T.encloseNamespace("shared.play"),D={notFound:h.l,forbidden:{privacy:p.G}};function H(e){var a,t,s,h,p,H=e.queryParams,Y=H.context,Z=H.contextId,z=H.playNext,J=H.mtv,K=(0,M.u)(c.LZ.PlayPage),W=K.setFavourite,X=K.canFavourite,$=(0,R.T)().hasPermissions,ee=(0,k.G)().isPlugin,ae=(0,T.y)().activePresentation,te=(0,_.I)(),ie=o.a.useBasicFetch(F.D.streamableLearning()),ne=o.a.useBasicFetch(P.N.currentUser()),de=o.a.useBasicFetch(w.R.video(e.id)),se=o.a.useBasicFetch(g.e.videoClips(e.id)),oe=o.a.useBasicFetch(C.b.videoInteractives(e.id)),re=o.a.useBasicFetch(m.L.config()),ce=o.a.useBasicFetch((null===(a=ne.data)||void 0===a?void 0:a.isAuthenticated)&&y.h.yearGroups(ne.data.customerId)),ue=o.a.useBasicFetch(ae&&f.O.audiencesByPresentationId(ae.id)),le=(0,S.t)(),ve=$(l.C.ViewVideoGlance)&&(null===(s=null===(t=de.data)||void 0===t?void 0:t.glance)||void 0===s?void 0:s.theme),he=o.a.useBasicFetch(ve&&b.r.themeImages(de.data.glance.theme,de.data.glance.type)),pe=o.a.useBasicFetch(de.statusCode===n.o.Forbidden&&w.R.video(e.id,u.r.StripMetadata)),fe=(0,x.M)(e.id,!0),ge=(0,G.k)({video:de.data,context:Y,contextId:Z,moviesAndTv:J,currentUser:ne.data}),me=(0,E.l)(e.id,!0),ye=o.a.useBasicFetch(w.R.regionAlternatives(e.id));return(0,V.M)(q.CG.getVideoMetadata({content:de.data,regionAlternatives:ye.data,phraseContext:{phraseHandler:j,titlePhrase:"pageTitle",descriptionPhrase:"pageDescription"},canonicalLink:Q.f.getCanonicalLink({stripPresentationSlug:!0}),allowIndexing:Q.f.allowIndexing(),hrefLang:Q.f.getContentHrefLang(ye.data,(function(e,a){return{application:L.O.VIDEOS,action:A.e.Videos.PLAY_VIDEO,args:[e,r.m.slugify(a)]}}))})),(0,B.v)(de,D,{forbidden:!0}),(0,N.V)(null!==(h=ge.videos)&&void 0!==h?h:[]),(0,O.P)({id:e.id,app:"videos"}),(0,I.b)(pe),i.useEffect((function(){var e;de.data&&ie.data&&(null===(e=de.data.libraries)||void 0===e?void 0:e.data.find((function(e){return e.id===ie.data.objectId})))&&d.Q.Ry.throw(new v.d)}),[de.hasCompleted,ie.hasCompleted]),de.data&&ne.hasCompleted&&re.hasCompleted&&me.hasCompleted?i.createElement(U.R,{video:de.data,clips:se.data,interactives:oe.data,yearGroups:ce.data,curriculums:fe,glanceTheme:he.data,glanceLoaded:!ve||he.hasCompleted,relatedVideos:ge,setFavourite:W,canFavourite:X,imageCdnUrl:re.data.imageCdnUrl,currentUser:ne.data,pointsOfInterest:me.items,playNext:z,featureAccess:te,audiences:ue.data,params:e.queryParams,canManageVideoAccess:$(l.C.ManageVideoAccess),shouldShowTableOfContents:le,tableOfContentsId:null===(p=e.queryParams)||void 0===p?void 0:p.tocId,isPlugin:ee}):i.createElement(i.Fragment,null)}H.defaultProps={queryParams:{}}}}]);
|
|
2
|
-
//# sourceMappingURL=3515-925a7caeac-lite.chunk.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"scripts/3515-925a7caeac-lite.chunk.js","mappings":"0MA0BMA,EAA8B,CAClCC,SAAU,IACVC,UAAW,CACTC,OAAQ,IACRC,UAAW,IACXC,OAAQ,IACRC,QAAS,KAEXC,WAAY,KAGR,SAAUC,EACdC,GAMkC,IALlCC,EAAA,uDAA+B,CAAC,EAKhCC,EAAA,uDAAgC,CAAC,EAEjC,GAAKF,EAAL,CAGA,IAAIG,EAGFA,EADmB,iBAAVH,EACIA,EAEAA,EAAKI,OAGpB,IAAMC,EAAW,OAAH,wBACTd,GACAU,GAGAE,GAGA,yBAAmCA,KAGpCA,IAAe,aAMfA,IAAe,cAUdD,EAAUJ,YACb,aAAuB,IAAIO,EAASP,YAN/BI,EAAUT,WACb,aAAuB,IAAIY,EAASZ,UAAUI,SAX3CK,EAAUV,UACb,aAAuB,IAAIa,EAASb,UAvBhC,CAuCV,C,6DChFA,SAASc,EAAiBC,GACxB,OAAOA,EAAWC,KAAI,SAAAC,GAAG,OAAIA,EAAIN,UAAU,IAAEO,KAAK,IACpD,CAGM,SAAUC,EACdC,EACAC,EACAC,GAEA,IAAMP,EAAaQ,MAAMC,QAAQJ,GAAeA,EAAc,CAACA,IAE/D,IAAAK,YAAU,WACRV,EAAWW,SAAQ,SAAAT,IACjB,OAAgBA,EAAIN,WAAYU,EAAcC,EAChD,GACF,GAAG,CAAER,EAAiBC,GAAaM,EAAcC,GACnD,C,4eC4BMK,EAAY,qBADA,eAGZC,EAAc,CAClB5B,SAAU,IACVC,UAAW,CACTI,QAAS,MAQP,SAAUwB,EAAWC,G,cACzB,EAA8CA,EAAMC,YAA5CC,EAAO,EAAPA,QAASC,EAAS,EAATA,UAAWC,EAAQ,EAARA,SAAUC,EAAG,EAAHA,IAEtC,GAAuC,IAAAC,GAAkB,eAAjDC,EAAY,EAAZA,aAAcC,EAAY,EAAZA,aAEdC,GAAmB,SAAnBA,eAEAC,IAAa,SAAbA,SAEAC,IAAuB,SAAvBA,mBAEFC,IAAgB,SAEhBC,GAAoB,kBAAiC,0BAErDC,GAAc,kBAAkC,mBAChDC,GAAQ,kBAA4B,UAAoBf,EAAMgB,KAC9DC,GAAQ,kBAA6B,eAAwBjB,EAAMgB,KACnEE,GAAe,kBAA4C,sBAAsClB,EAAMgB,KACvGG,GAAS,kBAA6B,cACtCC,GAAa,mBACD,QAAhB,EAAAN,GAAYO,YAAI,eAAEC,kBAAmB,eAA4BR,GAAYO,KAAKE,aAG9EC,GAAY,kBAChBb,IACA,8BAA2CA,GAAmBK,KAG1DS,IAA4B,SAE5BC,GAAmBjB,EAAe,uBACpB,QAAlB,EAAU,QAAV,EAAAM,GAAMM,YAAI,eAAEM,cAAM,eAAEC,OAEhBC,GAAc,kBAClBH,IACA,gBAA0BX,GAAMM,KAAKM,OAAOC,MAAOb,GAAMM,KAAKM,OAAOG,OAGjEC,GAAgB,kBAA4BhB,GAAMlC,aAAe,eACrE,UAAoBmB,EAAMgB,GAAI,oBAE1BgB,IAAc,OAAehC,EAAMgB,IAAI,GAEvCiB,IAAgB,OAAoB,CACxClB,MAAOA,GAAMM,KACbnB,QAAAA,EACAC,UAAAA,EACA+B,YAAa7B,EACbS,YAAaA,GAAYO,OAErBc,IAAmB,OAAyBnC,EAAMgB,IAAI,GAEtDoB,GAAqB,kBACzB,uBAAiCpC,EAAMgB,KAwCzC,OArCA,OAAmB,sBAAoC,CACrDqB,QAAStB,GAAMM,KACfe,mBAAoBA,GAAmBf,KACvCiB,cAAe,CACbC,cAAe1C,EACf2C,YAAa,YACbC,kBAAmB,mBAErBC,cAAe,qBAA2B,CAAEC,uBAAuB,IACnEC,cAAe,oBACfC,SAAU,uBAA6BT,GAAmBf,MAAM,SAACL,EAAY8B,GAAY,MAAM,CAC7FC,YAAa,WACbC,OAAQ,sBACRC,KAAM,CAAEjC,EAAI,YAAmB8B,IAChC,QAGH,OAAqB/B,GAAOjB,EAAa,CAAE3B,WAAW,KACtD,OAAkC,QAApB,EAAA8D,GAAciB,cAAM,QAAI,KACtC,OAAa,CAAElC,GAAIhB,EAAMgB,GAAImC,IAAK,YAClC,OAAsBpB,IAEtB,aAAgB,W,MACThB,GAAMM,MAASR,GAAkBQ,OAGd,QAApB,EAAAN,GAAMM,KAAK+B,iBAAS,eAAE/B,KAAKgC,MAAK,SAAAC,GAAO,OAAIA,EAAQtC,KAAOH,GAAkBQ,KAAKkC,QAAQ,MAC3F,aAAuB,IAAI,IAC/B,GAAG,CAAExC,GAAMyC,aAAc3C,GAAkB2C,eAGzCzC,GAAMM,MACNP,GAAY0C,cACZrC,GAAOqC,cACPrB,GAAiBqB,aAOjB,gBAAC,IAAU,CACTzC,MAAOA,GAAMM,KACbJ,MAAOA,GAAMI,KACbH,aAAcA,GAAaG,KAC3BD,WAAYA,GAAWC,KACvBW,YAAaA,GACbH,YAAaA,GAAYR,KACzBoC,cAAe/B,IAAoBG,GAAY2B,aAC/CvB,cAAeA,GACf1B,aAAcA,EACdC,aAAcA,EACdkD,YAAavC,GAAOE,KAAKqC,YACzB5C,YAAaA,GAAYO,KACzBc,iBAAkBA,GAAiBwB,MACnCvD,SAAUA,EACVQ,cAAeA,GACfY,UAAWA,GAAUH,KACrBuC,OAAQ5D,EAAMC,YACd4D,qBAAsBpD,EAAe,uBACrCgB,0BAA2BA,GAC3BqC,kBAAoC,QAAjB,EAAA9D,EAAMC,mBAAW,eAAE8D,MACtCrD,SAAUA,KAxBL,gCA2BX,CA9HAX,EAAWiE,aAAe,CACxB/D,YAAa,CAAC,E","sources":["file:///app/packages/libs/shared/src/errors/handlers/HttpErrorHandlers.ts","file:///app/packages/libs/shared/src/hooks/UseHandleObjectError.ts","file:///app/packages/projects/lite/src/shared/views/play/v2/PlayViewV2.tsx"],"sourcesContent":["import { BaseError } from 'libs/common/backbone/core/BaseError';\nimport { HttpStatus } from 'libs/common/backbone/enums/HttpStatus';\nimport { Xhr } from 'libs/common/backbone/interfaces';\nimport { Core } from 'libs/common/core';\n\nimport { NotFoundError } from 'libs/shared/errors/general/not-found/NotFoundError';\nimport { PrivateResourceError } from 'libs/shared/errors/general/private-resource/PrivateResourceError';\nimport { RegionLockedResourceError } from 'libs/shared/errors/general/region-locked-resource/RegionLockedResourceError';\nimport { UnspecifiedError } from 'libs/shared/errors/general/unspecified-error/UnspecifiedError';\nimport { VideoTypes } from 'libs/shared/interfaces';\n\nexport interface HttpErrorMap {\n notFound?: new () => BaseError;\n forbidden?: {\n rating?: new (description: string) => BaseError;\n yearLevel?: new (description: string) => BaseError;\n region?: new () => BaseError;\n privacy?: new (video?: VideoTypes) => BaseError;\n };\n badRequest?: new () => BaseError;\n}\n\nexport type IgnoreHttpErrorMap = {\n [key in keyof HttpErrorMap]: boolean;\n};\n\nconst defaultErrors: HttpErrorMap = {\n notFound: NotFoundError,\n forbidden: {\n rating: PrivateResourceError,\n yearLevel: PrivateResourceError,\n region: RegionLockedResourceError,\n privacy: PrivateResourceError\n },\n badRequest: UnspecifiedError\n};\n\nexport function handleHttpError(\n info: HttpStatus | Xhr,\n customErrorMap: HttpErrorMap = {},\n /**\n * Prevent certain errors in the errorMap from being thrown\n * so that you may implement your own handler\n */\n ignoreMap: IgnoreHttpErrorMap = {}\n): void {\n if (!info)\n return;\n\n let statusCode: HttpStatus;\n\n if (typeof(info) === 'number') {\n statusCode = info;\n } else {\n statusCode = info.status;\n }\n\n const errorMap = {\n ...defaultErrors,\n ...customErrorMap\n };\n\n if (!statusCode)\n return;\n\n if (!Core.ErrorHelper.isStatusCodeError(statusCode))\n return;\n\n if (statusCode === HttpStatus.NotFound) {\n if (!ignoreMap.notFound)\n Core.ErrorHelper.throw(new errorMap.notFound());\n return;\n }\n\n if (statusCode === HttpStatus.Forbidden) {\n /**\n * TODO: Work out how to go about handling all forbidden errors, such as region locking, year levels,\n * ratings, and privacy.\n */\n if (!ignoreMap.forbidden)\n Core.ErrorHelper.throw(new errorMap.forbidden.privacy());\n return;\n }\n\n if (!ignoreMap.badRequest)\n Core.ErrorHelper.throw(new errorMap.badRequest());\n}\n\nexport function handleXhrError(xhr: Xhr, customErrorMap?: HttpErrorMap): void {\n handleHttpError(xhr.status, customErrorMap);\n}","import { useEffect } from 'react';\n\nimport { Flight } from 'libs/common/flight';\n\nimport { handleHttpError, HttpErrorMap, IgnoreHttpErrorMap } from 'libs/shared/errors/handlers/HttpErrorHandlers';\n\nfunction generateCacheKey(flightObjs: Array<Flight.Response<any>>): string {\n return flightObjs.map(obj => obj.statusCode).join(':');\n}\n\n// TODO: Change this to just `useHandleHttpError` and only accept a status code.\nexport function useHandleObjectError(\n _flightObjs: Flight.Response<any> | Array<Flight.Response<any>>,\n customErrors?: HttpErrorMap,\n ignoreErrors?: IgnoreHttpErrorMap\n): void {\n const flightObjs = Array.isArray(_flightObjs) ? _flightObjs : [_flightObjs];\n\n useEffect(() => {\n flightObjs.forEach(obj => {\n handleHttpError(obj.statusCode, customErrors, ignoreErrors);\n });\n }, [ generateCacheKey(flightObjs), customErrors, ignoreErrors ]);\n}","import * as React from 'react';\n\nimport { HttpStatus } from 'libs/common/backbone/enums/HttpStatus';\nimport { Core } from 'libs/common/backbone/index';\nimport { LanguageService } from 'libs/common/backbone/services/LanguageService';\nimport { Flight } from 'libs/common/flight';\nimport { HashObject } from 'libs/common/react/interfaces';\nimport { TextHelper } from 'libs/common/react/utils/TextHelper';\n\nimport { LocationContext } from 'libs/analytics/interfaces';\n\nimport { PermissionFilterOption } from 'libs/shared/enums/PermissionFilterOption';\nimport { PermissionName } from 'libs/shared/enums/PermissionName';\nimport { NotFoundError } from 'libs/shared/errors/general/not-found/NotFoundError';\nimport { VideoNotFoundError } from 'libs/shared/errors/videos/video-not-found/VideoNotFoundError';\nimport { VideoPrivateError } from 'libs/shared/errors/videos/video-private/VideoPrivateError';\nimport { AudienceRequests } from 'libs/shared/flight-requests/AudienceRequests';\nimport { ClipRequests } from 'libs/shared/flight-requests/ClipRequests';\nimport { ConfigRequests } from 'libs/shared/flight-requests/ConfigRequests';\nimport { CustomerRequests } from 'libs/shared/flight-requests/CustomerRequests';\nimport { InteractiveRequests } from 'libs/shared/flight-requests/InteractiveRequests';\nimport { LibraryRequests } from 'libs/shared/flight-requests/LibraryRequests';\nimport { ThemeRequests } from 'libs/shared/flight-requests/ThemeRequests';\nimport { UserRequests } from 'libs/shared/flight-requests/UserRequests';\nimport { VideoRequests } from 'libs/shared/flight-requests/VideoRequests';\nimport { useCannotConsumeError } from 'libs/shared/hooks/useCannotConsumeError';\nimport { useHandleObjectError } from 'libs/shared/hooks/UseHandleObjectError';\nimport { usePermissions } from 'libs/shared/hooks/usePermissions';\nimport { useSetPageMetadata } from 'libs/shared/hooks/useSetPageMetadata';\nimport { Clip, Config, CurrentUser, InteractiveMetadata, PresentationAudience, RegionAlternative, Theme, Video, YearGroup } from 'libs/shared/interfaces';\nimport { PageMetadataHelper } from 'libs/shared/utils/PageMetadataHelper';\n\nimport { Actions } from 'shared/constants/LiteActions';\nimport { AppChannels } from 'shared/constants/LiteRadioChannels';\nimport { usePluginHelper } from 'shared/hooks/use-plugin-helper/usePluginHelper';\nimport { useCurriculums } from 'shared/hooks/useCurriculums';\nimport { useDeepLinks } from 'shared/hooks/useDeepLinks';\nimport { useFetchPointsOfInterest } from 'shared/hooks/useFetchPointsOfInterest';\nimport { useGetRelatedVideos } from 'shared/hooks/useGetRelatedVideos';\nimport { useLiteFavourites } from 'shared/hooks/useLiteFavourites';\nimport { usePresentation } from 'shared/hooks/usePresentation';\nimport { useVideoFeatureAccess } from 'shared/hooks/useVideoFeatureAccess';\nimport { useVideoMixin } from 'shared/hooks/useVideoMixin';\nimport { SeoHelper } from 'shared/utils/SeoHelper';\nimport { useShouldShowTableOfContents } from 'shared/views/play/v2/hooks/useShouldShowTableOfContents';\n\nimport { PlayViewProps } from '../PlayViewContainer';\n\nimport { PlayPageV2 } from './components/play-page/PlayPageV2';\n\nconst namespace = 'shared.play';\nconst getPhrase = LanguageService.encloseNamespace(namespace);\n\nconst videoErrors = {\n notFound: VideoNotFoundError,\n forbidden: {\n privacy: VideoPrivateError\n }\n};\n\nPlayViewV2.defaultProps = {\n queryParams: {}\n};\n\nexport function PlayViewV2(props: PlayViewProps): React.ReactElement {\n const { context, contextId, playNext, mtv } = props.queryParams;\n\n const { setFavourite, canFavourite } = useLiteFavourites(LocationContext.PlayPage);\n\n const { hasPermissions } = usePermissions();\n\n const { isPlugin } = usePluginHelper();\n\n const { activePresentation } = usePresentation();\n\n const featureAccess = useVideoFeatureAccess();\n\n const streamableLibrary = Flight.useBasicFetch<HashObject>(LibraryRequests.streamableLearning());\n\n const currentUser = Flight.useBasicFetch<CurrentUser>(UserRequests.currentUser());\n const video = Flight.useBasicFetch<Video>(VideoRequests.video(props.id));\n const clips = Flight.useBasicFetch<Clip[]>(ClipRequests.videoClips(props.id));\n const interactives = Flight.useBasicFetch<InteractiveMetadata[]>(InteractiveRequests.videoInteractives(props.id));\n const config = Flight.useBasicFetch<Config>(ConfigRequests.config());\n const yearGroups = Flight.useBasicFetch<YearGroup[]>(\n currentUser.data?.isAuthenticated && CustomerRequests.yearGroups(currentUser.data.customerId)\n );\n \n const audiences = Flight.useBasicFetch<PresentationAudience[]>(\n activePresentation &&\n AudienceRequests.audiencesByPresentationId(activePresentation.id)\n );\n \n const shouldShowTableOfContents = useShouldShowTableOfContents();\n\n const shouldFetchTheme = hasPermissions(PermissionName.ViewVideoGlance) &&\n video.data?.glance?.theme;\n \n const glanceTheme = Flight.useBasicFetch<Theme>(\n shouldFetchTheme &&\n ThemeRequests.themeImages(video.data.glance.theme, video.data.glance.type)\n );\n\n const strippedVideo = Flight.useBasicFetch<Video>(video.statusCode === HttpStatus.Forbidden &&\n VideoRequests.video(props.id, PermissionFilterOption.StripMetadata));\n\n const curriculums = useCurriculums(props.id, true);\n\n const relatedVideos = useGetRelatedVideos({\n video: video.data,\n context,\n contextId,\n moviesAndTv: mtv,\n currentUser: currentUser.data\n });\n const pointsOfInterest = useFetchPointsOfInterest(props.id, true);\n\n const regionAlternatives = Flight.useBasicFetch<RegionAlternative[]>(\n VideoRequests.regionAlternatives(props.id)\n );\n\n useSetPageMetadata(PageMetadataHelper.getVideoMetadata({\n content: video.data,\n regionAlternatives: regionAlternatives.data,\n phraseContext: {\n phraseHandler: getPhrase,\n titlePhrase: 'pageTitle',\n descriptionPhrase: 'pageDescription'\n },\n canonicalLink: SeoHelper.getCanonicalLink({ stripPresentationSlug: true }),\n allowIndexing: SeoHelper.allowIndexing(),\n hrefLang: SeoHelper.getContentHrefLang(regionAlternatives.data, (id: string, name: string) => ({\n application: AppChannels.VIDEOS,\n action: Actions.Videos.PLAY_VIDEO,\n args: [ id, TextHelper.slugify(name) ]\n }))\n }));\n\n useHandleObjectError(video, videoErrors, { forbidden: true });\n useVideoMixin(relatedVideos.videos ?? []);\n useDeepLinks({ id: props.id, app: 'videos' });\n useCannotConsumeError(strippedVideo);\n\n React.useEffect(() => {\n if (!video.data || !streamableLibrary.data)\n return;\n\n if (video.data.libraries?.data.find(library => library.id === streamableLibrary.data.objectId))\n Core.ErrorHelper.throw(new NotFoundError());\n }, [ video.hasCompleted, streamableLibrary.hasCompleted ]);\n\n const dataLoaded = (\n video.data &&\n currentUser.hasCompleted &&\n config.hasCompleted &&\n pointsOfInterest.hasCompleted\n );\n\n if (!dataLoaded)\n return <></>;\n\n return (\n <PlayPageV2\n video={video.data}\n clips={clips.data}\n interactives={interactives.data}\n yearGroups={yearGroups.data}\n curriculums={curriculums}\n glanceTheme={glanceTheme.data}\n glanceLoaded={!shouldFetchTheme || glanceTheme.hasCompleted}\n relatedVideos={relatedVideos}\n setFavourite={setFavourite}\n canFavourite={canFavourite}\n imageCdnUrl={config.data.imageCdnUrl}\n currentUser={currentUser.data}\n pointsOfInterest={pointsOfInterest.items}\n playNext={playNext}\n featureAccess={featureAccess}\n audiences={audiences.data}\n params={props.queryParams}\n canManageVideoAccess={hasPermissions(PermissionName.ManageVideoAccess)}\n shouldShowTableOfContents={shouldShowTableOfContents}\n tableOfContentsId={props.queryParams?.tocId}\n isPlugin={isPlugin}\n />\n );\n}"],"names":["defaultErrors","notFound","forbidden","rating","yearLevel","region","privacy","badRequest","handleHttpError","info","customErrorMap","ignoreMap","statusCode","status","errorMap","generateCacheKey","flightObjs","map","obj","join","useHandleObjectError","_flightObjs","customErrors","ignoreErrors","Array","isArray","useEffect","forEach","getPhrase","videoErrors","PlayViewV2","props","queryParams","context","contextId","playNext","mtv","u","setFavourite","canFavourite","hasPermissions","isPlugin","activePresentation","featureAccess","streamableLibrary","currentUser","video","id","clips","interactives","config","yearGroups","data","isAuthenticated","customerId","audiences","shouldShowTableOfContents","shouldFetchTheme","glance","theme","glanceTheme","type","strippedVideo","curriculums","relatedVideos","moviesAndTv","pointsOfInterest","regionAlternatives","content","phraseContext","phraseHandler","titlePhrase","descriptionPhrase","canonicalLink","stripPresentationSlug","allowIndexing","hrefLang","name","application","action","args","videos","app","libraries","find","library","objectId","hasCompleted","glanceLoaded","imageCdnUrl","items","params","canManageVideoAccess","tableOfContentsId","tocId","defaultProps"],"sourceRoot":""}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
"use strict";(self.webpackChunk_clickview_lite=self.webpackChunk_clickview_lite||[]).push([[355,8960],{36199:(t,e,n)=>{var r;n.d(e,{V:()=>r}),function(t){t[t.Original=0]="Original",t[t.Copy=1]="Copy"}(r||(r={}))},94644:(t,e,n)=>{n.d(e,{r:()=>s});var r=n(50242),o=n(81886),i=n(67058),a=n(14553),c=n(49267),u=n(49075),l={notFound:i.d,forbidden:{rating:a.q,yearLevel:a.q,region:c.a,privacy:a.q},badRequest:u._};function s(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};if(t){var i;i="number"==typeof t?t:t.status;var a=Object.assign(Object.assign({},l),e);i&&o.Q.Ry.isStatusCodeError(i)&&(i!==r.o.NotFound?i!==r.o.Forbidden?n.badRequest||o.Q.Ry.throw(new a.badRequest):n.forbidden||o.Q.Ry.throw(new a.forbidden.privacy):n.notFound||o.Q.Ry.throw(new a.notFound))}}},91286:(t,e,n)=>{n.d(e,{v:()=>a});var r=n(32735),o=n(94644);function i(t){return t.map((function(t){return t.statusCode})).join(":")}function a(t,e,n){var a=Array.isArray(t)?t:[t];(0,r.useEffect)((function(){a.forEach((function(t){(0,o.r)(t.statusCode,e,n)}))}),[i(a),e,n])}},63649:(t,e,n)=>{n.d(e,{X:()=>i});var r=n(32735);const o={video:"ekpg6",notice:"lQs4F",heading:"Gt6uV",interaction:"LEfYX",button:"caHP7",edit:"de4DP",questions:"XelbS"};function i(t){var e=t.isEdit;return r.createElement("div",{className:"px-3 w-100 ".concat(e?o.edit:"")},e?r.createElement("div",{className:"d-flex justify-content-between align-items-center mb-3"},r.createElement("div",{className:"partial-loading-background ".concat(o.heading)}),r.createElement("div",null,r.createElement("div",{className:"partial-loading-background d-inline-block ".concat(o.button)}),r.createElement("div",{className:"partial-loading-background d-inline-block ms-2 ".concat(o.button)}))):r.createElement("div",{className:"partial-loading-background ".concat(o.notice)}),r.createElement("div",{className:"partial-loading-background mb-3 ".concat(o.video)},r.createElement("div",{className:"partial-loading-background ".concat(o.questions)})),r.createElement("div",{className:"partial-loading-background mb-3 ".concat(o.heading)}),r.createElement("div",null,Array(5).fill(null).map((function(t,e){return r.createElement("div",{key:e,className:"partial-loading-background my-2 ".concat(o.interaction)})}))))}},9064:(t,e,n)=>{function r(t){var e,n,r,o,i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if(!t)return null;var a=Object.assign(Object.assign({},i),{id:t.id,interactiveId:t.interactiveId,name:t.name,status:t.status,originType:t.originType});return(null===(e=null==t?void 0:t._parentClip)||void 0===e?void 0:e.id)&&(a.clip={id:null===(n=null==t?void 0:t._parentClip)||void 0===n?void 0:n.id}),(null===(r=null==t?void 0:t._parentVideo)||void 0===r?void 0:r.id)&&(a.video={id:null===(o=null==t?void 0:t._parentVideo)||void 0===o?void 0:o.id}),a}n.d(e,{T:()=>r})},9897:(t,e,n)=>{n.r(e),n.d(e,{EditInteractiveView:()=>tt});var r=n(32735),o=n(17082),i=n(81886),a=n(20354),c=n(49985),u=n(65858),l=n(5960),s=n(60051),f=n(61990),d=n(33803),y=n(39151),p=n(20768),b=n(47812),v=n(31949),m=n(91286),g=n(72596),h=n(38314),w=n(57052),E=n(14070),O=n(97291),j=n(23481),k=n(64364);function P(t){return P="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},P(t)}function S(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,T(r.key),r)}}function T(t){var e=function(t,e){if("object"!=P(t)||!t)return t;var n=t[Symbol.toPrimitive];if(void 0!==n){var r=n.call(t,"string");if("object"!=P(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==P(e)?e:e+""}function I(t,e,n){return e=A(e),function(t,e){if(e&&("object"==P(e)||"function"==typeof e))return e;if(void 0!==e)throw new TypeError("Derived constructors may only return object or undefined");return function(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}(t)}(t,_()?Reflect.construct(e,n||[],A(t).constructor):e.apply(t,n))}function _(){try{var t=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(t){}return(_=function(){return!!t})()}function A(t){return A=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(t){return t.__proto__||Object.getPrototypeOf(t)},A(t)}function C(t,e){return C=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(t,e){return t.__proto__=e,t},C(t,e)}var R="shared.cannotEditPublishedInteractive",N=function(t){function e(){return function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,e),I(this,e,[j.T.getPhrase(R,"title")])}return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),Object.defineProperty(t,"prototype",{writable:!1}),e&&C(t,e)}(e,t),n=e,(r=[{key:"name",get:function(){return"CannotEditPublishedInteractiveError"}},{key:"heading",get:function(){return j.T.getPhrase(R,"heading")}},{key:"description",get:function(){return j.T.getPhrase(R,"description")}}])&&S(n.prototype,r),Object.defineProperty(n,"prototype",{writable:!1}),n;var n,r}(k.H),F=n(63649),V=n(9064),x=n(70680),L=n(36199);function Q(t){return Q="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Q(t)}function U(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,q(r.key),r)}}function q(t){var e=function(t,e){if("object"!=Q(t)||!t)return t;var n=t[Symbol.toPrimitive];if(void 0!==n){var r=n.call(t,"string");if("object"!=Q(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==Q(e)?e:e+""}function B(t,e,n){return e=M(e),function(t,e){if(e&&("object"==Q(e)||"function"==typeof e))return e;if(void 0!==e)throw new TypeError("Derived constructors may only return object or undefined");return function(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}(t)}(t,D()?Reflect.construct(e,n||[],M(t).constructor):e.apply(t,n))}function D(){try{var t=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(t){}return(D=function(){return!!t})()}function M(t){return M=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(t){return t.__proto__||Object.getPrototypeOf(t)},M(t)}function X(t,e){return X=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(t,e){return t.__proto__=e,t},X(t,e)}var $="shared.cannotEditInteractive",H=function(t){function e(){return function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,e),B(this,e,[j.T.getPhrase($,"title")])}return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),Object.defineProperty(t,"prototype",{writable:!1}),e&&X(t,e)}(e,t),n=e,(r=[{key:"name",get:function(){return"CannnotEditInteractiveError"}},{key:"heading",get:function(){return j.T.getPhrase($,"heading")}},{key:"description",get:function(){return j.T.getPhrase($,"description")}}])&&U(n.prototype,r),Object.defineProperty(n,"prototype",{writable:!1}),n;var n,r}(k.H);function K(t,e){return function(t){if(Array.isArray(t))return t}(t)||function(t,e){var n=null==t?null:"undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(null!=n){var r,o,i,a,c=[],u=!0,l=!1;try{if(i=(n=n.call(t)).next,0===e){if(Object(n)!==n)return;u=!1}else for(;!(u=(r=i.call(n)).done)&&(c.push(r.value),c.length!==e);u=!0);}catch(t){l=!0,o=t}finally{try{if(!u&&null!=n.return&&(a=n.return(),Object(a)!==a))return}finally{if(l)throw o}}return c}}(t,e)||function(t,e){if(t){if("string"==typeof t)return G(t,e);var n={}.toString.call(t).slice(8,-1);return"Object"===n&&t.constructor&&(n=t.constructor.name),"Map"===n||"Set"===n?Array.from(t):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?G(t,e):void 0}}(t,e)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function G(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,r=Array(e);n<e;n++)r[n]=t[n];return r}var Z=function(t){var e=(0,x.I0)(),n=K(r.useState(!1),2),o=n[0],c=n[1],u=K(r.useState(!1),2),l=u[0],s=u[1];return r.useEffect((function(){if(t&&!l&&!o)if(t.originType!==L.V.Original){var n=function(){i.Q.Ry.throw(new H)};c(!0),a.a.fetch(e,p.b.copyInteractive(t.interactiveId,(function(r){var o={originType:L.V.Original,interactiveId:r.id};a.a.fetch(e,p.b.updateInteractiveMetadata(t.id,o,(function(){return s(!0)}),n))}),n))}else s(!0)}),[t]),l};function Y(t,e){return function(t){if(Array.isArray(t))return t}(t)||function(t,e){var n=null==t?null:"undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(null!=n){var r,o,i,a,c=[],u=!0,l=!1;try{if(i=(n=n.call(t)).next,0===e){if(Object(n)!==n)return;u=!1}else for(;!(u=(r=i.call(n)).done)&&(c.push(r.value),c.length!==e);u=!0);}catch(t){l=!0,o=t}finally{try{if(!u&&null!=n.return&&(a=n.return(),Object(a)!==a))return}finally{if(l)throw o}}return c}}(t,e)||function(t,e){if(t){if("string"==typeof t)return z(t,e);var n={}.toString.call(t).slice(8,-1);return"Object"===n&&t.constructor&&(n=t.constructor.name),"Map"===n||"Set"===n?Array.from(t):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?z(t,e):void 0}}(t,e)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function z(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,r=Array(e);n<e;n++)r[n]=t[n];return r}var J={application:O.O.INTERACTIVES,action:E.e.Interactives.EDIT_INTERACTIVE_DETAILS},W={notFound:f.l,forbidden:{privacy:d.G}};function tt(t){var e=Y(r.useState(!1),2),n=e[0],f=e[1],d=Y(r.useState(!1),2),E=d[0],O=d[1],j=r.useRef(),k=a.a.useBasicFetch(y.L.config()),P=a.a.useBasicFetch(v.N.currentUser()),S=a.a.useBasicFetch(!!P.data&&p.b.interactiveMetadata(t.id)),T=Z(S.data),I=a.a.useBasicFetch(T?b.k.createViewKey(S.data.id,s.f.MasterObject):null),_=a.a.useBasicFetch(v.N.token()),A=r.useMemo((function(){return(0,o.oD)()}),[]),C=r.useMemo((function(){return(0,o.oD)()}),[]),R=r.useRef();if((0,m.v)(S,W),!(I.data&&k.data&&S.data&&_.data))return r.createElement(F.X,{isEdit:!0});if(!E&&(O(!0),S.data.status!==l.X.Draft))return i.Q.Ry.throw(new N),null;var x=(0,V.T)(S.data),L={entity:u.py.Interactive,location:u.LZ.EditInteractive,workflowPhase:u.eu.Start};return r.createElement(r.Fragment,null,!n&&r.createElement(F.X,{isEdit:!0}),r.createElement("div",{className:"px-3 ".concat(n?"":"d-none")},r.createElement("div",{className:"d-flex justify-content-between align-items-center mb-3"},r.createElement("h1",{className:"h3 text-truncate mb-0 pb-1"},S.data.name),r.createElement("div",{className:"flex-shrink-0"},r.createElement(o.t0,{node:A}))),r.createElement(w.ClickViewInteractivePlayer,{viewKey:I.data.viewKey,imageApi:new URL(k.data.imageCdnUrl),playerApi:new URL(k.data.playerApiUrl),hotkeyElQuerySelector:"body",autoplay:!0,onReady:function(t){j.current=t,f(!0),R.current=new g.M({player:t,video:S.data,analyticsLocation:u.LZ.EditInteractive})},currentUser:P.data,mode:h.A.Create,actionsPortalNode:A,questionListPortalNode:C,authToken:_.data.value,onClickEditDetails:function(){c.k.logUserAction(x,Object.assign({actionType:u.Vw.Edit},L)),i.Q.C$.trigger(Object.assign(Object.assign({},J),{args:[t.id]}))},onClickPublish:function(){c.k.logUserAction(x,Object.assign({actionType:u.Vw.Publish},L)),i.Q.C$.trigger(Object.assign(Object.assign({},J),{args:[t.id],params:{publish:!0}}))},enableImmersiveReader:!0}),r.createElement(o.t0,{node:C})))}}}]);
|
|
2
|
-
//# sourceMappingURL=355-3bb5ae2ea4-lite.chunk.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"scripts/355-3bb5ae2ea4-lite.chunk.js","mappings":"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","sources":["file:///app/packages/libs/shared/src/enums/InteractiveOriginType.ts","file:///app/packages/libs/shared/src/errors/handlers/HttpErrorHandlers.ts","file:///app/packages/libs/shared/src/hooks/UseHandleObjectError.ts","file:///app/packages/projects/lite/src/apps/interactives/components/interactive-partial-loading/interactive-partial-loading.scss","file:///app/packages/projects/lite/src/apps/interactives/components/interactive-partial-loading/InteractivePartialLoading.tsx","file:///app/packages/projects/lite/src/apps/interactives/utils/getInteractiveAnalyticsData.ts","file:///app/packages/projects/lite/src/shared/errors/interactives/cannot-edit-published-interactive/CannotEditPublishInteractiveError.ts","file:///app/packages/projects/lite/src/shared/errors/interactives/cannot-edit/CannotEditError.ts","file:///app/packages/projects/lite/src/apps/interactives/views/edit-interactive/useEnsureOriginal.ts","file:///app/packages/projects/lite/src/apps/interactives/views/edit-interactive/EditInteractiveView.tsx"],"sourcesContent":["export enum InteractiveOriginType {\n Original = 0,\n Copy = 1\n}\n","import { BaseError } from 'libs/common/backbone/core/BaseError';\nimport { HttpStatus } from 'libs/common/backbone/enums/HttpStatus';\nimport { Xhr } from 'libs/common/backbone/interfaces';\nimport { Core } from 'libs/common/core';\n\nimport { NotFoundError } from 'libs/shared/errors/general/not-found/NotFoundError';\nimport { PrivateResourceError } from 'libs/shared/errors/general/private-resource/PrivateResourceError';\nimport { RegionLockedResourceError } from 'libs/shared/errors/general/region-locked-resource/RegionLockedResourceError';\nimport { UnspecifiedError } from 'libs/shared/errors/general/unspecified-error/UnspecifiedError';\nimport { VideoTypes } from 'libs/shared/interfaces';\n\nexport interface HttpErrorMap {\n notFound?: new () => BaseError;\n forbidden?: {\n rating?: new (description: string) => BaseError;\n yearLevel?: new (description: string) => BaseError;\n region?: new () => BaseError;\n privacy?: new (video?: VideoTypes) => BaseError;\n };\n badRequest?: new () => BaseError;\n}\n\nexport type IgnoreHttpErrorMap = {\n [key in keyof HttpErrorMap]: boolean;\n};\n\nconst defaultErrors: HttpErrorMap = {\n notFound: NotFoundError,\n forbidden: {\n rating: PrivateResourceError,\n yearLevel: PrivateResourceError,\n region: RegionLockedResourceError,\n privacy: PrivateResourceError\n },\n badRequest: UnspecifiedError\n};\n\nexport function handleHttpError(\n info: HttpStatus | Xhr,\n customErrorMap: HttpErrorMap = {},\n /**\n * Prevent certain errors in the errorMap from being thrown\n * so that you may implement your own handler\n */\n ignoreMap: IgnoreHttpErrorMap = {}\n): void {\n if (!info)\n return;\n\n let statusCode: HttpStatus;\n\n if (typeof(info) === 'number') {\n statusCode = info;\n } else {\n statusCode = info.status;\n }\n\n const errorMap = {\n ...defaultErrors,\n ...customErrorMap\n };\n\n if (!statusCode)\n return;\n\n if (!Core.ErrorHelper.isStatusCodeError(statusCode))\n return;\n\n if (statusCode === HttpStatus.NotFound) {\n if (!ignoreMap.notFound)\n Core.ErrorHelper.throw(new errorMap.notFound());\n return;\n }\n\n if (statusCode === HttpStatus.Forbidden) {\n /**\n * TODO: Work out how to go about handling all forbidden errors, such as region locking, year levels,\n * ratings, and privacy.\n */\n if (!ignoreMap.forbidden)\n Core.ErrorHelper.throw(new errorMap.forbidden.privacy());\n return;\n }\n\n if (!ignoreMap.badRequest)\n Core.ErrorHelper.throw(new errorMap.badRequest());\n}\n\nexport function handleXhrError(xhr: Xhr, customErrorMap?: HttpErrorMap): void {\n handleHttpError(xhr.status, customErrorMap);\n}","import { useEffect } from 'react';\n\nimport { Flight } from 'libs/common/flight';\n\nimport { handleHttpError, HttpErrorMap, IgnoreHttpErrorMap } from 'libs/shared/errors/handlers/HttpErrorHandlers';\n\nfunction generateCacheKey(flightObjs: Array<Flight.Response<any>>): string {\n return flightObjs.map(obj => obj.statusCode).join(':');\n}\n\n// TODO: Change this to just `useHandleHttpError` and only accept a status code.\nexport function useHandleObjectError(\n _flightObjs: Flight.Response<any> | Array<Flight.Response<any>>,\n customErrors?: HttpErrorMap,\n ignoreErrors?: IgnoreHttpErrorMap\n): void {\n const flightObjs = Array.isArray(_flightObjs) ? _flightObjs : [_flightObjs];\n\n useEffect(() => {\n flightObjs.forEach(obj => {\n handleHttpError(obj.statusCode, customErrors, ignoreErrors);\n });\n }, [ generateCacheKey(flightObjs), customErrors, ignoreErrors ]);\n}","// extracted by mini-css-extract-plugin\nexport default {\"video\":\"ekpg6\",\"notice\":\"lQs4F\",\"heading\":\"Gt6uV\",\"interaction\":\"LEfYX\",\"button\":\"caHP7\",\"edit\":\"de4DP\",\"questions\":\"XelbS\"};","import React from 'react';\n\nimport styles from './interactive-partial-loading.scss';\n\ninterface InteractivePartialLoadingProps {\n isEdit: boolean;\n}\n\nexport function InteractivePartialLoading(props: InteractivePartialLoadingProps): React.ReactElement {\n const { isEdit } = props;\n\n return (\n <div className={`px-3 w-100 ${isEdit ? styles.edit : ''}`}>\n {isEdit ?\n <div className='d-flex justify-content-between align-items-center mb-3'>\n <div className={`partial-loading-background ${styles.heading}`}></div>\n <div>\n <div className={`partial-loading-background d-inline-block ${styles.button}`}></div>\n <div className={`partial-loading-background d-inline-block ms-2 ${styles.button}`}></div>\n </div>\n </div> :\n <div className={`partial-loading-background ${styles.notice}`} />\n }\n <div className={`partial-loading-background mb-3 ${styles.video}`}>\n <div className={`partial-loading-background ${styles.questions}`}></div>\n </div>\n <div className={`partial-loading-background mb-3 ${styles.heading}`}></div>\n <div>\n {Array(5).fill(null).map((_, i) => (\n <div key={i} className={`partial-loading-background my-2 ${styles.interaction}`}></div>\n ))}\n </div>\n </div>\n );\n}","import { HashObject } from 'libs/common/react/interfaces';\n\nimport { AnalyticsDataPayload } from 'libs/analytics/models/AnalyticsEvent';\n\nimport { InteractiveMetadata } from 'libs/shared/interfaces';\n\nexport function getInteractiveAnalyticsData(\n interactiveMetadata: InteractiveMetadata,\n extraAnalyticsData: HashObject = {}\n): AnalyticsDataPayload {\n if (!interactiveMetadata)\n return null;\n\n const data: AnalyticsDataPayload = {\n ...extraAnalyticsData,\n id: interactiveMetadata.id,\n interactiveId: interactiveMetadata.interactiveId,\n name: interactiveMetadata.name,\n status: interactiveMetadata.status,\n originType: interactiveMetadata.originType\n };\n\n if (interactiveMetadata?._parentClip?.id)\n data.clip = { id: interactiveMetadata?._parentClip?.id };\n \n if (interactiveMetadata?._parentVideo?.id)\n data.video = { id: interactiveMetadata?._parentVideo?.id };\n \n return data;\n}","import { LanguageService } from 'libs/common/backbone/services/LanguageService';\n\nimport { ErrorPageError } from 'libs/shared/errors/primitives/ErrorPageError';\n\nconst namespace = 'shared.cannotEditPublishedInteractive';\n\nexport class CannotEditPublishInteractiveError extends ErrorPageError {\n constructor() {\n super(LanguageService.getPhrase(namespace, 'title'));\n }\n\n // @ts-ignore\n public get name(): string {\n return 'CannotEditPublishedInteractiveError';\n }\n\n // @ts-ignore\n public get heading(): string {\n return LanguageService.getPhrase(namespace, 'heading');\n }\n\n // @ts-ignore\n public get description(): string {\n return LanguageService.getPhrase(namespace, 'description');\n }\n}","import { LanguageService } from 'libs/common/backbone/services/LanguageService';\n\nimport { ErrorPageError } from 'libs/shared/errors/primitives/ErrorPageError';\n\nconst namespace = 'shared.cannotEditInteractive';\n\nexport class CannotEditInteractiveError extends ErrorPageError {\n constructor() {\n super(LanguageService.getPhrase(namespace, 'title'));\n }\n\n // @ts-ignore\n public get name(): string {\n return 'CannnotEditInteractiveError';\n }\n\n // @ts-ignore\n public get heading(): string {\n return LanguageService.getPhrase(namespace, 'heading');\n }\n\n // @ts-ignore\n public get description(): string {\n return LanguageService.getPhrase(namespace, 'description');\n }\n}","import React from 'react';\nimport { useDispatch } from 'react-redux';\n\nimport { Core } from 'libs/common/core';\nimport { Flight } from 'libs/common/flight';\n\nimport { InteractiveOriginType } from 'libs/shared/enums/InteractiveOriginType';\nimport { InteractiveRequests } from 'libs/shared/flight-requests/InteractiveRequests';\nimport { EditInteractiveMetadataOriginRequest, Interactive, InteractiveMetadata } from 'libs/shared/interfaces';\n\nimport { CannotEditInteractiveError } from 'shared/errors/interactives/cannot-edit/CannotEditError';\n\nexport const useEnsureOriginal = (\n interactiveMetadata: InteractiveMetadata\n) => {\n const dispatch = useDispatch();\n\n /* Used to ensure only one request */\n const [ requested, setRequest ] = React.useState(false);\n const [ ready, setReady ] = React.useState(false);\n\n React.useEffect(() => {\n if (!interactiveMetadata || ready || requested)\n return;\n\n if (interactiveMetadata.originType === InteractiveOriginType.Original) {\n setReady(true);\n return;\n }\n\n const error = () => {\n Core.ErrorHelper.throw(new CannotEditInteractiveError());\n };\n\n const success = (resp: Interactive) => {\n const data: EditInteractiveMetadataOriginRequest = {\n originType: InteractiveOriginType.Original,\n interactiveId: resp.id\n };\n\n Flight.fetch(\n dispatch,\n InteractiveRequests.updateInteractiveMetadata(\n interactiveMetadata.id,\n data,\n () => setReady(true),\n error\n )\n );\n };\n\n setRequest(true);\n Flight.fetch(dispatch, InteractiveRequests.copyInteractive(\n interactiveMetadata.interactiveId,\n success,\n error\n ));\n }, [interactiveMetadata]);\n\n return ready;\n};","import React from 'react';\nimport { createHtmlPortalNode, OutPortal } from 'react-reverse-portal';\n\nimport { Core } from 'libs/common/core';\nimport { Flight } from 'libs/common/flight';\nimport { HashObject } from 'libs/common/react/interfaces';\n\nimport { AnalyticsHelper } from 'libs/analytics/AnalyticsHelper';\nimport { EntityType, LocationContext, UserAction, WorkflowPhase } from 'libs/analytics/interfaces';\n\nimport { CurationStatus } from 'libs/shared/enums/CurationStatus';\nimport { MediaIdType } from 'libs/shared/enums/MediaIdType';\nimport { VideoNotFoundError } from 'libs/shared/errors/videos/video-not-found/VideoNotFoundError';\nimport { VideoPrivateError } from 'libs/shared/errors/videos/video-private/VideoPrivateError';\nimport { ConfigRequests } from 'libs/shared/flight-requests/ConfigRequests';\nimport { InteractiveRequests } from 'libs/shared/flight-requests/InteractiveRequests';\nimport { PlayerRequests } from 'libs/shared/flight-requests/PlayerRequests';\nimport { UserRequests } from 'libs/shared/flight-requests/UserRequests';\nimport { useHandleObjectError } from 'libs/shared/hooks/UseHandleObjectError';\nimport { Config, CurrentUser, InteractiveMetadata, PlayerViewKey } from 'libs/shared/interfaces';\nimport { PlayerAnalyticsTracker } from 'libs/shared/utils/PlayerAnalyticsTracker';\n\nimport { InteractivePlayer } from 'projects/player/players/interactive-player';\nimport { InteractiveMode } from 'projects/player/plugins/interactive-plugin/interfaces';\nimport { ClickViewInteractivePlayer } from 'projects/player/react/InteractivePlayer';\n\nimport { Actions } from 'shared/constants/LiteActions';\nimport { AppChannels } from 'shared/constants/LiteRadioChannels';\nimport { CannotEditPublishInteractiveError } from 'shared/errors/interactives/cannot-edit-published-interactive/CannotEditPublishInteractiveError';\n\nimport { InteractivePartialLoading } from 'apps/interactives/components/interactive-partial-loading/InteractivePartialLoading';\nimport { getInteractiveAnalyticsData } from 'apps/interactives/utils/getInteractiveAnalyticsData';\n\nimport { useEnsureOriginal } from './useEnsureOriginal';\n\nconst EDIT_APPLINK = {\n application: AppChannels.INTERACTIVES,\n action: Actions.Interactives.EDIT_INTERACTIVE_DETAILS\n};\n\nconst videoErrors = {\n notFound: VideoNotFoundError,\n forbidden: {\n privacy: VideoPrivateError\n }\n};\n\ninterface EditInteractiveProps {\n id: string;\n}\n\nexport function EditInteractiveView(props: EditInteractiveProps): React.ReactElement {\n const [ ready, setReady ] = React.useState(false);\n\n const [ hasCheckedStatus, setHasCheckedStatus ] = React.useState(false);\n const playerRef = React.useRef<InteractivePlayer>();\n\n const config = Flight.useBasicFetch<Config>(ConfigRequests.config());\n const currentUser = Flight.useBasicFetch<CurrentUser>(UserRequests.currentUser());\n\n const interactiveMetadata = Flight.useBasicFetch<InteractiveMetadata>(!!currentUser.data &&\n InteractiveRequests.interactiveMetadata(props.id));\n\n /**\n * This will check if the interactive is a copy or not\n * and update it to original if it is a copy.\n */\n const isOriginal = useEnsureOriginal(interactiveMetadata.data);\n\n /**\n * We don't fetch our view key until we know our interactive has been upgraded\n * to an original\n */\n const viewKey = Flight.useBasicFetch<PlayerViewKey>(isOriginal ?\n PlayerRequests.createViewKey(interactiveMetadata.data.id, MediaIdType.MasterObject) : null);\n\n const token = Flight.useBasicFetch<HashObject>(UserRequests.token());\n\n const actionsPortalNode = React.useMemo(() => createHtmlPortalNode(), []);\n const questionListPortalNode = React.useMemo(() => createHtmlPortalNode(), []);\n\n const analyticsTracker = React.useRef<PlayerAnalyticsTracker>();\n\n useHandleObjectError(interactiveMetadata, videoErrors);\n\n function onReady(player: InteractivePlayer): void {\n playerRef.current = player;\n\n setReady(true);\n\n analyticsTracker.current = new PlayerAnalyticsTracker({\n player,\n video: interactiveMetadata.data,\n analyticsLocation: LocationContext.EditInteractive\n });\n }\n\n if (!viewKey.data || !config.data || !interactiveMetadata.data || !token.data)\n return <InteractivePartialLoading isEdit={true} />;\n\n /**\n * We do this because when the publish popup publishes\n * the flight state updates and this briefly re-renders\n * with data.status being published\n */\n if (!hasCheckedStatus) {\n setHasCheckedStatus(true);\n if (interactiveMetadata.data.status !== CurationStatus.Draft) {\n Core.ErrorHelper.throw(new CannotEditPublishInteractiveError());\n return null;\n }\n }\n\n const analyticsData = getInteractiveAnalyticsData(interactiveMetadata.data);\n\n const baseAnalyticsOptions = {\n entity: EntityType.Interactive,\n location: LocationContext.EditInteractive,\n workflowPhase: WorkflowPhase.Start\n };\n\n function onClickEditDetails(): void {\n AnalyticsHelper.logUserAction(analyticsData, {\n actionType: UserAction.Edit,\n ...baseAnalyticsOptions\n });\n\n Core.AppLinkHelper.trigger({\n ...EDIT_APPLINK,\n args: [props.id]\n });\n }\n\n function onClickPublish(): void {\n AnalyticsHelper.logUserAction(analyticsData, {\n actionType: UserAction.Publish,\n ...baseAnalyticsOptions\n });\n\n Core.AppLinkHelper.trigger({\n ...EDIT_APPLINK,\n args: [props.id],\n params: { publish: true }\n });\n }\n\n return (\n <>\n {!ready && <InteractivePartialLoading isEdit={true} />}\n <div className={`px-3 ${ready ? '' : 'd-none'}`}>\n <div className='d-flex justify-content-between align-items-center mb-3'>\n <h1 className='h3 text-truncate mb-0 pb-1'>{interactiveMetadata.data.name}</h1>\n <div className='flex-shrink-0'>\n <OutPortal node={actionsPortalNode} />\n </div>\n </div>\n <ClickViewInteractivePlayer\n viewKey={viewKey.data.viewKey}\n imageApi={new URL(config.data.imageCdnUrl)}\n playerApi={new URL(config.data.playerApiUrl)}\n hotkeyElQuerySelector='body'\n autoplay\n onReady={onReady}\n currentUser={currentUser.data}\n mode={InteractiveMode.Create}\n actionsPortalNode={actionsPortalNode}\n questionListPortalNode={questionListPortalNode}\n authToken={token.data.value}\n onClickEditDetails={onClickEditDetails}\n onClickPublish={onClickPublish}\n enableImmersiveReader\n />\n <OutPortal node={questionListPortalNode} />\n </div>\n </>\n );\n}\n"],"names":["InteractiveOriginType","defaultErrors","notFound","forbidden","rating","yearLevel","region","privacy","badRequest","handleHttpError","info","customErrorMap","ignoreMap","statusCode","status","errorMap","generateCacheKey","flightObjs","map","obj","join","useHandleObjectError","_flightObjs","customErrors","ignoreErrors","Array","isArray","useEffect","forEach","InteractivePartialLoading","props","isEdit","className","fill","_","i","key","getInteractiveAnalyticsData","interactiveMetadata","extraAnalyticsData","data","id","interactiveId","name","originType","_parentClip","clip","_parentVideo","video","namespace","CannotEditPublishInteractiveError","LanguageService","ErrorPageError","CannotEditInteractiveError","useEnsureOriginal","dispatch","requested","setRequest","ready","setReady","error","InteractiveRequests","resp","EDIT_APPLINK","application","action","videoErrors","VideoNotFoundError","VideoPrivateError","EditInteractiveView","hasCheckedStatus","setHasCheckedStatus","playerRef","config","ConfigRequests","currentUser","UserRequests","isOriginal","viewKey","PlayerRequests","MediaIdType","token","actionsPortalNode","questionListPortalNode","analyticsTracker","CurationStatus","analyticsData","baseAnalyticsOptions","entity","location","workflowPhase","node","ClickViewInteractivePlayer","imageApi","URL","imageCdnUrl","playerApi","playerApiUrl","hotkeyElQuerySelector","autoplay","onReady","player","current","PlayerAnalyticsTracker","analyticsLocation","mode","authToken","value","onClickEditDetails","AnalyticsHelper","actionType","args","onClickPublish","params","publish","enableImmersiveReader"],"sourceRoot":""}
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
/*! For license information please see 3645-720267b321-lite.chunk.js.LICENSE.txt */
|
|
2
|
-
(self.webpackChunk_clickview_lite=self.webpackChunk_clickview_lite||[]).push([[3645],{42328:(e,t,n)=>{"use strict";n.d(t,{w:()=>i});var r=n(32735);function a(){return r.createElement("svg",{viewBox:"0 0 24 24"},r.createElement("path",{d:"M11.959 10.641l4.402-4.296a.964.964 0 0 1 1.358 0 .951.951 0 0 1 0 1.35l-4.403 4.297 4.403 4.378a.951.951 0 0 1 0 1.35.964.964 0 0 1-1.358 0l-4.402-4.378-4.32 4.378a.964.964 0 0 1-1.358 0 .951.951 0 0 1 0-1.35l4.32-4.378-4.32-4.362a.951.951 0 0 1 0-1.35.964.964 0 0 1 1.358 0l4.32 4.361z"}))}var i=r.forwardRef((function(e,t){var n=e.onClickClear,i=e.showClearButton,o=function(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var a=0;for(r=Object.getOwnPropertySymbols(e);a<r.length;a++)t.indexOf(r[a])<0&&Object.prototype.propertyIsEnumerable.call(e,r[a])&&(n[r[a]]=e[r[a]])}return n}(e,["onClickClear","showClearButton"]);return r.createElement("div",{className:"position-relative"},r.createElement("input",Object.assign({},o,{ref:t,className:"".concat(e.className," ").concat("aYpO7")})),(!!e.value||i)&&r.createElement("span",{className:"".concat("ygMgF"," position-absolute cursor-pointer text-secondary"),role:"button",onClick:n},r.createElement("div",{className:"d-inline-block svg-container md"},r.createElement(a,null))))}))},86509:(e,t,n)=>{"use strict";n.d(t,{m:()=>y});var r=n(32735),a=n(91967),i=n(81886),o=n(45157),c=n(49985),l=n(36848),s=n(83914),u=n(76177),m=n(35223);const d={dropdownToggle:"UCAnJ"};function p(){return r.createElement(r.Fragment,null,r.createElement("div",{style:{padding:"0.53125rem 1rem"}},r.createElement("div",{className:"partial-loading-background",style:{height:"1.0625rem",width:"8rem"}})),r.createElement("div",{style:{padding:"0.53125rem 1rem"}},r.createElement("div",{className:"partial-loading-background",style:{height:"1.0625rem",width:"12rem"}})),r.createElement("div",{style:{padding:"0.53125rem 1rem"}},r.createElement("div",{className:"partial-loading-background",style:{height:"1.0625rem",width:"11rem"}})),r.createElement("div",{style:{padding:"0.53125rem 1rem"}},r.createElement("div",{className:"partial-loading-background",style:{height:"1.0625rem",width:"9rem"}})))}function f(e){var t="dropdown-item";return e&&(t+=" ".concat(e)),t}function v(e){var t=a.q.isFunction(e.action.label)?e.action.label:function(){return r.createElement(r.Fragment,null,e.action.label)};if(e.action.appLink)return r.createElement(l.F,{appLink:e.action.appLink,onClick:e.action.onClick,className:f(e.action.className),analyticsData:e.action.analyticsData,analyticsOptions:e.action.analyticsOptions,openInNewTab:e.action.openInNewTab,disabled:e.action.disabled},e.action.svgName&&r.createElement(s.x,{svgName:e.action.svgName,className:"d-inline-block svg-container me-2 align-middle"}),r.createElement("span",{className:"align-middle"},t()));function n(t){t.preventDefault(),e.action.analyticsData&&e.action.analyticsOptions&&c.k.logUserAction(e.action.analyticsData,e.action.analyticsOptions),a.q.isFunction(e.action.onClick)&&e.action.onClick(),e.action.href&&i.Q.Ab.PageLoad(e.action.href,e.action.openInNewTab)}return e.action.href?r.createElement("a",{className:f(e.action.className),onClick:n,href:e.action.href},e.action.svgName&&r.createElement(s.x,{svgName:e.action.svgName,className:"d-inline-block svg-container me-2 align-middle"}),r.createElement("span",{className:"align-middle"},t())):r.createElement("span",{className:"cursor-pointer ".concat(f(e.action.className)),onClick:n,role:"button",tabIndex:0,onKeyDown:function(e){return"Enter"===e.key&&n(e)}},e.action.svgName&&r.createElement(s.x,{svgName:e.action.svgName,className:"d-inline-block svg-container me-2"}),t())}function y(e){if(!e.actions||!e.actions.length)return r.createElement(r.Fragment,null);var t=e.actions.some((function(e){return e.lazyPlaceholder})),n="dropdown";e.className&&(n+=" ".concat(e.className));var a,i="actions-dropdown-".concat(o.Y.getRandomInt()),c="dropdown-toggle px-0 ".concat(d.dropdownToggle);return e.dropdownToggleClassName&&(c+=" ".concat(e.dropdownToggleClassName)),r.createElement("div",{className:n},r.createElement("button",{className:c,type:"button",id:i,"data-bs-toggle":"dropdown","data-toggle":"dropdown","aria-haspopup":"true","aria-expanded":"false",onClick:t?e.fetchMore:null},r.createElement(s.x,{svgName:m.vn.More,size:e.dropdownToggleSvgSize})),r.createElement("div",{className:"dropdown-menu dropdown-menu-end dropdown-menu-right","aria-labelledby":i},t?r.createElement(p,null):e.actions.map((function(e,t){var n=void 0!==a&&a!==e.group;return a=e.group,e.tooltip?r.createElement(r.Fragment,{key:t},n&&r.createElement("hr",{className:"dropdown-divider",role:"separator"}),r.createElement(u.u,{title:e.tooltip,spanHack:!0},r.createElement(v,{action:e}))):r.createElement(r.Fragment,{key:t},n&&r.createElement("hr",{className:"dropdown-divider",role:"separator"}),r.createElement(v,{action:e}))}))))}y.defaultProps={dropdownToggleClassName:"btn btn-light",dropdownToggleSvgSize:s.S.Small}},66903:(e,t,n)=>{"use strict";n.d(t,{k:()=>u});var r=n(32735),a=n(80130),i=n(59087),o=n(23481);const c={normal:"Q1UGv",copyBtn:"J3fBx"};function l(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n<t;n++)r[n]=e[n];return r}var s=o.T.encloseNamespace("shared.copyInput");function u(e){var t,n,o=(t=r.useState(!1),n=2,function(e){if(Array.isArray(e))return e}(t)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var r,a,i,o,c=[],l=!0,s=!1;try{if(i=(n=n.call(e)).next,0===t){if(Object(n)!==n)return;l=!1}else for(;!(l=(r=i.call(n)).done)&&(c.push(r.value),c.length!==t);l=!0);}catch(e){s=!0,a=e}finally{try{if(!l&&null!=n.return&&(o=n.return(),Object(o)!==o))return}finally{if(s)throw a}}return c}}(t,n)||function(e,t){if(e){if("string"==typeof e)return l(e,t);var n={}.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?l(e,t):void 0}}(t,n)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),u=o[0],m=o[1],d=r.createElement("div",{className:"input-group"},r.createElement("input",{type:"text",autoComplete:"off",className:"form-control ".concat("normal"===e.styling?c.normal:""),spellCheck:!1,value:e.value,readOnly:!0}),r.createElement(i.CopyToClipboard,{text:e.value},r.createElement("button",{className:"btn btn-outline-dark border border-secondary py-0 text-nowrap",onClick:function(t){t.preventDefault(),e.onCopy&&e.onCopy(),u||(m(!0),setTimeout((function(){return m(!1)}),2e3))}},u?e.copiedText||s("copied"):e.copyText||s("copy"))));return e.label?r.createElement(a.Z.Group,{className:"form-group"},r.createElement(a.Z.Label,null,e.label),d):d}u.defaultProps={styling:"normal"}},38502:(e,t,n)=>{"use strict";n.d(t,{r:()=>m});var r=n(32735),a=n(49985),i=n(36848),o=n(18559),c=n(11607),l=n(83914),s=n(87432);function u(e){return r.createElement(r.Fragment,null,!!e.tab.svgName&&r.createElement("div",{className:e.tab.name?"pe-1":""},r.createElement(l.x,{svgName:e.tab.svgName})),e.tab.name,"number"==typeof e.tab.count&&r.createElement("div",{className:"ps-2"},r.createElement(o.C,{type:o.g.Count,data:e.tab.count})))}function m(e){var t;return r.createElement("nav",{className:null!==(t=e.className)&&void 0!==t?t:""},r.createElement("ul",{className:"\n list-unstyled d-inline-block m-0 ".concat(s.Z.pillTabSelector,"\n ").concat(e.borderRadius?s.Z.radiusSmall:"","\n ").concat(e.listClassName,"\n ")},e.tabs.map((function(e,t){return r.createElement("li",{className:"\n p-0 ".concat(s.Z.tab," ").concat(e.active?"btn btn-dark":"btn btn-outline-dark","\n ").concat(e.name?s.Z.minWidth:""," ").concat(e.className,"\n "),key:t},e.appLink?r.createElement(i.F,{appLink:e.appLink,analyticsData:e.analyticsData,analyticsOptions:e.analyticsOptions,className:"\n cursor-pointer d-flex align-items-center justify-content-center\n text-decoration-none text-reset px-2 text-nowrap ".concat(s.Z.tabLink,"\n ")},r.createElement(u,{tab:e})):r.createElement(c.L,{className:"\n cursor-pointer d-flex align-items-center justify-content-center\n text-decoration-none text-reset p-2 text-nowrap ".concat(s.Z.tabLink,"\n "),onClick:function(){return function(e){!e.active&&e.onSelect&&(e.onSelect(),e.analyticsData&&e.analyticsOptions&&a.k.logUserAction(e.analyticsData,e.analyticsOptions))}(e)}},r.createElement(u,{tab:e})))}))))}m.defaultProps={borderRadius:"lg"}},53645:(e,t,n)=>{"use strict";n.r(t),n.d(t,{InviteColleagueView:()=>Ce});var r=n(32735),a=n(23481),i=n(20354),o=n(49985),c=n(65858),l=n(9111),s=n(13876),u=n(39151),m=n(31949),d=n(69883),p=n(59934),f=n(99940),v={invite:function(e){return{url:"{gateway}/v1/users/invites",key:"invites:colleague",normalize:!1,type:f.k.POST,data:e,invalidationKeys:["invites"]}},inviteByType:function(){return{key:"invites",url:"{gateway}/v1/users/invites?type=link&type=direct",normalize:!1}},deleteInvite:function(e){return{key:"invites:delete",url:"{gateway}/v1/users/invites/".concat(e),type:f.k.DELETE,normalize:!1,invalidationKeys:["invites"]}},resendInvite:function(e){return{key:"invites:".concat(e,":resend"),url:"{gateway}/v1/users/invites/email?id=".concat(e),type:f.k.POST,normalize:!1}},createInviteLink:function(){return{key:"invites:create",url:"{gateway}/v1/users/invites/links",type:f.k.POST,normalize:!1,invalidationKeys:["invites"]}}};function y(e){return function(e){if(Array.isArray(e))return g(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e,t){if(e){if("string"==typeof e)return g(e,t);var n={}.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?g(e,t):void 0}}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function g(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n<t;n++)r[n]=e[n];return r}var h={"email-in-use":"emailInUse","invalid-email":"invalidEmail"},b=a.T.encloseNamespace("signUp.helpers"),E={recalculateFields:function(e,t,n,r){var a=this.cleanFields(t);if(!a.length)return this.removeField(e,t,n);var i=a[a.length-1],o=!(e!==a.length-1||!a[e].data.firstName.length&&!a[e].data.email.length),c=!!(a.length<r&&(i.data.firstName.length||i.data.email.length));return o||c?this.addField(a,r):void 0},getValidFieldsData:function(e){return e.reduce((function(e,t){return t.data.email.length?[].concat(y(e),[t.data]):e}),[])},getInputWithErrors:function(e,t){var n,r=y(e),a=null===(n=t.responseJSON)||void 0===n?void 0:n.problems;return r.forEach((function(e,t){var n=a.find((function(t){return t.email===e.data.email}));n&&(r[t]=Object.assign(Object.assign({},e),{error:{email:b(h[n.errorCode])}}))})),r},cleanFields:function(e){return e.filter((function(e){return e.data.firstName.length||e.data.email.length}))},removeField:function(e,t,n){return t.length!==n&&t[e]?t.filter((function(t,n){return n!==e})):t},addField:function(e,t){return e.length>=t?e:[].concat(y(e),[this.getNewEmptyField()])},getNewEmptyField:function(){return{data:{firstName:"",email:""}}}};function w(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n<t;n++)r[n]=e[n];return r}var N=a.T.encloseNamespace("signUp.helpers"),x=new RegExp(/^[^\s@]+@[^\s@]+\.[^\s@]+$/),k=/^[\w0-9'\-,.():;&][^_!¡?÷¿/\\+=@#$%ˆ*{}|~<>[\]]{0,}$/,C={validate:function(e){var t,n=this,r=function(e){if(Array.isArray(e))return w(e)}(t=e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(t)||function(e,t){if(e){if("string"==typeof e)return w(e,t);var n={}.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?w(e,t):void 0}}(t)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}(),a=!1;return r.forEach((function(e,t){if(t!==r.length-1||0===t||e.data.email.length||e.data.firstName.length){var i={firstName:n.validateFirstName(e.data.firstName),email:n.validateEmail(e.data.email)};(i.firstName||i.email)&&(e.error=i,a||(a=!0))}})),{fieldsWithErrors:r,hasErrors:a}},validateEmail:function(e){return e.length?x.test(e)?void 0:N("validSchoolEmail"):N("enterValidEmail")},validateFirstName:function(e){if(e.length)return k.test(e)?void 0:N("invalidFirstname")}},S=n(23232),O=n(2102),I=n(83345),T=n(99742),j=n(42328);function L(e){return L="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},L(e)}var A=a.T.encloseNamespace("signUp.invite.inviteFormInputGroup");function F(e){var t=e.input,n=t.data,a=t.error;function i(t,r){var a,i,o,c=Object.assign(Object.assign({},n),(a={},o=r,(i=function(e){var t=function(e,t){if("object"!=L(e)||!e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,"string");if("object"!=L(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==L(t)?t:t+""}(i=t))in a?Object.defineProperty(a,i,{value:o,enumerable:!0,configurable:!0,writable:!0}):a[i]=o,a));e.onChange(t,c)}return r.createElement("div",{className:"row mb-2"},r.createElement("div",{className:"col-4"},r.createElement("input",{type:"text",name:"firstName".concat(e.index),className:"form-control form-control-lg",placeholder:A("firstName"),value:n.firstName,onChange:function(e){e.preventDefault(),i("firstName",e.target.value)},autoComplete:"off"}),a&&(null==a?void 0:a.firstName)&&r.createElement("p",{className:"mb-0 text-danger"},a.firstName)),r.createElement("div",{className:"col-8 ps-0"},r.createElement(j.w,{type:"text",name:"electronicMail".concat(e.index),className:"form-control form-control-lg",placeholder:A("emailAddress",{count:e.index+1}),value:n.email,onChange:function(e){e.preventDefault(),i("email",e.target.value)},onClickClear:e.clearInputs,autoComplete:"off",showClearButton:!(!n.firstName&&!n.email)}),a&&(null==a?void 0:a.email)&&r.createElement("p",{className:"mb-0 text-danger",dangerouslySetInnerHTML:{__html:a.email}})))}function P(e){return function(e){if(Array.isArray(e))return D(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e,t){if(e){if("string"==typeof e)return D(e,t);var n={}.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?D(e,t):void 0}}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function D(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n<t;n++)r[n]=e[n];return r}var U="signUp.invite.inviteFormInputGroup";function _(e){var t=e.fields,n=e.setFields,a=e.minFields,i=e.maxFields,o=r.useMemo((function(){return t.filter((function(e){return!!e.data.email})).length}),[t]);return r.createElement("div",{className:"px-3"},r.createElement(S.u.Image,{src:T.W.SignUp.INVITE_COLLEAGUE,className:"d-block mx-auto w-50"}),r.createElement("h2",{className:"h5 text-center"},r.createElement(I.x,{namespace:U,phrase:"inviteHeading"})),r.createElement("p",{className:"text-center"},r.createElement(I.x,{namespace:U,phrase:"inviteSubheading"})),r.createElement("div",{className:"row fw-bold mb-2"},r.createElement("div",{className:"col-4"},r.createElement(I.x,{namespace:U,phrase:"firstName"})),r.createElement("div",{className:"col-8 ps-0"},r.createElement(I.x,{namespace:U,phrase:"workEmailAddress"}),r.createElement("span",{className:"text-danger"},"*"))),t.map((function(e,o){return r.createElement(F,{input:e,key:o,index:o,onChange:function(e,r){return function(e,r,o){e>t.length||n((function(t){var n,c,l=P(t);return l[e].data=o,(null===(n=l[e])||void 0===n?void 0:n.error)&&(null===(c=l[e])||void 0===c?void 0:c.error[r])&&delete l[e].error[r],E.recalculateFields(e,l,a,i)||l}))}(o,e,r)},clearInputs:function(){return function(e){e>t.length||n((function(t){var n=P(t);return n[e].data.firstName="",n[e].data.email="",E.recalculateFields(e,n,a,i)||n}))}(o)}})})),r.createElement("div",{className:"pt-2 pb-3"},r.createElement(O.m,{showSpinner:e.showSpinner,variant:"dark",className:"btn-lg w-100",onClick:e.onSubmit},r.createElement(I.x,{namespace:U,phrase:"btnInvite",options:{smartCount:o||1}}))))}var M="signUp.invite.inviteFormSuccess";function R(e){var t;if(null===(t=e.fields)||void 0===t?void 0:t.length)return r.createElement("div",{className:"text-center px-3"},r.createElement(S.u.Image,{src:T.W.SignUp.INVITE_COLLEAGUE_SUCCESS,className:"d-block mx-auto w-50"}),r.createElement("h2",{className:"h4"},r.createElement(I.x,{namespace:M,phrase:"inviteSent"})),r.createElement("p",{className:"mb-0"},r.createElement(I.x,{namespace:M,phrase:"emailSentTo"})),r.createElement("div",{className:"mb-3"},e.fields.map((function(e,t){var n=e.data,a=n.firstName,i=n.email;if(i)return r.createElement("p",{className:"mb-0",key:t},!!a.length&&r.createElement("strong",null,a)," (",i,")")}))),r.createElement("p",null,r.createElement(I.x,{namespace:M,phrase:"moreInvite"})," ",r.createElement("a",{onClick:e.onInviteMore,className:"info-link p-0"},r.createElement(I.x,{namespace:M,phrase:"inviteMore"}))))}function G(e){var t=e.fields,n=e.setFields,a=e.showSpinner,i=e.onSubmit;return t.length?e.completed?r.createElement(R,{fields:t,onInviteMore:function(t){t.preventDefault(),e.onInviteMore()}}):r.createElement(_,{fields:t,setFields:n,showSpinner:a,onSubmit:i,maxFields:e.maxFields,minFields:e.minFields}):r.createElement(r.Fragment,null)}var z=n(38502),B=a.T.encloseNamespace("signUp.invite.inviteTabs");function Z(e){var t=[{name:B("invite"),onSelect:function(){return e.onChangeTab("inviteForm")},active:"inviteForm"===e.activeTab,analyticsData:{name:B("invite")},analyticsOptions:{actionType:c.Vw.Click,entity:c.py.Url,location:c.LZ.MagicTabs}},{name:B("pending"),onSelect:function(){return e.onChangeTab("pendingInvites")},active:"pendingInvites"===e.activeTab,analyticsData:{name:B("pending")},analyticsOptions:{actionType:c.Vw.Click,entity:c.py.Url,location:c.LZ.MagicTabs}}];return r.createElement(z.r,{className:"d-flex justify-content-center mb-3",tabs:t})}var V=n(42648),W="signUp.invite.pendingInvites";function H(e){return r.createElement("div",{className:"text-center py-5 px-3"},r.createElement(S.u.Image,{src:T.W.SignUp.EMPTY_PENDING_INVITES,className:"d-block mx-auto w-50"}),r.createElement("h2",{className:"h5 mb-0"},r.createElement(I.x,{namespace:W,phrase:"emptyTitle"})),r.createElement("p",null,r.createElement(I.x,{namespace:W,phrase:"emptyDescription"})," ",r.createElement("a",{onClick:function(t){t.preventDefault(),e.onInviteMore()},className:"info-link"},r.createElement(I.x,{namespace:W,phrase:"emptyAction"}))))}const $={avatar:"cin_G",oneLine:"FrlTw",twoLine:"rBQWR",minPendingHeight:"LMnOk"};function J(){return r.createElement("div",{className:"d-flex mb-2 justify-content-between"},r.createElement("div",{className:"col-8 d-flex align-items-center"},r.createElement("div",{className:"partial-loading-background rounded-circle ".concat($.avatar)}),r.createElement("div",{className:"ms-2 w-100"},r.createElement("div",{className:"partial-loading-background mb-1 w-50 ".concat($.oneLine)}),r.createElement("div",{className:"partial-loading-background w-100 ".concat($.oneLine)}))),r.createElement("div",{className:"col d-flex align-items-center justify-content-end"},r.createElement("div",{className:"partial-loading-background w-100 ".concat($.twoLine)})))}function Y(){return r.createElement("div",{className:"px-3"},r.createElement("div",{className:"partial-loading-background w-25 m-2 ".concat($.oneLine)}),Array(6).fill(null).map((function(e,t){return r.createElement(J,{key:t})})))}var K,q=n(86509),Q=n(20789),X=n(83914),ee=n(35223);!function(e){e.Active="Active",e.Accepted="Accepted",e.Expired="Expired"}(K||(K={}));var te=a.T.encloseNamespace("signUp.helpers"),ne={getItemActions:function(e){var t=e.status,n=e.resendInvite,r=e.removeInvite;return t===K.Accepted?[]:[{label:te("resendInvite"),onClick:n},{label:te("removeInvite"),onClick:r,className:"text-danger"}]}},re=a.T.encloseNamespace("signUp.invite.inviteStatusInfo");function ae(e){return e.status===K.Accepted?r.createElement(ie,{extraContainerClass:"text-success",renderSvg:function(){return r.createElement(X.x,{size:X.S.Small,svgName:ee.vn.Check})},text:re("accepted")}):e.status===K.Active?r.createElement(ie,{renderSvg:function(){return r.createElement(X.x,{size:X.S.Small,svgName:ee.vn.PendingCircle,className:"d-inline-block svg-container text-info"})},extraTextClass:"text-secondary",text:re("active")}):e.status===K.Expired?r.createElement(ie,{extraContainerClass:"text-danger",renderSvg:function(){return r.createElement(X.x,{size:X.S.Small,svgName:ee.vn.Close,className:"d-inline-block svg-container"})},text:re("expired")}):r.createElement(r.Fragment,null)}function ie(e){function t(e,t){return t?"".concat(e," ").concat(t):e}var n=t("d-flex align-items-center",e.extraContainerClass),a=t("ps-1",e.extraTextClass);return r.createElement("div",{className:n},e.renderSvg&&e.renderSvg(),r.createElement("small",{className:a},e.text))}const oe={avatar:"VsdKR",email:"L65Cs"};function ce(e){return e.initial?r.createElement(Q.q,{imageCdnUrl:e.imageCdnUrl,initials:e.initial}):r.createElement("div",{className:"d-flex align-items-center justify-content-center rounded-circle bg-dark text-white w-100 h-100"},r.createElement(X.x,{svgName:ee.vn.Email,size:X.S.Large}))}function le(e){var t,n,a=e.invite,i=a.invitee,o=a.status,c=null!==(t=null==i?void 0:i.email)&&void 0!==t?t:e.invite.metadata.email,l=ne.getItemActions({status:o,resendInvite:function(){return e.resendInvite(e.invite.id)},removeInvite:function(){return e.removeInvite(e.invite.id)}}),s=null===(n=e.invite.metadata)||void 0===n?void 0:n.firstName,u=null==s?void 0:s.substr(0,1);return r.createElement("div",{className:"d-flex mb-2 justify-content-between px-3"},r.createElement("div",{className:"d-flex align-items-center ps-0"},r.createElement("div",{className:oe.avatar},r.createElement(ce,{initial:u,userId:null==i?void 0:i.userId,imageCdnUrl:e.imageCdnUrl})),r.createElement("div",{className:"ms-2"},!!s&&r.createElement("h3",{className:"h6 mb-0"},s),r.createElement("p",{className:"mb-0 text-secondary w-100 text-truncate ".concat(oe.email),title:c},c))),r.createElement("div",{className:"d-flex align-items-center justify-content-between pe-0"},r.createElement(ae,{status:o}),!!l.length&&r.createElement(q.m,{dropdownToggleClassName:"btn btn-link ms-1",actions:l})))}var se="signUp.invite.pendingInvites";function ue(e){var t;return e.isLoading?r.createElement(Y,null):(null===(t=null==e?void 0:e.invites)||void 0===t?void 0:t.length)?r.createElement("div",{className:"px-1"},r.createElement("h3",{className:"h6 px-3"},r.createElement(I.x,{namespace:se,phrase:"heading"})),r.createElement(V.$B,{className:"".concat($.minPendingHeight)},e.invites.map((function(t,n){return r.createElement(le,{key:n,invite:t,imageCdnUrl:e.imageCdnUrl,removeInvite:e.removeInvite,resendInvite:e.resendInvite})})))):r.createElement(H,{onInviteMore:e.onInviteMore})}var me,de=n(80247),pe=n(66903),fe="signUp.invite.shareInviteLink";function ve(e){return e.showSpinner?r.createElement("div",{className:"text-center w-100"},r.createElement(de.Z,{as:"div",animation:"border",role:"status"})):r.createElement("div",{className:"w-100"},r.createElement("div",{className:"d-flex justify-content-between"},r.createElement("h2",{className:"h6"},r.createElement(I.x,{namespace:fe,phrase:"title"})),e.link&&r.createElement("button",{className:"btn btn-link info-link p-0 mb-2",onClick:e.onClickDelete},r.createElement(I.x,{namespace:fe,phrase:"delete"}))),e.link?r.createElement(pe.k,{value:e.link}):r.createElement("div",{className:"d-flex w-100 justify-content-between"},r.createElement("div",null,r.createElement(X.x,{svgName:ee.vn.Link,className:"me-2 d-inline-block svg-container"}),r.createElement(I.x,{namespace:fe,phrase:"generate"})),r.createElement("button",{className:"btn info-link p-0",onClick:e.onClickCreate},r.createElement(I.x,{namespace:fe,phrase:"create"}))))}!function(e){e.Link="link",e.Direct="direct"}(me||(me={}));const ye={minHeight:"tWSzO"};function ge(e){return ge="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},ge(e)}function he(){he=function(){return t};var e,t={},n=Object.prototype,r=n.hasOwnProperty,a=Object.defineProperty||function(e,t,n){e[t]=n.value},i="function"==typeof Symbol?Symbol:{},o=i.iterator||"@@iterator",c=i.asyncIterator||"@@asyncIterator",l=i.toStringTag||"@@toStringTag";function s(e,t,n){return Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{s({},"")}catch(e){s=function(e,t,n){return e[t]=n}}function u(e,t,n,r){var i=t&&t.prototype instanceof g?t:g,o=Object.create(i.prototype),c=new j(r||[]);return a(o,"_invoke",{value:S(e,n,c)}),o}function m(e,t,n){try{return{type:"normal",arg:e.call(t,n)}}catch(e){return{type:"throw",arg:e}}}t.wrap=u;var d="suspendedStart",p="suspendedYield",f="executing",v="completed",y={};function g(){}function h(){}function b(){}var E={};s(E,o,(function(){return this}));var w=Object.getPrototypeOf,N=w&&w(w(L([])));N&&N!==n&&r.call(N,o)&&(E=N);var x=b.prototype=g.prototype=Object.create(E);function k(e){["next","throw","return"].forEach((function(t){s(e,t,(function(e){return this._invoke(t,e)}))}))}function C(e,t){function n(a,i,o,c){var l=m(e[a],e,i);if("throw"!==l.type){var s=l.arg,u=s.value;return u&&"object"==ge(u)&&r.call(u,"__await")?t.resolve(u.__await).then((function(e){n("next",e,o,c)}),(function(e){n("throw",e,o,c)})):t.resolve(u).then((function(e){s.value=e,o(s)}),(function(e){return n("throw",e,o,c)}))}c(l.arg)}var i;a(this,"_invoke",{value:function(e,r){function a(){return new t((function(t,a){n(e,r,t,a)}))}return i=i?i.then(a,a):a()}})}function S(t,n,r){var a=d;return function(i,o){if(a===f)throw Error("Generator is already running");if(a===v){if("throw"===i)throw o;return{value:e,done:!0}}for(r.method=i,r.arg=o;;){var c=r.delegate;if(c){var l=O(c,r);if(l){if(l===y)continue;return l}}if("next"===r.method)r.sent=r._sent=r.arg;else if("throw"===r.method){if(a===d)throw a=v,r.arg;r.dispatchException(r.arg)}else"return"===r.method&&r.abrupt("return",r.arg);a=f;var s=m(t,n,r);if("normal"===s.type){if(a=r.done?v:p,s.arg===y)continue;return{value:s.arg,done:r.done}}"throw"===s.type&&(a=v,r.method="throw",r.arg=s.arg)}}}function O(t,n){var r=n.method,a=t.iterator[r];if(a===e)return n.delegate=null,"throw"===r&&t.iterator.return&&(n.method="return",n.arg=e,O(t,n),"throw"===n.method)||"return"!==r&&(n.method="throw",n.arg=new TypeError("The iterator does not provide a '"+r+"' method")),y;var i=m(a,t.iterator,n.arg);if("throw"===i.type)return n.method="throw",n.arg=i.arg,n.delegate=null,y;var o=i.arg;return o?o.done?(n[t.resultName]=o.value,n.next=t.nextLoc,"return"!==n.method&&(n.method="next",n.arg=e),n.delegate=null,y):o:(n.method="throw",n.arg=new TypeError("iterator result is not an object"),n.delegate=null,y)}function I(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 T(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function j(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(I,this),this.reset(!0)}function L(t){if(t||""===t){var n=t[o];if(n)return n.call(t);if("function"==typeof t.next)return t;if(!isNaN(t.length)){var a=-1,i=function n(){for(;++a<t.length;)if(r.call(t,a))return n.value=t[a],n.done=!1,n;return n.value=e,n.done=!0,n};return i.next=i}}throw new TypeError(ge(t)+" is not iterable")}return h.prototype=b,a(x,"constructor",{value:b,configurable:!0}),a(b,"constructor",{value:h,configurable:!0}),h.displayName=s(b,l,"GeneratorFunction"),t.isGeneratorFunction=function(e){var t="function"==typeof e&&e.constructor;return!!t&&(t===h||"GeneratorFunction"===(t.displayName||t.name))},t.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,b):(e.__proto__=b,s(e,l,"GeneratorFunction")),e.prototype=Object.create(x),e},t.awrap=function(e){return{__await:e}},k(C.prototype),s(C.prototype,c,(function(){return this})),t.AsyncIterator=C,t.async=function(e,n,r,a,i){void 0===i&&(i=Promise);var o=new C(u(e,n,r,a),i);return t.isGeneratorFunction(n)?o:o.next().then((function(e){return e.done?e.value:o.next()}))},k(x),s(x,l,"Generator"),s(x,o,(function(){return this})),s(x,"toString",(function(){return"[object Generator]"})),t.keys=function(e){var t=Object(e),n=[];for(var r in t)n.push(r);return n.reverse(),function e(){for(;n.length;){var r=n.pop();if(r in t)return e.value=r,e.done=!1,e}return e.done=!0,e}},t.values=L,j.prototype={constructor:j,reset:function(t){if(this.prev=0,this.next=0,this.sent=this._sent=e,this.done=!1,this.delegate=null,this.method="next",this.arg=e,this.tryEntries.forEach(T),!t)for(var n in this)"t"===n.charAt(0)&&r.call(this,n)&&!isNaN(+n.slice(1))&&(this[n]=e)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(t){if(this.done)throw t;var n=this;function a(r,a){return c.type="throw",c.arg=t,n.next=r,a&&(n.method="next",n.arg=e),!!a}for(var i=this.tryEntries.length-1;i>=0;--i){var o=this.tryEntries[i],c=o.completion;if("root"===o.tryLoc)return a("end");if(o.tryLoc<=this.prev){var l=r.call(o,"catchLoc"),s=r.call(o,"finallyLoc");if(l&&s){if(this.prev<o.catchLoc)return a(o.catchLoc,!0);if(this.prev<o.finallyLoc)return a(o.finallyLoc)}else if(l){if(this.prev<o.catchLoc)return a(o.catchLoc,!0)}else{if(!s)throw Error("try statement without catch or finally");if(this.prev<o.finallyLoc)return a(o.finallyLoc)}}}},abrupt:function(e,t){for(var n=this.tryEntries.length-1;n>=0;--n){var a=this.tryEntries[n];if(a.tryLoc<=this.prev&&r.call(a,"finallyLoc")&&this.prev<a.finallyLoc){var i=a;break}}i&&("break"===e||"continue"===e)&&i.tryLoc<=t&&t<=i.finallyLoc&&(i=null);var o=i?i.completion:{};return o.type=e,o.arg=t,i?(this.method="next",this.next=i.finallyLoc,y):this.complete(o)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&&t&&(this.next=t),y},finish:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var n=this.tryEntries[t];if(n.finallyLoc===e)return this.complete(n.completion,n.afterLoc),T(n),y}},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;T(n)}return a}}throw Error("illegal catch attempt")},delegateYield:function(t,n,r){return this.delegate={iterator:L(t),resultName:n,nextLoc:r},"next"===this.method&&(this.arg=e),y}},t}function be(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var r,a,i,o,c=[],l=!0,s=!1;try{if(i=(n=n.call(e)).next,0===t){if(Object(n)!==n)return;l=!1}else for(;!(l=(r=i.call(n)).done)&&(c.push(r.value),c.length!==t);l=!0);}catch(e){s=!0,a=e}finally{try{if(!l&&null!=n.return&&(o=n.return(),Object(o)!==o))return}finally{if(s)throw a}}return c}}(e,t)||function(e,t){if(e){if("string"==typeof e)return Ee(e,t);var n={}.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?Ee(e,t):void 0}}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function Ee(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n<t;n++)r[n]=e[n];return r}var we=function(e,t,n,r){return new(n||(n=Promise))((function(a,i){function o(e){try{l(r.next(e))}catch(e){i(e)}}function c(e){try{l(r.throw(e))}catch(e){i(e)}}function l(e){var t;e.done?a(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(o,c)}l((r=r.apply(e,t||[])).next())}))},Ne=a.T.encloseNamespace("signUp.inviteColleage"),xe=1,ke=5;function Ce(e){var t=be(r.useState(e.tab),2),n=t[0],a=t[1],f=be(r.useState(!1),2),y=f[0],g=f[1],h=be(r.useState(!1),2),b=h[0],w=h[1],N=be(r.useState(!1),2),x=N[0],k=N[1],S=be(r.useState((function(){return[E.getNewEmptyField()]})),2),O=S[0],I=S[1],T=i.a.useGetFetchAsync(),j=(0,d.Z)(),L=i.a.useBasicFetch(m.N.currentUser()),A=i.a.useBasicFetch(u.L.config()),F=i.a.useBasicFetch(v.inviteByType()),P=function(e){return r.useMemo((function(){return e?e.reduce((function(e,t){return t.type===me.Direct?(e.directInvites.push(t),e):(e.links.push(t),e)}),{directInvites:[],links:[]}):{directInvites:null,links:null}}),[e])}(F.data),D=P.directInvites,U=P.links,_=null==U?void 0:U[0];function M(){w(!1),I([E.getNewEmptyField()]),"inviteForm"!==n&&(a("inviteForm"),k(!1))}var R=L.hasCompleted&&A.hasCompleted&&F.hasCompleted;return r.createElement(l.G,{title:Ne("title"),closePopup:e.closePopup,bodyClassName:"modal-body px-0",showLoadingSpinner:!R},R&&r.createElement(r.Fragment,null,r.createElement("div",{className:ye.minHeight},!b&&r.createElement(Z,{activeTab:n,onChangeTab:function(e){return a(e)}}),"pendingInvites"===n?r.createElement(ue,{imageCdnUrl:A.data.imageCdnUrl,invites:D,onInviteMore:M,removeInvite:function(e){return we(this,void 0,void 0,he().mark((function t(){return he().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.prev=0,t.next=3,T(v.deleteInvite(e));case 3:j.success(Ne("removeSuccess")),t.next=9;break;case 6:t.prev=6,t.t0=t.catch(0),j.error(p.M.inviteColleagueError(t.t0));case 9:case"end":return t.stop()}}),t,null,[[0,6]])})))},resendInvite:function(e){return we(this,void 0,void 0,he().mark((function t(){return he().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.prev=0,t.next=3,T(v.resendInvite(e));case 3:j.success(Ne("resendSuccess")),t.next=9;break;case 6:t.prev=6,t.t0=t.catch(0),j.error(p.M.inviteColleagueError(t.t0));case 9:case"end":return t.stop()}}),t,null,[[0,6]])})))},isLoading:!F.hasCompleted}):r.createElement(G,{fields:O,setFields:I,showSpinner:x,completed:b,onSubmit:function(){var e;return we(this,void 0,void 0,he().mark((function t(){var n,r,a,i,l;return he().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(!x){t.next=2;break}return t.abrupt("return");case 2:if(n=C.validate(O),r=n.fieldsWithErrors,!n.hasErrors){t.next=6;break}return I(r),t.abrupt("return");case 6:return t.prev=6,k(!0),a=E.getValidFieldsData(O),t.next=11,T(v.invite(a));case 11:return w(!0),s=a.length,o.k.logUserAction({emailCount:s},{actionType:c.Vw.SendEmail,location:c.LZ.TrialBanner,entity:c.py.User,descriptor:c.Yu.InviteColleague,workflowPhase:c.eu.Complete}),t.abrupt("return");case 16:if(t.prev=16,t.t0=t.catch(6),i=t.t0,"create-invitation-failed"===(null===(e=i.responseJSON)||void 0===e?void 0:e.type)){t.next=22;break}return j.error(p.M.inviteColleagueError(i)),t.abrupt("return");case 22:l=E.getInputWithErrors(O,i),I(l);case 24:return t.prev=24,k(!1),t.finish(24);case 27:case"end":return t.stop()}var s}),t,null,[[6,16,24,27]])})))},onInviteMore:M,maxFields:ke,minFields:xe})),!b&&r.createElement("div",{className:"px-3"},r.createElement(s.u,null,r.createElement(ve,{onClickCreate:function(){return we(this,void 0,void 0,he().mark((function e(){return he().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return g(!0),e.prev=1,e.next=4,T(v.createInviteLink());case 4:e.next=9;break;case 6:e.prev=6,e.t0=e.catch(1),j.error(Ne("error"));case 9:return e.prev=9,g(!1),e.finish(9);case 12:case"end":return e.stop()}}),e,null,[[1,6,9,12]])})))},onClickDelete:function(){return we(this,void 0,void 0,he().mark((function e(){return he().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.prev=0,e.next=3,T(v.deleteInvite(_.id));case 3:j.success(Ne("deleteLinkSuccess")),e.next=9;break;case 6:e.prev=6,e.t0=e.catch(0),j.error(p.M.inviteColleagueError(e.t0));case 9:case"end":return e.stop()}}),e,null,[[0,6]])})))},link:null==_?void 0:_.inviteUrl,showSpinner:y})))))}},91969:(e,t,n)=>{"use strict";var r=n(47033),a={"text/plain":"Text","text/html":"Url",default:"Text"};e.exports=function(e,t){var n,i,o,c,l,s,u=!1;t||(t={}),n=t.debug||!1;try{if(o=r(),c=document.createRange(),l=document.getSelection(),(s=document.createElement("span")).textContent=e,s.ariaHidden="true",s.style.all="unset",s.style.position="fixed",s.style.top=0,s.style.clip="rect(0, 0, 0, 0)",s.style.whiteSpace="pre",s.style.webkitUserSelect="text",s.style.MozUserSelect="text",s.style.msUserSelect="text",s.style.userSelect="text",s.addEventListener("copy",(function(r){if(r.stopPropagation(),t.format)if(r.preventDefault(),void 0===r.clipboardData){n&&console.warn("unable to use e.clipboardData"),n&&console.warn("trying IE specific stuff"),window.clipboardData.clearData();var i=a[t.format]||a.default;window.clipboardData.setData(i,e)}else r.clipboardData.clearData(),r.clipboardData.setData(t.format,e);t.onCopy&&(r.preventDefault(),t.onCopy(r.clipboardData))})),document.body.appendChild(s),c.selectNodeContents(s),l.addRange(c),!document.execCommand("copy"))throw new Error("copy command was unsuccessful");u=!0}catch(r){n&&console.error("unable to copy using execCommand: ",r),n&&console.warn("trying IE specific stuff");try{window.clipboardData.setData(t.format||"text",e),t.onCopy&&t.onCopy(window.clipboardData),u=!0}catch(r){n&&console.error("unable to copy using clipboardData: ",r),n&&console.error("falling back to prompt"),i=function(e){var t=(/mac os x/i.test(navigator.userAgent)?"⌘":"Ctrl")+"+C";return e.replace(/#{\s*key\s*}/g,t)}("message"in t?t.message:"Copy to clipboard: #{key}, Enter"),window.prompt(i,e)}}finally{l&&("function"==typeof l.removeRange?l.removeRange(c):l.removeAllRanges()),s&&document.body.removeChild(s),o()}return u}},87432:(e,t,n)=>{"use strict";n.d(t,{Z:()=>r});const r={pillTabSelector:"Hdi6o",tab:"RvNxr",minWidth:"GHSz9",radiusSmall:"VhJJa",tabLink:"WFyvo"}},44818:(e,t,n)=>{"use strict";function r(e){return r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},r(e)}Object.defineProperty(t,"__esModule",{value:!0}),t.CopyToClipboard=void 0;var a=c(n(32735)),i=c(n(91969)),o=["text","onCopy","options","children"];function c(e){return e&&e.__esModule?e:{default:e}}function l(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function s(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?l(Object(n),!0).forEach((function(t){f(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):l(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function u(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function m(e,t){return m=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e},m(e,t)}function d(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function p(e){return p=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)},p(e)}function f(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var v=function(e){!function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&&m(e,t)}(y,e);var t,n,c,l,v=(c=y,l=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}(),function(){var e,t=p(c);if(l){var n=p(this).constructor;e=Reflect.construct(t,arguments,n)}else e=t.apply(this,arguments);return function(e,t){if(t&&("object"===r(t)||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return d(e)}(this,e)});function y(){var e;!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,y);for(var t=arguments.length,n=new Array(t),r=0;r<t;r++)n[r]=arguments[r];return f(d(e=v.call.apply(v,[this].concat(n))),"onClick",(function(t){var n=e.props,r=n.text,o=n.onCopy,c=n.children,l=n.options,s=a.default.Children.only(c),u=(0,i.default)(r,l);o&&o(r,u),s&&s.props&&"function"==typeof s.props.onClick&&s.props.onClick(t)})),e}return t=y,(n=[{key:"render",value:function(){var e=this.props,t=(e.text,e.onCopy,e.options,e.children),n=function(e,t){if(null==e)return{};var n,r,a=function(e,t){if(null==e)return{};var n,r,a={},i=Object.keys(e);for(r=0;r<i.length;r++)n=i[r],t.indexOf(n)>=0||(a[n]=e[n]);return a}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(r=0;r<i.length;r++)n=i[r],t.indexOf(n)>=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(a[n]=e[n])}return a}(e,o),r=a.default.Children.only(t);return a.default.cloneElement(r,s(s({},n),{},{onClick:this.onClick}))}}])&&u(t.prototype,n),Object.defineProperty(t,"prototype",{writable:!1}),y}(a.default.PureComponent);t.CopyToClipboard=v,f(v,"defaultProps",{onCopy:void 0,options:void 0})},59087:(e,t,n)=>{"use strict";var r=n(44818).CopyToClipboard;r.CopyToClipboard=r,e.exports=r},47033:e=>{e.exports=function(){var e=document.getSelection();if(!e.rangeCount)return function(){};for(var t=document.activeElement,n=[],r=0;r<e.rangeCount;r++)n.push(e.getRangeAt(r));switch(t.tagName.toUpperCase()){case"INPUT":case"TEXTAREA":t.blur();break;default:t=null}return e.removeAllRanges(),function(){"Caret"===e.type&&e.removeAllRanges(),e.rangeCount||n.forEach((function(t){e.addRange(t)})),t&&t.focus()}}}}]);
|
|
3
|
-
//# sourceMappingURL=3645-720267b321-lite.chunk.js.map
|