ode-ngjs-front 1.2.7-develop-b2school.202306201444 → 1.3.0-develop-pedago.202308021745

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 (41) hide show
  1. package/dist/{31451cacc32b12533b35bc2756a66c68.html → 1ec99fe1d6b3b1542c0fbe083a7ae716.html} +1 -1
  2. package/dist/ode-ngjs-front.js +5 -5
  3. package/dist/ode-ngjs-front.js.map +1 -1
  4. package/dist/ts/directives/business/media/recorder.directive.d.ts +1 -0
  5. package/dist/ts/directives/business/media/recorder.directive.d.ts.map +1 -1
  6. package/dist/ts/directives/business/share/share-panel.directive.d.ts +0 -155
  7. package/dist/ts/directives/business/share/share-panel.directive.d.ts.map +1 -1
  8. package/dist/ts/directives/index.d.ts +0 -9
  9. package/dist/ts/directives/index.d.ts.map +1 -1
  10. package/dist/ts/modules/explorer.module.d.ts +0 -5
  11. package/dist/ts/modules/explorer.module.d.ts.map +1 -1
  12. package/dist/ts/modules/index.d.ts +0 -2
  13. package/dist/ts/modules/index.d.ts.map +1 -1
  14. package/dist/ts/utils/recorder-audio.d.ts.map +1 -1
  15. package/dist/ts/utils/recorder-video.d.ts.map +1 -1
  16. package/dist/version.txt +1 -1
  17. package/dist/widgets/qwant-widget/qwant-widget.widget.js +1 -1
  18. package/dist/widgets/qwant-widget/qwant-widget.widget.js.map +1 -1
  19. package/dist/widgets/school-widget/school-widget.widget.js +1 -1
  20. package/dist/widgets/school-widget/school-widget.widget.js.map +1 -1
  21. package/package.json +2 -2
  22. package/dist/5a177ed9e4e64baa8287a6f6e5625ab4.html +0 -127
  23. package/dist/d6dec5bea5ec25a97b20e8259e193c57.html +0 -162
  24. package/dist/e42fe8833e44d61abdaa936837b6b949.html +0 -10
  25. package/dist/f3f8289907cc5f53b11e2bc5f451be96.html +0 -31
  26. package/dist/ts/directives/business/explorer/domino-folder.directive.d.ts +0 -28
  27. package/dist/ts/directives/business/explorer/domino-folder.directive.d.ts.map +0 -1
  28. package/dist/ts/directives/business/explorer/domino-item.directive.d.ts +0 -27
  29. package/dist/ts/directives/business/explorer/domino-item.directive.d.ts.map +0 -1
  30. package/dist/ts/directives/business/explorer/explorer.directive.d.ts +0 -44
  31. package/dist/ts/directives/business/explorer/explorer.directive.d.ts.map +0 -1
  32. package/dist/ts/directives/business/explorer/resource-list.directive.d.ts +0 -37
  33. package/dist/ts/directives/business/explorer/resource-list.directive.d.ts.map +0 -1
  34. package/dist/ts/directives/business/explorer/sidebar-folder.directive.d.ts +0 -41
  35. package/dist/ts/directives/business/explorer/sidebar-folder.directive.d.ts.map +0 -1
  36. package/dist/ts/directives/business/explorer/sidebar.directive.d.ts +0 -26
  37. package/dist/ts/directives/business/explorer/sidebar.directive.d.ts.map +0 -1
  38. package/dist/ts/directives/business/toaster/toaster.directive.d.ts +0 -69
  39. package/dist/ts/directives/business/toaster/toaster.directive.d.ts.map +0 -1
  40. package/dist/ts/models/ui.model.d.ts +0 -18
  41. package/dist/ts/models/ui.model.d.ts.map +0 -1
