@shift72/core-template 0.6.0 → 1.0.0-alpha.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.
Files changed (76) hide show
  1. package/.github/pull_request_template.md +47 -0
  2. package/.github/workflows/node.js.yml +1 -1
  3. package/CHANGELOG.md +27 -1
  4. package/kibble.json +2 -2
  5. package/package.json +1 -1
  6. package/site/ar_LB.all.json +41 -19
  7. package/site/ca_ES.all.json +33 -19
  8. package/site/da_DK.all.json +33 -19
  9. package/site/de_DE.all.json +33 -19
  10. package/site/el_EL.all.json +33 -19
  11. package/site/en_AU.all.json +17 -3
  12. package/site/es_ES.all.json +33 -19
  13. package/site/es_MX.all.json +30 -16
  14. package/site/et_ET.all.json +33 -19
  15. package/site/fi_FI.all.json +33 -19
  16. package/site/fr_FR.all.json +33 -19
  17. package/site/hr_HR.all.json +35 -19
  18. package/site/hu_HU.all.json +33 -19
  19. package/site/it_IT.all.json +33 -19
  20. package/site/ja_JP.all.json +31 -19
  21. package/site/lt_LT.all.json +37 -19
  22. package/site/nl_BE.all.json +32 -18
  23. package/site/no_NO.all.json +33 -19
  24. package/site/pl_PL.all.json +37 -19
  25. package/site/pt_BR.all.json +33 -19
  26. package/site/pt_PT.all.json +33 -19
  27. package/site/ru_RU.all.json +43 -25
  28. package/site/sr_SR.all.json +35 -19
  29. package/site/static/js/main.js +1 -1
  30. package/site/static/scripts/main.js.map +1 -1
  31. package/site/styles/_buttons.scss +32 -27
  32. package/site/styles/_can-be-watched-button.scss +0 -20
  33. package/site/styles/_carousel.scss +125 -307
  34. package/site/styles/_collections.scss +6 -11
  35. package/site/styles/_cta-buttons.scss +262 -0
  36. package/site/styles/_forms.scss +1 -2
  37. package/site/styles/_icons.scss +3 -1
  38. package/site/styles/_legacy.scss +1 -43
  39. package/site/styles/_meta-detail.scss +20 -194
  40. package/site/styles/_meta-item-tagline.scss +33 -0
  41. package/site/styles/_meta-item.scss +0 -4
  42. package/site/styles/_meta-sub-item.scss +116 -0
  43. package/site/styles/_mixins.scss +45 -0
  44. package/site/styles/_nav.scss +1 -1
  45. package/site/styles/_pages.scss +4 -13
  46. package/site/styles/_plans.scss +14 -0
  47. package/site/styles/_shift72.scss +4 -0
  48. package/site/styles/_variables.scss +2 -4
  49. package/site/styles/main.scss +2 -1
  50. package/site/templates/bundle/item.jet +2 -4
  51. package/site/templates/collection/carousel/carousel.jet +27 -0
  52. package/site/templates/collection/carousel/item/image.jet +5 -0
  53. package/site/templates/collection/carousel/item/synopsis.jet +5 -0
  54. package/site/templates/collection/carousel/item/tagline.jet +7 -0
  55. package/site/templates/collection/carousel/item/title.jet +3 -0
  56. package/site/templates/collection/carousel/item.jet +41 -0
  57. package/site/templates/collection/carousel/pagination.jet +9 -0
  58. package/site/templates/collection/page_collection.jet +2 -2
  59. package/site/templates/common/cta_buttons.jet +70 -0
  60. package/site/templates/common/social-media-buttons.jet +2 -2
  61. package/site/templates/film/item.jet +6 -16
  62. package/site/templates/items/sub_item.jet +22 -0
  63. package/site/templates/items/tagline.jet +2 -2
  64. package/site/templates/page/homepage.jet +2 -3
  65. package/site/templates/tv/detail.jet +10 -18
  66. package/site/tr_TR.all.json +33 -19
  67. package/site/uk_UA.all.json +37 -19
  68. package/site/zh_TW.all.json +31 -19
  69. package/site/styles/_homepage.scss +0 -3
  70. package/site/templates/bundle/buttons.jet +0 -6
  71. package/site/templates/bundle/extras.jet +0 -13
  72. package/site/templates/collection/carousel.jet +0 -27
  73. package/site/templates/collection/carousel_item.jet +0 -68
  74. package/site/templates/items/bonus_item.jet +0 -23
  75. package/site/templates/items/featured_item.jet +0 -61
  76. package/site/templates/tv/episode.jet +0 -21
@@ -152,7 +152,7 @@
152
152
  "other": "Compartilhamento de link"
153
153
  },
154
154
  "social_media_buttons_copied_link": {
155
- "other": "Link copiado para a área de transferência!"
155
+ "other": "Link copiado"
156
156
  },
157
157
  "social_media_buttons_copy_link": {
158
158
  "other": "Link de cópia"
@@ -654,7 +654,7 @@
654
654
  "other": "Ver sua biblioteca"
655
655
  },
656
656
  "shopping_complete_plan": {
657
- "other": "Sua compra de {{ .Title }} foi bem-sucedida."
657
+ "other": "Sua compra de {{.Title}} foi bem-sucedida."
658
658
  },
659
659
  "shopping_complete_rental_watch_window_start": {
660
660
  "one": "Você pode começar a assistir durante o próximo dia.",
@@ -995,33 +995,38 @@
995
995
  "other": "Preço"
996
996
  },
997
997
  "shopping_price_plan_note": {
998
- "zero": "Cobrado a cada {{ .Interval }} .",
999
- "one": "Cobrado a cada {{ .Interval }} após o término da avaliação gratuita de 24 horas.",
1000
- "other": "Cobrado a cada {{ .Interval }} após o {{ .Count }} avaliação gratuita de .Count dias."
998
+ "one": "Cobrado a cada {{.Interval}} após o término da avaliação gratuita de 24 horas.",
999
+ "other": "Cobrado a cada {{.Interval}} após o término da avaliação gratuita de {{.Count}} dias."
1000
+ },
1001
+ "shopping_price_plan_note_without_trial": {
1002
+ "other": "Cobrado a cada {{.Interval}} ."
1001
1003
  },
1002
1004
  "shopping_price_plan_note_interval": {
1003
- "one": "{{ .Interval }}",
1004
- "other": "{{ .Count }} {{ .Interval }}"
1005
+ "one": "{{.Interval}}",
1006
+ "other": "{{.Count}} {{.Interval}}"
1005
1007
  },
