@3t-transform/threeteeui 0.0.6 → 0.0.7

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 (101) hide show
  1. package/dist/cjs/{index-8a7479e4.js → index-253ca97c.js} +239 -415
  2. package/dist/cjs/loader.cjs.js +4 -3
  3. package/dist/cjs/tttx-button.cjs.entry.js +28 -0
  4. package/dist/cjs/tttx-checkbox.cjs.entry.js +28 -0
  5. package/dist/cjs/tttx-form.cjs.entry.js +58 -0
  6. package/dist/cjs/tttx-single-input.cjs.entry.js +44 -0
  7. package/dist/cjs/tttx-text-box.cjs.entry.js +38 -0
  8. package/dist/cjs/tttx.cjs.js +7 -3
  9. package/dist/collection/collection-manifest.json +7 -5
  10. package/dist/collection/components/atoms/tttx-button/tttx-button.css +61 -0
  11. package/dist/collection/components/atoms/tttx-button/tttx-button.js +93 -0
  12. package/dist/collection/components/atoms/tttx-button/tttx-button.stories.js +30 -0
  13. package/dist/collection/components/atoms/tttx-single-input/tttx-single-input.css +142 -0
  14. package/dist/collection/components/atoms/tttx-single-input/tttx-single-input.js +259 -0
  15. package/dist/collection/components/atoms/tttx-single-input/tttx-single-input.stories.js +92 -0
  16. package/dist/collection/components/atoms/tttx-text-box/tttx-text-box.css +142 -0
  17. package/dist/collection/components/atoms/tttx-text-box/tttx-text-box.js +150 -0
  18. package/dist/collection/components/atoms/tttx-text-box/tttx-text-box.stories.js +17 -0
  19. package/dist/collection/components/atoms/ttx-checkbox/tttx-checkbox.css +138 -0
  20. package/dist/collection/components/atoms/ttx-checkbox/tttx-checkbox.js +101 -0
  21. package/dist/collection/components/atoms/ttx-checkbox/tttx-checkbox.stories.js +13 -0
  22. package/dist/collection/components/molecules/tttx-form/tttx-form.js +109 -0
  23. package/dist/collection/components/molecules/tttx-form/tttx-form.stories.js +37 -0
  24. package/dist/collection/icons.js +2838 -0
  25. package/dist/components/index.d.ts +14 -3
  26. package/dist/components/index.js +6 -4
  27. package/dist/components/{tttx-page.d.ts → tttx-button.d.ts} +4 -4
  28. package/dist/components/tttx-button.js +45 -0
  29. package/dist/components/{tttx-worksheet.d.ts → tttx-checkbox.d.ts} +4 -4
  30. package/dist/components/tttx-checkbox.js +46 -0
  31. package/dist/components/{tttx-icon.d.ts → tttx-form.d.ts} +4 -4
  32. package/dist/components/tttx-form.js +75 -0
  33. package/dist/components/tttx-single-input.d.ts +11 -0
  34. package/dist/components/tttx-single-input.js +71 -0
  35. package/dist/components/tttx-text-box.d.ts +11 -0
  36. package/dist/components/tttx-text-box.js +59 -0
  37. package/dist/esm/{index-854ff56f.js → index-fcca6c58.js} +237 -416
  38. package/dist/esm/loader.js +4 -3
  39. package/dist/esm/polyfills/css-shim.js +1 -1
  40. package/dist/esm/tttx-button.entry.js +24 -0
  41. package/dist/esm/tttx-checkbox.entry.js +24 -0
  42. package/dist/esm/tttx-form.entry.js +54 -0
  43. package/dist/esm/tttx-single-input.entry.js +40 -0
  44. package/dist/esm/tttx-text-box.entry.js +34 -0
  45. package/dist/esm/tttx.js +4 -3
  46. package/dist/tttx/p-05d7d002.entry.js +1 -0
  47. package/dist/tttx/p-40709c59.entry.js +1 -0
  48. package/dist/tttx/p-64703252.entry.js +1 -0
  49. package/dist/tttx/p-8d1f2e5c.entry.js +1 -0
  50. package/dist/tttx/p-9bf836ed.entry.js +1 -0
  51. package/dist/tttx/p-a7b95fd2.js +2 -0
  52. package/dist/tttx/tttx.esm.js +1 -1
  53. package/dist/types/components/atoms/tttx-button/tttx-button.d.ts +9 -0
  54. package/dist/types/components/atoms/tttx-button/tttx-button.stories.d.ts +20 -0
  55. package/dist/types/components/atoms/tttx-single-input/tttx-single-input.d.ts +20 -0
  56. package/dist/types/components/atoms/tttx-single-input/tttx-single-input.stories.d.ts +27 -0
  57. package/dist/types/components/atoms/tttx-text-box/tttx-text-box.d.ts +14 -0
  58. package/dist/types/components/atoms/tttx-text-box/tttx-text-box.stories.d.ts +6 -0
  59. package/dist/types/components/atoms/ttx-checkbox/tttx-checkbox.d.ts +9 -0
  60. package/dist/types/components/atoms/ttx-checkbox/tttx-checkbox.stories.d.ts +6 -0
  61. package/dist/types/components/molecules/tttx-form/tttx-form.d.ts +11 -0
  62. package/dist/types/components/molecules/tttx-form/tttx-form.stories.d.ts +6 -0
  63. package/dist/types/components.d.ts +128 -51
  64. package/dist/types/icons.d.ts +2 -0
  65. package/dist/types/stencil-public-runtime.d.ts +59 -3
  66. package/loader/index.d.ts +9 -0
  67. package/package.json +58 -59
  68. package/readme.md +1 -6
  69. package/dist/cjs/toolbar-656be6e6.js +0 -34259
  70. package/dist/cjs/tttx-icon.cjs.entry.js +0 -21
  71. package/dist/cjs/tttx-page.cjs.entry.js +0 -927
  72. package/dist/cjs/tttx-worksheet.cjs.entry.js +0 -47
  73. package/dist/collection/components/components/tttx-icon/tttx-icon.css +0 -89
  74. package/dist/collection/components/components/tttx-icon/tttx-icon.js +0 -59
  75. package/dist/collection/components/components/tttx-icon/tttx-icon.stories.js +0 -40
  76. package/dist/collection/components/patterns/tttx-page/tttx-page.css +0 -162
  77. package/dist/collection/components/patterns/tttx-page/tttx-page.js +0 -213
  78. package/dist/collection/components/patterns/tttx-page/tttx-page.stories.js +0 -80
  79. package/dist/collection/components/patterns/tttx-worksheet/tttx-worksheet.css +0 -134
  80. package/dist/collection/components/patterns/tttx-worksheet/tttx-worksheet.js +0 -70
  81. package/dist/collection/components/patterns/tttx-worksheet/tttx-worksheet.stories.js +0 -44
  82. package/dist/components/tttx-icon.js +0 -37
  83. package/dist/components/tttx-page.js +0 -953
  84. package/dist/components/tttx-worksheet.js +0 -6
  85. package/dist/components/tttx-worksheet2.js +0 -34288
  86. package/dist/esm/toolbar-cede4385.js +0 -34231
  87. package/dist/esm/tttx-icon.entry.js +0 -17
  88. package/dist/esm/tttx-page.entry.js +0 -923
  89. package/dist/esm/tttx-worksheet.entry.js +0 -43
  90. package/dist/tttx/p-4b57de2e.entry.js +0 -1
  91. package/dist/tttx/p-61f78304.entry.js +0 -1
  92. package/dist/tttx/p-7244abd4.entry.js +0 -1
  93. package/dist/tttx/p-d038fe18.js +0 -1
  94. package/dist/tttx/p-ddfeb0ba.js +0 -2
  95. package/dist/tttx/tttx.css +0 -1
  96. package/dist/types/components/components/tttx-icon/tttx-icon.d.ts +0 -5
  97. package/dist/types/components/components/tttx-icon/tttx-icon.stories.d.ts +0 -24
  98. package/dist/types/components/patterns/tttx-page/tttx-page.d.ts +0 -21
  99. package/dist/types/components/patterns/tttx-page/tttx-page.stories.d.ts +0 -48
  100. package/dist/types/components/patterns/tttx-worksheet/tttx-worksheet.d.ts +0 -9
  101. package/dist/types/components/patterns/tttx-worksheet/tttx-worksheet.stories.d.ts +0 -23