@@ -40,6 +40,7 @@ export declare class Controller implements IController {
40
40
  disabledButtons: boolean;
41
41
  displaySavedMessage: boolean;
42
42
  selectedRecorder: string;
43
+ recordIsSaved: boolean;
43
44
  /** Max video recording duration, in ms. */
44
45
  get recordMaxTime(): number;
45
46
  switchRecorder(type: string): void;
@@ -1 +1 @@
1
- {"version":3,"file":"recorder.directive.d.ts","sourceRoot":"","sources":["../../../../../src/ts/directives/business/media/recorder.directive.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"recorder.directive.d.ts","sourceRoot":"","sources":["../../../../../src/ts/directives/business/media/recorder.directive.ts"],"names":[],"mappings":"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"}
@@ -1,156 +1 @@
1
- import { IAttributes, IController, IDirective, IScope } from "angular";
2
- import { Shareable, ShareVisible, SharePayload, ShareInfos, ShareAction } from "../../../legacy/rights";
3
- import { UiModel } from "../../../models/ui.model";
4
- import { NotifyService } from '../../../services/notify.service';
5
- export declare const appPrefix: string;
6
- export declare const infraPrefix: string;
7
- export interface ShareCloseDelegate {
8
- $canceled: boolean;
9
- $close: () => void;
10
- }
11
- export interface ShareableWithId extends Shareable {
12
- _id: string;
13
- }
14
- declare type tofix = void;
15
- export declare class SharePanelController implements IController {
16
- private $scope;
17
- private notify;
18
- display: {
19
- showSaveSharebookmarkInput: boolean;
20
- sharebookmarkSaved: boolean;
21
- workflowAllowSharebookmarks: boolean;
22
- showCloseConfirmation: boolean;
23
- showBookmarkMembers: boolean;
24
- search: {
25
- processing: Boolean;
26
- };
27
- };
28
- sharing: {
29
- actions?: ShareAction[];
30
- };
31
- varyingRights: boolean | undefined;
32
- varyingRightsI18nKey: string | undefined;
33
- editResources: Shareable[];
34
- sharingModel: ShareInfos & {
35
- edited: any[];
36
- editedInherited: any[];
37
- changed?: boolean;
38
- sharebookmarks?: any;
39
- };
40
- appPrefix: string;
41
- shareTable: string;
42
- resources: Array<ShareableWithId>;
43
- maxResults: number;
44
- translate?: Function;
45
- actions: ShareAction[] | undefined;
46
- search: string;
47
- found: ShareVisible[];
48
- maxEdit: number;
49
- shareOverrideDefaultActions: string[] | undefined;
50
- newSharebookmarkName: string;
51
- constructor($scope: IDirectiveScope, notify: NotifyService);
52
- model: UiModel;
53
- autoClose?: boolean;
54
- onValidate?(args: {
55
- $data: SharePayload;
56
- $resource: ShareableWithId;
57
- $actions: ShareAction[];
58
- }): tofix;
59
- canEditDelegate?(args: {
60
- $item: {
61
- type: string;
62
- id: string;
63
- };
64
- }): boolean;
65
- confirmationCloseDelegate?(args: ShareCloseDelegate): tofix;
66
- closeDelegate?(args: ShareCloseDelegate): tofix;
67
- onCancel?(): tofix;
68
- onSubmit?(args: {
69
- $shared: SharePayload;
70
- }): tofix;
71
- onFeed?(args: {
72
- $data: ShareInfos;
73
- $resource: ShareableWithId;
74
- $actions: ShareAction[];
75
- }): tofix;
76
- $onInit(): void;
77
- $postLink(): void;
78
- /** get directory workflow to manage allowSharebookmarks workflow */
79
- private loadDirectoryWorkflow;
80
- private loadAppBehavioursSharingConf;
81
- canEdit(item: {
82
- type: string;
83
- id: string;
84
- }): boolean;
85
- isSubmitDisabled(): boolean;
86
- createSharebookmark(newSharebookmarkName: string): void;
87
- typeSort(value: any): number;
88
- remove(element: ShareVisible): void;
89
- displayMore(): void;
90
- private requiredActions;
91
- changeAction(item: {
92
- type: string;
93
- users: {
94
- actions: {
95
- [x: string]: any;
96
- };
97
- }[];
98
- actions: {
99
- [x: string]: any;
100
- };
101
- groups: {
102
- actions: {
103
- [x: string]: any;
104
- };
105
- }[];
106
- id: any;
107
- hide: boolean;
108
- }, action: ShareAction): void;
109
- private actionToRights;
110
- private rightsToActions;
111
- share(): Promise<void>;
112
- private usersCache;
113
- findUserOrGroup(): any;
114
- addResults(): void;
115
- private actionsConfiguration;
116
- addEdit(item: ShareVisible): void;
117
- setActions(actions: Array<ShareAction>): void;
118
- clearSearch(): void;
119
- canShowMore(): boolean;
120
- getColor(profile?: string | Array<string>): string | undefined;
121
- private differentRights;
122
- private onFeedEvent;
123
- private feeding;
124
- feedData(): void;
125
- }
126
- interface IDirectiveScope extends IScope {
127
- closePanel?(cancelled: boolean): Promise<void>;
128
- revertClose?(): void;
129
- }
130
- declare class Directive implements IDirective<IDirectiveScope, JQLite, IAttributes, IController[]> {
131
- restrict: string;
132
- templateUrl: any;
133
- scope: {
134
- onCancel: string;
135
- onSubmit: string;
136
- onValidate: string;
137
- onFeed: string;
138
- closeDelegate: string;
139
- confirmationCloseDelegate: string;
140
- canEditDelegate: string;
141
- autoClose: string;
142
- };
143
- bindToController: boolean;
144
- controller: (string | typeof SharePanelController)[];
145
- controllerAs: string;
146
- require: string[];
147
- link(scope: IDirectiveScope, element: JQLite, attrs: IAttributes, controllers?: IController[]): void;
148
- }
149
- /** The share-panel directive.
150
- *
151
- * Usage:
152
- *
153
- */
154
- export declare function DirectiveFactory(): Directive;
155
- export {};
156
1
  //# sourceMappingURL=share-panel.directive.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"share-panel.directive.d.ts","sourceRoot":"","sources":["../../../../../src/ts/directives/business/share/share-panel.directive.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"share-panel.directive.d.ts","sourceRoot":"","sources":["../../../../../src/ts/directives/business/share/share-panel.directive.ts"],"names":[],"mappings":""}
@@ -1,14 +1,5 @@
1
- export * as Explorer from './business/explorer/explorer.directive';
2
- export * as Sidebar from './business/explorer/sidebar.directive';
3
- export * as SidebarFolder from './business/explorer/sidebar-folder.directive';
4
- export * as ResourceList from './business/explorer/resource-list.directive';
5
- export * as DominoFolder from './business/explorer/domino-folder.directive';
6
- export * as DominoItem from './business/explorer/domino-item.directive';
7
- export * as Toaster from './business/toaster/toaster.directive';
8
1
  export * as Modal from './components/modal/modal.directive';
9
2
  export * as ModalContainer from './components/modal/modal-container.directive';
10
- export * as PropsPanel from './business/props/props-panel.directive';
11
- export * as SharePanel from './business/share/share-panel.directive';
12
3
  export * as Translate from './components/i18n/translate.directive';
13
4
  export * as I18n from './components/i18n/i18n.directive';
14
5
  export * as I18nValue from './components/i18n/i18n-value.directive';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/ts/directives/index.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,QAAQ,MAAM,wCAAwC,CAAC;AACnE,OAAO,KAAK,OAAO,MAAM,uCAAuC,CAAC;AACjE,OAAO,KAAK,aAAa,MAAM,8CAA8C,CAAC;AAC9E,OAAO,KAAK,YAAY,MAAM,6CAA6C,CAAC;AAC5E,OAAO,KAAK,YAAY,MAAM,6CAA6C,CAAC;AAC5E,OAAO,KAAK,UAAU,MAAM,2CAA2C,CAAC;AACxE,OAAO,KAAK,OAAO,MAAM,sCAAsC,CAAC;AAChE,OAAO,KAAK,KAAK,MAAM,oCAAoC,CAAC;AAC5D,OAAO,KAAK,cAAc,MAAM,8CAA8C,CAAC;AAC/E,OAAO,KAAK,UAAU,MAAM,wCAAwC,CAAC;AACrE,OAAO,KAAK,UAAU,MAAM,wCAAwC,CAAC;AAGrE,OAAO,KAAK,SAAS,MAAM,uCAAuC,CAAC;AACnE,OAAO,KAAK,IAAI,MAAM,kCAAkC,CAAC;AACzD,OAAO,KAAK,SAAS,MAAM,wCAAwC,CAAC;AACpE,OAAO,KAAK,SAAS,MAAM,wCAAwC,CAAC;AACpE,OAAO,KAAK,eAAe,MAAM,8CAA8C,CAAC;AAChF,OAAO,KAAK,UAAU,MAAM,+BAA+B,CAAC;AAE5D,OAAO,KAAK,iBAAiB,MAAM,sDAAsD,CAAC;AAC1F,OAAO,KAAK,SAAS,MAAM,8CAA8C,CAAC;AAC1E,OAAO,KAAK,UAAU,MAAM,+CAA+C,CAAC;AAC5E,OAAO,KAAK,UAAU,MAAM,+CAA+C,CAAC;AAC5E,OAAO,KAAK,aAAa,MAAM,kDAAkD,CAAC;AAClF,OAAO,KAAK,WAAW,MAAM,gDAAgD,CAAC;AAC9E,OAAO,KAAK,UAAU,MAAM,+CAA+C,CAAC;AAE5E,OAAO,KAAK,QAAQ,MAAM,4CAA4C,CAAC;AACvE,OAAO,KAAK,SAAS,MAAM,yCAAyC,CAAC;AACrE,OAAO,KAAK,MAAM,MAAM,sCAAsC,CAAC;AAC/D,OAAO,KAAK,OAAO,MAAM,wCAAwC,CAAC;AAClE,OAAO,KAAK,cAAc,MAAM,gDAAgD,CAAC;AACjF,OAAO,KAAK,aAAa,MAAM,+CAA+C,CAAC;AAC/E,OAAO,KAAK,QAAQ,MAAM,uCAAuC,CAAC;AAClE,OAAO,KAAK,iBAAiB,MAAM,gDAAgD,CAAC;AACpF,OAAO,KAAK,WAAW,MAAM,0CAA0C,CAAC;AACxE,OAAO,KAAK,IAAI,MAAM,kCAAkC,CAAC;AACzD,OAAO,KAAK,YAAY,MAAM,kDAAkD,CAAC;AACjF,OAAO,KAAK,QAAQ,MAAM,sCAAsC,CAAC;AACjE,OAAO,KAAK,IAAI,MAAM,kCAAkC,CAAC;AAGzD,OAAO,KAAK,MAAM,MAAM,oCAAoC,CAAC;AAC7D,OAAO,KAAK,MAAM,MAAM,oCAAoC,CAAC;AAC7D,OAAO,KAAK,SAAS,MAAM,uCAAuC,CAAC;AACnE,OAAO,KAAK,OAAO,MAAM,qCAAqC,CAAC;AAC/D,OAAO,KAAK,MAAM,MAAM,oCAAoC,CAAC;AAC7D,OAAO,KAAK,OAAO,MAAM,sCAAsC,CAAC;AAChE,OAAO,KAAK,QAAQ,MAAM,qCAAqC,CAAA;AAC/D,OAAO,KAAK,eAAe,MAAM,qCAAqC,CAAC;AACvE,OAAO,KAAK,MAAM,MAAM,2BAA2B,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/ts/directives/index.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,KAAK,MAAM,oCAAoC,CAAC;AAC5D,OAAO,KAAK,cAAc,MAAM,8CAA8C,CAAC;AAK/E,OAAO,KAAK,SAAS,MAAM,uCAAuC,CAAC;AACnE,OAAO,KAAK,IAAI,MAAM,kCAAkC,CAAC;AACzD,OAAO,KAAK,SAAS,MAAM,wCAAwC,CAAC;AACpE,OAAO,KAAK,SAAS,MAAM,wCAAwC,CAAC;AACpE,OAAO,KAAK,eAAe,MAAM,8CAA8C,CAAC;AAChF,OAAO,KAAK,UAAU,MAAM,+BAA+B,CAAC;AAE5D,OAAO,KAAK,iBAAiB,MAAM,sDAAsD,CAAC;AAC1F,OAAO,KAAK,SAAS,MAAM,8CAA8C,CAAC;AAC1E,OAAO,KAAK,UAAU,MAAM,+CAA+C,CAAC;AAC5E,OAAO,KAAK,UAAU,MAAM,+CAA+C,CAAC;AAC5E,OAAO,KAAK,aAAa,MAAM,kDAAkD,CAAC;AAClF,OAAO,KAAK,WAAW,MAAM,gDAAgD,CAAC;AAC9E,OAAO,KAAK,UAAU,MAAM,+CAA+C,CAAC;AAE5E,OAAO,KAAK,QAAQ,MAAM,4CAA4C,CAAC;AACvE,OAAO,KAAK,SAAS,MAAM,yCAAyC,CAAC;AACrE,OAAO,KAAK,MAAM,MAAM,sCAAsC,CAAC;AAC/D,OAAO,KAAK,OAAO,MAAM,wCAAwC,CAAC;AAClE,OAAO,KAAK,cAAc,MAAM,gDAAgD,CAAC;AACjF,OAAO,KAAK,aAAa,MAAM,+CAA+C,CAAC;AAC/E,OAAO,KAAK,QAAQ,MAAM,uCAAuC,CAAC;AAClE,OAAO,KAAK,iBAAiB,MAAM,gDAAgD,CAAC;AACpF,OAAO,KAAK,WAAW,MAAM,0CAA0C,CAAC;AACxE,OAAO,KAAK,IAAI,MAAM,kCAAkC,CAAC;AACzD,OAAO,KAAK,YAAY,MAAM,kDAAkD,CAAC;AACjF,OAAO,KAAK,QAAQ,MAAM,sCAAsC,CAAC;AACjE,OAAO,KAAK,IAAI,MAAM,kCAAkC,CAAC;AAGzD,OAAO,KAAK,MAAM,MAAM,oCAAoC,CAAC;AAC7D,OAAO,KAAK,MAAM,MAAM,oCAAoC,CAAC;AAC7D,OAAO,KAAK,SAAS,MAAM,uCAAuC,CAAC;AACnE,OAAO,KAAK,OAAO,MAAM,qCAAqC,CAAC;AAC/D,OAAO,KAAK,MAAM,MAAM,oCAAoC,CAAC;AAC7D,OAAO,KAAK,OAAO,MAAM,sCAAsC,CAAC;AAChE,OAAO,KAAK,QAAQ,MAAM,qCAAqC,CAAA;AAC/D,OAAO,KAAK,eAAe,MAAM,qCAAqC,CAAC;AACvE,OAAO,KAAK,MAAM,MAAM,2BAA2B,CAAC"}
@@ -1,6 +1 @@
1
- import { IModule } from "angular";
2
- /**
3
- * The "odeExplorerModule" angularjs module is an all-in-one resources exploration toolkit.
4
- */
5
- export declare function odeExplorerModule(): IModule;
6
1
  //# sourceMappingURL=explorer.module.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"explorer.module.d.ts","sourceRoot":"","sources":["../../../src/ts/modules/explorer.module.ts"],"names":[],"mappings":"AAAA,OAAgB,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAM3C;;GAEG;AACF,wBAAgB,iBAAiB,IAAG,OAAO,CAe1C"}
1
+ {"version":3,"file":"explorer.module.d.ts","sourceRoot":"","sources":["../../../src/ts/modules/explorer.module.ts"],"names":[],"mappings":""}
@@ -18,7 +18,5 @@ export declare abstract class OdeModules {
18
18
  static getUi(): string;
19
19
  /** Widgets module : declares lazy loaded directives (widgets for the timeline) */
20
20
  static getWidgets(): string;
21
- /** Explorer module. Declares components for exploring assets from resource-producing apps. */
22
- static getExplorer(): string;
23
21
  }
24
22
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/ts/modules/index.ts"],"names":[],"mappings":"AAMA;;;;;;;;;;GAUG;AACH,8BAAsB,UAAU;IAC5B,sGAAsG;IACtG,MAAM,CAAC,OAAO,IAAG,MAAM;IAGvB,uFAAuF;IACvF,MAAM,CAAC,OAAO,IAAG,MAAM;IAGvB,uEAAuE;IACvE,MAAM,CAAC,KAAK,IAAG,MAAM;IAGrB,kFAAkF;IAClF,MAAM,CAAC,UAAU,IAAG,MAAM;IAG1B,8FAA8F;IAC9F,MAAM,CAAC,WAAW,IAAG,MAAM;CAG9B"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/ts/modules/index.ts"],"names":[],"mappings":"AAMA;;;;;;;;;;GAUG;AACH,8BAAsB,UAAU;IAC5B,sGAAsG;IACtG,MAAM,CAAC,OAAO,IAAG,MAAM;IAGvB,uFAAuF;IACvF,MAAM,CAAC,OAAO,IAAG,MAAM;IAGvB,uEAAuE;IACvE,MAAM,CAAC,KAAK,IAAG,MAAM;IAGrB,kFAAkF;IAClF,MAAM,CAAC,UAAU,IAAG,MAAM;CAO7B"}
@@ -1 +1 @@
1
- {"version":3,"file":"recorder-audio.d.ts","sourceRoot":"","sources":["../../../src/ts/utils/recorder-audio.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,kBAAkB,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AA4BjE;;GAEG;AACH,eAAO,IAAI,cAAc;;;;;;;;;;uBAoPI,QAAQ;;;;;iBAYd,OAAO;CAS1B,CAAC"}
1
+ {"version":3,"file":"recorder-audio.d.ts","sourceRoot":"","sources":["../../../src/ts/utils/recorder-audio.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,kBAAkB,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AA6BjE;;GAEG;AACH,eAAO,IAAI,cAAc;;;;;;;;;;uBA6QO,QAAQ;;;;;iBAYd,OAAO;CAQ7B,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"recorder-video.d.ts","sourceRoot":"","sources":["../../../src/ts/utils/recorder-video.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,kBAAkB,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAG/E,OAAO,EAAU,wBAAwB,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAmBnF,aAAK,UAAU,GAAG,MAAM,GAAG,aAAa,CAAC;AAEzC,qBAAa,aAAc,YAAW,YAAY;IAuB1C,OAAO,CAAC,YAAY;IACpB,OAAO,CAAC,cAAc;IACtB,OAAO,CAAC,QAAQ;IAChB,OAAO,CAAC,OAAO;IACf,OAAO,CAAC,aAAa,CAAC;IA1B1B,OAAO,CAAC,MAAM,CAAC,CAAc;IAC7B,OAAO,CAAC,QAAQ,CAAC,CAAmB;IACpC,OAAO,CAAC,aAAa,CAAC,CAAoB;IAC1C,OAAO,CAAC,cAAc,CAAC,CAAS;IAChC,OAAO,CAAC,QAAQ,CAAC,CAAS;IAC1B,OAAO,CAAC,OAAO,CAA8B;IACtC,WAAW,EAAE,sBAAsB,CAOxC;IACF,KAAK,EAAE,MAAM,CAAM;IACnB,IAAI,UAAU,IAAG,kBAAkB,CAElC;IACD,WAAW,EAAC,MAAM,CAAK;IACvB,SAAS,EAAC,KAAK,CAAC,CAAC,KAAK,EAAC,aAAa,KAAG,IAAI,CAAC,CAAM;gBAGtC,YAAY,EAAE,MAAM,gBAAgB,EACpC,cAAc,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,EACtC,QAAQ,EAAE,kBAAkB,EAC5B,OAAO,EAAE,wBAAwB,EACjC,aAAa,CAAC,6BAAiB;IAO3C,IAAW,KAAK,kBAEf;IAED,MAAM,CAAE,QAAQ,EAAC,CAAC,KAAK,EAAC,aAAa,KAAG,IAAI,GAAG,IAAI;IAInD,OAAO,CAAC,YAAY;WAaN,YAAY;WAQZ,oBAAoB;WAkBpB,qBAAqB;IASnC,OAAO,IAAG,OAAO,CAAC,IAAI,CAAC;IAIvB,KAAK,IAAG,IAAI;IAIZ,IAAI,IAAG,IAAI;IAuBX,OAAO,CAAC,cAAc;IAKtB,OAAO,CAAC,gBAAgB;IAIxB,OAAO,CAAC,iBAAiB,CAIxB;IACD,OAAO,CAAC,iBAAiB;IAIzB,OAAO,CAAC,eAAe;IAMvB,OAAO,CAAC,SAAS;IAUjB,YAAY,CAAE,EAAE,EAAC,UAAU,GAAC,kBAAkB;IAa9C,IAAI;IAUJ,OAAO,CAAC,WAAW;IAiBnB,KAAK;IASL,OAAO,CAAC,aAAa;IAsBrB,OAAO,CAAC,aAAa;IAgBf,cAAc,CAAC,YAAY,CAAC,EAAE,MAAM,IAAI;IAwCvC,eAAe;IAYf,MAAM;IAIA,iBAAiB;IAI9B,OAAO,CAAC,yBAAyB;IAkB3B,OAAO;IAuBP,MAAM;IA2BL,aAAa,CAAC,WAAW,EAAE,OAAO,GAAE,OAAO,CAAC,IAAI,CAAC;IAejD,aAAa;IAUb,SAAS;IAIT,WAAW,CAAC,aAAa,EAAE,OAAO;CAI5C"}
1
+ {"version":3,"file":"recorder-video.d.ts","sourceRoot":"","sources":["../../../src/ts/utils/recorder-video.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,kBAAkB,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAG/E,OAAO,EAAU,wBAAwB,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAmBnF,aAAK,UAAU,GAAG,MAAM,GAAG,aAAa,CAAC;AAEzC,qBAAa,aAAc,YAAW,YAAY;IAuB1C,OAAO,CAAC,YAAY;IACpB,OAAO,CAAC,cAAc;IACtB,OAAO,CAAC,QAAQ;IAChB,OAAO,CAAC,OAAO;IACf,OAAO,CAAC,aAAa,CAAC;IA1B1B,OAAO,CAAC,MAAM,CAAC,CAAc;IAC7B,OAAO,CAAC,QAAQ,CAAC,CAAmB;IACpC,OAAO,CAAC,aAAa,CAAC,CAAoB;IAC1C,OAAO,CAAC,cAAc,CAAC,CAAS;IAChC,OAAO,CAAC,QAAQ,CAAC,CAAS;IAC1B,OAAO,CAAC,OAAO,CAA8B;IACtC,WAAW,EAAE,sBAAsB,CAOxC;IACF,KAAK,EAAE,MAAM,CAAM;IACnB,IAAI,UAAU,IAAG,kBAAkB,CAElC;IACD,WAAW,EAAC,MAAM,CAAK;IACvB,SAAS,EAAC,KAAK,CAAC,CAAC,KAAK,EAAC,aAAa,KAAG,IAAI,CAAC,CAAM;gBAGtC,YAAY,EAAE,MAAM,gBAAgB,EACpC,cAAc,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,EACtC,QAAQ,EAAE,kBAAkB,EAC5B,OAAO,EAAE,wBAAwB,EACjC,aAAa,CAAC,6BAAiB;IAK3C,IAAW,KAAK,kBAEf;IAED,MAAM,CAAE,QAAQ,EAAC,CAAC,KAAK,EAAC,aAAa,KAAG,IAAI,GAAG,IAAI;IAInD,OAAO,CAAC,YAAY;WAaN,YAAY;WAQZ,oBAAoB;WAkBpB,qBAAqB;IASnC,OAAO,IAAG,OAAO,CAAC,IAAI,CAAC;IAIvB,KAAK,IAAG,IAAI;IAKZ,IAAI,IAAG,IAAI;IAuBX,OAAO,CAAC,cAAc;IAKtB,OAAO,CAAC,gBAAgB;IAIxB,OAAO,CAAC,iBAAiB,CAIxB;IACD,OAAO,CAAC,iBAAiB;IAIzB,OAAO,CAAC,eAAe;IAMvB,OAAO,CAAC,SAAS;IAUjB,YAAY,CAAE,EAAE,EAAC,UAAU,GAAC,kBAAkB;IAa9C,IAAI;IAUJ,OAAO,CAAC,WAAW;IAiBnB,KAAK;IASL,OAAO,CAAC,aAAa;IAsBrB,OAAO,CAAC,aAAa;IAgBf,cAAc,CAAC,YAAY,CAAC,EAAE,MAAM,IAAI;IAwCvC,eAAe;IAYf,MAAM;IAIA,iBAAiB;IAI9B,OAAO,CAAC,yBAAyB;IAkB3B,OAAO;IAuBP,MAAM;IA+BL,aAAa,CAAC,WAAW,EAAE,OAAO,GAAE,OAAO,CAAC,IAAI,CAAC;IAejD,aAAa;IAUb,SAAS;IAIT,WAAW,CAAC,aAAa,EAAE,OAAO;CAI5C"}
package/dist/version.txt CHANGED
@@ -1 +1 @@
1
- ode-ngjs-front=1.2-b2school-SNAPSHOT 20/06/2023 14:44:45
1
+ ode-ngjs-front=1.3.0 02/08/2023 17:46:47
@@ -1,2 +1,2 @@
1
- "use strict";(self.webpackChunkode_ngjs_front=self.webpackChunkode_ngjs_front||[]).push([[165],{8265:(t,e,n)=>{n.d(e,{Z:()=>a});const a=' <style>.widget-qwant .widget-header{border:0}</style> <div class="widget-qwant"> <div class="widget-header"> <div class="widget-options"> <div class="widget-handle"><i class="fas fa-grip-vertical"></i></div> </div> </div> <div class="widget-body" dnd-nodrag> <div class="widget-empty-message"> <div class="row row-cols-1 align-items-center"> <div class="mb-3"> <a href="https://www.qwant.com" target="_blank" rel="noopener" ng-click="trackEvent($event, {detail:{\'open\':\'qwant\'} })"> <img src="/assets/widgets/qwant/logo-qwant.svg" width="77" height="75" alt="Qwant"> </a> </div> </div> <form method="GET" target="_blank" action="https://www.qwant.com" autocomplete="off"> <div class="row row-cols-1 align-items-center"> <label class="sr-only" for="inputQwantQ" translate content="search"></label> <div class="input-group mb-2"> <input type="text" id="inputQwantQ" class="form-control" name="q" maxlength="255" i18n-placeholder="search"/> <input type="hidden" name="l" value="fr"/> <button class="btn btn-outline-secondary" aria-labelledby="inputQwantQ" ng-click="trackEvent($event, {detail:{\'search\':\'launch\'} })"> <i class="ic-search"></i> </button> </div> </div> </form> </div> </div> </div>'},3399:function(t,e,n){var a=this&&this.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(e,"__esModule",{value:!0}),e.odeModuleName=void 0;var i=a(n(4202)),o=n(9419),d=function(){function t(){this.restrict="E",this.template=n(8265).Z}return t.prototype.link=function(t){t.trackEvent=function(t,e){var n,a;void 0===e.bubbles&&(e.bubbles=!0);var i=null;!e||"qwant"!==(null===(n=e.detail)||void 0===n?void 0:n.open)&&"string"!=typeof(null===(a=e.detail)||void 0===a?void 0:a.search)||(i=new CustomEvent(o.TrackedActionFromWidget.qwant,e)),i&&t.currentTarget&&t.currentTarget.dispatchEvent(i)}},t}();o.notif().onLangReady().promise.then((function(t){o.conf().Platform.idiom.addKeys(n(2467))})),e.odeModuleName="odeQwantModule",i.default.module(e.odeModuleName,[]).directive("odeQwant",(function(){return new d}))},2467:t=>{t.exports=JSON.parse('{"qwant-widget.widget.title":"Qwant","qwant-junior":"QwantJunior","qwant":"Qwant"}')}}]);
1
+ "use strict";(self.webpackChunkode_ngjs_front=self.webpackChunkode_ngjs_front||[]).push([[165],{8265:(t,e,n)=>{n.d(e,{Z:()=>a});const a=' <style>.widget-qwant .widget-header{border:0}.widget-qwant .widget-body img{margin:auto}</style> <div class="widget-qwant"> <div class="widget-header"> <div class="widget-options"> <div class="widget-handle"><i class="fas fa-grip-vertical"></i></div> </div> </div> <div class="widget-body" dnd-nodrag> <div class="widget-empty-message"> <div class="row row-cols-1 align-items-center"> <div class="mb-12"> <a href="https://www.qwant.com" target="_blank" rel="noopener" ng-click="trackEvent($event, {detail:{\'open\':\'qwant\'} })"> <img src="/assets/widgets/qwant/logo-qwant.svg" width="77" height="75" alt="Qwant"> </a> </div> </div> <form method="GET" target="_blank" action="https://www.qwant.com" autocomplete="off"> <div class="row row-cols-1 align-items-center"> <label class="sr-only" for="inputQwantQ" translate content="search"></label> <div class="input-group mb-2"> <input type="text" id="inputQwantQ" class="form-control" name="q" maxlength="255" i18n-placeholder="search"/> <input type="hidden" name="l" value="fr"/> <button class="btn btn-outline-secondary" aria-labelledby="inputQwantQ" ng-click="trackEvent($event, {detail:{\'search\':\'launch\'} })"> <i class="ic-search"></i> </button> </div> </div> </form> </div> </div> </div>'},3399:function(t,e,n){var a=this&&this.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(e,"__esModule",{value:!0}),e.odeModuleName=void 0;var i=a(n(4202)),o=n(9419),d=function(){function t(){this.restrict="E",this.template=n(8265).Z}return t.prototype.link=function(t){t.trackEvent=function(t,e){var n,a;void 0===e.bubbles&&(e.bubbles=!0);var i=null;!e||"qwant"!==(null===(n=e.detail)||void 0===n?void 0:n.open)&&"string"!=typeof(null===(a=e.detail)||void 0===a?void 0:a.search)||(i=new CustomEvent(o.TrackedActionFromWidget.qwant,e)),i&&t.currentTarget&&t.currentTarget.dispatchEvent(i)}},t}();o.notif().onLangReady().promise.then((function(t){o.conf().Platform.idiom.addKeys(n(2467))})),e.odeModuleName="odeQwantModule",i.default.module(e.odeModuleName,[]).directive("odeQwant",(function(){return new d}))},2467:t=>{t.exports=JSON.parse('{"qwant-widget.widget.title":"Qwant","qwant-junior":"QwantJunior","qwant":"Qwant"}')}}]);
2
2
  //# sourceMappingURL=qwant-widget.widget.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"widgets/qwant-widget/qwant-widget.widget.js","mappings":"gIAGA,QAFW,orC,mLCDX,iBACA,UAGA,0BACI,KAAAA,SAAW,IACd,KAAAC,SAAW,SAiBZ,QAfC,YAAAC,KAAA,SAAKC,GAEJA,EAAMC,WAAa,SAACC,EAASC,G,aAEJ,IAAdA,EAAEC,UAAyBD,EAAEC,SAAU,GAEjD,IAAIC,EAAQ,MACRF,GAAuB,WAAT,QAAR,EAAAA,EAAEG,cAAM,eAAEC,OAA4C,iBAAX,QAAR,EAAAJ,EAAEG,cAAM,eAAEE,UACtDH,EAAQ,IAAII,YAAa,EAAAC,wBAAwBC,MAAOR,IAErDE,GAASH,EAAEU,eACdV,EAAEU,cAAcC,cAAcR,EAEhC,CACD,EACD,EAnBA,GA2BA,EAAAS,QAAQC,cAAcC,QAAQC,MAAM,SAAAC,GAEzB,EAAAC,OAAOC,SAASC,MAAMC,QAAS,EAAQ,MAElD,IAIa,EAAAC,cAAgB,iBAC7B,UAAQC,OAAQ,EAAAD,cAAe,IAAIE,UAAW,YAd9C,WACC,OAAO,IAAIC,CACZ,G","sources":["webpack://ode-ngjs-front/./src/ts/widgets/qwant-widget/qwant-widget.widget.html","webpack://ode-ngjs-front/./src/ts/widgets/qwant-widget/qwant-widget.widget.ts"],"sourcesContent":["// Module\nvar code = \" <style>.widget-qwant .widget-header{border:0}</style> <div class=\\\"widget-qwant\\\"> <div class=\\\"widget-header\\\"> <div class=\\\"widget-options\\\"> <div class=\\\"widget-handle\\\"><i class=\\\"fas fa-grip-vertical\\\"></i></div> </div> </div> <div class=\\\"widget-body\\\" dnd-nodrag> <div class=\\\"widget-empty-message\\\"> <div class=\\\"row row-cols-1 align-items-center\\\"> <div class=\\\"mb-3\\\"> <a href=\\\"https://www.qwant.com\\\" target=\\\"_blank\\\" rel=\\\"noopener\\\" ng-click=\\\"trackEvent($event, {detail:{'open':'qwant'} })\\\"> <img src=\\\"/assets/widgets/qwant/logo-qwant.svg\\\" width=\\\"77\\\" height=\\\"75\\\" alt=\\\"Qwant\\\"> </a> </div> </div> <form method=\\\"GET\\\" target=\\\"_blank\\\" action=\\\"https://www.qwant.com\\\" autocomplete=\\\"off\\\"> <div class=\\\"row row-cols-1 align-items-center\\\"> <label class=\\\"sr-only\\\" for=\\\"inputQwantQ\\\" translate content=\\\"search\\\"></label> <div class=\\\"input-group mb-2\\\"> <input type=\\\"text\\\" id=\\\"inputQwantQ\\\" class=\\\"form-control\\\" name=\\\"q\\\" maxlength=\\\"255\\\" i18n-placeholder=\\\"search\\\"/> <input type=\\\"hidden\\\" name=\\\"l\\\" value=\\\"fr\\\"/> <button class=\\\"btn btn-outline-secondary\\\" aria-labelledby=\\\"inputQwantQ\\\" ng-click=\\\"trackEvent($event, {detail:{'search':'launch'} })\\\"> <i class=\\\"ic-search\\\"></i> </button> </div> </div> </form> </div> </div> </div>\";\n// Exports\nexport default code;","import angular, { IAttributes, IController, IDirective, IScope } from \"angular\";\nimport { conf, notif, TrackedAction, TrackedScope, TrackedActionFromWidget } from \"../../utils\";\n\n/* Directive */\nclass Directive implements IDirective<TrackedScope,JQLite,IAttributes,IController[]> {\n restrict = 'E';\n\ttemplate = require('./qwant-widget.widget.html').default;\n\n\tlink(scope:TrackedScope) {\n\t\t// Give an opportunity to track some events from outside of this widget.\n\t\tscope.trackEvent = (e:Event, p:CustomEventInit<TrackedAction>) => {\n\t\t\t// Allow events to bubble up.\n\t\t\tif(typeof p.bubbles === \"undefined\") p.bubbles = true;\n\n\t\t\tlet event = null;\n\t\t\tif( p && (p.detail?.open==='qwant' || typeof p.detail?.search==='string') ) {\n\t\t\t\tevent = new CustomEvent( TrackedActionFromWidget.qwant, p );\n\t\t\t}\n\t\t\tif( event && e.currentTarget ) {\n\t\t\t\te.currentTarget.dispatchEvent(event);\n\t\t\t}\n\t\t}\n\t}\n}\n\n/** The qwant widget. */\nfunction DirectiveFactory() {\n\treturn new Directive();\n}\n\n// Preload translations\nnotif().onLangReady().promise.then( lang => {\n\tswitch( lang ) {\n\t\tdefault:\tconf().Platform.idiom.addKeys( require('./i18n/fr.json') ); break;\n\t}\n});\n\n// THIS ANGULAR MODULE WILL BE DYNAMICALLY ADDED TO THE APPLICATION.\n// RESPECT THE NAMING CONVENTION BY EXPORTING THE MODULE NAME :\nexport const odeModuleName = \"odeQwantModule\";\nangular.module( odeModuleName, []).directive( \"odeQwant\", DirectiveFactory );\n"],"names":["restrict","template","link","scope","trackEvent","e","p","bubbles","event","detail","open","search","CustomEvent","TrackedActionFromWidget","qwant","currentTarget","dispatchEvent","notif","onLangReady","promise","then","lang","conf","Platform","idiom","addKeys","odeModuleName","module","directive","Directive"],"sourceRoot":""}
1
+ {"version":3,"file":"widgets/qwant-widget/qwant-widget.widget.js","mappings":"gIAGA,QAFW,guC,mLCDX,iBACA,UAGA,0BACI,KAAAA,SAAW,IACd,KAAAC,SAAW,SAiBZ,QAfC,YAAAC,KAAA,SAAKC,GAEJA,EAAMC,WAAa,SAACC,EAASC,G,aAEJ,IAAdA,EAAEC,UAAyBD,EAAEC,SAAU,GAEjD,IAAIC,EAAQ,MACRF,GAAuB,WAAT,QAAR,EAAAA,EAAEG,cAAM,eAAEC,OAA4C,iBAAX,QAAR,EAAAJ,EAAEG,cAAM,eAAEE,UACtDH,EAAQ,IAAII,YAAa,EAAAC,wBAAwBC,MAAOR,IAErDE,GAASH,EAAEU,eACdV,EAAEU,cAAcC,cAAcR,EAEhC,CACD,EACD,EAnBA,GA2BA,EAAAS,QAAQC,cAAcC,QAAQC,MAAM,SAAAC,GAEzB,EAAAC,OAAOC,SAASC,MAAMC,QAAS,EAAQ,MAElD,IAIa,EAAAC,cAAgB,iBAC7B,UAAQC,OAAQ,EAAAD,cAAe,IAAIE,UAAW,YAd9C,WACC,OAAO,IAAIC,CACZ,G","sources":["webpack://ode-ngjs-front/./src/ts/widgets/qwant-widget/qwant-widget.widget.html","webpack://ode-ngjs-front/./src/ts/widgets/qwant-widget/qwant-widget.widget.ts"],"sourcesContent":["// Module\nvar code = \" <style>.widget-qwant .widget-header{border:0}.widget-qwant .widget-body img{margin:auto}</style> <div class=\\\"widget-qwant\\\"> <div class=\\\"widget-header\\\"> <div class=\\\"widget-options\\\"> <div class=\\\"widget-handle\\\"><i class=\\\"fas fa-grip-vertical\\\"></i></div> </div> </div> <div class=\\\"widget-body\\\" dnd-nodrag> <div class=\\\"widget-empty-message\\\"> <div class=\\\"row row-cols-1 align-items-center\\\"> <div class=\\\"mb-12\\\"> <a href=\\\"https://www.qwant.com\\\" target=\\\"_blank\\\" rel=\\\"noopener\\\" ng-click=\\\"trackEvent($event, {detail:{'open':'qwant'} })\\\"> <img src=\\\"/assets/widgets/qwant/logo-qwant.svg\\\" width=\\\"77\\\" height=\\\"75\\\" alt=\\\"Qwant\\\"> </a> </div> </div> <form method=\\\"GET\\\" target=\\\"_blank\\\" action=\\\"https://www.qwant.com\\\" autocomplete=\\\"off\\\"> <div class=\\\"row row-cols-1 align-items-center\\\"> <label class=\\\"sr-only\\\" for=\\\"inputQwantQ\\\" translate content=\\\"search\\\"></label> <div class=\\\"input-group mb-2\\\"> <input type=\\\"text\\\" id=\\\"inputQwantQ\\\" class=\\\"form-control\\\" name=\\\"q\\\" maxlength=\\\"255\\\" i18n-placeholder=\\\"search\\\"/> <input type=\\\"hidden\\\" name=\\\"l\\\" value=\\\"fr\\\"/> <button class=\\\"btn btn-outline-secondary\\\" aria-labelledby=\\\"inputQwantQ\\\" ng-click=\\\"trackEvent($event, {detail:{'search':'launch'} })\\\"> <i class=\\\"ic-search\\\"></i> </button> </div> </div> </form> </div> </div> </div>\";\n// Exports\nexport default code;","import angular, { IAttributes, IController, IDirective, IScope } from \"angular\";\nimport { conf, notif, TrackedAction, TrackedScope, TrackedActionFromWidget } from \"../../utils\";\n\n/* Directive */\nclass Directive implements IDirective<TrackedScope,JQLite,IAttributes,IController[]> {\n restrict = 'E';\n\ttemplate = require('./qwant-widget.widget.html').default;\n\n\tlink(scope:TrackedScope) {\n\t\t// Give an opportunity to track some events from outside of this widget.\n\t\tscope.trackEvent = (e:Event, p:CustomEventInit<TrackedAction>) => {\n\t\t\t// Allow events to bubble up.\n\t\t\tif(typeof p.bubbles === \"undefined\") p.bubbles = true;\n\n\t\t\tlet event = null;\n\t\t\tif( p && (p.detail?.open==='qwant' || typeof p.detail?.search==='string') ) {\n\t\t\t\tevent = new CustomEvent( TrackedActionFromWidget.qwant, p );\n\t\t\t}\n\t\t\tif( event && e.currentTarget ) {\n\t\t\t\te.currentTarget.dispatchEvent(event);\n\t\t\t}\n\t\t}\n\t}\n}\n\n/** The qwant widget. */\nfunction DirectiveFactory() {\n\treturn new Directive();\n}\n\n// Preload translations\nnotif().onLangReady().promise.then( lang => {\n\tswitch( lang ) {\n\t\tdefault:\tconf().Platform.idiom.addKeys( require('./i18n/fr.json') ); break;\n\t}\n});\n\n// THIS ANGULAR MODULE WILL BE DYNAMICALLY ADDED TO THE APPLICATION.\n// RESPECT THE NAMING CONVENTION BY EXPORTING THE MODULE NAME :\nexport const odeModuleName = \"odeQwantModule\";\nangular.module( odeModuleName, []).directive( \"odeQwant\", DirectiveFactory );\n"],"names":["restrict","template","link","scope","trackEvent","e","p","bubbles","event","detail","open","search","CustomEvent","TrackedActionFromWidget","qwant","currentTarget","dispatchEvent","notif","onLangReady","promise","then","lang","conf","Platform","idiom","addKeys","odeModuleName","module","directive","Directive"],"sourceRoot":""}
@@ -1,2 +1,2 @@
1
- "use strict";(self.webpackChunkode_ngjs_front=self.webpackChunkode_ngjs_front||[]).push([[306],{4257:(e,t,n)=>{n.d(t,{Z:()=>o});const o='<div class="widget-school"> <div class="widget-body"> <div class="widget-school-header" ng-style="ctrl.getWidgetStyle()"> <div class="d-flex align-items-center"> <div class="me-4"> <a href="/userbook/mon-compte" class="avatar-link" i18n-title="navbar.myaccount" ng-click="trackEvent($event, {detail:{\'open\':\'profile\'} })"> <img data-ng-src="[[ctrl.avatar ? ctrl.avatar+\'?thumbnail=48x48\' : \'\']]" alt="{{ctrl.description.displayName}}"/> </a> </div> <div class="flex-grow-1"> <div class="name">{{ctrl.description.displayName}}</div> <div ng-if="!ctrl.hasManySchools" class="school">{{ctrl.selectedSchool.name}}</div> <div ng-if="ctrl.hasManySchools" class="dropdown"> <div class="school-multiple dropdown-toggle" role="button" id="ddSchoolWidgetSchool" data-bs-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> <a href="" class="text-white">{{ctrl.selectedSchool.name}}</a> </div> <div class="school-choice dropdown-menu" aria-labelledby="ddSchoolWidgetSchool"> <div tabindex="0" role="button" class="dropdown-item" ng-repeat="school in ctrl.description.schools" ng-click="ctrl.onSchoolSelected($index)" ng-keydown="ctrl.onSchoolSelected($index, $event)"> {{school.name}} </div> </div> </div> </div> </div> </div> <div class="btn-group"> <a href="/userbook/annuaire#/search" class="btn btn-third rounded-pill" ng-if="ctrl.isStudent" ng-click="trackEvent($event, {detail:{\'open\':\'student.class\'} })" translate content="school-widget.widget.my.classroom"></a> <a ng-href="{{ctrl.getUrlTeachersOfMyClass()}}" class="btn btn-outline-third rounded-pill" ng-if="ctrl.isStudent" ng-click="trackEvent($event, {detail:{\'open\':\'student.teachers\'} })" translate content="school-widget.widget.my.team"></a> <a ng-href="{{ctrl.getUrlStudentsOfMyClasses()}}" class="btn btn-third rounded-pill" ng-if="ctrl.isTeacher" ng-click="trackEvent($event, {detail:{\'open\':\'teacher.students\'} })" translate content="school-widget.widget.my.classrooms"></a> <a ng-href="{{ctrl.getUrlSchoolTeachers()}}" class="btn btn-outline-third rounded-pill" ng-if="ctrl.isTeacher" ng-click="trackEvent($event, {detail:{\'open\':\'teacher.teachers\'} })" translate content="school-widget.widget.school.team"></a> <a ng-href="{{ctrl.getUrlTeachersOfMyChildren()}}" class="btn btn-third rounded-pill" ng-if="ctrl.isRelative" ng-click="trackEvent($event, {detail:{\'open\':\'relative.teachers\'} })" translate content="school-widget.widget.school.team"></a> <a ng-href="{{ctrl.getUrlSchoolPersonnels()}}" class="btn btn-outline-third rounded-pill" ng-if="ctrl.isRelative" ng-click="trackEvent($event, {detail:{\'open\':\'relative.direction\'} })" translate content="school-widget.widget.school.managers"></a> <a ng-href="{{ctrl.getUrlSchoolPersonnelsAndTeachers()}}" class="btn btn-third rounded-pill" ng-if="ctrl.isPersonnel" ng-click="trackEvent($event, {detail:{\'open\':\'personnel.personnels\'} })" translate content="school-widget.widget.school.personnelAndTeachers"></a> <a ng-href="{{ctrl.getUrlStudents()}}" class="btn btn-outline-third rounded-pill" ng-if="ctrl.isPersonnel" ng-click="trackEvent($event, {detail:{\'open\':\'personnel.students\'} })" translate content="school-widget.widget.students"></a> </div> </div> </div> '},5623:function(e,t,n){var o=this&&this.__awaiter||function(e,t,n,o){return new(n||(n=Promise))((function(r,s){function i(e){try{c(o.next(e))}catch(e){s(e)}}function l(e){try{c(o.throw(e))}catch(e){s(e)}}function c(e){var t;e.done?r(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(i,l)}c((o=o.apply(e,t||[])).next())}))},r=this&&this.__generator||function(e,t){var n,o,r,s,i={label:0,sent:function(){if(1&r[0])throw r[1];return r[1]},trys:[],ops:[]};return s={next:l(0),throw:l(1),return:l(2)},"function"==typeof Symbol&&(s[Symbol.iterator]=function(){return this}),s;function l(s){return function(l){return function(s){if(n)throw new TypeError("Generator is already executing.");for(;i;)try{if(n=1,o&&(r=2&s[0]?o.return:s[0]?o.throw||((r=o.return)&&r.call(o),0):o.next)&&!(r=r.call(o,s[1])).done)return r;switch(o=0,r&&(s=[2&s[0],r.value]),s[0]){case 0:case 1:r=s;break;case 4:return i.label++,{value:s[1],done:!1};case 5:i.label++,o=s[1],s=[0];continue;case 7:s=i.ops.pop(),i.trys.pop();continue;default:if(!(r=i.trys,(r=r.length>0&&r[r.length-1])||6!==s[0]&&2!==s[0])){i=0;continue}if(3===s[0]&&(!r||s[1]>r[0]&&s[1]<r[3])){i.label=s[1];break}if(6===s[0]&&i.label<r[1]){i.label=r[1],r=s;break}if(r&&i.label<r[2]){i.label=r[2],i.ops.push(s);break}r[2]&&i.ops.pop(),i.trys.pop();continue}s=t.call(e,i)}catch(e){s=[6,e],o=0}finally{n=r=0}if(5&s[0])throw s[1];return{value:s[0]?s[1]:void 0,done:!0}}([s,l])}}},s=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.odeModuleName=void 0;var i=s(n(4202)),l=n(5262),c=n(9419),a=function(){function e(e){this.themeHelperSvc=e}return Object.defineProperty(e.prototype,"me",{get:function(){return c.session().user},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"description",{get:function(){return c.session().description},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"avatar",{get:function(){return c.session().avatarUrl},enumerable:!1,configurable:!0}),e.prototype.initialize=function(){var e,t;return o(this,void 0,void 0,(function(){var n,o,s=this;return r(this,(function(r){switch(r.label){case 0:return this._userPref=null===(e=l.WidgetFrameworkFactory.instance().list.find((function(e){return e.platformConf.name===l.WIDGET_NAME.SCHOOL})))||void 0===e?void 0:e.userPref,n=this,[4,this.themeHelperSvc.getBootstrapThemePath()];case 1:return n.themePath=r.sent(),[4,c.notif().onSessionReady().promise];case 2:return r.sent(),o=0,(null===(t=this._userPref)||void 0===t?void 0:t.schoolId)&&i.default.isArray(this.description.schools)&&(o=this.description.schools.findIndex((function(e){var t;return e.id===(null===(t=s._userPref)||void 0===t?void 0:t.schoolId)})),o<0&&(o=0)),this.setSelectedSchool(o),[2]}}))}))},e.prototype.getWidgetStyle=function(){return{"background-image":"url("+this.themePath+"/images/widget-3.png)"}},e.prototype.onSchoolSelected=function(e,t){var n;return(!t||"keydown"===t.type&&(13===t.which||32===t.which))&&(this._userPref&&this.setSelectedSchool(e)&&(this._userPref.schoolId=null===(n=this.selectedSchool)||void 0===n?void 0:n.id,l.WidgetFrameworkFactory.instance().saveUserPrefs()),!0)},e.prototype.setSelectedSchool=function(e){return 0<=e&&e<this.description.schools.length&&this.selectedSchool!==this.description.schools[e]&&(this.selectedSchool=this.description.schools[e],!0)},e.prototype.getDefaultUrl=function(){return"/userbook/annuaire#/search"},e.prototype.getUrlTeachersOfMyClass=function(){var e=this.getDefaultUrl();if(this.me.classes&&this.me.classes.length>0){e+="?filters=groups&profile=Teacher";for(var t=0,n=this.me.classes;t<n.length;t++){e+="&class="+n[t]}}return e},e.prototype.getUrlStudentsOfMyClasses=function(){var e=this.getDefaultUrl()+"?filters=groups&profile=Student";this.selectedSchool&&(e+="&structure="+this.selectedSchool.id);for(var t=0,n=this.me.classes;t<n.length;t++){e+="&class="+n[t]}return e},e.prototype.getUrlSchoolTeachers=function(){return this.selectedSchool?"/userbook/annuaire#/search?filters=groups&structure="+this.selectedSchool.id+"&profile=Teacher":this.getDefaultUrl()},e.prototype.getUrlTeachersOfMyChildren=function(){for(var e=this.getDefaultUrl()+"?filters=groups&profile=Teacher",t=0,n=this.me.classes;t<n.length;t++){e+="&class="+n[t]}return e},e.prototype.getUrlSchoolPersonnels=function(){return this.selectedSchool?"/userbook/annuaire#/search?filters=users&structure="+this.selectedSchool.id+"&profile=Personnel":this.getDefaultUrl()},e.prototype.getUrlSchoolPersonnelsAndTeachers=function(){return this.selectedSchool?"/userbook/annuaire#/search?filters=users&structure="+this.selectedSchool.id+"&profile=Personnel&profile=Teacher":this.getDefaultUrl()},e.prototype.getUrlStudents=function(){var e=this.getDefaultUrl()+"?filters=groups&profile=Student";return this.selectedSchool&&(e+="&structure="+this.selectedSchool.id),e},Object.defineProperty(e.prototype,"hasManySchools",{get:function(){return this.description.schools.length>1},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"isStudent",{get:function(){return"ELEVE"===this.me.type},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"isTeacher",{get:function(){return"ENSEIGNANT"===this.me.type},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"isRelative",{get:function(){return"PERSRELELEVE"===this.me.type},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"isPersonnel",{get:function(){return"PERSEDUCNAT"===this.me.type},enumerable:!1,configurable:!0}),e}(),d=function(){function e(){this.restrict="E",this.template=n(4257).Z,this.controller=["odeThemeHelperService",a],this.controllerAs="ctrl",this.require=["odeSchoolWidget"]}return e.prototype.link=function(e,t,n,s){return o(this,void 0,void 0,(function(){var t;return r(this,(function(n){switch(n.label){case 0:return(t=s?s[0]:null)?[4,t.initialize()]:[2];case 1:return n.sent(),e.$apply(),e.trackEvent=function(e,t){var n;void 0===t.bubbles&&(t.bubbles=!0);var o=null;(null===(n=null==t?void 0:t.detail)||void 0===n?void 0:n.open)&&-1!==["student.class","student.teachers","teacher.students","teacher.teachers","relative.teachers","relative.direction","profile"].indexOf(t.detail.open)&&(o=new CustomEvent(c.TrackedActionFromWidget.school,t)),o&&e.currentTarget&&e.currentTarget.dispatchEvent(o)},[2]}}))}))},e}();c.notif().onLangReady().promise.then((function(e){c.conf().Platform.idiom.addKeys(n(3926))})),t.odeModuleName="odeSchoolWidgetModule",i.default.module(t.odeModuleName,[]).directive("odeSchoolWidget",(function(){return new d}))},3926:e=>{e.exports=JSON.parse('{"school-widget.widget.my.classroom":"Ma classe","school-widget.widget.my.classrooms":"Mes classes","school-widget.widget.my.team":"Mes enseignants","school-widget.widget.school.team":"Équipe enseignante","school-widget.widget.school.managers":"Personnels","school-widget.widget.school.personnelAndTeachers":"Personnels et Enseignants","school-widget.widget.students":"Élèves","school-widget":"Mon réseau"}')}}]);
1
+ "use strict";(self.webpackChunkode_ngjs_front=self.webpackChunkode_ngjs_front||[]).push([[306],{4257:(e,t,n)=>{n.d(t,{Z:()=>o});const o='<div class="widget-school"> <div class="widget-body"> <div class="widget-school-header" ng-style="ctrl.getWidgetStyle()"> <div class="d-flex align-items-center"> <div class="me-16"> <a href="/userbook/mon-compte" class="avatar-link" i18n-title="navbar.myaccount" ng-click="trackEvent($event, {detail:{\'open\':\'profile\'} })"> <img data-ng-src="[[ctrl.avatar ? ctrl.avatar+\'?thumbnail=48x48\' : \'\']]" alt="{{ctrl.description.displayName}}"/> </a> </div> <div class="flex-grow-1"> <div class="name">{{ctrl.description.displayName}}</div> <div ng-if="!ctrl.hasManySchools" class="school">{{ctrl.selectedSchool.name}}</div> <div ng-if="ctrl.hasManySchools" class="dropdown"> <div class="school-multiple dropdown-toggle" role="button" id="ddSchoolWidgetSchool" data-bs-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> <a href="" class="text-white">{{ctrl.selectedSchool.name}}</a> </div> <div class="school-choice dropdown-menu" aria-labelledby="ddSchoolWidgetSchool"> <div tabindex="0" role="button" class="dropdown-item" ng-repeat="school in ctrl.description.schools" ng-click="ctrl.onSchoolSelected($index)" ng-keydown="ctrl.onSchoolSelected($index, $event)"> {{school.name}} </div> </div> </div> </div> </div> </div> <div class="btn-group"> <a href="/userbook/annuaire#/search" class="btn btn-secondary rounded-pill" ng-if="ctrl.isStudent" ng-click="trackEvent($event, {detail:{\'open\':\'student.class\'} })" translate content="school-widget.widget.my.classroom"></a> <a ng-href="{{ctrl.getUrlTeachersOfMyClass()}}" class="btn btn-outline-secondary rounded-pill" ng-if="ctrl.isStudent" ng-click="trackEvent($event, {detail:{\'open\':\'student.teachers\'} })" translate content="school-widget.widget.my.team"></a> <a ng-href="{{ctrl.getUrlStudentsOfMyClasses()}}" class="btn btn-secondary rounded-pill" ng-if="ctrl.isTeacher" ng-click="trackEvent($event, {detail:{\'open\':\'teacher.students\'} })" translate content="school-widget.widget.my.classrooms"></a> <a ng-href="{{ctrl.getUrlSchoolTeachers()}}" class="btn btn-outline-secondary rounded-pill" ng-if="ctrl.isTeacher" ng-click="trackEvent($event, {detail:{\'open\':\'teacher.teachers\'} })" translate content="school-widget.widget.school.team"></a> <a ng-href="{{ctrl.getUrlTeachersOfMyChildren()}}" class="btn btn-secondary rounded-pill" ng-if="ctrl.isRelative" ng-click="trackEvent($event, {detail:{\'open\':\'relative.teachers\'} })" translate content="school-widget.widget.school.team"></a> <a ng-href="{{ctrl.getUrlSchoolPersonnels()}}" class="btn btn-outline-secondary rounded-pill" ng-if="ctrl.isRelative" ng-click="trackEvent($event, {detail:{\'open\':\'relative.direction\'} })" translate content="school-widget.widget.school.managers"></a> <a ng-href="{{ctrl.getUrlSchoolPersonnelsAndTeachers()}}" class="btn btn-secondary rounded-pill" ng-if="ctrl.isPersonnel" ng-click="trackEvent($event, {detail:{\'open\':\'personnel.personnels\'} })" translate content="school-widget.widget.school.personnelAndTeachers"></a> <a ng-href="{{ctrl.getUrlStudents()}}" class="btn btn-outline-secondary rounded-pill" ng-if="ctrl.isPersonnel" ng-click="trackEvent($event, {detail:{\'open\':\'personnel.students\'} })" translate content="school-widget.widget.students"></a> </div> </div> </div> '},5623:function(e,t,n){var o=this&&this.__awaiter||function(e,t,n,o){return new(n||(n=Promise))((function(r,s){function l(e){try{c(o.next(e))}catch(e){s(e)}}function i(e){try{c(o.throw(e))}catch(e){s(e)}}function c(e){var t;e.done?r(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(l,i)}c((o=o.apply(e,t||[])).next())}))},r=this&&this.__generator||function(e,t){var n,o,r,s,l={label:0,sent:function(){if(1&r[0])throw r[1];return r[1]},trys:[],ops:[]};return s={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(s[Symbol.iterator]=function(){return this}),s;function i(s){return function(i){return function(s){if(n)throw new TypeError("Generator is already executing.");for(;l;)try{if(n=1,o&&(r=2&s[0]?o.return:s[0]?o.throw||((r=o.return)&&r.call(o),0):o.next)&&!(r=r.call(o,s[1])).done)return r;switch(o=0,r&&(s=[2&s[0],r.value]),s[0]){case 0:case 1:r=s;break;case 4:return l.label++,{value:s[1],done:!1};case 5:l.label++,o=s[1],s=[0];continue;case 7:s=l.ops.pop(),l.trys.pop();continue;default:if(!(r=l.trys,(r=r.length>0&&r[r.length-1])||6!==s[0]&&2!==s[0])){l=0;continue}if(3===s[0]&&(!r||s[1]>r[0]&&s[1]<r[3])){l.label=s[1];break}if(6===s[0]&&l.label<r[1]){l.label=r[1],r=s;break}if(r&&l.label<r[2]){l.label=r[2],l.ops.push(s);break}r[2]&&l.ops.pop(),l.trys.pop();continue}s=t.call(e,l)}catch(e){s=[6,e],o=0}finally{n=r=0}if(5&s[0])throw s[1];return{value:s[0]?s[1]:void 0,done:!0}}([s,i])}}},s=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.odeModuleName=void 0;var l=s(n(4202)),i=n(5262),c=n(9419),a=function(){function e(e){this.themeHelperSvc=e}return Object.defineProperty(e.prototype,"me",{get:function(){return c.session().user},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"description",{get:function(){return c.session().description},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"avatar",{get:function(){return c.session().avatarUrl},enumerable:!1,configurable:!0}),e.prototype.initialize=function(){var e,t;return o(this,void 0,void 0,(function(){var n,o,s=this;return r(this,(function(r){switch(r.label){case 0:return this._userPref=null===(e=i.WidgetFrameworkFactory.instance().list.find((function(e){return e.platformConf.name===i.WIDGET_NAME.SCHOOL})))||void 0===e?void 0:e.userPref,n=this,[4,this.themeHelperSvc.getBootstrapThemePath()];case 1:return n.themePath=r.sent(),[4,c.notif().onSessionReady().promise];case 2:return r.sent(),o=0,(null===(t=this._userPref)||void 0===t?void 0:t.schoolId)&&l.default.isArray(this.description.schools)&&(o=this.description.schools.findIndex((function(e){var t;return e.id===(null===(t=s._userPref)||void 0===t?void 0:t.schoolId)})),o<0&&(o=0)),this.setSelectedSchool(o),[2]}}))}))},e.prototype.getWidgetStyle=function(){return{"background-image":"url("+this.themePath+"/images/widget-3.png)"}},e.prototype.onSchoolSelected=function(e,t){var n;return(!t||"keydown"===t.type&&(13===t.which||32===t.which))&&(this._userPref&&this.setSelectedSchool(e)&&(this._userPref.schoolId=null===(n=this.selectedSchool)||void 0===n?void 0:n.id,i.WidgetFrameworkFactory.instance().saveUserPrefs()),!0)},e.prototype.setSelectedSchool=function(e){return 0<=e&&e<this.description.schools.length&&this.selectedSchool!==this.description.schools[e]&&(this.selectedSchool=this.description.schools[e],!0)},e.prototype.getDefaultUrl=function(){return"/userbook/annuaire#/search"},e.prototype.getUrlTeachersOfMyClass=function(){var e=this.getDefaultUrl();if(this.me.classes&&this.me.classes.length>0){e+="?filters=groups&profile=Teacher";for(var t=0,n=this.me.classes;t<n.length;t++){e+="&class="+n[t]}}return e},e.prototype.getUrlStudentsOfMyClasses=function(){var e=this.getDefaultUrl()+"?filters=groups&profile=Student";this.selectedSchool&&(e+="&structure="+this.selectedSchool.id);for(var t=0,n=this.me.classes;t<n.length;t++){e+="&class="+n[t]}return e},e.prototype.getUrlSchoolTeachers=function(){return this.selectedSchool?"/userbook/annuaire#/search?filters=groups&structure="+this.selectedSchool.id+"&profile=Teacher":this.getDefaultUrl()},e.prototype.getUrlTeachersOfMyChildren=function(){for(var e=this.getDefaultUrl()+"?filters=groups&profile=Teacher",t=0,n=this.me.classes;t<n.length;t++){e+="&class="+n[t]}return e},e.prototype.getUrlSchoolPersonnels=function(){return this.selectedSchool?"/userbook/annuaire#/search?filters=users&structure="+this.selectedSchool.id+"&profile=Personnel":this.getDefaultUrl()},e.prototype.getUrlSchoolPersonnelsAndTeachers=function(){return this.selectedSchool?"/userbook/annuaire#/search?filters=users&structure="+this.selectedSchool.id+"&profile=Personnel&profile=Teacher":this.getDefaultUrl()},e.prototype.getUrlStudents=function(){var e=this.getDefaultUrl()+"?filters=groups&profile=Student";return this.selectedSchool&&(e+="&structure="+this.selectedSchool.id),e},Object.defineProperty(e.prototype,"hasManySchools",{get:function(){return this.description.schools.length>1},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"isStudent",{get:function(){return"ELEVE"===this.me.type},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"isTeacher",{get:function(){return"ENSEIGNANT"===this.me.type},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"isRelative",{get:function(){return"PERSRELELEVE"===this.me.type},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"isPersonnel",{get:function(){return"PERSEDUCNAT"===this.me.type},enumerable:!1,configurable:!0}),e}(),d=function(){function e(){this.restrict="E",this.template=n(4257).Z,this.controller=["odeThemeHelperService",a],this.controllerAs="ctrl",this.require=["odeSchoolWidget"]}return e.prototype.link=function(e,t,n,s){return o(this,void 0,void 0,(function(){var t;return r(this,(function(n){switch(n.label){case 0:return(t=s?s[0]:null)?[4,t.initialize()]:[2];case 1:return n.sent(),e.$apply(),e.trackEvent=function(e,t){var n;void 0===t.bubbles&&(t.bubbles=!0);var o=null;(null===(n=null==t?void 0:t.detail)||void 0===n?void 0:n.open)&&-1!==["student.class","student.teachers","teacher.students","teacher.teachers","relative.teachers","relative.direction","profile"].indexOf(t.detail.open)&&(o=new CustomEvent(c.TrackedActionFromWidget.school,t)),o&&e.currentTarget&&e.currentTarget.dispatchEvent(o)},[2]}}))}))},e}();c.notif().onLangReady().promise.then((function(e){c.conf().Platform.idiom.addKeys(n(3926))})),t.odeModuleName="odeSchoolWidgetModule",l.default.module(t.odeModuleName,[]).directive("odeSchoolWidget",(function(){return new d}))},3926:e=>{e.exports=JSON.parse('{"school-widget.widget.my.classroom":"Ma classe","school-widget.widget.my.classrooms":"Mes classes","school-widget.widget.my.team":"Mes enseignants","school-widget.widget.school.team":"Équipe enseignante","school-widget.widget.school.managers":"Personnels","school-widget.widget.school.personnelAndTeachers":"Personnels et Enseignants","school-widget.widget.students":"Élèves","school-widget":"Mon réseau"}')}}]);
2
2
  //# sourceMappingURL=school-widget.widget.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"widgets/school-widget/school-widget.widget.js","mappings":"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","sources":["webpack://ode-ngjs-front/./src/ts/widgets/school-widget/school-widget.widget.html","webpack://ode-ngjs-front/./src/ts/widgets/school-widget/school-widget.widget.ts"],"sourcesContent":["// Module\nvar code = \"<div class=\\\"widget-school\\\"> <div class=\\\"widget-body\\\"> <div class=\\\"widget-school-header\\\" ng-style=\\\"ctrl.getWidgetStyle()\\\"> <div class=\\\"d-flex align-items-center\\\"> <div class=\\\"me-4\\\"> <a href=\\\"/userbook/mon-compte\\\" class=\\\"avatar-link\\\" i18n-title=\\\"navbar.myaccount\\\" ng-click=\\\"trackEvent($event, {detail:{'open':'profile'} })\\\"> <img data-ng-src=\\\"[[ctrl.avatar ? ctrl.avatar+'?thumbnail=48x48' : '']]\\\" alt=\\\"{{ctrl.description.displayName}}\\\"/> </a> </div> <div class=\\\"flex-grow-1\\\"> <div class=\\\"name\\\">{{ctrl.description.displayName}}</div> <div ng-if=\\\"!ctrl.hasManySchools\\\" class=\\\"school\\\">{{ctrl.selectedSchool.name}}</div> <div ng-if=\\\"ctrl.hasManySchools\\\" class=\\\"dropdown\\\"> <div class=\\\"school-multiple dropdown-toggle\\\" role=\\\"button\\\" id=\\\"ddSchoolWidgetSchool\\\" data-bs-toggle=\\\"dropdown\\\" aria-haspopup=\\\"true\\\" aria-expanded=\\\"false\\\"> <a href=\\\"\\\" class=\\\"text-white\\\">{{ctrl.selectedSchool.name}}</a> </div> <div class=\\\"school-choice dropdown-menu\\\" aria-labelledby=\\\"ddSchoolWidgetSchool\\\"> <div tabindex=\\\"0\\\" role=\\\"button\\\" class=\\\"dropdown-item\\\" ng-repeat=\\\"school in ctrl.description.schools\\\" ng-click=\\\"ctrl.onSchoolSelected($index)\\\" ng-keydown=\\\"ctrl.onSchoolSelected($index, $event)\\\"> {{school.name}} </div> </div> </div> </div> </div> </div> <div class=\\\"btn-group\\\"> <a href=\\\"/userbook/annuaire#/search\\\" class=\\\"btn btn-third rounded-pill\\\" ng-if=\\\"ctrl.isStudent\\\" ng-click=\\\"trackEvent($event, {detail:{'open':'student.class'} })\\\" translate content=\\\"school-widget.widget.my.classroom\\\"></a> <a ng-href=\\\"{{ctrl.getUrlTeachersOfMyClass()}}\\\" class=\\\"btn btn-outline-third rounded-pill\\\" ng-if=\\\"ctrl.isStudent\\\" ng-click=\\\"trackEvent($event, {detail:{'open':'student.teachers'} })\\\" translate content=\\\"school-widget.widget.my.team\\\"></a> <a ng-href=\\\"{{ctrl.getUrlStudentsOfMyClasses()}}\\\" class=\\\"btn btn-third rounded-pill\\\" ng-if=\\\"ctrl.isTeacher\\\" ng-click=\\\"trackEvent($event, {detail:{'open':'teacher.students'} })\\\" translate content=\\\"school-widget.widget.my.classrooms\\\"></a> <a ng-href=\\\"{{ctrl.getUrlSchoolTeachers()}}\\\" class=\\\"btn btn-outline-third rounded-pill\\\" ng-if=\\\"ctrl.isTeacher\\\" ng-click=\\\"trackEvent($event, {detail:{'open':'teacher.teachers'} })\\\" translate content=\\\"school-widget.widget.school.team\\\"></a> <a ng-href=\\\"{{ctrl.getUrlTeachersOfMyChildren()}}\\\" class=\\\"btn btn-third rounded-pill\\\" ng-if=\\\"ctrl.isRelative\\\" ng-click=\\\"trackEvent($event, {detail:{'open':'relative.teachers'} })\\\" translate content=\\\"school-widget.widget.school.team\\\"></a> <a ng-href=\\\"{{ctrl.getUrlSchoolPersonnels()}}\\\" class=\\\"btn btn-outline-third rounded-pill\\\" ng-if=\\\"ctrl.isRelative\\\" ng-click=\\\"trackEvent($event, {detail:{'open':'relative.direction'} })\\\" translate content=\\\"school-widget.widget.school.managers\\\"></a> <a ng-href=\\\"{{ctrl.getUrlSchoolPersonnelsAndTeachers()}}\\\" class=\\\"btn btn-third rounded-pill\\\" ng-if=\\\"ctrl.isPersonnel\\\" ng-click=\\\"trackEvent($event, {detail:{'open':'personnel.personnels'} })\\\" translate content=\\\"school-widget.widget.school.personnelAndTeachers\\\"></a> <a ng-href=\\\"{{ctrl.getUrlStudents()}}\\\" class=\\\"btn btn-outline-third rounded-pill\\\" ng-if=\\\"ctrl.isPersonnel\\\" ng-click=\\\"trackEvent($event, {detail:{'open':'personnel.students'} })\\\" translate content=\\\"school-widget.widget.students\\\"></a> </div> </div> </div> \";\n// Exports\nexport default code;","import angular, { IAttributes, IController, IDirective } from \"angular\";\nimport { IUserDescription, IUserInfo, School, WidgetFrameworkFactory, WidgetUserPref, WIDGET_NAME } from \"ode-ts-client\";\nimport { conf, notif, session, TrackedScope, TrackedAction, TrackedActionFromWidget } from \"../../utils\";\nimport { ThemeHelperService } from \"../../services\";\n\n/* Controller for the directive */\nclass Controller implements IController {\n\tconstructor( \n\t\tprivate themeHelperSvc:ThemeHelperService\n\t) {}\n\n\tprivate get me():IUserInfo {\n\t\treturn session().user;\n\t}\n\tprotected get description():IUserDescription {\n\t\treturn session().description;\n\t}\n\tprotected get avatar():string {\n\t\treturn session().avatarUrl;\n\t}\n\n\tprivate _userPref?:WidgetUserPref;\n\n\tpublic async initialize() {\n\t\tthis._userPref = WidgetFrameworkFactory.instance().list.find( w => w.platformConf.name===WIDGET_NAME.SCHOOL)?.userPref;\n\t\tthis.themePath = await this.themeHelperSvc.getBootstrapThemePath();\n\t\tawait notif().onSessionReady().promise;\n\n\t\t// #WB-22, memorize the latest school choice\n\t\tlet defaultIndex = 0;\n\t\tif( this._userPref?.schoolId && angular.isArray(this.description.schools) ) {\n\t\t\tdefaultIndex = this.description.schools.findIndex( school => school.id===this._userPref?.schoolId );\n\t\t\tif( defaultIndex < 0 ) {\n\t\t\t\tdefaultIndex = 0;\n\t\t\t}\n\t\t}\n\t\tthis.setSelectedSchool( defaultIndex );\n\t}\n\n\tprivate selectedSchool?:School;\n\tprivate themePath?:string;\n\n\tprotected getWidgetStyle() {\n\t\treturn {\n\t\t\t'background-image': \"url(\"+ this.themePath +\"/images/widget-3.png)\"\n\t\t};\n\t}\n\n\tprotected onSchoolSelected( idx:number, ev?:JQuery.Event ) {\n\t\t// If an event is given, and related to pressing the enter or spacebar key.\n\t\tif( !ev || (ev.type==='keydown' && (ev.which===13 || ev.which===32)) ) {\t\n\t\t\tif( this._userPref && this.setSelectedSchool(idx) ) {\n\t\t\t\t// Selected school changed => #WB-22, memorize the latest school choice\n\t\t\t\tthis._userPref.schoolId = this.selectedSchool?.id;\n\t\t\t\tWidgetFrameworkFactory.instance().saveUserPrefs();\n\t\t\t}\n\t\t\treturn true;\n\t\t}\n\t\treturn false;\n\t}\n\n\tprivate setSelectedSchool( idx:number ):boolean {\n\t\tif( 0 <= idx && idx < this.description.schools.length && this.selectedSchool !== this.description.schools[idx]) {\n\t\t\tthis.selectedSchool = this.description.schools[idx];\n\t\t\treturn true;\n\t\t}\n\t\treturn false;\n\t}\n\n\tprivate getDefaultUrl() {\n\t\treturn \"/userbook/annuaire#/search\";\n\t}\n\t\n\tprotected getUrlTeachersOfMyClass() {\n\t\tlet url = this.getDefaultUrl();\n\t\tif( this.me.classes && this.me.classes.length>0 ) {\n\t\t\turl += \"?filters=groups&profile=Teacher\";\n\t\t\tfor( let clazz of this.me.classes ) {\n\t\t\t\turl += \"&class=\"+clazz;\n\t\t\t}\n\t\t}\n\t\treturn url;\n\t}\n\tprotected getUrlStudentsOfMyClasses() {\n\t\tlet url = this.getDefaultUrl() + \"?filters=groups&profile=Student\";\n\t\tif( this.selectedSchool ) {\n\t\t\turl += \"&structure=\"+this.selectedSchool.id;\n\t\t}\n\t\tfor( let clazz of this.me.classes ) {\n\t\t\turl += \"&class=\"+clazz;\n\t\t}\n\t\treturn url;\n\t}\n\tprotected getUrlSchoolTeachers() {\n\t\tif( this.selectedSchool )\n\t\t\treturn \"/userbook/annuaire#/search?filters=groups&structure=\"+this.selectedSchool.id+\"&profile=Teacher\";\n\t\treturn this.getDefaultUrl();\n\t}\n\tprotected getUrlTeachersOfMyChildren() {\n\t\tlet url = this.getDefaultUrl() + \"?filters=groups&profile=Teacher\";\n\t\tfor( let clazz of this.me.classes ) {\n\t\t\turl += \"&class=\"+clazz;\n\t\t}\n\t\treturn url;\n\t}\n\tprotected getUrlSchoolPersonnels() {\n\t\tif( this.selectedSchool )\n\t\t\treturn \"/userbook/annuaire#/search?filters=users&structure=\"+this.selectedSchool.id+\"&profile=Personnel\";\n\t\treturn this.getDefaultUrl();\n\t}\n\tprotected getUrlSchoolPersonnelsAndTeachers() {\n\t\tif( this.selectedSchool )\n\t\t\treturn \"/userbook/annuaire#/search?filters=users&structure=\"+this.selectedSchool.id+\"&profile=Personnel&profile=Teacher\";\n\t\treturn this.getDefaultUrl();\n\t}\n\tprotected getUrlStudents() { \n\t\tlet url = this.getDefaultUrl() + \"?filters=groups&profile=Student\";\n\t\tif( this.selectedSchool ) {\n\t\t\turl += \"&structure=\"+this.selectedSchool.id;\n\t\t}\n\t\treturn url;\n\t}\n\n\tprotected get hasManySchools() {\n\t\treturn this.description.schools.length > 1;\n\t}\n\n\tprotected get isStudent():boolean {\n\t\treturn this.me.type===\"ELEVE\";\n\t}\n\tprotected get isTeacher():boolean {\n\t\treturn this.me.type===\"ENSEIGNANT\";\n\t}\n\tprotected get isRelative():boolean {\n\t\treturn this.me.type===\"PERSRELELEVE\";\n\t}\n\tprotected get isPersonnel():boolean {\n\t\treturn this.me.type===\"PERSEDUCNAT\";\n\t}\n}\n\n/* Directive */\nclass Directive implements IDirective<TrackedScope,JQLite,IAttributes,IController[]> {\n restrict = 'E';\n\ttemplate = require('./school-widget.widget.html').default;\n\tcontroller = [\"odeThemeHelperService\", Controller];\n\tcontrollerAs = 'ctrl';\n\trequire = ['odeSchoolWidget'];\n\n async link(scope:TrackedScope, elem:JQLite, attrs:IAttributes, controllers?:IController[]) {\n const ctrl:Controller|null = controllers ? controllers[0] as Controller : null;\n\t\tif( ! ctrl ) return;\n\n\t\tawait ctrl.initialize();\n\t\tscope.$apply();\n\n\t\t// Give an opportunity to track some events from outside of this widget.\n\t\tscope.trackEvent = (e:Event, p:CustomEventInit<TrackedAction>) => {\n\t\t\t// Allow events to bubble up.\n\t\t\tif(typeof p.bubbles === \"undefined\") p.bubbles = true;\n\n\t\t\tlet event = null;\n\t\t\tif( p?.detail?.open &&\n\t\t\t\t\t['student.class'\t\t,'student.teachers'\n\t\t\t\t\t,'teacher.students'\t\t,'teacher.teachers'\n\t\t\t\t\t,'relative.teachers'\t,'relative.direction'\n\t\t\t\t\t,'profile'\n\t\t\t\t\t].indexOf(p.detail.open)!==-1 ) {\n\t\t\t\tevent = new CustomEvent( TrackedActionFromWidget.school, p );\n\t\t\t}\n\t\t\tif( event && e.currentTarget ) {\n\t\t\t\te.currentTarget.dispatchEvent(event);\n\t\t\t}\n\t\t}\n\t}\n}\n\n/** The school-widget widget. */\nfunction DirectiveFactory() {\n\treturn new Directive();\n}\n\n// Preload translations\nnotif().onLangReady().promise.then( lang => {\n\tswitch( lang ) {\n\t\tdefault:\tconf().Platform.idiom.addKeys( require('./i18n/fr.json') ); break;\n\t}\n});\n\n// THIS ANGULAR MODULE WILL BE DYNAMICALLY ADDED TO THE APPLICATION.\n// RESPECT THE NAMING CONVENTION BY EXPORTING THE MODULE NAME :\nexport const odeModuleName = \"odeSchoolWidgetModule\";\nangular.module( odeModuleName, []).directive( \"odeSchoolWidget\", DirectiveFactory );\n"],"names":["themeHelperSvc","session","user","description","avatarUrl","initialize","this","_userPref","WidgetFrameworkFactory","instance","list","find","w","platformConf","name","WIDGET_NAME","SCHOOL","userPref","getBootstrapThemePath","themePath","notif","onSessionReady","promise","defaultIndex","schoolId","isArray","schools","findIndex","school","id","setSelectedSchool","getWidgetStyle","onSchoolSelected","idx","ev","type","which","selectedSchool","saveUserPrefs","length","getDefaultUrl","getUrlTeachersOfMyClass","url","me","classes","getUrlStudentsOfMyClasses","getUrlSchoolTeachers","getUrlTeachersOfMyChildren","getUrlSchoolPersonnels","getUrlSchoolPersonnelsAndTeachers","getUrlStudents","restrict","template","controller","Controller","controllerAs","require","link","scope","elem","attrs","controllers","ctrl","$apply","trackEvent","e","p","bubbles","event","detail","open","indexOf","CustomEvent","TrackedActionFromWidget","currentTarget","dispatchEvent","onLangReady","then","lang","conf","Platform","idiom","addKeys","odeModuleName","module","directive","Directive"],"sourceRoot":""}
1
+ {"version":3,"file":"widgets/school-widget/school-widget.widget.js","mappings":"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","sources":["webpack://ode-ngjs-front/./src/ts/widgets/school-widget/school-widget.widget.html","webpack://ode-ngjs-front/./src/ts/widgets/school-widget/school-widget.widget.ts"],"sourcesContent":["// Module\nvar code = \"<div class=\\\"widget-school\\\"> <div class=\\\"widget-body\\\"> <div class=\\\"widget-school-header\\\" ng-style=\\\"ctrl.getWidgetStyle()\\\"> <div class=\\\"d-flex align-items-center\\\"> <div class=\\\"me-16\\\"> <a href=\\\"/userbook/mon-compte\\\" class=\\\"avatar-link\\\" i18n-title=\\\"navbar.myaccount\\\" ng-click=\\\"trackEvent($event, {detail:{'open':'profile'} })\\\"> <img data-ng-src=\\\"[[ctrl.avatar ? ctrl.avatar+'?thumbnail=48x48' : '']]\\\" alt=\\\"{{ctrl.description.displayName}}\\\"/> </a> </div> <div class=\\\"flex-grow-1\\\"> <div class=\\\"name\\\">{{ctrl.description.displayName}}</div> <div ng-if=\\\"!ctrl.hasManySchools\\\" class=\\\"school\\\">{{ctrl.selectedSchool.name}}</div> <div ng-if=\\\"ctrl.hasManySchools\\\" class=\\\"dropdown\\\"> <div class=\\\"school-multiple dropdown-toggle\\\" role=\\\"button\\\" id=\\\"ddSchoolWidgetSchool\\\" data-bs-toggle=\\\"dropdown\\\" aria-haspopup=\\\"true\\\" aria-expanded=\\\"false\\\"> <a href=\\\"\\\" class=\\\"text-white\\\">{{ctrl.selectedSchool.name}}</a> </div> <div class=\\\"school-choice dropdown-menu\\\" aria-labelledby=\\\"ddSchoolWidgetSchool\\\"> <div tabindex=\\\"0\\\" role=\\\"button\\\" class=\\\"dropdown-item\\\" ng-repeat=\\\"school in ctrl.description.schools\\\" ng-click=\\\"ctrl.onSchoolSelected($index)\\\" ng-keydown=\\\"ctrl.onSchoolSelected($index, $event)\\\"> {{school.name}} </div> </div> </div> </div> </div> </div> <div class=\\\"btn-group\\\"> <a href=\\\"/userbook/annuaire#/search\\\" class=\\\"btn btn-secondary rounded-pill\\\" ng-if=\\\"ctrl.isStudent\\\" ng-click=\\\"trackEvent($event, {detail:{'open':'student.class'} })\\\" translate content=\\\"school-widget.widget.my.classroom\\\"></a> <a ng-href=\\\"{{ctrl.getUrlTeachersOfMyClass()}}\\\" class=\\\"btn btn-outline-secondary rounded-pill\\\" ng-if=\\\"ctrl.isStudent\\\" ng-click=\\\"trackEvent($event, {detail:{'open':'student.teachers'} })\\\" translate content=\\\"school-widget.widget.my.team\\\"></a> <a ng-href=\\\"{{ctrl.getUrlStudentsOfMyClasses()}}\\\" class=\\\"btn btn-secondary rounded-pill\\\" ng-if=\\\"ctrl.isTeacher\\\" ng-click=\\\"trackEvent($event, {detail:{'open':'teacher.students'} })\\\" translate content=\\\"school-widget.widget.my.classrooms\\\"></a> <a ng-href=\\\"{{ctrl.getUrlSchoolTeachers()}}\\\" class=\\\"btn btn-outline-secondary rounded-pill\\\" ng-if=\\\"ctrl.isTeacher\\\" ng-click=\\\"trackEvent($event, {detail:{'open':'teacher.teachers'} })\\\" translate content=\\\"school-widget.widget.school.team\\\"></a> <a ng-href=\\\"{{ctrl.getUrlTeachersOfMyChildren()}}\\\" class=\\\"btn btn-secondary rounded-pill\\\" ng-if=\\\"ctrl.isRelative\\\" ng-click=\\\"trackEvent($event, {detail:{'open':'relative.teachers'} })\\\" translate content=\\\"school-widget.widget.school.team\\\"></a> <a ng-href=\\\"{{ctrl.getUrlSchoolPersonnels()}}\\\" class=\\\"btn btn-outline-secondary rounded-pill\\\" ng-if=\\\"ctrl.isRelative\\\" ng-click=\\\"trackEvent($event, {detail:{'open':'relative.direction'} })\\\" translate content=\\\"school-widget.widget.school.managers\\\"></a> <a ng-href=\\\"{{ctrl.getUrlSchoolPersonnelsAndTeachers()}}\\\" class=\\\"btn btn-secondary rounded-pill\\\" ng-if=\\\"ctrl.isPersonnel\\\" ng-click=\\\"trackEvent($event, {detail:{'open':'personnel.personnels'} })\\\" translate content=\\\"school-widget.widget.school.personnelAndTeachers\\\"></a> <a ng-href=\\\"{{ctrl.getUrlStudents()}}\\\" class=\\\"btn btn-outline-secondary rounded-pill\\\" ng-if=\\\"ctrl.isPersonnel\\\" ng-click=\\\"trackEvent($event, {detail:{'open':'personnel.students'} })\\\" translate content=\\\"school-widget.widget.students\\\"></a> </div> </div> </div> \";\n// Exports\nexport default code;","import angular, { IAttributes, IController, IDirective } from \"angular\";\nimport { IUserDescription, IUserInfo, School, WidgetFrameworkFactory, WidgetUserPref, WIDGET_NAME } from \"ode-ts-client\";\nimport { conf, notif, session, TrackedScope, TrackedAction, TrackedActionFromWidget } from \"../../utils\";\nimport { ThemeHelperService } from \"../../services\";\n\n/* Controller for the directive */\nclass Controller implements IController {\n\tconstructor( \n\t\tprivate themeHelperSvc:ThemeHelperService\n\t) {}\n\n\tprivate get me():IUserInfo {\n\t\treturn session().user;\n\t}\n\tprotected get description():IUserDescription {\n\t\treturn session().description;\n\t}\n\tprotected get avatar():string {\n\t\treturn session().avatarUrl;\n\t}\n\n\tprivate _userPref?:WidgetUserPref;\n\n\tpublic async initialize() {\n\t\tthis._userPref = WidgetFrameworkFactory.instance().list.find( w => w.platformConf.name===WIDGET_NAME.SCHOOL)?.userPref;\n\t\tthis.themePath = await this.themeHelperSvc.getBootstrapThemePath();\n\t\tawait notif().onSessionReady().promise;\n\n\t\t// #WB-22, memorize the latest school choice\n\t\tlet defaultIndex = 0;\n\t\tif( this._userPref?.schoolId && angular.isArray(this.description.schools) ) {\n\t\t\tdefaultIndex = this.description.schools.findIndex( school => school.id===this._userPref?.schoolId );\n\t\t\tif( defaultIndex < 0 ) {\n\t\t\t\tdefaultIndex = 0;\n\t\t\t}\n\t\t}\n\t\tthis.setSelectedSchool( defaultIndex );\n\t}\n\n\tprivate selectedSchool?:School;\n\tprivate themePath?:string;\n\n\tprotected getWidgetStyle() {\n\t\treturn {\n\t\t\t'background-image': \"url(\"+ this.themePath +\"/images/widget-3.png)\"\n\t\t};\n\t}\n\n\tprotected onSchoolSelected( idx:number, ev?:JQuery.Event ) {\n\t\t// If an event is given, and related to pressing the enter or spacebar key.\n\t\tif( !ev || (ev.type==='keydown' && (ev.which===13 || ev.which===32)) ) {\t\n\t\t\tif( this._userPref && this.setSelectedSchool(idx) ) {\n\t\t\t\t// Selected school changed => #WB-22, memorize the latest school choice\n\t\t\t\tthis._userPref.schoolId = this.selectedSchool?.id;\n\t\t\t\tWidgetFrameworkFactory.instance().saveUserPrefs();\n\t\t\t}\n\t\t\treturn true;\n\t\t}\n\t\treturn false;\n\t}\n\n\tprivate setSelectedSchool( idx:number ):boolean {\n\t\tif( 0 <= idx && idx < this.description.schools.length && this.selectedSchool !== this.description.schools[idx]) {\n\t\t\tthis.selectedSchool = this.description.schools[idx];\n\t\t\treturn true;\n\t\t}\n\t\treturn false;\n\t}\n\n\tprivate getDefaultUrl() {\n\t\treturn \"/userbook/annuaire#/search\";\n\t}\n\t\n\tprotected getUrlTeachersOfMyClass() {\n\t\tlet url = this.getDefaultUrl();\n\t\tif( this.me.classes && this.me.classes.length>0 ) {\n\t\t\turl += \"?filters=groups&profile=Teacher\";\n\t\t\tfor( let clazz of this.me.classes ) {\n\t\t\t\turl += \"&class=\"+clazz;\n\t\t\t}\n\t\t}\n\t\treturn url;\n\t}\n\tprotected getUrlStudentsOfMyClasses() {\n\t\tlet url = this.getDefaultUrl() + \"?filters=groups&profile=Student\";\n\t\tif( this.selectedSchool ) {\n\t\t\turl += \"&structure=\"+this.selectedSchool.id;\n\t\t}\n\t\tfor( let clazz of this.me.classes ) {\n\t\t\turl += \"&class=\"+clazz;\n\t\t}\n\t\treturn url;\n\t}\n\tprotected getUrlSchoolTeachers() {\n\t\tif( this.selectedSchool )\n\t\t\treturn \"/userbook/annuaire#/search?filters=groups&structure=\"+this.selectedSchool.id+\"&profile=Teacher\";\n\t\treturn this.getDefaultUrl();\n\t}\n\tprotected getUrlTeachersOfMyChildren() {\n\t\tlet url = this.getDefaultUrl() + \"?filters=groups&profile=Teacher\";\n\t\tfor( let clazz of this.me.classes ) {\n\t\t\turl += \"&class=\"+clazz;\n\t\t}\n\t\treturn url;\n\t}\n\tprotected getUrlSchoolPersonnels() {\n\t\tif( this.selectedSchool )\n\t\t\treturn \"/userbook/annuaire#/search?filters=users&structure=\"+this.selectedSchool.id+\"&profile=Personnel\";\n\t\treturn this.getDefaultUrl();\n\t}\n\tprotected getUrlSchoolPersonnelsAndTeachers() {\n\t\tif( this.selectedSchool )\n\t\t\treturn \"/userbook/annuaire#/search?filters=users&structure=\"+this.selectedSchool.id+\"&profile=Personnel&profile=Teacher\";\n\t\treturn this.getDefaultUrl();\n\t}\n\tprotected getUrlStudents() { \n\t\tlet url = this.getDefaultUrl() + \"?filters=groups&profile=Student\";\n\t\tif( this.selectedSchool ) {\n\t\t\turl += \"&structure=\"+this.selectedSchool.id;\n\t\t}\n\t\treturn url;\n\t}\n\n\tprotected get hasManySchools() {\n\t\treturn this.description.schools.length > 1;\n\t}\n\n\tprotected get isStudent():boolean {\n\t\treturn this.me.type===\"ELEVE\";\n\t}\n\tprotected get isTeacher():boolean {\n\t\treturn this.me.type===\"ENSEIGNANT\";\n\t}\n\tprotected get isRelative():boolean {\n\t\treturn this.me.type===\"PERSRELELEVE\";\n\t}\n\tprotected get isPersonnel():boolean {\n\t\treturn this.me.type===\"PERSEDUCNAT\";\n\t}\n}\n\n/* Directive */\nclass Directive implements IDirective<TrackedScope,JQLite,IAttributes,IController[]> {\n restrict = 'E';\n\ttemplate = require('./school-widget.widget.html').default;\n\tcontroller = [\"odeThemeHelperService\", Controller];\n\tcontrollerAs = 'ctrl';\n\trequire = ['odeSchoolWidget'];\n\n async link(scope:TrackedScope, elem:JQLite, attrs:IAttributes, controllers?:IController[]) {\n const ctrl:Controller|null = controllers ? controllers[0] as Controller : null;\n\t\tif( ! ctrl ) return;\n\n\t\tawait ctrl.initialize();\n\t\tscope.$apply();\n\n\t\t// Give an opportunity to track some events from outside of this widget.\n\t\tscope.trackEvent = (e:Event, p:CustomEventInit<TrackedAction>) => {\n\t\t\t// Allow events to bubble up.\n\t\t\tif(typeof p.bubbles === \"undefined\") p.bubbles = true;\n\n\t\t\tlet event = null;\n\t\t\tif( p?.detail?.open &&\n\t\t\t\t\t['student.class'\t\t,'student.teachers'\n\t\t\t\t\t,'teacher.students'\t\t,'teacher.teachers'\n\t\t\t\t\t,'relative.teachers'\t,'relative.direction'\n\t\t\t\t\t,'profile'\n\t\t\t\t\t].indexOf(p.detail.open)!==-1 ) {\n\t\t\t\tevent = new CustomEvent( TrackedActionFromWidget.school, p );\n\t\t\t}\n\t\t\tif( event && e.currentTarget ) {\n\t\t\t\te.currentTarget.dispatchEvent(event);\n\t\t\t}\n\t\t}\n\t}\n}\n\n/** The school-widget widget. */\nfunction DirectiveFactory() {\n\treturn new Directive();\n}\n\n// Preload translations\nnotif().onLangReady().promise.then( lang => {\n\tswitch( lang ) {\n\t\tdefault:\tconf().Platform.idiom.addKeys( require('./i18n/fr.json') ); break;\n\t}\n});\n\n// THIS ANGULAR MODULE WILL BE DYNAMICALLY ADDED TO THE APPLICATION.\n// RESPECT THE NAMING CONVENTION BY EXPORTING THE MODULE NAME :\nexport const odeModuleName = \"odeSchoolWidgetModule\";\nangular.module( odeModuleName, []).directive( \"odeSchoolWidget\", DirectiveFactory );\n"],"names":["themeHelperSvc","session","user","description","avatarUrl","initialize","this","_userPref","WidgetFrameworkFactory","instance","list","find","w","platformConf","name","WIDGET_NAME","SCHOOL","userPref","getBootstrapThemePath","themePath","notif","onSessionReady","promise","defaultIndex","schoolId","isArray","schools","findIndex","school","id","setSelectedSchool","getWidgetStyle","onSchoolSelected","idx","ev","type","which","selectedSchool","saveUserPrefs","length","getDefaultUrl","getUrlTeachersOfMyClass","url","me","classes","getUrlStudentsOfMyClasses","getUrlSchoolTeachers","getUrlTeachersOfMyChildren","getUrlSchoolPersonnels","getUrlSchoolPersonnelsAndTeachers","getUrlStudents","restrict","template","controller","Controller","controllerAs","require","link","scope","elem","attrs","controllers","ctrl","$apply","trackEvent","e","p","bubbles","event","detail","open","indexOf","CustomEvent","TrackedActionFromWidget","currentTarget","dispatchEvent","onLangReady","then","lang","conf","Platform","idiom","addKeys","odeModuleName","module","directive","Directive"],"sourceRoot":""}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "ode-ngjs-front",
3
- "version": "1.2.7-develop-b2school.202306201444",
3
+ "version": "1.3.0-develop-pedago.202308021745",
4
4
  "description": "Open Digital Education Frontend Framework",
5
5
  "main": "dist/ts/index.js",
6
6
  "types": "dist/ts/index.d.ts",
@@ -51,7 +51,7 @@
51
51
  "karma-chrome-launcher": "^3.1.0",
52
52
  "karma-jasmine": "^4.0.1",
53
53
  "moment-locales-webpack-plugin": "~1.2.0",
54
- "ode-ts-client": "develop-b2school",
54
+ "ode-ts-client": "1.2.0",
55
55
  "terser-webpack-plugin": "5.1.4",
56
56
  "ts-loader": "^8.0.18",
57
57
  "typescript": "4.2.2",
@@ -1,127 +0,0 @@
1
- <div class="share temp">
2
- <div class="line">
3
- <form name="sharePanelForm">
4
- <div>
5
- <button class="panel-button right-magnet" ng-click="ctrl.share()" ng-disabled="ctrl.isSubmitDisabled()">
6
- <i18n>share</i18n>
7
- </button>
8
- <div class="block" ng-if="ctrl.varyingRights">
9
- <div class="warning">
10
- <span class="no-style" translate content="[[ctrl.varyingRightsI18nKey]]"></span>
11
- </div>
12
- </div>
13
- </div>
14
-
15
- <div class="groups-list">
16
- <div>
17
- <ng-include src="ctrl.shareTable"></ng-include>
18
- </div>
19
-
20
- <div class="flex-row justify-between align-center">
21
- <div class="saveSharebookmark">
22
- <div class="flex-row align-center"
23
- ng-if="ctrl.display.showSaveSharebookmarkInput === false && ctrl.display.sharebookmarkSaved === false && ctrl.sharingModel.edited.length > 0"
24
- workflow="directory.allowSharebookmarks">
25
- <a class="hover-icon" ng-click="ctrl.display.showSaveSharebookmarkInput = true">
26
- <i class="add-favorite cell"></i> <i18n>share.save.sharebookmark</i18n>
27
- </a>
28
- </div>
29
- <div class="flex-row" ng-if="ctrl.display.showSaveSharebookmarkInput === true && ctrl.display.sharebookmarkSaved === false"
30
- workflow="directory.allowSharebookmarks">
31
- <input class="cell"
32
- type="text"
33
- ng-model="ctrl.newSharebookmarkName"
34
- i18n-placeholder="share.mysharebookmark"
35
- required
36
- ng-minlength="1">
37
- <a class="button is-light uppercase"
38
- ng-click="ctrl.createSharebookmark(newSharebookmarkName)"
39
- ng-disabled="!ctrl.newSharebookmarkName || ctrl.sharingModel.edited.length < 1">
40
- <i18n>ok</i18n>
41
- </a>
42
- </div>
43
- <div ng-if="ctrl.display.sharebookmarkSaved === true" workflow="directory.allowSharebookmarks">
44
- <span class="italic-text saved-in"><i18n>share.save.sharebookmark.in</i18n></span>
45
- <a href="/userbook/annuaire#/search" target="_blank" rel="noopener"><i18n>share.mysharebookmarks</i18n></a>
46
- </div>
47
- </div>
48
-
49
- <a ng-click="ctrl.displayMore()"
50
- ng-if="ctrl.canShowMore()"
51
- class="display-more">
52
- <i18n>share.more</i18n>
53
- </a>
54
- </div>
55
- </div>
56
- </form>
57
- </div>
58
-
59
- <div class="bottom-spacing-twice">
60
- <div class="flex-row align-center">
61
- <h2 class= "size-auto">
62
- <span ng-if="!ctrl.display.workflowAllowSharebookmarks || ctrl.display.workflowAllowSharebookmarks == false">[[ctrl.translate('share.search.title')]]</span>
63
- <span workflow="directory.allowSharebookmarks">[[ctrl.translate('share.search.sharebookmark.title')]]</span>
64
- </h2>
65
- <span class="tipbox up" workflow="directory.allowSharebookmarks">
66
- <div>
67
- <i class="help sticker square-medium"></i>
68
- </div>
69
- <div class="tipbox-content top">
70
- <span class="small-text">
71
- <i18n>share.tip.addFavorite</i18n>
72
- </span>
73
- </div>
74
- </span>
75
- </div>
76
-
77
- <search-user class="twelve cell"
78
- ng-model="ctrl.search"
79
- clear-list="ctrl.clearSearch()"
80
- on-send="ctrl.findUserOrGroup()"
81
- search-track="ctrl.display.search">
82
- </search-user>
83
- <div class="found-users-list">
84
- <div ng-repeat="item in ctrl.found | orderBy:[typeSort, 'name', 'username'] | limitTo:ctrl.maxResults" class="autocomplete temp">
85
- <div ng-click="ctrl.addEdit(item)" class="">
86
- <a class="cell right-spacing" ng-class="{sharebookmark: item.type === 'sharebookmark'}">
87
- <i class="add-favorite cell" ng-if="item.type === 'sharebookmark'"></i>
88
- <!-- group or sharebookmark name -->
89
- <span ng-if="item.name">[[item.name]]</span>
90
- <!-- user displayName -->
91
- <span ng-if="item.username">[[item.username]]</span>
92
- </a>
93
- <!-- structureName for groups -->
94
- <em ng-if="item.structureName" class="low-importance">[[item.structureName]]</em>
95
- <!-- profile for users -->
96
- <em ng-if="item.profile" class="low-importance">[[ctrl.translate(item.profile)]]</em>
97
- </div>
98
- </div>
99
- <div class="" ng-if="ctrl.found.length === 0 && !ctrl.display.search.processing">
100
- <div class="spacer-small"></div>
101
- <label class="low-importance medium-importance italic-text" ng-if="ctrl.search.length >= 3" user-role="ADMIN_LOCAL">
102
- <i18n>portal.no.result</i18n>
103
- </label>
104
- <label class="low-importance medium-importance italic-text" ng-if="ctrl.search.length" user-missing-role="ADMIN_LOCAL">
105
- <i18n>portal.no.result</i18n>
106
- </label>
107
- </div>
108
- <div class="">
109
- <a ng-click="ctrl.addResults()" ng-if="ctrl.found.length > ctrl.maxResults" class="right-magnet reduce-block-four">
110
- <i18n>seemore</i18n>
111
- </a>
112
- </div>
113
- </div>
114
- </div>
115
- </div>
116
-
117
- <div ng-show="ctrl.display.showCloseConfirmation === true">
118
- <h1><i18n>sharepanel.close.title</i18n></h1>
119
- <div>
120
- <p><i18n>sharepanel.close.explanation</i18n></p>
121
- <p><i18n>sharepanel.close.confirmation</i18n></p>
122
- </div>
123
- <div class="">
124
- <button ng-click="closePanel()" class="right-magnet"><i18n>sharepanel.close.confirm</i18n></button>
125
- <button ng-click="revertClose()" class="right-magnet cancel"><i18n>cancel</i18n></button>
126
- </div>
127
- </div>