1006
- "shopping_enter_card_prompt_plan": {
1008
+ "shopping_enter_card_prompt_subscription": {
1007
1009
  "other": "Insira os dados do seu cartão de crédito abaixo para iniciar a sua assinatura."
1008
1010
  },
1011
+ "shopping_enter_card_prompt_plan": {
1012
+ "other": "Insira os dados do seu cartão de crédito abaixo para iniciar seu plano."
1013
+ },
1009
1014
  "shopping_action_plan": {
1010
1015
  "other": "Completo"
1011
1016
  },
1012
1017
  "shopping_complete_subscription": {
1013
- "other": "Sua compra de assinatura foi bem-sucedida. Agora você está inscrito em {{ .Title }} ."
1018
+ "other": "Sua compra de assinatura foi bem-sucedida. Agora você está inscrito em {{.Title}} ."
1014
1019
  },
1015
1020
  "shopping_complete_subscription_browse": {
1016
1021
  "other": "Fique à vontade para <a href=\"/\">navegar pelo</a> site ou <a href=\"/search.html\">pesquisar</a> algo específico."
1017
1022
  },
1018
1023
  "shopping_info_plan_offer": {
1019
- "one": "Renova automaticamente a cada {{ .Interval }}",
1020
- "other": "Renova automaticamente cada {{ .Count }} {{ .Interval }}"
1024
+ "one": "Renova automaticamente a cada {{.Interval}}",
1025
+ "other": "Renova automaticamente cada {{.Count}} {{.Interval}}"
1021
1026
  },
1022
1027
  "shopping_info_trial_period_offer": {
1023
1028
  "one": "Experimente agora o seu teste gratuito de 24 horas!",
1024
- "other": "Experimente o seu teste gratuito de {{ .Count }} dia!"
1029
+ "other": "Experimente o seu teste gratuito de {{.Count}} dia!"
1025
1030
  },
1026
1031
  "plans_page_header": {
1027
1032
  "other": "Planos Disponíveis"
@@ -1039,7 +1044,7 @@
1039
1044
  "other": "Consulte Mais informação"
1040
1045
  },
1041
1046
  "plan_page_header_text": {
1042
- "other": "Aproveite {{ .Name }}"
1047
+ "other": "Aproveite {{.Name}}"
1043
1048
  },
1044
1049
  "page_plan_explore_intro": {
1045
1050
  "other": "OU"
@@ -1095,6 +1100,9 @@
1095
1100
  "wcag_aria_label_carousel": {
1096
1101
  "other": "Carrossel"
1097
1102
  },
1103
+ "wcag_aria_label_carousel_pagination": {
1104
+ "other": "Paginação"
1105
+ },
1098
1106
  "wcag_aria_label_page_collection": {
1099
1107
  "other": "Página Coleções"
1100
1108
  },
@@ -1288,21 +1296,27 @@
1288
1296
  "other": "Minhas assinaturas"
1289
1297
  },
1290
1298
  "usersubscriptions_subscription_expiry_trialing": {
1291
- "other": "Primeiro pagamento {{ .Expiry }}"
1299
+ "other": "Primeiro pagamento {{.Expiry}}"
1292
1300
  },
1293
1301
  "usersubscriptions_subscription_expiry_active": {
1294
- "other": "Próximo pagamento {{ .Expiry }}"
1302
+ "other": "Próximo pagamento {{.Expiry}}"
1295
1303
  },
1296
1304
  "usersubscriptions_subscription_expiry_past_due": {
1297
- "other": "Pagamento devido. {{ .Expiry }}"
1305
+ "other": "Pagamento devido. {{.Expiry}}"
1298
1306
  },
1299
1307
  "usersubscriptions_subscription_expiry_cancelled": {
1300
- "other": "Termina {{ .Expiry }}"
1308
+ "other": "Termina {{.Expiry}}"
1301
1309
  },
1302
1310
  "usersubscriptions_subscription_expiry_expired": {
1303
- "other": "Terminado {{ .Expiry }}"
1311
+ "other": "Terminado {{.Expiry}}"
1304
1312
  },
1305
1313
  "sponsor_image_alt": {
1306
1314
  "other": "logotipo do patrocinador"
1315
+ },
1316
+ "subscribe_to_watch": {
1317
+ "other": "Inscreva-se para assistir"
1318
+ },
1319
+ "bundle_items_generic": {
1320
+ "other": "{{.Count}} Itens"
1307
1321
  }
1308
- }
1322
+ }
@@ -154,7 +154,7 @@
154
154
  "other": "Поделиться ссылкой"
155
155
  },
156
156
  "social_media_buttons_copied_link": {
157
- "other": "Ссылка скопирована в буфер обмена!"
157
+ "other": "Ссылка скопирована"
158
158
  },
159
159
  "social_media_buttons_copy_link": {
160
160
  "other": "Копировать ссылку"
@@ -514,8 +514,8 @@
514
514
  },
515
515
  "shopping_info_watch_window_explanation2_bundle": {
516
516
  "one": "После нажатия кнопки воспроизведения на конкретном фильме, окно часов начинается и у вас есть час, чтобы посмотреть этот фильм столько раз, сколько вам нравится.",
517
- "few": "После нажатия кнопки PLAY на конкретном фильме, стартует период аренды, и у вас есть {{.Count }} часов, чтобы посмотреть этот фильм столько раз, сколько вам нравится.",
518
- "many": "После нажатия кнопки PLAY на конкретном фильме, стартует период аренды, и у вас есть {{.Count }} часов, чтобы посмотреть этот фильм столько раз, сколько вам нравится."
517
+ "few": "После нажатия кнопки PLAY на конкретном фильме, стартует период аренды, и у вас есть {{.Count}} часов, чтобы посмотреть этот фильм столько раз, сколько вам нравится.",
518
+ "many": "После нажатия кнопки PLAY на конкретном фильме, стартует период аренды, и у вас есть {{.Count}} часов, чтобы посмотреть этот фильм столько раз, сколько вам нравится."
519
519
  },
520
520
  "shopping_info_watch_window_explanation_season": {
521
521
  "one": "После того, как в аренду, ваш сезон будет доступен в вашем аккаунте в течение дня.",
@@ -674,7 +674,7 @@
674
674
  "other": "Просмотр библиотеки"
675
675
  },
676
676
  "shopping_complete_plan": {
677
- "other": "Ваша покупка {{ .Title }} прошла успешно."
677
+ "other": "Ваша покупка {{.Title}} прошла успешно."
678
678
  },
679
679
  "shopping_complete_rental_watch_window_start": {
680
680
  "one": "Теперь вы можете начать смотреть его в течение следующего дня.",
@@ -683,8 +683,8 @@
683
683
  },
684
684
  "shopping_complete_rental_watch_window_end": {
685
685
  "one": "При запуске воспроизведения вы затем час смотреть пункт столько раз, сколько вам нравится.",
686
- "few": "При запуске воспроизведения вы затем {{.Count }} часов смотреть пункт столько раз, сколько вам нравится.",
687
- "many": "При запуске воспроизведения вы затем {{.Count }} часов смотреть пункт столько раз, сколько вам нравится."
686
+ "few": "При запуске воспроизведения вы затем {{.Count}} часов смотреть пункт столько раз, сколько вам нравится.",
687
+ "many": "При запуске воспроизведения вы затем {{.Count}} часов смотреть пункт столько раз, сколько вам нравится."
688
688
  },
689
689
  "shopping_complete_rental_coming_soon": {
690
690
  "one": "Вы сможете смотреть его из {{.Date}} и ваша аренда будет оставаться активным в течение дня.",
@@ -803,8 +803,8 @@
803
803
  },
804
804
  "userdevices_page_content": {
805
805
  "one": "Устройства будут автоматически добавлены здесь, когда вы их используете. Вы ограничены только одно устройство.",
806
- "few": "Устройства будут автоматически добавлены здесь, когда вы их используете.У вас ограничение на {{.Count }} устройство.",
807
- "many": "Устройства будут автоматически добавлены здесь, когда вы их используете.У вас ограничение на {{.Count }} устройство."
806
+ "few": "Устройства будут автоматически добавлены здесь, когда вы их используете.У вас ограничение на {{.Count}} устройство.",
807
+ "many": "Устройства будут автоматически добавлены здесь, когда вы их используете.У вас ограничение на {{.Count}} устройство."
808
808
  },
809
809
  "userdevices_empty_content": {
810
810
  "other": "Сейчас у Вас 0 зарегистрированных устройств."
@@ -1023,33 +1023,42 @@
1023
1023
  "other": "Цена"
1024
1024
  },
1025
1025
  "shopping_price_plan_note": {
1026
- "zero": "{{ .Interval }} каждые .интервал.",
1027
- "one": "{{ .Interval }} каждые после окончания 24-часового бесплатного пробного периода.",
1028
- "other": "Взимается каждые после окончания {{ .Interval }} вашей дневной бесплатной пробной {{ .Count }}"
1026
+ "one": "{{.Interval}} каждые после окончания 24-часового бесплатного пробного периода.",
1027
+ "few": "Взимается каждые после окончания {{.Interval}} вашей дневной бесплатной пробной {{.Count}}",
1028
+ "many": "Взимается каждые после окончания {{.Interval}} вашей дневной бесплатной пробной {{.Count}}",
1029
+ "other": "Взимается каждые после окончания {{.Interval}} вашей дневной бесплатной пробной {{.Count}}"
1030
+ },
1031
+ "shopping_price_plan_note_without_trial": {
1032
+ "other": "{{.Interval}} каждые .интервал."
1029
1033
  },
1030
1034
  "shopping_price_plan_note_interval": {
1031
- "one": "{{ .Interval }}",
1032
- "other": "{{ .Count }} {{ .Interval }}"
1035
+ "one": "{{.Interval}}",
1036
+ "few": "{{.Count}} {{.Interval}}",
1037
+ "many": "{{.Count}} {{.Interval}}",
1038
+ "other": "{{.Count}} {{.Interval}}"
1033
1039
  },