@@ -1,923 +0,0 @@
1
- import { r as registerInstance, h, H as Host } from './index-854ff56f.js';
2
- import { C as CollectionWidget, B as BindableTemplate, a as Button, e as extend, i as isFunction, $, W as Widget, b as isDefined, r as registerComponent, h as hasWindow, g as getOuterWidth, m as messageLocalization, F as FunctionTemplate, L as ListSearch, D as DataSource, A as ArrayStore, c as compileGetter, n as noop, d as Deferred, G as Guid, f as getPublicElement, P as Popup, j as isPlainObject, k as ensureDefined, l as DataHelperMixin, o as getImageContainer, T as Toolbar } from './toolbar-cede4385.js';
3
-
4
- /**
5
- * DevExtreme (esm/ui/button_group.js)
6
- * Version: 22.1.6
7
- * Build date: Tue Oct 18 2022
8
- *
9
- * Copyright (c) 2012 - 2022 Developer Express Inc. ALL RIGHTS RESERVED
10
- * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
11
- */
12
- var BUTTON_GROUP_CLASS = "dx-buttongroup";
13
- var BUTTON_GROUP_WRAPPER_CLASS = BUTTON_GROUP_CLASS + "-wrapper";
14
- var BUTTON_GROUP_ITEM_CLASS = BUTTON_GROUP_CLASS + "-item";
15
- var BUTTON_GROUP_FIRST_ITEM_CLASS = BUTTON_GROUP_CLASS + "-first-item";
16
- var BUTTON_GROUP_LAST_ITEM_CLASS = BUTTON_GROUP_CLASS + "-last-item";
17
- var BUTTON_GROUP_ITEM_HAS_WIDTH = BUTTON_GROUP_ITEM_CLASS + "-has-width";
18
- var SHAPE_STANDARD_CLASS = "dx-shape-standard";
19
- var ButtonCollection = CollectionWidget.inherit({
20
- _initTemplates() {
21
- this.callBase();
22
- this._templateManager.addDefaultTemplates({
23
- item: new BindableTemplate(($container, data, model) => {
24
- this._prepareItemStyles($container);
25
- var template = this.option("buttonTemplate");
26
- this._createComponent($container, Button, extend({}, model, data, this._getBasicButtonOptions(), {
27
- _templateData: this._hasCustomTemplate(template) ? model : {},
28
- template: model.template || template
29
- }));
30
- }, ["text", "type", "icon", "disabled", "visible", "hint"], this.option("integrationOptions.watchMethod"))
31
- });
32
- },
33
- _getBasicButtonOptions() {
34
- return {
35
- focusStateEnabled: false,
36
- onClick: null,
37
- hoverStateEnabled: this.option("hoverStateEnabled"),
38
- activeStateEnabled: this.option("activeStateEnabled"),
39
- stylingMode: this.option("stylingMode")
40
- }
41
- },
42
- _getDefaultOptions: function() {
43
- return extend(this.callBase(), {
44
- itemTemplateProperty: null
45
- })
46
- },
47
- _hasCustomTemplate(template) {
48
- return isFunction(template) || this.option("integrationOptions.templates")[template]
49
- },
50
- _prepareItemStyles($item) {
51
- var itemIndex = $item.data("dxItemIndex");
52
- 0 === itemIndex && $item.addClass(BUTTON_GROUP_FIRST_ITEM_CLASS);
53
- var items = this.option("items");
54
- items && itemIndex === items.length - 1 && $item.addClass(BUTTON_GROUP_LAST_ITEM_CLASS);
55
- $item.addClass(SHAPE_STANDARD_CLASS);
56
- },
57
- _renderItemContent(args) {
58
- args.container = $(args.container).parent();
59
- return this.callBase(args)
60
- },
61
- _renderItemContentByNode: function(args, $node) {
62
- args.container = $(args.container.children().first());
63
- return this.callBase(args, $node)
64
- },
65
- _focusTarget() {
66
- return this.$element().parent()
67
- },
68
- _keyboardEventBindingTarget() {
69
- return this._focusTarget()
70
- },
71
- _refreshContent() {
72
- this._prepareContent();
73
- this._renderContent();
74
- },
75
- _itemClass: () => BUTTON_GROUP_ITEM_CLASS,
76
- _itemSelectHandler: function(e) {
77
- if ("single" === this.option("selectionMode") && this.isItemSelected(e.currentTarget)) {
78
- return
79
- }
80
- this.callBase(e);
81
- }
82
- });
83
- var ButtonGroup = Widget.inherit({
84
- _getDefaultOptions() {
85
- return extend(this.callBase(), {
86
- hoverStateEnabled: true,
87
- focusStateEnabled: true,
88
- selectionMode: "single",
89
- selectedItems: [],
90
- selectedItemKeys: [],
91
- stylingMode: "contained",
92
- keyExpr: "text",
93
- items: [],
94
- buttonTemplate: "content",
95
- onSelectionChanged: null,
96
- onItemClick: null
97
- })
98
- },
99
- _init() {
100
- this.callBase();
101
- this._createItemClickAction();
102
- },
103
- _createItemClickAction() {
104
- this._itemClickAction = this._createActionByOption("onItemClick");
105
- },
106
- _initMarkup() {
107
- this.setAria("role", "group");
108
- this.$element().addClass(BUTTON_GROUP_CLASS);
109
- this._renderButtons();
110
- this._syncSelectionOptions();
111
- this.callBase();
112
- },
113
- _fireSelectionChangeEvent: function(addedItems, removedItems) {
114
- this._createActionByOption("onSelectionChanged", {
115
- excludeValidators: ["disabled", "readOnly"]
116
- })({
117
- addedItems: addedItems,
118
- removedItems: removedItems
119
- });
120
- },
121
- _renderButtons() {
122
- var $buttons = $("<div>").addClass(BUTTON_GROUP_WRAPPER_CLASS).appendTo(this.$element());
123
- var selectedItems = this.option("selectedItems");
124
- var options = {
125
- selectionMode: this.option("selectionMode"),
126
- items: this.option("items"),
127
- keyExpr: this.option("keyExpr"),
128
- buttonTemplate: this.option("buttonTemplate"),
129
- scrollingEnabled: false,
130
- selectedItemKeys: this.option("selectedItemKeys"),
131
- focusStateEnabled: this.option("focusStateEnabled"),
132
- hoverStateEnabled: this.option("hoverStateEnabled"),
133
- activeStateEnabled: this.option("activeStateEnabled"),
134
- stylingMode: this.option("stylingMode"),
135
- accessKey: this.option("accessKey"),
136
- tabIndex: this.option("tabIndex"),
137
- noDataText: "",
138
- selectionRequired: false,
139
- onItemRendered: e => {
140
- var width = this.option("width");
141
- isDefined(width) && $(e.itemElement).addClass(BUTTON_GROUP_ITEM_HAS_WIDTH);
142
- },
143
- onSelectionChanged: e => {
144
- this._syncSelectionOptions();
145
- this._fireSelectionChangeEvent(e.addedItems, e.removedItems);
146
- },
147
- onItemClick: e => {
148
- this._itemClickAction(e);
149
- }
150
- };
151
- if (isDefined(selectedItems) && selectedItems.length) {
152
- options.selectedItems = selectedItems;
153
- }
154
- this._buttonsCollection = this._createComponent($buttons, ButtonCollection, options);
155
- },
156
- _syncSelectionOptions() {
157
- this._setOptionWithoutOptionChange("selectedItems", this._buttonsCollection.option("selectedItems"));
158
- this._setOptionWithoutOptionChange("selectedItemKeys", this._buttonsCollection.option("selectedItemKeys"));
159
- },
160
- _optionChanged(args) {
161
- switch (args.name) {
162
- case "stylingMode":
163
- case "selectionMode":
164
- case "keyExpr":
165
- case "buttonTemplate":
166
- case "items":
167
- case "activeStateEnabled":
168
- case "focusStateEnabled":
169
- case "hoverStateEnabled":
170
- case "tabIndex":
171
- this._invalidate();
172
- break;
173
- case "selectedItemKeys":
174
- case "selectedItems":
175
- this._buttonsCollection.option(args.name, args.value);
176
- break;
177
- case "onItemClick":
178
- this._createItemClickAction();
179
- break;
180
- case "onSelectionChanged":
181
- break;
182
- case "width":
183
- this.callBase(args);
184
- this._buttonsCollection.itemElements().toggleClass(BUTTON_GROUP_ITEM_HAS_WIDTH, !!args.value);
185
- break;
186
- default:
187
- this.callBase(args);
188
- }
189
- }
190
- });
191
- registerComponent("dxButtonGroup", ButtonGroup);
192
-
193
- /**
194
- * DevExtreme (esm/ui/drop_down_editor/utils.js)
195
- * Version: 22.1.6
196
- * Build date: Tue Oct 18 2022
197
- *
198
- * Copyright (c) 2012 - 2022 Developer Express Inc. ALL RIGHTS RESERVED
199
- * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
200
- */
201
- var getElementWidth = function($element) {
202
- if (hasWindow()) {
203
- return getOuterWidth($element)
204
- }
205
- };
206
- var getSizeValue = function(size) {
207
- if (null === size) {
208
- size = void 0;
209
- }
210
- if ("function" === typeof size) {
211
- size = size();
212
- }
213
- return size
214
- };
215
-
216
- /**
217
- * DevExtreme (esm/ui/drop_down_button.js)
218
- * Version: 22.1.6
219
- * Build date: Tue Oct 18 2022
220
- *
221
- * Copyright (c) 2012 - 2022 Developer Express Inc. ALL RIGHTS RESERVED
222
- * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
223
- */
224
- var DROP_DOWN_BUTTON_CLASS = "dx-dropdownbutton";
225
- var DROP_DOWN_BUTTON_CONTENT = "dx-dropdownbutton-content";
226
- var DROP_DOWN_BUTTON_ACTION_CLASS = "dx-dropdownbutton-action";
227
- var DROP_DOWN_BUTTON_TOGGLE_CLASS = "dx-dropdownbutton-toggle";
228
- var DROP_DOWN_BUTTON_HAS_ARROW_CLASS = "dx-dropdownbutton-has-arrow";
229
- var DROP_DOWN_BUTTON_POPUP_WRAPPER_CLASS = "dx-dropdownbutton-popup-wrapper";
230
- var DROP_DOWN_EDITOR_OVERLAY_CLASS = "dx-dropdowneditor-overlay";
231
- var DX_BUTTON_TEXT_CLASS = "dx-button-text";
232
- var DX_ICON_RIGHT_CLASS = "dx-icon-right";
233
- var DropDownButton = Widget.inherit({
234
- _getDefaultOptions() {
235
- return extend(this.callBase(), {
236
- itemTemplate: "item",
237
- keyExpr: "this",
238
- displayExpr: void 0,
239
- selectedItem: null,
240
- selectedItemKey: null,
241
- stylingMode: "outlined",
242
- deferRendering: true,
243
- noDataText: messageLocalization.format("dxCollectionWidget-noDataText"),
244
- useSelectMode: false,
245
- splitButton: false,
246
- showArrowIcon: true,
247
- text: "",
248
- icon: void 0,
249
- onButtonClick: null,
250
- onSelectionChanged: null,
251
- onItemClick: null,
252
- opened: false,
253
- items: null,
254
- dataSource: null,
255
- focusStateEnabled: true,
256
- hoverStateEnabled: true,
257
- dropDownOptions: {},
258
- dropDownContentTemplate: "content",
259
- wrapItemText: false,
260
- useItemTextAsTitle: true,
261
- grouped: false,
262
- groupTemplate: "group",
263
- buttonGroupOptions: {}
264
- })
265
- },
266
- _setOptionsByReference() {
267
- this.callBase();
268
- extend(this._optionsByReference, {
269
- selectedItem: true
270
- });
271
- },
272
- _init() {
273
- this.callBase();
274
- this._createItemClickAction();
275
- this._createActionClickAction();
276
- this._createSelectionChangedAction();
277
- this._initDataSource();
278
- this._compileKeyGetter();
279
- this._compileDisplayGetter();
280
- this._itemsToDataSource(this.option("items"));
281
- this._options.cache("buttonGroupOptions", this.option("buttonGroupOptions"));
282
- this._options.cache("dropDownOptions", this.option("dropDownOptions"));
283
- },
284
- _initTemplates() {
285
- this._templateManager.addDefaultTemplates({
286
- content: new FunctionTemplate(options => {
287
- var $popupContent = $(options.container);
288
- var $listContainer = $("<div>").appendTo($popupContent);
289
- this._list = this._createComponent($listContainer, ListSearch, this._listOptions());
290
- this._list.registerKeyHandler("escape", this._escHandler.bind(this));
291
- this._list.registerKeyHandler("tab", this._escHandler.bind(this));
292
- this._list.registerKeyHandler("leftArrow", this._escHandler.bind(this));
293
- this._list.registerKeyHandler("rightArrow", this._escHandler.bind(this));
294
- })
295
- });
296
- this.callBase();
297
- },
298
- _itemsToDataSource: function(value) {
299
- if (!this._dataSource) {
300
- this._dataSource = new DataSource({
301
- store: new ArrayStore({
302
- key: this._getKey(),
303
- data: value
304
- }),
305
- pageSize: 0
306
- });
307
- }
308
- },
309
- _getKey: function() {
310
- var _this$_dataSource;
311
- var keyExpr = this.option("keyExpr");
312
- var storeKey = null === (_this$_dataSource = this._dataSource) || void 0 === _this$_dataSource ? void 0 : _this$_dataSource.key();
313
- return isDefined(storeKey) && (!isDefined(keyExpr) || "this" === keyExpr) ? storeKey : keyExpr
314
- },
315
- _compileKeyGetter() {
316
- this._keyGetter = compileGetter(this._getKey());
317
- },
318
- _compileDisplayGetter() {
319
- this._displayGetter = compileGetter(this.option("displayExpr"));
320
- },
321
- _initMarkup() {
322
- this.callBase();
323
- this.$element().addClass(DROP_DOWN_BUTTON_CLASS);
324
- this._renderButtonGroup();
325
- this._updateArrowClass();
326
- if (isDefined(this.option("selectedItemKey"))) {
327
- this._loadSelectedItem().done(this._updateActionButton.bind(this));
328
- }
329
- },
330
- _renderFocusTarget: noop,
331
- _render() {
332
- if (!this.option("deferRendering") || this.option("opened")) {
333
- this._renderPopup();
334
- }
335
- this.callBase();
336
- },
337
- _renderContentImpl() {
338
- if (this._popup) {
339
- this._renderPopupContent();
340
- }
341
- return this.callBase()
342
- },
343
- _loadSelectedItem() {
344
- var _this$_loadSingleDefe;
345
- null === (_this$_loadSingleDefe = this._loadSingleDeferred) || void 0 === _this$_loadSingleDefe ? void 0 : _this$_loadSingleDefe.reject();
346
- var d = new Deferred;
347
- if (this._list && void 0 !== this._lastSelectedItemData) {
348
- var cachedResult = this.option("useSelectMode") ? this._list.option("selectedItem") : this._lastSelectedItemData;
349
- return d.resolve(cachedResult)
350
- }
351
- this._lastSelectedItemData = void 0;
352
- var selectedItemKey = this.option("selectedItemKey");
353
- this._loadSingle(this._getKey(), selectedItemKey).done(d.resolve).fail(() => {
354
- d.resolve(null);
355
- });
356
- this._loadSingleDeferred = d;
357
- return d.promise()
358
- },
359
- _createActionClickAction() {
360
- this._actionClickAction = this._createActionByOption("onButtonClick");
361
- },
362
- _createSelectionChangedAction() {
363
- this._selectionChangedAction = this._createActionByOption("onSelectionChanged");
364
- },
365
- _createItemClickAction() {
366
- this._itemClickAction = this._createActionByOption("onItemClick");
367
- },
368
- _fireSelectionChangedAction(_ref) {
369
- var {
370
- previousValue: previousValue,
371
- value: value
372
- } = _ref;
373
- this._selectionChangedAction({
374
- item: value,
375
- previousItem: previousValue
376
- });
377
- },
378
- _fireItemClickAction(_ref2) {
379
- var {
380
- event: event,
381
- itemElement: itemElement,
382
- itemData: itemData
383
- } = _ref2;
384
- return this._itemClickAction({
385
- event: event,
386
- itemElement: itemElement,
387
- itemData: this._actionItem || itemData
388
- })
389
- },
390
- _actionButtonConfig() {
391
- return {
392
- text: this.option("text"),
393
- icon: this.option("icon"),
394
- elementAttr: {
395
- class: DROP_DOWN_BUTTON_ACTION_CLASS
396
- }
397
- }
398
- },
399
- _getButtonGroupItems() {
400
- var items = [];
401
- items.push(this._actionButtonConfig());
402
- if (this.option("splitButton")) {
403
- items.push({
404
- icon: "spindown",
405
- elementAttr: {
406
- class: DROP_DOWN_BUTTON_TOGGLE_CLASS
407
- }
408
- });
409
- }
410
- return items
411
- },
412
- _buttonGroupItemClick(_ref3) {
413
- var {
414
- event: event,
415
- itemData: itemData
416
- } = _ref3;
417
- var isActionButton = itemData.elementAttr.class === DROP_DOWN_BUTTON_ACTION_CLASS;
418
- var isToggleButton = itemData.elementAttr.class === DROP_DOWN_BUTTON_TOGGLE_CLASS;
419
- if (isToggleButton) {
420
- this.toggle();
421
- } else if (isActionButton) {
422
- this._actionClickAction({
423
- event: event,
424
- selectedItem: this.option("selectedItem")
425
- });
426
- if (!this.option("splitButton")) {
427
- this.toggle();
428
- }
429
- }
430
- },
431
- _buttonGroupOptions() {
432
- var {
433
- splitButton: splitButton,
434
- showArrowIcon: showArrowIcon,
435
- focusStateEnabled: focusStateEnabled,
436
- hoverStateEnabled: hoverStateEnabled,
437
- stylingMode: stylingMode,
438
- accessKey: accessKey,
439
- tabIndex: tabIndex
440
- } = this.option();
441
- var buttonTemplate = splitButton || !showArrowIcon ? "content" : (_ref4, buttonContent) => {
442
- var {
443
- text: text,
444
- icon: icon
445
- } = _ref4;
446
- var $firstIcon = getImageContainer(icon);
447
- var $textContainer = text ? $("<span>").text(text).addClass(DX_BUTTON_TEXT_CLASS) : void 0;
448
- var $secondIcon = getImageContainer("spindown").addClass(DX_ICON_RIGHT_CLASS);
449
- $(buttonContent).append($firstIcon, $textContainer, $secondIcon);
450
- };
451
- return extend({
452
- items: this._getButtonGroupItems(),
453
- onItemClick: this._buttonGroupItemClick.bind(this),
454
- width: "100%",
455
- height: "100%",
456
- selectionMode: "none",
457
- onKeyboardHandled: e => this._keyboardHandler(e),
458
- buttonTemplate: buttonTemplate,
459
- focusStateEnabled: focusStateEnabled,
460
- hoverStateEnabled: hoverStateEnabled,
461
- stylingMode: stylingMode,
462
- accessKey: accessKey,
463
- tabIndex: tabIndex
464
- }, this._options.cache("buttonGroupOptions"))
465
- },
466
- _renderPopupContent() {
467
- var $content = this._popup.$content();
468
- var template = this._getTemplateByOption("dropDownContentTemplate");
469
- $content.empty();
470
- this._popupContentId = "dx-" + new Guid;
471
- this.setAria("id", this._popupContentId, $content);
472
- return template.render({
473
- container: getPublicElement($content),
474
- model: this.option("items") || this._dataSource
475
- })
476
- },
477
- _popupOptions() {
478
- var horizontalAlignment = this.option("rtlEnabled") ? "right" : "left";
479
- return extend({
480
- dragEnabled: false,
481
- focusStateEnabled: false,
482
- deferRendering: this.option("deferRendering"),
483
- hideOnOutsideClick: e => {
484
- var $element = this.$element();
485
- var $buttonClicked = $(e.target).closest(".".concat(DROP_DOWN_BUTTON_CLASS));
486
- return !$buttonClicked.is($element)
487
- },
488
- showTitle: false,
489
- animation: {
490
- show: {
491
- type: "fade",
492
- duration: 0,
493
- from: 0,
494
- to: 1
495
- },
496
- hide: {
497
- type: "fade",
498
- duration: 400,
499
- from: 1,
500
- to: 0
501
- }
502
- },
503
- _ignoreFunctionValueDeprecation: true,
504
- width: () => getElementWidth(this.$element()),
505
- height: "auto",
506
- shading: false,
507
- position: {
508
- of: this.$element(),
509
- collision: "flipfit",
510
- my: horizontalAlignment + " top",
511
- at: horizontalAlignment + " bottom"
512
- },
513
- wrapperAttr: {
514
- class: DROP_DOWN_EDITOR_OVERLAY_CLASS
515
- }
516
- }, this._options.cache("dropDownOptions"), {
517
- visible: this.option("opened")
518
- })
519
- },
520
- _listOptions() {
521
- var selectedItemKey = this.option("selectedItemKey");
522
- var useSelectMode = this.option("useSelectMode");
523
- return {
524
- selectionMode: useSelectMode ? "single" : "none",
525
- wrapItemText: this.option("wrapItemText"),
526
- focusStateEnabled: this.option("focusStateEnabled"),
527
- hoverStateEnabled: this.option("hoverStateEnabled"),
528
- useItemTextAsTitle: this.option("useItemTextAsTitle"),
529
- onContentReady: () => this._fireContentReadyAction(),
530
- selectedItemKeys: isDefined(selectedItemKey) && useSelectMode ? [selectedItemKey] : [],
531
- grouped: this.option("grouped"),
532
- groupTemplate: this.option("groupTemplate"),
533
- keyExpr: this._getKey(),
534
- noDataText: this.option("noDataText"),
535
- displayExpr: this.option("displayExpr"),
536
- itemTemplate: this.option("itemTemplate"),
537
- items: this.option("items"),
538
- dataSource: this._dataSource,
539
- onItemClick: e => {
540
- if (!this.option("useSelectMode")) {
541
- this._lastSelectedItemData = e.itemData;
542
- }
543
- this.option("selectedItemKey", this._keyGetter(e.itemData));
544
- var actionResult = this._fireItemClickAction(e);
545
- if (false !== actionResult) {
546
- this.toggle(false);
547
- this._buttonGroup.focus();
548
- }
549
- }
550
- }
551
- },
552
- _upDownKeyHandler() {
553
- if (this._popup && this._popup.option("visible") && this._list) {
554
- this._list.focus();
555
- } else {
556
- this.open();
557
- }
558
- return true
559
- },
560
- _escHandler() {
561
- this.close();
562
- this._buttonGroup.focus();
563
- return true
564
- },
565
- _tabHandler() {
566
- this.close();
567
- return true
568
- },
569
- _renderPopup() {
570
- var $popup = $("<div>");
571
- this.$element().append($popup);
572
- this._popup = this._createComponent($popup, Popup, this._popupOptions());
573
- this._popup.$content().addClass(DROP_DOWN_BUTTON_CONTENT);
574
- this._popup.$wrapper().addClass(DROP_DOWN_BUTTON_POPUP_WRAPPER_CLASS);
575
- this._popup.on("hiding", this._popupHidingHandler.bind(this));
576
- this._popup.on("showing", this._popupShowingHandler.bind(this));
577
- this._bindInnerWidgetOptions(this._popup, "dropDownOptions");
578
- },
579
- _popupHidingHandler() {
580
- this.option("opened", false);
581
- this._setAriaExpanded(false);
582
- },
583
- _popupOptionChanged: function(args) {
584
- var options = Widget.getOptionsFromContainer(args);
585
- this._setPopupOption(options);
586
- var optionsKeys = Object.keys(options);
587
- if (-1 !== optionsKeys.indexOf("width") || -1 !== optionsKeys.indexOf("height")) {
588
- this._dimensionChanged();
589
- }
590
- },
591
- _dimensionChanged: function() {
592
- var popupWidth = getSizeValue(this.option("dropDownOptions.width"));
593
- if (void 0 === popupWidth) {
594
- this._setPopupOption("width", () => getElementWidth(this.$element()));
595
- }
596
- },
597
- _setPopupOption: function(optionName, value) {
598
- this._setWidgetOption("_popup", arguments);
599
- },
600
- _popupShowingHandler() {
601
- this.option("opened", true);
602
- this._setAriaExpanded(true);
603
- },
604
- _setAriaExpanded(value) {
605
- this._ariaExpandedElements.forEach(ariaElement => {
606
- this.setAria({
607
- expanded: value,
608
- owns: value ? this._popupContentId : void 0
609
- }, $(ariaElement));
610
- });
611
- },
612
- _renderButtonGroup() {
613
- var $buttonGroup = this._buttonGroup && this._buttonGroup.$element() || $("<div>");
614
- if (!this._buttonGroup) {
615
- this.$element().append($buttonGroup);
616
- }
617
- this._buttonGroup = this._createComponent($buttonGroup, ButtonGroup, this._buttonGroupOptions());
618
- var buttonElements = this._buttonGroup.$element().find(".dx-button").toArray();
619
- this._ariaExpandedElements = [...buttonElements, this.$element()];
620
- this._buttonGroup.registerKeyHandler("downArrow", this._upDownKeyHandler.bind(this));
621
- this._buttonGroup.registerKeyHandler("tab", this._tabHandler.bind(this));
622
- this._buttonGroup.registerKeyHandler("upArrow", this._upDownKeyHandler.bind(this));
623
- this._buttonGroup.registerKeyHandler("escape", this._escHandler.bind(this));
624
- this._bindInnerWidgetOptions(this._buttonGroup, "buttonGroupOptions");
625
- this._setAriaExpanded(this.option("opened"));
626
- },
627
- _updateArrowClass() {
628
- var hasArrow = this.option("splitButton") || this.option("showArrowIcon");
629
- this.$element().toggleClass(DROP_DOWN_BUTTON_HAS_ARROW_CLASS, hasArrow);
630
- },
631
- toggle(visible) {
632
- if (!this._popup) {
633
- this._renderPopup();
634
- this._renderContent();
635
- }
636
- return this._popup.toggle(visible)
637
- },
638
- open() {
639
- return this.toggle(true)
640
- },
641
- close() {
642
- return this.toggle(false)
643
- },
644
- _setListOption(name, value) {
645
- this._list && this._list.option(name, value);
646
- },
647
- _getDisplayValue(item) {
648
- var isPrimitiveItem = !isPlainObject(item);
649
- var displayValue = isPrimitiveItem ? item : this._displayGetter(item);
650
- return !isPlainObject(displayValue) ? String(ensureDefined(displayValue, "")) : ""
651
- },
652
- _updateActionButton(selectedItem) {
653
- if (this.option("useSelectMode")) {
654
- this.option({
655
- text: this._getDisplayValue(selectedItem),
656
- icon: isPlainObject(selectedItem) ? selectedItem.icon : void 0
657
- });
658
- }
659
- this._setOptionWithoutOptionChange("selectedItem", selectedItem);
660
- this._setOptionWithoutOptionChange("selectedItemKey", this._keyGetter(selectedItem));
661
- },
662
- _clean() {
663
- this._list && this._list.$element().remove();
664
- this._popup && this._popup.$element().remove();
665
- },
666
- _selectedItemKeyChanged(value) {
667
- this._setListOption("selectedItemKeys", this.option("useSelectMode") && isDefined(value) ? [value] : []);
668
- var previousItem = this.option("selectedItem");
669
- this._loadSelectedItem().done(selectedItem => {
670
- this._updateActionButton(selectedItem);
671
- if (this._displayGetter(previousItem) !== this._displayGetter(selectedItem)) {
672
- this._fireSelectionChangedAction({
673
- previousValue: previousItem,
674
- value: selectedItem
675
- });
676
- }
677
- });
678
- },
679
- _actionButtonOptionChanged(_ref5) {
680
- var {
681
- name: name,
682
- value: value
683
- } = _ref5;
684
- var newConfig = {};
685
- newConfig[name] = value;
686
- this._buttonGroup.option("items[0]", extend({}, this._actionButtonConfig(), newConfig));
687
- this._popup && this._popup.repaint();
688
- },
689
- _selectModeChanged(value) {
690
- if (value) {
691
- this._setListOption("selectionMode", "single");
692
- var selectedItemKey = this.option("selectedItemKey");
693
- this._setListOption("selectedItemKeys", isDefined(selectedItemKey) ? [selectedItemKey] : []);
694
- this._selectedItemKeyChanged(this.option("selectedItemKey"));
695
- } else {
696
- this._setListOption("selectionMode", "none");
697
- this.option({
698
- selectedItemKey: void 0,
699
- selectedItem: void 0
700
- });
701
- this._actionButtonOptionChanged({
702
- text: this.option("text")
703
- });
704
- }
705
- },
706
- _updateItemCollection(optionName) {
707
- var selectedItemKey = this.option("selectedItemKey");
708
- this._setListOption("selectedItem", null);
709
- this._setWidgetOption("_list", [optionName]);
710
- if (isDefined(selectedItemKey)) {
711
- this._loadSelectedItem().done(selectedItem => {
712
- this._setListOption("selectedItemKeys", [selectedItemKey]);
713
- this._setListOption("selectedItem", selectedItem);
714
- }).fail(error => {
715
- this._setListOption("selectedItemKeys", []);
716
- }).always(this._updateActionButton.bind(this));
717
- }
718
- },
719
- _updateDataSource: function() {
720
- var items = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : this._dataSource.items();
721
- this._dataSource = void 0;
722
- this._itemsToDataSource(items);
723
- this._updateKeyExpr();
724
- },
725
- _updateKeyExpr: function() {
726
- this._compileKeyGetter();
727
- this._setListOption("keyExpr", this._getKey());
728
- },
729
- focus: function() {
730
- this._buttonGroup.focus();
731
- },
732
- _optionChanged(args) {
733
- var _this$_popup;
734
- var {
735
- name: name,
736
- value: value
737
- } = args;
738
- switch (name) {
739
- case "useSelectMode":
740
- this._selectModeChanged(value);
741
- break;
742
- case "splitButton":
743
- this._updateArrowClass();
744
- this._renderButtonGroup();
745
- break;
746
- case "displayExpr":
747
- this._compileDisplayGetter();
748
- this._setListOption(name, value);
749
- this._updateActionButton(this.option("selectedItem"));
750
- break;
751
- case "keyExpr":
752
- this._updateDataSource();
753
- break;
754
- case "buttonGroupOptions":
755
- this._innerWidgetOptionChanged(this._buttonGroup, args);
756
- break;
757
- case "dropDownOptions":
758
- if ("dropDownOptions.visible" === args.fullName) {
759
- break
760
- }
761
- if (void 0 !== args.value.visible) {
762
- delete args.value.visible;
763
- }
764
- this._popupOptionChanged(args);
765
- this._innerWidgetOptionChanged(this._popup, args);
766
- break;
767
- case "opened":
768
- this.toggle(value);
769
- break;
770
- case "focusStateEnabled":
771
- case "hoverStateEnabled":
772
- this._setListOption(name, value);
773
- this._buttonGroup.option(name, value);
774
- this.callBase(args);
775
- break;
776
- case "items":
777
- this._updateDataSource(this.option("items"));
778
- this._updateItemCollection(name);
779
- break;
780
- case "dataSource":
781
- if (Array.isArray(value)) {
782
- this._updateDataSource(this.option("dataSource"));
783
- } else {
784
- this._initDataSource();
785
- this._updateKeyExpr();
786
- }
787
- this._updateItemCollection(name);
788
- break;
789
- case "icon":
790
- case "text":
791
- this._actionButtonOptionChanged(args);
792
- break;
793
- case "showArrowIcon":
794
- this._updateArrowClass();
795
- this._renderButtonGroup();
796
- this._popup && this._popup.repaint();
797
- break;
798
- case "width":
799
- case "height":
800
- this.callBase(args);
801
- null === (_this$_popup = this._popup) || void 0 === _this$_popup ? void 0 : _this$_popup.repaint();
802
- break;
803
- case "stylingMode":
804
- this._buttonGroup.option(name, value);
805
- break;
806
- case "itemTemplate":
807
- case "grouped":
808
- case "noDataText":
809
- case "groupTemplate":
810
- case "wrapItemText":
811
- case "useItemTextAsTitle":
812
- this._setListOption(name, value);
813
- break;
814
- case "dropDownContentTemplate":
815
- this._renderContent();
816
- break;
817
- case "selectedItemKey":
818
- this._selectedItemKeyChanged(value);
819
- break;
820
- case "selectedItem":
821
- break;
822
- case "onItemClick":
823
- this._createItemClickAction();
824
- break;
825
- case "onButtonClick":
826
- this._createActionClickAction();
827
- break;
828
- case "onSelectionChanged":
829
- this._createSelectionChangedAction();
830
- break;
831
- case "deferRendering":
832
- this.toggle(this.option("opened"));
833
- break;
834
- case "tabIndex":
835
- this._buttonGroup.option(name, value);
836
- break;
837
- default:
838
- this.callBase(args);
839
- }
840
- }
841
- }).include(DataHelperMixin);
842
- registerComponent("dxDropDownButton", DropDownButton);
843
-
844
- const tttxPageCss = "@import url(\"https://fonts.googleapis.com/css?family=Roboto&display=swap\");*{box-sizing:border-box}.flex-start{justify-content:start}.flex-end{justify-content:end}.flex-centre{justify-content:center}[class^=col-]{display:flex;padding-left:8px !important;padding-right:8px !important}h1,h2,h3,h4,h5,h6,p,label,small{margin:0;padding:0}h1,h2,h3,h4,h5,h6,p,label{display:block}*{font-family:\"Roboto\", sans-serif}html,body{font-weight:normal;font-size:16px}h1{font-weight:700;font-size:24px}h2{font-weight:700;font-size:20px}h3{font-weight:700;font-size:18px}h4{font-weight:normal;font-size:14px;text-transform:uppercase}button{font-weight:500;font-size:14px;text-transform:uppercase}small{font-weight:normal;font-size:14px}label{font-weight:700;font-size:16px}:host{display:block}.page{background-color:#F0F0F0;width:100%;height:100%}.page__platform-bar.dx-toolbar{position:fixed;top:0px;left:0px;right:0px;background-color:#142748;color:#ffffff;font-size:24px;padding:0 8px}.page__title-bar__container,.page__title-bar__container--large,.page__title-bar__container--medium,.page__title-bar__container--small{position:fixed;top:52px;left:0px;right:0px}.page__title-bar__container .dx-toolbar,.page__title-bar__container--large .dx-toolbar,.page__title-bar__container--medium .dx-toolbar,.page__title-bar__container--small .dx-toolbar{color:#212121;background-color:#F0F0F0;font-size:24px}.page__title-bar__container,.page__title-bar__container--medium,.page__title-bar__container--small{margin:0px auto}.page__title-bar__container--large{margin:0px 16px}.page__title-bar__container--medium{width:900px}.page__title-bar__container--small{width:600px}.page__title-bar__after-container__label{font-size:14px;color:#757575;font-weight:300}.page__title-bar__after-container__value{font-size:14px;color:#111111;font-weight:400;margin:0 10px 0 0}.page__platform-bar__button .dx-button-mode-text .dx-icon{color:white}.page__platform-bar__button__dropdown-options .dx-dropdownbutton-content .dx-list .dx-list-item:last-of-type::before{width:90%;margin:auto 5%;height:1px;content:\"\";position:absolute;background:grey}";
845
-
846
- const TttxPage = class {
847
- constructor(hostRef) {
848
- registerInstance(this, hostRef);
849
- this.appName = undefined;
850
- this.pageTitle = undefined;
851
- this.lastUpdated = undefined;
852
- this.manageAccountsUrl = undefined;
853
- this.logoutUrl = undefined;
854
- this.pageSize = 'large';
855
- this.helpUrl = undefined;
856
- }
857
- componentDidLoad() {
858
- new Toolbar(this.platformBar, {
859
- items: [
860
- {
861
- location: 'before',
862
- locateInMenu: 'never',
863
- text: this.appName
864
- },
865
- {
866
- location: 'after',
867
- widget: DropDownButton,
868
- cssClass: 'page__platform-bar__button',
869
- options: {
870
- icon: 'overflow',
871
- keyExpr: 'id',
872
- displayExpr: 'text',
873
- stylingMode: 'text',
874
- showArrowIcon: false,
875
- dropDownOptions: { width: '200', wrapperAttr: { class: 'page__platform-bar__button__dropdown-options' } },
876
- items: this.platformBarButtonItems()
877
- }
878
- }
879
- ]
880
- });
881
- new Toolbar(this.pageTitleBar, {
882
- items: [
883
- {
884
- location: 'before',
885
- text: this.pageTitle
886
- },
887
- {
888
- location: 'after',
889
- html: `<span class='page__title-bar__after-container__label'>Last updated</span> <span class='page__title-bar__after-container__value'>${this.lastUpdated}</span>`
890
- },
891
- {
892
- location: 'after',
893
- widget: Button,
894
- options: {
895
- text: 'help',
896
- icon: 'help',
897
- stylingMode: 'outlined',
898
- onClick: () => { window.open(this.helpUrl, '_blank'); }
899
- }
900
- }
901
- ]
902
- });
903
- }
904
- platformBarButtonItems() {
905
- return [
906
- { id: 1, text: 'Manage Accounts', icon: "user", onClick: () => { window.open(this.manageAccountsUrl, '_blank'); } },
907
- { id: 2, text: 'Logout', icon: "runner", onClick: () => { window.location.href = this.logoutUrl; } }
908
- ];
909
- }
910
- pageSizeIsNumeric() {
911
- return /^\d+$/.test(this.pageSize);
912
- }
913
- pageSizeClasses(baseClassName) {
914
- return this.pageSizeIsNumeric() ? baseClassName : `${baseClassName}--${this.pageSize}`;
915
- }
916
- render() {
917
- const customPageWidth = this.pageSizeIsNumeric ? { width: `${this.pageSize}px` } : {};
918
- return (h(Host, { style: { margin: '0px', overflow: 'hidden' } }, h("div", { class: "page" }, h("div", { class: 'page__platform-bar', ref: el => (this.platformBar = el) }), h("div", { class: this.pageSizeClasses('page__title-bar__container'), style: Object.assign({}, customPageWidth) }, h("div", { ref: el => (this.pageTitleBar = el) })), h("tttx-worksheet", { pageSize: this.pageSize }, h("slot", null)))));
919
- }
920
- };
921
- TttxPage.style = tttxPageCss;
922
-
923
- export { TttxPage as tttx_page };