1034
- "shopping_enter_card_prompt_plan": {
1040
+ "shopping_enter_card_prompt_subscription": {
1035
1041
  "other": "Введите данные своей кредитной карты ниже, чтобы начать подписку."
1036
1042
  },
1043
+ "shopping_enter_card_prompt_plan": {
1044
+ "other": "Введите данные своей кредитной карты ниже, чтобы начать план."
1045
+ },
1037
1046
  "shopping_action_plan": {
1038
1047
  "other": "Полный"
1039
1048
  },
1040
1049
  "shopping_complete_subscription": {
1041
- "other": "Ваша подписка была приобретена. Теперь вы подписаны на {{ .Title }} ."
1050
+ "other": "Ваша подписка была приобретена. Теперь вы подписаны на {{.Title}} ."
1042
1051
  },
1043
1052
  "shopping_complete_subscription_browse": {
1044
1053
  "other": "Не стесняйтесь <a href=\"/\">просматривать</a> сайт или <a href=\"/search.html\">искать</a> что-то конкретное."
1045
1054
  },
1046
1055
  "shopping_info_plan_offer": {
1047
- "one": "Автоматически обновляется каждые {{ .Interval }}",
1048
- "other": "Автоматически обновляется каждые {{ .Count }} {{ .Interval }}"
1056
+ "one": "Автоматически обновляется каждые {{.Interval}}",
1057
+ "other": "Автоматически обновляется каждые {{.Count}} {{.Interval}}"
1049
1058
  },
1050
1059
  "shopping_info_trial_period_offer": {
1051
1060
  "one": "Попробуйте бесплатную 24-часовую пробную версию прямо сейчас!",
1052
- "other": "Попробуйте бесплатную дневную пробную версию {{ .Count }}"
1061
+ "other": "Попробуйте бесплатную дневную пробную версию {{.Count}}"
1053
1062
  },
1054
1063
  "plans_page_header": {
1055
1064
  "other": "Доступные планы"
@@ -1067,7 +1076,7 @@
1067
1076
  "other": "Подробнее"
1068
1077
  },
1069
1078
  "plan_page_header_text": {
1070
- "other": "Наслаждайтесь {{ .Name }}"
1079
+ "other": "Наслаждайтесь {{.Name}}"
1071
1080
  },
1072
1081
  "page_plan_explore_intro": {
1073
1082
  "other": "ИЛИ"
@@ -1129,6 +1138,9 @@
1129
1138
  "wcag_aria_label_carousel": {
1130
1139
  "other": "Карусель"
1131
1140
  },
1141
+ "wcag_aria_label_carousel_pagination": {
1142
+ "other": "Пагинация"
1143
+ },
1132
1144
  "wcag_aria_label_page_collection": {
1133
1145
  "other": "Коллекция страницы"
1134
1146
  },
@@ -1310,21 +1322,27 @@
1310
1322
  "other": "Мои подписки"
1311
1323
  },
1312
1324
  "usersubscriptions_subscription_expiry_trialing": {
1313
- "other": "Первый платеж {{ .Expiry }}"
1325
+ "other": "Первый платеж {{.Expiry}}"
1314
1326
  },
1315
1327
  "usersubscriptions_subscription_expiry_active": {
1316
- "other": "Следующий платеж {{ .Expiry }}"
1328
+ "other": "Следующий платеж {{.Expiry}}"
1317
1329
  },
1318
1330
  "usersubscriptions_subscription_expiry_past_due": {
1319
- "other": "Причитающийся платеж {{ .Expiry }}"
1331
+ "other": "Причитающийся платеж {{.Expiry}}"
1320
1332
  },
1321
1333
  "usersubscriptions_subscription_expiry_cancelled": {
1322
- "other": "Заканчивается {{ .Expiry }}"
1334
+ "other": "Заканчивается {{.Expiry}}"
1323
1335
  },
1324
1336
  "usersubscriptions_subscription_expiry_expired": {
1325
- "other": "Завершено {{ .Expiry }}"
1337
+ "other": "Завершено {{.Expiry}}"
1326
1338
  },
1327
1339
  "sponsor_image_alt": {
1328
1340
  "other": "логотип спонсора"
1341
+ },
1342
+ "subscribe_to_watch": {
1343
+ "other": "Подпишитесь, чтобы смотреть"
1344
+ },
1345
+ "bundle_items_generic": {
1346
+ "other": "{{.Count}} Предметы"
1329
1347
  }
1330
- }
1348
+ }
@@ -152,7 +152,7 @@
152
152
  "other": "Дељење везе"
153
153
  },
154
154
  "social_media_buttons_copied_link": {
155
- "other": "Линк је копиран у међуспремник!"
155
+ "other": "Линк је копиран"
156
156
  },
157
157
  "social_media_buttons_copy_link": {
158
158
  "other": "Копирај везу"
@@ -675,7 +675,7 @@
675
675
  "other": "Почните са гледањем {{.BundleItems}} у вашој библиотеци."
676
676
  },
677
677
  "shopping_complete_plan": {
678
- "other": "Ваша куповина {{ .Title }} је била успешна."
678
+ "other": "Ваша куповина {{.Title}} је била успешна."
679
679
  },
680
680
  "shopping_complete_rental_watch_window_start": {
681
681
  "one": "Можете да почнете са гледањем до краја наредног дана.",
@@ -1082,33 +1082,40 @@
1082
1082
  "other": "Цена"
1083
1083
  },
1084
1084
  "shopping_price_plan_note": {
1085
- "zero": "Наплаћује се сваки {{ .Interval }} .",
1086
- "one": "Наплаћује се сваки {{ .Interval }} након завршетка бесплатног пробног периода од 24 сата.",
1087
- "other": "Оптужен сваки {{ .Interval }} после ваших {{ .Count }} дневни бесплатни пробни крајевима."
1085
+ "one": "Наплаћује се сваки {{.Interval}} након завршетка бесплатног пробног периода од 24 сата.",
1086
+ "few": "Оптужен сваки {{.Interval}} после ваших {{.Count}} дневни бесплатни пробни крајевима.",
1087
+ "other": "Оптужен сваки {{.Interval}} после ваших {{.Count}} дневни бесплатни пробни крајевима."
1088
+ },
1089
+ "shopping_price_plan_note_without_trial": {
1090
+ "other": "Наплаћује се сваки {{.Interval}} ."
1088
1091
  },
1089
1092
  "shopping_price_plan_note_interval": {
1090
- "one": "{{ .Interval }}",
1091
- "other": "{{ .Count }} {{ .Interval }} а"
1093
+ "one": "{{.Interval}}",
1094
+ "few": "{{.Count}} {{.Interval}} а",
1095
+ "other": "{{.Count}} {{.Interval}} а"
1092
1096
  },
1093
- "shopping_enter_card_prompt_plan": {
1097
+ "shopping_enter_card_prompt_subscription": {
1094
1098
  "other": "Унесите податке о својој кредитној картици испод да бисте започели претплату."
1095
1099
  },
1100
+ "shopping_enter_card_prompt_plan": {
1101
+ "other": "Унесите детаље своје кредитне картице испод да бисте започели свој план."
1102
+ },
1096
1103
  "shopping_action_plan": {
1097
1104
  "other": "комплетан"
1098
1105
  },
1099
1106
  "shopping_complete_subscription": {
1100
- "other": "Ваша куповина претплате је била успешна. Сада сте претплаћени на {{ .Title }} ."
1107
+ "other": "Ваша куповина претплате је била успешна. Сада сте претплаћени на {{.Title}} ."
1101
1108
  },
1102
1109
  "shopping_complete_subscription_browse": {
1103
1110
  "other": "Слободно <a href=\"/\">претражујте по</a> сајту или <a href=\"/search.html\">тражите</a> нешто специфично."
1104
1111
  },
1105
1112
  "shopping_info_plan_offer": {
1106
- "one": "Аутоматски обнавља сваки {{ .Interval }}",
1107
- "other": "Аутоматски обнавља на сваких {{ .Count }} {{ .Interval }} с"
1113
+ "one": "Аутоматски обнавља сваки {{.Interval}}",
1114
+ "other": "Аутоматски обнавља на сваких {{.Count}} {{.Interval}} с"
1108
1115
  },
1109
1116
  "shopping_info_trial_period_offer": {
1110
1117
  "one": "Испробајте своју бесплатну пробну верзију од 24 сата сада!",
1111
- "other": "Испробајте своју бесплатну пробну верзију {{ .Count }}"
1118
+ "other": "Испробајте своју бесплатну пробну верзију {{.Count}}"
1112
1119
  },
1113
1120
  "plans_page_header": {
1114
1121
  "other": "Доступни планови"
@@ -1126,7 +1133,7 @@
1126
1133
  "other": "Опширније"
1127
1134
  },
1128
1135
  "plan_page_header_text": {
1129
- "other": "Уживајте у {{ .Name }}"
1136
+ "other": "Уживајте у {{.Name}}"
1130
1137
  },
1131
1138
  "page_plan_explore_intro": {
1132
1139
  "other": "ИЛИ"
@@ -1182,6 +1189,9 @@
1182
1189
  "wcag_aria_label_carousel": {
1183
1190
  "other": "Карусель"
1184
1191
  },
1192
+ "wcag_aria_label_carousel_pagination": {
1193
+ "other": "Пагинација"
1194
+ },
1185
1195
  "wcag_aria_label_page_collection": {
1186
1196
  "other": "Коллекция страницы"
1187
1197
  },
@@ -1288,21 +1298,27 @@
1288
1298
  "other": "Моје претплате"
1289
1299
  },
1290
1300
  "usersubscriptions_subscription_expiry_trialing": {
1291
- "other": "Прва уплата {{ .Expiry }}"
1301
+ "other": "Прва уплата {{.Expiry}}"
1292
1302
  },
1293
1303
  "usersubscriptions_subscription_expiry_active": {
1294
- "other": "Следећа уплата {{ .Expiry }}"
1304
+ "other": "Следећа уплата {{.Expiry}}"
1295
1305
  },
1296
1306
  "usersubscriptions_subscription_expiry_past_due": {
1297
- "other": "Рок за плаћање {{ .Expiry }}"
1307
+ "other": "Рок за плаћање {{.Expiry}}"
1298
1308
  },
1299
1309
  "usersubscriptions_subscription_expiry_cancelled": {
1300
- "other": "Завршава {{ .Expiry }}"
1310
+ "other": "Завршава {{.Expiry}}"
1301
1311
  },
1302
1312
  "usersubscriptions_subscription_expiry_expired": {
1303
- "other": "Ендед {{ .Expiry }}"
1313
+ "other": "Ендед {{.Expiry}}"
1304
1314
  },
1305
1315
  "sponsor_image_alt": {
1306
1316
  "other": "логотип спонзора"
1317
+ },
1318
+ "subscribe_to_watch": {
1319
+ "other": "Претплатите се на гледање"
1320
+ },
1321
+ "bundle_items_generic": {
1322
+ "other": "{{.Count}} ставке"
1307
1323
  }
1308
- }
1324
+ }
@@ -478,7 +478,7 @@ function documentReady(app) {
478
478
  }
479
479
  }
480
480
 
481
- document.querySelectorAll('.btn-trailer').forEach(btn => {
481
+ document.querySelectorAll('.s72-btn-trailer:not(.s72-btn-play)').forEach(btn => {
482
482
  btn.addEventListener('click', e => {
483
483
  e.preventDefault();
484
484
  e.stopPropagation();
@@ -1 +1 @@
1
- {"version":3,"file":"main.js","sources":["../js/modernizr-custom.js","../js/can-be-watched-button.component.js","../js/main.js"],"sourcesContent":["/*! modernizr 3.6.0 (Custom Build) | MIT *\n * https://modernizr.com/download/?-smil-setclasses !*/\n!function(e,n,s){function o(e,n){return typeof e===n}function a(){var e,n,s,a,t,r,f;for(var c in l)if(l.hasOwnProperty(c)){if(e=[],n=l[c],n.name&&(e.push(n.name.toLowerCase()),n.options&&n.options.aliases&&n.options.aliases.length))for(s=0;s<n.options.aliases.length;s++)e.push(n.options.aliases[s].toLowerCase());for(a=o(n.fn,\"function\")?n.fn():n.fn,t=0;t<e.length;t++)r=e[t],f=r.split(\".\"),1===f.length?Modernizr[f[0]]=a:(!Modernizr[f[0]]||Modernizr[f[0]]instanceof Boolean||(Modernizr[f[0]]=new Boolean(Modernizr[f[0]])),Modernizr[f[0]][f[1]]=a),i.push((a?\"\":\"no-\")+f.join(\"-\"))}}function t(e){var n=f.className,s=Modernizr._config.classPrefix||\"\";if(c&&(n=n.baseVal),Modernizr._config.enableJSClass){var o=new RegExp(\"(^|\\\\s)\"+s+\"no-js(\\\\s|$)\");n=n.replace(o,\"$1\"+s+\"js$2\")}Modernizr._config.enableClasses&&(n+=\" \"+s+e.join(\" \"+s),c?f.className.baseVal=n:f.className=n)}var i=[],l=[],r={_version:\"3.6.0\",_config:{classPrefix:\"\",enableClasses:!0,enableJSClass:!0,usePrefixes:!0},_q:[],on:function(e,n){var s=this;setTimeout(function(){n(s[e])},0)},addTest:function(e,n,s){l.push({name:e,fn:n,options:s})},addAsyncTest:function(e){l.push({name:null,fn:e})}},Modernizr=function(){};Modernizr.prototype=r,Modernizr=new Modernizr;var f=n.documentElement,c=\"svg\"===f.nodeName.toLowerCase(),u={}.toString;Modernizr.addTest(\"smil\",function(){return!!n.createElementNS&&/SVGAnimate/.test(u.call(n.createElementNS(\"http://www.w3.org/2000/svg\",\"animate\")))}),a(),t(i),delete r.addTest,delete r.addAsyncTest;for(var d=0;d<Modernizr._q.length;d++)Modernizr._q[d]();e.Modernizr=Modernizr}(window,document);","import { utils } from 's72';\nimport { AppComponent, bindAllComponents, render, h, attrs, getComponentElement } from 's72.ui';\n\nexport default class CanBeWatchedButton extends AppComponent {\n constructor(props, context) {\n super(props, context);\n this.state = { loaded: false };\n }\n\n componentDidMount() {\n this.updateState();\n this.app.messagebus.subscribe('user-signed-in', () => this.updateState());\n this.app.messagebus.subscribe('user-signed-out', () => this.updateState());\n this.app.messagebus.subscribe('shopping-session-completed', session =>\n this.shoppingSessionCompleted(session)\n );\n }\n\n componentWillUnmount() {\n this.app.messagebus.unsubscribe('shopping-session-completed', () => this.updateState());\n }\n\n updateState() {\n if (this.props.slug && this.app.shoppingService.isValidType(this.props.slug)) {\n return this.loadAvailability(this.props.slug)\n .then(() => {\n return this.setState({ loaded: true });\n }, utils.noop)\n .then(() => {\n let e = getComponentElement(this);\n e.classList.toggle('s72-show', this.state.loaded && this.state.isOwned);\n }, utils.noop);\n }\n }\n\n shoppingSessionCompleted(session) {\n if (session.data.slug != this.props.slug) {\n return;\n }\n this.updateState();\n }\n\n loadAvailability(slug) {\n if (utils.slugs.detect(slug) === utils.slugs.TYPE.FILM) {\n return this.app.availabilityService.getAvailability(slug).then(a => {\n this.setState({ isOwned: a && a.canBeWatched });\n });\n }\n return;\n }\n\n openLink(event, url) {\n event.preventDefault();\n if (url.length == 0) return;\n window.open(url);\n }\n\n render(props, state) {\n if (!state.loaded || !state.isOwned || props.url == '' || props.label == '') return;\n return (\n state.loaded &&\n state.isOwned && (\n <button\n class=\"s72-btn s72-btn-can-be-watched\"\n onClick={e => {\n this.openLink(e, props.url);\n }}\n >\n <span class=\"padder\" />\n <span class=\"verb watch s72-btn-can-be-watched-label\">{props.label}</span>\n </button>\n )\n );\n }\n}\n\nbindAllComponents('can-be-watched-button', elements => {\n return elements.map(e => render(h(CanBeWatchedButton, attrs(e)), e));\n});\n","import './modernizr-custom.js';\nimport './can-be-watched-button.component.js';\n\n/*global Swiper, Modernizr, s72*/\n\nlet slideObservers = [];\n\nfunction initializeWishlist() {\n let wishlist = document.querySelector('s72-userwishlist');\n if (!wishlist) return;\n let originalFunction = wishlist.classList.remove;\n wishlist.classList.remove = function (className) {\n if (className == 's72-hide') {\n // Hide this from view\n wishlist.style.opacity = '0';\n\n // Remove class\n originalFunction.apply(this, [className]);\n\n /* Convert this to a swiper */\n let containers = wishlist.getElementsByClassName('swiper-container');\n if (containers.length > 0) {\n let container = containers[0];\n let swiper = initializeSwiper(container, true);\n\n init(swiper);\n toggleButtons(container);\n }\n\n // Now show it\n wishlist.style.opacity = '1';\n } else {\n originalFunction.apply(this, [className]);\n }\n };\n}\n\nfunction initializeSwiper(element, force) {\n if (element.swiper) {\n if (force) {\n element.swiper.destroy();\n } else {\n return;\n }\n }\n\n let isTouchscreen = isTouchscreenEnabled();\n\n let defaultSlidesPerView = 8;\n let slidesPerView = {\n 320: 2,\n 568: 2,\n 667: 2,\n 768: 4,\n 992: 4,\n 1200: 4,\n 1440: 6,\n 1600: 6,\n };\n\n // Override some slider values specific sizes. Could potentially expand this for portrait vs. landscapes\n if (element.getAttribute('data-items-per-row')) {\n let itemsPerRow = element.getAttribute('data-items-per-row');\n let layout = element.getAttribute('data-layout');\n\n if (layout == 'portrait') {\n switch (itemsPerRow) {\n case '6':\n defaultSlidesPerView = 8;\n slidesPerView[1600] = 6;\n slidesPerView[1440] = 6;\n slidesPerView[1200] = 5;\n slidesPerView[992] = 4;\n slidesPerView[768] = 4;\n slidesPerView[667] = 3;\n slidesPerView[568] = 3;\n break;\n\n case '4':\n defaultSlidesPerView = 6;\n slidesPerView[1600] = 5;\n slidesPerView[1440] = 5;\n slidesPerView[1200] = 4;\n slidesPerView[992] = 3;\n slidesPerView[768] = 3;\n slidesPerView[667] = 3;\n slidesPerView[568] = 2;\n break;\n }\n } else if (layout == 'landscape') {\n switch (itemsPerRow) {\n case '4':\n defaultSlidesPerView = 5;\n slidesPerView[1600] = 4;\n slidesPerView[1440] = 4;\n slidesPerView[1200] = 3;\n slidesPerView[992] = 3;\n slidesPerView[768] = 3;\n slidesPerView[568] = 2;\n break;\n\n case '3':\n defaultSlidesPerView = 4;\n slidesPerView[1600] = 3;\n slidesPerView[1440] = 3;\n slidesPerView[1200] = 3;\n slidesPerView[992] = 2;\n slidesPerView[768] = 2;\n slidesPerView[568] = 2;\n break;\n }\n }\n }\n\n let swiper = new Swiper(element, {\n init: false,\n slidesPerView: defaultSlidesPerView,\n spaceBetween: 1,\n slidesPerGroup: 1, // leave this for infinite scrollings\n speed: 600,\n watchSlidesVisibility: true,\n\n breakpoints: {\n // when window width is <= 320px\n 319: {\n slidesPerView: slidesPerView[320],\n spaceBetween: 2,\n slidesPerGroup: 1,\n slidesOffsetBefore: 20,\n slidesOffsetAfter: 20,\n },\n // when window width is <= 480px\n 567: {\n slidesPerView: slidesPerView[568],\n spaceBetween: 2,\n slidesPerGroup: isTouchscreen ? slidesPerView[568] : 1,\n slidesOffsetBefore: 20,\n slidesOffsetAfter: 20,\n },\n // when window width is <= 640px\n 666: {\n slidesPerView: slidesPerView[667],\n spaceBetween: 2,\n slidesPerGroup: isTouchscreen ? slidesPerView[667] : 1,\n },\n 767: {\n slidesPerView: slidesPerView[768],\n spaceBetween: 2,\n slidesPerGroup: isTouchscreen ? slidesPerView[768] : 1,\n },\n 991: {\n slidesPerView: slidesPerView[992],\n spaceBetween: 2,\n slidesPerGroup: isTouchscreen ? slidesPerView[992] : 1,\n },\n 1199: {\n slidesPerView: slidesPerView[1200],\n spaceBetween: 2,\n slidesPerGroup: isTouchscreen ? slidesPerView[1200] : 1,\n },\n 1439: {\n slidesPerView: slidesPerView[1440],\n spaceBetween: 2,\n slidesPerGroup: isTouchscreen ? slidesPerView[1440] : 1,\n },\n 1599: {\n slidesPerView: slidesPerView[1600],\n spaceBetween: 2,\n slidesPerGroup: isTouchscreen ? slidesPerView[1600] : 1,\n },\n },\n pagination: {\n el: '.swiper-pagination',\n clickable: true,\n },\n on: {\n init() {\n element.dispatchEvent(new Event('init'));\n },\n slideChangeTransitionEnd() {\n addAndRemoveSlides(element.swiper, true, true);\n toggleButtons(element);\n },\n },\n });\n\n element.buttons = {};\n\n initButton(\n element,\n element.closest('.swiper-wrapper-container').querySelector('.swiper-button-next'),\n 1\n );\n initButton(\n element,\n element.closest('.swiper-wrapper-container').querySelector('.swiper-button-prev'),\n -1\n );\n\n return swiper;\n}\n\nfunction disableButton(button) {\n button.classList.add('swiper-button-disabled');\n}\n\nfunction enableButton(button) {\n button.classList.remove('swiper-button-disabled');\n}\n\nfunction toggleButtons(slider) {\n let currentIndex = slider.swiper.activeIndex;\n let slidesToTheLeft = currentIndex;\n let slidesPerView = slider.swiper.params.slidesPerView;\n let slidesLength = slider.swiper.slides.length;\n let lastVisibleIndex = currentIndex + slidesPerView;\n let slidesToTheRight = slidesLength - lastVisibleIndex;\n\n if (slidesToTheLeft == 0) {\n disableButton(slider.buttons.prev);\n } else {\n enableButton(slider.buttons.prev);\n }\n\n if (slidesToTheRight <= 0) {\n disableButton(slider.buttons.next);\n } else {\n enableButton(slider.buttons.next);\n }\n}\n\nfunction initButton(slider, button, velocity) {\n if (button) {\n button.classList.remove('s72-hide');\n // Clone the button so any pre-existing listeners are destroyed\n let buttonClone = button.cloneNode(true);\n button.parentNode.replaceChild(buttonClone, button);\n\n buttonClone.addEventListener('click', e => {\n e.preventDefault();\n if (velocity > 0) {\n addAndRemoveSlides(slider.swiper, true, false);\n } else {\n addAndRemoveSlides(slider.swiper, false, true);\n }\n slider.swiper.slideToLoop(\n slider.swiper.realIndex + slider.swiper.params.slidesPerView * velocity\n );\n });\n\n let direction = velocity > 0 ? 'next' : 'prev';\n slider.buttons[direction] = buttonClone;\n }\n}\n\nfunction getMatchingDuplicatedSlides(slider, link) {\n let result = [];\n\n if (!slider.destroyed) {\n Array.from(slider.el.querySelectorAll('.swiper-slide')).forEach(slide => {\n if (!slide.classList.contains('base')) {\n let thisLink = slide.querySelector('a.meta-item-link').getAttribute('href');\n if (link === thisLink) result.push(slide);\n }\n });\n }\n\n return result;\n}\n\nfunction init(slider) {\n slider.init();\n\n // Set up a mutation observer against each base slide, as it'll get redrawn as the components get rendered\n for (let x = 0; x < slider.slides.length; x++) {\n let slide = slider.slides[x];\n\n slide.classList.add('base');\n\n if (infiniteScrollEnabled(slider)) {\n let config = { subtree: true, childList: true };\n\n let observer = new MutationObserver(mutations => {\n for (let y = 0; y < mutations.length; y++) {\n let mutationRecord = mutations[y];\n\n // var href = mutationRecord.target.closest('a.meta-item-link').getAttribute('href');\n let thisSlide = mutationRecord.target.closest('.swiper-slide');\n if (thisSlide) {\n let thisLink = thisSlide.querySelector('a.meta-item-link').getAttribute('href');\n\n let duplicatedSlides = getMatchingDuplicatedSlides(slider, thisLink);\n\n Array.from(duplicatedSlides).forEach(dupe => {\n dupe.innerHTML = thisSlide.innerHTML;\n });\n }\n }\n });\n\n observer.observe(slide, config);\n\n slideObservers.push(observer);\n }\n }\n\n addAndRemoveSlides(slider);\n\n return true;\n}\n\nfunction infiniteScrollEnabled(slider) {\n if (!Modernizr.smil) return false; // i.e. is this IE11\n\n if (isTouchscreenEnabled()) return false; // i.e. is this a touchscreen device?\n\n let el = slider.el;\n\n if (el.getAttribute('disable-infinite-scroll') !== null) {\n return false;\n }\n\n let prev = el.buttons.prev;\n let next = el.buttons.next;\n\n // Only infinite scroll on desktop (i.e. when the next/prev buttons are visible)\n let buttonsVisible = (prev && prev.offsetHeight > 0) || (next && next.offsetHeight > 0);\n\n let screens = slider.slides.length / slider.params.slidesPerView;\n\n return buttonsVisible && screens > 1;\n}\n\nfunction addAndRemoveSlides(slider, append, prepend) {\n // This is a no-go\n if (!infiniteScrollEnabled(slider)) return;\n\n // Just in case something's gone horribly wrong\n if (slider.slides.length > 100) {\n return;\n }\n\n if (append) {\n let lastVisibleIndex = slider.activeIndex + slider.params.slidesPerView;\n let slidesToTheRight = slider.slides.length - lastVisibleIndex;\n\n if (slidesToTheRight <= slider.params.slidesPerView) {\n appendBaseSlides(slider);\n }\n }\n\n if (prepend) {\n if (slider.activeIndex <= slider.params.slidesPerView) {\n prependBaseSlides(slider);\n }\n }\n}\n\nfunction getBaseSlides(slider) {\n let result = Array.from(slider.el.querySelectorAll('.swiper-slide.base')).map(node => {\n return node.cloneNode(true);\n });\n\n Array.from(result).forEach(slide => {\n slide.classList.remove(\n 'base',\n 'swiper-slide-visible',\n 'swiper-slide-active',\n 'swiper-slide-next',\n 'swiper-slide-prev'\n );\n });\n\n return result;\n}\n\nfunction appendBaseSlides(slider) {\n let baseSlides = getBaseSlides(slider).slice(0);\n slider.appendSlide(baseSlides);\n\n cullSlides(slider, 1);\n}\n\nfunction prependBaseSlides(slider) {\n // var baseSlides = getBaseSlides(slider).reverse().slice(0);\n let baseSlides = getBaseSlides(slider).reverse().slice(0);\n\n let currentIndex = slider.activeIndex;\n\n for (let i = 0; i < baseSlides.length; i++) {\n slider.prependSlide(baseSlides[i]);\n }\n slider.slideTo(currentIndex + baseSlides.length, 0);\n\n cullSlides(slider, -1);\n}\n\n// Get rid of the oldest N slides to the left of current\nfunction cullSlides(slider, direction) {\n let baseSlides = getBaseSlides(slider);\n\n let indices = [];\n for (let index = 0; index < slider.slides.length; index++) {\n let slide = slider.slides[index];\n if (direction > 0) {\n if (index < slider.activeIndex && !slide.classList.contains('base')) {\n indices.push(index);\n }\n } else if (index > slider.activeIndex && !slide.classList.contains('base')) {\n indices.push(index);\n }\n }\n\n if (indices.length > baseSlides.length) {\n let toCullIndices = [];\n if (direction > 0) {\n toCullIndices = indices.slice(0, baseSlides.length);\n } else {\n toCullIndices = indices.reverse().slice(0, baseSlides.length).reverse();\n }\n\n slider.removeSlide(toCullIndices.reverse());\n }\n}\n\nfunction initSearch() {\n let searchButton = document.querySelector('.btn-search-open');\n let searchForm = document.querySelector('.form-control-search');\n\n let openSearch = function () {\n document.querySelector('.form-control-search').focus();\n document.querySelector('.navbar-nav-search').classList.add('search-show');\n document.querySelector('.navbar-nav-search').classList.remove('search-hidden');\n };\n\n let closeSearch = function () {\n document.querySelector('.navbar-nav-search').classList.remove('search-show');\n document.querySelector('.navbar-nav-search').classList.add('search-hidden');\n };\n\n searchButton.addEventListener('click', openSearch, false);\n searchForm.addEventListener('focusin', openSearch, false);\n searchForm.addEventListener('focusout', closeSearch, false);\n}\n\nfunction initScroll() {\n let nav = document.querySelector('.navbar-toggler');\n nav.addEventListener('click', () => {\n toggleScroll();\n });\n}\n\nfunction toggleScroll() {\n let body = document.querySelector('body');\n if (!body.classList.contains('no-scroll')) {\n body.classList.add('no-scroll');\n } else {\n body.classList.remove('no-scroll');\n }\n}\n\nfunction documentReady(app) {\n initializeWishlist();\n\n app.classificationsService.load('/classifications.all.json');\n app.urlMapService.load('/urlmap.json');\n\n detectTouchscreen();\n\n let swipers = document.getElementsByClassName('swiper-container');\n for (let i = 0; i < swipers.length; i++) {\n let el = swipers[i];\n if (el.getAttribute('is-wishlist') == undefined) {\n let swiper = initializeSwiper(el, false);\n init(swiper);\n\n toggleButtons(el);\n }\n }\n\n document.querySelectorAll('.btn-trailer').forEach(btn => {\n btn.addEventListener('click', e => {\n e.preventDefault();\n e.stopPropagation();\n window.location = btn.getAttribute('data-url');\n });\n });\n\n document.querySelectorAll('.navbar-nav').forEach(nav => {\n nav.classList.remove('s72-hide');\n });\n if (document.querySelector('.navbar-nav-search')) {\n initSearch();\n }\n initScroll();\n}\n\nfunction detectTouchscreen() {\n let touchEnabled = s72.utils.device.isTouchEnabled();\n document.querySelector('html').setAttribute('is-touchscreen', touchEnabled);\n}\n\nfunction isTouchscreenEnabled() {\n return document.querySelector('html').getAttribute('is-touchscreen') === 'true';\n}\ndocument.addEventListener('s72loaded', event => {\n let app = event.detail.app;\n documentReady(app);\n});\n"],"names":["super","this","utils","let","getComponentElement","AppComponent","bindAllComponents","render","h","attrs","y"],"mappings":"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"}
1
+ {"version":3,"file":"main.js","sources":["../js/modernizr-custom.js","../js/can-be-watched-button.component.js","../js/main.js"],"sourcesContent":["/*! modernizr 3.6.0 (Custom Build) | MIT *\n * https://modernizr.com/download/?-smil-setclasses !*/\n!function(e,n,s){function o(e,n){return typeof e===n}function a(){var e,n,s,a,t,r,f;for(var c in l)if(l.hasOwnProperty(c)){if(e=[],n=l[c],n.name&&(e.push(n.name.toLowerCase()),n.options&&n.options.aliases&&n.options.aliases.length))for(s=0;s<n.options.aliases.length;s++)e.push(n.options.aliases[s].toLowerCase());for(a=o(n.fn,\"function\")?n.fn():n.fn,t=0;t<e.length;t++)r=e[t],f=r.split(\".\"),1===f.length?Modernizr[f[0]]=a:(!Modernizr[f[0]]||Modernizr[f[0]]instanceof Boolean||(Modernizr[f[0]]=new Boolean(Modernizr[f[0]])),Modernizr[f[0]][f[1]]=a),i.push((a?\"\":\"no-\")+f.join(\"-\"))}}function t(e){var n=f.className,s=Modernizr._config.classPrefix||\"\";if(c&&(n=n.baseVal),Modernizr._config.enableJSClass){var o=new RegExp(\"(^|\\\\s)\"+s+\"no-js(\\\\s|$)\");n=n.replace(o,\"$1\"+s+\"js$2\")}Modernizr._config.enableClasses&&(n+=\" \"+s+e.join(\" \"+s),c?f.className.baseVal=n:f.className=n)}var i=[],l=[],r={_version:\"3.6.0\",_config:{classPrefix:\"\",enableClasses:!0,enableJSClass:!0,usePrefixes:!0},_q:[],on:function(e,n){var s=this;setTimeout(function(){n(s[e])},0)},addTest:function(e,n,s){l.push({name:e,fn:n,options:s})},addAsyncTest:function(e){l.push({name:null,fn:e})}},Modernizr=function(){};Modernizr.prototype=r,Modernizr=new Modernizr;var f=n.documentElement,c=\"svg\"===f.nodeName.toLowerCase(),u={}.toString;Modernizr.addTest(\"smil\",function(){return!!n.createElementNS&&/SVGAnimate/.test(u.call(n.createElementNS(\"http://www.w3.org/2000/svg\",\"animate\")))}),a(),t(i),delete r.addTest,delete r.addAsyncTest;for(var d=0;d<Modernizr._q.length;d++)Modernizr._q[d]();e.Modernizr=Modernizr}(window,document);","import { utils } from 's72';\nimport { AppComponent, bindAllComponents, render, h, attrs, getComponentElement } from 's72.ui';\n\nexport default class CanBeWatchedButton extends AppComponent {\n constructor(props, context) {\n super(props, context);\n this.state = { loaded: false };\n }\n\n componentDidMount() {\n this.updateState();\n this.app.messagebus.subscribe('user-signed-in', () => this.updateState());\n this.app.messagebus.subscribe('user-signed-out', () => this.updateState());\n this.app.messagebus.subscribe('shopping-session-completed', session =>\n this.shoppingSessionCompleted(session)\n );\n }\n\n componentWillUnmount() {\n this.app.messagebus.unsubscribe('shopping-session-completed', () => this.updateState());\n }\n\n updateState() {\n if (this.props.slug && this.app.shoppingService.isValidType(this.props.slug)) {\n return this.loadAvailability(this.props.slug)\n .then(() => {\n return this.setState({ loaded: true });\n }, utils.noop)\n .then(() => {\n let e = getComponentElement(this);\n e.classList.toggle('s72-show', this.state.loaded && this.state.isOwned);\n }, utils.noop);\n }\n }\n\n shoppingSessionCompleted(session) {\n if (session.data.slug != this.props.slug) {\n return;\n }\n this.updateState();\n }\n\n loadAvailability(slug) {\n if (utils.slugs.detect(slug) === utils.slugs.TYPE.FILM) {\n return this.app.availabilityService.getAvailability(slug).then(a => {\n this.setState({ isOwned: a && a.canBeWatched });\n });\n }\n return;\n }\n\n openLink(event, url) {\n event.preventDefault();\n if (url.length == 0) return;\n window.open(url);\n }\n\n render(props, state) {\n if (!state.loaded || !state.isOwned || props.url == '' || props.label == '') return;\n return (\n state.loaded &&\n state.isOwned && (\n <button\n class=\"s72-btn s72-btn-can-be-watched\"\n onClick={e => {\n this.openLink(e, props.url);\n }}\n >\n <span class=\"padder\" />\n <span class=\"verb watch s72-btn-can-be-watched-label\">{props.label}</span>\n </button>\n )\n );\n }\n}\n\nbindAllComponents('can-be-watched-button', elements => {\n return elements.map(e => render(h(CanBeWatchedButton, attrs(e)), e));\n});\n","import './modernizr-custom.js';\nimport './can-be-watched-button.component.js';\n\n/*global Swiper, Modernizr, s72*/\n\nlet slideObservers = [];\n\nfunction initializeWishlist() {\n let wishlist = document.querySelector('s72-userwishlist');\n if (!wishlist) return;\n let originalFunction = wishlist.classList.remove;\n wishlist.classList.remove = function (className) {\n if (className == 's72-hide') {\n // Hide this from view\n wishlist.style.opacity = '0';\n\n // Remove class\n originalFunction.apply(this, [className]);\n\n /* Convert this to a swiper */\n let containers = wishlist.getElementsByClassName('swiper-container');\n if (containers.length > 0) {\n let container = containers[0];\n let swiper = initializeSwiper(container, true);\n\n init(swiper);\n toggleButtons(container);\n }\n\n // Now show it\n wishlist.style.opacity = '1';\n } else {\n originalFunction.apply(this, [className]);\n }\n };\n}\n\nfunction initializeSwiper(element, force) {\n if (element.swiper) {\n if (force) {\n element.swiper.destroy();\n } else {\n return;\n }\n }\n\n let isTouchscreen = isTouchscreenEnabled();\n\n let defaultSlidesPerView = 8;\n let slidesPerView = {\n 320: 2,\n 568: 2,\n 667: 2,\n 768: 4,\n 992: 4,\n 1200: 4,\n 1440: 6,\n 1600: 6,\n };\n\n // Override some slider values specific sizes. Could potentially expand this for portrait vs. landscapes\n if (element.getAttribute('data-items-per-row')) {\n let itemsPerRow = element.getAttribute('data-items-per-row');\n let layout = element.getAttribute('data-layout');\n\n if (layout == 'portrait') {\n switch (itemsPerRow) {\n case '6':\n defaultSlidesPerView = 8;\n slidesPerView[1600] = 6;\n slidesPerView[1440] = 6;\n slidesPerView[1200] = 5;\n slidesPerView[992] = 4;\n slidesPerView[768] = 4;\n slidesPerView[667] = 3;\n slidesPerView[568] = 3;\n break;\n\n case '4':\n defaultSlidesPerView = 6;\n slidesPerView[1600] = 5;\n slidesPerView[1440] = 5;\n slidesPerView[1200] = 4;\n slidesPerView[992] = 3;\n slidesPerView[768] = 3;\n slidesPerView[667] = 3;\n slidesPerView[568] = 2;\n break;\n }\n } else if (layout == 'landscape') {\n switch (itemsPerRow) {\n case '4':\n defaultSlidesPerView = 5;\n slidesPerView[1600] = 4;\n slidesPerView[1440] = 4;\n slidesPerView[1200] = 3;\n slidesPerView[992] = 3;\n slidesPerView[768] = 3;\n slidesPerView[568] = 2;\n break;\n\n case '3':\n defaultSlidesPerView = 4;\n slidesPerView[1600] = 3;\n slidesPerView[1440] = 3;\n slidesPerView[1200] = 3;\n slidesPerView[992] = 2;\n slidesPerView[768] = 2;\n slidesPerView[568] = 2;\n break;\n }\n }\n }\n\n let swiper = new Swiper(element, {\n init: false,\n slidesPerView: defaultSlidesPerView,\n spaceBetween: 1,\n slidesPerGroup: 1, // leave this for infinite scrollings\n speed: 600,\n watchSlidesVisibility: true,\n\n breakpoints: {\n // when window width is <= 320px\n 319: {\n slidesPerView: slidesPerView[320],\n spaceBetween: 2,\n slidesPerGroup: 1,\n slidesOffsetBefore: 20,\n slidesOffsetAfter: 20,\n },\n // when window width is <= 480px\n 567: {\n slidesPerView: slidesPerView[568],\n spaceBetween: 2,\n slidesPerGroup: isTouchscreen ? slidesPerView[568] : 1,\n slidesOffsetBefore: 20,\n slidesOffsetAfter: 20,\n },\n // when window width is <= 640px\n 666: {\n slidesPerView: slidesPerView[667],\n spaceBetween: 2,\n slidesPerGroup: isTouchscreen ? slidesPerView[667] : 1,\n },\n 767: {\n slidesPerView: slidesPerView[768],\n spaceBetween: 2,\n slidesPerGroup: isTouchscreen ? slidesPerView[768] : 1,\n },\n 991: {\n slidesPerView: slidesPerView[992],\n spaceBetween: 2,\n slidesPerGroup: isTouchscreen ? slidesPerView[992] : 1,\n },\n 1199: {\n slidesPerView: slidesPerView[1200],\n spaceBetween: 2,\n slidesPerGroup: isTouchscreen ? slidesPerView[1200] : 1,\n },\n 1439: {\n slidesPerView: slidesPerView[1440],\n spaceBetween: 2,\n slidesPerGroup: isTouchscreen ? slidesPerView[1440] : 1,\n },\n 1599: {\n slidesPerView: slidesPerView[1600],\n spaceBetween: 2,\n slidesPerGroup: isTouchscreen ? slidesPerView[1600] : 1,\n },\n },\n pagination: {\n el: '.swiper-pagination',\n clickable: true,\n },\n on: {\n init() {\n element.dispatchEvent(new Event('init'));\n },\n slideChangeTransitionEnd() {\n addAndRemoveSlides(element.swiper, true, true);\n toggleButtons(element);\n },\n },\n });\n\n element.buttons = {};\n\n initButton(\n element,\n element.closest('.swiper-wrapper-container').querySelector('.swiper-button-next'),\n 1\n );\n initButton(\n element,\n element.closest('.swiper-wrapper-container').querySelector('.swiper-button-prev'),\n -1\n );\n\n return swiper;\n}\n\nfunction disableButton(button) {\n button.classList.add('swiper-button-disabled');\n}\n\nfunction enableButton(button) {\n button.classList.remove('swiper-button-disabled');\n}\n\nfunction toggleButtons(slider) {\n let currentIndex = slider.swiper.activeIndex;\n let slidesToTheLeft = currentIndex;\n let slidesPerView = slider.swiper.params.slidesPerView;\n let slidesLength = slider.swiper.slides.length;\n let lastVisibleIndex = currentIndex + slidesPerView;\n let slidesToTheRight = slidesLength - lastVisibleIndex;\n\n if (slidesToTheLeft == 0) {\n disableButton(slider.buttons.prev);\n } else {\n enableButton(slider.buttons.prev);\n }\n\n if (slidesToTheRight <= 0) {\n disableButton(slider.buttons.next);\n } else {\n enableButton(slider.buttons.next);\n }\n}\n\nfunction initButton(slider, button, velocity) {\n if (button) {\n button.classList.remove('s72-hide');\n // Clone the button so any pre-existing listeners are destroyed\n let buttonClone = button.cloneNode(true);\n button.parentNode.replaceChild(buttonClone, button);\n\n buttonClone.addEventListener('click', e => {\n e.preventDefault();\n if (velocity > 0) {\n addAndRemoveSlides(slider.swiper, true, false);\n } else {\n addAndRemoveSlides(slider.swiper, false, true);\n }\n slider.swiper.slideToLoop(\n slider.swiper.realIndex + slider.swiper.params.slidesPerView * velocity\n );\n });\n\n let direction = velocity > 0 ? 'next' : 'prev';\n slider.buttons[direction] = buttonClone;\n }\n}\n\nfunction getMatchingDuplicatedSlides(slider, link) {\n let result = [];\n\n if (!slider.destroyed) {\n Array.from(slider.el.querySelectorAll('.swiper-slide')).forEach(slide => {\n if (!slide.classList.contains('base')) {\n let thisLink = slide.querySelector('a.meta-item-link').getAttribute('href');\n if (link === thisLink) result.push(slide);\n }\n });\n }\n\n return result;\n}\n\nfunction init(slider) {\n slider.init();\n\n // Set up a mutation observer against each base slide, as it'll get redrawn as the components get rendered\n for (let x = 0; x < slider.slides.length; x++) {\n let slide = slider.slides[x];\n\n slide.classList.add('base');\n\n if (infiniteScrollEnabled(slider)) {\n let config = { subtree: true, childList: true };\n\n let observer = new MutationObserver(mutations => {\n for (let y = 0; y < mutations.length; y++) {\n let mutationRecord = mutations[y];\n\n // var href = mutationRecord.target.closest('a.meta-item-link').getAttribute('href');\n let thisSlide = mutationRecord.target.closest('.swiper-slide');\n if (thisSlide) {\n let thisLink = thisSlide.querySelector('a.meta-item-link').getAttribute('href');\n\n let duplicatedSlides = getMatchingDuplicatedSlides(slider, thisLink);\n\n Array.from(duplicatedSlides).forEach(dupe => {\n dupe.innerHTML = thisSlide.innerHTML;\n });\n }\n }\n });\n\n observer.observe(slide, config);\n\n slideObservers.push(observer);\n }\n }\n\n addAndRemoveSlides(slider);\n\n return true;\n}\n\nfunction infiniteScrollEnabled(slider) {\n if (!Modernizr.smil) return false; // i.e. is this IE11\n\n if (isTouchscreenEnabled()) return false; // i.e. is this a touchscreen device?\n\n let el = slider.el;\n\n if (el.getAttribute('disable-infinite-scroll') !== null) {\n return false;\n }\n\n let prev = el.buttons.prev;\n let next = el.buttons.next;\n\n // Only infinite scroll on desktop (i.e. when the next/prev buttons are visible)\n let buttonsVisible = (prev && prev.offsetHeight > 0) || (next && next.offsetHeight > 0);\n\n let screens = slider.slides.length / slider.params.slidesPerView;\n\n return buttonsVisible && screens > 1;\n}\n\nfunction addAndRemoveSlides(slider, append, prepend) {\n // This is a no-go\n if (!infiniteScrollEnabled(slider)) return;\n\n // Just in case something's gone horribly wrong\n if (slider.slides.length > 100) {\n return;\n }\n\n if (append) {\n let lastVisibleIndex = slider.activeIndex + slider.params.slidesPerView;\n let slidesToTheRight = slider.slides.length - lastVisibleIndex;\n\n if (slidesToTheRight <= slider.params.slidesPerView) {\n appendBaseSlides(slider);\n }\n }\n\n if (prepend) {\n if (slider.activeIndex <= slider.params.slidesPerView) {\n prependBaseSlides(slider);\n }\n }\n}\n\nfunction getBaseSlides(slider) {\n let result = Array.from(slider.el.querySelectorAll('.swiper-slide.base')).map(node => {\n return node.cloneNode(true);\n });\n\n Array.from(result).forEach(slide => {\n slide.classList.remove(\n 'base',\n 'swiper-slide-visible',\n 'swiper-slide-active',\n 'swiper-slide-next',\n 'swiper-slide-prev'\n );\n });\n\n return result;\n}\n\nfunction appendBaseSlides(slider) {\n let baseSlides = getBaseSlides(slider).slice(0);\n slider.appendSlide(baseSlides);\n\n cullSlides(slider, 1);\n}\n\nfunction prependBaseSlides(slider) {\n // var baseSlides = getBaseSlides(slider).reverse().slice(0);\n let baseSlides = getBaseSlides(slider).reverse().slice(0);\n\n let currentIndex = slider.activeIndex;\n\n for (let i = 0; i < baseSlides.length; i++) {\n slider.prependSlide(baseSlides[i]);\n }\n slider.slideTo(currentIndex + baseSlides.length, 0);\n\n cullSlides(slider, -1);\n}\n\n// Get rid of the oldest N slides to the left of current\nfunction cullSlides(slider, direction) {\n let baseSlides = getBaseSlides(slider);\n\n let indices = [];\n for (let index = 0; index < slider.slides.length; index++) {\n let slide = slider.slides[index];\n if (direction > 0) {\n if (index < slider.activeIndex && !slide.classList.contains('base')) {\n indices.push(index);\n }\n } else if (index > slider.activeIndex && !slide.classList.contains('base')) {\n indices.push(index);\n }\n }\n\n if (indices.length > baseSlides.length) {\n let toCullIndices = [];\n if (direction > 0) {\n toCullIndices = indices.slice(0, baseSlides.length);\n } else {\n toCullIndices = indices.reverse().slice(0, baseSlides.length).reverse();\n }\n\n slider.removeSlide(toCullIndices.reverse());\n }\n}\n\nfunction initSearch() {\n let searchButton = document.querySelector('.btn-search-open');\n let searchForm = document.querySelector('.form-control-search');\n\n let openSearch = function () {\n document.querySelector('.form-control-search').focus();\n document.querySelector('.navbar-nav-search').classList.add('search-show');\n document.querySelector('.navbar-nav-search').classList.remove('search-hidden');\n };\n\n let closeSearch = function () {\n document.querySelector('.navbar-nav-search').classList.remove('search-show');\n document.querySelector('.navbar-nav-search').classList.add('search-hidden');\n };\n\n searchButton.addEventListener('click', openSearch, false);\n searchForm.addEventListener('focusin', openSearch, false);\n searchForm.addEventListener('focusout', closeSearch, false);\n}\n\nfunction initScroll() {\n let nav = document.querySelector('.navbar-toggler');\n nav.addEventListener('click', () => {\n toggleScroll();\n });\n}\n\nfunction toggleScroll() {\n let body = document.querySelector('body');\n if (!body.classList.contains('no-scroll')) {\n body.classList.add('no-scroll');\n } else {\n body.classList.remove('no-scroll');\n }\n}\n\nfunction documentReady(app) {\n initializeWishlist();\n\n app.classificationsService.load('/classifications.all.json');\n app.urlMapService.load('/urlmap.json');\n\n detectTouchscreen();\n\n let swipers = document.getElementsByClassName('swiper-container');\n for (let i = 0; i < swipers.length; i++) {\n let el = swipers[i];\n if (el.getAttribute('is-wishlist') == undefined) {\n let swiper = initializeSwiper(el, false);\n init(swiper);\n\n toggleButtons(el);\n }\n }\n\n document.querySelectorAll('.s72-btn-trailer:not(.s72-btn-play)').forEach(btn => {\n btn.addEventListener('click', e => {\n e.preventDefault();\n e.stopPropagation();\n window.location = btn.getAttribute('data-url');\n });\n });\n\n document.querySelectorAll('.navbar-nav').forEach(nav => {\n nav.classList.remove('s72-hide');\n });\n if (document.querySelector('.navbar-nav-search')) {\n initSearch();\n }\n initScroll();\n}\n\nfunction detectTouchscreen() {\n let touchEnabled = s72.utils.device.isTouchEnabled();\n document.querySelector('html').setAttribute('is-touchscreen', touchEnabled);\n}\n\nfunction isTouchscreenEnabled() {\n return document.querySelector('html').getAttribute('is-touchscreen') === 'true';\n}\ndocument.addEventListener('s72loaded', event => {\n let app = event.detail.app;\n documentReady(app);\n});\n"],"names":["super","this","utils","let","getComponentElement","AppComponent","bindAllComponents","render","h","attrs","y"],"mappings":"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"}